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

function IconSystemNetworkControlComponent(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-system_network-control${loadingKls} ${className}`} width={width} height={height} xmlns="http://www.w3.org/2000/svg" fill={useCurrentColor ? 'currentColor' : '#000'} viewBox="0 0 20 20" {...rest} ref={ref}><path d="M10.337 2.007c-.197.962-.65 2.367-1.404 2.768-.451.24-.727.322-.936.384-.206.062-.348.104-.529.259.131.602.333.83.536 1.06.105.119.21.238.307.41.407.73.524 1.593.168 2.302-.454.906-1.246 1.012-2.192.587-.359-.161-.703-.532-1-.852-.27-.29-.503-.54-.673-.555-.107-.009-.288.047-.51.116-.517.16-1.25.386-1.742-.003a2.064 2.064 0 0 1-.185-.164 8.003 8.003 0 0 1 8.16-6.312Zm6.623 11.94c-.173-.286-.47-.66-.88-.902-.468-.277-.924-.25-1.311-.226-.205.013-.39.024-.549-.012-.18-.04-.288-.197-.427-.397-.213-.308-.5-.72-1.227-.978-1.2-.426-3.273.05-3.505 1.866-.181 1.423.564 2.137 1.243 2.788.187.18.37.355.526.538.48.564.412 1.044.27 1.3a8.005 8.005 0 0 0 5.86-3.977Z" opacity=".5"/><path d="M16.96 13.947a8 8 0 0 0-6.623-11.94c-.197.962-.65 2.367-1.404 2.768-.45.24-.727.322-.936.384-.206.062-.348.104-.529.259.131.602.333.83.536 1.06.105.119.21.238.307.41.407.73.524 1.593.168 2.302-.454.906-1.246 1.012-2.192.587-.359-.161-.703-.532-1-.852-.27-.29-.503-.54-.672-.555-.107-.009-.29.047-.51.116-.518.16-1.25.386-1.743-.003a2.064 2.064 0 0 1-.185-.164A8.003 8.003 0 0 1 2 10a8 8 0 0 0 9.101 7.925c.14-.258.21-.737-.271-1.301-.157-.183-.339-.358-.526-.538-.68-.65-1.424-1.365-1.242-2.788.231-1.816 2.304-2.292 3.504-1.866.728.258 1.014.67 1.227.978.14.2.248.356.428.397.158.036.343.025.548.012.387-.024.843-.052 1.312.226.41.242.706.616.88.902Z"/></svg>;
}

const IconSystemNetworkControl = React.forwardRef(IconSystemNetworkControlComponent);
export default IconSystemNetworkControl;
