import { forwardRef, useMemo } from 'react';
import { IconProps } from './types';

export const IconAutoApply24 = forwardRef<SVGSVGElement, IconProps>(
    ({ color = 'currentColor', title, ...props }, svgRef) => {
        const titleId = useMemo(
            () =>
                title
                    ? 'title-' + Math.random().toString(36).substr(2, 9)
                    : undefined,
            [title]
        );
        return (
            <svg
                xmlns="http://www.w3.org/2000/svg"
                width={24}
                height={24}
                fill="none"
                viewBox="0 0 24 24"
                aria-hidden={!title}
                ref={svgRef}
                aria-labelledby={titleId}
                {...props}
            >
                {title ? <title id={titleId}>{title}</title> : null}
                <g fill={color} fillRule="evenodd" clipRule="evenodd">
                    <path d="M11.23 6.684c-1.162-.786-2.73.047-2.73 1.45v7.732c0 1.403 1.568 2.236 2.73 1.45l5.716-3.866a1.75 1.75 0 000-2.9L11.23 6.684zM10 8.134c0-.2.224-.32.39-.207l5.715 3.866a.25.25 0 010 .414l-5.715 3.866a.25.25 0 01-.39-.207V8.134z" />
                    <path d="M11.305 0a2.25 2.25 0 00-2.25 2.25v.395a9.747 9.747 0 00-1.587.658l-.28-.28a2.25 2.25 0 00-3.182 0l-.983.983a2.25 2.25 0 000 3.182l.28.28a9.748 9.748 0 00-.658 1.587H2.25A2.25 2.25 0 000 11.305v1.39a2.25 2.25 0 002.25 2.25h.395c.174.552.395 1.082.658 1.587l-.28.28a2.25 2.25 0 000 3.182l.983.983a2.25 2.25 0 003.182 0l.28-.28a9.744 9.744 0 001.587.658v.395a2.25 2.25 0 002.25 2.25h1.39a2.25 2.25 0 002.25-2.25v-.395a9.743 9.743 0 001.587-.658l.28.28a2.25 2.25 0 003.182 0l.983-.983a2.25 2.25 0 000-3.182l-.28-.28a9.742 9.742 0 00.658-1.587h.395a2.25 2.25 0 002.25-2.25v-1.39a2.25 2.25 0 00-2.25-2.25h-.395a9.744 9.744 0 00-.658-1.587l.28-.28a2.25 2.25 0 000-3.182l-.983-.983a2.25 2.25 0 00-3.182 0l-.28.28a9.748 9.748 0 00-1.587-.658V2.25A2.25 2.25 0 0012.695 0h-1.39zm-.75 2.25a.75.75 0 01.75-.75h1.39a.75.75 0 01.75.75v.963a.75.75 0 00.569.728c.806.2 1.566.52 2.26.937a.75.75 0 00.917-.113l.681-.681a.75.75 0 011.061 0l.983.983a.75.75 0 010 1.06l-.681.682a.75.75 0 00-.113.917c.418.694.736 1.454.937 2.26a.75.75 0 00.728.569h.963a.75.75 0 01.75.75v1.39a.75.75 0 01-.75.75h-.963a.75.75 0 00-.728.569 8.25 8.25 0 01-.937 2.26.75.75 0 00.113.917l.681.681a.75.75 0 010 1.061l-.983.983a.75.75 0 01-1.06 0l-.682-.681a.75.75 0 00-.917-.113 8.253 8.253 0 01-2.26.937.75.75 0 00-.569.728v.963a.75.75 0 01-.75.75h-1.39a.75.75 0 01-.75-.75v-.963a.75.75 0 00-.569-.728 8.253 8.253 0 01-2.26-.937.75.75 0 00-.917.113l-.681.681a.75.75 0 01-1.061 0l-.983-.983a.75.75 0 010-1.06l.681-.682a.75.75 0 00.113-.917 8.251 8.251 0 01-.937-2.26.75.75 0 00-.728-.569H2.25a.75.75 0 01-.75-.75v-1.39a.75.75 0 01.75-.75h.963a.75.75 0 00.728-.569c.2-.806.52-1.566.937-2.26a.75.75 0 00-.113-.917l-.681-.681a.75.75 0 010-1.061l.983-.983a.75.75 0 011.06 0l.682.681a.75.75 0 00.917.113 8.251 8.251 0 012.26-.937.75.75 0 00.569-.728V2.25z" />
                </g>
            </svg>
        );
    }
);
