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

function IconWfMemoryComponent(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-wf_memory${loadingKls} ${className}`} width={width} height={height} xmlns="http://www.w3.org/2000/svg" fill={useCurrentColor ? 'currentColor' : 'none'} viewBox="0 0 20 20" {...rest} ref={ref}><rect width="20" height="20" fill={useCurrentColor ? 'currentColor' : '#A99DA9'} rx="6"/><g clipPath="url(#svg_b50f6a020c__clip0_29875_1200068)" fillRule="evenodd" clipRule="evenodd"><path fill={useCurrentColor ? 'currentColor' : '#fff'} d="M8.72318 16.3911C8.44445 16.3911 8.08891 16.3124 7.99446 16.0044C7.73219 15.1491 7.35439 14.5696 6.896 14.2057C6.61624 13.9837 6.24389 13.9327 5.68755 13.8634C5.43875 13.8324 5.13645 13.7935 4.85826 13.7006C4.56685 13.6033 4.2631 13.4348 4.03807 13.1209C3.80987 12.8025 3.75643 12.4422 3.77609 12.1206C3.79541 11.8045 3.88683 11.4897 3.99093 11.2106C4.09615 10.9284 4.22693 10.6505 4.34259 10.4092C4.35747 10.3781 4.37199 10.3479 4.38616 10.3184C4.48139 10.1202 4.56016 9.9562 4.61732 9.81535C4.58645 9.78165 4.52533 9.73015 4.41656 9.66235C4.35368 9.62315 4.28758 9.58601 4.21526 9.54582C4.20955 9.54265 4.20372 9.53941 4.19777 9.53611C4.1351 9.50132 4.06011 9.4597 3.99549 9.41911C3.93913 9.3837 3.81734 9.30581 3.72529 9.18695C3.67445 9.1213 3.60049 9.00262 3.58584 8.83793C3.56958 8.65514 3.63319 8.49744 3.72144 8.38482C3.81681 8.26312 3.96409 8.16214 4.06145 8.0977C4.18416 8.01649 4.34302 7.92127 4.53308 7.81347C4.86677 7.62421 5.31842 7.3839 5.88524 7.09353C6.1283 6.03983 6.62534 5.17226 7.40757 4.55978C8.25495 3.89629 9.37161 3.58337 10.6995 3.58337C12.7269 3.58337 14.1744 4.46195 15.1017 5.63057C16.0131 6.77919 16.4167 8.19828 16.4167 9.32304C16.4167 11.4874 14.712 13.7186 12.2743 14.41C12.3982 14.6523 12.6462 14.9933 13.0526 15.4414C13.122 15.518 13.1673 15.6079 13.189 15.7019C13.2795 16.0949 12.7994 16.3025 12.3977 16.338C11.7973 16.3911 11.0766 16.3911 8.72318 16.3911Z" opacity=".8"/><path fill={useCurrentColor ? 'currentColor' : '#A99DA9'} d="M11.3169 10.117C11.6819 9.89052 12.1614 10.0028 12.3879 10.3678C12.6144 10.7327 12.5022 11.2122 12.1372 11.4387C12.0282 11.5064 11.9345 11.5526 11.867 11.5857L11.861 11.5887C11.7954 11.6208 11.7613 11.6377 11.7217 11.6612C11.6544 11.7012 11.5351 11.7828 11.3008 12.0127C10.9094 12.5642 10.8026 12.8031 10.7629 13.0028C10.6791 13.4241 10.2697 13.6977 9.84837 13.6139C9.42706 13.5301 9.15346 13.1207 9.23726 12.6994C9.34827 12.1412 9.63895 11.6609 10.074 11.0539L10.1111 11.0021L10.1562 10.957C10.4756 10.6377 10.7076 10.4545 10.9267 10.3242C11.0227 10.2671 11.1082 10.2252 11.1674 10.1963L11.182 10.1891M11.3169 10.117C11.2777 10.1414 11.2427 10.1593 11.182 10.1891L11.3169 10.117Z" opacity=".7"/><path fill={useCurrentColor ? 'currentColor' : '#A99DA9'} d="M10.4542 5.28518C10.2123 5.21668 9.96141 5.20728 9.70064 5.23069C8.84819 5.3074 8.03953 5.62915 7.70669 6.40526L7.69866 6.42492L7.69565 6.43285C7.51575 6.90725 7.43939 7.36589 7.46562 7.7776C7.49094 8.17507 7.61796 8.59707 7.92659 8.91862C8.16922 9.17139 8.44603 9.40243 8.81797 9.59461C8.98826 9.68259 9.1701 9.75811 9.36672 9.82374C9.38936 10.2199 9.5283 10.5657 9.74494 10.8458C9.91085 11.0604 10.1151 11.2266 10.3267 11.3423C10.5212 11.4487 10.7848 11.546 11.0732 11.5433C11.5191 11.5391 11.9597 11.4657 12.3419 11.2702C12.4938 11.1925 12.6299 11.0988 12.7488 10.9902C13.185 11.0633 13.6088 11.0364 13.9891 10.8953C14.575 10.6779 14.9519 10.226 15.0606 9.70754C15.2009 9.03819 15.0807 8.38852 14.8901 7.90401C14.7946 7.6612 14.6711 7.4333 14.5275 7.24846C14.4567 7.1572 14.3654 7.05625 14.2515 6.96827C14.154 6.89293 13.9488 6.75551 13.6568 6.73128C13.5842 6.72526 13.4992 6.71519 13.421 6.70106C13.3461 6.5075 13.215 6.35745 13.0979 6.25528C12.9108 6.092 12.6852 5.98057 12.4897 5.9036C12.0917 5.74686 11.6071 5.65121 11.1665 5.61465C11.1152 5.6104 11.0849 5.60445 11.0695 5.60072C11.0619 5.59887 11.0575 5.59745 11.0557 5.59683L11.0535 5.59603C11.0528 5.59572 11.0519 5.59536 11.0472 5.59234C11.0432 5.58982 11.0371 5.58587 11.0272 5.57909C11.0171 5.57211 11.0052 5.56378 10.989 5.55245L10.9608 5.53269C10.87 5.46934 10.7024 5.35547 10.4542 5.28518Z"/></g><defs><clipPath id="svg_b50f6a020c__clip0_29875_1200068"><path fill={useCurrentColor ? 'currentColor' : '#fff'} transform="translate(3 3)" d="M0 0H14V14H0z"/></clipPath></defs></svg>;
}

const IconWfMemory = React.forwardRef(IconWfMemoryComponent);
export default IconWfMemory;
