import { eventBus, EventNameEnum } from '@/web/common/utils/eventbus'; import { Button, Link, Popover, PopoverTrigger, PopoverContent, PopoverHeader, PopoverBody, PopoverArrow, PopoverCloseButton } from '@chakra-ui/react'; import MyIcon from '@fastgpt/web/components/common/Icon'; import MyTooltip from '@fastgpt/web/components/common/MyTooltip'; import { useRequest2 } from '@fastgpt/web/hooks/useRequest'; import { useTranslation } from 'next-i18next'; import React, { useMemo } from 'react'; import { getQuoteData } from '@/web/core/dataset/api'; import MyBox from '@fastgpt/web/components/common/MyBox'; import RawSourceBox from '../core/dataset/RawSourceBox'; import { getCollectionSourceData } from '@fastgpt/global/core/dataset/collection/utils'; import Markdown from '.'; const A = ({ children, ...props }: any) => { const { t } = useTranslation(); const { data: quoteData, loading, runAsync } = useRequest2(getQuoteData, { manual: true }); // empty href link if (!props.href && typeof children?.[0] === 'string') { const text = useMemo(() => String(children), [children]); return ( ); } // Quote if (props.href === 'QUOTE' && typeof children?.[0] === 'string') { return ( runAsync(String(children))} > {quoteData?.collection && ( )} ); } return {children}; }; export default A;