@ai-group/chat-sdk 3.5.4 → 3.5.5

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.
Files changed (655) hide show
  1. package/package.json +1 -1
  2. package/dist/cjs/assets/add-chat.svg +0 -13
  3. package/dist/cjs/assets/arrow-down-blue.png +0 -0
  4. package/dist/cjs/assets/arrow-down.png +0 -0
  5. package/dist/cjs/assets/arrow-up.png +0 -0
  6. package/dist/cjs/assets/chatKnowledge.png +0 -0
  7. package/dist/cjs/assets/completed-black.png +0 -0
  8. package/dist/cjs/assets/completed.png +0 -0
  9. package/dist/cjs/assets/document-black.png +0 -0
  10. package/dist/cjs/assets/document.png +0 -0
  11. package/dist/cjs/assets/document.svg +0 -16
  12. package/dist/cjs/assets/empty.png +0 -0
  13. package/dist/cjs/assets/flash-open.svg +0 -14
  14. package/dist/cjs/assets/group.png +0 -0
  15. package/dist/cjs/assets/logo.png +0 -0
  16. package/dist/cjs/assets/qa-black.png +0 -0
  17. package/dist/cjs/assets/qa.png +0 -0
  18. package/dist/cjs/assets/skillNo-black.png +0 -0
  19. package/dist/cjs/assets/skillNo.png +0 -0
  20. package/dist/cjs/assets/svg/AddChatIcon.d.ts +0 -3
  21. package/dist/cjs/assets/svg/AddChatIcon.js +0 -31
  22. package/dist/cjs/assets/svg/AddChatIcon.js.map +0 -7
  23. package/dist/cjs/assets/think.png +0 -0
  24. package/dist/cjs/assets/tools-black.png +0 -0
  25. package/dist/cjs/assets/tools.png +0 -0
  26. package/dist/cjs/assets/user.png +0 -0
  27. package/dist/cjs/client/base.d.ts +0 -9
  28. package/dist/cjs/client/base.js +0 -18
  29. package/dist/cjs/client/base.js.map +0 -7
  30. package/dist/cjs/client/restClient.d.ts +0 -0
  31. package/dist/cjs/client/restClient.js +0 -1
  32. package/dist/cjs/client/restClient.js.map +0 -7
  33. package/dist/cjs/client/wsClient.d.ts +0 -0
  34. package/dist/cjs/client/wsClient.js +0 -1
  35. package/dist/cjs/client/wsClient.js.map +0 -7
  36. package/dist/cjs/components/DislikeFeedback.d.ts +0 -8
  37. package/dist/cjs/components/DislikeFeedback.js +0 -113
  38. package/dist/cjs/components/DislikeFeedback.js.map +0 -7
  39. package/dist/cjs/components/FeedbackTags.d.ts +0 -7
  40. package/dist/cjs/components/FeedbackTags.js +0 -52
  41. package/dist/cjs/components/FeedbackTags.js.map +0 -7
  42. package/dist/cjs/components/FileGallery/index.d.ts +0 -34
  43. package/dist/cjs/components/FileGallery/index.js +0 -324
  44. package/dist/cjs/components/FileGallery/index.js.map +0 -7
  45. package/dist/cjs/components/FileGallery/styles.d.ts +0 -49
  46. package/dist/cjs/components/FileGallery/styles.js +0 -194
  47. package/dist/cjs/components/FileGallery/styles.js.map +0 -7
  48. package/dist/cjs/components/FolderTree/DirectoryTree.d.ts +0 -22
  49. package/dist/cjs/components/FolderTree/DirectoryTree.js +0 -209
  50. package/dist/cjs/components/FolderTree/DirectoryTree.js.map +0 -7
  51. package/dist/cjs/components/FolderTree/FilePreview.d.ts +0 -17
  52. package/dist/cjs/components/FolderTree/FilePreview.js +0 -163
  53. package/dist/cjs/components/FolderTree/FilePreview.js.map +0 -7
  54. package/dist/cjs/components/FolderTree/index.d.ts +0 -5
  55. package/dist/cjs/components/FolderTree/index.js +0 -257
  56. package/dist/cjs/components/FolderTree/index.js.map +0 -7
  57. package/dist/cjs/components/FolderTree/styles.d.ts +0 -49
  58. package/dist/cjs/components/FolderTree/styles.js +0 -174
  59. package/dist/cjs/components/FolderTree/styles.js.map +0 -7
  60. package/dist/cjs/components/FolderTree/types.d.ts +0 -106
  61. package/dist/cjs/components/FolderTree/types.js +0 -18
  62. package/dist/cjs/components/FolderTree/types.js.map +0 -7
  63. package/dist/cjs/components/XAdkChatbot/components/FunctionCallRender/index.d.ts +0 -4
  64. package/dist/cjs/components/XAdkChatbot/components/FunctionCallRender/index.js +0 -217
  65. package/dist/cjs/components/XAdkChatbot/components/FunctionCallRender/index.js.map +0 -7
  66. package/dist/cjs/components/XAdkChatbot/components/FunctionCallRender/styles.d.ts +0 -41
  67. package/dist/cjs/components/XAdkChatbot/components/FunctionCallRender/styles.js +0 -70
  68. package/dist/cjs/components/XAdkChatbot/components/FunctionCallRender/styles.js.map +0 -7
  69. package/dist/cjs/components/XAdkChatbot/components/MarkdownRender/index.d.ts +0 -10
  70. package/dist/cjs/components/XAdkChatbot/components/MarkdownRender/index.js +0 -186
  71. package/dist/cjs/components/XAdkChatbot/components/MarkdownRender/index.js.map +0 -7
  72. package/dist/cjs/components/XAdkChatbot/components/MarkdownRender/styles.d.ts +0 -38
  73. package/dist/cjs/components/XAdkChatbot/components/MarkdownRender/styles.js +0 -119
  74. package/dist/cjs/components/XAdkChatbot/components/MarkdownRender/styles.js.map +0 -7
  75. package/dist/cjs/components/XAdkChatbot/components/ThinkRender/index.d.ts +0 -8
  76. package/dist/cjs/components/XAdkChatbot/components/ThinkRender/index.js +0 -64
  77. package/dist/cjs/components/XAdkChatbot/components/ThinkRender/index.js.map +0 -7
  78. package/dist/cjs/components/XAdkChatbot/index.d.ts +0 -14
  79. package/dist/cjs/components/XAdkChatbot/index.js +0 -527
  80. package/dist/cjs/components/XAdkChatbot/index.js.map +0 -7
  81. package/dist/cjs/components/XAdkChatbot/styles.d.ts +0 -62
  82. package/dist/cjs/components/XAdkChatbot/styles.js +0 -234
  83. package/dist/cjs/components/XAdkChatbot/styles.js.map +0 -7
  84. package/dist/cjs/components/XAdkProvider/compound/Chatbot.d.ts +0 -30
  85. package/dist/cjs/components/XAdkProvider/compound/Chatbot.js +0 -64
  86. package/dist/cjs/components/XAdkProvider/compound/Chatbot.js.map +0 -7
  87. package/dist/cjs/components/XAdkProvider/compound/DefaultLayout.d.ts +0 -33
  88. package/dist/cjs/components/XAdkProvider/compound/DefaultLayout.js +0 -245
  89. package/dist/cjs/components/XAdkProvider/compound/DefaultLayout.js.map +0 -7
  90. package/dist/cjs/components/XAdkProvider/compound/DislikeFeedBack.d.ts +0 -8
  91. package/dist/cjs/components/XAdkProvider/compound/DislikeFeedBack.js +0 -117
  92. package/dist/cjs/components/XAdkProvider/compound/DislikeFeedBack.js.map +0 -7
  93. package/dist/cjs/components/XAdkProvider/compound/FeedbackTags.d.ts +0 -7
  94. package/dist/cjs/components/XAdkProvider/compound/FeedbackTags.js +0 -64
  95. package/dist/cjs/components/XAdkProvider/compound/FeedbackTags.js.map +0 -7
  96. package/dist/cjs/components/XAdkProvider/compound/Header.d.ts +0 -25
  97. package/dist/cjs/components/XAdkProvider/compound/Header.js +0 -70
  98. package/dist/cjs/components/XAdkProvider/compound/Header.js.map +0 -7
  99. package/dist/cjs/components/XAdkProvider/compound/Messages.d.ts +0 -26
  100. package/dist/cjs/components/XAdkProvider/compound/Messages.js +0 -159
  101. package/dist/cjs/components/XAdkProvider/compound/Messages.js.map +0 -7
  102. package/dist/cjs/components/XAdkProvider/compound/Sender.d.ts +0 -27
  103. package/dist/cjs/components/XAdkProvider/compound/Sender.js +0 -58
  104. package/dist/cjs/components/XAdkProvider/compound/Sender.js.map +0 -7
  105. package/dist/cjs/components/XAdkProvider/compound/Sidebar.d.ts +0 -24
  106. package/dist/cjs/components/XAdkProvider/compound/Sidebar.js +0 -151
  107. package/dist/cjs/components/XAdkProvider/compound/Sidebar.js.map +0 -7
  108. package/dist/cjs/components/XAdkProvider/compound/Welcome.d.ts +0 -6
  109. package/dist/cjs/components/XAdkProvider/compound/Welcome.js +0 -60
  110. package/dist/cjs/components/XAdkProvider/compound/Welcome.js.map +0 -7
  111. package/dist/cjs/components/XAdkProvider/compound/index.d.ts +0 -17
  112. package/dist/cjs/components/XAdkProvider/compound/index.js +0 -55
  113. package/dist/cjs/components/XAdkProvider/compound/index.js.map +0 -7
  114. package/dist/cjs/components/XAdkProvider/compound/styles.d.ts +0 -37
  115. package/dist/cjs/components/XAdkProvider/compound/styles.js +0 -55
  116. package/dist/cjs/components/XAdkProvider/compound/styles.js.map +0 -7
  117. package/dist/cjs/components/XAdkProvider/context/ChatActionContext.d.ts +0 -41
  118. package/dist/cjs/components/XAdkProvider/context/ChatActionContext.js +0 -40
  119. package/dist/cjs/components/XAdkProvider/context/ChatActionContext.js.map +0 -7
  120. package/dist/cjs/components/XAdkProvider/context/ChatStateContext.d.ts +0 -44
  121. package/dist/cjs/components/XAdkProvider/context/ChatStateContext.js +0 -42
  122. package/dist/cjs/components/XAdkProvider/context/ChatStateContext.js.map +0 -7
  123. package/dist/cjs/components/XAdkProvider/context/SessionContext.d.ts +0 -29
  124. package/dist/cjs/components/XAdkProvider/context/SessionContext.js +0 -40
  125. package/dist/cjs/components/XAdkProvider/context/SessionContext.js.map +0 -7
  126. package/dist/cjs/components/XAdkProvider/context/index.d.ts +0 -7
  127. package/dist/cjs/components/XAdkProvider/context/index.js +0 -28
  128. package/dist/cjs/components/XAdkProvider/context/index.js.map +0 -7
  129. package/dist/cjs/components/XAdkProvider/index.d.ts +0 -55
  130. package/dist/cjs/components/XAdkProvider/index.js +0 -263
  131. package/dist/cjs/components/XAdkProvider/index.js.map +0 -7
  132. package/dist/cjs/components/XAdkProvider/styles.d.ts +0 -38
  133. package/dist/cjs/components/XAdkProvider/styles.js +0 -51
  134. package/dist/cjs/components/XAdkProvider/styles.js.map +0 -7
  135. package/dist/cjs/components/XAdkSender/Switch.d.ts +0 -16
  136. package/dist/cjs/components/XAdkSender/Switch.js +0 -95
  137. package/dist/cjs/components/XAdkSender/Switch.js.map +0 -7
  138. package/dist/cjs/components/XAdkSender/index.d.ts +0 -9
  139. package/dist/cjs/components/XAdkSender/index.js +0 -582
  140. package/dist/cjs/components/XAdkSender/index.js.map +0 -7
  141. package/dist/cjs/components/XAdkSender/styles.d.ts +0 -47
  142. package/dist/cjs/components/XAdkSender/styles.js +0 -228
  143. package/dist/cjs/components/XAdkSender/styles.js.map +0 -7
  144. package/dist/cjs/components/XAdkThoughtChain/index.d.ts +0 -4
  145. package/dist/cjs/components/XAdkThoughtChain/index.js +0 -189
  146. package/dist/cjs/components/XAdkThoughtChain/index.js.map +0 -7
  147. package/dist/cjs/components/XAdkThoughtChain/styles.d.ts +0 -60
  148. package/dist/cjs/components/XAdkThoughtChain/styles.js +0 -206
  149. package/dist/cjs/components/XAdkThoughtChain/styles.js.map +0 -7
  150. package/dist/cjs/components/XAiChatbot/index.d.ts +0 -10
  151. package/dist/cjs/components/XAiChatbot/index.js +0 -564
  152. package/dist/cjs/components/XAiChatbot/index.js.map +0 -7
  153. package/dist/cjs/components/XAiChatbot/styles.d.ts +0 -68
  154. package/dist/cjs/components/XAiChatbot/styles.js +0 -386
  155. package/dist/cjs/components/XAiChatbot/styles.js.map +0 -7
  156. package/dist/cjs/components/XAiConversations/index.d.ts +0 -4
  157. package/dist/cjs/components/XAiConversations/index.js +0 -140
  158. package/dist/cjs/components/XAiConversations/index.js.map +0 -7
  159. package/dist/cjs/components/XAiConversations/styles.d.ts +0 -50
  160. package/dist/cjs/components/XAiConversations/styles.js +0 -198
  161. package/dist/cjs/components/XAiConversations/styles.js.map +0 -7
  162. package/dist/cjs/components/XAiJsonView/index.d.ts +0 -8
  163. package/dist/cjs/components/XAiJsonView/index.js +0 -81
  164. package/dist/cjs/components/XAiJsonView/index.js.map +0 -7
  165. package/dist/cjs/components/XAiJsonView/styles.d.ts +0 -39
  166. package/dist/cjs/components/XAiJsonView/styles.js +0 -58
  167. package/dist/cjs/components/XAiJsonView/styles.js.map +0 -7
  168. package/dist/cjs/components/XAiProvider/demo.styles.d.ts +0 -37
  169. package/dist/cjs/components/XAiProvider/demo.styles.js +0 -37
  170. package/dist/cjs/components/XAiProvider/demo.styles.js.map +0 -7
  171. package/dist/cjs/components/XAiProvider/index.d.ts +0 -4
  172. package/dist/cjs/components/XAiProvider/index.js +0 -385
  173. package/dist/cjs/components/XAiProvider/index.js.map +0 -7
  174. package/dist/cjs/components/XAiSDK.d.ts +0 -10
  175. package/dist/cjs/components/XAiSDK.js +0 -53
  176. package/dist/cjs/components/XAiSDK.js.map +0 -7
  177. package/dist/cjs/components/XAiSender/index.d.ts +0 -4
  178. package/dist/cjs/components/XAiSender/index.js +0 -228
  179. package/dist/cjs/components/XAiSender/index.js.map +0 -7
  180. package/dist/cjs/components/XAiSender/styles.d.ts +0 -44
  181. package/dist/cjs/components/XAiSender/styles.js +0 -157
  182. package/dist/cjs/components/XAiSender/styles.js.map +0 -7
  183. package/dist/cjs/constants/index.d.ts +0 -3
  184. package/dist/cjs/constants/index.js +0 -36
  185. package/dist/cjs/constants/index.js.map +0 -7
  186. package/dist/cjs/context/AiProviderContext.d.ts +0 -15
  187. package/dist/cjs/context/AiProviderContext.js +0 -74
  188. package/dist/cjs/context/AiProviderContext.js.map +0 -7
  189. package/dist/cjs/context/ThemeContext.d.ts +0 -20
  190. package/dist/cjs/context/ThemeContext.js +0 -37
  191. package/dist/cjs/context/ThemeContext.js.map +0 -7
  192. package/dist/cjs/hooks/useADKChat.d.ts +0 -41
  193. package/dist/cjs/hooks/useADKChat.js +0 -1027
  194. package/dist/cjs/hooks/useADKChat.js.map +0 -7
  195. package/dist/cjs/hooks/useAgentGenerator.d.ts +0 -94
  196. package/dist/cjs/hooks/useAgentGenerator.js +0 -804
  197. package/dist/cjs/hooks/useAgentGenerator.js.map +0 -7
  198. package/dist/cjs/hooks/useEventStreamRequest.d.ts +0 -30
  199. package/dist/cjs/hooks/useEventStreamRequest.js +0 -191
  200. package/dist/cjs/hooks/useEventStreamRequest.js.map +0 -7
  201. package/dist/cjs/hooks/useProviderContext.d.ts +0 -34
  202. package/dist/cjs/hooks/useProviderContext.js +0 -105
  203. package/dist/cjs/hooks/useProviderContext.js.map +0 -7
  204. package/dist/cjs/hooks/useXAiSDK.d.ts +0 -14
  205. package/dist/cjs/hooks/useXAiSDK.js +0 -76
  206. package/dist/cjs/hooks/useXAiSDK.js.map +0 -7
  207. package/dist/cjs/index.d.ts +0 -30
  208. package/dist/cjs/index.js +0 -123
  209. package/dist/cjs/index.js.map +0 -7
  210. package/dist/cjs/presets/xGroupAdk.d.ts +0 -20
  211. package/dist/cjs/presets/xGroupAdk.js +0 -130
  212. package/dist/cjs/presets/xGroupAdk.js.map +0 -7
  213. package/dist/cjs/services/api.d.ts +0 -162
  214. package/dist/cjs/services/api.js +0 -101
  215. package/dist/cjs/services/api.js.map +0 -7
  216. package/dist/cjs/styles/common.d.ts +0 -73
  217. package/dist/cjs/styles/common.js +0 -174
  218. package/dist/cjs/styles/common.js.map +0 -7
  219. package/dist/cjs/styles/markdown.d.ts +0 -3
  220. package/dist/cjs/styles/markdown.js +0 -185
  221. package/dist/cjs/styles/markdown.js.map +0 -7
  222. package/dist/cjs/types/ChatHook.d.ts +0 -92
  223. package/dist/cjs/types/ChatHook.js +0 -18
  224. package/dist/cjs/types/ChatHook.js.map +0 -7
  225. package/dist/cjs/types/ChatStrategies.d.ts +0 -45
  226. package/dist/cjs/types/ChatStrategies.js +0 -18
  227. package/dist/cjs/types/ChatStrategies.js.map +0 -7
  228. package/dist/cjs/types/FileGallery.d.ts +0 -36
  229. package/dist/cjs/types/FileGallery.js +0 -18
  230. package/dist/cjs/types/FileGallery.js.map +0 -7
  231. package/dist/cjs/types/FunctionCallRender.d.ts +0 -35
  232. package/dist/cjs/types/FunctionCallRender.js +0 -32
  233. package/dist/cjs/types/FunctionCallRender.js.map +0 -7
  234. package/dist/cjs/types/XAdkChatbot.d.ts +0 -348
  235. package/dist/cjs/types/XAdkChatbot.js +0 -18
  236. package/dist/cjs/types/XAdkChatbot.js.map +0 -7
  237. package/dist/cjs/types/XAdkProvider.d.ts +0 -224
  238. package/dist/cjs/types/XAdkProvider.js +0 -34
  239. package/dist/cjs/types/XAdkProvider.js.map +0 -7
  240. package/dist/cjs/types/XAdkSender.d.ts +0 -114
  241. package/dist/cjs/types/XAdkSender.js +0 -18
  242. package/dist/cjs/types/XAdkSender.js.map +0 -7
  243. package/dist/cjs/types/XAdkThoughtChain.d.ts +0 -35
  244. package/dist/cjs/types/XAdkThoughtChain.js +0 -18
  245. package/dist/cjs/types/XAdkThoughtChain.js.map +0 -7
  246. package/dist/cjs/types/XAiChatbot.d.ts +0 -158
  247. package/dist/cjs/types/XAiChatbot.js +0 -18
  248. package/dist/cjs/types/XAiChatbot.js.map +0 -7
  249. package/dist/cjs/types/XAiConversations.d.ts +0 -22
  250. package/dist/cjs/types/XAiConversations.js +0 -18
  251. package/dist/cjs/types/XAiConversations.js.map +0 -7
  252. package/dist/cjs/types/XAiMessage.d.ts +0 -126
  253. package/dist/cjs/types/XAiMessage.js +0 -55
  254. package/dist/cjs/types/XAiMessage.js.map +0 -7
  255. package/dist/cjs/types/XAiProvider.d.ts +0 -315
  256. package/dist/cjs/types/XAiProvider.js +0 -78
  257. package/dist/cjs/types/XAiProvider.js.map +0 -7
  258. package/dist/cjs/types/XAiSender.d.ts +0 -29
  259. package/dist/cjs/types/XAiSender.js +0 -18
  260. package/dist/cjs/types/XAiSender.js.map +0 -7
  261. package/dist/cjs/types/common.d.ts +0 -6
  262. package/dist/cjs/types/common.js +0 -18
  263. package/dist/cjs/types/common.js.map +0 -7
  264. package/dist/cjs/types/index.d.ts +0 -13
  265. package/dist/cjs/types/index.js +0 -48
  266. package/dist/cjs/types/index.js.map +0 -7
  267. package/dist/cjs/types/mdx.d.ts +0 -23
  268. package/dist/cjs/types/node.d.ts +0 -10
  269. package/dist/cjs/types/node.js +0 -18
  270. package/dist/cjs/types/node.js.map +0 -7
  271. package/dist/cjs/utils/chat.d.ts +0 -34
  272. package/dist/cjs/utils/chat.js +0 -1
  273. package/dist/cjs/utils/chat.js.map +0 -7
  274. package/dist/cjs/utils/file.d.ts +0 -2
  275. package/dist/cjs/utils/file.js +0 -33
  276. package/dist/cjs/utils/file.js.map +0 -7
  277. package/dist/cjs/utils/index.d.ts +0 -4
  278. package/dist/cjs/utils/index.js +0 -59
  279. package/dist/cjs/utils/index.js.map +0 -7
  280. package/dist/cjs/utils/parseAgentMessage.d.ts +0 -81
  281. package/dist/cjs/utils/parseAgentMessage.js +0 -180
  282. package/dist/cjs/utils/parseAgentMessage.js.map +0 -7
  283. package/dist/cjs/utils/providerManager.d.ts +0 -23
  284. package/dist/cjs/utils/providerManager.js +0 -73
  285. package/dist/cjs/utils/providerManager.js.map +0 -7
  286. package/dist/cjs/utils/request.d.ts +0 -78
  287. package/dist/cjs/utils/request.example.d.ts +0 -39
  288. package/dist/cjs/utils/request.example.js +0 -211
  289. package/dist/cjs/utils/request.example.js.map +0 -7
  290. package/dist/cjs/utils/request.js +0 -231
  291. package/dist/cjs/utils/request.js.map +0 -7
  292. package/dist/cjs/utils/umdEntry.d.ts +0 -170
  293. package/dist/cjs/utils/umdEntry.js +0 -354
  294. package/dist/cjs/utils/umdEntry.js.map +0 -7
  295. package/dist/cjs/utils/workflowNode.d.ts +0 -2
  296. package/dist/cjs/utils/workflowNode.js +0 -169
  297. package/dist/cjs/utils/workflowNode.js.map +0 -7
  298. package/dist/esm/assets/add-chat.svg +0 -13
  299. package/dist/esm/assets/arrow-down-blue.png +0 -0
  300. package/dist/esm/assets/arrow-down.png +0 -0
  301. package/dist/esm/assets/arrow-up.png +0 -0
  302. package/dist/esm/assets/chatKnowledge.png +0 -0
  303. package/dist/esm/assets/completed-black.png +0 -0
  304. package/dist/esm/assets/completed.png +0 -0
  305. package/dist/esm/assets/document-black.png +0 -0
  306. package/dist/esm/assets/document.png +0 -0
  307. package/dist/esm/assets/document.svg +0 -16
  308. package/dist/esm/assets/empty.png +0 -0
  309. package/dist/esm/assets/flash-open.svg +0 -14
  310. package/dist/esm/assets/group.png +0 -0
  311. package/dist/esm/assets/logo.png +0 -0
  312. package/dist/esm/assets/qa-black.png +0 -0
  313. package/dist/esm/assets/qa.png +0 -0
  314. package/dist/esm/assets/skillNo-black.png +0 -0
  315. package/dist/esm/assets/skillNo.png +0 -0
  316. package/dist/esm/assets/svg/AddChatIcon.d.ts +0 -3
  317. package/dist/esm/assets/svg/AddChatIcon.js +0 -40
  318. package/dist/esm/assets/svg/AddChatIcon.js.map +0 -1
  319. package/dist/esm/assets/think.png +0 -0
  320. package/dist/esm/assets/tools-black.png +0 -0
  321. package/dist/esm/assets/tools.png +0 -0
  322. package/dist/esm/assets/user.png +0 -0
  323. package/dist/esm/client/base.d.ts +0 -9
  324. package/dist/esm/client/base.js +0 -2
  325. package/dist/esm/client/base.js.map +0 -1
  326. package/dist/esm/client/restClient.d.ts +0 -0
  327. package/dist/esm/client/restClient.js +0 -2
  328. package/dist/esm/client/restClient.js.map +0 -1
  329. package/dist/esm/client/wsClient.d.ts +0 -0
  330. package/dist/esm/client/wsClient.js +0 -2
  331. package/dist/esm/client/wsClient.js.map +0 -1
  332. package/dist/esm/components/DislikeFeedback.d.ts +0 -8
  333. package/dist/esm/components/DislikeFeedback.js +0 -127
  334. package/dist/esm/components/DislikeFeedback.js.map +0 -1
  335. package/dist/esm/components/FeedbackTags.d.ts +0 -7
  336. package/dist/esm/components/FeedbackTags.js +0 -34
  337. package/dist/esm/components/FeedbackTags.js.map +0 -1
  338. package/dist/esm/components/FileGallery/index.d.ts +0 -34
  339. package/dist/esm/components/FileGallery/index.js +0 -464
  340. package/dist/esm/components/FileGallery/index.js.map +0 -1
  341. package/dist/esm/components/FileGallery/styles.d.ts +0 -49
  342. package/dist/esm/components/FileGallery/styles.js +0 -23
  343. package/dist/esm/components/FileGallery/styles.js.map +0 -1
  344. package/dist/esm/components/FolderTree/DirectoryTree.d.ts +0 -22
  345. package/dist/esm/components/FolderTree/DirectoryTree.js +0 -167
  346. package/dist/esm/components/FolderTree/DirectoryTree.js.map +0 -1
  347. package/dist/esm/components/FolderTree/FilePreview.d.ts +0 -17
  348. package/dist/esm/components/FolderTree/FilePreview.js +0 -160
  349. package/dist/esm/components/FolderTree/FilePreview.js.map +0 -1
  350. package/dist/esm/components/FolderTree/index.d.ts +0 -5
  351. package/dist/esm/components/FolderTree/index.js +0 -278
  352. package/dist/esm/components/FolderTree/index.js.map +0 -1
  353. package/dist/esm/components/FolderTree/styles.d.ts +0 -49
  354. package/dist/esm/components/FolderTree/styles.js +0 -23
  355. package/dist/esm/components/FolderTree/styles.js.map +0 -1
  356. package/dist/esm/components/FolderTree/types.d.ts +0 -106
  357. package/dist/esm/components/FolderTree/types.js +0 -2
  358. package/dist/esm/components/FolderTree/types.js.map +0 -1
  359. package/dist/esm/components/XAdkChatbot/components/FunctionCallRender/index.d.ts +0 -4
  360. package/dist/esm/components/XAdkChatbot/components/FunctionCallRender/index.js +0 -208
  361. package/dist/esm/components/XAdkChatbot/components/FunctionCallRender/index.js.map +0 -1
  362. package/dist/esm/components/XAdkChatbot/components/FunctionCallRender/styles.d.ts +0 -41
  363. package/dist/esm/components/XAdkChatbot/components/FunctionCallRender/styles.js +0 -15
  364. package/dist/esm/components/XAdkChatbot/components/FunctionCallRender/styles.js.map +0 -1
  365. package/dist/esm/components/XAdkChatbot/components/MarkdownRender/index.d.ts +0 -10
  366. package/dist/esm/components/XAdkChatbot/components/MarkdownRender/index.js +0 -172
  367. package/dist/esm/components/XAdkChatbot/components/MarkdownRender/index.js.map +0 -1
  368. package/dist/esm/components/XAdkChatbot/components/MarkdownRender/styles.d.ts +0 -38
  369. package/dist/esm/components/XAdkChatbot/components/MarkdownRender/styles.js +0 -12
  370. package/dist/esm/components/XAdkChatbot/components/MarkdownRender/styles.js.map +0 -1
  371. package/dist/esm/components/XAdkChatbot/components/ThinkRender/index.d.ts +0 -8
  372. package/dist/esm/components/XAdkChatbot/components/ThinkRender/index.js +0 -42
  373. package/dist/esm/components/XAdkChatbot/components/ThinkRender/index.js.map +0 -1
  374. package/dist/esm/components/XAdkChatbot/index.d.ts +0 -14
  375. package/dist/esm/components/XAdkChatbot/index.js +0 -611
  376. package/dist/esm/components/XAdkChatbot/index.js.map +0 -1
  377. package/dist/esm/components/XAdkChatbot/styles.d.ts +0 -62
  378. package/dist/esm/components/XAdkChatbot/styles.js +0 -37
  379. package/dist/esm/components/XAdkChatbot/styles.js.map +0 -1
  380. package/dist/esm/components/XAdkProvider/compound/Chatbot.d.ts +0 -30
  381. package/dist/esm/components/XAdkProvider/compound/Chatbot.js +0 -47
  382. package/dist/esm/components/XAdkProvider/compound/Chatbot.js.map +0 -1
  383. package/dist/esm/components/XAdkProvider/compound/DefaultLayout.d.ts +0 -33
  384. package/dist/esm/components/XAdkProvider/compound/DefaultLayout.js +0 -190
  385. package/dist/esm/components/XAdkProvider/compound/DefaultLayout.js.map +0 -1
  386. package/dist/esm/components/XAdkProvider/compound/DislikeFeedBack.d.ts +0 -8
  387. package/dist/esm/components/XAdkProvider/compound/DislikeFeedBack.js +0 -122
  388. package/dist/esm/components/XAdkProvider/compound/DislikeFeedBack.js.map +0 -1
  389. package/dist/esm/components/XAdkProvider/compound/FeedbackTags.d.ts +0 -7
  390. package/dist/esm/components/XAdkProvider/compound/FeedbackTags.js +0 -34
  391. package/dist/esm/components/XAdkProvider/compound/FeedbackTags.js.map +0 -1
  392. package/dist/esm/components/XAdkProvider/compound/Header.d.ts +0 -25
  393. package/dist/esm/components/XAdkProvider/compound/Header.js +0 -79
  394. package/dist/esm/components/XAdkProvider/compound/Header.js.map +0 -1
  395. package/dist/esm/components/XAdkProvider/compound/Messages.d.ts +0 -26
  396. package/dist/esm/components/XAdkProvider/compound/Messages.js +0 -179
  397. package/dist/esm/components/XAdkProvider/compound/Messages.js.map +0 -1
  398. package/dist/esm/components/XAdkProvider/compound/Sender.d.ts +0 -27
  399. package/dist/esm/components/XAdkProvider/compound/Sender.js +0 -44
  400. package/dist/esm/components/XAdkProvider/compound/Sender.js.map +0 -1
  401. package/dist/esm/components/XAdkProvider/compound/Sidebar.d.ts +0 -24
  402. package/dist/esm/components/XAdkProvider/compound/Sidebar.js +0 -142
  403. package/dist/esm/components/XAdkProvider/compound/Sidebar.js.map +0 -1
  404. package/dist/esm/components/XAdkProvider/compound/Welcome.d.ts +0 -6
  405. package/dist/esm/components/XAdkProvider/compound/Welcome.js +0 -36
  406. package/dist/esm/components/XAdkProvider/compound/Welcome.js.map +0 -1
  407. package/dist/esm/components/XAdkProvider/compound/index.d.ts +0 -17
  408. package/dist/esm/components/XAdkProvider/compound/index.js +0 -13
  409. package/dist/esm/components/XAdkProvider/compound/index.js.map +0 -1
  410. package/dist/esm/components/XAdkProvider/compound/styles.d.ts +0 -37
  411. package/dist/esm/components/XAdkProvider/compound/styles.js +0 -11
  412. package/dist/esm/components/XAdkProvider/compound/styles.js.map +0 -1
  413. package/dist/esm/components/XAdkProvider/context/ChatActionContext.d.ts +0 -41
  414. package/dist/esm/components/XAdkProvider/context/ChatActionContext.js +0 -23
  415. package/dist/esm/components/XAdkProvider/context/ChatActionContext.js.map +0 -1
  416. package/dist/esm/components/XAdkProvider/context/ChatStateContext.d.ts +0 -44
  417. package/dist/esm/components/XAdkProvider/context/ChatStateContext.js +0 -23
  418. package/dist/esm/components/XAdkProvider/context/ChatStateContext.js.map +0 -1
  419. package/dist/esm/components/XAdkProvider/context/SessionContext.d.ts +0 -29
  420. package/dist/esm/components/XAdkProvider/context/SessionContext.js +0 -22
  421. package/dist/esm/components/XAdkProvider/context/SessionContext.js.map +0 -1
  422. package/dist/esm/components/XAdkProvider/context/index.d.ts +0 -7
  423. package/dist/esm/components/XAdkProvider/context/index.js +0 -9
  424. package/dist/esm/components/XAdkProvider/context/index.js.map +0 -1
  425. package/dist/esm/components/XAdkProvider/index.d.ts +0 -55
  426. package/dist/esm/components/XAdkProvider/index.js +0 -264
  427. package/dist/esm/components/XAdkProvider/index.js.map +0 -1
  428. package/dist/esm/components/XAdkProvider/styles.d.ts +0 -38
  429. package/dist/esm/components/XAdkProvider/styles.js +0 -13
  430. package/dist/esm/components/XAdkProvider/styles.js.map +0 -1
  431. package/dist/esm/components/XAdkSender/Switch.d.ts +0 -16
  432. package/dist/esm/components/XAdkSender/Switch.js +0 -53
  433. package/dist/esm/components/XAdkSender/Switch.js.map +0 -1
  434. package/dist/esm/components/XAdkSender/index.d.ts +0 -9
  435. package/dist/esm/components/XAdkSender/index.js +0 -677
  436. package/dist/esm/components/XAdkSender/index.js.map +0 -1
  437. package/dist/esm/components/XAdkSender/styles.d.ts +0 -47
  438. package/dist/esm/components/XAdkSender/styles.js +0 -33
  439. package/dist/esm/components/XAdkSender/styles.js.map +0 -1
  440. package/dist/esm/components/XAdkThoughtChain/index.d.ts +0 -4
  441. package/dist/esm/components/XAdkThoughtChain/index.js +0 -201
  442. package/dist/esm/components/XAdkThoughtChain/index.js.map +0 -1
  443. package/dist/esm/components/XAdkThoughtChain/styles.d.ts +0 -60
  444. package/dist/esm/components/XAdkThoughtChain/styles.js +0 -41
  445. package/dist/esm/components/XAdkThoughtChain/styles.js.map +0 -1
  446. package/dist/esm/components/XAiChatbot/index.d.ts +0 -10
  447. package/dist/esm/components/XAiChatbot/index.js +0 -588
  448. package/dist/esm/components/XAiChatbot/index.js.map +0 -1
  449. package/dist/esm/components/XAiChatbot/styles.d.ts +0 -68
  450. package/dist/esm/components/XAiChatbot/styles.js +0 -49
  451. package/dist/esm/components/XAiChatbot/styles.js.map +0 -1
  452. package/dist/esm/components/XAiConversations/index.d.ts +0 -4
  453. package/dist/esm/components/XAiConversations/index.js +0 -157
  454. package/dist/esm/components/XAiConversations/index.js.map +0 -1
  455. package/dist/esm/components/XAiConversations/styles.d.ts +0 -50
  456. package/dist/esm/components/XAiConversations/styles.js +0 -39
  457. package/dist/esm/components/XAiConversations/styles.js.map +0 -1
  458. package/dist/esm/components/XAiJsonView/index.d.ts +0 -8
  459. package/dist/esm/components/XAiJsonView/index.js +0 -44
  460. package/dist/esm/components/XAiJsonView/index.js.map +0 -1
  461. package/dist/esm/components/XAiJsonView/styles.d.ts +0 -39
  462. package/dist/esm/components/XAiJsonView/styles.js +0 -19
  463. package/dist/esm/components/XAiJsonView/styles.js.map +0 -1
  464. package/dist/esm/components/XAiProvider/demo.styles.d.ts +0 -37
  465. package/dist/esm/components/XAiProvider/demo.styles.js +0 -12
  466. package/dist/esm/components/XAiProvider/demo.styles.js.map +0 -1
  467. package/dist/esm/components/XAiProvider/index.d.ts +0 -4
  468. package/dist/esm/components/XAiProvider/index.js +0 -492
  469. package/dist/esm/components/XAiProvider/index.js.map +0 -1
  470. package/dist/esm/components/XAiSDK.d.ts +0 -10
  471. package/dist/esm/components/XAiSDK.js +0 -29
  472. package/dist/esm/components/XAiSDK.js.map +0 -1
  473. package/dist/esm/components/XAiSender/index.d.ts +0 -4
  474. package/dist/esm/components/XAiSender/index.js +0 -248
  475. package/dist/esm/components/XAiSender/index.js.map +0 -1
  476. package/dist/esm/components/XAiSender/styles.d.ts +0 -44
  477. package/dist/esm/components/XAiSender/styles.js +0 -19
  478. package/dist/esm/components/XAiSender/styles.js.map +0 -1
  479. package/dist/esm/constants/index.d.ts +0 -3
  480. package/dist/esm/constants/index.js +0 -9
  481. package/dist/esm/constants/index.js.map +0 -1
  482. package/dist/esm/context/AiProviderContext.d.ts +0 -15
  483. package/dist/esm/context/AiProviderContext.js +0 -63
  484. package/dist/esm/context/AiProviderContext.js.map +0 -1
  485. package/dist/esm/context/ThemeContext.d.ts +0 -20
  486. package/dist/esm/context/ThemeContext.js +0 -8
  487. package/dist/esm/context/ThemeContext.js.map +0 -1
  488. package/dist/esm/hooks/useADKChat.d.ts +0 -41
  489. package/dist/esm/hooks/useADKChat.js +0 -1373
  490. package/dist/esm/hooks/useADKChat.js.map +0 -1
  491. package/dist/esm/hooks/useAgentGenerator.d.ts +0 -94
  492. package/dist/esm/hooks/useAgentGenerator.js +0 -1240
  493. package/dist/esm/hooks/useAgentGenerator.js.map +0 -1
  494. package/dist/esm/hooks/useEventStreamRequest.d.ts +0 -30
  495. package/dist/esm/hooks/useEventStreamRequest.js +0 -232
  496. package/dist/esm/hooks/useEventStreamRequest.js.map +0 -1
  497. package/dist/esm/hooks/useProviderContext.d.ts +0 -34
  498. package/dist/esm/hooks/useProviderContext.js +0 -115
  499. package/dist/esm/hooks/useProviderContext.js.map +0 -1
  500. package/dist/esm/hooks/useXAiSDK.d.ts +0 -14
  501. package/dist/esm/hooks/useXAiSDK.js +0 -49
  502. package/dist/esm/hooks/useXAiSDK.js.map +0 -1
  503. package/dist/esm/index.d.ts +0 -30
  504. package/dist/esm/index.js +0 -42
  505. package/dist/esm/index.js.map +0 -1
  506. package/dist/esm/presets/xGroupAdk.d.ts +0 -20
  507. package/dist/esm/presets/xGroupAdk.js +0 -122
  508. package/dist/esm/presets/xGroupAdk.js.map +0 -1
  509. package/dist/esm/services/api.d.ts +0 -162
  510. package/dist/esm/services/api.js +0 -223
  511. package/dist/esm/services/api.js.map +0 -1
  512. package/dist/esm/styles/common.d.ts +0 -73
  513. package/dist/esm/styles/common.js +0 -113
  514. package/dist/esm/styles/common.js.map +0 -1
  515. package/dist/esm/styles/markdown.d.ts +0 -3
  516. package/dist/esm/styles/markdown.js +0 -12
  517. package/dist/esm/styles/markdown.js.map +0 -1
  518. package/dist/esm/types/ChatHook.d.ts +0 -92
  519. package/dist/esm/types/ChatHook.js +0 -2
  520. package/dist/esm/types/ChatHook.js.map +0 -1
  521. package/dist/esm/types/ChatStrategies.d.ts +0 -45
  522. package/dist/esm/types/ChatStrategies.js +0 -2
  523. package/dist/esm/types/ChatStrategies.js.map +0 -1
  524. package/dist/esm/types/FileGallery.d.ts +0 -36
  525. package/dist/esm/types/FileGallery.js +0 -2
  526. package/dist/esm/types/FileGallery.js.map +0 -1
  527. package/dist/esm/types/FunctionCallRender.d.ts +0 -35
  528. package/dist/esm/types/FunctionCallRender.js +0 -14
  529. package/dist/esm/types/FunctionCallRender.js.map +0 -1
  530. package/dist/esm/types/XAdkChatbot.d.ts +0 -348
  531. package/dist/esm/types/XAdkChatbot.js +0 -2
  532. package/dist/esm/types/XAdkChatbot.js.map +0 -1
  533. package/dist/esm/types/XAdkProvider.d.ts +0 -224
  534. package/dist/esm/types/XAdkProvider.js +0 -33
  535. package/dist/esm/types/XAdkProvider.js.map +0 -1
  536. package/dist/esm/types/XAdkSender.d.ts +0 -114
  537. package/dist/esm/types/XAdkSender.js +0 -2
  538. package/dist/esm/types/XAdkSender.js.map +0 -1
  539. package/dist/esm/types/XAdkThoughtChain.d.ts +0 -35
  540. package/dist/esm/types/XAdkThoughtChain.js +0 -2
  541. package/dist/esm/types/XAdkThoughtChain.js.map +0 -1
  542. package/dist/esm/types/XAiChatbot.d.ts +0 -158
  543. package/dist/esm/types/XAiChatbot.js +0 -2
  544. package/dist/esm/types/XAiChatbot.js.map +0 -1
  545. package/dist/esm/types/XAiConversations.d.ts +0 -22
  546. package/dist/esm/types/XAiConversations.js +0 -2
  547. package/dist/esm/types/XAiConversations.js.map +0 -1
  548. package/dist/esm/types/XAiMessage.d.ts +0 -126
  549. package/dist/esm/types/XAiMessage.js +0 -65
  550. package/dist/esm/types/XAiMessage.js.map +0 -1
  551. package/dist/esm/types/XAiProvider.d.ts +0 -315
  552. package/dist/esm/types/XAiProvider.js +0 -106
  553. package/dist/esm/types/XAiProvider.js.map +0 -1
  554. package/dist/esm/types/XAiSender.d.ts +0 -29
  555. package/dist/esm/types/XAiSender.js +0 -2
  556. package/dist/esm/types/XAiSender.js.map +0 -1
  557. package/dist/esm/types/common.d.ts +0 -6
  558. package/dist/esm/types/common.js +0 -2
  559. package/dist/esm/types/common.js.map +0 -1
  560. package/dist/esm/types/index.d.ts +0 -13
  561. package/dist/esm/types/index.js +0 -14
  562. package/dist/esm/types/index.js.map +0 -1
  563. package/dist/esm/types/mdx.d.ts +0 -23
  564. package/dist/esm/types/node.d.ts +0 -10
  565. package/dist/esm/types/node.js +0 -2
  566. package/dist/esm/types/node.js.map +0 -1
  567. package/dist/esm/utils/chat.d.ts +0 -34
  568. package/dist/esm/utils/chat.js +0 -976
  569. package/dist/esm/utils/chat.js.map +0 -1
  570. package/dist/esm/utils/file.d.ts +0 -2
  571. package/dist/esm/utils/file.js +0 -10
  572. package/dist/esm/utils/file.js.map +0 -1
  573. package/dist/esm/utils/index.d.ts +0 -4
  574. package/dist/esm/utils/index.js +0 -26
  575. package/dist/esm/utils/index.js.map +0 -1
  576. package/dist/esm/utils/parseAgentMessage.d.ts +0 -81
  577. package/dist/esm/utils/parseAgentMessage.js +0 -286
  578. package/dist/esm/utils/parseAgentMessage.js.map +0 -1
  579. package/dist/esm/utils/providerManager.d.ts +0 -23
  580. package/dist/esm/utils/providerManager.js +0 -70
  581. package/dist/esm/utils/providerManager.js.map +0 -1
  582. package/dist/esm/utils/request.d.ts +0 -78
  583. package/dist/esm/utils/request.example.d.ts +0 -39
  584. package/dist/esm/utils/request.example.js +0 -379
  585. package/dist/esm/utils/request.example.js.map +0 -1
  586. package/dist/esm/utils/request.js +0 -491
  587. package/dist/esm/utils/request.js.map +0 -1
  588. package/dist/esm/utils/umdEntry.d.ts +0 -170
  589. package/dist/esm/utils/umdEntry.js +0 -439
  590. package/dist/esm/utils/umdEntry.js.map +0 -1
  591. package/dist/esm/utils/workflowNode.d.ts +0 -2
  592. package/dist/esm/utils/workflowNode.js +0 -141
  593. package/dist/esm/utils/workflowNode.js.map +0 -1
  594. package/dist/umd/chat-sdk.min.css +0 -1
  595. package/dist/umd/chat-sdk.min.js +0 -1
  596. package/dist/umd/static/KaTeX_AMS-Regular.1608a09b.woff +0 -0
  597. package/dist/umd/static/KaTeX_AMS-Regular.4aafdb68.ttf +0 -0
  598. package/dist/umd/static/KaTeX_AMS-Regular.a79f1c31.woff2 +0 -0
  599. package/dist/umd/static/KaTeX_Caligraphic-Bold.b6770918.woff +0 -0
  600. package/dist/umd/static/KaTeX_Caligraphic-Bold.cce5b8ec.ttf +0 -0
  601. package/dist/umd/static/KaTeX_Caligraphic-Bold.ec17d132.woff2 +0 -0
  602. package/dist/umd/static/KaTeX_Caligraphic-Regular.07ef19e7.ttf +0 -0
  603. package/dist/umd/static/KaTeX_Caligraphic-Regular.55fac258.woff2 +0 -0
  604. package/dist/umd/static/KaTeX_Caligraphic-Regular.dad44a7f.woff +0 -0
  605. package/dist/umd/static/KaTeX_Fraktur-Bold.9f256b85.woff +0 -0
  606. package/dist/umd/static/KaTeX_Fraktur-Bold.b18f59e1.ttf +0 -0
  607. package/dist/umd/static/KaTeX_Fraktur-Bold.d42a5579.woff2 +0 -0
  608. package/dist/umd/static/KaTeX_Fraktur-Regular.7c187121.woff +0 -0
  609. package/dist/umd/static/KaTeX_Fraktur-Regular.d3c882a6.woff2 +0 -0
  610. package/dist/umd/static/KaTeX_Fraktur-Regular.ed38e79f.ttf +0 -0
  611. package/dist/umd/static/KaTeX_Main-Bold.b74a1a8b.ttf +0 -0
  612. package/dist/umd/static/KaTeX_Main-Bold.c3fb5ac2.woff2 +0 -0
  613. package/dist/umd/static/KaTeX_Main-Bold.d181c465.woff +0 -0
  614. package/dist/umd/static/KaTeX_Main-BoldItalic.6f2bb1df.woff2 +0 -0
  615. package/dist/umd/static/KaTeX_Main-BoldItalic.70d8b0a5.ttf +0 -0
  616. package/dist/umd/static/KaTeX_Main-BoldItalic.e3f82f9d.woff +0 -0
  617. package/dist/umd/static/KaTeX_Main-Italic.47373d1e.ttf +0 -0
  618. package/dist/umd/static/KaTeX_Main-Italic.8916142b.woff2 +0 -0
  619. package/dist/umd/static/KaTeX_Main-Italic.9024d815.woff +0 -0
  620. package/dist/umd/static/KaTeX_Main-Regular.0462f03b.woff2 +0 -0
  621. package/dist/umd/static/KaTeX_Main-Regular.7f51fe03.woff +0 -0
  622. package/dist/umd/static/KaTeX_Main-Regular.b7f8fe9b.ttf +0 -0
  623. package/dist/umd/static/KaTeX_Math-BoldItalic.572d331f.woff2 +0 -0
  624. package/dist/umd/static/KaTeX_Math-BoldItalic.a879cf83.ttf +0 -0
  625. package/dist/umd/static/KaTeX_Math-BoldItalic.f1035d8d.woff +0 -0
  626. package/dist/umd/static/KaTeX_Math-Italic.5295ba48.woff +0 -0
  627. package/dist/umd/static/KaTeX_Math-Italic.939bc644.ttf +0 -0
  628. package/dist/umd/static/KaTeX_Math-Italic.f28c23ac.woff2 +0 -0
  629. package/dist/umd/static/KaTeX_SansSerif-Bold.8c5b5494.woff2 +0 -0
  630. package/dist/umd/static/KaTeX_SansSerif-Bold.94e1e8dc.ttf +0 -0
  631. package/dist/umd/static/KaTeX_SansSerif-Bold.bf59d231.woff +0 -0
  632. package/dist/umd/static/KaTeX_SansSerif-Italic.3b1e59b3.woff2 +0 -0
  633. package/dist/umd/static/KaTeX_SansSerif-Italic.7c9bc82b.woff +0 -0
  634. package/dist/umd/static/KaTeX_SansSerif-Italic.b4c20c84.ttf +0 -0
  635. package/dist/umd/static/KaTeX_SansSerif-Regular.74048478.woff +0 -0
  636. package/dist/umd/static/KaTeX_SansSerif-Regular.ba21ed5f.woff2 +0 -0
  637. package/dist/umd/static/KaTeX_SansSerif-Regular.d4d7ba48.ttf +0 -0
  638. package/dist/umd/static/KaTeX_Script-Regular.03e9641d.woff2 +0 -0
  639. package/dist/umd/static/KaTeX_Script-Regular.07505710.woff +0 -0
  640. package/dist/umd/static/KaTeX_Script-Regular.fe9cbbe1.ttf +0 -0
  641. package/dist/umd/static/KaTeX_Size1-Regular.e1e279cb.woff +0 -0
  642. package/dist/umd/static/KaTeX_Size1-Regular.eae34984.woff2 +0 -0
  643. package/dist/umd/static/KaTeX_Size1-Regular.fabc004a.ttf +0 -0
  644. package/dist/umd/static/KaTeX_Size2-Regular.57727022.woff +0 -0
  645. package/dist/umd/static/KaTeX_Size2-Regular.5916a24f.woff2 +0 -0
  646. package/dist/umd/static/KaTeX_Size2-Regular.d6b476ec.ttf +0 -0
  647. package/dist/umd/static/KaTeX_Size3-Regular.9acaf01c.woff +0 -0
  648. package/dist/umd/static/KaTeX_Size3-Regular.a144ef58.ttf +0 -0
  649. package/dist/umd/static/KaTeX_Size3-Regular.b4230e7e.woff2 +0 -0
  650. package/dist/umd/static/KaTeX_Size4-Regular.10d95fd3.woff2 +0 -0
  651. package/dist/umd/static/KaTeX_Size4-Regular.7a996c9d.woff +0 -0
  652. package/dist/umd/static/KaTeX_Size4-Regular.fbccdabe.ttf +0 -0
  653. package/dist/umd/static/KaTeX_Typewriter-Regular.6258592b.woff +0 -0
  654. package/dist/umd/static/KaTeX_Typewriter-Regular.a8709e36.woff2 +0 -0
  655. package/dist/umd/static/KaTeX_Typewriter-Regular.d97aaf4a.ttf +0 -0
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/hooks/useAgentGenerator.ts"],
4
- "sourcesContent": ["/* eslint-disable no-use-before-define */\n/* eslint-disable class-methods-use-this */\nimport { useState, useEffect, useMemo, useCallback, useRef } from 'react';\nimport { v4 as uuidV4 } from 'uuid';\nimport { useEventStreamRequest } from '@/hooks/useEventStreamRequest';\nimport { MessageRole, MessageStatus, TextMessage, SuggestionMessage, Messages } from '@/types/XAiMessage';\nimport { type Error, ErrorCode, type SendContent, type Success, SuccessCode, type SessionData } from '@/types';\nimport { request } from '@/utils/request';\nimport { safeJsonParse } from '@/utils/index';\nimport { SESSION_PAGE_SIZE, API_SUCCESS_CODE } from '@/constants';\nimport { fetchAppConfig, fetchSessionList, fetchSessionDetail, closeSession, updateSessionTitle } from '@/services/api';\nimport { getNodeTemplate } from '@/utils/workflowNode';\n// 图标导入\nimport documentIcon from '@/assets/document.png';\nimport completedIcon from '@/assets/completed.png';\nimport completedExpandIcon from '@/assets/completed-black.png';\nimport documentExpandIcon from '@/assets/document-black.png';\nimport qaIcon from '@/assets/qa.png';\nimport qaExpandIcon from '@/assets/qa-black.png';\nimport skillNoIcon from '@/assets/skillNo.png';\nimport skillNoExpandIcon from '@/assets/skillNo-black.png';\nimport toolIcon from '@/assets/tools.png';\nimport toolExpandIcon from '@/assets/tools-black.png';\n\n// ==================== 类型定义 ====================\nexport type ContentType = 'TEXT' | 'IMAGE' | 'FILE' | 'JSON';\n\nexport interface ImageUrl {\n url: string;\n name: string;\n}\n\nexport interface FileUrl {\n url: string;\n fileName: string;\n suffix: string;\n}\n\nexport interface Content {\n text?: string;\n imageUrl?: ImageUrl;\n fileUrl?: FileUrl;\n}\n\nexport interface ContentDef {\n description: string;\n contentType: ContentType;\n content: Content;\n}\n\nexport type Contents = ContentDef[];\n\nexport enum ActionType {\n recallKnowledgeStart = 'RECALL_KNOWLEDGE_START',\n recallKnowledgeEnd = 'RECALL_KNOWLEDGE_END',\n invokeToolStart = 'INVOKE_AGENT_TOOL_START',\n invokeToolEnd = 'INVOKE_AGENT_TOOL_END',\n reasoning = 'REASONING',\n reasoningStart = 'REASONING_START',\n reasoningEnd = 'REASONING_END',\n componentStart = 'COMPONENT_START',\n componentStream = 'COMPONENT_STREAM',\n componentEnd = 'COMPONENT_END',\n suggest = 'FOLLOW_UP',\n response = 'RESPONSE',\n finish = 'FINISHED',\n}\n\nexport enum ProcessStatus {\n start = 'START',\n end = 'END',\n}\n\nexport enum ActionAvailability {\n disabled = 'disabled',\n enabled = 'enabled',\n remote = 'remote',\n}\n\nexport type ThinkStep = any;\n\nexport interface Action {\n name: string;\n description: string;\n jsonSchema: string;\n available?: ActionAvailability;\n}\n\nexport interface BaseFields {\n textSpeed?: number;\n onChatDone?: () => void;\n}\n\nexport interface UseAgentGeneratorProps {\n url: string;\n token: string;\n config: any;\n textSpeed?: number;\n onError?: (error: Error) => void;\n onSuccess?: (data: Success) => void;\n onMessage?: (content: string, data: Messages) => void;\n}\n\n// ==================== 消息处理器 ====================\nclass MessageProcessor {\n private textSpeed: number;\n\n constructor(textSpeed = 60) {\n this.textSpeed = textSpeed;\n }\n\n // 获取知识图标\n private getKnowledgeIcons(knowledgeType: string) {\n return knowledgeType === 'DOCUMENT'\n ? { icon: documentIcon, expandIcon: documentExpandIcon }\n : { icon: qaIcon, expandIcon: qaExpandIcon };\n }\n\n // 获取工具图标\n private getToolIcons(toolType: string) {\n return toolType === 'SKILL'\n ? { icon: skillNoIcon, expandIcon: skillNoExpandIcon }\n : { icon: toolIcon, expandIcon: toolExpandIcon };\n }\n\n // 获取工作流图标(暂时不做区分)\n private getWorkflowIcon() {\n return { icon: skillNoIcon, expandIcon: skillNoExpandIcon };\n }\n\n // 更新工具执行事件\n private updateExecution(\n messages: Messages[],\n messageIndex: number,\n uniqueId: string,\n cost: number,\n name?: string,\n ) {\n const msg = messages[messageIndex] as TextMessage;\n if (msg?.execute) {\n const execution = msg.execute.find((item) => item.id === uniqueId);\n if (execution) {\n execution.extra.cost = cost ? (cost / 1000).toFixed(2) : 0;\n if (name) execution.name = name;\n }\n }\n }\n\n // 查找最后一个待处理的AI消息\n private findLastPendingAIMessage(messages: Messages[]): [number, TextMessage | null] {\n for (let i = messages.length - 1; i >= 0; i--) {\n const msg = messages[i];\n if (msg.role === MessageRole.assistant\n && msg.type === 'TextMessage'\n && (msg.status === 'init' || msg.status === 'pending')) {\n return [i, msg as TextMessage];\n }\n }\n return [-1, null];\n }\n\n // 创建新的AI消息\n private createNewAIMessage(): TextMessage {\n return {\n id: uuidV4(),\n type: 'TextMessage',\n createdAt: new Date(),\n role: MessageRole.assistant,\n content: { text: '' },\n execute: [],\n thinks: '',\n status: MessageStatus.init,\n };\n }\n\n // 确保存在待处理的AI消息\n private ensureAIMessageExists(messages: Messages[]): [Messages[], number, TextMessage] {\n const [index, existingMsg] = this.findLastPendingAIMessage(messages);\n\n if (index !== -1 && existingMsg) {\n return [[...messages], index, { ...existingMsg }];\n }\n\n const newMessage = this.createNewAIMessage();\n const newMessages = [...messages, newMessage];\n return [newMessages, newMessages.length - 1, newMessage];\n }\n\n // 处理建议\n handleSuggestion(messages: Messages[], data: any): Messages[] {\n const { content } = data;\n const newMessages = [...messages];\n const suggestIndex = newMessages.findIndex((item) => item.type === 'SuggestionMessage');\n\n if (suggestIndex === -1) {\n const newSuggestion: SuggestionMessage = {\n id: uuidV4(),\n type: 'SuggestionMessage',\n createdAt: new Date(),\n status: MessageStatus.done,\n role: MessageRole.suggestion,\n content: [{ key: uuidV4(), description: content }],\n };\n newMessages.push(newSuggestion);\n } else {\n const suggestion = newMessages[suggestIndex] as SuggestionMessage;\n suggestion?.content?.push({\n key: uuidV4(),\n description: content,\n });\n }\n\n return newMessages;\n }\n\n // 处理思考过程\n handleReasoning(messages: Messages[], data: any): Messages[] {\n const { content } = data;\n const [newMessages, index, aiMsg] = this.ensureAIMessageExists(messages);\n\n // 确保消息状态正确\n const updatedMsg: Messages = {\n ...aiMsg,\n thinks: (aiMsg.thinks || '') + content,\n status: aiMsg.status === MessageStatus.init ? MessageStatus.pending : aiMsg.status,\n };\n\n const updatedMessages = [...newMessages];\n updatedMessages[index] = updatedMsg;\n\n return updatedMessages;\n }\n\n // 处理思考过程结束\n handleReasoningEnd(messages: Messages[]): Messages[] {\n const [newMessages, index, aiMsg] = this.ensureAIMessageExists(messages);\n\n // 确保消息状态正确\n const updatedMsg: Messages = {\n ...aiMsg,\n thinks: `${aiMsg.thinks || ''}\\n`,\n status: aiMsg.status === MessageStatus.init ? MessageStatus.pending : aiMsg.status,\n };\n\n const updatedMessages = [...newMessages];\n updatedMessages[index] = updatedMsg;\n\n return updatedMessages;\n }\n\n // 处理知识库调用开始\n handleRecallKnowledgeStart(messages: Messages[], data: any): Messages[] {\n const [newMessages, index, aiMsg] = this.ensureAIMessageExists(messages);\n const { uniqueId = uuidV4() } = data || {};\n const { args } = data?.data || {};\n\n aiMsg.execute = aiMsg.execute || [];\n\n aiMsg.execute.push({\n id: uniqueId,\n createdAt: new Date(),\n type: 'ActionExecutionMessage',\n name: '开始搜索知识库',\n arguments: args,\n extra: {\n ...data,\n icon: documentIcon,\n expandIcon: documentExpandIcon,\n },\n });\n\n newMessages[index] = aiMsg;\n return newMessages;\n }\n\n // 处理知识库调用结束\n handleRecallKnowledgeEnd(messages: Messages[], data: any): Messages[] {\n const [index, _aiMsg] = this.findLastPendingAIMessage(messages);\n if (index === -1) return messages;\n const { uniqueId = uuidV4(), cost } = data || {};\n\n const newMessages = [...messages];\n this.updateExecution(newMessages, index, uniqueId, cost, '已搜索知识库');\n return newMessages;\n }\n\n // 处理工具调用开始\n handleInvokeToolStart(messages: Messages[], data: any): Messages[] {\n const [newMessages, index, aiMsg] = this.ensureAIMessageExists(messages);\n const { uniqueId = uuidV4() } = data || {};\n const { args, toolType } = data?.data || {};\n\n aiMsg.execute = aiMsg.execute || [];\n const icons = this.getToolIcons(toolType);\n\n aiMsg.execute.push({\n id: uniqueId,\n createdAt: new Date(),\n type: 'ActionExecutionMessage',\n name: toolType === 'SKILL' ? '已调用工作流' : '已调用工具',\n arguments: args,\n extra: {\n ...data,\n ...icons,\n },\n });\n\n newMessages[index] = aiMsg;\n return newMessages;\n }\n\n // 处理工具调用结束\n handleInvokeToolEnd(messages: Messages[], data: any): Messages[] {\n const [index, _aiMsg] = this.findLastPendingAIMessage(messages);\n const { uniqueId = uuidV4() } = data || {};\n const { toolType } = data?.data || {};\n if (index === -1) return messages;\n\n const newMessages = [...messages];\n this.updateExecution(newMessages, index, uniqueId, data.cost, toolType === 'SKILL' ? '已调用工作流组件' : '已调用工具');\n return newMessages;\n }\n\n // 处理工作流组件开始\n handleComponentStart(messages: Messages[], data: any): Messages[] {\n const [newMessages, index, aiMsg] = this.ensureAIMessageExists(messages);\n const { content } = data || {};\n const { nodeId, args, componentType } = content || {};\n const { name } = getNodeTemplate(componentType);\n aiMsg?.execute?.push({\n id: nodeId || uuidV4(),\n createdAt: new Date(),\n type: 'ActionExecutionMessage',\n name: name ? `开始调用${name}组件` : '开始调用工作流组件',\n arguments: args,\n extra: {\n ...data,\n ...this.getWorkflowIcon(),\n },\n });\n\n newMessages[index] = aiMsg;\n return newMessages;\n }\n\n // 处理工作流组件流消息\n handleComponentStream(messages: Messages[], data: any): Messages[] {\n const [newMessages, index, aiMsg] = this.ensureAIMessageExists(messages);\n const { nodeId = uuidV4, content } = data || {};\n const { processData } = content || {};\n aiMsg.raw = data.raw;\n aiMsg.stepContent = aiMsg.stepContent || [];\n aiMsg.stepContent.push({\n id: nodeId,\n content: processData,\n });\n\n // 消息状态改为接收中\n if (aiMsg.status === MessageStatus.init) {\n aiMsg.status = MessageStatus.pending;\n }\n\n newMessages[index] = aiMsg;\n return newMessages;\n }\n\n // 处理工作流组件结束\n handleComponentEnd(messages: Messages[], data: any): Messages[] {\n const [index, _aiMsg] = this.findLastPendingAIMessage(messages);\n const { content } = data || {};\n const { nodeId, componentType } = content || {};\n const { name } = getNodeTemplate(componentType);\n if (index === -1) return messages;\n const newMessages = [...messages];\n this.updateExecution(newMessages, index, nodeId, data.cost, name ? `已调用完成${name}组件` : '已调用工作流组件');\n return newMessages;\n }\n\n // 处理响应正文\n handleResponse(messages: Messages[], data: any): Messages[] {\n const [newMessages, index, aiMsg] = this.ensureAIMessageExists(messages);\n const { contentType, content, success, errorMsg } = data;\n if (success) {\n aiMsg.raw = data.raw;\n // 消息状态改为接收中\n if (aiMsg.status === MessageStatus.init) {\n aiMsg.status = MessageStatus.pending;\n }\n // 文本类型数据\n if (contentType === 'TEXT' && 'text' in aiMsg.content) {\n aiMsg.content.text += content;\n }\n\n // JSON 格式数据\n if (contentType === 'JSON') {\n aiMsg.content.text += JSON.stringify(content);\n }\n } else {\n aiMsg.status = MessageStatus.failed;\n aiMsg.content.text = `<span style=\"color: red;\">❌ ${errorMsg}</span>`;\n }\n\n newMessages[index] = aiMsg;\n return newMessages;\n }\n\n // 处理完成\n handleFinish(messages: Messages[], data: any): Messages[] {\n const [index, _aiMsg] = this.findLastPendingAIMessage(messages);\n const { data: { uniqueId = uuidV4() } = {}, cost, needExecuteDetail } = data || {};\n if (index === -1) return messages;\n\n const newMessages = [...messages];\n const msg = newMessages[index] as TextMessage;\n if (needExecuteDetail) {\n msg.execute = msg.execute || [];\n msg.execute.push({\n id: uniqueId || uuidV4(),\n createdAt: new Date(),\n type: 'ActionExecutionMessage',\n name: '运行完毕',\n extra: {\n ...data,\n cost: cost ? (cost / 1000).toFixed(2) : 0,\n icon: completedIcon,\n expandIcon: completedExpandIcon,\n },\n });\n }\n\n msg.status = MessageStatus.done;\n return newMessages;\n }\n\n // 处理响应数据\n processResponse(messages: Messages[], responseData: any): Messages[] {\n if (!responseData?.data?.outputs) return messages;\n let response = responseData.data.outputs;\n if (typeof response === 'string') {\n response = safeJsonParse(response, {\n action: ActionType.response,\n data: {\n contentType: 'TEXT',\n content: '解析响应数据时出错,请重试',\n success: false,\n errorMsg: '响应数据格式错误',\n },\n });\n }\n\n const { action, data = {} } = response;\n\n switch (action) {\n case ActionType.suggest:\n return this.handleSuggestion(messages, data);\n\n case ActionType.reasoning:\n return this.handleReasoning(messages, data);\n\n case ActionType.reasoningEnd:\n return this.handleReasoningEnd(messages);\n\n case ActionType.componentStart:\n return this.handleComponentStart(messages, data);\n\n case ActionType.componentStream:\n return this.handleComponentStream(messages, data);\n\n case ActionType.componentEnd:\n return this.handleComponentEnd(messages, data);\n\n case ActionType.recallKnowledgeStart:\n return this.handleRecallKnowledgeStart(messages, data);\n\n case ActionType.recallKnowledgeEnd:\n return this.handleRecallKnowledgeEnd(messages, data);\n\n case ActionType.invokeToolStart:\n return this.handleInvokeToolStart(messages, data);\n\n case ActionType.invokeToolEnd:\n return this.handleInvokeToolEnd(messages, data);\n\n case ActionType.response:\n return this.handleResponse(messages, data);\n\n case ActionType.finish:\n return this.handleFinish(messages, data);\n\n default:\n return messages;\n }\n }\n}\n\nconst useAgentGenerator = (params: UseAgentGeneratorProps) => {\n const {\n url,\n token,\n config,\n onError,\n onMessage,\n onSuccess,\n textSpeed = 55,\n ...rest\n } = params;\n\n // 聊天记录\n const [messages, setMessages] = useState<Messages[]>([]);\n // 聊天记录分页设置\n // const [messagePagination, setMessagePagination] = useState({ total: 0, pageNum: 1, pageSize: 999 });\n // 会话记录\n const [sessionList, setSessionList] = useState<SessionData[]>([]);\n // 会话请求是否加载中\n // const [sessionLoading, setSessionLoading] = useState<boolean>(false);\n // 会话分页设置\n const [sessionPagination, setSessionPagination] = useState({ total: 0, pageNum: 1, pageSize: SESSION_PAGE_SIZE });\n // 当前会话\n const [currentSessionId, setCurrentSessionId] = useState<string>('');\n // 应用 配置\n const [appInfo, setAppInfo] = useState<any>(null);\n // 请求 配置\n const requestInfo = useRef<{ requestId?: string; sensitiveWords?: string[] }>({});\n\n const { appNo } = config || {};\n\n // 消息处理器\n const messageProcessor = useMemo(() => new MessageProcessor(textSpeed), [textSpeed]);\n\n // 初始化时获取配置\n useEffect(() => {\n if (url && config) {\n const initConfig = async () => {\n try {\n const { data, result } = await fetchAppConfig({ url, ...config });\n if (result.code === API_SUCCESS_CODE) {\n setAppInfo(data);\n\n // 成功回调\n onSuccess?.({\n code: SuccessCode.APP_CONFIG_INIT_SUCCESS,\n message: '初始化配置成功',\n });\n } else {\n onError?.({\n code: (result.code as ErrorCode) || ErrorCode.APP_NOT_FOUND,\n message: result.message || '获取应用配置失败',\n });\n }\n } catch (error) {\n onError?.({\n code: ErrorCode.API_ERROR,\n message: '获取应用配置失败',\n });\n }\n };\n initConfig();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [url, config]);\n\n const { start, loading, responseData, stop } = useEventStreamRequest({\n streaming: true,\n textSpeed,\n onClose: () => {\n // close的时机有可能在setMessages之前,所以需要延迟一下\n setTimeout(() => {\n if (requestInfo.current?.sensitiveWords && requestInfo.current?.requestId) {\n request.post(url);\n }\n }, 500);\n },\n onOpen(res) {\n console.log('res-----open:', res);\n },\n });\n\n // 数据流处理\n useEffect(() => {\n if (!responseData) return;\n\n setMessages((prev) => messageProcessor.processResponse(prev, responseData));\n }, [responseData, messageProcessor]);\n\n // 添加对话(非交互触发)\n const setMessage = useCallback(async (messageType: string, content: any) => {\n switch (messageType) {\n case 'prologue': {\n setMessages((prev) => {\n const prologueIndex = prev.findIndex((item) => item.extra?.prologue);\n\n if (prologueIndex === -1) {\n const newMessage: TextMessage = {\n type: 'TextMessage',\n id: uuidV4(),\n createdAt: new Date(),\n role: MessageRole.assistant,\n status: MessageStatus.done,\n content: { text: content },\n extra: { prologue: true, noFooter: true },\n };\n return [newMessage, ...prev];\n }\n\n return prev.map((item) => (item.extra?.prologue && item.content && 'text' in item.content\n ? { ...item, content: { text: content } } as any\n : item));\n });\n break;\n }\n\n case 'suggest': {\n setMessages((prev) => {\n const suggestIndex = prev.findIndex((item) => item.type === 'SuggestionMessage');\n const prologueIndex = prev.findIndex((item) => item.extra?.prologue);\n\n const newSuggestion: SuggestionMessage = {\n id: uuidV4(),\n type: 'SuggestionMessage',\n createdAt: new Date(),\n status: MessageStatus.done,\n role: MessageRole.suggestion,\n content,\n };\n\n if (suggestIndex === -1) {\n const newMessages = [...prev];\n const insertIndex = prologueIndex === -1 ? 0 : prologueIndex + 1;\n newMessages.splice(insertIndex, 0, newSuggestion);\n return newMessages;\n }\n\n return prev.map((item) => (item.type === 'SuggestionMessage'\n ? { ...item, content }\n : item));\n });\n break;\n }\n\n default:\n console.warn(`Unknown message type: ${messageType}`);\n }\n }, []);\n\n // 简单对话\n const chat = useCallback(async (content: SendContent, extra?: any, insert = true) => {\n if (insert) {\n const newMessage: TextMessage = {\n type: 'TextMessage',\n id: uuidV4(),\n createdAt: new Date(),\n role: MessageRole.user,\n status: MessageStatus.done,\n extra,\n content,\n };\n\n setMessages((prev) => {\n const newMessages = prev.filter((item) => item.type !== 'SuggestionMessage');\n newMessages.push(newMessage);\n return newMessages;\n });\n }\n\n const requestBody: any = {\n appParams: {\n inputs_msg: content.text,\n },\n sessionId: currentSessionId,\n };\n\n start(\n `${url}/api/gateway-web/openApi/v1/aizt/app/${appNo}/sendMsgStreaming`,\n requestBody,\n {\n Authorization: `Bearer ${token}`,\n },\n );\n }, [appNo, currentSessionId, start, token, url]);\n\n // 重新生成方法\n const reChat = useCallback(() => {\n setMessages((prev) => {\n const newMessages = [...prev];\n\n // 删除最新 AI 消息\n const lastAIIndex = newMessages?.findLastIndex(\n (m) => m.role === MessageRole.assistant && m.type === 'TextMessage'\n );\n if (lastAIIndex !== -1) {\n newMessages.splice(lastAIIndex, 1);\n }\n\n // 删除建议消息\n const suggestIndex = newMessages.findIndex((item) => item.type === 'SuggestionMessage');\n if (suggestIndex !== -1) {\n newMessages.splice(suggestIndex, 1);\n }\n\n // 找到最后一条用户消息重新发送\n const lastUserMsg = newMessages.findLast(\n (m) => m.role === MessageRole.user && m.type === 'TextMessage',\n ) as TextMessage | undefined;\n\n if (lastUserMsg?.content?.text) {\n setTimeout(() => {\n chat(lastUserMsg.content, lastUserMsg.extra, false);\n }, 0);\n }\n\n return newMessages;\n });\n }, [chat]);\n\n // 停止对话\n const stopChat = () => {\n stop();\n setMessages((prev) => prev.map((m) => {\n // 所有进行中的消息变更为结束\n if (m.status === MessageStatus.pending || m.status === MessageStatus.init) {\n const newMsg = { ...m, status: MessageStatus.done };\n if (m.type === 'TextMessage' && m.status === MessageStatus.init) {\n (newMsg as TextMessage).content.text = '<span style=\"color: #cbcbcb;\">用户已取消</span>';\n }\n return newMsg;\n }\n return m;\n }));\n };\n\n // 初始化历史记录\n const formatMessages = (data: any, init = false) => {\n setMessages((prev) => {\n const initMessagesList: Messages[] = [];\n data.forEach((item: any) => {\n const { content, messageTime, role } = item || {};\n\n if (role === 'USER') {\n const newMessage: Messages = {\n type: 'TextMessage',\n id: uuidV4(),\n createdAt: messageTime,\n role: MessageRole.user,\n status: MessageStatus.done,\n content: {\n text: content,\n },\n };\n\n initMessagesList.push(newMessage);\n } else if (role === 'AI') {\n const newMessage: TextMessage = {\n id: uuidV4(),\n type: 'TextMessage',\n createdAt: messageTime,\n role: MessageRole.assistant,\n content: { text: content },\n execute: [],\n status: MessageStatus.done,\n isLike: item.isLike,\n raw: item.raw,\n };\n\n initMessagesList.push(newMessage);\n }\n });\n\n if (init) {\n return [...initMessagesList];\n }\n return [...prev, ...initMessagesList];\n });\n };\n\n // 初始化开场白\n const initPrologue = async () => {\n const { onboardingInfo = {} } = appInfo;\n // eslint-disable-next-line camelcase\n const { suggested_questions = [], prologue = '' } = onboardingInfo || {};\n\n // 初始化开场白\n if (prologue) {\n setMessage('prologue', prologue);\n } else {\n setMessages((prev) => prev.filter((item) => !item.extra?.prologue));\n }\n\n // 过滤空内容\n const formatSuggests = suggested_questions.filter((item: string) => item);\n\n if (formatSuggests.length > 0) {\n const suggestMessages = formatSuggests.map((item: string, index: number) => ({\n key: index + 1,\n description: item,\n }));\n // 页面为空时展示开场白预设问题\n const hasMessages = messages.some((item) => (!item.extra?.prologue && item.type !== 'SuggestionMessage'));\n if (!hasMessages) {\n setMessage('suggest', suggestMessages);\n }\n } else {\n setMessages((prev) => prev.filter((item) => !(item.type === 'SuggestionMessage')));\n }\n };\n\n // 获取聊天记录\n const initAppConversations = async (fetchDetail = false) => {\n try {\n const { data = [], pagination, result } = await fetchSessionList({\n url,\n appNo,\n token,\n pageNum: sessionPagination.pageNum,\n pageSize: sessionPagination.pageSize,\n });\n\n if (result?.code === API_SUCCESS_CODE) {\n if (data.length > 0) {\n const formatSessions = data.map((item) => {\n return {\n key: item.sessionId,\n label: item.title || '新对话',\n timestamp: new Date(item.startTime).getTime(),\n messages: [],\n meta: {\n ...item,\n },\n };\n });\n\n setSessionList(formatSessions);\n // 设置分页信息\n setSessionPagination({ pageNum: sessionPagination.pageNum, pageSize: sessionPagination.pageSize, total: pagination?.total || 0 });\n const { sessionId } = data?.[0];\n fetchDetail && setCurrentSession(sessionId);\n } else {\n // 页面报错 初始化\n setSessionList([]);\n setCurrentSessionId(uuidV4());\n initPrologue();\n }\n // 成功回调\n onSuccess?.({\n code: SuccessCode.APP_MESSAGES_INIT_SUCCESS,\n message: '初始化聊天记录成功',\n });\n } else {\n initPrologue();\n }\n } catch {\n //\n }\n };\n\n // 设置当前会话详情\n const setCurrentSession = async (sessionId: string) => {\n if (sessionId) {\n if (sessionId === currentSessionId) {\n return;\n }\n setCurrentSessionId(sessionId); // 设置当前会话 id;\n const { data, result } = await fetchSessionDetail({\n url,\n appNo,\n sessionId,\n token,\n });\n\n if (result?.code === API_SUCCESS_CODE) {\n const sessionsData = data?.reduce((acc: any[], cur) => {\n const sessionMessages = Array.isArray(cur.sessionMessages) ? cur.sessionMessages : [];\n const msgs = sessionMessages.map((msg: any) => ({\n ...msg,\n raw: cur,\n isLike: cur?.isLike,\n }));\n return [...acc, ...msgs];\n }, []);\n\n if (sessionsData.length > 0) {\n formatMessages(sessionsData, true);\n }\n }\n } else {\n // 兼容 无 session异常\n setCurrentSessionId(uuidV4());\n }\n };\n\n // 删除会话\n const deleteSession = async (sessionId: string) => {\n if (!sessionId) return;\n const { result } = await closeSession({\n url,\n appNo,\n sessionId,\n token,\n });\n if (result?.code === API_SUCCESS_CODE) {\n // 删除成功后,重新获取会话列表\n initAppConversations(false);\n // 如果删除的是当前会话,则创建新的会话\n if (sessionId === currentSessionId) {\n createNewChat();\n }\n }\n };\n\n // 更新会话名称\n const updateSession = async (sessionId: string, title: string) => {\n if (!sessionId && !title) return;\n const { result } = await updateSessionTitle({\n url,\n appNo,\n title,\n sessionId,\n token,\n });\n if (result?.code === API_SUCCESS_CODE) {\n // 编辑成功后,重新获取会话列表\n initAppConversations(false);\n }\n };\n\n // 生成新对话\n const createNewChat = () => {\n stopChat(); // 停止聊天\n setMessages([]); // 清空所有消息\n initPrologue(); // 初始化开场白和预置问题\n setCurrentSessionId(uuidV4()); // 设置会话 id\n };\n\n // 初始化应用\n useEffect(() => {\n if (appInfo) {\n // 初始化历史数据\n initAppConversations(true);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [appInfo]);\n\n return {\n appInfo,\n messages,\n loading,\n content: responseData.content,\n sessionList,\n currentSessionId,\n sessionPagination,\n initAppConversations,\n reChat,\n chat,\n createNewChat,\n setCurrentSessionId,\n setCurrentSession,\n updateSession,\n deleteSession,\n setMessage,\n setMessages,\n stopChat,\n initPrologue,\n };\n};\n\nexport default useAgentGenerator;\n"],
5
- "mappings": "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",
6
- "names": ["ActionType", "ProcessStatus", "ActionAvailability", "documentIcon", "documentExpandIcon", "qaIcon", "qaExpandIcon", "skillNoIcon", "skillNoExpandIcon", "toolIcon", "toolExpandIcon", "uuidV4", "completedIcon", "completedExpandIcon"]
7
- }
@@ -1,30 +0,0 @@
1
- interface IResponseData {
2
- code: string;
3
- httpCode?: number;
4
- data: string | {
5
- message: string;
6
- };
7
- message: string;
8
- content: string;
9
- requestId: string;
10
- sessionId: string;
11
- error?: boolean;
12
- success?: boolean;
13
- }
14
- interface UseEventStreamProps {
15
- streaming: boolean;
16
- options?: RequestInit;
17
- onOpen?: (response: Response) => void;
18
- onError?: (error: Error) => void;
19
- onClose?: () => void;
20
- textSpeed?: number;
21
- }
22
- interface UseEventStreamReturn {
23
- responseData: IResponseData | Record<any, any>;
24
- loading: boolean;
25
- start: (url: string, values?: any, headers?: Record<string, string>) => void;
26
- stop: () => void;
27
- onError?: (error: Error) => void;
28
- }
29
- export declare const useEventStreamRequest: ({ onOpen, onError, streaming, onClose, textSpeed, }: UseEventStreamProps) => UseEventStreamReturn;
30
- export default useEventStreamRequest;
@@ -1,191 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __export = (target, all) => {
6
- for (var name in all)
7
- __defProp(target, name, { get: all[name], enumerable: true });
8
- };
9
- var __copyProps = (to, from, except, desc) => {
10
- if (from && typeof from === "object" || typeof from === "function") {
11
- for (let key of __getOwnPropNames(from))
12
- if (!__hasOwnProp.call(to, key) && key !== except)
13
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
- }
15
- return to;
16
- };
17
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
-
19
- // src/hooks/useEventStreamRequest.ts
20
- var useEventStreamRequest_exports = {};
21
- __export(useEventStreamRequest_exports, {
22
- default: () => useEventStreamRequest_default,
23
- useEventStreamRequest: () => useEventStreamRequest
24
- });
25
- module.exports = __toCommonJS(useEventStreamRequest_exports);
26
- var import_react = require("react");
27
- var import_fetch_event_source = require("@microsoft/fetch-event-source");
28
- var import_antd = require("antd");
29
- var import_XAiMessage = require("../types/XAiMessage");
30
- var import_utils = require("../utils/index");
31
- var import_constants = require("../constants/index");
32
- var import_request = require("../utils/request");
33
- var useEventStreamRequest = ({
34
- onOpen = () => {
35
- },
36
- onError = () => {
37
- },
38
- streaming = true,
39
- onClose = () => {
40
- },
41
- textSpeed = 60
42
- }) => {
43
- const contentCacheRef = (0, import_react.useRef)([]);
44
- const streamStatusRef = (0, import_react.useRef)(0);
45
- const [loading, setLoading] = (0, import_react.useState)(false);
46
- const loadingRef = (0, import_react.useRef)(loading);
47
- const [responseData, setResponseData] = (0, import_react.useState)({ content: "" });
48
- const controllerRef = (0, import_react.useRef)(null);
49
- const stop = () => {
50
- var _a;
51
- (_a = controllerRef.current) == null ? void 0 : _a.abort();
52
- contentCacheRef.current = [];
53
- setLoading(false);
54
- };
55
- const start = async (url, values, headers = {}) => {
56
- const prefixUrl = url;
57
- setResponseData({});
58
- setLoading(true);
59
- controllerRef.current = new AbortController();
60
- const params = {
61
- ...values
62
- };
63
- const { signal } = controllerRef.current;
64
- if (streaming) {
65
- (0, import_fetch_event_source.fetchEventSource)(prefixUrl, {
66
- method: "POST",
67
- openWhenHidden: true,
68
- headers: {
69
- "Content-Type": "application/json",
70
- "Cache-Control": "no-cache",
71
- stream: "true",
72
- ...headers
73
- },
74
- signal,
75
- body: JSON.stringify(params),
76
- async onopen(response) {
77
- streamStatusRef.current = 1;
78
- if (response.ok && response.headers.get("content-type") === import_fetch_event_source.EventStreamContentType) {
79
- onOpen == null ? void 0 : onOpen(response);
80
- } else {
81
- if (response.status === 401) {
82
- import_antd.message.error("用户未登录,即将前往登录……");
83
- return;
84
- }
85
- if (response.status === 500) {
86
- import_antd.message.error("服务器错误,请稍后重试。");
87
- } else if (response.status > 500) {
88
- import_antd.message.error("网络不给力,请稍后重试。");
89
- }
90
- if (response.status >= 500) {
91
- setResponseData((prevResponseData) => {
92
- return {
93
- ...prevResponseData,
94
- content: "网络不给力,请稍后重试~~~~~",
95
- requestId: "",
96
- role: import_XAiMessage.MessageRole.assistant,
97
- httpCode: response.status,
98
- error: true,
99
- code: ""
100
- };
101
- });
102
- }
103
- onError == null ? void 0 : onError(new Error(`Unexpected response status: ${response.status}`));
104
- }
105
- },
106
- onmessage: (event) => {
107
- var _a, _b;
108
- const eventData = (0, import_utils.safeJsonParse)(event.data, {});
109
- if (!(eventData == null ? void 0 : eventData.data) && !(eventData == null ? void 0 : eventData.content))
110
- return;
111
- if (((_a = eventData == null ? void 0 : eventData.result) == null ? void 0 : _a.code) !== import_constants.API_SUCCESS_CODE) {
112
- setResponseData({
113
- ...eventData,
114
- code: eventData.code,
115
- content: eventData.message || "网络不给力,请稍后重试~~",
116
- requestId: eventData.requestId,
117
- role: import_XAiMessage.MessageRole.assistant,
118
- httpCode: 200,
119
- error: true
120
- });
121
- stop();
122
- return;
123
- }
124
- (_b = contentCacheRef.current) == null ? void 0 : _b.push(eventData);
125
- },
126
- onerror: (error) => {
127
- streamStatusRef.current = 2;
128
- setLoading(false);
129
- onError == null ? void 0 : onError(error);
130
- },
131
- onclose: () => {
132
- streamStatusRef.current = 2;
133
- onClose();
134
- }
135
- });
136
- } else {
137
- try {
138
- const response = await import_request.request.post(url, params);
139
- setResponseData(response);
140
- setLoading(false);
141
- } catch (error) {
142
- onError == null ? void 0 : onError(error);
143
- setLoading(false);
144
- }
145
- }
146
- };
147
- (0, import_react.useEffect)(() => {
148
- loadingRef.current = loading;
149
- }, [loading]);
150
- (0, import_react.useEffect)(() => {
151
- const timer = setInterval(() => {
152
- var _a, _b;
153
- if (((_a = contentCacheRef.current) == null ? void 0 : _a.length) > 0) {
154
- const eventData = (_b = contentCacheRef.current) == null ? void 0 : _b.shift();
155
- const newData = eventData == null ? void 0 : eventData.data;
156
- setResponseData((prevResponseData) => {
157
- const prevContent = prevResponseData.content ?? "";
158
- return {
159
- ...eventData,
160
- code: eventData == null ? void 0 : eventData.code,
161
- content: `${prevContent}${newData}`,
162
- requestId: eventData == null ? void 0 : eventData.requestId,
163
- role: import_XAiMessage.MessageRole.assistant
164
- };
165
- });
166
- } else if (streamStatusRef.current === 2 && loadingRef.current) {
167
- streamStatusRef.current = 0;
168
- setLoading(false);
169
- }
170
- }, textSpeed);
171
- return () => clearInterval(timer);
172
- }, []);
173
- (0, import_react.useEffect)(() => {
174
- return () => {
175
- stop();
176
- };
177
- }, []);
178
- return {
179
- responseData,
180
- loading,
181
- start,
182
- stop,
183
- onError
184
- };
185
- };
186
- var useEventStreamRequest_default = useEventStreamRequest;
187
- // Annotate the CommonJS export names for ESM import in node:
188
- 0 && (module.exports = {
189
- useEventStreamRequest
190
- });
191
- //# sourceMappingURL=useEventStreamRequest.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/hooks/useEventStreamRequest.ts"],
4
- "sourcesContent": ["import { useState, useEffect, useRef } from 'react';\nimport { fetchEventSource, EventStreamContentType } from '@microsoft/fetch-event-source';\nimport { message } from 'antd';\nimport { MessageRole } from '@/types/XAiMessage';\nimport { safeJsonParse } from '@/utils/index';\nimport { API_SUCCESS_CODE } from '@/constants/index';\nimport { request } from '@/utils/request';\n\ninterface IResponseData {\n code: string;\n httpCode?: number;\n data: string | { message: string };\n message: string;\n content: string;\n requestId: string;\n sessionId: string;\n error?: boolean;\n success?: boolean;\n}\ninterface UseEventStreamProps {\n streaming: boolean;\n options?: RequestInit;\n onOpen?: (response: Response) => void;\n onError?: (error: Error) => void;\n onClose?: () => void;\n textSpeed?: number;\n}\n\ninterface UseEventStreamReturn {\n responseData: IResponseData | Record<any, any>;\n loading: boolean;\n start: (url: string, values?: any, headers?: Record<string, string>) => void;\n stop: () => void;\n onError?: (error: Error) => void;\n}\n\nexport const useEventStreamRequest = ({\n onOpen = () => {},\n onError = () => {},\n streaming = true,\n onClose = () => {},\n textSpeed = 60,\n}: UseEventStreamProps): UseEventStreamReturn => {\n // 使用 useRef 作为临时缓存区,降低 setState 频率\n const contentCacheRef = useRef<IResponseData[]>([]); // 存放当前完整文本\n const streamStatusRef = useRef<number>(0); // 流式接收状态 0: 未开始 1: 进行中 2: 结束\n const [loading, setLoading] = useState<boolean>(false);\n const loadingRef = useRef(loading);\n const [responseData, setResponseData] = useState<IResponseData | Record<any, any>>({ content: '' });\n const controllerRef = useRef<AbortController | null>(null);\n\n // 停止接收请求\n const stop = () => {\n controllerRef.current?.abort();\n contentCacheRef.current = []; // 立即清空缓存区\n setLoading(false);\n };\n\n const start = async (url: string, values?: any, headers = {}) => {\n const prefixUrl = url;\n setResponseData({});\n setLoading(true);\n controllerRef.current = new AbortController();\n const params = {\n ...values,\n };\n\n const { signal } = controllerRef.current;\n\n if (streaming) {\n fetchEventSource(prefixUrl, {\n method: 'POST',\n openWhenHidden: true,\n headers: {\n 'Content-Type': 'application/json',\n 'Cache-Control': 'no-cache',\n stream: 'true',\n ...headers,\n },\n signal,\n body: JSON.stringify(params),\n async onopen(response) {\n streamStatusRef.current = 1;\n if (response.ok && response.headers.get('content-type') === EventStreamContentType) {\n onOpen?.(response);\n } else {\n if (response.status === 401) {\n message.error('用户未登录,即将前往登录……');\n // todo 需要修改\n return;\n } if (response.status === 500) {\n message.error('服务器错误,请稍后重试。'); // 使用Antd的message组件给出提示\n } else if (response.status > 500) {\n message.error('网络不给力,请稍后重试。');\n }\n if (response.status >= 500) {\n setResponseData((prevResponseData: IResponseData) => {\n return {\n ...prevResponseData,\n content: '网络不给力,请稍后重试~~~~~',\n requestId: '',\n role: MessageRole.assistant,\n httpCode: response.status,\n error: true,\n code: '',\n };\n });\n }\n onError?.(new Error(`Unexpected response status: ${response.status}`));\n }\n },\n onmessage: (event: { data: string }) => {\n // 解析事件数据\n const eventData = safeJsonParse(event.data, {});\n // 空消息处理\n if (!eventData?.data && !eventData?.content) return;\n // 如果请求失败,则停止请求\n if (eventData?.result?.code !== API_SUCCESS_CODE) {\n setResponseData({\n ...eventData,\n code: eventData.code,\n content: eventData.message || '网络不给力,请稍后重试~~',\n requestId: eventData.requestId,\n role: MessageRole.assistant,\n httpCode: 200,\n error: true,\n });\n stop();\n return;\n }\n // 推送内容到缓存区,后续通过Interval定时器,将缓存区内容设置到响应数据中\n contentCacheRef.current?.push(eventData);\n },\n onerror: (error: Error) => {\n streamStatusRef.current = 2;\n setLoading(false);\n onError?.(error);\n },\n onclose: () => {\n streamStatusRef.current = 2;\n onClose();\n },\n });\n } else {\n try {\n const response = await request.post(url, params);\n setResponseData(response);\n setLoading(false);\n } catch (error: any) {\n onError?.(error);\n setLoading(false);\n }\n }\n };\n\n useEffect(() => {\n loadingRef.current = loading;\n }, [loading]);\n\n // 初始化定时器 将缓存区有新内容时设置到响应数据中\n useEffect(() => {\n const timer = setInterval(() => {\n if (contentCacheRef.current?.length > 0) {\n // 如果缓存区有新内容,则设置到响应数据中\n const eventData = contentCacheRef.current?.shift();\n const newData = eventData?.data;\n setResponseData((prevResponseData: IResponseData) => {\n const prevContent = prevResponseData.content ?? '';\n return {\n ...eventData,\n code: eventData?.code,\n content: `${prevContent}${newData}`,\n requestId: eventData?.requestId,\n role: MessageRole.assistant,\n };\n });\n } else if (streamStatusRef.current === 2 && loadingRef.current) {\n streamStatusRef.current = 0;\n setLoading(false);\n }\n }, textSpeed); // 渲染间隔\n\n return () => clearInterval(timer);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n return () => {\n stop();\n };\n }, []);\n\n return {\n responseData,\n loading,\n start,\n stop,\n onError,\n };\n};\n\nexport default useEventStreamRequest;\n"],
5
- "mappings": "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",
6
- "names": []
7
- }
@@ -1,34 +0,0 @@
1
- import type { XAiContextType } from "../context/AiProviderContext";
2
- import type { SendContent } from "../types";
3
- export interface UseProviderContextOptions<T> {
4
- props: T;
5
- providerProps?: (keyof XAiContextType)[];
6
- mergeLogic?: (props: T, context: XAiContextType | undefined) => T;
7
- }
8
- export interface UseProviderContextReturn<T> {
9
- mergedProps: T;
10
- isInProvider: boolean;
11
- context: XAiContextType | undefined;
12
- getProviderValue: <K extends keyof XAiContextType>(key: K) => XAiContextType[K] | undefined;
13
- }
14
- export type MethodCaller<T extends any[] = any[], R = any> = (...args: T) => R;
15
- export interface ProviderMethods {
16
- isInProvider: boolean;
17
- sendMessage: MethodCaller<[SendContent], void>;
18
- stopGeneration: MethodCaller<[], void>;
19
- clearMessages: MethodCaller<[], void>;
20
- regenerateLastMessage: MethodCaller<[string], void>;
21
- }
22
- /**
23
- * 通用的 Provider 上下文 Hook
24
- * 用于判断组件是否在 XAiProvider 中,并合并相关属性
25
- */
26
- export declare const useProviderContext: <T extends Record<string, any>>(options: UseProviderContextOptions<T>) => UseProviderContextReturn<T>;
27
- /**
28
- * 专门为 XAiChatbot 设计的 Hook
29
- */
30
- export declare const useChatbotContext: (componentProps: any) => UseProviderContextReturn<any>;
31
- /**
32
- * 通用的 Provider 方法调用 Hook
33
- */
34
- export declare const useProviderMethods: () => ProviderMethods;
@@ -1,105 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __export = (target, all) => {
6
- for (var name in all)
7
- __defProp(target, name, { get: all[name], enumerable: true });
8
- };
9
- var __copyProps = (to, from, except, desc) => {
10
- if (from && typeof from === "object" || typeof from === "function") {
11
- for (let key of __getOwnPropNames(from))
12
- if (!__hasOwnProp.call(to, key) && key !== except)
13
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
- }
15
- return to;
16
- };
17
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
-
19
- // src/hooks/useProviderContext.ts
20
- var useProviderContext_exports = {};
21
- __export(useProviderContext_exports, {
22
- useChatbotContext: () => useChatbotContext,
23
- useProviderContext: () => useProviderContext,
24
- useProviderMethods: () => useProviderMethods
25
- });
26
- module.exports = __toCommonJS(useProviderContext_exports);
27
- var import_AiProviderContext = require("../context/AiProviderContext");
28
- var useProviderContext = (options) => {
29
- const { props, providerProps, mergeLogic } = options;
30
- const context = (0, import_AiProviderContext.useXAi)();
31
- const isInProvider = !!(context == null ? void 0 : context.isInProvider);
32
- let mergedProps;
33
- if (mergeLogic) {
34
- mergedProps = mergeLogic(props, context);
35
- } else if (context && isInProvider) {
36
- mergedProps = { ...props, ...context };
37
- } else {
38
- mergedProps = props;
39
- }
40
- const getProviderValue = (key) => {
41
- return context == null ? void 0 : context[key];
42
- };
43
- return {
44
- mergedProps,
45
- isInProvider,
46
- context,
47
- getProviderValue
48
- };
49
- };
50
- var useChatbotContext = (componentProps) => {
51
- return useProviderContext({
52
- props: componentProps,
53
- mergeLogic: (props, context) => {
54
- if (!(context == null ? void 0 : context.isInProvider)) {
55
- return props;
56
- }
57
- const { messages: contextMessages, loading: contextLoading, ...restContext } = context;
58
- return {
59
- ...props,
60
- ...restContext,
61
- // 优先使用 Provider 的状态,如果没有则使用 props
62
- messages: contextMessages || props.messages || [],
63
- loading: contextLoading || props.loading || false,
64
- // 确保 onSend 等回调函数也被合并
65
- onSend: context.onSend || props.onSend,
66
- onClear: context.onClear || props.onClear,
67
- onStop: context.onStop || props.onStop,
68
- onSuggestMessageClick: context.onSuggestMessageClick || props.onSuggestMessageClick,
69
- onMessagesActionsCallback: context.onMessagesActionsCallback || props.onMessagesActionsCallback
70
- };
71
- }
72
- });
73
- };
74
- var useProviderMethods = () => {
75
- const context = (0, import_AiProviderContext.useXAi)();
76
- const callMethod = (methodName, ...args) => {
77
- if ((context == null ? void 0 : context.isInProvider) && typeof context[methodName] === "function") {
78
- return context[methodName](...args);
79
- }
80
- return void 0;
81
- };
82
- const createMethodCaller = (providerMethod, argsTransformer) => {
83
- return (...args) => {
84
- if ((context == null ? void 0 : context.isInProvider) && typeof context[providerMethod] === "function") {
85
- const transformedArgs = argsTransformer ? argsTransformer(args) : args;
86
- return context[providerMethod](...transformedArgs);
87
- }
88
- return void 0;
89
- };
90
- };
91
- return {
92
- isInProvider: !!(context == null ? void 0 : context.isInProvider),
93
- sendMessage: createMethodCaller("onSend"),
94
- stopGeneration: createMethodCaller("onStop"),
95
- clearMessages: createMethodCaller("onClear"),
96
- regenerateLastMessage: createMethodCaller("onSend")
97
- };
98
- };
99
- // Annotate the CommonJS export names for ESM import in node:
100
- 0 && (module.exports = {
101
- useChatbotContext,
102
- useProviderContext,
103
- useProviderMethods
104
- });
105
- //# sourceMappingURL=useProviderContext.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/hooks/useProviderContext.ts"],
4
- "sourcesContent": ["import { useXAi } from '@/context/AiProviderContext';\nimport type { XAiContextType } from '@/context/AiProviderContext';\nimport type { SendContent } from '@/types';\n\nexport interface UseProviderContextOptions<T> {\n // 组件自身的 props\n props: T;\n // 需要从 Provider 中获取的属性\n providerProps?: (keyof XAiContextType)[];\n // 自定义合并逻辑\n mergeLogic?: (props: T, context: XAiContextType | undefined) => T;\n}\n\nexport interface UseProviderContextReturn<T> {\n // 合并后的 props\n mergedProps: T;\n // 是否在 Provider 中\n isInProvider: boolean;\n // Provider 上下文\n context: XAiContextType | undefined;\n // 从 Provider 中获取特定属性\n getProviderValue: <K extends keyof XAiContextType>(key: K) => XAiContextType[K] | undefined;\n}\n\n// 定义方法调用器的类型\nexport type MethodCaller<T extends any[] = any[], R = any> = (...args: T) => R;\n\n// 定义 Provider 方法的类型\nexport interface ProviderMethods {\n isInProvider: boolean;\n sendMessage: MethodCaller<[SendContent], void>;\n stopGeneration: MethodCaller<[], void>;\n clearMessages: MethodCaller<[], void>;\n regenerateLastMessage: MethodCaller<[string], void>;\n}\n\n/**\n * 通用的 Provider 上下文 Hook\n * 用于判断组件是否在 XAiProvider 中,并合并相关属性\n */\nexport const useProviderContext = <T extends Record<string, any>>(\n options: UseProviderContextOptions<T>,\n): UseProviderContextReturn<T> => {\n const { props, providerProps, mergeLogic } = options;\n\n // 获取 Provider 上下文\n const context = useXAi();\n\n // 判断是否在 Provider 中\n const isInProvider = !!context?.isInProvider;\n\n // 合并 props 和 context\n let mergedProps: T;\n if (mergeLogic) {\n mergedProps = mergeLogic(props, context);\n } else if (context && isInProvider) {\n mergedProps = { ...props, ...context };\n } else {\n mergedProps = props;\n }\n\n // 获取 Provider 中的特定值\n const getProviderValue = <K extends keyof XAiContextType>(key: K): XAiContextType[K] | undefined => {\n return context?.[key];\n };\n\n return {\n mergedProps,\n isInProvider,\n context,\n getProviderValue,\n };\n};\n\n/**\n * 专门为 XAiChatbot 设计的 Hook\n */\nexport const useChatbotContext = (componentProps: any) => {\n return useProviderContext({\n props: componentProps,\n mergeLogic: (props, context) => {\n if (!context?.isInProvider) {\n return props;\n }\n\n // 智能合并逻辑 - 合并所有 Provider 提供的属性\n const { messages: contextMessages, loading: contextLoading, ...restContext } = context;\n return {\n ...props,\n ...restContext,\n // 优先使用 Provider 的状态,如果没有则使用 props\n messages: contextMessages || props.messages || [],\n loading: contextLoading || props.loading || false,\n // 确保 onSend 等回调函数也被合并\n onSend: context.onSend || props.onSend,\n onClear: context.onClear || props.onClear,\n onStop: context.onStop || props.onStop,\n onSuggestMessageClick: context.onSuggestMessageClick || props.onSuggestMessageClick,\n onMessagesActionsCallback: context.onMessagesActionsCallback || props.onMessagesActionsCallback,\n };\n },\n });\n};\n\n/**\n * 通用的 Provider 方法调用 Hook\n */\nexport const useProviderMethods = (): ProviderMethods => {\n const context = useXAi();\n\n const callMethod = (methodName: keyof XAiContextType, ...args: any[]) => {\n if (context?.isInProvider && typeof context[methodName] === 'function') {\n return (context[methodName] as Function)(...args);\n }\n return undefined;\n };\n\n // 创建统一的方法调用器,支持参数转换\n const createMethodCaller = (\n providerMethod: string,\n argsTransformer?: (args: any[]) => any[],\n ): MethodCaller => {\n return (...args: any[]) => {\n // 如果 Provider 方法存在,直接调用并返回\n if (context?.isInProvider && typeof context[providerMethod as keyof XAiContextType] === 'function') {\n const transformedArgs = argsTransformer ? argsTransformer(args) : args;\n return (context[providerMethod as keyof XAiContextType] as Function)(...transformedArgs);\n }\n return undefined;\n };\n };\n\n return {\n isInProvider: !!context?.isInProvider,\n sendMessage: createMethodCaller('onSend'),\n stopGeneration: createMethodCaller('onStop'),\n clearMessages: createMethodCaller('onClear'),\n regenerateLastMessage: createMethodCaller('onSend'),\n };\n};\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,+BAAuB;AAwChB,IAAM,qBAAqB,CAChC,YACgC;AAChC,QAAM,EAAE,OAAO,eAAe,WAAW,IAAI;AAG7C,QAAM,cAAU,iCAAO;AAGvB,QAAM,eAAe,CAAC,EAAC,mCAAS;AAGhC,MAAI;AACJ,MAAI,YAAY;AACd,kBAAc,WAAW,OAAO,OAAO;AAAA,EACzC,WAAW,WAAW,cAAc;AAClC,kBAAc,EAAE,GAAG,OAAO,GAAG,QAAQ;AAAA,EACvC,OAAO;AACL,kBAAc;AAAA,EAChB;AAGA,QAAM,mBAAmB,CAAiC,QAA0C;AAClG,WAAO,mCAAU;AAAA,EACnB;AAEA,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;AAKO,IAAM,oBAAoB,CAAC,mBAAwB;AACxD,SAAO,mBAAmB;AAAA,IACxB,OAAO;AAAA,IACP,YAAY,CAAC,OAAO,YAAY;AAC9B,UAAI,EAAC,mCAAS,eAAc;AAC1B,eAAO;AAAA,MACT;AAGA,YAAM,EAAE,UAAU,iBAAiB,SAAS,gBAAgB,GAAG,YAAY,IAAI;AAC/E,aAAO;AAAA,QACL,GAAG;AAAA,QACH,GAAG;AAAA;AAAA,QAEH,UAAU,mBAAmB,MAAM,YAAY,CAAC;AAAA,QAChD,SAAS,kBAAkB,MAAM,WAAW;AAAA;AAAA,QAE5C,QAAQ,QAAQ,UAAU,MAAM;AAAA,QAChC,SAAS,QAAQ,WAAW,MAAM;AAAA,QAClC,QAAQ,QAAQ,UAAU,MAAM;AAAA,QAChC,uBAAuB,QAAQ,yBAAyB,MAAM;AAAA,QAC9D,2BAA2B,QAAQ,6BAA6B,MAAM;AAAA,MACxE;AAAA,IACF;AAAA,EACF,CAAC;AACH;AAKO,IAAM,qBAAqB,MAAuB;AACvD,QAAM,cAAU,iCAAO;AAEvB,QAAM,aAAa,CAAC,eAAqC,SAAgB;AACvE,SAAI,mCAAS,iBAAgB,OAAO,QAAQ,UAAU,MAAM,YAAY;AACtE,aAAQ,QAAQ,UAAU,EAAe,GAAG,IAAI;AAAA,IAClD;AACA,WAAO;AAAA,EACT;AAGA,QAAM,qBAAqB,CACzB,gBACA,oBACiB;AACjB,WAAO,IAAI,SAAgB;AAEzB,WAAI,mCAAS,iBAAgB,OAAO,QAAQ,cAAsC,MAAM,YAAY;AAClG,cAAM,kBAAkB,kBAAkB,gBAAgB,IAAI,IAAI;AAClE,eAAQ,QAAQ,cAAsC,EAAe,GAAG,eAAe;AAAA,MACzF;AACA,aAAO;AAAA,IACT;AAAA,EACF;AAEA,SAAO;AAAA,IACL,cAAc,CAAC,EAAC,mCAAS;AAAA,IACzB,aAAa,mBAAmB,QAAQ;AAAA,IACxC,gBAAgB,mBAAmB,QAAQ;AAAA,IAC3C,eAAe,mBAAmB,SAAS;AAAA,IAC3C,uBAAuB,mBAAmB,QAAQ;AAAA,EACpD;AACF;",
6
- "names": []
7
- }
@@ -1,14 +0,0 @@
1
- import React from 'react';
2
- import { XAiProviderProps } from "../types/XAiProvider";
3
- export interface UseXAiSDKOptions extends XAiProviderProps {
4
- containerId?: string;
5
- width?: string | number;
6
- height?: string | number;
7
- className?: string;
8
- style?: React.CSSProperties;
9
- }
10
- export declare const useXAiSDK: (options: UseXAiSDKOptions) => {
11
- containerRef: React.RefObject<HTMLDivElement | null>;
12
- render: () => import("react/jsx-runtime").JSX.Element;
13
- };
14
- export default useXAiSDK;
@@ -1,76 +0,0 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
-
29
- // src/hooks/useXAiSDK.tsx
30
- var useXAiSDK_exports = {};
31
- __export(useXAiSDK_exports, {
32
- default: () => useXAiSDK_default,
33
- useXAiSDK: () => useXAiSDK
34
- });
35
- module.exports = __toCommonJS(useXAiSDK_exports);
36
- var import_react = require("react");
37
- var import_XAiProvider = __toESM(require("../components/XAiProvider"));
38
- var import_XAiChatbot = __toESM(require("../components/XAiChatbot"));
39
- var import_jsx_runtime = require("react/jsx-runtime");
40
- var useXAiSDK = (options) => {
41
- const containerRef = (0, import_react.useRef)(null);
42
- const {
43
- containerId = "xai-chatbot-container",
44
- width = "400px",
45
- height = "600px",
46
- className,
47
- style,
48
- ...providerProps
49
- } = options;
50
- (0, import_react.useEffect)(() => {
51
- if (containerRef.current) {
52
- const container = containerRef.current;
53
- if (!container.querySelector(".xai-chatbot-wrapper")) {
54
- const wrapper = document.createElement("div");
55
- wrapper.className = "xai-chatbot-wrapper";
56
- wrapper.style.width = typeof width === "number" ? `${width}px` : width;
57
- wrapper.style.height = typeof height === "number" ? `${height}px` : height;
58
- if (className)
59
- wrapper.className += ` ${className}`;
60
- if (style)
61
- Object.assign(wrapper.style, style);
62
- container.appendChild(wrapper);
63
- }
64
- }
65
- }, [containerId, width, height, className, style]);
66
- return {
67
- containerRef,
68
- render: () => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { ref: containerRef, id: containerId, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_XAiProvider.default, { ...providerProps, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_XAiChatbot.default, {}) }) })
69
- };
70
- };
71
- var useXAiSDK_default = useXAiSDK;
72
- // Annotate the CommonJS export names for ESM import in node:
73
- 0 && (module.exports = {
74
- useXAiSDK
75
- });
76
- //# sourceMappingURL=useXAiSDK.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/hooks/useXAiSDK.tsx"],
4
- "sourcesContent": ["import React, { useEffect, useRef } from 'react';\nimport { XAiProviderProps } from '@/types/XAiProvider';\nimport XAiProvider from '@/components/XAiProvider';\nimport XAiChatbot from '@/components/XAiChatbot';\n\nexport interface UseXAiSDKOptions extends XAiProviderProps {\n containerId?: string;\n width?: string | number;\n height?: string | number;\n className?: string;\n style?: React.CSSProperties;\n}\n\nexport const useXAiSDK = (options: UseXAiSDKOptions) => {\n const containerRef = useRef<HTMLDivElement>(null);\n const {\n containerId = 'xai-chatbot-container',\n width = '400px',\n height = '600px',\n className,\n style,\n ...providerProps\n } = options;\n\n useEffect(() => {\n if (containerRef.current) {\n // 确保容器存在\n const container = containerRef.current;\n if (!container.querySelector('.xai-chatbot-wrapper')) {\n // 创建包装器\n const wrapper = document.createElement('div');\n wrapper.className = 'xai-chatbot-wrapper';\n wrapper.style.width = typeof width === 'number' ? `${width}px` : width;\n wrapper.style.height = typeof height === 'number' ? `${height}px` : height;\n if (className) wrapper.className += ` ${className}`;\n if (style) Object.assign(wrapper.style, style);\n \n container.appendChild(wrapper);\n }\n }\n }, [containerId, width, height, className, style]);\n\n return {\n containerRef,\n render: () => (\n <div ref={containerRef} id={containerId}>\n <XAiProvider {...providerProps}>\n <XAiChatbot />\n </XAiProvider>\n </div>\n ),\n };\n};\n\nexport default useXAiSDK; "],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAyC;AAEzC,yBAAwB;AACxB,wBAAuB;AA4Cb;AAlCH,IAAM,YAAY,CAAC,YAA8B;AACtD,QAAM,mBAAe,qBAAuB,IAAI;AAChD,QAAM;AAAA,IACJ,cAAc;AAAA,IACd,QAAQ;AAAA,IACR,SAAS;AAAA,IACT;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EACL,IAAI;AAEJ,8BAAU,MAAM;AACd,QAAI,aAAa,SAAS;AAExB,YAAM,YAAY,aAAa;AAC/B,UAAI,CAAC,UAAU,cAAc,sBAAsB,GAAG;AAEpD,cAAM,UAAU,SAAS,cAAc,KAAK;AAC5C,gBAAQ,YAAY;AACpB,gBAAQ,MAAM,QAAQ,OAAO,UAAU,WAAW,GAAG,YAAY;AACjE,gBAAQ,MAAM,SAAS,OAAO,WAAW,WAAW,GAAG,aAAa;AACpE,YAAI;AAAW,kBAAQ,aAAa,IAAI;AACxC,YAAI;AAAO,iBAAO,OAAO,QAAQ,OAAO,KAAK;AAE7C,kBAAU,YAAY,OAAO;AAAA,MAC/B;AAAA,IACF;AAAA,EACF,GAAG,CAAC,aAAa,OAAO,QAAQ,WAAW,KAAK,CAAC;AAEjD,SAAO;AAAA,IACL;AAAA,IACA,QAAQ,MACN,4CAAC,SAAI,KAAK,cAAc,IAAI,aAC1B,sDAAC,mBAAAA,SAAA,EAAa,GAAG,eACf,sDAAC,kBAAAC,SAAA,EAAW,GACd,GACF;AAAA,EAEJ;AACF;AAEA,IAAO,oBAAQ;",
6
- "names": ["XAiProvider", "XAiChatbot"]
7
- }