import React, { ForwardedRef, useContext } from 'react';
import { OriginIconProps } from '../type';
import { Context } from '../context';

function IconAgentPublishApiComponent(props: OriginIconProps, ref: ForwardedRef<SVGSVGElement>) {
    const { prefix: prefixFromContext } = useContext(Context);
    const { className = '', prefix: prefixFromProps, width = '1em', height = '1em', useCurrentColor = false, spin, ...rest } = props;

    const prefix = prefixFromProps || prefixFromContext || 'hiagent';
    const loadingKls = spin ? ` ${prefix}-icon-loading` : '';
    return <svg className={`${prefix}-icon ${prefix}-icon-agent_publish_api${loadingKls} ${className}`} width={width} height={height} xmlns="http://www.w3.org/2000/svg" fill={useCurrentColor ? 'currentColor' : 'none'} viewBox="0 0 24 24" {...rest} ref={ref}><rect width="24" height="24" fill={useCurrentColor ? 'currentColor' : '#F1DDFF'} rx="4"/><g clipPath="url(#svg_59f009debb__clip0_35232_1096301)"><path fill={useCurrentColor ? 'currentColor' : 'url(#svg_59f009debb__paint0_linear_35232_1096301)'} d="M20.9312 3.98522L19.9968 3.05065C19.9616 3.01545 19.9176 3 19.8713 3C19.8249 3 19.7809 3.0176 19.7455 3.05065L18.0684 4.72778C17.3257 4.22304 16.4617 3.97193 15.5979 3.97193C14.4695 3.97193 13.3411 4.40159 12.4795 5.26341L10.2335 7.50922C10.1652 7.57747 10.1652 7.68991 10.2335 7.75817L16.2215 13.746C16.2568 13.7812 16.3009 13.7969 16.3471 13.7969C16.3913 13.7969 16.4375 13.7793 16.4727 13.746L18.7185 11.5002C20.237 9.97955 20.4155 7.62795 19.2541 5.91346L20.9312 4.23615C20.9995 4.16592 20.9995 4.05348 20.9312 3.98522Z"/><path fill={useCurrentColor ? 'currentColor' : 'url(#svg_59f009debb__paint1_linear_35232_1096301)'} d="M13.4639 12.7543C13.3957 12.6861 13.2832 12.6861 13.215 12.7543L11.7473 14.2222L9.75737 12.2322L11.2272 10.7622C11.2956 10.6937 11.2956 10.5813 11.2272 10.513L10.4251 9.71083C10.3569 9.6424 10.2444 9.6424 10.1762 9.71083L8.70637 11.1809L7.75881 10.2332C7.72361 10.198 7.67943 10.1825 7.63327 10.1825C7.58909 10.1825 7.54293 10.2001 7.50773 10.2332L5.26438 12.4788C3.74606 13.9973 3.56754 16.3511 4.72882 18.0657L3.05192 19.743C2.98367 19.8113 2.98367 19.9237 3.05192 19.992L3.98636 20.9264C4.02156 20.9616 4.06575 20.977 4.1119 20.977C4.15824 20.977 4.20224 20.9594 4.23744 20.9264L5.91452 19.2493C6.65698 19.754 7.52102 20.0053 8.38471 20.0053C9.51294 20.0053 10.6412 19.5755 11.5027 18.7138L13.7482 16.468C13.8165 16.3996 13.8165 16.2873 13.7482 16.2191L12.8007 15.2714L14.2705 13.8014C14.3387 13.7331 14.3387 13.6207 14.2705 13.5524L13.4639 12.7543Z"/></g><defs><linearGradient id="svg_59f009debb__paint0_linear_35232_1096301" x1="21" x2="13" y1="3" y2="11" gradientUnits="userSpaceOnUse"><stop stopColor="#C16DFF"/><stop offset="1" stopColor="#A232F4"/></linearGradient><linearGradient id="svg_59f009debb__paint1_linear_35232_1096301" x1="11.999" x2="3" y1="11.5" y2="20.499" gradientUnits="userSpaceOnUse"><stop stopColor="#A232F4"/><stop offset="1" stopColor="#C16DFF"/></linearGradient><clipPath id="svg_59f009debb__clip0_35232_1096301"><path fill={useCurrentColor ? 'currentColor' : '#fff'} transform="translate(3 3)" d="M0 0H18V18H0z"/></clipPath></defs></svg>;
}

const IconAgentPublishApi = React.forwardRef(IconAgentPublishApiComponent);
export default IconAgentPublishApi;
