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

function IconAscentComponent(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-ascent${loadingKls} ${className}`} width={width} height={height} viewBox="0 0 24 24" fill={useCurrentColor ? 'currentColor' : '#000'} xmlns="http://www.w3.org/2000/svg" {...rest} ref={ref}><path d="M10.2421 3.21744C10.2421 3.21744 8.32912 3.13043 7.10932 4.70705C5.88898 6.28354 6.80547 8.69156 7.38408 9.93372C7.96269 11.1759 11.0156 16.0504 11.1277 16.1576C11.239 16.265 11.3731 16.2198 11.3805 16.1233C11.3878 16.0278 11.7291 9.04084 11.4545 7.31792C11.1797 5.59527 10.3665 3.40656 10.2421 3.21744ZM3.63096 6.46552C3.41234 6.48885 1.84313 8.0538 1.70163 9.58376C1.55959 11.1136 2.21436 12.1318 4.04296 13.3499C5.88335 14.6551 10.2576 17.056 10.3379 16.8491C10.4185 16.6429 8.64299 13.4881 7.19002 11.1937C5.73705 8.89934 3.84862 6.44219 3.63096 6.46552ZM4.21917 20.578C5.543 21.1697 7.60517 19.8406 8.17582 19.454C8.70626 19.0487 9.68629 18.3036 9.68629 18.3036L2.18527 18.5043C2.18527 18.5043 2.89535 19.986 4.21917 20.578ZM4.40761 14.5165C3.06512 13.8444 0.303288 12.3006 0.195142 12.3302C0.0871339 12.3597 -0.32898 14.2801 0.534813 15.7275C1.39847 17.1749 3.08063 17.6175 3.8526 17.7359C4.72051 17.8595 9.82353 17.8042 9.78936 17.7015C9.7593 17.6121 5.75092 15.1878 4.40761 14.5165ZM16.8526 4.70705C15.6331 3.13043 13.7199 3.21744 13.7199 3.21744C13.5957 3.40642 12.7822 5.59514 12.5075 7.31805C12.2328 9.04084 12.5749 16.0278 12.5823 16.1234C12.5896 16.2198 12.7229 16.265 12.8349 16.1577C12.9462 16.0504 16 11.1759 16.5788 9.93386C17.1564 8.69156 18.0731 6.28354 16.8526 4.70705ZM23.7668 12.3302C23.6588 12.3006 20.8968 13.8445 19.5544 14.5165C18.212 15.1877 14.2027 17.6121 14.1734 17.7017C14.1385 17.8042 19.2415 17.8595 20.1094 17.7359C20.8813 17.6175 22.5634 17.1749 23.4272 15.7275C24.2918 14.2801 23.8748 12.3596 23.7668 12.3302ZM15.7865 19.454C16.3569 19.8406 18.4199 21.1697 19.7437 20.578C21.0675 19.9859 21.7777 18.5043 21.7777 18.5043L14.2767 18.3036C14.2767 18.3036 15.2566 19.0488 15.7864 19.454H15.7865ZM22.2612 9.58376C22.1191 8.0538 20.5498 6.48898 20.332 6.46552C20.1136 6.44219 18.225 8.89934 16.772 11.1937C15.3191 13.4881 13.5437 16.643 13.6241 16.8491C13.7046 17.056 18.0795 14.6549 19.9194 13.3499C21.7477 12.1318 22.4034 11.1136 22.2612 9.58376Z"/></svg>;
}

const IconAscent = React.forwardRef(IconAscentComponent);
export default IconAscent;
