@dylanpiercey/work 0.0.80 → 0.0.82

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 (248) hide show
  1. package/dist/{_DYjQjuVZ.js → _CExzMbX7.js} +52 -14
  2. package/dist/{_D1lZyfhn.js → _CbGuzk5A.js} +12 -12
  3. package/dist/_DkOK1JPO.js +2 -0
  4. package/dist/{_D4GY5TqP.js → _hKCo6x-v.js} +177 -177
  5. package/dist/index.mjs +749 -661
  6. package/dist/public/assets/{_C7PSMYJs.js → _B3oBmIsx.js} +1 -1
  7. package/dist/public/assets/_B3oBmIsx.js.br +0 -0
  8. package/dist/public/assets/{_fykxNNOE.js → _B41OOAWE.js} +1 -1
  9. package/dist/public/assets/_B41OOAWE.js.br +0 -0
  10. package/dist/public/assets/{_C0kLzTAa.js → _BECV_Fyx.js} +1 -1
  11. package/dist/public/assets/{_rMjBCCAH.js → _BIgywKPY.js} +1 -1
  12. package/dist/public/assets/_BIgywKPY.js.br +0 -0
  13. package/dist/public/assets/{_1Voq0Tvi.js → _BLw2dqrD.js} +1 -1
  14. package/dist/public/assets/_BLw2dqrD.js.br +0 -0
  15. package/dist/public/assets/{_D-SK8BwL2.js → _BQOF_Y8b2.js} +1 -1
  16. package/dist/public/assets/_BQOF_Y8b2.js.br +0 -0
  17. package/dist/public/assets/{_CFggeVG6.js → _BR-05adR.js} +1 -1
  18. package/dist/public/assets/_BR-05adR.js.br +0 -0
  19. package/dist/public/assets/{_Cx9nOZgC.js → _BUZroJmM.js} +1 -1
  20. package/dist/public/assets/_BUZroJmM.js.br +0 -0
  21. package/dist/public/assets/{_C0bTVsr0.js → _B_wtJBDf.js} +1 -1
  22. package/dist/public/assets/_B_wtJBDf.js.br +0 -0
  23. package/dist/public/assets/{_wpv1gKlN2.js → _BbzwTGW82.js} +1 -1
  24. package/dist/public/assets/_BbzwTGW82.js.br +0 -0
  25. package/dist/public/assets/{_CuUXgKMe.js → _BeFwce1T.js} +1 -1
  26. package/dist/public/assets/_BeFwce1T.js.br +0 -0
  27. package/dist/public/assets/{_4BZWp0-K2.js → _Bh9yRaD72.js} +1 -1
  28. package/dist/public/assets/_Bh9yRaD72.js.br +0 -0
  29. package/dist/public/assets/{_BeBGpe3Y.js → _BhCMFVhP.js} +1 -1
  30. package/dist/public/assets/_BhCMFVhP.js.br +0 -0
  31. package/dist/public/assets/{_BmbCyC-C2.js → _BiD1U5_T2.js} +1 -1
  32. package/dist/public/assets/_BiD1U5_T2.js.br +0 -0
  33. package/dist/public/assets/{_B57bXPt-.js → _Bje7gfya.js} +1 -1
  34. package/dist/public/assets/_Bje7gfya.js.br +0 -0
  35. package/dist/public/assets/{_Je1tk1xD.js → _Bk_G8M5C.js} +1 -1
  36. package/dist/public/assets/_Bk_G8M5C.js.br +0 -0
  37. package/dist/public/assets/{_DFe4lHOD.js → _BmC3EX2D.js} +1 -1
  38. package/dist/public/assets/_BmC3EX2D.js.br +0 -0
  39. package/dist/public/assets/{_qcjRMVcV.js → _BnbIEqHf.js} +1 -1
  40. package/dist/public/assets/_BnbIEqHf.js.br +0 -0
  41. package/dist/public/assets/{_piQSsSYC.js → _Br4zw_mV.js} +1 -1
  42. package/dist/public/assets/_Br4zw_mV.js.br +0 -0
  43. package/dist/public/assets/{_D4nk-T8f.js → _BtwlJ5_o.js} +20 -20
  44. package/dist/public/assets/_BtwlJ5_o.js.br +0 -0
  45. package/dist/public/assets/{_BSczjQFi.js → _Bxewhqaw.js} +1 -1
  46. package/dist/public/assets/_Bxewhqaw.js.br +0 -0
  47. package/dist/public/assets/{_Co9NaFmf2.js → _C8yn_Acw2.js} +1 -1
  48. package/dist/public/assets/_C8yn_Acw2.js.br +0 -0
  49. package/dist/public/assets/{_DgEmFUpu2.js → _CAPotJs-2.js} +1 -1
  50. package/dist/public/assets/_CAPotJs-2.js.br +0 -0
  51. package/dist/public/assets/{_Clx5s-FJ.js → _CEnYcVq1.js} +1 -1
  52. package/dist/public/assets/_CEnYcVq1.js.br +0 -0
  53. package/dist/public/assets/{_PKA1Hpie.js → _CFFvNT1q.js} +1 -1
  54. package/dist/public/assets/_CFFvNT1q.js.br +0 -0
  55. package/dist/public/assets/{_DbBDq2j32.js → _CGMSNnL-2.js} +1 -1
  56. package/dist/public/assets/_CGMSNnL-2.js.br +0 -0
  57. package/dist/public/assets/{_BukPRfhq.js → _CHkkF2px.js} +1 -1
  58. package/dist/public/assets/_CHkkF2px.js.br +0 -0
  59. package/dist/public/assets/{_gv1nxzbM.js → _CIa8PHfy.js} +1 -1
  60. package/dist/public/assets/_CIa8PHfy.js.br +0 -0
  61. package/dist/public/assets/{_CLZCTIA_.js → _CJEPOhMj.js} +1 -1
  62. package/dist/public/assets/_CJEPOhMj.js.br +0 -0
  63. package/dist/public/assets/{_IcgmyRGa.js → _CJnIf-SF.js} +1 -1
  64. package/dist/public/assets/_CJnIf-SF.js.br +0 -0
  65. package/dist/public/assets/{_Cn3z63nF.js → _CSixW3RB.js} +1 -1
  66. package/dist/public/assets/_CSixW3RB.js.br +0 -0
  67. package/dist/public/assets/{_BOV1NV0A.js → _CWA7J2mn.js} +1 -1
  68. package/dist/public/assets/_CWA7J2mn.js.br +0 -0
  69. package/dist/public/assets/{_CKxp-ONU.js → _CZe9PNFm.js} +1 -1
  70. package/dist/public/assets/_CZe9PNFm.js.br +0 -0
  71. package/dist/public/assets/{_ZdxrEY9r.js → _C_P5f4EK.js} +1 -1
  72. package/dist/public/assets/_C_P5f4EK.js.br +0 -0
  73. package/dist/public/assets/{_BLBbZB1M2.js → _CaAVXtkO2.js} +1 -1
  74. package/dist/public/assets/_CaAVXtkO2.js.br +0 -0
  75. package/dist/public/assets/{_DS3RjflW2.js → _CbNXWLgc2.js} +1 -1
  76. package/dist/public/assets/_CbNXWLgc2.js.br +0 -0
  77. package/dist/public/assets/{_CmuJjNdE2.js → _Cc65kW932.js} +1 -1
  78. package/dist/public/assets/{_DEsuWejQ2.js → _CdH2klbl2.js} +1 -1
  79. package/dist/public/assets/_CdH2klbl2.js.br +0 -0
  80. package/dist/public/assets/{_DJ-Aqdke.js → _CkXiLyKj.js} +1 -1
  81. package/dist/public/assets/_CkXiLyKj.js.br +0 -0
  82. package/dist/public/assets/{_BIOoG2MW.js → _CkepOsOW.js} +1 -1
  83. package/dist/public/assets/_CkepOsOW.js.br +0 -0
  84. package/dist/public/assets/{_DfhdqIhr2.js → _CrDF0eeY2.js} +1 -1
  85. package/dist/public/assets/_CrDF0eeY2.js.br +0 -0
  86. package/dist/public/assets/{_-_1uzCbj.js → _Cx9GIPHc.js} +1 -1
  87. package/dist/public/assets/_Cx9GIPHc.js.br +0 -0
  88. package/dist/public/assets/{_DnOz7d4b.js → _Cy8XPyIc.js} +1 -1
  89. package/dist/public/assets/_Cy8XPyIc.js.br +0 -0
  90. package/dist/public/assets/{__aTzeBpz2.js → _D1sMicdw2.js} +1 -1
  91. package/dist/public/assets/_D1sMicdw2.js.br +0 -0
  92. package/dist/public/assets/{_DEMbq_el2.js → _DFO3qhdR2.js} +1 -1
  93. package/dist/public/assets/_DFO3qhdR2.js.br +0 -0
  94. package/dist/public/assets/{_Bia5CO-O.js → _DI682Elr.js} +1 -1
  95. package/dist/public/assets/_DI682Elr.js.br +0 -0
  96. package/dist/public/assets/{_CCIN6X06.js → _DJ8uQzwM.js} +1 -1
  97. package/dist/public/assets/_DJ8uQzwM.js.br +0 -0
  98. package/dist/public/assets/{_CX5GSQ-I.js → _DOKljOTH.js} +1 -1
  99. package/dist/public/assets/_DOKljOTH.js.br +0 -0
  100. package/dist/public/assets/{_DNQ2MNaD2.js → _DOetJUUJ2.js} +1 -1
  101. package/dist/public/assets/_DOetJUUJ2.js.br +0 -0
  102. package/dist/public/assets/{_D1NB2_jG.js → _DPu8iLt3.js} +6 -6
  103. package/dist/public/assets/_DPu8iLt3.js.br +0 -0
  104. package/dist/public/assets/{_Cc7yyasY2.js → _DS4oOWLT2.js} +1 -1
  105. package/dist/public/assets/_DS4oOWLT2.js.br +0 -0
  106. package/dist/public/assets/{_DVwvtjCv.js → _DVPmBDiv.js} +1 -1
  107. package/dist/public/assets/_DVPmBDiv.js.br +0 -0
  108. package/dist/public/assets/{_CzanMhWk.js → _DVsvhhCG.js} +1 -1
  109. package/dist/public/assets/_DVsvhhCG.js.br +0 -0
  110. package/dist/public/assets/{_DOh6efC-.js → _DorHpq9j.js} +1 -1
  111. package/dist/public/assets/_DorHpq9j.js.br +0 -0
  112. package/dist/public/assets/{_ChicqFiW.js → _Dql2UFNc.js} +1 -1
  113. package/dist/public/assets/_Dql2UFNc.js.br +0 -0
  114. package/dist/public/assets/{_HNN3arNH2.js → _Ds0rpfZI2.js} +1 -1
  115. package/dist/public/assets/_Ds0rpfZI2.js.br +0 -0
  116. package/dist/public/assets/{_CNFCY1jn2.js → _DtgGBSSq2.js} +1 -1
  117. package/dist/public/assets/{_CdIi88c9.js → _DwGU_M9s.js} +1 -1
  118. package/dist/public/assets/_DwGU_M9s.js.br +0 -0
  119. package/dist/public/assets/{_ax03flRa.js → _DwT8V2US.js} +1 -1
  120. package/dist/public/assets/_DwT8V2US.js.br +0 -0
  121. package/dist/public/assets/{_j-gweiPd.js → _Dz665X0g.js} +1 -1
  122. package/dist/public/assets/_Dz665X0g.js.br +0 -0
  123. package/dist/public/assets/{_0X2_Mv-q2.js → _FPrhjJGN2.js} +1 -1
  124. package/dist/public/assets/_FPrhjJGN2.js.br +0 -0
  125. package/dist/public/assets/{_DML6bFDl2.js → _FYqVfoUp2.js} +1 -1
  126. package/dist/public/assets/_FYqVfoUp2.js.br +0 -0
  127. package/dist/public/assets/{_DDHS9LUX2.js → _GQj_poV52.js} +1 -1
  128. package/dist/public/assets/_GQj_poV52.js.br +0 -0
  129. package/dist/public/assets/{_CRCEsPci.js → _Lj3aaNpd.js} +1 -1
  130. package/dist/public/assets/_Lj3aaNpd.js.br +0 -0
  131. package/dist/public/assets/{_uS_Hw2OQ.js → _Un9uXTqQ.js} +1 -1
  132. package/dist/public/assets/_Un9uXTqQ.js.br +0 -0
  133. package/dist/public/assets/{_DhBYsUk72.js → __YcMOMHo2.js} +1 -1
  134. package/dist/public/assets/__YcMOMHo2.js.br +0 -0
  135. package/dist/public/assets/{_CRucQQmw.js → _a9F3-2zU.js} +1 -1
  136. package/dist/public/assets/_a9F3-2zU.js.br +0 -0
  137. package/dist/public/assets/{_LohRrLVB.js → _ilBoZ9l9.js} +1 -1
  138. package/dist/public/assets/_ilBoZ9l9.js.br +0 -0
  139. package/dist/public/assets/{_BevHqZSj.js → _j9oyPgbB.js} +1 -1
  140. package/dist/public/assets/_j9oyPgbB.js.br +0 -0
  141. package/dist/public/assets/{_BL3XPexu.js → _la5VE3W4.js} +1 -1
  142. package/dist/public/assets/_la5VE3W4.js.br +0 -0
  143. package/dist/public/assets/{_C4Y720OO.js → _nR-jfrht.js} +1 -1
  144. package/dist/public/assets/_nR-jfrht.js.br +0 -0
  145. package/dist/public/assets/{_i5Fl_1GP2.js → _odilh0Si2.js} +1 -1
  146. package/dist/public/assets/_odilh0Si2.js.br +0 -0
  147. package/dist/public/assets/{_DwXf2pQ1.js → _osI_OYpe.js} +1 -1
  148. package/dist/public/assets/_osI_OYpe.js.br +0 -0
  149. package/dist/public/assets/{_BOcXuwtf.js → _uHbq-iwP.js} +1 -1
  150. package/dist/public/assets/_uHbq-iwP.js.br +0 -0
  151. package/dist/public/assets/{_CT3sl0JO2.js → _yDuqFLgJ2.js} +1 -1
  152. package/dist/public/assets/_yDuqFLgJ2.js.br +0 -0
  153. package/dist/public/assets/{_Buq4ye4t.js → _z9QRJCjN.js} +1 -1
  154. package/dist/public/assets/_z9QRJCjN.js.br +0 -0
  155. package/dist/public/assets/app-page-D8sTRvm0.css +1 -0
  156. package/dist/public/assets/app-page-D8sTRvm0.css.br +0 -0
  157. package/dist/public/assets/diff-view-wmRIejo2.css +1 -0
  158. package/dist/public/assets/diff-view-wmRIejo2.css.br +0 -0
  159. package/dist/public/assets/new-oVr2dYr3.js +1 -0
  160. package/dist/public/assets/settings-oVr2dYr3.js +1 -0
  161. package/dist/public/assets/w-oVr2dYr3.js +1 -0
  162. package/dist/public/assets/w._-BXx4vFQJ.js +1 -0
  163. package/dist/public/assets/w._-oVr2dYr3.js +1 -0
  164. package/lib/setup/agents.json +13 -0
  165. package/package.json +1 -1
  166. package/dist/_DjE4lBg7.js +0 -2
  167. package/dist/public/assets/_-_1uzCbj.js.br +0 -0
  168. package/dist/public/assets/_0X2_Mv-q2.js.br +0 -0
  169. package/dist/public/assets/_1Voq0Tvi.js.br +0 -0
  170. package/dist/public/assets/_4BZWp0-K2.js.br +0 -0
  171. package/dist/public/assets/_B57bXPt-.js.br +0 -0
  172. package/dist/public/assets/_BIOoG2MW.js.br +0 -0
  173. package/dist/public/assets/_BL3XPexu.js.br +0 -0
  174. package/dist/public/assets/_BLBbZB1M2.js.br +0 -0
  175. package/dist/public/assets/_BOV1NV0A.js.br +0 -0
  176. package/dist/public/assets/_BOcXuwtf.js.br +0 -0
  177. package/dist/public/assets/_BSczjQFi.js.br +0 -0
  178. package/dist/public/assets/_BeBGpe3Y.js.br +0 -0
  179. package/dist/public/assets/_BevHqZSj.js.br +0 -0
  180. package/dist/public/assets/_Bia5CO-O.js.br +0 -0
  181. package/dist/public/assets/_BmbCyC-C2.js.br +0 -0
  182. package/dist/public/assets/_BukPRfhq.js.br +0 -0
  183. package/dist/public/assets/_Buq4ye4t.js.br +0 -0
  184. package/dist/public/assets/_C0bTVsr0.js.br +0 -0
  185. package/dist/public/assets/_C4Y720OO.js.br +0 -0
  186. package/dist/public/assets/_C7PSMYJs.js.br +0 -0
  187. package/dist/public/assets/_CCIN6X06.js.br +0 -0
  188. package/dist/public/assets/_CFggeVG6.js.br +0 -0
  189. package/dist/public/assets/_CKxp-ONU.js.br +0 -0
  190. package/dist/public/assets/_CLZCTIA_.js.br +0 -0
  191. package/dist/public/assets/_CRCEsPci.js.br +0 -0
  192. package/dist/public/assets/_CRucQQmw.js.br +0 -0
  193. package/dist/public/assets/_CT3sl0JO2.js.br +0 -0
  194. package/dist/public/assets/_CX5GSQ-I.js.br +0 -0
  195. package/dist/public/assets/_Cc7yyasY2.js.br +0 -0
  196. package/dist/public/assets/_CdIi88c9.js.br +0 -0
  197. package/dist/public/assets/_ChicqFiW.js.br +0 -0
  198. package/dist/public/assets/_Clx5s-FJ.js.br +0 -0
  199. package/dist/public/assets/_Cn3z63nF.js.br +0 -0
  200. package/dist/public/assets/_Co9NaFmf2.js.br +0 -0
  201. package/dist/public/assets/_CuUXgKMe.js.br +0 -0
  202. package/dist/public/assets/_Cx9nOZgC.js.br +0 -0
  203. package/dist/public/assets/_CzanMhWk.js.br +0 -0
  204. package/dist/public/assets/_D-SK8BwL2.js.br +0 -0
  205. package/dist/public/assets/_D1NB2_jG.js.br +0 -0
  206. package/dist/public/assets/_D4nk-T8f.js.br +0 -0
  207. package/dist/public/assets/_DDHS9LUX2.js.br +0 -0
  208. package/dist/public/assets/_DEMbq_el2.js.br +0 -0
  209. package/dist/public/assets/_DEsuWejQ2.js.br +0 -0
  210. package/dist/public/assets/_DFe4lHOD.js.br +0 -0
  211. package/dist/public/assets/_DJ-Aqdke.js.br +0 -0
  212. package/dist/public/assets/_DML6bFDl2.js.br +0 -0
  213. package/dist/public/assets/_DNQ2MNaD2.js.br +0 -0
  214. package/dist/public/assets/_DOh6efC-.js.br +0 -0
  215. package/dist/public/assets/_DS3RjflW2.js.br +0 -0
  216. package/dist/public/assets/_DVwvtjCv.js.br +0 -0
  217. package/dist/public/assets/_DbBDq2j32.js.br +0 -0
  218. package/dist/public/assets/_DfhdqIhr2.js.br +0 -0
  219. package/dist/public/assets/_DgEmFUpu2.js.br +0 -0
  220. package/dist/public/assets/_DhBYsUk72.js.br +0 -0
  221. package/dist/public/assets/_DnOz7d4b.js.br +0 -0
  222. package/dist/public/assets/_DwXf2pQ1.js.br +0 -0
  223. package/dist/public/assets/_HNN3arNH2.js.br +0 -0
  224. package/dist/public/assets/_IcgmyRGa.js.br +0 -0
  225. package/dist/public/assets/_Je1tk1xD.js.br +0 -0
  226. package/dist/public/assets/_LohRrLVB.js.br +0 -0
  227. package/dist/public/assets/_PKA1Hpie.js.br +0 -0
  228. package/dist/public/assets/_ZdxrEY9r.js.br +0 -0
  229. package/dist/public/assets/__aTzeBpz2.js.br +0 -0
  230. package/dist/public/assets/_ax03flRa.js.br +0 -0
  231. package/dist/public/assets/_fykxNNOE.js.br +0 -0
  232. package/dist/public/assets/_gv1nxzbM.js.br +0 -0
  233. package/dist/public/assets/_i5Fl_1GP2.js.br +0 -0
  234. package/dist/public/assets/_j-gweiPd.js.br +0 -0
  235. package/dist/public/assets/_piQSsSYC.js.br +0 -0
  236. package/dist/public/assets/_qcjRMVcV.js.br +0 -0
  237. package/dist/public/assets/_rMjBCCAH.js.br +0 -0
  238. package/dist/public/assets/_uS_Hw2OQ.js.br +0 -0
  239. package/dist/public/assets/_wpv1gKlN2.js.br +0 -0
  240. package/dist/public/assets/app-page-DmG8xzGs.css +0 -1
  241. package/dist/public/assets/app-page-DmG8xzGs.css.br +0 -0
  242. package/dist/public/assets/diff-view-BIcFG_jN.css +0 -1
  243. package/dist/public/assets/diff-view-BIcFG_jN.css.br +0 -0
  244. package/dist/public/assets/new-UbjAS00i.js +0 -1
  245. package/dist/public/assets/settings-UbjAS00i.js +0 -1
  246. package/dist/public/assets/w-UbjAS00i.js +0 -1
  247. package/dist/public/assets/w._-DezkAdF7.js +0 -1
  248. package/dist/public/assets/w._-UbjAS00i.js +0 -1
package/dist/index.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import { a as __toCommonJS, i as __require, n as __esmMin, o as __toESM, r as __exportAll, t as __commonJSMin } from "./_BMI-E3GI.js";
2
- import { $ as setSetting, A as setScrapedPhase, B as saveSubscription, C as agentBadge, D as agentMeta, E as agentLabel, F as manifest, G as agentChoices, H as subscribe, I as normalizeAccent, J as enabledAgents, K as allPrefs, L as setInstance, M as ACCENT_RE, N as getInstance, O as clearAgentPhase, P as iconSvg, Q as setPref, R as deleteSubscription, S as blankRow, T as agentFromCommand, U as subscriberCount, V as publish, W as subscriberJoins, X as preferredAgent, Y as getSetting, Z as setDisabledAgents, _ as tmuxName, _t as tmux, a as ensureTmuxServer, at as DEFAULT_GITHUB_HOST, b as readHookPayload, c as killWorkspaceSessions, ct as toolById, d as newSessionArgs, dt as get, et as doctor, ft as workspacePath, g as sessionStates, gt as run, h as sendToSession, ht as git, i as disposeSessions, it as which, j as setSessionViewers, k as setAgentPhase, l as listSessions, lt as all, m as renameSession, mt as gh, n as clearTmuxStarted, nt as miseVersions, o as getSession, ot as TOOLS, p as panePids, pt as TMUX_SOCKET, q as disabledAgents, r as createSession, rt as setupPath, s as killSession, st as agentById, t as cleanEnv, tt as ghKnownHosts, u as markTmuxStarted, ut as db, v as tmuxWasStarted, vt as config, w as agentFamily, x as reportsWorking, y as AGENTS, z as pushPublicKey } from "./_DYjQjuVZ.js";
3
- import { $ as _el_resume, A as iconBtnRow, B as _attr_input_value, C as icon_base_default, Ct as _trailers, D as btnLg, Dt as withPageAssets, E as setPrimaryHost, Et as attrTag, F as tone, G as _attrs, H as _attr_or, I as $global, J as _content, K as _attrs_partial, L as _attr, M as inputLg, N as metaTrunc, O as btnSm, Ot as writeScope, P as phase, Q as _el_read_error, R as _attr_class, S as icon_xmark_default, St as _to_text, T as repoWebUrl$1, Tt as _var, U as _attr_select_value, V as _attr_option_value, W as _attr_style, X as _dynamic_tag, Y as _content_resume, _ as icon_refresh_default, _t as _serialize_guard, at as _hoist_read_error, b as sectionCount$1, bt as _subscribe, ct as _if, d as sideNavOpen, dt as _resume_branch, et as _escape, f as workspaceTab, ft as _scope_id, g as icon_back_default, gt as _sep, h as icon_search_default, ht as _script, it as _hoist, j as iconBtnXs, lt as _peek_scope_id, m as rankRepos, mt as _scope_with_id, n as findInput, nt as _flush_head, ot as _html, pt as _scope_reason, q as _await, r as icon_sidebar_default, rt as _for_of, st as _id, t as findIconBtn, tt as _existing_scope, u as setWorkspaceTab, ut as _resume, v as iconBtn$2, vt as _serialize_if, w as repoLabel, wt as _try, x as toast_default, xt as _template, y as row, yt as _set_serialize_reason } from "./_D1lZyfhn.js";
2
+ import { $ as setSetting, A as setScrapedPhase, B as saveSubscription, C as agentBadge, D as agentMeta, E as agentLabel, F as manifest, G as agentChoices, H as subscribe, I as normalizeAccent, J as enabledAgents, K as allPrefs, L as setInstance, M as ACCENT_RE, N as getInstance, O as clearAgentPhase, P as iconSvg, Q as setPref, R as deleteSubscription, S as blankRow, T as agentFromCommand, U as subscriberCount, V as publish, W as subscriberJoins, X as preferredAgent, Y as getSetting, Z as setDisabledAgents, _ as tmuxName, _t as tmux, a as ensureTmuxServer, at as DEFAULT_GITHUB_HOST, b as readHookPayload, c as killWorkspaceSessions, ct as toolById, d as newSessionArgs, dt as get, et as doctor, ft as workspacePath, g as sessionStates, gt as run, h as sendToSession, ht as git, i as disposeSessions, it as which, j as setSessionViewers, k as setAgentPhase, l as listSessions, lt as all, m as renameSession, mt as gh, n as clearTmuxStarted, nt as miseVersions, o as getSession, ot as TOOLS, p as panePids, pt as TMUX_SOCKET, q as disabledAgents, r as createSession, rt as setupPath, s as killSession, st as agentById, t as cleanEnv, tt as ghKnownHosts, u as markTmuxStarted, ut as db, v as tmuxWasStarted, vt as config, w as agentFamily, x as reportsWorking, y as AGENTS, z as pushPublicKey } from "./_CExzMbX7.js";
3
+ import { $ as _el_resume, A as iconBtnRow, B as _attr_input_value, C as icon_base_default, Ct as _trailers, D as btnLg, Dt as withPageAssets, E as setPrimaryHost, Et as attrTag, F as tone, G as _attrs, H as _attr_or, I as $global, J as _content, K as _attrs_partial, L as _attr, M as inputLg, N as metaTrunc, O as btnSm, Ot as writeScope, P as phase, Q as _el_read_error, R as _attr_class, S as icon_xmark_default, St as _to_text, T as repoWebUrl$1, Tt as _var, U as _attr_select_value, V as _attr_option_value, W as _attr_style, X as _dynamic_tag, Y as _content_resume, _ as icon_refresh_default, _t as _serialize_guard, at as _hoist_read_error, b as sectionCount$1, bt as _subscribe, ct as _if, d as sideNavOpen, dt as _resume_branch, et as _escape, f as workspaceTab, ft as _scope_id, g as icon_back_default, gt as _sep, h as icon_search_default, ht as _script, it as _hoist, j as iconBtnXs, lt as _peek_scope_id, m as rankRepos, mt as _scope_with_id, n as findInput, nt as _flush_head, ot as _html, pt as _scope_reason, q as _await, r as icon_sidebar_default, rt as _for_of, st as _id, t as findIconBtn, tt as _existing_scope, u as setWorkspaceTab, ut as _resume, v as iconBtn$2, vt as _serialize_if, w as repoLabel, wt as _try, x as toast_default, xt as _template, y as row, yt as _set_serialize_reason } from "./_CbGuzk5A.js";
4
4
  import fs from "node:fs";
5
5
  import { createServer } from "node:http";
6
6
  import path from "node:path";
@@ -1972,6 +1972,23 @@ async function ensureBare(fullName) {
1972
1972
  return bare;
1973
1973
  }
1974
1974
  async function bareDefaultBranch(bare) {
1975
+ try {
1976
+ const out = await git([
1977
+ "ls-remote",
1978
+ "--symref",
1979
+ "origin",
1980
+ "HEAD"
1981
+ ], bare);
1982
+ const remote = /^ref: refs\/heads\/(\S+)\tHEAD/m.exec(out)?.[1];
1983
+ if (remote) {
1984
+ await git([
1985
+ "symbolic-ref",
1986
+ "HEAD",
1987
+ `refs/heads/${remote}`
1988
+ ], bare);
1989
+ return remote;
1990
+ }
1991
+ } catch {}
1975
1992
  return (await git(["symbolic-ref", "HEAD"], bare)).replace("refs/heads/", "");
1976
1993
  }
1977
1994
  /** `git rev-parse --verify` → oid, or null if the ref is missing. */
@@ -2638,8 +2655,134 @@ async function graphql(query, host = DEFAULT_HOST) {
2638
2655
  return body.data;
2639
2656
  }
2640
2657
  //#endregion
2658
+ //#region src/server/github.ts
2659
+ var TTL_MS$3 = 9e5;
2660
+ /** github.com keeps the historical file name; Enterprise hosts get their own. */
2661
+ var cachePath = (host) => path.join(config.dataDir, host === DEFAULT_HOST ? "repos.json" : `repos.${host}.json`);
2662
+ /**
2663
+ * User's repos plus every org's on every configured host, merged and cached
2664
+ * (in memory, persisted to disk across restarts). Cached results are served
2665
+ * immediately no matter their age, with a background revalidate when stale
2666
+ * — only an explicit refresh or an empty cache blocks. Hosts are
2667
+ * independent: a signed-out Enterprise server costs its own repos, never
2668
+ * github.com's.
2669
+ */
2670
+ async function repoCatalog(refresh = false) {
2671
+ const hosts = configuredHosts();
2672
+ const parts = await Promise.all(hosts.map((host) => catalog(host, refresh).catch(() => {
2673
+ if (host === DEFAULT_HOST && refresh) throw new Error(`gh repo listing failed`);
2674
+ return catalog.get(host) ?? null;
2675
+ })));
2676
+ const repos = parts.flatMap((c) => c?.repos ?? []);
2677
+ return {
2678
+ fetchedAt: Math.min(...parts.map((c) => c?.fetchedAt ?? Date.now())),
2679
+ repos: repos.sort((a, b) => a.nameWithOwner.localeCompare(b.nameWithOwner))
2680
+ };
2681
+ }
2682
+ var catalog = swr(TTL_MS$3, fetchCatalog, readDiskCache);
2683
+ function readDiskCache(host) {
2684
+ try {
2685
+ const cached = JSON.parse(fs.readFileSync(cachePath(host), "utf8"));
2686
+ if (!Array.isArray(cached?.repos)) return void 0;
2687
+ for (const r of cached.repos) r.host ||= host;
2688
+ return {
2689
+ at: cached.fetchedAt,
2690
+ value: cached
2691
+ };
2692
+ } catch {
2693
+ return;
2694
+ }
2695
+ }
2696
+ async function fetchCatalog(host) {
2697
+ let partial = false;
2698
+ const orgs = (await gh([
2699
+ "api",
2700
+ "user/orgs",
2701
+ "--jq",
2702
+ ".[].login"
2703
+ ], host).catch(() => {
2704
+ partial = true;
2705
+ return "";
2706
+ })).split("\n").filter(Boolean);
2707
+ const lists = await Promise.all([void 0, ...orgs].map((owner) => gh([
2708
+ "repo",
2709
+ "list",
2710
+ ...owner ? [owner] : [],
2711
+ "--limit",
2712
+ "500",
2713
+ "--json",
2714
+ "nameWithOwner,defaultBranchRef,isArchived,parent"
2715
+ ], host).catch(() => {
2716
+ partial = true;
2717
+ return "[]";
2718
+ })));
2719
+ const byName = /* @__PURE__ */ new Map();
2720
+ for (const out of lists) for (const r of JSON.parse(out)) byName.set(r.nameWithOwner, {
2721
+ nameWithOwner: joinRepo(host, r.nameWithOwner),
2722
+ host,
2723
+ defaultBranch: r.defaultBranchRef?.name || "main",
2724
+ isArchived: !!r.isArchived,
2725
+ parent: r.parent ? joinRepo(host, `${r.parent.owner.login}/${r.parent.name}`) : null
2726
+ });
2727
+ const repos = [...byName.values()].sort((a, b) => a.nameWithOwner.localeCompare(b.nameWithOwner));
2728
+ const catalog = {
2729
+ fetchedAt: Date.now(),
2730
+ repos
2731
+ };
2732
+ if (partial) {
2733
+ if (readDiskCache(host)) throw new Error("gh repo listing failed");
2734
+ return catalog;
2735
+ }
2736
+ const tmp = cachePath(host) + ".tmp";
2737
+ fs.writeFileSync(tmp, JSON.stringify(catalog));
2738
+ fs.renameSync(tmp, cachePath(host));
2739
+ return catalog;
2740
+ }
2741
+ /** Branch names for a repo (for base-branch selection). */
2742
+ var repoBranches = (fullName) => branches(fullName);
2743
+ /** Upstream `[host/]owner/name` when the repo is a fork, else null. A PR
2744
+ * opened from a fork lives in the upstream repo, so PR search needs this to
2745
+ * know where else to look. The catalog answers from disk for listed repos
2746
+ * (the status batch asks for every active repo at once, and must not fan
2747
+ * out into per-repo REST calls on a cold start); the per-repo lookup covers
2748
+ * repos outside it. Failures resolve to null (and age out with the TTL) —
2749
+ * a blip here must cost fork PRs, not the whole status tick. */
2750
+ async function repoParent(fullName) {
2751
+ const hit = (await repoCatalog().catch(() => null))?.repos.find((r) => r.nameWithOwner === fullName);
2752
+ if (hit && hit.parent !== void 0) return hit.parent;
2753
+ return (await repoMeta(fullName)).parent;
2754
+ }
2755
+ /** The repo's default branch, or null when the lookup failed. */
2756
+ var repoDefaultBranch = async (fullName) => (await repoMeta(fullName)).defaultBranch;
2757
+ var repoMeta = swr(36e5, async (fullName) => {
2758
+ const { host, name } = splitRepo(fullName);
2759
+ const out = await gh([
2760
+ "api",
2761
+ `repos/${name}`,
2762
+ "--jq",
2763
+ "{parent: (.parent.full_name // null), default: .default_branch}"
2764
+ ], host).catch(() => "");
2765
+ let parsed = {};
2766
+ try {
2767
+ parsed = JSON.parse(out);
2768
+ } catch {}
2769
+ return {
2770
+ parent: parsed.parent ? joinRepo(host, parsed.parent) : null,
2771
+ defaultBranch: parsed.default || null
2772
+ };
2773
+ });
2774
+ var branches = swr(3e5, async (fullName) => {
2775
+ const { host, name } = splitRepo(fullName);
2776
+ return (await gh([
2777
+ "api",
2778
+ `repos/${name}/branches?per_page=100`,
2779
+ "--jq",
2780
+ ".[].name"
2781
+ ], host)).split("\n").filter(Boolean);
2782
+ });
2783
+ //#endregion
2641
2784
  //#region src/server/prs.ts
2642
- var TTL_MS$3 = 12e4;
2785
+ var TTL_MS$2 = 12e4;
2643
2786
  /** PRs whose head is the workspace branch or one of its `-topic` lanes.
2644
2787
  * `exclude` lists other workspaces' branches — slugs are user-chosen, so
2645
2788
  * another workspace's branch can extend this prefix and its PRs must not
@@ -2656,10 +2799,12 @@ var branchKey = (fullName, branch) => `${fullName}#${branch}`;
2656
2799
  * a recency window over all of a repo's PRs, fetched roughly twice what it
2657
2800
  * kept here and still aged a quiet workspace out on a busy repo.
2658
2801
  * Key: `fullName#branch`. */
2659
- var branchPrs = swr(TTL_MS$3, (key, refresh) => {
2802
+ var branchPrs = swr(TTL_MS$2, async (key, refresh) => {
2660
2803
  const sep = key.indexOf("#");
2661
- const { host, name } = splitRepo(key.slice(0, sep));
2662
- return searchPrs(host, [name], [key.slice(sep + 1)], refresh);
2804
+ const fullName = key.slice(0, sep);
2805
+ const { host, name } = splitRepo(fullName);
2806
+ const upstream = await repoParent(fullName);
2807
+ return (await searchPrs(host, upstream ? [name, splitRepo(upstream).name] : [name], [key.slice(sep + 1)], refresh)).filter((n) => ownsNode(n, fullName, upstream));
2663
2808
  });
2664
2809
  /** A workspace repo's PRs, minus any belonging to a workspace whose branch
2665
2810
  * extends this one's. */
@@ -2690,6 +2835,20 @@ function inHotWindow() {
2690
2835
  * and `headRef { oid }` is not even a field, so GitHub answers 200 with an
2691
2836
  * `errors` array and no `data`. */
2692
2837
  var GQL_PR_FIELDS = "number title url headRefName baseRefName isDraft state headRefOid";
2838
+ /** Does this search hit belong to `fullName`'s workspace repo? Directly when
2839
+ * the PR lives in that repo *with its head branch there too*; via the fork
2840
+ * case when it lives in `upstream` with its head on the fork. The head check
2841
+ * on both arms keeps one PR from being claimed twice when a workspace holds
2842
+ * a fork and its upstream, and keeps a same-named branch pushed by someone
2843
+ * else's fork from being claimed at all. A null headRepository (head repo
2844
+ * deleted) stays with the PR's own repo. */
2845
+ function ownsNode(n, fullName, upstream) {
2846
+ const head = n.headRepository?.nameWithOwner;
2847
+ return n.repository.nameWithOwner === fullName && (!head || head === fullName) || !!upstream && n.repository.nameWithOwner === upstream && head === fullName;
2848
+ }
2849
+ /** Dedup key: PR numbers restart per repo, and a fork target's list spans
2850
+ * the fork and its upstream. */
2851
+ var nodeKey = (p) => `${p.repository.nameWithOwner}#${p.number}`;
2693
2852
  /** Search's `head:` matches a branch *and* its `-topic` lanes, so one term
2694
2853
  * covers a whole workspace, and repeated terms are OR'd within a qualifier
2695
2854
  * while different qualifiers are AND'd — `repo:a repo:b head:x head:y`
@@ -2708,7 +2867,7 @@ var OPEN_FIRST = 100;
2708
2867
  * (every workspace's, in one request), so it is followed — bounded, because
2709
2868
  * an unbounded follow is a way to hang the status tick on a bad query. */
2710
2869
  var MAX_OPEN_PAGES = 4;
2711
- var searchField = (alias, query, first, after) => `${alias}: search(query: ${JSON.stringify(query)}, type: ISSUE, first: ${first}${after ? `, after: ${JSON.stringify(after)}` : ""}) { pageInfo { hasNextPage endCursor } nodes { ... on PullRequest { ${GQL_PR_FIELDS} repository { nameWithOwner } } } }`;
2870
+ var searchField = (alias, query, first, after) => `${alias}: search(query: ${JSON.stringify(query)}, type: ISSUE, first: ${first}${after ? `, after: ${JSON.stringify(after)}` : ""}) { pageInfo { hasNextPage endCursor } nodes { ... on PullRequest { ${GQL_PR_FIELDS} repository { nameWithOwner } headRepository { nameWithOwner } } } }`;
2712
2871
  /** Every PR on the given branches (and their lanes) across the given repos
2713
2872
  * of one host (`repos` are bare `owner/name`). `refresh` is accepted for the
2714
2873
  * swr signature; freshness here is GitHub's, not ours. Nodes come back with
@@ -2724,7 +2883,8 @@ async function searchPrs(host, repos, branches, _refresh) {
2724
2883
  const done = data.done;
2725
2884
  for (const node of [...open?.nodes ?? [], ...done?.nodes ?? []]) if (node?.number) out.push({
2726
2885
  ...node,
2727
- repository: { nameWithOwner: joinRepo(host, node.repository.nameWithOwner) }
2886
+ repository: { nameWithOwner: joinRepo(host, node.repository.nameWithOwner) },
2887
+ headRepository: node.headRepository ? { nameWithOwner: joinRepo(host, node.headRepository.nameWithOwner) } : null
2728
2888
  });
2729
2889
  if (!open?.pageInfo.hasNextPage || !open.pageInfo.endCursor) break;
2730
2890
  cursor = open.pageInfo.endCursor;
@@ -2738,10 +2898,14 @@ async function refreshPrsBatch(targets, force = false) {
2738
2898
  const prevBatch = lastBatch;
2739
2899
  lastBatch = Date.now();
2740
2900
  try {
2901
+ const upstreams = new Map(await Promise.all(wanted.map(async (t) => [t.fullName, await repoParent(t.fullName)])));
2741
2902
  const byHost = /* @__PURE__ */ new Map();
2742
2903
  for (const t of wanted) {
2743
2904
  const { host, name } = splitRepo(t.fullName);
2744
- byHost.set(host, (byHost.get(host) || /* @__PURE__ */ new Set()).add(name));
2905
+ const names = (byHost.get(host) || /* @__PURE__ */ new Set()).add(name);
2906
+ const upstream = upstreams.get(t.fullName);
2907
+ if (upstream) names.add(splitRepo(upstream).name);
2908
+ byHost.set(host, names);
2745
2909
  }
2746
2910
  const branchesAll = [...new Set(wanted.map((t) => t.branch))];
2747
2911
  const results = await Promise.all([...byHost].map(([host, names]) => searchPrs(host, [...names], branchesAll).catch((err) => {
@@ -2755,12 +2919,12 @@ async function refreshPrsBatch(targets, force = false) {
2755
2919
  if (failedHosts.has(splitRepo(target.fullName).host)) continue;
2756
2920
  const foreign = branches.filter((b) => b !== target.branch);
2757
2921
  const key = branchKey(target.fullName, target.branch);
2758
- const incoming = prsForBranchPrefix(nodes.filter((n) => n.repository.nameWithOwner === target.fullName), target.branch, foreign);
2922
+ const incoming = prsForBranchPrefix(nodes.filter((n) => ownsNode(n, target.fullName, upstreams.get(target.fullName) ?? null)), target.branch, foreign);
2759
2923
  const open = incoming.filter((p) => p.state === "OPEN");
2760
- const openNums = new Set(open.map((p) => p.number));
2924
+ const openKeys = new Set(open.map(nodeKey));
2761
2925
  const done = /* @__PURE__ */ new Map();
2762
- for (const p of branchPrs.get(key) ?? []) if (p.state !== "OPEN" && !openNums.has(p.number)) done.set(p.number, p);
2763
- for (const p of incoming) if (p.state !== "OPEN" && !openNums.has(p.number)) done.set(p.number, p);
2926
+ for (const p of branchPrs.get(key) ?? []) if (p.state !== "OPEN" && !openKeys.has(nodeKey(p))) done.set(nodeKey(p), p);
2927
+ for (const p of incoming) if (p.state !== "OPEN" && !openKeys.has(nodeKey(p))) done.set(nodeKey(p), p);
2764
2928
  branchPrs.set(key, [...open, ...done.values()]);
2765
2929
  }
2766
2930
  return true;
@@ -2836,7 +3000,7 @@ var exists = (file) => fsp.stat(file).then(() => true, () => false);
2836
3000
  var isDir = (file) => fsp.stat(file).then((s) => s.isDirectory(), () => false);
2837
3001
  //#endregion
2838
3002
  //#region src/server/status.ts
2839
- var TTL_MS$2 = 2e3;
3003
+ var TTL_MS$1 = 2e3;
2840
3004
  var snapshot$1 = null;
2841
3005
  var inflight = null;
2842
3006
  var snapshotGen = 0;
@@ -2848,7 +3012,7 @@ function invalidateSnapshot() {
2848
3012
  inflight = null;
2849
3013
  }
2850
3014
  function statusForAll() {
2851
- if (snapshot$1 && Date.now() - snapshot$1.at < TTL_MS$2) return Promise.resolve(snapshot$1.value);
3015
+ if (snapshot$1 && Date.now() - snapshot$1.at < TTL_MS$1) return Promise.resolve(snapshot$1.value);
2852
3016
  if (!inflight) {
2853
3017
  const gen = snapshotGen;
2854
3018
  const run = computeStatus().then((value) => {
@@ -3185,29 +3349,29 @@ function applyInstance(inst) {
3185
3349
  }
3186
3350
  //#endregion
3187
3351
  //#region src/tags/settings-page.css.ts
3188
- var content$2 = "_bI _bk _bl";
3189
- var agentGrid = "_bM _bv";
3190
- var toolGrid = "_bW _bv";
3352
+ var content$2 = "_b_ _bk _bl";
3353
+ var agentGrid = "_cd _bv";
3354
+ var toolGrid = "_cn _bv";
3191
3355
  //#endregion
3192
3356
  //#region src/tags/page-head.marko
3193
- var page_head_default = _template("p", (input) => {
3357
+ var page_head_default = _template("q", (input) => {
3194
3358
  const $scope0_reason = _scope_reason(), $sg__input_backHref__OR__input_onBack__OR__input_meta__OR__input_actions = _serialize_guard($scope0_reason, 3), $sg__input_meta = _serialize_guard($scope0_reason, 6), $sg__input_actions = _serialize_guard($scope0_reason, 7), $si__input_backHref__OR__input_onBack = _serialize_if($scope0_reason, 1), $si__input_meta = _serialize_if($scope0_reason, 6), $si__input_actions = _serialize_if($scope0_reason, 7);
3195
3359
  const $scope0_id = _scope_id();
3196
3360
  _html(`<header${_attr_class("_bm")}>`);
3197
3361
  _if(() => {
3198
3362
  if (input.backHref) {
3199
3363
  const $scope1_id = _scope_id();
3200
- _html(`<a${_attr("href", input.backHref)}${_attr_class([iconBtnRow, "_em"])}${_attr_or("title", input.backTitle, " title=\"Back (Esc)\"")}${_attr_or("aria-label", input.backTitle, " aria-label=Back")}>`);
3364
+ _html(`<a${_attr("href", input.backHref)}${_attr_class([iconBtnRow, "_cH"])}${_attr_or("title", input.backTitle, " title=\"Back (Esc)\"")}${_attr_or("aria-label", input.backTitle, " aria-label=Back")}>`);
3201
3365
  icon_back_default({ size: 16 });
3202
3366
  _html(`</a>${_el_resume($scope1_id, "a", _serialize_guard($scope0_reason, 0))}`);
3203
3367
  _serialize_if($scope0_reason, 2) && writeScope($scope1_id, { _: _serialize_if($scope0_reason, 0) && _scope_with_id($scope0_id) });
3204
3368
  return 0;
3205
3369
  } else if (input.onBack) {
3206
3370
  const $scope2_id = _scope_id();
3207
- _html(`<button${_attr_class([iconBtnRow, "_em"])}${_attr_or("title", input.backTitle, " title=\"Back (Esc)\"")}${_attr_or("aria-label", input.backTitle, " aria-label=Back")}>`);
3371
+ _html(`<button${_attr_class([iconBtnRow, "_cH"])}${_attr_or("title", input.backTitle, " title=\"Back (Esc)\"")}${_attr_or("aria-label", input.backTitle, " aria-label=Back")}>`);
3208
3372
  icon_back_default({ size: 16 });
3209
3373
  _html(`</button>${_el_resume($scope2_id, "a")}`);
3210
- _script($scope2_id, "p0");
3374
+ _script($scope2_id, "q0");
3211
3375
  writeScope($scope2_id, { _: _scope_with_id($scope0_id) });
3212
3376
  return 1;
3213
3377
  }
@@ -3245,7 +3409,7 @@ var page_head_default = _template("p", (input) => {
3245
3409
  });
3246
3410
  //#endregion
3247
3411
  //#region src/tags/icons/icon-agent.marko
3248
- var icon_agent_default = _template("D", (input) => {
3412
+ var icon_agent_default = _template("E", (input) => {
3249
3413
  const $scope0_reason = _scope_reason(), $sg__input_agent = _serialize_guard($scope0_reason, 2), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0), $si__input_size__OR__input_class = _serialize_if($scope0_reason, 0), $si__input_size__OR__input_agent__OR__input_class = _serialize_if($scope0_reason, 1), $si__input_agent = _serialize_if($scope0_reason, 2);
3250
3414
  const $scope0_id = _scope_id();
3251
3415
  const $badge__closures = /* @__PURE__ */ new Set();
@@ -3295,7 +3459,7 @@ var icon_agent_default = _template("D", (input) => {
3295
3459
  n: $badge__closures
3296
3460
  });
3297
3461
  });
3298
- var usageNote = "_d4 _S";
3462
+ var usageNote = "_c4 _S";
3299
3463
  //#endregion
3300
3464
  //#region src/tags/usage-meters.marko
3301
3465
  function duration(ms) {
@@ -3315,15 +3479,15 @@ function resetLabel(iso, stale) {
3315
3479
  if (ms <= 0) return stale ? null : "now";
3316
3480
  return duration(ms);
3317
3481
  }
3318
- var usage_meters_default = _template("A", (input) => {
3482
+ var usage_meters_default = _template("B", (input) => {
3319
3483
  const $scope0_reason = _scope_reason(), $sg__input_agent__OR__input_hideName = _serialize_guard($scope0_reason, 0), $sg__input_agent = _serialize_guard($scope0_reason, 1), $si__input_agent = _serialize_if($scope0_reason, 1), $sg__input_hideName = _serialize_guard($scope0_reason, 2), $si__input_agent__OR__input_hideName = _serialize_if($scope0_reason, 0);
3320
3484
  const $scope0_id = _scope_id();
3321
3485
  const agent = input.agent;
3322
- _html(`<div${_attr_class(["_dY", { ["_dZ"]: input.hideName }])}><div${_attr_class("_d0")}>`);
3486
+ _html(`<div${_attr_class(["_cY", { ["_cZ"]: input.hideName }])}><div${_attr_class("_c0")}>`);
3323
3487
  _if(() => {
3324
3488
  if (!input.hideName) {
3325
3489
  const $scope1_id = _scope_id();
3326
- _html(`<strong${_attr_class("_ei")}>${_escape(agent.agent)}${_el_resume($scope1_id, "b", $sg__input_agent)}</strong>`);
3490
+ _html(`<strong${_attr_class("_di")}>${_escape(agent.agent)}${_el_resume($scope1_id, "b", $sg__input_agent)}</strong>`);
3327
3491
  $si__input_agent__OR__input_hideName && writeScope($scope1_id, { _: $si__input_agent && _scope_with_id($scope0_id) });
3328
3492
  return 0;
3329
3493
  }
@@ -3331,7 +3495,7 @@ var usage_meters_default = _template("A", (input) => {
3331
3495
  _if(() => {
3332
3496
  if (agent.plan && agent.plan.toLowerCase() !== agent.agent.toLowerCase()) {
3333
3497
  const $scope2_id = _scope_id();
3334
- _html(`<span${_attr_class("_d1")}>${_escape(agent.plan.replace(/^default_/, "").replaceAll("_", " "))}${_el_resume($scope2_id, "b", $sg__input_agent)}</span>`);
3498
+ _html(`<span${_attr_class("_c1")}>${_escape(agent.plan.replace(/^default_/, "").replaceAll("_", " "))}${_el_resume($scope2_id, "b", $sg__input_agent)}</span>`);
3335
3499
  $si__input_agent && writeScope($scope2_id, { _: _scope_with_id($scope0_id) });
3336
3500
  return 0;
3337
3501
  }
@@ -3339,19 +3503,19 @@ var usage_meters_default = _template("A", (input) => {
3339
3503
  _if(() => {
3340
3504
  if (agent.stale_seconds != null) {
3341
3505
  const $scope3_id = _scope_id();
3342
- _html(`<span${_attr_class("_d2")}${_attr("title", `${agent.note || "provider unreachable"}. Last cached numbers, ${duration(agent.stale_seconds * 1e3)} old`)}>⚠ ${_sep($sg__input_agent)}${_escape(duration(agent.stale_seconds * 1e3))}${_el_resume($scope3_id, "b", $sg__input_agent)} old</span>${_el_resume($scope3_id, "a", $sg__input_agent)}`);
3506
+ _html(`<span${_attr_class("_c2")}${_attr("title", `${agent.note || "provider unreachable"}. Last cached numbers, ${duration(agent.stale_seconds * 1e3)} old`)}>⚠ ${_sep($sg__input_agent)}${_escape(duration(agent.stale_seconds * 1e3))}${_el_resume($scope3_id, "b", $sg__input_agent)} old</span>${_el_resume($scope3_id, "a", $sg__input_agent)}`);
3343
3507
  $si__input_agent && writeScope($scope3_id, { _: _scope_with_id($scope0_id) });
3344
3508
  return 0;
3345
3509
  }
3346
3510
  }, $scope0_id, "e", $sg__input_agent, $sg__input_agent, $sg__input_agent__OR__input_hideName, 0, 1);
3347
- _html(`</div><div${_attr_class(["_d3", { ["_ej"]: agent.stale_seconds != null }])}>`);
3511
+ _html(`</div><div${_attr_class(["_c3", { ["_dj"]: agent.stale_seconds != null }])}>`);
3348
3512
  _for_of(agent.windows || [], (win) => {
3349
3513
  const $scope4_id = _scope_id();
3350
3514
  const pct = pctText$1(win.used_percent);
3351
3515
  const label = resetLabel(win.resets_at, agent.stale_seconds != null);
3352
- const fillClass = win.used_percent >= 90 ? "_eb" : win.used_percent >= 70 ? "_ea" : win.used_percent >= 40 ? "_d_" : "_d9";
3353
- const pctClass = win.used_percent >= 90 ? "_eg" : win.used_percent >= 70 ? "_ef" : win.used_percent >= 40 ? "_ee" : "_ed";
3354
- _html(`<div${_attr_class("_d5")}${_attr("title", `${win.window}: ${pct} used${win.resets_at ? `, resets ${new Date(win.resets_at).toLocaleString()}` : ""}`)}><span${_attr_class("_d6")}>${_escape(win.window)}${_el_resume($scope4_id, "c", $sg__input_agent)}</span><span${_attr_class("_d7")}><span${_attr_class(["_d8", fillClass])}${_attr_style(`width:${Math.min(100, Math.max(2, win.used_percent))}%`)}></span>${_el_resume($scope4_id, "e", $sg__input_agent)}</span><span${_attr_class(["_ec", pctClass])}>${_escape(pct)}${_el_resume($scope4_id, "g", $sg__input_agent)}</span>${_el_resume($scope4_id, "f", $sg__input_agent)}<span${_attr_class("_eh")}>${label ? `↻ ${_escape(`${_to_text(label)}`)}` : ""}${_el_resume($scope4_id, "i", $sg__input_agent)}</span></div>${_el_resume($scope4_id, "a", $sg__input_agent)}`);
3516
+ const fillClass = win.used_percent >= 90 ? "_db" : win.used_percent >= 70 ? "_da" : win.used_percent >= 40 ? "_c_" : "_c9";
3517
+ const pctClass = win.used_percent >= 90 ? "_dg" : win.used_percent >= 70 ? "_df" : win.used_percent >= 40 ? "_de" : "_dd";
3518
+ _html(`<div${_attr_class("_c5")}${_attr("title", `${win.window}: ${pct} used${win.resets_at ? `, resets ${new Date(win.resets_at).toLocaleString()}` : ""}`)}><span${_attr_class("_c6")}>${_escape(win.window)}${_el_resume($scope4_id, "c", $sg__input_agent)}</span><span${_attr_class("_c7")}><span${_attr_class(["_c8", fillClass])}${_attr_style(`width:${Math.min(100, Math.max(2, win.used_percent))}%`)}></span>${_el_resume($scope4_id, "e", $sg__input_agent)}</span><span${_attr_class(["_dc", pctClass])}>${_escape(pct)}${_el_resume($scope4_id, "g", $sg__input_agent)}</span>${_el_resume($scope4_id, "f", $sg__input_agent)}<span${_attr_class("_dh")}>${label ? `↻ ${_escape(`${_to_text(label)}`)}` : ""}${_el_resume($scope4_id, "i", $sg__input_agent)}</span></div>${_el_resume($scope4_id, "a", $sg__input_agent)}`);
3355
3519
  $si__input_agent && writeScope($scope4_id, { _: _scope_with_id($scope0_id) });
3356
3520
  }, "window", $scope0_id, "g", $sg__input_agent, $sg__input_agent, $sg__input_agent, 0, 1);
3357
3521
  _if(() => {
@@ -3372,7 +3536,7 @@ var usage_meters_default = _template("A", (input) => {
3372
3536
  });
3373
3537
  //#endregion
3374
3538
  //#region src/tags/icons/icon-plus.marko
3375
- var icon_plus_default = _template("Q", (input) => {
3539
+ var icon_plus_default = _template("R", (input) => {
3376
3540
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
3377
3541
  const $scope0_id = _scope_id();
3378
3542
  _set_serialize_reason({
@@ -3389,7 +3553,7 @@ var icon_plus_default = _template("Q", (input) => {
3389
3553
  });
3390
3554
  //#endregion
3391
3555
  //#region src/tags/dialog-close.marko
3392
- var dialog_close_default = _template("d", (input) => {
3556
+ var dialog_close_default = _template("e", (input) => {
3393
3557
  const $scope0_reason = _scope_reason();
3394
3558
  const $scope0_id = _scope_id();
3395
3559
  const { content, ...htmlInput } = input;
@@ -3399,18 +3563,18 @@ var dialog_close_default = _template("d", (input) => {
3399
3563
  }, "a", $scope0_id, "button")}>`);
3400
3564
  _dynamic_tag($scope0_id, "b", content, {}, 0, 0, _serialize_guard($scope0_reason, 0));
3401
3565
  _html(`</button>${_el_resume($scope0_id, "a")}`);
3402
- _script($scope0_id, "d0");
3566
+ _script($scope0_id, "e0");
3403
3567
  writeScope($scope0_id, {});
3404
3568
  });
3405
3569
  //#endregion
3406
3570
  //#region src/tags/modal-view.marko
3407
- var modal_view_default = _template("n", (input) => {
3571
+ var modal_view_default = _template("o", (input) => {
3408
3572
  const $scope0_reason = _scope_reason(), $si__input_openChange__OR__input_footer = _serialize_if($scope0_reason, 1), $sg__input_openChange__OR__input_footer = _serialize_guard($scope0_reason, 1), $si__input_openChange = _serialize_if($scope0_reason, 5);
3409
3573
  const $scope0_id = _scope_id();
3410
3574
  const { label, class: inputClass, open: _open, openChange: _openChange, dismissable: _dismissable, content, footer, closedby: _closedby, onCancel: _onCancel, onClose: _onClose, "aria-label": inputAriaLabel, "aria-labelledby": inputLabelledBy, ...htmlInput } = input;
3411
3575
  const dismissable = input.dismissable !== false;
3412
3576
  let open = input.open;
3413
- _html(`<dialog${_attr_class(["_gm", inputClass])}${_attr("aria-labelledby", inputLabelledBy)}${inputLabelledBy ? _attr("aria-label", inputAriaLabel) : _attr("aria-label", inputAriaLabel || label)} closedby=${dismissable ? "any" : "none"}${_attrs_partial({
3577
+ _html(`<dialog${_attr_class(["_eZ", inputClass])}${_attr("aria-labelledby", inputLabelledBy)}${inputLabelledBy ? _attr("aria-label", inputAriaLabel) : _attr("aria-label", inputAriaLabel || label)} closedby=${dismissable ? "any" : "none"}${_attrs_partial({
3414
3578
  ...htmlInput,
3415
3579
  open: null
3416
3580
  }, {
@@ -3420,23 +3584,23 @@ var modal_view_default = _template("n", (input) => {
3420
3584
  closedby: 1,
3421
3585
  "on-cancel": 1,
3422
3586
  "on-close": 1
3423
- }, "a", $scope0_id, "dialog")}><div${_attr_class("_gn")}>`);
3587
+ }, "a", $scope0_id, "dialog")}><div${_attr_class("_e0")}>`);
3424
3588
  _dynamic_tag($scope0_id, "c", content, {}, 0, 0, _serialize_guard($scope0_reason, 6));
3425
3589
  _html("</div>");
3426
3590
  _if(() => {
3427
3591
  if (footer) {
3428
3592
  const $scope1_id = _scope_id();
3429
- _html(`<form method=dialog${_attr_class("_go")}>`);
3593
+ _html(`<form method=dialog${_attr_class("_e1")}>`);
3430
3594
  _dynamic_tag($scope1_id, "b", footer.content, {}, 0, 0, _serialize_guard($scope0_reason, 7));
3431
3595
  _html("</form>");
3432
3596
  $si__input_openChange__OR__input_footer && writeScope($scope1_id, { _: _serialize_if($scope0_reason, 7) && _scope_with_id($scope0_id) });
3433
3597
  return 0;
3434
3598
  } else if (input.openChange) {
3435
3599
  const $scope2_id = _scope_id();
3436
- _html(`<form method=dialog${_attr_class("_go")}>`);
3600
+ _html(`<form method=dialog${_attr_class("_e1")}>`);
3437
3601
  dialog_close_default({
3438
3602
  class: ["_o", "_p"],
3439
- content: _content("n0", () => {
3603
+ content: _content("o0", () => {
3440
3604
  _scope_reason();
3441
3605
  _scope_id();
3442
3606
  _html("Done");
@@ -3448,9 +3612,9 @@ var modal_view_default = _template("n", (input) => {
3448
3612
  }
3449
3613
  }, $scope0_id, "d", $sg__input_openChange__OR__input_footer, $sg__input_openChange__OR__input_footer, $sg__input_openChange__OR__input_footer, 0, 1);
3450
3614
  _html(`</dialog>${_el_resume($scope0_id, "a")}`);
3451
- _script($scope0_id, "n1");
3452
- _script($scope0_id, "n2");
3453
- _script($scope0_id, "n3");
3615
+ _script($scope0_id, "o1");
3616
+ _script($scope0_id, "o2");
3617
+ _script($scope0_id, "o3");
3454
3618
  writeScope($scope0_id, {
3455
3619
  h: $si__input_openChange && input.open,
3456
3620
  i: _serialize_if($scope0_reason, 0) && input.openChange,
@@ -3468,7 +3632,7 @@ var modal_view_default = _template("n", (input) => {
3468
3632
  });
3469
3633
  //#endregion
3470
3634
  //#region src/tags/prompt-dialog.marko
3471
- var prompt_dialog_default = _template("q", (input) => {
3635
+ var prompt_dialog_default = _template("r", (input) => {
3472
3636
  const $scope0_reason = _scope_reason(), $sg__input_label = _serialize_guard($scope0_reason, 1), $sg__input_openChange = _serialize_guard($scope0_reason, 3), $si__input_submitLabel = _serialize_if($scope0_reason, 4), $si__input_label = _serialize_if($scope0_reason, 1), $si__input_placeholder = _serialize_if($scope0_reason, 5);
3473
3637
  const $scope0_id = _scope_id();
3474
3638
  const $modalview_content__subscribers = /* @__PURE__ */ new Set();
@@ -3480,7 +3644,7 @@ var prompt_dialog_default = _template("q", (input) => {
3480
3644
  const submit = _resume(() => {
3481
3645
  const v = value.trim();
3482
3646
  if (v) input.onSubmit(v);
3483
- }, "q1", $scope0_id);
3647
+ }, "r1", $scope0_id);
3484
3648
  const titleId = _id();
3485
3649
  _set_serialize_reason({
3486
3650
  0: _serialize_guard($scope0_reason, 2),
@@ -3492,33 +3656,33 @@ var prompt_dialog_default = _template("q", (input) => {
3492
3656
  const $childScope = _peek_scope_id();
3493
3657
  modal_view_default({
3494
3658
  label: input.label,
3495
- class: "_ek",
3659
+ class: "_cI",
3496
3660
  open: input.open,
3497
3661
  openChange: input.openChange,
3498
3662
  "aria-labelledby": titleId,
3499
- footer: attrTag({ content: _content_resume("q5", () => {
3663
+ footer: attrTag({ content: _content_resume("r5", () => {
3500
3664
  _scope_reason();
3501
3665
  const $scope1_id = _scope_id();
3502
3666
  _html(`<button type=button${_attr_class(["_o", "_p"])}${_attr("disabled", !value.trim())}>${_escape(input.submitLabel || "OK")}${_el_resume($scope1_id, "b", _serialize_guard($scope0_reason, 4))}</button>${_el_resume($scope1_id, "a")}<div${_attr_class("_y")}></div>`);
3503
3667
  dialog_close_default({
3504
3668
  class: "_o",
3505
- content: _content("q2", () => {
3669
+ content: _content("r2", () => {
3506
3670
  _scope_reason();
3507
3671
  _scope_id();
3508
3672
  _html("Cancel");
3509
3673
  }, $scope1_id)
3510
3674
  });
3511
- _script($scope1_id, "q3");
3675
+ _script($scope1_id, "r3");
3512
3676
  _subscribe($value__closures, _subscribe($si__input_submitLabel && $input_submitLabel__closures, writeScope($scope1_id, { _: _scope_with_id($scope0_id) })));
3513
3677
  _resume_branch($scope1_id);
3514
3678
  }, $scope0_id) }),
3515
- content: _content("q6", () => {
3679
+ content: _content("r6", () => {
3516
3680
  _scope_reason();
3517
3681
  const $scope2_id = _scope_id();
3518
- _html(`<h2${_attr_class("_el")}${_attr("id", titleId)}>${_escape(input.label)}${_el_resume($scope2_id, "b", $sg__input_label)}</h2><input${_attr_input_value($scope2_id, "c", value, _resume((_new_value) => {
3682
+ _html(`<h2${_attr_class("_cJ")}${_attr("id", titleId)}>${_escape(input.label)}${_el_resume($scope2_id, "b", $sg__input_label)}</h2><input${_attr_input_value($scope2_id, "c", value, _resume((_new_value) => {
3519
3683
  value = _new_value;
3520
- }, "q0", $scope2_id))}${_attr("placeholder", input.placeholder)}>${_el_resume($scope2_id, "c")}`);
3521
- _script($scope2_id, "q4");
3684
+ }, "r0", $scope2_id))}${_attr("placeholder", input.placeholder)}>${_el_resume($scope2_id, "c")}`);
3685
+ _script($scope2_id, "r4");
3522
3686
  _subscribe($value__closures, _subscribe($si__input_placeholder && $input_placeholder__closures, _subscribe($si__input_label && $input_label__closures, _subscribe($modalview_content__subscribers, writeScope($scope2_id, {
3523
3687
  _: _scope_with_id($scope0_id),
3524
3688
  Cr: 1
@@ -3526,7 +3690,7 @@ var prompt_dialog_default = _template("q", (input) => {
3526
3690
  _resume_branch($scope2_id);
3527
3691
  }, $scope0_id)
3528
3692
  });
3529
- _script($scope0_id, "q7");
3693
+ _script($scope0_id, "r7");
3530
3694
  writeScope($scope0_id, {
3531
3695
  e: input.onSubmit,
3532
3696
  h: input.openChange,
@@ -3555,7 +3719,7 @@ function familyOf(usageAgent, families) {
3555
3719
  }
3556
3720
  var lastSetup = null;
3557
3721
  var lastUsage = null;
3558
- var settings_page_default = _template("t", (input) => {
3722
+ var settings_page_default = _template("u", (input) => {
3559
3723
  const $scope0_reason = _scope_reason(), $sg__input_backHref__OR__input_onExit = _serialize_guard($scope0_reason, 1), $sg__input_agents = _serialize_guard($scope0_reason, 4), $sg__input_instance_accent = _serialize_guard($scope0_reason, 5), $si__input_instance__OR__input_instanceChange = _serialize_if($scope0_reason, 0), $si__input_preferred = _serialize_if($scope0_reason, 2);
3560
3724
  const $scope0_id = _scope_id();
3561
3725
  const $setup_missing__closures = /* @__PURE__ */ new Set();
@@ -3594,28 +3758,28 @@ var settings_page_default = _template("t", (input) => {
3594
3758
  lastSetup = s;
3595
3759
  setPrimaryHost(s.github);
3596
3760
  input.setupChange?.(s);
3597
- }, "t5", $scope0_id);
3761
+ }, "u5", $scope0_id);
3598
3762
  const syncAgents = _resume(async () => {
3599
3763
  try {
3600
3764
  const snap = await api$6("/api/settings");
3601
3765
  input.agentsChange?.(snap.agents);
3602
3766
  if (snap.preferredAgent !== input.preferred) input.preferredChange?.(snap.preferredAgent);
3603
3767
  } catch {}
3604
- }, "t6", $scope0_id);
3768
+ }, "u6", $scope0_id);
3605
3769
  const loadSetup = _resume(async (refresh) => {
3606
3770
  try {
3607
3771
  applySetup(await api$6(`/api/setup${refresh ? "?refresh" : ""}`));
3608
3772
  } catch (err) {
3609
3773
  error = String(err.message || err);
3610
3774
  }
3611
- }, "t7", $scope0_id);
3775
+ }, "u7", $scope0_id);
3612
3776
  const loadSelf = _resume(async (refresh) => {
3613
3777
  try {
3614
3778
  const info = await api$6(`/api/setup/self${refresh ? "?refresh" : ""}`);
3615
3779
  self = info;
3616
3780
  if (info.updating) selfUpdating = true;
3617
3781
  } catch {}
3618
- }, "t8", $scope0_id);
3782
+ }, "u8", $scope0_id);
3619
3783
  const updateSelf = _resume(async () => {
3620
3784
  if (!self || selfUpdating) return;
3621
3785
  selfUpdating = true;
@@ -3639,7 +3803,7 @@ var settings_page_default = _template("t", (input) => {
3639
3803
  else selfUpdating = false;
3640
3804
  };
3641
3805
  setTimeout(tick, 4e3);
3642
- }, "t9", $scope0_id);
3806
+ }, "u9", $scope0_id);
3643
3807
  const loadUsage = _resume(async (refresh) => {
3644
3808
  try {
3645
3809
  usage = await api$6(`/api/usage${refresh ? "?refresh" : ""}`);
@@ -3647,23 +3811,23 @@ var settings_page_default = _template("t", (input) => {
3647
3811
  usage = { error: String(err.message || err) };
3648
3812
  }
3649
3813
  lastUsage = usage;
3650
- }, "t10", $scope0_id);
3814
+ }, "u10", $scope0_id);
3651
3815
  const refresh = _resume(async () => {
3652
3816
  refreshing = true;
3653
3817
  await Promise.all([loadSetup(true), loadSelf(true)]);
3654
3818
  refreshing = false;
3655
- }, "t11", $scope0_id);
3819
+ }, "u11", $scope0_id);
3656
3820
  const refreshUsage = _resume(async () => {
3657
3821
  usageRefreshing = true;
3658
3822
  await loadUsage(true);
3659
3823
  usageRefreshing = false;
3660
- }, "t12", $scope0_id);
3824
+ }, "u12", $scope0_id);
3661
3825
  const setActive = _resume((id, line) => {
3662
3826
  const next = new Map(active);
3663
3827
  if (line === null) next.delete(id);
3664
3828
  else next.set(id, line);
3665
3829
  active = next;
3666
- }, "t13", $scope0_id);
3830
+ }, "u13", $scope0_id);
3667
3831
  const run = _resume(async (id, action, version) => {
3668
3832
  if (active.has(id)) return;
3669
3833
  error = null;
@@ -3694,7 +3858,7 @@ var settings_page_default = _template("t", (input) => {
3694
3858
  watcher.stop();
3695
3859
  setActive(id, null);
3696
3860
  }
3697
- }, "t14", $scope0_id);
3861
+ }, "u14", $scope0_id);
3698
3862
  const changeHost = _resume(async (host, remove) => {
3699
3863
  hostBusy = true;
3700
3864
  error = null;
@@ -3713,10 +3877,10 @@ var settings_page_default = _template("t", (input) => {
3713
3877
  } finally {
3714
3878
  hostBusy = false;
3715
3879
  }
3716
- }, "t15", $scope0_id);
3880
+ }, "u15", $scope0_id);
3717
3881
  const runEach = _resume(async (ids, action) => {
3718
3882
  for (const id of ids) await run(id, action);
3719
- }, "t16", $scope0_id);
3883
+ }, "u16", $scope0_id);
3720
3884
  const setPreferred = _resume(async (agent) => {
3721
3885
  input.preferredChange?.(agent);
3722
3886
  try {
@@ -3728,7 +3892,7 @@ var settings_page_default = _template("t", (input) => {
3728
3892
  } catch (err) {
3729
3893
  error = String(err.message || err);
3730
3894
  }
3731
- }, "t17", $scope0_id);
3895
+ }, "u17", $scope0_id);
3732
3896
  const saveTimer = { id: 0 };
3733
3897
  const setInstance = _resume((patch) => {
3734
3898
  const next = {
@@ -3753,7 +3917,7 @@ var settings_page_default = _template("t", (input) => {
3753
3917
  error = String(err.message || err);
3754
3918
  }
3755
3919
  }, 300);
3756
- }, "t18", $scope0_id);
3920
+ }, "u18", $scope0_id);
3757
3921
  const setEnabled = _resume(async (id, on) => {
3758
3922
  if (!setup) return;
3759
3923
  const off = new Set(setup.agents.flatMap((f) => f.instances.filter((i) => !i.enabled).map((i) => i.id)));
@@ -3780,7 +3944,7 @@ var settings_page_default = _template("t", (input) => {
3780
3944
  } catch (err) {
3781
3945
  error = String(err.message || err);
3782
3946
  }
3783
- }, "t19", $scope0_id);
3947
+ }, "u19", $scope0_id);
3784
3948
  const search = _resume((q) => {
3785
3949
  query = q;
3786
3950
  clearTimeout(searchTimer.id);
@@ -3800,16 +3964,16 @@ var settings_page_default = _template("t", (input) => {
3800
3964
  if (query === q) searching = false;
3801
3965
  }
3802
3966
  }, 250);
3803
- }, "t0", $scope0_id);
3804
- const outdated = _resume((t) => !!(t.installed && t.latest && t.latest !== t.version), "t20");
3967
+ }, "u0", $scope0_id);
3968
+ const outdated = _resume((t) => !!(t.installed && t.latest && t.latest !== t.version), "u20");
3805
3969
  const tools = setup?.tools || [];
3806
3970
  const missingInstallable = tools.filter((t) => t.recommended && !t.installed && t.installable);
3807
3971
  const missingCount = tools.filter((t) => t.recommended && !t.installed).length;
3808
3972
  const outdatedIds = tools.filter(outdated).map((t) => t.id);
3809
3973
  const families = setup?.agents || [];
3810
3974
  const instanceIds = new Set(families.flatMap((f) => f.instances.map((i) => i.id)));
3811
- const accountsFor = _resume((id) => (usage?.agents || []).filter((u) => u.agent === id), "t21", $scope0_id);
3812
- const strayAccountsFor = _resume((f) => (usage?.agents || []).filter((u) => !instanceIds.has(u.agent) && familyOf(u.agent, families) === f.id), "t22", $scope0_id);
3975
+ const accountsFor = _resume((id) => (usage?.agents || []).filter((u) => u.agent === id), "u21", $scope0_id);
3976
+ const strayAccountsFor = _resume((f) => (usage?.agents || []).filter((u) => !instanceIds.has(u.agent) && familyOf(u.agent, families) === f.id), "u22", $scope0_id);
3813
3977
  const otherUsage = (usage?.agents || []).filter((u) => familyOf(u.agent, families) === null);
3814
3978
  const titleId = _id();
3815
3979
  const agentsId = _id();
@@ -3828,8 +3992,8 @@ var settings_page_default = _template("t", (input) => {
3828
3992
  title: "Settings",
3829
3993
  titleId,
3830
3994
  backHref: input.backHref,
3831
- onBack: input.onExit && _resume(() => input.onExit?.(), "t23", $scope0_id),
3832
- meta: attrTag({ content: _content_resume("t28", () => {
3995
+ onBack: input.onExit && _resume(() => input.onExit?.(), "u23", $scope0_id),
3996
+ meta: attrTag({ content: _content_resume("u28", () => {
3833
3997
  _scope_reason();
3834
3998
  const $scope5_id = _scope_id();
3835
3999
  _if(() => {
@@ -3840,12 +4004,12 @@ var settings_page_default = _template("t", (input) => {
3840
4004
  return 0;
3841
4005
  } else if (setup.ready) {
3842
4006
  const $scope47_id = _scope_id();
3843
- _html(`<span${_attr_class("_bK")}>Ready</span>. Tools, GitHub, and an agent are all in place.`);
4007
+ _html(`<span${_attr_class("_cb")}>Ready</span>. Tools, GitHub, and an agent are all in place.`);
3844
4008
  writeScope($scope47_id, {});
3845
4009
  return 1;
3846
4010
  } else {
3847
4011
  const $scope6_id = _scope_id();
3848
- _html(`<span${_attr_class("_bL")}>Not ready</span>. Missing <!>${_escape(setup.missing.map((m) => MISSING_LABEL[m] || m).join(", "))}${_el_resume($scope6_id, "b")}.`);
4012
+ _html(`<span${_attr_class("_cc")}>Not ready</span>. Missing <!>${_escape(setup.missing.map((m) => MISSING_LABEL[m] || m).join(", "))}${_el_resume($scope6_id, "b")}.`);
3849
4013
  _subscribe($setup_missing__closures, writeScope($scope6_id, {}));
3850
4014
  return 2;
3851
4015
  }
@@ -3853,7 +4017,7 @@ var settings_page_default = _template("t", (input) => {
3853
4017
  _subscribe($setup2__closures, writeScope($scope5_id, { _: _scope_with_id($scope0_id) }));
3854
4018
  _resume_branch($scope5_id);
3855
4019
  }, $scope0_id) }),
3856
- actions: attrTag({ content: _content_resume("t29", () => {
4020
+ actions: attrTag({ content: _content_resume("u29", () => {
3857
4021
  _scope_reason();
3858
4022
  const $scope10_id = _scope_id();
3859
4023
  _html(`<button${_attr_class(iconBtnRow)} title="Re-check this machine" aria-label="Re-check this machine"${_attr("disabled", refreshing)}>`);
@@ -3864,7 +4028,7 @@ var settings_page_default = _template("t", (input) => {
3864
4028
  class: refreshing && "_E"
3865
4029
  });
3866
4030
  _html(`</button>${_el_resume($scope10_id, "a")}`);
3867
- _script($scope10_id, "t27");
4031
+ _script($scope10_id, "u27");
3868
4032
  _subscribe($refreshing__closures, writeScope($scope10_id, {
3869
4033
  _: _scope_with_id($scope0_id),
3870
4034
  b: _existing_scope($childScope)
@@ -3879,8 +4043,8 @@ var settings_page_default = _template("t", (input) => {
3879
4043
  placement: "inline",
3880
4044
  onDismiss: _resume(function() {
3881
4045
  error = null;
3882
- }, "t24", $scope8_id),
3883
- content: _content_resume("t30", () => {
4046
+ }, "u24", $scope8_id),
4047
+ content: _content_resume("u30", () => {
3884
4048
  _scope_reason();
3885
4049
  const $scope9_id = _scope_id();
3886
4050
  _html(`${_escape(error)}${_el_resume($scope9_id, "a")}`);
@@ -3892,11 +4056,11 @@ var settings_page_default = _template("t", (input) => {
3892
4056
  return 0;
3893
4057
  }
3894
4058
  }, $scope0_id, "e", 1, 1, 1, 0, 1);
3895
- _html(`<section${_attr_class("_bs")}${_attr("aria-labelledby", agentsId)}><div${_attr_class("_bt")}><h2${_attr("id", agentsId)}${_attr_class("_bH")}>Agents</h2><div${_attr_class("_y")}></div><label${_attr_class("_bO")}><span${_attr_class("_S")}>Default</span><span${_attr_class("_m")}>`);
4059
+ _html(`<section${_attr_class("_bs")}${_attr("aria-labelledby", agentsId)}><div${_attr_class("_bt")}><h2${_attr("id", agentsId)}${_attr_class("_bH")}>Agents</h2><div${_attr_class("_y")}></div><label${_attr_class("_cf")}><span${_attr_class("_S")}>Default</span><span${_attr_class("_m")}>`);
3896
4060
  _attr_select_value($scope0_id, "m", input.preferred, _resume(function(v) {
3897
4061
  setPreferred(v);
3898
- }, "t1", $scope0_id), () => {
3899
- _html(`<select${_attr_class(["_n", "_bP"])} aria-label="Default agent (starts when a workspace has no session yet)" title="Starts when a workspace has no session yet">`);
4062
+ }, "u1", $scope0_id), () => {
4063
+ _html(`<select${_attr_class(["_n", "_cg"])} aria-label="Default agent (starts when a workspace has no session yet)" title="Starts when a workspace has no session yet">`);
3900
4064
  _for_of(input.agents.filter((a) => a !== "shell"), (id) => {
3901
4065
  const $scope48_id = _scope_id();
3902
4066
  _html(`<option${_attr_option_value(id)}>${_escape(agentLabel(id))}${_el_resume($scope48_id, "b", $sg__input_agents)}</option>${_el_resume($scope48_id, "a", $sg__input_agents)}`);
@@ -3917,7 +4081,7 @@ var settings_page_default = _template("t", (input) => {
3917
4081
  const rows = lone ? [] : a.instances;
3918
4082
  const loneAccounts = lone && lone.enabled ? accountsFor(lone.id) : [];
3919
4083
  const extraAccounts = a.installed ? strayAccountsFor(a) : [];
3920
- _html(`<li${_attr_class(["_bx", "_bN"])}><div${_attr_class(["_bQ", { ["_bT"]: lone && !lone.enabled }])}>`);
4084
+ _html(`<li${_attr_class(["_bx", "_ce"])}><div${_attr_class(["_ch", { ["_ck"]: lone && !lone.enabled }])}>`);
3921
4085
  _set_serialize_reason(12);
3922
4086
  const $childScope4 = _peek_scope_id();
3923
4087
  icon_agent_default({
@@ -3937,7 +4101,7 @@ var settings_page_default = _template("t", (input) => {
3937
4101
  _if(() => {
3938
4102
  if (active.has(a.id)) {
3939
4103
  const $scope11_id = _scope_id();
3940
- _html(`<span${_attr_class("_bJ")}><span${_attr_class("_F")}></span><!>${_escape(active.get(a.id) || "Starting…")}${_el_resume($scope11_id, "c")}</span>`);
4104
+ _html(`<span${_attr_class("_ca")}><span${_attr_class("_F")}></span><!>${_escape(active.get(a.id) || "Starting…")}${_el_resume($scope11_id, "c")}</span>`);
3941
4105
  _subscribe($active__closures, writeScope($scope11_id, {}));
3942
4106
  return 0;
3943
4107
  } else if (!a.installed) {
@@ -3952,7 +4116,7 @@ var settings_page_default = _template("t", (input) => {
3952
4116
  if (!a.installed && !active.has(a.id)) {
3953
4117
  const $scope39_id = _scope_id();
3954
4118
  _html(`<button${_attr_class(btnSm)}>Install</button>${_el_resume($scope39_id, "a")}`);
3955
- _script($scope39_id, "t31");
4119
+ _script($scope39_id, "u31");
3956
4120
  writeScope($scope39_id, {});
3957
4121
  return 0;
3958
4122
  }
@@ -3965,7 +4129,7 @@ var settings_page_default = _template("t", (input) => {
3965
4129
  "_K",
3966
4130
  { [tone.ok]: lone.enabled }
3967
4131
  ])} role=switch aria-checked=${lone.enabled ? "true" : "false"} title=${lone.enabled ? "\"Shown in session pickers. Hide it\"" : "\"Hidden from session pickers. Show it\""}>${lone.enabled ? "on" : "off"}${_el_resume($scope43_id, "b")}</button>${_el_resume($scope43_id, "a")}`);
3968
- _script($scope43_id, "t32");
4132
+ _script($scope43_id, "u32");
3969
4133
  writeScope($scope43_id, {});
3970
4134
  return 0;
3971
4135
  }
@@ -3974,18 +4138,18 @@ var settings_page_default = _template("t", (input) => {
3974
4138
  _if(() => {
3975
4139
  if (rows.length || loneAccounts.length || extraAccounts.length) {
3976
4140
  const $scope2_id = _scope_id();
3977
- _html(`<ul${_attr_class("_bV")}>`);
4141
+ _html(`<ul${_attr_class("_cm")}>`);
3978
4142
  _for_of(rows, (inst) => {
3979
4143
  const $scope3_id = _scope_id();
3980
4144
  const accounts = inst.enabled ? accountsFor(inst.id) : [];
3981
- _html(`<li${_attr_class("_bR")}><div${_attr_class(["_bS", { ["_bT"]: !inst.enabled }])}>`);
4145
+ _html(`<li${_attr_class("_ci")}><div${_attr_class(["_cj", { ["_ck"]: !inst.enabled }])}>`);
3982
4146
  _set_serialize_reason(12);
3983
4147
  const $childScope5 = _peek_scope_id();
3984
4148
  icon_agent_default({
3985
4149
  agent: inst.id,
3986
4150
  size: 15
3987
4151
  });
3988
- _html(`<span${_attr_class(["_bU", "_x"])}>${_escape(inst.command)}${_el_resume($scope3_id, "e")}</span>`);
4152
+ _html(`<span${_attr_class(["_cl", "_x"])}>${_escape(inst.command)}${_el_resume($scope3_id, "e")}</span>`);
3989
4153
  _if(() => {
3990
4154
  if (input.preferred === inst.id) {
3991
4155
  const $scope51_id = _scope_id();
@@ -4010,7 +4174,7 @@ var settings_page_default = _template("t", (input) => {
4010
4174
  writeScope($scope52_id, { a: _existing_scope($childScope6) });
4011
4175
  }, (u) => `${u.agent}-${u.account || ""}`, $scope3_id, "j", 1, 1, 1, 0, 1);
4012
4176
  _html("</li>");
4013
- _script($scope3_id, "t33");
4177
+ _script($scope3_id, "u33");
4014
4178
  _subscribe($accountsFor2__closures, _subscribe($si__input_preferred && $input_preferred__closures, writeScope($scope3_id, {
4015
4179
  m: inst?.enabled,
4016
4180
  n: inst?.id,
@@ -4060,7 +4224,7 @@ var settings_page_default = _template("t", (input) => {
4060
4224
  }, "id", $scope0_id, "q", 1, 1, 1, 0, 1);
4061
4225
  _for_of(otherUsage, (u) => {
4062
4226
  const $scope55_id = _scope_id();
4063
- _html(`<li${_attr_class(["_bx", "_bN"])}>`);
4227
+ _html(`<li${_attr_class(["_bx", "_ce"])}>`);
4064
4228
  _set_serialize_reason(6);
4065
4229
  const $childScope9 = _peek_scope_id();
4066
4230
  usage_meters_default({ agent: u });
@@ -4098,12 +4262,12 @@ var settings_page_default = _template("t", (input) => {
4098
4262
  _if(() => {
4099
4263
  if (active.has(h.host) && authCodes.has(h.host)) {
4100
4264
  const $scope23_id = _scope_id();
4101
- _html(`<span${_attr_class("_bJ")}><span${_attr_class("_F")}></span> Enter code <strong${_attr_class("_b3")}>${_escape(authCodes.get(h.host))}${_el_resume($scope23_id, "d")}</strong> at <a${_attr("href", `https://${h.host}/login/device`)} target=_blank rel=noopener${_attr_class("_b4")}>${_escape(h.host)}${_el_resume($scope23_id, "f")}/login/device</a>${_el_resume($scope23_id, "e")}</span>`);
4265
+ _html(`<span${_attr_class("_ca")}><span${_attr_class("_F")}></span> Enter code <strong${_attr_class("_cu")}>${_escape(authCodes.get(h.host))}${_el_resume($scope23_id, "d")}</strong> at <a${_attr("href", `https://${h.host}/login/device`)} target=_blank rel=noopener${_attr_class("_cv")}>${_escape(h.host)}${_el_resume($scope23_id, "f")}/login/device</a>${_el_resume($scope23_id, "e")}</span>`);
4102
4266
  _subscribe($authCodes__closures, writeScope($scope23_id, {}));
4103
4267
  return 0;
4104
4268
  } else if (active.has(h.host)) {
4105
4269
  const $scope13_id = _scope_id();
4106
- _html(`<span${_attr_class("_bJ")}><span${_attr_class("_F")}></span><!>${_escape(active.get(h.host) || "Starting…")}${_el_resume($scope13_id, "c")}</span>`);
4270
+ _html(`<span${_attr_class("_ca")}><span${_attr_class("_F")}></span><!>${_escape(active.get(h.host) || "Starting…")}${_el_resume($scope13_id, "c")}</span>`);
4107
4271
  _subscribe($active__closures, writeScope($scope13_id, { Cdo: 1 }));
4108
4272
  return 1;
4109
4273
  } else if (h.authed) {
@@ -4126,7 +4290,7 @@ var settings_page_default = _template("t", (input) => {
4126
4290
  if (!h.authed) {
4127
4291
  const $scope40_id = _scope_id();
4128
4292
  _html(`<button${_attr_class(btnSm)}>Sign in</button>${_el_resume($scope40_id, "a")}`);
4129
- _script($scope40_id, "t34");
4293
+ _script($scope40_id, "u34");
4130
4294
  writeScope($scope40_id, {});
4131
4295
  return 0;
4132
4296
  } else {
@@ -4135,7 +4299,7 @@ var settings_page_default = _template("t", (input) => {
4135
4299
  ["_r"]: confirmingRemove === `out:${h.host}`,
4136
4300
  ["_q"]: confirmingRemove === `out:${h.host}`
4137
4301
  }])}${confirmingRemove === `out:${h.host}` ? _attr("title", `Sign out of ${h.host}?`) : _attr("title", `Sign out of ${h.host}`)}>${confirmingRemove === `out:${h.host}` ? "Sign out?" : "Sign out"}${_el_resume($scope25_id, "b")}</button>${_el_resume($scope25_id, "a")}`);
4138
- _script($scope25_id, "t35");
4302
+ _script($scope25_id, "u35");
4139
4303
  _subscribe($for_content4__h_host__closures, _subscribe($confirmingRemove__closures, writeScope($scope25_id, {})));
4140
4304
  return 1;
4141
4305
  }
@@ -4162,7 +4326,7 @@ var settings_page_default = _template("t", (input) => {
4162
4326
  return 1;
4163
4327
  }
4164
4328
  }, $scope26_id, "a", 1, 1, 1, "</button>");
4165
- _script($scope26_id, "t36");
4329
+ _script($scope26_id, "u36");
4166
4330
  _subscribe($for_content4__h_host__closures, _subscribe($confirmingRemove__closures, writeScope($scope26_id, {
4167
4331
  Cdr: 1,
4168
4332
  Cr: 1
@@ -4195,15 +4359,15 @@ var settings_page_default = _template("t", (input) => {
4195
4359
  _if(() => {
4196
4360
  if (setup) {
4197
4361
  const $scope34_id = _scope_id();
4198
- _html(`<form${_attr_class("_b2")}><label${_attr_class("_W")}>`);
4362
+ _html(`<form${_attr_class("_ct")}><label${_attr_class("_W")}>`);
4199
4363
  icon_plus_default({
4200
4364
  size: 14,
4201
4365
  class: "_X"
4202
4366
  });
4203
4367
  _html(`<input${_attr_input_value($scope34_id, "d", hostInput, _resume((_new_hostInput) => {
4204
4368
  hostInput = _new_hostInput;
4205
- }, "t2", $scope34_id))}${_attr_class([inputLg, "_Y"])} type=text placeholder="Add a GitHub Enterprise host, e.g. github.example.com" aria-label="GitHub Enterprise host" autocomplete=off spellcheck=false>${_el_resume($scope34_id, "d")}</label><button${_attr_class(btnSm)} type=submit${_attr("disabled", !hostInput.trim() || hostBusy)}>${hostBusy ? "Adding…" : "Add host"}${_el_resume($scope34_id, "f")}</button>${_el_resume($scope34_id, "e")}</form>${_el_resume($scope34_id, "a")}`);
4206
- _script($scope34_id, "t37");
4369
+ }, "u2", $scope34_id))}${_attr_class([inputLg, "_Y"])} type=text placeholder="Add a GitHub Enterprise host, e.g. github.example.com" aria-label="GitHub Enterprise host" autocomplete=off spellcheck=false>${_el_resume($scope34_id, "d")}</label><button${_attr_class(btnSm)} type=submit${_attr("disabled", !hostInput.trim() || hostBusy)}>${hostBusy ? "Adding…" : "Add host"}${_el_resume($scope34_id, "f")}</button>${_el_resume($scope34_id, "e")}</form>${_el_resume($scope34_id, "a")}`);
4370
+ _script($scope34_id, "u37");
4207
4371
  writeScope($scope34_id, {});
4208
4372
  return 0;
4209
4373
  }
@@ -4230,7 +4394,7 @@ var settings_page_default = _template("t", (input) => {
4230
4394
  if (outdatedIds.length > 1) {
4231
4395
  const $scope14_id = _scope_id();
4232
4396
  _html(`<button${_attr_class(btnSm)}${_attr("disabled", active.size > 0)}>Update all</button>${_el_resume($scope14_id, "a")}`);
4233
- _script($scope14_id, "t38");
4397
+ _script($scope14_id, "u38");
4234
4398
  writeScope($scope14_id, {});
4235
4399
  return 0;
4236
4400
  }
@@ -4239,7 +4403,7 @@ var settings_page_default = _template("t", (input) => {
4239
4403
  if (missingInstallable.length > 1) {
4240
4404
  const $scope15_id = _scope_id();
4241
4405
  _html(`<button${_attr_class(btnSm)}${_attr("disabled", active.size > 0)}>Install missing</button>${_el_resume($scope15_id, "a")}`);
4242
- _script($scope15_id, "t39");
4406
+ _script($scope15_id, "u39");
4243
4407
  writeScope($scope15_id, {});
4244
4408
  return 0;
4245
4409
  }
@@ -4249,7 +4413,7 @@ var settings_page_default = _template("t", (input) => {
4249
4413
  if (setup && !setup.mise.installed) {
4250
4414
  const $scope16_id = _scope_id();
4251
4415
  _html(`<p${_attr_class("_bD")}>mise is not installed. It provides every tool below. <button${_attr_class(btnSm)}${_attr("disabled", active.has("mise"))}>${active.has("mise") ? "Installing…" : "Install mise"}${_el_resume($scope16_id, "c")}</button>${_el_resume($scope16_id, "b")}</p>`);
4252
- _script($scope16_id, "t40");
4416
+ _script($scope16_id, "u40");
4253
4417
  writeScope($scope16_id, {});
4254
4418
  return 0;
4255
4419
  }
@@ -4258,11 +4422,11 @@ var settings_page_default = _template("t", (input) => {
4258
4422
  _if(() => {
4259
4423
  if (self) {
4260
4424
  const $scope36_id = _scope_id();
4261
- _html(`<li${_attr_class(row)}><span${_attr_class(["_bY", "_x"])}>work</span>`);
4425
+ _html(`<li${_attr_class(row)}><span${_attr_class(["_cp", "_x"])}>work</span>`);
4262
4426
  _if(() => {
4263
4427
  if (selfUpdating) {
4264
4428
  const $scope63_id = _scope_id();
4265
- _html(`<span${_attr_class("_bJ")}><span${_attr_class("_F")}></span>Updating — the app restarts and reloads when it is done…</span>`);
4429
+ _html(`<span${_attr_class("_ca")}><span${_attr_class("_F")}></span>Updating — the app restarts and reloads when it is done…</span>`);
4266
4430
  writeScope($scope63_id, {});
4267
4431
  return 0;
4268
4432
  } else {
@@ -4276,8 +4440,8 @@ var settings_page_default = _template("t", (input) => {
4276
4440
  return 0;
4277
4441
  } else if (self.latest && self.latest !== self.version) {
4278
4442
  const $scope38_id = _scope_id();
4279
- _html(`<button${_attr_class([btnSm, "_b0"])}${_attr("title", `Update work to v${self.latest} and restart`)}>↑ <!>${_escape(self.latest)}${_el_resume($scope38_id, "b")}</button>${_el_resume($scope38_id, "a")}`);
4280
- _script($scope38_id, "t41");
4443
+ _html(`<button${_attr_class([btnSm, "_cr"])}${_attr("title", `Update work to v${self.latest} and restart`)}>↑ <!>${_escape(self.latest)}${_el_resume($scope38_id, "b")}</button>${_el_resume($scope38_id, "a")}`);
4444
+ _script($scope38_id, "u41");
4281
4445
  _subscribe($self_latest__closures, writeScope($scope38_id, { Ce1: 1 }));
4282
4446
  return 1;
4283
4447
  } else if (self.latest) {
@@ -4312,11 +4476,11 @@ var settings_page_default = _template("t", (input) => {
4312
4476
  const $for_content5__t_path__closures = /* @__PURE__ */ new Set();
4313
4477
  const $for_content5__t_latest__closures = /* @__PURE__ */ new Set();
4314
4478
  const $for_content5__t_id__closures = /* @__PURE__ */ new Set();
4315
- _html(`<li${_attr_class([row, { ["_bX"]: !t.installed }])}><span${_attr_class(["_bY", "_x"])}>${_escape(t.label)}${_el_resume($scope17_id, "c")}</span>`);
4479
+ _html(`<li${_attr_class([row, { ["_co"]: !t.installed }])}><span${_attr_class(["_cp", "_x"])}>${_escape(t.label)}${_el_resume($scope17_id, "c")}</span>`);
4316
4480
  _if(() => {
4317
4481
  if (active.has(t.id)) {
4318
4482
  const $scope18_id = _scope_id();
4319
- _html(`<span${_attr_class("_bJ")}><span${_attr_class("_F")}></span><!>${_escape(active.get(t.id) || "Starting…")}${_el_resume($scope18_id, "c")}</span>`);
4483
+ _html(`<span${_attr_class("_ca")}><span${_attr_class("_F")}></span><!>${_escape(active.get(t.id) || "Starting…")}${_el_resume($scope18_id, "c")}</span>`);
4320
4484
  _subscribe($active__closures, writeScope($scope18_id, { Cdo: 2 }));
4321
4485
  return 0;
4322
4486
  } else if (t.installed) {
@@ -4324,8 +4488,8 @@ var settings_page_default = _template("t", (input) => {
4324
4488
  _if(() => {
4325
4489
  if (t.version) {
4326
4490
  const $scope31_id = _scope_id();
4327
- _html(`<button${_attr_class(["_bZ", "_x"])}${_attr("title", `${t.path || t.label}. Pin a version`)}>v<!>${_escape(t.version)}${_el_resume($scope31_id, "b")}</button>${_el_resume($scope31_id, "a")}`);
4328
- _script($scope31_id, "t42");
4491
+ _html(`<button${_attr_class(["_cq", "_x"])}${_attr("title", `${t.path || t.label}. Pin a version`)}>v<!>${_escape(t.version)}${_el_resume($scope31_id, "b")}</button>${_el_resume($scope31_id, "a")}`);
4492
+ _script($scope31_id, "u42");
4329
4493
  _subscribe($for_content5__t_path__closures, _subscribe($for_content5__t_version__closures, _subscribe($for_content5__t_label__closures, writeScope($scope31_id, { Cu: 1 }))));
4330
4494
  return 0;
4331
4495
  } else {
@@ -4338,8 +4502,8 @@ var settings_page_default = _template("t", (input) => {
4338
4502
  _if(() => {
4339
4503
  if (outdated(t)) {
4340
4504
  const $scope41_id = _scope_id();
4341
- _html(`<button${_attr_class([btnSm, "_b0"])}${_attr("title", `Update to v${t.latest}`)}>↑ <!>${_escape(t.latest)}${_el_resume($scope41_id, "b")}</button>${_el_resume($scope41_id, "a")}`);
4342
- _script($scope41_id, "t43");
4505
+ _html(`<button${_attr_class([btnSm, "_cr"])}${_attr("title", `Update to v${t.latest}`)}>↑ <!>${_escape(t.latest)}${_el_resume($scope41_id, "b")}</button>${_el_resume($scope41_id, "a")}`);
4506
+ _script($scope41_id, "u43");
4343
4507
  _subscribe($for_content5__t_latest__closures, writeScope($scope41_id, {}));
4344
4508
  return 0;
4345
4509
  }
@@ -4374,7 +4538,7 @@ var settings_page_default = _template("t", (input) => {
4374
4538
  if (!t.installed && t.installable) {
4375
4539
  const $scope42_id = _scope_id();
4376
4540
  _html(`<button${_attr_class(btnSm)}>Install</button>${_el_resume($scope42_id, "a")}`);
4377
- _script($scope42_id, "t44");
4541
+ _script($scope42_id, "u44");
4378
4542
  writeScope($scope42_id, {});
4379
4543
  return 0;
4380
4544
  } else if (t.installed && t.version && !t.required) {
@@ -4398,7 +4562,7 @@ var settings_page_default = _template("t", (input) => {
4398
4562
  return 1;
4399
4563
  }
4400
4564
  }, $scope28_id, "a", 1, 1, 1, "</button>");
4401
- _script($scope28_id, "t45");
4565
+ _script($scope28_id, "u45");
4402
4566
  _subscribe($for_content5__t_id__closures, _subscribe($for_content5__t_label__closures, _subscribe($confirmingRemove__closures, writeScope($scope28_id, { Cdr: 2 }))));
4403
4567
  return 1;
4404
4568
  }
@@ -4438,14 +4602,14 @@ var settings_page_default = _template("t", (input) => {
4438
4602
  _if(() => {
4439
4603
  if (hits && hits.length) {
4440
4604
  const $scope20_id = _scope_id();
4441
- _html(`<ul${_attr_class([toolGrid, "_b1"])}>`);
4605
+ _html(`<ul${_attr_class([toolGrid, "_cs"])}>`);
4442
4606
  _for_of(hits, (h) => {
4443
4607
  const $scope21_id = _scope_id();
4444
- _html(`<li${_attr_class(row)}><div${_attr_class("_by")}><span${_attr_class(["_bY", "_x"])}>${_escape(h.name)}${_el_resume($scope21_id, "d")}</span>`);
4608
+ _html(`<li${_attr_class(row)}><div${_attr_class("_by")}><span${_attr_class(["_cp", "_x"])}>${_escape(h.name)}${_el_resume($scope21_id, "d")}</span>`);
4445
4609
  _if(() => {
4446
4610
  if (active.has(h.name)) {
4447
4611
  const $scope22_id = _scope_id();
4448
- _html(`<span${_attr_class("_bJ")}><span${_attr_class("_F")}></span><!>${_escape(active.get(h.name) || "Starting…")}${_el_resume($scope22_id, "c")}</span>`);
4612
+ _html(`<span${_attr_class("_ca")}><span${_attr_class("_F")}></span><!>${_escape(active.get(h.name) || "Starting…")}${_el_resume($scope22_id, "c")}</span>`);
4449
4613
  _subscribe($active__closures, writeScope($scope22_id, { Cdo: 4 }));
4450
4614
  return 0;
4451
4615
  } else if (h.description) {
@@ -4468,7 +4632,7 @@ var settings_page_default = _template("t", (input) => {
4468
4632
  } else {
4469
4633
  const $scope33_id = _scope_id();
4470
4634
  _html(`<button${_attr_class(btnSm)}>Install</button>${_el_resume($scope33_id, "a")}<button${_attr_class(btnSm)} title="Install a specific version">@…</button>${_el_resume($scope33_id, "b")}`);
4471
- _script($scope33_id, "t46");
4635
+ _script($scope33_id, "u46");
4472
4636
  writeScope($scope33_id, {});
4473
4637
  return 1;
4474
4638
  }
@@ -4495,22 +4659,22 @@ var settings_page_default = _template("t", (input) => {
4495
4659
  }
4496
4660
  }, $scope19_id, "d", 1, 1, 1, 0, 1);
4497
4661
  _html("</div>");
4498
- _script($scope19_id, "t47");
4662
+ _script($scope19_id, "u47");
4499
4663
  writeScope($scope19_id, {});
4500
4664
  return 0;
4501
4665
  }
4502
4666
  }, $scope0_id, "ab", 1, 1, 1, 0, 1);
4503
- _html(`</section><section${_attr_class("_bs")}${_attr("aria-labelledby", appearanceId)}><div${_attr_class("_bt")}><h2${_attr("id", appearanceId)}${_attr_class("_bH")}>Appearance</h2></div><div${_attr_class(["_bx", "_b5"])}><label${_attr_class("_b6")}><span${_attr_class("_b7")}>Name</span><input${_attr_input_value($scope0_id, "ai", input.instance.name, _resume(function(v) {
4667
+ _html(`</section><section${_attr_class("_bs")}${_attr("aria-labelledby", appearanceId)}><div${_attr_class("_bt")}><h2${_attr("id", appearanceId)}${_attr_class("_bH")}>Appearance</h2></div><div${_attr_class(["_bx", "_cw"])}><label${_attr_class("_cx")}><span${_attr_class("_cy")}>Name</span><input${_attr_input_value($scope0_id, "ai", input.instance.name, _resume(function(v) {
4504
4668
  setInstance({ name: v });
4505
- }, "t3", $scope0_id))}${_attr_class(["_U", "_b8"])} type=text placeholder=work maxlength=32 autocomplete=off spellcheck=false aria-describedby=look-name-hint>${_el_resume($scope0_id, "ai")}<span id=look-name-hint${_attr_class(["_S", "_b9"])}>Tab title, home-screen icon, and notifications.</span></label><div${_attr_class("_b6")} role=radiogroup aria-label="Accent colour"><span${_attr_class("_b7")}>Accent</span><span${_attr_class("_b_")}><button type=button${_attr_class([
4506
- "_ca",
4507
- "_cc",
4508
- { ["_cb"]: !input.instance.accent }
4669
+ }, "u3", $scope0_id))}${_attr_class(["_U", "_cz"])} type=text placeholder=work maxlength=32 autocomplete=off spellcheck=false aria-describedby=look-name-hint>${_el_resume($scope0_id, "ai")}<span id=look-name-hint${_attr_class(["_S", "_cA"])}>Tab title, home-screen icon, and notifications.</span></label><div${_attr_class("_cx")} role=radiogroup aria-label="Accent colour"><span${_attr_class("_cy")}>Accent</span><span${_attr_class("_cB")}><button type=button${_attr_class([
4670
+ "_cC",
4671
+ "_cE",
4672
+ { ["_cD"]: !input.instance.accent }
4509
4673
  ])} role=radio aria-checked=${!input.instance.accent ? "true" : "false"} title="Default (blue)" aria-label="Default (blue)"></button>${_el_resume($scope0_id, "an")}`);
4510
4674
  _for_of(ACCENT_PRESETS, (p) => {
4511
4675
  const $scope4_id = _scope_id();
4512
- _html(`<button type=button${_attr_class(["_ca", { ["_cb"]: input.instance.accent === p.value }])}${_attr_style(`--swatch:${p.value}`)} role=radio aria-checked=${input.instance.accent === p.value ? "true" : "false"}${_attr("title", p.name)}${_attr("aria-label", p.name)}></button>${_el_resume($scope4_id, "a")}`);
4513
- _script($scope4_id, "t48");
4676
+ _html(`<button type=button${_attr_class(["_cC", { ["_cD"]: input.instance.accent === p.value }])}${_attr_style(`--swatch:${p.value}`)} role=radio aria-checked=${input.instance.accent === p.value ? "true" : "false"}${_attr("title", p.name)}${_attr("aria-label", p.name)}></button>${_el_resume($scope4_id, "a")}`);
4677
+ _script($scope4_id, "u48");
4514
4678
  writeScope($scope4_id, {
4515
4679
  d: p?.value,
4516
4680
  _: _scope_with_id($scope0_id)
@@ -4518,12 +4682,12 @@ var settings_page_default = _template("t", (input) => {
4518
4682
  }, "value", $scope0_id, "ao", $sg__input_instance_accent, 0, 1, 0, 1);
4519
4683
  const customOn = !!input.instance.accent && !ACCENT_PRESETS.some((p) => p.value === input.instance.accent);
4520
4684
  _html(`<label${_attr_class([
4521
- "_ca",
4522
- "_cd",
4523
- { ["_cb"]: customOn }
4685
+ "_cC",
4686
+ "_cF",
4687
+ { ["_cD"]: customOn }
4524
4688
  ])}${customOn ? _attr_style(`--swatch:${input.instance.accent}`) : ""} title="Custom colour"><input${_attr_input_value($scope0_id, "aq", input.instance.accent || "#3556d8", _resume(function(v) {
4525
4689
  setInstance({ accent: v });
4526
- }, "t4", $scope0_id))}${_attr_class("_ce")} type=color aria-label="Custom accent colour">${_el_resume($scope0_id, "aq")}<span aria-hidden=true>+</span></label>${_el_resume($scope0_id, "ap", $sg__input_instance_accent)}</span><span${_attr_class(["_S", "_b9"])}>Selected rows, buttons, and the icon.</span></div></div></section></div></div></div>`);
4690
+ }, "u4", $scope0_id))}${_attr_class("_cG")} type=color aria-label="Custom accent colour">${_el_resume($scope0_id, "aq")}<span aria-hidden=true>+</span></label>${_el_resume($scope0_id, "ap", $sg__input_instance_accent)}</span><span${_attr_class(["_S", "_cA"])}>Selected rows, buttons, and the icon.</span></div></div></section></div></div></div>`);
4527
4691
  _if(() => {
4528
4692
  if (versionPick) {
4529
4693
  const $scope29_id = _scope_id();
@@ -4537,19 +4701,19 @@ var settings_page_default = _template("t", (input) => {
4537
4701
  open: versionPick != null,
4538
4702
  openChange: _resume(function(o) {
4539
4703
  if (!o) versionPick = null;
4540
- }, "t25", $scope29_id),
4704
+ }, "u25", $scope29_id),
4541
4705
  onSubmit: _resume(function(v) {
4542
4706
  const pick = versionPick;
4543
4707
  versionPick = null;
4544
4708
  run(pick.id, "install", v);
4545
- }, "t26", $scope29_id)
4709
+ }, "u26", $scope29_id)
4546
4710
  });
4547
4711
  writeScope($scope29_id, { a: _existing_scope($childScope10) });
4548
4712
  return 0;
4549
4713
  }
4550
4714
  }, $scope0_id, "as", 1, 1, 1, 0, 1);
4551
- _script($scope0_id, "t49");
4552
- _script($scope0_id, "t50");
4715
+ _script($scope0_id, "u49");
4716
+ _script($scope0_id, "u50");
4553
4717
  writeScope($scope0_id, {
4554
4718
  aw: input.setupChange,
4555
4719
  ax: input.agentsChange,
@@ -4634,23 +4798,54 @@ var settings_page_default = _template("t", (input) => {
4634
4798
  });
4635
4799
  //#endregion
4636
4800
  //#region src/tags/new-workspace.css.ts
4637
- var content$1 = "_cq _bk";
4638
- var section$1 = "_cu _bs";
4639
- var curBase = "_cy _T _S";
4640
- var archived = "_cC _bs";
4641
- var archivedHint = "_cD _S";
4642
- var archivedCard = "_cE _bx";
4643
- var resultBranch = "_eQ _Z _j";
4644
- var branchInput = "_eV _V _U";
4801
+ var content$1 = "_bI _bk";
4802
+ var section$1 = "_bM _bs";
4803
+ var curBase = "_bR _T _S";
4804
+ var archived = "_bV _bs";
4805
+ var archivedHint = "_bW _S";
4806
+ var archivedCard = "_bX _bx";
4807
+ var resultBranch = "_cQ _Z _j";
4808
+ //#endregion
4809
+ //#region src/tags/branch-pick.marko
4810
+ var branch_pick_default = _template("d", (input) => {
4811
+ _scope_reason();
4812
+ const $scope0_id = _scope_id();
4813
+ const $branchFilter__closures = /* @__PURE__ */ new Set();
4814
+ const $defaultBranch__closures = /* @__PURE__ */ new Set();
4815
+ let branches = null;
4816
+ let defaultBranch = null;
4817
+ let branchFilter = "";
4818
+ _html(`<div${_attr_class("_cR")}>`);
4819
+ _if(() => {
4820
+ {
4821
+ const $scope4_id = _scope_id();
4822
+ _html(`<p${_attr_class("_bD")}><span${_attr_class("_F")}></span> Loading branches…</p>`);
4823
+ writeScope($scope4_id, {});
4824
+ return 0;
4825
+ }
4826
+ }, $scope0_id, "a", 1, 1, 1, "</div>");
4827
+ _script($scope0_id, "d3");
4828
+ writeScope($scope0_id, {
4829
+ d: input.repo,
4830
+ e: input.onError,
4831
+ g: input.current,
4832
+ h: input.onPick,
4833
+ i: branches,
4834
+ j: void 0,
4835
+ k: defaultBranch,
4836
+ l: branchFilter,
4837
+ q: $branchFilter__closures,
4838
+ p: $defaultBranch__closures
4839
+ });
4840
+ _resume_branch($scope0_id);
4841
+ });
4645
4842
  //#endregion
4646
4843
  //#region src/tags/repo-picker.marko
4647
4844
  var api$5;
4648
- var repo_picker_default = _template("r", (input) => {
4649
- const $scope0_reason = _scope_reason();
4845
+ var repo_picker_default = _template("s", (input) => {
4846
+ const $scope0_reason = _scope_reason(), $si__input_onError = _serialize_if($scope0_reason, 2);
4650
4847
  const $scope0_id = _scope_id();
4651
- const $branchFilter__closures = /* @__PURE__ */ new Set();
4652
- const $branches__closures = /* @__PURE__ */ new Set();
4653
- const $branches_length__closures = /* @__PURE__ */ new Set();
4848
+ const $input_onError__closures = /* @__PURE__ */ new Set();
4654
4849
  const $highlight__closures = /* @__PURE__ */ new Set();
4655
4850
  const $branchesFor__closures = /* @__PURE__ */ new Set();
4656
4851
  input.refreshing;
@@ -4665,33 +4860,18 @@ var repo_picker_default = _template("r", (input) => {
4665
4860
  input.onError?.(String(err.message || err));
4666
4861
  }
4667
4862
  if (refresh);
4668
- }, "r3", $scope0_id);
4863
+ }, "s2", $scope0_id);
4669
4864
  const results = catalog && filter ? rankRepos(filter, catalog.repos, (name) => input.exclude.has(name)) : [];
4670
4865
  let branchesFor = null;
4671
- let branches = null;
4672
- let branchFilter = "";
4673
4866
  const pick = _resume((fullName, baseBranch) => {
4674
4867
  filter = "";
4675
4868
  branchesFor = null;
4676
4869
  input.onPick(fullName, baseBranch);
4677
- }, "r4", $scope0_id);
4678
- const toggleBranches = _resume(async (fullName) => {
4679
- if (branchesFor === fullName) {
4680
- branchesFor = null;
4681
- return;
4682
- }
4683
- branchesFor = fullName;
4684
- branches = null;
4685
- branchFilter = "";
4686
- try {
4687
- const data = await api$5(`/api/repos/branches?repo=${encodeURIComponent(fullName)}`);
4688
- if (branchesFor === fullName) branches = data.branches;
4689
- } catch (err) {
4690
- branchesFor = null;
4691
- input.onError?.(String(err.message || err));
4692
- }
4693
- }, "r5", $scope0_id);
4694
- _html(`<div${_attr_class("_eK")}><label${_attr_class("_W")}>`);
4870
+ }, "s3", $scope0_id);
4871
+ const toggleBranches = _resume((fullName) => {
4872
+ branchesFor = branchesFor === fullName ? null : fullName;
4873
+ }, "s4", $scope0_id);
4874
+ _html(`<div${_attr_class("_cK")}><label${_attr_class("_W")}>`);
4695
4875
  icon_search_default({
4696
4876
  size: 14,
4697
4877
  class: "_X"
@@ -4699,95 +4879,65 @@ var repo_picker_default = _template("r", (input) => {
4699
4879
  _html(`<input${_attr_input_value($scope0_id, "d", filter, _resume(function(v) {
4700
4880
  filter = v;
4701
4881
  highlight = 0;
4702
- }, "r0", $scope0_id))}${_attr_class([inputLg, "_Y"])} placeholder="Add a repo…" aria-label="Add a repo"${_attr("disabled", input.disabled)}>${_el_resume($scope0_id, "d")}</label>`);
4882
+ }, "s0", $scope0_id))}${_attr_class([inputLg, "_Y"])} placeholder="Add a repo…" aria-label="Add a repo"${_attr("disabled", input.disabled)}>${_el_resume($scope0_id, "d")}</label>`);
4703
4883
  _if(() => {
4704
4884
  if (filter && !catalog) {
4705
- const $scope8_id = _scope_id();
4885
+ const $scope5_id = _scope_id();
4706
4886
  _html(`<p${_attr_class("_bD")}>Loading repos…</p>`);
4707
- writeScope($scope8_id, {});
4887
+ writeScope($scope5_id, {});
4708
4888
  return 0;
4709
4889
  }
4710
4890
  }, $scope0_id, "e", 1, 1, 1, 0, 1);
4711
4891
  _if(() => {
4712
4892
  if (results.length) {
4713
- const $scope2_id = _scope_id();
4714
- _html(`<ul${_attr_class("_eL")}>`);
4893
+ const $scope1_id = _scope_id();
4894
+ _html(`<ul${_attr_class("_cL")}>`);
4715
4895
  _for_of(results, (repo, i) => {
4716
- const $scope3_id = _scope_id();
4717
- _html(`<li><div${_attr_class(["_eN", { ["_eM"]: i === highlight }])}><button${_attr_class("_eO")}>`);
4896
+ const $scope2_id = _scope_id();
4897
+ _html(`<li><div${_attr_class(["_cN", { ["_cM"]: i === highlight }])}><button${_attr_class("_cO")}>`);
4718
4898
  icon_plus_default({
4719
4899
  size: 12,
4720
- class: "_eT"
4900
+ class: "_cT"
4721
4901
  });
4722
- _html(`<span${_attr_class("_eU")}>${_escape(repoLabel(repo.nameWithOwner))}${_el_resume($scope3_id, "e")}</span></button>${_el_resume($scope3_id, "b")}<button${_attr_class([resultBranch, { ["_eP"]: branchesFor === repo.nameWithOwner }])}${_attr("title", `Pick a base branch for ${repo.nameWithOwner}`)}${_attr("aria-label", `Pick a base branch for ${repo.nameWithOwner}`)}>⎇</button>${_el_resume($scope3_id, "f")}</div>${_el_resume($scope3_id, "a")}`);
4902
+ _html(`<span${_attr_class("_cU")}>${_escape(repoLabel(repo.nameWithOwner))}${_el_resume($scope2_id, "e")}</span></button>${_el_resume($scope2_id, "b")}<button${_attr_class([resultBranch, { ["_cP"]: branchesFor === repo.nameWithOwner }])}${_attr("title", `Pick a base branch for ${repo.nameWithOwner}`)}${_attr("aria-label", `Pick a base branch for ${repo.nameWithOwner}`)}>⎇</button>${_el_resume($scope2_id, "f")}</div>${_el_resume($scope2_id, "a")}`);
4723
4903
  _if(() => {
4724
4904
  if (branchesFor === repo.nameWithOwner) {
4725
- const $scope4_id = _scope_id();
4726
- _html(`<div${_attr_class("_eR")}>`);
4727
- _if(() => {
4728
- if (!branches) {
4729
- const $scope9_id = _scope_id();
4730
- _html(`<p${_attr_class("_bD")}><span${_attr_class("_F")}></span> Loading branches…</p>`);
4731
- writeScope($scope9_id, {});
4732
- return 0;
4733
- } else {
4734
- const $scope5_id = _scope_id();
4735
- _if(() => {
4736
- if (branches.length > 8) {
4737
- const $scope6_id = _scope_id();
4738
- _html(`<input${_attr_input_value($scope6_id, "a", branchFilter, _resume((_new_branchFilter) => {
4739
- branchFilter = _new_branchFilter;
4740
- }, "r1", $scope6_id))}${_attr_class(branchInput)} placeholder="Filter branches…" aria-label="Filter branches" autofocus>${_el_resume($scope6_id, "a")}`);
4741
- _script($scope6_id, "r6");
4742
- _subscribe($branchFilter__closures, writeScope($scope6_id, { Cad: 1 }));
4743
- return 0;
4744
- }
4745
- }, $scope5_id, "a", 1, 1, 1, 0, 1);
4746
- const shown = (branchFilter ? branches.filter((b) => b.toLowerCase().includes(branchFilter.toLowerCase())) : branches).slice(0, 12);
4747
- _html(`<ul${_attr_class("_eS")}>`);
4748
- _for_of(shown, (branch) => {
4749
- const $scope7_id = _scope_id();
4750
- _html(`<li><button${_attr_class(["_eO", "_eW"])}><span${_attr_class(["_eU", "_x"])}>${_escape(branch)}${_el_resume($scope7_id, "c")}</span></button>${_el_resume($scope7_id, "a")}</li>`);
4751
- _script($scope7_id, "r7");
4752
- writeScope($scope7_id, { e: branch });
4753
- }, (b) => b, $scope5_id, "c", 1, 1, 1, 0, 1);
4754
- _if(() => {
4755
- if (!shown.length) {
4756
- const $scope10_id = _scope_id();
4757
- _html(`<li><p${_attr_class("_bD")}>No branches match.</p></li>`);
4758
- writeScope($scope10_id, {});
4759
- return 0;
4760
- }
4761
- }, $scope5_id, "d", 1, 1, 1, 0, 1);
4762
- _html("</ul>");
4763
- _subscribe($branchFilter__closures, _subscribe($branches_length__closures, _subscribe($branches__closures, writeScope($scope5_id, { Cab: 1 }))));
4764
- return 1;
4765
- }
4766
- }, $scope4_id, "a", 1, 1, 1, "</div>");
4767
- _subscribe($branches__closures, writeScope($scope4_id, {}));
4905
+ const $scope3_id = _scope_id();
4906
+ const $childScope = _peek_scope_id();
4907
+ branch_pick_default({
4908
+ repo: repo.nameWithOwner,
4909
+ onPick: _resume(function(branch, isDefault) {
4910
+ pick(repo.nameWithOwner, isDefault ? void 0 : branch);
4911
+ }, "s5", $scope3_id),
4912
+ onError: _resume(function(message) {
4913
+ branchesFor = null;
4914
+ input.onError?.(message);
4915
+ }, "s6", $scope3_id)
4916
+ });
4917
+ _subscribe($si__input_onError && $input_onError__closures, writeScope($scope3_id, { a: _existing_scope($childScope) }));
4768
4918
  return 0;
4769
4919
  }
4770
- }, $scope3_id, "g", 1, 1, 1, 0, 1);
4920
+ }, $scope2_id, "g", 1, 1, 1, 0, 1);
4771
4921
  _html("</li>");
4772
- _script($scope3_id, "r8");
4773
- _subscribe($branchesFor__closures, _subscribe($highlight__closures, writeScope($scope3_id, {
4922
+ _script($scope2_id, "s7");
4923
+ _subscribe($branchesFor__closures, _subscribe($highlight__closures, writeScope($scope2_id, {
4774
4924
  j: repo?.nameWithOwner,
4775
4925
  l: i
4776
4926
  })));
4777
- }, "nameWithOwner", $scope2_id, "a", 1, 1, 1, "</ul>", 1);
4778
- writeScope($scope2_id, {});
4927
+ }, "nameWithOwner", $scope1_id, "a", 1, 1, 1, "</ul>", 1);
4928
+ writeScope($scope1_id, {});
4779
4929
  return 0;
4780
4930
  } else if (filter && catalog) {
4781
- const $scope1_id = _scope_id();
4782
- _html(`<p${_attr_class("_bD")}>No repos match "<!>${_escape(filter)}${_el_resume($scope1_id, "b")}".</p>`);
4783
- writeScope($scope1_id, {});
4931
+ const $scope4_id = _scope_id();
4932
+ _html(`<p${_attr_class("_bD")}>No repos match "<!>${_escape(filter)}${_el_resume($scope4_id, "b")}".</p>`);
4933
+ writeScope($scope4_id, {});
4784
4934
  return 1;
4785
4935
  }
4786
4936
  }, $scope0_id, "f", 1, 1, 1, 0, 1);
4787
4937
  _html("</div>");
4788
- const $return = _resume(() => loadCatalog(true), "r2", $scope0_id);
4789
- _script($scope0_id, "r9");
4790
- _script($scope0_id, "r10");
4938
+ const $return = _resume(() => loadCatalog(true), "s1", $scope0_id);
4939
+ _script($scope0_id, "s8");
4940
+ _script($scope0_id, "s9");
4791
4941
  writeScope($scope0_id, {
4792
4942
  i: _serialize_if($scope0_reason, 1) && input.refreshing,
4793
4943
  j: _serialize_if($scope0_reason, 0) && input.refreshingChange,
@@ -4800,17 +4950,12 @@ var repo_picker_default = _template("r", (input) => {
4800
4950
  w: loadCatalog,
4801
4951
  x: results,
4802
4952
  a0: branchesFor,
4803
- a2: branches,
4804
- a3: branches?.length,
4805
- a4: branchFilter,
4806
- a5: pick,
4807
- a6: toggleBranches,
4953
+ a1: pick,
4954
+ a2: toggleBranches,
4808
4955
  q: input.refreshingChange || void 0,
4809
- ad: $branchFilter__closures,
4810
- ab: $branches__closures,
4811
- ac: $branches_length__closures,
4812
- a8: $highlight__closures,
4813
- aa: $branchesFor__closures
4956
+ a3: $si__input_onError && $input_onError__closures,
4957
+ a5: $highlight__closures,
4958
+ a7: $branchesFor__closures
4814
4959
  });
4815
4960
  _resume_branch($scope0_id);
4816
4961
  return $return;
@@ -4819,7 +4964,7 @@ var repo_picker_default = _template("r", (input) => {
4819
4964
  //#region src/tags/new-workspace.marko
4820
4965
  var api$4;
4821
4966
  var watchProgress;
4822
- var new_workspace_default = _template("o", (input) => {
4967
+ var new_workspace_default = _template("p", (input) => {
4823
4968
  const $scope0_reason = _scope_reason(), $sg__input_backHref__OR__input_onExit = _serialize_guard($scope0_reason, 0), $sg__input_workspaces = _serialize_guard($scope0_reason, 1), $si__input_workspaces = _serialize_if($scope0_reason, 1);
4824
4969
  const $scope0_id = _scope_id();
4825
4970
  const $error__closures = /* @__PURE__ */ new Set();
@@ -4840,10 +4985,19 @@ var new_workspace_default = _template("o", (input) => {
4840
4985
  fullName,
4841
4986
  baseBranch
4842
4987
  });
4843
- }, "o1", $scope0_id);
4988
+ }, "p1", $scope0_id);
4989
+ let branchesFor = null;
4844
4990
  const removeRepo = _resume((fullName) => {
4845
4991
  selected = selected.filter((r) => r.fullName !== fullName);
4846
- }, "o2", $scope0_id);
4992
+ if (branchesFor === fullName) branchesFor = null;
4993
+ }, "p2", $scope0_id);
4994
+ const setBranch = _resume((fullName, baseBranch) => {
4995
+ selected = selected.map((r) => r.fullName === fullName ? {
4996
+ ...r,
4997
+ baseBranch
4998
+ } : r);
4999
+ branchesFor = null;
5000
+ }, "p3", $scope0_id);
4847
5001
  const restore = _resume(async (ws) => {
4848
5002
  if (busy || restoring) return;
4849
5003
  error = null;
@@ -4863,7 +5017,7 @@ var new_workspace_default = _template("o", (input) => {
4863
5017
  } finally {
4864
5018
  restoring = null;
4865
5019
  }
4866
- }, "o3", $scope0_id);
5020
+ }, "p4", $scope0_id);
4867
5021
  const createGen = { n: 0 };
4868
5022
  const create = _resume(async () => {
4869
5023
  if (restoring) return;
@@ -4896,7 +5050,7 @@ var new_workspace_default = _template("o", (input) => {
4896
5050
  } finally {
4897
5051
  watcher.stop();
4898
5052
  }
4899
- }, "o4", $scope0_id);
5053
+ }, "p5", $scope0_id);
4900
5054
  const titleId = _id();
4901
5055
  _html(`<div${_attr_class("_bi")} role=region${_attr("aria-labelledby", titleId)}><div${_attr_class("_bj")}><div${_attr_class(content$1)}>`);
4902
5056
  _set_serialize_reason({
@@ -4910,8 +5064,8 @@ var new_workspace_default = _template("o", (input) => {
4910
5064
  title: "New workspace",
4911
5065
  titleId,
4912
5066
  backHref: input.backHref,
4913
- onBack: input.onExit && _resume(() => input.onExit?.(), "o5", $scope0_id),
4914
- meta: attrTag({ content: _content_resume("o10", () => {
5067
+ onBack: input.onExit && _resume(() => input.onExit?.(), "p6", $scope0_id),
5068
+ meta: attrTag({ content: _content_resume("p13", () => {
4915
5069
  _scope_reason();
4916
5070
  _scope_id();
4917
5071
  _html("Name the workspace and pick repos, or restore an archived one below.");
@@ -4924,8 +5078,8 @@ var new_workspace_default = _template("o", (input) => {
4924
5078
  placement: "inline",
4925
5079
  onDismiss: _resume(function() {
4926
5080
  error = null;
4927
- }, "o6", $scope5_id),
4928
- content: _content_resume("o11", () => {
5081
+ }, "p7", $scope5_id),
5082
+ content: _content_resume("p14", () => {
4929
5083
  _scope_reason();
4930
5084
  const $scope6_id = _scope_id();
4931
5085
  _html(`${_escape(error)}${_el_resume($scope6_id, "a")}`);
@@ -4937,34 +5091,49 @@ var new_workspace_default = _template("o", (input) => {
4937
5091
  return 0;
4938
5092
  }
4939
5093
  }, $scope0_id, "e", 1, 1, 1, 0, 1);
4940
- _html(`<label${_attr_class("_ct")}><span${_attr_class("_bH")}>Name</span><input${_attr_input_value($scope0_id, "h", name, _resume((_new_name) => {
5094
+ _html(`<label${_attr_class("_bL")}><span${_attr_class("_bH")}>Name</span><input${_attr_input_value($scope0_id, "h", name, _resume((_new_name) => {
4941
5095
  name = _new_name;
4942
- }, "o0", $scope0_id))}${_attr_class(inputLg)} placeholder=my-feature${_attr("disabled", busy)} autofocus>${_el_resume($scope0_id, "h")}</label><section${_attr_class(section$1)}><div${_attr_class("_cv")}><h2${_attr_class("_bH")}>Repos</h2><button${_attr_class(iconBtnRow)} title="Refresh repo list" aria-label="Refresh repo list"${_attr("disabled", catalogRefreshing)}>`);
5096
+ }, "p0", $scope0_id))}${_attr_class(inputLg)} placeholder=my-feature${_attr("disabled", busy)} autofocus>${_el_resume($scope0_id, "h")}</label><section${_attr_class(section$1)}><div${_attr_class("_bN")}><h2${_attr_class("_bH")}>Repos</h2><button${_attr_class(iconBtnRow)} title="Refresh repo list" aria-label="Refresh repo list"${_attr("disabled", catalogRefreshing)}>`);
4943
5097
  _set_serialize_reason(1);
4944
5098
  const $childScope2 = _peek_scope_id();
4945
5099
  icon_refresh_default({
4946
5100
  size: 14,
4947
5101
  class: catalogRefreshing && "_E"
4948
5102
  });
4949
- _html(`</button>${_el_resume($scope0_id, "l")}</div><ul${_attr_class("_cw")}>`);
5103
+ _html(`</button>${_el_resume($scope0_id, "l")}</div><ul${_attr_class("_bO")}>`);
4950
5104
  _for_of(selected, (repo) => {
4951
5105
  const $scope2_id = _scope_id();
4952
- _html(`<li${_attr_class(row)}><span${_attr_class("_cx")}>${_escape(repoLabel(repo.fullName))}${_el_resume($scope2_id, "c")}</span>`);
5106
+ _html(`<li><div${_attr_class(row)}><span${_attr_class("_bP")}>${_escape(repoLabel(repo.fullName))}${_el_resume($scope2_id, "c")}</span><button${_attr_class([
5107
+ curBase,
5108
+ "_x",
5109
+ { ["_bQ"]: branchesFor === repo.fullName }
5110
+ ])}${_attr("title", `Change base branch for ${repo.fullName}`)}${_attr("aria-label", `Change base branch for ${repo.fullName}`)}${_attr("disabled", busy)}>${repo.baseBranch ? `⎇ ${_escape(`${repo.baseBranch}`)}` : "⎇"}${_el_resume($scope2_id, "e")}</button>${_el_resume($scope2_id, "d")}<button${_attr_class([iconBtnXs, "_2"])}${_attr("title", `Remove ${repo.fullName}`)}${_attr("disabled", busy)}>`);
5111
+ icon_xmark_default({ size: 12 });
5112
+ _html(`</button>${_el_resume($scope2_id, "f")}</div>`);
4953
5113
  _if(() => {
4954
- if (repo.baseBranch) {
4955
- const $scope10_id = _scope_id();
4956
- _html(`<span${_attr_class([curBase, "_x"])} title="Base branch">⎇ <!>${_escape(repo.baseBranch)}${_el_resume($scope10_id, "b")}</span>`);
4957
- writeScope($scope10_id, {});
5114
+ if (branchesFor === repo.fullName) {
5115
+ const $scope7_id = _scope_id();
5116
+ const $childScope3 = _peek_scope_id();
5117
+ branch_pick_default({
5118
+ repo: repo.fullName,
5119
+ current: repo.baseBranch,
5120
+ onPick: _resume(function(branch, isDefault) {
5121
+ setBranch(repo.fullName, isDefault ? void 0 : branch);
5122
+ }, "p8", $scope7_id),
5123
+ onError: _resume(function(message) {
5124
+ branchesFor = null;
5125
+ error = message;
5126
+ }, "p9", $scope7_id)
5127
+ });
5128
+ writeScope($scope7_id, { a: _existing_scope($childScope3) });
4958
5129
  return 0;
4959
5130
  }
4960
- }, $scope2_id, "d", 1, 1, 1, 0, 1);
4961
- _html(`<button${_attr_class([iconBtnXs, "_2"])}${_attr("title", `Remove ${repo.fullName}`)}${_attr("disabled", busy)}>`);
4962
- icon_xmark_default({ size: 12 });
4963
- _html(`</button>${_el_resume($scope2_id, "e")}</li>`);
4964
- _script($scope2_id, "o12");
5131
+ }, $scope2_id, "h", 1, 1, 1, 0, 1);
5132
+ _html("</li>");
5133
+ _script($scope2_id, "p15");
4965
5134
  writeScope($scope2_id, {
4966
- i: repo?.fullName,
4967
- j: repo?.baseBranch
5135
+ k: repo?.fullName,
5136
+ m: repo?.baseBranch
4968
5137
  });
4969
5138
  }, "fullName", $scope0_id, "o", 1, 1, 1, 0, 1);
4970
5139
  _if(() => {
@@ -4976,29 +5145,29 @@ var new_workspace_default = _template("o", (input) => {
4976
5145
  }
4977
5146
  }, $scope0_id, "p", 1, 1, 1, 0, 1);
4978
5147
  _html("</ul>");
4979
- const $childScope3 = _peek_scope_id();
5148
+ const $childScope4 = _peek_scope_id();
4980
5149
  let refreshCatalog = repo_picker_default({
4981
5150
  exclude: new Set(selected.map((r) => r.fullName)),
4982
5151
  disabled: busy,
4983
5152
  onPick: _resume(function(fullName, baseBranch) {
4984
5153
  addRepo(fullName, baseBranch);
4985
- }, "o7", $scope0_id),
5154
+ }, "p10", $scope0_id),
4986
5155
  onError: _resume(function(message) {
4987
5156
  error = message;
4988
- }, "o8", $scope0_id),
5157
+ }, "p11", $scope0_id),
4989
5158
  refreshingChange: _resume(function(v) {
4990
5159
  catalogRefreshing = v;
4991
- }, "o9", $scope0_id)
5160
+ }, "p12", $scope0_id)
4992
5161
  });
4993
- _var($scope0_id, "r", $childScope3, "o13");
5162
+ _var($scope0_id, "r", $childScope4, "p16");
4994
5163
  _html("</section>");
4995
5164
  _if(() => {
4996
5165
  if (busy && steps$1.length) {
4997
- const $scope7_id = _scope_id();
4998
- _html(`<ul${_attr_class("_cz")}>`);
5166
+ const $scope8_id = _scope_id();
5167
+ _html(`<ul${_attr_class("_bS")}>`);
4999
5168
  _for_of(steps$1, (step$1, i) => {
5000
- const $scope8_id = _scope_id();
5001
- _html(`<li${_attr_class(["_cF", { ["_cA"]: i === steps$1.length - 1 }])}>`);
5169
+ const $scope9_id = _scope_id();
5170
+ _html(`<li${_attr_class(["_bY", { ["_bT"]: i === steps$1.length - 1 }])}>`);
5002
5171
  _if(() => {
5003
5172
  if (i === steps$1.length - 1) {
5004
5173
  const $scope12_id = _scope_id();
@@ -5007,24 +5176,24 @@ var new_workspace_default = _template("o", (input) => {
5007
5176
  return 0;
5008
5177
  } else {
5009
5178
  const $scope13_id = _scope_id();
5010
- _html(`<span${_attr_class("_cB")}>✓</span>`);
5179
+ _html(`<span${_attr_class("_bU")}>✓</span>`);
5011
5180
  writeScope($scope13_id, {});
5012
5181
  return 1;
5013
5182
  }
5014
- }, $scope8_id, "b", 1, 1, 1, 0, 1);
5015
- _html(`<!>${_escape(step$1)}${_el_resume($scope8_id, "c")}</li>${_el_resume($scope8_id, "a")}`);
5016
- _subscribe($steps_length__closures, writeScope($scope8_id, {}));
5017
- }, 0, $scope7_id, "a", 1, 1, 1, "</ul>", 1);
5018
- writeScope($scope7_id, {});
5183
+ }, $scope9_id, "b", 1, 1, 1, 0, 1);
5184
+ _html(`<!>${_escape(step$1)}${_el_resume($scope9_id, "c")}</li>${_el_resume($scope9_id, "a")}`);
5185
+ _subscribe($steps_length__closures, writeScope($scope9_id, {}));
5186
+ }, 0, $scope8_id, "a", 1, 1, 1, "</ul>", 1);
5187
+ writeScope($scope8_id, {});
5019
5188
  return 0;
5020
5189
  }
5021
5190
  }, $scope0_id, "s", 1, 1, 1, 0, 1);
5022
- _html(`<div${_attr_class("_cr")}>`);
5191
+ _html(`<div${_attr_class("_bJ")}>`);
5023
5192
  _if(() => {
5024
5193
  if (input.onExit || busy) {
5025
5194
  const $scope1_id = _scope_id();
5026
5195
  _html(`<button type=button${_attr_class(btnLg)}${_attr("disabled", !!restoring)}>Cancel</button>${_el_resume($scope1_id, "a")}`);
5027
- _script($scope1_id, "o14");
5196
+ _script($scope1_id, "p17");
5028
5197
  writeScope($scope1_id, {});
5029
5198
  return 0;
5030
5199
  }
@@ -5032,12 +5201,12 @@ var new_workspace_default = _template("o", (input) => {
5032
5201
  _html(`<button type=button${_attr_class([
5033
5202
  btnLg,
5034
5203
  "_p",
5035
- "_cs"
5204
+ "_bK"
5036
5205
  ])}${_attr("disabled", busy || !!restoring || !name.trim())}>${busy ? "Creating…" : "Create workspace"}${_el_resume($scope0_id, "w")}</button>${_el_resume($scope0_id, "v")}</div>`);
5037
5206
  _if(() => {
5038
5207
  if (archived$1.length) {
5039
5208
  const $scope3_id = _scope_id();
5040
- _html(`<section${_attr_class(archived)}><div${_attr_class("_cv")}><h2${_attr_class("_bH")}>Archived</h2><span${_attr_class(sectionCount$1)}>${_escape(archived$1.length)}${_el_resume($scope3_id, "e", $sg__input_workspaces)}</span></div><p${_attr_class(archivedHint)}>Restore an archived workspace instead of creating a new one.</p><ul${_attr_class("_bv")}>`);
5209
+ _html(`<section${_attr_class(archived)}><div${_attr_class("_bN")}><h2${_attr_class("_bH")}>Archived</h2><span${_attr_class(sectionCount$1)}>${_escape(archived$1.length)}${_el_resume($scope3_id, "e", $sg__input_workspaces)}</span></div><p${_attr_class(archivedHint)}>Restore an archived workspace instead of creating a new one.</p><ul${_attr_class("_bv")}>`);
5041
5210
  _for_of(archived$1, (ws) => {
5042
5211
  const $scope4_id = _scope_id();
5043
5212
  _html(`<li${_attr_class(archivedCard)}><div${_attr_class("_by")}><span${_attr_class("_bz")}>${_escape(ws.name)}${_el_resume($scope4_id, "d", $sg__input_workspaces)}</span><span${_attr_class([metaTrunc, "_x"])}${_attr("title", ws.display_path || ws.path)}>${_escape(ws.display_path || ws.path)}${_el_resume($scope4_id, "f", $sg__input_workspaces)}</span>${_el_resume($scope4_id, "e", $sg__input_workspaces)}</div><button type=button${_attr_class(btnLg)}${_attr("disabled", busy || !!restoring)}>`);
@@ -5055,7 +5224,7 @@ var new_workspace_default = _template("o", (input) => {
5055
5224
  }
5056
5225
  }, $scope4_id, "g", 1, 1, 1, "</button>");
5057
5226
  _html("</li>");
5058
- _script($scope4_id, "o15");
5227
+ _script($scope4_id, "p18");
5059
5228
  _subscribe($restoring__closures, _subscribe($busy__closures, writeScope($scope4_id, {
5060
5229
  j: ws,
5061
5230
  o: ws?.id,
@@ -5068,7 +5237,7 @@ var new_workspace_default = _template("o", (input) => {
5068
5237
  }
5069
5238
  }, $scope0_id, "x", $sg__input_workspaces, $sg__input_workspaces, 1, 0, 1);
5070
5239
  _html("</div></div></div>");
5071
- _script($scope0_id, "o16");
5240
+ _script($scope0_id, "p19");
5072
5241
  writeScope($scope0_id, {
5073
5242
  a1: input.onRestore,
5074
5243
  a2: input.onCreate,
@@ -5083,18 +5252,20 @@ var new_workspace_default = _template("o", (input) => {
5083
5252
  ai: $si__input_workspaces && archived$1,
5084
5253
  aj: $si__input_workspaces && archived$1?.length,
5085
5254
  ak: addRepo,
5086
- al: removeRepo,
5087
- am: restore,
5088
- ao: createGen.n,
5089
- aq: create,
5090
- as: refreshCatalog,
5255
+ al: branchesFor,
5256
+ an: removeRepo,
5257
+ ao: setBranch,
5258
+ ap: restore,
5259
+ ar: createGen.n,
5260
+ at: create,
5261
+ av: refreshCatalog,
5091
5262
  d: _serialize_if($scope0_reason, 0) && _existing_scope($childScope),
5092
- av: $error__closures,
5263
+ ay: $error__closures,
5093
5264
  m: _existing_scope($childScope2),
5094
- q: _existing_scope($childScope3),
5095
- ax: $steps_length__closures,
5096
- at: $busy__closures,
5097
- au: $restoring__closures
5265
+ q: _existing_scope($childScope4),
5266
+ b0: $steps_length__closures,
5267
+ aw: $busy__closures,
5268
+ ax: $restoring__closures
5098
5269
  });
5099
5270
  _resume_branch($scope0_id);
5100
5271
  });
@@ -5181,9 +5352,9 @@ function activeAgent(session) {
5181
5352
  const command = session.state?.command?.trim();
5182
5353
  return command && agentFromCommand(command) || session.agent;
5183
5354
  }
5184
- var iconBtn$1 = "_eo _j";
5185
- var navToggle = "_et _j";
5186
- _template("G", (input) => {
5355
+ var iconBtn$1 = "_dl _j";
5356
+ var navToggle = "_dq _j";
5357
+ _template("H", (input) => {
5187
5358
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
5188
5359
  const $scope0_id = _scope_id();
5189
5360
  _set_serialize_reason({
@@ -5200,7 +5371,7 @@ _template("G", (input) => {
5200
5371
  });
5201
5372
  //#endregion
5202
5373
  //#region src/tags/icons/icon-settings.marko
5203
- var icon_settings_default = _template("T", (input) => {
5374
+ var icon_settings_default = _template("U", (input) => {
5204
5375
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
5205
5376
  const $scope0_id = _scope_id();
5206
5377
  _set_serialize_reason({
@@ -5225,12 +5396,12 @@ var ARM_MS = 3500;
5225
5396
  function disarmLater(fn) {
5226
5397
  return setTimeout(fn, ARM_MS);
5227
5398
  }
5228
- var railBtn = "_gt _j";
5229
- var rowIcon = "_gC _Z _j";
5230
- var close = "_gD _Z _j _2";
5399
+ var railBtn = "_gv _j";
5400
+ var rowIcon = "_gE _Z _j";
5401
+ var close = "_gF _Z _j _2";
5231
5402
  //#endregion
5232
5403
  //#region src/styles/session-pop.css.ts
5233
- var sessionPop = "_gp _4";
5404
+ var sessionPop = "_gr _4";
5234
5405
  //#endregion
5235
5406
  //#region src/client/usage.ts
5236
5407
  /** The plan row an agent instance draws on: its own account (`claude2`)
@@ -5244,7 +5415,7 @@ function usageFor(agentId, usage) {
5244
5415
  }
5245
5416
  //#endregion
5246
5417
  //#region src/tags/icons/icon-diff.marko
5247
- var icon_diff_default = _template("J", (input) => {
5418
+ var icon_diff_default = _template("K", (input) => {
5248
5419
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
5249
5420
  const $scope0_id = _scope_id();
5250
5421
  _set_serialize_reason({
@@ -5261,7 +5432,7 @@ var icon_diff_default = _template("J", (input) => {
5261
5432
  });
5262
5433
  //#endregion
5263
5434
  //#region src/tags/icons/icon-manage.marko
5264
- var icon_manage_default = _template("P", (input) => {
5435
+ var icon_manage_default = _template("Q", (input) => {
5265
5436
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
5266
5437
  const $scope0_id = _scope_id();
5267
5438
  _set_serialize_reason({
@@ -5282,7 +5453,7 @@ function pctText(pct) {
5282
5453
  const rounded = Math.round(pct);
5283
5454
  return rounded !== pct && (rounded === 100 || rounded === 0) ? `${pct.toFixed(1)}%` : `${rounded}%`;
5284
5455
  }
5285
- var usage_pcts_default = _template("B", (input) => {
5456
+ var usage_pcts_default = _template("C", (input) => {
5286
5457
  const $scope0_reason = _scope_reason(), $sg__input_agent = _serialize_guard($scope0_reason, 1), $si__input_agent = _serialize_if($scope0_reason, 1), $sg__input_agent__OR__input_class = _serialize_guard($scope0_reason, 0), $si__input_agent__OR__input_class = _serialize_if($scope0_reason, 0);
5287
5458
  const $scope0_id = _scope_id();
5288
5459
  const agent = input.agent;
@@ -5291,22 +5462,22 @@ var usage_pcts_default = _template("B", (input) => {
5291
5462
  if (windows.length) {
5292
5463
  const $scope1_id = _scope_id();
5293
5464
  _html(`<span${_attr_class([
5294
- "_fM",
5465
+ "_e2",
5295
5466
  input.class,
5296
- { ["_fN"]: agent.stale_seconds != null }
5467
+ { ["_e3"]: agent.stale_seconds != null }
5297
5468
  ])}${agent.stale_seconds != null ? _attr("title", `${agent.note || "provider unreachable"}; last cached numbers`) : " title=\"Plan usage\""}>`);
5298
5469
  _for_of(windows, (win$1, i) => {
5299
5470
  const $scope2_id = _scope_id();
5300
- _html(`<span${_attr_class("_fO")}>`);
5471
+ _html(`<span${_attr_class("_e4")}>`);
5301
5472
  _if(() => {
5302
5473
  if (i) {
5303
5474
  const $scope3_id = _scope_id();
5304
- _html(`<span${_attr_class("_fR")} aria-hidden=true>·</span>`);
5475
+ _html(`<span${_attr_class("_e7")} aria-hidden=true>·</span>`);
5305
5476
  $si__input_agent && writeScope($scope3_id, {});
5306
5477
  return 0;
5307
5478
  }
5308
5479
  }, $scope2_id, "b", $sg__input_agent, $sg__input_agent, $sg__input_agent, 0, 1);
5309
- _html(`<span${_attr_class("_fP")}>${_escape(win$1.window)}${_el_resume($scope2_id, "d", $sg__input_agent)}</span><span${_attr_class(["_fQ", win$1.used_percent >= 90 ? "_eg" : win$1.used_percent >= 70 ? "_ef" : win$1.used_percent >= 40 ? "_ee" : "_ed"])}>${_escape(pctText(win$1.used_percent))}${_el_resume($scope2_id, "f", $sg__input_agent)}</span>${_el_resume($scope2_id, "e", $sg__input_agent)}</span>`);
5480
+ _html(`<span${_attr_class("_e5")}>${_escape(win$1.window)}${_el_resume($scope2_id, "d", $sg__input_agent)}</span><span${_attr_class(["_e6", win$1.used_percent >= 90 ? "_dg" : win$1.used_percent >= 70 ? "_df" : win$1.used_percent >= 40 ? "_de" : "_dd"])}>${_escape(pctText(win$1.used_percent))}${_el_resume($scope2_id, "f", $sg__input_agent)}</span>${_el_resume($scope2_id, "e", $sg__input_agent)}</span>`);
5310
5481
  $si__input_agent && writeScope($scope2_id, {});
5311
5482
  }, "window", $scope1_id, "a", $sg__input_agent, $sg__input_agent__OR__input_class, $sg__input_agent, "</span>", 1);
5312
5483
  $si__input_agent__OR__input_class && writeScope($scope1_id, { _: _scope_with_id($scope0_id) });
@@ -5322,7 +5493,7 @@ var usage_pcts_default = _template("B", (input) => {
5322
5493
  });
5323
5494
  //#endregion
5324
5495
  //#region src/tags/icons/icon-edit.marko
5325
- var icon_edit_default = _template("L", (input) => {
5496
+ var icon_edit_default = _template("M", (input) => {
5326
5497
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
5327
5498
  const $scope0_id = _scope_id();
5328
5499
  _set_serialize_reason({
@@ -5337,12 +5508,12 @@ var icon_edit_default = _template("L", (input) => {
5337
5508
  });
5338
5509
  _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
5339
5510
  });
5340
- var prChip = "_gZ _s _gY";
5341
- var portChip = "_g0 _s _gY";
5511
+ var prChip = "_g1 _s _g0";
5512
+ var portChip = "_g2 _s _g0";
5342
5513
  var prState = {
5343
- open: "_g4",
5344
- merged: "_g5",
5345
- closed: "_g6"
5514
+ open: "_g6",
5515
+ merged: "_g7",
5516
+ closed: "_g8"
5346
5517
  };
5347
5518
  //#endregion
5348
5519
  //#region src/tags/side-nav-chips.marko
@@ -5355,7 +5526,7 @@ var prTitle = (repo, pr) => {
5355
5526
  return parts.join(" · ");
5356
5527
  };
5357
5528
  var isOpen = (pr) => !pr.state || pr.state === "OPEN";
5358
- var side_nav_chips_default = _template("u", (input) => {
5529
+ var side_nav_chips_default = _template("v", (input) => {
5359
5530
  const $scope0_reason = _scope_reason(), $sg__input_status_repos = _serialize_guard($scope0_reason, 4), $si__input_status_repos = _serialize_if($scope0_reason, 4), $sg__input_status_ports = _serialize_guard($scope0_reason, 5), $sg__input_status_repos__OR__input_status_ports = _serialize_guard($scope0_reason, 1), $si__input_status_repos__OR__input_status_ports = _serialize_if($scope0_reason, 1), $si__input_workspaceId = _serialize_if($scope0_reason, 3);
5360
5531
  const $scope0_id = _scope_id();
5361
5532
  const $input_workspaceId__closures = /* @__PURE__ */ new Set();
@@ -5368,7 +5539,7 @@ var side_nav_chips_default = _template("u", (input) => {
5368
5539
  armBox.timer = disarmLater(() => {
5369
5540
  armedPid = null;
5370
5541
  });
5371
- }, "u0", $scope0_id);
5542
+ }, "v0", $scope0_id);
5372
5543
  const dismissPr = _resume((fullName, number) => {
5373
5544
  fetch(`/api/workspaces/${input.workspaceId}/prs`, {
5374
5545
  method: "POST",
@@ -5378,7 +5549,7 @@ var side_nav_chips_default = _template("u", (input) => {
5378
5549
  number
5379
5550
  })
5380
5551
  }).catch(() => {});
5381
- }, "u1", $scope0_id);
5552
+ }, "v1", $scope0_id);
5382
5553
  const repos = input.status?.repos || [];
5383
5554
  const ports = input.status?.ports || [];
5384
5555
  _if(() => {
@@ -5389,8 +5560,8 @@ var side_nav_chips_default = _template("u", (input) => {
5389
5560
  if (repos.length < 2) return "";
5390
5561
  const name = repo.full_name.split("/").at(-1);
5391
5562
  return repos.some((r) => r.full_name !== repo.full_name && r.full_name.split("/").at(-1) === name) ? repoLabel(repo.full_name) : name;
5392
- }, "u2", $scope1_id);
5393
- _html(`<div${_attr_class("_gX")}>`);
5563
+ }, "v2", $scope1_id);
5564
+ _html(`<div${_attr_class("_gZ")}>`);
5394
5565
  _for_of(repos, (repo) => {
5395
5566
  const $scope2_id = _scope_id();
5396
5567
  const $for_content__repo_worktree__closures = /* @__PURE__ */ new Set();
@@ -5406,11 +5577,11 @@ var side_nav_chips_default = _template("u", (input) => {
5406
5577
  [prState.merged]: pr.state === "MERGED",
5407
5578
  [prState.closed]: pr.state === "CLOSED"
5408
5579
  }
5409
- ])}${_attr("title", prTitle(repo, pr))}><a${_attr_class(["_g1", { ["_g8"]: !open }])}${_attr("href", pr.url)} target=_blank rel=noopener>${_escape(repoLabel$1(repo))}${_el_resume($scope3_id, "c", $sg__input_status_repos)}#${_sep($sg__input_status_repos)}${_escape(pr.number)}${_el_resume($scope3_id, "d", $sg__input_status_repos)}</a>${_el_resume($scope3_id, "b", $sg__input_status_repos)}`);
5580
+ ])}${_attr("title", prTitle(repo, pr))}><a${_attr_class(["_g3", { ["_g_"]: !open }])}${_attr("href", pr.url)} target=_blank rel=noopener>${_escape(repoLabel$1(repo))}${_el_resume($scope3_id, "c", $sg__input_status_repos)}#${_sep($sg__input_status_repos)}${_escape(pr.number)}${_el_resume($scope3_id, "d", $sg__input_status_repos)}</a>${_el_resume($scope3_id, "b", $sg__input_status_repos)}`);
5410
5581
  _if(() => {
5411
5582
  if (open) {
5412
5583
  const $scope4_id = _scope_id();
5413
- _html(`<a${_attr_class(["_g1", "_g2"])}${_attr("href", `/w/${input.workspaceId}/review?pr=${encodeURIComponent(`${repo.worktree}/${pr.number}`)}`)}${_attr("title", `Review #${pr.number} changes`)}>`);
5584
+ _html(`<a${_attr_class(["_g3", "_g4"])}${_attr("href", `/w/${input.workspaceId}/review?pr=${encodeURIComponent(`${repo.worktree}/${pr.number}`)}`)}${_attr("title", `Review #${pr.number} changes`)}>`);
5414
5585
  icon_diff_default({ size: 12 });
5415
5586
  _html(`</a>${_el_resume($scope4_id, "a", _serialize_guard($scope0_reason, 0))}`);
5416
5587
  _serialize_if($scope0_reason, 2) && _subscribe($si__input_status_repos && $for_content__repo_worktree__closures, _subscribe($si__input_workspaceId && $input_workspaceId__closures, writeScope($scope4_id, { _: _scope_with_id($scope3_id) })));
@@ -5418,13 +5589,13 @@ var side_nav_chips_default = _template("u", (input) => {
5418
5589
  } else {
5419
5590
  const $scope6_id = _scope_id();
5420
5591
  _html(`<button type=button${_attr_class([
5421
- "_g1",
5422
- "_g2",
5423
- "_g3"
5592
+ "_g3",
5593
+ "_g4",
5594
+ "_g5"
5424
5595
  ])}${_attr("title", `Dismiss #${pr.number}`)}>`);
5425
5596
  icon_xmark_default({ size: 12 });
5426
5597
  _html(`</button>${_el_resume($scope6_id, "a")}`);
5427
- _script($scope6_id, "u3");
5598
+ _script($scope6_id, "v3");
5428
5599
  writeScope($scope6_id, { _: _scope_with_id($scope3_id) });
5429
5600
  return 1;
5430
5601
  }
@@ -5445,15 +5616,15 @@ var side_nav_chips_default = _template("u", (input) => {
5445
5616
  }, "full_name", $scope1_id, "b", $sg__input_status_repos, $sg__input_status_repos, $sg__input_status_repos__OR__input_status_ports);
5446
5617
  _for_of(ports, (p) => {
5447
5618
  const $scope5_id = _scope_id();
5448
- _html(`<span${_attr_class(["_s", portChip])}${_attr("title", p.cmd)}><button type=button${_attr_class(["_g1", "_g7"])}${_attr("title", `Open http://${typeof location === "undefined" ? "localhost" : location.hostname}:${p.port}`)}>:${_sep($sg__input_status_ports)}${_escape(p.port)}${_el_resume($scope5_id, "c", $sg__input_status_ports)}</button>${_el_resume($scope5_id, "b")}<button type=button${_attr_class([
5449
- "_g1",
5450
- "_g2",
5619
+ _html(`<span${_attr_class(["_s", portChip])}${_attr("title", p.cmd)}><button type=button${_attr_class(["_g3", "_g9"])}${_attr("title", `Open http://${typeof location === "undefined" ? "localhost" : location.hostname}:${p.port}`)}>:${_sep($sg__input_status_ports)}${_escape(p.port)}${_el_resume($scope5_id, "c", $sg__input_status_ports)}</button>${_el_resume($scope5_id, "b")}<button type=button${_attr_class([
5451
5620
  "_g3",
5621
+ "_g4",
5622
+ "_g5",
5452
5623
  { ["_q"]: armedPid === p.pid }
5453
5624
  ])}${armedPid === p.pid ? " title=Kill?" : _attr("title", `Kill ${p.cmd} (pid ${p.pid})`)}>`);
5454
5625
  icon_xmark_default({ size: 12 });
5455
5626
  _html(`</button>${_el_resume($scope5_id, "d")}</span>${_el_resume($scope5_id, "a", $sg__input_status_ports)}`);
5456
- _script($scope5_id, "u4");
5627
+ _script($scope5_id, "v4");
5457
5628
  _subscribe($armedPid__closures, writeScope($scope5_id, {
5458
5629
  h: p?.cmd,
5459
5630
  i: p?.port,
@@ -5486,7 +5657,7 @@ var side_nav_chips_default = _template("u", (input) => {
5486
5657
  });
5487
5658
  //#endregion
5488
5659
  //#region src/tags/side-nav-item.marko
5489
- var side_nav_item_default = _template("v", (input) => {
5660
+ var side_nav_item_default = _template("w", (input) => {
5490
5661
  const $scope0_reason = _scope_reason(), $si__input_workspaces__OR__input_workspaceId = _serialize_if($scope0_reason, 0), $sg__input_workspaceId__OR__input_status = _serialize_guard($scope0_reason, 1), $sg__input_sessions = _serialize_guard($scope0_reason, 24), $si__input_sessions = _serialize_if($scope0_reason, 24), $si__input_page__OR__input_sessions__OR__input_workspaceId__OR__input_status = _serialize_if($scope0_reason, 10), $sg__input_page__OR__input_sessions__OR__input_workspaceId__OR__input_status = _serialize_guard($scope0_reason, 10), $si__input_current = _serialize_if($scope0_reason, 21), $sg__input_page = _serialize_guard($scope0_reason, 22), $sg__input_workspaces__OR__input_workspaceId = _serialize_guard($scope0_reason, 0), $si__input_agents = _serialize_if($scope0_reason, 30), $sg__input_onNewSession = _serialize_guard($scope0_reason, 29), $sg__input_onNewSession__OR__input_onReview = _serialize_guard($scope0_reason, 2), $sg__input_onReview = _serialize_guard($scope0_reason, 31), $sg__input_rail = _serialize_guard($scope0_reason, 23), $si__input_rail = _serialize_if($scope0_reason, 23), $si__input_workspaceId = _serialize_if($scope0_reason, 26), $si__input_current__OR__input_page__OR__input_rail__OR__input_workspaces__OR__input_workspaceId = _serialize_if($scope0_reason, 13), $si__input_page__OR__input_rail__OR__input_workspaces__OR__input_workspaceId = _serialize_if($scope0_reason, 9), $si__input_current__OR__input_page__OR__input_rail__OR__input_sessions__OR__input_currentTab = _serialize_if($scope0_reason, 12), $si__input_rail__OR__input_workspaces__OR__input_workspaceId = _serialize_if($scope0_reason, 4), $si__input_index = _serialize_if($scope0_reason, 27), $si__input_onNewSession = _serialize_if($scope0_reason, 29), $si__input_onReview = _serialize_if($scope0_reason, 31), $si__input_managing = _serialize_if($scope0_reason, 32), $si__input_currentTab = _serialize_if($scope0_reason, 25), $si__input_page = _serialize_if($scope0_reason, 22), $si__input_railPop = _serialize_if($scope0_reason, 28);
5491
5662
  const $scope0_id = _scope_id();
5492
5663
  const $input_current__closures = /* @__PURE__ */ new Set();
@@ -5515,14 +5686,14 @@ var side_nav_item_default = _template("v", (input) => {
5515
5686
  armBox.timer = disarmLater(() => {
5516
5687
  armedKill = null;
5517
5688
  });
5518
- }, "v1", $scope0_id);
5689
+ }, "w1", $scope0_id);
5519
5690
  let renamingId = null;
5520
5691
  let renameValue = "";
5521
5692
  const commitRename = _resume((s) => {
5522
5693
  if (renamingId !== s.id) return;
5523
5694
  renamingId = null;
5524
5695
  input.onRenameSession?.(s, renameValue.trim());
5525
- }, "v2", $scope0_id);
5696
+ }, "w2", $scope0_id);
5526
5697
  let usage = null;
5527
5698
  const openSess = (() => {
5528
5699
  if (!input.current || input.page || input.rail) return null;
@@ -5540,10 +5711,10 @@ var side_nav_item_default = _template("v", (input) => {
5540
5711
  _if(() => {
5541
5712
  if (input.rail) {
5542
5713
  const $scope2_id = _scope_id();
5543
- _html(`<a${_attr("href", `/w/${ws$1.id}`)}${_attr_class([railBtn, { ["_gr"]: input.current }])}${_attr("title", ws$1.name)}>${_escape((input.index ?? 0) + 1)}${_el_resume($scope2_id, "b", _serialize_guard($scope0_reason, 27))}<span${_attr_class([
5714
+ _html(`<a${_attr("href", `/w/${ws$1.id}`)}${_attr_class([railBtn, { ["_gt"]: input.current }])}${_attr("title", ws$1.name)}>${_escape((input.index ?? 0) + 1)}${_el_resume($scope2_id, "b", _serialize_guard($scope0_reason, 27))}<span${_attr_class([
5544
5715
  "_z",
5545
5716
  phase[dot],
5546
- "_gu"
5717
+ "_gw"
5547
5718
  ])}></span>${_el_resume($scope2_id, "c", $sg__input_workspaceId__OR__input_status)}</a>${_el_resume($scope2_id, "a", _serialize_guard($scope0_reason, 3))}`);
5548
5719
  _serialize_if($scope0_reason, 18) && _subscribe($si__input_workspaces__OR__input_workspaceId && $ws_name__closures, _subscribe($si__input_workspaces__OR__input_workspaceId && $ws_id__closures, _subscribe($si__input_index && $input_index__closures, _subscribe($si__input_current && $input_current__closures, writeScope($scope2_id, { _: _scope_with_id($scope1_id) })))));
5549
5720
  return 0;
@@ -5551,15 +5722,15 @@ var side_nav_item_default = _template("v", (input) => {
5551
5722
  const $scope3_id = _scope_id();
5552
5723
  const sessions$1 = input.sessions || [];
5553
5724
  const phaseLabel = dot === "working" ? "Working" : dot === "waiting" ? "Needs input" : dot === "idle" ? "Idle" : "Not running";
5554
- _html(`<section${_attr_class(["_gw", {
5555
- ["_gr"]: input.current,
5725
+ _html(`<section${_attr_class(["_gy", {
5726
+ ["_gt"]: input.current,
5556
5727
  ["_5"]: input.current,
5557
- ["_gx"]: input.railPop,
5558
- ["_gv"]: input.page
5559
- }])}><div${_attr_class("_gy")}><a${_attr("href", `/w/${ws$1.id}`)}${_attr_class("_gz")}><span${_attr_class([
5728
+ ["_gz"]: input.railPop,
5729
+ ["_gx"]: input.page
5730
+ }])}><div${_attr_class("_gA")}><a${_attr("href", `/w/${ws$1.id}`)}${_attr_class("_gB")}><span${_attr_class([
5560
5731
  "_z",
5561
5732
  phase[dot],
5562
- "_gM"
5733
+ "_gO"
5563
5734
  ])}${_attr("title", phaseLabel)}></span>${_el_resume($scope3_id, "d", $sg__input_workspaceId__OR__input_status)}`);
5564
5735
  _if(() => {
5565
5736
  if (sessions$1.length === 1) {
@@ -5572,7 +5743,7 @@ var side_nav_item_default = _template("v", (input) => {
5572
5743
  icon_agent_default({
5573
5744
  agent: activeAgent(sessions$1[0]),
5574
5745
  size: 12,
5575
- class: "_gE"
5746
+ class: "_gG"
5576
5747
  });
5577
5748
  $si__input_sessions && writeScope($scope14_id, {
5578
5749
  _: _scope_with_id($scope3_id),
@@ -5582,16 +5753,16 @@ var side_nav_item_default = _template("v", (input) => {
5582
5753
  }
5583
5754
  }, $scope3_id, "e", $sg__input_sessions, $sg__input_sessions);
5584
5755
  const metaText = sessions$1.length === 0 ? phaseLabel : sessions$1.length === 1 ? sessions$1[0].title || "" : `${sessions$1.length} sessions`;
5585
- _html(`<span${_attr_class("_gF")}><span${_attr_class("_gG")}>${_escape(ws$1.name)}${_el_resume($scope3_id, "h", $sg__input_workspaces__OR__input_workspaceId)}</span>`);
5756
+ _html(`<span${_attr_class("_gH")}><span${_attr_class("_gI")}>${_escape(ws$1.name)}${_el_resume($scope3_id, "h", $sg__input_workspaces__OR__input_workspaceId)}</span>`);
5586
5757
  _if(() => {
5587
5758
  if (input.page && metaText) {
5588
5759
  const $scope16_id = _scope_id();
5589
- _html(`<span${_attr_class("_gK")}>${_escape(metaText)}${_el_resume($scope16_id, "b", _serialize_guard($scope0_reason, 7))}</span>`);
5760
+ _html(`<span${_attr_class("_gM")}>${_escape(metaText)}${_el_resume($scope16_id, "b", _serialize_guard($scope0_reason, 7))}</span>`);
5590
5761
  $si__input_page__OR__input_sessions__OR__input_workspaceId__OR__input_status && writeScope($scope16_id, { _: _serialize_if($scope0_reason, 7) && _scope_with_id($scope3_id) });
5591
5762
  return 0;
5592
5763
  } else if (sessions$1.length === 1 && sessions$1[0].title) {
5593
5764
  const $scope15_id = _scope_id();
5594
- _html(`<span${_attr_class("_gH")}>${_escape(sessions$1[0].title)}${_el_resume($scope15_id, "b", $sg__input_sessions)}</span>`);
5765
+ _html(`<span${_attr_class("_gJ")}>${_escape(sessions$1[0].title)}${_el_resume($scope15_id, "b", $sg__input_sessions)}</span>`);
5595
5766
  $si__input_page__OR__input_sessions__OR__input_workspaceId__OR__input_status && writeScope($scope15_id, { _: $si__input_sessions && _scope_with_id($scope3_id) });
5596
5767
  return 1;
5597
5768
  }
@@ -5604,7 +5775,7 @@ var side_nav_item_default = _template("v", (input) => {
5604
5775
  "_I",
5605
5776
  "_R",
5606
5777
  "_K",
5607
- "_gL"
5778
+ "_gN"
5608
5779
  ])}>${input.current ? "Open" : ""}${_el_resume($scope4_id, "b", _serialize_guard($scope0_reason, 21))}</span>`);
5609
5780
  $si__input_current__OR__input_page__OR__input_rail__OR__input_workspaces__OR__input_workspaceId && _subscribe($si__input_current && $input_current__closures, writeScope($scope4_id, {
5610
5781
  _: _scope_with_id($scope3_id),
@@ -5617,7 +5788,7 @@ var side_nav_item_default = _template("v", (input) => {
5617
5788
  _if(() => {
5618
5789
  if (!input.page) {
5619
5790
  const $scope5_id = _scope_id();
5620
- _html(`<div${_attr_class("_gA")}>`);
5791
+ _html(`<div${_attr_class("_gC")}>`);
5621
5792
  _if(() => {
5622
5793
  if (input.onNewSession) {
5623
5794
  const $scope6_id = _scope_id();
@@ -5631,7 +5802,7 @@ var side_nav_item_default = _template("v", (input) => {
5631
5802
  _html(`</button>${_el_resume($scope6_id, "a")}<div${_attr("id", newPopId)} popover=auto${_attr_class(sessionPop)}>`);
5632
5803
  _for_of([], (agent) => {
5633
5804
  const $scope7_id = _scope_id();
5634
- _html(`<button${_attr_class("_gq")}>`);
5805
+ _html(`<button${_attr_class("_gs")}>`);
5635
5806
  _set_serialize_reason(12);
5636
5807
  const $childScope2 = _peek_scope_id();
5637
5808
  icon_agent_default({
@@ -5639,13 +5810,13 @@ var side_nav_item_default = _template("v", (input) => {
5639
5810
  size: 14
5640
5811
  });
5641
5812
  _html(`<!>${_escape(agent)}${_el_resume($scope7_id, "c")}</button>${_el_resume($scope7_id, "a")}`);
5642
- _script($scope7_id, "v3");
5813
+ _script($scope7_id, "w3");
5643
5814
  writeScope($scope7_id, {
5644
5815
  e: agent,
5645
5816
  b: _existing_scope($childScope2)
5646
5817
  });
5647
5818
  }, (a) => a, $scope6_id, "c", 1, 1, 1, "</div>", 1);
5648
- _script($scope6_id, "v4");
5819
+ _script($scope6_id, "w4");
5649
5820
  _subscribe($si__input_agents && $input_agents__closures, writeScope($scope6_id, {
5650
5821
  e: $si__input_agents && pickerReady,
5651
5822
  _: _scope_with_id($scope5_id)
@@ -5666,7 +5837,7 @@ var side_nav_item_default = _template("v", (input) => {
5666
5837
  return 0;
5667
5838
  }
5668
5839
  }, $scope5_id, "c", $sg__input_onReview, $sg__input_onReview, $sg__input_onNewSession__OR__input_onReview, 0, 1);
5669
- _html(`<a${input.managing ? _attr("href", `/w/${ws$1.id}`) : _attr("href", `/w/${ws$1.id}/manage`)}${_attr_class([rowIcon, { ["_gs"]: input.managing }])} title=${input.managing ? "\"Back to terminal\"" : "\"Manage workspace\""}${input.managing ? " aria-current=page" : ""}>`);
5840
+ _html(`<a${input.managing ? _attr("href", `/w/${ws$1.id}`) : _attr("href", `/w/${ws$1.id}/manage`)}${_attr_class([rowIcon, { ["_gu"]: input.managing }])} title=${input.managing ? "\"Back to terminal\"" : "\"Manage workspace\""}${input.managing ? " aria-current=page" : ""}>`);
5670
5841
  icon_manage_default({ size: 12 });
5671
5842
  _html(`</a>${_el_resume($scope5_id, "d", _serialize_guard($scope0_reason, 8))}</div>`);
5672
5843
  _subscribe($si__input_workspaces__OR__input_workspaceId && $ws_id__closures, _subscribe($si__input_managing && $input_managing__closures, _subscribe($si__input_onReview && $input_onReview__closures, _subscribe($si__input_onNewSession && $input_onNewSession__closures, writeScope($scope5_id, {
@@ -5676,7 +5847,7 @@ var side_nav_item_default = _template("v", (input) => {
5676
5847
  return 0;
5677
5848
  }
5678
5849
  }, $scope3_id, "k", $sg__input_page, $sg__input_page, 1, 0, 1);
5679
- _html(`</div><div${_attr_class("_gR")}>`);
5850
+ _html(`</div><div${_attr_class("_gT")}>`);
5680
5851
  _if(() => {
5681
5852
  if (sessions$1.length === 1 && openPlan) {
5682
5853
  const $scope11_id = _scope_id();
@@ -5684,7 +5855,7 @@ var side_nav_item_default = _template("v", (input) => {
5684
5855
  const $childScope3 = _peek_scope_id();
5685
5856
  usage_pcts_default({
5686
5857
  agent: openPlan,
5687
- class: "_gI"
5858
+ class: "_gK"
5688
5859
  });
5689
5860
  _subscribe($openPlan__closures, writeScope($scope11_id, {
5690
5861
  a: _existing_scope($childScope3),
@@ -5695,14 +5866,14 @@ var side_nav_item_default = _template("v", (input) => {
5695
5866
  }, $scope3_id, "m");
5696
5867
  _for_of(sessions$1.length > 1 ? sessions$1 : [], (s) => {
5697
5868
  const $scope8_id = _scope_id();
5698
- _html(`<div${_attr_class(["_gB", { ["_gr"]: s.id === input.currentTab }])}>`);
5869
+ _html(`<div${_attr_class(["_gD", { ["_gt"]: s.id === input.currentTab }])}>`);
5699
5870
  _if(() => {
5700
5871
  if (renamingId === s.id) {
5701
5872
  const $scope10_id = _scope_id();
5702
5873
  _html(`<span${_attr_class([
5703
5874
  "_z",
5704
5875
  phase[sessionPhase(s.state)],
5705
- "_gP"
5876
+ "_gR"
5706
5877
  ])}></span>${_el_resume($scope10_id, "a", $sg__input_sessions)}`);
5707
5878
  _set_serialize_reason({
5708
5879
  1: $sg__input_sessions,
@@ -5712,17 +5883,17 @@ var side_nav_item_default = _template("v", (input) => {
5712
5883
  icon_agent_default({
5713
5884
  agent: activeAgent(s),
5714
5885
  size: 13,
5715
- class: "_gT"
5886
+ class: "_gV"
5716
5887
  });
5717
5888
  _html(`<input${_attr_input_value($scope10_id, "c", renameValue, _resume((_new_renameValue) => {
5718
5889
  renameValue = _new_renameValue;
5719
- }, "v0", $scope10_id))}${_attr_class(["_U", "_gQ"])} aria-label="Session name">${_el_resume($scope10_id, "c")}`);
5720
- _script($scope10_id, "v5");
5890
+ }, "w0", $scope10_id))}${_attr_class(["_U", "_gS"])} aria-label="Session name">${_el_resume($scope10_id, "c")}`);
5891
+ _script($scope10_id, "w5");
5721
5892
  _subscribe($renameValue__closures, writeScope($scope10_id, { b: $si__input_sessions && _existing_scope($childScope4) }));
5722
5893
  return 0;
5723
5894
  } else {
5724
5895
  const $scope9_id = _scope_id();
5725
- _html(`<a${_attr("href", `/w/${ws$1.id}?s=${s.id}`)}${_attr_class("_gS")}><span${_attr_class(["_z", phase[sessionPhase(s.state)]])}></span>${_el_resume($scope9_id, "b", $sg__input_sessions)}`);
5896
+ _html(`<a${_attr("href", `/w/${ws$1.id}?s=${s.id}`)}${_attr_class("_gU")}><span${_attr_class(["_z", phase[sessionPhase(s.state)]])}></span>${_el_resume($scope9_id, "b", $sg__input_sessions)}`);
5726
5897
  _set_serialize_reason({
5727
5898
  1: $sg__input_sessions,
5728
5899
  2: $sg__input_sessions
@@ -5731,9 +5902,9 @@ var side_nav_item_default = _template("v", (input) => {
5731
5902
  icon_agent_default({
5732
5903
  agent: activeAgent(s),
5733
5904
  size: 13,
5734
- class: "_gT"
5905
+ class: "_gV"
5735
5906
  });
5736
- _html(`<span${_attr_class("_gN")}>${_escape(s.title || activeAgent(s))}${_el_resume($scope9_id, "e", $sg__input_sessions)}</span></a>${_el_resume($scope9_id, "a", _serialize_guard($scope0_reason, 6))}<div${_attr_class("_gO")}><button${_attr_class(rowIcon)} title="Rename session">`);
5907
+ _html(`<span${_attr_class("_gP")}>${_escape(s.title || activeAgent(s))}${_el_resume($scope9_id, "e", $sg__input_sessions)}</span></a>${_el_resume($scope9_id, "a", _serialize_guard($scope0_reason, 6))}<div${_attr_class("_gQ")}><button${_attr_class(rowIcon)} title="Rename session">`);
5737
5908
  icon_edit_default({ size: 12 });
5738
5909
  _html(`</button>${_el_resume($scope9_id, "g")}<button${_attr_class([close, { ["_q"]: armedKill === s.id }])} title=${armedKill === s.id ? "Close?" : "\"Close session\""}>`);
5739
5910
  icon_xmark_default({ size: 12 });
@@ -5745,7 +5916,7 @@ var side_nav_item_default = _template("v", (input) => {
5745
5916
  const $childScope6 = _peek_scope_id();
5746
5917
  usage_pcts_default({
5747
5918
  agent: openPlan,
5748
- class: "_gJ"
5919
+ class: "_gL"
5749
5920
  });
5750
5921
  _subscribe($openPlan__closures, writeScope($scope12_id, {
5751
5922
  a: _existing_scope($childScope6),
@@ -5754,7 +5925,7 @@ var side_nav_item_default = _template("v", (input) => {
5754
5925
  return 0;
5755
5926
  }
5756
5927
  }, $scope9_id, "k");
5757
- _script($scope9_id, "v6");
5928
+ _script($scope9_id, "w6");
5758
5929
  _subscribe($si__input_workspaces__OR__input_workspaceId && $ws_id__closures, _subscribe($openPlan__closures, _subscribe($si__input_current__OR__input_page__OR__input_rail__OR__input_sessions__OR__input_currentTab && $openSess_id__closures, _subscribe($armedKill__closures, writeScope($scope9_id, {
5759
5930
  c: $si__input_sessions && _existing_scope($childScope5),
5760
5931
  Cat: 1,
@@ -5786,7 +5957,7 @@ var side_nav_item_default = _template("v", (input) => {
5786
5957
  status: st
5787
5958
  });
5788
5959
  _html(`</div></section>${_el_resume($scope3_id, "a")}`);
5789
- _script($scope3_id, "v7");
5960
+ _script($scope3_id, "w7");
5790
5961
  _subscribe($si__input_workspaces__OR__input_workspaceId && $ws_name__closures, _subscribe($si__input_workspaces__OR__input_workspaceId && $ws_id__closures, _subscribe($openPlan__closures, _subscribe($si__input_railPop && $input_railPop__closures, _subscribe($si__input_workspaceId && $input_workspaceId__closures, _subscribe($si__input_sessions && $input_sessions__closures, _subscribe($si__input_page && $input_page__closures, _subscribe($si__input_current && $input_current__closures, writeScope($scope3_id, {
5791
5962
  r: sessions$1.length,
5792
5963
  t: $si__input_sessions && sessions$1[0],
@@ -5810,7 +5981,7 @@ var side_nav_item_default = _template("v", (input) => {
5810
5981
  return 0;
5811
5982
  }
5812
5983
  }, $scope0_id, "a", _serialize_guard($scope0_reason, 11), $sg__input_workspaces__OR__input_workspaceId, $sg__input_workspaces__OR__input_workspaceId);
5813
- _script($scope0_id, "v8");
5984
+ _script($scope0_id, "w8");
5814
5985
  writeScope($scope0_id, {
5815
5986
  d: input.onRenameSession,
5816
5987
  e: _serialize_if($scope0_reason, 19) && input.current,
@@ -5864,7 +6035,7 @@ var side_nav_item_default = _template("v", (input) => {
5864
6035
  });
5865
6036
  //#endregion
5866
6037
  //#region src/tags/icons/icon-folder-plus.marko
5867
- var icon_folder_plus_default = _template("M", (input) => {
6038
+ var icon_folder_plus_default = _template("N", (input) => {
5868
6039
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
5869
6040
  const $scope0_id = _scope_id();
5870
6041
  _set_serialize_reason({
@@ -5881,7 +6052,7 @@ var icon_folder_plus_default = _template("M", (input) => {
5881
6052
  });
5882
6053
  //#endregion
5883
6054
  //#region src/tags/icons/icon-sidebar-collapse.marko
5884
- var icon_sidebar_collapse_default = _template("U", (input) => {
6055
+ var icon_sidebar_collapse_default = _template("V", (input) => {
5885
6056
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
5886
6057
  const $scope0_id = _scope_id();
5887
6058
  _set_serialize_reason({
@@ -5898,7 +6069,7 @@ var icon_sidebar_collapse_default = _template("U", (input) => {
5898
6069
  });
5899
6070
  //#endregion
5900
6071
  //#region src/tags/side-nav.marko
5901
- var side_nav_default = _template("w", (input) => {
6072
+ var side_nav_default = _template("x", (input) => {
5902
6073
  const $scope0_reason = _scope_reason(), $sg__input_instanceName = _serialize_guard($scope0_reason, 11), $sg__input_setupReady = _serialize_guard($scope0_reason, 12), $sg__input_instanceAccent = _serialize_guard($scope0_reason, 10), $sg__input_workspace__OR__input_allWorkspaces = _serialize_guard($scope0_reason, 0), $sg__input_workspace__OR__input_allWorkspaces__OR__input_allStatus = _serialize_guard($scope0_reason, 2), $sg__input_agents = _serialize_guard($scope0_reason, 14), $si__input_workspace = _serialize_if($scope0_reason, 3), $si__input_workspace__OR__input_allWorkspaces = _serialize_if($scope0_reason, 0), $si__input_allStatus = _serialize_if($scope0_reason, 9), $si__input_setupReady = _serialize_if($scope0_reason, 12), $si__input_instanceName = _serialize_if($scope0_reason, 11), $si__input_instanceAccent = _serialize_if($scope0_reason, 10), $si__input_onSelectWorkspace = _serialize_if($scope0_reason, 13), $si__input_agents = _serialize_if($scope0_reason, 14), $si__input_onNewSession = _serialize_if($scope0_reason, 15), $si__input_onReviewOpened = _serialize_if($scope0_reason, 16), $si__input_sessions = _serialize_if($scope0_reason, 17), $si__input_onRenameSession = _serialize_if($scope0_reason, 18), $si__input_onCloseSession = _serialize_if($scope0_reason, 19);
5903
6074
  const $scope0_id = _scope_id();
5904
6075
  const $input_instanceName__closures = /* @__PURE__ */ new Set();
@@ -5924,7 +6095,7 @@ var side_nav_default = _template("w", (input) => {
5924
6095
  let canPush = false;
5925
6096
  const leaveNav = _resume(() => {
5926
6097
  if (view === "nav") view = "term";
5927
- }, "w0", $scope0_id);
6098
+ }, "x0", $scope0_id);
5928
6099
  const toggleNotify = _resume(async () => {
5929
6100
  try {
5930
6101
  if (notifyOn) {
@@ -5938,7 +6109,7 @@ var side_nav_default = _template("w", (input) => {
5938
6109
  notifyOn = false;
5939
6110
  input.onError?.(`Notifications failed: ${String(err.message || err)}`);
5940
6111
  }
5941
- }, "w1", $scope0_id);
6112
+ }, "x1", $scope0_id);
5942
6113
  const itemIds = input.allWorkspaces?.length ? input.allWorkspaces.filter((w) => w.status === "active").map((w) => w.id) : [ws.id];
5943
6114
  const workspaces = input.allWorkspaces || [ws];
5944
6115
  const allStatus = input.allStatus || {};
@@ -5948,34 +6119,34 @@ var side_nav_default = _template("w", (input) => {
5948
6119
  const iconSrc = `/api/instance/icon${input.instanceAccent ? `?v=${input.instanceAccent.slice(1)}` : ""}`;
5949
6120
  const otherIds = itemIds.filter((id) => id !== ws.id);
5950
6121
  const listIds = isPage ? [ws.id, ...otherIds] : itemIds;
5951
- _html(`<aside${_attr_class(["_es", {
5952
- ["_eq"]: !navOpen,
5953
- ["_er"]: isPage
6122
+ _html(`<aside${_attr_class(["_dp", {
6123
+ ["_dn"]: !navOpen,
6124
+ ["_do"]: isPage
5954
6125
  }])}${_attr("hidden", view === "diff")}>`);
5955
6126
  _if(() => {
5956
6127
  if (isPage) {
5957
6128
  const $scope1_id = _scope_id();
5958
- _html(`<header${_attr_class("_ev")}><div${_attr_class("_eE")}>`);
6129
+ _html(`<header${_attr_class("_ds")}><div${_attr_class("_dB")}>`);
5959
6130
  _if(() => {
5960
6131
  if (input.instanceName) {
5961
6132
  const $scope2_id = _scope_id();
5962
- _html(`<div${_attr_class("_eB")} title="This work server (Settings → Appearance)"><img${_attr_class("_eC")}${_attr("src", iconSrc)} alt aria-hidden=true>${_el_resume($scope2_id, "b", $sg__input_instanceAccent)}<span${_attr_class("_eD")}>${_escape(input.instanceName)}${_el_resume($scope2_id, "d", $sg__input_instanceName)}</span></div>`);
6133
+ _html(`<div${_attr_class("_dy")} title="This work server (Settings → Appearance)"><img${_attr_class("_dz")}${_attr("src", iconSrc)} alt aria-hidden=true>${_el_resume($scope2_id, "b", $sg__input_instanceAccent)}<span${_attr_class("_dA")}>${_escape(input.instanceName)}${_el_resume($scope2_id, "d", $sg__input_instanceName)}</span></div>`);
5963
6134
  _subscribe($si__input_instanceAccent && $iconSrc__closures, _subscribe($si__input_instanceName && $input_instanceName__closures, writeScope($scope2_id, { _: _scope_with_id($scope1_id) })));
5964
6135
  return 0;
5965
6136
  }
5966
6137
  }, $scope1_id, "c", $sg__input_instanceName, $sg__input_instanceName, 1, 0, 1);
5967
- _html(`<h1${_attr_class("_ew")}>Workspaces</h1></div><div${_attr_class("_ex")}>`);
6138
+ _html(`<h1${_attr_class("_dt")}>Workspaces</h1></div><div${_attr_class("_du")}>`);
5968
6139
  _if(() => {}, $scope1_id, "f", 1, 1, 1, 0, 1);
5969
6140
  _html(`<a${view === "settings" ? _attr("href", backHref) : " href=/settings"}${_attr_class([
5970
6141
  iconBtn$1,
5971
- "_ey",
5972
- { ["_en"]: view === "settings" }
6142
+ "_dv",
6143
+ { ["_dk"]: view === "settings" }
5973
6144
  ])} title=${view === "settings" ? "\"Back to workspace\"" : "Settings"}${view === "settings" ? " aria-current=page" : ""}>`);
5974
6145
  icon_settings_default({ size: 16 });
5975
6146
  _if(() => {
5976
6147
  if (input.setupReady === false) {
5977
6148
  const $scope12_id = _scope_id();
5978
- _html(`<span${_attr_class(["_z", "_ep"])} title="Machine setup incomplete"></span>`);
6149
+ _html(`<span${_attr_class(["_z", "_dm"])} title="Machine setup incomplete"></span>`);
5979
6150
  $si__input_setupReady && writeScope($scope12_id, {});
5980
6151
  return 0;
5981
6152
  }
@@ -5988,18 +6159,18 @@ var side_nav_default = _template("w", (input) => {
5988
6159
  _if(() => {
5989
6160
  if (!isPage && input.instanceName) {
5990
6161
  const $scope3_id = _scope_id();
5991
- _html(`<div${_attr_class("_eB")} title="This work server (Settings → Appearance)"><img${_attr_class("_eC")}${_attr("src", iconSrc)} alt aria-hidden=true>${_el_resume($scope3_id, "b", $sg__input_instanceAccent)}<span${_attr_class("_eD")}>${_escape(input.instanceName)}${_el_resume($scope3_id, "d", $sg__input_instanceName)}</span></div>`);
6162
+ _html(`<div${_attr_class("_dy")} title="This work server (Settings → Appearance)"><img${_attr_class("_dz")}${_attr("src", iconSrc)} alt aria-hidden=true>${_el_resume($scope3_id, "b", $sg__input_instanceAccent)}<span${_attr_class("_dA")}>${_escape(input.instanceName)}${_el_resume($scope3_id, "d", $sg__input_instanceName)}</span></div>`);
5992
6163
  writeScope($scope3_id, {});
5993
6164
  return 0;
5994
6165
  }
5995
6166
  }, $scope0_id, "c", 1, 1, 1, 0, 1);
5996
- _html(`<div${_attr_class("_eF")}>`);
6167
+ _html(`<div${_attr_class("_dC")}>`);
5997
6168
  _for_of(listIds, (wsId) => {
5998
6169
  const $scope4_id = _scope_id();
5999
6170
  _if(() => {
6000
6171
  if (isPage && wsId === ws.id) {
6001
6172
  const $scope13_id = _scope_id();
6002
- _html(`<h2${_attr_class(["_bH", "_ez"])}>Current</h2>`);
6173
+ _html(`<h2${_attr_class(["_bH", "_dw"])}>Current</h2>`);
6003
6174
  writeScope($scope13_id, {});
6004
6175
  return 0;
6005
6176
  }
@@ -6007,7 +6178,7 @@ var side_nav_default = _template("w", (input) => {
6007
6178
  _if(() => {
6008
6179
  if (isPage && wsId !== ws.id && wsId === otherIds[0]) {
6009
6180
  const $scope14_id = _scope_id();
6010
- _html(`<h2${_attr_class(["_bH", "_ez"])}>Other workspaces</h2>`);
6181
+ _html(`<h2${_attr_class(["_bH", "_dw"])}>Other workspaces</h2>`);
6011
6182
  writeScope($scope14_id, {});
6012
6183
  return 0;
6013
6184
  }
@@ -6057,12 +6228,12 @@ var side_nav_default = _template("w", (input) => {
6057
6228
  leaveNav();
6058
6229
  input.onSelectWorkspace?.(wsId);
6059
6230
  } else if (view === "nav" || view === "manage" || view === "settings" || view === "new") view = "term";
6060
- }, "w2", $scope4_id),
6231
+ }, "x2", $scope4_id),
6061
6232
  agents: input.agents,
6062
6233
  onNewSession: _resume(function(agent) {
6063
6234
  leaveNav();
6064
6235
  input.onNewSession(wsId, agent);
6065
- }, "w3", $scope4_id),
6236
+ }, "x3", $scope4_id),
6066
6237
  onReview: _resume(function() {
6067
6238
  if (wsId === ws.id) {
6068
6239
  if (view === "diff") view = "term";
@@ -6071,7 +6242,7 @@ var side_nav_default = _template("w", (input) => {
6071
6242
  requestDiff(wsId);
6072
6243
  input.onSelectWorkspace?.(wsId);
6073
6244
  }
6074
- }, "w4", $scope4_id),
6245
+ }, "x4", $scope4_id),
6075
6246
  sessions: wsId === ws.id && input.sessions ? input.sessions : allStatus[wsId]?.sessions || [],
6076
6247
  currentTab: wsId === ws.id && view === "term" ? tab : null,
6077
6248
  onRenameSession: input.onRenameSession,
@@ -6087,14 +6258,14 @@ var side_nav_default = _template("w", (input) => {
6087
6258
  const $scope5_id = _scope_id();
6088
6259
  let railHover = null;
6089
6260
  const railHoverBox = { timer: 0 };
6090
- const railKeep = _resume(() => clearTimeout(railHoverBox.timer), "w5", $scope5_id);
6261
+ const railKeep = _resume(() => clearTimeout(railHoverBox.timer), "x5", $scope5_id);
6091
6262
  const railHide = _resume(() => {
6092
6263
  clearTimeout(railHoverBox.timer);
6093
6264
  railHoverBox.timer = setTimeout(() => {
6094
6265
  railHover = null;
6095
6266
  }, 150);
6096
- }, "w6", $scope5_id);
6097
- _html(`<div${_attr_class("_eG")}>`);
6267
+ }, "x6", $scope5_id);
6268
+ _html(`<div${_attr_class("_dD")}>`);
6098
6269
  _for_of(itemIds, (wsId, i) => {
6099
6270
  const $scope6_id = _scope_id();
6100
6271
  _html("<span>");
@@ -6134,10 +6305,10 @@ var side_nav_default = _template("w", (input) => {
6134
6305
  onSelect: _resume(function() {
6135
6306
  if (wsId !== ws.id) input.onSelectWorkspace?.(wsId);
6136
6307
  else if (view === "manage" || view === "settings" || view === "new") view = "term";
6137
- }, "w7", $scope6_id)
6308
+ }, "x7", $scope6_id)
6138
6309
  });
6139
6310
  _html(`</span>${_el_resume($scope6_id, "a")}`);
6140
- _script($scope6_id, "w12");
6311
+ _script($scope6_id, "x12");
6141
6312
  _subscribe($si__input_allStatus && $allStatus__closures, _subscribe($si__input_workspace__OR__input_allWorkspaces && $workspaces__closures, _subscribe($si__input_workspace && $ws_id__closures, writeScope($scope6_id, {
6142
6313
  d: wsId,
6143
6314
  _: _scope_with_id($scope5_id),
@@ -6148,7 +6319,7 @@ var side_nav_default = _template("w", (input) => {
6148
6319
  if (railHover) {
6149
6320
  const $scope7_id = _scope_id();
6150
6321
  const hoverId = railHover.id;
6151
- _html(`<div${_attr_class(["_4", "_eJ"])}${_attr_style(`top:${railHover.top}px;left:${railHover.left}px`)}>`);
6322
+ _html(`<div${_attr_class(["_4", "_dG"])}${_attr_style(`top:${railHover.top}px;left:${railHover.left}px`)}>`);
6152
6323
  _set_serialize_reason({
6153
6324
  0: 1,
6154
6325
  1: 1,
@@ -6192,12 +6363,12 @@ var side_nav_default = _template("w", (input) => {
6192
6363
  railHover = null;
6193
6364
  if (hoverId !== ws.id) input.onSelectWorkspace?.(hoverId);
6194
6365
  else if (view === "manage" || view === "settings" || view === "new") view = "term";
6195
- }, "w8", $scope7_id),
6366
+ }, "x8", $scope7_id),
6196
6367
  agents: input.agents,
6197
6368
  onNewSession: _resume(function(agent) {
6198
6369
  railHover = null;
6199
6370
  input.onNewSession(hoverId, agent);
6200
- }, "w9", $scope7_id),
6371
+ }, "x9", $scope7_id),
6201
6372
  onReview: _resume(function() {
6202
6373
  railHover = null;
6203
6374
  if (hoverId === ws.id) {
@@ -6207,14 +6378,14 @@ var side_nav_default = _template("w", (input) => {
6207
6378
  requestDiff(hoverId);
6208
6379
  input.onSelectWorkspace?.(hoverId);
6209
6380
  }
6210
- }, "w10", $scope7_id),
6381
+ }, "x10", $scope7_id),
6211
6382
  sessions: hoverId === ws.id && input.sessions ? input.sessions : allStatus[hoverId]?.sessions || [],
6212
6383
  currentTab: hoverId === ws.id && view === "term" ? tab : null,
6213
6384
  onRenameSession: input.onRenameSession,
6214
6385
  onCloseSession: input.onCloseSession
6215
6386
  });
6216
6387
  _html(`</div>${_el_resume($scope7_id, "a")}`);
6217
- _script($scope7_id, "w13");
6388
+ _script($scope7_id, "x13");
6218
6389
  _subscribe($si__input_allStatus && $allStatus__closures, _subscribe($si__input_workspace__OR__input_allWorkspaces && $workspaces__closures, _subscribe($view__closures, _subscribe($tab__closures, _subscribe($si__input_workspace && $ws_id__closures, _subscribe($si__input_onCloseSession && $input_onCloseSession__closures, _subscribe($si__input_onRenameSession && $input_onRenameSession__closures, _subscribe($si__input_sessions && $input_sessions__closures, _subscribe($si__input_onReviewOpened && $input_onReviewOpened__closures, _subscribe($si__input_onNewSession && $input_onNewSession__closures, _subscribe($si__input_agents && $input_agents__closures, _subscribe($si__input_onSelectWorkspace && $input_onSelectWorkspace__closures, writeScope($scope7_id, {
6219
6390
  d: hoverId,
6220
6391
  b: _existing_scope($childScope3),
@@ -6236,7 +6407,7 @@ var side_nav_default = _template("w", (input) => {
6236
6407
  return 0;
6237
6408
  }
6238
6409
  }, $scope0_id, "e");
6239
- _html(`<div${_attr_class("_eH")}>`);
6410
+ _html(`<div${_attr_class("_dE")}>`);
6240
6411
  _if(() => {
6241
6412
  if (isPage) {
6242
6413
  const $scope9_id = _scope_id();
@@ -6244,7 +6415,7 @@ var side_nav_default = _template("w", (input) => {
6244
6415
  "_o",
6245
6416
  "_p",
6246
6417
  btnLg,
6247
- "_eA"
6418
+ "_dx"
6248
6419
  ])} title=${view === "new" ? "\"Back to workspace\"" : "\"New workspace\""}${view === "new" ? " aria-current=page" : ""}>`);
6249
6420
  icon_folder_plus_default({ size: 16 });
6250
6421
  _html(` New workspace</a>${_el_resume($scope9_id, "a")}`);
@@ -6266,29 +6437,29 @@ var side_nav_default = _template("w", (input) => {
6266
6437
  return 1;
6267
6438
  }
6268
6439
  }, $scope8_id, "a", 1, 1, 1, "</button>", 1);
6269
- _html(`<div${_attr_class(["_y", "_eI"])}></div>`);
6440
+ _html(`<div${_attr_class(["_y", "_dF"])}></div>`);
6270
6441
  _if(() => {}, $scope8_id, "c", 1, 1, 1, 0, 1);
6271
- _html(`<a${view === "settings" ? _attr("href", backHref) : " href=/settings"}${_attr_class([iconBtn$1, { ["_en"]: view === "settings" }])} title=${view === "settings" ? "\"Back to workspace\"" : "Settings"}${view === "settings" ? " aria-current=page" : ""}>`);
6442
+ _html(`<a${view === "settings" ? _attr("href", backHref) : " href=/settings"}${_attr_class([iconBtn$1, { ["_dk"]: view === "settings" }])} title=${view === "settings" ? "\"Back to workspace\"" : "Settings"}${view === "settings" ? " aria-current=page" : ""}>`);
6272
6443
  icon_settings_default({ size: 15 });
6273
6444
  _if(() => {
6274
6445
  if (input.setupReady === false) {
6275
6446
  const $scope17_id = _scope_id();
6276
- _html(`<span${_attr_class(["_z", "_ep"])} title="Machine setup incomplete"></span>`);
6447
+ _html(`<span${_attr_class(["_z", "_dm"])} title="Machine setup incomplete"></span>`);
6277
6448
  $si__input_setupReady && writeScope($scope17_id, {});
6278
6449
  return 0;
6279
6450
  }
6280
6451
  }, $scope8_id, "f", $sg__input_setupReady, $sg__input_setupReady, 1, 0, 1);
6281
- _html(`</a>${_el_resume($scope8_id, "d")}<a${view === "new" ? _attr("href", backHref) : " href=/new"}${_attr_class([iconBtn$1, { ["_en"]: view === "new" }])} title=${view === "new" ? "\"Back to workspace\"" : "\"New workspace\""}${view === "new" ? " aria-current=page" : ""}>`);
6452
+ _html(`</a>${_el_resume($scope8_id, "d")}<a${view === "new" ? _attr("href", backHref) : " href=/new"}${_attr_class([iconBtn$1, { ["_dk"]: view === "new" }])} title=${view === "new" ? "\"Back to workspace\"" : "\"New workspace\""}${view === "new" ? " aria-current=page" : ""}>`);
6282
6453
  icon_folder_plus_default({ size: 16 });
6283
6454
  _html(`</a>${_el_resume($scope8_id, "g")}`);
6284
- _script($scope8_id, "w15");
6455
+ _script($scope8_id, "x15");
6285
6456
  writeScope($scope8_id, {});
6286
6457
  return 1;
6287
6458
  }
6288
6459
  }, $scope0_id, "f", 1, 1, 1, "</div>");
6289
6460
  _html(`</aside>${_el_resume($scope0_id, "a")}`);
6290
- _script($scope0_id, "w16");
6291
- _script($scope0_id, "w17");
6461
+ _script($scope0_id, "x16");
6462
+ _script($scope0_id, "x17");
6292
6463
  writeScope($scope0_id, {
6293
6464
  j: _serialize_if($scope0_reason, 5) && input.tab,
6294
6465
  k: _serialize_if($scope0_reason, 4) && input.tabChange,
@@ -6345,15 +6516,15 @@ var side_nav_default = _template("w", (input) => {
6345
6516
  });
6346
6517
  var iconBtn = "_0 _j";
6347
6518
  var sectionCount = "_bu _I _J";
6348
- var content = "_dk _bk";
6349
- var pageMeta = "_dl _bp";
6350
- var pathMeta = "_do _x";
6351
- var dangerHint = "_du _S";
6519
+ var content = "_dH _bk";
6520
+ var pageMeta = "_dI _bp";
6521
+ var pathMeta = "_dL _x";
6522
+ var dangerHint = "_dR _S";
6352
6523
  //#endregion
6353
6524
  //#region src/tags/manage-workspace.marko
6354
6525
  var api$2;
6355
6526
  var lastData = /* @__PURE__ */ new Map();
6356
- var manage_workspace_default = _template("m", (input) => {
6527
+ var manage_workspace_default = _template("n", (input) => {
6357
6528
  const $scope0_reason = _scope_reason();
6358
6529
  const $scope0_id = _scope_id();
6359
6530
  const $ws_display_path__closures = /* @__PURE__ */ new Set();
@@ -6378,14 +6549,14 @@ var manage_workspace_default = _template("m", (input) => {
6378
6549
  procs = data;
6379
6550
  lastData.set(`procs:${ws.id}`, data);
6380
6551
  } catch {}
6381
- }, "m0", $scope0_id);
6552
+ }, "n0", $scope0_id);
6382
6553
  const inWorkspace = new Set(ws.repos.map((r) => r.full_name));
6383
6554
  const setBusy = _resume((name, on) => {
6384
6555
  const next = new Set(busy);
6385
6556
  if (on) next.add(name);
6386
6557
  else next.delete(name);
6387
6558
  busy = next;
6388
- }, "m1", $scope0_id);
6559
+ }, "n1", $scope0_id);
6389
6560
  const addRepo = _resume(async (name, baseBranch) => {
6390
6561
  if (!name || busy.has(name)) return;
6391
6562
  error = null;
@@ -6403,7 +6574,7 @@ var manage_workspace_default = _template("m", (input) => {
6403
6574
  error = String(err.message || err);
6404
6575
  }
6405
6576
  setBusy(name, false);
6406
- }, "m2", $scope0_id);
6577
+ }, "n2", $scope0_id);
6407
6578
  const removeRepo = _resume(async (row) => {
6408
6579
  if (busy.has(row.full_name)) return;
6409
6580
  error = null;
@@ -6418,7 +6589,7 @@ var manage_workspace_default = _template("m", (input) => {
6418
6589
  error = String(err.message || err);
6419
6590
  }
6420
6591
  setBusy(row.full_name, false);
6421
- }, "m3", $scope0_id);
6592
+ }, "n3", $scope0_id);
6422
6593
  const runAction = _resume(async (action) => {
6423
6594
  error = null;
6424
6595
  pendingAction = action;
@@ -6440,11 +6611,11 @@ var manage_workspace_default = _template("m", (input) => {
6440
6611
  pendingAction = null;
6441
6612
  actionStep = null;
6442
6613
  }
6443
- }, "m4", $scope0_id);
6614
+ }, "n4", $scope0_id);
6444
6615
  const killProc = _resume(async (pid) => {
6445
6616
  await fetch(`/api/procs/${pid}`, { method: "DELETE" });
6446
6617
  setTimeout(() => loadProcs(void 0), 500);
6447
- }, "m5", $scope0_id);
6618
+ }, "n5", $scope0_id);
6448
6619
  const titleId = _id();
6449
6620
  _html(`<div${_attr_class("_bi")} role=region${_attr("aria-labelledby", titleId)}><div${_attr_class("_bj")}><div${_attr_class(content)}>`);
6450
6621
  _set_serialize_reason(30);
@@ -6455,11 +6626,11 @@ var manage_workspace_default = _template("m", (input) => {
6455
6626
  backHref: `/w/${ws.id}`,
6456
6627
  onBack: _resume(function() {
6457
6628
  input.onExit?.();
6458
- }, "m6", $scope0_id),
6459
- meta: attrTag({ content: _content_resume("m11", () => {
6629
+ }, "n6", $scope0_id),
6630
+ meta: attrTag({ content: _content_resume("n11", () => {
6460
6631
  _scope_reason();
6461
6632
  const $scope8_id = _scope_id();
6462
- _html(`<span${_attr_class(pageMeta)}${_attr("title", ws.display_path || ws.path)}><span${_attr_class("_dm")}>${_escape(ws.name)}${_el_resume($scope8_id, "c")}</span>`);
6633
+ _html(`<span${_attr_class(pageMeta)}${_attr("title", ws.display_path || ws.path)}><span${_attr_class("_dJ")}>${_escape(ws.name)}${_el_resume($scope8_id, "c")}</span>`);
6463
6634
  _if(() => {
6464
6635
  if (ws.status !== "active") {
6465
6636
  const $scope11_id = _scope_id();
@@ -6468,7 +6639,7 @@ var manage_workspace_default = _template("m", (input) => {
6468
6639
  return 0;
6469
6640
  }
6470
6641
  }, $scope8_id, "d", 1, 1, 1, 0, 1);
6471
- _html(`<span${_attr_class("_dn")} aria-hidden=true>·</span><span${_attr_class(pathMeta)}>${_escape(ws.display_path || ws.path)}${_el_resume($scope8_id, "g")}</span></span>${_el_resume($scope8_id, "a")}`);
6642
+ _html(`<span${_attr_class("_dK")} aria-hidden=true>·</span><span${_attr_class(pathMeta)}>${_escape(ws.display_path || ws.path)}${_el_resume($scope8_id, "g")}</span></span>${_el_resume($scope8_id, "a")}`);
6472
6643
  _subscribe($ws_status__closures, _subscribe($ws_name__closures, _subscribe($ws_path__closures, _subscribe($ws_display_path__closures, writeScope($scope8_id, { _: _scope_with_id($scope0_id) })))));
6473
6644
  _resume_branch($scope8_id);
6474
6645
  }, $scope0_id) })
@@ -6480,8 +6651,8 @@ var manage_workspace_default = _template("m", (input) => {
6480
6651
  placement: "inline",
6481
6652
  onDismiss: _resume(function() {
6482
6653
  error = null;
6483
- }, "m7", $scope2_id),
6484
- content: _content_resume("m12", () => {
6654
+ }, "n7", $scope2_id),
6655
+ content: _content_resume("n12", () => {
6485
6656
  _scope_reason();
6486
6657
  const $scope3_id = _scope_id();
6487
6658
  _html(`${_escape(error)}${_el_resume($scope3_id, "a")}`);
@@ -6511,7 +6682,7 @@ var manage_workspace_default = _template("m", (input) => {
6511
6682
  _html(`</button>${_el_resume($scope0_id, "m")}</div><ul${_attr_class("_bv")}>`);
6512
6683
  _for_of(ws.repos, (row) => {
6513
6684
  const $scope1_id = _scope_id();
6514
- _html(`<li${_attr_class("_bx")}><div${_attr_class("_by")}><span${_attr_class(["_bz", "_x"])}>${_escape(row.worktree)}${_el_resume($scope1_id, "d")}/</span><span${_attr_class("_bA")}><a${_attr_class(["_bB", "_dq"])}${_attr("href", repoWebUrl$1(row.full_name))} target=_blank rel=noopener${_attr("title", `Open ${row.full_name} on GitHub`)}>${_escape(repoLabel(row.full_name))}${_el_resume($scope1_id, "g")}</a>${_el_resume($scope1_id, "f")}`);
6685
+ _html(`<li${_attr_class("_bx")}><div${_attr_class("_by")}><span${_attr_class(["_bz", "_x"])}>${_escape(row.worktree)}${_el_resume($scope1_id, "d")}/</span><span${_attr_class("_bA")}><a${_attr_class(["_bB", "_dN"])}${_attr("href", repoWebUrl$1(row.full_name))} target=_blank rel=noopener${_attr("title", `Open ${row.full_name} on GitHub`)}>${_escape(repoLabel(row.full_name))}${_el_resume($scope1_id, "g")}</a>${_el_resume($scope1_id, "f")}`);
6515
6686
  _if(() => {
6516
6687
  if (row.base_branch !== row.default_branch) {
6517
6688
  const $scope12_id = _scope_id();
@@ -6548,7 +6719,7 @@ var manage_workspace_default = _template("m", (input) => {
6548
6719
  return 1;
6549
6720
  }
6550
6721
  }, $scope6_id, "a", 1, 1, 1, "</button>");
6551
- _script($scope6_id, "m13");
6722
+ _script($scope6_id, "n13");
6552
6723
  _subscribe($confirmingRemove__closures, writeScope($scope6_id, {}));
6553
6724
  return 1;
6554
6725
  }
@@ -6575,21 +6746,21 @@ var manage_workspace_default = _template("m", (input) => {
6575
6746
  return 0;
6576
6747
  }
6577
6748
  }, $scope0_id, "r", 1, 1, 1, 0, 1);
6578
- _html(`<div${_attr_class("_dp")}>`);
6749
+ _html(`<div${_attr_class("_dM")}>`);
6579
6750
  const $childScope3 = _peek_scope_id();
6580
6751
  let refreshCatalog = repo_picker_default({
6581
6752
  exclude: inWorkspace,
6582
6753
  onPick: _resume(function(name, baseBranch) {
6583
6754
  addRepo(name, baseBranch);
6584
- }, "m8", $scope0_id),
6755
+ }, "n8", $scope0_id),
6585
6756
  onError: _resume(function(message) {
6586
6757
  error = message;
6587
- }, "m9", $scope0_id),
6758
+ }, "n9", $scope0_id),
6588
6759
  refreshingChange: _resume(function(busy) {
6589
6760
  catalogRefreshing = busy;
6590
- }, "m10", $scope0_id)
6761
+ }, "n10", $scope0_id)
6591
6762
  });
6592
- _var($scope0_id, "u", $childScope3, "m14");
6763
+ _var($scope0_id, "u", $childScope3, "n14");
6593
6764
  const running = procs || [];
6594
6765
  _html("</div></section>");
6595
6766
  _if(() => {
@@ -6605,8 +6776,8 @@ var manage_workspace_default = _template("m", (input) => {
6605
6776
  _html(`<span${_attr_class("_bA")}>`);
6606
6777
  _for_of(p.ports, (port) => {
6607
6778
  const $scope19_id = _scope_id();
6608
- _html(`<button${_attr_class(["_s", "_dr"])}${_attr("title", `Open http://${typeof location === "undefined" ? "localhost" : location.hostname}:${port}`)}>:<!>${_escape(port)}${_el_resume($scope19_id, "b")}</button>${_el_resume($scope19_id, "a")}`);
6609
- _script($scope19_id, "m15");
6779
+ _html(`<button${_attr_class(["_s", "_dO"])}${_attr("title", `Open http://${typeof location === "undefined" ? "localhost" : location.hostname}:${port}`)}>:<!>${_escape(port)}${_el_resume($scope19_id, "b")}</button>${_el_resume($scope19_id, "a")}`);
6780
+ _script($scope19_id, "n15");
6610
6781
  writeScope($scope19_id, { d: port });
6611
6782
  }, (x) => String(x), $scope18_id, "a", 1, 1, 1, "</span>", 1);
6612
6783
  writeScope($scope18_id, {});
@@ -6616,7 +6787,7 @@ var manage_workspace_default = _template("m", (input) => {
6616
6787
  _html(`</div>${_el_resume($scope10_id, "b")}<button${_attr_class(["_bC", "_2"])} type=button${_attr("title", `Kill process ${p.pid}`)}${_attr("aria-label", `Kill process ${p.pid}`)}>`);
6617
6788
  icon_xmark_default({ size: 14 });
6618
6789
  _html(`</button>${_el_resume($scope10_id, "f")}</li>`);
6619
- _script($scope10_id, "m16");
6790
+ _script($scope10_id, "n16");
6620
6791
  writeScope($scope10_id, {
6621
6792
  l: p?.ports,
6622
6793
  n: p?.pid
@@ -6627,18 +6798,18 @@ var manage_workspace_default = _template("m", (input) => {
6627
6798
  return 0;
6628
6799
  }
6629
6800
  }, $scope0_id, "v", 1, 1, 1, 0, 1);
6630
- _html(`<section${_attr_class(["_bs", "_ds"])}><div${_attr_class("_bt")}><h2${_attr_class("_bH")}>Workspace</h2></div><div${_attr_class("_dt")}>`);
6801
+ _html(`<section${_attr_class(["_bs", "_dP"])}><div${_attr_class("_bt")}><h2${_attr_class("_bH")}>Workspace</h2></div><div${_attr_class("_dQ")}>`);
6631
6802
  _if(() => {
6632
6803
  if (ws.status === "active") {
6633
6804
  const $scope4_id = _scope_id();
6634
6805
  _html(`<button type=button${_attr_class(btnLg)}${_attr("disabled", !!pendingAction)}>${pendingAction === "archive" ? "Archiving…" : "Archive"}${_el_resume($scope4_id, "b")}</button>${_el_resume($scope4_id, "a")}`);
6635
- _script($scope4_id, "m17");
6806
+ _script($scope4_id, "n17");
6636
6807
  writeScope($scope4_id, {});
6637
6808
  return 0;
6638
6809
  } else {
6639
6810
  const $scope5_id = _scope_id();
6640
6811
  _html(`<button type=button${_attr_class(btnLg)}${_attr("disabled", !!pendingAction)}>Restore</button>${_el_resume($scope5_id, "a")}`);
6641
- _script($scope5_id, "m18");
6812
+ _script($scope5_id, "n18");
6642
6813
  writeScope($scope5_id, {});
6643
6814
  return 1;
6644
6815
  }
@@ -6648,8 +6819,8 @@ var manage_workspace_default = _template("m", (input) => {
6648
6819
  "_r",
6649
6820
  { ["_q"]: confirmingDelete }
6650
6821
  ])}${_attr("disabled", !!pendingAction)}>${pendingAction === "delete" ? "Deleting…" : "Delete"}${_el_resume($scope0_id, "a2")}</button>${_el_resume($scope0_id, "a1")}</div><p${_attr_class(dangerHint)}>Archive hides the workspace from the list. Delete removes it and its worktrees.</p></section></div></div></div>`);
6651
- _script($scope0_id, "m19");
6652
- _script($scope0_id, "m20");
6822
+ _script($scope0_id, "n19");
6823
+ _script($scope0_id, "n20");
6653
6824
  writeScope($scope0_id, {
6654
6825
  a6: _serialize_if($scope0_reason, 0) && input.workspace,
6655
6826
  a8: input.workspaceChange,
@@ -6694,7 +6865,7 @@ var manage_workspace_default = _template("m", (input) => {
6694
6865
  });
6695
6866
  //#endregion
6696
6867
  //#region src/tags/term-find.marko
6697
- var term_find_default = _template("x", (input) => {
6868
+ var term_find_default = _template("y", (input) => {
6698
6869
  const $scope0_reason = _scope_reason();
6699
6870
  const $scope0_id = _scope_id();
6700
6871
  let open = input.open;
@@ -6711,37 +6882,37 @@ var term_find_default = _template("x", (input) => {
6711
6882
  if (!live.open) return;
6712
6883
  const search = input.onSearch;
6713
6884
  if (search) search(live.query, dir);
6714
- }, "x1", $scope0_id);
6885
+ }, "y1", $scope0_id);
6715
6886
  const close = _resume(() => {
6716
6887
  open = false;
6717
6888
  live.open = false;
6718
6889
  const clear = input.onClear;
6719
6890
  if (clear) clear();
6720
- }, "x2", $scope0_id);
6891
+ }, "y2", $scope0_id);
6721
6892
  const focusInput = _resume(() => {
6722
6893
  const el = ((findEl) => findEl())(_el_read_error);
6723
6894
  if (!el) return;
6724
6895
  el.focus();
6725
6896
  if (document.activeElement !== el) setTimeout(() => el.focus(), 0);
6726
- }, "x3", $scope0_id);
6897
+ }, "y3", $scope0_id);
6727
6898
  const hasQuery = !!query.trim();
6728
6899
  const canStep = hasQuery && open;
6729
6900
  const keybar = input.placement === "keybar";
6730
6901
  _html(`<div${_attr_class([
6731
- "_fY",
6732
- keybar ? "_f0" : "_fZ",
6733
- !open && "_f2"
6734
- ])} aria-hidden=${open ? "false" : "true"}><div${_attr_class(["_fT", keybar ? "_f1" : "_fV"])}><input${_attr_input_value($scope0_id, "c", query, _resume(function(v) {
6902
+ "_fd",
6903
+ keybar ? "_ff" : "_fe",
6904
+ !open && "_fh"
6905
+ ])} aria-hidden=${open ? "false" : "true"}><div${_attr_class(["_e9", keybar ? "_fg" : "_fa"])}><input${_attr_input_value($scope0_id, "c", query, _resume(function(v) {
6735
6906
  if (!open) return;
6736
6907
  query = v;
6737
6908
  live.query = v;
6738
6909
  run(0);
6739
- }, "x0", $scope0_id))}${_attr_class([findInput, keybar && "_f3"])} type=search enterkeyhint=search autocomplete=off tabindex=${open ? "0" : "-1"} placeholder="Find in terminal" aria-label="Find in terminal">${_el_resume($scope0_id, "c")}<button type=button${_attr_class([findIconBtn, keybar && "_f4"])} title="Previous match"${_attr("disabled", !canStep)} tabindex=${open ? "0" : "-1"}>↑</button>${_el_resume($scope0_id, "d")}<button type=button${_attr_class([findIconBtn, keybar && "_f4"])} title="Next match"${_attr("disabled", !canStep)} tabindex=${open ? "0" : "-1"}>↓</button>${_el_resume($scope0_id, "e")}<button type=button${_attr_class([findIconBtn, keybar && "_f4"])} title="Close find" tabindex=${open ? "0" : "-1"}>`);
6910
+ }, "y0", $scope0_id))}${_attr_class([findInput, keybar && "_fi"])} type=search enterkeyhint=search autocomplete=off tabindex=${open ? "0" : "-1"} placeholder="Find in terminal" aria-label="Find in terminal">${_el_resume($scope0_id, "c")}<button type=button${_attr_class([findIconBtn, keybar && "_fj"])} title="Previous match"${_attr("disabled", !canStep)} tabindex=${open ? "0" : "-1"}>↑</button>${_el_resume($scope0_id, "d")}<button type=button${_attr_class([findIconBtn, keybar && "_fj"])} title="Next match"${_attr("disabled", !canStep)} tabindex=${open ? "0" : "-1"}>↓</button>${_el_resume($scope0_id, "e")}<button type=button${_attr_class([findIconBtn, keybar && "_fj"])} title="Close find" tabindex=${open ? "0" : "-1"}>`);
6740
6911
  icon_xmark_default({ size: 14 });
6741
6912
  _html(`</button>${_el_resume($scope0_id, "f")}</div>${_el_resume($scope0_id, "b", _serialize_guard($scope0_reason, 2))}</div>${_el_resume($scope0_id, "a")}`);
6742
- _script($scope0_id, "x4");
6743
- _script($scope0_id, "x5");
6744
- _script($scope0_id, "x6");
6913
+ _script($scope0_id, "y4");
6914
+ _script($scope0_id, "y5");
6915
+ _script($scope0_id, "y6");
6745
6916
  writeScope($scope0_id, {
6746
6917
  j: _serialize_if($scope0_reason, 1) && input.open,
6747
6918
  k: _serialize_if($scope0_reason, 0) && input.openChange,
@@ -6764,7 +6935,7 @@ var term_find_default = _template("x", (input) => {
6764
6935
  });
6765
6936
  _resume_branch($scope0_id);
6766
6937
  });
6767
- _template("X", (input) => {
6938
+ _template("Y", (input) => {
6768
6939
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
6769
6940
  const $scope0_id = _scope_id();
6770
6941
  _set_serialize_reason({
@@ -6779,7 +6950,7 @@ _template("X", (input) => {
6779
6950
  });
6780
6951
  _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
6781
6952
  });
6782
- _template("K", (input) => {
6953
+ _template("L", (input) => {
6783
6954
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
6784
6955
  const $scope0_id = _scope_id();
6785
6956
  _set_serialize_reason({
@@ -6794,7 +6965,7 @@ _template("K", (input) => {
6794
6965
  });
6795
6966
  _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
6796
6967
  });
6797
- _template("O", (input) => {
6968
+ _template("P", (input) => {
6798
6969
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
6799
6970
  const $scope0_id = _scope_id();
6800
6971
  _set_serialize_reason({
@@ -6809,7 +6980,7 @@ _template("O", (input) => {
6809
6980
  });
6810
6981
  _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
6811
6982
  });
6812
- _template("I", (input) => {
6983
+ _template("J", (input) => {
6813
6984
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
6814
6985
  const $scope0_id = _scope_id();
6815
6986
  _set_serialize_reason({
@@ -6828,7 +6999,7 @@ _template("I", (input) => {
6828
6999
  //#region src/tags/term.marko
6829
7000
  var REPEAT_DELAY = 400;
6830
7001
  var REPEAT_EVERY = 55;
6831
- var term_default = _template("y", (input) => {
7002
+ var term_default = _template("z", (input) => {
6832
7003
  const $scope0_reason = _scope_reason();
6833
7004
  _serialize_guard($scope0_reason, 5);
6834
7005
  _serialize_guard($scope0_reason, 0);
@@ -6847,7 +7018,7 @@ var term_default = _template("y", (input) => {
6847
7018
  _serialize_guard($scope0_reason, 13);
6848
7019
  const $si__input_sessionState = _serialize_if($scope0_reason, 6), $si__input_onCloseSession = _serialize_if($scope0_reason, 7), $si__input_workspaceName = _serialize_if($scope0_reason, 13);
6849
7020
  const $scope0_id = _scope_id();
6850
- _hoist($scope0_id, "y21");
7021
+ _hoist($scope0_id, "z21");
6851
7022
  const $findOpen__closures = /* @__PURE__ */ new Set();
6852
7023
  const $findTick__closures = /* @__PURE__ */ new Set();
6853
7024
  const $input_onCloseSession__closures = /* @__PURE__ */ new Set();
@@ -6869,7 +7040,7 @@ var term_default = _template("y", (input) => {
6869
7040
  let findOpen = false;
6870
7041
  const $openChange = _resume((_new_findOpen) => {
6871
7042
  findOpen = _new_findOpen;
6872
- }, "y1", $scope0_id);
7043
+ }, "z1", $scope0_id);
6873
7044
  let findTick = 0;
6874
7045
  const ioBox = { current: null };
6875
7046
  const searchBox = {
@@ -6877,7 +7048,7 @@ var term_default = _template("y", (input) => {
6877
7048
  query: "",
6878
7049
  refreshTimer: 0
6879
7050
  };
6880
- const findFocusRef = { focus: _resume(function() {}, "y2") };
7051
+ const findFocusRef = { focus: _resume(function() {}, "z2") };
6881
7052
  const scheduleFindRefresh = _resume(() => {
6882
7053
  if (!searchBox.query.trim() || !searchBox.overlay) return;
6883
7054
  if (searchBox.refreshTimer) clearTimeout(searchBox.refreshTimer);
@@ -6885,7 +7056,7 @@ var term_default = _template("y", (input) => {
6885
7056
  searchBox.refreshTimer = 0;
6886
7057
  searchBox.overlay?.refresh();
6887
7058
  }, 32);
6888
- }, "y3", $scope0_id);
7059
+ }, "z3", $scope0_id);
6889
7060
  const runFind = _resume((query, dir) => {
6890
7061
  const overlay = searchBox.overlay;
6891
7062
  if (!overlay) return;
@@ -6899,7 +7070,7 @@ var term_default = _template("y", (input) => {
6899
7070
  return;
6900
7071
  }
6901
7072
  overlay.search(query, dir);
6902
- }, "y4", $scope0_id);
7073
+ }, "z4", $scope0_id);
6903
7074
  const clearFind = _resume(() => {
6904
7075
  if (searchBox.refreshTimer) {
6905
7076
  clearTimeout(searchBox.refreshTimer);
@@ -6907,7 +7078,7 @@ var term_default = _template("y", (input) => {
6907
7078
  }
6908
7079
  searchBox.query = "";
6909
7080
  searchBox.overlay?.clear();
6910
- }, "y5", $scope0_id);
7081
+ }, "z5", $scope0_id);
6911
7082
  const openFind = _resume(() => {
6912
7083
  if (kb) {
6913
7084
  kb = false;
@@ -6917,7 +7088,7 @@ var term_default = _template("y", (input) => {
6917
7088
  findOpen = true;
6918
7089
  findTick++;
6919
7090
  findFocusRef.focus();
6920
- }, "y6", $scope0_id);
7091
+ }, "z6", $scope0_id);
6921
7092
  const toggleFind = _resume(() => {
6922
7093
  if (findOpen) {
6923
7094
  findOpen = false;
@@ -6926,7 +7097,7 @@ var term_default = _template("y", (input) => {
6926
7097
  return;
6927
7098
  }
6928
7099
  openFind();
6929
- }, "y7", $scope0_id);
7100
+ }, "z7", $scope0_id);
6930
7101
  const onTermPage = input.mode == null || input.mode === "term";
6931
7102
  const canKeys = onTermPage || input.mode === "diff";
6932
7103
  const findLit = onTermPage ? findOpen : input.mode === "diff" && !!input.reviewFindOpen;
@@ -6937,7 +7108,7 @@ var term_default = _template("y", (input) => {
6937
7108
  return;
6938
7109
  }
6939
7110
  if (input.mode === "diff") input.onToggleReviewFind?.();
6940
- }, "y8", $scope0_id);
7111
+ }, "z8", $scope0_id);
6941
7112
  const thisAgent = activeAgent({
6942
7113
  agent: input.agent || "shell",
6943
7114
  state: input.sessionState
@@ -6949,7 +7120,7 @@ var term_default = _template("y", (input) => {
6949
7120
  copyFlashBox.timer = setTimeout(() => {
6950
7121
  copiedFlash = false;
6951
7122
  }, 1200);
6952
- }, "y9", $scope0_id);
7123
+ }, "z9", $scope0_id);
6953
7124
  const holdBox = { current: null };
6954
7125
  const startHold = _resume((seq) => {
6955
7126
  ((stopHold) => stopHold())(_hoist_read_error);
@@ -6959,7 +7130,7 @@ var term_default = _template("y", (input) => {
6959
7130
  state.repeat = setInterval(() => ioBox.current?.send(seq), REPEAT_EVERY);
6960
7131
  }, REPEAT_DELAY);
6961
7132
  holdBox.current = state;
6962
- }, "y10", $scope0_id);
7133
+ }, "z10", $scope0_id);
6963
7134
  const stopHold = _resume(() => {
6964
7135
  const hold = holdBox.current;
6965
7136
  if (hold) {
@@ -6967,7 +7138,7 @@ var term_default = _template("y", (input) => {
6967
7138
  clearInterval(hold.repeat);
6968
7139
  holdBox.current = null;
6969
7140
  }
6970
- }, "y11", $scope0_id);
7141
+ }, "z11", $scope0_id);
6971
7142
  const uploadAsset = _resume(async (file) => {
6972
7143
  if (!file) return;
6973
7144
  uploading = true;
@@ -6980,7 +7151,7 @@ var term_default = _template("y", (input) => {
6980
7151
  } finally {
6981
7152
  uploading = false;
6982
7153
  }
6983
- }, "y12", $scope0_id);
7154
+ }, "z12", $scope0_id);
6984
7155
  const handlePasted = _resume(async (clipboardData) => {
6985
7156
  const files = [...clipboardData?.files || []];
6986
7157
  for (const file of files) await uploadAsset(file);
@@ -6989,7 +7160,7 @@ var term_default = _template("y", (input) => {
6989
7160
  if (text) ioBox.current?.send(text);
6990
7161
  }
6991
7162
  trapOpen = false;
6992
- }, "y13", $scope0_id);
7163
+ }, "z13", $scope0_id);
6993
7164
  const pasteClipboard = _resume(async () => {
6994
7165
  if (!navigator.clipboard?.read) {
6995
7166
  trapOpen = true;
@@ -7009,8 +7180,8 @@ var term_default = _template("y", (input) => {
7009
7180
  } catch {
7010
7181
  trapOpen = true;
7011
7182
  }
7012
- }, "y14", $scope0_id);
7013
- _html(`<div${_attr("hidden", !onTermPage)}${_attr_class("_cG")}><div${_attr_class("_cH")}></div>${_el_resume($scope0_id, "b")}`);
7183
+ }, "z14", $scope0_id);
7184
+ _html(`<div${_attr("hidden", !onTermPage)}${_attr_class("_dS")}><div${_attr_class("_dT")}></div>${_el_resume($scope0_id, "b")}`);
7014
7185
  _if(() => {
7015
7186
  if (findOpen) {
7016
7187
  const $scope12_id = _scope_id();
@@ -7024,11 +7195,11 @@ var term_default = _template("y", (input) => {
7024
7195
  focusRef: findFocusRef,
7025
7196
  onSearch: _resume(function(q, dir) {
7026
7197
  runFind(q, dir);
7027
- }, "y15", $scope12_id),
7198
+ }, "z15", $scope12_id),
7028
7199
  onClear: _resume(function() {
7029
7200
  clearFind();
7030
7201
  ioBox.current?.setFindMode(false);
7031
- }, "y16", $scope12_id)
7202
+ }, "z16", $scope12_id)
7032
7203
  });
7033
7204
  writeScope($scope12_id, { a: _existing_scope($childScope) });
7034
7205
  return 0;
@@ -7037,7 +7208,7 @@ var term_default = _template("y", (input) => {
7037
7208
  _if(() => {
7038
7209
  if (uploading) {
7039
7210
  const $scope19_id = _scope_id();
7040
- _html(`<div${_attr_class("_cN")}>uploading…</div>`);
7211
+ _html(`<div${_attr_class("_dZ")}>uploading…</div>`);
7041
7212
  writeScope($scope19_id, {});
7042
7213
  return 0;
7043
7214
  }
@@ -7045,7 +7216,7 @@ var term_default = _template("y", (input) => {
7045
7216
  _if(() => {
7046
7217
  if (copiedFlash) {
7047
7218
  const $scope20_id = _scope_id();
7048
- _html(`<div${_attr_class("_cM")}>Copied</div>`);
7219
+ _html(`<div${_attr_class("_dY")}>Copied</div>`);
7049
7220
  writeScope($scope20_id, {});
7050
7221
  return 0;
7051
7222
  }
@@ -7054,18 +7225,18 @@ var term_default = _template("y", (input) => {
7054
7225
  _if(() => {
7055
7226
  if (trapOpen) {
7056
7227
  const $scope11_id = _scope_id();
7057
- _html(`<div${_attr_class("_cO")}><div${_attr_class("_cP")}><p${_attr_class("_dj")}>Long-press the field below and choose Paste</p><input placeholder="Paste here…">${_el_resume($scope11_id, "d")}<button${_attr_class("_o")}>Cancel</button>${_el_resume($scope11_id, "e")}</div>${_el_resume($scope11_id, "b")}</div>${_el_resume($scope11_id, "a")}`);
7058
- _script($scope11_id, "y25");
7059
- _script($scope11_id, "y26");
7228
+ _html(`<div${_attr_class("_d0")}><div${_attr_class("_d1")}><p${_attr_class("_ev")}>Long-press the field below and choose Paste</p><input placeholder="Paste here…">${_el_resume($scope11_id, "d")}<button${_attr_class("_o")}>Cancel</button>${_el_resume($scope11_id, "e")}</div>${_el_resume($scope11_id, "b")}</div>${_el_resume($scope11_id, "a")}`);
7229
+ _script($scope11_id, "z25");
7230
+ _script($scope11_id, "z26");
7060
7231
  writeScope($scope11_id, {});
7061
7232
  return 0;
7062
7233
  }
7063
7234
  }, $scope0_id, "g", 1, 1, 1, 0, 1);
7064
7235
  _html(`</div>${_el_resume($scope0_id, "a")}`);
7065
7236
  _if(() => {}, $scope0_id, "h", 1, 1, 1, 0, 1);
7066
- _script($scope0_id, "y41");
7067
- _script($scope0_id, "y42");
7068
- _script($scope0_id, "y43");
7237
+ _script($scope0_id, "z41");
7238
+ _script($scope0_id, "z42");
7239
+ _script($scope0_id, "z43");
7069
7240
  writeScope($scope0_id, {
7070
7241
  k: input.mode,
7071
7242
  l: input.reviewFindOpen,
@@ -7132,7 +7303,7 @@ var term_default = _template("y", (input) => {
7132
7303
  //#region src/tags/work-view.marko
7133
7304
  var api$1;
7134
7305
  var isTransientApiError$1;
7135
- var work_view_default = _template("C", (input) => {
7306
+ var work_view_default = _template("D", (input) => {
7136
7307
  const $scope0_reason = _scope_reason(), $sg__input_workspace = _serialize_guard($scope0_reason, 6), $sg__input_agents = _serialize_guard($scope0_reason, 15), $sg__input_allWorkspaces = _serialize_guard($scope0_reason, 14), $si__input_workspace = _serialize_if($scope0_reason, 6), $si__input_active = _serialize_if($scope0_reason, 8), $si__input_agents = _serialize_if($scope0_reason, 15), $si__input_preferred = _serialize_if($scope0_reason, 9);
7137
7308
  const $scope0_id = _scope_id();
7138
7309
  const $error__closures = /* @__PURE__ */ new Set();
@@ -7157,16 +7328,16 @@ var work_view_default = _template("C", (input) => {
7157
7328
  let DiffView = null;
7158
7329
  const loadDiffView = _resume(() => {
7159
7330
  if (DiffView) return;
7160
- import("./_D4GY5TqP.js").then((m) => {
7331
+ import("./_hKCo6x-v.js").then((m) => {
7161
7332
  DiffView = m.default;
7162
7333
  });
7163
- }, "C6", $scope0_id);
7334
+ }, "D6", $scope0_id);
7164
7335
  let manageMounted = input.initialView === "manage";
7165
7336
  let settingsMounted = input.initialView === "settings";
7166
7337
  let newMounted = input.initialView === "new";
7167
7338
  let reviewFindOpen = false;
7168
7339
  let reviewFindTick = 0;
7169
- const reviewFindFocus = { focus: _resume(function() {}, "C0") };
7340
+ const reviewFindFocus = { focus: _resume(function() {}, "D0") };
7170
7341
  let focusPr = input.initialPr ?? "";
7171
7342
  let focusNonce = 0;
7172
7343
  let reviewScope = input.initialScope ?? null;
@@ -7184,22 +7355,22 @@ var work_view_default = _template("C", (input) => {
7184
7355
  loadDiffView();
7185
7356
  diffMounted = true;
7186
7357
  view = "diff";
7187
- }, "C7", $scope0_id);
7358
+ }, "D7", $scope0_id);
7188
7359
  const openManage = _resume(() => {
7189
7360
  manageMounted = true;
7190
7361
  view = "manage";
7191
- }, "C8", $scope0_id);
7362
+ }, "D8", $scope0_id);
7192
7363
  const openSettings = _resume(() => {
7193
7364
  settingsMounted = true;
7194
7365
  view = "settings";
7195
- }, "C9", $scope0_id);
7366
+ }, "D9", $scope0_id);
7196
7367
  const toggleNav = _resume(() => {
7197
7368
  view = view === "nav" ? "term" : "nav";
7198
- }, "C10", $scope0_id);
7369
+ }, "D10", $scope0_id);
7199
7370
  const toggleDiff = _resume(() => {
7200
7371
  if (view === "diff") view = "term";
7201
7372
  else openDiff();
7202
- }, "C11", $scope0_id);
7373
+ }, "D11", $scope0_id);
7203
7374
  const shownSessions = sessions ?? input.allStatus?.[ws.id]?.sessions ?? null;
7204
7375
  const curTab = (() => {
7205
7376
  if (tab && shownSessions?.some((s) => s.id === tab)) return tab;
@@ -7216,10 +7387,10 @@ var work_view_default = _template("C", (input) => {
7216
7387
  reviewFindOpen = true;
7217
7388
  reviewFindTick++;
7218
7389
  reviewFindFocus.focus();
7219
- }, "C12", $scope0_id);
7390
+ }, "D12", $scope0_id);
7220
7391
  const exitCreate = _resume(() => {
7221
7392
  if (view === "new") view = "term";
7222
- }, "C13", $scope0_id);
7393
+ }, "D13", $scope0_id);
7223
7394
  const applyView = _resume((v) => {
7224
7395
  if (v.view === "diff") {
7225
7396
  if (v.scope !== void 0) reviewScope = v.scope ?? null;
@@ -7234,7 +7405,7 @@ var work_view_default = _template("C", (input) => {
7234
7405
  }
7235
7406
  view = "term";
7236
7407
  }
7237
- }, "C14", $scope0_id);
7408
+ }, "D14", $scope0_id);
7238
7409
  const createSession = _resume(async (agent, select) => {
7239
7410
  spawning = true;
7240
7411
  try {
@@ -7255,7 +7426,7 @@ var work_view_default = _template("C", (input) => {
7255
7426
  } finally {
7256
7427
  spawning = false;
7257
7428
  }
7258
- }, "C15", $scope0_id);
7429
+ }, "D15", $scope0_id);
7259
7430
  const loadMem = {
7260
7431
  wanted: false,
7261
7432
  run: void 0
@@ -7281,11 +7452,11 @@ var work_view_default = _template("C", (input) => {
7281
7452
  if (isTransientApiError$1(err)) return;
7282
7453
  error = String(err.message || err);
7283
7454
  }
7284
- }, "C16", $scope0_id);
7455
+ }, "D16", $scope0_id);
7285
7456
  const loadSessions = _resume((autoCreate) => {
7286
7457
  if (autoCreate) loadMem.wanted = true;
7287
7458
  return (loadMem.run ??= coalesce(loadBody))();
7288
- }, "C17", $scope0_id);
7459
+ }, "D17", $scope0_id);
7289
7460
  const closeSession = _resume(async (id) => {
7290
7461
  try {
7291
7462
  sessions = (sessions || []).filter((s) => s.id !== id);
@@ -7295,7 +7466,7 @@ var work_view_default = _template("C", (input) => {
7295
7466
  error = `Close session failed: ${String(err.message || err)}`;
7296
7467
  loadSessions(false);
7297
7468
  }
7298
- }, "C18", $scope0_id);
7469
+ }, "D18", $scope0_id);
7299
7470
  const renameSession = _resume(async (id, title) => {
7300
7471
  title = title.trim();
7301
7472
  const cur = (sessions || []).find((s) => s.id === id);
@@ -7310,7 +7481,7 @@ var work_view_default = _template("C", (input) => {
7310
7481
  headers: { "content-type": "application/json" },
7311
7482
  body: JSON.stringify({ title })
7312
7483
  });
7313
- }, "C19", $scope0_id);
7484
+ }, "D19", $scope0_id);
7314
7485
  const newSession = _resume(async (wsId, agent) => {
7315
7486
  if (wsId === ws.id) {
7316
7487
  const session = await createSession(agent, true);
@@ -7328,7 +7499,7 @@ var work_view_default = _template("C", (input) => {
7328
7499
  } catch (err) {
7329
7500
  error = String(err.message || err);
7330
7501
  }
7331
- }, "C20", $scope0_id);
7502
+ }, "D20", $scope0_id);
7332
7503
  const onKey = _resume((e) => {
7333
7504
  const target = e.target;
7334
7505
  const typing = !!target && !target.closest(".xterm") && (target.tagName === "INPUT" || target.tagName === "TEXTAREA" || target.tagName === "SELECT" || target.isContentEditable);
@@ -7342,11 +7513,11 @@ var work_view_default = _template("C", (input) => {
7342
7513
  e.preventDefault();
7343
7514
  toggleDiff();
7344
7515
  }
7345
- }, "C21", $scope0_id);
7346
- _html(`<div${_attr_class(["_ch", {
7347
- ["_cf"]: view === "nav",
7348
- ["_cg"]: !input.active
7349
- }])}><div${_attr_class("_ci")}>`);
7516
+ }, "D21", $scope0_id);
7517
+ _html(`<div${_attr_class(["_b1", {
7518
+ ["_bZ"]: view === "nav",
7519
+ ["_b0"]: !input.active
7520
+ }])}><div${_attr_class("_b2")}>`);
7350
7521
  _set_serialize_reason({
7351
7522
  0: _serialize_guard($scope0_reason, 0),
7352
7523
  1: _serialize_guard($scope0_reason, 2),
@@ -7377,45 +7548,45 @@ var work_view_default = _template("C", (input) => {
7377
7548
  tab: curTab,
7378
7549
  tabChange: _resume(function(id) {
7379
7550
  tab = id;
7380
- }, "C22", $scope0_id),
7551
+ }, "D22", $scope0_id),
7381
7552
  view,
7382
7553
  viewChange: _resume((_new_view) => {
7383
7554
  view = _new_view;
7384
- }, "C23", $scope0_id),
7555
+ }, "D23", $scope0_id),
7385
7556
  allWorkspaces: input.allWorkspaces,
7386
7557
  allStatus: input.allStatus,
7387
7558
  agents: input.agents,
7388
7559
  onError: _resume(function(message) {
7389
7560
  error = message;
7390
- }, "C24", $scope0_id),
7561
+ }, "D24", $scope0_id),
7391
7562
  onSelectWorkspace: _resume(function(id) {
7392
7563
  exitCreate();
7393
7564
  input.onSelectWorkspace?.(id);
7394
- }, "C25", $scope0_id),
7565
+ }, "D25", $scope0_id),
7395
7566
  onNewSession: _resume(function(wsId, agent) {
7396
7567
  exitCreate();
7397
7568
  newSession(wsId, agent);
7398
- }, "C26", $scope0_id),
7569
+ }, "D26", $scope0_id),
7399
7570
  onCloseSession: _resume(function(id) {
7400
7571
  closeSession(id);
7401
- }, "C27", $scope0_id),
7572
+ }, "D27", $scope0_id),
7402
7573
  onRenameSession: _resume(function(s, title) {
7403
7574
  renameSession(s.id, title);
7404
- }, "C28", $scope0_id),
7575
+ }, "D28", $scope0_id),
7405
7576
  onReviewOpened: _resume(function(pr) {
7406
7577
  exitCreate();
7407
7578
  openDiff(pr);
7408
- }, "C29", $scope0_id)
7579
+ }, "D29", $scope0_id)
7409
7580
  });
7410
- _html(`</div><div${_attr_class("_cj")}>`);
7581
+ _html(`</div><div${_attr_class("_b3")}>`);
7411
7582
  _if(() => {
7412
7583
  if (error) {
7413
7584
  const $scope8_id = _scope_id();
7414
7585
  toast_default({
7415
7586
  onDismiss: _resume(function() {
7416
7587
  error = null;
7417
- }, "C30", $scope8_id),
7418
- content: _content_resume("C48", () => {
7588
+ }, "D30", $scope8_id),
7589
+ content: _content_resume("D48", () => {
7419
7590
  _scope_reason();
7420
7591
  const $scope9_id = _scope_id();
7421
7592
  _html(`${_escape(error)}${_el_resume($scope9_id, "a")}`);
@@ -7430,7 +7601,7 @@ var work_view_default = _template("C", (input) => {
7430
7601
  _if(() => {
7431
7602
  if (diffMounted && DiffView) {
7432
7603
  const $scope1_id = _scope_id();
7433
- _html(`<div${_attr_class(["_ck", { ["_cl"]: view === "diff" }])}>`);
7604
+ _html(`<div${_attr_class(["_b4", { ["_b5"]: view === "diff" }])}>`);
7434
7605
  _dynamic_tag($scope1_id, "b", DiffView, {
7435
7606
  workspaceId: ws.id,
7436
7607
  workspaceBranch: ws.branch,
@@ -7444,23 +7615,23 @@ var work_view_default = _template("C", (input) => {
7444
7615
  scope: reviewScope,
7445
7616
  onScopeChange: _resume(function(s) {
7446
7617
  reviewScope = s === "committed" ? null : s;
7447
- }, "C1", $scope1_id),
7618
+ }, "D1", $scope1_id),
7448
7619
  onFileChange: _resume(function(f) {
7449
7620
  reviewFile = f;
7450
- }, "C2", $scope1_id),
7621
+ }, "D2", $scope1_id),
7451
7622
  findOpen: reviewFindOpen,
7452
7623
  findOpenChange: _resume((_new_reviewFindOpen) => {
7453
7624
  reviewFindOpen = _new_reviewFindOpen;
7454
- }, "C3", $scope1_id),
7625
+ }, "D3", $scope1_id),
7455
7626
  findTick: reviewFindTick,
7456
7627
  findFocusRef: reviewFindFocus,
7457
7628
  onSent: _resume(function(sessionId) {
7458
7629
  tab = sessionId;
7459
7630
  view = "term";
7460
- }, "C4", $scope1_id),
7631
+ }, "D4", $scope1_id),
7461
7632
  onExit: _resume(function() {
7462
7633
  view = "term";
7463
- }, "C5", $scope1_id)
7634
+ }, "D5", $scope1_id)
7464
7635
  });
7465
7636
  _html(`</div>${_el_resume($scope1_id, "a")}`);
7466
7637
  writeScope($scope1_id, {});
@@ -7470,20 +7641,20 @@ var work_view_default = _template("C", (input) => {
7470
7641
  _if(() => {
7471
7642
  if (manageMounted) {
7472
7643
  const $scope2_id = _scope_id();
7473
- _html(`<div${_attr_class(["_ck", { ["_cl"]: view === "manage" }])}>`);
7644
+ _html(`<div${_attr_class(["_b4", { ["_b5"]: view === "manage" }])}>`);
7474
7645
  _set_serialize_reason(_serialize_guard($scope0_reason, 16));
7475
7646
  const $childScope2 = _peek_scope_id();
7476
7647
  manage_workspace_default({
7477
7648
  workspace: ws,
7478
7649
  workspaceChange: _resume(function(next) {
7479
7650
  input.onWorkspaceChange?.(next);
7480
- }, "C31", $scope2_id),
7651
+ }, "D31", $scope2_id),
7481
7652
  onExit: _resume(function() {
7482
7653
  view = "term";
7483
- }, "C32", $scope2_id),
7654
+ }, "D32", $scope2_id),
7484
7655
  onDeleted: _resume(function() {
7485
7656
  input.onWorkspaceDeleted?.(ws.id);
7486
- }, "C33", $scope2_id)
7657
+ }, "D33", $scope2_id)
7487
7658
  });
7488
7659
  _html(`</div>${_el_resume($scope2_id, "a")}`);
7489
7660
  writeScope($scope2_id, { b: _serialize_if($scope0_reason, 4) && _existing_scope($childScope2) });
@@ -7493,7 +7664,7 @@ var work_view_default = _template("C", (input) => {
7493
7664
  _if(() => {
7494
7665
  if (settingsMounted) {
7495
7666
  const $scope3_id = _scope_id();
7496
- _html(`<div${_attr_class(["_ck", { ["_cl"]: view === "settings" }])}>`);
7667
+ _html(`<div${_attr_class(["_b4", { ["_b5"]: view === "settings" }])}>`);
7497
7668
  _set_serialize_reason({
7498
7669
  0: _serialize_guard($scope0_reason, 1),
7499
7670
  1: $sg__input_workspace,
@@ -7509,21 +7680,21 @@ var work_view_default = _template("C", (input) => {
7509
7680
  instance: input.instance,
7510
7681
  instanceChange: _resume(function(i) {
7511
7682
  input.onInstanceChange?.(i);
7512
- }, "C34", $scope3_id),
7683
+ }, "D34", $scope3_id),
7513
7684
  backHref: `/w/${ws.id}`,
7514
7685
  onExit: _resume(function() {
7515
7686
  view = "term";
7516
- }, "C35", $scope3_id),
7687
+ }, "D35", $scope3_id),
7517
7688
  setup: input.setup,
7518
7689
  setupChange: _resume(function(s) {
7519
7690
  input.onSetupChange?.(s);
7520
- }, "C36", $scope3_id),
7691
+ }, "D36", $scope3_id),
7521
7692
  preferredChange: _resume(function(agent) {
7522
7693
  input.onPreferredChange?.(agent);
7523
- }, "C37", $scope3_id),
7694
+ }, "D37", $scope3_id),
7524
7695
  agentsChange: _resume(function(agents) {
7525
7696
  input.onAgentsChange?.(agents);
7526
- }, "C38", $scope3_id)
7697
+ }, "D38", $scope3_id)
7527
7698
  });
7528
7699
  _html(`</div>${_el_resume($scope3_id, "a")}`);
7529
7700
  writeScope($scope3_id, { b: _serialize_if($scope0_reason, 5) && _existing_scope($childScope3) });
@@ -7533,7 +7704,7 @@ var work_view_default = _template("C", (input) => {
7533
7704
  _if(() => {
7534
7705
  if (newMounted) {
7535
7706
  const $scope4_id = _scope_id();
7536
- _html(`<div${_attr_class(["_ck", { ["_cl"]: view === "new" }])}>`);
7707
+ _html(`<div${_attr_class(["_b4", { ["_b5"]: view === "new" }])}>`);
7537
7708
  _set_serialize_reason({
7538
7709
  0: 1,
7539
7710
  1: $sg__input_allWorkspaces,
@@ -7545,28 +7716,28 @@ var work_view_default = _template("C", (input) => {
7545
7716
  backHref: `/w/${ws.id}`,
7546
7717
  onExit: _resume(function() {
7547
7718
  exitCreate();
7548
- }, "C39", $scope4_id),
7719
+ }, "D39", $scope4_id),
7549
7720
  onCreate: _resume(function(ws) {
7550
7721
  input.onCreated?.(ws);
7551
- }, "C40", $scope4_id),
7722
+ }, "D40", $scope4_id),
7552
7723
  onRestore: _resume(function(next) {
7553
7724
  input.onWorkspaceChange?.(next);
7554
7725
  input.onSelectWorkspace?.(next.id);
7555
7726
  exitCreate();
7556
- }, "C41", $scope4_id)
7727
+ }, "D41", $scope4_id)
7557
7728
  });
7558
7729
  _html(`</div>${_el_resume($scope4_id, "a")}`);
7559
7730
  writeScope($scope4_id, { b: _existing_scope($childScope4) });
7560
7731
  return 0;
7561
7732
  }
7562
7733
  }, $scope0_id, "i", 1, 1, 1, 0, 1);
7563
- _html(`<div${_attr_class(["_cn", { ["_cm"]: view !== "term" }])}>`);
7734
+ _html(`<div${_attr_class(["_b7", { ["_b6"]: view !== "term" }])}>`);
7564
7735
  _if(() => {
7565
7736
  if (shownSessions) {
7566
7737
  const $scope5_id = _scope_id();
7567
7738
  _for_of(shownSessions, (s) => {
7568
7739
  const $scope6_id = _scope_id();
7569
- _html(`<div${_attr_class(["_co", { ["_cp"]: s.id === curTab }])}>`);
7740
+ _html(`<div${_attr_class(["_b8", { ["_b9"]: s.id === curTab }])}>`);
7570
7741
  _set_serialize_reason({
7571
7742
  0: 1,
7572
7743
  1: 1,
@@ -7595,26 +7766,26 @@ var work_view_default = _template("C", (input) => {
7595
7766
  onNewSession: _resume(function(agent) {
7596
7767
  view = "term";
7597
7768
  newSession(ws.id, agent);
7598
- }, "C42", $scope6_id),
7769
+ }, "D42", $scope6_id),
7599
7770
  onOpenTab: _resume(function(id) {
7600
7771
  tab = id;
7601
7772
  view = "term";
7602
- }, "C43", $scope6_id),
7773
+ }, "D43", $scope6_id),
7603
7774
  onCloseSession: _resume(function(id) {
7604
7775
  closeSession(id);
7605
- }, "C44", $scope6_id),
7776
+ }, "D44", $scope6_id),
7606
7777
  onRenameSession: _resume(function(id, title) {
7607
7778
  renameSession(id, title);
7608
- }, "C45", $scope6_id),
7779
+ }, "D45", $scope6_id),
7609
7780
  active: input.active && view === "term" && s.id === curTab,
7610
7781
  mode: view,
7611
7782
  onOpenNav: _resume(function() {
7612
7783
  toggleNav();
7613
- }, "C46", $scope6_id),
7784
+ }, "D46", $scope6_id),
7614
7785
  reviewFindOpen,
7615
7786
  onToggleReviewFind: _resume(function() {
7616
7787
  toggleReviewFind();
7617
- }, "C47", $scope6_id)
7788
+ }, "D47", $scope6_id)
7618
7789
  });
7619
7790
  _html(`</div>${_el_resume($scope6_id, "a")}`);
7620
7791
  _subscribe($newSession2__closures, _subscribe($renameSession2__closures, _subscribe($closeSession2__closures, _subscribe($toggleReviewFind2__closures, _subscribe($curTab__closures, _subscribe($shownSessions__closures, _subscribe($si__input_workspace && $ws_name__closures, _subscribe($si__input_workspace && $ws_id__closures, _subscribe($reviewFindOpen__closures, _subscribe($view__closures, _subscribe($si__input_agents && $input_agents__closures, _subscribe($si__input_active && $input_active__closures, writeScope($scope6_id, {
@@ -7626,7 +7797,7 @@ var work_view_default = _template("C", (input) => {
7626
7797
  if (!shownSessions.length && view === "term") {
7627
7798
  const $scope7_id = _scope_id();
7628
7799
  _html(`<div${_attr_class("_bE")}><span>No sessions in this workspace.</span><button${_attr_class(["_o", "_p"])}${_attr("disabled", spawning)}>${spawning ? "Starting…" : `Start ${_escape(`${input.preferred || "shell"}`)}`}${_el_resume($scope7_id, "c")}</button>${_el_resume($scope7_id, "b")}</div>`);
7629
- _script($scope7_id, "C49");
7800
+ _script($scope7_id, "D49");
7630
7801
  _subscribe($spawning__closures, _subscribe($si__input_preferred && $input_preferred__closures, writeScope($scope7_id, {})));
7631
7802
  return 0;
7632
7803
  }
@@ -7641,15 +7812,15 @@ var work_view_default = _template("C", (input) => {
7641
7812
  }
7642
7813
  }, $scope0_id, "j", 1, 1, 1, "</div>");
7643
7814
  _html(`</div></div>${_el_resume($scope0_id, "a")}`);
7644
- _script($scope0_id, "C50");
7645
- _script($scope0_id, "C51");
7646
- _script($scope0_id, "C52");
7647
- _script($scope0_id, "C53");
7648
- _script($scope0_id, "C54");
7649
- _script($scope0_id, "C55");
7650
- _script($scope0_id, "C56");
7651
- _script($scope0_id, "C57");
7652
- _script($scope0_id, "C58");
7815
+ _script($scope0_id, "D50");
7816
+ _script($scope0_id, "D51");
7817
+ _script($scope0_id, "D52");
7818
+ _script($scope0_id, "D53");
7819
+ _script($scope0_id, "D54");
7820
+ _script($scope0_id, "D55");
7821
+ _script($scope0_id, "D56");
7822
+ _script($scope0_id, "D57");
7823
+ _script($scope0_id, "D58");
7653
7824
  writeScope($scope0_id, {
7654
7825
  n: input.initialView,
7655
7826
  s: input.allStatus,
@@ -8180,7 +8351,7 @@ var app_page_default = _template("b", (input) => {
8180
8351
  });
8181
8352
  //#endregion
8182
8353
  //#region src/routes/_app/new/+page.marko
8183
- var _page_default$4 = _template("Z", (input) => {
8354
+ var _page_default$4 = _template("$", (input) => {
8184
8355
  _scope_reason();
8185
8356
  _scope_id();
8186
8357
  app_page_default({ initial: {
@@ -8222,7 +8393,7 @@ var GET$21 = Run.GET(async (_ctx, next) => {
8222
8393
  });
8223
8394
  //#endregion
8224
8395
  //#region src/routes/_app/settings/+page.marko
8225
- var _page_default$3 = _template("$", (input) => {
8396
+ var _page_default$3 = _template("ab", (input) => {
8226
8397
  _scope_reason();
8227
8398
  _scope_id();
8228
8399
  app_page_default({ initial: {
@@ -8259,7 +8430,7 @@ function head3(context) {
8259
8430
  }
8260
8431
  //#endregion
8261
8432
  //#region src/routes/_app/w/$id/+page.marko
8262
- var _page_default$2 = _template("ab", (input) => {
8433
+ var _page_default$2 = _template("bb", (input) => {
8263
8434
  _scope_reason();
8264
8435
  _scope_id();
8265
8436
  app_page_default({ initial: {
@@ -8296,7 +8467,7 @@ function head4(context) {
8296
8467
  }
8297
8468
  //#endregion
8298
8469
  //#region src/routes/_app/w/$id/manage/+page.marko
8299
- var _page_default$1 = _template("bb", (input) => {
8470
+ var _page_default$1 = _template("cb", (input) => {
8300
8471
  _scope_reason();
8301
8472
  _scope_id();
8302
8473
  app_page_default({ initial: {
@@ -8332,7 +8503,7 @@ function head5(context) {
8332
8503
  }
8333
8504
  //#endregion
8334
8505
  //#region src/routes/_app/w/$id/review/+page.marko
8335
- var _page_default = _template("cb", (input) => {
8506
+ var _page_default = _template("db", (input) => {
8336
8507
  _scope_reason();
8337
8508
  _scope_id();
8338
8509
  const q = $global().url.searchParams;
@@ -9460,100 +9631,6 @@ function post17(context) {
9460
9631
  return call(mware11, __postHandler, context);
9461
9632
  }
9462
9633
  //#endregion
9463
- //#region src/server/github.ts
9464
- var TTL_MS$1 = 9e5;
9465
- /** github.com keeps the historical file name; Enterprise hosts get their own. */
9466
- var cachePath = (host) => path.join(config.dataDir, host === DEFAULT_HOST ? "repos.json" : `repos.${host}.json`);
9467
- /**
9468
- * User's repos plus every org's on every configured host, merged and cached
9469
- * (in memory, persisted to disk across restarts). Cached results are served
9470
- * immediately no matter their age, with a background revalidate when stale
9471
- * — only an explicit refresh or an empty cache blocks. Hosts are
9472
- * independent: a signed-out Enterprise server costs its own repos, never
9473
- * github.com's.
9474
- */
9475
- async function repoCatalog(refresh = false) {
9476
- const hosts = configuredHosts();
9477
- const parts = await Promise.all(hosts.map((host) => catalog(host, refresh).catch(() => {
9478
- if (host === DEFAULT_HOST && refresh) throw new Error(`gh repo listing failed`);
9479
- return catalog.get(host) ?? null;
9480
- })));
9481
- const repos = parts.flatMap((c) => c?.repos ?? []);
9482
- return {
9483
- fetchedAt: Math.min(...parts.map((c) => c?.fetchedAt ?? Date.now())),
9484
- repos: repos.sort((a, b) => a.nameWithOwner.localeCompare(b.nameWithOwner))
9485
- };
9486
- }
9487
- var catalog = swr(TTL_MS$1, fetchCatalog, readDiskCache);
9488
- function readDiskCache(host) {
9489
- try {
9490
- const cached = JSON.parse(fs.readFileSync(cachePath(host), "utf8"));
9491
- if (!Array.isArray(cached?.repos)) return void 0;
9492
- for (const r of cached.repos) r.host ||= host;
9493
- return {
9494
- at: cached.fetchedAt,
9495
- value: cached
9496
- };
9497
- } catch {
9498
- return;
9499
- }
9500
- }
9501
- async function fetchCatalog(host) {
9502
- let partial = false;
9503
- const orgs = (await gh([
9504
- "api",
9505
- "user/orgs",
9506
- "--jq",
9507
- ".[].login"
9508
- ], host).catch(() => {
9509
- partial = true;
9510
- return "";
9511
- })).split("\n").filter(Boolean);
9512
- const lists = await Promise.all([void 0, ...orgs].map((owner) => gh([
9513
- "repo",
9514
- "list",
9515
- ...owner ? [owner] : [],
9516
- "--limit",
9517
- "500",
9518
- "--json",
9519
- "nameWithOwner,defaultBranchRef,isArchived"
9520
- ], host).catch(() => {
9521
- partial = true;
9522
- return "[]";
9523
- })));
9524
- const byName = /* @__PURE__ */ new Map();
9525
- for (const out of lists) for (const r of JSON.parse(out)) byName.set(r.nameWithOwner, {
9526
- nameWithOwner: joinRepo(host, r.nameWithOwner),
9527
- host,
9528
- defaultBranch: r.defaultBranchRef?.name || "main",
9529
- isArchived: !!r.isArchived
9530
- });
9531
- const repos = [...byName.values()].sort((a, b) => a.nameWithOwner.localeCompare(b.nameWithOwner));
9532
- const catalog = {
9533
- fetchedAt: Date.now(),
9534
- repos
9535
- };
9536
- if (partial) {
9537
- if (readDiskCache(host)) throw new Error("gh repo listing failed");
9538
- return catalog;
9539
- }
9540
- const tmp = cachePath(host) + ".tmp";
9541
- fs.writeFileSync(tmp, JSON.stringify(catalog));
9542
- fs.renameSync(tmp, cachePath(host));
9543
- return catalog;
9544
- }
9545
- /** Branch names for a repo (for base-branch selection). */
9546
- var repoBranches = (fullName) => branches(fullName);
9547
- var branches = swr(3e5, async (fullName) => {
9548
- const { host, name } = splitRepo(fullName);
9549
- return (await gh([
9550
- "api",
9551
- `repos/${name}/branches?per_page=100`,
9552
- "--jq",
9553
- ".[].name"
9554
- ], host)).split("\n").filter(Boolean);
9555
- });
9556
- //#endregion
9557
9634
  //#region __marko-run__api.repos.js
9558
9635
  var getHandler$13 = normalizeHandler(Run.GET({ search: (value) => ({ refresh: "refresh" in value }) }, async (ctx) => Response.json(await repoCatalog(ctx.search.refresh))), "GET");
9559
9636
  var get18_options = mergeOptions(mware11, getHandler$13);
@@ -9571,7 +9648,18 @@ var getHandler$12 = normalizeHandler(Run.GET({ search: (value) => {
9571
9648
  const repo = typeof value.repo === "string" ? value.repo : "";
9572
9649
  if (!/^(?:[\w.-]+\/)?[\w.-]+\/[\w.-]+$/.test(repo)) throw httpError(400, "invalid repo");
9573
9650
  return { repo };
9574
- } }, async (ctx) => Response.json({ branches: await repoBranches(ctx.search.repo) })), "GET");
9651
+ } }, async (ctx) => {
9652
+ const [branches, catalog, looked] = await Promise.all([
9653
+ repoBranches(ctx.search.repo),
9654
+ repoCatalog().catch(() => null),
9655
+ repoDefaultBranch(ctx.search.repo).catch(() => null)
9656
+ ]);
9657
+ const fromCatalog = catalog?.repos.find((r) => r.nameWithOwner === ctx.search.repo)?.defaultBranch;
9658
+ return Response.json({
9659
+ branches,
9660
+ defaultBranch: looked || fromCatalog || null
9661
+ });
9662
+ }), "GET");
9575
9663
  var get19_options = mergeOptions(mware11, getHandler$12);
9576
9664
  var head19_options = mergeOptions(mware11);
9577
9665
  function get19(context) {
@@ -15574,4 +15662,4 @@ server.listen(port, () => {
15574
15662
  //#endregion
15575
15663
  export {};
15576
15664
 
15577
- ;var __MARKO_MANIFEST__={"ZLT8joi":{"block":[2,"stylesheet#/assets/app-page-DmG8xzGs.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-DmG8xzGs.css\"",">"],"defer":[2,"/assets/new-UbjAS00i.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/new-UbjAS00i.js\"","></script>",2,"modulepreload#/assets/_D4nk-T8f.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_D4nk-T8f.js\"",">"]},"T$MNY0k":{"block":[2,"stylesheet#/assets/app-page-DmG8xzGs.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-DmG8xzGs.css\"",">"],"defer":[2,"/assets/w._-UbjAS00i.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/w._-UbjAS00i.js\"","></script>",2,"modulepreload#/assets/_D4nk-T8f.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_D4nk-T8f.js\"",">"]},"AA0T2xt":{"block":[2,"stylesheet#/assets/app-page-DmG8xzGs.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-DmG8xzGs.css\"",">"],"defer":[2,"/assets/settings-UbjAS00i.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/settings-UbjAS00i.js\"","></script>",2,"modulepreload#/assets/_D4nk-T8f.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_D4nk-T8f.js\"",">"]},"ibphXY4":{"block":[2,"stylesheet#/assets/app-page-DmG8xzGs.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-DmG8xzGs.css\"",">"],"defer":[2,"/assets/w._-DezkAdF7.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/w._-DezkAdF7.js\"","></script>",2,"modulepreload#/assets/_D4nk-T8f.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_D4nk-T8f.js\"",">"]},"LH2lXAg":{"block":[2,"stylesheet#/assets/app-page-DmG8xzGs.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-DmG8xzGs.css\"",">"],"defer":[2,"/assets/w-UbjAS00i.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/w-UbjAS00i.js\"","></script>",2,"modulepreload#/assets/_D4nk-T8f.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_D4nk-T8f.js\"",">"]}};
15665
+ ;var __MARKO_MANIFEST__={"T$MNY0k":{"block":[2,"stylesheet#/assets/app-page-D8sTRvm0.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-D8sTRvm0.css\"",">"],"defer":[2,"/assets/w._-oVr2dYr3.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/w._-oVr2dYr3.js\"","></script>",2,"modulepreload#/assets/_BtwlJ5_o.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_BtwlJ5_o.js\"",">"]},"ZLT8joi":{"block":[2,"stylesheet#/assets/app-page-D8sTRvm0.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-D8sTRvm0.css\"",">"],"defer":[2,"/assets/new-oVr2dYr3.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/new-oVr2dYr3.js\"","></script>",2,"modulepreload#/assets/_BtwlJ5_o.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_BtwlJ5_o.js\"",">"]},"AA0T2xt":{"block":[2,"stylesheet#/assets/app-page-D8sTRvm0.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-D8sTRvm0.css\"",">"],"defer":[2,"/assets/settings-oVr2dYr3.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/settings-oVr2dYr3.js\"","></script>",2,"modulepreload#/assets/_BtwlJ5_o.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_BtwlJ5_o.js\"",">"]},"LH2lXAg":{"block":[2,"stylesheet#/assets/app-page-D8sTRvm0.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-D8sTRvm0.css\"",">"],"defer":[2,"/assets/w-oVr2dYr3.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/w-oVr2dYr3.js\"","></script>",2,"modulepreload#/assets/_BtwlJ5_o.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_BtwlJ5_o.js\"",">"]},"ibphXY4":{"block":[2,"stylesheet#/assets/app-page-D8sTRvm0.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-D8sTRvm0.css\"",">"],"defer":[2,"/assets/w._-BXx4vFQJ.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/w._-BXx4vFQJ.js\"","></script>",2,"modulepreload#/assets/_BtwlJ5_o.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_BtwlJ5_o.js\"",">"]}};