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

function IconOverviewAPIComponent(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-overview_API${loadingKls} ${className}`} width={width} height={height} xmlns="http://www.w3.org/2000/svg" fill={useCurrentColor ? 'currentColor' : 'none'} viewBox="0 0 52 52" {...rest} ref={ref}><rect width="52" height="52" fill={useCurrentColor ? 'currentColor' : '#F7ECFF'} rx="12"/><path fill={useCurrentColor ? 'currentColor' : '#C16DFF'} d="M25.475 9.922a1.3 1.3 0 0 1 1.31 0l3.414 1.992c.4.233.645.66.645 1.123v4.006a1.3 1.3 0 0 1-.645 1.123l-3.414 1.992a1.3 1.3 0 0 1-1.31 0l-3.414-1.992a1.3 1.3 0 0 1-.645-1.123v-4.006c0-.463.245-.89.645-1.123l3.414-1.992ZM13.42 29.542a1.3 1.3 0 0 1 1.31 0l3.414 1.991c.399.233.645.661.645 1.123v4.007a1.3 1.3 0 0 1-.645 1.123l-3.415 1.992a1.3 1.3 0 0 1-1.31 0l-3.414-1.992a1.3 1.3 0 0 1-.645-1.123v-4.007c0-.462.246-.89.645-1.122l3.414-1.992Zm23.84 0a1.3 1.3 0 0 1 1.31 0l3.415 1.991c.4.233.645.661.645 1.123v4.007a1.3 1.3 0 0 1-.645 1.123l-3.414 1.992a1.3 1.3 0 0 1-1.31 0l-3.415-1.992a1.3 1.3 0 0 1-.645-1.123v-4.007c0-.462.246-.89.645-1.122l3.415-1.992Z" opacity=".5"/><path fill={useCurrentColor ? 'currentColor' : 'url(#svg_cda5e68c87__svg_c81fdf6630__a)'} d="M24.244 14.75a3.5 3.5 0 0 1 3.5 0l8.932 5.157a3.5 3.5 0 0 1 1.75 3.031v10.314a3.5 3.5 0 0 1-1.75 3.03l-8.932 5.158a3.5 3.5 0 0 1-3.5 0l-8.932-5.157a3.5 3.5 0 0 1-1.75-3.031V22.938a3.5 3.5 0 0 1 1.75-3.03l8.932-5.158Z"/><path fill={useCurrentColor ? 'currentColor' : '#fff'} d="m21.956 26.159-1.654 5.331h-1.758l2.494-6.75h1.114l-.196 1.419Zm1.37 5.331-1.659-5.331-.214-1.419h1.128l2.508 6.75h-1.762Zm-.064-2.517v1.256h-3.483v-1.256h3.483Zm5.034.227h-1.688v-1.256h1.688c.23 0 .416-.04.559-.116a.707.707 0 0 0 .312-.32c.069-.14.103-.296.103-.469 0-.185-.034-.357-.103-.514a.83.83 0 0 0-.312-.38c-.143-.1-.33-.149-.56-.149h-1.071v5.494h-1.637v-6.75h2.709c.544 0 1.011.099 1.403.297.394.198.697.47.909.816a2.2 2.2 0 0 1 .317 1.177c0 .436-.106.816-.317 1.14a2.105 2.105 0 0 1-.91.76c-.39.18-.858.27-1.402.27Zm5.248-4.46v6.75h-1.631v-6.75h1.631Z"/><defs><linearGradient id="svg_cda5e68c87__svg_c81fdf6630__a" x1="25.994" x2="25.994" y1="13.74" y2="42.45" gradientUnits="userSpaceOnUse"><stop stopColor="#C16DFF"/><stop offset="1" stopColor="#B044FF"/></linearGradient></defs></svg>;
}

const IconOverviewAPI = React.forwardRef(IconOverviewAPIComponent);
export default IconOverviewAPI;
