import { Badge } from "@/components/bs-ui/badge"; import { InfoCircledIcon } from "@radix-ui/react-icons"; import { useTranslation } from "react-i18next"; const enum SourceType { /** 无溯源 */ NONE = 0, /** 文件 */ FILE = 1, /** 无权限 */ NO_PERMISSION = 2, /** 链接s */ LINK = 3, /** 已命中的QA */ HAS_QA = 4, } export default function SourceEntry({ extra, end, source, className = '', onSource }) { const { t } = useTranslation() if (source === SourceType.NONE || !end) return
const extraObj = extra ? JSON.parse(extra) : null return
{(() => { switch (source) { case SourceType.FILE: return {t('chat.source')}; case SourceType.NO_PERMISSION: return

{t('chat.noAccess')}

; case SourceType.LINK: return (
{ extraObj.doc?.map(el => {el.title}) }
); case SourceType.HAS_QA: return {extraObj.qa}; default: return null; } })()}
};