@ai-group/chat-sdk 3.5.5 → 3.5.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/assets/add-chat.svg +13 -0
- package/dist/cjs/assets/arrow-down-blue.png +0 -0
- package/dist/cjs/assets/arrow-down.png +0 -0
- package/dist/cjs/assets/arrow-up.png +0 -0
- package/dist/cjs/assets/chatKnowledge.png +0 -0
- package/dist/cjs/assets/completed-black.png +0 -0
- package/dist/cjs/assets/completed.png +0 -0
- package/dist/cjs/assets/document-black.png +0 -0
- package/dist/cjs/assets/document.png +0 -0
- package/dist/cjs/assets/document.svg +16 -0
- package/dist/cjs/assets/empty.png +0 -0
- package/dist/cjs/assets/flash-open.svg +14 -0
- package/dist/cjs/assets/group.png +0 -0
- package/dist/cjs/assets/logo.png +0 -0
- package/dist/cjs/assets/qa-black.png +0 -0
- package/dist/cjs/assets/qa.png +0 -0
- package/dist/cjs/assets/skillNo-black.png +0 -0
- package/dist/cjs/assets/skillNo.png +0 -0
- package/dist/cjs/assets/svg/AddChatIcon.d.ts +3 -0
- package/dist/cjs/assets/svg/AddChatIcon.js +31 -0
- package/dist/cjs/assets/svg/AddChatIcon.js.map +7 -0
- package/dist/cjs/assets/think.png +0 -0
- package/dist/cjs/assets/tools-black.png +0 -0
- package/dist/cjs/assets/tools.png +0 -0
- package/dist/cjs/assets/user.png +0 -0
- package/dist/cjs/client/base.d.ts +9 -0
- package/dist/cjs/client/base.js +18 -0
- package/dist/cjs/client/base.js.map +7 -0
- package/dist/cjs/client/restClient.d.ts +0 -0
- package/dist/cjs/client/restClient.js +1 -0
- package/dist/cjs/client/restClient.js.map +7 -0
- package/dist/cjs/client/wsClient.d.ts +0 -0
- package/dist/cjs/client/wsClient.js +1 -0
- package/dist/cjs/client/wsClient.js.map +7 -0
- package/dist/cjs/components/DislikeFeedback.d.ts +8 -0
- package/dist/cjs/components/DislikeFeedback.js +113 -0
- package/dist/cjs/components/DislikeFeedback.js.map +7 -0
- package/dist/cjs/components/FeedbackTags.d.ts +7 -0
- package/dist/cjs/components/FeedbackTags.js +52 -0
- package/dist/cjs/components/FeedbackTags.js.map +7 -0
- package/dist/cjs/components/FileGallery/index.d.ts +34 -0
- package/dist/cjs/components/FileGallery/index.js +324 -0
- package/dist/cjs/components/FileGallery/index.js.map +7 -0
- package/dist/cjs/components/FileGallery/styles.d.ts +49 -0
- package/dist/cjs/components/FileGallery/styles.js +194 -0
- package/dist/cjs/components/FileGallery/styles.js.map +7 -0
- package/dist/cjs/components/FolderTree/DirectoryTree.d.ts +34 -0
- package/dist/cjs/components/FolderTree/DirectoryTree.js +288 -0
- package/dist/cjs/components/FolderTree/DirectoryTree.js.map +7 -0
- package/dist/cjs/components/FolderTree/FilePreview.d.ts +17 -0
- package/dist/cjs/components/FolderTree/FilePreview.js +163 -0
- package/dist/cjs/components/FolderTree/FilePreview.js.map +7 -0
- package/dist/cjs/components/FolderTree/index.d.ts +5 -0
- package/dist/cjs/components/FolderTree/index.js +351 -0
- package/dist/cjs/components/FolderTree/index.js.map +7 -0
- package/dist/cjs/components/FolderTree/styles.d.ts +50 -0
- package/dist/cjs/components/FolderTree/styles.js +185 -0
- package/dist/cjs/components/FolderTree/styles.js.map +7 -0
- package/dist/cjs/components/FolderTree/types.d.ts +165 -0
- package/dist/cjs/components/FolderTree/types.js +18 -0
- package/dist/cjs/components/FolderTree/types.js.map +7 -0
- package/dist/cjs/components/XAdkChatbot/components/FunctionCallRender/index.d.ts +4 -0
- package/dist/cjs/components/XAdkChatbot/components/FunctionCallRender/index.js +217 -0
- package/dist/cjs/components/XAdkChatbot/components/FunctionCallRender/index.js.map +7 -0
- package/dist/cjs/components/XAdkChatbot/components/FunctionCallRender/styles.d.ts +41 -0
- package/dist/cjs/components/XAdkChatbot/components/FunctionCallRender/styles.js +70 -0
- package/dist/cjs/components/XAdkChatbot/components/FunctionCallRender/styles.js.map +7 -0
- package/dist/cjs/components/XAdkChatbot/components/MarkdownRender/index.d.ts +10 -0
- package/dist/cjs/components/XAdkChatbot/components/MarkdownRender/index.js +186 -0
- package/dist/cjs/components/XAdkChatbot/components/MarkdownRender/index.js.map +7 -0
- package/dist/cjs/components/XAdkChatbot/components/MarkdownRender/styles.d.ts +38 -0
- package/dist/cjs/components/XAdkChatbot/components/MarkdownRender/styles.js +119 -0
- package/dist/cjs/components/XAdkChatbot/components/MarkdownRender/styles.js.map +7 -0
- package/dist/cjs/components/XAdkChatbot/components/ThinkRender/index.d.ts +8 -0
- package/dist/cjs/components/XAdkChatbot/components/ThinkRender/index.js +64 -0
- package/dist/cjs/components/XAdkChatbot/components/ThinkRender/index.js.map +7 -0
- package/dist/cjs/components/XAdkChatbot/index.d.ts +14 -0
- package/dist/cjs/components/XAdkChatbot/index.js +527 -0
- package/dist/cjs/components/XAdkChatbot/index.js.map +7 -0
- package/dist/cjs/components/XAdkChatbot/styles.d.ts +62 -0
- package/dist/cjs/components/XAdkChatbot/styles.js +234 -0
- package/dist/cjs/components/XAdkChatbot/styles.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 +33 -0
- package/dist/cjs/components/XAdkProvider/compound/DefaultLayout.js +245 -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 +26 -0
- package/dist/cjs/components/XAdkProvider/compound/Messages.js +159 -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 +58 -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 +37 -0
- package/dist/cjs/components/XAdkProvider/compound/styles.js +55 -0
- package/dist/cjs/components/XAdkProvider/compound/styles.js.map +7 -0
- package/dist/cjs/components/XAdkProvider/context/ChatActionContext.d.ts +41 -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 +44 -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 +263 -0
- package/dist/cjs/components/XAdkProvider/index.js.map +7 -0
- package/dist/cjs/components/XAdkProvider/styles.d.ts +38 -0
- package/dist/cjs/components/XAdkProvider/styles.js +51 -0
- package/dist/cjs/components/XAdkProvider/styles.js.map +7 -0
- package/dist/cjs/components/XAdkSender/Switch.d.ts +16 -0
- package/dist/cjs/components/XAdkSender/Switch.js +95 -0
- package/dist/cjs/components/XAdkSender/Switch.js.map +7 -0
- package/dist/cjs/components/XAdkSender/index.d.ts +9 -0
- package/dist/cjs/components/XAdkSender/index.js +582 -0
- package/dist/cjs/components/XAdkSender/index.js.map +7 -0
- package/dist/cjs/components/XAdkSender/styles.d.ts +47 -0
- package/dist/cjs/components/XAdkSender/styles.js +224 -0
- package/dist/cjs/components/XAdkSender/styles.js.map +7 -0
- package/dist/cjs/components/XAdkThoughtChain/index.d.ts +4 -0
- package/dist/cjs/components/XAdkThoughtChain/index.js +189 -0
- package/dist/cjs/components/XAdkThoughtChain/index.js.map +7 -0
- package/dist/cjs/components/XAdkThoughtChain/styles.d.ts +60 -0
- package/dist/cjs/components/XAdkThoughtChain/styles.js +206 -0
- package/dist/cjs/components/XAdkThoughtChain/styles.js.map +7 -0
- package/dist/cjs/components/XAiChatbot/index.d.ts +10 -0
- package/dist/cjs/components/XAiChatbot/index.js +564 -0
- package/dist/cjs/components/XAiChatbot/index.js.map +7 -0
- package/dist/cjs/components/XAiChatbot/styles.d.ts +68 -0
- package/dist/cjs/components/XAiChatbot/styles.js +386 -0
- package/dist/cjs/components/XAiChatbot/styles.js.map +7 -0
- package/dist/cjs/components/XAiConversations/index.d.ts +4 -0
- package/dist/cjs/components/XAiConversations/index.js +140 -0
- package/dist/cjs/components/XAiConversations/index.js.map +7 -0
- package/dist/cjs/components/XAiConversations/styles.d.ts +50 -0
- package/dist/cjs/components/XAiConversations/styles.js +198 -0
- package/dist/cjs/components/XAiConversations/styles.js.map +7 -0
- package/dist/cjs/components/XAiJsonView/index.d.ts +8 -0
- package/dist/cjs/components/XAiJsonView/index.js +81 -0
- package/dist/cjs/components/XAiJsonView/index.js.map +7 -0
- package/dist/cjs/components/XAiJsonView/styles.d.ts +39 -0
- package/dist/cjs/components/XAiJsonView/styles.js +58 -0
- package/dist/cjs/components/XAiJsonView/styles.js.map +7 -0
- package/dist/cjs/components/XAiProvider/demo.styles.d.ts +37 -0
- package/dist/cjs/components/XAiProvider/demo.styles.js +37 -0
- package/dist/cjs/components/XAiProvider/demo.styles.js.map +7 -0
- package/dist/cjs/components/XAiProvider/index.d.ts +4 -0
- package/dist/cjs/components/XAiProvider/index.js +385 -0
- package/dist/cjs/components/XAiProvider/index.js.map +7 -0
- package/dist/cjs/components/XAiSDK.d.ts +10 -0
- package/dist/cjs/components/XAiSDK.js +53 -0
- package/dist/cjs/components/XAiSDK.js.map +7 -0
- package/dist/cjs/components/XAiSender/index.d.ts +4 -0
- package/dist/cjs/components/XAiSender/index.js +228 -0
- package/dist/cjs/components/XAiSender/index.js.map +7 -0
- package/dist/cjs/components/XAiSender/styles.d.ts +44 -0
- package/dist/cjs/components/XAiSender/styles.js +157 -0
- package/dist/cjs/components/XAiSender/styles.js.map +7 -0
- package/dist/cjs/constants/index.d.ts +3 -0
- package/dist/cjs/constants/index.js +36 -0
- package/dist/cjs/constants/index.js.map +7 -0
- package/dist/cjs/context/AiProviderContext.d.ts +15 -0
- package/dist/cjs/context/AiProviderContext.js +74 -0
- package/dist/cjs/context/AiProviderContext.js.map +7 -0
- package/dist/cjs/context/ThemeContext.d.ts +20 -0
- package/dist/cjs/context/ThemeContext.js +37 -0
- package/dist/cjs/context/ThemeContext.js.map +7 -0
- package/dist/cjs/hooks/useADKChat.d.ts +41 -0
- package/dist/cjs/hooks/useADKChat.js +1027 -0
- package/dist/cjs/hooks/useADKChat.js.map +7 -0
- package/dist/cjs/hooks/useAgentGenerator.d.ts +94 -0
- package/dist/cjs/hooks/useAgentGenerator.js +804 -0
- package/dist/cjs/hooks/useAgentGenerator.js.map +7 -0
- package/dist/cjs/hooks/useEventStreamRequest.d.ts +30 -0
- package/dist/cjs/hooks/useEventStreamRequest.js +191 -0
- package/dist/cjs/hooks/useEventStreamRequest.js.map +7 -0
- package/dist/cjs/hooks/useProviderContext.d.ts +34 -0
- package/dist/cjs/hooks/useProviderContext.js +105 -0
- package/dist/cjs/hooks/useProviderContext.js.map +7 -0
- package/dist/cjs/hooks/useXAiSDK.d.ts +14 -0
- package/dist/cjs/hooks/useXAiSDK.js +76 -0
- package/dist/cjs/hooks/useXAiSDK.js.map +7 -0
- package/dist/cjs/index.d.ts +30 -0
- package/dist/cjs/index.js +123 -0
- package/dist/cjs/index.js.map +7 -0
- package/dist/cjs/presets/xGroupAdk.d.ts +20 -0
- package/dist/cjs/presets/xGroupAdk.js +130 -0
- package/dist/cjs/presets/xGroupAdk.js.map +7 -0
- package/dist/cjs/services/api.d.ts +162 -0
- package/dist/cjs/services/api.js +101 -0
- package/dist/cjs/services/api.js.map +7 -0
- package/dist/cjs/styles/common.d.ts +73 -0
- package/dist/cjs/styles/common.js +174 -0
- package/dist/cjs/styles/common.js.map +7 -0
- package/dist/cjs/styles/markdown.d.ts +3 -0
- package/dist/cjs/styles/markdown.js +185 -0
- package/dist/cjs/styles/markdown.js.map +7 -0
- package/dist/cjs/types/ChatHook.d.ts +92 -0
- package/dist/cjs/types/ChatHook.js +18 -0
- package/dist/cjs/types/ChatHook.js.map +7 -0
- package/dist/cjs/types/ChatStrategies.d.ts +45 -0
- package/dist/cjs/types/ChatStrategies.js +18 -0
- package/dist/cjs/types/ChatStrategies.js.map +7 -0
- package/dist/cjs/types/FileGallery.d.ts +36 -0
- package/dist/cjs/types/FileGallery.js +18 -0
- package/dist/cjs/types/FileGallery.js.map +7 -0
- package/dist/cjs/types/FunctionCallRender.d.ts +35 -0
- package/dist/cjs/types/FunctionCallRender.js +32 -0
- package/dist/cjs/types/FunctionCallRender.js.map +7 -0
- package/dist/cjs/types/XAdkChatbot.d.ts +348 -0
- package/dist/cjs/types/XAdkChatbot.js +18 -0
- package/dist/cjs/types/XAdkChatbot.js.map +7 -0
- package/dist/cjs/types/XAdkProvider.d.ts +224 -0
- package/dist/cjs/types/XAdkProvider.js +34 -0
- package/dist/cjs/types/XAdkProvider.js.map +7 -0
- package/dist/cjs/types/XAdkSender.d.ts +114 -0
- package/dist/cjs/types/XAdkSender.js +18 -0
- package/dist/cjs/types/XAdkSender.js.map +7 -0
- package/dist/cjs/types/XAdkThoughtChain.d.ts +35 -0
- package/dist/cjs/types/XAdkThoughtChain.js +18 -0
- package/dist/cjs/types/XAdkThoughtChain.js.map +7 -0
- package/dist/cjs/types/XAiChatbot.d.ts +158 -0
- package/dist/cjs/types/XAiChatbot.js +18 -0
- package/dist/cjs/types/XAiChatbot.js.map +7 -0
- package/dist/cjs/types/XAiConversations.d.ts +22 -0
- package/dist/cjs/types/XAiConversations.js +18 -0
- package/dist/cjs/types/XAiConversations.js.map +7 -0
- package/dist/cjs/types/XAiMessage.d.ts +126 -0
- package/dist/cjs/types/XAiMessage.js +55 -0
- package/dist/cjs/types/XAiMessage.js.map +7 -0
- package/dist/cjs/types/XAiProvider.d.ts +315 -0
- package/dist/cjs/types/XAiProvider.js +78 -0
- package/dist/cjs/types/XAiProvider.js.map +7 -0
- package/dist/cjs/types/XAiSender.d.ts +29 -0
- package/dist/cjs/types/XAiSender.js +18 -0
- package/dist/cjs/types/XAiSender.js.map +7 -0
- package/dist/cjs/types/common.d.ts +6 -0
- package/dist/cjs/types/common.js +18 -0
- package/dist/cjs/types/common.js.map +7 -0
- package/dist/cjs/types/index.d.ts +13 -0
- package/dist/cjs/types/index.js +48 -0
- package/dist/cjs/types/index.js.map +7 -0
- package/dist/cjs/types/mdx.d.ts +23 -0
- package/dist/cjs/types/node.d.ts +10 -0
- package/dist/cjs/types/node.js +18 -0
- package/dist/cjs/types/node.js.map +7 -0
- package/dist/cjs/utils/chat.d.ts +34 -0
- package/dist/cjs/utils/chat.js +1 -0
- package/dist/cjs/utils/chat.js.map +7 -0
- package/dist/cjs/utils/file.d.ts +2 -0
- package/dist/cjs/utils/file.js +33 -0
- package/dist/cjs/utils/file.js.map +7 -0
- package/dist/cjs/utils/index.d.ts +4 -0
- package/dist/cjs/utils/index.js +59 -0
- package/dist/cjs/utils/index.js.map +7 -0
- 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/providerManager.d.ts +23 -0
- package/dist/cjs/utils/providerManager.js +73 -0
- package/dist/cjs/utils/providerManager.js.map +7 -0
- package/dist/cjs/utils/request.d.ts +78 -0
- package/dist/cjs/utils/request.example.d.ts +39 -0
- package/dist/cjs/utils/request.example.js +211 -0
- package/dist/cjs/utils/request.example.js.map +7 -0
- package/dist/cjs/utils/request.js +231 -0
- package/dist/cjs/utils/request.js.map +7 -0
- package/dist/cjs/utils/umdEntry.d.ts +170 -0
- package/dist/cjs/utils/umdEntry.js +354 -0
- package/dist/cjs/utils/umdEntry.js.map +7 -0
- package/dist/cjs/utils/workflowNode.d.ts +2 -0
- package/dist/cjs/utils/workflowNode.js +169 -0
- package/dist/cjs/utils/workflowNode.js.map +7 -0
- package/dist/esm/assets/add-chat.svg +13 -0
- package/dist/esm/assets/arrow-down-blue.png +0 -0
- package/dist/esm/assets/arrow-down.png +0 -0
- package/dist/esm/assets/arrow-up.png +0 -0
- package/dist/esm/assets/chatKnowledge.png +0 -0
- package/dist/esm/assets/completed-black.png +0 -0
- package/dist/esm/assets/completed.png +0 -0
- package/dist/esm/assets/document-black.png +0 -0
- package/dist/esm/assets/document.png +0 -0
- package/dist/esm/assets/document.svg +16 -0
- package/dist/esm/assets/empty.png +0 -0
- package/dist/esm/assets/flash-open.svg +14 -0
- package/dist/esm/assets/group.png +0 -0
- package/dist/esm/assets/logo.png +0 -0
- package/dist/esm/assets/qa-black.png +0 -0
- package/dist/esm/assets/qa.png +0 -0
- package/dist/esm/assets/skillNo-black.png +0 -0
- package/dist/esm/assets/skillNo.png +0 -0
- package/dist/esm/assets/svg/AddChatIcon.d.ts +3 -0
- package/dist/esm/assets/svg/AddChatIcon.js +40 -0
- package/dist/esm/assets/svg/AddChatIcon.js.map +1 -0
- package/dist/esm/assets/think.png +0 -0
- package/dist/esm/assets/tools-black.png +0 -0
- package/dist/esm/assets/tools.png +0 -0
- package/dist/esm/assets/user.png +0 -0
- package/dist/esm/client/base.d.ts +9 -0
- package/dist/esm/client/base.js +2 -0
- package/dist/esm/client/base.js.map +1 -0
- package/dist/esm/client/restClient.d.ts +0 -0
- package/dist/esm/client/restClient.js +2 -0
- package/dist/esm/client/restClient.js.map +1 -0
- package/dist/esm/client/wsClient.d.ts +0 -0
- package/dist/esm/client/wsClient.js +2 -0
- package/dist/esm/client/wsClient.js.map +1 -0
- package/dist/esm/components/DislikeFeedback.d.ts +8 -0
- package/dist/esm/components/DislikeFeedback.js +127 -0
- package/dist/esm/components/DislikeFeedback.js.map +1 -0
- package/dist/esm/components/FeedbackTags.d.ts +7 -0
- package/dist/esm/components/FeedbackTags.js +34 -0
- package/dist/esm/components/FeedbackTags.js.map +1 -0
- package/dist/esm/components/FileGallery/index.d.ts +34 -0
- package/dist/esm/components/FileGallery/index.js +464 -0
- package/dist/esm/components/FileGallery/index.js.map +1 -0
- package/dist/esm/components/FileGallery/styles.d.ts +49 -0
- package/dist/esm/components/FileGallery/styles.js +23 -0
- package/dist/esm/components/FileGallery/styles.js.map +1 -0
- package/dist/esm/components/FolderTree/DirectoryTree.d.ts +34 -0
- package/dist/esm/components/FolderTree/DirectoryTree.js +248 -0
- package/dist/esm/components/FolderTree/DirectoryTree.js.map +1 -0
- package/dist/esm/components/FolderTree/FilePreview.d.ts +17 -0
- package/dist/esm/components/FolderTree/FilePreview.js +160 -0
- package/dist/esm/components/FolderTree/FilePreview.js.map +1 -0
- package/dist/esm/components/FolderTree/index.d.ts +5 -0
- package/dist/esm/components/FolderTree/index.js +393 -0
- package/dist/esm/components/FolderTree/index.js.map +1 -0
- package/dist/esm/components/FolderTree/styles.d.ts +50 -0
- package/dist/esm/components/FolderTree/styles.js +24 -0
- package/dist/esm/components/FolderTree/styles.js.map +1 -0
- package/dist/esm/components/FolderTree/types.d.ts +165 -0
- package/dist/esm/components/FolderTree/types.js +2 -0
- package/dist/esm/components/FolderTree/types.js.map +1 -0
- package/dist/esm/components/XAdkChatbot/components/FunctionCallRender/index.d.ts +4 -0
- package/dist/esm/components/XAdkChatbot/components/FunctionCallRender/index.js +208 -0
- package/dist/esm/components/XAdkChatbot/components/FunctionCallRender/index.js.map +1 -0
- package/dist/esm/components/XAdkChatbot/components/FunctionCallRender/styles.d.ts +41 -0
- package/dist/esm/components/XAdkChatbot/components/FunctionCallRender/styles.js +15 -0
- package/dist/esm/components/XAdkChatbot/components/FunctionCallRender/styles.js.map +1 -0
- package/dist/esm/components/XAdkChatbot/components/MarkdownRender/index.d.ts +10 -0
- package/dist/esm/components/XAdkChatbot/components/MarkdownRender/index.js +172 -0
- package/dist/esm/components/XAdkChatbot/components/MarkdownRender/index.js.map +1 -0
- 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/XAdkChatbot/components/ThinkRender/index.d.ts +8 -0
- package/dist/esm/components/XAdkChatbot/components/ThinkRender/index.js +42 -0
- package/dist/esm/components/XAdkChatbot/components/ThinkRender/index.js.map +1 -0
- package/dist/esm/components/XAdkChatbot/index.d.ts +14 -0
- package/dist/esm/components/XAdkChatbot/index.js +611 -0
- package/dist/esm/components/XAdkChatbot/index.js.map +1 -0
- package/dist/esm/components/XAdkChatbot/styles.d.ts +62 -0
- package/dist/esm/components/XAdkChatbot/styles.js +37 -0
- package/dist/esm/components/XAdkChatbot/styles.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 +33 -0
- package/dist/esm/components/XAdkProvider/compound/DefaultLayout.js +190 -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 +26 -0
- package/dist/esm/components/XAdkProvider/compound/Messages.js +179 -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 +44 -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 +37 -0
- package/dist/esm/components/XAdkProvider/compound/styles.js +11 -0
- package/dist/esm/components/XAdkProvider/compound/styles.js.map +1 -0
- package/dist/esm/components/XAdkProvider/context/ChatActionContext.d.ts +41 -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 +44 -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 +264 -0
- package/dist/esm/components/XAdkProvider/index.js.map +1 -0
- package/dist/esm/components/XAdkProvider/styles.d.ts +38 -0
- package/dist/esm/components/XAdkProvider/styles.js +13 -0
- package/dist/esm/components/XAdkProvider/styles.js.map +1 -0
- package/dist/esm/components/XAdkSender/Switch.d.ts +16 -0
- package/dist/esm/components/XAdkSender/Switch.js +53 -0
- package/dist/esm/components/XAdkSender/Switch.js.map +1 -0
- package/dist/esm/components/XAdkSender/index.d.ts +9 -0
- package/dist/esm/components/XAdkSender/index.js +677 -0
- package/dist/esm/components/XAdkSender/index.js.map +1 -0
- package/dist/esm/components/XAdkSender/styles.d.ts +47 -0
- package/dist/esm/components/XAdkSender/styles.js +33 -0
- package/dist/esm/components/XAdkSender/styles.js.map +1 -0
- package/dist/esm/components/XAdkThoughtChain/index.d.ts +4 -0
- package/dist/esm/components/XAdkThoughtChain/index.js +201 -0
- package/dist/esm/components/XAdkThoughtChain/index.js.map +1 -0
- package/dist/esm/components/XAdkThoughtChain/styles.d.ts +60 -0
- package/dist/esm/components/XAdkThoughtChain/styles.js +41 -0
- package/dist/esm/components/XAdkThoughtChain/styles.js.map +1 -0
- package/dist/esm/components/XAiChatbot/index.d.ts +10 -0
- package/dist/esm/components/XAiChatbot/index.js +588 -0
- package/dist/esm/components/XAiChatbot/index.js.map +1 -0
- package/dist/esm/components/XAiChatbot/styles.d.ts +68 -0
- package/dist/esm/components/XAiChatbot/styles.js +49 -0
- package/dist/esm/components/XAiChatbot/styles.js.map +1 -0
- package/dist/esm/components/XAiConversations/index.d.ts +4 -0
- package/dist/esm/components/XAiConversations/index.js +157 -0
- package/dist/esm/components/XAiConversations/index.js.map +1 -0
- package/dist/esm/components/XAiConversations/styles.d.ts +50 -0
- package/dist/esm/components/XAiConversations/styles.js +39 -0
- package/dist/esm/components/XAiConversations/styles.js.map +1 -0
- package/dist/esm/components/XAiJsonView/index.d.ts +8 -0
- package/dist/esm/components/XAiJsonView/index.js +44 -0
- package/dist/esm/components/XAiJsonView/index.js.map +1 -0
- package/dist/esm/components/XAiJsonView/styles.d.ts +39 -0
- package/dist/esm/components/XAiJsonView/styles.js +19 -0
- package/dist/esm/components/XAiJsonView/styles.js.map +1 -0
- package/dist/esm/components/XAiProvider/demo.styles.d.ts +37 -0
- package/dist/esm/components/XAiProvider/demo.styles.js +12 -0
- package/dist/esm/components/XAiProvider/demo.styles.js.map +1 -0
- package/dist/esm/components/XAiProvider/index.d.ts +4 -0
- package/dist/esm/components/XAiProvider/index.js +492 -0
- package/dist/esm/components/XAiProvider/index.js.map +1 -0
- package/dist/esm/components/XAiSDK.d.ts +10 -0
- package/dist/esm/components/XAiSDK.js +29 -0
- package/dist/esm/components/XAiSDK.js.map +1 -0
- package/dist/esm/components/XAiSender/index.d.ts +4 -0
- package/dist/esm/components/XAiSender/index.js +248 -0
- package/dist/esm/components/XAiSender/index.js.map +1 -0
- package/dist/esm/components/XAiSender/styles.d.ts +44 -0
- package/dist/esm/components/XAiSender/styles.js +19 -0
- package/dist/esm/components/XAiSender/styles.js.map +1 -0
- package/dist/esm/constants/index.d.ts +3 -0
- package/dist/esm/constants/index.js +9 -0
- package/dist/esm/constants/index.js.map +1 -0
- package/dist/esm/context/AiProviderContext.d.ts +15 -0
- package/dist/esm/context/AiProviderContext.js +63 -0
- package/dist/esm/context/AiProviderContext.js.map +1 -0
- package/dist/esm/context/ThemeContext.d.ts +20 -0
- package/dist/esm/context/ThemeContext.js +8 -0
- package/dist/esm/context/ThemeContext.js.map +1 -0
- package/dist/esm/hooks/useADKChat.d.ts +41 -0
- package/dist/esm/hooks/useADKChat.js +1373 -0
- package/dist/esm/hooks/useADKChat.js.map +1 -0
- package/dist/esm/hooks/useAgentGenerator.d.ts +94 -0
- package/dist/esm/hooks/useAgentGenerator.js +1240 -0
- package/dist/esm/hooks/useAgentGenerator.js.map +1 -0
- package/dist/esm/hooks/useEventStreamRequest.d.ts +30 -0
- package/dist/esm/hooks/useEventStreamRequest.js +232 -0
- package/dist/esm/hooks/useEventStreamRequest.js.map +1 -0
- package/dist/esm/hooks/useProviderContext.d.ts +34 -0
- package/dist/esm/hooks/useProviderContext.js +115 -0
- package/dist/esm/hooks/useProviderContext.js.map +1 -0
- package/dist/esm/hooks/useXAiSDK.d.ts +14 -0
- package/dist/esm/hooks/useXAiSDK.js +49 -0
- package/dist/esm/hooks/useXAiSDK.js.map +1 -0
- package/dist/esm/index.d.ts +30 -0
- package/dist/esm/index.js +42 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/presets/xGroupAdk.d.ts +20 -0
- package/dist/esm/presets/xGroupAdk.js +122 -0
- package/dist/esm/presets/xGroupAdk.js.map +1 -0
- package/dist/esm/services/api.d.ts +162 -0
- package/dist/esm/services/api.js +223 -0
- package/dist/esm/services/api.js.map +1 -0
- package/dist/esm/styles/common.d.ts +73 -0
- package/dist/esm/styles/common.js +113 -0
- package/dist/esm/styles/common.js.map +1 -0
- package/dist/esm/styles/markdown.d.ts +3 -0
- package/dist/esm/styles/markdown.js +12 -0
- package/dist/esm/styles/markdown.js.map +1 -0
- package/dist/esm/types/ChatHook.d.ts +92 -0
- package/dist/esm/types/ChatHook.js +2 -0
- package/dist/esm/types/ChatHook.js.map +1 -0
- package/dist/esm/types/ChatStrategies.d.ts +45 -0
- package/dist/esm/types/ChatStrategies.js +2 -0
- package/dist/esm/types/ChatStrategies.js.map +1 -0
- package/dist/esm/types/FileGallery.d.ts +36 -0
- package/dist/esm/types/FileGallery.js +2 -0
- package/dist/esm/types/FileGallery.js.map +1 -0
- package/dist/esm/types/FunctionCallRender.d.ts +35 -0
- package/dist/esm/types/FunctionCallRender.js +14 -0
- package/dist/esm/types/FunctionCallRender.js.map +1 -0
- package/dist/esm/types/XAdkChatbot.d.ts +348 -0
- package/dist/esm/types/XAdkChatbot.js +2 -0
- package/dist/esm/types/XAdkChatbot.js.map +1 -0
- package/dist/esm/types/XAdkProvider.d.ts +224 -0
- package/dist/esm/types/XAdkProvider.js +33 -0
- package/dist/esm/types/XAdkProvider.js.map +1 -0
- package/dist/esm/types/XAdkSender.d.ts +114 -0
- package/dist/esm/types/XAdkSender.js +2 -0
- package/dist/esm/types/XAdkSender.js.map +1 -0
- package/dist/esm/types/XAdkThoughtChain.d.ts +35 -0
- package/dist/esm/types/XAdkThoughtChain.js +2 -0
- package/dist/esm/types/XAdkThoughtChain.js.map +1 -0
- package/dist/esm/types/XAiChatbot.d.ts +158 -0
- package/dist/esm/types/XAiChatbot.js +2 -0
- package/dist/esm/types/XAiChatbot.js.map +1 -0
- package/dist/esm/types/XAiConversations.d.ts +22 -0
- package/dist/esm/types/XAiConversations.js +2 -0
- package/dist/esm/types/XAiConversations.js.map +1 -0
- package/dist/esm/types/XAiMessage.d.ts +126 -0
- package/dist/esm/types/XAiMessage.js +65 -0
- package/dist/esm/types/XAiMessage.js.map +1 -0
- package/dist/esm/types/XAiProvider.d.ts +315 -0
- package/dist/esm/types/XAiProvider.js +106 -0
- package/dist/esm/types/XAiProvider.js.map +1 -0
- package/dist/esm/types/XAiSender.d.ts +29 -0
- package/dist/esm/types/XAiSender.js +2 -0
- package/dist/esm/types/XAiSender.js.map +1 -0
- package/dist/esm/types/common.d.ts +6 -0
- package/dist/esm/types/common.js +2 -0
- package/dist/esm/types/common.js.map +1 -0
- package/dist/esm/types/index.d.ts +13 -0
- package/dist/esm/types/index.js +14 -0
- package/dist/esm/types/index.js.map +1 -0
- package/dist/esm/types/mdx.d.ts +23 -0
- package/dist/esm/types/node.d.ts +10 -0
- package/dist/esm/types/node.js +2 -0
- package/dist/esm/types/node.js.map +1 -0
- package/dist/esm/utils/chat.d.ts +34 -0
- package/dist/esm/utils/chat.js +976 -0
- package/dist/esm/utils/chat.js.map +1 -0
- package/dist/esm/utils/file.d.ts +2 -0
- package/dist/esm/utils/file.js +10 -0
- package/dist/esm/utils/file.js.map +1 -0
- package/dist/esm/utils/index.d.ts +4 -0
- package/dist/esm/utils/index.js +26 -0
- package/dist/esm/utils/index.js.map +1 -0
- 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/providerManager.d.ts +23 -0
- package/dist/esm/utils/providerManager.js +70 -0
- package/dist/esm/utils/providerManager.js.map +1 -0
- package/dist/esm/utils/request.d.ts +78 -0
- package/dist/esm/utils/request.example.d.ts +39 -0
- package/dist/esm/utils/request.example.js +379 -0
- package/dist/esm/utils/request.example.js.map +1 -0
- package/dist/esm/utils/request.js +491 -0
- package/dist/esm/utils/request.js.map +1 -0
- package/dist/esm/utils/umdEntry.d.ts +170 -0
- package/dist/esm/utils/umdEntry.js +439 -0
- package/dist/esm/utils/umdEntry.js.map +1 -0
- package/dist/esm/utils/workflowNode.d.ts +2 -0
- package/dist/esm/utils/workflowNode.js +141 -0
- package/dist/esm/utils/workflowNode.js.map +1 -0
- package/dist/umd/chat-sdk.min.css +1 -0
- package/dist/umd/chat-sdk.min.js +1 -0
- package/dist/umd/static/KaTeX_AMS-Regular.1608a09b.woff +0 -0
- package/dist/umd/static/KaTeX_AMS-Regular.4aafdb68.ttf +0 -0
- package/dist/umd/static/KaTeX_AMS-Regular.a79f1c31.woff2 +0 -0
- package/dist/umd/static/KaTeX_Caligraphic-Bold.b6770918.woff +0 -0
- package/dist/umd/static/KaTeX_Caligraphic-Bold.cce5b8ec.ttf +0 -0
- package/dist/umd/static/KaTeX_Caligraphic-Bold.ec17d132.woff2 +0 -0
- package/dist/umd/static/KaTeX_Caligraphic-Regular.07ef19e7.ttf +0 -0
- package/dist/umd/static/KaTeX_Caligraphic-Regular.55fac258.woff2 +0 -0
- package/dist/umd/static/KaTeX_Caligraphic-Regular.dad44a7f.woff +0 -0
- package/dist/umd/static/KaTeX_Fraktur-Bold.9f256b85.woff +0 -0
- package/dist/umd/static/KaTeX_Fraktur-Bold.b18f59e1.ttf +0 -0
- package/dist/umd/static/KaTeX_Fraktur-Bold.d42a5579.woff2 +0 -0
- package/dist/umd/static/KaTeX_Fraktur-Regular.7c187121.woff +0 -0
- package/dist/umd/static/KaTeX_Fraktur-Regular.d3c882a6.woff2 +0 -0
- package/dist/umd/static/KaTeX_Fraktur-Regular.ed38e79f.ttf +0 -0
- package/dist/umd/static/KaTeX_Main-Bold.b74a1a8b.ttf +0 -0
- package/dist/umd/static/KaTeX_Main-Bold.c3fb5ac2.woff2 +0 -0
- package/dist/umd/static/KaTeX_Main-Bold.d181c465.woff +0 -0
- package/dist/umd/static/KaTeX_Main-BoldItalic.6f2bb1df.woff2 +0 -0
- package/dist/umd/static/KaTeX_Main-BoldItalic.70d8b0a5.ttf +0 -0
- package/dist/umd/static/KaTeX_Main-BoldItalic.e3f82f9d.woff +0 -0
- package/dist/umd/static/KaTeX_Main-Italic.47373d1e.ttf +0 -0
- package/dist/umd/static/KaTeX_Main-Italic.8916142b.woff2 +0 -0
- package/dist/umd/static/KaTeX_Main-Italic.9024d815.woff +0 -0
- package/dist/umd/static/KaTeX_Main-Regular.0462f03b.woff2 +0 -0
- package/dist/umd/static/KaTeX_Main-Regular.7f51fe03.woff +0 -0
- package/dist/umd/static/KaTeX_Main-Regular.b7f8fe9b.ttf +0 -0
- package/dist/umd/static/KaTeX_Math-BoldItalic.572d331f.woff2 +0 -0
- package/dist/umd/static/KaTeX_Math-BoldItalic.a879cf83.ttf +0 -0
- package/dist/umd/static/KaTeX_Math-BoldItalic.f1035d8d.woff +0 -0
- package/dist/umd/static/KaTeX_Math-Italic.5295ba48.woff +0 -0
- package/dist/umd/static/KaTeX_Math-Italic.939bc644.ttf +0 -0
- package/dist/umd/static/KaTeX_Math-Italic.f28c23ac.woff2 +0 -0
- package/dist/umd/static/KaTeX_SansSerif-Bold.8c5b5494.woff2 +0 -0
- package/dist/umd/static/KaTeX_SansSerif-Bold.94e1e8dc.ttf +0 -0
- package/dist/umd/static/KaTeX_SansSerif-Bold.bf59d231.woff +0 -0
- package/dist/umd/static/KaTeX_SansSerif-Italic.3b1e59b3.woff2 +0 -0
- package/dist/umd/static/KaTeX_SansSerif-Italic.7c9bc82b.woff +0 -0
- package/dist/umd/static/KaTeX_SansSerif-Italic.b4c20c84.ttf +0 -0
- package/dist/umd/static/KaTeX_SansSerif-Regular.74048478.woff +0 -0
- package/dist/umd/static/KaTeX_SansSerif-Regular.ba21ed5f.woff2 +0 -0
- package/dist/umd/static/KaTeX_SansSerif-Regular.d4d7ba48.ttf +0 -0
- package/dist/umd/static/KaTeX_Script-Regular.03e9641d.woff2 +0 -0
- package/dist/umd/static/KaTeX_Script-Regular.07505710.woff +0 -0
- package/dist/umd/static/KaTeX_Script-Regular.fe9cbbe1.ttf +0 -0
- package/dist/umd/static/KaTeX_Size1-Regular.e1e279cb.woff +0 -0
- package/dist/umd/static/KaTeX_Size1-Regular.eae34984.woff2 +0 -0
- package/dist/umd/static/KaTeX_Size1-Regular.fabc004a.ttf +0 -0
- package/dist/umd/static/KaTeX_Size2-Regular.57727022.woff +0 -0
- package/dist/umd/static/KaTeX_Size2-Regular.5916a24f.woff2 +0 -0
- package/dist/umd/static/KaTeX_Size2-Regular.d6b476ec.ttf +0 -0
- package/dist/umd/static/KaTeX_Size3-Regular.9acaf01c.woff +0 -0
- package/dist/umd/static/KaTeX_Size3-Regular.a144ef58.ttf +0 -0
- package/dist/umd/static/KaTeX_Size3-Regular.b4230e7e.woff2 +0 -0
- package/dist/umd/static/KaTeX_Size4-Regular.10d95fd3.woff2 +0 -0
- package/dist/umd/static/KaTeX_Size4-Regular.7a996c9d.woff +0 -0
- package/dist/umd/static/KaTeX_Size4-Regular.fbccdabe.ttf +0 -0
- package/dist/umd/static/KaTeX_Typewriter-Regular.6258592b.woff +0 -0
- package/dist/umd/static/KaTeX_Typewriter-Regular.a8709e36.woff2 +0 -0
- package/dist/umd/static/KaTeX_Typewriter-Regular.d97aaf4a.ttf +0 -0
- package/package.json +10 -10
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useMemo","useCallback","useEffect","useRef","useImperativeHandle","forwardRef","Button","Flex","Tooltip","message","antdMessage","clsx","SwapRightOutlined","ReloadOutlined","CopyOutlined","InfoCircleOutlined","copy","useStyles","MarkdownRender","FunctionCallRender","FileGallery","XAdkThoughtChain","parseAgentMessage","mergeChatStrategies","defaultToolKindResolver","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","scrollThreshold","XAdkChatbot","_ref","ref","_mergedStrategies$par","_ref$loading","loading","prologue","suggestions","messages","showFnCallDetail","onConfirm","onSuggest","showRetry","showCopy","showLog","onRetry","onCopy","onShowLog","actions","actionsExtra","className","style","_ref$enableGrouping","enableGrouping","_ref$enableProcessPar","enableProcessParsing","parseOptions","_ref$initialized","initialized","sessionId","onFileClick","renderFunctionCall","toolKindResolver","strategies","preset","styles","listRef","lastScrollTopRef","userHasScrolledRef","messagesEndRef","prevInitializedRef","prevSessionIdRef","scrollToBottom","_messagesEndRef$curre","behavior","arguments","length","undefined","current","scrollIntoView","mergedStrategies","resolveToolKind","name","msg","_ref2","_toolKindResolver","_mergedStrategies$res","call","parseProcessMessage","el","stableTimer","doScroll","_messagesEndRef$curre2","observer","MutationObserver","clearTimeout","setTimeout","observe","childList","subtree","characterData","maxTimer","disconnect","lastMsg","role","scrollTop","scrollHeight","prevLoadingRef","wasLoading","timer","handleScroll","currentTop","isAtBottom","Math","abs","clientHeight","listElement","addEventListener","removeEventListener","chatGroups","map","_msg$isLike","id","msgs","invocationId","allFiles","fileData","isLike","groups","forEach","isRealUserQuery","functionResponse","functionCall","lastGroup","isLastGroupAgent","push","_msg$isLike2","concat","g","reduce","acc","m","_toConsumableArray","renderBotGroup","group","isLastGroup","botMsg","children","i","text","_renderFunctionCall","_msg$functionCall","showDetail","kind","renderApproval","renderHandoff","mergedToolMap","Map","callId","has","set","_objectSpread","_mergedToolMap$get","get","tool","args","nodes","currentProcessItems","processedToolIds","Set","flushProcessItems","type","items","key","mergedMsg","content","add","parts","part","partIdx","includes","titleMap","planning","replanning","reasoning","action_log","process_text","title","trim","lastNode","fullTextToCopy","filter","join","lastBotMsg","hasProcess","some","n","isGroupLoading","actionProps","isLastBotMsg","actionExtraNode","lastProcessIdx","findLastIndex","node","idx","isLastProcess","defaultOpen","fileSection","fileHeader","display","flexWrap","gap","file","index","onClick","metaFooter","actionIcons","success","timestamp","renderUserGroup","userMsg","userContainer","align","marginBottom","card","renderSuggestions","suggestionWrapper","item","suggestion","suggestContent","icon","iconPosition","whiteSpace","height","wordWrap","textAlign","padding","lineHeight","wrapper","list","displayName"],"sources":["../../../../src/components/XAdkChatbot/index.tsx"],"sourcesContent":["import React, {\n useMemo,\n useCallback,\n useEffect,\n useRef,\n useImperativeHandle,\n forwardRef,\n} from \"react\";\nimport { Button, Flex, Tooltip, message as antdMessage } from \"antd\";\nimport clsx from \"clsx\";\nimport {\n SwapRightOutlined,\n ReloadOutlined,\n CopyOutlined,\n InfoCircleOutlined,\n CheckCircleFilled,\n} from \"@ant-design/icons\";\nimport copy from \"copy-to-clipboard\";\nimport { useStyles } from \"./styles\";\nimport MarkdownRender from \"./components/MarkdownRender\";\nimport FunctionCallRender from \"./components/FunctionCallRender\";\nimport FileGallery from \"../FileGallery\";\nimport XAdkThoughtChain from \"@/components/XAdkThoughtChain\";\nimport { parseAgentMessage } from \"@/utils\";\nimport { mergeChatStrategies } from \"@/presets/xGroupAdk\";\nimport type {\n IMessage,\n XAdkChatbotProps,\n XAdkChatbotHandle,\n ChatGroup,\n} from \"@/types\";\nimport type { ThoughtChainItemType } from \"@/types/XAdkThoughtChain\";\nimport { defaultToolKindResolver } from \"@/types/FunctionCallRender\";\n\nconst scrollThreshold = 10;\n\n/**\n * XAdkChatbot - 增强版聊天组件\n *\n * 新增功能:\n * - ✅ 自动消息分组 (enableGrouping)\n * - ✅ 自动解析思维链 (enableProcessParsing)\n * - ✅ 文件展示 (FileGallery)\n * - ✅ 操作栏 (重试/复制/日志)\n * - ✅ 欢迎页面 (agentName/agentIcon/description)\n */\nconst XAdkChatbot = forwardRef<XAdkChatbotHandle, XAdkChatbotProps>(\n (\n {\n loading = false,\n prologue,\n suggestions,\n messages,\n showFnCallDetail,\n onConfirm,\n onSuggest,\n showRetry,\n showCopy,\n showLog,\n onRetry,\n onCopy,\n onShowLog,\n actions,\n actionsExtra,\n className,\n style,\n // welcome = null,\n enableGrouping = true,\n enableProcessParsing = true,\n parseOptions,\n initialized = false,\n sessionId,\n onFileClick,\n renderFunctionCall,\n toolKindResolver,\n strategies,\n preset,\n },\n ref,\n ) => {\n const styles = useStyles();\n const listRef = useRef<HTMLDivElement>(null);\n const lastScrollTopRef = useRef(0);\n const userHasScrolledRef = useRef(false);\n const messagesEndRef = useRef<HTMLDivElement>(null);\n const prevInitializedRef = useRef(false);\n const prevSessionIdRef = useRef(sessionId);\n\n // 暴露命令式 API\n const scrollToBottom = useCallback(\n (behavior: ScrollBehavior = \"auto\") => {\n messagesEndRef.current?.scrollIntoView({ behavior });\n },\n [],\n );\n useImperativeHandle(ref, () => ({ scrollToBottom }), [scrollToBottom]);\n const mergedStrategies = useMemo(\n () => mergeChatStrategies(preset, strategies),\n [preset, strategies],\n );\n const resolveToolKind = useCallback(\n (name?: string, msg?: IMessage) =>\n toolKindResolver?.(name) ??\n mergedStrategies.resolveToolKind?.({ name, msg }) ??\n defaultToolKindResolver(name),\n [toolKindResolver, mergedStrategies],\n );\n const parseProcessMessage =\n mergedStrategies.parseProcessMessage ?? parseAgentMessage;\n\n // 初始化完成时滚动到底部\n useEffect(() => {\n if (!initialized) return;\n if (!messages.length) return;\n if (prevInitializedRef.current) return;\n prevInitializedRef.current = true;\n\n const el = listRef.current;\n if (!el) return;\n\n // 用 MutationObserver 监听 DOM 子树变化,等内容渲染稳定后置底\n // 每次 DOM 变化都重新计时,确保所有异步渲染(Markdown、代码高亮、思维链等)完成后再滚动\n let stableTimer: ReturnType<typeof setTimeout>;\n const doScroll = () => {\n messagesEndRef.current?.scrollIntoView({ behavior: \"auto\" });\n };\n\n const observer = new MutationObserver(() => {\n clearTimeout(stableTimer);\n stableTimer = setTimeout(doScroll, 80);\n });\n\n observer.observe(el, { childList: true, subtree: true, characterData: true });\n\n // 立即执行一次,处理内容已经就绪的情况\n doScroll();\n // 兜底:最多等 500ms 后强制滚动并断开观察\n const maxTimer = setTimeout(() => {\n observer.disconnect();\n doScroll();\n }, 500);\n\n return () => {\n clearTimeout(stableTimer);\n clearTimeout(maxTimer);\n observer.disconnect();\n };\n }, [initialized, messages]);\n\n // 会话切换时重置滚动状态,允许重新触发初始化置底\n useEffect(() => {\n if (sessionId === undefined) return; // 未传 sessionId 不处理\n if (prevSessionIdRef.current === sessionId) return; // 同一会话不处理\n prevSessionIdRef.current = sessionId;\n prevInitializedRef.current = false;\n userHasScrolledRef.current = false;\n }, [sessionId]);\n\n // 流式输出或发送消息时滚动到底部\n useEffect(() => {\n if (userHasScrolledRef.current) return;\n if (!messages.length) return;\n // loading 时(流式输出中)或最后一条是用户消息(刚发送)都置底\n const lastMsg = messages[messages.length - 1];\n if (loading || lastMsg?.role === \"user\") {\n const el = listRef.current;\n if (el) {\n el.scrollTop = el.scrollHeight;\n }\n }\n }, [loading, messages]);\n\n // loading 结束时(流式输出完成),操作栏(metaFooter)会渲染出来增加高度,\n // 需要延迟滚动到底部,确保操作栏可见\n const prevLoadingRef = useRef(loading);\n useEffect(() => {\n const wasLoading = prevLoadingRef.current;\n prevLoadingRef.current = loading;\n\n if (!wasLoading || loading) return; // 只在 loading true → false 时触发\n if (userHasScrolledRef.current) return;\n if (!messages.length) return;\n\n // 延迟等待操作栏 DOM 渲染完成后再滚动\n const timer = setTimeout(() => {\n const el = listRef.current;\n if (el) {\n el.scrollTop = el.scrollHeight;\n }\n }, 50);\n return () => clearTimeout(timer);\n }, [loading, messages]);\n\n // 处理滚动事件\n const handleScroll = useCallback(() => {\n const el = listRef.current;\n if (!el) return;\n const currentTop = el.scrollTop;\n\n if (currentTop < lastScrollTopRef.current) {\n userHasScrolledRef.current = true;\n }\n\n const isAtBottom =\n Math.abs(el.scrollHeight - currentTop - el.clientHeight) <=\n scrollThreshold;\n if (isAtBottom) {\n userHasScrolledRef.current = false;\n }\n\n lastScrollTopRef.current = currentTop;\n }, []);\n\n useEffect(() => {\n const listElement = listRef.current;\n if (!listElement) return;\n\n listElement.addEventListener(\"scroll\", handleScroll);\n return () => {\n listElement.removeEventListener(\"scroll\", handleScroll);\n };\n }, [handleScroll]);\n\n // ========== 消息分组逻辑 ==========\n const chatGroups = useMemo(() => {\n if (!enableGrouping) {\n // 不分组,每条消息独立\n return messages.map((msg) => ({\n id: msg.id,\n role: msg.role,\n msgs: [msg],\n invocationId: msg.invocationId,\n allFiles: msg.fileData || [],\n isLike: msg.isLike ?? 0,\n }));\n }\n\n const groups: ChatGroup[] = [];\n messages.forEach((msg) => {\n // 过滤 followup 消息\n if ((msg as any).role === \"followup\") return;\n\n const isRealUserQuery =\n msg.role === \"user\" && !msg.functionResponse && !msg.functionCall;\n const lastGroup = groups[groups.length - 1];\n const isLastGroupAgent = lastGroup?.role === \"bot\";\n\n if (isLastGroupAgent && !isRealUserQuery) {\n // 合并到上一个 bot 分组\n lastGroup.msgs.push(msg);\n if (msg.invocationId) lastGroup.invocationId = msg.invocationId;\n // 更新 isLike: 取最新的非0值,或保持当前值\n if (msg.isLike && msg.isLike !== 0) {\n lastGroup.isLike = msg.isLike;\n }\n } else {\n // 创建新分组\n groups.push({\n id: msg.id || `group-${groups.length}`,\n role: isRealUserQuery ? \"user\" : \"bot\",\n msgs: [msg],\n invocationId: msg.invocationId,\n allFiles: [],\n isLike: msg.isLike ?? 0,\n });\n }\n });\n\n // 合并文件\n groups.forEach((g) => {\n g.allFiles = g.msgs.reduce(\n (acc, m) => [...acc, ...(m.fileData || [])],\n [] as any[],\n );\n });\n\n return groups;\n }, [messages, enableGrouping]);\n\n // ========== 渲染 Bot 消息组 ==========\n const renderBotGroup = useCallback(\n (\n group: ChatGroup,\n isLastGroup: boolean,\n renderFunctionCall?: XAdkChatbotProps[\"renderFunctionCall\"],\n ) => {\n const { msgs, allFiles } = group;\n\n if (!enableProcessParsing) {\n // 不解析 process,简单渲染\n return (\n <div key={group.id} className={styles.botMsg}>\n {msgs.map((msg, i) => {\n if (msg.text) {\n return (\n <MarkdownRender\n key={`${msg.id}-${i}`}\n text={msg.text}\n onFileClick={onFileClick}\n />\n );\n }\n if (msg.functionCall) {\n return (\n renderFunctionCall?.(msg) ?? (\n <FunctionCallRender\n key={`${msg.id}-${i}`}\n msg={msg}\n showDetail={showFnCallDetail}\n onConfirm={onConfirm}\n kind={resolveToolKind(msg.functionCall?.name, msg)}\n renderApproval={mergedStrategies.renderApproval}\n renderHandoff={mergedStrategies.renderHandoff}\n />\n )\n );\n }\n return null;\n })}\n </div>\n );\n }\n\n // ========== 解析 Process 内容 ==========\n\n // 1. 合并工具调用\n const mergedToolMap = new Map<string, IMessage>();\n msgs.forEach((msg) => {\n if (msg.functionCall) {\n const callId = msg.functionCall.id || \"\";\n if (!mergedToolMap.has(callId)) {\n mergedToolMap.set(callId, { ...msg });\n } else {\n mergedToolMap.set(callId, {\n ...(mergedToolMap.get(callId) ?? {}),\n ...msg,\n });\n }\n } else if (msg.functionResponse) {\n const callId = msg.functionResponse.id || \"\";\n if (mergedToolMap.has(callId)) {\n const tool = mergedToolMap.get(callId);\n if (tool) tool.functionResponse = msg.functionResponse;\n } else {\n mergedToolMap.set(callId, {\n ...msg,\n functionCall: {\n id: callId,\n name: msg.functionResponse.name || \"Unknown\",\n args: {},\n },\n });\n }\n }\n });\n\n // 2. 解析文本消息中的 process 内容\n type RenderNode =\n | { type: \"text\"; content: string; key: string }\n | { type: \"process\"; items: ThoughtChainItemType[]; key: string };\n\n const nodes: RenderNode[] = [];\n let currentProcessItems: ThoughtChainItemType[] = [];\n const processedToolIds = new Set<string>();\n\n const flushProcessItems = () => {\n if (currentProcessItems.length > 0) {\n nodes.push({\n type: \"process\",\n items: [...currentProcessItems],\n key: `process-${nodes.length}`,\n });\n currentProcessItems = [];\n }\n };\n\n msgs.forEach((msg) => {\n // 处理工具调用\n if (msg.functionCall) {\n const callId = msg.functionCall.id || \"\";\n if (!processedToolIds.has(callId)) {\n const mergedMsg = mergedToolMap.get(callId);\n if (mergedMsg) {\n currentProcessItems.push({\n type: \"tool\",\n key: `tool-${callId}`,\n content: \"\",\n msg: mergedMsg,\n });\n processedToolIds.add(callId);\n }\n }\n }\n // 处理文本消息\n else if (msg.text && !msg.functionResponse) {\n const parts = parseProcessMessage(msg.text, parseOptions as any);\n\n parts.forEach((part, partIdx) => {\n // process 内容放入 currentProcessItems\n if (\n [\n \"planning\",\n \"replanning\",\n \"reasoning\",\n \"action_log\",\n \"process_text\",\n ].includes(part.type)\n ) {\n const titleMap: Record<string, string> = {\n planning: \"任务规划\",\n replanning: \"重新规划\",\n reasoning: \"推理分析\",\n action_log: \"行动记录\",\n process_text: \"过程分析\",\n };\n\n currentProcessItems.push({\n type: \"text\",\n key: `${msg.id}-${partIdx}`,\n content: part.content,\n title: titleMap[part.type] || \"分析\",\n });\n }\n // 普通文本内容\n else {\n flushProcessItems();\n if (part.content.trim()) {\n const lastNode = nodes[nodes.length - 1];\n if (lastNode?.type === \"text\") {\n // 合并到上一个文本节点\n lastNode.content += \"\\n\\n\" + part.content;\n } else {\n nodes.push({\n type: \"text\",\n content: part.content,\n key: `text-${msg.id}-${partIdx}`,\n });\n }\n }\n }\n });\n }\n });\n\n // 最后flush一次\n flushProcessItems();\n\n // 3. 准备操作栏数据\n const fullTextToCopy = msgs\n .filter((m) => !m.functionCall && !m.functionResponse)\n .map((m) => m.text || \"\")\n .join(\"\");\n\n const lastBotMsg = msgs[msgs.length - 1];\n const hasProcess = nodes.some((n) => n.type === \"process\");\n const isGroupLoading = loading && isLastGroup;\n const actionProps = { message: group, isLastBotMsg: isLastGroup };\n const actionExtraNode = actionsExtra?.(actionProps);\n\n // 4. 渲染\n const lastProcessIdx = nodes.findLastIndex(\n (n) => n.type === \"process\",\n );\n return (\n <div key={group.id} className={styles.botMsg}>\n {nodes.map((node, idx) => {\n if (node.type === \"process\") {\n // 只有最后一个 process node 跟随 loading 状态,已完成的思维链不应显示 loading\n const isLastProcess = idx === lastProcessIdx;\n return (\n <XAdkThoughtChain\n key={node.key}\n loading={isLastProcess && isGroupLoading}\n title=\"思维链已完成\"\n items={node.items}\n showFnCallDetail={showFnCallDetail}\n onConfirm={onConfirm}\n defaultOpen={isLastProcess && isGroupLoading}\n renderFunctionCall={renderFunctionCall}\n toolKindResolver={(name) => resolveToolKind(name)}\n strategies={mergedStrategies}\n />\n );\n }\n\n // 文本节点\n // const showBadge =\n // hasProcess && nodes.findIndex((n) => n.type === \"text\") === idx;\n return (\n <div key={node.key}>\n {/* {showBadge && (\n <div className={styles.successBadge}>\n <CheckCircleFilled /> 已完成所有规划任务\n </div>\n )} */}\n <MarkdownRender text={node.content} onFileClick={onFileClick} />\n </div>\n );\n })}\n\n {/* 文件展示 */}\n {allFiles.length > 0 && (\n <div className={styles.fileSection}>\n <div className={styles.fileHeader}>\n <span>生成文件 ({allFiles.length})</span>\n </div>\n <div style={{ display: \"flex\", flexWrap: \"wrap\", gap: \"8px\" }}>\n {allFiles.map((file, index) => (\n <FileGallery key={index} file={file} onClick={onFileClick} />\n ))}\n </div>\n </div>\n )}\n\n {/* 操作栏 */}\n {!isGroupLoading &&\n (actions ||\n showRetry ||\n showCopy ||\n showLog ||\n actionExtraNode) && (\n <div className={styles.metaFooter}>\n {actions ? (\n actions(actionProps)\n ) : (\n <Flex gap={16} className={styles.actionIcons}>\n {showRetry && isLastGroup && (\n <Tooltip title=\"重新生成\">\n <ReloadOutlined onClick={onRetry} />\n </Tooltip>\n )}\n {showCopy && (\n <Tooltip title=\"复制内容\">\n <CopyOutlined\n onClick={() => {\n copy(fullTextToCopy);\n antdMessage.success(\"复制成功\");\n onCopy?.(fullTextToCopy);\n }}\n />\n </Tooltip>\n )}\n {showLog && lastBotMsg?.invocationId && (\n <Tooltip title=\"查看日志\">\n <InfoCircleOutlined\n onClick={() =>\n onShowLog?.(\n lastBotMsg.invocationId!,\n lastBotMsg.timestamp,\n )\n }\n />\n </Tooltip>\n )}\n </Flex>\n )}\n {actionExtraNode}\n </div>\n )}\n </div>\n );\n },\n [\n enableProcessParsing,\n parseOptions,\n parseProcessMessage,\n showFnCallDetail,\n onConfirm,\n loading,\n showRetry,\n showCopy,\n showLog,\n onRetry,\n onCopy,\n onShowLog,\n actions,\n actionsExtra,\n onFileClick,\n styles,\n resolveToolKind,\n mergedStrategies,\n ],\n );\n\n // ========== 渲染用户消息组 ==========\n const renderUserGroup = useCallback(\n (group: ChatGroup) => {\n return (\n <div key={group.id} className={styles.userMsg}>\n {group.msgs.map((m, i) => (\n <div key={m.id || i} className={styles.userContainer}>\n {/* 文件展示 */}\n {m.fileData && m.fileData.length > 0 && (\n <>\n {m.fileData.map((file, index) => (\n <FileGallery\n key={index}\n file={file}\n align=\"left\"\n style={{ marginBottom: \"16px\" }}\n onClick={onFileClick}\n />\n ))}\n </>\n )}\n {/* 文本展示 */}\n {m.text && <div className={styles.card}>{m.text}</div>}\n </div>\n ))}\n </div>\n );\n },\n [styles, onFileClick],\n );\n\n // ========== 欢迎页面 ==========\n // const isEmpty =\n // messages.length === 0 &&\n // !prologue &&\n // (!suggestions || suggestions.length === 0);\n\n // const renderWelcome = () => {\n // if (!isEmpty) return null;\n\n // return (\n // <>\n // {welcome ?? (\n // <div className={styles.welcomeWrapper}>\n // {agentIcon && (\n // <img src={agentIcon} alt=\"icon\" className={styles.welcomeIcon} />\n // )}\n // {agentName && (\n // <div className={styles.welcomeTitle}>{agentName}</div>\n // )}\n // {description && (\n // <div className={styles.welcomeDesc}>{description}</div>\n // )}\n // </div>\n // )}\n // </>\n // );\n // };\n\n // ========== 渲染建议问题 ==========\n const renderSuggestions = () => {\n if (!suggestions || suggestions.length === 0) return null;\n\n return (\n <div className={styles.suggestionWrapper}>\n {suggestions.map((item) => (\n <div key={item} className={styles.suggestion}>\n <div className={styles.suggestContent}>\n <Button\n type=\"text\"\n icon={<SwapRightOutlined />}\n iconPosition=\"end\"\n onClick={() => {\n if (!item) return;\n onSuggest?.(item);\n }}\n style={{\n whiteSpace: \"normal\",\n height: \"auto\",\n wordWrap: \"break-word\",\n textAlign: \"left\",\n padding: \"4px 15px\",\n lineHeight: \"1.5\",\n }}\n >\n {item}\n </Button>\n </div>\n </div>\n ))}\n </div>\n );\n };\n\n return (\n <div className={clsx(styles.wrapper, className)} style={style}>\n <div className={styles.list} ref={listRef}>\n {/* 开场白 */}\n {prologue && (\n <div className={styles.prologue}>\n <MarkdownRender text={prologue} onFileClick={onFileClick} />\n </div>\n )}\n\n {/* 欢迎页面 */}\n {/* {renderWelcome()} */}\n\n {/* 消息列表 */}\n {chatGroups.map((group, idx) =>\n group.role === \"user\"\n ? renderUserGroup(group)\n : renderBotGroup(\n group,\n idx === chatGroups.length - 1,\n renderFunctionCall,\n ),\n )}\n\n {/* 建议问题 */}\n {renderSuggestions()}\n\n <div ref={messagesEndRef} />\n </div>\n </div>\n );\n },\n);\n\nXAdkChatbot.displayName = \"XAdkChatbot\";\n\nexport default XAdkChatbot;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
export declare const useStyles: () => {
|
|
2
|
+
wrapper: string;
|
|
3
|
+
list: string;
|
|
4
|
+
prologue: string;
|
|
5
|
+
suggestion: string;
|
|
6
|
+
suggestContent: string;
|
|
7
|
+
userMsg: string;
|
|
8
|
+
userContainer: string;
|
|
9
|
+
card: string;
|
|
10
|
+
botMsg: string;
|
|
11
|
+
welcomeWrapper: string;
|
|
12
|
+
welcomeIcon: string;
|
|
13
|
+
welcomeTitle: string;
|
|
14
|
+
welcomeDesc: string;
|
|
15
|
+
suggestionWrapper: string;
|
|
16
|
+
successBadge: string;
|
|
17
|
+
fileSection: string;
|
|
18
|
+
fileHeader: string;
|
|
19
|
+
metaFooter: string;
|
|
20
|
+
actionIcons: string;
|
|
21
|
+
fnCall: string;
|
|
22
|
+
confirm: string;
|
|
23
|
+
footer: string;
|
|
24
|
+
sender: string;
|
|
25
|
+
senderWrap: string;
|
|
26
|
+
tip: string;
|
|
27
|
+
input: string;
|
|
28
|
+
} & {
|
|
29
|
+
w: (width: string | number) => string;
|
|
30
|
+
h: (height: string | number) => string;
|
|
31
|
+
p: (padding: string) => string;
|
|
32
|
+
pb: (padding: string | number) => string;
|
|
33
|
+
pt: (padding: string | number) => string;
|
|
34
|
+
pl: (padding: string | number) => string;
|
|
35
|
+
pr: (padding: string | number) => string;
|
|
36
|
+
m: (margin: string) => string;
|
|
37
|
+
mb: (margin: string | number) => string;
|
|
38
|
+
mt: (margin: string | number) => string;
|
|
39
|
+
ml: (margin: string | number) => string;
|
|
40
|
+
mr: (margin: string | number) => string;
|
|
41
|
+
text: (size: string | number) => string;
|
|
42
|
+
weight: (size: number) => string;
|
|
43
|
+
textColor: (c: string) => string;
|
|
44
|
+
bg: (c: string) => string;
|
|
45
|
+
rs: (radius: string | number) => string;
|
|
46
|
+
gap: (g: string | number) => string;
|
|
47
|
+
flex: string;
|
|
48
|
+
flexCenter: string;
|
|
49
|
+
flexBetween: string;
|
|
50
|
+
flexColumn: string;
|
|
51
|
+
flex1: string;
|
|
52
|
+
cursor: (type: string) => string;
|
|
53
|
+
border: (color: string, width?: string) => string;
|
|
54
|
+
boxShadow: (shadow: string) => string;
|
|
55
|
+
transition: (property?: string, duration?: string) => string;
|
|
56
|
+
overflow: (type: string) => string;
|
|
57
|
+
position: (type: string) => string;
|
|
58
|
+
zIndex: (index: number) => string;
|
|
59
|
+
flexCenterGap2: string;
|
|
60
|
+
flexCenterGap4: string;
|
|
61
|
+
};
|
|
62
|
+
export default useStyles;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import _taggedTemplateLiteral from "@babel/runtime/helpers/esm/taggedTemplateLiteral";
|
|
2
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21, _templateObject22, _templateObject23, _templateObject24, _templateObject25, _templateObject26;
|
|
3
|
+
import { css } from "@emotion/css";
|
|
4
|
+
import { withBasicStyles } from "../../styles/common";
|
|
5
|
+
export var useStyles = withBasicStyles(function () {
|
|
6
|
+
return {
|
|
7
|
+
wrapper: css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n padding: 0 16px;\n min-height: 300px;\n width: 100%;\n height: 100%;\n border-radius: 8px;\n display: flex;\n flex-direction: column;\n\n .x-markdown {\n --margin-ul-ol: 0 0 1em 1em;\n\n code {\n background: rgba(150, 150, 150, 0.2);\n border-radius: 3px;\n }\n\n .ant-highlightCode-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n color: var(--ant-highlight-code-color-text-title);\n background: var(--ant-highlight-code-color-bg-title);\n padding: var(--ant-padding-sm);\n border-top-left-radius: var(--ant-border-radius);\n border-top-right-radius: var(--ant-border-radius);\n }\n }\n "]))),
|
|
8
|
+
list: css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n flex: 1;\n margin-top: 16px;\n overflow-y: auto;\n /* Chrome, Safari, Edge, Opera */\n &::-webkit-scrollbar {\n display: none;\n }\n /* Firefox */\n scrollbar-width: none;\n /* IE 10+ */\n -ms-overflow-style: none;\n "]))),
|
|
9
|
+
prologue: css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n margin-bottom: 12px;\n "]))),
|
|
10
|
+
suggestion: css(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n margin-bottom: 12px;\n "]))),
|
|
11
|
+
suggestContent: css(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n display: inline-flex;\n border: 2px solid #e7e7e7;\n border-radius: 8px;\n "]))),
|
|
12
|
+
userMsg: css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n display: flex;\n justify-content: flex-end;\n margin-bottom: 24px;\n "]))),
|
|
13
|
+
userContainer: css(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n align-items: flex-end;\n "]))),
|
|
14
|
+
card: css(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["\n display: inline-flex;\n padding: 12px 16px;\n background: #d5e3ff;\n border-radius: 12px;\n max-width: 100%;\n white-space: pre-line;\n word-break: break-all;\n "]))),
|
|
15
|
+
botMsg: css(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["\n margin-bottom: 12px;\n "]))),
|
|
16
|
+
// 新增样式
|
|
17
|
+
welcomeWrapper: css(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: column;\n align-items: center;\n padding: 40px 20px;\n text-align: center;\n "]))),
|
|
18
|
+
welcomeIcon: css(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral(["\n width: 64px;\n height: 64px;\n border-radius: 12px;\n margin-bottom: 16px;\n "]))),
|
|
19
|
+
welcomeTitle: css(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral(["\n font-size: 24px;\n font-weight: 600;\n color: rgba(0, 0, 0, 0.88);\n margin-bottom: 8px;\n "]))),
|
|
20
|
+
welcomeDesc: css(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral(["\n font-size: 14px;\n color: rgba(0, 0, 0, 0.65);\n margin-bottom: 24px;\n "]))),
|
|
21
|
+
suggestionWrapper: css(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral(["\n margin-top: 16px;\n "]))),
|
|
22
|
+
successBadge: css(_templateObject15 || (_templateObject15 = _taggedTemplateLiteral(["\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 4px 12px;\n background: #f6ffed;\n border: 1px solid #b7eb8f;\n border-radius: 4px;\n color: #52c41a;\n font-size: 13px;\n margin-bottom: 12px;\n "]))),
|
|
23
|
+
fileSection: css(_templateObject16 || (_templateObject16 = _taggedTemplateLiteral(["\n margin: 12px 0;\n "]))),
|
|
24
|
+
fileHeader: css(_templateObject17 || (_templateObject17 = _taggedTemplateLiteral(["\n font-size: 13px;\n color: rgba(0, 0, 0, 0.65);\n margin-bottom: 8px;\n "]))),
|
|
25
|
+
metaFooter: css(_templateObject18 || (_templateObject18 = _taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n gap: 16px;\n margin-top: 12px;\n padding-top: 12px;\n border-top: 1px solid #f0f0f0;\n "]))),
|
|
26
|
+
actionIcons: css(_templateObject19 || (_templateObject19 = _taggedTemplateLiteral(["\n color: rgba(0, 0, 0, 0.45);\n\n & > span {\n cursor: pointer;\n transition: color 0.2s;\n\n &:hover {\n color: #1890ff;\n }\n }\n "]))),
|
|
27
|
+
fnCall: css(_templateObject20 || (_templateObject20 = _taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 8px 11px;\n border-radius: 24px;\n line-height: 16px;\n border: 1px solid #e7e7e7;\n cursor: pointer;\n "]))),
|
|
28
|
+
confirm: css(_templateObject21 || (_templateObject21 = _taggedTemplateLiteral(["\n padding: 12px;\n border-radius: 12px;\n border: 1px solid #e7e7e7;\n "]))),
|
|
29
|
+
footer: css(_templateObject22 || (_templateObject22 = _taggedTemplateLiteral(["\n /* senderWrap and tip moved to top-level keys so they are\n accessible as styles.senderWrap and styles.tip in the component */\n "]))),
|
|
30
|
+
sender: css(_templateObject23 || (_templateObject23 = _taggedTemplateLiteral(["\n width: 100%;\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 8px 8px 8px 12px;\n border: 1px solid #e7e7e7;\n border-radius: 24px;\n\n /* .input moved to top-level key so component can use styles.input */\n "]))),
|
|
31
|
+
senderWrap: css(_templateObject24 || (_templateObject24 = _taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n "]))),
|
|
32
|
+
tip: css(_templateObject25 || (_templateObject25 = _taggedTemplateLiteral(["\n padding: 4px;\n font-size: 12px;\n text-align: center;\n color: rgba(0, 0, 0, 0.4);\n "]))),
|
|
33
|
+
input: css(_templateObject26 || (_templateObject26 = _taggedTemplateLiteral(["\n padding: 0;\n margin: 5px 0;\n line-height: 22px;\n font-size: 15px;\n border-radius: 0;\n border: none;\n\n &:focus {\n box-shadow: none;\n }\n "])))
|
|
34
|
+
};
|
|
35
|
+
});
|
|
36
|
+
export default useStyles;
|
|
37
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["css","withBasicStyles","useStyles","wrapper","_templateObject","_taggedTemplateLiteral","list","_templateObject2","prologue","_templateObject3","suggestion","_templateObject4","suggestContent","_templateObject5","userMsg","_templateObject6","userContainer","_templateObject7","card","_templateObject8","botMsg","_templateObject9","welcomeWrapper","_templateObject10","welcomeIcon","_templateObject11","welcomeTitle","_templateObject12","welcomeDesc","_templateObject13","suggestionWrapper","_templateObject14","successBadge","_templateObject15","fileSection","_templateObject16","fileHeader","_templateObject17","metaFooter","_templateObject18","actionIcons","_templateObject19","fnCall","_templateObject20","confirm","_templateObject21","footer","_templateObject22","sender","_templateObject23","senderWrap","_templateObject24","tip","_templateObject25","input","_templateObject26"],"sources":["../../../../src/components/XAdkChatbot/styles.tsx"],"sourcesContent":["import { css } from \"@emotion/css\";\nimport { withBasicStyles } from \"@/styles/common\";\n\nexport const useStyles = withBasicStyles(() => ({\n wrapper: css`\n padding: 0 16px;\n min-height: 300px;\n width: 100%;\n height: 100%;\n border-radius: 8px;\n display: flex;\n flex-direction: column;\n\n .x-markdown {\n --margin-ul-ol: 0 0 1em 1em;\n\n code {\n background: rgba(150, 150, 150, 0.2);\n border-radius: 3px;\n }\n\n .ant-highlightCode-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n color: var(--ant-highlight-code-color-text-title);\n background: var(--ant-highlight-code-color-bg-title);\n padding: var(--ant-padding-sm);\n border-top-left-radius: var(--ant-border-radius);\n border-top-right-radius: var(--ant-border-radius);\n }\n }\n `,\n\n list: css`\n flex: 1;\n margin-top: 16px;\n overflow-y: auto;\n /* Chrome, Safari, Edge, Opera */\n &::-webkit-scrollbar {\n display: none;\n }\n /* Firefox */\n scrollbar-width: none;\n /* IE 10+ */\n -ms-overflow-style: none;\n `,\n\n prologue: css`\n margin-bottom: 12px;\n `,\n\n suggestion: css`\n margin-bottom: 12px;\n `,\n\n suggestContent: css`\n display: inline-flex;\n border: 2px solid #e7e7e7;\n border-radius: 8px;\n `,\n\n userMsg: css`\n display: flex;\n justify-content: flex-end;\n margin-bottom: 24px;\n `,\n\n userContainer: css`\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n align-items: flex-end;\n `,\n\n card: css`\n display: inline-flex;\n padding: 12px 16px;\n background: #d5e3ff;\n border-radius: 12px;\n max-width: 100%;\n white-space: pre-line;\n word-break: break-all;\n `,\n\n botMsg: css`\n margin-bottom: 12px;\n `,\n\n // 新增样式\n welcomeWrapper: css`\n display: flex;\n flex-direction: column;\n align-items: center;\n padding: 40px 20px;\n text-align: center;\n `,\n\n welcomeIcon: css`\n width: 64px;\n height: 64px;\n border-radius: 12px;\n margin-bottom: 16px;\n `,\n\n welcomeTitle: css`\n font-size: 24px;\n font-weight: 600;\n color: rgba(0, 0, 0, 0.88);\n margin-bottom: 8px;\n `,\n\n welcomeDesc: css`\n font-size: 14px;\n color: rgba(0, 0, 0, 0.65);\n margin-bottom: 24px;\n `,\n\n suggestionWrapper: css`\n margin-top: 16px;\n `,\n\n successBadge: css`\n display: inline-flex;\n align-items: center;\n gap: 6px;\n padding: 4px 12px;\n background: #f6ffed;\n border: 1px solid #b7eb8f;\n border-radius: 4px;\n color: #52c41a;\n font-size: 13px;\n margin-bottom: 12px;\n `,\n\n fileSection: css`\n margin: 12px 0;\n `,\n\n fileHeader: css`\n font-size: 13px;\n color: rgba(0, 0, 0, 0.65);\n margin-bottom: 8px;\n `,\n\n metaFooter: css`\n display: flex;\n align-items: center;\n flex-wrap: wrap;\n gap: 16px;\n margin-top: 12px;\n padding-top: 12px;\n border-top: 1px solid #f0f0f0;\n `,\n\n actionIcons: css`\n color: rgba(0, 0, 0, 0.45);\n\n & > span {\n cursor: pointer;\n transition: color 0.2s;\n\n &:hover {\n color: #1890ff;\n }\n }\n `,\n\n fnCall: css`\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 8px 11px;\n border-radius: 24px;\n line-height: 16px;\n border: 1px solid #e7e7e7;\n cursor: pointer;\n `,\n\n confirm: css`\n padding: 12px;\n border-radius: 12px;\n border: 1px solid #e7e7e7;\n `,\n\n footer: css`\n /* senderWrap and tip moved to top-level keys so they are\n accessible as styles.senderWrap and styles.tip in the component */\n `,\n\n sender: css`\n width: 100%;\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 8px 8px 8px 12px;\n border: 1px solid #e7e7e7;\n border-radius: 24px;\n\n /* .input moved to top-level key so component can use styles.input */\n `,\n\n senderWrap: css`\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n `,\n\n tip: css`\n padding: 4px;\n font-size: 12px;\n text-align: center;\n color: rgba(0, 0, 0, 0.4);\n `,\n\n input: css`\n padding: 0;\n margin: 5px 0;\n line-height: 22px;\n font-size: 15px;\n border-radius: 0;\n border: none;\n\n &:focus {\n box-shadow: none;\n }\n `,\n}));\n\nexport default useStyles;\n"],"mappings":";;AAAA,SAASA,GAAG,QAAQ,cAAc;AAClC,SAASC,eAAe;AAExB,OAAO,IAAMC,SAAS,GAAGD,eAAe,CAAC;EAAA,OAAO;IAC9CE,OAAO,EAAEH,GAAG,CAAAI,eAAA,KAAAA,eAAA,GAAAC,sBAAA,svBA4BX;IAEDC,IAAI,EAAEN,GAAG,CAAAO,gBAAA,KAAAA,gBAAA,GAAAF,sBAAA,wQAYR;IAEDG,QAAQ,EAAER,GAAG,CAAAS,gBAAA,KAAAA,gBAAA,GAAAJ,sBAAA,sCAEZ;IAEDK,UAAU,EAAEV,GAAG,CAAAW,gBAAA,KAAAA,gBAAA,GAAAN,sBAAA,sCAEd;IAEDO,cAAc,EAAEZ,GAAG,CAAAa,gBAAA,KAAAA,gBAAA,GAAAR,sBAAA,gGAIlB;IAEDS,OAAO,EAAEd,GAAG,CAAAe,gBAAA,KAAAA,gBAAA,GAAAV,sBAAA,0FAIX;IAEDW,aAAa,EAAEhB,GAAG,CAAAiB,gBAAA,KAAAA,gBAAA,GAAAZ,sBAAA,yHAKjB;IAEDa,IAAI,EAAElB,GAAG,CAAAmB,gBAAA,KAAAA,gBAAA,GAAAd,sBAAA,kMAQR;IAEDe,MAAM,EAAEpB,GAAG,CAAAqB,gBAAA,KAAAA,gBAAA,GAAAhB,sBAAA,sCAEV;IAED;IACAiB,cAAc,EAAEtB,GAAG,CAAAuB,iBAAA,KAAAA,iBAAA,GAAAlB,sBAAA,yIAMlB;IAEDmB,WAAW,EAAExB,GAAG,CAAAyB,iBAAA,KAAAA,iBAAA,GAAApB,sBAAA,qGAKf;IAEDqB,YAAY,EAAE1B,GAAG,CAAA2B,iBAAA,KAAAA,iBAAA,GAAAtB,sBAAA,mHAKhB;IAEDuB,WAAW,EAAE5B,GAAG,CAAA6B,iBAAA,KAAAA,iBAAA,GAAAxB,sBAAA,6FAIf;IAEDyB,iBAAiB,EAAE9B,GAAG,CAAA+B,iBAAA,KAAAA,iBAAA,GAAA1B,sBAAA,mCAErB;IAED2B,YAAY,EAAEhC,GAAG,CAAAiC,iBAAA,KAAAA,iBAAA,GAAA5B,sBAAA,gQAWhB;IAED6B,WAAW,EAAElC,GAAG,CAAAmC,iBAAA,KAAAA,iBAAA,GAAA9B,sBAAA,iCAEf;IAED+B,UAAU,EAAEpC,GAAG,CAAAqC,iBAAA,KAAAA,iBAAA,GAAAhC,sBAAA,4FAId;IAEDiC,UAAU,EAAEtC,GAAG,CAAAuC,iBAAA,KAAAA,iBAAA,GAAAlC,sBAAA,mLAQd;IAEDmC,WAAW,EAAExC,GAAG,CAAAyC,iBAAA,KAAAA,iBAAA,GAAApC,sBAAA,kLAWf;IAEDqC,MAAM,EAAE1C,GAAG,CAAA2C,iBAAA,KAAAA,iBAAA,GAAAtC,sBAAA,yMASV;IAEDuC,OAAO,EAAE5C,GAAG,CAAA6C,iBAAA,KAAAA,iBAAA,GAAAxC,sBAAA,0FAIX;IAEDyC,MAAM,EAAE9C,GAAG,CAAA+C,iBAAA,KAAAA,iBAAA,GAAA1C,sBAAA,sJAGV;IAED2C,MAAM,EAAEhD,GAAG,CAAAiD,iBAAA,KAAAA,iBAAA,GAAA5C,sBAAA,kQAUV;IAED6C,UAAU,EAAElD,GAAG,CAAAmD,iBAAA,KAAAA,iBAAA,GAAA9C,sBAAA,8GAKd;IAED+C,GAAG,EAAEpD,GAAG,CAAAqD,iBAAA,KAAAA,iBAAA,GAAAhD,sBAAA,8GAKP;IAEDiD,KAAK,EAAEtD,GAAG,CAAAuD,iBAAA,KAAAA,iBAAA,GAAAlD,sBAAA;EAYZ,CAAC;AAAA,CAAC,CAAC;AAEH,eAAeH,SAAS"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { XAdkMessagesProps } from './Messages';
|
|
3
|
+
import { XAdkSenderCompoundProps } from './Sender';
|
|
4
|
+
/**
|
|
5
|
+
* XAdkProvider.Chatbot - 完整的聊天界面组件
|
|
6
|
+
*
|
|
7
|
+
* 组合了 Messages + Sender,提供开箱即用的完整聊天界面
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```tsx
|
|
11
|
+
* <XAdkProvider url="..." token="...">
|
|
12
|
+
* <XAdkProvider.Chatbot
|
|
13
|
+
* messagesProps={{ showFnCallDetail: true }}
|
|
14
|
+
* senderProps={{ allowUpload: true }}
|
|
15
|
+
* />
|
|
16
|
+
* </XAdkProvider>
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
export interface XAdkChatbotCompoundProps {
|
|
20
|
+
/** Messages 组件的属性 */
|
|
21
|
+
messagesProps?: XAdkMessagesProps;
|
|
22
|
+
/** Sender 组件的属性 */
|
|
23
|
+
senderProps?: XAdkSenderCompoundProps;
|
|
24
|
+
/** 容器样式 */
|
|
25
|
+
style?: React.CSSProperties;
|
|
26
|
+
/** 容器类名 */
|
|
27
|
+
className?: string;
|
|
28
|
+
}
|
|
29
|
+
declare const Chatbot: React.FC<XAdkChatbotCompoundProps>;
|
|
30
|
+
export default Chatbot;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import Messages from "./Messages";
|
|
4
|
+
import Sender from "./Sender";
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* XAdkProvider.Chatbot - 完整的聊天界面组件
|
|
8
|
+
*
|
|
9
|
+
* 组合了 Messages + Sender,提供开箱即用的完整聊天界面
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```tsx
|
|
13
|
+
* <XAdkProvider url="..." token="...">
|
|
14
|
+
* <XAdkProvider.Chatbot
|
|
15
|
+
* messagesProps={{ showFnCallDetail: true }}
|
|
16
|
+
* senderProps={{ allowUpload: true }}
|
|
17
|
+
* />
|
|
18
|
+
* </XAdkProvider>
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
22
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
23
|
+
var Chatbot = function Chatbot(_ref) {
|
|
24
|
+
var messagesProps = _ref.messagesProps,
|
|
25
|
+
senderProps = _ref.senderProps,
|
|
26
|
+
style = _ref.style,
|
|
27
|
+
className = _ref.className;
|
|
28
|
+
return /*#__PURE__*/_jsxs("div", {
|
|
29
|
+
className: className,
|
|
30
|
+
style: _objectSpread({
|
|
31
|
+
display: 'flex',
|
|
32
|
+
flexDirection: 'column',
|
|
33
|
+
height: '100%',
|
|
34
|
+
width: '100%'
|
|
35
|
+
}, style),
|
|
36
|
+
children: [/*#__PURE__*/_jsx("div", {
|
|
37
|
+
style: {
|
|
38
|
+
flex: 1,
|
|
39
|
+
overflow: 'hidden'
|
|
40
|
+
},
|
|
41
|
+
children: /*#__PURE__*/_jsx(Messages, _objectSpread({}, messagesProps))
|
|
42
|
+
}), /*#__PURE__*/_jsx(Sender, _objectSpread({}, senderProps))]
|
|
43
|
+
});
|
|
44
|
+
};
|
|
45
|
+
Chatbot.displayName = 'XAdkProvider.Chatbot';
|
|
46
|
+
export default Chatbot;
|
|
47
|
+
//# sourceMappingURL=Chatbot.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","Messages","Sender","jsx","_jsx","jsxs","_jsxs","Chatbot","_ref","messagesProps","senderProps","style","className","_objectSpread","display","flexDirection","height","width","children","flex","overflow","displayName"],"sources":["../../../../../src/components/XAdkProvider/compound/Chatbot.tsx"],"sourcesContent":["import React from 'react';\nimport Messages, { XAdkMessagesProps } from './Messages';\nimport Sender, { XAdkSenderCompoundProps } from './Sender';\n\n/**\n * XAdkProvider.Chatbot - 完整的聊天界面组件\n *\n * 组合了 Messages + Sender,提供开箱即用的完整聊天界面\n *\n * @example\n * ```tsx\n * <XAdkProvider url=\"...\" token=\"...\">\n * <XAdkProvider.Chatbot\n * messagesProps={{ showFnCallDetail: true }}\n * senderProps={{ allowUpload: true }}\n * />\n * </XAdkProvider>\n * ```\n */\nexport interface XAdkChatbotCompoundProps {\n /** Messages 组件的属性 */\n messagesProps?: XAdkMessagesProps;\n /** Sender 组件的属性 */\n senderProps?: XAdkSenderCompoundProps;\n /** 容器样式 */\n style?: React.CSSProperties;\n /** 容器类名 */\n className?: string;\n}\n\nconst Chatbot: React.FC<XAdkChatbotCompoundProps> = ({\n messagesProps,\n senderProps,\n style,\n className,\n}) => {\n return (\n <div\n className={className}\n style={{\n display: 'flex',\n flexDirection: 'column',\n height: '100%',\n width: '100%',\n ...style,\n }}\n >\n {/* 消息列表区域 */}\n <div style={{ flex: 1, overflow: 'hidden' }}>\n <Messages {...messagesProps} />\n </div>\n\n {/* 输入框区域 */}\n <Sender {...senderProps} />\n </div>\n );\n};\n\nChatbot.displayName = 'XAdkProvider.Chatbot';\n\nexport default Chatbot;\n"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,QAAQ;AACf,OAAOC,MAAM;;AAEb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAdA,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AA0BA,IAAMC,OAA2C,GAAG,SAA9CA,OAA2CA,CAAAC,IAAA,EAK3C;EAAA,IAJJC,aAAa,GAAAD,IAAA,CAAbC,aAAa;IACbC,WAAW,GAAAF,IAAA,CAAXE,WAAW;IACXC,KAAK,GAAAH,IAAA,CAALG,KAAK;IACLC,SAAS,GAAAJ,IAAA,CAATI,SAAS;EAET,oBACEN,KAAA;IACEM,SAAS,EAAEA,SAAU;IACrBD,KAAK,EAAAE,aAAA;MACHC,OAAO,EAAE,MAAM;MACfC,aAAa,EAAE,QAAQ;MACvBC,MAAM,EAAE,MAAM;MACdC,KAAK,EAAE;IAAM,GACVN,KAAK,CACR;IAAAO,QAAA,gBAGFd,IAAA;MAAKO,KAAK,EAAE;QAAEQ,IAAI,EAAE,CAAC;QAAEC,QAAQ,EAAE;MAAS,CAAE;MAAAF,QAAA,eAC1Cd,IAAA,CAACH,QAAQ,EAAAY,aAAA,KAAKJ,aAAa,CAAG;IAAC,CAC5B,CAAC,eAGNL,IAAA,CAACF,MAAM,EAAAW,aAAA,KAAKH,WAAW,CAAG,CAAC;EAAA,CACxB,CAAC;AAEV,CAAC;AAEDH,OAAO,CAACc,WAAW,GAAG,sBAAsB;AAE5C,eAAed,OAAO"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { ChatStrategies } from "../../../types";
|
|
3
|
+
/**
|
|
4
|
+
* XAdkProvider 默认布局
|
|
5
|
+
*
|
|
6
|
+
* 提供类似 ChatGPT/DeepSeek 的默认布局:
|
|
7
|
+
* - 左侧: 会话列表侧边栏 (可选,支持展开/收起)
|
|
8
|
+
* - 右侧: 聊天区域 (标题 + 消息 + 输入框,居中显示,最大宽度800px)
|
|
9
|
+
*/
|
|
10
|
+
export interface DefaultLayoutProps {
|
|
11
|
+
/** 是否显示会话列表 */
|
|
12
|
+
showSessionList?: boolean;
|
|
13
|
+
/** 自定义头部 */
|
|
14
|
+
header?: React.ReactNode;
|
|
15
|
+
/** 自定义底部 (替代默认 Sender) */
|
|
16
|
+
footer?: React.ReactNode;
|
|
17
|
+
/** 是否允许上传文件 */
|
|
18
|
+
allowUpload?: boolean;
|
|
19
|
+
/** 是否启用拖拽上传,拖拽区域为整个聊天区域(不含侧边栏),需 allowUpload 为 true */
|
|
20
|
+
draggable?: boolean;
|
|
21
|
+
/** 是否显示清空按钮 */
|
|
22
|
+
clearBtnShow?: boolean;
|
|
23
|
+
/** 是否显示函数调用详情 */
|
|
24
|
+
showFnCallDetail?: boolean;
|
|
25
|
+
/** 自定义消息 Footer */
|
|
26
|
+
messagesFooter?: (msg: any) => React.ReactNode;
|
|
27
|
+
/** 自定义工具调用渲染函数,返回 null 则降级使用默认渲染 */
|
|
28
|
+
renderFunctionCall?: (msg: import("../../../types").IMessage) => React.ReactNode | null;
|
|
29
|
+
/** 局部策略覆盖,优先级高于 Provider preset/strategies */
|
|
30
|
+
strategies?: ChatStrategies;
|
|
31
|
+
}
|
|
32
|
+
declare const DefaultLayout: React.FC<DefaultLayoutProps>;
|
|
33
|
+
export default DefaultLayout;
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
2
|
+
import React, { useRef, useCallback, useState } from "react";
|
|
3
|
+
import { Attachments } from "@ant-design/x";
|
|
4
|
+
import { useChatState } from "../context/ChatStateContext";
|
|
5
|
+
import Sidebar from "./Sidebar";
|
|
6
|
+
import Messages from "./Messages";
|
|
7
|
+
import Welcome from "./Welcome";
|
|
8
|
+
import Sender from "./Sender";
|
|
9
|
+
import { useStyles } from "./styles";
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* XAdkProvider 默认布局
|
|
13
|
+
*
|
|
14
|
+
* 提供类似 ChatGPT/DeepSeek 的默认布局:
|
|
15
|
+
* - 左侧: 会话列表侧边栏 (可选,支持展开/收起)
|
|
16
|
+
* - 右侧: 聊天区域 (标题 + 消息 + 输入框,居中显示,最大宽度800px)
|
|
17
|
+
*/
|
|
18
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
19
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
20
|
+
var DefaultLayout = function DefaultLayout(_ref) {
|
|
21
|
+
var _ref$showSessionList = _ref.showSessionList,
|
|
22
|
+
showSessionList = _ref$showSessionList === void 0 ? false : _ref$showSessionList,
|
|
23
|
+
header = _ref.header,
|
|
24
|
+
footer = _ref.footer,
|
|
25
|
+
_ref$allowUpload = _ref.allowUpload,
|
|
26
|
+
allowUpload = _ref$allowUpload === void 0 ? false : _ref$allowUpload,
|
|
27
|
+
_ref$draggable = _ref.draggable,
|
|
28
|
+
draggable = _ref$draggable === void 0 ? true : _ref$draggable,
|
|
29
|
+
_ref$clearBtnShow = _ref.clearBtnShow,
|
|
30
|
+
clearBtnShow = _ref$clearBtnShow === void 0 ? true : _ref$clearBtnShow,
|
|
31
|
+
showFnCallDetail = _ref.showFnCallDetail,
|
|
32
|
+
renderFunctionCall = _ref.renderFunctionCall,
|
|
33
|
+
strategies = _ref.strategies;
|
|
34
|
+
var _useChatState = useChatState(),
|
|
35
|
+
appInfo = _useChatState.appInfo,
|
|
36
|
+
messages = _useChatState.messages,
|
|
37
|
+
prologue = _useChatState.prologue,
|
|
38
|
+
suggestions = _useChatState.suggestions;
|
|
39
|
+
var styles = useStyles();
|
|
40
|
+
var chatAreaRef = useRef(null);
|
|
41
|
+
var senderRef = useRef(null);
|
|
42
|
+
var _useState = useState([]),
|
|
43
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
44
|
+
dropFileList = _useState2[0],
|
|
45
|
+
setDropFileList = _useState2[1];
|
|
46
|
+
|
|
47
|
+
// 拖拽上传是否启用
|
|
48
|
+
var enableDragUpload = allowUpload && draggable;
|
|
49
|
+
|
|
50
|
+
// Attachments 拖拽文件后的回调
|
|
51
|
+
var handleDropFiles = useCallback(function (info) {
|
|
52
|
+
var rawFiles = info.fileList.map(function (f) {
|
|
53
|
+
return f.originFileObj;
|
|
54
|
+
}).filter(Boolean);
|
|
55
|
+
if (rawFiles.length > 0) {
|
|
56
|
+
var _senderRef$current;
|
|
57
|
+
(_senderRef$current = senderRef.current) === null || _senderRef$current === void 0 || _senderRef$current.addFiles(rawFiles);
|
|
58
|
+
}
|
|
59
|
+
// 清空 Attachments 文件列表,避免累积
|
|
60
|
+
setDropFileList([]);
|
|
61
|
+
}, []);
|
|
62
|
+
|
|
63
|
+
// 判断是否为空状态(展示Welcome)
|
|
64
|
+
var isEmpty = messages.length === 0 && !prologue && (!suggestions || suggestions.length === 0);
|
|
65
|
+
return /*#__PURE__*/_jsxs("div", {
|
|
66
|
+
style: {
|
|
67
|
+
display: "flex",
|
|
68
|
+
height: "100%",
|
|
69
|
+
width: "100%",
|
|
70
|
+
position: "relative",
|
|
71
|
+
overflow: "hidden"
|
|
72
|
+
},
|
|
73
|
+
children: [showSessionList && /*#__PURE__*/_jsx(Sidebar, {
|
|
74
|
+
isNarrow: false
|
|
75
|
+
}), /*#__PURE__*/_jsxs("div", {
|
|
76
|
+
ref: chatAreaRef,
|
|
77
|
+
style: {
|
|
78
|
+
flex: 1,
|
|
79
|
+
display: "flex",
|
|
80
|
+
justifyContent: "center",
|
|
81
|
+
alignItems: "center",
|
|
82
|
+
flexDirection: "column",
|
|
83
|
+
overflow: "hidden",
|
|
84
|
+
position: "relative"
|
|
85
|
+
},
|
|
86
|
+
children: [/*#__PURE__*/_jsxs("div", {
|
|
87
|
+
style: {
|
|
88
|
+
width: "100%",
|
|
89
|
+
maxWidth: "800px",
|
|
90
|
+
height: "100%",
|
|
91
|
+
display: "flex",
|
|
92
|
+
flexDirection: "column"
|
|
93
|
+
},
|
|
94
|
+
children: [header || appInfo && /*#__PURE__*/_jsx("div", {
|
|
95
|
+
style: {
|
|
96
|
+
padding: "16px 24px",
|
|
97
|
+
display: "flex",
|
|
98
|
+
justifyContent: "center",
|
|
99
|
+
background: "white"
|
|
100
|
+
},
|
|
101
|
+
children: /*#__PURE__*/_jsx("div", {
|
|
102
|
+
style: {
|
|
103
|
+
display: "flex",
|
|
104
|
+
alignItems: "center",
|
|
105
|
+
gap: "12px"
|
|
106
|
+
},
|
|
107
|
+
children: appInfo.appName && /*#__PURE__*/_jsx("div", {
|
|
108
|
+
children: /*#__PURE__*/_jsx("div", {
|
|
109
|
+
style: {
|
|
110
|
+
fontSize: "16px",
|
|
111
|
+
fontWeight: 500,
|
|
112
|
+
color: "#000"
|
|
113
|
+
},
|
|
114
|
+
children: appInfo.appName
|
|
115
|
+
})
|
|
116
|
+
})
|
|
117
|
+
})
|
|
118
|
+
}), /*#__PURE__*/_jsxs("div", {
|
|
119
|
+
style: {
|
|
120
|
+
flex: 1,
|
|
121
|
+
overflow: "hidden",
|
|
122
|
+
display: "flex",
|
|
123
|
+
flexDirection: "column"
|
|
124
|
+
},
|
|
125
|
+
children: [/*#__PURE__*/_jsx("div", {
|
|
126
|
+
style: {
|
|
127
|
+
flex: isEmpty ? 1 : 0,
|
|
128
|
+
transition: "flex 0.4s cubic-bezier(0.4, 0, 0.2, 1)"
|
|
129
|
+
}
|
|
130
|
+
}), isEmpty && /*#__PURE__*/_jsx("div", {
|
|
131
|
+
style: {
|
|
132
|
+
display: "flex",
|
|
133
|
+
flexDirection: "column",
|
|
134
|
+
alignItems: "center",
|
|
135
|
+
padding: "0 24px",
|
|
136
|
+
marginBottom: "24px"
|
|
137
|
+
},
|
|
138
|
+
children: /*#__PURE__*/_jsx(Welcome, {})
|
|
139
|
+
}), !isEmpty && /*#__PURE__*/_jsx("div", {
|
|
140
|
+
style: {
|
|
141
|
+
flex: 1,
|
|
142
|
+
overflow: "hidden",
|
|
143
|
+
position: "relative"
|
|
144
|
+
},
|
|
145
|
+
children: /*#__PURE__*/_jsx(Messages, {
|
|
146
|
+
showFnCallDetail: showFnCallDetail,
|
|
147
|
+
renderFunctionCall: renderFunctionCall,
|
|
148
|
+
strategies: strategies
|
|
149
|
+
})
|
|
150
|
+
}), /*#__PURE__*/_jsx("div", {
|
|
151
|
+
className: styles.sendWrapper,
|
|
152
|
+
style: {
|
|
153
|
+
maxWidth: isEmpty ? "600px" : "100%",
|
|
154
|
+
alignSelf: "center",
|
|
155
|
+
padding: isEmpty ? "0 24px" : "0",
|
|
156
|
+
transition: "all 0.4s cubic-bezier(0.4, 0, 0.2, 1)"
|
|
157
|
+
},
|
|
158
|
+
children: footer || /*#__PURE__*/_jsx(Sender, {
|
|
159
|
+
ref: senderRef,
|
|
160
|
+
allowUpload: allowUpload,
|
|
161
|
+
draggable: !enableDragUpload,
|
|
162
|
+
clearBtnShow: clearBtnShow
|
|
163
|
+
})
|
|
164
|
+
}), /*#__PURE__*/_jsx("div", {
|
|
165
|
+
style: {
|
|
166
|
+
flex: isEmpty ? 1.5 : 0,
|
|
167
|
+
transition: "flex 0.4s cubic-bezier(0.4, 0, 0.2, 1)"
|
|
168
|
+
}
|
|
169
|
+
})]
|
|
170
|
+
})]
|
|
171
|
+
}), enableDragUpload && /*#__PURE__*/_jsx(Attachments, {
|
|
172
|
+
style: {
|
|
173
|
+
display: "none"
|
|
174
|
+
},
|
|
175
|
+
items: dropFileList,
|
|
176
|
+
getDropContainer: function getDropContainer() {
|
|
177
|
+
return chatAreaRef.current;
|
|
178
|
+
},
|
|
179
|
+
multiple: true,
|
|
180
|
+
beforeUpload: function beforeUpload() {
|
|
181
|
+
return false;
|
|
182
|
+
},
|
|
183
|
+
onChange: handleDropFiles
|
|
184
|
+
})]
|
|
185
|
+
})]
|
|
186
|
+
});
|
|
187
|
+
};
|
|
188
|
+
DefaultLayout.displayName = "XAdkProvider.DefaultLayout";
|
|
189
|
+
export default DefaultLayout;
|
|
190
|
+
//# sourceMappingURL=DefaultLayout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useRef","useCallback","useState","Attachments","useChatState","Sidebar","Messages","Welcome","Sender","useStyles","jsx","_jsx","jsxs","_jsxs","DefaultLayout","_ref","_ref$showSessionList","showSessionList","header","footer","_ref$allowUpload","allowUpload","_ref$draggable","draggable","_ref$clearBtnShow","clearBtnShow","showFnCallDetail","renderFunctionCall","strategies","_useChatState","appInfo","messages","prologue","suggestions","styles","chatAreaRef","senderRef","_useState","_useState2","_slicedToArray","dropFileList","setDropFileList","enableDragUpload","handleDropFiles","info","rawFiles","fileList","map","f","originFileObj","filter","Boolean","length","_senderRef$current","current","addFiles","isEmpty","style","display","height","width","position","overflow","children","isNarrow","ref","flex","justifyContent","alignItems","flexDirection","maxWidth","padding","background","gap","appName","fontSize","fontWeight","color","transition","marginBottom","className","sendWrapper","alignSelf","items","getDropContainer","multiple","beforeUpload","onChange","displayName"],"sources":["../../../../../src/components/XAdkProvider/compound/DefaultLayout.tsx"],"sourcesContent":["import React, { useRef, useCallback, useState } from \"react\";\nimport { Attachments } from \"@ant-design/x\";\nimport type { UploadFile } from \"antd\";\nimport { useChatState } from \"../context/ChatStateContext\";\nimport Sidebar from \"./Sidebar\";\nimport Messages from \"./Messages\";\nimport Welcome from \"./Welcome\";\nimport Sender from \"./Sender\";\nimport { useStyles } from \"./styles\";\nimport type { ChatStrategies } from \"@/types\";\nimport type { XAdkSenderHandle } from \"@/types/XAdkSender\";\n\n/**\n * XAdkProvider 默认布局\n *\n * 提供类似 ChatGPT/DeepSeek 的默认布局:\n * - 左侧: 会话列表侧边栏 (可选,支持展开/收起)\n * - 右侧: 聊天区域 (标题 + 消息 + 输入框,居中显示,最大宽度800px)\n */\nexport interface DefaultLayoutProps {\n /** 是否显示会话列表 */\n showSessionList?: boolean;\n /** 自定义头部 */\n header?: React.ReactNode;\n /** 自定义底部 (替代默认 Sender) */\n footer?: React.ReactNode;\n /** 是否允许上传文件 */\n allowUpload?: boolean;\n /** 是否启用拖拽上传,拖拽区域为整个聊天区域(不含侧边栏),需 allowUpload 为 true */\n draggable?: boolean;\n /** 是否显示清空按钮 */\n clearBtnShow?: boolean;\n /** 是否显示函数调用详情 */\n showFnCallDetail?: boolean;\n /** 自定义消息 Footer */\n messagesFooter?: (msg: any) => React.ReactNode;\n /** 自定义工具调用渲染函数,返回 null 则降级使用默认渲染 */\n renderFunctionCall?: (\n msg: import(\"@/types\").IMessage,\n ) => React.ReactNode | null;\n /** 局部策略覆盖,优先级高于 Provider preset/strategies */\n strategies?: ChatStrategies;\n}\n\nconst DefaultLayout: React.FC<DefaultLayoutProps> = ({\n showSessionList = false,\n header,\n footer,\n allowUpload = false,\n draggable = true,\n clearBtnShow = true,\n showFnCallDetail,\n renderFunctionCall,\n strategies,\n}) => {\n const { appInfo, messages, prologue, suggestions } = useChatState();\n const styles = useStyles();\n const chatAreaRef = useRef<HTMLDivElement>(null);\n const senderRef = useRef<XAdkSenderHandle>(null);\n const [dropFileList, setDropFileList] = useState<UploadFile[]>([]);\n\n // 拖拽上传是否启用\n const enableDragUpload = allowUpload && draggable;\n\n // Attachments 拖拽文件后的回调\n const handleDropFiles = useCallback((info: { fileList: UploadFile[] }) => {\n const rawFiles = info.fileList\n .map((f) => f.originFileObj)\n .filter(Boolean) as File[];\n if (rawFiles.length > 0) {\n senderRef.current?.addFiles(rawFiles);\n }\n // 清空 Attachments 文件列表,避免累积\n setDropFileList([]);\n }, []);\n\n // 判断是否为空状态(展示Welcome)\n const isEmpty =\n messages.length === 0 &&\n !prologue &&\n (!suggestions || suggestions.length === 0);\n\n return (\n <div\n style={{\n display: \"flex\",\n height: \"100%\",\n width: \"100%\",\n position: \"relative\",\n overflow: \"hidden\",\n }}\n >\n {/* 左侧会话列表 - XAiConversations 组件会处理展开/收起 */}\n {showSessionList && <Sidebar isNarrow={false} />}\n\n {/* 右侧聊天区域 - 使用 flex: 1 自动占据剩余空间 */}\n <div\n ref={chatAreaRef}\n style={{\n flex: 1,\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n flexDirection: \"column\",\n overflow: \"hidden\",\n position: \"relative\",\n }}\n >\n {/* 居中容器 - 最大宽度 800px */}\n <div\n style={{\n width: \"100%\",\n maxWidth: \"800px\",\n height: \"100%\",\n display: \"flex\",\n flexDirection: \"column\",\n }}\n >\n {/* 头部 */}\n {header ||\n (appInfo && (\n <div\n style={{\n padding: \"16px 24px\",\n display: \"flex\",\n justifyContent: \"center\",\n background: \"white\",\n }}\n >\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n gap: \"12px\",\n }}\n >\n {appInfo.appName && (\n <div>\n <div\n style={{\n fontSize: \"16px\",\n fontWeight: 500,\n color: \"#000\",\n }}\n >\n {appInfo.appName}\n </div>\n </div>\n )}\n </div>\n </div>\n ))}\n\n {/* 消息区域或Welcome区域 */}\n <div\n style={{\n flex: 1,\n overflow: \"hidden\",\n display: \"flex\",\n flexDirection: \"column\",\n }}\n >\n {/* 上方弹性占位 - Welcome状态时占据空间 */}\n <div\n style={{\n flex: isEmpty ? 1 : 0,\n transition: \"flex 0.4s cubic-bezier(0.4, 0, 0.2, 1)\",\n }}\n />\n\n {/* Welcome 组件 - 只在空状态显示 */}\n {isEmpty && (\n <div\n style={{\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n padding: \"0 24px\",\n marginBottom: \"24px\",\n }}\n >\n <Welcome />\n </div>\n )}\n\n {/* Messages 组件 - 只在非空状态显示 */}\n {!isEmpty && (\n <div\n style={{\n flex: 1,\n overflow: \"hidden\",\n position: \"relative\",\n }}\n >\n <Messages\n showFnCallDetail={showFnCallDetail}\n renderFunctionCall={renderFunctionCall}\n strategies={strategies}\n />\n </div>\n )}\n {/* 输入区域 - 始终存在,通过样式控制位置 */}\n <div\n className={styles.sendWrapper}\n style={{\n maxWidth: isEmpty ? \"600px\" : \"100%\",\n alignSelf: \"center\",\n padding: isEmpty ? \"0 24px\" : \"0\",\n transition: \"all 0.4s cubic-bezier(0.4, 0, 0.2, 1)\",\n }}\n >\n {footer || (\n <Sender\n ref={senderRef}\n allowUpload={allowUpload}\n draggable={!enableDragUpload}\n clearBtnShow={clearBtnShow}\n />\n )}\n </div>\n\n {/* 下方弹性占位 - Welcome状态时占据更多空间,让内容偏上 */}\n <div\n style={{\n flex: isEmpty ? 1.5 : 0,\n transition: \"flex 0.4s cubic-bezier(0.4, 0, 0.2, 1)\",\n }}\n />\n </div>\n </div>\n\n {/* Attachments 拖拽遮罩 - 仅用于拖拽上传功能 */}\n {enableDragUpload && (\n <Attachments\n style={{ display: \"none\" }}\n items={dropFileList}\n getDropContainer={() => chatAreaRef.current}\n multiple\n beforeUpload={() => false}\n onChange={handleDropFiles}\n />\n )}\n </div>\n </div>\n );\n};\n\nDefaultLayout.displayName = \"XAdkProvider.DefaultLayout\";\n\nexport default DefaultLayout;\n"],"mappings":"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"}
|