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

function IconLogoLightComponent(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 || 'hkgai';
    const loadingKls = spin ? ` ${prefix}-icon-loading` : '';
    return <svg className={`${prefix}-icon ${prefix}-icon-LogoLight${loadingKls} ${className}`} width={width} height={height} viewBox="0 0 521 160" fill="none" xmlns="http://www.w3.org/2000/svg" {...rest} ref={ref}><circle cx="124" cy="70" r="28" fill={useCurrentColor ? 'currentColor' : '#FF7BF9'}/><path fillRule="evenodd" clipRule="evenodd" d="M136.218 109.149C132.359 110.352 128.255 111 124 111C111.594 111 100.475 105.49 92.9562 96.7832C86.2941 101.902 82 109.949 82 119C82 134.464 94.536 147 110 147C125.464 147 138 134.464 138 119C138 115.533 137.37 112.213 136.218 109.149Z" fill={useCurrentColor ? 'currentColor' : '#FF6FF9'}/><path fillRule="evenodd" clipRule="evenodd" d="M74.3402 98.7525C69.3135 93.9497 62.5012 91 55 91C39.536 91 27 103.536 27 119C27 134.464 39.536 147 55 147C62.5012 147 69.3135 144.05 74.3402 139.247C70.9414 133.274 69 126.364 69 119C69 111.636 70.9414 104.726 74.3402 98.7525Z" fill={useCurrentColor ? 'currentColor' : '#FF5AF8'}/><path fillRule="evenodd" clipRule="evenodd" d="M83.4087 69.9825C83.0768 69.9941 82.7435 70 82.4088 70L82.3968 70C81.9882 52.9284 71.1446 38.4412 56 32.6724C59.8422 21.7943 70.2153 14 82.4088 14C94.4054 14 104.64 21.5445 108.626 32.1478C93.8219 38.3276 83.4158 52.9394 83.4087 69.9825Z" fill={useCurrentColor ? 'currentColor' : '#FF90FA'}/><path fillRule="evenodd" clipRule="evenodd" d="M24.4479 91.8169C31.9685 82.7642 43.3111 77 56 77C60.3731 77 64.5863 77.6847 68.5382 78.9526C69.4862 76.1416 70 73.1308 70 70C70 54.536 57.464 42 42 42C26.536 42 14 54.536 14 70C14 78.8183 18.0765 86.6845 24.4479 91.8169Z" fill={useCurrentColor ? 'currentColor' : '#FF52F8'}/><path d="M198.879 126H183.519V38.28H198.879V74.64H237.759V38.28H253.119V126H237.759V88.8H198.879V126ZM341.464 38.28L284.224 111.96V89.04L323.344 38.28H341.464ZM287.824 38.28V126H272.464V38.28H287.824ZM301.744 87.6L311.584 74.4L341.824 126H324.064L301.744 87.6ZM347.217 95.04C347.217 89.28 348.377 84.16 350.697 79.68C353.097 75.12 356.417 71.52 360.657 68.88C364.897 66.24 369.817 64.92 375.417 64.92C380.457 64.92 384.777 66.04 388.377 68.28C391.977 70.44 394.497 73.48 395.937 77.4L394.377 78.72L395.577 66.72H409.137V123C409.137 129.56 407.857 135.24 405.297 140.04C402.817 144.92 399.257 148.64 394.617 151.2C390.057 153.84 384.537 155.16 378.057 155.16C369.577 155.16 362.617 152.88 357.177 148.32C351.737 143.76 348.537 137.52 347.577 129.6H362.217C362.697 133.44 364.297 136.44 367.017 138.6C369.817 140.76 373.497 141.84 378.057 141.84C383.097 141.84 387.097 140.36 390.057 137.4C393.097 134.52 394.617 130.6 394.617 125.64V110.88L396.297 112.44C394.857 116.2 392.217 119.2 388.377 121.44C384.537 123.68 380.097 124.8 375.057 124.8C369.457 124.8 364.577 123.52 360.417 120.96C356.257 118.4 353.017 114.88 350.697 110.4C348.377 105.92 347.217 100.8 347.217 95.04ZM361.977 94.68C361.977 98.04 362.617 101.04 363.897 103.68C365.257 106.24 367.137 108.28 369.537 109.8C371.937 111.32 374.737 112.08 377.937 112.08C381.297 112.08 384.177 111.36 386.577 109.92C389.057 108.4 390.937 106.36 392.217 103.8C393.577 101.16 394.257 98.12 394.257 94.68C394.257 91.24 393.617 88.28 392.337 85.8C391.057 83.24 389.177 81.24 386.697 79.8C384.297 78.36 381.377 77.64 377.937 77.64C374.657 77.64 371.817 78.4 369.417 79.92C367.017 81.36 365.177 83.36 363.897 85.92C362.617 88.48 361.977 91.4 361.977 94.68ZM441.928 127.56C435.688 127.56 430.728 125.88 427.048 122.52C423.448 119.08 421.648 114.6 421.648 109.08C421.648 103.64 423.528 99.32 427.288 96.12C431.128 92.84 436.568 90.92 443.608 90.36L461.368 88.92V87.6C461.368 84.88 460.848 82.72 459.808 81.12C458.848 79.44 457.448 78.24 455.608 77.52C453.768 76.72 451.608 76.32 449.128 76.32C444.808 76.32 441.488 77.2 439.168 78.96C436.848 80.64 435.688 83.04 435.688 86.16H423.208C423.208 81.84 424.288 78.12 426.448 75C428.688 71.8 431.808 69.32 435.808 67.56C439.888 65.8 444.568 64.92 449.848 64.92C455.208 64.92 459.808 65.88 463.648 67.8C467.488 69.64 470.448 72.44 472.528 76.2C474.608 79.88 475.648 84.48 475.648 90V126H462.808L461.728 117.24C460.448 120.28 457.968 122.76 454.288 124.68C450.688 126.6 446.568 127.56 441.928 127.56ZM446.608 116.52C451.168 116.52 454.768 115.24 457.408 112.68C460.128 110.12 461.488 106.56 461.488 102V98.88L449.128 99.84C444.568 100.24 441.328 101.2 439.408 102.72C437.488 104.16 436.528 106.08 436.528 108.48C436.528 111.12 437.408 113.12 439.168 114.48C440.928 115.84 443.408 116.52 446.608 116.52ZM490.031 126V66.72H504.671V126H490.031ZM497.231 54.84C494.751 54.84 492.631 54 490.871 52.32C489.191 50.56 488.351 48.44 488.351 45.96C488.351 43.48 489.191 41.4 490.871 39.72C492.631 38.04 494.751 37.2 497.231 37.2C499.711 37.2 501.791 38.04 503.471 39.72C505.231 41.4 506.111 43.48 506.111 45.96C506.111 48.44 505.231 50.56 503.471 52.32C501.791 54 499.711 54.84 497.231 54.84Z" fill={useCurrentColor ? 'currentColor' : '#1B2559'}/></svg>;
}

const IconLogoLight = React.forwardRef(IconLogoLightComponent);
export default IconLogoLight;
