import { useId, type SVGProps } from 'react';

export type WiseflowIconProps = SVGProps<SVGSVGElement> & {
  /** Accessibility title for the icon, set aria-hidden="true" if the icon is purely decorative. */
  title?: string;
  /**
   * The size of the icon.
   * It sets the font-size, possible as the width and height is `1em`. If not set, the icon will inherit the font size of its parent.
   */
  size?: '2xl' | 'xl' | 'large' | 'medium' | 'small';
  /**
   * The color of the icon.
   * @default 'inherit'
   */
  color?: 'inherit' | 'primary' | 'gray' | 'black' | 'white';
};

export const WiseflowIcon = ({ title, size, color, ...props }: WiseflowIconProps) => {
  const titleId = useId();
  return (
    <svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 24 24" focusable='false' role='img' width='1em' height='1em'  aria-labelledby={title ? titleId : undefined} data-size={size} data-color={color} {...props}>{title ? <title id={titleId}>{title}</title> : null}<path d="M16.214 4.022c.717-.08 1.252.058 1.869.431.406.201.555.543.824.855.28.326.448.23.57.743-.254.03-.66.004-.882.033-.448.057-1.483.444-1.842.69-.134.732-.321 2.008-1.001 2.465a.24.24 0 0 1-.205.03c-.065-.108.128-.861.183-1.009-.17.158-.441.492-.655.512-.07.007-.131-.061-.183-.108-.293.165-.627.51-.88.755a18.04 18.04 0 0 0-3.582 4.91c.594.306 1.565 1.678 1.743 2.345.492-1.078.818-2.13 1.415-3.183.344-.662.873-1.249 1.209-1.908.225-.443.396-.974-.126-1.265-.177-.1-.377-.201-.538-.327.468-.454 1.114-.403 1.695-.285.632.13.678.012 1.23-.274.513-.265 1.132-.458 1.71-.48.573-.02 1.014.128 1.424.545.155.148.804.897.808 1.072-.084.082-.646.036-.806.072-.365.082-.775.141-1.106.329-.293.502-.277 1.499-.873 1.823-.049.026-.097.034-.147.012-.057-.106.046-.494.068-.66-.252.178-.584.24-.827.436-1.628 1.316-2.819 3.138-3.783 4.984-.303.583-.588 1.208-.88 1.8-.31.624-.435 1.099-.891 1.635-.304-.555-.443-1.125-.627-1.726a59 59 0 0 0-.59-1.831c-.161-.46-.33-.915-.527-1.36-.072-.16-.149-.33-.197-.5-.261.37-.55 1.102-.737 1.54l-.92 2.178c-.1.241-.493 1.32-.756 1.333-.24-.168-.627-1.172-.75-1.484-.718-1.83-1.447-3.668-2.511-5.324A26.5 26.5 0 0 0 3 12.198c1.718.19 3.221 1.89 3.863 3.43.126.302.257.555.331.88.61-2.036 1.175-3.917 2.116-5.827.201-.411.421-.812.659-1.203.443-.724 1.312-1.893 1.002-2.831-.117-.353-.895-.546-1.244-.667l.04-.055c.729-.968 1.458-.77 2.518-.572.282.036.582.065.834-.098.926-.6 1.992-1.087 3.095-1.233" /></svg>
  );
};