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

function IconAppVariableComponent(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-app-variable${loadingKls} ${className}`} width={width} height={height} xmlns="http://www.w3.org/2000/svg" fill={useCurrentColor ? 'currentColor' : 'none'} viewBox="0 0 16 16" {...rest} ref={ref}><path fill={useCurrentColor ? 'currentColor' : '#51BCE1'} d="M4.667 12.333v1.334c0 .368.298.666.667.666h5.333a.667.667 0 0 0 .667-.666v-1.334H4.667Z" opacity=".5"/><path fill={useCurrentColor ? 'currentColor' : '#51BCE1'} fillRule="evenodd" d="M7.476 7.71c-.849-.894-1.53-1.527-2.393-1.702-.27-.055-.497-.273-.497-.55V4.49c0-.276.225-.503.5-.472 1.776.197 2.949 1.422 3.818 2.338l.115.121c.46.486.837.884 1.238 1.183.233.174.45.296.666.368.262.087.491.304.491.58v.969c0 .276-.225.504-.498.464-.72-.103-1.325-.421-1.836-.803-.545-.407-1.04-.93-1.472-1.387a87.725 87.725 0 0 0-.132-.14Z" clipRule="evenodd" opacity=".5"/><path fill={useCurrentColor ? 'currentColor' : '#51BCE1'} fillRule="evenodd" d="M1.333 2.333c0-.368.299-.666.667-.666h12c.368 0 .667.298.667.666v9.334a.667.667 0 0 1-.667.666H2a.667.667 0 0 1-.667-.666V2.333Zm5.282 4.528c-.594-.524-1.162-.852-1.862-.897a.175.175 0 0 1-.167-.172V4.157c0-.092.075-.167.167-.164 1.39.05 2.43.727 3.247 1.463.816-.736 1.856-1.412 3.247-1.463a.162.162 0 0 1 .167.164v1.635a.175.175 0 0 1-.167.172c-.7.045-1.268.373-1.862.897.305.316.582.583.872.8.35.26.664.403.991.438.091.01.166.084.166.176V9.91a.16.16 0 0 1-.166.163c-.869-.04-1.58-.396-2.168-.835A9.356 9.356 0 0 1 8 8.26a9.356 9.356 0 0 1-1.08.977c-.588.44-1.3.794-2.168.835a.16.16 0 0 1-.166-.163V8.275c0-.092.074-.166.166-.176.327-.035.641-.177.991-.439a7.45 7.45 0 0 0 .872-.799Z" clipRule="evenodd"/></svg>;
}

const IconAppVariable = React.forwardRef(IconAppVariableComponent);
export default IconAppVariable;
