@tdesign-react/chat 1.0.2-alpha.9 → 1.0.3-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (503) hide show
  1. package/CHANGELOG.md +14 -1
  2. package/README.md +76 -22
  3. package/es/_chunks/dep-076af7c3.js +438 -0
  4. package/es/_chunks/dep-076af7c3.js.map +1 -0
  5. package/es/_chunks/dep-1007ac80.js +205 -0
  6. package/es/_chunks/dep-1007ac80.js.map +1 -0
  7. package/es/_chunks/dep-16520c2b.js +1247 -0
  8. package/es/_chunks/dep-16520c2b.js.map +1 -0
  9. package/es/_chunks/dep-1743bd61.js +438 -0
  10. package/es/_chunks/dep-1743bd61.js.map +1 -0
  11. package/es/_chunks/dep-1ca64fef.js +1247 -0
  12. package/es/_chunks/dep-1ca64fef.js.map +1 -0
  13. package/es/_chunks/dep-24472232.js +839 -0
  14. package/es/_chunks/dep-24472232.js.map +1 -0
  15. package/es/_chunks/dep-3864b369.js +839 -0
  16. package/es/_chunks/dep-3864b369.js.map +1 -0
  17. package/es/_chunks/dep-3e40d789.js +169 -0
  18. package/es/_chunks/dep-3e40d789.js.map +1 -0
  19. package/es/_chunks/dep-4dedfbef.js +438 -0
  20. package/es/_chunks/dep-4dedfbef.js.map +1 -0
  21. package/es/_chunks/dep-56f5e08e.js +448 -0
  22. package/es/_chunks/dep-56f5e08e.js.map +1 -0
  23. package/es/_chunks/dep-5b6b17d0.js +169 -0
  24. package/es/_chunks/dep-5b6b17d0.js.map +1 -0
  25. package/es/_chunks/dep-688e4aaa.js +438 -0
  26. package/es/_chunks/dep-688e4aaa.js.map +1 -0
  27. package/es/_chunks/dep-870f0d35.js +839 -0
  28. package/es/_chunks/dep-870f0d35.js.map +1 -0
  29. package/es/_chunks/dep-96eca06f.js +169 -0
  30. package/es/_chunks/dep-96eca06f.js.map +1 -0
  31. package/es/_chunks/dep-ba3bd553.js +169 -0
  32. package/es/_chunks/dep-ba3bd553.js.map +1 -0
  33. package/es/_chunks/dep-bcb234a1.js +839 -0
  34. package/es/_chunks/dep-bcb234a1.js.map +1 -0
  35. package/es/_chunks/dep-de8ac730.js +1247 -0
  36. package/es/_chunks/dep-de8ac730.js.map +1 -0
  37. package/es/_chunks/dep-e9dbff09.js +1247 -0
  38. package/es/_chunks/dep-e9dbff09.js.map +1 -0
  39. package/es/_chunks/dep-ebc4cf30.js +1247 -0
  40. package/es/_chunks/dep-ebc4cf30.js.map +1 -0
  41. package/es/_chunks/dep-f2051ebd.js +839 -0
  42. package/es/_chunks/dep-f2051ebd.js.map +1 -0
  43. package/es/_chunks/dep-f691a67e.js +438 -0
  44. package/es/_chunks/dep-f691a67e.js.map +1 -0
  45. package/es/_chunks/dep-f8016301.js +169 -0
  46. package/es/_chunks/dep-f8016301.js.map +1 -0
  47. package/es/_util/reactify.js +33 -13
  48. package/es/_util/reactify.js.map +1 -1
  49. package/es/_util/useDynamicStyle.js +1 -1
  50. package/es/attachments/index.js +1 -1
  51. package/es/chat-actionbar/index.js +1 -1
  52. package/es/chat-engine/components/a2ui/A2UIActivityRenderer.d.ts +196 -0
  53. package/es/chat-engine/components/a2ui/A2UIActivityRenderer.js +301 -0
  54. package/es/chat-engine/components/a2ui/A2UIActivityRenderer.js.map +1 -0
  55. package/es/chat-engine/components/a2ui/A2UIComponentRenderer.d.ts +37 -0
  56. package/es/chat-engine/components/a2ui/A2UIComponentRenderer.js +116 -0
  57. package/es/chat-engine/components/a2ui/A2UIComponentRenderer.js.map +1 -0
  58. package/es/chat-engine/components/a2ui/A2UIErrorBoundary.d.ts +42 -0
  59. package/es/chat-engine/components/a2ui/A2UIErrorBoundary.js +113 -0
  60. package/es/chat-engine/components/a2ui/A2UIErrorBoundary.js.map +1 -0
  61. package/es/chat-engine/components/a2ui/A2UISkeleton.d.ts +60 -0
  62. package/es/chat-engine/components/a2ui/A2UISkeleton.js +197 -0
  63. package/es/chat-engine/components/a2ui/A2UISkeleton.js.map +1 -0
  64. package/es/chat-engine/components/a2ui/A2UISurfaceRenderer.d.ts +44 -0
  65. package/es/chat-engine/components/a2ui/A2UISurfaceRenderer.js +139 -0
  66. package/es/chat-engine/components/a2ui/A2UISurfaceRenderer.js.map +1 -0
  67. package/es/chat-engine/components/a2ui/containers/A2UICard.d.ts +22 -0
  68. package/es/chat-engine/components/a2ui/containers/A2UICard.js +82 -0
  69. package/es/chat-engine/components/a2ui/containers/A2UICard.js.map +1 -0
  70. package/es/chat-engine/components/a2ui/containers/A2UIColumn.d.ts +18 -0
  71. package/es/chat-engine/components/a2ui/containers/A2UIColumn.js +81 -0
  72. package/es/chat-engine/components/a2ui/containers/A2UIColumn.js.map +1 -0
  73. package/es/chat-engine/components/a2ui/containers/A2UIList.d.ts +14 -0
  74. package/es/chat-engine/components/a2ui/containers/A2UIList.js +62 -0
  75. package/es/chat-engine/components/a2ui/containers/A2UIList.js.map +1 -0
  76. package/es/chat-engine/components/a2ui/containers/A2UIRow.d.ts +20 -0
  77. package/es/chat-engine/components/a2ui/containers/A2UIRow.js +84 -0
  78. package/es/chat-engine/components/a2ui/containers/A2UIRow.js.map +1 -0
  79. package/es/chat-engine/components/a2ui/containers/A2UITabs.d.ts +14 -0
  80. package/es/chat-engine/components/a2ui/containers/A2UITabs.js +69 -0
  81. package/es/chat-engine/components/a2ui/containers/A2UITabs.js.map +1 -0
  82. package/es/chat-engine/components/a2ui/containers/index.d.ts +8 -0
  83. package/es/chat-engine/components/a2ui/containers/index.js +30 -0
  84. package/es/chat-engine/components/a2ui/containers/index.js.map +1 -0
  85. package/es/chat-engine/components/a2ui/index.d.ts +11 -0
  86. package/es/chat-engine/components/a2ui/index.js +62 -0
  87. package/es/chat-engine/components/a2ui/index.js.map +1 -0
  88. package/es/chat-engine/components/a2ui/primitives/A2UIButton.d.ts +33 -0
  89. package/es/chat-engine/components/a2ui/primitives/A2UIButton.js +80 -0
  90. package/es/chat-engine/components/a2ui/primitives/A2UIButton.js.map +1 -0
  91. package/es/chat-engine/components/a2ui/primitives/A2UICheckBox.d.ts +12 -0
  92. package/es/chat-engine/components/a2ui/primitives/A2UICheckBox.js +43 -0
  93. package/es/chat-engine/components/a2ui/primitives/A2UICheckBox.js.map +1 -0
  94. package/es/chat-engine/components/a2ui/primitives/A2UICheckboxGroup.d.ts +50 -0
  95. package/es/chat-engine/components/a2ui/primitives/A2UICheckboxGroup.js +54 -0
  96. package/es/chat-engine/components/a2ui/primitives/A2UICheckboxGroup.js.map +1 -0
  97. package/es/chat-engine/components/a2ui/primitives/A2UIChoicePicker.d.ts +13 -0
  98. package/es/chat-engine/components/a2ui/primitives/A2UIChoicePicker.js +89 -0
  99. package/es/chat-engine/components/a2ui/primitives/A2UIChoicePicker.js.map +1 -0
  100. package/es/chat-engine/components/a2ui/primitives/A2UIDivider.d.ts +12 -0
  101. package/es/chat-engine/components/a2ui/primitives/A2UIDivider.js +25 -0
  102. package/es/chat-engine/components/a2ui/primitives/A2UIDivider.js.map +1 -0
  103. package/es/chat-engine/components/a2ui/primitives/A2UIIcon.d.ts +13 -0
  104. package/es/chat-engine/components/a2ui/primitives/A2UIIcon.js +138942 -0
  105. package/es/chat-engine/components/a2ui/primitives/A2UIIcon.js.map +1 -0
  106. package/es/chat-engine/components/a2ui/primitives/A2UIImage.d.ts +12 -0
  107. package/es/chat-engine/components/a2ui/primitives/A2UIImage.js +75 -0
  108. package/es/chat-engine/components/a2ui/primitives/A2UIImage.js.map +1 -0
  109. package/es/chat-engine/components/a2ui/primitives/A2UIInput.d.ts +20 -0
  110. package/es/chat-engine/components/a2ui/primitives/A2UIInput.js +63 -0
  111. package/es/chat-engine/components/a2ui/primitives/A2UIInput.js.map +1 -0
  112. package/es/chat-engine/components/a2ui/primitives/A2UIRadioGroup.d.ts +56 -0
  113. package/es/chat-engine/components/a2ui/primitives/A2UIRadioGroup.js +64 -0
  114. package/es/chat-engine/components/a2ui/primitives/A2UIRadioGroup.js.map +1 -0
  115. package/es/chat-engine/components/a2ui/primitives/A2UISlider.d.ts +12 -0
  116. package/es/chat-engine/components/a2ui/primitives/A2UISlider.js +55 -0
  117. package/es/chat-engine/components/a2ui/primitives/A2UISlider.js.map +1 -0
  118. package/es/chat-engine/components/a2ui/primitives/A2UIText.d.ts +12 -0
  119. package/es/chat-engine/components/a2ui/primitives/A2UIText.js +104 -0
  120. package/es/chat-engine/components/a2ui/primitives/A2UIText.js.map +1 -0
  121. package/es/chat-engine/components/a2ui/primitives/A2UITextField.d.ts +12 -0
  122. package/es/chat-engine/components/a2ui/primitives/A2UITextField.js +80 -0
  123. package/es/chat-engine/components/a2ui/primitives/A2UITextField.js.map +1 -0
  124. package/es/chat-engine/components/a2ui/primitives/index.d.ts +15 -0
  125. package/es/chat-engine/components/a2ui/primitives/index.js +39 -0
  126. package/es/chat-engine/components/a2ui/primitives/index.js.map +1 -0
  127. package/es/chat-engine/components/a2ui/registry.d.ts +35 -0
  128. package/es/chat-engine/components/a2ui/registry.js +74 -0
  129. package/es/chat-engine/components/a2ui/registry.js.map +1 -0
  130. package/es/chat-engine/components/activity/index.d.ts +0 -1
  131. package/es/chat-engine/components/activity/index.js +10 -5
  132. package/es/chat-engine/components/activity/index.js.map +1 -1
  133. package/es/chat-engine/components/activity/registry.d.ts +7 -41
  134. package/es/chat-engine/components/activity/registry.js +23 -77
  135. package/es/chat-engine/components/activity/registry.js.map +1 -1
  136. package/es/chat-engine/components/activity/render.d.ts +5 -1
  137. package/es/chat-engine/components/activity/render.js +33 -71
  138. package/es/chat-engine/components/activity/render.js.map +1 -1
  139. package/es/chat-engine/components/activity/types.d.ts +0 -3
  140. package/es/chat-engine/components/activity/types.js +1 -1
  141. package/es/chat-engine/components/index.js +16 -11
  142. package/es/chat-engine/components/index.js.map +1 -1
  143. package/es/chat-engine/components/json-render/A2UIJsonRenderActivityRenderer.d.ts +36 -0
  144. package/es/chat-engine/components/json-render/A2UIJsonRenderActivityRenderer.js +36 -0
  145. package/es/chat-engine/components/json-render/A2UIJsonRenderActivityRenderer.js.map +1 -0
  146. package/es/chat-engine/components/json-render/JsonRenderActivityRenderer.d.ts +46 -0
  147. package/es/chat-engine/components/json-render/JsonRenderActivityRenderer.js +36 -0
  148. package/es/chat-engine/components/json-render/JsonRenderActivityRenderer.js.map +1 -0
  149. package/es/chat-engine/components/json-render/SurfaceStateManager.d.ts +113 -0
  150. package/es/chat-engine/components/json-render/SurfaceStateManager.js +195 -0
  151. package/es/chat-engine/components/json-render/SurfaceStateManager.js.map +1 -0
  152. package/es/chat-engine/components/json-render/adapters/a2ui-to-jsonrender.d.ts +49 -0
  153. package/es/chat-engine/components/json-render/adapters/a2ui-to-jsonrender.js +307 -0
  154. package/es/chat-engine/components/json-render/adapters/a2ui-to-jsonrender.js.map +1 -0
  155. package/es/chat-engine/components/json-render/adapters/a2ui-types.d.ts +96 -0
  156. package/es/chat-engine/components/json-render/adapters/a2ui-types.js +7 -0
  157. package/es/chat-engine/components/json-render/adapters/a2ui-types.js.map +1 -0
  158. package/es/chat-engine/components/json-render/adapters/index.d.ts +7 -0
  159. package/es/chat-engine/components/json-render/adapters/index.js +11 -0
  160. package/es/chat-engine/components/json-render/adapters/index.js.map +1 -0
  161. package/es/chat-engine/components/json-render/catalog/a2ui-binding.d.ts +64 -0
  162. package/es/chat-engine/components/json-render/catalog/a2ui-binding.js +36 -0
  163. package/es/chat-engine/components/json-render/catalog/a2ui-binding.js.map +1 -0
  164. package/es/chat-engine/components/json-render/catalog/a2ui-registry.d.ts +78 -0
  165. package/es/chat-engine/components/json-render/catalog/a2ui-registry.js +36 -0
  166. package/es/chat-engine/components/json-render/catalog/a2ui-registry.js.map +1 -0
  167. package/es/chat-engine/components/json-render/catalog/atomic/button.d.ts +14 -0
  168. package/es/chat-engine/components/json-render/catalog/atomic/button.js +71 -0
  169. package/es/chat-engine/components/json-render/catalog/atomic/button.js.map +1 -0
  170. package/es/chat-engine/components/json-render/catalog/atomic/card.d.ts +11 -0
  171. package/es/chat-engine/components/json-render/catalog/atomic/card.js +57 -0
  172. package/es/chat-engine/components/json-render/catalog/atomic/card.js.map +1 -0
  173. package/es/chat-engine/components/json-render/catalog/atomic/input.d.ts +20 -0
  174. package/es/chat-engine/components/json-render/catalog/atomic/input.js +76 -0
  175. package/es/chat-engine/components/json-render/catalog/atomic/input.js.map +1 -0
  176. package/es/chat-engine/components/json-render/catalog/atomic/layout.d.ts +44 -0
  177. package/es/chat-engine/components/json-render/catalog/atomic/layout.js +129 -0
  178. package/es/chat-engine/components/json-render/catalog/atomic/layout.js.map +1 -0
  179. package/es/chat-engine/components/json-render/catalog/atomic/text.d.ts +11 -0
  180. package/es/chat-engine/components/json-render/catalog/atomic/text.js +31 -0
  181. package/es/chat-engine/components/json-render/catalog/atomic/text.js.map +1 -0
  182. package/es/chat-engine/components/json-render/catalog/button.d.ts +14 -0
  183. package/es/chat-engine/components/json-render/catalog/button.js +71 -0
  184. package/es/chat-engine/components/json-render/catalog/button.js.map +1 -0
  185. package/es/chat-engine/components/json-render/catalog/card.d.ts +11 -0
  186. package/es/chat-engine/components/json-render/catalog/card.js +57 -0
  187. package/es/chat-engine/components/json-render/catalog/card.js.map +1 -0
  188. package/es/chat-engine/components/json-render/catalog/catalog-to-prompt.d.ts +614 -0
  189. package/es/chat-engine/components/json-render/catalog/catalog-to-prompt.js +779 -0
  190. package/es/chat-engine/components/json-render/catalog/catalog-to-prompt.js.map +1 -0
  191. package/es/chat-engine/components/json-render/catalog/index.d.ts +128 -0
  192. package/es/chat-engine/components/json-render/catalog/index.js +36 -0
  193. package/es/chat-engine/components/json-render/catalog/index.js.map +1 -0
  194. package/es/chat-engine/components/json-render/catalog/input.d.ts +20 -0
  195. package/es/chat-engine/components/json-render/catalog/input.js +36 -0
  196. package/es/chat-engine/components/json-render/catalog/input.js.map +1 -0
  197. package/es/chat-engine/components/json-render/catalog/layout.d.ts +44 -0
  198. package/es/chat-engine/components/json-render/catalog/layout.js +129 -0
  199. package/es/chat-engine/components/json-render/catalog/layout.js.map +1 -0
  200. package/es/chat-engine/components/json-render/catalog/text.d.ts +11 -0
  201. package/es/chat-engine/components/json-render/catalog/text.js +31 -0
  202. package/es/chat-engine/components/json-render/catalog/text.js.map +1 -0
  203. package/es/chat-engine/components/json-render/catalog.d.ts +614 -0
  204. package/es/chat-engine/components/json-render/catalog.js +779 -0
  205. package/es/chat-engine/components/json-render/catalog.js.map +1 -0
  206. package/es/chat-engine/components/json-render/config.d.ts +154 -0
  207. package/es/chat-engine/components/json-render/config.js +36 -0
  208. package/es/chat-engine/components/json-render/config.js.map +1 -0
  209. package/es/chat-engine/components/json-render/contexts/actions.d.ts +79 -0
  210. package/es/chat-engine/components/json-render/contexts/actions.js +313 -0
  211. package/es/chat-engine/components/json-render/contexts/actions.js.map +1 -0
  212. package/es/chat-engine/components/json-render/contexts/data.d.ts +137 -0
  213. package/es/chat-engine/components/json-render/contexts/data.js +183 -0
  214. package/es/chat-engine/components/json-render/contexts/data.js.map +1 -0
  215. package/es/chat-engine/components/json-render/contexts/index.d.ts +4 -0
  216. package/es/chat-engine/components/json-render/contexts/index.js +27 -0
  217. package/es/chat-engine/components/json-render/contexts/index.js.map +1 -0
  218. package/es/chat-engine/components/json-render/contexts/store.d.ts +67 -0
  219. package/es/chat-engine/components/json-render/contexts/store.js +104 -0
  220. package/es/chat-engine/components/json-render/contexts/store.js.map +1 -0
  221. package/es/chat-engine/components/json-render/contexts/tree.d.ts +44 -0
  222. package/es/chat-engine/components/json-render/contexts/tree.js +78 -0
  223. package/es/chat-engine/components/json-render/contexts/tree.js.map +1 -0
  224. package/es/chat-engine/components/json-render/contexts/validation.d.ts +59 -0
  225. package/es/chat-engine/components/json-render/contexts/validation.js +159 -0
  226. package/es/chat-engine/components/json-render/contexts/validation.js.map +1 -0
  227. package/es/chat-engine/components/json-render/contexts/visibility.d.ts +39 -0
  228. package/es/chat-engine/components/json-render/contexts/visibility.js +66 -0
  229. package/es/chat-engine/components/json-render/contexts/visibility.js.map +1 -0
  230. package/es/chat-engine/components/json-render/engine.d.ts +58 -0
  231. package/es/chat-engine/components/json-render/engine.js +88 -0
  232. package/es/chat-engine/components/json-render/engine.js.map +1 -0
  233. package/es/chat-engine/components/json-render/index.d.ts +13 -0
  234. package/es/chat-engine/components/json-render/index.js +76 -0
  235. package/es/chat-engine/components/json-render/index.js.map +1 -0
  236. package/es/chat-engine/components/json-render/performance.d.ts +91 -0
  237. package/es/chat-engine/components/json-render/performance.js +135 -0
  238. package/es/chat-engine/components/json-render/performance.js.map +1 -0
  239. package/es/chat-engine/components/json-render/registry/a2ui-binding.d.ts +64 -0
  240. package/es/chat-engine/components/json-render/registry/a2ui-binding.js +76 -0
  241. package/es/chat-engine/components/json-render/registry/a2ui-binding.js.map +1 -0
  242. package/es/chat-engine/components/json-render/registry/a2ui-registry.d.ts +78 -0
  243. package/es/chat-engine/components/json-render/registry/a2ui-registry.js +76 -0
  244. package/es/chat-engine/components/json-render/registry/a2ui-registry.js.map +1 -0
  245. package/es/chat-engine/components/json-render/registry/config.d.ts +142 -0
  246. package/es/chat-engine/components/json-render/registry/config.js +76 -0
  247. package/es/chat-engine/components/json-render/registry/config.js.map +1 -0
  248. package/es/chat-engine/components/json-render/registry/index.d.ts +137 -0
  249. package/es/chat-engine/components/json-render/registry/index.js +76 -0
  250. package/es/chat-engine/components/json-render/registry/index.js.map +1 -0
  251. package/es/chat-engine/components/json-render/renderer/A2UIJsonRenderActivityRenderer.d.ts +35 -0
  252. package/es/chat-engine/components/json-render/renderer/A2UIJsonRenderActivityRenderer.js +271 -0
  253. package/es/chat-engine/components/json-render/renderer/A2UIJsonRenderActivityRenderer.js.map +1 -0
  254. package/es/chat-engine/components/json-render/renderer/JsonRenderActivityRenderer.d.ts +44 -0
  255. package/es/chat-engine/components/json-render/renderer/JsonRenderActivityRenderer.js +63 -0
  256. package/es/chat-engine/components/json-render/renderer/JsonRenderActivityRenderer.js.map +1 -0
  257. package/es/chat-engine/components/json-render/renderer/JsonUIRenderer.d.ts +44 -0
  258. package/es/chat-engine/components/json-render/renderer/JsonUIRenderer.js +131 -0
  259. package/es/chat-engine/components/json-render/renderer/JsonUIRenderer.js.map +1 -0
  260. package/es/chat-engine/components/json-render/renderer/_index.d.ts +71 -0
  261. package/es/chat-engine/components/json-render/renderer/_index.js +133 -0
  262. package/es/chat-engine/components/json-render/renderer/_index.js.map +1 -0
  263. package/es/chat-engine/components/json-render/renderer/index.d.ts +71 -0
  264. package/es/chat-engine/components/json-render/renderer/index.js +125 -0
  265. package/es/chat-engine/components/json-render/renderer/index.js.map +1 -0
  266. package/es/chat-engine/components/json-render/renderer.d.ts +71 -0
  267. package/es/chat-engine/components/json-render/renderer.js +124 -0
  268. package/es/chat-engine/components/json-render/renderer.js.map +1 -0
  269. package/es/chat-engine/components/json-render/types.d.ts +87 -0
  270. package/es/chat-engine/components/json-render/types.js +7 -0
  271. package/es/chat-engine/components/json-render/types.js.map +1 -0
  272. package/es/chat-engine/components/provider/agent-state.js +1 -1
  273. package/es/chat-engine/components/shared/ComponentErrorBoundary.d.ts +25 -0
  274. package/es/chat-engine/components/shared/ComponentErrorBoundary.js +58 -0
  275. package/es/chat-engine/components/shared/ComponentErrorBoundary.js.map +1 -0
  276. package/es/chat-engine/components/shared/createRegistry.d.ts +36 -0
  277. package/es/chat-engine/components/shared/createRegistry.js +72 -0
  278. package/es/chat-engine/components/shared/createRegistry.js.map +1 -0
  279. package/es/chat-engine/components/shared/index.d.ts +4 -0
  280. package/es/chat-engine/components/shared/index.js +18 -0
  281. package/es/chat-engine/components/shared/index.js.map +1 -0
  282. package/es/chat-engine/components/shared/useRegistrationListener.d.ts +22 -0
  283. package/es/chat-engine/components/shared/useRegistrationListener.js +45 -0
  284. package/es/chat-engine/components/shared/useRegistrationListener.js.map +1 -0
  285. package/es/chat-engine/components/toolcall/index.d.ts +1 -1
  286. package/es/chat-engine/components/toolcall/index.js +12 -8
  287. package/es/chat-engine/components/toolcall/index.js.map +1 -1
  288. package/es/chat-engine/components/toolcall/registry.d.ts +6 -32
  289. package/es/chat-engine/components/toolcall/registry.js +23 -67
  290. package/es/chat-engine/components/toolcall/registry.js.map +1 -1
  291. package/es/chat-engine/components/toolcall/render.d.ts +1 -1
  292. package/es/chat-engine/components/toolcall/render.js +30 -79
  293. package/es/chat-engine/components/toolcall/render.js.map +1 -1
  294. package/es/chat-engine/components/toolcall/types.js +1 -1
  295. package/es/chat-engine/core/a2ui/index.d.ts +10 -0
  296. package/es/chat-engine/core/a2ui/index.js +24 -0
  297. package/es/chat-engine/core/a2ui/index.js.map +1 -0
  298. package/es/chat-engine/core/a2ui/processor/A2uiMessageProcessor.d.ts +197 -0
  299. package/es/chat-engine/core/a2ui/processor/A2uiMessageProcessor.js +438 -0
  300. package/es/chat-engine/core/a2ui/processor/A2uiMessageProcessor.js.map +1 -0
  301. package/es/chat-engine/core/a2ui/processor/ComponentTree.d.ts +53 -0
  302. package/es/chat-engine/core/a2ui/processor/ComponentTree.js +158 -0
  303. package/es/chat-engine/core/a2ui/processor/ComponentTree.js.map +1 -0
  304. package/es/chat-engine/core/a2ui/processor/DataStore.d.ts +63 -0
  305. package/es/chat-engine/core/a2ui/processor/DataStore.js +172 -0
  306. package/es/chat-engine/core/a2ui/processor/DataStore.js.map +1 -0
  307. package/es/chat-engine/core/a2ui/processor/PathResolver.d.ts +47 -0
  308. package/es/chat-engine/core/a2ui/processor/PathResolver.js +99 -0
  309. package/es/chat-engine/core/a2ui/processor/PathResolver.js.map +1 -0
  310. package/es/chat-engine/core/a2ui/types/index.d.ts +4 -0
  311. package/es/chat-engine/core/a2ui/types/index.js +9 -0
  312. package/es/chat-engine/core/a2ui/types/index.js.map +1 -0
  313. package/es/chat-engine/core/a2ui/types/types.d.ts +770 -0
  314. package/es/chat-engine/core/a2ui/types/types.js +104 -0
  315. package/es/chat-engine/core/a2ui/types/types.js.map +1 -0
  316. package/es/chat-engine/core/a2ui/utils/binding.d.ts +34 -0
  317. package/es/chat-engine/core/a2ui/utils/binding.js +1784 -0
  318. package/es/chat-engine/core/a2ui/utils/binding.js.map +1 -0
  319. package/es/chat-engine/core/a2ui/utils/index.d.ts +5 -0
  320. package/es/chat-engine/core/a2ui/utils/index.js +13 -0
  321. package/es/chat-engine/core/a2ui/utils/index.js.map +1 -0
  322. package/es/chat-engine/core/a2ui/utils/validation.d.ts +70 -0
  323. package/es/chat-engine/core/a2ui/utils/validation.js +333 -0
  324. package/es/chat-engine/core/a2ui/utils/validation.js.map +1 -0
  325. package/es/chat-engine/core/adapters/a2ui/index.d.ts +10 -0
  326. package/es/chat-engine/core/adapters/a2ui/index.js +24 -0
  327. package/es/chat-engine/core/adapters/a2ui/index.js.map +1 -0
  328. package/es/chat-engine/core/adapters/a2ui/processor/A2uiMessageProcessor.d.ts +197 -0
  329. package/es/chat-engine/core/adapters/a2ui/processor/A2uiMessageProcessor.js +438 -0
  330. package/es/chat-engine/core/adapters/a2ui/processor/A2uiMessageProcessor.js.map +1 -0
  331. package/es/chat-engine/core/adapters/a2ui/processor/ComponentTree.d.ts +53 -0
  332. package/es/chat-engine/core/adapters/a2ui/processor/ComponentTree.js +158 -0
  333. package/es/chat-engine/core/adapters/a2ui/processor/ComponentTree.js.map +1 -0
  334. package/es/chat-engine/core/adapters/a2ui/processor/DataStore.d.ts +63 -0
  335. package/es/chat-engine/core/adapters/a2ui/processor/DataStore.js +172 -0
  336. package/es/chat-engine/core/adapters/a2ui/processor/DataStore.js.map +1 -0
  337. package/es/chat-engine/core/adapters/a2ui/processor/PathResolver.d.ts +47 -0
  338. package/es/chat-engine/core/adapters/a2ui/processor/PathResolver.js +99 -0
  339. package/es/chat-engine/core/adapters/a2ui/processor/PathResolver.js.map +1 -0
  340. package/es/chat-engine/core/adapters/a2ui/types/index.d.ts +4 -0
  341. package/es/chat-engine/core/adapters/a2ui/types/index.js +9 -0
  342. package/es/chat-engine/core/adapters/a2ui/types/index.js.map +1 -0
  343. package/es/chat-engine/core/adapters/a2ui/types/types.d.ts +770 -0
  344. package/es/chat-engine/core/adapters/a2ui/types/types.js +104 -0
  345. package/es/chat-engine/core/adapters/a2ui/types/types.js.map +1 -0
  346. package/es/chat-engine/core/adapters/a2ui/utils/binding.d.ts +34 -0
  347. package/es/chat-engine/core/adapters/a2ui/utils/binding.js +1784 -0
  348. package/es/chat-engine/core/adapters/a2ui/utils/binding.js.map +1 -0
  349. package/es/chat-engine/core/adapters/a2ui/utils/index.d.ts +5 -0
  350. package/es/chat-engine/core/adapters/a2ui/utils/index.js +13 -0
  351. package/es/chat-engine/core/adapters/a2ui/utils/index.js.map +1 -0
  352. package/es/chat-engine/core/adapters/a2ui/utils/validation.d.ts +70 -0
  353. package/es/chat-engine/core/adapters/a2ui/utils/validation.js +333 -0
  354. package/es/chat-engine/core/adapters/a2ui/utils/validation.js.map +1 -0
  355. package/es/chat-engine/core/adapters/agui/ActivityManager.d.ts +93 -0
  356. package/es/chat-engine/core/adapters/agui/ActivityManager.js +148 -0
  357. package/es/chat-engine/core/adapters/agui/ActivityManager.js.map +1 -0
  358. package/es/chat-engine/core/adapters/agui/StateManager.d.ts +99 -0
  359. package/es/chat-engine/core/adapters/agui/StateManager.js +172 -0
  360. package/es/chat-engine/core/adapters/agui/StateManager.js.map +1 -0
  361. package/es/chat-engine/core/adapters/agui/activity-manager.d.ts +102 -0
  362. package/es/chat-engine/core/adapters/agui/activity-manager.js +150 -0
  363. package/es/chat-engine/core/adapters/agui/activity-manager.js.map +1 -0
  364. package/es/chat-engine/core/adapters/agui/event-mapper.d.ts +42 -2
  365. package/es/chat-engine/core/adapters/agui/event-mapper.js +94 -52
  366. package/es/chat-engine/core/adapters/agui/event-mapper.js.map +1 -1
  367. package/es/chat-engine/core/adapters/agui/events.d.ts +222 -222
  368. package/es/chat-engine/core/adapters/agui/events.js +34 -34
  369. package/es/chat-engine/core/adapters/agui/events.js.map +1 -1
  370. package/es/chat-engine/core/adapters/agui/index.d.ts +21 -4
  371. package/es/chat-engine/core/adapters/agui/index.js +48 -23
  372. package/es/chat-engine/core/adapters/agui/index.js.map +1 -1
  373. package/es/chat-engine/core/adapters/agui/state-manager.js +7 -1
  374. package/es/chat-engine/core/adapters/agui/state-manager.js.map +1 -1
  375. package/es/chat-engine/core/adapters/agui/types/events.d.ts +1570 -0
  376. package/es/chat-engine/core/adapters/agui/types/events.js +15 -0
  377. package/es/chat-engine/core/adapters/agui/types/events.js.map +1 -0
  378. package/es/chat-engine/core/adapters/agui/types/index.d.ts +854 -0
  379. package/es/chat-engine/core/adapters/agui/types/index.js +279 -0
  380. package/es/chat-engine/core/adapters/agui/types/index.js.map +1 -0
  381. package/es/chat-engine/core/adapters/agui/types.d.ts +57 -56
  382. package/es/chat-engine/core/adapters/agui/types.js +5 -5
  383. package/es/chat-engine/core/adapters/agui/types.js.map +1 -1
  384. package/es/chat-engine/core/adapters/agui/utils.d.ts +9 -3
  385. package/es/chat-engine/core/adapters/agui/utils.js +23 -4
  386. package/es/chat-engine/core/adapters/agui/utils.js.map +1 -1
  387. package/es/chat-engine/core/adapters/index.d.ts +5 -0
  388. package/es/chat-engine/core/adapters/index.js +34 -0
  389. package/es/chat-engine/core/adapters/index.js.map +1 -0
  390. package/es/chat-engine/core/adapters/json-render/SurfaceStateManager.d.ts +114 -0
  391. package/es/chat-engine/core/adapters/json-render/SurfaceStateManager.js +194 -0
  392. package/es/chat-engine/core/adapters/json-render/SurfaceStateManager.js.map +1 -0
  393. package/es/chat-engine/core/adapters/json-render/a2ui-to-jsonrender.d.ts +49 -0
  394. package/es/chat-engine/core/adapters/json-render/a2ui-to-jsonrender.js +307 -0
  395. package/es/chat-engine/core/adapters/json-render/a2ui-to-jsonrender.js.map +1 -0
  396. package/es/chat-engine/core/adapters/json-render/engine.d.ts +58 -0
  397. package/es/chat-engine/core/adapters/json-render/engine.js +88 -0
  398. package/es/chat-engine/core/adapters/json-render/engine.js.map +1 -0
  399. package/es/chat-engine/core/adapters/json-render/index.d.ts +8 -0
  400. package/es/chat-engine/core/adapters/json-render/index.js +18 -0
  401. package/es/chat-engine/core/adapters/json-render/index.js.map +1 -0
  402. package/es/chat-engine/core/adapters/json-render/types/a2ui.d.ts +96 -0
  403. package/es/chat-engine/core/adapters/json-render/types/a2ui.js +7 -0
  404. package/es/chat-engine/core/adapters/json-render/types/a2ui.js.map +1 -0
  405. package/es/chat-engine/core/adapters/json-render/types/core.d.ts +49 -0
  406. package/es/chat-engine/core/adapters/json-render/types/core.js +7 -0
  407. package/es/chat-engine/core/adapters/json-render/types/core.js.map +1 -0
  408. package/es/chat-engine/core/adapters/json-render/types/index.d.ts +5 -0
  409. package/es/chat-engine/core/adapters/json-render/types/index.js +9 -0
  410. package/es/chat-engine/core/adapters/json-render/types/index.js.map +1 -0
  411. package/es/chat-engine/core/event-bus/ChatEventBus.d.ts +88 -0
  412. package/es/chat-engine/core/event-bus/ChatEventBus.js +295 -0
  413. package/es/chat-engine/core/event-bus/ChatEventBus.js.map +1 -0
  414. package/es/chat-engine/core/event-bus/index.d.ts +5 -0
  415. package/es/chat-engine/core/event-bus/index.js +13 -0
  416. package/es/chat-engine/core/event-bus/index.js.map +1 -0
  417. package/es/chat-engine/core/event-bus/types.d.ts +230 -0
  418. package/es/chat-engine/core/event-bus/types.js +32 -0
  419. package/es/chat-engine/core/event-bus/types.js.map +1 -0
  420. package/es/chat-engine/core/index.d.ts +17 -2
  421. package/es/chat-engine/core/index.js +185 -22
  422. package/es/chat-engine/core/index.js.map +1 -1
  423. package/es/chat-engine/core/processor/index.js +1 -1
  424. package/es/chat-engine/core/server/batch-client.js +1 -1
  425. package/es/chat-engine/core/server/connection-manager.js +1 -1
  426. package/es/chat-engine/core/server/errors.js +1 -1
  427. package/es/chat-engine/core/server/index.js +1 -1
  428. package/es/chat-engine/core/server/llm-service.js +4 -2
  429. package/es/chat-engine/core/server/llm-service.js.map +1 -1
  430. package/es/chat-engine/core/server/sse-client.js +1 -1
  431. package/es/chat-engine/core/server/sse-parser.js +1 -1
  432. package/es/chat-engine/core/server/types.js +1 -1
  433. package/es/chat-engine/core/store/message.js +6 -2
  434. package/es/chat-engine/core/store/message.js.map +1 -1
  435. package/es/chat-engine/core/store/model.js +2 -1
  436. package/es/chat-engine/core/store/model.js.map +1 -1
  437. package/es/chat-engine/core/store/reactiveState.d.ts +4 -0
  438. package/es/chat-engine/core/store/reactiveState.js +15 -1235
  439. package/es/chat-engine/core/store/reactiveState.js.map +1 -1
  440. package/es/chat-engine/core/type.d.ts +25 -1
  441. package/es/chat-engine/core/type.js +1 -1
  442. package/es/chat-engine/core/utils/eventEmitter.js +1 -1
  443. package/es/chat-engine/core/utils/immutable-patch.d.ts +61 -0
  444. package/es/chat-engine/core/utils/immutable-patch.js +147 -0
  445. package/es/chat-engine/core/utils/immutable-patch.js.map +1 -0
  446. package/es/chat-engine/core/utils/index.d.ts +7 -2
  447. package/es/chat-engine/core/utils/index.js +9 -883
  448. package/es/chat-engine/core/utils/index.js.map +1 -1
  449. package/es/chat-engine/core/utils/json-patch/helpers.d.ts +41 -0
  450. package/es/chat-engine/core/utils/json-patch/helpers.js +164 -0
  451. package/es/chat-engine/core/utils/json-patch/helpers.js.map +1 -0
  452. package/es/chat-engine/core/utils/json-patch/index.d.ts +115 -0
  453. package/es/chat-engine/core/utils/json-patch/index.js +387 -0
  454. package/es/chat-engine/core/utils/json-patch/index.js.map +1 -0
  455. package/es/chat-engine/core/utils/logger.js +1 -1
  456. package/es/chat-engine/core/utils/performance.d.ts +94 -0
  457. package/es/chat-engine/core/utils/performance.js +205 -0
  458. package/es/chat-engine/core/utils/performance.js.map +1 -0
  459. package/es/chat-engine/hooks/a2ui/A2UIContext.d.ts +90 -0
  460. package/es/chat-engine/hooks/a2ui/A2UIContext.js +97 -0
  461. package/es/chat-engine/hooks/a2ui/A2UIContext.js.map +1 -0
  462. package/es/chat-engine/hooks/a2ui/index.d.ts +12 -0
  463. package/es/chat-engine/hooks/a2ui/index.js +19 -0
  464. package/es/chat-engine/hooks/a2ui/index.js.map +1 -0
  465. package/es/chat-engine/hooks/a2ui/useA2UIAction.d.ts +40 -0
  466. package/es/chat-engine/hooks/a2ui/useA2UIAction.js +74 -0
  467. package/es/chat-engine/hooks/a2ui/useA2UIAction.js.map +1 -0
  468. package/es/chat-engine/hooks/a2ui/useA2UISurface.d.ts +36 -0
  469. package/es/chat-engine/hooks/a2ui/useA2UISurface.js +39 -0
  470. package/es/chat-engine/hooks/a2ui/useA2UISurface.js.map +1 -0
  471. package/es/chat-engine/hooks/a2ui/useDataBinding.d.ts +53 -0
  472. package/es/chat-engine/hooks/a2ui/useDataBinding.js +111 -0
  473. package/es/chat-engine/hooks/a2ui/useDataBinding.js.map +1 -0
  474. package/es/chat-engine/hooks/index.js +8 -1
  475. package/es/chat-engine/hooks/index.js.map +1 -1
  476. package/es/chat-engine/hooks/useAgentActivity.d.ts +1 -2
  477. package/es/chat-engine/hooks/useAgentActivity.js +10 -2
  478. package/es/chat-engine/hooks/useAgentActivity.js.map +1 -1
  479. package/es/chat-engine/hooks/useAgentState.js +1 -1
  480. package/es/chat-engine/hooks/useAgentState.js.map +1 -1
  481. package/es/chat-engine/hooks/useAgentToolcall.js +10 -2
  482. package/es/chat-engine/hooks/useAgentToolcall.js.map +1 -1
  483. package/es/chat-engine/hooks/useChat.d.ts +1 -1
  484. package/es/chat-engine/hooks/useChat.js +3 -3
  485. package/es/chat-engine/hooks/useChat.js.map +1 -1
  486. package/es/chat-engine/hooks/useJsonRenderActivity.d.ts +56 -0
  487. package/es/chat-engine/hooks/useJsonRenderActivity.js +63 -0
  488. package/es/chat-engine/hooks/useJsonRenderActivity.js.map +1 -0
  489. package/es/chat-engine/index.d.ts +2 -4
  490. package/es/chat-engine/index.js +14 -34
  491. package/es/chat-engine/index.js.map +1 -1
  492. package/es/chat-filecard/index.js +1 -1
  493. package/es/chat-loading/index.js +1 -1
  494. package/es/chat-markdown/index.js +1 -1
  495. package/es/chat-message/index.js +1 -1
  496. package/es/chat-sender/index.js +1 -1
  497. package/es/chat-thinking/index.js +1 -1
  498. package/es/chatbot/docs/react-best-practice.d.ts +13 -0
  499. package/es/chatbot/index.js +1 -1
  500. package/es/index.js +13 -31
  501. package/es/index.js.map +1 -1
  502. package/es/style/index.js +1 -1
  503. package/package.json +10 -5
@@ -0,0 +1,230 @@
1
+ /**
2
+ * ChatEngine 事件总线类型定义
3
+ */
4
+ import type { AIMessageContent, ChatMessagesData, ChatRequestParams, ChatStatus, ToolCall } from '../type';
5
+ /**
6
+ * 事件类型枚举
7
+ */
8
+ export declare enum ChatEngineEventType {
9
+ ENGINE_INIT = "engine:init",
10
+ ENGINE_DESTROY = "engine:destroy",
11
+ MESSAGE_CREATE = "message:create",
12
+ MESSAGE_UPDATE = "message:update",
13
+ MESSAGE_DELETE = "message:delete",
14
+ MESSAGE_CLEAR = "message:clear",
15
+ MESSAGE_STATUS_CHANGE = "message:status",
16
+ MESSAGE_CONTENT_APPEND = "message:content:append",
17
+ REQUEST_START = "request:start",
18
+ REQUEST_STREAM = "request:stream",
19
+ REQUEST_COMPLETE = "request:complete",
20
+ REQUEST_ERROR = "request:error",
21
+ REQUEST_ABORT = "request:abort",
22
+ AGUI_RUN_START = "agui:run:start",
23
+ AGUI_RUN_COMPLETE = "agui:run:complete",
24
+ AGUI_RUN_ERROR = "agui:run:error",
25
+ AGUI_STATE_UPDATE = "agui:state:update",
26
+ AGUI_TOOLCALL = "agui:toolcall",
27
+ AGUI_ACTIVITY = "agui:activity",
28
+ CUSTOM = "custom"
29
+ }
30
+ /**
31
+ * 事件载荷类型映射
32
+ */
33
+ export interface ChatEngineEventPayloadMap {
34
+ [ChatEngineEventType.ENGINE_INIT]: {
35
+ timestamp: number;
36
+ };
37
+ [ChatEngineEventType.ENGINE_DESTROY]: {
38
+ timestamp: number;
39
+ };
40
+ [ChatEngineEventType.MESSAGE_CREATE]: {
41
+ message: ChatMessagesData;
42
+ messages: ChatMessagesData[];
43
+ };
44
+ [ChatEngineEventType.MESSAGE_UPDATE]: {
45
+ messageId: string;
46
+ content: AIMessageContent | AIMessageContent[];
47
+ message: ChatMessagesData;
48
+ };
49
+ [ChatEngineEventType.MESSAGE_DELETE]: {
50
+ messageId: string;
51
+ messages: ChatMessagesData[];
52
+ };
53
+ [ChatEngineEventType.MESSAGE_CLEAR]: {
54
+ timestamp: number;
55
+ };
56
+ [ChatEngineEventType.MESSAGE_STATUS_CHANGE]: {
57
+ messageId: string;
58
+ status: ChatStatus;
59
+ previousStatus?: ChatStatus;
60
+ };
61
+ [ChatEngineEventType.MESSAGE_CONTENT_APPEND]: {
62
+ messageId: string;
63
+ content: AIMessageContent;
64
+ contentIndex: number;
65
+ };
66
+ [ChatEngineEventType.REQUEST_START]: {
67
+ params: ChatRequestParams;
68
+ messageId?: string;
69
+ };
70
+ [ChatEngineEventType.REQUEST_STREAM]: {
71
+ messageId: string;
72
+ chunk: unknown;
73
+ content?: AIMessageContent | AIMessageContent[] | null;
74
+ };
75
+ [ChatEngineEventType.REQUEST_COMPLETE]: {
76
+ messageId: string;
77
+ params: ChatRequestParams;
78
+ message: ChatMessagesData;
79
+ };
80
+ [ChatEngineEventType.REQUEST_ERROR]: {
81
+ messageId: string;
82
+ error: Error | unknown;
83
+ params?: ChatRequestParams;
84
+ };
85
+ [ChatEngineEventType.REQUEST_ABORT]: {
86
+ messageId: string;
87
+ params: ChatRequestParams;
88
+ };
89
+ [ChatEngineEventType.AGUI_RUN_START]: {
90
+ runId: string;
91
+ threadId?: string;
92
+ timestamp: number;
93
+ };
94
+ [ChatEngineEventType.AGUI_RUN_COMPLETE]: {
95
+ runId: string;
96
+ threadId?: string;
97
+ timestamp: number;
98
+ };
99
+ [ChatEngineEventType.AGUI_RUN_ERROR]: {
100
+ error: Error | unknown;
101
+ runId?: string;
102
+ };
103
+ [ChatEngineEventType.AGUI_STATE_UPDATE]: {
104
+ stateKey: string;
105
+ state: unknown;
106
+ previousState?: unknown;
107
+ };
108
+ [ChatEngineEventType.AGUI_TOOLCALL]: {
109
+ toolCall: ToolCall;
110
+ eventType: string;
111
+ };
112
+ [ChatEngineEventType.AGUI_ACTIVITY]: {
113
+ activityType: string;
114
+ messageId?: string;
115
+ content: unknown;
116
+ };
117
+ [ChatEngineEventType.CUSTOM]: {
118
+ eventName: string;
119
+ data: unknown;
120
+ };
121
+ }
122
+ /**
123
+ * 事件回调函数类型
124
+ */
125
+ export type EventCallback<T = unknown> = (payload: T) => void;
126
+ /**
127
+ * 取消订阅函数类型
128
+ */
129
+ export type UnsubscribeFn = () => void;
130
+ /**
131
+ * 事件过滤器类型
132
+ */
133
+ export type EventFilter<T = unknown> = (payload: T) => boolean;
134
+ /**
135
+ * 事件总线配置
136
+ */
137
+ export interface ChatEventBusOptions {
138
+ /**
139
+ * 是否启用调试模式
140
+ * @default false
141
+ */
142
+ debug?: boolean;
143
+ /**
144
+ * 最大监听器数量(每个事件)
145
+ * @default 100
146
+ */
147
+ maxListeners?: number;
148
+ /**
149
+ * 事件历史记录长度(用于调试)
150
+ * @default 0
151
+ */
152
+ historySize?: number;
153
+ }
154
+ /**
155
+ * 事件历史记录
156
+ */
157
+ export interface EventHistoryItem {
158
+ event: ChatEngineEventType | string;
159
+ payload: unknown;
160
+ timestamp: number;
161
+ }
162
+ /**
163
+ * 事件总线接口
164
+ */
165
+ export interface IChatEventBus {
166
+ /**
167
+ * 订阅事件
168
+ * @param event 事件类型
169
+ * @param callback 回调函数
170
+ * @returns 取消订阅函数
171
+ */
172
+ on<E extends ChatEngineEventType>(event: E, callback: EventCallback<ChatEngineEventPayloadMap[E]>): UnsubscribeFn;
173
+ /**
174
+ * 一次性订阅
175
+ * @param event 事件类型
176
+ * @param callback 回调函数
177
+ * @returns 取消订阅函数
178
+ */
179
+ once<E extends ChatEngineEventType>(event: E, callback: EventCallback<ChatEngineEventPayloadMap[E]>): UnsubscribeFn;
180
+ /**
181
+ * 取消订阅
182
+ * @param event 事件类型
183
+ * @param callback 可选的回调函数,不传则取消该事件所有订阅
184
+ */
185
+ off<E extends ChatEngineEventType>(event: E, callback?: EventCallback<ChatEngineEventPayloadMap[E]>): void;
186
+ /**
187
+ * 发布事件
188
+ * @param event 事件类型
189
+ * @param payload 事件载荷
190
+ */
191
+ emit<E extends ChatEngineEventType>(event: E, payload: ChatEngineEventPayloadMap[E]): void;
192
+ /**
193
+ * 等待事件(Promise 方式)
194
+ * @param event 事件类型
195
+ * @param timeout 超时时间(毫秒)
196
+ * @returns Promise
197
+ */
198
+ waitFor<E extends ChatEngineEventType>(event: E, timeout?: number): Promise<ChatEngineEventPayloadMap[E]>;
199
+ /**
200
+ * 带过滤条件的等待
201
+ * @param event 事件类型
202
+ * @param filter 过滤函数
203
+ * @param timeout 超时时间
204
+ */
205
+ waitForMatch<E extends ChatEngineEventType>(event: E, filter: EventFilter<ChatEngineEventPayloadMap[E]>, timeout?: number): Promise<ChatEngineEventPayloadMap[E]>;
206
+ /**
207
+ * 订阅自定义事件
208
+ * @param eventName 自定义事件名
209
+ * @param callback 回调函数
210
+ */
211
+ onCustom<T = unknown>(eventName: string, callback: EventCallback<T>): UnsubscribeFn;
212
+ /**
213
+ * 发布自定义事件
214
+ * @param eventName 自定义事件名
215
+ * @param data 数据
216
+ */
217
+ emitCustom<T = unknown>(eventName: string, data: T): void;
218
+ /**
219
+ * 获取事件历史记录
220
+ */
221
+ getHistory(): EventHistoryItem[];
222
+ /**
223
+ * 清理所有订阅
224
+ */
225
+ clear(): void;
226
+ /**
227
+ * 销毁事件总线
228
+ */
229
+ destroy(): void;
230
+ }
@@ -0,0 +1,32 @@
1
+ /**
2
+ * tdesign v1.1.0-alpha.11
3
+ * (c) 2026 tdesign
4
+ * @license MIT
5
+ */
6
+
7
+ var ChatEngineEventType = /* @__PURE__ */function (ChatEngineEventType2) {
8
+ ChatEngineEventType2["ENGINE_INIT"] = "engine:init";
9
+ ChatEngineEventType2["ENGINE_DESTROY"] = "engine:destroy";
10
+ ChatEngineEventType2["MESSAGE_CREATE"] = "message:create";
11
+ ChatEngineEventType2["MESSAGE_UPDATE"] = "message:update";
12
+ ChatEngineEventType2["MESSAGE_DELETE"] = "message:delete";
13
+ ChatEngineEventType2["MESSAGE_CLEAR"] = "message:clear";
14
+ ChatEngineEventType2["MESSAGE_STATUS_CHANGE"] = "message:status";
15
+ ChatEngineEventType2["MESSAGE_CONTENT_APPEND"] = "message:content:append";
16
+ ChatEngineEventType2["REQUEST_START"] = "request:start";
17
+ ChatEngineEventType2["REQUEST_STREAM"] = "request:stream";
18
+ ChatEngineEventType2["REQUEST_COMPLETE"] = "request:complete";
19
+ ChatEngineEventType2["REQUEST_ERROR"] = "request:error";
20
+ ChatEngineEventType2["REQUEST_ABORT"] = "request:abort";
21
+ ChatEngineEventType2["AGUI_RUN_START"] = "agui:run:start";
22
+ ChatEngineEventType2["AGUI_RUN_COMPLETE"] = "agui:run:complete";
23
+ ChatEngineEventType2["AGUI_RUN_ERROR"] = "agui:run:error";
24
+ ChatEngineEventType2["AGUI_STATE_UPDATE"] = "agui:state:update";
25
+ ChatEngineEventType2["AGUI_TOOLCALL"] = "agui:toolcall";
26
+ ChatEngineEventType2["AGUI_ACTIVITY"] = "agui:activity";
27
+ ChatEngineEventType2["CUSTOM"] = "custom";
28
+ return ChatEngineEventType2;
29
+ }(ChatEngineEventType || {});
30
+
31
+ export { ChatEngineEventType };
32
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sources":["../../../../../pro-components/chat/chat-engine/core/event-bus/types.ts"],"sourcesContent":["/**\n * ChatEngine 事件总线类型定义\n */\nimport type { AIMessageContent, ChatMessagesData, ChatRequestParams, ChatStatus, ToolCall } from '../type';\n\n/**\n * 事件类型枚举\n */\nexport enum ChatEngineEventType {\n // 生命周期事件\n ENGINE_INIT = 'engine:init',\n ENGINE_DESTROY = 'engine:destroy',\n\n // 消息事件\n MESSAGE_CREATE = 'message:create',\n MESSAGE_UPDATE = 'message:update',\n MESSAGE_DELETE = 'message:delete',\n MESSAGE_CLEAR = 'message:clear',\n MESSAGE_STATUS_CHANGE = 'message:status',\n MESSAGE_CONTENT_APPEND = 'message:content:append',\n\n // 请求事件\n REQUEST_START = 'request:start',\n REQUEST_STREAM = 'request:stream',\n REQUEST_COMPLETE = 'request:complete',\n REQUEST_ERROR = 'request:error',\n REQUEST_ABORT = 'request:abort',\n\n // AG-UI 协议事件\n AGUI_RUN_START = 'agui:run:start',\n AGUI_RUN_COMPLETE = 'agui:run:complete',\n AGUI_RUN_ERROR = 'agui:run:error',\n AGUI_STATE_UPDATE = 'agui:state:update',\n AGUI_TOOLCALL = 'agui:toolcall',\n AGUI_ACTIVITY = 'agui:activity',\n\n // 自定义事件\n CUSTOM = 'custom',\n}\n\n/**\n * 事件载荷类型映射\n */\nexport interface ChatEngineEventPayloadMap {\n // 生命周期事件\n [ChatEngineEventType.ENGINE_INIT]: {\n timestamp: number;\n };\n [ChatEngineEventType.ENGINE_DESTROY]: {\n timestamp: number;\n };\n\n // 消息事件\n [ChatEngineEventType.MESSAGE_CREATE]: {\n message: ChatMessagesData;\n messages: ChatMessagesData[];\n };\n [ChatEngineEventType.MESSAGE_UPDATE]: {\n messageId: string;\n content: AIMessageContent | AIMessageContent[];\n message: ChatMessagesData;\n };\n [ChatEngineEventType.MESSAGE_DELETE]: {\n messageId: string;\n messages: ChatMessagesData[];\n };\n [ChatEngineEventType.MESSAGE_CLEAR]: {\n timestamp: number;\n };\n [ChatEngineEventType.MESSAGE_STATUS_CHANGE]: {\n messageId: string;\n status: ChatStatus;\n previousStatus?: ChatStatus;\n };\n [ChatEngineEventType.MESSAGE_CONTENT_APPEND]: {\n messageId: string;\n content: AIMessageContent;\n contentIndex: number;\n };\n\n // 请求事件\n [ChatEngineEventType.REQUEST_START]: {\n params: ChatRequestParams;\n messageId?: string;\n };\n [ChatEngineEventType.REQUEST_STREAM]: {\n messageId: string;\n chunk: unknown;\n content?: AIMessageContent | AIMessageContent[] | null;\n };\n [ChatEngineEventType.REQUEST_COMPLETE]: {\n messageId: string;\n params: ChatRequestParams;\n message: ChatMessagesData;\n };\n [ChatEngineEventType.REQUEST_ERROR]: {\n messageId: string;\n error: Error | unknown;\n params?: ChatRequestParams;\n };\n [ChatEngineEventType.REQUEST_ABORT]: {\n messageId: string;\n params: ChatRequestParams;\n };\n\n // AG-UI 协议事件\n [ChatEngineEventType.AGUI_RUN_START]: {\n runId: string;\n threadId?: string;\n timestamp: number;\n };\n [ChatEngineEventType.AGUI_RUN_COMPLETE]: {\n runId: string;\n threadId?: string;\n timestamp: number;\n };\n [ChatEngineEventType.AGUI_RUN_ERROR]: {\n error: Error | unknown;\n runId?: string;\n };\n [ChatEngineEventType.AGUI_STATE_UPDATE]: {\n stateKey: string;\n state: unknown;\n previousState?: unknown;\n };\n [ChatEngineEventType.AGUI_TOOLCALL]: {\n toolCall: ToolCall;\n eventType: string;\n };\n [ChatEngineEventType.AGUI_ACTIVITY]: {\n activityType: string;\n messageId?: string;\n content: unknown;\n };\n\n // 自定义事件\n [ChatEngineEventType.CUSTOM]: {\n eventName: string;\n data: unknown;\n };\n}\n\n/**\n * 事件回调函数类型\n */\nexport type EventCallback<T = unknown> = (payload: T) => void;\n\n/**\n * 取消订阅函数类型\n */\nexport type UnsubscribeFn = () => void;\n\n/**\n * 事件过滤器类型\n */\nexport type EventFilter<T = unknown> = (payload: T) => boolean;\n\n/**\n * 事件总线配置\n */\nexport interface ChatEventBusOptions {\n /**\n * 是否启用调试模式\n * @default false\n */\n debug?: boolean;\n /**\n * 最大监听器数量(每个事件)\n * @default 100\n */\n maxListeners?: number;\n /**\n * 事件历史记录长度(用于调试)\n * @default 0\n */\n historySize?: number;\n}\n\n/**\n * 事件历史记录\n */\nexport interface EventHistoryItem {\n event: ChatEngineEventType | string;\n payload: unknown;\n timestamp: number;\n}\n\n/**\n * 事件总线接口\n */\nexport interface IChatEventBus {\n /**\n * 订阅事件\n * @param event 事件类型\n * @param callback 回调函数\n * @returns 取消订阅函数\n */\n on<E extends ChatEngineEventType>(event: E, callback: EventCallback<ChatEngineEventPayloadMap[E]>): UnsubscribeFn;\n\n /**\n * 一次性订阅\n * @param event 事件类型\n * @param callback 回调函数\n * @returns 取消订阅函数\n */\n once<E extends ChatEngineEventType>(event: E, callback: EventCallback<ChatEngineEventPayloadMap[E]>): UnsubscribeFn;\n\n /**\n * 取消订阅\n * @param event 事件类型\n * @param callback 可选的回调函数,不传则取消该事件所有订阅\n */\n off<E extends ChatEngineEventType>(event: E, callback?: EventCallback<ChatEngineEventPayloadMap[E]>): void;\n\n /**\n * 发布事件\n * @param event 事件类型\n * @param payload 事件载荷\n */\n emit<E extends ChatEngineEventType>(event: E, payload: ChatEngineEventPayloadMap[E]): void;\n\n /**\n * 等待事件(Promise 方式)\n * @param event 事件类型\n * @param timeout 超时时间(毫秒)\n * @returns Promise\n */\n waitFor<E extends ChatEngineEventType>(event: E, timeout?: number): Promise<ChatEngineEventPayloadMap[E]>;\n\n /**\n * 带过滤条件的等待\n * @param event 事件类型\n * @param filter 过滤函数\n * @param timeout 超时时间\n */\n waitForMatch<E extends ChatEngineEventType>(\n event: E,\n filter: EventFilter<ChatEngineEventPayloadMap[E]>,\n timeout?: number,\n ): Promise<ChatEngineEventPayloadMap[E]>;\n\n /**\n * 订阅自定义事件\n * @param eventName 自定义事件名\n * @param callback 回调函数\n */\n onCustom<T = unknown>(eventName: string, callback: EventCallback<T>): UnsubscribeFn;\n\n /**\n * 发布自定义事件\n * @param eventName 自定义事件名\n * @param data 数据\n */\n emitCustom<T = unknown>(eventName: string, data: T): void;\n\n /**\n * 获取事件历史记录\n */\n getHistory(): EventHistoryItem[];\n\n /**\n * 清理所有订阅\n */\n clear(): void;\n\n /**\n * 销毁事件总线\n */\n destroy(): void;\n}\n"],"names":["ChatEngineEventType"],"mappings":";;;;;;IAQYA,mBAAA,4BAAAA,oBAAL,EAAA;AAELA,EAAAA,qBAAA,aAAc,CAAA,GAAA,aAAA,CAAA;AACdA,EAAAA,qBAAA,gBAAiB,CAAA,GAAA,gBAAA,CAAA;AAGjBA,EAAAA,qBAAA,gBAAiB,CAAA,GAAA,gBAAA,CAAA;AACjBA,EAAAA,qBAAA,gBAAiB,CAAA,GAAA,gBAAA,CAAA;AACjBA,EAAAA,qBAAA,gBAAiB,CAAA,GAAA,gBAAA,CAAA;AACjBA,EAAAA,qBAAA,eAAgB,CAAA,GAAA,eAAA,CAAA;AAChBA,EAAAA,qBAAA,uBAAwB,CAAA,GAAA,gBAAA,CAAA;AACxBA,EAAAA,qBAAA,wBAAyB,CAAA,GAAA,wBAAA,CAAA;AAGzBA,EAAAA,qBAAA,eAAgB,CAAA,GAAA,eAAA,CAAA;AAChBA,EAAAA,qBAAA,gBAAiB,CAAA,GAAA,gBAAA,CAAA;AACjBA,EAAAA,qBAAA,kBAAmB,CAAA,GAAA,kBAAA,CAAA;AACnBA,EAAAA,qBAAA,eAAgB,CAAA,GAAA,eAAA,CAAA;AAChBA,EAAAA,qBAAA,eAAgB,CAAA,GAAA,eAAA,CAAA;AAGhBA,EAAAA,qBAAA,gBAAiB,CAAA,GAAA,gBAAA,CAAA;AACjBA,EAAAA,qBAAA,mBAAoB,CAAA,GAAA,mBAAA,CAAA;AACpBA,EAAAA,qBAAA,gBAAiB,CAAA,GAAA,gBAAA,CAAA;AACjBA,EAAAA,qBAAA,mBAAoB,CAAA,GAAA,mBAAA,CAAA;AACpBA,EAAAA,qBAAA,eAAgB,CAAA,GAAA,eAAA,CAAA;AAChBA,EAAAA,qBAAA,eAAgB,CAAA,GAAA,eAAA,CAAA;AAGhBA,EAAAA,qBAAA,QAAS,CAAA,GAAA,QAAA,CAAA;AA7BCA,EAAAA,OAAAA,oBAAAA,CAAAA;AAAA,CAAA,CAAAA,mBAAA,IAAA,EAAA;;;;"}
@@ -1,14 +1,20 @@
1
1
  import { MessageStore } from './store/message';
2
+ import type { ChatEventBusOptions, IChatEventBus } from './event-bus';
2
3
  import type { AIMessageContent, ChatMessagesData, ChatMessageSetterMode, ChatRequestParams, ChatServiceConfigSetter, ChatStatus, IChatEngine, ToolCall } from './type';
3
4
  export default class ChatEngine implements IChatEngine {
4
5
  messageStore: MessageStore;
6
+ /**
7
+ * 事件总线实例
8
+ * @description 用于发布/订阅引擎事件,支持无 UI 场景下的事件分发
9
+ */
10
+ readonly eventBus: IChatEventBus;
5
11
  private messageProcessor;
6
12
  private llmService;
7
13
  private config;
8
14
  private lastRequestParams;
9
15
  private stopReceive;
10
16
  private aguiAdapter;
11
- constructor();
17
+ constructor(eventBusOptions?: ChatEventBusOptions);
12
18
  /**
13
19
  * 获取当前所有消息
14
20
  * @returns 消息数组
@@ -108,6 +114,7 @@ export default class ChatEngine implements IChatEngine {
108
114
  /**
109
115
  * 处理流式请求
110
116
  * 根据协议类型选择不同的处理策略
117
+ * SSE 原始数据 → isValidChunk验证 → onMessage解析 → processMessageResult
111
118
  */
112
119
  private handleStreamRequest;
113
120
  /**
@@ -123,10 +130,18 @@ export default class ChatEngine implements IChatEngine {
123
130
  * 支持单个内容块、多个内容块和增量更新
124
131
  */
125
132
  private processMessageResult;
133
+ /**
134
+ * 发布 AG-UI 细粒度事件
135
+ * 根据内容类型分发到对应的事件通道
136
+ * todo: 这里的类型 any问题
137
+ */
138
+ private emitAGUIDetailEvents;
126
139
  private convertMessages;
127
140
  private setMessageStatus;
128
141
  private processContentUpdate;
129
142
  }
130
143
  export * from './utils';
131
- export * from './adapters/agui';
144
+ export * from './adapters';
145
+ export * from './event-bus';
146
+ export * from './adapters';
132
147
  export type * from './type';