@dylanpiercey/work 0.0.32 → 0.0.34

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 (155) hide show
  1. package/dist/index.mjs +710 -630
  2. package/dist/public/assets/{_GlgJPuKL2.js → _-lFHo8zk2.js} +2 -2
  3. package/dist/public/assets/{_GlgJPuKL2.js.map → _-lFHo8zk2.js.map} +1 -1
  4. package/dist/public/assets/{_Bx-q9uoN.js → _0T7f8ooc.js} +2 -2
  5. package/dist/public/assets/{_Bx-q9uoN.js.map → _0T7f8ooc.js.map} +1 -1
  6. package/dist/public/assets/{_D-a9DwIr.js → _0lwLZLQL.js} +2 -2
  7. package/dist/public/assets/{_D-a9DwIr.js.map → _0lwLZLQL.js.map} +1 -1
  8. package/dist/public/assets/{_DyTukt_u2.js → _3LcAxsyH2.js} +2 -2
  9. package/dist/public/assets/{_DyTukt_u2.js.map → _3LcAxsyH2.js.map} +1 -1
  10. package/dist/public/assets/{_CVUfJEVu.js → _6ci7sYVv.js} +2 -2
  11. package/dist/public/assets/{_CVUfJEVu.js.map → _6ci7sYVv.js.map} +1 -1
  12. package/dist/public/assets/{_BBxOP5gd.js → _9nXeWYZs.js} +2 -2
  13. package/dist/public/assets/{_BBxOP5gd.js.map → _9nXeWYZs.js.map} +1 -1
  14. package/dist/public/assets/{_toGhOk4U.js → _B7lL4AIz.js} +2 -2
  15. package/dist/public/assets/{_toGhOk4U.js.map → _B7lL4AIz.js.map} +1 -1
  16. package/dist/public/assets/{_YirxLGS4.js → _BA9ciy99.js} +2 -2
  17. package/dist/public/assets/{_YirxLGS4.js.map → _BA9ciy99.js.map} +1 -1
  18. package/dist/public/assets/{_xDXEaiYG.js → _BM1NTbyi.js} +2 -2
  19. package/dist/public/assets/{_xDXEaiYG.js.map → _BM1NTbyi.js.map} +1 -1
  20. package/dist/public/assets/{_CcrWJ_AF2.js → _BMf1fzuY2.js} +2 -2
  21. package/dist/public/assets/{_CcrWJ_AF2.js.map → _BMf1fzuY2.js.map} +1 -1
  22. package/dist/public/assets/{_XQgJphFX.js → _BO3Juu4Y.js} +2 -2
  23. package/dist/public/assets/{_XQgJphFX.js.map → _BO3Juu4Y.js.map} +1 -1
  24. package/dist/public/assets/{_DvvBPEVw.js → _BQxXqMVH.js} +2 -2
  25. package/dist/public/assets/{_DvvBPEVw.js.map → _BQxXqMVH.js.map} +1 -1
  26. package/dist/public/assets/{_CjCTUQV22.js → _BSNgpj6n2.js} +2 -2
  27. package/dist/public/assets/{_CjCTUQV22.js.map → _BSNgpj6n2.js.map} +1 -1
  28. package/dist/public/assets/{_Dsl39Q0T2.js → _BTOpcZK92.js} +2 -2
  29. package/dist/public/assets/{_Dsl39Q0T2.js.map → _BTOpcZK92.js.map} +1 -1
  30. package/dist/public/assets/{_BIa9rsaF.js → _BY5thO1g.js} +2 -2
  31. package/dist/public/assets/{_BIa9rsaF.js.map → _BY5thO1g.js.map} +1 -1
  32. package/dist/public/assets/{_BJ9jTSsT2.js → _BZgPjjyH2.js} +2 -2
  33. package/dist/public/assets/{_BJ9jTSsT2.js.map → _BZgPjjyH2.js.map} +1 -1
  34. package/dist/public/assets/{_BbQFjjyq2.js → _BbQqGZm22.js} +2 -2
  35. package/dist/public/assets/{_BbQFjjyq2.js.map → _BbQqGZm22.js.map} +1 -1
  36. package/dist/public/assets/{_6akhJ5Fn.js → _BgHjNH9b.js} +2 -2
  37. package/dist/public/assets/{_6akhJ5Fn.js.map → _BgHjNH9b.js.map} +1 -1
  38. package/dist/public/assets/{_DCrRdWzm.js → _Bht4yF5z.js} +2 -2
  39. package/dist/public/assets/{_DCrRdWzm.js.map → _Bht4yF5z.js.map} +1 -1
  40. package/dist/public/assets/{_hbd3yHWy2.js → _Bl3hSI2b2.js} +2 -2
  41. package/dist/public/assets/{_hbd3yHWy2.js.map → _Bl3hSI2b2.js.map} +1 -1
  42. package/dist/public/assets/{_Dn6wx3eB2.js → _Bq-esmkV2.js} +2 -2
  43. package/dist/public/assets/{_Dn6wx3eB2.js.map → _Bq-esmkV2.js.map} +1 -1
  44. package/dist/public/assets/{_DPsop69P2.js → _Bs1iZKsK2.js} +2 -2
  45. package/dist/public/assets/{_DPsop69P2.js.map → _Bs1iZKsK2.js.map} +1 -1
  46. package/dist/public/assets/{_D7PYIcBv2.js → _Bu7tphR42.js} +2 -2
  47. package/dist/public/assets/{_D7PYIcBv2.js.map → _Bu7tphR42.js.map} +1 -1
  48. package/dist/public/assets/{_oy1NiP692.js → _BuY46UEC2.js} +2 -2
  49. package/dist/public/assets/{_oy1NiP692.js.map → _BuY46UEC2.js.map} +1 -1
  50. package/dist/public/assets/{_C2yKcodx.js → _Bz5bJ8Y_.js} +2 -2
  51. package/dist/public/assets/{_C2yKcodx.js.map → _Bz5bJ8Y_.js.map} +1 -1
  52. package/dist/public/assets/{_DZU3Q5Te.js → _C-GkJLpv.js} +2 -2
  53. package/dist/public/assets/{_DZU3Q5Te.js.map → _C-GkJLpv.js.map} +1 -1
  54. package/dist/public/assets/{_3wpK6Da62.js → _C-ZGxaMQ2.js} +2 -2
  55. package/dist/public/assets/{_3wpK6Da62.js.map → _C-ZGxaMQ2.js.map} +1 -1
  56. package/dist/public/assets/{_BiVQf6zi.js → _C0GTiS92.js} +2 -2
  57. package/dist/public/assets/{_BiVQf6zi.js.map → _C0GTiS92.js.map} +1 -1
  58. package/dist/public/assets/{_Cze2fV8u2.js → _C45K0E_O2.js} +2 -2
  59. package/dist/public/assets/{_Cze2fV8u2.js.map → _C45K0E_O2.js.map} +1 -1
  60. package/dist/public/assets/{_y5S8OwPt.js → _C47aNCsh.js} +2 -2
  61. package/dist/public/assets/{_y5S8OwPt.js.map → _C47aNCsh.js.map} +1 -1
  62. package/dist/public/assets/{_DZiGlTtq.js → _C5Dsq6Y3.js} +2 -2
  63. package/dist/public/assets/{_DZiGlTtq.js.map → _C5Dsq6Y3.js.map} +1 -1
  64. package/dist/public/assets/{_BkJ_AQhK.js → _C5fPbpEz.js} +2 -2
  65. package/dist/public/assets/{_BkJ_AQhK.js.map → _C5fPbpEz.js.map} +1 -1
  66. package/dist/public/assets/{_CzJm-Kgs2.js → _CCsG-c5e2.js} +2 -2
  67. package/dist/public/assets/{_CzJm-Kgs2.js.map → _CCsG-c5e2.js.map} +1 -1
  68. package/dist/public/assets/{_d9P0yprv2.js → _CEHy4nud2.js} +2 -2
  69. package/dist/public/assets/{_d9P0yprv2.js.map → _CEHy4nud2.js.map} +1 -1
  70. package/dist/public/assets/{_kDIR2NR8.js → _CFmiQtT2.js} +2 -2
  71. package/dist/public/assets/{_kDIR2NR8.js.map → _CFmiQtT2.js.map} +1 -1
  72. package/dist/public/assets/{_DnGHFVcU2.js → _CGMX9yXC2.js} +2 -2
  73. package/dist/public/assets/{_DnGHFVcU2.js.map → _CGMX9yXC2.js.map} +1 -1
  74. package/dist/public/assets/{_5wEIhz7a.js → _CLLEJeRs.js} +2 -2
  75. package/dist/public/assets/{_5wEIhz7a.js.map → _CLLEJeRs.js.map} +1 -1
  76. package/dist/public/assets/{_C-nqelds.js → _CV1pXYjT.js} +2 -2
  77. package/dist/public/assets/{_C-nqelds.js.map → _CV1pXYjT.js.map} +1 -1
  78. package/dist/public/assets/{_rpwoQqaU.js → _CdtEL9QP.js} +2 -2
  79. package/dist/public/assets/{_rpwoQqaU.js.map → _CdtEL9QP.js.map} +1 -1
  80. package/dist/public/assets/{_CkkpgSfP.js → _CkxQU6Dc.js} +2 -2
  81. package/dist/public/assets/{_CkkpgSfP.js.map → _CkxQU6Dc.js.map} +1 -1
  82. package/dist/public/assets/{_DD4eXl6W.js → _Cqn3_VH2.js} +2 -2
  83. package/dist/public/assets/{_DD4eXl6W.js.map → _Cqn3_VH2.js.map} +1 -1
  84. package/dist/public/assets/{_BL2e2Eo7.js → _CttvQkqp.js} +2 -2
  85. package/dist/public/assets/{_BL2e2Eo7.js.map → _CttvQkqp.js.map} +1 -1
  86. package/dist/public/assets/{_CXJCHFX0.js → _Cv1QzSrA.js} +2 -2
  87. package/dist/public/assets/{_CXJCHFX0.js.map → _Cv1QzSrA.js.map} +1 -1
  88. package/dist/public/assets/{_q1aoVAj_.js → _CwML5wGP.js} +2 -2
  89. package/dist/public/assets/{_q1aoVAj_.js.map → _CwML5wGP.js.map} +1 -1
  90. package/dist/public/assets/{_BzD2dIYX.js → _CzMaBSK6.js} +2 -2
  91. package/dist/public/assets/{_BzD2dIYX.js.map → _CzMaBSK6.js.map} +1 -1
  92. package/dist/public/assets/{_WXOM1NgB.js → _D-jmEnaD.js} +2 -2
  93. package/dist/public/assets/{_WXOM1NgB.js.map → _D-jmEnaD.js.map} +1 -1
  94. package/dist/public/assets/{_DNiAR62k.js → _D1XCa7K7.js} +2 -2
  95. package/dist/public/assets/{_DNiAR62k.js.map → _D1XCa7K7.js.map} +1 -1
  96. package/dist/public/assets/{_aTZInOPC.js → _DAK-J3AS.js} +2 -2
  97. package/dist/public/assets/{_aTZInOPC.js.map → _DAK-J3AS.js.map} +1 -1
  98. package/dist/public/assets/{_lkmVA5Jl.js → _DLROsaYk.js} +2 -2
  99. package/dist/public/assets/{_lkmVA5Jl.js.map → _DLROsaYk.js.map} +1 -1
  100. package/dist/public/assets/{_DtJBxo8X.js → _DM-QKGQL.js} +2 -2
  101. package/dist/public/assets/{_DtJBxo8X.js.map → _DM-QKGQL.js.map} +1 -1
  102. package/dist/public/assets/{_Dl2UteFV2.js → _DQ1byX2e2.js} +2 -2
  103. package/dist/public/assets/{_Dl2UteFV2.js.map → _DQ1byX2e2.js.map} +1 -1
  104. package/dist/public/assets/{_BMs4fTHh.js → _DRCu_oY3.js} +2 -2
  105. package/dist/public/assets/{_BMs4fTHh.js.map → _DRCu_oY3.js.map} +1 -1
  106. package/dist/public/assets/{_BxUEtXoQ.js → _DVT6rHDl.js} +2 -2
  107. package/dist/public/assets/{_BxUEtXoQ.js.map → _DVT6rHDl.js.map} +1 -1
  108. package/dist/public/assets/{_DkvEBzS7.js → _DVW0Wg2c.js} +2 -2
  109. package/dist/public/assets/{_DkvEBzS7.js.map → _DVW0Wg2c.js.map} +1 -1
  110. package/dist/public/assets/{_CBDHZ0hg.js → _DeI9niJs.js} +2 -2
  111. package/dist/public/assets/{_CBDHZ0hg.js.map → _DeI9niJs.js.map} +1 -1
  112. package/dist/public/assets/{_B-1aqB9k2.js → _DjDLEEDd2.js} +2 -2
  113. package/dist/public/assets/{_B-1aqB9k2.js.map → _DjDLEEDd2.js.map} +1 -1
  114. package/dist/public/assets/{_Obxt4Dxo.js → _DjxPVp5U.js} +2 -2
  115. package/dist/public/assets/{_Obxt4Dxo.js.map → _DjxPVp5U.js.map} +1 -1
  116. package/dist/public/assets/{_CX2w84Lb.js → _DnrpkC6W.js} +2 -2
  117. package/dist/public/assets/{_CX2w84Lb.js.map → _DnrpkC6W.js.map} +1 -1
  118. package/dist/public/assets/{_DQ6NSm2p.js → _DrmxaS0k.js} +2 -2
  119. package/dist/public/assets/{_DQ6NSm2p.js.map → _DrmxaS0k.js.map} +1 -1
  120. package/dist/public/assets/{_C_bKIJI8.js → _DwoQd6de.js} +2 -2
  121. package/dist/public/assets/{_C_bKIJI8.js.map → _DwoQd6de.js.map} +1 -1
  122. package/dist/public/assets/{_BTe9kCin.js → _DyyQeo94.js} +2 -2
  123. package/dist/public/assets/{_BTe9kCin.js.map → _DyyQeo94.js.map} +1 -1
  124. package/dist/public/assets/{_Docc3wCS2.js → _HOnDceKS2.js} +2 -2
  125. package/dist/public/assets/{_Docc3wCS2.js.map → _HOnDceKS2.js.map} +1 -1
  126. package/dist/public/assets/{_C0Y8EhIC.js → _JIlNGzfE.js} +2 -2
  127. package/dist/public/assets/{_C0Y8EhIC.js.map → _JIlNGzfE.js.map} +1 -1
  128. package/dist/public/assets/{_Da1JjXN5.js → _MTKF2Fgh.js} +2 -2
  129. package/dist/public/assets/{_Da1JjXN5.js.map → _MTKF2Fgh.js.map} +1 -1
  130. package/dist/public/assets/{_J7lGcvlZ.js → _MWLKuKk1.js} +2 -2
  131. package/dist/public/assets/{_J7lGcvlZ.js.map → _MWLKuKk1.js.map} +1 -1
  132. package/dist/public/assets/{_BKlDC-Tb.js → _S_GkiS7V.js} +2 -2
  133. package/dist/public/assets/{_BKlDC-Tb.js.map → _S_GkiS7V.js.map} +1 -1
  134. package/dist/public/assets/{_B4wJxefZ.js → _S_dWwx4b.js} +2 -2
  135. package/dist/public/assets/{_B4wJxefZ.js.map → _S_dWwx4b.js.map} +1 -1
  136. package/dist/public/assets/{_DJmEj4P02.js → _bIuAHcgW2.js} +2 -2
  137. package/dist/public/assets/{_DJmEj4P02.js.map → _bIuAHcgW2.js.map} +1 -1
  138. package/dist/public/assets/{_h5G2RGPq.js → _bhJWkZhp.js} +2 -2
  139. package/dist/public/assets/{_h5G2RGPq.js.map → _bhJWkZhp.js.map} +1 -1
  140. package/dist/public/assets/{_BTAS1Dpg.js → _dKI0s7pW.js} +2 -2
  141. package/dist/public/assets/{_BTAS1Dpg.js.map → _dKI0s7pW.js.map} +1 -1
  142. package/dist/public/assets/{_DsxNYA3W2.js → _iC139j9r2.js} +2 -2
  143. package/dist/public/assets/{_DsxNYA3W2.js.map → _iC139j9r2.js.map} +1 -1
  144. package/dist/public/assets/{_CX8l12E-2.js → _jUcYdc4y2.js} +2 -2
  145. package/dist/public/assets/{_CX8l12E-2.js.map → _jUcYdc4y2.js.map} +1 -1
  146. package/dist/public/assets/{_C8uWyBcH.js → _v8f0ZllR.js} +2 -2
  147. package/dist/public/assets/{_C8uWyBcH.js.map → _v8f0ZllR.js.map} +1 -1
  148. package/dist/public/assets/{_DNm3GBFg2.js → _wZr_KYlB2.js} +2 -2
  149. package/dist/public/assets/{_DNm3GBFg2.js.map → _wZr_KYlB2.js.map} +1 -1
  150. package/dist/public/assets/{index-BkF_8voS.js → index-CruM-Gda.js} +46 -46
  151. package/dist/public/assets/index-CruM-Gda.js.map +1 -0
  152. package/dist/public/assets/index-DkSXfvNK.css +1 -0
  153. package/package.json +1 -1
  154. package/dist/public/assets/index-BkF_8voS.js.map +0 -1
  155. package/dist/public/assets/index-EQUqrgoE.css +0 -1
package/dist/index.mjs CHANGED
@@ -10770,17 +10770,17 @@ function coalesce(fn) {
10770
10770
  };
10771
10771
  }
10772
10772
  var toast_module_default = {
10773
- toast: "_2",
10774
- toastFloat: "_3",
10775
- toastInline: "_4",
10776
- toastError: "_5",
10777
- toastTitle: "_6",
10778
- toastWarn: "_7",
10779
- toastInfo: "_8",
10780
- toastBody: "_9",
10781
- toastContent: "__",
10782
- toastActions: "_ba",
10783
- toastDismiss: "_bb _cb"
10773
+ toast: "_y",
10774
+ toastFloat: "_z",
10775
+ toastInline: "_A",
10776
+ toastError: "_B",
10777
+ toastTitle: "_C",
10778
+ toastWarn: "_D",
10779
+ toastInfo: "_E",
10780
+ toastBody: "_F",
10781
+ toastContent: "_G",
10782
+ toastActions: "_H",
10783
+ toastDismiss: "_I _d9"
10784
10784
  };
10785
10785
  //#endregion
10786
10786
  //#region src/tags/toast.marko
@@ -10924,27 +10924,27 @@ function sessionPhase(state) {
10924
10924
  return state?.phase === "working" ? "working" : state?.phase === "waiting" ? "waiting" : state?.alive ? "idle" : "off";
10925
10925
  }
10926
10926
  var palette_module_default = {
10927
- paletteBackdrop: "_y",
10928
- palette: "_z",
10929
- inline: "_A",
10930
- rows: "_B",
10931
- rowWrap: "_C",
10932
- row: "_D",
10933
- rowMore: "_E",
10934
- hi: "_F",
10935
- archived: "_G",
10936
- cmdRow: "_H",
10937
- onboard: "_I",
10938
- rowName: "_J",
10939
- rowNameText: "_K",
10940
- rowStats: "_L",
10941
- open: "_M",
10942
- stat: "_N",
10943
- rowRepos: "_O",
10944
- paletteFoot: "_P",
10945
- hint: "_Q",
10946
- archivedLink: "_R",
10947
- newSessionPop: "_S"
10927
+ paletteBackdrop: "_S",
10928
+ palette: "_T",
10929
+ inline: "_U",
10930
+ rows: "_V",
10931
+ rowWrap: "_W",
10932
+ row: "_X",
10933
+ rowMore: "_Y",
10934
+ hi: "_Z",
10935
+ archived: "_0",
10936
+ cmdRow: "_1",
10937
+ onboard: "_2",
10938
+ rowName: "_3",
10939
+ rowNameText: "_4",
10940
+ rowStats: "_5",
10941
+ open: "_6",
10942
+ stat: "_7",
10943
+ rowRepos: "_8",
10944
+ paletteFoot: "_9",
10945
+ hint: "__",
10946
+ archivedLink: "_ba",
10947
+ newSessionPop: "_bb"
10948
10948
  };
10949
10949
  //#endregion
10950
10950
  //#region src/tags/icons/icon-base.marko
@@ -11353,8 +11353,8 @@ var new_workspace_module_default = {
11353
11353
  pageMeta: "_bi",
11354
11354
  actions: "_bj",
11355
11355
  barPrimary: "_bk",
11356
- iconBtn: "_bl _cb",
11357
- spinning: "_bm _cc",
11356
+ iconBtn: "_bl _d9",
11357
+ spinning: "_bm _d_",
11358
11358
  field: "_bn",
11359
11359
  section: "_bo",
11360
11360
  reposHead: "_bp",
@@ -11403,18 +11403,18 @@ var icon_refresh_default = _template("M", (input) => {
11403
11403
  _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
11404
11404
  });
11405
11405
  var repo_picker_module_default = {
11406
- addRepo: "_d8",
11407
- repoResults: "_d9",
11408
- resultWrap: "_d_",
11409
- hi: "_ea",
11410
- resultRow: "_eb",
11411
- resultBranch: "_ec",
11412
- on: "_ed",
11413
- branchPick: "_ee",
11414
- branchList: "_ef",
11415
- resultPlus: "_eg",
11416
- repoName: "_eh",
11417
- emptyNote: "_ei"
11406
+ addRepo: "_eb",
11407
+ repoResults: "_ec",
11408
+ resultWrap: "_ed",
11409
+ hi: "_ee",
11410
+ resultRow: "_ef",
11411
+ resultBranch: "_eg",
11412
+ on: "_eh",
11413
+ branchPick: "_ei",
11414
+ branchList: "_ej",
11415
+ resultPlus: "_ek",
11416
+ repoName: "_el",
11417
+ emptyNote: "_em"
11418
11418
  };
11419
11419
  //#endregion
11420
11420
  //#region src/tags/repo-picker.marko
@@ -11824,15 +11824,15 @@ function diffUncommitted() {
11824
11824
  return get("diff-uncommitted") === "1";
11825
11825
  }
11826
11826
  var work_view_module_default = {
11827
- workView: "_T",
11828
- sideWrap: "_U",
11829
- sideHidden: "_V",
11830
- navPage: "_W",
11831
- mainCol: "_X",
11832
- termArea: "_Y",
11833
- asBar: "_Z",
11834
- padInline: "_0",
11835
- emptySess: "_1"
11827
+ workView: "_J",
11828
+ sideWrap: "_K",
11829
+ sideHidden: "_L",
11830
+ navPage: "_M",
11831
+ mainCol: "_N",
11832
+ termArea: "_O",
11833
+ asBar: "_P",
11834
+ padInline: "_Q",
11835
+ emptySess: "_R"
11836
11836
  };
11837
11837
  //#endregion
11838
11838
  //#region src/client/api.ts
@@ -11897,27 +11897,25 @@ function vapidKey(base64) {
11897
11897
  return Uint8Array.from(raw, (c) => c.charCodeAt(0));
11898
11898
  }
11899
11899
  var side_nav_module_default = {
11900
- iconBtn: "_ce _cb",
11901
- spinning: "_cf _cc",
11902
- navToggle: "_cg _cb",
11903
- notifyBtn: "_ch _cb",
11904
- sideNav: "_ci",
11905
- pageHead: "_cj",
11906
- pageHeadActions: "_ck",
11907
- sectionLabel: "_cl",
11908
- newSpaceBtn: "_cm",
11909
- page: "_cn",
11910
- sideList: "_co",
11911
- sideRail: "_cp",
11912
- sideFoot: "_cq",
11913
- footSpacer: "_cr",
11914
- on: "_cs",
11915
- closed: "_ct",
11916
- railPop: "_cu"
11900
+ iconBtn: "_b8 _d9",
11901
+ spinning: "_b9 _d_",
11902
+ navToggle: "_b_ _d9",
11903
+ notifyBtn: "_ca _d9",
11904
+ sideNav: "_cb",
11905
+ pageHead: "_cc",
11906
+ pageHeadActions: "_cd",
11907
+ sectionLabel: "_ce",
11908
+ newSpaceBtn: "_cf",
11909
+ page: "_cg",
11910
+ sideList: "_ch",
11911
+ sideRail: "_ci",
11912
+ sideFoot: "_cj",
11913
+ footSpacer: "_ck",
11914
+ on: "_cl",
11915
+ closed: "_cm",
11916
+ railPop: "_cn"
11917
11917
  };
11918
- //#endregion
11919
- //#region src/tags/icons/icon-bell.marko
11920
- var icon_bell_default = _template("B", (input) => {
11918
+ _template("B", (input) => {
11921
11919
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
11922
11920
  const $scope0_id = _scope_id();
11923
11921
  _set_serialize_reason({
@@ -11950,32 +11948,32 @@ var icon_gauge_default = _template("H", (input) => {
11950
11948
  _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
11951
11949
  });
11952
11950
  var side_nav_item_module_default = {
11953
- railBtn: "_et _cb",
11954
- current: "_eu",
11955
- railDot: "_ev",
11956
- ws: "_ew",
11957
- railPopWs: "_ex",
11958
- wsRow: "_ey",
11959
- wsBtn: "_ez",
11960
- wsActions: "_eA",
11961
- newSessionPop: "_eB",
11962
- rowIcon: "_eC",
11963
- wsText: "_eD",
11964
- wsName: "_eE",
11965
- wsMeta: "_eF",
11966
- wsOpenHint: "_eG",
11967
- statusDot: "_eH",
11968
- pageCard: "_eI",
11969
- sessTitle: "_eJ",
11970
- sessActions: "_eK",
11971
- sessRenameDot: "_eL",
11972
- sessRename: "_eM",
11973
- close: "_eN",
11974
- sess: "_eO",
11975
- armed: "_eP",
11976
- sessions: "_eQ",
11977
- sessBtn: "_eR",
11978
- sessIcon: "_eS"
11951
+ railBtn: "_eP _d9",
11952
+ current: "_eQ",
11953
+ railDot: "_eR",
11954
+ ws: "_eS",
11955
+ railPopWs: "_eT",
11956
+ wsRow: "_eU",
11957
+ wsBtn: "_eV",
11958
+ wsActions: "_eW",
11959
+ newSessionPop: "_eX",
11960
+ rowIcon: "_eY",
11961
+ wsText: "_eZ",
11962
+ wsName: "_e0",
11963
+ wsMeta: "_e1",
11964
+ wsOpenHint: "_e2",
11965
+ statusDot: "_e3",
11966
+ pageCard: "_e4",
11967
+ sessTitle: "_e5",
11968
+ sessActions: "_e6",
11969
+ sessRenameDot: "_e7",
11970
+ sessRename: "_e8",
11971
+ close: "_e9",
11972
+ sess: "_e_",
11973
+ armed: "_fa",
11974
+ sessions: "_fb",
11975
+ sessBtn: "_fc",
11976
+ sessIcon: "_fd"
11979
11977
  };
11980
11978
  //#endregion
11981
11979
  //#region src/tags/icons/icon-edit.marko
@@ -11995,13 +11993,13 @@ var icon_edit_default = _template("F", (input) => {
11995
11993
  _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
11996
11994
  });
11997
11995
  var side_nav_chips_module_default = {
11998
- sideChips: "_fa",
11999
- prBtn: "_fb",
12000
- portChip: "_fc",
12001
- portOpen: "_fd",
12002
- portKill: "_fe",
12003
- rejected: "_ff",
12004
- armed: "_fg"
11996
+ sideChips: "_fe",
11997
+ prBtn: "_ff",
11998
+ portChip: "_fg",
11999
+ portOpen: "_fh",
12000
+ portKill: "_fi",
12001
+ rejected: "_fj",
12002
+ armed: "_fk"
12005
12003
  };
12006
12004
  //#endregion
12007
12005
  //#region src/tags/side-nav-chips.marko
@@ -12444,6 +12442,7 @@ var side_nav_default = _template("t", (input) => {
12444
12442
  let view = input.view;
12445
12443
  let navOpen = sideNavOpen();
12446
12444
  let notifyOn = false;
12445
+ let canPush = false;
12447
12446
  const leaveNav = _resume(() => {
12448
12447
  if (view === "nav") view = "term";
12449
12448
  }, "t0", $scope0_id);
@@ -12476,14 +12475,7 @@ var side_nav_default = _template("t", (input) => {
12476
12475
  if (isPage) {
12477
12476
  const $scope1_id = _scope_id();
12478
12477
  _html(`<header${_attr_class(side_nav_module_default.pageHead)}><h1>Workspaces</h1><div${_attr_class(side_nav_module_default.pageHeadActions)}>`);
12479
- if (pushSupported()) {
12480
- const $scope8_id = _scope_id();
12481
- _html(`<button${_attr_class([side_nav_module_default.notifyBtn, { [side_nav_module_default.on]: notifyOn }])} title=${notifyOn ? "\"Disable agent-waiting notifications\"" : "\"Notify when an agent is waiting\""}>`);
12482
- icon_bell_default({ size: 16 });
12483
- _html(`</button>${_el_resume($scope8_id, "a")}`);
12484
- _script($scope8_id, "t17");
12485
- _subscribe($notifyOn__closures, writeScope($scope8_id, { _: _scope_with_id($scope1_id) }));
12486
- }
12478
+ _if(() => {}, $scope1_id, "c", 1, 1, 1, 0, 1);
12487
12479
  _html(`<button${_attr_class(side_nav_module_default.iconBtn)} title=Usage>`);
12488
12480
  icon_gauge_default({ size: 16 });
12489
12481
  _html(`</button>${_el_resume($scope1_id, "d")}</div></header>`);
@@ -12732,9 +12724,9 @@ var side_nav_default = _template("t", (input) => {
12732
12724
  _subscribe($si__input_allStatus && $allStatus__closures, _subscribe($si__input_workspace__OR__input_allWorkspaces && $workspaces__closures, _subscribe($view__closures, _subscribe($tab__closures, _subscribe($si__input_workspace && $ws_id__closures, _subscribe($si__input_onCloseSession && $input_onCloseSession__closures, _subscribe($si__input_onRenameSession && $input_onRenameSession__closures, _subscribe($si__input_sessions && $input_sessions__closures, _subscribe($si__input_onReviewOpened && $input_onReviewOpened__closures, _subscribe($si__input_onNewSession && $input_onNewSession__closures, _subscribe($si__input_agents && $input_agents__closures, _subscribe($si__input_onSelectWorkspace && $input_onSelectWorkspace__closures, writeScope($scope5_id, {
12733
12725
  c: hoverId,
12734
12726
  b: _existing_scope($childScope3),
12735
- Cay: $si__input_workspace && 1,
12736
- Cb5: $si__input_workspace__OR__input_allWorkspaces && 1,
12737
- Cb6: $si__input_allStatus && 1
12727
+ Caz: $si__input_workspace && 1,
12728
+ Cb7: $si__input_workspace__OR__input_allWorkspaces && 1,
12729
+ Cb8: $si__input_allStatus && 1
12738
12730
  })))))))))))));
12739
12731
  return 0;
12740
12732
  }
@@ -12777,17 +12769,7 @@ var side_nav_default = _template("t", (input) => {
12777
12769
  }
12778
12770
  }, $scope7_id, "a", 1, 1, 1, "</button>", 1);
12779
12771
  _html(`<div${_attr_class([ui_module_default.spacer, side_nav_module_default.footSpacer])}></div>`);
12780
- if (pushSupported()) {
12781
- const $scope9_id = _scope_id();
12782
- _html(`<button${_attr_class([side_nav_module_default.notifyBtn, { [side_nav_module_default.on]: notifyOn }])} title=${notifyOn ? "\"Disable agent-waiting notifications\"" : "\"Notify when an agent is waiting\""}>`);
12783
- icon_bell_default({ size: 15 });
12784
- _html(`</button>${_el_resume($scope9_id, "a")}`);
12785
- _script($scope9_id, "t22");
12786
- _subscribe($notifyOn__closures, writeScope($scope9_id, {
12787
- _: _scope_with_id($scope7_id),
12788
- Cb2: 1
12789
- }));
12790
- }
12772
+ _if(() => {}, $scope7_id, "c", 1, 1, 1, 0, 1);
12791
12773
  _html(`<button${_attr_class(side_nav_module_default.iconBtn)} title=Usage>`);
12792
12774
  icon_gauge_default({ size: 15 });
12793
12775
  _html(`</button>${_el_resume($scope7_id, "d")}<button${_attr_class(side_nav_module_default.iconBtn)} title="New workspace">`);
@@ -12826,29 +12808,30 @@ var side_nav_default = _template("t", (input) => {
12826
12808
  a9: view,
12827
12809
  ab: navOpen,
12828
12810
  ac: notifyOn,
12829
- ae: leaveNav,
12830
- af: toggleNotify,
12831
- ag: itemIds,
12832
- ai: workspaces,
12833
- aj: allStatus,
12834
- al: isPage,
12835
- an: otherIds,
12836
- ap: otherIds?.[0],
12811
+ ae: canPush,
12812
+ af: leaveNav,
12813
+ ag: toggleNotify,
12814
+ ah: itemIds,
12815
+ aj: workspaces,
12816
+ ak: allStatus,
12817
+ am: isPage,
12818
+ ao: otherIds,
12819
+ aq: otherIds?.[0],
12837
12820
  a8: input.tabChange || void 0,
12838
12821
  aa: input.viewChange || void 0,
12839
- b2: $notifyOn__closures,
12840
- ay: $si__input_workspace && $ws_id__closures,
12841
- b5: $si__input_workspace__OR__input_allWorkspaces && $workspaces__closures,
12842
- b6: $si__input_allStatus && $allStatus__closures,
12843
- ar: $si__input_onSelectWorkspace && $input_onSelectWorkspace__closures,
12844
- as: $si__input_agents && $input_agents__closures,
12845
- at: $si__input_onNewSession && $input_onNewSession__closures,
12846
- au: $si__input_onReviewOpened && $input_onReviewOpened__closures,
12847
- av: $si__input_sessions && $input_sessions__closures,
12848
- aw: $si__input_onRenameSession && $input_onRenameSession__closures,
12849
- ax: $si__input_onCloseSession && $input_onCloseSession__closures,
12850
- az: $tab__closures,
12851
- b0: $view__closures
12822
+ b3: $notifyOn__closures,
12823
+ az: $si__input_workspace && $ws_id__closures,
12824
+ b7: $si__input_workspace__OR__input_allWorkspaces && $workspaces__closures,
12825
+ b8: $si__input_allStatus && $allStatus__closures,
12826
+ as: $si__input_onSelectWorkspace && $input_onSelectWorkspace__closures,
12827
+ at: $si__input_agents && $input_agents__closures,
12828
+ au: $si__input_onNewSession && $input_onNewSession__closures,
12829
+ av: $si__input_onReviewOpened && $input_onReviewOpened__closures,
12830
+ aw: $si__input_sessions && $input_sessions__closures,
12831
+ ax: $si__input_onRenameSession && $input_onRenameSession__closures,
12832
+ ay: $si__input_onCloseSession && $input_onCloseSession__closures,
12833
+ b0: $tab__closures,
12834
+ b1: $view__closures
12852
12835
  });
12853
12836
  _resume_branch($scope0_id);
12854
12837
  });
@@ -13054,42 +13037,96 @@ function treeRows(files) {
13054
13037
  return rows;
13055
13038
  }
13056
13039
  var diff_view_module_default = {
13057
- iconBtn: "_cv _cb",
13058
- spinning: "_cw _cc",
13059
- diffView: "_cx",
13060
- treeToggle: "_cy _cb",
13061
- diffTools: "_cz",
13062
- on: "_cA",
13063
- diffCol: "_cB",
13064
- diffHead: "_cC",
13065
- backBtn: "_cD",
13066
- headText: "_cE",
13067
- pageTitle: "_cF",
13068
- headWithSend: "_cG",
13069
- findBtn: "_cH",
13070
- diffMain: "_cI",
13071
- toastMeta: "_cJ",
13072
- diffStats: "_cK",
13073
- scope: "_cL",
13074
- scopeOpt: "_cM",
13075
- scopeOn: "_cN",
13076
- scopeChip: "_cO",
13077
- repoSection: "_cP",
13078
- repoSep: "_cQ",
13079
- repoWorktree: "_cR _l",
13080
- repoTitle: "_cS _k",
13081
- repoMeta: "_cT",
13082
- files: "_cU",
13083
- file: "_cV",
13084
- diffWait: "_cW",
13085
- treeChev: "_cX",
13086
- status: "_cY",
13087
- path: "_cZ",
13088
- centerPad: "_c0",
13089
- filesBtn: "_c1",
13090
- diffPad: "_c2"
13040
+ iconBtn: "_dx _d9",
13041
+ spinning: "_dy _d_",
13042
+ diffView: "_dz",
13043
+ treeToggle: "_dA _d9",
13044
+ diffTools: "_dB",
13045
+ on: "_dC",
13046
+ diffCol: "_dD",
13047
+ diffHead: "_dE",
13048
+ backBtn: "_dF",
13049
+ headText: "_dG",
13050
+ pageTitle: "_dH",
13051
+ headWithSend: "_dI",
13052
+ findBtn: "_dJ",
13053
+ diffMain: "_dK",
13054
+ toastMeta: "_dL",
13055
+ diffStats: "_dM",
13056
+ statAdd: "_dN",
13057
+ statDel: "_dO",
13058
+ statEmpty: "_dP",
13059
+ statSep: "_dQ",
13060
+ scope: "_dR",
13061
+ scopeOpt: "_dS",
13062
+ scopeOn: "_dT",
13063
+ scopeChip: "_dU",
13064
+ repoSection: "_dV",
13065
+ repoSep: "_dW",
13066
+ repoWorktree: "_dX _l",
13067
+ repoTitle: "_dY _k",
13068
+ repoMeta: "_dZ",
13069
+ files: "_d0",
13070
+ file: "_d1",
13071
+ diffWait: "_d2",
13072
+ treeChev: "_d3",
13073
+ status: "_d4",
13074
+ path: "_d5",
13075
+ centerPad: "_d6",
13076
+ filesBtn: "_d7",
13077
+ diffPad: "_d8"
13078
+ };
13079
+ var file_filter_module_default = {
13080
+ wrap: "_ex",
13081
+ fileFilter: "_ey"
13091
13082
  };
13092
- var diff_send_module_default = { headActions: "_eT" };
13083
+ //#endregion
13084
+ //#region src/tags/file-filter.marko
13085
+ var file_filter_default = _template("j", (input) => {
13086
+ const $scope0_reason = _scope_reason();
13087
+ const $scope0_id = _scope_id();
13088
+ let value = input.value;
13089
+ let pending = null;
13090
+ const draft = (pending ?? value) || "";
13091
+ const box = { timer: 0 };
13092
+ const flush = _resume(() => {
13093
+ if (box.timer) {
13094
+ clearTimeout(box.timer);
13095
+ box.timer = 0;
13096
+ }
13097
+ const next = pending !== null ? pending : value || "";
13098
+ pending = null;
13099
+ value = next;
13100
+ }, "j1", $scope0_id);
13101
+ const type = _resume((v) => {
13102
+ if (box.timer) clearTimeout(box.timer);
13103
+ if (!v) {
13104
+ box.timer = 0;
13105
+ pending = null;
13106
+ value = "";
13107
+ return;
13108
+ }
13109
+ pending = v;
13110
+ box.timer = setTimeout(flush, 150);
13111
+ }, "j2", $scope0_id);
13112
+ _html(`<div${_attr_class(file_filter_module_default.wrap)}><input${_attr_input_value($scope0_id, "b", draft, _resume(function(v) {
13113
+ type(v);
13114
+ }, "j0", $scope0_id))}${_attr_class(file_filter_module_default.fileFilter)} type=search placeholder="Filter files… (globs, !excludes)" aria-label="Filter files">${_el_resume($scope0_id, "b")}</div>`);
13115
+ _script($scope0_id, "j3");
13116
+ writeScope($scope0_id, {
13117
+ e: _serialize_if($scope0_reason, 1) && input.value,
13118
+ f: _serialize_if($scope0_reason, 0) && input.valueChange,
13119
+ h: value,
13120
+ j: pending,
13121
+ l: draft,
13122
+ n: box.timer,
13123
+ p: flush,
13124
+ r: type,
13125
+ i: input.valueChange || void 0
13126
+ });
13127
+ _resume_branch($scope0_id);
13128
+ });
13129
+ var diff_send_module_default = { headActions: "_ez" };
13093
13130
  //#endregion
13094
13131
  //#region src/tags/diff-send.marko
13095
13132
  var diff_send_default = _template("g", (input) => {
@@ -13141,73 +13178,6 @@ var diff_send_default = _template("g", (input) => {
13141
13178
  _resume_branch($scope0_id);
13142
13179
  });
13143
13180
  //#endregion
13144
- //#region src/tags/icons/icon-search.marko
13145
- var icon_search_default = _template("N", (input) => {
13146
- const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
13147
- const $scope0_id = _scope_id();
13148
- _set_serialize_reason({
13149
- 0: $sg__input_size__OR__input_class,
13150
- 1: $sg__input_size__OR__input_class
13151
- });
13152
- const $childScope = _peek_scope_id();
13153
- icon_base_default({
13154
- d: "M17 17L21 21 M3 11C3 15.4183 6.58172 19 11 19C13.213 19 15.2161 18.1015 16.6644 16.6493C18.1077 15.2022 19 13.2053 19 11C19 6.58172 15.4183 3 11 3C6.58172 3 3 6.58172 3 11Z",
13155
- size: input.size,
13156
- class: input.class
13157
- });
13158
- _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
13159
- });
13160
- var file_filter_module_default = {
13161
- wrap: "_eU",
13162
- fileFilter: "_eV"
13163
- };
13164
- //#endregion
13165
- //#region src/tags/file-filter.marko
13166
- var file_filter_default = _template("j", (input) => {
13167
- const $scope0_reason = _scope_reason();
13168
- const $scope0_id = _scope_id();
13169
- let value = input.value;
13170
- let pending = null;
13171
- const draft = (pending ?? value) || "";
13172
- const box = { timer: 0 };
13173
- const flush = _resume(() => {
13174
- if (box.timer) {
13175
- clearTimeout(box.timer);
13176
- box.timer = 0;
13177
- }
13178
- const next = pending !== null ? pending : value || "";
13179
- pending = null;
13180
- value = next;
13181
- }, "j1", $scope0_id);
13182
- const type = _resume((v) => {
13183
- if (box.timer) clearTimeout(box.timer);
13184
- if (!v) {
13185
- box.timer = 0;
13186
- pending = null;
13187
- value = "";
13188
- return;
13189
- }
13190
- pending = v;
13191
- box.timer = setTimeout(flush, 150);
13192
- }, "j2", $scope0_id);
13193
- _html(`<div${_attr_class(file_filter_module_default.wrap)}><input${_attr_input_value($scope0_id, "b", draft, _resume(function(v) {
13194
- type(v);
13195
- }, "j0", $scope0_id))}${_attr_class(file_filter_module_default.fileFilter)} type=search placeholder="Filter files… (globs, !excludes)" aria-label="Filter files">${_el_resume($scope0_id, "b")}</div>`);
13196
- _script($scope0_id, "j3");
13197
- writeScope($scope0_id, {
13198
- e: _serialize_if($scope0_reason, 1) && input.value,
13199
- f: _serialize_if($scope0_reason, 0) && input.valueChange,
13200
- h: value,
13201
- j: pending,
13202
- l: draft,
13203
- n: box.timer,
13204
- p: flush,
13205
- r: type,
13206
- i: input.valueChange || void 0
13207
- });
13208
- _resume_branch($scope0_id);
13209
- });
13210
- //#endregion
13211
13181
  //#region src/client/diff-search.ts
13212
13182
  var MAX_HITS = 200;
13213
13183
  var MAX_PER_FILE = 40;
@@ -13265,10 +13235,10 @@ function clip(line, at, len) {
13265
13235
  return (start > 0 ? "…" : "") + line.slice(start, end) + (end < line.length ? "…" : "");
13266
13236
  }
13267
13237
  var diff_find_module_default = {
13268
- findBar: "_eW",
13269
- findInput: "_eX",
13270
- count: "_eY",
13271
- findIconBtn: "_eZ _cb"
13238
+ findBar: "_eA",
13239
+ findInput: "_eB",
13240
+ count: "_eC",
13241
+ findIconBtn: "_eD _d9"
13272
13242
  };
13273
13243
  //#endregion
13274
13244
  //#region src/tags/diff-find.marko
@@ -13343,7 +13313,24 @@ var diff_find_default = _template("f", (input) => {
13343
13313
  });
13344
13314
  _resume_branch($scope0_id);
13345
13315
  });
13346
- var diff_file_module_default = { diffFile: "_e0" };
13316
+ //#endregion
13317
+ //#region src/tags/icons/icon-search.marko
13318
+ var icon_search_default = _template("N", (input) => {
13319
+ const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
13320
+ const $scope0_id = _scope_id();
13321
+ _set_serialize_reason({
13322
+ 0: $sg__input_size__OR__input_class,
13323
+ 1: $sg__input_size__OR__input_class
13324
+ });
13325
+ const $childScope = _peek_scope_id();
13326
+ icon_base_default({
13327
+ d: "M17 17L21 21 M3 11C3 15.4183 6.58172 19 11 19C13.213 19 15.2161 18.1015 16.6644 16.6493C18.1077 15.2022 19 13.2053 19 11C19 6.58172 15.4183 3 11 3C6.58172 3 3 6.58172 3 11Z",
13328
+ size: input.size,
13329
+ class: input.class
13330
+ });
13331
+ _serialize_if($scope0_reason, 0) && writeScope($scope0_id, { a: _existing_scope($childScope) });
13332
+ });
13333
+ var diff_file_module_default = { diffFile: "_eE" };
13347
13334
  _template("e", (input) => {
13348
13335
  _scope_reason();
13349
13336
  const $scope0_id = _scope_id();
@@ -13363,16 +13350,16 @@ _template("e", (input) => {
13363
13350
  _resume_branch($scope0_id);
13364
13351
  });
13365
13352
  var diff_tree_module_default = {
13366
- tree: "_e1",
13367
- closed: "_e2",
13368
- treeRepo: "_e3",
13369
- treeRepoName: "_e4",
13370
- treeDir: "_e5",
13371
- treeFile: "_e6",
13372
- treeFileName: "_e7",
13373
- treeNote: "_e8",
13374
- treeChev: "_e9",
13375
- status: "_e_"
13353
+ tree: "_eF",
13354
+ closed: "_eG",
13355
+ treeRepo: "_eH",
13356
+ treeRepoName: "_eI",
13357
+ treeDir: "_eJ",
13358
+ treeFile: "_eK",
13359
+ treeFileName: "_eL",
13360
+ treeNote: "_eM",
13361
+ treeChev: "_eN",
13362
+ status: "_eO"
13376
13363
  };
13377
13364
  //#endregion
13378
13365
  //#region src/tags/diff-tree.marko
@@ -13476,16 +13463,16 @@ var diff_tree_default = _template("h", (input) => {
13476
13463
  _resume_branch($scope0_id);
13477
13464
  });
13478
13465
  var diff_file_sheet_module_default = {
13479
- iconBtn: "_ej _cb",
13480
- spinning: "_ek _cc",
13481
- sheetBackdrop: "_el",
13482
- fileSheet: "_em",
13483
- sheetHead: "_en",
13484
- fileCount: "_eo",
13485
- sheetList: "_ep",
13486
- sheetFile: "_eq",
13487
- sheetPath: "_er",
13488
- status: "_es"
13466
+ iconBtn: "_en _d9",
13467
+ spinning: "_eo _d_",
13468
+ sheetBackdrop: "_ep",
13469
+ fileSheet: "_eq",
13470
+ sheetHead: "_er",
13471
+ fileCount: "_es",
13472
+ sheetList: "_et",
13473
+ sheetFile: "_eu",
13474
+ sheetPath: "_ev",
13475
+ status: "_ew"
13489
13476
  };
13490
13477
  //#endregion
13491
13478
  //#region src/tags/diff-file-sheet.marko
@@ -13600,7 +13587,7 @@ var diff_view_default = _template("i", (input) => {
13600
13587
  collapsedRepos = next;
13601
13588
  const started = Date.now();
13602
13589
  const tryScroll = () => {
13603
- const root = scrollEl?.();
13590
+ const root = ((scrollEl) => scrollEl())(_el_read_error);
13604
13591
  const el = root?.querySelector(`[data-pr="${CSS.escape(pr)}"]`);
13605
13592
  if (!root || !el) {
13606
13593
  if (Date.now() - started < 2500) requestAnimationFrame(tryScroll);
@@ -13659,6 +13646,18 @@ var diff_view_default = _template("i", (input) => {
13659
13646
  const match = makeFileFilter(fileFilter);
13660
13647
  return allFiles.filter((f) => match(f.key));
13661
13648
  })();
13649
+ const lineStats = (() => {
13650
+ let additions = 0;
13651
+ let deletions = 0;
13652
+ for (const f of fileFiltered) {
13653
+ additions += f.additions || 0;
13654
+ deletions += f.deletions || 0;
13655
+ }
13656
+ return {
13657
+ additions,
13658
+ deletions
13659
+ };
13660
+ })();
13662
13661
  const findKeys = findState.query.trim() ? new Set(findState.keys) : null;
13663
13662
  const shownFiles = findKeys ? fileFiltered.filter((f) => findKeys.has(f.key) || f.key === findState.hit?.key) : fileFiltered;
13664
13663
  const shownKeySet = new Set(shownFiles.map((f) => f.key));
@@ -13744,7 +13743,7 @@ var diff_view_default = _template("i", (input) => {
13744
13743
  }
13745
13744
  }, "i11", $scope0_id);
13746
13745
  const jumpTo = _resume((key) => {
13747
- const el = ((scrollEl) => scrollEl())(_el_read_error).querySelector(`details[data-key="${CSS.escape(key)}"]`);
13746
+ const el = ((scrollEl) => scrollEl())(_el_read_error)?.querySelector(`details[data-key="${CSS.escape(key)}"]`);
13748
13747
  if (el) {
13749
13748
  el.open = true;
13750
13749
  el.scrollIntoView({ block: "start" });
@@ -13770,18 +13769,48 @@ var diff_view_default = _template("i", (input) => {
13770
13769
  return 0;
13771
13770
  }
13772
13771
  }, $scope0_id, "d", $sg__input_onExit, $sg__input_onExit, 1, 0, 1);
13773
- _html(`<div${_attr_class(diff_view_module_default.headText)}><h1${_attr_class(diff_view_module_default.pageTitle)}>Review</h1><span${_attr_class(diff_view_module_default.diffStats)}>${_escape(allFiles.length)}${_el_resume($scope0_id, "h")} file<!>${allFiles.length === 1 ? "" : "s"}${_el_resume($scope0_id, "i")} changed <!>${comments.length ? `· ${_escape(`${_to_text(comments.length)}`)} comment${_escape(`${_to_text(comments.length === 1 ? "" : "s")}`)}` : ""}${_el_resume($scope0_id, "j")}</span></div>`);
13772
+ _set_serialize_reason(2);
13773
+ const $childScope = _peek_scope_id();
13774
+ file_filter_default({
13775
+ value: fileFilter,
13776
+ valueChange: _resume((_new_fileFilter) => {
13777
+ fileFilter = _new_fileFilter;
13778
+ }, "i15", $scope0_id)
13779
+ });
13780
+ _html(`<div${_attr_class(diff_view_module_default.headText)}><h1${_attr_class(diff_view_module_default.pageTitle)}>Review</h1><span${_attr_class(diff_view_module_default.diffStats)}>`);
13781
+ _if(() => {
13782
+ if (lineStats.additions || lineStats.deletions) {
13783
+ const $scope25_id = _scope_id();
13784
+ _html(`<span${_attr_class(diff_view_module_default.statAdd)}>+<!>${_escape(lineStats.additions)}${_el_resume($scope25_id, "b")}</span><span${_attr_class(diff_view_module_default.statDel)}>−<!>${_escape(lineStats.deletions)}${_el_resume($scope25_id, "d")}</span>`);
13785
+ writeScope($scope25_id, {});
13786
+ return 0;
13787
+ } else {
13788
+ const $scope29_id = _scope_id();
13789
+ _html(`<span${_attr_class(diff_view_module_default.statEmpty)}>0</span>`);
13790
+ writeScope($scope29_id, {});
13791
+ return 1;
13792
+ }
13793
+ }, $scope0_id, "i");
13794
+ _if(() => {
13795
+ if (comments.length) {
13796
+ const $scope3_id = _scope_id();
13797
+ _html(`<span${_attr_class(diff_view_module_default.statSep)}>·</span>${_escape(comments.length)}${_el_resume($scope3_id, "b")} comment<!>${comments.length === 1 ? "" : "s"}${_el_resume($scope3_id, "c")}`);
13798
+ writeScope($scope3_id, {});
13799
+ return 0;
13800
+ }
13801
+ }, $scope0_id, "j");
13802
+ _html("</span></div>");
13774
13803
  _if(() => {
13775
13804
  if (comments.length) {
13776
13805
  const $scope2_id = _scope_id();
13777
13806
  _set_serialize_reason(_serialize_guard($scope0_reason, 1));
13778
- const $childScope = _peek_scope_id();
13807
+ const $childScope2 = _peek_scope_id();
13779
13808
  diff_send_default({
13780
13809
  sessions: input.sessions,
13781
13810
  onCopy: copyMarkdown,
13782
13811
  onSend: sendTo
13783
13812
  });
13784
- writeScope($scope2_id, { a: _existing_scope($childScope) });
13813
+ writeScope($scope2_id, { a: _existing_scope($childScope2) });
13785
13814
  return 0;
13786
13815
  }
13787
13816
  }, $scope0_id, "k", 1, 1, 1, 0, 1);
@@ -13789,25 +13818,10 @@ var diff_view_default = _template("i", (input) => {
13789
13818
  icon_sidebar_default({ size: 14 });
13790
13819
  _html(`</button>${_el_resume($scope0_id, "m")}<button${_attr_class([diff_view_module_default.iconBtn, { [diff_view_module_default.spinning]: loading }])} title="Refresh diff"${_attr("disabled", loading)}>`);
13791
13820
  icon_refresh_default({ size: 14 });
13792
- _html(`</button>${_el_resume($scope0_id, "o")}<button${_attr_class([ui_module_default.btn, diff_view_module_default.filesBtn])} title="Jump to file">Files (<!>${_escape(shownFiles.length)}${_el_resume($scope0_id, "r")})</button>${_el_resume($scope0_id, "q")}<button${_attr_class([
13793
- diff_view_module_default.iconBtn,
13794
- diff_view_module_default.findBtn,
13795
- { [diff_view_module_default.on]: findOpen }
13796
- ])} title="Find in the review (⌘/Ctrl+F)" aria-label="Find in the review">`);
13797
- icon_search_default({ size: 14 });
13798
- _html(`</button>${_el_resume($scope0_id, "s")}<div${_attr_class(diff_view_module_default.scope)} role=group aria-label="Review scope"><button type=button${_attr_class([diff_view_module_default.scopeOpt, { [diff_view_module_default.scopeOn]: !uncommitted }])} aria-pressed=${!uncommitted ? "true" : "false"} title="Committed changes only — base…tip, no working-tree edits"${_attr("disabled", loading)}>Committed</button>${_el_resume($scope0_id, "v")}<button type=button${_attr_class([diff_view_module_default.scopeOpt, { [diff_view_module_default.scopeOn]: uncommitted }])} aria-pressed=${uncommitted ? "true" : "false"} title="Include uncommitted and untracked files in the working tree"${_attr("disabled", loading)}>Working tree</button>${_el_resume($scope0_id, "w")}</div><button type=button${_attr_class([diff_view_module_default.scopeChip, { [diff_view_module_default.scopeOn]: uncommitted }])} aria-pressed=${uncommitted ? "true" : "false"} title=${uncommitted ? "\"Showing working tree — tap for committed only\"" : "\"Showing committed only — tap to include uncommitted\""}${_attr("disabled", loading)}>${uncommitted ? "Dirty" : "Clean"}${_el_resume($scope0_id, "y")}</button>${_el_resume($scope0_id, "x")}`);
13799
- _set_serialize_reason(2);
13800
- const $childScope2 = _peek_scope_id();
13801
- file_filter_default({
13802
- value: fileFilter,
13803
- valueChange: _resume((_new_fileFilter) => {
13804
- fileFilter = _new_fileFilter;
13805
- }, "i15", $scope0_id)
13806
- });
13807
- _html("</div>");
13821
+ _html(`</button>${_el_resume($scope0_id, "o")}<button${_attr_class([ui_module_default.btn, diff_view_module_default.filesBtn])} title="Jump to file">Files (<!>${_escape(shownFiles.length)}${_el_resume($scope0_id, "r")})</button>${_el_resume($scope0_id, "q")}<div${_attr_class(diff_view_module_default.scope)} role=group aria-label="Review scope"><button type=button${_attr_class([diff_view_module_default.scopeOpt, { [diff_view_module_default.scopeOn]: !uncommitted }])} aria-pressed=${!uncommitted ? "true" : "false"} title="Committed changes only — base…tip, no working-tree edits"${_attr("disabled", loading)}>Committed</button>${_el_resume($scope0_id, "t")}<button type=button${_attr_class([diff_view_module_default.scopeOpt, { [diff_view_module_default.scopeOn]: uncommitted }])} aria-pressed=${uncommitted ? "true" : "false"} title="Include uncommitted and untracked files in the working tree"${_attr("disabled", loading)}>Working tree</button>${_el_resume($scope0_id, "u")}</div><button type=button${_attr_class([diff_view_module_default.scopeChip, { [diff_view_module_default.scopeOn]: uncommitted }])} aria-pressed=${uncommitted ? "true" : "false"} title=${uncommitted ? "\"Showing working tree — tap for committed only\"" : "\"Showing committed only — tap to include uncommitted\""}${_attr("disabled", loading)}>${uncommitted ? "Dirty" : "Clean"}${_el_resume($scope0_id, "w")}</button>${_el_resume($scope0_id, "v")}`);
13808
13822
  _if(() => {
13809
13823
  if (findOpen) {
13810
- const $scope20_id = _scope_id();
13824
+ const $scope21_id = _scope_id();
13811
13825
  _set_serialize_reason(2);
13812
13826
  const $childScope3 = _peek_scope_id();
13813
13827
  diff_find_default({
@@ -13816,37 +13830,45 @@ var diff_view_default = _template("i", (input) => {
13816
13830
  open: findOpen,
13817
13831
  openChange: _resume((_new_findOpen) => {
13818
13832
  findOpen = _new_findOpen;
13819
- }, "i16", $scope20_id),
13833
+ }, "i16", $scope21_id),
13820
13834
  stateChange: _resume(function(s) {
13821
13835
  onFindState(s);
13822
- }, "i17", $scope20_id)
13836
+ }, "i17", $scope21_id)
13823
13837
  });
13824
- writeScope($scope20_id, { a: _existing_scope($childScope3) });
13838
+ writeScope($scope21_id, { a: _existing_scope($childScope3) });
13825
13839
  return 0;
13840
+ } else {
13841
+ const $scope28_id = _scope_id();
13842
+ _html(`<button${_attr_class([diff_view_module_default.iconBtn, diff_view_module_default.findBtn])} title="Find in the review (⌘/Ctrl+F)" aria-label="Find in the review">`);
13843
+ icon_search_default({ size: 14 });
13844
+ _html(`</button>${_el_resume($scope28_id, "a")}`);
13845
+ _script($scope28_id, "i28");
13846
+ writeScope($scope28_id, {});
13847
+ return 1;
13826
13848
  }
13827
- }, $scope0_id, "a0", 1, 1, 1, 0, 1);
13828
- _html(`<div${_attr_class(diff_view_module_default.diffMain)} data-diff-main>`);
13849
+ }, $scope0_id, "x", 1, 1, 1, 0, 1);
13850
+ _html(`</div><div${_attr_class(diff_view_module_default.diffMain)} data-diff-main>`);
13829
13851
  _if(() => {
13830
13852
  if (error) {
13831
- const $scope9_id = _scope_id();
13853
+ const $scope10_id = _scope_id();
13832
13854
  toast_default({
13833
13855
  onDismiss: _resume(function() {
13834
13856
  error = null;
13835
- }, "i18", $scope9_id),
13836
- content: _content_resume("i28", () => {
13857
+ }, "i18", $scope10_id),
13858
+ content: _content_resume("i29", () => {
13837
13859
  _scope_reason();
13838
- const $scope10_id = _scope_id();
13839
- _html(`${_escape(error)}${_el_resume($scope10_id, "a")}`);
13840
- _subscribe($error__closures, writeScope($scope10_id, { _: _scope_with_id($scope9_id) }));
13841
- _resume_branch($scope10_id);
13842
- }, $scope9_id)
13860
+ const $scope11_id = _scope_id();
13861
+ _html(`${_escape(error)}${_el_resume($scope11_id, "a")}`);
13862
+ _subscribe($error__closures, writeScope($scope11_id, { _: _scope_with_id($scope10_id) }));
13863
+ _resume_branch($scope11_id);
13864
+ }, $scope10_id)
13843
13865
  });
13844
- writeScope($scope9_id, {});
13866
+ writeScope($scope10_id, {});
13845
13867
  return 0;
13846
13868
  }
13847
- }, $scope0_id, "a2", 1, 1, 1, 0, 1);
13869
+ }, $scope0_id, "z", 1, 1, 1, 0, 1);
13848
13870
  _for_of(repoList.filter((r) => r.baseMissing), (repo) => {
13849
- const $scope14_id = _scope_id();
13871
+ const $scope15_id = _scope_id();
13850
13872
  const $for_content3__repo_base__closures = /* @__PURE__ */ new Set();
13851
13873
  _set_serialize_reason(96);
13852
13874
  const $childScope4 = _peek_scope_id();
@@ -13854,22 +13876,22 @@ var diff_view_default = _template("i", (input) => {
13854
13876
  kind: "warn",
13855
13877
  placement: "inline",
13856
13878
  title: `${repo.worktree}: base not found`,
13857
- content: _content_resume("i29", () => {
13879
+ content: _content_resume("i30", () => {
13858
13880
  _scope_reason();
13859
- const $scope15_id = _scope_id();
13860
- _html(`${_escape(repo.base)}${_el_resume($scope15_id, "a")}<!>${uncommitted ? " — showing uncommitted changes only" : ""}${_el_resume($scope15_id, "b")}.`);
13861
- _subscribe($for_content3__repo_base__closures, _subscribe($uncommitted__closures, writeScope($scope15_id, { _: _scope_with_id($scope14_id) })));
13862
- _resume_branch($scope15_id);
13863
- }, $scope14_id)
13881
+ const $scope16_id = _scope_id();
13882
+ _html(`${_escape(repo.base)}${_el_resume($scope16_id, "a")}<!>${uncommitted ? " — showing uncommitted changes only" : ""}${_el_resume($scope16_id, "b")}.`);
13883
+ _subscribe($for_content3__repo_base__closures, _subscribe($uncommitted__closures, writeScope($scope16_id, { _: _scope_with_id($scope15_id) })));
13884
+ _resume_branch($scope16_id);
13885
+ }, $scope15_id)
13864
13886
  });
13865
- writeScope($scope14_id, {
13887
+ writeScope($scope15_id, {
13866
13888
  e: repo?.base,
13867
13889
  f: $for_content3__repo_base__closures,
13868
13890
  a: _existing_scope($childScope4)
13869
13891
  });
13870
- }, "id", $scope0_id, "a3", 1, 1, 1, 0, 1);
13892
+ }, "id", $scope0_id, "a0", 1, 1, 1, 0, 1);
13871
13893
  _for_of(repoList.filter((r) => r.contained && r.files.length), (repo) => {
13872
- const $scope16_id = _scope_id();
13894
+ const $scope17_id = _scope_id();
13873
13895
  const $for_content4__repo_base__closures = /* @__PURE__ */ new Set();
13874
13896
  _set_serialize_reason(96);
13875
13897
  const $childScope5 = _peek_scope_id();
@@ -13877,26 +13899,26 @@ var diff_view_default = _template("i", (input) => {
13877
13899
  kind: "info",
13878
13900
  placement: "inline",
13879
13901
  title: repo.pr ? `${repo.worktree} #${repo.pr.number}` : repo.worktree,
13880
- content: _content_resume("i30", () => {
13902
+ content: _content_resume("i31", () => {
13881
13903
  _scope_reason();
13882
- const $scope17_id = _scope_id();
13883
- _html(`already in <!>${_escape(repo.base)}${_el_resume($scope17_id, "a")}<!>${uncommitted ? " — showing uncommitted changes only" : ""}${_el_resume($scope17_id, "b")}.`);
13884
- _subscribe($for_content4__repo_base__closures, _subscribe($uncommitted__closures, writeScope($scope17_id, {
13885
- _: _scope_with_id($scope16_id),
13886
- Ccs: 1
13904
+ const $scope18_id = _scope_id();
13905
+ _html(`already in <!>${_escape(repo.base)}${_el_resume($scope18_id, "a")}<!>${uncommitted ? " — showing uncommitted changes only" : ""}${_el_resume($scope18_id, "b")}.`);
13906
+ _subscribe($for_content4__repo_base__closures, _subscribe($uncommitted__closures, writeScope($scope18_id, {
13907
+ _: _scope_with_id($scope17_id),
13908
+ Ccu: 1
13887
13909
  })));
13888
- _resume_branch($scope17_id);
13889
- }, $scope16_id)
13910
+ _resume_branch($scope18_id);
13911
+ }, $scope17_id)
13890
13912
  });
13891
- writeScope($scope16_id, {
13913
+ writeScope($scope17_id, {
13892
13914
  g: repo?.base,
13893
13915
  h: $for_content4__repo_base__closures,
13894
13916
  a: _existing_scope($childScope5)
13895
13917
  });
13896
- }, "id", $scope0_id, "a4", 1, 1, 1, 0, 1);
13918
+ }, "id", $scope0_id, "a1", 1, 1, 1, 0, 1);
13897
13919
  _if(() => {
13898
13920
  if (driftRepos.length) {
13899
- const $scope11_id = _scope_id();
13921
+ const $scope12_id = _scope_id();
13900
13922
  _set_serialize_reason(1072);
13901
13923
  const $childScope6 = _peek_scope_id();
13902
13924
  toast_default({
@@ -13905,40 +13927,40 @@ var diff_view_default = _template("i", (input) => {
13905
13927
  title: "GitHub is behind",
13906
13928
  onDismiss: _resume(function() {
13907
13929
  dismissDrift();
13908
- }, "i19", $scope11_id),
13909
- action: attrTag({ content: _content_resume("i32", () => {
13930
+ }, "i19", $scope12_id),
13931
+ action: attrTag({ content: _content_resume("i33", () => {
13910
13932
  _scope_reason();
13911
- const $scope12_id = _scope_id();
13912
- _html(`<button${_attr_class(ui_module_default.btn)}${_attr("disabled", loading)}>${loading ? "Reloading…" : "Reload"}${_el_resume($scope12_id, "b")}</button>${_el_resume($scope12_id, "a")}`);
13913
- _script($scope12_id, "i31");
13914
- _subscribe($loading__closures, writeScope($scope12_id, { _: _scope_with_id($scope11_id) }));
13915
- _resume_branch($scope12_id);
13916
- }, $scope11_id) }),
13917
- content: _content_resume("i33", () => {
13933
+ const $scope13_id = _scope_id();
13934
+ _html(`<button${_attr_class(ui_module_default.btn)}${_attr("disabled", loading)}>${loading ? "Reloading…" : "Reload"}${_el_resume($scope13_id, "b")}</button>${_el_resume($scope13_id, "a")}`);
13935
+ _script($scope13_id, "i32");
13936
+ _subscribe($loading__closures, writeScope($scope13_id, { _: _scope_with_id($scope12_id) }));
13937
+ _resume_branch($scope13_id);
13938
+ }, $scope12_id) }),
13939
+ content: _content_resume("i34", () => {
13918
13940
  _scope_reason();
13919
- const $scope25_id = _scope_id();
13941
+ const $scope27_id = _scope_id();
13920
13942
  _html(`<span${_attr_class(ui_module_default.dim)}>`);
13921
13943
  _for_of(driftRepos, (repo, i) => {
13922
- const $scope26_id = _scope_id();
13923
- _html(`${i > 0 ? " · " : ""}${_el_resume($scope26_id, "a")}<!>${_escape(repo.worktree)}${_el_resume($scope26_id, "b")} #<!>${_escape(repo.pr.number)}${_el_resume($scope26_id, "c")}`);
13924
- writeScope($scope26_id, {});
13925
- }, "id", $scope25_id, "b");
13944
+ const $scope30_id = _scope_id();
13945
+ _html(`${i > 0 ? " · " : ""}${_el_resume($scope30_id, "a")}<!>${_escape(repo.worktree)}${_el_resume($scope30_id, "b")} #<!>${_escape(repo.pr.number)}${_el_resume($scope30_id, "c")}`);
13946
+ writeScope($scope30_id, {});
13947
+ }, "id", $scope27_id, "b");
13926
13948
  _html(` — this view has a newer tip than the PR page.</span><span${_attr_class([ui_module_default.mono, diff_view_module_default.toastMeta])}>`);
13927
13949
  _for_of(driftRepos, (repo, i) => {
13928
- const $scope27_id = _scope_id();
13929
- _html(`<span${_attr("title", `origin/${repo.pr.headRefName} ${repo.head} · GitHub ${repo.pr.headRefOid}`)}>${i > 0 ? " · " : ""}${_el_resume($scope27_id, "b")}<!>${_escape(shortSha(repo.head))}${_el_resume($scope27_id, "c")} → <!>${_escape(shortSha(repo.pr.headRefOid))}${_el_resume($scope27_id, "d")}</span>${_el_resume($scope27_id, "a")}`);
13930
- writeScope($scope27_id, {});
13931
- }, "id", $scope25_id, "c", 1, 1, 1, "</span>", 1);
13932
- _subscribe($driftRepos__closures, writeScope($scope25_id, { _: _scope_with_id($scope11_id) }));
13933
- _resume_branch($scope25_id);
13934
- }, $scope11_id)
13950
+ const $scope31_id = _scope_id();
13951
+ _html(`<span${_attr("title", `origin/${repo.pr.headRefName} ${repo.head} · GitHub ${repo.pr.headRefOid}`)}>${i > 0 ? " · " : ""}${_el_resume($scope31_id, "b")}<!>${_escape(shortSha(repo.head))}${_el_resume($scope31_id, "c")} → <!>${_escape(shortSha(repo.pr.headRefOid))}${_el_resume($scope31_id, "d")}</span>${_el_resume($scope31_id, "a")}`);
13952
+ writeScope($scope31_id, {});
13953
+ }, "id", $scope27_id, "c", 1, 1, 1, "</span>", 1);
13954
+ _subscribe($driftRepos__closures, writeScope($scope27_id, { _: _scope_with_id($scope12_id) }));
13955
+ _resume_branch($scope27_id);
13956
+ }, $scope12_id)
13935
13957
  });
13936
- writeScope($scope11_id, { a: _existing_scope($childScope6) });
13958
+ writeScope($scope12_id, { a: _existing_scope($childScope6) });
13937
13959
  return 0;
13938
13960
  }
13939
- }, $scope0_id, "a5", 1, 1, 1, 0, 1);
13961
+ }, $scope0_id, "a2", 1, 1, 1, 0, 1);
13940
13962
  _for_of(localDifferList, (repo) => {
13941
- const $scope18_id = _scope_id();
13963
+ const $scope19_id = _scope_id();
13942
13964
  const $for_content5__repo_head__closures = /* @__PURE__ */ new Set();
13943
13965
  const $for_content5__repo_pr_headRefName__closures = /* @__PURE__ */ new Set();
13944
13966
  const $for_content5__repo_localHead__closures = /* @__PURE__ */ new Set();
@@ -13949,18 +13971,18 @@ var diff_view_default = _template("i", (input) => {
13949
13971
  kind: "info",
13950
13972
  placement: "inline",
13951
13973
  title: `${repo.worktree} #${repo.pr.number}`,
13952
- content: _content_resume("i34", () => {
13974
+ content: _content_resume("i35", () => {
13953
13975
  _scope_reason();
13954
- const $scope19_id = _scope_id();
13955
- _html(`this view is <!>${_escape(shortSha(repo.head))}${_el_resume($scope19_id, "a")} (<!>${_escape(repo.pr.headRefName)}${_el_resume($scope19_id, "b")}). Local is <!>${_escape(shortSha(repo.localHead))}${_el_resume($scope19_id, "c")} (<!>${_escape(repo.branch)}${_el_resume($scope19_id, "d")}<!>${uncommitted ? ", plus uncommitted" : ""}${_el_resume($scope19_id, "e")}).`);
13956
- _subscribe($for_content5__repo_branch__closures, _subscribe($for_content5__repo_localHead__closures, _subscribe($for_content5__repo_pr_headRefName__closures, _subscribe($for_content5__repo_head__closures, _subscribe($uncommitted__closures, writeScope($scope19_id, {
13957
- _: _scope_with_id($scope18_id),
13958
- Ccs: 2
13976
+ const $scope20_id = _scope_id();
13977
+ _html(`this view is <!>${_escape(shortSha(repo.head))}${_el_resume($scope20_id, "a")} (<!>${_escape(repo.pr.headRefName)}${_el_resume($scope20_id, "b")}). Local is <!>${_escape(shortSha(repo.localHead))}${_el_resume($scope20_id, "c")} (<!>${_escape(repo.branch)}${_el_resume($scope20_id, "d")}<!>${uncommitted ? ", plus uncommitted" : ""}${_el_resume($scope20_id, "e")}).`);
13978
+ _subscribe($for_content5__repo_branch__closures, _subscribe($for_content5__repo_localHead__closures, _subscribe($for_content5__repo_pr_headRefName__closures, _subscribe($for_content5__repo_head__closures, _subscribe($uncommitted__closures, writeScope($scope20_id, {
13979
+ _: _scope_with_id($scope19_id),
13980
+ Ccu: 2
13959
13981
  }))))));
13960
- _resume_branch($scope19_id);
13961
- }, $scope18_id)
13982
+ _resume_branch($scope20_id);
13983
+ }, $scope19_id)
13962
13984
  });
13963
- writeScope($scope18_id, {
13985
+ writeScope($scope19_id, {
13964
13986
  h: repo?.head,
13965
13987
  i: repo?.pr?.headRefName,
13966
13988
  j: repo?.localHead,
@@ -13971,22 +13993,22 @@ var diff_view_default = _template("i", (input) => {
13971
13993
  o: $for_content5__repo_branch__closures,
13972
13994
  a: _existing_scope($childScope7)
13973
13995
  });
13974
- }, "id", $scope0_id, "a6", 1, 1, 1, 0, 1);
13996
+ }, "id", $scope0_id, "a3", 1, 1, 1, 0, 1);
13975
13997
  _if(() => {
13976
13998
  if (repos && !allFiles.length) {
13977
- const $scope23_id = _scope_id();
13978
- _html(`<p${_attr_class(diff_view_module_default.centerPad)}>${repoList.some((r) => r.pr) ? "No file changes on these PRs." : "No changes vs base."}${_el_resume($scope23_id, "b")}</p>`);
13979
- writeScope($scope23_id, {});
13999
+ const $scope24_id = _scope_id();
14000
+ _html(`<p${_attr_class(diff_view_module_default.centerPad)}>${repoList.some((r) => r.pr) ? "No file changes on these PRs." : "No changes vs base."}${_el_resume($scope24_id, "b")}</p>`);
14001
+ writeScope($scope24_id, {});
13980
14002
  return 0;
13981
14003
  } else if (repos && !shownFiles.length && !findState.hit) {
13982
- const $scope13_id = _scope_id();
13983
- _html(`<p${_attr_class(diff_view_module_default.centerPad)}>${findState.query.trim() ? "No matches in diffs." : `No files match "${_escape(`${fileFilter}`)}".`}${_el_resume($scope13_id, "b")}</p>`);
13984
- writeScope($scope13_id, {});
14004
+ const $scope14_id = _scope_id();
14005
+ _html(`<p${_attr_class(diff_view_module_default.centerPad)}>${findState.query.trim() ? "No matches in diffs." : `No files match "${_escape(`${fileFilter}`)}".`}${_el_resume($scope14_id, "b")}</p>`);
14006
+ writeScope($scope14_id, {});
13985
14007
  return 1;
13986
14008
  }
13987
- }, $scope0_id, "a7", 1, 1, 1, 0, 1);
14009
+ }, $scope0_id, "a4", 1, 1, 1, 0, 1);
13988
14010
  _for_of(repoList, (repo) => {
13989
- const $scope3_id = _scope_id();
14011
+ const $scope4_id = _scope_id();
13990
14012
  const $for_content__repo_pr_number__closures = /* @__PURE__ */ new Set();
13991
14013
  const $for_content__repo_pr_url__closures = /* @__PURE__ */ new Set();
13992
14014
  const $for_content__repo_pr_title__closures = /* @__PURE__ */ new Set();
@@ -14005,51 +14027,51 @@ var diff_view_default = _template("i", (input) => {
14005
14027
  const shownInRepo = shownByRepo.get(repo.id) || [];
14006
14028
  _if(() => {
14007
14029
  if (repoFiles.length || repo.pr) {
14008
- const $scope4_id = _scope_id();
14030
+ const $scope5_id = _scope_id();
14009
14031
  _html(`<section${_attr_class(diff_view_module_default.repoSection)}${repo.pr ? _attr("data-pr", `${repo.worktree}/${repo.pr.number}`) : ""}${_attr("hidden", !shownInRepo.length && !repo.pr && findState.hit?.repo !== repo.id)}>`);
14010
14032
  _if(() => {
14011
14033
  if (repoList.length > 1) {
14012
- const $scope21_id = _scope_id();
14013
- _html(`<button${_attr_class(diff_view_module_default.repoSep)}><span${_attr_class(diff_view_module_default.treeChev)}>${collapsedRepos.has(repo.id) ? "▸" : "▾"}${_el_resume($scope21_id, "c")}</span><span${_attr_class(diff_view_module_default.repoWorktree)}>${_escape(repo.worktree)}${_el_resume($scope21_id, "e")}</span>`);
14034
+ const $scope22_id = _scope_id();
14035
+ _html(`<button${_attr_class(diff_view_module_default.repoSep)}><span${_attr_class(diff_view_module_default.treeChev)}>${collapsedRepos.has(repo.id) ? "▸" : "▾"}${_el_resume($scope22_id, "c")}</span><span${_attr_class(diff_view_module_default.repoWorktree)}>${_escape(repo.worktree)}${_el_resume($scope22_id, "e")}</span>`);
14014
14036
  _if(() => {
14015
14037
  if (repo.pr) {
14016
- const $scope28_id = _scope_id();
14017
- _html(`<a${_attr_class([ui_module_default.chip, ui_module_default.pr])}${_attr("href", `${repo.pr.url}/files`)} target=_blank rel=noopener${_attr("title", `${repo.pr.title} — ${repo.pr.headRefName} ${repo.head} vs ${repo.base} ${repo.baseSha}`)}>#<!>${_escape(repo.pr.number)}${_el_resume($scope28_id, "b")}</a>${_el_resume($scope28_id, "a")}<span${_attr_class(diff_view_module_default.repoTitle)}>${_escape(repo.pr.title)}${_el_resume($scope28_id, "d")}</span>`);
14018
- _script($scope28_id, "i35");
14019
- _subscribe($for_content__repo_baseSha__closures, _subscribe($for_content__repo_base__closures, _subscribe($for_content__repo_head__closures, _subscribe($for_content__repo_pr_headRefName__closures, _subscribe($for_content__repo_pr_title__closures, _subscribe($for_content__repo_pr_url__closures, _subscribe($for_content__repo_pr_number__closures, writeScope($scope28_id, {
14038
+ const $scope32_id = _scope_id();
14039
+ _html(`<a${_attr_class([ui_module_default.chip, ui_module_default.pr])}${_attr("href", `${repo.pr.url}/files`)} target=_blank rel=noopener${_attr("title", `${repo.pr.title} — ${repo.pr.headRefName} ${repo.head} vs ${repo.base} ${repo.baseSha}`)}>#<!>${_escape(repo.pr.number)}${_el_resume($scope32_id, "b")}</a>${_el_resume($scope32_id, "a")}<span${_attr_class(diff_view_module_default.repoTitle)}>${_escape(repo.pr.title)}${_el_resume($scope32_id, "d")}</span>`);
14040
+ _script($scope32_id, "i36");
14041
+ _subscribe($for_content__repo_baseSha__closures, _subscribe($for_content__repo_base__closures, _subscribe($for_content__repo_head__closures, _subscribe($for_content__repo_pr_headRefName__closures, _subscribe($for_content__repo_pr_title__closures, _subscribe($for_content__repo_pr_url__closures, _subscribe($for_content__repo_pr_number__closures, writeScope($scope32_id, {
14020
14042
  Ca4: 2,
14021
14043
  Ca5: 2,
14022
14044
  Ca6: 2
14023
14045
  }))))))));
14024
14046
  return 0;
14025
14047
  } else {
14026
- const $scope29_id = _scope_id();
14027
- _html(`<span${_attr_class(diff_view_module_default.repoTitle)}>${_escape(repo.full_name)}${_el_resume($scope29_id, "b")}</span>`);
14028
- _subscribe($for_content__repo_full_name__closures, writeScope($scope29_id, {}));
14048
+ const $scope33_id = _scope_id();
14049
+ _html(`<span${_attr_class(diff_view_module_default.repoTitle)}>${_escape(repo.full_name)}${_el_resume($scope33_id, "b")}</span>`);
14050
+ _subscribe($for_content__repo_full_name__closures, writeScope($scope33_id, {}));
14029
14051
  return 1;
14030
14052
  }
14031
- }, $scope21_id, "f");
14032
- _html(`<span${_attr_class([ui_module_default.chip, ui_module_default.lane])}${_attr("title", `${repo.pr ? "PR head" : "checked out"} ${repo.pr ? repo.pr.headRefName : repo.branch} ${repo.head}`)}>on <!>${repo.pr ? _escape(repo.pr.headRefName) : _escape(repo.branch)}${_el_resume($scope21_id, "h")}</span>${_el_resume($scope21_id, "g")}<span${_attr_class(ui_module_default.chip)}${_attr("title", `${repo.base} ${repo.baseSha}`)}>vs <!>${_escape(repo.base)}${_el_resume($scope21_id, "j")}</span>${_el_resume($scope21_id, "i")}`);
14053
+ }, $scope22_id, "f");
14054
+ _html(`<span${_attr_class([ui_module_default.chip, ui_module_default.lane])}${_attr("title", `${repo.pr ? "PR head" : "checked out"} ${repo.pr ? repo.pr.headRefName : repo.branch} ${repo.head}`)}>on <!>${repo.pr ? _escape(repo.pr.headRefName) : _escape(repo.branch)}${_el_resume($scope22_id, "h")}</span>${_el_resume($scope22_id, "g")}<span${_attr_class(ui_module_default.chip)}${_attr("title", `${repo.base} ${repo.baseSha}`)}>vs <!>${_escape(repo.base)}${_el_resume($scope22_id, "j")}</span>${_el_resume($scope22_id, "i")}`);
14033
14055
  _if(() => {
14034
14056
  if (localDifferIds.has(repo.id)) {
14035
- const $scope30_id = _scope_id();
14036
- _html(`<span${_attr_class(ui_module_default.chip)}${_attr("title", `checked out ${repo.branch} ${repo.localHead}`)}>local <!>${_escape(repo.branch)}${_el_resume($scope30_id, "b")}</span>${_el_resume($scope30_id, "a")}`);
14037
- _subscribe($for_content__repo_localHead__closures, _subscribe($for_content__repo_branch__closures, writeScope($scope30_id, { Ca8: 2 })));
14057
+ const $scope34_id = _scope_id();
14058
+ _html(`<span${_attr_class(ui_module_default.chip)}${_attr("title", `checked out ${repo.branch} ${repo.localHead}`)}>local <!>${_escape(repo.branch)}${_el_resume($scope34_id, "b")}</span>${_el_resume($scope34_id, "a")}`);
14059
+ _subscribe($for_content__repo_localHead__closures, _subscribe($for_content__repo_branch__closures, writeScope($scope34_id, { Ca8: 2 })));
14038
14060
  return 0;
14039
14061
  }
14040
- }, $scope21_id, "k", 1, 1, 1, 0, 1);
14041
- _html(`</button>${_el_resume($scope21_id, "a")}`);
14042
- _script($scope21_id, "i36");
14043
- _subscribe($for_content__repo_branch__closures, _subscribe($for_content__repo_baseSha__closures, _subscribe($for_content__repo_base__closures, _subscribe($for_content__repo_head__closures, _subscribe($for_content__repo_worktree__closures, _subscribe($for_content__repo_pr__closures, _subscribe($for_content__repo_id__closures, _subscribe($localDifferIds__closures, _subscribe($collapsedRepos__closures, writeScope($scope21_id, { Ccx: 1 }))))))))));
14062
+ }, $scope22_id, "k", 1, 1, 1, 0, 1);
14063
+ _html(`</button>${_el_resume($scope22_id, "a")}`);
14064
+ _script($scope22_id, "i37");
14065
+ _subscribe($for_content__repo_branch__closures, _subscribe($for_content__repo_baseSha__closures, _subscribe($for_content__repo_base__closures, _subscribe($for_content__repo_head__closures, _subscribe($for_content__repo_worktree__closures, _subscribe($for_content__repo_pr__closures, _subscribe($for_content__repo_id__closures, _subscribe($localDifferIds__closures, _subscribe($collapsedRepos__closures, writeScope($scope22_id, { Ccz: 1 }))))))))));
14044
14066
  return 0;
14045
14067
  } else {
14046
- const $scope24_id = _scope_id();
14068
+ const $scope26_id = _scope_id();
14047
14069
  _html(`<p${_attr_class(diff_view_module_default.repoMeta)}>`);
14048
14070
  _if(() => {
14049
14071
  if (repo.pr) {
14050
- const $scope31_id = _scope_id();
14051
- _html(`<a${_attr_class([ui_module_default.chip, ui_module_default.pr])}${_attr("href", `${repo.pr.url}/files`)} target=_blank rel=noopener${_attr("title", `${repo.pr.title} — ${repo.pr.headRefName} ${repo.head} vs ${repo.base} ${repo.baseSha}`)}>#<!>${_escape(repo.pr.number)}${_el_resume($scope31_id, "b")}</a>${_el_resume($scope31_id, "a")}<span${_attr_class(ui_module_default.dim)}>${_escape(repo.pr.title)}${_el_resume($scope31_id, "d")}</span>`);
14052
- _subscribe($for_content__repo_baseSha__closures, _subscribe($for_content__repo_base__closures, _subscribe($for_content__repo_head__closures, _subscribe($for_content__repo_pr_headRefName__closures, _subscribe($for_content__repo_pr_title__closures, _subscribe($for_content__repo_pr_url__closures, _subscribe($for_content__repo_pr_number__closures, writeScope($scope31_id, {
14072
+ const $scope35_id = _scope_id();
14073
+ _html(`<a${_attr_class([ui_module_default.chip, ui_module_default.pr])}${_attr("href", `${repo.pr.url}/files`)} target=_blank rel=noopener${_attr("title", `${repo.pr.title} — ${repo.pr.headRefName} ${repo.head} vs ${repo.base} ${repo.baseSha}`)}>#<!>${_escape(repo.pr.number)}${_el_resume($scope35_id, "b")}</a>${_el_resume($scope35_id, "a")}<span${_attr_class(ui_module_default.dim)}>${_escape(repo.pr.title)}${_el_resume($scope35_id, "d")}</span>`);
14074
+ _subscribe($for_content__repo_baseSha__closures, _subscribe($for_content__repo_base__closures, _subscribe($for_content__repo_head__closures, _subscribe($for_content__repo_pr_headRefName__closures, _subscribe($for_content__repo_pr_title__closures, _subscribe($for_content__repo_pr_url__closures, _subscribe($for_content__repo_pr_number__closures, writeScope($scope35_id, {
14053
14075
  Ca0: 1,
14054
14076
  Ca1: 1,
14055
14077
  Ca2: 1,
@@ -14060,22 +14082,22 @@ var diff_view_default = _template("i", (input) => {
14060
14082
  }))))))));
14061
14083
  return 0;
14062
14084
  }
14063
- }, $scope24_id, "b");
14064
- _html(`<span${_attr_class([ui_module_default.chip, ui_module_default.lane])}${_attr("title", `${repo.pr ? "PR head" : "checked out"} ${repo.pr ? repo.pr.headRefName : repo.branch} ${repo.head}`)}>on <!>${repo.pr ? _escape(repo.pr.headRefName) : _escape(repo.branch)}${_el_resume($scope24_id, "d")}</span>${_el_resume($scope24_id, "c")}<span${_attr_class(ui_module_default.chip)}${_attr("title", `${repo.base} ${repo.baseSha}`)}>vs <!>${_escape(repo.base)}${_el_resume($scope24_id, "f")}</span>${_el_resume($scope24_id, "e")}`);
14085
+ }, $scope26_id, "b");
14086
+ _html(`<span${_attr_class([ui_module_default.chip, ui_module_default.lane])}${_attr("title", `${repo.pr ? "PR head" : "checked out"} ${repo.pr ? repo.pr.headRefName : repo.branch} ${repo.head}`)}>on <!>${repo.pr ? _escape(repo.pr.headRefName) : _escape(repo.branch)}${_el_resume($scope26_id, "d")}</span>${_el_resume($scope26_id, "c")}<span${_attr_class(ui_module_default.chip)}${_attr("title", `${repo.base} ${repo.baseSha}`)}>vs <!>${_escape(repo.base)}${_el_resume($scope26_id, "f")}</span>${_el_resume($scope26_id, "e")}`);
14065
14087
  _if(() => {
14066
14088
  if (localDifferIds.has(repo.id)) {
14067
- const $scope32_id = _scope_id();
14068
- _html(`<span${_attr_class(ui_module_default.chip)}${_attr("title", `checked out ${repo.branch} ${repo.localHead}`)}>local <!>${_escape(repo.branch)}${_el_resume($scope32_id, "b")}</span>${_el_resume($scope32_id, "a")}`);
14069
- _subscribe($for_content__repo_localHead__closures, _subscribe($for_content__repo_branch__closures, writeScope($scope32_id, {
14089
+ const $scope36_id = _scope_id();
14090
+ _html(`<span${_attr_class(ui_module_default.chip)}${_attr("title", `checked out ${repo.branch} ${repo.localHead}`)}>local <!>${_escape(repo.branch)}${_el_resume($scope36_id, "b")}</span>${_el_resume($scope36_id, "a")}`);
14091
+ _subscribe($for_content__repo_localHead__closures, _subscribe($for_content__repo_branch__closures, writeScope($scope36_id, {
14070
14092
  Ca8: 3,
14071
14093
  Ca9: 1
14072
14094
  })));
14073
14095
  return 0;
14074
14096
  }
14075
- }, $scope24_id, "g", 1, 1, 1, 0, 1);
14097
+ }, $scope26_id, "g", 1, 1, 1, 0, 1);
14076
14098
  _html("</p>");
14077
- _subscribe($for_content__repo_branch__closures, _subscribe($for_content__repo_baseSha__closures, _subscribe($for_content__repo_base__closures, _subscribe($for_content__repo_head__closures, _subscribe($for_content__repo_pr__closures, _subscribe($for_content__repo_id__closures, _subscribe($localDifferIds__closures, writeScope($scope24_id, {
14078
- Cd6: 1,
14099
+ _subscribe($for_content__repo_branch__closures, _subscribe($for_content__repo_baseSha__closures, _subscribe($for_content__repo_base__closures, _subscribe($for_content__repo_head__closures, _subscribe($for_content__repo_pr__closures, _subscribe($for_content__repo_id__closures, _subscribe($localDifferIds__closures, writeScope($scope26_id, {
14100
+ Cda: 1,
14079
14101
  Cx: 1,
14080
14102
  Cy: 1,
14081
14103
  Ca4: 1,
@@ -14085,62 +14107,62 @@ var diff_view_default = _template("i", (input) => {
14085
14107
  }))))))));
14086
14108
  return 1;
14087
14109
  }
14088
- }, $scope4_id, "b", 1, 1, 1, 0, 1);
14110
+ }, $scope5_id, "b", 1, 1, 1, 0, 1);
14089
14111
  _if(() => {
14090
14112
  if (!(repoList.length > 1 && collapsedRepos.has(repo.id))) {
14091
- const $scope5_id = _scope_id();
14113
+ const $scope6_id = _scope_id();
14092
14114
  _html(`<div${_attr_class(diff_view_module_default.files)}>`);
14093
14115
  _for_of(repoFiles, (file) => {
14094
- const $scope6_id = _scope_id();
14116
+ const $scope7_id = _scope_id();
14095
14117
  const $for_content2__file__closures = /* @__PURE__ */ new Set();
14096
14118
  const $for_content2__file_key__closures = /* @__PURE__ */ new Set();
14097
14119
  const $for_content2__fileComments__closures = /* @__PURE__ */ new Set();
14098
14120
  const fileComments = commentsByFile.get(file.key) || [];
14099
14121
  let expanded = true;
14100
- _html(`<details${_attr_details_or_dialog_open($scope6_id, "a", expanded)}${_attr_class(diff_view_module_default.file)}${_attr("data-key", file.key)}${_attr("hidden", !shownKeySet.has(file.key))}><summary><span${_attr_class(diff_view_module_default.status)}${_attr("data-status", file.status)}>${_escape(file.status)}${_el_resume($scope6_id, "c")}</span>${_el_resume($scope6_id, "b")}<span${_attr_class(diff_view_module_default.path)}${_attr("title", file.path)}><bdi>${_escape(file.path)}${_el_resume($scope6_id, "e")}</bdi></span>${_el_resume($scope6_id, "d")}`);
14122
+ _html(`<details${_attr_details_or_dialog_open($scope7_id, "a", expanded)}${_attr_class(diff_view_module_default.file)}${_attr("data-key", file.key)}${_attr("hidden", !shownKeySet.has(file.key))}><summary><span${_attr_class(diff_view_module_default.status)}${_attr("data-status", file.status)}>${_escape(file.status)}${_el_resume($scope7_id, "c")}</span>${_el_resume($scope7_id, "b")}<span${_attr_class(diff_view_module_default.path)}${_attr("title", file.path)}><bdi>${_escape(file.path)}${_el_resume($scope7_id, "e")}</bdi></span>${_el_resume($scope7_id, "d")}`);
14101
14123
  _if(() => {
14102
14124
  if (fileComments.length) {
14103
- const $scope33_id = _scope_id();
14104
- _html(`<span${_attr_class(ui_module_default.chip)}>💬 <!>${_escape(fileComments.length)}${_el_resume($scope33_id, "b")}</span>`);
14105
- writeScope($scope33_id, {});
14125
+ const $scope37_id = _scope_id();
14126
+ _html(`<span${_attr_class(ui_module_default.chip)}>💬 <!>${_escape(fileComments.length)}${_el_resume($scope37_id, "b")}</span>`);
14127
+ writeScope($scope37_id, {});
14106
14128
  return 0;
14107
14129
  }
14108
- }, $scope6_id, "f", 1, 1, 1, 0, 1);
14130
+ }, $scope7_id, "f", 1, 1, 1, 0, 1);
14109
14131
  _html("</summary>");
14110
14132
  _if(() => {
14111
14133
  if (file.binary) {
14112
- const $scope34_id = _scope_id();
14134
+ const $scope38_id = _scope_id();
14113
14135
  _html(`<p${_attr_class(diff_view_module_default.diffPad)}>binary file</p>`);
14114
- writeScope($scope34_id, {});
14136
+ writeScope($scope38_id, {});
14115
14137
  return 0;
14116
14138
  } else if (file.tooLarge) {
14117
- const $scope35_id = _scope_id();
14139
+ const $scope39_id = _scope_id();
14118
14140
  _html(`<p${_attr_class(diff_view_module_default.diffPad)}>file too large to display</p>`);
14119
- writeScope($scope35_id, {});
14141
+ writeScope($scope39_id, {});
14120
14142
  return 1;
14121
14143
  } else if (file.old == null && file.new == null) {
14122
- const $scope36_id = _scope_id();
14144
+ const $scope40_id = _scope_id();
14123
14145
  _html(`<p${_attr_class(diff_view_module_default.diffPad)}>file could not be read</p>`);
14124
- writeScope($scope36_id, {});
14146
+ writeScope($scope40_id, {});
14125
14147
  return 2;
14126
14148
  } else {
14127
- const $scope7_id = _scope_id();
14149
+ const $scope8_id = _scope_id();
14128
14150
  _if(() => {
14129
14151
  {
14130
- const $scope22_id = _scope_id();
14131
- _html(`<div${_attr_class(diff_view_module_default.diffWait)}></div>${_el_resume($scope22_id, "a")}`);
14132
- _script($scope22_id, "i37");
14133
- writeScope($scope22_id, {});
14152
+ const $scope23_id = _scope_id();
14153
+ _html(`<div${_attr_class(diff_view_module_default.diffWait)}></div>${_el_resume($scope23_id, "a")}`);
14154
+ _script($scope23_id, "i38");
14155
+ writeScope($scope23_id, {});
14134
14156
  return 0;
14135
14157
  }
14136
- }, $scope7_id, "a", 1, 1, 1, 0, 1);
14137
- writeScope($scope7_id, {});
14158
+ }, $scope8_id, "a", 1, 1, 1, 0, 1);
14159
+ writeScope($scope8_id, {});
14138
14160
  return 3;
14139
14161
  }
14140
- }, $scope6_id, "g");
14141
- _html(`</details>${_el_resume($scope6_id, "a")}`);
14142
- _script($scope6_id, "i38");
14143
- _subscribe($commentsByFile__closures, _subscribe($shownKeySet__closures, writeScope($scope6_id, {
14162
+ }, $scope7_id, "g");
14163
+ _html(`</details>${_el_resume($scope7_id, "a")}`);
14164
+ _script($scope7_id, "i39");
14165
+ _subscribe($commentsByFile__closures, _subscribe($shownKeySet__closures, writeScope($scope7_id, {
14144
14166
  i: file,
14145
14167
  j: file?.key,
14146
14168
  o: file?.binary,
@@ -14154,17 +14176,17 @@ var diff_view_default = _template("i", (input) => {
14154
14176
  x: $for_content2__file_key__closures,
14155
14177
  y: $for_content2__fileComments__closures
14156
14178
  })));
14157
- }, "key", $scope5_id, "a", 1, 1, 1, "</div>", 1);
14158
- _subscribe($for_content__repoFiles__closures, writeScope($scope5_id, {}));
14179
+ }, "key", $scope6_id, "a", 1, 1, 1, "</div>", 1);
14180
+ _subscribe($for_content__repoFiles__closures, writeScope($scope6_id, {}));
14159
14181
  return 0;
14160
14182
  }
14161
- }, $scope4_id, "c", 1, 1, 1, 0, 1);
14162
- _html(`</section>${_el_resume($scope4_id, "a")}`);
14163
- _subscribe($repoList_length__closures, _subscribe($collapsedRepos__closures, _subscribe($findState_hit_repo__closures, writeScope($scope4_id, {}))));
14183
+ }, $scope5_id, "c", 1, 1, 1, 0, 1);
14184
+ _html(`</section>${_el_resume($scope5_id, "a")}`);
14185
+ _subscribe($repoList_length__closures, _subscribe($collapsedRepos__closures, _subscribe($findState_hit_repo__closures, writeScope($scope5_id, {}))));
14164
14186
  return 0;
14165
14187
  }
14166
- }, $scope3_id, "a", 1, 1, 1, 0, 1);
14167
- writeScope($scope3_id, {
14188
+ }, $scope4_id, "a", 1, 1, 1, 0, 1);
14189
+ writeScope($scope4_id, {
14168
14190
  d: repo?.id,
14169
14191
  g: repo?.pr,
14170
14192
  h: repo?.worktree,
@@ -14195,8 +14217,8 @@ var diff_view_default = _template("i", (input) => {
14195
14217
  z: $for_content__repo_worktree__closures,
14196
14218
  aa: $for_content__repoFiles__closures
14197
14219
  });
14198
- }, "id", $scope0_id, "a8");
14199
- _html(`</div>${_el_resume($scope0_id, "a1")}</div>`);
14220
+ }, "id", $scope0_id, "a5");
14221
+ _html(`</div>${_el_resume($scope0_id, "y")}</div>`);
14200
14222
  _set_serialize_reason(110);
14201
14223
  const $childScope9 = _peek_scope_id();
14202
14224
  diff_tree_default({
@@ -14222,123 +14244,126 @@ var diff_view_default = _template("i", (input) => {
14222
14244
  onJump: jumpTo
14223
14245
  });
14224
14246
  _html("</div>");
14225
- _script($scope0_id, "i39");
14226
14247
  _script($scope0_id, "i40");
14227
14248
  _script($scope0_id, "i41");
14249
+ _script($scope0_id, "i42");
14228
14250
  writeScope($scope0_id, {
14229
- ad: input.workspaceId,
14230
- ae: input.focusPr,
14231
- af: input.active,
14232
- ag: input.focusNonce,
14233
- ah: input.onSent,
14234
- ai: input.onExit,
14235
- aj: input.sessions,
14236
- ak: repos,
14237
- al: comments,
14238
- an: draft,
14239
- ap: error,
14240
- aq: loading,
14241
- ar: fileFilter,
14242
- as: uncommitted,
14243
- at: treeOpen,
14244
- av: findOpen,
14245
- aw: findTick,
14246
- az: findState?.query,
14247
- b1: findState?.hit,
14248
- b2: findState?.hit?.key,
14249
- b3: findState?.hit?.repo,
14250
- b4: collapsedRepos,
14251
- b5: dismissedDrift,
14252
- b7: nearBox.cbs,
14253
- b8: nearBox.io,
14254
- ba: observeNear,
14255
- bb: focusPrSection,
14256
- bd: headBox.sig,
14257
- bf: headBox.timer,
14258
- bg: load,
14259
- bi: loadReview,
14260
- bj: reload,
14261
- bl: reloadSoon,
14262
- bn: repoList,
14263
- bp: repoList.length,
14264
- bq: allFiles,
14265
- bs: allFiles?.length,
14266
- bt: fileFiltered,
14267
- bu: findKeys,
14268
- c0: shownKeySet,
14269
- c1: filesByRepo,
14270
- c2: shownByRepo,
14271
- c4: commentsByFile,
14272
- c8: localDifferIds,
14273
- c9: driftRepos,
14274
- cc: dismissDrift,
14275
- cd: saveComment,
14276
- ce: removeComment,
14277
- cf: clearComments,
14278
- ci: copyMarkdown,
14279
- cj: sendTo,
14280
- ck: jumpTo,
14281
- cl: openFind,
14282
- cm: onFindState,
14283
- z: _existing_scope($childScope2),
14284
- cp: $error__closures,
14285
- cs: $uncommitted__closures,
14286
- cq: $loading__closures,
14287
- d7: $driftRepos__closures,
14288
- cx: $collapsedRepos__closures,
14289
- d6: $localDifferIds__closures,
14290
- co: $draft__closures,
14291
- d9: $saveComment2__closures,
14292
- da: $removeComment2__closures,
14293
- d2: $shownKeySet__closures,
14294
- d5: $commentsByFile__closures,
14295
- cw: $findState_hit_repo__closures,
14296
- d0: $repoList_length__closures,
14297
- a9: _existing_scope($childScope9),
14298
- aa: _existing_scope($childScope10)
14251
+ aa: input.workspaceId,
14252
+ ab: input.focusPr,
14253
+ ac: input.active,
14254
+ ad: input.focusNonce,
14255
+ ae: input.onSent,
14256
+ af: input.onExit,
14257
+ ag: input.sessions,
14258
+ ah: repos,
14259
+ ai: comments,
14260
+ aj: comments?.length,
14261
+ ak: draft,
14262
+ am: error,
14263
+ an: loading,
14264
+ ao: fileFilter,
14265
+ ap: uncommitted,
14266
+ aq: treeOpen,
14267
+ as: findOpen,
14268
+ at: findTick,
14269
+ aw: findState?.query,
14270
+ ay: findState?.hit,
14271
+ az: findState?.hit?.key,
14272
+ b0: findState?.hit?.repo,
14273
+ b1: collapsedRepos,
14274
+ b2: dismissedDrift,
14275
+ b4: nearBox.cbs,
14276
+ b5: nearBox.io,
14277
+ b7: observeNear,
14278
+ b8: focusPrSection,
14279
+ ba: headBox.sig,
14280
+ bc: headBox.timer,
14281
+ bd: load,
14282
+ bf: loadReview,
14283
+ bg: reload,
14284
+ bi: reloadSoon,
14285
+ bk: repoList,
14286
+ bm: repoList.length,
14287
+ bn: allFiles,
14288
+ bp: allFiles?.length,
14289
+ bq: fileFiltered,
14290
+ bs: lineStats?.additions,
14291
+ bt: lineStats?.deletions,
14292
+ bv: findKeys,
14293
+ c1: shownKeySet,
14294
+ c2: filesByRepo,
14295
+ c3: shownByRepo,
14296
+ c5: commentsByFile,
14297
+ c9: localDifferIds,
14298
+ ca: driftRepos,
14299
+ cd: dismissDrift,
14300
+ ce: saveComment,
14301
+ cf: removeComment,
14302
+ cg: clearComments,
14303
+ cj: copyMarkdown,
14304
+ ck: sendTo,
14305
+ cl: jumpTo,
14306
+ cm: openFind,
14307
+ cn: onFindState,
14308
+ e: _existing_scope($childScope),
14309
+ cr: $error__closures,
14310
+ cu: $uncommitted__closures,
14311
+ cs: $loading__closures,
14312
+ db: $driftRepos__closures,
14313
+ cz: $collapsedRepos__closures,
14314
+ da: $localDifferIds__closures,
14315
+ cq: $draft__closures,
14316
+ dd: $saveComment2__closures,
14317
+ de: $removeComment2__closures,
14318
+ d6: $shownKeySet__closures,
14319
+ d9: $commentsByFile__closures,
14320
+ cy: $findState_hit_repo__closures,
14321
+ d2: $repoList_length__closures,
14322
+ a6: _existing_scope($childScope9),
14323
+ a7: _existing_scope($childScope10)
14299
14324
  });
14300
14325
  _resume_branch($scope0_id);
14301
14326
  });
14302
14327
  var manage_workspace_module_default = {
14303
- page: "_bz",
14304
- body: "_bA",
14305
- content: "_bB",
14306
- pageHead: "_bC",
14307
- backBtn: "_bD",
14308
- pageHeadText: "_bE",
14309
- pageMeta: "_bF",
14310
- statusPill: "_bG",
14311
- statusOn: "_bH",
14312
- statusOff: "_bI",
14313
- progress: "_bJ",
14314
- section: "_bK",
14315
- sectionHead: "_bL",
14316
- sectionCount: "_bM",
14317
- sectionBtn: "_bN",
14318
- groupLabel: "_bO",
14319
- pickerWrap: "_bP",
14320
- cardList: "_bQ",
14321
- card: "_bR",
14322
- pending: "_bS",
14323
- cardMain: "_bT",
14324
- cardTitle: "_bU",
14325
- cardMeta: "_bV",
14326
- cardSub: "_bW",
14327
- cardTag: "_bX",
14328
- cardAction: "_bY",
14329
- dangerAction: "_bZ",
14330
- armed: "_b0",
14331
- okAction: "_b1",
14332
- prState: "_b2",
14333
- portLink: "_b3",
14334
- emptyNote: "_b4",
14335
- dangerZone: "_b5",
14336
- dangerRow: "_b6",
14337
- dangerBtn: "_b7",
14338
- dangerHint: "_b8",
14339
- pageHeadAside: "_b9",
14340
- iconBtn: "_b_ _cb",
14341
- spinning: "_ca _cc"
14328
+ page: "_co",
14329
+ body: "_cp",
14330
+ content: "_cq",
14331
+ pageHead: "_cr",
14332
+ backBtn: "_cs",
14333
+ pageHeadText: "_ct",
14334
+ pageMeta: "_cu",
14335
+ statusPill: "_cv",
14336
+ statusOn: "_cw",
14337
+ statusOff: "_cx",
14338
+ progress: "_cy",
14339
+ section: "_cz",
14340
+ sectionHead: "_cA",
14341
+ sectionCount: "_cB",
14342
+ sectionBtn: "_cC",
14343
+ groupLabel: "_cD",
14344
+ pickerWrap: "_cE",
14345
+ cardList: "_cF",
14346
+ card: "_cG",
14347
+ pending: "_cH",
14348
+ cardMain: "_cI",
14349
+ cardTitle: "_cJ",
14350
+ cardMeta: "_cK",
14351
+ cardSub: "_cL",
14352
+ cardTag: "_cM",
14353
+ cardAction: "_cN",
14354
+ dangerAction: "_cO",
14355
+ armed: "_cP",
14356
+ okAction: "_cQ",
14357
+ prState: "_cR",
14358
+ portLink: "_cS",
14359
+ emptyNote: "_cT",
14360
+ dangerZone: "_cU",
14361
+ dangerRow: "_cV",
14362
+ dangerBtn: "_cW",
14363
+ dangerHint: "_cX",
14364
+ pageHeadAside: "_cY",
14365
+ iconBtn: "_cZ _d9",
14366
+ spinning: "_c0 _d_"
14342
14367
  };
14343
14368
  //#endregion
14344
14369
  //#region src/tags/manage-workspace.marko
@@ -14750,39 +14775,39 @@ var manage_workspace_default = _template("k", (input) => {
14750
14775
  _resume_branch($scope0_id);
14751
14776
  });
14752
14777
  var usage_stats_module_default = {
14753
- page: "_c3",
14754
- body: "_c4",
14755
- content: "_c5",
14756
- iconBtn: "_c6 _cb",
14757
- spinning: "_c7 _cc",
14758
- pageHead: "_c8",
14759
- backBtn: "_c9",
14760
- refreshBtn: "_c_",
14761
- pageHeadText: "_da",
14762
- pageMeta: "_db",
14763
- pageHeadAside: "_dc",
14764
- note: "_dd",
14765
- usageList: "_de",
14766
- usageRow: "_df",
14767
- usageName: "_dg",
14768
- plan: "_dh",
14769
- usageStale: "_di",
14770
- stale: "_dj",
14771
- usageMeters: "_dk",
14772
- meter: "_dl",
14773
- meterLabel: "_dm",
14774
- meterTrack: "_dn",
14775
- meterFill: "_do",
14776
- fillOk: "_dp",
14777
- fillMid: "_dq",
14778
- fillWarm: "_dr",
14779
- fillHot: "_ds",
14780
- meterPct: "_dt",
14781
- pctOk: "_du",
14782
- pctMid: "_dv",
14783
- pctWarm: "_dw",
14784
- pctHot: "_dx",
14785
- meterReset: "_dy"
14778
+ page: "_c1",
14779
+ body: "_c2",
14780
+ content: "_c3",
14781
+ iconBtn: "_c4 _d9",
14782
+ spinning: "_c5 _d_",
14783
+ pageHead: "_c6",
14784
+ backBtn: "_c7",
14785
+ refreshBtn: "_c8",
14786
+ pageHeadText: "_c9",
14787
+ pageMeta: "_c_",
14788
+ pageHeadAside: "_da",
14789
+ note: "_db",
14790
+ usageList: "_dc",
14791
+ usageRow: "_dd",
14792
+ usageName: "_de",
14793
+ plan: "_df",
14794
+ usageStale: "_dg",
14795
+ stale: "_dh",
14796
+ usageMeters: "_di",
14797
+ meter: "_dj",
14798
+ meterLabel: "_dk",
14799
+ meterTrack: "_dl",
14800
+ meterFill: "_dm",
14801
+ fillOk: "_dn",
14802
+ fillMid: "_do",
14803
+ fillWarm: "_dp",
14804
+ fillHot: "_dq",
14805
+ meterPct: "_dr",
14806
+ pctOk: "_ds",
14807
+ pctMid: "_dt",
14808
+ pctWarm: "_du",
14809
+ pctHot: "_dv",
14810
+ meterReset: "_dw"
14786
14811
  };
14787
14812
  //#endregion
14788
14813
  //#region src/tags/usage-stats.marko
@@ -14893,41 +14918,41 @@ var usage_stats_default = _template("w", (input) => {
14893
14918
  _resume_branch($scope0_id);
14894
14919
  });
14895
14920
  var term_module_default = {
14896
- iconBtn: "_dz _cb",
14897
- termWrap: "_dA",
14898
- term: "_dB",
14899
- xterm: "_dC",
14900
- termDead: "_dD",
14901
- termCopied: "_dE",
14902
- termCopiedFade: "_dF",
14903
- termUploading: "_dG",
14904
- trapBackdrop: "_dH",
14905
- pasteTrap: "_dI",
14906
- kbSlot: "_dJ",
14907
- keyBar: "_dK",
14908
- kspacer: "_dL",
14909
- sessBtn: "_dM",
14910
- sessDot: "_dN",
14911
- sessPop: "_dO",
14912
- sessRow: "_dP",
14913
- current: "_dQ",
14914
- sessOpen: "_dR",
14915
- sessTitle: "_dS",
14916
- sessRename: "_dT",
14917
- sessX: "_dU",
14918
- armed: "_dV",
14919
- sessEdit: "_dW",
14920
- sessNew: "_dX",
14921
- lone: "_dY",
14922
- kbarWs: "_dZ",
14923
- kbarWsName: "_d0",
14924
- kbtn: "_d1 _cb",
14925
- kbtnEsc: "_d2",
14926
- dpadGrid: "_d3",
14927
- repeat: "_d4",
14928
- on: "_d5",
14929
- bigGlyph: "_d6",
14930
- enter: "_d7"
14921
+ iconBtn: "_bz _d9",
14922
+ termWrap: "_bA",
14923
+ term: "_bB",
14924
+ xterm: "_bC",
14925
+ termDead: "_bD",
14926
+ termCopied: "_bE",
14927
+ termCopiedFade: "_bF",
14928
+ termUploading: "_bG",
14929
+ trapBackdrop: "_bH",
14930
+ pasteTrap: "_bI",
14931
+ kbSlot: "_bJ",
14932
+ keyBar: "_bK",
14933
+ kspacer: "_bL",
14934
+ sessBtn: "_bM",
14935
+ sessDot: "_bN",
14936
+ sessPop: "_bO",
14937
+ sessRow: "_bP",
14938
+ current: "_bQ",
14939
+ sessOpen: "_bR",
14940
+ sessTitle: "_bS",
14941
+ sessRename: "_bT",
14942
+ sessX: "_bU",
14943
+ armed: "_bV",
14944
+ sessEdit: "_bW",
14945
+ sessNew: "_bX",
14946
+ lone: "_bY",
14947
+ kbarWs: "_bZ",
14948
+ kbarWsName: "_b0",
14949
+ kbtn: "_b1 _d9",
14950
+ kbtnEsc: "_b2",
14951
+ dpadGrid: "_b3",
14952
+ repeat: "_b4",
14953
+ on: "_b5",
14954
+ bigGlyph: "_b6",
14955
+ enter: "_b7"
14931
14956
  };
14932
14957
  _template("Q", (input) => {
14933
14958
  const $scope0_reason = _scope_reason(), $sg__input_size__OR__input_class = _serialize_guard($scope0_reason, 0);
@@ -18098,7 +18123,7 @@ function prMeta(pr) {
18098
18123
  };
18099
18124
  }
18100
18125
  async function collectFiles(dir, oldRev, newRev, uncommitted) {
18101
- const diffArgs = uncommitted ? [
18126
+ const nameArgs = uncommitted ? [
18102
18127
  "diff",
18103
18128
  "--name-status",
18104
18129
  "-z",
@@ -18112,12 +18137,30 @@ async function collectFiles(dir, oldRev, newRev, uncommitted) {
18112
18137
  oldRev,
18113
18138
  newRev
18114
18139
  ];
18115
- const [nameStatus, untracked] = await Promise.all([git(diffArgs, dir).catch(() => ""), uncommitted ? git([
18116
- "ls-files",
18117
- "--others",
18118
- "--exclude-standard",
18119
- "-z"
18120
- ], dir).catch(() => "") : Promise.resolve("")]);
18140
+ const numArgs = uncommitted ? [
18141
+ "diff",
18142
+ "--numstat",
18143
+ "-z",
18144
+ "--no-renames",
18145
+ oldRev
18146
+ ] : [
18147
+ "diff",
18148
+ "--numstat",
18149
+ "-z",
18150
+ "--no-renames",
18151
+ oldRev,
18152
+ newRev
18153
+ ];
18154
+ const [nameStatus, numstat, untracked] = await Promise.all([
18155
+ git(nameArgs, dir).catch(() => ""),
18156
+ git(numArgs, dir).catch(() => ""),
18157
+ uncommitted ? git([
18158
+ "ls-files",
18159
+ "--others",
18160
+ "--exclude-standard",
18161
+ "-z"
18162
+ ], dir).catch(() => "") : Promise.resolve("")
18163
+ ]);
18121
18164
  const entries = [];
18122
18165
  const parts = nameStatus.split("\0").filter(Boolean);
18123
18166
  for (let i = 0; i + 1 < parts.length; i += 2) entries.push({
@@ -18128,12 +18171,49 @@ async function collectFiles(dir, oldRev, newRev, uncommitted) {
18128
18171
  path: file,
18129
18172
  status: "A"
18130
18173
  });
18174
+ const stats = parseNumstat(numstat);
18131
18175
  const olds = await batchContents(dir, oldRev, entries.filter((e) => e.status !== "A").map((e) => e.path));
18132
18176
  const news = uncommitted ? null : await batchContents(dir, newRev, entries.filter((e) => e.status !== "D").map((e) => e.path));
18133
- const files = await Promise.all(entries.map((e) => news ? fromBlobs(e.path, e.status, olds.get(e.path), news.get(e.path)) : loadWorktreeFile(dir, e.path, e.status, olds.get(e.path))));
18177
+ const files = await Promise.all(entries.map(async (e) => {
18178
+ const file = news ? fromBlobs(e.path, e.status, olds.get(e.path), news.get(e.path)) : await loadWorktreeFile(dir, e.path, e.status, olds.get(e.path));
18179
+ const st = stats.get(e.path);
18180
+ if (st) {
18181
+ file.additions = st.additions;
18182
+ file.deletions = st.deletions;
18183
+ } else if (e.status === "A" && file.new != null && !file.binary) {
18184
+ file.additions = countLines(file.new);
18185
+ file.deletions = 0;
18186
+ }
18187
+ return file;
18188
+ }));
18134
18189
  files.sort((a, b) => a.path.localeCompare(b.path));
18135
18190
  return files;
18136
18191
  }
18192
+ /** `git diff --numstat -z`: `add\tdel\tpath\0` (or `-\t-\tpath` for binary). */
18193
+ function parseNumstat(raw) {
18194
+ const map = /* @__PURE__ */ new Map();
18195
+ for (const chunk of raw.split("\0").filter(Boolean)) {
18196
+ const tab1 = chunk.indexOf(" ");
18197
+ const tab2 = tab1 < 0 ? -1 : chunk.indexOf(" ", tab1 + 1);
18198
+ if (tab1 < 0 || tab2 < 0) continue;
18199
+ const addRaw = chunk.slice(0, tab1);
18200
+ const delRaw = chunk.slice(tab1 + 1, tab2);
18201
+ const filePath = chunk.slice(tab2 + 1);
18202
+ if (!filePath || addRaw === "-" || delRaw === "-") continue;
18203
+ map.set(filePath, {
18204
+ additions: Number(addRaw) || 0,
18205
+ deletions: Number(delRaw) || 0
18206
+ });
18207
+ }
18208
+ return map;
18209
+ }
18210
+ function countLines(text) {
18211
+ if (!text) return 0;
18212
+ let n = 1;
18213
+ for (let i = 0; i < text.length; i++) if (text.charCodeAt(i) === 10) n++;
18214
+ if (text.endsWith("\n")) n--;
18215
+ return n;
18216
+ }
18137
18217
  /** Blob contents for many paths through a single `git cat-file --batch`
18138
18218
  * process (instead of one `git show` per file). Blobs over MAX_FILE_BYTES
18139
18219
  * are skipped and mapped to "tooLarge". */
@@ -22824,4 +22904,4 @@ server.listen(port, () => {
22824
22904
  //#endregion
22825
22905
  export {};
22826
22906
 
22827
- ;var __MARKO_MANIFEST__={"esfPH6H":{"block":[2,"stylesheet#/assets/index-EQUqrgoE.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/index-EQUqrgoE.css\"",">"],"defer":[2,"/assets/index-BkF_8voS.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/index-BkF_8voS.js\"","></script>"]}};
22907
+ ;var __MARKO_MANIFEST__={"esfPH6H":{"block":[2,"stylesheet#/assets/index-DkSXfvNK.css",6,"<link",0," rel=\"stylesheet\" crossorigin href=\"",1,"assets/index-DkSXfvNK.css\"",">"],"defer":[2,"/assets/index-CruM-Gda.js",6,"<script",0," async type=\"module\" crossorigin src=\"",1,"assets/index-CruM-Gda.js\"","></script>"]}};