@dylanpiercey/work 0.0.37 → 0.0.39

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 (157) hide show
  1. package/README.md +4 -1
  2. package/dist/index.mjs +580 -633
  3. package/dist/public/assets/{_CFlhxTwD.js → _0YVFvNq7.js} +2 -2
  4. package/dist/public/assets/{_CFlhxTwD.js.map → _0YVFvNq7.js.map} +1 -1
  5. package/dist/public/assets/{_DeL04cfO2.js → _3_h0JIqF2.js} +2 -2
  6. package/dist/public/assets/{_DeL04cfO2.js.map → _3_h0JIqF2.js.map} +1 -1
  7. package/dist/public/assets/{_BS-0-1w-.js → _8FQvJvvC.js} +2 -2
  8. package/dist/public/assets/{_BS-0-1w-.js.map → _8FQvJvvC.js.map} +1 -1
  9. package/dist/public/assets/{_DimDQHw9.js → _9mIlYM38.js} +2 -2
  10. package/dist/public/assets/{_DimDQHw9.js.map → _9mIlYM38.js.map} +1 -1
  11. package/dist/public/assets/{_C0UJDcvl2.js → _B-8ckAju2.js} +2 -2
  12. package/dist/public/assets/{_C0UJDcvl2.js.map → _B-8ckAju2.js.map} +1 -1
  13. package/dist/public/assets/{_B0p7k1Wy.js → _B0Zx9TVd.js} +2 -2
  14. package/dist/public/assets/{_B0p7k1Wy.js.map → _B0Zx9TVd.js.map} +1 -1
  15. package/dist/public/assets/{__8BegO0O.js → _B0tTvCKz.js} +2 -2
  16. package/dist/public/assets/{__8BegO0O.js.map → _B0tTvCKz.js.map} +1 -1
  17. package/dist/public/assets/{_DE45Wi_v2.js → _B1sHSj4w2.js} +2 -2
  18. package/dist/public/assets/{_DE45Wi_v2.js.map → _B1sHSj4w2.js.map} +1 -1
  19. package/dist/public/assets/{_TzFjCY4x.js → _B222bJOA.js} +2 -2
  20. package/dist/public/assets/{_TzFjCY4x.js.map → _B222bJOA.js.map} +1 -1
  21. package/dist/public/assets/{_B0l1050s.js → _B9ZTM6vy.js} +2 -2
  22. package/dist/public/assets/{_B0l1050s.js.map → _B9ZTM6vy.js.map} +1 -1
  23. package/dist/public/assets/{_BTDPW9iy.js → _BCGHghp3.js} +2 -2
  24. package/dist/public/assets/{_BTDPW9iy.js.map → _BCGHghp3.js.map} +1 -1
  25. package/dist/public/assets/{_BG7PgpSh.js → _BQHdIsH-.js} +2 -2
  26. package/dist/public/assets/{_BG7PgpSh.js.map → _BQHdIsH-.js.map} +1 -1
  27. package/dist/public/assets/{_Cgcy-XAW.js → _BTD-E3MH.js} +2 -2
  28. package/dist/public/assets/{_Cgcy-XAW.js.map → _BTD-E3MH.js.map} +1 -1
  29. package/dist/public/assets/{_D-9YZFuF.js → _BWm0ZgI6.js} +2 -2
  30. package/dist/public/assets/{_D-9YZFuF.js.map → _BWm0ZgI6.js.map} +1 -1
  31. package/dist/public/assets/{_BduevJm5.js → _BWmXhThI.js} +2 -2
  32. package/dist/public/assets/{_BduevJm5.js.map → _BWmXhThI.js.map} +1 -1
  33. package/dist/public/assets/{_BpJ6F21O.js → _BaVw_5rb.js} +2 -2
  34. package/dist/public/assets/{_BpJ6F21O.js.map → _BaVw_5rb.js.map} +1 -1
  35. package/dist/public/assets/{_BbK3eXZN2.js → _Biu1sMqL2.js} +2 -2
  36. package/dist/public/assets/{_BbK3eXZN2.js.map → _Biu1sMqL2.js.map} +1 -1
  37. package/dist/public/assets/{_Bpw8-M-2.js → _Bl7Ludpl.js} +2 -2
  38. package/dist/public/assets/{_Bpw8-M-2.js.map → _Bl7Ludpl.js.map} +1 -1
  39. package/dist/public/assets/{_CH2C5dSU.js → _BlBppazN.js} +2 -2
  40. package/dist/public/assets/{_CH2C5dSU.js.map → _BlBppazN.js.map} +1 -1
  41. package/dist/public/assets/{_TZbrx97x2.js → _Bn3jsc1x2.js} +2 -2
  42. package/dist/public/assets/{_TZbrx97x2.js.map → _Bn3jsc1x2.js.map} +1 -1
  43. package/dist/public/assets/{_ChALr73Q.js → _BpjzFBgX.js} +2 -2
  44. package/dist/public/assets/{_ChALr73Q.js.map → _BpjzFBgX.js.map} +1 -1
  45. package/dist/public/assets/{_CJ4f2Gn22.js → _Bq_UbhoI2.js} +2 -2
  46. package/dist/public/assets/{_CJ4f2Gn22.js.map → _Bq_UbhoI2.js.map} +1 -1
  47. package/dist/public/assets/{_B62EUIfl2.js → _BwHPDQ2K2.js} +2 -2
  48. package/dist/public/assets/{_B62EUIfl2.js.map → _BwHPDQ2K2.js.map} +1 -1
  49. package/dist/public/assets/{_CEkpXUQi2.js → _C9FF4Nwt2.js} +2 -2
  50. package/dist/public/assets/{_CEkpXUQi2.js.map → _C9FF4Nwt2.js.map} +1 -1
  51. package/dist/public/assets/{_CjmNk-3X.js → _CF4aOEw0.js} +2 -2
  52. package/dist/public/assets/{_CjmNk-3X.js.map → _CF4aOEw0.js.map} +1 -1
  53. package/dist/public/assets/{_Dt-7Y3TE2.js → _CFFd0jR-2.js} +2 -2
  54. package/dist/public/assets/{_Dt-7Y3TE2.js.map → _CFFd0jR-2.js.map} +1 -1
  55. package/dist/public/assets/{_CCquK4b1.js → _CGMrqKQx.js} +2 -2
  56. package/dist/public/assets/{_CCquK4b1.js.map → _CGMrqKQx.js.map} +1 -1
  57. package/dist/public/assets/{_BgZq7RwW.js → _CGlduZ09.js} +2 -2
  58. package/dist/public/assets/{_BgZq7RwW.js.map → _CGlduZ09.js.map} +1 -1
  59. package/dist/public/assets/{_e1mFK4xC.js → _CM1Bz2e2.js} +2 -2
  60. package/dist/public/assets/{_e1mFK4xC.js.map → _CM1Bz2e2.js.map} +1 -1
  61. package/dist/public/assets/{_BfOhO-ik.js → _CN_uVutc.js} +2 -2
  62. package/dist/public/assets/{_BfOhO-ik.js.map → _CN_uVutc.js.map} +1 -1
  63. package/dist/public/assets/{_ETxOUn4j2.js → _CR7soDA62.js} +2 -2
  64. package/dist/public/assets/{_ETxOUn4j2.js.map → _CR7soDA62.js.map} +1 -1
  65. package/dist/public/assets/{_DJ0lGemR.js → _CUhN1PMI.js} +2 -2
  66. package/dist/public/assets/{_DJ0lGemR.js.map → _CUhN1PMI.js.map} +1 -1
  67. package/dist/public/assets/{_OntiqL02.js → _CVepAYMH.js} +2 -2
  68. package/dist/public/assets/{_OntiqL02.js.map → _CVepAYMH.js.map} +1 -1
  69. package/dist/public/assets/{_B61Z1jwf.js → _CWq_CViy.js} +2 -2
  70. package/dist/public/assets/{_B61Z1jwf.js.map → _CWq_CViy.js.map} +1 -1
  71. package/dist/public/assets/{_aCPbjwsL2.js → _CXeLdopD2.js} +2 -2
  72. package/dist/public/assets/{_aCPbjwsL2.js.map → _CXeLdopD2.js.map} +1 -1
  73. package/dist/public/assets/{_CiLcz-CP.js → _CYFv9QGU.js} +2 -2
  74. package/dist/public/assets/{_CiLcz-CP.js.map → _CYFv9QGU.js.map} +1 -1
  75. package/dist/public/assets/{_B35oLYjV.js → _Cd1ynaVf.js} +2 -2
  76. package/dist/public/assets/{_B35oLYjV.js.map → _Cd1ynaVf.js.map} +1 -1
  77. package/dist/public/assets/{_DMqId9I32.js → _CfjmjCpz2.js} +2 -2
  78. package/dist/public/assets/{_DMqId9I32.js.map → _CfjmjCpz2.js.map} +1 -1
  79. package/dist/public/assets/{_DC_ioCXZ.js → _Cj248HDV.js} +2 -2
  80. package/dist/public/assets/{_DC_ioCXZ.js.map → _Cj248HDV.js.map} +1 -1
  81. package/dist/public/assets/{_uHn5Sjo52.js → _Cry0Vu092.js} +2 -2
  82. package/dist/public/assets/{_uHn5Sjo52.js.map → _Cry0Vu092.js.map} +1 -1
  83. package/dist/public/assets/{_BwHIIw2E2.js → _CsBnKH_a2.js} +2 -2
  84. package/dist/public/assets/{_BwHIIw2E2.js.map → _CsBnKH_a2.js.map} +1 -1
  85. package/dist/public/assets/{_7Hr6x6JT.js → _CuUIu7A0.js} +2 -2
  86. package/dist/public/assets/{_7Hr6x6JT.js.map → _CuUIu7A0.js.map} +1 -1
  87. package/dist/public/assets/{_C6Ku6tce.js → _CudIJ9N1.js} +2 -2
  88. package/dist/public/assets/{_C6Ku6tce.js.map → _CudIJ9N1.js.map} +1 -1
  89. package/dist/public/assets/{_CuVyPGCR.js → _CxK19rXP.js} +2 -2
  90. package/dist/public/assets/{_CuVyPGCR.js.map → _CxK19rXP.js.map} +1 -1
  91. package/dist/public/assets/{_pFmckaaP2.js → _D2YiTEdV2.js} +2 -2
  92. package/dist/public/assets/{_pFmckaaP2.js.map → _D2YiTEdV2.js.map} +1 -1
  93. package/dist/public/assets/{_BjiamLhC2.js → _D2ch0L3l2.js} +2 -2
  94. package/dist/public/assets/{_BjiamLhC2.js.map → _D2ch0L3l2.js.map} +1 -1
  95. package/dist/public/assets/{_BzyfiiMx.js → _D4GRfjHF.js} +2 -2
  96. package/dist/public/assets/{_BzyfiiMx.js.map → _D4GRfjHF.js.map} +1 -1
  97. package/dist/public/assets/{_328LsgJQ.js → _D51cBuRP.js} +2 -2
  98. package/dist/public/assets/{_328LsgJQ.js.map → _D51cBuRP.js.map} +1 -1
  99. package/dist/public/assets/{_y6dVQHpH.js → _D79L--fl.js} +2 -2
  100. package/dist/public/assets/{_y6dVQHpH.js.map → _D79L--fl.js.map} +1 -1
  101. package/dist/public/assets/{_CnWV64BG2.js → _D7dsIO-O2.js} +2 -2
  102. package/dist/public/assets/{_CnWV64BG2.js.map → _D7dsIO-O2.js.map} +1 -1
  103. package/dist/public/assets/{_qFxIW2tY.js → _DIhu80mU.js} +2 -2
  104. package/dist/public/assets/{_qFxIW2tY.js.map → _DIhu80mU.js.map} +1 -1
  105. package/dist/public/assets/{_C0Jt_Xjm.js → _DN7QgLB-.js} +2 -2
  106. package/dist/public/assets/{_C0Jt_Xjm.js.map → _DN7QgLB-.js.map} +1 -1
  107. package/dist/public/assets/{_DCP8qFc6.js → _DZOjtuBx.js} +2 -2
  108. package/dist/public/assets/{_DCP8qFc6.js.map → _DZOjtuBx.js.map} +1 -1
  109. package/dist/public/assets/{_BlnqFsCL.js → _Dh3Zdz4W.js} +2 -2
  110. package/dist/public/assets/{_BlnqFsCL.js.map → _Dh3Zdz4W.js.map} +1 -1
  111. package/dist/public/assets/{_D_QEBWxx.js → _Dlge38I0.js} +2 -2
  112. package/dist/public/assets/{_D_QEBWxx.js.map → _Dlge38I0.js.map} +1 -1
  113. package/dist/public/assets/{_4oI4DLD12.js → _DpJaOsUS2.js} +2 -2
  114. package/dist/public/assets/{_4oI4DLD12.js.map → _DpJaOsUS2.js.map} +1 -1
  115. package/dist/public/assets/{_CpZyjYVd.js → _DpZRF37u.js} +2 -2
  116. package/dist/public/assets/{_CpZyjYVd.js.map → _DpZRF37u.js.map} +1 -1
  117. package/dist/public/assets/{_ickmOHj-.js → _Dq_5FFld.js} +2 -2
  118. package/dist/public/assets/{_ickmOHj-.js.map → _Dq_5FFld.js.map} +1 -1
  119. package/dist/public/assets/{_WtSbc-0z2.js → _DrAyvf042.js} +2 -2
  120. package/dist/public/assets/{_WtSbc-0z2.js.map → _DrAyvf042.js.map} +1 -1
  121. package/dist/public/assets/{_snZlpI9-2.js → _DzkSj4zS2.js} +2 -2
  122. package/dist/public/assets/{_snZlpI9-2.js.map → _DzkSj4zS2.js.map} +1 -1
  123. package/dist/public/assets/{_Cbz3Zb2r.js → _HibLhaHH.js} +2 -2
  124. package/dist/public/assets/{_Cbz3Zb2r.js.map → _HibLhaHH.js.map} +1 -1
  125. package/dist/public/assets/{_BiVb_8fl2.js → _IEZe9nw42.js} +2 -2
  126. package/dist/public/assets/{_BiVb_8fl2.js.map → _IEZe9nw42.js.map} +1 -1
  127. package/dist/public/assets/{_CerTTqHR.js → _KoAN5c4U.js} +2 -2
  128. package/dist/public/assets/{_CerTTqHR.js.map → _KoAN5c4U.js.map} +1 -1
  129. package/dist/public/assets/{_BnSuNHJ7.js → _RKCdcM6s.js} +2 -2
  130. package/dist/public/assets/{_BnSuNHJ7.js.map → _RKCdcM6s.js.map} +1 -1
  131. package/dist/public/assets/{_Dzo0xXFy2.js → _WOCAvL642.js} +2 -2
  132. package/dist/public/assets/{_Dzo0xXFy2.js.map → _WOCAvL642.js.map} +1 -1
  133. package/dist/public/assets/{_B1zT643d.js → __dMnQCKa.js} +2 -2
  134. package/dist/public/assets/{_B1zT643d.js.map → __dMnQCKa.js.map} +1 -1
  135. package/dist/public/assets/{_7WXRxrlU.js → _aF_XxRRK.js} +2 -2
  136. package/dist/public/assets/{_7WXRxrlU.js.map → _aF_XxRRK.js.map} +1 -1
  137. package/dist/public/assets/{_ChxFmNZf2.js → _bcyfHqN_2.js} +2 -2
  138. package/dist/public/assets/{_ChxFmNZf2.js.map → _bcyfHqN_2.js.map} +1 -1
  139. package/dist/public/assets/{_CKmHgYfe.js → _frxegHGP.js} +2 -2
  140. package/dist/public/assets/{_CKmHgYfe.js.map → _frxegHGP.js.map} +1 -1
  141. package/dist/public/assets/{_CznN3jlr.js → _gCS79yat.js} +2 -2
  142. package/dist/public/assets/{_CznN3jlr.js.map → _gCS79yat.js.map} +1 -1
  143. package/dist/public/assets/{_Dghs5wz6.js → _haaSjWYo.js} +2 -2
  144. package/dist/public/assets/{_Dghs5wz6.js.map → _haaSjWYo.js.map} +1 -1
  145. package/dist/public/assets/{_aJqK30432.js → _wqbV3ClO2.js} +2 -2
  146. package/dist/public/assets/{_aJqK30432.js.map → _wqbV3ClO2.js.map} +1 -1
  147. package/dist/public/assets/{_CqgeXAyq.js → _yNCqh4w6.js} +2 -2
  148. package/dist/public/assets/{_CqgeXAyq.js.map → _yNCqh4w6.js.map} +1 -1
  149. package/dist/public/assets/{_T9N_IxyL.js → _zW4ABdBd.js} +2 -2
  150. package/dist/public/assets/{_T9N_IxyL.js.map → _zW4ABdBd.js.map} +1 -1
  151. package/dist/public/assets/index-BJLi-qve.css +1 -0
  152. package/dist/public/assets/index-YZZGnWtK.js +1615 -0
  153. package/dist/public/assets/index-YZZGnWtK.js.map +1 -0
  154. package/package.json +1 -1
  155. package/dist/public/assets/index-B-C71W3M.js +0 -1615
  156. package/dist/public/assets/index-B-C71W3M.js.map +0 -1
  157. package/dist/public/assets/index-DxoJXJz6.css +0 -1
package/dist/index.mjs CHANGED
@@ -2068,8 +2068,15 @@ function swr(ttlMs, load, seed) {
2068
2068
  }
2069
2069
  //#endregion
2070
2070
  //#region src/server/prs.ts
2071
- var PR_JSON = "number,title,url,headRefName,baseRefName,headRefOid,isDraft,state,reviewDecision";
2071
+ var PR_JSON = "number,title,url,headRefName,baseRefName,headRefOid,isDraft,state";
2072
2072
  var TTL_MS$3 = 12e4;
2073
+ function mapPr(raw) {
2074
+ const { headRef, ...rest } = raw;
2075
+ return {
2076
+ ...rest,
2077
+ headRefOid: rest.headRefOid || headRef?.oid
2078
+ };
2079
+ }
2073
2080
  /** PRs in every state for a repo, stale-while-revalidate cached. */
2074
2081
  var prs = swr(TTL_MS$3, fetchPrs);
2075
2082
  /** PRs whose head is the workspace branch or one of its `-topic` lanes.
@@ -2101,7 +2108,7 @@ var headPrs = swr(TTL_MS$3, async (key) => {
2101
2108
  "--json",
2102
2109
  PR_JSON
2103
2110
  ]).catch(() => "[]");
2104
- return JSON.parse(out);
2111
+ return JSON.parse(out).map(mapPr);
2105
2112
  });
2106
2113
  /** A workspace repo's PRs: the recency-windowed list filtered to the
2107
2114
  * branch prefix, plus the exact-head lookup merged in. */
@@ -2124,17 +2131,17 @@ async function fetchPrs(fullName) {
2124
2131
  "--json",
2125
2132
  PR_JSON
2126
2133
  ]).catch(() => "[]");
2127
- return JSON.parse(out);
2134
+ return JSON.parse(out).map(mapPr);
2128
2135
  }
2129
2136
  /** Refresh many repos' PRs with one GraphQL request (vs one `gh pr list`
2130
2137
  * process per repo) — called from the status watcher for active
2131
- * workspaces so PR/CI flips surface in ~watch-tick time instead of
2132
- * waiting out the per-repo TTL. Throttled internally. */
2133
- var BATCH_MIN_MS = 3e4;
2134
- /** After a detected local push, poll fast for a bit — the PR appears and
2135
- * CI starts flipping in the minutes right after. */
2136
- var HOT_MIN_MS = 4e3;
2137
- var HOT_WINDOW_MS = 12e4;
2138
+ * workspaces so open/merge/close flips surface in ~watch-tick time
2139
+ * instead of waiting out the per-repo TTL. Throttled internally. */
2140
+ var BATCH_MIN_MS = 15e3;
2141
+ /** After a detected local push, poll fast for a bit — the PR appears
2142
+ * and merges/closes in the minutes right after. */
2143
+ var HOT_MIN_MS = 3e3;
2144
+ var HOT_WINDOW_MS = 18e4;
2138
2145
  var lastBatch = 0;
2139
2146
  var hotUntil = 0;
2140
2147
  function notePushActivity() {
@@ -2144,6 +2151,7 @@ function notePushActivity() {
2144
2151
  function inHotWindow() {
2145
2152
  return Date.now() < hotUntil;
2146
2153
  }
2154
+ var GQL_PR_FIELDS = "number title url headRefName baseRefName isDraft state headRef { oid }";
2147
2155
  async function refreshPrsBatch(fullNames, force = false) {
2148
2156
  const names = [...new Set(fullNames)].filter((n) => n.includes("/"));
2149
2157
  const minMs = force ? 2e3 : Date.now() < hotUntil ? HOT_MIN_MS : BATCH_MIN_MS;
@@ -2153,7 +2161,7 @@ async function refreshPrsBatch(fullNames, force = false) {
2153
2161
  try {
2154
2162
  const query = "query {" + names.map((fullName, i) => {
2155
2163
  const [owner, name] = fullName.split("/");
2156
- return `r${i}: repository(owner: ${JSON.stringify(owner)}, name: ${JSON.stringify(name)}) { pullRequests(first: 50, orderBy: {field: UPDATED_AT, direction: DESC}) { nodes { number title url headRefName baseRefName isDraft state reviewDecision headRef { oid } } } }`;
2164
+ return `r${i}: repository(owner: ${JSON.stringify(owner)}, name: ${JSON.stringify(name)}) { pullRequests(first: 50, orderBy: {field: UPDATED_AT, direction: DESC}) { nodes { ${GQL_PR_FIELDS} } } }`;
2157
2165
  }).join(" ") + "}";
2158
2166
  const out = await gh([
2159
2167
  "api",
@@ -2169,10 +2177,7 @@ async function refreshPrsBatch(fullNames, force = false) {
2169
2177
  names.forEach((fullName, i) => {
2170
2178
  const repo = data[`r${i}`];
2171
2179
  if (!repo) return;
2172
- prs.set(fullName, repo.pullRequests.nodes.map((n) => ({
2173
- ...n,
2174
- headRefOid: n.headRefOid || n.headRef?.oid
2175
- })));
2180
+ prs.set(fullName, repo.pullRequests.nodes.map(mapPr));
2176
2181
  });
2177
2182
  return true;
2178
2183
  } catch (err) {
@@ -2221,13 +2226,13 @@ function statusForAll() {
2221
2226
  }
2222
2227
  /** Push-based freshness: while any events-bus client is connected,
2223
2228
  * recompute the (shared, deduped) snapshot on a slow tick and publish it
2224
- * only when it actually changed — ports appearing, PR/CI flips reach
2229
+ * only when it actually changed — ports appearing, PR open/merge/close flips reach
2225
2230
  * every client in ~15s instead of waiting out a slow poll, and idle
2226
2231
  * systems push nothing at all. */
2227
- var WATCH_MS = 15e3;
2228
- /** Right after a local push PR state flips within seconds — tick fast so
2229
- * the badge lands while it still feels immediate. */
2230
- var WATCH_HOT_MS = 5e3;
2232
+ var WATCH_MS = 1e4;
2233
+ /** Right after a local push, PR+check state flips within seconds — tick
2234
+ * fast so the badge lands while it still feels immediate. */
2235
+ var WATCH_HOT_MS = 4e3;
2231
2236
  var watching = false;
2232
2237
  var lastPushed = "";
2233
2238
  async function watchTick() {
@@ -2300,7 +2305,7 @@ async function computeStatus() {
2300
2305
  }
2301
2306
  async function repoStatus(ws, repo, foreign) {
2302
2307
  const dir = path.join(ws.path, repo.worktree);
2303
- const [repoPrs, localHead] = await Promise.all([workspacePrs(repo.full_name, ws.branch, foreign).then((list) => list.filter((pr) => pr.state === "OPEN")), git(["rev-parse", "HEAD"], dir).catch(() => "")]);
2308
+ const [repoPrs, localHead] = await Promise.all([workspacePrs(repo.full_name, ws.branch, foreign).then((list) => withoutDismissed(ws.id, repo.full_name, list)), git(["rev-parse", "HEAD"], dir).catch(() => "")]);
2304
2309
  return {
2305
2310
  full_name: repo.full_name,
2306
2311
  worktree: repo.worktree,
@@ -4438,17 +4443,17 @@ function isTouch() {
4438
4443
  return typeof window !== "undefined" && window.matchMedia("(pointer: coarse)").matches;
4439
4444
  }
4440
4445
  var toast_module_default = {
4441
- toast: "_G",
4442
- toastFloat: "_H",
4443
- toastInline: "_I",
4444
- toastError: "_J",
4445
- toastTitle: "_K",
4446
- toastWarn: "_L",
4447
- toastInfo: "_M",
4448
- toastBody: "_N",
4449
- toastContent: "_O",
4450
- toastActions: "_P",
4451
- toastDismiss: "_Q _cw"
4446
+ toast: "_y",
4447
+ toastFloat: "_z",
4448
+ toastInline: "_A",
4449
+ toastError: "_B",
4450
+ toastTitle: "_C",
4451
+ toastWarn: "_D",
4452
+ toastInfo: "_E",
4453
+ toastBody: "_F",
4454
+ toastContent: "_G",
4455
+ toastActions: "_H",
4456
+ toastDismiss: "_I _ez"
4452
4457
  };
4453
4458
  //#endregion
4454
4459
  //#region src/tags/toast.marko
@@ -4592,27 +4597,27 @@ function sessionPhase(state) {
4592
4597
  return state?.phase === "working" ? "working" : state?.phase === "waiting" ? "waiting" : state?.alive ? "idle" : "off";
4593
4598
  }
4594
4599
  var palette_module_default = {
4595
- paletteBackdrop: "_bp",
4596
- palette: "_bq",
4597
- inline: "_br",
4598
- rows: "_bs",
4599
- rowWrap: "_bt",
4600
- row: "_bu",
4601
- rowMore: "_bv",
4602
- hi: "_bw",
4603
- archived: "_bx",
4604
- cmdRow: "_by",
4605
- onboard: "_bz",
4606
- rowName: "_bA",
4607
- rowNameText: "_bB",
4608
- rowStats: "_bC",
4609
- open: "_bD",
4610
- stat: "_bE",
4611
- rowRepos: "_bF",
4612
- paletteFoot: "_bG",
4613
- hint: "_bH",
4614
- archivedLink: "_bI",
4615
- newSessionPop: "_bJ"
4600
+ paletteBackdrop: "_bh",
4601
+ palette: "_bi",
4602
+ inline: "_bj",
4603
+ rows: "_bk",
4604
+ rowWrap: "_bl",
4605
+ row: "_bm",
4606
+ rowMore: "_bn",
4607
+ hi: "_bo",
4608
+ archived: "_bp",
4609
+ cmdRow: "_bq",
4610
+ onboard: "_br",
4611
+ rowName: "_bs",
4612
+ rowNameText: "_bt",
4613
+ rowStats: "_bu",
4614
+ open: "_bv",
4615
+ stat: "_bw",
4616
+ rowRepos: "_bx",
4617
+ paletteFoot: "_by",
4618
+ hint: "_bz",
4619
+ archivedLink: "_bA",
4620
+ newSessionPop: "_bB"
4616
4621
  };
4617
4622
  //#endregion
4618
4623
  //#region src/tags/icons/icon-base.marko
@@ -4625,7 +4630,7 @@ var icon_base_default = _template("B", (input) => {
4625
4630
  });
4626
4631
  //#endregion
4627
4632
  //#region src/tags/icons/icon-diff.marko
4628
- var icon_diff_default = _template("E", (input) => {
4633
+ var icon_diff_default = _template("F", (input) => {
4629
4634
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
4630
4635
  const $scope0_id = _scope_id();
4631
4636
  _set_serialize_reason({
@@ -4642,7 +4647,7 @@ var icon_diff_default = _template("E", (input) => {
4642
4647
  });
4643
4648
  //#endregion
4644
4649
  //#region src/tags/icons/icon-manage.marko
4645
- var icon_manage_default = _template("L", (input) => {
4650
+ var icon_manage_default = _template("M", (input) => {
4646
4651
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
4647
4652
  const $scope0_id = _scope_id();
4648
4653
  _set_serialize_reason({
@@ -4659,7 +4664,7 @@ var icon_manage_default = _template("L", (input) => {
4659
4664
  });
4660
4665
  //#endregion
4661
4666
  //#region src/tags/icons/icon-plus.marko
4662
- var icon_plus_default = _template("M", (input) => {
4667
+ var icon_plus_default = _template("N", (input) => {
4663
4668
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
4664
4669
  const $scope0_id = _scope_id();
4665
4670
  _set_serialize_reason({
@@ -5012,11 +5017,11 @@ var palette_default = _template("o", (input) => {
5012
5017
  _resume_branch($scope0_id);
5013
5018
  });
5014
5019
  var new_workspace_module_default = {
5015
- content: "_R _A",
5020
+ content: "_R _bE",
5016
5021
  actions: "_S",
5017
5022
  barPrimary: "_T",
5018
- iconBtn: "_U _cw",
5019
- spinning: "_V _cx",
5023
+ iconBtn: "_U _ez",
5024
+ spinning: "_V _eA",
5020
5025
  field: "_W",
5021
5026
  section: "_X",
5022
5027
  reposHead: "_Y",
@@ -5041,18 +5046,18 @@ var new_workspace_module_default = {
5041
5046
  btn: "_bg"
5042
5047
  };
5043
5048
  var page_shell_module_default = {
5044
- page: "_y",
5045
- body: "_z",
5046
- content: "_A",
5047
- contentWide: "_B",
5048
- pageHead: "_C",
5049
- pageHeadText: "_D",
5050
- pageMeta: "_E",
5051
- pageHeadAside: "_F"
5049
+ page: "_bC",
5050
+ body: "_bD",
5051
+ content: "_bE",
5052
+ contentWide: "_bF",
5053
+ pageHead: "_bG",
5054
+ pageHeadText: "_bH",
5055
+ pageMeta: "_bI",
5056
+ pageHeadAside: "_bJ"
5052
5057
  };
5053
5058
  //#endregion
5054
5059
  //#region src/tags/icons/icon-refresh.marko
5055
- var icon_refresh_default = _template("N", (input) => {
5060
+ var icon_refresh_default = _template("O", (input) => {
5056
5061
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
5057
5062
  const $scope0_id = _scope_id();
5058
5063
  _set_serialize_reason({
@@ -5068,18 +5073,18 @@ var icon_refresh_default = _template("N", (input) => {
5068
5073
  _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
5069
5074
  });
5070
5075
  var repo_picker_module_default = {
5071
- addRepo: "_bK",
5072
- repoResults: "_bL",
5073
- resultWrap: "_bM",
5074
- hi: "_bN",
5075
- resultRow: "_bO",
5076
- resultBranch: "_bP",
5077
- on: "_bQ",
5078
- branchPick: "_bR",
5079
- branchList: "_bS",
5080
- resultPlus: "_bT",
5081
- repoName: "_bU",
5082
- emptyNote: "_bV"
5076
+ addRepo: "_b_",
5077
+ repoResults: "_ca",
5078
+ resultWrap: "_cb",
5079
+ hi: "_cc",
5080
+ resultRow: "_cd",
5081
+ resultBranch: "_ce",
5082
+ on: "_cf",
5083
+ branchPick: "_cg",
5084
+ branchList: "_ch",
5085
+ resultPlus: "_ci",
5086
+ repoName: "_cj",
5087
+ emptyNote: "_ck"
5083
5088
  };
5084
5089
  //#endregion
5085
5090
  //#region src/tags/repo-picker.marko
@@ -5553,14 +5558,14 @@ function diffUncommitted() {
5553
5558
  return get("diff-uncommitted") === "1";
5554
5559
  }
5555
5560
  var work_view_module_default = {
5556
- workView: "_bh",
5557
- sideWrap: "_bi",
5558
- navPage: "_bj",
5559
- mainCol: "_bk",
5560
- termArea: "_bl",
5561
- asBar: "_bm",
5562
- padInline: "_bn",
5563
- emptySess: "_bo"
5561
+ workView: "_J",
5562
+ sideWrap: "_K",
5563
+ navPage: "_L",
5564
+ mainCol: "_M",
5565
+ termArea: "_N",
5566
+ asBar: "_O",
5567
+ padInline: "_P",
5568
+ emptySess: "_Q"
5564
5569
  };
5565
5570
  //#endregion
5566
5571
  //#region src/client/api.ts
@@ -5625,23 +5630,23 @@ function vapidKey(base64) {
5625
5630
  return Uint8Array.from(raw, (c) => c.charCodeAt(0));
5626
5631
  }
5627
5632
  var side_nav_module_default = {
5628
- iconBtn: "_cz _cw",
5629
- spinning: "_cA _cx",
5630
- navToggle: "_cB _cw",
5631
- notifyBtn: "_cC _cw",
5632
- sideNav: "_cD",
5633
- pageHead: "_cE",
5634
- pageHeadActions: "_cF",
5635
- sectionLabel: "_cG",
5636
- newSpaceBtn: "_cH",
5637
- page: "_cI",
5638
- sideList: "_cJ",
5639
- sideRail: "_cK",
5640
- sideFoot: "_cL",
5641
- footSpacer: "_cM",
5642
- on: "_cN",
5643
- closed: "_cO",
5644
- railPop: "_cP"
5633
+ iconBtn: "_cQ _ez",
5634
+ spinning: "_cR _eA",
5635
+ navToggle: "_cS _ez",
5636
+ notifyBtn: "_cT _ez",
5637
+ sideNav: "_cU",
5638
+ pageHead: "_cV",
5639
+ pageHeadActions: "_cW",
5640
+ sectionLabel: "_cX",
5641
+ newSpaceBtn: "_cY",
5642
+ page: "_cZ",
5643
+ sideList: "_c0",
5644
+ sideRail: "_c1",
5645
+ sideFoot: "_c2",
5646
+ footSpacer: "_c3",
5647
+ on: "_c4",
5648
+ closed: "_c5",
5649
+ railPop: "_c6"
5645
5650
  };
5646
5651
  _template("C", (input) => {
5647
5652
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
@@ -5660,7 +5665,7 @@ _template("C", (input) => {
5660
5665
  });
5661
5666
  //#endregion
5662
5667
  //#region src/tags/icons/icon-gauge.marko
5663
- var icon_gauge_default = _template("I", (input) => {
5668
+ var icon_gauge_default = _template("J", (input) => {
5664
5669
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
5665
5670
  const $scope0_id = _scope_id();
5666
5671
  _set_serialize_reason({
@@ -5676,37 +5681,37 @@ var icon_gauge_default = _template("I", (input) => {
5676
5681
  _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
5677
5682
  });
5678
5683
  var side_nav_item_module_default = {
5679
- railBtn: "_eG _cw",
5680
- current: "_eH",
5681
- railDot: "_eI",
5682
- ws: "_eJ",
5683
- railPopWs: "_eK",
5684
- wsRow: "_eL",
5685
- wsBtn: "_eM",
5686
- wsActions: "_eN",
5687
- rowIcon: "_eO",
5688
- on: "_eP",
5689
- newSessionPop: "_eQ",
5690
- wsText: "_eR",
5691
- wsName: "_eS",
5692
- wsMeta: "_eT",
5693
- wsOpenHint: "_eU",
5694
- statusDot: "_eV",
5695
- pageCard: "_eW",
5696
- sessTitle: "_eX",
5697
- sessActions: "_eY",
5698
- sessRenameDot: "_eZ",
5699
- sessRename: "_e0",
5700
- close: "_e1",
5701
- sess: "_e2",
5702
- armed: "_e3",
5703
- sessions: "_e4",
5704
- sessBtn: "_e5",
5705
- sessIcon: "_e6"
5684
+ railBtn: "_e1 _ez",
5685
+ current: "_e2",
5686
+ railDot: "_e3",
5687
+ ws: "_e4",
5688
+ railPopWs: "_e5",
5689
+ wsRow: "_e6",
5690
+ wsBtn: "_e7",
5691
+ wsActions: "_e8",
5692
+ rowIcon: "_e9",
5693
+ on: "_e_",
5694
+ newSessionPop: "_fa",
5695
+ wsText: "_fb",
5696
+ wsName: "_fc",
5697
+ wsMeta: "_fd",
5698
+ wsOpenHint: "_fe",
5699
+ statusDot: "_ff",
5700
+ pageCard: "_fg",
5701
+ sessTitle: "_fh",
5702
+ sessActions: "_fi",
5703
+ sessRenameDot: "_fj",
5704
+ sessRename: "_fk",
5705
+ close: "_fl",
5706
+ sess: "_fm",
5707
+ armed: "_fn",
5708
+ sessions: "_fo",
5709
+ sessBtn: "_fp",
5710
+ sessIcon: "_fq"
5706
5711
  };
5707
5712
  //#endregion
5708
5713
  //#region src/tags/icons/icon-edit.marko
5709
- var icon_edit_default = _template("G", (input) => {
5714
+ var icon_edit_default = _template("H", (input) => {
5710
5715
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
5711
5716
  const $scope0_id = _scope_id();
5712
5717
  _set_serialize_reason({
@@ -5722,29 +5727,68 @@ var icon_edit_default = _template("G", (input) => {
5722
5727
  _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
5723
5728
  });
5724
5729
  var side_nav_chips_module_default = {
5725
- sideChips: "_fF",
5726
- prBtn: "_fG",
5727
- portChip: "_fH",
5728
- portOpen: "_fI",
5729
- portKill: "_fJ",
5730
- rejected: "_fK",
5731
- armed: "_fL"
5730
+ sideChips: "_fB",
5731
+ prChip: "_fC",
5732
+ portChip: "_fD",
5733
+ seg: "_fE",
5734
+ portOpen: "_fF",
5735
+ action: "_fG",
5736
+ dismiss: "_fH",
5737
+ armed: "_fI",
5738
+ merged: "_fJ",
5739
+ closed: "_fK"
5732
5740
  };
5733
5741
  //#endregion
5742
+ //#region src/tags/icons/icon-xmark.marko
5743
+ var icon_xmark_default = _template("U", (input) => {
5744
+ const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
5745
+ const $scope0_id = _scope_id();
5746
+ _set_serialize_reason({
5747
+ 0: $sg__input_size__OR__input_class,
5748
+ 1: $sg__input_size__OR__input_class
5749
+ });
5750
+ const $childScope = _peek_scope_id();
5751
+ icon_base_default({
5752
+ d: "M6.75827 17.2426L12.0009 12M17.2435 6.75736L12.0009 12M12.0009 12L6.75827 6.75736M12.0009 12L17.2435 17.2426",
5753
+ size: input.size,
5754
+ class: input.class
5755
+ });
5756
+ _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
5757
+ });
5758
+ //#endregion
5734
5759
  //#region src/tags/side-nav-chips.marko
5760
+ var prTitle = (repo, pr) => {
5761
+ const parts = [`${repo.worktree} — ${pr.title}`];
5762
+ if (pr.state === "MERGED") parts.push("merged");
5763
+ else if (pr.state === "CLOSED") parts.push("closed");
5764
+ else if (pr.isDraft) parts.push("draft");
5765
+ else parts.push("open");
5766
+ return parts.join(" · ");
5767
+ };
5768
+ var isOpen = (pr) => !pr.state || pr.state === "OPEN";
5735
5769
  var side_nav_chips_default = _template("r", (input) => {
5736
5770
  const $scope0_reason = _scope_reason(), $sg__input_status_repos = _serialize_guard($scope0_reason, 1), $si__input_status_repos = _serialize_if($scope0_reason, 1), $sg__input_status_ports = _serialize_guard($scope0_reason, 2), $sg__input_status_repos__OR__input_status_ports = _serialize_guard($scope0_reason, 0), $si__input_status_repos__OR__input_status_ports = _serialize_if($scope0_reason, 0);
5737
5771
  const $scope0_id = _scope_id();
5738
5772
  const $armedPid__closures = /* @__PURE__ */ new Set();
5739
5773
  let armedPid = null;
5740
5774
  const armBox = { timer: 0 };
5741
- const arm = _resume((pid) => {
5775
+ const armPid = _resume((pid) => {
5742
5776
  clearTimeout(armBox.timer);
5743
5777
  armedPid = pid;
5744
5778
  armBox.timer = setTimeout(() => {
5745
5779
  armedPid = null;
5746
5780
  }, 3500);
5747
5781
  }, "r0", $scope0_id);
5782
+ const dismissPr = _resume((fullName, number) => {
5783
+ fetch(`/api/workspaces/${input.workspaceId}/prs`, {
5784
+ method: "POST",
5785
+ headers: { "content-type": "application/json" },
5786
+ body: JSON.stringify({
5787
+ fullName,
5788
+ number
5789
+ })
5790
+ }).catch(() => {});
5791
+ }, "r1", $scope0_id);
5748
5792
  const repos = input.status?.repos || [];
5749
5793
  const ports = input.status?.ports || [];
5750
5794
  _if(() => {
@@ -5755,22 +5799,47 @@ var side_nav_chips_default = _template("r", (input) => {
5755
5799
  if (repos.length < 2) return "";
5756
5800
  const name = repo.full_name.split("/")[1];
5757
5801
  return repos.some((r) => r.full_name !== repo.full_name && r.full_name.split("/")[1] === name) ? repo.full_name : name;
5758
- }, "r1", $scope1_id);
5802
+ }, "r2", $scope1_id);
5759
5803
  _html(`<div${_attr_class(side_nav_chips_module_default.sideChips)}>`);
5760
5804
  _for_of(repos, (repo) => {
5761
5805
  const $scope2_id = _scope_id();
5762
5806
  _for_of(repo.prs || [], (pr) => {
5763
5807
  const $scope3_id = _scope_id();
5764
- _html(`<button type=button${_attr_class([
5808
+ const open = isOpen(pr);
5809
+ _html(`<span${_attr_class([
5765
5810
  ui_module_default.chip,
5766
- ui_module_default.pr,
5767
- side_nav_chips_module_default.prBtn,
5811
+ side_nav_chips_module_default.prChip,
5768
5812
  {
5769
- [ui_module_default.draft]: pr.isDraft,
5770
- [side_nav_chips_module_default.rejected]: pr.reviewDecision === "CHANGES_REQUESTED"
5813
+ [ui_module_default.pr]: open && !pr.isDraft,
5814
+ [ui_module_default.draft]: open && pr.isDraft,
5815
+ [side_nav_chips_module_default.merged]: pr.state === "MERGED",
5816
+ [side_nav_chips_module_default.closed]: pr.state === "CLOSED"
5817
+ }
5818
+ ])}${_attr("title", prTitle(repo, pr))}><a${_attr_class(side_nav_chips_module_default.seg)}${_attr("href", pr.url)} target=_blank rel=noopener>${_escape(repoLabel(repo))}${_el_resume($scope3_id, "c", $sg__input_status_repos)}#${_sep($sg__input_status_repos)}${_escape(pr.number)}${_el_resume($scope3_id, "d", $sg__input_status_repos)}</a>${_el_resume($scope3_id, "b", $sg__input_status_repos)}`);
5819
+ _if(() => {
5820
+ if (open) {
5821
+ const $scope4_id = _scope_id();
5822
+ _html(`<button type=button${_attr_class([side_nav_chips_module_default.seg, side_nav_chips_module_default.action])}${_attr("title", `Review #${pr.number} diff`)}>`);
5823
+ icon_diff_default({ size: 12 });
5824
+ _html(`</button>${_el_resume($scope4_id, "a")}`);
5825
+ _script($scope4_id, "r3");
5826
+ writeScope($scope4_id, { _: _scope_with_id($scope3_id) });
5827
+ return 0;
5828
+ } else {
5829
+ const $scope6_id = _scope_id();
5830
+ _html(`<button type=button${_attr_class([
5831
+ side_nav_chips_module_default.seg,
5832
+ side_nav_chips_module_default.action,
5833
+ side_nav_chips_module_default.dismiss
5834
+ ])}${_attr("title", `Clear #${pr.number} from this list`)}>`);
5835
+ icon_xmark_default({ size: 12 });
5836
+ _html(`</button>${_el_resume($scope6_id, "a")}`);
5837
+ _script($scope6_id, "r4");
5838
+ writeScope($scope6_id, { _: _scope_with_id($scope3_id) });
5839
+ return 1;
5771
5840
  }
5772
- ])}${_attr("title", `${repo.worktree} — ${pr.title}${pr.reviewDecision === "APPROVED" ? " (approved)" : pr.reviewDecision === "CHANGES_REQUESTED" ? " (changes requested)" : ""}`)}>${_escape(repoLabel(repo))}${_el_resume($scope3_id, "b", $sg__input_status_repos)}#${_sep($sg__input_status_repos)}${_escape(pr.number)}${_el_resume($scope3_id, "c", $sg__input_status_repos)}${_sep($sg__input_status_repos)}${pr.reviewDecision === "APPROVED" ? " ✓" : pr.reviewDecision === "CHANGES_REQUESTED" ? " ✗" : ""}${_el_resume($scope3_id, "d", $sg__input_status_repos)}</button>${_el_resume($scope3_id, "a")}`);
5773
- _script($scope3_id, "r2");
5841
+ }, $scope3_id, "e", $sg__input_status_repos, $sg__input_status_repos, $sg__input_status_repos, 0, 1);
5842
+ _html(`</span>${_el_resume($scope3_id, "a", $sg__input_status_repos)}`);
5774
5843
  _subscribe($si__input_status_repos && $if_content__repoLabel__closures, writeScope($scope3_id, {
5775
5844
  l: pr?.number,
5776
5845
  _: _scope_with_id($scope2_id)
@@ -5779,17 +5848,25 @@ var side_nav_chips_default = _template("r", (input) => {
5779
5848
  writeScope($scope2_id, {
5780
5849
  c: $si__input_status_repos && repo,
5781
5850
  e: repo?.worktree,
5851
+ f: repo?.full_name,
5782
5852
  _: _scope_with_id($scope1_id)
5783
5853
  });
5784
5854
  }, "full_name", $scope1_id, "b", $sg__input_status_repos, $sg__input_status_repos, $sg__input_status_repos__OR__input_status_ports);
5785
5855
  _for_of(ports, (p) => {
5786
- const $scope4_id = _scope_id();
5787
- _html(`<span${_attr_class([ui_module_default.chip, side_nav_chips_module_default.portChip])}${_attr("title", p.cmd)}><button type=button${_attr_class(side_nav_chips_module_default.portOpen)}${_attr("title", `Open http://${typeof location === "undefined" ? "localhost" : location.hostname}:${p.port}`)}>:${_sep($sg__input_status_ports)}${_escape(p.port)}${_el_resume($scope4_id, "c", $sg__input_status_ports)}</button>${_el_resume($scope4_id, "b")}<button type=button${_attr_class([side_nav_chips_module_default.portKill, { [side_nav_chips_module_default.armed]: armedPid === p.pid }])}${armedPid === p.pid ? _attr("title", `Really kill ${p.cmd}?`) : _attr("title", `Kill ${p.cmd} (pid ${p.pid})`)}>×</button>${_el_resume($scope4_id, "d")}</span>${_el_resume($scope4_id, "a", $sg__input_status_ports)}`);
5788
- _script($scope4_id, "r3");
5789
- _subscribe($armedPid__closures, writeScope($scope4_id, {
5790
- g: p?.cmd,
5791
- h: p?.port,
5792
- i: p?.pid,
5856
+ const $scope5_id = _scope_id();
5857
+ _html(`<span${_attr_class([ui_module_default.chip, side_nav_chips_module_default.portChip])}${_attr("title", p.cmd)}><button type=button${_attr_class([side_nav_chips_module_default.seg, side_nav_chips_module_default.portOpen])}${_attr("title", `Open http://${typeof location === "undefined" ? "localhost" : location.hostname}:${p.port}`)}>:${_sep($sg__input_status_ports)}${_escape(p.port)}${_el_resume($scope5_id, "c", $sg__input_status_ports)}</button>${_el_resume($scope5_id, "b")}<button type=button${_attr_class([
5858
+ side_nav_chips_module_default.seg,
5859
+ side_nav_chips_module_default.action,
5860
+ side_nav_chips_module_default.dismiss,
5861
+ { [side_nav_chips_module_default.armed]: armedPid === p.pid }
5862
+ ])}${armedPid === p.pid ? _attr("title", `Really kill ${p.cmd}?`) : _attr("title", `Kill ${p.cmd} (pid ${p.pid})`)}>`);
5863
+ icon_xmark_default({ size: 12 });
5864
+ _html(`</button>${_el_resume($scope5_id, "d")}</span>${_el_resume($scope5_id, "a", $sg__input_status_ports)}`);
5865
+ _script($scope5_id, "r5");
5866
+ _subscribe($armedPid__closures, writeScope($scope5_id, {
5867
+ h: p?.cmd,
5868
+ i: p?.port,
5869
+ j: p?.pid,
5793
5870
  _: _scope_with_id($scope1_id)
5794
5871
  }));
5795
5872
  }, "port", $scope1_id, "c", $sg__input_status_ports, $sg__input_status_ports, $sg__input_status_repos__OR__input_status_ports, 0, 1);
@@ -5803,21 +5880,23 @@ var side_nav_chips_default = _template("r", (input) => {
5803
5880
  }
5804
5881
  }, $scope0_id, "a", $sg__input_status_repos__OR__input_status_ports, $sg__input_status_repos__OR__input_status_ports, $sg__input_status_repos__OR__input_status_ports, 0, 1);
5805
5882
  writeScope($scope0_id, {
5806
- g: input.onReviewPr,
5807
- h: armedPid,
5808
- j: armBox.timer,
5809
- k: arm,
5810
- l: $si__input_status_repos__OR__input_status_ports && repos,
5811
- m: $si__input_status_repos__OR__input_status_ports && ports,
5812
- n: $si__input_status_repos && ports.length,
5813
- p: $armedPid__closures
5883
+ d: input.workspaceId,
5884
+ h: input.onReviewPr,
5885
+ i: armedPid,
5886
+ k: armBox.timer,
5887
+ l: armPid,
5888
+ m: dismissPr,
5889
+ n: $si__input_status_repos__OR__input_status_ports && repos,
5890
+ o: $si__input_status_repos__OR__input_status_ports && ports,
5891
+ p: $si__input_status_repos && ports.length,
5892
+ r: $armedPid__closures
5814
5893
  });
5815
5894
  _resume_branch($scope0_id);
5816
5895
  });
5817
5896
  //#endregion
5818
5897
  //#region src/tags/side-nav-item.marko
5819
5898
  var side_nav_item_default = _template("s", (input) => {
5820
- const $scope0_reason = _scope_reason(), $sg__input_workspaceId__OR__input_status = _serialize_guard($scope0_reason, 1), $sg__input_page = _serialize_guard($scope0_reason, 22), $si__input_current = _serialize_if($scope0_reason, 18), $sg__input_agents = _serialize_guard($scope0_reason, 24), $si__input_agents = _serialize_if($scope0_reason, 24), $sg__input_onNewSession = _serialize_guard($scope0_reason, 23), $sg__input_onNewSession__OR__input_onReview = _serialize_guard($scope0_reason, 2), $sg__input_onReview = _serialize_guard($scope0_reason, 25), $sg__input_sessions = _serialize_guard($scope0_reason, 20), $si__input_sessions = _serialize_if($scope0_reason, 20), $si__input_workspaces__OR__input_workspaceId = _serialize_if($scope0_reason, 0), $si__input_workspaceId__OR__input_status = _serialize_if($scope0_reason, 1), $si__input_page = _serialize_if($scope0_reason, 22), $sg__input_rail = _serialize_guard($scope0_reason, 17), $si__input_rail = _serialize_if($scope0_reason, 17), $sg__input_workspaces__OR__input_workspaceId = _serialize_guard($scope0_reason, 0), $si__input_workspaces__OR__input_workspaceId__OR__input_rail = _serialize_if($scope0_reason, 4), $si__input_workspaces__OR__input_workspaceId__OR__input_rail__OR__input_current__OR__input_page = _serialize_if($scope0_reason, 13), $si__input_index = _serialize_if($scope0_reason, 19), $si__input_onNewSession = _serialize_if($scope0_reason, 23), $si__input_onReview = _serialize_if($scope0_reason, 25), $si__input_managing = _serialize_if($scope0_reason, 26), $si__input_currentTab = _serialize_if($scope0_reason, 27), $si__input_railPop = _serialize_if($scope0_reason, 21), $si__input_onReviewPr = _serialize_if($scope0_reason, 28);
5899
+ const $scope0_reason = _scope_reason(), $sg__input_workspaceId__OR__input_status = _serialize_guard($scope0_reason, 1), $sg__input_page = _serialize_guard($scope0_reason, 21), $si__input_current = _serialize_if($scope0_reason, 17), $sg__input_agents = _serialize_guard($scope0_reason, 23), $si__input_agents = _serialize_if($scope0_reason, 23), $sg__input_onNewSession = _serialize_guard($scope0_reason, 22), $sg__input_onNewSession__OR__input_onReview = _serialize_guard($scope0_reason, 2), $sg__input_onReview = _serialize_guard($scope0_reason, 24), $sg__input_sessions = _serialize_guard($scope0_reason, 19), $si__input_sessions = _serialize_if($scope0_reason, 19), $si__input_workspaces__OR__input_workspaceId = _serialize_if($scope0_reason, 0), $si__input_workspaceId__OR__input_status = _serialize_if($scope0_reason, 1), $si__input_page = _serialize_if($scope0_reason, 21), $sg__input_rail = _serialize_guard($scope0_reason, 16), $si__input_rail = _serialize_if($scope0_reason, 16), $sg__input_workspaces__OR__input_workspaceId = _serialize_guard($scope0_reason, 0), $si__input_workspaceId = _serialize_if($scope0_reason, 15), $si__input_workspaces__OR__input_workspaceId__OR__input_rail = _serialize_if($scope0_reason, 3), $si__input_workspaces__OR__input_workspaceId__OR__input_rail__OR__input_current__OR__input_page = _serialize_if($scope0_reason, 12), $si__input_index = _serialize_if($scope0_reason, 18), $si__input_onNewSession = _serialize_if($scope0_reason, 22), $si__input_onReview = _serialize_if($scope0_reason, 24), $si__input_managing = _serialize_if($scope0_reason, 25), $si__input_currentTab = _serialize_if($scope0_reason, 26), $si__input_railPop = _serialize_if($scope0_reason, 20), $si__input_onReviewPr = _serialize_if($scope0_reason, 27);
5821
5900
  const $scope0_id = _scope_id();
5822
5901
  const $input_current__closures = /* @__PURE__ */ new Set();
5823
5902
  const $input_index__closures = /* @__PURE__ */ new Set();
@@ -5830,6 +5909,7 @@ var side_nav_item_default = _template("s", (input) => {
5830
5909
  const $armedKill__closures = /* @__PURE__ */ new Set();
5831
5910
  const $input_currentTab__closures = /* @__PURE__ */ new Set();
5832
5911
  const $renamingId__closures = /* @__PURE__ */ new Set();
5912
+ const $input_workspaceId__closures = /* @__PURE__ */ new Set();
5833
5913
  const $input_sessions__closures = /* @__PURE__ */ new Set();
5834
5914
  const $input_railPop__closures = /* @__PURE__ */ new Set();
5835
5915
  const $input_page__closures = /* @__PURE__ */ new Set();
@@ -5860,7 +5940,7 @@ var side_nav_item_default = _template("s", (input) => {
5860
5940
  _if(() => {
5861
5941
  if (input.rail) {
5862
5942
  const $scope2_id = _scope_id();
5863
- _html(`<button${_attr_class([side_nav_item_module_default.railBtn, { [side_nav_item_module_default.current]: input.current }])}${_attr("title", ws.name)}>${_escape((input.index ?? 0) + 1)}${_el_resume($scope2_id, "b", _serialize_guard($scope0_reason, 19))}<span${_attr_class([
5943
+ _html(`<button${_attr_class([side_nav_item_module_default.railBtn, { [side_nav_item_module_default.current]: input.current }])}${_attr("title", ws.name)}>${_escape((input.index ?? 0) + 1)}${_el_resume($scope2_id, "b", _serialize_guard($scope0_reason, 18))}<span${_attr_class([
5864
5944
  ui_module_default.dot,
5865
5945
  ui_module_default[dot],
5866
5946
  side_nav_item_module_default.railDot
@@ -5885,16 +5965,16 @@ var side_nav_item_default = _template("s", (input) => {
5885
5965
  _if(() => {
5886
5966
  if (input.page) {
5887
5967
  const $scope12_id = _scope_id();
5888
- _html(`<span${_attr_class(side_nav_item_module_default.wsMeta)}>${_escape(meta)}${_el_resume($scope12_id, "b", _serialize_guard($scope0_reason, 6))}</span>`);
5889
- _serialize_if($scope0_reason, 11) && writeScope($scope12_id, { _: _serialize_if($scope0_reason, 6) && _scope_with_id($scope3_id) });
5968
+ _html(`<span${_attr_class(side_nav_item_module_default.wsMeta)}>${_escape(meta)}${_el_resume($scope12_id, "b", _serialize_guard($scope0_reason, 5))}</span>`);
5969
+ _serialize_if($scope0_reason, 10) && writeScope($scope12_id, { _: _serialize_if($scope0_reason, 5) && _scope_with_id($scope3_id) });
5890
5970
  return 0;
5891
5971
  }
5892
- }, $scope3_id, "h", _serialize_guard($scope0_reason, 11), $sg__input_page, $sg__input_page, 0, 1);
5972
+ }, $scope3_id, "h", _serialize_guard($scope0_reason, 10), $sg__input_page, $sg__input_page, 0, 1);
5893
5973
  _html("</span>");
5894
5974
  _if(() => {
5895
5975
  if (input.page) {
5896
5976
  const $scope4_id = _scope_id();
5897
- _html(`<span${_attr_class(side_nav_item_module_default.wsOpenHint)}>${input.current ? "Open" : ""}${_el_resume($scope4_id, "b", _serialize_guard($scope0_reason, 18))}</span>`);
5977
+ _html(`<span${_attr_class(side_nav_item_module_default.wsOpenHint)}>${input.current ? "Open" : ""}${_el_resume($scope4_id, "b", _serialize_guard($scope0_reason, 17))}</span>`);
5898
5978
  $si__input_workspaces__OR__input_workspaceId__OR__input_rail__OR__input_current__OR__input_page && _subscribe($si__input_current && $input_current__closures, writeScope($scope4_id, {
5899
5979
  _: _scope_with_id($scope3_id),
5900
5980
  Cab: $si__input_current && 2
@@ -6026,25 +6106,26 @@ var side_nav_item_default = _template("s", (input) => {
6026
6106
  });
6027
6107
  const $childScope4 = _peek_scope_id();
6028
6108
  side_nav_chips_default({
6109
+ workspaceId: input.workspaceId,
6029
6110
  status: st,
6030
6111
  onReviewPr: input.onReviewPr
6031
6112
  });
6032
6113
  _html(`</div></section>${_el_resume($scope3_id, "a")}`);
6033
6114
  _script($scope3_id, "s10");
6034
- _subscribe($si__input_workspaces__OR__input_workspaceId && $ws_name__closures, _subscribe($si__input_onReviewPr && $input_onReviewPr__closures, _subscribe($si__input_page && $input_page__closures, _subscribe($si__input_railPop && $input_railPop__closures, _subscribe($si__input_sessions && $input_sessions__closures, _subscribe($si__input_current && $input_current__closures, writeScope($scope3_id, {
6115
+ _subscribe($si__input_workspaces__OR__input_workspaceId && $ws_name__closures, _subscribe($si__input_onReviewPr && $input_onReviewPr__closures, _subscribe($si__input_page && $input_page__closures, _subscribe($si__input_railPop && $input_railPop__closures, _subscribe($si__input_sessions && $input_sessions__closures, _subscribe($si__input_current && $input_current__closures, _subscribe($si__input_workspaceId && $input_workspaceId__closures, writeScope($scope3_id, {
6035
6116
  o: $si__input_workspaceId__OR__input_status && sessions.length,
6036
6117
  q: $si__input_workspaceId__OR__input_status && sessions[0]?.title,
6037
6118
  r: $si__input_workspaceId__OR__input_status && sessions[0]?.agent,
6038
6119
  s: $si__input_sessions && phaseLabel,
6039
6120
  u: $si__input_page && meta,
6040
6121
  _: _scope_with_id($scope1_id),
6041
- m: _serialize_if($scope0_reason, 7) && _existing_scope($childScope4),
6122
+ m: _serialize_if($scope0_reason, 6) && _existing_scope($childScope4),
6042
6123
  Cab: $si__input_current && 1,
6043
6124
  Cap: $si__input_workspaces__OR__input_workspaceId && 1
6044
- })))))));
6125
+ }))))))));
6045
6126
  return 1;
6046
6127
  }
6047
- }, $scope1_id, "a", _serialize_guard($scope0_reason, 5), $sg__input_rail, $sg__input_rail, 0, 1);
6128
+ }, $scope1_id, "a", _serialize_guard($scope0_reason, 4), $sg__input_rail, $sg__input_rail, 0, 1);
6048
6129
  writeScope($scope1_id, {
6049
6130
  b: $si__input_rail && st,
6050
6131
  c: $si__input_rail && dot,
@@ -6052,25 +6133,25 @@ var side_nav_item_default = _template("s", (input) => {
6052
6133
  });
6053
6134
  return 0;
6054
6135
  }
6055
- }, $scope0_id, "a", _serialize_guard($scope0_reason, 8), $sg__input_workspaces__OR__input_workspaceId, $sg__input_workspaces__OR__input_workspaceId);
6136
+ }, $scope0_id, "a", _serialize_guard($scope0_reason, 7), $sg__input_workspaces__OR__input_workspaceId, $sg__input_workspaces__OR__input_workspaceId);
6056
6137
  writeScope($scope0_id, {
6057
6138
  d: input.onRenameSession,
6058
- e: _serialize_if($scope0_reason, 16) && input.workspaces,
6059
- f: _serialize_if($scope0_reason, 3) && input.workspaceId,
6139
+ e: $si__input_workspaceId && input.workspaces,
6140
+ f: _serialize_if($scope0_reason, 7) && input.workspaceId,
6060
6141
  h: $si__input_workspaces__OR__input_workspaceId && input.status,
6061
6142
  i: $si__input_workspaces__OR__input_workspaceId && input.rail,
6062
- j: _serialize_if($scope0_reason, 14) && input.current,
6143
+ j: _serialize_if($scope0_reason, 13) && input.current,
6063
6144
  k: input.onSelect,
6064
6145
  l: $si__input_workspaces__OR__input_workspaceId__OR__input_rail && input.index,
6065
6146
  m: $si__input_workspaces__OR__input_workspaceId__OR__input_rail && input.sessions,
6066
6147
  n: $si__input_workspaces__OR__input_workspaceId__OR__input_rail__OR__input_current__OR__input_page && input.railPop,
6067
- o: _serialize_if($scope0_reason, 12) && input.page,
6148
+ o: _serialize_if($scope0_reason, 11) && input.page,
6068
6149
  p: input.onNewSession,
6069
- q: _serialize_if($scope0_reason, 15) && input.agents,
6150
+ q: _serialize_if($scope0_reason, 14) && input.agents,
6070
6151
  r: input.onReview,
6071
- s: _serialize_if($scope0_reason, 10) && input.managing,
6152
+ s: _serialize_if($scope0_reason, 9) && input.managing,
6072
6153
  t: input.onManage,
6073
- u: _serialize_if($scope0_reason, 9) && input.currentTab,
6154
+ u: _serialize_if($scope0_reason, 8) && input.currentTab,
6074
6155
  v: input.onOpenTab,
6075
6156
  w: input.onCloseSession,
6076
6157
  x: $si__input_workspaces__OR__input_workspaceId__OR__input_rail && input.onReviewPr,
@@ -6092,6 +6173,7 @@ var side_nav_item_default = _template("s", (input) => {
6092
6173
  am: $armedKill__closures,
6093
6174
  ak: $si__input_currentTab && $input_currentTab__closures,
6094
6175
  an: $renamingId__closures,
6176
+ a8: $si__input_workspaceId && $input_workspaceId__closures,
6095
6177
  ad: $si__input_sessions && $input_sessions__closures,
6096
6178
  ae: $si__input_railPop && $input_railPop__closures,
6097
6179
  af: $si__input_page && $input_page__closures,
@@ -6101,7 +6183,7 @@ var side_nav_item_default = _template("s", (input) => {
6101
6183
  });
6102
6184
  //#endregion
6103
6185
  //#region src/tags/icons/icon-folder-plus.marko
6104
- var icon_folder_plus_default = _template("H", (input) => {
6186
+ var icon_folder_plus_default = _template("I", (input) => {
6105
6187
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
6106
6188
  const $scope0_id = _scope_id();
6107
6189
  _set_serialize_reason({
@@ -6118,7 +6200,7 @@ var icon_folder_plus_default = _template("H", (input) => {
6118
6200
  });
6119
6201
  //#endregion
6120
6202
  //#region src/tags/icons/icon-sidebar-collapse.marko
6121
- var icon_sidebar_collapse_default = _template("P", (input) => {
6203
+ var icon_sidebar_collapse_default = _template("Q", (input) => {
6122
6204
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
6123
6205
  const $scope0_id = _scope_id();
6124
6206
  _set_serialize_reason({
@@ -6135,7 +6217,7 @@ var icon_sidebar_collapse_default = _template("P", (input) => {
6135
6217
  });
6136
6218
  //#endregion
6137
6219
  //#region src/tags/icons/icon-sidebar.marko
6138
- var icon_sidebar_default = _template("Q", (input) => {
6220
+ var icon_sidebar_default = _template("R", (input) => {
6139
6221
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
6140
6222
  const $scope0_id = _scope_id();
6141
6223
  _set_serialize_reason({
@@ -6153,7 +6235,7 @@ var icon_sidebar_default = _template("Q", (input) => {
6153
6235
  //#endregion
6154
6236
  //#region src/tags/side-nav.marko
6155
6237
  var side_nav_default = _template("t", (input) => {
6156
- const $scope0_reason = _scope_reason(), $sg__input_workspace__OR__input_allWorkspaces__OR__input_allStatus = _serialize_guard($scope0_reason, 1), $sg__input_workspace__OR__input_allWorkspaces = _serialize_guard($scope0_reason, 0), $sg__input_agents = _serialize_guard($scope0_reason, 10), $sg__input_workspace = _serialize_guard($scope0_reason, 2), $si__input_workspace = _serialize_if($scope0_reason, 2), $si__input_workspace__OR__input_allWorkspaces = _serialize_if($scope0_reason, 0), $si__input_allStatus = _serialize_if($scope0_reason, 8), $si__input_onSelectWorkspace = _serialize_if($scope0_reason, 9), $si__input_agents = _serialize_if($scope0_reason, 10), $si__input_onNewSession = _serialize_if($scope0_reason, 11), $si__input_onReviewOpened = _serialize_if($scope0_reason, 12), $si__input_sessions = _serialize_if($scope0_reason, 13), $si__input_onRenameSession = _serialize_if($scope0_reason, 14), $si__input_onCloseSession = _serialize_if($scope0_reason, 15);
6238
+ const $scope0_reason = _scope_reason(), $sg__input_workspace__OR__input_allWorkspaces = _serialize_guard($scope0_reason, 0), $sg__input_workspace__OR__input_allWorkspaces__OR__input_allStatus = _serialize_guard($scope0_reason, 1), $sg__input_agents = _serialize_guard($scope0_reason, 10), $sg__input_workspace = _serialize_guard($scope0_reason, 2), $si__input_workspace = _serialize_if($scope0_reason, 2), $si__input_workspace__OR__input_allWorkspaces = _serialize_if($scope0_reason, 0), $si__input_allStatus = _serialize_if($scope0_reason, 8), $si__input_onSelectWorkspace = _serialize_if($scope0_reason, 9), $si__input_agents = _serialize_if($scope0_reason, 10), $si__input_onNewSession = _serialize_if($scope0_reason, 11), $si__input_onReviewOpened = _serialize_if($scope0_reason, 12), $si__input_sessions = _serialize_if($scope0_reason, 13), $si__input_onRenameSession = _serialize_if($scope0_reason, 14), $si__input_onCloseSession = _serialize_if($scope0_reason, 15);
6157
6239
  const $scope0_id = _scope_id();
6158
6240
  const $notifyOn__closures = /* @__PURE__ */ new Set();
6159
6241
  const $ws_id__closures = /* @__PURE__ */ new Set();
@@ -6253,16 +6335,15 @@ var side_nav_default = _template("t", (input) => {
6253
6335
  13: 1,
6254
6336
  14: 1,
6255
6337
  15: 1,
6256
- 16: 1,
6257
- 18: 1,
6258
- 20: 1,
6338
+ 17: 1,
6339
+ 19: 1,
6340
+ 21: 1,
6259
6341
  22: 1,
6260
- 23: 1,
6261
- 24: $sg__input_agents,
6342
+ 23: $sg__input_agents,
6343
+ 24: 1,
6262
6344
  25: 1,
6263
6345
  26: 1,
6264
- 27: 1,
6265
- 28: $sg__input_workspace
6346
+ 27: $sg__input_workspace
6266
6347
  });
6267
6348
  const $childScope = _peek_scope_id();
6268
6349
  side_nav_item_default({
@@ -6338,22 +6419,21 @@ var side_nav_default = _template("t", (input) => {
6338
6419
  _set_serialize_reason({
6339
6420
  0: $sg__input_workspace__OR__input_allWorkspaces,
6340
6421
  1: $sg__input_workspace__OR__input_allWorkspaces__OR__input_allStatus,
6341
- 3: $sg__input_workspace__OR__input_allWorkspaces__OR__input_allStatus,
6342
- 4: $sg__input_workspace__OR__input_allWorkspaces,
6422
+ 3: $sg__input_workspace__OR__input_allWorkspaces,
6423
+ 4: $sg__input_workspace__OR__input_allWorkspaces__OR__input_allStatus,
6343
6424
  5: $sg__input_workspace__OR__input_allWorkspaces__OR__input_allStatus,
6344
6425
  6: $sg__input_workspace__OR__input_allWorkspaces__OR__input_allStatus,
6345
6426
  7: $sg__input_workspace__OR__input_allWorkspaces__OR__input_allStatus,
6346
- 8: $sg__input_workspace__OR__input_allWorkspaces__OR__input_allStatus,
6427
+ 8: $sg__input_workspace__OR__input_allWorkspaces,
6347
6428
  9: $sg__input_workspace__OR__input_allWorkspaces,
6348
- 10: $sg__input_workspace__OR__input_allWorkspaces,
6349
- 11: $sg__input_workspace__OR__input_allWorkspaces__OR__input_allStatus,
6429
+ 10: $sg__input_workspace__OR__input_allWorkspaces__OR__input_allStatus,
6430
+ 11: 1,
6350
6431
  12: 1,
6351
- 13: 1,
6432
+ 13: $sg__input_workspace__OR__input_allWorkspaces,
6352
6433
  14: $sg__input_workspace__OR__input_allWorkspaces,
6353
6434
  15: $sg__input_workspace__OR__input_allWorkspaces,
6354
- 16: $sg__input_workspace__OR__input_allWorkspaces,
6355
- 18: 1,
6356
- 19: $sg__input_workspace__OR__input_allWorkspaces
6435
+ 17: 1,
6436
+ 18: $sg__input_workspace__OR__input_allWorkspaces
6357
6437
  });
6358
6438
  const $childScope2 = _peek_scope_id();
6359
6439
  side_nav_item_default({
@@ -6398,15 +6478,14 @@ var side_nav_default = _template("t", (input) => {
6398
6478
  13: 1,
6399
6479
  14: 1,
6400
6480
  15: 1,
6401
- 16: 1,
6402
- 18: 1,
6403
- 20: 1,
6404
- 23: 1,
6405
- 24: $sg__input_agents,
6481
+ 17: 1,
6482
+ 19: 1,
6483
+ 22: 1,
6484
+ 23: $sg__input_agents,
6485
+ 24: 1,
6406
6486
  25: 1,
6407
6487
  26: 1,
6408
- 27: 1,
6409
- 28: $sg__input_workspace
6488
+ 27: $sg__input_workspace
6410
6489
  });
6411
6490
  const $childScope3 = _peek_scope_id();
6412
6491
  side_nav_item_default({
@@ -6834,61 +6913,61 @@ function treeRows(files) {
6834
6913
  return rows;
6835
6914
  }
6836
6915
  var diff_view_module_default = {
6837
- iconBtn: "_dO _cw",
6838
- spinning: "_dP _cx",
6839
- diffView: "_dQ",
6840
- treeToggle: "_dR _cw",
6841
- diffTools: "_dS",
6842
- on: "_dT",
6843
- diffCol: "_dU",
6844
- chrome: "_dV",
6845
- backBtn: "_dW",
6846
- headText: "_dX",
6847
- pageTitle: "_dY",
6848
- headWithSend: "_dZ",
6849
- toolCtrl: "_d0",
6850
- findBtn: "_d1",
6851
- findSlot: "_d2",
6852
- findSlotClosed: "_d3",
6853
- toolsFind: "_d4",
6854
- fileFindActive: "_d5",
6855
- pathFindActive: "_d6",
6856
- diffMain: "_d7",
6857
- toastMeta: "_d8",
6858
- diffHead: "_d9",
6859
- filterSlot: "_d_",
6860
- diffStats: "_ea",
6861
- statAdd: "_eb",
6862
- statDel: "_ec",
6863
- statEmpty: "_ed",
6864
- statSep: "_ee",
6865
- scope: "_ef",
6866
- scopeOpt: "_eg",
6867
- scopeOn: "_eh",
6868
- scopeChip: "_ei",
6869
- repoSection: "_ej",
6870
- repoSep: "_ek",
6871
- repoSepCollapsed: "_el",
6872
- repoWorktree: "_em _k",
6873
- repoState: "_en",
6874
- repoTitle: "_eo _j",
6875
- repoMeta: "_ep",
6876
- compare: "_eq",
6877
- compareBase: "_er",
6878
- compareHead: "_es",
6879
- compareVs: "_et",
6880
- compareTopic: "_eu",
6881
- files: "_ev",
6882
- file: "_ew",
6883
- diffWait: "_ex",
6884
- treeChev: "_ey",
6885
- treeChevOpen: "_ez",
6886
- treeChevBusy: "_eA",
6887
- status: "_eB",
6888
- path: "_eC",
6889
- centerPad: "_eD",
6890
- filesBtn: "_eE",
6891
- diffPad: "_eF"
6916
+ iconBtn: "_dH _ez",
6917
+ spinning: "_dI _eA",
6918
+ diffView: "_dJ",
6919
+ treeToggle: "_dK _ez",
6920
+ diffTools: "_dL",
6921
+ on: "_dM",
6922
+ diffCol: "_dN",
6923
+ chrome: "_dO",
6924
+ backBtn: "_dP",
6925
+ headText: "_dQ",
6926
+ pageTitle: "_dR",
6927
+ headWithSend: "_dS",
6928
+ toolCtrl: "_dT",
6929
+ findBtn: "_dU",
6930
+ findSlot: "_dV",
6931
+ findSlotClosed: "_dW",
6932
+ toolsFind: "_dX",
6933
+ fileFindActive: "_dY",
6934
+ pathFindActive: "_dZ",
6935
+ diffMain: "_d0",
6936
+ toastMeta: "_d1",
6937
+ diffHead: "_d2",
6938
+ filterSlot: "_d3",
6939
+ diffStats: "_d4",
6940
+ statAdd: "_d5",
6941
+ statDel: "_d6",
6942
+ statEmpty: "_d7",
6943
+ statSep: "_d8",
6944
+ scope: "_d9",
6945
+ scopeOpt: "_d_",
6946
+ scopeOn: "_ea",
6947
+ scopeChip: "_eb",
6948
+ repoSection: "_ec",
6949
+ repoSep: "_ed",
6950
+ repoSepCollapsed: "_ee",
6951
+ repoWorktree: "_ef _k",
6952
+ repoState: "_eg",
6953
+ repoTitle: "_eh _j",
6954
+ repoMeta: "_ei",
6955
+ compare: "_ej",
6956
+ compareBase: "_ek",
6957
+ compareHead: "_el",
6958
+ compareVs: "_em",
6959
+ compareTopic: "_en",
6960
+ files: "_eo",
6961
+ file: "_ep",
6962
+ diffWait: "_eq",
6963
+ treeChev: "_er",
6964
+ treeChevOpen: "_es",
6965
+ treeChevBusy: "_et",
6966
+ status: "_eu",
6967
+ path: "_ev",
6968
+ centerPad: "_ew",
6969
+ filesBtn: "_ex",
6970
+ diffPad: "_ey"
6892
6971
  };
6893
6972
  //#endregion
6894
6973
  //#region src/tags/icons/icon-back.marko
@@ -6908,8 +6987,8 @@ var icon_back_default = _template("A", (input) => {
6908
6987
  _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
6909
6988
  });
6910
6989
  var file_filter_module_default = {
6911
- wrap: "_fg",
6912
- fileFilter: "_fh"
6990
+ wrap: "_eN",
6991
+ fileFilter: "_eO"
6913
6992
  };
6914
6993
  //#endregion
6915
6994
  //#region src/tags/file-filter.marko
@@ -6957,7 +7036,7 @@ var file_filter_default = _template("j", (input) => {
6957
7036
  });
6958
7037
  _resume_branch($scope0_id);
6959
7038
  });
6960
- var diff_send_module_default = { headActions: "_fs" };
7039
+ var diff_send_module_default = { headActions: "_e0" };
6961
7040
  //#endregion
6962
7041
  //#region src/tags/diff-send.marko
6963
7042
  var diff_send_default = _template("g", (input) => {
@@ -8449,17 +8528,17 @@ function clip(line, at, len) {
8449
8528
  return (start > 0 ? "…" : "") + line.slice(start, end) + (end < line.length ? "…" : "");
8450
8529
  }
8451
8530
  var diff_find_module_default = {
8452
- findBar: "_fu",
8453
- closed: "_fv",
8454
- findInput: "_fw",
8455
- termOverlay: "_fx",
8456
- count: "_fy",
8457
- findIconBtn: "_fz _cw",
8458
- findWrap: "_fA",
8459
- termOverlayWrap: "_fB",
8460
- termKeybarWrap: "_fC",
8461
- termKeybar: "_fD",
8462
- termClosed: "_fE"
8531
+ findBar: "_eC",
8532
+ closed: "_eD",
8533
+ findInput: "_eE",
8534
+ termOverlay: "_eF",
8535
+ count: "_eG",
8536
+ findIconBtn: "_eH _ez",
8537
+ findWrap: "_eI",
8538
+ termOverlayWrap: "_eJ",
8539
+ termKeybarWrap: "_eK",
8540
+ termKeybar: "_eL",
8541
+ termClosed: "_eM"
8463
8542
  };
8464
8543
  //#endregion
8465
8544
  //#region src/tags/diff-find.marko
@@ -8567,7 +8646,7 @@ var diff_find_default = _template("f", (input) => {
8567
8646
  });
8568
8647
  //#endregion
8569
8648
  //#region src/tags/icons/icon-search.marko
8570
- var icon_search_default = _template("O", (input) => {
8649
+ var icon_search_default = _template("P", (input) => {
8571
8650
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
8572
8651
  const $scope0_id = _scope_id();
8573
8652
  _set_serialize_reason({
@@ -8582,7 +8661,7 @@ var icon_search_default = _template("O", (input) => {
8582
8661
  });
8583
8662
  _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
8584
8663
  });
8585
- var diff_file_module_default = { diffFile: "_ft" };
8664
+ var diff_file_module_default = { diffFile: "_eZ" };
8586
8665
  //#endregion
8587
8666
  //#region src/tags/diff-file.marko
8588
8667
  var diff_file_default = _template("e", (input) => {
@@ -8607,16 +8686,16 @@ var diff_file_default = _template("e", (input) => {
8607
8686
  _resume_branch($scope0_id);
8608
8687
  });
8609
8688
  var diff_tree_module_default = {
8610
- tree: "_fi",
8611
- closed: "_fj",
8612
- treeRepo: "_fk",
8613
- treeRepoName: "_fl",
8614
- treeDir: "_fm",
8615
- treeFile: "_fn",
8616
- treeFileName: "_fo",
8617
- treeNote: "_fp",
8618
- treeChev: "_fq",
8619
- status: "_fr"
8689
+ tree: "_fr",
8690
+ closed: "_fs",
8691
+ treeRepo: "_ft",
8692
+ treeRepoName: "_fu",
8693
+ treeDir: "_fv",
8694
+ treeFile: "_fw",
8695
+ treeFileName: "_fx",
8696
+ treeNote: "_fy",
8697
+ treeChev: "_fz",
8698
+ status: "_fA"
8620
8699
  };
8621
8700
  //#endregion
8622
8701
  //#region src/tags/diff-tree.marko
@@ -8730,16 +8809,16 @@ var diff_tree_default = _template("h", (input) => {
8730
8809
  _resume_branch($scope0_id);
8731
8810
  });
8732
8811
  var diff_file_sheet_module_default = {
8733
- iconBtn: "_e7 _cw",
8734
- spinning: "_e8 _cx",
8735
- sheetBackdrop: "_e9",
8736
- fileSheet: "_e_",
8737
- sheetHead: "_fa",
8738
- fileCount: "_fb",
8739
- sheetList: "_fc",
8740
- sheetFile: "_fd",
8741
- sheetPath: "_fe",
8742
- status: "_ff"
8812
+ iconBtn: "_eP _ez",
8813
+ spinning: "_eQ _eA",
8814
+ sheetBackdrop: "_eR",
8815
+ fileSheet: "_eS",
8816
+ sheetHead: "_eT",
8817
+ fileCount: "_eU",
8818
+ sheetList: "_eV",
8819
+ sheetFile: "_eW",
8820
+ sheetPath: "_eX",
8821
+ status: "_eY"
8743
8822
  };
8744
8823
  //#endregion
8745
8824
  //#region src/tags/diff-file-sheet.marko
@@ -9853,41 +9932,37 @@ var diff_view_default = _template("i", (input) => {
9853
9932
  _resume_branch($scope0_id);
9854
9933
  });
9855
9934
  var manage_workspace_module_default = {
9856
- content: "_df _A",
9857
- pageMeta: "_dg _E",
9858
- wsLabel: "_dh",
9859
- metaSep: "_di",
9860
- pathMeta: "_dj",
9861
- statusPill: "_dk",
9862
- statusOff: "_dl",
9863
- progress: "_dm",
9864
- section: "_dn",
9865
- sectionHead: "_do",
9866
- sectionCount: "_dp",
9867
- sectionBtn: "_dq",
9868
- groupLabel: "_dr",
9869
- pickerWrap: "_ds",
9870
- cardList: "_dt",
9871
- card: "_du",
9872
- pending: "_dv",
9873
- cardMain: "_dw",
9874
- cardTitle: "_dx",
9875
- cardMeta: "_dy",
9876
- cardSub: "_dz",
9877
- cardTag: "_dA",
9878
- cardAction: "_dB",
9879
- dangerAction: "_dC",
9880
- armed: "_dD",
9881
- okAction: "_dE",
9882
- prState: "_dF",
9883
- portLink: "_dG",
9884
- emptyNote: "_dH",
9885
- dangerZone: "_dI",
9886
- dangerRow: "_dJ",
9887
- dangerBtn: "_dK",
9888
- dangerHint: "_dL",
9889
- iconBtn: "_dM _cw",
9890
- spinning: "_dN _cx"
9935
+ content: "_cl _bE",
9936
+ pageMeta: "_cm _bI",
9937
+ wsLabel: "_cn",
9938
+ metaSep: "_co",
9939
+ pathMeta: "_cp",
9940
+ statusPill: "_cq",
9941
+ statusOff: "_cr",
9942
+ progress: "_cs",
9943
+ section: "_ct",
9944
+ sectionHead: "_cu",
9945
+ sectionCount: "_cv",
9946
+ pickerWrap: "_cw",
9947
+ cardList: "_cx",
9948
+ card: "_cy",
9949
+ pending: "_cz",
9950
+ cardMain: "_cA",
9951
+ cardTitle: "_cB",
9952
+ cardMeta: "_cC",
9953
+ cardSub: "_cD",
9954
+ cardTag: "_cE",
9955
+ cardAction: "_cF",
9956
+ dangerAction: "_cG",
9957
+ armed: "_cH",
9958
+ portLink: "_cI",
9959
+ emptyNote: "_cJ",
9960
+ dangerZone: "_cK",
9961
+ dangerRow: "_cL",
9962
+ dangerBtn: "_cM",
9963
+ dangerHint: "_cN",
9964
+ iconBtn: "_cO _ez",
9965
+ spinning: "_cP _eA"
9891
9966
  };
9892
9967
  //#endregion
9893
9968
  //#region src/tags/manage-workspace.marko
@@ -9898,12 +9973,8 @@ var manage_workspace_default = _template("k", (input) => {
9898
9973
  const $scope0_id = _scope_id();
9899
9974
  const $error__closures = /* @__PURE__ */ new Set();
9900
9975
  const $confirmingRemove__closures = /* @__PURE__ */ new Set();
9901
- const $finishedCount__closures = /* @__PURE__ */ new Set();
9902
- const $prRepos_length__closures = /* @__PURE__ */ new Set();
9903
9976
  let catalogRefreshing = false;
9904
9977
  let procs = lastData.get(`procs:${input.workspace.id}`) || null;
9905
- let prs = lastData.get(`prs:${input.workspace.id}`) || null;
9906
- let prsRefreshing = false;
9907
9978
  let busy = /* @__PURE__ */ new Set();
9908
9979
  let error = null;
9909
9980
  let pendingAction = null;
@@ -9919,56 +9990,13 @@ var manage_workspace_default = _template("k", (input) => {
9919
9990
  lastData.set(`procs:${ws.id}`, data);
9920
9991
  } catch {}
9921
9992
  }, "k0", $scope0_id);
9922
- const loadPrs = _resume(async (signal, refresh) => {
9923
- try {
9924
- const data = await api$3(`/api/workspaces/${ws.id}/prs${refresh ? "?refresh" : ""}`, { signal });
9925
- prs = data;
9926
- lastData.set(`prs:${ws.id}`, data);
9927
- } catch {}
9928
- }, "k1", $scope0_id);
9929
- const refreshPrs = _resume(async () => {
9930
- prsRefreshing = true;
9931
- await loadPrs(void 0, true);
9932
- prsRefreshing = false;
9933
- }, "k2", $scope0_id);
9934
- const clearFinished = _resume(async () => {
9935
- for (const repo of prs || []) for (const pr of repo.prs) {
9936
- if (pr.state === "OPEN") continue;
9937
- await api$3(`/api/workspaces/${ws.id}/prs`, {
9938
- method: "POST",
9939
- headers: { "content-type": "application/json" },
9940
- body: JSON.stringify({
9941
- fullName: repo.full_name,
9942
- number: pr.number
9943
- })
9944
- }).catch(() => {});
9945
- }
9946
- await loadPrs(void 0, false);
9947
- }, "k3", $scope0_id);
9948
- const dismissPr = _resume(async (fullName, number) => {
9949
- error = null;
9950
- try {
9951
- const data = await api$3(`/api/workspaces/${ws.id}/prs`, {
9952
- method: "POST",
9953
- headers: { "content-type": "application/json" },
9954
- body: JSON.stringify({
9955
- fullName,
9956
- number
9957
- })
9958
- });
9959
- prs = data;
9960
- lastData.set(`prs:${ws.id}`, data);
9961
- } catch (err) {
9962
- error = String(err.message || err);
9963
- }
9964
- }, "k4", $scope0_id);
9965
9993
  const inWorkspace = new Set(ws.repos.map((r) => r.full_name));
9966
9994
  const setBusy = _resume((name, on) => {
9967
9995
  const next = new Set(busy);
9968
9996
  if (on) next.add(name);
9969
9997
  else next.delete(name);
9970
9998
  busy = next;
9971
- }, "k5", $scope0_id);
9999
+ }, "k1", $scope0_id);
9972
10000
  const addRepo = _resume(async (name, baseBranch) => {
9973
10001
  if (!name || busy.has(name)) return;
9974
10002
  error = null;
@@ -9986,7 +10014,7 @@ var manage_workspace_default = _template("k", (input) => {
9986
10014
  error = String(err.message || err);
9987
10015
  }
9988
10016
  setBusy(name, false);
9989
- }, "k6", $scope0_id);
10017
+ }, "k2", $scope0_id);
9990
10018
  const removeRepo = _resume(async (row) => {
9991
10019
  if (busy.has(row.full_name)) return;
9992
10020
  error = null;
@@ -10001,7 +10029,7 @@ var manage_workspace_default = _template("k", (input) => {
10001
10029
  error = String(err.message || err);
10002
10030
  }
10003
10031
  setBusy(row.full_name, false);
10004
- }, "k7", $scope0_id);
10032
+ }, "k3", $scope0_id);
10005
10033
  const runAction = _resume(async (action) => {
10006
10034
  error = null;
10007
10035
  pendingAction = action;
@@ -10023,48 +10051,47 @@ var manage_workspace_default = _template("k", (input) => {
10023
10051
  pendingAction = null;
10024
10052
  actionStep = null;
10025
10053
  }
10026
- }, "k8", $scope0_id);
10054
+ }, "k4", $scope0_id);
10027
10055
  const killProc = _resume(async (pid) => {
10028
10056
  await fetch(`/api/procs/${pid}`, { method: "DELETE" });
10029
10057
  setTimeout(() => loadProcs(void 0), 500);
10030
- }, "k9", $scope0_id);
10031
- const finishedCount = (prs || []).reduce((n, r) => n + r.prs.filter((pr) => pr.state !== "OPEN").length, 0);
10058
+ }, "k5", $scope0_id);
10032
10059
  const titleId = _id();
10033
10060
  _html(`<div${_attr_class(page_shell_module_default.page)} role=region${_attr("aria-labelledby", titleId)}><div${_attr_class(page_shell_module_default.body)}><div${_attr_class(manage_workspace_module_default.content)}><header${_attr_class(page_shell_module_default.pageHead)}><div${_attr_class(page_shell_module_default.pageHeadText)}><h1${_attr("id", titleId)}>Manage</h1><p${_attr_class(manage_workspace_module_default.pageMeta)}${_attr("title", ws.display_path || ws.path)}><span${_attr_class(manage_workspace_module_default.wsLabel)}>${_escape(ws.name)}${_el_resume($scope0_id, "i")}</span>`);
10034
10061
  _if(() => {
10035
10062
  if (ws.status !== "active") {
10036
- const $scope15_id = _scope_id();
10063
+ const $scope10_id = _scope_id();
10037
10064
  _html(`<span${_attr_class([manage_workspace_module_default.statusPill, manage_workspace_module_default.statusOff])}>Archived</span>`);
10038
- writeScope($scope15_id, {});
10065
+ writeScope($scope10_id, {});
10039
10066
  return 0;
10040
10067
  }
10041
10068
  }, $scope0_id, "j", 1, 1, 1, 0, 1);
10042
10069
  _html(`<span${_attr_class(manage_workspace_module_default.metaSep)} aria-hidden=true>·</span><span${_attr_class([manage_workspace_module_default.pathMeta, ui_module_default.mono])}>${_escape(ws.display_path || ws.path)}${_el_resume($scope0_id, "m")}</span></p>${_el_resume($scope0_id, "g")}</div></header>`);
10043
10070
  _if(() => {
10044
10071
  if (error) {
10045
- const $scope3_id = _scope_id();
10072
+ const $scope2_id = _scope_id();
10046
10073
  toast_default({
10047
10074
  placement: "inline",
10048
10075
  onDismiss: _resume(function() {
10049
10076
  error = null;
10050
- }, "k10", $scope3_id),
10051
- content: _content_resume("k14", () => {
10077
+ }, "k6", $scope2_id),
10078
+ content: _content_resume("k10", () => {
10052
10079
  _scope_reason();
10053
- const $scope4_id = _scope_id();
10054
- _html(`${_escape(error)}${_el_resume($scope4_id, "a")}`);
10055
- _subscribe($error__closures, writeScope($scope4_id, { _: _scope_with_id($scope3_id) }));
10056
- _resume_branch($scope4_id);
10057
- }, $scope3_id)
10080
+ const $scope3_id = _scope_id();
10081
+ _html(`${_escape(error)}${_el_resume($scope3_id, "a")}`);
10082
+ _subscribe($error__closures, writeScope($scope3_id, { _: _scope_with_id($scope2_id) }));
10083
+ _resume_branch($scope3_id);
10084
+ }, $scope2_id)
10058
10085
  });
10059
- writeScope($scope3_id, {});
10086
+ writeScope($scope2_id, {});
10060
10087
  return 0;
10061
10088
  }
10062
10089
  }, $scope0_id, "n", 1, 1, 1, 0, 1);
10063
10090
  _if(() => {
10064
10091
  if (pendingAction && actionStep) {
10065
- const $scope8_id = _scope_id();
10066
- _html(`<p${_attr_class(manage_workspace_module_default.progress)}><span${_attr_class(ui_module_default.spin)}></span><!>${_escape(actionStep)}${_el_resume($scope8_id, "c")}</p>`);
10067
- writeScope($scope8_id, {});
10092
+ const $scope7_id = _scope_id();
10093
+ _html(`<p${_attr_class(manage_workspace_module_default.progress)}><span${_attr_class(ui_module_default.spin)}></span><!>${_escape(actionStep)}${_el_resume($scope7_id, "c")}</p>`);
10094
+ writeScope($scope7_id, {});
10068
10095
  return 0;
10069
10096
  }
10070
10097
  }, $scope0_id, "o", 1, 1, 1, 0, 1);
@@ -10072,37 +10099,37 @@ var manage_workspace_default = _template("k", (input) => {
10072
10099
  icon_refresh_default({ size: 14 });
10073
10100
  _html(`</button>${_el_resume($scope0_id, "u")}</div><ul${_attr_class(manage_workspace_module_default.cardList)}>`);
10074
10101
  _for_of(ws.repos, (row) => {
10075
- const $scope2_id = _scope_id();
10076
- _html(`<li${_attr_class(manage_workspace_module_default.card)}><div${_attr_class(manage_workspace_module_default.cardMain)}><span${_attr_class([manage_workspace_module_default.cardTitle, ui_module_default.mono])}>${_escape(row.worktree)}${_el_resume($scope2_id, "d")}/</span><span${_attr_class(manage_workspace_module_default.cardMeta)}><span${_attr_class(manage_workspace_module_default.cardSub)}>${_escape(row.full_name)}${_el_resume($scope2_id, "g")}</span>`);
10102
+ const $scope1_id = _scope_id();
10103
+ _html(`<li${_attr_class(manage_workspace_module_default.card)}><div${_attr_class(manage_workspace_module_default.cardMain)}><span${_attr_class([manage_workspace_module_default.cardTitle, ui_module_default.mono])}>${_escape(row.worktree)}${_el_resume($scope1_id, "d")}/</span><span${_attr_class(manage_workspace_module_default.cardMeta)}><span${_attr_class(manage_workspace_module_default.cardSub)}>${_escape(row.full_name)}${_el_resume($scope1_id, "g")}</span>`);
10077
10104
  _if(() => {
10078
10105
  if (row.base_branch !== row.default_branch) {
10079
- const $scope16_id = _scope_id();
10080
- _html(`<span${_attr_class([manage_workspace_module_default.cardTag, ui_module_default.mono])} title="Base branch">⎇ <!>${_escape(row.base_branch)}${_el_resume($scope16_id, "b")}</span>`);
10081
- writeScope($scope16_id, {});
10106
+ const $scope11_id = _scope_id();
10107
+ _html(`<span${_attr_class([manage_workspace_module_default.cardTag, ui_module_default.mono])} title="Base branch">⎇ <!>${_escape(row.base_branch)}${_el_resume($scope11_id, "b")}</span>`);
10108
+ writeScope($scope11_id, {});
10082
10109
  return 0;
10083
10110
  }
10084
- }, $scope2_id, "h", 1, 1, 1, 0, 1);
10111
+ }, $scope1_id, "h", 1, 1, 1, 0, 1);
10085
10112
  _html("</span></div>");
10086
10113
  _if(() => {
10087
10114
  if (busy.has(row.full_name)) {
10088
- const $scope17_id = _scope_id();
10115
+ const $scope12_id = _scope_id();
10089
10116
  _html(`<span${_attr_class(ui_module_default.spin)}></span>`);
10090
- writeScope($scope17_id, {});
10117
+ writeScope($scope12_id, {});
10091
10118
  return 0;
10092
10119
  } else {
10093
- const $scope7_id = _scope_id();
10120
+ const $scope6_id = _scope_id();
10094
10121
  _html(`<button${_attr_class([
10095
10122
  manage_workspace_module_default.cardAction,
10096
10123
  manage_workspace_module_default.dangerAction,
10097
10124
  { [manage_workspace_module_default.armed]: confirmingRemove === row.full_name }
10098
- ])}${confirmingRemove === row.full_name ? _attr("title", `Really remove ${row.worktree}/? Uncommitted changes are lost.`) : _attr("title", `Remove ${row.worktree}/`)}>${confirmingRemove === row.full_name ? "Remove?" : "×"}${_el_resume($scope7_id, "b")}</button>${_el_resume($scope7_id, "a")}`);
10099
- _script($scope7_id, "k15");
10100
- _subscribe($confirmingRemove__closures, writeScope($scope7_id, {}));
10125
+ ])}${confirmingRemove === row.full_name ? _attr("title", `Really remove ${row.worktree}/? Uncommitted changes are lost.`) : _attr("title", `Remove ${row.worktree}/`)}>${confirmingRemove === row.full_name ? "Remove?" : "×"}${_el_resume($scope6_id, "b")}</button>${_el_resume($scope6_id, "a")}`);
10126
+ _script($scope6_id, "k11");
10127
+ _subscribe($confirmingRemove__closures, writeScope($scope6_id, {}));
10101
10128
  return 1;
10102
10129
  }
10103
- }, $scope2_id, "i", 1, 1, 1, 0, 1);
10130
+ }, $scope1_id, "i", 1, 1, 1, 0, 1);
10104
10131
  _html("</li>");
10105
- writeScope($scope2_id, {
10132
+ writeScope($scope1_id, {
10106
10133
  k: row,
10107
10134
  l: row?.worktree,
10108
10135
  m: row?.full_name,
@@ -10110,16 +10137,16 @@ var manage_workspace_default = _template("k", (input) => {
10110
10137
  });
10111
10138
  }, "full_name", $scope0_id, "x", 1, 1, 1, 0, 1);
10112
10139
  _for_of([...busy].filter((n) => !inWorkspace.has(n)), (name) => {
10113
- const $scope18_id = _scope_id();
10114
- _html(`<li${_attr_class([manage_workspace_module_default.card, manage_workspace_module_default.pending])}><span${_attr_class(ui_module_default.spin)}></span><div${_attr_class(manage_workspace_module_default.cardMain)}><span${_attr_class(manage_workspace_module_default.cardSub)}>Adding <!>${_escape(name)}${_el_resume($scope18_id, "e")}…</span></div></li>`);
10115
- writeScope($scope18_id, {});
10140
+ const $scope13_id = _scope_id();
10141
+ _html(`<li${_attr_class([manage_workspace_module_default.card, manage_workspace_module_default.pending])}><span${_attr_class(ui_module_default.spin)}></span><div${_attr_class(manage_workspace_module_default.cardMain)}><span${_attr_class(manage_workspace_module_default.cardSub)}>Adding <!>${_escape(name)}${_el_resume($scope13_id, "e")}…</span></div></li>`);
10142
+ writeScope($scope13_id, {});
10116
10143
  }, (n) => n, $scope0_id, "y", 1, 1, 1, 0, 1);
10117
10144
  _html("</ul>");
10118
10145
  _if(() => {
10119
10146
  if (!ws.repos.length && !busy.size) {
10120
- const $scope19_id = _scope_id();
10147
+ const $scope14_id = _scope_id();
10121
10148
  _html(`<p${_attr_class(manage_workspace_module_default.emptyNote)}>No repos yet — search below to add one.</p>`);
10122
- writeScope($scope19_id, {});
10149
+ writeScope($scope14_id, {});
10123
10150
  return 0;
10124
10151
  }
10125
10152
  }, $scope0_id, "z", 1, 1, 1, 0, 1);
@@ -10129,213 +10156,132 @@ var manage_workspace_default = _template("k", (input) => {
10129
10156
  exclude: inWorkspace,
10130
10157
  onPick: _resume(function(name, baseBranch) {
10131
10158
  addRepo(name, baseBranch);
10132
- }, "k11", $scope0_id),
10159
+ }, "k7", $scope0_id),
10133
10160
  onError: _resume(function(message) {
10134
10161
  error = message;
10135
- }, "k12", $scope0_id),
10162
+ }, "k8", $scope0_id),
10136
10163
  refreshingChange: _resume(function(busy) {
10137
10164
  catalogRefreshing = busy;
10138
- }, "k13", $scope0_id)
10165
+ }, "k9", $scope0_id)
10139
10166
  });
10140
- _var($scope0_id, "a2", $childScope, "k16");
10141
- const prRepos = (prs || []).filter((r) => r.prs.length);
10142
- _html("</div></section>");
10143
- _if(() => {
10144
- if (prRepos.length) {
10145
- const $scope1_id = _scope_id();
10146
- _html(`<section${_attr_class(manage_workspace_module_default.section)}><div${_attr_class(manage_workspace_module_default.sectionHead)}><h2>Pull requests</h2><div${_attr_class(ui_module_default.spacer)}></div>`);
10147
- _if(() => {
10148
- if (finishedCount) {
10149
- const $scope9_id = _scope_id();
10150
- _html(`<button${_attr_class([ui_module_default.btn, manage_workspace_module_default.sectionBtn])} title="Confirm every merged/closed PR is done — remove them from this list">Clear <!>${_escape(finishedCount)}${_el_resume($scope9_id, "b")}</button>${_el_resume($scope9_id, "a")}`);
10151
- _script($scope9_id, "k17");
10152
- _subscribe($finishedCount__closures, writeScope($scope9_id, {}));
10153
- return 0;
10154
- }
10155
- }, $scope1_id, "d", 1, 1, 1, 0, 1);
10156
- _html(`<button${_attr_class([manage_workspace_module_default.iconBtn, { [manage_workspace_module_default.spinning]: prsRefreshing }])} title="Refresh PRs" aria-label="Refresh PRs"${_attr("disabled", prsRefreshing)}>`);
10157
- icon_refresh_default({ size: 14 });
10158
- _html(`</button>${_el_resume($scope1_id, "e")}</div>`);
10159
- _for_of(prRepos, (repo) => {
10160
- const $scope10_id = _scope_id();
10161
- _if(() => {
10162
- if (prRepos.length > 1) {
10163
- const $scope20_id = _scope_id();
10164
- _html(`<p${_attr_class([manage_workspace_module_default.groupLabel, ui_module_default.mono])}>${_escape(repo.worktree)}${_el_resume($scope20_id, "b")}</p>`);
10165
- writeScope($scope20_id, {});
10166
- return 0;
10167
- }
10168
- }, $scope10_id, "a", 1, 1, 1, 0, 1);
10169
- _html(`<ul${_attr_class(manage_workspace_module_default.cardList)}>`);
10170
- _for_of(repo.prs, (pr) => {
10171
- const $scope11_id = _scope_id();
10172
- const prState = pr.state === "OPEN" && pr.isDraft ? "open" : (pr.state || "open").toLowerCase();
10173
- const prLabel = pr.state === "OPEN" && pr.isDraft ? "draft" : (pr.state || "open").toLowerCase();
10174
- _html(`<li${_attr_class(manage_workspace_module_default.card)}><a${_attr_class(manage_workspace_module_default.cardMain)}${_attr("href", pr.url)} target=_blank rel=noopener><span${_attr_class(manage_workspace_module_default.cardTitle)}>${_escape(pr.title)}${_el_resume($scope11_id, "d")}</span><span${_attr_class(manage_workspace_module_default.cardMeta)}><span${_attr_class(manage_workspace_module_default.prState)}${_attr("data-state", prState)}>${_escape(prLabel)}${_el_resume($scope11_id, "g")}</span>${_el_resume($scope11_id, "f")}`);
10175
- _if(() => {
10176
- if (pr.state === "OPEN" && pr.reviewDecision === "APPROVED") {
10177
- const $scope21_id = _scope_id();
10178
- _html(`<span${_attr_class(manage_workspace_module_default.prState)} data-state=open title=Approved>✓</span>`);
10179
- writeScope($scope21_id, {});
10180
- return 0;
10181
- } else if (pr.state === "OPEN" && pr.reviewDecision === "CHANGES_REQUESTED") {
10182
- const $scope22_id = _scope_id();
10183
- _html(`<span${_attr_class(manage_workspace_module_default.prState)} data-state=closed title="Changes requested">✗</span>`);
10184
- writeScope($scope22_id, {});
10185
- return 1;
10186
- }
10187
- }, $scope11_id, "h", 1, 1, 1, 0, 1);
10188
- _html(`<span${_attr_class([manage_workspace_module_default.cardTag, ui_module_default.mono])}>#<!>${_escape(pr.number)}${_el_resume($scope11_id, "j")}</span></span></a>${_el_resume($scope11_id, "b")}`);
10189
- _if(() => {
10190
- if (pr.state !== "OPEN") {
10191
- const $scope12_id = _scope_id();
10192
- _html(`<button${_attr_class([manage_workspace_module_default.cardAction, manage_workspace_module_default.okAction])}${_attr("title", `Confirm #${pr.number} is done — remove from this list`)}>✓</button>${_el_resume($scope12_id, "a")}`);
10193
- _script($scope12_id, "k18");
10194
- writeScope($scope12_id, {});
10195
- return 0;
10196
- }
10197
- }, $scope11_id, "k", 1, 1, 1, 0, 1);
10198
- _html("</li>");
10199
- writeScope($scope11_id, { u: pr?.number });
10200
- }, "number", $scope10_id, "b", 1, 1, 1, "</ul>", 1);
10201
- _subscribe($prRepos_length__closures, writeScope($scope10_id, {
10202
- e: repo?.worktree,
10203
- g: repo?.full_name
10204
- }));
10205
- }, "full_name", $scope1_id, "g");
10206
- _html("</section>");
10207
- _script($scope1_id, "k19");
10208
- writeScope($scope1_id, {});
10209
- return 0;
10210
- }
10211
- }, $scope0_id, "a3", 1, 1, 1, 0, 1);
10167
+ _var($scope0_id, "a2", $childScope, "k12");
10212
10168
  const running = procs || [];
10169
+ _html("</div></section>");
10213
10170
  _if(() => {
10214
10171
  if (running.length) {
10215
- const $scope13_id = _scope_id();
10216
- _html(`<section${_attr_class(manage_workspace_module_default.section)}><div${_attr_class(manage_workspace_module_default.sectionHead)}><h2>Running</h2><span${_attr_class(manage_workspace_module_default.sectionCount)}>${_escape(running.length)}${_el_resume($scope13_id, "d")}</span></div><ul${_attr_class(manage_workspace_module_default.cardList)}>`);
10172
+ const $scope8_id = _scope_id();
10173
+ _html(`<section${_attr_class(manage_workspace_module_default.section)}><div${_attr_class(manage_workspace_module_default.sectionHead)}><h2>Running</h2><span${_attr_class(manage_workspace_module_default.sectionCount)}>${_escape(running.length)}${_el_resume($scope8_id, "d")}</span></div><ul${_attr_class(manage_workspace_module_default.cardList)}>`);
10217
10174
  _for_of(running, (p) => {
10218
- const $scope14_id = _scope_id();
10219
- _html(`<li${_attr_class(manage_workspace_module_default.card)}><div${_attr_class(manage_workspace_module_default.cardMain)}${_attr("title", p.args)}><span${_attr_class([manage_workspace_module_default.cardTitle, ui_module_default.mono])}>${_escape(p.cmd)}${_el_resume($scope14_id, "d")}</span>`);
10175
+ const $scope9_id = _scope_id();
10176
+ _html(`<li${_attr_class(manage_workspace_module_default.card)}><div${_attr_class(manage_workspace_module_default.cardMain)}${_attr("title", p.args)}><span${_attr_class([manage_workspace_module_default.cardTitle, ui_module_default.mono])}>${_escape(p.cmd)}${_el_resume($scope9_id, "d")}</span>`);
10220
10177
  _if(() => {
10221
10178
  if (p.ports.length) {
10222
- const $scope23_id = _scope_id();
10179
+ const $scope15_id = _scope_id();
10223
10180
  _html(`<span${_attr_class(manage_workspace_module_default.cardMeta)}>`);
10224
10181
  _for_of(p.ports, (port) => {
10225
- const $scope24_id = _scope_id();
10226
- _html(`<button${_attr_class([ui_module_default.chip, manage_workspace_module_default.portLink])}${_attr("title", `Open http://${typeof location === "undefined" ? "localhost" : location.hostname}:${port}`)}>:<!>${_escape(port)}${_el_resume($scope24_id, "b")}</button>${_el_resume($scope24_id, "a")}`);
10227
- _script($scope24_id, "k20");
10228
- writeScope($scope24_id, { d: port });
10229
- }, (x) => String(x), $scope23_id, "a", 1, 1, 1, "</span>", 1);
10230
- writeScope($scope23_id, {});
10182
+ const $scope16_id = _scope_id();
10183
+ _html(`<button${_attr_class([ui_module_default.chip, manage_workspace_module_default.portLink])}${_attr("title", `Open http://${typeof location === "undefined" ? "localhost" : location.hostname}:${port}`)}>:<!>${_escape(port)}${_el_resume($scope16_id, "b")}</button>${_el_resume($scope16_id, "a")}`);
10184
+ _script($scope16_id, "k13");
10185
+ writeScope($scope16_id, { d: port });
10186
+ }, (x) => String(x), $scope15_id, "a", 1, 1, 1, "</span>", 1);
10187
+ writeScope($scope15_id, {});
10231
10188
  return 0;
10232
10189
  }
10233
- }, $scope14_id, "e", 1, 1, 1, 0, 1);
10234
- _html(`</div>${_el_resume($scope14_id, "b")}<button${_attr_class([manage_workspace_module_default.cardAction, manage_workspace_module_default.dangerAction])} type=button${_attr("title", `Kill ${p.pid}`)}${_attr("aria-label", `Kill process ${p.pid}`)}>×</button>${_el_resume($scope14_id, "f")}</li>`);
10235
- _script($scope14_id, "k21");
10236
- writeScope($scope14_id, {
10190
+ }, $scope9_id, "e", 1, 1, 1, 0, 1);
10191
+ _html(`</div>${_el_resume($scope9_id, "b")}<button${_attr_class([manage_workspace_module_default.cardAction, manage_workspace_module_default.dangerAction])} type=button${_attr("title", `Kill ${p.pid}`)}${_attr("aria-label", `Kill process ${p.pid}`)}>×</button>${_el_resume($scope9_id, "f")}</li>`);
10192
+ _script($scope9_id, "k14");
10193
+ writeScope($scope9_id, {
10237
10194
  k: p?.ports,
10238
10195
  m: p?.pid
10239
10196
  });
10240
- }, "pid", $scope13_id, "e", 1, 1, 1, "</ul>", 1);
10197
+ }, "pid", $scope8_id, "e", 1, 1, 1, "</ul>", 1);
10241
10198
  _html("</section>");
10242
- writeScope($scope13_id, {});
10199
+ writeScope($scope8_id, {});
10243
10200
  return 0;
10244
10201
  }
10245
- }, $scope0_id, "a4", 1, 1, 1, 0, 1);
10202
+ }, $scope0_id, "a3", 1, 1, 1, 0, 1);
10246
10203
  _html(`<section${_attr_class([manage_workspace_module_default.section, manage_workspace_module_default.dangerZone])}><div${_attr_class(manage_workspace_module_default.sectionHead)}><h2>Workspace</h2></div><div${_attr_class(manage_workspace_module_default.dangerRow)}>`);
10247
10204
  _if(() => {
10248
10205
  if (ws.status === "active") {
10249
- const $scope5_id = _scope_id();
10250
- _html(`<button type=button${_attr_class([ui_module_default.btn, manage_workspace_module_default.dangerBtn])}${_attr("disabled", !!pendingAction)}>${pendingAction === "archive" ? "Archiving…" : "Archive"}${_el_resume($scope5_id, "b")}</button>${_el_resume($scope5_id, "a")}`);
10251
- _script($scope5_id, "k22");
10252
- writeScope($scope5_id, {});
10206
+ const $scope4_id = _scope_id();
10207
+ _html(`<button type=button${_attr_class([ui_module_default.btn, manage_workspace_module_default.dangerBtn])}${_attr("disabled", !!pendingAction)}>${pendingAction === "archive" ? "Archiving…" : "Archive"}${_el_resume($scope4_id, "b")}</button>${_el_resume($scope4_id, "a")}`);
10208
+ _script($scope4_id, "k15");
10209
+ writeScope($scope4_id, {});
10253
10210
  return 0;
10254
10211
  } else {
10255
- const $scope6_id = _scope_id();
10256
- _html(`<button type=button${_attr_class([ui_module_default.btn, manage_workspace_module_default.dangerBtn])}${_attr("disabled", !!pendingAction)}>Restore</button>${_el_resume($scope6_id, "a")}`);
10257
- _script($scope6_id, "k23");
10258
- writeScope($scope6_id, {});
10212
+ const $scope5_id = _scope_id();
10213
+ _html(`<button type=button${_attr_class([ui_module_default.btn, manage_workspace_module_default.dangerBtn])}${_attr("disabled", !!pendingAction)}>Restore</button>${_el_resume($scope5_id, "a")}`);
10214
+ _script($scope5_id, "k16");
10215
+ writeScope($scope5_id, {});
10259
10216
  return 1;
10260
10217
  }
10261
- }, $scope0_id, "a8", 1, 1, 1, 0, 1);
10218
+ }, $scope0_id, "a7", 1, 1, 1, 0, 1);
10262
10219
  _html(`<button type=button${_attr_class([
10263
10220
  ui_module_default.btn,
10264
10221
  ui_module_default.danger,
10265
10222
  manage_workspace_module_default.dangerBtn,
10266
10223
  { [ui_module_default.armed]: confirmingDelete }
10267
- ])}${_attr("disabled", !!pendingAction)}>${pendingAction === "delete" ? "Deleting…" : "Delete"}${_el_resume($scope0_id, "aa")}</button>${_el_resume($scope0_id, "a9")}</div><p${_attr_class(manage_workspace_module_default.dangerHint)}>Archive hides the space from the list. Delete removes it and its worktrees.</p></section></div></div></div>`);
10268
- _script($scope0_id, "k24");
10269
- _script($scope0_id, "k25");
10224
+ ])}${_attr("disabled", !!pendingAction)}>${pendingAction === "delete" ? "Deleting…" : "Delete"}${_el_resume($scope0_id, "a9")}</button>${_el_resume($scope0_id, "a8")}</div><p${_attr_class(manage_workspace_module_default.dangerHint)}>Archive hides the space from the list. Delete removes it and its worktrees.</p></section></div></div></div>`);
10225
+ _script($scope0_id, "k17");
10226
+ _script($scope0_id, "k18");
10270
10227
  writeScope($scope0_id, {
10271
- ae: _serialize_if($scope0_reason, 0) && input.workspace,
10272
- ag: input.workspaceChange,
10273
- ai: input.onExit,
10274
- al: prs,
10275
- am: prsRefreshing,
10276
- an: busy,
10277
- ao: busy?.size,
10278
- ap: error,
10279
- aq: pendingAction,
10280
- ar: confirmingDelete,
10281
- at: confirmingRemove,
10282
- au: actionStep,
10283
- aw: workspace,
10284
- ay: workspace?.id,
10285
- b4: workspace?.repos?.length,
10286
- b5: loadProcs,
10287
- b6: loadPrs,
10288
- b7: refreshPrs,
10289
- b8: clearFinished,
10290
- b9: dismissPr,
10291
- ba: inWorkspace,
10292
- bb: setBusy,
10293
- bc: addRepo,
10294
- bd: removeRepo,
10295
- be: runAction,
10296
- bf: killProc,
10297
- bg: finishedCount,
10298
- bi: refreshCatalog,
10299
- bj: prRepos,
10300
- bk: prRepos?.length,
10301
- bl: running,
10302
- bm: running.length,
10303
- ax: input.workspaceChange || void 0,
10304
- bw: $error__closures,
10305
- by: $confirmingRemove__closures,
10306
- a1: _existing_scope($childScope),
10307
- c0: $finishedCount__closures,
10308
- c2: $prRepos_length__closures
10228
+ ad: _serialize_if($scope0_reason, 0) && input.workspace,
10229
+ af: input.workspaceChange,
10230
+ ah: input.onExit,
10231
+ ak: busy,
10232
+ al: busy?.size,
10233
+ am: error,
10234
+ an: pendingAction,
10235
+ ao: confirmingDelete,
10236
+ aq: confirmingRemove,
10237
+ ar: actionStep,
10238
+ at: workspace,
10239
+ av: workspace?.id,
10240
+ b1: workspace?.repos?.length,
10241
+ b2: loadProcs,
10242
+ b3: inWorkspace,
10243
+ b4: setBusy,
10244
+ b5: addRepo,
10245
+ b6: removeRepo,
10246
+ b7: runAction,
10247
+ b8: killProc,
10248
+ ba: refreshCatalog,
10249
+ bb: running,
10250
+ bc: running.length,
10251
+ au: input.workspaceChange || void 0,
10252
+ bk: $error__closures,
10253
+ bm: $confirmingRemove__closures,
10254
+ a1: _existing_scope($childScope)
10309
10255
  });
10310
10256
  _resume_branch($scope0_id);
10311
10257
  });
10312
10258
  var usage_stats_module_default = {
10313
- content: "_cQ _cQ _B",
10314
- iconBtn: "_cR _cw",
10315
- spinning: "_cS _cx",
10316
- refreshBtn: "_cT",
10317
- note: "_cU",
10318
- usageList: "_cV",
10319
- usageRow: "_cW",
10320
- usageName: "_cX",
10321
- plan: "_cY",
10322
- usageStale: "_cZ",
10323
- stale: "_c0",
10324
- usageMeters: "_c1",
10325
- meter: "_c2",
10326
- meterLabel: "_c3",
10327
- meterTrack: "_c4",
10328
- meterFill: "_c5",
10329
- fillOk: "_c6",
10330
- fillMid: "_c7",
10331
- fillWarm: "_c8",
10332
- fillHot: "_c9",
10333
- meterPct: "_c_",
10334
- pctOk: "_da",
10335
- pctMid: "_db",
10336
- pctWarm: "_dc",
10337
- pctHot: "_dd",
10338
- meterReset: "_de"
10259
+ content: "_bK _bK _bF",
10260
+ iconBtn: "_bL _ez",
10261
+ spinning: "_bM _eA",
10262
+ refreshBtn: "_bN",
10263
+ note: "_bO",
10264
+ usageList: "_bP",
10265
+ usageRow: "_bQ",
10266
+ usageName: "_bR",
10267
+ plan: "_bS",
10268
+ usageStale: "_bT",
10269
+ stale: "_bU",
10270
+ usageMeters: "_bV",
10271
+ meter: "_bW",
10272
+ meterLabel: "_bX",
10273
+ meterTrack: "_bY",
10274
+ meterFill: "_bZ",
10275
+ fillOk: "_b0",
10276
+ fillMid: "_b1",
10277
+ fillWarm: "_b2",
10278
+ fillHot: "_b3",
10279
+ meterPct: "_b4",
10280
+ pctOk: "_b5",
10281
+ pctMid: "_b6",
10282
+ pctWarm: "_b7",
10283
+ pctHot: "_b8",
10284
+ meterReset: "_b9"
10339
10285
  };
10340
10286
  //#endregion
10341
10287
  //#region src/tags/usage-stats.marko
@@ -10443,43 +10389,43 @@ var usage_stats_default = _template("x", (input) => {
10443
10389
  _resume_branch($scope0_id);
10444
10390
  });
10445
10391
  var term_module_default = {
10446
- iconBtn: "_bW _cw",
10447
- termWrap: "_bX",
10448
- term: "_bY",
10449
- xterm: "_bZ",
10450
- termDead: "_b0",
10451
- termCopied: "_b1",
10452
- termCopiedFade: "_b2",
10453
- termUploading: "_b3",
10454
- trapBackdrop: "_b4",
10455
- pasteTrap: "_b5",
10456
- kbSlot: "_b6",
10457
- keyBar: "_b7",
10458
- keyBarBtns: "_b8",
10459
- keyBarBtnsHidden: "_b9",
10460
- kspacer: "_b_",
10461
- sessBtn: "_ca",
10462
- sessDot: "_cb",
10463
- sessPop: "_cc",
10464
- sessRow: "_cd",
10465
- current: "_ce",
10466
- sessOpen: "_cf",
10467
- sessTitle: "_cg",
10468
- sessRename: "_ch",
10469
- sessX: "_ci",
10470
- armed: "_cj",
10471
- sessEdit: "_ck",
10472
- sessNew: "_cl",
10473
- lone: "_cm",
10474
- kbarWs: "_cn",
10475
- kbarWsName: "_co",
10476
- kbtn: "_cp _cw",
10477
- dpadGrid: "_cq",
10478
- repeat: "_cr",
10479
- on: "_cs",
10480
- bigGlyph: "_ct",
10481
- enter: "_cu",
10482
- dpadEsc: "_cv"
10392
+ iconBtn: "_c7 _ez",
10393
+ termWrap: "_c8",
10394
+ term: "_c9",
10395
+ xterm: "_c_",
10396
+ termDead: "_da",
10397
+ termCopied: "_db",
10398
+ termCopiedFade: "_dc",
10399
+ termUploading: "_dd",
10400
+ trapBackdrop: "_de",
10401
+ pasteTrap: "_df",
10402
+ kbSlot: "_dg",
10403
+ keyBar: "_dh",
10404
+ keyBarBtns: "_di",
10405
+ keyBarBtnsHidden: "_dj",
10406
+ kspacer: "_dk",
10407
+ sessBtn: "_dl",
10408
+ sessDot: "_dm",
10409
+ sessPop: "_dn",
10410
+ sessRow: "_do",
10411
+ current: "_dp",
10412
+ sessOpen: "_dq",
10413
+ sessTitle: "_dr",
10414
+ sessRename: "_ds",
10415
+ sessX: "_dt",
10416
+ armed: "_du",
10417
+ sessEdit: "_dv",
10418
+ sessNew: "_dw",
10419
+ lone: "_dx",
10420
+ kbarWs: "_dy",
10421
+ kbarWsName: "_dz",
10422
+ kbtn: "_dA _ez",
10423
+ dpadGrid: "_dB",
10424
+ repeat: "_dC",
10425
+ on: "_dD",
10426
+ bigGlyph: "_dE",
10427
+ enter: "_dF",
10428
+ dpadEsc: "_dG"
10483
10429
  };
10484
10430
  //#endregion
10485
10431
  //#region src/tags/term-find.marko
@@ -10550,7 +10496,7 @@ var term_find_default = _template("u", (input) => {
10550
10496
  });
10551
10497
  _resume_branch($scope0_id);
10552
10498
  });
10553
- _template("R", (input) => {
10499
+ _template("T", (input) => {
10554
10500
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
10555
10501
  const $scope0_id = _scope_id();
10556
10502
  _set_serialize_reason({
@@ -10565,7 +10511,7 @@ _template("R", (input) => {
10565
10511
  });
10566
10512
  _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
10567
10513
  });
10568
- _template("F", (input) => {
10514
+ _template("G", (input) => {
10569
10515
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
10570
10516
  const $scope0_id = _scope_id();
10571
10517
  _set_serialize_reason({
@@ -10580,7 +10526,7 @@ _template("F", (input) => {
10580
10526
  });
10581
10527
  _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
10582
10528
  });
10583
- _template("K", (input) => {
10529
+ _template("L", (input) => {
10584
10530
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
10585
10531
  const $scope0_id = _scope_id();
10586
10532
  _set_serialize_reason({
@@ -10595,7 +10541,7 @@ _template("K", (input) => {
10595
10541
  });
10596
10542
  _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
10597
10543
  });
10598
- _template("D", (input) => {
10544
+ _template("E", (input) => {
10599
10545
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
10600
10546
  const $scope0_id = _scope_id();
10601
10547
  _set_serialize_reason({
@@ -14109,6 +14055,7 @@ var Dismiss = /* @__PURE__ */ object({
14109
14055
  var POST$3 = Run.POST({ json: Dismiss }, async (ctx) => {
14110
14056
  const body = await readBody(ctx);
14111
14057
  dismissPr(ctx.data.workspace.id, body.fullName, body.number);
14058
+ pokeStatusWatch();
14112
14059
  return Response.json(await listPrs(ctx.data.workspace, false));
14113
14060
  });
14114
14061
  async function listPrs(ws, refresh) {
@@ -18703,4 +18650,4 @@ server.listen(port, () => {
18703
18650
  //#endregion
18704
18651
  export {};
18705
18652
 
18706
- ;var __MARKO_MANIFEST__={"esfPH6H":{"block":[2,"stylesheet#/assets/index-DxoJXJz6.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/index-DxoJXJz6.css\"",">"],"defer":[2,"/assets/index-B-C71W3M.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/index-B-C71W3M.js\"","></script>"]}};
18653
+ ;var __MARKO_MANIFEST__={"esfPH6H":{"block":[2,"stylesheet#/assets/index-BJLi-qve.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/index-BJLi-qve.css\"",">"],"defer":[2,"/assets/index-YZZGnWtK.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/index-YZZGnWtK.js\"","></script>"]}};