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

export const IconSplunkColor24 = 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="#000">
                    <path d="M6.763 12.298c.025-.136.037-.264.037-.382 0-.334-.067-.597-.201-.792a.63.63 0 00-.546-.29.665.665 0 00-.577.309c-.142.205-.213.483-.213.833 0 .342.07.61.21.806.14.195.331.293.574.293a.563.563 0 00.361-.112.84.84 0 00.23-.287c.06-.115.101-.242.125-.378zM19.807 9.825a.206.206 0 00-.035.003v.103h.035c.039 0 .073-.015.073-.052 0-.027-.02-.054-.073-.054z" />
                    <path
                        fillRule="evenodd"
                        d="M20.04 9.943c0-.13-.097-.233-.217-.233h-.001c-.12 0-.217.103-.217.231 0 .13.098.233.218.233.121.001.217-.103.217-.231zm-.235.026h-.034v.13h-.048v-.305a.49.49 0 01.085-.007c.046 0 .076.01.094.023.018.013.028.034.028.063 0 .04-.026.065-.059.074v.003c.027.005.045.029.051.074a.264.264 0 00.02.076h-.051a.215.215 0 01-.021-.078c-.007-.038-.026-.053-.065-.053z"
                        clipRule="evenodd"
                    />
                    <path
                        fillRule="evenodd"
                        d="M23 1H1v22h22V1zM4.05 13.006a.917.917 0 00.05-.63.69.69 0 00-.121-.228 1.689 1.689 0 00-.24-.241 7.575 7.575 0 00-.381-.3 3.048 3.048 0 01-.321-.274.308.308 0 01-.094-.22c0-.086.035-.156.106-.214a.41.41 0 01.268-.085c.177 0 .346.056.506.17l.236-.383a1.514 1.514 0 00-.407-.184 1.624 1.624 0 00-.455-.064c-.148 0-.286.021-.412.062a.977.977 0 00-.324.17.76.76 0 00-.291.61c0 .11.019.207.057.293a.905.905 0 00.15.232c.063.07.132.134.208.195.076.061.155.12.235.177.105.078.19.143.256.196.067.052.119.101.157.146a.406.406 0 01.078.131.44.44 0 01.021.138.339.339 0 01-.117.272.46.46 0 01-.311.1.696.696 0 01-.307-.073 1.646 1.646 0 01-.338-.231L2 13.197c.157.126.313.217.47.27.156.055.333.082.53.082.165 0 .317-.022.455-.067.139-.044.258-.106.359-.186.1-.08.18-.176.235-.29zm3.496-1.743c.065.187.097.394.097.622 0 .24-.036.46-.11.662a1.67 1.67 0 01-.302.527 1.342 1.342 0 01-1.035.475c-.093 0-.18-.007-.26-.024a.847.847 0 01-.23-.082 1.144 1.144 0 01-.215-.15 2.077 2.077 0 01-.22-.225V15h-.775v-4.573h.775l.004.445c.141-.178.294-.31.459-.393.165-.083.357-.124.574-.124.197 0 .377.037.54.112.163.076.305.18.423.314.119.134.21.295.275.482zm1.237 2.212h-.796V9h.796v4.475zm3.396-3.052v3.055h-.795l-.002-.409c-.153.171-.31.294-.471.37a1.324 1.324 0 01-.562.112c-.238 0-.438-.047-.601-.143a.817.817 0 01-.353-.425.674.674 0 01-.046-.14 2.2 2.2 0 01-.042-.385 12.303 12.303 0 01-.004-.3v-1.734h.796v1.746c0 .155.007.273.021.355.014.082.04.155.076.22.093.17.257.257.49.257.3 0 .506-.127.619-.38a.885.885 0 00.06-.216c.012-.08.018-.193.018-.34v-1.643h.796zm3.429 1.321v1.73h-.795v-1.742a2.22 2.22 0 00-.021-.353.69.69 0 00-.075-.22c-.093-.17-.257-.255-.491-.255a.75.75 0 00-.385.094.57.57 0 00-.239.277.865.865 0 00-.058.223c-.01.079-.015.19-.015.332v1.645h-.802v-3.046h.801l.001.408c.154-.17.31-.294.472-.37.161-.075.348-.113.562-.113.238 0 .438.05.601.15a.849.849 0 01.395.561 1.89 1.89 0 01.045.377c.003.084.004.184.004.302zm2.08.006l1.213 1.524-.742.262-1.2-1.682v1.622h-.802V9h.802v2.627h.085l1.067-1.25.602.262-1.024 1.11zM22 11.681v.5l-2.411 1.212v-.536l1.868-.931-1.868-.92v-.548L22 11.68zm-2.446-1.74a.27.27 0 01.268-.274h.001c.148 0 .266.122.266.274a.269.269 0 01-.267.275.27.27 0 01-.268-.275z"
                        clipRule="evenodd"
                    />
                </g>
            </svg>
        );
    }
);
