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

function IconCirclePointComponent(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-circle-point${loadingKls} ${className}`} width={width} height={height} viewBox="0 0 24 24" fill={useCurrentColor ? 'currentColor' : '#000'} xmlns="http://www.w3.org/2000/svg" {...rest} ref={ref}><path fillRule="evenodd" clipRule="evenodd" d="M10.84 4.00012C10.84 3.38156 11.3414 2.88012 11.96 2.88012C12.5786 2.88012 13.08 3.38156 13.08 4.00012C13.08 4.61868 12.5786 5.12012 11.96 5.12012C11.3414 5.12012 10.84 4.61868 10.84 4.00012ZM11.96 1.12012C10.3694 1.12012 9.08 2.40954 9.08 4.00012C9.08 5.28379 9.91983 6.37131 11.08 6.7432L11.08 9.25704C10.6691 9.38875 10.2984 9.61022 9.99095 9.89839L7.87945 8.67931C7.9321 8.46153 7.96 8.23408 7.96 8.00012C7.96 6.40954 6.67058 5.12012 5.08 5.12012C3.48942 5.12012 2.2 6.40954 2.2 8.00012C2.2 9.5907 3.48942 10.8801 5.08 10.8801C5.79886 10.8801 6.45622 10.6167 6.96082 10.1812L9.13512 11.4365C9.09896 11.6188 9.08 11.8072 9.08 12.0001C9.08 12.1982 9.1 12.3917 9.1381 12.5785L6.97227 13.829C6.46618 13.3875 5.80431 13.1201 5.08 13.1201C3.48942 13.1201 2.2 14.4095 2.2 16.0001C2.2 17.5907 3.48942 18.8801 5.08 18.8801C6.67058 18.8801 7.96 17.5907 7.96 16.0001C7.96 15.7714 7.93332 15.5488 7.88292 15.3355L10.0019 14.1121C10.3072 14.3952 10.674 14.613 11.08 14.7432L11.08 17.257C9.91983 17.6289 9.08 18.7164 9.08 20.0001C9.08 21.5907 10.3694 22.8801 11.96 22.8801C13.5506 22.8801 14.84 21.5907 14.84 20.0001C14.84 18.7165 14.0002 17.6289 12.84 17.257L12.84 14.7432C13.2596 14.6087 13.6373 14.3806 13.9485 14.0834L16.1171 15.3355C16.0667 15.5488 16.04 15.7714 16.04 16.0001C16.04 17.5907 17.3294 18.8801 18.92 18.8801C20.5106 18.8801 21.8 17.5907 21.8 16.0001C21.8 14.4095 20.5106 13.1201 18.92 13.1201C18.1957 13.1201 17.5338 13.3875 17.0277 13.8289L14.79 12.537C14.8228 12.3631 14.84 12.1836 14.84 12.0001C14.84 11.8395 14.8269 11.682 14.8016 11.5285L17.0781 10.2142C17.5774 10.63 18.2195 10.8801 18.92 10.8801C20.5106 10.8801 21.8 9.5907 21.8 8.00012C21.8 6.40954 20.5106 5.12012 18.92 5.12012C17.3294 5.12012 16.04 6.40954 16.04 8.00012C16.04 8.25147 16.0722 8.49531 16.1327 8.72772L13.9948 9.96202C13.6751 9.64277 13.2807 9.39829 12.84 9.25704L12.84 6.74319C14.0002 6.37129 14.84 5.28378 14.84 4.00012C14.84 2.40954 13.5506 1.12012 11.96 1.12012ZM5.08 6.88012C4.46144 6.88012 3.96 7.38156 3.96 8.00012C3.96 8.61868 4.46144 9.12012 5.08 9.12012C5.69856 9.12012 6.2 8.61868 6.2 8.00012C6.2 7.38156 5.69856 6.88012 5.08 6.88012ZM18.92 6.88012C18.3015 6.88012 17.8 7.38156 17.8 8.00012C17.8 8.61868 18.3015 9.12012 18.92 9.12012C19.5386 9.12012 20.04 8.61868 20.04 8.00012C20.04 7.38156 19.5386 6.88012 18.92 6.88012ZM17.8 16.0001C17.8 15.3816 18.3015 14.8801 18.92 14.8801C19.5386 14.8801 20.04 15.3816 20.04 16.0001C20.04 16.6187 19.5386 17.1201 18.92 17.1201C18.3015 17.1201 17.8 16.6187 17.8 16.0001ZM5.08 14.8801C4.46144 14.8801 3.96 15.3816 3.96 16.0001C3.96 16.6187 4.46144 17.1201 5.08 17.1201C5.69856 17.1201 6.2 16.6187 6.2 16.0001C6.2 15.3816 5.69856 14.8801 5.08 14.8801ZM10.84 20.0001C10.84 19.3816 11.3414 18.8801 11.96 18.8801C12.5786 18.8801 13.08 19.3816 13.08 20.0001C13.08 20.6187 12.5786 21.1201 11.96 21.1201C11.3414 21.1201 10.84 20.6187 10.84 20.0001ZM11.96 10.8801C11.3414 10.8801 10.84 11.3816 10.84 12.0001C10.84 12.6187 11.3414 13.1201 11.96 13.1201C12.5786 13.1201 13.08 12.6187 13.08 12.0001C13.08 11.3816 12.5786 10.8801 11.96 10.8801Z"/></svg>;
}

const IconCirclePoint = React.forwardRef(IconCirclePointComponent);
export default IconCirclePoint;
