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

export const IconJfrog16 = 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}
                <path
                    fill={color}
                    d="M7.271 10.036l-.686.197c.06.18.108.501.108.934v2.128h.77v-2.251c.143-.18.299-.266.465-.266a.4.4 0 01.222.061l.21-.735a.554.554 0 00-.288-.068.643.643 0 00-.25.05 1.403 1.403 0 00-.437.4.895.895 0 00-.114-.45zM4.62 8.985h-.083v4.303h.8v-1.905h1.01v-.71h-1.01v-.99h1.26l.048-.377a12.405 12.405 0 01-2.025-.321zm-1.87 4.878l.37.446c.36-.149.808-.482.927-1.015.042-.173.054-.284.054-.847V8.992h-.81v3.549c0 .464-.016.637-.076.798a1.37 1.37 0 01-.466.526l.001-.002zm7.27-2.182c0 .754-.143 1.076-.471 1.076a.413.413 0 01-.232-.07.435.435 0 01-.157-.19c-.06-.16-.095-.434-.095-.804 0-.316.03-.538.077-.711.06-.198.21-.322.395-.322.137 0 .256.062.328.167.108.149.155.426.155.854zm.472 1.236c.251-.309.365-.687.365-1.23 0-.514-.101-.866-.334-1.163a1.182 1.182 0 00-.992-.476c-.789 0-1.314.661-1.314 1.663s.52 1.645 1.314 1.645c.448.006.74-.166.96-.439zm2.187-1.78c0 .29-.168.45-.466.45-.27 0-.448-.128-.448-.45 0-.298.167-.47.454-.47.287 0 .46.173.46.47zm1.356-.681l-.317-.525c-.179.174-.394.272-.603.272-.096 0-.15-.013-.359-.068a1.728 1.728 0 00-.525-.081c-.748 0-1.23.42-1.23 1.076 0 .47.202.767.627.884-.174.043-.359.136-.443.241a.454.454 0 00-.09.292c0 .098.024.185.06.26.04.067.098.121.168.153.137.056.358.093.699.1.179 0 .286.005.322.005.21.013.317.05.4.093.078.05.138.161.138.285a.396.396 0 01-.185.321c-.102.074-.27.106-.484.106-.352 0-.55-.136-.55-.39 0-.112.012-.136.036-.204h-.705a.668.668 0 00-.066.321c0 .217.078.402.24.563.262.266.693.34 1.105.34.454 0 .896-.111 1.152-.408a.934.934 0 00.233-.656c0-.284-.077-.5-.25-.68-.204-.203-.437-.278-.884-.284l-.413-.005c-.077 0-.125-.032-.125-.075 0-.086.107-.162.304-.26a.95.95 0 00.114.005c.621 0 1.075-.395 1.075-.945 0-.21-.06-.371-.173-.52.096.013.125.019.197.019.203 0 .364-.067.532-.235zM4.416 5.244c-.955.241-1.606.717-1.606 1.262 0 .34.25.648.663.89a1.238 1.238 0 01-.191-.65c.005-.562.43-1.087 1.134-1.502zM14.5 7.377c0-.359-.215-.686-.574-.958.03.112.054.222.054.334 0 1.02-1.38 1.898-3.339 2.263.221.024.448.037.687.037 1.75-.006 3.172-.754 3.172-1.676zm-1.129-.556c0-.378-.31-.723-.842-1.008a.786.786 0 01.191.495c0 .908-1.863 1.644-4.17 1.644-2.3 0-4.17-.735-4.17-1.644 0-.118.03-.229.09-.334-.37.253-.58.543-.58.853 0 .983 2.122 1.78 4.738 1.78 2.617 0 4.743-.81 4.743-1.786zm-2.067-.049c-.967.643-3.943.89-5.221.062-1.004-.65-.657-1.682-3.53-3.945-.376-.297.072-.612.352-.408.28.204.024.254.592.84 1.146 1.188 1.134.118 1.314.527.382.846 1.218 1.7 1.218 1.7.843.569 1.512.692 2.754-.18.789-.55.466.878 2.396-.154.704-.377.675-.123 1.392-1.157.297-.426.866.328.22.433-.256.044-.693.334-.877.792-.27.686-.156 1.193-.61 1.49zM5.94 5.028c-.239-.111-.49-.532-.585-.698.268-.273.16-.723.005-.971-.149-.247-.334-.18-.53-.408-.205-.23.076-.822.333-.365.962 1.713 1.595 1.002 2.378.897.753-.1 1.422.327 1.625-.878.035-.198.22-.241.239.08.017.328.137 1.119.55 1.218.411.105.746-.1.842-.21.095-.112.149-.1.19.185.043.279.15.668.73.235 1.188-.878.848-1.218 1.313-1.446.263-.13.681.29.079.605-.86.452-.95 1.008-1.494 1.36-.914.594-.634.025-2.103-.191-.567-.08-.747.569-1.189.383-1.01-.433-1.721-.346-2.383.204zm3.184-3.171c.036.26.077.253.167.272.09.024.203-.124.203-.26.006-.142-.06-.229-.19-.222-.138.005-.186.074-.18.21zm4.42.463c.108.105.394.037.46-.043.174-.198.18-.315.09-.452-.09-.13-.275-.11-.46.032-.185.142-.15.407-.09.463zm-.078 1.311c-.089.124-.095.217-.03.284.072.075.216.136.318.057.1-.087.1-.211.018-.316-.09-.112-.21-.112-.306-.025zM4.4 2.085c.137.043.203.18.316.025.06-.075.065-.18-.012-.292-.048-.067-.275-.118-.37-.018-.096.1-.005.26.065.285H4.4zm-2.803-.087c.251.161.412.402.604.185.065-.073.143-.203.005-.463-.1-.192-.428-.266-.542-.192-.12.068-.263.347-.065.47h-.002zm2.313 1.23c.077.087.215.08.298.032.078-.05.066-.18-.012-.29-.047-.07-.19-.106-.287 0-.095.104-.052.196 0 .259z"
                />
            </svg>
        );
    }
);
