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

function IconSmoothUpdateComponent(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-Smooth_update${loadingKls} ${className}`} width={width} height={height} viewBox="0 0 32 32" fill={useCurrentColor ? 'currentColor' : '#000'} xmlns="http://www.w3.org/2000/svg" {...rest} ref={ref}><path opacity=".5" fillRule="evenodd" clipRule="evenodd" d="M26.2933 10.6472V25.7162C26.2933 26.8207 25.3978 27.7162 24.2933 27.7162H7.7063C6.60173 27.7162 5.7063 26.8207 5.7063 25.7162V6.28387C5.7063 5.1793 6.60173 4.28387 7.7063 4.28387H20.2719C20.8307 4.28387 21.3639 4.51761 21.7426 4.92847L25.764 9.29184C26.1043 9.66115 26.2933 10.145 26.2933 10.6472ZM16.0125 14.4883C16.0125 15.4416 15.2397 16.2144 14.2863 16.2144C14.2374 16.2144 14.189 16.2124 14.1412 16.2084C13.6889 16.1707 13.1886 16.2014 12.8677 16.5223C12.5468 16.8432 12.5161 17.3435 12.5538 17.7957C12.5578 17.8436 12.5598 17.892 12.5598 17.9409C12.5598 17.9739 12.5589 18.0066 12.5571 18.0391C12.5312 18.5001 12.5667 19.0076 12.8932 19.3341C13.2197 19.6605 13.7272 19.696 14.1882 19.6702C14.2207 19.6684 14.2534 19.6674 14.2863 19.6674C15.2397 19.6674 16.0125 20.4403 16.0125 21.3936C16.0125 22.3469 15.2397 23.1198 14.2863 23.1198C13.333 23.1198 12.5602 22.3469 12.5602 21.3936C12.5602 21.3486 12.5619 21.3039 12.5653 21.2598C12.6001 20.8054 12.5683 20.3034 12.2461 19.9812C11.9238 19.6589 11.4219 19.6271 10.9675 19.662C10.9233 19.6654 10.8787 19.6671 10.8337 19.6671C9.88033 19.6671 9.1075 18.8943 9.1075 17.9409C9.1075 16.9876 9.88033 16.2148 10.8337 16.2148C10.8627 16.2148 10.8915 16.2155 10.9201 16.2169C11.3833 16.2398 11.8927 16.2031 12.2206 15.8751C12.5485 15.5473 12.5852 15.0379 12.5623 14.5748C12.5609 14.5461 12.5602 14.5173 12.5602 14.4883C12.5602 13.5349 13.333 12.7621 14.2863 12.7621C15.2397 12.7621 16.0125 13.5349 16.0125 14.4883ZM15.9873 24.8214C15.9873 23.8681 16.7601 23.0953 17.7134 23.0953C17.7623 23.0953 17.8107 23.0973 17.8586 23.1013C18.3109 23.139 18.8112 23.1083 19.1321 22.7874C19.453 22.4665 19.4836 21.9662 19.4459 21.514C19.442 21.4661 19.4399 21.4177 19.4399 21.3688C19.4399 21.3358 19.4408 21.3031 19.4427 21.2706C19.4685 20.8096 19.433 20.3021 19.1065 19.9756C18.78 19.6492 18.2725 19.6137 17.8116 19.6395C17.7791 19.6413 17.7464 19.6423 17.7134 19.6423C16.7601 19.6423 15.9873 18.8694 15.9873 17.9161C15.9873 16.9628 16.7601 16.1899 17.7134 16.1899C18.6667 16.1899 19.4396 16.9628 19.4396 17.9161C19.4396 17.9611 19.4378 18.0058 19.4345 18.0499C19.3996 18.5043 19.4314 19.0063 19.7537 19.3285C20.0759 19.6508 20.5779 19.6826 21.0323 19.6477C21.0764 19.6443 21.121 19.6426 21.1661 19.6426C22.1194 19.6426 22.8922 20.4154 22.8922 21.3688C22.8922 22.3221 22.1194 23.0949 21.1661 23.0949C21.1371 23.0949 21.1083 23.0942 21.0796 23.0928C20.6164 23.07 20.1071 23.1066 19.7792 23.4346C19.4513 23.7625 19.4146 24.2718 19.4374 24.735C19.4389 24.7636 19.4396 24.7924 19.4396 24.8214C19.4396 25.7748 18.6667 26.5476 17.7134 26.5476C16.7601 26.5476 15.9873 25.7748 15.9873 24.8214Z"/><path fillRule="evenodd" clipRule="evenodd" d="M28.6658 12.5619C28.6658 11.4574 27.7703 10.5619 26.6658 10.5619L16.0458 10.5619L13.1826 8.19953C12.8243 7.90389 12.3743 7.74219 11.9098 7.74219H5.33325C4.22868 7.74219 3.33325 8.63762 3.33325 9.74218V26.6491C3.33325 27.7537 4.22868 28.6491 5.33325 28.6491H26.6658C27.7703 28.6491 28.6658 27.7537 28.6658 26.6491V12.5619ZM16.0126 14.4882C16.0126 15.4416 15.2398 16.2144 14.2865 16.2144C14.2376 16.2144 14.1892 16.2124 14.1413 16.2084C13.689 16.1707 13.1887 16.2014 12.8678 16.5223C12.5469 16.8432 12.5163 17.3435 12.5539 17.7957C12.5579 17.8436 12.56 17.892 12.56 17.9409C12.56 17.9738 12.559 18.0066 12.5572 18.039C12.5314 18.5 12.5669 19.0076 12.8934 19.3341C13.2199 19.6605 13.7274 19.696 14.1883 19.6702C14.2208 19.6683 14.2535 19.6674 14.2865 19.6674C15.2398 19.6674 16.0126 20.4403 16.0126 21.3936C16.0126 22.3469 15.2398 23.1197 14.2865 23.1197C13.3331 23.1197 12.5603 22.3469 12.5603 21.3936C12.5603 21.3486 12.562 21.3039 12.5654 21.2598C12.6003 20.8054 12.5685 20.3034 12.2462 19.9811C11.924 19.6589 11.422 19.6271 10.9676 19.662C10.9235 19.6653 10.8788 19.6671 10.8338 19.6671C9.88048 19.6671 9.10765 18.8942 9.10765 17.9409C9.10765 16.9876 9.88048 16.2148 10.8338 16.2148C10.8628 16.2148 10.8916 16.2155 10.9203 16.2169C11.3835 16.2397 11.8928 16.203 12.2207 15.8751C12.5486 15.5472 12.5853 15.0379 12.5625 14.5747C12.561 14.5461 12.5603 14.5172 12.5603 14.4882C12.5603 13.5349 13.3332 12.7621 14.2865 12.7621C15.2398 12.7621 16.0126 13.5349 16.0126 14.4882ZM15.9874 24.8214C15.9874 23.8681 16.7602 23.0953 17.7136 23.0953C17.7625 23.0953 17.8109 23.0973 17.8587 23.1013C18.311 23.1389 18.8113 23.1083 19.1322 22.7874C19.4531 22.4665 19.4838 21.9662 19.4461 21.5139C19.4421 21.4661 19.4401 21.4177 19.4401 21.3688C19.4401 21.3358 19.441 21.3031 19.4428 21.2706C19.4687 20.8096 19.4332 20.3021 19.1067 19.9756C18.7802 19.6491 18.2727 19.6137 17.8117 19.6395C17.7792 19.6413 17.7465 19.6422 17.7136 19.6422C16.7602 19.6422 15.9874 18.8694 15.9874 17.9161C15.9874 16.9628 16.7602 16.1899 17.7136 16.1899C18.6669 16.1899 19.4397 16.9628 19.4397 17.9161C19.4397 17.9611 19.438 18.0057 19.4346 18.0499C19.3998 18.5043 19.4316 19.0063 19.7538 19.3285C20.0761 19.6507 20.578 19.6826 21.0324 19.6477C21.0766 19.6443 21.1212 19.6426 21.1662 19.6426C22.1196 19.6426 22.8924 20.4154 22.8924 21.3688C22.8924 22.3221 22.1196 23.0949 21.1662 23.0949C21.1372 23.0949 21.1084 23.0942 21.0798 23.0928C20.6166 23.0699 20.1072 23.1066 19.7793 23.4345C19.4514 23.7624 19.4147 24.2718 19.4376 24.7349C19.439 24.7636 19.4397 24.7924 19.4397 24.8214C19.4397 25.7748 18.6669 26.5476 17.7136 26.5476C16.7602 26.5476 15.9874 25.7748 15.9874 24.8214Z"/><path opacity=".5" fillRule="evenodd" clipRule="evenodd" d="M16.0125 14.4882C16.0125 15.4415 15.2397 16.2144 14.2864 16.2144C14.2375 16.2144 14.1891 16.2123 14.1412 16.2084C13.6889 16.1707 13.1886 16.2013 12.8677 16.5223V16.5223C12.5468 16.8432 12.5162 17.3434 12.5538 17.7957C12.5578 17.8436 12.5599 17.892 12.5599 17.9409C12.5599 17.9738 12.5589 18.0065 12.5571 18.039C12.5313 18.5 12.5668 19.0075 12.8933 19.334V19.334C13.2198 19.6605 13.7273 19.696 14.1882 19.6701C14.2207 19.6683 14.2534 19.6674 14.2864 19.6674C15.2397 19.6674 16.0125 20.4402 16.0125 21.3936C16.0125 22.3469 15.2397 23.1197 14.2864 23.1197C13.333 23.1197 12.5602 22.3469 12.5602 21.3936C12.5602 21.3485 12.5619 21.3039 12.5653 21.2597C12.6002 20.8054 12.5684 20.3033 12.2461 19.9811V19.9811C11.9239 19.6589 11.4219 19.6271 10.9675 19.6619C10.9234 19.6653 10.8787 19.667 10.8337 19.667C9.88038 19.667 9.10755 18.8942 9.10755 17.9409C9.10755 16.9876 9.88038 16.2147 10.8337 16.2147C10.8627 16.2147 10.8915 16.2154 10.9202 16.2169C11.3834 16.2397 11.8927 16.203 12.2206 15.8751V15.8751C12.5485 15.5472 12.5852 15.0379 12.5623 14.5747C12.5609 14.5461 12.5602 14.5172 12.5602 14.4882C12.5602 13.5349 13.333 12.7621 14.2864 12.7621C15.2397 12.7621 16.0125 13.5349 16.0125 14.4882Z"/></svg>;
}

const IconSmoothUpdate = React.forwardRef(IconSmoothUpdateComponent);
export default IconSmoothUpdate;
