@dylanpiercey/work 0.0.137 → 0.0.139

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 (273) hide show
  1. package/README.md +24 -0
  2. package/bin/work.mjs +4 -0
  3. package/dist/{_q2QGXODx.js → _B9jB3eUh.js} +18 -18
  4. package/dist/_BNGMa45b.js +2 -0
  5. package/dist/{_BJg54Xa1.js → _BlEiBDGk.js} +8 -2
  6. package/dist/{_DyqUd25V.js → _Dkhw1NHC.js} +79 -79
  7. package/dist/index.mjs +797 -687
  8. package/dist/public/assets/{_C37o6tKr.js → _-ZAbZMp6.js} +46 -46
  9. package/dist/public/assets/_-ZAbZMp6.js.br +0 -0
  10. package/dist/public/assets/{_D74yUpFR.js → _92PbBTGk.js} +1 -1
  11. package/dist/public/assets/_92PbBTGk.js.br +0 -0
  12. package/dist/public/assets/{_Bxt0CEQr2.js → _B5v9Fbq22.js} +1 -1
  13. package/dist/public/assets/_B5v9Fbq22.js.br +0 -0
  14. package/dist/public/assets/{_Dbs1ola1.js → _B6VbLzOa.js} +1 -1
  15. package/dist/public/assets/_B6VbLzOa.js.br +0 -0
  16. package/dist/public/assets/{_f_jhUV9E2.js → _B8H0uW8P2.js} +1 -1
  17. package/dist/public/assets/_B8H0uW8P2.js.br +0 -0
  18. package/dist/public/assets/{_ClwjGc8M2.js → _BB_Fnyr12.js} +1 -1
  19. package/dist/public/assets/_BB_Fnyr12.js.br +0 -0
  20. package/dist/public/assets/{_CZik1U89.js → _BGNNvIXK.js} +1 -1
  21. package/dist/public/assets/_BGNNvIXK.js.br +0 -0
  22. package/dist/public/assets/{_Ddy1aeKP.js → _BGQP06_w.js} +1 -1
  23. package/dist/public/assets/_BGQP06_w.js.br +0 -0
  24. package/dist/public/assets/{_CDnysN3S.js → _BZb7VTF_.js} +1 -1
  25. package/dist/public/assets/_BZb7VTF_.js.br +0 -0
  26. package/dist/public/assets/{_5Rj2gra4.js → _BaPmPjXa.js} +1 -1
  27. package/dist/public/assets/_BaPmPjXa.js.br +0 -0
  28. package/dist/public/assets/{_B7GZ8Nzq.js → _BeLud53W.js} +1 -1
  29. package/dist/public/assets/_BeLud53W.js.br +0 -0
  30. package/dist/public/assets/_BhN1afwu.js +1 -0
  31. package/dist/public/assets/_BhN1afwu.js.br +0 -0
  32. package/dist/public/assets/_Bhn5BezI.js +1 -0
  33. package/dist/public/assets/_Bhn5BezI.js.br +0 -0
  34. package/dist/public/assets/{_mlus7Zvc.js → _BsJV1REp.js} +1 -1
  35. package/dist/public/assets/_BsJV1REp.js.br +0 -0
  36. package/dist/public/assets/{_BBsyBPY_2.js → _C0q1PWW32.js} +1 -1
  37. package/dist/public/assets/_C0q1PWW32.js.br +0 -0
  38. package/dist/public/assets/{_B2_tmvdP2.js → _C3S9wfaW2.js} +1 -1
  39. package/dist/public/assets/_C3S9wfaW2.js.br +0 -0
  40. package/dist/public/assets/{_BRBoguWB.js → _CEjnOCam.js} +1 -1
  41. package/dist/public/assets/_CEjnOCam.js.br +0 -0
  42. package/dist/public/assets/_CFuHFLFa.js +1 -0
  43. package/dist/public/assets/_CFuHFLFa.js.br +0 -0
  44. package/dist/public/assets/{_CnT3pmYB2.js → _CJFNHs4a2.js} +1 -1
  45. package/dist/public/assets/_CJFNHs4a2.js.br +0 -0
  46. package/dist/public/assets/{_B4svQeA62.js → _CL5pEkPF2.js} +1 -1
  47. package/dist/public/assets/_CVH-iW95.js +1 -0
  48. package/dist/public/assets/_CVH-iW95.js.br +0 -0
  49. package/dist/public/assets/{_BcrQbEVL.js → _Cch7T0VL.js} +1 -1
  50. package/dist/public/assets/_Cch7T0VL.js.br +0 -0
  51. package/dist/public/assets/{_D4SxCtr7.js → _CehEzybz.js} +1 -1
  52. package/dist/public/assets/_CehEzybz.js.br +0 -0
  53. package/dist/public/assets/_ChYdBfr12.js +1 -0
  54. package/dist/public/assets/_ChYdBfr12.js.br +0 -0
  55. package/dist/public/assets/{_D7FM8A3g.js → _CiUgu93c.js} +1 -1
  56. package/dist/public/assets/_CiUgu93c.js.br +0 -0
  57. package/dist/public/assets/{_CXSLJgQu.js → _CmuVbspY.js} +1 -1
  58. package/dist/public/assets/_CmuVbspY.js.br +0 -0
  59. package/dist/public/assets/_CpJVAK8n.js +89 -0
  60. package/dist/public/assets/_CpJVAK8n.js.br +0 -0
  61. package/dist/public/assets/{_CIh-AkC9.js → _CsDtf7Ry.js} +1 -1
  62. package/dist/public/assets/_CsDtf7Ry.js.br +0 -0
  63. package/dist/public/assets/{_wo4arGtx.js → _Ctew4jWT.js} +1 -1
  64. package/dist/public/assets/{_BxoHll4S2.js → _Cu02oWXx2.js} +1 -1
  65. package/dist/public/assets/_CuS5H1zc.js +1 -0
  66. package/dist/public/assets/_CuS5H1zc.js.br +0 -0
  67. package/dist/public/assets/_Cy053Jd0.js +1 -0
  68. package/dist/public/assets/_Cy053Jd0.js.br +0 -0
  69. package/dist/public/assets/_CyoDpMQK.js +1 -0
  70. package/dist/public/assets/_CyoDpMQK.js.br +0 -0
  71. package/dist/public/assets/{_CNX3tzOp.js → _D-bpXh2X.js} +1 -1
  72. package/dist/public/assets/_D-bpXh2X.js.br +0 -0
  73. package/dist/public/assets/_D1VBE8Ni.js +1 -0
  74. package/dist/public/assets/_D1VBE8Ni.js.br +0 -0
  75. package/dist/public/assets/{_zvkt6Dg_.js → _D5pc6mWE.js} +1 -1
  76. package/dist/public/assets/_D5pc6mWE.js.br +0 -0
  77. package/dist/public/assets/_D6jIULmr.js +1 -0
  78. package/dist/public/assets/_D6jIULmr.js.br +0 -0
  79. package/dist/public/assets/{_Dp4WK_Ux2.js → _DCyA_kCN2.js} +1 -1
  80. package/dist/public/assets/_DCyA_kCN2.js.br +0 -0
  81. package/dist/public/assets/_DEwoT19i.js +1 -0
  82. package/dist/public/assets/_DEwoT19i.js.br +0 -0
  83. package/dist/public/assets/_DIh7WZ2F.js +1 -0
  84. package/dist/public/assets/_DIh7WZ2F.js.br +0 -0
  85. package/dist/public/assets/{_CGhMIkoU.js → _DIho-aMJ.js} +1 -1
  86. package/dist/public/assets/_DIho-aMJ.js.br +0 -0
  87. package/dist/public/assets/_DLatqs0j2.js +1 -0
  88. package/dist/public/assets/_DLatqs0j2.js.br +0 -0
  89. package/dist/public/assets/{_BktPzARb2.js → _DMRjmpFD2.js} +1 -1
  90. package/dist/public/assets/_DMRjmpFD2.js.br +0 -0
  91. package/dist/public/assets/{_D-JURl4r.js → _DMtHQg6p.js} +1 -1
  92. package/dist/public/assets/_DMtHQg6p.js.br +0 -0
  93. package/dist/public/assets/_DNr5neqU.js +1 -0
  94. package/dist/public/assets/_DNr5neqU.js.br +0 -0
  95. package/dist/public/assets/{_BZFvk6oF.js → _DPdZCztx.js} +1 -1
  96. package/dist/public/assets/_DPdZCztx.js.br +0 -0
  97. package/dist/public/assets/{_BhJpS1j5.js → _DQ_V1iRl.js} +1 -1
  98. package/dist/public/assets/_DQ_V1iRl.js.br +0 -0
  99. package/dist/public/assets/_DSdwFJ0A2.js +1 -0
  100. package/dist/public/assets/_DSdwFJ0A2.js.br +0 -0
  101. package/dist/public/assets/{_BT12g7le2.js → _DYl8DmZ32.js} +1 -1
  102. package/dist/public/assets/_DYl8DmZ32.js.br +0 -0
  103. package/dist/public/assets/{_DAc4ydLU2.js → _D_FvYbxf2.js} +1 -1
  104. package/dist/public/assets/_D_FvYbxf2.js.br +0 -0
  105. package/dist/public/assets/{_DXAKHniZ2.js → _Dh6dMgTO2.js} +1 -1
  106. package/dist/public/assets/_Dh6dMgTO2.js.br +0 -0
  107. package/dist/public/assets/_DhAV7qp1.js +1 -0
  108. package/dist/public/assets/_DhAV7qp1.js.br +0 -0
  109. package/dist/public/assets/_DkWy_Ueq2.js +1 -0
  110. package/dist/public/assets/_DkWy_Ueq2.js.br +0 -0
  111. package/dist/public/assets/{_jITNZyKr2.js → _Ds18FW1c2.js} +1 -1
  112. package/dist/public/assets/_Ds18FW1c2.js.br +0 -0
  113. package/dist/public/assets/_DsUtXotp.js +1 -0
  114. package/dist/public/assets/_DsUtXotp.js.br +0 -0
  115. package/dist/public/assets/{_CPNeNXSQ2.js → _Dva2q_M42.js} +1 -1
  116. package/dist/public/assets/_Dva2q_M42.js.br +0 -0
  117. package/dist/public/assets/{_NUYSH0pf.js → _DxbJYPG-.js} +1 -1
  118. package/dist/public/assets/_DxbJYPG-.js.br +0 -0
  119. package/dist/public/assets/{_OFWvFH2G2.js → _DxbZoYq92.js} +1 -1
  120. package/dist/public/assets/_DxbZoYq92.js.br +0 -0
  121. package/dist/public/assets/{_BUhJRZkY2.js → _DzkQ59tO2.js} +1 -1
  122. package/dist/public/assets/_DzkQ59tO2.js.br +0 -0
  123. package/dist/public/assets/_F7htPBBT.js +1 -0
  124. package/dist/public/assets/_F7htPBBT.js.br +0 -0
  125. package/dist/public/assets/_HGe5zAKn.js +1 -0
  126. package/dist/public/assets/_HGe5zAKn.js.br +0 -0
  127. package/dist/public/assets/{_DjNLicto.js → _LhXY5_qe.js} +1 -1
  128. package/dist/public/assets/_LhXY5_qe.js.br +0 -0
  129. package/dist/public/assets/{_SqANV0GA.js → _PaKRa2cB.js} +1 -1
  130. package/dist/public/assets/_PaKRa2cB.js.br +0 -0
  131. package/dist/public/assets/{_CFty7QOX2.js → _TdrV18MH2.js} +1 -1
  132. package/dist/public/assets/_TdrV18MH2.js.br +0 -0
  133. package/dist/public/assets/{_aOU3qQZB.js → _WSGgcdni.js} +1 -1
  134. package/dist/public/assets/_WSGgcdni.js.br +0 -0
  135. package/dist/public/assets/{_BRs7wrJ2.js → _XQS1q-bq.js} +1 -1
  136. package/dist/public/assets/_XQS1q-bq.js.br +0 -0
  137. package/dist/public/assets/_Y2b8aPrG.js +1 -0
  138. package/dist/public/assets/_Y2b8aPrG.js.br +0 -0
  139. package/dist/public/assets/{_BB5wTQEd.js → _ZCuYNM1I.js} +1 -1
  140. package/dist/public/assets/_ZCuYNM1I.js.br +0 -0
  141. package/dist/public/assets/{_xXKz88pr.js → _ZDvJObO5.js} +1 -1
  142. package/dist/public/assets/_ZDvJObO5.js.br +0 -0
  143. package/dist/public/assets/{_bG9QrB36.js → _aT-vIKyZ.js} +1 -1
  144. package/dist/public/assets/_aT-vIKyZ.js.br +0 -0
  145. package/dist/public/assets/_aldud3NO.js +1 -0
  146. package/dist/public/assets/_aldud3NO.js.br +0 -0
  147. package/dist/public/assets/{_kVkzX9EO.js → _dIGPKWvv.js} +1 -1
  148. package/dist/public/assets/_dIGPKWvv.js.br +0 -0
  149. package/dist/public/assets/_diJBCZr0.js +1 -0
  150. package/dist/public/assets/_diJBCZr0.js.br +0 -0
  151. package/dist/public/assets/{_XQI2rM-72.js → _wPGOV0BF2.js} +1 -1
  152. package/dist/public/assets/_wPGOV0BF2.js.br +0 -0
  153. package/dist/public/assets/{_BLuzQrZB2.js → _wWYYdpzZ2.js} +1 -1
  154. package/dist/public/assets/_wWYYdpzZ2.js.br +0 -0
  155. package/dist/public/assets/{_C0oMCmKy.js → _xB1z2QtX.js} +1 -1
  156. package/dist/public/assets/_xB1z2QtX.js.br +0 -0
  157. package/dist/public/assets/app-page-DhekpIyo.css +1 -0
  158. package/dist/public/assets/app-page-DhekpIyo.css.br +0 -0
  159. package/dist/public/assets/diff-view-B6mpGFZy.css +1 -0
  160. package/dist/public/assets/diff-view-B6mpGFZy.css.br +0 -0
  161. package/dist/public/assets/new-DAfon2Hw.js +1 -0
  162. package/dist/public/assets/settings-DAfon2Hw.js +1 -0
  163. package/dist/public/assets/w-DAfon2Hw.js +1 -0
  164. package/dist/public/assets/w._-C05PxvAg.js +1 -0
  165. package/dist/public/assets/w._-DAfon2Hw.js +1 -0
  166. package/package.json +1 -1
  167. package/dist/_B3qThpAM.js +0 -2
  168. package/dist/public/assets/_48TVbcsA.js +0 -1
  169. package/dist/public/assets/_48TVbcsA.js.br +0 -0
  170. package/dist/public/assets/_5Rj2gra4.js.br +0 -0
  171. package/dist/public/assets/_A0q7Ooua2.js +0 -1
  172. package/dist/public/assets/_A0q7Ooua2.js.br +0 -0
  173. package/dist/public/assets/_B2_tmvdP2.js.br +0 -0
  174. package/dist/public/assets/_B7GZ8Nzq.js.br +0 -0
  175. package/dist/public/assets/_BB5wTQEd.js.br +0 -0
  176. package/dist/public/assets/_BBZERnMF.js +0 -1
  177. package/dist/public/assets/_BBZERnMF.js.br +0 -0
  178. package/dist/public/assets/_BBsyBPY_2.js.br +0 -0
  179. package/dist/public/assets/_BE8aZ_UF.js +0 -1
  180. package/dist/public/assets/_BE8aZ_UF.js.br +0 -0
  181. package/dist/public/assets/_BLuzQrZB2.js.br +0 -0
  182. package/dist/public/assets/_BRBoguWB.js.br +0 -0
  183. package/dist/public/assets/_BRZcUxwW.js +0 -1
  184. package/dist/public/assets/_BRZcUxwW.js.br +0 -0
  185. package/dist/public/assets/_BRs7wrJ2.js.br +0 -0
  186. package/dist/public/assets/_BT12g7le2.js.br +0 -0
  187. package/dist/public/assets/_BUhJRZkY2.js.br +0 -0
  188. package/dist/public/assets/_BVBmzGqS.js +0 -1
  189. package/dist/public/assets/_BVBmzGqS.js.br +0 -0
  190. package/dist/public/assets/_BXLeSgTE.js +0 -1
  191. package/dist/public/assets/_BXLeSgTE.js.br +0 -0
  192. package/dist/public/assets/_BZFvk6oF.js.br +0 -0
  193. package/dist/public/assets/_BcrQbEVL.js.br +0 -0
  194. package/dist/public/assets/_BgiBAuH-.js +0 -1
  195. package/dist/public/assets/_BgiBAuH-.js.br +0 -0
  196. package/dist/public/assets/_BhJpS1j5.js.br +0 -0
  197. package/dist/public/assets/_BktPzARb2.js.br +0 -0
  198. package/dist/public/assets/_BptlJm4g.js +0 -1
  199. package/dist/public/assets/_BptlJm4g.js.br +0 -0
  200. package/dist/public/assets/_BsPfAMjd.js +0 -1
  201. package/dist/public/assets/_BsPfAMjd.js.br +0 -0
  202. package/dist/public/assets/_Bxt0CEQr2.js.br +0 -0
  203. package/dist/public/assets/_Bzah2rSU.js +0 -1
  204. package/dist/public/assets/_Bzah2rSU.js.br +0 -0
  205. package/dist/public/assets/_C0oMCmKy.js.br +0 -0
  206. package/dist/public/assets/_C37o6tKr.js.br +0 -0
  207. package/dist/public/assets/_C8aavgS-2.js +0 -1
  208. package/dist/public/assets/_C8aavgS-2.js.br +0 -0
  209. package/dist/public/assets/_CDnysN3S.js.br +0 -0
  210. package/dist/public/assets/_CFty7QOX2.js.br +0 -0
  211. package/dist/public/assets/_CGhMIkoU.js.br +0 -0
  212. package/dist/public/assets/_CIh-AkC9.js.br +0 -0
  213. package/dist/public/assets/_CIigx59b.js +0 -1
  214. package/dist/public/assets/_CIigx59b.js.br +0 -0
  215. package/dist/public/assets/_CLWE-Z1K.js +0 -89
  216. package/dist/public/assets/_CLWE-Z1K.js.br +0 -0
  217. package/dist/public/assets/_CNX3tzOp.js.br +0 -0
  218. package/dist/public/assets/_CPNeNXSQ2.js.br +0 -0
  219. package/dist/public/assets/_CXSLJgQu.js.br +0 -0
  220. package/dist/public/assets/_CZik1U89.js.br +0 -0
  221. package/dist/public/assets/_CZjXErwu2.js +0 -1
  222. package/dist/public/assets/_CZjXErwu2.js.br +0 -0
  223. package/dist/public/assets/_ClwjGc8M2.js.br +0 -0
  224. package/dist/public/assets/_CnT3pmYB2.js.br +0 -0
  225. package/dist/public/assets/_D-JURl4r.js.br +0 -0
  226. package/dist/public/assets/_D4SxCtr7.js.br +0 -0
  227. package/dist/public/assets/_D4dVNJDB.js +0 -1
  228. package/dist/public/assets/_D4dVNJDB.js.br +0 -0
  229. package/dist/public/assets/_D74yUpFR.js.br +0 -0
  230. package/dist/public/assets/_D7FM8A3g.js.br +0 -0
  231. package/dist/public/assets/_D9gN-c2a.js +0 -1
  232. package/dist/public/assets/_D9gN-c2a.js.br +0 -0
  233. package/dist/public/assets/_DAc4ydLU2.js.br +0 -0
  234. package/dist/public/assets/_DR1dHtu1.js +0 -1
  235. package/dist/public/assets/_DR1dHtu1.js.br +0 -0
  236. package/dist/public/assets/_DXAKHniZ2.js.br +0 -0
  237. package/dist/public/assets/_Dbs1ola1.js.br +0 -0
  238. package/dist/public/assets/_Ddy1aeKP.js.br +0 -0
  239. package/dist/public/assets/_DjNLicto.js.br +0 -0
  240. package/dist/public/assets/_Dp4WK_Ux2.js.br +0 -0
  241. package/dist/public/assets/_DrbgVNDi.js +0 -1
  242. package/dist/public/assets/_DrbgVNDi.js.br +0 -0
  243. package/dist/public/assets/_InihcsUB.js +0 -1
  244. package/dist/public/assets/_InihcsUB.js.br +0 -0
  245. package/dist/public/assets/_NUYSH0pf.js.br +0 -0
  246. package/dist/public/assets/_OFWvFH2G2.js.br +0 -0
  247. package/dist/public/assets/_RPQFtSoa.js +0 -1
  248. package/dist/public/assets/_RPQFtSoa.js.br +0 -0
  249. package/dist/public/assets/_SqANV0GA.js.br +0 -0
  250. package/dist/public/assets/_XQI2rM-72.js.br +0 -0
  251. package/dist/public/assets/_aOU3qQZB.js.br +0 -0
  252. package/dist/public/assets/_bG9QrB36.js.br +0 -0
  253. package/dist/public/assets/_cq7Zuamy.js +0 -1
  254. package/dist/public/assets/_cq7Zuamy.js.br +0 -0
  255. package/dist/public/assets/_f_jhUV9E2.js.br +0 -0
  256. package/dist/public/assets/_jITNZyKr2.js.br +0 -0
  257. package/dist/public/assets/_kVkzX9EO.js.br +0 -0
  258. package/dist/public/assets/_mlus7Zvc.js.br +0 -0
  259. package/dist/public/assets/_mrxNqpY62.js +0 -1
  260. package/dist/public/assets/_mrxNqpY62.js.br +0 -0
  261. package/dist/public/assets/_rtNfq8SS.js +0 -1
  262. package/dist/public/assets/_rtNfq8SS.js.br +0 -0
  263. package/dist/public/assets/_xXKz88pr.js.br +0 -0
  264. package/dist/public/assets/_zvkt6Dg_.js.br +0 -0
  265. package/dist/public/assets/app-page-D93IyHzW.css +0 -1
  266. package/dist/public/assets/app-page-D93IyHzW.css.br +0 -0
  267. package/dist/public/assets/diff-view-BU-rwlH-.css +0 -1
  268. package/dist/public/assets/diff-view-BU-rwlH-.css.br +0 -0
  269. package/dist/public/assets/new-D-2OVF74.js +0 -1
  270. package/dist/public/assets/settings-D-2OVF74.js +0 -1
  271. package/dist/public/assets/w-D-2OVF74.js +0 -1
  272. package/dist/public/assets/w._-BprceT9I.js +0 -1
  273. package/dist/public/assets/w._-D-2OVF74.js +0 -1
package/dist/index.mjs CHANGED
@@ -1,8 +1,8 @@
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 git, a as ensureTmuxServer, at as which, b as readHookPayload, bt as config, c as killWorkspaceSessions, ct as agentById, d as newSessionArgs, dt as all, et as discoverAgents, ft as db, g as sessionStates, gt as gh, h as sendToSession, ht as TMUX_SOCKET, i as disposeSessions, it as setupPath, j as setSessionViewers, k as setAgentPhase, l as listSessions, lt as agentLabel$1, m as renameSession, mt as workspacePath, n as clearTmuxStarted, nt as ghKnownHosts, o as getSession, ot as DEFAULT_GITHUB_HOST, p as panePids, pt as get, q as disabledAgents, r as createSession, rt as miseVersions, s as killSession, st as TOOLS, t as cleanEnv, tt as doctor, u as markTmuxStarted, ut as toolById, v as tmuxWasStarted, vt as run, w as agentFamily, x as reportsWorking, y as AGENTS, yt as tmux, z as pushPublicKey } from "./_BJg54Xa1.js";
3
- import { $ as _attr_or, A as iconSize, At as _serialize_if, B as iconBtnXs, Bt as writeScope, C as setWorkspaceTab, Ct as _resume_branch, D as toast_default, Dt as _script, E as workspaceTab, Et as _scope_with_id, F as btnLg, Ft as _trailers, G as $global, H as metaTrunc, I as btnSm, It as _var, K as _attr, L as chipBtn, Lt as attrTag, M as repoLabel, Mt as _subscribe, N as repoWebUrl$1, Nt as _template, O as icon_xmark_default, Ot as _sep, P as setPrimaryHost, Pt as _to_text, Q as _attr_option_value, Rt as forOf, S as setTheme, St as _resume, T as theme, Tt as _scope_reason, U as phase, V as inputLg, W as tone, X as _attr_input_value, Y as _attr_input_checked, Z as _attr_nonce, _t as _hoist_read_error, at as _content, bt as _if, c as icon_search_default, d as icon_refresh_default, dt as _escape, et as _attr_select_value, f as iconBtn$1, ft as _escape_script, gt as _hoist, ht as _for_of, i as icon_sidebar_default, it as _attrs_partial, j as parseRepoUrl, jt as _set_serialize_reason, k as icon_base_default, kt as _serialize_guard, l as icon_chevron_right_default, lt as _el_read_error, m as sectionCount, mt as _flush_head, n as findIconBtn, nt as _attr_textarea_value, o as rankRepos, ot as _content_resume, p as row, pt as _existing_scope, q as _attr_class, r as findInput, rt as _attrs, s as icon_arrow_up_default, st as _dynamic_tag, t as icon_arrow_down_default, tt as _attr_style, u as icon_back_default, ut as _el_resume, vt as _html, w as sideNavOpen, wt as _scope_id, xt as _peek_scope_id, y as ignoredSsoOrgs, yt as _id, z as iconBtnRow, zt as withPageAssets } from "./_q2QGXODx.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 git, a as ensureTmuxServer, at as which, b as readHookPayload, bt as config, c as killWorkspaceSessions, ct as agentById, d as newSessionArgs, dt as all, et as discoverAgents, ft as db, g as sessionStates, gt as gh, h as sendToSession, ht as TMUX_SOCKET, i as disposeSessions, it as setupPath, j as setSessionViewers, k as setAgentPhase, l as listSessions, lt as agentLabel$1, m as renameSession, mt as workspacePath, n as clearTmuxStarted, nt as ghKnownHosts, o as getSession, ot as DEFAULT_GITHUB_HOST, p as panePids, pt as get, q as disabledAgents, r as createSession, rt as miseVersions, s as killSession, st as TOOLS, t as cleanEnv, tt as doctor, u as markTmuxStarted, ut as toolById, v as tmuxWasStarted, vt as run, w as agentFamily, x as reportsWorking, y as AGENTS, yt as tmux, z as pushPublicKey } from "./_BlEiBDGk.js";
3
+ import { $ as _attr_or, A as iconSize, At as _serialize_if, B as iconBtnXs, Bt as writeScope, C as setWorkspaceTab, Ct as _resume_branch, D as toast_default, Dt as _script, E as workspaceTab, Et as _scope_with_id, F as btnLg, Ft as _trailers, G as $global, H as metaTrunc, I as btnSm, It as _var, K as _attr, L as chipBtn, Lt as attrTag, M as repoLabel, Mt as _subscribe, N as repoWebUrl$1, Nt as _template, O as icon_xmark_default, Ot as _sep, P as setPrimaryHost, Pt as _to_text, Q as _attr_option_value, Rt as forOf, S as setTheme, St as _resume, T as theme, Tt as _scope_reason, U as phase, V as inputLg, W as tone, X as _attr_input_value, Y as _attr_input_checked, Z as _attr_nonce, _t as _hoist_read_error, at as _content, bt as _if, c as icon_search_default, d as icon_refresh_default, dt as _escape, et as _attr_select_value, f as iconBtn$1, ft as _escape_script, gt as _hoist, ht as _for_of, i as icon_sidebar_default, it as _attrs_partial, j as parseRepoUrl, jt as _set_serialize_reason, k as icon_base_default, kt as _serialize_guard, l as icon_chevron_right_default, lt as _el_read_error, m as sectionCount, mt as _flush_head, n as findIconBtn, nt as _attr_textarea_value, o as rankRepos, ot as _content_resume, p as row, pt as _existing_scope, q as _attr_class, r as findInput, rt as _attrs, s as icon_arrow_up_default, st as _dynamic_tag, t as icon_arrow_down_default, tt as _attr_style, u as icon_back_default, ut as _el_resume, vt as _html, w as sideNavOpen, wt as _scope_id, xt as _peek_scope_id, y as ignoredSsoOrgs, yt as _id, z as iconBtnRow, zt as withPageAssets } from "./_B9jB3eUh.js";
4
4
  import fs from "node:fs";
5
- import { createServer } from "node:http";
5
+ import http, { createServer } from "node:http";
6
6
  import path from "node:path";
7
7
  import { fileURLToPath } from "node:url";
8
8
  import zlib from "node:zlib";
@@ -12,6 +12,7 @@ import os from "node:os";
12
12
  import { spawn } from "node:child_process";
13
13
  import fs$1 from "node:fs/promises";
14
14
  import crypto, { createHash } from "node:crypto";
15
+ import net from "node:net";
15
16
  import pty from "node-pty";
16
17
  //#region node_modules/.pnpm/@marko+run@0.11.10_@types+node@26.2.0_esbuild@0.27.7_marko@6.3.43/node_modules/@marko/run/dist/adapter/middleware.js
17
18
  function getOrigin(req, trustProxy) {
@@ -3880,10 +3881,49 @@ var _middleware_default$2 = Run.ALL((ctx, next) => {
3880
3881
  return next();
3881
3882
  });
3882
3883
  //#endregion
3884
+ //#region src/server/origin.ts
3885
+ /**
3886
+ * Cross-origin guard for the parts of work that act with the user's
3887
+ * session: the API's writes and the terminal / events websockets.
3888
+ *
3889
+ * Auth in front of work is a cookie, and once ports are proxied on
3890
+ * `<port>.<host>` that cookie is shared across the whole `.<host>` domain
3891
+ * — a page a workspace serves (any code an agent ran) sits on a sibling
3892
+ * origin and carries it. CORS stops such a page from *reading* API
3893
+ * responses, but not from sending simple POSTs, and websockets have no
3894
+ * CORS at all: an `Origin` check is the only thing between a dev server
3895
+ * and a terminal on this machine. Browsers always send `Origin` on
3896
+ * websocket upgrades and on cross-site POSTs; a request without one is a
3897
+ * CLI or a same-origin GET and passes.
3898
+ */
3899
+ function crossOrigin(headers) {
3900
+ const origin = headers.origin;
3901
+ if (!origin || origin === "null") return false;
3902
+ const host = String(headers.host || "");
3903
+ let originHost;
3904
+ try {
3905
+ originHost = new URL(origin).host;
3906
+ } catch {
3907
+ return true;
3908
+ }
3909
+ if (originHost === host) return false;
3910
+ const forwarded = String(headers["x-forwarded-host"] || "").split(",")[0];
3911
+ return originHost !== forwarded.trim();
3912
+ }
3913
+ //#endregion
3883
3914
  //#region src/routes/api/+middleware.ts
3884
3915
  /** API error boundary: thrown errors become `{ error }` JSON responses,
3885
- * with an `httpError`'s status or 500. */
3916
+ * with an `httpError`'s status or 500. Writes from another origin are
3917
+ * refused first (see server/origin.ts). */
3886
3918
  var _middleware_default$1 = Run.ALL(async (ctx, next) => {
3919
+ if (ctx.request.method !== "GET" && ctx.request.method !== "HEAD") {
3920
+ const h = ctx.request.headers;
3921
+ if (crossOrigin({
3922
+ origin: h.get("origin") ?? void 0,
3923
+ host: h.get("host") ?? void 0,
3924
+ "x-forwarded-host": h.get("x-forwarded-host") ?? void 0
3925
+ })) return Response.json({ error: "cross-origin request refused" }, { status: 403 });
3926
+ }
3887
3927
  try {
3888
3928
  return await next();
3889
3929
  } catch (err) {
@@ -3957,7 +3997,7 @@ var _layout_default = _template("a", (input) => {
3957
3997
  const tint = accent.slice(1);
3958
3998
  const iconHref = `/api/instance/icon${tint && `?v=${tint}`}`;
3959
3999
  const touchIconHref = `/api/instance/icon-png?art=apple${tint && `&v=${tint}`}`;
3960
- _html(`<!doctype html><html lang=en${theme === "system" ? "" : _attr("data-theme", theme)}${accent ? _attr_style(`--accent:${accent}`) : ""}><head><meta charset=utf-8><meta name=viewport content="width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content">`);
4000
+ _html(`<!doctype html><html lang=en${theme === "system" ? "" : _attr("data-theme", theme)}${accent ? _attr_style(`--accent:${accent}`) : ""}><head><meta charset=utf-8><meta name=work-port-hosts${_attr("content", config.portHosts)}><meta name=viewport content="width=device-width, initial-scale=1, viewport-fit=cover, interactive-widget=resizes-content">`);
3961
4001
  if (theme === "light") {
3962
4002
  _scope_id();
3963
4003
  _html(`<meta name=theme-color${_attr_or("content", accent, " content=#fafafa")}>`);
@@ -3969,7 +4009,7 @@ var _layout_default = _template("a", (input) => {
3969
4009
  _html(`<meta name=theme-color media="(prefers-color-scheme: light)"${_attr_or("content", accent, " content=#fafafa")}><meta name=theme-color media="(prefers-color-scheme: dark)"${_attr_or("content", accent, " content=#131316")}>`);
3970
4010
  }
3971
4011
  _html(`<link rel=manifest href=/api/instance/manifest crossorigin=use-credentials><link rel=icon${_attr("href", iconHref)} type=image/svg+xml><link rel=apple-touch-icon${_attr("href", touchIconHref)}><meta name=apple-mobile-web-app-title${_attr("content", name)}><title>${_escape(name)}</title>${_flush_head()}</head><body>`);
3972
- _dynamic_tag($scope0_id, "g", input.content, {}, 0, 0, _serialize_guard($scope0_reason, 0));
4012
+ _dynamic_tag($scope0_id, "h", input.content, {}, 0, 0, _serialize_guard($scope0_reason, 0));
3973
4013
  _trailers("</body></html>");
3974
4014
  _serialize_if($scope0_reason, 0) && writeScope($scope0_id, {});
3975
4015
  }, 1);
@@ -4249,35 +4289,35 @@ function applyInstance(inst) {
4249
4289
  }
4250
4290
  //#endregion
4251
4291
  //#region src/tags/settings-page.css.ts
4252
- var content$2 = "_cP _bw _bx";
4253
- var agentGrid = "_cS _bH";
4254
- var toolGrid = "_c2 _cM";
4255
- var toolRow = "_c3 _cN";
4292
+ var content$2 = "_cQ _bx _by";
4293
+ var agentGrid = "_cT _bI";
4294
+ var toolGrid = "_c3 _cN";
4295
+ var toolRow = "_c4 _cO";
4256
4296
  var themeSeg = "_dq _bc";
4257
4297
  var swatches = "_dy _bc";
4258
- var checkList = "_dP _bH";
4259
- var flatCardRow = "_cO _cN";
4260
- var pop$1 = "_cn _8";
4261
- var spinner = "_cq _0 _E";
4262
- var busy = "_cu _ct";
4263
- var pop = "_cw _8";
4298
+ var checkList = "_dP _bI";
4299
+ var flatCardRow = "_cP _cO";
4300
+ var pop$1 = "_cv _8";
4301
+ var spinner = "_cy _0 _E";
4302
+ var busy = "_cm _cl";
4303
+ var pop = "_co _8";
4264
4304
  //#endregion
4265
4305
  //#region src/tags/page-head.marko
4266
4306
  var page_head_default = _template("t", (input) => {
4267
4307
  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);
4268
4308
  const $scope0_id = _scope_id();
4269
- _html(`<header${_attr_class("_by")}>`);
4309
+ _html(`<header${_attr_class("_bz")}>`);
4270
4310
  _if(() => {
4271
4311
  if (input.backHref) {
4272
4312
  const $scope1_id = _scope_id();
4273
- _html(`<a${_attr("href", input.backHref)}${_attr_class([iconBtnRow, "_dT"])}${_attr_or("title", input.backTitle, " title=\"Back (Esc)\"")}${_attr_or("aria-label", input.backTitle, " aria-label=Back")}>`);
4313
+ _html(`<a${_attr("href", input.backHref)}${_attr_class([iconBtnRow, "_ea"])}${_attr_or("title", input.backTitle, " title=\"Back (Esc)\"")}${_attr_or("aria-label", input.backTitle, " aria-label=Back")}>`);
4274
4314
  icon_back_default({ size: 16 });
4275
4315
  _html(`</a>${_el_resume($scope1_id, "a", _serialize_guard($scope0_reason, 0))}`);
4276
4316
  _serialize_if($scope0_reason, 2) && writeScope($scope1_id, { _: _serialize_if($scope0_reason, 0) && _scope_with_id($scope0_id) });
4277
4317
  return 0;
4278
4318
  } else if (input.onBack) {
4279
4319
  const $scope2_id = _scope_id();
4280
- _html(`<button${_attr_class([iconBtnRow, "_dT"])}${_attr_or("title", input.backTitle, " title=\"Back (Esc)\"")}${_attr_or("aria-label", input.backTitle, " aria-label=Back")}>`);
4320
+ _html(`<button${_attr_class([iconBtnRow, "_ea"])}${_attr_or("title", input.backTitle, " title=\"Back (Esc)\"")}${_attr_or("aria-label", input.backTitle, " aria-label=Back")}>`);
4281
4321
  icon_back_default({ size: 16 });
4282
4322
  _html(`</button>${_el_resume($scope2_id, "a")}`);
4283
4323
  _script($scope2_id, "t0");
@@ -4285,11 +4325,11 @@ var page_head_default = _template("t", (input) => {
4285
4325
  return 1;
4286
4326
  }
4287
4327
  }, $scope0_id, "b", _serialize_guard($scope0_reason, 2), _serialize_guard($scope0_reason, 1), $sg__input_backHref__OR__input_onBack__OR__input_meta__OR__input_actions, 0, 1);
4288
- _html(`<div${_attr_class("_bA")}><h1${_attr("id", input.titleId)}${_attr_class("_bz")}>${_escape(input.title)}${_el_resume($scope0_id, "e", _serialize_guard($scope0_reason, 5))}</h1>${_el_resume($scope0_id, "d", _serialize_guard($scope0_reason, 4))}`);
4328
+ _html(`<div${_attr_class("_bB")}><h1${_attr("id", input.titleId)}${_attr_class("_bA")}>${_escape(input.title)}${_el_resume($scope0_id, "e", _serialize_guard($scope0_reason, 5))}</h1>${_el_resume($scope0_id, "d", _serialize_guard($scope0_reason, 4))}`);
4289
4329
  _if(() => {
4290
4330
  if (input.meta) {
4291
4331
  const $scope3_id = _scope_id();
4292
- _html(`<p${_attr_class("_bB")}>`);
4332
+ _html(`<p${_attr_class("_bC")}>`);
4293
4333
  _dynamic_tag($scope3_id, "b", input.meta, {}, 0, 0, $sg__input_meta);
4294
4334
  _html("</p>");
4295
4335
  $si__input_meta && writeScope($scope3_id, { _: _scope_with_id($scope0_id) });
@@ -4300,7 +4340,7 @@ var page_head_default = _template("t", (input) => {
4300
4340
  _if(() => {
4301
4341
  if (input.actions) {
4302
4342
  const $scope4_id = _scope_id();
4303
- _html(`<div${_attr_class("_bC")}>`);
4343
+ _html(`<div${_attr_class("_bD")}>`);
4304
4344
  _dynamic_tag($scope4_id, "b", input.actions, {}, 0, 0, $sg__input_actions);
4305
4345
  _html("</div>");
4306
4346
  $si__input_actions && writeScope($scope4_id, { _: _scope_with_id($scope0_id) });
@@ -4512,12 +4552,8 @@ var icon_check_default = _template("S", (input) => {
4512
4552
  var api$7;
4513
4553
  var watchProgress$3;
4514
4554
  var sso_auth_default = _template("C", (input) => {
4515
- const $scope0_reason = _scope_reason(), $sg__input_items = _serialize_guard($scope0_reason, 2), $sg__input_skipped = _serialize_guard($scope0_reason, 1), $sg__input_skipped__OR__input_items_length = _serialize_guard($scope0_reason, 0), $si__input_items_0_host = _serialize_if($scope0_reason, 3);
4555
+ const $scope0_reason = _scope_reason(), $sg__input_items = _serialize_guard($scope0_reason, 2), $sg__input_skipped__OR__input_items = _serialize_guard($scope0_reason, 0), $sg__input_skipped = _serialize_guard($scope0_reason, 1);
4516
4556
  const $scope0_id = _scope_id();
4517
- const $host__closures = /* @__PURE__ */ new Set();
4518
- const $localCode__closures = /* @__PURE__ */ new Set();
4519
- const $busy__closures = /* @__PURE__ */ new Set();
4520
- const $localError__closures = /* @__PURE__ */ new Set();
4521
4557
  const skipped = input.skipped || [];
4522
4558
  const host = input.items[0]?.host || "github.com";
4523
4559
  let localBusy = false;
@@ -4553,93 +4589,68 @@ var sso_auth_default = _template("C", (input) => {
4553
4589
  localCode = null;
4554
4590
  }
4555
4591
  }, "C0", $scope0_id);
4556
- _html(`<div${_attr_class("_gk")}>`);
4557
- _if(() => {
4558
- if (input.items.length) {
4559
- const $scope1_id = _scope_id();
4560
- _html(`<div${_attr_class("_gl")}><span${_attr_class("_gm")}>`);
4561
- icon_warning_default({
4562
- size: 12,
4563
- class: "_gn"
4564
- });
4565
- _html(` Organization SSO</span><span${_attr_class("_gx")}>Repos and PRs in these orgs stay hidden until the GitHub CLI is authorized for them.</span><span${_attr_class("_x")}></span>`);
4566
- _if(() => {
4567
- if (localBusy && localCode) {
4568
- const $scope5_id = _scope_id();
4569
- _html(`<span${_attr_class("_gu")}><span${_attr_class("_E")}></span> Enter code <strong${_attr_class("_gv")}>${_escape(localCode)}${_el_resume($scope5_id, "d")}</strong> at <a${_attr("href", `https://${host}/login/device`)}${_attr_class("_gw")}>${_escape(host)}${_el_resume($scope5_id, "f", _serialize_guard($scope0_reason, 3))}/login/device</a>${_el_resume($scope5_id, "e")}</span>`);
4570
- _script($scope5_id, "C1");
4571
- _subscribe($localCode__closures, _subscribe($si__input_items_0_host && $host__closures, writeScope($scope5_id, {})));
4572
- return 0;
4573
- } else if (localBusy) {
4574
- const $scope8_id = _scope_id();
4575
- _html(`<span${_attr_class("_gu")}><span${_attr_class("_E")}></span>Starting GitHub re-authorization…</span>`);
4576
- writeScope($scope8_id, {});
4577
- return 1;
4578
- } else if (!busy) {
4579
- const $scope7_id = _scope_id();
4580
- _html(`<button type=button${_attr_class([btnSm, "_p"])} title="Re-authorize GitHub CLI (same device flow as Sign in)">Authorize</button>${_el_resume($scope7_id, "a")}`);
4581
- _script($scope7_id, "C2");
4582
- writeScope($scope7_id, {});
4583
- return 2;
4584
- }
4585
- }, $scope1_id, "f", 1, 1, 1, 0, 1);
4586
- _html(`</div><ul${_attr_class("_go")}>`);
4587
- _for_of(input.items, (s) => {
4592
+ _html(`<div${_attr_class(["_gj", input.class])}>`);
4593
+ _for_of(input.items, (s) => {
4594
+ const $scope1_id = _scope_id();
4595
+ _html(`<div${_attr_class("_gk")}><span${_attr_class("_gm")}><span${_attr_class("_gn")}>${_escape(s.org)}${_el_resume($scope1_id, "d", $sg__input_items)}</span><span${_attr_class(["_go", "_gp"])} title="Repos and PRs in this org stay hidden until the GitHub CLI is authorized for it.">SSO not authorized</span></span>`);
4596
+ _if(() => {
4597
+ if (!busy) {
4588
4598
  const $scope2_id = _scope_id();
4589
- _html(`<li${_attr_class("_gp")}><span${_attr_class("_gr")}>${_escape(s.org)}${_el_resume($scope2_id, "c", $sg__input_items)}</span><span${_attr_class("_gs")}>not authorized</span><button type=button${_attr_class([chipBtn, "_gt"])}${_attr("title", `Skip ${s.org} — stop asking about it`)}${_attr("aria-label", `Skip ${s.org}`)}${_attr("disabled", busy)}>Skip</button>${_el_resume($scope2_id, "e")}</li>`);
4590
- _script($scope2_id, "C3");
4591
- _subscribe($busy__closures, writeScope($scope2_id, {
4592
- h: s?.org,
4593
- _: _scope_with_id($scope1_id)
4594
- }));
4595
- }, "org", $scope1_id, "g", $sg__input_items, $sg__input_items, $sg__input_items, "</ul>", 1);
4596
- _if(() => {
4597
- if (localError) {
4598
- const $scope6_id = _scope_id();
4599
- _html(`<p${_attr_class("_gx")}>${_escape(localError)}${_el_resume($scope6_id, "b")}</p>`);
4600
- _subscribe($localError__closures, writeScope($scope6_id, {}));
4601
- return 0;
4602
- }
4603
- }, $scope1_id, "h", 1, 1, 1, 0, 1);
4604
- writeScope($scope1_id, { _: _scope_with_id($scope0_id) });
4599
+ _html(`<button type=button${_attr_class([btnSm, "_p"])} title="Re-authorize GitHub CLI (same device flow as Sign in)">Authorize</button>${_el_resume($scope2_id, "a")}<button type=button${_attr_class([btnSm, "_gq"])}${_attr("title", `Ignore ${s.org} — stop asking about it`)}>Ignore</button>${_el_resume($scope2_id, "b")}`);
4600
+ _script($scope2_id, "C1");
4601
+ writeScope($scope2_id, {});
4602
+ return 0;
4603
+ }
4604
+ }, $scope1_id, "f");
4605
+ _html("</div>");
4606
+ writeScope($scope1_id, {
4607
+ i: s?.org,
4608
+ _: _scope_with_id($scope0_id)
4609
+ });
4610
+ }, "org", $scope0_id, "b", 1, $sg__input_items, $sg__input_skipped__OR__input_items, 0, 1);
4611
+ _if(() => {
4612
+ if (localBusy && localCode) {
4613
+ const $scope4_id = _scope_id();
4614
+ _html(`<div${_attr_class(["_gk", "_gr"])}><span${_attr_class("_E")}></span> Enter code <strong${_attr_class("_gs")}>${_escape(localCode)}${_el_resume($scope4_id, "d")}</strong> at <a${_attr("href", `https://${host}/login/device`)}${_attr_class("_gt")}>${_escape(host)}${_el_resume($scope4_id, "f", _serialize_guard($scope0_reason, 3))}/login/device</a>${_el_resume($scope4_id, "e")}</div>`);
4615
+ _script($scope4_id, "C2");
4616
+ writeScope($scope4_id, {});
4605
4617
  return 0;
4618
+ } else if (localBusy) {
4619
+ const $scope6_id = _scope_id();
4620
+ _html(`<div${_attr_class(["_gk", "_gr"])}><span${_attr_class("_E")}></span>Starting GitHub re-authorization…</div>`);
4621
+ writeScope($scope6_id, {});
4622
+ return 1;
4606
4623
  }
4607
- }, $scope0_id, "b", 1, _serialize_guard($scope0_reason, 4), $sg__input_skipped__OR__input_items_length);
4624
+ }, $scope0_id, "c", 1, 1, 1, 0, 1);
4608
4625
  _if(() => {
4609
- if (skipped.length) {
4610
- const $scope3_id = _scope_id();
4611
- _html(`<ul${_attr_class("_go")}>`);
4612
- _for_of(skipped, (s) => {
4613
- const $scope4_id = _scope_id();
4614
- _html(`<li${_attr_class(["_gp", "_gq"])}><span${_attr_class("_gr")}>${_escape(s.org)}${_el_resume($scope4_id, "c", $sg__input_skipped)}</span><span${_attr_class("_gs")}>skipped</span><button type=button${_attr_class([chipBtn, "_gt"])}${_attr("title", `Ask about ${s.org} again`)}>Undo</button>${_el_resume($scope4_id, "e")}</li>`);
4615
- _script($scope4_id, "C4");
4616
- writeScope($scope4_id, {
4617
- h: s?.org,
4618
- _: _scope_with_id($scope3_id)
4619
- });
4620
- }, "org", $scope3_id, "a", $sg__input_skipped, $sg__input_skipped, $sg__input_skipped, "</ul>", 1);
4621
- writeScope($scope3_id, { _: _scope_with_id($scope0_id) });
4626
+ if (localError) {
4627
+ const $scope5_id = _scope_id();
4628
+ _html(`<p${_attr_class(["_gk", "_gu"])}>${_escape(localError)}${_el_resume($scope5_id, "b")}</p>`);
4629
+ writeScope($scope5_id, {});
4622
4630
  return 0;
4623
4631
  }
4624
- }, $scope0_id, "c", $sg__input_skipped, $sg__input_skipped, $sg__input_skipped__OR__input_items_length, 0, 1);
4625
- _html("</div>");
4632
+ }, $scope0_id, "d", 1, 1, 1, 0, 1);
4633
+ _for_of(skipped, (s) => {
4634
+ const $scope3_id = _scope_id();
4635
+ _html(`<div${_attr_class(["_gk", "_gl"])}><span${_attr_class("_gm")}><span${_attr_class("_gn")}>${_escape(s.org)}${_el_resume($scope3_id, "d", $sg__input_skipped)}</span><span${_attr_class("_go")}>Ignored</span></span><button type=button${_attr_class([btnSm, "_gq"])}${_attr("title", `Ask about ${s.org} again`)}>Undo</button>${_el_resume($scope3_id, "f")}</div>`);
4636
+ _script($scope3_id, "C3");
4637
+ writeScope($scope3_id, {
4638
+ i: s?.org,
4639
+ _: _scope_with_id($scope0_id)
4640
+ });
4641
+ }, "org", $scope0_id, "e", $sg__input_skipped, $sg__input_skipped, $sg__input_skipped__OR__input_items, 0, 1);
4642
+ _html(`</div>${_el_resume($scope0_id, "a", _serialize_guard($scope0_reason, 4))}`);
4626
4643
  writeScope($scope0_id, {
4627
- g: _serialize_if($scope0_reason, 4) && input.items,
4628
- j: input.busy,
4629
- k: input.onAuthorize,
4630
- l: input.onDone,
4631
- n: input.onChange,
4632
- o: _serialize_if($scope0_reason, 1) && skipped,
4633
- q: host,
4634
- r: localBusy,
4635
- t: localCode,
4636
- u: localError,
4637
- v: busy,
4638
- x: authorize,
4639
- a0: $si__input_items_0_host && $host__closures,
4640
- a2: $localCode__closures,
4641
- a4: $busy__closures,
4642
- a3: $localError__closures
4644
+ l: input.busy,
4645
+ m: input.onAuthorize,
4646
+ n: input.onDone,
4647
+ p: input.onChange,
4648
+ r: host,
4649
+ s: localBusy,
4650
+ u: localCode,
4651
+ w: localError,
4652
+ x: busy,
4653
+ z: authorize
4643
4654
  });
4644
4655
  _resume_branch($scope0_id);
4645
4656
  });
@@ -4655,7 +4666,7 @@ var skill_chip_default = _template("B", (input) => {
4655
4666
  const $input_tags__closures = /* @__PURE__ */ new Set();
4656
4667
  const $input_actions__closures = /* @__PURE__ */ new Set();
4657
4668
  const $input_trailing__closures = /* @__PURE__ */ new Set();
4658
- _html(`<li${_attr_class("_cs")}>`);
4669
+ _html(`<li${_attr_class("_ck")}>`);
4659
4670
  _if(() => {
4660
4671
  if (input.busy != null) {
4661
4672
  const $scope1_id = _scope_id();
@@ -4665,20 +4676,20 @@ var skill_chip_default = _template("B", (input) => {
4665
4676
  } else {
4666
4677
  const $scope2_id = _scope_id();
4667
4678
  const popId = _id();
4668
- _html(`<button${_attr_class("_ct")}${_attr("popovertarget", popId)}${_attr("title", `About ${input.name}`)}>${_escape(input.name)}${_el_resume($scope2_id, "b", $sg__input_name)}`);
4679
+ _html(`<button${_attr_class("_cl")}${_attr("popovertarget", popId)}${_attr("title", `About ${input.name}`)}>${_escape(input.name)}${_el_resume($scope2_id, "b", $sg__input_name)}`);
4669
4680
  _if(() => {
4670
4681
  if (input.hint) {
4671
4682
  const $scope3_id = _scope_id();
4672
- _html(`<span${_attr_class("_cv")}>${_escape(input.hint)}${_el_resume($scope3_id, "b", $sg__input_hint)}</span>`);
4683
+ _html(`<span${_attr_class("_cn")}>${_escape(input.hint)}${_el_resume($scope3_id, "b", $sg__input_hint)}</span>`);
4673
4684
  $si__input_busy__OR__input_hint && _subscribe($si__input_hint && $input_hint__closures, writeScope($scope3_id, { _: _scope_with_id($scope2_id) }));
4674
4685
  return 0;
4675
4686
  }
4676
4687
  }, $scope2_id, "c", $sg__input_hint, $sg__input_hint, $sg__input_hint__OR__input_description__OR__input_sourceUrl__OR__input_source__OR__input_noteLocal__OR__input_tags__OR__input_actions__OR__input_trailing, 0, 1);
4677
- _html(`</button>${_el_resume($scope2_id, "a")}<div${_attr("id", popId)} popover=auto${_attr_class(pop)}><span${_attr_class(["_bL", "_w"])}>${_escape(input.name)}${_el_resume($scope2_id, "f", $sg__input_name)}</span>`);
4688
+ _html(`</button>${_el_resume($scope2_id, "a")}<div${_attr("id", popId)} popover=auto${_attr_class(pop)}><span${_attr_class(["_bM", "_w"])}>${_escape(input.name)}${_el_resume($scope2_id, "f", $sg__input_name)}</span>`);
4678
4689
  _if(() => {
4679
4690
  if (input.description) {
4680
4691
  const $scope4_id = _scope_id();
4681
- _html(`<span${_attr_class("_bN")}${_attr("title", input.description)}>${_escape(input.description)}${_el_resume($scope4_id, "b", $sg__input_description)}</span>${_el_resume($scope4_id, "a", $sg__input_description)}`);
4692
+ _html(`<span${_attr_class("_bO")}${_attr("title", input.description)}>${_escape(input.description)}${_el_resume($scope4_id, "b", $sg__input_description)}</span>${_el_resume($scope4_id, "a", $sg__input_description)}`);
4682
4693
  $si__input_busy__OR__input_description && _subscribe($si__input_description && $input_description__closures, writeScope($scope4_id, { _: _scope_with_id($scope2_id) }));
4683
4694
  return 0;
4684
4695
  }
@@ -4686,12 +4697,12 @@ var skill_chip_default = _template("B", (input) => {
4686
4697
  _if(() => {
4687
4698
  if (input.sourceUrl) {
4688
4699
  const $scope5_id = _scope_id();
4689
- _html(`<a${_attr_class(["_bN", "_I"])}${_attr("href", input.sourceUrl)} target=_blank rel=noopener${_attr("title", `Open ${input.source} on GitHub`)}>${_escape(input.source)}${_el_resume($scope5_id, "b", $sg__input_source)}</a>${_el_resume($scope5_id, "a", _serialize_guard($scope0_reason, 6))}`);
4700
+ _html(`<a${_attr_class(["_bO", "_I"])}${_attr("href", input.sourceUrl)} target=_blank rel=noopener${_attr("title", `Open ${input.source} on GitHub`)}>${_escape(input.source)}${_el_resume($scope5_id, "b", $sg__input_source)}</a>${_el_resume($scope5_id, "a", _serialize_guard($scope0_reason, 6))}`);
4690
4701
  $si__input_busy__OR__input_sourceUrl__OR__input_source__OR__input_noteLocal && _subscribe($si__input_source && $input_source__closures, _subscribe($si__input_sourceUrl && $input_sourceUrl__closures, writeScope($scope5_id, { _: _scope_with_id($scope2_id) })));
4691
4702
  return 0;
4692
4703
  } else if (input.source) {
4693
4704
  const $scope6_id = _scope_id();
4694
- _html(`<span${_attr_class("_bN")}>${_escape(input.source)}${_el_resume($scope6_id, "b", $sg__input_source)}</span>`);
4705
+ _html(`<span${_attr_class("_bO")}>${_escape(input.source)}${_el_resume($scope6_id, "b", $sg__input_source)}</span>`);
4695
4706
  $si__input_busy__OR__input_sourceUrl__OR__input_source__OR__input_noteLocal && _subscribe($si__input_source && $input_source__closures, writeScope($scope6_id, {
4696
4707
  _: _scope_with_id($scope2_id),
4697
4708
  Cs: $si__input_source && 1
@@ -4699,7 +4710,7 @@ var skill_chip_default = _template("B", (input) => {
4699
4710
  return 1;
4700
4711
  } else if (input.noteLocal) {
4701
4712
  const $scope10_id = _scope_id();
4702
- _html(`<span${_attr_class(["_bN", "_v"])} title="Not installed from a source, so it cannot be updated">local only</span>`);
4713
+ _html(`<span${_attr_class(["_bO", "_v"])} title="Not installed from a source, so it cannot be updated">local only</span>`);
4703
4714
  _serialize_if($scope0_reason, 9) && writeScope($scope10_id, {});
4704
4715
  return 2;
4705
4716
  }
@@ -4707,7 +4718,7 @@ var skill_chip_default = _template("B", (input) => {
4707
4718
  _if(() => {
4708
4719
  if (input.tags) {
4709
4720
  const $scope7_id = _scope_id();
4710
- _html(`<span${_attr_class("_bM")}>`);
4721
+ _html(`<span${_attr_class("_bN")}>`);
4711
4722
  _dynamic_tag($scope7_id, "b", input.tags, {}, 0, 0, $sg__input_tags);
4712
4723
  _html("</span>");
4713
4724
  $si__input_busy__OR__input_tags && _subscribe($si__input_tags && $input_tags__closures, writeScope($scope7_id, { _: _scope_with_id($scope2_id) }));
@@ -4717,7 +4728,7 @@ var skill_chip_default = _template("B", (input) => {
4717
4728
  _if(() => {
4718
4729
  if (input.actions) {
4719
4730
  const $scope8_id = _scope_id();
4720
- _html(`<div${_attr_class("_cx")}>`);
4731
+ _html(`<div${_attr_class("_cp")}>`);
4721
4732
  _dynamic_tag($scope8_id, "b", input.actions, {}, 0, 0, $sg__input_actions);
4722
4733
  _html("</div>");
4723
4734
  $si__input_busy__OR__input_actions && _subscribe($si__input_actions && $input_actions__closures, writeScope($scope8_id, { _: _scope_with_id($scope2_id) }));
@@ -4760,7 +4771,7 @@ var skill_chip_default = _template("B", (input) => {
4760
4771
  });
4761
4772
  //#endregion
4762
4773
  //#region src/tags/prompt-dialog.css.ts
4763
- var promptDlg = "_gj _el";
4774
+ var promptDlg = "_gv _el";
4764
4775
  //#endregion
4765
4776
  //#region src/tags/dialog-close.marko
4766
4777
  var dialog_close_default = _template("f", (input) => {
@@ -4920,6 +4931,7 @@ var prompt_dialog_default = _template("u", (input) => {
4920
4931
  //#endregion
4921
4932
  //#region src/tags/settings-page.marko
4922
4933
  var api$6;
4934
+ var isTransientApiError$2;
4923
4935
  var watchProgress$2;
4924
4936
  var MISSING_LABEL = {
4925
4937
  "github-auth": "GitHub sign-in",
@@ -5019,11 +5031,14 @@ var settings_page_default = _template("x", (input$2) => {
5019
5031
  if (snap.preferredAgent !== input$2.preferred) input$2.preferredChange?.(snap.preferredAgent);
5020
5032
  } catch {}
5021
5033
  }, "x10", $scope0_id);
5034
+ let retryWhenBack = false;
5022
5035
  const loadSetup = _resume(async (refresh) => {
5023
5036
  try {
5024
5037
  applySetup(await api$6(`/api/setup${refresh ? "?refresh" : ""}`));
5038
+ retryWhenBack = false;
5025
5039
  } catch (err) {
5026
- error = String(err.message || err);
5040
+ if (isTransientApiError$2(err)) retryWhenBack = true;
5041
+ else error = String(err.message || err);
5027
5042
  }
5028
5043
  }, "x11", $scope0_id);
5029
5044
  const loadSelf = _resume(async (refresh) => {
@@ -5406,7 +5421,7 @@ var settings_page_default = _template("x", (input$2) => {
5406
5421
  const githubId = _id();
5407
5422
  const backupId = _id();
5408
5423
  const machineId = _id();
5409
- _html(`<div${_attr_class("_bu")} role=region${_attr("aria-labelledby", titleId)}><div${_attr_class("_bv")}><div${_attr_class(content$2)}>`);
5424
+ _html(`<div${_attr_class("_bv")} role=region${_attr("aria-labelledby", titleId)}><div${_attr_class("_bw")}><div${_attr_class(content$2)}>`);
5410
5425
  _set_serialize_reason({
5411
5426
  0: _serialize_guard($scope0_reason, 4),
5412
5427
  1: $sg__input_backHref__OR__input_onExit,
@@ -5418,7 +5433,7 @@ var settings_page_default = _template("x", (input$2) => {
5418
5433
  if (setup && !setup.ready) $meta = attrTag({ content: _content_resume("x43", () => {
5419
5434
  _scope_reason();
5420
5435
  const $scope5_id = _scope_id();
5421
- _html(`<span${_attr_class("_cR")}>Not ready</span>. Missing <!>${_escape(setup.missing.map((m) => MISSING_LABEL[m] || m).join(", "))}${_el_resume($scope5_id, "b")}.`);
5436
+ _html(`<span${_attr_class("_cS")}>Not ready</span>. Missing <!>${_escape(setup.missing.map((m) => MISSING_LABEL[m] || m).join(", "))}${_el_resume($scope5_id, "b")}.`);
5422
5437
  _subscribe($setup_missing__closures, writeScope($scope5_id, { _: _scope_with_id($scope0_id) }));
5423
5438
  _resume_branch($scope5_id);
5424
5439
  }, $scope0_id) });
@@ -5490,7 +5505,7 @@ var settings_page_default = _template("x", (input$2) => {
5490
5505
  const $scope47_id = _scope_id();
5491
5506
  _html(`<button${_attr_class(["_o", "_p"])}${_attr("title", `Update work to v${self.latest} and restart`)}>Update and restart</button>${_el_resume($scope47_id, "a")}`);
5492
5507
  _script($scope47_id, "x46");
5493
- _subscribe($self_latest__closures, writeScope($scope47_id, { Chc: 1 }));
5508
+ _subscribe($self_latest__closures, writeScope($scope47_id, { Ch8: 1 }));
5494
5509
  return 0;
5495
5510
  }
5496
5511
  }, $scope45_id, "c", 1, 1, 1, 0, 1);
@@ -5499,11 +5514,11 @@ var settings_page_default = _template("x", (input$2) => {
5499
5514
  return 0;
5500
5515
  }
5501
5516
  }, $scope0_id, "f", 1, 1, 1, 0, 1);
5502
- _html(`<section${_attr_class("_bE")}${_attr("aria-labelledby", agentsId)}><div${_attr_class("_bF")}><h2${_attr("id", agentsId)}${_attr_class("_bS")}>Agents</h2><div${_attr_class("_x")}></div><label${_attr_class("_cU")}><span${_attr_class("_V")}>Default</span><span${_attr_class("_m")}>`);
5517
+ _html(`<section${_attr_class("_bF")}${_attr("aria-labelledby", agentsId)}><div${_attr_class("_bG")}><h2${_attr("id", agentsId)}${_attr_class("_bT")}>Agents</h2><div${_attr_class("_x")}></div><label${_attr_class("_cV")}><span${_attr_class("_V")}>Default</span><span${_attr_class("_m")}>`);
5503
5518
  _attr_select_value($scope0_id, "n", input$2.preferred, _resume(function(v) {
5504
5519
  setPreferred(v);
5505
5520
  }, "x2", $scope0_id), () => {
5506
- _html(`<select${_attr_class(["_n", "_cV"])} aria-label="Default agent (starts when a workspace has no session yet)" title="Starts when a workspace has no session yet">`);
5521
+ _html(`<select${_attr_class(["_n", "_cW"])} aria-label="Default agent (starts when a workspace has no session yet)" title="Starts when a workspace has no session yet">`);
5507
5522
  _for_of(input$2.agents.filter((a) => a !== "shell"), (id) => {
5508
5523
  const $scope79_id = _scope_id();
5509
5524
  _html(`<option${_attr_option_value(id)}>${_escape(agentLabel(id))}${_el_resume($scope79_id, "b", $sg__input_agents)}</option>${_el_resume($scope79_id, "a", $sg__input_agents)}`);
@@ -5517,14 +5532,14 @@ var settings_page_default = _template("x", (input$2) => {
5517
5532
  const rows = lone ? [] : a.instances;
5518
5533
  const loneAccounts = lone ? accountsFor(lone.id) : [];
5519
5534
  const extraAccounts = a.installed ? strayAccountsFor(a) : [];
5520
- _html(`<li${_attr_class(["_bJ", "_cT"])}><div${_attr_class(["_cW", { ["_cZ"]: lone && !lone.enabled }])}>`);
5535
+ _html(`<li${_attr_class(["_bK", "_cU"])}><div${_attr_class(["_cX", { ["_c0"]: lone && !lone.enabled }])}>`);
5521
5536
  _set_serialize_reason(12);
5522
5537
  const $childScope3 = _peek_scope_id();
5523
5538
  icon_agent_default({
5524
5539
  agent: a.id,
5525
5540
  size: 18
5526
5541
  });
5527
- _html(`<div${_attr_class("_bK")}><span${_attr_class("_bM")}><span${_attr_class("_bL")}>${_escape(a.label)}${_el_resume($scope1_id, "g")}</span>`);
5542
+ _html(`<div${_attr_class("_bL")}><span${_attr_class("_bN")}><span${_attr_class("_bM")}>${_escape(a.label)}${_el_resume($scope1_id, "g")}</span>`);
5528
5543
  _if(() => {
5529
5544
  if (lone && input$2.preferred === lone.id) {
5530
5545
  const $scope80_id = _scope_id();
@@ -5537,12 +5552,12 @@ var settings_page_default = _template("x", (input$2) => {
5537
5552
  _if(() => {
5538
5553
  if (active.has(a.id)) {
5539
5554
  const $scope13_id = _scope_id();
5540
- _html(`<span${_attr_class("_cQ")}><span${_attr_class("_E")}></span><!>${_escape(active.get(a.id) || "Starting…")}${_el_resume($scope13_id, "c")}</span>`);
5555
+ _html(`<span${_attr_class("_cR")}><span${_attr_class("_E")}></span><!>${_escape(active.get(a.id) || "Starting…")}${_el_resume($scope13_id, "c")}</span>`);
5541
5556
  _subscribe($active__closures, writeScope($scope13_id, {}));
5542
5557
  return 0;
5543
5558
  } else if (!a.installed) {
5544
5559
  const $scope81_id = _scope_id();
5545
- _html(`<span${_attr_class("_bN")}>Not installed</span>`);
5560
+ _html(`<span${_attr_class("_bO")}>Not installed</span>`);
5546
5561
  writeScope($scope81_id, {});
5547
5562
  return 1;
5548
5563
  }
@@ -5570,15 +5585,15 @@ var settings_page_default = _template("x", (input$2) => {
5570
5585
  _if(() => {
5571
5586
  if (rows.length || loneAccounts.length || extraAccounts.length) {
5572
5587
  const $scope2_id = _scope_id();
5573
- _html(`<ul${_attr_class(["_c1", { ["_cZ"]: lone && !lone.enabled }])}>`);
5588
+ _html(`<ul${_attr_class(["_c2", { ["_c0"]: lone && !lone.enabled }])}>`);
5574
5589
  _for_of(rows, (inst) => {
5575
5590
  const $scope3_id = _scope_id();
5576
5591
  const accounts = accountsFor(inst.id);
5577
- _html(`<li${_attr_class(["_cX", { ["_cZ"]: !inst.enabled }])}><div${_attr_class("_cY")}>`);
5592
+ _html(`<li${_attr_class(["_cY", { ["_c0"]: !inst.enabled }])}><div${_attr_class("_cZ")}>`);
5578
5593
  _set_serialize_reason(12);
5579
5594
  const $childScope4 = _peek_scope_id();
5580
5595
  icon_agent_default({ agent: inst.id });
5581
- _html(`<span${_attr_class(["_c0", "_w"])}>${_escape(inst.command)}${_el_resume($scope3_id, "e")}</span>`);
5596
+ _html(`<span${_attr_class(["_c1", "_w"])}>${_escape(inst.command)}${_el_resume($scope3_id, "e")}</span>`);
5582
5597
  _if(() => {
5583
5598
  if (input$2.preferred === inst.id) {
5584
5599
  const $scope82_id = _scope_id();
@@ -5649,7 +5664,7 @@ var settings_page_default = _template("x", (input$2) => {
5649
5664
  }, "id", $scope0_id, "p", 1, 1, 1, 0, 1);
5650
5665
  _for_of(otherUsage, (u) => {
5651
5666
  const $scope86_id = _scope_id();
5652
- _html(`<li${_attr_class(["_bJ", "_cT"])}>`);
5667
+ _html(`<li${_attr_class(["_bK", "_cU"])}>`);
5653
5668
  _set_serialize_reason(6);
5654
5669
  const $childScope8 = _peek_scope_id();
5655
5670
  usage_meters_default({ agent: u });
@@ -5660,58 +5675,71 @@ var settings_page_default = _template("x", (input$2) => {
5660
5675
  _if(() => {
5661
5676
  if (!usage && families.length) {
5662
5677
  const $scope87_id = _scope_id();
5663
- _html(`<p${_attr_class("_bP")}><span${_attr_class("_E")}></span> Loading usage…</p>`);
5678
+ _html(`<p${_attr_class("_bQ")}><span${_attr_class("_E")}></span> Loading usage…</p>`);
5664
5679
  writeScope($scope87_id, {});
5665
5680
  return 0;
5666
5681
  } else if (usage?.error) {
5667
5682
  const $scope9_id = _scope_id();
5668
- _html(`<p${_attr_class("_bP")}>${_escape(usage.error)}${_el_resume($scope9_id, "b")}</p>`);
5683
+ _html(`<p${_attr_class("_bQ")}>${_escape(usage.error)}${_el_resume($scope9_id, "b")}</p>`);
5669
5684
  writeScope($scope9_id, {});
5670
5685
  return 1;
5671
5686
  }
5672
5687
  }, $scope0_id, "r", 1, 1, 1, 0, 1);
5673
- _html(`</section><section${_attr_class("_bE")}${_attr("aria-labelledby", githubId)}><div${_attr_class("_bF")}><h2${_attr("id", githubId)}${_attr_class("_bS")}>GitHub</h2>`);
5688
+ _html(`</section><section${_attr_class("_bF")}${_attr("aria-labelledby", githubId)}><div${_attr_class("_bG")}><h2${_attr("id", githubId)}${_attr_class("_bT")}>GitHub</h2>`);
5674
5689
  _if(() => {
5675
5690
  if (setup && !addingHost) {
5676
5691
  const $scope43_id = _scope_id();
5677
- _html(`<button${_attr_class([btnSm, "_c_"])}>`);
5678
- icon_plus_default({ size: 12 });
5679
- _html(` Enterprise host</button>${_el_resume($scope43_id, "a")}`);
5692
+ _html(`<button${_attr_class([iconBtnRow, "_c_"])} title="Add Enterprise host" aria-label="Add Enterprise host">`);
5693
+ icon_plus_default({ size: 16 });
5694
+ _html(`</button>${_el_resume($scope43_id, "a")}`);
5680
5695
  _script($scope43_id, "x50");
5681
5696
  writeScope($scope43_id, {});
5682
5697
  return 0;
5683
5698
  }
5684
5699
  }, $scope0_id, "v", 1, 1, 1, 0, 1);
5685
- _html("</div>");
5686
5700
  _if(() => {
5687
- if (addingHost) {
5701
+ if (setup) {
5688
5702
  const $scope42_id = _scope_id();
5689
- _html(`<form${_attr_class("_c8")}><label${_attr_class(["_Z", "_c9"])}>`);
5703
+ _html(`<form${_attr_class([
5704
+ "_cq",
5705
+ "_c_",
5706
+ { ["_cr"]: !addingHost }
5707
+ ])}><label${_attr_class(["_Z", "_cs"])}>`);
5690
5708
  icon_github_default({
5691
5709
  size: 14,
5692
5710
  class: "_0"
5693
5711
  });
5694
5712
  _html(`<input${_attr_input_value($scope42_id, "d", hostInput, _resume((_new_hostInput) => {
5695
5713
  hostInput = _new_hostInput;
5696
- }, "x3", $scope42_id))}${_attr_class(["_X", "_1"])} type=text placeholder=github.example.com aria-label="GitHub Enterprise host" autocomplete=off spellcheck=false autofocus>${_el_resume($scope42_id, "d")}</label><button${_attr_class([btnSm, "_p"])} type=submit${_attr("disabled", !hostInput.trim() || hostBusy)}>${hostBusy ? "Adding…" : "Add host"}${_el_resume($scope42_id, "f")}</button>${_el_resume($scope42_id, "e")}<button${_attr_class(btnSm)} type=button${_attr("disabled", hostBusy)}>Cancel</button>${_el_resume($scope42_id, "g")}</form>${_el_resume($scope42_id, "a")}`);
5714
+ }, "x3", $scope42_id))}${_attr_class([
5715
+ "_X",
5716
+ "_1",
5717
+ "_ct"
5718
+ ])} type=text placeholder=github.example.com aria-label="GitHub Enterprise host" autocomplete=off spellcheck=false>${_el_resume($scope42_id, "d")}</label><button${_attr_class([
5719
+ btnSm,
5720
+ "_p",
5721
+ "_c9"
5722
+ ])} type=submit${_attr("hidden", !addingHost)}${_attr("disabled", !hostInput.trim() || hostBusy)}>${hostBusy ? "Adding…" : "Add"}${_el_resume($scope42_id, "f")}</button>${_el_resume($scope42_id, "e")}<button${_attr_class([iconBtnRow, "_cu"])} type=button${_attr("hidden", !addingHost)} title=Cancel aria-label=Cancel${_attr("disabled", hostBusy)}>`);
5723
+ icon_xmark_default({ size: 12 });
5724
+ _html(`</button>${_el_resume($scope42_id, "g")}</form>${_el_resume($scope42_id, "a")}`);
5697
5725
  _script($scope42_id, "x51");
5698
5726
  writeScope($scope42_id, {});
5699
5727
  return 0;
5700
5728
  }
5701
5729
  }, $scope0_id, "w", 1, 1, 1, 0, 1);
5702
- _html(`<div${_attr_class(["_bJ", "_cy"])}>`);
5730
+ _html(`</div><div${_attr_class(["_bK", "_cz"])}>`);
5703
5731
  _for_of(setup?.github || [], (h) => {
5704
5732
  const $scope7_id = _scope_id();
5705
5733
  const $for_content4__h_host__closures = /* @__PURE__ */ new Set();
5706
5734
  const hostSso$1 = (h.sso || []).filter((s) => !ignoredSso.has(s.org));
5707
5735
  const skippedSso = (h.sso || []).filter((s) => ignoredSso.has(s.org));
5708
5736
  const busy = active.has(h.host);
5709
- _html(`<div${_attr_class(["_cz", "_da"])}><div${_attr_class("_db")}>`);
5737
+ _html(`<div${_attr_class(["_cA", "_da"])}><div${_attr_class("_db")}>`);
5710
5738
  icon_github_default({
5711
5739
  size: 18,
5712
5740
  class: "_dc"
5713
5741
  });
5714
- _html(`<div${_attr_class("_bK")}><span${_attr_class("_bM")}><span${_attr_class("_bL")}>${_escape(h.host)}${_el_resume($scope7_id, "g")}</span>`);
5742
+ _html(`<div${_attr_class("_bL")}><span${_attr_class("_bN")}><span${_attr_class("_bM")}>${_escape(h.host)}${_el_resume($scope7_id, "g")}</span>`);
5715
5743
  _if(() => {
5716
5744
  if (h.isEnterprise) {
5717
5745
  const $scope90_id = _scope_id();
@@ -5724,12 +5752,12 @@ var settings_page_default = _template("x", (input$2) => {
5724
5752
  _if(() => {
5725
5753
  if (busy) {
5726
5754
  const $scope14_id = _scope_id();
5727
- _html(`<span${_attr_class(["_bN", "_dd"])}><span${_attr_class("_E")}></span><!>${authCodes.has(h.host) ? "Waiting for the browser…" : _escape(active.get(h.host) || "Starting…")}${_el_resume($scope14_id, "c")}</span>`);
5728
- _subscribe($authCodes__closures, _subscribe($active__closures, writeScope($scope14_id, { Cgy: 1 })));
5755
+ _html(`<span${_attr_class(["_bO", "_dd"])}><span${_attr_class("_E")}></span><!>${authCodes.has(h.host) ? "Waiting for the browser…" : _escape(active.get(h.host) || "Starting…")}${_el_resume($scope14_id, "c")}</span>`);
5756
+ _subscribe($authCodes__closures, _subscribe($active__closures, writeScope($scope14_id, { Cgt: 1 })));
5729
5757
  return 0;
5730
5758
  } else if (h.authed) {
5731
5759
  const $scope88_id = _scope_id();
5732
- _html(`<span${_attr_class(["_bN", "_dd"])}>`);
5760
+ _html(`<span${_attr_class(["_bO", "_dd"])}>`);
5733
5761
  icon_check_default({
5734
5762
  size: 12,
5735
5763
  class: "_de"
@@ -5740,7 +5768,7 @@ var settings_page_default = _template("x", (input$2) => {
5740
5768
  } else if (h.error) {
5741
5769
  const $scope89_id = _scope_id();
5742
5770
  _html(`<span${_attr_class([
5743
- "_bN",
5771
+ "_bO",
5744
5772
  "_dd",
5745
5773
  "_df"
5746
5774
  ])}>`);
@@ -5750,7 +5778,7 @@ var settings_page_default = _template("x", (input$2) => {
5750
5778
  return 2;
5751
5779
  } else {
5752
5780
  const $scope91_id = _scope_id();
5753
- _html(`<span${_attr_class(["_bN", "_dd"])}>Not signed in</span>`);
5781
+ _html(`<span${_attr_class(["_bO", "_dd"])}>Not signed in</span>`);
5754
5782
  writeScope($scope91_id, {});
5755
5783
  return 3;
5756
5784
  }
@@ -5781,7 +5809,7 @@ var settings_page_default = _template("x", (input$2) => {
5781
5809
  if (h.isEnterprise) {
5782
5810
  const $scope34_id = _scope_id();
5783
5811
  _html(`<button${_attr_class([
5784
- "_bO",
5812
+ "_bP",
5785
5813
  "_6",
5786
5814
  "_7",
5787
5815
  { ["_q"]: confirmingRemove === h.host }
@@ -5801,7 +5829,7 @@ var settings_page_default = _template("x", (input$2) => {
5801
5829
  }, $scope34_id, "a", 1, 1, 1, "</button>");
5802
5830
  _script($scope34_id, "x54");
5803
5831
  _subscribe($for_content4__h_host__closures, _subscribe($confirmingRemove__closures, writeScope($scope34_id, {
5804
- Ch1: 1,
5832
+ Cgw: 1,
5805
5833
  Ca4: 1
5806
5834
  })));
5807
5835
  return 0;
@@ -5816,17 +5844,18 @@ var settings_page_default = _template("x", (input$2) => {
5816
5844
  if (busy && authCodes.has(h.host)) {
5817
5845
  const $scope31_id = _scope_id();
5818
5846
  _html(`<div${_attr_class("_dh")}><span${_attr_class("_di")}>Enter this code at <a${_attr("href", `https://${h.host}/login/device`)} target=_blank rel=noopener${_attr_class("_dk")}>${_escape(h.host)}${_el_resume($scope31_id, "d")}/login/device</a>${_el_resume($scope31_id, "c")}</span><code${_attr_class("_dj")}>${_escape(authCodes.get(h.host))}${_el_resume($scope31_id, "f")}</code></div>`);
5819
- _subscribe($authCodes__closures, writeScope($scope31_id, { Ch0: 1 }));
5847
+ _subscribe($authCodes__closures, writeScope($scope31_id, { Cgv: 1 }));
5820
5848
  return 0;
5821
5849
  }
5822
5850
  }, $scope7_id, "k", 1, 1, 1, 0, 1);
5851
+ _html("</div>");
5823
5852
  _if(() => {
5824
5853
  if (hostSso$1.length || skippedSso.length) {
5825
5854
  const $scope8_id = _scope_id();
5826
- _html(`<div${_attr_class("_dl")}>`);
5827
- _set_serialize_reason(1);
5855
+ _set_serialize_reason(30);
5828
5856
  const $childScope9 = _peek_scope_id();
5829
5857
  sso_auth_default({
5858
+ class: ["_cA", "_dl"],
5830
5859
  items: hostSso$1,
5831
5860
  skipped: skippedSso,
5832
5861
  busy,
@@ -5840,12 +5869,10 @@ var settings_page_default = _template("x", (input$2) => {
5840
5869
  refresh();
5841
5870
  }, "x39", $scope8_id)
5842
5871
  });
5843
- _html("</div>");
5844
- _subscribe($run2__closures, _subscribe($si__input_setupChange && $refresh2__closures, writeScope($scope8_id, { b: _existing_scope($childScope9) })));
5872
+ _subscribe($run2__closures, _subscribe($si__input_setupChange && $refresh2__closures, writeScope($scope8_id, { a: _existing_scope($childScope9) })));
5845
5873
  return 0;
5846
5874
  }
5847
5875
  }, $scope7_id, "l", 1, 1, 1, 0, 1);
5848
- _html("</div>");
5849
5876
  writeScope($scope7_id, {
5850
5877
  o: h?.sso,
5851
5878
  q: h?.host,
@@ -5858,47 +5885,47 @@ var settings_page_default = _template("x", (input$2) => {
5858
5885
  a1: busy,
5859
5886
  a4: $for_content4__h_host__closures
5860
5887
  });
5861
- }, "host", $scope0_id, "x", 1, 1, 1, "</div>", 1);
5888
+ }, "host", $scope0_id, "x", 1, 1, 1, "</div>");
5862
5889
  _if(() => {
5863
5890
  if (setup && !setup.github.length) {
5864
5891
  const $scope94_id = _scope_id();
5865
- _html(`<p${_attr_class("_bP")}>Install the GitHub CLI below to sign in.</p>`);
5892
+ _html(`<p${_attr_class("_bQ")}>Install the GitHub CLI below to sign in.</p>`);
5866
5893
  writeScope($scope94_id, {});
5867
5894
  return 0;
5868
5895
  }
5869
5896
  }, $scope0_id, "y", 1, 1, 1, 0, 1);
5870
- _html(`</section><section${_attr_class("_bE")}${_attr("aria-labelledby", machineId)}><div${_attr_class("_bF")}><h2${_attr("id", machineId)}${_attr_class("_bS")}>Machine</h2></div><div${_attr_class(["_bJ", "_cy"])}><div${_attr_class(["_cz", "_cD"])}><div${_attr_class(["_cE", { ["_cF"]: skillsOpen }])}><button${_attr_class("_cG")} aria-expanded=true>`);
5897
+ _html(`</section><section${_attr_class("_bF")}${_attr("aria-labelledby", machineId)}><div${_attr_class("_bG")}><h2${_attr("id", machineId)}${_attr_class("_bT")}>Machine</h2></div><div${_attr_class(["_bK", "_cz"])}><div${_attr_class(["_cA", "_cE"])}><div${_attr_class(["_cF", { ["_cG"]: skillsOpen }])}><button${_attr_class("_cH")} aria-expanded=true>`);
5871
5898
  _set_serialize_reason(1);
5872
5899
  const $childScope10 = _peek_scope_id();
5873
5900
  icon_chevron_right_default({
5874
5901
  size: 12,
5875
- class: ["_cK", { ["_cL"]: skillsOpen }]
5902
+ class: ["_cL", { ["_cM"]: skillsOpen }]
5876
5903
  });
5877
- _html(`<span${_attr_class("_cH")}>Skills</span>`);
5904
+ _html(`<span${_attr_class("_cI")}>Skills</span>`);
5878
5905
  _if(() => {
5879
5906
  if (skills?.global.length) {
5880
5907
  const $scope52_id = _scope_id();
5881
- _html(`<span${_attr_class("_cI")}>${_escape(skills.global.length)}${_el_resume($scope52_id, "b")} installed</span>`);
5908
+ _html(`<span${_attr_class("_cJ")}>${_escape(skills.global.length)}${_el_resume($scope52_id, "b")} installed</span>`);
5882
5909
  writeScope($scope52_id, {});
5883
5910
  return 0;
5884
5911
  }
5885
5912
  }, $scope0_id, "a8", 1, 1, 1, 0, 1);
5886
- _html(`</button>${_el_resume($scope0_id, "a5")}<span${_attr_class("_x")}></span>`);
5913
+ _html(`</button>${_el_resume($scope0_id, "a5")}`);
5887
5914
  _if(() => {
5888
5915
  if (skills?.available && skills.agents.length && true) {
5889
5916
  const $scope56_id = _scope_id();
5890
- _html(`<button${_attr_class(btnSm)}>`);
5891
- icon_plus_default({ size: 12 });
5892
- _html(` Add</button>${_el_resume($scope56_id, "a")}`);
5917
+ _html(`<button${_attr_class(iconBtnRow)} title="Add skill" aria-label="Add skill">`);
5918
+ icon_plus_default({ size: 16 });
5919
+ _html(`</button>${_el_resume($scope56_id, "a")}`);
5893
5920
  _script($scope56_id, "x55");
5894
5921
  writeScope($scope56_id, {});
5895
5922
  return 0;
5896
5923
  }
5897
- }, $scope0_id, "aa", 1, 1, 1, 0, 1);
5924
+ }, $scope0_id, "a9", 1, 1, 1, 0, 1);
5898
5925
  _if(() => {
5899
5926
  if (skills?.available && skills.agents.length) {
5900
5927
  const $scope15_id = _scope_id();
5901
- _html(`<div${_attr_class(["_ci", { ["_cj"]: true }])}><label${_attr_class(["_Z", "_ck"])}>`);
5928
+ _html(`<div${_attr_class(["_cq", { ["_cr"]: true }])}><label${_attr_class(["_Z", "_cs"])}>`);
5902
5929
  _if(() => {
5903
5930
  if (skillSearching) {
5904
5931
  const $scope95_id = _scope_id();
@@ -5918,14 +5945,14 @@ var settings_page_default = _template("x", (input$2) => {
5918
5945
  _html(`<input${_attr_input_value($scope15_id, "d", skillQuery, searchSkills)}${_attr_class([
5919
5946
  "_X",
5920
5947
  "_1",
5921
- "_cl"
5922
- ])} type=text placeholder="Search skills, or paste owner/repo…" aria-label="Search for a skill" autocomplete=off spellcheck=false>${_el_resume($scope15_id, "d")}</label><button${_attr_class([iconBtnRow, "_cm"])} type=button${_attr("hidden", true)} title="Close search" aria-label="Close search">`);
5948
+ "_ct"
5949
+ ])} type=text placeholder="Search skills, or paste owner/repo…" aria-label="Search for a skill" autocomplete=off spellcheck=false>${_el_resume($scope15_id, "d")}</label><button${_attr_class([iconBtnRow, "_cu"])} type=button${_attr("hidden", true)} title="Close search" aria-label="Close search">`);
5923
5950
  icon_xmark_default({ size: 12 });
5924
- _html(`</button>${_el_resume($scope15_id, "e")}<ul${_attr_class([pop$1, "_co"])}${_attr("hidden", true)}>`);
5951
+ _html(`</button>${_el_resume($scope15_id, "e")}<ul${_attr_class([pop$1, "_cw"])}${_attr("hidden", true)}>`);
5925
5952
  _if(() => {
5926
5953
  if (skillSearching && !skillHits?.length && !looksLikeSource(skillQuery)) {
5927
5954
  const $scope97_id = _scope_id();
5928
- _html(`<li${_attr_class("_cp")}>Searching skills.sh…</li>`);
5955
+ _html(`<li${_attr_class("_cx")}>Searching skills.sh…</li>`);
5929
5956
  writeScope($scope97_id, {});
5930
5957
  return 0;
5931
5958
  }
@@ -5933,19 +5960,19 @@ var settings_page_default = _template("x", (input$2) => {
5933
5960
  _if(() => {
5934
5961
  if (looksLikeSource(skillQuery)) {
5935
5962
  const $scope16_id = _scope_id();
5936
- _html(`<li${_attr_class(toolRow)}><div${_attr_class("_bK")}><span${_attr_class(["_c5", "_w"])}>${_escape(skillQuery.trim())}${_el_resume($scope16_id, "d")}</span>`);
5963
+ _html(`<li${_attr_class(toolRow)}><div${_attr_class("_bL")}><span${_attr_class(["_c6", "_w"])}>${_escape(skillQuery.trim())}${_el_resume($scope16_id, "d")}</span>`);
5937
5964
  _if(() => {
5938
5965
  if (active.has(skillQuery.trim())) {
5939
5966
  const $scope17_id = _scope_id();
5940
- _html(`<span${_attr_class("_cQ")}><span${_attr_class("_E")}></span><!>${_escape(active.get(skillQuery.trim()) || "Starting…")}${_el_resume($scope17_id, "c")}</span>`);
5967
+ _html(`<span${_attr_class("_cR")}><span${_attr_class("_E")}></span><!>${_escape(active.get(skillQuery.trim()) || "Starting…")}${_el_resume($scope17_id, "c")}</span>`);
5941
5968
  _subscribe($skillQuery__closures, _subscribe($active__closures, writeScope($scope17_id, {
5942
- Cgy: 3,
5943
- Chl: 1
5969
+ Cgt: 3,
5970
+ Chh: 1
5944
5971
  })));
5945
5972
  return 0;
5946
5973
  } else {
5947
5974
  const $scope98_id = _scope_id();
5948
- _html(`<span${_attr_class("_bN")}>Add straight from this source</span>`);
5975
+ _html(`<span${_attr_class("_bO")}>Add straight from this source</span>`);
5949
5976
  writeScope($scope98_id, {});
5950
5977
  return 1;
5951
5978
  }
@@ -5961,23 +5988,23 @@ var settings_page_default = _template("x", (input$2) => {
5961
5988
  }
5962
5989
  }, $scope16_id, "f", 1, 1, 1, 0, 1);
5963
5990
  _html("</li>");
5964
- _subscribe($skillQuery__closures, _subscribe($active__closures, writeScope($scope16_id, { Cgy: 2 })));
5991
+ _subscribe($skillQuery__closures, _subscribe($active__closures, writeScope($scope16_id, { Cgt: 2 })));
5965
5992
  return 0;
5966
5993
  }
5967
5994
  }, $scope15_id, "i", 1, 1, 1, 0, 1);
5968
5995
  _for_of(skillHits || [], (h) => {
5969
5996
  const $scope18_id = _scope_id();
5970
5997
  const $for_content5__h_installs__closures = /* @__PURE__ */ new Set();
5971
- _html(`<li${_attr_class(toolRow)}><div${_attr_class("_bK")}><span${_attr_class(["_c5", "_w"])}>${_escape(h.name)}${_el_resume($scope18_id, "d")}</span>`);
5998
+ _html(`<li${_attr_class(toolRow)}><div${_attr_class("_bL")}><span${_attr_class(["_c6", "_w"])}>${_escape(h.name)}${_el_resume($scope18_id, "d")}</span>`);
5972
5999
  _if(() => {
5973
6000
  if (active.has(h.skillId)) {
5974
6001
  const $scope19_id = _scope_id();
5975
- _html(`<span${_attr_class("_cQ")}><span${_attr_class("_E")}></span><!>${_escape(active.get(h.skillId) || "Starting…")}${_el_resume($scope19_id, "c")}</span>`);
5976
- _subscribe($active__closures, writeScope($scope19_id, { Cgy: 5 }));
6002
+ _html(`<span${_attr_class("_cR")}><span${_attr_class("_E")}></span><!>${_escape(active.get(h.skillId) || "Starting…")}${_el_resume($scope19_id, "c")}</span>`);
6003
+ _subscribe($active__closures, writeScope($scope19_id, { Cgt: 5 }));
5977
6004
  return 0;
5978
6005
  } else {
5979
6006
  const $scope99_id = _scope_id();
5980
- _html(`<span${_attr_class("_bN")}${_attr("title", h.source)}>${_escape(h.source)}${_el_resume($scope99_id, "b")}</span>${_el_resume($scope99_id, "a")}`);
6007
+ _html(`<span${_attr_class("_bO")}${_attr("title", h.source)}>${_escape(h.source)}${_el_resume($scope99_id, "b")}</span>${_el_resume($scope99_id, "a")}`);
5981
6008
  writeScope($scope99_id, {});
5982
6009
  return 1;
5983
6010
  }
@@ -6019,14 +6046,14 @@ var settings_page_default = _template("x", (input$2) => {
6019
6046
  m: h?.installs,
6020
6047
  n: h?.installed,
6021
6048
  q: $for_content5__h_installs__closures,
6022
- Cgy: 4
6049
+ Cgt: 4
6023
6050
  }));
6024
6051
  }, "skillId", $scope15_id, "j", 1, 1, 1, 0, 1);
6025
6052
  _if(() => {
6026
6053
  if (skillHits && !skillHits.length && !skillSearching && !looksLikeSource(skillQuery)) {
6027
6054
  const $scope54_id = _scope_id();
6028
- _html(`<li${_attr_class("_cp")}>No skills match "<!>${_escape(skillQuery)}${_el_resume($scope54_id, "b")}".</li>`);
6029
- _subscribe($skillQuery__closures, writeScope($scope54_id, { Chl: 2 }));
6055
+ _html(`<li${_attr_class("_cx")}>No skills match "<!>${_escape(skillQuery)}${_el_resume($scope54_id, "b")}".</li>`);
6056
+ _subscribe($skillQuery__closures, writeScope($scope54_id, { Chh: 2 }));
6030
6057
  return 0;
6031
6058
  }
6032
6059
  }, $scope15_id, "k", 1, 1, 1, 0, 1);
@@ -6035,27 +6062,27 @@ var settings_page_default = _template("x", (input$2) => {
6035
6062
  writeScope($scope15_id, {});
6036
6063
  return 0;
6037
6064
  }
6038
- }, $scope0_id, "ab", 1, 1, 1, 0, 1);
6065
+ }, $scope0_id, "aa", 1, 1, 1, 0, 1);
6039
6066
  _html(`</div>${_el_resume($scope0_id, "a4")}`);
6040
6067
  _if(() => {
6041
6068
  {
6042
6069
  const $scope20_id = _scope_id();
6043
- _html(`<div${_attr_class("_cJ")}>`);
6070
+ _html(`<div${_attr_class("_cK")}>`);
6044
6071
  _if(() => {
6045
6072
  if (skills && !skills.agents.length) {
6046
6073
  const $scope102_id = _scope_id();
6047
- _html(`<p${_attr_class("_bP")}>No agent CLIs are installed, so a skill would have nowhere to go. Install one from Agents above.</p>`);
6074
+ _html(`<p${_attr_class("_bQ")}>No agent CLIs are installed, so a skill would have nowhere to go. Install one from Agents above.</p>`);
6048
6075
  writeScope($scope102_id, {});
6049
6076
  return 0;
6050
6077
  } else if (skills && !skills.available) {
6051
6078
  const $scope21_id = _scope_id();
6052
- _html(`<p${_attr_class("_bP")}>The skills CLI is not installed, so skills can be listed but not added or removed. <button${_attr_class(btnSm)}${_attr("disabled", active.has("skills"))}>${active.has("skills") ? "Installing…" : "Install it"}${_el_resume($scope21_id, "c")}</button>${_el_resume($scope21_id, "b")}</p>`);
6079
+ _html(`<p${_attr_class("_bQ")}>The skills CLI is not installed, so skills can be listed but not added or removed. <button${_attr_class(btnSm)}${_attr("disabled", active.has("skills"))}>${active.has("skills") ? "Installing…" : "Install it"}${_el_resume($scope21_id, "c")}</button>${_el_resume($scope21_id, "b")}</p>`);
6053
6080
  _script($scope21_id, "x59");
6054
- _subscribe($active__closures, writeScope($scope21_id, { Cgy: 6 }));
6081
+ _subscribe($active__closures, writeScope($scope21_id, { Cgt: 6 }));
6055
6082
  return 1;
6056
6083
  }
6057
6084
  }, $scope20_id, "b", 1, 1, 1, 0, 1);
6058
- _html(`<ul${_attr_class("_cr")}>`);
6085
+ _html(`<ul${_attr_class("_cj")}>`);
6059
6086
  _for_of(skills?.global || [], (s) => {
6060
6087
  const $scope22_id = _scope_id();
6061
6088
  const $for_content6__s_agents__closures = /* @__PURE__ */ new Set();
@@ -6125,13 +6152,13 @@ var settings_page_default = _template("x", (input$2) => {
6125
6152
  n: $for_content6__s_name__closures,
6126
6153
  o: $for_content6__s_id__closures,
6127
6154
  a: _existing_scope($childScope11),
6128
- Cgy: 7
6155
+ Cgt: 7
6129
6156
  }))));
6130
6157
  }, "id", $scope20_id, "c", 1, 1, 1, "</ul>", 1);
6131
6158
  _if(() => {
6132
6159
  if (skills && !skills.global.length && skills.available && skills.agents.length) {
6133
6160
  const $scope107_id = _scope_id();
6134
- _html(`<p${_attr_class("_bP")}>No skills installed. Search below, or paste an owner/repo.</p>`);
6161
+ _html(`<p${_attr_class("_bQ")}>No skills installed. Search below, or paste an owner/repo.</p>`);
6135
6162
  writeScope($scope107_id, {});
6136
6163
  return 0;
6137
6164
  }
@@ -6140,15 +6167,15 @@ var settings_page_default = _template("x", (input$2) => {
6140
6167
  writeScope($scope20_id, {});
6141
6168
  return 0;
6142
6169
  }
6143
- }, $scope0_id, "ac", 1, 1, 1, 0, 1);
6144
- _html(`</div><div${_attr_class(["_cz", "_cD"])}><div${_attr_class(["_cE", { ["_cF"]: machineOpen }])}><button${_attr_class("_cG")} aria-expanded=${machineOpen ? "true" : "false"}>`);
6170
+ }, $scope0_id, "ab", 1, 1, 1, 0, 1);
6171
+ _html(`</div><div${_attr_class(["_cA", "_cE"])}><div${_attr_class(["_cF", { ["_cG"]: machineOpen }])}><button${_attr_class("_cH")} aria-expanded=${machineOpen ? "true" : "false"}>`);
6145
6172
  _set_serialize_reason(1);
6146
6173
  const $childScope12 = _peek_scope_id();
6147
6174
  icon_chevron_right_default({
6148
6175
  size: 12,
6149
- class: ["_cK", { ["_cL"]: machineOpen }]
6176
+ class: ["_cL", { ["_cM"]: machineOpen }]
6150
6177
  });
6151
- _html(`<span${_attr_class("_cH")}>Tools</span><span${_attr_class("_cI")}>${_escape(tools.filter((t) => t.installed).length)}${_el_resume($scope0_id, "aj")} installed <!>${missingCount ? `${_escape(`${_to_text(" · ")}`)}${_escape(`${_to_text(missingCount)}`)} missing` : ""}${_el_resume($scope0_id, "ak")}<!>${outdatedIds.length ? `${_escape(`${_to_text(" · ")}`)}${_escape(`${_to_text(outdatedIds.length)}`)} outdated` : ""}${_el_resume($scope0_id, "al")}</span></button>${_el_resume($scope0_id, "af")}<div${_attr_class("_x")}></div>`);
6178
+ _html(`<span${_attr_class("_cI")}>Tools</span><span${_attr_class("_cJ")}>${_escape(tools.filter((t) => t.installed).length)}${_el_resume($scope0_id, "ai")} installed <!>${missingCount ? `${_escape(`${_to_text(" · ")}`)}${_escape(`${_to_text(missingCount)}`)} missing` : ""}${_el_resume($scope0_id, "aj")}<!>${outdatedIds.length ? `${_escape(`${_to_text(" · ")}`)}${_escape(`${_to_text(outdatedIds.length)}`)} outdated` : ""}${_el_resume($scope0_id, "ak")}</span></button>${_el_resume($scope0_id, "ae")}`);
6152
6179
  _if(() => {
6153
6180
  if (outdatedIds.length > 1) {
6154
6181
  const $scope23_id = _scope_id();
@@ -6157,7 +6184,7 @@ var settings_page_default = _template("x", (input$2) => {
6157
6184
  writeScope($scope23_id, {});
6158
6185
  return 0;
6159
6186
  }
6160
- }, $scope0_id, "an", 1, 1, 1, 0, 1);
6187
+ }, $scope0_id, "al", 1, 1, 1, 0, 1);
6161
6188
  _if(() => {
6162
6189
  if (missingInstallable.length > 1) {
6163
6190
  const $scope24_id = _scope_id();
@@ -6166,22 +6193,22 @@ var settings_page_default = _template("x", (input$2) => {
6166
6193
  writeScope($scope24_id, {});
6167
6194
  return 0;
6168
6195
  }
6169
- }, $scope0_id, "ao", 1, 1, 1, 0, 1);
6196
+ }, $scope0_id, "am", 1, 1, 1, 0, 1);
6170
6197
  _if(() => {
6171
6198
  if (setup && setup.mise.installed && true) {
6172
6199
  const $scope57_id = _scope_id();
6173
- _html(`<button${_attr_class(btnSm)}>`);
6174
- icon_plus_default({ size: 12 });
6175
- _html(` Add</button>${_el_resume($scope57_id, "a")}`);
6200
+ _html(`<button${_attr_class(iconBtnRow)} title="Add tool" aria-label="Add tool">`);
6201
+ icon_plus_default({ size: 16 });
6202
+ _html(`</button>${_el_resume($scope57_id, "a")}`);
6176
6203
  _script($scope57_id, "x67");
6177
6204
  writeScope($scope57_id, {});
6178
6205
  return 0;
6179
6206
  }
6180
- }, $scope0_id, "ap", 1, 1, 1, 0, 1);
6207
+ }, $scope0_id, "an", 1, 1, 1, 0, 1);
6181
6208
  _if(() => {
6182
6209
  if (setup && setup.mise.installed) {
6183
6210
  const $scope25_id = _scope_id();
6184
- _html(`<div${_attr_class(["_ci", { ["_cj"]: true }])}><label${_attr_class(["_Z", "_ck"])}>`);
6211
+ _html(`<div${_attr_class(["_cq", { ["_cr"]: true }])}><label${_attr_class(["_Z", "_cs"])}>`);
6185
6212
  _if(() => {
6186
6213
  if (searching) {
6187
6214
  const $scope108_id = _scope_id();
@@ -6201,14 +6228,14 @@ var settings_page_default = _template("x", (input$2) => {
6201
6228
  _html(`<input${_attr_input_value($scope25_id, "d", query, search)}${_attr_class([
6202
6229
  "_X",
6203
6230
  "_1",
6204
- "_cl"
6205
- ])} type=text placeholder="Search the mise registry…" aria-label="Search the mise registry" autocomplete=off>${_el_resume($scope25_id, "d")}</label><button${_attr_class([iconBtnRow, "_cm"])} type=button${_attr("hidden", true)} title="Close search" aria-label="Close search">`);
6231
+ "_ct"
6232
+ ])} type=text placeholder="Search the mise registry…" aria-label="Search the mise registry" autocomplete=off>${_el_resume($scope25_id, "d")}</label><button${_attr_class([iconBtnRow, "_cu"])} type=button${_attr("hidden", true)} title="Close search" aria-label="Close search">`);
6206
6233
  icon_xmark_default({ size: 12 });
6207
- _html(`</button>${_el_resume($scope25_id, "e")}<ul${_attr_class([pop$1, "_co"])}${_attr("hidden", true)}>`);
6234
+ _html(`</button>${_el_resume($scope25_id, "e")}<ul${_attr_class([pop$1, "_cw"])}${_attr("hidden", true)}>`);
6208
6235
  _if(() => {
6209
6236
  if (searching && !hits?.length) {
6210
6237
  const $scope110_id = _scope_id();
6211
- _html(`<li${_attr_class("_cp")}>Searching the mise registry…</li>`);
6238
+ _html(`<li${_attr_class("_cx")}>Searching the mise registry…</li>`);
6212
6239
  writeScope($scope110_id, {});
6213
6240
  return 0;
6214
6241
  }
@@ -6216,23 +6243,23 @@ var settings_page_default = _template("x", (input$2) => {
6216
6243
  _if(() => {
6217
6244
  if (hits && !hits.length && !searching) {
6218
6245
  const $scope44_id = _scope_id();
6219
- _html(`<li${_attr_class("_cp")}>No tools match "<!>${_escape(query)}${_el_resume($scope44_id, "b")}".</li>`);
6246
+ _html(`<li${_attr_class("_cx")}>No tools match "<!>${_escape(query)}${_el_resume($scope44_id, "b")}".</li>`);
6220
6247
  _subscribe($query__closures, writeScope($scope44_id, {}));
6221
6248
  return 0;
6222
6249
  }
6223
6250
  }, $scope25_id, "i", 1, 1, 1, 0, 1);
6224
6251
  _for_of(hits || [], (h) => {
6225
6252
  const $scope26_id = _scope_id();
6226
- _html(`<li${_attr_class(toolRow)}><div${_attr_class("_bK")}><span${_attr_class(["_c5", "_w"])}>${_escape(h.name)}${_el_resume($scope26_id, "d")}</span>`);
6253
+ _html(`<li${_attr_class(toolRow)}><div${_attr_class("_bL")}><span${_attr_class(["_c6", "_w"])}>${_escape(h.name)}${_el_resume($scope26_id, "d")}</span>`);
6227
6254
  _if(() => {
6228
6255
  if (active.has(h.name)) {
6229
6256
  const $scope27_id = _scope_id();
6230
- _html(`<span${_attr_class("_cQ")}><span${_attr_class("_E")}></span><!>${_escape(active.get(h.name) || "Starting…")}${_el_resume($scope27_id, "c")}</span>`);
6231
- _subscribe($active__closures, writeScope($scope27_id, { Cgy: 9 }));
6257
+ _html(`<span${_attr_class("_cR")}><span${_attr_class("_E")}></span><!>${_escape(active.get(h.name) || "Starting…")}${_el_resume($scope27_id, "c")}</span>`);
6258
+ _subscribe($active__closures, writeScope($scope27_id, { Cgt: 9 }));
6232
6259
  return 0;
6233
6260
  } else if (h.description) {
6234
6261
  const $scope111_id = _scope_id();
6235
- _html(`<span${_attr_class("_bN")}${_attr("title", h.description)}>${_escape(h.description)}${_el_resume($scope111_id, "b")}</span>${_el_resume($scope111_id, "a")}`);
6262
+ _html(`<span${_attr_class("_bO")}${_attr("title", h.description)}>${_escape(h.description)}${_el_resume($scope111_id, "b")}</span>${_el_resume($scope111_id, "a")}`);
6236
6263
  writeScope($scope111_id, {});
6237
6264
  return 1;
6238
6265
  }
@@ -6264,7 +6291,7 @@ var settings_page_default = _template("x", (input$2) => {
6264
6291
  i: h?.name,
6265
6292
  k: h?.description,
6266
6293
  m: h?.installed,
6267
- Cgy: 8
6294
+ Cgt: 8
6268
6295
  }));
6269
6296
  }, "name", $scope25_id, "j", 1, 1, 1, 0, 1);
6270
6297
  _html(`</ul>${_el_resume($scope25_id, "g")}</div>${_el_resume($scope25_id, "a")}`);
@@ -6272,18 +6299,18 @@ var settings_page_default = _template("x", (input$2) => {
6272
6299
  writeScope($scope25_id, {});
6273
6300
  return 0;
6274
6301
  }
6275
- }, $scope0_id, "aq", 1, 1, 1, 0, 1);
6276
- _html(`</div>${_el_resume($scope0_id, "ae")}`);
6302
+ }, $scope0_id, "ao", 1, 1, 1, 0, 1);
6303
+ _html(`</div>${_el_resume($scope0_id, "ad")}`);
6277
6304
  _if(() => {
6278
6305
  if (machineOpen) {
6279
6306
  const $scope6_id = _scope_id();
6280
- _html(`<div${_attr_class("_cJ")}>`);
6307
+ _html(`<div${_attr_class("_cK")}>`);
6281
6308
  _if(() => {
6282
6309
  if (setup && !setup.mise.installed) {
6283
6310
  const $scope28_id = _scope_id();
6284
- _html(`<p${_attr_class("_bP")}>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($scope28_id, "c")}</button>${_el_resume($scope28_id, "b")}</p>`);
6311
+ _html(`<p${_attr_class("_bQ")}>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($scope28_id, "c")}</button>${_el_resume($scope28_id, "b")}</p>`);
6285
6312
  _script($scope28_id, "x70");
6286
- _subscribe($active__closures, writeScope($scope28_id, { Cgy: 10 }));
6313
+ _subscribe($active__closures, writeScope($scope28_id, { Cgt: 10 }));
6287
6314
  return 0;
6288
6315
  }
6289
6316
  }, $scope6_id, "b", 1, 1, 1, 0, 1);
@@ -6291,11 +6318,11 @@ var settings_page_default = _template("x", (input$2) => {
6291
6318
  _if(() => {
6292
6319
  if (self) {
6293
6320
  const $scope48_id = _scope_id();
6294
- _html(`<li${_attr_class(toolRow)}><span${_attr_class(["_c5", "_w"])}>work</span>`);
6321
+ _html(`<li${_attr_class(toolRow)}><span${_attr_class(["_c6", "_w"])}>work</span>`);
6295
6322
  _if(() => {
6296
6323
  if (selfUpdating) {
6297
6324
  const $scope113_id = _scope_id();
6298
- _html(`<span${_attr_class("_cQ")}><span${_attr_class("_E")}></span>Updating — the app restarts and reloads when it is done…</span>`);
6325
+ _html(`<span${_attr_class("_cR")}><span${_attr_class("_E")}></span>Updating — the app restarts and reloads when it is done…</span>`);
6299
6326
  writeScope($scope113_id, {});
6300
6327
  return 0;
6301
6328
  } else {
@@ -6309,11 +6336,11 @@ var settings_page_default = _template("x", (input$2) => {
6309
6336
  return 0;
6310
6337
  } else if (self.latest && self.latest !== self.version) {
6311
6338
  const $scope50_id = _scope_id();
6312
- _html(`<button${_attr_class([btnSm, "_c7"])}${_attr("title", `Update work to v${self.latest} and restart`)}>`);
6339
+ _html(`<button${_attr_class([btnSm, "_c8"])}${_attr("title", `Update work to v${self.latest} and restart`)}>`);
6313
6340
  icon_arrow_up_default({ size: 12 });
6314
6341
  _html(` <!>${_escape(self.latest)}${_el_resume($scope50_id, "c")}</button>${_el_resume($scope50_id, "a")}`);
6315
6342
  _script($scope50_id, "x71");
6316
- _subscribe($self_latest__closures, writeScope($scope50_id, { Chc: 3 }));
6343
+ _subscribe($self_latest__closures, writeScope($scope50_id, { Ch8: 3 }));
6317
6344
  return 1;
6318
6345
  } else if (self.latest) {
6319
6346
  const $scope115_id = _scope_id();
@@ -6323,8 +6350,8 @@ var settings_page_default = _template("x", (input$2) => {
6323
6350
  }
6324
6351
  }, $scope49_id, "c", 1, 1, 1, 0, 1);
6325
6352
  _subscribe($self_version__closures, _subscribe($self_latest__closures, _subscribe($self_install__closures, writeScope($scope49_id, {
6326
- Chc: 2,
6327
- Chd: 1
6353
+ Ch8: 2,
6354
+ Ch9: 1
6328
6355
  }))));
6329
6356
  return 1;
6330
6357
  }
@@ -6350,19 +6377,19 @@ var settings_page_default = _template("x", (input$2) => {
6350
6377
  const $for_content8__t_path__closures = /* @__PURE__ */ new Set();
6351
6378
  const $for_content8__t_latest__closures = /* @__PURE__ */ new Set();
6352
6379
  const $for_content8__t_id__closures = /* @__PURE__ */ new Set();
6353
- _html(`<li${_attr_class([toolRow, { ["_c4"]: !t.installed }])}><span${_attr_class(["_c5", "_w"])}>${_escape(t.label)}${_el_resume($scope29_id, "c")}</span>`);
6380
+ _html(`<li${_attr_class([toolRow, { ["_c5"]: !t.installed }])}><span${_attr_class(["_c6", "_w"])}>${_escape(t.label)}${_el_resume($scope29_id, "c")}</span>`);
6354
6381
  _if(() => {
6355
6382
  if (active.has(t.id)) {
6356
6383
  const $scope30_id = _scope_id();
6357
- _html(`<span${_attr_class("_cQ")}><span${_attr_class("_E")}></span><!>${_escape(active.get(t.id) || "Starting…")}${_el_resume($scope30_id, "c")}</span>`);
6358
- _subscribe($active__closures, writeScope($scope30_id, { Cgy: 12 }));
6384
+ _html(`<span${_attr_class("_cR")}><span${_attr_class("_E")}></span><!>${_escape(active.get(t.id) || "Starting…")}${_el_resume($scope30_id, "c")}</span>`);
6385
+ _subscribe($active__closures, writeScope($scope30_id, { Cgt: 12 }));
6359
6386
  return 0;
6360
6387
  } else if (t.installed) {
6361
6388
  const $scope40_id = _scope_id();
6362
6389
  _if(() => {
6363
6390
  if (t.version) {
6364
6391
  const $scope41_id = _scope_id();
6365
- _html(`<button${_attr_class(["_c6", "_w"])}${_attr("title", `${t.path || t.label}. Pin a version`)}>v<!>${_escape(t.version)}${_el_resume($scope41_id, "b")}</button>${_el_resume($scope41_id, "a")}`);
6392
+ _html(`<button${_attr_class(["_c7", "_w"])}${_attr("title", `${t.path || t.label}. Pin a version`)}>v<!>${_escape(t.version)}${_el_resume($scope41_id, "b")}</button>${_el_resume($scope41_id, "a")}`);
6366
6393
  _script($scope41_id, "x72");
6367
6394
  _subscribe($for_content8__t_path__closures, _subscribe($for_content8__t_version__closures, _subscribe($for_content8__t_label__closures, writeScope($scope41_id, { Cu: 1 }))));
6368
6395
  return 0;
@@ -6376,7 +6403,7 @@ var settings_page_default = _template("x", (input$2) => {
6376
6403
  _if(() => {
6377
6404
  if (outdated(t)) {
6378
6405
  const $scope60_id = _scope_id();
6379
- _html(`<button${_attr_class([btnSm, "_c7"])}${_attr("title", `Update to v${t.latest}`)}>`);
6406
+ _html(`<button${_attr_class([btnSm, "_c8"])}${_attr("title", `Update to v${t.latest}`)}>`);
6380
6407
  icon_arrow_up_default({ size: 12 });
6381
6408
  _html(` <!>${_escape(t.latest)}${_el_resume($scope60_id, "c")}</button>${_el_resume($scope60_id, "a")}`);
6382
6409
  _script($scope60_id, "x73");
@@ -6439,7 +6466,7 @@ var settings_page_default = _template("x", (input$2) => {
6439
6466
  }
6440
6467
  }, $scope36_id, "a", 1, 1, 1, "</button>");
6441
6468
  _script($scope36_id, "x75");
6442
- _subscribe($for_content8__t_id__closures, _subscribe($for_content8__t_label__closures, _subscribe($confirmingRemove__closures, writeScope($scope36_id, { Ch1: 2 }))));
6469
+ _subscribe($for_content8__t_id__closures, _subscribe($for_content8__t_label__closures, _subscribe($confirmingRemove__closures, writeScope($scope36_id, { Cgw: 2 }))));
6443
6470
  return 1;
6444
6471
  }
6445
6472
  }, $scope35_id, "b", 1, 1, 1, 0, 1);
@@ -6463,14 +6490,14 @@ var settings_page_default = _template("x", (input$2) => {
6463
6490
  x: $for_content8__t_path__closures,
6464
6491
  y: $for_content8__t_latest__closures,
6465
6492
  v: $for_content8__t_id__closures,
6466
- Cgy: 11
6493
+ Cgt: 11
6467
6494
  }));
6468
6495
  }, "id", $scope6_id, "e", 1, 1, 1, 0, 1);
6469
6496
  _html("</ul></div>");
6470
6497
  writeScope($scope6_id, {});
6471
6498
  return 0;
6472
6499
  }
6473
- }, $scope0_id, "ar", 1, 1, 1, 0, 1);
6500
+ }, $scope0_id, "ap", 1, 1, 1, 0, 1);
6474
6501
  const themeOpts = [
6475
6502
  {
6476
6503
  id: "system",
@@ -6485,9 +6512,9 @@ var settings_page_default = _template("x", (input$2) => {
6485
6512
  label: "Dark"
6486
6513
  }
6487
6514
  ];
6488
- _html(`</div></div></section><section${_attr_class("_bE")}${_attr("aria-labelledby", appearanceId)}><div${_attr_class("_bF")}><h2${_attr("id", appearanceId)}${_attr_class("_bS")}>Appearance</h2></div><div${_attr_class(["_bJ", "_dm"])}><label${_attr_class("_dn")}><span${_attr_class("_do")}>Name</span><input${_attr_input_value($scope0_id, "ay", input$2.instance.name, _resume(function(v) {
6515
+ _html(`</div></div></section><section${_attr_class("_bF")}${_attr("aria-labelledby", appearanceId)}><div${_attr_class("_bG")}><h2${_attr("id", appearanceId)}${_attr_class("_bT")}>Appearance</h2></div><div${_attr_class(["_bK", "_dm"])}><label${_attr_class("_dn")}><span${_attr_class("_do")}>Name</span><input${_attr_input_value($scope0_id, "aw", input$2.instance.name, _resume(function(v) {
6489
6516
  setInstance({ name: v });
6490
- }, "x4", $scope0_id))}${_attr_class(["_X", "_dp"])} type=text placeholder="Tab title" maxlength=32 autocomplete=off spellcheck=false>${_el_resume($scope0_id, "ay")}</label><div${_attr_class("_dn")}><span${_attr_class("_do")}>Theme</span><span${_attr_class("_dr")}><span${_attr_class(themeSeg)} role=radiogroup aria-label="Color theme">`);
6517
+ }, "x4", $scope0_id))}${_attr_class(["_X", "_dp"])} type=text placeholder="Tab title" maxlength=32 autocomplete=off spellcheck=false>${_el_resume($scope0_id, "aw")}</label><div${_attr_class("_dn")}><span${_attr_class("_do")}>Theme</span><span${_attr_class("_dr")}><span${_attr_class(themeSeg)} role=radiogroup aria-label="Color theme">`);
6491
6518
  _for_of(themeOpts, (opt) => {
6492
6519
  const $scope51_id = _scope_id();
6493
6520
  _html(`<button type=button${_attr_class(["_be", { ["_bd"]: themeMode === opt.id }])} role=radio aria-checked=${themeMode === opt.id ? "true" : "false"}>${_escape(opt.label)}</button>${_el_resume($scope51_id, "a")}`);
@@ -6496,9 +6523,9 @@ var settings_page_default = _template("x", (input$2) => {
6496
6523
  e: opt?.id,
6497
6524
  _: _scope_with_id($scope0_id)
6498
6525
  });
6499
- }, "id", $scope0_id, "b2", 1, 0, 1, 0, 1);
6526
+ }, "id", $scope0_id, "b0", 1, 0, 1, 0, 1);
6500
6527
  _html(`</span><span${_attr_class(["_m", "_ds"])}>`);
6501
- _attr_select_value($scope0_id, "b4", themeMode, _resume(function(v) {
6528
+ _attr_select_value($scope0_id, "b2", themeMode, _resume(function(v) {
6502
6529
  setThemeMode(v);
6503
6530
  }, "x5", $scope0_id), () => {
6504
6531
  _html(`<select${_attr_class(["_n", "_dt"])} aria-label="Color theme">`);
@@ -6508,11 +6535,11 @@ var settings_page_default = _template("x", (input$2) => {
6508
6535
  });
6509
6536
  _html("</select>");
6510
6537
  });
6511
- _html(`${_el_resume($scope0_id, "b4")}</span></span></div><div${_attr_class("_dn")}><span${_attr_class("_do")}>Accent</span><span${_attr_class(swatches)} role=radiogroup aria-label="Accent colour"><button type=button${_attr_class([
6538
+ _html(`${_el_resume($scope0_id, "b2")}</span></span></div><div${_attr_class("_dn")}><span${_attr_class("_do")}>Accent</span><span${_attr_class(swatches)} role=radiogroup aria-label="Accent colour"><button type=button${_attr_class([
6512
6539
  "_dz",
6513
6540
  "_dB",
6514
6541
  { ["_dA"]: !input$2.instance.accent }
6515
- ])} role=radio aria-checked=${!input$2.instance.accent ? "true" : "false"} title="Default (blue)" aria-label="Default (blue)"></button>${_el_resume($scope0_id, "b8")}`);
6542
+ ])} role=radio aria-checked=${!input$2.instance.accent ? "true" : "false"} title="Default (blue)" aria-label="Default (blue)"></button>${_el_resume($scope0_id, "b6")}`);
6516
6543
  _for_of(ACCENT_PRESETS, (p) => {
6517
6544
  const $scope4_id = _scope_id();
6518
6545
  _html(`<button type=button${_attr_class(["_dz", { ["_dA"]: input$2.instance.accent === p.value }])}${_attr_style(`--swatch:${p.value}`)} role=radio aria-checked=${input$2.instance.accent === p.value ? "true" : "false"}${_attr("title", p.name)}${_attr("aria-label", p.name)}></button>${_el_resume($scope4_id, "a")}`);
@@ -6521,29 +6548,28 @@ var settings_page_default = _template("x", (input$2) => {
6521
6548
  d: p?.value,
6522
6549
  _: _scope_with_id($scope0_id)
6523
6550
  });
6524
- }, "value", $scope0_id, "b9", $sg__input_instance_accent, 0, 1, 0, 1);
6551
+ }, "value", $scope0_id, "b7", $sg__input_instance_accent, 0, 1, 0, 1);
6525
6552
  const customOn = !!input$2.instance.accent && !ACCENT_PRESETS.some((p) => p.value === input$2.instance.accent);
6526
6553
  _html(`<label${_attr_class([
6527
6554
  "_dz",
6528
6555
  "_dC",
6529
6556
  { ["_dA"]: customOn }
6530
- ])}${customOn ? _attr_style(`--swatch:${input$2.instance.accent}`) : ""} title="Custom colour"><input${_attr_input_value($scope0_id, "bb", input$2.instance.accent || "#3556d8", _resume(function(v) {
6557
+ ])}${customOn ? _attr_style(`--swatch:${input$2.instance.accent}`) : ""} title="Custom colour"><input${_attr_input_value($scope0_id, "b9", input$2.instance.accent || "#3556d8", _resume(function(v) {
6531
6558
  setInstance({ accent: v });
6532
- }, "x6", $scope0_id))}${_attr_class("_dD")} type=color aria-label="Custom accent colour">${_el_resume($scope0_id, "bb")}<span aria-hidden=true>+</span></label>${_el_resume($scope0_id, "ba", $sg__input_instance_accent)}</span></div></div></section><section${_attr_class("_bE")}${_attr("aria-labelledby", backupId)}><div${_attr_class("_bF")}><h2${_attr("id", backupId)}${_attr_class("_bS")}>Backup</h2></div><div${_attr_class(["_bJ", "_cy"])}><div${_attr_class("_cz")}><div${_attr_class("_dE")}><div${_attr_class("_bK")}><span${_attr_class("_bL")}>Export</span>`);
6559
+ }, "x6", $scope0_id))}${_attr_class("_dD")} type=color aria-label="Custom accent colour">${_el_resume($scope0_id, "b9")}<span aria-hidden=true>+</span></label>${_el_resume($scope0_id, "b8", $sg__input_instance_accent)}</span></div></div></section><section${_attr_class("_bF")}${_attr("aria-labelledby", backupId)}><div${_attr_class("_bG")}><h2${_attr("id", backupId)}${_attr_class("_bT")}>Backup</h2></div><div${_attr_class(["_bK", "_cz"])}><div${_attr_class("_cA")}><div${_attr_class("_dE")}><div${_attr_class("_bL")}>`);
6533
6560
  _if(() => {
6534
6561
  if (backupBusy === "preflight") {
6535
6562
  const $scope65_id = _scope_id();
6536
- _html(`<span${_attr_class("_cQ")}><span${_attr_class("_E")}></span><!>${_escape(backupLine || "Checking workspaces…")}${_el_resume($scope65_id, "c")}</span>`);
6563
+ _html(`<span${_attr_class("_cR")}><span${_attr_class("_E")}></span><!>${_escape(backupLine || "Checking workspaces…")}${_el_resume($scope65_id, "c")}</span>`);
6537
6564
  writeScope($scope65_id, {});
6538
6565
  return 0;
6539
6566
  } else {
6540
6567
  const $scope124_id = _scope_id();
6541
- _html(`<span${_attr_class("_bN")}>Workspaces and their branches, settings, skills and tool pins in one file. Code stays on GitHub.</span>`);
6568
+ _html(`<span${_attr_class("_bO")}>Save workspaces, settings, skills and tool pins to a file. Code stays on GitHub.</span>`);
6542
6569
  writeScope($scope124_id, {});
6543
6570
  return 1;
6544
6571
  }
6545
- }, $scope0_id, "bk", 1, 1, 1, 0, 1);
6546
- _html("</div>");
6572
+ }, $scope0_id, "bg", 1, 1, 1, "</div>", 1);
6547
6573
  _if(() => {
6548
6574
  if (!backupBusy && !preflight) {
6549
6575
  const $scope75_id = _scope_id();
@@ -6552,7 +6578,7 @@ var settings_page_default = _template("x", (input$2) => {
6552
6578
  writeScope($scope75_id, {});
6553
6579
  return 0;
6554
6580
  }
6555
- }, $scope0_id, "bl", 1, 1, 1, 0, 1);
6581
+ }, $scope0_id, "bh", 1, 1, 1, 0, 1);
6556
6582
  _html("</div>");
6557
6583
  _if(() => {
6558
6584
  if (preflight && !backupBusy) {
@@ -6578,7 +6604,7 @@ var settings_page_default = _template("x", (input$2) => {
6578
6604
  _for_of(preflight.workspaces, (w) => {
6579
6605
  const $scope126_id = _scope_id();
6580
6606
  const $for_content18__w_name__closures = /* @__PURE__ */ new Set();
6581
- _html(`<li${_attr_class("_dJ")}><span${_attr_class("_bL")}>${_escape(w.name)}${_el_resume($scope126_id, "c")}</span><ul${_attr_class("_dI")}>`);
6607
+ _html(`<li${_attr_class("_dJ")}><span${_attr_class("_bM")}>${_escape(w.name)}${_el_resume($scope126_id, "c")}</span><ul${_attr_class("_dI")}>`);
6582
6608
  _for_of(w.repos, (r) => {
6583
6609
  const $scope127_id = _scope_id();
6584
6610
  const $for_content19__r_more__closures = /* @__PURE__ */ new Set();
@@ -6654,27 +6680,26 @@ var settings_page_default = _template("x", (input$2) => {
6654
6680
  writeScope($scope67_id, {});
6655
6681
  return 0;
6656
6682
  }
6657
- }, $scope0_id, "bm", 1, 1, 1, 0, 1);
6658
- _html(`</div><div${_attr_class("_cz")}><div${_attr_class("_dE")}><div${_attr_class("_bK")}><span${_attr_class("_bL")}>Restore</span>`);
6683
+ }, $scope0_id, "bi", 1, 1, 1, 0, 1);
6684
+ _html(`</div><div${_attr_class("_cA")}><div${_attr_class("_dE")}><div${_attr_class("_bL")}>`);
6659
6685
  _if(() => {
6660
6686
  if (backupBusy === "restore") {
6661
6687
  const $scope66_id = _scope_id();
6662
- _html(`<span${_attr_class("_cQ")}><span${_attr_class("_E")}></span><!>${_escape(backupLine || "Restoring…")}${_el_resume($scope66_id, "c")}</span>`);
6688
+ _html(`<span${_attr_class("_cR")}><span${_attr_class("_E")}></span><!>${_escape(backupLine || "Restoring…")}${_el_resume($scope66_id, "c")}</span>`);
6663
6689
  writeScope($scope66_id, {});
6664
6690
  return 0;
6665
6691
  } else if (restoreDone) {
6666
6692
  const $scope74_id = _scope_id();
6667
- _html(`<span${_attr_class("_bN")}>${_escape(restoreDone)}${_el_resume($scope74_id, "b")}</span>`);
6693
+ _html(`<span${_attr_class("_bO")}>${_escape(restoreDone)}${_el_resume($scope74_id, "b")}</span>`);
6668
6694
  writeScope($scope74_id, {});
6669
6695
  return 1;
6670
6696
  } else {
6671
6697
  const $scope135_id = _scope_id();
6672
- _html(`<span${_attr_class("_bN")}>From a file exported here or on another machine. Workspaces come back as they were; their repos clone in the background.</span>`);
6698
+ _html(`<span${_attr_class("_bO")}>Load a backup file. Repos clone in the background.</span>`);
6673
6699
  writeScope($scope135_id, {});
6674
6700
  return 2;
6675
6701
  }
6676
- }, $scope0_id, "br", 1, 1, 1, 0, 1);
6677
- _html("</div>");
6702
+ }, $scope0_id, "bl", 1, 1, 1, "</div>", 1);
6678
6703
  _if(() => {
6679
6704
  if (!restorePreview && backupBusy !== "restore") {
6680
6705
  const $scope76_id = _scope_id();
@@ -6683,7 +6708,7 @@ var settings_page_default = _template("x", (input$2) => {
6683
6708
  writeScope($scope76_id, {});
6684
6709
  return 0;
6685
6710
  }
6686
- }, $scope0_id, "bs", 1, 1, 1, 0, 1);
6711
+ }, $scope0_id, "bm", 1, 1, 1, 0, 1);
6687
6712
  _html("</div>");
6688
6713
  _if(() => {
6689
6714
  if (restorePreview && backupBusy !== "restore") {
@@ -6696,7 +6721,7 @@ var settings_page_default = _template("x", (input$2) => {
6696
6721
  _html(`<ul${_attr_class(checkList)}>`);
6697
6722
  _for_of(preview.workspaces, (w) => {
6698
6723
  const $scope71_id = _scope_id();
6699
- _html(`<li><label${_attr_class(["_dQ", { ["_dS"]: w.exists || !!w.unknownHost }])}><input${_attr_input_checked($scope71_id, "b", restoreWs.has(w.id))}${_attr_class("_dR")} type=checkbox${_attr("disabled", w.exists || !!w.unknownHost)}>${_el_resume($scope71_id, "b")}<span${_attr_class("_bK")}><span${_attr_class("_bM")}><span${_attr_class("_bL")}>${_escape(w.name)}${_el_resume($scope71_id, "f")}</span>`);
6724
+ _html(`<li><label${_attr_class(["_dQ", { ["_dS"]: w.exists || !!w.unknownHost }])}><input${_attr_input_checked($scope71_id, "b", restoreWs.has(w.id))}${_attr_class("_dR")} type=checkbox${_attr("disabled", w.exists || !!w.unknownHost)}>${_el_resume($scope71_id, "b")}<span${_attr_class("_bL")}><span${_attr_class("_bN")}><span${_attr_class("_bM")}>${_escape(w.name)}${_el_resume($scope71_id, "f")}</span>`);
6700
6725
  _if(() => {
6701
6726
  if (w.status === "archived") {
6702
6727
  const $scope139_id = _scope_id();
@@ -6718,7 +6743,7 @@ var settings_page_default = _template("x", (input$2) => {
6718
6743
  return 1;
6719
6744
  }
6720
6745
  }, $scope71_id, "h", 1, 1, 1, 0, 1);
6721
- _html(`</span><span${_attr_class("_bN")}>${_escape(w.repos.join(", ") || "no repos")}${_el_resume($scope71_id, "j")}</span></span></label>${_el_resume($scope71_id, "a")}</li>`);
6746
+ _html(`</span><span${_attr_class("_bO")}>${_escape(w.repos.join(", ") || "no repos")}${_el_resume($scope71_id, "j")}</span></span></label>${_el_resume($scope71_id, "a")}</li>`);
6722
6747
  _script($scope71_id, "x81");
6723
6748
  _subscribe($restoreWs__closures, writeScope($scope71_id, {
6724
6749
  n: w?.unknownHost,
@@ -6729,7 +6754,7 @@ var settings_page_default = _template("x", (input$2) => {
6729
6754
  return 0;
6730
6755
  } else {
6731
6756
  const $scope137_id = _scope_id();
6732
- _html(`<p${_attr_class("_bP")}>No workspaces in this file.</p>`);
6757
+ _html(`<p${_attr_class("_bQ")}>No workspaces in this file.</p>`);
6733
6758
  writeScope($scope137_id, {});
6734
6759
  return 1;
6735
6760
  }
@@ -6769,7 +6794,7 @@ var settings_page_default = _template("x", (input$2) => {
6769
6794
  _if(() => {
6770
6795
  if (p.total) {
6771
6796
  const $scope73_id = _scope_id();
6772
- _html(`<li><label${_attr_class(["_dQ", { ["_dS"]: !p.missing.length && p.key !== "settings" }])}><input${_attr_input_checked($scope73_id, "b", restoreParts[p.key])}${_attr_class("_dR")} type=checkbox${_attr("disabled", !p.missing.length && p.key !== "settings")}>${_el_resume($scope73_id, "b")}<span${_attr_class("_bK")}><span${_attr_class("_bL")}>${_escape(p.label)}${_el_resume($scope73_id, "e")}</span><span${_attr_class("_bN")}>`);
6797
+ _html(`<li><label${_attr_class(["_dQ", { ["_dS"]: !p.missing.length && p.key !== "settings" }])}><input${_attr_input_checked($scope73_id, "b", restoreParts[p.key])}${_attr_class("_dR")} type=checkbox${_attr("disabled", !p.missing.length && p.key !== "settings")}>${_el_resume($scope73_id, "b")}<span${_attr_class("_bL")}><span${_attr_class("_bM")}>${_escape(p.label)}${_el_resume($scope73_id, "e")}</span><span${_attr_class("_bO")}>`);
6773
6798
  _if(() => {
6774
6799
  if (p.key === "settings") {
6775
6800
  const $scope136_id = _scope_id();
@@ -6821,7 +6846,7 @@ var settings_page_default = _template("x", (input$2) => {
6821
6846
  writeScope($scope69_id, {});
6822
6847
  return 0;
6823
6848
  }
6824
- }, $scope0_id, "bt", 1, 1, 1, 0, 1);
6849
+ }, $scope0_id, "bn", 1, 1, 1, 0, 1);
6825
6850
  _html("</div></div></section></div></div></div>");
6826
6851
  _if(() => {
6827
6852
  if (versionPick) {
@@ -6846,166 +6871,167 @@ var settings_page_default = _template("x", (input$2) => {
6846
6871
  writeScope($scope37_id, { a: _existing_scope($childScope13) });
6847
6872
  return 0;
6848
6873
  }
6849
- }, $scope0_id, "bu", 1, 1, 1, 0, 1);
6874
+ }, $scope0_id, "bo", 1, 1, 1, 0, 1);
6850
6875
  _script($scope0_id, "x84");
6851
6876
  _script($scope0_id, "x85");
6852
6877
  writeScope($scope0_id, {
6853
- by: input$2.setupChange,
6854
- bz: input$2.agentsChange,
6855
- c0: input$2.preferred,
6856
- c1: input$2.preferredChange,
6857
- c3: input$2.instance,
6858
- c4: input$2.instanceChange,
6859
- c6: input$2.onExit,
6860
- c8: $si__input_instance__OR__input_instanceChange && input$2.instance?.name,
6861
- c9: $si__input_instance__OR__input_instanceChange && input$2.instance?.accent,
6862
- ca: setup,
6863
- cb: setup?.agents,
6864
- cd: setup?.missing,
6865
- cf: ignoredSso,
6866
- cg: readIgnoredSso,
6867
- ch: usage,
6868
- ci: usage?.agents,
6869
- cj: usage?.error,
6870
- ck: error,
6871
- cl: refreshing,
6872
- cm: active,
6873
- cn: active?.size,
6874
- co: authCodes,
6875
- cp: confirmingRemove,
6876
- cq: versionPick,
6877
- cr: versionPick?.label,
6878
- cs: versionPick?.current,
6879
- ct: hostInput,
6880
- cu: addingHost,
6881
- cw: hostBusy,
6882
- cx: query,
6883
- cy: hits,
6884
- cz: hits?.length,
6885
- d0: self,
6886
- d1: self?.install,
6887
- d2: self?.latest,
6888
- d3: self?.version,
6889
- d4: selfUpdating,
6890
- d7: searching,
6891
- d9: searchTimer.id,
6892
- db: skills,
6893
- dc: skills?.global,
6894
- dd: skills?.global?.length,
6895
- de: skills?.available,
6896
- dg: skills?.agents?.length,
6897
- dh: skillQuery,
6898
- di: skillHits,
6899
- dj: skillHits?.length,
6900
- dk: skillSearching,
6901
- dl: confirmingSkill,
6902
- dn: skillTimer.id,
6903
- dp: machineOpen,
6904
- dq: skillsOpen,
6905
- dr: addingSkill,
6906
- dt: addingTool,
6907
- dv: setThemeMode,
6908
- dz: applySetup,
6909
- e1: syncAgents,
6910
- e2: loadSetup,
6911
- e3: loadSelf,
6912
- e5: updateSelf,
6913
- e6: loadUsage,
6914
- e8: refresh,
6915
- e9: refreshUsage,
6916
- ea: setActive,
6917
- ec: run,
6918
- ee: skillSeq.applied,
6919
- ef: skillSeq.issued,
6920
- eg: applySkills,
6921
- ej: loadSkills,
6922
- ek: runSkill,
6923
- el: backupBusy,
6924
- em: backupLine,
6925
- en: preflight,
6926
- eq: preflight?.contents?.workspaces,
6927
- er: preflight?.contents?.archived,
6928
- es: preflight?.contents?.tools,
6929
- et: preflight?.contents?.skills,
6930
- eu: preflight?.contents?.agents,
6931
- ev: preflight?.unpushed,
6932
- ew: preflight?.files,
6933
- ex: preflight?.workspaces,
6934
- ey: restorePreview,
6935
- f0: restoreWs,
6936
- f1: restoreWs?.size,
6937
- f2: restoreParts,
6938
- f4: restoreDone,
6939
- f6: downloadManifest,
6940
- f8: startExport,
6941
- f9: pickRestoreFile,
6942
- fa: toggleRestoreWs,
6943
- fb: runRestore,
6944
- fc: searchSkills,
6945
- fd: changeHost,
6946
- fe: runEach,
6947
- ff: setPreferred,
6948
- fi: saveTimer.id,
6949
- fk: setInstance,
6950
- fn: setEnabled,
6951
- fo: search,
6952
- fp: outdated,
6953
- fq: tools,
6954
- fs: missingInstallable,
6955
- fv: outdatedIds,
6956
- fx: families,
6957
- fz: families.length,
6958
- g1: instanceIds,
6959
- g3: accountsFor,
6960
- g4: strayAccountsFor,
6961
- gg: restorePreview?.preview?.from?.host,
6962
- gh: restorePreview?.preview?.from?.exportedAt,
6963
- gi: restorePreview?.preview?.from?.version,
6964
- gj: restorePreview?.preview?.workspaces,
6965
- gk: restorePreview?.preview?.workspaces?.length,
6966
- gl: restorePreview?.preview?.tools,
6967
- gm: restorePreview?.preview?.skills,
6968
- gn: restorePreview?.preview?.agents,
6969
- go: restorePreview?.preview?.hosts,
6970
- gp: restorePreview?.preview?.settings,
6971
- gt: $setup_missing__closures,
6972
- gx: $refreshing__closures,
6878
+ bs: input$2.setupChange,
6879
+ bt: input$2.agentsChange,
6880
+ bu: input$2.preferred,
6881
+ bv: input$2.preferredChange,
6882
+ bx: input$2.instance,
6883
+ by: input$2.instanceChange,
6884
+ c0: input$2.onExit,
6885
+ c2: $si__input_instance__OR__input_instanceChange && input$2.instance?.name,
6886
+ c3: $si__input_instance__OR__input_instanceChange && input$2.instance?.accent,
6887
+ c4: setup,
6888
+ c5: setup?.agents,
6889
+ c7: setup?.missing,
6890
+ c9: ignoredSso,
6891
+ ca: readIgnoredSso,
6892
+ cb: usage,
6893
+ cc: usage?.agents,
6894
+ cd: usage?.error,
6895
+ ce: error,
6896
+ cf: refreshing,
6897
+ cg: active,
6898
+ ch: active?.size,
6899
+ ci: authCodes,
6900
+ cj: confirmingRemove,
6901
+ ck: versionPick,
6902
+ cl: versionPick?.label,
6903
+ cm: versionPick?.current,
6904
+ cn: hostInput,
6905
+ co: addingHost,
6906
+ cq: hostBusy,
6907
+ cr: query,
6908
+ cs: hits,
6909
+ ct: hits?.length,
6910
+ cu: self,
6911
+ cv: self?.install,
6912
+ cw: self?.latest,
6913
+ cx: self?.version,
6914
+ cy: selfUpdating,
6915
+ d1: searching,
6916
+ d3: searchTimer.id,
6917
+ d5: skills,
6918
+ d6: skills?.global,
6919
+ d7: skills?.global?.length,
6920
+ d8: skills?.available,
6921
+ da: skills?.agents?.length,
6922
+ db: skillQuery,
6923
+ dc: skillHits,
6924
+ dd: skillHits?.length,
6925
+ de: skillSearching,
6926
+ df: confirmingSkill,
6927
+ dh: skillTimer.id,
6928
+ dj: machineOpen,
6929
+ dk: skillsOpen,
6930
+ dl: addingSkill,
6931
+ dn: addingTool,
6932
+ dp: setThemeMode,
6933
+ dt: applySetup,
6934
+ dv: syncAgents,
6935
+ dw: retryWhenBack,
6936
+ dx: loadSetup,
6937
+ dy: loadSelf,
6938
+ e0: updateSelf,
6939
+ e1: loadUsage,
6940
+ e3: refresh,
6941
+ e4: refreshUsage,
6942
+ e5: setActive,
6943
+ e7: run,
6944
+ e9: skillSeq.applied,
6945
+ ea: skillSeq.issued,
6946
+ eb: applySkills,
6947
+ ee: loadSkills,
6948
+ ef: runSkill,
6949
+ eg: backupBusy,
6950
+ eh: backupLine,
6951
+ ei: preflight,
6952
+ el: preflight?.contents?.workspaces,
6953
+ em: preflight?.contents?.archived,
6954
+ en: preflight?.contents?.tools,
6955
+ eo: preflight?.contents?.skills,
6956
+ ep: preflight?.contents?.agents,
6957
+ eq: preflight?.unpushed,
6958
+ er: preflight?.files,
6959
+ es: preflight?.workspaces,
6960
+ et: restorePreview,
6961
+ ev: restoreWs,
6962
+ ew: restoreWs?.size,
6963
+ ex: restoreParts,
6964
+ ez: restoreDone,
6965
+ f1: downloadManifest,
6966
+ f3: startExport,
6967
+ f4: pickRestoreFile,
6968
+ f5: toggleRestoreWs,
6969
+ f6: runRestore,
6970
+ f7: searchSkills,
6971
+ f8: changeHost,
6972
+ f9: runEach,
6973
+ fa: setPreferred,
6974
+ fd: saveTimer.id,
6975
+ ff: setInstance,
6976
+ fi: setEnabled,
6977
+ fj: search,
6978
+ fk: outdated,
6979
+ fl: tools,
6980
+ fn: missingInstallable,
6981
+ fq: outdatedIds,
6982
+ fs: families,
6983
+ fu: families.length,
6984
+ fw: instanceIds,
6985
+ fy: accountsFor,
6986
+ fz: strayAccountsFor,
6987
+ gb: restorePreview?.preview?.from?.host,
6988
+ gc: restorePreview?.preview?.from?.exportedAt,
6989
+ gd: restorePreview?.preview?.from?.version,
6990
+ ge: restorePreview?.preview?.workspaces,
6991
+ gf: restorePreview?.preview?.workspaces?.length,
6992
+ gg: restorePreview?.preview?.tools,
6993
+ gh: restorePreview?.preview?.skills,
6994
+ gi: restorePreview?.preview?.agents,
6995
+ gj: restorePreview?.preview?.hosts,
6996
+ gk: restorePreview?.preview?.settings,
6997
+ go: $setup_missing__closures,
6998
+ gs: $refreshing__closures,
6973
6999
  d: _existing_scope($childScope2),
6974
- gw: $error__closures,
6975
- hc: $self_latest__closures,
6976
- hd: $self_version__closures,
6977
- gy: $active__closures,
6978
- gq: $si__input_preferred && $input_preferred__closures,
6979
- ib: $accountsFor2__closures,
6980
- h0: $authCodes__closures,
6981
- h1: $confirmingRemove__closures,
6982
- hs: $si__input_setupChange && $refresh2__closures,
6983
- ht: $run2__closures,
7000
+ gr: $error__closures,
7001
+ h8: $self_latest__closures,
7002
+ h9: $self_version__closures,
7003
+ gt: $active__closures,
7004
+ gl: $si__input_preferred && $input_preferred__closures,
7005
+ i7: $accountsFor2__closures,
7006
+ gv: $authCodes__closures,
7007
+ gw: $confirmingRemove__closures,
7008
+ ho: $si__input_setupChange && $refresh2__closures,
7009
+ hp: $run2__closures,
6984
7010
  a6: _existing_scope($childScope10),
6985
- hl: $skillQuery__closures,
6986
- hp: $confirmingSkill__closures,
6987
- hh: $skills__closures,
6988
- hk: $skills_available__closures,
6989
- ag: _existing_scope($childScope12),
6990
- h7: $query__closures,
6991
- hb: $self_install__closures,
6992
- he: $selfUpdating__closures,
6993
- i0: $preflight_unpushed__closures,
6994
- i1: $preflight_files__closures,
6995
- i3: $restoreWs__closures,
6996
- ig: $preview_workspaces__closures,
6997
- im: $preview_settings__closures,
6998
- i5: $restoreParts__closures
7011
+ hh: $skillQuery__closures,
7012
+ hl: $confirmingSkill__closures,
7013
+ hd: $skills__closures,
7014
+ hg: $skills_available__closures,
7015
+ af: _existing_scope($childScope12),
7016
+ h3: $query__closures,
7017
+ h7: $self_install__closures,
7018
+ ha: $selfUpdating__closures,
7019
+ hw: $preflight_unpushed__closures,
7020
+ hx: $preflight_files__closures,
7021
+ hz: $restoreWs__closures,
7022
+ ic: $preview_workspaces__closures,
7023
+ ii: $preview_settings__closures,
7024
+ i1: $restoreParts__closures
6999
7025
  });
7000
7026
  _resume_branch($scope0_id);
7001
7027
  });
7002
7028
  //#endregion
7003
7029
  //#region src/tags/new-workspace.css.ts
7004
- var content$1 = "_bT _bw";
7005
- var curBase = "_b1 _W _V";
7006
- var archived = "_b6 _bE";
7007
- var archivedHint = "_b7 _V";
7008
- var archivedCard = "_b8 _bJ";
7030
+ var content$1 = "_bU _bx";
7031
+ var curBase = "_b2 _W _V";
7032
+ var archived = "_b7 _bF";
7033
+ var archivedHint = "_b8 _V";
7034
+ var archivedCard = "_b9 _bK";
7009
7035
  //#endregion
7010
7036
  //#region src/tags/icons/icon-group.marko
7011
7037
  var icon_group_default = _template("eb", (input) => {
@@ -7040,8 +7066,8 @@ var icon_branch_default = _template("R", (input) => {
7040
7066
  });
7041
7067
  _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
7042
7068
  });
7043
- var resultRow = "_d0 _G";
7044
- var resultBranch = "_d2 _2 _j";
7069
+ var resultRow = "_dZ _G";
7070
+ var resultBranch = "_d1 _2 _j";
7045
7071
  //#endregion
7046
7072
  //#region src/tags/branch-pick.marko
7047
7073
  var branch_pick_default = _template("d", (input) => {
@@ -7054,11 +7080,11 @@ var branch_pick_default = _template("d", (input) => {
7054
7080
  let branchFilter = "";
7055
7081
  let reloadTick = 0;
7056
7082
  let refreshing = false;
7057
- _html(`<div${_attr_class("_d4")}>`);
7083
+ _html(`<div${_attr_class("_d3")}>`);
7058
7084
  _if(() => {
7059
7085
  {
7060
7086
  const $scope4_id = _scope_id();
7061
- _html(`<p${_attr_class("_bP")}><span${_attr_class("_E")}></span> Loading branches…</p>`);
7087
+ _html(`<p${_attr_class("_bQ")}><span${_attr_class("_E")}></span> Loading branches…</p>`);
7062
7088
  writeScope($scope4_id, {});
7063
7089
  return 0;
7064
7090
  }
@@ -7142,7 +7168,7 @@ var repo_picker_default = _template("v", (input$1) => {
7142
7168
  const ssoBlock = { content: _content("v13", () => {
7143
7169
  const $scope8_id = _scope_id();
7144
7170
  _scope_reason();
7145
- _set_serialize_reason(58);
7171
+ _set_serialize_reason(26);
7146
7172
  const $childScope = _peek_scope_id();
7147
7173
  sso_auth_default({
7148
7174
  items: ssoPending,
@@ -7160,18 +7186,18 @@ var repo_picker_default = _template("v", (input$1) => {
7160
7186
  _resume_branch($scope8_id);
7161
7187
  }, $scope0_id) };
7162
7188
  const hasBody = !!(pasted || results.length || filter && (!catalog || !pasted) || compact && ssoPending.length);
7163
- _html(`<div${_attr_class([compact ? "_ci" : "_dU", { ["_cj"]: compact && !input$1.open }])}>`);
7189
+ _html(`<div${_attr_class([compact ? "_cq" : "_dT", { ["_cr"]: compact && !input$1.open }])}>`);
7164
7190
  _if(() => {
7165
7191
  if (!compact && ssoPending.length) {
7166
7192
  const $scope10_id = _scope_id();
7167
- _html(`<div${_attr_class("_dV")}>`);
7193
+ _html(`<div${_attr_class("_dU")}>`);
7168
7194
  ssoBlock.content({});
7169
7195
  _html("</div>");
7170
7196
  writeScope($scope10_id, {});
7171
7197
  return 0;
7172
7198
  }
7173
7199
  }, $scope0_id, "b", 1, 1, 1, 0, 1);
7174
- _html(`<label${_attr_class(["_Z", compact && "_ck"])}>`);
7200
+ _html(`<label${_attr_class(["_Z", compact && "_cs"])}>`);
7175
7201
  icon_search_default({
7176
7202
  size: 14,
7177
7203
  class: "_0"
@@ -7183,12 +7209,12 @@ var repo_picker_default = _template("v", (input$1) => {
7183
7209
  }, "v0", $scope0_id))}${_attr_class([
7184
7210
  compact ? "_X" : inputLg,
7185
7211
  "_1",
7186
- compact && "_cl"
7212
+ compact && "_ct"
7187
7213
  ])} placeholder="Add a repo…" aria-label="Add a repo"${_attr("disabled", input$1.disabled)}>${_el_resume($scope0_id, "e")}</label>${_el_resume($scope0_id, "c", $sg__input_compact)}`);
7188
7214
  _if(() => {
7189
7215
  if (compact) {
7190
7216
  const $scope1_id = _scope_id();
7191
- _html(`<button${_attr_class([iconBtnRow, "_cm"])} type=button title="Close search" aria-label="Close search"${_attr("hidden", !input$1.open)}>`);
7217
+ _html(`<button${_attr_class([iconBtnRow, "_cu"])} type=button title="Close search" aria-label="Close search"${_attr("hidden", !input$1.open)}>`);
7192
7218
  icon_xmark_default({ size: 12 });
7193
7219
  _html(`</button>${_el_resume($scope1_id, "a")}`);
7194
7220
  _script($scope1_id, "v14");
@@ -7196,11 +7222,11 @@ var repo_picker_default = _template("v", (input$1) => {
7196
7222
  return 0;
7197
7223
  }
7198
7224
  }, $scope0_id, "f", $sg__input_compact__OR__input_open, $sg__input_compact, 1, 0, 1);
7199
- _html(`<div${_attr_class([compact ? pop$1 : "_dW"])}${_attr("hidden", !hasBody || compact && !input$1.open)}>`);
7225
+ _html(`<div${_attr_class([compact ? pop$1 : "_dV"])}${_attr("hidden", !hasBody || compact && !input$1.open)}>`);
7200
7226
  _if(() => {
7201
7227
  if (compact && ssoPending.length) {
7202
7228
  const $scope11_id = _scope_id();
7203
- _html(`<div${_attr_class("_dV")}>`);
7229
+ _html(`<div${_attr_class("_dU")}>`);
7204
7230
  ssoBlock.content({});
7205
7231
  _html("</div>");
7206
7232
  writeScope($scope11_id, {});
@@ -7210,16 +7236,16 @@ var repo_picker_default = _template("v", (input$1) => {
7210
7236
  _if(() => {
7211
7237
  if (pasted) {
7212
7238
  const $scope2_id = _scope_id();
7213
- _html(`<ul${_attr_class("_dX")}><li><div${_attr_class(["_dZ", "_dY"])}><button${_attr_class(resultRow)}${pasteWillFork ? _attr("title", `Fork ${pasted} to your account and add the fork`) : _attr("title", `Add ${pasted} as-is (pushes go to that repo)`)}>`);
7239
+ _html(`<ul${_attr_class("_dW")}><li><div${_attr_class(["_dY", "_dX"])}><button${_attr_class(resultRow)}${pasteWillFork ? _attr("title", `Fork ${pasted} to your account and add the fork`) : _attr("title", `Add ${pasted} as-is (pushes go to that repo)`)}>`);
7214
7240
  icon_plus_default({
7215
7241
  size: 12,
7216
- class: "_d6"
7242
+ class: "_d5"
7217
7243
  });
7218
- _html(`<span${_attr_class("_d7")}>${_escape(repoLabel(pasted))}${_el_resume($scope2_id, "f")}</span></button>${_el_resume($scope2_id, "c")}`);
7244
+ _html(`<span${_attr_class("_d6")}>${_escape(repoLabel(pasted))}${_el_resume($scope2_id, "f")}</span></button>${_el_resume($scope2_id, "c")}`);
7219
7245
  _if(() => {
7220
7246
  if (pastedForkable) {
7221
7247
  const $scope9_id = _scope_id();
7222
- _html(`<button${_attr_class(["_d3", { ["_d1"]: pasteWillFork }])}${pasteWillFork ? " title=\"Will fork to your account; click to clone as-is instead\"" : _attr("title", `Fork ${pasted} to your account and clone the fork`)} aria-pressed=${pasteWillFork ? "true" : "false"}>`);
7248
+ _html(`<button${_attr_class(["_d2", { ["_d0"]: pasteWillFork }])}${pasteWillFork ? " title=\"Will fork to your account; click to clone as-is instead\"" : _attr("title", `Fork ${pasted} to your account and clone the fork`)} aria-pressed=${pasteWillFork ? "true" : "false"}>`);
7223
7249
  _if(() => {
7224
7250
  if (pasteWillFork) {
7225
7251
  const $scope13_id = _scope_id();
@@ -7239,7 +7265,7 @@ var repo_picker_default = _template("v", (input$1) => {
7239
7265
  return 0;
7240
7266
  }
7241
7267
  }, $scope2_id, "g", 1, 1, 1, 0, 1);
7242
- _html(`<button${_attr_class([resultBranch, { ["_d1"]: branchesFor === pasted }])}${_attr("title", `Pick a base branch for ${pasted}`)}${_attr("aria-label", `Pick a base branch for ${pasted}`)}>`);
7268
+ _html(`<button${_attr_class([resultBranch, { ["_d0"]: branchesFor === pasted }])}${_attr("title", `Pick a base branch for ${pasted}`)}${_attr("aria-label", `Pick a base branch for ${pasted}`)}>`);
7243
7269
  icon_branch_default({ size: 12 });
7244
7270
  _html(`</button>${_el_resume($scope2_id, "h")}</div>`);
7245
7271
  _if(() => {
@@ -7266,7 +7292,7 @@ var repo_picker_default = _template("v", (input$1) => {
7266
7292
  return 0;
7267
7293
  } else if (filter && !catalog) {
7268
7294
  const $scope12_id = _scope_id();
7269
- _html(`<p${_attr_class("_bP")}>Loading repos…</p>`);
7295
+ _html(`<p${_attr_class("_bQ")}>Loading repos…</p>`);
7270
7296
  writeScope($scope12_id, {});
7271
7297
  return 1;
7272
7298
  }
@@ -7274,15 +7300,15 @@ var repo_picker_default = _template("v", (input$1) => {
7274
7300
  _if(() => {
7275
7301
  if (results.length) {
7276
7302
  const $scope4_id = _scope_id();
7277
- _html(`<ul${_attr_class("_dX")}>`);
7303
+ _html(`<ul${_attr_class("_dW")}>`);
7278
7304
  _for_of(results, (repo, i) => {
7279
7305
  const $scope5_id = _scope_id();
7280
- _html(`<li><div${_attr_class(["_dZ", { ["_dY"]: i === highlight }])}><button${_attr_class(resultRow)}>`);
7306
+ _html(`<li><div${_attr_class(["_dY", { ["_dX"]: i === highlight }])}><button${_attr_class(resultRow)}>`);
7281
7307
  icon_plus_default({
7282
7308
  size: 12,
7283
- class: "_d6"
7309
+ class: "_d5"
7284
7310
  });
7285
- _html(`<span${_attr_class("_d7")}>${_escape(repoLabel(repo.nameWithOwner))}${_el_resume($scope5_id, "e")}</span></button>${_el_resume($scope5_id, "b")}<button${_attr_class([resultBranch, { ["_d1"]: branchesFor === repo.nameWithOwner }])}${_attr("title", `Pick a base branch for ${repo.nameWithOwner}`)}${_attr("aria-label", `Pick a base branch for ${repo.nameWithOwner}`)}>`);
7311
+ _html(`<span${_attr_class("_d6")}>${_escape(repoLabel(repo.nameWithOwner))}${_el_resume($scope5_id, "e")}</span></button>${_el_resume($scope5_id, "b")}<button${_attr_class([resultBranch, { ["_d0"]: branchesFor === repo.nameWithOwner }])}${_attr("title", `Pick a base branch for ${repo.nameWithOwner}`)}${_attr("aria-label", `Pick a base branch for ${repo.nameWithOwner}`)}>`);
7286
7312
  icon_branch_default({ size: 12 });
7287
7313
  _html(`</button>${_el_resume($scope5_id, "f")}</div>${_el_resume($scope5_id, "a")}`);
7288
7314
  _if(() => {
@@ -7317,7 +7343,7 @@ var repo_picker_default = _template("v", (input$1) => {
7317
7343
  return 0;
7318
7344
  } else if (filter && catalog && !pasted) {
7319
7345
  const $scope7_id = _scope_id();
7320
- _html(`<p${_attr_class("_bP")}>No repos match "<!>${_escape(filter)}${_el_resume($scope7_id, "b")}". Paste a clone URL to add any repo.</p>`);
7346
+ _html(`<p${_attr_class("_bQ")}>No repos match "<!>${_escape(filter)}${_el_resume($scope7_id, "b")}". Paste a clone URL to add any repo.</p>`);
7321
7347
  writeScope($scope7_id, {});
7322
7348
  return 1;
7323
7349
  }
@@ -7635,7 +7661,7 @@ var join_dialog_default = _template("o", (input) => {
7635
7661
  _html(`<li${_attr_class("_eu")}><span${_attr_class("_ev")}>${_escape(repoLabel(fullName))}${_el_resume($scope9_id, "c")}</span></li>`);
7636
7662
  writeScope($scope9_id, {});
7637
7663
  }, (r) => r, $scope3_id, "a", 1, 1, 1, "</ul>", 1);
7638
- _html(`<p${_attr_class(hint)}>Your own lane of <span${_attr_class("_w")}>${_escape(parsed.ok.branch)}${_el_resume($scope3_id, "d")}</span> in each; PRs target theirs.</p><label${_attr_class("_ew")}><span${_attr_class("_bS")}>Name</span><input${_attr_input_value($scope3_id, "g", name, _resume((_new_name) => {
7664
+ _html(`<p${_attr_class(hint)}>Your own lane of <span${_attr_class("_w")}>${_escape(parsed.ok.branch)}${_el_resume($scope3_id, "d")}</span> in each; PRs target theirs.</p><label${_attr_class("_ew")}><span${_attr_class("_bT")}>Name</span><input${_attr_input_value($scope3_id, "g", name, _resume((_new_name) => {
7639
7665
  name = _new_name;
7640
7666
  }, "o1", $scope3_id))}${_attr_class("_X")}${_attr("placeholder", parsed.ok.name)}${_attr("disabled", busy)}>${_el_resume($scope3_id, "g")}</label>`);
7641
7667
  _script($scope3_id, "o8");
@@ -7839,7 +7865,7 @@ var new_workspace_default = _template("s", (input) => {
7839
7865
  }
7840
7866
  }, "s6", $scope0_id);
7841
7867
  const titleId = _id();
7842
- _html(`<div${_attr_class("_bu")} role=region${_attr("aria-labelledby", titleId)}><div${_attr_class("_bv")}><div${_attr_class(content$1)}>`);
7868
+ _html(`<div${_attr_class("_bv")} role=region${_attr("aria-labelledby", titleId)}><div${_attr_class("_bw")}><div${_attr_class(content$1)}>`);
7843
7869
  _set_serialize_reason({
7844
7870
  0: _serialize_guard($scope0_reason, 2),
7845
7871
  1: $sg__input_backHref__OR__input_onExit,
@@ -7888,23 +7914,23 @@ var new_workspace_default = _template("s", (input) => {
7888
7914
  return 0;
7889
7915
  }
7890
7916
  }, $scope0_id, "e", 1, 1, 1, 0, 1);
7891
- _html(`<label${_attr_class("_bW")}><span${_attr_class("_bS")}>Name</span><input${_attr_input_value($scope0_id, "h", name, _resume((_new_name) => {
7917
+ _html(`<label${_attr_class("_bX")}><span${_attr_class("_bT")}>Name</span><input${_attr_input_value($scope0_id, "h", name, _resume((_new_name) => {
7892
7918
  name = _new_name;
7893
- }, "s0", $scope0_id))}${_attr_class(inputLg)} placeholder=my-feature${_attr("disabled", busy)} autofocus>${_el_resume($scope0_id, "h")}</label><section${_attr_class("_bE")}><div${_attr_class("_bX")}><h2${_attr_class("_bS")}>Repos</h2><button${_attr_class(iconBtnRow)} title="Refresh repo list" aria-label="Refresh repo list"${_attr("disabled", catalogRefreshing)}>`);
7919
+ }, "s0", $scope0_id))}${_attr_class(inputLg)} placeholder=my-feature${_attr("disabled", busy)} autofocus>${_el_resume($scope0_id, "h")}</label><section${_attr_class("_bF")}><div${_attr_class("_bY")}><h2${_attr_class("_bT")}>Repos</h2><button${_attr_class(iconBtnRow)} title="Refresh repo list" aria-label="Refresh repo list"${_attr("disabled", catalogRefreshing)}>`);
7894
7920
  _set_serialize_reason(1);
7895
7921
  const $childScope2 = _peek_scope_id();
7896
7922
  icon_refresh_default({
7897
7923
  size: 14,
7898
7924
  class: catalogRefreshing && "_D"
7899
7925
  });
7900
- _html(`</button>${_el_resume($scope0_id, "l")}</div><ul${_attr_class("_bY")}>`);
7926
+ _html(`</button>${_el_resume($scope0_id, "l")}</div><ul${_attr_class("_bZ")}>`);
7901
7927
  _for_of(selected, (repo) => {
7902
7928
  const $scope4_id = _scope_id();
7903
- _html(`<li><div${_attr_class(row)}><span${_attr_class("_bZ")}>${_escape(repoLabel(repo.fullName))}${_el_resume($scope4_id, "c")}</span>`);
7929
+ _html(`<li><div${_attr_class(row)}><span${_attr_class("_b0")}>${_escape(repoLabel(repo.fullName))}${_el_resume($scope4_id, "c")}</span>`);
7904
7930
  _if(() => {
7905
7931
  if (repo.fork !== void 0) {
7906
7932
  const $scope5_id = _scope_id();
7907
- _html(`<button${_attr_class(["_b2", { ["_b0"]: repo.fork }])}${repo.fork ? _attr("title", `${repo.fullName} will be forked to your account; click to clone as-is instead`) : _attr("title", `Fork ${repo.fullName} to your account and clone the fork`)} aria-pressed=${repo.fork ? "true" : "false"}${_attr("disabled", busy)}>`);
7933
+ _html(`<button${_attr_class(["_b3", { ["_b1"]: repo.fork }])}${repo.fork ? _attr("title", `${repo.fullName} will be forked to your account; click to clone as-is instead`) : _attr("title", `Fork ${repo.fullName} to your account and clone the fork`)} aria-pressed=${repo.fork ? "true" : "false"}${_attr("disabled", busy)}>`);
7908
7934
  _if(() => {
7909
7935
  if (repo.fork) {
7910
7936
  const $scope14_id = _scope_id();
@@ -7927,7 +7953,7 @@ var new_workspace_default = _template("s", (input) => {
7927
7953
  _html(`<button${_attr_class([
7928
7954
  curBase,
7929
7955
  "_w",
7930
- { ["_b0"]: branchesFor === repo.fullName }
7956
+ { ["_b1"]: branchesFor === repo.fullName }
7931
7957
  ])}${_attr("title", `Change base branch for ${repo.fullName}`)}${_attr("aria-label", `Change base branch for ${repo.fullName}`)}${_attr("disabled", busy)}>`);
7932
7958
  icon_branch_default({ size: 12 });
7933
7959
  _html(`<!>${repo.baseBranch ? `${_escape(`${_to_text(" ")}`)}${_escape(`${_to_text(repo.baseBranch)}`)}` : ""}${_el_resume($scope4_id, "g")}</button>${_el_resume($scope4_id, "e")}<button${_attr_class([iconBtnXs, "_6"])}${_attr("title", `Remove ${repo.fullName}`)}${_attr("disabled", busy)}>`);
@@ -7963,7 +7989,7 @@ var new_workspace_default = _template("s", (input) => {
7963
7989
  _if(() => {
7964
7990
  if (!selected.length) {
7965
7991
  const $scope16_id = _scope_id();
7966
- _html(`<li${_attr_class("_bP")}>No repos yet. Search below to add one, or create it empty.</li>`);
7992
+ _html(`<li${_attr_class("_bQ")}>No repos yet. Search below to add one, or create it empty.</li>`);
7967
7993
  writeScope($scope16_id, {});
7968
7994
  return 0;
7969
7995
  }
@@ -7988,10 +8014,10 @@ var new_workspace_default = _template("s", (input) => {
7988
8014
  _if(() => {
7989
8015
  if (busy && steps.length) {
7990
8016
  const $scope11_id = _scope_id();
7991
- _html(`<ul${_attr_class("_b3")}>`);
8017
+ _html(`<ul${_attr_class("_b4")}>`);
7992
8018
  _for_of(steps, (step, i) => {
7993
8019
  const $scope12_id = _scope_id();
7994
- _html(`<li${_attr_class(["_b9", { ["_b4"]: i === steps.length - 1 }])}>`);
8020
+ _html(`<li${_attr_class(["_b_", { ["_b5"]: i === steps.length - 1 }])}>`);
7995
8021
  _if(() => {
7996
8022
  if (i === steps.length - 1) {
7997
8023
  const $scope17_id = _scope_id();
@@ -8000,7 +8026,7 @@ var new_workspace_default = _template("s", (input) => {
8000
8026
  return 0;
8001
8027
  } else {
8002
8028
  const $scope18_id = _scope_id();
8003
- _html(`<span${_attr_class("_b5")}>`);
8029
+ _html(`<span${_attr_class("_b6")}>`);
8004
8030
  icon_check_default({ size: 14 });
8005
8031
  _html("</span>");
8006
8032
  writeScope($scope18_id, {});
@@ -8014,7 +8040,7 @@ var new_workspace_default = _template("s", (input) => {
8014
8040
  return 0;
8015
8041
  }
8016
8042
  }, $scope0_id, "s", 1, 1, 1, 0, 1);
8017
- _html(`<div${_attr_class("_bU")}>`);
8043
+ _html(`<div${_attr_class("_bV")}>`);
8018
8044
  _if(() => {
8019
8045
  if (input.onExit || busy) {
8020
8046
  const $scope1_id = _scope_id();
@@ -8027,15 +8053,15 @@ var new_workspace_default = _template("s", (input) => {
8027
8053
  _html(`<button type=button${_attr_class([
8028
8054
  btnLg,
8029
8055
  "_p",
8030
- "_bV"
8056
+ "_bW"
8031
8057
  ])}${_attr("disabled", busy || !!restoring || !name.trim())}>${busy ? "Creating…" : "Create workspace"}${_el_resume($scope0_id, "w")}</button>${_el_resume($scope0_id, "v")}</div>`);
8032
8058
  _if(() => {
8033
8059
  if (archived$1.length) {
8034
8060
  const $scope6_id = _scope_id();
8035
- _html(`<section${_attr_class(archived)}><div${_attr_class("_bX")}><h2${_attr_class("_bS")}>Archived</h2><span${_attr_class(sectionCount)}>${_escape(archived$1.length)}${_el_resume($scope6_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("_bH")}>`);
8061
+ _html(`<section${_attr_class(archived)}><div${_attr_class("_bY")}><h2${_attr_class("_bT")}>Archived</h2><span${_attr_class(sectionCount)}>${_escape(archived$1.length)}${_el_resume($scope6_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("_bI")}>`);
8036
8062
  _for_of(archived$1, (ws) => {
8037
8063
  const $scope7_id = _scope_id();
8038
- _html(`<li${_attr_class(archivedCard)}><div${_attr_class("_bK")}><span${_attr_class("_bL")}>${_escape(ws.name)}${_el_resume($scope7_id, "d", $sg__input_workspaces)}</span><span${_attr_class([metaTrunc, "_w"])}${_attr("title", ws.display_path || ws.path)}>${_escape(ws.display_path || ws.path)}${_el_resume($scope7_id, "f", $sg__input_workspaces)}</span>${_el_resume($scope7_id, "e", $sg__input_workspaces)}</div><button type=button${_attr_class(btnLg)}${_attr("disabled", busy || !!restoring)}>`);
8064
+ _html(`<li${_attr_class(archivedCard)}><div${_attr_class("_bL")}><span${_attr_class("_bM")}>${_escape(ws.name)}${_el_resume($scope7_id, "d", $sg__input_workspaces)}</span><span${_attr_class([metaTrunc, "_w"])}${_attr("title", ws.display_path || ws.path)}>${_escape(ws.display_path || ws.path)}${_el_resume($scope7_id, "f", $sg__input_workspaces)}</span>${_el_resume($scope7_id, "e", $sg__input_workspaces)}</div><button type=button${_attr_class(btnLg)}${_attr("disabled", busy || !!restoring)}>`);
8039
8065
  _if(() => {
8040
8066
  if (restoring === ws.id) {
8041
8067
  const $scope19_id = _scope_id();
@@ -8159,9 +8185,9 @@ function vapidKey(base64) {
8159
8185
  const raw = atob(padded.replace(/-/g, "+").replace(/_/g, "/"));
8160
8186
  return Uint8Array.from(raw, (c) => c.charCodeAt(0));
8161
8187
  }
8162
- var iconBtn = "_eC _j";
8163
- var settingsDot = "_eD _ba";
8164
- var navToggle = "_eH _j";
8188
+ var iconBtn = "_fB _j";
8189
+ var settingsDot = "_fC _ba";
8190
+ var navToggle = "_fG _j";
8165
8191
  _template("Q", (input) => {
8166
8192
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
8167
8193
  const $scope0_id = _scope_id();
@@ -8204,16 +8230,16 @@ var ARM_MS = 3500;
8204
8230
  function disarmLater(fn) {
8205
8231
  return setTimeout(fn, ARM_MS);
8206
8232
  }
8207
- var railBtn = "_h3 _j";
8208
- var wsBtn = "_h8 _G";
8209
- var rowIcon = "_ia _2 _j";
8210
- var close = "_ib _5 _j _6";
8211
- var sessRename$1 = "_in _H";
8212
- var sessBtn$1 = "_ip _G";
8233
+ var railBtn = "_hu _j";
8234
+ var wsBtn = "_hz _G";
8235
+ var rowIcon = "_hC _2 _j";
8236
+ var close = "_hD _5 _j _6";
8237
+ var sessRename$1 = "_hP _H";
8238
+ var sessBtn$1 = "_hR _G";
8213
8239
  //#endregion
8214
8240
  //#region src/styles/session-pop.css.ts
8215
- var sessionPop = "_hZ _8";
8216
- var sessionPopBtn = "_h0 _G";
8241
+ var sessionPop = "_hq _8";
8242
+ var sessionPopBtn = "_hr _G";
8217
8243
  //#endregion
8218
8244
  //#region src/client/status.ts
8219
8245
  /** Workspace activity dot from its polled status counts. */
@@ -8280,22 +8306,22 @@ var usage_pcts_default = _template("H", (input) => {
8280
8306
  if (windows.length) {
8281
8307
  const $scope1_id = _scope_id();
8282
8308
  _html(`<span${_attr_class([
8283
- "_gy",
8309
+ "_gw",
8284
8310
  input.class,
8285
- { ["_gz"]: agent.stale_seconds != null }
8311
+ { ["_gx"]: agent.stale_seconds != null }
8286
8312
  ])}${agent.stale_seconds != null ? _attr("title", `${agent.note || "provider unreachable"}; last cached numbers`) : " title=\"Plan usage\""}>`);
8287
8313
  _for_of(windows, (win$1, i) => {
8288
8314
  const $scope2_id = _scope_id();
8289
- _html(`<span${_attr_class("_gA")}>`);
8315
+ _html(`<span${_attr_class("_gy")}>`);
8290
8316
  _if(() => {
8291
8317
  if (i) {
8292
8318
  const $scope3_id = _scope_id();
8293
- _html(`<span${_attr_class("_gD")} aria-hidden=true>·</span>`);
8319
+ _html(`<span${_attr_class("_gB")} aria-hidden=true>·</span>`);
8294
8320
  $si__input_agent && writeScope($scope3_id, {});
8295
8321
  return 0;
8296
8322
  }
8297
8323
  }, $scope2_id, "b", $sg__input_agent, $sg__input_agent, $sg__input_agent, 0, 1);
8298
- _html(`<span${_attr_class("_gB")}>${_escape(win$1.window)}${_el_resume($scope2_id, "d", $sg__input_agent)}</span><span${_attr_class(["_gC", win$1.used_percent >= 90 ? "_gf" : win$1.used_percent >= 70 ? "_ge" : win$1.used_percent >= 40 ? "_gd" : "_gc"])}>${_escape(pctText(win$1.used_percent))}${_el_resume($scope2_id, "f", $sg__input_agent)}</span>${_el_resume($scope2_id, "e", $sg__input_agent)}</span>`);
8324
+ _html(`<span${_attr_class("_gz")}>${_escape(win$1.window)}${_el_resume($scope2_id, "d", $sg__input_agent)}</span><span${_attr_class(["_gA", win$1.used_percent >= 90 ? "_gf" : win$1.used_percent >= 70 ? "_ge" : win$1.used_percent >= 40 ? "_gd" : "_gc"])}>${_escape(pctText(win$1.used_percent))}${_el_resume($scope2_id, "f", $sg__input_agent)}</span>${_el_resume($scope2_id, "e", $sg__input_agent)}</span>`);
8299
8325
  $si__input_agent && writeScope($scope2_id, {});
8300
8326
  }, "window", $scope1_id, "a", $sg__input_agent, $sg__input_agent__OR__input_class, $sg__input_agent, "</span>", 1);
8301
8327
  $si__input_agent__OR__input_class && writeScope($scope1_id, { _: _scope_with_id($scope0_id) });
@@ -8326,12 +8352,12 @@ var icon_edit_default = _template("$", (input) => {
8326
8352
  });
8327
8353
  _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
8328
8354
  });
8329
- var prChip = "_iz _s _iy";
8330
- var portChip = "_iA _s _iy";
8355
+ var prChip = "_iy _s _ix";
8356
+ var portChip = "_iz _s _ix";
8331
8357
  var prState = {
8332
- open: "_iE",
8333
- merged: "_iF",
8334
- closed: "_iG"
8358
+ open: "_iD",
8359
+ merged: "_iE",
8360
+ closed: "_iF"
8335
8361
  };
8336
8362
  //#endregion
8337
8363
  //#region src/tags/side-nav-chips.marko
@@ -8403,7 +8429,7 @@ var side_nav_chips_default = _template("y", (input) => {
8403
8429
  const name = repo.full_name.split("/").at(-1);
8404
8430
  return repos.some((r) => r.full_name !== repo.full_name && r.full_name.split("/").at(-1) === name) ? repoLabel(repo.full_name) : name;
8405
8431
  }, "y4", $scope1_id);
8406
- _html(`<div${_attr_class("_ix")}>`);
8432
+ _html(`<div${_attr_class("_iw")}>`);
8407
8433
  _for_of(repos, (repo) => {
8408
8434
  const $scope2_id = _scope_id();
8409
8435
  const $for_content__repo_worktree__closures = /* @__PURE__ */ new Set();
@@ -8419,11 +8445,11 @@ var side_nav_chips_default = _template("y", (input) => {
8419
8445
  [prState.merged]: pr.state === "MERGED",
8420
8446
  [prState.closed]: pr.state === "CLOSED"
8421
8447
  }
8422
- ])}${_attr("title", prTitle(repo, pr))}><a${_attr_class(["_iB", { ["_iI"]: !open }])}${_attr("href", pr.url)} target=_blank rel=noopener>${_escape(repoLabel$1(repo))}${_el_resume($scope3_id, "c")}#<!>${_escape(pr.number)}${_el_resume($scope3_id, "d")}</a>${_el_resume($scope3_id, "b")}`);
8448
+ ])}${_attr("title", prTitle(repo, pr))}><a${_attr_class(["_iA", { ["_iH"]: !open }])}${_attr("href", pr.url)} target=_blank rel=noopener>${_escape(repoLabel$1(repo))}${_el_resume($scope3_id, "c")}#<!>${_escape(pr.number)}${_el_resume($scope3_id, "d")}</a>${_el_resume($scope3_id, "b")}`);
8423
8449
  _if(() => {
8424
8450
  if (open) {
8425
8451
  const $scope4_id = _scope_id();
8426
- _html(`<a${_attr_class(["_iB", "_iC"])}${_attr("href", `/w/${input.workspaceId}/review?pr=${encodeURIComponent(`${repo.worktree}/${pr.number}`)}`)}${_attr("title", `Review #${pr.number} changes`)}>`);
8452
+ _html(`<a${_attr_class(["_iA", "_iB"])}${_attr("href", `/w/${input.workspaceId}/review?pr=${encodeURIComponent(`${repo.worktree}/${pr.number}`)}`)}${_attr("title", `Review #${pr.number} changes`)}>`);
8427
8453
  icon_diff_default({ size: 12 });
8428
8454
  _html(`</a>${_el_resume($scope4_id, "a")}`);
8429
8455
  _subscribe($for_content__repo_worktree__closures, _subscribe($si__input_workspaceId && $input_workspaceId__closures, writeScope($scope4_id, {})));
@@ -8431,9 +8457,9 @@ var side_nav_chips_default = _template("y", (input) => {
8431
8457
  } else {
8432
8458
  const $scope6_id = _scope_id();
8433
8459
  _html(`<button type=button${_attr_class([
8460
+ "_iA",
8434
8461
  "_iB",
8435
- "_iC",
8436
- "_iD"
8462
+ "_iC"
8437
8463
  ])}${_attr("title", `Dismiss #${pr.number}`)}>`);
8438
8464
  icon_xmark_default({ size: 12 });
8439
8465
  _html(`</button>${_el_resume($scope6_id, "a")}`);
@@ -8457,10 +8483,10 @@ var side_nav_chips_default = _template("y", (input) => {
8457
8483
  }, "full_name", $scope1_id, "b");
8458
8484
  _for_of(ports, (p) => {
8459
8485
  const $scope5_id = _scope_id();
8460
- _html(`<span${_attr_class(["_s", portChip])}${_attr("title", p.cmd)}><button type=button${_attr_class(["_iB", "_iH"])}${_attr("title", `Open http://${typeof location === "undefined" ? "localhost" : location.hostname}:${p.port}`)}>:<!>${_escape(p.port)}${_el_resume($scope5_id, "c")}</button>${_el_resume($scope5_id, "b")}<button type=button${_attr_class([
8486
+ _html(`<span${_attr_class(["_s", portChip])}${_attr("title", p.cmd)}><button type=button${_attr_class(["_iA", "_iG"])}${_attr("title", `Open port ${p.port}`)}>:<!>${_escape(p.port)}${_el_resume($scope5_id, "c")}</button>${_el_resume($scope5_id, "b")}<button type=button${_attr_class([
8487
+ "_iA",
8461
8488
  "_iB",
8462
8489
  "_iC",
8463
- "_iD",
8464
8490
  { ["_q"]: armedPid === p.pid }
8465
8491
  ])}${armedPid === p.pid ? " title=Kill?" : _attr("title", `Kill ${p.cmd} (pid ${p.pid})`)}>`);
8466
8492
  icon_xmark_default({ size: 12 });
@@ -8560,7 +8586,7 @@ var side_nav_item_default = _template("z", (input) => {
8560
8586
  _if(() => {
8561
8587
  if (input.rail) {
8562
8588
  const $scope2_id = _scope_id();
8563
- _html(`<a${_attr("href", `/w/${ws$1.id}`)}${_attr_class([railBtn, { ["_h1"]: input.current }])}${ws$1.pending ? _attr("title", `${ws$1.name} — restoring`) : _attr("title", ws$1.name)}>${input.index === void 0 ? "·" : _escape(input.index + 1)}${_el_resume($scope2_id, "b", _serialize_guard($scope0_reason, 26))}<span${_attr_class([
8589
+ _html(`<a${_attr("href", `/w/${ws$1.id}`)}${_attr_class([railBtn, { ["_hs"]: input.current }])}${ws$1.pending ? _attr("title", `${ws$1.name} — restoring`) : _attr("title", ws$1.name)}>${input.index === void 0 ? "·" : _escape(input.index + 1)}${_el_resume($scope2_id, "b", _serialize_guard($scope0_reason, 26))}<span${_attr_class([
8564
8590
  "_y",
8565
8591
  phase[dot],
8566
8592
  "_ba"
@@ -8570,30 +8596,30 @@ var side_nav_item_default = _template("z", (input) => {
8570
8596
  } else if (ws$1.pending) {
8571
8597
  const $scope3_id = _scope_id();
8572
8598
  _html(`<section${_attr_class([
8573
- "_h5",
8574
- "_ir",
8599
+ "_hw",
8600
+ "_hT",
8575
8601
  {
8576
- ["_h6"]: input.railPop,
8577
- ["_h4"]: input.page
8602
+ ["_hx"]: input.railPop,
8603
+ ["_hv"]: input.page
8578
8604
  }
8579
- ])} aria-busy=${ws$1.pending_error ? "false" : "true"}><div${_attr_class("_h7")}><div${_attr_class(wsBtn)}>`);
8605
+ ])} aria-busy=${ws$1.pending_error ? "false" : "true"}><div${_attr_class("_hy")}><div${_attr_class(wsBtn)}>`);
8580
8606
  _if(() => {
8581
8607
  if (ws$1.pending_error) {
8582
8608
  const $scope15_id = _scope_id();
8583
8609
  icon_warning_default({
8584
8610
  size: 12,
8585
- class: "_it"
8611
+ class: "_hV"
8586
8612
  });
8587
8613
  $si__input_workspaces__OR__input_workspaceId && writeScope($scope15_id, {});
8588
8614
  return 0;
8589
8615
  } else {
8590
8616
  const $scope16_id = _scope_id();
8591
- _html(`<span${_attr_class(["_E", "_is"])}></span>`);
8617
+ _html(`<span${_attr_class(["_E", "_hU"])}></span>`);
8592
8618
  $si__input_workspaces__OR__input_workspaceId && writeScope($scope16_id, {});
8593
8619
  return 1;
8594
8620
  }
8595
8621
  }, $scope3_id, "d", $sg__input_workspaces__OR__input_workspaceId, $sg__input_workspaces__OR__input_workspaceId, $sg__input_workspaces__OR__input_workspaceId, 0, 1);
8596
- _html(`<span${_attr_class("_id")}><span${_attr_class("_ie")}>${_escape(ws$1.name)}${_el_resume($scope3_id, "g", $sg__input_workspaces__OR__input_workspaceId)}</span><span${_attr_class("_iu")}${_attr("title", ws$1.pending_error || restoreLine)}>${ws$1.pending_error ? `Restore failed: ${_escape(`${ws$1.pending_error}`)}` : _escape("Restoring…")}${_el_resume($scope3_id, "i")}</span>${_el_resume($scope3_id, "h")}</span></div></div></section>${_el_resume($scope3_id, "a", _serialize_guard($scope0_reason, 10))}`);
8622
+ _html(`<span${_attr_class("_hF")}><span${_attr_class("_hG")}>${_escape(ws$1.name)}${_el_resume($scope3_id, "g", $sg__input_workspaces__OR__input_workspaceId)}</span><span${_attr_class("_hW")}${_attr("title", ws$1.pending_error || restoreLine)}>${ws$1.pending_error ? `Restore failed: ${_escape(`${ws$1.pending_error}`)}` : _escape("Restoring…")}${_el_resume($scope3_id, "i")}</span>${_el_resume($scope3_id, "h")}</span></div></div></section>${_el_resume($scope3_id, "a", _serialize_guard($scope0_reason, 10))}`);
8597
8623
  _subscribe($restoreLine__closures, _subscribe($si__input_workspaces__OR__input_workspaceId && $ws_pending_error__closures, _subscribe($si__input_workspaces__OR__input_workspaceId && $ws_name__closures, _subscribe($si__input_railPop && $input_railPop__closures, _subscribe($si__input_page && $input_page__closures, writeScope($scope3_id, {
8598
8624
  _: _scope_with_id($scope1_id),
8599
8625
  Cb0: $si__input_workspaces__OR__input_workspaceId && 1
@@ -8603,15 +8629,15 @@ var side_nav_item_default = _template("z", (input) => {
8603
8629
  const $scope4_id = _scope_id();
8604
8630
  const sessions$1 = input.sessions || [];
8605
8631
  const phaseLabel = dot === "working" ? "Working" : dot === "waiting" ? "Needs input" : dot === "idle" ? "Idle" : "Not running";
8606
- _html(`<section${_attr_class(["_h5", {
8607
- ["_h1"]: input.current,
8632
+ _html(`<section${_attr_class(["_hw", {
8633
+ ["_hs"]: input.current,
8608
8634
  ["_bb"]: input.current,
8609
- ["_h6"]: input.railPop,
8610
- ["_h4"]: input.page
8611
- }])}><div${_attr_class("_h7")}><a${_attr("href", `/w/${ws$1.id}`)}${_attr_class(wsBtn)}><span${_attr_class([
8635
+ ["_hx"]: input.railPop,
8636
+ ["_hv"]: input.page
8637
+ }])}><div${_attr_class("_hy")}><a${_attr("href", `/w/${ws$1.id}`)}${_attr_class(wsBtn)}><span${_attr_class([
8612
8638
  "_y",
8613
8639
  phase[dot],
8614
- "_ij"
8640
+ "_hL"
8615
8641
  ])}${_attr("title", phaseLabel)}></span>${_el_resume($scope4_id, "d", $sg__input_workspaceId__OR__input_status)}`);
8616
8642
  _if(() => {
8617
8643
  if (sessions$1.length === 1) {
@@ -8624,7 +8650,7 @@ var side_nav_item_default = _template("z", (input) => {
8624
8650
  icon_agent_default({
8625
8651
  agent: activeAgent(sessions$1[0]),
8626
8652
  size: 12,
8627
- class: "_ic"
8653
+ class: "_hE"
8628
8654
  });
8629
8655
  $si__input_sessions && writeScope($scope17_id, {
8630
8656
  _: _scope_with_id($scope4_id),
@@ -8634,11 +8660,11 @@ var side_nav_item_default = _template("z", (input) => {
8634
8660
  }
8635
8661
  }, $scope4_id, "e", $sg__input_sessions, $sg__input_sessions);
8636
8662
  const metaText = sessions$1.length === 0 ? phaseLabel : sessions$1.length > 1 ? `${sessions$1.length} sessions` : "";
8637
- _html(`<span${_attr_class("_id")}><span${_attr_class("_ie")}>${_escape(ws$1.name)}${_el_resume($scope4_id, "h", $sg__input_workspaces__OR__input_workspaceId)}</span>`);
8663
+ _html(`<span${_attr_class("_hF")}><span${_attr_class("_hG")}>${_escape(ws$1.name)}${_el_resume($scope4_id, "h", $sg__input_workspaces__OR__input_workspaceId)}</span>`);
8638
8664
  _if(() => {
8639
8665
  if (input.page && metaText) {
8640
8666
  const $scope18_id = _scope_id();
8641
- _html(`<span${_attr_class("_ih")}>${_escape(metaText)}${_el_resume($scope18_id, "b", _serialize_guard($scope0_reason, 6))}</span>`);
8667
+ _html(`<span${_attr_class("_hJ")}>${_escape(metaText)}${_el_resume($scope18_id, "b", _serialize_guard($scope0_reason, 6))}</span>`);
8642
8668
  $si__input_page__OR__input_sessions__OR__input_workspaceId__OR__input_status && writeScope($scope18_id, { _: _serialize_if($scope0_reason, 6) && _scope_with_id($scope4_id) });
8643
8669
  return 0;
8644
8670
  }
@@ -8651,7 +8677,7 @@ var side_nav_item_default = _template("z", (input) => {
8651
8677
  "_L",
8652
8678
  "_U",
8653
8679
  "_N",
8654
- "_ii"
8680
+ "_hK"
8655
8681
  ])}>${input.current ? "Open" : ""}${_el_resume($scope5_id, "b", _serialize_guard($scope0_reason, 21))}</span>`);
8656
8682
  $si__input_current__OR__input_page__OR__input_rail__OR__input_workspaces__OR__input_workspaceId && _subscribe($si__input_current && $input_current__closures, writeScope($scope5_id, {
8657
8683
  _: _scope_with_id($scope4_id),
@@ -8664,7 +8690,7 @@ var side_nav_item_default = _template("z", (input) => {
8664
8690
  _if(() => {
8665
8691
  if (!input.page) {
8666
8692
  const $scope6_id = _scope_id();
8667
- _html(`<div${_attr_class("_h9")}>`);
8693
+ _html(`<div${_attr_class("_hA")}>`);
8668
8694
  _if(() => {
8669
8695
  if (input.onNewSession) {
8670
8696
  const $scope7_id = _scope_id();
@@ -8713,7 +8739,7 @@ var side_nav_item_default = _template("z", (input) => {
8713
8739
  return 0;
8714
8740
  }
8715
8741
  }, $scope6_id, "c", $sg__input_onReview, $sg__input_onReview, $sg__input_onNewSession__OR__input_onReview, 0, 1);
8716
- _html(`<a${input.managing ? _attr("href", `/w/${ws$1.id}`) : _attr("href", `/w/${ws$1.id}/manage`)}${_attr_class([rowIcon, { ["_h2"]: input.managing }])} title=${input.managing ? "\"Back to terminal\"" : "\"Manage workspace\""}${input.managing ? " aria-current=page" : ""}>`);
8742
+ _html(`<a${input.managing ? _attr("href", `/w/${ws$1.id}`) : _attr("href", `/w/${ws$1.id}/manage`)}${_attr_class([rowIcon, { ["_ht"]: input.managing }])} title=${input.managing ? "\"Back to terminal\"" : "\"Manage workspace\""}${input.managing ? " aria-current=page" : ""}>`);
8717
8743
  icon_manage_default({ size: 12 });
8718
8744
  _html(`</a>${_el_resume($scope6_id, "d", _serialize_guard($scope0_reason, 7))}</div>`);
8719
8745
  _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($scope6_id, {
@@ -8723,7 +8749,7 @@ var side_nav_item_default = _template("z", (input) => {
8723
8749
  return 0;
8724
8750
  }
8725
8751
  }, $scope4_id, "k", $sg__input_page, $sg__input_page, 1, 0, 1);
8726
- _html(`</div><div${_attr_class("_io")}>`);
8752
+ _html(`</div><div${_attr_class("_hQ")}>`);
8727
8753
  _if(() => {
8728
8754
  if (sessions$1.length === 1 && openPlan) {
8729
8755
  const $scope12_id = _scope_id();
@@ -8731,7 +8757,7 @@ var side_nav_item_default = _template("z", (input) => {
8731
8757
  const $childScope3 = _peek_scope_id();
8732
8758
  usage_pcts_default({
8733
8759
  agent: openPlan,
8734
- class: "_if"
8760
+ class: "_hH"
8735
8761
  });
8736
8762
  _subscribe($openPlan__closures, writeScope($scope12_id, {
8737
8763
  a: _existing_scope($childScope3),
@@ -8742,14 +8768,14 @@ var side_nav_item_default = _template("z", (input) => {
8742
8768
  }, $scope4_id, "m");
8743
8769
  _for_of(sessions$1.length > 1 ? sessions$1 : [], (s) => {
8744
8770
  const $scope9_id = _scope_id();
8745
- _html(`<div${_attr_class(["_h_", { ["_h1"]: s.id === input.currentTab }])}>`);
8771
+ _html(`<div${_attr_class(["_hB", { ["_hs"]: s.id === input.currentTab }])}>`);
8746
8772
  _if(() => {
8747
8773
  if (renamingId === s.id) {
8748
8774
  const $scope11_id = _scope_id();
8749
8775
  _html(`<span${_attr_class([
8750
8776
  "_y",
8751
8777
  phase[sessionPhase(s.state)],
8752
- "_im"
8778
+ "_hO"
8753
8779
  ])}></span>${_el_resume($scope11_id, "a", $sg__input_sessions)}`);
8754
8780
  _set_serialize_reason({
8755
8781
  1: $sg__input_sessions,
@@ -8759,7 +8785,7 @@ var side_nav_item_default = _template("z", (input) => {
8759
8785
  icon_agent_default({
8760
8786
  agent: activeAgent(s),
8761
8787
  size: 12,
8762
- class: "_iq"
8788
+ class: "_hS"
8763
8789
  });
8764
8790
  _html(`<input${_attr_input_value($scope11_id, "c", renameValue, _resume((_new_renameValue) => {
8765
8791
  renameValue = _new_renameValue;
@@ -8778,9 +8804,9 @@ var side_nav_item_default = _template("z", (input) => {
8778
8804
  icon_agent_default({
8779
8805
  agent: activeAgent(s),
8780
8806
  size: 12,
8781
- class: "_iq"
8807
+ class: "_hS"
8782
8808
  });
8783
- _html(`<span${_attr_class("_ik")}>${_escape(s.title || activeAgent(s))}${_el_resume($scope10_id, "e", $sg__input_sessions)}</span></a>${_el_resume($scope10_id, "a", _serialize_guard($scope0_reason, 5))}<div${_attr_class("_il")}><button${_attr_class(rowIcon)} title="Rename session">`);
8809
+ _html(`<span${_attr_class("_hM")}>${_escape(s.title || activeAgent(s))}${_el_resume($scope10_id, "e", $sg__input_sessions)}</span></a>${_el_resume($scope10_id, "a", _serialize_guard($scope0_reason, 5))}<div${_attr_class("_hN")}><button${_attr_class(rowIcon)} title="Rename session">`);
8784
8810
  icon_edit_default({ size: 12 });
8785
8811
  _html(`</button>${_el_resume($scope10_id, "g")}<button${_attr_class([close, { ["_q"]: armedKill === s.id }])} title=${armedKill === s.id ? "Close?" : "\"Close session\""}>`);
8786
8812
  icon_xmark_default({ size: 12 });
@@ -8792,7 +8818,7 @@ var side_nav_item_default = _template("z", (input) => {
8792
8818
  const $childScope6 = _peek_scope_id();
8793
8819
  usage_pcts_default({
8794
8820
  agent: openPlan,
8795
- class: "_ig"
8821
+ class: "_hI"
8796
8822
  });
8797
8823
  _subscribe($openPlan__closures, writeScope($scope13_id, {
8798
8824
  a: _existing_scope($childScope6),
@@ -9008,28 +9034,28 @@ var side_nav_default = _template("A", (input) => {
9008
9034
  const listIds = isPage ? [ws.id, ...otherIds] : itemIds;
9009
9035
  _html(`<script${_attr_nonce()}>${_escape_script(`
9010
9036
  ${_to_text(`if (matchMedia("(max-width: 899px)").matches) document.documentElement.classList.add("work-no-rail");`)};
9011
- `)}<\/script><aside${_attr_class(["_eG", {
9012
- ["_eE"]: !navOpen,
9013
- ["_eF"]: isPage
9037
+ `)}<\/script><aside${_attr_class(["_fF", {
9038
+ ["_fD"]: !navOpen,
9039
+ ["_fE"]: isPage
9014
9040
  }])}${_attr("hidden", view === "diff")}>`);
9015
9041
  _if(() => {
9016
9042
  if (isPage) {
9017
9043
  const $scope1_id = _scope_id();
9018
- _html(`<header${_attr_class("_eJ")}><div${_attr_class("_eS")}>`);
9044
+ _html(`<header${_attr_class("_fI")}><div${_attr_class("_fR")}>`);
9019
9045
  _if(() => {
9020
9046
  if (input.instanceName) {
9021
9047
  const $scope2_id = _scope_id();
9022
- _html(`<div${_attr_class("_eP")} title="This work server (Settings → Appearance)"><img${_attr_class("_eQ")}${_attr("src", iconSrc)} alt aria-hidden=true>${_el_resume($scope2_id, "b", $sg__input_instanceAccent)}<span${_attr_class("_eR")}>${_escape(input.instanceName)}${_el_resume($scope2_id, "d", $sg__input_instanceName)}</span></div>`);
9048
+ _html(`<div${_attr_class("_fO")} title="This work server (Settings → Appearance)"><img${_attr_class("_fP")}${_attr("src", iconSrc)} alt aria-hidden=true>${_el_resume($scope2_id, "b", $sg__input_instanceAccent)}<span${_attr_class("_fQ")}>${_escape(input.instanceName)}${_el_resume($scope2_id, "d", $sg__input_instanceName)}</span></div>`);
9023
9049
  _subscribe($si__input_instanceAccent && $iconSrc__closures, _subscribe($si__input_instanceName && $input_instanceName__closures, writeScope($scope2_id, { _: _scope_with_id($scope1_id) })));
9024
9050
  return 0;
9025
9051
  }
9026
9052
  }, $scope1_id, "c", $sg__input_instanceName, $sg__input_instanceName, 1, 0, 1);
9027
- _html(`<h1${_attr_class("_eK")}>Workspaces</h1></div><div${_attr_class("_eL")}>`);
9053
+ _html(`<h1${_attr_class("_fJ")}>Workspaces</h1></div><div${_attr_class("_fK")}>`);
9028
9054
  _if(() => {}, $scope1_id, "f", 1, 1, 1, 0, 1);
9029
9055
  _html(`<a${view === "settings" ? _attr("href", backHref) : " href=/settings"}${_attr_class([
9030
9056
  iconBtn,
9031
- "_eM",
9032
- { ["_eB"]: view === "settings" }
9057
+ "_fL",
9058
+ { ["_fA"]: view === "settings" }
9033
9059
  ])} title=${view === "settings" ? "\"Back to workspace\"" : "Settings"}${view === "settings" ? " aria-current=page" : ""}>`);
9034
9060
  icon_settings_default({ size: 16 });
9035
9061
  _if(() => {
@@ -9048,18 +9074,18 @@ var side_nav_default = _template("A", (input) => {
9048
9074
  _if(() => {
9049
9075
  if (!isPage && input.instanceName) {
9050
9076
  const $scope3_id = _scope_id();
9051
- _html(`<div${_attr_class("_eP")} title="This work server (Settings → Appearance)"><img${_attr_class("_eQ")}${_attr("src", iconSrc)} alt aria-hidden=true>${_el_resume($scope3_id, "b", $sg__input_instanceAccent)}<span${_attr_class("_eR")}>${_escape(input.instanceName)}${_el_resume($scope3_id, "d", $sg__input_instanceName)}</span></div>`);
9077
+ _html(`<div${_attr_class("_fO")} title="This work server (Settings → Appearance)"><img${_attr_class("_fP")}${_attr("src", iconSrc)} alt aria-hidden=true>${_el_resume($scope3_id, "b", $sg__input_instanceAccent)}<span${_attr_class("_fQ")}>${_escape(input.instanceName)}${_el_resume($scope3_id, "d", $sg__input_instanceName)}</span></div>`);
9052
9078
  writeScope($scope3_id, {});
9053
9079
  return 0;
9054
9080
  }
9055
9081
  }, $scope0_id, "d", 1, 1, 1, 0, 1);
9056
- _html(`<div${_attr_class("_eT")}>`);
9082
+ _html(`<div${_attr_class("_fS")}>`);
9057
9083
  _for_of(listIds, (wsId) => {
9058
9084
  const $scope4_id = _scope_id();
9059
9085
  _if(() => {
9060
9086
  if (isPage && wsId === ws.id) {
9061
9087
  const $scope13_id = _scope_id();
9062
- _html(`<h2${_attr_class(["_bS", "_eN"])}>Current</h2>`);
9088
+ _html(`<h2${_attr_class(["_bT", "_fM"])}>Current</h2>`);
9063
9089
  writeScope($scope13_id, {});
9064
9090
  return 0;
9065
9091
  }
@@ -9067,7 +9093,7 @@ var side_nav_default = _template("A", (input) => {
9067
9093
  _if(() => {
9068
9094
  if (isPage && wsId !== ws.id && wsId === otherIds[0]) {
9069
9095
  const $scope14_id = _scope_id();
9070
- _html(`<h2${_attr_class(["_bS", "_eN"])}>Other workspaces</h2>`);
9096
+ _html(`<h2${_attr_class(["_bT", "_fM"])}>Other workspaces</h2>`);
9071
9097
  writeScope($scope14_id, {});
9072
9098
  return 0;
9073
9099
  }
@@ -9151,7 +9177,7 @@ var side_nav_default = _template("A", (input) => {
9151
9177
  railHover = null;
9152
9178
  }, 150);
9153
9179
  }, "A6", $scope5_id);
9154
- _html(`<div${_attr_class("_eU")} data-rail>`);
9180
+ _html(`<div${_attr_class("_fT")} data-rail>`);
9155
9181
  _for_of(itemIds, (wsId, i) => {
9156
9182
  const $scope6_id = _scope_id();
9157
9183
  _html("<span>");
@@ -9205,7 +9231,7 @@ var side_nav_default = _template("A", (input) => {
9205
9231
  if (railHover) {
9206
9232
  const $scope7_id = _scope_id();
9207
9233
  const hoverId = railHover.id;
9208
- _html(`<div${_attr_class(["_8", "_eX"])}${_attr_style(`top:${railHover.top}px;left:${railHover.left}px`)}>`);
9234
+ _html(`<div${_attr_class(["_8", "_fW"])}${_attr_style(`top:${railHover.top}px;left:${railHover.left}px`)}>`);
9209
9235
  _set_serialize_reason({
9210
9236
  0: 1,
9211
9237
  1: 1,
@@ -9290,7 +9316,7 @@ var side_nav_default = _template("A", (input) => {
9290
9316
  return 0;
9291
9317
  }
9292
9318
  }, $scope0_id, "f");
9293
- _html(`<div${_attr_class("_eV")}>`);
9319
+ _html(`<div${_attr_class("_fU")}>`);
9294
9320
  _if(() => {
9295
9321
  if (isPage) {
9296
9322
  const $scope9_id = _scope_id();
@@ -9298,7 +9324,7 @@ var side_nav_default = _template("A", (input) => {
9298
9324
  "_o",
9299
9325
  "_p",
9300
9326
  btnLg,
9301
- "_eO"
9327
+ "_fN"
9302
9328
  ])} title=${view === "new" ? "\"Back to workspace\"" : "\"New workspace\""}${view === "new" ? " aria-current=page" : ""}>`);
9303
9329
  icon_folder_plus_default({ size: 16 });
9304
9330
  _html(` New workspace</a>${_el_resume($scope9_id, "a")}`);
@@ -9320,9 +9346,9 @@ var side_nav_default = _template("A", (input) => {
9320
9346
  return 1;
9321
9347
  }
9322
9348
  }, $scope8_id, "a", 1, 1, 1, "</button>", 1);
9323
- _html(`<div${_attr_class(["_x", "_eW"])}></div>`);
9349
+ _html(`<div${_attr_class(["_x", "_fV"])}></div>`);
9324
9350
  _if(() => {}, $scope8_id, "c", 1, 1, 1, 0, 1);
9325
- _html(`<a${view === "settings" ? _attr("href", backHref) : " href=/settings"}${_attr_class([iconBtn, { ["_eB"]: view === "settings" }])} title=${view === "settings" ? "\"Back to workspace\"" : "Settings"}${view === "settings" ? " aria-current=page" : ""}>`);
9351
+ _html(`<a${view === "settings" ? _attr("href", backHref) : " href=/settings"}${_attr_class([iconBtn, { ["_fA"]: view === "settings" }])} title=${view === "settings" ? "\"Back to workspace\"" : "Settings"}${view === "settings" ? " aria-current=page" : ""}>`);
9326
9352
  icon_settings_default({});
9327
9353
  _if(() => {
9328
9354
  if (input.setupReady === false) {
@@ -9332,7 +9358,7 @@ var side_nav_default = _template("A", (input) => {
9332
9358
  return 0;
9333
9359
  }
9334
9360
  }, $scope8_id, "f", $sg__input_setupReady, $sg__input_setupReady, 1, 0, 1);
9335
- _html(`</a>${_el_resume($scope8_id, "d")}<a${view === "new" ? _attr("href", backHref) : " href=/new"}${_attr_class([iconBtn, { ["_eB"]: view === "new" }])} title=${view === "new" ? "\"Back to workspace\"" : "\"New workspace\""}${view === "new" ? " aria-current=page" : ""}>`);
9361
+ _html(`</a>${_el_resume($scope8_id, "d")}<a${view === "new" ? _attr("href", backHref) : " href=/new"}${_attr_class([iconBtn, { ["_fA"]: view === "new" }])} title=${view === "new" ? "\"Back to workspace\"" : "\"New workspace\""}${view === "new" ? " aria-current=page" : ""}>`);
9336
9362
  icon_folder_plus_default({ size: 16 });
9337
9363
  _html(`</a>${_el_resume($scope8_id, "g")}`);
9338
9364
  _script($scope8_id, "A15");
@@ -9402,9 +9428,9 @@ var side_nav_default = _template("A", (input) => {
9402
9428
  });
9403
9429
  //#endregion
9404
9430
  //#region src/tags/manage-workspace.css.ts
9405
- var content = "_eY _bw";
9406
- var pageMeta = "_eZ _bB";
9407
- var pathMeta = "_e2 _w";
9431
+ var content = "_eB _bx";
9432
+ var pageMeta = "_eC _bC";
9433
+ var pathMeta = "_eF _w";
9408
9434
  //#endregion
9409
9435
  //#region src/tags/icons/icon-clipboard.marko
9410
9436
  var icon_clipboard_default = _template("V", (input) => {
@@ -9579,7 +9605,7 @@ var manage_workspace_default = _template("q", (input) => {
9579
9605
  setTimeout(() => loadProcs(void 0), 500);
9580
9606
  }, "q9", $scope0_id);
9581
9607
  const titleId = _id();
9582
- _html(`<div${_attr_class("_bu")} role=region${_attr("aria-labelledby", titleId)}><div${_attr_class("_bv")}><div${_attr_class(content)}>`);
9608
+ _html(`<div${_attr_class("_bv")} role=region${_attr("aria-labelledby", titleId)}><div${_attr_class("_bw")}><div${_attr_class(content)}>`);
9583
9609
  _set_serialize_reason(286);
9584
9610
  let $actions;
9585
9611
  if (ws.repos.length) $actions = attrTag({ content: _content_resume("q18", () => {
@@ -9615,7 +9641,7 @@ var manage_workspace_default = _template("q", (input) => {
9615
9641
  meta: attrTag({ content: _content_resume("q17", () => {
9616
9642
  _scope_reason();
9617
9643
  const $scope15_id = _scope_id();
9618
- _html(`<span${_attr_class(pageMeta)}${_attr("title", ws.display_path || ws.path)}><span${_attr_class("_e0")}>${_escape(ws.name)}${_el_resume($scope15_id, "c")}</span>`);
9644
+ _html(`<span${_attr_class(pageMeta)}${_attr("title", ws.display_path || ws.path)}><span${_attr_class("_eD")}>${_escape(ws.name)}${_el_resume($scope15_id, "c")}</span>`);
9619
9645
  _if(() => {
9620
9646
  if (ws.status !== "active") {
9621
9647
  const $scope19_id = _scope_id();
@@ -9624,7 +9650,7 @@ var manage_workspace_default = _template("q", (input) => {
9624
9650
  return 0;
9625
9651
  }
9626
9652
  }, $scope15_id, "d", 1, 1, 1, 0, 1);
9627
- _html(`<span${_attr_class("_e1")} aria-hidden=true>·</span><span${_attr_class(pathMeta)}>${_escape(ws.display_path || ws.path)}${_el_resume($scope15_id, "g")}</span></span>${_el_resume($scope15_id, "a")}`);
9653
+ _html(`<span${_attr_class("_eE")} aria-hidden=true>·</span><span${_attr_class(pathMeta)}>${_escape(ws.display_path || ws.path)}${_el_resume($scope15_id, "g")}</span></span>${_el_resume($scope15_id, "a")}`);
9628
9654
  _subscribe($ws_status__closures, _subscribe($ws_path__closures, _subscribe($ws_display_path__closures, _subscribe($ws_name__closures, writeScope($scope15_id, { _: _scope_with_id($scope0_id) })))));
9629
9655
  _resume_branch($scope15_id);
9630
9656
  }, $scope0_id) })
@@ -9652,34 +9678,34 @@ var manage_workspace_default = _template("q", (input) => {
9652
9678
  _if(() => {
9653
9679
  if (pendingAction && actionStep) {
9654
9680
  const $scope11_id = _scope_id();
9655
- _html(`<p${_attr_class("_bD")}><span${_attr_class("_E")}></span><!>${_escape(actionStep)}${_el_resume($scope11_id, "c")}</p>`);
9681
+ _html(`<p${_attr_class("_bE")}><span${_attr_class("_E")}></span><!>${_escape(actionStep)}${_el_resume($scope11_id, "c")}</p>`);
9656
9682
  writeScope($scope11_id, {});
9657
9683
  return 0;
9658
9684
  }
9659
9685
  }, $scope0_id, "f", 1, 1, 1, 0, 1);
9660
- _html(`<section${_attr_class("_bE")}><div${_attr_class("_bF")}><h2${_attr_class("_bS")}>Workspace</h2></div><div${_attr_class(["_bJ", "_cy"])}><div${_attr_class(["_cz", "_cA"])}>`);
9686
+ _html(`<section${_attr_class("_bF")}><div${_attr_class("_bG")}><h2${_attr_class("_bT")}>Workspace</h2></div><div${_attr_class(["_bK", "_cz"])}><div${_attr_class(["_cA", "_cB"])}>`);
9661
9687
  _if(() => {
9662
9688
  if (ws.status === "active") {
9663
9689
  const $scope8_id = _scope_id();
9664
- _html(`<span${_attr_class("_cB")}>Archive</span><span${_attr_class("_cC")}>Hides the workspace from the list; its worktrees stay on disk.</span><button type=button${_attr_class(btnSm)}${_attr("disabled", !!pendingAction)}>${pendingAction === "archive" ? "Archiving…" : "Archive"}${_el_resume($scope8_id, "d")}</button>${_el_resume($scope8_id, "c")}`);
9690
+ _html(`<span${_attr_class("_cD")}>Hide from the list. Worktrees stay on disk.</span><button type=button${_attr_class(btnSm)}${_attr("disabled", !!pendingAction)}>${pendingAction === "archive" ? "Archiving…" : "Archive"}${_el_resume($scope8_id, "c")}</button>${_el_resume($scope8_id, "b")}`);
9665
9691
  _script($scope8_id, "q20");
9666
9692
  writeScope($scope8_id, {});
9667
9693
  return 0;
9668
9694
  } else {
9669
9695
  const $scope9_id = _scope_id();
9670
- _html(`<span${_attr_class("_cB")}>Archived</span><span${_attr_class("_cC")}>Hidden from the list; restore to bring it back.</span><button type=button${_attr_class([btnSm, "_p"])}${_attr("disabled", !!pendingAction)}>${pendingAction === "restore" ? "Restoring…" : "Restore"}${_el_resume($scope9_id, "d")}</button>${_el_resume($scope9_id, "c")}`);
9696
+ _html(`<span${_attr_class("_cD")}>Archived and hidden from the list.</span><button type=button${_attr_class([btnSm, "_p"])}${_attr("disabled", !!pendingAction)}>${pendingAction === "restore" ? "Restoring…" : "Restore"}${_el_resume($scope9_id, "c")}</button>${_el_resume($scope9_id, "b")}`);
9671
9697
  _script($scope9_id, "q21");
9672
9698
  writeScope($scope9_id, {});
9673
9699
  return 1;
9674
9700
  }
9675
9701
  }, $scope0_id, "k", 1, 1, 1, "</div>");
9676
- _html(`<div${_attr_class(["_cz", "_cA"])}><span${_attr_class("_cB")}>Delete</span><span${_attr_class("_cC")}>Removes the workspace and its worktrees. Branches on origin stay.</span><button type=button${_attr_class([
9702
+ _html(`<div${_attr_class(["_cA", "_cB"])}><span${_attr_class("_cD")}>Remove the workspace and its worktrees. Branches on origin stay.</span><button type=button${_attr_class([
9677
9703
  btnSm,
9678
9704
  "_r",
9679
9705
  { ["_q"]: confirmingDelete }
9680
- ])}${_attr("disabled", !!pendingAction)}>${pendingAction === "delete" ? "Deleting…" : "Delete"}${_el_resume($scope0_id, "p")}</button>${_el_resume($scope0_id, "o")}</div></div></section><section${_attr_class("_bE")}><div${_attr_class("_bF")}><h2${_attr_class("_bS")}>Repos</h2><span${_attr_class(sectionCount)}>${_escape(ws.repos.length)}${_el_resume($scope0_id, "u")}</span><div${_attr_class("_x")}></div><button${_attr_class(btnSm)}${_attr("hidden", addingRepo)}>`);
9681
- icon_plus_default({ size: 12 });
9682
- _html(` Add</button>${_el_resume($scope0_id, "w")}`);
9706
+ ])}${_attr("disabled", !!pendingAction)}>${pendingAction === "delete" ? "Deleting…" : "Delete"}${_el_resume($scope0_id, "o")}</button>${_el_resume($scope0_id, "n")}</div></div></section><section${_attr_class("_bF")}><div${_attr_class("_bG")}><h2${_attr_class("_bT")}>Repos</h2><span${_attr_class(sectionCount)}>${_escape(ws.repos.length)}${_el_resume($scope0_id, "t")}</span><div${_attr_class("_x")}></div><button${_attr_class(iconBtnRow)} title="Add repo" aria-label="Add repo"${_attr("hidden", addingRepo)}>`);
9707
+ icon_plus_default({ size: 16 });
9708
+ _html(`</button>${_el_resume($scope0_id, "v")}`);
9683
9709
  _set_serialize_reason(66);
9684
9710
  const $childScope2 = _peek_scope_id();
9685
9711
  let refreshCatalog = repo_picker_default({
@@ -9699,7 +9725,7 @@ var manage_workspace_default = _template("q", (input) => {
9699
9725
  catalogRefreshing = busy;
9700
9726
  }, "q15", $scope0_id)
9701
9727
  });
9702
- _var($scope0_id, "z", $childScope2, "q22");
9728
+ _var($scope0_id, "y", $childScope2, "q22");
9703
9729
  _html(`<button${_attr_class(iconBtn$1)} title="Refresh repo list" aria-label="Refresh repo list"${_attr("disabled", catalogRefreshing)}>`);
9704
9730
  _set_serialize_reason(1);
9705
9731
  const $childScope3 = _peek_scope_id();
@@ -9707,14 +9733,14 @@ var manage_workspace_default = _template("q", (input) => {
9707
9733
  size: 14,
9708
9734
  class: catalogRefreshing && "_D"
9709
9735
  });
9710
- _html(`</button>${_el_resume($scope0_id, "a0")}</div><ul${_attr_class([
9711
- "_bJ",
9712
- "_cy",
9713
- "_cM"
9736
+ _html(`</button>${_el_resume($scope0_id, "z")}</div><ul${_attr_class([
9737
+ "_bK",
9738
+ "_cz",
9739
+ "_cN"
9714
9740
  ])}>`);
9715
9741
  _for_of(ws.repos, (row) => {
9716
9742
  const $scope1_id = _scope_id();
9717
- _html(`<li${_attr_class(flatCardRow)}><div${_attr_class("_bK")}><span${_attr_class(["_bL", "_w"])}>${_escape(row.worktree)}${_el_resume($scope1_id, "d")}/</span><span${_attr_class("_bM")}><a${_attr_class(["_bN", "_I"])}${_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")}`);
9743
+ _html(`<li${_attr_class(flatCardRow)}><div${_attr_class("_bL")}><span${_attr_class(["_bM", "_w"])}>${_escape(row.worktree)}${_el_resume($scope1_id, "d")}/</span><span${_attr_class("_bN")}><a${_attr_class(["_bO", "_I"])}${_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")}`);
9718
9744
  _if(() => {
9719
9745
  if (row.base_branch !== row.default_branch) {
9720
9746
  const $scope22_id = _scope_id();
@@ -9735,7 +9761,7 @@ var manage_workspace_default = _template("q", (input) => {
9735
9761
  } else {
9736
9762
  const $scope10_id = _scope_id();
9737
9763
  _html(`<button${_attr_class([
9738
- "_bO",
9764
+ "_bP",
9739
9765
  "_6",
9740
9766
  "_7",
9741
9767
  { ["_q"]: confirmingRemove === row.full_name }
@@ -9765,27 +9791,27 @@ var manage_workspace_default = _template("q", (input) => {
9765
9791
  m: row?.full_name,
9766
9792
  o: row?.base_branch
9767
9793
  });
9768
- }, "full_name", $scope0_id, "a3", 1, 1, 1, 0, 1);
9794
+ }, "full_name", $scope0_id, "a2", 1, 1, 1, 0, 1);
9769
9795
  _for_of([...busy].filter((n) => !inWorkspace.has(n)), (name) => {
9770
9796
  const $scope26_id = _scope_id();
9771
- _html(`<li${_attr_class([flatCardRow, "_bI"])}><span${_attr_class("_E")}></span><div${_attr_class("_bK")}><span${_attr_class("_bN")}>Adding <!>${_escape(name)}${_el_resume($scope26_id, "e")}…</span></div></li>`);
9797
+ _html(`<li${_attr_class([flatCardRow, "_bJ"])}><span${_attr_class("_E")}></span><div${_attr_class("_bL")}><span${_attr_class("_bO")}>Adding <!>${_escape(name)}${_el_resume($scope26_id, "e")}…</span></div></li>`);
9772
9798
  writeScope($scope26_id, {});
9773
- }, (n) => n, $scope0_id, "a4", 1, 1, 1, 0, 1);
9799
+ }, (n) => n, $scope0_id, "a3", 1, 1, 1, 0, 1);
9774
9800
  _if(() => {
9775
9801
  if (!ws.repos.length && !busy.size) {
9776
9802
  const $scope27_id = _scope_id();
9777
- _html(`<li${_attr_class(flatCardRow)}><span${_attr_class("_bN")}>No repos yet. Add one to start.</span></li>`);
9803
+ _html(`<li${_attr_class(flatCardRow)}><span${_attr_class("_bO")}>No repos yet. Add one to start.</span></li>`);
9778
9804
  writeScope($scope27_id, {});
9779
9805
  return 0;
9780
9806
  }
9781
- }, $scope0_id, "a5", 1, 1, 1, 0, 1);
9807
+ }, $scope0_id, "a4", 1, 1, 1, 0, 1);
9782
9808
  const wsSkills = skills?.workspace || [];
9783
9809
  const repoSkills = (skills?.repo || []).filter((s) => !wsSkills.some((w) => w.id === s.id));
9784
9810
  _html("</ul></section>");
9785
9811
  _if(() => {
9786
9812
  if (wsSkills.length || repoSkills.length) {
9787
9813
  const $scope2_id = _scope_id();
9788
- _html(`<section${_attr_class("_bE")}><div${_attr_class("_bF")}><h2${_attr_class("_bS")}>Skills</h2>`);
9814
+ _html(`<section${_attr_class("_bF")}><div${_attr_class("_bG")}><h2${_attr_class("_bT")}>Skills</h2>`);
9789
9815
  _if(() => {
9790
9816
  if (wsSkills.length) {
9791
9817
  const $scope28_id = _scope_id();
@@ -9794,7 +9820,7 @@ var manage_workspace_default = _template("q", (input) => {
9794
9820
  return 0;
9795
9821
  }
9796
9822
  }, $scope2_id, "d", 1, 1, 1, 0, 1);
9797
- _html(`</div><ul${_attr_class("_cr")}>`);
9823
+ _html(`</div><ul${_attr_class("_cj")}>`);
9798
9824
  _for_of(wsSkills, (s) => {
9799
9825
  const $scope3_id = _scope_id();
9800
9826
  const $for_content2__s_worktree__closures = /* @__PURE__ */ new Set();
@@ -9902,7 +9928,7 @@ var manage_workspace_default = _template("q", (input) => {
9902
9928
  _if(() => {
9903
9929
  if (repoSkills.length) {
9904
9930
  const $scope4_id = _scope_id();
9905
- _html(`<ul${_attr_class("_cr")}>`);
9931
+ _html(`<ul${_attr_class("_cj")}>`);
9906
9932
  _for_of(repoSkills, (s) => {
9907
9933
  const $scope5_id = _scope_id();
9908
9934
  const $for_content3__s_shadows__closures = /* @__PURE__ */ new Set();
@@ -9942,7 +9968,7 @@ var manage_workspace_default = _template("q", (input) => {
9942
9968
  k: $for_content3__s_shadows__closures,
9943
9969
  j: $for_content3__s_name__closures,
9944
9970
  a: _existing_scope($childScope5),
9945
- Cc7: 1
9971
+ Cc6: 1
9946
9972
  }));
9947
9973
  }, (s) => `${s.worktree}/${s.id}`, $scope4_id, "a", 1, 1, 1, "</ul>", 1);
9948
9974
  _subscribe($repoSkills__closures, writeScope($scope4_id, {}));
@@ -9953,27 +9979,27 @@ var manage_workspace_default = _template("q", (input) => {
9953
9979
  writeScope($scope2_id, {});
9954
9980
  return 0;
9955
9981
  }
9956
- }, $scope0_id, "a6", 1, 1, 1, 0, 1);
9982
+ }, $scope0_id, "a5", 1, 1, 1, 0, 1);
9957
9983
  const running = procs || [];
9958
9984
  _if(() => {
9959
9985
  if (running.length) {
9960
9986
  const $scope17_id = _scope_id();
9961
- _html(`<section${_attr_class("_bE")}><div${_attr_class("_bF")}><h2${_attr_class("_bS")}>Running</h2><span${_attr_class(sectionCount)}>${_escape(running.length)}${_el_resume($scope17_id, "e")}</span></div><ul${_attr_class([
9962
- "_bJ",
9963
- "_cy",
9964
- "_cM"
9987
+ _html(`<section${_attr_class("_bF")}><div${_attr_class("_bG")}><h2${_attr_class("_bT")}>Running</h2><span${_attr_class(sectionCount)}>${_escape(running.length)}${_el_resume($scope17_id, "e")}</span></div><ul${_attr_class([
9988
+ "_bK",
9989
+ "_cz",
9990
+ "_cN"
9965
9991
  ])}>`);
9966
9992
  _for_of(running, (p) => {
9967
9993
  const $scope18_id = _scope_id();
9968
- _html(`<li${_attr_class(flatCardRow)}><div${_attr_class("_bK")}${_attr("title", p.args)}><span${_attr_class([
9969
- "_bL",
9994
+ _html(`<li${_attr_class(flatCardRow)}><div${_attr_class("_bL")}${_attr("title", p.args)}><span${_attr_class([
9995
+ "_bM",
9970
9996
  "_w",
9971
- "_e3"
9997
+ "_eG"
9972
9998
  ])}>${_escape(p.cmd)}${_el_resume($scope18_id, "d")}</span>`);
9973
9999
  _if(() => {
9974
10000
  if (p.ports.length) {
9975
10001
  const $scope36_id = _scope_id();
9976
- _html(`<span${_attr_class("_bM")}>`);
10002
+ _html(`<span${_attr_class("_bN")}>`);
9977
10003
  _for_of(p.ports, (port) => {
9978
10004
  const $scope37_id = _scope_id();
9979
10005
  _html(`<button${_attr_class(["_s", "_I"])}${_attr("title", `Open http://${typeof location === "undefined" ? "localhost" : location.hostname}:${port}`)}>:<!>${_escape(port)}${_el_resume($scope37_id, "b")}</button>${_el_resume($scope37_id, "a")}`);
@@ -9984,7 +10010,7 @@ var manage_workspace_default = _template("q", (input) => {
9984
10010
  return 0;
9985
10011
  }
9986
10012
  }, $scope18_id, "e", 1, 1, 1, 0, 1);
9987
- _html(`</div>${_el_resume($scope18_id, "b")}<button${_attr_class(["_bO", "_6"])} type=button${_attr("title", `Kill process ${p.pid}`)}${_attr("aria-label", `Kill process ${p.pid}`)}>`);
10013
+ _html(`</div>${_el_resume($scope18_id, "b")}<button${_attr_class(["_bP", "_6"])} type=button${_attr("title", `Kill process ${p.pid}`)}${_attr("aria-label", `Kill process ${p.pid}`)}>`);
9988
10014
  icon_xmark_default({ size: 14 });
9989
10015
  _html(`</button>${_el_resume($scope18_id, "f")}</li>`);
9990
10016
  _script($scope18_id, "q31");
@@ -9997,83 +10023,83 @@ var manage_workspace_default = _template("q", (input) => {
9997
10023
  writeScope($scope17_id, {});
9998
10024
  return 0;
9999
10025
  }
10000
- }, $scope0_id, "a7", 1, 1, 1, 0, 1);
10026
+ }, $scope0_id, "a6", 1, 1, 1, 0, 1);
10001
10027
  _html("</div></div></div>");
10002
10028
  _script($scope0_id, "q32");
10003
10029
  _script($scope0_id, "q33");
10004
10030
  writeScope($scope0_id, {
10005
- aa: _serialize_if($scope0_reason, 0) && input.workspace,
10006
- ac: input.workspaceChange,
10007
- ae: input.onDeleted,
10008
- af: input.onExit,
10009
- ai: busy,
10010
- aj: busy?.size,
10011
- ak: error,
10012
- al: pendingAction,
10013
- am: confirmingDelete,
10014
- ap: confirmingRemove,
10015
- aq: actionStep,
10016
- as: skills,
10017
- av: confirmingSkill,
10018
- aw: copied,
10019
- ay: copyTimer.id,
10020
- az: workspace,
10021
- b1: workspace?.name,
10022
- b2: workspace?.origin_branch,
10023
- b3: workspace?.branch,
10024
- b5: workspace?.id,
10025
- b6: workspace?.display_path,
10026
- b7: workspace?.path,
10027
- b8: workspace?.status,
10028
- b9: workspace?.repos?.length,
10029
- ba: invite,
10030
- bb: copyInvite,
10031
- bd: skillSeq.applied,
10032
- be: skillSeq.issued,
10033
- bf: applySkills,
10034
- bg: loadSkills,
10035
- bh: loadProcs,
10036
- bi: inWorkspace,
10037
- bj: setBusy,
10038
- bk: runSkill,
10039
- bl: addRepo,
10040
- bm: removeRepo,
10041
- bn: runAction,
10042
- bo: killProc,
10043
- bq: refreshCatalog,
10044
- br: wsSkills,
10045
- bs: wsSkills.length,
10046
- bt: repoSkills,
10047
- bu: repoSkills?.length,
10048
- bv: running,
10049
- bw: running.length,
10050
- b0: input.workspaceChange || void 0,
10051
- cf: $ws_name__closures,
10052
- ci: $ws_display_path__closures,
10053
- cj: $ws_path__closures,
10054
- ck: $ws_status__closures,
10055
- ce: $copied__closures,
10056
- cg: $ws_origin_branch__closures,
10057
- ch: $ws_branch__closures,
10031
+ a9: _serialize_if($scope0_reason, 0) && input.workspace,
10032
+ ab: input.workspaceChange,
10033
+ ad: input.onDeleted,
10034
+ ae: input.onExit,
10035
+ ah: busy,
10036
+ ai: busy?.size,
10037
+ aj: error,
10038
+ ak: pendingAction,
10039
+ al: confirmingDelete,
10040
+ ao: confirmingRemove,
10041
+ ap: actionStep,
10042
+ ar: skills,
10043
+ au: confirmingSkill,
10044
+ av: copied,
10045
+ ax: copyTimer.id,
10046
+ ay: workspace,
10047
+ b0: workspace?.name,
10048
+ b1: workspace?.origin_branch,
10049
+ b2: workspace?.branch,
10050
+ b4: workspace?.id,
10051
+ b5: workspace?.display_path,
10052
+ b6: workspace?.path,
10053
+ b7: workspace?.status,
10054
+ b8: workspace?.repos?.length,
10055
+ b9: invite,
10056
+ ba: copyInvite,
10057
+ bc: skillSeq.applied,
10058
+ bd: skillSeq.issued,
10059
+ be: applySkills,
10060
+ bf: loadSkills,
10061
+ bg: loadProcs,
10062
+ bh: inWorkspace,
10063
+ bi: setBusy,
10064
+ bj: runSkill,
10065
+ bk: addRepo,
10066
+ bl: removeRepo,
10067
+ bm: runAction,
10068
+ bn: killProc,
10069
+ bp: refreshCatalog,
10070
+ bq: wsSkills,
10071
+ br: wsSkills.length,
10072
+ bs: repoSkills,
10073
+ bt: repoSkills?.length,
10074
+ bu: running,
10075
+ bv: running.length,
10076
+ az: input.workspaceChange || void 0,
10077
+ ce: $ws_name__closures,
10078
+ ch: $ws_display_path__closures,
10079
+ ci: $ws_path__closures,
10080
+ cj: $ws_status__closures,
10081
+ cd: $copied__closures,
10082
+ cf: $ws_origin_branch__closures,
10083
+ cg: $ws_branch__closures,
10058
10084
  d: _existing_scope($childScope),
10059
- c8: $error__closures,
10060
- y: _existing_scope($childScope2),
10061
- a1: _existing_scope($childScope3),
10062
- ca: $confirmingRemove__closures,
10063
- cm: $wsSkills_length__closures,
10064
- cc: $skills__closures,
10065
- cd: $confirmingSkill__closures,
10066
- c7: $busy__closures,
10067
- cn: $repoSkills__closures
10085
+ c7: $error__closures,
10086
+ x: _existing_scope($childScope2),
10087
+ a0: _existing_scope($childScope3),
10088
+ c9: $confirmingRemove__closures,
10089
+ cl: $wsSkills_length__closures,
10090
+ cb: $skills__closures,
10091
+ cc: $confirmingSkill__closures,
10092
+ c6: $busy__closures,
10093
+ cm: $repoSkills__closures
10068
10094
  });
10069
10095
  _resume_branch($scope0_id);
10070
10096
  });
10071
10097
  var kbtn = "_ej _4 _j";
10072
- var sessOpen = "_fh _G";
10073
- var sessRename = "_fl _H";
10074
- var dpadPaste = "_fs _fr";
10075
- var repeat = "_ft _fr";
10076
- var dpadEsc = "_fv _fr";
10098
+ var sessOpen = "_eV _G";
10099
+ var sessRename = "_eZ _H";
10100
+ var dpadPaste = "_e6 _e5";
10101
+ var repeat = "_e7 _e5";
10102
+ var dpadEsc = "_e9 _e5";
10077
10103
  //#endregion
10078
10104
  //#region src/tags/term-find.marko
10079
10105
  var term_find_default = _template("D", (input) => {
@@ -10110,19 +10136,19 @@ var term_find_default = _template("D", (input) => {
10110
10136
  const canStep = hasQuery && open;
10111
10137
  const keybar = input.placement === "keybar";
10112
10138
  _html(`<div${_attr_class([
10113
- "_gK",
10114
- keybar ? "_gM" : "_gL",
10115
- !open && "_gO"
10116
- ])} aria-hidden=${open ? "false" : "true"}><div${_attr_class(["_gF", keybar ? "_gN" : "_gH"])}><input${_attr_input_value($scope0_id, "c", query, _resume(function(v) {
10139
+ "_gM",
10140
+ keybar ? "_gO" : "_gN",
10141
+ !open && "_gQ"
10142
+ ])} aria-hidden=${open ? "false" : "true"}><div${_attr_class(["_gH", keybar ? "_gP" : "_gJ"])}><input${_attr_input_value($scope0_id, "c", query, _resume(function(v) {
10117
10143
  if (!open) return;
10118
10144
  query = v;
10119
10145
  live.query = v;
10120
10146
  run(0);
10121
- }, "D0", $scope0_id))}${_attr_class([findInput, keybar && "_gP"])} 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 && "_gQ"])} title="Previous match"${_attr("disabled", !canStep)} tabindex=${open ? "0" : "-1"}>`);
10147
+ }, "D0", $scope0_id))}${_attr_class([findInput, keybar && "_gR"])} 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 && "_gS"])} title="Previous match"${_attr("disabled", !canStep)} tabindex=${open ? "0" : "-1"}>`);
10122
10148
  icon_arrow_up_default({ size: 14 });
10123
- _html(`</button>${_el_resume($scope0_id, "d")}<button type=button${_attr_class([findIconBtn, keybar && "_gQ"])} title="Next match"${_attr("disabled", !canStep)} tabindex=${open ? "0" : "-1"}>`);
10149
+ _html(`</button>${_el_resume($scope0_id, "d")}<button type=button${_attr_class([findIconBtn, keybar && "_gS"])} title="Next match"${_attr("disabled", !canStep)} tabindex=${open ? "0" : "-1"}>`);
10124
10150
  icon_arrow_down_default({ size: 14 });
10125
- _html(`</button>${_el_resume($scope0_id, "f")}<button type=button${_attr_class([findIconBtn, keybar && "_gQ"])} title="Close find" tabindex=${open ? "0" : "-1"}>`);
10151
+ _html(`</button>${_el_resume($scope0_id, "f")}<button type=button${_attr_class([findIconBtn, keybar && "_gS"])} title="Close find" tabindex=${open ? "0" : "-1"}>`);
10126
10152
  icon_xmark_default({ size: 14 });
10127
10153
  _html(`</button>${_el_resume($scope0_id, "h")}</div>${_el_resume($scope0_id, "b", _serialize_guard($scope0_reason, 2))}</div>${_el_resume($scope0_id, "a")}`);
10128
10154
  _script($scope0_id, "D4");
@@ -10535,7 +10561,7 @@ var term_default = _template("E", (input) => {
10535
10561
  trapOpen = true;
10536
10562
  }
10537
10563
  }, "E14", $scope0_id);
10538
- _html(`<div${_attr("hidden", !onTermPage)}${_attr_class("_e4")}><div${_attr_class("_e5")}></div>${_el_resume($scope0_id, "b")}`);
10564
+ _html(`<div${_attr("hidden", !onTermPage)}${_attr_class("_eH")}><div${_attr_class("_eI")}></div>${_el_resume($scope0_id, "b")}`);
10539
10565
  _if(() => {
10540
10566
  if (findOpen) {
10541
10567
  const $scope12_id = _scope_id();
@@ -10562,7 +10588,7 @@ var term_default = _template("E", (input) => {
10562
10588
  _if(() => {
10563
10589
  if (uploading) {
10564
10590
  const $scope21_id = _scope_id();
10565
- _html(`<div${_attr_class("_fa")}>uploading…</div>`);
10591
+ _html(`<div${_attr_class("_eO")}>uploading…</div>`);
10566
10592
  writeScope($scope21_id, {});
10567
10593
  return 0;
10568
10594
  }
@@ -10570,7 +10596,7 @@ var term_default = _template("E", (input) => {
10570
10596
  _if(() => {
10571
10597
  if (copiedFlash) {
10572
10598
  const $scope22_id = _scope_id();
10573
- _html(`<div${_attr_class("_e_")}>Copied</div>`);
10599
+ _html(`<div${_attr_class("_eN")}>Copied</div>`);
10574
10600
  writeScope($scope22_id, {});
10575
10601
  return 0;
10576
10602
  }
@@ -10579,7 +10605,7 @@ var term_default = _template("E", (input) => {
10579
10605
  _if(() => {
10580
10606
  if (trapOpen) {
10581
10607
  const $scope11_id = _scope_id();
10582
- _html(`<div${_attr_class("_fb")}><div${_attr_class("_fc")}><p${_attr_class("_fw")}>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")}`);
10608
+ _html(`<div${_attr_class("_eP")}><div${_attr_class("_eQ")}><p${_attr_class("_e_")}>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")}`);
10583
10609
  _script($scope11_id, "E26");
10584
10610
  _script($scope11_id, "E27");
10585
10611
  writeScope($scope11_id, {});
@@ -10654,7 +10680,7 @@ var term_default = _template("E", (input) => {
10654
10680
  popEl.style.top = `${Math.max(8, btn.top - popEl.offsetHeight - 8)}px`;
10655
10681
  popEl.style.left = `${Math.max(8, Math.min(btn.left + btn.width / 2 - popEl.offsetWidth / 2, window.innerWidth - popEl.offsetWidth - 8))}px`;
10656
10682
  }, "E20", $scope4_id);
10657
- _html(`<button${_attr_class([kbtn, "_fd"])} title=${onTermPage ? "Sessions" : "\"Back to session\""}${onTermPage ? _attr("popovertarget", sessPopId) : ""}>`);
10683
+ _html(`<button${_attr_class([kbtn, "_eR"])} title=${onTermPage ? "Sessions" : "\"Back to session\""}${onTermPage ? _attr("popovertarget", sessPopId) : ""}>`);
10658
10684
  _set_serialize_reason({
10659
10685
  1: $sg__input_agent__OR__input_sessionState,
10660
10686
  2: $sg__input_agent__OR__input_sessionState
@@ -10668,7 +10694,7 @@ var term_default = _template("E", (input) => {
10668
10694
  "_y",
10669
10695
  "_ba",
10670
10696
  phase[sessionPhase(input.sessionState)]
10671
- ])}></span>${_el_resume($scope4_id, "c", _serialize_guard($scope0_reason, 5))}</button>${_el_resume($scope4_id, "a")}<div${_attr("id", sessPopId)} popover=auto${_attr_class(["_8", "_fe"])}>`);
10697
+ ])}></span>${_el_resume($scope4_id, "c", _serialize_guard($scope0_reason, 5))}</button>${_el_resume($scope4_id, "a")}<div${_attr("id", sessPopId)} popover=auto${_attr_class(["_8", "_eS"])}>`);
10672
10698
  _if(() => {
10673
10699
  if ((input.sessions || []).length > 0) {
10674
10700
  const $scope5_id = _scope_id();
@@ -10684,7 +10710,7 @@ var term_default = _template("E", (input) => {
10684
10710
  const $scope6_id = _scope_id();
10685
10711
  const $for_content__s_agent__closures = /* @__PURE__ */ new Set();
10686
10712
  const $for_content__s_id__closures = /* @__PURE__ */ new Set();
10687
- _html(`<div${_attr_class(["_fg", { ["_ff"]: s.id === input.sessionId }])}>`);
10713
+ _html(`<div${_attr_class(["_eU", { ["_eT"]: s.id === input.sessionId }])}>`);
10688
10714
  _if(() => {
10689
10715
  if (renamingId === s.id) {
10690
10716
  const $scope24_id = _scope_id();
@@ -10716,7 +10742,7 @@ var term_default = _template("E", (input) => {
10716
10742
  agent: activeAgent(s),
10717
10743
  size: 14
10718
10744
  });
10719
- _html(`<span${_attr_class("_fi")}><span${_attr_class("_fk")}>${_escape(s.title || activeAgent(s))}${_el_resume($scope7_id, "f", $sg__input_sessions)}</span>`);
10745
+ _html(`<span${_attr_class("_eW")}><span${_attr_class("_eY")}>${_escape(s.title || activeAgent(s))}${_el_resume($scope7_id, "f", $sg__input_sessions)}</span>`);
10720
10746
  _if(() => {
10721
10747
  if (s.id === input.sessionId) {
10722
10748
  const $scope23_id = _scope_id();
@@ -10728,7 +10754,7 @@ var term_default = _template("E", (input) => {
10728
10754
  const $childScope6 = _peek_scope_id();
10729
10755
  usage_pcts_default({
10730
10756
  agent: plan,
10731
- class: "_fj"
10757
+ class: "_eX"
10732
10758
  });
10733
10759
  writeScope($scope26_id, { a: _existing_scope($childScope6) });
10734
10760
  return 0;
@@ -10745,7 +10771,7 @@ var term_default = _template("E", (input) => {
10745
10771
  _if(() => {
10746
10772
  if (input.onRenameSession) {
10747
10773
  const $scope25_id = _scope_id();
10748
- _html(`<button${_attr_class(["_fm", "_fn"])} title="Rename session">`);
10774
+ _html(`<button${_attr_class(["_e0", "_e1"])} title="Rename session">`);
10749
10775
  icon_edit_default({ size: 12 });
10750
10776
  _html(`</button>${_el_resume($scope25_id, "a")}`);
10751
10777
  _script($scope25_id, "E29");
@@ -10757,7 +10783,7 @@ var term_default = _template("E", (input) => {
10757
10783
  if (input.onCloseSession) {
10758
10784
  const $scope8_id = _scope_id();
10759
10785
  _html(`<button${_attr_class([
10760
- "_fm",
10786
+ "_e0",
10761
10787
  "_6",
10762
10788
  { ["_q"]: armedClose === s.id }
10763
10789
  ])} title=${armedClose === s.id ? "Close?" : "\"Close session\""}>`);
@@ -10799,7 +10825,7 @@ var term_default = _template("E", (input) => {
10799
10825
  return 0;
10800
10826
  }
10801
10827
  }, $scope4_id, "e", $sg__input_sessions, $sg__input_sessions, $sg__input_sessions);
10802
- _html(`<div${_attr_class("_fo")}><span${_attr_class("_fp")}>New session</span>`);
10828
+ _html(`<div${_attr_class("_e2")}><span${_attr_class("_e3")}>New session</span>`);
10803
10829
  _for_of([...input.agents || [], "shell"], (agent) => {
10804
10830
  const $scope9_id = _scope_id();
10805
10831
  _html(`<button${_attr_class(iconBtnRow)}${_attr("title", `New ${agent} session`)}>`);
@@ -10862,7 +10888,7 @@ var term_default = _template("E", (input) => {
10862
10888
  overlay: attrTag({ content: _content_resume("E46", () => {
10863
10889
  _scope_reason();
10864
10890
  const $scope15_id = _scope_id();
10865
- _html(`<div${_attr("id", $dpadId_getter)} popover=auto${_attr_class("_fq")}>`);
10891
+ _html(`<div${_attr("id", $dpadId_getter)} popover=auto${_attr_class("_e4")}>`);
10866
10892
  forOf(DPAD, (row) => {
10867
10893
  const $scope16_id = _scope_id();
10868
10894
  forOf(row, (cell) => {
@@ -10882,7 +10908,7 @@ var term_default = _template("E", (input) => {
10882
10908
  writeScope($scope18_id, { _: _scope_with_id($scope17_id) });
10883
10909
  } else {
10884
10910
  const $scope19_id = _scope_id();
10885
- _html(`<button${_attr_class([repeat, { ["_fu"]: cell.icon === "enter" }])}${_attr("title", cell.label)}${_attr("aria-label", cell.label)}>`);
10911
+ _html(`<button${_attr_class([repeat, { ["_e8"]: cell.icon === "enter" }])}${_attr("title", cell.label)}${_attr("aria-label", cell.label)}>`);
10886
10912
  if (cell.icon === "arrow-up") {
10887
10913
  _scope_id();
10888
10914
  icon_arrow_up_default({ size: 18 });
@@ -11022,7 +11048,7 @@ var work_view_default = _template("I", (input) => {
11022
11048
  let DiffView = null;
11023
11049
  const loadDiffView = _resume(() => {
11024
11050
  if (DiffView) return;
11025
- import("./_DyqUd25V.js").then((m) => {
11051
+ import("./_Dkhw1NHC.js").then((m) => {
11026
11052
  DiffView = m.default;
11027
11053
  });
11028
11054
  }, "I6", $scope0_id);
@@ -11210,10 +11236,10 @@ var work_view_default = _template("I", (input) => {
11210
11236
  toggleDiff();
11211
11237
  }
11212
11238
  }, "I21", $scope0_id);
11213
- _html(`<div${_attr_class(["_cb", {
11214
- ["_b_"]: view === "nav",
11215
- ["_ca"]: !input.active
11216
- }])}><div${_attr_class("_cc")}>`);
11239
+ _html(`<div${_attr_class(["_cc", {
11240
+ ["_ca"]: view === "nav",
11241
+ ["_cb"]: !input.active
11242
+ }])}><div${_attr_class("_cd")}>`);
11217
11243
  _set_serialize_reason({
11218
11244
  0: _serialize_guard($scope0_reason, 0),
11219
11245
  1: 1,
@@ -11282,7 +11308,7 @@ var work_view_default = _template("I", (input) => {
11282
11308
  });
11283
11309
  }, "I30", $scope0_id)
11284
11310
  });
11285
- _html(`</div><div${_attr_class("_cd")}>`);
11311
+ _html(`</div><div${_attr_class("_ce")}>`);
11286
11312
  _if(() => {
11287
11313
  if (error) {
11288
11314
  const $scope9_id = _scope_id();
@@ -11305,7 +11331,7 @@ var work_view_default = _template("I", (input) => {
11305
11331
  _if(() => {
11306
11332
  if (diffMounted && DiffView) {
11307
11333
  const $scope1_id = _scope_id();
11308
- _html(`<div${_attr_class("_ce")}${_attr_or("data-live", view === "diff", "")}${_attr("inert", view !== "diff")}>`);
11334
+ _html(`<div${_attr_class("_cf")}${_attr_or("data-live", view === "diff", "")}${_attr("inert", view !== "diff")}>`);
11309
11335
  _dynamic_tag($scope1_id, "b", DiffView, {
11310
11336
  workspaceId: ws.id,
11311
11337
  workspaceBranch: ws.branch,
@@ -11345,7 +11371,7 @@ var work_view_default = _template("I", (input) => {
11345
11371
  _if(() => {
11346
11372
  if (manageMounted) {
11347
11373
  const $scope2_id = _scope_id();
11348
- _html(`<div${_attr_class("_ce")}${_attr_or("data-live", view === "manage", "")}${_attr("inert", view !== "manage")}>`);
11374
+ _html(`<div${_attr_class("_cf")}${_attr_or("data-live", view === "manage", "")}${_attr("inert", view !== "manage")}>`);
11349
11375
  _set_serialize_reason(_serialize_guard($scope0_reason, 16));
11350
11376
  const $childScope2 = _peek_scope_id();
11351
11377
  manage_workspace_default({
@@ -11368,7 +11394,7 @@ var work_view_default = _template("I", (input) => {
11368
11394
  _if(() => {
11369
11395
  if (settingsMounted) {
11370
11396
  const $scope3_id = _scope_id();
11371
- _html(`<div${_attr_class("_ce")}${_attr_or("data-live", view === "settings", "")}${_attr("inert", view !== "settings")}>`);
11397
+ _html(`<div${_attr_class("_cf")}${_attr_or("data-live", view === "settings", "")}${_attr("inert", view !== "settings")}>`);
11372
11398
  _set_serialize_reason({
11373
11399
  0: _serialize_guard($scope0_reason, 1),
11374
11400
  1: $sg__input_workspace,
@@ -11409,7 +11435,7 @@ var work_view_default = _template("I", (input) => {
11409
11435
  _if(() => {
11410
11436
  if (newMounted) {
11411
11437
  const $scope4_id = _scope_id();
11412
- _html(`<div${_attr_class("_ce")}${_attr_or("data-live", view === "new", "")}${_attr("inert", view !== "new")}>`);
11438
+ _html(`<div${_attr_class("_cf")}${_attr_or("data-live", view === "new", "")}${_attr("inert", view !== "new")}>`);
11413
11439
  _set_serialize_reason({
11414
11440
  0: 1,
11415
11441
  1: $sg__input_allWorkspaces,
@@ -11436,13 +11462,13 @@ var work_view_default = _template("I", (input) => {
11436
11462
  return 0;
11437
11463
  }
11438
11464
  }, $scope0_id, "i", 1, 1, 1, 0, 1);
11439
- _html(`<div${_attr_class(["_cg", { ["_cf"]: view !== "term" }])}>`);
11465
+ _html(`<div${_attr_class(["_ch", { ["_cg"]: view !== "term" }])}>`);
11440
11466
  _if(() => {
11441
11467
  if (shownSessions) {
11442
11468
  const $scope5_id = _scope_id();
11443
11469
  _for_of(input.active ? shownSessions : shownSessions.filter((x) => x.id === curTab), (s) => {
11444
11470
  const $scope6_id = _scope_id();
11445
- _html(`<div${_attr_class("_ch")}${_attr_or("data-live", s.id === curTab, "")}${_attr("inert", s.id !== curTab)}>`);
11471
+ _html(`<div${_attr_class("_ci")}${_attr_or("data-live", s.id === curTab, "")}${_attr("inert", s.id !== curTab)}>`);
11446
11472
  _set_serialize_reason({
11447
11473
  0: 1,
11448
11474
  1: 1,
@@ -11501,7 +11527,7 @@ var work_view_default = _template("I", (input) => {
11501
11527
  _if(() => {
11502
11528
  if (!shownSessions.length && view === "term") {
11503
11529
  const $scope7_id = _scope_id();
11504
- _html(`<div${_attr_class("_bQ")}><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>`);
11530
+ _html(`<div${_attr_class("_bR")}><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>`);
11505
11531
  _script($scope7_id, "I51");
11506
11532
  _subscribe($spawning__closures, _subscribe($si__input_preferred && $input_preferred__closures, writeScope($scope7_id, {})));
11507
11533
  return 0;
@@ -11511,7 +11537,7 @@ var work_view_default = _template("I", (input) => {
11511
11537
  return 0;
11512
11538
  } else {
11513
11539
  const $scope11_id = _scope_id();
11514
- _html(`<p${_attr_class("_bQ")}>Loading sessions…</p>`);
11540
+ _html(`<p${_attr_class("_bR")}>Loading sessions…</p>`);
11515
11541
  writeScope($scope11_id, {});
11516
11542
  return 1;
11517
11543
  }
@@ -16822,6 +16848,81 @@ async function fetch$1(request, platform) {
16822
16848
  }
16823
16849
  }
16824
16850
  //#endregion
16851
+ //#region src/server/port-proxy.ts
16852
+ /**
16853
+ * `<port>.<app host>` (or `<port>-<app host>`) → `localhost:<port>`. A dev server a workspace
16854
+ * started is only reachable on this machine, so the port chip's link is
16855
+ * dead from a phone or any other device that reaches work through a
16856
+ * tunnel. Routing a wildcard hostname to the app port lets work forward
16857
+ * the whole request (HTTP and WebSocket, so HMR works) to the port named
16858
+ * by the leading label. The app keeps running at `/`, which is what
16859
+ * makes this work where a path prefix (`/p/3000/…`) does not: dev servers
16860
+ * emit root-relative asset URLs.
16861
+ *
16862
+ * The Host header is rewritten to `localhost:<port>` — vite and friends
16863
+ * refuse unknown hostnames — with the public host kept in
16864
+ * `X-Forwarded-Host`. Any loopback port except work's own is reachable;
16865
+ * this sits behind the same auth the rest of the app does.
16866
+ */
16867
+ function proxyPort(req) {
16868
+ const host = String(req.headers.host || "");
16869
+ const m = /^(\d{1,5})[.-]([^.:]+)/.exec(host);
16870
+ if (!m || /^\d+$/.test(m[2])) return null;
16871
+ const port = Number(m[1]);
16872
+ if (port < 1 || port > 65535 || port === config.appPort) return null;
16873
+ return port;
16874
+ }
16875
+ function upstreamHeaders(req, port) {
16876
+ const headers = { ...req.headers };
16877
+ headers.host = `localhost:${port}`;
16878
+ headers["x-forwarded-host"] = String(req.headers.host || "");
16879
+ headers["x-forwarded-proto"] = String(req.headers["x-forwarded-proto"] || "") || "http";
16880
+ return headers;
16881
+ }
16882
+ /** True when the request was taken; false leaves it to the app. */
16883
+ function proxyRequest(req, res) {
16884
+ const port = proxyPort(req);
16885
+ if (!port) return false;
16886
+ const up = http.request({
16887
+ host: "127.0.0.1",
16888
+ port,
16889
+ method: req.method,
16890
+ path: req.url,
16891
+ headers: upstreamHeaders(req, port)
16892
+ }, (r) => {
16893
+ res.writeHead(r.statusCode || 502, r.headers);
16894
+ r.pipe(res);
16895
+ });
16896
+ up.on("error", () => {
16897
+ if (!res.headersSent) res.writeHead(502, { "content-type": "text/plain; charset=utf-8" });
16898
+ res.end(`work: nothing is listening on port ${port}`);
16899
+ });
16900
+ req.pipe(up);
16901
+ return true;
16902
+ }
16903
+ /** Same for websocket upgrades: the raw request is replayed to the port
16904
+ * and the two sockets are joined. */
16905
+ function proxyUpgrade(req, socket, head) {
16906
+ const port = proxyPort(req);
16907
+ if (!port) return false;
16908
+ const up = net.connect(port, "127.0.0.1");
16909
+ up.on("connect", () => {
16910
+ const headers = upstreamHeaders(req, port);
16911
+ const lines = [`${req.method} ${req.url} HTTP/${req.httpVersion}`];
16912
+ for (const [name, value] of Object.entries(headers)) for (const v of Array.isArray(value) ? value : [value]) if (v !== void 0) lines.push(`${name}: ${v}`);
16913
+ up.write(lines.join("\r\n") + "\r\n\r\n");
16914
+ if (head.length) up.write(head);
16915
+ socket.pipe(up).pipe(socket);
16916
+ });
16917
+ const drop = () => {
16918
+ socket.destroy();
16919
+ up.destroy();
16920
+ };
16921
+ up.on("error", drop);
16922
+ socket.on("error", drop);
16923
+ return true;
16924
+ }
16925
+ //#endregion
16825
16926
  //#region node_modules/.pnpm/ws@8.21.3/node_modules/ws/lib/constants.js
16826
16927
  var require_constants = /* @__PURE__ */ __commonJSMin(((exports, module) => {
16827
16928
  var BINARY_TYPES = [
@@ -18883,8 +18984,8 @@ var require_extension = /* @__PURE__ */ __commonJSMin(((exports, module) => {
18883
18984
  var require_websocket = /* @__PURE__ */ __commonJSMin(((exports, module) => {
18884
18985
  var EventEmitter$1 = __require("events");
18885
18986
  var https = __require("https");
18886
- var http$1 = __require("http");
18887
- var net = __require("net");
18987
+ var http$2 = __require("http");
18988
+ var net$1 = __require("net");
18888
18989
  var tls = __require("tls");
18889
18990
  var { randomBytes, createHash: createHash$2 } = __require("crypto");
18890
18991
  var { Duplex: Duplex$2, Readable: Readable$1 } = __require("stream");
@@ -19456,7 +19557,7 @@ var require_websocket = /* @__PURE__ */ __commonJSMin(((exports, module) => {
19456
19557
  }
19457
19558
  const defaultPort = isSecure ? 443 : 80;
19458
19559
  const key = randomBytes(16).toString("base64");
19459
- const request = isSecure ? https.request : http$1.request;
19560
+ const request = isSecure ? https.request : http$2.request;
19460
19561
  const protocolSet = /* @__PURE__ */ new Set();
19461
19562
  let perMessageDeflate;
19462
19563
  opts.createConnection = opts.createConnection || (isSecure ? tlsConnect : netConnect);
@@ -19634,7 +19735,7 @@ var require_websocket = /* @__PURE__ */ __commonJSMin(((exports, module) => {
19634
19735
  */
19635
19736
  function netConnect(options) {
19636
19737
  options.path = options.socketPath;
19637
- return net.connect(options);
19738
+ return net$1.connect(options);
19638
19739
  }
19639
19740
  /**
19640
19741
  * Create a `tls.TLSSocket` and initiate a connection.
@@ -19645,7 +19746,7 @@ var require_websocket = /* @__PURE__ */ __commonJSMin(((exports, module) => {
19645
19746
  */
19646
19747
  function tlsConnect(options) {
19647
19748
  options.path = void 0;
19648
- if (!options.servername && options.servername !== "") options.servername = net.isIP(options.host) ? "" : options.host;
19749
+ if (!options.servername && options.servername !== "") options.servername = net$1.isIP(options.host) ? "" : options.host;
19649
19750
  return tls.connect(options);
19650
19751
  }
19651
19752
  /**
@@ -20030,7 +20131,7 @@ var require_subprotocol = /* @__PURE__ */ __commonJSMin(((exports, module) => {
20030
20131
  //#region node_modules/.pnpm/ws@8.21.3/node_modules/ws/lib/websocket-server.js
20031
20132
  var require_websocket_server = /* @__PURE__ */ __commonJSMin(((exports, module) => {
20032
20133
  var EventEmitter = __require("events");
20033
- var http = __require("http");
20134
+ var http$1 = __require("http");
20034
20135
  var { Duplex } = __require("stream");
20035
20136
  var { createHash: createHash$1 } = __require("crypto");
20036
20137
  var extension = require_extension();
@@ -20111,8 +20212,8 @@ var require_websocket_server = /* @__PURE__ */ __commonJSMin(((exports, module)
20111
20212
  };
20112
20213
  if (options.port == null && !options.server && !options.noServer || options.port != null && (options.server || options.noServer) || options.server && options.noServer) throw new TypeError("One and only one of the \"port\", \"server\", or \"noServer\" options must be specified");
20113
20214
  if (options.port != null) {
20114
- this._server = http.createServer((req, res) => {
20115
- const body = http.STATUS_CODES[426];
20215
+ this._server = http$1.createServer((req, res) => {
20216
+ const body = http$1.STATUS_CODES[426];
20116
20217
  res.writeHead(426, {
20117
20218
  "Content-Length": body.length,
20118
20219
  "Content-Type": "text/plain"
@@ -20383,7 +20484,7 @@ var require_websocket_server = /* @__PURE__ */ __commonJSMin(((exports, module)
20383
20484
  * @private
20384
20485
  */
20385
20486
  function abortHandshake(socket, code, message, headers) {
20386
- message = message || http.STATUS_CODES[code];
20487
+ message = message || http$1.STATUS_CODES[code];
20387
20488
  headers = {
20388
20489
  Connection: "close",
20389
20490
  "Content-Type": "text/html",
@@ -20391,7 +20492,7 @@ var require_websocket_server = /* @__PURE__ */ __commonJSMin(((exports, module)
20391
20492
  ...headers
20392
20493
  };
20393
20494
  socket.once("finish", socket.destroy);
20394
- socket.end(`HTTP/1.1 ${code} ${http.STATUS_CODES[code]}\r\n` + Object.keys(headers).map((h) => `${h}: ${headers[h]}`).join("\r\n") + "\r\n\r\n" + message);
20495
+ socket.end(`HTTP/1.1 ${code} ${http$1.STATUS_CODES[code]}\r\n` + Object.keys(headers).map((h) => `${h}: ${headers[h]}`).join("\r\n") + "\r\n\r\n" + message);
20395
20496
  }
20396
20497
  /**
20397
20498
  * Emit a `'wsClientError'` event on a `WebSocketServer` if there is at least
@@ -20563,7 +20664,8 @@ function attachTermServer(server) {
20563
20664
  perMessageDeflate: { threshold: DEFLATE_THRESHOLD }
20564
20665
  });
20565
20666
  server.on("upgrade", (req, socket, head) => {
20566
- if (!(req.url || "").startsWith("/term/")) return;
20667
+ if (proxyPort(req) || !(req.url || "").startsWith("/term/")) return;
20668
+ if (crossOrigin(req.headers)) return socket.destroy();
20567
20669
  wss.handleUpgrade(req, socket, head, (ws) => wss.emit("connection", ws, req));
20568
20670
  });
20569
20671
  wss.on("connection", (ws, req) => {
@@ -20820,7 +20922,9 @@ function send(ws, type, data) {
20820
20922
  function attachEventsServer(server) {
20821
20923
  const wss = new import_websocket_server.default({ noServer: true });
20822
20924
  server.on("upgrade", (req, socket, head) => {
20823
- if ((req.url || "").split("?")[0] !== "/api/events") return;
20925
+ const path = (req.url || "").split("?")[0];
20926
+ if (proxyPort(req) || path !== "/api/events") return;
20927
+ if (crossOrigin(req.headers)) return socket.destroy();
20824
20928
  wss.handleUpgrade(req, socket, head, (ws) => {
20825
20929
  wss.emit("connection", ws, req);
20826
20930
  });
@@ -20846,6 +20950,8 @@ function attachEventsServer(server) {
20846
20950
  //#region src/entry.ts
20847
20951
  var port = Number(process.env.PORT || config.appPort);
20848
20952
  var server = createServer();
20953
+ /** The app proper; a `<port>.` host bypasses it for the port proxy. */
20954
+ var app;
20849
20955
  {
20850
20956
  const { default: compression } = await import("./_B9zhiogp.js").then((m) => /* @__PURE__ */ __toESM(m.default, 1));
20851
20957
  const { default: serveStatic } = await import("./_JcAWG3K1.js").then((m) => /* @__PURE__ */ __toESM(m.default, 1));
@@ -20907,7 +21013,7 @@ var server = createServer();
20907
21013
  maxAge: "365 days",
20908
21014
  setHeaders: brotliHeaders
20909
21015
  });
20910
- server.on("request", (req, res) => compress(req, res, () => {
21016
+ app = (req, res) => compress(req, res, () => {
20911
21017
  const url = req.url || "";
20912
21018
  const pathname = url.split("?")[0];
20913
21019
  const brotli = takesBrotli(req);
@@ -20922,11 +21028,15 @@ var server = createServer();
20922
21028
  if (brotli) req.url = withBrotli(url, pathname.slice(1));
20923
21029
  servePublic(req, res, () => middleware(req, res));
20924
21030
  }
20925
- }));
21031
+ });
20926
21032
  }
21033
+ server.on("request", (req, res) => {
21034
+ if (!proxyRequest(req, res)) app(req, res);
21035
+ });
20927
21036
  attachTermServer(server);
20928
21037
  attachEventsServer(server);
20929
- server.on("upgrade", (req, socket) => {
21038
+ server.on("upgrade", (req, socket, head) => {
21039
+ if (proxyUpgrade(req, socket, head)) return;
20930
21040
  const path = (req.url || "").split("?")[0];
20931
21041
  if (path.startsWith("/term/") || path === "/api/events") return;
20932
21042
  socket.destroy();
@@ -20937,4 +21047,4 @@ server.listen(port, () => {
20937
21047
  //#endregion
20938
21048
  export {};
20939
21049
 
20940
- ;var __MARKO_MANIFEST__={"AA0T2xt":{"block":[2,"stylesheet#/assets/app-page-D93IyHzW.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-D93IyHzW.css\"",">"],"defer":[2,"/assets/settings-D-2OVF74.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/settings-D-2OVF74.js\"","></script>",2,"modulepreload#/assets/_CLWE-Z1K.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_CLWE-Z1K.js\"",">"]},"ibphXY4":{"block":[2,"stylesheet#/assets/app-page-D93IyHzW.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-D93IyHzW.css\"",">"],"defer":[2,"/assets/w._-D-2OVF74.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/w._-D-2OVF74.js\"","></script>",2,"modulepreload#/assets/_CLWE-Z1K.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_CLWE-Z1K.js\"",">"]},"T$MNY0k":{"block":[2,"stylesheet#/assets/app-page-D93IyHzW.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-D93IyHzW.css\"",">"],"defer":[2,"/assets/w._-BprceT9I.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/w._-BprceT9I.js\"","></script>",2,"modulepreload#/assets/_CLWE-Z1K.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_CLWE-Z1K.js\"",">"]},"ZLT8joi":{"block":[2,"stylesheet#/assets/app-page-D93IyHzW.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-D93IyHzW.css\"",">"],"defer":[2,"/assets/new-D-2OVF74.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/new-D-2OVF74.js\"","></script>",2,"modulepreload#/assets/_CLWE-Z1K.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_CLWE-Z1K.js\"",">"]},"LH2lXAg":{"block":[2,"stylesheet#/assets/app-page-D93IyHzW.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-D93IyHzW.css\"",">"],"defer":[2,"/assets/w-D-2OVF74.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/w-D-2OVF74.js\"","></script>",2,"modulepreload#/assets/_CLWE-Z1K.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_CLWE-Z1K.js\"",">"]}};
21050
+ ;var __MARKO_MANIFEST__={"ibphXY4":{"block":[2,"stylesheet#/assets/app-page-DhekpIyo.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-DhekpIyo.css\"",">"],"defer":[2,"/assets/w._-DAfon2Hw.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/w._-DAfon2Hw.js\"","></script>",2,"modulepreload#/assets/_CpJVAK8n.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_CpJVAK8n.js\"",">"]},"AA0T2xt":{"block":[2,"stylesheet#/assets/app-page-DhekpIyo.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-DhekpIyo.css\"",">"],"defer":[2,"/assets/settings-DAfon2Hw.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/settings-DAfon2Hw.js\"","></script>",2,"modulepreload#/assets/_CpJVAK8n.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_CpJVAK8n.js\"",">"]},"T$MNY0k":{"block":[2,"stylesheet#/assets/app-page-DhekpIyo.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-DhekpIyo.css\"",">"],"defer":[2,"/assets/w._-C05PxvAg.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/w._-C05PxvAg.js\"","></script>",2,"modulepreload#/assets/_CpJVAK8n.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_CpJVAK8n.js\"",">"]},"ZLT8joi":{"block":[2,"stylesheet#/assets/app-page-DhekpIyo.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-DhekpIyo.css\"",">"],"defer":[2,"/assets/new-DAfon2Hw.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/new-DAfon2Hw.js\"","></script>",2,"modulepreload#/assets/_CpJVAK8n.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_CpJVAK8n.js\"",">"]},"LH2lXAg":{"block":[2,"stylesheet#/assets/app-page-DhekpIyo.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/app-page-DhekpIyo.css\"",">"],"defer":[2,"/assets/w-DAfon2Hw.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/w-DAfon2Hw.js\"","></script>",2,"modulepreload#/assets/_CpJVAK8n.js",6,"<link",0," rel=\"modulepreload\" crossorigin href=\"",1,"assets/_CpJVAK8n.js\"",">"]}};