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

export const IconGateway16 = 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}
                    d="M8 0c1.677 0 2.994.639 3.993 1.66.98 1.002 1.632 2.345 2.07 3.75.876 2.802.97 6.072.93 8.04-.031 1.468-1.25 2.55-2.661 2.55H3.668c-1.411 0-2.63-1.084-2.66-2.552-.012-.569-.012-1.24.013-1.974a.75.75 0 1 1 1.5.052 34 34 0 0 0-.014 1.891c.012.595.509 1.083 1.161 1.083h8.664c.653 0 1.148-.486 1.16-1.081.04-1.924-.059-4.997-.86-7.563-.4-1.28-.959-2.378-1.711-3.147C10.188 1.96 9.25 1.5 8 1.5c-1.17 0-2.062.403-2.769 1.06-.723.674-1.279 1.642-1.694 2.794a.75.75 0 0 1-1.411-.508c.462-1.284 1.125-2.492 2.084-3.384C5.185.554 6.439 0 8 0M6.22 4.47a.75.75 0 0 1 1.06 0l3.258 3.258a.75.75 0 0 1-.008 1.052l-3.25 3.25a.75.75 0 1 1-1.06-1.06L8.19 9H1a.75.75 0 0 1 0-1.5h7.19L6.22 5.53a.75.75 0 0 1 0-1.06"
                />
            </svg>
        );
    }
);
