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

export const IconCloudOff16 = 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="M1.22 1.22a.75.75 0 0 1 1.06 0l12.5 12.5a.75.75 0 0 1 0 1.061.753.753 0 0 1-1.06 0l-1.11-1.11a4 4 0 0 1-.79.08H6.093c-1.089 0-2.16-.3-3.085-.865A5.8 5.8 0 0 1 .85 10.54a5.7 5.7 0 0 1-.572-3.116l.001-.005a5.7 5.7 0 0 1 2.166-3.911L1.22 2.28a.753.753 0 0 1 0-1.06m2.297 3.358a4.3 4.3 0 0 0-.863.826c-.493.628-.8 1.38-.882 2.165v.004a4.2 4.2 0 0 0 .42 2.296c.356.712.91 1.315 1.599 1.736.688.421 1.486.646 2.299.646h5.1zM6.38 2.955a.75.75 0 0 1 .884-.587 5.9 5.9 0 0 1 2.845 1.463 5.75 5.75 0 0 1 1.454 2.17h.255c1.038 0 2.037.406 2.775 1.13a3.85 3.85 0 0 1 1.156 2.745c0 .408-.066.812-.19 1.192a.75.75 0 0 1-.947.479.753.753 0 0 1-.48-.946c.077-.232.117-.478.117-.725 0-.625-.253-1.229-.707-1.675a2.47 2.47 0 0 0-1.724-.7h-.802a.754.754 0 0 1-.725-.56 4.24 4.24 0 0 0-1.206-2.014 4.4 4.4 0 0 0-2.12-1.088.753.753 0 0 1-.585-.884"
                    clipRule="evenodd"
                />
            </svg>
        );
    }
);
