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

export const IconAzureBlobStorage24 = 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}>
                    <path d="m11.266 14.461-.017.185a12 12 0 0 1-.046.46.9.9 0 0 1-.071.223c-.047.109-.137.166-.257.18-.29.034-.391-.11-.45-.353-.078-.322-.07-.649-.053-.976l.001-.024c.007-.123.013-.246.057-.363.027-.069.055-.138.094-.201.118-.195.457-.177.569-.028a.6.6 0 0 1 .106.264c.023.152.037.305.05.456zM12.822 9.741c-.087.253-.093.514-.088.794-.009.25.006.515.088.772.037.116.107.207.23.23.136.024.276.027.382-.093a.7.7 0 0 0 .156-.382 4 4 0 0 0 0-1.071 1 1 0 0 0-.092-.31c-.035-.07-.102-.148-.173-.17-.2-.062-.418-.02-.503.23" />
                    <path
                        fillRule="evenodd"
                        d="M14.61 8.1v1.663h1.653l.005.06q.006.054.007.105v6.281c0 .117 0 .233-.057.343-.1.192-.247.317-.473.334l-.06.004q-.144.012-.287.014h-6.91c-.107 0-.215-.006-.319-.026a.565.565 0 0 1-.449-.491 2 2 0 0 1-.005-.17V8.795c0-.145.007-.284.092-.414.107-.167.263-.241.45-.273a1 1 0 0 1 .162-.007h6.191m-4.847 6.572-.011-.162c.006-.286.03-.57.125-.84.106-.3.288-.534.618-.632.282-.084.558-.071.82.045a.7.7 0 0 1 .398.416c.153.434.18.878.128 1.33a2 2 0 0 1-.13.56.87.87 0 0 1-.768.575 1.5 1.5 0 0 1-.464-.019.77.77 0 0 1-.533-.416 1.5 1.5 0 0 1-.153-.51 6 6 0 0 1-.03-.347m4.461-4.35.02.168c-.014.29-.045.576-.138.853-.107.318-.306.554-.647.631-.333.076-.663.063-.95-.156-.154-.117-.233-.28-.284-.46-.118-.415-.117-.838-.07-1.26.027-.241.08-.484.231-.689.181-.247.431-.365.737-.385q.28-.019.536.084.16.064.271.201c.16.2.237.425.258.675q.016.17.036.338m-.08 5.316a.43.43 0 0 1-.068.285h-.001l-.033.002q-.045.003-.092.004h-.445q-.495-.001-.988.003c-.143.002-.184-.05-.184-.176v-.05q0-.048.002-.094c.006-.092.038-.123.134-.126q.124-.003.249-.002h.225c.032-.106.041-1.67.014-1.869l-.036.013q-.038.013-.072.03l-.131.077q-.088.053-.178.102a.4.4 0 0 1-.114.034c-.053.008-.09-.013-.092-.069a2 2 0 0 1 .001-.249c.002-.03.027-.065.052-.085q.066-.052.14-.097l.023-.014q.066-.043.133-.083.127-.075.246-.158a.57.57 0 0 1 .352-.099q.087.002.182.016l.098.01v2.43q.039.001.072.004.059.006.113.008h.24c.114.005.15.041.158.153M11.2 9.072v2.446l.001.002h.399c.132 0 .157.021.165.15.004.073-.007.148-.017.221-.007.05-.043.075-.096.073h-1.486c-.15 0-.163-.013-.18-.162l-.003-.04c-.01-.218.014-.243.232-.243h.295c.086-.004.097-.015.099-.103V9.653l-.036.011q-.037.01-.065.024l-.147.08q-.094.054-.19.104a.6.6 0 0 1-.103.037l-.047.014a.5.5 0 0 1-.032-.342.18.18 0 0 1 .074-.103q.284-.193.577-.372a.4.4 0 0 1 .126-.038l.039-.007a.7.7 0 0 1 .23 0q.08.012.165.011"
                        clipRule="evenodd"
                    />
                    <path
                        fillRule="evenodd"
                        d="m21.784 12.867.216-.361-.082-.141a42 42 0 0 0-.563-.957l-.348-.601-.394-.68q-.285-.486-.573-.97l-.216-.36-.322-.542q-.17-.289-.337-.579l-.224-.384q-.292-.503-.589-1.006l-.383-.642-.16-.27-.122-.202-.242-.405-.027-.046c-.124-.21-.25-.422-.368-.636-.035-.063-.077-.09-.148-.083a1 1 0 0 1-.094 0H9.426q-1.158 0-2.314-.002c-.098 0-.15.033-.196.117q-.352.614-.71 1.224l-.12.204A203 203 0 0 1 4.98 7.417q-.315.531-.625 1.062l-.236.406a79 79 0 0 1-.611 1.04l-.202.338-.461.78-.152.253-.244.41q-.213.36-.424.724c-.025.043-.036.083-.005.133q.09.149.174.297l.124.213.187.31q.13.215.257.432.145.25.288.5.171.303.347.603.214.363.432.724l.307.512a47 47 0 0 1 .384.657l.27.457.268.458q.349.592.696 1.186l.166.287a51 51 0 0 0 .512.869q.235.392.464.787c.06.103.122.145.248.145q3.19-.005 6.383-.003h3.354c.083.001.134-.017.179-.097.273-.482.554-.96.835-1.439q.197-.334.397-.668.184-.308.366-.617l.486-.83.427-.732q.278-.474.561-.946l.18-.298q.138-.226.273-.455l.301-.522q.163-.286.328-.568.283-.479.57-.958M6.968 16.203V8.81c0-.189.013-.374.082-.554q.159-.42.538-.662a1.5 1.5 0 0 1 .837-.224h1.158q2.608 0 5.215-.003c.112 0 .182.041.252.114q.123.127.25.247l.136.132.136.136q.118.12.238.236l.41.392q.206.195.41.392.082.079.16.16.088.09.176.174c.043.041.054.085.054.14q0 .277 0 .553v6.15q0 .077-.003.152c-.032.493-.266.86-.702 1.111-.236.136-.49.168-.756.168h-7.15c-.197 0-.393-.01-.577-.089-.38-.164-.651-.424-.79-.816a1.5 1.5 0 0 1-.074-.516"
                        clipRule="evenodd"
                    />
                </g>
            </svg>
        );
    }
);
