@ashlr/hub 3.10.0 → 3.10.1

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 (448) hide show
  1. package/CHANGELOG.md +101 -0
  2. package/dist/authority-surface.json +43 -23
  3. package/dist/build-identity.json +2 -2
  4. package/dist/core/daemon/capacity-publisher.d.ts +19 -0
  5. package/dist/core/daemon/capacity-publisher.js +49 -2
  6. package/dist/core/daemon/capacity-publisher.js.map +1 -1
  7. package/dist/core/daemon/overnight-status.d.ts +13 -0
  8. package/dist/core/daemon/overnight-status.js +93 -8
  9. package/dist/core/daemon/overnight-status.js.map +1 -1
  10. package/dist/core/fleet/dispatch-router.js +26 -9
  11. package/dist/core/fleet/dispatch-router.js.map +1 -1
  12. package/dist/core/fleet/fleet-runtime-journal.js +12 -5
  13. package/dist/core/fleet/fleet-runtime-journal.js.map +1 -1
  14. package/dist/core/fleet/fleet-types.d.ts +13 -0
  15. package/dist/core/routing/budget-store.js +11 -5
  16. package/dist/core/routing/budget-store.js.map +1 -1
  17. package/dist/core/routing/capacity-history-api.d.ts +30 -0
  18. package/dist/core/routing/capacity-history-api.js +147 -0
  19. package/dist/core/routing/capacity-history-api.js.map +1 -0
  20. package/dist/core/routing/capacity-history-types.d.ts +63 -0
  21. package/dist/core/routing/capacity-history-types.js +18 -0
  22. package/dist/core/routing/capacity-history-types.js.map +1 -0
  23. package/dist/core/routing/capacity-history.d.ts +130 -0
  24. package/dist/core/routing/capacity-history.js +654 -0
  25. package/dist/core/routing/capacity-history.js.map +1 -0
  26. package/dist/core/routing/headroom.d.ts +5 -1
  27. package/dist/core/routing/headroom.js +82 -41
  28. package/dist/core/routing/headroom.js.map +1 -1
  29. package/dist/core/routing/router.d.ts +8 -1
  30. package/dist/core/routing/router.js +49 -16
  31. package/dist/core/routing/router.js.map +1 -1
  32. package/dist/core/routing/seat-reasons.d.ts +35 -0
  33. package/dist/core/routing/seat-reasons.js +48 -0
  34. package/dist/core/routing/seat-reasons.js.map +1 -0
  35. package/dist/core/routing/types.d.ts +37 -0
  36. package/dist/core/routing/types.js.map +1 -1
  37. package/dist/core/verse/fleet-history-types.d.ts +12 -4
  38. package/dist/core/verse/fleet-history-types.js +4 -2
  39. package/dist/core/verse/fleet-history-types.js.map +1 -1
  40. package/dist/core/verse/fleet-live-api.d.ts +14 -1
  41. package/dist/core/verse/fleet-live-api.js +31 -11
  42. package/dist/core/verse/fleet-live-api.js.map +1 -1
  43. package/dist/core/verse/preferences.d.ts +3 -1
  44. package/dist/core/verse/preferences.js +5 -2
  45. package/dist/core/verse/preferences.js.map +1 -1
  46. package/dist/core/verse/types.d.ts +5 -1
  47. package/dist/core/verse/types.js.map +1 -1
  48. package/dist/core/verse/verse-api.js +2 -1
  49. package/dist/core/verse/verse-api.js.map +1 -1
  50. package/dist/core/web/public/next/assets/{ActionMenu-DhbNne-M.js → ActionMenu-BBB7VYjz.js} +2 -2
  51. package/dist/core/web/public/next/assets/{ActionMenu-DhbNne-M.js.map → ActionMenu-BBB7VYjz.js.map} +1 -1
  52. package/dist/core/web/public/next/assets/Advanced-Bywv_iYR.css +1 -0
  53. package/dist/core/web/public/next/assets/Advanced-xVYFAeA8.js +2 -0
  54. package/dist/core/web/public/next/assets/Advanced-xVYFAeA8.js.map +1 -0
  55. package/dist/core/web/public/next/assets/{App-DyBg1v_q.js → App-CbDCLAxn.js} +5 -5
  56. package/dist/core/web/public/next/assets/{App-DyBg1v_q.js.map → App-CbDCLAxn.js.map} +1 -1
  57. package/dist/core/web/public/next/assets/AppsSection-B5HWJi9I.js +2 -0
  58. package/dist/core/web/public/next/assets/AppsSection-B5HWJi9I.js.map +1 -0
  59. package/dist/core/web/public/next/assets/AreaTrend-BgnK0wAy.js +2 -0
  60. package/dist/core/web/public/next/assets/AreaTrend-BgnK0wAy.js.map +1 -0
  61. package/dist/core/web/public/next/assets/AutonomySection-BF5UCsMv.js +2 -0
  62. package/dist/core/web/public/next/assets/{AutonomySection-CoMngwNB.js.map → AutonomySection-BF5UCsMv.js.map} +1 -1
  63. package/dist/core/web/public/next/assets/BranchBar-BZNQ50YE.css +1 -0
  64. package/dist/core/web/public/next/assets/BranchBar-nfSb59Kv.js +2 -0
  65. package/dist/core/web/public/next/assets/BranchBar-nfSb59Kv.js.map +1 -0
  66. package/dist/core/web/public/next/assets/BudgetControl-BESM12dO.js +2 -0
  67. package/dist/core/web/public/next/assets/BudgetControl-BESM12dO.js.map +1 -0
  68. package/dist/core/web/public/next/assets/BurnDown-D1AfskPT.js +2 -0
  69. package/dist/core/web/public/next/assets/BurnDown-D1AfskPT.js.map +1 -0
  70. package/dist/core/web/public/next/assets/{Button-0-nNbv1h.js → Button-Cr_qkQEc.js} +2 -2
  71. package/dist/core/web/public/next/assets/{Button-0-nNbv1h.js.map → Button-Cr_qkQEc.js.map} +1 -1
  72. package/dist/core/web/public/next/assets/CapacityStrip-Cc28CyWk.css +1 -0
  73. package/dist/core/web/public/next/assets/CapacityStrip-DqqYnLek.js +2 -0
  74. package/dist/core/web/public/next/assets/CapacityStrip-DqqYnLek.js.map +1 -0
  75. package/dist/core/web/public/next/assets/ChatSection-DoqjyVoj.js +3 -0
  76. package/dist/core/web/public/next/assets/{ChatSection-B9cdRKUh.js.map → ChatSection-DoqjyVoj.js.map} +1 -1
  77. package/dist/core/web/public/next/assets/{CommandPalette-GpeCSrPy.js → CommandPalette-lLV-OR63.js} +2 -2
  78. package/dist/core/web/public/next/assets/{CommandPalette-GpeCSrPy.js.map → CommandPalette-lLV-OR63.js.map} +1 -1
  79. package/dist/core/web/public/next/assets/CommandSection-fiZ4DJpM.js +2 -0
  80. package/dist/core/web/public/next/assets/CommandSection-fiZ4DJpM.js.map +1 -0
  81. package/dist/core/web/public/next/assets/Composer-ByzxOJK6.css +1 -0
  82. package/dist/core/web/public/next/assets/Composer.module-C8U73KdQ.js +2 -0
  83. package/dist/core/web/public/next/assets/{Composer.module-DJMdrqNt.js.map → Composer.module-C8U73KdQ.js.map} +1 -1
  84. package/dist/core/web/public/next/assets/DiffPane-BAvvbBsf.css +1 -0
  85. package/dist/core/web/public/next/assets/DiffPane-BVxhK-cy.js +2 -0
  86. package/dist/core/web/public/next/assets/DiffPane-BVxhK-cy.js.map +1 -0
  87. package/dist/core/web/public/next/assets/{DiffViewer-tOGWk0CA.js → DiffViewer-yCdw9J-Y.js} +2 -2
  88. package/dist/core/web/public/next/assets/{DiffViewer-tOGWk0CA.js.map → DiffViewer-yCdw9J-Y.js.map} +1 -1
  89. package/dist/core/web/public/next/assets/DockHost-B4RaYOET.css +1 -0
  90. package/dist/core/web/public/next/assets/DockHost-BZReKwos.js +2 -0
  91. package/dist/core/web/public/next/assets/DockHost-BZReKwos.js.map +1 -0
  92. package/dist/core/web/public/next/assets/{EmptyState-DdJ4CxtO.js → EmptyState-D1GDxVZy.js} +2 -2
  93. package/dist/core/web/public/next/assets/{EmptyState-DdJ4CxtO.js.map → EmptyState-D1GDxVZy.js.map} +1 -1
  94. package/dist/core/web/public/next/assets/{Epistemic-BLjM5y_y.js → Epistemic-DRp4dBfB.js} +2 -2
  95. package/dist/core/web/public/next/assets/{Epistemic-BLjM5y_y.js.map → Epistemic-DRp4dBfB.js.map} +1 -1
  96. package/dist/core/web/public/next/assets/FleetSection-CFiWeOEs.css +1 -0
  97. package/dist/core/web/public/next/assets/FleetSection-rPLy_NPo.js +3 -0
  98. package/dist/core/web/public/next/assets/FleetSection-rPLy_NPo.js.map +1 -0
  99. package/dist/core/web/public/next/assets/Funnel-zvDj3He4.js +2 -0
  100. package/dist/core/web/public/next/assets/Funnel-zvDj3He4.js.map +1 -0
  101. package/dist/core/web/public/next/assets/GearTray-CkviqjYr.js +2 -0
  102. package/dist/core/web/public/next/assets/GearTray-CkviqjYr.js.map +1 -0
  103. package/dist/core/web/public/next/assets/GrowthSection-Bg5sW0jI.js +2 -0
  104. package/dist/core/web/public/next/assets/GrowthSection-Bg5sW0jI.js.map +1 -0
  105. package/dist/core/web/public/next/assets/HandoffDialog-DcPj1ri9.js +2 -0
  106. package/dist/core/web/public/next/assets/HandoffDialog-DcPj1ri9.js.map +1 -0
  107. package/dist/core/web/public/next/assets/{Input-CTu0CycC.js → Input-Ci7TD96x.js} +2 -2
  108. package/dist/core/web/public/next/assets/{Input-CTu0CycC.js.map → Input-Ci7TD96x.js.map} +1 -1
  109. package/dist/core/web/public/next/assets/{LeaderCard-BuSDeATv.js → LeaderCard-BSFTlMRF.js} +2 -2
  110. package/dist/core/web/public/next/assets/{LeaderCard-BuSDeATv.js.map → LeaderCard-BSFTlMRF.js.map} +1 -1
  111. package/dist/core/web/public/next/assets/{MatrixHeatmap-9dKgJ_pT.css → MatrixHeatmap-Bmnvo1l1.css} +1 -1
  112. package/dist/core/web/public/next/assets/MatrixHeatmap-DojKZe9L.js +2 -0
  113. package/dist/core/web/public/next/assets/MatrixHeatmap-DojKZe9L.js.map +1 -0
  114. package/dist/core/web/public/next/assets/McpSection-CvcYu1X_.js +2 -0
  115. package/dist/core/web/public/next/assets/{McpSection-1UncWBpW.js.map → McpSection-CvcYu1X_.js.map} +1 -1
  116. package/dist/core/web/public/next/assets/MessageMarkdown-BrLCrb73.js +3 -0
  117. package/dist/core/web/public/next/assets/{MessageMarkdown-C4pl9LI5.js.map → MessageMarkdown-BrLCrb73.js.map} +1 -1
  118. package/dist/core/web/public/next/assets/MessageMarkdown-Cgh5f1-Q.css +1 -0
  119. package/dist/core/web/public/next/assets/{MessageMarkdownRenderer-CZsF77ZM.js → MessageMarkdownRenderer-CjmdBw2p.js} +2 -2
  120. package/dist/core/web/public/next/assets/{MessageMarkdownRenderer-CZsF77ZM.js.map → MessageMarkdownRenderer-CjmdBw2p.js.map} +1 -1
  121. package/dist/core/web/public/next/assets/{Meter-C18ciKz4.js → Meter-DTHbmhQg.js} +2 -2
  122. package/dist/core/web/public/next/assets/{Meter-C18ciKz4.js.map → Meter-DTHbmhQg.js.map} +1 -1
  123. package/dist/core/web/public/next/assets/MindSection-DcO9fmYe.js +2 -0
  124. package/dist/core/web/public/next/assets/MindSection-DcO9fmYe.js.map +1 -0
  125. package/dist/core/web/public/next/assets/MutationTokenDialog-Cqn2uPV6.js +2 -0
  126. package/dist/core/web/public/next/assets/MutationTokenDialog-Cqn2uPV6.js.map +1 -0
  127. package/dist/core/web/public/next/assets/NeedsYouDrawer-BpvidnM2.css +1 -0
  128. package/dist/core/web/public/next/assets/NeedsYouDrawer-hiTINupk.js +2 -0
  129. package/dist/core/web/public/next/assets/NeedsYouDrawer-hiTINupk.js.map +1 -0
  130. package/dist/core/web/public/next/assets/NeedsYouList-B4Z37Phx.js +2 -0
  131. package/dist/core/web/public/next/assets/NeedsYouList-B4Z37Phx.js.map +1 -0
  132. package/dist/core/web/public/next/assets/NeedsYouList-CruOt4JT.css +1 -0
  133. package/dist/core/web/public/next/assets/NewChatDialog-utSckh7C.js +3 -0
  134. package/dist/core/web/public/next/assets/{NewChatDialog-B_BsS9pr.js.map → NewChatDialog-utSckh7C.js.map} +1 -1
  135. package/dist/core/web/public/next/assets/OnboardingFlow-7N3YSUHN.js +2 -0
  136. package/dist/core/web/public/next/assets/{OnboardingFlow-CtCPpgoX.js.map → OnboardingFlow-7N3YSUHN.js.map} +1 -1
  137. package/dist/core/web/public/next/assets/PreviewPane-CqzkaAjG.js +2 -0
  138. package/dist/core/web/public/next/assets/PreviewPane-CqzkaAjG.js.map +1 -0
  139. package/dist/core/web/public/next/assets/PreviewPane-DoMsJSG3.css +1 -0
  140. package/dist/core/web/public/next/assets/RailStatus-sZhApA8k.js +2 -0
  141. package/dist/core/web/public/next/assets/RailStatus-sZhApA8k.js.map +1 -0
  142. package/dist/core/web/public/next/assets/{RefreshIndicator-CnhEovMZ.js → RefreshIndicator-C1uQIegT.js} +2 -2
  143. package/dist/core/web/public/next/assets/{RefreshIndicator-CnhEovMZ.js.map → RefreshIndicator-C1uQIegT.js.map} +1 -1
  144. package/dist/core/web/public/next/assets/{ResourcePoolConsoleApp-28gLwmwV.js → ResourcePoolConsoleApp-DXjjV6Sh.js} +4 -4
  145. package/dist/core/web/public/next/assets/{ResourcePoolConsoleApp-28gLwmwV.js.map → ResourcePoolConsoleApp-DXjjV6Sh.js.map} +1 -1
  146. package/dist/core/web/public/next/assets/{RouteErrorBoundary-AyUPCIb3.js → RouteErrorBoundary-D1LZxQjN.js} +2 -2
  147. package/dist/core/web/public/next/assets/{RouteErrorBoundary-AyUPCIb3.js.map → RouteErrorBoundary-D1LZxQjN.js.map} +1 -1
  148. package/dist/core/web/public/next/assets/SeatSelector-CT92PqM_.js +3 -0
  149. package/dist/core/web/public/next/assets/{SeatSelector-DaUO-zoK.js.map → SeatSelector-CT92PqM_.js.map} +1 -1
  150. package/dist/core/web/public/next/assets/{Segmented-B_8c_83S.js → Segmented-BMvq-FfD.js} +2 -2
  151. package/dist/core/web/public/next/assets/{Segmented-B_8c_83S.js.map → Segmented-BMvq-FfD.js.map} +1 -1
  152. package/dist/core/web/public/next/assets/{Select-Bl5g5Dt_.js → Select-DkdeoSQn.js} +2 -2
  153. package/dist/core/web/public/next/assets/{Select-Bl5g5Dt_.js.map → Select-DkdeoSQn.js.map} +1 -1
  154. package/dist/core/web/public/next/assets/{SessionInsightChip-w0I21q0c.js → SessionInsightChip-CwlakUYU.js} +2 -2
  155. package/dist/core/web/public/next/assets/{SessionInsightChip-w0I21q0c.js.map → SessionInsightChip-CwlakUYU.js.map} +1 -1
  156. package/dist/core/web/public/next/assets/SessionSearch-DFByh2NZ.js +2 -0
  157. package/dist/core/web/public/next/assets/{SessionSearch-B5aQ0BCM.js.map → SessionSearch-DFByh2NZ.js.map} +1 -1
  158. package/dist/core/web/public/next/assets/SettingsSection-DgSaHFK4.js +2 -0
  159. package/dist/core/web/public/next/assets/SettingsSection-DgSaHFK4.js.map +1 -0
  160. package/dist/core/web/public/next/assets/{Sheet-CVjk-cLI.js → Sheet-C7APkGPt.js} +2 -2
  161. package/dist/core/web/public/next/assets/{Sheet-CVjk-cLI.js.map → Sheet-C7APkGPt.js.map} +1 -1
  162. package/dist/core/web/public/next/assets/{ShortcutsOverlay-BiBjnBcc.js → ShortcutsOverlay-ZPyXUS_I.js} +2 -2
  163. package/dist/core/web/public/next/assets/{ShortcutsOverlay-BiBjnBcc.js.map → ShortcutsOverlay-ZPyXUS_I.js.map} +1 -1
  164. package/dist/core/web/public/next/assets/Sidebar-BRc1vGDF.css +1 -0
  165. package/dist/core/web/public/next/assets/Sidebar-Chsgazmk.js +3 -0
  166. package/dist/core/web/public/next/assets/Sidebar-Chsgazmk.js.map +1 -0
  167. package/dist/core/web/public/next/assets/{Slider-BS9MU5ZV.js → Slider-B0kjW7cd.js} +2 -2
  168. package/dist/core/web/public/next/assets/{Slider-BS9MU5ZV.js.map → Slider-B0kjW7cd.js.map} +1 -1
  169. package/dist/core/web/public/next/assets/{StatusBadge-DAf-ArKE.js → StatusBadge-wv4e6f8b.js} +2 -2
  170. package/dist/core/web/public/next/assets/{StatusBadge-DAf-ArKE.js.map → StatusBadge-wv4e6f8b.js.map} +1 -1
  171. package/dist/core/web/public/next/assets/StepBand-Db8WPw8J.js +2 -0
  172. package/dist/core/web/public/next/assets/StepBand-Db8WPw8J.js.map +1 -0
  173. package/dist/core/web/public/next/assets/{Surface-CiYOdNKQ.js → Surface-BkDrQ4t3.js} +2 -2
  174. package/dist/core/web/public/next/assets/{Surface-CiYOdNKQ.js.map → Surface-BkDrQ4t3.js.map} +1 -1
  175. package/dist/core/web/public/next/assets/Swimlane-Dcve56cP.js +2 -0
  176. package/dist/core/web/public/next/assets/Swimlane-Dcve56cP.js.map +1 -0
  177. package/dist/core/web/public/next/assets/{Switch-BzRXtNPt.js → Switch-DamlpSMY.js} +2 -2
  178. package/dist/core/web/public/next/assets/{Switch-BzRXtNPt.js.map → Switch-DamlpSMY.js.map} +1 -1
  179. package/dist/core/web/public/next/assets/{Tag-DEEbDz7T.js → Tag-Cs4tudBN.js} +2 -2
  180. package/dist/core/web/public/next/assets/{Tag-DEEbDz7T.js.map → Tag-Cs4tudBN.js.map} +1 -1
  181. package/dist/core/web/public/next/assets/TerminalPane-BDkKFych.js +7 -0
  182. package/dist/core/web/public/next/assets/TerminalPane-BDkKFych.js.map +1 -0
  183. package/dist/core/web/public/next/assets/TerminalPane-BwfMbnJz.css +1 -0
  184. package/dist/core/web/public/next/assets/UniverseConsoleApp-BE72VyBL.js +2 -0
  185. package/dist/core/web/public/next/assets/{UniverseConsoleApp-DKqAf-eD.js.map → UniverseConsoleApp-BE72VyBL.js.map} +1 -1
  186. package/dist/core/web/public/next/assets/{UniverseView-D6081LQL.js → UniverseView-BbmYY2P4.js} +2 -2
  187. package/dist/core/web/public/next/assets/{UniverseView-D6081LQL.js.map → UniverseView-BbmYY2P4.js.map} +1 -1
  188. package/dist/core/web/public/next/assets/UsageSection-DsB-Jqyl.css +1 -0
  189. package/dist/core/web/public/next/assets/UsageSection-DsC5WmLk.js +2 -0
  190. package/dist/core/web/public/next/assets/UsageSection-DsC5WmLk.js.map +1 -0
  191. package/dist/core/web/public/next/assets/VerseConsoleApp-CXJWDiEM.css +1 -0
  192. package/dist/core/web/public/next/assets/VerseConsoleApp-Dq_hREXs.js +3 -0
  193. package/dist/core/web/public/next/assets/VerseConsoleApp-Dq_hREXs.js.map +1 -0
  194. package/dist/core/web/public/next/assets/Workspace-BYW9dm90.css +1 -0
  195. package/dist/core/web/public/next/assets/Workspace-CKvVEPFq.js +10 -0
  196. package/dist/core/web/public/next/assets/Workspace-CKvVEPFq.js.map +1 -0
  197. package/dist/core/web/public/next/assets/actions-BnjZy8a-.js +2 -0
  198. package/dist/core/web/public/next/assets/actions-BnjZy8a-.js.map +1 -0
  199. package/dist/core/web/public/next/assets/actions-Ddfg2iLl.css +1 -0
  200. package/dist/core/web/public/next/assets/{budget-queries-Dacv1VYP.js → budget-queries-Cp6vO7FH.js} +2 -2
  201. package/dist/core/web/public/next/assets/{budget-queries-Dacv1VYP.js.map → budget-queries-Cp6vO7FH.js.map} +1 -1
  202. package/dist/core/web/public/next/assets/calendar-day-BxBYHfX1.js +2 -0
  203. package/dist/core/web/public/next/assets/calendar-day-BxBYHfX1.js.map +1 -0
  204. package/dist/core/web/public/next/assets/capacity-strip-model-9-Yb211u.js +2 -0
  205. package/dist/core/web/public/next/assets/capacity-strip-model-9-Yb211u.js.map +1 -0
  206. package/dist/core/web/public/next/assets/charts-BmbKhjqw.js +2 -0
  207. package/dist/core/web/public/next/assets/charts-BmbKhjqw.js.map +1 -0
  208. package/dist/core/web/public/next/assets/colors-BZ3a9wFf.js +2 -0
  209. package/dist/core/web/public/next/assets/colors-BZ3a9wFf.js.map +1 -0
  210. package/dist/core/web/public/next/assets/{command-bus-CpYuam1F.js → command-bus-DHJJLWh8.js} +2 -2
  211. package/dist/core/web/public/next/assets/{command-bus-CpYuam1F.js.map → command-bus-DHJJLWh8.js.map} +1 -1
  212. package/dist/core/web/public/next/assets/context-model-BGznyHNQ.js +2 -0
  213. package/dist/core/web/public/next/assets/context-model-BGznyHNQ.js.map +1 -0
  214. package/dist/core/web/public/next/assets/context-model-DeJ28uSZ.js +2 -0
  215. package/dist/core/web/public/next/assets/context-model-DeJ28uSZ.js.map +1 -0
  216. package/dist/core/web/public/next/assets/context-queries-_mEgy4eg.js +2 -0
  217. package/dist/core/web/public/next/assets/context-queries-_mEgy4eg.js.map +1 -0
  218. package/dist/core/web/public/next/assets/context.module-BijAfoJw.js +2 -0
  219. package/dist/core/web/public/next/assets/context.module-BijAfoJw.js.map +1 -0
  220. package/dist/core/web/public/next/assets/{control-queries-BGjarMm9.js → control-queries-C4TG8blN.js} +2 -2
  221. package/dist/core/web/public/next/assets/{control-queries-BGjarMm9.js.map → control-queries-C4TG8blN.js.map} +1 -1
  222. package/dist/core/web/public/next/assets/dark-since-DOMvtB_G.js +2 -0
  223. package/dist/core/web/public/next/assets/dark-since-DOMvtB_G.js.map +1 -0
  224. package/dist/core/web/public/next/assets/dock-icons-BB7Fi6hT.js +2 -0
  225. package/dist/core/web/public/next/assets/dock-icons-BB7Fi6hT.js.map +1 -0
  226. package/dist/core/web/public/next/assets/dock-panes-mnIwSpRp.js +2 -0
  227. package/dist/core/web/public/next/assets/{dock-panes-BNTLvX7G.js.map → dock-panes-mnIwSpRp.js.map} +1 -1
  228. package/dist/core/web/public/next/assets/{dock-store-_E5h6TEq.js → dock-store-CdHQRP8s.js} +2 -2
  229. package/dist/core/web/public/next/assets/{dock-store-_E5h6TEq.js.map → dock-store-CdHQRP8s.js.map} +1 -1
  230. package/dist/core/web/public/next/assets/fleet-model-B4FKC7fH.js +2 -0
  231. package/dist/core/web/public/next/assets/fleet-model-B4FKC7fH.js.map +1 -0
  232. package/dist/core/web/public/next/assets/format-DKrNjdwD.js +2 -0
  233. package/dist/core/web/public/next/assets/format-DKrNjdwD.js.map +1 -0
  234. package/dist/core/web/public/next/assets/format-lW58rL2y.js +2 -0
  235. package/dist/core/web/public/next/assets/format-lW58rL2y.js.map +1 -0
  236. package/dist/core/web/public/next/assets/{git-model-5v5xGobf.js → git-model-DaGw1SzS.js} +2 -2
  237. package/dist/core/web/public/next/assets/{git-model-5v5xGobf.js.map → git-model-DaGw1SzS.js.map} +1 -1
  238. package/dist/core/web/public/next/assets/global-DG1fmn4y.js +2 -0
  239. package/dist/core/web/public/next/assets/global-DG1fmn4y.js.map +1 -0
  240. package/dist/core/web/public/next/assets/{guarded-action-vOPc8v75.js → guarded-action--lguLXfz.js} +2 -2
  241. package/dist/core/web/public/next/assets/{guarded-action-vOPc8v75.js.map → guarded-action--lguLXfz.js.map} +1 -1
  242. package/dist/core/web/public/next/assets/{icons-DWb24OA6.js → icons-YPgbel-I.js} +2 -2
  243. package/dist/core/web/public/next/assets/{icons-DWb24OA6.js.map → icons-YPgbel-I.js.map} +1 -1
  244. package/dist/core/web/public/next/assets/{index-afDA8cwW.js → index-Dk8R-3a7.js} +3 -3
  245. package/dist/core/web/public/next/assets/{index-afDA8cwW.js.map → index-Dk8R-3a7.js.map} +1 -1
  246. package/dist/core/web/public/next/assets/live-model-44wEU6I8.js +2 -0
  247. package/dist/core/web/public/next/assets/live-model-44wEU6I8.js.map +1 -0
  248. package/dist/core/web/public/next/assets/mind-B9PzLcl0.css +1 -0
  249. package/dist/core/web/public/next/assets/mind.module-BOABBdi_.js +2 -0
  250. package/dist/core/web/public/next/assets/mind.module-BOABBdi_.js.map +1 -0
  251. package/dist/core/web/public/next/assets/mutations-DjXM3IDg.js +2 -0
  252. package/dist/core/web/public/next/assets/{mutations-C6E10SPX.js.map → mutations-DjXM3IDg.js.map} +1 -1
  253. package/dist/core/web/public/next/assets/{overnight-queries-CCGfiS-g.js → overnight-queries-Be_eossf.js} +2 -2
  254. package/dist/core/web/public/next/assets/{overnight-queries-CCGfiS-g.js.map → overnight-queries-Be_eossf.js.map} +1 -1
  255. package/dist/core/web/public/next/assets/pane-chrome-8JmEhHVD.css +1 -0
  256. package/dist/core/web/public/next/assets/pane-chrome.module-D7o-fVd0.js +2 -0
  257. package/dist/core/web/public/next/assets/pane-chrome.module-D7o-fVd0.js.map +1 -0
  258. package/dist/core/web/public/next/assets/primitives-Dl3SEQvh.js +1 -0
  259. package/dist/core/web/public/next/assets/{queries-BuYIEHst.js → queries-CYEVCq5r.js} +2 -2
  260. package/dist/core/web/public/next/assets/{queries-BuYIEHst.js.map → queries-CYEVCq5r.js.map} +1 -1
  261. package/dist/core/web/public/next/assets/{reasoning-pref-BVzGczV7.js → reasoning-pref-a_ZP6GzU.js} +2 -2
  262. package/dist/core/web/public/next/assets/{reasoning-pref-BVzGczV7.js.map → reasoning-pref-a_ZP6GzU.js.map} +1 -1
  263. package/dist/core/web/public/next/assets/seat-subscription-CRigL-GE.js +2 -0
  264. package/dist/core/web/public/next/assets/seat-subscription-CRigL-GE.js.map +1 -0
  265. package/dist/core/web/public/next/assets/{section-visibility-CSrsTcwK.js → section-visibility-u7q-Q9AA.js} +2 -2
  266. package/dist/core/web/public/next/assets/{section-visibility-CSrsTcwK.js.map → section-visibility-u7q-Q9AA.js.map} +1 -1
  267. package/dist/core/web/public/next/assets/{sidebar-model-C8fyqSQY.js → sidebar-model-i4WRuQ6j.js} +2 -2
  268. package/dist/core/web/public/next/assets/{sidebar-model-C8fyqSQY.js.map → sidebar-model-i4WRuQ6j.js.map} +1 -1
  269. package/dist/core/web/public/next/assets/slots-CV9ZuLQU.js +3 -0
  270. package/dist/core/web/public/next/assets/{slots-W8gkmdfE.js.map → slots-CV9ZuLQU.js.map} +1 -1
  271. package/dist/core/web/public/next/assets/surface-data-DLvmUX9z.js +2 -0
  272. package/dist/core/web/public/next/assets/surface-data-DLvmUX9z.js.map +1 -0
  273. package/dist/core/web/public/next/assets/surface-prefetch-Ct2JwXvL.js +2 -0
  274. package/dist/core/web/public/next/assets/surface-prefetch-Ct2JwXvL.js.map +1 -0
  275. package/dist/core/web/public/next/assets/tasks-model-DWs5u9RO.js +2 -0
  276. package/dist/core/web/public/next/assets/{tasks-model-CnYQzgxk.js.map → tasks-model-DWs5u9RO.js.map} +1 -1
  277. package/dist/core/web/public/next/assets/{terminal-icons-CxUYaWX9.js → terminal-icons-Ct9cZsEK.js} +2 -2
  278. package/dist/core/web/public/next/assets/{terminal-icons-CxUYaWX9.js.map → terminal-icons-Ct9cZsEK.js.map} +1 -1
  279. package/dist/core/web/public/next/assets/{tool-semantics-CTRuLF5j.js → tool-semantics-GX8ScuSH.js} +2 -2
  280. package/dist/core/web/public/next/assets/{tool-semantics-CTRuLF5j.js.map → tool-semantics-GX8ScuSH.js.map} +1 -1
  281. package/dist/core/web/public/next/assets/{turn-files-BvB5LLNw.js → turn-files-BPHQzYuH.js} +2 -2
  282. package/dist/core/web/public/next/assets/{turn-files-BvB5LLNw.js.map → turn-files-BPHQzYuH.js.map} +1 -1
  283. package/dist/core/web/public/next/assets/{usage-queries-CQOpeE1H.js → usage-queries-CI_y9oWZ.js} +2 -2
  284. package/dist/core/web/public/next/assets/{usage-queries-CQOpeE1H.js.map → usage-queries-CI_y9oWZ.js.map} +1 -1
  285. package/dist/core/web/public/next/assets/use-guarded-action-DVCtLzSo.js +2 -0
  286. package/dist/core/web/public/next/assets/use-guarded-action-DVCtLzSo.js.map +1 -0
  287. package/dist/core/web/public/next/assets/{use-ticker-hryPXnyp.js → use-ticker-C3LQ2IYs.js} +2 -2
  288. package/dist/core/web/public/next/assets/{use-ticker-hryPXnyp.js.map → use-ticker-C3LQ2IYs.js.map} +1 -1
  289. package/dist/core/web/public/next/assets/use-token-gate-B5gOFkeH.js +2 -0
  290. package/dist/core/web/public/next/assets/use-token-gate-B5gOFkeH.js.map +1 -0
  291. package/dist/core/web/public/next/assets/{useActivity-Cg_9-7nt.js → useActivity-C3R1Sudh.js} +2 -2
  292. package/dist/core/web/public/next/assets/{useActivity-Cg_9-7nt.js.map → useActivity-C3R1Sudh.js.map} +1 -1
  293. package/dist/core/web/public/next/assets/useChartWidth-0APW0BR3.js +2 -0
  294. package/dist/core/web/public/next/assets/useChartWidth-0APW0BR3.js.map +1 -0
  295. package/dist/core/web/public/next/assets/useChartWidth-BAtVgn2n.css +1 -0
  296. package/dist/core/web/public/next/assets/{useSeatsRefresh-4Ov9eT1F.js → useSeatsRefresh-BN8bso-n.js} +2 -2
  297. package/dist/core/web/public/next/assets/{useSeatsRefresh-4Ov9eT1F.js.map → useSeatsRefresh-BN8bso-n.js.map} +1 -1
  298. package/dist/core/web/public/next/assets/verse-model-yHPwjf-7.js +2 -0
  299. package/dist/core/web/public/next/assets/verse-model-yHPwjf-7.js.map +1 -0
  300. package/dist/core/web/public/next/assets/{verse-queries-BjQoOTwv.js → verse-queries-2PxoBISm.js} +2 -2
  301. package/dist/core/web/public/next/assets/{verse-queries-BjQoOTwv.js.map → verse-queries-2PxoBISm.js.map} +1 -1
  302. package/dist/core/web/public/next/assets/verse-store-DHTuZpYa.js +3 -0
  303. package/dist/core/web/public/next/assets/verse-store-DHTuZpYa.js.map +1 -0
  304. package/dist/core/web/public/next/assets/verse-ui-store-Dy4HuDBV.js +3 -0
  305. package/dist/core/web/public/next/assets/{verse-ui-store-KTTKfv-T.js.map → verse-ui-store-Dy4HuDBV.js.map} +1 -1
  306. package/dist/core/web/public/next/assets/{viewport-ZB86jdES.js → viewport-DDoJ_xVq.js} +2 -2
  307. package/dist/core/web/public/next/assets/{viewport-ZB86jdES.js.map → viewport-DDoJ_xVq.js.map} +1 -1
  308. package/dist/core/web/public/next/assets/warmup-BsL2LdR-.js +3 -0
  309. package/dist/core/web/public/next/assets/warmup-BsL2LdR-.js.map +1 -0
  310. package/dist/core/web/public/next/assets/{workspace-model-4hq_Mv3N.js → workspace-model-Dd3LmIym.js} +2 -2
  311. package/dist/core/web/public/next/assets/{workspace-model-4hq_Mv3N.js.map → workspace-model-Dd3LmIym.js.map} +1 -1
  312. package/dist/core/web/public/next/index.html +1 -1
  313. package/dist/release-dependency-inventory.json +1 -1
  314. package/package.json +1 -1
  315. package/dist/core/web/public/next/assets/Advanced-CHjxJt2z.css +0 -1
  316. package/dist/core/web/public/next/assets/Advanced-DM0DYibH.js +0 -2
  317. package/dist/core/web/public/next/assets/Advanced-DM0DYibH.js.map +0 -1
  318. package/dist/core/web/public/next/assets/AppsSection-CXxbfPJQ.js +0 -2
  319. package/dist/core/web/public/next/assets/AppsSection-CXxbfPJQ.js.map +0 -1
  320. package/dist/core/web/public/next/assets/AreaTrend-gUVXkfhf.js +0 -2
  321. package/dist/core/web/public/next/assets/AreaTrend-gUVXkfhf.js.map +0 -1
  322. package/dist/core/web/public/next/assets/AutonomySection-CoMngwNB.js +0 -2
  323. package/dist/core/web/public/next/assets/BranchBar-C-NovaXr.js +0 -2
  324. package/dist/core/web/public/next/assets/BranchBar-C-NovaXr.js.map +0 -1
  325. package/dist/core/web/public/next/assets/BranchBar-C9BpPVLr.css +0 -1
  326. package/dist/core/web/public/next/assets/BudgetControl-P5lMxHvQ.js +0 -2
  327. package/dist/core/web/public/next/assets/BudgetControl-P5lMxHvQ.js.map +0 -1
  328. package/dist/core/web/public/next/assets/BurnDown-4P1LDoCL.js +0 -2
  329. package/dist/core/web/public/next/assets/BurnDown-4P1LDoCL.js.map +0 -1
  330. package/dist/core/web/public/next/assets/CapacityStrip-D6Yyg4a1.js +0 -2
  331. package/dist/core/web/public/next/assets/CapacityStrip-D6Yyg4a1.js.map +0 -1
  332. package/dist/core/web/public/next/assets/CapacityStrip-wgFP9MUA.css +0 -1
  333. package/dist/core/web/public/next/assets/ChatSection-B9cdRKUh.js +0 -3
  334. package/dist/core/web/public/next/assets/CommandSection-BC0uXim_.js +0 -2
  335. package/dist/core/web/public/next/assets/CommandSection-BC0uXim_.js.map +0 -1
  336. package/dist/core/web/public/next/assets/Composer-CkcwbQhG.css +0 -1
  337. package/dist/core/web/public/next/assets/Composer.module-DJMdrqNt.js +0 -2
  338. package/dist/core/web/public/next/assets/DiffPane-5uLKa0au.js +0 -2
  339. package/dist/core/web/public/next/assets/DiffPane-5uLKa0au.js.map +0 -1
  340. package/dist/core/web/public/next/assets/DiffPane-Csboxnn0.css +0 -1
  341. package/dist/core/web/public/next/assets/DockHost-BGnTgdIb.css +0 -1
  342. package/dist/core/web/public/next/assets/DockHost-CBV_6Ehi.js +0 -2
  343. package/dist/core/web/public/next/assets/DockHost-CBV_6Ehi.js.map +0 -1
  344. package/dist/core/web/public/next/assets/FleetSection-DuJcQCGg.js +0 -3
  345. package/dist/core/web/public/next/assets/FleetSection-DuJcQCGg.js.map +0 -1
  346. package/dist/core/web/public/next/assets/FleetSection-w9AjqfTR.css +0 -1
  347. package/dist/core/web/public/next/assets/Funnel-qX3Hlbce.js +0 -2
  348. package/dist/core/web/public/next/assets/Funnel-qX3Hlbce.js.map +0 -1
  349. package/dist/core/web/public/next/assets/GearTray-kVGP1coG.js +0 -2
  350. package/dist/core/web/public/next/assets/GearTray-kVGP1coG.js.map +0 -1
  351. package/dist/core/web/public/next/assets/GrowthSection-CYxJ9MH5.js +0 -2
  352. package/dist/core/web/public/next/assets/GrowthSection-CYxJ9MH5.js.map +0 -1
  353. package/dist/core/web/public/next/assets/HandoffDialog-DHZo3Ev0.js +0 -2
  354. package/dist/core/web/public/next/assets/HandoffDialog-DHZo3Ev0.js.map +0 -1
  355. package/dist/core/web/public/next/assets/MatrixHeatmap-B_JWCjZx.js +0 -2
  356. package/dist/core/web/public/next/assets/MatrixHeatmap-B_JWCjZx.js.map +0 -1
  357. package/dist/core/web/public/next/assets/McpSection-1UncWBpW.js +0 -2
  358. package/dist/core/web/public/next/assets/MessageMarkdown-C4pl9LI5.js +0 -3
  359. package/dist/core/web/public/next/assets/MessageMarkdown-Czcl3L_Q.css +0 -1
  360. package/dist/core/web/public/next/assets/MindSection-C3fCw_fD.js +0 -2
  361. package/dist/core/web/public/next/assets/MindSection-C3fCw_fD.js.map +0 -1
  362. package/dist/core/web/public/next/assets/MutationTokenDialog-Dn0tzCrh.js +0 -2
  363. package/dist/core/web/public/next/assets/MutationTokenDialog-Dn0tzCrh.js.map +0 -1
  364. package/dist/core/web/public/next/assets/NeedsYouDrawer-CuNYJCJ0.js +0 -2
  365. package/dist/core/web/public/next/assets/NeedsYouDrawer-CuNYJCJ0.js.map +0 -1
  366. package/dist/core/web/public/next/assets/NeedsYouDrawer-SkhvvdLb.css +0 -1
  367. package/dist/core/web/public/next/assets/NewChatDialog-B_BsS9pr.js +0 -3
  368. package/dist/core/web/public/next/assets/OnboardingFlow-CtCPpgoX.js +0 -2
  369. package/dist/core/web/public/next/assets/PreviewPane-Cx6RRwzM.js +0 -2
  370. package/dist/core/web/public/next/assets/PreviewPane-Cx6RRwzM.js.map +0 -1
  371. package/dist/core/web/public/next/assets/PreviewPane-WQJFjSXe.css +0 -1
  372. package/dist/core/web/public/next/assets/RailStatus-BWs6xevj.js +0 -2
  373. package/dist/core/web/public/next/assets/RailStatus-BWs6xevj.js.map +0 -1
  374. package/dist/core/web/public/next/assets/SeatSelector-DaUO-zoK.js +0 -3
  375. package/dist/core/web/public/next/assets/SessionSearch-B5aQ0BCM.js +0 -2
  376. package/dist/core/web/public/next/assets/SettingsSection-CuESA30a.js +0 -2
  377. package/dist/core/web/public/next/assets/SettingsSection-CuESA30a.js.map +0 -1
  378. package/dist/core/web/public/next/assets/Sidebar-DfD8MNZt.css +0 -1
  379. package/dist/core/web/public/next/assets/Sidebar-q11dtYZf.js +0 -3
  380. package/dist/core/web/public/next/assets/Sidebar-q11dtYZf.js.map +0 -1
  381. package/dist/core/web/public/next/assets/StepBand-B1W7rU70.js +0 -2
  382. package/dist/core/web/public/next/assets/StepBand-B1W7rU70.js.map +0 -1
  383. package/dist/core/web/public/next/assets/Swimlane-BR40WVcj.js +0 -2
  384. package/dist/core/web/public/next/assets/Swimlane-BR40WVcj.js.map +0 -1
  385. package/dist/core/web/public/next/assets/TerminalPane-CPKUTD9K.js +0 -7
  386. package/dist/core/web/public/next/assets/TerminalPane-CPKUTD9K.js.map +0 -1
  387. package/dist/core/web/public/next/assets/TerminalPane-CmE2QL-Q.css +0 -1
  388. package/dist/core/web/public/next/assets/UniverseConsoleApp-DKqAf-eD.js +0 -2
  389. package/dist/core/web/public/next/assets/UsageSection-B6fR3cru.js +0 -2
  390. package/dist/core/web/public/next/assets/UsageSection-B6fR3cru.js.map +0 -1
  391. package/dist/core/web/public/next/assets/UsageSection-DwgNOYvi.css +0 -1
  392. package/dist/core/web/public/next/assets/VerseConsoleApp-C0V221WL.css +0 -1
  393. package/dist/core/web/public/next/assets/VerseConsoleApp-bjARLPwN.js +0 -3
  394. package/dist/core/web/public/next/assets/VerseConsoleApp-bjARLPwN.js.map +0 -1
  395. package/dist/core/web/public/next/assets/Workspace-DQXMVDf7.css +0 -1
  396. package/dist/core/web/public/next/assets/Workspace-DtJb5tiM.js +0 -10
  397. package/dist/core/web/public/next/assets/Workspace-DtJb5tiM.js.map +0 -1
  398. package/dist/core/web/public/next/assets/actions-Bszsdpms.js +0 -2
  399. package/dist/core/web/public/next/assets/actions-Bszsdpms.js.map +0 -1
  400. package/dist/core/web/public/next/assets/actions-Dug8YIf0.css +0 -1
  401. package/dist/core/web/public/next/assets/capacity-strip-model-BR539Ci8.js +0 -2
  402. package/dist/core/web/public/next/assets/capacity-strip-model-BR539Ci8.js.map +0 -1
  403. package/dist/core/web/public/next/assets/charts-D4NaLaXA.js +0 -2
  404. package/dist/core/web/public/next/assets/charts-D4NaLaXA.js.map +0 -1
  405. package/dist/core/web/public/next/assets/colors-B-vHsX1S.js +0 -2
  406. package/dist/core/web/public/next/assets/colors-B-vHsX1S.js.map +0 -1
  407. package/dist/core/web/public/next/assets/context-model-Bto3LZn2.js +0 -2
  408. package/dist/core/web/public/next/assets/context-model-Bto3LZn2.js.map +0 -1
  409. package/dist/core/web/public/next/assets/context-queries-DVdSLrYy.js +0 -2
  410. package/dist/core/web/public/next/assets/context-queries-DVdSLrYy.js.map +0 -1
  411. package/dist/core/web/public/next/assets/context.module-B_k02HNU.js +0 -2
  412. package/dist/core/web/public/next/assets/context.module-B_k02HNU.js.map +0 -1
  413. package/dist/core/web/public/next/assets/dock-icons-oG8d7mNZ.js +0 -2
  414. package/dist/core/web/public/next/assets/dock-icons-oG8d7mNZ.js.map +0 -1
  415. package/dist/core/web/public/next/assets/dock-panes-BNTLvX7G.js +0 -2
  416. package/dist/core/web/public/next/assets/fleet-model-ClBbQ0Uj.js +0 -2
  417. package/dist/core/web/public/next/assets/fleet-model-ClBbQ0Uj.js.map +0 -1
  418. package/dist/core/web/public/next/assets/format-BNYWGJat.js +0 -2
  419. package/dist/core/web/public/next/assets/format-BNYWGJat.js.map +0 -1
  420. package/dist/core/web/public/next/assets/global-DVgMguLr.js +0 -2
  421. package/dist/core/web/public/next/assets/global-DVgMguLr.js.map +0 -1
  422. package/dist/core/web/public/next/assets/live-model-Dm6ITHvX.js +0 -2
  423. package/dist/core/web/public/next/assets/live-model-Dm6ITHvX.js.map +0 -1
  424. package/dist/core/web/public/next/assets/mind-B-lYfSUJ.css +0 -1
  425. package/dist/core/web/public/next/assets/mind.module-BzhAlg3e.js +0 -2
  426. package/dist/core/web/public/next/assets/mind.module-BzhAlg3e.js.map +0 -1
  427. package/dist/core/web/public/next/assets/mutations-C6E10SPX.js +0 -2
  428. package/dist/core/web/public/next/assets/primitives-DQvYikjm.js +0 -1
  429. package/dist/core/web/public/next/assets/seat-subscription-CrWOV4Qc.js +0 -2
  430. package/dist/core/web/public/next/assets/seat-subscription-CrWOV4Qc.js.map +0 -1
  431. package/dist/core/web/public/next/assets/slots-W8gkmdfE.js +0 -3
  432. package/dist/core/web/public/next/assets/surface-data-ZtCegYMQ.js +0 -2
  433. package/dist/core/web/public/next/assets/surface-data-ZtCegYMQ.js.map +0 -1
  434. package/dist/core/web/public/next/assets/tasks-model-CnYQzgxk.js +0 -2
  435. package/dist/core/web/public/next/assets/types-Dypu22dp.js +0 -3
  436. package/dist/core/web/public/next/assets/types-Dypu22dp.js.map +0 -1
  437. package/dist/core/web/public/next/assets/use-guarded-action-CO_aAsed.js +0 -2
  438. package/dist/core/web/public/next/assets/use-guarded-action-CO_aAsed.js.map +0 -1
  439. package/dist/core/web/public/next/assets/use-token-gate-DYA2-ALC.js +0 -2
  440. package/dist/core/web/public/next/assets/use-token-gate-DYA2-ALC.js.map +0 -1
  441. package/dist/core/web/public/next/assets/useChartWidth-B8E5mJgM.css +0 -1
  442. package/dist/core/web/public/next/assets/useChartWidth-MEXvDxDL.js +0 -2
  443. package/dist/core/web/public/next/assets/useChartWidth-MEXvDxDL.js.map +0 -1
  444. package/dist/core/web/public/next/assets/verse-model-E98kXngO.js +0 -2
  445. package/dist/core/web/public/next/assets/verse-model-E98kXngO.js.map +0 -1
  446. package/dist/core/web/public/next/assets/verse-store-BgKx_YGs.js +0 -2
  447. package/dist/core/web/public/next/assets/verse-store-BgKx_YGs.js.map +0 -1
  448. package/dist/core/web/public/next/assets/verse-ui-store-KTTKfv-T.js +0 -3
@@ -1,10 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/BudgetControl-P5lMxHvQ.js","assets/index-afDA8cwW.js","assets/global-DVgMguLr.js","assets/global-_tOCFt9y.css","assets/MutationTokenDialog-Dn0tzCrh.js","assets/MutationTokenDialog-Cum_DqQZ.css","assets/Segmented-B_8c_83S.js","assets/Segmented-BnjHbKzH.css","assets/capacity-strip-model-BR539Ci8.js","assets/workbench-types-DzN-5trg.js","assets/verse-model-E98kXngO.js","assets/seat-subscription-CrWOV4Qc.js","assets/Tag-DEEbDz7T.js","assets/Tag-D0rAEciH.css","assets/budget-queries-Dacv1VYP.js","assets/verse-queries-BjQoOTwv.js","assets/use-token-gate-DYA2-ALC.js","assets/Slider-BS9MU5ZV.js","assets/Slider-AgAdMFpo.css","assets/Switch-BzRXtNPt.js","assets/Switch-CU044EaE.css","assets/BudgetControl-CmG1JOWK.css","assets/HandoffDialog-DHZo3Ev0.js","assets/verse-ui-store-KTTKfv-T.js","assets/dock-store-_E5h6TEq.js","assets/viewport-ZB86jdES.js","assets/types-Dypu22dp.js","assets/verse-store-BgKx_YGs.js","assets/context-queries-DVdSLrYy.js","assets/context-model-Bto3LZn2.js","assets/SeatSelector-DaUO-zoK.js","assets/Composer.module-DJMdrqNt.js","assets/Composer-CkcwbQhG.css","assets/workspace-model-4hq_Mv3N.js","assets/context.module-B_k02HNU.js","assets/context-DiToyj6s.css"])))=>i.map(i=>d[i]);
2
- import{a as e,i as t,n,s as r,t as i}from"./index-afDA8cwW.js";import{$ as a,B as o,F as s,H as c,J as l,L as u,Q as d,R as f,U as p,V as m,W as h,X as g,a as _,et as v,m as y,z as b}from"./global-DVgMguLr.js";import{n as x,r as S,t as C}from"./MutationTokenDialog-Dn0tzCrh.js";import{n as w,r as T,t as E}from"./highlight-CMCZK9jW.js";import{t as D}from"./DiffViewer-tOGWk0CA.js";import{c as O,r as k,s as A}from"./command-catalog-s3W6Z96D.js";import{l as ee,t as te}from"./workbench-types-DzN-5trg.js";import{n as ne}from"./viewport-ZB86jdES.js";import{a as j,h as M,m as re,o as N,p as P,s as ie}from"./dock-store-_E5h6TEq.js";import{d as F,l as I,v as ae}from"./verse-ui-store-KTTKfv-T.js";import{d as oe}from"./verse-queries-BjQoOTwv.js";import{n as se,r as ce,t as le}from"./composer-keys-CYz4U4Bg.js";import{T as ue,l as de,s as fe,t as L,v as pe,y as R}from"./icons-DWb24OA6.js";import{c as me,f as he,i as ge,n as _e,r as ve,u as ye,w as be}from"./VerseConsoleApp-bjARLPwN.js";import{n as z,t as xe}from"./MessageMarkdown-C4pl9LI5.js";import{c as Se,f as Ce,l as we,r as B}from"./verse-store-BgKx_YGs.js";import{s as Te}from"./context-queries-DVdSLrYy.js";import{_ as Ee,c as De,l as Oe,r as ke,s as V,u as H,v as Ae}from"./capacity-strip-model-BR539Ci8.js";import{C as je,_ as Me,a as Ne,b as Pe,g as Fe,h as Ie,m as Le,n as Re,o as U,p as ze,r as Be,t as Ve,x as He,y as Ue}from"./verse-model-E98kXngO.js";import{n as We,r as Ge,t as Ke}from"./seat-subscription-CrWOV4Qc.js";import{t as W}from"./Composer.module-DJMdrqNt.js";import{n as qe}from"./budget-queries-Dacv1VYP.js";import{a as Je,i as Ye,n as Xe,t as Ze}from"./useSeatsRefresh-4Ov9eT1F.js";import{n as Qe,t as G}from"./ActionMenu-DhbNne-M.js";import{a as $e,c as et,d as tt,f as nt,i as rt,o as it,p as at,r as K,u as ot}from"./dock-icons-oG8d7mNZ.js";import{a as st,i as ct,n as lt,o as ut,r as dt}from"./tool-semantics-CTRuLF5j.js";import{countTasks as ft,currentTurnTasks as pt,describeTaskCounts as mt}from"./tasks-model-CnYQzgxk.js";import{t as ht}from"./Button-0-nNbv1h.js";import{a as gt,c as _t,d as vt,f as yt,h as bt,i as xt,l as St,m as Ct,o as wt,u as Tt}from"./reasoning-pref-BVzGczV7.js";import{n as Et,t as Dt}from"./use-token-gate-DYA2-ALC.js";import{i as Ot,o as kt,t as At}from"./slots-W8gkmdfE.js";import{n as jt,t as Mt}from"./dock-panes-BNTLvX7G.js";import"./Meter-C18ciKz4.js";import{a as Nt,c as Pt,i as Ft,l as It,n as Lt,o as Rt,r as zt,u as Bt}from"./ChatSection-B9cdRKUh.js";var q=r(e(),1),Vt={slot:`_slot_ka933_6`,list:`_list_ka933_18`,notice:`_notice_ka933_29`,"notice-in":`_notice-in_ka933_1`,more:`_more_ka933_34`},J=n(),Ht={"seat-health":0,engine:1,context:2,compact:3};function Ut(e,t=null){return e.map((e,t)=>({c:e,i:t})).sort((e,n)=>{if(t!==null){if(e.c.id===t&&n.c.id!==t)return-1;if(n.c.id===t&&e.c.id!==t)return 1}return Ht[e.c.kind]-Ht[n.c.kind]||e.i-n.i}).map(({c:e})=>e)}function Wt({notices:e,pinnedId:t=null}){let n=Ut(e,t),[r,i]=(0,q.useState)(!1),a=(0,q.useId)(),o=n.length-1;if((0,q.useEffect)(()=>{o<=0&&r&&i(!1)},[o,r]),n.length===0)return null;let s=r?n:n.slice(0,1),c=n.slice(1).map(e=>e.label).join(`, `);return(0,J.jsxs)(`section`,{className:Vt.slot,"aria-label":`Notices`,"data-count":n.length,children:[(0,J.jsx)(`div`,{id:a,className:Vt.list,children:s.map(e=>(0,J.jsx)(`div`,{className:Vt.notice,"data-kind":e.kind,children:e.render()},e.id))}),o>0?(0,J.jsx)(`button`,{type:`button`,className:Vt.more,"aria-expanded":r,"aria-controls":a,"aria-label":r?void 0:`+${o} more: ${c}`,title:r?void 0:c,onClick:()=>i(e=>!e),children:r?`Show fewer`:`+${o} more`}):null]})}var Gt={tray:`_tray_10ld6_5`,ring:`_ring_10ld6_27`,"tray-turn":`_tray-turn_10ld6_1`,count:`_count_10ld6_34`,word:`_word_10ld6_48`};function Kt({counts:e,onOpen:t,active:n=!1}){return e.total===0?null:(0,J.jsxs)(`button`,{type:`button`,className:Gt.tray,onClick:t,"aria-pressed":n,"aria-label":`${mt(e)}. Open the Tasks pane.`,title:`Open the Tasks pane`,children:[(0,J.jsx)(`span`,{className:Gt.ring,"aria-hidden":`true`}),(0,J.jsx)(`span`,{className:Gt.count,children:e.total}),(0,J.jsxs)(`span`,{className:Gt.word,children:[`running task`,e.total===1?``:`s`]})]})}var qt=r(t(),1),Jt=120;function Yt(e,t){if(t<0||t>e.length)return null;let n=e.slice(0,t),r=/^\/([a-z-]*)$/i.exec(n);if(r){let n=/^[a-z-]*/i.exec(e.slice(t))?.[0]??``;return{kind:`command`,query:r[1].toLowerCase(),start:0,end:t+n.length}}let i=/(^|\s)@([^\s@]*)$/.exec(n);if(i){let n=i[2];return n.length>Jt?null:{kind:`mention`,query:n,start:t-n.length-1,end:t+(/^[^\s@]*/.exec(e.slice(t))?.[0]??``).length}}return null}function Xt(e,t,n){let r=e.slice(t.end),i=r.startsWith(` `)||n.endsWith(` `)?``:` `;return{text:`${e.slice(0,t.start)}${n}${i}${r}`,caret:t.start+n.length+i.length}}function Zt(e,t){let n=t!==null&&e.root===t?e.path:`${e.root.replace(/\/+$/,``)}/${e.path}`;return/\s/.test(n)?`@"${n}"`:`@${n}`}var Qt=[{id:`handoff`,title:`/handoff`,description:`Continue in a fresh chat with a handoff note`},{id:`compact`,title:`/compact`,description:`Summarise earlier turns to free context (sent as a turn)`},{id:`new`,title:`/new`,description:`Start a new chat on this seat`},{id:`plan`,title:`/plan`,description:`Switch this chat to Plan mode — nothing is edited`},{id:`effort`,title:`/effort`,description:`Choose the reasoning effort`},{id:`model`,title:`/model`,description:`Choose the model`}];function $t(e){let t=e.toLowerCase();if(!t)return[...Qt];let n=Qt.filter(e=>e.id.startsWith(t)),r=Qt.filter(e=>!e.id.startsWith(t)&&(e.id.includes(t)||e.description.toLowerCase().includes(t)));return[...n,...r]}function en(e,t,n=null){if(n===null||n<0||n>e.length){let n=`${e}${e.length===0||/\s$/.test(e)?``:` `}${t} `;return{text:n,caret:n.length}}let r=e.slice(0,n),i=e.slice(n),a=r.length===0||/\s$/.test(r)?``:` `,o=i.startsWith(` `)?``:` `;return{text:`${r}${a}${t}${o}${i}`,caret:r.length+a.length+t.length+o.length}}function tn(e,t){return t?e.split(`${t} `).join(``).split(t).join(``).replace(/ {2,}/g,` `):e}function nn(e){return!Number.isFinite(e)||e<0?`—`:e<1024?`${e} B`:e<1048576?`${Math.round(e/1024)} KB`:`${(e/1048576).toFixed(1)} MB`}function rn(e){return new Promise((t,n)=>{let r=new FileReader;r.onerror=()=>n(r.error??Error(`the file could not be read`)),r.onload=()=>{let e=typeof r.result==`string`?r.result:``;t(e.slice(e.indexOf(`,`)+1))},r.readAsDataURL(e)})}var Y={footer:`_footer_ab9wz_12`,footerLeft:`_footerLeft_ab9wz_13`,footerRight:`_footerRight_ab9wz_14`,iconButton:`_iconButton_ab9wz_18`,iconButtonDanger:`_iconButtonDanger_ab9wz_34`,boxDragging:`_boxDragging_ab9wz_36`,boxBypass:`_boxBypass_ab9wz_38`,composerCompact:`_composerCompact_ab9wz_43`,controlWrap:`_controlWrap_ab9wz_46`,control:`_control_ab9wz_46`,controlDanger:`_controlDanger_ab9wz_65`,controlIconOnly:`_controlIconOnly_ab9wz_68`,controlIcon:`_controlIcon_ab9wz_68`,controlText:`_controlText_ab9wz_70`,caret:`_caret_ab9wz_71`,controlStatic:`_controlStatic_ab9wz_80`,menu:`_menu_ab9wz_87`,menuWide:`_menuWide_ab9wz_107`,menuHeading:`_menuHeading_ab9wz_108`,menuKbd:`_menuKbd_ab9wz_120`,menuNote:`_menuNote_ab9wz_128`,menuItem:`_menuItem_ab9wz_134`,menuLabel:`_menuLabel_ab9wz_151`,menuItemDanger:`_menuItemDanger_ab9wz_153`,menuCheck:`_menuCheck_ab9wz_154`,menuDesc:`_menuDesc_ab9wz_155`,menuText:`_menuText_ab9wz_165`,menuSeparator:`_menuSeparator_ab9wz_168`,controlList:`_controlList_ab9wz_171`,"engine-claude":`_engine-claude_ab9wz_187`,"engine-codex":`_engine-codex_ab9wz_188`,"engine-grok":`_engine-grok_ab9wz_189`,"engine-local":`_engine-local_ab9wz_190`,seatChipWrap:`_seatChipWrap_ab9wz_191`,seatChip:`_seatChip_ab9wz_191`,seatChipCompact:`_seatChipCompact_ab9wz_208`,seatChipText:`_seatChipText_ab9wz_209`,monogram:`_monogram_ab9wz_210`,ring:`_ring_ab9wz_228`,ringTrack:`_ringTrack_ab9wz_229`,ringFill:`_ringFill_ab9wz_230`,seatTip:`_seatTip_ab9wz_235`,tip:`_tip_ab9wz_252`,tipMuted:`_tipMuted_ab9wz_254`,budgetDialog:`_budgetDialog_ab9wz_256`,contextRing:`_contextRing_ab9wz_259`,contextFill:`_contextFill_ab9wz_271`,contextText:`_contextText_ab9wz_277`,queue:`_queue_ab9wz_280`,queueHeld:`_queueHeld_ab9wz_289`,queueHeading:`_queueHeading_ab9wz_290`,queueList:`_queueList_ab9wz_297`,queueItem:`_queueItem_ab9wz_298`,queueIndex:`_queueIndex_ab9wz_299`,queueText:`_queueText_ab9wz_307`,queueActions:`_queueActions_ab9wz_316`,queueButton:`_queueButton_ab9wz_317`,queueButtonPrimary:`_queueButtonPrimary_ab9wz_326`,queueRemove:`_queueRemove_ab9wz_328`,chips:`_chips_ab9wz_340`,chip:`_chip_ab9wz_340`,chipThumb:`_chipThumb_ab9wz_352`,chipExt:`_chipExt_ab9wz_353`,chipText:`_chipText_ab9wz_370`,chipName:`_chipName_ab9wz_371`,chipMeta:`_chipMeta_ab9wz_372`,chipSpinner:`_chipSpinner_ab9wz_374`,"composer-spin":`_composer-spin_ab9wz_1`,chipRemove:`_chipRemove_ab9wz_382`,suggest:`_suggest_ab9wz_395`,suggestHeading:`_suggestHeading_ab9wz_409`,suggestList:`_suggestList_ab9wz_419`,suggestItem:`_suggestItem_ab9wz_420`,suggestPrimary:`_suggestPrimary_ab9wz_430`,suggestSecondary:`_suggestSecondary_ab9wz_440`,suggestStatus:`_suggestStatus_ab9wz_449`,bypassList:`_bypassList_ab9wz_452`,bypassActions:`_bypassActions_ab9wz_466`,sheetBackdrop:`_sheetBackdrop_ab9wz_469`,sheet:`_sheet_ab9wz_469`,"composer-rise":`_composer-rise_ab9wz_1`,sheetHeader:`_sheetHeader_ab9wz_489`,sheetTitle:`_sheetTitle_ab9wz_490`,sheetClose:`_sheetClose_ab9wz_491`,sheetNote:`_sheetNote_ab9wz_499`,sheetBody:`_sheetBody_ab9wz_500`};function an(e){let t=e.lastIndexOf(`.`),n=t>0?e.slice(t+1):``;return n?n.slice(0,4).toUpperCase():`FILE`}function on({drafts:e,onRemove:t,disabled:n=!1}){return e.length===0?null:(0,J.jsx)(`ul`,{className:Y.chips,"aria-label":`Attachments`,children:e.map(e=>{let r=e.status===`uploading`?`uploading`:e.status===`error`?e.error??`not attached`:nn(e.bytes);return(0,J.jsxs)(`li`,{className:Y.chip,"data-status":e.status,children:[e.previewUrl?(0,J.jsx)(`img`,{className:Y.chipThumb,src:e.previewUrl,alt:``}):(0,J.jsx)(`span`,{className:Y.chipExt,"aria-hidden":`true`,children:an(e.name)}),(0,J.jsxs)(`span`,{className:Y.chipText,children:[(0,J.jsx)(`span`,{className:Y.chipName,title:e.name,children:e.name}),(0,J.jsxs)(`span`,{className:Y.chipMeta,role:e.status===`error`?`alert`:void 0,children:[e.status===`uploading`?(0,J.jsx)(`span`,{className:Y.chipSpinner,"aria-hidden":`true`}):null,r]})]}),(0,J.jsx)(`button`,{type:`button`,className:Y.chipRemove,disabled:n&&e.status!==`error`,"aria-label":`Remove ${e.name}`,onClick:()=>t(e.key),children:(0,J.jsx)(ue,{width:12,height:12,"aria-hidden":`true`})})]},e.key)})})}function sn({open:e,chatLabel:t,running:n,onCancel:r,onConfirm:i}){let a=(0,q.useId)(),o=(0,q.useRef)(null);return(0,J.jsxs)(x,{open:e,onClose:r,titleId:a,title:`Bypass permissions for this chat?`,initialFocusRef:o,description:(0,J.jsxs)(J.Fragment,{children:[`The agent in `,(0,J.jsx)(`strong`,{children:t}),` will run every command and edit every file without asking — including outside the project.`]}),children:[(0,J.jsxs)(`ul`,{className:Y.bypassList,children:[(0,J.jsxs)(`li`,{children:[`Applies to this chat only`,n?`, from the next turn`:``,`. New chats never inherit it.`]}),(0,J.jsxs)(`li`,{children:[`Switch back any time from the Permission menu`,ce(`composer.permission`)?(0,J.jsxs)(J.Fragment,{children:[` (`,(0,J.jsx)(`kbd`,{children:ce(`composer.permission`)}),`)`]}):null,`.`]}),(0,J.jsx)(`li`,{children:`Use it in a sandbox or a throwaway worktree, not on work you can’t lose.`})]}),(0,J.jsxs)(`div`,{className:Y.bypassActions,children:[(0,J.jsx)(ht,{ref:o,variant:`subtle`,onClick:r,children:`Cancel`}),(0,J.jsx)(ht,{variant:`danger`,onClick:i,children:`Bypass for this chat`})]})]})}function cn(e,t,n){if(e===null||t===null||t<=0)return`unknown`;let r=n??t;return e>=r?`danger`:e>=r*.8?`warn`:`ok`}function ln({contextTokens:e,contextWindow:t,autoCompactAt:n,exact:r}){let i=e!==null&&t!==null&&t>0,a=i?Math.min(100,Math.max(0,e/t*100)):null,o=cn(e,t,n),s=13/2,c=2*Math.PI*s,l=i?`Context ${r?``:`up to `}${Math.round(a)}% — ${B(e)} of ${B(t)} tokens${n===null?``:`; the CLI compacts at ${B(n)}`}`:`Context — not measured yet`;return(0,J.jsx)(be,{label:l,placement:`top`,children:(0,J.jsxs)(`span`,{className:Y.contextRing,role:`img`,"aria-label":l,tabIndex:0,"data-tone":o,children:[(0,J.jsxs)(`svg`,{width:16,height:16,viewBox:`0 0 16 16`,"aria-hidden":`true`,children:[(0,J.jsx)(`circle`,{className:Y.ringTrack,cx:8,cy:8,r:s,fill:`none`,strokeWidth:`2`}),a===null?null:(0,J.jsx)(`circle`,{className:Y.contextFill,cx:8,cy:8,r:s,fill:`none`,strokeWidth:`2`,strokeDasharray:`${a/100*c} ${c}`,transform:`rotate(-90 8 8)`,strokeLinecap:`round`})]}),(0,J.jsx)(`span`,{className:Y.contextText,"aria-hidden":`true`,children:a===null?`—`:`${Math.round(a)}%`})]})})}function un({label:e,valueLabel:t,options:n,value:r,onChange:i,defaultOption:a=null,disabled:o=!1,disabledReason:s=null,shortcut:c,openRequest:l,icon:u,danger:d=!1,note:f=null,variant:p=`menu`,iconOnly:m=!1,onOpenChange:h}){let[g,_]=(0,q.useState)(!1),v=(0,q.useRef)(null),y=(0,q.useRef)(null),b=(0,q.useId)(),x=(0,q.useRef)(l),S=(0,q.useCallback)(e=>{_(e),h?.(e)},[h]),C=(0,q.useCallback)(e=>{S(!1),e&&y.current?.focus()},[S]);(0,q.useEffect)(()=>{l!==void 0&&l!==x.current&&(x.current=l,!o&&p===`menu`&&S(!0))},[l,o,p,S]),(0,q.useEffect)(()=>{if(!g)return;let e=Array.from(v.current?.querySelectorAll(`[role="menuitemradio"]`)??[]);(e.find(e=>e.getAttribute(`aria-checked`)===`true`)??e[0])?.focus()},[g]),(0,q.useEffect)(()=>{if(!g)return;let e=e=>{v.current&&!v.current.contains(e.target)&&C(!1)};return document.addEventListener(`pointerdown`,e),()=>document.removeEventListener(`pointerdown`,e)},[g,C]);function w(e){e.available&&(p===`menu`&&C(!0),i(e.id))}function T(e){let t=Array.from(v.current?.querySelectorAll(`[role="menuitemradio"]`)??[]);if(t.length===0)return;let n=t.indexOf(document.activeElement),r=e=>t[(e+t.length)%t.length]?.focus();switch(e.key){case`ArrowDown`:e.preventDefault(),r(n+1);return;case`ArrowUp`:e.preventDefault(),r(n-1);return;case`Home`:e.preventDefault(),r(0);return;case`End`:e.preventDefault(),r(t.length-1);return;case`Escape`:p===`menu`&&(e.preventDefault(),e.stopPropagation(),C(!0));return;case`Tab`:p===`menu`&&C(!1);return;default:if(e.key.length===1&&/\S/.test(e.key)&&!e.metaKey&&!e.ctrlKey&&!e.altKey){let r=e.key.toLowerCase();for(let i=1;i<=t.length;i++){let a=t[(n+i)%t.length];if((a.dataset.label??``).toLowerCase().startsWith(r)){e.preventDefault(),a.focus();return}}}}}let E=p===`list`?(r===null?a?`__default`:null:r)??(a?`__default`:n[0]?.id??null):null,D=(0,J.jsxs)(J.Fragment,{children:[a?(0,J.jsx)(dn,{label:a.label,description:a.description??null,checked:r===null,available:!0,danger:!1,tabbable:E===`__default`,onSelect:()=>{p===`menu`&&C(!0),a.onSelect()}}):null,n.map(e=>(0,J.jsx)(dn,{label:e.label,description:e.available?e.danger?`Skips every permission check — confirmed for this chat only`:null:e.reason??`Unavailable on this seat`,checked:r===e.id,available:e.available,danger:e.danger===!0,tabbable:E===e.id,onSelect:()=>w(e)},e.id))]});return p===`list`?(0,J.jsxs)(`div`,{ref:v,className:Y.controlList,role:`menu`,"aria-label":e,onKeyDown:T,children:[(0,J.jsx)(`p`,{className:Y.menuHeading,children:e}),D]}):(0,J.jsxs)(`div`,{ref:v,className:Y.controlWrap,children:[(0,J.jsxs)(`button`,{ref:y,type:`button`,className:`${Y.control} ${d?Y.controlDanger:``} ${m?Y.controlIconOnly:``}`,"aria-haspopup":`menu`,"aria-expanded":g,"aria-controls":g?b:void 0,"aria-label":`${e}: ${t}`,disabled:o,title:o&&s?s:void 0,onClick:()=>S(!g),onKeyDown:e=>{(e.key===`ArrowUp`||e.key===`ArrowDown`)&&!g&&(e.preventDefault(),S(!0))},children:[u?(0,J.jsx)(`span`,{className:Y.controlIcon,"aria-hidden":`true`,children:u}):null,m?null:(0,J.jsx)(`span`,{className:Y.controlText,children:t}),(0,J.jsx)(`span`,{className:Y.caret,"aria-hidden":`true`})]}),g?(0,J.jsxs)(`div`,{id:b,role:`menu`,"aria-label":e,className:Y.menu,onKeyDown:T,children:[(0,J.jsxs)(`p`,{className:Y.menuHeading,children:[(0,J.jsx)(`span`,{children:e}),c?(0,J.jsx)(`kbd`,{className:Y.menuKbd,children:c}):null]}),f?(0,J.jsx)(`p`,{className:Y.menuNote,children:f}):null,D]}):null]})}function dn({tabbable:e=!1,label:t,description:n,checked:r,available:i,danger:a,onSelect:o}){let s=(0,q.useId)();return(0,J.jsxs)(`div`,{role:`menuitemradio`,tabIndex:e?0:-1,"aria-checked":r,"aria-disabled":!i||void 0,"aria-describedby":n?s:void 0,"data-label":t,className:`${Y.menuItem} ${a?Y.menuItemDanger:``}`,onClick:()=>{i&&o()},onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),e.stopPropagation(),i&&o())},children:[(0,J.jsx)(`span`,{className:Y.menuCheck,"aria-hidden":`true`,children:r?`✓`:``}),(0,J.jsxs)(`span`,{className:Y.menuText,children:[(0,J.jsx)(`span`,{className:Y.menuLabel,children:t}),n?(0,J.jsx)(`span`,{id:s,className:Y.menuDesc,children:n}):null]})]})}function fn({open:e,onClose:t,children:n}){let r=(0,q.useRef)(null),i=(0,q.useRef)(null),a=(0,q.useId)();return S({open:e,containerRef:r,onClose:t,initialFocusRef:i}),e?(0,qt.createPortal)((0,J.jsx)(`div`,{className:Y.sheetBackdrop,onMouseDown:e=>{e.target===e.currentTarget&&t()},children:(0,J.jsxs)(`div`,{ref:r,className:Y.sheet,role:`dialog`,"aria-modal":`true`,"aria-labelledby":a,tabIndex:-1,children:[(0,J.jsxs)(`div`,{className:Y.sheetHeader,children:[(0,J.jsx)(`h2`,{id:a,className:Y.sheetTitle,children:`Chat settings`}),(0,J.jsx)(`button`,{ref:i,type:`button`,className:Y.sheetClose,onClick:t,children:`Done`})]}),(0,J.jsx)(`p`,{className:Y.sheetNote,children:`Changes apply from the next turn.`}),(0,J.jsx)(`div`,{className:Y.sheetBody,children:n})]})}),document.body):null}function pn(e){let t=e.replace(/\s+/g,` `).trim();return t.length>140?`${t.slice(0,139)}…`:t}function mn({queue:e,running:t,disabled:n=!1,onEdit:r,onSendNow:i,onRemove:a}){if(!e||e.items.length===0)return null;let o=e.held,s=e.items.length,c=o?`Held — ${e.heldReason??`the last turn did not finish cleanly.`}`:t?`Queued · sends when this turn ends`:`Queued · sending next`;return(0,J.jsxs)(`section`,{className:`${Y.queue} ${o?Y.queueHeld:``}`,"aria-label":`${s} queued follow-up${s===1?``:`s`}`,children:[(0,J.jsx)(`p`,{className:Y.queueHeading,role:`status`,children:c}),(0,J.jsx)(`ol`,{className:Y.queueList,children:e.items.map((e,o)=>(0,J.jsxs)(`li`,{className:Y.queueItem,children:[(0,J.jsx)(`span`,{className:Y.queueIndex,"aria-hidden":`true`,children:o+1}),(0,J.jsx)(`span`,{className:Y.queueText,title:e.text,children:pn(e.text)}),(0,J.jsxs)(`span`,{className:Y.queueActions,children:[(0,J.jsx)(`button`,{type:`button`,className:Y.queueButton,disabled:n,"aria-label":`Edit queued message ${o+1}`,onClick:()=>r(e.id,e.text),children:`Edit`}),(0,J.jsx)(`button`,{type:`button`,className:`${Y.queueButton} ${Y.queueButtonPrimary}`,disabled:n,"aria-label":t?`Stop the turn and send queued message ${o+1} now`:`Send queued message ${o+1} now`,onClick:()=>i(e.id),children:`Send now`}),(0,J.jsx)(`button`,{type:`button`,className:Y.queueRemove,disabled:n,"aria-label":`Remove queued message ${o+1}`,onClick:()=>a(e.id),children:(0,J.jsx)(ue,{width:12,height:12,"aria-hidden":`true`})})]})]},e.id))})]})}var hn=(0,q.lazy)(async()=>({default:(await i(async()=>{let{BudgetControl:e}=await import(`./BudgetControl-P5lMxHvQ.js`).then(e=>e.n);return{BudgetControl:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21]))).BudgetControl}));function gn(e){let t=e?.capacity?.windows??[];return t.length>0?t:(e?.health.windows??[]).map(e=>({id:e.id,usedPercent:typeof e.usedPercent==`number`&&Number.isFinite(e.usedPercent)?e.usedPercent:null,resetsAt:e.resetsAt,resetDescription:null,limitReached:!1,measured:typeof e.usedPercent==`number`}))}function _n(e){let t=gn(e).filter(e=>e.usedPercent!==null||e.limitReached);return t.find(e=>e.id===`five_hour`)||(e?.capacity?.binding?e.capacity.binding:t.reduce((e,t)=>e===null||(t.usedPercent??100)>(e.usedPercent??100)?t:e,null))}function vn(e){return!e||e.usedPercent===null?`unknown`:e.limitReached||e.usedPercent>=100?`limit`:e.usedPercent>=85?`tight`:`ok`}function yn({window:e,size:t=14}){let n=(t-3)/2,r=2*Math.PI*n,i=e?.usedPercent??null,a=i===null?0:Math.max(0,Math.min(100,i));return(0,J.jsxs)(`svg`,{className:Y.ring,"data-tone":vn(e),width:t,height:t,viewBox:`0 0 ${t} ${t}`,"aria-hidden":`true`,children:[(0,J.jsx)(`circle`,{className:Y.ringTrack,cx:t/2,cy:t/2,r:n,fill:`none`,strokeWidth:`2`}),i===null?null:(0,J.jsx)(`circle`,{className:Y.ringFill,cx:t/2,cy:t/2,r:n,fill:`none`,strokeWidth:`2`,strokeDasharray:`${a/100*r} ${r}`,transform:`rotate(-90 ${t/2} ${t/2})`,strokeLinecap:`round`})]})}function bn(e){let t=Ue(e.id),n=e.limitReached?`limit reached`:e.usedPercent===null?`no reading`:`${Math.round(e.usedPercent)}% used`,r=e.resetDescription??(e.resetsAt?`resets ${new Date(e.resetsAt).toLocaleString(void 0,{weekday:`short`,hour:`numeric`,minute:`2-digit`})}`:null);return`${t}: ${n}${r?` · ${r}`:``}`}function xn(e,t,n){let r=e?.effective?.[t];if(!r)return{text:n===`error`?`Budget: no reading`:`Budget: loading…`,muted:!0};if(!r.enabled)return{text:`Autonomy never uses this seat — it is all yours.`,muted:!1};let i=Math.max(0,Math.min(100,Math.round(r.reservePercent)));return{text:`Autonomy may use ${100-i}% · ${i}% reserved for you`,muted:!1}}function Sn({seats:e,seat:t,label:n}){let r=y(qe),i=Xe(),a=t?ke(e,t.id,{health:i.data?.seats??null,budget:r.data??null}):null,o=a?a.windows.map(e=>({id:e.id,line:V({label:``},e,e.binding?a.reserve?.percent??null:null).trimStart()})):gn(t).map(e=>({id:e.id,line:bn(e)})),s=t&&t.engine!==`local`?xn(r.data??null,t.id,r.status):null;return(0,J.jsxs)(`span`,{className:Y.tip,children:[(0,J.jsx)(`strong`,{children:n}),a?.plan??t?.capacity?.planType?(0,J.jsxs)(`span`,{children:[`Plan: `,a?.plan??t?.capacity?.planType]}):null,o.length>0?o.map(e=>(0,J.jsx)(`span`,{children:e.line},e.id)):(0,J.jsx)(`span`,{className:Y.tipMuted,children:`No capacity reading yet`}),a?(0,J.jsxs)(`span`,{children:[`Health: `,a.word,a.connection&&a.connection.connection!==`connected`&&a.connection.connection!==`unknown`?` · ${a.connection.word}`:``,a.summary?` — ${a.summary}`:``]}):null,s?(0,J.jsx)(`span`,{className:s.muted?Y.tipMuted:void 0,children:s.text}):null,t&&t.engine===`local`?(0,J.jsx)(`span`,{children:`Local — no usage limits`}):null]})}function Cn({seats:e,seat:t,engine:n,label:r,disabled:i=!1,compact:a=!1,onContinueOn:o,onNewChat:s}){let[c,l]=(0,q.useState)(!1),[u,d]=(0,q.useState)(!1),[f,p]=(0,q.useState)(!1),m=(0,q.useRef)(null),h=(0,q.useId)(),g=(0,q.useRef)(null),_=(0,q.useRef)(null),v=(0,q.useId)(),y=(0,q.useId)(),b=e.find(e=>e.id===t.seatId),S=_n(b),C=e.filter(e=>e.id!==t.seatId&&e.health.state!==`unavailable`&&Ne(e)!==null),w=S&&S.usedPercent!==null?`${Ue(S.id)} ${S.limitReached?`limit reached`:`${Math.round(S.usedPercent)}% used`}`:`no capacity reading`;(0,q.useEffect)(()=>()=>{m.current&&clearTimeout(m.current)},[]);function T(e){if(m.current&&clearTimeout(m.current),!e){p(!0);return}m.current=setTimeout(()=>p(!0),200)}function E(){m.current&&clearTimeout(m.current),m.current=null,p(!1)}(0,q.useEffect)(()=>{if(!c)return;let e=e=>{g.current&&!g.current.contains(e.target)&&l(!1)};return document.addEventListener(`pointerdown`,e),g.current?.querySelector(`[role="menuitem"]`)?.focus(),()=>document.removeEventListener(`pointerdown`,e)},[c]);function D(e){let t=Array.from(g.current?.querySelectorAll(`[role="menuitem"]`)??[]),n=t.indexOf(document.activeElement);e.key===`Escape`?(e.preventDefault(),e.stopPropagation(),l(!1),_.current?.focus()):e.key===`ArrowDown`||e.key===`ArrowUp`?(e.preventDefault(),t[((e.key===`ArrowDown`?n+1:n-1)+t.length)%t.length]?.focus()):e.key===`Home`||e.key===`End`?(e.preventDefault(),(e.key===`Home`?t[0]:t[t.length-1])?.focus()):e.key===`Tab`&&l(!1)}function O(e){l(!1),e()}return(0,J.jsxs)(`div`,{ref:g,className:`${Y.seatChipWrap} ${Y[`engine-${n}`]??``}`,children:[(0,J.jsxs)(`button`,{ref:_,type:`button`,className:`${Y.seatChip} ${a?Y.seatChipCompact:``}`,"aria-haspopup":`menu`,"aria-expanded":c,"aria-controls":c?v:void 0,disabled:i,"aria-label":`Seat: ${r}, ${w}`,"aria-describedby":f&&!c?h:void 0,onMouseEnter:()=>T(!0),onMouseLeave:E,onFocus:e=>{e.currentTarget.matches(`:focus-visible`)&&T(!1)},onBlur:E,onKeyDown:e=>{e.key===`Escape`&&f&&!c&&(e.stopPropagation(),E())},onClick:()=>{E(),l(e=>!e)},children:[(0,J.jsx)(`span`,{className:Y.monogram,"aria-hidden":`true`,children:te[n]}),a?null:(0,J.jsx)(`span`,{className:Y.seatChipText,children:r}),(0,J.jsx)(yn,{window:S})]}),f&&!c?(0,J.jsx)(`span`,{id:h,role:`tooltip`,className:Y.seatTip,children:(0,J.jsx)(Sn,{seats:e,seat:b,label:r})}):null,c?(0,J.jsxs)(`div`,{id:v,role:`menu`,"aria-label":`Seat`,className:`${Y.menu} ${Y.menuWide}`,onKeyDown:D,children:[(0,J.jsx)(`p`,{className:Y.menuHeading,children:(0,J.jsxs)(`span`,{children:[`This chat runs on `,(0,J.jsx)(`strong`,{children:r})]})}),C.map(e=>{let t=Ne(e),n=Fe(e);return(0,J.jsxs)(`button`,{type:`button`,role:`menuitem`,className:`${Y.menuItem} ${Y[`engine-${e.engine}`]??``}`,"data-capacity":n.cls,onClick:()=>O(()=>(o??s)({seatId:e.id,model:t.id})),children:[(0,J.jsx)(`span`,{className:Y.monogram,"aria-hidden":`true`,children:te[e.engine]}),(0,J.jsxs)(`span`,{className:Y.menuText,children:[(0,J.jsxs)(`span`,{className:Y.menuLabel,children:[o?`Continue on`:`New chat on`,` `,e.label]}),(0,J.jsxs)(`span`,{className:Y.menuDesc,children:[t.label,n.cls===`unread`?``:` · ${Be[n.cls]}, ${n.text}`]})]})]},e.id)}),C.length===0?(0,J.jsx)(`p`,{className:Y.menuNote,children:`No other seat can take this chat right now.`}):null,(0,J.jsx)(`div`,{className:Y.menuSeparator,role:`separator`}),(0,J.jsxs)(`button`,{type:`button`,role:`menuitem`,className:Y.menuItem,onClick:()=>O(()=>s({seatId:t.seatId,model:t.model})),children:[(0,J.jsx)(`span`,{className:Y.menuCheck,"aria-hidden":`true`}),(0,J.jsx)(`span`,{className:Y.menuText,children:(0,J.jsx)(`span`,{className:Y.menuLabel,children:`New chat on this seat`})})]}),n===`local`?null:(0,J.jsxs)(`button`,{type:`button`,role:`menuitem`,className:Y.menuItem,onClick:()=>O(()=>d(!0)),children:[(0,J.jsx)(`span`,{className:Y.menuCheck,"aria-hidden":`true`}),(0,J.jsxs)(`span`,{className:Y.menuText,children:[(0,J.jsx)(`span`,{className:Y.menuLabel,children:`Budget mode…`}),(0,J.jsx)(`span`,{className:Y.menuDesc,children:`How much of this seat autonomy may use`})]})]})]}):null,(0,J.jsx)(x,{open:u,onClose:()=>d(!1),titleId:y,title:`Budget mode`,widthClassName:Y.budgetDialog,description:`What autonomy may spend on each seat, and what stays reserved for your own chats.`,children:u?(0,J.jsx)(q.Suspense,{fallback:(0,J.jsx)(`p`,{className:Y.menuNote,children:`Loading budget…`}),children:(0,J.jsx)(hn,{})}):null})]})}function wn(e,t){return`${e}-opt-${t}`}function Tn({id:e,label:t,items:n,activeIndex:r,status:i=null,onPick:a,onHover:o}){return(0,J.jsxs)(`div`,{className:Y.suggest,children:[(0,J.jsx)(`p`,{className:Y.suggestHeading,children:t}),n.length===0?(0,J.jsx)(`p`,{className:Y.suggestStatus,role:`status`,children:i??`Nothing matches`}):(0,J.jsx)(`ul`,{id:e,role:`listbox`,"aria-label":t,className:Y.suggestList,children:n.map((t,n)=>(0,J.jsxs)(`li`,{id:wn(e,n),role:`option`,"aria-selected":n===r,"aria-disabled":t.disabledReason?!0:void 0,className:Y.suggestItem,onMouseDown:e=>e.preventDefault(),onMouseEnter:()=>o(n),onClick:()=>a(n),children:[(0,J.jsx)(`span`,{className:Y.suggestPrimary,children:t.primary}),t.disabledReason?(0,J.jsx)(`span`,{className:Y.suggestSecondary,children:t.disabledReason}):t.secondary?(0,J.jsx)(`span`,{className:Y.suggestSecondary,children:t.secondary}):null]},t.id))}),n.length>0&&i?(0,J.jsx)(`p`,{className:Y.suggestStatus,role:`status`,children:i}):null]})}function En(e,t,n){let[r,i]=(0,q.useState)(null),[a,o]=(0,q.useState)(e!==null),[s,c]=(0,q.useState)(null),[l,u]=(0,q.useState)(!1);return(0,q.useEffect)(()=>{if(!e){i(null),o(!1);return}let t=new AbortController;return St(e,t.signal).then(e=>{i(e),c(null)}).catch(e=>{t.signal.aborted||(i(null),c(Dt(e)))}).finally(()=>{t.signal.aborted||o(!1)}),()=>t.abort()},[e,t]),{view:r,loading:a,error:s,pending:l,update:(0,q.useCallback)(async(t,r)=>{if(!e)return!1;u(!0),c(null);try{let a=await n(r,()=>Ct(e,t));return a?(i(a),!0):!1}catch(e){return c(Dt(e)),!1}finally{u(!1)}},[e,n])}}function Dn(e){if(typeof e!=`object`||!e||Array.isArray(e))return null;let t=e;if(!Array.isArray(t.items))return null;let n=t.items.filter(e=>{if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.id==`string`&&typeof t.text==`string`});return{...t,sessionId:typeof t.sessionId==`string`?t.sessionId:``,items:n,held:t.held===!0,heldReason:typeof t.heldReason==`string`?t.heldReason:null}}function On(e,t,n){let[r,i]=(0,q.useState)(null),[a,o]=(0,q.useState)(null),[s,c]=(0,q.useState)(0);(0,q.useEffect)(()=>{if(!e){i(null);return}let t=new AbortController;return _t(e,t.signal).then(e=>{t.signal.aborted||i(Dn(e))}).catch(()=>{t.signal.aborted||i(null)}),()=>t.abort()},[e,t,s]);let l=(0,q.useCallback)(async(e,t)=>{o(null);try{let r=await n(e,t);if(r===null)return null;let a=Dn(r);return a&&i(a),a??r}catch(e){return o(Dt(e)),null}},[n]);return{queue:r,error:a,enqueue:(0,q.useCallback)((t,n={})=>e?l(n.sendNow?`Stop the running turn and send this next.`:`Queue this message to send when the turn ends.`,()=>wt(e,t,n)):Promise.resolve(null),[e,l]),remove:(0,q.useCallback)(async t=>e?await l(`Remove this queued message.`,()=>Tt(e,t))!==null:!1,[e,l]),sendNow:(0,q.useCallback)(async t=>e?await l(`Send this queued message now.`,()=>yt(e,t))!==null:!1,[e,l]),refresh:(0,q.useCallback)(()=>c(e=>e+1),[]),clearError:(0,q.useCallback)(()=>o(null),[])}}var kn=0;function An(e,t){let[n,r]=(0,q.useState)([]),i=(0,q.useRef)(new Set);(0,q.useEffect)(()=>()=>{for(let e of i.current)URL.revokeObjectURL(e);i.current.clear()},[]);let a=(0,q.useCallback)((e,t)=>{r(n=>n.map(n=>n.key===e?{...n,...t}:n))},[]);return{drafts:n,add:(0,q.useCallback)((n,o)=>{if(e)for(let s of n){kn+=1;let n=`att-${kn}`,c=s.type.startsWith(`image/`),l=null;c&&typeof URL.createObjectURL==`function`&&(l=URL.createObjectURL(s),i.current.add(l));let u=s.name||(c?`pasted-image.png`:`attachment`),d=s.type||`application/octet-stream`,f={key:n,name:u,mime:d,bytes:s.size,status:`uploading`,previewUrl:l,error:null,attachment:null};if(r(e=>[...e,f]),s.size>8388608){a(n,{status:`error`,error:`${nn(s.size)} — each file must be ${nn(ee)} or smaller`});continue}if(s.size===0){a(n,{status:`error`,error:`The file is empty.`});continue}(async()=>{try{let r=await rn(s),i=await t(`Attach this file to the chat.`,()=>bt(e,{name:u,mime:d,dataBase64:r}));if(!i){a(n,{status:`error`,error:`Not attached — the chat is locked.`});return}a(n,{status:`ready`,attachment:i,name:i.name}),o(i.ref)}catch(e){a(n,{status:`error`,error:Dt(e)})}})()}},[e,t,a]),remove:(0,q.useCallback)(async a=>{let o=n.find(e=>e.key===a);if(!o)return null;if(r(e=>e.filter(e=>e.key!==a)),o.previewUrl&&(URL.revokeObjectURL(o.previewUrl),i.current.delete(o.previewUrl)),o.attachment&&e){let n=o.attachment;try{await t(`Remove this attachment.`,()=>gt(e,n.id))}catch{}return n.ref}return null},[n,e,t]),reset:(0,q.useCallback)(()=>{r(e=>{for(let t of e)t.previewUrl&&(URL.revokeObjectURL(t.previewUrl),i.current.delete(t.previewUrl));return[]})},[]),uploading:n.some(e=>e.status===`uploading`)}}var jn=`Use Wispr Flow / Superwhisper — system dictation works in this box`;function Mn(){let e=globalThis;return e.SpeechRecognition??e.webkitSpeechRecognition??null}function Nn({disabled:e=!1,onInterim:t,onFinal:n,onListeningChange:r}){let i=Mn(),[a,o]=(0,q.useState)(!1),[s,c]=(0,q.useState)(null),l=(0,q.useRef)(null),u=(0,q.useRef)({onInterim:t,onFinal:n,onListeningChange:r});u.current={onInterim:t,onFinal:n,onListeningChange:r};let d=(0,q.useCallback)(()=>{let e=l.current;if(l.current=null,e){e.onresult=null,e.onend=null,e.onerror=null;try{e.stop()}catch{}}o(!1),u.current.onInterim(``),u.current.onListeningChange?.(!1)},[]),f=(0,q.useCallback)(()=>{if(!i||l.current)return;let e;try{e=new i}catch{c(`Dictation could not start in this browser.`);return}e.lang=navigator.language||`en-US`,e.continuous=!0,e.interimResults=!0,e.onresult=e=>{let t=``,n=``;for(let r=e.resultIndex;r<e.results.length;r+=1){let i=e.results[r];if(!i)continue;let a=i[0]?.transcript??``;i.isFinal?n+=a:t+=a}n&&u.current.onFinal(n.trim()),u.current.onInterim(t)},e.onerror=e=>{let t=e.error??`unknown`;t===`not-allowed`||t===`service-not-allowed`?c(`Microphone access was denied.`):t!==`aborted`&&t!==`no-speech`&&c(`Dictation stopped (${t}).`),d()},e.onend=()=>{l.current===e&&d()},l.current=e,c(null);try{e.start()}catch{l.current=null,c(`Dictation could not start in this browser.`);return}o(!0),u.current.onListeningChange?.(!0)},[i,d]);return(0,q.useEffect)(()=>{if(!a)return;function e(e){e.key===`Escape`&&(e.preventDefault(),d())}return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[a,d]),(0,q.useEffect)(()=>()=>{let e=l.current;l.current=null;try{e?.abort()}catch{}},[]),i?(0,J.jsxs)(`span`,{className:W.dictationWrap,children:[(0,J.jsx)(be,{label:a?`Stop dictation`:`Dictate`,shortcut:a?`Esc`:void 0,placement:`top`,children:(0,J.jsxs)(`button`,{type:`button`,className:`${W.dictation} ${a?W.dictationLive:``}`,disabled:e&&!a,"aria-pressed":a,"aria-label":a?`Stop dictation (Esc)`:`Start dictation`,onClick:()=>a?d():f(),children:[(0,J.jsx)(Pn,{}),a?(0,J.jsx)(`span`,{className:W.dictationPulse,"aria-hidden":`true`}):null]})}),s?(0,J.jsx)(`span`,{role:`alert`,className:W.dictationError,children:s}):null]}):(0,J.jsx)(`span`,{className:W.dictationWrap,children:(0,J.jsx)(be,{label:jn,placement:`top`,children:(0,J.jsxs)(`button`,{type:`button`,className:W.dictation,disabled:!0,"aria-disabled":`true`,children:[(0,J.jsx)(Pn,{}),(0,J.jsx)(`span`,{className:`visually-hidden`,children:`Dictation unavailable`})]})})})}function Pn(){return(0,J.jsxs)(`svg`,{viewBox:`0 0 20 20`,width:`16`,height:`16`,"aria-hidden":`true`,focusable:`false`,children:[(0,J.jsx)(`rect`,{x:`7`,y:`2`,width:`6`,height:`10`,rx:`3`,fill:`currentColor`}),(0,J.jsx)(`path`,{d:`M4.5 9.5a5.5 5.5 0 0 0 11 0M10 15v3M7 18h6`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`})]})}var X={banner:`_banner_tv0om_4`,head:`_head_tv0om_22`,headline:`_headline_tv0om_29`,list:`_list_tv0om_36`,row:`_row_tv0om_44`,rowHead:`_rowHead_tv0om_50`,dot:`_dot_tv0om_57`,label:`_label_tv0om_70`,word:`_word_tv0om_72`,reset:`_reset_tv0om_76`,detail:`_detail_tv0om_81`,actions:`_actions_tv0om_88`,command:`_command_tv0om_95`,status:`_status_tv0om_105`,block:`_block_tv0om_114`,blockReason:`_blockReason_tv0om_126`,alternatives:`_alternatives_tv0om_132`,alternativesLabel:`_alternativesLabel_tv0om_139`},Fn=3;function In({seats:e,seatId:t,reports:n=null,onSeatChange:r,onReconnect:i=Ye,now:a=Date.now()}){let[o,s]=(0,q.useState)(!1),[c,l]=(0,q.useState)(null),u=e.find(e=>e.id===t)??null;if(u===null)return null;let d=n?.find(e=>e.seatId===t)??null,f=Ae(u,d,a);if(f===null)return null;let p=Ee(t,e,n,a).map(t=>e.find(e=>e.id===t)).filter(e=>e!==void 0).slice(0,Fn),m=async()=>{s(!0),l(null);try{await i(t),l({text:`Sign-in opened in Terminal. Send again once you have finished there.`,error:!1})}catch(e){l({text:e instanceof Error&&e.message?e.message:`The sign-in window could not be opened.`,error:!0})}finally{s(!1)}};return(0,J.jsxs)(`div`,{className:X.block,role:`alert`,"data-connection":f.connection,children:[(0,J.jsx)(`p`,{className:X.blockReason,children:f.reason}),(0,J.jsxs)(`div`,{className:X.alternatives,children:[f.connection===`signed-out`?(0,J.jsxs)(ht,{size:`sm`,variant:`primary`,icon:(0,J.jsx)(de,{}),busy:o,onClick:()=>{m()},children:[`Reconnect `,u.label]}):null,p.length>0?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`span`,{className:X.alternativesLabel,children:`Continue in a new chat on`}),p.map(e=>{let t=Ne(e);return t===null?null:(0,J.jsx)(ht,{size:`sm`,variant:`subtle`,onClick:()=>r({seatId:e.id,model:t.id}),children:e.label},e.id)})]}):(0,J.jsx)(`span`,{className:X.alternativesLabel,children:`No other seat is ready right now.`})]}),c===null?null:(0,J.jsx)(`p`,{className:X.status,"aria-live":`polite`,"data-error":c.error?`true`:void 0,children:c.text})]})}function Ln({active:e=!0,...t}){let n=Xe(e);return(0,J.jsx)(In,{...t,reports:n.data?.seats??null})}var Rn=65536,zn=400,Bn=120,Vn=.4,Hn=320;function Un({children:e}){return(0,J.jsx)(`svg`,{width:`12`,height:`12`,viewBox:`0 0 16 16`,fill:`none`,stroke:`currentColor`,strokeWidth:1.5,strokeLinecap:`round`,strokeLinejoin:`round`,focusable:`false`,"aria-hidden":`true`,children:e})}var Wn={plan:(0,J.jsx)(Un,{children:(0,J.jsx)(`path`,{d:`M8 2.2 13.8 8 8 13.8 2.2 8Z`})}),"accept-edits":(0,J.jsxs)(Un,{children:[(0,J.jsx)(`path`,{d:`M10.6 2.9 13.1 5.4 5.6 12.9 2.6 13.4 3.1 10.4Z`}),(0,J.jsx)(`path`,{d:`M9.2 4.3 11.7 6.8`})]}),auto:(0,J.jsxs)(Un,{children:[(0,J.jsx)(`path`,{d:`M13.2 7.2a5.2 5.2 0 1 0-.7 3.5`}),(0,J.jsx)(`path`,{d:`M13.5 3.4v3.9h-3.9`})]}),bypass:(0,J.jsxs)(Un,{children:[(0,J.jsx)(`path`,{d:`M8 2.6 14.2 13H1.8L8 2.6Z`}),(0,J.jsx)(`path`,{d:`M8 6.6v3`}),(0,J.jsx)(`circle`,{cx:`8`,cy:`11.3`,r:`0.75`,fill:`currentColor`,stroke:`none`})]})},Gn=(0,J.jsxs)(`svg`,{width:`16`,height:`16`,viewBox:`0 0 16 16`,fill:`currentColor`,focusable:`false`,"aria-hidden":`true`,children:[(0,J.jsx)(`circle`,{cx:`3.5`,cy:`8`,r:`1.25`}),(0,J.jsx)(`circle`,{cx:`8`,cy:`8`,r:`1.25`}),(0,J.jsx)(`circle`,{cx:`12.5`,cy:`8`,r:`1.25`})]});function Kn({sessionId:e=null,seats:t,seat:n,engine:r,running:i,disabled:a,disabledReason:c,locked:l,hintSeen:d=!1,contextTokens:p=null,contextWindow:m=null,autoCompactAt:h=null,contextExact:g=!0,handoffDraft:_=!1,onSend:v,onStop:y,onSeatChange:x,onContinueOn:S,onHandoff:w,handoffDisabledReason:T=null,queueSlot:E=null,insertRequest:D=null,autoFocus:O=!1}){let{compact:A}=ne(),ee=Et(),te=ee.run,j=En(a?null:e,i,te),M=On(a?null:e,i,te),re=An(a?null:e,te),[N,P]=(0,q.useState)(()=>u(e)),[ie,F]=(0,q.useState)(``),[I,ae]=(0,q.useState)(!1),[oe,ue]=(0,q.useState)(!1),[de,fe]=(0,q.useState)(!1),[L,R]=(0,q.useState)(null),[me,he]=(0,q.useState)(-1),[ge]=(0,q.useState)(()=>f(e)),_e=(0,q.useRef)(ge),ve=(0,q.useRef)(``),ye=(0,q.useRef)(null),z=(0,q.useRef)(null),xe=(0,q.useRef)(null),Se=(0,q.useId)(),Ce=(0,q.useId)(),[we,Te]=(0,q.useState)(null),[Ee,De]=(0,q.useState)(null),[Oe,ke]=(0,q.useState)(0),[V,H]=(0,q.useState)(null),[Ae,je]=(0,q.useState)(null),[Ne,Pe]=(0,q.useState)({permission:0,model:0,effort:0}),[Fe,Ie]=(0,q.useState)({permission:!1,model:!1,effort:!1}),[Le,Re]=(0,q.useState)(!1),[U,ze]=(0,q.useState)(!1),[Be,Ve]=(0,q.useState)(!1),He=ie?`${N}${N&&!N.endsWith(` `)?` `:``}${ie}`:N,Ue=(0,q.useMemo)(()=>new TextEncoder().encode(He).length>Rn,[He]),We=M.queue,Ge=We!==null,Ke=(We?.items.length??0)>=3,qe=He.trim().length>0,Je=re.uploading,Ye=!a&&!I&&qe&&!Ue&&!Je&&(!i||Ge&&!Ke),Xe=!d&&!de,Ze=_&&!de&&qe,Qe=(0,q.useMemo)(()=>s(He,{contextTokens:p,contextWindow:m,autoCompactAt:h,exact:g}),[He,p,m,h,g]),G=j.view,$e=r??t.find(e=>e.id===n.seatId)?.engine??`claude`,et=Me(t,{seatId:n.seatId,engine:$e,model:G?.controls.model??n.model}),tt=$e===`grok`?`Grok can only open files inside the project folder, so it can’t read attachments.`:null,nt=(0,q.useRef)(N),rt=(0,q.useRef)(N);rt.current=N;let it=(0,q.useCallback)(()=>{nt.current!==rt.current&&(nt.current=rt.current,o(e,rt.current))},[e]);(0,q.useEffect)(()=>{if(nt.current===N)return;let e=setTimeout(it,zn);return()=>clearTimeout(e)},[N,it]),(0,q.useEffect)(()=>(window.addEventListener(`beforeunload`,it),()=>{window.removeEventListener(`beforeunload`,it),it()}),[it]),(0,q.useEffect)(()=>{O&&ye.current?.focus()},[O]);let at=(0,q.useRef)(D?.nonce??null);(0,q.useEffect)(()=>{if(!D||D.nonce===at.current)return;at.current=D.nonce;let e=D.text.replace(/\s+$/,``);e&&(P(t=>t.trim()?`${t.replace(/\s+$/,``)}\n\n${e}`:e),pt(2**53-1))},[D]),(0,q.useEffect)(()=>{if(!i)return;let e=e=>{e.key!==`.`||!e.metaKey&&!e.ctrlKey||e.shiftKey||e.altKey||(e.preventDefault(),y())};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[i,y]),(0,q.useEffect)(()=>{if(i||!O)return;let e=document.activeElement,t=e!==null&&e!==ye.current&&z.current?.contains(e)===!0;(e===null||e===document.body||!e.isConnected||t)&&ye.current?.focus()},[i,O]),(0,q.useEffect)(()=>{let e=ye.current;if(!e)return;let t=typeof window>`u`?0:window.innerHeight,n=t>0?Math.round(t*Vn):Hn;e.style.height=`auto`,e.style.height=`${Math.min(e.scrollHeight,n)}px`},[He]);let K=(0,q.useMemo)(()=>{if(a||ie||we===null)return null;let t=Yt(N,we);return!t||t.start===Ee||t.kind===`mention`&&!e?null:t},[N,we,a,ie,Ee,e]);(0,q.useEffect)(()=>{if(K?.kind!==`mention`||!e){je(null);return}let t=new AbortController,n=setTimeout(()=>{vt(e,K.query,t.signal).then(e=>{H({query:e.query,files:e.files,primaryRoot:e.primaryRoot??null}),je(null)}).catch(()=>{t.signal.aborted||je(`Files could not be listed.`)})},Bn);return()=>{clearTimeout(n),t.abort()}},[K?.kind,K?.query,e]);let ot=K?.kind===`command`?$t(K.query):[],st=(0,q.useCallback)(e=>e===`handoff`&&!w?`Use Hand off in the chat header’s Chat actions menu`:e===`handoff`&&T?T:(e===`plan`||e===`effort`||e===`model`)&&!G?`This server has no session controls yet`:e===`plan`&&G&&!G.options.permissionModes.find(e=>e.id===`plan`)?.available?`This seat has no plan mode`:null,[w,T,G]),ct=K?.kind===`command`?ot.map(e=>({id:e.id,primary:e.title,secondary:e.description,disabledReason:st(e.id)})):K?.kind===`mention`?(V?.files??[]).slice(0,12).map(e=>({id:`${e.root}:${e.path}`,primary:e.path,secondary:V?.primaryRoot===e.root?null:e.root})):[],lt=K!==null,ut=K?.kind===`mention`?Ae??(V===null||V.query!==K.query?`Searching…`:ct.length===0?`No files match`:null):null,dt=ct.length===0?0:Math.min(Oe,ct.length-1);(0,q.useEffect)(()=>{ke(0)},[K?.kind,K?.query]);function ft(){let e=ye.current;e&&Te(e.selectionStart===e.selectionEnd?e.selectionStart:null)}function pt(e){requestAnimationFrame(()=>{let t=ye.current;if(!t)return;let n=Math.min(e,t.value.length);t.focus(),t.setSelectionRange(n,n),Te(n)})}let mt=(0,q.useCallback)(e=>{if(A){Re(!0);return}Pe(t=>({...t,[e]:t[e]+1}))},[A]);function ht(e){if(!K)return;let t=st(e.id);if(t){R({text:t,error:!1});return}let r=`${N.slice(0,K.start)}${N.slice(K.end)}`.replace(/^\s+/,``);switch(e.id){case`compact`:{let e=Xt(N,K,`/compact`);P(e.text),pt(e.caret);return}case`new`:P(r),x({seatId:n.seatId,model:G?.controls.model??n.model});return;case`handoff`:P(r),w?.();return;case`plan`:P(r),pt(0),_t(`plan`);return;case`effort`:case`model`:P(r),mt(e.id);return}}function gt(e){if(!K)return;if(K.kind===`command`){let t=ot[e];t&&ht(t);return}let t=V?.files[e];if(!t)return;let n=Xt(N,K,Zt(t,V?.primaryRoot??null));P(n.text),pt(n.caret)}let _t=(0,q.useCallback)(async e=>{if(e===`bypass`){ze(!0);return}await j.update({permissionMode:e},`Change this chat’s permission mode.`)&&R({text:i?`Permission mode changes from the next turn.`:`Permission mode: ${Jn(G?.options.permissionModes,e)}.`,error:!1})},[j,i,G]),yt=(0,q.useCallback)(async e=>{await j.update({model:e},`Change this chat’s model.`)&&R({text:i?`The new model takes over from the next turn.`:`Model: ${Jn(G?.options.models,e)}.`,error:!1})},[j,i,G]),bt=(0,q.useCallback)(async e=>{await j.update({effort:e},`Change this chat’s reasoning effort.`)&&R({text:i?`Effort changes from the next turn.`:`Effort: ${e?Jn(G?.options.efforts,e):`the CLI default`}.`,error:!1})},[j,i,G]);async function xt(){ze(!1),await j.update({permissionMode:`bypass`,confirmBypass:!0},`Bypass permissions for this chat.`)&&R({text:`Bypass is on for this chat — every check is skipped.`,error:!1}),ye.current?.focus()}let St=(0,q.useCallback)(e=>{if(!(e.length===0||a)){if(tt){R({text:tt,error:!0});return}re.add(e,e=>{P(t=>en(t,e).text)})}},[re,tt,a]);async function Ct(e){let t=await re.remove(e);t&&P(e=>tn(e,t))}function wt(e){let t=Array.from(e.clipboardData?.files??[]);t.length!==0&&(e.preventDefault(),St(t))}function Tt(e){Ve(!1);let t=Array.from(e.dataTransfer?.files??[]);t.length!==0&&(e.preventDefault(),St(t))}let Dt=(0,q.useCallback)(()=>{if(!a){if(tt){R({text:tt,error:!0});return}xe.current?.click()}},[a,tt]),Ot=(0,q.useCallback)(t=>{_e.current[_e.current.length-1]!==t&&(_e.current=[..._e.current,t]),b(e,t),he(-1),ve.current=``,P(``),nt.current=``,rt.current=``,o(e,``),F(``),fe(!0),re.reset()},[e,re]),kt=(0,q.useCallback)(async(e=`send`)=>{if(a||I||Ue)return;let t=He.trim();if(t){if(Je){R({text:`Wait for the attachments to finish uploading.`,error:!1});return}ae(!0),R(null);try{if(i&&Ge){if(e!==`stop-and-send`&&Ke){R({text:`Up to 3 follow-ups can wait — send or remove one first.`,error:!0});return}await M.enqueue(t,{sendNow:e===`stop-and-send`})&&(Ot(t),e===`stop-and-send`&&R({text:`Stopping the turn — this message goes next.`,error:!1}));return}if(i)return;await v(t)&&Ot(t)}finally{ae(!1),ye.current?.focus()}}},[a,I,Ue,He,Je,i,Ge,Ke,M,Ot,v]);async function At(e,t){await M.remove(e)&&(P(e=>e.trim()?`${e.replace(/\s+$/,``)}\n\n${t}`:t),pt(2**53-1))}let jt=lt||Object.values(Fe).some(Boolean)||Le||U||ee.dialog.open,Mt=(0,q.useCallback)(e=>{switch(e){case`composer.permission`:mt(`permission`);return;case`composer.model`:mt(`model`);return;case`composer.effort`:mt(`effort`);return;case`composer.attach`:Dt();return;case`composer.send`:kt(`send`);return;case`composer.stop-and-send`:kt(`stop-and-send`);return;case`composer.stop`:i&&y();return}},[mt,Dt,kt,i,y]);(0,q.useEffect)(()=>{if(a)return;let e=e=>{if(!(e.defaultPrevented||document.querySelector(`[role="dialog"][aria-modal="true"]`))){for(let t of[`composer.permission`,`composer.model`,`composer.effort`,`composer.attach`])if(se(e,t)){e.preventDefault(),Mt(t);return}}},t=e=>{let t=e.detail?.id;typeof t==`string`&&le.includes(t)&&Mt(t)};return document.addEventListener(`keydown`,e),window.addEventListener(k,t),()=>{document.removeEventListener(`keydown`,e),window.removeEventListener(k,t)}},[a,Mt]);function Nt(e){let t=_e.current;if(t.length===0)return!1;if(me===-1){if(e>0)return!1;ve.current=N;let n=t.length-1;return he(n),P(t[n]),F(``),!0}let n=me+e;return n<0?!0:n>=t.length?(he(-1),P(ve.current),!0):(he(n),P(t[n]),!0)}function Pt(e){let t=e.currentTarget,n=t.selectionStart===t.selectionEnd,r=e.nativeEvent.isComposing;if(lt&&!r){if(e.key===`ArrowDown`||e.key===`ArrowUp`){if(ct.length>0){e.preventDefault();let t=e.key===`ArrowDown`?1:-1;ke((dt+t+ct.length)%ct.length)}return}if(e.key===`Enter`&&!e.shiftKey&&!e.metaKey&&!e.ctrlKey||e.key===`Tab`){if(ct.length>0){e.preventDefault(),gt(dt);return}if(e.key===`Tab`)return}if(e.key===`Escape`){e.preventDefault(),e.stopPropagation(),De(K?.start??null);return}}if(!r&&se(e,`composer.stop-and-send`)){e.preventDefault(),kt(`stop-and-send`);return}if(e.key===`Enter`&&!e.shiftKey&&!r){e.preventDefault(),kt(`send`);return}if(!r&&e.key===`Escape`&&!e.metaKey&&!e.ctrlKey&&!e.shiftKey&&!e.altKey){i&&!qe&&!jt&&(e.preventDefault(),y());return}if(e.key===`ArrowUp`&&n&&(me!==-1||t.selectionStart===0&&!ie)){Nt(-1)&&e.preventDefault();return}e.key===`ArrowDown`&&n&&me!==-1&&Nt(1)&&e.preventDefault()}let Ft=a?c??`Sending is disabled`:i?Ge?`Queue a follow-up — it sends when this turn ends…`:`Draft your next message…`:`Message the agent… (@ files, / commands)`,It=(G?.controls.permissionMode??null)===`bypass`,Lt=i?`Changes apply from the next turn.`:null,Rt=G?e=>({permission:(0,J.jsx)(un,{label:`Permission mode`,variant:e,valueLabel:Jn(G.options.permissionModes,G.controls.permissionMode),options:G.options.permissionModes,value:G.controls.permissionMode,onChange:e=>{_t(e)},disabled:j.pending,shortcut:ce(`composer.permission`),openRequest:Ne.permission,icon:Wn[G.controls.permissionMode],danger:It,note:Lt,onOpenChange:e=>Ie(t=>({...t,permission:e}))},`permission`),model:(0,J.jsx)(un,{label:`Model`,variant:e,valueLabel:Jn(G.options.models,G.controls.model),options:G.options.models,value:G.controls.model,onChange:e=>{yt(e)},disabled:j.pending,shortcut:ce(`composer.model`),openRequest:Ne.model,note:Lt,onOpenChange:e=>Ie(t=>({...t,model:e}))},`model`),effort:G.options.efforts.some(e=>e.available)?(0,J.jsx)(un,{label:`Effort`,variant:e,valueLabel:G.controls.effort?Jn(G.options.efforts,G.controls.effort):`Default effort`,options:G.options.efforts,value:G.controls.effort,defaultOption:{label:`Default`,description:`The CLI decides`,onSelect:()=>{bt(null)}},onChange:e=>{bt(e)},disabled:j.pending,shortcut:ce(`composer.effort`),openRequest:Ne.effort,note:Lt,onOpenChange:e=>Ie(t=>({...t,effort:e}))},`effort`):(0,J.jsx)(`span`,{className:Y.controlStatic,title:G.options.efforts[0]?.reason??`No effort setting on this seat`,children:`No effort setting`},`effort`)}):null,zt=Rt?.(`menu`)??null,Bt=i?Ke?`Queue full`:`Queue`:I?`Sending…`:l?`Unlock & send`:`Send`;return(0,J.jsxs)(`form`,{ref:z,className:`${W.composer} ${A?Y.composerCompact:``}`,onSubmit:e=>{e.preventDefault(),kt(`send`)},"aria-describedby":Se,onDragOver:e=>{!a&&Array.from(e.dataTransfer?.types??[]).includes(`Files`)&&(e.preventDefault(),Ve(!0))},onDragLeave:e=>{e.currentTarget.contains(e.relatedTarget)||Ve(!1)},onDrop:Tt,children:[a?null:(0,J.jsx)(Ln,{seats:t,seatId:n.seatId,onSeatChange:x}),qn(E,(0,J.jsx)(mn,{queue:We,running:i,disabled:a,onEdit:(e,t)=>{At(e,t)},onSendNow:e=>{M.sendNow(e)},onRemove:e=>{M.remove(e)}})),(0,J.jsxs)(`div`,{className:`${W.box} ${oe?W.boxListening:``} ${Be?Y.boxDragging:``} ${It?Y.boxBypass:``}`,children:[lt?(0,J.jsx)(Tn,{id:Ce,label:K?.kind===`command`?`Commands`:`Files in this chat’s folders`,items:ct,activeIndex:dt,status:ut,onPick:gt,onHover:ke}):null,(0,J.jsx)(on,{drafts:re.drafts,onRemove:e=>{Ct(e)},disabled:a}),(0,J.jsx)(`textarea`,{ref:ye,className:W.textarea,value:He,rows:1,placeholder:Ft,"aria-label":`Message`,disabled:a,"aria-autocomplete":lt?`list`:void 0,"aria-controls":lt&&ct.length>0?Ce:void 0,"aria-expanded":lt?!0:void 0,"aria-activedescendant":lt&&ct.length>0?wn(Ce,dt):void 0,onChange:e=>{F(``),he(-1),P(e.target.value),De(null),Te(e.target.selectionStart===e.target.selectionEnd?e.target.selectionStart:null)},onSelect:ft,onClick:ft,onKeyUp:e=>{(e.key.startsWith(`Arrow`)||e.key===`Home`||e.key===`End`)&&ft()},onBlur:()=>Te(null),onFocus:ft,onPaste:wt,onKeyDown:Pt}),(0,J.jsx)(`input`,{ref:xe,type:`file`,multiple:!0,hidden:!0,tabIndex:-1,"aria-hidden":`true`,onChange:e=>{St(Array.from(e.target.files??[])),e.target.value=``}}),(0,J.jsxs)(`div`,{className:`${W.row} ${Y.footer}`,children:[(0,J.jsxs)(`div`,{className:Y.footerLeft,children:[(0,J.jsx)(be,{label:tt??`Attach files — or paste, or drop`,shortcut:tt?void 0:ce(`composer.attach`),children:(0,J.jsx)(`button`,{type:`button`,className:Y.iconButton,"aria-label":`Attach files`,"aria-disabled":tt?!0:void 0,disabled:a,onClick:Dt,children:(0,J.jsx)(pe,{width:16,height:16,"aria-hidden":`true`})})}),(0,J.jsx)(Nn,{disabled:a,onInterim:F,onFinal:e=>P(t=>t&&!t.endsWith(` `)?`${t} ${e}`:`${t}${e}`),onListeningChange:ue}),!A&&zt?zt.permission:null]}),(0,J.jsxs)(`div`,{className:Y.footerRight,children:[(0,J.jsx)(Cn,{seats:t,seat:{seatId:n.seatId,model:G?.controls.model??n.model},engine:$e,label:et,disabled:a,compact:A,...S?{onContinueOn:S}:{},onNewChat:x}),!A&&zt?zt.model:null,!A&&zt?zt.effort:null,A?null:(0,J.jsx)(ln,{contextTokens:p,contextWindow:m,autoCompactAt:h,exact:g}),A&&G?(0,J.jsx)(`button`,{type:`button`,className:`${Y.iconButton} ${It?Y.iconButtonDanger:``}`,"aria-haspopup":`dialog`,"aria-label":`Chat settings: ${Jn(G.options.permissionModes,G.controls.permissionMode)}, ${Jn(G.options.models,G.controls.model)}`,onClick:()=>Re(!0),disabled:a,children:Gn}):null,i&&qe&&Ge?(0,J.jsx)(`button`,{type:`submit`,className:W.send,disabled:!Ye,"aria-label":Ke?`Queue is full`:`Queue this message — it sends when the turn ends`,children:Bt},`queue`):null,i?(0,J.jsxs)(`button`,{type:`button`,className:W.stop,onClick:y,title:`Stop the running turn (⌘. or Esc from an empty box)`,"aria-label":`Stop the running turn`,children:[(0,J.jsx)(`span`,{className:W.stopIcon,"aria-hidden":`true`}),A?null:`Stop`]},`stop`):(0,J.jsx)(`button`,{type:`submit`,className:W.send,disabled:!Ye,"aria-label":l?`Send (unlocks first)`:`Send message`,children:Bt},`send`)]})]})]}),Qe?(0,J.jsxs)(`p`,{className:W.cost,"data-tone":Qe.tone,role:`status`,children:[(0,J.jsxs)(`span`,{className:W.costFigure,children:[`≈`,B(Qe.draftTokens)]}),` tokens for this message — sending would reach `,(0,J.jsxs)(`span`,{className:W.costFigure,children:[Qe.projectedPercent,`%`]}),` of the context window.`,Yn(Qe),(0,J.jsx)(`span`,{className:`visually-hidden`,children:` This is an estimate; the provider counts the real total.`})]}):null,(0,J.jsx)(`p`,{id:Se,className:`${W.help} ${Xe||Ue||oe||i||a||me!==-1||Ze||L||j.error||M.error?``:W.helpQuiet}`,children:Ue?(0,J.jsx)(`span`,{role:`alert`,className:W.helpError,children:`Message is over 64 KB — trim it before sending.`}):M.error?(0,J.jsx)(`span`,{role:`alert`,className:W.helpError,children:M.error}):j.error&&G?(0,J.jsx)(`span`,{role:`alert`,className:W.helpError,children:j.error}):L?(0,J.jsx)(`span`,{role:L.error?`alert`:`status`,className:L.error?W.helpError:void 0,children:L.text}):oe?`Listening… Esc stops dictation.`:a&&c?c:i?Ge?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`kbd`,{children:`Enter`}),` queues (sends when this turn ends) · `,(0,J.jsx)(`kbd`,{children:ce(`composer.stop-and-send`)}),` stops and sends · `,(0,J.jsx)(`kbd`,{children:`Esc`}),` stops`]}):(0,J.jsxs)(J.Fragment,{children:[`Reply in progress — your draft stays here · `,(0,J.jsx)(`kbd`,{children:`⌘.`}),` or Stop interrupts the turn`]}):Ze?(0,J.jsx)(J.Fragment,{children:`Handoff note drafted from the previous chat — review or edit it; nothing is spent until you press Send.`}):me===-1?Xe?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`kbd`,{children:`Enter`}),` sends · `,(0,J.jsx)(`kbd`,{children:`Shift`}),`+`,(0,J.jsx)(`kbd`,{children:`Enter`}),` new line · `,(0,J.jsx)(`kbd`,{children:`@`}),` files · `,(0,J.jsx)(`kbd`,{children:`/`}),` commands · `,(0,J.jsx)(`kbd`,{children:`↑`}),` recalls`]}):null:(0,J.jsxs)(J.Fragment,{children:[`Recalled message `,me+1,` of `,_e.current.length,` · `,(0,J.jsx)(`kbd`,{children:`↓`}),` returns to your draft`]})}),A&&Rt?(0,J.jsx)(fn,{open:Le,onClose:()=>Re(!1),children:(()=>{let e=Rt(`list`);return(0,J.jsxs)(J.Fragment,{children:[e.permission,e.model,e.effort]})})()}):null,(0,J.jsx)(sn,{open:U,chatLabel:et,running:i,onCancel:()=>{ze(!1),ye.current?.focus()},onConfirm:()=>{xt()}}),(0,J.jsx)(C,{...ee.dialog,tokenLabel:`Mutation token`,tokenHelp:`the mutation token ashlr verse printed`})]})}function qn(e,t){return e?(0,qt.createPortal)(t,e):t}function Jn(e,t){return e?.find(e=>e.id===t)?.label??String(t)}function Yn(e){let t=e.exact?``:` (The current size is an upper bound, so this may overstate it.)`;if(e.tone===`over`)return` That is past the whole window — the CLI must compact first, or the turn fails. Continue in a fresh chat.${t}`;if(e.pastCompaction)return` That reaches the auto-compaction point, so the CLI will summarise earlier turns during this reply. Continue in a fresh chat to keep full detail.${t}`;if(e.autoCompactAt!==null){let n=Math.max(0,e.autoCompactAt-e.projectedTokens);return` About ${B(n)} left before the CLI auto-compacts.${e.tone===`danger`?` Start a new chat to keep the agent sharp.`:``}${t}`}return`${e.tone===`danger`?` Start a new chat to keep the agent sharp.`:``}${t}`}var Z={workspace:`_workspace_uqigv_1`,header:`_header_uqigv_14`,headerSpacer:`_headerSpacer_uqigv_14`,identity:`_identity_uqigv_41`,eyebrow:`_eyebrow_uqigv_50`,eyebrowSkeleton:`_eyebrowSkeleton_uqigv_60`,title:`_title_uqigv_68`,titleStatic:`_titleStatic_uqigv_69`,titleButton:`_titleButton_uqigv_94`,titleInput:`_titleInput_uqigv_123`,titleSkeleton:`_titleSkeleton_uqigv_141`,seatPill:`_seatPill_uqigv_151`,engineDot:`_engineDot_uqigv_172`,seatText:`_seatText_uqigv_155`,"engine-claude":`_engine-claude_uqigv_186`,"engine-codex":`_engine-codex_uqigv_187`,"engine-grok":`_engine-grok_uqigv_188`,"engine-local":`_engine-local_uqigv_189`,streamState:`_streamState_uqigv_191`,actions:`_actions_uqigv_199`,actionDivider:`_actionDivider_uqigv_208`,toggles:`_toggles_uqigv_217`,ghost:`_ghost_uqigv_224`,ghostIcon:`_ghostIcon_uqigv_225`,danger:`_danger_uqigv_226`,confirm:`_confirm_uqigv_258`,confirmText:`_confirmText_uqigv_259`,meter:`_meter_uqigv_270`,ring:`_ring_uqigv_271`,"meter-warn":`_meter-warn_uqigv_281`,"meter-danger":`_meter-danger_uqigv_282`,"meter-unknown":`_meter-unknown_uqigv_283`,"meter-over":`_meter-over_uqigv_286`,meterTrack:`_meterTrack_uqigv_289`,meterFill:`_meterFill_uqigv_297`,meterTick:`_meterTick_uqigv_306`,meterInline:`_meterInline_uqigv_316`,meterText:`_meterText_uqigv_324`,meterTokens:`_meterTokens_uqigv_333`,meterCompact:`_meterCompact_uqigv_334`,meterPercent:`_meterPercent_uqigv_338`,modeWrap:`_modeWrap_uqigv_344`,modeChip:`_modeChip_uqigv_345`,modeMenu:`_modeMenu_uqigv_362`,modeMenuHeading:`_modeMenuHeading_uqigv_383`,modeItem:`_modeItem_uqigv_389`,modeItemPrimary:`_modeItemPrimary_uqigv_404`,modeItemSecondary:`_modeItemSecondary_uqigv_405`,modeMenuNote:`_modeMenuNote_uqigv_406`,modeMenuWarn:`_modeMenuWarn_uqigv_414`,modeMenuError:`_modeMenuError_uqigv_422`,advice:`_advice_uqigv_432`,adviceNote:`_adviceNote_uqigv_444`,compactForm:`_compactForm_uqigv_458`,compactLabel:`_compactLabel_uqigv_459`,compactInput:`_compactInput_uqigv_460`,modeItemAction:`_modeItemAction_uqigv_472`,adviceBody:`_adviceBody_uqigv_473`,adviceTitle:`_adviceTitle_uqigv_474`,adviceReasons:`_adviceReasons_uqigv_475`,adviceFine:`_adviceFine_uqigv_483`,adviceActions:`_adviceActions_uqigv_484`,adviceAction:`_adviceAction_uqigv_484`,adviceStatus:`_adviceStatus_uqigv_503`,emptyState:`_emptyState_uqigv_512`,emptyMark:`_emptyMark_uqigv_523`,emptyTitle:`_emptyTitle_uqigv_524`,emptyBody:`_emptyBody_uqigv_531`,emptyButton:`_emptyButton_uqigv_532`,emptyWarn:`_emptyWarn_uqigv_548`,ringSvg:`_ringSvg_uqigv_636`,ringTrack:`_ringTrack_uqigv_637`,ringFill:`_ringFill_uqigv_638`,ringTick:`_ringTick_uqigv_645`,ringText:`_ringText_uqigv_646`,adviceStack:`_adviceStack_uqigv_659`,crumbSep:`_crumbSep_uqigv_666`,crumbBranch:`_crumbBranch_uqigv_667`,engineTick:`_engineTick_uqigv_674`,monogram:`_monogram_uqigv_681`,modeError:`_modeError_uqigv_688`,queueHost:`_queueHost_uqigv_703`,liveRow:`_liveRow_uqigv_716`,liveSpacer:`_liveSpacer_uqigv_732`,engineNotice:`_engineNotice_uqigv_735`,engineNoticeWord:`_engineNoticeWord_uqigv_749`,paneToggle:`_paneToggle_uqigv_762`};Math.round(p*100),Math.round(c*100);var Xn={standard:`Standard`,expansive:`Expansive`},Zn={claude:`Claude Code`,local:`Claude Code (driving the local model)`,codex:`Codex`,grok:`Grok`};function Qn(e){return Math.round(e).toLocaleString(`en-US`)}function $n(e){let t=v({contextTokens:typeof e.contextTokens==`number`&&Number.isFinite(e.contextTokens)?e.contextTokens:0,contextWindow:e.contextWindow??null,autoCompactAt:e.autoCompactAt??null,contextTokensExact:e.exact}),n=t.exact?``:`≤`,r=!t.exact&&t.untilCompaction===0,i=`${n}${B(t.tokens)} / ${t.window===null?`n/a`:B(t.window)}`,a=t.autoCompactAt===null?null:`compacts ≈${B(t.autoCompactAt)}`,o=t.ofWindow===null?null:Math.round(t.ofWindow*100),s=t.window!==null&&t.autoCompactAt!==null&&t.autoCompactAt<t.window?t.autoCompactAt/t.window*100:null,c=t.ofWindow===null?0:Math.min(100,Math.max(0,t.ofWindow*100)),l=[];l.push(t.window===null?`Context: ${n}${Qn(t.tokens)} tokens — the window is unknown, so no percentage is shown.`:`Context: ${n}${Qn(t.tokens)} of ${Qn(t.window)} tokens (${o}%).`),t.exact||l.push(`Upper bound: this CLI reported only the turn total so far; the exact last-call size replaces it once its session log is read.`),t.tone===`over`&&l.push(`Past the window: the next turn will fail or force the CLI to compact first. Continue in a fresh chat.`);let u=e.mode?` (${Xn[e.mode]} mode)`:``;if(t.autoCompactAt!==null){let n=r?`the upper bound is past that point, which does not mean the real prompt is`:t.untilCompaction===0?`at or past that point now`:`${t.exact?``:`at least `}≈${Qn(t.untilCompaction??0)} left`;l.push(`Auto-compacts at ≈${Qn(t.autoCompactAt)} tokens${u} — ${n}.`);let i=e.engine?Zn[e.engine]:`The CLI`;l.push(`When it compacts, ${i} replaces the earlier conversation with a summary and carries on; early detail then survives only as that summary.`)}else t.window!==null&&l.push(`The compaction point is unknown${u}; the colour is measured against the whole window.`);if((e.compactionCount??0)>0){let t=e.compactionCount??0;l.push(`Compacted ${t} time${t===1?``:`s`} so far.`)}return t.window!==null&&l.push(`Window: ${e.source?je(e.source,e.engine):`source not recorded (an older session)`}.`),{tone:t.tone,label:i,compactLabel:a,percent:o,percentLabel:o===null?`n/a`:`${n}${o}%`,tickPercent:s,fillPercent:c,title:l.join(`
3
- `)}}var er=6,tr=2*Math.PI*er;function nr({variant:e=`header`,...t}){let n=$n(t),r=n.percent===null?void 0:Math.min(100,n.percent),i=`${n.label} (${n.percentLabel})${n.compactLabel?`, ${n.compactLabel.replace(`≈`,`at about `)}`:``}${n.tone===`over`?`, past the window`:``}`;if(e===`ring`){let e=n.tickPercent===null?null:n.tickPercent/100*360-90;return(0,J.jsxs)(`div`,{className:`${Z.ring} ${Z[`meter-${n.tone}`]??``}`,role:`meter`,"aria-label":`Context window`,"aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":r,"aria-valuetext":i,title:n.title,"data-tone":n.tone,"data-exact":t.exact===!1?`false`:void 0,children:[(0,J.jsxs)(`svg`,{className:Z.ringSvg,width:`16`,height:`16`,viewBox:`0 0 16 16`,"aria-hidden":`true`,focusable:`false`,children:[(0,J.jsx)(`circle`,{className:Z.ringTrack,cx:`8`,cy:`8`,r:er}),(0,J.jsx)(`circle`,{className:Z.ringFill,cx:`8`,cy:`8`,r:er,strokeDasharray:`${n.fillPercent/100*tr} ${tr}`,transform:`rotate(-90 8 8)`}),e===null?null:(0,J.jsx)(`line`,{className:Z.ringTick,"data-testid":`compaction-tick`,x1:8+Math.cos(e*Math.PI/180)*3.5,y1:8+Math.sin(e*Math.PI/180)*3.5,x2:8+Math.cos(e*Math.PI/180)*7.5,y2:8+Math.sin(e*Math.PI/180)*7.5})]}),(0,J.jsx)(`span`,{className:Z.ringText,children:n.percentLabel})]})}return(0,J.jsxs)(`div`,{className:`${Z.meter} ${Z[`meter-${n.tone}`]??``} ${e===`inline`?Z.meterInline:``}`,role:`meter`,"aria-label":`Context window`,"aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":r,"aria-valuetext":i,title:n.title,"data-tone":n.tone,"data-exact":t.exact===!1?`false`:void 0,children:[(0,J.jsxs)(`div`,{className:Z.meterTrack,"aria-hidden":`true`,children:[(0,J.jsx)(`div`,{className:Z.meterFill,style:{width:`${n.fillPercent}%`}}),n.tickPercent===null?null:(0,J.jsx)(`div`,{className:Z.meterTick,"data-testid":`compaction-tick`,style:{left:`${n.tickPercent}%`}})]}),(0,J.jsxs)(`span`,{className:Z.meterText,children:[(0,J.jsx)(`span`,{className:Z.meterTokens,children:n.label}),n.compactLabel?(0,J.jsxs)(`span`,{className:Z.meterCompact,children:[`· `,n.compactLabel]}):null,(0,J.jsx)(`span`,{className:Z.meterPercent,children:n.percentLabel})]})]})}function rr(e){let t=h(e,`standard`),n=h(e,`expansive`);if(!t||!n)return null;let r=t.autoCompactAt??t.contextWindow,i=n.autoCompactAt??n.contextWindow;return r<=0||i<=r?null:Math.round(i/r*10)/10}function ir(e,t){let n=rr(e),r=h(e,`standard`),i=r?B(r.autoCompactAt??r.contextWindow):null,a=t===`codex`,o=n!==null&&i!==null?`Every turn re-sends the whole context, so once it grows past ≈${i} each turn costs more usage — up to ≈${n}×${a?` by size alone`:``} near the expansive limit — and recall of early detail weakens with length.`:`Every turn re-sends the whole context, so a larger budget means more usage per turn as it grows.`;return a?`${o} ${Ve}`:o}function ar(e,t,n){if(t!==`expansive`||!n)return null;let r=h(e,`standard`);if(!r)return null;let i=r.autoCompactAt??r.contextWindow;return n.contextTokens<i?null:{point:i,tokens:n.contextTokens,definite:n.exact}}var or=6e4;function sr(e,t){let[n,r]=(0,q.useState)(()=>t??Date.now());return(0,q.useEffect)(()=>{if(t!==void 0){r(t);return}let n=setInterval(()=>r(Date.now()),e);return()=>clearInterval(n)},[e,t]),n}function cr(e,t,n,r=null){return d({usage:{...e.usage,contextTokens:t.contextTokens,contextWindow:t.contextWindow,autoCompactAt:t.autoCompactAt,contextTokensExact:t.exact},compactionCount:e.compactionCount??0,lastActivityAt:e.status===`running`?null:r,now:n})}function lr(e,t,n,r,i=null){let a=cr(e,t,r,i),o=e.compactionCount??0;return a.level!==`none`&&!F(e.id,`handoff:${a.level}:${o}`)?!0:n?g({session:e,option:t.option}).suggest&&!F(e.id,`expansive:${o}`):!1}function ur({session:e,budget:t,modesAvailable:n,dispatchEnabled:r,modeBusy:i=!1,onHandoff:a,onSwitchExpansive:o,onCompact:s,lastTurnAt:c=null,now:l,embedded:u=!1,onDismiss:d}){let f=sr(or,l),[,p]=(0,q.useState)(0),h=cr(e,t,f,c),_=n?g({session:e,option:t.option}):{suggest:!1,reason:null},v=e.compactionCount??0,y=`handoff:${h.level}:${v}`,b=`expansive:${v}`,x=h.level!==`none`&&!F(e.id,y),S=_.suggest&&!F(e.id,b);if(!x&&!S)return null;let C=e.status===`running`,w=t=>{I(e.id,t),p(e=>e+1),d?.()},T=c&&!C?f-Date.parse(c)>=m:!1;return(0,J.jsxs)(`div`,{className:u?Z.adviceStack:Z.advice,children:[x?(0,J.jsxs)(`section`,{className:Z.adviceNote,"data-level":h.level,"aria-label":`Context advice`,children:[(0,J.jsxs)(`div`,{className:Z.adviceBody,children:[(0,J.jsx)(`p`,{className:Z.adviceTitle,children:h.level===`urge`?`Time to continue in a fresh chat`:`Consider continuing in a fresh chat`}),(0,J.jsx)(`ul`,{className:Z.adviceReasons,children:h.reasons.map(e=>(0,J.jsx)(`li`,{children:e},e))}),(0,J.jsxs)(`p`,{className:Z.adviceFine,children:[`Verse drafts a handoff note from this chat's log — free. Nothing is sent until you press Send in the new chat.`,T?` Continuing here instead re-reads the whole context at full cost.`:``]})]}),(0,J.jsxs)(`div`,{className:Z.adviceActions,children:[(0,J.jsx)(`button`,{type:`button`,className:Z.adviceAction,onClick:a,disabled:!r||C,title:C?`Available when the current turn finishes`:r?void 0:`Sending is disabled on this server`,children:`Continue in a fresh chat…`}),s?(0,J.jsx)(`button`,{type:`button`,className:Z.ghost,onClick:s,disabled:!r||C||e.turnCount===0,title:C?`Available when the current turn finishes`:r?`Summarize this chat in place instead`:`Sending is disabled on this server`,children:`Compact now…`}):null,(0,J.jsx)(`button`,{type:`button`,className:Z.ghost,onClick:()=>w(y),children:`Not now`})]})]}):null,S?(0,J.jsxs)(`section`,{className:Z.adviceNote,"data-level":`suggest`,"data-kind":`expansive`,"aria-label":`Expansive mode suggestion`,children:[(0,J.jsxs)(`div`,{className:Z.adviceBody,children:[(0,J.jsx)(`p`,{className:Z.adviceTitle,children:`Expansive mode could help`}),(0,J.jsxs)(`p`,{className:Z.adviceFine,children:[_.reason,` `,ir(t.option,e.engine)]})]}),(0,J.jsxs)(`div`,{className:Z.adviceActions,children:[(0,J.jsx)(`button`,{type:`button`,className:Z.adviceAction,onClick:o,disabled:!r||i||C,title:C?`Available when the current turn finishes`:void 0,children:i?`Switching…`:`Switch to expansive`}),(0,J.jsx)(`button`,{type:`button`,className:Z.ghost,onClick:()=>w(b),children:`Not now`})]})]}):null]})}function dr(e){return e===`claude`||e===`local`}function fr(e){let t=e.replace(/\s+/g,` `).trim().slice(0,500).trim();return t?`/compact ${t}`:`/compact`}function pr(e,t){return e===`local`?`Free — it runs on the local model — but summarizing ${t} tokens runs at that model's speed and can take minutes; the chat is busy until it finishes.`:`Spends usage on this seat: one summarization call that reads the whole current context (${t} tokens) and writes the summary.`}function mr({engine:e,budget:t,running:n,dispatchEnabled:r,empty:i,onSend:a,onClose:o,autoFocus:s=!0}){let[c,l]=(0,q.useState)(``),[u,d]=(0,q.useState)(!1),f=(0,q.useId)(),p=(0,q.useRef)(null);(0,q.useEffect)(()=>{if(!s)return;let e=document.activeElement instanceof HTMLElement&&document.activeElement!==document.body?document.activeElement:null;return p.current?.focus(),()=>{let t=document.activeElement;(t===null||t===document.body||!t.isConnected)&&e?.isConnected&&e.focus()}},[s]);let m=Zn[e],h=`${t.exact?`≈`:`≤`}${B(t.contextTokens)}`,g=n?`Available when the current turn finishes.`:r?i?`Nothing to compact yet — this chat has no turns.`:null:`Sending is disabled: this server was started without dispatch.`;async function _(e){if(e.preventDefault(),!(g||u)){d(!0);try{await a(fr(c))&&o()}finally{d(!1)}}}return(0,J.jsx)(`section`,{className:Z.adviceNote,"data-level":`suggest`,"data-kind":`compact`,"aria-label":`Compact this chat`,children:(0,J.jsxs)(`form`,{className:Z.compactForm,onSubmit:e=>{_(e)},children:[(0,J.jsxs)(`div`,{className:Z.adviceBody,children:[(0,J.jsx)(`p`,{className:Z.adviceTitle,children:`Compact this chat now`}),(0,J.jsxs)(`p`,{className:Z.adviceFine,children:[m,` replaces the conversation so far with a summary it writes, then carries on from it — what it does on its own`,t.autoCompactAt===null?` at its compaction point`:` at ≈${B(t.autoCompactAt)}`,`, done now instead. Early detail then survives only as that summary.`]}),(0,J.jsx)(`p`,{className:Z.adviceFine,children:pr(e,h)}),(0,J.jsx)(`label`,{className:Z.compactLabel,htmlFor:f,children:`Keep in focus (optional)`}),(0,J.jsx)(`input`,{ref:p,id:f,className:Z.compactInput,value:c,maxLength:500,placeholder:`e.g. the login fix and its open TODOs`,onChange:e=>l(e.target.value)}),(0,J.jsxs)(`p`,{className:Z.adviceFine,children:[`Sent as the message `,(0,J.jsx)(`code`,{children:fr(c)}),`, so it shows in the transcript like any turn.`]}),g?(0,J.jsx)(`p`,{className:Z.adviceFine,role:`status`,children:g}):null]}),(0,J.jsxs)(`div`,{className:Z.adviceActions,children:[(0,J.jsx)(`button`,{type:`submit`,className:Z.adviceAction,disabled:g!==null||u,children:u?`Sending…`:`Compact now`}),(0,J.jsx)(`button`,{type:`button`,className:Z.ghost,onClick:o,children:`Cancel`})]})]})})}var hr=[{action:`command`,verb:`ran`,noun:`command`,plural:`commands`},{action:`read`,verb:`read`,noun:`file`,plural:`files`},{action:`edit`,verb:`edited`,noun:`file`,plural:`files`},{action:`create`,verb:`created`,noun:`file`,plural:`files`},{action:`delete`,verb:`deleted`,noun:`file`,plural:`files`},{action:`search`,verb:`searched`,noun:`time`,plural:`times`},{action:`web`,verb:`fetched`,noun:`page`,plural:`pages`,alwaysNoun:!0},{action:`task`,verb:`ran`,noun:`subagent`,plural:`subagents`,alwaysNoun:!0},{action:`other`,verb:`used`,noun:`other tool`,plural:`other tools`,alwaysNoun:!0}];function gr(){return{read:0,edit:0,create:0,delete:0,command:0,search:0,task:0,web:0,other:0}}function _r(e){return e.length===0?e:`${e[0].toUpperCase()}${e.slice(1)}`}function vr(e,t){return t?.get(e.toolUseId)?.action??lt(e.name)}function yr(e,t=null){return e.kind!==`tool`||e.result===null?!1:e.result.isError||t?.get(e.toolUseId)?.failed===!0}function br(e){return e.kind===`tool`&&e.result===null}function xr(e){let t=[];for(let n of hr){let r=e[n.action];if(r<=0)continue;let i=r===1?n.noun:n.plural,a=t.length===0||n.alwaysNoun===!0;t.push(a?`${n.verb} ${r} ${i}`:`${n.verb} ${r}`)}return _r(t.join(`, `))}function Sr(e,t=null){let n=gr(),r=0,i=0,a=0;for(let o of e.items)o.kind===`tool`&&(a+=1,n[vr(o,t)]+=1,br(o)?i+=1:yr(o,t)&&(r+=1));let o=xr(n),s=[];r>0&&s.push(`${r} failed`),i>0&&s.push(`${i} running`);let c=s.join(`, `),l=e.spanMs!==null&&e.spanMs>0?e.spanMs:null,u=[o,c,l!==null&&i===0?U(l):``].filter(e=>e.length>0).join(`; `);return{counts:n,toolCount:a,failed:r,running:i,spanMs:l,work:o,state:c,sentence:u}}function Cr(e){return e.failed>0||e.running>0?`focus`:`collapsed`}function wr(e,t=null){let n=e.items.filter(e=>br(e)||yr(e,t));return{shown:n,hidden:e.items.length-n.length}}var Q={group:`_group_12xsh_9`,line:`_line_12xsh_13`,chevron:`_chevron_12xsh_37`,work:`_work_12xsh_50`,state:`_state_12xsh_58`,failed:`_failed_12xsh_70`,sep:`_sep_12xsh_71`,running:`_running_12xsh_72`,pulse:`_pulse_12xsh_78`,"activity-pulse":`_activity-pulse_12xsh_1`,time:`_time_12xsh_86`,body:`_body_12xsh_98`,list:`_list_12xsh_106`,more:`_more_12xsh_116`},Tr=new Set;function Er(e){let t=!1;for(let n of[...Tr])n(e)&&(t=!0);return t}function Dr({item:e,facts:t,renderMember:n}){let r=(0,q.useMemo)(()=>Sr(e,t),[e,t]),[i,a]=(0,q.useState)(null),o=i??Cr(r),s=(0,q.useId)(),c=(0,q.useMemo)(()=>wr(e,t),[e,t]),l=o===`focus`&&c.shown.length===0?`collapsed`:o,u=l===`all`?e.items:l===`focus`?c.shown:[];function d(){a(l===`collapsed`?c.shown.length>0?`focus`:`all`:`collapsed`)}(0,q.useEffect)(()=>{let t=t=>{let n=e.items.some(e=>e.kind===`tool`&&ut(e.toolUseId)===t);return n&&a(`all`),n};return Tr.add(t),()=>{Tr.delete(t)}},[e]);let f=r.running>0,p=e.items[0]?.at??null,m=r.sentence||`${r.toolCount} tool calls`;return(0,J.jsxs)(`div`,{className:Q.group,"data-view":l,"data-failed":r.failed>0||void 0,"data-running":f||void 0,"data-state-key":`activity:${e.key}`,children:[(0,J.jsxs)(`button`,{type:`button`,className:Q.line,"aria-expanded":l!==`collapsed`,"aria-controls":s,"aria-label":m,onClick:d,children:[(0,J.jsx)(`span`,{className:Q.chevron,"aria-hidden":`true`}),(0,J.jsx)(`span`,{className:Q.work,"aria-hidden":`true`,children:r.work||`${r.toolCount} tool calls`}),r.state?(0,J.jsxs)(`span`,{className:Q.state,"aria-hidden":`true`,children:[r.failed>0?(0,J.jsxs)(`span`,{className:Q.failed,children:[r.failed,` failed`]}):null,r.failed>0&&f?(0,J.jsx)(`span`,{className:Q.sep,children:`, `}):null,f?(0,J.jsxs)(`span`,{className:Q.running,children:[(0,J.jsx)(`span`,{className:Q.pulse}),r.running,` running`]}):null]}):null,(0,J.jsx)(`span`,{className:Q.time,"aria-hidden":`true`,children:f?(0,J.jsx)(tt,{since:p}):r.spanMs===null?null:U(r.spanMs)})]}),(0,J.jsx)(`div`,{id:s,className:Q.body,hidden:l===`collapsed`,children:l===`collapsed`?null:(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`ol`,{className:Q.list,children:u.map(e=>(0,J.jsx)(`li`,{"data-member":e.kind,children:n(e)},e.key))}),l===`focus`&&c.hidden>0?(0,J.jsxs)(`button`,{type:`button`,className:Q.more,onClick:()=>a(`all`),children:[`Show `,c.hidden,` more`]}):null,l===`all`&&c.shown.length>0&&c.hidden>0?(0,J.jsxs)(`button`,{type:`button`,className:Q.more,onClick:()=>a(`focus`),children:[`Show only `,r.failed>0?`failures`:`running`]}):null]})})]})}(0,q.memo)(Dr);function Or(){return{facts:new Map,counts:new Map,toolText:new Map}}function kr(e,t){let n=t?.facts.get(e.toolUseId);if(n&&!(n.pending&&e.result!==null))return n;let r=st({name:e.name,input:e.input,result:e.result});return t&&(t.facts.set(e.toolUseId,r),t.counts.delete(e.toolUseId),t.toolText.delete(e.toolUseId)),r}function Ar(e){return`verse-note-${e.replace(/[^A-Za-z0-9_-]/g,``)}`}function jr(e){return`verse-turn-${e.replace(/[^A-Za-z0-9_-]/g,``)}`}var Mr={read:0,edit:1,create:2,delete:3};function Nr(e){let t=0,n=0;for(let r of T(e).files)t+=r.additions,n+=r.deletions;return{additions:t,deletions:n}}function Pr(e,t,n){let r=n?.counts.get(e);if(r)return r;let i=Nr(t);return n?.counts.set(e,i),i}function Fr(e){return e.kind===`tool`?[e]:e.kind===`toolGroup`?e.items.filter(e=>e.kind===`tool`):[]}function Ir(e,t=null){let n=new Map,r=[],i=[],a=[],o=()=>{a.length!==0&&(i.push(Lr(a,n,r,t)),a=[])},s;for(let t of e){let e=`turnId`in t?t.turnId:null;(t.kind===`user`||s!==void 0&&e!==null&&e!==s)&&o(),(t.kind===`user`||s===void 0||e!==null)&&(s=e),a.push(t)}return o(),{turns:i,facts:n,errorAnchors:r}}function Lr(e,t,n,r){let i=e[0],a=new Map,o=0,s=0,c=0,l=null,u=`running`,d=null,f=null,p=e=>{c++,l||=e,n.push(e)};for(let n of e){n.kind===`user`&&f===null&&(f=n.text);for(let e of Fr(n)){o++;let n=kr(e,r);t.set(e.toolUseId,n),n.action===`command`&&s++,n.failed&&p(`verse-tool-${e.toolUseId.replace(/[^A-Za-z0-9_-]/g,``)}`);let i=n.action;if(i!==`read`&&i!==`edit`&&i!==`create`&&i!==`delete`)continue;let c=n.diff?Pr(e.toolUseId,n.diff.text,r):{additions:0,deletions:0};for(let t of n.paths){let r=a.get(t)??{path:t,reads:0,edits:0,creates:0,deletes:0,action:i,anchorToolUseId:e.toolUseId,additions:0,deletions:0,failed:!1};i===`read`?r.reads++:i===`edit`?r.edits++:i===`create`?r.creates++:r.deletes++,Mr[i]>Mr[r.action]&&(r.action=i,r.anchorToolUseId=e.toolUseId),i!==`read`&&(r.additions+=c.additions,r.deletions+=c.deletions),n.failed&&(r.failed=!0),a.set(t,r)}}switch(n.kind){case`error`:p(Ar(n.key)),u=`error`;break;case`cancelled`:u=`stopped`;break;case`turn-done`:d=n.durationMs>0?n.durationMs:d,n.ok?u=u===`running`?`ok`:u:u===`running`&&(u=`error`,p(Ar(n.key)))}}return{key:i.key,turnId:`turnId`in i?i.turnId:null,items:e,prompt:f,at:i.at,files:[...a.values()].sort((e,t)=>Mr[t.action]-Mr[e.action]||t.additions+t.deletions-(e.additions+e.deletions)||e.path.localeCompare(t.path)),toolCount:o,commandCount:s,errorCount:c,firstErrorAnchor:l,status:u,durationMs:d}}function Rr(e){if(e.length===0)return``;let t={edited:0,created:0,deleted:0,read:0};for(let n of e)n.action===`edit`?t.edited++:n.action===`create`?t.created++:n.action===`delete`?t.deleted++:t.read++;let n=[];return t.created&&n.push(`${t.created} created`),t.edited&&n.push(`${t.edited} edited`),t.deleted&&n.push(`${t.deleted} deleted`),t.read&&n.push(`${t.read} read`),n.join(`, `)}var zr=new WeakMap,Br=4e3;function Vr(e,t){let n=t?.toolText.get(e.toolUseId);if(n!==void 0)return n;let r=[e.name];if(typeof e.input==`string`)r.push(e.input.slice(0,Br));else if(e.input)try{r.push(JSON.stringify(e.input).slice(0,Br))}catch{}e.result&&r.push(e.result.output.slice(0,Br));let i=r.join(`
4
- `);return t&&e.result&&t.toolText.set(e.toolUseId,i),i}function Hr(e,t=null){let n=zr.get(e);if(n!==void 0)return n;let r=[],i=e=>{switch(e.kind){case`user`:case`assistant`:case`thinking`:r.push(e.text);break;case`error`:r.push(e.message);break;case`tool`:r.push(Vr(e,t));break;case`toolGroup`:for(let t of e.items)i(t)}};for(let t of e.items)i(t);let a=r.join(`
5
- `);return zr.set(e,a),a}var Ur=48;function Wr(e,t,n=null){let r=t.trim().toLowerCase();if(r.length===0)return[];let i=[];for(let t of e){let e=Hr(t,n),a=e.toLowerCase().indexOf(r);if(a===-1)continue;let o=Math.max(0,a-Ur),s=Math.min(e.length,a+r.length+Ur),c=`${o>0?`…`:``}${e.slice(o,s).replace(/\s+/g,` `).trim()}${s<e.length?`…`:``}`;i.push({turnKey:t.key,snippet:c})}return i}function Gr(e,t=72){let n=e.prompt?.replace(/\s+/g,` `).trim();return n?n.length>t?`${n.slice(0,t-1)}…`:n:e.toolCount>0?`${e.toolCount} tool call${e.toolCount===1?``:`s`}`:`Session note`}function Kr(e){let t=[];for(let n of e.items)n.kind===`compaction`?t.push(`compaction`):n.kind===`recovered`&&t.push(`recovered`);return t}function qr(e,t={}){let n=[],r=[],i={failed:0,running:0,compactions:0,recoveries:0};for(let t of e){let e=[...r,...Kr(t)];for(let e of Kr(t))e===`compaction`?i.compactions+=1:e===`recovered`&&(i.recoveries+=1);if(t.prompt===null){r=e;continue}r=[],t.status===`error`&&(i.failed+=1),t.status===`running`&&(i.running+=1),n.push({turnKey:t.key,index:n.length,status:t.status,title:Gr(t,120),position:0,markers:e})}r.length>0&&n.length>0&&n[n.length-1].markers.push(...r);let a=n.length;for(let e of n)e.position=a<=1?0:e.index/(a-1);return{ticks:n,handoff:t.handoff===!0,counts:i}}var Jr={running:`running`,ok:`done`,error:`failed`,stopped:`stopped`},Yr={compaction:`context compacted`,recovered:`recovered`,handoff:`continued from another chat`};function Xr(e,t){let n=e.markers.length>0?` (${[...new Set(e.markers)].map(e=>Yr[e]).join(`, `)})`:``;return`Turn ${e.index+1} of ${t}, ${Jr[e.status]}: ${e.title}${n}`}var Zr=new WeakMap;function Qr(e){let t=Zr.get(e);if(t!==void 0)return t;let n=0;for(let t of e.items)(t.kind===`compaction`||t.kind===`recovered`)&&(n+=1);let r=`${e.key}:${e.status}:${n}:${e.prompt===null?0:e.prompt.length}`;return e.status!==`running`&&Zr.set(e,r),r}function $r(e,t){let n=t?`h`:`-`;for(let t of e)n+=`|${Qr(t)}`;return n}var ei={rail:`_rail_99z8l_7`,handoff:`_handoff_99z8l_20`,track:`_track_99z8l_28`,tick:`_tick_99z8l_36`,bar:`_bar_99z8l_55`,"rail-pulse":`_rail-pulse_99z8l_1`,markers:`_markers_99z8l_72`,marker:`_marker_99z8l_72`,card:`_card_99z8l_88`,cardMeta:`_cardMeta_99z8l_103`,cardTitle:`_cardTitle_99z8l_110`,markerIcon:`_markerIcon_99z8l_133`},ti={compaction:(0,J.jsx)(`path`,{d:`M8 2.5 13.5 8 8 13.5 2.5 8Z`,fill:`currentColor`}),recovered:(0,J.jsx)(`path`,{d:`M4.2 5.2A5 5 0 1 1 3 8.5M4.2 1.8v3.4h3.4`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.8`,strokeLinecap:`round`,strokeLinejoin:`round`}),handoff:(0,J.jsx)(`path`,{d:`M4 2.5V9a2 2 0 0 0 2 2h7M10.5 8.5 13 11l-2.5 2.5`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.8`,strokeLinecap:`round`,strokeLinejoin:`round`})};function ni({kind:e}){return(0,J.jsx)(`svg`,{className:ei.markerIcon,viewBox:`0 0 16 16`,width:`1em`,height:`1em`,"aria-hidden":`true`,focusable:`false`,children:ti[e]})}var ri=(0,q.memo)(function({model:e,onJumpTurn:t}){let[n,r]=(0,q.useState)(-1),[i,a]=(0,q.useState)(null),o=(0,q.useRef)(new Map),s=(0,q.useId)(),c=e.ticks.length,l=n>=0&&n<c?n:c-1,u=(0,q.useCallback)(e=>{let t=Math.max(0,Math.min(c-1,e));r(t),a(t),o.current.get(t)?.focus()},[c]);function d(e){let t=l,n=null;e.key===`ArrowDown`||e.key===`ArrowRight`?n=t+1:e.key===`ArrowUp`||e.key===`ArrowLeft`?n=t-1:e.key===`Home`?n=0:e.key===`End`&&(n=c-1),n!==null&&(e.preventDefault(),u(n))}if(c===0)return null;let f=i===null?null:e.ticks[i]??null;return(0,J.jsxs)(`div`,{className:ei.rail,role:`toolbar`,"aria-orientation":`vertical`,"aria-label":`Chapters`,onKeyDown:d,onMouseLeave:()=>a(null),children:[e.handoff?(0,J.jsx)(`span`,{className:ei.handoff,role:`img`,"aria-label":`Continued from another chat`,title:`Continued from another chat`,children:(0,J.jsx)(ni,{kind:`handoff`})}):null,(0,J.jsx)(`div`,{className:ei.track,children:e.ticks.map(e=>{let n=Xr(e,c),u=[...new Set(e.markers)];return(0,J.jsxs)(`button`,{ref:t=>{t?o.current.set(e.index,t):o.current.delete(e.index)},type:`button`,className:ei.tick,"data-status":e.status,style:{top:`${e.position*100}%`},tabIndex:e.index===l?0:-1,"aria-label":n,"aria-describedby":i===e.index?s:void 0,onMouseEnter:()=>a(e.index),onFocus:()=>{r(e.index),a(e.index)},onBlur:()=>a(t=>t===e.index?null:t),onClick:()=>{r(e.index),t(e.turnKey)},children:[(0,J.jsx)(`span`,{className:ei.bar,"aria-hidden":`true`}),u.length>0?(0,J.jsx)(`span`,{className:ei.markers,"aria-hidden":`true`,children:u.map(e=>(0,J.jsx)(`span`,{className:ei.marker,"data-marker":e,children:(0,J.jsx)(ni,{kind:e})},e))}):null]},e.turnKey)})}),f?(0,J.jsxs)(`div`,{id:s,className:ei.card,role:`tooltip`,style:{top:`${f.position*100}%`},children:[(0,J.jsxs)(`span`,{className:ei.cardMeta,children:[`Turn `,f.index+1,` of `,c,f.status===`error`?` · failed`:f.status===`running`?` · running`:``]}),(0,J.jsx)(`span`,{className:ei.cardTitle,children:f.title})]}):null]})}),$={diff:`_diff_14s94_30`,visuallyHidden:`_visuallyHidden_14s94_46`,diffMulti:`_diffMulti_14s94_58`,diffHead:`_diffHead_14s94_60`,diffPath:`_diffPath_14s94_68`,diffOldPath:`_diffOldPath_14s94_83`,diffStatus:`_diffStatus_14s94_101`,diffStats:`_diffStats_14s94_110`,diffAdd:`_diffAdd_14s94_118`,diffDel:`_diffDel_14s94_119`,diffNotice:`_diffNotice_14s94_121`,diffEmpty:`_diffEmpty_14s94_130`,diffTable:`_diffTable_14s94_136`,diffNo:`_diffNo_14s94_121`,diffMarker:`_diffMarker_14s94_30`,diffText:`_diffText_14s94_159`,diffCode:`_diffCode_14s94_179`,diffRow_add:`_diffRow_add_14s94_181`,diffRow_del:`_diffRow_del_14s94_182`,diffRow_context:`_diffRow_context_14s94_183`,diffHunkRow:`_diffHunkRow_14s94_185`,diffHunkHead:`_diffHunkHead_14s94_192`,diffMore:`_diffMore_14s94_200`,commandMore:`_commandMore_14s94_201`,activityMore:`_activityMore_14s94_202`,diffUnanchored:`_diffUnanchored_14s94_221`,tok_plain:`_tok_plain_14s94_232`,tok_comment:`_tok_comment_14s94_233`,tok_string:`_tok_string_14s94_234`,tok_number:`_tok_number_14s94_235`,tok_keyword:`_tok_keyword_14s94_236`,command:`_command_14s94_201`,commandLine:`_commandLine_14s94_250`,commandPrompt:`_commandPrompt_14s94_257`,commandText:`_commandText_14s94_264`,commandStatus:`_commandStatus_14s94_275`,commandStatusText:`_commandStatusText_14s94_283`,commandMeta:`_commandMeta_14s94_293`,commandPre:`_commandPre_14s94_298`,commandPending:`_commandPending_14s94_310`,activity:`_activity_14s94_202`,activityHead:`_activityHead_14s94_328`,activityCount:`_activityCount_14s94_337`,activityLabel:`_activityLabel_14s94_344`,activityBreakdown:`_activityBreakdown_14s94_351`,activityList:`_activityList_14s94_357`,activityRow:`_activityRow_14s94_370`,activityRule:`_activityRule_14s94_392`,activityVerb:`_activityVerb_14s94_387`,activityFailed:`_activityFailed_14s94_391`,activityPath:`_activityPath_14s94_423`,activityName:`_activityName_14s94_431`,activityDir:`_activityDir_14s94_432`,activityTimes:`_activityTimes_14s94_442`,activityDelta:`_activityDelta_14s94_443`,activityAdd:`_activityAdd_14s94_451`,activityDel:`_activityDel_14s94_443`,nav:`_nav_14s94_458`,navSpacer:`_navSpacer_14s94_469`,navOutlineButton:`_navOutlineButton_14s94_471`,navChevron:`_navChevron_14s94_485`,navCount:`_navCount_14s94_487`,navWord:`_navWord_14s94_493`,navSearch:`_navSearch_14s94_500`,navSearchIcon:`_navSearchIcon_14s94_524`,navMatches:`_navMatches_14s94_537`,navStep:`_navStep_14s94_544`,navError:`_navError_14s94_557`,navErrorGlyph:`_navErrorGlyph_14s94_575`,outline:`_outline_14s94_580`,outlineEmpty:`_outlineEmpty_14s94_594`,outlineList:`_outlineList_14s94_599`,outlineRow:`_outlineRow_14s94_600`,outlineIndex:`_outlineIndex_14s94_614`,outlineBody:`_outlineBody_14s94_621`,outlineTitle:`_outlineTitle_14s94_622`,outlineSnippet:`_outlineSnippet_14s94_629`,outlineMeta:`_outlineMeta_14s94_639`,outlineStatus:`_outlineStatus_14s94_643`,commandRun:`_commandRun_14s94_659`},ii=8,ai={read:`read`,edit:`edited`,create:`created`,delete:`deleted`};function oi({files:e,onJump:t}){let[n,r]=(0,q.useState)(!1);if(e.length===0)return null;let i=n||e.length<=ii?e:e.slice(0,ii),a=e.length-i.length;return(0,J.jsxs)(`section`,{className:$.activity,"aria-label":`Files this turn touched`,children:[(0,J.jsxs)(`h3`,{className:$.activityHead,children:[(0,J.jsx)(`span`,{className:$.activityCount,children:e.length}),(0,J.jsxs)(`span`,{className:$.activityLabel,children:[`file`,e.length===1?``:`s`]}),(0,J.jsx)(`span`,{className:$.activityBreakdown,children:Rr(e)})]}),(0,J.jsx)(`ul`,{className:$.activityList,children:i.map(e=>{let n=e.reads+e.edits+e.creates+e.deletes,r=`${ai[e.action]} ${e.path}${n>1?`, ${n} calls`:``}${e.additions||e.deletions?`, +${e.additions} −${e.deletions}`:``}${e.failed?`, a call on this file failed`:``}`;return(0,J.jsx)(`li`,{children:(0,J.jsx)(be,{label:e.path,placement:`right`,children:(0,J.jsxs)(`button`,{type:`button`,className:$.activityRow,"data-action":e.action,"data-failed":e.failed?`true`:void 0,onClick:()=>t(e.anchorToolUseId),"aria-label":r,children:[(0,J.jsx)(`span`,{className:$.activityRule,"aria-hidden":`true`}),(0,J.jsx)(`span`,{className:$.activityVerb,children:ai[e.action]}),(0,J.jsxs)(`span`,{className:$.activityPath,children:[(0,J.jsx)(`span`,{className:$.activityName,children:dt(e.path)}),(0,J.jsx)(`span`,{className:$.activityDir,children:ct(e.path)})]}),e.failed?(0,J.jsx)(`span`,{className:$.activityFailed,"aria-hidden":`true`,children:`! failed`}):null,n>1?(0,J.jsxs)(`span`,{className:$.activityTimes,children:[`×`,n]}):null,(0,J.jsxs)(`span`,{className:$.activityDelta,children:[e.additions>0?(0,J.jsxs)(`span`,{className:$.activityAdd,children:[`+`,e.additions]}):null,e.deletions>0?(0,J.jsxs)(`span`,{className:$.activityDel,children:[`−`,e.deletions]}):null]})]})})},e.path)})}),a>0||n?(0,J.jsx)(`button`,{type:`button`,className:$.activityMore,"aria-expanded":n,onClick:()=>r(e=>!e),children:n?`Show fewer files`:`Show ${a} more file${a===1?``:`s`}`}):null]})}var si={thinking:`_thinking_107of_7`,summary:`_summary_107of_14`,line:`_line_107of_15`,chevron:`_chevron_107of_32`,glyph:`_glyph_107of_44`,"thinking-breathe":`_thinking-breathe_107of_1`,label:`_label_107of_56`,kind:`_kind_107of_66`,hidden:`_hidden_107of_67`,body:`_body_107of_78`};function ci(e){let t=Math.max(0,Math.round(e));return t<1e3?`~${t} tok`:t<1e4?`~${(t/1e3).toFixed(1).replace(/\.0$/,``)}k tok`:t<1e6?`~${Math.round(t/1e3)}k tok`:`~${(t/1e6).toFixed(1).replace(/\.0$/,``)}M tok`}function li(e){if(!Number.isFinite(e)||e<0)return``;if(e<1e3)return`<1s`;let t=Math.floor(e/1e3);if(t<60)return`${t}s`;let n=Math.floor(t/60);return n<60?`${n}m ${t%60}s`:`${Math.floor(n/60)}h ${n%60}m`}var ui=4;function di(e,t){if(typeof t==`number`&&Number.isFinite(t)&&t>0)return t;let n=e.trim().length;return n>0?Math.ceil(n/ui):null}function fi(e){let t=[e.streaming?`Thinking`:`Thought`],n=e.elapsedMs===null?``:li(e.elapsedMs);return e.streaming?n&&t.push(n):n&&(t[0]=`Thought ${n}`),e.tokens!==null&&t.push(ci(e.tokens)),t.join(` · `)}function pi(e){let[t,n]=(0,q.useState)(()=>Date.now());return(0,q.useEffect)(()=>{if(!e)return;n(Date.now());let t=setInterval(()=>n(Date.now()),1e3);return()=>clearInterval(t)},[e]),t}var mi=24,hi=(0,q.memo)(function({text:e,streaming:t=!1,startedAt:n=null,redacted:r=!1,durationMs:i=null,estimatedTokens:a=null,kind:o=null,defaultOpen:s=!1,stateKey:c}){let[l,u]=(0,q.useState)(s),d=(0,q.useRef)(!1),[f,p]=(0,q.useState)(!1),m=(0,q.useRef)(null),h=(0,q.useRef)(!0),g=pi(t&&n!==null),_=fi({streaming:t,elapsedMs:t?n===null?null:Math.max(0,g-n):i,tokens:di(e,a)}),v=e.trim().length>0,y=t&&l&&!f;(0,q.useLayoutEffect)(()=>{let e=m.current;e&&(y&&e.scrollHeight>e.clientHeight+1?e.setAttribute(`data-clipped`,``):e.removeAttribute(`data-clipped`),t&&(h.current||y)&&(e.scrollTop=e.scrollHeight))},[e,t,l,y]);function b(){let e=m.current;e&&(h.current=e.scrollHeight-e.scrollTop-e.clientHeight<=mi)}(0,q.useEffect)(()=>{d.current||u(s)},[s]);function x(e){y&&(e.preventDefault(),d.current=!0,p(!0))}function S(e){let t=e.currentTarget.open;t!==l&&(d.current=!0),u(t)}return v?(0,J.jsxs)(`details`,{className:si.thinking,open:l,onToggle:S,"data-state-key":c,"data-streaming":t||void 0,"data-thinking-kind":o??void 0,children:[(0,J.jsxs)(`summary`,{className:si.summary,onClick:x,"aria-label":y?`${_} — show all`:void 0,children:[(0,J.jsx)(`span`,{className:si.chevron,"aria-hidden":`true`}),(0,J.jsx)(`span`,{className:si.glyph,"aria-hidden":`true`,"data-live":t||void 0}),(0,J.jsx)(`span`,{className:si.label,children:_}),o===`summary`?(0,J.jsx)(`span`,{className:si.kind,title:`A summary the provider wrote of the model's reasoning, not its raw chain of thought.`,children:`summary`}):null]}),(0,J.jsx)(`div`,{ref:m,className:si.body,onScroll:b,"data-window":y||void 0,onClick:y?()=>{d.current=!0,p(!0)}:void 0,children:e})]}):(0,J.jsx)(`div`,{className:si.thinking,"data-streaming":t||void 0,"data-redacted":r||void 0,"data-thinking-kind":o??void 0,children:(0,J.jsxs)(`span`,{className:si.line,children:[(0,J.jsx)(`span`,{className:si.glyph,"aria-hidden":`true`,"data-live":t||void 0}),(0,J.jsx)(`span`,{className:si.label,children:_}),r?(0,J.jsx)(`span`,{className:si.hidden,title:`The provider returned this reasoning without its text; only how long it took is known.`,children:`reasoning hidden by the provider`}):null]})})}),gi={running:`•`,ok:``,error:`!`,stopped:`×`},_i={running:`running`,ok:`completed`,error:`failed`,stopped:`stopped`};function vi(e){let{turns:t,query:n,onQuery:r,matches:i,matchIndex:a,onStepMatch:o,errorCount:s,onJumpError:c,onJumpTurn:l,focusToken:u}=e,[d,f]=(0,q.useState)(!1),p=(0,q.useRef)(null),m=(0,q.useId)(),h=(0,q.useId)(),g=n.trim().length>0;(0,q.useEffect)(()=>{u>0&&(p.current?.focus(),p.current?.select())},[u]),(0,q.useEffect)(()=>{if(!d)return;let e=e=>{e.key===`Escape`&&f(!1)};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[d]);let _=g?t.filter(e=>i.some(t=>t.turnKey===e.key)):t,v=e=>i.find(t=>t.turnKey===e)?.snippet??null;return(0,J.jsxs)(`div`,{className:$.nav,children:[(0,J.jsxs)(`button`,{type:`button`,className:$.navOutlineButton,"aria-expanded":d,"aria-controls":d?m:void 0,onClick:()=>f(e=>!e),children:[(0,J.jsx)(`span`,{className:$.navChevron,"data-open":d?`true`:void 0,"aria-hidden":`true`,children:(0,J.jsx)(ve,{size:12})}),(0,J.jsx)(`span`,{className:$.navCount,children:t.length}),(0,J.jsxs)(`span`,{className:$.navWord,children:[`turn`,t.length===1?``:`s`]})]}),(0,J.jsxs)(`label`,{className:$.navSearch,htmlFor:h,children:[(0,J.jsx)(`span`,{className:$.navSearchIcon,"aria-hidden":`true`,children:(0,J.jsx)(me,{size:12})}),(0,J.jsx)(`span`,{className:`visually-hidden`,children:`Search this chat`}),(0,J.jsx)(`input`,{ref:p,id:h,type:`search`,value:n,placeholder:`Find in chat`,autoComplete:`off`,onChange:e=>r(e.target.value),onKeyDown:e=>{e.key===`Enter`?(e.preventDefault(),o(e.shiftKey?-1:1)):e.key===`Escape`&&(e.preventDefault(),r(``))}})]}),g?(0,J.jsx)(`span`,{className:$.navMatches,role:`status`,children:i.length===0?`no matches`:`${a<0?1:a+1} of ${i.length}`}):null,g&&i.length>0?(0,J.jsxs)(`span`,{className:$.navStep,children:[(0,J.jsx)(`button`,{type:`button`,onClick:()=>o(-1),"aria-label":`Previous match`,title:`Previous match (Shift+Enter)`,children:`↑`}),(0,J.jsx)(`button`,{type:`button`,onClick:()=>o(1),"aria-label":`Next match`,title:`Next match (Enter)`,children:`↓`})]}):null,(0,J.jsx)(`span`,{className:$.navSpacer}),s>0?(0,J.jsxs)(`button`,{type:`button`,className:$.navError,onClick:c,children:[(0,J.jsx)(`span`,{className:$.navErrorGlyph,"aria-hidden":`true`,children:`!`}),s,` error`,s===1?``:`s`,(0,J.jsx)(`span`,{className:`visually-hidden`,children:` — jump to the first one`})]}):null,d?(0,J.jsx)(`div`,{id:m,className:$.outline,role:`group`,"aria-label":`Turns in this chat`,children:_.length===0?(0,J.jsxs)(`p`,{className:$.outlineEmpty,children:[`No turn matches “`,n.trim(),`”.`]}):(0,J.jsx)(`ol`,{className:$.outlineList,children:_.map(e=>{let n=t.indexOf(e)+1,r=v(e.key);return(0,J.jsx)(`li`,{children:(0,J.jsxs)(`button`,{type:`button`,className:$.outlineRow,"data-status":e.status,onClick:()=>{f(!1),l(e.key)},children:[(0,J.jsx)(`span`,{className:$.outlineIndex,children:n}),(0,J.jsxs)(`span`,{className:$.outlineBody,children:[(0,J.jsx)(`span`,{className:$.outlineTitle,children:Gr(e)}),r?(0,J.jsx)(`span`,{className:$.outlineSnippet,children:r}):null,(0,J.jsxs)(`span`,{className:$.outlineMeta,children:[e.toolCount>0?`${e.toolCount} tool${e.toolCount===1?``:`s`}`:`no tools`,e.files.length>0?` · ${e.files.length} file${e.files.length===1?``:`s`}`:``,e.status===`ok`?``:` · ${_i[e.status]}`]})]}),gi[e.status]?(0,J.jsx)(`span`,{className:$.outlineStatus,"aria-hidden":`true`,children:gi[e.status]}):null]})},e.key)})})}):null]})}var yi=`\xA0`,bi={ok:`Turn finished.`,error:`Turn failed.`,stopped:`Turn stopped.`};function xi(e,t){return e===null?null:!e.running&&t.running?`Turn started.`:e.running&&!t.running?t.lastStatus===null||t.lastStatus===`running`?`Turn finished.`:bi[t.lastStatus]:null}function Si({running:e,lastStatus:t,lastKey:n}){let[r,i]=(0,q.useState)(``),a=(0,q.useRef)(null);return(0,q.useEffect)(()=>{let r=xi(a.current,{running:e,lastStatus:t,lastKey:n});a.current={running:e,lastKey:n},r!==null&&i(e=>e===r?`${r}${yi}`:r)},[e,t,n]),(0,J.jsx)(`div`,{className:`visually-hidden`,role:`status`,"aria-live":`polite`,"aria-atomic":`true`,"data-testid":`turn-announcer`,children:r})}var Ci=/\u001B\[[0-9;:?]*[ -/]*[@-~]/g,wi=/\u001B\][\s\S]*?(?:\u0007|\u001B\\)/g,Ti=/\u001B[@-Z\\-_]/g,Ei=/[\u0000-\u0008\u000B\u000C\u000E-\u001F\u007F]/g;function Di(e){return e.includes(`\x1B`)}function Oi(e){return e.replace(wi,``).replace(Ci,``).replace(Ti,``).replace(Ei,``)}function ki(e){return e.includes(`\r`)?e.split(`
6
- `).map(e=>{if(!e.includes(`\r`))return e;let t=``;for(let n of e.split(`\r`))t=n.length>=t.length?n:n+t.slice(n.length);return t}).join(`
7
- `):e}function Ai(e){return ki(Oi(e)).replace(/[ \t]+$/gm,``).replace(/\n+$/,``)}function ji(e){if(e.length===0)return 0;let t=1;for(let n=0;n<e.length;n++)e.charCodeAt(n)===10&&t++;return t}function Mi(e,t){let n=e.split(`
8
- `);return n.length<=t?{head:e,hidden:0}:{head:n.slice(0,t).join(`
9
- `),hidden:n.length-t}}var Ni=20,Pi=2e5;function Fi({command:e,output:t,isError:n,pending:r,body:i,terminalAvailable:a=kt(`terminal-pane`)}){let[o,s]=(0,q.useState)(!1),c=(0,q.useMemo)(()=>{let e=Ai(t);return e.length>Pi?`${e.slice(0,Pi)}\n… (${e.length-Pi} more characters not shown)`:e},[t]),{head:l,hidden:u}=(0,q.useMemo)(()=>Mi(c,Ni),[c]),d=o?c:l,f=e?.exitCode??null;return(0,J.jsxs)(`div`,{className:$.command,"data-failed":n?`true`:void 0,children:[e?(0,J.jsxs)(`div`,{className:$.commandLine,children:[(0,J.jsx)(`span`,{className:$.commandPrompt,"aria-hidden":`true`,children:`$`}),(0,J.jsx)(`code`,{className:$.commandText,children:e.command}),a&&e.command.trim()?(0,J.jsx)(`button`,{type:`button`,className:$.commandRun,title:`Opens the Terminal with this command typed at the prompt. It does not run until you press Enter.`,onClick:()=>ie({paste:e.command}),children:`Run in terminal`}):null]}):null,(0,J.jsxs)(`div`,{className:$.commandStatus,children:[(0,J.jsx)(`span`,{className:$.commandStatusText,"data-tone":r?`pending`:n?`bad`:`ok`,children:r?`running…`:f===null?n?`failed — no exit code reported`:`completed — no exit code reported`:`exit ${f}`}),!r&&!i&&c.length===0?(0,J.jsx)(`span`,{className:$.commandMeta,children:`no output`}):null,!r&&!i&&c.length>0?(0,J.jsxs)(`span`,{className:$.commandMeta,children:[ji(c),` line`,ji(c)===1?``:`s`,Di(t)?` · colour codes stripped`:``]}):null]}),r?(0,J.jsx)(`p`,{className:$.commandPending,children:`Waiting for the command to finish…`}):i||(c.length>0?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`pre`,{className:$.commandPre,children:d}),u>0?(0,J.jsx)(`button`,{type:`button`,className:$.commandMore,"aria-expanded":o,onClick:()=>s(e=>!e),children:o?`Collapse output`:`Show ${u} more line${u===1?``:`s`}`}):null]}):null)]})}var Ii=28,Li=18,Ri=4e3;function zi({diff:e,path:t=null}){let n=(0,q.useMemo)(()=>T(e.text),[e.text]);if(n.files.length===0)return null;if(e.multiFile||n.files.length>1)return(0,J.jsx)(`div`,{className:$.diffMulti,children:(0,J.jsx)(D,{diff:e.text,proposalKind:`tool call`})});let r=n.files[0];return(0,J.jsx)(Vi,{file:r,anchored:e.anchored,path:t??r.displayPath})}function Bi(e){switch(e.status){case`renamed`:return`Renamed. The contents did not change, so there are no lines to show.`;case`added`:return`New file. It was added with no contents to diff against.`;case`deleted`:return`Deleted. The file is gone, so there are no lines to show.`;default:return null}}function Vi({file:e,anchored:t,path:n}){let[r,i]=(0,q.useState)(!1),a=E(n),o=(0,q.useMemo)(()=>Hi(e.hunks),[e.hunks]),s=o.length>Ii,c=s&&!r?o.slice(0,Li):o,l=o.length-c.length,u=e.status===`renamed`?e.oldPath:null,d=Bi(e);return(0,J.jsxs)(`div`,{className:$.diff,"data-anchored":t?`true`:`false`,"data-status":e.status,children:[(0,J.jsxs)(`div`,{className:$.diffHead,children:[u?(0,J.jsxs)(`span`,{className:$.diffOldPath,title:u,children:[u,(0,J.jsx)(`span`,{className:$.visuallyHidden,children:` renamed to`})]}):null,(0,J.jsx)(`span`,{className:$.diffPath,title:n,children:n}),e.status===`modified`?null:(0,J.jsx)(`span`,{className:$.diffStatus,children:e.status}),(0,J.jsxs)(`span`,{className:$.diffStats,children:[e.additions>0?(0,J.jsxs)(`span`,{className:$.diffAdd,children:[`+`,e.additions]}):null,e.deletions>0?(0,J.jsxs)(`span`,{className:$.diffDel,children:[`−`,e.deletions]}):null]})]}),e.unparsedNotice?(0,J.jsx)(`pre`,{className:$.diffNotice,children:e.unparsedNotice}):null,o.length===0?(0,J.jsx)(`p`,{className:$.diffEmpty,children:d??`No line-level changes in this call.`}):(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`table`,{className:$.diffTable,children:(0,J.jsx)(`tbody`,{children:c.map(e=>e.kind===`hunk`?(0,J.jsxs)(`tr`,{className:$.diffHunkRow,children:[t?(0,J.jsx)(`td`,{className:$.diffNo,"aria-hidden":`true`}):null,(0,J.jsx)(`td`,{className:$.diffMarker,"aria-hidden":`true`}),(0,J.jsx)(`td`,{className:$.diffHunkHead,children:e.label})]},e.key):(0,J.jsxs)(`tr`,{className:$[`diffRow_${e.line.kind}`],children:[t?(0,J.jsx)(`td`,{className:$.diffNo,children:e.line.newLineNo??e.line.oldLineNo??``}):null,(0,J.jsx)(`td`,{className:$.diffMarker,"aria-hidden":`true`,children:e.line.kind===`add`?`+`:e.line.kind===`del`?`−`:``}),(0,J.jsx)(`td`,{className:$.diffText,children:(0,J.jsx)(Ui,{text:e.line.text,lang:a})})]},e.key))})}),s?(0,J.jsx)(`button`,{type:`button`,className:$.diffMore,onClick:()=>i(e=>!e),"aria-expanded":r,children:r?`Collapse diff`:`Show ${l} more line${l===1?``:`s`}`}):null]}),t?null:(0,J.jsx)(`p`,{className:$.diffUnanchored,children:`Line numbers are not shown — this tool call reported what it replaced, not where in the file.`})]})}function Hi(e){let t=[],n=!1;return e.forEach((r,i)=>{if(n)return;let a=r.header.replace(/^@@[^@]*@@/,``).trim();(a||e.length>1)&&t.push({kind:`hunk`,key:`h${i}`,label:a||`hunk ${i+1}`});for(let e=0;e<r.lines.length;e++){if(t.length>=Ri){n=!0,t.push({kind:`hunk`,key:`truncated`,label:`diff truncated at ${Ri} lines`});return}t.push({kind:`line`,key:`h${i}l${e}`,line:r.lines[e]})}}),t}function Ui({text:e,lang:t}){let n=w(e,t);return(0,J.jsx)(`code`,{className:$.diffCode,children:n.map((e,t)=>(0,J.jsx)(`span`,{className:$[`tok_${e.kind}`],children:e.text},t))})}var Wi=2e4;function Gi({name:e,input:t,result:n,toolUseId:r,durationMs:i=null,facts:a,startedAt:o=null}){let s=(0,q.useMemo)(()=>a??st({name:e,input:t,result:n}),[a,e,t,n]),c=He(t),l=s.failed||n?.isError===!0,u=n===null,d=u?`running`:l?`error`:i!==null&&i>0?U(i):`done`,f=(0,q.useMemo)(()=>s.diff?Nr(s.diff.text):null,[s.diff]),p=n?n.output.length>Wi?`${n.output.slice(0,Wi)}\n… (${n.output.length-Wi} more characters)`:n.output:``;return(0,J.jsxs)(`details`,{id:ut(r),className:`${z.tool} ${l?z.toolFailed:``}`,"data-state-key":`tool:${r}`,"data-action":s.action,children:[(0,J.jsxs)(`summary`,{className:z.toolLine,"aria-label":`${e}${c?`: ${c}`:``} (${d})`,children:[(0,J.jsx)(`span`,{className:z.toolGlyph,"aria-hidden":`true`}),(0,J.jsx)(`span`,{className:z.toolName,children:e}),c?(0,J.jsx)(`span`,{className:z.toolArg,title:c,children:c}):null,f&&(f.additions>0||f.deletions>0)?(0,J.jsxs)(`span`,{className:z.toolDelta,"aria-hidden":`true`,children:[f.additions>0?(0,J.jsxs)(`span`,{className:z.toolAdd,children:[`+`,f.additions]}):null,f.deletions>0?(0,J.jsxs)(`span`,{className:z.toolDel,children:[`−`,f.deletions]}):null]}):null,(0,J.jsx)(`span`,{className:z.toolState,children:u&&o?(0,J.jsxs)(J.Fragment,{children:[`running `,(0,J.jsx)(tt,{since:o})]}):d})]}),(0,J.jsx)(`div`,{className:z.toolBody,children:(0,J.jsx)(Ki,{input:t,output:p,facts:s,pending:u,isError:l})})]})}function Ki({input:e,output:t,facts:n,pending:r,isError:i}){return n.command?(0,J.jsx)(Fi,{command:n.command,output:t,isError:i,pending:r,body:n.diff?(0,J.jsx)(zi,{diff:n.diff,path:n.paths[0]??null}):void 0}):n.diff?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(zi,{diff:n.diff,path:n.paths[0]??null}),r?(0,J.jsx)(`p`,{className:z.toolPending,children:`Waiting for the tool to finish…`}):null,i&&t?(0,J.jsxs)(`section`,{children:[(0,J.jsx)(`h4`,{className:z.toolLabel,children:`Error`}),(0,J.jsx)(`pre`,{className:z.toolPre,children:t})]}):null]}):n.written?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsxs)(`section`,{children:[(0,J.jsxs)(`h4`,{className:z.toolLabel,children:[`Contents written to `,n.written.path]}),(0,J.jsx)(`pre`,{className:z.toolPre,children:n.written.text}),(0,J.jsx)(`p`,{className:z.toolNote,children:`The previous contents were not in this tool call, so there is nothing to diff against.`})]}),(0,J.jsxs)(`section`,{children:[(0,J.jsx)(`h4`,{className:z.toolLabel,children:i?`Error`:`Result`}),r?(0,J.jsx)(`p`,{className:z.toolPending,children:`Waiting for the tool to finish…`}):(0,J.jsx)(`pre`,{className:z.toolPre,children:t||`(empty)`})]})]}):(0,J.jsxs)(J.Fragment,{children:[e==null?null:(0,J.jsxs)(`section`,{children:[(0,J.jsx)(`h4`,{className:z.toolLabel,children:`Input`}),(0,J.jsx)(`pre`,{className:z.toolPre,children:ze(e)})]}),(0,J.jsxs)(`section`,{children:[(0,J.jsx)(`h4`,{className:z.toolLabel,children:i?`Error`:`Result`}),r?(0,J.jsx)(`p`,{className:z.toolPending,children:`Waiting for the tool to finish…`}):(0,J.jsx)(`pre`,{className:z.toolPre,children:t||`(empty)`})]})]})}function qi(e,t){let n=e.trigger===`manual`?`Compacted on request`:`Auto-compacted`,r=e.durationMs!==null&&e.durationMs>0?` in ${U(e.durationMs)}`:``;return e.preTokens!==null&&e.postTokens!==null?`${n} ${B(e.preTokens)} → ${B(e.postTokens)}${r}`:e.preTokens===null?`${t?Re[t]:`The CLI`} compacted its context${r}`:`${n} at ${B(e.preTokens)}${r}`}function Ji(e){switch(e){case`native-thread-missing`:return`The CLI no longer has this chat’s saved conversation (it may have expired). Continue in a fresh chat — the transcript here is intact.`;case`session-in-use`:return`The CLI says this chat’s native session is still held by another process. Wait for it to finish, or continue in a fresh chat.`;default:return null}}var Yi=48,Xi=3,Zi=1400;function Qi(e){let t=new Set,n=null;for(let r of e)r.kind!==`compaction`&&(r.kind===`turn-done`&&!r.ok&&n&&n.turnId===r.turnId&&(n.kind===`cancelled`||n.kind===`error`)&&t.add(r.key),n={turnId:r.turnId,kind:r.kind});return t}function $i(e,t){let n=Ir(Se(e.items),t);return{turns:n.turns,facts:n.facts,errorAnchors:n.errorAnchors,explained:Qi(e.items)}}function ea({transcript:e,loaded:t,loadError:n,onRetry:r,emptyHint:i,engine:a,handoffFrom:o=null,onOpenSession:s,live:c=null}){let l=xt(),u=(0,q.useRef)(null),d=(0,q.useRef)(new Map),f=(0,q.useRef)(null),[p,m]=(0,q.useState)(!0),[h,g]=(0,q.useState)(!1),[v,y]=(0,q.useState)(``),[b,x]=(0,q.useState)(-1),[S,C]=(0,q.useState)(0),w=(0,q.useRef)(``),T=(0,q.useRef)(Or()),E=(0,q.useRef)(new WeakMap),D=(0,q.useMemo)(()=>e.segments??[{key:`all`,items:e.items}],[e]),O=(0,q.useMemo)(()=>D.map(e=>{let t=E.current.get(e);return t||(t=$i(e,T.current),E.current.set(e,t)),t}),[D]),k=(0,q.useMemo)(()=>O.flatMap(e=>e.turns),[O]),A=(0,q.useMemo)(()=>{let e=[],t=0;for(let n of O)e.push(t),t+=n.turns.length;return e},[O]),ee=(0,q.useMemo)(()=>O.flatMap(e=>e.errorAnchors),[O]),te=(0,q.useRef)(k);te.current=k;let ne=$r(k,o!==null),j=(0,q.useMemo)(()=>qr(te.current,{handoff:o!==null}),[ne]),M=(0,q.useMemo)(()=>Wr(k,v,T.current),[k,v]),re=(0,q.useMemo)(()=>new Set(M.map(e=>e.turnKey)),[M]),N=(0,q.useCallback)((e=`auto`)=>{let t=u.current;t&&(typeof t.scrollTo==`function`?t.scrollTo({top:t.scrollHeight,behavior:e}):t.scrollTop=t.scrollHeight)},[]);function P(){let e=u.current;if(!e)return;let t=e.scrollHeight-e.scrollTop-e.clientHeight<=Yi;m(t),t&&g(!1)}let ie=(0,q.useCallback)(e=>{e&&(m(!1),typeof e.scrollIntoView==`function`&&e.scrollIntoView({block:`center`,behavior:`smooth`}),typeof e.focus==`function`&&e.focus({preventScroll:!0}),e.setAttribute(`data-flash`,`true`),f.current&&clearTimeout(f.current),f.current=setTimeout(()=>e.removeAttribute(`data-flash`),Zi))},[]);(0,q.useEffect)(()=>()=>{f.current&&clearTimeout(f.current)},[]);let F=(0,q.useCallback)(e=>{ie(d.current.get(e)??null)},[ie]),I=(0,q.useCallback)((e,t=!1)=>{let n=u.current?.ownerDocument?.getElementById(e)??null;if(!n)return!t&&Er(e)?(requestAnimationFrame(()=>{I(e,!0)}),!0):!1;for(let e=n;e&&(e instanceof HTMLDetailsElement&&(e.open=!0),e!==u.current);e=e.parentElement);return ie(n),!0},[ie]);(0,q.useEffect)(()=>Nt(e=>I(e)),[I]);let ae=k.length>=Xi;(0,q.useEffect)(()=>Ft(()=>ae?(C(e=>e+1),!0):!1),[ae]);let oe=(0,q.useCallback)(e=>I(ut(e)),[I]),se=(0,q.useCallback)(()=>{let e=ee[0];e&&I(e)},[ee,I]),ce=(0,q.useCallback)((e,t)=>{t?d.current.set(e,t):d.current.delete(e)},[]),le=(0,q.useCallback)(e=>{if(M.length===0)return;let t=b<0?e>0?0:M.length-1:(b+e+M.length)%M.length;x(t),F(M[t].turnKey)},[M,b,F]);(0,q.useEffect)(()=>{x(-1)},[v]);let ue=(0,q.useRef)(k);ue.current=k;let de=(0,q.useCallback)(e=>{let t=ue.current;if(t.length===0)return;let n=u.current?.ownerDocument?.activeElement,r=n instanceof HTMLElement?n.getAttribute(`data-turn-key`):null,i=r?t.findIndex(e=>e.key===r):-1,a=i<0?e>0?0:t.length-1:Math.max(0,Math.min(t.length-1,i+e));F(t[a].key)},[F]);(0,q.useEffect)(()=>Rt(e=>ue.current.length!==0&&(de(e),!0)),[de]),(0,q.useEffect)(()=>{if(k.length===0)return;let e=e=>{if(e.defaultPrevented)return;let t=e.target,n=t instanceof HTMLTextAreaElement||t instanceof HTMLInputElement||t?.isContentEditable===!0;if((e.metaKey||e.ctrlKey)&&!e.shiftKey&&!e.altKey&&e.key.toLowerCase()===`f`){if(k.length<Xi)return;e.preventDefault(),C(e=>e+1);return}e.altKey&&!e.metaKey&&!e.ctrlKey&&!n&&(e.key===`ArrowDown`?(e.preventDefault(),de(1)):e.key===`ArrowUp`&&(e.preventDefault(),de(-1)))};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[k.length,de]);function fe(e){e.target?.hasAttribute(`data-turn-key`)&&(e.key===`ArrowDown`?(e.preventDefault(),de(1)):e.key===`ArrowUp`?(e.preventDefault(),de(-1)):e.key===`Home`?(e.preventDefault(),F(k[0].key)):e.key===`End`&&(e.preventDefault(),F(k[k.length-1].key)))}let L=e.live,pe=L&&l!==`hidden`&&c?.thinking&&c.thinking.turnId===c.turnId?c.thinking:null,R=k.length>0?k[k.length-1]:null,me=e.items[e.items.length-1],he=`${e.items.length}:${me?.kind===`assistant`?me.text.length:0}:${pe?.text.length??-1}:${+!!L}`;if((0,q.useLayoutEffect)(()=>{he!==w.current&&(w.current=he,p?N():g(!0))},[he,p,N]),(0,q.useEffect)(()=>{t&&N()},[t,N]),!t&&!n)return(0,J.jsx)(`div`,{className:z.transcript,"aria-busy":`true`,children:(0,J.jsxs)(`div`,{className:z.skeleton,children:[(0,J.jsx)(`div`,{className:z.skeletonUser,children:(0,J.jsx)(_,{width:`42%`})}),(0,J.jsx)(_,{width:`88%`}),(0,J.jsx)(_,{width:`72%`}),(0,J.jsx)(_,{width:`80%`}),(0,J.jsx)(`div`,{className:z.skeletonUser,children:(0,J.jsx)(_,{width:`30%`})}),(0,J.jsx)(_,{width:`64%`})]})});if(n)return(0,J.jsx)(`div`,{className:z.transcript,children:(0,J.jsxs)(`div`,{role:`alert`,className:z.loadError,children:[(0,J.jsx)(`p`,{children:n}),r?(0,J.jsx)(`button`,{type:`button`,onClick:r,children:`Retry`}):null]})});let ge=b>=0?M[b]?.turnKey??null:null;return(0,J.jsxs)(`div`,{className:z.transcriptWrap,children:[k.length>=Xi?(0,J.jsx)(vi,{turns:k,query:v,onQuery:y,matches:M,matchIndex:b,onStepMatch:le,errorCount:ee.length,onJumpError:se,onJumpTurn:F,focusToken:S}):null,(0,J.jsx)(Si,{running:L,lastStatus:R?.status??null,lastKey:R?.key??null}),(0,J.jsxs)(`div`,{className:z.scrollArea,children:[(0,J.jsxs)(`div`,{ref:u,className:z.transcript,onScroll:P,role:`log`,"aria-live":`off`,"aria-label":`Conversation`,"data-has-rail":k.length>=Xi||void 0,children:[o?(0,J.jsxs)(`p`,{className:z.continued,"data-kind":`handoff-from`,children:[(0,J.jsx)(`span`,{className:z.continuedLabel,children:`Continued from`}),` `,s?(0,J.jsx)(`button`,{type:`button`,className:z.continuedLink,onClick:()=>s(o.sessionId),title:`Open the chat this one continues`,children:o.title||`Untitled chat`}):(0,J.jsx)(`span`,{className:z.continuedTitle,children:o.title||`Untitled chat`})]}):null,e.items.length===0&&!L?(0,J.jsxs)(`div`,{className:z.empty,children:[(0,J.jsx)(`p`,{className:z.emptyTitle,children:o?`Review the handoff, then send it.`:`Say something to begin.`}),(0,J.jsx)(`p`,{className:z.emptyBody,children:i??(o?`The note in the message box was drafted from the previous chat's log. Edit it freely — nothing is sent until you press Send.`:`The agent can read and edit this project. Ask for a change, a review, or an explanation.`)})]}):null,(0,J.jsxs)(`ol`,{className:z.list,onKeyDown:fe,children:[O.map((e,t)=>e.turns.map((n,r)=>(0,J.jsx)(ta,{turn:n,index:A[t]+r,facts:e.facts,explained:e.explained,engine:a,match:re.has(n.key)?n.key===ge?`active`:`true`:void 0,reasoning:l,onJumpTool:oe,onJumpAnchor:I,registerNode:ce},n.key))),pe?(0,J.jsx)(`li`,{className:z.item,"data-kind":`thinking-live`,children:(0,J.jsx)(hi,{text:pe.text,streaming:!0,startedAt:pe.startedAt,estimatedTokens:pe.estimatedTokens,defaultOpen:!0},`live-${pe.startedAt}`)}):null]})]}),k.length>=Xi?(0,J.jsx)(ri,{model:j,onJumpTurn:F}):null]}),p?null:(0,J.jsxs)(`button`,{type:`button`,className:`${z.jump} ${h?z.jumpUnseen:``}`,onClick:()=>{m(!0),g(!1),N(`smooth`)},children:[(0,J.jsx)(_e,{size:12}),` Jump to latest`]})]})}var ta=(0,q.memo)(function({turn:e,index:t,facts:n,explained:r,engine:i,match:a,reasoning:o,onJumpTool:s,onJumpAnchor:c,registerNode:l}){let u=e.status===`running`;return(0,J.jsxs)(`li`,{id:jr(e.key),ref:t=>l(e.key,t),className:`${z.turn} ${u?``:z.turnSettled}`,"data-turn-key":e.key,"data-status":e.status,"data-match":a,tabIndex:-1,"aria-label":`Turn ${t+1}`,children:[(0,J.jsx)(`ol`,{className:z.turnItems,children:e.items.map(e=>ra(e,n,r,o,i))}),e.files.length>0?(0,J.jsx)(oi,{files:e.files,onJump:s}):null,e.errorCount>0&&e.firstErrorAnchor?(0,J.jsxs)(`button`,{type:`button`,className:z.turnErrorJump,onClick:()=>c(e.firstErrorAnchor),children:[e.errorCount,` failure`,e.errorCount===1?``:`s`,` in this turn — jump to the first`]}):null]})}),na=(0,q.memo)(Gi,(e,t)=>e.name===t.name&&e.input===t.input&&e.toolUseId===t.toolUseId&&e.durationMs===t.durationMs&&e.facts===t.facts&&e.result?.output===t.result?.output&&e.result?.isError===t.result?.isError&&e.result===null==(t.result===null));function ra(e,t,n,r,i){switch(e.kind){case`user`:return(0,J.jsx)(`li`,{className:`${z.item} ${z.user}`,"data-kind":`user`,children:(0,J.jsx)(`div`,{className:z.userText,children:e.text})},e.key);case`assistant`:return(0,J.jsx)(`li`,{className:`${z.item} ${z.assistant}`,"data-kind":`assistant`,"data-streaming":e.streaming||void 0,children:(0,J.jsx)(xe,{text:e.text,streaming:e.streaming})},e.key);case`thinking`:return r===`hidden`?null:(0,J.jsx)(`li`,{className:z.item,"data-kind":`thinking`,children:(0,J.jsx)(hi,{text:e.text,redacted:e.redacted,durationMs:e.durationMs,estimatedTokens:e.estimatedTokens,kind:e.thinkingKind,defaultOpen:r===`expanded`,stateKey:`thinking:${e.key}`})},e.key);case`tool`:return(0,J.jsx)(`li`,{className:z.item,"data-kind":`tool`,children:(0,J.jsx)(na,{name:e.name,input:e.input,result:e.result,toolUseId:e.toolUseId,durationMs:e.durationMs,facts:t.get(e.toolUseId),startedAt:e.at})},e.key);case`toolGroup`:return(0,J.jsx)(`li`,{className:z.item,"data-kind":`tool-group`,children:(0,J.jsx)(oa,{item:e,facts:t,reasoning:r})},e.key);case`error`:{let t=Ji(e.code);return(0,J.jsx)(`li`,{className:z.item,"data-kind":`error`,"data-code":e.code??void 0,children:(0,J.jsxs)(`div`,{id:Ar(e.key),role:`alert`,className:`${z.note} ${z.noteError}`,children:[e.message,t?(0,J.jsx)(`span`,{className:z.noteHint,children:t}):null]})},e.key)}case`compaction`:return(0,J.jsxs)(`li`,{className:`${z.item} ${z.compaction}`,"data-kind":`compaction`,children:[(0,J.jsx)(`span`,{className:z.compactionRule,"aria-hidden":`true`}),(0,J.jsxs)(`span`,{className:z.compactionText,children:[(0,J.jsx)(`span`,{className:z.compactionTitle,children:qi(e,i)}),(0,J.jsx)(`span`,{className:z.compactionNote,children:`Earlier turns now reach the agent only as a summary; the full transcript stays here.`})]}),(0,J.jsx)(`span`,{className:z.compactionRule,"aria-hidden":`true`})]},e.key);case`truncated`:return(0,J.jsxs)(`li`,{className:`${z.item} ${z.compaction}`,"data-kind":`history-truncated`,children:[(0,J.jsx)(`span`,{className:z.compactionRule,"aria-hidden":`true`}),(0,J.jsxs)(`span`,{className:z.compactionText,children:[(0,J.jsx)(`span`,{className:z.compactionTitle,children:`Older history trimmed`}),(0,J.jsx)(`span`,{className:z.compactionNote,children:`This chat’s log reached its size cap, so its oldest turns were dropped here. The agent’s own conversation is unaffected.`})]}),(0,J.jsx)(`span`,{className:z.compactionRule,"aria-hidden":`true`})]},e.key);case`recovered`:return(0,J.jsx)(`li`,{className:z.item,"data-kind":`recovered`,children:(0,J.jsxs)(`div`,{className:`${z.note} ${z.noteRecovered}`,role:`status`,children:[(0,J.jsx)(`span`,{className:z.noteLead,children:e.how===`handoff`?`Recovered from the handoff note`:`Recovered in a new session`}),` — `,e.message]})},e.key);case`cancelled`:return(0,J.jsx)(`li`,{className:z.item,"data-kind":`cancelled`,children:(0,J.jsx)(`div`,{className:z.note,children:`Stopped.`})},e.key);case`turn-done`:return e.ok||n.has(e.key)?e.durationMs>0?(0,J.jsx)(`li`,{className:`${z.item} ${z.meta}`,"data-kind":`turn-done`,children:(0,J.jsx)(`span`,{className:z.metaText,children:U(e.durationMs)})},e.key):null:(0,J.jsx)(`li`,{className:z.item,"data-kind":`turn-done`,children:(0,J.jsxs)(`div`,{id:Ar(e.key),className:`${z.note} ${z.noteError}`,children:[`Turn ended without a result (`,(0,J.jsx)(`span`,{className:z.noteDuration,children:U(e.durationMs)}),`).`]})},e.key);default:return null}}function ia(e,t,n,r){if(e===t)return n===r||e.items.every(e=>e.kind!==`tool`||n.get(e.toolUseId)===r.get(e.toolUseId));if(e.key!==t.key||e.items.length!==t.items.length||e.errorCount!==t.errorCount||e.pending!==t.pending||e.spanMs!==t.spanMs||e.summary!==t.summary)return!1;for(let i=0;i<e.items.length;i+=1){let a=e.items[i],o=t.items[i];if(a.key!==o.key||a.kind!==o.kind)return!1;if(a.kind===`tool`&&o.kind===`tool`){if(a.result?.output!==o.result?.output||a.result?.isError!==o.result?.isError||a.durationMs!==o.durationMs||n.get(a.toolUseId)!==r.get(o.toolUseId))return!1}else if(a.kind===`thinking`&&o.kind===`thinking`&&(a.text!==o.text||a.durationMs!==o.durationMs||a.estimatedTokens!==o.estimatedTokens))return!1}return!0}function aa(e,t,n){return e.kind===`tool`?(0,J.jsx)(na,{name:e.name,input:e.input,result:e.result,toolUseId:e.toolUseId,durationMs:e.durationMs,facts:t.get(e.toolUseId),startedAt:e.at}):n===`hidden`?null:(0,J.jsx)(hi,{text:e.text,redacted:e.redacted,durationMs:e.durationMs,estimatedTokens:e.estimatedTokens,kind:e.thinkingKind,defaultOpen:n===`expanded`,stateKey:`thinking:${e.key}`})}var oa=(0,q.memo)(function({item:e,facts:t,reasoning:n}){let r=(0,q.useCallback)(e=>aa(e,t,n),[t,n]);return(0,J.jsx)(Dr,{item:e,facts:t,renderMember:r})},(e,t)=>e.reasoning===t.reasoning&&ia(e.item,t.item,e.facts,t.facts)),sa={chip:`_chip_15tdd_8`,chipGlyph:`_chipGlyph_15tdd_22`,window:`_window_15tdd_36`,windowLead:`_windowLead_15tdd_37`,windowLabel:`_windowLabel_15tdd_44`,pct:`_pct_15tdd_45`,flag:`_flag_15tdd_61`,unknownHead:`_unknownHead_15tdd_70`,unknownValue:`_unknownValue_15tdd_77`,unknownRule:`_unknownRule_15tdd_86`,reset:`_reset_15tdd_94`,note:`_note_15tdd_105`,noteHead:`_noteHead_15tdd_111`,plan:`_plan_15tdd_118`,noteSummary:`_noteSummary_15tdd_131`,credits:`_credits_15tdd_138`},ca={ready:`✓`,tight:`◑`,blocked:`▮`,unread:`?`};function la({view:e,title:t}){return(0,J.jsxs)(`span`,{className:sa.chip,"data-capacity":e.cls,title:t??e.summary,children:[(0,J.jsx)(`span`,{className:sa.chipGlyph,"aria-hidden":`true`,children:ca[e.cls]}),e.word]})}function ua(e,t){return e instanceof Error&&e.message?e.message:t}function da({issue:e,onReconnect:t}){let[n,r]=(0,q.useState)(!1),[i,a]=(0,q.useState)(null),{report:o}=e,s=o.fix.command&&o.fix.command.length>0?H(o.fix.command):null,c=async()=>{r(!0),a(null);try{await t(o.seatId),a({text:`Sign-in opened in Terminal. Finish there, then choose Check again.`,error:!1})}catch(e){a({text:ua(e,`The sign-in window could not be opened.`),error:!0})}finally{r(!1)}},l=async()=>{if(s!==null)try{await navigator.clipboard.writeText(s),a({text:`Command copied.`,error:!1})}catch{a({text:`Copy failed — select the command and copy it by hand.`,error:!0})}};return(0,J.jsxs)(`li`,{className:X.row,"data-tone":e.tone,"data-seat":o.seatId,children:[(0,J.jsxs)(`div`,{className:X.rowHead,children:[(0,J.jsx)(`span`,{className:X.dot,"aria-hidden":`true`}),(0,J.jsx)(`span`,{className:X.label,children:e.label}),(0,J.jsx)(`span`,{className:X.word,children:e.word}),e.reset===null?null:(0,J.jsx)(`span`,{className:X.reset,children:e.reset})]}),e.detail===null?null:(0,J.jsx)(`p`,{className:X.detail,children:e.detail}),o.fix.kind===`reauth`||s!==null?(0,J.jsxs)(`div`,{className:X.actions,children:[o.fix.kind===`reauth`?(0,J.jsx)(ht,{size:`sm`,variant:`primary`,icon:(0,J.jsx)(de,{}),busy:n,onClick:()=>{c()},"aria-label":`Reconnect ${e.label}`,children:`Reconnect`}):null,s===null?null:(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`code`,{className:X.command,children:s}),(0,J.jsx)(ht,{size:`sm`,variant:`subtle`,icon:(0,J.jsx)(fe,{}),onClick:()=>{l()},"aria-label":`Copy the repin command for ${e.label}`,children:`Copy`})]})]}):null,(0,J.jsx)(`p`,{className:X.status,"aria-live":`polite`,"data-error":i?.error?`true`:void 0,children:i?.text??``})]})}function fa({reports:e,seats:t=[],onReconnect:n=Ye,onRefresh:r=Je,now:i}){let[a,o]=(0,q.useState)(!1),[s,c]=(0,q.useState)(null),l=Oe(e,t,i);if(l.length===0)return null;let u=l[0].tone,d=async()=>{o(!0),c(null);try{await r()}catch(e){c(ua(e,`The check could not run.`))}finally{o(!1)}};return(0,J.jsxs)(`section`,{className:X.banner,"data-tone":u,"aria-label":`Seat health`,children:[(0,J.jsxs)(`div`,{className:X.head,children:[(0,J.jsx)(L,{}),(0,J.jsx)(`span`,{className:X.headline,children:De(l)}),(0,J.jsx)(ht,{size:`sm`,variant:`ghost`,icon:(0,J.jsx)(R,{}),busy:a,onClick:()=>{d()},children:`Check again`})]}),(0,J.jsx)(`ul`,{className:X.list,children:l.map(e=>(0,J.jsx)(da,{issue:e,onReconnect:n},e.report.seatId))}),s===null?null:(0,J.jsx)(`p`,{className:X.status,"data-error":`true`,role:`status`,children:s})]})}var pa=(0,q.lazy)(()=>i(()=>import(`./HandoffDialog-DHZo3Ev0.js`).then(e=>({default:e.HandoffDialog})),__vite__mapDeps([22,1,2,3,4,5,23,9,24,25,15,6,7,26,27,28,10,29,30,8,11,31,32,33,16,34,35])));function ma(e){let{view:t,seats:n,projects:r,dispatchEnabled:i,locked:s,hasAnySessions:c,onSend:u,onStop:d,onRename:f,onRequestDelete:p,onSeatChange:m,onNew:h,onRetry:g,sidebarCollapsed:_,onToggleSidebar:v,onOpenSession:y,handoffOpen:b,onHandoffOpenChange:x,otherRunning:S}=e,w=t.session,[T,E]=(0,q.useState)(!1),[D,O]=(0,q.useState)(``),[k,A]=(0,q.useState)(!1),[ee,ne]=(0,q.useState)({busy:!1,error:null}),[j,M]=(0,q.useState)(!1),[re,P]=(0,q.useState)(null),[ie,F]=(0,q.useState)(null),[I,se]=(0,q.useState)(null),[ce,le]=(0,q.useState)(!1),[ue,de]=(0,q.useState)(null),[fe,L]=(0,q.useState)(null),[pe,R]=(0,q.useState)(null),me=(0,q.useRef)(null),ge=(0,q.useId)();Ze();let _e=Pt(w);(0,q.useEffect)(()=>{E(!1),ne({busy:!1,error:null}),M(!1),F(null),P(null),se(null),de(null),L(null)},[t.sessionId]);let ve=t.session?.id??null,ye=(0,q.useRef)(0);(0,q.useEffect)(()=>{ue&&(ye.current=ue.nonce)},[ue]),(0,q.useEffect)(()=>{if(ve&&i)return Bt(ve,e=>{de(t=>({nonce:(t?.nonce??0)+1,text:t!==null&&t.nonce>ye.current?It(t.text,e):e}))})},[ve,i]);let be=Et(),z=be.run,xe=t.session?.id??null,Se=(0,q.useCallback)(async e=>{if(xe){ne({busy:!0,error:null});try{let t=await z(`Changing the context mode changes the compaction flag this chat runs with from its next turn.`,()=>Te(xe,e));t&&Ce(t.id,t),ne({busy:!1,error:null})}catch(e){ne({busy:!1,error:Dt(e)})}}},[xe,z]),Ee=(0,q.useCallback)((e,t)=>{o(e.id,t),ae(e.projectPath,{seatId:e.seatId,model:e.model}),Ce(e.id,e),oe(),x(!1),y?y(e.id):(F({title:e.title}),P(`handoff-created`))},[y,x]);(0,q.useEffect)(()=>{T&&(me.current?.focus(),me.current?.select())},[T]);let De=(0,q.useMemo)(()=>we(t.events),[t.events]);if(!t.sessionId)return(0,J.jsxs)(`section`,{className:Z.workspace,"aria-label":`Chat`,children:[(0,J.jsxs)(`header`,{className:Z.header,"data-app-region":`drag`,children:[(0,J.jsx)(xa,{eyebrow:(0,J.jsx)(`span`,{className:Z.eyebrow,children:`Chat`}),title:(0,J.jsx)(`span`,{className:Z.titleStatic,"data-state":`empty`,children:c?`No chat selected`:`No chats yet`})}),(0,J.jsx)(`div`,{className:Z.headerSpacer}),(0,J.jsx)(`div`,{className:Z.actions,children:(0,J.jsx)(wa,{sidebarCollapsed:_,onToggleSidebar:v,hasSession:!1})})]}),(0,J.jsx)(ba,{seats:n}),(0,J.jsxs)(`div`,{className:Z.emptyState,children:[(0,J.jsx)(`span`,{className:Z.emptyMark,"aria-hidden":`true`,children:(0,J.jsx)(he,{size:36})}),(0,J.jsx)(`h1`,{className:Z.emptyTitle,children:c?`Pick a chat, or start a new one`:`No chats yet — ⌘N`}),(0,J.jsx)(`p`,{className:Z.emptyBody,children:`Open a project, choose a seat — a Claude or Codex account, Grok, or a local Ollama model — and talk to an agent that can edit that project.`}),(0,J.jsxs)(`button`,{type:`button`,className:Z.emptyButton,onClick:h,children:[`New chat `,(0,J.jsx)(`kbd`,{children:`⌘N`})]}),i?null:(0,J.jsxs)(`p`,{className:Z.emptyWarn,role:`status`,children:[`This server was started without dispatch, so chats are read-only here. Run `,(0,J.jsx)(`code`,{children:`ashlr verse`}),` to enable sending.`]})]})]});async function Oe(){let e=D.trim();if(E(!1),w&&e&&e!==w.title){A(!0);try{await f(e)}finally{A(!1)}}}function ke(e){e.key===`Enter`?(e.preventDefault(),Oe()):e.key===`Escape`&&(e.preventDefault(),E(!1))}let V=w?.status===`running`,H=w?Pe(n,w):null,Ae=w?.contextMode??`standard`,je=w!==null&&H!==null&&l(w.engine)&&(a(H.option)||Ae===`expansive`),Ne=w?Ie(n,w.seatId)??null:null,Fe=Ne===null?null:Ke(Ne),Re=w===null?``:`${Ne===null||Fe===null?Me(n,w):We(Ne,Fe)} · ${w.projectPath}`,U=i?null:`Sending is disabled: this server was started without dispatch.`,ze=`Available when the current turn finishes.`,Be=w!==null&&dr(w.engine),Ve=Be?()=>{F(null),M(!0),P(`compact`)}:void 0,He=w!==null&&w.turnCount===0?`Nothing to compact yet — this chat has no turns.`:null,Ue=U??(V?ze:null),W=()=>{F(null),L(null),x(!0)},qe=e=>{if(Ue!==null){m(e);return}F(null),L(e),x(!0)},Je=w?Le(w.projectPath,r):``,Ye=[];if(w){if(je&&H){let e=Ae===`standard`?`expansive`:`standard`,t=e===`standard`?ar(H.option,Ae,H):null,n=t===null?null:t.definite?`This chat holds ≈${B(t.tokens)}, past Standard's ≈${B(t.point)} compaction point — it compacts on the next turn.`:`This chat holds up to ≈${B(t.tokens)}; past ≈${B(t.point)} it compacts on the next turn.`,r=i?V?`The mode cannot change mid-turn. `+ze:ee.busy?`Switching…`:null:U;Ye.push({id:`mode`,label:`Context: switch to ${Xn[e]}`,icon:(0,J.jsx)(`span`,{"aria-hidden":`true`,children:`◔`}),description:e===`expansive`?ir(H.option,w.engine):n??`Now ${Xn[Ae]}. Applies from the next turn.`,disabled:r!==null,reason:r,onSelect:()=>{Se(e)}})}if(Be){let e=U??(V?ze:He);Ye.push({id:`compact`,label:`Compact now…`,disabled:e!==null,reason:e,onSelect:()=>Ve?.()})}Ye.push({id:`handoff`,label:`Continue in a fresh chat…`,icon:(0,J.jsx)($e,{size:14}),disabled:Ue!==null,reason:Ue,onSelect:W}),Ye.push({id:`rename`,label:`Rename`,icon:(0,J.jsx)(et,{size:14}),disabled:!i,reason:U,onSelect:()=>{O(w.title),E(!0)}}),Ye.push({id:`copy-id`,label:ce?`Copied`:`Copy chat id`,icon:(0,J.jsx)(K,{size:14}),onSelect:()=>{navigator.clipboard?.writeText(w.id).then(()=>{le(!0),setTimeout(()=>le(!1),1200)},()=>void 0)}}),Ye.push({id:`delete`,label:`Delete chat…`,icon:(0,J.jsx)(ot,{size:14}),danger:!0,separated:!0,disabled:!i||V,reason:V?`Stop the turn before deleting.`:U,onSelect:p})}return(0,J.jsxs)(`section`,{className:Z.workspace,"aria-labelledby":ge,children:[(0,J.jsxs)(`header`,{className:Z.header,"data-app-region":`drag`,children:[(0,J.jsx)(xa,{eyebrow:w?(0,J.jsxs)(`span`,{className:Z.eyebrow,title:w.projectPath,"data-testid":`chat-breadcrumb`,children:[Je,_e.branch?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`span`,{className:Z.crumbSep,"aria-hidden":`true`,children:` › `}),(0,J.jsx)(`span`,{className:`visually-hidden`,children:` on branch `}),(0,J.jsx)(`span`,{className:Z.crumbBranch,children:_e.branch})]}):null]}):(0,J.jsx)(`span`,{className:`${Z.eyebrow} skeleton ${Z.eyebrowSkeleton}`,"aria-hidden":`true`}),title:w?T?(0,J.jsx)(`input`,{ref:me,className:Z.titleInput,value:D,"aria-label":`Chat title`,onChange:e=>O(e.target.value),onBlur:()=>{Oe()},onKeyDown:ke,maxLength:120}):(0,J.jsx)(`h1`,{id:ge,className:Z.title,children:(0,J.jsx)(`button`,{type:`button`,className:Z.titleButton,title:`Rename chat`,disabled:k||!i,onClick:()=>{O(w.title),E(!0)},children:w.title||`Untitled chat`})}):(0,J.jsx)(`h1`,{id:ge,className:`${Z.titleStatic} skeleton ${Z.titleSkeleton}`,"aria-label":`Loading chat`})}),w?(0,J.jsxs)(`span`,{className:`${Z.seatPill} ${Z[`engine-${w.engine}`]??``}`,"data-engine":w.engine,"data-seat-capacity":Fe!==null&&Ge(Fe.cls)?Fe.cls:void 0,title:Re,children:[(0,J.jsx)(`span`,{className:Z.engineTick,"aria-hidden":`true`}),(0,J.jsx)(`span`,{className:Z.monogram,"aria-hidden":`true`,children:te[w.engine]}),(0,J.jsx)(`span`,{className:Z.seatText,children:Me(n,w)}),Fe!==null&&Ge(Fe.cls)?(0,J.jsx)(la,{view:Fe}):null]}):null,w?(0,J.jsx)(Ot,{sessionId:w.id}):null,(0,J.jsx)(`div`,{className:Z.headerSpacer}),(0,J.jsxs)(`div`,{className:Z.actions,children:[t.stream===`reconnecting`?(0,J.jsx)(`span`,{className:Z.streamState,role:`status`,children:`reconnecting…`}):null,w&&H?(0,J.jsx)(nr,{variant:`ring`,contextTokens:H.contextTokens,contextWindow:H.contextWindow,autoCompactAt:H.autoCompactAt,exact:H.exact,source:H.source,mode:je?Ae:null,engine:w.engine,compactionCount:w.compactionCount??0}):null,ee.error?(0,J.jsx)(`span`,{className:Z.modeError,role:`alert`,children:ee.error}):null,w?(0,J.jsx)(`button`,{type:`button`,className:Z.ghostIcon,"aria-label":`Chat actions`,title:`Chat actions`,"aria-haspopup":`menu`,"aria-expanded":I!==null,onClick:e=>se(I?null:{anchor:Qe(e.currentTarget,`end`,260),from:e.currentTarget}),children:(0,J.jsx)(it,{})}):null,(0,J.jsx)(`span`,{className:Z.actionDivider,"aria-hidden":`true`}),(0,J.jsx)(wa,{sidebarCollapsed:_,onToggleSidebar:v,hasSession:w!==null})]})]}),(0,J.jsx)(ha,{sessionId:t.sessionId,transcriptOverride:t.transcript,loaded:t.loaded,loadError:t.loadError,onRetry:g,engine:w?.engine,handoffFrom:w?.handoffFrom??null,onOpenSession:y},t.sessionId),w&&H?(0,J.jsx)(ya,{session:w,seats:n,budget:H,modesAvailable:je,dispatchEnabled:i,modeBusy:ee.busy,lastTurnAt:De,compactOpen:Be&&j,running:V,onSend:u,onCloseCompact:()=>{M(!1),P(null)},onHandoff:W,onSwitchExpansive:()=>{Se(`expansive`)},onCompact:Ve,handoffCreated:ie,onDismissHandoffCreated:()=>F(null),pinnedId:re}):null,w?(0,J.jsx)(`div`,{ref:R,className:Z.queueHost,"data-testid":`queue-slot`}):null,w?(0,J.jsx)(ga,{sessionId:w.id,running:V,otherRunning:S,onStop:d}):null,w?(0,J.jsx)(At,{sessionId:w.id,roots:_e.roots,onOpenDiff:N}):null,w?(0,J.jsx)(Kn,{sessionId:w.id,seats:n,seat:{seatId:w.seatId,model:w.model},engine:w.engine,running:V,disabled:!i,disabledReason:U,locked:s,hintSeen:w.turnCount>0,contextTokens:H?.contextTokens??null,contextWindow:H?.contextWindow??null,autoCompactAt:H?.autoCompactAt??null,contextExact:H?.exact??!0,handoffDraft:w.handoffFrom!==void 0&&w.turnCount===0,onSend:u,onStop:d,onSeatChange:m,onHandoff:W,handoffDisabledReason:Ue,onContinueOn:qe,insertRequest:ue,queueSlot:pe,autoFocus:!0},w.id):null,I&&w?(0,J.jsx)(G,{label:`Chat actions`,items:Ye,anchor:I.anchor,returnFocus:I.from,onClose:()=>se(null)}):null,w&&b?(0,J.jsx)(q.Suspense,{fallback:null,children:(0,J.jsx)(pa,{session:w,seats:n,open:!0,onClose:()=>{L(null),x(!1)},onCreated:Ee,initialTarget:fe??void 0})}):null,(0,J.jsx)(C,{...be.dialog,tokenLabel:`Mutation token`,tokenHelp:`the mutation token ashlr verse printed`})]})}function ha({sessionId:e,transcriptOverride:t,...n}){let r=zt(e),i=Lt(e);return(0,J.jsx)(ea,{...n,transcript:t??r,live:i})}function ga({sessionId:e,running:t,otherRunning:n,onStop:r}){let i=zt(e),a=Lt(e),o=M(),s=i.segments,c=s&&s.length>0?s[s.length-1].items:i.items,l=a.thinking&&a.thinking.turnId===a.turnId?a.thinking:null,u=(0,q.useMemo)(()=>at(c,{thinking:l}),[c,l]),d=(0,q.useMemo)(()=>pt(c),[c]),f=(0,q.useMemo)(()=>ft(t?d:[],n),[t,d,n]),p=t&&i.live;if(!p&&f.total===0)return null;let m=o.state.open&&(o.state.active===`tasks`||o.state.splitWith===`tasks`);return(0,J.jsxs)(`div`,{className:Z.liveRow,"data-running":p||void 0,children:[p?(0,J.jsx)(nt,{live:a,derived:u,onStop:r,showNotice:!1}):(0,J.jsx)(`span`,{className:Z.liveSpacer}),(0,J.jsx)(Kt,{counts:f,active:m,onOpen:()=>j(`tasks`)})]})}var _a={retry:`Retrying`,preflight:`Preflight`,watchdog:`Still running`},va=6e4;function ya(e){let{session:t,seats:n,budget:r,modesAvailable:i,dispatchEnabled:a,modeBusy:o,lastTurnAt:s,compactOpen:c,running:l,onSend:u,onCloseCompact:d,onHandoff:f,onSwitchExpansive:p,onCompact:m,handoffCreated:h,onDismissHandoffCreated:g,pinnedId:_}=e,v=Xe(),y=Lt(t.id),[b,x]=(0,q.useState)(()=>Date.now()),[,S]=(0,q.useState)(0);(0,q.useEffect)(()=>{let e=setInterval(()=>x(Date.now()),va);return()=>clearInterval(e)},[]);let C=v.data?.seats??[],w=[];Oe(C,n).length>0&&w.push({id:`seat-health`,kind:`seat-health`,label:`Seat health`,render:()=>(0,J.jsx)(fa,{reports:C,seats:n})});let T=l&&y.notice?y.notice:null;return T&&w.push({id:`engine:${T.kind}`,kind:`engine`,label:_a[T.kind],render:()=>(0,J.jsxs)(`p`,{className:Z.engineNotice,"data-kind":T.kind,role:`status`,children:[(0,J.jsx)(`span`,{className:Z.engineNoticeWord,children:_a[T.kind]}),(0,J.jsx)(`span`,{children:T.message})]})}),lr(t,r,i,Math.max(b,Date.now()),s)&&w.push({id:`context-advice`,kind:`context`,label:`Context advice`,render:()=>(0,J.jsx)(ur,{embedded:!0,session:t,budget:r,modesAvailable:i,dispatchEnabled:a,modeBusy:o,onHandoff:f,onSwitchExpansive:p,onCompact:m,lastTurnAt:s,onDismiss:()=>S(e=>e+1)})}),h&&w.push({id:`handoff-created`,kind:`context`,label:`Handoff started`,render:()=>(0,J.jsxs)(`p`,{className:Z.adviceStatus,role:`status`,children:[`Started “`,h.title,`” — open it from the chat list; the handoff note is waiting in its message box.`,(0,J.jsx)(`button`,{type:`button`,className:Z.ghost,onClick:g,children:`Dismiss`})]})}),c&&w.push({id:`compact`,kind:`compact`,label:`Compact now`,render:()=>(0,J.jsx)(mr,{engine:t.engine,budget:r,running:l,dispatchEnabled:a,empty:t.turnCount===0,onSend:u,onClose:d})}),(0,J.jsx)(Wt,{notices:w,pinnedId:_})}function ba({seats:e}){let t=Xe().data?.seats??[];return Oe(t,e).length===0?null:(0,J.jsx)(`div`,{className:Z.advice,children:(0,J.jsx)(fa,{reports:t,seats:e})})}function xa({eyebrow:e,title:t}){return(0,J.jsxs)(`div`,{className:Z.identity,children:[e,t]})}function Sa(e){let t=A(e)?.keys[0];return t?O(t):null}var Ca={terminal:`dock.terminal`,preview:`dock.preview`,diff:`dock.diff`};function wa({sidebarCollapsed:e,onToggleSidebar:t,hasSession:n}){let{state:r}=M(),i=e=>r.open&&(r.active===e||r.splitWith===e),a=[`terminal`,`preview`,`diff`].filter(e=>n&&jt(e)),o=Sa(`dock.toggle`),s=Sa(`chat.sidebar`);return(0,J.jsxs)(`div`,{className:Z.toggles,role:`group`,"aria-label":`Panels`,children:[a.map(e=>{let t=rt[e],n=Sa(Ca[e]),r=i(e);return(0,J.jsx)(`button`,{type:`button`,className:`${Z.ghostIcon} ${Z.paneToggle}`,"aria-pressed":r,"aria-label":Mt[e],title:`${r?`Hide`:`Show`} ${Mt[e]}${n?` (${n})`:``}`,onClick:()=>re(e),children:(0,J.jsx)(t,{})},e)}),a.length>0?(0,J.jsx)(`span`,{className:`${Z.actionDivider} ${Z.paneToggle}`,"aria-hidden":`true`}):null,(0,J.jsx)(`button`,{type:`button`,className:Z.ghostIcon,onClick:t,"aria-pressed":!e,title:`${e?`Show`:`Hide`} chat list${s?` (${s})`:``}`,"aria-label":e?`Show chat list`:`Chat list`,children:(0,J.jsx)(ye,{})}),(0,J.jsx)(`button`,{type:`button`,className:Z.ghostIcon,onClick:P,"aria-pressed":r.open,title:`${r.open?`Hide`:`Show`} the dock${o?` (${o})`:``}`,"aria-label":`Dock`,children:(0,J.jsx)(ge,{})})]})}export{ma as Workspace};
10
- //# sourceMappingURL=Workspace-DtJb5tiM.js.map