@athenaintel/react 0.57.2 → 0.59.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 (799) hide show
  1. package/README.md +759 -9
  2. package/dist/agent-runtime/src/addressed-agents.cjs +16 -0
  3. package/dist/agent-runtime/src/addressed-agents.cjs.map +1 -0
  4. package/dist/agent-runtime/src/addressed-agents.d.ts +30 -0
  5. package/dist/agent-runtime/src/addressed-agents.js +16 -0
  6. package/dist/agent-runtime/src/addressed-agents.js.map +1 -0
  7. package/dist/agent-runtime/src/answer-label.cjs +4 -3
  8. package/dist/agent-runtime/src/answer-label.cjs.map +1 -1
  9. package/dist/agent-runtime/src/answer-label.d.ts +13 -6
  10. package/dist/agent-runtime/src/answer-label.js +4 -3
  11. package/dist/agent-runtime/src/answer-label.js.map +1 -1
  12. package/dist/agent-runtime/src/chat-outbox-attachments.cjs.map +1 -1
  13. package/dist/agent-runtime/src/chat-outbox-attachments.d.ts +1 -1
  14. package/dist/agent-runtime/src/chat-outbox-attachments.js.map +1 -1
  15. package/dist/agent-runtime/src/chat-outbox-entry.cjs +101 -0
  16. package/dist/agent-runtime/src/chat-outbox-entry.cjs.map +1 -0
  17. package/dist/agent-runtime/src/chat-outbox-entry.d.ts +99 -0
  18. package/dist/agent-runtime/src/chat-outbox-entry.js +101 -0
  19. package/dist/agent-runtime/src/chat-outbox-entry.js.map +1 -0
  20. package/dist/agent-runtime/src/chat-outbox-legacy.cjs +252 -0
  21. package/dist/agent-runtime/src/chat-outbox-legacy.cjs.map +1 -0
  22. package/dist/agent-runtime/src/chat-outbox-legacy.d.ts +96 -0
  23. package/dist/agent-runtime/src/chat-outbox-legacy.js +252 -0
  24. package/dist/agent-runtime/src/chat-outbox-legacy.js.map +1 -0
  25. package/dist/agent-runtime/src/chat-outbox-policy.cjs +30 -0
  26. package/dist/agent-runtime/src/chat-outbox-policy.cjs.map +1 -0
  27. package/dist/agent-runtime/src/chat-outbox-policy.d.ts +42 -0
  28. package/dist/agent-runtime/src/chat-outbox-policy.js +30 -0
  29. package/dist/agent-runtime/src/chat-outbox-policy.js.map +1 -0
  30. package/dist/agent-runtime/src/chat-outbox-storage.cjs +306 -0
  31. package/dist/agent-runtime/src/chat-outbox-storage.cjs.map +1 -0
  32. package/dist/agent-runtime/src/chat-outbox-storage.d.ts +194 -0
  33. package/dist/agent-runtime/src/chat-outbox-storage.js +306 -0
  34. package/dist/agent-runtime/src/chat-outbox-storage.js.map +1 -0
  35. package/dist/agent-runtime/src/chat-outbox-thread.cjs +21 -94
  36. package/dist/agent-runtime/src/chat-outbox-thread.cjs.map +1 -1
  37. package/dist/agent-runtime/src/chat-outbox-thread.d.ts +22 -18
  38. package/dist/agent-runtime/src/chat-outbox-thread.js +21 -94
  39. package/dist/agent-runtime/src/chat-outbox-thread.js.map +1 -1
  40. package/dist/agent-runtime/src/chat-outbox.cjs +492 -547
  41. package/dist/agent-runtime/src/chat-outbox.cjs.map +1 -1
  42. package/dist/agent-runtime/src/chat-outbox.d.ts +110 -142
  43. package/dist/agent-runtime/src/chat-outbox.js +492 -547
  44. package/dist/agent-runtime/src/chat-outbox.js.map +1 -1
  45. package/dist/agent-runtime/src/composer-markdown.cjs.map +1 -1
  46. package/dist/agent-runtime/src/composer-markdown.d.ts +1 -1
  47. package/dist/agent-runtime/src/composer-markdown.js.map +1 -1
  48. package/dist/agent-runtime/src/deep-agent-transport-recipe.cjs +3 -1
  49. package/dist/agent-runtime/src/deep-agent-transport-recipe.cjs.map +1 -1
  50. package/dist/agent-runtime/src/deep-agent-transport-recipe.d.ts +8 -1
  51. package/dist/agent-runtime/src/deep-agent-transport-recipe.js +3 -1
  52. package/dist/agent-runtime/src/deep-agent-transport-recipe.js.map +1 -1
  53. package/dist/agent-runtime/src/dictation-preferences.d.ts +356 -0
  54. package/dist/agent-runtime/src/dictation-record.d.ts +279 -0
  55. package/dist/agent-runtime/src/dictation-session.d.ts +106 -7
  56. package/dist/agent-runtime/src/dictation-snippets.d.ts +9 -0
  57. package/dist/agent-runtime/src/dictation-transfer.d.ts +142 -0
  58. package/dist/agent-runtime/src/edit-command.cjs.map +1 -1
  59. package/dist/agent-runtime/src/edit-command.d.ts +1 -1
  60. package/dist/agent-runtime/src/edit-command.js.map +1 -1
  61. package/dist/agent-runtime/src/errors.cjs +1 -0
  62. package/dist/agent-runtime/src/errors.cjs.map +1 -1
  63. package/dist/agent-runtime/src/errors.js +1 -0
  64. package/dist/agent-runtime/src/errors.js.map +1 -1
  65. package/dist/agent-runtime/src/generated/runconfig-contract.cjs +24 -0
  66. package/dist/agent-runtime/src/generated/runconfig-contract.cjs.map +1 -1
  67. package/dist/agent-runtime/src/generated/runconfig-contract.d.ts +3 -3
  68. package/dist/agent-runtime/src/generated/runconfig-contract.js +24 -0
  69. package/dist/agent-runtime/src/generated/runconfig-contract.js.map +1 -1
  70. package/dist/agent-runtime/src/index.d.ts +14 -8
  71. package/dist/agent-runtime/src/lane-follow.cjs +289 -0
  72. package/dist/agent-runtime/src/lane-follow.cjs.map +1 -0
  73. package/dist/agent-runtime/src/lane-follow.js +289 -0
  74. package/dist/agent-runtime/src/lane-follow.js.map +1 -0
  75. package/dist/agent-runtime/src/lane-images.cjs +387 -0
  76. package/dist/agent-runtime/src/lane-images.cjs.map +1 -0
  77. package/dist/agent-runtime/src/lane-images.js +387 -0
  78. package/dist/agent-runtime/src/lane-images.js.map +1 -0
  79. package/dist/agent-runtime/src/message-window.js +1 -1
  80. package/dist/agent-runtime/src/messages.cjs +19 -1
  81. package/dist/agent-runtime/src/messages.cjs.map +1 -1
  82. package/dist/agent-runtime/src/messages.d.ts +8 -0
  83. package/dist/agent-runtime/src/messages.js +21 -3
  84. package/dist/agent-runtime/src/messages.js.map +1 -1
  85. package/dist/agent-runtime/src/named-agents.cjs +301 -0
  86. package/dist/agent-runtime/src/named-agents.cjs.map +1 -0
  87. package/dist/agent-runtime/src/named-agents.d.ts +246 -0
  88. package/dist/agent-runtime/src/named-agents.js +301 -0
  89. package/dist/agent-runtime/src/named-agents.js.map +1 -0
  90. package/dist/agent-runtime/src/offline-status.cjs.map +1 -1
  91. package/dist/agent-runtime/src/offline-status.d.ts +66 -2
  92. package/dist/agent-runtime/src/offline-status.js.map +1 -1
  93. package/dist/agent-runtime/src/ptc-subcalls.cjs +41 -0
  94. package/dist/agent-runtime/src/ptc-subcalls.cjs.map +1 -0
  95. package/dist/agent-runtime/src/ptc-subcalls.js +41 -0
  96. package/dist/agent-runtime/src/ptc-subcalls.js.map +1 -0
  97. package/dist/agent-runtime/src/queue.cjs +2 -2
  98. package/dist/agent-runtime/src/queue.cjs.map +1 -1
  99. package/dist/agent-runtime/src/queue.d.ts +20 -25
  100. package/dist/agent-runtime/src/queue.js +2 -2
  101. package/dist/agent-runtime/src/queue.js.map +1 -1
  102. package/dist/agent-runtime/src/quota-safe-local-storage-session.cjs +314 -84
  103. package/dist/agent-runtime/src/quota-safe-local-storage-session.cjs.map +1 -1
  104. package/dist/agent-runtime/src/quota-safe-local-storage-session.d.ts +137 -40
  105. package/dist/agent-runtime/src/quota-safe-local-storage-session.js +318 -88
  106. package/dist/agent-runtime/src/quota-safe-local-storage-session.js.map +1 -1
  107. package/dist/agent-runtime/src/run-send.cjs +54 -0
  108. package/dist/agent-runtime/src/run-send.cjs.map +1 -0
  109. package/dist/agent-runtime/src/run-send.d.ts +51 -0
  110. package/dist/agent-runtime/src/run-send.js +54 -0
  111. package/dist/agent-runtime/src/run-send.js.map +1 -0
  112. package/dist/agent-runtime/src/running-tool-placeholder.cjs +6 -0
  113. package/dist/agent-runtime/src/running-tool-placeholder.cjs.map +1 -1
  114. package/dist/agent-runtime/src/running-tool-placeholder.js +6 -0
  115. package/dist/agent-runtime/src/running-tool-placeholder.js.map +1 -1
  116. package/dist/agent-runtime/src/runtime.d.ts +9 -5
  117. package/dist/agent-runtime/src/sealed-idb.cjs +64 -0
  118. package/dist/agent-runtime/src/sealed-idb.cjs.map +1 -1
  119. package/dist/agent-runtime/src/sealed-idb.d.ts +16 -0
  120. package/dist/agent-runtime/src/sealed-idb.js +64 -0
  121. package/dist/agent-runtime/src/sealed-idb.js.map +1 -1
  122. package/dist/agent-runtime/src/send-recovery.cjs +90 -118
  123. package/dist/agent-runtime/src/send-recovery.cjs.map +1 -1
  124. package/dist/agent-runtime/src/send-recovery.d.ts +25 -29
  125. package/dist/agent-runtime/src/send-recovery.js +90 -118
  126. package/dist/agent-runtime/src/send-recovery.js.map +1 -1
  127. package/dist/agent-runtime/src/statewire-diagnostics.d.ts +4 -1
  128. package/dist/agent-runtime/src/statewire-held-sends.cjs +191 -0
  129. package/dist/agent-runtime/src/statewire-held-sends.cjs.map +1 -0
  130. package/dist/agent-runtime/src/statewire-held-sends.d.ts +119 -0
  131. package/dist/agent-runtime/src/statewire-held-sends.js +191 -0
  132. package/dist/agent-runtime/src/statewire-held-sends.js.map +1 -0
  133. package/dist/agent-runtime/src/statewire-state.cjs +4 -0
  134. package/dist/agent-runtime/src/statewire-state.cjs.map +1 -1
  135. package/dist/agent-runtime/src/statewire-state.js +4 -0
  136. package/dist/agent-runtime/src/statewire-state.js.map +1 -1
  137. package/dist/agent-runtime/src/statewire-transport.cjs +8 -2
  138. package/dist/agent-runtime/src/statewire-transport.cjs.map +1 -1
  139. package/dist/agent-runtime/src/statewire-transport.d.ts +14 -5
  140. package/dist/agent-runtime/src/statewire-transport.js +8 -2
  141. package/dist/agent-runtime/src/statewire-transport.js.map +1 -1
  142. package/dist/agent-runtime/src/subagent-transcripts.cjs +1 -23
  143. package/dist/agent-runtime/src/subagent-transcripts.cjs.map +1 -1
  144. package/dist/agent-runtime/src/subagent-transcripts.js +3 -25
  145. package/dist/agent-runtime/src/subagent-transcripts.js.map +1 -1
  146. package/dist/agent-runtime/src/subagents.cjs +22 -29
  147. package/dist/agent-runtime/src/subagents.cjs.map +1 -1
  148. package/dist/agent-runtime/src/subagents.js +23 -30
  149. package/dist/agent-runtime/src/subagents.js.map +1 -1
  150. package/dist/agent-runtime/src/thread-extras.cjs +27 -19
  151. package/dist/agent-runtime/src/thread-extras.cjs.map +1 -1
  152. package/dist/agent-runtime/src/thread-extras.d.ts +19 -6
  153. package/dist/agent-runtime/src/thread-extras.js +27 -19
  154. package/dist/agent-runtime/src/thread-extras.js.map +1 -1
  155. package/dist/agent-runtime/src/thread-handoff-flow-machine.d.ts +8 -8
  156. package/dist/agent-runtime/src/tool-metadata.cjs +12 -0
  157. package/dist/agent-runtime/src/tool-metadata.cjs.map +1 -1
  158. package/dist/agent-runtime/src/tool-metadata.js +12 -0
  159. package/dist/agent-runtime/src/tool-metadata.js.map +1 -1
  160. package/dist/agent-runtime/src/tool-names.cjs +21 -0
  161. package/dist/agent-runtime/src/tool-names.cjs.map +1 -1
  162. package/dist/agent-runtime/src/tool-names.d.ts +8 -0
  163. package/dist/agent-runtime/src/tool-names.js +21 -0
  164. package/dist/agent-runtime/src/tool-names.js.map +1 -1
  165. package/dist/agent-runtime/src/typed-interrupt-kinds.cjs +247 -0
  166. package/dist/agent-runtime/src/typed-interrupt-kinds.cjs.map +1 -0
  167. package/dist/agent-runtime/src/typed-interrupt-kinds.d.ts +173 -0
  168. package/dist/agent-runtime/src/typed-interrupt-kinds.js +247 -0
  169. package/dist/agent-runtime/src/typed-interrupt-kinds.js.map +1 -0
  170. package/dist/agent-runtime/src/typed-interrupts.cjs +48 -0
  171. package/dist/agent-runtime/src/typed-interrupts.cjs.map +1 -0
  172. package/dist/agent-runtime/src/typed-interrupts.d.ts +75 -0
  173. package/dist/agent-runtime/src/typed-interrupts.js +48 -0
  174. package/dist/agent-runtime/src/typed-interrupts.js.map +1 -0
  175. package/dist/agent-runtime/src/types.d.ts +1 -1
  176. package/dist/agent-runtime/src/use-conversation-list.cjs +1 -0
  177. package/dist/agent-runtime/src/use-conversation-list.cjs.map +1 -1
  178. package/dist/agent-runtime/src/use-conversation-list.d.ts +7 -0
  179. package/dist/agent-runtime/src/use-conversation-list.js +1 -0
  180. package/dist/agent-runtime/src/use-conversation-list.js.map +1 -1
  181. package/dist/agent-runtime/src/use-deep-agent-chat-outbox.cjs +46 -29
  182. package/dist/agent-runtime/src/use-deep-agent-chat-outbox.cjs.map +1 -1
  183. package/dist/agent-runtime/src/use-deep-agent-chat-outbox.d.ts +14 -22
  184. package/dist/agent-runtime/src/use-deep-agent-chat-outbox.js +46 -29
  185. package/dist/agent-runtime/src/use-deep-agent-chat-outbox.js.map +1 -1
  186. package/dist/agent-runtime/src/use-deep-agent-runtime.cjs +78 -14
  187. package/dist/agent-runtime/src/use-deep-agent-runtime.cjs.map +1 -1
  188. package/dist/agent-runtime/src/use-deep-agent-runtime.d.ts +34 -7
  189. package/dist/agent-runtime/src/use-deep-agent-runtime.js +79 -15
  190. package/dist/agent-runtime/src/use-deep-agent-runtime.js.map +1 -1
  191. package/dist/agent-runtime/src/use-deep-agent-thread.cjs +16 -1
  192. package/dist/agent-runtime/src/use-deep-agent-thread.cjs.map +1 -1
  193. package/dist/agent-runtime/src/use-deep-agent-thread.d.ts +7 -2
  194. package/dist/agent-runtime/src/use-deep-agent-thread.js +16 -1
  195. package/dist/agent-runtime/src/use-deep-agent-thread.js.map +1 -1
  196. package/dist/agent-runtime/src/use-deep-agent-voice.cjs +30 -4
  197. package/dist/agent-runtime/src/use-deep-agent-voice.cjs.map +1 -1
  198. package/dist/agent-runtime/src/use-deep-agent-voice.d.ts +22 -4
  199. package/dist/agent-runtime/src/use-deep-agent-voice.js +30 -4
  200. package/dist/agent-runtime/src/use-deep-agent-voice.js.map +1 -1
  201. package/dist/agent-runtime/src/withdrawn-turns.d.ts +5 -4
  202. package/dist/agent-runtime/src/word-device-fit.d.ts +174 -0
  203. package/dist/agent-runtime/src/work-in.d.ts +127 -0
  204. package/dist/assets/AthenaAssetEmbed.cjs.map +1 -1
  205. package/dist/assets/AthenaAssetEmbed.d.ts +6 -1
  206. package/dist/assets/AthenaAssetEmbed.js.map +1 -1
  207. package/dist/assets/asset-panel-store.cjs +13 -5
  208. package/dist/assets/asset-panel-store.cjs.map +1 -1
  209. package/dist/assets/asset-panel-store.d.ts +33 -2
  210. package/dist/assets/asset-panel-store.js +13 -5
  211. package/dist/assets/asset-panel-store.js.map +1 -1
  212. package/dist/auth/AthenaCredentialSourceContext.cjs +11 -0
  213. package/dist/auth/AthenaCredentialSourceContext.cjs.map +1 -1
  214. package/dist/auth/AthenaCredentialSourceContext.d.ts +6 -0
  215. package/dist/auth/AthenaCredentialSourceContext.js +11 -0
  216. package/dist/auth/AthenaCredentialSourceContext.js.map +1 -1
  217. package/dist/auth/account-identity.cjs +13 -2
  218. package/dist/auth/account-identity.cjs.map +1 -1
  219. package/dist/auth/account-identity.d.ts +9 -0
  220. package/dist/auth/account-identity.js +13 -2
  221. package/dist/auth/account-identity.js.map +1 -1
  222. package/dist/auth/credential-source.cjs +20 -4
  223. package/dist/auth/credential-source.cjs.map +1 -1
  224. package/dist/auth/credential-source.d.ts +9 -0
  225. package/dist/auth/credential-source.js +20 -4
  226. package/dist/auth/credential-source.js.map +1 -1
  227. package/dist/catalog/chat-pickers.cjs +31 -0
  228. package/dist/catalog/chat-pickers.cjs.map +1 -1
  229. package/dist/catalog/chat-pickers.d.ts +17 -0
  230. package/dist/catalog/chat-pickers.js +33 -2
  231. package/dist/catalog/chat-pickers.js.map +1 -1
  232. package/dist/catalog/runtime-catalog.cjs +63 -3
  233. package/dist/catalog/runtime-catalog.cjs.map +1 -1
  234. package/dist/catalog/runtime-catalog.d.ts +63 -3
  235. package/dist/catalog/runtime-catalog.js +64 -4
  236. package/dist/catalog/runtime-catalog.js.map +1 -1
  237. package/dist/chat/AthenaChat.cjs +290 -97
  238. package/dist/chat/AthenaChat.cjs.map +1 -1
  239. package/dist/chat/AthenaChat.d.ts +80 -4
  240. package/dist/chat/AthenaChat.js +290 -97
  241. package/dist/chat/AthenaChat.js.map +1 -1
  242. package/dist/chat/StatewireApprovalCard.cjs +35 -5
  243. package/dist/chat/StatewireApprovalCard.cjs.map +1 -1
  244. package/dist/chat/StatewireApprovalCard.d.ts +55 -2
  245. package/dist/chat/StatewireApprovalCard.js +37 -7
  246. package/dist/chat/StatewireApprovalCard.js.map +1 -1
  247. package/dist/chat/StatewireQueuedMessages.cjs +17 -2
  248. package/dist/chat/StatewireQueuedMessages.cjs.map +1 -1
  249. package/dist/chat/StatewireQueuedMessages.d.ts +8 -45
  250. package/dist/chat/StatewireQueuedMessages.js +18 -3
  251. package/dist/chat/StatewireQueuedMessages.js.map +1 -1
  252. package/dist/chat/chat-agent-mentions.cjs +70 -0
  253. package/dist/chat/chat-agent-mentions.cjs.map +1 -0
  254. package/dist/chat/chat-agent-mentions.d.ts +13 -0
  255. package/dist/chat/chat-agent-mentions.js +70 -0
  256. package/dist/chat/chat-agent-mentions.js.map +1 -0
  257. package/dist/chat/composer-actions.cjs +12 -0
  258. package/dist/chat/composer-actions.cjs.map +1 -0
  259. package/dist/chat/composer-actions.d.ts +22 -0
  260. package/dist/chat/composer-actions.js +12 -0
  261. package/dist/chat/composer-actions.js.map +1 -0
  262. package/dist/chat/follow-up-suggestions.cjs +185 -0
  263. package/dist/chat/follow-up-suggestions.cjs.map +1 -0
  264. package/dist/chat/follow-up-suggestions.d.ts +64 -0
  265. package/dist/chat/follow-up-suggestions.js +185 -0
  266. package/dist/chat/follow-up-suggestions.js.map +1 -0
  267. package/dist/chat/super-grouping/ToolTimeline.cjs +4 -3
  268. package/dist/chat/super-grouping/ToolTimeline.cjs.map +1 -1
  269. package/dist/chat/super-grouping/ToolTimeline.d.ts +7 -3
  270. package/dist/chat/super-grouping/ToolTimeline.js +4 -3
  271. package/dist/chat/super-grouping/ToolTimeline.js.map +1 -1
  272. package/dist/chat/turn-changes.cjs +284 -0
  273. package/dist/chat/turn-changes.cjs.map +1 -0
  274. package/dist/chat/turn-changes.d.ts +130 -0
  275. package/dist/chat/turn-changes.js +284 -0
  276. package/dist/chat/turn-changes.js.map +1 -0
  277. package/dist/chat/typed-interrupts/StatewireTypedInterruptCard.cjs +31 -0
  278. package/dist/chat/typed-interrupts/StatewireTypedInterruptCard.cjs.map +1 -0
  279. package/dist/chat/typed-interrupts/StatewireTypedInterruptCard.d.ts +31 -0
  280. package/dist/chat/typed-interrupts/StatewireTypedInterruptCard.js +31 -0
  281. package/dist/chat/typed-interrupts/StatewireTypedInterruptCard.js.map +1 -0
  282. package/dist/chat/typed-interrupts/approval-cards.cjs +250 -0
  283. package/dist/chat/typed-interrupts/approval-cards.cjs.map +1 -0
  284. package/dist/chat/typed-interrupts/approval-cards.d.ts +22 -0
  285. package/dist/chat/typed-interrupts/approval-cards.js +250 -0
  286. package/dist/chat/typed-interrupts/approval-cards.js.map +1 -0
  287. package/dist/chat/typed-interrupts/form-cards.cjs +289 -0
  288. package/dist/chat/typed-interrupts/form-cards.cjs.map +1 -0
  289. package/dist/chat/typed-interrupts/form-cards.d.ts +6 -0
  290. package/dist/chat/typed-interrupts/form-cards.js +289 -0
  291. package/dist/chat/typed-interrupts/form-cards.js.map +1 -0
  292. package/dist/chat/typed-interrupts/interrupt-card-shell.cjs +182 -0
  293. package/dist/chat/typed-interrupts/interrupt-card-shell.cjs.map +1 -0
  294. package/dist/chat/typed-interrupts/interrupt-card-shell.d.ts +47 -0
  295. package/dist/chat/typed-interrupts/interrupt-card-shell.js +182 -0
  296. package/dist/chat/typed-interrupts/interrupt-card-shell.js.map +1 -0
  297. package/dist/chat/typed-interrupts/json-schema-form.cjs +388 -0
  298. package/dist/chat/typed-interrupts/json-schema-form.cjs.map +1 -0
  299. package/dist/chat/typed-interrupts/json-schema-form.d.ts +33 -0
  300. package/dist/chat/typed-interrupts/json-schema-form.js +388 -0
  301. package/dist/chat/typed-interrupts/json-schema-form.js.map +1 -0
  302. package/dist/chat/typed-interrupts/questionnaire-card.cjs +449 -0
  303. package/dist/chat/typed-interrupts/questionnaire-card.cjs.map +1 -0
  304. package/dist/chat/typed-interrupts/questionnaire-card.d.ts +20 -0
  305. package/dist/chat/typed-interrupts/questionnaire-card.js +449 -0
  306. package/dist/chat/typed-interrupts/questionnaire-card.js.map +1 -0
  307. package/dist/chat/typed-interrupts/request-file-card.cjs +159 -0
  308. package/dist/chat/typed-interrupts/request-file-card.cjs.map +1 -0
  309. package/dist/chat/typed-interrupts/request-file-card.d.ts +2 -0
  310. package/dist/chat/typed-interrupts/request-file-card.js +159 -0
  311. package/dist/chat/typed-interrupts/request-file-card.js.map +1 -0
  312. package/dist/chat/typed-interrupts/toolkit-selection-card.cjs +189 -0
  313. package/dist/chat/typed-interrupts/toolkit-selection-card.cjs.map +1 -0
  314. package/dist/chat/typed-interrupts/toolkit-selection-card.d.ts +23 -0
  315. package/dist/chat/typed-interrupts/toolkit-selection-card.js +189 -0
  316. package/dist/chat/typed-interrupts/toolkit-selection-card.js.map +1 -0
  317. package/dist/chat/typed-interrupts/typed-interrupt-body.cjs +26 -0
  318. package/dist/chat/typed-interrupts/typed-interrupt-body.cjs.map +1 -0
  319. package/dist/chat/typed-interrupts/typed-interrupt-body.d.ts +3 -0
  320. package/dist/chat/typed-interrupts/typed-interrupt-body.js +26 -0
  321. package/dist/chat/typed-interrupts/typed-interrupt-body.js.map +1 -0
  322. package/dist/chat/typed-interrupts/typed-interrupt-graphql.cjs +105 -0
  323. package/dist/chat/typed-interrupts/typed-interrupt-graphql.cjs.map +1 -0
  324. package/dist/chat/typed-interrupts/typed-interrupt-graphql.d.ts +29 -0
  325. package/dist/chat/typed-interrupts/typed-interrupt-graphql.js +105 -0
  326. package/dist/chat/typed-interrupts/typed-interrupt-graphql.js.map +1 -0
  327. package/dist/chat/typed-interrupts/typed-interrupt-notice.cjs +70 -0
  328. package/dist/chat/typed-interrupts/typed-interrupt-notice.cjs.map +1 -0
  329. package/dist/chat/typed-interrupts/typed-interrupt-notice.d.ts +45 -0
  330. package/dist/chat/typed-interrupts/typed-interrupt-notice.js +70 -0
  331. package/dist/chat/typed-interrupts/typed-interrupt-notice.js.map +1 -0
  332. package/dist/chat/typed-interrupts/typed-interrupt-panel.cjs +76 -0
  333. package/dist/chat/typed-interrupts/typed-interrupt-panel.cjs.map +1 -0
  334. package/dist/chat/typed-interrupts/typed-interrupt-panel.d.ts +11 -0
  335. package/dist/chat/typed-interrupts/typed-interrupt-panel.js +76 -0
  336. package/dist/chat/typed-interrupts/typed-interrupt-panel.js.map +1 -0
  337. package/dist/chat/typed-interrupts/typed-interrupt-types.d.ts +46 -0
  338. package/dist/chat/typed-interrupts/use-interrupt-draft.cjs +106 -0
  339. package/dist/chat/typed-interrupts/use-interrupt-draft.cjs.map +1 -0
  340. package/dist/chat/typed-interrupts/use-interrupt-draft.d.ts +29 -0
  341. package/dist/chat/typed-interrupts/use-interrupt-draft.js +106 -0
  342. package/dist/chat/typed-interrupts/use-interrupt-draft.js.map +1 -0
  343. package/dist/chat/typed-interrupts/use-statewire-typed-interrupt.cjs +231 -0
  344. package/dist/chat/typed-interrupts/use-statewire-typed-interrupt.cjs.map +1 -0
  345. package/dist/chat/typed-interrupts/use-statewire-typed-interrupt.d.ts +66 -0
  346. package/dist/chat/typed-interrupts/use-statewire-typed-interrupt.js +231 -0
  347. package/dist/chat/typed-interrupts/use-statewire-typed-interrupt.js.map +1 -0
  348. package/dist/chat-ui/composer/composer-named-agents.cjs +13 -0
  349. package/dist/chat-ui/composer/composer-named-agents.cjs.map +1 -0
  350. package/dist/chat-ui/composer/composer-named-agents.d.ts +20 -0
  351. package/dist/chat-ui/composer/composer-named-agents.js +13 -0
  352. package/dist/chat-ui/composer/composer-named-agents.js.map +1 -0
  353. package/dist/chat-ui/composer/slash-command-menu.cjs +143 -0
  354. package/dist/chat-ui/composer/slash-command-menu.cjs.map +1 -0
  355. package/dist/chat-ui/composer/slash-command-menu.d.ts +19 -0
  356. package/dist/chat-ui/composer/slash-command-menu.js +143 -0
  357. package/dist/chat-ui/composer/slash-command-menu.js.map +1 -0
  358. package/dist/chat-ui/composer/slash-commands-extension.cjs +51 -0
  359. package/dist/chat-ui/composer/slash-commands-extension.cjs.map +1 -0
  360. package/dist/chat-ui/composer/slash-commands-extension.d.ts +39 -0
  361. package/dist/chat-ui/composer/slash-commands-extension.js +51 -0
  362. package/dist/chat-ui/composer/slash-commands-extension.js.map +1 -0
  363. package/dist/chat-ui/composer/slash-commands.cjs +74 -0
  364. package/dist/chat-ui/composer/slash-commands.cjs.map +1 -0
  365. package/dist/chat-ui/composer/slash-commands.d.ts +82 -0
  366. package/dist/chat-ui/composer/slash-commands.js +74 -0
  367. package/dist/chat-ui/composer/slash-commands.js.map +1 -0
  368. package/dist/chat-ui/composer/tiptap-composer.cjs +135 -9
  369. package/dist/chat-ui/composer/tiptap-composer.cjs.map +1 -1
  370. package/dist/chat-ui/composer/tiptap-composer.d.ts +61 -2
  371. package/dist/chat-ui/composer/tiptap-composer.js +135 -9
  372. package/dist/chat-ui/composer/tiptap-composer.js.map +1 -1
  373. package/dist/chat-ui/index.cjs +3 -0
  374. package/dist/chat-ui/index.cjs.map +1 -1
  375. package/dist/chat-ui/index.d.ts +3 -2
  376. package/dist/chat-ui/index.js +3 -0
  377. package/dist/chat-ui/index.js.map +1 -1
  378. package/dist/chat-ui/mentions/mention-chip.cjs +1 -1
  379. package/dist/chat-ui/mentions/mention-chip.cjs.map +1 -1
  380. package/dist/chat-ui/mentions/mention-chip.js +2 -2
  381. package/dist/chat-ui/mentions/mention-chip.js.map +1 -1
  382. package/dist/chat-ui/mentions/mention-extension.cjs +8 -1
  383. package/dist/chat-ui/mentions/mention-extension.cjs.map +1 -1
  384. package/dist/chat-ui/mentions/mention-extension.js +8 -1
  385. package/dist/chat-ui/mentions/mention-extension.js.map +1 -1
  386. package/dist/chat-ui/mentions/suggestions/components/get-scope-name.cjs +1 -0
  387. package/dist/chat-ui/mentions/suggestions/components/get-scope-name.cjs.map +1 -1
  388. package/dist/chat-ui/mentions/suggestions/components/get-scope-name.js +1 -0
  389. package/dist/chat-ui/mentions/suggestions/components/get-scope-name.js.map +1 -1
  390. package/dist/chat-ui/mentions/suggestions/components/mention-icon.cjs +2 -0
  391. package/dist/chat-ui/mentions/suggestions/components/mention-icon.cjs.map +1 -1
  392. package/dist/chat-ui/mentions/suggestions/components/mention-icon.js +3 -1
  393. package/dist/chat-ui/mentions/suggestions/components/mention-icon.js.map +1 -1
  394. package/dist/chat-ui/mentions/suggestions/components/menu-item.cjs +1 -1
  395. package/dist/chat-ui/mentions/suggestions/components/menu-item.cjs.map +1 -1
  396. package/dist/chat-ui/mentions/suggestions/components/menu-item.js +1 -1
  397. package/dist/chat-ui/mentions/suggestions/components/menu-item.js.map +1 -1
  398. package/dist/chat-ui/mentions/suggestions/data/api-client.cjs +36 -0
  399. package/dist/chat-ui/mentions/suggestions/data/api-client.cjs.map +1 -1
  400. package/dist/chat-ui/mentions/suggestions/data/api-client.d.ts +42 -0
  401. package/dist/chat-ui/mentions/suggestions/data/api-client.js +36 -0
  402. package/dist/chat-ui/mentions/suggestions/data/api-client.js.map +1 -1
  403. package/dist/chat-ui/mentions/suggestions/data/sources/index.cjs +235 -19
  404. package/dist/chat-ui/mentions/suggestions/data/sources/index.cjs.map +1 -1
  405. package/dist/chat-ui/mentions/suggestions/data/sources/index.d.ts +88 -10
  406. package/dist/chat-ui/mentions/suggestions/data/sources/index.js +236 -20
  407. package/dist/chat-ui/mentions/suggestions/data/sources/index.js.map +1 -1
  408. package/dist/chat-ui/mentions/suggestions/data/types.cjs.map +1 -1
  409. package/dist/chat-ui/mentions/suggestions/data/types.d.ts +27 -1
  410. package/dist/chat-ui/mentions/suggestions/data/types.js.map +1 -1
  411. package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.cjs +56 -5
  412. package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.cjs.map +1 -1
  413. package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.d.ts +26 -6
  414. package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.js +57 -6
  415. package/dist/chat-ui/mentions/suggestions/data/use-mention-suggestions.js.map +1 -1
  416. package/dist/chat-ui/mentions/suggestions/mention-suggestions.extension.cjs +34 -17
  417. package/dist/chat-ui/mentions/suggestions/mention-suggestions.extension.cjs.map +1 -1
  418. package/dist/chat-ui/mentions/suggestions/mention-suggestions.extension.d.ts +19 -1
  419. package/dist/chat-ui/mentions/suggestions/mention-suggestions.extension.js +35 -18
  420. package/dist/chat-ui/mentions/suggestions/mention-suggestions.extension.js.map +1 -1
  421. package/dist/chat-ui/statewire.d.ts +1 -1
  422. package/dist/chat-ui/thread/statewire-history-edge.cjs +15 -0
  423. package/dist/chat-ui/thread/statewire-history-edge.cjs.map +1 -1
  424. package/dist/chat-ui/thread/statewire-history-edge.d.ts +4 -1
  425. package/dist/chat-ui/thread/statewire-history-edge.js +15 -0
  426. package/dist/chat-ui/thread/statewire-history-edge.js.map +1 -1
  427. package/dist/collab/client.cjs +17 -5
  428. package/dist/collab/client.cjs.map +1 -1
  429. package/dist/collab/client.d.ts +22 -7
  430. package/dist/collab/client.js +17 -5
  431. package/dist/collab/client.js.map +1 -1
  432. package/dist/composer/ComposerAttachedReferences.cjs +119 -0
  433. package/dist/composer/ComposerAttachedReferences.cjs.map +1 -0
  434. package/dist/composer/ComposerAttachedReferences.d.ts +26 -0
  435. package/dist/composer/ComposerAttachedReferences.js +119 -0
  436. package/dist/composer/ComposerAttachedReferences.js.map +1 -0
  437. package/dist/composer/ComposerNamedAgents.cjs +63 -0
  438. package/dist/composer/ComposerNamedAgents.cjs.map +1 -0
  439. package/dist/composer/ComposerNamedAgents.d.ts +16 -0
  440. package/dist/composer/ComposerNamedAgents.js +63 -0
  441. package/dist/composer/ComposerNamedAgents.js.map +1 -0
  442. package/dist/composer/attached-references.cjs +159 -0
  443. package/dist/composer/attached-references.cjs.map +1 -0
  444. package/dist/composer/attached-references.d.ts +86 -0
  445. package/dist/composer/attached-references.js +159 -0
  446. package/dist/composer/attached-references.js.map +1 -0
  447. package/dist/composer/build-composed-message.cjs +14 -7
  448. package/dist/composer/build-composed-message.cjs.map +1 -1
  449. package/dist/composer/build-composed-message.d.ts +6 -1
  450. package/dist/composer/build-composed-message.js +14 -7
  451. package/dist/composer/build-composed-message.js.map +1 -1
  452. package/dist/composer/composer-handoff.cjs +6 -2
  453. package/dist/composer/composer-handoff.cjs.map +1 -1
  454. package/dist/composer/composer-handoff.d.ts +7 -1
  455. package/dist/composer/composer-handoff.js +6 -2
  456. package/dist/composer/composer-handoff.js.map +1 -1
  457. package/dist/composer/folder-upload.cjs +149 -0
  458. package/dist/composer/folder-upload.cjs.map +1 -0
  459. package/dist/composer/folder-upload.d.ts +79 -0
  460. package/dist/composer/folder-upload.js +149 -0
  461. package/dist/composer/folder-upload.js.map +1 -0
  462. package/dist/composer/index.d.ts +1 -1
  463. package/dist/composer/useAttachToChat.cjs +35 -0
  464. package/dist/composer/useAttachToChat.cjs.map +1 -0
  465. package/dist/composer/useAttachToChat.d.ts +54 -0
  466. package/dist/composer/useAttachToChat.js +35 -0
  467. package/dist/composer/useAttachToChat.js.map +1 -0
  468. package/dist/composer/useAttachedReferencesComposerProps.cjs +19 -0
  469. package/dist/composer/useAttachedReferencesComposerProps.cjs.map +1 -0
  470. package/dist/composer/useAttachedReferencesComposerProps.d.ts +12 -0
  471. package/dist/composer/useAttachedReferencesComposerProps.js +19 -0
  472. package/dist/composer/useAttachedReferencesComposerProps.js.map +1 -0
  473. package/dist/composer/useFileUpload.cjs +95 -7
  474. package/dist/composer/useFileUpload.cjs.map +1 -1
  475. package/dist/composer/useFileUpload.d.ts +21 -2
  476. package/dist/composer/useFileUpload.js +95 -7
  477. package/dist/composer/useFileUpload.js.map +1 -1
  478. package/dist/data/athena-api-error.cjs +125 -0
  479. package/dist/data/athena-api-error.cjs.map +1 -0
  480. package/dist/data/athena-api-error.d.ts +96 -0
  481. package/dist/data/athena-api-error.js +125 -0
  482. package/dist/data/athena-api-error.js.map +1 -0
  483. package/dist/data/athena-data-client.cjs +106 -0
  484. package/dist/data/athena-data-client.cjs.map +1 -0
  485. package/dist/data/athena-data-client.d.ts +74 -0
  486. package/dist/data/athena-data-client.js +106 -0
  487. package/dist/data/athena-data-client.js.map +1 -0
  488. package/dist/data/athena-member.cjs +93 -0
  489. package/dist/data/athena-member.cjs.map +1 -0
  490. package/dist/data/athena-member.d.ts +125 -0
  491. package/dist/data/athena-member.js +93 -0
  492. package/dist/data/athena-member.js.map +1 -0
  493. package/dist/data/athena-request.cjs +458 -0
  494. package/dist/data/athena-request.cjs.map +1 -0
  495. package/dist/data/athena-request.d.ts +120 -0
  496. package/dist/data/athena-request.js +458 -0
  497. package/dist/data/athena-request.js.map +1 -0
  498. package/dist/data/use-athena-fetch.cjs +14 -0
  499. package/dist/data/use-athena-fetch.cjs.map +1 -0
  500. package/dist/data/use-athena-fetch.d.ts +19 -0
  501. package/dist/data/use-athena-fetch.js +14 -0
  502. package/dist/data/use-athena-fetch.js.map +1 -0
  503. package/dist/data/use-athena-graphql.cjs +66 -0
  504. package/dist/data/use-athena-graphql.cjs.map +1 -0
  505. package/dist/data/use-athena-graphql.d.ts +56 -0
  506. package/dist/data/use-athena-graphql.js +66 -0
  507. package/dist/data/use-athena-graphql.js.map +1 -0
  508. package/dist/data/use-athena-rest.cjs +33 -0
  509. package/dist/data/use-athena-rest.cjs.map +1 -0
  510. package/dist/data/use-athena-rest.d.ts +21 -0
  511. package/dist/data/use-athena-rest.js +33 -0
  512. package/dist/data/use-athena-rest.js.map +1 -0
  513. package/dist/data/use-semantic-query.cjs +44 -0
  514. package/dist/data/use-semantic-query.cjs.map +1 -0
  515. package/dist/data/use-semantic-query.d.ts +92 -0
  516. package/dist/data/use-semantic-query.js +44 -0
  517. package/dist/data/use-semantic-query.js.map +1 -0
  518. package/dist/diagnostics/athena-diagnostics.cjs.map +1 -1
  519. package/dist/diagnostics/athena-diagnostics.d.ts +5 -1
  520. package/dist/diagnostics/athena-diagnostics.js.map +1 -1
  521. package/dist/diagnostics/errors.cjs +7 -0
  522. package/dist/diagnostics/errors.cjs.map +1 -1
  523. package/dist/diagnostics/errors.d.ts +7 -0
  524. package/dist/diagnostics/errors.js +7 -0
  525. package/dist/diagnostics/errors.js.map +1 -1
  526. package/dist/index.cjs +155 -11
  527. package/dist/index.cjs.map +1 -1
  528. package/dist/index.d.ts +72 -13
  529. package/dist/index.js +148 -4
  530. package/dist/index.js.map +1 -1
  531. package/dist/keryx-http/src/initial-sync.cjs +64 -16
  532. package/dist/keryx-http/src/initial-sync.cjs.map +1 -1
  533. package/dist/keryx-http/src/initial-sync.d.ts +31 -1
  534. package/dist/keryx-http/src/initial-sync.js +64 -16
  535. package/dist/keryx-http/src/initial-sync.js.map +1 -1
  536. package/dist/keryx-http/src/own-awareness.cjs +20 -0
  537. package/dist/keryx-http/src/own-awareness.cjs.map +1 -0
  538. package/dist/keryx-http/src/own-awareness.d.ts +50 -0
  539. package/dist/keryx-http/src/own-awareness.js +20 -0
  540. package/dist/keryx-http/src/own-awareness.js.map +1 -0
  541. package/dist/keryx-http/src/update-attributions.cjs +26 -1
  542. package/dist/keryx-http/src/update-attributions.cjs.map +1 -1
  543. package/dist/keryx-http/src/update-attributions.d.ts +10 -1
  544. package/dist/keryx-http/src/update-attributions.js +26 -1
  545. package/dist/keryx-http/src/update-attributions.js.map +1 -1
  546. package/dist/offline/chat-outbox.cjs +262 -26
  547. package/dist/offline/chat-outbox.cjs.map +1 -1
  548. package/dist/offline/chat-outbox.d.ts +90 -12
  549. package/dist/offline/chat-outbox.js +263 -27
  550. package/dist/offline/chat-outbox.js.map +1 -1
  551. package/dist/provider/AthenaProvider.cjs +56 -19
  552. package/dist/provider/AthenaProvider.cjs.map +1 -1
  553. package/dist/provider/AthenaProvider.d.ts +24 -8
  554. package/dist/provider/AthenaProvider.js +57 -20
  555. package/dist/provider/AthenaProvider.js.map +1 -1
  556. package/dist/react/package.json.cjs +1 -1
  557. package/dist/react/package.json.js +1 -1
  558. package/dist/references/src/anchors/types.cjs +5 -0
  559. package/dist/references/src/anchors/types.cjs.map +1 -1
  560. package/dist/references/src/anchors/types.js +5 -0
  561. package/dist/references/src/anchors/types.js.map +1 -1
  562. package/dist/references/src/attachable.cjs +149 -0
  563. package/dist/references/src/attachable.cjs.map +1 -0
  564. package/dist/references/src/attachable.d.ts +87 -0
  565. package/dist/references/src/attachable.js +149 -0
  566. package/dist/references/src/attachable.js.map +1 -0
  567. package/dist/runtime/StatewirePlanModeLaneSync.cjs +93 -0
  568. package/dist/runtime/StatewirePlanModeLaneSync.cjs.map +1 -0
  569. package/dist/runtime/StatewirePlanModeLaneSync.d.ts +34 -0
  570. package/dist/runtime/StatewirePlanModeLaneSync.js +93 -0
  571. package/dist/runtime/StatewirePlanModeLaneSync.js.map +1 -0
  572. package/dist/runtime/StatewireThreadConfigLaneSync.cjs +2 -0
  573. package/dist/runtime/StatewireThreadConfigLaneSync.cjs.map +1 -1
  574. package/dist/runtime/StatewireThreadConfigLaneSync.d.ts +4 -0
  575. package/dist/runtime/StatewireThreadConfigLaneSync.js +2 -0
  576. package/dist/runtime/StatewireThreadConfigLaneSync.js.map +1 -1
  577. package/dist/runtime/statewire-plan-mode.cjs +71 -0
  578. package/dist/runtime/statewire-plan-mode.cjs.map +1 -0
  579. package/dist/runtime/statewire-plan-mode.d.ts +88 -0
  580. package/dist/runtime/statewire-plan-mode.js +71 -0
  581. package/dist/runtime/statewire-plan-mode.js.map +1 -0
  582. package/dist/runtime/statewire-run-config.cjs +3 -1
  583. package/dist/runtime/statewire-run-config.cjs.map +1 -1
  584. package/dist/runtime/statewire-run-config.d.ts +7 -0
  585. package/dist/runtime/statewire-run-config.js +3 -1
  586. package/dist/runtime/statewire-run-config.js.map +1 -1
  587. package/dist/runtime/statewire-session-key.cjs +11 -5
  588. package/dist/runtime/statewire-session-key.cjs.map +1 -1
  589. package/dist/runtime/statewire-session-key.d.ts +22 -10
  590. package/dist/runtime/statewire-session-key.js +11 -5
  591. package/dist/runtime/statewire-session-key.js.map +1 -1
  592. package/dist/runtime/useAthenaStatewireRuntime.cjs +65 -8
  593. package/dist/runtime/useAthenaStatewireRuntime.cjs.map +1 -1
  594. package/dist/runtime/useAthenaStatewireRuntime.d.ts +26 -10
  595. package/dist/runtime/useAthenaStatewireRuntime.js +67 -10
  596. package/dist/runtime/useAthenaStatewireRuntime.js.map +1 -1
  597. package/dist/search/useAthenaAssets.cjs +394 -0
  598. package/dist/search/useAthenaAssets.cjs.map +1 -0
  599. package/dist/search/useAthenaAssets.d.ts +186 -0
  600. package/dist/search/useAthenaAssets.js +394 -0
  601. package/dist/search/useAthenaAssets.js.map +1 -0
  602. package/dist/sheet-range/index.cjs +4 -0
  603. package/dist/sheet-range/index.cjs.map +1 -1
  604. package/dist/sheet-range/index.d.ts +4 -2
  605. package/dist/sheet-range/index.js +4 -0
  606. package/dist/sheet-range/index.js.map +1 -1
  607. package/dist/sheet-range/query-range.cjs +102 -0
  608. package/dist/sheet-range/query-range.cjs.map +1 -0
  609. package/dist/sheet-range/query-range.d.ts +46 -0
  610. package/dist/sheet-range/query-range.js +102 -0
  611. package/dist/sheet-range/query-range.js.map +1 -0
  612. package/dist/styles.css +1 -1
  613. package/dist/subagents/index.cjs +49 -0
  614. package/dist/subagents/index.cjs.map +1 -0
  615. package/dist/subagents/index.d.ts +16 -0
  616. package/dist/subagents/index.js +49 -0
  617. package/dist/subagents/index.js.map +1 -0
  618. package/dist/subagents/lane-follow.cjs +19 -0
  619. package/dist/subagents/lane-follow.cjs.map +1 -0
  620. package/dist/subagents/lane-follow.d.ts +9 -0
  621. package/dist/subagents/lane-follow.js +19 -0
  622. package/dist/subagents/lane-follow.js.map +1 -0
  623. package/dist/subagents/lane-model.cjs +178 -0
  624. package/dist/subagents/lane-model.cjs.map +1 -0
  625. package/dist/subagents/lane-model.d.ts +140 -0
  626. package/dist/subagents/lane-model.js +178 -0
  627. package/dist/subagents/lane-model.js.map +1 -0
  628. package/dist/subagents/lane-parts.cjs +517 -0
  629. package/dist/subagents/lane-parts.cjs.map +1 -0
  630. package/dist/subagents/lane-parts.d.ts +130 -0
  631. package/dist/subagents/lane-parts.js +517 -0
  632. package/dist/subagents/lane-parts.js.map +1 -0
  633. package/dist/subagents/subagent-lane-group.cjs +215 -0
  634. package/dist/subagents/subagent-lane-group.cjs.map +1 -0
  635. package/dist/subagents/subagent-lane-group.d.ts +67 -0
  636. package/dist/subagents/subagent-lane-group.js +215 -0
  637. package/dist/subagents/subagent-lane-group.js.map +1 -0
  638. package/dist/subagents/subagent-transcript-drawer.cjs +431 -0
  639. package/dist/subagents/subagent-transcript-drawer.cjs.map +1 -0
  640. package/dist/subagents/subagent-transcript-drawer.d.ts +78 -0
  641. package/dist/subagents/subagent-transcript-drawer.js +431 -0
  642. package/dist/subagents/subagent-transcript-drawer.js.map +1 -0
  643. package/dist/subagents/task-subagent-group.cjs +115 -0
  644. package/dist/subagents/task-subagent-group.cjs.map +1 -0
  645. package/dist/subagents/task-subagent-group.d.ts +36 -0
  646. package/dist/subagents/task-subagent-group.js +115 -0
  647. package/dist/subagents/task-subagent-group.js.map +1 -0
  648. package/dist/subagents/use-omitted-images-in-view.cjs +68 -0
  649. package/dist/subagents/use-omitted-images-in-view.cjs.map +1 -0
  650. package/dist/subagents/use-omitted-images-in-view.d.ts +21 -0
  651. package/dist/subagents/use-omitted-images-in-view.js +68 -0
  652. package/dist/subagents/use-omitted-images-in-view.js.map +1 -0
  653. package/dist/threads/Inbox.cjs +2 -2
  654. package/dist/threads/Inbox.cjs.map +1 -1
  655. package/dist/threads/SessionList.cjs +6 -6
  656. package/dist/threads/SessionList.cjs.map +1 -1
  657. package/dist/threads/SessionsPage.cjs +13 -7
  658. package/dist/threads/SessionsPage.cjs.map +1 -1
  659. package/dist/threads/SessionsPage.d.ts +10 -1
  660. package/dist/threads/SessionsPage.js +9 -3
  661. package/dist/threads/SessionsPage.js.map +1 -1
  662. package/dist/threads/session-list-model.cjs.map +1 -1
  663. package/dist/threads/session-list-model.d.ts +2 -1
  664. package/dist/threads/session-list-model.js.map +1 -1
  665. package/dist/threads/session-row-parts.cjs +3 -3
  666. package/dist/threads/session-row-parts.cjs.map +1 -1
  667. package/dist/threads/sessions-page-model.cjs +13 -5
  668. package/dist/threads/sessions-page-model.cjs.map +1 -1
  669. package/dist/threads/sessions-page-model.d.ts +7 -0
  670. package/dist/threads/sessions-page-model.js +11 -3
  671. package/dist/threads/sessions-page-model.js.map +1 -1
  672. package/dist/threads/sessions-page-storage.cjs +8 -8
  673. package/dist/threads/sessions-page-storage.cjs.map +1 -1
  674. package/dist/threads/sessions-page-storage.d.ts +5 -1
  675. package/dist/threads/sessions-page-storage.js +8 -8
  676. package/dist/threads/sessions-page-storage.js.map +1 -1
  677. package/dist/threads/use-athena-sessions.cjs +1 -0
  678. package/dist/threads/use-athena-sessions.cjs.map +1 -1
  679. package/dist/threads/use-athena-sessions.d.ts +7 -0
  680. package/dist/threads/use-athena-sessions.js +1 -0
  681. package/dist/threads/use-athena-sessions.js.map +1 -1
  682. package/dist/threads/use-athena-thread-agent.cjs +31 -0
  683. package/dist/threads/use-athena-thread-agent.cjs.map +1 -0
  684. package/dist/threads/use-athena-thread-agent.d.ts +38 -0
  685. package/dist/threads/use-athena-thread-agent.js +31 -0
  686. package/dist/threads/use-athena-thread-agent.js.map +1 -0
  687. package/dist/threads/use-athena-thread-plan-mode.cjs +18 -0
  688. package/dist/threads/use-athena-thread-plan-mode.cjs.map +1 -0
  689. package/dist/threads/use-athena-thread-plan-mode.d.ts +18 -0
  690. package/dist/threads/use-athena-thread-plan-mode.js +18 -0
  691. package/dist/threads/use-athena-thread-plan-mode.js.map +1 -0
  692. package/dist/threads/use-rest-conversation-history.d.ts +1 -0
  693. package/dist/tools/agent-creations.cjs +97 -0
  694. package/dist/tools/agent-creations.cjs.map +1 -0
  695. package/dist/tools/agent-creations.d.ts +38 -0
  696. package/dist/tools/agent-creations.js +97 -0
  697. package/dist/tools/agent-creations.js.map +1 -0
  698. package/dist/tools/agent-highlights.cjs +100 -0
  699. package/dist/tools/agent-highlights.cjs.map +1 -0
  700. package/dist/tools/agent-highlights.d.ts +57 -0
  701. package/dist/tools/agent-highlights.js +100 -0
  702. package/dist/tools/agent-highlights.js.map +1 -0
  703. package/dist/tools/append-document-tool-ui.cjs +1 -0
  704. package/dist/tools/append-document-tool-ui.cjs.map +1 -1
  705. package/dist/tools/append-document-tool-ui.d.ts +7 -0
  706. package/dist/tools/append-document-tool-ui.js +2 -1
  707. package/dist/tools/append-document-tool-ui.js.map +1 -1
  708. package/dist/tools/auto-open-tools.cjs +144 -71
  709. package/dist/tools/auto-open-tools.cjs.map +1 -1
  710. package/dist/tools/auto-open-tools.d.ts +131 -1
  711. package/dist/tools/auto-open-tools.js +145 -72
  712. package/dist/tools/auto-open-tools.js.map +1 -1
  713. package/dist/tools/browser-tool-uis.cjs +594 -0
  714. package/dist/tools/browser-tool-uis.cjs.map +1 -0
  715. package/dist/tools/browser-tool-uis.d.ts +8 -0
  716. package/dist/tools/browser-tool-uis.js +594 -0
  717. package/dist/tools/browser-tool-uis.js.map +1 -0
  718. package/dist/tools/computer-asset-tool-uis.cjs +313 -0
  719. package/dist/tools/computer-asset-tool-uis.cjs.map +1 -0
  720. package/dist/tools/computer-asset-tool-uis.d.ts +5 -0
  721. package/dist/tools/computer-asset-tool-uis.js +313 -0
  722. package/dist/tools/computer-asset-tool-uis.js.map +1 -0
  723. package/dist/tools/document-edit-tool-uis.cjs +218 -0
  724. package/dist/tools/document-edit-tool-uis.cjs.map +1 -0
  725. package/dist/tools/document-edit-tool-uis.d.ts +40 -0
  726. package/dist/tools/document-edit-tool-uis.js +218 -0
  727. package/dist/tools/document-edit-tool-uis.js.map +1 -0
  728. package/dist/tools/drive-tool-uis.cjs +425 -0
  729. package/dist/tools/drive-tool-uis.cjs.map +1 -0
  730. package/dist/tools/drive-tool-uis.d.ts +120 -0
  731. package/dist/tools/drive-tool-uis.js +425 -0
  732. package/dist/tools/drive-tool-uis.js.map +1 -0
  733. package/dist/tools/email-calendar-tool-uis.cjs +789 -0
  734. package/dist/tools/email-calendar-tool-uis.cjs.map +1 -0
  735. package/dist/tools/email-calendar-tool-uis.d.ts +129 -0
  736. package/dist/tools/email-calendar-tool-uis.js +789 -0
  737. package/dist/tools/email-calendar-tool-uis.js.map +1 -0
  738. package/dist/tools/ontology-tool-uis.cjs +83 -0
  739. package/dist/tools/ontology-tool-uis.cjs.map +1 -0
  740. package/dist/tools/ontology-tool-uis.d.ts +9 -0
  741. package/dist/tools/ontology-tool-uis.js +83 -0
  742. package/dist/tools/ontology-tool-uis.js.map +1 -0
  743. package/dist/tools/orchestration-tool-uis.cjs +586 -0
  744. package/dist/tools/orchestration-tool-uis.cjs.map +1 -0
  745. package/dist/tools/orchestration-tool-uis.d.ts +141 -0
  746. package/dist/tools/orchestration-tool-uis.js +586 -0
  747. package/dist/tools/orchestration-tool-uis.js.map +1 -0
  748. package/dist/tools/presentation-edit-tool-uis.cjs +516 -0
  749. package/dist/tools/presentation-edit-tool-uis.cjs.map +1 -0
  750. package/dist/tools/presentation-edit-tool-uis.d.ts +73 -0
  751. package/dist/tools/presentation-edit-tool-uis.js +516 -0
  752. package/dist/tools/presentation-edit-tool-uis.js.map +1 -0
  753. package/dist/tools/project-tool-uis.cjs +213 -0
  754. package/dist/tools/project-tool-uis.cjs.map +1 -0
  755. package/dist/tools/project-tool-uis.d.ts +14 -0
  756. package/dist/tools/project-tool-uis.js +213 -0
  757. package/dist/tools/project-tool-uis.js.map +1 -0
  758. package/dist/tools/sandbox-tool-uis.cjs +491 -0
  759. package/dist/tools/sandbox-tool-uis.cjs.map +1 -0
  760. package/dist/tools/sandbox-tool-uis.d.ts +116 -0
  761. package/dist/tools/sandbox-tool-uis.js +491 -0
  762. package/dist/tools/sandbox-tool-uis.js.map +1 -0
  763. package/dist/tools/sheet-query-tool-ui.cjs +138 -0
  764. package/dist/tools/sheet-query-tool-ui.cjs.map +1 -0
  765. package/dist/tools/sheet-query-tool-ui.d.ts +15 -0
  766. package/dist/tools/sheet-query-tool-ui.js +138 -0
  767. package/dist/tools/sheet-query-tool-ui.js.map +1 -0
  768. package/dist/tools/studio-screenshot-tool-uis.cjs +262 -0
  769. package/dist/tools/studio-screenshot-tool-uis.cjs.map +1 -0
  770. package/dist/tools/studio-screenshot-tool-uis.d.ts +52 -0
  771. package/dist/tools/studio-screenshot-tool-uis.js +262 -0
  772. package/dist/tools/studio-screenshot-tool-uis.js.map +1 -0
  773. package/dist/tools/subagent-task-tool-ui.cjs +24 -475
  774. package/dist/tools/subagent-task-tool-ui.cjs.map +1 -1
  775. package/dist/tools/subagent-task-tool-ui.d.ts +19 -103
  776. package/dist/tools/subagent-task-tool-ui.js +28 -479
  777. package/dist/tools/subagent-task-tool-ui.js.map +1 -1
  778. package/dist/tools/tool-summary.cjs +36 -0
  779. package/dist/tools/tool-summary.cjs.map +1 -1
  780. package/dist/tools/tool-summary.js +36 -0
  781. package/dist/tools/tool-summary.js.map +1 -1
  782. package/dist/tools/tool-uis.cjs +181 -53
  783. package/dist/tools/tool-uis.cjs.map +1 -1
  784. package/dist/tools/tool-uis.d.ts +40 -0
  785. package/dist/tools/tool-uis.js +183 -55
  786. package/dist/tools/tool-uis.js.map +1 -1
  787. package/dist/typed-interrupts/index.cjs +15 -0
  788. package/dist/typed-interrupts/index.cjs.map +1 -0
  789. package/dist/typed-interrupts/index.d.ts +20 -0
  790. package/dist/typed-interrupts/index.js +15 -0
  791. package/dist/typed-interrupts/index.js.map +1 -0
  792. package/dist/workbench/session-workbench-panes.cjs +6 -6
  793. package/dist/workbench/session-workbench-panes.cjs.map +1 -1
  794. package/package.json +28 -6
  795. package/dist/agent-runtime/src/chat-outbox-store.cjs +0 -510
  796. package/dist/agent-runtime/src/chat-outbox-store.cjs.map +0 -1
  797. package/dist/agent-runtime/src/chat-outbox-store.d.ts +0 -210
  798. package/dist/agent-runtime/src/chat-outbox-store.js +0 -510
  799. package/dist/agent-runtime/src/chat-outbox-store.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"studio-screenshot-tool-uis.js","sources":["../../src/tools/studio-screenshot-tool-uis.tsx"],"sourcesContent":["\"use client\";\n\n/**\n * Screenshots the studio tools take of what they edit, as Athena on the web\n * shows them: a workbook's sheet (`capture_sheet_screenshot`) and a Word\n * document's page (`capture_page_screenshot`), each with what was captured\n * (\"Screenshot captured for \"Q1 Plan\" (A1:F40)\"), the picture, the asset it\n * was saved as, and a button that opens the asset.\n *\n * A screenshot's result carries a presigned URL that expires and the image's\n * storage key, which does not. The picture is shown from a fresh URL agora\n * signs for that key (`POST /api/asset/screenshot-presigned-url`, which signs\n * only objects it resolves and the caller may read), read once per key with\n * TanStack Query, and from the result's own URL meanwhile or when that read\n * fails, so a session reopened later still shows its screenshots. A card\n * rendered outside `AthenaProvider` has no backend to ask and shows the\n * result's own URL.\n */\nimport type { ToolCallMessagePartComponent } from \"@assistant-ui/react\";\nimport { QueryClientProvider, useQuery } from \"@tanstack/react-query\";\nimport { CameraIcon, ExternalLinkIcon, FileTextIcon } from \"lucide-react\";\nimport { type ReactNode, memo, useContext, useId, useMemo } from \"react\";\nimport { type AssetPanelState, useAssetPanelStore } from \"../assets/asset-panel-store\";\nimport { useAthenaQueryClient, useAthenaQueryIdentity } from \"../lib/use-athena-rest-query\";\nimport { AthenaContext } from \"../provider/AthenaContext\";\nimport { sendWithCredentialRenewal } from \"../runtime/credential-renewal\";\nimport { ToolCard, type ToolStatus, truncate } from \"./primitives\";\n\n// ─── Reading a screenshot result ─────────────────────────────────────\n\nfunction record(value: unknown): Record<string, unknown> | undefined {\n return value && typeof value === \"object\" && !Array.isArray(value)\n ? (value as Record<string, unknown>)\n : undefined;\n}\n\n/**\n * A result string's content items: one JSON value, or the backend's\n * newline-delimited serialization of a multi-block list (an image block and a\n * note, `{…}\\n{…}`), which a plain `JSON.parse` rejects. A bare string carries\n * no image source.\n */\nfunction parseResultString(result: string): unknown[] {\n try {\n const parsed: unknown = JSON.parse(result);\n return typeof parsed === \"string\" ? [] : [parsed];\n } catch {\n // Newline-delimited below.\n }\n const items: unknown[] = [];\n for (const line of result.split(\"\\n\")) {\n const trimmed = line.trim();\n if (!trimmed) continue;\n try {\n const parsed: unknown = JSON.parse(trimmed);\n if (typeof parsed !== \"string\") items.push(parsed);\n } catch {\n // A plain-text line holds nothing to read.\n }\n }\n return items;\n}\n\n/** Every object a result holds, depth first, through JSON strings and `result` wrappers. */\nfunction resultObjects(value: unknown): Record<string, unknown>[] {\n const found: Record<string, unknown>[] = [];\n const stack: unknown[] = [value];\n let budget = 2_000;\n while (stack.length > 0 && budget > 0) {\n budget -= 1;\n const item = stack.pop();\n if (typeof item === \"string\") {\n stack.push(...parseResultString(item));\n continue;\n }\n if (Array.isArray(item)) {\n for (let index = item.length - 1; index >= 0; index -= 1) stack.push(item[index]);\n continue;\n }\n const fields = record(item);\n if (!fields) continue;\n found.push(fields);\n for (const nested of Object.values(fields)) {\n if (nested && typeof nested === \"object\") stack.push(nested);\n else if (typeof nested === \"string\" && (nested.startsWith(\"{\") || nested.startsWith(\"[\"))) stack.push(nested);\n }\n }\n return found;\n}\n\n/** What a screenshot result says about its picture and what it captured. */\nexport interface StudioScreenshot {\n /** The result's own presigned URL, which expires. */\n presignedUrl: string | null;\n /** The image's storage key (`source.data` of an `s3_key` image source), which does not. */\n s3Key: string | null;\n /** The note the tool returned beside the picture. */\n text: string | null;\n sheetId: number | null;\n sheetName: string | null;\n range: string | null;\n pageCount: number | null;\n /** The asset the screenshot was saved as (`save_as_asset`). */\n savedAssetId: string | null;\n}\n\n/** Reads a screenshot tool's result (and artifact): the first value of each field found. */\nexport function readStudioScreenshot(...sources: unknown[]): StudioScreenshot {\n const shot: StudioScreenshot = {\n presignedUrl: null,\n s3Key: null,\n text: null,\n sheetId: null,\n sheetName: null,\n range: null,\n pageCount: null,\n savedAssetId: null,\n };\n for (const source of sources) {\n for (const fields of resultObjects(source)) {\n const imageSource = fields.type === \"image\" ? record(fields.source) : undefined;\n if (imageSource) {\n if (shot.presignedUrl === null && typeof imageSource.presigned_url === \"string\") {\n shot.presignedUrl = imageSource.presigned_url;\n }\n if (shot.s3Key === null && imageSource.type === \"s3_key\" && typeof imageSource.data === \"string\") {\n shot.s3Key = imageSource.data;\n }\n }\n if (shot.presignedUrl === null && typeof fields.presigned_url === \"string\") shot.presignedUrl = fields.presigned_url;\n if (shot.text === null && fields.type === \"text\" && typeof fields.text === \"string\") shot.text = fields.text;\n if (shot.sheetId === null && typeof fields.sheet_id === \"number\") shot.sheetId = fields.sheet_id;\n if (shot.sheetName === null && typeof fields.sheet_name === \"string\") shot.sheetName = fields.sheet_name;\n if (shot.range === null && typeof fields.range === \"string\") shot.range = fields.range;\n if (shot.pageCount === null && typeof fields.page_count === \"number\") shot.pageCount = fields.page_count;\n if (shot.savedAssetId === null && typeof fields.saved_asset_id === \"string\" && fields.saved_asset_id !== \"\") {\n shot.savedAssetId = fields.saved_asset_id;\n }\n }\n }\n return shot;\n}\n\n// ─── A fresh URL for the picture ─────────────────────────────────────\n\n/** How long a URL agora signed for a key is used before it is asked again. */\nconst FRESH_URL_STALE_MS = 10 * 60 * 1000;\n\nfunction useFreshPresignedUrlQuery({\n s3Key,\n fallbackUrl,\n}: {\n s3Key: string | null;\n fallbackUrl: string | null;\n}): string | null {\n const config = useContext(AthenaContext);\n const baseUrl = config ? config.backendUrl.replace(/\\/api\\/assistant-ui\\/?$/, \"\") : null;\n // A signed URL is a bearer grant to the picture, so no card is handed one\n // another read: the key carries the signed-in principal and a fingerprint\n // of the credential (never the credential itself) and this card's own id,\n // and the entry goes when the card unmounts. Each card asks agora, which\n // runs the read gate for whoever asks, after an account switch too, and\n // behind a host `getToken` whose account the key cannot see.\n const identity = useAthenaQueryIdentity({\n apiKey: config?.apiKey,\n token: config?.token,\n getToken: config?.getToken,\n });\n const reader = useId();\n const query = useQuery({\n queryKey: [\"athena\", \"screenshot-presigned-url\", baseUrl, ...identity, s3Key, reader],\n enabled: s3Key !== null && config !== null,\n staleTime: FRESH_URL_STALE_MS,\n gcTime: 0,\n refetchOnWindowFocus: false,\n retry: false,\n queryFn: async ({ signal }): Promise<string | null> => {\n if (!config || baseUrl === null) return null;\n const response = await sendWithCredentialRenewal(config, (headers) =>\n fetch(`${baseUrl}/api/asset/screenshot-presigned-url`, {\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\", ...headers },\n body: JSON.stringify({ screenshot_key: s3Key }),\n signal,\n }),\n );\n if (!response.ok) return null;\n const data = (await response.json()) as { presigned_url?: unknown };\n return typeof data.presigned_url === \"string\" ? data.presigned_url : null;\n },\n });\n return query.data ?? fallbackUrl;\n}\n\n/**\n * The URL to show a screenshot from: one agora signs afresh for its storage\n * key, else the result's own. Needs a `QueryClient` in context: wrap the card\n * in `ScreenshotQueryScope`, which brings one when the host has none.\n */\nexport function useScreenshotUrl({\n s3Key,\n fallbackUrl,\n}: {\n s3Key: string | null;\n fallbackUrl: string | null;\n}): string | null {\n return useFreshPresignedUrlQuery({ s3Key, fallbackUrl });\n}\n\n/** The host's `QueryClient` when one is in context, else one of the card's own. */\nexport function ScreenshotQueryScope({ children }: { children: ReactNode }) {\n const queryClient = useAthenaQueryClient();\n return <QueryClientProvider client={queryClient}>{children}</QueryClientProvider>;\n}\n\n// ─── The cards ───────────────────────────────────────────────────────\n\ntype OpenAssetOptions = Parameters<AssetPanelState[\"openAsset\"]>[1];\n\ninterface StudioScreenshotSpec {\n /** What was captured, in the card's words (\"“Q1 Plan”\", \"page 2 of 9\"). */\n label: (params: { args: Record<string, unknown> | undefined; shot: StudioScreenshot }) => string;\n /** The completed title's tail after the label (\"(A1:F40)\"); empty for none. */\n detail?: (params: { args: Record<string, unknown> | undefined; shot: StudioScreenshot }) => string;\n icon: typeof CameraIcon;\n /** The picture's box: a page keeps a page's proportions while it loads. */\n imageClassName: string;\n /** What a failed capture says under its title. */\n failureNote: string;\n /** How the asset opens, and the button's words. */\n open: (params: { args: Record<string, unknown> | undefined; shot: StudioScreenshot }) => {\n label: string;\n options: OpenAssetOptions;\n };\n}\n\nfunction createStudioScreenshotToolUI(spec: StudioScreenshotSpec): ToolCallMessagePartComponent {\n const Card: ToolCallMessagePartComponent = ({ toolName, args, result, artifact, status }) => {\n const typedArgs = args as Record<string, unknown> | undefined;\n const shot = useMemo(() => readStudioScreenshot(result, artifact), [result, artifact]);\n const imageUrl = useScreenshotUrl({ s3Key: shot.s3Key, fallbackUrl: shot.presignedUrl });\n const openAsset = useAssetPanelStore((s) => s.openAsset);\n const assetId = typeof typedArgs?.asset_id === \"string\" && typedArgs.asset_id !== \"\" ? typedArgs.asset_id : null;\n const label = spec.label({ args: typedArgs, shot });\n const detail = spec.detail?.({ args: typedArgs, shot }) ?? \"\";\n const isRunning = status?.type === \"running\";\n const isComplete = status?.type === \"complete\" || !status;\n const hasScreenshot = isComplete && (shot.presignedUrl !== null || shot.s3Key !== null);\n const failed = isComplete && !hasScreenshot;\n const errorMsg = status?.type === \"incomplete\" ? String(status.error ?? status.reason ?? \"Capture failed\") : null;\n const title = isRunning\n ? `Capturing screenshot of ${label}...`\n : failed || errorMsg\n ? `Failed to capture screenshot of ${label}`\n : `Screenshot captured for ${label}${detail ? ` ${detail}` : \"\"}`;\n const open = assetId ? spec.open({ args: typedArgs, shot }) : null;\n\n return (\n <ToolCard\n icon={spec.icon}\n status={(failed ? \"incomplete\" : (status?.type ?? \"complete\")) as ToolStatus}\n title={truncate(title, 90)}\n toolName={toolName}\n args={typedArgs}\n result={result}\n error={errorMsg ?? (failed ? spec.failureNote : null)}\n >\n {hasScreenshot && imageUrl ? (\n <div data-slot=\"studio-screenshot\" className=\"border-t border-border/40 p-3\">\n <div className=\"overflow-hidden rounded-lg border border-border/50 bg-muted/20\">\n <img\n src={imageUrl}\n alt={`Screenshot of ${label}`}\n className={spec.imageClassName}\n loading=\"lazy\"\n />\n </div>\n {shot.savedAssetId ? (\n <div className=\"mt-2 flex items-center gap-2 text-[11px] text-muted-foreground\">\n <span>Saved as asset:</span>\n <button\n type=\"button\"\n onClick={() => openAsset(shot.savedAssetId as string)}\n className=\"rounded font-mono text-foreground/80 hover:underline\"\n >\n {truncate(shot.savedAssetId, 28)}\n </button>\n </div>\n ) : null}\n </div>\n ) : null}\n {hasScreenshot && open && assetId ? (\n <div className=\"flex flex-wrap gap-2 border-t border-border/40 px-4 py-2\">\n <button\n type=\"button\"\n onClick={() => openAsset(assetId, open.options)}\n className=\"flex items-center gap-1.5 rounded-md border border-border/60 px-3 py-1.5 text-xs font-medium text-muted-foreground transition-colors hover:bg-muted/50 hover:text-foreground\"\n >\n <ExternalLinkIcon className=\"size-3\" />\n {open.label}\n </button>\n </div>\n ) : null}\n </ToolCard>\n );\n };\n const Scoped: ToolCallMessagePartComponent = (props) => (\n <ScreenshotQueryScope>\n <Card {...props} />\n </ScreenshotQueryScope>\n );\n return Scoped;\n}\n\n/** \"“Q1 Plan”\", \"sheet 3\", or \"active sheet\", as Athena on the web names the captured sheet. */\nfunction sheetLabel({ args, shot }: { args: Record<string, unknown> | undefined; shot: StudioScreenshot }): string {\n const name = shot.sheetName ?? (typeof args?.sheet_name === \"string\" ? args.sheet_name : null);\n const id = shot.sheetId ?? (typeof args?.sheet_id === \"number\" ? args.sheet_id : null);\n if (name) return `\"${name}\"`;\n if (id !== null) return `sheet ${id}`;\n return \"active sheet\";\n}\n\nfunction sheetRange({ args, shot }: { args: Record<string, unknown> | undefined; shot: StudioScreenshot }): string | null {\n return shot.range ?? (typeof args?.cell_range === \"string\" ? args.cell_range : null);\n}\n\nconst CaptureSheetScreenshotToolUIImpl = createStudioScreenshotToolUI({\n icon: CameraIcon,\n label: sheetLabel,\n detail: (params) => {\n const range = sheetRange(params);\n return range ? `(${range})` : \"\";\n },\n imageClassName: \"w-full object-contain\",\n failureNote: \"The screenshot could not be captured. Check that the workbook exists and the sheet or range is valid.\",\n open: (params) => {\n const range = sheetRange(params);\n return {\n label: range ? `Open ${range}` : \"Open spreadsheet\",\n options: { type: \"spreadsheet\" },\n };\n },\n});\n\n/** `capture_sheet_screenshot`: a workbook sheet's screenshot. */\nexport const CaptureSheetScreenshotToolUI = memo(\n CaptureSheetScreenshotToolUIImpl,\n) as unknown as ToolCallMessagePartComponent;\nCaptureSheetScreenshotToolUI.displayName = \"CaptureSheetScreenshotToolUI\";\n\n/** A Word page's proportions (US letter portrait), so the picture's box holds still while it loads. */\nconst PAGE_IMAGE_CLASS = \"aspect-[8.5/11] w-full object-contain\";\n\nconst CapturePageScreenshotToolUIImpl = createStudioScreenshotToolUI({\n icon: FileTextIcon,\n label: ({ args, shot }) => {\n const page = typeof args?.page_number === \"number\" ? args.page_number : 1;\n return shot.pageCount !== null ? `page ${page} of ${shot.pageCount}` : `page ${page}`;\n },\n imageClassName: PAGE_IMAGE_CLASS,\n failureNote: \"The screenshot could not be captured. Check that the document exists and the page number is within range.\",\n open: () => ({ label: \"Open document\", options: { type: \"document\" } }),\n});\n\n/** `capture_page_screenshot`: a Word document page's screenshot. */\nexport const CapturePageScreenshotToolUI = memo(\n CapturePageScreenshotToolUIImpl,\n) as unknown as ToolCallMessagePartComponent;\nCapturePageScreenshotToolUI.displayName = \"CapturePageScreenshotToolUI\";\n"],"names":[],"mappings":"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"}
@@ -2,133 +2,11 @@
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const jsxRuntime = require("react/jsx-runtime");
4
4
  const react = require("@assistant-ui/react");
5
- const reactQuery = require("@tanstack/react-query");
6
- const lucideReact = require("lucide-react");
7
5
  const require$$0 = require("react");
8
- const useStatewireApprovalRequest = require("../chat/use-statewire-approval-request.cjs");
9
- const messageTime = require("../chat/message-time.cjs");
10
- const turnTiming = require("../chat/super-grouping/turn-timing.cjs");
11
- const athenaDiagnostics = require("../diagnostics/athena-diagnostics.cjs");
12
- const useAthenaRestQuery = require("../lib/use-athena-rest-query.cjs");
13
- const collapsible = require("../ui/collapsible.cjs");
14
- const NestedPtcMessages = require("./NestedPtcMessages.cjs");
15
- const stepText = require("./step-text.cjs");
16
- const toolAppearance = require("./tool-appearance.cjs");
17
- const toolFallback = require("./tool-fallback.cjs");
18
- const toolSummary = require("./tool-summary.cjs");
6
+ const laneParts = require("../subagents/lane-parts.cjs");
7
+ const subagentLaneGroup = require("../subagents/subagent-lane-group.cjs");
8
+ const taskSubagentGroup = require("../subagents/task-subagent-group.cjs");
19
9
  const threadExtras = require("../agent-runtime/src/thread-extras.cjs");
20
- const subagents = require("../agent-runtime/src/subagents.cjs");
21
- const toolNames = require("../agent-runtime/src/tool-names.cjs");
22
- const laneHistory = require("../agent-runtime/src/lane-history.cjs");
23
- const subagentTranscripts = require("../agent-runtime/src/subagent-transcripts.cjs");
24
- const messages = require("../agent-runtime/src/messages.cjs");
25
- const cnfast = require("cnfast");
26
- const NO_LANE_STEPS = [];
27
- const NOT_AWAITING_APPROVAL = { awaitingApproval: false, gatedCall: void 0 };
28
- const NO_MESSAGES = [];
29
- const SUBAGENT_LANE_PHASE_LABELS = {
30
- queued: "Queued",
31
- approval: subagents.SUBAGENT_AWAITING_APPROVAL_LABEL,
32
- waiting: "Waiting for you",
33
- running: "Running",
34
- complete: "Done",
35
- error: "Failed",
36
- stopped: "Stopped"
37
- };
38
- function subagentLanePhase({
39
- status,
40
- partStatus,
41
- awaitingApproval = false
42
- }) {
43
- if (status === "complete" || status === "error") return status;
44
- if (awaitingApproval) return "approval";
45
- if ((partStatus == null ? void 0 : partStatus.type) === "requires-action") return "waiting";
46
- if ((partStatus == null ? void 0 : partStatus.type) === "incomplete") {
47
- return partStatus.reason === "cancelled" ? "stopped" : "error";
48
- }
49
- return status;
50
- }
51
- function isSettledSubagentLanePhase(phase) {
52
- return phase === "complete" || phase === "error" || phase === "stopped";
53
- }
54
- function subagentLaneResult({
55
- output,
56
- phase,
57
- partStatus
58
- }) {
59
- if (!isSettledSubagentLanePhase(phase)) return "";
60
- const own = (output == null ? void 0 : output.trim()) ?? "";
61
- if (own !== "" || phase !== "error" || (partStatus == null ? void 0 : partStatus.type) !== "incomplete") return own;
62
- const { error } = partStatus;
63
- if (error === void 0 || error === null) return "";
64
- return (typeof error === "string" ? error : JSON.stringify(error)).trim();
65
- }
66
- function record(value) {
67
- return value && typeof value === "object" && !Array.isArray(value) ? value : void 0;
68
- }
69
- function finishedLaneDurationMs(artifact) {
70
- const stamps = record(artifact);
71
- const startedAt = turnTiming.readInstantMs(stamps == null ? void 0 : stamps._started_at);
72
- const finishedAt = turnTiming.readInstantMs(stamps == null ? void 0 : stamps[messageTime.MESSAGE_CREATED_AT_KEY]);
73
- return startedAt !== null && finishedAt !== null && finishedAt >= startedAt ? finishedAt - startedAt : null;
74
- }
75
- const ASSISTANT_TYPES = /* @__PURE__ */ new Set(["ai", "AIMessageChunk"]);
76
- function laneDelegatedAtMs({
77
- sources,
78
- toolCallId
79
- }) {
80
- for (const source of sources) {
81
- const message = record(source);
82
- if (!message || !ASSISTANT_TYPES.has(message.type)) continue;
83
- const calls = message.tool_calls;
84
- if (!Array.isArray(calls) || !calls.some((call) => {
85
- var _a;
86
- return ((_a = record(call)) == null ? void 0 : _a.id) === toolCallId;
87
- })) continue;
88
- const kwargs = record(message.additional_kwargs);
89
- const metadata = record(kwargs == null ? void 0 : kwargs.metadata);
90
- return turnTiming.readInstantMs(metadata == null ? void 0 : metadata[messageTime.MESSAGE_CREATED_AT_KEY]) ?? turnTiming.readInstantMs(kwargs == null ? void 0 : kwargs[messageTime.MESSAGE_CREATED_AT_KEY]) ?? turnTiming.readInstantMs(message[messageTime.MESSAGE_CREATED_AT_KEY]);
91
- }
92
- return null;
93
- }
94
- function latestLaneStep(messages2) {
95
- for (let index = messages2.length - 1; index >= 0; index -= 1) {
96
- const message = messages2[index];
97
- if ((message == null ? void 0 : message.role) !== "assistant") continue;
98
- for (let partIndex = message.content.length - 1; partIndex >= 0; partIndex -= 1) {
99
- const part = message.content[partIndex];
100
- if ((part == null ? void 0 : part.type) !== "tool-call") continue;
101
- const answered = part.result !== void 0 && part.isPreliminary !== true;
102
- return toolSummary.summarizeToolCall({
103
- toolName: part.toolName,
104
- args: part.args,
105
- result: answered ? part.result : void 0,
106
- status: answered ? part.isError === true ? "error" : "complete" : "running"
107
- });
108
- }
109
- }
110
- return null;
111
- }
112
- function subagentTypeLabel(name) {
113
- const trimmed = name.trim();
114
- if (trimmed === "" || trimmed === "subagent" || trimmed === "general-purpose") return "Subagent";
115
- return toolSummary.humanizeToolName(trimmed);
116
- }
117
- function toolCallCountLabel(count) {
118
- return `${count} tool call${count === 1 ? "" : "s"}`;
119
- }
120
- function stepsLabel(count) {
121
- return `${count} step${count === 1 ? "" : "s"}`;
122
- }
123
- function laneStepsNote({
124
- shown,
125
- total,
126
- arrivesLater
127
- }) {
128
- if (total === void 0 || total <= shown) return null;
129
- const leftOff = total - shown;
130
- return arrivesLater ? `Showing the latest steps. ${leftOff} earlier ${leftOff === 1 ? "step arrives" : "steps arrive"} when this subagent finishes.` : `Showing the latest ${shown} of ${stepsLabel(total)}.`;
131
- }
132
10
  function useInReadOnlyThread() {
133
11
  return react.useAuiState((s) => {
134
12
  var _a;
@@ -136,369 +14,40 @@ function useInReadOnlyThread() {
136
14
  return thread !== void 0 && !threadExtras.hasStatewireThreadExtras(thread.extras);
137
15
  });
138
16
  }
139
- function laneFromArgs(toolCallId, args) {
140
- const record2 = typeof args === "object" && args !== null ? args : {};
141
- return {
142
- id: toolCallId,
143
- name: typeof record2.subagent_type === "string" ? record2.subagent_type : "subagent",
144
- description: typeof record2.description === "string" ? record2.description : "",
145
- status: "queued",
146
- toolCallCount: 0,
147
- messages: NO_MESSAGES,
148
- messageCount: 0,
149
- currentText: ""
150
- };
17
+ function argsRecord(args) {
18
+ return typeof args === "object" && args !== null && !Array.isArray(args) ? args : {};
151
19
  }
152
- function LaneStatusGlyph({ phase }) {
153
- const glyph = phase === "running" ? /* @__PURE__ */ jsxRuntime.jsx(lucideReact.LoaderIcon, { className: "size-3.5 animate-spin text-muted-foreground motion-reduce:animate-none" }) : phase === "complete" ? /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CheckIcon, { className: "size-3.5 text-emerald-600" }) : phase === "error" ? /* @__PURE__ */ jsxRuntime.jsx(lucideReact.AlertCircleIcon, { className: "size-3.5 text-destructive" }) : phase === "stopped" ? /* @__PURE__ */ jsxRuntime.jsx(lucideReact.XCircleIcon, { className: "size-3.5 text-muted-foreground" }) : phase === "waiting" || phase === "approval" ? /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ShieldAlertIcon, { className: "size-3.5 text-amber-600" }) : /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CircleDashedIcon, { className: "size-3.5 text-muted-foreground motion-safe:animate-pulse" });
20
+ function TaskSubagentLanes({ toolCallId, args }) {
21
+ const task = taskSubagentGroup.useTaskSubagentGroup({ toolCallId, args });
22
+ if (!task.isAnchor) return null;
154
23
  return /* @__PURE__ */ jsxRuntime.jsx(
155
- "span",
24
+ subagentLaneGroup.SubagentLaneGroup,
156
25
  {
157
- "data-slot": "subagent-status",
158
- "data-phase": phase,
159
- "aria-hidden": "true",
160
- className: "mt-0.5 flex size-4 shrink-0 items-center justify-center",
161
- children: glyph
26
+ lanes: task.lanes,
27
+ turnToolCallIds: task.turnToolCallIds,
28
+ stoppedLaneIds: task.stoppedLaneIds,
29
+ delegatedAtMs: task.delegatedAtMs
162
30
  }
163
31
  );
164
32
  }
165
- function useRunningElapsedMs(running, startMs) {
166
- const [clock, setClock] = require$$0.useState(null);
167
- require$$0.useEffect(() => {
168
- if (!running) {
169
- setClock(null);
170
- return void 0;
171
- }
172
- const seenAt = Date.now();
173
- setClock({ seenAt, now: seenAt });
174
- const timer = setInterval(() => setClock({ seenAt, now: Date.now() }), 1e3);
175
- return () => clearInterval(timer);
176
- }, [running]);
177
- if (!running || clock === null) return null;
178
- return Math.max(0, clock.now - (startMs ?? clock.seenAt));
179
- }
180
- const LaneStepComponentsContext = require$$0.createContext(null);
181
- const EmptyStepPart = () => null;
182
- const LaneStep = () => {
183
- const role = react.useAuiState((s) => s.message.role);
184
- const components = require$$0.useContext(LaneStepComponentsContext);
185
- if (role !== "assistant") return null;
186
- return /* @__PURE__ */ jsxRuntime.jsx(react.MessagePrimitive.Parts, { components: { Empty: EmptyStepPart, ...components } });
187
- };
188
- const LANE_ROW_COMPONENTS = { Message: LaneStep };
189
- const ROW_KEY_SEPARATOR = "\0";
190
- function LaneRows() {
191
- const joinedKeys = react.useAuiState(
192
- (s) => s.thread.messages.map((message) => messages.deepAgentRowKey(message)).join(ROW_KEY_SEPARATOR)
193
- );
194
- const rowKeys = require$$0.useMemo(
195
- () => joinedKeys === "" ? [] : joinedKeys.split(ROW_KEY_SEPARATOR),
196
- [joinedKeys]
197
- );
198
- return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: rowKeys.map((key, index) => /* @__PURE__ */ jsxRuntime.jsx(react.ThreadPrimitive.MessageByIndex, { index, components: LANE_ROW_COMPONENTS }, key)) });
199
- }
200
- class LaneStepsBoundary extends require$$0.Component {
201
- constructor(props) {
202
- super(props);
203
- this.state = { failed: false };
204
- }
205
- static getDerivedStateFromError() {
206
- return { failed: true };
207
- }
208
- componentDidCatch(error, errorInfo) {
209
- var _a;
210
- athenaDiagnostics.athenaDiagnostics.error(
211
- "sdk.error",
212
- error,
213
- {
214
- code: "chat_render_crash",
215
- message: "A subagent's steps could not be shown",
216
- hint: "Inspect component_stack: a tool UI that reads the live thread fails inside a subagent's read-only steps."
217
- },
33
+ const SubagentTaskToolUIImpl = ({ toolCallId, args }) => {
34
+ const readOnly = useInReadOnlyThread();
35
+ if (readOnly) {
36
+ const fields = argsRecord(args);
37
+ const name = fields.subagent_type ?? fields.subagentType;
38
+ return /* @__PURE__ */ jsxRuntime.jsx(
39
+ laneParts.SubagentDelegationChip,
218
40
  {
219
- surface: "subagent-lane",
220
- subagent: this.props.name,
221
- component_stack: ((_a = errorInfo.componentStack) == null ? void 0 : _a.slice(0, 2e3)) ?? null
41
+ name: typeof name === "string" ? name : "subagent",
42
+ description: typeof fields.description === "string" ? fields.description : void 0
222
43
  }
223
44
  );
224
45
  }
225
- render() {
226
- if (this.state.failed) {
227
- return /* @__PURE__ */ jsxRuntime.jsx("p", { role: "alert", className: "px-1 text-xs text-muted-foreground", children: "These steps couldn't be shown. The conversation is not affected." });
228
- }
229
- return this.props.children;
230
- }
231
- }
232
- function LaneQueryScope({ children }) {
233
- const queryClient = useAthenaRestQuery.useAthenaQueryClient();
234
- return /* @__PURE__ */ jsxRuntime.jsx(reactQuery.QueryClientProvider, { client: queryClient, children });
235
- }
236
- function LaneSteps({ lane, phase, result, partMessages }) {
237
- var _a, _b;
238
- const running = lane.status === "running" && (phase === "running" || phase === "approval");
239
- const source = lane.source;
240
- const history = laneHistory.useDeepAgentLaneHistory({
241
- messageId: source == null ? void 0 : source.messageId,
242
- lane: source == null ? void 0 : source.lane,
243
- carried: (source == null ? void 0 : source.transcript) ?? NO_LANE_STEPS,
244
- total: (_a = source == null ? void 0 : source.truncated) == null ? void 0 : _a.messages,
245
- finished: ((_b = source == null ? void 0 : source.truncated) == null ? void 0 : _b.finished) === true
246
- });
247
- const [convertLane] = require$$0.useState(() => subagentTranscripts.createSubagentLaneConversion());
248
- const report = lane.status === "complete" && (source == null ? void 0 : source.messageId) !== void 0 ? lane.output : void 0;
249
- const messages2 = (source === void 0 ? void 0 : convertLane(subagentTranscripts.withLaneReport(history.steps, report), running)) ?? partMessages ?? NO_MESSAGES;
250
- const components = NestedPtcMessages.useNestedPtcComponents(toolFallback.ToolFallback);
251
- const shown = history.steps.length;
252
- const arrivesLater = running && (source == null ? void 0 : source.messageId) !== void 0 && !history.available;
253
- const note = laneStepsNote({ shown, total: history.total, arrivesLater });
254
- const emptyText = phase === "running" ? "Starting…" : phase === "queued" || phase === "waiting" || phase === "approval" ? "Not started yet." : "No steps were recorded for this subagent.";
255
- const failed = phase === "error";
256
- const closing = failed || messages2.length === 0 ? result : "";
257
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { "data-slot": "subagent-steps", className: "flex min-w-0 flex-col gap-2 px-2.5", children: [
258
- lane.description ? /* @__PURE__ */ jsxRuntime.jsx(
259
- "p",
260
- {
261
- "data-slot": "subagent-brief",
262
- className: "whitespace-pre-wrap break-words text-xs leading-relaxed text-muted-foreground",
263
- children: lane.description
264
- }
265
- ) : null,
266
- note ? /* @__PURE__ */ jsxRuntime.jsxs(
267
- "div",
268
- {
269
- "data-slot": "subagent-steps-note",
270
- className: "flex flex-wrap items-center gap-x-2 gap-y-1 text-xs text-muted-foreground",
271
- children: [
272
- /* @__PURE__ */ jsxRuntime.jsx("span", { children: note }),
273
- history.hasEarlier && !arrivesLater ? /* @__PURE__ */ jsxRuntime.jsx(
274
- "button",
275
- {
276
- type: "button",
277
- onClick: history.loadEarlier,
278
- disabled: history.loading,
279
- className: "rounded font-medium text-primary hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-default disabled:no-underline disabled:opacity-60",
280
- children: history.loading ? "Loading earlier steps…" : "Load earlier steps"
281
- }
282
- ) : null
283
- ]
284
- }
285
- ) : null,
286
- messages2.length > 0 ? /* @__PURE__ */ jsxRuntime.jsx(LaneStepsBoundary, { name: lane.name, children: /* @__PURE__ */ jsxRuntime.jsx(LaneStepComponentsContext.Provider, { value: components, children: /* @__PURE__ */ jsxRuntime.jsx(react.ReadonlyThreadProvider, { messages: messages2, children: /* @__PURE__ */ jsxRuntime.jsx("div", { "data-slot": "subagent-step-rows", className: "flex min-w-0 flex-col gap-1", children: /* @__PURE__ */ jsxRuntime.jsx(LaneRows, {}) }) }) }) }) : /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-muted-foreground", children: emptyText }),
287
- closing ? /* @__PURE__ */ jsxRuntime.jsxs("div", { "data-slot": "subagent-result", className: "flex min-w-0 flex-col gap-0.5", children: [
288
- /* @__PURE__ */ jsxRuntime.jsx(
289
- "p",
290
- {
291
- className: cnfast.cn(
292
- "text-xs font-medium",
293
- failed ? "text-destructive" : "text-muted-foreground"
294
- ),
295
- children: failed ? "Error" : "Report"
296
- }
297
- ),
298
- /* @__PURE__ */ jsxRuntime.jsx(
299
- "p",
300
- {
301
- "data-slot": "subagent-result-text",
302
- className: cnfast.cn(
303
- "max-h-72 overflow-auto whitespace-pre-wrap break-words text-xs leading-relaxed",
304
- failed ? "text-destructive/80" : "text-foreground/80"
305
- ),
306
- children: closing
307
- }
308
- )
309
- ] }) : null
310
- ] });
311
- }
312
- function laneMeta({
313
- phase,
314
- toolCallCount,
315
- elapsedMs
316
- }) {
317
- const parts = [SUBAGENT_LANE_PHASE_LABELS[phase]];
318
- if (toolCallCount > 0 || isSettledSubagentLanePhase(phase)) {
319
- parts.push(toolCallCountLabel(toolCallCount));
320
- }
321
- if (elapsedMs !== null && (phase !== "running" || elapsedMs >= 1e3)) {
322
- parts.push(turnTiming.formatWorkDuration(elapsedMs));
323
- }
324
- return parts.join(" · ");
325
- }
326
- function SubagentTaskCard({ toolCallId, args, status, artifact, messages: messages2 }) {
327
- const appearance = toolAppearance.useToolAppearance();
328
- const isThread = appearance === "thread";
329
- const readLane = react.useAuiState((s) => subagents.taskSubagentsOfTurn(s.message).get(toolCallId));
330
- const lane = require$$0.useMemo(
331
- () => readLane ?? laneFromArgs(toolCallId, args),
332
- [readLane, toolCallId, args]
333
- );
334
- const { toolCallIds: waitingToolCallIds, actionRequests } = useStatewireApprovalRequest.useApprovalWaitInScope();
335
- const waitingTurn = react.useAuiState((s) => waitingToolCallIds.size === 0 ? null : s.message);
336
- const approvalWait = require$$0.useMemo(
337
- () => waitingTurn === null ? NOT_AWAITING_APPROVAL : subagents.turnLaneApprovalWait({
338
- message: waitingTurn,
339
- toolCallId,
340
- toolCallIds: waitingToolCallIds,
341
- actionRequests
342
- }),
343
- [waitingTurn, toolCallId, waitingToolCallIds, actionRequests]
344
- );
345
- const { awaitingApproval, gatedCall } = approvalWait;
346
- const phase = subagentLanePhase({ status: lane.status, partStatus: status, awaitingApproval });
347
- const running = phase === "running";
348
- const delegatedAt = react.useAuiState(
349
- (s) => running ? laneDelegatedAtMs({ sources: react.getExternalStoreMessages(s.message), toolCallId }) : null
350
- );
351
- const runningElapsed = useRunningElapsedMs(running, delegatedAt);
352
- const elapsedMs = running ? runningElapsed : isSettledSubagentLanePhase(phase) ? finishedLaneDurationMs(artifact) : null;
353
- const step = require$$0.useMemo(() => running ? latestLaneStep(lane.messages) : null, [running, lane.messages]);
354
- const hasSteps = lane.messageCount > 0 || (lane.omittedMessageCount ?? 0) > 0;
355
- const typeLabel = subagentTypeLabel(lane.name);
356
- const title = lane.description.trim() || typeLabel;
357
- const meta = laneMeta({ phase, toolCallCount: lane.toolCallCount, elapsedMs });
358
- const liveText = step ? null : lane.currentText.trim();
359
- const report = subagentLaneResult({ output: lane.output, phase, partStatus: status });
360
- const header = /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
361
- /* @__PURE__ */ jsxRuntime.jsx(LaneStatusGlyph, { phase }),
362
- /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "flex min-w-0 flex-1 flex-col gap-0.5", children: [
363
- /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "flex min-w-0 items-baseline gap-1.5", children: [
364
- /* @__PURE__ */ jsxRuntime.jsx(
365
- "span",
366
- {
367
- "data-slot": "subagent-title",
368
- title: lane.description || void 0,
369
- className: "min-w-0 truncate font-medium text-foreground",
370
- children: title
371
- }
372
- ),
373
- title !== typeLabel ? /* @__PURE__ */ jsxRuntime.jsx(
374
- "span",
375
- {
376
- "data-slot": "subagent-type",
377
- className: "shrink-0 rounded-full bg-muted px-1.5 py-px text-[10px] font-medium text-muted-foreground",
378
- children: typeLabel
379
- }
380
- ) : null
381
- ] }),
382
- /* @__PURE__ */ jsxRuntime.jsx(
383
- "span",
384
- {
385
- "data-slot": "subagent-meta",
386
- className: cnfast.cn(
387
- "text-xs tabular-nums text-muted-foreground",
388
- phase === "error" && "text-destructive"
389
- ),
390
- children: meta
391
- }
392
- ),
393
- phase === "approval" ? /* @__PURE__ */ jsxRuntime.jsxs(
394
- "span",
395
- {
396
- "data-slot": "subagent-approval",
397
- className: "flex min-w-0 items-baseline gap-1 text-xs text-muted-foreground",
398
- children: [
399
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "shrink-0 text-amber-700", children: subagents.subagentApprovalNoteLabel(approvalWait) }),
400
- gatedCall ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
401
- /* @__PURE__ */ jsxRuntime.jsx("code", { className: "shrink-0 rounded bg-foreground/[0.06] px-1 py-px font-mono text-[11px] text-foreground/85", children: gatedCall.name }),
402
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "min-w-0 truncate", children: toolNames.salientToolCallDetail(gatedCall) })
403
- ] }) : null
404
- ]
405
- }
406
- ) : running ? /* @__PURE__ */ jsxRuntime.jsx("span", { "data-slot": "subagent-activity", className: "min-w-0 truncate text-xs text-muted-foreground", children: step ? /* @__PURE__ */ jsxRuntime.jsx("span", { title: step.detail, children: /* @__PURE__ */ jsxRuntime.jsx(stepText.StepText, { text: step.label, code: step.code }) }) : liveText || "Starting…" }) : null
407
- ] })
408
- ] });
409
- return /* @__PURE__ */ jsxRuntime.jsxs(
410
- toolFallback.ToolFallbackRoot,
411
- {
412
- "data-testid": "subagent-task-card",
413
- "data-phase": phase,
414
- role: "group",
415
- "aria-label": `Subagent: ${title}`,
416
- className: cnfast.cn(isThread && phase === "error" && "border-destructive/30 bg-destructive/5"),
417
- children: [
418
- hasSteps || running || report ? /* @__PURE__ */ jsxRuntime.jsxs(
419
- collapsible.CollapsibleTrigger,
420
- {
421
- "data-slot": "subagent-trigger",
422
- className: cnfast.cn(
423
- "group/trigger flex w-full min-w-0 items-start gap-2 text-left text-[13px] leading-snug transition-colors hover:bg-muted/40",
424
- isThread ? "rounded-lg px-2.5 py-1.5" : "px-3"
425
- ),
426
- children: [
427
- header,
428
- /* @__PURE__ */ jsxRuntime.jsx(
429
- lucideReact.ChevronDownIcon,
430
- {
431
- "aria-hidden": "true",
432
- className: cnfast.cn(
433
- "mt-0.5 size-3.5 shrink-0 text-muted-foreground/60",
434
- "transition-transform duration-(--animation-duration) ease-out",
435
- "group-data-[state=closed]/trigger:-rotate-90"
436
- )
437
- }
438
- )
439
- ]
440
- }
441
- ) : /* @__PURE__ */ jsxRuntime.jsx(
442
- "div",
443
- {
444
- "data-slot": "subagent-trigger",
445
- className: cnfast.cn(
446
- "flex w-full min-w-0 items-start gap-2 text-[13px] leading-snug",
447
- isThread ? "px-2.5 py-1.5" : "px-3"
448
- ),
449
- children: header
450
- }
451
- ),
452
- report ? /* @__PURE__ */ jsxRuntime.jsx(
453
- "p",
454
- {
455
- "data-slot": "subagent-report",
456
- className: cnfast.cn(
457
- "mb-1.5 line-clamp-3 whitespace-pre-line break-words text-xs leading-relaxed",
458
- isThread ? "mr-2.5 ml-8" : "mx-3 mt-1.5 ml-9",
459
- phase === "error" ? "text-destructive" : "text-foreground/80"
460
- ),
461
- children: report
462
- }
463
- ) : null,
464
- /* @__PURE__ */ jsxRuntime.jsx(toolFallback.ToolFallbackContent, { children: /* @__PURE__ */ jsxRuntime.jsx(LaneQueryScope, { children: /* @__PURE__ */ jsxRuntime.jsx(LaneSteps, { lane, phase, result: report, partMessages: messages2 }) }) })
465
- ]
466
- }
467
- );
468
- }
469
- function SubagentDelegationRow({ args, result, isError, status }) {
470
- const settled = result !== void 0 && (status == null ? void 0 : status.type) !== "running";
471
- const summary = toolSummary.summarizeToolCall({
472
- toolName: "task",
473
- args: typeof args === "object" && args !== null ? args : void 0,
474
- status: !settled ? "running" : isError === true ? "error" : "complete"
475
- });
476
- return /* @__PURE__ */ jsxRuntime.jsxs(
477
- "div",
478
- {
479
- "data-testid": "subagent-delegation",
480
- className: "my-1 flex min-w-0 items-center gap-2 rounded-lg border border-border/50 bg-background px-2.5 py-1.5 text-[13px]",
481
- children: [
482
- /* @__PURE__ */ jsxRuntime.jsx(lucideReact.BotIcon, { "aria-hidden": "true", className: "size-3.5 shrink-0 text-muted-foreground" }),
483
- /* @__PURE__ */ jsxRuntime.jsx("span", { title: summary.detail, className: "min-w-0 truncate text-foreground", children: summary.label })
484
- ]
485
- }
486
- );
487
- }
488
- const SubagentTaskToolUIImpl = (props) => useInReadOnlyThread() ? /* @__PURE__ */ jsxRuntime.jsx(SubagentDelegationRow, { ...props }) : /* @__PURE__ */ jsxRuntime.jsx(SubagentTaskCard, { ...props });
46
+ return /* @__PURE__ */ jsxRuntime.jsx(TaskSubagentLanes, { toolCallId, args });
47
+ };
489
48
  const SubagentTaskToolUI = require$$0.memo(
490
49
  SubagentTaskToolUIImpl
491
50
  );
492
51
  SubagentTaskToolUI.displayName = "SubagentTaskToolUI";
493
- exports.SUBAGENT_LANE_PHASE_LABELS = SUBAGENT_LANE_PHASE_LABELS;
494
52
  exports.SubagentTaskToolUI = SubagentTaskToolUI;
495
- exports.finishedLaneDurationMs = finishedLaneDurationMs;
496
- exports.isSettledSubagentLanePhase = isSettledSubagentLanePhase;
497
- exports.laneDelegatedAtMs = laneDelegatedAtMs;
498
- exports.laneStepsNote = laneStepsNote;
499
- exports.latestLaneStep = latestLaneStep;
500
- exports.subagentLanePhase = subagentLanePhase;
501
- exports.subagentLaneResult = subagentLaneResult;
502
- exports.subagentTypeLabel = subagentTypeLabel;
503
- exports.toolCallCountLabel = toolCallCountLabel;
504
53
  //# sourceMappingURL=subagent-task-tool-ui.cjs.map