@opengeni/react 6.8.0 → 6.9.1-canary.41937124785001

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 (719) hide show
  1. package/dist/app/app-state.js +8 -8
  2. package/dist/app/components/Composer.js +18 -18
  3. package/dist/app/components/agent/agent-capability-picker.js +6 -6
  4. package/dist/app/components/artifacts/artifact-library.js +6 -6
  5. package/dist/app/components/artifacts/artifact-viewer.js +18 -18
  6. package/dist/app/components/artifacts/chat-interactive-block.js +11 -11
  7. package/dist/app/components/artifacts/file-reach-dialog.js +6 -6
  8. package/dist/app/components/artifacts/inline-chat-image.js +19 -19
  9. package/dist/app/components/artifacts/retained-file-preview.js +20 -20
  10. package/dist/app/components/artifacts/retained-text-preview.js +3 -3
  11. package/dist/app/components/artifacts/site-audience.js +3 -3
  12. package/dist/app/components/artifacts/site-conversations.js +9 -9
  13. package/dist/app/components/artifacts/site-data.js +10 -10
  14. package/dist/app/components/artifacts/site-publishing-page.js +25 -25
  15. package/dist/app/components/artifacts/site-publishing.js +22 -22
  16. package/dist/app/components/artifacts/site-settings.js +24 -24
  17. package/dist/app/components/artifacts/site-version-menu.js +3 -3
  18. package/dist/app/components/billing-class-mark.js +3 -3
  19. package/dist/app/components/bots/bot-launch-strip.js +20 -20
  20. package/dist/app/components/bots/bot-template-dialog.js +26 -26
  21. package/dist/app/components/bots/bot-template-shortcuts.js +20 -20
  22. package/dist/app/components/bots/bot-templates-page.js +30 -30
  23. package/dist/app/components/capabilities/capability-detail-sheet.js +6 -6
  24. package/dist/app/components/capabilities/capability-logo-source.js +13 -13
  25. package/dist/app/components/capabilities/connector-tool-permissions.js +4 -4
  26. package/dist/app/components/capabilities/native-connect-setup.js +13 -13
  27. package/dist/app/components/capabilities/own-logins-shared-heads-up.js +3 -3
  28. package/dist/app/components/capabilities/prepared-mcp-setup-card.js +15 -15
  29. package/dist/app/components/capabilities/session-capability-card.js +52 -52
  30. package/dist/app/components/capabilities/session-chrome-card.js +20 -20
  31. package/dist/app/components/capabilities/session-custom-mcp-card.js +16 -16
  32. package/dist/app/components/capabilities/session-github-card.js +16 -16
  33. package/dist/app/components/capabilities/session-machine-card.js +19 -19
  34. package/dist/app/components/capabilities/session-personal-github-card.js +14 -14
  35. package/dist/app/components/capabilities/session-plugin-card.js +8 -8
  36. package/dist/app/components/command-menu/chat-status.js +15 -15
  37. package/dist/app/components/command-menu/chat-switcher.js +35 -35
  38. package/dist/app/components/command-menu/command-menu.js +39 -39
  39. package/dist/app/components/command-menu/shortcut-sheet.js +8 -8
  40. package/dist/app/components/composer-capabilities-menu-body.js +4 -4
  41. package/dist/app/components/composer-mobile-plus-panel.js +8 -8
  42. package/dist/app/components/composer-mobile-plus.js +1 -1
  43. package/dist/app/components/desktop/app-shots.js +6 -6
  44. package/dist/app/components/desktop/computer-use.js +2 -2
  45. package/dist/app/components/desktop/this-computer.js +5 -5
  46. package/dist/app/components/feedback.js +3 -3
  47. package/dist/app/components/github-app-connect-launcher.js +1 -1
  48. package/dist/app/components/machines/connect-machine-dialog.js +11 -11
  49. package/dist/app/components/markdown.js +6 -6
  50. package/dist/app/components/models/models-ui.js +5 -5
  51. package/dist/app/components/models/subscription-usage.d.ts +34 -0
  52. package/dist/app/components/models/subscription-usage.js +24 -0
  53. package/dist/app/components/my-things.js +4 -4
  54. package/dist/app/components/own-where-it-works.js +3 -3
  55. package/dist/app/components/personal-resource-attachment-surface.js +4 -4
  56. package/dist/app/components/pickers.js +5 -5
  57. package/dist/app/components/rail/channel-create-dialog.js +3 -3
  58. package/dist/app/components/rail/project-glyph.js +20 -20
  59. package/dist/app/components/rail/project-profile.js +27 -27
  60. package/dist/app/components/rail/rail-context.js +1 -1
  61. package/dist/app/components/rail/rail-sections.js +55 -55
  62. package/dist/app/components/rail/session-header.js +47 -47
  63. package/dist/app/components/rail/session-list.js +53 -53
  64. package/dist/app/components/rail/session-row-content.js +4 -4
  65. package/dist/app/components/rail/session-row-hover-details.js +14 -14
  66. package/dist/app/components/rail/session-shell.js +76 -73
  67. package/dist/app/components/rail/site-session-group-heading.js +8 -8
  68. package/dist/app/components/session/agent-configuration-panel.js +12 -12
  69. package/dist/app/components/session/banners.js +8 -8
  70. package/dist/app/components/session/console-new-conversation.js +39 -39
  71. package/dist/app/components/session/descendant-requests.js +36 -36
  72. package/dist/app/components/session/editable-artifacts-workspace.js +16 -16
  73. package/dist/app/components/session/failed-session-banner.js +6 -6
  74. package/dist/app/components/session/failure-recovery-boundary.js +3 -3
  75. package/dist/app/components/session/human-input-delegation-record.js +2 -2
  76. package/dist/app/components/session/human-input.js +33 -33
  77. package/dist/app/components/session/inspector.js +43 -43
  78. package/dist/app/components/session/message-actions.js +3 -3
  79. package/dist/app/components/session/message-resource-attachments.js +10 -10
  80. package/dist/app/components/session/model-recovery-notice.js +3 -3
  81. package/dist/app/components/session/new-session-settings-menu.js +6 -6
  82. package/dist/app/components/session/new-session-setup-strip.js +21 -21
  83. package/dist/app/components/session/sandbox-recovery-actions.js +3 -3
  84. package/dist/app/components/session/sandbox-switcher.js +7 -7
  85. package/dist/app/components/session/sandbox-workspace.js +48 -48
  86. package/dist/app/components/session/search-markdown-highlight.js +7 -7
  87. package/dist/app/components/session/search-results-view.js +8 -8
  88. package/dist/app/components/session/session-admin-access.js +4 -4
  89. package/dist/app/components/session/session-admission-notice.js +4 -4
  90. package/dist/app/components/session/session-avatar-picker.js +21 -21
  91. package/dist/app/components/session/session-avatar.js +19 -19
  92. package/dist/app/components/session/session-machine-access-notice.js +4 -4
  93. package/dist/app/components/session/session-profile-dialog.js +25 -25
  94. package/dist/app/components/session/session-profile-editor.js +26 -26
  95. package/dist/app/components/session/session-retention.js +3 -3
  96. package/dist/app/components/session/session-search-dialog.js +8 -8
  97. package/dist/app/components/session/session-tenancy-control.js +2 -2
  98. package/dist/app/components/session/session-usage-limit-section.js +4 -4
  99. package/dist/app/components/session/share-chat-dialog.js +5 -5
  100. package/dist/app/components/session/subagents.js +8 -8
  101. package/dist/app/components/session/subscription-account-indicator.js +12 -7
  102. package/dist/app/components/session/subscription-account-menu.d.ts +15 -15
  103. package/dist/app/components/session/subscription-account-menu.js +6 -1
  104. package/dist/app/components/session/subscription-account.d.ts +16 -9
  105. package/dist/app/components/settings/row-select.js +4 -4
  106. package/dist/app/components/transcription-settings.js +6 -6
  107. package/dist/app/components/ui/destructive-confirm.js +5 -5
  108. package/dist/app/components/usage/usage-entry.js +3 -3
  109. package/dist/app/components/window-bar.js +9 -9
  110. package/dist/app/components/workspace-composer-plus.js +16 -16
  111. package/dist/app/components/workspace-reach.js +4 -4
  112. package/dist/app/embed/session-app.js +160 -157
  113. package/dist/app/lib/actions/actions-provider.js +8 -8
  114. package/dist/app/lib/agent-capabilities.d.ts +12 -2
  115. package/dist/app/lib/agent-capabilities.js +3 -3
  116. package/dist/app/lib/codex-usage-query.js +2 -2
  117. package/dist/app/lib/composer-connectors.js +14 -14
  118. package/dist/app/lib/console-site.js +2 -2
  119. package/dist/app/lib/console-text.js +2 -2
  120. package/dist/app/lib/events.js +12 -12
  121. package/dist/app/lib/failed-session-copy.js +3 -3
  122. package/dist/app/lib/model-access-onboarding.js +3 -3
  123. package/dist/app/lib/move-chat-to-machine.js +3 -3
  124. package/dist/app/lib/session-branch-cache.js +8 -8
  125. package/dist/app/lib/session-create.js +4 -4
  126. package/dist/app/lib/session-group-pagination.js +8 -8
  127. package/dist/app/lib/session-hover-facts.js +13 -13
  128. package/dist/app/lib/session-model.js +2 -2
  129. package/dist/app/lib/session-pins.js +1 -1
  130. package/dist/app/lib/session-rail.js +5 -5
  131. package/dist/app/lib/session-rename.js +3 -3
  132. package/dist/app/lib/sessions-group.d.ts +5 -3
  133. package/dist/app/lib/sessions-group.js +7 -7
  134. package/dist/app/lib/site-tool-consent-dialog.js +7 -7
  135. package/dist/app/lib/site-tool-consent.js +1 -1
  136. package/dist/app/lib/subscription-accounts.d.ts +79 -0
  137. package/dist/app/lib/subscription-accounts.js +18 -0
  138. package/dist/app/lib/turn-failure-analytics.js +4 -4
  139. package/dist/app/lib/use-follow-up-repositories.js +3 -3
  140. package/dist/app/lib/use-workspace-machines.js +4 -4
  141. package/dist/app/lib/use-workspace-model-catalog.js +3 -3
  142. package/dist/app/lib/use-workspace-rigs.js +2 -2
  143. package/dist/app/lib/workspace-navigation-preference.js +4 -4
  144. package/dist/app/lib/workspace-scope-context.js +3 -3
  145. package/dist/app/routes/artifacts.js +48 -48
  146. package/dist/app/routes/retained-artifact.js +32 -32
  147. package/dist/app/routes/session.js +96 -96
  148. package/dist/app/routes/sessions-index-hydration.js +5 -5
  149. package/dist/app/routes/sessions-index.js +76 -76
  150. package/dist/app/routes/site-view.js +55 -55
  151. package/dist/artifacts-document.js +4 -4
  152. package/dist/artifacts-presentation.js +4 -4
  153. package/dist/artifacts-spreadsheet.js +4 -4
  154. package/dist/artifacts.js +10 -10
  155. package/dist/automations.js +10 -10
  156. package/dist/{browser-viewer-ZHQDVHZ2.js → browser-viewer-F4FL7JKB.js} +4 -4
  157. package/dist/{chat-interactive-block-VSDD6X3M.js → chat-interactive-block-4U5JWRSY.js} +5 -5
  158. package/dist/{chunk-4K64EKM7.js → chunk-22YIIM3X.js} +4 -4
  159. package/dist/{chunk-3NNAC43A.js → chunk-2N7ACQ7M.js} +2 -2
  160. package/dist/{chunk-7Z76QP64.js → chunk-2PY5XD3F.js} +35 -5
  161. package/dist/chunk-2PY5XD3F.js.map +1 -0
  162. package/dist/{chunk-WDASYY4S.js → chunk-2TEYUDJD.js} +8 -8
  163. package/dist/{chunk-OTW25A6I.js → chunk-37JJQNZB.js} +3 -3
  164. package/dist/{chunk-VCJQQYRE.js → chunk-3DWQPURZ.js} +4 -4
  165. package/dist/{chunk-GTRAH4FG.js → chunk-3GWC3FU3.js} +2 -2
  166. package/dist/{chunk-AB5IW227.js → chunk-3ICY6LP3.js} +3 -3
  167. package/dist/{chunk-WIFDNUKD.js → chunk-3OCU5RX5.js} +3 -3
  168. package/dist/{chunk-UBRQ3PQD.js → chunk-3SPDJLOR.js} +2 -2
  169. package/dist/{chunk-IZXYFWA4.js → chunk-3WVLR7UA.js} +12 -12
  170. package/dist/{chunk-DEHLWZSI.js → chunk-3XMB3L57.js} +4 -4
  171. package/dist/{chunk-AJBDAVX3.js → chunk-4IUOBO2H.js} +7 -7
  172. package/dist/{chunk-NFCS5WYC.js → chunk-4KQ3A3EO.js} +3 -3
  173. package/dist/{chunk-LIJNVIT3.js → chunk-4L5B5AZT.js} +3 -3
  174. package/dist/{chunk-EDDKPIIV.js → chunk-4NB3TPNE.js} +2 -2
  175. package/dist/{chunk-PSM3CU7N.js → chunk-4TDKXHCD.js} +46 -39
  176. package/dist/chunk-4TDKXHCD.js.map +1 -0
  177. package/dist/{chunk-OJWDNNW3.js → chunk-4TPTGBIO.js} +5 -5
  178. package/dist/{chunk-J2WY42FA.js → chunk-4UHGW6WF.js} +2 -2
  179. package/dist/{chunk-7NLF35YL.js → chunk-4YN2JLYK.js} +4 -4
  180. package/dist/{chunk-OOOSGPJL.js → chunk-53MYEEMA.js} +1 -1
  181. package/dist/{chunk-467WDSOK.js → chunk-5HYWXPMA.js} +2 -2
  182. package/dist/{chunk-XMBOLFFS.js → chunk-5IMNL6IV.js} +2 -2
  183. package/dist/{chunk-4Z5X7PLC.js → chunk-5MLM5T5C.js} +3 -3
  184. package/dist/{chunk-YMI27QPF.js → chunk-5NKQZVXP.js} +2 -2
  185. package/dist/{chunk-ZW5YTIH3.js → chunk-5PB46DAA.js} +1 -1
  186. package/dist/{chunk-ZW5YTIH3.js.map → chunk-5PB46DAA.js.map} +1 -1
  187. package/dist/{chunk-CYDXCILL.js → chunk-5SODSGW7.js} +7 -7
  188. package/dist/{chunk-Q5EZNBPI.js → chunk-5YAJASCO.js} +3 -3
  189. package/dist/{chunk-M3FDGRB4.js → chunk-62XAL5BA.js} +3 -3
  190. package/dist/{chunk-SGH7I7OY.js → chunk-67R6NAFI.js} +2 -2
  191. package/dist/{chunk-Q5K2J5GG.js → chunk-6BN3RU7T.js} +13 -3
  192. package/dist/chunk-6BN3RU7T.js.map +1 -0
  193. package/dist/{chunk-PYB4BFEC.js → chunk-6BQLDL6R.js} +3 -3
  194. package/dist/{chunk-YJSCLGAW.js → chunk-6EZYHJTL.js} +3 -3
  195. package/dist/{chunk-OWET7EY2.js → chunk-6GW7NJMK.js} +19 -13
  196. package/dist/{chunk-OWET7EY2.js.map → chunk-6GW7NJMK.js.map} +1 -1
  197. package/dist/{chunk-G5UQBTXY.js → chunk-6LXIL3Q3.js} +2 -2
  198. package/dist/{chunk-T67LTMSW.js → chunk-6LYVAJFZ.js} +10 -10
  199. package/dist/{chunk-3L465FBR.js → chunk-6WB5UXMZ.js} +6 -6
  200. package/dist/{chunk-EKJHOWTZ.js → chunk-74UGYVCA.js} +4 -4
  201. package/dist/{chunk-PWUSSSSL.js → chunk-7BTNYZC7.js} +2 -2
  202. package/dist/{chunk-NQ2CPQJF.js → chunk-7D3WIDKK.js} +26 -3
  203. package/dist/chunk-7D3WIDKK.js.map +1 -0
  204. package/dist/{chunk-ESXAECZ3.js → chunk-7KZFGA25.js} +2 -2
  205. package/dist/{chunk-EGKARC53.js → chunk-7MGDX2TD.js} +2 -2
  206. package/dist/{chunk-Y3XZEKDQ.js → chunk-7N3GFGB6.js} +2 -2
  207. package/dist/{chunk-AH3DGOTK.js → chunk-7SFSN6AX.js} +2 -2
  208. package/dist/{chunk-QPQ7R77C.js → chunk-7SU4YVZ5.js} +5 -1
  209. package/dist/chunk-7SU4YVZ5.js.map +1 -0
  210. package/dist/{chunk-6QK65ZWM.js → chunk-7TGUHFGO.js} +3 -3
  211. package/dist/{chunk-QURYQFDN.js → chunk-7ZIWO65F.js} +2 -2
  212. package/dist/{chunk-OYCK4JRS.js → chunk-AJHLEJTK.js} +2 -2
  213. package/dist/{chunk-3PZ3LRPV.js → chunk-AN4U7EPH.js} +3 -3
  214. package/dist/{chunk-77BHKC43.js → chunk-APG6CEG7.js} +1 -1
  215. package/dist/{chunk-FSDQQQIA.js → chunk-APHLXQNP.js} +3 -3
  216. package/dist/{chunk-SN2WENRP.js → chunk-AXHQ7QXV.js} +3 -3
  217. package/dist/{chunk-54U6ZBEX.js → chunk-AYTLSPF6.js} +3 -3
  218. package/dist/{chunk-WYGTAQMX.js → chunk-AZFVRPQM.js} +76 -22
  219. package/dist/chunk-AZFVRPQM.js.map +1 -0
  220. package/dist/{chunk-R33SBMB7.js → chunk-BBSKKBMV.js} +3 -3
  221. package/dist/{chunk-2GCHGWNE.js → chunk-BGH6TU2P.js} +3 -3
  222. package/dist/{chunk-D3PTVN2I.js → chunk-BGIYL26H.js} +2 -2
  223. package/dist/{chunk-BQYRZIZ7.js → chunk-BL7UQUC3.js} +2 -2
  224. package/dist/{chunk-EBTUPRRQ.js → chunk-BOUHCYL6.js} +4 -4
  225. package/dist/{chunk-MKDFYE2E.js → chunk-BVNGDFBC.js} +2 -2
  226. package/dist/{chunk-ICAMYP5M.js → chunk-BWJK64CP.js} +2 -2
  227. package/dist/{chunk-RHXYO4H2.js → chunk-BZ2GTCQV.js} +2 -2
  228. package/dist/{chunk-GIWFLWXG.js → chunk-C2KASMJK.js} +4 -4
  229. package/dist/{chunk-KO3OHHY2.js → chunk-CAZDRDQT.js} +2 -2
  230. package/dist/{chunk-OK7BQMCI.js → chunk-CBJRZKZB.js} +9 -9
  231. package/dist/{chunk-OYOFPNLC.js → chunk-CF6NYG7J.js} +4 -4
  232. package/dist/{chunk-MT2R57SF.js → chunk-COITN7WN.js} +2 -2
  233. package/dist/{chunk-OCXTTKVA.js → chunk-CPVOXM2Q.js} +2 -2
  234. package/dist/{chunk-HYEIA25Y.js → chunk-CTZRCBKH.js} +2 -2
  235. package/dist/{chunk-OCXEY7HE.js → chunk-CWL27YTB.js} +2 -2
  236. package/dist/{chunk-K4DQS2ML.js → chunk-D2I33V5P.js} +4 -4
  237. package/dist/{chunk-736RUNIA.js → chunk-DF7WI4JH.js} +4 -4
  238. package/dist/{chunk-KUE5BOQE.js → chunk-DKZYCJCO.js} +4 -4
  239. package/dist/{chunk-74CBR5YE.js → chunk-DQ32FKFQ.js} +2 -2
  240. package/dist/{chunk-4O2XWOLZ.js → chunk-DTKG2YUF.js} +3 -3
  241. package/dist/{chunk-GMHIOYB7.js → chunk-DUDA4V5R.js} +4 -4
  242. package/dist/{chunk-XUOYNJPB.js → chunk-ECROT4M5.js} +24 -24
  243. package/dist/{chunk-PVB4YVDP.js → chunk-EOXV5XGY.js} +2 -2
  244. package/dist/{chunk-U6552Q3T.js → chunk-EQQOZ6DD.js} +2 -2
  245. package/dist/{chunk-G6ICCGJ3.js → chunk-EY6W5H4B.js} +2 -2
  246. package/dist/{chunk-HWVPLFIW.js → chunk-EYRFEWXJ.js} +2 -2
  247. package/dist/{chunk-7YTR3UFO.js → chunk-FB4JWUVJ.js} +8 -5
  248. package/dist/chunk-FB4JWUVJ.js.map +1 -0
  249. package/dist/{chunk-U4LTPFD2.js → chunk-FKK2PD7K.js} +2 -2
  250. package/dist/{chunk-PUUEI4W3.js → chunk-FPHHIC5K.js} +5 -5
  251. package/dist/{chunk-SP44O3OU.js → chunk-FQM6L22H.js} +2 -2
  252. package/dist/{chunk-2J77TWGH.js → chunk-FW22IREV.js} +3 -3
  253. package/dist/{chunk-EBIVTDEG.js → chunk-G4M6AYDB.js} +2 -2
  254. package/dist/{chunk-O4JOE3R7.js → chunk-G55NAU5M.js} +60 -74
  255. package/dist/chunk-G55NAU5M.js.map +1 -0
  256. package/dist/{chunk-BASI553K.js → chunk-G6AZ2WIU.js} +4 -4
  257. package/dist/{chunk-SJYTQLN3.js → chunk-GJ5IDSAX.js} +3 -3
  258. package/dist/{chunk-TDTD66BK.js → chunk-GRDSEZWZ.js} +2 -2
  259. package/dist/{chunk-MV2CLIO6.js → chunk-HBVJIGY2.js} +6 -6
  260. package/dist/{chunk-R4JA5JFI.js → chunk-HCWQLIOE.js} +3 -3
  261. package/dist/{chunk-MZY3VKKM.js → chunk-HEVD4A5G.js} +2 -2
  262. package/dist/{chunk-DLVIRJGK.js → chunk-HNDHSEVJ.js} +2 -2
  263. package/dist/{chunk-LPKJ77EK.js → chunk-HNTZ7B7M.js} +2 -2
  264. package/dist/{chunk-QQIZMVAJ.js → chunk-HQ7GTMII.js} +59 -57
  265. package/dist/chunk-HQ7GTMII.js.map +1 -0
  266. package/dist/{chunk-IN3VQFKS.js → chunk-I2FC7CAI.js} +2 -2
  267. package/dist/{chunk-SK5S2PCK.js → chunk-I7BGHBOM.js} +14 -14
  268. package/dist/chunk-I7BGHBOM.js.map +1 -0
  269. package/dist/{chunk-ZBHGNE2J.js → chunk-IEHZFYMH.js} +3 -3
  270. package/dist/{chunk-DWJ6J3YW.js → chunk-IXISEVD7.js} +4 -4
  271. package/dist/{chunk-TK5FWVZR.js → chunk-IZEDVQUD.js} +3 -3
  272. package/dist/{chunk-HEGV4QMS.js → chunk-J42QE4VO.js} +2 -2
  273. package/dist/{chunk-PRT4J2DL.js → chunk-J555XSUM.js} +2 -2
  274. package/dist/{chunk-SBXSKRFA.js → chunk-JNMHFSDF.js} +3 -3
  275. package/dist/{chunk-KI46GKMD.js → chunk-JTBAOPYO.js} +7 -7
  276. package/dist/{chunk-JHZRAYI4.js → chunk-JWSRFXRN.js} +2 -2
  277. package/dist/chunk-JWSRFXRN.js.map +1 -0
  278. package/dist/{chunk-SXGJL7UT.js → chunk-K376MPJH.js} +14 -14
  279. package/dist/{chunk-OSJ366KR.js → chunk-KEBVT55V.js} +30 -30
  280. package/dist/{chunk-U5UGM5XD.js → chunk-KFIZAXHI.js} +5 -5
  281. package/dist/{chunk-KFNZZ2N6.js → chunk-KKGRDBMK.js} +2 -2
  282. package/dist/{chunk-PLYVGZIN.js → chunk-KKIG6DN5.js} +1 -1
  283. package/dist/{chunk-3OK7Y6ES.js → chunk-KKQO2GAA.js} +2 -2
  284. package/dist/{chunk-DQPIEQGP.js → chunk-KO753ZCZ.js} +2 -2
  285. package/dist/{chunk-YNTLWCF4.js → chunk-KYIRWU65.js} +3 -3
  286. package/dist/{chunk-JKL5S7UQ.js → chunk-L6V63DVI.js} +6 -6
  287. package/dist/{chunk-M5IQVMLR.js → chunk-LAZ2QZTJ.js} +11 -4
  288. package/dist/chunk-LAZ2QZTJ.js.map +1 -0
  289. package/dist/{chunk-CV4VVLPZ.js → chunk-LCNJ2KNS.js} +2 -2
  290. package/dist/{chunk-D74Z2N4K.js → chunk-LE7YKMTU.js} +2 -2
  291. package/dist/{chunk-D5TIVCXG.js → chunk-LEBEOMVT.js} +2 -2
  292. package/dist/chunk-LKLQVANM.js +2 -0
  293. package/dist/{chunk-2OXSB2OL.js → chunk-LKWVBUH6.js} +3 -2
  294. package/dist/chunk-LKWVBUH6.js.map +1 -0
  295. package/dist/{chunk-WXF2RTS4.js → chunk-M6URPYUB.js} +2 -2
  296. package/dist/{chunk-H6BX6WOW.js → chunk-MDHFMRBC.js} +3 -3
  297. package/dist/{chunk-3CDJSKDW.js → chunk-MGZO7CHI.js} +3 -3
  298. package/dist/{chunk-DCEQCGVN.js → chunk-MIWU52TW.js} +2 -2
  299. package/dist/{chunk-PF2WU2IL.js → chunk-ND4IQJUM.js} +120 -17
  300. package/dist/chunk-ND4IQJUM.js.map +1 -0
  301. package/dist/{chunk-3PM3M2Q6.js → chunk-NDXBF3RW.js} +27 -11
  302. package/dist/chunk-NDXBF3RW.js.map +1 -0
  303. package/dist/{chunk-LVELUUK6.js → chunk-NF6QVVMP.js} +2 -2
  304. package/dist/{chunk-UMX6DZME.js → chunk-NTZ5ZNVK.js} +2 -2
  305. package/dist/{chunk-FBA2NXYH.js → chunk-NWLRABUR.js} +3 -3
  306. package/dist/{chunk-TNSJFZ6Q.js → chunk-O2H2U7YS.js} +4 -4
  307. package/dist/{chunk-BFFNINCC.js → chunk-OAL2PPX4.js} +3 -3
  308. package/dist/{chunk-WTSQUCHB.js → chunk-OCYTHZ4A.js} +3 -3
  309. package/dist/{chunk-ZAX4XQLN.js → chunk-OEDTCIXF.js} +2 -2
  310. package/dist/{chunk-CHU3RDV4.js → chunk-OLVSYB3P.js} +3 -3
  311. package/dist/{chunk-PZKHST7A.js → chunk-OQ6QOPK6.js} +10 -3
  312. package/dist/chunk-OQ6QOPK6.js.map +1 -0
  313. package/dist/{chunk-IFSXVU2S.js → chunk-OQHTFOCA.js} +2 -2
  314. package/dist/{chunk-OXQ2SXVC.js → chunk-P56AVROH.js} +2 -2
  315. package/dist/{chunk-CXAN2FHF.js → chunk-PCEJHHGP.js} +6 -6
  316. package/dist/{chunk-5MIBQ4P5.js → chunk-PHGQGVVL.js} +2 -2
  317. package/dist/{chunk-FLWQJDJ5.js → chunk-PUZRHEQI.js} +6 -6
  318. package/dist/{chunk-OP2GD6QW.js → chunk-PV7U6OOJ.js} +2 -2
  319. package/dist/{chunk-SPD4ULVB.js → chunk-PYMROAWS.js} +2 -1
  320. package/dist/chunk-PYMROAWS.js.map +1 -0
  321. package/dist/{chunk-X2QJXDE4.js → chunk-PZQACDH5.js} +8 -8
  322. package/dist/{chunk-CH4UQ4NO.js → chunk-PZTS4O6E.js} +5 -5
  323. package/dist/{chunk-TKQL7EDB.js → chunk-Q42QHUAQ.js} +2 -2
  324. package/dist/{chunk-MRECRNVU.js → chunk-QCYGB6TZ.js} +5 -5
  325. package/dist/{chunk-GSCGKJNK.js → chunk-QECMETOF.js} +2 -2
  326. package/dist/{chunk-RMCLFSMX.js → chunk-QGX3LE6H.js} +2 -2
  327. package/dist/{chunk-HTMQGS63.js → chunk-QI3NDQFP.js} +8 -8
  328. package/dist/{chunk-UU5FBVRX.js → chunk-QZE4BTLA.js} +6 -5
  329. package/dist/chunk-QZE4BTLA.js.map +1 -0
  330. package/dist/{chunk-R5QAL43H.js → chunk-RA3Q52O2.js} +2 -2
  331. package/dist/chunk-RBOHWUSN.js +151 -0
  332. package/dist/chunk-RBOHWUSN.js.map +1 -0
  333. package/dist/{chunk-AJDGP2N4.js → chunk-RJNOQEJJ.js} +20 -20
  334. package/dist/{chunk-477DTTMH.js → chunk-RSFOFUR7.js} +3 -3
  335. package/dist/{chunk-JV5ULONH.js → chunk-RXR6PMSH.js} +39 -39
  336. package/dist/{chunk-J2BTILRR.js → chunk-SM7HFCGC.js} +2 -2
  337. package/dist/{chunk-UTRNLNCW.js → chunk-SN6ZWYOP.js} +69 -97
  338. package/dist/chunk-SN6ZWYOP.js.map +1 -0
  339. package/dist/{chunk-OBGOLHCP.js → chunk-T4HK4XCI.js} +3 -3
  340. package/dist/{chunk-XVLEBB4Y.js → chunk-TBWL6YWL.js} +2 -2
  341. package/dist/{chunk-AAS7OWV6.js → chunk-TIDXYWFX.js} +3 -3
  342. package/dist/{chunk-N3FM4BNA.js → chunk-TKHRGY2P.js} +2 -2
  343. package/dist/{chunk-GU7T2S5N.js → chunk-TU2GSZL7.js} +2 -2
  344. package/dist/{chunk-OI6VI6SU.js → chunk-U6HGJXXQ.js} +8 -8
  345. package/dist/{chunk-4BWMAGJJ.js → chunk-UGRW6RTR.js} +3 -3
  346. package/dist/{chunk-AVXDIRRW.js → chunk-UMRUDYUK.js} +2 -2
  347. package/dist/{chunk-FNXCFIPW.js → chunk-UOT2R5ZD.js} +2 -2
  348. package/dist/{chunk-DIP7YALH.js → chunk-USURKJVT.js} +2 -2
  349. package/dist/{chunk-S27VZ5DO.js → chunk-UU6Q67XM.js} +6 -6
  350. package/dist/{chunk-LTJFV2JI.js → chunk-UZ7NP5CW.js} +2 -2
  351. package/dist/{chunk-H6MJFMHZ.js → chunk-V4FO7UOE.js} +3 -3
  352. package/dist/{chunk-RGR57NYY.js → chunk-V4ZOZRCW.js} +2 -2
  353. package/dist/{chunk-LQKVNREV.js → chunk-V57YMKQZ.js} +3 -3
  354. package/dist/{chunk-XZCCEKPW.js → chunk-VOIWZBY6.js} +6 -6
  355. package/dist/{chunk-E5KOWRDU.js → chunk-VPHPLPDA.js} +2 -2
  356. package/dist/{chunk-OGU73VUN.js → chunk-VUL4KPUU.js} +2 -2
  357. package/dist/{chunk-SFIXTOOJ.js → chunk-VWF6ILAR.js} +3 -3
  358. package/dist/{chunk-FER6EVIY.js → chunk-W54BHJO7.js} +2 -2
  359. package/dist/{chunk-34NV52R3.js → chunk-WCYE4BLC.js} +4 -4
  360. package/dist/{chunk-RISUROBM.js → chunk-WTV25ELY.js} +4 -4
  361. package/dist/{chunk-UO35OEOX.js → chunk-WZYGH7CN.js} +3 -3
  362. package/dist/{chunk-CEMSIU4Z.js → chunk-XG2RWUF7.js} +5 -5
  363. package/dist/chunk-XK72HZ4C.js +147 -0
  364. package/dist/chunk-XK72HZ4C.js.map +1 -0
  365. package/dist/{chunk-K3D7IQQP.js → chunk-XV7QOT7W.js} +6 -6
  366. package/dist/{chunk-GOCODNQS.js → chunk-XWECT3GX.js} +2 -2
  367. package/dist/{chunk-5MHMCE2G.js → chunk-XZQK2ZLW.js} +3 -3
  368. package/dist/{chunk-JV3UI7BH.js → chunk-Y5BR66OH.js} +3 -3
  369. package/dist/{chunk-VXORMNU4.js → chunk-YBHAAULA.js} +67 -2
  370. package/dist/chunk-YBHAAULA.js.map +1 -0
  371. package/dist/{chunk-4F3AEJI6.js → chunk-YD6XU6FY.js} +4 -4
  372. package/dist/{chunk-VATYK3JQ.js → chunk-YFE47G3C.js} +3 -3
  373. package/dist/{chunk-ZR5EKJT6.js → chunk-YG6TWPP7.js} +2 -2
  374. package/dist/{chunk-44JWVYJB.js → chunk-YH3ARKBB.js} +2 -2
  375. package/dist/{chunk-752WXSDN.js → chunk-YI66STKJ.js} +2 -2
  376. package/dist/{chunk-QRECBCJM.js → chunk-YMVPYMKB.js} +2 -2
  377. package/dist/{chunk-77SYIH6O.js → chunk-YPIXBAF6.js} +2 -2
  378. package/dist/{chunk-WRMUXZ7C.js → chunk-YSWPNY6G.js} +3 -3
  379. package/dist/{chunk-GTHCHCWW.js → chunk-YWNNMBZG.js} +3 -3
  380. package/dist/{chunk-3DRLCX5V.js → chunk-Z3HYM2JT.js} +2 -2
  381. package/dist/{chunk-M3HGBO2Y.js → chunk-ZAC7YPRA.js} +1 -1
  382. package/dist/{chunk-2VJOSU4H.js → chunk-ZENESDAF.js} +2 -2
  383. package/dist/{chunk-4JXPLTWV.js → chunk-ZHAPMETO.js} +2 -2
  384. package/dist/{chunk-IJR6VOLU.js → chunk-ZVR6DUZH.js} +2 -2
  385. package/dist/components/message-timeline.d.ts +10 -2
  386. package/dist/composer.js +8 -8
  387. package/dist/{computer-viewer-5LKRCEVQ.js → computer-viewer-FOIOZUF5.js} +5 -5
  388. package/dist/connect.js +12 -12
  389. package/dist/desktop-dictation.js +8 -8
  390. package/dist/desktop.js +2 -2
  391. package/dist/editor.js +2 -2
  392. package/dist/{embedded-new-voice-GHJRY3YL.js → embedded-new-voice-WTXAJNGO.js} +5 -5
  393. package/dist/{embedded-voice-ASQXBSTX.js → embedded-voice-SIJOPN2G.js} +5 -5
  394. package/dist/{fleet-decision-row-U7LDVBEM.js → fleet-decision-row-XKQ3GMYT.js} +2 -2
  395. package/dist/hooks/use-recordings.d.ts +4 -2
  396. package/dist/in-chat-connect-model.js +5 -5
  397. package/dist/index.d.ts +2 -2
  398. package/dist/index.js +66 -60
  399. package/dist/interaction.js +5 -5
  400. package/dist/{latest-question-RNVF262Q.js → latest-question-KA7AQYVI.js} +2 -2
  401. package/dist/machines.js +3 -3
  402. package/dist/meetings/recorder-context.d.ts +6 -1
  403. package/dist/meetings/recorder-panel.d.ts +2 -5
  404. package/dist/meetings-recorder.js +1 -1
  405. package/dist/meetings.js +25 -23
  406. package/dist/meetings.js.map +1 -1
  407. package/dist/messages/en.d.ts +4 -0
  408. package/dist/messages.js +1 -1
  409. package/dist/{model-policy-picker-menu-E6XKMFTA.js → model-policy-picker-menu-6N2G7VGX.js} +4 -4
  410. package/dist/{payment-page-card-DJDKV2LW.js → payment-page-card-IJFZHQ52.js} +4 -4
  411. package/dist/{platform-activity-row-MSDCSMET.js → platform-activity-row-MFCMGI43.js} +2 -2
  412. package/dist/{queue-surface-implementation-GUAIG6TK.js → queue-surface-implementation-BBCDWWOP.js} +5 -5
  413. package/dist/realtime.js +4 -4
  414. package/dist/{recorder-host-2MYDJPQW.js → recorder-host-LDYYOKG7.js} +5 -5
  415. package/dist/recordings.js +4 -4
  416. package/dist/{sandbox-files-W5W2LW4K.js → sandbox-files-VYRBIXJY.js} +6 -6
  417. package/dist/session-app.js +160 -157
  418. package/dist/{session-connect-cards-HPH7JOZP.js → session-connect-cards-GBPSL6OT.js} +9 -9
  419. package/dist/session-connect-cards-GBPSL6OT.js.map +1 -0
  420. package/dist/session-list-model.js +2 -2
  421. package/dist/{session-realtime-SDTKFFIR.js → session-realtime-QGU57TND.js} +3 -3
  422. package/dist/session-realtime-QGU57TND.js.map +1 -0
  423. package/dist/session-realtime.js +2 -2
  424. package/dist/session-ui.js +33 -33
  425. package/dist/session.d.ts +3 -2
  426. package/dist/session.js +16 -10
  427. package/dist/sites.js +2 -2
  428. package/dist/terminal.js +2 -2
  429. package/dist/this-computer.js +3 -3
  430. package/dist/timeline/index.d.ts +3 -2
  431. package/dist/timeline/projection.d.ts +52 -0
  432. package/dist/timeline/turn-summary-model.d.ts +4 -3
  433. package/dist/timeline/types.d.ts +8 -2
  434. package/dist/timeline/use-timeline-pauses.d.ts +12 -0
  435. package/dist/timeline/work-presentation.d.ts +4 -3
  436. package/dist/{timeline-annotation-markers-FNILLWNU.js → timeline-annotation-markers-LL6ZVBZH.js} +2 -2
  437. package/dist/{timeline-annotation-selection-MBCIDO2Q.js → timeline-annotation-selection-WQA76WYC.js} +2 -2
  438. package/dist/{timeline-annotations-dialog-JPNKLOTE.js → timeline-annotations-dialog-HHETAEZA.js} +3 -3
  439. package/dist/timeline-model.js +2 -2
  440. package/dist/ui/access-list.js +5 -5
  441. package/dist/ui/cadence-picker.js +4 -4
  442. package/dist/ui/choice-cards.js +3 -3
  443. package/dist/ui/confirm-dialog.js +2 -2
  444. package/dist/ui/copy-field.js +3 -3
  445. package/dist/ui/detail-page.js +2 -2
  446. package/dist/ui/detail-sheet.js +2 -2
  447. package/dist/ui/disclosure.js +3 -3
  448. package/dist/ui/email-chips-input.js +3 -3
  449. package/dist/ui/field.js +2 -2
  450. package/dist/ui/flush-form-page.js +3 -3
  451. package/dist/ui/form-dialog.js +2 -2
  452. package/dist/ui/list-row.js +3 -3
  453. package/dist/ui/relative-time.js +2 -2
  454. package/dist/ui/revision-history.js +4 -4
  455. package/dist/ui/role-select.js +5 -5
  456. package/dist/ui/select-menu.js +3 -3
  457. package/dist/ui/usage-meter.d.ts +8 -2
  458. package/dist/ui/usage-meter.js +5 -3
  459. package/dist/usage.js +2 -2
  460. package/dist/workbench.js +4 -4
  461. package/package.json +6 -5
  462. package/src/app/components/agent/agent-capability-picker.test.tsx +1 -1
  463. package/src/app/components/models/subscription-usage.tsx +178 -0
  464. package/src/app/components/rail/session-row-content.tsx +27 -0
  465. package/src/app/components/session/subscription-account-indicator.test.ts +78 -18
  466. package/src/app/components/session/subscription-account-indicator.tsx +16 -31
  467. package/src/app/components/session/subscription-account-menu.tsx +79 -101
  468. package/src/app/components/session/subscription-account.test.ts +161 -54
  469. package/src/app/components/session/subscription-account.ts +106 -117
  470. package/src/app/lib/agent-capabilities.tsx +34 -7
  471. package/src/app/lib/session-branch-cache.tsx +1 -0
  472. package/src/app/lib/session-pins.tsx +1 -0
  473. package/src/app/lib/session-row-paused.test.tsx +183 -0
  474. package/src/app/lib/sessions-group-channels.test.ts +4 -4
  475. package/src/app/lib/sessions-group.tsx +62 -4
  476. package/src/app/lib/subscription-accounts.tsx +283 -0
  477. package/src/app/routes/session.tsx +2 -0
  478. package/src/components/message-timeline.tsx +14 -2
  479. package/src/components/session-conversation.tsx +2 -1
  480. package/src/components/timeline-annotations.tsx +4 -1
  481. package/src/components/timeline-settlement.ts +1 -1
  482. package/src/hooks/use-composer.ts +104 -25
  483. package/src/hooks/use-recordings.ts +5 -0
  484. package/src/index.ts +5 -0
  485. package/src/meetings/meeting-detail-page.tsx +4 -2
  486. package/src/meetings/meetings-pages.test.tsx +38 -0
  487. package/src/meetings/recorder-context.tsx +28 -5
  488. package/src/meetings/recorder-panel.tsx +13 -5
  489. package/src/meetings/recorder-workspace.test.tsx +57 -8
  490. package/src/messages/en.ts +5 -0
  491. package/src/recordings-model.ts +7 -0
  492. package/src/session.ts +8 -1
  493. package/src/timeline/index.ts +4 -1
  494. package/src/timeline/projection.ts +228 -16
  495. package/src/timeline/turn-summary-model.ts +4 -3
  496. package/src/timeline/turn-summary.tsx +15 -2
  497. package/src/timeline/types.ts +8 -2
  498. package/src/timeline/use-timeline-pauses.ts +105 -0
  499. package/src/timeline/work-presentation.ts +13 -4
  500. package/src/ui/usage-meter.tsx +10 -7
  501. package/styles/compiled.css +3 -0
  502. package/dist/chunk-2OXSB2OL.js.map +0 -1
  503. package/dist/chunk-3PM3M2Q6.js.map +0 -1
  504. package/dist/chunk-7YTR3UFO.js.map +0 -1
  505. package/dist/chunk-7Z76QP64.js.map +0 -1
  506. package/dist/chunk-JHZRAYI4.js.map +0 -1
  507. package/dist/chunk-M5IQVMLR.js.map +0 -1
  508. package/dist/chunk-NQ2CPQJF.js.map +0 -1
  509. package/dist/chunk-O2UPPN5M.js +0 -2
  510. package/dist/chunk-O4JOE3R7.js.map +0 -1
  511. package/dist/chunk-PF2WU2IL.js.map +0 -1
  512. package/dist/chunk-PSM3CU7N.js.map +0 -1
  513. package/dist/chunk-PZKHST7A.js.map +0 -1
  514. package/dist/chunk-Q5K2J5GG.js.map +0 -1
  515. package/dist/chunk-QPQ7R77C.js.map +0 -1
  516. package/dist/chunk-QQIZMVAJ.js.map +0 -1
  517. package/dist/chunk-SK5S2PCK.js.map +0 -1
  518. package/dist/chunk-SPD4ULVB.js.map +0 -1
  519. package/dist/chunk-UTRNLNCW.js.map +0 -1
  520. package/dist/chunk-UU5FBVRX.js.map +0 -1
  521. package/dist/chunk-VXORMNU4.js.map +0 -1
  522. package/dist/chunk-WYGTAQMX.js.map +0 -1
  523. /package/dist/{browser-viewer-ZHQDVHZ2.js.map → app/components/models/subscription-usage.js.map} +0 -0
  524. /package/dist/{chat-interactive-block-VSDD6X3M.js.map → app/lib/subscription-accounts.js.map} +0 -0
  525. /package/dist/{chunk-O2UPPN5M.js.map → browser-viewer-F4FL7JKB.js.map} +0 -0
  526. /package/dist/{computer-viewer-5LKRCEVQ.js.map → chat-interactive-block-4U5JWRSY.js.map} +0 -0
  527. /package/dist/{chunk-4K64EKM7.js.map → chunk-22YIIM3X.js.map} +0 -0
  528. /package/dist/{chunk-3NNAC43A.js.map → chunk-2N7ACQ7M.js.map} +0 -0
  529. /package/dist/{chunk-WDASYY4S.js.map → chunk-2TEYUDJD.js.map} +0 -0
  530. /package/dist/{chunk-OTW25A6I.js.map → chunk-37JJQNZB.js.map} +0 -0
  531. /package/dist/{chunk-VCJQQYRE.js.map → chunk-3DWQPURZ.js.map} +0 -0
  532. /package/dist/{chunk-GTRAH4FG.js.map → chunk-3GWC3FU3.js.map} +0 -0
  533. /package/dist/{chunk-AB5IW227.js.map → chunk-3ICY6LP3.js.map} +0 -0
  534. /package/dist/{chunk-WIFDNUKD.js.map → chunk-3OCU5RX5.js.map} +0 -0
  535. /package/dist/{chunk-UBRQ3PQD.js.map → chunk-3SPDJLOR.js.map} +0 -0
  536. /package/dist/{chunk-IZXYFWA4.js.map → chunk-3WVLR7UA.js.map} +0 -0
  537. /package/dist/{chunk-DEHLWZSI.js.map → chunk-3XMB3L57.js.map} +0 -0
  538. /package/dist/{chunk-AJBDAVX3.js.map → chunk-4IUOBO2H.js.map} +0 -0
  539. /package/dist/{chunk-NFCS5WYC.js.map → chunk-4KQ3A3EO.js.map} +0 -0
  540. /package/dist/{chunk-LIJNVIT3.js.map → chunk-4L5B5AZT.js.map} +0 -0
  541. /package/dist/{chunk-EDDKPIIV.js.map → chunk-4NB3TPNE.js.map} +0 -0
  542. /package/dist/{chunk-OJWDNNW3.js.map → chunk-4TPTGBIO.js.map} +0 -0
  543. /package/dist/{chunk-J2WY42FA.js.map → chunk-4UHGW6WF.js.map} +0 -0
  544. /package/dist/{chunk-7NLF35YL.js.map → chunk-4YN2JLYK.js.map} +0 -0
  545. /package/dist/{chunk-OOOSGPJL.js.map → chunk-53MYEEMA.js.map} +0 -0
  546. /package/dist/{chunk-467WDSOK.js.map → chunk-5HYWXPMA.js.map} +0 -0
  547. /package/dist/{chunk-XMBOLFFS.js.map → chunk-5IMNL6IV.js.map} +0 -0
  548. /package/dist/{chunk-4Z5X7PLC.js.map → chunk-5MLM5T5C.js.map} +0 -0
  549. /package/dist/{chunk-YMI27QPF.js.map → chunk-5NKQZVXP.js.map} +0 -0
  550. /package/dist/{chunk-CYDXCILL.js.map → chunk-5SODSGW7.js.map} +0 -0
  551. /package/dist/{chunk-Q5EZNBPI.js.map → chunk-5YAJASCO.js.map} +0 -0
  552. /package/dist/{chunk-M3FDGRB4.js.map → chunk-62XAL5BA.js.map} +0 -0
  553. /package/dist/{chunk-SGH7I7OY.js.map → chunk-67R6NAFI.js.map} +0 -0
  554. /package/dist/{chunk-PYB4BFEC.js.map → chunk-6BQLDL6R.js.map} +0 -0
  555. /package/dist/{chunk-YJSCLGAW.js.map → chunk-6EZYHJTL.js.map} +0 -0
  556. /package/dist/{chunk-G5UQBTXY.js.map → chunk-6LXIL3Q3.js.map} +0 -0
  557. /package/dist/{chunk-T67LTMSW.js.map → chunk-6LYVAJFZ.js.map} +0 -0
  558. /package/dist/{chunk-3L465FBR.js.map → chunk-6WB5UXMZ.js.map} +0 -0
  559. /package/dist/{chunk-EKJHOWTZ.js.map → chunk-74UGYVCA.js.map} +0 -0
  560. /package/dist/{chunk-PWUSSSSL.js.map → chunk-7BTNYZC7.js.map} +0 -0
  561. /package/dist/{chunk-ESXAECZ3.js.map → chunk-7KZFGA25.js.map} +0 -0
  562. /package/dist/{chunk-EGKARC53.js.map → chunk-7MGDX2TD.js.map} +0 -0
  563. /package/dist/{chunk-Y3XZEKDQ.js.map → chunk-7N3GFGB6.js.map} +0 -0
  564. /package/dist/{chunk-AH3DGOTK.js.map → chunk-7SFSN6AX.js.map} +0 -0
  565. /package/dist/{chunk-6QK65ZWM.js.map → chunk-7TGUHFGO.js.map} +0 -0
  566. /package/dist/{chunk-QURYQFDN.js.map → chunk-7ZIWO65F.js.map} +0 -0
  567. /package/dist/{chunk-OYCK4JRS.js.map → chunk-AJHLEJTK.js.map} +0 -0
  568. /package/dist/{chunk-3PZ3LRPV.js.map → chunk-AN4U7EPH.js.map} +0 -0
  569. /package/dist/{chunk-77BHKC43.js.map → chunk-APG6CEG7.js.map} +0 -0
  570. /package/dist/{chunk-FSDQQQIA.js.map → chunk-APHLXQNP.js.map} +0 -0
  571. /package/dist/{chunk-SN2WENRP.js.map → chunk-AXHQ7QXV.js.map} +0 -0
  572. /package/dist/{chunk-54U6ZBEX.js.map → chunk-AYTLSPF6.js.map} +0 -0
  573. /package/dist/{chunk-R33SBMB7.js.map → chunk-BBSKKBMV.js.map} +0 -0
  574. /package/dist/{chunk-2GCHGWNE.js.map → chunk-BGH6TU2P.js.map} +0 -0
  575. /package/dist/{chunk-D3PTVN2I.js.map → chunk-BGIYL26H.js.map} +0 -0
  576. /package/dist/{chunk-BQYRZIZ7.js.map → chunk-BL7UQUC3.js.map} +0 -0
  577. /package/dist/{chunk-EBTUPRRQ.js.map → chunk-BOUHCYL6.js.map} +0 -0
  578. /package/dist/{chunk-MKDFYE2E.js.map → chunk-BVNGDFBC.js.map} +0 -0
  579. /package/dist/{chunk-ICAMYP5M.js.map → chunk-BWJK64CP.js.map} +0 -0
  580. /package/dist/{chunk-RHXYO4H2.js.map → chunk-BZ2GTCQV.js.map} +0 -0
  581. /package/dist/{chunk-GIWFLWXG.js.map → chunk-C2KASMJK.js.map} +0 -0
  582. /package/dist/{chunk-KO3OHHY2.js.map → chunk-CAZDRDQT.js.map} +0 -0
  583. /package/dist/{chunk-OK7BQMCI.js.map → chunk-CBJRZKZB.js.map} +0 -0
  584. /package/dist/{chunk-OYOFPNLC.js.map → chunk-CF6NYG7J.js.map} +0 -0
  585. /package/dist/{chunk-MT2R57SF.js.map → chunk-COITN7WN.js.map} +0 -0
  586. /package/dist/{chunk-OCXTTKVA.js.map → chunk-CPVOXM2Q.js.map} +0 -0
  587. /package/dist/{chunk-HYEIA25Y.js.map → chunk-CTZRCBKH.js.map} +0 -0
  588. /package/dist/{chunk-OCXEY7HE.js.map → chunk-CWL27YTB.js.map} +0 -0
  589. /package/dist/{chunk-K4DQS2ML.js.map → chunk-D2I33V5P.js.map} +0 -0
  590. /package/dist/{chunk-736RUNIA.js.map → chunk-DF7WI4JH.js.map} +0 -0
  591. /package/dist/{chunk-KUE5BOQE.js.map → chunk-DKZYCJCO.js.map} +0 -0
  592. /package/dist/{chunk-74CBR5YE.js.map → chunk-DQ32FKFQ.js.map} +0 -0
  593. /package/dist/{chunk-4O2XWOLZ.js.map → chunk-DTKG2YUF.js.map} +0 -0
  594. /package/dist/{chunk-GMHIOYB7.js.map → chunk-DUDA4V5R.js.map} +0 -0
  595. /package/dist/{chunk-XUOYNJPB.js.map → chunk-ECROT4M5.js.map} +0 -0
  596. /package/dist/{chunk-PVB4YVDP.js.map → chunk-EOXV5XGY.js.map} +0 -0
  597. /package/dist/{chunk-U6552Q3T.js.map → chunk-EQQOZ6DD.js.map} +0 -0
  598. /package/dist/{chunk-G6ICCGJ3.js.map → chunk-EY6W5H4B.js.map} +0 -0
  599. /package/dist/{chunk-HWVPLFIW.js.map → chunk-EYRFEWXJ.js.map} +0 -0
  600. /package/dist/{chunk-U4LTPFD2.js.map → chunk-FKK2PD7K.js.map} +0 -0
  601. /package/dist/{chunk-PUUEI4W3.js.map → chunk-FPHHIC5K.js.map} +0 -0
  602. /package/dist/{chunk-SP44O3OU.js.map → chunk-FQM6L22H.js.map} +0 -0
  603. /package/dist/{chunk-2J77TWGH.js.map → chunk-FW22IREV.js.map} +0 -0
  604. /package/dist/{chunk-EBIVTDEG.js.map → chunk-G4M6AYDB.js.map} +0 -0
  605. /package/dist/{chunk-BASI553K.js.map → chunk-G6AZ2WIU.js.map} +0 -0
  606. /package/dist/{chunk-SJYTQLN3.js.map → chunk-GJ5IDSAX.js.map} +0 -0
  607. /package/dist/{chunk-TDTD66BK.js.map → chunk-GRDSEZWZ.js.map} +0 -0
  608. /package/dist/{chunk-MV2CLIO6.js.map → chunk-HBVJIGY2.js.map} +0 -0
  609. /package/dist/{chunk-R4JA5JFI.js.map → chunk-HCWQLIOE.js.map} +0 -0
  610. /package/dist/{chunk-MZY3VKKM.js.map → chunk-HEVD4A5G.js.map} +0 -0
  611. /package/dist/{chunk-DLVIRJGK.js.map → chunk-HNDHSEVJ.js.map} +0 -0
  612. /package/dist/{chunk-LPKJ77EK.js.map → chunk-HNTZ7B7M.js.map} +0 -0
  613. /package/dist/{chunk-IN3VQFKS.js.map → chunk-I2FC7CAI.js.map} +0 -0
  614. /package/dist/{chunk-ZBHGNE2J.js.map → chunk-IEHZFYMH.js.map} +0 -0
  615. /package/dist/{chunk-DWJ6J3YW.js.map → chunk-IXISEVD7.js.map} +0 -0
  616. /package/dist/{chunk-TK5FWVZR.js.map → chunk-IZEDVQUD.js.map} +0 -0
  617. /package/dist/{chunk-HEGV4QMS.js.map → chunk-J42QE4VO.js.map} +0 -0
  618. /package/dist/{chunk-PRT4J2DL.js.map → chunk-J555XSUM.js.map} +0 -0
  619. /package/dist/{chunk-SBXSKRFA.js.map → chunk-JNMHFSDF.js.map} +0 -0
  620. /package/dist/{chunk-KI46GKMD.js.map → chunk-JTBAOPYO.js.map} +0 -0
  621. /package/dist/{chunk-SXGJL7UT.js.map → chunk-K376MPJH.js.map} +0 -0
  622. /package/dist/{chunk-OSJ366KR.js.map → chunk-KEBVT55V.js.map} +0 -0
  623. /package/dist/{chunk-U5UGM5XD.js.map → chunk-KFIZAXHI.js.map} +0 -0
  624. /package/dist/{chunk-KFNZZ2N6.js.map → chunk-KKGRDBMK.js.map} +0 -0
  625. /package/dist/{chunk-PLYVGZIN.js.map → chunk-KKIG6DN5.js.map} +0 -0
  626. /package/dist/{chunk-3OK7Y6ES.js.map → chunk-KKQO2GAA.js.map} +0 -0
  627. /package/dist/{chunk-DQPIEQGP.js.map → chunk-KO753ZCZ.js.map} +0 -0
  628. /package/dist/{chunk-YNTLWCF4.js.map → chunk-KYIRWU65.js.map} +0 -0
  629. /package/dist/{chunk-JKL5S7UQ.js.map → chunk-L6V63DVI.js.map} +0 -0
  630. /package/dist/{chunk-CV4VVLPZ.js.map → chunk-LCNJ2KNS.js.map} +0 -0
  631. /package/dist/{chunk-D74Z2N4K.js.map → chunk-LE7YKMTU.js.map} +0 -0
  632. /package/dist/{chunk-D5TIVCXG.js.map → chunk-LEBEOMVT.js.map} +0 -0
  633. /package/dist/{embedded-new-voice-GHJRY3YL.js.map → chunk-LKLQVANM.js.map} +0 -0
  634. /package/dist/{chunk-WXF2RTS4.js.map → chunk-M6URPYUB.js.map} +0 -0
  635. /package/dist/{chunk-H6BX6WOW.js.map → chunk-MDHFMRBC.js.map} +0 -0
  636. /package/dist/{chunk-3CDJSKDW.js.map → chunk-MGZO7CHI.js.map} +0 -0
  637. /package/dist/{chunk-DCEQCGVN.js.map → chunk-MIWU52TW.js.map} +0 -0
  638. /package/dist/{chunk-LVELUUK6.js.map → chunk-NF6QVVMP.js.map} +0 -0
  639. /package/dist/{chunk-UMX6DZME.js.map → chunk-NTZ5ZNVK.js.map} +0 -0
  640. /package/dist/{chunk-FBA2NXYH.js.map → chunk-NWLRABUR.js.map} +0 -0
  641. /package/dist/{chunk-TNSJFZ6Q.js.map → chunk-O2H2U7YS.js.map} +0 -0
  642. /package/dist/{chunk-BFFNINCC.js.map → chunk-OAL2PPX4.js.map} +0 -0
  643. /package/dist/{chunk-WTSQUCHB.js.map → chunk-OCYTHZ4A.js.map} +0 -0
  644. /package/dist/{chunk-ZAX4XQLN.js.map → chunk-OEDTCIXF.js.map} +0 -0
  645. /package/dist/{chunk-CHU3RDV4.js.map → chunk-OLVSYB3P.js.map} +0 -0
  646. /package/dist/{chunk-IFSXVU2S.js.map → chunk-OQHTFOCA.js.map} +0 -0
  647. /package/dist/{chunk-OXQ2SXVC.js.map → chunk-P56AVROH.js.map} +0 -0
  648. /package/dist/{chunk-CXAN2FHF.js.map → chunk-PCEJHHGP.js.map} +0 -0
  649. /package/dist/{chunk-5MIBQ4P5.js.map → chunk-PHGQGVVL.js.map} +0 -0
  650. /package/dist/{chunk-FLWQJDJ5.js.map → chunk-PUZRHEQI.js.map} +0 -0
  651. /package/dist/{chunk-OP2GD6QW.js.map → chunk-PV7U6OOJ.js.map} +0 -0
  652. /package/dist/{chunk-X2QJXDE4.js.map → chunk-PZQACDH5.js.map} +0 -0
  653. /package/dist/{chunk-CH4UQ4NO.js.map → chunk-PZTS4O6E.js.map} +0 -0
  654. /package/dist/{chunk-TKQL7EDB.js.map → chunk-Q42QHUAQ.js.map} +0 -0
  655. /package/dist/{chunk-MRECRNVU.js.map → chunk-QCYGB6TZ.js.map} +0 -0
  656. /package/dist/{chunk-GSCGKJNK.js.map → chunk-QECMETOF.js.map} +0 -0
  657. /package/dist/{chunk-RMCLFSMX.js.map → chunk-QGX3LE6H.js.map} +0 -0
  658. /package/dist/{chunk-HTMQGS63.js.map → chunk-QI3NDQFP.js.map} +0 -0
  659. /package/dist/{chunk-R5QAL43H.js.map → chunk-RA3Q52O2.js.map} +0 -0
  660. /package/dist/{chunk-AJDGP2N4.js.map → chunk-RJNOQEJJ.js.map} +0 -0
  661. /package/dist/{chunk-477DTTMH.js.map → chunk-RSFOFUR7.js.map} +0 -0
  662. /package/dist/{chunk-JV5ULONH.js.map → chunk-RXR6PMSH.js.map} +0 -0
  663. /package/dist/{chunk-J2BTILRR.js.map → chunk-SM7HFCGC.js.map} +0 -0
  664. /package/dist/{chunk-OBGOLHCP.js.map → chunk-T4HK4XCI.js.map} +0 -0
  665. /package/dist/{chunk-XVLEBB4Y.js.map → chunk-TBWL6YWL.js.map} +0 -0
  666. /package/dist/{chunk-AAS7OWV6.js.map → chunk-TIDXYWFX.js.map} +0 -0
  667. /package/dist/{chunk-N3FM4BNA.js.map → chunk-TKHRGY2P.js.map} +0 -0
  668. /package/dist/{chunk-GU7T2S5N.js.map → chunk-TU2GSZL7.js.map} +0 -0
  669. /package/dist/{chunk-OI6VI6SU.js.map → chunk-U6HGJXXQ.js.map} +0 -0
  670. /package/dist/{chunk-4BWMAGJJ.js.map → chunk-UGRW6RTR.js.map} +0 -0
  671. /package/dist/{chunk-AVXDIRRW.js.map → chunk-UMRUDYUK.js.map} +0 -0
  672. /package/dist/{chunk-FNXCFIPW.js.map → chunk-UOT2R5ZD.js.map} +0 -0
  673. /package/dist/{chunk-DIP7YALH.js.map → chunk-USURKJVT.js.map} +0 -0
  674. /package/dist/{chunk-S27VZ5DO.js.map → chunk-UU6Q67XM.js.map} +0 -0
  675. /package/dist/{chunk-LTJFV2JI.js.map → chunk-UZ7NP5CW.js.map} +0 -0
  676. /package/dist/{chunk-H6MJFMHZ.js.map → chunk-V4FO7UOE.js.map} +0 -0
  677. /package/dist/{chunk-RGR57NYY.js.map → chunk-V4ZOZRCW.js.map} +0 -0
  678. /package/dist/{chunk-LQKVNREV.js.map → chunk-V57YMKQZ.js.map} +0 -0
  679. /package/dist/{chunk-XZCCEKPW.js.map → chunk-VOIWZBY6.js.map} +0 -0
  680. /package/dist/{chunk-E5KOWRDU.js.map → chunk-VPHPLPDA.js.map} +0 -0
  681. /package/dist/{chunk-OGU73VUN.js.map → chunk-VUL4KPUU.js.map} +0 -0
  682. /package/dist/{chunk-SFIXTOOJ.js.map → chunk-VWF6ILAR.js.map} +0 -0
  683. /package/dist/{chunk-FER6EVIY.js.map → chunk-W54BHJO7.js.map} +0 -0
  684. /package/dist/{chunk-34NV52R3.js.map → chunk-WCYE4BLC.js.map} +0 -0
  685. /package/dist/{chunk-RISUROBM.js.map → chunk-WTV25ELY.js.map} +0 -0
  686. /package/dist/{chunk-UO35OEOX.js.map → chunk-WZYGH7CN.js.map} +0 -0
  687. /package/dist/{chunk-CEMSIU4Z.js.map → chunk-XG2RWUF7.js.map} +0 -0
  688. /package/dist/{chunk-K3D7IQQP.js.map → chunk-XV7QOT7W.js.map} +0 -0
  689. /package/dist/{chunk-GOCODNQS.js.map → chunk-XWECT3GX.js.map} +0 -0
  690. /package/dist/{chunk-5MHMCE2G.js.map → chunk-XZQK2ZLW.js.map} +0 -0
  691. /package/dist/{chunk-JV3UI7BH.js.map → chunk-Y5BR66OH.js.map} +0 -0
  692. /package/dist/{chunk-4F3AEJI6.js.map → chunk-YD6XU6FY.js.map} +0 -0
  693. /package/dist/{chunk-VATYK3JQ.js.map → chunk-YFE47G3C.js.map} +0 -0
  694. /package/dist/{chunk-ZR5EKJT6.js.map → chunk-YG6TWPP7.js.map} +0 -0
  695. /package/dist/{chunk-44JWVYJB.js.map → chunk-YH3ARKBB.js.map} +0 -0
  696. /package/dist/{chunk-752WXSDN.js.map → chunk-YI66STKJ.js.map} +0 -0
  697. /package/dist/{chunk-QRECBCJM.js.map → chunk-YMVPYMKB.js.map} +0 -0
  698. /package/dist/{chunk-77SYIH6O.js.map → chunk-YPIXBAF6.js.map} +0 -0
  699. /package/dist/{chunk-WRMUXZ7C.js.map → chunk-YSWPNY6G.js.map} +0 -0
  700. /package/dist/{chunk-GTHCHCWW.js.map → chunk-YWNNMBZG.js.map} +0 -0
  701. /package/dist/{chunk-3DRLCX5V.js.map → chunk-Z3HYM2JT.js.map} +0 -0
  702. /package/dist/{chunk-M3HGBO2Y.js.map → chunk-ZAC7YPRA.js.map} +0 -0
  703. /package/dist/{chunk-2VJOSU4H.js.map → chunk-ZENESDAF.js.map} +0 -0
  704. /package/dist/{chunk-4JXPLTWV.js.map → chunk-ZHAPMETO.js.map} +0 -0
  705. /package/dist/{chunk-IJR6VOLU.js.map → chunk-ZVR6DUZH.js.map} +0 -0
  706. /package/dist/{embedded-voice-ASQXBSTX.js.map → computer-viewer-FOIOZUF5.js.map} +0 -0
  707. /package/dist/{model-policy-picker-menu-E6XKMFTA.js.map → embedded-new-voice-WTXAJNGO.js.map} +0 -0
  708. /package/dist/{sandbox-files-W5W2LW4K.js.map → embedded-voice-SIJOPN2G.js.map} +0 -0
  709. /package/dist/{fleet-decision-row-U7LDVBEM.js.map → fleet-decision-row-XKQ3GMYT.js.map} +0 -0
  710. /package/dist/{latest-question-RNVF262Q.js.map → latest-question-KA7AQYVI.js.map} +0 -0
  711. /package/dist/{session-connect-cards-HPH7JOZP.js.map → model-policy-picker-menu-6N2G7VGX.js.map} +0 -0
  712. /package/dist/{payment-page-card-DJDKV2LW.js.map → payment-page-card-IJFZHQ52.js.map} +0 -0
  713. /package/dist/{platform-activity-row-MSDCSMET.js.map → platform-activity-row-MFCMGI43.js.map} +0 -0
  714. /package/dist/{queue-surface-implementation-GUAIG6TK.js.map → queue-surface-implementation-BBCDWWOP.js.map} +0 -0
  715. /package/dist/{recorder-host-2MYDJPQW.js.map → recorder-host-LDYYOKG7.js.map} +0 -0
  716. /package/dist/{session-realtime-SDTKFFIR.js.map → sandbox-files-VYRBIXJY.js.map} +0 -0
  717. /package/dist/{timeline-annotation-markers-FNILLWNU.js.map → timeline-annotation-markers-LL6ZVBZH.js.map} +0 -0
  718. /package/dist/{timeline-annotation-selection-MBCIDO2Q.js.map → timeline-annotation-selection-WQA76WYC.js.map} +0 -0
  719. /package/dist/{timeline-annotations-dialog-JPNKLOTE.js.map → timeline-annotations-dialog-HHETAEZA.js.map} +0 -0
@@ -0,0 +1,151 @@
1
+ "use client";
2
+
3
+ // src/app/lib/subscription-accounts.tsx
4
+ function words(id) {
5
+ const text = id.replace(/[_-]+/g, " ").trim();
6
+ return text ? text.charAt(0).toLocaleUpperCase() + text.slice(1) : text;
7
+ }
8
+ var SHARED_WINDOWS = {
9
+ five_hour: { label: "5h", order: 10 },
10
+ seven_day: { label: "Week", order: 20 },
11
+ overage: { label: "Extra usage", order: 90, extra: true },
12
+ billing: { label: "Credits", order: 30 }
13
+ };
14
+ var CLAUDE_PLANS = {
15
+ claude_free: "Free",
16
+ claude_pro: "Pro",
17
+ claude_max: "Max or Ultra",
18
+ claude_max_5x: "Max",
19
+ claude_max_20x: "Ultra",
20
+ claude_ultra: "Ultra",
21
+ claude_team: "Team",
22
+ claude_enterprise: "Enterprise"
23
+ };
24
+ var CHATGPT_PLANS = {
25
+ free: "Free",
26
+ go: "Go",
27
+ plus: "Plus",
28
+ pro: "Pro",
29
+ team: "Business",
30
+ business: "Business",
31
+ enterprise: "Enterprise",
32
+ edu: "Edu"
33
+ };
34
+ var ADAPTERS = {
35
+ claude: {
36
+ planBrand: "Claude",
37
+ planName: (plan) => CLAUDE_PLANS[plan] ?? words(plan.replace(/^claude_/, "")),
38
+ windows: {
39
+ ...SHARED_WINDOWS,
40
+ seven_day_fable: { label: "Fable week", order: 21, scoped: true },
41
+ seven_day_opus: { label: "Opus week", order: 22, scoped: true },
42
+ seven_day_sonnet: { label: "Sonnet week", order: 23, scoped: true },
43
+ seven_day_overage_included: { label: "Included extra", order: 80, extra: true }
44
+ }
45
+ },
46
+ codex: {
47
+ planBrand: "ChatGPT",
48
+ planName: (plan) => CHATGPT_PLANS[plan.toLowerCase()] ?? words(plan),
49
+ // The shared core stores the 5-hour window as `primary` and the weekly
50
+ // one as `secondary`; both are identified by duration, never position.
51
+ windows: {
52
+ ...SHARED_WINDOWS,
53
+ primary: { label: "5h", order: 10 },
54
+ secondary: { label: "Week", order: 20 }
55
+ }
56
+ },
57
+ xai: {
58
+ planBrand: "SuperGrok",
59
+ // The tier may already carry the product name ("SuperGrok Heavy").
60
+ planName: (plan) => {
61
+ const tier = plan.replace(/^super\s*grok[\s_-]*/i, "").trim();
62
+ return tier ? words(tier) : "";
63
+ },
64
+ windows: SHARED_WINDOWS
65
+ }
66
+ };
67
+ var GENERIC_ADAPTER = {
68
+ planBrand: "",
69
+ planName: (plan) => words(plan),
70
+ windows: SHARED_WINDOWS
71
+ };
72
+ function adapter(provider) {
73
+ return ADAPTERS[provider === "supergrok" ? "xai" : provider] ?? GENERIC_ADAPTER;
74
+ }
75
+ function subscriptionPlanLabel(provider, plan, options = {}) {
76
+ const id = plan?.trim();
77
+ if (!id) return null;
78
+ const { planBrand, planName } = adapter(provider);
79
+ const name = planName(id);
80
+ if (options.brand === false) return name || planBrand || null;
81
+ return [planBrand, name].filter(Boolean).join(" ") || null;
82
+ }
83
+ function subscriptionWindowLabel(provider, id) {
84
+ const spec = adapter(provider).windows[id];
85
+ if (spec) return spec.label;
86
+ const scoped = /^seven_day_(.+)$/.exec(id);
87
+ return scoped ? `${words(scoped[1])} week` : words(id);
88
+ }
89
+ function epoch(value) {
90
+ if (value === null || value === void 0) return null;
91
+ const time = typeof value === "number" ? value : Date.parse(value);
92
+ return Number.isFinite(time) ? time : null;
93
+ }
94
+ function subscriptionWindows(provider, inputs, now = Date.now()) {
95
+ const specs = adapter(provider).windows;
96
+ return inputs.map((input, index) => {
97
+ const reset = epoch(input.resetsAt);
98
+ const resetPassed = reset !== null && reset <= now;
99
+ const used = input.usedPercent !== null && Number.isFinite(input.usedPercent) ? input.usedPercent : null;
100
+ const leftPercent = resetPassed || used === null ? null : Math.min(100, Math.max(0, 100 - used));
101
+ const limitReached = !resetPassed && (input.status === "exhausted" || (used ?? 0) >= 100);
102
+ return {
103
+ index,
104
+ order: specs[input.id]?.order ?? 50,
105
+ window: {
106
+ id: input.id,
107
+ label: subscriptionWindowLabel(provider, input.id),
108
+ leftPercent,
109
+ resetsAt: resetPassed ? null : reset,
110
+ limitReached,
111
+ nearLimit: !limitReached && !resetPassed && (input.status === "warning" || leftPercent !== null && leftPercent < SUBSCRIPTION_NEAR_LIMIT_LEFT),
112
+ resetPassed,
113
+ extra: specs[input.id]?.extra === true,
114
+ // A scoped weekly limit this build doesn't know ("seven_day_haiku") too.
115
+ scoped: specs[input.id]?.scoped === true || !specs[input.id] && /^seven_day_.+$/.test(input.id)
116
+ }
117
+ };
118
+ }).sort((left, right) => left.order - right.order || left.index - right.index).map((entry) => entry.window);
119
+ }
120
+ var SUBSCRIPTION_NEAR_LIMIT_LEFT = 10;
121
+ function subscriptionLimit(windows, exhaustedUntil = null, now = Date.now()) {
122
+ const included = windows.filter((window) => !window.extra);
123
+ const reached = included.filter((window) => window.limitReached && !window.scoped);
124
+ const refusalEnd = epoch(exhaustedUntil);
125
+ const refused = refusalEnd !== null && refusalEnd > now;
126
+ const ends = [...reached.map((window) => window.resetsAt), ...refused ? [refusalEnd] : []];
127
+ return {
128
+ reached: reached.length > 0 || refused,
129
+ // The account serves again only once every reached limit has ended.
130
+ until: ends.length > 0 && ends.every((end) => end !== null) ? Math.max(...ends) : null,
131
+ near: reached.length === 0 && !refused && included.some((window) => window.nearLimit || window.scoped && window.limitReached)
132
+ };
133
+ }
134
+ function codexWindowInputs(usage) {
135
+ const input = (id, reading) => {
136
+ if (!reading) return [];
137
+ const usedPercent = typeof reading.percent === "number" ? reading.percent : typeof reading.remaining === "number" ? 100 - reading.remaining : null;
138
+ return [{ id, usedPercent, resetsAt: reading.resetAt ?? null }];
139
+ };
140
+ return [...input("five_hour", usage.fiveHour), ...input("seven_day", usage.weekly)];
141
+ }
142
+
143
+ export {
144
+ subscriptionPlanLabel,
145
+ subscriptionWindowLabel,
146
+ subscriptionWindows,
147
+ SUBSCRIPTION_NEAR_LIMIT_LEFT,
148
+ subscriptionLimit,
149
+ codexWindowInputs
150
+ };
151
+ //# sourceMappingURL=chunk-RBOHWUSN.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/app/lib/subscription-accounts.tsx"],"sourcesContent":["// One provider-neutral view of a subscription account's plan and usage for\n// every surface that lists one (Claude, ChatGPT/Codex, SuperGrok and any\n// later provider): the account menu, the model settings rows and the account\n// pages. Each provider has one adapter below that names its plans and labels\n// the usage windows it reports; everything else is shared.\n//\n// Windows come only from what the provider reported for that account. Nothing\n// here adds a window a plan doesn't have: a verified Claude Ultra account or a\n// ChatGPT Pro account reports no 5-hour window, so none is shown.\n\n/** One usage window as a data source reports it. */\nexport type SubscriptionWindowInput = {\n id: string;\n /** Share used, 0-100; null when unknown. Over 100 can mean extra usage. */\n usedPercent: number | null;\n /** When the window resets: an ISO string or epoch milliseconds. */\n resetsAt: string | number | null;\n /**\n * The provider's own state for the window: `exhausted` (it refused on this\n * limit, whatever the percentage says) or `warning` (it says it is close).\n */\n status?: \"ok\" | \"warning\" | \"exhausted\" | \"unknown\" | null | undefined;\n};\n\n/** One usage window, ready to show. */\nexport type SubscriptionWindow = {\n id: string;\n /** Short label: \"5h\", \"Week\", \"Fable week\", \"Extra usage\", \"Credits\". */\n label: string;\n /** Share left, 0-100; null when unknown or when the reading predates a reset. */\n leftPercent: number | null;\n /** The next reset, epoch milliseconds; null when unknown or already past. */\n resetsAt: number | null;\n limitReached: boolean;\n /** Under 10% left, or the provider says it is close. */\n nearLimit: boolean;\n /** The reading was taken before this window reset, so it no longer says what is left. */\n resetPassed: boolean;\n /** Paid extra usage, not part of the plan's included allowance. */\n extra: boolean;\n /**\n * Limits only some models (a weekly Fable, Opus or Sonnet limit): reaching\n * it never makes the whole account read as limited.\n */\n scoped: boolean;\n};\n\n/** Whether the account can take work, from its windows and any refusal. */\nexport type SubscriptionLimit = {\n reached: boolean;\n /** When the reached limit ends, epoch milliseconds, when known. */\n until: number | null;\n /** Not reached, but an included-usage window is near its limit. */\n near: boolean;\n};\n\ntype WindowSpec = { label: string; order: number; extra?: boolean; scoped?: boolean };\n\ntype SubscriptionAdapter = {\n /** The name plans are sold under: \"Claude\", \"ChatGPT\", \"SuperGrok\". */\n planBrand: string;\n /** The plan's own name without the brand (\"Ultra\", \"Plus\"), or null when unknown. */\n planName(plan: string): string | null;\n windows: Record<string, WindowSpec>;\n};\n\n/** \"claude_team\" → \"Team\", \"k12\" → \"K12\": a provider id read as words. */\nfunction words(id: string): string {\n const text = id.replace(/[_-]+/g, \" \").trim();\n return text ? text.charAt(0).toLocaleUpperCase() + text.slice(1) : text;\n}\n\nconst SHARED_WINDOWS: Record<string, WindowSpec> = {\n five_hour: { label: \"5h\", order: 10 },\n seven_day: { label: \"Week\", order: 20 },\n overage: { label: \"Extra usage\", order: 90, extra: true },\n billing: { label: \"Credits\", order: 30 },\n};\n\n// Anthropic sells Pro, Max and Ultra (Max 20x was renamed Ultra on 30 Oct\n// 2026). The profile reports both Max tiers as `claude_max`; the stored plan\n// carries the tier as `claude_max_5x` or `claude_max_20x` once it is known.\nconst CLAUDE_PLANS: Record<string, string> = {\n claude_free: \"Free\",\n claude_pro: \"Pro\",\n claude_max: \"Max or Ultra\",\n claude_max_5x: \"Max\",\n claude_max_20x: \"Ultra\",\n claude_ultra: \"Ultra\",\n claude_team: \"Team\",\n claude_enterprise: \"Enterprise\",\n};\n\n// ChatGPT renamed Team to Business; the id stays `team`.\nconst CHATGPT_PLANS: Record<string, string> = {\n free: \"Free\",\n go: \"Go\",\n plus: \"Plus\",\n pro: \"Pro\",\n team: \"Business\",\n business: \"Business\",\n enterprise: \"Enterprise\",\n edu: \"Edu\",\n};\n\nconst ADAPTERS: Record<string, SubscriptionAdapter> = {\n claude: {\n planBrand: \"Claude\",\n planName: (plan) => CLAUDE_PLANS[plan] ?? words(plan.replace(/^claude_/, \"\")),\n windows: {\n ...SHARED_WINDOWS,\n seven_day_fable: { label: \"Fable week\", order: 21, scoped: true },\n seven_day_opus: { label: \"Opus week\", order: 22, scoped: true },\n seven_day_sonnet: { label: \"Sonnet week\", order: 23, scoped: true },\n seven_day_overage_included: { label: \"Included extra\", order: 80, extra: true },\n },\n },\n codex: {\n planBrand: \"ChatGPT\",\n planName: (plan) => CHATGPT_PLANS[plan.toLowerCase()] ?? words(plan),\n // The shared core stores the 5-hour window as `primary` and the weekly\n // one as `secondary`; both are identified by duration, never position.\n windows: {\n ...SHARED_WINDOWS,\n primary: { label: \"5h\", order: 10 },\n secondary: { label: \"Week\", order: 20 },\n },\n },\n xai: {\n planBrand: \"SuperGrok\",\n // The tier may already carry the product name (\"SuperGrok Heavy\").\n planName: (plan) => {\n const tier = plan.replace(/^super\\s*grok[\\s_-]*/i, \"\").trim();\n return tier ? words(tier) : \"\";\n },\n windows: SHARED_WINDOWS,\n },\n};\n\n/** Any later provider: its own plan id as words and the shared window names. */\nconst GENERIC_ADAPTER: SubscriptionAdapter = {\n planBrand: \"\",\n planName: (plan) => words(plan),\n windows: SHARED_WINDOWS,\n};\n\nfunction adapter(provider: string): SubscriptionAdapter {\n return ADAPTERS[provider === \"supergrok\" ? \"xai\" : provider] ?? GENERIC_ADAPTER;\n}\n\n/**\n * The plan as the provider names it today: \"Claude Ultra\", \"ChatGPT Plus\",\n * \"SuperGrok Heavy\". With `brand: false` only the plan's own name (\"Ultra\").\n * Null when the plan isn't known.\n */\nexport function subscriptionPlanLabel(\n provider: string,\n plan: string | null | undefined,\n options: { brand?: boolean } = {},\n): string | null {\n const id = plan?.trim();\n if (!id) return null;\n const { planBrand, planName } = adapter(provider);\n const name = planName(id);\n if (options.brand === false) return name || planBrand || null;\n return [planBrand, name].filter(Boolean).join(\" \") || null;\n}\n\n/** A window's short label: \"5h\", \"Week\", \"Fable week\"; an unknown id reads as words. */\nexport function subscriptionWindowLabel(provider: string, id: string): string {\n const spec = adapter(provider).windows[id];\n if (spec) return spec.label;\n // A new scoped weekly limit (\"seven_day_haiku\") reads as \"Haiku week\".\n const scoped = /^seven_day_(.+)$/.exec(id);\n return scoped ? `${words(scoped[1]!)} week` : words(id);\n}\n\nfunction epoch(value: string | number | null | undefined): number | null {\n if (value === null || value === undefined) return null;\n const time = typeof value === \"number\" ? value : Date.parse(value);\n return Number.isFinite(time) ? time : null;\n}\n\n/**\n * Every reported window, labelled and in a stable order (5h, week, scoped\n * weeks, credits, extra usage). A window whose reset has passed since it was\n * read keeps its place but no longer claims a share left.\n */\nexport function subscriptionWindows(\n provider: string,\n inputs: readonly SubscriptionWindowInput[],\n now: number = Date.now(),\n): SubscriptionWindow[] {\n const specs = adapter(provider).windows;\n return inputs\n .map((input, index) => {\n const reset = epoch(input.resetsAt);\n const resetPassed = reset !== null && reset <= now;\n const used =\n input.usedPercent !== null && Number.isFinite(input.usedPercent) ? input.usedPercent : null;\n const leftPercent =\n resetPassed || used === null ? null : Math.min(100, Math.max(0, 100 - used));\n const limitReached = !resetPassed && (input.status === \"exhausted\" || (used ?? 0) >= 100);\n return {\n index,\n order: specs[input.id]?.order ?? 50,\n window: {\n id: input.id,\n label: subscriptionWindowLabel(provider, input.id),\n leftPercent,\n resetsAt: resetPassed ? null : reset,\n limitReached,\n nearLimit:\n !limitReached &&\n !resetPassed &&\n (input.status === \"warning\" ||\n (leftPercent !== null && leftPercent < SUBSCRIPTION_NEAR_LIMIT_LEFT)),\n resetPassed,\n extra: specs[input.id]?.extra === true,\n // A scoped weekly limit this build doesn't know (\"seven_day_haiku\") too.\n scoped:\n specs[input.id]?.scoped === true ||\n (!specs[input.id] && /^seven_day_.+$/.test(input.id)),\n },\n };\n })\n .sort((left, right) => left.order - right.order || left.index - right.index)\n .map((entry) => entry.window);\n}\n\n/** Below this share left, an included-usage window counts as near its limit. */\nexport const SUBSCRIPTION_NEAR_LIMIT_LEFT = 10;\n\n/**\n * The account's limit state from its included-usage windows and a stored\n * refusal deadline. Extra usage never makes an account look limited or free,\n * and a spent model-scoped week (Fable) only limits those models: the\n * window says so itself, and it still counts as near a limit.\n */\nexport function subscriptionLimit(\n windows: readonly SubscriptionWindow[],\n exhaustedUntil: string | number | null = null,\n now: number = Date.now(),\n): SubscriptionLimit {\n const included = windows.filter((window) => !window.extra);\n const reached = included.filter((window) => window.limitReached && !window.scoped);\n const refusalEnd = epoch(exhaustedUntil);\n const refused = refusalEnd !== null && refusalEnd > now;\n const ends = [...reached.map((window) => window.resetsAt), ...(refused ? [refusalEnd] : [])];\n return {\n reached: reached.length > 0 || refused,\n // The account serves again only once every reached limit has ended.\n until: ends.length > 0 && ends.every((end) => end !== null) ? Math.max(...ends) : null,\n near:\n reached.length === 0 &&\n !refused &&\n included.some((window) => window.nearLimit || (window.scoped && window.limitReached)),\n };\n}\n\n/** A Codex account's endpoint readings (five-hour and weekly, each when reported) as inputs. */\nexport function codexWindowInputs(usage: {\n fiveHour?: CodexWindowReading | null | undefined;\n weekly?: CodexWindowReading | null | undefined;\n}): SubscriptionWindowInput[] {\n const input = (id: string, reading: CodexWindowReading | null | undefined) => {\n if (!reading) return [];\n const usedPercent =\n typeof reading.percent === \"number\"\n ? reading.percent\n : typeof reading.remaining === \"number\"\n ? 100 - reading.remaining\n : null;\n return [{ id, usedPercent, resetsAt: reading.resetAt ?? null }];\n };\n return [...input(\"five_hour\", usage.fiveHour), ...input(\"seven_day\", usage.weekly)];\n}\n\ntype CodexWindowReading = {\n percent?: number | null | undefined;\n remaining?: number | null | undefined;\n resetAt?: string | null | undefined;\n};\n"],"mappings":"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","names":[]}
@@ -1,33 +1,33 @@
1
1
  "use client";
2
2
  import {
3
- SessionHeader
4
- } from "./chunk-XUOYNJPB.js";
3
+ SubscriptionAccountIndicator,
4
+ subscriptionAccountProvider
5
+ } from "./chunk-SN6ZWYOP.js";
6
+ import {
7
+ PrivateSessionIndicator
8
+ } from "./chunk-UO6ULC2A.js";
5
9
  import {
6
10
  PrimaryNav,
7
11
  RailHeader,
8
12
  SessionShellSlotsContext
9
- } from "./chunk-MRECRNVU.js";
13
+ } from "./chunk-QCYGB6TZ.js";
14
+ import {
15
+ SessionHeader
16
+ } from "./chunk-ECROT4M5.js";
17
+ import {
18
+ useSessionAdminAccess
19
+ } from "./chunk-BGH6TU2P.js";
10
20
  import {
11
21
  CollapsedSessionsButton,
12
22
  SessionList
13
- } from "./chunk-OSJ366KR.js";
23
+ } from "./chunk-KEBVT55V.js";
14
24
  import {
15
25
  RailSurface,
16
26
  ShellRail
17
27
  } from "./chunk-6FHFLQAP.js";
18
- import {
19
- useSessionAdminAccess
20
- } from "./chunk-2GCHGWNE.js";
21
- import {
22
- SubscriptionAccountIndicator,
23
- subscriptionAccountProvider
24
- } from "./chunk-UTRNLNCW.js";
25
- import {
26
- PrivateSessionIndicator
27
- } from "./chunk-UO6ULC2A.js";
28
28
  import {
29
29
  SessionComputeIndicator
30
- } from "./chunk-DEHLWZSI.js";
30
+ } from "./chunk-3XMB3L57.js";
31
31
  import {
32
32
  useSessionRepliesMute
33
33
  } from "./chunk-Q6CGOPJD.js";
@@ -37,12 +37,12 @@ import {
37
37
  } from "./chunk-UMTXA2TH.js";
38
38
  import {
39
39
  useWorkspaceModelCatalog
40
- } from "./chunk-EGKARC53.js";
40
+ } from "./chunk-7MGDX2TD.js";
41
41
  import {
42
42
  WindowBarPageTitle,
43
43
  useWindowBarRow,
44
44
  windowBarRowActive
45
- } from "./chunk-TKQL7EDB.js";
45
+ } from "./chunk-Q42QHUAQ.js";
46
46
  import {
47
47
  applySessionArchiveProjection
48
48
  } from "./chunk-OSI2QWSL.js";
@@ -61,7 +61,7 @@ import {
61
61
  RAIL_MAX_WIDTH,
62
62
  RAIL_MIN_WIDTH,
63
63
  useRail
64
- } from "./chunk-M3HGBO2Y.js";
64
+ } from "./chunk-ZAC7YPRA.js";
65
65
  import {
66
66
  useSessionUiFeature
67
67
  } from "./chunk-FWXMQTVG.js";
@@ -110,7 +110,7 @@ import {
110
110
  import {
111
111
  sessionDisplayTitle,
112
112
  withLineageAutomationFacts
113
- } from "./chunk-D3PTVN2I.js";
113
+ } from "./chunk-BGIYL26H.js";
114
114
  import {
115
115
  useLastStartedTurnPolicy
116
116
  } from "./chunk-CMDTIV7I.js";
@@ -622,4 +622,4 @@ export {
622
622
  RailBody,
623
623
  SessionShell
624
624
  };
625
- //# sourceMappingURL=chunk-AJDGP2N4.js.map
625
+ //# sourceMappingURL=chunk-RJNOQEJJ.js.map
@@ -1,13 +1,13 @@
1
1
  "use client";
2
2
  import {
3
3
  SearchMarkdown
4
- } from "./chunk-2VJOSU4H.js";
4
+ } from "./chunk-ZENESDAF.js";
5
5
  import {
6
6
  SearchText
7
7
  } from "./chunk-72VDQKH4.js";
8
8
  import {
9
9
  MarkdownText
10
- } from "./chunk-LTJFV2JI.js";
10
+ } from "./chunk-UZ7NP5CW.js";
11
11
  import {
12
12
  cn
13
13
  } from "./chunk-A3MTTRCX.js";
@@ -266,4 +266,4 @@ export {
266
266
  SearchResultsView,
267
267
  SearchPreviewView
268
268
  };
269
- //# sourceMappingURL=chunk-477DTTMH.js.map
269
+ //# sourceMappingURL=chunk-RSFOFUR7.js.map
@@ -1,16 +1,4 @@
1
1
  "use client";
2
- import {
3
- CreditRefusalNotice
4
- } from "./chunk-7AI4E7PV.js";
5
- import {
6
- BotLaunchStrip
7
- } from "./chunk-ICAMYP5M.js";
8
- import {
9
- BotTemplateShortcuts
10
- } from "./chunk-CV4VVLPZ.js";
11
- import {
12
- ChannelCreateDialog
13
- } from "./chunk-74CBR5YE.js";
14
2
  import {
15
3
  RunsOnMenuBody,
16
4
  RunsOnNotice,
@@ -21,15 +9,27 @@ import {
21
9
  runsOnAttention,
22
10
  runsOnSummary,
23
11
  visibilitySummary
24
- } from "./chunk-AAS7OWV6.js";
12
+ } from "./chunk-TIDXYWFX.js";
25
13
  import {
26
14
  SessionSetupStrip,
27
15
  runsOnSetupIcon,
28
16
  visibilitySetupIcon
29
- } from "./chunk-EBIVTDEG.js";
17
+ } from "./chunk-G4M6AYDB.js";
18
+ import {
19
+ CreditRefusalNotice
20
+ } from "./chunk-7AI4E7PV.js";
21
+ import {
22
+ BotTemplateShortcuts
23
+ } from "./chunk-LCNJ2KNS.js";
24
+ import {
25
+ BotLaunchStrip
26
+ } from "./chunk-BWJK64CP.js";
27
+ import {
28
+ ChannelCreateDialog
29
+ } from "./chunk-DQ32FKFQ.js";
30
30
  import {
31
31
  composerFallbackModel
32
- } from "./chunk-UBRQ3PQD.js";
32
+ } from "./chunk-3SPDJLOR.js";
33
33
  import {
34
34
  useBotTemplates
35
35
  } from "./chunk-AUI6VA63.js";
@@ -44,17 +44,17 @@ import {
44
44
  newSessionCreateSnapshot,
45
45
  runNewSessionRouteSubmission
46
46
  } from "./chunk-QUN56622.js";
47
- import {
48
- useConnectionAccounts
49
- } from "./chunk-SSR4ZX52.js";
50
47
  import {
51
48
  SessionSecretsMenuBody,
52
49
  draftSecretsRows,
53
50
  sessionSecretsSummary
54
51
  } from "./chunk-KJD65EJP.js";
52
+ import {
53
+ useConnectionAccounts
54
+ } from "./chunk-SSR4ZX52.js";
55
55
  import {
56
56
  useRepositoryCatalogRefresh
57
- } from "./chunk-DCEQCGVN.js";
57
+ } from "./chunk-MIWU52TW.js";
58
58
  import {
59
59
  ComposerSendBlockerNotice,
60
60
  NewSessionCreateFailureNotice,
@@ -69,7 +69,7 @@ import {
69
69
  } from "./chunk-6B73WNLR.js";
70
70
  import {
71
71
  useWorkspaceMachines
72
- } from "./chunk-OGU73VUN.js";
72
+ } from "./chunk-VUL4KPUU.js";
73
73
  import {
74
74
  NO_SESSION_USAGE_LIMIT,
75
75
  parseSessionUsageLimitDraft,
@@ -104,7 +104,7 @@ import {
104
104
  } from "./chunk-XVU32APP.js";
105
105
  import {
106
106
  useWorkspaceModelCatalog
107
- } from "./chunk-EGKARC53.js";
107
+ } from "./chunk-7MGDX2TD.js";
108
108
  import {
109
109
  useSessionListHintRefresh
110
110
  } from "./chunk-IJYL5BZM.js";
@@ -116,13 +116,13 @@ import {
116
116
  nextNewSessionProjectLaunchIntent,
117
117
  resolveAmbientNewSessionProjectChannelId,
118
118
  resolveHydratedNewSessionProjectSelection
119
- } from "./chunk-IFSXVU2S.js";
119
+ } from "./chunk-OQHTFOCA.js";
120
120
  import {
121
121
  ComposerCapabilitiesChip
122
122
  } from "./chunk-NOZQIEHJ.js";
123
123
  import {
124
124
  useGitHubAppConnectLauncher
125
- } from "./chunk-OOOSGPJL.js";
125
+ } from "./chunk-53MYEEMA.js";
126
126
  import {
127
127
  RepositoryContextMenuBody
128
128
  } from "./chunk-GFIMOUDT.js";
@@ -132,7 +132,7 @@ import {
132
132
  import {
133
133
  ConsoleComposer,
134
134
  useDraftAttachments
135
- } from "./chunk-CYDXCILL.js";
135
+ } from "./chunk-5SODSGW7.js";
136
136
  import {
137
137
  useForgetLastSession
138
138
  } from "./chunk-2DVTNHTC.js";
@@ -142,7 +142,7 @@ import {
142
142
  import {
143
143
  readChatDirectory,
144
144
  useChatDirectoryVersion
145
- } from "./chunk-YMI27QPF.js";
145
+ } from "./chunk-5NKQZVXP.js";
146
146
  import {
147
147
  FOCUS_CREATE_COMPOSER_EVENT
148
148
  } from "./chunk-HQA6FUM5.js";
@@ -160,19 +160,19 @@ import {
160
160
  } from "./chunk-55S3W7RZ.js";
161
161
  import {
162
162
  ModelPicker
163
- } from "./chunk-4F3AEJI6.js";
163
+ } from "./chunk-YD6XU6FY.js";
164
164
  import {
165
165
  BillingClassMark
166
- } from "./chunk-KFNZZ2N6.js";
166
+ } from "./chunk-KKGRDBMK.js";
167
167
  import {
168
168
  WorkspaceComposerPlus
169
- } from "./chunk-NFCS5WYC.js";
169
+ } from "./chunk-4KQ3A3EO.js";
170
170
  import {
171
171
  addsConnectorOutsideDefaults,
172
172
  changedConnectorExclusions,
173
173
  defaultConnectorSelection,
174
174
  newSessionConnectorCustomizeState
175
- } from "./chunk-XMBOLFFS.js";
175
+ } from "./chunk-5IMNL6IV.js";
176
176
  import {
177
177
  NewSessionDraftSyncNotice
178
178
  } from "./chunk-J57VNRO7.js";
@@ -189,7 +189,7 @@ import {
189
189
  rememberedMachineFolder,
190
190
  sessionDraftFromNewSessionDraftOptions,
191
191
  submissionFromSessionDraft
192
- } from "./chunk-AVXDIRRW.js";
192
+ } from "./chunk-UMRUDYUK.js";
193
193
  import {
194
194
  capabilityAvailability,
195
195
  capabilityOn,
@@ -197,10 +197,10 @@ import {
197
197
  draftFromRequest,
198
198
  requestFromDraft,
199
199
  workspaceAgentDefaultsDraft
200
- } from "./chunk-3PM3M2Q6.js";
200
+ } from "./chunk-NDXBF3RW.js";
201
201
  import {
202
202
  t
203
- } from "./chunk-HEGV4QMS.js";
203
+ } from "./chunk-J42QE4VO.js";
204
204
  import {
205
205
  ANALYTICS_COLLECTION_ENABLED_EVENT
206
206
  } from "./chunk-DBQQT4M7.js";
@@ -254,13 +254,13 @@ import {
254
254
  relativeTimeLabel,
255
255
  sessionDisplayTitle,
256
256
  sessionRepoLabel
257
- } from "./chunk-D3PTVN2I.js";
257
+ } from "./chunk-BGIYL26H.js";
258
258
  import {
259
259
  Notice
260
260
  } from "./chunk-FSOQDUCG.js";
261
261
  import {
262
262
  NewSessionRealtimeControl
263
- } from "./chunk-GIWFLWXG.js";
263
+ } from "./chunk-C2KASMJK.js";
264
264
  import {
265
265
  useVaults
266
266
  } from "./chunk-ZR6WALSK.js";
@@ -275,13 +275,13 @@ import {
275
275
  } from "./chunk-JWKGPA6Q.js";
276
276
  import {
277
277
  MACHINES_COMPOSER_POLL_MS
278
- } from "./chunk-467WDSOK.js";
278
+ } from "./chunk-5HYWXPMA.js";
279
279
  import {
280
280
  FILE_ONLY_MESSAGE_TEXT
281
- } from "./chunk-WYGTAQMX.js";
281
+ } from "./chunk-AZFVRPQM.js";
282
282
  import {
283
283
  LightboxProvider
284
- } from "./chunk-XVLEBB4Y.js";
284
+ } from "./chunk-TBWL6YWL.js";
285
285
  import {
286
286
  Button
287
287
  } from "./chunk-7QQN3KNP.js";
@@ -301,7 +301,7 @@ import {
301
301
  import {
302
302
  prestartSessionRealtime,
303
303
  useRealtimeModelSelection
304
- } from "./chunk-ZR5EKJT6.js";
304
+ } from "./chunk-YG6TWPP7.js";
305
305
  import {
306
306
  useOpenGeni
307
307
  } from "./chunk-TVQCDDSZ.js";
@@ -2522,4 +2522,4 @@ function PrivateWorkspaceNote() {
2522
2522
  export {
2523
2523
  SessionsIndexRoute
2524
2524
  };
2525
- //# sourceMappingURL=chunk-JV5ULONH.js.map
2525
+ //# sourceMappingURL=chunk-RXR6PMSH.js.map
@@ -11,7 +11,7 @@ import {
11
11
  } from "./chunk-YFHRNLOT.js";
12
12
  import {
13
13
  t
14
- } from "./chunk-HEGV4QMS.js";
14
+ } from "./chunk-J42QE4VO.js";
15
15
  import {
16
16
  Dialog,
17
17
  DialogContent,
@@ -398,4 +398,4 @@ export {
398
398
  FeedbackDialog,
399
399
  SessionFeedback
400
400
  };
401
- //# sourceMappingURL=chunk-J2BTILRR.js.map
401
+ //# sourceMappingURL=chunk-SM7HFCGC.js.map