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

export const IconSplunk24 = 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="M6.763 12.298q.037-.204.037-.382 0-.5-.201-.792a.63.63 0 0 0-.546-.29.67.67 0 0 0-.577.309q-.213.308-.213.833 0 .512.21.806.21.293.574.293a.56.56 0 0 0 .361-.112.84.84 0 0 0 .23-.287q.09-.173.125-.378M19.807 9.825l-.035.003v.103h.035c.039 0 .073-.015.073-.052 0-.027-.02-.054-.073-.054" />
                    <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-.231m-.235.026h-.034v.13h-.048v-.305a1 1 0 0 1 .085-.007q.068.002.094.023.027.02.028.063c0 .04-.026.065-.059.074v.003q.041.007.051.074a.3.3 0 0 0 .02.076h-.051a.2.2 0 0 1-.021-.078c-.007-.038-.026-.053-.065-.053"
                        clipRule="evenodd"
                    />
                    <path
                        fillRule="evenodd"
                        d="M23 1H1v22h22zM4.05 13.006a.917.917 0 0 0 .05-.63.7.7 0 0 0-.121-.228 1.7 1.7 0 0 0-.24-.241 8 8 0 0 0-.381-.3 3 3 0 0 1-.321-.274.3.3 0 0 1-.094-.22q0-.128.106-.214a.4.4 0 0 1 .268-.085q.266 0 .506.17l.236-.383a1.5 1.5 0 0 0-.407-.184 1.6 1.6 0 0 0-.455-.064q-.223 0-.412.062a1 1 0 0 0-.324.17.76.76 0 0 0-.291.61q0 .165.057.293a.9.9 0 0 0 .15.232q.094.104.208.195t.235.177q.157.117.256.196.1.078.157.146a.4.4 0 0 1 .078.131.4.4 0 0 1 .021.138.34.34 0 0 1-.117.272.46.46 0 0 1-.311.1.7.7 0 0 1-.307-.073 1.7 1.7 0 0 1-.338-.231L2 13.197q.235.19.47.27.234.082.53.082.248 0 .455-.067.208-.066.359-.186t.235-.29m3.496-1.743q.097.28.097.622 0 .36-.11.662a1.7 1.7 0 0 1-.302.527q-.195.225-.46.351-.267.125-.575.125-.14 0-.26-.025a.9.9 0 0 1-.23-.082 1.1 1.1 0 0 1-.215-.15 2 2 0 0 1-.22-.225V15h-.775v-4.573h.775l.004.445q.211-.268.459-.393.248-.124.574-.124.296 0 .54.112.245.113.423.314t.275.482m1.237 2.212h-.796V9h.796zm3.396-3.052v3.055h-.795l-.002-.409q-.23.256-.471.37a1.3 1.3 0 0 1-.562.112q-.357 0-.601-.143a.82.82 0 0 1-.353-.425.7.7 0 0 1-.046-.14 2 2 0 0 1-.042-.385l-.004-.3v-1.734h.796v1.746q0 .232.021.355t.076.22q.14.256.49.257.45 0 .619-.38a1 1 0 0 0 .06-.216q.018-.12.018-.34v-1.643zm3.429 1.321v1.73h-.795v-1.742a2 2 0 0 0-.021-.353.7.7 0 0 0-.075-.22q-.14-.255-.491-.255a.75.75 0 0 0-.385.094.57.57 0 0 0-.239.277.9.9 0 0 0-.058.223q-.015.119-.015.332v1.645h-.802v-3.046h.801l.001.408q.23-.255.472-.37.241-.113.562-.113.357 0 .601.15a.85.85 0 0 1 .395.561q.018.07.03.161.013.092.016.217.003.124.003.301m2.08.006 1.213 1.524-.742.262-1.2-1.682v1.622h-.802V9h.802v2.627h.085l1.067-1.25.602.262zM22 11.681v.5l-2.411 1.212v-.536l1.868-.931-1.868-.92v-.548zm-2.446-1.74a.27.27 0 0 1 .268-.274h.001c.148 0 .266.122.266.274a.27.27 0 0 1-.267.275.27.27 0 0 1-.268-.275"
                        clipRule="evenodd"
                    />
                </g>
            </svg>
        );
    }
);
