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

export const IconJfrogColor16 = 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="#40BE46"
                    d="M7.274 10.032l-.684.198c.063.18.108.503.108.931v2.123h.765v-2.247c.142-.18.296-.267.467-.267.085 0 .148.019.223.062l.21-.732a.55.55 0 00-.285-.068.632.632 0 00-.251.05 1.36 1.36 0 00-.433.403 1.088 1.088 0 00-.12-.453zM4.621 8.983h-.084v4.3h.799v-1.905h1.009v-.707h-1.01v-.987h1.26l.05-.376a13.032 13.032 0 01-2.024-.325zM2.75 13.854l.37.448c.36-.15.81-.485.924-1.012.04-.174.057-.286.057-.844V8.993h-.81v3.546c0 .465-.016.64-.08.794a1.333 1.333 0 01-.461.521zm7.272-2.178c0 .751-.143 1.074-.473 1.074a.42.42 0 01-.388-.26c-.063-.162-.097-.435-.097-.801 0-.317.028-.54.08-.708.062-.198.21-.322.393-.322.137 0 .256.061.33.167.103.143.155.422.155.85zm.467 1.235c.251-.31.365-.683.365-1.229 0-.515-.103-.862-.336-1.16a1.183 1.183 0 00-.993-.478c-.786 0-1.31.664-1.31 1.663 0 1 .518 1.645 1.31 1.645.451 0 .742-.168.964-.44zm2.19-1.781c0 .292-.166.453-.468.453-.268 0-.45-.13-.45-.453 0-.298.165-.472.456-.472.29 0 .462.174.462.472zm1.35-.677l-.318-.527a.881.881 0 01-.604.273c-.098 0-.149-.012-.36-.068a1.727 1.727 0 00-.524-.08c-.748 0-1.232.421-1.232 1.073 0 .472.205.763.627.881-.17.044-.36.137-.444.242a.441.441 0 00-.092.292c0 .1.023.186.057.26.04.07.097.125.166.155.136.057.36.094.7.1.178 0 .286.006.326.006.211.012.32.05.399.094.08.049.137.16.137.285a.408.408 0 01-.183.323c-.102.074-.268.105-.484.105-.354 0-.547-.137-.547-.391 0-.112.011-.137.033-.205h-.706c-.029.062-.069.15-.069.323 0 .217.08.403.24.565.262.266.69.341 1.106.341.456 0 .895-.112 1.152-.41a.948.948 0 00.233-.657c0-.286-.08-.503-.25-.677-.206-.205-.44-.28-.884-.285l-.411-.007c-.08 0-.125-.03-.125-.074 0-.087.108-.161.302-.26.057.006.08.006.114.006.622 0 1.078-.397 1.078-.944a.81.81 0 00-.172-.521c.097.012.126.019.2.019.21 0 .37-.069.536-.236zM4.42 5.248c-.956.241-1.605.714-1.605 1.258 0 .337.25.646.665.89a1.246 1.246 0 01-.193-.648c0-.566.424-1.087 1.133-1.5zM14.5 7.373c0-.356-.213-.687-.574-.958.032.108.05.22.05.333 0 1.021-1.38 1.896-3.336 2.258.221.026.451.04.687.04 1.752 0 3.173-.749 3.173-1.672zm-1.127-.555c0-.375-.311-.722-.84-1.009.124.155.191.32.191.492 0 .906-1.866 1.64-4.168 1.64-2.301 0-4.168-.734-4.168-1.64 0-.115.03-.227.088-.335-.37.253-.58.543-.58.852 0 .98 2.12 1.775 4.738 1.775 2.617 0 4.739-.795 4.739-1.775zm-2.07-.044c-.966.645-3.94.889-5.222.061-1.004-.649-.66-1.677-3.531-3.944-.376-.296.07-.61.35-.409.282.201.024.255.592.842 1.145 1.186 1.134.12 1.315.523.38.848 1.22 1.701 1.22 1.701.841.566 1.512.69 2.752-.178.787-.55.465.875 2.394-.152.704-.375.675-.126 1.39-1.157.296-.428.864.329.22.434-.257.042-.691.333-.878.793-.263.68-.15 1.183-.602 1.486zM5.942 5.03c-.239-.109-.488-.529-.586-.697.267-.27.159-.722.008-.97-.15-.249-.333-.178-.533-.406-.2-.228.075-.822.332-.365.962 1.71 1.593.999 2.38.897.753-.098 1.42.327 1.624-.876.034-.197.219-.244.237.081.02.325.138 1.118.552 1.22.415.102.744-.1.841-.213.097-.112.148-.096.19.183.043.28.148.665.73.235 1.19-.878.85-1.218 1.313-1.444.263-.128.678.29.078.604-.859.449-.95 1.006-1.492 1.36-.912.596-.633.024-2.1-.192-.565-.083-.747.568-1.188.38-1.018-.434-1.727-.351-2.386.203zm3.18-3.172c.033.257.075.25.164.275.089.023.201-.121.205-.261.004-.14-.058-.23-.192-.224-.134.005-.182.075-.177.21zm4.421.468c.107.108.392.035.459-.042.17-.198.176-.317.088-.45-.088-.132-.274-.108-.458.03s-.15.4-.089.462zm-.08 1.306c-.092.126-.094.216-.03.285.07.074.215.139.318.053.104-.085.104-.209.016-.318-.089-.109-.209-.109-.304-.02zM4.4 2.09c.14.044.2.179.319.025.058-.076.064-.176-.013-.29-.05-.07-.276-.118-.373-.018-.096.101-.008.259.067.283zm-2.804-.087c.25.159.415.4.603.185.064-.072.143-.207.006-.466-.1-.19-.429-.267-.545-.194-.116.072-.258.352-.064.475zm2.315 1.229c.08.085.215.078.296.032.08-.047.064-.176-.013-.29-.049-.07-.193-.103-.29-.002-.096.1-.049.2.007.26z"
                />
            </svg>
        );
    }
);
