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

export const IconMicrosoftTeamsColor24 = 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}
                <path
                    fill="#5059C9"
                    d="M15.95 9.75h5.166c.488 0 .884.383.884.855v4.553c0 1.735-1.454 3.142-3.248 3.142h-.015c-1.794 0-3.248-1.406-3.249-3.142v-4.961c0-.247.207-.447.462-.447zM19.442 8.85c1.156 0 2.093-.907 2.093-2.025 0-1.118-.937-2.025-2.093-2.025s-2.093.907-2.093 2.025c0 1.118.937 2.025 2.093 2.025z"
                />
                <path
                    fill="#7B83EB"
                    d="M12.93 8.85c1.67 0 3.024-1.31 3.024-2.925C15.954 4.31 14.6 3 12.93 3S9.907 4.31 9.907 5.925c0 1.615 1.354 2.925 3.023 2.925zM16.961 9.75H8.434c-.482.012-.864.399-.853.865v5.193c-.067 2.8 2.223 5.123 5.117 5.192 2.893-.069 5.183-2.392 5.116-5.192v-5.193c.011-.466-.37-.853-.853-.865z"
                />
                <path
                    fill="#000"
                    d="M13.163 9.75v7.276a.829.829 0 01-.53.761.847.847 0 01-.321.063H7.99a5.316 5.316 0 01-.41-2.043v-5.193c-.01-.466.37-.852.851-.864h4.73z"
                    opacity={0.1}
                />
                <path
                    fill="#000"
                    d="M12.698 9.75v7.727a.775.775 0 01-.066.31.857.857 0 01-.786.513H8.21a5.75 5.75 0 01-.218-.45 5.316 5.316 0 01-.41-2.043v-5.193c-.01-.466.37-.852.851-.864h4.266z"
                    opacity={0.2}
                />
                <path
                    fill="#000"
                    d="M12.698 9.75v6.826a.844.844 0 01-.852.824H7.828a5.316 5.316 0 01-.247-1.593v-5.193c-.01-.466.37-.852.851-.864h4.266z"
                    opacity={0.2}
                />
                <path
                    fill="#000"
                    d="M12.232 9.75v6.826a.844.844 0 01-.85.824H7.827a5.316 5.316 0 01-.247-1.593v-5.193c-.01-.466.37-.852.851-.864h3.8z"
                    opacity={0.2}
                />
                <path
                    fill="#000"
                    d="M13.163 7.424V8.84c-.08.005-.154.01-.233.01-.079 0-.153-.005-.232-.01a2.631 2.631 0 01-.465-.072A2.998 2.998 0 0110.14 7.05a2.438 2.438 0 01-.15-.45h2.322c.469.002.849.37.85.824z"
                    opacity={0.1}
                />
                <path
                    fill="#000"
                    d="M12.698 7.874v.967a2.632 2.632 0 01-.465-.072A2.998 2.998 0 0110.14 7.05h1.707c.469.002.849.37.85.824z"
                    opacity={0.2}
                />
                <path
                    fill="#000"
                    d="M12.698 7.874v.967a2.632 2.632 0 01-.465-.072A2.998 2.998 0 0110.14 7.05h1.707c.469.002.849.37.85.824z"
                    opacity={0.2}
                />
                <path
                    fill="#000"
                    d="M12.233 7.874v.895A2.998 2.998 0 0110.14 7.05h1.242c.469.002.849.37.85.824z"
                    opacity={0.2}
                />
                <g>
                    <path
                        fill="url(#microsoft-teams-color-24__paint0_linear_7503_67)"
                        d="M2.853 7.05h8.527c.47 0 .852.37.852.825v8.25c0 .456-.381.825-.852.825H2.853c-.471 0-.853-.37-.853-.825v-8.25c0-.456.382-.825.853-.825z"
                    />
                    <path
                        fill="#fff"
                        d="M9.36 10.19H7.655v4.491H6.57v-4.49H4.873v-.872H9.36v.871z"
                    />
                </g>
                <defs>
                    <linearGradient
                        id="microsoft-teams-color-24__paint0_linear_7503_67"
                        x1={3.778}
                        x2={10.13}
                        y1={6.406}
                        y2={17.776}
                        gradientUnits="userSpaceOnUse"
                    >
                        <stop stopColor="#5A62C3" />
                        <stop offset={0.5} stopColor="#4D55BD" />
                        <stop offset={1} stopColor="#3940AB" />
                    </linearGradient>
                </defs>
            </svg>
        );
    }
);
