import type { SVGProps } from "react";

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

/**
 * Eswatini — SWZ icon from flag category
 *
 * @example
 * <SWZ size={16} />
 * <SWZ size={32} className="text-primary" />
 */
export const SWZ = ({ size = 16, ...props }: SWZProps) => (
  <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_2553)">
<path d="M22.8093 17.2174C23.5721 15.6398 24 13.8698 24 12C24 10.1302 23.5721 8.36021 22.8093 6.78263L12 6.26086L1.19072 6.78258C0.427875 8.36021 0 10.1302 0 12C0 13.8698 0.427875 15.6398 1.19072 17.2174L12 17.7391L22.8093 17.2174Z" fill="#FFDA44"/>
<path d="M12 0C7.24248 0 3.13173 2.76867 1.19073 6.78263H22.8092C20.8683 2.76867 16.7575 0 12 0Z" fill="black"/>
<path d="M12 24C7.24248 24 3.13173 21.2313 1.19073 17.2174H22.8092C20.8683 21.2313 16.7575 24 12 24Z" fill="#0052B4"/>
<path d="M23.4333 8.34784H0.566672C0.199078 9.49951 0 10.7265 0 12C0 13.2736 0.199078 14.5005 0.566672 15.6522H23.4333C23.8009 14.5005 24 13.2736 24 12C24 10.7265 23.8009 9.49951 23.4333 8.34784Z" fill="#A2001D"/>
<path d="M4.17389 11.4783H19.8261V12.5218H4.17389V11.4783Z" fill="#FFDA44"/>
<path d="M6.26086 9.39133H17.7391V10.4348H6.26086V9.39133Z" fill="#FFDA44"/>
<path d="M17.8137 12C17.8137 12 15.1304 15.1304 12 15.1304C8.86962 15.1304 8.86957 12 8.86957 12C8.86957 12 8.86957 8.86954 12 8.86954C15.1305 8.86954 17.8137 12 17.8137 12Z" fill="#F0F0F0"/>
<path d="M12 15.1304C8.86956 15.1304 6.18634 12 6.18634 12C6.18634 12 8.86956 8.86954 12 8.86954" fill="black"/>
<path d="M9.91302 10.9565H10.9565V13.0435H9.91302V10.9565Z" fill="#F0F0F0"/>
<path d="M13.0435 10.9565H14.0869V13.0435H13.0435V10.9565Z" fill="black"/>
<path d="M4.17392 13.0435C4.75022 13.0435 5.2174 12.5763 5.2174 12C5.2174 11.4237 4.75022 10.9565 4.17392 10.9565C3.59762 10.9565 3.13043 11.4237 3.13043 12C3.13043 12.5763 3.59762 13.0435 4.17392 13.0435Z" fill="#0052B4"/>
<path d="M19.8261 13.0435C20.4024 13.0435 20.8696 12.5763 20.8696 12C20.8696 11.4237 20.4024 10.9565 19.8261 10.9565C19.2498 10.9565 18.7827 11.4237 18.7827 12C18.7827 12.5763 19.2498 13.0435 19.8261 13.0435Z" fill="#0052B4"/>
</g>
<defs>
<clipPath id="clip0_43_2553">
<rect fill="white" height="24" width="24"/>
</clipPath>
</defs>
  </svg>
);
