stream-chat-react-native-core 9.12.1 → 9.14.0

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 (939) hide show
  1. package/a2ui/package.json +6 -0
  2. package/ai-components/conversation/package.json +6 -0
  3. package/lib/commonjs/a11y/a11yUtils.js.map +1 -1
  4. package/lib/commonjs/a11y/hooks/useResolvedModalAccessibilityProps.js.map +1 -1
  5. package/lib/commonjs/a2ui/A2UIContexts.js +8 -0
  6. package/lib/commonjs/a2ui/A2UIContexts.js.map +1 -0
  7. package/lib/commonjs/a2ui/A2UIInstructions.js +49 -0
  8. package/lib/commonjs/a2ui/A2UIInstructions.js.map +1 -0
  9. package/lib/commonjs/a2ui/A2UIPlaceholder.js +37 -0
  10. package/lib/commonjs/a2ui/A2UIPlaceholder.js.map +1 -0
  11. package/lib/commonjs/a2ui/A2UIRenderer.js +363 -0
  12. package/lib/commonjs/a2ui/A2UIRenderer.js.map +1 -0
  13. package/lib/commonjs/a2ui/A2UIStream.js +91 -0
  14. package/lib/commonjs/a2ui/A2UIStream.js.map +1 -0
  15. package/lib/commonjs/a2ui/A2UISurface.js +237 -0
  16. package/lib/commonjs/a2ui/A2UISurface.js.map +1 -0
  17. package/lib/commonjs/a2ui/basicCatalog.json +1206 -0
  18. package/lib/commonjs/a2ui/basicFunctions.js +398 -0
  19. package/lib/commonjs/a2ui/basicFunctions.js.map +1 -0
  20. package/lib/commonjs/a2ui/catalogDocument.js +80 -0
  21. package/lib/commonjs/a2ui/catalogDocument.js.map +1 -0
  22. package/lib/commonjs/a2ui/catalogs.js +105 -0
  23. package/lib/commonjs/a2ui/catalogs.js.map +1 -0
  24. package/lib/commonjs/a2ui/components/DateTimeInput.js +445 -0
  25. package/lib/commonjs/a2ui/components/DateTimeInput.js.map +1 -0
  26. package/lib/commonjs/a2ui/components/Media.js +316 -0
  27. package/lib/commonjs/a2ui/components/Media.js.map +1 -0
  28. package/lib/commonjs/a2ui/components/basicComponents.js +975 -0
  29. package/lib/commonjs/a2ui/components/basicComponents.js.map +1 -0
  30. package/lib/commonjs/a2ui/components/iconPaths.js +66 -0
  31. package/lib/commonjs/a2ui/components/iconPaths.js.map +1 -0
  32. package/lib/commonjs/a2ui/components/types.js +4 -0
  33. package/lib/commonjs/a2ui/components/types.js.map +1 -0
  34. package/lib/commonjs/a2ui/index.js +70 -0
  35. package/lib/commonjs/a2ui/index.js.map +1 -0
  36. package/lib/commonjs/a2ui/instructions.js +268 -0
  37. package/lib/commonjs/a2ui/instructions.js.map +1 -0
  38. package/lib/commonjs/a2ui/secrets.js +169 -0
  39. package/lib/commonjs/a2ui/secrets.js.map +1 -0
  40. package/lib/commonjs/a2ui/useReplyState.js +35 -0
  41. package/lib/commonjs/a2ui/useReplyState.js.map +1 -0
  42. package/lib/commonjs/ai-components/AITypingIndicatorView.js +8 -18
  43. package/lib/commonjs/ai-components/AITypingIndicatorView.js.map +1 -1
  44. package/lib/commonjs/ai-components/README.md +64 -3
  45. package/lib/commonjs/ai-components/StreamingMessageView.js +26 -0
  46. package/lib/commonjs/ai-components/StreamingMessageView.js.map +1 -1
  47. package/lib/commonjs/ai-components/charts/components/PieLegend.js +2 -1
  48. package/lib/commonjs/ai-components/charts/components/PieLegend.js.map +1 -1
  49. package/lib/commonjs/ai-components/charts/components/VictoryChart.js +7 -2
  50. package/lib/commonjs/ai-components/charts/components/VictoryChart.js.map +1 -1
  51. package/lib/commonjs/ai-components/charts/utils/format-time-label.js +15 -0
  52. package/lib/commonjs/ai-components/charts/utils/format-time-label.js.map +1 -0
  53. package/lib/commonjs/ai-components/charts/vega-lite/schema.js +17 -2
  54. package/lib/commonjs/ai-components/charts/vega-lite/schema.js.map +1 -1
  55. package/lib/commonjs/ai-components/contexts/composer-context.js +13 -6
  56. package/lib/commonjs/ai-components/contexts/composer-context.js.map +1 -1
  57. package/lib/commonjs/ai-components/contexts/index.js +11 -0
  58. package/lib/commonjs/ai-components/contexts/index.js.map +1 -1
  59. package/lib/commonjs/ai-components/contexts/theme-context.js +33 -2
  60. package/lib/commonjs/ai-components/contexts/theme-context.js.map +1 -1
  61. package/lib/commonjs/ai-components/contexts/translation-context.js +29 -0
  62. package/lib/commonjs/ai-components/contexts/translation-context.js.map +1 -0
  63. package/lib/commonjs/ai-components/conversation/AIConversation.js +374 -0
  64. package/lib/commonjs/ai-components/conversation/AIConversation.js.map +1 -0
  65. package/lib/commonjs/ai-components/conversation/entries.js +98 -0
  66. package/lib/commonjs/ai-components/conversation/entries.js.map +1 -0
  67. package/lib/commonjs/ai-components/conversation/index.js +15 -0
  68. package/lib/commonjs/ai-components/conversation/index.js.map +1 -0
  69. package/lib/commonjs/ai-components/conversation/list/AIChatList.js +224 -0
  70. package/lib/commonjs/ai-components/conversation/list/AIChatList.js.map +1 -0
  71. package/lib/commonjs/ai-components/conversation/list/useChatListController.js +78 -0
  72. package/lib/commonjs/ai-components/conversation/list/useChatListController.js.map +1 -0
  73. package/lib/commonjs/ai-components/conversation/list/useEndInView.js +51 -0
  74. package/lib/commonjs/ai-components/conversation/list/useEndInView.js.map +1 -0
  75. package/lib/commonjs/ai-components/conversation/list/useKeyboardOverlap.js +53 -0
  76. package/lib/commonjs/ai-components/conversation/list/useKeyboardOverlap.js.map +1 -0
  77. package/lib/commonjs/ai-components/conversation/list/useLoadOlder.js +73 -0
  78. package/lib/commonjs/ai-components/conversation/list/useLoadOlder.js.map +1 -0
  79. package/lib/commonjs/ai-components/conversation/list/usePinnedAnchor.js +84 -0
  80. package/lib/commonjs/ai-components/conversation/list/usePinnedAnchor.js.map +1 -0
  81. package/lib/commonjs/ai-components/conversation/useConversationRows.js +117 -0
  82. package/lib/commonjs/ai-components/conversation/useConversationRows.js.map +1 -0
  83. package/lib/commonjs/ai-components/conversation-state/controller/AIAgentError.js +13 -0
  84. package/lib/commonjs/ai-components/conversation-state/controller/AIAgentError.js.map +1 -0
  85. package/lib/commonjs/ai-components/conversation-state/controller/AIConversationController.js +431 -0
  86. package/lib/commonjs/ai-components/conversation-state/controller/AIConversationController.js.map +1 -0
  87. package/lib/commonjs/ai-components/conversation-state/controller/AIConversationExchange.js +89 -0
  88. package/lib/commonjs/ai-components/conversation-state/controller/AIConversationExchange.js.map +1 -0
  89. package/lib/commonjs/ai-components/conversation-state/controller/index.js +48 -0
  90. package/lib/commonjs/ai-components/conversation-state/controller/index.js.map +1 -0
  91. package/lib/commonjs/ai-components/conversation-state/controller/offers.js +35 -0
  92. package/lib/commonjs/ai-components/conversation-state/controller/offers.js.map +1 -0
  93. package/lib/commonjs/ai-components/conversation-state/controller/types.js +13 -0
  94. package/lib/commonjs/ai-components/conversation-state/controller/types.js.map +1 -0
  95. package/lib/commonjs/ai-components/conversation-state/controller/useAIConversationState.js +8 -0
  96. package/lib/commonjs/ai-components/conversation-state/controller/useAIConversationState.js.map +1 -0
  97. package/lib/commonjs/ai-components/conversation-state/fromStreamMessage.js +67 -0
  98. package/lib/commonjs/ai-components/conversation-state/fromStreamMessage.js.map +1 -0
  99. package/lib/commonjs/ai-components/conversation-state/index.js +37 -0
  100. package/lib/commonjs/ai-components/conversation-state/index.js.map +1 -0
  101. package/lib/commonjs/ai-components/conversation-state/types.js +4 -0
  102. package/lib/commonjs/ai-components/conversation-state/types.js.map +1 -0
  103. package/lib/commonjs/ai-components/generative-ui/AIUIAction.js +30 -0
  104. package/lib/commonjs/ai-components/generative-ui/AIUIAction.js.map +1 -0
  105. package/lib/commonjs/ai-components/generative-ui/AIUIArguments.js +128 -0
  106. package/lib/commonjs/ai-components/generative-ui/AIUIArguments.js.map +1 -0
  107. package/lib/commonjs/ai-components/generative-ui/AIUIComponent.js +50 -0
  108. package/lib/commonjs/ai-components/generative-ui/AIUIComponent.js.map +1 -0
  109. package/lib/commonjs/ai-components/generative-ui/AIUIComponentDefinition.js +134 -0
  110. package/lib/commonjs/ai-components/generative-ui/AIUIComponentDefinition.js.map +1 -0
  111. package/lib/commonjs/ai-components/generative-ui/AIUIDocument.js +32 -0
  112. package/lib/commonjs/ai-components/generative-ui/AIUIDocument.js.map +1 -0
  113. package/lib/commonjs/ai-components/generative-ui/AIUIEntrance.js +197 -0
  114. package/lib/commonjs/ai-components/generative-ui/AIUIEntrance.js.map +1 -0
  115. package/lib/commonjs/ai-components/generative-ui/AIUIErrorBoundary.js +30 -0
  116. package/lib/commonjs/ai-components/generative-ui/AIUIErrorBoundary.js.map +1 -0
  117. package/lib/commonjs/ai-components/generative-ui/AIUIHelpers.js +54 -0
  118. package/lib/commonjs/ai-components/generative-ui/AIUIHelpers.js.map +1 -0
  119. package/lib/commonjs/ai-components/generative-ui/AIUIHost.js +259 -0
  120. package/lib/commonjs/ai-components/generative-ui/AIUIHost.js.map +1 -0
  121. package/lib/commonjs/ai-components/generative-ui/AIUIMedia.js +24 -0
  122. package/lib/commonjs/ai-components/generative-ui/AIUIMedia.js.map +1 -0
  123. package/lib/commonjs/ai-components/generative-ui/AIUIRenderer.js +10 -0
  124. package/lib/commonjs/ai-components/generative-ui/AIUIRenderer.js.map +1 -0
  125. package/lib/commonjs/ai-components/generative-ui/AIUIView.js +57 -0
  126. package/lib/commonjs/ai-components/generative-ui/AIUIView.js.map +1 -0
  127. package/lib/commonjs/ai-components/generative-ui/index.js +181 -0
  128. package/lib/commonjs/ai-components/generative-ui/index.js.map +1 -0
  129. package/lib/commonjs/ai-components/icons.js +44 -0
  130. package/lib/commonjs/ai-components/icons.js.map +1 -0
  131. package/lib/commonjs/ai-components/index.js +96 -0
  132. package/lib/commonjs/ai-components/index.js.map +1 -1
  133. package/lib/commonjs/ai-components/internal/Shimmer.js +36 -0
  134. package/lib/commonjs/ai-components/internal/Shimmer.js.map +1 -0
  135. package/lib/commonjs/ai-components/internal/format.js +66 -0
  136. package/lib/commonjs/ai-components/internal/format.js.map +1 -0
  137. package/lib/commonjs/ai-components/internal/hooks/useBottomSafeArea.js +12 -0
  138. package/lib/commonjs/ai-components/internal/hooks/useBottomSafeArea.js.map +1 -0
  139. package/lib/commonjs/ai-components/internal/icons/AgentIcons.js +74 -0
  140. package/lib/commonjs/ai-components/internal/icons/AgentIcons.js.map +1 -0
  141. package/lib/commonjs/ai-components/internal/keyboard.js +40 -0
  142. package/lib/commonjs/ai-components/internal/keyboard.js.map +1 -0
  143. package/lib/commonjs/ai-components/internal/tokens.js +11 -0
  144. package/lib/commonjs/ai-components/internal/tokens.js.map +1 -0
  145. package/lib/commonjs/ai-components/internal/uuid.js +21 -0
  146. package/lib/commonjs/ai-components/internal/uuid.js.map +1 -0
  147. package/lib/commonjs/ai-components/markdown/components/CodeBlock.js +4 -2
  148. package/lib/commonjs/ai-components/markdown/components/CodeBlock.js.map +1 -1
  149. package/lib/commonjs/ai-components/markdown/components/InlineCode.js +1 -0
  150. package/lib/commonjs/ai-components/markdown/components/InlineCode.js.map +1 -1
  151. package/lib/commonjs/ai-components/markdown/components/Text.js +11 -2
  152. package/lib/commonjs/ai-components/markdown/components/Text.js.map +1 -1
  153. package/lib/commonjs/ai-components/markdown/styles.js +27 -29
  154. package/lib/commonjs/ai-components/markdown/styles.js.map +1 -1
  155. package/lib/commonjs/ai-components/message/AIAssistantMessage.js +64 -0
  156. package/lib/commonjs/ai-components/message/AIAssistantMessage.js.map +1 -0
  157. package/lib/commonjs/ai-components/message/AIMessageAttachment.js +189 -0
  158. package/lib/commonjs/ai-components/message/AIMessageAttachment.js.map +1 -0
  159. package/lib/commonjs/ai-components/message/AIReplyActions.js +132 -0
  160. package/lib/commonjs/ai-components/message/AIReplyActions.js.map +1 -0
  161. package/lib/commonjs/ai-components/message/AIUserMessage.js +104 -0
  162. package/lib/commonjs/ai-components/message/AIUserMessage.js.map +1 -0
  163. package/lib/commonjs/ai-components/message/UserMessageMenu.js +150 -0
  164. package/lib/commonjs/ai-components/message/UserMessageMenu.js.map +1 -0
  165. package/lib/commonjs/ai-components/message/index.js +48 -0
  166. package/lib/commonjs/ai-components/message/index.js.map +1 -0
  167. package/lib/commonjs/ai-components/message-composer/ActionButton.js +4 -2
  168. package/lib/commonjs/ai-components/message-composer/ActionButton.js.map +1 -1
  169. package/lib/commonjs/ai-components/message-composer/ActionSheet.js +22 -6
  170. package/lib/commonjs/ai-components/message-composer/ActionSheet.js.map +1 -1
  171. package/lib/commonjs/ai-components/message-composer/AttachmentButton.js +5 -1
  172. package/lib/commonjs/ai-components/message-composer/AttachmentButton.js.map +1 -1
  173. package/lib/commonjs/ai-components/message-composer/ChatOptions.js +147 -0
  174. package/lib/commonjs/ai-components/message-composer/ChatOptions.js.map +1 -0
  175. package/lib/commonjs/ai-components/message-composer/ComposerView.js +146 -20
  176. package/lib/commonjs/ai-components/message-composer/ComposerView.js.map +1 -1
  177. package/lib/commonjs/ai-components/message-composer/EditingMessageChip.js +81 -0
  178. package/lib/commonjs/ai-components/message-composer/EditingMessageChip.js.map +1 -0
  179. package/lib/commonjs/ai-components/message-composer/MediaPreviewList.js +26 -1
  180. package/lib/commonjs/ai-components/message-composer/MediaPreviewList.js.map +1 -1
  181. package/lib/commonjs/ai-components/message-composer/index.js +11 -0
  182. package/lib/commonjs/ai-components/message-composer/index.js.map +1 -1
  183. package/lib/commonjs/ai-components/message-parts/AIMessageParts.js +133 -0
  184. package/lib/commonjs/ai-components/message-parts/AIMessageParts.js.map +1 -0
  185. package/lib/commonjs/ai-components/message-parts/AIToolApproval.js +197 -0
  186. package/lib/commonjs/ai-components/message-parts/AIToolApproval.js.map +1 -0
  187. package/lib/commonjs/ai-components/message-parts/AIToolAuthorization.js +250 -0
  188. package/lib/commonjs/ai-components/message-parts/AIToolAuthorization.js.map +1 -0
  189. package/lib/commonjs/ai-components/message-parts/AIToolCall.js +159 -0
  190. package/lib/commonjs/ai-components/message-parts/AIToolCall.js.map +1 -0
  191. package/lib/commonjs/ai-components/message-parts/callStates.js +54 -0
  192. package/lib/commonjs/ai-components/message-parts/callStates.js.map +1 -0
  193. package/lib/commonjs/ai-components/message-parts/index.js +70 -0
  194. package/lib/commonjs/ai-components/message-parts/index.js.map +1 -0
  195. package/lib/commonjs/ai-components/message-parts/parseMessageParts.js +126 -0
  196. package/lib/commonjs/ai-components/message-parts/parseMessageParts.js.map +1 -0
  197. package/lib/commonjs/ai-components/message-parts/types.js +2 -0
  198. package/lib/commonjs/ai-components/message-parts/types.js.map +1 -0
  199. package/lib/commonjs/ai-components/native-specs/NativeAIAgent.js +7 -0
  200. package/lib/commonjs/ai-components/native-specs/NativeAIAgent.js.map +1 -0
  201. package/lib/commonjs/ai-components/reasoning/AIReasoning.js +401 -0
  202. package/lib/commonjs/ai-components/reasoning/AIReasoning.js.map +1 -0
  203. package/lib/commonjs/ai-components/reasoning/index.js +26 -0
  204. package/lib/commonjs/ai-components/reasoning/index.js.map +1 -0
  205. package/lib/commonjs/ai-components/reasoning/thinkingClock.js +63 -0
  206. package/lib/commonjs/ai-components/reasoning/thinkingClock.js.map +1 -0
  207. package/lib/commonjs/ai-components/services/clipboard-service/expo.js +7 -2
  208. package/lib/commonjs/ai-components/services/clipboard-service/expo.js.map +1 -1
  209. package/lib/commonjs/ai-components/store/composer/store.js.map +1 -1
  210. package/lib/commonjs/ai-components/store/composer/useComposerChatOption.js +18 -0
  211. package/lib/commonjs/ai-components/store/composer/useComposerChatOption.js.map +1 -0
  212. package/lib/commonjs/ai-components/store/composer/useComposerIsEditing.js +18 -0
  213. package/lib/commonjs/ai-components/store/composer/useComposerIsEditing.js.map +1 -0
  214. package/lib/commonjs/ai-components/store/index.js +22 -0
  215. package/lib/commonjs/ai-components/store/index.js.map +1 -1
  216. package/lib/commonjs/ai-components/suggestions/AISuggestions.js +66 -0
  217. package/lib/commonjs/ai-components/suggestions/AISuggestions.js.map +1 -0
  218. package/lib/commonjs/ai-components/suggestions/index.js +15 -0
  219. package/lib/commonjs/ai-components/suggestions/index.js.map +1 -0
  220. package/lib/commonjs/ai-components/syntax-highlighting/utils/flatten-nodes.js +2 -1
  221. package/lib/commonjs/ai-components/syntax-highlighting/utils/flatten-nodes.js.map +1 -1
  222. package/lib/commonjs/ai-components/syntax-highlighting/utils/renderer.js +3 -2
  223. package/lib/commonjs/ai-components/syntax-highlighting/utils/renderer.js.map +1 -1
  224. package/lib/commonjs/ai-components/theme.js +137 -1
  225. package/lib/commonjs/ai-components/theme.js.map +1 -1
  226. package/lib/commonjs/ai-components/tool-calls/AIClientIdentity.js +22 -0
  227. package/lib/commonjs/ai-components/tool-calls/AIClientIdentity.js.map +1 -0
  228. package/lib/commonjs/ai-components/tool-calls/AIClientToolRunner.js +109 -0
  229. package/lib/commonjs/ai-components/tool-calls/AIClientToolRunner.js.map +1 -0
  230. package/lib/commonjs/ai-components/tool-calls/AIToolApprover.js +23 -0
  231. package/lib/commonjs/ai-components/tool-calls/AIToolApprover.js.map +1 -0
  232. package/lib/commonjs/ai-components/tool-calls/authSessionAuthorizer.js +88 -0
  233. package/lib/commonjs/ai-components/tool-calls/authSessionAuthorizer.js.map +1 -0
  234. package/lib/commonjs/ai-components/tool-calls/index.js +48 -0
  235. package/lib/commonjs/ai-components/tool-calls/index.js.map +1 -0
  236. package/lib/commonjs/ai-components/voice-visualization/glowShader.js.map +1 -1
  237. package/lib/commonjs/components/Accessibility/useAccessibilityAnnouncer.js.map +1 -1
  238. package/lib/commonjs/components/Message/MessageItemView/utils/renderText.js.map +1 -1
  239. package/lib/commonjs/contexts/translationContext/TranslationContext.js +2 -2
  240. package/lib/commonjs/contexts/translationContext/TranslationContext.js.map +1 -1
  241. package/lib/commonjs/i18n/ar.json +40 -1
  242. package/lib/commonjs/i18n/en.json +40 -1
  243. package/lib/commonjs/i18n/es.json +40 -1
  244. package/lib/commonjs/i18n/fr.json +40 -1
  245. package/lib/commonjs/i18n/he.json +40 -1
  246. package/lib/commonjs/i18n/hi.json +40 -1
  247. package/lib/commonjs/i18n/it.json +40 -1
  248. package/lib/commonjs/i18n/ja.json +40 -1
  249. package/lib/commonjs/i18n/ko.json +40 -1
  250. package/lib/commonjs/i18n/nl.json +40 -1
  251. package/lib/commonjs/i18n/pt-br.json +40 -1
  252. package/lib/commonjs/i18n/ru.json +40 -1
  253. package/lib/commonjs/i18n/tr.json +40 -1
  254. package/lib/commonjs/mock-builders/a2ui/ohrid.js +84 -0
  255. package/lib/commonjs/mock-builders/a2ui/ohrid.js.map +1 -0
  256. package/lib/commonjs/utils/i18n/Streami18n.js +9 -4
  257. package/lib/commonjs/utils/i18n/Streami18n.js.map +1 -1
  258. package/lib/commonjs/utils/i18n/utils.js +7 -0
  259. package/lib/commonjs/utils/i18n/utils.js.map +1 -0
  260. package/lib/commonjs/version.json +1 -1
  261. package/lib/module/a11y/a11yUtils.js.map +1 -1
  262. package/lib/module/a11y/hooks/useResolvedModalAccessibilityProps.js.map +1 -1
  263. package/lib/module/a2ui/A2UIContexts.js +8 -0
  264. package/lib/module/a2ui/A2UIContexts.js.map +1 -0
  265. package/lib/module/a2ui/A2UIInstructions.js +49 -0
  266. package/lib/module/a2ui/A2UIInstructions.js.map +1 -0
  267. package/lib/module/a2ui/A2UIPlaceholder.js +37 -0
  268. package/lib/module/a2ui/A2UIPlaceholder.js.map +1 -0
  269. package/lib/module/a2ui/A2UIRenderer.js +363 -0
  270. package/lib/module/a2ui/A2UIRenderer.js.map +1 -0
  271. package/lib/module/a2ui/A2UIStream.js +91 -0
  272. package/lib/module/a2ui/A2UIStream.js.map +1 -0
  273. package/lib/module/a2ui/A2UISurface.js +237 -0
  274. package/lib/module/a2ui/A2UISurface.js.map +1 -0
  275. package/lib/module/a2ui/basicCatalog.json +1206 -0
  276. package/lib/module/a2ui/basicFunctions.js +398 -0
  277. package/lib/module/a2ui/basicFunctions.js.map +1 -0
  278. package/lib/module/a2ui/catalogDocument.js +80 -0
  279. package/lib/module/a2ui/catalogDocument.js.map +1 -0
  280. package/lib/module/a2ui/catalogs.js +105 -0
  281. package/lib/module/a2ui/catalogs.js.map +1 -0
  282. package/lib/module/a2ui/components/DateTimeInput.js +445 -0
  283. package/lib/module/a2ui/components/DateTimeInput.js.map +1 -0
  284. package/lib/module/a2ui/components/Media.js +316 -0
  285. package/lib/module/a2ui/components/Media.js.map +1 -0
  286. package/lib/module/a2ui/components/basicComponents.js +975 -0
  287. package/lib/module/a2ui/components/basicComponents.js.map +1 -0
  288. package/lib/module/a2ui/components/iconPaths.js +66 -0
  289. package/lib/module/a2ui/components/iconPaths.js.map +1 -0
  290. package/lib/module/a2ui/components/types.js +4 -0
  291. package/lib/module/a2ui/components/types.js.map +1 -0
  292. package/lib/module/a2ui/index.js +70 -0
  293. package/lib/module/a2ui/index.js.map +1 -0
  294. package/lib/module/a2ui/instructions.js +268 -0
  295. package/lib/module/a2ui/instructions.js.map +1 -0
  296. package/lib/module/a2ui/secrets.js +169 -0
  297. package/lib/module/a2ui/secrets.js.map +1 -0
  298. package/lib/module/a2ui/useReplyState.js +35 -0
  299. package/lib/module/a2ui/useReplyState.js.map +1 -0
  300. package/lib/module/ai-components/AITypingIndicatorView.js +8 -18
  301. package/lib/module/ai-components/AITypingIndicatorView.js.map +1 -1
  302. package/lib/module/ai-components/README.md +64 -3
  303. package/lib/module/ai-components/StreamingMessageView.js +26 -0
  304. package/lib/module/ai-components/StreamingMessageView.js.map +1 -1
  305. package/lib/module/ai-components/charts/components/PieLegend.js +2 -1
  306. package/lib/module/ai-components/charts/components/PieLegend.js.map +1 -1
  307. package/lib/module/ai-components/charts/components/VictoryChart.js +7 -2
  308. package/lib/module/ai-components/charts/components/VictoryChart.js.map +1 -1
  309. package/lib/module/ai-components/charts/utils/format-time-label.js +15 -0
  310. package/lib/module/ai-components/charts/utils/format-time-label.js.map +1 -0
  311. package/lib/module/ai-components/charts/vega-lite/schema.js +17 -2
  312. package/lib/module/ai-components/charts/vega-lite/schema.js.map +1 -1
  313. package/lib/module/ai-components/contexts/composer-context.js +13 -6
  314. package/lib/module/ai-components/contexts/composer-context.js.map +1 -1
  315. package/lib/module/ai-components/contexts/index.js +11 -0
  316. package/lib/module/ai-components/contexts/index.js.map +1 -1
  317. package/lib/module/ai-components/contexts/theme-context.js +33 -2
  318. package/lib/module/ai-components/contexts/theme-context.js.map +1 -1
  319. package/lib/module/ai-components/contexts/translation-context.js +29 -0
  320. package/lib/module/ai-components/contexts/translation-context.js.map +1 -0
  321. package/lib/module/ai-components/conversation/AIConversation.js +374 -0
  322. package/lib/module/ai-components/conversation/AIConversation.js.map +1 -0
  323. package/lib/module/ai-components/conversation/entries.js +98 -0
  324. package/lib/module/ai-components/conversation/entries.js.map +1 -0
  325. package/lib/module/ai-components/conversation/index.js +15 -0
  326. package/lib/module/ai-components/conversation/index.js.map +1 -0
  327. package/lib/module/ai-components/conversation/list/AIChatList.js +224 -0
  328. package/lib/module/ai-components/conversation/list/AIChatList.js.map +1 -0
  329. package/lib/module/ai-components/conversation/list/useChatListController.js +78 -0
  330. package/lib/module/ai-components/conversation/list/useChatListController.js.map +1 -0
  331. package/lib/module/ai-components/conversation/list/useEndInView.js +51 -0
  332. package/lib/module/ai-components/conversation/list/useEndInView.js.map +1 -0
  333. package/lib/module/ai-components/conversation/list/useKeyboardOverlap.js +53 -0
  334. package/lib/module/ai-components/conversation/list/useKeyboardOverlap.js.map +1 -0
  335. package/lib/module/ai-components/conversation/list/useLoadOlder.js +73 -0
  336. package/lib/module/ai-components/conversation/list/useLoadOlder.js.map +1 -0
  337. package/lib/module/ai-components/conversation/list/usePinnedAnchor.js +84 -0
  338. package/lib/module/ai-components/conversation/list/usePinnedAnchor.js.map +1 -0
  339. package/lib/module/ai-components/conversation/useConversationRows.js +117 -0
  340. package/lib/module/ai-components/conversation/useConversationRows.js.map +1 -0
  341. package/lib/module/ai-components/conversation-state/controller/AIAgentError.js +13 -0
  342. package/lib/module/ai-components/conversation-state/controller/AIAgentError.js.map +1 -0
  343. package/lib/module/ai-components/conversation-state/controller/AIConversationController.js +431 -0
  344. package/lib/module/ai-components/conversation-state/controller/AIConversationController.js.map +1 -0
  345. package/lib/module/ai-components/conversation-state/controller/AIConversationExchange.js +89 -0
  346. package/lib/module/ai-components/conversation-state/controller/AIConversationExchange.js.map +1 -0
  347. package/lib/module/ai-components/conversation-state/controller/index.js +48 -0
  348. package/lib/module/ai-components/conversation-state/controller/index.js.map +1 -0
  349. package/lib/module/ai-components/conversation-state/controller/offers.js +35 -0
  350. package/lib/module/ai-components/conversation-state/controller/offers.js.map +1 -0
  351. package/lib/module/ai-components/conversation-state/controller/types.js +13 -0
  352. package/lib/module/ai-components/conversation-state/controller/types.js.map +1 -0
  353. package/lib/module/ai-components/conversation-state/controller/useAIConversationState.js +8 -0
  354. package/lib/module/ai-components/conversation-state/controller/useAIConversationState.js.map +1 -0
  355. package/lib/module/ai-components/conversation-state/fromStreamMessage.js +67 -0
  356. package/lib/module/ai-components/conversation-state/fromStreamMessage.js.map +1 -0
  357. package/lib/module/ai-components/conversation-state/index.js +37 -0
  358. package/lib/module/ai-components/conversation-state/index.js.map +1 -0
  359. package/lib/module/ai-components/conversation-state/types.js +4 -0
  360. package/lib/module/ai-components/conversation-state/types.js.map +1 -0
  361. package/lib/module/ai-components/generative-ui/AIUIAction.js +30 -0
  362. package/lib/module/ai-components/generative-ui/AIUIAction.js.map +1 -0
  363. package/lib/module/ai-components/generative-ui/AIUIArguments.js +128 -0
  364. package/lib/module/ai-components/generative-ui/AIUIArguments.js.map +1 -0
  365. package/lib/module/ai-components/generative-ui/AIUIComponent.js +50 -0
  366. package/lib/module/ai-components/generative-ui/AIUIComponent.js.map +1 -0
  367. package/lib/module/ai-components/generative-ui/AIUIComponentDefinition.js +134 -0
  368. package/lib/module/ai-components/generative-ui/AIUIComponentDefinition.js.map +1 -0
  369. package/lib/module/ai-components/generative-ui/AIUIDocument.js +32 -0
  370. package/lib/module/ai-components/generative-ui/AIUIDocument.js.map +1 -0
  371. package/lib/module/ai-components/generative-ui/AIUIEntrance.js +197 -0
  372. package/lib/module/ai-components/generative-ui/AIUIEntrance.js.map +1 -0
  373. package/lib/module/ai-components/generative-ui/AIUIErrorBoundary.js +30 -0
  374. package/lib/module/ai-components/generative-ui/AIUIErrorBoundary.js.map +1 -0
  375. package/lib/module/ai-components/generative-ui/AIUIHelpers.js +54 -0
  376. package/lib/module/ai-components/generative-ui/AIUIHelpers.js.map +1 -0
  377. package/lib/module/ai-components/generative-ui/AIUIHost.js +259 -0
  378. package/lib/module/ai-components/generative-ui/AIUIHost.js.map +1 -0
  379. package/lib/module/ai-components/generative-ui/AIUIMedia.js +24 -0
  380. package/lib/module/ai-components/generative-ui/AIUIMedia.js.map +1 -0
  381. package/lib/module/ai-components/generative-ui/AIUIRenderer.js +10 -0
  382. package/lib/module/ai-components/generative-ui/AIUIRenderer.js.map +1 -0
  383. package/lib/module/ai-components/generative-ui/AIUIView.js +57 -0
  384. package/lib/module/ai-components/generative-ui/AIUIView.js.map +1 -0
  385. package/lib/module/ai-components/generative-ui/index.js +181 -0
  386. package/lib/module/ai-components/generative-ui/index.js.map +1 -0
  387. package/lib/module/ai-components/icons.js +44 -0
  388. package/lib/module/ai-components/icons.js.map +1 -0
  389. package/lib/module/ai-components/index.js +96 -0
  390. package/lib/module/ai-components/index.js.map +1 -1
  391. package/lib/module/ai-components/internal/Shimmer.js +36 -0
  392. package/lib/module/ai-components/internal/Shimmer.js.map +1 -0
  393. package/lib/module/ai-components/internal/format.js +66 -0
  394. package/lib/module/ai-components/internal/format.js.map +1 -0
  395. package/lib/module/ai-components/internal/hooks/useBottomSafeArea.js +12 -0
  396. package/lib/module/ai-components/internal/hooks/useBottomSafeArea.js.map +1 -0
  397. package/lib/module/ai-components/internal/icons/AgentIcons.js +74 -0
  398. package/lib/module/ai-components/internal/icons/AgentIcons.js.map +1 -0
  399. package/lib/module/ai-components/internal/keyboard.js +40 -0
  400. package/lib/module/ai-components/internal/keyboard.js.map +1 -0
  401. package/lib/module/ai-components/internal/tokens.js +11 -0
  402. package/lib/module/ai-components/internal/tokens.js.map +1 -0
  403. package/lib/module/ai-components/internal/uuid.js +21 -0
  404. package/lib/module/ai-components/internal/uuid.js.map +1 -0
  405. package/lib/module/ai-components/markdown/components/CodeBlock.js +4 -2
  406. package/lib/module/ai-components/markdown/components/CodeBlock.js.map +1 -1
  407. package/lib/module/ai-components/markdown/components/InlineCode.js +1 -0
  408. package/lib/module/ai-components/markdown/components/InlineCode.js.map +1 -1
  409. package/lib/module/ai-components/markdown/components/Text.js +11 -2
  410. package/lib/module/ai-components/markdown/components/Text.js.map +1 -1
  411. package/lib/module/ai-components/markdown/styles.js +27 -29
  412. package/lib/module/ai-components/markdown/styles.js.map +1 -1
  413. package/lib/module/ai-components/message/AIAssistantMessage.js +64 -0
  414. package/lib/module/ai-components/message/AIAssistantMessage.js.map +1 -0
  415. package/lib/module/ai-components/message/AIMessageAttachment.js +189 -0
  416. package/lib/module/ai-components/message/AIMessageAttachment.js.map +1 -0
  417. package/lib/module/ai-components/message/AIReplyActions.js +132 -0
  418. package/lib/module/ai-components/message/AIReplyActions.js.map +1 -0
  419. package/lib/module/ai-components/message/AIUserMessage.js +104 -0
  420. package/lib/module/ai-components/message/AIUserMessage.js.map +1 -0
  421. package/lib/module/ai-components/message/UserMessageMenu.js +150 -0
  422. package/lib/module/ai-components/message/UserMessageMenu.js.map +1 -0
  423. package/lib/module/ai-components/message/index.js +48 -0
  424. package/lib/module/ai-components/message/index.js.map +1 -0
  425. package/lib/module/ai-components/message-composer/ActionButton.js +4 -2
  426. package/lib/module/ai-components/message-composer/ActionButton.js.map +1 -1
  427. package/lib/module/ai-components/message-composer/ActionSheet.js +22 -6
  428. package/lib/module/ai-components/message-composer/ActionSheet.js.map +1 -1
  429. package/lib/module/ai-components/message-composer/AttachmentButton.js +5 -1
  430. package/lib/module/ai-components/message-composer/AttachmentButton.js.map +1 -1
  431. package/lib/module/ai-components/message-composer/ChatOptions.js +147 -0
  432. package/lib/module/ai-components/message-composer/ChatOptions.js.map +1 -0
  433. package/lib/module/ai-components/message-composer/ComposerView.js +146 -20
  434. package/lib/module/ai-components/message-composer/ComposerView.js.map +1 -1
  435. package/lib/module/ai-components/message-composer/EditingMessageChip.js +81 -0
  436. package/lib/module/ai-components/message-composer/EditingMessageChip.js.map +1 -0
  437. package/lib/module/ai-components/message-composer/MediaPreviewList.js +26 -1
  438. package/lib/module/ai-components/message-composer/MediaPreviewList.js.map +1 -1
  439. package/lib/module/ai-components/message-composer/index.js +11 -0
  440. package/lib/module/ai-components/message-composer/index.js.map +1 -1
  441. package/lib/module/ai-components/message-parts/AIMessageParts.js +133 -0
  442. package/lib/module/ai-components/message-parts/AIMessageParts.js.map +1 -0
  443. package/lib/module/ai-components/message-parts/AIToolApproval.js +197 -0
  444. package/lib/module/ai-components/message-parts/AIToolApproval.js.map +1 -0
  445. package/lib/module/ai-components/message-parts/AIToolAuthorization.js +250 -0
  446. package/lib/module/ai-components/message-parts/AIToolAuthorization.js.map +1 -0
  447. package/lib/module/ai-components/message-parts/AIToolCall.js +159 -0
  448. package/lib/module/ai-components/message-parts/AIToolCall.js.map +1 -0
  449. package/lib/module/ai-components/message-parts/callStates.js +54 -0
  450. package/lib/module/ai-components/message-parts/callStates.js.map +1 -0
  451. package/lib/module/ai-components/message-parts/index.js +70 -0
  452. package/lib/module/ai-components/message-parts/index.js.map +1 -0
  453. package/lib/module/ai-components/message-parts/parseMessageParts.js +126 -0
  454. package/lib/module/ai-components/message-parts/parseMessageParts.js.map +1 -0
  455. package/lib/module/ai-components/message-parts/types.js +2 -0
  456. package/lib/module/ai-components/message-parts/types.js.map +1 -0
  457. package/lib/module/ai-components/native-specs/NativeAIAgent.js +7 -0
  458. package/lib/module/ai-components/native-specs/NativeAIAgent.js.map +1 -0
  459. package/lib/module/ai-components/reasoning/AIReasoning.js +401 -0
  460. package/lib/module/ai-components/reasoning/AIReasoning.js.map +1 -0
  461. package/lib/module/ai-components/reasoning/index.js +26 -0
  462. package/lib/module/ai-components/reasoning/index.js.map +1 -0
  463. package/lib/module/ai-components/reasoning/thinkingClock.js +63 -0
  464. package/lib/module/ai-components/reasoning/thinkingClock.js.map +1 -0
  465. package/lib/module/ai-components/services/clipboard-service/expo.js +7 -2
  466. package/lib/module/ai-components/services/clipboard-service/expo.js.map +1 -1
  467. package/lib/module/ai-components/store/composer/store.js.map +1 -1
  468. package/lib/module/ai-components/store/composer/useComposerChatOption.js +18 -0
  469. package/lib/module/ai-components/store/composer/useComposerChatOption.js.map +1 -0
  470. package/lib/module/ai-components/store/composer/useComposerIsEditing.js +18 -0
  471. package/lib/module/ai-components/store/composer/useComposerIsEditing.js.map +1 -0
  472. package/lib/module/ai-components/store/index.js +22 -0
  473. package/lib/module/ai-components/store/index.js.map +1 -1
  474. package/lib/module/ai-components/suggestions/AISuggestions.js +66 -0
  475. package/lib/module/ai-components/suggestions/AISuggestions.js.map +1 -0
  476. package/lib/module/ai-components/suggestions/index.js +15 -0
  477. package/lib/module/ai-components/suggestions/index.js.map +1 -0
  478. package/lib/module/ai-components/syntax-highlighting/utils/flatten-nodes.js +2 -1
  479. package/lib/module/ai-components/syntax-highlighting/utils/flatten-nodes.js.map +1 -1
  480. package/lib/module/ai-components/syntax-highlighting/utils/renderer.js +3 -2
  481. package/lib/module/ai-components/syntax-highlighting/utils/renderer.js.map +1 -1
  482. package/lib/module/ai-components/theme.js +137 -1
  483. package/lib/module/ai-components/theme.js.map +1 -1
  484. package/lib/module/ai-components/tool-calls/AIClientIdentity.js +22 -0
  485. package/lib/module/ai-components/tool-calls/AIClientIdentity.js.map +1 -0
  486. package/lib/module/ai-components/tool-calls/AIClientToolRunner.js +109 -0
  487. package/lib/module/ai-components/tool-calls/AIClientToolRunner.js.map +1 -0
  488. package/lib/module/ai-components/tool-calls/AIToolApprover.js +23 -0
  489. package/lib/module/ai-components/tool-calls/AIToolApprover.js.map +1 -0
  490. package/lib/module/ai-components/tool-calls/authSessionAuthorizer.js +88 -0
  491. package/lib/module/ai-components/tool-calls/authSessionAuthorizer.js.map +1 -0
  492. package/lib/module/ai-components/tool-calls/index.js +48 -0
  493. package/lib/module/ai-components/tool-calls/index.js.map +1 -0
  494. package/lib/module/ai-components/voice-visualization/glowShader.js.map +1 -1
  495. package/lib/module/components/Accessibility/useAccessibilityAnnouncer.js.map +1 -1
  496. package/lib/module/components/Message/MessageItemView/utils/renderText.js.map +1 -1
  497. package/lib/module/contexts/translationContext/TranslationContext.js +2 -2
  498. package/lib/module/contexts/translationContext/TranslationContext.js.map +1 -1
  499. package/lib/module/i18n/ar.json +40 -1
  500. package/lib/module/i18n/en.json +40 -1
  501. package/lib/module/i18n/es.json +40 -1
  502. package/lib/module/i18n/fr.json +40 -1
  503. package/lib/module/i18n/he.json +40 -1
  504. package/lib/module/i18n/hi.json +40 -1
  505. package/lib/module/i18n/it.json +40 -1
  506. package/lib/module/i18n/ja.json +40 -1
  507. package/lib/module/i18n/ko.json +40 -1
  508. package/lib/module/i18n/nl.json +40 -1
  509. package/lib/module/i18n/pt-br.json +40 -1
  510. package/lib/module/i18n/ru.json +40 -1
  511. package/lib/module/i18n/tr.json +40 -1
  512. package/lib/module/mock-builders/a2ui/ohrid.js +84 -0
  513. package/lib/module/mock-builders/a2ui/ohrid.js.map +1 -0
  514. package/lib/module/utils/i18n/Streami18n.js +9 -4
  515. package/lib/module/utils/i18n/Streami18n.js.map +1 -1
  516. package/lib/module/utils/i18n/utils.js +7 -0
  517. package/lib/module/utils/i18n/utils.js.map +1 -0
  518. package/lib/module/version.json +1 -1
  519. package/lib/typescript/a11y/a11yUtils.d.ts +0 -1
  520. package/lib/typescript/a11y/a11yUtils.d.ts.map +1 -1
  521. package/lib/typescript/a11y/hooks/useResolvedModalAccessibilityProps.d.ts +2 -3
  522. package/lib/typescript/a11y/hooks/useResolvedModalAccessibilityProps.d.ts.map +1 -1
  523. package/lib/typescript/a2ui/A2UIContexts.d.ts +9 -0
  524. package/lib/typescript/a2ui/A2UIContexts.d.ts.map +1 -0
  525. package/lib/typescript/a2ui/A2UIInstructions.d.ts +47 -0
  526. package/lib/typescript/a2ui/A2UIInstructions.d.ts.map +1 -0
  527. package/lib/typescript/a2ui/A2UIPlaceholder.d.ts +4 -0
  528. package/lib/typescript/a2ui/A2UIPlaceholder.d.ts.map +1 -0
  529. package/lib/typescript/a2ui/A2UIRenderer.d.ts +130 -0
  530. package/lib/typescript/a2ui/A2UIRenderer.d.ts.map +1 -0
  531. package/lib/typescript/a2ui/A2UIStream.d.ts +23 -0
  532. package/lib/typescript/a2ui/A2UIStream.d.ts.map +1 -0
  533. package/lib/typescript/a2ui/A2UISurface.d.ts +19 -0
  534. package/lib/typescript/a2ui/A2UISurface.d.ts.map +1 -0
  535. package/lib/typescript/a2ui/basicFunctions.d.ts +10 -0
  536. package/lib/typescript/a2ui/basicFunctions.d.ts.map +1 -0
  537. package/lib/typescript/a2ui/catalogDocument.d.ts +56 -0
  538. package/lib/typescript/a2ui/catalogDocument.d.ts.map +1 -0
  539. package/lib/typescript/a2ui/catalogs.d.ts +42 -0
  540. package/lib/typescript/a2ui/catalogs.d.ts.map +1 -0
  541. package/lib/typescript/a2ui/components/DateTimeInput.d.ts +44 -0
  542. package/lib/typescript/a2ui/components/DateTimeInput.d.ts.map +1 -0
  543. package/lib/typescript/a2ui/components/Media.d.ts +27 -0
  544. package/lib/typescript/a2ui/components/Media.d.ts.map +1 -0
  545. package/lib/typescript/a2ui/components/basicComponents.d.ts +4 -0
  546. package/lib/typescript/a2ui/components/basicComponents.d.ts.map +1 -0
  547. package/lib/typescript/a2ui/components/iconPaths.d.ts +2 -0
  548. package/lib/typescript/a2ui/components/iconPaths.d.ts.map +1 -0
  549. package/lib/typescript/a2ui/components/types.d.ts +23 -0
  550. package/lib/typescript/a2ui/components/types.d.ts.map +1 -0
  551. package/lib/typescript/a2ui/index.d.ts +8 -0
  552. package/lib/typescript/a2ui/index.d.ts.map +1 -0
  553. package/lib/typescript/a2ui/instructions.d.ts +39 -0
  554. package/lib/typescript/a2ui/instructions.d.ts.map +1 -0
  555. package/lib/typescript/a2ui/secrets.d.ts +20 -0
  556. package/lib/typescript/a2ui/secrets.d.ts.map +1 -0
  557. package/lib/typescript/a2ui/useReplyState.d.ts +4 -0
  558. package/lib/typescript/a2ui/useReplyState.d.ts.map +1 -0
  559. package/lib/typescript/ai-components/AITypingIndicatorView.d.ts.map +1 -1
  560. package/lib/typescript/ai-components/StreamingMessageView.d.ts +4 -1
  561. package/lib/typescript/ai-components/StreamingMessageView.d.ts.map +1 -1
  562. package/lib/typescript/ai-components/charts/components/PieLegend.d.ts.map +1 -1
  563. package/lib/typescript/ai-components/charts/components/VictoryChart.d.ts.map +1 -1
  564. package/lib/typescript/ai-components/charts/utils/format-time-label.d.ts +7 -0
  565. package/lib/typescript/ai-components/charts/utils/format-time-label.d.ts.map +1 -0
  566. package/lib/typescript/ai-components/charts/vega-lite/schema.d.ts +8 -8
  567. package/lib/typescript/ai-components/charts/vega-lite/schema.d.ts.map +1 -1
  568. package/lib/typescript/ai-components/contexts/composer-context.d.ts +3 -0
  569. package/lib/typescript/ai-components/contexts/composer-context.d.ts.map +1 -1
  570. package/lib/typescript/ai-components/contexts/index.d.ts +1 -0
  571. package/lib/typescript/ai-components/contexts/index.d.ts.map +1 -1
  572. package/lib/typescript/ai-components/contexts/theme-context.d.ts.map +1 -1
  573. package/lib/typescript/ai-components/contexts/translation-context.d.ts +19 -0
  574. package/lib/typescript/ai-components/contexts/translation-context.d.ts.map +1 -0
  575. package/lib/typescript/ai-components/conversation/AIConversation.d.ts +133 -0
  576. package/lib/typescript/ai-components/conversation/AIConversation.d.ts.map +1 -0
  577. package/lib/typescript/ai-components/conversation/entries.d.ts +47 -0
  578. package/lib/typescript/ai-components/conversation/entries.d.ts.map +1 -0
  579. package/lib/typescript/ai-components/conversation/index.d.ts +3 -0
  580. package/lib/typescript/ai-components/conversation/index.d.ts.map +1 -0
  581. package/lib/typescript/ai-components/conversation/list/AIChatList.d.ts +30 -0
  582. package/lib/typescript/ai-components/conversation/list/AIChatList.d.ts.map +1 -0
  583. package/lib/typescript/ai-components/conversation/list/useChatListController.d.ts +45 -0
  584. package/lib/typescript/ai-components/conversation/list/useChatListController.d.ts.map +1 -0
  585. package/lib/typescript/ai-components/conversation/list/useEndInView.d.ts +26 -0
  586. package/lib/typescript/ai-components/conversation/list/useEndInView.d.ts.map +1 -0
  587. package/lib/typescript/ai-components/conversation/list/useKeyboardOverlap.d.ts +17 -0
  588. package/lib/typescript/ai-components/conversation/list/useKeyboardOverlap.d.ts.map +1 -0
  589. package/lib/typescript/ai-components/conversation/list/useLoadOlder.d.ts +24 -0
  590. package/lib/typescript/ai-components/conversation/list/useLoadOlder.d.ts.map +1 -0
  591. package/lib/typescript/ai-components/conversation/list/usePinnedAnchor.d.ts +26 -0
  592. package/lib/typescript/ai-components/conversation/list/usePinnedAnchor.d.ts.map +1 -0
  593. package/lib/typescript/ai-components/conversation/useConversationRows.d.ts +66 -0
  594. package/lib/typescript/ai-components/conversation/useConversationRows.d.ts.map +1 -0
  595. package/lib/typescript/ai-components/conversation-state/controller/AIAgentError.d.ts +10 -0
  596. package/lib/typescript/ai-components/conversation-state/controller/AIAgentError.d.ts.map +1 -0
  597. package/lib/typescript/ai-components/conversation-state/controller/AIConversationController.d.ts +173 -0
  598. package/lib/typescript/ai-components/conversation-state/controller/AIConversationController.d.ts.map +1 -0
  599. package/lib/typescript/ai-components/conversation-state/controller/AIConversationExchange.d.ts +23 -0
  600. package/lib/typescript/ai-components/conversation-state/controller/AIConversationExchange.d.ts.map +1 -0
  601. package/lib/typescript/ai-components/conversation-state/controller/index.d.ts +5 -0
  602. package/lib/typescript/ai-components/conversation-state/controller/index.d.ts.map +1 -0
  603. package/lib/typescript/ai-components/conversation-state/controller/offers.d.ts +25 -0
  604. package/lib/typescript/ai-components/conversation-state/controller/offers.d.ts.map +1 -0
  605. package/lib/typescript/ai-components/conversation-state/controller/types.d.ts +142 -0
  606. package/lib/typescript/ai-components/conversation-state/controller/types.d.ts.map +1 -0
  607. package/lib/typescript/ai-components/conversation-state/controller/useAIConversationState.d.ts +9 -0
  608. package/lib/typescript/ai-components/conversation-state/controller/useAIConversationState.d.ts.map +1 -0
  609. package/lib/typescript/ai-components/conversation-state/fromStreamMessage.d.ts +25 -0
  610. package/lib/typescript/ai-components/conversation-state/fromStreamMessage.d.ts.map +1 -0
  611. package/lib/typescript/ai-components/conversation-state/index.d.ts +4 -0
  612. package/lib/typescript/ai-components/conversation-state/index.d.ts.map +1 -0
  613. package/lib/typescript/ai-components/conversation-state/types.d.ts +55 -0
  614. package/lib/typescript/ai-components/conversation-state/types.d.ts.map +1 -0
  615. package/lib/typescript/ai-components/generative-ui/AIUIAction.d.ts +48 -0
  616. package/lib/typescript/ai-components/generative-ui/AIUIAction.d.ts.map +1 -0
  617. package/lib/typescript/ai-components/generative-ui/AIUIArguments.d.ts +15 -0
  618. package/lib/typescript/ai-components/generative-ui/AIUIArguments.d.ts.map +1 -0
  619. package/lib/typescript/ai-components/generative-ui/AIUIComponent.d.ts +51 -0
  620. package/lib/typescript/ai-components/generative-ui/AIUIComponent.d.ts.map +1 -0
  621. package/lib/typescript/ai-components/generative-ui/AIUIComponentDefinition.d.ts +84 -0
  622. package/lib/typescript/ai-components/generative-ui/AIUIComponentDefinition.d.ts.map +1 -0
  623. package/lib/typescript/ai-components/generative-ui/AIUIDocument.d.ts +50 -0
  624. package/lib/typescript/ai-components/generative-ui/AIUIDocument.d.ts.map +1 -0
  625. package/lib/typescript/ai-components/generative-ui/AIUIEntrance.d.ts +76 -0
  626. package/lib/typescript/ai-components/generative-ui/AIUIEntrance.d.ts.map +1 -0
  627. package/lib/typescript/ai-components/generative-ui/AIUIErrorBoundary.d.ts +26 -0
  628. package/lib/typescript/ai-components/generative-ui/AIUIErrorBoundary.d.ts.map +1 -0
  629. package/lib/typescript/ai-components/generative-ui/AIUIHelpers.d.ts +23 -0
  630. package/lib/typescript/ai-components/generative-ui/AIUIHelpers.d.ts.map +1 -0
  631. package/lib/typescript/ai-components/generative-ui/AIUIHost.d.ts +160 -0
  632. package/lib/typescript/ai-components/generative-ui/AIUIHost.d.ts.map +1 -0
  633. package/lib/typescript/ai-components/generative-ui/AIUIMedia.d.ts +22 -0
  634. package/lib/typescript/ai-components/generative-ui/AIUIMedia.d.ts.map +1 -0
  635. package/lib/typescript/ai-components/generative-ui/AIUIRenderer.d.ts +53 -0
  636. package/lib/typescript/ai-components/generative-ui/AIUIRenderer.d.ts.map +1 -0
  637. package/lib/typescript/ai-components/generative-ui/AIUIView.d.ts +35 -0
  638. package/lib/typescript/ai-components/generative-ui/AIUIView.d.ts.map +1 -0
  639. package/lib/typescript/ai-components/generative-ui/index.d.ts +11 -0
  640. package/lib/typescript/ai-components/generative-ui/index.d.ts.map +1 -0
  641. package/lib/typescript/ai-components/icons.d.ts +66 -0
  642. package/lib/typescript/ai-components/icons.d.ts.map +1 -0
  643. package/lib/typescript/ai-components/index.d.ts +8 -0
  644. package/lib/typescript/ai-components/index.d.ts.map +1 -1
  645. package/lib/typescript/ai-components/internal/Shimmer.d.ts +14 -0
  646. package/lib/typescript/ai-components/internal/Shimmer.d.ts.map +1 -0
  647. package/lib/typescript/ai-components/internal/format.d.ts +7 -0
  648. package/lib/typescript/ai-components/internal/format.d.ts.map +1 -0
  649. package/lib/typescript/ai-components/internal/hooks/useBottomSafeArea.d.ts +3 -0
  650. package/lib/typescript/ai-components/internal/hooks/useBottomSafeArea.d.ts.map +1 -0
  651. package/lib/typescript/ai-components/internal/icons/AgentIcons.d.ts +31 -0
  652. package/lib/typescript/ai-components/internal/icons/AgentIcons.d.ts.map +1 -0
  653. package/lib/typescript/ai-components/internal/keyboard.d.ts +9 -0
  654. package/lib/typescript/ai-components/internal/keyboard.d.ts.map +1 -0
  655. package/lib/typescript/ai-components/internal/tokens.d.ts +2 -0
  656. package/lib/typescript/ai-components/internal/tokens.d.ts.map +1 -0
  657. package/lib/typescript/ai-components/internal/uuid.d.ts +2 -0
  658. package/lib/typescript/ai-components/internal/uuid.d.ts.map +1 -0
  659. package/lib/typescript/ai-components/markdown/components/CodeBlock.d.ts.map +1 -1
  660. package/lib/typescript/ai-components/markdown/components/InlineCode.d.ts.map +1 -1
  661. package/lib/typescript/ai-components/markdown/components/Text.d.ts.map +1 -1
  662. package/lib/typescript/ai-components/markdown/styles.d.ts +23 -4
  663. package/lib/typescript/ai-components/markdown/styles.d.ts.map +1 -1
  664. package/lib/typescript/ai-components/markdown/types.d.ts +1 -0
  665. package/lib/typescript/ai-components/markdown/types.d.ts.map +1 -1
  666. package/lib/typescript/ai-components/message/AIAssistantMessage.d.ts +40 -0
  667. package/lib/typescript/ai-components/message/AIAssistantMessage.d.ts.map +1 -0
  668. package/lib/typescript/ai-components/message/AIMessageAttachment.d.ts +33 -0
  669. package/lib/typescript/ai-components/message/AIMessageAttachment.d.ts.map +1 -0
  670. package/lib/typescript/ai-components/message/AIReplyActions.d.ts +19 -0
  671. package/lib/typescript/ai-components/message/AIReplyActions.d.ts.map +1 -0
  672. package/lib/typescript/ai-components/message/AIUserMessage.d.ts +17 -0
  673. package/lib/typescript/ai-components/message/AIUserMessage.d.ts.map +1 -0
  674. package/lib/typescript/ai-components/message/UserMessageMenu.d.ts +31 -0
  675. package/lib/typescript/ai-components/message/UserMessageMenu.d.ts.map +1 -0
  676. package/lib/typescript/ai-components/message/index.d.ts +5 -0
  677. package/lib/typescript/ai-components/message/index.d.ts.map +1 -0
  678. package/lib/typescript/ai-components/message-composer/ActionButton.d.ts +1 -1
  679. package/lib/typescript/ai-components/message-composer/ActionButton.d.ts.map +1 -1
  680. package/lib/typescript/ai-components/message-composer/ActionSheet.d.ts +2 -2
  681. package/lib/typescript/ai-components/message-composer/ActionSheet.d.ts.map +1 -1
  682. package/lib/typescript/ai-components/message-composer/AttachmentButton.d.ts.map +1 -1
  683. package/lib/typescript/ai-components/message-composer/ChatOptions.d.ts +35 -0
  684. package/lib/typescript/ai-components/message-composer/ChatOptions.d.ts.map +1 -0
  685. package/lib/typescript/ai-components/message-composer/ComposerView.d.ts +39 -3
  686. package/lib/typescript/ai-components/message-composer/ComposerView.d.ts.map +1 -1
  687. package/lib/typescript/ai-components/message-composer/EditingMessageChip.d.ts +7 -0
  688. package/lib/typescript/ai-components/message-composer/EditingMessageChip.d.ts.map +1 -0
  689. package/lib/typescript/ai-components/message-composer/MediaPreviewList.d.ts.map +1 -1
  690. package/lib/typescript/ai-components/message-composer/index.d.ts +1 -0
  691. package/lib/typescript/ai-components/message-composer/index.d.ts.map +1 -1
  692. package/lib/typescript/ai-components/message-parts/AIMessageParts.d.ts +40 -0
  693. package/lib/typescript/ai-components/message-parts/AIMessageParts.d.ts.map +1 -0
  694. package/lib/typescript/ai-components/message-parts/AIToolApproval.d.ts +38 -0
  695. package/lib/typescript/ai-components/message-parts/AIToolApproval.d.ts.map +1 -0
  696. package/lib/typescript/ai-components/message-parts/AIToolAuthorization.d.ts +48 -0
  697. package/lib/typescript/ai-components/message-parts/AIToolAuthorization.d.ts.map +1 -0
  698. package/lib/typescript/ai-components/message-parts/AIToolCall.d.ts +11 -0
  699. package/lib/typescript/ai-components/message-parts/AIToolCall.d.ts.map +1 -0
  700. package/lib/typescript/ai-components/message-parts/callStates.d.ts +9 -0
  701. package/lib/typescript/ai-components/message-parts/callStates.d.ts.map +1 -0
  702. package/lib/typescript/ai-components/message-parts/index.d.ts +7 -0
  703. package/lib/typescript/ai-components/message-parts/index.d.ts.map +1 -0
  704. package/lib/typescript/ai-components/message-parts/parseMessageParts.d.ts +47 -0
  705. package/lib/typescript/ai-components/message-parts/parseMessageParts.d.ts.map +1 -0
  706. package/lib/typescript/ai-components/message-parts/types.d.ts +137 -0
  707. package/lib/typescript/ai-components/message-parts/types.d.ts.map +1 -0
  708. package/lib/typescript/ai-components/native-specs/NativeAIAgent.d.ts +22 -0
  709. package/lib/typescript/ai-components/native-specs/NativeAIAgent.d.ts.map +1 -0
  710. package/lib/typescript/ai-components/reasoning/AIReasoning.d.ts +63 -0
  711. package/lib/typescript/ai-components/reasoning/AIReasoning.d.ts.map +1 -0
  712. package/lib/typescript/ai-components/reasoning/index.d.ts +3 -0
  713. package/lib/typescript/ai-components/reasoning/index.d.ts.map +1 -0
  714. package/lib/typescript/ai-components/reasoning/thinkingClock.d.ts +29 -0
  715. package/lib/typescript/ai-components/reasoning/thinkingClock.d.ts.map +1 -0
  716. package/lib/typescript/ai-components/services/clipboard-service/expo.d.ts.map +1 -1
  717. package/lib/typescript/ai-components/store/composer/store.d.ts +8 -0
  718. package/lib/typescript/ai-components/store/composer/store.d.ts.map +1 -1
  719. package/lib/typescript/ai-components/store/composer/useComposerChatOption.d.ts +5 -0
  720. package/lib/typescript/ai-components/store/composer/useComposerChatOption.d.ts.map +1 -0
  721. package/lib/typescript/ai-components/store/composer/useComposerIsEditing.d.ts +5 -0
  722. package/lib/typescript/ai-components/store/composer/useComposerIsEditing.d.ts.map +1 -0
  723. package/lib/typescript/ai-components/store/index.d.ts +2 -0
  724. package/lib/typescript/ai-components/store/index.d.ts.map +1 -1
  725. package/lib/typescript/ai-components/suggestions/AISuggestions.d.ts +13 -0
  726. package/lib/typescript/ai-components/suggestions/AISuggestions.d.ts.map +1 -0
  727. package/lib/typescript/ai-components/suggestions/index.d.ts +2 -0
  728. package/lib/typescript/ai-components/suggestions/index.d.ts.map +1 -0
  729. package/lib/typescript/ai-components/syntax-highlighting/utils/flatten-nodes.d.ts.map +1 -1
  730. package/lib/typescript/ai-components/syntax-highlighting/utils/renderer.d.ts +1 -1
  731. package/lib/typescript/ai-components/syntax-highlighting/utils/renderer.d.ts.map +1 -1
  732. package/lib/typescript/ai-components/theme.d.ts +200 -0
  733. package/lib/typescript/ai-components/theme.d.ts.map +1 -1
  734. package/lib/typescript/ai-components/tool-calls/AIClientIdentity.d.ts +14 -0
  735. package/lib/typescript/ai-components/tool-calls/AIClientIdentity.d.ts.map +1 -0
  736. package/lib/typescript/ai-components/tool-calls/AIClientToolRunner.d.ts +109 -0
  737. package/lib/typescript/ai-components/tool-calls/AIClientToolRunner.d.ts.map +1 -0
  738. package/lib/typescript/ai-components/tool-calls/AIToolApprover.d.ts +48 -0
  739. package/lib/typescript/ai-components/tool-calls/AIToolApprover.d.ts.map +1 -0
  740. package/lib/typescript/ai-components/tool-calls/authSessionAuthorizer.d.ts +57 -0
  741. package/lib/typescript/ai-components/tool-calls/authSessionAuthorizer.d.ts.map +1 -0
  742. package/lib/typescript/ai-components/tool-calls/index.d.ts +5 -0
  743. package/lib/typescript/ai-components/tool-calls/index.d.ts.map +1 -0
  744. package/lib/typescript/ai-components/voice-visualization/glowShader.d.ts.map +1 -1
  745. package/lib/typescript/ai-components/voice-visualization/simplex.d.ts +1 -1
  746. package/lib/typescript/components/Accessibility/NotificationAnnouncer.d.ts +5 -5
  747. package/lib/typescript/components/Accessibility/hooks/useIncomingMessageAnnouncements.d.ts +1 -1
  748. package/lib/typescript/components/Accessibility/useAccessibilityAnnouncer.d.ts +0 -2
  749. package/lib/typescript/components/Accessibility/useAccessibilityAnnouncer.d.ts.map +1 -1
  750. package/lib/typescript/components/Message/MessageItemView/utils/renderText.d.ts.map +1 -1
  751. package/lib/typescript/contexts/translationContext/TranslationContext.d.ts +1 -1
  752. package/lib/typescript/contexts/translationContext/TranslationContext.d.ts.map +1 -1
  753. package/lib/typescript/i18n/ar.json +40 -1
  754. package/lib/typescript/i18n/en.json +40 -1
  755. package/lib/typescript/i18n/es.json +40 -1
  756. package/lib/typescript/i18n/fr.json +40 -1
  757. package/lib/typescript/i18n/he.json +40 -1
  758. package/lib/typescript/i18n/hi.json +40 -1
  759. package/lib/typescript/i18n/it.json +40 -1
  760. package/lib/typescript/i18n/ja.json +40 -1
  761. package/lib/typescript/i18n/ko.json +40 -1
  762. package/lib/typescript/i18n/nl.json +40 -1
  763. package/lib/typescript/i18n/pt-br.json +40 -1
  764. package/lib/typescript/i18n/ru.json +40 -1
  765. package/lib/typescript/i18n/tr.json +40 -1
  766. package/lib/typescript/utils/i18n/Streami18n.d.ts +41 -2
  767. package/lib/typescript/utils/i18n/Streami18n.d.ts.map +1 -1
  768. package/lib/typescript/utils/i18n/utils.d.ts +3 -0
  769. package/lib/typescript/utils/i18n/utils.d.ts.map +1 -0
  770. package/package.json +10 -2
  771. package/src/a11y/a11yUtils.ts +0 -1
  772. package/src/a11y/hooks/useResolvedModalAccessibilityProps.ts +2 -3
  773. package/src/a2ui/A2UIContexts.ts +15 -0
  774. package/src/a2ui/A2UIInstructions.ts +102 -0
  775. package/src/a2ui/A2UIPlaceholder.tsx +24 -0
  776. package/src/a2ui/A2UIRenderer.tsx +504 -0
  777. package/src/a2ui/A2UIStream.ts +105 -0
  778. package/src/a2ui/A2UISurface.tsx +270 -0
  779. package/src/a2ui/__tests__/A2UIInstructions.test.ts +233 -0
  780. package/src/a2ui/__tests__/A2UIRenderer.test.tsx +1559 -0
  781. package/src/a2ui/__tests__/conformance.test.ts +579 -0
  782. package/src/a2ui/basicCatalog.json +1206 -0
  783. package/src/a2ui/basicFunctions.ts +429 -0
  784. package/src/a2ui/catalogDocument.ts +119 -0
  785. package/src/a2ui/catalogs.ts +185 -0
  786. package/src/a2ui/components/DateTimeInput.tsx +381 -0
  787. package/src/a2ui/components/Media.tsx +278 -0
  788. package/src/a2ui/components/basicComponents.tsx +832 -0
  789. package/src/a2ui/components/iconPaths.ts +116 -0
  790. package/src/a2ui/components/types.ts +24 -0
  791. package/src/a2ui/index.ts +18 -0
  792. package/src/a2ui/instructions.ts +341 -0
  793. package/src/a2ui/secrets.ts +154 -0
  794. package/src/a2ui/useReplyState.ts +26 -0
  795. package/src/ai-components/AITypingIndicatorView.tsx +6 -22
  796. package/src/ai-components/README.md +64 -3
  797. package/src/ai-components/StreamingMessageView.tsx +27 -3
  798. package/src/ai-components/__tests__/ComposerView.test.tsx +247 -2
  799. package/src/ai-components/__tests__/Markdown.test.tsx +13 -0
  800. package/src/ai-components/__tests__/StreamingMessageView.test.tsx +69 -0
  801. package/src/ai-components/__tests__/charts.test.ts +75 -0
  802. package/src/ai-components/__tests__/clientToolRunner.test.ts +239 -0
  803. package/src/ai-components/__tests__/conversation.test.tsx +787 -0
  804. package/src/ai-components/__tests__/conversationController.test.ts +1561 -0
  805. package/src/ai-components/__tests__/conversationExchange.test.ts +187 -0
  806. package/src/ai-components/__tests__/conversationRows.test.ts +207 -0
  807. package/src/ai-components/__tests__/conversationUI.test.tsx +606 -0
  808. package/src/ai-components/__tests__/format.test.ts +32 -0
  809. package/src/ai-components/__tests__/generativeUI.test.ts +634 -0
  810. package/src/ai-components/__tests__/keyboard.test.ts +14 -0
  811. package/src/ai-components/__tests__/messagePartViews.test.tsx +385 -0
  812. package/src/ai-components/__tests__/messageParts.test.ts +336 -0
  813. package/src/ai-components/__tests__/messageViews.test.tsx +321 -0
  814. package/src/ai-components/__tests__/signIn.test.tsx +324 -0
  815. package/src/ai-components/__tests__/theme.test.tsx +18 -0
  816. package/src/ai-components/__tests__/translation.test.tsx +85 -0
  817. package/src/ai-components/__tests__/voiceDriver.test.ts +0 -3
  818. package/src/ai-components/__tests__/voicePalette.test.ts +1 -1
  819. package/src/ai-components/__tests__/withoutKeyboardController.test.tsx +60 -0
  820. package/src/ai-components/charts/components/PieLegend.tsx +2 -1
  821. package/src/ai-components/charts/components/VictoryChart.tsx +10 -2
  822. package/src/ai-components/charts/utils/format-time-label.ts +18 -0
  823. package/src/ai-components/charts/vega-lite/schema.ts +19 -2
  824. package/src/ai-components/contexts/composer-context.tsx +13 -5
  825. package/src/ai-components/contexts/index.ts +1 -0
  826. package/src/ai-components/contexts/theme-context.tsx +19 -4
  827. package/src/ai-components/contexts/translation-context.tsx +44 -0
  828. package/src/ai-components/conversation/AIConversation.tsx +612 -0
  829. package/src/ai-components/conversation/entries.ts +177 -0
  830. package/src/ai-components/conversation/index.ts +2 -0
  831. package/src/ai-components/conversation/list/AIChatList.tsx +227 -0
  832. package/src/ai-components/conversation/list/useChatListController.ts +91 -0
  833. package/src/ai-components/conversation/list/useEndInView.ts +61 -0
  834. package/src/ai-components/conversation/list/useKeyboardOverlap.ts +52 -0
  835. package/src/ai-components/conversation/list/useLoadOlder.ts +97 -0
  836. package/src/ai-components/conversation/list/usePinnedAnchor.ts +113 -0
  837. package/src/ai-components/conversation/useConversationRows.ts +231 -0
  838. package/src/ai-components/conversation-state/controller/AIAgentError.ts +14 -0
  839. package/src/ai-components/conversation-state/controller/AIConversationController.ts +628 -0
  840. package/src/ai-components/conversation-state/controller/AIConversationExchange.ts +132 -0
  841. package/src/ai-components/conversation-state/controller/index.ts +4 -0
  842. package/src/ai-components/conversation-state/controller/offers.ts +53 -0
  843. package/src/ai-components/conversation-state/controller/types.ts +154 -0
  844. package/src/ai-components/conversation-state/controller/useAIConversationState.ts +21 -0
  845. package/src/ai-components/conversation-state/fromStreamMessage.ts +89 -0
  846. package/src/ai-components/conversation-state/index.ts +3 -0
  847. package/src/ai-components/conversation-state/types.ts +57 -0
  848. package/src/ai-components/generative-ui/AIUIAction.ts +73 -0
  849. package/src/ai-components/generative-ui/AIUIArguments.ts +117 -0
  850. package/src/ai-components/generative-ui/AIUIComponent.tsx +106 -0
  851. package/src/ai-components/generative-ui/AIUIComponentDefinition.ts +163 -0
  852. package/src/ai-components/generative-ui/AIUIDocument.ts +77 -0
  853. package/src/ai-components/generative-ui/AIUIEntrance.tsx +229 -0
  854. package/src/ai-components/generative-ui/AIUIErrorBoundary.tsx +39 -0
  855. package/src/ai-components/generative-ui/AIUIHelpers.ts +86 -0
  856. package/src/ai-components/generative-ui/AIUIHost.ts +358 -0
  857. package/src/ai-components/generative-ui/AIUIMedia.ts +45 -0
  858. package/src/ai-components/generative-ui/AIUIRenderer.ts +60 -0
  859. package/src/ai-components/generative-ui/AIUIView.tsx +87 -0
  860. package/src/ai-components/generative-ui/index.ts +48 -0
  861. package/src/ai-components/icons.ts +101 -0
  862. package/src/ai-components/index.ts +10 -0
  863. package/src/ai-components/internal/Shimmer.tsx +40 -0
  864. package/src/ai-components/internal/format.ts +69 -0
  865. package/src/ai-components/internal/hooks/useBottomSafeArea.ts +6 -0
  866. package/src/ai-components/internal/icons/AgentIcons.tsx +138 -0
  867. package/src/ai-components/internal/keyboard.tsx +34 -0
  868. package/src/ai-components/internal/tokens.ts +4 -0
  869. package/src/ai-components/internal/uuid.ts +17 -0
  870. package/src/ai-components/markdown/components/CodeBlock.tsx +13 -2
  871. package/src/ai-components/markdown/components/InlineCode.tsx +1 -0
  872. package/src/ai-components/markdown/components/Text.tsx +7 -2
  873. package/src/ai-components/markdown/styles.ts +29 -27
  874. package/src/ai-components/markdown/types.ts +1 -0
  875. package/src/ai-components/message/AIAssistantMessage.tsx +100 -0
  876. package/src/ai-components/message/AIMessageAttachment.tsx +245 -0
  877. package/src/ai-components/message/AIReplyActions.tsx +139 -0
  878. package/src/ai-components/message/AIUserMessage.tsx +121 -0
  879. package/src/ai-components/message/UserMessageMenu.tsx +149 -0
  880. package/src/ai-components/message/index.ts +4 -0
  881. package/src/ai-components/message-composer/ActionButton.tsx +10 -5
  882. package/src/ai-components/message-composer/ActionSheet.tsx +28 -6
  883. package/src/ai-components/message-composer/AttachmentButton.tsx +9 -1
  884. package/src/ai-components/message-composer/ChatOptions.tsx +144 -0
  885. package/src/ai-components/message-composer/ComposerView.tsx +194 -30
  886. package/src/ai-components/message-composer/EditingMessageChip.tsx +62 -0
  887. package/src/ai-components/message-composer/MediaPreviewList.tsx +34 -8
  888. package/src/ai-components/message-composer/index.ts +1 -0
  889. package/src/ai-components/message-parts/AIMessageParts.tsx +145 -0
  890. package/src/ai-components/message-parts/AIToolApproval.tsx +196 -0
  891. package/src/ai-components/message-parts/AIToolAuthorization.tsx +279 -0
  892. package/src/ai-components/message-parts/AIToolCall.tsx +117 -0
  893. package/src/ai-components/message-parts/callStates.ts +44 -0
  894. package/src/ai-components/message-parts/index.ts +6 -0
  895. package/src/ai-components/message-parts/parseMessageParts.ts +195 -0
  896. package/src/ai-components/message-parts/types.ts +157 -0
  897. package/src/ai-components/native-specs/NativeAIAgent.ts +25 -0
  898. package/src/ai-components/reasoning/AIReasoning.tsx +509 -0
  899. package/src/ai-components/reasoning/index.ts +2 -0
  900. package/src/ai-components/reasoning/thinkingClock.ts +109 -0
  901. package/src/ai-components/services/clipboard-service/expo.ts +18 -4
  902. package/src/ai-components/store/composer/store.ts +9 -0
  903. package/src/ai-components/store/composer/useComposerChatOption.ts +15 -0
  904. package/src/ai-components/store/composer/useComposerIsEditing.ts +15 -0
  905. package/src/ai-components/store/index.ts +2 -0
  906. package/src/ai-components/suggestions/AISuggestions.tsx +73 -0
  907. package/src/ai-components/suggestions/index.ts +1 -0
  908. package/src/ai-components/syntax-highlighting/utils/flatten-nodes.ts +2 -1
  909. package/src/ai-components/syntax-highlighting/utils/renderer.tsx +4 -2
  910. package/src/ai-components/theme.ts +334 -0
  911. package/src/ai-components/tool-calls/AIClientIdentity.ts +33 -0
  912. package/src/ai-components/tool-calls/AIClientToolRunner.ts +200 -0
  913. package/src/ai-components/tool-calls/AIToolApprover.tsx +60 -0
  914. package/src/ai-components/tool-calls/authSessionAuthorizer.ts +137 -0
  915. package/src/ai-components/tool-calls/index.ts +4 -0
  916. package/src/ai-components/voice-visualization/glowShader.ts +1 -3
  917. package/src/ai-components/voice-visualization/simplex.ts +1 -1
  918. package/src/components/Accessibility/NotificationAnnouncer.tsx +5 -5
  919. package/src/components/Accessibility/hooks/useIncomingMessageAnnouncements.ts +1 -1
  920. package/src/components/Accessibility/useAccessibilityAnnouncer.ts +0 -2
  921. package/src/components/Message/MessageItemView/utils/renderText.tsx +1 -2
  922. package/src/contexts/translationContext/TranslationContext.tsx +2 -2
  923. package/src/i18n/ar.json +40 -1
  924. package/src/i18n/en.json +40 -1
  925. package/src/i18n/es.json +40 -1
  926. package/src/i18n/fr.json +40 -1
  927. package/src/i18n/he.json +40 -1
  928. package/src/i18n/hi.json +40 -1
  929. package/src/i18n/it.json +40 -1
  930. package/src/i18n/ja.json +40 -1
  931. package/src/i18n/ko.json +40 -1
  932. package/src/i18n/nl.json +40 -1
  933. package/src/i18n/pt-br.json +40 -1
  934. package/src/i18n/ru.json +40 -1
  935. package/src/i18n/tr.json +40 -1
  936. package/src/mock-builders/a2ui/ohrid.ts +106 -0
  937. package/src/utils/i18n/Streami18n.ts +4 -1
  938. package/src/utils/i18n/utils.ts +3 -0
  939. package/src/version.json +1 -1
@@ -0,0 +1,117 @@
1
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ exports.useConversationRows = void 0;
6
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
7
+ var _react = require("react");
8
+ var _entries = require("./entries");
9
+ var _thinkingClock = require("../reasoning/thinkingClock");
10
+ function _createForOfIteratorHelperLoose(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (t) return (t = t.call(r)).next.bind(t); if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var o = 0; return function () { return o >= r.length ? { done: !0 } : { done: !1, value: r[o++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
11
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
12
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
13
+ var TAIL_KEY = 'ai-conversation-tail';
14
+ var sameAttachments = (a, b) => a === b || a.length === 0 && b.length === 0;
15
+ var isSameRow = (row, next) => row.entry.message === next.entry.message && row.entry.pending === next.entry.pending && row.entry.isLatestReply === next.entry.isLatestReply && sameAttachments(row.entry.sentAttachments, next.entry.sentAttachments) && row.firstStepId === next.firstStepId && row.thinkingSince === next.thinkingSince && row.position === next.position && row.turnKey === next.turnKey;
16
+ var firstStepOf = turn => {
17
+ for (var _iterator = _createForOfIteratorHelperLoose((_turn$entries = turn == null ? void 0 : turn.entries) != null ? _turn$entries : []), _step; !(_step = _iterator()).done;) {
18
+ var _turn$entries, _message$parts;
19
+ var _ref = _step.value;
20
+ var message = _ref.message;
21
+ if (!message || message.role === 'user') continue;
22
+ var step = (_message$parts = message.parts) == null ? void 0 : _message$parts.find(part => part.reasoning);
23
+ if (step) return step.id;
24
+ }
25
+ return undefined;
26
+ };
27
+ var useConversationRows = ({
28
+ canShowUI,
29
+ footer,
30
+ isThinking = false,
31
+ isThinkingKnown = false,
32
+ messages,
33
+ pendingMessage
34
+ }) => {
35
+ var _lastMessage$parts, _lastMessage$text$tri, _latest$entries$lengt;
36
+ var _useState = (0, _react.useState)(() => new _entries.AIPendingMessageTracker()),
37
+ _useState2 = (0, _slicedToArray2.default)(_useState, 1),
38
+ tracker = _useState2[0];
39
+ var _useState3 = (0, _react.useState)(() => new _thinkingClock.AIThinkingClock()),
40
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 1),
41
+ clock = _useState4[0];
42
+ var entries = (0, _react.useMemo)(() => tracker.entries(messages, pendingMessage, canShowUI), [canShowUI, messages, pendingMessage, tracker]);
43
+ var thinking = isThinking || !isThinkingKnown && tracker.isAwaitingReply(messages, pendingMessage, canShowUI);
44
+ var lastMessage = messages[messages.length - 1];
45
+ var stepsKey = (0, _entries.hasFinishedSteps)(lastMessage, canShowUI) ? `${lastMessage.id}:${(_lastMessage$parts = lastMessage.parts) == null ? void 0 : _lastMessage$parts.length}` : undefined;
46
+ var textLength = (_lastMessage$text$tri = lastMessage == null ? void 0 : lastMessage.text.trimEnd().length) != null ? _lastMessage$text$tri : 0;
47
+ var _useState5 = (0, _react.useState)(),
48
+ _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
49
+ gap = _useState6[0],
50
+ setGap = _useState6[1];
51
+ if ((gap == null ? void 0 : gap.messageId) !== (lastMessage == null ? void 0 : lastMessage.id) || (gap == null ? void 0 : gap.stepsKey) !== stepsKey || (gap == null ? void 0 : gap.textLength) !== textLength) {
52
+ var _gap$textLength;
53
+ var grew = (gap == null ? void 0 : gap.messageId) === (lastMessage == null ? void 0 : lastMessage.id) && textLength > ((_gap$textLength = gap == null ? void 0 : gap.textLength) != null ? _gap$textLength : 0);
54
+ setGap({
55
+ messageId: lastMessage == null ? void 0 : lastMessage.id,
56
+ since: grew || stepsKey === undefined ? undefined : stepsKey === (gap == null ? void 0 : gap.stepsKey) ? gap.since : Date.now(),
57
+ stepsKey,
58
+ textLength
59
+ });
60
+ }
61
+ var thinkingSince = !thinking && stepsKey !== undefined ? gap == null ? void 0 : gap.since : undefined;
62
+ var thinkingReplyId = thinkingSince !== undefined ? lastMessage == null ? void 0 : lastMessage.id : undefined;
63
+ var turns = (0, _react.useMemo)(() => (0, _entries.turnsOf)(entries), [entries]);
64
+ var latest = turns[turns.length - 1];
65
+ var latestHasReplies = ((_latest$entries$lengt = latest == null ? void 0 : latest.entries.length) != null ? _latest$entries$lengt : 0) > 1;
66
+ var latestFirstStepId = firstStepOf(latest);
67
+ var latestHasFirstStep = latestFirstStepId !== undefined;
68
+ (0, _react.useLayoutEffect)(() => {
69
+ clock.update(latest == null ? void 0 : latest.id, thinking, latestHasReplies, latestHasFirstStep);
70
+ }, [clock, latest == null ? void 0 : latest.id, latestHasFirstStep, latestHasReplies, thinking]);
71
+ var rowCache = (0, _react.useRef)(new Map());
72
+ var entryRows = (0, _react.useMemo)(() => {
73
+ var cache = new Map();
74
+ var next = [];
75
+ turns.forEach(turn => {
76
+ var firstStepId = firstStepOf(turn);
77
+ turn.entries.forEach((entry, index) => {
78
+ var _entry$message;
79
+ var fields = {
80
+ entry,
81
+ firstStepId,
82
+ kind: 'entry',
83
+ position: index > 0 ? 'message' : 'turn',
84
+ thinkingSince: thinkingReplyId !== undefined && ((_entry$message = entry.message) == null ? void 0 : _entry$message.id) === thinkingReplyId ? thinkingSince : undefined,
85
+ turnKey: turn.id
86
+ };
87
+ var previous = rowCache.current.get(entry.id);
88
+ var row = previous && isSameRow(previous, fields) ? previous : {
89
+ ...fields,
90
+ key: entry.id
91
+ };
92
+ cache.set(entry.id, row);
93
+ next.push(row);
94
+ });
95
+ });
96
+ rowCache.current = cache;
97
+ return next;
98
+ }, [thinkingReplyId, thinkingSince, turns]);
99
+ var lastTurnKey = latest == null ? void 0 : latest.id;
100
+ var tailRow = (0, _react.useMemo)(() => lastTurnKey !== undefined && (thinking || footer) ? {
101
+ firstStepId: latestFirstStepId,
102
+ footer,
103
+ isThinking: thinking,
104
+ key: TAIL_KEY,
105
+ kind: 'tail',
106
+ turnKey: lastTurnKey
107
+ } : undefined, [footer, lastTurnKey, latestFirstStepId, thinking]);
108
+ var rows = (0, _react.useMemo)(() => tailRow ? [...entryRows, tailRow] : entryRows, [entryRows, tailRow]);
109
+ return {
110
+ anchorKey: lastTurnKey,
111
+ clock,
112
+ isEmpty: entryRows.length === 0,
113
+ rows
114
+ };
115
+ };
116
+ exports.useConversationRows = useConversationRows;
117
+ //# sourceMappingURL=useConversationRows.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_entries","_thinkingClock","_createForOfIteratorHelperLoose","r","e","t","Symbol","iterator","call","next","bind","Array","isArray","_unsupportedIterableToArray","length","o","done","value","TypeError","a","_arrayLikeToArray","toString","slice","constructor","name","from","test","n","TAIL_KEY","sameAttachments","b","isSameRow","row","entry","message","pending","isLatestReply","sentAttachments","firstStepId","thinkingSince","position","turnKey","firstStepOf","turn","_iterator","_turn$entries","entries","_step","_message$parts","_ref","role","step","parts","find","part","reasoning","id","undefined","useConversationRows","canShowUI","footer","isThinking","isThinkingKnown","messages","pendingMessage","_lastMessage$parts","_lastMessage$text$tri","_latest$entries$lengt","_useState","useState","AIPendingMessageTracker","_useState2","_slicedToArray2","default","tracker","_useState3","AIThinkingClock","_useState4","clock","useMemo","thinking","isAwaitingReply","lastMessage","stepsKey","hasFinishedSteps","textLength","text","trimEnd","_useState5","_useState6","gap","setGap","messageId","_gap$textLength","grew","since","Date","now","thinkingReplyId","turns","turnsOf","latest","latestHasReplies","latestFirstStepId","latestHasFirstStep","useLayoutEffect","update","rowCache","useRef","Map","entryRows","cache","forEach","index","_entry$message","fields","kind","previous","current","get","key","set","push","lastTurnKey","tailRow","rows","anchorKey","isEmpty","exports"],"sourceRoot":"../../../../src","sources":["ai-components/conversation/useConversationRows.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ Object.defineProperty(exports, "__esModule", {
2
+ value: true
3
+ });
4
+ exports.AIAgentError = void 0;
5
+ class AIAgentError extends Error {
6
+ constructor(agentMessage) {
7
+ super(agentMessage || 'The agent couldn’t answer. Try again.');
8
+ this.name = 'AIAgentError';
9
+ this.agentMessage = agentMessage || undefined;
10
+ }
11
+ }
12
+ exports.AIAgentError = AIAgentError;
13
+ //# sourceMappingURL=AIAgentError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["AIAgentError","Error","constructor","agentMessage","name","undefined","exports"],"sourceRoot":"../../../../../src","sources":["ai-components/conversation-state/controller/AIAgentError.ts"],"mappings":";;;;AAIO,MAAMA,YAAY,SAASC,KAAK,CAAC;EAItCC,WAAWA,CAACC,YAAqB,EAAE;IACjC,KAAK,CAACA,YAAY,IAAI,uCAAuC,CAAC;IAC9D,IAAI,CAACC,IAAI,GAAG,cAAc;IAC1B,IAAI,CAACD,YAAY,GAAGA,YAAY,IAAIE,SAAS;EAC/C;AACF;AAACC,OAAA,CAAAN,YAAA,GAAAA,YAAA","ignoreList":[]}
@@ -0,0 +1,431 @@
1
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ exports.AIConversationController = void 0;
6
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
7
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
8
+ var _stateStore = require("@stream-io/state-store");
9
+ var _AIAgentError = require("./AIAgentError");
10
+ var _AIConversationExchange = require("./AIConversationExchange");
11
+ var _offers = require("./offers");
12
+ var _types = require("./types");
13
+ var _uuid = require("../../internal/uuid");
14
+ var _store = require("../../store/composer/store");
15
+ function _createForOfIteratorHelperLoose(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (t) return (t = t.call(r)).next.bind(t); if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var o = 0; return function () { return o >= r.length ? { done: !0 } : { done: !1, value: r[o++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
16
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
17
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
18
+ var DEFAULT_REPLY_TIMEOUT = 5 * 60 * 1000;
19
+ var MAX_TIMEOUT = 2 ** 31 - 1;
20
+ var ALL_ACTIONS = {
21
+ edit: true,
22
+ rate: true,
23
+ regenerate: true
24
+ };
25
+ var isAbortError = error => (error == null ? void 0 : error.name) === 'AbortError';
26
+ var asError = error => error instanceof Error ? error : new Error(String(error));
27
+ var sameItems = (a, b) => a.length === b.length && a.every((item, index) => item === b[index]);
28
+ var sameRatings = (a, b) => {
29
+ var keys = Object.keys(a);
30
+ return keys.length === Object.keys(b).length && keys.every(key => a[key] === b[key]);
31
+ };
32
+ class AIConversationController {
33
+ disposed = false;
34
+ received = [];
35
+ generation = 0;
36
+ stopped = new Set();
37
+ ignoresActivity = false;
38
+ hasOlderMessages = false;
39
+ ratingChanges = new Map();
40
+ ratingAttempts = 0;
41
+ isLoadingOlderMessages = false;
42
+ constructor({
43
+ actions,
44
+ approver,
45
+ composer,
46
+ replyTimeout = DEFAULT_REPLY_TIMEOUT,
47
+ transport
48
+ }) {
49
+ this.transport = transport;
50
+ this.composer = composer != null ? composer : (0, _store.createNewComposerStore)();
51
+ this.approver = approver;
52
+ this.actions = {
53
+ ...ALL_ACTIONS,
54
+ ...actions
55
+ };
56
+ this.replyTimeout = replyTimeout;
57
+ this.state = new _stateStore.StateStore({
58
+ activity: undefined,
59
+ error: undefined,
60
+ hasOlderMessages: false,
61
+ messages: [],
62
+ pendingMessage: undefined,
63
+ ratings: {},
64
+ status: 'ready'
65
+ });
66
+ var disconnect = transport.connect(this.makeFeed());
67
+ this.disconnect = typeof disconnect === 'function' ? disconnect : undefined;
68
+ }
69
+ get editingMessage() {
70
+ return this.composer.getLatestValue().isEditing ? this.edited : undefined;
71
+ }
72
+ dispose() {
73
+ var _this$disconnect;
74
+ if (this.disposed) return;
75
+ this.disposed = true;
76
+ this.clearReplyTimer();
77
+ (_this$disconnect = this.disconnect) == null || _this$disconnect.call(this);
78
+ }
79
+ send({
80
+ attachments = [],
81
+ chatOption,
82
+ custom,
83
+ text
84
+ }) {
85
+ if (text.trim() === '' && attachments.length === 0) return;
86
+ var editing = this.editingMessage;
87
+ this.edited = undefined;
88
+ if (this.composer.getLatestValue().isEditing) this.composer.partialNext({
89
+ isEditing: false
90
+ });
91
+ this.start({
92
+ attachments,
93
+ chatOption,
94
+ custom,
95
+ kind: editing ? 'edit' : 'message',
96
+ message: editing,
97
+ messageId: (0, _uuid.generateUUIDv4)(),
98
+ text
99
+ });
100
+ }
101
+ stop() {
102
+ var _this$exchange,
103
+ _this = this;
104
+ if (!(0, _types.isAIConversationAnswering)(this.state.getLatestValue().status)) return;
105
+ var id = ++this.generation;
106
+ this.activity = undefined;
107
+ this.ignoresActivity = true;
108
+ if (((_this$exchange = this.exchange) == null ? void 0 : _this$exchange.state) === 'waiting') this.exchange.state = 'stopped';
109
+ var writing = this.writingReply;
110
+ if (writing) this.stopped.add(writing);
111
+ this.refresh();
112
+ this.stopping = (0, _asyncToGenerator2.default)(function* () {
113
+ try {
114
+ yield _this.transport.stop();
115
+ } catch (error) {
116
+ _this.stopFailed(id, writing, error);
117
+ }
118
+ })();
119
+ }
120
+ regenerate(reply) {
121
+ var index = this.indexOf(reply);
122
+ if (index < 0 || this.received[index].role === 'user') return;
123
+ this.start(this.regenerateRequest(index));
124
+ }
125
+ edit(message) {
126
+ if (message.role !== 'user') return;
127
+ this.edited = message;
128
+ this.composer.partialNext({
129
+ isEditing: true,
130
+ text: message.text
131
+ });
132
+ }
133
+ cancelEditing() {
134
+ if (!this.editingMessage) return;
135
+ this.edited = undefined;
136
+ this.composer.partialNext({
137
+ isEditing: false,
138
+ text: ''
139
+ });
140
+ }
141
+ retry() {
142
+ var exchange = this.exchange;
143
+ if (!(exchange != null && exchange.hasFailed)) return;
144
+ this.start(exchange.retryRequest(this.received));
145
+ }
146
+ clearError() {
147
+ var _this$exchange2;
148
+ this.error = undefined;
149
+ if ((_this$exchange2 = this.exchange) != null && _this$exchange2.hasFailed) this.exchange = undefined;
150
+ this.refresh();
151
+ }
152
+ rate(reply, rating) {
153
+ var _this$state$getLatest,
154
+ _this$ratingChanges$g,
155
+ _this2 = this;
156
+ var current = (_this$state$getLatest = this.state.getLatestValue().ratings[reply.id]) != null ? _this$state$getLatest : null;
157
+ if (current === rating) return;
158
+ var attempt = ++this.ratingAttempts;
159
+ var change = (_this$ratingChanges$g = this.ratingChanges.get(reply.id)) != null ? _this$ratingChanges$g : {
160
+ attempt: 0,
161
+ sent: current,
162
+ shown: current
163
+ };
164
+ var earlier = change.sending;
165
+ change.shown = rating;
166
+ change.attempt = attempt;
167
+ change.sending = (0, _asyncToGenerator2.default)(function* () {
168
+ yield earlier;
169
+ yield _this2.sendRating(rating, reply, attempt);
170
+ })();
171
+ this.ratingChanges.set(reply.id, change);
172
+ this.refresh();
173
+ }
174
+ loadOlderMessages = (() => {
175
+ var _this3 = this;
176
+ return (0, _asyncToGenerator2.default)(function* () {
177
+ if (!_this3.hasOlderMessages || _this3.isLoadingOlderMessages) return;
178
+ _this3.isLoadingOlderMessages = true;
179
+ try {
180
+ yield _this3.transport.loadOlderMessages == null ? void 0 : _this3.transport.loadOlderMessages();
181
+ } catch (_unused) {} finally {
182
+ _this3.isLoadingOlderMessages = false;
183
+ }
184
+ });
185
+ })();
186
+ replyActions(reply, isLatestReply) {
187
+ return (0, _offers.replyActionsOf)(this, this.state.getLatestValue(), reply, isLatestReply);
188
+ }
189
+ editAction(message) {
190
+ var _this$state$getLatest2 = this.state.getLatestValue(),
191
+ messages = _this$state$getLatest2.messages,
192
+ status = _this$state$getLatest2.status;
193
+ return (0, _offers.editActionOf)(this, {
194
+ latestUserMessageId: (0, _offers.latestUserMessageIdOf)(messages),
195
+ status
196
+ }, message);
197
+ }
198
+ makeFeed() {
199
+ var isDisposed = () => this.disposed;
200
+ return {
201
+ get isConnected() {
202
+ return !isDisposed();
203
+ },
204
+ updateActivity: activity => {
205
+ if (!this.disposed) this.receiveActivity(activity);
206
+ },
207
+ updateHasOlderMessages: hasOlderMessages => {
208
+ if (this.disposed || this.hasOlderMessages === hasOlderMessages) return;
209
+ this.hasOlderMessages = hasOlderMessages;
210
+ this.refresh();
211
+ },
212
+ updateMessages: messages => {
213
+ if (!this.disposed) this.receiveMessages(messages);
214
+ }
215
+ };
216
+ }
217
+ receiveMessages(messages) {
218
+ this.received = messages;
219
+ var exchange = this.exchange;
220
+ var reply = exchange == null ? void 0 : exchange.reply(messages);
221
+ if (exchange && reply) this.receiveReply(reply, exchange);
222
+ this.refresh();
223
+ }
224
+ receiveActivity(activity) {
225
+ if (!activity) {
226
+ var _this$exchange3;
227
+ this.ignoresActivity = false;
228
+ this.activity = undefined;
229
+ if (((_this$exchange3 = this.exchange) == null ? void 0 : _this$exchange3.state) === 'waiting') this.waitForReply(this.exchange.id);
230
+ this.refresh();
231
+ return;
232
+ }
233
+ if (this.ignoresActivity) return;
234
+ this.activity = activity;
235
+ if (activity.state === _types.AIAgentActivityStates.error) {
236
+ this.agentCouldNotAnswer(new _AIAgentError.AIAgentError(activity.text));
237
+ } else {
238
+ this.clearReplyTimer();
239
+ }
240
+ this.refresh();
241
+ }
242
+ start(request) {
243
+ var _this4 = this;
244
+ var id = ++this.generation;
245
+ this.error = undefined;
246
+ this.activity = undefined;
247
+ this.ignoresActivity = false;
248
+ this.stopped = new Set();
249
+ this.clearReplyTimer();
250
+ this.exchange = new _AIConversationExchange.AIConversationExchange(id, request, this.received);
251
+ this.refresh();
252
+ var previousStop = this.stopping;
253
+ void (0, _asyncToGenerator2.default)(function* () {
254
+ yield previousStop;
255
+ if (_this4.disposed) return;
256
+ try {
257
+ yield _this4.transport.send(request);
258
+ _this4.requestSent(id);
259
+ } catch (error) {
260
+ _this4.requestFailed(id, error);
261
+ }
262
+ })();
263
+ }
264
+ receiveReply(reply, exchange) {
265
+ if (exchange.state === 'stopped') {
266
+ if (reply.isGenerating) this.stopped.add(reply.id);
267
+ this.exchange = undefined;
268
+ } else if (!(0, _AIConversationExchange.hasEmptyContent)(reply) || !reply.isGenerating) {
269
+ this.exchange = undefined;
270
+ this.clearReplyTimer();
271
+ if (exchange.hasFailed) {
272
+ this.error = undefined;
273
+ this.stopped.delete(reply.id);
274
+ }
275
+ }
276
+ }
277
+ requestSent(id) {
278
+ var exchange = this.exchange;
279
+ if (this.disposed || (exchange == null ? void 0 : exchange.id) !== id || exchange.state !== 'waiting' || this.activity) {
280
+ return;
281
+ }
282
+ this.waitForReply(id);
283
+ }
284
+ requestFailed(id, error) {
285
+ var exchange = this.exchange;
286
+ if (this.disposed || (exchange == null ? void 0 : exchange.id) !== id || exchange.hasFailed) return;
287
+ if (isAbortError(error)) {
288
+ this.exchange = undefined;
289
+ } else {
290
+ exchange.state = 'failed';
291
+ this.error = asError(error);
292
+ }
293
+ this.refresh();
294
+ }
295
+ stopFailed(id, writing, error) {
296
+ if (this.disposed || id !== this.generation || isAbortError(error)) return;
297
+ if (writing) this.stopped.delete(writing);
298
+ var exchange = this.exchange;
299
+ if ((exchange == null ? void 0 : exchange.state) === 'stopped') {
300
+ exchange.state = 'waiting';
301
+ this.waitForReply(exchange.id);
302
+ }
303
+ this.ignoresActivity = false;
304
+ this.refresh();
305
+ }
306
+ agentCouldNotAnswer(error) {
307
+ var writing = this.writingReply;
308
+ if (writing) this.stopped.add(writing);
309
+ var request = this.exchange ? undefined : this.answerAgainRequest;
310
+ if (request) {
311
+ this.exchange = new _AIConversationExchange.AIConversationExchange(++this.generation, request, this.received);
312
+ }
313
+ if (this.exchange) this.exchange.state = 'unanswered';
314
+ this.clearReplyTimer();
315
+ this.error = error;
316
+ }
317
+ waitForReply(id) {
318
+ this.clearReplyTimer();
319
+ var timeout = this.replyTimeout;
320
+ if (timeout === null || !Number.isFinite(timeout) || timeout > MAX_TIMEOUT) return;
321
+ this.replyTimer = setTimeout(() => this.replyTimedOut(id), Math.max(timeout, 0));
322
+ }
323
+ clearReplyTimer() {
324
+ if (this.replyTimer !== undefined) clearTimeout(this.replyTimer);
325
+ this.replyTimer = undefined;
326
+ }
327
+ replyTimedOut(id) {
328
+ this.replyTimer = undefined;
329
+ var exchange = this.exchange;
330
+ if (this.disposed || (exchange == null ? void 0 : exchange.id) !== id || exchange.state !== 'waiting') return;
331
+ this.agentCouldNotAnswer(new _AIAgentError.AIAgentError());
332
+ this.refresh();
333
+ }
334
+ sendRating(rating, reply, attempt) {
335
+ var _this5 = this;
336
+ return (0, _asyncToGenerator2.default)(function* () {
337
+ var _this5$ratingChanges$;
338
+ if (_this5.disposed || ((_this5$ratingChanges$ = _this5.ratingChanges.get(reply.id)) == null ? void 0 : _this5$ratingChanges$.attempt) !== attempt) return;
339
+ try {
340
+ yield _this5.transport.rate == null ? void 0 : _this5.transport.rate(reply, rating);
341
+ var change = _this5.ratingChanges.get(reply.id);
342
+ if (change) change.sent = rating;
343
+ } catch (_unused2) {
344
+ var _change = _this5.ratingChanges.get(reply.id);
345
+ if (_this5.disposed || !_change || _change.attempt !== attempt) return;
346
+ _change.shown = _change.sent;
347
+ _this5.refresh();
348
+ }
349
+ })();
350
+ }
351
+ regenerateRequest(index) {
352
+ var _prompt$text;
353
+ var prompt = this.received.slice(0, index).reverse().find(message => message.role === 'user');
354
+ return {
355
+ attachments: [],
356
+ kind: 'regenerate',
357
+ message: this.received[index],
358
+ messageId: (0, _uuid.generateUUIDv4)(),
359
+ text: (_prompt$text = prompt == null ? void 0 : prompt.text) != null ? _prompt$text : ''
360
+ };
361
+ }
362
+ get answerAgainRequest() {
363
+ var last = this.received.length - 1;
364
+ if (last < 0) return undefined;
365
+ if (this.received[last].role !== 'user') return this.regenerateRequest(last);
366
+ return {
367
+ attachments: [],
368
+ kind: 'regenerate',
369
+ messageId: (0, _uuid.generateUUIDv4)(),
370
+ text: this.received[last].text
371
+ };
372
+ }
373
+ get writingReply() {
374
+ var last = this.received[this.received.length - 1];
375
+ return last && last.role !== 'user' && last.isGenerating ? last.id : undefined;
376
+ }
377
+ indexOf(message) {
378
+ return this.received.findIndex(item => item.id === message.id);
379
+ }
380
+ refresh() {
381
+ var _this$exchange4, _this$exchange5, _current$pendingMessa;
382
+ var current = this.state.getLatestValue();
383
+ var replaced = ((_this$exchange4 = this.exchange) == null ? void 0 : _this$exchange4.state) === 'waiting' ? this.exchange.replaced : undefined;
384
+ var messages = !replaced && this.stopped.size === 0 ? this.received : this.received.filter(message => !(replaced != null && replaced.has(message.id)) && !(this.stopped.has(message.id) && (0, _AIConversationExchange.hasEmptyContent)(message)));
385
+ if (sameItems(messages, current.messages)) messages = current.messages;
386
+ var shownPending = (_this$exchange5 = this.exchange) == null ? void 0 : _this$exchange5.shownPending;
387
+ var pendingMessage = ((_current$pendingMessa = current.pendingMessage) == null ? void 0 : _current$pendingMessa.id) === (shownPending == null ? void 0 : shownPending.id) ? current.pendingMessage : shownPending;
388
+ var nextRatings = this.currentRatings();
389
+ var ratings = sameRatings(nextRatings, current.ratings) ? current.ratings : nextRatings;
390
+ var next = {
391
+ activity: this.activity,
392
+ error: this.error,
393
+ hasOlderMessages: this.hasOlderMessages,
394
+ messages,
395
+ pendingMessage,
396
+ ratings,
397
+ status: this.currentStatus(messages)
398
+ };
399
+ var changed = Object.keys(next).some(key => next[key] !== current[key]);
400
+ if (changed) this.state.next(next);
401
+ }
402
+ currentRatings() {
403
+ var ratings = {};
404
+ for (var _iterator = _createForOfIteratorHelperLoose(this.received), _step; !(_step = _iterator()).done;) {
405
+ var message = _step.value;
406
+ if (message.role !== 'user' && message.rating) ratings[message.id] = message.rating;
407
+ }
408
+ for (var _iterator2 = _createForOfIteratorHelperLoose(this.ratingChanges), _step2; !(_step2 = _iterator2()).done;) {
409
+ var _ref5 = _step2.value;
410
+ var _ref6 = (0, _slicedToArray2.default)(_ref5, 2);
411
+ var id = _ref6[0];
412
+ var change = _ref6[1];
413
+ if (change.shown) ratings[id] = change.shown;else delete ratings[id];
414
+ }
415
+ return ratings;
416
+ }
417
+ currentStatus(messages) {
418
+ var _this$exchange6;
419
+ if (((_this$exchange6 = this.exchange) == null ? void 0 : _this$exchange6.state) === 'waiting') return 'submitted';
420
+ var last = messages[messages.length - 1];
421
+ if (last && last.role !== 'user' && last.isGenerating && !this.stopped.has(last.id)) {
422
+ return (0, _AIConversationExchange.hasEmptyContent)(last) ? 'submitted' : 'streaming';
423
+ }
424
+ if (this.activity && this.activity.state !== _types.AIAgentActivityStates.error && (!last || last.role === 'user')) {
425
+ return 'submitted';
426
+ }
427
+ return this.error ? 'error' : 'ready';
428
+ }
429
+ }
430
+ exports.AIConversationController = AIConversationController;
431
+ //# sourceMappingURL=AIConversationController.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_stateStore","require","_AIAgentError","_AIConversationExchange","_offers","_types","_uuid","_store","_createForOfIteratorHelperLoose","r","e","t","Symbol","iterator","call","next","bind","Array","isArray","_unsupportedIterableToArray","length","o","done","value","TypeError","a","_arrayLikeToArray","toString","slice","constructor","name","from","test","n","DEFAULT_REPLY_TIMEOUT","MAX_TIMEOUT","ALL_ACTIONS","edit","rate","regenerate","isAbortError","error","asError","Error","String","sameItems","b","every","item","index","sameRatings","keys","Object","key","AIConversationController","disposed","received","generation","stopped","Set","ignoresActivity","hasOlderMessages","ratingChanges","Map","ratingAttempts","isLoadingOlderMessages","actions","approver","composer","replyTimeout","transport","createNewComposerStore","state","StateStore","activity","undefined","messages","pendingMessage","ratings","status","disconnect","connect","makeFeed","editingMessage","getLatestValue","isEditing","edited","dispose","_this$disconnect","clearReplyTimer","send","attachments","chatOption","custom","text","trim","editing","partialNext","start","kind","message","messageId","generateUUIDv4","stop","_this$exchange","_this","isAIConversationAnswering","id","exchange","writing","writingReply","add","refresh","stopping","_asyncToGenerator2","default","stopFailed","reply","indexOf","role","regenerateRequest","cancelEditing","retry","hasFailed","retryRequest","clearError","_this$exchange2","rating","_this$state$getLatest","_this$ratingChanges$g","_this2","current","attempt","change","get","sent","shown","earlier","sending","sendRating","set","loadOlderMessages","_this3","_unused","replyActions","isLatestReply","replyActionsOf","editAction","_this$state$getLatest2","editActionOf","latestUserMessageId","latestUserMessageIdOf","isDisposed","isConnected","updateActivity","receiveActivity","updateHasOlderMessages","updateMessages","receiveMessages","receiveReply","_this$exchange3","waitForReply","AIAgentActivityStates","agentCouldNotAnswer","AIAgentError","request","_this4","AIConversationExchange","previousStop","requestSent","requestFailed","isGenerating","hasEmptyContent","delete","answerAgainRequest","timeout","Number","isFinite","replyTimer","setTimeout","replyTimedOut","Math","max","clearTimeout","_this5","_this5$ratingChanges$","_unused2","_prompt$text","prompt","reverse","find","last","findIndex","_this$exchange4","_this$exchange5","_current$pendingMessa","replaced","size","filter","has","shownPending","nextRatings","currentRatings","currentStatus","changed","some","_iterator","_step","_iterator2","_step2","_ref5","_ref6","_slicedToArray2","_this$exchange6","exports"],"sourceRoot":"../../../../../src","sources":["ai-components/conversation-state/controller/AIConversationController.ts"],"mappings":"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","ignoreList":[]}