import React, { useMemo } from 'react'; import { Box, Link } from '@chakra-ui/react'; import ReactMarkdown from 'react-markdown'; import RemarkGfm from 'remark-gfm'; import RemarkMath from 'remark-math'; import RehypeKatex from 'rehype-katex'; import RemarkBreaks from 'remark-breaks'; import { event } from '@/utils/plugin/eventbus'; import 'katex/dist/katex.min.css'; import styles from '../index.module.scss'; import Image from '../img/Image'; function MyLink(e: any) { const href = e.href; const text = String(e.children); return !!href ? ( {text} ) : ( { event.emit('guideClick', { text }); }} > {text} ); } const Guide = ({ text }: { text: string }) => { const formatText = useMemo( () => text.replace(/\[(.*?)\]($|\n)/g, '[$1]()\n').replace(/\\n/g, '\n '), [text] ); return ( {formatText} ); }; export default React.memo(Guide);