import type { SVGProps } from "react";

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

/**
 * Hawaii icon from flag category
 *
 * @example
 * <Hawaii size={16} />
 * <Hawaii size={32} className="text-primary" />
 */
export const Hawaii = ({ size = 16, ...props }: HawaiiProps) => (
  <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_1653)">
<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="M12 24C15.043 24 17.8209 22.8668 19.9362 21H4.06378C6.17911 22.8668 8.95702 24 12 24Z" fill="#D80027"/>
<path d="M0.378052 15C0.652036 16.0643 1.06857 17.0714 1.60575 18H22.3942C22.9314 17.0714 23.3479 16.0643 23.6219 15L12 14.087L0.378052 15Z" fill="#0052B4"/>
<path d="M23.6219 9C23.348 7.93566 22.9314 6.92859 22.3942 6L12 5.73914C12 3.64322 12 1.66242 12 0C11.1086 0 10.2398 0.0972656 9.40376 0.281625C9.38773 0.285187 1.56519 6.45553 1.56519 12C1.7652 12.0348 12 13.0435 12 13.0435C12 13.0435 12 10.7578 12 9H23.6219Z" fill="#0052B4"/>
<path d="M12 7.48696V1.48696H8.19961L9.40416 0.28241C4.45927 1.373 0.659813 5.51319 0.0782812 10.6304C0.0271875 11.08 0 11.5368 0 12H6.07828V9.60829L8.49366 12H12.7867L8.19956 7.48696H12Z" fill="#F0F0F0"/>
<path d="M12.0055 12L7.49245 7.48696H6.07828V7.48701L10.5913 12H4.5652V5.99999H22.3942C21.7409 4.87063 20.9085 3.85795 19.9363 2.99999H4.5652V2.58163C3.35452 3.53868 2.33302 4.72406 1.5652 6.07284V12H0C0 13.0359 0.13125 14.0412 0.378047 15H23.622C23.8687 14.0411 24 13.0359 24 12H12.0055Z" fill="#D80027"/>
</g>
<defs>
<clipPath id="clip0_43_1653">
<rect fill="white" height="24" width="24"/>
</clipPath>
</defs>
  </svg>
);
