@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
@@ -1,2 +0,0 @@
1
- "use strict";var t=require("./error-CqLvhejR.cjs");function e(e,r){const a=e[e.length-1];if(void 0===a)throw t.fileNotFound(r);return a}function r(e){return e instanceof t.TsgitError&&"FILE_NOT_FOUND"===e.data.code}function a(t,e,r){return{ctimeMs:e,mtimeMs:e,dev:0,ino:0,mode:r?33188:16877,uid:0,gid:0,size:t,isFile:r,isDirectory:!r,isSymbolicLink:!1}}function s(t){let e="";for(const r of t)e+=r.toString(16).padStart(2,"0");return e}exports.BrowserCompressor=class{async deflate(e){try{const t=new Blob([e]).stream().pipeThrough(new CompressionStream("deflate"));return new Uint8Array(await new Response(t).arrayBuffer())}catch(e){throw t.compressFailed(e instanceof Error?e.message:String(e))}}async inflate(e){try{const t=new Blob([e]).stream().pipeThrough(new DecompressionStream("deflate"));return new Uint8Array(await new Response(t).arrayBuffer())}catch(e){throw t.decompressFailed(e instanceof Error?e.message:String(e))}}async streamInflate(e,r){const a=e.subarray(r);if(a.length>65536)throw t.decompressFailed("BrowserCompressor.streamInflate input exceeds 65536 byte safety cap");for(let t=1;t<=a.length;t+=1){const e=a.subarray(0,t);try{const r=new Blob([e]).stream().pipeThrough(new DecompressionStream("deflate"));return{output:new Uint8Array(await new Response(r).arrayBuffer()),bytesConsumed:t}}catch{}}throw t.decompressFailed("no valid zlib stream at offset")}createInflateStream(){return new DecompressionStream("deflate")}},exports.BrowserFileSystem=class{rootHandle;constructor(t){this.rootHandle=t}async read(t){const e=await this.resolveFileHandle(t,!1),r=await e.getFile();return new Uint8Array(await r.arrayBuffer())}async readSlice(e,r,a){if(r<0||a<0)throw t.permissionDenied(e);const s=await this.resolveFileHandle(e,!1),i=(await s.getFile()).slice(r,r+a);return new Uint8Array(await i.arrayBuffer())}async readUtf8(t){const e=await this.resolveFileHandle(t,!1);return(await e.getFile()).text()}async write(t,e){const r=await this.resolveFileHandle(t,!0),a=await r.createWritable();await a.write(e),await a.close()}async writeExclusive(r,a){const s=this.splitPath(r);if(0===s.length)throw t.permissionDenied(r);const i=await this.walkToParent(s,!0),o=e(s,r);await this.assertDoesNotExist(i,o,r);const n=await i.getFileHandle(o,{create:!0}),c=await n.createWritable();await c.write(a),await c.close()}async writeUtf8(t,e){await this.write(t,(new TextEncoder).encode(e))}async exists(t){try{return await this.resolveFileHandle(t,!1),!0}catch(e){if(r(e))try{return await this.resolveDirHandle(t,!1),!0}catch{return!1}throw e}}async stat(t){try{const e=await this.resolveFileHandle(t,!1),r=await e.getFile();return a(r.size,r.lastModified,!0)}catch(e){if(!r(e))throw e;return await this.resolveDirHandle(t,!1),a(0,Date.now(),!1)}}async lstat(t){return this.stat(t)}async readdir(t){const e=[],r=await this.resolveDirHandle(t,!1);for await(const[t,a]of r.entries())e.push({name:t,isFile:"file"===a.kind,isDirectory:"directory"===a.kind,isSymbolicLink:!1});return e}async mkdir(t){const e=this.splitPath(t);let r=this.rootHandle;for(const t of e)r=await r.getDirectoryHandle(t,{create:!0})}async rm(r){const a=this.splitPath(r);if(0===a.length)throw t.permissionDenied(r);const s=await this.walkToParent(a,!1),i=e(a,r);try{await s.removeEntry(i)}catch{throw t.fileNotFound(r)}}async rename(t,e){const r=await this.read(t);await this.write(e,r),await this.rm(t)}async readlink(e){throw t.unsupportedOperation("readlink","OPFS does not support symbolic links")}async symlink(e,r){throw t.unsupportedOperation("symlink","OPFS does not support symbolic links")}async chmod(t,e){try{await this.resolveFileHandle(t,!1)}catch(e){if(!r(e))throw e;await this.resolveDirHandle(t,!1)}}async rmRecursive(a){const s=this.splitPath(a);if(0===s.length)throw t.permissionDenied(a);const i=await this.walkToParent(s,!1).catch(t=>{if(!r(t))throw t});if(void 0===i)return;const o=e(s,a);try{await i.removeEntry(o,{recursive:!0})}catch{}}async openWithNoFollow(e,r){throw t.unsupportedOperation("openWithNoFollow","browser FS does not support O_NOFOLLOW")}splitPath(e){const r=e.replace(/^\/+/,"").split("/").filter(t=>""!==t&&"."!==t);for(const a of r)if(".."===a)throw t.permissionDenied(e);return r}async resolveFileHandle(r,a){const s=this.splitPath(r);if(0===s.length)throw t.fileNotFound(r);const i=await this.walkToParent(s,a),o=e(s,r);try{return await i.getFileHandle(o,{create:a})}catch(e){if(e instanceof t.TsgitError)throw e;throw t.fileNotFound(r)}}async resolveDirHandle(r,a){const s=this.splitPath(r);if(0===s.length)return this.rootHandle;const i=await this.walkToParent(s,a),o=e(s,r);try{return await i.getDirectoryHandle(o,{create:a})}catch(e){if(e instanceof t.TsgitError)throw e;throw t.fileNotFound(r)}}async walkToParent(e,r){let a=this.rootHandle;for(let s=0;s<e.length-1;s++){const i=e[s];if(void 0===i)throw t.fileNotFound(e.join("/"));try{a=await a.getDirectoryHandle(i,{create:r})}catch(r){if(r instanceof t.TsgitError)throw r;throw t.fileNotFound(e.join("/"))}}return a}async assertDoesNotExist(e,r,a){try{await e.getFileHandle(r,{create:!1})}catch(e){if(e instanceof t.TsgitError)throw e;return}throw t.fileExists(a)}},exports.BrowserHashService=class{algorithm;digestLength;constructor(e="sha1"){if(!globalThis.crypto?.subtle)throw t.hashFailed("crypto.subtle unavailable");this.algorithm=e,this.digestLength="sha1"===e?20:32}async hash(t){return new Uint8Array(await crypto.subtle.digest(this.algoName,t))}async hashHex(t){return s(await this.hash(t))}createHasher(){const e=[],r=this.algoName;let a=!1;const i=async()=>{if(a)throw t.hashFailed("cannot digest after digest");a=!0;const s=e.reduce((t,e)=>t+e.length,0),i=new Uint8Array(s);let o=0;for(const t of e)i.set(t,o),o+=t.length;return new Uint8Array(await crypto.subtle.digest(r,i))};return{update(r){if(a)throw t.hashFailed("cannot update after digest");e.push(r.slice())},digest:i,digestHex:async()=>s(await i())}}get algoName(){return"sha1"===this.algorithm?"SHA-1":"SHA-256"}},exports.BrowserHttpTransport=class{async request(e){try{const t={method:e.method,headers:{...e.headers}};void 0!==e.body&&(t.body=e.body),void 0!==e.signal&&(t.signal=e.signal);const r=await fetch(e.url,t),a={};r.headers.forEach((t,e)=>{a[e.toLowerCase()]=t});const s=r.body??new ReadableStream;return{statusCode:r.status,headers:a,body:s}}catch(e){throw t.networkError(e instanceof Error?e.message:String(e))}}};
2
- //# sourceMappingURL=browser-http-transport-DcG05jw3.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"browser-http-transport-DcG05jw3.cjs","sources":["../../../src/adapters/browser/browser-file-system.ts","../../../src/adapters/browser/browser-hash-service.ts","../../../src/adapters/browser/browser-compressor.ts","../../../src/adapters/browser/browser-http-transport.ts"],"sourcesContent":[null,null,null,null],"names":["leafSegment","segments","path","leaf","length","undefined","fileNotFound","isFileNotFound","err","TsgitError","data","code","buildFileStat","size","timeMs","isFile","ctimeMs","mtimeMs","dev","ino","mode","uid","gid","isDirectory","isSymbolicLink","toHex","bytes","result","byte","toString","padStart","deflate","stream","Blob","pipeThrough","CompressionStream","Uint8Array","Response","arrayBuffer","compressFailed","Error","message","String","inflate","DecompressionStream","decompressFailed","streamInflate","offset","slice","subarray","end","attempt","output","bytesConsumed","createInflateStream","rootHandle","constructor","this","read","handle","resolveFileHandle","file","getFile","readSlice","permissionDenied","readUtf8","text","write","writable","createWritable","close","writeExclusive","splitPath","dir","walkToParent","assertDoesNotExist","getFileHandle","create","writeUtf8","content","TextEncoder","encode","exists","resolveDirHandle","stat","lastModified","Date","now","lstat","readdir","entries","iterable","name","child","push","kind","mkdir","segment","getDirectoryHandle","rm","removeEntry","rename","src","dst","readlink","_path","unsupportedOperation","symlink","_target","chmod","_mode","rmRecursive","parent","catch","recursive","openWithNoFollow","replace","split","filter","s","i","join","fileExists","algorithm","digestLength","globalThis","crypto","subtle","hashFailed","hash","digest","algoName","hashHex","createHasher","chunks","consumed","finalize","async","total","reduce","sum","chunk","concatenated","set","update","digestHex","request","req","init","method","headers","body","signal","res","fetch","url","forEach","value","key","toLowerCase","ReadableStream","statusCode","status","networkError"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"error-CqLvhejR.cjs","sources":["../../../src/domain/error.ts","../../../src/domain/commands/error.ts"],"sourcesContent":[null,null],"names":["TsgitError","Error","data","name","constructor","super","code","value","reason","basename","path","operation","statusCode","id","expected","actual","depth","count","limit","actualSize","chain","join","remaining","line","channel","message","resource","objectCount","paths","length","pattern","host","scheme","ref","local","remote","expression","candidates","raw","option","runtime","size","String","extractDetail","this","segments","split","i","segment","undefined","sanitizeForDisplay","s","out","charCodeAt","toString","toUpperCase","padStart","sanitize","truncated","cappedPaths","slice","reportStatus"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- "use strict";var t=require("./error-CqLvhejR.cjs"),e=require("./index-D5Nd-Mks.cjs"),r=require("../transport/index.cjs"),a=require("./readable-stream-MTA6D0Zh.cjs");const n=e=>new t.TsgitError({code:"INVALID_DIFF_INPUT",reason:e});function i(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 o(t,e,r){const a=r(e.mode);return{ctimeSeconds:a.ctimeSeconds,ctimeNanoseconds:a.ctimeNanoseconds,mtimeSeconds:a.mtimeSeconds,mtimeNanoseconds:a.mtimeNanoseconds,dev:a.dev,ino:a.ino,mode:e.mode,uid:a.uid,gid:a.gid,fileSize:a.fileSize,id:e.id,flags:{assumeValid:!1,extended:!1,stage:e.stage},path:t}}const s=1e5;function c(t){const e=[];let r=0;for(let a=0;a<t.length;a++)10===t[a]&&(e.push(t.subarray(r,a+1)),r=a+1);return r<t.length&&e.push(t.subarray(r)),e}function d(t){return function(t){const e=Math.min(t.length,8e3);for(let r=0;r<e;r++)if(0===t[r])return!0;return!1}(t)||function(t){let e=0,r=0;for(let a=0;a<t.length;a++){if(e++,e>=65536)return!0;if(10===t[a]){if(r++,r>=s)return!0;e=0}}return e>0&&(r++,r>=s)}(t)}function f(t,e){if(t.length!==e.length)return!1;for(let r=0;r<t.length;r++)if(t[r]!==e[r])return!1;return!0}function l(t,e,r,a){return a===-r||t[a-1+e]<t[a+1+e]}function u(t,e,r,a,n,i){let o=l(r,a,n,i)?r[i+1+a]:r[i-1+a]+1,s=o-i;for(;o<t.length&&s<e.length&&f(t[o],e[s]);)o++,s++;return{x:o,y:s}}function h(t){const e=[];let r=0,a=0,n=0;for(;n<t.length;){const i=t[n],o=r,s=a;for(;t[n]===i;)"equal"===i?(r++,a++):"delete"===i?r++:a++,n++;e.push({kind:"equal"===i?"common":"delete"===i?"ours-only":"theirs-only",oursStart:o,oursEnd:r,theirsStart:s,theirsEnd:a})}return e}function w(t,e){const r=c(t),a=c(e),n=r.length,i=a.length;if(0===n&&0===i)return{hunks:[{kind:"common",oursStart:0,oursEnd:0,theirsStart:0,theirsEnd:0}],oursLines:r,theirsLines:a,degraded:!1};const o=function(t,e){const r=t.length,a=e.length;if(r+a>5e4)return;const n=r+a,i=n,o=new Array(2*n+1).fill(0),s=[],c=1e3*n;let d=0;for(let n=0;;n++){const f=2*n+1,l=new Array(f);for(let t=0;t<f;t++)l[t]=o[i-n+t];s.push(l);for(let f=-n;f<=n;f+=2){if(d++,d>c)return;const l=u(t,e,o,i,n,f);if(o[f+i]=l.x,l.x>=r&&l.y>=a)return{trace:s,totalD:n}}}}(r,a);return void 0===o?function(t,e){const r=[];return t.length>0&&r.push({kind:"ours-only",oursStart:0,oursEnd:t.length,theirsStart:0,theirsEnd:0}),e.length>0&&r.push({kind:"theirs-only",oursStart:t.length,oursEnd:t.length,theirsStart:0,theirsEnd:e.length}),{hunks:r,oursLines:t,theirsLines:e,degraded:!0}}(r,a):{hunks:h(function(t,e,r){const a=[];let n=t,i=e;for(let t=r.length-1;t>0;t--){const e=r[t],o=t,s=n-i,c=l(e,o,t,s)?s+1:s-1,d=e[c+o],f=d-c;for(;n>d&&i>f;)a.push("equal"),n--,i--;a.push(n===d?"insert":"delete"),n===d?i--:n--}for(;n>0;)a.push("equal"),n--;return a.reverse(),a}(n,i,o.trace)),oursLines:r,theirsLines:a,degraded:!1}}function m(t,e){const r=t.path,a=e.path;return r<a?-1:r>a?1:0}function p(t,r,a,n,i){r.setUint32(a,n.ctimeSeconds),r.setUint32(a+4,n.ctimeNanoseconds),r.setUint32(a+8,n.mtimeSeconds),r.setUint32(a+12,n.mtimeNanoseconds),r.setUint32(a+16,n.dev),r.setUint32(a+20,n.ino),r.setUint32(a+24,Number.parseInt(n.mode,8)),r.setUint32(a+28,n.uid),r.setUint32(a+32,n.gid),r.setUint32(a+36,n.fileSize);const o=e.hexToBytes(n.id);t.set(o,a+40);const s=Math.min(i.length,4095);r.setUint16(a+60,(n.flags.assumeValid?32768:0)|n.flags.stage<<12|s),t.set(i,a+62)}const g=(t,e,r)=>{let a="unset";for(const n of t)n.directoryOnly&&!r||n.compiled.test(e)&&(a=n.negated?"unignored":"ignored");return a},y=(t,e)=>{if(""===e)return t;const r=`${e}/`;return t.startsWith(r)?t.slice(r.length):void 0},v=/[.+^${}()|[\]\\]/,b=(t,e)=>{let r="",a=0;for(;a<t.length;){const e=k(t,a);r+=e.regex,a=e.next}return new RegExp(`${e.anchored?"^":"(^|.*/)"}${r}${!0===e.withDirSuffix?"(/.*)?$":"$"}`)},k=(t,e)=>{const r=t[e];return"*"===r?E(t,e):"?"===r?{regex:"[^/]",next:e+1}:{regex:v.test(r)?`\\${r}`:r,next:e+1}},E=(t,e)=>{if("*"!==t[e+1])return{regex:"[^/]*",next:e+1};const r=e+2;return"/"===t[r]?{regex:"(.*/)?",next:r+1}:{regex:".*",next:r}},x=t=>{const e=t.startsWith("!"),r=e?t.slice(1):t;var a;return(a=r).includes("*")||a.includes("?")?{pattern:t,body:r,negated:e,isLiteral:!1,compiled:b(r,{anchored:r.includes("/")})}:{pattern:t,body:r,negated:e,isLiteral:!0,compiled:b(r,{anchored:!0,withDirSuffix:!0})}},$=(t,e)=>{let r=!1;for(const a of t)a.compiled.test(e)&&(r=!a.negated);return r},I=t=>{let e=t.length;for(;e>0&&32===t.charCodeAt(e-1)&&!(e>=2&&92===t.charCodeAt(e-2));)e-=1;return t.slice(0,e)},D=t=>t.replace(/\\(.)/g,"$1"),R=e=>new t.TsgitError({code:"INVALID_MERGE_TREE",reason:e}),T=e=>new t.TsgitError({code:"INVALID_MERGE_INPUT",reason:e}),S=268435456,A=["<<<<<<<","=======",">>>>>>>","|||||||"],M=new TextEncoder;function O(t){return t<=31||t>=127&&t<=159}function L(t){return t>=8234&&t<=8238||t>=8294&&t<=8297||8203===t||8204===t||8205===t||8288===t||65279===t}function N(t,e){if(t.length>255)throw T(`conflict marker ${e} label exceeds maximum length`);if(""===t.trim())throw T(`conflict marker ${e} label is empty or whitespace-only`);if(function(t){for(let e=0;e<t.length;e++){const r=t.charCodeAt(e);if(O(r)||L(r))return!0}return!1}(t))throw T(`conflict marker ${e} label contains forbidden control character`);if(function(t){for(const e of A)if(t.includes(e))return!0;return!1}(t))throw T(`conflict marker ${e} label contains forbidden marker substring`)}function _(t){let e=0;for(const r of t)e+=r.length;return e}function U(t){if(0===t.length)return new Uint8Array(0);const e=_(t),r=t[t.length-1],a=0===r.length||10!==r[r.length-1],n=new Uint8Array(e+(a?1:0));let i=0;for(const e of t)n.set(e,i),i+=e.length;return a&&(n[i]=10),n}function F(t,e,r={}){if("diff3"===r.conflictStyle)throw T("diff3 conflict style requires base lines — not supported in v1");const a=r.labels?.ours??"ours",n=r.labels?.theirs??"theirs";if(N(a,"ours"),N(n,"theirs"),void 0!==r.labels?.base&&N(r.labels.base,"base"),_(t)+_(e)>S)throw T("conflict output exceeds MAX_CONFLICT_OUTPUT_BYTES");const i=M.encode(`<<<<<<< ${a}\n`),o=M.encode("=======\n"),s=M.encode(`>>>>>>> ${n}\n`),c=U(t),d=U(e),f=new Uint8Array(i.length+c.length+o.length+d.length+s.length);let l=0;return f.set(i,l),l+=i.length,f.set(c,l),l+=c.length,f.set(o,l),l+=o.length,f.set(d,l),l+=d.length,f.set(s,l),f}function B(t,e){if(t.length!==e.length)return!1;for(let r=0;r<t.length;r++)if(t[r]!==e[r])return!1;return!0}function C(t,e){if(t.length!==e.length)return!1;for(let r=0;r<t.length;r++)if(!B(t[r],e[r]))return!1;return!0}function P(t){let e=0;for(const r of t)e+=r.length;const r=new Uint8Array(e);let a=0;for(const e of t)r.set(e,a),a+=e.length;return r}function H(t,e){const r=[];let a;const n=()=>{void 0!==a&&(r.push({baseStart:a.baseStart,baseEnd:a.baseEnd,replacement:a.replacement}),a=void 0)};for(const r of t)if("common"!==r.kind)if(void 0===a&&(a={baseStart:r.oursStart,baseEnd:r.oursStart,replacement:[]}),"ours-only"===r.kind)a.baseEnd=Math.max(a.baseEnd,r.oursEnd);else for(let t=r.theirsStart;t<r.theirsEnd;t++)a.replacement.push(e[t]);else n();return n(),r}function W(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 j(t,e){for(const r of e)if(r.baseStart===t.baseStart&&r.baseEnd===t.baseEnd&&C(r.replacement,t.replacement))return r}function z(t,e){for(const r of e)if(W(t,r))return!0;return!1}function G(t,e,r){return{status:"conflict",conflictType:"content",markedBytes:F(t,e,r)}}function X(t,e){return t.id===e.id&&t.mode===e.mode}function Y(t,r){if(void 0!==t&&t.entries.size>e.MAX_FLAT_TREE_ENTRIES)throw R(`${r} FlatTree exceeds MAX_FLAT_TREE_ENTRIES`)}function V(t){return{status:"conflict",conflict:t}}function q(t,e,r,a){return V({type:"modify-delete",path:t,baseId:e.id,baseMode:e.mode,...void 0===r?{}:{ourId:r.id,ourMode:r.mode},...void 0===a?{}:{theirId:a.id,theirMode:a.mode}})}function K(t,e,r,a){return void 0===e?{status:"resolved-known",path:t,id:r.id,mode:r.mode}:X(e,r)?{status:"resolved-deleted",path:t}:"our"===a?q(t,e,r,void 0):q(t,e,void 0,r)}function Z(t,r,a,n,i){return void 0===a&&void 0===n?{status:"resolved-deleted",path:t}:void 0===a?K(t,r,n,"their"):void 0===n?K(t,r,a,"our"):void 0===r?function(t,e,r){return X(e,r)?{status:"resolved-known",path:t,id:e.id,mode:e.mode}:function(t,e,r){return V({type:"add-add",path:t,ourId:e.id,theirId:r.id,ourMode:e.mode,theirMode:r.mode})}(t,e,r)}(t,a,n):async function(t,r,a,n,i){const o=X(r,a),s=X(r,n);if(o&&s)return{status:"unchanged",path:t,id:r.id,mode:r.mode};if(o)return{status:"resolved-known",path:t,id:n.id,mode:n.mode};if(s)return{status:"resolved-known",path:t,id:a.id,mode:a.mode};if(X(a,n))return{status:"resolved-known",path:t,id:a.id,mode:a.mode};if(!e.isSameKind(a.mode,n.mode)||!e.isSameKind(r.mode,a.mode))return function(t,e,r,a){return V({type:"type-change",path:t,baseId:e.id,ourId:r.id,theirId:a.id,baseMode:e.mode,ourMode:r.mode,theirMode:a.mode})}(t,r,a,n);const c=function(t,e,r){return e.mode===r.mode?e.mode:e.mode===t.mode?r.mode:e.mode}(r,a,n);return function(t){return t===e.FILE_MODE.GITLINK}(c)?function(t,e,r,a){return V({type:"gitlink",path:t,baseId:e.id,ourId:r.id,theirId:a.id,baseMode:e.mode,ourMode:r.mode,theirMode:a.mode})}(t,r,a,n):async function(t,e,r,a,n,i){const o={path:t,baseId:e.id,ourId:r.id,theirId:a.id,baseMode:e.mode,ourMode:r.mode,theirMode:a.mode},s=await i(o,void 0,new Uint8Array(0),new Uint8Array(0));if("clean"===s.status){if(s.bytes.length>S)throw T("contentMerger returned oversize clean bytes");return void 0!==s.id?{status:"resolved-known",path:t,id:s.id,mode:n}:{status:"resolved-merged",path:t,bytes:s.bytes,mode:n}}if(s.markedBytes.length>S)throw T("contentMerger returned oversize marked bytes");return V({type:s.conflictType,path:t,baseId:e.id,ourId:r.id,theirId:a.id,baseMode:e.mode,ourMode:r.mode,theirMode:a.mode,conflictContent:s.markedBytes})}(t,r,a,n,c,i)}(t,r,a,n,i)}const J=new TextDecoder("utf-8",{fatal:!1}),Q=new TextEncoder,tt=t=>t.endsWith("\n")?t.slice(0,-1):t,et=t=>{if(t.startsWith("ok "))return{name:t.slice(3),accepted:!0};if(t.startsWith("ng ")){const r=t.slice(3),a=r.indexOf(" ");if(a<0)throw e.invalidReportStatus(t);return{name:r.slice(0,a),accepted:!1,reason:r.slice(a+1)}}throw e.invalidReportStatus(t)},rt=async t=>{const r=await(async t=>{const e=[];for await(const r of t){if("data"!==r.kind)return e;e.push(tt(J.decode(r.payload)))}return e})(t);if(0===r.length)throw e.invalidReportStatus("");const[a,...n]=r,i=(t=>{if("unpack ok"===t)return{ok:!0};if(t.startsWith("unpack "))return{ok:!1,error:t.slice(7)};throw e.invalidReportStatus(t)})(a);return i.ok?{unpackOk:!0,refUpdates:n.map(et)}:{unpackOk:!1,unpackError:i.error,refUpdates:[]}};let at=new WeakMap;const nt=t=>{const e=at.get(t);if(void 0!==e)return e;const r=it(t);return at.set(t,r),r},it=async t=>{const e=await ot(t);return void 0===e?{}:st(e)},ot=async e=>{try{return await e.fs.readUtf8(`${e.layout.gitDir}/config`)}catch(e){if(e instanceof t.TsgitError&&"FILE_NOT_FOUND"===e.data.code)return;throw e}},st=t=>{const e=ct(t);return wt(e)},ct=t=>{const e=[];let r;for(const a of dt(t.split("\n"))){const t=ft(a).trim();if(""===t)continue;const n=ut(t);if(void 0!==n){r={section:n.section,subsection:n.subsection,entries:[]},e.push(r);continue}if(void 0===r)continue;const i=ht(t);void 0!==i&&r.entries.push(i)}return e},dt=t=>{const e=[];let r="";for(const a of t){const t=""===r?a:a.replace(/^\s+/,"");a.endsWith("\\")?r+=t.slice(0,t.length-1):(e.push(`${r}${t}`),r="")}return""!==r&&e.push(r),e},ft=t=>{const e=[lt(t,"#"),lt(t,";")].filter(t=>t>=0);return 0===e.length?t:t.slice(0,Math.min(...e))},lt=(t,e)=>{let r=!1;for(let a=0;a<t.length;a+=1){const n=t[a];if('"'===n)r=!r;else if(!r&&n===e)return a}return-1},ut=t=>{if(!t.startsWith("[")||!t.endsWith("]"))return;const e=t.slice(1,-1).trim();if(""===e)return;const r=e.indexOf('"');if(-1===r)return{section:e,subsection:void 0};const a=e.slice(0,r).trim(),n=e.lastIndexOf('"');return n<=r?void 0:{section:a,subsection:e.slice(r+1,n)}},ht=t=>{const e=t.indexOf("=");if(-1===e)return;const r=t.slice(0,e).trim();return""!==r?{key:r,value:t.slice(e+1).trim()}:void 0},wt=t=>{const e={};for(const r of t)"core"===r.section&&void 0===r.subsection?mt(e,r):"user"===r.section&&void 0===r.subsection?pt(e,r):"remote"===r.section&&void 0!==r.subsection?gt(e,r.subsection,r):"branch"===r.section&&void 0!==r.subsection&&yt(e,r.subsection,r);return vt(e)},mt=(t,e)=>{for(const{key:r,value:a}of e.entries){const e=r.toLowerCase();"bare"===e?t.core={...t.core,bare:kt(a)}:"excludesfile"===e&&(t.core={...t.core,excludesFile:a})}},pt=(t,e)=>{for(const{key:r,value:a}of e.entries)"name"===r?t.user={...t.user,name:a}:"email"===r&&(t.user={...t.user,email:a})},gt=(t,e,r)=>{t.remote??=new Map;const a=t.remote.get(e)??{},n=a.fetch?[...a.fetch]:[];let i=a.url;for(const{key:t,value:e}of r.entries)"url"===t?i=e:"fetch"===t&&n.push(e);const o={};void 0!==i&&(o.url=i),n.length>0&&(o.fetch=n),t.remote.set(e,o)},yt=(t,e,r)=>{t.branch??=new Map;const a={...t.branch.get(e)??{}};for(const{key:t,value:e}of r.entries)"remote"===t?a.remote=e:"merge"===t&&(a.merge=e);t.branch.set(e,a)},vt=t=>{const e={};return void 0===t.core?.bare&&void 0===t.core?.excludesFile||(e.core={...void 0!==t.core?.bare?{bare:t.core.bare}:{},...void 0!==t.core?.excludesFile?{excludesFile:t.core.excludesFile}:{}}),void 0!==t.user?.name&&void 0!==t.user?.email&&(e.user={name:t.user.name,email:t.user.email}),void 0!==t.remote&&t.remote.size>0&&(e.remote=t.remote),void 0!==t.branch&&t.branch.size>0&&(e.branch=t.branch),e},bt=new Set(["true","yes","on","1"]),kt=t=>bt.has(t.toLowerCase()),Et=async(t,e)=>xt(t,""===e?`${t.layout.workDir}/.gitignore`:`${t.layout.workDir}/${e}/.gitignore`),xt=async(r,a)=>{let n;try{n=await r.fs.lstat(a)}catch(e){if(e instanceof t.TsgitError&&"FILE_NOT_FOUND"===e.data.code)return;throw e}if(n.isFile&&!n.isSymbolicLink){if(n.size>e.MAX_GITIGNORE_BYTES)throw t.gitignoreFileTooLarge($t(a),n.size,e.MAX_GITIGNORE_BYTES);return(t=>{const e=[];for(const r of t.split("\n")){if(""===r)continue;if(/^\s*$/.test(r))continue;if(r.startsWith("#"))continue;const t=I(r),a=t.startsWith("!"),n=a?t.slice(1):t,i=n.endsWith("/"),o=i?n.slice(0,-1):n,s=o.startsWith("/")||o.includes("/"),c=o.startsWith("/")?o.slice(1):o,d=D(c),f=b(d,{anchored:s});e.push({pattern:D(t),negated:a,directoryOnly:i,anchored:s,compiled:f})}return e})(await r.fs.readUtf8(a))}},$t=t=>{const e=t.lastIndexOf("/");return-1===e?t:t.slice(e+1)},It=async t=>{const e=await(async t=>{const e=[],r=await(async t=>{const e=await nt(t),r=e.core?.excludesFile;if(void 0===r)return;const a=((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,r);return void 0!==a?xt(t,a):void 0})(t);void 0!==r&&e.push({basedir:"",rules:r});const a=await(async t=>xt(t,`${t.layout.gitDir}/info/exclude`))(t);void 0!==a&&e.push({basedir:"",rules:a});const n=await Et(t,"");void 0!==n&&e.push({basedir:"",rules:n});const i=new Map;return{base:e,loadDirRules:async e=>{const r=i.get(e);if(void 0!==r)return r;const a=await Et(t,e)??[];return i.set(e,a),a}}})(t),r=[...e.base],a=new Set([]);return async(t,n)=>{for(const n of Dt(t)){if(a.has(n))continue;a.add(n);const t=await e.loadDirRules(n);t.length>0&&r.push({basedir:n,rules:t})}return"ignored"===((t,e,r)=>{let a="unset";for(const n of t){const t=y(e,n.basedir);if(void 0===t)continue;const i=g(n.rules,t,r);"unset"!==i&&(a=i)}return a})(r,t,n)}},Dt=t=>{const e=t.split("/");if(e.length<=1)return[];const r=[];for(let t=1;t<e.length;t+=1)r.push(e.slice(0,t).join("/"));return r},Rt=(e,r)=>new t.TsgitError(void 0===r?{code:"RESOURCE_LOCKED",resource:"index",path:e}:{code:"RESOURCE_LOCKED",resource:"index",path:e,mtimeMs:r}),Tt=async(r,a={})=>{const n=`${e.indexPath(r.layout.gitDir)}${e.lockSuffix}`,i=e.indexPath(r.layout.gitDir),o=a.now??(()=>Date.now()),s=a.breakStaleLockMs;try{await r.fs.writeExclusive(n,new Uint8Array)}catch(e){if(!(e instanceof t.TsgitError)||"FILE_EXISTS"!==e.data.code)throw e;if(void 0===s)throw Rt(n,await St(r,n));await At(r,n,s,o)}return Mt(r,n,i)},St=async(t,e)=>{try{return(await t.fs.lstat(e)).mtimeMs}catch{return}},At=async(e,r,a,n)=>{const i=await St(e,r);if(void 0===i)return void await e.fs.writeExclusive(r,new Uint8Array);const o=n()-i;if(o<0)throw Rt(r,i);if(o<a)throw Rt(r,i);await e.fs.rm(r);try{await e.fs.writeExclusive(r,new Uint8Array)}catch(a){if(a instanceof t.TsgitError&&"FILE_EXISTS"===a.data.code)throw Rt(r,await St(e,r));throw a}},Mt=(r,a,n)=>{let i=!1,o=!1;return{release:async()=>{if(!i&&!o){o=!0;try{await r.fs.rm(a)}catch(e){if(!(e instanceof t.TsgitError)||"FILE_NOT_FOUND"!==e.data.code)throw e}}},commit:async t=>{if(i||o)return;const s=function(t){const r=[...t.entries].sort(m),a=r.map(t=>{const r=e.encode(t.path);return{entry:t,pathBytes:r,paddedLength:62+r.length+8&-8}}),n=t.extensions.map(t=>({ext:t,sigBytes:e.encode(t.signature),totalLength:8+t.data.length})),i=12+a.reduce((t,e)=>t+e.paddedLength,0)+n.reduce((t,e)=>t+e.totalLength,0),o=new Uint8Array(i),s=new DataView(o.buffer);s.setUint32(0,1145655875),s.setUint32(4,2),s.setUint32(8,r.length);let c=12;for(const{entry:t,pathBytes:e,paddedLength:r}of a)p(o,s,c,t,e),c+=r;for(const{ext:t,sigBytes:e,totalLength:r}of n)o.set(e,c),s.setUint32(c+4,t.data.length),o.set(t.data,c+8),c+=r;return o}({entries:[...t],extensions:[]}),c=await r.hash.hash(s),d=new Uint8Array(s.length+c.length);d.set(s,0),d.set(c,s.length),await r.fs.write(a,d),await r.fs.rename(a,n),i=!0}}},Ot=e.RefName.from("HEAD"),Lt=async e=>{const r=`${e.layout.gitDir}/HEAD`;if(!await e.fs.exists(r))throw new t.TsgitError({code:"NOT_A_REPOSITORY",path:e.layout.workDir});return e.layout.bare?e.layout.gitDir:e.layout.workDir},Nt=async(e,r)=>{if(await(async t=>{const e=await nt(t);return e.core?.bare??!1})(e))throw(e=>new t.TsgitError({code:"BARE_REPOSITORY",operation:e}))(r)},_t=async r=>{const a=`${r.layout.gitDir}/HEAD`;let n;try{n=await r.fs.readUtf8(a)}catch(r){if(r instanceof t.TsgitError&&"FILE_NOT_FOUND"===r.data.code)throw e.refNotFound(Ot);throw r}const i=e.parseLooseRef(n);return"symbolic"===i.type?{kind:"symbolic",target:i.target}:{kind:"direct",id:i.target}},Ut=[{file:"MERGE_HEAD",operation:"merge"},{file:"CHERRY_PICK_HEAD",operation:"cherry-pick"},{file:"REVERT_HEAD",operation:"revert"},{file:"REBASE_HEAD",operation:"rebase"}],Ft=async(e,r={})=>{const a=await Promise.all(Ut.map(t=>e.fs.exists(`${e.layout.gitDir}/${t.file}`)));for(let e=0;e<Ut.length;e+=1){const n=Ut[e];if(void 0!==n&&r.except!==n.operation&&!0===a[e])throw t.operationInProgress(n.operation)}},Bt=e.validateWorkingTreePath,Ct=(t,e)=>`${t.layout.workDir}/${e}`,Pt=async(t,e)=>{const r=Bt(e);return t.fs.read(Ct(t,r))},Ht=async(e,r)=>{const a=Bt(r),n=Ct(e,a);let i;try{i=await e.fs.lstat(n)}catch{throw t.checkoutOverwriteDirty([a])}if(!i.isFile&&!i.isSymbolicLink)throw t.checkoutOverwriteDirty([a]);await e.fs.rm(n)},Wt=new TextEncoder,jt=t=>{for(const e of t){const t=e.startsWith("!")?e.slice(1):e;Bt(t),zt(e)}const e=(t=>t.map(x))(t),r=e.filter(Yt).map(t=>qt(t)),a=e.some(Vt);return{matcher:e,literalMustMatch:r,hasGlob:a}},zt=e=>{if(Wt.encode(e).byteLength>256)throw t.invalidOption("paths","pattern exceeds max length 256 bytes");if(Gt(e)>4)throw t.invalidOption("paths","pattern exceeds max **-token count 4")},Gt=t=>{let e=0,r=0;for(;r<t.length;)"*"!==t[r]||"*"!==t[r+1]?r+=1:(e+=1,r+=2);return e},Xt=(e,r)=>{if(0===e.length)return;const a=new Set(r);for(const n of e)if(!a.has(n)&&!r.some(t=>t.startsWith(`${n}/`)))throw t.pathspecNoMatch(n)},Yt=t=>!t.negated&&t.isLiteral,Vt=t=>!t.negated&&!t.isLiteral,qt=t=>t.body,Kt=new Set(["FILE_NOT_FOUND","INVALID_INDEX_HEADER","INVALID_INDEX_ENTRY"]),Zt=async(e,r,a)=>{const n=await Tt(e,void 0!==a.breakStaleLockMs?{breakStaleLockMs:a.breakStaleLockMs}:{});try{const a=await re(e),i=new Map(a),o=[],s=[];for(const n of r){const r=await ae(e,n);if("missing"===r)throw t.pathspecNoMatch(n);const c=a.get(n);i.set(n,r),void 0===c?o.push(n):c.id===r.id&&c.mode===r.mode||s.push(n)}return await n.commit(Array.from(i.values())),{added:o,modified:s,removed:[]}}finally{await n.release()}},Jt=async(t,e)=>{if(0===e.length)return!1;for(const r of e){const e=await t.fs.lstat(`${t.layout.workDir}/${r}`).catch(()=>{});if(void 0===e)return!1;if(e.isDirectory&&!e.isSymbolicLink)return!1}return!0},Qt=async(t,r,a,n)=>{const i=await It(t),o=async(t,e)=>!!await i(t,e)||!e&&!$(r,t),s=await Tt(t,void 0!==n.breakStaleLockMs?{breakStaleLockMs:n.breakStaleLockMs}:{});try{const r=await re(t),n=new Map(r),i=[],c=[],d=[],f=new Set;for await(const a of e.walkWorkingTree(t,{ignore:o})){const e=await ee(t,a,r,f);void 0!==e&&(i.push(e.path),n.set(e.path,e.entry),"added"===e.kind?c.push(e.path):"modified"===e.kind&&d.push(e.path))}return Xt(a,i),c.sort(),d.sort(),await s.commit(Array.from(n.values())),{added:c,modified:d,removed:[]}}finally{await s.release()}},te=async(t,e)=>{if(await e(t,!1))return!0;const r=t.split("/");for(let t=1;t<r.length;t+=1){const a=r.slice(0,t).join("/");if(await e(a,!0))return!0}return!1},ee=async(r,a,n,i)=>{const{path:o,stat:s}=a;if(i.add(o),s.size>e.MAX_WORKING_TREE_BLOB_BYTES)throw t.workingTreeFileTooLarge(o,s.size,e.MAX_WORKING_TREE_BLOB_BYTES);const c=await ne(r,o,s),d=n.get(o);return void 0===d?{kind:"added",path:o,entry:c}:d.id!==c.id||d.mode!==c.mode?{kind:"modified",path:o,entry:c}:{kind:"unchanged",path:o,entry:c}},re=async r=>{try{const t=await e.readIndex(r),a=new Map;for(const e of t.entries)a.set(e.path,e);return a}catch(e){if(e instanceof t.TsgitError&&Kt.has(e.data.code))return new Map;throw e}},ae=async(t,e)=>{const r=await t.fs.lstat(`${t.layout.workDir}/${e}`).catch(()=>{});return void 0===r?"missing":ne(t,e,r)},ne=async(r,a,n)=>{const i=await r.fs.lstat(`${r.layout.workDir}/${a}`);if(i.isSymbolicLink!==n.isSymbolicLink||i.isDirectory!==n.isDirectory||i.isFile!==n.isFile)throw t.operationAborted();if(i.size>e.MAX_WORKING_TREE_BLOB_BYTES)throw t.workingTreeFileTooLarge(a,i.size,e.MAX_WORKING_TREE_BLOB_BYTES);const o=i.isSymbolicLink?"120000":73&i.mode?"100755":"100644",s=await ie(r,a,i),c=await e.writeObject(r,{type:"blob",id:"",content:s});return oe(i,o,c,a)},ie=async(r,a,n)=>{if(n.isSymbolicLink){const n=(new TextEncoder).encode(await r.fs.readlink(`${r.layout.workDir}/${a}`));if(n.byteLength>e.MAX_WORKING_TREE_BLOB_BYTES)throw t.workingTreeFileTooLarge(a,n.byteLength,e.MAX_WORKING_TREE_BLOB_BYTES);return n}return Pt(r,a)},oe=(t,e,r,a)=>({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:r,flags:{assumeValid:!1,extended:!1,stage:0},path:a}),se="refs/heads/",ce=(t,e)=>t<e?-1:t>e?1:0,de=async(r,a)=>{if(/^[0-9a-f]{40}$/.test(a))return a;const n="HEAD"===a?["HEAD"]:[`${se}${a}`,a];for(const t of n)try{return await e.resolveRef(r,t)}catch{}throw t.branchNotFound(a)},fe="checkout:materialize",le=async(t,r)=>{if("HEAD"===r){const r=await e.resolveRef(t,"HEAD");return(await e.readTree(t,r)).id}return(await e.readTree(t,r)).id},ue=async(t,r)=>{const a=e.validateRefName(r.initialBranch),n=t.layout.gitDir;try{await t.fs.mkdir(n),await t.fs.writeUtf8(`${n}/HEAD`,`ref: refs/heads/${a}\n`),await t.fs.writeUtf8(`${n}/config`,(i=r.bare,`[core]\n\trepositoryformatversion = 0\n\tfilemode = true\n\tbare = ${i?"true":"false"}\n`)),await t.fs.mkdir(`${n}/refs/heads`),await t.fs.mkdir(`${n}/refs/tags`),await t.fs.mkdir(`${n}/objects/info`),await t.fs.mkdir(`${n}/objects/pack`),await t.fs.writeUtf8(`${n}/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(`${n}/description`,"Unnamed repository; edit this file 'description' to name the repository.\n")}catch(e){throw await t.fs.rmRecursive(n).catch(()=>{}),e}var i;return{gitDir:n,initialBranch:a,bare:r.bare}},he={attempts:3,backoff:"exponential",baseMs:250,maxDelayMs:5e3},we=(t,e={})=>{const a=void 0!==e.logger?me(e.logger):void 0;let n=t.transport;return n=r.withRetry(e.retry??he)(n),void 0!==e.auth&&(n=r.withAuth(e.auth)(n)),void 0!==a&&(n=r.withLogging({logger:a})(n)),n},me=t=>({log:e=>t.log(pe(e))}),pe=t=>"request"===t.kind||"response"===t.kind?{...t,url:ye(t.url),headers:ge(t.headers)}:{...t,url:ye(t.url),errorMessage:ye(t.errorMessage)},ge=t=>{const e={};for(const[r,a]of Object.entries(t))e[r]=ye(a);return e},ye=t=>{let e="";for(let r=0;r<t.length;r+=1){const a=t.charCodeAt(r);e+=9===a||10===a?t[r]:a<32||a>126?`\\x${a.toString(16).padStart(2,"0").toUpperCase()}`:t[r]}return e},ve={"git-upload-pack":"application/x-git-upload-pack-advertisement","git-receive-pack":"application/x-git-receive-pack-advertisement"},be=async(r,n,i,o)=>{const s=e.buildDiscoveryUrl(i,o),c=await n.request({url:s,method:"GET",headers:{accept:ve[o]},...void 0!==r.signal?{signal:r.signal}:{}});if(200!==c.statusCode)throw t.httpError(c.statusCode,`${o} discovery returned ${c.statusCode}`);const d=e.decodePktStream(a.readableStreamToAsyncIterable(c.body));return e.parseAdvertisedRefs(d,o)},ke=async(t,e,r)=>be(t,e,r,"git-upload-pack"),Ee=t=>{const r=e.CLIENT_CAPABILITIES_FETCH.filter(t=>"multi_ack_detailed"!==t&&"thin-pack"!==t&&"no-progress"!==t&&t!==e.AGENT);return[...e.negotiateCapabilities(t,r),e.AGENT]},xe=t=>{const e=new Set,r=[];for(const a of t)e.has(a.id)||(e.add(a.id),r.push(a.id));return r},$e=async(t,e)=>{Ie(t);const r=De(t);Re(r,e.allowInsecure??!1),Te(r);const a=await e.resolver(r.hostname);return{url:t,pinnedAddress:Se(a,e.allowPrivateNetworks??!1)}},Ie=e=>{for(let r=0;r<e.length;r+=1){const a=e.charCodeAt(r);if(10===a||13===a)throw t.invalidUrl("contains forbidden control character")}},De=e=>{try{return new URL(e)}catch{throw t.invalidUrl("not a valid URL")}},Re=(e,r)=>{const a=e.protocol;if("https:"!==a&&("http:"!==a||!r))throw t.unsupportedScheme(a.replace(":",""))},Te=e=>{if(""!==e.hash)throw t.invalidUrl("URL fragment is not allowed")},Se=(e,r)=>{for(const t of e)if(r||!Ae(t))return t;if(0===e.length)throw t.blockedHost("<unresolved>","no DNS records returned");throw t.blockedHost(e[0],"all resolved addresses are in a blocked range")},Ae=t=>t.includes(":")?Oe(t):Me(t),Me=t=>{const e=(t=>{const e=t.split(".");if(4!==e.length)return;const r=[];for(const t of e){if(!/^\d{1,3}$/.test(t))return;const e=Number(t);if(e>255)return;r.push(e)}return r})(t);if(void 0===e)return!1;const[r,a]=e;return 0===r||10===r||100===r&&a>=64&&a<=127||127===r||169===r&&254===a||172===r&&a>=16&&a<=31||192===r&&168===a||r>=224},Oe=t=>{const e=t.toLowerCase(),r=e.match(/::ffff:(?:0:)?(\d+\.\d+\.\d+\.\d+)$/);if(void 0!==r?.[1])return Me(r[1]);const a=e.match(/^::ffff:([0-9a-f]{1,4}):([0-9a-f]{1,4})$/);if(void 0!==a?.[1]&&void 0!==a[2]){const t=parseInt(a[1],16),e=parseInt(a[2],16);return Me(`${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"))},Le="clone:discover",Ne=async(t,e)=>{const r=Ue(e),a=[];for(const n of e.refs)if("HEAD"!==n.name){if(n.name.startsWith("refs/heads/")){const e=n.name.slice(11),i=`refs/remotes/origin/${e}`;if(await _e(t,i,n.id),a.push({name:i,id:n.id}),void 0!==r&&e===r){const e=n.name;await _e(t,e,n.id),a.push({name:e,id:n.id})}continue}if(n.name.startsWith("refs/tags/")){const e=n.name;await _e(t,e,n.id),a.push({name:e,id:n.id});continue}t.logger?.debug?.("clone: skipping unsupported ref namespace",{name:n.name})}return a},_e=async(t,e,r)=>{const a=`${t.layout.gitDir}/${e}`;await t.fs.writeUtf8(a,`${r}\n`)},Ue=t=>{const e=t.capabilities.find(t=>t.startsWith("symref=HEAD:refs/heads/"));if(void 0!==e)return e.slice(23)},Fe=async(t,e)=>{const r=Ue(e);if(void 0!==r){const e=`refs/heads/${r}`;return await t.fs.writeUtf8(`${t.layout.gitDir}/HEAD`,`ref: ${e}\n`),e}void 0===e.head||await t.fs.writeUtf8(`${t.layout.gitDir}/HEAD`,`${e.head.id}\n`)},Be=e=>{if(void 0!==e.explicit)return e.explicit;if(void 0!==e.configUser)return e.configUser;throw t.authorUnconfigured()},Ce=e=>{if(void 0!==e.explicit)return e.explicit;if(void 0!==e.author)return e.author;if(void 0!==e.configUser)return e.configUser;throw t.authorUnconfigured()},Pe=(e,r)=>{const a=e.trim();if(""===a&&!r.allowEmpty)throw t.emptyCommitMessage();return a},He=t=>`${t.layout.gitDir}/MERGE_HEAD`,We=t=>`${t.layout.gitDir}/MERGE_MSG`,je=(t,e,r)=>{if(1===e.length)return void t.files.set(e[0],{id:r.id,mode:r.mode});const[a,...n]=e,i=a;let o=t.subdirs.get(i);void 0===o&&(o={files:new Map,subdirs:new Map},t.subdirs.set(i,o)),je(o,n,r)},ze=async(t,r)=>{const a=[];for(const[t,e]of r.files)a.push({mode:e.mode,name:t,id:e.id});const n=await Promise.all(Array.from(r.subdirs).map(async([e,r])=>({name:e,id:await ze(t,r)})));for(const{name:t,id:e}of n)a.push({mode:"40000",name:t,id:e});return e.writeTree(t,a)},Ge=async(t,r)=>{const a=/^[0-9a-f]{40}$/.test(r)?r:await e.resolveRef(t,e.validateRefName(r)),n=await e.readObject(t,a);return"commit"===n.type?n.data.tree:a},Xe="fetch:negotiate",Ye=async(t,r)=>{const a=[],n=[`refs/remotes/${r}`,"refs/tags"];for(const e of n){const r=`${t.layout.gitDir}/${e}`;await t.fs.exists(r)&&await Ve(t,r,a)}const i=`refs/remotes/${r}/`,o=await e.getRefStore(t).getPackedRefs();for(const t of o.entries)(t.name.startsWith(i)||t.name.startsWith("refs/tags/"))&&a.push(t.id);return a},Ve=async(t,e,r)=>{const a=await t.fs.readdir(e);for(const n of a){const a=`${e}/${n.name}`;if(n.isDirectory){await Ve(t,a,r);continue}const i=(await t.fs.readUtf8(a)).trim();Ke(i)&&r.push(i)}},qe=/^[0-9a-f]{40}([0-9a-f]{24})?$/i,Ke=t=>qe.test(t),Ze=(t,e)=>{if("HEAD"!==e.name&&Je(e.name)){if(e.name.startsWith("refs/heads/")){const r=`refs/remotes/${t}/${e.name.slice(11)}`;if(!Je(r))return;return r}return e.name.startsWith("refs/tags/")?e.name:void 0}},Je=t=>{try{return e.validateRefName(t),!0}catch{return!1}},Qe=async(t,r)=>{e.validateRefName(r);const a=`${t.layout.gitDir}/${r}`;if(!await t.fs.exists(a))return;const n=(await t.fs.readUtf8(a)).trim();return Ke(n)?n:void 0},tr=async(t,e,r)=>{const a=new Set(r.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 i=[];return await er(t,n,"",a,e,i),i},er=async(t,r,a,n,i,o)=>{const s=await t.fs.readdir(r);for(const c of s){const s=`${r}/${c.name}`,d=""===a?c.name:`${a}/${c.name}`;if(c.isDirectory){await er(t,s,d,n,i,o);continue}if(n.has(d))continue;const f=`refs/remotes/${i}/${d}`;if(!Je(f)){t.logger?.warn?.("fetch.prune: skipping unsafe ref name",{name:f});continue}const l=f;try{await e.updateRef(t,l,"0".repeat(40),{delete:!0})}catch(e){if(rr(e)){t.logger?.warn?.("fetch.prune: skipping packed-only ref",{name:l});continue}throw e}o.push(l)}},rr=e=>e instanceof t.TsgitError&&"UNSUPPORTED_OPERATION"===e.data.code&&"delete-packed-ref"===e.data.operation,ar=async(t,r)=>{const a=new Map;for await(const n of e.walkTree(t,r))n.mode!==e.FILE_MODE.DIRECTORY&&a.set(n.path,{id:n.id,mode:n.mode});return{entries:a}},nr="merge:write-files",ir=new Set(["rename-rename","gitlink"]),or=async(t,r,a,n,i,o)=>{const s=await xr(t,r),c={tree:o,parents:[n,i],author:s,committer:$r(r,s),message:Pe(r.message??`Merge ${r.target}`,{allowEmpty:!1}),extraHeaders:[]},d=await e.createCommit(t,c);return await e.updateRef(t,a,d,{expected:n}),{kind:"merge",id:d,branch:a,parents:[n,i]}},sr=async(t,r,a,n)=>{const i=await Ir(t,r),o=await Ir(t,a),s=void 0!==n?await Ir(t,n):void 0,[c,d,f]=await Promise.all([ar(t,i),ar(t,o),void 0!==s?ar(t,s):Promise.resolve(void 0)]),l=cr(t),u=await async function(t,r,a,n){Y(t,"base"),Y(r,"ours"),Y(a,"theirs");const i=function(t,r,a){const n=new Set;for(const e of[t,r,a])if(void 0!==e)for(const t of e.entries.keys())n.add(t);if(n.size>e.MAX_FLAT_TREE_ENTRIES)throw R("union FlatTree exceeds MAX_FLAT_TREE_ENTRIES");return n}(t,r,a),o=e.sortByPath([...i],t=>t),s=[];for(const e of o){const i=Z(e,t?.entries.get(e),r?.entries.get(e),a?.entries.get(e),n),o=i instanceof Promise?await i:i;s.push(o)}const c=function(t){const e=[];for(const r of t)"conflict"===r.status&&e.push(r.conflict);return e}(s);return{outcomes:s,conflicts:c,cleanMerge:0===c.length}}(f,c,d,l);return u.cleanMerge?{kind:"clean",tree:await dr(t,u.outcomes)}:{kind:"conflict",outcomes:u.outcomes,conflicts:u.conflicts}},cr=t=>async(r,a,n,i)=>{const[o,s,f]=await Promise.all([e.readBlob(t,r.ourId,{maxBytes:S}),e.readBlob(t,r.theirId,{maxBytes:S}),void 0!==r.baseId?e.readBlob(t,r.baseId,{maxBytes:S}):Promise.resolve(void 0)]);return function(t,e,r,a={}){if(d(e)||d(r)||void 0!==t&&d(t))return{status:"conflict",conflictType:"binary",markedBytes:e};if(void 0===t)return B(e,r)?{status:"clean",bytes:e}:G(c(e),c(r),a);if(B(e,t))return{status:"clean",bytes:r};if(B(r,t))return{status:"clean",bytes:e};if(B(e,r))return{status:"clean",bytes:e};const n=w(t,e),i=w(t,r);if(n.degraded||i.degraded)return G(c(e),c(r),a);const o=function(t,e){const r=[],a=new Set;for(const n of t){const t=j(n,e);if(void 0===t){if(z(n,e))return;r.push(n)}else a.add(t),r.push(n)}for(const t of e)a.has(t)||r.push(t);return r.sort((t,e)=>t.baseStart-e.baseStart),{changes:r}}(H(n.hunks,n.theirsLines),H(i.hunks,i.theirsLines));if(void 0===o)return G(c(e),c(r),a);return{status:"clean",bytes:P(function(t,e){const r=[];let a=0;for(const n of e.changes){for(let e=a;e<n.baseStart;e++)r.push(t[e]);for(const t of n.replacement)r.push(t);a=n.baseEnd}for(let e=a;e<t.length;e++)r.push(t[e]);return r}(n.oursLines,o))}}(f?.content,o.content,s.content)},dr=async(t,r)=>{const a=await(async(t,r)=>{const a=[];for(const n of r)if("resolved-deleted"!==n.status&&"conflict"!==n.status){if("resolved-merged"===n.status){const r=await e.writeObject(t,{type:"blob",content:n.bytes,id:""});a.push({path:n.path,id:r,mode:n.mode});continue}a.push({path:n.path,id:n.id,mode:n.mode})}return a})(t,r);return fr(t,a)},fr=async(t,r,a=0)=>{if(a>4096)throw e.treeDepthExceeded(a);const{files:n,subdirs:i}=(t=>{const e=[],r=new Map;for(const a of t){const t=a.path.indexOf("/");if(-1===t){e.push(a);continue}const n=a.path.slice(0,t),i={path:a.path.slice(t+1),id:a.id,mode:a.mode},o=r.get(n);void 0===o?r.set(n,[i]):o.push(i)}return{files:e,subdirs:r}})(r),o=await Promise.all(Array.from(i,async([r,n])=>({name:r,id:await fr(t,n,a+1),mode:e.FILE_MODE.DIRECTORY}))),s=n.map(t=>({name:t.path,id:t.id,mode:t.mode}));return e.writeTree(t,[...s,...o])},lr=async(t,e,r,a,n)=>{ur(r.conflicts);const i=await Tt(t);try{await hr(t,r.outcomes,r.conflicts),await(async(t,e)=>{await t.fs.writeUtf8((t=>`${t.layout.gitDir}/ORIG_HEAD`)(t),`${e}\n`)})(t,a),await(async(t,e)=>{await t.fs.writeUtf8(He(t),`${e}\n`)})(t,n);const o=Pe(e.message??`Merge ${e.target}`,{allowEmpty:!1});await(async(t,e)=>{await t.fs.writeUtf8(We(t),e)})(t,o);const s=Er(r.outcomes,r.conflicts);await i.commit(s)}finally{await i.release()}return{kind:"conflict",conflicts:r.conflicts.map(t=>({path:t.path,type:t.type})),mergeHead:n,origHead:a}},ur=e=>{for(const r of e)if(ir.has(r.type))throw t.unsupportedOperation("merge",`conflict type '${r.type}' not supported in v1 (path=${r.path})`)},hr=async(t,e,r)=>{await wr(e,32,e=>mr(t,e)),await wr(r,32,e=>pr(t,e))},wr=async(t,e,r)=>{let a=0;const n=[],i=async()=>{for(;a<t.length;){const e=t[a++];if(void 0===e)break;await r(e)}},o=Math.min(e,t.length);for(let t=0;t<o;t++)n.push(i());await Promise.all(n)},mr=async(t,r)=>{if("unchanged"===r.status||"resolved-known"===r.status){const a=await e.readBlob(t,r.id,{maxBytes:S});return void await yr(t,r.path,a.content)}"resolved-merged"!==r.status?"resolved-deleted"===r.status&&await vr(t,r.path):await yr(t,r.path,r.bytes)},pr=async(t,e)=>{const r=await gr(t,e);void 0!==r&&await yr(t,e.path,r)},gr=async(t,r)=>{if("content"===r.type&&void 0!==r.conflictContent)return r.conflictContent;if("binary"===r.type&&void 0!==r.ourId)return(await e.readBlob(t,r.ourId,{maxBytes:S})).content;if(("add-add"===r.type||"type-change"===r.type)&&void 0!==r.ourId)return(await e.readBlob(t,r.ourId,{maxBytes:S})).content;if("modify-delete"===r.type){const a=r.ourId??r.theirId;if(void 0!==a)return(await e.readBlob(t,a,{maxBytes:S})).content}if("content"===r.type&&void 0!==r.ourId&&void 0!==r.theirId){const[a,n]=await Promise.all([e.readBlob(t,r.ourId,{maxBytes:S}),e.readBlob(t,r.theirId,{maxBytes:S})]);return F([a.content],[n.content])}},yr=async(t,e,r)=>{const a=`${t.layout.workDir}/${e}`,n=br(a);void 0!==n&&await t.fs.mkdir(n),await t.fs.write(a,r)},vr=async(t,e)=>{const r=`${t.layout.workDir}/${e}`;await t.fs.exists(r)&&await t.fs.rm(r)},br=t=>{const e=t.lastIndexOf("/");if(!(e<=0))return t.slice(0,e)},kr=t=>({ctimeSeconds:0,ctimeNanoseconds:0,mtimeSeconds:0,mtimeNanoseconds:0,dev:0,ino:0,mode:t,uid:0,gid:0,fileSize:0}),Er=(t,r)=>{const a=[];for(const e of t)"unchanged"!==e.status&&"resolved-known"!==e.status||a.push({...kr(e.mode),id:e.id,flags:{assumeValid:!1,extended:!1,stage:0},path:e.path});const s=function(t,r){const a=new Set;for(const e of t){if(a.has(e.path))throw n("duplicate conflict path");a.add(e.path)}const s=[];for(const e of t)for(const t of i(e))s.push(o(e.path,t,r));return s.sort((t,r)=>{const a=e.comparePaths(t.path,r.path);return 0!==a?a:t.flags.stage-r.flags.stage}),s}(r,kr),c=[...a,...s];return c.sort((t,e)=>t.path<e.path?-1:t.path>e.path?1:t.flags.stage-e.flags.stage),c},xr=async(t,e)=>{const r=await nt(t),a=r.user?{name:r.user.name,email:r.user.email,timestamp:Math.floor(Date.now()/1e3),timezoneOffset:"+0000"}:void 0,n={};return void 0!==e.author&&(n.explicit=e.author),void 0!==a&&(n.configUser=a),Be(n)},$r=(t,e)=>{const r={author:e};return void 0!==t.committer&&(r.explicit=t.committer),Ce(r)},Ir=async(t,r)=>{const a=await e.readObject(t,r);if("commit"!==a.type)throw e.unexpectedObjectType("commit",a.type,r);return a.data.tree},Dr=t=>"HEAD"===t||t.includes("/")?t:`refs/heads/${t}`,Rr=t=>{if(""===t)throw e.refspecInvalid(t,"refspec must not be empty");let r=t,a="normal";if(r.startsWith("+")&&(a="force",r=r.slice(1)),""===r)throw e.refspecInvalid(t,"refspec must not be empty after force prefix");const n=Tr(r,":");if(n>1)throw e.refspecInvalid(t,"refspec must contain at most one colon");if(0===n){const t=Dr(r);return{force:a,src:t,dst:t,isDelete:!1}}const i=r.indexOf(":"),o=r.slice(0,i),s=r.slice(i+1);if(""===s)throw e.refspecInvalid(t,"destination must not be empty");const c=Dr(s);if("HEAD"===c)throw e.refspecInvalid(t,"destination must not be HEAD");return""===o?{force:a,src:"",dst:c,isDelete:!0}:{force:a,src:Dr(o),dst:c,isDelete:!1}},Tr=(t,e)=>{let r=0;for(let a=0;a<t.length;a+=1)t[a]===e&&(r+=1);return r},Sr="push:enumerate-objects",Ar="push:upload",Mr=e.ObjectId.from("0".repeat(40)),Or="refs/heads/",Lr=new Set(["side-band-64k","side-band"]),Nr=/^[A-Za-z0-9._-]+$/,_r=t=>{const e=new Map;for(const r of t)e.set(r.name,r.id);return e},Ur=async(r,a,n,i,o)=>{const s=n.get(a.dst)??Mr;if(a.isDelete){if(s===Mr)throw t.invalidOption("refspecs",`delete target ${a.dst} is not advertised`);return{parsed:a,localOid:Mr,remoteOid:s}}const c=await e.resolveRef(r,a.src);return await Fr(r,a,c,s,i,o),{parsed:a,localOid:c,remoteOid:s}},Fr=async(e,r,a,n,i,o)=>{const s=await Br(e,r,i,o);if(void 0===s){if("force"!==r.force&&!0!==o.force&&n!==Mr&&!await Cr(e,n,a))throw t.nonFastForward(r.dst,a,n)}else if(s!==n)throw t.pushRejected(r.dst,"lease-mismatch",Pr())},Br=async(r,a,n,i)=>{if(void 0===i.forceWithLease)return;if("auto"!==i.forceWithLease)return i.forceWithLease;if(!a.dst.startsWith(Or))throw t.invalidOption("forceWithLease","lease-on-non-branch");const o=a.dst.slice(11);return e.resolveRef(r,`refs/remotes/${n}/${o}`)},Cr=async(t,r,a)=>{for await(const n of e.walkCommits(t,{from:[a],ignoreMissing:!0}))if(n.id===r)return!0;return!1},Pr=()=>({unpackOk:!0,refUpdates:[]}),Hr=async(r,a,n,i,o,s)=>{const c=o.filter(t=>!t.parsed.isDelete).map(t=>t.localOid),d=i.refs.map(t=>t.id),f=await Wr(r,c,d),l=await e.buildPack(r,{oids:f}),u=(t=>{const r=e.CLIENT_CAPABILITIES_PUSH.filter(t=>t!==e.AGENT);return[...e.negotiateCapabilities(t,r),e.AGENT]})(i.capabilities),h=(t=>{if(0===t.updates.length)throw e.emptyReceiveUpdates();const r=t.updates.map((e,r)=>((t,e)=>{const r=0===e.length?"":`\0${e.join(" ")}`;return Q.encode(`${t.oldId} ${t.newId} ${t.name}${r}\n`)})(e,0===r?t.capabilities:[])),a=e.encodePktStream(r),n=new Uint8Array(a.byteLength+t.packfile.byteLength);return n.set(a,0),n.set(t.packfile,a.byteLength),n})({updates:o.map(jr),capabilities:u,packfile:l.bytes}),w=await zr(r,a,n,h),m=await Xr(r,w,u);if(!m.unpackOk)throw t.pushRejected(o[0]?.parsed.dst,m.unpackError??"unpack failed",m);return await Vr(r,o,m.refUpdates,s)},Wr=async(t,r,a)=>{if(0===r.length)return[];const n=[];for await(const i of e.enumeratePushObjects(t,{wants:r,haves:a}))n.push(i);return n},jr=t=>({name:t.parsed.dst,oldId:t.remoteOid,newId:t.localOid}),zr=async(e,r,a,n)=>{e.progress.start(Ar);try{const i=Gr(a),o=await r.request({url:i,method:"POST",headers:{"content-type":"application/x-git-receive-pack-request",accept:"application/x-git-receive-pack-result"},body:n,...void 0!==e.signal?{signal:e.signal}:{}});if(200!==o.statusCode)throw t.httpError(o.statusCode,`git-receive-pack returned ${o.statusCode}`);return o}finally{e.progress.end(Ar)}},Gr=t=>{let r;try{r=new URL(t)}catch{throw e.invalidBaseUrl("invalid URL")}if(""!==r.hash)throw e.invalidBaseUrl("fragment must not be set");const a=r.pathname.endsWith("/")?r.pathname.slice(0,-1):r.pathname;return`${r.protocol}//${r.host}${a}/git-receive-pack${r.search}`},Xr=async(r,n,i)=>{const o=a.readableStreamToAsyncIterable(n.body),s=e.decodePktStream(o);if(Yr(i)){const a=e.parseSideBand(s,{onProgress:e=>r.progress.update(Ar,0,void 0,t.sanitize(e))});return rt(e.decodePktStream(a))}return rt(s)},Yr=t=>t.some(t=>Lr.has(t)),Vr=async(t,e,r,a)=>{const n=new Map;for(const t of r)n.set(t.name,t);const i=[];for(const r of e){const e=n.get(r.parsed.dst),o=!0===e?.accepted;o&&await qr(t,r,a),i.push({name:r.parsed.dst,oldId:r.remoteOid,newId:r.localOid,status:o?"ok":"rejected",...void 0!==e?.reason?{reason:e.reason}:{}})}return i},qr=async(t,r,a)=>{if(!r.parsed.dst.startsWith(Or))return;if(r.parsed.isDelete)return;const n=`refs/remotes/${a}/${r.parsed.dst.slice(11)}`;Kr(n)&&await e.updateRef(t,n,r.localOid)},Kr=t=>{try{return e.validateRefName(t),!0}catch{return!1}},Zr=new Set(["commit","tree","blob","tag"]),Jr=/^:(\d):(.+)$/,Qr=/^[0-9a-f]{1,6}$/,ta=e=>{throw t.revparseUnresolved(e)},ea=t=>{for(let e=0;e<t.length;e+=1){const r=t[e];if("~"===r||"^"===r)return e}return-1},ra=(t,e)=>{const r=[];let a=e;for(;a<t.length;){const e=t[a];if("~"===e){const e=aa(t,a);r.push(e.op),a=e.next}else if("^"===e){const e=na(t,a);r.push(e.op),a=e.next}else ta(t)}return r},aa=(t,e)=>{let r=e+1;for(;r<t.length&&ia(t.charCodeAt(r));)r+=1;return r===e+1&&ta(t),{op:{kind:"ancestor",n:Number(t.slice(e+1,r))},next:r}},na=(t,e)=>{if("{"===t[e+1]){const r=t.indexOf("}",e+2);-1===r&&ta(t);const a=t.slice(e+2,r);return Zr.has(a)||ta(t),{op:{kind:"peel",target:a},next:r+1}}let r=e+1;for(;r<t.length&&ia(t.charCodeAt(r));)r+=1;const a=t.slice(e+1,r);return{op:{kind:"parent",n:""===a?1:Number(a)},next:r}},ia=t=>t>=48&&t<=57,oa=async(t,r)=>{if(/^[0-9a-f]{40}$/.test(r))return e.ObjectId.from(r);const a=[r,`refs/heads/${r}`,`refs/tags/${r}`,`refs/remotes/${r}`];for(const r of a)try{return await e.resolveRef(t,r)}catch{}throw e.objectNotFound(r)},sa=async(t,e,r)=>{if("parent"===r.kind)return ca(t,e,r.n);if("ancestor"===r.kind){let a=e;for(let e=0;e<r.n;e+=1)a=await ca(t,a,1);return a}return da(t,e,r.target)},ca=async(t,r,a)=>{const n=await e.readObject(t,r);if("commit"!==n.type)throw e.objectNotFound(r);const i=n.data.parents[a-1];if(void 0===i)throw e.objectNotFound(r);return i},da=async(t,r,a)=>{let n=r;for(let r=0;r<5;r+=1){const r=await e.readObject(t,n);if(r.type===a)return n;if("tag"!==r.type){if("tree"===a&&"commit"===r.type)return r.data.tree;throw e.objectNotFound(n)}n=r.data.object}throw e.objectNotFound(n)},fa=async(t,r)=>{const a=await e.readIndex(t);for(const t of a.entries)if(t.path===r.path&&t.flags.stage===r.stage)return t.id;throw e.objectNotFound(`${r.stage}:${r.path}`)},la="status:scan",ua=(t,e)=>t.path<e.path?-1:1,ha=new TextEncoder,wa=async(t,e,r)=>{try{const a=await Pt(t,Bt(e)),n=ha.encode(`blob ${a.byteLength}\0`),i=new Uint8Array(n.byteLength+a.byteLength);return i.set(n,0),i.set(a,n.byteLength),await t.hash.hashHex(i)!==r.id}catch{return!0}},ma="refs/tags/",pa=async t=>{const r=await _t(t);return"direct"===r.kind?r.id:e.resolveRef(t,r.target)};exports.add=async(r,a,n={})=>{if(await Lt(r),await Nt(r,"add"),await Ft(r,{except:"merge"}),!0===n.all){if(0!==a.length)throw t.invalidOption("all","pathspec must be empty when all=true");return(async(t,r)=>{const a=await It(t),n=await Tt(t,void 0!==r.breakStaleLockMs?{breakStaleLockMs:r.breakStaleLockMs}:{});try{const r=await re(t),i=new Map(r),o=new Set,s=[],c=[],d=[];for await(const n of e.walkWorkingTree(t,{ignore:a})){const e=await ee(t,n,r,o);void 0!==e&&(i.set(e.path,e.entry),"added"===e.kind?s.push(e.path):"modified"===e.kind&&c.push(e.path))}for(const[t]of r)o.has(t)||await te(t,a)||(i.delete(t),d.push(t));return s.sort(),c.sort(),d.sort(),await n.commit(Array.from(i.values())),{added:s,modified:c,removed:d}}finally{await n.release()}})(r,n)}if(0===a.length)throw t.emptyPathspec();return(async(t,e,r)=>{const{matcher:a,literalMustMatch:n,hasGlob:i}=jt(e);return!i&&await Jt(t,n)?Zt(t,n,r):Qt(t,a,n,r)})(r,a,n)},exports.branch=async(r,a)=>(await Lt(r),"list"===a.kind?(async t=>{const r=`${t.layout.gitDir}/refs/heads`;if(!await t.fs.exists(r))return{kind:"list",branches:[]};const a=await _t(t),n="symbolic"===a.kind&&a.target.startsWith(se)?a.target:void 0,i=await t.fs.readdir(r),o=[];for(const r of i){if(!r.isFile)continue;const a=`${se}${r.name}`,i=await e.resolveRef(t,a);o.push({name:a,id:i,current:a===n})}return o.sort((t,e)=>ce(t.name,e.name)),{kind:"list",branches:o}})(r):"create"===a.kind?(async(r,a)=>{const n=e.validateRefName(`${se}${a.name}`),i=a.startPoint??"HEAD",o=await de(r,i);try{await e.updateRef(r,n,o,!0===a.force?{}:{expected:"absent"})}catch(e){if(e instanceof t.TsgitError&&"REF_UPDATE_CONFLICT"===e.data.code)throw t.branchExists(n);throw e}return{kind:"create",name:n,id:o}})(r,a):"delete"===a.kind?(async(r,a)=>{const n=e.validateRefName(`${se}${a.name}`),i=await _t(r);if("symbolic"===i.kind&&i.target===n)throw t.cannotDeleteCheckedOutBranch(n);if(!await r.fs.exists(`${r.layout.gitDir}/${n}`))throw t.branchNotFound(n);return await e.updateRef(r,n,"0".repeat(40),{delete:!0}),{kind:"delete",name:n}})(r,a):(async(r,a)=>{const n=e.validateRefName(`${se}${a.from}`),i=e.validateRefName(`${se}${a.to}`),o=await e.resolveRef(r,n);try{await e.updateRef(r,i,o,!0===a.force?{}:{expected:"absent"})}catch(e){if(e instanceof t.TsgitError&&"REF_UPDATE_CONFLICT"===e.data.code)throw t.branchExists(i);throw e}await e.updateRef(r,n,"0".repeat(40),{delete:!0});const s=await _t(r);return"symbolic"===s.kind&&s.target===n&&await e.writeSymbolicRef(r,"HEAD",i),{kind:"rename",from:n,to:i}})(r,a)),exports.checkout=async(r,a)=>{await Lt(r),await Nt(r,"checkout"),await Ft(r);const n=(t=>"target"in t&&void 0!==t.target)(a),i=(t=>"paths"in t&&void 0!==t.paths)(a);if(n&&i)throw t.invalidOption("paths","cannot be combined with target");if(!n&&!i)throw t.invalidOption("target","either target or paths must be provided");r.progress.start(fe);try{return i?await(async(r,a)=>{if(0===a.paths.length)throw t.invalidOption("paths","must not be empty");const n=a.source??"index",{matcher:i,literalMustMatch:o}=jt(a.paths),s=(await(async(t,r)=>{if("index"===r)return(await e.readIndex(t)).entries.map(t=>t.path);const a=await le(t,r),n=[];for await(const r of e.walkTree(t,a))r.mode!==e.FILE_MODE.DIRECTORY&&n.push(r.path);return n})(r,n)).filter(t=>$(i,t));Xt(o,s);const c=new Set(s);if(0===c.size)return{branch:void 0,id:await e.resolveRef(r,"HEAD"),detached:!1,changedPaths:0};const d="index"===n?await(async(t,r)=>{const a=await e.readIndex(t),n=await e.synthesizeTreeFromIndex(t,a.entries);return e.materializeTree(t,{targetTree:n,currentIndex:a,force:!0,forceRewriteAll:!0,paths:r})})(r,c):await(async(t,r,a)=>{const n=await Tt(t);try{const i=await e.readIndex(t),o=await e.materializeTree(t,{targetTree:r,currentIndex:i,force:!0,forceRewriteAll:!0,paths:a});return await n.commit(o.newIndexEntries),o}finally{await n.release()}})(r,await le(r,n),c);return{branch:void 0,id:await e.resolveRef(r,"HEAD"),detached:!1,changedPaths:d.written+d.deleted}})(r,a):await(async(r,a)=>{const n=!0===a.detach||/^[0-9a-f]{40}$/.test(a.target);let i,o;if(n)o=await(async(t,r)=>/^[0-9a-f]{40}$/.test(r)?r:e.resolveRef(t,r))(r,a.target);else{if(i=e.validateRefName(`refs/heads/${a.target}`),!await r.fs.exists(`${r.layout.gitDir}/${i}`))throw t.branchNotFound(i);o=await e.resolveRef(r,i)}const s=await e.readTree(r,o),c=await Tt(r);let d;try{const t=await e.readIndex(r);d=await e.materializeTree(r,{targetTree:s.id,currentIndex:t,force:a.force??!1}),0===d.written&&0===d.deleted||await c.commit(d.newIndexEntries)}finally{await c.release()}return n?(await r.fs.writeUtf8(`${r.layout.gitDir}/HEAD`,`${o}\n`),{branch:void 0,id:o,detached:!0,changedPaths:d.written+d.deleted}):(await e.writeSymbolicRef(r,"HEAD",i),{branch:i,id:o,detached:!1,changedPaths:d.written+d.deleted})})(r,a)}finally{r.progress.end(fe)}},exports.clone=async(r,a)=>{if(await r.fs.exists(`${r.layout.gitDir}/HEAD`))throw t.targetDirectoryNotEmpty(r.layout.workDir);if(""===a.url)throw t.remoteAdvertisesNoRefs();r.progress.start(Le);try{void 0!==a.resolver&&await $e(a.url,{resolver:a.resolver,...void 0!==a.allowInsecure?{allowInsecure:a.allowInsecure}:{},...void 0!==a.allowPrivateNetworks?{allowPrivateNetworks:a.allowPrivateNetworks}:{}});const n=await ue(r,{initialBranch:a.initialBranch??"main",bare:a.bare??!1});try{return await(async(r,a,n)=>{const i=we(r,{...void 0!==r.config?.auth?{auth:r.config.auth}:{}}),o=await ke(r,i,a.url);if(0===o.refs.length)throw t.remoteAdvertisesNoRefs();const s=Ee(o.capabilities),c=xe(o.refs),d=await e.fetchPack(r,i,{wants:c,haves:[],capabilities:s,url:a.url,progressOp:"clone:write-objects",...void 0!==a.depth?{depth:a.depth}:{}});d.shallow.length>0&&await e.updateShallow(r,{shallow:d.shallow,unshallow:d.unshallow});const f=await Ne(r,o);return{path:n,head:await Fe(r,o),fetchedRefs:f}})(r,a,n.gitDir)}catch(t){throw await r.fs.rmRecursive(r.layout.gitDir).catch(()=>{}),t}}finally{r.progress.end(Le)}},exports.commit=async(r,a)=>{await Lt(r),await Nt(r,"commit");const n=await(async t=>{const r=He(t);if(!await t.fs.exists(r))return;const a=(await t.fs.readUtf8(r)).trim();return 0!==a.length?e.ObjectId.from(a):void 0})(r);await Ft(r,void 0!==n?{except:"merge"}:{});const i=await(async(t,e,r)=>{if(e.message.length>0||void 0===r)return Pe(e.message,{allowEmpty:e.allowEmptyMessage??!1});const a=await(async t=>{const e=We(t);if(await t.fs.exists(e))return t.fs.readUtf8(e)})(t);return Pe(a??"",{allowEmpty:e.allowEmptyMessage??!1})})(r,a,n),o=(t=>{if(void 0!==t)return{name:t.name,email:t.email,timestamp:Math.floor(Date.now()/1e3),timezoneOffset:"+0000"}})((await nt(r)).user),s=Be(((t,e)=>{const r={};return void 0!==t&&(r.explicit=t),void 0!==e&&(r.configUser=e),r})(a.author,o)),c=Ce(((t,e,r)=>{const a={};return void 0!==t&&(a.explicit=t),void 0!==e&&(a.author=e),void 0!==r&&(a.configUser=r),a})(a.committer,s,o)),d=await e.readIndex(r);(e=>{const r=new Set;for(const t of e)0!==t.flags.stage&&r.add(t.path);if(r.size>0)throw t.mergeHasConflicts(r.size,[...r])})(d.entries);const f=await(async(t,e)=>{const r={files:new Map,subdirs:new Map};for(const t of e)je(r,t.path.split("/"),t);return ze(t,r)})(r,d.entries),l=await _t(r),u="symbolic"===l.kind?await(async(t,r)=>{try{return await e.resolveRef(t,r)}catch{return}})(r,l.target):l.id,h=((t,e)=>{const r=[];return void 0!==t&&r.push(t),void 0!==e&&r.push(e),r})(u,n);if(!a.allowEmpty&&void 0!==u&&void 0===n&&await(async(t,r)=>{const a=await e.readObject(t,r);return"commit"!==a.type?e.ObjectId.from("0".repeat(40)):a.data.tree})(r,u)===f)throw t.nothingToCommit();const w={tree:f,parents:h,author:s,committer:c,message:i,extraHeaders:[]},m=await e.createCommit(r,w),p="symbolic"===l.kind?l.target:void 0;return void 0!==p?await e.updateRef(r,p,m,void 0!==u?{expected:u}:{}):await r.fs.writeUtf8(`${r.layout.gitDir}/HEAD`,`${m}\n`),void 0!==n&&await(async t=>{for(const e of[He(t),We(t)])await t.fs.exists(e)&&await t.fs.rm(e)})(r),{id:m,tree:f,branch:p,parents:h}},exports.diff=async(t,r={})=>{await Lt(t);const a=await Ge(t,r.from??"HEAD"),n=void 0!==r.to?await Ge(t,r.to):void 0;return e.diffTrees(t,a,n,!0===r.detectRenames?{detectRenames:!0}:{})},exports.fetch=async(r,a={})=>{await Lt(r);const n=a.remote??"origin",i=await(async(e,r)=>{const a=await nt(e),n=a.remote?.get(r);if(void 0===n?.url)throw t.remoteNotConfigured(r);return n.url})(r,n);r.progress.start(Xe);try{const o=we(r,void 0!==r.config?.auth?{auth:r.config.auth}:{}),s=await ke(r,o,i);if(0===s.refs.length)throw t.remoteAdvertisesNoRefs();const c=Ee(s.capabilities),d=xe(s.refs),f=await(async(t,r)=>{const a=await Ye(t,r);if(0===a.length)return[];const n=new Set,i=[];for(const t of a)if(!n.has(t)&&(n.add(t),i.push(t),i.length>=e.MAX_HAVES))return i;const o=a.slice(0,e.MAX_WALK_SEEDS);for await(const r of e.walkCommits(t,{from:o,ignoreMissing:!0,verifyHash:!1}))if(!n.has(r.id)&&(n.add(r.id),i.push(r.id),i.length>=e.MAX_HAVES))break;return i})(r,n),l=await e.fetchPack(r,o,{wants:d,haves:f,capabilities:c,url:i,progressOp:"fetch:write-objects",...void 0!==a.depth?{depth:a.depth}:{}});(l.shallow.length>0||l.unshallow.length>0)&&await e.updateShallow(r,{shallow:l.shallow,unshallow:l.unshallow});const u=await(async(t,r,a)=>{const n=[];for(const i of a.refs){const a=Ze(r,i);if(void 0===a)continue;const o=await Qe(t,a);o!==i.id?(await e.updateRef(t,a,i.id),n.push({name:a,oldId:o,newId:i.id})):n.push({name:a,oldId:o,newId:i.id})}return n})(r,n,s);return{remote:n,url:i,updatedRefs:u,prunedRefs:!0===a.prune?await tr(r,n,s):[],shallow:l.shallow,unshallow:l.unshallow}}finally{r.progress.end(Xe)}},exports.init=async(e,r={})=>{const a=r.initialBranch??"main",n=r.bare??!1;if(await e.fs.exists(`${e.layout.gitDir}/HEAD`))throw new t.TsgitError({code:"ALREADY_INITIALIZED",path:e.layout.gitDir});const i=await ue(e,{initialBranch:a,bare:n});return{path:i.gitDir,initialBranch:i.initialBranch,bare:i.bare}},exports.log=async(t,r={})=>{await Lt(t);const a=await(async(t,r)=>{if(/^[0-9a-f]{40}$/.test(r))return r;const a=[r,`refs/heads/${r}`,`refs/tags/${r}`];for(const r of a)try{return await e.resolveRef(t,e.validateRefName(r))}catch{}return e.resolveRef(t,e.validateRefName(r))})(t,r.from??"HEAD"),n=await(async(t,r)=>{const a=[];for(const n of r)if(/^[0-9a-f]{40}$/.test(n))a.push(n);else try{a.push(await e.resolveRef(t,e.validateRefName(n)))}catch{}return a})(t,r.excluding??[]),i=r.before,o=[];let s=0;for await(const c of e.walkCommits(t,{from:[a],until:n,order:"first-parent"}))if(!(void 0!==i&&c.data.committer.timestamp>=i.getTime()/1e3)&&(o.push({id:c.id,tree:c.data.tree,parents:c.data.parents,author:c.data.author,committer:c.data.committer,message:c.data.message}),s+=1,void 0!==r.limit&&s>=r.limit))break;return o},exports.merge=async(r,a)=>{await Lt(r),await Nt(r,"merge"),await Ft(r);const n=await _t(r);if("symbolic"!==n.kind)throw t.unsupportedOperation("merge","cannot merge with detached HEAD");const i=await e.resolveRef(r,n.target),o=await(async(t,r)=>/^[0-9a-f]{40}$/.test(r)?r:e.resolveRef(t,`refs/heads/${r}`))(r,a.target);if(i===o)return{kind:"up-to-date",id:i};const s=await e.mergeBase(r,i,o);if(s===o)return{kind:"up-to-date",id:i};if(s===i&&!0!==a.noFastForward)return await e.updateRef(r,n.target,o,{expected:i}),{kind:"fast-forward",id:o,branch:n.target};if(!0===a.fastForwardOnly)throw t.nonFastForward(n.target,i,o);return(async(t,e,r,a,n,i)=>{t.progress.start(nr);try{const o=await sr(t,a,n,i);return"conflict"===o.kind?lr(t,e,o,a,n):or(t,e,r,a,n,o.tree)}finally{t.progress.end(nr)}})(r,a,n.target,i,o,s)},exports.push=async(e,r={})=>{await Lt(e),e.progress.start(Sr);try{const a=r.remote??"origin",n=await(async(e,r)=>{if(!Nr.test(r))throw t.invalidOption("remote",`invalid remote name: ${r}`);const a=await nt(e),n=a.remote?.get(r);if(void 0===n?.url)throw t.remoteNotConfigured(r);return n.url})(e,a),i=await(async(e,r)=>{if(void 0!==r&&r.length>0)return r.map(Rr);const a=await _t(e);if("symbolic"!==a.kind)throw t.invalidOption("refspecs","no-default-refspec (HEAD is detached)");const n=a.target;return[Rr(`${n}:${n}`)]})(e,r.refspecs),o=we(e,void 0!==e.config?.auth?{auth:e.config.auth}:{}),s=await(async(t,e,r)=>be(t,e,r,"git-receive-pack"))(e,o,n),c=(await(async(t,e,r,a,n)=>{const i=_r(r.refs),o=[];for(const r of e)o.push(await Ur(t,r,i,a,n));return o})(e,i,s,a,r)).filter(t=>t.localOid!==t.remoteOid);return 0===c.length?{remote:a,url:n,pushedRefs:[]}:{remote:a,url:n,pushedRefs:await Hr(e,o,n,s,c,a)}}finally{e.progress.end(Sr)}},exports.reset=async(r,a)=>{await Lt(r),"hard"===a.mode&&await Nt(r,"reset --hard"),await Ft(r);const n=await(async(r,a)=>{if(/^[0-9a-f]{40}$/.test(a))return a;const n="HEAD"===a?["HEAD"]:[a,`refs/heads/${a}`,`refs/tags/${a}`];for(const t of n)try{return await e.resolveRef(r,t)}catch{}throw t.revparseUnresolved(a)})(r,a.target);"mixed"===a.mode?await(async(t,r)=>{const a=await e.readObject(t,r);if("commit"!==a.type)throw e.unexpectedObjectType("commit",a.type,r);const n=await Tt(t);try{const r=await e.readIndex(t),i=await e.buildIndexFromTree(t,{targetTree:a.data.tree,currentIndex:r});await n.commit(i)}finally{await n.release()}})(r,n):"hard"===a.mode&&await(async(t,r)=>{const a=await e.readObject(t,r);if("commit"!==a.type)throw e.unexpectedObjectType("commit",a.type,r);const n=await Tt(t);try{const r=await e.readIndex(t),i=await e.materializeTree(t,{targetTree:a.data.tree,currentIndex:r,force:!0,forceRewriteAll:!0});(i.written>0||i.deleted>0)&&await n.commit(i.newIndexEntries)}finally{await n.release()}})(r,n);const i=await _t(r),o="symbolic"===i.kind?i.target:void 0;return void 0!==o?await e.updateRef(r,o,n,{}):await r.fs.writeUtf8(`${r.layout.gitDir}/HEAD`,`${n}\n`),{mode:a.mode,id:n,branch:o}},exports.revParse=async(t,e)=>{await Lt(t);var r;return(async(t,e)=>{if("index-stage"===e.kind)return fa(t,e);let r=await oa(t,e.base);for(const a of e.operations)r=await sa(t,r,a);return r})(t,(""===(r=e)&&ta(r),r.startsWith(":")?(t=>{const e=Jr.exec(t);null===e&&ta(t);const r=e[2],a=Number(e[1]);return a>3&&ta(t),{kind:"index-stage",stage:a,path:r}})(r):(r.includes("@{")&&ta(r),(t=>{const e=ea(t),r=-1===e?t:t.slice(0,e);return""===r&&ta(t),Qr.test(r)&&-1===e&&ta(t),{kind:"ref-or-hex",base:r,operations:-1===e?[]:ra(t,e)}})(r))))},exports.rm=async(r,a,n={})=>{if(await Lt(r),await Nt(r,"rm"),await Ft(r),0===a.length)throw t.emptyPathspec();const{matcher:i,literalMustMatch:o}=jt(a),s=await Tt(r,void 0!==n.breakStaleLockMs?{breakStaleLockMs:n.breakStaleLockMs}:{});try{const a=await e.readIndex(r).catch(e=>{if(e instanceof t.TsgitError&&("FILE_NOT_FOUND"===(r=e.data.code)||"INVALID_INDEX_HEADER"===r||"INVALID_INDEX_ENTRY"===r))return{entries:[]};var r;throw e}),c=new Map;for(const t of a.entries)c.set(t.path,t);const d=[];for(const[t]of c)$(i,t)&&d.push(t);Xt(o,d);for(const t of d)c.delete(t);if(!n.cached)for(const e of d)await Ht(r,e).catch(e=>{if(!(e instanceof t.TsgitError&&"FILE_NOT_FOUND"===e.data.code))throw e});return await s.commit(Array.from(c.values())),{removed:d}}finally{await s.release()}},exports.status=async t=>{await Lt(t);const r=await _t(t),a="symbolic"===r.kind?r.target:void 0,n="direct"===r.kind,i=await e.readIndex(t).catch(()=>({entries:[]})),o=new Map;for(const t of i.entries)o.set(t.path,t);t.progress.start(la);try{const r=((t,e)=>{let r=0,a=0;return{tick:()=>{r+=1;const n=Math.floor(r/100);n>a&&(a=n,t.update(e,r))}}})(t.progress,la),i=(await Promise.all(Array.from(o).map(async([e,a])=>{const n=await(async(t,e,r)=>void 0===await t.fs.lstat(`${t.layout.workDir}/${e}`).catch(()=>{})?{kind:"deleted",path:e}:await wa(t,e,r)?{kind:"modified",path:e}:void 0)(t,e,a);return r.tick(),n}))).filter(t=>void 0!==t),s=await It(t),c=[];for await(const{path:r}of e.walkWorkingTree(t,{ignore:s}))o.has(r)||c.push({kind:"untracked",path:r});c.sort(ua);const d=[...i,...c];return{branch:a,detached:n,indexChanges:[],workingTreeChanges:d,clean:0===d.length}}finally{t.progress.end(la)}},exports.tag=async(r,a)=>(await Lt(r),"list"===a.kind?(async t=>{const r=`${t.layout.gitDir}/refs/tags`;if(!await t.fs.exists(r))return{kind:"list",tags:[]};const a=await t.fs.readdir(r),n=[];for(const r of a){if(!r.isFile)continue;const a=`${ma}${r.name}`,i=await e.resolveRef(t,a);n.push({name:a,id:i})}return n.sort((t,e)=>t.name<e.name?-1:1),{kind:"list",tags:n}})(r):"create"===a.kind?(async(r,a)=>{const n=e.validateRefName(`${ma}${a.name}`),i=void 0!==a.target?a.target:await pa(r),o=/^[0-9a-f]{40}$/.test(i)?i:await e.resolveRef(r,i);try{await e.updateRef(r,n,o,!0===a.force?{}:{expected:"absent"})}catch(e){if(e instanceof t.TsgitError&&"REF_UPDATE_CONFLICT"===e.data.code)throw t.tagExists(n);throw e}return{kind:"create",name:n,id:o}})(r,a):(async(r,a)=>{const n=e.validateRefName(`${ma}${a.name}`);if(!await r.fs.exists(`${r.layout.gitDir}/${n}`))throw t.tagNotFound(n);return await e.updateRef(r,n,"0".repeat(40),{delete:!0}),{kind:"delete",name:n}})(r,a)),exports.validateUrl=$e;
2
- //# sourceMappingURL=index-BcxdLkNe.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-BcxdLkNe.cjs","sources":["../../../src/domain/diff/error.ts","../../../src/domain/diff/index-diff.ts","../../../src/domain/diff/line-diff.ts","../../../src/domain/git-index/index-writer.ts","../../../src/domain/ignore/match.ts","../../../src/domain/ignore/matcher-stack.ts","../../../src/domain/pathspec/compile-glob.ts","../../../src/domain/pathspec/compile-pathspec.ts","../../../src/domain/pathspec/match-pathspec.ts","../../../src/domain/ignore/parse-gitignore.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/receive-pack.ts","../../../src/application/commands/internal/config-read.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/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/diff.ts","../../../src/application/commands/fetch.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/internal/rev-parse-grammar.ts","../../../src/application/commands/rev-parse.ts","../../../src/application/commands/status.ts","../../../src/application/commands/tag.ts","../../../src/application/commands/init.ts","../../../src/application/commands/log.ts","../../../src/application/commands/reset.ts","../../../src/application/commands/rm.ts","../../../src/application/commands/internal/progress-tracker.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],"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","assumeValid","extended","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","compareEntryPath","left","right","writeEntry","buf","view","entry","pathBytes","setUint32","Number","parseInt","shaBytes","hexToBytes","set","nameLength","setUint16","matches","rules","isDir","result","rule","directoryOnly","compiled","test","negated","relativize","basedir","prefix","startsWith","slice","REGEX_SPECIALS","compileGlob","pattern","options","body","consumed","consumeToken","regex","next","RegExp","anchored","withDirSuffix","ch","consumeStar","after","compileOne","raw","includes","isLiteral","matchesPathspec","spec","matched","stripTrailingSpaces","line","charCodeAt","unescapePattern","s","replace","invalidMergeTree","invalidMergeInput","MAX_CONFLICT_OUTPUT_BYTES","FORBIDDEN_SUBSTRINGS","encoder","TextEncoder","isControlCode","isBidiOrInvisible","validateLabel","label","which","trim","hasForbiddenChar","marker","hasMarkerSubstring","sumBytes","total","concatEnsuringTrailingLf","Uint8Array","inner","last","needsLf","block","writeConflictMarkers","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","TEXT_DECODER","TextDecoder","fatal","TEXT_ENCODER","stripTrailingNewline","endsWith","parseRefStatusLine","name","accepted","rest","space","indexOf","invalidReportStatus","parseReceivePackResponse","source","pkt","decode","payload","collectDataLines","first","unpack","ok","error","parseUnpackLine","unpackOk","refUpdates","map","unpackError","cache","WeakMap","readConfig","existing","get","loadConfig","readRawConfig","parseConfigText","fs","readUtf8","layout","gitDir","err","data","text","sections","collectSections","assembleParsed","current","joinContinuations","split","trimmed","stripInlineComment","header","parseSectionHeader","section","subsection","kv","parseKeyValue","piece","cuts","indexOfUnquoted","filter","n","inQuotes","c","quoteAt","sectionPart","lastQuote","lastIndexOf","eqAt","key","value","acc","sec","mergeCore","mergeUser","mergeRemote","mergeBranch","finalize","lowered","toLowerCase","core","bare","parseGitBoolean","excludesFile","user","email","remote","Map","fetch","url","merged","branch","merge","TRUE_VALUES","Set","has","readGitignore","dir","loadAndParse","workDir","lstat","isFile","isSymbolicLink","MAX_GITIGNORE_BYTES","gitignoreFileTooLarge","sanitizedErrorPath","rawLine","afterNegation","withoutTrailingSlash","stripped","cleanPattern","parseGitignore","slash","buildRepoIgnorePredicate","evaluator","global","config","resolved","homeDir","expandUserPath","readGlobalExcludes","info","readInfoExclude","root","loadDirRules","cached","loaded","buildIgnoreEvaluator","stack","stackedDirs","isDirectory","ancestor","ancestorsOf","add","level","relative","r","matchInStack","segments","join","resourceLocked","mtimeMs","resource","acquireIndexLock","opts","lockPath","indexPath","lockSuffix","indexFile","now","Date","breakStaleLockMs","writeExclusive","readLockMtime","maybeBreakStaleLock","makeLock","age","rm","committed","released","release","commit","index","sortedEntries","sort","entryMetas","paddedLength","extensionMetas","extensions","ext","sigBytes","signature","totalLength","totalSize","reduce","sum","m","DataView","buffer","serializeIndex","checksum","hash","write","rename","HEAD_REF","RefName","from","assertRepository","headPath","exists","assertNotBare","operation","isBare","bareRepository","readHeadRaw","content","refNotFound","parsed","parseLooseRef","PENDING_MARKERS","file","assertNoPendingOperation","Promise","all","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","count","enforceLiteralMustMatch","literals","matchedSet","lit","pathspecNoMatch","INDEX_MISSING_CODES","addLiteralOnly","validated","lock","readExistingEntries","newEntries","added","modified","stageOne","previous","values","removed","allLiteralsAreFiles","catch","addByPathspec","ignore","combinedIgnore","seen","walkEntry","walkWorkingTree","processWalkEntry","isPathOrAncestorIgnored","MAX_WORKING_TREE_BLOB_BYTES","workingTreeFileTooLarge","stageFromStat","readIndex","fresh","operationAborted","readContent","writeObject","makeEntry","readlink","floor","ctimeMs","HEADS_PREFIX","compareRefName","resolveBranchTarget","startPoint","resolveRef","branchNotFound","CHECKOUT_MATERIALIZE_OP","resolvePathSource","head","readTree","bootstrapRepository","validateRefName","initialBranch","mkdir","writeUtf8","rmRecursive","DEFAULT_RETRY","attempts","backoff","baseMs","maxDelayMs","withDefaults","safeLogger","logger","wrapLoggerSanitizer","transport","withRetry","retry","auth","withAuth","withLogging","log","event","sanitizeEvent","sanitizeStr","headers","sanitizeHeaders","errorMessage","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","AGENT","negotiateProtocolCapabilities","uniqueRefOids","refs","validateUrl","rejectControlChars","parseUrl","enforceScheme","allowInsecure","rejectFragment","addresses","resolver","hostname","pinnedAddress","pickPinnedAddress","allowPrivateNetworks","invalidUrl","URL","proto","protocol","unsupportedScheme","addr","isBlockedAddress","blockedHost","isBlockedIpv6","isBlockedIpv4","octets","parts","part","parseIpv4","lower","dotted","match","hex","high","low","CLONE_DISCOVER_OP","writeFetchedRefs","advertisement","headBranch","headTrackedBranch","written","ref","remoteRef","writeRef","localRef","tagRef","debug","refPath","ad","symref","capabilities","find","applyRemoteHead","resolveAuthor","input","explicit","configUser","authorUnconfigured","resolveCommitter","author","sanitizeMessage","allowEmpty","emptyCommitMessage","mergeHeadPath","mergeMsgPath","insertEntry","node","files","child","subdirs","writeSubtree","treeEntries","leaf","writeTree","resolveTreeId","obj","readObject","FETCH_NEGOTIATE_OP","collectRefTips","remoteName","ids","looseDirs","fullDir","collectFromDir","refPrefix","packed","getRefStore","getPackedRefs","readdir","isOid","OID_RE","remoteTargetForRef","isSafeRefName","composed","readExistingRef","prune","advertisedBranches","remoteDir","deleted","deleteUnadvertised","warn","refName","updateRef","repeat","delete","isPackedRefDeleteError","flattenTree","treeId","walkTree","DIRECTORY","MERGE_WRITE_FILES_OP","UNSUPPORTED_CONFLICT_TYPES","commitCleanMerge","branchName","mergedTree","resolveMergeAuthor","commitData","parents","committer","resolveMergeCommitter","message","extraHeaders","createCommit","expected","computeMergeTreeResult","ourTreeId","getTree","theirTreeId","baseTreeId","ourFlat","theirFlat","baseFlat","resolve","buildContentMerger","paths","keys","buildUnionPaths","sortedPaths","sortByPath","p","outcomes","outcome","conflicts","extractConflicts","cleanMerge","mergeTrees","synthesiseMergedTree","mergeCtx","_baseStub","_oursStub","_theirsStub","readBlob","maxBytes","oursDiff","theirsDiff","plan","oursChanges","theirsChanges","consumedTheirs","oc","twin","tc","mergePlans","baseLines","cursor","change","applyPlan","mergeContent","leaves","collectLeaves","writeNestedTree","depth","treeDepthExceeded","slashIndex","sub","bucket","partitionByPrefix","subdirEntries","subLeaves","fileEntries","f","persistConflictState","rejectUnsupportedConflicts","writeConflictingWorkingTree","oldHeadId","origHeadPath","writeOrigHead","targetId","writeMergeHead","writeMergeMsg","indexEntries","buildConflictIndexEntries","mergeHead","origHead","unsupportedOperation","runBounded","writeOutcomeToTree","writeConflictToTree","items","limit","fn","workers","worker","concurrency","blob","writeWorkingTreeFile","removeWorkingTreeFile","materialiseConflictBytes","survivorId","fullPath","parent","parentDir","lastSlash","zeroStat","stage0","stageConflicts","seenPaths","pathCmp","comparePaths","conflictsToIndexEntries","combined","cfgUser","timestamp","timezoneOffset","authorInput","committerInput","commitId","unexpectedObjectType","expandShort","parseRefspec","refspecInvalid","force","colonCount","countOccurrences","expanded","src","dst","isDelete","colonAt","srcRaw","dstRaw","PUSH_ENUMERATE_OBJECTS_OP","PUSH_UPLOAD_OP","ZERO_OID","ObjectId","REFS_HEADS_PREFIX","SIDE_BAND_CAPS","REMOTE_NAME_RE","buildRemoteMap","resolveOneRefspec","remoteByName","remoteOid","localOid","enforceLeaseAndFastForward","lease","resolveLease","isAncestor","nonFastForward","pushRejected","emptyReport","forceWithLease","descendant","walkCommits","ignoreMissing","sendUpdates","adv","movers","wants","haves","oids","collectObjects","pack","buildPack","CLIENT_CAPABILITIES_PUSH","selectPushCapabilities","requestBody","req","updates","emptyReceiveUpdates","payloads","u","idx","update","caps","tail","oldId","newId","updateLine","framed","encodePktStream","packfile","buildReceivePackRequest","toRefUpdate","postReceivePack","parseReceiveResponse","applyReportStatus","enumeratePushObjects","progress","receivePackUrl","buildReceivePackUrl","baseUrl","invalidBaseUrl","pathname","host","search","byteStream","pkts","hasSideBand","channel1","parseSideBand","onProgress","sanitize","statusByName","updateTrackingCache","VALID_PEEL_TARGETS","INDEX_STAGE_PATTERN","SHORT_HEX_PATTERN","fail","revparseUnresolved","findOperatorStart","parseOperations","parseTilde","op","parseCaret","isDigit","closeIdx","targetStr","digitsStr","resolveBase","ObjectIdFactory","objectNotFound","applyOperation","getNthParent","cur","peel","object","resolveIndexStage","expr","STATUS_SCAN_OP","byPathAscending","HEADER_ENCODER","isModified","hashHex","TAGS_PREFIX","currentHeadId","addAll","emptyPathspec","dispatchPathspec","action","headsDir","branches","currentTarget","listBranches","branchExists","createBranch","cannotDeleteCheckedOutBranch","deleteBranch","to","writeSymbolicRef","renameBranch","switchMode","isSwitch","pathsMode","isPaths","enumerateSourcePaths","pathSet","detached","changedPaths","materializeResult","currentIndex","targetTree","synthesizeTreeFromIndex","materializeTree","forceRewriteAll","materializePathRestoreLockless","newIndexEntries","materializePathRestoreLocked","pathRestore","detach","branchRef","oid","resolveSwitchOid","switchBranch","targetDirectoryNotEmpty","remoteAdvertisesNoRefs","bootstrap","packResult","fetchPack","progressOp","shallow","updateShallow","unshallow","fetchedRefs","fetchAndPropagate","readMergeHead","allowEmptyMessage","draft","readMergeMsg","resolveCommitMessage","toAuthor","buildResolverInput","buildCommitterInput","unmergedPaths","mergeHasConflicts","rejectUnmergedIndex","buildTreeFromIndex","parentId","tryResolve","buildParents","getParentTree","nothingToCommit","clearMergeState","diffTrees","detectRenames","remoteNotConfigured","resolveRemoteUrl","seeds","tip","MAX_HAVES","cappedSeeds","MAX_WALK_SEEDS","verifyHash","deriveHaves","updatedRefs","applyRemoteRefs","prunedRefs","startId","resolveStart","exclude","resolveExcluding","excluding","before","yielded","until","order","getTime","resolveTarget","mergeBase","noFastForward","fastForwardOnly","treeResult","mergeCommit","refspecs","resolveRefspecsInput","discoverReceivePackRefs","resolveAllRefspecs","pushedRefs","buildIndexFromTree","rebuildIndexFromCommit","hardResetFromCommit","expression","operations","evaluate","exec","parseIndexStage","opStart","parseRefOrHex","byPath","indexByPath","tracker","reporter","lastEmittedBucket","tick","createGranularityTracker","indexChecks","classifyEntry","untracked","workingTreeChanges","indexChanges","clean","tags","listTags","tagExists","createTag","tagNotFound","deleteTag"],"mappings":"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"}