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

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

    const prefix = prefixFromProps || prefixFromContext || 'hiagent';
    const loadingKls = spin ? ` ${prefix}-icon-loading` : '';
    return <svg className={`${prefix}-icon ${prefix}-icon-plugin_cloud-deployment${loadingKls} ${className}`} width={width} height={height} xmlns="http://www.w3.org/2000/svg" fill={useCurrentColor ? 'currentColor' : '#000'} viewBox="0 0 12 12" {...rest} ref={ref}><path d="M6.03 1.043c1.947 0 3.541 1.5 3.694 3.407 1.225.47 2.08 1.7 2.08 3.12 0 1.809-1.395 3.323-3.172 3.324H3.429a.503.503 0 0 1-.142-.024C1.545 10.83.186 9.34.186 7.56c0-1.444.889-2.692 2.153-3.14A3.707 3.707 0 0 1 6.03 1.044Zm0 1A2.708 2.708 0 0 0 3.323 4.75a.497.497 0 0 1-.23.418.495.495 0 0 1-.235.14c-.943.236-1.672 1.141-1.672 2.252 0 1.302.997 2.313 2.172 2.313.258 0 1.966.016 2.223.02h3.05c1.175 0 2.174-1.014 2.174-2.324 0-1.116-.732-2.024-1.674-2.261a.5.5 0 0 1-.374-.43.498.498 0 0 1-.02-.128A2.707 2.707 0 0 0 6.03 2.043Zm-.073 1.464a.637.637 0 0 1 .49 1.054c.006.03.01.062.01.094v1.002l2.046.001a.5.5 0 0 1 .5.5v1.873a.497.497 0 0 1-.03.157.64.64 0 0 1-.444 1.106.644.644 0 0 1-.643-.644c0-.16.061-.306.159-.419a.5.5 0 0 1-.042-.2V6.657H6.457V8.03a.498.498 0 0 1-.034.178.64.64 0 0 1-.466 1.085.644.644 0 0 1-.466-1.085.5.5 0 0 1-.034-.178V6.656H3.913v1.375a.498.498 0 0 1-.044.2.638.638 0 0 1-.483 1.063.644.644 0 0 1-.446-1.106.499.499 0 0 1-.027-.157V6.156a.5.5 0 0 1 .5-.5h2.044v-1c0-.033.004-.065.01-.095a.638.638 0 0 1 .49-1.054Z"/></svg>;
}

const IconPluginCloudDeployment = React.forwardRef(IconPluginCloudDeploymentComponent);
export default IconPluginCloudDeployment;
