import type { SVGProps } from "react";

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

/**
 * Gibraltar — GIB icon from flag category
 *
 * @example
 * <GIB size={16} />
 * <GIB size={32} className="text-primary" />
 */
export const GIB = ({ size = 16, ...props }: GIBProps) => (
  <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_1562)">
<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="#F9F9F9"/>
<path d="M12 24C17.1595 24 21.5581 20.7435 23.2536 16.1739H0.746338C2.4419 20.7435 6.84037 24 12 24Z" fill="#D80027"/>
<path d="M16.6957 9.91305V8.34784H17.2174V7.30436H16.1739V7.82612H15.1305V7.30436H14.087V8.34784H14.6087V9.91305H13.5652V6.26097H14.087V5.21753H13.0435V5.73915H12.5217V5.21753H11.4783V5.73915H10.9565V5.21753H9.91304V6.26097H10.4348V9.91305H9.39132V8.34784H9.91304V7.30436H8.86955V7.82612H7.82611V7.30436H6.78263V8.34784H7.30435V9.91305H6.26086V14.087H17.7391V9.91305H16.6957Z" fill="#D80027"/>
<path d="M12 13.5652C11.1356 13.5652 10.4348 14.266 10.4348 15.1304C10.4348 15.8118 10.8705 16.3914 11.4783 16.6062V18.7826H9.91309V20.8696H12.5218V16.6063C13.1296 16.3914 13.5653 15.8119 13.5653 15.1305C13.5652 14.266 12.8644 13.5652 12 13.5652ZM12 15.6522C11.7119 15.6522 11.4783 15.4186 11.4783 15.1305C11.4783 14.8423 11.7119 14.6087 12 14.6087C12.2881 14.6087 12.5217 14.8423 12.5217 15.1305C12.5217 15.4186 12.2881 15.6522 12 15.6522Z" fill="#FFDA44"/>
</g>
<defs>
<clipPath id="clip0_43_1562">
<rect fill="white" height="24" width="24"/>
</clipPath>
</defs>
  </svg>
);
