@ai-group/chat-sdk 2.1.5 → 2.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/XAdkChatbot/components/MarkdownRender/index.js +7 -5
- package/dist/cjs/components/XAdkChatbot/components/MarkdownRender/index.js.map +3 -3
- package/dist/cjs/components/XAdkChatbot/components/MarkdownRender/styles.d.ts +38 -0
- package/dist/cjs/components/XAdkChatbot/components/MarkdownRender/styles.js +51 -0
- package/dist/cjs/components/XAdkChatbot/components/MarkdownRender/styles.js.map +7 -0
- package/dist/cjs/components/XAdkWebProvider/XAdkWebProvider.stories.js +13 -7
- package/dist/cjs/components/XAdkWebProvider/XAdkWebProvider.stories.js.map +2 -2
- package/dist/cjs/components/XAdkWebProvider/index.js +19 -2
- package/dist/cjs/components/XAdkWebProvider/index.js.map +2 -2
- package/dist/cjs/hooks/useADKChat.js +4 -0
- package/dist/cjs/hooks/useADKChat.js.map +2 -2
- package/dist/cjs/services/api.js +2 -1
- package/dist/cjs/services/api.js.map +2 -2
- package/dist/cjs/types/XAdkProvider.d.ts +39 -0
- package/dist/cjs/types/XAdkProvider.js +16 -0
- package/dist/cjs/types/XAdkProvider.js.map +3 -3
- package/dist/esm/components/XAdkChatbot/components/MarkdownRender/index.js +27 -19
- package/dist/esm/components/XAdkChatbot/components/MarkdownRender/index.js.map +1 -1
- package/dist/esm/components/XAdkChatbot/components/MarkdownRender/styles.d.ts +38 -0
- package/dist/esm/components/XAdkChatbot/components/MarkdownRender/styles.js +12 -0
- package/dist/esm/components/XAdkChatbot/components/MarkdownRender/styles.js.map +1 -0
- package/dist/esm/components/XAdkWebProvider/XAdkWebProvider.stories.js +11 -6
- package/dist/esm/components/XAdkWebProvider/XAdkWebProvider.stories.js.map +1 -1
- package/dist/esm/components/XAdkWebProvider/index.js +17 -2
- package/dist/esm/components/XAdkWebProvider/index.js.map +1 -1
- package/dist/esm/hooks/useADKChat.js +4 -0
- package/dist/esm/hooks/useADKChat.js.map +1 -1
- package/dist/esm/services/api.js +2 -1
- package/dist/esm/services/api.js.map +1 -1
- package/dist/esm/types/XAdkProvider.d.ts +39 -0
- package/dist/esm/types/XAdkProvider.js +32 -1
- package/dist/esm/types/XAdkProvider.js.map +1 -1
- package/dist/umd/chat-sdk.min.js +1 -1
- package/package.json +5 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["forwardRef","useImperativeHandle","useState","useRef","useEffect","message","Flex","Tooltip","Button","Modal","Input","ConfigProvider","copy","XProvider","ExclamationCircleFilled","ReloadOutlined","CopyOutlined","LikeFilled","LikeOutlined","MOBILE_MAX_WIDTH","API_SUCCESS_CODE","XAdkChatbot","DislikeFeedback","useADKChat","addFeedback","primaryBlue","XAiConversations","useStyles","jsx","_jsx","jsxs","_jsxs","confirm","XAdkWebProvider","_ref","ref","_config$chatProps","_config$session","_config$session2","_ref$url","url","window","location","origin","token","config","_ref$providerId","providerId","onSuccess","onStream","onMessage","onError","styles","_useADKChat","appInfo","loading","messages","prologue","suggestions","sessionList","currentSessionId","initialized","setMessages","startChat","stopChat","clearChat","suggestChat","confirmFnCall","deleteSession","updateSession","setCurrentSessionDetail","getAppInfo","getMessages","getSessions","_useState","_useState2","_slicedToArray","_isNarrow","setIsNarrow","divRef","div","current","resizeObserver","ResizeObserver","entries","_iterator","_createForOfIteratorHelper","_step","s","n","done","entry","value","width","contentRect","err","e","f","observe","initialWidth","offsetWidth","disconnect","handleSendMessage","_ref3","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref2","_ref2$text","text","wrap","_callee$","_context","prev","next","stop","_x","apply","arguments","handleAddFeedback","_ref4","_callee2","data","_data$raw$isLike","_data$raw","_ref5","appNo","isLike","_yield$addFeedback","result","_callee2$","_context2","raw","warning","abrupt","requestId","invocationId","sent","code","success","map","item","id","_objectSpread","error","_x2","renderFooter","_ref6","_ref6$message","msg","_ref6$isLastBotMsg","isLastBotMsg","_ref6$isLastMsg","isLastMsg","_msg$raw","gap","style","padding","children","title","type","size","color","icon","onClick","lastMsg","findLast","v","role","activeColor","appTheme","onSubmit","_ref7","_callee3","formData","_yield$addFeedback2","_callee3$","_context3","_x3","msgs","filter","join","isOk","handleUpdateSession","sessionId","menuConfig","conversation","items","label","key","danger","menuInfo","domEvent","stopPropagation","inputValue","content","defaultValue","autoFocus","onChange","target","okText","cancelText","okButtonProps","background","borderColor","onOk","trim","Promise","reject","onCancel","okType","clearBtnShow","chatProps","session","showSessionList","className","providerWrapper","isNarrow","onActiveChange","onNewChat","activeKey","menu","chatbotWrapper","allowUpload","footer","onConfirm","onStop","onClear","onSuggest"],"sources":["../../../../src/components/XAdkWebProvider/index.tsx"],"sourcesContent":["import { forwardRef, useImperativeHandle, useState, useRef, useEffect } from 'react';\nimport { message, Flex, Tooltip, Button, Modal, Input, ConfigProvider } from 'antd';\nimport copy from 'copy-to-clipboard';\nimport { XProvider } from '@ant-design/x';\nimport type { ConversationsProps } from '@ant-design/x';\nimport { ExclamationCircleFilled, ReloadOutlined, CopyOutlined, LikeFilled, LikeOutlined } from '@ant-design/icons';\nimport { XAdkProviderProps, XAdkProviderHandle } from '@/types/XAdkProvider';\nimport { MOBILE_MAX_WIDTH, API_SUCCESS_CODE } from '@/constants';\nimport type { IMessage, SendContent } from '@/types';\nimport XAdkChatbot from '../XAdkChatbot';\nimport DislikeFeedback from '../DislikeFeedback';\nimport useADKChat from '@/hooks/useADKChat';\nimport { addFeedback } from '@/services/api';\nimport { primaryBlue } from '@/styles/common';\nimport XAiConversations from '../XAiConversations';\nimport { useStyles } from './styles';\n\nconst { confirm } = Modal;\n\nconst XAdkWebProvider = forwardRef<XAdkProviderHandle, XAdkProviderProps>(({\n url = window.location.origin,\n token,\n config,\n providerId = 'defaultId',\n onSuccess,\n onStream,\n onMessage,\n onError,\n}, ref) => {\n // 使用 useAgentGenerator Hook 管理消息状态\n const styles = useStyles();\n // const { textSpeed = 55 } = config?.chatProps || {};\n\n const {\n appInfo,\n loading,\n messages,\n prologue,\n suggestions,\n sessionList,\n currentSessionId,\n initialized,\n setMessages,\n startChat,\n stopChat,\n clearChat,\n suggestChat,\n confirmFnCall,\n deleteSession,\n updateSession,\n setCurrentSessionDetail,\n } = useADKChat({ url, config, token, onSuccess, onError, onStream, onMessage });\n\n // const { appName, icon } = appInfo || {};\n\n useImperativeHandle(ref, () => ({\n startChat,\n stopChat,\n clearChat,\n suggestChat,\n deleteSession,\n updateSession,\n getAppInfo: () => appInfo,\n getMessages: () => messages,\n getSessions: () => sessionList,\n setMessages,\n setCurrentSessionDetail,\n }), [appInfo, messages, stopChat, setMessages, setCurrentSessionDetail]);\n\n const [_isNarrow, setIsNarrow] = useState<boolean>(false);\n const divRef = useRef<HTMLDivElement>(null);\n\n // 监听容器宽度变化\n useEffect(() => {\n const div = divRef.current;\n if (!div) return;\n\n // 创建监听器\n const resizeObserver = new ResizeObserver((entries) => {\n // eslint-disable-next-line no-restricted-syntax\n for (const entry of entries) {\n const { width } = entry.contentRect;\n setIsNarrow(width <= MOBILE_MAX_WIDTH);\n }\n });\n\n // 开始监听\n resizeObserver.observe(div);\n\n // 初始化检查\n const initialWidth = div.offsetWidth;\n setIsNarrow(initialWidth <= MOBILE_MAX_WIDTH);\n\n // 清理函数\n return () => {\n resizeObserver.disconnect();\n };\n }, []);\n\n // 发送消息\n const handleSendMessage = async ({ text = '' }: SendContent) => {\n await startChat({ text });\n };\n\n // 处理添加反馈\n const handleAddFeedback = async (data: any) => {\n const { appNo } = config || {};\n const isLike = data?.raw?.isLike ?? 0;\n if (isLike !== 0) {\n message.warning('已收到您的反馈,无需重复提交');\n return;\n }\n if (appNo) {\n const { result } = await addFeedback({\n url,\n token,\n appNo,\n requestId: data.invocationId,\n isLike: 1,\n });\n if (result?.code === API_SUCCESS_CODE) {\n message.success('感谢您的反馈');\n setMessages((prev) => {\n return prev.map((item) => {\n if (item.id === data.id) {\n return {\n ...item,\n raw: {\n ...item.raw,\n isLike: 1, \n }\n };\n }\n return item;\n });\n });\n } else {\n message.error('反馈失败,请稍后再试');\n }\n }\n };\n\n\n const renderFooter = ({ message: msg = {} as IMessage, isLastBotMsg = false, isLastMsg = false}) => {\n if (isLastBotMsg) {\n return (\n <Flex gap={4} style={{ padding: '8px 0' }}>\n {isLastMsg && (\n <Tooltip title=\"重新生成\">\n <Button\n type=\"text\"\n size=\"small\"\n style={{ color: '#949494' }}\n icon={<ReloadOutlined />}\n onClick={() => {\n const lastMsg = messages.findLast((v) => {\n return v.role === 'user' && v.text;\n });\n handleSendMessage({ text: lastMsg?.text || '' });\n }}\n />\n </Tooltip>\n )}\n <Tooltip title=\"赞\">\n <Button\n type=\"text\"\n size=\"small\"\n style={{ color: '#949494' }}\n icon={msg.raw?.isLike === 1 ? <LikeFilled /> : <LikeOutlined />}\n onClick={() => handleAddFeedback(msg)}\n />\n </Tooltip>\n <Tooltip title=\"踩\">\n <DislikeFeedback\n msg={msg}\n activeColor={appInfo?.appTheme || primaryBlue}\n onSubmit={async (formData) => {\n const { result } = await addFeedback({\n ...formData,\n requestId: msg.invocationId,\n isLike: -1,\n url,\n appNo: config?.appNo,\n token,\n });\n if (result?.code === API_SUCCESS_CODE) {\n message.success('已收到您的反馈,我们会努力做的更好');\n setMessages((prev) => {\n return prev.map((item) => {\n if (item.id === msg.id) {\n return {\n ...item,\n isLike: -1,\n };\n }\n return item;\n });\n });\n return true;\n }\n message.error('反馈失败,请稍后再试');\n return false;\n }}\n />\n </Tooltip>\n <Tooltip title=\"复制\">\n <Button\n type=\"text\"\n size=\"small\"\n style={{ color: '#949494' }}\n icon={<CopyOutlined />}\n onClick={() => {\n const msgs = messages.filter((v) => {\n return v.role === 'bot'\n && v.invocationId === msg.invocationId\n && v.text;\n });\n const text = msgs.map((v) => {\n return v.text;\n }).join('\\n');\n const isOk = copy(text);\n if (isOk) {\n message.success('复制成功');\n }\n }}\n />\n </Tooltip>\n </Flex>\n );\n }\n return null;\n };\n\n // 修改会话内容\n const handleUpdateSession = (sessionId: string, title: string) => {\n updateSession(sessionId, title);\n };\n\n // 会话操作菜单\n const menuConfig: ConversationsProps['menu'] = (conversation) => ({\n items: [\n {\n label: '重命名',\n key: 'edit',\n },\n {\n label: '删除',\n key: 'delete',\n danger: true,\n },\n ],\n onClick: (menuInfo) => {\n menuInfo.domEvent.stopPropagation();\n const { key } = menuInfo;\n switch (key) {\n case 'edit': {\n let inputValue = conversation.label as string || '';\n confirm({\n title: '编辑对话名称',\n icon: null,\n content: (\n <Input\n defaultValue={inputValue}\n autoFocus\n style={{ width: '100%' }}\n onChange={(e) => {\n inputValue = e.target.value;\n }}\n />\n ),\n okText: '确认',\n cancelText: '取消',\n okButtonProps: {\n style: { background: '#000', borderColor: '#000', color: '#fff' },\n },\n onOk: () => {\n if (!inputValue.trim()) {\n message.error('对话名称不能为空');\n return Promise.reject();\n }\n handleUpdateSession(conversation.key, inputValue);\n },\n onCancel: () => {\n // 静默处理\n },\n });\n break;\n }\n case 'delete':\n confirm({\n title: '确认删除?',\n icon: <ExclamationCircleFilled />,\n content: '该对话内容将被删除无法恢复。',\n okText: '确认删除',\n okType: 'danger',\n cancelText: '取消',\n okButtonProps: {\n style: { background: '#ff4d4f', borderColor: '#ff4d4f', color: '#fff' },\n },\n onOk() {\n deleteSession(conversation.key);\n },\n onCancel() {\n //\n },\n });\n break;\n }\n },\n });\n\n // 是否展示清空按钮\n const clearBtnShow = typeof config?.chatProps?.clearBtnShow !== 'undefined'\n ? config.chatProps.clearBtnShow\n : !config?.session?.showSessionList;\n\n return (\n <ConfigProvider>\n <XProvider>\n <div\n ref={divRef}\n className={styles.providerWrapper}\n > \n {config?.session?.showSessionList && (\n <XAiConversations\n isNarrow={false}\n sessionList={sessionList}\n onActiveChange={(key) => setCurrentSessionDetail(key)}\n onNewChat={clearChat}\n activeKey={currentSessionId}\n menu={menuConfig}\n />\n )}\n <div className={styles.chatbotWrapper}>\n <div className={styles.content}>\n <XAdkChatbot\n allowUpload={config?.allowUpload}\n initialized={initialized}\n prologue={prologue}\n suggestions={suggestions}\n loading={loading}\n messages={messages}\n footer={renderFooter}\n onSubmit={handleSendMessage}\n onConfirm={confirmFnCall}\n onStop={stopChat}\n onClear={clearChat}\n onSuggest={suggestChat}\n clearBtnShow={clearBtnShow}\n />\n </div>\n </div>\n </div>\n </XProvider>\n </ConfigProvider>\n );\n});\n\nexport default XAdkWebProvider;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["forwardRef","useImperativeHandle","useState","useRef","useEffect","message","Flex","Tooltip","Button","Modal","Input","ConfigProvider","copy","XProvider","ExclamationCircleFilled","ReloadOutlined","CopyOutlined","LikeFilled","LikeOutlined","MOBILE_MAX_WIDTH","API_SUCCESS_CODE","EventCode","XAdkChatbot","DislikeFeedback","useADKChat","addFeedback","primaryBlue","XAiConversations","useStyles","jsx","_jsx","jsxs","_jsxs","confirm","XAdkWebProvider","_ref","ref","_config$chatProps","_config$session","_config$session2","_ref$url","url","window","location","origin","token","config","_ref$providerId","providerId","onEvent","onSuccess","onStream","onMessage","onError","styles","_useADKChat","appInfo","loading","messages","prologue","suggestions","sessionList","currentSessionId","initialized","setMessages","startChat","stopChat","clearChat","suggestChat","confirmFnCall","deleteSession","updateSession","setCurrentSessionDetail","getAppInfo","getMessages","getSessions","_useState","_useState2","_slicedToArray","_isNarrow","setIsNarrow","divRef","div","current","resizeObserver","ResizeObserver","entries","_iterator","_createForOfIteratorHelper","_step","s","n","done","entry","value","width","contentRect","err","e","f","observe","initialWidth","offsetWidth","disconnect","handleSendMessage","_ref3","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref2","_ref2$text","text","wrap","_callee$","_context","prev","next","stop","_x","apply","arguments","handleAddFeedback","_ref4","_callee2","data","_data$raw$isLike","_data$raw","_ref5","appNo","isLike","_yield$addFeedback","result","_callee2$","_context2","raw","warning","abrupt","requestId","invocationId","sent","code","success","map","item","id","_objectSpread","error","_x2","renderFooter","_ref6","_ref6$message","msg","_ref6$isLastBotMsg","isLastBotMsg","_ref6$isLastMsg","isLastMsg","_msg$raw","gap","style","padding","children","title","type","size","color","icon","onClick","lastMsg","findLast","v","role","activeColor","appTheme","onSubmit","_ref7","_callee3","formData","_yield$addFeedback2","_callee3$","_context3","_x3","msgs","filter","join","isOk","handleUpdateSession","sessionId","menuConfig","conversation","items","label","key","danger","menuInfo","domEvent","stopPropagation","inputValue","content","defaultValue","autoFocus","onChange","target","okText","cancelText","okButtonProps","background","borderColor","onOk","trim","Promise","reject","onCancel","okType","clearBtnShow","chatProps","session","showSessionList","className","providerWrapper","isNarrow","onActiveChange","SESSION_SWITCH","onNewChat","SESSION_CREATE","activeKey","menu","chatbotWrapper","allowUpload","footer","onConfirm","onStop","onClear","onSuggest"],"sources":["../../../../src/components/XAdkWebProvider/index.tsx"],"sourcesContent":["import { forwardRef, useImperativeHandle, useState, useRef, useEffect } from 'react';\nimport { message, Flex, Tooltip, Button, Modal, Input, ConfigProvider } from 'antd';\nimport copy from 'copy-to-clipboard';\nimport { XProvider } from '@ant-design/x';\nimport type { ConversationsProps } from '@ant-design/x';\nimport { ExclamationCircleFilled, ReloadOutlined, CopyOutlined, LikeFilled, LikeOutlined } from '@ant-design/icons';\nimport { XAdkProviderProps, XAdkProviderHandle } from '@/types/XAdkProvider';\nimport { MOBILE_MAX_WIDTH, API_SUCCESS_CODE } from '@/constants';\nimport { type IMessage, type SendContent, EventCode } from '@/types';\nimport XAdkChatbot from '../XAdkChatbot';\nimport DislikeFeedback from '../DislikeFeedback';\nimport useADKChat from '@/hooks/useADKChat';\nimport { addFeedback } from '@/services/api';\nimport { primaryBlue } from '@/styles/common';\nimport XAiConversations from '../XAiConversations';\nimport { useStyles } from './styles';\n\nconst { confirm } = Modal;\n\nconst XAdkWebProvider = forwardRef<XAdkProviderHandle, XAdkProviderProps>(({\n url = window.location.origin,\n token,\n config,\n providerId = 'defaultId',\n onEvent,\n onSuccess,\n onStream,\n onMessage,\n onError,\n}, ref) => {\n // 使用 useAgentGenerator Hook 管理消息状态\n const styles = useStyles();\n // const { textSpeed = 55 } = config?.chatProps || {};\n\n const {\n appInfo,\n loading,\n messages,\n prologue,\n suggestions,\n sessionList,\n currentSessionId,\n initialized,\n setMessages,\n startChat,\n stopChat,\n clearChat,\n suggestChat,\n confirmFnCall,\n deleteSession,\n updateSession,\n setCurrentSessionDetail,\n } = useADKChat({ url, config, token, onSuccess, onError, onStream, onMessage });\n\n // const { appName, icon } = appInfo || {};\n\n useImperativeHandle(ref, () => ({\n startChat,\n stopChat,\n clearChat,\n suggestChat,\n deleteSession,\n updateSession,\n getAppInfo: () => appInfo,\n getMessages: () => messages,\n getSessions: () => sessionList,\n setMessages,\n setCurrentSessionDetail,\n }), [appInfo, messages, stopChat, setMessages, setCurrentSessionDetail]);\n\n const [_isNarrow, setIsNarrow] = useState<boolean>(false);\n const divRef = useRef<HTMLDivElement>(null);\n\n // 监听容器宽度变化\n useEffect(() => {\n const div = divRef.current;\n if (!div) return;\n\n // 创建监听器\n const resizeObserver = new ResizeObserver((entries) => {\n // eslint-disable-next-line no-restricted-syntax\n for (const entry of entries) {\n const { width } = entry.contentRect;\n setIsNarrow(width <= MOBILE_MAX_WIDTH);\n }\n });\n\n // 开始监听\n resizeObserver.observe(div);\n\n // 初始化检查\n const initialWidth = div.offsetWidth;\n setIsNarrow(initialWidth <= MOBILE_MAX_WIDTH);\n\n // 清理函数\n return () => {\n resizeObserver.disconnect();\n };\n }, []);\n\n // 发送消息\n const handleSendMessage = async ({ text = '' }: SendContent) => {\n await startChat({ text });\n };\n\n // 处理添加反馈\n const handleAddFeedback = async (data: any) => {\n const { appNo } = config || {};\n const isLike = data?.raw?.isLike ?? 0;\n if (isLike !== 0) {\n message.warning('已收到您的反馈,无需重复提交');\n return;\n }\n if (appNo) {\n const { result } = await addFeedback({\n url,\n token,\n appNo,\n requestId: data.invocationId,\n isLike: 1,\n });\n if (result?.code === API_SUCCESS_CODE) {\n message.success('感谢您的反馈');\n setMessages((prev) => {\n return prev.map((item) => {\n if (item.id === data.id) {\n return {\n ...item,\n raw: {\n ...item.raw,\n isLike: 1, \n }\n };\n }\n return item;\n });\n });\n } else {\n message.error('反馈失败,请稍后再试');\n }\n }\n };\n\n\n const renderFooter = ({ message: msg = {} as IMessage, isLastBotMsg = false, isLastMsg = false}) => {\n if (isLastBotMsg) {\n return (\n <Flex gap={4} style={{ padding: '8px 0' }}>\n {isLastMsg && (\n <Tooltip title=\"重新生成\">\n <Button\n type=\"text\"\n size=\"small\"\n style={{ color: '#949494' }}\n icon={<ReloadOutlined />}\n onClick={() => {\n const lastMsg = messages.findLast((v) => {\n return v.role === 'user' && v.text;\n });\n handleSendMessage({ text: lastMsg?.text || '' });\n }}\n />\n </Tooltip>\n )}\n <Tooltip title=\"赞\">\n <Button\n type=\"text\"\n size=\"small\"\n style={{ color: '#949494' }}\n icon={msg.raw?.isLike === 1 ? <LikeFilled /> : <LikeOutlined />}\n onClick={() => handleAddFeedback(msg)}\n />\n </Tooltip>\n <Tooltip title=\"踩\">\n <DislikeFeedback\n msg={msg}\n activeColor={appInfo?.appTheme || primaryBlue}\n onSubmit={async (formData) => {\n const { result } = await addFeedback({\n ...formData,\n requestId: msg.invocationId,\n isLike: -1,\n url,\n appNo: config?.appNo,\n token,\n });\n if (result?.code === API_SUCCESS_CODE) {\n message.success('已收到您的反馈,我们会努力做的更好');\n setMessages((prev) => {\n return prev.map((item) => {\n if (item.id === msg.id) {\n return {\n ...item,\n isLike: -1,\n };\n }\n return item;\n });\n });\n return true;\n }\n message.error('反馈失败,请稍后再试');\n return false;\n }}\n />\n </Tooltip>\n <Tooltip title=\"复制\">\n <Button\n type=\"text\"\n size=\"small\"\n style={{ color: '#949494' }}\n icon={<CopyOutlined />}\n onClick={() => {\n const msgs = messages.filter((v) => {\n return v.role === 'bot'\n && v.invocationId === msg.invocationId\n && v.text;\n });\n const text = msgs.map((v) => {\n return v.text;\n }).join('\\n');\n const isOk = copy(text);\n if (isOk) {\n message.success('复制成功');\n }\n }}\n />\n </Tooltip>\n </Flex>\n );\n }\n return null;\n };\n\n // 修改会话内容\n const handleUpdateSession = (sessionId: string, title: string) => {\n updateSession(sessionId, title);\n };\n\n // 会话操作菜单\n const menuConfig: ConversationsProps['menu'] = (conversation) => ({\n items: [\n {\n label: '重命名',\n key: 'edit',\n },\n {\n label: '删除',\n key: 'delete',\n danger: true,\n },\n ],\n onClick: (menuInfo) => {\n menuInfo.domEvent.stopPropagation();\n const { key } = menuInfo;\n switch (key) {\n case 'edit': {\n let inputValue = conversation.label as string || '';\n confirm({\n title: '编辑对话名称',\n icon: null,\n content: (\n <Input\n defaultValue={inputValue}\n autoFocus\n style={{ width: '100%' }}\n onChange={(e) => {\n inputValue = e.target.value;\n }}\n />\n ),\n okText: '确认',\n cancelText: '取消',\n okButtonProps: {\n style: { background: '#000', borderColor: '#000', color: '#fff' },\n },\n onOk: () => {\n if (!inputValue.trim()) {\n message.error('对话名称不能为空');\n return Promise.reject();\n }\n handleUpdateSession(conversation.key, inputValue);\n },\n onCancel: () => {\n // 静默处理\n },\n });\n break;\n }\n case 'delete':\n confirm({\n title: '确认删除?',\n icon: <ExclamationCircleFilled />,\n content: '该对话内容将被删除无法恢复。',\n okText: '确认删除',\n okType: 'danger',\n cancelText: '取消',\n okButtonProps: {\n style: { background: '#ff4d4f', borderColor: '#ff4d4f', color: '#fff' },\n },\n onOk() {\n deleteSession(conversation.key);\n },\n onCancel() {\n //\n },\n });\n break;\n }\n },\n });\n\n // 是否展示清空按钮\n const clearBtnShow = typeof config?.chatProps?.clearBtnShow !== 'undefined'\n ? config.chatProps.clearBtnShow\n : !config?.session?.showSessionList;\n\n return (\n <ConfigProvider>\n <XProvider>\n <div\n ref={divRef}\n className={styles.providerWrapper}\n > \n {config?.session?.showSessionList && (\n <XAiConversations\n isNarrow={false}\n sessionList={sessionList}\n onActiveChange={(key) => {\n setCurrentSessionDetail(key);\n onEvent?.({\n code: EventCode.SESSION_SWITCH,\n message: '切换会话',\n data: {\n sessionId: key,\n },\n });\n }}\n onNewChat={() => {\n clearChat?.();\n onEvent?.({\n code: EventCode.SESSION_CREATE,\n message: '开启新会话',\n });\n }}\n activeKey={currentSessionId}\n menu={menuConfig}\n />\n )}\n <div className={styles.chatbotWrapper}>\n <div className={styles.content}>\n <XAdkChatbot\n allowUpload={config?.allowUpload}\n initialized={initialized}\n prologue={prologue}\n suggestions={suggestions}\n loading={loading}\n messages={messages}\n footer={renderFooter}\n onSubmit={handleSendMessage}\n onConfirm={confirmFnCall}\n onStop={stopChat}\n onClear={clearChat}\n onSuggest={suggestChat}\n clearBtnShow={clearBtnShow}\n />\n </div>\n </div>\n </div>\n </XProvider>\n </ConfigProvider>\n );\n});\n\nexport default XAdkWebProvider;\n"],"mappings":"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"}
|
|
@@ -829,6 +829,8 @@ function useADKChat(_ref) {
|
|
|
829
829
|
if (sessionId === currentSessionId) {
|
|
830
830
|
clearChat();
|
|
831
831
|
}
|
|
832
|
+
} else {
|
|
833
|
+
message.error('删除会话失败');
|
|
832
834
|
}
|
|
833
835
|
case 7:
|
|
834
836
|
case "end":
|
|
@@ -868,6 +870,8 @@ function useADKChat(_ref) {
|
|
|
868
870
|
if ((result === null || result === void 0 ? void 0 : result.code) === API_SUCCESS_CODE) {
|
|
869
871
|
// 编辑成功后,重新获取会话列表
|
|
870
872
|
initAppConversations();
|
|
873
|
+
} else {
|
|
874
|
+
message.error('更新会话失败');
|
|
871
875
|
}
|
|
872
876
|
case 7:
|
|
873
877
|
case "end":
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEffect","useCallback","useMemo","useRef","useState","fetchEventSource","EventStreamContentType","message","v4","SESSION_PAGE_SIZE","API_SUCCESS_CODE","SuccessCode","ErrorCode","fetchAppConfig","fetchSessionList","fetchSessionDetail","closeSession","updateSessionTitle","safeJsonParse","combineTextParts","parts","result","combinedTextPart","_iterator","_createForOfIteratorHelper","_step","s","n","done","part","value","text","thought","_objectSpread","push","undefined","err","e","f","useADKChat","_ref","url","token","_ref$config","config","_ref$type","type","onError","onMessage","onSuccess","onStream","_useState","_useState2","_slicedToArray","loading","setLoading","ctrl","_ref2","appNo","_useState3","_useState4","appInfo","setAppInfo","_useState5","_useState6","initialized","setInitialized","_useState7","_useState8","sessionList","setSessionList","_useState9","_useState10","currentSessionId","setCurrentSessionId","_useState11","total","pageNum","pageSize","_useState12","sessionPagination","setSessionPagination","_useState13","_useState14","prologue","setPrologue","_useState15","_useState16","suggestedQuestions","setSuggestedQuestions","_useState17","_useState18","messages","setMessages","mergedMessages","fnResMap","forEach","msg","functionResponse","_msg$functionResponse","id","map","functionCall","_msg$functionCall","textMsgRef","eventDataRef","Map","insertMessage","prev","lastMessage","length","isLoading","concat","_toConsumableArray","slice","insertSuggestedQuestions","suggested_questions","arguments","insertPrologue","updateMessage","m","storeEvents","event","_event$actions","title","actions","artifactDelta","name","executableCode","_part$executableCode$","code","codeExecutionResult","outcome","errorMessage","updatedEvent","newEventData","current","set","storeMessage","role","author","invocationId","eventId","timestamp","inlineData","displayName","data","mimeType","_event$groundingMetad","groundingMetadata","searchEntryPoint","renderedContent","fileData","Object","keys","processPart","_event$groundingMetad2","newChunk","newMessage","partial","processFollowupPart","_event$content","content","processErrorMessage","chunkJson","processActionArtifact","sendMessageRequest","values","Promise","resolve","abort","AbortController","requestUrl","method","signal","body","JSON","stringify","openWhenHidden","headers","stream","Authorization","onopen","response","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_callee$","_context","next","ok","get","status","stop","onmessage","error","warning","_iterator2","_step2","onclose","_textMsgRef$current","onerror","console","startChat","_ref4","_callee2","_ref3","_ref3$text","_ref3$files","files","_callee2$","_context2","abrupt","trim","temp","file","_file$response","_file$response2","fileUri","fileUrl","sessionId","_file$response3","_file$response4","_file$response5","_file$response6","_file$response7","fileName","fileId","tempUrl","fileType","initAppConversations","_x","apply","reChat","newMessages","lastAIIndex","findLastIndex","splice","lastUserMessage","findLast","_lastUserMessage$text","_lastUserMessage$file","confirmFnCall","fnCall","confirmed","suggestChat","stopChat","_ctrl$current","clearChat","_appInfo$onboardingIn","_appInfo$onboardingIn2","newSessionId","onboardingInfo","formatMessages","isReplace","mapped","item","Array","isArray","toLowerCase","filter","p","Boolean","raw","setCurrentSessionDetail","_ref5","_callee3","_yield$fetchSessionDe","_appInfo$onboardingIn3","_appInfo$onboardingIn4","_callee3$","_context3","sent","_x2","_ref6","_callee4","fetchDetail","_yield$fetchSessionLi","_yield$fetchSessionLi2","pagination","formatSessions","_data$","_args4","_callee4$","_context4","key","label","Date","startTime","getTime","meta","APP_MESSAGES_INIT_SUCCESS","t0","finish","deleteSession","_ref7","_callee5","_yield$closeSession","_callee5$","_context5","_x3","updateSession","_ref8","_callee6","_yield$updateSessionT","_callee6$","_context6","_x4","_x5","initConfig","_ref9","_callee7","_yield$fetchAppConfig","_callee7$","_context7","APP_CONFIG_INIT_SUCCESS","APP_NOT_FOUND","API_ERROR","suggestions"],"sources":["../../../src/hooks/useADKChat.ts"],"sourcesContent":["import { useEffect, useCallback, useMemo, useRef, useState } from 'react';\nimport { fetchEventSource, EventStreamContentType } from '@microsoft/fetch-event-source';\nimport { message } from 'antd';\nimport { v4 } from 'uuid';\nimport { SESSION_PAGE_SIZE, API_SUCCESS_CODE } from '@/constants';\nimport {\n SuccessCode,\n ErrorCode,\n DebugOptions,\n FunctionCall,\n SendContent,\n SessionData,\n AgentRunRequest,\n Event,\n FunctionResponse,\n IMessage,\n Part,\n} from '@/types';\nimport {\n fetchAppConfig,\n fetchSessionList,\n fetchSessionDetail,\n closeSession,\n updateSessionTitle,\n type ChatConfig\n} from '@/services/api';\nimport { safeJsonParse } from '@/utils';\n\nconst combineTextParts = (parts: Part[]) => {\n const result: Part[] = [];\n let combinedTextPart: Part|undefined;\n\n // eslint-disable-next-line no-restricted-syntax\n for (const part of parts) {\n if (part.text) {\n // 如果没有 combined 或 combined 思考类型跟当前 part 不同,则创建新的合并引用\n if (!combinedTextPart || combinedTextPart.thought !== part.thought) {\n combinedTextPart = { ...part };\n result.push(combinedTextPart);\n } else {\n combinedTextPart.text += part.text;\n }\n } else {\n combinedTextPart = undefined;\n result.push(part);\n }\n }\n return result;\n};\n\nfunction useADKChat({\n url,\n token,\n config = {},\n type = 'agentDebug',\n onError,\n onMessage,\n onSuccess,\n onStream,\n}: DebugOptions) {\n const [loading, setLoading] = useState(false);\n const ctrl = useRef<AbortController | null>(null);\n // 应用配置\n const { appNo } = config || {};\n // 智能体信息\n // const [appInfo, setAppInfo] = useState<ChatConfig>({\n // appNo,\n // appVersionNo: '',\n // appTheme: '',\n // appName: '',\n // onboardingInfo: {\n // prologue: '',\n // questionFiles: [],\n // suggested_questions: [],\n // },\n // });\n const [appInfo, setAppInfo] = useState<ChatConfig | null>(null);\n // 初始化完成\n const [initialized, setInitialized] = useState(false);\n // 会话记录\n const [sessionList, setSessionList] = useState<SessionData[]>([]);\n // 当前会话\n const [currentSessionId, setCurrentSessionId] = useState<string>('');\n // 会话分页设置\n const [sessionPagination, setSessionPagination] = useState({ total: 0, pageNum: 1, pageSize: SESSION_PAGE_SIZE });\n // 开场白\n const [prologue, setPrologue] = useState<string>('');\n // 建议问题\n const [suggestedQuestions, setSuggestedQuestions] = useState<string[]>([]);\n const [messages, setMessages] = useState<IMessage[]>([]);\n const mergedMessages = useMemo(() => {\n const fnResMap: Record<string, FunctionResponse> = {};\n messages.forEach((msg) => {\n if (msg.functionResponse) {\n fnResMap[msg?.functionResponse?.id || ''] = msg.functionResponse;\n }\n });\n return messages.map((msg) => {\n if (msg.functionCall) {\n return {\n ...msg,\n functionResponse: fnResMap[msg?.functionCall?.id || ''],\n };\n }\n return msg;\n });\n }, [messages]);\n const textMsgRef = useRef<IMessage>(null);\n const eventDataRef = useRef<Map<string, any>>(new Map());\n\n // 插入消息\n const insertMessage = useCallback((msg: IMessage) => {\n setMessages((prev) => {\n const lastMessage = prev[prev.length - 1];\n if (lastMessage?.isLoading) {\n return [...prev.slice(0, -1), msg, lastMessage];\n }\n return [...prev, msg];\n });\n }, []);\n\n // 初始化开场白预设置问题\n const insertSuggestedQuestions = (suggested_questions: string[] = []) => {\n if (!suggested_questions?.length) return;\n // 无消息内容 且 有建议问题时\n if (messages.length === 0 && suggested_questions.length) {\n setSuggestedQuestions(suggested_questions);\n };\n };\n\n // 初始化开场白\n const insertPrologue = (prologue: string) => {\n if (prologue) {\n setPrologue(prologue);\n }\n };\n\n // 更新消息\n const updateMessage = useCallback((msg: IMessage) => {\n setMessages((prev) => {\n return prev.map((m) => {\n if (m.id === msg.id) {\n return msg;\n }\n return m;\n });\n });\n }, []);\n\n // 存储事件\n const storeEvents = useCallback((part: Part | null, event: any) => {\n let title = '';\n\n if (part == null && event.actions?.artifactDelta) {\n title += 'eventAction: artifact';\n } else if (part) {\n if (part.text) {\n title += `text:${part.text}`;\n } else if (part.functionCall) {\n title += `functionCall:${part.functionCall.name}`;\n } else if (part.functionResponse) {\n title += `functionResponse:${part.functionResponse.name}`;\n } else if (part.executableCode) {\n title += `executableCode:${part.executableCode.code?.slice(0, 10)}`;\n } else if (part.codeExecutionResult) {\n title += `codeExecutionResult:${part.codeExecutionResult.outcome}`;\n } else if (part.errorMessage) {\n title += `errorMessage:${part.errorMessage}`;\n }\n }\n\n const updatedEvent = { ...event, title };\n\n const newEventData = new Map(eventDataRef.current);\n newEventData.set(event.id, updatedEvent);\n eventDataRef.current = newEventData;\n }, []);\n\n // 存储消息\n const storeMessage = useCallback((\n part: Part | null,\n event: Event,\n role: 'user' | 'bot',\n ) => {\n const msg: IMessage = {\n id: v4(),\n author: event.author,\n invocationId: event.invocationId,\n eventId: event.id,\n timestamp: event.timestamp,\n role,\n };\n\n if (part) {\n if (part.inlineData) {\n msg.inlineData = {\n displayName: part.inlineData.displayName,\n data: part.inlineData.data,\n mimeType: part.inlineData.mimeType,\n };\n } else if (part.text) {\n msg.text = part.text;\n msg.thought = part.thought;\n\n if (event?.groundingMetadata?.searchEntryPoint?.renderedContent) {\n msg.renderedContent = event.groundingMetadata.searchEntryPoint.renderedContent;\n }\n } else if (part.fileData) {\n msg.fileData = [part.fileData];\n } else if (part.functionCall) {\n msg.functionCall = part.functionCall;\n } else if (part.functionResponse) {\n msg.functionResponse = part.functionResponse;\n } else if (part.executableCode) {\n msg.executableCode = part.executableCode;\n } else if (part.codeExecutionResult) {\n msg.codeExecutionResult = part.codeExecutionResult;\n }\n }\n\n if (part && Object.keys(part).length > 0) {\n insertMessage(msg);\n }\n }, [insertMessage]);\n\n // 处理消息部分(关键更新)\n const processPart = useCallback((event: Event, part: Part) => {\n const renderedContent = event.groundingMetadata?.searchEntryPoint?.renderedContent;\n if (part.text) {\n const newChunk = part.text;\n\n if (!textMsgRef.current || textMsgRef.current.thought !== part.thought) {\n const newMessage: IMessage = {\n id: v4(),\n author: event.author,\n invocationId: event.invocationId,\n eventId: event.id,\n timestamp: event.timestamp,\n role: 'bot',\n text: newChunk,\n thought: part.thought,\n };\n\n if (renderedContent) {\n newMessage.renderedContent = renderedContent;\n }\n\n textMsgRef.current = newMessage;\n // 存储原数据\n storeEvents(part, event);\n // 插入消息\n insertMessage(newMessage);\n } else {\n if (event.partial === false) {\n storeEvents(part, event);\n textMsgRef.current = null;\n return;\n }\n if (renderedContent) {\n textMsgRef.current = {\n ...textMsgRef.current,\n renderedContent,\n };\n }\n textMsgRef.current = {\n ...textMsgRef.current,\n text: (textMsgRef.current.text || '') + newChunk,\n };\n updateMessage(textMsgRef.current);\n }\n } else {\n textMsgRef.current = null;\n storeEvents(part, event);\n storeMessage(\n part,\n event,\n 'bot',\n );\n }\n }, [storeEvents, storeMessage, insertMessage, updateMessage]);\n\n // 处理建议类消息\n const processFollowupPart = useCallback((event: Event) => {\n // 获取建议类消息的文本内容\n const part = event?.content?.parts?.[0] || null;\n const text = part?.text || '';\n storeEvents(part, event);\n if (text) {\n setSuggestedQuestions((prev) => [...prev, text]);\n }\n }, [storeEvents, insertMessage]);\n\n // 处理错误消息\n const processErrorMessage = useCallback((chunkJson: any) => {\n storeEvents(null, chunkJson);\n insertMessage({\n id: v4(),\n text: chunkJson.errorMessage,\n role: 'bot',\n });\n }, [storeEvents, insertMessage]);\n\n // 处理动作和制品\n const processActionArtifact = useCallback((event: any) => {\n if (event.actions && event.actions.artifactDelta) {\n storeEvents(null, event);\n storeMessage(null, event, 'bot');\n }\n }, [storeEvents, storeMessage]);\n\n // 发送消息请求\n const sendMessageRequest = useCallback((values: AgentRunRequest) => {\n return new Promise<void>((resolve) => {\n if (ctrl.current) {\n ctrl.current.abort();\n }\n setLoading(true);\n ctrl.current = new AbortController();\n const requestUrl = `${url}/api/gateway-web/openApi/v1/aizt/app/${appNo}/sendMsgStreaming`;\n\n fetchEventSource(requestUrl, {\n method: 'POST',\n signal: ctrl.current.signal,\n body: JSON.stringify(values),\n openWhenHidden: true,\n headers: {\n 'Content-Type': 'application/json',\n 'Cache-Control': 'no-cache',\n stream: 'true',\n Authorization: `Bearer ${token}`,\n },\n async onopen(response) {\n if (response.ok && response.headers.get('content-type') === EventStreamContentType) {\n // everything's good\n } else if (response.status >= 400 && response.status < 500 && response.status !== 429) {\n resolve();\n } else {\n resolve();\n }\n },\n onmessage: (event) => {\n const chunkJson: Event = safeJsonParse(event.data, {});\n if (chunkJson.error) {\n message.warning(chunkJson.error);\n return;\n }\n onStream?.(chunkJson);\n if (chunkJson.content) {\n // 建议类消息单独处理 \n if (chunkJson.content.role === 'followup') {\n processFollowupPart(chunkJson);\n return;\n }\n // eslint-disable-next-line no-restricted-syntax\n for (const part of combineTextParts(chunkJson.content.parts)) {\n processPart(chunkJson, part);\n }\n } else if (chunkJson.errorMessage) {\n processErrorMessage(chunkJson);\n } else if (chunkJson.actions) {\n processActionArtifact(chunkJson);\n }\n },\n onclose: () => {\n setLoading(false);\n if (textMsgRef.current) {\n onMessage?.(textMsgRef.current?.text || '', textMsgRef.current);\n }\n textMsgRef.current = null;\n resolve();\n },\n onerror: (error) => {\n setLoading(false);\n resolve();\n console.error('EventSource failed:', error);\n throw error;\n },\n });\n });\n }, [type, currentSessionId, processActionArtifact, processErrorMessage, processPart]);\n\n // 发送会话\n const startChat = async ({ text = '', files = [], functionResponse }: SendContent) => {\n if (loading) return;\n if (!text.trim() && !functionResponse) return;\n // 清空建议问题\n setSuggestedQuestions([]);\n // 发送消息\n setMessages((prev) => {\n let temp = [...prev];\n // 如果 text 存在\n if (text.trim()) {\n temp.push({\n id: v4(),\n role: 'user',\n text,\n });\n }\n // 如果file 存在\n if (files.length > 0) {\n temp.push({\n id: v4(),\n role: 'user',\n fileData: files.map(file => ({\n displayName: file.name,\n mimeType: file.response?.mimeType,\n fileUri: file.response?.fileUrl,\n })),\n });\n }\n // 如果 functionResponse 存在\n if (functionResponse) {\n temp.push({\n id: v4(),\n role: 'user',\n functionResponse,\n });\n }\n return temp;\n });\n await sendMessageRequest({\n stream: true,\n sessionId: currentSessionId,\n content: {\n role: 'user',\n parts: functionResponse ? [{ functionResponse }] : [{ text }],\n },\n files: files.map(file => ({\n fileName: file.response?.fileName,\n fileId: file.response?.fileId,\n tempUrl: file.response?.fileUrl,\n type: file.response?.fileType,\n mimeType: file.response?.mimeType,\n })),\n });\n // 获取聊天记录\n initAppConversations();\n };\n\n // 重新发送会话\n const reChat = () => {\n if (loading) return;\n if (messages.length === 0) return;\n setMessages((prev) => {\n const newMessages = [...prev];\n // 删除最后一条 AI 消息\n const lastAIIndex = newMessages.findLastIndex(msg => msg.role === 'bot');\n if (lastAIIndex !== -1) {\n newMessages.splice(lastAIIndex, 1);\n }\n // 清空建议问题\n setSuggestedQuestions([]);\n // 重新发送最后一条用户消息\n const lastUserMessage = newMessages.findLast(msg => msg.role === 'user');\n if (lastUserMessage) {\n const { text = '', fileData = [] } = lastUserMessage;\n sendMessageRequest({\n stream: true,\n sessionId: currentSessionId,\n content: {\n role: 'user',\n parts: [{\n text,\n }],\n },\n files: fileData?.map(file => ({\n fileName: file.displayName,\n tempUrl: file.fileUri,\n mimeType: file.mimeType,\n })),\n });\n }\n\n return newMessages;\n })\n };\n\n // 确认函数调用\n const confirmFnCall = (fnCall: FunctionCall, confirmed: boolean) => {\n const functionResponse = {\n id: fnCall.id,\n name: fnCall.name,\n response: { confirmed },\n };\n startChat({ functionResponse });\n };\n\n // 使用建议问题\n const suggestChat = (text: string) => {\n if (loading) return;\n if (!text.trim()) return;\n setSuggestedQuestions([]);\n startChat({ text });\n };\n // 停止会话\n const stopChat = useCallback(() => {\n ctrl.current?.abort();\n setLoading(false);\n textMsgRef.current = null;\n }, [ctrl]);\n\n // 清除/重置会话\n const clearChat = () => {\n const newSessionId = v4();\n setCurrentSessionId(newSessionId);\n // 重置聊天内容\n stopChat();\n setPrologue(appInfo?.onboardingInfo?.prologue || '');\n setMessages([]);\n setSuggestedQuestions(appInfo?.onboardingInfo?.suggested_questions || []);\n };\n\n // 格式化会话记录\n const formatMessages = (messages: any[], isReplace = false) => {\n const mapped: IMessage[] = [];\n\n messages.forEach((item) => {\n if (!item || !item.content || !Array.isArray(item.content.parts)) return;\n\n const role = (item.content.role || '').toLowerCase() === 'user' ? 'user' : 'bot';\n const parts = Array.isArray(item.content.parts)\n ? item.content.parts.filter((p: any) => {\n if (!p) return false;\n return Boolean(\n p.text || p.inlineData || p.functionCall || p.functionResponse || p.fileData || p.executableCode || p.codeExecutionResult || p.errorMessage\n );\n })\n : [];\n\n if (parts.length === 0) return;\n\n parts.forEach((part: any) => {\n const msg: IMessage = {\n id: v4(),\n author: item.author,\n invocationId: item.invocationId,\n eventId: item.id,\n timestamp: item.timestamp,\n role,\n raw: item,\n } as IMessage;\n\n if (part.inlineData) {\n msg.inlineData = {\n displayName: part.inlineData.displayName,\n data: part.inlineData.data,\n mimeType: part.inlineData.mimeType,\n } as any;\n }\n if (part.text) {\n msg.text = part.text;\n if (typeof part.thought !== 'undefined') msg.thought = part.thought;\n }\n if (part.functionCall) msg.functionCall = part.functionCall;\n if (part.functionResponse) msg.functionResponse = part.functionResponse;\n if (part.fileData) {\n msg.inlineData = {\n displayName: part.fileData.displayName || '',\n data: part.fileData.fileUri,\n mimeType: part.fileData.mimeType,\n } as any;\n }\n if (part.executableCode) msg.executableCode = part.executableCode;\n if (part.codeExecutionResult) msg.codeExecutionResult = part.codeExecutionResult;\n if (part.errorMessage) msg.text = part.errorMessage;\n\n mapped.push(msg);\n });\n });\n\n setMessages((prev) => (isReplace ? mapped : [...prev, ...mapped]));\n };\n\n\n // 设置当前会话详情\n const setCurrentSessionDetail = async (sessionId: string) => {\n if (sessionId) {\n if (sessionId === currentSessionId) {\n return;\n }\n setCurrentSessionId(sessionId); // 设置当前会话 id;\n const { data, result } = await fetchSessionDetail({\n url,\n appNo,\n sessionId,\n token,\n });\n\n if (result?.code === API_SUCCESS_CODE) {\n setPrologue(appInfo?.onboardingInfo?.prologue || '');\n // 新接口直接返回按 event/item 结构的数组,传入 formatMessages 处理\n if (Array.isArray(data) && data.length > 0) {\n formatMessages(data, true);\n } else {\n setSuggestedQuestions(appInfo?.onboardingInfo?.suggested_questions || []);\n }\n }\n\n } else {\n // 兼容 无 session异常\n setCurrentSessionId(v4());\n }\n };\n\n // 获取聊天记录\n const initAppConversations = async (fetchDetail = false) => {\n try {\n setLoading(true);\n\n const { data = [], pagination, result } = await fetchSessionList({\n url,\n appNo,\n token,\n pageSize: sessionPagination.pageSize,\n });\n\n if (result?.code === API_SUCCESS_CODE) {\n if (data.length > 0) {\n const formatSessions = data.map((item) => {\n return {\n key: item.sessionId,\n label: item.title || '新对话',\n timestamp: new Date(item.startTime).getTime(),\n messages: [],\n meta: {\n ...item,\n },\n };\n });\n\n setSessionList(formatSessions);\n // 设置分页信息\n setSessionPagination({ pageNum: sessionPagination.pageNum, pageSize: sessionPagination.pageSize, total: pagination?.total || 0 });\n const { sessionId } = data?.[0];\n fetchDetail && setCurrentSessionDetail(sessionId);\n // 成功回调\n if (!initialized) {\n onSuccess?.({\n code: SuccessCode.APP_MESSAGES_INIT_SUCCESS,\n message: '初始化聊天记录成功',\n });\n setInitialized(true);\n }\n } else {\n // 无会话记录时,初始化会话详情\n clearChat();\n }\n } else {\n setSessionList([]);\n setCurrentSessionId(v4());\n setPrologue('');\n setSuggestedQuestions([]);\n }\n } catch {\n //\n } finally {\n setLoading(false);\n }\n };\n\n // 删除会话\n const deleteSession = async (sessionId: string) => {\n if (!sessionId) return;\n const { result } = await closeSession({\n url,\n appNo,\n sessionId,\n token,\n });\n if (result?.code === API_SUCCESS_CODE) {\n // 删除成功后,重新获取会话列表\n initAppConversations();\n // 如果删除的是当前会话,则创建新的会话\n if (sessionId === currentSessionId) {\n clearChat();\n }\n }\n };\n\n // 更新会话名称\n const updateSession = async (sessionId: string, title: string) => {\n if (!sessionId && !title) return;\n const { result } = await updateSessionTitle({\n url,\n appNo,\n title,\n sessionId,\n token,\n });\n if (result?.code === API_SUCCESS_CODE) {\n // 编辑成功后,重新获取会话列表\n initAppConversations();\n }\n };\n\n // 初始化应用\n const initConfig = async () => {\n try {\n setLoading(true);\n const { data, result } = await fetchAppConfig({ url, appNo });\n if (result.code === API_SUCCESS_CODE) {\n setAppInfo(data);\n // 成功回调\n onSuccess?.({\n code: SuccessCode.APP_CONFIG_INIT_SUCCESS,\n message: '初始化配置成功',\n });\n } else {\n onError?.({\n code: (result.code as ErrorCode) || ErrorCode.APP_NOT_FOUND,\n message: result.message || '获取应用配置失败',\n });\n }\n } catch (error) {\n onError?.({\n code: ErrorCode.API_ERROR,\n message: '获取应用配置失败',\n });\n } finally {\n setLoading(false);\n }\n };\n\n // 初始化—获取配置\n useEffect(() => {\n if (url && appNo) {\n initConfig();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [url, appNo]);\n\n // 初始化-聊天记录\n useEffect(() => {\n if (appInfo) {\n initAppConversations(true);\n }\n }, [appInfo]);\n\n return {\n appInfo,\n startChat,\n reChat,\n stopChat,\n clearChat,\n suggestChat,\n confirmFnCall,\n initialized,\n currentSessionId,\n sessionList,\n prologue,\n suggestions: suggestedQuestions,\n loading,\n messages: mergedMessages,\n insertSuggestedQuestions,\n insertPrologue,\n deleteSession,\n updateSession,\n setSuggestedQuestions,\n setCurrentSessionDetail,\n setMessages,\n storeEvents,\n storeMessage,\n };\n}\n\nexport default useADKChat;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["useEffect","useCallback","useMemo","useRef","useState","fetchEventSource","EventStreamContentType","message","v4","SESSION_PAGE_SIZE","API_SUCCESS_CODE","SuccessCode","ErrorCode","fetchAppConfig","fetchSessionList","fetchSessionDetail","closeSession","updateSessionTitle","safeJsonParse","combineTextParts","parts","result","combinedTextPart","_iterator","_createForOfIteratorHelper","_step","s","n","done","part","value","text","thought","_objectSpread","push","undefined","err","e","f","useADKChat","_ref","url","token","_ref$config","config","_ref$type","type","onError","onMessage","onSuccess","onStream","_useState","_useState2","_slicedToArray","loading","setLoading","ctrl","_ref2","appNo","_useState3","_useState4","appInfo","setAppInfo","_useState5","_useState6","initialized","setInitialized","_useState7","_useState8","sessionList","setSessionList","_useState9","_useState10","currentSessionId","setCurrentSessionId","_useState11","total","pageNum","pageSize","_useState12","sessionPagination","setSessionPagination","_useState13","_useState14","prologue","setPrologue","_useState15","_useState16","suggestedQuestions","setSuggestedQuestions","_useState17","_useState18","messages","setMessages","mergedMessages","fnResMap","forEach","msg","functionResponse","_msg$functionResponse","id","map","functionCall","_msg$functionCall","textMsgRef","eventDataRef","Map","insertMessage","prev","lastMessage","length","isLoading","concat","_toConsumableArray","slice","insertSuggestedQuestions","suggested_questions","arguments","insertPrologue","updateMessage","m","storeEvents","event","_event$actions","title","actions","artifactDelta","name","executableCode","_part$executableCode$","code","codeExecutionResult","outcome","errorMessage","updatedEvent","newEventData","current","set","storeMessage","role","author","invocationId","eventId","timestamp","inlineData","displayName","data","mimeType","_event$groundingMetad","groundingMetadata","searchEntryPoint","renderedContent","fileData","Object","keys","processPart","_event$groundingMetad2","newChunk","newMessage","partial","processFollowupPart","_event$content","content","processErrorMessage","chunkJson","processActionArtifact","sendMessageRequest","values","Promise","resolve","abort","AbortController","requestUrl","method","signal","body","JSON","stringify","openWhenHidden","headers","stream","Authorization","onopen","response","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_callee$","_context","next","ok","get","status","stop","onmessage","error","warning","_iterator2","_step2","onclose","_textMsgRef$current","onerror","console","startChat","_ref4","_callee2","_ref3","_ref3$text","_ref3$files","files","_callee2$","_context2","abrupt","trim","temp","file","_file$response","_file$response2","fileUri","fileUrl","sessionId","_file$response3","_file$response4","_file$response5","_file$response6","_file$response7","fileName","fileId","tempUrl","fileType","initAppConversations","_x","apply","reChat","newMessages","lastAIIndex","findLastIndex","splice","lastUserMessage","findLast","_lastUserMessage$text","_lastUserMessage$file","confirmFnCall","fnCall","confirmed","suggestChat","stopChat","_ctrl$current","clearChat","_appInfo$onboardingIn","_appInfo$onboardingIn2","newSessionId","onboardingInfo","formatMessages","isReplace","mapped","item","Array","isArray","toLowerCase","filter","p","Boolean","raw","setCurrentSessionDetail","_ref5","_callee3","_yield$fetchSessionDe","_appInfo$onboardingIn3","_appInfo$onboardingIn4","_callee3$","_context3","sent","_x2","_ref6","_callee4","fetchDetail","_yield$fetchSessionLi","_yield$fetchSessionLi2","pagination","formatSessions","_data$","_args4","_callee4$","_context4","key","label","Date","startTime","getTime","meta","APP_MESSAGES_INIT_SUCCESS","t0","finish","deleteSession","_ref7","_callee5","_yield$closeSession","_callee5$","_context5","_x3","updateSession","_ref8","_callee6","_yield$updateSessionT","_callee6$","_context6","_x4","_x5","initConfig","_ref9","_callee7","_yield$fetchAppConfig","_callee7$","_context7","APP_CONFIG_INIT_SUCCESS","APP_NOT_FOUND","API_ERROR","suggestions"],"sources":["../../../src/hooks/useADKChat.ts"],"sourcesContent":["import { useEffect, useCallback, useMemo, useRef, useState } from 'react';\nimport { fetchEventSource, EventStreamContentType } from '@microsoft/fetch-event-source';\nimport { message } from 'antd';\nimport { v4 } from 'uuid';\nimport { SESSION_PAGE_SIZE, API_SUCCESS_CODE } from '@/constants';\nimport {\n SuccessCode,\n ErrorCode,\n DebugOptions,\n FunctionCall,\n SendContent,\n SessionData,\n AgentRunRequest,\n Event,\n FunctionResponse,\n IMessage,\n Part,\n} from '@/types';\nimport {\n fetchAppConfig,\n fetchSessionList,\n fetchSessionDetail,\n closeSession,\n updateSessionTitle,\n type ChatConfig\n} from '@/services/api';\nimport { safeJsonParse } from '@/utils';\n\nconst combineTextParts = (parts: Part[]) => {\n const result: Part[] = [];\n let combinedTextPart: Part|undefined;\n\n // eslint-disable-next-line no-restricted-syntax\n for (const part of parts) {\n if (part.text) {\n // 如果没有 combined 或 combined 思考类型跟当前 part 不同,则创建新的合并引用\n if (!combinedTextPart || combinedTextPart.thought !== part.thought) {\n combinedTextPart = { ...part };\n result.push(combinedTextPart);\n } else {\n combinedTextPart.text += part.text;\n }\n } else {\n combinedTextPart = undefined;\n result.push(part);\n }\n }\n return result;\n};\n\nfunction useADKChat({\n url,\n token,\n config = {},\n type = 'agentDebug',\n onError,\n onMessage,\n onSuccess,\n onStream,\n}: DebugOptions) {\n const [loading, setLoading] = useState(false);\n const ctrl = useRef<AbortController | null>(null);\n // 应用配置\n const { appNo } = config || {};\n // 智能体信息\n // const [appInfo, setAppInfo] = useState<ChatConfig>({\n // appNo,\n // appVersionNo: '',\n // appTheme: '',\n // appName: '',\n // onboardingInfo: {\n // prologue: '',\n // questionFiles: [],\n // suggested_questions: [],\n // },\n // });\n const [appInfo, setAppInfo] = useState<ChatConfig | null>(null);\n // 初始化完成\n const [initialized, setInitialized] = useState(false);\n // 会话记录\n const [sessionList, setSessionList] = useState<SessionData[]>([]);\n // 当前会话\n const [currentSessionId, setCurrentSessionId] = useState<string>('');\n // 会话分页设置\n const [sessionPagination, setSessionPagination] = useState({ total: 0, pageNum: 1, pageSize: SESSION_PAGE_SIZE });\n // 开场白\n const [prologue, setPrologue] = useState<string>('');\n // 建议问题\n const [suggestedQuestions, setSuggestedQuestions] = useState<string[]>([]);\n const [messages, setMessages] = useState<IMessage[]>([]);\n const mergedMessages = useMemo(() => {\n const fnResMap: Record<string, FunctionResponse> = {};\n messages.forEach((msg) => {\n if (msg.functionResponse) {\n fnResMap[msg?.functionResponse?.id || ''] = msg.functionResponse;\n }\n });\n return messages.map((msg) => {\n if (msg.functionCall) {\n return {\n ...msg,\n functionResponse: fnResMap[msg?.functionCall?.id || ''],\n };\n }\n return msg;\n });\n }, [messages]);\n const textMsgRef = useRef<IMessage>(null);\n const eventDataRef = useRef<Map<string, any>>(new Map());\n\n // 插入消息\n const insertMessage = useCallback((msg: IMessage) => {\n setMessages((prev) => {\n const lastMessage = prev[prev.length - 1];\n if (lastMessage?.isLoading) {\n return [...prev.slice(0, -1), msg, lastMessage];\n }\n return [...prev, msg];\n });\n }, []);\n\n // 初始化开场白预设置问题\n const insertSuggestedQuestions = (suggested_questions: string[] = []) => {\n if (!suggested_questions?.length) return;\n // 无消息内容 且 有建议问题时\n if (messages.length === 0 && suggested_questions.length) {\n setSuggestedQuestions(suggested_questions);\n };\n };\n\n // 初始化开场白\n const insertPrologue = (prologue: string) => {\n if (prologue) {\n setPrologue(prologue);\n }\n };\n\n // 更新消息\n const updateMessage = useCallback((msg: IMessage) => {\n setMessages((prev) => {\n return prev.map((m) => {\n if (m.id === msg.id) {\n return msg;\n }\n return m;\n });\n });\n }, []);\n\n // 存储事件\n const storeEvents = useCallback((part: Part | null, event: any) => {\n let title = '';\n\n if (part == null && event.actions?.artifactDelta) {\n title += 'eventAction: artifact';\n } else if (part) {\n if (part.text) {\n title += `text:${part.text}`;\n } else if (part.functionCall) {\n title += `functionCall:${part.functionCall.name}`;\n } else if (part.functionResponse) {\n title += `functionResponse:${part.functionResponse.name}`;\n } else if (part.executableCode) {\n title += `executableCode:${part.executableCode.code?.slice(0, 10)}`;\n } else if (part.codeExecutionResult) {\n title += `codeExecutionResult:${part.codeExecutionResult.outcome}`;\n } else if (part.errorMessage) {\n title += `errorMessage:${part.errorMessage}`;\n }\n }\n\n const updatedEvent = { ...event, title };\n\n const newEventData = new Map(eventDataRef.current);\n newEventData.set(event.id, updatedEvent);\n eventDataRef.current = newEventData;\n }, []);\n\n // 存储消息\n const storeMessage = useCallback((\n part: Part | null,\n event: Event,\n role: 'user' | 'bot',\n ) => {\n const msg: IMessage = {\n id: v4(),\n author: event.author,\n invocationId: event.invocationId,\n eventId: event.id,\n timestamp: event.timestamp,\n role,\n };\n\n if (part) {\n if (part.inlineData) {\n msg.inlineData = {\n displayName: part.inlineData.displayName,\n data: part.inlineData.data,\n mimeType: part.inlineData.mimeType,\n };\n } else if (part.text) {\n msg.text = part.text;\n msg.thought = part.thought;\n\n if (event?.groundingMetadata?.searchEntryPoint?.renderedContent) {\n msg.renderedContent = event.groundingMetadata.searchEntryPoint.renderedContent;\n }\n } else if (part.fileData) {\n msg.fileData = [part.fileData];\n } else if (part.functionCall) {\n msg.functionCall = part.functionCall;\n } else if (part.functionResponse) {\n msg.functionResponse = part.functionResponse;\n } else if (part.executableCode) {\n msg.executableCode = part.executableCode;\n } else if (part.codeExecutionResult) {\n msg.codeExecutionResult = part.codeExecutionResult;\n }\n }\n\n if (part && Object.keys(part).length > 0) {\n insertMessage(msg);\n }\n }, [insertMessage]);\n\n // 处理消息部分(关键更新)\n const processPart = useCallback((event: Event, part: Part) => {\n const renderedContent = event.groundingMetadata?.searchEntryPoint?.renderedContent;\n if (part.text) {\n const newChunk = part.text;\n\n if (!textMsgRef.current || textMsgRef.current.thought !== part.thought) {\n const newMessage: IMessage = {\n id: v4(),\n author: event.author,\n invocationId: event.invocationId,\n eventId: event.id,\n timestamp: event.timestamp,\n role: 'bot',\n text: newChunk,\n thought: part.thought,\n };\n\n if (renderedContent) {\n newMessage.renderedContent = renderedContent;\n }\n\n textMsgRef.current = newMessage;\n // 存储原数据\n storeEvents(part, event);\n // 插入消息\n insertMessage(newMessage);\n } else {\n if (event.partial === false) {\n storeEvents(part, event);\n textMsgRef.current = null;\n return;\n }\n if (renderedContent) {\n textMsgRef.current = {\n ...textMsgRef.current,\n renderedContent,\n };\n }\n textMsgRef.current = {\n ...textMsgRef.current,\n text: (textMsgRef.current.text || '') + newChunk,\n };\n updateMessage(textMsgRef.current);\n }\n } else {\n textMsgRef.current = null;\n storeEvents(part, event);\n storeMessage(\n part,\n event,\n 'bot',\n );\n }\n }, [storeEvents, storeMessage, insertMessage, updateMessage]);\n\n // 处理建议类消息\n const processFollowupPart = useCallback((event: Event) => {\n // 获取建议类消息的文本内容\n const part = event?.content?.parts?.[0] || null;\n const text = part?.text || '';\n storeEvents(part, event);\n if (text) {\n setSuggestedQuestions((prev) => [...prev, text]);\n }\n }, [storeEvents, insertMessage]);\n\n // 处理错误消息\n const processErrorMessage = useCallback((chunkJson: any) => {\n storeEvents(null, chunkJson);\n insertMessage({\n id: v4(),\n text: chunkJson.errorMessage,\n role: 'bot',\n });\n }, [storeEvents, insertMessage]);\n\n // 处理动作和制品\n const processActionArtifact = useCallback((event: any) => {\n if (event.actions && event.actions.artifactDelta) {\n storeEvents(null, event);\n storeMessage(null, event, 'bot');\n }\n }, [storeEvents, storeMessage]);\n\n // 发送消息请求\n const sendMessageRequest = useCallback((values: AgentRunRequest) => {\n return new Promise<void>((resolve) => {\n if (ctrl.current) {\n ctrl.current.abort();\n }\n setLoading(true);\n ctrl.current = new AbortController();\n const requestUrl = `${url}/api/gateway-web/openApi/v1/aizt/app/${appNo}/sendMsgStreaming`;\n\n fetchEventSource(requestUrl, {\n method: 'POST',\n signal: ctrl.current.signal,\n body: JSON.stringify(values),\n openWhenHidden: true,\n headers: {\n 'Content-Type': 'application/json',\n 'Cache-Control': 'no-cache',\n stream: 'true',\n Authorization: `Bearer ${token}`,\n },\n async onopen(response) {\n if (response.ok && response.headers.get('content-type') === EventStreamContentType) {\n // everything's good\n } else if (response.status >= 400 && response.status < 500 && response.status !== 429) {\n resolve();\n } else {\n resolve();\n }\n },\n onmessage: (event) => {\n const chunkJson: Event = safeJsonParse(event.data, {});\n if (chunkJson.error) {\n message.warning(chunkJson.error);\n return;\n }\n onStream?.(chunkJson);\n if (chunkJson.content) {\n // 建议类消息单独处理 \n if (chunkJson.content.role === 'followup') {\n processFollowupPart(chunkJson);\n return;\n }\n // eslint-disable-next-line no-restricted-syntax\n for (const part of combineTextParts(chunkJson.content.parts)) {\n processPart(chunkJson, part);\n }\n } else if (chunkJson.errorMessage) {\n processErrorMessage(chunkJson);\n } else if (chunkJson.actions) {\n processActionArtifact(chunkJson);\n }\n },\n onclose: () => {\n setLoading(false);\n if (textMsgRef.current) {\n onMessage?.(textMsgRef.current?.text || '', textMsgRef.current);\n }\n textMsgRef.current = null;\n resolve();\n },\n onerror: (error) => {\n setLoading(false);\n resolve();\n console.error('EventSource failed:', error);\n throw error;\n },\n });\n });\n }, [type, currentSessionId, processActionArtifact, processErrorMessage, processPart]);\n\n // 发送会话\n const startChat = async ({ text = '', files = [], functionResponse }: SendContent) => {\n if (loading) return;\n if (!text.trim() && !functionResponse) return;\n // 清空建议问题\n setSuggestedQuestions([]);\n // 发送消息\n setMessages((prev) => {\n let temp = [...prev];\n // 如果 text 存在\n if (text.trim()) {\n temp.push({\n id: v4(),\n role: 'user',\n text,\n });\n }\n // 如果file 存在\n if (files.length > 0) {\n temp.push({\n id: v4(),\n role: 'user',\n fileData: files.map(file => ({\n displayName: file.name,\n mimeType: file.response?.mimeType,\n fileUri: file.response?.fileUrl,\n })),\n });\n }\n // 如果 functionResponse 存在\n if (functionResponse) {\n temp.push({\n id: v4(),\n role: 'user',\n functionResponse,\n });\n }\n return temp;\n });\n await sendMessageRequest({\n stream: true,\n sessionId: currentSessionId,\n content: {\n role: 'user',\n parts: functionResponse ? [{ functionResponse }] : [{ text }],\n },\n files: files.map(file => ({\n fileName: file.response?.fileName,\n fileId: file.response?.fileId,\n tempUrl: file.response?.fileUrl,\n type: file.response?.fileType,\n mimeType: file.response?.mimeType,\n })),\n });\n // 获取聊天记录\n initAppConversations();\n };\n\n // 重新发送会话\n const reChat = () => {\n if (loading) return;\n if (messages.length === 0) return;\n setMessages((prev) => {\n const newMessages = [...prev];\n // 删除最后一条 AI 消息\n const lastAIIndex = newMessages.findLastIndex(msg => msg.role === 'bot');\n if (lastAIIndex !== -1) {\n newMessages.splice(lastAIIndex, 1);\n }\n // 清空建议问题\n setSuggestedQuestions([]);\n // 重新发送最后一条用户消息\n const lastUserMessage = newMessages.findLast(msg => msg.role === 'user');\n if (lastUserMessage) {\n const { text = '', fileData = [] } = lastUserMessage;\n sendMessageRequest({\n stream: true,\n sessionId: currentSessionId,\n content: {\n role: 'user',\n parts: [{\n text,\n }],\n },\n files: fileData?.map(file => ({\n fileName: file.displayName,\n tempUrl: file.fileUri,\n mimeType: file.mimeType,\n })),\n });\n }\n\n return newMessages;\n })\n };\n\n // 确认函数调用\n const confirmFnCall = (fnCall: FunctionCall, confirmed: boolean) => {\n const functionResponse = {\n id: fnCall.id,\n name: fnCall.name,\n response: { confirmed },\n };\n startChat({ functionResponse });\n };\n\n // 使用建议问题\n const suggestChat = (text: string) => {\n if (loading) return;\n if (!text.trim()) return;\n setSuggestedQuestions([]);\n startChat({ text });\n };\n // 停止会话\n const stopChat = useCallback(() => {\n ctrl.current?.abort();\n setLoading(false);\n textMsgRef.current = null;\n }, [ctrl]);\n\n // 清除/重置会话\n const clearChat = () => {\n const newSessionId = v4();\n setCurrentSessionId(newSessionId);\n // 重置聊天内容\n stopChat();\n setPrologue(appInfo?.onboardingInfo?.prologue || '');\n setMessages([]);\n setSuggestedQuestions(appInfo?.onboardingInfo?.suggested_questions || []);\n };\n\n // 格式化会话记录\n const formatMessages = (messages: any[], isReplace = false) => {\n const mapped: IMessage[] = [];\n\n messages.forEach((item) => {\n if (!item || !item.content || !Array.isArray(item.content.parts)) return;\n\n const role = (item.content.role || '').toLowerCase() === 'user' ? 'user' : 'bot';\n const parts = Array.isArray(item.content.parts)\n ? item.content.parts.filter((p: any) => {\n if (!p) return false;\n return Boolean(\n p.text || p.inlineData || p.functionCall || p.functionResponse || p.fileData || p.executableCode || p.codeExecutionResult || p.errorMessage\n );\n })\n : [];\n\n if (parts.length === 0) return;\n\n parts.forEach((part: any) => {\n const msg: IMessage = {\n id: v4(),\n author: item.author,\n invocationId: item.invocationId,\n eventId: item.id,\n timestamp: item.timestamp,\n role,\n raw: item,\n } as IMessage;\n\n if (part.inlineData) {\n msg.inlineData = {\n displayName: part.inlineData.displayName,\n data: part.inlineData.data,\n mimeType: part.inlineData.mimeType,\n } as any;\n }\n if (part.text) {\n msg.text = part.text;\n if (typeof part.thought !== 'undefined') msg.thought = part.thought;\n }\n if (part.functionCall) msg.functionCall = part.functionCall;\n if (part.functionResponse) msg.functionResponse = part.functionResponse;\n if (part.fileData) {\n msg.inlineData = {\n displayName: part.fileData.displayName || '',\n data: part.fileData.fileUri,\n mimeType: part.fileData.mimeType,\n } as any;\n }\n if (part.executableCode) msg.executableCode = part.executableCode;\n if (part.codeExecutionResult) msg.codeExecutionResult = part.codeExecutionResult;\n if (part.errorMessage) msg.text = part.errorMessage;\n\n mapped.push(msg);\n });\n });\n\n setMessages((prev) => (isReplace ? mapped : [...prev, ...mapped]));\n };\n\n\n // 设置当前会话详情\n const setCurrentSessionDetail = async (sessionId: string) => {\n if (sessionId) {\n if (sessionId === currentSessionId) {\n return;\n }\n setCurrentSessionId(sessionId); // 设置当前会话 id;\n const { data, result } = await fetchSessionDetail({\n url,\n appNo,\n sessionId,\n token,\n });\n\n if (result?.code === API_SUCCESS_CODE) {\n setPrologue(appInfo?.onboardingInfo?.prologue || '');\n // 新接口直接返回按 event/item 结构的数组,传入 formatMessages 处理\n if (Array.isArray(data) && data.length > 0) {\n formatMessages(data, true);\n } else {\n setSuggestedQuestions(appInfo?.onboardingInfo?.suggested_questions || []);\n }\n }\n\n } else {\n // 兼容 无 session异常\n setCurrentSessionId(v4());\n }\n };\n\n // 获取聊天记录\n const initAppConversations = async (fetchDetail = false) => {\n try {\n setLoading(true);\n\n const { data = [], pagination, result } = await fetchSessionList({\n url,\n appNo,\n token,\n pageSize: sessionPagination.pageSize,\n });\n\n if (result?.code === API_SUCCESS_CODE) {\n if (data.length > 0) {\n const formatSessions = data.map((item) => {\n return {\n key: item.sessionId,\n label: item.title || '新对话',\n timestamp: new Date(item.startTime).getTime(),\n messages: [],\n meta: {\n ...item,\n },\n };\n });\n\n setSessionList(formatSessions);\n // 设置分页信息\n setSessionPagination({ pageNum: sessionPagination.pageNum, pageSize: sessionPagination.pageSize, total: pagination?.total || 0 });\n const { sessionId } = data?.[0];\n fetchDetail && setCurrentSessionDetail(sessionId);\n // 成功回调\n if (!initialized) {\n onSuccess?.({\n code: SuccessCode.APP_MESSAGES_INIT_SUCCESS,\n message: '初始化聊天记录成功',\n });\n setInitialized(true);\n }\n } else {\n // 无会话记录时,初始化会话详情\n clearChat();\n }\n } else {\n setSessionList([]);\n setCurrentSessionId(v4());\n setPrologue('');\n setSuggestedQuestions([]);\n }\n } catch {\n //\n } finally {\n setLoading(false);\n }\n };\n\n // 删除会话\n const deleteSession = async (sessionId: string) => {\n if (!sessionId) return;\n const { result } = await closeSession({\n url,\n appNo,\n sessionId,\n token,\n });\n if (result?.code === API_SUCCESS_CODE) {\n // 删除成功后,重新获取会话列表\n initAppConversations();\n // 如果删除的是当前会话,则创建新的会话\n if (sessionId === currentSessionId) {\n clearChat();\n }\n } else {\n message.error('删除会话失败');\n }\n };\n\n // 更新会话名称\n const updateSession = async (sessionId: string, title: string) => {\n if (!sessionId && !title) return;\n const { result } = await updateSessionTitle({\n url,\n appNo,\n title,\n sessionId,\n token,\n });\n if (result?.code === API_SUCCESS_CODE) {\n // 编辑成功后,重新获取会话列表\n initAppConversations();\n } else {\n message.error('更新会话失败');\n }\n };\n\n // 初始化应用\n const initConfig = async () => {\n try {\n setLoading(true);\n const { data, result } = await fetchAppConfig({ url, appNo });\n if (result.code === API_SUCCESS_CODE) {\n setAppInfo(data);\n // 成功回调\n onSuccess?.({\n code: SuccessCode.APP_CONFIG_INIT_SUCCESS,\n message: '初始化配置成功',\n });\n } else {\n onError?.({\n code: (result.code as ErrorCode) || ErrorCode.APP_NOT_FOUND,\n message: result.message || '获取应用配置失败',\n });\n }\n } catch (error) {\n onError?.({\n code: ErrorCode.API_ERROR,\n message: '获取应用配置失败',\n });\n } finally {\n setLoading(false);\n }\n };\n\n // 初始化—获取配置\n useEffect(() => {\n if (url && appNo) {\n initConfig();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [url, appNo]);\n\n // 初始化-聊天记录\n useEffect(() => {\n if (appInfo) {\n initAppConversations(true);\n }\n }, [appInfo]);\n\n return {\n appInfo,\n startChat,\n reChat,\n stopChat,\n clearChat,\n suggestChat,\n confirmFnCall,\n initialized,\n currentSessionId,\n sessionList,\n prologue,\n suggestions: suggestedQuestions,\n loading,\n messages: mergedMessages,\n insertSuggestedQuestions,\n insertPrologue,\n deleteSession,\n updateSession,\n setSuggestedQuestions,\n setCurrentSessionDetail,\n setMessages,\n storeEvents,\n storeMessage,\n };\n}\n\nexport default useADKChat;\n"],"mappings":"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"}
|
package/dist/esm/services/api.js
CHANGED
|
@@ -146,7 +146,8 @@ export var closeSession = /*#__PURE__*/function () {
|
|
|
146
146
|
return request.delete("".concat(url, "/api/gateway-web/openApi/v1/aizt/app/").concat(appNo, "/sessions/").concat(sessionId), {
|
|
147
147
|
headers: {
|
|
148
148
|
Authorization: "Bearer ".concat(token)
|
|
149
|
-
}
|
|
149
|
+
},
|
|
150
|
+
data: {}
|
|
150
151
|
});
|
|
151
152
|
case 3:
|
|
152
153
|
response = _context5.sent;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["request","fetchAppConfig","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref","url","appNo","response","wrap","_callee$","_context","prev","next","get","concat","headers","sent","abrupt","data","stop","_x","apply","arguments","sendMessage","_ref4","_callee2","_ref3","msg","_callee2$","_context2","post","_x2","fetchSessionList","_ref6","_callee3","_ref5","_ref5$pageSize","pageSize","_ref5$pageNum","pageNum","token","_callee3$","_context3","Authorization","_x3","fetchSessionDetail","_ref8","_callee4","_ref7","sessionId","_ref7$pageSize","_ref7$pageNum","_callee4$","_context4","_x4","closeSession","_ref10","_callee5","_ref9","_callee5$","_context5","delete","_x5","updateSessionTitle","_ref12","_callee6","_ref11","title","_callee6$","_context6","put","_x6","addFeedback","_ref13","_callee7","params","requestId","rest","_callee7$","_context7","_objectWithoutProperties","_excluded","_x7"],"sources":["../../../src/services/api.ts"],"sourcesContent":["import { request } from '@/utils/request';\n\n// 服务端API响应接口\nexport interface ServerApiResponse<T = unknown> {\n data: T;\n code: string;\n success: boolean;\n message: string;\n serverTime: number;\n traceId: string;\n}\n\n// 标准API响应类型\nexport interface ApiResponse<T> {\n data: T;\n pagination?: {\n hasMore: boolean;\n nextPage: number;\n total: number;\n };\n result: {\n status: string;\n message?: string;\n code: string;\n }\n}\n\n// 聊天配置类型\nexport interface ChatConfig {\n workspaceNo?: string;\n appNo: string;\n appName: string;\n appTheme: string;\n description?: string;\n icon?: string;\n onboardingInfo: {\n prologue: string;\n questionFiles?: { question: string; }[];\n // eslint-disable-next-line camelcase\n suggested_questions: string[];\n };\n appVersionNo?: string;\n publishDTO?: {\n id: number;\n tenantId: string;\n workspaceNo: string;\n publishNo: string;\n publishTime: string;\n publishVersionNo: string;\n publishVersionDesc: string;\n publishAppType: string;\n platformConfigInfo: string;\n appNo: string;\n appVersionNo: string;\n sessionTime?: string;\n enableFlag: number;\n gmtModified: string;\n creator: string;\n modifier: string;\n isDeleted: string;\n authLoginInfoDTO: Record<string, unknown>;\n shareLink: string;\n };\n}\n\n// 会话记录\nexport interface SessionData {\n sessionId: string;\n startTime: string;\n userId: string;\n title: string;\n workspaceNo: string;\n appNo: string;\n isLike: 1 | 0 | -1;\n}\n\n/**\n * 获取聊天配置\n * 使用request,会自动添加token\n */\nexport const fetchAppConfig = async ({ url, appNo }: { url: string; appNo: string }): Promise<ApiResponse<ChatConfig>> => {\n const response = await request.get<ApiResponse<ChatConfig>>(`${url}/api/gateway-web/openApi/v1/aizt/app/${appNo}`, {\n headers: {\n 'Content-Type': 'application/json',\n 'x-za-application': appNo,\n },\n });\n return response.data;\n};\n\n/**\n * 发送消息\n * 使用request,会自动添加token\n */\nexport const sendMessage = async ({ url, appNo, msg }: { url: string; appNo: string; msg: string }): Promise<ApiResponse<ChatConfig>> => {\n const response = await request.post<ApiResponse<ChatConfig>>(`${url}/api/gateway-web/openApi/v1/aizt/app/${appNo}/sendMsgSteaming`, {\n msg,\n });\n return response.data;\n};\n\n/**\n * 获取会话列表\n */\nexport const fetchSessionList = async ({ url, appNo, pageSize = 10, pageNum = 1, token }:\n { url: string; appNo: string; pageSize?: number; pageNum?: number; token: string }) => {\n const response = await request.get<ApiResponse<SessionData[]>>(`${url}/api/gateway-web/openApi/v1/aizt/app/${appNo}/sessions?limit=${pageSize}&page=${pageNum}`, {\n headers: {\n Authorization: `Bearer ${token}`,\n },\n });\n\n return response.data;\n};\n\nexport interface SessionDetailAction {\n artifactDelta: Record<string, unknown>;\n requestedAuthConfigs: Record<string, unknown>;\n stateDelta: Record<string, unknown>;\n requestedToolConfirmations: Record<string, unknown>;\n}\n\nexport interface SessionDetailPartFileData {\n displayName: string;\n fileUri: string;\n mimeType: string;\n}\n\nexport interface SessionDetailPart {\n // 可能包含文本、文件等不同类型字段\n text?: string;\n fileData?: SessionDetailPartFileData;\n [key: string]: unknown;\n}\n\nexport interface SessionDetail {\n author: string;\n id: string;\n sessionId: string;\n invocationId?: string;\n actions: SessionDetailAction;\n content: {\n role: string; // e.g. 'user' or 'model'\n parts: SessionDetailPart[];\n };\n timestamp: number;\n [key: string]: unknown;\n}\n\n/**\n * 获取会话明细\n */\nexport const fetchSessionDetail = async ({ url, appNo, sessionId, pageSize = 999, pageNum = 1, token }:\n { url: string; appNo: string; sessionId: string; pageSize?: number; pageNum?: number; token: string }) => {\n const response = await request.get<ApiResponse<SessionDetail[]>>(`${url}/api/gateway-web/openApi/v1/aizt/app/${appNo}/sessionDetails?sessionId=${sessionId}&page=${pageNum}&limit=${pageSize}`, {\n headers: {\n Authorization: `Bearer ${token}`,\n },\n });\n\n return response.data;\n};\n\n/**\n * 删除会话\n */\nexport const closeSession = async ({ url, appNo, sessionId, token }:\n { url: string; appNo: string; sessionId: string; token: string }) => {\n const response = await request.delete<ApiResponse<boolean>>(`${url}/api/gateway-web/openApi/v1/aizt/app/${appNo}/sessions/${sessionId}`, {\n headers: {\n Authorization: `Bearer ${token}`,\n },\n });\n\n return response.data;\n};\n\n/**\n * 修改会话标题\n */\nexport const updateSessionTitle = async ({ url, appNo, sessionId, title, token }:\n { url: string; appNo: string; sessionId: string; title: string; token: string }) => {\n const response = await request.put<ApiResponse<boolean>>(`${url}/api/gateway-web/openApi/v1/aizt/app/${appNo}/sessions/${sessionId}/updateSessionTitle`, {\n title,\n }, {\n headers: {\n Authorization: `Bearer ${token}`,\n },\n });\n\n return response.data;\n};\n\nexport const addFeedback = async (params: {\n url: string;\n appNo: string;\n token: string;\n requestId: string;\n isLike: 1 | -1;\n feedbackTags?: string;\n feedbackDescription?: string;\n}) => {\n const { url, appNo, token, requestId, ...rest } = params;\n const response = await request.post<ApiResponse<void>>(`${url}/api/gateway-web/openApi/v1/aizt/app/${appNo}/invocation/${requestId}/feedback`, rest, {\n headers: {\n Authorization: `Bearer ${token}`,\n },\n });\n\n return response.data;\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["request","fetchAppConfig","_ref2","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref","url","appNo","response","wrap","_callee$","_context","prev","next","get","concat","headers","sent","abrupt","data","stop","_x","apply","arguments","sendMessage","_ref4","_callee2","_ref3","msg","_callee2$","_context2","post","_x2","fetchSessionList","_ref6","_callee3","_ref5","_ref5$pageSize","pageSize","_ref5$pageNum","pageNum","token","_callee3$","_context3","Authorization","_x3","fetchSessionDetail","_ref8","_callee4","_ref7","sessionId","_ref7$pageSize","_ref7$pageNum","_callee4$","_context4","_x4","closeSession","_ref10","_callee5","_ref9","_callee5$","_context5","delete","_x5","updateSessionTitle","_ref12","_callee6","_ref11","title","_callee6$","_context6","put","_x6","addFeedback","_ref13","_callee7","params","requestId","rest","_callee7$","_context7","_objectWithoutProperties","_excluded","_x7"],"sources":["../../../src/services/api.ts"],"sourcesContent":["import { request } from '@/utils/request';\n\n// 服务端API响应接口\nexport interface ServerApiResponse<T = unknown> {\n data: T;\n code: string;\n success: boolean;\n message: string;\n serverTime: number;\n traceId: string;\n}\n\n// 标准API响应类型\nexport interface ApiResponse<T> {\n data: T;\n pagination?: {\n hasMore: boolean;\n nextPage: number;\n total: number;\n };\n result: {\n status: string;\n message?: string;\n code: string;\n }\n}\n\n// 聊天配置类型\nexport interface ChatConfig {\n workspaceNo?: string;\n appNo: string;\n appName: string;\n appTheme: string;\n description?: string;\n icon?: string;\n onboardingInfo: {\n prologue: string;\n questionFiles?: { question: string; }[];\n // eslint-disable-next-line camelcase\n suggested_questions: string[];\n };\n appVersionNo?: string;\n publishDTO?: {\n id: number;\n tenantId: string;\n workspaceNo: string;\n publishNo: string;\n publishTime: string;\n publishVersionNo: string;\n publishVersionDesc: string;\n publishAppType: string;\n platformConfigInfo: string;\n appNo: string;\n appVersionNo: string;\n sessionTime?: string;\n enableFlag: number;\n gmtModified: string;\n creator: string;\n modifier: string;\n isDeleted: string;\n authLoginInfoDTO: Record<string, unknown>;\n shareLink: string;\n };\n}\n\n// 会话记录\nexport interface SessionData {\n sessionId: string;\n startTime: string;\n userId: string;\n title: string;\n workspaceNo: string;\n appNo: string;\n isLike: 1 | 0 | -1;\n}\n\n/**\n * 获取聊天配置\n * 使用request,会自动添加token\n */\nexport const fetchAppConfig = async ({ url, appNo }: { url: string; appNo: string }): Promise<ApiResponse<ChatConfig>> => {\n const response = await request.get<ApiResponse<ChatConfig>>(`${url}/api/gateway-web/openApi/v1/aizt/app/${appNo}`, {\n headers: {\n 'Content-Type': 'application/json',\n 'x-za-application': appNo,\n },\n });\n return response.data;\n};\n\n/**\n * 发送消息\n * 使用request,会自动添加token\n */\nexport const sendMessage = async ({ url, appNo, msg }: { url: string; appNo: string; msg: string }): Promise<ApiResponse<ChatConfig>> => {\n const response = await request.post<ApiResponse<ChatConfig>>(`${url}/api/gateway-web/openApi/v1/aizt/app/${appNo}/sendMsgSteaming`, {\n msg,\n });\n return response.data;\n};\n\n/**\n * 获取会话列表\n */\nexport const fetchSessionList = async ({ url, appNo, pageSize = 10, pageNum = 1, token }:\n { url: string; appNo: string; pageSize?: number; pageNum?: number; token: string }) => {\n const response = await request.get<ApiResponse<SessionData[]>>(`${url}/api/gateway-web/openApi/v1/aizt/app/${appNo}/sessions?limit=${pageSize}&page=${pageNum}`, {\n headers: {\n Authorization: `Bearer ${token}`,\n },\n });\n\n return response.data;\n};\n\nexport interface SessionDetailAction {\n artifactDelta: Record<string, unknown>;\n requestedAuthConfigs: Record<string, unknown>;\n stateDelta: Record<string, unknown>;\n requestedToolConfirmations: Record<string, unknown>;\n}\n\nexport interface SessionDetailPartFileData {\n displayName: string;\n fileUri: string;\n mimeType: string;\n}\n\nexport interface SessionDetailPart {\n // 可能包含文本、文件等不同类型字段\n text?: string;\n fileData?: SessionDetailPartFileData;\n [key: string]: unknown;\n}\n\nexport interface SessionDetail {\n author: string;\n id: string;\n sessionId: string;\n invocationId?: string;\n actions: SessionDetailAction;\n content: {\n role: string; // e.g. 'user' or 'model'\n parts: SessionDetailPart[];\n };\n timestamp: number;\n [key: string]: unknown;\n}\n\n/**\n * 获取会话明细\n */\nexport const fetchSessionDetail = async ({ url, appNo, sessionId, pageSize = 999, pageNum = 1, token }:\n { url: string; appNo: string; sessionId: string; pageSize?: number; pageNum?: number; token: string }) => {\n const response = await request.get<ApiResponse<SessionDetail[]>>(`${url}/api/gateway-web/openApi/v1/aizt/app/${appNo}/sessionDetails?sessionId=${sessionId}&page=${pageNum}&limit=${pageSize}`, {\n headers: {\n Authorization: `Bearer ${token}`,\n },\n });\n\n return response.data;\n};\n\n/**\n * 删除会话\n */\nexport const closeSession = async ({ url, appNo, sessionId, token }:\n { url: string; appNo: string; sessionId: string; token: string }) => {\n const response = await request.delete<ApiResponse<boolean>>(`${url}/api/gateway-web/openApi/v1/aizt/app/${appNo}/sessions/${sessionId}`, {\n headers: {\n Authorization: `Bearer ${token}`,\n },\n data: {}\n });\n\n return response.data;\n};\n\n/**\n * 修改会话标题\n */\nexport const updateSessionTitle = async ({ url, appNo, sessionId, title, token }:\n { url: string; appNo: string; sessionId: string; title: string; token: string }) => {\n const response = await request.put<ApiResponse<boolean>>(`${url}/api/gateway-web/openApi/v1/aizt/app/${appNo}/sessions/${sessionId}/updateSessionTitle`, {\n title,\n }, {\n headers: {\n Authorization: `Bearer ${token}`,\n },\n });\n\n return response.data;\n};\n\nexport const addFeedback = async (params: {\n url: string;\n appNo: string;\n token: string;\n requestId: string;\n isLike: 1 | -1;\n feedbackTags?: string;\n feedbackDescription?: string;\n}) => {\n const { url, appNo, token, requestId, ...rest } = params;\n const response = await request.post<ApiResponse<void>>(`${url}/api/gateway-web/openApi/v1/aizt/app/${appNo}/invocation/${requestId}/feedback`, rest, {\n headers: {\n Authorization: `Bearer ${token}`,\n },\n });\n\n return response.data;\n};\n"],"mappings":"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"}
|
|
@@ -11,6 +11,22 @@ export interface DebugOptions {
|
|
|
11
11
|
onStream?: (data: Event) => void;
|
|
12
12
|
onMessage?: (content: string, data: IMessage) => void;
|
|
13
13
|
}
|
|
14
|
+
/**
|
|
15
|
+
* 事件状态码枚举
|
|
16
|
+
* @enum {string}
|
|
17
|
+
* @version 1.0.0
|
|
18
|
+
*/
|
|
19
|
+
export declare enum EventCode {
|
|
20
|
+
/** 切换会话 */
|
|
21
|
+
SESSION_SWITCH = "SESSION_SWITCH",
|
|
22
|
+
/** 开启新会话 */
|
|
23
|
+
SESSION_CREATE = "SESSION_CREATE"
|
|
24
|
+
}
|
|
25
|
+
export type handleEvent = {
|
|
26
|
+
code: EventCode;
|
|
27
|
+
message: string;
|
|
28
|
+
data?: any;
|
|
29
|
+
};
|
|
14
30
|
/**
|
|
15
31
|
* renderFooter insert 参数说明
|
|
16
32
|
*/
|
|
@@ -90,6 +106,25 @@ export interface XAdkProviderProps {
|
|
|
90
106
|
* Provider 唯一标识
|
|
91
107
|
*/
|
|
92
108
|
providerId?: string;
|
|
109
|
+
/**
|
|
110
|
+
* 获取应用信息
|
|
111
|
+
* @type {() => any}
|
|
112
|
+
* @version 1.0.0
|
|
113
|
+
*/
|
|
114
|
+
getData: () => any;
|
|
115
|
+
/**
|
|
116
|
+
* 发送聊天消息
|
|
117
|
+
* @param content - 消息内容
|
|
118
|
+
* @type {(content: string) => void}
|
|
119
|
+
* @version 1.0.0
|
|
120
|
+
*/
|
|
121
|
+
chat: (content: SendContent) => void;
|
|
122
|
+
/**
|
|
123
|
+
* 停止聊天
|
|
124
|
+
* @type {() => void}
|
|
125
|
+
* @version 1.0.0
|
|
126
|
+
*/
|
|
127
|
+
stop: () => void;
|
|
93
128
|
/**
|
|
94
129
|
* 消息成功回调
|
|
95
130
|
*/
|
|
@@ -106,6 +141,10 @@ export interface XAdkProviderProps {
|
|
|
106
141
|
* 每条消息回调
|
|
107
142
|
*/
|
|
108
143
|
onMessage?: (content: string, data: IMessage) => void;
|
|
144
|
+
/**
|
|
145
|
+
* 事件回调
|
|
146
|
+
*/
|
|
147
|
+
onEvent?: (event: handleEvent) => void;
|
|
109
148
|
/**
|
|
110
149
|
* 自定义插槽渲染函数
|
|
111
150
|
*/
|