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

function IconUploadingLarksheetComponent(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-uploading-larksheet${loadingKls} ${className}`} width={width} height={height} xmlns="http://www.w3.org/2000/svg" fill={useCurrentColor ? 'currentColor' : 'none'} viewBox="0 0 32 32" {...rest} ref={ref}><path fill={useCurrentColor ? 'currentColor' : '#00C139'} fillRule="evenodd" d="M22 2a6 6 0 0 1 6 6v21a1 1 0 0 1-1 1H10a6 6 0 0 1-6-6V3a1 1 0 0 1 1-1h17Z" clipRule="evenodd"/><path fill={useCurrentColor ? 'currentColor' : '#fff'} fillRule="evenodd" d="M11 11v10h10V11H11Zm-1-2a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V10a1 1 0 0 0-1-1H10Z" clipRule="evenodd" opacity=".9"/><path fill={useCurrentColor ? 'currentColor' : 'url(#svg_5e7a297f11__a)'} fillRule="evenodd" d="M21 17H11v-2h10v2Z" clipRule="evenodd"/><path fill={useCurrentColor ? 'currentColor' : 'url(#svg_5e7a297f11__b)'} fillRule="evenodd" d="M15 21V11h2v10h-2Z" clipRule="evenodd"/><defs><linearGradient id="svg_5e7a297f11__a" x1="16" x2="16" y1="17" y2="15" gradientUnits="userSpaceOnUse"><stop stopColor="#fff" stopOpacity=".85"/><stop offset="1" stopColor="#fff"/></linearGradient><linearGradient id="svg_5e7a297f11__b" x1="14.5" x2="14.5" y1="11" y2="21" gradientUnits="userSpaceOnUse"><stop stopColor="#fff"/><stop offset="1" stopColor="#fff" stopOpacity=".4"/></linearGradient></defs></svg>;
}

const IconUploadingLarksheet = React.forwardRef(IconUploadingLarksheetComponent);
export default IconUploadingLarksheet;
