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

export const IconBug16 = 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={16}
                height={16}
                fill="none"
                viewBox="0 0 16 16"
                aria-hidden={!title}
                ref={svgRef}
                aria-labelledby={titleId}
                {...props}
            >
                {title ? <title id={titleId}>{title}</title> : null}
                <path
                    fill={color}
                    fillRule="evenodd"
                    d="M10.137.803a.75.75 0 111.06 1.06l-.415.416C11.525 2.932 12 3.853 12 4.909c0 .103-.004.205-.014.306.095.016.173.03.238.045a.973.973 0 01.776.951V6.6l1.572-.629a.75.75 0 11.557 1.393L13 8.214v1.13l1.85.246a.75.75 0 01-.199 1.487l-1.658-.221a3.935 3.935 0 01-.427 1.555l2.364.887a.75.75 0 11-.527 1.404l-2.666-1a.753.753 0 01-.12-.058C10.686 14.491 9.384 15 8 15c-1.384 0-2.687-.509-3.616-1.356a.752.752 0 01-.12.058l-2.667 1a.75.75 0 11-.527-1.404l2.364-.887a3.935 3.935 0 01-.426-1.555l-1.659.22a.75.75 0 01-.198-1.486l1.85-.247V8.174L.97 7.363A.75.75 0 011.53 5.97L3 6.56V6.21c0-.474.334-.854.776-.95.065-.015.144-.03.238-.046C4.004 5.114 4 5.012 4 4.909c0-1.056.475-1.977 1.218-2.63l-.415-.415A.75.75 0 115.863.803l.695.694a4.318 4.318 0 012.884 0l.695-.694zm-4.63 4.26C6.132 5.026 6.946 5 8 5c1.054 0 1.868.026 2.494.063.004-.051.006-.102.006-.154C10.5 3.793 9.461 2.75 8 2.75c-1.46 0-2.5 1.043-2.5 2.16 0 .05.002.102.006.153zM4.5 7.652v-.994C5.043 6.586 6.093 6.5 8 6.5c1.908 0 2.957.086 3.5.158v3.949c0 1.494-1.454 2.893-3.5 2.893-2.045 0-3.5-1.4-3.5-2.893v-.59-2.335-.03z"
                    clipRule="evenodd"
                />
            </svg>
        );
    }
);
