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

function IconSsoComponent(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-sso${loadingKls} ${className}`} width={width} height={height} xmlns="http://www.w3.org/2000/svg" fill={useCurrentColor ? 'currentColor' : 'none'} viewBox="0 0 26 24" {...rest} ref={ref}><g><path fill={useCurrentColor ? 'currentColor' : '#1664FF'} fillRule="evenodd" d="M11.917.181a1.041 1.041 0 0 0-1.18.003l-.572.397c-.305.202-.618.39-.938.566a20.63 20.63 0 0 1-2.586 1.21c-.896.339-1.828.576-2.777.708-.403.059-.81.098-1.216.119l-.973.015a1.01 1.01 0 0 0-1.007 1v9.246C.667 18.264 6.978 24 11.332 24c4.353 0 10.66-5.728 10.667-10.544v-.03l.001-.19-.003-9.037a1.011 1.011 0 0 0-1.006-.999l-.956-.015c-.413-.02-.824-.06-1.232-.118-.95-.132-1.883-.37-2.78-.708a20.48 20.48 0 0 1-2.586-1.208 15.213 15.213 0 0 1-.706-.418l-.067-.04-.057-.04-.04-.026-.011-.007.036.024s-.007.001.03.036a1.02 1.02 0 0 0-.129-.101L11.917.18Z" clipRule="evenodd"/><path fill={useCurrentColor ? 'currentColor' : '#fff'} d="M11.333 10.667a2.667 2.667 0 1 0 0-5.334 2.667 2.667 0 0 0 0 5.334ZM6 16.513A4.513 4.513 0 0 1 10.513 12h1.64a4.514 4.514 0 0 1 4.514 4.513.82.82 0 0 1-.82.82H6.82a.82.82 0 0 1-.82-.82Z"/><path fill={useCurrentColor ? 'currentColor' : '#00CDE9'} d="M19.333 24a6 6 0 1 0 0-12 6 6 0 0 0 0 12Z"/><path fill={useCurrentColor ? 'currentColor' : '#fff'} d="M18.223 14.667h3.636l-2.223 2.8h3.03l-4.847 5.2 1.009-3.8H16l2.223-4.2Z"/><path fill={useCurrentColor ? 'currentColor' : '#fff'} fillRule="evenodd" d="M18.105 14.604a.133.133 0 0 1 .117-.07h3.636a.133.133 0 0 1 .105.216l-2.051 2.583h2.755a.133.133 0 0 1 .097.225l-4.848 5.2a.133.133 0 0 1-.226-.126L18.654 19H16a.133.133 0 0 1-.118-.196l2.223-4.2Zm.198.196-2.082 3.933h2.607a.133.133 0 0 1 .129.168l-.873 3.285L22.36 17.6h-2.724a.133.133 0 0 1-.104-.216l2.05-2.584h-3.28Z" clipRule="evenodd"/></g></svg>;
}

const IconSso = React.forwardRef(IconSsoComponent);
export default IconSso;
