import type { SVGProps } from "react";

export interface ZAFProps extends SVGProps<SVGSVGElement> {
  /**
   * Icon size (width and height)
   * @default 16
   */
  size?: number | string;
}

/**
 * South Africa — ZAF icon from flag category
 *
 * @example
 * <ZAF size={16} />
 * <ZAF size={32} className="text-primary" />
 */
export const ZAF = ({ size = 16, ...props }: ZAFProps) => (
  <svg
    fill="none"
    height={size}
    viewBox="0 0 24 24"
    width={size}
    xmlns="http://www.w3.org/2000/svg"
    {...props}
  >
    <g clipPath="url(#clip0_43_2471)">
<path d="M12 24C18.6274 24 24 18.6274 24 12C24 5.37258 18.6274 0 12 0C5.37258 0 0 5.37258 0 12C0 18.6274 5.37258 24 12 24Z" fill="#F0F0F0"/>
<path d="M3.51468 20.4853C-1.1716 15.799 -1.1716 8.20101 3.51468 3.51468C3.51435 3.51519 10.4348 12 10.4348 12L3.51468 20.4853Z" fill="black"/>
<path d="M10.4348 12L1.59156 6.02405C1.31739 6.50063 1.07561 6.99806 0.867859 7.51294L5.34484 12L0.868 16.4874C1.07556 17.0019 1.31711 17.499 1.59109 17.9753L10.4348 12Z" fill="#FFDA44"/>
<path d="M23.8984 10.4348H10.4345L3.51458 3.51486C2.76889 4.26055 2.12103 5.10388 1.59153 6.02408L7.55586 12L1.59106 17.9751C2.12056 18.8956 2.7687 19.7392 3.51458 20.4851L10.4345 13.5652H23.8984C23.9651 13.0528 24 12.5305 24 12C24 11.4695 23.9651 10.9471 23.8984 10.4348Z" fill="#6DA544"/>
<path d="M4.69397 21.5192C6.71752 23.0746 9.2505 24 12 24C17.5443 24 22.2096 20.2396 23.5866 15.1305H11.0828L4.69397 21.5192Z" fill="#0052B4"/>
<path d="M23.5866 8.86955C22.2096 3.76036 17.5443 0 12 0C9.2505 0 6.71752 0.925359 4.69397 2.48077L11.0828 8.86955H23.5866Z" fill="#D80027"/>
</g>
<defs>
<clipPath id="clip0_43_2471">
<rect fill="white" height="24" width="24"/>
</clipPath>
</defs>
  </svg>
);
