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.032-.684.198c.063.18.108.503.108.931v2.123h.765v-2.247q.212-.268.467-.267c.085 0 .148.019.223.062l.21-.732a.55.55 0 0 0-.285-.068.6.6 0 0 0-.251.05 1.4 1.4 0 0 0-.433.403 1.1 1.1 0 0 0-.12-.453M4.621 8.983h-.084v4.3h.799v-1.905h1.009v-.707h-1.01v-.987h1.26l.05-.376a13 13 0 0 1-2.024-.325M2.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.33 1.33 0 0 1-.461.521m7.272-2.178c0 .751-.143 1.074-.473 1.074a.42.42 0 0 1-.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.85m.467 1.235c.251-.31.365-.683.365-1.229 0-.515-.103-.862-.336-1.16a1.18 1.18 0 0 0-.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-.44m2.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.472m1.35-.677-.318-.527a.88.88 0 0 1-.604.273c-.098 0-.149-.012-.36-.068a1.7 1.7 0 0 0-.524-.08c-.748 0-1.232.421-1.232 1.073 0 .472.205.763.627.881-.17.044-.36.137-.444.242a.44.44 0 0 0-.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.41.41 0 0 1-.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.323q0 .324.24.565c.262.266.69.341 1.106.341.456 0 .895-.112 1.152-.41a.95.95 0 0 0 .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.8.8 0 0 0-.172-.521c.097.012.126.019.2.019.21 0 .37-.069.536-.236M4.42 5.249c-.956.241-1.605.714-1.605 1.258 0 .337.25.646.665.89a1.25 1.25 0 0 1-.193-.648c0-.566.424-1.086 1.133-1.5M14.5 7.373c0-.356-.213-.687-.574-.958q.049.163.05.333c0 1.021-1.38 1.896-3.336 2.258q.332.04.687.04c1.752 0 3.173-.749 3.173-1.672m-1.127-.555c0-.375-.311-.722-.84-1.009.124.155.191.32.191.492 0 .906-1.866 1.64-4.168 1.64s-4.168-.734-4.168-1.64q0-.173.088-.335c-.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.775m-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.486M5.942 5.03c-.239-.109-.488-.529-.586-.697.267-.27.159-.722.008-.97-.15-.249-.333-.178-.533-.406s.075-.822.332-.365c.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.22s.744-.1.841-.213.148-.096.19.183c.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.203m3.18-3.172c.033.257.075.25.164.275.089.023.201-.121.205-.261s-.058-.23-.192-.224c-.134.005-.182.075-.177.21m4.421.468c.107.108.392.035.459-.042.17-.198.176-.317.088-.45-.088-.132-.274-.108-.458.03s-.15.4-.089.462m-.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-.02M4.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.283m-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.475m2.315 1.229c.08.085.215.078.296.032.08-.047.064-.176-.013-.29-.049-.07-.193-.103-.29-.002s-.049.2.007.26"
                />
            </svg>
        );
    }
);
