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

function IconArrowFallComponent(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-arrow-fall${loadingKls} ${className}`} width={width} height={height} viewBox="0 0 48 48" fill={useCurrentColor ? 'currentColor' : '#000'} xmlns="http://www.w3.org/2000/svg" {...rest} ref={ref}><path fillRule="evenodd" clipRule="evenodd" d="M20 28V4a1 1 0 011-1h6a1 1 0 011 1v24h7.5c.063 0 .123.01.183.018l.028.005c.081.012.141.028.2.046a.756.756 0 01.192.071l.025.012.042.019c.035.015.069.03.102.05.376.234.614.623.694 1.049a1.918 1.918 0 01.031.307l.003.03a.422.422 0 01-.005.056l-.004.042-.002.02a1.653 1.653 0 01-.292.841L25.44 44.011c-.298.557-.882 1.082-1.439.975-.557.107-1.14-.418-1.44-.975L11.303 30.566a1.66 1.66 0 01-.291-.84l-.002-.02c0-.015-.003-.03-.004-.043a.422.422 0 01-.005-.055l.003-.03.002-.028c.002-.08.01-.159.023-.238.086-.468.324-.857.7-1.09.033-.021.068-.036.102-.051l.042-.02.024-.011a.756.756 0 01.192-.071c.06-.018.12-.034.182-.045l.046-.006A1.27 1.27 0 0112.5 28H20z"/></svg>;
}

const IconArrowFall = React.forwardRef(IconArrowFallComponent);
export default IconArrowFall;
