@opengeni/react 6.7.0 → 6.8.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 (758) hide show
  1. package/dist/app/app-state.js +9 -9
  2. package/dist/app/components/Composer.js +20 -20
  3. package/dist/app/components/agent/agent-capability-picker.js +6 -6
  4. package/dist/app/components/artifacts/artifact-browse-controls.js +2 -2
  5. package/dist/app/components/artifacts/artifact-library.js +13 -13
  6. package/dist/app/components/artifacts/artifact-viewer.js +21 -21
  7. package/dist/app/components/artifacts/chat-interactive-block.js +14 -14
  8. package/dist/app/components/artifacts/copy-artifact-link.js +2 -2
  9. package/dist/app/components/artifacts/file-reach-dialog.js +7 -7
  10. package/dist/app/components/artifacts/inline-chat-image.js +22 -22
  11. package/dist/app/components/artifacts/retained-file-preview.js +23 -23
  12. package/dist/app/components/artifacts/retained-text-preview.js +3 -3
  13. package/dist/app/components/artifacts/site-actions.d.ts +43 -0
  14. package/dist/app/components/artifacts/site-actions.js +38 -0
  15. package/dist/app/components/artifacts/site-audience.js +5 -5
  16. package/dist/app/components/artifacts/site-conversations.js +13 -13
  17. package/dist/app/components/artifacts/site-data.js +14 -14
  18. package/dist/app/components/artifacts/site-publishing-page.js +31 -31
  19. package/dist/app/components/artifacts/site-publishing.js +25 -25
  20. package/dist/app/components/artifacts/site-settings.js +30 -30
  21. package/dist/app/components/artifacts/site-version-menu.js +3 -3
  22. package/dist/app/components/billing-class-mark.js +3 -3
  23. package/dist/app/components/bots/bot-launch-strip.js +23 -23
  24. package/dist/app/components/bots/bot-template-dialog.js +30 -30
  25. package/dist/app/components/bots/bot-template-shortcuts.js +23 -23
  26. package/dist/app/components/bots/bot-templates-page.js +37 -37
  27. package/dist/app/components/capabilities/capability-detail-sheet.js +9 -9
  28. package/dist/app/components/capabilities/capability-logo-source.js +14 -15
  29. package/dist/app/components/capabilities/connection-ownership-selector.js +4 -4
  30. package/dist/app/components/capabilities/connector-tool-permissions.js +4 -4
  31. package/dist/app/components/capabilities/detail-dialog.js +3 -3
  32. package/dist/app/components/capabilities/native-connect-setup.js +16 -17
  33. package/dist/app/components/capabilities/native-connect-setup.js.map +1 -1
  34. package/dist/app/components/capabilities/own-logins-shared-heads-up.js +3 -3
  35. package/dist/app/components/capabilities/prepared-mcp-setup-card.js +16 -17
  36. package/dist/app/components/capabilities/session-capability-card.js +49 -50
  37. package/dist/app/components/capabilities/session-capability-card.js.map +1 -1
  38. package/dist/app/components/capabilities/session-chrome-card.js +24 -25
  39. package/dist/app/components/capabilities/session-custom-mcp-card.js +17 -18
  40. package/dist/app/components/capabilities/session-github-card.js +17 -18
  41. package/dist/app/components/capabilities/session-machine-card.js +23 -24
  42. package/dist/app/components/capabilities/session-personal-github-card.js +15 -16
  43. package/dist/app/components/capabilities/session-plugin-card.js +9 -10
  44. package/dist/app/components/capabilities/use-connection-accounts.js +2 -2
  45. package/dist/app/components/command-menu/chat-status.js +19 -19
  46. package/dist/app/components/command-menu/chat-switcher.js +35 -35
  47. package/dist/app/components/command-menu/command-menu.js +42 -42
  48. package/dist/app/components/command-menu/shortcut-sheet.js +11 -11
  49. package/dist/app/components/composer-capabilities-menu-body.js +4 -4
  50. package/dist/app/components/composer-mobile-plus-panel.js +10 -10
  51. package/dist/app/components/composer-mobile-plus.js +3 -3
  52. package/dist/app/components/credit-required-gate.js +1 -1
  53. package/dist/app/components/credit-required-prompt.js +4 -4
  54. package/dist/app/components/credits/checkout-credits-celebration.js +3 -3
  55. package/dist/app/components/credits/checkout-return.js +3 -3
  56. package/dist/app/components/credits/credit-refusal-notice.js +2 -2
  57. package/dist/app/components/desktop/app-shots.js +6 -6
  58. package/dist/app/components/desktop/computer-use.js +2 -2
  59. package/dist/app/components/desktop/this-computer.js +5 -5
  60. package/dist/app/components/feedback.js +5 -5
  61. package/dist/app/components/github-app-connect-launcher.js +1 -1
  62. package/dist/app/components/machines/connect-machine-dialog.js +14 -14
  63. package/dist/app/components/markdown.js +7 -7
  64. package/dist/app/components/models/models-ui.js +6 -6
  65. package/dist/app/components/my-things.js +6 -6
  66. package/dist/app/components/own-where-it-works.js +5 -5
  67. package/dist/app/components/personal-resource-attachment-surface.js +4 -4
  68. package/dist/app/components/pickers.js +5 -5
  69. package/dist/app/components/rail/channel-create-dialog.js +5 -5
  70. package/dist/app/components/rail/project-glyph.js +23 -23
  71. package/dist/app/components/rail/project-profile.js +32 -32
  72. package/dist/app/components/rail/rail-context.js +1 -1
  73. package/dist/app/components/rail/rail-sections.js +70 -61
  74. package/dist/app/components/rail/session-header.js +54 -53
  75. package/dist/app/components/rail/session-list.js +68 -59
  76. package/dist/app/components/rail/session-row-content.js +4 -4
  77. package/dist/app/components/rail/session-row-hover-details.js +18 -18
  78. package/dist/app/components/rail/session-shell.js +89 -80
  79. package/dist/app/components/rail/site-session-group-heading.js +29 -12
  80. package/dist/app/components/session/agent-configuration-panel.js +14 -14
  81. package/dist/app/components/session/artifact-session-page.js +5 -5
  82. package/dist/app/components/session/banners.js +9 -9
  83. package/dist/app/components/session/console-new-conversation.js +43 -44
  84. package/dist/app/components/session/descendant-requests.js +39 -40
  85. package/dist/app/components/session/descendant-requests.js.map +1 -1
  86. package/dist/app/components/session/editable-artifacts-workspace.js +27 -27
  87. package/dist/app/components/session/failed-session-banner.js +9 -9
  88. package/dist/app/components/session/failure-recovery-boundary.js +3 -3
  89. package/dist/app/components/session/human-input-delegation-record.js +2 -2
  90. package/dist/app/components/session/human-input.js +37 -38
  91. package/dist/app/components/session/inspector.js +47 -48
  92. package/dist/app/components/session/inspector.js.map +1 -1
  93. package/dist/app/components/session/message-actions.js +5 -5
  94. package/dist/app/components/session/message-resource-attachments.js +13 -13
  95. package/dist/app/components/session/model-recovery-notice.js +3 -3
  96. package/dist/app/components/session/new-session-settings-menu.js +6 -6
  97. package/dist/app/components/session/new-session-setup-strip.js +24 -24
  98. package/dist/app/components/session/sandbox-recovery-actions.js +5 -5
  99. package/dist/app/components/session/sandbox-switcher.js +8 -8
  100. package/dist/app/components/session/sandbox-workspace.js +52 -53
  101. package/dist/app/components/session/search-markdown-highlight.js +8 -8
  102. package/dist/app/components/session/search-results-view.js +9 -9
  103. package/dist/app/components/session/session-admin-access.js +5 -5
  104. package/dist/app/components/session/session-admission-notice.js +4 -4
  105. package/dist/app/components/session/session-avatar-picker.js +24 -24
  106. package/dist/app/components/session/session-avatar.js +22 -22
  107. package/dist/app/components/session/session-machine-access-notice.js +4 -4
  108. package/dist/app/components/session/session-profile-dialog.js +29 -29
  109. package/dist/app/components/session/session-profile-editor.js +30 -30
  110. package/dist/app/components/session/session-retention.js +3 -3
  111. package/dist/app/components/session/session-search-dialog.js +11 -11
  112. package/dist/app/components/session/session-tenancy-control.js +4 -4
  113. package/dist/app/components/session/session-usage-limit-section.js +4 -4
  114. package/dist/app/components/session/share-chat-dialog.js +7 -7
  115. package/dist/app/components/session/subagents.js +12 -12
  116. package/dist/app/components/session/subscription-account-indicator.js +6 -6
  117. package/dist/app/components/settings/row-select.js +4 -4
  118. package/dist/app/components/transcription-settings.js +6 -6
  119. package/dist/app/components/ui/destructive-confirm.js +7 -7
  120. package/dist/app/components/usage/usage-entry.js +3 -3
  121. package/dist/app/components/window-bar.d.ts +3 -1
  122. package/dist/app/components/window-bar.js +13 -11
  123. package/dist/app/components/workspace-composer-plus.js +19 -20
  124. package/dist/app/components/workspace-reach.js +4 -4
  125. package/dist/app/embed/session-app.js +173 -167
  126. package/dist/app/lib/actions/actions-provider.js +9 -9
  127. package/dist/app/lib/agent-capabilities.js +3 -3
  128. package/dist/app/lib/codex-usage-query.js +2 -2
  129. package/dist/app/lib/composer-connectors.js +15 -16
  130. package/dist/app/lib/composer-send-blocking.d.ts +135 -1
  131. package/dist/app/lib/composer-send-blocking.js +30 -3
  132. package/dist/app/lib/console-site.js +2 -2
  133. package/dist/app/lib/console-text.js +2 -2
  134. package/dist/app/lib/copy-link.d.ts +2 -0
  135. package/dist/app/lib/events.js +15 -15
  136. package/dist/app/lib/failed-session-copy.js +4 -4
  137. package/dist/app/lib/model-access-onboarding.js +3 -3
  138. package/dist/app/lib/model-access.js +2 -2
  139. package/dist/app/lib/move-chat-to-machine.js +3 -3
  140. package/dist/app/lib/session-branch-cache.js +12 -12
  141. package/dist/app/lib/session-composer-readiness.d.ts +2 -2
  142. package/dist/app/lib/session-create.js +4 -4
  143. package/dist/app/lib/session-group-pagination.js +12 -12
  144. package/dist/app/lib/session-hover-facts.js +17 -17
  145. package/dist/app/lib/session-model.js +2 -2
  146. package/dist/app/lib/session-rail.js +9 -9
  147. package/dist/app/lib/session-rename.js +3 -3
  148. package/dist/app/lib/sessions-group.js +11 -11
  149. package/dist/app/lib/site-sidebar-bridge.d.ts +24 -0
  150. package/dist/app/lib/site-tool-consent-dialog.js +9 -10
  151. package/dist/app/lib/site-tool-consent-dialog.js.map +1 -1
  152. package/dist/app/lib/site-tool-consent.js +1 -1
  153. package/dist/app/lib/turn-failure-analytics.js +5 -5
  154. package/dist/app/lib/use-follow-up-repositories.js +5 -5
  155. package/dist/app/lib/use-workspace-machines.js +5 -5
  156. package/dist/app/lib/use-workspace-model-catalog.js +3 -3
  157. package/dist/app/lib/use-workspace-rigs.js +2 -2
  158. package/dist/app/lib/workspace-navigation-preference.js +4 -4
  159. package/dist/app/lib/workspace-scope-context.js +3 -3
  160. package/dist/app/routes/artifacts.js +69 -69
  161. package/dist/app/routes/retained-artifact.js +48 -48
  162. package/dist/app/routes/session.js +100 -101
  163. package/dist/app/routes/sessions-index-hydration.js +5 -5
  164. package/dist/app/routes/sessions-index.js +85 -85
  165. package/dist/app/routes/site-view.js +177 -85
  166. package/dist/app/routes/site-view.js.map +1 -1
  167. package/dist/artifacts-document.js +4 -4
  168. package/dist/artifacts-presentation.js +4 -4
  169. package/dist/artifacts-spreadsheet.js +4 -4
  170. package/dist/artifacts.js +13 -13
  171. package/dist/automations.js +12 -12
  172. package/dist/{browser-viewer-TC27OCIP.js → browser-viewer-ZHQDVHZ2.js} +5 -5
  173. package/dist/{chat-interactive-block-RWPQBHVS.js → chat-interactive-block-VSDD6X3M.js} +5 -5
  174. package/dist/{chunk-5MOJZORA.js → chunk-2EA4IRIP.js} +34 -3
  175. package/dist/chunk-2EA4IRIP.js.map +1 -0
  176. package/dist/{chunk-C43KRXGA.js → chunk-2GCHGWNE.js} +3 -3
  177. package/dist/{chunk-XLH7QY2R.js → chunk-2J77TWGH.js} +3 -3
  178. package/dist/{chunk-77WAKEAH.js → chunk-2OXSB2OL.js} +2 -2
  179. package/dist/{chunk-H3T7IWNA.js → chunk-2VJOSU4H.js} +2 -2
  180. package/dist/{chunk-N6AACDUW.js → chunk-34NV52R3.js} +4 -4
  181. package/dist/{chunk-L7YTNTIK.js → chunk-3CDJSKDW.js} +3 -3
  182. package/dist/{chunk-EWSOC6WF.js → chunk-3DRLCX5V.js} +2 -2
  183. package/dist/{chunk-JEUPAVYY.js → chunk-3L465FBR.js} +6 -6
  184. package/dist/{chunk-5NWEKLDZ.js → chunk-3NNAC43A.js} +2 -2
  185. package/dist/{chunk-EDI6SJ2N.js → chunk-3OK7Y6ES.js} +2 -2
  186. package/dist/{chunk-AWKES45Y.js → chunk-3PM3M2Q6.js} +2 -2
  187. package/dist/{chunk-I7XIZRFD.js → chunk-3PZ3LRPV.js} +3 -3
  188. package/dist/{chunk-AW2MQB37.js → chunk-44JWVYJB.js} +2 -2
  189. package/dist/{chunk-2M3J7ZWQ.js → chunk-467WDSOK.js} +2 -2
  190. package/dist/{chunk-UTIAXH52.js → chunk-477DTTMH.js} +3 -3
  191. package/dist/{chunk-J5F5HPPW.js → chunk-4BWMAGJJ.js} +3 -3
  192. package/dist/{chunk-YSJEAAOL.js → chunk-4F3AEJI6.js} +4 -4
  193. package/dist/{chunk-LHPNABDH.js → chunk-4JXPLTWV.js} +2 -2
  194. package/dist/{chunk-RQKLF42C.js → chunk-4K64EKM7.js} +4 -4
  195. package/dist/{chunk-NUNZS36W.js → chunk-4O2XWOLZ.js} +3 -3
  196. package/dist/{chunk-QB2KMIDP.js → chunk-4SJAEPM2.js} +2 -2
  197. package/dist/{chunk-6JHU2UBS.js → chunk-4Z5X7PLC.js} +3 -3
  198. package/dist/{chunk-2STUPWEL.js → chunk-54U6ZBEX.js} +3 -3
  199. package/dist/{chunk-XXSOHN35.js → chunk-5FLYHX5R.js} +2 -2
  200. package/dist/{chunk-MIYFS2XN.js → chunk-5MHMCE2G.js} +3 -3
  201. package/dist/{chunk-YWVI6ZMK.js → chunk-5MIBQ4P5.js} +2 -2
  202. package/dist/chunk-6B73WNLR.js +173 -0
  203. package/dist/chunk-6B73WNLR.js.map +1 -0
  204. package/dist/{chunk-5O2FCCHZ.js → chunk-6QK65ZWM.js} +3 -3
  205. package/dist/{chunk-RPVREAU7.js → chunk-736RUNIA.js} +4 -4
  206. package/dist/{chunk-2KALVELR.js → chunk-74CBR5YE.js} +3 -3
  207. package/dist/{chunk-5IE76VCY.js → chunk-752WXSDN.js} +2 -2
  208. package/dist/{chunk-OPJJSKUK.js → chunk-77B6UCNK.js} +6 -6
  209. package/dist/{chunk-SEO7TICN.js → chunk-77BHKC43.js} +1 -1
  210. package/dist/{chunk-ZUA3JMI6.js → chunk-77SYIH6O.js} +2 -2
  211. package/dist/{chunk-ILDXWY37.js → chunk-7AI4E7PV.js} +2 -2
  212. package/dist/{chunk-C372BFOV.js → chunk-7NLF35YL.js} +4 -4
  213. package/dist/{chunk-IFB3WJ36.js → chunk-7YTR3UFO.js} +4 -4
  214. package/dist/{chunk-BMICEQZQ.js → chunk-7Z76QP64.js} +3 -3
  215. package/dist/{chunk-YWIFM7D7.js → chunk-AAS7OWV6.js} +3 -3
  216. package/dist/{chunk-5QAY6K77.js → chunk-AB5IW227.js} +3 -3
  217. package/dist/{chunk-ZBIXBQNI.js → chunk-ABJZDRW2.js} +2 -2
  218. package/dist/{chunk-4DVJ6ONS.js → chunk-AH3DGOTK.js} +2 -2
  219. package/dist/{chunk-HGKTHF2U.js → chunk-AJBDAVX3.js} +8 -8
  220. package/dist/{chunk-5YKW2K6I.js → chunk-AJDGP2N4.js} +20 -20
  221. package/dist/{chunk-HD5X76TP.js → chunk-AQQT2FIC.js} +5 -5
  222. package/dist/chunk-AQQT2FIC.js.map +1 -0
  223. package/dist/{chunk-SC6RRD2D.js → chunk-ARTEEI2E.js} +11 -2
  224. package/dist/{chunk-SC6RRD2D.js.map → chunk-ARTEEI2E.js.map} +1 -1
  225. package/dist/{chunk-IXPTECSC.js → chunk-AVXDIRRW.js} +2 -2
  226. package/dist/{chunk-QK5EFEUT.js → chunk-BASI553K.js} +4 -4
  227. package/dist/{chunk-CRU35QQH.js → chunk-BFFNINCC.js} +108 -66
  228. package/dist/chunk-BFFNINCC.js.map +1 -0
  229. package/dist/{chunk-Z4FMAFNH.js → chunk-BQYRZIZ7.js} +2 -2
  230. package/dist/{chunk-DZXEDSQI.js → chunk-CEMSIU4Z.js} +5 -5
  231. package/dist/{chunk-FZC5N55X.js → chunk-CH4UQ4NO.js} +5 -5
  232. package/dist/{chunk-7X6SDK2C.js → chunk-CHU3RDV4.js} +3 -3
  233. package/dist/{chunk-Y4OBB2VN.js → chunk-CV4VVLPZ.js} +2 -2
  234. package/dist/{chunk-JQL7ZH6C.js → chunk-CXAN2FHF.js} +7 -7
  235. package/dist/{chunk-F2OPHAUN.js → chunk-CYDXCILL.js} +7 -7
  236. package/dist/{chunk-3PZ7JZI2.js → chunk-D3PTVN2I.js} +2 -2
  237. package/dist/{chunk-FPXASDG5.js → chunk-D5TIVCXG.js} +2 -2
  238. package/dist/{chunk-7W37NS3I.js → chunk-D74Z2N4K.js} +2 -2
  239. package/dist/{chunk-MNZG4OHU.js → chunk-DCEQCGVN.js} +2 -2
  240. package/dist/{chunk-ND2BXV3P.js → chunk-DEHLWZSI.js} +4 -4
  241. package/dist/{chunk-2YUOVM3G.js → chunk-DIP7YALH.js} +2 -2
  242. package/dist/{chunk-6PZ7OBYU.js → chunk-DLVIRJGK.js} +4 -4
  243. package/dist/{chunk-KLEUWIMZ.js → chunk-DQPIEQGP.js} +2 -2
  244. package/dist/{chunk-T2QX3FDP.js → chunk-DWJ6J3YW.js} +4 -4
  245. package/dist/{chunk-3CPWWGNK.js → chunk-E5KOWRDU.js} +2 -2
  246. package/dist/{chunk-6WGRDRMA.js → chunk-EBIVTDEG.js} +2 -2
  247. package/dist/{chunk-KUDGXAF7.js → chunk-EBTUPRRQ.js} +10 -10
  248. package/dist/{chunk-5CPEEAFD.js → chunk-EDDKPIIV.js} +2 -2
  249. package/dist/{chunk-TX3VECZU.js → chunk-EGKARC53.js} +2 -2
  250. package/dist/{chunk-JEA3QDX7.js → chunk-EKJHOWTZ.js} +4 -4
  251. package/dist/{chunk-UVN5TMHU.js → chunk-ESXAECZ3.js} +2 -2
  252. package/dist/{chunk-3SOIESJM.js → chunk-EWZ2RLNG.js} +2 -2
  253. package/dist/{chunk-CMKGILJK.js → chunk-FBA2NXYH.js} +4 -4
  254. package/dist/{chunk-O6N4ABCA.js → chunk-FER6EVIY.js} +2 -2
  255. package/dist/{chunk-DF5EAHDN.js → chunk-FLWQJDJ5.js} +5 -5
  256. package/dist/{chunk-PTAG4PDC.js → chunk-FNXCFIPW.js} +2 -2
  257. package/dist/chunk-FPSS23S4.js +36 -0
  258. package/dist/chunk-FPSS23S4.js.map +1 -0
  259. package/dist/{chunk-BJEJFISW.js → chunk-FSDQQQIA.js} +3 -3
  260. package/dist/{chunk-PTF5B7TJ.js → chunk-G5UQBTXY.js} +2 -2
  261. package/dist/{chunk-4E3ZJRTZ.js → chunk-G6ICCGJ3.js} +2 -2
  262. package/dist/{chunk-NRTE7DNV.js → chunk-GIWFLWXG.js} +4 -4
  263. package/dist/{chunk-MM4FNWI4.js → chunk-GMHIOYB7.js} +4 -4
  264. package/dist/{chunk-6DK6Z4UN.js → chunk-GOCODNQS.js} +3 -3
  265. package/dist/{chunk-TPQTRNER.js → chunk-GSCGKJNK.js} +2 -2
  266. package/dist/{chunk-7VMZGLYI.js → chunk-GTHCHCWW.js} +3 -3
  267. package/dist/{chunk-SQJIKMN3.js → chunk-GTRAH4FG.js} +2 -2
  268. package/dist/{chunk-ZYAZUPPV.js → chunk-GU7T2S5N.js} +3 -3
  269. package/dist/{chunk-JKHKLL5W.js → chunk-H6BX6WOW.js} +3 -3
  270. package/dist/{chunk-IMZCQBOT.js → chunk-H6MJFMHZ.js} +3 -3
  271. package/dist/{chunk-HSOXMJOT.js → chunk-HEGV4QMS.js} +2 -2
  272. package/dist/chunk-HROITVQJ.js +85 -0
  273. package/dist/chunk-HROITVQJ.js.map +1 -0
  274. package/dist/{chunk-OF4TIKYC.js → chunk-HTMQGS63.js} +17 -9
  275. package/dist/chunk-HTMQGS63.js.map +1 -0
  276. package/dist/{chunk-NC7PVOEK.js → chunk-HWVPLFIW.js} +2 -2
  277. package/dist/{chunk-IMDQUHBJ.js → chunk-HYEIA25Y.js} +2 -2
  278. package/dist/{chunk-ECJBYNLJ.js → chunk-ICAMYP5M.js} +2 -2
  279. package/dist/{chunk-DJAXC5OK.js → chunk-IFSXVU2S.js} +2 -2
  280. package/dist/{chunk-I4MRDSUF.js → chunk-IJR6VOLU.js} +3 -3
  281. package/dist/{chunk-YCVD6CI3.js → chunk-IN3VQFKS.js} +2 -2
  282. package/dist/{chunk-BJFH6JI5.js → chunk-IZXYFWA4.js} +13 -13
  283. package/dist/{chunk-MFROMEKA.js → chunk-J2BTILRR.js} +3 -3
  284. package/dist/{chunk-NCYMNCJO.js → chunk-J2WY42FA.js} +2 -2
  285. package/dist/{chunk-DGMR6JEJ.js → chunk-J4XSTXZP.js} +2 -2
  286. package/dist/{chunk-ZTPXACWB.js → chunk-JKL5S7UQ.js} +6 -6
  287. package/dist/{chunk-P77WNZDY.js → chunk-JMHEFZOB.js} +2 -2
  288. package/dist/{chunk-IDANQPRH.js → chunk-JV3UI7BH.js} +3 -3
  289. package/dist/{chunk-NW53H5RW.js → chunk-JV5ULONH.js} +166 -65
  290. package/dist/chunk-JV5ULONH.js.map +1 -0
  291. package/dist/{chunk-FVXBNBHO.js → chunk-K3D7IQQP.js} +6 -6
  292. package/dist/{chunk-XEQMZB3C.js → chunk-K4DQS2ML.js} +24 -6
  293. package/dist/chunk-K4DQS2ML.js.map +1 -0
  294. package/dist/{chunk-GKVJIDHF.js → chunk-KFNZZ2N6.js} +2 -2
  295. package/dist/{chunk-I4QEJ62Y.js → chunk-KI46GKMD.js} +7 -7
  296. package/dist/{chunk-SIRLACNZ.js → chunk-KO3OHHY2.js} +3 -3
  297. package/dist/{chunk-NULUNM7H.js → chunk-KUE5BOQE.js} +5 -5
  298. package/dist/{chunk-O3LKCBP5.js → chunk-LIJNVIT3.js} +3 -3
  299. package/dist/{chunk-JWB44UGJ.js → chunk-LIJPDVYP.js} +2 -2
  300. package/dist/{chunk-KYS77RPN.js → chunk-LPKJ77EK.js} +2 -2
  301. package/dist/{chunk-RMFKVOM7.js → chunk-LQKVNREV.js} +4 -4
  302. package/dist/{chunk-E7XERZWC.js → chunk-LTJFV2JI.js} +2 -2
  303. package/dist/{chunk-INXGSG3J.js → chunk-LVDNY5RC.js} +2 -2
  304. package/dist/{chunk-2INLDVK3.js → chunk-LVELUUK6.js} +2 -2
  305. package/dist/{chunk-TAT5USZN.js → chunk-M3FDGRB4.js} +3 -3
  306. package/dist/{chunk-5EWSRZ2Y.js → chunk-M3HGBO2Y.js} +1 -1
  307. package/dist/{chunk-J3DY5HWQ.js → chunk-M5IQVMLR.js} +4 -4
  308. package/dist/{chunk-53AGXXZM.js → chunk-MKDFYE2E.js} +2 -2
  309. package/dist/{chunk-4SAWSRAA.js → chunk-MRECRNVU.js} +5 -5
  310. package/dist/{chunk-2I7HDP53.js → chunk-MT2R57SF.js} +2 -2
  311. package/dist/{chunk-Z7Y523PS.js → chunk-MV2CLIO6.js} +6 -6
  312. package/dist/{chunk-JZ4NLCAP.js → chunk-MZY3VKKM.js} +2 -2
  313. package/dist/{chunk-YENLNISG.js → chunk-N3FM4BNA.js} +2 -2
  314. package/dist/{chunk-DZWARC4M.js → chunk-NFCS5WYC.js} +3 -3
  315. package/dist/{chunk-I5QZJODL.js → chunk-NQ2CPQJF.js} +3 -3
  316. package/dist/{chunk-6DVCC7QS.js → chunk-OBGOLHCP.js} +164 -43
  317. package/dist/chunk-OBGOLHCP.js.map +1 -0
  318. package/dist/{chunk-CUIWCGMA.js → chunk-OCXEY7HE.js} +2 -2
  319. package/dist/{chunk-VTTAJOQ7.js → chunk-OCXTTKVA.js} +2 -2
  320. package/dist/{chunk-KRDR5RJD.js → chunk-OGU73VUN.js} +2 -2
  321. package/dist/{chunk-YIRVLKAX.js → chunk-OI6VI6SU.js} +9 -9
  322. package/dist/{chunk-BHNSJVBC.js → chunk-OJWDNNW3.js} +5 -5
  323. package/dist/{chunk-X6KAJI3V.js → chunk-OK7BQMCI.js} +9 -9
  324. package/dist/{chunk-I5B5L6Q4.js → chunk-OOOSGPJL.js} +1 -1
  325. package/dist/chunk-OP2GD6QW.js +166 -0
  326. package/dist/chunk-OP2GD6QW.js.map +1 -0
  327. package/dist/{chunk-TUIN4MB7.js → chunk-ORV7EFSL.js} +4 -4
  328. package/dist/{chunk-JDTGRRNU.js → chunk-OSJ366KR.js} +49 -31
  329. package/dist/chunk-OSJ366KR.js.map +1 -0
  330. package/dist/{chunk-3IK6UYO6.js → chunk-OTW25A6I.js} +3 -3
  331. package/dist/{chunk-NPGISCU6.js → chunk-OWET7EY2.js} +16 -16
  332. package/dist/{chunk-CRAOSVHC.js → chunk-OXQ2SXVC.js} +2 -2
  333. package/dist/{chunk-3ED2U6XE.js → chunk-OYCK4JRS.js} +2 -2
  334. package/dist/{chunk-YQXTDZSU.js → chunk-OYOFPNLC.js} +4 -4
  335. package/dist/{chunk-4NQHXYMW.js → chunk-PD7NWM7V.js} +2 -2
  336. package/dist/{chunk-4YCA2Y73.js → chunk-PF2WU2IL.js} +3 -3
  337. package/dist/{chunk-Z654FWNU.js → chunk-PLYVGZIN.js} +2 -2
  338. package/dist/{chunk-MVW6HNPI.js → chunk-PRT4J2DL.js} +2 -2
  339. package/dist/{chunk-TXLIEOJX.js → chunk-PSM3CU7N.js} +111 -80
  340. package/dist/chunk-PSM3CU7N.js.map +1 -0
  341. package/dist/{chunk-OPWCMA4D.js → chunk-PUUEI4W3.js} +6 -6
  342. package/dist/{chunk-RLBKLAEY.js → chunk-PVB4YVDP.js} +2 -2
  343. package/dist/{chunk-NXCMHIKI.js → chunk-PWUSSSSL.js} +2 -2
  344. package/dist/{chunk-MJUCFQMS.js → chunk-PYB4BFEC.js} +3 -3
  345. package/dist/{chunk-2FSBSCZJ.js → chunk-PZKHST7A.js} +2 -2
  346. package/dist/{chunk-QZAAUQRN.js → chunk-Q5EZNBPI.js} +3 -3
  347. package/dist/{chunk-ZHDFQITM.js → chunk-Q5K2J5GG.js} +2 -2
  348. package/dist/{chunk-7T2ZE3VT.js → chunk-QPQ7R77C.js} +8 -1
  349. package/dist/chunk-QPQ7R77C.js.map +1 -0
  350. package/dist/{chunk-6BCXNDEI.js → chunk-QQIZMVAJ.js} +74 -60
  351. package/dist/chunk-QQIZMVAJ.js.map +1 -0
  352. package/dist/{chunk-OV6QJRT4.js → chunk-QRECBCJM.js} +2 -2
  353. package/dist/{chunk-3GZA4BUW.js → chunk-QURYQFDN.js} +2 -2
  354. package/dist/{chunk-VS7AHPCZ.js → chunk-R33SBMB7.js} +3 -3
  355. package/dist/{chunk-KCBMFSMS.js → chunk-R4JA5JFI.js} +3 -3
  356. package/dist/{chunk-HC4JFZVU.js → chunk-R5QAL43H.js} +2 -2
  357. package/dist/{chunk-QPSGCC5D.js → chunk-RGR57NYY.js} +2 -2
  358. package/dist/{chunk-XWFAMUZQ.js → chunk-RHXYO4H2.js} +2 -2
  359. package/dist/{chunk-Y4BB2KS2.js → chunk-RISUROBM.js} +7 -7
  360. package/dist/{chunk-U3DN4HEY.js → chunk-RMCLFSMX.js} +2 -2
  361. package/dist/{chunk-YK7756IF.js → chunk-RTZANSSC.js} +3 -3
  362. package/dist/{chunk-ZEG4VPBL.js → chunk-S27VZ5DO.js} +6 -6
  363. package/dist/{chunk-54YW6SZZ.js → chunk-SBXSKRFA.js} +3 -3
  364. package/dist/{chunk-HAX4LCR5.js → chunk-SFIXTOOJ.js} +3 -3
  365. package/dist/{chunk-QIOQ2NPQ.js → chunk-SGH7I7OY.js} +2 -2
  366. package/dist/{chunk-K2A5PXQ5.js → chunk-SJYTQLN3.js} +3 -3
  367. package/dist/{chunk-2Z3NQNTM.js → chunk-SK5S2PCK.js} +15 -15
  368. package/dist/{chunk-X3MWB2QU.js → chunk-SN2WENRP.js} +3 -3
  369. package/dist/{chunk-OSY5K7L7.js → chunk-SP44O3OU.js} +2 -2
  370. package/dist/{chunk-OZCBM3UC.js → chunk-SSR4ZX52.js} +2 -2
  371. package/dist/{chunk-QCSJ4CWE.js → chunk-SXGJL7UT.js} +14 -14
  372. package/dist/{chunk-NC55IFN3.js → chunk-T67LTMSW.js} +10 -10
  373. package/dist/{chunk-AXHZYXUV.js → chunk-TDTD66BK.js} +2 -2
  374. package/dist/{chunk-NGJJJPZZ.js → chunk-TK5FWVZR.js} +3 -3
  375. package/dist/{chunk-YPWU5KPE.js → chunk-TKQL7EDB.js} +56 -19
  376. package/dist/chunk-TKQL7EDB.js.map +1 -0
  377. package/dist/{chunk-2OP6WLGV.js → chunk-TNSJFZ6Q.js} +4 -4
  378. package/dist/{chunk-O732GAFC.js → chunk-U4LTPFD2.js} +2 -2
  379. package/dist/{chunk-4DVNUCRR.js → chunk-U5UGM5XD.js} +6 -6
  380. package/dist/{chunk-UJK53QFL.js → chunk-UBRQ3PQD.js} +2 -2
  381. package/dist/{chunk-SODC7T6L.js → chunk-UMX6DZME.js} +2 -2
  382. package/dist/{chunk-YLS6QE5G.js → chunk-UO35OEOX.js} +4 -4
  383. package/dist/{chunk-SHHJCL7X.js → chunk-UTRNLNCW.js} +3 -3
  384. package/dist/{chunk-HEFPPMBQ.js → chunk-UU5FBVRX.js} +2 -2
  385. package/dist/{chunk-GQXZPKK7.js → chunk-V6UOVHW3.js} +2 -2
  386. package/dist/{chunk-GVN5SZLX.js → chunk-VATYK3JQ.js} +3 -3
  387. package/dist/{chunk-7TIX2UAR.js → chunk-VCJQQYRE.js} +4 -4
  388. package/dist/{chunk-6WD2INST.js → chunk-WDASYY4S.js} +7 -7
  389. package/dist/{chunk-DXBYWSL5.js → chunk-WIFDNUKD.js} +3 -3
  390. package/dist/{chunk-RT7CJMER.js → chunk-WIXHUBQN.js} +2 -2
  391. package/dist/{chunk-57AZS3IE.js → chunk-WRMUXZ7C.js} +3 -3
  392. package/dist/{chunk-2CLNIEK4.js → chunk-WTSQUCHB.js} +3 -3
  393. package/dist/{chunk-OVKYVZMW.js → chunk-WXF2RTS4.js} +2 -2
  394. package/dist/{chunk-MIHN76LX.js → chunk-WYGTAQMX.js} +3 -3
  395. package/dist/{chunk-2RG7NIAS.js → chunk-X2QJXDE4.js} +10 -10
  396. package/dist/{chunk-GAVYGBFI.js → chunk-XMBOLFFS.js} +2 -2
  397. package/dist/{chunk-T7OXJZCX.js → chunk-XOIDUM2H.js} +1 -1
  398. package/dist/{chunk-ORJPS5VN.js → chunk-XUOYNJPB.js} +97 -37
  399. package/dist/chunk-XUOYNJPB.js.map +1 -0
  400. package/dist/{chunk-XHIQ5I6N.js → chunk-XVLEBB4Y.js} +2 -2
  401. package/dist/{chunk-Q3DPEYX4.js → chunk-XZCCEKPW.js} +7 -7
  402. package/dist/{chunk-T3OWFVMS.js → chunk-Y3XZEKDQ.js} +2 -2
  403. package/dist/{chunk-KODELWYT.js → chunk-YJSCLGAW.js} +3 -3
  404. package/dist/{chunk-ROKQU7WG.js → chunk-YMI27QPF.js} +2 -2
  405. package/dist/{chunk-U7XM7CB4.js → chunk-YNTLWCF4.js} +4 -4
  406. package/dist/{chunk-ZQCND77P.js → chunk-YRYF76OE.js} +2 -2
  407. package/dist/{chunk-2BDT3UZQ.js → chunk-ZAX4XQLN.js} +3 -3
  408. package/dist/{chunk-DXR5PDFP.js → chunk-ZBHGNE2J.js} +3 -3
  409. package/dist/{chunk-I7ITSXSJ.js → chunk-ZR5EKJT6.js} +2 -2
  410. package/dist/{chunk-IZXHMZQ6.js → chunk-ZW5YTIH3.js} +4 -4
  411. package/dist/components/artifacts/artifact-sandbox.d.ts +6 -1
  412. package/dist/components/artifacts/site-view.d.ts +4 -2
  413. package/dist/components/timeline-anchor.d.ts +8 -3
  414. package/dist/components/timeline-reading-progress.d.ts +1 -1
  415. package/dist/components/timeline-settlement.d.ts +1 -1
  416. package/dist/composer-messages.js +2 -2
  417. package/dist/composer.js +10 -10
  418. package/dist/{computer-viewer-TDDO25AV.js → computer-viewer-5LKRCEVQ.js} +5 -5
  419. package/dist/connect.js +13 -14
  420. package/dist/desktop-dictation.js +7 -7
  421. package/dist/desktop.js +2 -2
  422. package/dist/editor.js +2 -2
  423. package/dist/{embedded-new-voice-2G3VLPVQ.js → embedded-new-voice-GHJRY3YL.js} +5 -5
  424. package/dist/{embedded-voice-T5IWOWGD.js → embedded-voice-ASQXBSTX.js} +5 -5
  425. package/dist/{fleet-decision-row-WM64KXP3.js → fleet-decision-row-U7LDVBEM.js} +2 -2
  426. package/dist/in-chat-connect-model.js +5 -5
  427. package/dist/index.js +62 -63
  428. package/dist/interaction.js +6 -6
  429. package/dist/{latest-question-OX56OVQ5.js → latest-question-RNVF262Q.js} +5 -5
  430. package/dist/lib/format.d.ts +10 -0
  431. package/dist/machines.js +4 -4
  432. package/dist/meetings-recorder.js +1 -1
  433. package/dist/meetings.js +24 -24
  434. package/dist/messages/en.d.ts +7 -0
  435. package/dist/messages.js +1 -1
  436. package/dist/{model-policy-picker-menu-SMC6J6QN.js → model-policy-picker-menu-E6XKMFTA.js} +4 -4
  437. package/dist/{payment-page-card-G4U63KUV.js → payment-page-card-DJDKV2LW.js} +6 -5
  438. package/dist/{payment-page-card-G4U63KUV.js.map → payment-page-card-DJDKV2LW.js.map} +1 -1
  439. package/dist/{platform-activity-row-BUZGZAKZ.js → platform-activity-row-MSDCSMET.js} +17 -7
  440. package/dist/platform-activity-row-MSDCSMET.js.map +1 -0
  441. package/dist/{queue-surface-implementation-4KUZ4PJV.js → queue-surface-implementation-GUAIG6TK.js} +5 -5
  442. package/dist/realtime.js +4 -4
  443. package/dist/{recorder-host-WF2RRR56.js → recorder-host-2MYDJPQW.js} +4 -4
  444. package/dist/recordings.js +3 -3
  445. package/dist/{sandbox-files-ESDMOFSD.js → sandbox-files-W5W2LW4K.js} +6 -6
  446. package/dist/session-app.js +173 -167
  447. package/dist/{session-connect-cards-Q53KMMYY.js → session-connect-cards-HPH7JOZP.js} +9 -10
  448. package/dist/session-list-model.js +2 -2
  449. package/dist/{session-realtime-CF3I35WJ.js → session-realtime-SDTKFFIR.js} +3 -3
  450. package/dist/session-realtime-SDTKFFIR.js.map +1 -0
  451. package/dist/session-realtime.js +2 -2
  452. package/dist/session-ui.js +37 -38
  453. package/dist/session.js +9 -9
  454. package/dist/sites.js +2 -2
  455. package/dist/terminal.js +2 -2
  456. package/dist/this-computer.js +3 -3
  457. package/dist/timeline/shared.d.ts +2 -0
  458. package/dist/{timeline-annotation-markers-CJK4RYZ4.js → timeline-annotation-markers-FNILLWNU.js} +2 -2
  459. package/dist/{timeline-annotation-selection-67GF5H26.js → timeline-annotation-selection-MBCIDO2Q.js} +2 -2
  460. package/dist/{timeline-annotations-dialog-ONJPQDJQ.js → timeline-annotations-dialog-JPNKLOTE.js} +3 -3
  461. package/dist/timeline-model.js +6 -6
  462. package/dist/ui/access-list.js +6 -6
  463. package/dist/ui/cadence-picker.js +4 -4
  464. package/dist/ui/choice-cards.js +3 -3
  465. package/dist/ui/confirm-dialog.js +4 -4
  466. package/dist/ui/copy-field.js +3 -3
  467. package/dist/ui/detail-page.js +5 -5
  468. package/dist/ui/detail-sheet.js +4 -4
  469. package/dist/ui/dialog.js +2 -2
  470. package/dist/ui/disclosure.js +5 -5
  471. package/dist/ui/email-chips-input.js +3 -3
  472. package/dist/ui/field.js +2 -2
  473. package/dist/ui/flush-form-page.js +4 -4
  474. package/dist/ui/form-dialog.js +3 -3
  475. package/dist/ui/list-row.js +3 -3
  476. package/dist/ui/page-header.js +2 -2
  477. package/dist/ui/relative-time.js +2 -2
  478. package/dist/ui/revision-history.js +4 -4
  479. package/dist/ui/role-select.js +6 -6
  480. package/dist/ui/select-menu.js +3 -3
  481. package/dist/ui/sheet.js +2 -2
  482. package/dist/ui/usage-meter.js +3 -3
  483. package/dist/ui/window-bar-title.d.ts +7 -3
  484. package/dist/ui/window-bar-title.js +1 -1
  485. package/dist/usage.js +2 -2
  486. package/dist/workbench.js +4 -4
  487. package/package.json +4 -4
  488. package/src/app/components/artifacts/site-actions.tsx +105 -0
  489. package/src/app/components/rail/session-header-copy.test.tsx +172 -0
  490. package/src/app/components/rail/session-header.tsx +68 -12
  491. package/src/app/components/rail/session-list.tsx +20 -0
  492. package/src/app/components/rail/site-session-group-heading.test.tsx +210 -0
  493. package/src/app/components/rail/site-session-group-heading.tsx +119 -60
  494. package/src/app/components/session/failed-session-actions.test.tsx +4 -0
  495. package/src/app/components/window-bar.tsx +63 -15
  496. package/src/app/lib/composer-send-blocking.tsx +312 -1
  497. package/src/app/lib/copy-link.ts +10 -0
  498. package/src/app/lib/session-composer-readiness.ts +4 -3
  499. package/src/app/lib/site-sidebar-bridge.test.tsx +67 -0
  500. package/src/app/lib/site-sidebar-bridge.ts +57 -0
  501. package/src/app/routes/session.tsx +45 -12
  502. package/src/app/routes/sessions-index.tsx +164 -105
  503. package/src/app/routes/site-view.test.tsx +74 -6
  504. package/src/app/routes/site-view.tsx +135 -14
  505. package/src/components/approval-surface.tsx +78 -3
  506. package/src/components/artifacts/artifact-sandbox.tsx +27 -2
  507. package/src/components/artifacts/site-view.tsx +13 -1
  508. package/src/components/message-timeline.tsx +25 -52
  509. package/src/components/session-capability-frame.tsx +2 -30
  510. package/src/components/timeline-anchor.tsx +19 -14
  511. package/src/components/timeline-reading-progress.ts +1 -2
  512. package/src/components/timeline-settlement.ts +3 -3
  513. package/src/lib/format.ts +46 -1
  514. package/src/messages/en.ts +11 -0
  515. package/src/timeline/platform-activity-row.tsx +20 -8
  516. package/src/timeline/shared.tsx +203 -32
  517. package/src/ui/window-bar-title.test.tsx +37 -0
  518. package/src/ui/window-bar-title.tsx +13 -6
  519. package/styles/compiled.css +5 -0
  520. package/dist/chunk-5MOJZORA.js.map +0 -1
  521. package/dist/chunk-6BCXNDEI.js.map +0 -1
  522. package/dist/chunk-6DVCC7QS.js.map +0 -1
  523. package/dist/chunk-7T2ZE3VT.js.map +0 -1
  524. package/dist/chunk-AFRGP2VP.js +0 -17
  525. package/dist/chunk-AFRGP2VP.js.map +0 -1
  526. package/dist/chunk-CRU35QQH.js.map +0 -1
  527. package/dist/chunk-FO4LYKJL.js +0 -197
  528. package/dist/chunk-FO4LYKJL.js.map +0 -1
  529. package/dist/chunk-HD5X76TP.js.map +0 -1
  530. package/dist/chunk-JDTGRRNU.js.map +0 -1
  531. package/dist/chunk-NW53H5RW.js.map +0 -1
  532. package/dist/chunk-OF4TIKYC.js.map +0 -1
  533. package/dist/chunk-ORJPS5VN.js.map +0 -1
  534. package/dist/chunk-TXLIEOJX.js.map +0 -1
  535. package/dist/chunk-VBUVBHFJ.js +0 -16
  536. package/dist/chunk-VBUVBHFJ.js.map +0 -1
  537. package/dist/chunk-XEQMZB3C.js.map +0 -1
  538. package/dist/chunk-YPWU5KPE.js.map +0 -1
  539. package/dist/components/timeline-answer-follow.d.ts +0 -8
  540. package/dist/platform-activity-row-BUZGZAKZ.js.map +0 -1
  541. package/src/components/timeline-answer-follow.ts +0 -15
  542. /package/dist/{browser-viewer-TC27OCIP.js.map → app/components/artifacts/site-actions.js.map} +0 -0
  543. /package/dist/{chat-interactive-block-RWPQBHVS.js.map → browser-viewer-ZHQDVHZ2.js.map} +0 -0
  544. /package/dist/{computer-viewer-TDDO25AV.js.map → chat-interactive-block-VSDD6X3M.js.map} +0 -0
  545. /package/dist/{chunk-C43KRXGA.js.map → chunk-2GCHGWNE.js.map} +0 -0
  546. /package/dist/{chunk-XLH7QY2R.js.map → chunk-2J77TWGH.js.map} +0 -0
  547. /package/dist/{chunk-77WAKEAH.js.map → chunk-2OXSB2OL.js.map} +0 -0
  548. /package/dist/{chunk-H3T7IWNA.js.map → chunk-2VJOSU4H.js.map} +0 -0
  549. /package/dist/{chunk-N6AACDUW.js.map → chunk-34NV52R3.js.map} +0 -0
  550. /package/dist/{chunk-L7YTNTIK.js.map → chunk-3CDJSKDW.js.map} +0 -0
  551. /package/dist/{chunk-EWSOC6WF.js.map → chunk-3DRLCX5V.js.map} +0 -0
  552. /package/dist/{chunk-JEUPAVYY.js.map → chunk-3L465FBR.js.map} +0 -0
  553. /package/dist/{chunk-5NWEKLDZ.js.map → chunk-3NNAC43A.js.map} +0 -0
  554. /package/dist/{chunk-EDI6SJ2N.js.map → chunk-3OK7Y6ES.js.map} +0 -0
  555. /package/dist/{chunk-AWKES45Y.js.map → chunk-3PM3M2Q6.js.map} +0 -0
  556. /package/dist/{chunk-I7XIZRFD.js.map → chunk-3PZ3LRPV.js.map} +0 -0
  557. /package/dist/{chunk-AW2MQB37.js.map → chunk-44JWVYJB.js.map} +0 -0
  558. /package/dist/{chunk-2M3J7ZWQ.js.map → chunk-467WDSOK.js.map} +0 -0
  559. /package/dist/{chunk-UTIAXH52.js.map → chunk-477DTTMH.js.map} +0 -0
  560. /package/dist/{chunk-J5F5HPPW.js.map → chunk-4BWMAGJJ.js.map} +0 -0
  561. /package/dist/{chunk-YSJEAAOL.js.map → chunk-4F3AEJI6.js.map} +0 -0
  562. /package/dist/{chunk-LHPNABDH.js.map → chunk-4JXPLTWV.js.map} +0 -0
  563. /package/dist/{chunk-RQKLF42C.js.map → chunk-4K64EKM7.js.map} +0 -0
  564. /package/dist/{chunk-NUNZS36W.js.map → chunk-4O2XWOLZ.js.map} +0 -0
  565. /package/dist/{chunk-QB2KMIDP.js.map → chunk-4SJAEPM2.js.map} +0 -0
  566. /package/dist/{chunk-6JHU2UBS.js.map → chunk-4Z5X7PLC.js.map} +0 -0
  567. /package/dist/{chunk-2STUPWEL.js.map → chunk-54U6ZBEX.js.map} +0 -0
  568. /package/dist/{chunk-XXSOHN35.js.map → chunk-5FLYHX5R.js.map} +0 -0
  569. /package/dist/{chunk-MIYFS2XN.js.map → chunk-5MHMCE2G.js.map} +0 -0
  570. /package/dist/{chunk-YWVI6ZMK.js.map → chunk-5MIBQ4P5.js.map} +0 -0
  571. /package/dist/{chunk-5O2FCCHZ.js.map → chunk-6QK65ZWM.js.map} +0 -0
  572. /package/dist/{chunk-RPVREAU7.js.map → chunk-736RUNIA.js.map} +0 -0
  573. /package/dist/{chunk-2KALVELR.js.map → chunk-74CBR5YE.js.map} +0 -0
  574. /package/dist/{chunk-5IE76VCY.js.map → chunk-752WXSDN.js.map} +0 -0
  575. /package/dist/{chunk-OPJJSKUK.js.map → chunk-77B6UCNK.js.map} +0 -0
  576. /package/dist/{chunk-SEO7TICN.js.map → chunk-77BHKC43.js.map} +0 -0
  577. /package/dist/{chunk-ZUA3JMI6.js.map → chunk-77SYIH6O.js.map} +0 -0
  578. /package/dist/{chunk-ILDXWY37.js.map → chunk-7AI4E7PV.js.map} +0 -0
  579. /package/dist/{chunk-C372BFOV.js.map → chunk-7NLF35YL.js.map} +0 -0
  580. /package/dist/{chunk-IFB3WJ36.js.map → chunk-7YTR3UFO.js.map} +0 -0
  581. /package/dist/{chunk-BMICEQZQ.js.map → chunk-7Z76QP64.js.map} +0 -0
  582. /package/dist/{chunk-YWIFM7D7.js.map → chunk-AAS7OWV6.js.map} +0 -0
  583. /package/dist/{chunk-5QAY6K77.js.map → chunk-AB5IW227.js.map} +0 -0
  584. /package/dist/{chunk-ZBIXBQNI.js.map → chunk-ABJZDRW2.js.map} +0 -0
  585. /package/dist/{chunk-4DVJ6ONS.js.map → chunk-AH3DGOTK.js.map} +0 -0
  586. /package/dist/{chunk-HGKTHF2U.js.map → chunk-AJBDAVX3.js.map} +0 -0
  587. /package/dist/{chunk-5YKW2K6I.js.map → chunk-AJDGP2N4.js.map} +0 -0
  588. /package/dist/{chunk-IXPTECSC.js.map → chunk-AVXDIRRW.js.map} +0 -0
  589. /package/dist/{chunk-QK5EFEUT.js.map → chunk-BASI553K.js.map} +0 -0
  590. /package/dist/{chunk-Z4FMAFNH.js.map → chunk-BQYRZIZ7.js.map} +0 -0
  591. /package/dist/{chunk-DZXEDSQI.js.map → chunk-CEMSIU4Z.js.map} +0 -0
  592. /package/dist/{chunk-FZC5N55X.js.map → chunk-CH4UQ4NO.js.map} +0 -0
  593. /package/dist/{chunk-7X6SDK2C.js.map → chunk-CHU3RDV4.js.map} +0 -0
  594. /package/dist/{chunk-Y4OBB2VN.js.map → chunk-CV4VVLPZ.js.map} +0 -0
  595. /package/dist/{chunk-JQL7ZH6C.js.map → chunk-CXAN2FHF.js.map} +0 -0
  596. /package/dist/{chunk-F2OPHAUN.js.map → chunk-CYDXCILL.js.map} +0 -0
  597. /package/dist/{chunk-3PZ7JZI2.js.map → chunk-D3PTVN2I.js.map} +0 -0
  598. /package/dist/{chunk-FPXASDG5.js.map → chunk-D5TIVCXG.js.map} +0 -0
  599. /package/dist/{chunk-7W37NS3I.js.map → chunk-D74Z2N4K.js.map} +0 -0
  600. /package/dist/{chunk-MNZG4OHU.js.map → chunk-DCEQCGVN.js.map} +0 -0
  601. /package/dist/{chunk-ND2BXV3P.js.map → chunk-DEHLWZSI.js.map} +0 -0
  602. /package/dist/{chunk-2YUOVM3G.js.map → chunk-DIP7YALH.js.map} +0 -0
  603. /package/dist/{chunk-6PZ7OBYU.js.map → chunk-DLVIRJGK.js.map} +0 -0
  604. /package/dist/{chunk-KLEUWIMZ.js.map → chunk-DQPIEQGP.js.map} +0 -0
  605. /package/dist/{chunk-T2QX3FDP.js.map → chunk-DWJ6J3YW.js.map} +0 -0
  606. /package/dist/{chunk-3CPWWGNK.js.map → chunk-E5KOWRDU.js.map} +0 -0
  607. /package/dist/{chunk-6WGRDRMA.js.map → chunk-EBIVTDEG.js.map} +0 -0
  608. /package/dist/{chunk-KUDGXAF7.js.map → chunk-EBTUPRRQ.js.map} +0 -0
  609. /package/dist/{chunk-5CPEEAFD.js.map → chunk-EDDKPIIV.js.map} +0 -0
  610. /package/dist/{chunk-TX3VECZU.js.map → chunk-EGKARC53.js.map} +0 -0
  611. /package/dist/{chunk-JEA3QDX7.js.map → chunk-EKJHOWTZ.js.map} +0 -0
  612. /package/dist/{chunk-UVN5TMHU.js.map → chunk-ESXAECZ3.js.map} +0 -0
  613. /package/dist/{chunk-3SOIESJM.js.map → chunk-EWZ2RLNG.js.map} +0 -0
  614. /package/dist/{chunk-CMKGILJK.js.map → chunk-FBA2NXYH.js.map} +0 -0
  615. /package/dist/{chunk-O6N4ABCA.js.map → chunk-FER6EVIY.js.map} +0 -0
  616. /package/dist/{chunk-DF5EAHDN.js.map → chunk-FLWQJDJ5.js.map} +0 -0
  617. /package/dist/{chunk-PTAG4PDC.js.map → chunk-FNXCFIPW.js.map} +0 -0
  618. /package/dist/{chunk-BJEJFISW.js.map → chunk-FSDQQQIA.js.map} +0 -0
  619. /package/dist/{chunk-PTF5B7TJ.js.map → chunk-G5UQBTXY.js.map} +0 -0
  620. /package/dist/{chunk-4E3ZJRTZ.js.map → chunk-G6ICCGJ3.js.map} +0 -0
  621. /package/dist/{chunk-NRTE7DNV.js.map → chunk-GIWFLWXG.js.map} +0 -0
  622. /package/dist/{chunk-MM4FNWI4.js.map → chunk-GMHIOYB7.js.map} +0 -0
  623. /package/dist/{chunk-6DK6Z4UN.js.map → chunk-GOCODNQS.js.map} +0 -0
  624. /package/dist/{chunk-TPQTRNER.js.map → chunk-GSCGKJNK.js.map} +0 -0
  625. /package/dist/{chunk-7VMZGLYI.js.map → chunk-GTHCHCWW.js.map} +0 -0
  626. /package/dist/{chunk-SQJIKMN3.js.map → chunk-GTRAH4FG.js.map} +0 -0
  627. /package/dist/{chunk-ZYAZUPPV.js.map → chunk-GU7T2S5N.js.map} +0 -0
  628. /package/dist/{chunk-JKHKLL5W.js.map → chunk-H6BX6WOW.js.map} +0 -0
  629. /package/dist/{chunk-IMZCQBOT.js.map → chunk-H6MJFMHZ.js.map} +0 -0
  630. /package/dist/{chunk-HSOXMJOT.js.map → chunk-HEGV4QMS.js.map} +0 -0
  631. /package/dist/{chunk-NC7PVOEK.js.map → chunk-HWVPLFIW.js.map} +0 -0
  632. /package/dist/{chunk-IMDQUHBJ.js.map → chunk-HYEIA25Y.js.map} +0 -0
  633. /package/dist/{chunk-ECJBYNLJ.js.map → chunk-ICAMYP5M.js.map} +0 -0
  634. /package/dist/{chunk-DJAXC5OK.js.map → chunk-IFSXVU2S.js.map} +0 -0
  635. /package/dist/{chunk-I4MRDSUF.js.map → chunk-IJR6VOLU.js.map} +0 -0
  636. /package/dist/{chunk-YCVD6CI3.js.map → chunk-IN3VQFKS.js.map} +0 -0
  637. /package/dist/{chunk-BJFH6JI5.js.map → chunk-IZXYFWA4.js.map} +0 -0
  638. /package/dist/{chunk-MFROMEKA.js.map → chunk-J2BTILRR.js.map} +0 -0
  639. /package/dist/{chunk-NCYMNCJO.js.map → chunk-J2WY42FA.js.map} +0 -0
  640. /package/dist/{chunk-DGMR6JEJ.js.map → chunk-J4XSTXZP.js.map} +0 -0
  641. /package/dist/{chunk-ZTPXACWB.js.map → chunk-JKL5S7UQ.js.map} +0 -0
  642. /package/dist/{chunk-P77WNZDY.js.map → chunk-JMHEFZOB.js.map} +0 -0
  643. /package/dist/{chunk-IDANQPRH.js.map → chunk-JV3UI7BH.js.map} +0 -0
  644. /package/dist/{chunk-FVXBNBHO.js.map → chunk-K3D7IQQP.js.map} +0 -0
  645. /package/dist/{chunk-GKVJIDHF.js.map → chunk-KFNZZ2N6.js.map} +0 -0
  646. /package/dist/{chunk-I4QEJ62Y.js.map → chunk-KI46GKMD.js.map} +0 -0
  647. /package/dist/{chunk-SIRLACNZ.js.map → chunk-KO3OHHY2.js.map} +0 -0
  648. /package/dist/{chunk-NULUNM7H.js.map → chunk-KUE5BOQE.js.map} +0 -0
  649. /package/dist/{chunk-O3LKCBP5.js.map → chunk-LIJNVIT3.js.map} +0 -0
  650. /package/dist/{chunk-JWB44UGJ.js.map → chunk-LIJPDVYP.js.map} +0 -0
  651. /package/dist/{chunk-KYS77RPN.js.map → chunk-LPKJ77EK.js.map} +0 -0
  652. /package/dist/{chunk-RMFKVOM7.js.map → chunk-LQKVNREV.js.map} +0 -0
  653. /package/dist/{chunk-E7XERZWC.js.map → chunk-LTJFV2JI.js.map} +0 -0
  654. /package/dist/{chunk-INXGSG3J.js.map → chunk-LVDNY5RC.js.map} +0 -0
  655. /package/dist/{chunk-2INLDVK3.js.map → chunk-LVELUUK6.js.map} +0 -0
  656. /package/dist/{chunk-TAT5USZN.js.map → chunk-M3FDGRB4.js.map} +0 -0
  657. /package/dist/{chunk-5EWSRZ2Y.js.map → chunk-M3HGBO2Y.js.map} +0 -0
  658. /package/dist/{chunk-J3DY5HWQ.js.map → chunk-M5IQVMLR.js.map} +0 -0
  659. /package/dist/{chunk-53AGXXZM.js.map → chunk-MKDFYE2E.js.map} +0 -0
  660. /package/dist/{chunk-4SAWSRAA.js.map → chunk-MRECRNVU.js.map} +0 -0
  661. /package/dist/{chunk-2I7HDP53.js.map → chunk-MT2R57SF.js.map} +0 -0
  662. /package/dist/{chunk-Z7Y523PS.js.map → chunk-MV2CLIO6.js.map} +0 -0
  663. /package/dist/{chunk-JZ4NLCAP.js.map → chunk-MZY3VKKM.js.map} +0 -0
  664. /package/dist/{chunk-YENLNISG.js.map → chunk-N3FM4BNA.js.map} +0 -0
  665. /package/dist/{chunk-DZWARC4M.js.map → chunk-NFCS5WYC.js.map} +0 -0
  666. /package/dist/{chunk-I5QZJODL.js.map → chunk-NQ2CPQJF.js.map} +0 -0
  667. /package/dist/{chunk-CUIWCGMA.js.map → chunk-OCXEY7HE.js.map} +0 -0
  668. /package/dist/{chunk-VTTAJOQ7.js.map → chunk-OCXTTKVA.js.map} +0 -0
  669. /package/dist/{chunk-KRDR5RJD.js.map → chunk-OGU73VUN.js.map} +0 -0
  670. /package/dist/{chunk-YIRVLKAX.js.map → chunk-OI6VI6SU.js.map} +0 -0
  671. /package/dist/{chunk-BHNSJVBC.js.map → chunk-OJWDNNW3.js.map} +0 -0
  672. /package/dist/{chunk-X6KAJI3V.js.map → chunk-OK7BQMCI.js.map} +0 -0
  673. /package/dist/{chunk-I5B5L6Q4.js.map → chunk-OOOSGPJL.js.map} +0 -0
  674. /package/dist/{chunk-TUIN4MB7.js.map → chunk-ORV7EFSL.js.map} +0 -0
  675. /package/dist/{chunk-3IK6UYO6.js.map → chunk-OTW25A6I.js.map} +0 -0
  676. /package/dist/{chunk-NPGISCU6.js.map → chunk-OWET7EY2.js.map} +0 -0
  677. /package/dist/{chunk-CRAOSVHC.js.map → chunk-OXQ2SXVC.js.map} +0 -0
  678. /package/dist/{chunk-3ED2U6XE.js.map → chunk-OYCK4JRS.js.map} +0 -0
  679. /package/dist/{chunk-YQXTDZSU.js.map → chunk-OYOFPNLC.js.map} +0 -0
  680. /package/dist/{chunk-4NQHXYMW.js.map → chunk-PD7NWM7V.js.map} +0 -0
  681. /package/dist/{chunk-4YCA2Y73.js.map → chunk-PF2WU2IL.js.map} +0 -0
  682. /package/dist/{chunk-Z654FWNU.js.map → chunk-PLYVGZIN.js.map} +0 -0
  683. /package/dist/{chunk-MVW6HNPI.js.map → chunk-PRT4J2DL.js.map} +0 -0
  684. /package/dist/{chunk-OPWCMA4D.js.map → chunk-PUUEI4W3.js.map} +0 -0
  685. /package/dist/{chunk-RLBKLAEY.js.map → chunk-PVB4YVDP.js.map} +0 -0
  686. /package/dist/{chunk-NXCMHIKI.js.map → chunk-PWUSSSSL.js.map} +0 -0
  687. /package/dist/{chunk-MJUCFQMS.js.map → chunk-PYB4BFEC.js.map} +0 -0
  688. /package/dist/{chunk-2FSBSCZJ.js.map → chunk-PZKHST7A.js.map} +0 -0
  689. /package/dist/{chunk-QZAAUQRN.js.map → chunk-Q5EZNBPI.js.map} +0 -0
  690. /package/dist/{chunk-ZHDFQITM.js.map → chunk-Q5K2J5GG.js.map} +0 -0
  691. /package/dist/{chunk-OV6QJRT4.js.map → chunk-QRECBCJM.js.map} +0 -0
  692. /package/dist/{chunk-3GZA4BUW.js.map → chunk-QURYQFDN.js.map} +0 -0
  693. /package/dist/{chunk-VS7AHPCZ.js.map → chunk-R33SBMB7.js.map} +0 -0
  694. /package/dist/{chunk-KCBMFSMS.js.map → chunk-R4JA5JFI.js.map} +0 -0
  695. /package/dist/{chunk-HC4JFZVU.js.map → chunk-R5QAL43H.js.map} +0 -0
  696. /package/dist/{chunk-QPSGCC5D.js.map → chunk-RGR57NYY.js.map} +0 -0
  697. /package/dist/{chunk-XWFAMUZQ.js.map → chunk-RHXYO4H2.js.map} +0 -0
  698. /package/dist/{chunk-Y4BB2KS2.js.map → chunk-RISUROBM.js.map} +0 -0
  699. /package/dist/{chunk-U3DN4HEY.js.map → chunk-RMCLFSMX.js.map} +0 -0
  700. /package/dist/{chunk-YK7756IF.js.map → chunk-RTZANSSC.js.map} +0 -0
  701. /package/dist/{chunk-ZEG4VPBL.js.map → chunk-S27VZ5DO.js.map} +0 -0
  702. /package/dist/{chunk-54YW6SZZ.js.map → chunk-SBXSKRFA.js.map} +0 -0
  703. /package/dist/{chunk-HAX4LCR5.js.map → chunk-SFIXTOOJ.js.map} +0 -0
  704. /package/dist/{chunk-QIOQ2NPQ.js.map → chunk-SGH7I7OY.js.map} +0 -0
  705. /package/dist/{chunk-K2A5PXQ5.js.map → chunk-SJYTQLN3.js.map} +0 -0
  706. /package/dist/{chunk-2Z3NQNTM.js.map → chunk-SK5S2PCK.js.map} +0 -0
  707. /package/dist/{chunk-X3MWB2QU.js.map → chunk-SN2WENRP.js.map} +0 -0
  708. /package/dist/{chunk-OSY5K7L7.js.map → chunk-SP44O3OU.js.map} +0 -0
  709. /package/dist/{chunk-OZCBM3UC.js.map → chunk-SSR4ZX52.js.map} +0 -0
  710. /package/dist/{chunk-QCSJ4CWE.js.map → chunk-SXGJL7UT.js.map} +0 -0
  711. /package/dist/{chunk-NC55IFN3.js.map → chunk-T67LTMSW.js.map} +0 -0
  712. /package/dist/{chunk-AXHZYXUV.js.map → chunk-TDTD66BK.js.map} +0 -0
  713. /package/dist/{chunk-NGJJJPZZ.js.map → chunk-TK5FWVZR.js.map} +0 -0
  714. /package/dist/{chunk-2OP6WLGV.js.map → chunk-TNSJFZ6Q.js.map} +0 -0
  715. /package/dist/{chunk-O732GAFC.js.map → chunk-U4LTPFD2.js.map} +0 -0
  716. /package/dist/{chunk-4DVNUCRR.js.map → chunk-U5UGM5XD.js.map} +0 -0
  717. /package/dist/{chunk-UJK53QFL.js.map → chunk-UBRQ3PQD.js.map} +0 -0
  718. /package/dist/{chunk-SODC7T6L.js.map → chunk-UMX6DZME.js.map} +0 -0
  719. /package/dist/{chunk-YLS6QE5G.js.map → chunk-UO35OEOX.js.map} +0 -0
  720. /package/dist/{chunk-SHHJCL7X.js.map → chunk-UTRNLNCW.js.map} +0 -0
  721. /package/dist/{chunk-HEFPPMBQ.js.map → chunk-UU5FBVRX.js.map} +0 -0
  722. /package/dist/{chunk-GQXZPKK7.js.map → chunk-V6UOVHW3.js.map} +0 -0
  723. /package/dist/{chunk-GVN5SZLX.js.map → chunk-VATYK3JQ.js.map} +0 -0
  724. /package/dist/{chunk-7TIX2UAR.js.map → chunk-VCJQQYRE.js.map} +0 -0
  725. /package/dist/{chunk-6WD2INST.js.map → chunk-WDASYY4S.js.map} +0 -0
  726. /package/dist/{chunk-DXBYWSL5.js.map → chunk-WIFDNUKD.js.map} +0 -0
  727. /package/dist/{chunk-RT7CJMER.js.map → chunk-WIXHUBQN.js.map} +0 -0
  728. /package/dist/{chunk-57AZS3IE.js.map → chunk-WRMUXZ7C.js.map} +0 -0
  729. /package/dist/{chunk-2CLNIEK4.js.map → chunk-WTSQUCHB.js.map} +0 -0
  730. /package/dist/{chunk-OVKYVZMW.js.map → chunk-WXF2RTS4.js.map} +0 -0
  731. /package/dist/{chunk-MIHN76LX.js.map → chunk-WYGTAQMX.js.map} +0 -0
  732. /package/dist/{chunk-2RG7NIAS.js.map → chunk-X2QJXDE4.js.map} +0 -0
  733. /package/dist/{chunk-GAVYGBFI.js.map → chunk-XMBOLFFS.js.map} +0 -0
  734. /package/dist/{chunk-T7OXJZCX.js.map → chunk-XOIDUM2H.js.map} +0 -0
  735. /package/dist/{chunk-XHIQ5I6N.js.map → chunk-XVLEBB4Y.js.map} +0 -0
  736. /package/dist/{chunk-Q3DPEYX4.js.map → chunk-XZCCEKPW.js.map} +0 -0
  737. /package/dist/{chunk-T3OWFVMS.js.map → chunk-Y3XZEKDQ.js.map} +0 -0
  738. /package/dist/{chunk-KODELWYT.js.map → chunk-YJSCLGAW.js.map} +0 -0
  739. /package/dist/{chunk-ROKQU7WG.js.map → chunk-YMI27QPF.js.map} +0 -0
  740. /package/dist/{chunk-U7XM7CB4.js.map → chunk-YNTLWCF4.js.map} +0 -0
  741. /package/dist/{chunk-ZQCND77P.js.map → chunk-YRYF76OE.js.map} +0 -0
  742. /package/dist/{chunk-2BDT3UZQ.js.map → chunk-ZAX4XQLN.js.map} +0 -0
  743. /package/dist/{chunk-DXR5PDFP.js.map → chunk-ZBHGNE2J.js.map} +0 -0
  744. /package/dist/{chunk-I7ITSXSJ.js.map → chunk-ZR5EKJT6.js.map} +0 -0
  745. /package/dist/{chunk-IZXHMZQ6.js.map → chunk-ZW5YTIH3.js.map} +0 -0
  746. /package/dist/{embedded-new-voice-2G3VLPVQ.js.map → computer-viewer-5LKRCEVQ.js.map} +0 -0
  747. /package/dist/{embedded-voice-T5IWOWGD.js.map → embedded-new-voice-GHJRY3YL.js.map} +0 -0
  748. /package/dist/{model-policy-picker-menu-SMC6J6QN.js.map → embedded-voice-ASQXBSTX.js.map} +0 -0
  749. /package/dist/{fleet-decision-row-WM64KXP3.js.map → fleet-decision-row-U7LDVBEM.js.map} +0 -0
  750. /package/dist/{latest-question-OX56OVQ5.js.map → latest-question-RNVF262Q.js.map} +0 -0
  751. /package/dist/{sandbox-files-ESDMOFSD.js.map → model-policy-picker-menu-E6XKMFTA.js.map} +0 -0
  752. /package/dist/{queue-surface-implementation-4KUZ4PJV.js.map → queue-surface-implementation-GUAIG6TK.js.map} +0 -0
  753. /package/dist/{recorder-host-WF2RRR56.js.map → recorder-host-2MYDJPQW.js.map} +0 -0
  754. /package/dist/{session-connect-cards-Q53KMMYY.js.map → sandbox-files-W5W2LW4K.js.map} +0 -0
  755. /package/dist/{session-realtime-CF3I35WJ.js.map → session-connect-cards-HPH7JOZP.js.map} +0 -0
  756. /package/dist/{timeline-annotation-markers-CJK4RYZ4.js.map → timeline-annotation-markers-FNILLWNU.js.map} +0 -0
  757. /package/dist/{timeline-annotation-selection-67GF5H26.js.map → timeline-annotation-selection-MBCIDO2Q.js.map} +0 -0
  758. /package/dist/{timeline-annotations-dialog-ONJPQDJQ.js.map → timeline-annotations-dialog-JPNKLOTE.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/artifacts/chat-interactive-block.tsx","../src/components/artifacts/artifact-sandbox.tsx","../src/components/artifacts/deferred-chat-media.tsx"],"sourcesContent":["import type { OpenGeniClient, ToolGatewayIdentity } from \"@opengeni/sdk\";\nimport { useEffect, useMemo, useState } from \"react\";\n\nimport { loadSiteSnapshot } from \"../../sites-ui\";\nimport { useOpenGeniLinkResolver } from \"../open-geni-links\";\nimport {\n ArtifactButton,\n ArtifactLabelsProvider,\n ArtifactSelect,\n useArtifactLabels,\n type ArtifactLabels,\n} from \"./artifact-chrome\";\nimport { ArtifactSandbox } from \"./artifact-sandbox\";\nimport { DeferredChatMedia } from \"./deferred-chat-media\";\nimport { inlineHtmlDocument } from \"./inline-html-document\";\nimport type { PublishedHtmlArtifactToolBridge } from \"./published-html-artifact-frame\";\n\n// Saved Sites load asynchronously into a fixed chat viewport so they never move\n// the conversation. Inline visuals render synchronously from the message and\n// size to their content, up to a bound that keeps one visual from taking over\n// the conversation; taller content scrolls inside it. Full screen remains\n// available for larger content.\nconst INLINE_PREVIEW_HEIGHT = 360;\nconst INLINE_PREVIEW_MAX_HEIGHT = 640;\nconst SITE_PREVIEW_HEIGHT = 400;\nconst PREVIEW_CHROME_HEIGHT = 50;\n\n/** Reads a Site needs to render; the console client, the SDK client, or a proxy. */\nexport type SiteSnapshotClient = Pick<\n OpenGeniClient,\n \"getWorkspaceArtifact\" | \"getWorkspaceArtifactHtml\"\n> &\n Partial<Pick<OpenGeniClient, \"getWorkspaceArtifactContent\">>;\n\n/** The exact saved Site a tool bridge is pinned to (absent for inline HTML). */\nexport type SiteToolScope = {\n artifactId: string;\n siteVersionId: string;\n requestedTools: readonly ToolGatewayIdentity[];\n};\n\n/** Host-owned Site API access. Omit it and Sites render without workspace tools. */\nexport type SiteToolBridgeFactory = (\n site?: SiteToolScope,\n) => PublishedHtmlArtifactToolBridge | undefined;\n\nexport type ChatInteractiveBlockProps = {\n workspaceId: string;\n kind: \"html\" | \"site\";\n content: string;\n client: SiteSnapshotClient;\n toolBridge?: SiteToolBridgeFactory | undefined;\n theme?: \"light\" | \"dark\" | undefined;\n /** Translations for the preview's copy; defaults to English. */\n labels?: Partial<ArtifactLabels> | undefined;\n};\n\n/**\n * Inline preview for an assistant `opengeni-html` or `opengeni-site` fence, as\n * the Opengeni console renders it. \"Open Site\" goes through the nearest\n * `resolveLink`, so a host decides where a Site opens.\n */\nexport function ChatInteractiveBlock({ labels, ...props }: ChatInteractiveBlockProps) {\n return (\n <ArtifactLabelsProvider labels={labels}>\n <InteractiveBlock {...props} />\n </ArtifactLabelsProvider>\n );\n}\n\nfunction InteractiveBlock(props: ChatInteractiveBlockProps) {\n const labels = useArtifactLabels();\n const height =\n (props.kind === \"html\" ? INLINE_PREVIEW_HEIGHT : SITE_PREVIEW_HEIGHT) + PREVIEW_CHROME_HEIGHT;\n return (\n <DeferredChatMedia\n key={`${props.workspaceId}:${props.kind}:${props.kind === \"site\" ? props.content : \"inline\"}`}\n height={height}\n actionLabel={props.kind === \"html\" ? labels.loadPreview : labels.loadSitePreview}\n >\n {props.kind === \"html\" ? (\n <InlineHtml {...props} />\n ) : (\n <div style={{ height }}>\n <LoadedChatInteractiveBlock {...props} />\n </div>\n )}\n </DeferredChatMedia>\n );\n}\n\nfunction LoadedChatInteractiveBlock(props: ChatInteractiveBlockProps) {\n const labels = useArtifactLabels();\n try {\n const value = JSON.parse(props.content);\n if (\n !value ||\n typeof value.siteId !== \"string\" ||\n !/^[0-9a-f-]{36}$/i.test(value.siteId) ||\n (value.versionId !== undefined &&\n (typeof value.versionId !== \"string\" || !/^[0-9a-f-]{36}$/i.test(value.versionId)))\n )\n throw new Error(\"Invalid Site reference\");\n return (\n <SiteEmbed\n key={`${props.workspaceId}:${value.siteId}:${value.versionId ?? \"current\"}`}\n {...props}\n siteId={value.siteId}\n initialVersionId={value.versionId}\n />\n );\n } catch {\n return <p role=\"alert\">{labels.siteReferenceInvalid}</p>;\n }\n}\n\nfunction InlineHtml({ content, toolBridge, theme }: ChatInteractiveBlockProps) {\n const labels = useArtifactLabels();\n const html = useMemo(() => inlineHtmlDocument(content), [content]);\n const bridge = useMemo(() => toolBridge?.(), [toolBridge]);\n return (\n <ArtifactSandbox\n title={labels.preview}\n showTitle={false}\n showLiveStatus={false}\n html={html}\n toolBridge={bridge}\n height={INLINE_PREVIEW_HEIGHT}\n autoHeight\n maxAutoHeight={INLINE_PREVIEW_MAX_HEIGHT}\n theme={theme}\n />\n );\n}\n\nfunction SiteEmbed(\n props: ChatInteractiveBlockProps & { siteId: string; initialVersionId?: string },\n) {\n const [versionId, setVersionId] = useState(props.initialVersionId);\n return (\n <SiteEmbedContent\n key={versionId ?? \"current\"}\n {...props}\n versionId={versionId}\n onVersionChange={setVersionId}\n />\n );\n}\n\nfunction SiteEmbedContent({\n workspaceId,\n client,\n toolBridge,\n theme,\n siteId,\n versionId,\n onVersionChange,\n}: ChatInteractiveBlockProps & {\n siteId: string;\n versionId?: string | undefined;\n onVersionChange: (id: string) => void;\n}) {\n const [loaded, setLoaded] = useState<{\n client: SiteSnapshotClient;\n snapshot: Awaited<ReturnType<typeof loadSiteSnapshot>>;\n } | null>(null);\n const snapshot = loaded?.client === client ? loaded.snapshot : null;\n const [error, setError] = useState(false);\n const [retry, setRetry] = useState(0);\n useEffect(() => {\n const abort = new AbortController();\n setError(false);\n setLoaded(null);\n void loadSiteSnapshot(client, workspaceId, siteId, {\n signal: abort.signal,\n ...(versionId ? { versionId } : {}),\n })\n .then((value) => {\n if (!abort.signal.aborted) setLoaded({ client, snapshot: value });\n })\n .catch(() => {\n if (!abort.signal.aborted) setError(true);\n });\n return () => abort.abort();\n }, [client, workspaceId, siteId, versionId, retry]);\n const content = snapshot?.content;\n const bridge = useMemo(\n () =>\n content\n ? toolBridge?.({\n artifactId: siteId,\n siteVersionId: content.versionId,\n requestedTools: content.requestedTools,\n })\n : undefined,\n [toolBridge, siteId, content],\n );\n const open = useOpenGeniLinkResolver()?.({ kind: \"site\", artifactId: siteId, workspaceId });\n const labels = useArtifactLabels();\n if (error)\n return (\n <p role=\"alert\">\n {labels.siteLoadFailed}{\" \"}\n <ArtifactButton size=\"sm\" onClick={() => setRetry((v) => v + 1)}>\n {labels.retry}\n </ArtifactButton>\n </p>\n );\n if (!snapshot) return <p role=\"status\">{labels.loadingSite}</p>;\n if (!content) return <p>{labels.siteUnpublished}</p>;\n return (\n <ArtifactSandbox\n title={snapshot.detail.artifact.title}\n html={content.html}\n toolBridge={bridge}\n height={SITE_PREVIEW_HEIGHT}\n className=\"h-full\"\n fill\n theme={theme}\n headerControls={\n <>\n {/* One published version has nothing to choose; keep the bar for the title. */}\n {snapshot.detail.versions.length > 1 ||\n !snapshot.detail.versions.some((v) => v.id === content.versionId) ? (\n <ArtifactSelect\n aria-label={labels.siteVersion}\n className=\"bg-transparent text-xs\"\n value={content.versionId}\n onChange={(e) => onVersionChange(e.target.value)}\n >\n {!snapshot.detail.versions.some((v) => v.id === content.versionId) && (\n <option value={content.versionId}>{labels.savedVersion}</option>\n )}\n {snapshot.detail.versions.map((v) => (\n <option key={v.id} value={v.id}>\n {labels.version(v.revision)}\n </option>\n ))}\n </ArtifactSelect>\n ) : null}\n {open?.href ? (\n <a\n className=\"shrink-0 whitespace-nowrap text-xs underline\"\n href={open.href}\n data-og-open-site=\"\"\n >\n {labels.openSite}\n </a>\n ) : open?.open ? (\n <button\n type=\"button\"\n className=\"shrink-0 cursor-pointer whitespace-nowrap text-xs underline\"\n data-og-open-site=\"\"\n onClick={() =>\n void Promise.resolve()\n .then(open.open)\n .catch(() => undefined)\n }\n >\n {labels.openSite}\n </button>\n ) : null}\n </>\n }\n />\n );\n}\n","import {\n ArrowLeftIcon,\n Globe2Icon,\n Maximize2Icon,\n PlugZapIcon,\n RefreshCwIcon,\n SparklesIcon,\n} from \"lucide-react\";\nimport {\n useCallback,\n useLayoutEffect,\n useRef,\n useState,\n type ReactElement,\n type ReactNode,\n} from \"react\";\nimport type { SiteViewer } from \"@opengeni/sdk\";\n\nimport { cn } from \"../../lib/cn\";\nimport { useWindowLayerOpen } from \"../../lib/window-layer\";\nimport { PortalContainerProvider, usePortalContainer } from \"../../ui/portal-container\";\nimport { ArtifactBadge, ArtifactButton, useArtifactLabels } from \"./artifact-chrome\";\nimport {\n PublishedHtmlArtifactFrame,\n type PublishedHtmlArtifactToolBridge,\n} from \"./published-html-artifact-frame\";\n\n/**\n * What the frame's Live label says when the host watches the Site for new\n * versions: showing the current version, loading a newer one, or unable to\n * check for them.\n */\nexport type SiteLiveState = \"live\" | \"updating\" | \"reconnecting\";\n\nexport type ArtifactSandboxProps = {\n html: string;\n height?: number | undefined;\n /**\n * Size the frame to its document's reported height (see\n * `PublishedHtmlArtifactFrame`); `height` is the size until the first report.\n */\n autoHeight?: boolean | undefined;\n /** Upper bound for `autoHeight`, in CSS pixels; taller content scrolls inside. */\n maxAutoHeight?: number | undefined;\n theme?: \"light\" | \"dark\" | undefined;\n headerControls?: ReactNode | undefined;\n /**\n * The toolbar's first control, for example the host's Back to the page the\n * Site was opened from. Full screen shows its own Back there instead.\n */\n toolbarStart?: ReactNode | undefined;\n title: string;\n /** Hide the visible title/icon while retaining the accessible iframe title. */\n showTitle?: boolean | undefined;\n /**\n * Wraps the visible title, so a host can attach its own menu to it (the\n * Site view's Copy title). Returns the title itself when absent.\n */\n renderTitle?: ((title: ReactElement) => ReactNode) | undefined;\n showLiveStatus?: boolean | undefined;\n /**\n * Replaces the \"Live\" indicator, for example with the host's link to the\n * published Site. `null` shows nothing there; omit it for the default.\n */\n liveStatus?: ReactNode | undefined;\n /**\n * The real state of the Site on screen, from a host that watches it for new\n * versions. `updating` and `reconnecting` show beside the Live indicator\n * (or the host's replacement); without it the plain \"Live\" badge shows.\n */\n liveState?: SiteLiveState | undefined;\n versionLabel?: string | undefined;\n className?: string | undefined;\n editDisabled?: boolean | undefined;\n onEdit?: (() => void) | undefined;\n toolBridge?: PublishedHtmlArtifactToolBridge | undefined;\n /** Who is viewing, answered to the Site's `site.viewer` over the bridge. */\n viewer?: SiteViewer | undefined;\n /**\n * The Site's own address (`/admin?tab=2`), answered to `site.location`.\n * Omit it to let the frame keep the address itself (starting at `/`, kept\n * across reloads); pass it with `onSiteLocationChange` to keep it in the\n * host, for example in its URL.\n */\n siteLocation?: string | undefined;\n /** The Site moved itself with `site.navigate`. */\n onSiteLocationChange?: ((href: string, options: { replace: boolean }) => void) | undefined;\n connectedToolCount?: number | undefined;\n sourceFileCount?: number | undefined;\n fill?: boolean | undefined;\n /**\n * Control full screen from the host (for example from its URL). Omit to let\n * the frame's own expand and back buttons manage it.\n */\n fullScreen?: boolean | undefined;\n /** Called when the person expands the frame or leaves full screen. */\n onFullScreenChange?: ((fullScreen: boolean) => void) | undefined;\n /**\n * Hide the frame's toolbar when the host draws its own reload and full\n * screen controls. Full screen always shows it, for its Back button.\n */\n showToolbar?: boolean | undefined;\n /** Reload the Site whenever this changes, from a host-drawn reload control. */\n reloadToken?: number | undefined;\n /**\n * The page the frame shows, for example its version: a new key replaces\n * the frame in the same render as its HTML, so the Site loads once.\n */\n frameKey?: string | undefined;\n};\n\n/**\n * The Site/preview frame chrome shared by the console and embedding hosts:\n * title, version and tool badges, live status, reload, and a full-screen mode\n * that escapes the host's scroll containers through the modal top layer.\n */\nexport function ArtifactSandbox(props: ArtifactSandboxProps) {\n const labels = useArtifactLabels();\n const [reloadKey, setReloadKey] = useState(0);\n const [ownFocused, setOwnFocused] = useState(false);\n const [ownSiteLocation, setOwnSiteLocation] = useState(\"/\");\n const siteLocation = props.siteLocation ?? ownSiteLocation;\n const onSiteLocationChangeRef = useRef(props.onSiteLocationChange);\n onSiteLocationChangeRef.current = props.onSiteLocationChange;\n const ownsSiteLocation = props.siteLocation === undefined;\n const onSiteLocationChange = useCallback(\n (href: string, options: { replace: boolean }) => {\n if (ownsSiteLocation) setOwnSiteLocation(href);\n onSiteLocationChangeRef.current?.(href, options);\n },\n [ownsSiteLocation],\n );\n const focused = props.fullScreen ?? ownFocused;\n // Full screen, the Site fills the window's content.\n useWindowLayerOpen(focused);\n const setFocused = (next: boolean) => {\n if (props.fullScreen === undefined) setOwnFocused(next);\n props.onFullScreenChange?.(next);\n };\n const frameRef = useRef<HTMLDialogElement>(null);\n const modalRef = useRef(false);\n // In full screen everything outside the modal is inert, so menus opened\n // from the header (the version menu) draw inside it.\n const inheritedPortal = usePortalContainer();\n const [frameElement, setFrameElement] = useState<HTMLDialogElement | null>(null);\n const attachFrame = useCallback((element: HTMLDialogElement | null) => {\n frameRef.current = element;\n setFrameElement(element);\n }, []);\n useLayoutEffect(() => {\n const frame = frameRef.current;\n if (!frame) return;\n if (focused) {\n // A fixed child of the chat timeline is still clipped and layered by its\n // scroll pane and the sibling workspace dock. The modal top layer escapes\n // both while keeping the live Site iframe mounted in the same DOM node.\n frame.close();\n frame.showModal();\n modalRef.current = true;\n } else if (modalRef.current) {\n frame.close();\n frame.show();\n modalRef.current = false;\n }\n }, [focused]);\n const reload = () => {\n setReloadKey((value) => value + 1);\n };\n return (\n <dialog\n ref={attachFrame}\n open\n aria-label={props.title}\n data-artifact-fullscreen={focused || undefined}\n data-window-layer={focused || undefined}\n onCancel={(event) => {\n event.preventDefault();\n setFocused(false);\n }}\n className={cn(\n \"og-root static m-0 w-full max-h-none max-w-none overflow-hidden rounded-2xl border border-border/80 bg-white p-0 text-left shadow-sm\",\n props.className,\n props.fill && \"flex min-h-0 flex-col\",\n focused &&\n \"fixed inset-0 z-50 flex h-dvh w-dvw flex-col rounded-none border-0 bg-surface shadow-none\",\n )}\n >\n <div\n data-artifact-toolbar\n data-window-drag={focused || undefined}\n hidden={props.showToolbar === false && !focused}\n className={cn(\n \"flex min-h-12 shrink-0 items-center justify-between gap-3 border-b border-border/80 bg-surface/95 px-3 sm:px-4\",\n props.showToolbar === false && !focused && \"hidden\",\n )}\n >\n <div className=\"flex min-w-0 items-center gap-2.5\">\n {!focused && props.toolbarStart ? props.toolbarStart : null}\n {focused ? (\n <ArtifactButton\n variant=\"ghost\"\n size=\"sm\"\n className=\"h-8 shrink-0 px-2\"\n onClick={() => setFocused(false)}\n >\n <ArrowLeftIcon className=\"mr-2 size-3.5\" />\n {labels.back}\n </ArtifactButton>\n ) : null}\n {!focused && props.showTitle !== false ? (\n <span className=\"grid size-6 shrink-0 place-items-center rounded-md bg-surface-2 text-fg-muted\">\n <Globe2Icon className=\"size-3.5\" />\n </span>\n ) : null}\n {props.showTitle === false ? null : props.renderTitle ? (\n // Its menu opens in front of full screen, as the controls' do; its\n // words leave a full-screen toolbar's drag region so they can be\n // right-clicked.\n <PortalContainerProvider\n container={focused && frameElement ? frameElement : inheritedPortal}\n >\n {props.renderTitle(\n <span className=\"truncate text-xs font-semibold text-fg [-webkit-app-region:no-drag] [app-region:no-drag]\">\n {props.title}\n </span>,\n )}\n </PortalContainerProvider>\n ) : (\n <span className=\"truncate text-xs font-semibold text-fg\">{props.title}</span>\n )}\n {props.headerControls ? (\n <PortalContainerProvider\n container={focused && frameElement ? frameElement : inheritedPortal}\n >\n {props.headerControls}\n </PortalContainerProvider>\n ) : null}\n {props.versionLabel ? (\n <ArtifactBadge className=\"hidden h-5 rounded-md border-border/80 px-1.5 text-2xs font-normal text-fg-muted sm:inline-flex\">\n {props.versionLabel}\n </ArtifactBadge>\n ) : null}\n {props.connectedToolCount ? (\n <ArtifactBadge\n className=\"hidden h-5 max-w-40 gap-1 rounded-md border-border/80 px-1.5 text-2xs font-normal text-fg-muted sm:inline-flex\"\n title={labels.toolsAvailable(props.connectedToolCount)}\n >\n <PlugZapIcon className=\"size-3\" />\n {labels.toolCount(props.connectedToolCount)}\n </ArtifactBadge>\n ) : null}\n {props.sourceFileCount ? (\n <span className=\"hidden text-2xs text-fg-subtle xl:inline\">\n {labels.sourceFileCount(props.sourceFileCount)}\n </span>\n ) : null}\n </div>\n <div className=\"flex shrink-0 items-center gap-1\">\n {focused && props.onEdit ? (\n <ArtifactButton\n variant=\"ghost\"\n size=\"sm\"\n className=\"h-8 px-2\"\n disabled={props.editDisabled}\n onClick={props.onEdit}\n >\n <SparklesIcon className=\"mr-2 size-3.5\" />\n <span className=\"hidden sm:inline\">{labels.editWithAgent}</span>\n <span className=\"sm:hidden\">{labels.editShort}</span>\n </ArtifactButton>\n ) : null}\n {props.showLiveStatus !== false && props.liveStatus !== undefined ? (\n // The host's replacement (a link to the published Site) draws its\n // tooltips inside the full-screen frame too.\n <PortalContainerProvider\n container={focused && frameElement ? frameElement : inheritedPortal}\n >\n {props.liveState !== undefined ? (\n <LiveStateBeside status={props.liveState} labels={labels} />\n ) : null}\n {props.liveStatus}\n </PortalContainerProvider>\n ) : null}\n {props.showLiveStatus !== false && props.liveStatus === undefined && (\n <LiveLabel status={props.liveState} labels={labels} />\n )}\n <ArtifactButton\n variant=\"ghost\"\n size=\"icon\"\n className=\"size-8 rounded-md text-fg-muted hover:text-fg\"\n aria-label={labels.reloadSite}\n onClick={reload}\n >\n <RefreshCwIcon className=\"size-3.5\" />\n </ArtifactButton>\n {!focused ? (\n <ArtifactButton\n variant=\"ghost\"\n size=\"icon\"\n className=\"size-8 rounded-md text-fg-muted hover:text-fg\"\n aria-label={labels.openFullScreen}\n onClick={() => setFocused(true)}\n >\n <Maximize2Icon className=\"size-3.5\" />\n </ArtifactButton>\n ) : null}\n </div>\n </div>\n <PublishedHtmlArtifactFrame\n key={`${reloadKey}:${props.reloadToken ?? 0}:${props.frameKey ?? \"\"}`}\n title={props.title}\n html={props.html}\n autoHeight={Boolean(props.autoHeight && !focused)}\n {...(props.maxAutoHeight ? { maxAutoHeight: props.maxAutoHeight } : {})}\n {...(props.theme ? { theme: props.theme } : {})}\n {...(!focused && props.height ? { style: { height: props.height } } : {})}\n {...(props.toolBridge ? { toolBridge: props.toolBridge } : {})}\n {...(props.viewer ? { viewer: props.viewer } : {})}\n location={siteLocation}\n onLocationChange={onSiteLocationChange}\n className={cn(\n \"block h-[clamp(30rem,62vh,48rem)] w-full border-0 bg-white\",\n props.fill && \"h-0 min-h-0 flex-1\",\n focused && \"min-h-0 flex-1\",\n )}\n />\n </dialog>\n );\n}\n\n/**\n * Beside a host's replacement for Live: only Updating or Reconnecting shows.\n * The status region stays mounted and only its text changes, so screen\n * readers announce each change.\n */\nfunction LiveStateBeside({\n status,\n labels,\n}: {\n status: SiteLiveState;\n labels: ReturnType<typeof useArtifactLabels>;\n}) {\n const busy = status === \"updating\" || status === \"reconnecting\";\n return (\n <span\n role=\"status\"\n aria-live=\"polite\"\n data-live-state-region=\"\"\n data-live-status={busy ? status : undefined}\n className={\n busy\n ? \"mr-1 inline-flex items-center gap-1.5 text-2xs font-medium text-fg-muted\"\n : \"sr-only\"\n }\n >\n {busy ? (\n <>\n <span\n aria-hidden=\"true\"\n className={cn(\n \"size-1.5 rounded-full\",\n status === \"updating\"\n ? \"bg-status-running ring-4 ring-status-running/15 motion-safe:animate-pulse\"\n : \"bg-status-waiting ring-4 ring-status-waiting/15\",\n )}\n />\n <span className=\"max-sm:sr-only\">\n {status === \"updating\" ? labels.liveUpdating : labels.liveReconnecting}\n </span>\n </>\n ) : null}\n </span>\n );\n}\n\n/**\n * Live, or what the host watching the Site knows: a newer version loading,\n * or no way to check for one right now. Announced politely when it changes;\n * on a narrow screen only its dot shows, and it is still announced.\n */\nfunction LiveLabel({\n status,\n labels,\n}: {\n status: SiteLiveState | undefined;\n labels: ReturnType<typeof useArtifactLabels>;\n}) {\n const text =\n status === \"updating\"\n ? labels.liveUpdating\n : status === \"reconnecting\"\n ? labels.liveReconnecting\n : labels.live;\n return (\n <span\n className={cn(\n \"mr-1 items-center gap-1.5 text-2xs font-medium text-fg-muted sm:inline-flex\",\n status ? \"inline-flex\" : \"hidden\",\n )}\n data-live-status={status}\n {...(status ? { role: \"status\", \"aria-live\": \"polite\" as const } : {})}\n >\n <span\n aria-hidden=\"true\"\n className={cn(\n \"size-1.5 rounded-full\",\n status === \"updating\"\n ? \"bg-status-running ring-4 ring-status-running/15 motion-safe:animate-pulse\"\n : status === \"reconnecting\"\n ? \"bg-status-waiting ring-4 ring-status-waiting/15\"\n : \"bg-status-success ring-4 ring-status-success/10\",\n )}\n />\n <span className={status ? \"max-sm:sr-only\" : undefined}>{text}</span>\n </span>\n );\n}\n","import { useEffect, useRef, useState, type ReactNode } from \"react\";\nimport { useOpenGeniText } from \"../../messages/runtime\";\n\n/**\n * Reserve the chat slot before starting expensive media work. Activation is\n * one-way: scrolling away must not discard an interactive preview's state.\n * The timeline parks at its initial tip in layout effects before this observer\n * is attached, so historical previews above the entry viewport stay dormant.\n */\nexport function DeferredChatMedia({\n children,\n height,\n label,\n actionLabel,\n}: {\n children: ReactNode;\n height: number;\n /** What is loading, as in \"Load {label}\". */\n label?: string | undefined;\n /** The complete (translated) activation label; overrides `label`. */\n actionLabel?: string | undefined;\n}) {\n const t = useOpenGeniText();\n const host = useRef<HTMLDivElement>(null);\n const [active, setActive] = useState(false);\n useEffect(() => {\n const node = host.current;\n if (active || !node) return;\n if (typeof IntersectionObserver === \"undefined\") {\n setActive(true);\n return;\n }\n let disposed = false;\n const observer = new IntersectionObserver(\n (entries) => {\n if (disposed || !entries.some((entry) => entry.isIntersecting)) return;\n setActive(true);\n observer.disconnect();\n },\n {\n root: node.closest(\"[data-og-timeline-scroller]\"),\n rootMargin: \"200px 0px\",\n },\n );\n observer.observe(node);\n return () => {\n disposed = true;\n observer.disconnect();\n };\n }, [active]);\n\n return (\n <div ref={host} data-chat-media={active ? \"active\" : \"deferred\"}>\n {active ? (\n children\n ) : (\n <div className=\"flex w-full items-center justify-center\" style={{ height }}>\n <button\n type=\"button\"\n className=\"rounded-md px-3 py-2 text-sm text-fg-muted hover:text-fg focus-visible:outline-2 focus-visible:outline-ring\"\n onClick={() => setActive(true)}\n >\n {actionLabel ??\n t(\"artifacts.deferredChatMedia.loadLabel\", {\n label: label ?? t(\"artifacts.deferredChatMedia.media\"),\n })}\n </button>\n </div>\n )}\n </div>\n );\n}\n"],"mappings":"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","names":["useEffect","useState","useRef","useState","jsx","useRef","useState","Fragment","jsx","jsxs","useState","useEffect"]}
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-TFD6JXHN.js";
5
5
  import {
6
6
  BillingClassMark
7
- } from "./chunk-XLH7QY2R.js";
7
+ } from "./chunk-2J77TWGH.js";
8
8
 
9
9
  // src/app/components/billing-class-mark.tsx
10
10
  import { jsx } from "react/jsx-runtime";
@@ -30,4 +30,4 @@ export {
30
30
  openGeniGroupPresentation,
31
31
  BillingClassMark2 as BillingClassMark
32
32
  };
33
- //# sourceMappingURL=chunk-GKVJIDHF.js.map
33
+ //# sourceMappingURL=chunk-KFNZZ2N6.js.map
@@ -1,29 +1,29 @@
1
1
  "use client";
2
2
  import {
3
3
  scheduledTaskIdOf
4
- } from "./chunk-BMICEQZQ.js";
4
+ } from "./chunk-7Z76QP64.js";
5
5
  import {
6
6
  sessionDescendantCountText
7
7
  } from "./chunk-XVVJBNUQ.js";
8
8
  import {
9
9
  sessionStatusLabel
10
- } from "./chunk-ZUA3JMI6.js";
10
+ } from "./chunk-77SYIH6O.js";
11
11
  import {
12
12
  sessionSiteOrigin
13
13
  } from "./chunk-K3TJNJSU.js";
14
14
  import {
15
15
  t
16
- } from "./chunk-HSOXMJOT.js";
16
+ } from "./chunk-HEGV4QMS.js";
17
17
  import {
18
18
  sessionAutomationWaitWords
19
- } from "./chunk-2OP6WLGV.js";
19
+ } from "./chunk-TNSJFZ6Q.js";
20
20
  import {
21
21
  formatAbsoluteTime,
22
22
  inSentence
23
- } from "./chunk-53AGXXZM.js";
23
+ } from "./chunk-MKDFYE2E.js";
24
24
  import {
25
25
  sessionInputWait
26
- } from "./chunk-3PZ7JZI2.js";
26
+ } from "./chunk-D3PTVN2I.js";
27
27
  import {
28
28
  sessionAdmissionBlocked,
29
29
  sessionDisplayStatus
@@ -199,4 +199,4 @@ export {
199
199
  sessionHoverFacts,
200
200
  sessionHoverDescription
201
201
  };
202
- //# sourceMappingURL=chunk-I4QEJ62Y.js.map
202
+ //# sourceMappingURL=chunk-KI46GKMD.js.map
@@ -6,13 +6,13 @@ import {
6
6
  DialogFooter,
7
7
  DialogHeader,
8
8
  DialogTitle
9
- } from "./chunk-ZQCND77P.js";
9
+ } from "./chunk-YRYF76OE.js";
10
10
  import {
11
11
  Button
12
12
  } from "./chunk-7QQN3KNP.js";
13
13
  import {
14
14
  useOpenGeniText
15
- } from "./chunk-7T2ZE3VT.js";
15
+ } from "./chunk-QPQ7R77C.js";
16
16
 
17
17
  // src/ui/confirm-dialog.tsx
18
18
  import { useState } from "react";
@@ -111,4 +111,4 @@ export {
111
111
  destructiveActionFocusTarget,
112
112
  ConfirmDialog
113
113
  };
114
- //# sourceMappingURL=chunk-SIRLACNZ.js.map
114
+ //# sourceMappingURL=chunk-KO3OHHY2.js.map
@@ -1,10 +1,10 @@
1
1
  "use client";
2
2
  import {
3
3
  sessionControlPaused
4
- } from "./chunk-ZUA3JMI6.js";
4
+ } from "./chunk-77SYIH6O.js";
5
5
  import {
6
6
  t
7
- } from "./chunk-HSOXMJOT.js";
7
+ } from "./chunk-HEGV4QMS.js";
8
8
  import {
9
9
  Link
10
10
  } from "./chunk-BXBDYNRP.js";
@@ -26,13 +26,13 @@ import {
26
26
  } from "./chunk-GM3LG6BG.js";
27
27
  import {
28
28
  sessionDisplayTitle
29
- } from "./chunk-3PZ7JZI2.js";
29
+ } from "./chunk-D3PTVN2I.js";
30
30
  import {
31
31
  sessionDisplayStatus
32
32
  } from "./chunk-TSENLSW6.js";
33
33
  import {
34
34
  formatRelativeTime
35
- } from "./chunk-5MOJZORA.js";
35
+ } from "./chunk-2EA4IRIP.js";
36
36
 
37
37
  // src/app/components/session/subagents.tsx
38
38
  import { BotIcon, ChevronLeftIcon, ChevronRightIcon, EllipsisIcon } from "lucide-react";
@@ -287,4 +287,4 @@ export {
287
287
  SubagentsLabel,
288
288
  SessionAncestryBreadcrumb
289
289
  };
290
- //# sourceMappingURL=chunk-NULUNM7H.js.map
290
+ //# sourceMappingURL=chunk-KUE5BOQE.js.map
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  sessionHoverFacts
4
- } from "./chunk-I4QEJ62Y.js";
4
+ } from "./chunk-KI46GKMD.js";
5
5
  import {
6
6
  modelDisplayName
7
7
  } from "./chunk-MQBX2UCG.js";
@@ -24,7 +24,7 @@ import {
24
24
  formatRelativeTime,
25
25
  inSentence,
26
26
  useMinuteNow
27
- } from "./chunk-53AGXXZM.js";
27
+ } from "./chunk-MKDFYE2E.js";
28
28
  import {
29
29
  ModelMark
30
30
  } from "./chunk-WJPMYXKZ.js";
@@ -156,4 +156,4 @@ function SessionRowHoverDetails({
156
156
  export {
157
157
  SessionRowHoverDetails
158
158
  };
159
- //# sourceMappingURL=chunk-O3LKCBP5.js.map
159
+ //# sourceMappingURL=chunk-LIJNVIT3.js.map
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-DAD2474Q.js";
5
5
  import {
6
6
  copyLink
7
- } from "./chunk-SC6RRD2D.js";
7
+ } from "./chunk-ARTEEI2E.js";
8
8
  import {
9
9
  usePage
10
10
  } from "./chunk-BXBDYNRP.js";
@@ -54,4 +54,4 @@ export {
54
54
  useCopyArtifactLink,
55
55
  CopyArtifactLinkButton
56
56
  };
57
- //# sourceMappingURL=chunk-JWB44UGJ.js.map
57
+ //# sourceMappingURL=chunk-LIJPDVYP.js.map
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-TXS65BB2.js";
5
5
  import {
6
6
  useOpenGeniText
7
- } from "./chunk-7T2ZE3VT.js";
7
+ } from "./chunk-QPQ7R77C.js";
8
8
 
9
9
  // src/lib/chunk-load-error.ts
10
10
  var CHUNK_LOAD_MESSAGE_PATTERNS = [
@@ -82,4 +82,4 @@ export {
82
82
  isChunkLoadError,
83
83
  LoadFailureNotice
84
84
  };
85
- //# sourceMappingURL=chunk-KYS77RPN.js.map
85
+ //# sourceMappingURL=chunk-LPKJ77EK.js.map
@@ -4,13 +4,13 @@ import {
4
4
  } from "./chunk-IIFO2H3P.js";
5
5
  import {
6
6
  t
7
- } from "./chunk-HSOXMJOT.js";
7
+ } from "./chunk-HEGV4QMS.js";
8
8
  import {
9
9
  buildTimeline
10
- } from "./chunk-4YCA2Y73.js";
10
+ } from "./chunk-PF2WU2IL.js";
11
11
  import {
12
12
  presentFailure
13
- } from "./chunk-5MOJZORA.js";
13
+ } from "./chunk-2EA4IRIP.js";
14
14
  import {
15
15
  parseProviderRecovery
16
16
  } from "./chunk-AZGAUBKR.js";
@@ -301,4 +301,4 @@ export {
301
301
  sandboxProvisionInFlight,
302
302
  eventLabel
303
303
  };
304
- //# sourceMappingURL=chunk-RMFKVOM7.js.map
304
+ //# sourceMappingURL=chunk-LQKVNREV.js.map
@@ -7,7 +7,7 @@ import {
7
7
  } from "./chunk-A3MTTRCX.js";
8
8
  import {
9
9
  Markdown
10
- } from "./chunk-JEA3QDX7.js";
10
+ } from "./chunk-EKJHOWTZ.js";
11
11
 
12
12
  // src/app/components/markdown.tsx
13
13
  import { jsx } from "react/jsx-runtime";
@@ -45,4 +45,4 @@ function MarkdownText({
45
45
  export {
46
46
  MarkdownText
47
47
  };
48
- //# sourceMappingURL=chunk-E7XERZWC.js.map
48
+ //# sourceMappingURL=chunk-LTJFV2JI.js.map
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  creditRefusalKind
4
- } from "./chunk-5MOJZORA.js";
4
+ } from "./chunk-2EA4IRIP.js";
5
5
 
6
6
  // src/app/lib/model-access.tsx
7
7
  import { OpenGeniApiError } from "@opengeni/sdk/browser";
@@ -21,4 +21,4 @@ export {
21
21
  creditRefusalRecord,
22
22
  paymentRefusalCode
23
23
  };
24
- //# sourceMappingURL=chunk-INXGSG3J.js.map
24
+ //# sourceMappingURL=chunk-LVDNY5RC.js.map
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  ProviderRecoveryNotice
4
- } from "./chunk-OV6QJRT4.js";
4
+ } from "./chunk-QRECBCJM.js";
5
5
 
6
6
  // src/app/components/session/model-recovery-notice.tsx
7
7
  import { jsx } from "react/jsx-runtime";
@@ -12,4 +12,4 @@ function ModelRecoveryNotice({ recovery }) {
12
12
  export {
13
13
  ModelRecoveryNotice
14
14
  };
15
- //# sourceMappingURL=chunk-2INLDVK3.js.map
15
+ //# sourceMappingURL=chunk-LVELUUK6.js.map
@@ -2,13 +2,13 @@
2
2
  import {
3
3
  attemptHint,
4
4
  useConnect
5
- } from "./chunk-IMDQUHBJ.js";
5
+ } from "./chunk-HYEIA25Y.js";
6
6
  import {
7
7
  attachSessionCapability
8
8
  } from "./chunk-52Y2X66Q.js";
9
9
  import {
10
10
  useOpenGeniText
11
- } from "./chunk-7T2ZE3VT.js";
11
+ } from "./chunk-QPQ7R77C.js";
12
12
 
13
13
  // src/components/integration-capability-connect-flow.ts
14
14
  import {
@@ -350,4 +350,4 @@ export {
350
350
  reconnectCandidate,
351
351
  useIntegrationCapabilityConnect
352
352
  };
353
- //# sourceMappingURL=chunk-TAT5USZN.js.map
353
+ //# sourceMappingURL=chunk-M3FDGRB4.js.map
@@ -337,4 +337,4 @@ export {
337
337
  useOptionalRail,
338
338
  RailProvider
339
339
  };
340
- //# sourceMappingURL=chunk-5EWSRZ2Y.js.map
340
+ //# sourceMappingURL=chunk-M3HGBO2Y.js.map
@@ -1,13 +1,13 @@
1
1
  "use client";
2
2
  import {
3
3
  formatElapsed
4
- } from "./chunk-IZXHMZQ6.js";
4
+ } from "./chunk-ZW5YTIH3.js";
5
5
  import {
6
6
  timelineGroupContainsPresentedImage
7
- } from "./chunk-3SOIESJM.js";
7
+ } from "./chunk-EWZ2RLNG.js";
8
8
  import {
9
9
  formatClockTime
10
- } from "./chunk-5MOJZORA.js";
10
+ } from "./chunk-2EA4IRIP.js";
11
11
 
12
12
  // src/timeline/question-nav-model.ts
13
13
  var QUESTION_NAV_HIDDEN_PX = 24;
@@ -256,4 +256,4 @@ export {
256
256
  noticeTone,
257
257
  recordedWaitSummaryText
258
258
  };
259
- //# sourceMappingURL=chunk-J3DY5HWQ.js.map
259
+ //# sourceMappingURL=chunk-M5IQVMLR.js.map
@@ -8,7 +8,7 @@ import {
8
8
  import {
9
9
  createOpenGeniText,
10
10
  useOpenGeniText
11
- } from "./chunk-7T2ZE3VT.js";
11
+ } from "./chunk-QPQ7R77C.js";
12
12
 
13
13
  // src/ui/relative-time.tsx
14
14
  import { createContext, useContext, useSyncExternalStore } from "react";
@@ -304,4 +304,4 @@ export {
304
304
  RelativeTimeDefaultsContext,
305
305
  RelativeTime
306
306
  };
307
- //# sourceMappingURL=chunk-53AGXXZM.js.map
307
+ //# sourceMappingURL=chunk-MKDFYE2E.js.map
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  NewSessionLink
4
- } from "./chunk-JDTGRRNU.js";
4
+ } from "./chunk-OSJ366KR.js";
5
5
  import {
6
6
  RAIL_BRAND_LINK_CLASS,
7
7
  RailBrandMark,
@@ -11,13 +11,13 @@ import {
11
11
  SIDEBAR_TOGGLE_IN_WINDOW_BAR,
12
12
  SidebarToggleButton,
13
13
  WindowBarControls
14
- } from "./chunk-YPWU5KPE.js";
14
+ } from "./chunk-TKQL7EDB.js";
15
15
  import {
16
16
  useActionShortcut
17
- } from "./chunk-HGKTHF2U.js";
17
+ } from "./chunk-AJBDAVX3.js";
18
18
  import {
19
19
  useRail
20
- } from "./chunk-5EWSRZ2Y.js";
20
+ } from "./chunk-M3HGBO2Y.js";
21
21
  import {
22
22
  useSessionUiFeature
23
23
  } from "./chunk-FWXMQTVG.js";
@@ -138,4 +138,4 @@ export {
138
138
  RailHeader,
139
139
  PrimaryNav
140
140
  };
141
- //# sourceMappingURL=chunk-4SAWSRAA.js.map
141
+ //# sourceMappingURL=chunk-MRECRNVU.js.map
@@ -15,7 +15,7 @@ import {
15
15
  } from "./chunk-TXS65BB2.js";
16
16
  import {
17
17
  useOpenGeniText
18
- } from "./chunk-7T2ZE3VT.js";
18
+ } from "./chunk-QPQ7R77C.js";
19
19
 
20
20
  // src/components/timeline-annotation-chrome.tsx
21
21
  import { useLayoutEffect, useRef, useState } from "react";
@@ -196,4 +196,4 @@ export {
196
196
  AnnotationNotePreview,
197
197
  AnnotationNoteField
198
198
  };
199
- //# sourceMappingURL=chunk-2I7HDP53.js.map
199
+ //# sourceMappingURL=chunk-MT2R57SF.js.map
@@ -5,25 +5,25 @@ import {
5
5
  } from "./chunk-OYU5SJ4P.js";
6
6
  import {
7
7
  MarkdownText
8
- } from "./chunk-E7XERZWC.js";
8
+ } from "./chunk-LTJFV2JI.js";
9
9
  import {
10
10
  formatTimestamp
11
11
  } from "./chunk-IKQMSROV.js";
12
12
  import {
13
13
  UserMessageBody
14
- } from "./chunk-5QAY6K77.js";
14
+ } from "./chunk-AB5IW227.js";
15
15
  import {
16
16
  LazyPart
17
- } from "./chunk-JEA3QDX7.js";
17
+ } from "./chunk-EKJHOWTZ.js";
18
18
  import {
19
19
  LoadFailureNotice
20
- } from "./chunk-KYS77RPN.js";
20
+ } from "./chunk-LPKJ77EK.js";
21
21
  import {
22
22
  Button
23
23
  } from "./chunk-7QQN3KNP.js";
24
24
  import {
25
25
  useOpenGeniText
26
- } from "./chunk-7T2ZE3VT.js";
26
+ } from "./chunk-QPQ7R77C.js";
27
27
 
28
28
  // src/app/components/session/banners.tsx
29
29
  import { AlertTriangleIcon, ArrowLeftIcon, AudioLinesIcon, TerminalIcon } from "lucide-react";
@@ -127,4 +127,4 @@ export {
127
127
  TerminalSessionArchive,
128
128
  UserMessageBody2 as UserMessageBody
129
129
  };
130
- //# sourceMappingURL=chunk-Z7Y523PS.js.map
130
+ //# sourceMappingURL=chunk-MV2CLIO6.js.map
@@ -8,7 +8,7 @@ import {
8
8
  import {
9
9
  createOpenGeniText,
10
10
  useOpenGeniText
11
- } from "./chunk-7T2ZE3VT.js";
11
+ } from "./chunk-QPQ7R77C.js";
12
12
 
13
13
  // src/components/this-computer/labels.ts
14
14
  function defaultThisComputerLabels(t = createOpenGeniText()) {
@@ -330,4 +330,4 @@ export {
330
330
  defaultThisComputerLabels,
331
331
  ThisComputerCard
332
332
  };
333
- //# sourceMappingURL=chunk-JZ4NLCAP.js.map
333
+ //# sourceMappingURL=chunk-MZY3VKKM.js.map
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import {
3
3
  useField
4
- } from "./chunk-MVW6HNPI.js";
4
+ } from "./chunk-PRT4J2DL.js";
5
5
  import {
6
6
  useSectionListFrame
7
7
  } from "./chunk-ZMBJPN4T.js";
@@ -267,4 +267,4 @@ export {
267
267
  ChoiceCard,
268
268
  ChoiceCardsSkeleton
269
269
  };
270
- //# sourceMappingURL=chunk-YENLNISG.js.map
270
+ //# sourceMappingURL=chunk-N3FM4BNA.js.map
@@ -4,14 +4,14 @@ import {
4
4
  } from "./chunk-HUKUDAIP.js";
5
5
  import {
6
6
  composerConnectorOptions
7
- } from "./chunk-GAVYGBFI.js";
7
+ } from "./chunk-XMBOLFFS.js";
8
8
  import {
9
9
  capabilityReconnectPlan,
10
10
  connectionHealth
11
11
  } from "./chunk-XDFP2LMW.js";
12
12
  import {
13
13
  ComposerMobilePlus
14
- } from "./chunk-Z654FWNU.js";
14
+ } from "./chunk-PLYVGZIN.js";
15
15
  import {
16
16
  hasWorkspacePermission,
17
17
  isWorkspacePermissionDenied
@@ -264,4 +264,4 @@ function WorkspaceComposerPlus(props) {
264
264
  export {
265
265
  WorkspaceComposerPlus
266
266
  };
267
- //# sourceMappingURL=chunk-DZWARC4M.js.map
267
+ //# sourceMappingURL=chunk-NFCS5WYC.js.map
@@ -8,7 +8,7 @@ import {
8
8
  } from "./chunk-KJJBQ3KV.js";
9
9
  import {
10
10
  t
11
- } from "./chunk-HSOXMJOT.js";
11
+ } from "./chunk-HEGV4QMS.js";
12
12
  import {
13
13
  formatWaitingSince
14
14
  } from "./chunk-GXO7ECQZ.js";
@@ -17,7 +17,7 @@ import {
17
17
  } from "./chunk-A3MTTRCX.js";
18
18
  import {
19
19
  sessionAutomationWaitLabel
20
- } from "./chunk-3PZ7JZI2.js";
20
+ } from "./chunk-D3PTVN2I.js";
21
21
 
22
22
  // src/app/components/rail/session-row-content.tsx
23
23
  import {
@@ -261,4 +261,4 @@ export {
261
261
  RailTrailingMetadata,
262
262
  SessionRowContent
263
263
  };
264
- //# sourceMappingURL=chunk-I5QZJODL.js.map
264
+ //# sourceMappingURL=chunk-NQ2CPQJF.js.map