@scolladon/tsgit 1.1.0 → 1.2.0

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 (119) hide show
  1. package/README.md +29 -252
  2. package/dist/cjs/adapters/browser/index.cjs +1 -1
  3. package/dist/cjs/adapters/memory/index.cjs +1 -1
  4. package/dist/cjs/adapters/memory/index.cjs.map +1 -1
  5. package/dist/cjs/adapters/node/index.cjs +1 -1
  6. package/dist/cjs/adapters/node/index.cjs.map +1 -1
  7. package/dist/cjs/chunks/browser-http-transport-D4NH-8oJ.cjs +2 -0
  8. package/dist/cjs/chunks/browser-http-transport-D4NH-8oJ.cjs.map +1 -0
  9. package/dist/cjs/chunks/context-BcoAzPuU.cjs.map +1 -1
  10. package/dist/cjs/chunks/{error-CqLvhejR.cjs → error-CDLOBdNU.cjs} +2 -2
  11. package/dist/cjs/chunks/error-CDLOBdNU.cjs.map +1 -0
  12. package/dist/cjs/chunks/index-BVArBKuk.cjs +2 -0
  13. package/dist/cjs/chunks/index-BVArBKuk.cjs.map +1 -0
  14. package/dist/cjs/chunks/index-DE9HSiWf.cjs +2 -0
  15. package/dist/cjs/chunks/index-DE9HSiWf.cjs.map +1 -0
  16. package/dist/cjs/chunks/{logger-C8Z5BfFF.cjs → logger-CVG0zcPH.cjs} +2 -2
  17. package/dist/cjs/chunks/{logger-C8Z5BfFF.cjs.map → logger-CVG0zcPH.cjs.map} +1 -1
  18. package/dist/cjs/chunks/{memory-http-transport-Pjyme5KN.cjs → memory-http-transport-DXwDGKtR.cjs} +2 -2
  19. package/dist/cjs/chunks/memory-http-transport-DXwDGKtR.cjs.map +1 -0
  20. package/dist/cjs/chunks/node-http-transport-vrbnNEDb.cjs +2 -0
  21. package/dist/cjs/chunks/node-http-transport-vrbnNEDb.cjs.map +1 -0
  22. package/dist/cjs/chunks/{progress-CntEbiuo.cjs → progress-Bj2w-90A.cjs} +2 -2
  23. package/dist/cjs/chunks/{progress-CntEbiuo.cjs.map → progress-Bj2w-90A.cjs.map} +1 -1
  24. package/dist/cjs/chunks/repository-BJwTSiGf.cjs +2 -0
  25. package/dist/cjs/chunks/repository-BJwTSiGf.cjs.map +1 -0
  26. package/dist/cjs/commands/index.cjs +1 -1
  27. package/dist/cjs/index.browser.cjs +1 -1
  28. package/dist/cjs/index.cjs +1 -1
  29. package/dist/cjs/index.default.cjs +1 -1
  30. package/dist/cjs/index.node.cjs +1 -1
  31. package/dist/cjs/index.node.cjs.map +1 -1
  32. package/dist/cjs/primitives/index.cjs +1 -1
  33. package/dist/esm/adapters/browser/index.js +1 -1
  34. package/dist/esm/adapters/memory/index.js +1 -1
  35. package/dist/esm/adapters/memory/index.js.map +1 -1
  36. package/dist/esm/adapters/node/index.js +1 -1
  37. package/dist/esm/adapters/node/index.js.map +1 -1
  38. package/dist/esm/chunks/browser-http-transport-DL8bkNdg.js +2 -0
  39. package/dist/esm/chunks/browser-http-transport-DL8bkNdg.js.map +1 -0
  40. package/dist/esm/chunks/context-CumKOV7K.js.map +1 -1
  41. package/dist/esm/chunks/{error-BN9rdQ33.js → error-MOmSzp9Z.js} +2 -2
  42. package/dist/esm/chunks/error-MOmSzp9Z.js.map +1 -0
  43. package/dist/esm/chunks/index-BjmofbKE.js +2 -0
  44. package/dist/esm/chunks/index-BjmofbKE.js.map +1 -0
  45. package/dist/esm/chunks/index-Jh5R-UmU.js +2 -0
  46. package/dist/esm/chunks/index-Jh5R-UmU.js.map +1 -0
  47. package/dist/esm/chunks/{logger-BLZbLzva.js → logger-DP2cCpvL.js} +2 -2
  48. package/dist/esm/chunks/{logger-BLZbLzva.js.map → logger-DP2cCpvL.js.map} +1 -1
  49. package/dist/esm/chunks/memory-http-transport-COJU6VOL.js +2 -0
  50. package/dist/esm/chunks/memory-http-transport-COJU6VOL.js.map +1 -0
  51. package/dist/esm/chunks/node-http-transport-DYCFIJbc.js +2 -0
  52. package/dist/esm/chunks/node-http-transport-DYCFIJbc.js.map +1 -0
  53. package/dist/esm/chunks/{progress-DJU_f66N.js → progress-NePjO3Kd.js} +2 -2
  54. package/dist/esm/chunks/{progress-DJU_f66N.js.map → progress-NePjO3Kd.js.map} +1 -1
  55. package/dist/esm/chunks/repository-Cs-dbHqO.js +2 -0
  56. package/dist/esm/chunks/repository-Cs-dbHqO.js.map +1 -0
  57. package/dist/esm/commands/index.js +1 -1
  58. package/dist/esm/index.browser.js +1 -1
  59. package/dist/esm/index.default.js +1 -1
  60. package/dist/esm/index.js +1 -1
  61. package/dist/esm/index.node.js +1 -1
  62. package/dist/esm/index.node.js.map +1 -1
  63. package/dist/esm/primitives/index.js +1 -1
  64. package/dist/types/adapters/browser/index.d.cts +2 -1
  65. package/dist/types/adapters/browser/index.d.ts +2 -1
  66. package/dist/types/adapters/memory/index.d.cts +21 -2
  67. package/dist/types/adapters/memory/index.d.ts +21 -2
  68. package/dist/types/adapters/node/index.d.cts +64 -3
  69. package/dist/types/adapters/node/index.d.ts +64 -3
  70. package/dist/types/chunks/{context-o5TPfMB2.d.ts → context-BORy7yXb.d.ts} +97 -2
  71. package/dist/types/chunks/{context-D84z1i5F.d.cts → context-CMrHCVwK.d.cts} +97 -2
  72. package/dist/types/chunks/reflog-entry-BIf-zt__.d.cts +331 -0
  73. package/dist/types/chunks/reflog-entry-D9P2hCgv.d.ts +331 -0
  74. package/dist/types/chunks/{repository-23evW2h-.d.cts → repository-BqibvTOu.d.cts} +21 -3
  75. package/dist/types/chunks/{repository-BT7Xq1kJ.d.ts → repository-C4rN09Am.d.ts} +21 -3
  76. package/dist/types/chunks/write-tree-B8G6kgTy.d.cts +154 -0
  77. package/dist/types/chunks/write-tree-BXCDChvv.d.ts +154 -0
  78. package/dist/types/commands/index.d.cts +152 -6
  79. package/dist/types/commands/index.d.ts +152 -6
  80. package/dist/types/index.browser.d.cts +4 -4
  81. package/dist/types/index.browser.d.ts +4 -4
  82. package/dist/types/index.d.cts +4 -4
  83. package/dist/types/index.d.ts +4 -4
  84. package/dist/types/index.default.d.cts +4 -4
  85. package/dist/types/index.default.d.ts +4 -4
  86. package/dist/types/index.node.d.cts +4 -4
  87. package/dist/types/index.node.d.ts +4 -4
  88. package/dist/types/primitives/index.d.cts +192 -7
  89. package/dist/types/primitives/index.d.ts +192 -7
  90. package/package.json +40 -2
  91. package/dist/cjs/chunks/browser-http-transport-DcG05jw3.cjs +0 -2
  92. package/dist/cjs/chunks/browser-http-transport-DcG05jw3.cjs.map +0 -1
  93. package/dist/cjs/chunks/error-CqLvhejR.cjs.map +0 -1
  94. package/dist/cjs/chunks/index-BcxdLkNe.cjs +0 -2
  95. package/dist/cjs/chunks/index-BcxdLkNe.cjs.map +0 -1
  96. package/dist/cjs/chunks/index-D5Nd-Mks.cjs +0 -2
  97. package/dist/cjs/chunks/index-D5Nd-Mks.cjs.map +0 -1
  98. package/dist/cjs/chunks/memory-http-transport-Pjyme5KN.cjs.map +0 -1
  99. package/dist/cjs/chunks/node-http-transport-UkW5eEm3.cjs +0 -2
  100. package/dist/cjs/chunks/node-http-transport-UkW5eEm3.cjs.map +0 -1
  101. package/dist/cjs/chunks/repository-B_jx2AKW.cjs +0 -2
  102. package/dist/cjs/chunks/repository-B_jx2AKW.cjs.map +0 -1
  103. package/dist/esm/chunks/browser-http-transport-COFgnEyq.js +0 -2
  104. package/dist/esm/chunks/browser-http-transport-COFgnEyq.js.map +0 -1
  105. package/dist/esm/chunks/error-BN9rdQ33.js.map +0 -1
  106. package/dist/esm/chunks/index-BdV37p4e.js +0 -2
  107. package/dist/esm/chunks/index-BdV37p4e.js.map +0 -1
  108. package/dist/esm/chunks/index-BkRJ9-Im.js +0 -2
  109. package/dist/esm/chunks/index-BkRJ9-Im.js.map +0 -1
  110. package/dist/esm/chunks/memory-http-transport-DRYdYgiE.js +0 -2
  111. package/dist/esm/chunks/memory-http-transport-DRYdYgiE.js.map +0 -1
  112. package/dist/esm/chunks/node-http-transport-Bp5cFZCt.js +0 -2
  113. package/dist/esm/chunks/node-http-transport-Bp5cFZCt.js.map +0 -1
  114. package/dist/esm/chunks/repository-DiagDiT_.js +0 -2
  115. package/dist/esm/chunks/repository-DiagDiT_.js.map +0 -1
  116. package/dist/types/chunks/diff-change-Bm1zvVsC.d.cts +0 -59
  117. package/dist/types/chunks/diff-change-alGRzD_j.d.ts +0 -59
  118. package/dist/types/chunks/write-tree-DNjhjS3t.d.ts +0 -282
  119. package/dist/types/chunks/write-tree-DVp0RJ_r.d.cts +0 -282
@@ -0,0 +1,2 @@
1
+ import{T as t,o as e,C as a,g as r,D as n,s,l as i,S as o,B as c,d,f,e as u,r as l,t as h,R as w,c as m,P as p,H as y,b as g,k as v,A as b,v as k,I as $,x as E,Q as D,y as x,G as I,L as M,K as S,N as A,O as L}from"./error-MOmSzp9Z.js";import{o as N,S as O,r as U,p as T,as as _,M as R,N as C,F as H,J as F,x as W,y as P,K as B,a6 as z,b as j,a1 as q,U as G,H as V,ao as Y,ae as X,a2 as K,R as Z,aC as J,aG as Q,a7 as tt,f as et,aH as at,ak as rt,aB as nt,az as st,Z as it,a9 as ot,aI as ct,aK as dt,n as ft,O as ut,ac as lt,T as ht,X as wt,ad as mt,aF as pt,au as yt,j as gt,a0 as vt,u as bt,_ as kt,A as $t,C as Et,aj as Dt,D as xt,aA as It,ax as Mt,am as St,s as At,a8 as Lt,aL as Nt,w as Ot,c as Ut,e as Tt,aD as _t,E as Rt,W as Ct,t as Ht,Y as Ft,aw as Wt,ar as Pt,av as Bt,a5 as zt,a as jt,ai as qt,l as Gt,z as Vt,I as Yt,a3 as Xt,ag as Kt,ah as Zt,af as Jt,Q as Qt,B as te,k as ee,$ as ae,h as re,P as ne,ab as se,a4 as ie,ay as oe,i as ce,an as de,aJ as fe,m as ue,aE as le,V as he}from"./index-BjmofbKE.js";import{withRetry as we,withAuth as me,withLogging as pe}from"../transport/index.js";import{r as ye}from"./readable-stream-CGuf8k1J.js";const ge=e=>new t({code:"INVALID_DIFF_INPUT",reason:e});function ve(t){const e=[];return void 0!==t.baseId&&void 0!==t.baseMode&&e.push({id:t.baseId,mode:t.baseMode,stage:1}),void 0!==t.ourId&&void 0!==t.ourMode&&e.push({id:t.ourId,mode:t.ourMode,stage:2}),void 0!==t.theirId&&void 0!==t.theirMode&&e.push({id:t.theirId,mode:t.theirMode,stage:3}),e}function be(t,e,a){const r=a(e.mode);return{ctimeSeconds:r.ctimeSeconds,ctimeNanoseconds:r.ctimeNanoseconds,mtimeSeconds:r.mtimeSeconds,mtimeNanoseconds:r.mtimeNanoseconds,dev:r.dev,ino:r.ino,mode:e.mode,uid:r.uid,gid:r.gid,fileSize:r.fileSize,id:e.id,flags:{...O,stage:e.stage},path:t}}const ke=1e5;function $e(t){const e=[];let a=0;for(let r=0;r<t.length;r++)10===t[r]&&(e.push(t.subarray(a,r+1)),a=r+1);return a<t.length&&e.push(t.subarray(a)),e}function Ee(t){return function(t){const e=Math.min(t.length,8e3);for(let a=0;a<e;a++)if(0===t[a])return!0;return!1}(t)||function(t){let e=0,a=0;for(let r=0;r<t.length;r++){if(e++,e>=65536)return!0;if(10===t[r]){if(a++,a>=ke)return!0;e=0}}return e>0&&(a++,a>=ke)}(t)}function De(t,e){if(t.length!==e.length)return!1;for(let a=0;a<t.length;a++)if(t[a]!==e[a])return!1;return!0}function xe(t,e,a,r){return r===-a||t[r-1+e]<t[r+1+e]}function Ie(t,e,a,r,n,s){let i=xe(a,r,n,s)?a[s+1+r]:a[s-1+r]+1,o=i-s;for(;i<t.length&&o<e.length&&De(t[i],e[o]);)i++,o++;return{x:i,y:o}}function Me(t){const e=[];let a=0,r=0,n=0;for(;n<t.length;){const s=t[n],i=a,o=r;for(;t[n]===s;)"equal"===s?(a++,r++):"delete"===s?a++:r++,n++;e.push({kind:"equal"===s?"common":"delete"===s?"ours-only":"theirs-only",oursStart:i,oursEnd:a,theirsStart:o,theirsEnd:r})}return e}function Se(t,e){const a=$e(t),r=$e(e),n=a.length,s=r.length;if(0===n&&0===s)return{hunks:[{kind:"common",oursStart:0,oursEnd:0,theirsStart:0,theirsEnd:0}],oursLines:a,theirsLines:r,degraded:!1};const i=function(t,e){const a=t.length,r=e.length;if(a+r>5e4)return;const n=a+r,s=n,i=new Array(2*n+1).fill(0),o=[],c=1e3*n;let d=0;for(let n=0;;n++){const f=2*n+1,u=new Array(f);for(let t=0;t<f;t++)u[t]=i[s-n+t];o.push(u);for(let f=-n;f<=n;f+=2){if(d++,d>c)return;const u=Ie(t,e,i,s,n,f);if(i[f+s]=u.x,u.x>=a&&u.y>=r)return{trace:o,totalD:n}}}}(a,r);return void 0===i?function(t,e){const a=[];return t.length>0&&a.push({kind:"ours-only",oursStart:0,oursEnd:t.length,theirsStart:0,theirsEnd:0}),e.length>0&&a.push({kind:"theirs-only",oursStart:t.length,oursEnd:t.length,theirsStart:0,theirsEnd:e.length}),{hunks:a,oursLines:t,theirsLines:e,degraded:!0}}(a,r):{hunks:Me(function(t,e,a){const r=[];let n=t,s=e;for(let t=a.length-1;t>0;t--){const e=a[t],i=t,o=n-s,c=xe(e,i,t,o)?o+1:o-1,d=e[c+i],f=d-c;for(;n>d&&s>f;)r.push("equal"),n--,s--;r.push(n===d?"insert":"delete"),n===d?s--:n--}for(;n>0;)r.push("equal"),n--;return r.reverse(),r}(n,s,i.trace)),oursLines:a,theirsLines:r,degraded:!1}}const Ae=(t,e,a)=>{let r="unset";for(const n of t)n.directoryOnly&&!a||n.compiled.test(e)&&(r=n.negated?"unignored":"ignored");return r},Le=(t,e)=>{if(""===e)return t;const a=`${e}/`;return t.startsWith(a)?t.slice(a.length):void 0},Ne=t=>{const e=t.startsWith("!"),a=e?t.slice(1):t;return U(a)?{pattern:t,body:a,negated:e,isLiteral:!1,compiled:T(a,{anchored:a.includes("/")})}:{pattern:t,body:a,negated:e,isLiteral:!0,compiled:T(a,{anchored:!0,withDirSuffix:!0})}},Oe=(t,e)=>{let a=!1;for(const r of t)r.compiled.test(e)&&(a=!r.negated);return a},Ue=e=>new t({code:"INVALID_MERGE_TREE",reason:e}),Te=e=>new t({code:"INVALID_MERGE_INPUT",reason:e}),_e=268435456,Re=["<<<<<<<","=======",">>>>>>>","|||||||"],Ce=new TextEncoder;function He(t){return t<=31||t>=127&&t<=159}function Fe(t){return t>=8234&&t<=8238||t>=8294&&t<=8297||8203===t||8204===t||8205===t||8288===t||65279===t}function We(t,e){if(t.length>255)throw Te(`conflict marker ${e} label exceeds maximum length`);if(""===t.trim())throw Te(`conflict marker ${e} label is empty or whitespace-only`);if(function(t){for(let e=0;e<t.length;e++){const a=t.charCodeAt(e);if(He(a)||Fe(a))return!0}return!1}(t))throw Te(`conflict marker ${e} label contains forbidden control character`);if(function(t){for(const e of Re)if(t.includes(e))return!0;return!1}(t))throw Te(`conflict marker ${e} label contains forbidden marker substring`)}function Pe(t){let e=0;for(const a of t)e+=a.length;return e}function Be(t){if(0===t.length)return new Uint8Array(0);const e=Pe(t),a=t[t.length-1],r=0===a.length||10!==a[a.length-1],n=new Uint8Array(e+(r?1:0));let s=0;for(const e of t)n.set(e,s),s+=e.length;return r&&(n[s]=10),n}function ze(t,e,a={}){if("diff3"===a.conflictStyle)throw Te("diff3 conflict style requires base lines — not supported in v1");const r=a.labels?.ours??"ours",n=a.labels?.theirs??"theirs";if(We(r,"ours"),We(n,"theirs"),void 0!==a.labels?.base&&We(a.labels.base,"base"),Pe(t)+Pe(e)>_e)throw Te("conflict output exceeds MAX_CONFLICT_OUTPUT_BYTES");const s=Ce.encode(`<<<<<<< ${r}\n`),i=Ce.encode("=======\n"),o=Ce.encode(`>>>>>>> ${n}\n`),c=Be(t),d=Be(e),f=new Uint8Array(s.length+c.length+i.length+d.length+o.length);let u=0;return f.set(s,u),u+=s.length,f.set(c,u),u+=c.length,f.set(i,u),u+=i.length,f.set(d,u),u+=d.length,f.set(o,u),f}function je(t,e){if(t.length!==e.length)return!1;for(let a=0;a<t.length;a++)if(t[a]!==e[a])return!1;return!0}function qe(t,e){if(t.length!==e.length)return!1;for(let a=0;a<t.length;a++)if(!je(t[a],e[a]))return!1;return!0}function Ge(t){let e=0;for(const a of t)e+=a.length;const a=new Uint8Array(e);let r=0;for(const e of t)a.set(e,r),r+=e.length;return a}function Ve(t,e){const a=[];let r;const n=()=>{void 0!==r&&(a.push({baseStart:r.baseStart,baseEnd:r.baseEnd,replacement:r.replacement}),r=void 0)};for(const a of t)if("common"!==a.kind)if(void 0===r&&(r={baseStart:a.oursStart,baseEnd:a.oursStart,replacement:[]}),"ours-only"===a.kind)r.baseEnd=Math.max(r.baseEnd,a.oursEnd);else for(let t=a.theirsStart;t<a.theirsEnd;t++)r.replacement.push(e[t]);else n();return n(),a}function Ye(t,e){return t.baseStart===t.baseEnd?e.baseStart===e.baseEnd?t.baseStart===e.baseStart:t.baseStart>=e.baseStart&&t.baseStart<e.baseEnd:e.baseStart===e.baseEnd?e.baseStart>=t.baseStart&&e.baseStart<t.baseEnd:t.baseStart<e.baseEnd&&e.baseStart<t.baseEnd}function Xe(t,e){for(const a of e)if(a.baseStart===t.baseStart&&a.baseEnd===t.baseEnd&&qe(a.replacement,t.replacement))return a}function Ke(t,e){for(const a of e)if(Ye(t,a))return!0;return!1}function Ze(t,e,a){return{status:"conflict",conflictType:"content",markedBytes:ze(t,e,a)}}function Je(t,e){return t.id===e.id&&t.mode===e.mode}function Qe(t,e){if(void 0!==t&&t.entries.size>R)throw Ue(`${e} FlatTree exceeds MAX_FLAT_TREE_ENTRIES`)}function ta(t){return{status:"conflict",conflict:t}}function ea(t,e,a,r){return ta({type:"modify-delete",path:t,baseId:e.id,baseMode:e.mode,...void 0===a?{}:{ourId:a.id,ourMode:a.mode},...void 0===r?{}:{theirId:r.id,theirMode:r.mode}})}function aa(t,e,a,r){return void 0===e?{status:"resolved-known",path:t,id:a.id,mode:a.mode}:Je(e,a)?{status:"resolved-deleted",path:t}:"our"===r?ea(t,e,a,void 0):ea(t,e,void 0,a)}function ra(t,e,a,r,n){return void 0===a&&void 0===r?{status:"resolved-deleted",path:t}:void 0===a?aa(t,e,r,"their"):void 0===r?aa(t,e,a,"our"):void 0===e?function(t,e,a){return Je(e,a)?{status:"resolved-known",path:t,id:e.id,mode:e.mode}:function(t,e,a){return ta({type:"add-add",path:t,ourId:e.id,theirId:a.id,ourMode:e.mode,theirMode:a.mode})}(t,e,a)}(t,a,r):async function(t,e,a,r,n){const s=Je(e,a),i=Je(e,r);if(s&&i)return{status:"unchanged",path:t,id:e.id,mode:e.mode};if(s)return{status:"resolved-known",path:t,id:r.id,mode:r.mode};if(i)return{status:"resolved-known",path:t,id:a.id,mode:a.mode};if(Je(a,r))return{status:"resolved-known",path:t,id:a.id,mode:a.mode};if(!C(a.mode,r.mode)||!C(e.mode,a.mode))return function(t,e,a,r){return ta({type:"type-change",path:t,baseId:e.id,ourId:a.id,theirId:r.id,baseMode:e.mode,ourMode:a.mode,theirMode:r.mode})}(t,e,a,r);const o=function(t,e,a){return e.mode===a.mode?e.mode:e.mode===t.mode?a.mode:e.mode}(e,a,r);return function(t){return t===H.GITLINK}(o)?function(t,e,a,r){return ta({type:"gitlink",path:t,baseId:e.id,ourId:a.id,theirId:r.id,baseMode:e.mode,ourMode:a.mode,theirMode:r.mode})}(t,e,a,r):async function(t,e,a,r,n,s){const i={path:t,baseId:e.id,ourId:a.id,theirId:r.id,baseMode:e.mode,ourMode:a.mode,theirMode:r.mode},o=await s(i,void 0,new Uint8Array(0),new Uint8Array(0));if("clean"===o.status){if(o.bytes.length>_e)throw Te("contentMerger returned oversize clean bytes");return void 0!==o.id?{status:"resolved-known",path:t,id:o.id,mode:n}:{status:"resolved-merged",path:t,bytes:o.bytes,mode:n}}if(o.markedBytes.length>_e)throw Te("contentMerger returned oversize marked bytes");return ta({type:o.conflictType,path:t,baseId:e.id,ourId:a.id,theirId:r.id,baseMode:e.mode,ourMode:a.mode,theirMode:r.mode,conflictContent:o.markedBytes})}(t,e,a,r,o,n)}(t,e,a,r,n)}const na="blob:limit=",sa="tree:",ia=/^(\d+)([kmg])?$/i,oa=/^\d+$/,ca=t=>{if(""===t)throw F(t,"empty");if("blob:none"===t)return{kind:"blob-none"};if(t.startsWith(na))return(t=>{const e=t.slice(11).match(ia);if(null===e)throw F(t,"bad-blob-limit");const a=Number(e[1])*(t=>{switch(t?.toLowerCase()){case"k":return 1024;case"m":return 1048576;case"g":return 1073741824;default:return 1}})(e[2]);if(!Number.isSafeInteger(a))throw F(t,"bad-blob-limit");return{kind:"blob-limit",bytes:a}})(t);if(t.startsWith(sa))return(t=>{const e=t.slice(5);if(!oa.test(e))throw F(t,"bad-tree-depth");const a=Number(e);if(!Number.isSafeInteger(a))throw F(t,"bad-tree-depth");return{kind:"tree-depth",depth:a}})(t);throw F(t,"unknown-kind")},da=t=>{switch(t.kind){case"blob-none":return"blob:none";case"blob-limit":return`${na}${t.bytes}`;case"tree-depth":return`${sa}${t.depth}`}},fa=new TextDecoder("utf-8",{fatal:!1}),ua=new TextEncoder,la=t=>t.endsWith("\n")?t.slice(0,-1):t,ha=t=>{if(t.startsWith("ok "))return{name:t.slice(3),accepted:!0};if(t.startsWith("ng ")){const e=t.slice(3),a=e.indexOf(" ");if(a<0)throw B(t);return{name:e.slice(0,a),accepted:!1,reason:e.slice(a+1)}}throw B(t)},wa=async t=>{const e=await(async t=>{const e=[];for await(const a of t){if("data"!==a.kind)return e;e.push(la(fa.decode(a.payload)))}return e})(t);if(0===e.length)throw B("");const[a,...r]=e,n=(t=>{if("unpack ok"===t)return{ok:!0};if(t.startsWith("unpack "))return{ok:!1,error:t.slice(7)};throw B(t)})(a);return n.ok?{unpackOk:!0,refUpdates:r.map(ha)}:{unpackOk:!1,unpackError:n.error,refUpdates:[]}},ma={second:1,minute:60,hour:3600,day:86400,week:604800,month:2592e3,year:31536e3},pa=/^(\d{4})-(\d{2})-(\d{2})(?: (\d{2}):(\d{2}):(\d{2}))?$/,ya=/^(\d+)[ .]([a-z]+?)s?(?:[ .]ago)?$/;function ga(t,e){const a=t.trim().toLowerCase();return"now"===a?e:"yesterday"===a?e-86400:function(t){const e=pa.exec(t);if(null===e)return;const[,a,r,n,s,i,o]=e,c=Number(a),d=Number(r),f=Number(n),u=void 0===s?0:Number(s),l=void 0===i?0:Number(i),h=void 0===o?0:Number(o);if(d<1||d>12)return;if(f<1||f>function(t,e){return 2===e&&function(t){return t%4==0&&t%100!=0||t%400==0}(t)?29:va[e-1]}(c,d))return;if(u>23)return;if(l>59)return;if(h>59)return;const w=new Date(c,d-1,f,u,l,h);return w.setFullYear(c),Math.floor(w.getTime()/1e3)}(a)??function(t,e){const a=ya.exec(t);if(null===a)return;const[,r,n]=a,s=ma[n];return void 0===s?void 0:e-Number(r)*s}(a,e)}const va=[31,28,31,30,31,30,31,31,30,31,30,31],ba=async(t,e)=>ka(t,""===e?`${t.layout.workDir}/.gitignore`:`${t.layout.workDir}/${e}/.gitignore`),ka=async(a,r)=>{let n;try{n=await a.fs.lstat(r)}catch(e){if(e instanceof t&&"FILE_NOT_FOUND"===e.data.code)return;throw e}if(!n.isFile||n.isSymbolicLink)return;if(n.size>j)throw e($a(r),n.size,j);const s=await a.fs.readUtf8(r);return q(s)},$a=t=>{const e=t.lastIndexOf("/");return-1===e?t:t.slice(e+1)},Ea=async t=>{const e=await(async t=>{const e=[],a=await(async t=>{const e=await z(t),a=e.core?.excludesFile;if(void 0===a)return;const r=((t,e)=>{if("~"===e)return t.layout.homeDir;if(e.startsWith("~/")){if(void 0===t.layout.homeDir)return;return`${t.layout.homeDir}/${e.slice(2)}`}return e})(t,a);return void 0!==r?ka(t,r):void 0})(t);void 0!==a&&e.push({basedir:"",rules:a});const r=await(async t=>ka(t,`${t.layout.gitDir}/info/exclude`))(t);void 0!==r&&e.push({basedir:"",rules:r});const n=await ba(t,"");void 0!==n&&e.push({basedir:"",rules:n});const s=new Map;return{base:e,loadDirRules:async e=>{const a=s.get(e);if(void 0!==a)return a;const r=await ba(t,e)??[];return s.set(e,r),r}}})(t),a=[...e.base],r=new Set([]);return async(t,n)=>{for(const n of Da(t)){if(r.has(n))continue;r.add(n);const t=await e.loadDirRules(n);t.length>0&&a.push({basedir:n,rules:t})}return"ignored"===((t,e,a)=>{let r="unset";for(const n of t){const t=Le(e,n.basedir);if(void 0===t)continue;const s=Ae(n.rules,t,a);"unset"!==s&&(r=s)}return r})(a,t,n)}},Da=t=>{const e=t.split("/");if(e.length<=1)return[];const a=[];for(let t=1;t<e.length;t+=1)a.push(e.slice(0,t).join("/"));return a},xa=(e,a)=>new t(void 0===a?{code:"RESOURCE_LOCKED",resource:"index",path:e}:{code:"RESOURCE_LOCKED",resource:"index",path:e,mtimeMs:a}),Ia=async(e,a={})=>{const r=`${V(e.layout.gitDir)}${G}`,n=V(e.layout.gitDir),s=a.now??(()=>Date.now()),i=a.breakStaleLockMs;try{await e.fs.writeExclusive(r,new Uint8Array)}catch(a){if(!(a instanceof t)||"FILE_EXISTS"!==a.data.code)throw a;if(void 0===i)throw xa(r,await Ma(e,r));await Sa(e,r,i,s)}return Aa(e,r,n)},Ma=async(t,e)=>{try{return(await t.fs.lstat(e)).mtimeMs}catch{return}},Sa=async(e,a,r,n)=>{const s=await Ma(e,a);if(void 0===s)return void await e.fs.writeExclusive(a,new Uint8Array);const i=n()-s;if(i<0)throw xa(a,s);if(i<r)throw xa(a,s);await e.fs.rm(a);try{await e.fs.writeExclusive(a,new Uint8Array)}catch(r){if(r instanceof t&&"FILE_EXISTS"===r.data.code)throw xa(a,await Ma(e,a));throw r}},Aa=(e,a,r)=>{let n=!1,s=!1;return{release:async()=>{if(!n&&!s){s=!0;try{await e.fs.rm(a)}catch(e){if(!(e instanceof t)||"FILE_NOT_FOUND"!==e.data.code)throw e}}},commit:async t=>{if(n||s)return;const i={entries:[...t],extensions:[]},o=Y(i),c=await e.hash.hash(o),d=new Uint8Array(o.length+c.length);d.set(o,0),d.set(c,o.length),await e.fs.write(a,d),await e.fs.rename(a,r),n=!0}}},La=Z.from("HEAD"),Na=async e=>{const a=`${e.layout.gitDir}/HEAD`;if(!await e.fs.exists(a))throw new t({code:"NOT_A_REPOSITORY",path:e.layout.workDir});return e.layout.bare?e.layout.gitDir:e.layout.workDir},Oa=async(e,a)=>{if(await(async t=>{const e=await z(t);return e.core?.bare??!1})(e))throw(e=>new t({code:"BARE_REPOSITORY",operation:e}))(a)},Ua=async e=>{const a=`${e.layout.gitDir}/HEAD`;let r;try{r=await e.fs.readUtf8(a)}catch(e){if(e instanceof t&&"FILE_NOT_FOUND"===e.data.code)throw X(La);throw e}const n=K(r);return"symbolic"===n.type?{kind:"symbolic",target:n.target}:{kind:"direct",id:n.target}},Ta=[{file:"MERGE_HEAD",operation:"merge"},{file:"CHERRY_PICK_HEAD",operation:"cherry-pick"},{file:"REVERT_HEAD",operation:"revert"},{file:"REBASE_HEAD",operation:"rebase"}],_a=async(t,e={})=>{const r=await Promise.all(Ta.map(e=>t.fs.exists(`${t.layout.gitDir}/${e.file}`)));for(let t=0;t<Ta.length;t+=1){const n=Ta[t];if(void 0!==n&&e.except!==n.operation&&!0===r[t])throw a(n.operation)}},Ra=J,Ca=(t,e)=>`${t.layout.workDir}/${e}`,Ha=async(t,e)=>{const a=Ra(e);return t.fs.read(Ca(t,a))},Fa=async(t,e)=>{const a=Ra(e),n=Ca(t,a);let s;try{s=await t.fs.lstat(n)}catch{throw r([a])}if(!s.isFile&&!s.isSymbolicLink)throw r([a]);await t.fs.rm(n)},Wa=new TextEncoder,Pa=t=>{for(const e of t){const t=e.startsWith("!")?e.slice(1):e;Ra(t),Ba(e)}const e=(t=>t.map(Ne))(t),a=e.filter(qa).map(t=>Va(t)),r=e.some(Ga);return{matcher:e,literalMustMatch:a,hasGlob:r}},Ba=t=>{if(Wa.encode(t).byteLength>256)throw s("paths","pattern exceeds max length 256 bytes");if(za(t)>4)throw s("paths","pattern exceeds max **-token count 4")},za=t=>{let e=0,a=0;for(;a<t.length;)"*"!==t[a]||"*"!==t[a+1]?a+=1:(e+=1,a+=2);return e},ja=(t,e)=>{if(0===t.length)return;const a=new Set(e);for(const r of t)if(!a.has(r)&&!e.some(t=>t.startsWith(`${r}/`)))throw n(r)},qa=t=>!t.negated&&t.isLiteral,Ga=t=>!t.negated&&!t.isLiteral,Va=t=>t.body,Ya=new Set(["FILE_NOT_FOUND","INVALID_INDEX_HEADER","INVALID_INDEX_ENTRY"]),Xa=async(t,e,a={})=>{if(await Na(t),await Oa(t,"add"),await _a(t,{except:"merge"}),!0===a.all){if(0!==e.length)throw s("all","pathspec must be empty when all=true");return tr(t,a)}if(0===e.length)throw i();return Ka(t,e,a)},Ka=async(t,e,a)=>{const{matcher:r,literalMustMatch:n,hasGlob:s}=Pa(e);return!s&&await Ja(t,n)?Za(t,n,a):Qa(t,r,n,a)},Za=async(t,e,a)=>{const r=await Ia(t,void 0!==a.breakStaleLockMs?{breakStaleLockMs:a.breakStaleLockMs}:{});try{const a=await nr(t),s=new Map(a),i=[],o=[];for(const r of e){const e=await sr(t,r);if("missing"===e)throw n(r);const c=a.get(r);s.set(r,e),void 0===c?i.push(r):c.id===e.id&&c.mode===e.mode||o.push(r)}return await r.commit(Array.from(s.values())),{added:i,modified:o,removed:[]}}finally{await r.release()}},Ja=async(t,e)=>{if(0===e.length)return!1;for(const a of e){const e=await t.fs.lstat(`${t.layout.workDir}/${a}`).catch(()=>{});if(void 0===e)return!1;if(e.isDirectory&&!e.isSymbolicLink)return!1}return!0},Qa=async(t,e,a,r)=>{const n=await Ea(t),s=async(t,a)=>!!await n(t,a)||!a&&!Oe(e,t),i=await Ia(t,void 0!==r.breakStaleLockMs?{breakStaleLockMs:r.breakStaleLockMs}:{});try{const e=await nr(t),r=new Map(e),n=[],o=[],c=[],d=new Set;for await(const a of Q(t,{ignore:s})){const s=await rr(t,a,e,d);void 0!==s&&(n.push(s.path),r.set(s.path,s.entry),"added"===s.kind?o.push(s.path):"modified"===s.kind&&c.push(s.path))}return ja(a,n),o.sort(),c.sort(),await i.commit(Array.from(r.values())),{added:o,modified:c,removed:[]}}finally{await i.release()}},tr=async(t,e,a)=>{const r=await Ea(t),n=await Ia(t,void 0!==e.breakStaleLockMs?{breakStaleLockMs:e.breakStaleLockMs}:{});try{const e=await nr(t),a=new Map(e),s=new Set,i=[],o=[];for await(const n of Q(t,{ignore:r})){const r=await rr(t,n,e,s);void 0!==r&&(a.set(r.path,r.entry),"added"===r.kind?i.push(r.path):"modified"===r.kind&&o.push(r.path))}const c=await er(e,s,r);for(const t of c)a.delete(t);return i.sort(),o.sort(),c.sort(),await n.commit(Array.from(a.values())),{added:i,modified:o,removed:c}}finally{await n.release()}},er=async(t,e,a)=>{const r=[];for(const[n,s]of t)e.has(n)||s.flags.skipWorktree||await ar(n,a)||r.push(n);return r},ar=async(t,e)=>{if(await e(t,!1))return!0;const a=t.split("/");for(let t=1;t<a.length;t+=1){const r=a.slice(0,t).join("/");if(await e(r,!0))return!0}return!1},rr=async(t,e,a,r)=>{const{path:n,stat:s}=e;if(r.add(n),s.size>et)throw o(n,s.size,et);const i=await ir(t,n,s),c=a.get(n);return void 0===c?{kind:"added",path:n,entry:i}:c.id!==i.id||c.mode!==i.mode?{kind:"modified",path:n,entry:i}:{kind:"unchanged",path:n,entry:i}},nr=async e=>{try{const t=await tt(e),a=new Map;for(const e of t.entries)a.set(e.path,e);return a}catch(e){if(e instanceof t&&Ya.has(e.data.code))return new Map;throw e}},sr=async(t,e)=>{const a=await t.fs.lstat(`${t.layout.workDir}/${e}`).catch(()=>{});return void 0===a?"missing":ir(t,e,a)},ir=async(t,e,a)=>{const r=await t.fs.lstat(`${t.layout.workDir}/${e}`);if(r.isSymbolicLink!==a.isSymbolicLink||r.isDirectory!==a.isDirectory||r.isFile!==a.isFile)throw c();if(r.size>et)throw o(e,r.size,et);const n=r.isSymbolicLink?"120000":73&r.mode?"100755":"100644",s=await or(t,e,r),i=await at(t,{type:"blob",id:"",content:s});return cr(r,n,i,e)},or=async(t,e,a)=>{if(a.isSymbolicLink){const a=(new TextEncoder).encode(await t.fs.readlink(`${t.layout.workDir}/${e}`));if(a.byteLength>et)throw o(e,a.byteLength,et);return a}return Ha(t,e)},cr=(t,e,a,r)=>({ctimeSeconds:Math.floor(t.ctimeMs/1e3),ctimeNanoseconds:0,mtimeSeconds:Math.floor(t.mtimeMs/1e3),mtimeNanoseconds:0,dev:t.dev,ino:t.ino,mode:e,uid:t.uid,gid:t.gid,fileSize:t.size,id:a,flags:O,path:r}),dr="refs/heads/",fr=async(t,e)=>(await Na(t),"list"===e.kind?ur(t):"create"===e.kind?hr(t,e):"delete"===e.kind?wr(t,e):mr(t,e)),ur=async t=>{const e=`${t.layout.gitDir}/refs/heads`;if(!await t.fs.exists(e))return{kind:"list",branches:[]};const a=await Ua(t),r="symbolic"===a.kind&&a.target.startsWith(dr)?a.target:void 0,n=await t.fs.readdir(e),s=[];for(const e of n){if(!e.isFile)continue;const a=`${dr}${e.name}`,n=await rt(t,a);s.push({name:a,id:n,current:a===r})}return s.sort((t,e)=>lr(t.name,e.name)),{kind:"list",branches:s}},lr=(t,e)=>t<e?-1:t>e?1:0,hr=async(e,a)=>{const r=nt(`${dr}${a.name}`),n=a.startPoint??"HEAD",s=await pr(e,n),i=`branch: Created from ${n}`;try{await st(e,r,s,!0===a.force?{reflogMessage:i}:{expected:"absent",reflogMessage:i})}catch(e){if(e instanceof t&&"REF_UPDATE_CONFLICT"===e.data.code)throw d(r);throw e}return{kind:"create",name:r,id:s}},wr=async(t,e)=>{const a=nt(`${dr}${e.name}`),r=await Ua(t);if("symbolic"===r.kind&&r.target===a)throw f(a);if(!await t.fs.exists(`${t.layout.gitDir}/${a}`))throw u(a);return await st(t,a,it,{delete:!0}),{kind:"delete",name:a}},mr=async(e,a)=>{const r=nt(`${dr}${a.from}`),n=nt(`${dr}${a.to}`),s=await rt(e,r),i=`branch: renamed ${r} to ${n}`,o=await ot(e,r);try{await st(e,n,s,!0===a.force?{reflogMessage:i}:{expected:"absent",reflogMessage:i})}catch(e){if(e instanceof t&&"REF_UPDATE_CONFLICT"===e.data.code)throw d(n);throw e}o.length>0&&await ct(e,n,[...o,...await ot(e,n)]),await st(e,r,it,{delete:!0});const c=await Ua(e);return"symbolic"===c.kind&&c.target===r&&await dt(e,"HEAD",n),{kind:"rename",from:r,to:n}},pr=async(t,e)=>{if(/^[0-9a-f]{40}$/.test(e))return e;const a="HEAD"===e?["HEAD"]:[`${dr}${e}`,e];for(const e of a)try{return await rt(t,e)}catch{}throw u(e)},yr=t=>"string"==typeof t?ut.from(t):t,gr=async(t,e)=>{await Na(t);const a=e.ids.map(yr),r=void 0===e.maxBytes?void 0:{maxBytes:e.maxBytes},n=[];for await(const e of ft(t,a,r))n.push(e);return{kind:"batch",entries:n}},vr="refs/heads/",br="checkout:materialize",kr=async(t,e)=>{if("HEAD"===e){const e=await rt(t,"HEAD");return(await lt(t,e)).id}return(await lt(t,e)).id},$r=async(t,e)=>{await Na(t),await Oa(t,"checkout"),await _a(t);const a=(t=>"target"in t&&void 0!==t.target)(e),r=(t=>"paths"in t&&void 0!==t.paths)(e);if(a&&r)throw s("paths","cannot be combined with target");if(!a&&!r)throw s("target","either target or paths must be provided");t.progress.start(br);try{return r?await(async(t,e)=>{if(0===e.paths.length)throw s("paths","must not be empty");const a=e.source??"index",{matcher:r,literalMustMatch:n}=Pa(e.paths),i=(await(async(t,e)=>{if("index"===e)return(await tt(t)).entries.map(t=>t.path);const a=await kr(t,e),r=[];for await(const e of pt(t,a))e.mode!==H.DIRECTORY&&r.push(e.path);return r})(t,a)).filter(t=>Oe(r,t));ja(n,i);const o=new Set(i);if(0===o.size)return{branch:void 0,id:await rt(t,"HEAD"),detached:!1,changedPaths:0};const c="index"===a?await(async(t,e)=>{const a=await tt(t),r=await yt(t,a.entries);return wt(t,{targetTree:r,currentIndex:a,force:!0,forceRewriteAll:!0,paths:e})})(t,o):await(async(t,e,a)=>{const r=await Ia(t);try{const n=await tt(t),s=await wt(t,{targetTree:e,currentIndex:n,force:!0,forceRewriteAll:!0,paths:a});return await r.commit(s.newIndexEntries),s}finally{await r.release()}})(t,await kr(t,a),o);return{branch:void 0,id:await rt(t,"HEAD"),detached:!1,changedPaths:c.written+c.deleted}})(t,e):await(async(t,e)=>{const a=!0===e.detach||/^[0-9a-f]{40}$/.test(e.target),r=await Ua(t),n=await rt(t,"HEAD");let s,i;if(a)i=await(async(t,e)=>/^[0-9a-f]{40}$/.test(e)?e:rt(t,e))(t,e.target);else{if(s=nt(`${vr}${e.target}`),!await t.fs.exists(`${t.layout.gitDir}/${s}`))throw u(s);i=await rt(t,s)}const o=await lt(t,i),c=await ht(t),d=await Ia(t);let f;try{const a=await tt(t);f=await wt(t,{targetTree:o.id,currentIndex:a,force:e.force??!1,...void 0!==c?{sparse:c}:{}}),await d.commit(f.newIndexEntries)}finally{await d.release()}const l=(t=>{if("symbolic"!==t.kind)return t.id.slice(0,7);if(t.target.startsWith(vr))return t.target.slice(11);const e=t.target.lastIndexOf("/");return-1===e?t.target:t.target.slice(e+1)})(r);return a?(await t.fs.writeUtf8(`${t.layout.gitDir}/HEAD`,`${i}\n`),await mt(t,"HEAD",n,i,`checkout: moving from ${l} to ${i.slice(0,7)}`),{branch:void 0,id:i,detached:!0,changedPaths:f.written+f.deleted}):(await dt(t,"HEAD",s),await mt(t,"HEAD",n,i,`checkout: moving from ${l} to ${e.target}`),{branch:s,id:i,detached:!1,changedPaths:f.written+f.deleted})})(t,e)}finally{t.progress.end(br)}},Er=async(t,e)=>{const a=nt(e.initialBranch),r=t.layout.gitDir;try{await t.fs.mkdir(r),await t.fs.writeUtf8(`${r}/HEAD`,`ref: refs/heads/${a}\n`),await t.fs.writeUtf8(`${r}/config`,(n=e.bare,`[core]\n\trepositoryformatversion = 0\n\tfilemode = true\n\tbare = ${n?"true":"false"}\n`)),await t.fs.mkdir(`${r}/refs/heads`),await t.fs.mkdir(`${r}/refs/tags`),await t.fs.mkdir(`${r}/objects/info`),await t.fs.mkdir(`${r}/objects/pack`),await t.fs.writeUtf8(`${r}/info/exclude`,"# git ls-files --others --exclude-from=.git/info/exclude\n# Lines that start with '#' are comments.\n# For a project mostly in C, the following would be a good set of\n# exclude patterns (uncomment them if you want to use them):\n# *.[oa]\n# *~\n"),await t.fs.writeUtf8(`${r}/description`,"Unnamed repository; edit this file 'description' to name the repository.\n")}catch(e){throw await t.fs.rmRecursive(r).catch(()=>{}),e}var n;return{gitDir:r,initialBranch:a,bare:e.bare}},Dr={attempts:3,backoff:"exponential",baseMs:250,maxDelayMs:5e3},xr=(t,e={})=>{const a=void 0!==e.logger?Ir(e.logger):void 0;let r=t.transport;return r=we(e.retry??Dr)(r),void 0!==e.auth&&(r=me(e.auth)(r)),void 0!==a&&(r=pe({logger:a})(r)),r},Ir=t=>({log:e=>t.log(Mr(e))}),Mr=t=>"request"===t.kind||"response"===t.kind?{...t,url:Ar(t.url),headers:Sr(t.headers)}:{...t,url:Ar(t.url),errorMessage:Ar(t.errorMessage)},Sr=t=>{const e={};for(const[a,r]of Object.entries(t))e[a]=Ar(r);return e},Ar=t=>{let e="";for(let a=0;a<t.length;a+=1){const r=t.charCodeAt(a);e+=9===r||10===r?t[a]:r<32||r>126?`\\x${r.toString(16).padStart(2,"0").toUpperCase()}`:t[a]}return e},Lr={"git-upload-pack":"application/x-git-upload-pack-advertisement","git-receive-pack":"application/x-git-receive-pack-advertisement"},Nr=async(t,e,a,r)=>{const n=gt(a,r),s=await e.request({url:n,method:"GET",headers:{accept:Lr[r]},...void 0!==t.signal?{signal:t.signal}:{}});if(200!==s.statusCode)throw l(s.statusCode,`${r} discovery returned ${s.statusCode}`);const i=bt(ye(s.body));return vt(i,r)},Or=async(t,e,a)=>Nr(t,e,a,"git-upload-pack"),Ur=t=>{const e=Et.filter(t=>"multi_ack_detailed"!==t&&"thin-pack"!==t&&"no-progress"!==t&&t!==$t);return[...kt(t,e),$t]},Tr=t=>{const e=new Set,a=[];for(const r of t)e.has(r.id)||(e.add(r.id),a.push(r.id));return a},_r=t=>t.includes("filter"),Rr=async(t,e)=>{Cr(t);const a=Hr(t);Fr(a,e.allowInsecure??!1),Wr(a);const r=await e.resolver(a.hostname);return{url:t,pinnedAddress:Pr(r,e.allowPrivateNetworks??!1)}},Cr=t=>{for(let e=0;e<t.length;e+=1){const a=t.charCodeAt(e);if(10===a||13===a)throw h("contains forbidden control character")}},Hr=t=>{try{return new URL(t)}catch{throw h("not a valid URL")}},Fr=(t,e)=>{const a=t.protocol;if("https:"!==a&&("http:"!==a||!e))throw w(a.replace(":",""))},Wr=t=>{if(""!==t.hash)throw h("URL fragment is not allowed")},Pr=(t,e)=>{for(const a of t)if(e||!Br(a))return a;if(0===t.length)throw m("<unresolved>","no DNS records returned");throw m(t[0],"all resolved addresses are in a blocked range")},Br=t=>t.includes(":")?jr(t):zr(t),zr=t=>{const e=(t=>{const e=t.split(".");if(4!==e.length)return;const a=[];for(const t of e){if(!/^\d{1,3}$/.test(t))return;const e=Number(t);if(e>255)return;a.push(e)}return a})(t);if(void 0===e)return!1;const[a,r]=e;return 0===a||10===a||100===a&&r>=64&&r<=127||127===a||169===a&&254===r||172===a&&r>=16&&r<=31||192===a&&168===r||a>=224},jr=t=>{const e=t.toLowerCase(),a=e.match(/::ffff:(?:0:)?(\d+\.\d+\.\d+\.\d+)$/);if(void 0!==a?.[1])return zr(a[1]);const r=e.match(/^::ffff:([0-9a-f]{1,4}):([0-9a-f]{1,4})$/);if(void 0!==r?.[1]&&void 0!==r[2]){const t=parseInt(r[1],16),e=parseInt(r[2],16);return zr(`${t>>8}.${255&t}.${e>>8}.${255&e}`)}return!!("::1"===e||"::"===e||e.startsWith("fe80:")||e.startsWith("fe80::")||e.startsWith("ff")||e.startsWith("fc")||e.startsWith("fd"))},qr="clone:discover",Gr=async(t,e)=>{if(await t.fs.exists(`${t.layout.gitDir}/HEAD`))throw p(t.layout.workDir);if(""===e.url)throw y();const a=void 0!==e.filter?da(ca(e.filter)):void 0;t.progress.start(qr);try{void 0!==e.resolver&&await Rr(e.url,{resolver:e.resolver,...void 0!==e.allowInsecure?{allowInsecure:e.allowInsecure}:{},...void 0!==e.allowPrivateNetworks?{allowPrivateNetworks:e.allowPrivateNetworks}:{}});const r=await Er(t,{initialBranch:e.initialBranch??"main",bare:e.bare??!1});try{return await Vr(t,e,r.gitDir,a)}catch(e){throw await t.fs.rmRecursive(t.layout.gitDir).catch(()=>{}),e}}finally{t.progress.end(qr)}},Vr=async(t,e,a,r)=>{const n=xr(t,{...void 0!==t.config?.auth?{auth:t.config.auth}:{}}),s=await Or(t,n,e.url);if(0===s.refs.length)throw y();if(void 0!==r&&!_r(s.capabilities))throw Dt();const i=Ur(s.capabilities),o=Tr(s.refs),c=await xt(t,n,{wants:o,haves:[],capabilities:i,url:e.url,progressOp:"clone:write-objects",...void 0!==e.depth?{depth:e.depth}:{},...void 0!==r?{filter:r,promisor:!0}:{}});c.shallow.length>0&&await It(t,{shallow:c.shallow,unshallow:c.unshallow});const d=await Xr(t,s,e.url),f=await Jr(t,s,e.url);return void 0!==r&&await Yr(t,e.url,r),{path:a,head:f,fetchedRefs:d}},Yr=async(t,e,a)=>{await Mt(t,[{section:"core",key:"repositoryformatversion",value:"1"},{section:"remote",subsection:"origin",key:"url",value:e},{section:"remote",subsection:"origin",key:"fetch",value:"+refs/heads/*:refs/remotes/origin/*"},{section:"remote",subsection:"origin",key:"promisor",value:"true"},{section:"remote",subsection:"origin",key:"partialclonefilter",value:a},{section:"extensions",key:"partialClone",value:"origin"}])},Xr=async(t,e,a)=>{const r=Zr(e),n=[];for(const s of e.refs)if("HEAD"!==s.name){if(s.name.startsWith("refs/heads/")){const e=s.name.slice(11),i=`refs/remotes/origin/${e}`;if(await Kr(t,i,s.id,a),n.push({name:i,id:s.id}),void 0!==r&&e===r){const e=s.name;await Kr(t,e,s.id,a),n.push({name:e,id:s.id})}continue}if(s.name.startsWith("refs/tags/")){const e=s.name;await Kr(t,e,s.id,a),n.push({name:e,id:s.id});continue}t.logger?.debug?.("clone: skipping unsupported ref namespace",{name:s.name})}return n},Kr=async(t,e,a,r)=>{const n=`${t.layout.gitDir}/${e}`;await t.fs.writeUtf8(n,`${a}\n`),await mt(t,e,it,a,`clone: from ${r}`)},Zr=t=>{const e=t.capabilities.find(t=>t.startsWith("symref=HEAD:refs/heads/"));if(void 0!==e)return e.slice(23)},Jr=async(t,e,a)=>{const r=Zr(e),n=e.head?.id;if(void 0!==r){const e=`refs/heads/${r}`;return await t.fs.writeUtf8(`${t.layout.gitDir}/HEAD`,`ref: ${e}\n`),await Qr(t,n,a),e}if(void 0!==e.head)return await t.fs.writeUtf8(`${t.layout.gitDir}/HEAD`,`${e.head.id}\n`),void await Qr(t,n,a)},Qr=async(t,e,a)=>{void 0!==e&&await mt(t,"HEAD",it,e,`clone: from ${a}`)},tn=t=>{if(void 0!==t.explicit)return t.explicit;if(void 0!==t.configUser)return t.configUser;throw g()},en=t=>{if(void 0!==t.explicit)return t.explicit;if(void 0!==t.author)return t.author;if(void 0!==t.configUser)return t.configUser;throw g()},an=(t,e)=>{const a=t.trim();if(""===a&&!e.allowEmpty)throw v();return a},rn=t=>`${t.layout.gitDir}/MERGE_HEAD`,nn=t=>`${t.layout.gitDir}/MERGE_MSG`,sn=async(t,e)=>{await Na(t),await Oa(t,"commit");const a=await(async t=>{const e=rn(t);if(!await t.fs.exists(e))return;const a=(await t.fs.readUtf8(e)).trim();return 0!==a.length?ut.from(a):void 0})(t);await _a(t,void 0!==a?{except:"merge"}:{});const r=e.noVerify??!1;await(async(t,e)=>{e||await St(t,"pre-commit")})(t,r);const n=await on(t,e,a),s=await z(t),i=un(s.user),o=tn(ln(e.author,i)),c=en(hn(e.committer,o,i)),d=await tt(t);fn(d.entries);const f=await pn(t,d.entries),u=await Ua(t),l="symbolic"===u.kind?await wn(t,u.target):u.id,h=dn(l,a);if(!e.allowEmpty&&void 0!==l&&void 0===a&&await mn(t,l)===f)throw b();const w=await(async(t,e,a)=>{if(a.noVerify||void 0===t.hooks)return e;const r=`${t.layout.gitDir}/COMMIT_EDITMSG`;await t.fs.writeUtf8(r,e),await St(t,"commit-msg",{args:[r]});const n=await t.fs.readUtf8(r);return an(n,{allowEmpty:a.allowEmptyMessage})})(t,n,{noVerify:r,allowEmptyMessage:e.allowEmptyMessage??!1}),m={tree:f,parents:h,author:o,committer:c,message:w,extraHeaders:[]},p=await At(t,m),y="symbolic"===u.kind?u.target:void 0,g=cn(w,l,a);return void 0!==y?await st(t,y,p,void 0!==l?{expected:l,reflogMessage:g}:{reflogMessage:g}):(await t.fs.writeUtf8(`${t.layout.gitDir}/HEAD`,`${p}\n`),await mt(t,"HEAD",l??it,p,g)),void 0!==a&&await(async t=>{for(const e of[rn(t),nn(t)])await t.fs.exists(e)&&await t.fs.rm(e)})(t),{id:p,tree:f,branch:y,parents:h}},on=async(t,e,a)=>{if(e.message.length>0||void 0===a)return an(e.message,{allowEmpty:e.allowEmptyMessage??!1});const r=await(async t=>{const e=nn(t);if(await t.fs.exists(e))return t.fs.readUtf8(e)})(t);return an(r??"",{allowEmpty:e.allowEmptyMessage??!1})},cn=(t,e,a)=>{const r=t.split("\n")[0];return void 0===e?`commit (initial): ${r}`:void 0!==a?`commit (merge): ${r}`:`commit: ${r}`},dn=(t,e)=>{const a=[];return void 0!==t&&a.push(t),void 0!==e&&a.push(e),a},fn=t=>{const e=new Set;for(const a of t)0!==a.flags.stage&&e.add(a.path);if(e.size>0)throw k(e.size,[...e])},un=t=>{if(void 0!==t)return{name:t.name,email:t.email,timestamp:Math.floor(Date.now()/1e3),timezoneOffset:"+0000"}},ln=(t,e)=>{const a={};return void 0!==t&&(a.explicit=t),void 0!==e&&(a.configUser=e),a},hn=(t,e,a)=>{const r={};return void 0!==t&&(r.explicit=t),void 0!==e&&(r.author=e),void 0!==a&&(r.configUser=a),r},wn=async(t,e)=>{try{return await rt(t,e)}catch{return}},mn=async(t,e)=>{const a=await Lt(t,e);return"commit"!==a.type?it:a.data.tree},pn=async(t,e)=>{const a={files:new Map,subdirs:new Map};for(const t of e)yn(a,t.path.split("/"),t);return gn(t,a)},yn=(t,e,a)=>{if(1===e.length)return void t.files.set(e[0],{id:a.id,mode:a.mode});const[r,...n]=e,s=r;let i=t.subdirs.get(s);void 0===i&&(i={files:new Map,subdirs:new Map},t.subdirs.set(s,i)),yn(i,n,a)},gn=async(t,e)=>{const a=[];for(const[t,r]of e.files)a.push({mode:r.mode,name:t,id:r.id});const r=await Promise.all(Array.from(e.subdirs).map(async([e,a])=>({name:e,id:await gn(t,a)})));for(const{name:t,id:e}of r)a.push({mode:"40000",name:t,id:e});return Nt(t,a)},vn=async(t,e={})=>{await Na(t);const a=await bn(t,e.from??"HEAD"),r=void 0!==e.to?await bn(t,e.to):void 0;return Ot(t,a,r,!0===e.detectRenames?{detectRenames:!0}:{})},bn=async(t,e)=>{const a=/^[0-9a-f]{40}$/.test(e)?e:await rt(t,nt(e)),r=await Lt(t,a);return"commit"===r.type?r.data.tree:a},kn="fetch:negotiate",$n=async(t,e={})=>{await Na(t);const a=e.remote??"origin",{url:r,filter:n}=await En(t,a);t.progress.start(kn);try{const s=xr(t,void 0!==t.config?.auth?{auth:t.config.auth}:{}),i=await Or(t,s,r);if(0===i.refs.length)throw y();if(void 0!==n&&!_r(i.capabilities))throw Dt();const o=Ur(i.capabilities),c=Tr(i.refs),d=await Dn(t,a),f=await xt(t,s,{wants:c,haves:d,capabilities:o,url:r,progressOp:"fetch:write-objects",...void 0!==e.depth?{depth:e.depth}:{},...void 0!==n?{filter:n,promisor:!0}:{}});(f.shallow.length>0||f.unshallow.length>0)&&await It(t,{shallow:f.shallow,unshallow:f.unshallow});return{remote:a,url:r,updatedRefs:await An(t,a,i),prunedRefs:!0===e.prune?await Un(t,a,i):[],shallow:f.shallow,unshallow:f.unshallow}}finally{t.progress.end(kn)}},En=async(t,e)=>{const a=await z(t),r=a.remote?.get(e);if(void 0===r?.url||""===r.url)throw $(e);const n=void 0!==r.partialCloneFilter?da(ca(r.partialCloneFilter)):void 0;return{url:r.url,filter:n}},Dn=async(t,e)=>{const a=await xn(t,e);if(0===a.length)return[];const r=new Set,n=[];for(const t of a)if(!r.has(t)&&(r.add(t),n.push(t),n.length>=Ut))return n;const s=a.slice(0,Tt);for await(const e of _t(t,{from:s,ignoreMissing:!0,verifyHash:!1}))if(!r.has(e.id)&&(r.add(e.id),n.push(e.id),n.length>=Ut))break;return n},xn=async(t,e)=>{const a=[],r=[`refs/remotes/${e}`,"refs/tags"];for(const e of r){const r=`${t.layout.gitDir}/${e}`;await t.fs.exists(r)&&await In(t,r,a)}const n=`refs/remotes/${e}/`,s=await Rt(t).getPackedRefs();for(const t of s.entries)(t.name.startsWith(n)||t.name.startsWith("refs/tags/"))&&a.push(t.id);return a},In=async(t,e,a)=>{const r=await t.fs.readdir(e);for(const n of r){const r=`${e}/${n.name}`;if(n.isDirectory){await In(t,r,a);continue}const s=(await t.fs.readUtf8(r)).trim();Sn(s)&&a.push(s)}},Mn=/^[0-9a-f]{40}([0-9a-f]{24})?$/i,Sn=t=>Mn.test(t),An=async(t,e,a)=>{const r=[];for(const n of a.refs){const a=Ln(e,n);if(void 0===a)continue;const s=await On(t,a);s!==n.id?(await st(t,a,n.id,{reflogMessage:`fetch ${e}: storing head`}),r.push({name:a,oldId:s,newId:n.id})):r.push({name:a,oldId:s,newId:n.id})}return r},Ln=(t,e)=>{if("HEAD"!==e.name&&Nn(e.name)){if(e.name.startsWith("refs/heads/")){const a=`refs/remotes/${t}/${e.name.slice(11)}`;if(!Nn(a))return;return a}return e.name.startsWith("refs/tags/")?e.name:void 0}},Nn=t=>{try{return nt(t),!0}catch{return!1}},On=async(t,e)=>{nt(e);const a=`${t.layout.gitDir}/${e}`;if(!await t.fs.exists(a))return;const r=(await t.fs.readUtf8(a)).trim();return Sn(r)?r:void 0},Un=async(t,e,a)=>{const r=new Set(a.refs.filter(t=>t.name.startsWith("refs/heads/")).map(t=>t.name.slice(11))),n=`${t.layout.gitDir}/refs/remotes/${e}`;if(!await t.fs.exists(n))return[];const s=[];return await Tn(t,n,"",r,e,s),s},Tn=async(t,e,a,r,n,s)=>{const i=await t.fs.readdir(e);for(const o of i){const i=`${e}/${o.name}`,c=""===a?o.name:`${a}/${o.name}`;if(o.isDirectory){await Tn(t,i,c,r,n,s);continue}if(r.has(c))continue;const d=`refs/remotes/${n}/${c}`;if(!Nn(d)){t.logger?.warn?.("fetch.prune: skipping unsafe ref name",{name:d});continue}const f=d;try{await st(t,f,it,{delete:!0})}catch(e){if(_n(e)){t.logger?.warn?.("fetch.prune: skipping packed-only ref",{name:f});continue}throw e}s.push(f)}},_n=e=>e instanceof t&&"UNSUPPORTED_OPERATION"===e.data.code&&"delete-packed-ref"===e.data.operation,Rn=async(t,e,a)=>!!await t.fs.exists(Ct(t.layout.gitDir,a))||void 0!==await e.lookup(a),Cn=async(e,a)=>{await Na(e);const r=await z(e),n=r.extensions?.partialClone;if(void 0===n)return{kind:"no-promisor"};const s=r.remote?.get(n)?.url;if(void 0===s||""===s)throw $(n);const i=await(async(t,e)=>{const a=Ht(t),r=new Set,n=[];for(const s of e)r.has(s)||(r.add(s),await Rn(t,a,s)||n.push(s));return n})(e,a);if(0===i.length)return{kind:"fetched",remote:n,requested:a.length,fetched:0};const o=xr(e,void 0!==e.config?.auth?{auth:e.config.auth}:{}),c=await Or(e,o,s),d=Ur(c.capabilities);try{await xt(e,o,{wants:i,haves:[],capabilities:d,url:s,progressOp:"fetch-missing:write-objects",promisor:!0})}catch(e){if(!(e=>e instanceof t&&"FILE_EXISTS"===e.data.code)(e))throw e}return{kind:"fetched",remote:n,requested:a.length,fetched:i.length}},Hn=async(t,e)=>{const a=await Cn(t,e.oids);if("no-promisor"===a.kind)throw E();return{remote:a.remote,requested:a.requested,fetched:a.fetched}},Fn=t=>({fetch:async e=>{const a=await Cn(t,e);return"no-promisor"===a.kind?{attempted:!1,requested:e.length,fetched:0}:{attempted:!0,requested:a.requested,fetched:a.fetched}}}),Wn=async(e,a={})=>{const r=a.initialBranch??"main",n=a.bare??!1;if(await e.fs.exists(`${e.layout.gitDir}/HEAD`))throw new t({code:"ALREADY_INITIALIZED",path:e.layout.gitDir});const s=await Er(e,{initialBranch:r,bare:n});return{path:s.gitDir,initialBranch:s.initialBranch,bare:s.bare}},Pn=async(t,e={})=>{await Na(t);const a=await Bn(t,e.from??"HEAD"),r=await zn(t,e.excluding??[]),n=e.before,s=[];let i=0;for await(const o of _t(t,{from:[a],until:r,order:"first-parent"}))if(!(void 0!==n&&o.data.committer.timestamp>=n.getTime()/1e3)&&(s.push({id:o.id,tree:o.data.tree,parents:o.data.parents,author:o.data.author,committer:o.data.committer,message:o.data.message}),i+=1,void 0!==e.limit&&i>=e.limit))break;return s},Bn=async(t,e)=>{if(/^[0-9a-f]{40}$/.test(e))return e;const a=[e,`refs/heads/${e}`,`refs/tags/${e}`];for(const e of a)try{return await rt(t,nt(e))}catch{}return rt(t,nt(e))},zn=async(t,e)=>{const a=[];for(const r of e)if(/^[0-9a-f]{40}$/.test(r))a.push(r);else try{a.push(await rt(t,nt(r)))}catch{}return a},jn=async(t,e)=>{const a=new Map;for await(const r of pt(t,e))r.mode!==H.DIRECTORY&&a.set(r.path,{id:r.id,mode:r.mode});return{entries:a}},qn=async(t,e)=>{await Na(t),await Oa(t,"merge"),await _a(t);const a=await Ua(t);if("symbolic"!==a.kind)throw D("merge","cannot merge with detached HEAD");const r=await rt(t,a.target),n=await ms(t,e.target);if(r===n)return{kind:"up-to-date",id:r};const s=await Ft(t,r,n);if(s===n)return{kind:"up-to-date",id:r};if(s===r&&!0!==e.noFastForward)return await st(t,a.target,n,{expected:r,reflogMessage:`merge ${e.target}: Fast-forward`}),{kind:"fast-forward",id:n,branch:a.target};if(!0===e.fastForwardOnly)throw x(a.target,r,n);return Yn(t,e,a.target,r,n,s)},Gn="merge:write-files",Vn=new Set(["rename-rename","gitlink"]),Yn=async(t,e,a,r,n,s)=>{t.progress.start(Gn);try{const i=await Kn(t,r,n,s);return"conflict"===i.kind?ts(t,e,i,r,n):Xn(t,e,a,r,n,i.tree)}finally{t.progress.end(Gn)}},Xn=async(t,e,a,r,n,s)=>{const i=await hs(t,e),o={tree:s,parents:[r,n],author:i,committer:ws(e,i),message:an(e.message??`Merge ${e.target}`,{allowEmpty:!1}),extraHeaders:[]},c=await At(t,o);return await st(t,a,c,{expected:r,reflogMessage:`merge ${e.target}: Merge made by the 'tsgit' strategy.`}),{kind:"merge",id:c,branch:a,parents:[r,n]}},Kn=async(t,e,a,r)=>{const n=await ps(t,e),s=await ps(t,a),i=void 0!==r?await ps(t,r):void 0,[o,c,d]=await Promise.all([jn(t,n),jn(t,s),void 0!==i?jn(t,i):Promise.resolve(void 0)]),f=Zn(t),u=await async function(t,e,a,r){Qe(t,"base"),Qe(e,"ours"),Qe(a,"theirs");const n=function(t,e,a){const r=new Set;for(const n of[t,e,a])if(void 0!==n)for(const t of n.entries.keys())r.add(t);if(r.size>R)throw Ue("union FlatTree exceeds MAX_FLAT_TREE_ENTRIES");return r}(t,e,a),s=_([...n],t=>t),i=[];for(const n of s){const s=ra(n,t?.entries.get(n),e?.entries.get(n),a?.entries.get(n),r),o=s instanceof Promise?await s:s;i.push(o)}const o=function(t){const e=[];for(const a of t)"conflict"===a.status&&e.push(a.conflict);return e}(i);return{outcomes:i,conflicts:o,cleanMerge:0===o.length}}(d,o,c,f);return u.cleanMerge?{kind:"clean",tree:await Jn(t,u.outcomes)}:{kind:"conflict",outcomes:u.outcomes,conflicts:u.conflicts}},Zn=t=>async(e,a,r,n)=>{const[s,i,o]=await Promise.all([zt(t,e.ourId,{maxBytes:_e}),zt(t,e.theirId,{maxBytes:_e}),void 0!==e.baseId?zt(t,e.baseId,{maxBytes:_e}):Promise.resolve(void 0)]);return function(t,e,a,r={}){if(Ee(e)||Ee(a)||void 0!==t&&Ee(t))return{status:"conflict",conflictType:"binary",markedBytes:e};if(void 0===t)return je(e,a)?{status:"clean",bytes:e}:Ze($e(e),$e(a),r);if(je(e,t))return{status:"clean",bytes:a};if(je(a,t))return{status:"clean",bytes:e};if(je(e,a))return{status:"clean",bytes:e};const n=Se(t,e),s=Se(t,a);if(n.degraded||s.degraded)return Ze($e(e),$e(a),r);const i=function(t,e){const a=[],r=new Set;for(const n of t){const t=Xe(n,e);if(void 0===t){if(Ke(n,e))return;a.push(n)}else r.add(t),a.push(n)}for(const t of e)r.has(t)||a.push(t);return a.sort((t,e)=>t.baseStart-e.baseStart),{changes:a}}(Ve(n.hunks,n.theirsLines),Ve(s.hunks,s.theirsLines));if(void 0===i)return Ze($e(e),$e(a),r);return{status:"clean",bytes:Ge(function(t,e){const a=[];let r=0;for(const n of e.changes){for(let e=r;e<n.baseStart;e++)a.push(t[e]);for(const t of n.replacement)a.push(t);r=n.baseEnd}for(let e=r;e<t.length;e++)a.push(t[e]);return a}(n.oursLines,i))}}(o?.content,s.content,i.content)},Jn=async(t,e)=>{const a=await(async(t,e)=>{const a=[];for(const r of e)if("resolved-deleted"!==r.status&&"conflict"!==r.status){if("resolved-merged"===r.status){const e=await at(t,{type:"blob",content:r.bytes,id:""});a.push({path:r.path,id:e,mode:r.mode});continue}a.push({path:r.path,id:r.id,mode:r.mode})}return a})(t,e);return Qn(t,a)},Qn=async(t,e,a=0)=>{if(a>4096)throw Bt(a);const{files:r,subdirs:n}=(t=>{const e=[],a=new Map;for(const r of t){const t=r.path.indexOf("/");if(-1===t){e.push(r);continue}const n=r.path.slice(0,t),s={path:r.path.slice(t+1),id:r.id,mode:r.mode},i=a.get(n);void 0===i?a.set(n,[s]):i.push(s)}return{files:e,subdirs:a}})(e),s=await Promise.all(Array.from(n,async([e,r])=>({name:e,id:await Qn(t,r,a+1),mode:H.DIRECTORY}))),i=r.map(t=>({name:t.path,id:t.id,mode:t.mode}));return Nt(t,[...i,...s])},ts=async(t,e,a,r,n)=>{es(a.conflicts);const s=await ht(t),i=await Ia(t);try{await rs(t,a.outcomes,a.conflicts,s),await(async(t,e)=>{await t.fs.writeUtf8((t=>`${t.layout.gitDir}/ORIG_HEAD`)(t),`${e}\n`)})(t,r),await(async(t,e)=>{await t.fs.writeUtf8(rn(t),`${e}\n`)})(t,n);const o=an(e.message??`Merge ${e.target}`,{allowEmpty:!1});await(async(t,e)=>{await t.fs.writeUtf8(nn(t),e)})(t,o);const c=ls(a.outcomes,a.conflicts,s);await i.commit(c)}finally{await i.release()}return{kind:"conflict",conflicts:a.conflicts.map(t=>({path:t.path,type:t.type})),mergeHead:n,origHead:r}},es=t=>{for(const e of t)if(Vn.has(e.type))throw D("merge",`conflict type '${e.type}' not supported in v1 (path=${e.path})`)},as=(t,e)=>void 0!==t&&!t(e),rs=async(t,e,a,r)=>{await ns(e,32,e=>ss(t,e,r)),await ns(a,32,e=>is(t,e))},ns=async(t,e,a)=>{let r=0;const n=[],s=async()=>{for(;r<t.length;){const e=t[r++];if(void 0===e)break;await a(e)}},i=Math.min(e,t.length);for(let t=0;t<i;t++)n.push(s());await Promise.all(n)},ss=async(t,e,a)=>{if("unchanged"===e.status||"resolved-known"===e.status){if(as(a,e.path))return;const r=await zt(t,e.id,{maxBytes:_e});return void await cs(t,e.path,r.content)}"resolved-merged"!==e.status?"resolved-deleted"===e.status&&await ds(t,e.path):await cs(t,e.path,e.bytes)},is=async(t,e)=>{const a=await os(t,e);void 0!==a&&await cs(t,e.path,a)},os=async(t,e)=>{if("content"===e.type&&void 0!==e.conflictContent)return e.conflictContent;if("binary"===e.type&&void 0!==e.ourId)return(await zt(t,e.ourId,{maxBytes:_e})).content;if(("add-add"===e.type||"type-change"===e.type)&&void 0!==e.ourId)return(await zt(t,e.ourId,{maxBytes:_e})).content;if("modify-delete"===e.type){const a=e.ourId??e.theirId;if(void 0!==a)return(await zt(t,a,{maxBytes:_e})).content}if("content"===e.type&&void 0!==e.ourId&&void 0!==e.theirId){const[a,r]=await Promise.all([zt(t,e.ourId,{maxBytes:_e}),zt(t,e.theirId,{maxBytes:_e})]);return ze([a.content],[r.content])}},cs=async(t,e,a)=>{const r=`${t.layout.workDir}/${e}`,n=fs(r);void 0!==n&&await t.fs.mkdir(n),await t.fs.write(r,a)},ds=async(t,e)=>{const a=`${t.layout.workDir}/${e}`;await t.fs.exists(a)&&await t.fs.rm(a)},fs=t=>{const e=t.lastIndexOf("/");if(!(e<=0))return t.slice(0,e)},us=t=>({ctimeSeconds:0,ctimeNanoseconds:0,mtimeSeconds:0,mtimeNanoseconds:0,dev:0,ino:0,mode:t,uid:0,gid:0,fileSize:0}),ls=(t,e,a)=>{const r=[];for(const e of t)"unchanged"!==e.status&&"resolved-known"!==e.status||r.push(as(a,e.path)?Pt({path:e.path,id:e.id,mode:e.mode}):{...us(e.mode),id:e.id,flags:O,path:e.path});const n=function(t,e){const a=new Set;for(const e of t){if(a.has(e.path))throw ge("duplicate conflict path");a.add(e.path)}const r=[];for(const a of t)for(const t of ve(a))r.push(be(a.path,t,e));return r.sort((t,e)=>{const a=N(t.path,e.path);return 0!==a?a:t.flags.stage-e.flags.stage}),r}(e,us),s=[...r,...n];return s.sort((t,e)=>t.path<e.path?-1:t.path>e.path?1:t.flags.stage-e.flags.stage),s},hs=async(t,e)=>{const a=await z(t),r=a.user?{name:a.user.name,email:a.user.email,timestamp:Math.floor(Date.now()/1e3),timezoneOffset:"+0000"}:void 0,n={};return void 0!==e.author&&(n.explicit=e.author),void 0!==r&&(n.configUser=r),tn(n)},ws=(t,e)=>{const a={author:e};return void 0!==t.committer&&(a.explicit=t.committer),en(a)},ms=async(t,e)=>/^[0-9a-f]{40}$/.test(e)?e:rt(t,`refs/heads/${e}`),ps=async(t,e)=>{const a=await Lt(t,e);if("commit"!==a.type)throw Wt("commit",a.type,e);return a.data.tree},ys=t=>"HEAD"===t||t.includes("/")?t:`refs/heads/${t}`,gs=t=>{if(""===t)throw qt(t,"refspec must not be empty");let e=t,a="normal";if(e.startsWith("+")&&(a="force",e=e.slice(1)),""===e)throw qt(t,"refspec must not be empty after force prefix");const r=vs(e,":");if(r>1)throw qt(t,"refspec must contain at most one colon");if(0===r){const t=ys(e);return{force:a,src:t,dst:t,isDelete:!1}}const n=e.indexOf(":"),s=e.slice(0,n),i=e.slice(n+1);if(""===i)throw qt(t,"destination must not be empty");const o=ys(i);if("HEAD"===o)throw qt(t,"destination must not be HEAD");return""===s?{force:a,src:"",dst:o,isDelete:!0}:{force:a,src:ys(s),dst:o,isDelete:!1}},vs=(t,e)=>{let a=0;for(let r=0;r<t.length;r+=1)t[r]===e&&(a+=1);return a},bs="push:enumerate-objects",ks="push:upload",$s=ut.from("0".repeat(40)),Es="refs/heads/",Ds=new Set(["side-band-64k","side-band"]),xs=async(t,e={})=>{await Na(t),t.progress.start(bs);try{const a=e.remote??"origin",r=await As(t,a),n=await Ls(t,e.refspecs),s=xr(t,void 0!==t.config?.auth?{auth:t.config.auth}:{}),i=await(async(t,e,a)=>Nr(t,e,a,"git-receive-pack"))(t,s,r),o=(await Ns(t,n,i,a,e)).filter(t=>t.localOid!==t.remoteOid);return 0===o.length?{remote:a,url:r,pushedRefs:[]}:(await Is(t,e.noVerify??!1,a,r,o),{remote:a,url:r,pushedRefs:await Hs(t,s,r,i,o,a)})}finally{t.progress.end(bs)}},Is=async(t,e,a,r,n)=>{if(e)return;const s=n.map(Ms).join("");await St(t,"pre-push",{args:[a,r],stdin:s})},Ms=t=>`${t.parsed.isDelete?"(delete)":t.parsed.src} ${t.localOid} ${t.parsed.dst} ${t.remoteOid}\n`,Ss=/^[A-Za-z0-9._-]+$/,As=async(t,e)=>{if(!Ss.test(e))throw s("remote",`invalid remote name: ${e}`);const a=await z(t),r=a.remote?.get(e);if(void 0===r?.url)throw $(e);return r.url},Ls=async(t,e)=>{if(void 0!==e&&e.length>0)return e.map(gs);const a=await Ua(t);if("symbolic"!==a.kind)throw s("refspecs","no-default-refspec (HEAD is detached)");const r=a.target;return[gs(`${r}:${r}`)]},Ns=async(t,e,a,r,n)=>{const s=Os(a.refs),i=[];for(const a of e)i.push(await Us(t,a,s,r,n));return i},Os=t=>{const e=new Map;for(const a of t)e.set(a.name,a.id);return e},Us=async(t,e,a,r,n)=>{const i=a.get(e.dst)??$s;if(e.isDelete){if(i===$s)throw s("refspecs",`delete target ${e.dst} is not advertised`);return{parsed:e,localOid:$s,remoteOid:i}}const o=await rt(t,e.src);return await Ts(t,e,o,i,r,n),{parsed:e,localOid:o,remoteOid:i}},Ts=async(t,e,a,r,n,s)=>{const i=await _s(t,e,n,s);if(void 0===i){if("force"!==e.force&&!0!==s.force&&r!==$s&&!await Rs(t,r,a))throw x(e.dst,a,r)}else if(i!==r)throw I(e.dst,"lease-mismatch",Cs())},_s=async(t,e,a,r)=>{if(void 0===r.forceWithLease)return;if("auto"!==r.forceWithLease)return r.forceWithLease;if(!e.dst.startsWith(Es))throw s("forceWithLease","lease-on-non-branch");const n=e.dst.slice(11);return rt(t,`refs/remotes/${a}/${n}`)},Rs=async(t,e,a)=>{for await(const r of _t(t,{from:[a],ignoreMissing:!0}))if(r.id===e)return!0;return!1},Cs=()=>({unpackOk:!0,refUpdates:[]}),Hs=async(t,e,a,r,n,s)=>{const i=n.filter(t=>!t.parsed.isDelete).map(t=>t.localOid),o=r.refs.map(t=>t.id),c=await Fs(t,i,o),d=await Gt(t,{oids:c}),f=(t=>{const e=jt.filter(t=>t!==$t);return[...kt(t,e),$t]})(r.capabilities),u=(t=>{if(0===t.updates.length)throw W();const e=t.updates.map((e,a)=>((t,e)=>{const a=0===e.length?"":`\0${e.join(" ")}`;return ua.encode(`${t.oldId} ${t.newId} ${t.name}${a}\n`)})(e,0===a?t.capabilities:[])),a=P(e),r=new Uint8Array(a.byteLength+t.packfile.byteLength);return r.set(a,0),r.set(t.packfile,a.byteLength),r})({updates:n.map(Ws),capabilities:f,packfile:d.bytes}),l=await Ps(t,e,a,u),h=await zs(t,l,f);if(!h.unpackOk)throw I(n[0]?.parsed.dst,h.unpackError??"unpack failed",h);return await qs(t,n,h.refUpdates,s)},Fs=async(t,e,a)=>{if(0===e.length)return[];const r=[];for await(const n of Vt(t,{wants:e,haves:a}))r.push(n);return r},Ws=t=>({name:t.parsed.dst,oldId:t.remoteOid,newId:t.localOid}),Ps=async(t,e,a,r)=>{t.progress.start(ks);try{const n=Bs(a),s=await e.request({url:n,method:"POST",headers:{"content-type":"application/x-git-receive-pack-request",accept:"application/x-git-receive-pack-result"},body:r,...void 0!==t.signal?{signal:t.signal}:{}});if(200!==s.statusCode)throw l(s.statusCode,`git-receive-pack returned ${s.statusCode}`);return s}finally{t.progress.end(ks)}},Bs=t=>{let e;try{e=new URL(t)}catch{throw Yt("invalid URL")}if(""!==e.hash)throw Yt("fragment must not be set");const a=e.pathname.endsWith("/")?e.pathname.slice(0,-1):e.pathname;return`${e.protocol}//${e.host}${a}/git-receive-pack${e.search}`},zs=async(t,e,a)=>{const r=ye(e.body),n=bt(r);if(js(a)){const e=Xt(n,{onProgress:e=>t.progress.update(ks,0,void 0,M(e))});return wa(bt(e))}return wa(n)},js=t=>t.some(t=>Ds.has(t)),qs=async(t,e,a,r)=>{const n=new Map;for(const t of a)n.set(t.name,t);const s=[];for(const a of e){const e=n.get(a.parsed.dst),i=!0===e?.accepted;i&&await Gs(t,a,r),s.push({name:a.parsed.dst,oldId:a.remoteOid,newId:a.localOid,status:i?"ok":"rejected",...void 0!==e?.reason?{reason:e.reason}:{}})}return s},Gs=async(t,e,a)=>{if(!e.parsed.dst.startsWith(Es))return;if(e.parsed.isDelete)return;const r=`refs/remotes/${a}/${e.parsed.dst.slice(11)}`;Vs(r)&&await st(t,r,e.localOid,{reflogMessage:"update by push"})},Vs=t=>{try{return nt(t),!0}catch{return!1}},Ys=t=>nt(t),Xs=async(t,e={})=>(await Na(t),"exists"===e.action?Zs(t,e.ref):"delete"===e.action?Js(t,e):"expire"===e.action?ti(t,e):Ks(t,e.ref??"HEAD")),Ks=async(t,e)=>{const a=Ys(e),r=await ot(t,a),n=r.length-1,s=r.map((t,e)=>({index:e,selector:`${a}@{${e}}`,entry:r[n-e]}));return{kind:"show",ref:a,entries:s}},Zs=async(t,e)=>({kind:"exists",exists:await Kt(t,Ys(e))}),Js=async(t,e)=>{const a=Ys(e.ref);if(!await Kt(t,a))throw Zt(a);const r=await ot(t,a);if(!Number.isInteger(e.index)||e.index<0)throw Jt(a,e.index,r.length);const n=r.length-1-e.index;if(n<0)throw Jt(a,e.index,r.length);const s=r[n],i=Qs(r,n,!0===e.rewrite);return await ct(t,a,i),{kind:"delete",removed:s}},Qs=(t,e,a)=>{const r=t[e],n=t[e+1];return t.filter((t,a)=>a!==e).map(t=>a&&t===n?{...t,oldId:r.oldId}:t)},ti=async(t,e)=>{const a=Math.floor(Date.now()/1e3),r=ei(e.expire??"90.days.ago",a),n=ei(e.expireUnreachable??"30.days.ago",a),s=await ri(t),i=!0===e.all?await Qt(t):[Ys(e.ref??"HEAD")];let o=0,c=0;for(const e of i){const a=await ot(t,e),i=a.filter(t=>ai(t,s,r,n));o+=a.length-i.length,c+=i.length,i.length!==a.length&&await ct(t,e,i)}return{kind:"expire",removed:o,kept:c}},ei=(t,e)=>{const a=ga(t,e);if(void 0===a)throw S(t);return a},ai=(t,e,a,r)=>{const n=e.has(t.newId)?a:r;return t.identity.timestamp>=n},ri=async t=>{const e=await ni(t),a=new Set;if(0===e.length)return a;for await(const r of _t(t,{from:e,ignoreMissing:!0}))a.add(r.id);return a},ni=async t=>{const e=new Set;for(const a of await te(t)){const r=await si(t,a);void 0!==r&&e.add(r)}return[...e]},si=async(e,a)=>{try{return await rt(e,a)}catch(e){if(e instanceof t)return;throw e}},ii=async(t,e)=>{await Na(t),"hard"===e.mode&&await Oa(t,"reset --hard"),await _a(t);const a=await di(t,e.target);"mixed"===e.mode?await oi(t,a):"hard"===e.mode&&await ci(t,a);const r=await Ua(t),n=`reset: moving to ${e.target}`;return"symbolic"===r.kind?(await st(t,r.target,a,{reflogMessage:n}),{mode:e.mode,id:a,branch:r.target}):(await t.fs.writeUtf8(`${t.layout.gitDir}/HEAD`,`${a}\n`),await mt(t,"HEAD",r.id,a,n),{mode:e.mode,id:a,branch:void 0})},oi=async(t,e)=>{const a=await Lt(t,e);if("commit"!==a.type)throw Wt("commit",a.type,e);const r=await ht(t),n=await Ia(t);try{const e=await tt(t),s=await ee(t,{targetTree:a.data.tree,currentIndex:e,...void 0!==r?{sparse:r}:{}});await n.commit(s)}finally{await n.release()}},ci=async(t,e)=>{const a=await Lt(t,e);if("commit"!==a.type)throw Wt("commit",a.type,e);const r=await ht(t),n=await Ia(t);try{const e=await tt(t),s=await wt(t,{targetTree:a.data.tree,currentIndex:e,force:!0,forceRewriteAll:!0,...void 0!==r?{sparse:r}:{}});(s.written>0||s.deleted>0||void 0!==r)&&await n.commit(s.newIndexEntries)}finally{await n.release()}},di=async(t,e)=>{if(/^[0-9a-f]{40}$/.test(e))return e;const a="HEAD"===e?["HEAD"]:[e,`refs/heads/${e}`,`refs/tags/${e}`];for(const e of a)try{return await rt(t,e)}catch{}throw S(e)},fi=new Set(["commit","tree","blob","tag"]),ui=/^:(\d):(.+)$/,li=/^[0-9a-f]{1,6}$/,hi=t=>{throw S(t)},wi=/^\d+$/,mi=t=>{for(let e=0;e<t.length;e+=1){const a=t[e];if("~"===a||"^"===a)return e}return-1},pi=(t,e)=>{const a=[];let r=e;for(;r<t.length;){const e=t[r];if("~"===e){const e=yi(t,r);a.push(e.op),r=e.next}else if("^"===e){const e=gi(t,r);a.push(e.op),r=e.next}else hi(t)}return a},yi=(t,e)=>{let a=e+1;for(;a<t.length&&vi(t.charCodeAt(a));)a+=1;return a===e+1&&hi(t),{op:{kind:"ancestor",n:Number(t.slice(e+1,a))},next:a}},gi=(t,e)=>{if("{"===t[e+1]){const a=t.indexOf("}",e+2);-1===a&&hi(t);const r=t.slice(e+2,a);return fi.has(r)||hi(t),{op:{kind:"peel",target:r},next:a+1}}let a=e+1;for(;a<t.length&&vi(t.charCodeAt(a));)a+=1;const r=t.slice(e+1,a);return{op:{kind:"parent",n:""===r?1:Number(r)},next:a}},vi=t=>t>=48&&t<=57,bi=async(t,e)=>{await Na(t);const a=(""===(r=e)&&hi(r),r.startsWith(":")?(t=>{const e=ui.exec(t);null===e&&hi(t);const a=e[2],r=Number(e[1]);return r>3&&hi(t),{kind:"index-stage",stage:r,path:a}})(r):r.includes("@{")?(t=>{const e=t.indexOf("@{"),a=t.indexOf("}",e+2),r=t.slice(0,e),n=t.slice(e+2,a);return""===n&&hi(t),{kind:"ref-or-hex",base:r,reflog:wi.test(n)?{kind:"index",n:Number(n)}:{kind:"date",raw:n},operations:pi(t.slice(a+1),0)}})(r):(t=>{const e=mi(t),a=-1===e?t:t.slice(0,e);return""===a&&hi(t),li.test(a)&&-1===e&&hi(t),{kind:"ref-or-hex",base:a,operations:-1===e?[]:pi(t,e)}})(r));var r;return ki(t,a,e)},ki=async(t,e,a)=>{if("index-stage"===e.kind)return Ti(t,e);const r=Math.floor(Date.now()/1e3);let n=void 0!==e.reflog?await Di(t,e.base,e.reflog,r,a):await $i(t,e.base);for(const a of e.operations)n=await Ni(t,n,a);return n},$i=async(t,e)=>{if(/^[0-9a-f]{40}$/.test(e))return ut.from(e);for(const a of Ei(e))try{return await rt(t,a)}catch{}throw ae(e)},Ei=t=>[t,`refs/heads/${t}`,`refs/tags/${t}`,`refs/remotes/${t}`],Di=async(t,e,a,r,n)=>{const s=""===e?await xi(t):await Ii(t,e),i=await ot(t,s);if(0===i.length)throw S(n);return"index"===a.kind?Ai(i,a.n,s):Li(i,a.raw,r,n)},xi=async t=>{const e=await Rt(t).resolveDirect("HEAD");return"symbolic"===e.kind?e.target:"HEAD"},Ii=async(t,e)=>{const a=Mi(e),r=Ei(a);for(const e of r)if(await Kt(t,e))return e;for(const e of r)if(await Si(t,e))return e;return a},Mi=t=>{try{return nt(t)}catch{throw S(t)}},Si=async(t,e)=>{try{return await rt(t,e),!0}catch{return!1}},Ai=(t,e,a)=>{const r=t[t.length-1-e];if(void 0===r)throw Jt(a,e,t.length);return r.newId},Li=(t,e,a,r)=>{const n=ga(e,a);if(void 0===n)throw S(r);for(let e=t.length-1;e>=0;e-=1){const a=t[e];if(a.identity.timestamp<=n)return a.newId}return t[0].oldId},Ni=async(t,e,a)=>{if("parent"===a.kind)return Oi(t,e,a.n);if("ancestor"===a.kind){let r=e;for(let e=0;e<a.n;e+=1)r=await Oi(t,r,1);return r}return Ui(t,e,a.target)},Oi=async(t,e,a)=>{const r=await Lt(t,e);if("commit"!==r.type)throw ae(e);const n=r.data.parents[a-1];if(void 0===n)throw ae(e);return n},Ui=async(t,e,a)=>{let r=e;for(let e=0;e<5;e+=1){const e=await Lt(t,r);if(e.type===a)return r;if("tag"!==e.type){if("tree"===a&&"commit"===e.type)return e.data.tree;throw ae(r)}r=e.data.object}throw ae(r)},Ti=async(t,e)=>{const a=await tt(t);for(const t of a.entries)if(t.path===e.path&&t.flags.stage===e.stage)return t.id;throw ae(`${e.stage}:${e.path}`)},_i=async(e,a,r={})=>{if(await Na(e),await Oa(e,"rm"),await _a(e),0===a.length)throw i();const{matcher:n,literalMustMatch:s}=Pa(a),o=await Ia(e,void 0!==r.breakStaleLockMs?{breakStaleLockMs:r.breakStaleLockMs}:{});try{const a=await tt(e).catch(e=>{if(e instanceof t&&("FILE_NOT_FOUND"===(a=e.data.code)||"INVALID_INDEX_HEADER"===a||"INVALID_INDEX_ENTRY"===a))return{entries:[]};var a;throw e}),i=new Map;for(const t of a.entries)i.set(t.path,t);const c=[];for(const[t]of i)Oe(n,t)&&c.push(t);ja(s,c);for(const t of c)i.delete(t);if(!r.cached)for(const a of c)await Fa(e,a).catch(e=>{if(!(e instanceof t&&"FILE_NOT_FOUND"===e.data.code))throw e});return await o.commit(Array.from(i.values())),{removed:c}}finally{await o.release()}},Ri=(t,e)=>`${t}/${e}`,Ci=(t,e)=>void 0===t||t(e),Hi=t=>({kind:"delete",path:t.path,mode:t.mode,id:void 0,previousId:t.id,previousMode:t.mode}),Fi=t=>({kind:"add",path:t.path,mode:t.mode,id:t.id,previousId:void 0,previousMode:void 0}),Wi=t=>({kind:"noop",path:t.path,mode:t.mode,id:t.id,previousId:t.id,previousMode:t.mode}),Pi={ctimeSeconds:0,ctimeNanoseconds:0,mtimeSeconds:0,mtimeNanoseconds:0,dev:0,ino:0,uid:0,gid:0,fileSize:0},Bi=t=>({...Pi,mode:t.mode,id:t.id,flags:{...O,skipWorktree:!0},path:t.path}),zi=t=>t.flags.skipWorktree?{...t,flags:{...t.flags,skipWorktree:!1}}:t,ji=async(t,e)=>{const a=t.layout.workDir,r=await Ia(t);try{const n=(await tt(t)).entries.filter(t=>0===t.flags.stage),s=await(async(t,e,a,r)=>{const n=[],s=[],i=[];for(const o of a){if(Ci(r.matcher,o.path)){n.push(o);continue}const a=Ri(e,o.path),c=await t.fs.exists(a);c&&await ne(t,a,o.id)&&!0!==r.force?i.push(o):s.push({entry:o,present:c})}return{included:n,removable:s,retained:i}})(t,a,n,e),i=await(async(t,e,a)=>{const r=[];for(const{entry:t,present:e}of a.removable)r.push(e?Hi(t):Wi(t));for(const n of a.included){const a=await t.fs.exists(Ri(e,n.path));r.push(a?Wi(n):Fi(n))}const n={add:0,update:0,delete:0,noop:0};for(const t of r)n[t.kind]+=1;return{entries:r,stats:n}})(t,a,s),o=await re(t,{changeset:i,force:!0,workdir:a}),c=((t,e)=>{const a=new Map;for(const t of e)a.set(t.path,t);const r=[];for(const e of t.included)r.push(a.get(e.path)??zi(e));for(const{entry:e}of t.removable)r.push(Bi(e));for(const e of t.retained)r.push(zi(e));return r})(s,o.writtenEntries);return await r.commit(c),{materialized:o.written,removed:o.deleted,retained:s.retained.map(t=>t.path)}}finally{await r.release()}},qi=async(t,e)=>(await(async t=>{await Na(t),await Oa(t,"sparse-checkout"),await _a(t)})(t),"list"===e.action?Gi(t):"set"===e.action?Xi(t,e):"add"===e.action?Ki(t,e):"reapply"===e.action?Zi(t,e):Ji(t,e)),Gi=async t=>{const e=await z(t);if(!0!==e.core?.sparseCheckout)return{kind:"list",cone:!1,patterns:[]};const a=!0===e.core.sparseCheckoutCone,r=await se(t)??"";return"cone"===(n=ie(r,a).spec).mode?{kind:"list",cone:!0,patterns:[...n.recursive].sort()}:{kind:"list",cone:!1,patterns:n.rules.map(t=>t.source)};var n},Vi=(t,e)=>void 0===e?{matcher:t}:{matcher:t,force:e},Yi=async(t,e,a,r)=>{const n=await ji(t,Vi(ue(e),r));return await fe(t,a),await oe(t,{sparseCheckout:"true",sparseCheckoutCone:"cone"===e.mode?"true":"false"}),eo("cone"===e.mode,n)},Xi=async(t,e)=>{if(0===e.patterns.length)throw s("patterns","set requires at least one pattern");const a=await z(t),r=e.cone??a.core?.sparseCheckoutCone??!0,{spec:n,text:i}=Qi(r,e.patterns);return Yi(t,n,i,e.force)},Ki=async(t,e)=>{if(0===e.patterns.length)throw s("patterns","add requires at least one pattern");const a=await z(t);if(!0!==a.core?.sparseCheckout)throw s("action","add requires sparse checkout to be enabled");const r=!0===a.core.sparseCheckoutCone,n=await se(t)??"",{spec:i,text:o}=to(r,n,e.patterns);return Yi(t,i,o,e.force)},Zi=async(t,e)=>{const a=await ht(t);if(void 0===a)throw s("action","reapply requires sparse checkout to be enabled");const r=await z(t),n=await ji(t,Vi(a,e.force));return eo(!0===r.core?.sparseCheckoutCone,n)},Ji=async(t,e)=>{const a=await ji(t,Vi(void 0,e.force));return await oe(t,{sparseCheckout:"false"}),eo(!1,a)},Qi=(t,e)=>{if(t){const t=ce(e);return{spec:t,text:de(t)}}const a=e.join("\n");return{spec:ie(a,!1).spec,text:a}},to=(t,e,a)=>{if(t){const t=ie(e,!0).spec,r="cone"===t.mode?[...t.recursive,...a]:a,n=ce(r);return{spec:n,text:de(n)}}const r=(""===e?a:[e,...a]).join("\n");return{spec:ie(r,!1).spec,text:r}},eo=(t,e)=>({kind:"applied",cone:t,materialized:e.materialized,removed:e.removed,retained:e.retained}),ao="status:scan",ro=async t=>{await Na(t);const e=await Ua(t),a="symbolic"===e.kind?e.target:void 0,r="direct"===e.kind,n=await tt(t).catch(()=>({entries:[]})),s=new Map;for(const t of n.entries)s.set(t.path,t);t.progress.start(ao);try{const e=((t,e)=>{let a=0,r=0;return{tick:()=>{a+=1;const n=Math.floor(a/100);n>r&&(r=n,t.update(e,a))}}})(t.progress,ao),n=(await Promise.all(Array.from(s).map(async([a,r])=>{const n=await so(t,a,r);return e.tick(),n}))).filter(t=>void 0!==t),i=await Ea(t),o=[];for await(const{path:e}of Q(t,{ignore:i}))s.has(e)||o.push({kind:"untracked",path:e});o.sort(no);const c=[...n,...o];return{branch:a,detached:r,indexChanges:[],workingTreeChanges:c,clean:0===c.length}}finally{t.progress.end(ao)}},no=(t,e)=>t.path<e.path?-1:1,so=async(t,e,a)=>{if(!a.flags.skipWorktree)return void 0===await t.fs.lstat(`${t.layout.workDir}/${e}`).catch(()=>{})?{kind:"deleted",path:e}:await oo(t,e,a)?{kind:"modified",path:e}:void 0},io=new TextEncoder,oo=async(t,e,a)=>{try{const r=await Ha(t,Ra(e)),n=io.encode(`blob ${r.byteLength}\0`),s=new Uint8Array(n.byteLength+r.byteLength);return s.set(n,0),s.set(r,n.byteLength),await t.hash.hashHex(s)!==a.id}catch{return!0}},co=async(t,e={})=>{await Na(t);const a=(t=>he(t)?ut.from(t):nt(t))(e.ref??"HEAD"),r=!0===e.recursive,n=[];for await(const s of le(t,{ref:a,recursive:r,...void 0!==e.maxDepth?{maxDepth:e.maxDepth}:{}}))n.push(s);return{kind:"list",entries:n}},fo="refs/tags/",uo=async(t,e)=>(await Na(t),"list"===e.kind?lo(t):"create"===e.kind?ho(t,e):wo(t,e)),lo=async t=>{const e=`${t.layout.gitDir}/refs/tags`;if(!await t.fs.exists(e))return{kind:"list",tags:[]};const a=await t.fs.readdir(e),r=[];for(const e of a){if(!e.isFile)continue;const a=`${fo}${e.name}`,n=await rt(t,a);r.push({name:a,id:n})}return r.sort((t,e)=>t.name<e.name?-1:1),{kind:"list",tags:r}},ho=async(e,a)=>{const r=nt(`${fo}${a.name}`),n=void 0!==a.target?a.target:await mo(e),s=/^[0-9a-f]{40}$/.test(n)?n:await rt(e,n),i=`tag: ${a.name}`;try{await st(e,r,s,!0===a.force?{reflogMessage:i}:{expected:"absent",reflogMessage:i})}catch(e){if(e instanceof t&&"REF_UPDATE_CONFLICT"===e.data.code)throw A(r);throw e}return{kind:"create",name:r,id:s}},wo=async(t,e)=>{const a=nt(`${fo}${e.name}`);if(!await t.fs.exists(`${t.layout.gitDir}/${a}`))throw L(a);return await st(t,a,it,{delete:!0}),{kind:"delete",name:a}},mo=async t=>{const e=await Ua(t);return"direct"===e.kind?e.id:rt(t,e.target)};export{Xa as a,fr as b,gr as c,$r as d,Gr as e,sn as f,Fn as g,vn as h,$n as i,Hn as j,Wn as k,Pn as l,qn as m,ii as n,bi as o,xs as p,_i as q,Xs as r,qi as s,ro as t,co as u,uo as v,Rr as w};
2
+ //# sourceMappingURL=index-Jh5R-UmU.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-Jh5R-UmU.js","sources":["../../../src/domain/diff/error.ts","../../../src/domain/diff/index-diff.ts","../../../src/domain/diff/line-diff.ts","../../../src/domain/ignore/match.ts","../../../src/domain/ignore/matcher-stack.ts","../../../src/domain/pathspec/compile-pathspec.ts","../../../src/domain/pathspec/match-pathspec.ts","../../../src/domain/merge/error.ts","../../../src/domain/merge/merge-types.ts","../../../src/domain/merge/conflict-markers.ts","../../../src/domain/merge/three-way-content.ts","../../../src/domain/merge/three-way-tree.ts","../../../src/domain/protocol/object-filter.ts","../../../src/domain/protocol/receive-pack.ts","../../../src/domain/reflog/approxidate.ts","../../../src/application/commands/internal/read-gitignore.ts","../../../src/application/commands/internal/build-ignore-evaluator.ts","../../../src/application/commands/internal/index-update.ts","../../../src/application/commands/internal/repo-state.ts","../../../src/domain/repository/error.ts","../../../src/application/commands/internal/working-tree.ts","../../../src/application/commands/internal/resolve-pathspec.ts","../../../src/application/commands/add.ts","../../../src/application/commands/branch.ts","../../../src/application/commands/cat-file.ts","../../../src/application/commands/checkout.ts","../../../src/application/commands/internal/bootstrap.ts","../../../src/application/commands/internal/network-pipeline.ts","../../../src/application/commands/internal/refs-discovery.ts","../../../src/application/commands/internal/upload-pack-client.ts","../../../src/application/commands/internal/url-validate.ts","../../../src/application/commands/clone.ts","../../../src/application/commands/internal/commit-message.ts","../../../src/application/commands/internal/merge-state.ts","../../../src/application/commands/commit.ts","../../../src/application/commands/internal/commit-hooks.ts","../../../src/application/commands/diff.ts","../../../src/application/commands/fetch.ts","../../../src/application/commands/fetch-missing.ts","../../../src/application/commands/init.ts","../../../src/application/commands/log.ts","../../../src/application/primitives/flatten-tree.ts","../../../src/application/commands/merge.ts","../../../src/application/commands/internal/refspec.ts","../../../src/application/commands/push.ts","../../../src/application/commands/internal/receive-pack-client.ts","../../../src/application/commands/reflog.ts","../../../src/application/commands/reset.ts","../../../src/application/commands/internal/rev-parse-grammar.ts","../../../src/application/commands/rev-parse.ts","../../../src/application/commands/rm.ts","../../../src/application/commands/internal/apply-sparse-checkout.ts","../../../src/application/commands/sparse-checkout.ts","../../../src/application/commands/status.ts","../../../src/application/commands/internal/progress-tracker.ts","../../../src/application/commands/submodules.ts","../../../src/application/commands/tag.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["invalidDiffInput","reason","TsgitError","code","conflictStageEmissions","conflict","out","undefined","baseId","baseMode","push","id","mode","stage","ourId","ourMode","theirId","theirMode","toIndexEntry","path","emission","statFactory","stat","ctimeSeconds","ctimeNanoseconds","mtimeSeconds","mtimeNanoseconds","dev","ino","uid","gid","fileSize","flags","STAGE0_FLAGS","MAX_LINES","splitLines","bytes","lines","start","i","length","subarray","isBinary","end","Math","min","hasNulInWindow","currentLineBytes","lineCount","exceedsLineCaps","linesEqual","a","b","chooseDown","v","offset","d","k","advanceSnake","oursLines","theirsLines","x","y","buildHunks","edits","hunks","oursCursor","theirsCursor","kind","startOurs","startTheirs","oursStart","oursEnd","theirsStart","theirsEnd","diffLines","ours","theirs","M","N","degraded","myers","maxD","Array","fill","trace","iterationBudget","iterations","snapLen","snapshot","ki","snake","totalD","computeMyersTrace","wholeFileFallback","_M","_N","snap","localOffset","prevK","prevX","prevY","reverse","reconstructEdits","matches","rules","isDir","result","rule","directoryOnly","compiled","test","negated","relativize","basedir","prefix","startsWith","slice","compileOne","raw","body","containsGlob","pattern","isLiteral","compileGlob","anchored","includes","withDirSuffix","matchesPathspec","spec","matched","entry","invalidMergeTree","invalidMergeInput","MAX_CONFLICT_OUTPUT_BYTES","FORBIDDEN_SUBSTRINGS","encoder","TextEncoder","isControlCode","isBidiOrInvisible","validateLabel","label","which","trim","charCodeAt","hasForbiddenChar","marker","hasMarkerSubstring","sumBytes","total","line","concatEnsuringTrailingLf","Uint8Array","inner","last","needsLf","block","set","writeConflictMarkers","options","conflictStyle","oursLabel","labels","theirsLabel","base","openMarker","encode","separator","closeMarker","oursBlock","theirsBlock","output","bytesEqual","lineArraysEqual","concatLines","l","changesFromHunks","sideLines","changes","pending","flush","baseStart","baseEnd","replacement","hunk","max","j","rangesOverlap","findIdenticalTwin","target","candidates","candidate","collidesWithAny","wholeFileConflict","status","conflictType","markedBytes","entriesEqual","enforcePerInputCap","tree","side","entries","size","MAX_FLAT_TREE_ENTRIES","conflictOutcome","modifyDeleteConflict","our","their","type","resolveOneSideAbsent","present","resolvePath","contentMerger","ourEntry","theirEntry","addAddConflict","resolveAddAdd","async","ourUnchanged","theirUnchanged","isSameKind","typeChangeConflict","resolveMode","FILE_MODE","GITLINK","isGitlink","gitlinkConflict","ctx","conflictContent","resolveContentMerge","resolveBothPresent","BLOB_LIMIT_PREFIX","TREE_PREFIX","BLOB_LIMIT_RE","DEPTH_RE","parseObjectFilter","invalidFilterSpec","match","Number","suffix","toLowerCase","sizeMultiplier","isSafeInteger","parseBlobLimit","rest","depth","parseTreeDepth","formatObjectFilter","filter","TEXT_DECODER","TextDecoder","fatal","TEXT_ENCODER","stripTrailingNewline","s","endsWith","parseRefStatusLine","name","accepted","space","indexOf","invalidReportStatus","parseReceivePackResponse","source","pkt","decode","payload","collectDataLines","first","unpack","ok","error","parseUnpackLine","unpackOk","refUpdates","map","unpackError","SECONDS_PER_UNIT","second","minute","hour","day","week","month","year","ISO_RE","RELATIVE_RE","parseApproxidate","text","now","normalized","exec","mo","h","mi","secondOfMinute","isLeapYear","MONTH_LENGTHS","daysInMonth","date","Date","setFullYear","floor","getTime","parseIso","count","unit","secondsPerUnit","parseRelative","readGitignore","dir","loadAndParse","layout","workDir","fs","lstat","err","data","isFile","isSymbolicLink","MAX_GITIGNORE_BYTES","gitignoreFileTooLarge","sanitizedErrorPath","readUtf8","parseGitignore","slash","lastIndexOf","buildRepoIgnorePredicate","evaluator","global","config","readConfig","core","excludesFile","resolved","homeDir","expandUserPath","readGlobalExcludes","info","gitDir","readInfoExclude","root","cache","Map","loadDirRules","cached","get","loaded","buildIgnoreEvaluator","stack","stackedDirs","Set","isDirectory","ancestor","ancestorsOf","has","add","level","relative","r","matchInStack","segments","split","join","resourceLocked","mtimeMs","resource","acquireIndexLock","opts","lockPath","indexPath","lockSuffix","indexFile","breakStaleLockMs","writeExclusive","readLockMtime","maybeBreakStaleLock","makeLock","age","rm","committed","released","release","commit","index","extensions","serializeIndex","checksum","hash","write","rename","HEAD_REF","RefName","from","assertRepository","headPath","exists","bare","assertNotBare","operation","isBare","bareRepository","readHeadRaw","content","refNotFound","parsed","parseLooseRef","PENDING_MARKERS","file","assertNoPendingOperation","Promise","all","m","except","operationInProgress","validatePath","validateWorkingTreePath","repoPath","readFile","rawPath","read","removeFile","full","checkoutOverwriteDirty","PATTERN_ENCODER","resolvePathspec","patterns","enforcePatternBudget","matcher","compilePathspec","literalMustMatch","isPositiveLiteral","e","bodyOf","hasGlob","some","isPositiveGlob","byteLength","invalidOption","countDoubleStars","enforceLiteralMustMatch","literals","matchedSet","lit","pathspecNoMatch","INDEX_MISSING_CODES","paths","addAll","emptyPathspec","dispatchPathspec","allLiteralsAreFiles","addLiteralOnly","addByPathspec","validated","lock","existing","readExistingEntries","newEntries","added","modified","stageOne","previous","values","removed","catch","ignore","combinedIgnore","seen","walkEntry","walkWorkingTree","processWalkEntry","sort","ignoreOverride","collectRemovedPaths","delete","skipWorktree","isPathOrAncestorIgnored","MAX_WORKING_TREE_BLOB_BYTES","workingTreeFileTooLarge","stageFromStat","readIndex","fresh","operationAborted","readContent","writeObject","makeEntry","readlink","ctimeMs","HEADS_PREFIX","branch","action","listBranches","createBranch","deleteBranch","renameBranch","headsDir","branches","head","currentTarget","readdir","resolveRef","current","compareRefName","left","right","validateRefName","startPoint","resolveBranchTarget","reflogMessage","updateRef","force","expected","branchExists","cannotDeleteCheckedOutBranch","branchNotFound","ZERO_OID","to","movedLog","readReflog","writeReflog","writeSymbolicRef","coerceId","ObjectId","catFile","ids","batchOptions","maxBytes","catFileBatch","CHECKOUT_MATERIALIZE_OP","resolvePathSource","readTree","checkout","switchMode","isSwitch","pathsMode","isPaths","progress","treeId","walkTree","DIRECTORY","enumerateSourcePaths","p","pathSet","detached","changedPaths","materializeResult","currentIndex","targetTree","synthesizeTreeFromIndex","materializeTree","forceRewriteAll","materializePathRestoreLockless","newIndexEntries","materializePathRestoreLocked","written","deleted","pathRestore","detach","priorHead","oldOid","branchRef","oid","resolveSwitchOid","loadSparseMatcher","sparse","fromLabel","lastSlash","headCheckoutLabel","writeUtf8","recordRefUpdate","switchBranch","bootstrapRepository","initialBranch","mkdir","rmRecursive","DEFAULT_RETRY","attempts","backoff","baseMs","maxDelayMs","withDefaults","safeLogger","logger","wrapLoggerSanitizer","transport","withRetry","retry","auth","withAuth","withLogging","log","event","sanitizeEvent","url","sanitizeStr","headers","sanitizeHeaders","errorMessage","key","value","Object","toString","padStart","toUpperCase","ACCEPT_HEADER","discoverRefsForService","service","discoveryUrl","buildDiscoveryUrl","response","request","method","accept","signal","statusCode","httpError","pktStream","decodePktStream","readableStreamToAsyncIterable","parseAdvertisedRefs","discoverRefs","selectFetchCapabilities","advertised","clientWants","CLIENT_CAPABILITIES_FETCH","c","AGENT","negotiateProtocolCapabilities","uniqueRefOids","refs","advertisesFilter","capabilities","validateUrl","rejectControlChars","parseUrl","enforceScheme","allowInsecure","rejectFragment","addresses","resolver","hostname","pinnedAddress","pickPinnedAddress","allowPrivateNetworks","invalidUrl","URL","proto","protocol","unsupportedScheme","replace","addr","isBlockedAddress","blockedHost","isBlockedIpv6","isBlockedIpv4","octets","parts","part","n","parseIpv4","lower","dotted","hex","high","parseInt","low","CLONE_DISCOVER_OP","clone","targetDirectoryNotEmpty","remoteAdvertisesNoRefs","filterSpec","bootstrap","fetchAndPropagate","advertisement","remoteFilterUnsupported","wants","packResult","fetchPack","haves","progressOp","promisor","shallow","updateShallow","unshallow","fetchedRefs","writeFetchedRefs","applyRemoteHead","writePromisorConfig","updateConfigEntries","section","subsection","headBranch","headTrackedBranch","ref","remoteRef","writeRef","localRef","tagRef","debug","refPath","ad","symref","find","headOid","logClonedHead","resolveAuthor","input","explicit","configUser","authorUnconfigured","resolveCommitter","author","sanitizeMessage","trimmed","allowEmpty","emptyCommitMessage","mergeHeadPath","mergeMsgPath","mergeHead","ObjectIdFactory","readMergeHead","noVerify","runHook","runPreCommitHook","resolveCommitMessage","toAuthor","user","buildResolverInput","committer","buildCommitterInput","rejectUnmergedIndex","buildTreeFromIndex","parentId","tryResolve","parents","buildParents","getParentTree","nothingToCommit","message","hooks","editMsgPath","args","edited","allowEmptyMessage","applyCommitMsgHook","commitData","extraHeaders","createCommit","commitReflogMessage","clearMergeState","draft","readMergeMsg","subject","unmergedPaths","mergeHasConflicts","email","timestamp","timezoneOffset","obj","readObject","files","subdirs","insertEntry","writeSubtree","node","child","treeEntries","leaf","writeTree","diff","resolveTreeId","diffTrees","detectRenames","FETCH_NEGOTIATE_OP","fetch","remoteName","remote","resolveRemoteUrl","deriveHaves","updatedRefs","applyRemoteRefs","prunedRefs","prune","remoteNotConfigured","partialCloneFilter","seeds","collectRefTips","tip","MAX_HAVES","cappedSeeds","MAX_WALK_SEEDS","walkCommits","ignoreMissing","verifyHash","looseDirs","fullDir","collectFromDir","refPrefix","packed","getRefStore","getPackedRefs","isOid","OID_RE","updates","remoteTargetForRef","oldId","readExistingRef","newId","isSafeRefName","composed","advertisedBranches","remoteDir","deleteUnadvertised","warn","refName","isPackedRefDeleteError","objectExistsLocally","registry","looseObjectPath","lookup","fetchMissingInternal","oids","partialClone","missing","createPackRegistry","collectMissing","requested","fetched","isFileExists","fetchMissing","outcome","noPromisorRemote","createPromisorRemote","attempted","init","startId","resolveStart","exclude","resolveExcluding","excluding","before","yielded","until","order","limit","flattenTree","merge","unsupportedOperation","resolveTarget","mergeBase","noFastForward","fastForwardOnly","nonFastForward","mergeCommit","MERGE_WRITE_FILES_OP","UNSUPPORTED_CONFLICT_TYPES","branchName","treeResult","computeMergeTreeResult","persistConflictState","commitCleanMerge","mergedTree","resolveMergeAuthor","resolveMergeCommitter","ourTreeId","getTree","theirTreeId","baseTreeId","ourFlat","theirFlat","baseFlat","resolve","buildContentMerger","keys","buildUnionPaths","sortedPaths","sortByPath","outcomes","conflicts","extractConflicts","cleanMerge","mergeTrees","synthesiseMergedTree","mergeCtx","_baseStub","_oursStub","_theirsStub","readBlob","oursDiff","theirsDiff","plan","oursChanges","theirsChanges","consumedTheirs","oc","twin","tc","mergePlans","baseLines","cursor","change","applyPlan","mergeContent","leaves","collectLeaves","writeNestedTree","treeDepthExceeded","slashIndex","sub","bucket","partitionByPrefix","subdirEntries","subLeaves","fileEntries","f","rejectUnsupportedConflicts","writeConflictingWorkingTree","oldHeadId","origHeadPath","writeOrigHead","targetId","writeMergeHead","writeMergeMsg","indexEntries","buildConflictIndexEntries","origHead","isExcluded","runBounded","writeOutcomeToTree","writeConflictToTree","items","fn","workers","worker","next","concurrency","blob","writeWorkingTreeFile","removeWorkingTreeFile","materialiseConflictBytes","survivorId","fullPath","parent","parentDir","zeroStat","stage0","skipWorktreeEntry","stageConflicts","seenPaths","pathCmp","comparePaths","conflictsToIndexEntries","combined","cfgUser","authorInput","committerInput","commitId","unexpectedObjectType","expandShort","parseRefspec","refspecInvalid","colonCount","countOccurrences","expanded","src","dst","isDelete","colonAt","srcRaw","dstRaw","ch","PUSH_ENUMERATE_OBJECTS_OP","PUSH_UPLOAD_OP","repeat","REFS_HEADS_PREFIX","SIDE_BAND_CAPS","refspecs","resolveRefspecsInput","adv","discoverReceivePackRefs","movers","resolveAllRefspecs","localOid","remoteOid","pushedRefs","runPrePushHook","sendUpdates","stdin","prePushLine","REMOTE_NAME_RE","remoteByName","buildRemoteMap","resolveOneRefspec","enforceLeaseAndFastForward","lease","resolveLease","isAncestor","pushRejected","emptyReport","forceWithLease","descendant","collectObjects","pack","buildPack","CLIENT_CAPABILITIES_PUSH","selectPushCapabilities","requestBody","req","emptyReceiveUpdates","payloads","u","idx","update","caps","tail","updateLine","framed","encodePktStream","packfile","buildReceivePackRequest","toRefUpdate","postReceivePack","parseReceiveResponse","applyReportStatus","enumeratePushObjects","receivePackUrl","buildReceivePackUrl","baseUrl","invalidBaseUrl","pathname","host","search","byteStream","pkts","hasSideBand","channel1","parseSideBand","onProgress","sanitize","statusByName","updateTrackingCache","resolveUserRef","reflog","runExists","runDelete","runExpire","runShow","stored","lastIndex","_","selector","reflogExists","reflogNotFound","isInteger","reflogEntryOutOfRange","survivors","repairChain","rewrite","following","position","expireCut","resolveCutoff","expire","unreachableCut","expireUnreachable","reachable","collectReachable","targets","listReflogs","kept","keepEntry","cutoff","revparseUnresolved","identity","tips","resolveTips","enumerateRefs","reset","rebuildIndexFromCommit","hardResetFromCommit","buildIndexFromTree","VALID_PEEL_TARGETS","INDEX_STAGE_PATTERN","SHORT_HEX_PATTERN","fail","DIGITS_ONLY_PATTERN","findOperatorStart","parseOperations","parseTilde","op","parseCaret","isDigit","closeIdx","targetStr","digitsStr","revParse","expression","expr","parseIndexStage","at","close","operations","parseReflog","opStart","parseRefOrHex","evaluate","resolveIndexStage","resolveReflogBase","resolveBase","applyOperation","refCandidates","objectNotFound","currentBranchRef","canonicalizeRef","pickByIndex","pickByDate","resolveDirect","validateBaseRef","refResolves","rawDate","getNthParent","cur","peel","object","byPath","joinPath","workdir","rel","isIncluded","deleteEntry","previousId","previousMode","addEntry","noopEntry","ZEROED_STAT","toSkipWorktree","clearSkipWorktree","applySparseCheckout","included","removable","retained","absPath","isWorkingTreeDirty","partition","changeset","stats","noop","buildChangeset","applied","applyChangeset","writtenEntries","writtenByPath","assembleEntries","materialized","sparseCheckout","assertSparseReady","runList","runSet","runAdd","runReapply","runDisable","cone","coneRequested","sparseCheckoutCone","readSparsePatternText","parseSparseCheckout","recursive","applyOpts","applyAndPersist","buildSparseMatcher","writeSparsePatternText","updateCoreConfig","toApplied","useCone","buildSpecAndText","combineSpecAndText","buildConeSpec","serializeCone","dirs","STATUS_SCAN_OP","indexByPath","tracker","reporter","lastEmittedBucket","tick","createGranularityTracker","indexChecks","classifyEntry","untracked","byPathAscending","workingTreeChanges","indexChanges","clean","isModified","HEADER_ENCODER","header","buf","hashHex","submodules","looksLikeObjectId","coerceRef","walkSubmodules","maxDepth","TAGS_PREFIX","tag","listTags","createTag","deleteTag","tags","currentHeadId","tagExists","tagNotFound"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{J as o}from"./error-BN9rdQ33.js";const e=(o,e)=>"object"==typeof o&&null!==o&&Object.hasOwn(o,e),r=()=>{const o=globalThis.process;return!!e(o,"versions")&&e(o.versions,"node")},n=()=>e(globalThis,"window")&&"undefined"!=typeof window&&e(globalThis,"navigator")&&"undefined"!=typeof navigator,s=()=>r()?"node":n()?"browser":"memory",t=Object.freeze({}),i=e=>{const r=e=>(r,n)=>{try{const s=o(r),t=void 0!==n?a(n):void 0;e(s,t)}catch{}},n={};return void 0!==e.debug&&(n.debug=r(e.debug)),void 0!==e.info&&(n.info=r(e.info)),void 0!==e.warn&&(n.warn=r(e.warn)),void 0!==e.error&&(n.error=r(e.error)),Object.freeze(n)},a=e=>{const r={};for(const[n,s]of Object.entries(e))r[n]="string"==typeof s?o(s):s;return r};export{r as a,s as d,n as i,t as n,i as w};
2
- //# sourceMappingURL=logger-BLZbLzva.js.map
1
+ import{L as o}from"./error-MOmSzp9Z.js";const e=(o,e)=>"object"==typeof o&&null!==o&&Object.hasOwn(o,e),r=()=>{const o=globalThis.process;return!!e(o,"versions")&&e(o.versions,"node")},n=()=>e(globalThis,"window")&&"undefined"!=typeof window&&e(globalThis,"navigator")&&"undefined"!=typeof navigator,s=()=>r()?"node":n()?"browser":"memory",t=Object.freeze({}),i=e=>{const r=e=>(r,n)=>{try{const s=o(r),t=void 0!==n?a(n):void 0;e(s,t)}catch{}},n={};return void 0!==e.debug&&(n.debug=r(e.debug)),void 0!==e.info&&(n.info=r(e.info)),void 0!==e.warn&&(n.warn=r(e.warn)),void 0!==e.error&&(n.error=r(e.error)),Object.freeze(n)},a=e=>{const r={};for(const[n,s]of Object.entries(e))r[n]="string"==typeof s?o(s):s;return r};export{r as a,s as d,n as i,t as n,i as w};
2
+ //# sourceMappingURL=logger-DP2cCpvL.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"logger-BLZbLzva.js","sources":["../../../src/adapter-detect.ts","../../../src/ports/logger.ts"],"sourcesContent":[null,null],"names":["hasOwn","obj","key","Object","isNode","proc","globalThis","process","versions","isBrowser","window","navigator","detectRuntime","noopLogger","freeze","wrapLoggerSanitizer","logger","wrapLevel","method","message","context","safeMessage","sanitize","safeContext","undefined","sanitizeContext","wrapped","debug","info","warn","error","out","value","entries"],"mappings":"wCAsBA,MAAMA,EAAS,CAACC,EAAcC,IACb,iBAARD,GAA4B,OAARA,GAAgBE,OAAOH,OAAOC,EAAKC,GAYnDE,EAAS,KAIpB,MAAMC,EAAQC,WAA8CC,QAC5D,QAAKP,EAAOK,EAAM,aACXL,EAAQK,EAAyCG,SAAU,SAUvDC,EAAY,IACvBT,EAAOM,WAAY,WACD,oBAAXI,QACPV,EAAOM,WAAY,cACE,oBAAdK,UAOIC,EAAgB,IACvBR,IAAiB,OACjBK,IAAoB,UACjB,SC9CII,EAAqBV,OAAOW,OAAO,CAAA,GAYnCC,EAAuBC,IAGlC,MAAMC,EACHC,GACD,CAACC,EAAiBC,KAChB,IACE,MAAMC,EAAcC,EAASH,GACvBI,OAA0BC,IAAZJ,EAAwBK,EAAgBL,QAAWI,EACvEN,EAAOG,EAAaE,EACtB,CAAE,MAEF,GAEEG,EAAkB,CAAA,EASxB,YARqBF,IAAjBR,EAAOW,QACRD,EAAwCC,MAAQV,EAAUD,EAAOW,aAChDH,IAAhBR,EAAOY,OACRF,EAAsCE,KAAOX,EAAUD,EAAOY,YAC7CJ,IAAhBR,EAAOa,OACRH,EAAsCG,KAAOZ,EAAUD,EAAOa,YAC5CL,IAAjBR,EAAOc,QACRJ,EAAwCI,MAAQb,EAAUD,EAAOc,QAC7D3B,OAAOW,OAAOY,IAGjBD,EACJL,IAEA,MAAMW,EAA+B,CAAA,EACrC,IAAK,MAAO7B,EAAK8B,KAAU7B,OAAO8B,QAAQb,GACxCW,EAAI7B,GAAwB,iBAAV8B,EAAqBV,EAASU,GAASA,EAE3D,OAAOD"}
1
+ {"version":3,"file":"logger-DP2cCpvL.js","sources":["../../../src/adapter-detect.ts","../../../src/ports/logger.ts"],"sourcesContent":[null,null],"names":["hasOwn","obj","key","Object","isNode","proc","globalThis","process","versions","isBrowser","window","navigator","detectRuntime","noopLogger","freeze","wrapLoggerSanitizer","logger","wrapLevel","method","message","context","safeMessage","sanitize","safeContext","undefined","sanitizeContext","wrapped","debug","info","warn","error","out","value","entries"],"mappings":"wCAsBA,MAAMA,EAAS,CAACC,EAAcC,IACb,iBAARD,GAA4B,OAARA,GAAgBE,OAAOH,OAAOC,EAAKC,GAYnDE,EAAS,KAIpB,MAAMC,EAAQC,WAA8CC,QAC5D,QAAKP,EAAOK,EAAM,aACXL,EAAQK,EAAyCG,SAAU,SAUvDC,EAAY,IACvBT,EAAOM,WAAY,WACD,oBAAXI,QACPV,EAAOM,WAAY,cACE,oBAAdK,UAOIC,EAAgB,IACvBR,IAAiB,OACjBK,IAAoB,UACjB,SC9CII,EAAqBV,OAAOW,OAAO,CAAA,GAYnCC,EAAuBC,IAGlC,MAAMC,EACHC,GACD,CAACC,EAAiBC,KAChB,IACE,MAAMC,EAAcC,EAASH,GACvBI,OAA0BC,IAAZJ,EAAwBK,EAAgBL,QAAWI,EACvEN,EAAOG,EAAaE,EACtB,CAAE,MAEF,GAEEG,EAAkB,CAAA,EASxB,YARqBF,IAAjBR,EAAOW,QACRD,EAAwCC,MAAQV,EAAUD,EAAOW,aAChDH,IAAhBR,EAAOY,OACRF,EAAsCE,KAAOX,EAAUD,EAAOY,YAC7CJ,IAAhBR,EAAOa,OACRH,EAAsCG,KAAOZ,EAAUD,EAAOa,YAC5CL,IAAjBR,EAAOc,QACRJ,EAAwCI,MAAQb,EAAUD,EAAOc,QAC7D3B,OAAOW,OAAOY,IAGjBD,EACJL,IAEA,MAAMW,EAA+B,CAAA,EACrC,IAAK,MAAO7B,EAAK8B,KAAU7B,OAAO8B,QAAQb,GACxCW,EAAI7B,GAAwB,iBAAV8B,EAAqBV,EAASU,GAASA,EAE3D,OAAOD"}
@@ -0,0 +1,2 @@
1
+ import{h as t,i as s,n as e,F as i,m as r,Q as o,z as n,j as a,p as h,w as c}from"./error-MOmSzp9Z.js";class l{constructor(){if("undefined"==typeof CompressionStream||"undefined"==typeof DecompressionStream)throw t("CompressionStream/DecompressionStream unavailable")}deflate=async s=>{try{return await d(s,new CompressionStream("deflate"))}catch(s){throw t(f(s))}};inflate=async t=>{try{return await d(t,new DecompressionStream("deflate"))}catch(t){throw s(f(t))}};streamInflate=async(t,e)=>{const i=t.subarray(e);if(i.length>65536)throw s("MemoryCompressor.streamInflate input exceeds 65536 byte safety cap; use NodeCompressor for real pack files");for(let t=1;t<=i.length;t+=1){const s=i.subarray(0,t);try{return{output:await d(s,new DecompressionStream("deflate")),bytesConsumed:t}}catch{}}throw s("no valid zlib stream at offset")};createInflateStream=()=>new DecompressionStream("deflate")}async function d(t,s){const e=new ReadableStream({start(s){s.enqueue(t),s.close()}}).pipeThrough(s).getReader(),i=[];let r=0;for(;;){const{done:t,value:s}=await e.read();if(t)break;i.push(s),r+=s.length}const o=new Uint8Array(r);let n=0;for(const t of i)o.set(t,n),n+=t.length;return o}function f(t){return t instanceof Error?t.message:String(t)}class m{files=new Map;directories=new Set;symlinks=new Map;times=new Map;rootDir;constructor(t){this.rootDir=t.rootDir,this.directories.add(this.rootDir);for(const[s,e]of Object.entries(t.files??{})){const t=this.resolve(s);this.files.set(t,e.slice()),this.touch(t),this.ensureParentDirs(t)}}read=async t=>{const s=this.resolve(t),i=this.files.get(s);if(void 0===i)throw e(t);return i.slice()};readSlice=async(t,s,r)=>{if(s<0||r<0)throw i(t);const o=this.resolve(t),n=this.files.get(o);if(void 0===n)throw e(t);const a=Math.min(s+r,n.length);return n.slice(s,a)};readUtf8=async t=>{const s=await this.read(t);return(new TextDecoder).decode(s)};write=async(t,s)=>{const e=this.resolve(t);this.ensureParentDirs(e),this.files.set(e,s.slice()),this.touch(e)};writeExclusive=async(t,s)=>{const e=this.resolve(t);if(this.files.has(e)||this.symlinks.has(e))throw r(t);this.ensureParentDirs(e),this.files.set(e,s.slice()),this.touch(e)};writeUtf8=async(t,s)=>{await this.write(t,(new TextEncoder).encode(s))};appendUtf8=async(t,s)=>{const e=await this.readExistingUtf8(t);await this.writeUtf8(t,e+s)};async readExistingUtf8(t){const s=this.files.get(this.resolve(t));return(new TextDecoder).decode(s)}exists=async t=>{const s=this.resolve(t);return this.files.has(s)||this.directories.has(s)||this.symlinks.has(s)};static SYMLINK_FOLLOW_LIMIT=40;stat=async t=>this.statFollowing(t,t,0);async statFollowing(t,s,e){if(e>=m.SYMLINK_FOLLOW_LIMIT)throw o("stat",`symlink loop: ${s}`);const i=this.resolve(t),r=this.symlinks.get(i);return void 0!==r?this.statFollowing(r,s,e+1):this.buildStat(i,s)}lstat=async t=>{const s=this.resolve(t),e=this.symlinks.get(s);return void 0!==e?this.makeStatRecord({size:e.length,isFile:!1,isDirectory:!1,isSymbolicLink:!0,times:this.times.get(s)}):this.buildStat(s,t)};readdir=async t=>{const s=this.resolve(t);if(this.files.has(s))throw n(t);if(!this.directories.has(s))throw n(t);const e=`${s}/`,i=new Map;for(const t of this.files.keys())this.addDirectEntry(t,e,i,"file");for(const t of this.symlinks.keys())this.addDirectEntry(t,e,i,"symlink");for(const t of this.directories)t!==s&&this.addDirectEntry(t,e,i,"directory");return Array.from(i.values())};mkdir=async t=>{const s=this.resolve(t);if(this.files.has(s)||this.symlinks.has(s))throw n(t);this.addDirectoryRecursive(s)};rm=async t=>{const s=this.resolve(t);if(this.files.has(s))return this.files.delete(s),void this.times.delete(s);if(this.symlinks.has(s))return this.symlinks.delete(s),void this.times.delete(s);if(this.directories.has(s)){if(this.hasChildren(s))throw a(t);return this.directories.delete(s),void this.times.delete(s)}throw e(t)};rename=async(t,s)=>{const i=this.resolve(t),r=this.resolve(s),o=this.files.get(i),n=this.symlinks.get(i);if(void 0===o&&void 0===n)throw e(t);const a=this.times.get(i);this.ensureParentDirs(r),this.files.delete(r),this.symlinks.delete(r),this.times.delete(r),void 0!==o&&(this.files.delete(i),this.files.set(r,o)),void 0!==n&&(this.symlinks.delete(i),this.symlinks.set(r,n)),this.times.delete(i),this.times.set(r,a)};readlink=async t=>{const s=this.resolve(t),i=this.symlinks.get(s);if(void 0===i)throw e(t);return i};symlink=async(t,s)=>{const e=this.resolve(s);if(this.files.has(e)||this.symlinks.has(e)||this.directories.has(e))throw r(s);this.ensureParentDirs(e),this.symlinks.set(e,t),this.touch(e)};chmod=async(t,s)=>{this.resolve(t)};rmRecursive=async t=>{const s=this.resolve(t);this.removeLeafEntry(s)||this.directories.has(s)&&this.removeSubtree(s)};removeLeafEntry(t){return this.files.has(t)?(this.files.delete(t),this.times.delete(t),!0):!!this.symlinks.has(t)&&(this.symlinks.delete(t),this.times.delete(t),!0)}removeSubtree(t){const s=`${t}/`,e=y(this.files.keys(),s),i=y(this.symlinks.keys(),s),r=function(t,s,e){const i=[];for(const r of t)(r===s||r.startsWith(e))&&i.push(r);return i}(this.directories,t,s);w(e,this.files,this.times),w(i,this.symlinks,this.times),function(t,s,e){for(const i of t)s.delete(i),e.delete(i)}(r,this.directories,this.times)}openWithNoFollow=async(t,s)=>{const r=this.resolve(t);if(this.symlinks.has(r))throw i(t);if(!this.files.has(r))throw e(t);return this.makeMemoryHandle(r)};makeMemoryHandle(t){return{read:async(s,e,i,r)=>{const o=this.files.get(t),n=r??0,a=Math.min(n+i,o.length),h=o.subarray(n,Math.max(n,a));return s.set(h,e),h.length},write:async s=>{this.files.set(t,s.slice()),this.touch(t)},stat:async()=>this.buildStat(t,t),close:async()=>{}}}resolve(t){const s=function(t,s){const e=(s.startsWith("/")?s:`${t}/${s}`).split("/"),i=[];for(const t of e)""!==t&&"."!==t&&(".."!==t?i.push(t):i.pop());return`/${i.join("/")}`}(this.rootDir,t);if(s!==this.rootDir&&!s.startsWith(`${this.rootDir}/`))throw i(t);return s}ensureParentDirs(t){this.addDirectoryRecursive(u(t))}addDirectoryRecursive(t){let s=t;for(;s.length>=this.rootDir.length;){if(this.files.has(s)||this.symlinks.has(s))throw n(s);if(this.directories.add(s),s===this.rootDir)break;s=u(s)}}touch(t){const s=Date.now();this.times.set(t,{ctimeMs:s,mtimeMs:s})}buildStat(t,s){const i=this.files.get(t);if(void 0!==i)return this.makeStatRecord({size:i.byteLength,isFile:!0,isDirectory:!1,isSymbolicLink:!1,times:this.times.get(t)});if(this.directories.has(t))return this.makeStatRecord({size:0,isFile:!1,isDirectory:!0,isSymbolicLink:!1,times:this.times.get(t)});throw e(s)}makeStatRecord(t){const s=t.times??{ctimeMs:0,mtimeMs:0};return{ctimeMs:s.ctimeMs,mtimeMs:s.mtimeMs,dev:0,ino:0,mode:33188,uid:0,gid:0,size:t.size,isFile:t.isFile,isDirectory:t.isDirectory,isSymbolicLink:t.isSymbolicLink}}hasChildren(t){const s=`${t}/`;for(const t of this.files.keys())if(t.startsWith(s))return!0;for(const t of this.symlinks.keys())if(t.startsWith(s))return!0;for(const e of this.directories)if(e!==t&&e.startsWith(s))return!0;return!1}addDirectEntry(t,s,e,i){if(!t.startsWith(s))return;const r=t.slice(s.length),o=r.indexOf("/"),n=-1===o?r:r.slice(0,o);e.has(n)||e.set(n,-1!==o?{name:n,isFile:!1,isDirectory:!0,isSymbolicLink:!1}:{name:n,isFile:"file"===i,isDirectory:"directory"===i,isSymbolicLink:"symlink"===i})}}function u(t){return t.slice(0,t.lastIndexOf("/"))}function y(t,s){const e=[];for(const i of t)i.startsWith(s)&&e.push(i);return e}function w(t,s,e){for(const i of t)s.delete(i),e.delete(i)}const g={sha1:"SHA-1",sha256:"SHA-256"},k={sha1:20,sha256:32};class v{algorithm;digestLength;subtleAlgo;subtle;constructor(t="sha1"){const s=globalThis.crypto?.subtle;if(void 0===s)throw h("crypto.subtle unavailable");this.subtle=s,this.algorithm=t,this.digestLength=k[t],this.subtleAlgo=g[t]}hash=async t=>{const s=await this.subtle.digest(this.subtleAlgo,t);return new Uint8Array(s)};hashHex=async t=>p(await this.hash(t));createHasher=()=>{const t=[],s=this.subtle,e=this.subtleAlgo;let i=!1;const r=async()=>{if(i)throw h("cannot digest after digest");i=!0;const r=t.reduce((t,s)=>t+s.length,0),o=new Uint8Array(r);let n=0;for(const s of t)o.set(s,n),n+=s.length;const a=await s.digest(e,o);return new Uint8Array(a)};return{update:s=>{if(i)throw h("cannot update after digest");t.push(s.slice())},digest:r,digestHex:async()=>p(await r())}}}function p(t){let s="";for(const e of t)s+=e.toString(16).padStart(2,"0");return s}class b{mocks=new Map;request=async t=>{const s=D(t.method,t.url),e=this.mocks.get(s);if(void 0===e)throw c(`no mock for ${t.url}`);const i=e.body.slice();return{statusCode:e.statusCode,headers:e.headers,body:new ReadableStream({start(t){t.enqueue(i),t.close()}})}};addMockResponse(t){const s={};for(const[e,i]of Object.entries(t.response.headers))s[e.toLowerCase()]=i;this.mocks.set(D(t.method,t.url),{statusCode:t.response.statusCode,headers:s,body:t.response.body.slice()})}clearMocks(){this.mocks.clear()}}function D(t,s){return`${t}:${s}`}export{l as M,m as a,v as b,b as c};
2
+ //# sourceMappingURL=memory-http-transport-COJU6VOL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-http-transport-COJU6VOL.js","sources":["../../../src/adapters/memory/memory-compressor.ts","../../../src/adapters/memory/memory-file-system.ts","../../../src/adapters/memory/memory-hash-service.ts","../../../src/adapters/memory/memory-http-transport.ts"],"sourcesContent":[null,null,null,null],"names":["MemoryCompressor","constructor","CompressionStream","DecompressionStream","compressFailed","deflate","async","data","runTransform","err","describeError","inflate","decompressFailed","streamInflate","bytes","offset","slice","subarray","length","end","attempt","output","bytesConsumed","createInflateStream","transform","reader","ReadableStream","start","controller","enqueue","close","pipeThrough","getReader","chunks","total","done","value","read","push","out","Uint8Array","chunk","set","Error","message","String","MemoryFileSystem","files","Map","directories","Set","symlinks","times","rootDir","options","this","add","key","Object","entries","normalized","resolve","touch","ensureParentDirs","path","stored","get","undefined","fileNotFound","readSlice","permissionDenied","Math","min","readUtf8","TextDecoder","decode","write","writeExclusive","has","fileExists","writeUtf8","content","TextEncoder","encode","appendUtf8","existing","readExistingUtf8","exists","static","stat","statFollowing","currentPath","originalPath","hops","SYMLINK_FOLLOW_LIMIT","unsupportedOperation","target","buildStat","lstat","makeStatRecord","size","isFile","isDirectory","isSymbolicLink","readdir","notADirectory","prefix","seen","filePath","keys","addDirectEntry","linkPath","dirPath","Array","from","values","mkdir","addDirectoryRecursive","rm","delete","hasChildren","directoryNotEmpty","rename","src","dst","normalizedSrc","normalizedDst","fileBytes","linkTarget","timestamp","readlink","symlink","chmod","_mode","rmRecursive","removeLeafEntry","removeSubtree","matchingFiles","collectStartsWith","matchingLinks","matchingDirs","dirs","exact","startsWith","collectMatchingDirs","deleteAll","deleteAllFromSet","openWithNoFollow","makeMemoryHandle","buffer","position","max","segments","split","resolved","segment","pop","join","normalizePath","normalizedPath","parentOf","current","now","Date","ctimeMs","mtimeMs","byteLength","parts","timestamps","dev","ino","mode","uid","gid","fullPath","kind","remainder","slashIndex","indexOf","name","lastIndexOf","map","SUBTLE_ALGO","sha1","sha256","DIGEST_LENGTH","MemoryHashService","algorithm","digestLength","subtleAlgo","subtle","globalThis","crypto","hashFailed","hash","digest","hashHex","bytesToHex","createHasher","algo","consumed","doDigest","reduce","sum","concatenated","result","update","digestHex","byte","toString","padStart","MemoryHttpTransport","mocks","request","req","buildKey","method","url","mock","networkError","bodyBytes","body","statusCode","headers","addMockResponse","lowercasedHeaders","response","toLowerCase","clearMocks","clear"],"mappings":"6GAUaA,EACX,WAAAC,GACE,GAAiC,oBAAtBC,mBAAoE,oBAAxBC,oBACrD,MAAMC,EAAe,oDAEzB,CAEAC,QAAUC,MAAOC,IACf,IACE,aAAaC,EAAaD,EAAM,IAAIL,kBAAkB,WACxD,CAAE,MAAOO,GACP,MAAML,EAAeM,EAAcD,GACrC,GAGFE,QAAUL,MAAOC,IACf,IACE,aAAaC,EAAaD,EAAM,IAAIJ,oBAAoB,WAC1D,CAAE,MAAOM,GACP,MAAMG,EAAiBF,EAAcD,GACvC,GAGFI,cAAgBP,MAAOQ,EAAmBC,KAMxC,MAAMC,EAAQF,EAAMG,SAASF,GAC7B,GAAIC,EAAME,OAhC0B,MAiClC,MAAMN,EACJ,8GAGJ,IAAK,IAAIO,EAAM,EAAGA,GAAOH,EAAME,OAAQC,GAAO,EAAG,CAC/C,MAAMC,EAAUJ,EAAMC,SAAS,EAAGE,GAClC,IAEE,MAAO,CAAEE,aADYb,EAAaY,EAAS,IAAIjB,oBAAoB,YAClDmB,cAAeH,EAClC,CAAE,MAEF,CACF,CACA,MAAMP,EAAiB,mCAGzBW,oBAAsB,IACb,IAAIpB,oBAAoB,WAInCG,eAAeE,EACbD,EACAiB,GAEA,MASMC,EATS,IAAIC,eAA2B,CAC5C,KAAAC,CAAMC,GACJA,EAAWC,QAAQtB,GACnBqB,EAAWE,OACb,IAEoBC,YACpBP,GAEoBQ,YAChBC,EAAuB,GAC7B,IAAIC,EAAQ,EACZ,OAAa,CACX,MAAMC,KAAEA,EAAIC,MAAEA,SAAgBX,EAAOY,OACrC,GAAIF,EAAM,MACVF,EAAOK,KAAKF,GACZF,GAASE,EAAMlB,MACjB,CACA,MAAMqB,EAAM,IAAIC,WAAWN,GAC3B,IAAInB,EAAS,EACb,IAAK,MAAM0B,KAASR,EAClBM,EAAIG,IAAID,EAAO1B,GACfA,GAAU0B,EAAMvB,OAElB,OAAOqB,CACT,CAEA,SAAS7B,EAAcD,GACrB,OAAOA,aAAekC,MAAQlC,EAAImC,QAAUC,OAAOpC,EACrD,OCzEaqC,EACMC,MAAQ,IAAIC,IACZC,YAAc,IAAIC,IAClBC,SAAW,IAAIH,IACfI,MAAQ,IAAIJ,IACZK,QAEjB,WAAApD,CAAYqD,GACVC,KAAKF,QAAUC,EAAQD,QACvBE,KAAKN,YAAYO,IAAID,KAAKF,SAC1B,IAAK,MAAOI,EAAKrB,KAAUsB,OAAOC,QAAQL,EAAQP,OAAS,CAAA,GAAK,CAC9D,MAAMa,EAAaL,KAAKM,QAAQJ,GAChCF,KAAKR,MAAML,IAAIkB,EAAYxB,EAAMpB,SACjCuC,KAAKO,MAAMF,GACXL,KAAKQ,iBAAiBH,EACxB,CACF,CAEAvB,KAAO/B,MAAO0D,IACZ,MAAMJ,EAAaL,KAAKM,QAAQG,GAC1BC,EAASV,KAAKR,MAAMmB,IAAIN,GAC9B,QAAeO,IAAXF,EACF,MAAMG,EAAaJ,GAErB,OAAOC,EAAOjD,SAGhBqD,UAAY/D,MAAO0D,EAAcjD,EAAgBG,KAC/C,GAAIH,EAAS,GAAKG,EAAS,EACzB,MAAMoD,EAAiBN,GAEzB,MAAMJ,EAAaL,KAAKM,QAAQG,GAC1BC,EAASV,KAAKR,MAAMmB,IAAIN,GAC9B,QAAeO,IAAXF,EACF,MAAMG,EAAaJ,GAErB,MAAM7C,EAAMoD,KAAKC,IAAIzD,EAASG,EAAQ+C,EAAO/C,QAC7C,OAAO+C,EAAOjD,MAAMD,EAAQI,IAG9BsD,SAAWnE,MAAO0D,IAChB,MAAMlD,QAAcyC,KAAKlB,KAAK2B,GAC9B,OAAO,IAAIU,aAAcC,OAAO7D,IAGlC8D,MAAQtE,MAAO0D,EAAczD,KAC3B,MAAMqD,EAAaL,KAAKM,QAAQG,GAChCT,KAAKQ,iBAAiBH,GACtBL,KAAKR,MAAML,IAAIkB,EAAYrD,EAAKS,SAChCuC,KAAKO,MAAMF,IAGbiB,eAAiBvE,MAAO0D,EAAczD,KACpC,MAAMqD,EAAaL,KAAKM,QAAQG,GAChC,GAAIT,KAAKR,MAAM+B,IAAIlB,IAAeL,KAAKJ,SAAS2B,IAAIlB,GAClD,MAAMmB,EAAWf,GAEnBT,KAAKQ,iBAAiBH,GACtBL,KAAKR,MAAML,IAAIkB,EAAYrD,EAAKS,SAChCuC,KAAKO,MAAMF,IAGboB,UAAY1E,MAAO0D,EAAciB,WACzB1B,KAAKqB,MAAMZ,GAAM,IAAIkB,aAAcC,OAAOF,KAGlDG,WAAa9E,MAAO0D,EAAciB,KAChC,MAAMI,QAAiB9B,KAAK+B,iBAAiBtB,SACvCT,KAAKyB,UAAUhB,EAAMqB,EAAWJ,IAGhC,sBAAMK,CAAiBtB,GAC7B,MAAMC,EAASV,KAAKR,MAAMmB,IAAIX,KAAKM,QAAQG,IAG3C,OAAO,IAAIU,aAAcC,OAAOV,EAClC,CAEAsB,OAASjF,MAAO0D,IACd,MAAMJ,EAAaL,KAAKM,QAAQG,GAChC,OACET,KAAKR,MAAM+B,IAAIlB,IACfL,KAAKN,YAAY6B,IAAIlB,IACrBL,KAAKJ,SAAS2B,IAAIlB,IAKd4B,4BAAuC,GAE/CC,KAAOnF,MAAO0D,GACLT,KAAKmC,cAAc1B,EAAMA,EAAM,GAGhC,mBAAM0B,CACZC,EACAC,EACAC,GAEA,GAAIA,GAAQ/C,EAAiBgD,qBAE3B,MAAMC,EAAqB,OAAQ,iBAAiBH,KAEtD,MAAMhC,EAAaL,KAAKM,QAAQ8B,GAC1BK,EAASzC,KAAKJ,SAASe,IAAIN,GACjC,YAAeO,IAAX6B,EACKzC,KAAKmC,cAAcM,EAAQJ,EAAcC,EAAO,GAElDtC,KAAK0C,UAAUrC,EAAYgC,EACpC,CAEAM,MAAQ5F,MAAO0D,IACb,MAAMJ,EAAaL,KAAKM,QAAQG,GAC1BgC,EAASzC,KAAKJ,SAASe,IAAIN,GACjC,YAAeO,IAAX6B,EACKzC,KAAK4C,eAAe,CACzBC,KAAMJ,EAAO9E,OACbmF,QAAQ,EACRC,aAAa,EACbC,gBAAgB,EAChBnD,MAAOG,KAAKH,MAAMc,IAAIN,KAGnBL,KAAK0C,UAAUrC,EAAYI,IAGpCwC,QAAUlG,MAAO0D,IACf,MAAMJ,EAAaL,KAAKM,QAAQG,GAEhC,GAAIT,KAAKR,MAAM+B,IAAIlB,GACjB,MAAM6C,EAAczC,GAEtB,IAAKT,KAAKN,YAAY6B,IAAIlB,GACxB,MAAM6C,EAAczC,GAItB,MAAM0C,EAAS,GAAG9C,KACZ+C,EAAO,IAAI3D,IACjB,IAAK,MAAM4D,KAAYrD,KAAKR,MAAM8D,OAChCtD,KAAKuD,eAAeF,EAAUF,EAAQC,EAAM,QAE9C,IAAK,MAAMI,KAAYxD,KAAKJ,SAAS0D,OACnCtD,KAAKuD,eAAeC,EAAUL,EAAQC,EAAM,WAE9C,IAAK,MAAMK,KAAWzD,KAAKN,YAErB+D,IAAYpD,GAChBL,KAAKuD,eAAeE,EAASN,EAAQC,EAAM,aAE7C,OAAOM,MAAMC,KAAKP,EAAKQ,WAGzBC,MAAQ9G,MAAO0D,IACb,MAAMJ,EAAaL,KAAKM,QAAQG,GAEhC,GAAIT,KAAKR,MAAM+B,IAAIlB,IAAeL,KAAKJ,SAAS2B,IAAIlB,GAClD,MAAM6C,EAAczC,GAEtBT,KAAK8D,sBAAsBzD,IAG7B0D,GAAKhH,MAAO0D,IACV,MAAMJ,EAAaL,KAAKM,QAAQG,GAChC,GAAIT,KAAKR,MAAM+B,IAAIlB,GAGjB,OAFAL,KAAKR,MAAMwE,OAAO3D,QAClBL,KAAKH,MAAMmE,OAAO3D,GAGpB,GAAIL,KAAKJ,SAAS2B,IAAIlB,GAGpB,OAFAL,KAAKJ,SAASoE,OAAO3D,QACrBL,KAAKH,MAAMmE,OAAO3D,GAGpB,GAAIL,KAAKN,YAAY6B,IAAIlB,GAAa,CACpC,GAAIL,KAAKiE,YAAY5D,GAInB,MAAM6D,EAAkBzD,GAI1B,OAFAT,KAAKN,YAAYsE,OAAO3D,QACxBL,KAAKH,MAAMmE,OAAO3D,EAEpB,CACA,MAAMQ,EAAaJ,IAGrB0D,OAASpH,MAAOqH,EAAaC,KAC3B,MAAMC,EAAgBtE,KAAKM,QAAQ8D,GAC7BG,EAAgBvE,KAAKM,QAAQ+D,GAC7BG,EAAYxE,KAAKR,MAAMmB,IAAI2D,GAC3BG,EAAazE,KAAKJ,SAASe,IAAI2D,GACrC,QAAkB1D,IAAd4D,QAA0C5D,IAAf6D,EAC7B,MAAM5D,EAAauD,GAIrB,MAAMM,EAAY1E,KAAKH,MAAMc,IAAI2D,GACjCtE,KAAKQ,iBAAiB+D,GACtBvE,KAAKR,MAAMwE,OAAOO,GAClBvE,KAAKJ,SAASoE,OAAOO,GACrBvE,KAAKH,MAAMmE,OAAOO,QACA3D,IAAd4D,IACFxE,KAAKR,MAAMwE,OAAOM,GAClBtE,KAAKR,MAAML,IAAIoF,EAAeC,SAEb5D,IAAf6D,IACFzE,KAAKJ,SAASoE,OAAOM,GACrBtE,KAAKJ,SAAST,IAAIoF,EAAeE,IAEnCzE,KAAKH,MAAMmE,OAAOM,GAClBtE,KAAKH,MAAMV,IAAIoF,EAAeG,IAGhCC,SAAW5H,MAAO0D,IAChB,MAAMJ,EAAaL,KAAKM,QAAQG,GAC1BgC,EAASzC,KAAKJ,SAASe,IAAIN,GACjC,QAAeO,IAAX6B,EACF,MAAM5B,EAAaJ,GAErB,OAAOgC,GAGTmC,QAAU7H,MAAO0F,EAAgBhC,KAC/B,MAAMJ,EAAaL,KAAKM,QAAQG,GAChC,GACET,KAAKR,MAAM+B,IAAIlB,IACfL,KAAKJ,SAAS2B,IAAIlB,IAClBL,KAAKN,YAAY6B,IAAIlB,GAErB,MAAMmB,EAAWf,GAEnBT,KAAKQ,iBAAiBH,GACtBL,KAAKJ,SAAST,IAAIkB,EAAYoC,GAC9BzC,KAAKO,MAAMF,IAGbwE,MAAQ9H,MAAO0D,EAAcqE,KAC3B9E,KAAKM,QAAQG,IAGfsE,YAAchI,MAAO0D,IACnB,MAAMJ,EAAaL,KAAKM,QAAQG,GAC5BT,KAAKgF,gBAAgB3E,IAGpBL,KAAKN,YAAY6B,IAAIlB,IAC1BL,KAAKiF,cAAc5E,IAGb,eAAA2E,CAAgB3E,GACtB,OAAIL,KAAKR,MAAM+B,IAAIlB,IACjBL,KAAKR,MAAMwE,OAAO3D,GAClBL,KAAKH,MAAMmE,OAAO3D,IAEX,KAELL,KAAKJ,SAAS2B,IAAIlB,KAEpBL,KAAKJ,SAASoE,OAAO3D,GACrBL,KAAKH,MAAMmE,OAAO3D,IAEX,EAGX,CAEQ,aAAA4E,CAAc5E,GACpB,MAAM8C,EAAS,GAAG9C,KACZ6E,EAAgBC,EAAkBnF,KAAKR,MAAM8D,OAAQH,GACrDiC,EAAgBD,EAAkBnF,KAAKJ,SAAS0D,OAAQH,GACxDkC,EAiMV,SAA6BC,EAAwBC,EAAepC,GAElE,MAAMnE,EAAgB,GACtB,IAAK,MAAMkB,KAAOoF,GACZpF,IAAQqF,GAASrF,EAAIsF,WAAWrC,KAASnE,EAAID,KAAKmB,GAExD,OAAOlB,CACT,CAxMyByG,CAAoBzF,KAAKN,YAAaW,EAAY8C,GACvEuC,EAAUR,EAAelF,KAAKR,MAAOQ,KAAKH,OAC1C6F,EAAUN,EAAepF,KAAKJ,SAAUI,KAAKH,OAmNjD,SACEyD,EACAnE,EACAU,GAEA,IAAK,MAAMK,KAAOoD,EAChBnE,EAAI6E,OAAO9D,GACXL,EAAMmE,OAAO9D,EAEjB,CA3NIyF,CAAiBN,EAAcrF,KAAKN,YAAaM,KAAKH,MACxD,CAEA+F,iBAAmB7I,MAAO0D,EAAcqE,KACtC,MAAMzE,EAAaL,KAAKM,QAAQG,GAChC,GAAIT,KAAKJ,SAAS2B,IAAIlB,GAEpB,MAAMU,EAAiBN,GAEzB,IAAKT,KAAKR,MAAM+B,IAAIlB,GAClB,MAAMQ,EAAaJ,GAErB,OAAOT,KAAK6F,iBAAiBxF,IAGvB,gBAAAwF,CAAiBxF,GACvB,MAAO,CACLvB,KAAM/B,MAAO+I,EAAQtI,EAAQG,EAAQoI,KACnC,MAAMrF,EAASV,KAAKR,MAAMmB,IAAIN,GACxBjC,EAAQ2H,GAAY,EAEpBnI,EAAMoD,KAAKC,IAAI7C,EAAQT,EAAQ+C,EAAO/C,QACtCuB,EAAQwB,EAAOhD,SAASU,EAAO4C,KAAKgF,IAAI5H,EAAOR,IAErD,OADAkI,EAAO3G,IAAID,EAAO1B,GACX0B,EAAMvB,QAEf0D,MAAOtE,MAAOC,IACZgD,KAAKR,MAAML,IAAIkB,EAAYrD,EAAKS,SAChCuC,KAAKO,MAAMF,IAEb6B,KAAMnF,SAAYiD,KAAK0C,UAAUrC,EAAYA,GAC7C9B,MAAOxB,YAIX,CAEQ,OAAAuD,CAAQG,GACd,MAAMJ,EAwHV,SAAuBP,EAAiBW,GACtC,MACMwF,GADSxF,EAAK+E,WAAW,KAAO/E,EAAO,GAAGX,KAAWW,KACnCyF,MAAM,KACxBC,EAAqB,GAC3B,IAAK,MAAMC,KAAWH,EACJ,KAAZG,GAA8B,MAAZA,IACN,OAAZA,EAIJD,EAASpH,KAAKqH,GAHZD,EAASE,OAKb,MAAO,IAAIF,EAASG,KAAK,MAC3B,CArIuBC,CAAcvG,KAAKF,QAASW,GAC/C,GAAIJ,IAAeL,KAAKF,UAAYO,EAAWmF,WAAW,GAAGxF,KAAKF,YAChE,MAAMiB,EAAiBN,GAEzB,OAAOJ,CACT,CAEQ,gBAAAG,CAAiBgG,GACvBxG,KAAK8D,sBAAsB2C,EAASD,GACtC,CAEQ,qBAAA1C,CAAsB0C,GAC5B,IAAIE,EAAUF,EAKd,KAAOE,EAAQ/I,QAAUqC,KAAKF,QAAQnC,QAAQ,CAC5C,GAAIqC,KAAKR,MAAM+B,IAAImF,IAAY1G,KAAKJ,SAAS2B,IAAImF,GAC/C,MAAMxD,EAAcwD,GAGtB,GADA1G,KAAKN,YAAYO,IAAIyG,GACjBA,IAAY1G,KAAKF,QAAS,MAC9B4G,EAAUD,EAASC,EACrB,CACF,CAEQ,KAAAnG,CAAMiG,GACZ,MAAMG,EAAMC,KAAKD,MACjB3G,KAAKH,MAAMV,IAAIqH,EAAgB,CAAEK,QAASF,EAAKG,QAASH,GAC1D,CAEQ,SAAAjE,CAAUrC,EAAoBI,GACpC,MAAM+D,EAAYxE,KAAKR,MAAMmB,IAAIN,GACjC,QAAkBO,IAAd4D,EACF,OAAOxE,KAAK4C,eAAe,CACzBC,KAAM2B,EAAUuC,WAChBjE,QAAQ,EACRC,aAAa,EACbC,gBAAgB,EAChBnD,MAAOG,KAAKH,MAAMc,IAAIN,KAG1B,GAAIL,KAAKN,YAAY6B,IAAIlB,GACvB,OAAOL,KAAK4C,eAAe,CACzBC,KAAM,EACNC,QAAQ,EACRC,aAAa,EACbC,gBAAgB,EAChBnD,MAAOG,KAAKH,MAAMc,IAAIN,KAG1B,MAAMQ,EAAaJ,EACrB,CAEQ,cAAAmC,CAAeoE,GAOrB,MAAMC,EAAaD,EAAMnH,OAAS,CAAEgH,QAAS,EAAGC,QAAS,GACzD,MAAO,CACLD,QAASI,EAAWJ,QACpBC,QAASG,EAAWH,QACpBI,IAAK,EACLC,IAAK,EACLC,KA/XmB,MAgYnBC,IAAK,EACLC,IAAK,EACLzE,KAAMmE,EAAMnE,KACZC,OAAQkE,EAAMlE,OACdC,YAAaiE,EAAMjE,YACnBC,eAAgBgE,EAAMhE,eAE1B,CAEQ,WAAAiB,CAAYR,GAClB,MAAMN,EAAS,GAAGM,KAClB,IAAK,MAAMvD,KAAOF,KAAKR,MAAM8D,OAC3B,GAAIpD,EAAIsF,WAAWrC,GAAS,OAAO,EAErC,IAAK,MAAMjD,KAAOF,KAAKJ,SAAS0D,OAC9B,GAAIpD,EAAIsF,WAAWrC,GAAS,OAAO,EAErC,IAAK,MAAMjD,KAAOF,KAAKN,YAErB,GAAIQ,IAAQuD,GAAWvD,EAAIsF,WAAWrC,GAAS,OAAO,EAExD,OAAO,CACT,CAEQ,cAAAI,CACNgE,EACApE,EACAC,EACAoE,GAEA,IAAKD,EAAS/B,WAAWrC,GAAS,OAClC,MAAMsE,EAAYF,EAAS9J,MAAM0F,EAAOxF,QAGlC+J,EAAaD,EAAUE,QAAQ,KAC/BC,OAAOF,EAAoBD,EAAYA,EAAUhK,MAAM,EAAGiK,GAE5DtE,EAAK7B,IAAIqG,IAUbxE,EAAKjE,IAAIyI,GATuB,IAAfF,EAEb,CAAEE,OAAM9E,QAAQ,EAAOC,aAAa,EAAMC,gBAAgB,GAC1D,CACE4E,OACA9E,OAAiB,SAAT0E,EACRzE,YAAsB,cAATyE,EACbxE,eAAyB,YAATwE,GAGxB,EAsBF,SAASf,EAASD,GAChB,OAAOA,EAAe/I,MAAM,EAAG+I,EAAeqB,YAAY,KAC5D,CAEA,SAAS1C,EAAkB7B,EAAwBH,GAEjD,MAAMnE,EAAgB,GACtB,IAAK,MAAMkB,KAAOoD,EACZpD,EAAIsF,WAAWrC,IAASnE,EAAID,KAAKmB,GAEvC,OAAOlB,CACT,CAWA,SAAS0G,EACPpC,EACAwE,EACAjI,GAEA,IAAK,MAAMK,KAAOoD,EAChBwE,EAAI9D,OAAO9D,GACXL,EAAMmE,OAAO9D,EAEjB,CClfA,MAAM6H,EAAyC,CAC7CC,KAAM,QACNC,OAAQ,WAGJC,EAA4C,CAChDF,KAAM,GACNC,OAAQ,UAGGE,EACFC,UACAC,aACQC,WACAC,OAEjB,WAAA7L,CAAY0L,EAAuB,QACjC,MAAMG,EAASC,WAAWC,QAAQF,OAClC,QAAe3H,IAAX2H,EACF,MAAMG,EAAW,6BAEnB1I,KAAKuI,OAASA,EACdvI,KAAKoI,UAAYA,EACjBpI,KAAKqI,aAAeH,EAAcE,GAClCpI,KAAKsI,WAAaP,EAAYK,EAChC,CAEAO,KAAO5L,MAAOC,IACZ,MAAM8I,QAAe9F,KAAKuI,OAAOK,OAAO5I,KAAKsI,WAAYtL,GACzD,OAAO,IAAIiC,WAAW6G,IAGxB+C,QAAU9L,MAAOC,GAER8L,QADa9I,KAAK2I,KAAK3L,IAIhC+L,aAAe,KACb,MAAMrK,EAAuB,GACvB6J,EAASvI,KAAKuI,OACdS,EAAOhJ,KAAKsI,WAClB,IAAIW,GAAW,EAEf,MAAMC,EAAWnM,UACf,GAAIkM,EACF,MAAMP,EAAW,8BAEnBO,GAAW,EACX,MAAMtK,EAAQD,EAAOyK,OAAO,CAACC,EAAKlK,IAAUkK,EAAMlK,EAAMvB,OAAQ,GAC1D0L,EAAe,IAAIpK,WAAWN,GACpC,IAAInB,EAAS,EACb,IAAK,MAAM0B,KAASR,EAClB2K,EAAalK,IAAID,EAAO1B,GACxBA,GAAU0B,EAAMvB,OAElB,MAAM2L,QAAef,EAAOK,OAAOI,EAAMK,GACzC,OAAO,IAAIpK,WAAWqK,IAGxB,MAAO,CACLC,OAASvM,IACP,GAAIiM,EACF,MAAMP,EAAW,8BAEnBhK,EAAOK,KAAK/B,EAAKS,UAEnBmL,OAAQM,EACRM,UAAWzM,SAEF+L,QADaI,OAO5B,SAASJ,EAAWvL,GAClB,IAAIyB,EAAM,GACV,IAAK,MAAMyK,KAAQlM,EACjByB,GAAOyK,EAAKC,SAAS,IAAIC,SAAS,EAAG,KAEvC,OAAO3K,CACT,OCrEa4K,EACMC,MAAQ,IAAIpK,IAE7BqK,QAAU/M,MAAOgN,IACf,MAAM7J,EAAM8J,EAASD,EAAIE,OAAQF,EAAIG,KAC/BC,EAAOnK,KAAK6J,MAAMlJ,IAAIT,GAC5B,QAAaU,IAATuJ,EACF,MAAMC,EAAa,eAAeL,EAAIG,OAExC,MAAMG,EAAYF,EAAKG,KAAK7M,QAC5B,MAAO,CACL8M,WAAYJ,EAAKI,WACjBC,QAASL,EAAKK,QACdF,KAAM,IAAInM,eAA2B,CACnC,KAAAC,CAAMC,GACJA,EAAWC,QAAQ+L,GACnBhM,EAAWE,OACb,MAKN,eAAAkM,CAAgBN,GACd,MAAMO,EAA4C,CAAA,EAClD,IAAK,MAAOxK,EAAKrB,KAAUsB,OAAOC,QAAQ+J,EAAKQ,SAASH,SACtDE,EAAkBxK,EAAI0K,eAAiB/L,EAEzCmB,KAAK6J,MAAM1K,IAAI6K,EAASG,EAAKF,OAAQE,EAAKD,KAAM,CAC9CK,WAAYJ,EAAKQ,SAASJ,WAC1BC,QAASE,EACTJ,KAAMH,EAAKQ,SAASL,KAAK7M,SAE7B,CAEA,UAAAoN,GACE7K,KAAK6J,MAAMiB,OACb,EAGF,SAASd,EAASC,EAAwBC,GACxC,MAAO,GAAGD,KAAUC,GACtB"}