@ai-group/chat-sdk 2.1.13 → 3.0.1-alpha.2
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/XAdkChatbot.stories.d.ts +9 -2
- package/dist/cjs/components/XAdkChatbot/XAdkChatbot.stories.js +564 -10
- package/dist/cjs/components/XAdkChatbot/XAdkChatbot.stories.js.map +2 -2
- package/dist/cjs/components/XAdkChatbot/components/FileGallery/index.d.ts +12 -0
- package/dist/cjs/components/XAdkChatbot/components/FileGallery/index.js +92 -0
- package/dist/cjs/components/XAdkChatbot/components/FileGallery/index.js.map +7 -0
- package/dist/cjs/components/XAdkChatbot/components/FileGallery/styles.d.ts +44 -0
- package/dist/cjs/components/XAdkChatbot/components/FileGallery/styles.js +137 -0
- package/dist/cjs/components/XAdkChatbot/components/FileGallery/styles.js.map +7 -0
- package/dist/cjs/components/XAdkChatbot/components/FunctionCallRender/index.d.ts +1 -1
- package/dist/cjs/components/XAdkChatbot/components/FunctionCallRender/index.js +41 -5
- package/dist/cjs/components/XAdkChatbot/components/FunctionCallRender/index.js.map +2 -2
- package/dist/cjs/components/XAdkChatbot/components/FunctionCallRender/styles.d.ts +1 -0
- package/dist/cjs/components/XAdkChatbot/components/FunctionCallRender/styles.js +14 -3
- package/dist/cjs/components/XAdkChatbot/components/FunctionCallRender/styles.js.map +2 -2
- package/dist/cjs/components/XAdkChatbot/index.d.ts +11 -1
- package/dist/cjs/components/XAdkChatbot/index.js +294 -108
- package/dist/cjs/components/XAdkChatbot/index.js.map +3 -3
- package/dist/cjs/components/XAdkChatbot/styles.d.ts +10 -0
- package/dist/cjs/components/XAdkChatbot/styles.js +67 -3
- package/dist/cjs/components/XAdkChatbot/styles.js.map +2 -2
- package/dist/cjs/components/XAdkProvider/XAdkProvider.stories.d.ts +10 -0
- package/dist/cjs/components/XAdkProvider/XAdkProvider.stories.js +394 -0
- package/dist/cjs/components/XAdkProvider/XAdkProvider.stories.js.map +7 -0
- package/dist/cjs/components/XAdkProvider/compound/Chatbot.d.ts +30 -0
- package/dist/cjs/components/XAdkProvider/compound/Chatbot.js +64 -0
- package/dist/cjs/components/XAdkProvider/compound/Chatbot.js.map +7 -0
- package/dist/cjs/components/XAdkProvider/compound/DefaultLayout.d.ts +26 -0
- package/dist/cjs/components/XAdkProvider/compound/DefaultLayout.js +199 -0
- package/dist/cjs/components/XAdkProvider/compound/DefaultLayout.js.map +7 -0
- package/dist/cjs/components/XAdkProvider/compound/DislikeFeedBack.d.ts +8 -0
- package/dist/cjs/components/XAdkProvider/compound/DislikeFeedBack.js +117 -0
- package/dist/cjs/components/XAdkProvider/compound/DislikeFeedBack.js.map +7 -0
- package/dist/cjs/components/XAdkProvider/compound/FeedbackTags.d.ts +7 -0
- package/dist/cjs/components/XAdkProvider/compound/FeedbackTags.js +64 -0
- package/dist/cjs/components/XAdkProvider/compound/FeedbackTags.js.map +7 -0
- package/dist/cjs/components/XAdkProvider/compound/Header.d.ts +25 -0
- package/dist/cjs/components/XAdkProvider/compound/Header.js +70 -0
- package/dist/cjs/components/XAdkProvider/compound/Header.js.map +7 -0
- package/dist/cjs/components/XAdkProvider/compound/Messages.d.ts +17 -0
- package/dist/cjs/components/XAdkProvider/compound/Messages.js +70 -0
- package/dist/cjs/components/XAdkProvider/compound/Messages.js.map +7 -0
- package/dist/cjs/components/XAdkProvider/compound/Sender.d.ts +27 -0
- package/dist/cjs/components/XAdkProvider/compound/Sender.js +55 -0
- package/dist/cjs/components/XAdkProvider/compound/Sender.js.map +7 -0
- package/dist/cjs/components/XAdkProvider/compound/Sidebar.d.ts +24 -0
- package/dist/cjs/components/XAdkProvider/compound/Sidebar.js +151 -0
- package/dist/cjs/components/XAdkProvider/compound/Sidebar.js.map +7 -0
- package/dist/cjs/components/XAdkProvider/compound/Welcome.d.ts +6 -0
- package/dist/cjs/components/XAdkProvider/compound/Welcome.js +60 -0
- package/dist/cjs/components/XAdkProvider/compound/Welcome.js.map +7 -0
- package/dist/cjs/components/XAdkProvider/compound/index.d.ts +17 -0
- package/dist/cjs/components/XAdkProvider/compound/index.js +55 -0
- package/dist/cjs/components/XAdkProvider/compound/index.js.map +7 -0
- package/dist/cjs/components/XAdkProvider/compound/styles.d.ts +36 -0
- package/dist/cjs/components/XAdkProvider/compound/styles.js +49 -0
- package/dist/cjs/components/XAdkProvider/compound/styles.js.map +7 -0
- package/dist/cjs/components/XAdkProvider/context/ChatActionContext.d.ts +30 -0
- package/dist/cjs/components/XAdkProvider/context/ChatActionContext.js +40 -0
- package/dist/cjs/components/XAdkProvider/context/ChatActionContext.js.map +7 -0
- package/dist/cjs/components/XAdkProvider/context/ChatStateContext.d.ts +35 -0
- package/dist/cjs/components/XAdkProvider/context/ChatStateContext.js +42 -0
- package/dist/cjs/components/XAdkProvider/context/ChatStateContext.js.map +7 -0
- package/dist/cjs/components/XAdkProvider/context/SessionContext.d.ts +29 -0
- package/dist/cjs/components/XAdkProvider/context/SessionContext.js +40 -0
- package/dist/cjs/components/XAdkProvider/context/SessionContext.js.map +7 -0
- package/dist/cjs/components/XAdkProvider/context/index.d.ts +7 -0
- package/dist/cjs/components/XAdkProvider/context/index.js +28 -0
- package/dist/cjs/components/XAdkProvider/context/index.js.map +7 -0
- package/dist/cjs/components/XAdkProvider/index.d.ts +55 -0
- package/dist/cjs/components/XAdkProvider/index.js +221 -0
- package/dist/cjs/components/XAdkProvider/index.js.map +7 -0
- package/dist/cjs/components/{XAdkWebProvider → XAdkProvider}/styles.js +2 -1
- package/dist/cjs/components/XAdkProvider/styles.js.map +7 -0
- package/dist/cjs/components/XAdkSender/FileGallery.d.ts +8 -0
- package/dist/cjs/components/XAdkSender/FileGallery.js +381 -0
- package/dist/cjs/components/XAdkSender/FileGallery.js.map +7 -0
- package/dist/cjs/components/XAdkSender/index.js +95 -81
- package/dist/cjs/components/XAdkSender/index.js.map +3 -3
- package/dist/cjs/components/XAdkSender/styles.d.ts +0 -9
- package/dist/cjs/components/XAdkSender/styles.js +21 -150
- package/dist/cjs/components/XAdkSender/styles.js.map +2 -2
- package/dist/cjs/components/XAiConversations/index.js +1 -1
- package/dist/cjs/components/XAiConversations/index.js.map +2 -2
- package/dist/cjs/components/XAiConversations/styles.js +5 -0
- package/dist/cjs/components/XAiConversations/styles.js.map +2 -2
- package/dist/cjs/components/XAiThoughtChain/XAiThoughtChain.stories.d.ts +6 -0
- package/dist/cjs/components/XAiThoughtChain/XAiThoughtChain.stories.js +180 -0
- package/dist/cjs/components/XAiThoughtChain/XAiThoughtChain.stories.js.map +7 -0
- package/dist/cjs/components/XAiThoughtChain/index.d.ts +4 -0
- package/dist/cjs/components/XAiThoughtChain/index.js +155 -0
- package/dist/cjs/components/XAiThoughtChain/index.js.map +7 -0
- package/dist/cjs/components/XAiThoughtChain/styles.d.ts +60 -0
- package/dist/cjs/components/XAiThoughtChain/styles.js +195 -0
- package/dist/cjs/components/XAiThoughtChain/styles.js.map +7 -0
- package/dist/cjs/hooks/useADKChat.d.ts +9 -3
- package/dist/cjs/hooks/useADKChat.js +246 -182
- package/dist/cjs/hooks/useADKChat.js.map +2 -2
- package/dist/cjs/index.d.ts +25 -9
- package/dist/cjs/index.js +37 -0
- package/dist/cjs/index.js.map +3 -3
- package/dist/cjs/styles/common.js +1 -1
- package/dist/cjs/styles/common.js.map +2 -2
- package/dist/cjs/types/ChatHook.d.ts +81 -0
- package/dist/cjs/types/ChatHook.js +18 -0
- package/dist/cjs/types/ChatHook.js.map +7 -0
- package/dist/cjs/types/XAdkChatbot.d.ts +80 -15
- package/dist/cjs/types/XAdkChatbot.js.map +1 -1
- package/dist/cjs/types/XAdkProvider.d.ts +10 -27
- package/dist/cjs/types/XAdkProvider.js.map +2 -2
- package/dist/cjs/types/XAdkSender.d.ts +18 -0
- package/dist/cjs/types/XAdkSender.js.map +1 -1
- package/dist/cjs/types/XAiConversations.d.ts +4 -2
- package/dist/cjs/types/XAiConversations.js.map +1 -1
- package/dist/cjs/types/XAiThoughtChain.d.ts +25 -0
- package/dist/cjs/types/XAiThoughtChain.js +18 -0
- package/dist/cjs/types/XAiThoughtChain.js.map +7 -0
- package/dist/cjs/types/index.d.ts +9 -8
- package/dist/cjs/types/index.js +2 -0
- package/dist/cjs/types/index.js.map +2 -2
- package/dist/cjs/utils/index.d.ts +2 -0
- package/dist/cjs/utils/index.js +11 -1
- package/dist/cjs/utils/index.js.map +2 -2
- package/dist/cjs/utils/parseAgentMessage.d.ts +81 -0
- package/dist/cjs/utils/parseAgentMessage.js +180 -0
- package/dist/cjs/utils/parseAgentMessage.js.map +7 -0
- package/dist/cjs/utils/umdEntry.d.ts +91 -0
- package/dist/cjs/utils/umdEntry.js +108 -6
- package/dist/cjs/utils/umdEntry.js.map +3 -3
- package/dist/esm/components/XAdkChatbot/XAdkChatbot.stories.d.ts +9 -2
- package/dist/esm/components/XAdkChatbot/XAdkChatbot.stories.js +485 -8
- package/dist/esm/components/XAdkChatbot/XAdkChatbot.stories.js.map +1 -1
- package/dist/esm/components/XAdkChatbot/components/FileGallery/index.d.ts +12 -0
- package/dist/esm/components/XAdkChatbot/components/FileGallery/index.js +104 -0
- package/dist/esm/components/XAdkChatbot/components/FileGallery/index.js.map +1 -0
- package/dist/esm/components/XAdkChatbot/components/FileGallery/styles.d.ts +44 -0
- package/dist/esm/components/XAdkChatbot/components/FileGallery/styles.js +20 -0
- package/dist/esm/components/XAdkChatbot/components/FileGallery/styles.js.map +1 -0
- package/dist/esm/components/XAdkChatbot/components/FunctionCallRender/index.d.ts +1 -1
- package/dist/esm/components/XAdkChatbot/components/FunctionCallRender/index.js +17 -15
- package/dist/esm/components/XAdkChatbot/components/FunctionCallRender/index.js.map +1 -1
- package/dist/esm/components/XAdkChatbot/components/FunctionCallRender/styles.d.ts +1 -0
- package/dist/esm/components/XAdkChatbot/components/FunctionCallRender/styles.js +7 -6
- package/dist/esm/components/XAdkChatbot/components/FunctionCallRender/styles.js.map +1 -1
- package/dist/esm/components/XAdkChatbot/index.d.ts +11 -1
- package/dist/esm/components/XAdkChatbot/index.js +392 -174
- package/dist/esm/components/XAdkChatbot/index.js.map +1 -1
- package/dist/esm/components/XAdkChatbot/styles.d.ts +10 -0
- package/dist/esm/components/XAdkChatbot/styles.js +23 -12
- package/dist/esm/components/XAdkChatbot/styles.js.map +1 -1
- package/dist/esm/components/XAdkProvider/XAdkProvider.stories.d.ts +10 -0
- package/dist/esm/components/XAdkProvider/XAdkProvider.stories.js +338 -0
- package/dist/esm/components/XAdkProvider/XAdkProvider.stories.js.map +1 -0
- package/dist/esm/components/XAdkProvider/compound/Chatbot.d.ts +30 -0
- package/dist/esm/components/XAdkProvider/compound/Chatbot.js +47 -0
- package/dist/esm/components/XAdkProvider/compound/Chatbot.js.map +1 -0
- package/dist/esm/components/XAdkProvider/compound/DefaultLayout.d.ts +26 -0
- package/dist/esm/components/XAdkProvider/compound/DefaultLayout.js +142 -0
- package/dist/esm/components/XAdkProvider/compound/DefaultLayout.js.map +1 -0
- package/dist/esm/components/XAdkProvider/compound/DislikeFeedBack.d.ts +8 -0
- package/dist/esm/components/XAdkProvider/compound/DislikeFeedBack.js +122 -0
- package/dist/esm/components/XAdkProvider/compound/DislikeFeedBack.js.map +1 -0
- package/dist/esm/components/XAdkProvider/compound/FeedbackTags.d.ts +7 -0
- package/dist/esm/components/XAdkProvider/compound/FeedbackTags.js +34 -0
- package/dist/esm/components/XAdkProvider/compound/FeedbackTags.js.map +1 -0
- package/dist/esm/components/XAdkProvider/compound/Header.d.ts +25 -0
- package/dist/esm/components/XAdkProvider/compound/Header.js +79 -0
- package/dist/esm/components/XAdkProvider/compound/Header.js.map +1 -0
- package/dist/esm/components/XAdkProvider/compound/Messages.d.ts +17 -0
- package/dist/esm/components/XAdkProvider/compound/Messages.js +53 -0
- package/dist/esm/components/XAdkProvider/compound/Messages.js.map +1 -0
- package/dist/esm/components/XAdkProvider/compound/Sender.d.ts +27 -0
- package/dist/esm/components/XAdkProvider/compound/Sender.js +41 -0
- package/dist/esm/components/XAdkProvider/compound/Sender.js.map +1 -0
- package/dist/esm/components/XAdkProvider/compound/Sidebar.d.ts +24 -0
- package/dist/esm/components/XAdkProvider/compound/Sidebar.js +142 -0
- package/dist/esm/components/XAdkProvider/compound/Sidebar.js.map +1 -0
- package/dist/esm/components/XAdkProvider/compound/Welcome.d.ts +6 -0
- package/dist/esm/components/XAdkProvider/compound/Welcome.js +36 -0
- package/dist/esm/components/XAdkProvider/compound/Welcome.js.map +1 -0
- package/dist/esm/components/XAdkProvider/compound/index.d.ts +17 -0
- package/dist/esm/components/XAdkProvider/compound/index.js +13 -0
- package/dist/esm/components/XAdkProvider/compound/index.js.map +1 -0
- package/dist/esm/components/XAdkProvider/compound/styles.d.ts +36 -0
- package/dist/esm/components/XAdkProvider/compound/styles.js +10 -0
- package/dist/esm/components/XAdkProvider/compound/styles.js.map +1 -0
- package/dist/esm/components/XAdkProvider/context/ChatActionContext.d.ts +30 -0
- package/dist/esm/components/XAdkProvider/context/ChatActionContext.js +23 -0
- package/dist/esm/components/XAdkProvider/context/ChatActionContext.js.map +1 -0
- package/dist/esm/components/XAdkProvider/context/ChatStateContext.d.ts +35 -0
- package/dist/esm/components/XAdkProvider/context/ChatStateContext.js +23 -0
- package/dist/esm/components/XAdkProvider/context/ChatStateContext.js.map +1 -0
- package/dist/esm/components/XAdkProvider/context/SessionContext.d.ts +29 -0
- package/dist/esm/components/XAdkProvider/context/SessionContext.js +22 -0
- package/dist/esm/components/XAdkProvider/context/SessionContext.js.map +1 -0
- package/dist/esm/components/XAdkProvider/context/index.d.ts +7 -0
- package/dist/esm/components/XAdkProvider/context/index.js +9 -0
- package/dist/esm/components/XAdkProvider/context/index.js.map +1 -0
- package/dist/esm/components/XAdkProvider/index.d.ts +55 -0
- package/dist/esm/components/XAdkProvider/index.js +220 -0
- package/dist/esm/components/XAdkProvider/index.js.map +1 -0
- package/dist/esm/components/{XAdkWebProvider → XAdkProvider}/styles.js +2 -2
- package/dist/esm/components/XAdkProvider/styles.js.map +1 -0
- package/dist/esm/components/XAdkSender/FileGallery.d.ts +8 -0
- package/dist/esm/components/XAdkSender/FileGallery.js +236 -0
- package/dist/esm/components/XAdkSender/FileGallery.js.map +1 -0
- package/dist/esm/components/XAdkSender/index.js +92 -109
- package/dist/esm/components/XAdkSender/index.js.map +1 -1
- package/dist/esm/components/XAdkSender/styles.d.ts +0 -9
- package/dist/esm/components/XAdkSender/styles.js +14 -31
- package/dist/esm/components/XAdkSender/styles.js.map +1 -1
- package/dist/esm/components/XAiConversations/index.js +1 -1
- package/dist/esm/components/XAiConversations/index.js.map +1 -1
- package/dist/esm/components/XAiConversations/styles.js +2 -2
- package/dist/esm/components/XAiConversations/styles.js.map +1 -1
- package/dist/esm/components/XAiThoughtChain/XAiThoughtChain.stories.d.ts +6 -0
- package/dist/esm/components/XAiThoughtChain/XAiThoughtChain.stories.js +159 -0
- package/dist/esm/components/XAiThoughtChain/XAiThoughtChain.stories.js.map +1 -0
- package/dist/esm/components/XAiThoughtChain/index.d.ts +4 -0
- package/dist/esm/components/XAiThoughtChain/index.js +180 -0
- package/dist/esm/components/XAiThoughtChain/index.js.map +1 -0
- package/dist/esm/components/XAiThoughtChain/styles.d.ts +60 -0
- package/dist/esm/components/XAiThoughtChain/styles.js +40 -0
- package/dist/esm/components/XAiThoughtChain/styles.js.map +1 -0
- package/dist/esm/hooks/useADKChat.d.ts +9 -3
- package/dist/esm/hooks/useADKChat.js +75 -54
- package/dist/esm/hooks/useADKChat.js.map +1 -1
- package/dist/esm/index.d.ts +25 -9
- package/dist/esm/index.js +28 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/styles/common.js +11 -11
- package/dist/esm/styles/common.js.map +1 -1
- package/dist/esm/types/ChatHook.d.ts +81 -0
- package/dist/esm/types/ChatHook.js +2 -0
- package/dist/esm/types/ChatHook.js.map +1 -0
- package/dist/esm/types/XAdkChatbot.d.ts +80 -15
- package/dist/esm/types/XAdkChatbot.js.map +1 -1
- package/dist/esm/types/XAdkProvider.d.ts +10 -27
- package/dist/esm/types/XAdkProvider.js.map +1 -1
- package/dist/esm/types/XAdkSender.d.ts +18 -0
- package/dist/esm/types/XAdkSender.js.map +1 -1
- package/dist/esm/types/XAiConversations.d.ts +4 -2
- package/dist/esm/types/XAiConversations.js.map +1 -1
- package/dist/esm/types/XAiThoughtChain.d.ts +25 -0
- package/dist/esm/types/XAiThoughtChain.js +2 -0
- package/dist/esm/types/XAiThoughtChain.js.map +1 -0
- package/dist/esm/types/index.d.ts +9 -8
- package/dist/esm/types/index.js +1 -0
- package/dist/esm/types/index.js.map +1 -1
- package/dist/esm/utils/index.d.ts +2 -0
- package/dist/esm/utils/index.js +7 -0
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/esm/utils/parseAgentMessage.d.ts +81 -0
- package/dist/esm/utils/parseAgentMessage.js +286 -0
- package/dist/esm/utils/parseAgentMessage.js.map +1 -0
- package/dist/esm/utils/umdEntry.d.ts +91 -0
- package/dist/esm/utils/umdEntry.js +154 -16
- package/dist/esm/utils/umdEntry.js.map +1 -1
- package/dist/umd/chat-sdk.min.css +1 -1
- package/dist/umd/chat-sdk.min.js +1 -1
- package/package.json +20 -11
- package/dist/cjs/components/XAdkWebProvider/XAdkWebProvider.stories.d.ts +0 -7
- package/dist/cjs/components/XAdkWebProvider/XAdkWebProvider.stories.js +0 -160
- package/dist/cjs/components/XAdkWebProvider/XAdkWebProvider.stories.js.map +0 -7
- package/dist/cjs/components/XAdkWebProvider/index.d.ts +0 -4
- package/dist/cjs/components/XAdkWebProvider/index.js +0 -372
- package/dist/cjs/components/XAdkWebProvider/index.js.map +0 -7
- package/dist/cjs/components/XAdkWebProvider/styles.js.map +0 -7
- package/dist/esm/components/XAdkWebProvider/XAdkWebProvider.stories.d.ts +0 -7
- package/dist/esm/components/XAdkWebProvider/XAdkWebProvider.stories.js +0 -158
- package/dist/esm/components/XAdkWebProvider/XAdkWebProvider.stories.js.map +0 -1
- package/dist/esm/components/XAdkWebProvider/index.d.ts +0 -4
- package/dist/esm/components/XAdkWebProvider/index.js +0 -480
- package/dist/esm/components/XAdkWebProvider/index.js.map +0 -1
- package/dist/esm/components/XAdkWebProvider/styles.js.map +0 -1
- /package/dist/cjs/components/{XAdkWebProvider → XAdkProvider}/styles.d.ts +0 -0
- /package/dist/esm/components/{XAdkWebProvider → XAdkProvider}/styles.d.ts +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useChatState","Fragment","_Fragment","jsx","_jsx","jsxs","_jsxs","Header","_ref","style","className","render","_useChatState","appInfo","children","_objectSpread","padding","borderBottom","display","alignItems","gap","icon","src","alt","width","height","borderRadius","appName","flex","fontWeight","fontSize","description","color","marginTop","displayName"],"sources":["../../../../../src/components/XAdkProvider/compound/Header.tsx"],"sourcesContent":["import React from \"react\";\nimport { useChatState } from \"../context/ChatStateContext\";\nimport type { ChatConfig } from \"@/services/api\";\n\n/**\n * XAdkProvider.Header - 可选的头部组件\n *\n * 显示应用信息,用户可以自定义或不使用\n *\n * @example\n * ```tsx\n * <XAdkProvider url=\"...\" token=\"...\">\n * <XAdkProvider.Header />\n * <XAdkProvider.Messages />\n * </XAdkProvider>\n * ```\n */\nexport interface XAdkHeaderProps {\n /** 额外的样式 */\n style?: React.CSSProperties;\n /** 额外的类名 */\n className?: string;\n /** 自定义渲染函数 */\n render?: (appInfo: ChatConfig | null) => React.ReactNode;\n}\n\nconst Header: React.FC<XAdkHeaderProps> = ({ style, className, render }) => {\n const { appInfo } = useChatState();\n\n // 如果提供了自定义渲染函数,使用它\n if (render) {\n return <>{render(appInfo)}</>;\n }\n\n // 默认头部渲染\n if (!appInfo) {\n return null;\n }\n\n return (\n <div\n className={className}\n style={{\n padding: \"16px\",\n borderBottom: \"1px solid #f0f0f0\",\n display: \"flex\",\n alignItems: \"center\",\n gap: \"12px\",\n ...style,\n }}\n >\n {appInfo.icon && (\n <img\n src={appInfo.icon}\n alt=\"应用图标\"\n style={{\n width: 32,\n height: 32,\n borderRadius: \"4px\",\n }}\n />\n )}\n {appInfo.appName && (\n <div style={{ flex: 1 }}>\n <div style={{ fontWeight: 500, fontSize: \"16px\" }}>\n {appInfo.appName}\n </div>\n {appInfo.description && (\n <div style={{ fontSize: \"12px\", color: \"#999\", marginTop: \"4px\" }}>\n {appInfo.description}\n </div>\n )}\n </div>\n )}\n </div>\n );\n};\n\nHeader.displayName = \"XAdkProvider.Header\";\n\nexport default Header;\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,YAAY;;AAGrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAZA,SAAAC,QAAA,IAAAC,SAAA;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAsBA,IAAMC,MAAiC,GAAG,SAApCA,MAAiCA,CAAAC,IAAA,EAAqC;EAAA,IAA/BC,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAEC,SAAS,GAAAF,IAAA,CAATE,SAAS;IAAEC,MAAM,GAAAH,IAAA,CAANG,MAAM;EACnE,IAAAC,aAAA,GAAoBZ,YAAY,CAAC,CAAC;IAA1Ba,OAAO,GAAAD,aAAA,CAAPC,OAAO;;EAEf;EACA,IAAIF,MAAM,EAAE;IACV,oBAAOP,IAAA,CAAAF,SAAA;MAAAY,QAAA,EAAGH,MAAM,CAACE,OAAO;IAAC,CAAG,CAAC;EAC/B;;EAEA;EACA,IAAI,CAACA,OAAO,EAAE;IACZ,OAAO,IAAI;EACb;EAEA,oBACEP,KAAA;IACEI,SAAS,EAAEA,SAAU;IACrBD,KAAK,EAAAM,aAAA;MACHC,OAAO,EAAE,MAAM;MACfC,YAAY,EAAE,mBAAmB;MACjCC,OAAO,EAAE,MAAM;MACfC,UAAU,EAAE,QAAQ;MACpBC,GAAG,EAAE;IAAM,GACRX,KAAK,CACR;IAAAK,QAAA,GAEDD,OAAO,CAACQ,IAAI,iBACXjB,IAAA;MACEkB,GAAG,EAAET,OAAO,CAACQ,IAAK;MAClBE,GAAG,EAAC,0BAAM;MACVd,KAAK,EAAE;QACLe,KAAK,EAAE,EAAE;QACTC,MAAM,EAAE,EAAE;QACVC,YAAY,EAAE;MAChB;IAAE,CACH,CACF,EACAb,OAAO,CAACc,OAAO,iBACdrB,KAAA;MAAKG,KAAK,EAAE;QAAEmB,IAAI,EAAE;MAAE,CAAE;MAAAd,QAAA,gBACtBV,IAAA;QAAKK,KAAK,EAAE;UAAEoB,UAAU,EAAE,GAAG;UAAEC,QAAQ,EAAE;QAAO,CAAE;QAAAhB,QAAA,EAC/CD,OAAO,CAACc;MAAO,CACb,CAAC,EACLd,OAAO,CAACkB,WAAW,iBAClB3B,IAAA;QAAKK,KAAK,EAAE;UAAEqB,QAAQ,EAAE,MAAM;UAAEE,KAAK,EAAE,MAAM;UAAEC,SAAS,EAAE;QAAM,CAAE;QAAAnB,QAAA,EAC/DD,OAAO,CAACkB;MAAW,CACjB,CACN;IAAA,CACE,CACN;EAAA,CACE,CAAC;AAEV,CAAC;AAEDxB,MAAM,CAAC2B,WAAW,GAAG,qBAAqB;AAE1C,eAAe3B,MAAM"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { ActionProps } from "../../../types";
|
|
3
|
+
export interface XAdkMessagesProps {
|
|
4
|
+
/** 自定义操作栏渲染 */
|
|
5
|
+
actions?: ActionProps;
|
|
6
|
+
/** 类名 */
|
|
7
|
+
className?: string;
|
|
8
|
+
/** 样式 */
|
|
9
|
+
style?: React.CSSProperties;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Messages - XAdkProvider 的消息展示组件
|
|
13
|
+
*
|
|
14
|
+
* 使用 XAdkChatbot 渲染消息列表
|
|
15
|
+
*/
|
|
16
|
+
declare const Messages: React.FC<XAdkMessagesProps>;
|
|
17
|
+
export default Messages;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import XAdkChatbot from "../../XAdkChatbot";
|
|
3
|
+
import { useChatState } from "../context/ChatStateContext";
|
|
4
|
+
import { useChatActions } from "../context/ChatActionContext";
|
|
5
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
6
|
+
/**
|
|
7
|
+
* Messages - XAdkProvider 的消息展示组件
|
|
8
|
+
*
|
|
9
|
+
* 使用 XAdkChatbot 渲染消息列表
|
|
10
|
+
*/
|
|
11
|
+
var Messages = function Messages(_ref) {
|
|
12
|
+
var actions = _ref.actions,
|
|
13
|
+
className = _ref.className,
|
|
14
|
+
style = _ref.style;
|
|
15
|
+
var _useChatState = useChatState(),
|
|
16
|
+
messages = _useChatState.messages,
|
|
17
|
+
loading = _useChatState.loading,
|
|
18
|
+
prologue = _useChatState.prologue,
|
|
19
|
+
suggestions = _useChatState.suggestions;
|
|
20
|
+
var _useChatActions = useChatActions(),
|
|
21
|
+
suggestChat = _useChatActions.suggestChat,
|
|
22
|
+
reChat = _useChatActions.reChat;
|
|
23
|
+
return /*#__PURE__*/_jsx(XAdkChatbot, {
|
|
24
|
+
messages: messages,
|
|
25
|
+
loading: loading,
|
|
26
|
+
prologue: prologue,
|
|
27
|
+
suggestions: suggestions,
|
|
28
|
+
onSuggest: suggestChat
|
|
29
|
+
// 操作栏
|
|
30
|
+
,
|
|
31
|
+
showRetry: true,
|
|
32
|
+
showCopy: true,
|
|
33
|
+
showLog: false,
|
|
34
|
+
onRetry: reChat,
|
|
35
|
+
onShowLog: function onShowLog() {},
|
|
36
|
+
actions: actions
|
|
37
|
+
// 启用分组和解析
|
|
38
|
+
,
|
|
39
|
+
enableGrouping: true,
|
|
40
|
+
enableProcessParsing: true
|
|
41
|
+
// 使用注释模式解析
|
|
42
|
+
,
|
|
43
|
+
parseOptions: {
|
|
44
|
+
mode: "comment"
|
|
45
|
+
}
|
|
46
|
+
// 样式
|
|
47
|
+
,
|
|
48
|
+
className: className,
|
|
49
|
+
style: style
|
|
50
|
+
});
|
|
51
|
+
};
|
|
52
|
+
export default Messages;
|
|
53
|
+
//# sourceMappingURL=Messages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","XAdkChatbot","useChatState","useChatActions","jsx","_jsx","Messages","_ref","actions","className","style","_useChatState","messages","loading","prologue","suggestions","_useChatActions","suggestChat","reChat","onSuggest","showRetry","showCopy","showLog","onRetry","onShowLog","enableGrouping","enableProcessParsing","parseOptions","mode"],"sources":["../../../../../src/components/XAdkProvider/compound/Messages.tsx"],"sourcesContent":["import React from \"react\";\nimport XAdkChatbot from \"../../XAdkChatbot\";\nimport { useChatState } from \"../context/ChatStateContext\";\nimport { useChatActions } from \"../context/ChatActionContext\";\nimport type { ActionProps } from \"@/types\";\n\nexport interface XAdkMessagesProps {\n /** 自定义操作栏渲染 */\n actions?: ActionProps;\n /** 类名 */\n className?: string;\n /** 样式 */\n style?: React.CSSProperties;\n}\n\n/**\n * Messages - XAdkProvider 的消息展示组件\n *\n * 使用 XAdkChatbot 渲染消息列表\n */\nconst Messages: React.FC<XAdkMessagesProps> = ({\n actions,\n className,\n style,\n}) => {\n const { messages, loading, prologue, suggestions } = useChatState();\n const { suggestChat, reChat } = useChatActions();\n\n return (\n <XAdkChatbot\n messages={messages}\n loading={loading}\n prologue={prologue}\n suggestions={suggestions}\n onSuggest={suggestChat}\n // 操作栏\n showRetry\n showCopy\n showLog={false}\n onRetry={reChat}\n onShowLog={() => {}}\n actions={actions}\n // 启用分组和解析\n enableGrouping={true}\n enableProcessParsing={true}\n // 使用注释模式解析\n parseOptions={{ mode: \"comment\" }}\n // 样式\n className={className}\n style={style}\n />\n );\n};\n\nexport default Messages;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,WAAW;AAClB,SAASC,YAAY;AACrB,SAASC,cAAc;AAAuC,SAAAC,GAAA,IAAAC,IAAA;AAY9D;AACA;AACA;AACA;AACA;AACA,IAAMC,QAAqC,GAAG,SAAxCA,QAAqCA,CAAAC,IAAA,EAIrC;EAAA,IAHJC,OAAO,GAAAD,IAAA,CAAPC,OAAO;IACPC,SAAS,GAAAF,IAAA,CAATE,SAAS;IACTC,KAAK,GAAAH,IAAA,CAALG,KAAK;EAEL,IAAAC,aAAA,GAAqDT,YAAY,CAAC,CAAC;IAA3DU,QAAQ,GAAAD,aAAA,CAARC,QAAQ;IAAEC,OAAO,GAAAF,aAAA,CAAPE,OAAO;IAAEC,QAAQ,GAAAH,aAAA,CAARG,QAAQ;IAAEC,WAAW,GAAAJ,aAAA,CAAXI,WAAW;EAChD,IAAAC,eAAA,GAAgCb,cAAc,CAAC,CAAC;IAAxCc,WAAW,GAAAD,eAAA,CAAXC,WAAW;IAAEC,MAAM,GAAAF,eAAA,CAANE,MAAM;EAE3B,oBACEb,IAAA,CAACJ,WAAW;IACVW,QAAQ,EAAEA,QAAS;IACnBC,OAAO,EAAEA,OAAQ;IACjBC,QAAQ,EAAEA,QAAS;IACnBC,WAAW,EAAEA,WAAY;IACzBI,SAAS,EAAEF;IACX;IAAA;IACAG,SAAS;IACTC,QAAQ;IACRC,OAAO,EAAE,KAAM;IACfC,OAAO,EAAEL,MAAO;IAChBM,SAAS,EAAE,SAAAA,UAAA,EAAM,CAAC,CAAE;IACpBhB,OAAO,EAAEA;IACT;IAAA;IACAiB,cAAc,EAAE,IAAK;IACrBC,oBAAoB,EAAE;IACtB;IAAA;IACAC,YAAY,EAAE;MAAEC,IAAI,EAAE;IAAU;IAChC;IAAA;IACAnB,SAAS,EAAEA,SAAU;IACrBC,KAAK,EAAEA;EAAM,CACd,CAAC;AAEN,CAAC;AAED,eAAeJ,QAAQ"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { XAdkSenderProps } from "../../../types/XAdkSender";
|
|
3
|
+
/**
|
|
4
|
+
* XAdkProvider.Sender - 输入框组件
|
|
5
|
+
*
|
|
6
|
+
* 从 Context 获取聊天动作并提供输入界面
|
|
7
|
+
* 基于 XAdkSender 组件实现
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```tsx
|
|
11
|
+
* <XAdkProvider url="..." token="...">
|
|
12
|
+
* <XAdkProvider.Sender
|
|
13
|
+
* allowUpload={true}
|
|
14
|
+
* clearBtnShow={true}
|
|
15
|
+
* uploadRequest={myUploadHandler}
|
|
16
|
+
* />
|
|
17
|
+
* </XAdkProvider>
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
export interface XAdkSenderCompoundProps extends Partial<Omit<XAdkSenderProps, 'loading' | 'onSubmit' | 'onStop' | 'onClear'>> {
|
|
21
|
+
/** 额外的样式 */
|
|
22
|
+
style?: React.CSSProperties;
|
|
23
|
+
/** 额外的类名 */
|
|
24
|
+
className?: string;
|
|
25
|
+
}
|
|
26
|
+
declare const Sender: React.FC<XAdkSenderCompoundProps>;
|
|
27
|
+
export default Sender;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import XAdkSender from "../../XAdkSender";
|
|
4
|
+
import { useChatState } from "../context/ChatStateContext";
|
|
5
|
+
import { useChatActions } from "../context/ChatActionContext";
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* XAdkProvider.Sender - 输入框组件
|
|
9
|
+
*
|
|
10
|
+
* 从 Context 获取聊天动作并提供输入界面
|
|
11
|
+
* 基于 XAdkSender 组件实现
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```tsx
|
|
15
|
+
* <XAdkProvider url="..." token="...">
|
|
16
|
+
* <XAdkProvider.Sender
|
|
17
|
+
* allowUpload={true}
|
|
18
|
+
* clearBtnShow={true}
|
|
19
|
+
* uploadRequest={myUploadHandler}
|
|
20
|
+
* />
|
|
21
|
+
* </XAdkProvider>
|
|
22
|
+
* ```
|
|
23
|
+
*/
|
|
24
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
25
|
+
var Sender = function Sender(props) {
|
|
26
|
+
var _useChatState = useChatState(),
|
|
27
|
+
loading = _useChatState.loading;
|
|
28
|
+
var _useChatActions = useChatActions(),
|
|
29
|
+
chat = _useChatActions.chat,
|
|
30
|
+
stopChat = _useChatActions.stopChat,
|
|
31
|
+
clearChat = _useChatActions.clearChat;
|
|
32
|
+
return /*#__PURE__*/_jsx(XAdkSender, _objectSpread({
|
|
33
|
+
loading: loading,
|
|
34
|
+
onSubmit: chat,
|
|
35
|
+
onStop: stopChat,
|
|
36
|
+
onClear: clearChat
|
|
37
|
+
}, props));
|
|
38
|
+
};
|
|
39
|
+
Sender.displayName = 'XAdkProvider.Sender';
|
|
40
|
+
export default Sender;
|
|
41
|
+
//# sourceMappingURL=Sender.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","XAdkSender","useChatState","useChatActions","jsx","_jsx","Sender","props","_useChatState","loading","_useChatActions","chat","stopChat","clearChat","_objectSpread","onSubmit","onStop","onClear","displayName"],"sources":["../../../../../src/components/XAdkProvider/compound/Sender.tsx"],"sourcesContent":["import React from 'react';\nimport XAdkSender from '@/components/XAdkSender';\nimport { useChatState } from '../context/ChatStateContext';\nimport { useChatActions } from '../context/ChatActionContext';\nimport type { XAdkSenderProps } from '@/types/XAdkSender';\n\n/**\n * XAdkProvider.Sender - 输入框组件\n *\n * 从 Context 获取聊天动作并提供输入界面\n * 基于 XAdkSender 组件实现\n *\n * @example\n * ```tsx\n * <XAdkProvider url=\"...\" token=\"...\">\n * <XAdkProvider.Sender\n * allowUpload={true}\n * clearBtnShow={true}\n * uploadRequest={myUploadHandler}\n * />\n * </XAdkProvider>\n * ```\n */\nexport interface XAdkSenderCompoundProps extends Partial<Omit<XAdkSenderProps, 'loading' | 'onSubmit' | 'onStop' | 'onClear'>> {\n /** 额外的样式 */\n style?: React.CSSProperties;\n /** 额外的类名 */\n className?: string;\n}\n\nconst Sender: React.FC<XAdkSenderCompoundProps> = (props) => {\n const { loading } = useChatState();\n const { chat, stopChat, clearChat } = useChatActions();\n\n return (\n <XAdkSender\n loading={loading}\n onSubmit={chat}\n onStop={stopChat}\n onClear={clearChat}\n {...props}\n />\n );\n};\n\nSender.displayName = 'XAdkProvider.Sender';\n\nexport default Sender;\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,UAAU;AACjB,SAASC,YAAY;AACrB,SAASC,cAAc;;AAGvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAhBA,SAAAC,GAAA,IAAAC,IAAA;AAwBA,IAAMC,MAAyC,GAAG,SAA5CA,MAAyCA,CAAIC,KAAK,EAAK;EAC3D,IAAAC,aAAA,GAAoBN,YAAY,CAAC,CAAC;IAA1BO,OAAO,GAAAD,aAAA,CAAPC,OAAO;EACf,IAAAC,eAAA,GAAsCP,cAAc,CAAC,CAAC;IAA9CQ,IAAI,GAAAD,eAAA,CAAJC,IAAI;IAAEC,QAAQ,GAAAF,eAAA,CAARE,QAAQ;IAAEC,SAAS,GAAAH,eAAA,CAATG,SAAS;EAEjC,oBACER,IAAA,CAACJ,UAAU,EAAAa,aAAA;IACTL,OAAO,EAAEA,OAAQ;IACjBM,QAAQ,EAAEJ,IAAK;IACfK,MAAM,EAAEJ,QAAS;IACjBK,OAAO,EAAEJ;EAAU,GACfN,KAAK,CACV,CAAC;AAEN,CAAC;AAEDD,MAAM,CAACY,WAAW,GAAG,qBAAqB;AAE1C,eAAeZ,MAAM"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* XAdkProvider.Sidebar - 会话列表侧边栏组件
|
|
4
|
+
*
|
|
5
|
+
* 从 Context 获取会话数据并提供会话管理界面
|
|
6
|
+
* 基于 XAiConversations 组件实现(带展开/收起功能)
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```tsx
|
|
10
|
+
* <XAdkProvider url="..." token="...">
|
|
11
|
+
* <XAdkProvider.Sidebar isNarrow={false} />
|
|
12
|
+
* </XAdkProvider>
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
export interface XAdkSidebarProps {
|
|
16
|
+
/** 额外的样式 */
|
|
17
|
+
style?: React.CSSProperties;
|
|
18
|
+
/** 额外的类名 */
|
|
19
|
+
className?: string;
|
|
20
|
+
/** 是否为窄屏模式 */
|
|
21
|
+
isNarrow?: boolean;
|
|
22
|
+
}
|
|
23
|
+
declare const Sidebar: React.FC<XAdkSidebarProps>;
|
|
24
|
+
export default Sidebar;
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import React, { useCallback } from 'react';
|
|
2
|
+
import { message, Modal, Input } from 'antd';
|
|
3
|
+
import { ExclamationCircleFilled } from '@ant-design/icons';
|
|
4
|
+
import XAiConversations from "../../XAiConversations";
|
|
5
|
+
import { useChatState } from "../context/ChatStateContext";
|
|
6
|
+
import { useChatActions } from "../context/ChatActionContext";
|
|
7
|
+
import { useSession } from "../context/SessionContext";
|
|
8
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
9
|
+
var confirm = Modal.confirm;
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* XAdkProvider.Sidebar - 会话列表侧边栏组件
|
|
13
|
+
*
|
|
14
|
+
* 从 Context 获取会话数据并提供会话管理界面
|
|
15
|
+
* 基于 XAiConversations 组件实现(带展开/收起功能)
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```tsx
|
|
19
|
+
* <XAdkProvider url="..." token="...">
|
|
20
|
+
* <XAdkProvider.Sidebar isNarrow={false} />
|
|
21
|
+
* </XAdkProvider>
|
|
22
|
+
* ```
|
|
23
|
+
*/
|
|
24
|
+
|
|
25
|
+
var Sidebar = function Sidebar(_ref) {
|
|
26
|
+
var _ref$isNarrow = _ref.isNarrow,
|
|
27
|
+
isNarrow = _ref$isNarrow === void 0 ? false : _ref$isNarrow,
|
|
28
|
+
style = _ref.style,
|
|
29
|
+
className = _ref.className;
|
|
30
|
+
var _useChatState = useChatState(),
|
|
31
|
+
currentSessionId = _useChatState.currentSessionId;
|
|
32
|
+
var _useChatActions = useChatActions(),
|
|
33
|
+
clearChat = _useChatActions.clearChat;
|
|
34
|
+
var _useSession = useSession(),
|
|
35
|
+
sessionList = _useSession.sessionList,
|
|
36
|
+
deleteSession = _useSession.deleteSession,
|
|
37
|
+
updateSession = _useSession.updateSession,
|
|
38
|
+
setCurrentSessionDetail = _useSession.setCurrentSessionDetail;
|
|
39
|
+
|
|
40
|
+
// 切换会话
|
|
41
|
+
var handleActiveChange = useCallback(function (key) {
|
|
42
|
+
setCurrentSessionDetail(key);
|
|
43
|
+
}, [setCurrentSessionDetail]);
|
|
44
|
+
|
|
45
|
+
// 新建对话
|
|
46
|
+
var handleNewChat = useCallback(function () {
|
|
47
|
+
clearChat();
|
|
48
|
+
}, [clearChat]);
|
|
49
|
+
|
|
50
|
+
// 默认会话菜单配置
|
|
51
|
+
var defaultMenuConfig = useCallback(function (conversation) {
|
|
52
|
+
return {
|
|
53
|
+
items: [{
|
|
54
|
+
label: '重命名',
|
|
55
|
+
key: 'edit'
|
|
56
|
+
}, {
|
|
57
|
+
label: '删除',
|
|
58
|
+
key: 'delete',
|
|
59
|
+
danger: true
|
|
60
|
+
}],
|
|
61
|
+
onClick: function onClick(menuInfo) {
|
|
62
|
+
menuInfo.domEvent.stopPropagation();
|
|
63
|
+
var key = menuInfo.key;
|
|
64
|
+
switch (key) {
|
|
65
|
+
case 'edit':
|
|
66
|
+
{
|
|
67
|
+
var inputValue = conversation.label || '';
|
|
68
|
+
confirm({
|
|
69
|
+
title: '编辑对话名称',
|
|
70
|
+
icon: null,
|
|
71
|
+
content: /*#__PURE__*/_jsx(Input, {
|
|
72
|
+
defaultValue: inputValue,
|
|
73
|
+
autoFocus: true,
|
|
74
|
+
style: {
|
|
75
|
+
width: '100%'
|
|
76
|
+
},
|
|
77
|
+
onChange: function onChange(e) {
|
|
78
|
+
inputValue = e.target.value;
|
|
79
|
+
}
|
|
80
|
+
}),
|
|
81
|
+
okText: '确认',
|
|
82
|
+
cancelText: '取消',
|
|
83
|
+
okButtonProps: {
|
|
84
|
+
style: {
|
|
85
|
+
background: '#000',
|
|
86
|
+
borderColor: '#000',
|
|
87
|
+
color: '#fff'
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
onOk: function onOk() {
|
|
91
|
+
if (!inputValue.trim()) {
|
|
92
|
+
message.error('对话名称不能为空');
|
|
93
|
+
return Promise.reject();
|
|
94
|
+
}
|
|
95
|
+
updateSession(conversation.key, inputValue);
|
|
96
|
+
},
|
|
97
|
+
onCancel: function onCancel() {
|
|
98
|
+
// 静默处理
|
|
99
|
+
}
|
|
100
|
+
});
|
|
101
|
+
break;
|
|
102
|
+
}
|
|
103
|
+
case 'delete':
|
|
104
|
+
confirm({
|
|
105
|
+
title: '确认删除?',
|
|
106
|
+
icon: /*#__PURE__*/_jsx(ExclamationCircleFilled, {}),
|
|
107
|
+
content: '该对话内容将被删除无法恢复。',
|
|
108
|
+
okText: '确认删除',
|
|
109
|
+
okType: 'danger',
|
|
110
|
+
cancelText: '取消',
|
|
111
|
+
okButtonProps: {
|
|
112
|
+
style: {
|
|
113
|
+
background: '#ff4d4f',
|
|
114
|
+
borderColor: '#ff4d4f',
|
|
115
|
+
color: '#fff'
|
|
116
|
+
}
|
|
117
|
+
},
|
|
118
|
+
onOk: function onOk() {
|
|
119
|
+
deleteSession(conversation.key);
|
|
120
|
+
},
|
|
121
|
+
onCancel: function onCancel() {
|
|
122
|
+
//
|
|
123
|
+
}
|
|
124
|
+
});
|
|
125
|
+
break;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
};
|
|
129
|
+
}, [deleteSession, updateSession]);
|
|
130
|
+
return /*#__PURE__*/_jsx(XAiConversations, {
|
|
131
|
+
isNarrow: isNarrow,
|
|
132
|
+
sessionList: sessionList,
|
|
133
|
+
activeKey: currentSessionId,
|
|
134
|
+
onActiveChange: handleActiveChange,
|
|
135
|
+
onNewChat: handleNewChat,
|
|
136
|
+
menu: defaultMenuConfig,
|
|
137
|
+
style: style
|
|
138
|
+
});
|
|
139
|
+
};
|
|
140
|
+
Sidebar.displayName = 'XAdkProvider.Sidebar';
|
|
141
|
+
export default Sidebar;
|
|
142
|
+
//# sourceMappingURL=Sidebar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useCallback","message","Modal","Input","ExclamationCircleFilled","XAiConversations","useChatState","useChatActions","useSession","jsx","_jsx","confirm","Sidebar","_ref","_ref$isNarrow","isNarrow","style","className","_useChatState","currentSessionId","_useChatActions","clearChat","_useSession","sessionList","deleteSession","updateSession","setCurrentSessionDetail","handleActiveChange","key","handleNewChat","defaultMenuConfig","conversation","items","label","danger","onClick","menuInfo","domEvent","stopPropagation","inputValue","title","icon","content","defaultValue","autoFocus","width","onChange","e","target","value","okText","cancelText","okButtonProps","background","borderColor","color","onOk","trim","error","Promise","reject","onCancel","okType","activeKey","onActiveChange","onNewChat","menu","displayName"],"sources":["../../../../../src/components/XAdkProvider/compound/Sidebar.tsx"],"sourcesContent":["import React, { useCallback } from 'react';\nimport { message, Modal, Input } from 'antd';\nimport { ExclamationCircleFilled } from '@ant-design/icons';\nimport type { ConversationsProps } from '@ant-design/x';\nimport XAiConversations from '@/components/XAiConversations';\nimport { useChatState } from '../context/ChatStateContext';\nimport { useChatActions } from '../context/ChatActionContext';\nimport { useSession } from '../context/SessionContext';\n\nconst { confirm } = Modal;\n\n/**\n * XAdkProvider.Sidebar - 会话列表侧边栏组件\n *\n * 从 Context 获取会话数据并提供会话管理界面\n * 基于 XAiConversations 组件实现(带展开/收起功能)\n *\n * @example\n * ```tsx\n * <XAdkProvider url=\"...\" token=\"...\">\n * <XAdkProvider.Sidebar isNarrow={false} />\n * </XAdkProvider>\n * ```\n */\nexport interface XAdkSidebarProps {\n /** 额外的样式 */\n style?: React.CSSProperties;\n /** 额外的类名 */\n className?: string;\n /** 是否为窄屏模式 */\n isNarrow?: boolean;\n}\n\nconst Sidebar: React.FC<XAdkSidebarProps> = ({\n isNarrow = false,\n style,\n className,\n}) => {\n const { currentSessionId } = useChatState();\n const { clearChat } = useChatActions();\n const { sessionList, deleteSession, updateSession, setCurrentSessionDetail } = useSession();\n\n // 切换会话\n const handleActiveChange = useCallback((key: string) => {\n setCurrentSessionDetail(key);\n }, [setCurrentSessionDetail]);\n\n // 新建对话\n const handleNewChat = useCallback(() => {\n clearChat();\n }, [clearChat]);\n\n // 默认会话菜单配置\n const defaultMenuConfig: ConversationsProps['menu'] = useCallback((conversation: any) => ({\n items: [\n {\n label: '重命名',\n key: 'edit',\n },\n {\n label: '删除',\n key: 'delete',\n danger: true,\n },\n ],\n onClick: (menuInfo: any) => {\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: {\n background: '#000',\n borderColor: '#000',\n color: '#fff',\n },\n },\n onOk: () => {\n if (!inputValue.trim()) {\n message.error('对话名称不能为空');\n return Promise.reject();\n }\n updateSession(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: {\n background: '#ff4d4f',\n borderColor: '#ff4d4f',\n color: '#fff',\n },\n },\n onOk() {\n deleteSession(conversation.key);\n },\n onCancel() {\n //\n },\n });\n break;\n }\n },\n }), [deleteSession, updateSession]);\n\n return (\n <XAiConversations\n isNarrow={isNarrow}\n sessionList={sessionList}\n activeKey={currentSessionId}\n onActiveChange={handleActiveChange}\n onNewChat={handleNewChat}\n menu={defaultMenuConfig}\n style={style}\n />\n );\n};\n\nSidebar.displayName = 'XAdkProvider.Sidebar';\n\nexport default Sidebar;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
// import { useChatState } from "../context/ChatStateContext";
|
|
3
|
+
import logo from "../../../assets/logo.png";
|
|
4
|
+
import { useStyles } from "./styles";
|
|
5
|
+
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
6
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
7
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
8
|
+
var Welcome = function Welcome(_ref) {
|
|
9
|
+
var welcome = _ref.welcome;
|
|
10
|
+
// const { appInfo } = useChatState();
|
|
11
|
+
var styles = useStyles();
|
|
12
|
+
if (welcome) return /*#__PURE__*/_jsx(_Fragment, {
|
|
13
|
+
children: welcome
|
|
14
|
+
});
|
|
15
|
+
return /*#__PURE__*/_jsxs("div", {
|
|
16
|
+
style: {
|
|
17
|
+
display: "flex",
|
|
18
|
+
flexDirection: "column",
|
|
19
|
+
alignItems: "center",
|
|
20
|
+
gap: "16px",
|
|
21
|
+
textAlign: "center"
|
|
22
|
+
},
|
|
23
|
+
children: [/*#__PURE__*/_jsx("img", {
|
|
24
|
+
src: logo,
|
|
25
|
+
style: {
|
|
26
|
+
width: "80px",
|
|
27
|
+
height: "80px"
|
|
28
|
+
}
|
|
29
|
+
}), /*#__PURE__*/_jsx("h2", {
|
|
30
|
+
className: styles.logoText,
|
|
31
|
+
children: "Hi, \u6709\u4EC0\u4E48\u6211\u80FD\u5E2E\u60A8\u7684\u5417\uFF1F"
|
|
32
|
+
})]
|
|
33
|
+
});
|
|
34
|
+
};
|
|
35
|
+
export default Welcome;
|
|
36
|
+
//# sourceMappingURL=Welcome.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","logo","useStyles","Fragment","_Fragment","jsx","_jsx","jsxs","_jsxs","Welcome","_ref","welcome","styles","children","style","display","flexDirection","alignItems","gap","textAlign","src","width","height","className","logoText"],"sources":["../../../../../src/components/XAdkProvider/compound/Welcome.tsx"],"sourcesContent":["import React from \"react\";\n// import { useChatState } from \"../context/ChatStateContext\";\nimport logo from \"@/assets/logo.png\";\nimport { useStyles } from \"./styles\";\n\ninterface Props {\n welcome?: React.ReactNode;\n}\n\nconst Welcome: React.FC<Props> = ({ welcome }) => {\n // const { appInfo } = useChatState();\n const styles = useStyles();\n\n if (welcome) return <>{welcome}</>;\n\n return (\n <div\n style={{\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n gap: \"16px\",\n textAlign: \"center\",\n }}\n >\n <img src={logo} style={{ width: \"80px\", height: \"80px\" }} />\n <h2 className={styles.logoText}>Hi, 有什么我能帮您的吗?</h2>\n </div>\n );\n};\n\nexport default Welcome;\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB;AACA,OAAOC,IAAI;AACX,SAASC,SAAS;AAAmB,SAAAC,QAAA,IAAAC,SAAA;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAMrC,IAAMC,OAAwB,GAAG,SAA3BA,OAAwBA,CAAAC,IAAA,EAAoB;EAAA,IAAdC,OAAO,GAAAD,IAAA,CAAPC,OAAO;EACzC;EACA,IAAMC,MAAM,GAAGV,SAAS,CAAC,CAAC;EAE1B,IAAIS,OAAO,EAAE,oBAAOL,IAAA,CAAAF,SAAA;IAAAS,QAAA,EAAGF;EAAO,CAAG,CAAC;EAElC,oBACEH,KAAA;IACEM,KAAK,EAAE;MACLC,OAAO,EAAE,MAAM;MACfC,aAAa,EAAE,QAAQ;MACvBC,UAAU,EAAE,QAAQ;MACpBC,GAAG,EAAE,MAAM;MACXC,SAAS,EAAE;IACb,CAAE;IAAAN,QAAA,gBAEFP,IAAA;MAAKc,GAAG,EAAEnB,IAAK;MAACa,KAAK,EAAE;QAAEO,KAAK,EAAE,MAAM;QAAEC,MAAM,EAAE;MAAO;IAAE,CAAE,CAAC,eAC5DhB,IAAA;MAAIiB,SAAS,EAAEX,MAAM,CAACY,QAAS;MAAAX,QAAA,EAAC;IAAc,CAAI,CAAC;EAAA,CAChD,CAAC;AAEV,CAAC;AAED,eAAeJ,OAAO"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* XAdkProvider Compound Components
|
|
3
|
+
*
|
|
4
|
+
* 提供可组合的子组件,用于构建自定义聊天界面
|
|
5
|
+
*/
|
|
6
|
+
export { default as Header } from './Header';
|
|
7
|
+
export { default as Sidebar } from './Sidebar';
|
|
8
|
+
export { default as Messages } from './Messages';
|
|
9
|
+
export { default as Sender } from './Sender';
|
|
10
|
+
export { default as Chatbot } from './Chatbot';
|
|
11
|
+
export { default as DefaultLayout } from './DefaultLayout';
|
|
12
|
+
export type { XAdkHeaderProps } from './Header';
|
|
13
|
+
export type { XAdkSidebarProps } from './Sidebar';
|
|
14
|
+
export type { XAdkMessagesProps } from './Messages';
|
|
15
|
+
export type { XAdkSenderCompoundProps } from './Sender';
|
|
16
|
+
export type { XAdkChatbotCompoundProps } from './Chatbot';
|
|
17
|
+
export type { DefaultLayoutProps } from './DefaultLayout';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* XAdkProvider Compound Components
|
|
3
|
+
*
|
|
4
|
+
* 提供可组合的子组件,用于构建自定义聊天界面
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
export { default as Header } from "./Header";
|
|
8
|
+
export { default as Sidebar } from "./Sidebar";
|
|
9
|
+
export { default as Messages } from "./Messages";
|
|
10
|
+
export { default as Sender } from "./Sender";
|
|
11
|
+
export { default as Chatbot } from "./Chatbot";
|
|
12
|
+
export { default as DefaultLayout } from "./DefaultLayout";
|
|
13
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["default","Header","Sidebar","Messages","Sender","Chatbot","DefaultLayout"],"sources":["../../../../../src/components/XAdkProvider/compound/index.ts"],"sourcesContent":["/**\n * XAdkProvider Compound Components\n *\n * 提供可组合的子组件,用于构建自定义聊天界面\n */\n\nexport { default as Header } from './Header';\nexport { default as Sidebar } from './Sidebar';\nexport { default as Messages } from './Messages';\nexport { default as Sender } from './Sender';\nexport { default as Chatbot } from './Chatbot';\nexport { default as DefaultLayout } from './DefaultLayout';\n\nexport type { XAdkHeaderProps } from './Header';\nexport type { XAdkSidebarProps } from './Sidebar';\nexport type { XAdkMessagesProps } from './Messages';\nexport type { XAdkSenderCompoundProps } from './Sender';\nexport type { XAdkChatbotCompoundProps } from './Chatbot';\nexport type { DefaultLayoutProps } from './DefaultLayout';\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;;AAEA,SAASA,OAAO,IAAIC,MAAM;AAC1B,SAASD,OAAO,IAAIE,OAAO;AAC3B,SAASF,OAAO,IAAIG,QAAQ;AAC5B,SAASH,OAAO,IAAII,MAAM;AAC1B,SAASJ,OAAO,IAAIK,OAAO;AAC3B,SAASL,OAAO,IAAIM,aAAa"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export declare const useStyles: () => {
|
|
2
|
+
logoText: string;
|
|
3
|
+
} & {
|
|
4
|
+
w: (width: string | number) => string;
|
|
5
|
+
h: (height: string | number) => string;
|
|
6
|
+
p: (padding: string) => string;
|
|
7
|
+
pb: (padding: string | number) => string;
|
|
8
|
+
pt: (padding: string | number) => string;
|
|
9
|
+
pl: (padding: string | number) => string;
|
|
10
|
+
pr: (padding: string | number) => string;
|
|
11
|
+
m: (margin: string) => string;
|
|
12
|
+
mb: (margin: string | number) => string;
|
|
13
|
+
mt: (margin: string | number) => string;
|
|
14
|
+
ml: (margin: string | number) => string;
|
|
15
|
+
mr: (margin: string | number) => string;
|
|
16
|
+
text: (size: string | number) => string;
|
|
17
|
+
weight: (size: number) => string;
|
|
18
|
+
textColor: (c: string) => string;
|
|
19
|
+
bg: (c: string) => string;
|
|
20
|
+
rs: (radius: string | number) => string;
|
|
21
|
+
gap: (g: string | number) => string;
|
|
22
|
+
flex: string;
|
|
23
|
+
flexCenter: string;
|
|
24
|
+
flexBetween: string;
|
|
25
|
+
flexColumn: string;
|
|
26
|
+
flex1: string;
|
|
27
|
+
cursor: (type: string) => string;
|
|
28
|
+
border: (color: string, width?: string) => string;
|
|
29
|
+
boxShadow: (shadow: string) => string;
|
|
30
|
+
transition: (property?: string, duration?: string) => string;
|
|
31
|
+
overflow: (type: string) => string;
|
|
32
|
+
position: (type: string) => string;
|
|
33
|
+
zIndex: (index: number) => string;
|
|
34
|
+
flexCenterGap2: string;
|
|
35
|
+
flexCenterGap4: string;
|
|
36
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import _taggedTemplateLiteral from "@babel/runtime/helpers/esm/taggedTemplateLiteral";
|
|
2
|
+
var _templateObject;
|
|
3
|
+
import { css } from "@emotion/css";
|
|
4
|
+
import { withBasicStyles } from "../../../styles/common";
|
|
5
|
+
export var useStyles = withBasicStyles(function () {
|
|
6
|
+
return {
|
|
7
|
+
logoText: css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n font-size: 30px;\n line-height: 36px;\n font-weight: 800;\n width: 100%;\n min-width: 330px;\n margin-top: 30px;\n color: transparent;\n background: linear-gradient(to right, #ff69b4, #4169e1);\n background-clip: text;\n width: 0;\n overflow: hidden;\n text-overflow: unset;\n white-space: nowrap;\n animation: typewiriter 1s forwards;\n "])))
|
|
8
|
+
};
|
|
9
|
+
});
|
|
10
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["css","withBasicStyles","useStyles","logoText","_templateObject","_taggedTemplateLiteral"],"sources":["../../../../../src/components/XAdkProvider/compound/styles.tsx"],"sourcesContent":["import { css } from \"@emotion/css\";\nimport { withBasicStyles } from \"@/styles/common\";\n\nexport const useStyles = withBasicStyles(() => ({\n logoText: css`\n font-size: 30px;\n line-height: 36px;\n font-weight: 800;\n width: 100%;\n min-width: 330px;\n margin-top: 30px;\n color: transparent;\n background: linear-gradient(to right, #ff69b4, #4169e1);\n background-clip: text;\n width: 0;\n overflow: hidden;\n text-overflow: unset;\n white-space: nowrap;\n animation: typewiriter 1s forwards;\n `,\n}));\n"],"mappings":";;AAAA,SAASA,GAAG,QAAQ,cAAc;AAClC,SAASC,eAAe;AAExB,OAAO,IAAMC,SAAS,GAAGD,eAAe,CAAC;EAAA,OAAO;IAC9CE,QAAQ,EAAEH,GAAG,CAAAI,eAAA,KAAAA,eAAA,GAAAC,sBAAA;EAgBf,CAAC;AAAA,CAAC,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import type { SendContent, FunctionCall, IMessage } from "../../../types";
|
|
3
|
+
/**
|
|
4
|
+
* 聊天动作 Context
|
|
5
|
+
* 只包含操作方法,不包含状态数据
|
|
6
|
+
* 与 ChatStateContext 分离可以优化性能
|
|
7
|
+
*/
|
|
8
|
+
export interface ChatActionContextType {
|
|
9
|
+
/** 发送消息 */
|
|
10
|
+
chat: (content: SendContent) => void;
|
|
11
|
+
/** 停止聊天 */
|
|
12
|
+
stopChat: () => void;
|
|
13
|
+
/** 清空/重置聊天 */
|
|
14
|
+
clearChat: () => void;
|
|
15
|
+
/** 重新发送 */
|
|
16
|
+
reChat: () => void;
|
|
17
|
+
/** 使用建议问题 */
|
|
18
|
+
suggestChat: (text: string) => void;
|
|
19
|
+
/** 确认函数调用 */
|
|
20
|
+
confirmFnCall: (fnCall: FunctionCall, confirmed: boolean) => void;
|
|
21
|
+
/** 设置消息列表 */
|
|
22
|
+
setMessages: React.Dispatch<React.SetStateAction<IMessage[]>>;
|
|
23
|
+
}
|
|
24
|
+
export declare const ChatActionContext: import("react").Context<ChatActionContextType | null>;
|
|
25
|
+
/**
|
|
26
|
+
* 使用聊天动作 Hook
|
|
27
|
+
* @returns ChatActionContextType
|
|
28
|
+
* @throws Error 如果在 XAdkProvider 外部使用
|
|
29
|
+
*/
|
|
30
|
+
export declare const useChatActions: () => ChatActionContextType;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { createContext, useContext } from 'react';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* 聊天动作 Context
|
|
5
|
+
* 只包含操作方法,不包含状态数据
|
|
6
|
+
* 与 ChatStateContext 分离可以优化性能
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
export var ChatActionContext = /*#__PURE__*/createContext(null);
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* 使用聊天动作 Hook
|
|
13
|
+
* @returns ChatActionContextType
|
|
14
|
+
* @throws Error 如果在 XAdkProvider 外部使用
|
|
15
|
+
*/
|
|
16
|
+
export var useChatActions = function useChatActions() {
|
|
17
|
+
var context = useContext(ChatActionContext);
|
|
18
|
+
if (!context) {
|
|
19
|
+
throw new Error('useChatActions must be used within XAdkProvider');
|
|
20
|
+
}
|
|
21
|
+
return context;
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=ChatActionContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createContext","useContext","ChatActionContext","useChatActions","context","Error"],"sources":["../../../../../src/components/XAdkProvider/context/ChatActionContext.tsx"],"sourcesContent":["import { createContext, useContext } from 'react';\nimport type { SendContent, FunctionCall, IMessage } from '@/types';\n\n/**\n * 聊天动作 Context\n * 只包含操作方法,不包含状态数据\n * 与 ChatStateContext 分离可以优化性能\n */\nexport interface ChatActionContextType {\n /** 发送消息 */\n chat: (content: SendContent) => void;\n /** 停止聊天 */\n stopChat: () => void;\n /** 清空/重置聊天 */\n clearChat: () => void;\n /** 重新发送 */\n reChat: () => void;\n /** 使用建议问题 */\n suggestChat: (text: string) => void;\n /** 确认函数调用 */\n confirmFnCall: (fnCall: FunctionCall, confirmed: boolean) => void;\n /** 设置消息列表 */\n setMessages: React.Dispatch<React.SetStateAction<IMessage[]>>;\n}\n\nexport const ChatActionContext = createContext<ChatActionContextType | null>(null);\n\n/**\n * 使用聊天动作 Hook\n * @returns ChatActionContextType\n * @throws Error 如果在 XAdkProvider 外部使用\n */\nexport const useChatActions = () => {\n const context = useContext(ChatActionContext);\n if (!context) {\n throw new Error('useChatActions must be used within XAdkProvider');\n }\n return context;\n};\n"],"mappings":"AAAA,SAASA,aAAa,EAAEC,UAAU,QAAQ,OAAO;;AAGjD;AACA;AACA;AACA;AACA;;AAkBA,OAAO,IAAMC,iBAAiB,gBAAGF,aAAa,CAA+B,IAAI,CAAC;;AAElF;AACA;AACA;AACA;AACA;AACA,OAAO,IAAMG,cAAc,GAAG,SAAjBA,cAAcA,CAAA,EAAS;EAClC,IAAMC,OAAO,GAAGH,UAAU,CAACC,iBAAiB,CAAC;EAC7C,IAAI,CAACE,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CAAC,iDAAiD,CAAC;EACpE;EACA,OAAOD,OAAO;AAChB,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import type { IMessage } from "../../../types";
|
|
3
|
+
import type { ChatConfig } from "../../../services/api";
|
|
4
|
+
/**
|
|
5
|
+
* 聊天状态 Context
|
|
6
|
+
* 只包含状态数据,不包含操作方法
|
|
7
|
+
* 这样可以避免不必要的 rerender
|
|
8
|
+
*/
|
|
9
|
+
export interface ChatStateContextType {
|
|
10
|
+
/** 请求地址 */
|
|
11
|
+
url: string;
|
|
12
|
+
/** 会话令牌 */
|
|
13
|
+
token: string;
|
|
14
|
+
/** 消息列表 */
|
|
15
|
+
messages: IMessage[];
|
|
16
|
+
/** 加载状态 */
|
|
17
|
+
loading: boolean;
|
|
18
|
+
/** 当前会话 ID */
|
|
19
|
+
currentSessionId: string;
|
|
20
|
+
/** 开场白 */
|
|
21
|
+
prologue: string;
|
|
22
|
+
/** 建议问题列表 */
|
|
23
|
+
suggestions: string[];
|
|
24
|
+
/** 应用配置信息 */
|
|
25
|
+
appInfo: ChatConfig | null;
|
|
26
|
+
/** 是否已初始化 */
|
|
27
|
+
initialized: boolean;
|
|
28
|
+
}
|
|
29
|
+
export declare const ChatStateContext: import("react").Context<ChatStateContextType | null>;
|
|
30
|
+
/**
|
|
31
|
+
* 使用聊天状态 Hook
|
|
32
|
+
* @returns ChatStateContextType
|
|
33
|
+
* @throws Error 如果在 XAdkProvider 外部使用
|
|
34
|
+
*/
|
|
35
|
+
export declare const useChatState: () => ChatStateContextType;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { createContext, useContext } from "react";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* 聊天状态 Context
|
|
5
|
+
* 只包含状态数据,不包含操作方法
|
|
6
|
+
* 这样可以避免不必要的 rerender
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
export var ChatStateContext = /*#__PURE__*/createContext(null);
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* 使用聊天状态 Hook
|
|
13
|
+
* @returns ChatStateContextType
|
|
14
|
+
* @throws Error 如果在 XAdkProvider 外部使用
|
|
15
|
+
*/
|
|
16
|
+
export var useChatState = function useChatState() {
|
|
17
|
+
var context = useContext(ChatStateContext);
|
|
18
|
+
if (!context) {
|
|
19
|
+
throw new Error("useChatState must be used within XAdkProvider");
|
|
20
|
+
}
|
|
21
|
+
return context;
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=ChatStateContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createContext","useContext","ChatStateContext","useChatState","context","Error"],"sources":["../../../../../src/components/XAdkProvider/context/ChatStateContext.tsx"],"sourcesContent":["import { createContext, useContext } from \"react\";\nimport type { IMessage } from \"@/types\";\nimport type { ChatConfig } from \"@/services/api\";\n\n/**\n * 聊天状态 Context\n * 只包含状态数据,不包含操作方法\n * 这样可以避免不必要的 rerender\n */\nexport interface ChatStateContextType {\n /** 请求地址 */\n url: string;\n /** 会话令牌 */\n token: string;\n /** 消息列表 */\n messages: IMessage[];\n /** 加载状态 */\n loading: boolean;\n /** 当前会话 ID */\n currentSessionId: string;\n /** 开场白 */\n prologue: string;\n /** 建议问题列表 */\n suggestions: string[];\n /** 应用配置信息 */\n appInfo: ChatConfig | null;\n /** 是否已初始化 */\n initialized: boolean;\n}\n\nexport const ChatStateContext = createContext<ChatStateContextType | null>(\n null,\n);\n\n/**\n * 使用聊天状态 Hook\n * @returns ChatStateContextType\n * @throws Error 如果在 XAdkProvider 外部使用\n */\nexport const useChatState = () => {\n const context = useContext(ChatStateContext);\n if (!context) {\n throw new Error(\"useChatState must be used within XAdkProvider\");\n }\n return context;\n};\n"],"mappings":"AAAA,SAASA,aAAa,EAAEC,UAAU,QAAQ,OAAO;;AAIjD;AACA;AACA;AACA;AACA;;AAsBA,OAAO,IAAMC,gBAAgB,gBAAGF,aAAa,CAC3C,IACF,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,OAAO,IAAMG,YAAY,GAAG,SAAfA,YAAYA,CAAA,EAAS;EAChC,IAAMC,OAAO,GAAGH,UAAU,CAACC,gBAAgB,CAAC;EAC5C,IAAI,CAACE,OAAO,EAAE;IACZ,MAAM,IAAIC,KAAK,CAAC,+CAA+C,CAAC;EAClE;EACA,OAAOD,OAAO;AAChB,CAAC"}
|