@athenaintel/react 0.43.0 → 0.48.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 (661) hide show
  1. package/README.md +215 -3
  2. package/dist/agent-runtime/src/answer-label.cjs +137 -0
  3. package/dist/agent-runtime/src/answer-label.cjs.map +1 -0
  4. package/dist/agent-runtime/src/answer-label.d.ts +104 -0
  5. package/dist/agent-runtime/src/answer-label.js +137 -0
  6. package/dist/agent-runtime/src/answer-label.js.map +1 -0
  7. package/dist/agent-runtime/src/answer-rows.cjs +180 -0
  8. package/dist/agent-runtime/src/answer-rows.cjs.map +1 -0
  9. package/dist/agent-runtime/src/answer-rows.d.ts +86 -0
  10. package/dist/agent-runtime/src/answer-rows.js +180 -0
  11. package/dist/agent-runtime/src/answer-rows.js.map +1 -0
  12. package/dist/agent-runtime/src/client-tool-bridge.cjs +15 -15
  13. package/dist/agent-runtime/src/client-tool-bridge.cjs.map +1 -1
  14. package/dist/agent-runtime/src/conversation-index.cjs +8 -8
  15. package/dist/agent-runtime/src/conversation-index.cjs.map +1 -1
  16. package/dist/agent-runtime/src/decision-checks.cjs +207 -0
  17. package/dist/agent-runtime/src/decision-checks.cjs.map +1 -0
  18. package/dist/agent-runtime/src/decision-checks.d.ts +142 -0
  19. package/dist/agent-runtime/src/decision-checks.js +207 -0
  20. package/dist/agent-runtime/src/decision-checks.js.map +1 -0
  21. package/dist/agent-runtime/src/desktop-handoff.d.ts +12 -0
  22. package/dist/agent-runtime/src/errors.cjs +18 -0
  23. package/dist/agent-runtime/src/errors.cjs.map +1 -1
  24. package/dist/agent-runtime/src/errors.d.ts +7 -0
  25. package/dist/agent-runtime/src/errors.js +18 -0
  26. package/dist/agent-runtime/src/errors.js.map +1 -1
  27. package/dist/agent-runtime/src/generated/runconfig-contract.cjs +12 -0
  28. package/dist/agent-runtime/src/generated/runconfig-contract.cjs.map +1 -1
  29. package/dist/agent-runtime/src/generated/runconfig-contract.d.ts +6 -6
  30. package/dist/agent-runtime/src/generated/runconfig-contract.js +12 -0
  31. package/dist/agent-runtime/src/generated/runconfig-contract.js.map +1 -1
  32. package/dist/agent-runtime/src/handoff-arrival.cjs +60 -0
  33. package/dist/agent-runtime/src/handoff-arrival.cjs.map +1 -0
  34. package/dist/agent-runtime/src/handoff-arrival.d.ts +46 -0
  35. package/dist/agent-runtime/src/handoff-arrival.js +60 -0
  36. package/dist/agent-runtime/src/handoff-arrival.js.map +1 -0
  37. package/dist/agent-runtime/src/index.d.ts +14 -8
  38. package/dist/agent-runtime/src/interrupts.cjs +43 -18
  39. package/dist/agent-runtime/src/interrupts.cjs.map +1 -1
  40. package/dist/agent-runtime/src/interrupts.d.ts +19 -2
  41. package/dist/agent-runtime/src/interrupts.js +28 -3
  42. package/dist/agent-runtime/src/interrupts.js.map +1 -1
  43. package/dist/agent-runtime/src/lane-history.cjs +8 -8
  44. package/dist/agent-runtime/src/lane-history.cjs.map +1 -1
  45. package/dist/agent-runtime/src/messages.cjs +43 -8
  46. package/dist/agent-runtime/src/messages.cjs.map +1 -1
  47. package/dist/agent-runtime/src/messages.d.ts +25 -3
  48. package/dist/agent-runtime/src/messages.js +43 -8
  49. package/dist/agent-runtime/src/messages.js.map +1 -1
  50. package/dist/agent-runtime/src/offline-status.cjs +36 -0
  51. package/dist/agent-runtime/src/offline-status.cjs.map +1 -0
  52. package/dist/agent-runtime/src/offline-status.d.ts +118 -3
  53. package/dist/agent-runtime/src/offline-status.js +36 -0
  54. package/dist/agent-runtime/src/offline-status.js.map +1 -0
  55. package/dist/agent-runtime/src/queue.cjs +0 -9
  56. package/dist/agent-runtime/src/queue.cjs.map +1 -1
  57. package/dist/agent-runtime/src/queue.js +0 -9
  58. package/dist/agent-runtime/src/queue.js.map +1 -1
  59. package/dist/agent-runtime/src/quota-safe-local-storage-session.cjs +9 -9
  60. package/dist/agent-runtime/src/quota-safe-local-storage-session.cjs.map +1 -1
  61. package/dist/agent-runtime/src/runtime-catalog.cjs +42 -0
  62. package/dist/agent-runtime/src/runtime-catalog.cjs.map +1 -0
  63. package/dist/agent-runtime/src/runtime-catalog.d.ts +35 -0
  64. package/dist/agent-runtime/src/runtime-catalog.js +42 -0
  65. package/dist/agent-runtime/src/runtime-catalog.js.map +1 -0
  66. package/dist/agent-runtime/src/runtime-messages.cjs.map +1 -1
  67. package/dist/agent-runtime/src/runtime-messages.d.ts +1 -1
  68. package/dist/agent-runtime/src/runtime-messages.js.map +1 -1
  69. package/dist/agent-runtime/src/runtime.d.ts +40 -0
  70. package/dist/agent-runtime/src/statewire-suspended.cjs +3 -3
  71. package/dist/agent-runtime/src/statewire-suspended.cjs.map +1 -1
  72. package/dist/agent-runtime/src/subagents.cjs +32 -2
  73. package/dist/agent-runtime/src/subagents.cjs.map +1 -1
  74. package/dist/agent-runtime/src/subagents.d.ts +9 -0
  75. package/dist/agent-runtime/src/subagents.js +30 -0
  76. package/dist/agent-runtime/src/subagents.js.map +1 -1
  77. package/dist/agent-runtime/src/thread-driver.cjs +67 -0
  78. package/dist/agent-runtime/src/thread-driver.cjs.map +1 -0
  79. package/dist/agent-runtime/src/thread-driver.d.ts +49 -0
  80. package/dist/agent-runtime/src/thread-driver.js +67 -0
  81. package/dist/agent-runtime/src/thread-driver.js.map +1 -0
  82. package/dist/agent-runtime/src/thread-handoff-flow-machine.d.ts +172 -0
  83. package/dist/agent-runtime/src/thread-handoff-protocol.d.ts +756 -0
  84. package/dist/agent-runtime/src/thread-handoff-qr.d.ts +11 -0
  85. package/dist/agent-runtime/src/thread-handoff.d.ts +3 -364
  86. package/dist/agent-runtime/src/thread-status.cjs +3 -3
  87. package/dist/agent-runtime/src/thread-status.cjs.map +1 -1
  88. package/dist/agent-runtime/src/tool-metadata.cjs +210 -25
  89. package/dist/agent-runtime/src/tool-metadata.cjs.map +1 -1
  90. package/dist/agent-runtime/src/tool-metadata.d.ts +12 -0
  91. package/dist/agent-runtime/src/tool-metadata.js +210 -25
  92. package/dist/agent-runtime/src/tool-metadata.js.map +1 -1
  93. package/dist/agent-runtime/src/tool-names.cjs +2 -0
  94. package/dist/agent-runtime/src/tool-names.cjs.map +1 -1
  95. package/dist/agent-runtime/src/tool-names.d.ts +2 -0
  96. package/dist/agent-runtime/src/tool-names.js +2 -0
  97. package/dist/agent-runtime/src/tool-names.js.map +1 -1
  98. package/dist/agent-runtime/src/types.d.ts +10 -2
  99. package/dist/agent-runtime/src/use-conversation-list.cjs +11 -11
  100. package/dist/agent-runtime/src/use-conversation-list.cjs.map +1 -1
  101. package/dist/agent-runtime/src/use-deep-agent-chat-outbox.cjs +24 -19
  102. package/dist/agent-runtime/src/use-deep-agent-chat-outbox.cjs.map +1 -1
  103. package/dist/agent-runtime/src/use-deep-agent-chat-outbox.d.ts +2 -1
  104. package/dist/agent-runtime/src/use-deep-agent-chat-outbox.js +6 -1
  105. package/dist/agent-runtime/src/use-deep-agent-chat-outbox.js.map +1 -1
  106. package/dist/agent-runtime/src/use-deep-agent-config.cjs +14 -14
  107. package/dist/agent-runtime/src/use-deep-agent-config.cjs.map +1 -1
  108. package/dist/agent-runtime/src/use-deep-agent-edit-submit.cjs +6 -6
  109. package/dist/agent-runtime/src/use-deep-agent-edit-submit.cjs.map +1 -1
  110. package/dist/agent-runtime/src/use-deep-agent-runtime.cjs +16 -16
  111. package/dist/agent-runtime/src/use-deep-agent-runtime.cjs.map +1 -1
  112. package/dist/agent-runtime/src/use-deep-agent-thread.cjs +45 -45
  113. package/dist/agent-runtime/src/use-deep-agent-thread.cjs.map +1 -1
  114. package/dist/agent-runtime/src/use-deep-agent-voice.cjs +547 -124
  115. package/dist/agent-runtime/src/use-deep-agent-voice.cjs.map +1 -1
  116. package/dist/agent-runtime/src/use-deep-agent-voice.d.ts +129 -10
  117. package/dist/agent-runtime/src/use-deep-agent-voice.js +487 -64
  118. package/dist/agent-runtime/src/use-deep-agent-voice.js.map +1 -1
  119. package/dist/agent-runtime/src/use-deep-agent-window-sync.cjs +26 -26
  120. package/dist/agent-runtime/src/use-deep-agent-window-sync.cjs.map +1 -1
  121. package/dist/agent-runtime/src/use-historical-edit-attachments.cjs +4 -4
  122. package/dist/agent-runtime/src/use-historical-edit-attachments.cjs.map +1 -1
  123. package/dist/agent-runtime/src/use-thread-handoff-flow.d.ts +28 -26
  124. package/dist/agent-runtime/src/voice-media.cjs +117 -0
  125. package/dist/agent-runtime/src/voice-media.cjs.map +1 -0
  126. package/dist/agent-runtime/src/voice-media.d.ts +49 -0
  127. package/dist/agent-runtime/src/voice-media.js +117 -0
  128. package/dist/agent-runtime/src/voice-media.js.map +1 -0
  129. package/dist/agent-runtime/src/voice-wire-types.d.ts +32 -0
  130. package/dist/assets/AssetPanel.cjs +11 -11
  131. package/dist/assets/AssetPanel.cjs.map +1 -1
  132. package/dist/assets/AthenaAssetEmbed.cjs +11 -9
  133. package/dist/assets/AthenaAssetEmbed.cjs.map +1 -1
  134. package/dist/assets/AthenaAssetEmbed.d.ts +7 -0
  135. package/dist/assets/AthenaAssetEmbed.js +4 -2
  136. package/dist/assets/AthenaAssetEmbed.js.map +1 -1
  137. package/dist/assets/AthenaLayout.cjs +16 -16
  138. package/dist/assets/AthenaLayout.cjs.map +1 -1
  139. package/dist/assets/use-asset-content.cjs +4 -4
  140. package/dist/assets/use-asset-content.cjs.map +1 -1
  141. package/dist/assets/use-asset-embed.cjs +14 -7
  142. package/dist/assets/use-asset-embed.cjs.map +1 -1
  143. package/dist/assets/use-asset-embed.d.ts +11 -1
  144. package/dist/assets/use-asset-embed.js +10 -3
  145. package/dist/assets/use-asset-embed.js.map +1 -1
  146. package/dist/auth/AthenaAuthContext.cjs +3 -3
  147. package/dist/auth/AthenaAuthContext.cjs.map +1 -1
  148. package/dist/auth/AthenaAuthProvider.cjs +8 -8
  149. package/dist/auth/AthenaAuthProvider.cjs.map +1 -1
  150. package/dist/auth/AthenaCredentialSourceContext.cjs +5 -5
  151. package/dist/auth/AthenaCredentialSourceContext.cjs.map +1 -1
  152. package/dist/auth/AthenaSSOProvider.cjs +14 -14
  153. package/dist/auth/AthenaSSOProvider.cjs.map +1 -1
  154. package/dist/auth/credential-source.cjs +26 -13
  155. package/dist/auth/credential-source.cjs.map +1 -1
  156. package/dist/auth/credential-source.d.ts +8 -0
  157. package/dist/auth/credential-source.js +26 -13
  158. package/dist/auth/credential-source.js.map +1 -1
  159. package/dist/catalog/agent-model-options.cjs +25 -17
  160. package/dist/catalog/agent-model-options.cjs.map +1 -1
  161. package/dist/catalog/agent-model-options.d.ts +38 -5
  162. package/dist/catalog/agent-model-options.js +25 -17
  163. package/dist/catalog/agent-model-options.js.map +1 -1
  164. package/dist/catalog/channel-refusal.cjs +36 -0
  165. package/dist/catalog/channel-refusal.cjs.map +1 -0
  166. package/dist/catalog/channel-refusal.d.ts +29 -0
  167. package/dist/catalog/channel-refusal.js +36 -0
  168. package/dist/catalog/channel-refusal.js.map +1 -0
  169. package/dist/catalog/chat-pickers.cjs +60 -24
  170. package/dist/catalog/chat-pickers.cjs.map +1 -1
  171. package/dist/catalog/chat-pickers.d.ts +12 -2
  172. package/dist/catalog/chat-pickers.js +56 -20
  173. package/dist/catalog/chat-pickers.js.map +1 -1
  174. package/dist/catalog/runtime-catalog.cjs +89 -23
  175. package/dist/catalog/runtime-catalog.cjs.map +1 -1
  176. package/dist/catalog/runtime-catalog.d.ts +8 -2
  177. package/dist/catalog/runtime-catalog.js +83 -17
  178. package/dist/catalog/runtime-catalog.js.map +1 -1
  179. package/dist/catalog/use-athena-chat-mode.cjs +12 -12
  180. package/dist/catalog/use-athena-chat-mode.cjs.map +1 -1
  181. package/dist/chat/AthenaChat.cjs +155 -67
  182. package/dist/chat/AthenaChat.cjs.map +1 -1
  183. package/dist/chat/AthenaChat.d.ts +42 -2
  184. package/dist/chat/AthenaChat.js +106 -18
  185. package/dist/chat/AthenaChat.js.map +1 -1
  186. package/dist/chat/AthenaChatErrorBoundary.cjs +3 -3
  187. package/dist/chat/AthenaChatErrorBoundary.cjs.map +1 -1
  188. package/dist/chat/DrivingOnChip.cjs +23 -0
  189. package/dist/chat/DrivingOnChip.cjs.map +1 -0
  190. package/dist/chat/DrivingOnChip.d.ts +17 -0
  191. package/dist/chat/DrivingOnChip.js +23 -0
  192. package/dist/chat/DrivingOnChip.js.map +1 -0
  193. package/dist/chat/StatewireApprovalCard.cjs +125 -31
  194. package/dist/chat/StatewireApprovalCard.cjs.map +1 -1
  195. package/dist/chat/StatewireApprovalCard.d.ts +73 -1
  196. package/dist/chat/StatewireApprovalCard.js +115 -21
  197. package/dist/chat/StatewireApprovalCard.js.map +1 -1
  198. package/dist/chat/StatewireClientToolBridge.cjs +2 -2
  199. package/dist/chat/StatewireClientToolBridge.cjs.map +1 -1
  200. package/dist/chat/StatewireQueuedMessages.cjs +25 -63
  201. package/dist/chat/StatewireQueuedMessages.cjs.map +1 -1
  202. package/dist/chat/StatewireQueuedMessages.d.ts +11 -13
  203. package/dist/chat/StatewireQueuedMessages.js +16 -54
  204. package/dist/chat/StatewireQueuedMessages.js.map +1 -1
  205. package/dist/chat/WaitingOnYouBanner.cjs +3 -3
  206. package/dist/chat/WaitingOnYouBanner.cjs.map +1 -1
  207. package/dist/chat/athena-chat-welcome.cjs +2 -2
  208. package/dist/chat/athena-chat-welcome.cjs.map +1 -1
  209. package/dist/chat/athena-citation-links.cjs +5 -5
  210. package/dist/chat/athena-citation-links.cjs.map +1 -1
  211. package/dist/chat/athena-composer-controls.cjs +26 -16
  212. package/dist/chat/athena-composer-controls.cjs.map +1 -1
  213. package/dist/chat/athena-composer-controls.d.ts +6 -0
  214. package/dist/chat/athena-composer-controls.js +26 -16
  215. package/dist/chat/athena-composer-controls.js.map +1 -1
  216. package/dist/chat/athena-turn-end-status.cjs +42 -0
  217. package/dist/chat/athena-turn-end-status.cjs.map +1 -0
  218. package/dist/chat/athena-turn-end-status.d.ts +24 -0
  219. package/dist/chat/athena-turn-end-status.js +42 -0
  220. package/dist/chat/athena-turn-end-status.js.map +1 -0
  221. package/dist/chat/browser-decision-check.cjs +131 -0
  222. package/dist/chat/browser-decision-check.cjs.map +1 -0
  223. package/dist/chat/browser-decision-check.d.ts +61 -0
  224. package/dist/chat/browser-decision-check.js +131 -0
  225. package/dist/chat/browser-decision-check.js.map +1 -0
  226. package/dist/chat/chat-outbox-rows.cjs +3 -3
  227. package/dist/chat/chat-outbox-rows.cjs.map +1 -1
  228. package/dist/chat/chat-voice-controls.cjs +93 -28
  229. package/dist/chat/chat-voice-controls.cjs.map +1 -1
  230. package/dist/chat/chat-voice-controls.d.ts +36 -2
  231. package/dist/chat/chat-voice-controls.js +89 -24
  232. package/dist/chat/chat-voice-controls.js.map +1 -1
  233. package/dist/chat/composer-keyboard-hint.cjs +5 -5
  234. package/dist/chat/composer-keyboard-hint.cjs.map +1 -1
  235. package/dist/chat/device-operation.cjs +29 -0
  236. package/dist/chat/device-operation.cjs.map +1 -0
  237. package/dist/chat/device-operation.d.ts +34 -0
  238. package/dist/chat/device-operation.js +29 -0
  239. package/dist/chat/device-operation.js.map +1 -0
  240. package/dist/chat/super-grouping/CollapsibleGroup.cjs +14 -14
  241. package/dist/chat/super-grouping/CollapsibleGroup.cjs.map +1 -1
  242. package/dist/chat/super-grouping/GroupedMessageParts.cjs +4 -4
  243. package/dist/chat/super-grouping/GroupedMessageParts.cjs.map +1 -1
  244. package/dist/chat/super-grouping/SuperGroupingCard.cjs +52 -36
  245. package/dist/chat/super-grouping/SuperGroupingCard.cjs.map +1 -1
  246. package/dist/chat/super-grouping/SuperGroupingCard.d.ts +19 -4
  247. package/dist/chat/super-grouping/SuperGroupingCard.js +29 -13
  248. package/dist/chat/super-grouping/SuperGroupingCard.js.map +1 -1
  249. package/dist/chat/super-grouping/SuperGroupingTranscript.cjs +32 -32
  250. package/dist/chat/super-grouping/SuperGroupingTranscript.cjs.map +1 -1
  251. package/dist/chat/super-grouping/SuperGroupingTranscript.js +3 -3
  252. package/dist/chat/super-grouping/SuperGroupingTranscript.js.map +1 -1
  253. package/dist/chat/super-grouping/ToolTimeline.cjs +73 -40
  254. package/dist/chat/super-grouping/ToolTimeline.cjs.map +1 -1
  255. package/dist/chat/super-grouping/ToolTimeline.d.ts +10 -2
  256. package/dist/chat/super-grouping/ToolTimeline.js +69 -36
  257. package/dist/chat/super-grouping/ToolTimeline.js.map +1 -1
  258. package/dist/chat/super-grouping/activity-timeline.cjs +47 -12
  259. package/dist/chat/super-grouping/activity-timeline.cjs.map +1 -1
  260. package/dist/chat/super-grouping/activity-timeline.d.ts +21 -0
  261. package/dist/chat/super-grouping/activity-timeline.js +47 -12
  262. package/dist/chat/super-grouping/activity-timeline.js.map +1 -1
  263. package/dist/chat/super-grouping/grouping-function.cjs +4 -0
  264. package/dist/chat/super-grouping/grouping-function.cjs.map +1 -1
  265. package/dist/chat/super-grouping/grouping-function.d.ts +7 -0
  266. package/dist/chat/super-grouping/grouping-function.js +5 -1
  267. package/dist/chat/super-grouping/grouping-function.js.map +1 -1
  268. package/dist/chat/super-grouping/index.cjs +6 -0
  269. package/dist/chat/super-grouping/index.cjs.map +1 -1
  270. package/dist/chat/super-grouping/index.d.ts +5 -2
  271. package/dist/chat/super-grouping/index.js +7 -1
  272. package/dist/chat/super-grouping/index.js.map +1 -1
  273. package/dist/chat/super-grouping/tool-part-placement.cjs +17 -0
  274. package/dist/chat/super-grouping/tool-part-placement.cjs.map +1 -0
  275. package/dist/chat/super-grouping/tool-part-placement.d.ts +22 -0
  276. package/dist/chat/super-grouping/tool-part-placement.js +17 -0
  277. package/dist/chat/super-grouping/tool-part-placement.js.map +1 -0
  278. package/dist/chat/thread-scroll-to-bottom.cjs +2 -2
  279. package/dist/chat/thread-scroll-to-bottom.cjs.map +1 -1
  280. package/dist/chat/thread-scroll-to-bottom.d.ts +10 -7
  281. package/dist/chat/thread-scroll-to-bottom.js +2 -2
  282. package/dist/chat/thread-scroll-to-bottom.js.map +1 -1
  283. package/dist/chat/tooltip-icon-button.cjs +2 -2
  284. package/dist/chat/tooltip-icon-button.cjs.map +1 -1
  285. package/dist/chat/use-athena-voice-live.cjs +11 -0
  286. package/dist/chat/use-athena-voice-live.cjs.map +1 -0
  287. package/dist/chat/use-athena-voice-live.d.ts +11 -0
  288. package/dist/chat/use-athena-voice-live.js +11 -0
  289. package/dist/chat/use-athena-voice-live.js.map +1 -0
  290. package/dist/chat/use-statewire-approval-request.cjs +56 -24
  291. package/dist/chat/use-statewire-approval-request.cjs.map +1 -1
  292. package/dist/chat/use-statewire-approval-request.d.ts +33 -4
  293. package/dist/chat/use-statewire-approval-request.js +41 -9
  294. package/dist/chat/use-statewire-approval-request.js.map +1 -1
  295. package/dist/chat-ui/auth/sign-in-card.cjs +2 -2
  296. package/dist/chat-ui/auth/sign-in-card.cjs.map +1 -1
  297. package/dist/chat-ui/composer/tiptap-composer.cjs +138 -107
  298. package/dist/chat-ui/composer/tiptap-composer.cjs.map +1 -1
  299. package/dist/chat-ui/composer/tiptap-composer.d.ts +20 -4
  300. package/dist/chat-ui/composer/tiptap-composer.js +85 -54
  301. package/dist/chat-ui/composer/tiptap-composer.js.map +1 -1
  302. package/dist/chat-ui/header/conversation-history-panel.cjs +49 -23
  303. package/dist/chat-ui/header/conversation-history-panel.cjs.map +1 -1
  304. package/dist/chat-ui/header/conversation-history-panel.d.ts +12 -1
  305. package/dist/chat-ui/header/conversation-history-panel.js +38 -12
  306. package/dist/chat-ui/header/conversation-history-panel.js.map +1 -1
  307. package/dist/chat-ui/index.cjs +18 -0
  308. package/dist/chat-ui/index.cjs.map +1 -1
  309. package/dist/chat-ui/index.d.ts +7 -1
  310. package/dist/chat-ui/index.js +18 -0
  311. package/dist/chat-ui/index.js.map +1 -1
  312. package/dist/chat-ui/mentions/mention-chip.cjs +4 -4
  313. package/dist/chat-ui/mentions/mention-chip.cjs.map +1 -1
  314. package/dist/chat-ui/mentions/suggestions/components/mention-suggestion-list.cjs +10 -9
  315. package/dist/chat-ui/mentions/suggestions/components/mention-suggestion-list.cjs.map +1 -1
  316. package/dist/chat-ui/mentions/suggestions/components/mention-suggestion-list.js +3 -2
  317. package/dist/chat-ui/mentions/suggestions/components/mention-suggestion-list.js.map +1 -1
  318. package/dist/chat-ui/mentions/suggestions/components/mention-suggestion-popup.cjs +2 -2
  319. package/dist/chat-ui/mentions/suggestions/components/mention-suggestion-popup.cjs.map +1 -1
  320. package/dist/chat-ui/mentions/suggestions/components/menu-list.cjs +29 -6
  321. package/dist/chat-ui/mentions/suggestions/components/menu-list.cjs.map +1 -1
  322. package/dist/chat-ui/mentions/suggestions/components/menu-list.d.ts +7 -1
  323. package/dist/chat-ui/mentions/suggestions/components/menu-list.js +25 -2
  324. package/dist/chat-ui/mentions/suggestions/components/menu-list.js.map +1 -1
  325. package/dist/chat-ui/mentions/suggestions/components/use-keyboard-navigation.cjs +2 -2
  326. package/dist/chat-ui/mentions/suggestions/components/use-keyboard-navigation.cjs.map +1 -1
  327. package/dist/chat-ui/mentions/suggestions/components/use-menu-navigation.cjs +2 -2
  328. package/dist/chat-ui/mentions/suggestions/components/use-menu-navigation.cjs.map +1 -1
  329. package/dist/chat-ui/mentions/suggestions/data/api-client.cjs +3 -3
  330. package/dist/chat-ui/mentions/suggestions/data/api-client.cjs.map +1 -1
  331. package/dist/chat-ui/mentions/suggestions/data/orchestrator.cjs +56 -2
  332. package/dist/chat-ui/mentions/suggestions/data/orchestrator.cjs.map +1 -1
  333. package/dist/chat-ui/mentions/suggestions/data/orchestrator.d.ts +12 -0
  334. package/dist/chat-ui/mentions/suggestions/data/orchestrator.js +56 -2
  335. package/dist/chat-ui/mentions/suggestions/data/orchestrator.js.map +1 -1
  336. package/dist/chat-ui/mentions/suggestions/data/sources/index.cjs +24 -3
  337. package/dist/chat-ui/mentions/suggestions/data/sources/index.cjs.map +1 -1
  338. package/dist/chat-ui/mentions/suggestions/data/sources/index.d.ts +7 -0
  339. package/dist/chat-ui/mentions/suggestions/data/sources/index.js +24 -3
  340. package/dist/chat-ui/mentions/suggestions/data/sources/index.js.map +1 -1
  341. package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.cjs +35 -13
  342. package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.cjs.map +1 -1
  343. package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.d.ts +15 -1
  344. package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.js +28 -6
  345. package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.js.map +1 -1
  346. package/dist/chat-ui/mentions/suggestions/data/use-menu-items.cjs +9 -6
  347. package/dist/chat-ui/mentions/suggestions/data/use-menu-items.cjs.map +1 -1
  348. package/dist/chat-ui/mentions/suggestions/data/use-menu-items.d.ts +3 -0
  349. package/dist/chat-ui/mentions/suggestions/data/use-menu-items.js +5 -2
  350. package/dist/chat-ui/mentions/suggestions/data/use-menu-items.js.map +1 -1
  351. package/dist/chat-ui/mentions/use-account-workspace-id.cjs +45 -10
  352. package/dist/chat-ui/mentions/use-account-workspace-id.cjs.map +1 -1
  353. package/dist/chat-ui/mentions/use-account-workspace-id.d.ts +24 -1
  354. package/dist/chat-ui/mentions/use-account-workspace-id.js +46 -11
  355. package/dist/chat-ui/mentions/use-account-workspace-id.js.map +1 -1
  356. package/dist/chat-ui/mentions/use-member-avatar.cjs +4 -4
  357. package/dist/chat-ui/mentions/use-member-avatar.cjs.map +1 -1
  358. package/dist/chat-ui/mentions/use-mention-asset.cjs +3 -3
  359. package/dist/chat-ui/mentions/use-mention-asset.cjs.map +1 -1
  360. package/dist/chat-ui/messages/answer-label.cjs +42 -0
  361. package/dist/chat-ui/messages/answer-label.cjs.map +1 -0
  362. package/dist/chat-ui/messages/answer-label.d.ts +33 -0
  363. package/dist/chat-ui/messages/answer-label.js +42 -0
  364. package/dist/chat-ui/messages/answer-label.js.map +1 -0
  365. package/dist/chat-ui/messages/arrival-animation.cjs +13 -0
  366. package/dist/chat-ui/messages/arrival-animation.cjs.map +1 -0
  367. package/dist/chat-ui/messages/arrival-animation.d.ts +14 -0
  368. package/dist/chat-ui/messages/arrival-animation.js +13 -0
  369. package/dist/chat-ui/messages/arrival-animation.js.map +1 -0
  370. package/dist/chat-ui/messages/continue-pill.cjs +5 -5
  371. package/dist/chat-ui/messages/continue-pill.cjs.map +1 -1
  372. package/dist/chat-ui/messages/handoff-arrival-divider.cjs +44 -0
  373. package/dist/chat-ui/messages/handoff-arrival-divider.cjs.map +1 -0
  374. package/dist/chat-ui/messages/handoff-arrival-divider.d.ts +17 -0
  375. package/dist/chat-ui/messages/handoff-arrival-divider.js +44 -0
  376. package/dist/chat-ui/messages/handoff-arrival-divider.js.map +1 -0
  377. package/dist/chat-ui/messages/message-actions-config.cjs +3 -3
  378. package/dist/chat-ui/messages/message-actions-config.cjs.map +1 -1
  379. package/dist/chat-ui/messages/message-components.cjs +8 -4
  380. package/dist/chat-ui/messages/message-components.cjs.map +1 -1
  381. package/dist/chat-ui/messages/message-components.js +5 -1
  382. package/dist/chat-ui/messages/message-components.js.map +1 -1
  383. package/dist/chat-ui/messages/message-images.cjs +66 -0
  384. package/dist/chat-ui/messages/message-images.cjs.map +1 -0
  385. package/dist/chat-ui/messages/message-images.d.ts +16 -0
  386. package/dist/chat-ui/messages/message-images.js +66 -0
  387. package/dist/chat-ui/messages/message-images.js.map +1 -0
  388. package/dist/chat-ui/messages/user-edit-composer.cjs +2 -2
  389. package/dist/chat-ui/messages/user-edit-composer.cjs.map +1 -1
  390. package/dist/chat-ui/messages/wake-marker.cjs +3 -3
  391. package/dist/chat-ui/messages/wake-marker.cjs.map +1 -1
  392. package/dist/chat-ui/rich-text/chat-link.cjs +2 -2
  393. package/dist/chat-ui/rich-text/chat-link.cjs.map +1 -1
  394. package/dist/chat-ui/rich-text/chat-message-body.cjs +8 -8
  395. package/dist/chat-ui/rich-text/chat-message-body.cjs.map +1 -1
  396. package/dist/chat-ui/rich-text/chat-node-views.cjs +6 -6
  397. package/dist/chat-ui/rich-text/chat-node-views.cjs.map +1 -1
  398. package/dist/chat-ui/rich-text/dom-output-spec.cjs +2 -2
  399. package/dist/chat-ui/rich-text/dom-output-spec.cjs.map +1 -1
  400. package/dist/chat-ui/statewire.cjs +3 -0
  401. package/dist/chat-ui/statewire.cjs.map +1 -1
  402. package/dist/chat-ui/statewire.d.ts +2 -1
  403. package/dist/chat-ui/statewire.js +3 -0
  404. package/dist/chat-ui/statewire.js.map +1 -1
  405. package/dist/chat-ui/thread/chat-thread-shell.cjs +43 -14
  406. package/dist/chat-ui/thread/chat-thread-shell.cjs.map +1 -1
  407. package/dist/chat-ui/thread/chat-thread-shell.d.ts +16 -2
  408. package/dist/chat-ui/thread/chat-thread-shell.js +35 -6
  409. package/dist/chat-ui/thread/chat-thread-shell.js.map +1 -1
  410. package/dist/chat-ui/thread/composer-send-or-stop.cjs +30 -20
  411. package/dist/chat-ui/thread/composer-send-or-stop.cjs.map +1 -1
  412. package/dist/chat-ui/thread/composer-send-or-stop.d.ts +8 -0
  413. package/dist/chat-ui/thread/composer-send-or-stop.js +29 -19
  414. package/dist/chat-ui/thread/composer-send-or-stop.js.map +1 -1
  415. package/dist/chat-ui/thread/statewire-history-edge.cjs +20 -21
  416. package/dist/chat-ui/thread/statewire-history-edge.cjs.map +1 -1
  417. package/dist/chat-ui/thread/statewire-history-edge.js +3 -4
  418. package/dist/chat-ui/thread/statewire-history-edge.js.map +1 -1
  419. package/dist/chat-ui/thread/thread-loading-overlay.cjs +5 -5
  420. package/dist/chat-ui/thread/thread-loading-overlay.cjs.map +1 -1
  421. package/dist/collab/client.cjs +40 -3
  422. package/dist/collab/client.cjs.map +1 -1
  423. package/dist/collab/client.d.ts +25 -0
  424. package/dist/collab/client.js +40 -3
  425. package/dist/collab/client.js.map +1 -1
  426. package/dist/collab/document-status.cjs +150 -0
  427. package/dist/collab/document-status.cjs.map +1 -0
  428. package/dist/collab/document-status.d.ts +68 -0
  429. package/dist/collab/document-status.js +150 -0
  430. package/dist/collab/document-status.js.map +1 -0
  431. package/dist/collab/index.cjs +7 -0
  432. package/dist/collab/index.cjs.map +1 -1
  433. package/dist/collab/index.d.ts +6 -1
  434. package/dist/collab/index.js +7 -0
  435. package/dist/collab/index.js.map +1 -1
  436. package/dist/collab/presence-react.cjs +11 -11
  437. package/dist/collab/presence-react.cjs.map +1 -1
  438. package/dist/collab/react.cjs +6 -6
  439. package/dist/collab/react.cjs.map +1 -1
  440. package/dist/composer/AttachmentContext.cjs +24 -11
  441. package/dist/composer/AttachmentContext.cjs.map +1 -1
  442. package/dist/composer/AttachmentContext.js +18 -5
  443. package/dist/composer/AttachmentContext.js.map +1 -1
  444. package/dist/composer/ComposerAttachmentPreview.cjs +78 -23
  445. package/dist/composer/ComposerAttachmentPreview.cjs.map +1 -1
  446. package/dist/composer/ComposerAttachmentPreview.d.ts +5 -3
  447. package/dist/composer/ComposerAttachmentPreview.js +79 -24
  448. package/dist/composer/ComposerAttachmentPreview.js.map +1 -1
  449. package/dist/composer/ComposerDropZone.cjs +7 -7
  450. package/dist/composer/ComposerDropZone.cjs.map +1 -1
  451. package/dist/composer/FileUploadButton.cjs +37 -22
  452. package/dist/composer/FileUploadButton.cjs.map +1 -1
  453. package/dist/composer/FileUploadButton.d.ts +6 -0
  454. package/dist/composer/FileUploadButton.js +34 -19
  455. package/dist/composer/FileUploadButton.js.map +1 -1
  456. package/dist/composer/QuoteContext.cjs +8 -8
  457. package/dist/composer/QuoteContext.cjs.map +1 -1
  458. package/dist/composer/composer-handoff.cjs +4 -4
  459. package/dist/composer/composer-handoff.cjs.map +1 -1
  460. package/dist/composer/useAppendToComposer.cjs +4 -4
  461. package/dist/composer/useAppendToComposer.cjs.map +1 -1
  462. package/dist/composer/useAttachFiles.cjs +23 -6
  463. package/dist/composer/useAttachFiles.cjs.map +1 -1
  464. package/dist/composer/useAttachFiles.d.ts +15 -7
  465. package/dist/composer/useAttachFiles.js +22 -5
  466. package/dist/composer/useAttachFiles.js.map +1 -1
  467. package/dist/composer/useComposerAttachment.cjs +4 -4
  468. package/dist/composer/useComposerAttachment.cjs.map +1 -1
  469. package/dist/composer/useFileUpload.cjs +21 -16
  470. package/dist/composer/useFileUpload.cjs.map +1 -1
  471. package/dist/composer/useFileUpload.d.ts +12 -0
  472. package/dist/composer/useFileUpload.js +12 -7
  473. package/dist/composer/useFileUpload.js.map +1 -1
  474. package/dist/composer/useReadComposerDraft.cjs +2 -2
  475. package/dist/composer/useReadComposerDraft.cjs.map +1 -1
  476. package/dist/composer/useSendMessage.cjs +4 -4
  477. package/dist/composer/useSendMessage.cjs.map +1 -1
  478. package/dist/diagnostics/useAthenaDiagnostics.cjs +4 -4
  479. package/dist/diagnostics/useAthenaDiagnostics.cjs.map +1 -1
  480. package/dist/dictation/audio-level-history.cjs +3 -3
  481. package/dist/dictation/audio-level-history.cjs.map +1 -1
  482. package/dist/dictation/dictation-controls.cjs +24 -20
  483. package/dist/dictation/dictation-controls.cjs.map +1 -1
  484. package/dist/dictation/dictation-controls.d.ts +6 -1
  485. package/dist/dictation/dictation-controls.js +24 -20
  486. package/dist/dictation/dictation-controls.js.map +1 -1
  487. package/dist/dictation/use-athena-dictation-engine.cjs +3 -3
  488. package/dist/dictation/use-athena-dictation-engine.cjs.map +1 -1
  489. package/dist/dictation/use-dictation.cjs +22 -22
  490. package/dist/dictation/use-dictation.cjs.map +1 -1
  491. package/dist/index.cjs +26 -2
  492. package/dist/index.cjs.map +1 -1
  493. package/dist/index.d.ts +15 -3
  494. package/dist/index.js +26 -2
  495. package/dist/index.js.map +1 -1
  496. package/dist/keryx-http/src/receive-only-socket.cjs +40 -0
  497. package/dist/keryx-http/src/receive-only-socket.cjs.map +1 -0
  498. package/dist/keryx-http/src/receive-only-socket.d.ts +27 -0
  499. package/dist/keryx-http/src/receive-only-socket.js +40 -0
  500. package/dist/keryx-http/src/receive-only-socket.js.map +1 -0
  501. package/dist/keryx-http/src/update-attributions.cjs +111 -0
  502. package/dist/keryx-http/src/update-attributions.cjs.map +1 -0
  503. package/dist/keryx-http/src/update-attributions.d.ts +75 -0
  504. package/dist/keryx-http/src/update-attributions.js +111 -0
  505. package/dist/keryx-http/src/update-attributions.js.map +1 -0
  506. package/dist/lib/owner-document.cjs +6 -6
  507. package/dist/lib/owner-document.cjs.map +1 -1
  508. package/dist/lib/use-athena-rest-query.cjs +4 -4
  509. package/dist/lib/use-athena-rest-query.cjs.map +1 -1
  510. package/dist/lib/use-document-active.cjs +4 -4
  511. package/dist/lib/use-document-active.cjs.map +1 -1
  512. package/dist/lib/use-prefers-reduced-motion.cjs +2 -2
  513. package/dist/lib/use-prefers-reduced-motion.cjs.map +1 -1
  514. package/dist/offline/offline-history.cjs +7 -7
  515. package/dist/offline/offline-history.cjs.map +1 -1
  516. package/dist/provider/AthenaContext.cjs +3 -3
  517. package/dist/provider/AthenaContext.cjs.map +1 -1
  518. package/dist/provider/AthenaProvider.cjs +116 -79
  519. package/dist/provider/AthenaProvider.cjs.map +1 -1
  520. package/dist/provider/AthenaProvider.js +40 -3
  521. package/dist/provider/AthenaProvider.js.map +1 -1
  522. package/dist/provider/PostHogProvider.cjs +2 -2
  523. package/dist/provider/PostHogProvider.cjs.map +1 -1
  524. package/dist/provider/agent-selection-context.cjs +2 -2
  525. package/dist/provider/agent-selection-context.cjs.map +1 -1
  526. package/dist/provider/chat-mode-context.cjs +2 -2
  527. package/dist/provider/chat-mode-context.cjs.map +1 -1
  528. package/dist/provider/session-persistence-context.cjs +10 -0
  529. package/dist/provider/session-persistence-context.cjs.map +1 -0
  530. package/dist/provider/session-persistence-context.d.ts +15 -0
  531. package/dist/provider/session-persistence-context.js +10 -0
  532. package/dist/provider/session-persistence-context.js.map +1 -0
  533. package/dist/provider/statewire-history-context.cjs +4 -4
  534. package/dist/provider/statewire-history-context.cjs.map +1 -1
  535. package/dist/provider/statewire-lifecycle-context.cjs +3 -3
  536. package/dist/provider/statewire-lifecycle-context.cjs.map +1 -1
  537. package/dist/provider/statewire-window-context.cjs +3 -3
  538. package/dist/provider/statewire-window-context.cjs.map +1 -1
  539. package/dist/provider/theme-style-context.cjs +3 -3
  540. package/dist/provider/theme-style-context.cjs.map +1 -1
  541. package/dist/react/package.json.cjs +1 -1
  542. package/dist/react/package.json.js +1 -1
  543. package/dist/runtime/StatewireThreadConfigLaneSync.cjs +10 -10
  544. package/dist/runtime/StatewireThreadConfigLaneSync.cjs.map +1 -1
  545. package/dist/runtime/auth-refusal-restart.cjs +7 -7
  546. package/dist/runtime/auth-refusal-restart.cjs.map +1 -1
  547. package/dist/runtime/auth.cjs +13 -13
  548. package/dist/runtime/auth.cjs.map +1 -1
  549. package/dist/runtime/statewire-lifecycle.cjs +1 -0
  550. package/dist/runtime/statewire-lifecycle.cjs.map +1 -1
  551. package/dist/runtime/statewire-lifecycle.d.ts +3 -1
  552. package/dist/runtime/statewire-lifecycle.js +2 -1
  553. package/dist/runtime/statewire-lifecycle.js.map +1 -1
  554. package/dist/runtime/statewire-server-lane-context.cjs +2 -2
  555. package/dist/runtime/statewire-server-lane-context.cjs.map +1 -1
  556. package/dist/runtime/statewire-session-lane.cjs +4 -4
  557. package/dist/runtime/statewire-session-lane.cjs.map +1 -1
  558. package/dist/runtime/useAthenaStatewireRuntime.cjs +10 -8
  559. package/dist/runtime/useAthenaStatewireRuntime.cjs.map +1 -1
  560. package/dist/runtime/useAthenaStatewireRuntime.d.ts +2 -0
  561. package/dist/runtime/useAthenaStatewireRuntime.js +2 -0
  562. package/dist/runtime/useAthenaStatewireRuntime.js.map +1 -1
  563. package/dist/styles.css +1 -1
  564. package/dist/threads/Inbox.cjs +8 -8
  565. package/dist/threads/Inbox.cjs.map +1 -1
  566. package/dist/threads/SessionList.cjs +9 -9
  567. package/dist/threads/SessionList.cjs.map +1 -1
  568. package/dist/threads/SessionsPage.cjs +11 -11
  569. package/dist/threads/SessionsPage.cjs.map +1 -1
  570. package/dist/threads/index-triggered-refresh.cjs +10 -10
  571. package/dist/threads/index-triggered-refresh.cjs.map +1 -1
  572. package/dist/threads/mark-viewed-thread-read.cjs +12 -12
  573. package/dist/threads/mark-viewed-thread-read.cjs.map +1 -1
  574. package/dist/threads/offline-session-list.cjs +3 -3
  575. package/dist/threads/offline-session-list.cjs.map +1 -1
  576. package/dist/threads/session-list-tab-share.cjs +5 -5
  577. package/dist/threads/session-list-tab-share.cjs.map +1 -1
  578. package/dist/threads/statewire-thread-list.cjs +51 -51
  579. package/dist/threads/statewire-thread-list.cjs.map +1 -1
  580. package/dist/threads/thread-id-context.cjs +5 -5
  581. package/dist/threads/thread-id-context.cjs.map +1 -1
  582. package/dist/threads/use-athena-session-attention.cjs +2 -2
  583. package/dist/threads/use-athena-session-attention.cjs.map +1 -1
  584. package/dist/threads/use-athena-sessions.cjs +10 -10
  585. package/dist/threads/use-athena-sessions.cjs.map +1 -1
  586. package/dist/threads/use-athena-thread-model.cjs +3 -3
  587. package/dist/threads/use-athena-thread-model.cjs.map +1 -1
  588. package/dist/threads/use-rest-conversation-history.cjs +3 -3
  589. package/dist/threads/use-rest-conversation-history.cjs.map +1 -1
  590. package/dist/threads/use-statewire-conversation-history.cjs +8 -8
  591. package/dist/threads/use-statewire-conversation-history.cjs.map +1 -1
  592. package/dist/threads/use-thread-archive.cjs +9 -9
  593. package/dist/threads/use-thread-archive.cjs.map +1 -1
  594. package/dist/threads/use-thread-favorite.cjs +2 -2
  595. package/dist/threads/use-thread-favorite.cjs.map +1 -1
  596. package/dist/threads/use-thread-field-override.cjs +20 -20
  597. package/dist/threads/use-thread-field-override.cjs.map +1 -1
  598. package/dist/threads/use-thread-read-state.cjs +4 -4
  599. package/dist/threads/use-thread-read-state.cjs.map +1 -1
  600. package/dist/threads/use-thread-rename.cjs +2 -2
  601. package/dist/threads/use-thread-rename.cjs.map +1 -1
  602. package/dist/threads/useAthenaThreadManager.cjs +2 -2
  603. package/dist/threads/useAthenaThreadManager.cjs.map +1 -1
  604. package/dist/tools/NestedPtcMessages.cjs +6 -6
  605. package/dist/tools/NestedPtcMessages.cjs.map +1 -1
  606. package/dist/tools/append-document-tool-ui.cjs +7 -7
  607. package/dist/tools/append-document-tool-ui.cjs.map +1 -1
  608. package/dist/tools/file-tool-uis.cjs +2 -2
  609. package/dist/tools/file-tool-uis.cjs.map +1 -1
  610. package/dist/tools/misc-tool-uis.cjs +2 -2
  611. package/dist/tools/misc-tool-uis.cjs.map +1 -1
  612. package/dist/tools/primitives.cjs +6 -6
  613. package/dist/tools/primitives.cjs.map +1 -1
  614. package/dist/tools/read-asset-tool-ui.cjs +6 -6
  615. package/dist/tools/read-asset-tool-ui.cjs.map +1 -1
  616. package/dist/tools/subagent-task-tool-ui.cjs +21 -21
  617. package/dist/tools/subagent-task-tool-ui.cjs.map +1 -1
  618. package/dist/tools/test-recording-tool-uis.cjs +16 -16
  619. package/dist/tools/test-recording-tool-uis.cjs.map +1 -1
  620. package/dist/tools/todo-plan-store.cjs +4 -4
  621. package/dist/tools/todo-plan-store.cjs.map +1 -1
  622. package/dist/tools/tool-appearance.cjs +3 -3
  623. package/dist/tools/tool-appearance.cjs.map +1 -1
  624. package/dist/tools/tool-fallback.cjs +14 -14
  625. package/dist/tools/tool-fallback.cjs.map +1 -1
  626. package/dist/tools/tool-uis.cjs +74 -74
  627. package/dist/tools/tool-uis.cjs.map +1 -1
  628. package/dist/tools/use-elapsed-seconds.cjs +3 -3
  629. package/dist/tools/use-elapsed-seconds.cjs.map +1 -1
  630. package/dist/tools/write-todos-tool-ui.cjs +9 -9
  631. package/dist/tools/write-todos-tool-ui.cjs.map +1 -1
  632. package/dist/ui/image-viewer.cjs +382 -0
  633. package/dist/ui/image-viewer.cjs.map +1 -0
  634. package/dist/ui/image-viewer.d.ts +50 -0
  635. package/dist/ui/image-viewer.js +382 -0
  636. package/dist/ui/image-viewer.js.map +1 -0
  637. package/dist/voice/chat.cjs +6 -0
  638. package/dist/voice/chat.cjs.map +1 -1
  639. package/dist/voice/chat.d.ts +1 -1
  640. package/dist/voice/chat.js +8 -2
  641. package/dist/voice/livekit-join.cjs +52 -101
  642. package/dist/voice/livekit-join.cjs.map +1 -1
  643. package/dist/voice/livekit-join.d.ts +1 -6
  644. package/dist/voice/livekit-join.js +52 -101
  645. package/dist/voice/livekit-join.js.map +1 -1
  646. package/dist/voice/livekit.cjs.map +1 -1
  647. package/dist/voice/livekit.d.ts +11 -1
  648. package/dist/voice/livekit.js.map +1 -1
  649. package/dist/voice/use-athena-voice-session.cjs +34 -34
  650. package/dist/voice/use-athena-voice-session.cjs.map +1 -1
  651. package/dist/workbench/ComputerLiveDesktop.cjs +13 -13
  652. package/dist/workbench/ComputerLiveDesktop.cjs.map +1 -1
  653. package/dist/workbench/SessionWorkbench.cjs +22 -22
  654. package/dist/workbench/SessionWorkbench.cjs.map +1 -1
  655. package/dist/workbench/session-workbench-context.cjs +3 -3
  656. package/dist/workbench/session-workbench-context.cjs.map +1 -1
  657. package/dist/workbench/session-workbench-panes.cjs +8 -8
  658. package/dist/workbench/session-workbench-panes.cjs.map +1 -1
  659. package/dist/workbench/workbench-layout-context.cjs +3 -3
  660. package/dist/workbench/workbench-layout-context.cjs.map +1 -1
  661. package/package.json +2 -1
@@ -7,8 +7,10 @@ const StatewireApprovalCard = require("./StatewireApprovalCard.cjs");
7
7
  const StatewireQueuedMessages = require("./StatewireQueuedMessages.cjs");
8
8
  const statewireBanners = require("./statewire-banners.cjs");
9
9
  const chatPickers = require("../catalog/chat-pickers.cjs");
10
+ const offlineStatus = require("../agent-runtime/src/offline-status.cjs");
10
11
  const StatewireRunRefusalNotice = require("./StatewireRunRefusalNotice.cjs");
11
12
  const WaitingOnYouBanner = require("./WaitingOnYouBanner.cjs");
13
+ const DrivingOnChip = require("./DrivingOnChip.cjs");
12
14
  const offlineHistory = require("../offline/offline-history.cjs");
13
15
  const wakeMarker = require("../chat-ui/messages/wake-marker.cjs");
14
16
  const toolFallback = require("../tools/tool-fallback.cjs");
@@ -40,6 +42,9 @@ const useAthenaDictationEngine = require("../dictation/use-athena-dictation-engi
40
42
  const tiptapComposer = require("../chat-ui/composer/tiptap-composer.cjs");
41
43
  const apiClient = require("../chat-ui/mentions/suggestions/data/api-client.cjs");
42
44
  const useAccountWorkspaceId = require("../chat-ui/mentions/use-account-workspace-id.cjs");
45
+ const answerLabel = require("../chat-ui/messages/answer-label.cjs");
46
+ const arrivalAnimation = require("../chat-ui/messages/arrival-animation.cjs");
47
+ const messageImages = require("../chat-ui/messages/message-images.cjs");
43
48
  const messageComponents = require("../chat-ui/messages/message-components.cjs");
44
49
  const messageActionsConfig = require("../chat-ui/messages/message-actions-config.cjs");
45
50
  const useAthenaRunLive = require("./use-athena-run-live.cjs");
@@ -51,7 +56,7 @@ const statewireSessionLane = require("../runtime/statewire-session-lane.cjs");
51
56
  const AthenaAuthContext = require("../auth/AthenaAuthContext.cjs");
52
57
  const react = require("@assistant-ui/react");
53
58
  const lucideReact = require("lucide-react");
54
- const react$1 = require("react");
59
+ const require$$0 = require("react");
55
60
  const threadIdContext = require("../threads/thread-id-context.cjs");
56
61
  const statewireThreadList = require("../threads/statewire-thread-list.cjs");
57
62
  const markViewedThreadRead = require("../threads/mark-viewed-thread-read.cjs");
@@ -84,14 +89,14 @@ const chatOutbox = require("../agent-runtime/src/chat-outbox.cjs");
84
89
  const cnfast = require("cnfast");
85
90
  const DEFAULT_COMPOSER_PLACEHOLDER = "Type @ to tag an asset";
86
91
  function QuotePostMessageBridge() {
87
- const marker = react$1.useRef(null);
92
+ const marker = require$$0.useRef(null);
88
93
  QuoteContext.useQuoteFromPostMessage({ scope: marker });
89
94
  return /* @__PURE__ */ jsxRuntime.jsx("span", { ref: marker, hidden: true });
90
95
  }
91
- const AthenaChatDefaultComponentsContext = react$1.createContext(null);
92
- const AthenaReasoningTextComponentContext = react$1.createContext(null);
96
+ const AthenaChatDefaultComponentsContext = require$$0.createContext(null);
97
+ const AthenaReasoningTextComponentContext = require$$0.createContext(null);
93
98
  const useAthenaChatDefaultComponents = () => {
94
- const value = react$1.useContext(AthenaChatDefaultComponentsContext);
99
+ const value = require$$0.useContext(AthenaChatDefaultComponentsContext);
95
100
  if (!value) {
96
101
  throw new Error("Athena default chat components must be used within AthenaChat.");
97
102
  }
@@ -161,6 +166,8 @@ const AthenaChatContent = ({
161
166
  maxWidth = "46rem",
162
167
  turnAnchor = "bottom",
163
168
  readOnly = false,
169
+ surface,
170
+ confirmDecision,
164
171
  toolUIs,
165
172
  mentionTools,
166
173
  welcomeSuggestions = athenaChatWelcome.DEFAULT_WELCOME_SUGGESTIONS,
@@ -168,14 +175,15 @@ const AthenaChatContent = ({
168
175
  groupToolCalls = true,
169
176
  composer: composerSlots,
170
177
  dictation = true,
171
- voice = true
178
+ voice = true,
179
+ continueByVoice = null
172
180
  }) => {
173
181
  var _a, _b, _c, _d, _e, _f;
174
182
  const athenaConfig = AthenaContext.useAthenaConfig();
175
- const authState = react$1.useContext(AthenaAuthContext.AthenaAuthContext);
176
- const statewireThreadId = react$1.useContext(threadIdContext.AthenaStatewireThreadIdContext);
183
+ const authState = require$$0.useContext(AthenaAuthContext.AthenaAuthContext);
184
+ const statewireThreadId = require$$0.useContext(threadIdContext.AthenaStatewireThreadIdContext);
177
185
  const startNewSession = (_a = statewireThreadList.useAthenaStatewireThreadList()) == null ? void 0 : _a.newThread;
178
- const mentionCredentials = react$1.useMemo(
186
+ const mentionCredentials = require$$0.useMemo(
179
187
  () => {
180
188
  var _a2;
181
189
  return {
@@ -199,15 +207,16 @@ const AthenaChatContent = ({
199
207
  },
200
208
  [athenaConfig, (_b = authState == null ? void 0 : authState.user) == null ? void 0 : _b.userId]
201
209
  );
202
- const accountWorkspaceId = useAccountWorkspaceId.useAccountWorkspaceId(mentionCredentials);
203
- const mentionAuth = react$1.useMemo(
210
+ const account = useAccountWorkspaceId.useAccountIdentity(mentionCredentials, { tokenGetter: athenaConfig.getToken });
211
+ const accountWorkspaceId = account.workspaceId;
212
+ const mentionAuth = require$$0.useMemo(
204
213
  () => ({
205
214
  ...mentionCredentials,
206
215
  workspaceId: mentionCredentials.workspaceId ?? accountWorkspaceId
207
216
  }),
208
217
  [mentionCredentials, accountWorkspaceId]
209
218
  );
210
- const providerMentionTools = react$1.useMemo(() => {
219
+ const providerMentionTools = require$$0.useMemo(() => {
211
220
  const uniqueToolkitIds = Array.from(new Set(athenaConfig.enabledToolkits));
212
221
  return uniqueToolkitIds.map((id) => {
213
222
  const toolkit = index.getToolkitDisplayInfo(id);
@@ -221,7 +230,7 @@ const AthenaChatContent = ({
221
230
  });
222
231
  }, [athenaConfig.enabledToolkits]);
223
232
  const tools = mentionTools ?? providerMentionTools;
224
- const mergedToolUIs = react$1.useMemo(
233
+ const mergedToolUIs = require$$0.useMemo(
225
234
  () => ({
226
235
  append_markdown_to_athena_document: appendDocumentToolUi.AppendDocumentToolUI,
227
236
  read_full_asset: readAssetToolUi.ReadAssetToolUI,
@@ -237,7 +246,7 @@ const AthenaChatContent = ({
237
246
  const emptyComponent = ((_f = components == null ? void 0 : components.messageParts) == null ? void 0 : _f.Empty) ?? AthenaAssistantMessageEmpty;
238
247
  const actionBarComponent = (components == null ? void 0 : components.AssistantActionBar) ?? AthenaAssistantActionBar;
239
248
  const avatarComponent = components == null ? void 0 : components.AssistantAvatar;
240
- const defaultComponentsContextValue = react$1.useMemo(
249
+ const defaultComponentsContextValue = require$$0.useMemo(
241
250
  () => ({
242
251
  toolUIs: mergedToolUIs,
243
252
  TextComponent: textComponent,
@@ -261,7 +270,7 @@ const AthenaChatContent = ({
261
270
  );
262
271
  const AssistantMessageComponent = (components == null ? void 0 : components.AssistantMessage) ?? AthenaDefaultAssistantMessage;
263
272
  const UserMessageComponent = (components == null ? void 0 : components.UserMessage) ?? AthenaDefaultUserMessage;
264
- const messageComponents$1 = react$1.useMemo(
273
+ const messageComponents$1 = require$$0.useMemo(
265
274
  () => ({
266
275
  UserMessage: UserMessageComponent,
267
276
  AssistantMessage: AssistantMessageComponent
@@ -282,6 +291,8 @@ const AthenaChatContent = ({
282
291
  maxWidth,
283
292
  turnAnchor,
284
293
  readOnly,
294
+ arrivalThreadId: statewireThreadId,
295
+ viewerUserId: account.userId ?? null,
285
296
  banners: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
286
297
  /* @__PURE__ */ jsxRuntime.jsx(offlineHistory.OfflineSnapshotBanner, { className: "px-4 pt-3" }),
287
298
  /* @__PURE__ */ jsxRuntime.jsx(WaitingOnYouBanner.WaitingOnYouBanner, { className: "px-4 pt-3" })
@@ -293,14 +304,15 @@ const AthenaChatContent = ({
293
304
  beforeMessages: /* @__PURE__ */ jsxRuntime.jsx(statewireHistoryEdge.StatewireHistoryEdge, { className: "aui-thread-history-edge" }),
294
305
  components: messageComponents$1,
295
306
  runningIndicator: null,
296
- scrollToBottom: null,
307
+ scrollToBottom: /* @__PURE__ */ jsxRuntime.jsx(threadScrollToBottom.ThreadScrollToBottom, {}),
297
308
  viewportFooterClassName: "aui-thread-viewport-footer sticky bottom-0 mx-auto mt-auto flex w-full max-w-(--thread-max-width) flex-col gap-4 overflow-visible rounded-t-3xl bg-background pt-4 pb-4 md:pb-6",
298
309
  viewportFooter: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
299
310
  welcomeSuggestions.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(react.ThreadPrimitive.Empty, { children: /* @__PURE__ */ jsxRuntime.jsx(athenaChatWelcome.AthenaChatWelcomeSuggestions, { suggestions: welcomeSuggestions }) }),
311
+ surface && /* @__PURE__ */ jsxRuntime.jsx(DrivingOnChip.DrivingOnChip, { here: surface }),
300
312
  /* @__PURE__ */ jsxRuntime.jsx(statewireBanners.StatewireConnectionBanner, {}),
301
313
  /* @__PURE__ */ jsxRuntime.jsx(statewireBanners.StatewireErrorBanner, { onStartNewSession: startNewSession }),
302
314
  /* @__PURE__ */ jsxRuntime.jsx(StatewireRunRefusalNotice.StatewireRunRefusalNotice, { onStartNewSession: startNewSession }),
303
- /* @__PURE__ */ jsxRuntime.jsx(StatewireApprovalCard.StatewireApprovalCard, {}),
315
+ /* @__PURE__ */ jsxRuntime.jsx(StatewireApprovalCard.StatewireApprovalCard, { confirmDecision }),
304
316
  /* @__PURE__ */ jsxRuntime.jsx(StatewireQueuedMessages.StatewireQueuedMessages, {}),
305
317
  /* @__PURE__ */ jsxRuntime.jsx(AttachmentContext.AttachmentProvider, { children: /* @__PURE__ */ jsxRuntime.jsxs(QuoteContext.QuoteProvider, { children: [
306
318
  /* @__PURE__ */ jsxRuntime.jsx(QuotePostMessageBridge, {}),
@@ -311,6 +323,7 @@ const AthenaChatContent = ({
311
323
  slots: composerSlots,
312
324
  dictation,
313
325
  voice: readOnly ? false : voice,
326
+ continueByVoice: readOnly ? null : continueByVoice,
314
327
  welcomeSuggestionCount: welcomeSuggestions.length
315
328
  }
316
329
  )
@@ -321,16 +334,16 @@ const AthenaChatContent = ({
321
334
  };
322
335
  const THREAD_VIEWPORT_ATTR = "data-aui-thread-viewport";
323
336
  const useScrollToTop = () => {
324
- const [isAtTop, setIsAtTop] = react$1.useState(true);
325
- const [buttonEl, setButtonEl] = react$1.useState(null);
326
- const containerRef = react$1.useCallback((node) => {
337
+ const [isAtTop, setIsAtTop] = require$$0.useState(true);
338
+ const [buttonEl, setButtonEl] = require$$0.useState(null);
339
+ const containerRef = require$$0.useCallback((node) => {
327
340
  setButtonEl(node);
328
341
  }, []);
329
- const getViewport = react$1.useCallback(() => {
342
+ const getViewport = require$$0.useCallback(() => {
330
343
  if (!buttonEl) return null;
331
344
  return buttonEl.closest(`[${THREAD_VIEWPORT_ATTR}]`);
332
345
  }, [buttonEl]);
333
- react$1.useEffect(() => {
346
+ require$$0.useEffect(() => {
334
347
  const viewport = getViewport();
335
348
  if (!viewport) return;
336
349
  const handleScroll = () => {
@@ -340,7 +353,7 @@ const useScrollToTop = () => {
340
353
  viewport.addEventListener("scroll", handleScroll, { passive: true });
341
354
  return () => viewport.removeEventListener("scroll", handleScroll);
342
355
  }, [getViewport]);
343
- const handleClick = react$1.useCallback(() => {
356
+ const handleClick = require$$0.useCallback(() => {
344
357
  const viewport = getViewport();
345
358
  if (!viewport) return;
346
359
  viewport.scrollTo({ top: 0, behavior: "smooth" });
@@ -369,7 +382,7 @@ const ATHENA_CHAT_MENTION_CATEGORIES = [
369
382
  "projects",
370
383
  "folders"
371
384
  ];
372
- const AthenaChatComposer = ({ tools, slots, dictation, voice: voiceOptions, welcomeSuggestionCount }) => {
385
+ const AthenaChatComposer = ({ tools, slots, dictation, voice: voiceOptions, continueByVoice, welcomeSuggestionCount }) => {
373
386
  const aui = react.useAui();
374
387
  const threadId = threadIdContext.useAthenaStatewireThreadId();
375
388
  const { appUrl } = AthenaContext.useAthenaConfig();
@@ -377,10 +390,10 @@ const AthenaChatComposer = ({ tools, slots, dictation, voice: voiceOptions, welc
377
390
  const { quote, clearQuote } = QuoteContext.useQuote();
378
391
  const { attachFiles } = useAttachFiles.useAttachFiles();
379
392
  const sessionLane = statewireSessionLane.useStatewireSessionLane();
380
- const composerRef = react$1.useRef(null);
381
- const [hasText, setHasText] = react$1.useState(false);
382
- const [composerNotice, setComposerNotice] = react$1.useState(null);
383
- const onDraftStateChange = react$1.useCallback(
393
+ const composerRef = require$$0.useRef(null);
394
+ const [hasText, setHasText] = require$$0.useState(false);
395
+ const [composerNotice, setComposerNotice] = require$$0.useState(null);
396
+ const onDraftStateChange = require$$0.useCallback(
384
397
  (next) => {
385
398
  setHasText(next);
386
399
  setComposerNotice(null);
@@ -389,6 +402,7 @@ const AthenaChatComposer = ({ tools, slots, dictation, voice: voiceOptions, welc
389
402
  [setAttachNotice]
390
403
  );
391
404
  const notice = composerNotice ?? attachNotice;
405
+ const needsConnectionReason = (slots == null ? void 0 : slots.needsConnectionReason) || null;
392
406
  const isRunning = react.useAuiState((state) => {
393
407
  var _a;
394
408
  return ((_a = state.optional.thread) == null ? void 0 : _a.isRunning) ?? false;
@@ -399,18 +413,18 @@ const AthenaChatComposer = ({ tools, slots, dictation, voice: voiceOptions, welc
399
413
  const thread = state.optional.thread;
400
414
  return thread ? threadStatus.readRunLive(thread, connection) : false;
401
415
  });
402
- const [dragActive, setDragActive] = react$1.useState(false);
416
+ const [dragActive, setDragActive] = require$$0.useState(false);
403
417
  const keyboardHint = composerKeyboardHint.useComposerKeyboardHint();
404
418
  const reducedMotion = usePrefersReducedMotion.usePrefersReducedMotion();
405
419
  const isEmpty = react.useAuiState((state) => state.thread.isEmpty);
406
- const [mountedEmpty] = react$1.useState(() => isEmpty);
420
+ const [mountedEmpty] = require$$0.useState(() => isEmpty);
407
421
  const entrance = athenaChatWelcome.welcomeEntrance(
408
422
  athenaChatWelcome.welcomeComposerDelayMs(welcomeSuggestionCount),
409
423
  reducedMotion || !mountedEmpty
410
424
  );
411
425
  const dictationEnabled = dictation !== false;
412
426
  const dictationOptions = typeof dictation === "object" ? dictation : void 0;
413
- const appendSpokenText = react$1.useCallback(
427
+ const appendSpokenText = require$$0.useCallback(
414
428
  (spoken) => {
415
429
  if (!spoken) return;
416
430
  const composer = composerRef.current;
@@ -433,36 +447,36 @@ const AthenaChatComposer = ({ tools, slots, dictation, voice: voiceOptions, welc
433
447
  const recording = dictationEnabled && dictationCtl.isActive;
434
448
  const showMic = dictationEnabled && dictationCtl.isSupported && !voiceActive;
435
449
  const { isActive: dictationActive, cancel: cancelDictation } = dictationCtl;
436
- react$1.useEffect(() => {
450
+ require$$0.useEffect(() => {
437
451
  if (!dictationEnabled && dictationActive) cancelDictation();
438
452
  }, [cancelDictation, dictationActive, dictationEnabled]);
439
- const rootCategories = react$1.useMemo(() => {
453
+ const rootCategories = require$$0.useMemo(() => {
440
454
  const categories = [...ATHENA_CHAT_MENTION_CATEGORIES];
441
455
  if (tools.some((tool) => tool.type === "toolkit")) categories.push("toolkits");
442
456
  if (tools.some((tool) => tool.type === "tool")) categories.push("tools");
443
457
  return categories;
444
458
  }, [tools]);
445
- const attachmentsRef = react$1.useRef(attachments);
459
+ const attachmentsRef = require$$0.useRef(attachments);
446
460
  attachmentsRef.current = attachments;
447
- const quoteRef = react$1.useRef(quote);
461
+ const quoteRef = require$$0.useRef(quote);
448
462
  quoteRef.current = quote;
449
463
  const hasExtras = attachments.length > 0 || quote !== null;
450
- const isUploadingRef = react$1.useRef(isUploading);
464
+ const isUploadingRef = require$$0.useRef(isUploading);
451
465
  isUploadingRef.current = isUploading;
452
- const uploadWaitersRef = react$1.useRef([]);
453
- react$1.useEffect(() => {
466
+ const uploadWaitersRef = require$$0.useRef([]);
467
+ require$$0.useEffect(() => {
454
468
  if (isUploading) return;
455
469
  const waiters = uploadWaitersRef.current;
456
470
  uploadWaitersRef.current = [];
457
471
  for (const resolve of waiters) resolve();
458
472
  }, [isUploading]);
459
- const waitForHostUploads = react$1.useCallback(() => {
473
+ const waitForHostUploads = require$$0.useCallback(() => {
460
474
  if (!isUploadingRef.current) return;
461
475
  return new Promise((resolve) => {
462
476
  uploadWaitersRef.current.push(resolve);
463
477
  });
464
478
  }, []);
465
- const sendComposed = react$1.useCallback(
479
+ const sendComposed = require$$0.useCallback(
466
480
  (editorSend) => {
467
481
  const send = buildComposedMessage.buildComposedSend({
468
482
  attachments: attachmentsRef.current,
@@ -480,7 +494,18 @@ const AthenaChatComposer = ({ tools, slots, dictation, voice: voiceOptions, welc
480
494
  },
481
495
  [appUrl, aui, clearAttachments, clearQuote, threadId]
482
496
  );
483
- const interceptSubmit = react$1.useCallback(
497
+ const continueByVoiceRef = require$$0.useRef(continueByVoice);
498
+ continueByVoiceRef.current = continueByVoice;
499
+ const settleContinueByVoice = require$$0.useCallback(() => {
500
+ var _a;
501
+ return (_a = continueByVoiceRef.current) == null ? void 0 : _a.onDone();
502
+ }, []);
503
+ const { onSubmitted: onKeyboardHintSubmitted } = keyboardHint;
504
+ const handleComposerSubmitted = require$$0.useCallback(() => {
505
+ onKeyboardHintSubmitted();
506
+ settleContinueByVoice();
507
+ }, [onKeyboardHintSubmitted, settleContinueByVoice]);
508
+ const interceptSubmit = require$$0.useCallback(
484
509
  async (text, draftMarkdown) => {
485
510
  if (attachmentsRef.current.length > 0 || quoteRef.current !== null) {
486
511
  return sendComposed({ text, draftMarkdown });
@@ -489,11 +514,11 @@ const AthenaChatComposer = ({ tools, slots, dictation, voice: voiceOptions, welc
489
514
  },
490
515
  [sendComposed, voice.phase, voice.sendUserText]
491
516
  );
492
- const hasPendingExtras = react$1.useCallback(
517
+ const hasPendingExtras = require$$0.useCallback(
493
518
  () => attachmentsRef.current.length > 0 || quoteRef.current !== null,
494
519
  []
495
520
  );
496
- const holdPendingExtras = react$1.useCallback(
521
+ const holdPendingExtras = require$$0.useCallback(
497
522
  ({
498
523
  outbox,
499
524
  send,
@@ -514,7 +539,7 @@ const AthenaChatComposer = ({ tools, slots, dictation, voice: voiceOptions, welc
514
539
  },
515
540
  [appUrl, clearAttachments, clearQuote]
516
541
  );
517
- const fileIntake = react$1.useMemo(
542
+ const fileIntake = require$$0.useMemo(
518
543
  () => ({
519
544
  onPaste: (files) => {
520
545
  void attachFiles(files, "paste");
@@ -522,10 +547,10 @@ const AthenaChatComposer = ({ tools, slots, dictation, voice: voiceOptions, welc
522
547
  }),
523
548
  [attachFiles]
524
549
  );
525
- const stopDictation = react$1.useCallback(async () => {
550
+ const stopDictation = require$$0.useCallback(async () => {
526
551
  appendSpokenText((await dictationCtl.stop()).text);
527
552
  }, [appendSpokenText, dictationCtl]);
528
- const sendDictation = react$1.useCallback(async () => {
553
+ const sendDictation = require$$0.useCallback(async () => {
529
554
  var _a, _b, _c;
530
555
  const { text: spoken, error } = await dictationCtl.stop();
531
556
  appendSpokenText(spoken);
@@ -551,6 +576,7 @@ const AthenaChatComposer = ({ tools, slots, dictation, voice: voiceOptions, welc
551
576
  });
552
577
  return;
553
578
  }
579
+ settleContinueByVoice();
554
580
  if (extras) {
555
581
  sendComposed(send);
556
582
  return;
@@ -558,7 +584,17 @@ const AthenaChatComposer = ({ tools, slots, dictation, voice: voiceOptions, welc
558
584
  composerMessage.prepareComposerSend({ threadId, ...send });
559
585
  aui.composer.setText(send.text);
560
586
  aui.composer.send({ steer: false });
561
- }, [appendSpokenText, aui, dictationCtl, isRunning, sendComposed, sessionLane, slots, threadId]);
587
+ }, [
588
+ appendSpokenText,
589
+ aui,
590
+ dictationCtl,
591
+ isRunning,
592
+ sendComposed,
593
+ sessionLane,
594
+ settleContinueByVoice,
595
+ slots,
596
+ threadId
597
+ ]);
562
598
  return /* @__PURE__ */ jsxRuntime.jsxs(ComposerDropZone.ComposerDropZone, { onDragActiveChange: setDragActive, children: [
563
599
  /* @__PURE__ */ jsxRuntime.jsx("audio", { ref: audioRef, autoPlay: true, playsInline: true }),
564
600
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -572,9 +608,25 @@ const AthenaChatComposer = ({ tools, slots, dictation, voice: voiceOptions, welc
572
608
  {
573
609
  appearance: "paper",
574
610
  dragActive,
575
- aboveSurface: /* @__PURE__ */ jsxRuntime.jsx(threadScrollToBottom.ThreadScrollToBottom, {}),
576
611
  beforeEditor: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
577
- /* @__PURE__ */ jsxRuntime.jsx(chatVoiceControls.ChatVoiceStatus, { voice }),
612
+ /* @__PURE__ */ jsxRuntime.jsx(
613
+ chatVoiceControls.ChatVoiceStatus,
614
+ {
615
+ voice,
616
+ offerMove: voiceEnabled,
617
+ moveDisabled: isUploading || dictationCtl.isActive || !statewireLifecycle.isStatewireChannelLive(connection),
618
+ moveDisabledReason: needsConnectionReason
619
+ }
620
+ ),
621
+ /* @__PURE__ */ jsxRuntime.jsx(
622
+ chatVoiceControls.ChatVoiceContinueOffer,
623
+ {
624
+ voice,
625
+ offer: voiceEnabled ? continueByVoice : null,
626
+ disabled: isUploading || dictationCtl.isActive || !statewireLifecycle.isStatewireChannelLive(connection),
627
+ disabledReason: needsConnectionReason
628
+ }
629
+ ),
578
630
  /* @__PURE__ */ jsxRuntime.jsx(ComposerQuotePreview.ComposerQuotePreview, {}),
579
631
  /* @__PURE__ */ jsxRuntime.jsx(ComposerAttachmentPreview.ComposerAttachmentPreview, {})
580
632
  ] }),
@@ -589,13 +641,14 @@ const AthenaChatComposer = ({ tools, slots, dictation, voice: voiceOptions, welc
589
641
  tools,
590
642
  rootCategories,
591
643
  onDraftStateChange,
644
+ mentionSearchUnavailable: needsConnectionReason ? offlineStatus.NEEDS_CONNECTION : null,
592
645
  waitForHostUploads,
593
646
  interceptSubmit,
594
647
  hasPendingExtras,
595
648
  holdPendingExtras,
596
649
  onAttachmentError: setComposerNotice,
597
650
  fileIntake,
598
- onSubmitted: keyboardHint.onSubmitted
651
+ onSubmitted: handleComposerSubmitted
599
652
  }
600
653
  ) }),
601
654
  notice && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "aui-composer-notice px-1.5 pb-1 text-destructive text-xs", role: "alert", children: notice }),
@@ -611,14 +664,21 @@ const AthenaChatComposer = ({ tools, slots, dictation, voice: voiceOptions, welc
611
664
  dictationEnabled && dictationCtl.status === dictationState.DICTATION_STATUSES.error && dictationCtl.error && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "aui-dictation-error px-1.5 pb-1 text-destructive text-xs", role: "alert", children: dictationCtl.error.message })
612
665
  ] }),
613
666
  toolbarStart: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center gap-1", children: recording ? /* @__PURE__ */ jsxRuntime.jsx(dictationControls.DictationCancelButton, { onClick: dictationCtl.cancel }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
614
- /* @__PURE__ */ jsxRuntime.jsx(FileUploadButton.FileUploadButton, { className: "aui-composer-attach size-8 rounded-full p-0 disabled:opacity-30" }),
667
+ /* @__PURE__ */ jsxRuntime.jsx(
668
+ FileUploadButton.FileUploadButton,
669
+ {
670
+ className: "aui-composer-attach size-8 rounded-full p-0 disabled:opacity-30",
671
+ disabledReason: needsConnectionReason
672
+ }
673
+ ),
615
674
  /* @__PURE__ */ jsxRuntime.jsx(
616
675
  athenaComposerControls.AthenaComposerMentionButton,
617
676
  {
618
677
  onClick: () => {
619
678
  var _a, _b;
620
679
  return (_b = (_a = composerRef.current) == null ? void 0 : _a.openMentionMenu) == null ? void 0 : _b.call(_a);
621
- }
680
+ },
681
+ disabledReason: needsConnectionReason
622
682
  }
623
683
  ),
624
684
  /* @__PURE__ */ jsxRuntime.jsx(chatPickers.AthenaChatModeMenu, {}),
@@ -643,14 +703,29 @@ const AthenaChatComposer = ({ tools, slots, dictation, voice: voiceOptions, welc
643
703
  )
644
704
  ] }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
645
705
  slots == null ? void 0 : slots.toolbarEnd,
646
- showMic && /* @__PURE__ */ jsxRuntime.jsx(dictationControls.DictationMicButton, { onClick: dictationCtl.start, disabled: isUploading }),
647
- voiceEnabled && /* @__PURE__ */ jsxRuntime.jsx(chatVoiceControls.ChatVoiceButton, { voice, disabled: isUploading || dictationCtl.isActive || !statewireLifecycle.isStatewireChannelLive(connection) }),
706
+ showMic && /* @__PURE__ */ jsxRuntime.jsx(
707
+ dictationControls.DictationMicButton,
708
+ {
709
+ onClick: dictationCtl.start,
710
+ disabled: isUploading,
711
+ disabledReason: needsConnectionReason
712
+ }
713
+ ),
714
+ voiceEnabled && /* @__PURE__ */ jsxRuntime.jsx(
715
+ chatVoiceControls.ChatVoiceButton,
716
+ {
717
+ voice,
718
+ disabled: isUploading || dictationCtl.isActive || !statewireLifecycle.isStatewireChannelLive(connection),
719
+ disabledReason: needsConnectionReason
720
+ }
721
+ ),
648
722
  /* @__PURE__ */ jsxRuntime.jsx(
649
723
  composerSendOrStop.ComposerSendOrStop,
650
724
  {
651
725
  composerRef,
652
726
  hasDraft: hasText || hasExtras,
653
727
  liveVoice: voice.phase === "live" && !hasExtras,
728
+ liveSession: voiceActive ? voice : null,
654
729
  sendBlockedReason: isUploading ? "Upload in progress..." : null,
655
730
  onBeforeSend: slots == null ? void 0 : slots.onBeforeSend,
656
731
  components: athenaComposerControls.ATHENA_COMPOSER_COMPONENTS
@@ -678,8 +753,8 @@ const MessageError = () => /* @__PURE__ */ jsxRuntime.jsx(react.MessagePrimitive
678
753
  ) })
679
754
  ] }) });
680
755
  function useSecondsSince({ resetKey, ticking = true }) {
681
- const [seconds, setSeconds] = react$1.useState(0);
682
- react$1.useEffect(() => {
756
+ const [seconds, setSeconds] = require$$0.useState(0);
757
+ require$$0.useEffect(() => {
683
758
  setSeconds(0);
684
759
  if (!ticking) return;
685
760
  const startedAt = Date.now();
@@ -793,7 +868,7 @@ const MessageDaySeparator = () => {
793
868
  const previous = index2 > 0 ? s.thread.messages[index2 - 1] : void 0;
794
869
  return messageTime.readMessageCreatedAt((_a = previous == null ? void 0 : previous.metadata) == null ? void 0 : _a.custom);
795
870
  });
796
- const label = react$1.useMemo(() => {
871
+ const label = require$$0.useMemo(() => {
797
872
  const date = stamp ? messageTime.parseMessageTime(stamp) : null;
798
873
  const previous = previousStamp ? messageTime.parseMessageTime(previousStamp) : null;
799
874
  if (!date || !previous || messageTime.isSameCalendarDay(date, previous)) return null;
@@ -820,7 +895,7 @@ const MessageTimestamp = ({ className }) => {
820
895
  var _a;
821
896
  return messageTime.readMessageCreatedAt((_a = s.message.metadata) == null ? void 0 : _a.custom);
822
897
  });
823
- const date = react$1.useMemo(() => stamp ? messageTime.parseMessageTime(stamp) : null, [stamp]);
898
+ const date = require$$0.useMemo(() => stamp ? messageTime.parseMessageTime(stamp) : null, [stamp]);
824
899
  if (!date) return null;
825
900
  return /* @__PURE__ */ jsxRuntime.jsx(
826
901
  "time",
@@ -842,7 +917,7 @@ const AthenaReasoningPart = ({
842
917
  status,
843
918
  TextComponent
844
919
  }) => {
845
- const inheritedTextComponent = react$1.useContext(AthenaReasoningTextComponentContext);
920
+ const inheritedTextComponent = require$$0.useContext(AthenaReasoningTextComponentContext);
846
921
  const EffectiveTextComponent = TextComponent ?? inheritedTextComponent ?? tiptapText.TiptapText;
847
922
  const isMessageRunning = react.useAuiState((state) => {
848
923
  var _a;
@@ -852,15 +927,15 @@ const AthenaReasoningPart = ({
852
927
  (state) => getReasoningTokensFromMetadata(state.message.metadata)
853
928
  );
854
929
  const isRunning = isMessageRunning || (status == null ? void 0 : status.type) === "running";
855
- const [isCollapsed, setIsCollapsed] = react$1.useState(!isRunning);
856
- const userOverrodeOpenStateRef = react$1.useRef(false);
930
+ const [isCollapsed, setIsCollapsed] = require$$0.useState(!isRunning);
931
+ const userOverrodeOpenStateRef = require$$0.useRef(false);
857
932
  const hasText = text.trim().length > 0;
858
933
  const reasoningTextProps = {
859
934
  type: "text",
860
935
  text,
861
936
  status: isRunning ? { type: "running" } : status
862
937
  };
863
- react$1.useEffect(() => {
938
+ require$$0.useEffect(() => {
864
939
  if (userOverrodeOpenStateRef.current) {
865
940
  return;
866
941
  }
@@ -924,7 +999,7 @@ const AthenaAssistantMessage = ({
924
999
  groupToolCalls = true
925
1000
  }) => {
926
1001
  const effectiveReasoningComponent = ReasoningComponent ?? AthenaReasoningPart;
927
- const toolUIsWithNestedMessages = react$1.useMemo(() => {
1002
+ const toolUIsWithNestedMessages = require$$0.useMemo(() => {
928
1003
  const wrappedToolUIs = {};
929
1004
  for (const [toolName, ToolUI] of Object.entries(toolUIs)) {
930
1005
  wrappedToolUIs[toolName] = withNestedPtcMessages(ToolUI);
@@ -933,7 +1008,7 @@ const AthenaAssistantMessage = ({
933
1008
  }, [toolUIs]);
934
1009
  const isInlineTool = toolUIs[toolNames.TASK_TOOL_NAME] === subagentTaskToolUi.SubagentTaskToolUI ? isInlineToolOrSubagent : inlineTools.isSdkInlineTool;
935
1010
  const waitingToolCallIds = subagents.useTurnToolCallsAwaitingApproval(useStatewireApprovalRequest.useApprovalWaitInScope().toolCallIds);
936
- const nestedPtcComponents = react$1.useMemo(
1011
+ const nestedPtcComponents = require$$0.useMemo(
937
1012
  () => ({
938
1013
  Text: TextComponent,
939
1014
  Reasoning: effectiveReasoningComponent,
@@ -945,10 +1020,14 @@ const AthenaAssistantMessage = ({
945
1020
  }),
946
1021
  [EmptyComponent, TextComponent, effectiveReasoningComponent, toolUIsWithNestedMessages]
947
1022
  );
1023
+ const arrivedLive = arrivalAnimation.useMessageArrivalAnimation();
948
1024
  return /* @__PURE__ */ jsxRuntime.jsxs(
949
1025
  react.MessagePrimitive.Root,
950
1026
  {
951
- className: "aui-assistant-message-root group/aui-assistant-message fade-in slide-in-from-bottom-1 relative mx-auto w-full max-w-(--thread-max-width) animate-in py-3 duration-150",
1027
+ className: cnfast.cn(
1028
+ "aui-assistant-message-root group/aui-assistant-message relative mx-auto w-full max-w-(--thread-max-width) py-3",
1029
+ arrivedLive && arrivalAnimation.MESSAGE_ARRIVAL_ANIMATION_CLASS
1030
+ ),
952
1031
  "data-role": "assistant",
953
1032
  children: [
954
1033
  /* @__PURE__ */ jsxRuntime.jsx(MessageDaySeparator, {}),
@@ -962,6 +1041,7 @@ const AthenaAssistantMessage = ({
962
1041
  }
963
1042
  ) : null,
964
1043
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0 flex-1", children: [
1044
+ /* @__PURE__ */ jsxRuntime.jsx(answerLabel.AnswerLabel, { className: "px-2 pb-1" }),
965
1045
  /* @__PURE__ */ jsxRuntime.jsx(AthenaReasoningTextComponentContext.Provider, { value: TextComponent, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "aui-assistant-message-content wrap-break-word px-2 text-foreground leading-relaxed", children: [
966
1046
  /* @__PURE__ */ jsxRuntime.jsx(NestedPtcMessages.NestedPtcComponentsProvider, { components: nestedPtcComponents, children: groupToolCalls ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col space-y-2", children: [
967
1047
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -1129,6 +1209,11 @@ const AthenaUserMessage = ({
1129
1209
  return githubWakeEvent.isGithubWakeMessage((_a = s.message.metadata) == null ? void 0 : _a.custom) || subscriptionWakeEvent.isSubscriptionWakeMessage((_b = s.message.metadata) == null ? void 0 : _b.custom);
1130
1210
  }
1131
1211
  );
1212
+ const arrivedLive = arrivalAnimation.useMessageArrivalAnimation();
1213
+ const partComponents = require$$0.useMemo(
1214
+ () => ({ Text: TextComponent, Image: messageImages.MessageImagePart }),
1215
+ [TextComponent]
1216
+ );
1132
1217
  if (isWake) {
1133
1218
  return /* @__PURE__ */ jsxRuntime.jsxs(
1134
1219
  react.MessagePrimitive.Root,
@@ -1145,12 +1230,15 @@ const AthenaUserMessage = ({
1145
1230
  return /* @__PURE__ */ jsxRuntime.jsxs(
1146
1231
  react.MessagePrimitive.Root,
1147
1232
  {
1148
- className: "aui-user-message-root group/aui-user-message fade-in slide-in-from-bottom-1 mx-auto flex w-full max-w-(--thread-max-width) animate-in flex-col items-end px-2 py-3 duration-150",
1233
+ className: cnfast.cn(
1234
+ "aui-user-message-root group/aui-user-message mx-auto flex w-full max-w-(--thread-max-width) flex-col items-end px-2 py-3",
1235
+ arrivedLive && arrivalAnimation.MESSAGE_ARRIVAL_ANIMATION_CLASS
1236
+ ),
1149
1237
  "data-role": "user",
1150
1238
  children: [
1151
1239
  /* @__PURE__ */ jsxRuntime.jsx(MessageDaySeparator, {}),
1152
1240
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex min-w-0 max-w-[75%] flex-col items-end gap-1", children: [
1153
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "aui-user-message-content wrap-break-word rounded-2xl bg-muted/70 px-4 py-2.5 text-foreground", children: /* @__PURE__ */ jsxRuntime.jsx(react.MessagePrimitive.Parts, { components: { Text: TextComponent } }) }),
1241
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "aui-user-message-content wrap-break-word rounded-2xl bg-muted/70 px-4 py-2.5 text-foreground", children: /* @__PURE__ */ jsxRuntime.jsx(messageImages.MessageImageGallery, { children: /* @__PURE__ */ jsxRuntime.jsx(react.MessagePrimitive.Parts, { components: partComponents }) }) }),
1154
1242
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "aui-user-message-footer -mr-1 flex items-center gap-1", children: [
1155
1243
  /* @__PURE__ */ jsxRuntime.jsx(MessageTimestamp, { className: "mr-1 group-hover/aui-user-message:opacity-100" }),
1156
1244
  /* @__PURE__ */ jsxRuntime.jsx(messageComponents.BranchPicker, {}),