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

export const IconSplunk16 = 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}
                <g fill={color}>
                    <path d="M4.334 8.198c.018-.09.026-.175.026-.254 0-.222-.047-.398-.14-.528a.448.448 0 00-.383-.193.472.472 0 00-.404.205c-.1.138-.149.323-.149.556 0 .228.05.407.147.537.098.13.232.196.402.196a.407.407 0 00.253-.075.566.566 0 00.161-.191.868.868 0 00.087-.253zM13.465 6.55a.15.15 0 00-.025.002v.069h.025c.027 0 .051-.01.051-.035 0-.018-.014-.036-.051-.036z" />
                    <path
                        fillRule="evenodd"
                        d="M13.628 6.628a.153.153 0 00-.152-.155.154.154 0 00-.152.154c0 .087.068.156.152.156a.151.151 0 00.152-.155zm-.164.018h-.024v.087h-.034V6.53a.359.359 0 01.06-.004c.032 0 .053.006.065.015.013.009.02.023.02.042 0 .027-.018.043-.041.05v.001c.019.003.031.02.035.05a.17.17 0 00.014.05h-.035a.137.137 0 01-.015-.052c-.005-.025-.018-.035-.045-.035z"
                        clipRule="evenodd"
                    />
                    <path
                        fillRule="evenodd"
                        d="M16 0H0v16h16V0zM2.435 8.67a.584.584 0 00.035-.42.453.453 0 00-.085-.151 1.155 1.155 0 00-.167-.161 5.278 5.278 0 00-.267-.2 2.11 2.11 0 01-.225-.183.2.2 0 01-.066-.146c0-.057.025-.105.074-.143a.297.297 0 01.188-.057c.124 0 .242.038.354.114l.165-.255a1.087 1.087 0 00-.285-.124 1.19 1.19 0 00-.318-.042c-.104 0-.2.014-.288.041a.695.695 0 00-.228.114.536.536 0 00-.149.176.487.487 0 00-.054.23c0 .073.013.139.04.196a.6.6 0 00.105.154c.044.047.092.09.146.13.053.041.108.08.164.118l.18.13a.766.766 0 01.109.098c.026.03.045.06.054.088a.28.28 0 01.015.092.221.221 0 01-.082.18.333.333 0 01-.217.068.508.508 0 01-.215-.049 1.157 1.157 0 01-.236-.154L1 8.798c.11.084.22.144.329.18.11.037.233.055.371.055.115 0 .222-.015.319-.045a.803.803 0 00.25-.124.563.563 0 00.166-.193zM4.882 7.51c.045.124.068.262.068.414 0 .16-.025.307-.077.442-.05.134-.121.251-.212.351a.957.957 0 01-.724.317.97.97 0 01-.182-.016.612.612 0 01-.16-.055.805.805 0 01-.151-.1c-.05-.04-.1-.09-.155-.15V10h-.542V6.952h.543l.003.296a.963.963 0 01.32-.262.922.922 0 01.403-.083.89.89 0 01.867.606zm.866 1.474H5.19V6h.557v2.983zM8.125 6.95v2.035l-.556.001-.002-.272a1.043 1.043 0 01-.33.246.966.966 0 01-.393.075.851.851 0 01-.42-.095.552.552 0 01-.248-.283.435.435 0 01-.031-.094 1.407 1.407 0 01-.03-.257 7.818 7.818 0 01-.003-.2V6.95h.557v1.165c0 .103.005.182.015.236.01.054.028.103.053.146.065.115.18.172.344.172.21 0 .353-.085.432-.253a.568.568 0 00.043-.145c.008-.053.012-.128.012-.226V6.95h.557zm2.4.88v1.154H9.97V7.82a1.41 1.41 0 00-.015-.235.446.446 0 00-.052-.146c-.065-.114-.18-.17-.344-.17a.545.545 0 00-.27.062.386.386 0 00-.167.185.555.555 0 00-.04.148c-.007.053-.01.127-.01.221v1.097h-.562v-2.03h.56l.002.272a1.05 1.05 0 01.33-.246.958.958 0 01.393-.076c.166 0 .306.033.42.1a.573.573 0 01.277.374 1.199 1.199 0 01.032.252c.002.055.003.122.003.2zm1.457.004l.849 1.016-.52.175-.84-1.121v1.08h-.56V6h.56v1.752h.06l.746-.833.422.175-.717.74zM15 7.788v.332l-1.688.809v-.357l1.308-.622-1.308-.613v-.365L15 7.788zm-1.712-1.16c0-.102.084-.183.187-.183.104 0 .188.08.188.182a.183.183 0 01-.188.184.184.184 0 01-.187-.184z"
                        clipRule="evenodd"
                    />
                </g>
            </svg>
        );
    }
);
