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

function IconMermaidCopyComponent(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-mermaid-copy${loadingKls} ${className}`} width={width} height={height} xmlns="http://www.w3.org/2000/svg" fill={useCurrentColor ? 'currentColor' : '#000'} viewBox="0 0 16 16" {...rest} ref={ref}><path fillRule="evenodd" d="M10.4 4.4a.6.6 0 0 1 .6.6v8.467c0 .294-.25.533-.56.533H3.16a.547.547 0 0 1-.56-.533V4.933c0-.294.25-.533.56-.533h7.24Zm-.6 1.2h-6v7.2h6V5.6Zm3-3.6a.6.6 0 0 1 .6.6v7.5a.3.3 0 0 1-.3.3h-.6a.3.3 0 0 1-.3-.3V3.2H6.5a.3.3 0 0 1-.3-.3v-.6a.3.3 0 0 1 .3-.3h6.3Z" clipRule="evenodd"/><path d="M9.8 5.6h.05v-.05H9.8v.05Zm-6 0v-.05h-.05v.05h.05Zm0 7.2h-.05v.05h.05v-.05Zm6 0v.05h.05v-.05H9.8Zm2.4-9.6h.05v-.05h-.05v.05Zm-1.8 1.2v.05a.55.55 0 0 1 .55.55h.1a.65.65 0 0 0-.65-.65v.05Zm.6.6h-.05v8.467h.1V5H11Zm0 8.467h-.05a.497.497 0 0 1-.51.483v.1c.335 0 .61-.259.61-.583H11Zm-.56.533v-.05H3.16v.1h7.28V14Zm-7.28 0v-.05a.497.497 0 0 1-.51-.483h-.1c0 .324.275.583.61.583V14Zm-.56-.533h.05V4.933h-.1v8.534h.05Zm0-8.534h.05c0-.264.226-.483.51-.483v-.1a.597.597 0 0 0-.61.583h.05Zm.56-.533v.05h7.24v-.1H3.16v.05ZM9.8 5.6v-.05h-6v.1h6V5.6Zm-6 0h-.05v7.2h.1V5.6H3.8Zm0 7.2v.05h6v-.1h-6v.05Zm6 0h.05V5.6h-.1v7.2h.05Zm3-10.8v.05a.55.55 0 0 1 .55.55h.1a.65.65 0 0 0-.65-.65V2Zm.6.6h-.05v7.5h.1V2.6h-.05Zm0 7.5h-.05a.25.25 0 0 1-.25.25v.1a.35.35 0 0 0 .35-.35h-.05Zm-.3.3v-.05h-.6v.1h.6v-.05Zm-.6 0v-.05a.25.25 0 0 1-.25-.25h-.1c0 .193.157.35.35.35v-.05Zm-.3-.3h.05V3.2h-.1v6.9h.05Zm0-6.9v-.05H6.5v.1h5.7V3.2Zm-5.7 0v-.05a.25.25 0 0 1-.25-.25h-.1c0 .193.157.35.35.35V3.2Zm-.3-.3h.05v-.6h-.1v.6h.05Zm0-.6h.05a.25.25 0 0 1 .25-.25v-.1a.35.35 0 0 0-.35.35h.05Zm.3-.3v.05h6.3v-.1H6.5V2Z"/></svg>;
}

const IconMermaidCopy = React.forwardRef(IconMermaidCopyComponent);
export default IconMermaidCopy;
