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

function IconVoiceOpenComponent(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-voice-open${loadingKls} ${className}`} width={width} height={height} xmlns="http://www.w3.org/2000/svg" fill={useCurrentColor ? 'currentColor' : '#000'} viewBox="0 0 24 24" {...rest} ref={ref}><path fillRule="evenodd" d="M11.84 3h.66a1 1 0 0 1 .997.925L13.5 4v16a1 1 0 0 1-.925.997L12.5 21h-.66a.999.999 0 0 1-.532-.154l-.078-.053L5.39 16.3a.998.998 0 0 1-.386-.708L5 15.507V8.494a1 1 0 0 1 .326-.739L5.39 7.7l5.84-4.492a.998.998 0 0 1 .515-.204L11.84 3Zm-.34 2.524L7 8.985v6.03l4.5 3.462V5.523Zm8.46.21A8.97 8.97 0 0 1 22.5 12a8.972 8.972 0 0 1-2.554 6.281.48.48 0 0 1-.684-.005l-.704-.703a.53.53 0 0 1 .006-.74A6.974 6.974 0 0 0 20.5 12a6.974 6.974 0 0 0-1.924-4.82.53.53 0 0 1-.004-.738l.704-.704a.48.48 0 0 1 .684-.004ZM3 8a.5.5 0 0 1 .5.5v7a.5.5 0 0 1-.5.5H2a.5.5 0 0 1-.5-.5v-7A.5.5 0 0 1 2 8h1Zm14.122.553A4.984 4.984 0 0 1 18.5 12c0 1.344-.53 2.565-1.393 3.463a.466.466 0 0 1-.666-.008l-.693-.694c-.212-.211-.188-.56.01-.786A2.987 2.987 0 0 0 16.5 12a2.99 2.99 0 0 0-.732-1.963c-.195-.226-.219-.573-.008-.784l.694-.693a.465.465 0 0 1 .668-.008Z" clipRule="evenodd"/></svg>;
}

const IconVoiceOpen = React.forwardRef(IconVoiceOpenComponent);
export default IconVoiceOpen;
