@scolladon/tsgit 0.9.0 → 1.0.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 (72) hide show
  1. package/dist/cjs/chunks/repository-Cfo6Bj8T.cjs +2 -0
  2. package/dist/cjs/chunks/repository-Cfo6Bj8T.cjs.map +1 -0
  3. package/dist/cjs/index.browser.cjs +1 -1
  4. package/dist/cjs/index.default.cjs +1 -1
  5. package/dist/cjs/index.node.cjs +1 -1
  6. package/dist/esm/adapters/browser/index.js +1 -1
  7. package/dist/esm/adapters/memory/index.js +1 -1
  8. package/dist/esm/adapters/node/index.js +1 -1
  9. package/dist/esm/adapters/node/index.js.map +1 -1
  10. package/dist/esm/chunks/{browser-http-transport-CRPPmib5.js → browser-http-transport-mZQKkInJ.js} +2 -2
  11. package/dist/esm/chunks/{browser-http-transport-CRPPmib5.js.map → browser-http-transport-mZQKkInJ.js.map} +1 -1
  12. package/dist/esm/chunks/{error-DVZkS_ub.js → error-CnIcr6IG.js} +2 -2
  13. package/dist/esm/chunks/{error-DVZkS_ub.js.map → error-CnIcr6IG.js.map} +1 -1
  14. package/dist/esm/chunks/{error-CAlAXhN3.js → error-DTEP18A3.js} +2 -2
  15. package/dist/esm/chunks/{error-CAlAXhN3.js.map → error-DTEP18A3.js.map} +1 -1
  16. package/dist/esm/chunks/index-CJc-SKMj.js +2 -0
  17. package/dist/esm/chunks/{index-gUdap5AF.js.map → index-CJc-SKMj.js.map} +1 -1
  18. package/dist/esm/chunks/{logger-Cg7fUh8D.js → logger-84ixEPbQ.js} +2 -2
  19. package/dist/esm/chunks/{logger-Cg7fUh8D.js.map → logger-84ixEPbQ.js.map} +1 -1
  20. package/dist/esm/chunks/memory-http-transport-BmHjaEWj.js +2 -0
  21. package/dist/esm/chunks/{memory-http-transport-Cv1sbkCX.js.map → memory-http-transport-BmHjaEWj.js.map} +1 -1
  22. package/dist/esm/chunks/{merge-base-opORz-S1.js → merge-base-DmuOYxfP.js} +2 -2
  23. package/dist/esm/chunks/{merge-base-opORz-S1.js.map → merge-base-DmuOYxfP.js.map} +1 -1
  24. package/dist/esm/chunks/{node-http-transport-CuXVJf0s.js → node-http-transport-Bz3noIS3.js} +2 -2
  25. package/dist/esm/chunks/{node-http-transport-CuXVJf0s.js.map → node-http-transport-Bz3noIS3.js.map} +1 -1
  26. package/dist/esm/chunks/progress-OTDhgmPO.js +2 -0
  27. package/dist/esm/chunks/{progress-OxUHmDV4.js.map → progress-OTDhgmPO.js.map} +1 -1
  28. package/dist/esm/chunks/repository-qcX3-LkP.js +2 -0
  29. package/dist/esm/chunks/repository-qcX3-LkP.js.map +1 -0
  30. package/dist/esm/commands/index.js +1 -1
  31. package/dist/esm/index.browser.js +1 -1
  32. package/dist/esm/index.default.js +1 -1
  33. package/dist/esm/index.js +1 -1
  34. package/dist/esm/index.node.js +1 -1
  35. package/dist/esm/primitives/index.js +1 -1
  36. package/dist/esm/primitives/index.js.map +1 -1
  37. package/dist/types/adapters/browser/index.d.cts +2 -2
  38. package/dist/types/adapters/browser/index.d.ts +2 -2
  39. package/dist/types/adapters/memory/index.d.cts +2 -2
  40. package/dist/types/adapters/memory/index.d.ts +2 -2
  41. package/dist/types/adapters/node/index.d.cts +2 -2
  42. package/dist/types/adapters/node/index.d.ts +2 -2
  43. package/dist/types/chunks/{context-C6df52Qs.d.ts → context-CTaXSPiP.d.ts} +3 -3
  44. package/dist/types/chunks/{context-Ku1aP8Ie.d.cts → context-d36639-i.d.cts} +3 -3
  45. package/dist/types/chunks/{diff-change-BwO75AgS.d.cts → diff-change-B09vxnxy.d.cts} +1 -1
  46. package/dist/types/chunks/{diff-change-CUWN3OSK.d.ts → diff-change-D7xSeCn9.d.ts} +1 -1
  47. package/dist/types/chunks/{http-transport--_NdQOiw.d.cts → http-transport-DirKfK2S.d.cts} +1 -1
  48. package/dist/types/chunks/{http-transport--_NdQOiw.d.ts → http-transport-DirKfK2S.d.ts} +1 -1
  49. package/dist/types/chunks/{repository-Cv4Y0T9t.d.cts → repository-CFT9j9H6.d.cts} +2 -2
  50. package/dist/types/chunks/{repository-BBKJnr8a.d.ts → repository-ntg7eXb2.d.ts} +2 -2
  51. package/dist/types/commands/index.d.cts +3 -3
  52. package/dist/types/commands/index.d.ts +3 -3
  53. package/dist/types/index.browser.d.cts +4 -4
  54. package/dist/types/index.browser.d.ts +4 -4
  55. package/dist/types/index.d.cts +5 -5
  56. package/dist/types/index.d.ts +5 -5
  57. package/dist/types/index.default.d.cts +4 -4
  58. package/dist/types/index.default.d.ts +4 -4
  59. package/dist/types/index.node.d.cts +4 -4
  60. package/dist/types/index.node.d.ts +4 -4
  61. package/dist/types/primitives/index.d.cts +3 -3
  62. package/dist/types/primitives/index.d.ts +3 -3
  63. package/dist/types/transport/index.d.cts +1 -1
  64. package/dist/types/transport/index.d.ts +1 -1
  65. package/package.json +38 -19
  66. package/dist/cjs/chunks/repository-Cbzk-Qwz.cjs +0 -2
  67. package/dist/cjs/chunks/repository-Cbzk-Qwz.cjs.map +0 -1
  68. package/dist/esm/chunks/index-gUdap5AF.js +0 -2
  69. package/dist/esm/chunks/memory-http-transport-Cv1sbkCX.js +0 -2
  70. package/dist/esm/chunks/progress-OxUHmDV4.js +0 -2
  71. package/dist/esm/chunks/repository-BaEhU6zt.js +0 -2
  72. package/dist/esm/chunks/repository-BaEhU6zt.js.map +0 -1
@@ -1,5 +1,5 @@
1
- import { a as Context, C as Compressor, I as InflateStreamResult, F as FileSystem, c as FileStat, D as DirEntry, d as FileHandle, H as HashService, e as Hasher } from '../../chunks/context-Ku1aP8Ie.cjs';
2
- import { H as HttpTransport, a as HttpRequest, b as HttpResponse } from '../../chunks/http-transport--_NdQOiw.cjs';
1
+ import { b as Context, C as Compressor, I as InflateStreamResult, f as FileSystem, e as FileStat, D as DirEntry, F as FileHandle, H as HashService, g as Hasher } from '../../chunks/context-d36639-i.cjs';
2
+ import { b as HttpTransport, H as HttpRequest, a as HttpResponse } from '../../chunks/http-transport-DirKfK2S.cjs';
3
3
 
4
4
  interface NodeAdapterOptions {
5
5
  readonly workDir: string;
@@ -1,5 +1,5 @@
1
- import { a as Context, C as Compressor, I as InflateStreamResult, F as FileSystem, c as FileStat, D as DirEntry, d as FileHandle, H as HashService, e as Hasher } from '../../chunks/context-C6df52Qs.js';
2
- import { H as HttpTransport, a as HttpRequest, b as HttpResponse } from '../../chunks/http-transport--_NdQOiw.js';
1
+ import { b as Context, C as Compressor, I as InflateStreamResult, f as FileSystem, e as FileStat, D as DirEntry, F as FileHandle, H as HashService, g as Hasher } from '../../chunks/context-CTaXSPiP.js';
2
+ import { b as HttpTransport, H as HttpRequest, a as HttpResponse } from '../../chunks/http-transport-DirKfK2S.js';
3
3
 
4
4
  interface NodeAdapterOptions {
5
5
  readonly workDir: string;
@@ -1,4 +1,4 @@
1
- import { H as HttpTransport } from './http-transport--_NdQOiw.js';
1
+ import { b as HttpTransport } from './http-transport-DirKfK2S.js';
2
2
 
3
3
  interface InflateStreamResult {
4
4
  /** The fully-inflated output bytes. */
@@ -350,5 +350,5 @@ interface CreateContextParts {
350
350
  /** Assemble a frozen Context from its constituent ports + layout. */
351
351
  declare function createContext(parts: CreateContextParts): Context;
352
352
 
353
- export { ObjectId as O, FilePath as b, createContext as i, RefName as j, noopLogger as n, wrapLoggerSanitizer as w };
354
- export type { AuthStrategy as A, Compressor as C, DirEntry as D, FileSystem as F, HashService as H, InflateStreamResult as I, Logger as L, ProgressReporter as P, RepositoryConfig as R, Context as a, FileStat as c, FileHandle as d, Hasher as e, AuthorIdentity as f, CreateContextParts as g, RepositoryLayout as h };
353
+ export { ObjectId as O, RefName as R, FilePath as d, createContext as j, noopLogger as n, wrapLoggerSanitizer as w };
354
+ export type { AuthStrategy as A, Compressor as C, DirEntry as D, FileHandle as F, HashService as H, InflateStreamResult as I, Logger as L, ProgressReporter as P, AuthorIdentity as a, Context as b, CreateContextParts as c, FileStat as e, FileSystem as f, Hasher as g, RepositoryConfig as h, RepositoryLayout as i };
@@ -1,4 +1,4 @@
1
- import { H as HttpTransport } from './http-transport--_NdQOiw.cjs';
1
+ import { b as HttpTransport } from './http-transport-DirKfK2S.cjs';
2
2
 
3
3
  interface InflateStreamResult {
4
4
  /** The fully-inflated output bytes. */
@@ -350,5 +350,5 @@ interface CreateContextParts {
350
350
  /** Assemble a frozen Context from its constituent ports + layout. */
351
351
  declare function createContext(parts: CreateContextParts): Context;
352
352
 
353
- export { ObjectId as O, FilePath as b, createContext as i, RefName as j, noopLogger as n, wrapLoggerSanitizer as w };
354
- export type { AuthStrategy as A, Compressor as C, DirEntry as D, FileSystem as F, HashService as H, InflateStreamResult as I, Logger as L, ProgressReporter as P, RepositoryConfig as R, Context as a, FileStat as c, FileHandle as d, Hasher as e, AuthorIdentity as f, CreateContextParts as g, RepositoryLayout as h };
353
+ export { ObjectId as O, RefName as R, FilePath as d, createContext as j, noopLogger as n, wrapLoggerSanitizer as w };
354
+ export type { AuthStrategy as A, Compressor as C, DirEntry as D, FileHandle as F, HashService as H, InflateStreamResult as I, Logger as L, ProgressReporter as P, AuthorIdentity as a, Context as b, CreateContextParts as c, FileStat as e, FileSystem as f, Hasher as g, RepositoryConfig as h, RepositoryLayout as i };
@@ -1,4 +1,4 @@
1
- import { b as FilePath, O as ObjectId } from './context-Ku1aP8Ie.cjs';
1
+ import { d as FilePath, O as ObjectId } from './context-d36639-i.cjs';
2
2
 
3
3
  interface AuthorIdentity {
4
4
  readonly name: string;
@@ -1,4 +1,4 @@
1
- import { b as FilePath, O as ObjectId } from './context-C6df52Qs.js';
1
+ import { d as FilePath, O as ObjectId } from './context-CTaXSPiP.js';
2
2
 
3
3
  interface AuthorIdentity {
4
4
  readonly name: string;
@@ -17,4 +17,4 @@ interface HttpTransport {
17
17
  readonly request: (req: HttpRequest) => Promise<HttpResponse>;
18
18
  }
19
19
 
20
- export type { HttpTransport as H, HttpRequest as a, HttpResponse as b };
20
+ export type { HttpRequest as H, HttpResponse as a, HttpTransport as b };
@@ -17,4 +17,4 @@ interface HttpTransport {
17
17
  readonly request: (req: HttpRequest) => Promise<HttpResponse>;
18
18
  }
19
19
 
20
- export type { HttpTransport as H, HttpRequest as a, HttpResponse as b };
20
+ export type { HttpRequest as H, HttpResponse as a, HttpTransport as b };
@@ -1,7 +1,7 @@
1
1
  import { add, branch, checkout, clone, commit, diff, fetch, init, log, merge, push, reset, revParse, rm, status, tag } from '../commands/index.cjs';
2
2
  import { createCommit, diffTrees, getRepoRoot, mergeBase, readBlob, readIndex, readObject, readTree, resolveRef, updateRef, walkCommits, walkTree, writeObject, writeSymbolicRef, writeTree } from '../primitives/index.cjs';
3
- import { F as FileSystem, H as HashService, C as Compressor, R as RepositoryConfig, L as Logger, P as ProgressReporter, a as Context } from './context-Ku1aP8Ie.cjs';
4
- import { H as HttpTransport } from './http-transport--_NdQOiw.cjs';
3
+ import { f as FileSystem, H as HashService, C as Compressor, h as RepositoryConfig, L as Logger, P as ProgressReporter, b as Context } from './context-d36639-i.cjs';
4
+ import { b as HttpTransport } from './http-transport-DirKfK2S.cjs';
5
5
 
6
6
  /**
7
7
  * Helper that strips the leading `Context` parameter from a function type so
@@ -1,7 +1,7 @@
1
1
  import { add, branch, checkout, clone, commit, diff, fetch, init, log, merge, push, reset, revParse, rm, status, tag } from '../commands/index.js';
2
2
  import { createCommit, diffTrees, getRepoRoot, mergeBase, readBlob, readIndex, readObject, readTree, resolveRef, updateRef, walkCommits, walkTree, writeObject, writeSymbolicRef, writeTree } from '../primitives/index.js';
3
- import { F as FileSystem, H as HashService, C as Compressor, R as RepositoryConfig, L as Logger, P as ProgressReporter, a as Context } from './context-C6df52Qs.js';
4
- import { H as HttpTransport } from './http-transport--_NdQOiw.js';
3
+ import { f as FileSystem, H as HashService, C as Compressor, h as RepositoryConfig, L as Logger, P as ProgressReporter, b as Context } from './context-CTaXSPiP.js';
4
+ import { b as HttpTransport } from './http-transport-DirKfK2S.js';
5
5
 
6
6
  /**
7
7
  * Helper that strips the leading `Context` parameter from a function type so
@@ -1,6 +1,6 @@
1
- import { b as FilePath, a as Context, j as RefName, O as ObjectId } from '../chunks/context-Ku1aP8Ie.cjs';
2
- import { A as AuthorIdentity, T as TreeDiff } from '../chunks/diff-change-BwO75AgS.cjs';
3
- import '../chunks/http-transport--_NdQOiw.cjs';
1
+ import { d as FilePath, b as Context, R as RefName, O as ObjectId } from '../chunks/context-d36639-i.cjs';
2
+ import { A as AuthorIdentity, T as TreeDiff } from '../chunks/diff-change-B09vxnxy.cjs';
3
+ import '../chunks/http-transport-DirKfK2S.cjs';
4
4
 
5
5
  interface AddOptions {
6
6
  readonly force?: boolean;
@@ -1,6 +1,6 @@
1
- import { b as FilePath, a as Context, j as RefName, O as ObjectId } from '../chunks/context-C6df52Qs.js';
2
- import { A as AuthorIdentity, T as TreeDiff } from '../chunks/diff-change-CUWN3OSK.js';
3
- import '../chunks/http-transport--_NdQOiw.js';
1
+ import { d as FilePath, b as Context, R as RefName, O as ObjectId } from '../chunks/context-CTaXSPiP.js';
2
+ import { A as AuthorIdentity, T as TreeDiff } from '../chunks/diff-change-D7xSeCn9.js';
3
+ import '../chunks/http-transport-DirKfK2S.js';
4
4
 
5
5
  interface AddOptions {
6
6
  readonly force?: boolean;
@@ -1,10 +1,10 @@
1
- import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-Cv4Y0T9t.cjs';
1
+ import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-CFT9j9H6.cjs';
2
2
  export { AdapterSet, consoleProgress, detectRuntime, isBrowser, isNode, noopProgress } from './index.cjs';
3
- export { P as ProgressReporter } from './chunks/context-Ku1aP8Ie.cjs';
3
+ export { P as ProgressReporter } from './chunks/context-d36639-i.cjs';
4
4
  import './commands/index.cjs';
5
- import './chunks/diff-change-BwO75AgS.cjs';
5
+ import './chunks/diff-change-B09vxnxy.cjs';
6
6
  import './primitives/index.cjs';
7
- import './chunks/http-transport--_NdQOiw.cjs';
7
+ import './chunks/http-transport-DirKfK2S.cjs';
8
8
 
9
9
  /**
10
10
  * Browser-runtime extension to `OpenRepositoryOptions`. The browser cannot
@@ -1,10 +1,10 @@
1
- import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-BBKJnr8a.js';
1
+ import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-ntg7eXb2.js';
2
2
  export { AdapterSet, consoleProgress, detectRuntime, isBrowser, isNode, noopProgress } from './index.js';
3
- export { P as ProgressReporter } from './chunks/context-C6df52Qs.js';
3
+ export { P as ProgressReporter } from './chunks/context-CTaXSPiP.js';
4
4
  import './commands/index.js';
5
- import './chunks/diff-change-CUWN3OSK.js';
5
+ import './chunks/diff-change-D7xSeCn9.js';
6
6
  import './primitives/index.js';
7
- import './chunks/http-transport--_NdQOiw.js';
7
+ import './chunks/http-transport-DirKfK2S.js';
8
8
 
9
9
  /**
10
10
  * Browser-runtime extension to `OpenRepositoryOptions`. The browser cannot
@@ -1,9 +1,9 @@
1
- import { F as FileSystem, H as HashService, C as Compressor, P as ProgressReporter } from './chunks/context-Ku1aP8Ie.cjs';
2
- export { A as AuthStrategy, f as AuthorIdentity, a as Context, g as CreateContextParts, D as DirEntry, c as FileStat, e as Hasher, L as Logger, R as RepositoryConfig, h as RepositoryLayout, i as createContext, n as noopLogger, w as wrapLoggerSanitizer } from './chunks/context-Ku1aP8Ie.cjs';
3
- import { H as HttpTransport } from './chunks/http-transport--_NdQOiw.cjs';
4
- export { a as HttpRequest, b as HttpResponse } from './chunks/http-transport--_NdQOiw.cjs';
1
+ import { f as FileSystem, H as HashService, C as Compressor, P as ProgressReporter } from './chunks/context-d36639-i.cjs';
2
+ export { A as AuthStrategy, a as AuthorIdentity, b as Context, c as CreateContextParts, D as DirEntry, e as FileStat, g as Hasher, L as Logger, h as RepositoryConfig, i as RepositoryLayout, j as createContext, n as noopLogger, w as wrapLoggerSanitizer } from './chunks/context-d36639-i.cjs';
3
+ import { b as HttpTransport } from './chunks/http-transport-DirKfK2S.cjs';
4
+ export { H as HttpRequest, a as HttpResponse } from './chunks/http-transport-DirKfK2S.cjs';
5
5
  export { AddOptions, AddResult, BranchAction, BranchInfo, BranchResult, ChangeEntry, ChangeKind, CheckoutOptions, CheckoutResult, CloneOptions, CloneResult, CommitOptions, CommitResult, DiffOptions, FetchOptions, FetchResult, InitOptions, InitResult, LogEntry, LogOptions, MergeOptions, MergeResult, PushOptions, PushResult, ResetMode, ResetOptions, ResetResult, RmOptions, RmResult, StatusResult, TagAction, TagInfo, TagResult, add, branch, checkout, clone, commit, diff, fetch, init, log, merge, push, reset, revParse, rm, status, tag } from './commands/index.cjs';
6
- import './chunks/diff-change-BwO75AgS.cjs';
6
+ import './chunks/diff-change-B09vxnxy.cjs';
7
7
 
8
8
  /**
9
9
  * The four adapter ports the facade plumbs into the Context. Each runtime
@@ -1,9 +1,9 @@
1
- import { F as FileSystem, H as HashService, C as Compressor, P as ProgressReporter } from './chunks/context-C6df52Qs.js';
2
- export { A as AuthStrategy, f as AuthorIdentity, a as Context, g as CreateContextParts, D as DirEntry, c as FileStat, e as Hasher, L as Logger, R as RepositoryConfig, h as RepositoryLayout, i as createContext, n as noopLogger, w as wrapLoggerSanitizer } from './chunks/context-C6df52Qs.js';
3
- import { H as HttpTransport } from './chunks/http-transport--_NdQOiw.js';
4
- export { a as HttpRequest, b as HttpResponse } from './chunks/http-transport--_NdQOiw.js';
1
+ import { f as FileSystem, H as HashService, C as Compressor, P as ProgressReporter } from './chunks/context-CTaXSPiP.js';
2
+ export { A as AuthStrategy, a as AuthorIdentity, b as Context, c as CreateContextParts, D as DirEntry, e as FileStat, g as Hasher, L as Logger, h as RepositoryConfig, i as RepositoryLayout, j as createContext, n as noopLogger, w as wrapLoggerSanitizer } from './chunks/context-CTaXSPiP.js';
3
+ import { b as HttpTransport } from './chunks/http-transport-DirKfK2S.js';
4
+ export { H as HttpRequest, a as HttpResponse } from './chunks/http-transport-DirKfK2S.js';
5
5
  export { AddOptions, AddResult, BranchAction, BranchInfo, BranchResult, ChangeEntry, ChangeKind, CheckoutOptions, CheckoutResult, CloneOptions, CloneResult, CommitOptions, CommitResult, DiffOptions, FetchOptions, FetchResult, InitOptions, InitResult, LogEntry, LogOptions, MergeOptions, MergeResult, PushOptions, PushResult, ResetMode, ResetOptions, ResetResult, RmOptions, RmResult, StatusResult, TagAction, TagInfo, TagResult, add, branch, checkout, clone, commit, diff, fetch, init, log, merge, push, reset, revParse, rm, status, tag } from './commands/index.js';
6
- import './chunks/diff-change-CUWN3OSK.js';
6
+ import './chunks/diff-change-D7xSeCn9.js';
7
7
 
8
8
  /**
9
9
  * The four adapter ports the facade plumbs into the Context. Each runtime
@@ -1,10 +1,10 @@
1
- import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-Cv4Y0T9t.cjs';
1
+ import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-CFT9j9H6.cjs';
2
2
  export { AdapterSet, consoleProgress, detectRuntime, isBrowser, isNode, noopProgress } from './index.cjs';
3
- export { P as ProgressReporter } from './chunks/context-Ku1aP8Ie.cjs';
3
+ export { P as ProgressReporter } from './chunks/context-d36639-i.cjs';
4
4
  import './commands/index.cjs';
5
- import './chunks/diff-change-BwO75AgS.cjs';
5
+ import './chunks/diff-change-B09vxnxy.cjs';
6
6
  import './primitives/index.cjs';
7
- import './chunks/http-transport--_NdQOiw.cjs';
7
+ import './chunks/http-transport-DirKfK2S.cjs';
8
8
 
9
9
  /**
10
10
  * Memory-runtime entry point. Selected by `package.json` `"exports"` for
@@ -1,10 +1,10 @@
1
- import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-BBKJnr8a.js';
1
+ import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-ntg7eXb2.js';
2
2
  export { AdapterSet, consoleProgress, detectRuntime, isBrowser, isNode, noopProgress } from './index.js';
3
- export { P as ProgressReporter } from './chunks/context-C6df52Qs.js';
3
+ export { P as ProgressReporter } from './chunks/context-CTaXSPiP.js';
4
4
  import './commands/index.js';
5
- import './chunks/diff-change-CUWN3OSK.js';
5
+ import './chunks/diff-change-D7xSeCn9.js';
6
6
  import './primitives/index.js';
7
- import './chunks/http-transport--_NdQOiw.js';
7
+ import './chunks/http-transport-DirKfK2S.js';
8
8
 
9
9
  /**
10
10
  * Memory-runtime entry point. Selected by `package.json` `"exports"` for
@@ -1,10 +1,10 @@
1
- import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-Cv4Y0T9t.cjs';
1
+ import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-CFT9j9H6.cjs';
2
2
  export { AdapterSet, consoleProgress, detectRuntime, isBrowser, isNode, noopProgress } from './index.cjs';
3
- export { P as ProgressReporter } from './chunks/context-Ku1aP8Ie.cjs';
3
+ export { P as ProgressReporter } from './chunks/context-d36639-i.cjs';
4
4
  import './commands/index.cjs';
5
- import './chunks/diff-change-BwO75AgS.cjs';
5
+ import './chunks/diff-change-B09vxnxy.cjs';
6
6
  import './primitives/index.cjs';
7
- import './chunks/http-transport--_NdQOiw.cjs';
7
+ import './chunks/http-transport-DirKfK2S.cjs';
8
8
 
9
9
  /**
10
10
  * Node-runtime extension to `OpenRepositoryOptions`. Adds `allowInsecureHttp`
@@ -1,10 +1,10 @@
1
- import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-BBKJnr8a.js';
1
+ import { O as OpenRepositoryOptions, R as Repository } from './chunks/repository-ntg7eXb2.js';
2
2
  export { AdapterSet, consoleProgress, detectRuntime, isBrowser, isNode, noopProgress } from './index.js';
3
- export { P as ProgressReporter } from './chunks/context-C6df52Qs.js';
3
+ export { P as ProgressReporter } from './chunks/context-CTaXSPiP.js';
4
4
  import './commands/index.js';
5
- import './chunks/diff-change-CUWN3OSK.js';
5
+ import './chunks/diff-change-D7xSeCn9.js';
6
6
  import './primitives/index.js';
7
- import './chunks/http-transport--_NdQOiw.js';
7
+ import './chunks/http-transport-DirKfK2S.js';
8
8
 
9
9
  /**
10
10
  * Node-runtime extension to `OpenRepositoryOptions`. Adds `allowInsecureHttp`
@@ -1,6 +1,6 @@
1
- import { O as ObjectId, b as FilePath, a as Context, j as RefName } from '../chunks/context-Ku1aP8Ie.cjs';
2
- import { A as AuthorIdentity, F as FileMode, T as TreeDiff } from '../chunks/diff-change-BwO75AgS.cjs';
3
- import '../chunks/http-transport--_NdQOiw.cjs';
1
+ import { O as ObjectId, d as FilePath, b as Context, R as RefName } from '../chunks/context-d36639-i.cjs';
2
+ import { A as AuthorIdentity, F as FileMode, T as TreeDiff } from '../chunks/diff-change-B09vxnxy.cjs';
3
+ import '../chunks/http-transport-DirKfK2S.cjs';
4
4
 
5
5
  interface Blob {
6
6
  readonly type: 'blob';
@@ -1,6 +1,6 @@
1
- import { O as ObjectId, b as FilePath, a as Context, j as RefName } from '../chunks/context-C6df52Qs.js';
2
- import { A as AuthorIdentity, F as FileMode, T as TreeDiff } from '../chunks/diff-change-CUWN3OSK.js';
3
- import '../chunks/http-transport--_NdQOiw.js';
1
+ import { O as ObjectId, d as FilePath, b as Context, R as RefName } from '../chunks/context-CTaXSPiP.js';
2
+ import { A as AuthorIdentity, F as FileMode, T as TreeDiff } from '../chunks/diff-change-D7xSeCn9.js';
3
+ import '../chunks/http-transport-DirKfK2S.js';
4
4
 
5
5
  interface Blob {
6
6
  readonly type: 'blob';
@@ -1,4 +1,4 @@
1
- import { a as HttpRequest, b as HttpResponse, H as HttpTransport } from '../chunks/http-transport--_NdQOiw.cjs';
1
+ import { H as HttpRequest, a as HttpResponse, b as HttpTransport } from '../chunks/http-transport-DirKfK2S.cjs';
2
2
 
3
3
  type RetryPredicate = (info: {
4
4
  readonly error?: unknown;
@@ -1,4 +1,4 @@
1
- import { a as HttpRequest, b as HttpResponse, H as HttpTransport } from '../chunks/http-transport--_NdQOiw.js';
1
+ import { H as HttpRequest, a as HttpResponse, b as HttpTransport } from '../chunks/http-transport-DirKfK2S.js';
2
2
 
3
3
  type RetryPredicate = (info: {
4
4
  readonly error?: unknown;
package/package.json CHANGED
@@ -1,11 +1,28 @@
1
1
  {
2
2
  "name": "@scolladon/tsgit",
3
- "version": "0.9.0",
3
+ "version": "1.0.0",
4
4
  "description": "Lightning-fast git, pure TypeScript, everywhere.",
5
5
  "type": "module",
6
6
  "license": "MIT",
7
+ "author": "Sébastien Colladon",
8
+ "homepage": "https://github.com/scolladon/tsgit#readme",
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "git+https://github.com/scolladon/tsgit.git"
12
+ },
13
+ "bugs": {
14
+ "url": "https://github.com/scolladon/tsgit/issues"
15
+ },
16
+ "keywords": [
17
+ "git",
18
+ "typescript",
19
+ "nodejs",
20
+ "browser",
21
+ "opfs",
22
+ "zero-dependency"
23
+ ],
7
24
  "engines": {
8
- "node": ">=20.3.0"
25
+ "node": ">=22.22.1"
9
26
  },
10
27
  "sideEffects": false,
11
28
  "main": "./dist/cjs/index.cjs",
@@ -173,7 +190,8 @@
173
190
  "check:security": "wireit",
174
191
  "check:architecture": "wireit",
175
192
  "check:spelling": "wireit",
176
- "validate": "wireit"
193
+ "validate": "wireit",
194
+ "upgrade": "npm update && npm install && npm run validate"
177
195
  },
178
196
  "wireit": {
179
197
  "build": {
@@ -252,9 +270,10 @@
252
270
  "output": []
253
271
  },
254
272
  "check:deps": {
255
- "command": "npm outdated || true",
273
+ "command": "npm outdated",
256
274
  "files": [
257
- "package.json"
275
+ "package.json",
276
+ "package-lock.json"
258
277
  ],
259
278
  "output": []
260
279
  },
@@ -490,11 +509,11 @@
490
509
  },
491
510
  "devDependencies": {
492
511
  "@arethetypeswrong/cli": "0.18.2",
493
- "@biomejs/biome": "2.4.11",
494
- "@commitlint/cli": "20.5.0",
495
- "@commitlint/config-conventional": "20.5.0",
512
+ "@biomejs/biome": "2.4.15",
513
+ "@commitlint/cli": "21.0.1",
514
+ "@commitlint/config-conventional": "21.0.1",
496
515
  "@ls-lint/ls-lint": "2.3.1",
497
- "@playwright/test": "1.59.1",
516
+ "@playwright/test": "1.60.0",
498
517
  "@rollup/plugin-node-resolve": "16.0.3",
499
518
  "@rollup/plugin-terser": "1.0.0",
500
519
  "@rollup/plugin-typescript": "12.3.0",
@@ -502,23 +521,23 @@
502
521
  "@stryker-mutator/core": "9.6.1",
503
522
  "@stryker-mutator/typescript-checker": "9.6.1",
504
523
  "@stryker-mutator/vitest-runner": "9.6.1",
505
- "@types/node": "22.19.17",
506
- "@vitest/coverage-v8": "4.1.4",
524
+ "@types/node": "25.8.0",
525
+ "@vitest/coverage-v8": "4.1.6",
507
526
  "cspell": "10.0.0",
508
- "dependency-cruiser": "17.3.10",
509
- "fast-check": "4.6.0",
527
+ "dependency-cruiser": "17.4.0",
528
+ "fast-check": "4.8.0",
510
529
  "husky": "9.1.7",
511
530
  "isomorphic-git": "1.38.0",
512
- "jscpd": "4.0.9",
513
- "knip": "6.4.1",
514
- "lint-staged": "16.4.0",
515
- "rollup": "4.60.1",
531
+ "jscpd": "4.2.2",
532
+ "knip": "6.14.1",
533
+ "lint-staged": "17.0.5",
534
+ "rollup": "4.60.4",
516
535
  "rollup-plugin-dts": "6.4.1",
517
536
  "rollup-plugin-visualizer": "7.0.1",
518
537
  "size-limit": "12.1.0",
519
538
  "typedoc": "0.28.19",
520
- "typescript": "6.0.2",
521
- "vitest": "4.1.4",
539
+ "typescript": "6.0.3",
540
+ "vitest": "4.1.6",
522
541
  "wireit": "0.14.12"
523
542
  }
524
543
  }
@@ -1,2 +0,0 @@
1
- "use strict";var e=require("./error-DN8Vnwr4.cjs"),r=require("./logger-Cz9r6yt5.cjs"),t=require("./progress-CK7CT9vU.cjs"),s=require("./index-iUd-bwwm.cjs"),i=require("./merge-base-DlGWnkxP.cjs"),o=require("../primitives/index.cjs");const a=["fs","transport","compressor","hash"],n=e=>{if(null!==e&&"object"==typeof e&&!Object.isFrozen(e)){Object.freeze(e);for(const r of Object.keys(e))n(e[r])}},d=/^[A-Za-z]:[/\\]/,l=(r,t)=>{const s=r=>{if(!c(r,t))throw e.pathspecOutsideRepo(r)};return{read:e=>(s(e),r.read(e)),readSlice:(e,t,i)=>(s(e),r.readSlice(e,t,i)),readUtf8:e=>(s(e),r.readUtf8(e)),write:(e,t)=>(s(e),r.write(e,t)),writeExclusive:(e,t)=>(s(e),r.writeExclusive(e,t)),writeUtf8:(e,t)=>(s(e),r.writeUtf8(e,t)),exists:e=>(s(e),r.exists(e)),stat:e=>(s(e),r.stat(e)),lstat:e=>(s(e),r.lstat(e)),readdir:e=>(s(e),r.readdir(e)),mkdir:e=>(s(e),r.mkdir(e)),rm:e=>(s(e),r.rm(e)),rename:(e,t)=>(s(e),s(t),r.rename(e,t)),readlink:e=>(s(e),r.readlink(e)),symlink:(e,t)=>(s(e),s(t),r.symlink(e,t)),chmod:(e,t)=>(s(e),r.chmod(e,t)),rmRecursive:e=>(s(e),r.rmRecursive(e)),openWithNoFollow:(e,t)=>(s(e),r.openWithNoFollow(e,t))}},c=(e,r)=>{if(e===r)return!0;const t=r.endsWith("/")?r:`${r}/`;return e.startsWith(t)},p=(e,r)=>{const t=r?.allowInsecure??!1,i=r?.allowPrivateNetworks??!1,o=r?.dnsResolver??m;return{request:async r=>(await s.validateUrl(r.url,{resolver:o,allowInsecure:t,allowPrivateNetworks:i}),e.request(r))}},m=async()=>[];exports.openRepository=async(c,m)=>{(r=>{if(void 0!==r.cwd&&!(e=>e.startsWith("/")||e.startsWith("\\\\")||d.test(e))(r.cwd))throw e.invalidOption("cwd","must be an absolute path");const t=r.config;void 0!==t&&((r=>{if(void 0!==r){if(!Number.isInteger(r))throw e.invalidOption("parallelism","must be an integer");if(r<1||r>32)throw e.invalidOption("parallelism",`must be in 1..32 (got ${r})`)}})(t.parallelism),(r=>{if(void 0!==r&&r<1024)throw e.invalidOption("maxResponseBytes",`must be >= 1024 (got ${r})`)})(t.maxResponseBytes),(r=>{if(void 0!==r&&r<0)throw e.invalidOption("breakStaleLockMs",`must be >= 0 (got ${r})`)})(t.breakStaleLockMs),(r=>{if(void 0!==r&&r<1)throw e.invalidOption("maxObjectsPerPack",`must be >= 1 (got ${r})`)})(t.maxObjectsPerPack),(r=>{if(void 0!==r&&r<1)throw e.invalidOption("maxDnsResults",`must be >= 1 (got ${r})`)})(t.maxDnsResults),(r=>{if(void 0!==r&&"function"!=typeof r)throw e.invalidOption("dnsResolver","must be a function")})(t.dnsResolver))})(c);const f=c.cwd??(r.isNode()?globalThis.process.cwd():"/"),u=((r,t)=>{const s={fs:r.fs??t.fs,hash:r.hash??t.hash,compressor:r.compressor??t.compressor,transport:r.transport??t.transport};if(void 0===s.fs)throw e.adapterUnavailable(t.runtime,"fs adapter missing");if(void 0===s.hash)throw e.adapterUnavailable(t.runtime,"hash adapter missing");if(void 0===s.compressor)throw e.adapterUnavailable(t.runtime,"compressor adapter missing");if(void 0===s.transport)throw e.adapterUnavailable(t.runtime,"transport adapter missing");return s})(c,m),h=!0===c.unsafeRawAdapters?u:{...u,fs:l(u.fs,m.layout.workDir),transport:p(u.transport,c.config)},w=void 0!==c.config?(g={...c.config},n(g),g):void 0;var g;const v=new AbortController,b=void 0!==c.signal?AbortSignal.any([v.signal,c.signal]):v.signal,O={fs:h.fs,hash:h.hash,compressor:h.compressor,transport:h.transport,progress:c.progress??t.noopProgress,layout:m.layout,cwd:f,hashConfig:m.hashConfig,deltaCache:m.deltaCache,signal:b},y=void 0!==c.logger?r.wrapLoggerSanitizer(c.logger):void 0,k=Object.freeze({...O,...void 0!==w?{config:w}:{},...void 0!==y?{logger:y}:{}});let R,j="OPEN";const x=()=>{if(k.signal.aborted||"OPEN"!==j)throw e.repositoryDisposed()},P=Object.freeze({add:(e,r)=>(x(),s.add(k,e,r)),branch:e=>(x(),s.branch(k,e)),checkout:e=>(x(),s.checkout(k,e)),clone:e=>(x(),s.clone(k,e)),commit:e=>(x(),s.commit(k,e)),diff:e=>(x(),s.diff(k,e)),fetch:e=>(x(),s.fetch(k,e)),init:e=>(x(),s.init(k,e)),log:e=>(x(),s.log(k,e)),merge:e=>(x(),s.merge(k,e)),push:e=>(x(),s.push(k,e)),reset:e=>(x(),s.reset(k,e)),revParse:e=>(x(),s.revParse(k,e)),rm:(e,r)=>(x(),s.rm(k,e,r)),status:()=>(x(),s.status(k)),tag:e=>(x(),s.tag(k,e)),primitives:Object.freeze({createCommit:e=>(x(),i.createCommit(k,e)),diffTrees:(e,r,t)=>(x(),i.diffTrees(k,e,r,t)),getRepoRoot:()=>(x(),i.getRepoRoot(k)),mergeBase:(e,r)=>(x(),i.mergeBase(k,e,r)),readBlob:(e,r)=>(x(),o.readBlob(k,e,r)),readIndex:()=>(x(),i.readIndex(k)),readObject:(e,r)=>(x(),i.readObject(k,e,r)),readTree:e=>(x(),i.readTree(k,e)),resolveRef:(e,r)=>(x(),i.resolveRef(k,e,r)),updateRef:(e,r,t)=>(x(),i.updateRef(k,e,r,t)),walkCommits:e=>(x(),i.walkCommits(k,e)),walkTree:(e,r)=>(x(),o.walkTree(k,e,r)),writeObject:e=>(x(),i.writeObject(k,e)),writeSymbolicRef:(e,r)=>(x(),i.writeSymbolicRef(k,e,r)),writeTree:e=>(x(),i.writeTree(k,e))}),ctx:k,dispose:async()=>{if("DISPOSED"!==j)return void 0!==R||(j="DISPOSING",v.abort(),R=(async()=>{await new Promise(e=>{"function"==typeof setImmediate?setImmediate(e):setTimeout(e,0)}),await(async e=>{await Promise.all(a.map(r=>(async(e,r)=>{const t=e[r];if("function"==typeof t.dispose)try{await t.dispose()}catch(t){e.logger?.warn?.("disposeAdapters: port dispose threw",{port:r,err:String(t)})}})(e,r)))})(k),j="DISPOSED"})()),R}});return P};
2
- //# sourceMappingURL=repository-Cbzk-Qwz.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"repository-Cbzk-Qwz.cjs","sources":["../../../src/dispose-adapters.ts","../../../src/repository/deep-freeze.ts","../../../src/repository/validate-options.ts","../../../src/repository/wrap-fs-validator.ts","../../../src/repository/wrap-transport-validator.ts","../../../src/repository.ts","../../../src/repository/default-cwd.ts","../../../src/repository/compose-adapters.ts"],"sourcesContent":[null,null,null,null,null,null,null,null],"names":["DISPOSABLE_PORT_KEYS","walk","value","Object","isFrozen","freeze","key","keys","ABS_WINDOWS","wrapFsValidator","fs","cwd","guard","path","isContainedIn","pathspecOutsideRepo","read","p","readSlice","o","l","readUtf8","write","d","writeExclusive","writeUtf8","c","exists","stat","lstat","readdir","mkdir","rm","rename","s","readlink","symlink","target","linkPath","chmod","mode","rmRecursive","openWithNoFollow","normalizedCwd","endsWith","startsWith","wrapTransportValidator","transport","config","allowInsecure","allowPrivateNetworks","resolver","dnsResolver","defaultResolver","request","async","req","validateUrl","url","opts","fallback","undefined","test","isAbsolutePath","invalidOption","Number","isInteger","validateParallelism","parallelism","validateMaxResponseBytes","maxResponseBytes","validateBreakStaleLockMs","breakStaleLockMs","validateMaxObjectsPerPack","maxObjectsPerPack","validateMaxDnsResults","maxDnsResults","validateDnsResolver","validateOptions","isNode","globalThis","process","detected","overrides","resolved","hash","compressor","adapterUnavailable","runtime","composeAdapters","adapters","unsafeRawAdapters","layout","workDir","controller","AbortController","signal","AbortSignal","any","baseCtx","progress","noopProgress","hashConfig","deltaCache","sanitizedLogger","logger","wrapLoggerSanitizer","ctx","disposePromise","state","aborted","repositoryDisposed","repo","add","paths","addOpts","commands.add","branch","action","commands.branch","checkout","checkoutOpts","commands.checkout","clone","cloneOpts","commands.clone","commit","commitOpts","commands.commit","diff","diffOpts","commands.diff","fetch","fetchOpts","commands.fetch","init","initOpts","commands.init","log","logOpts","commands.log","merge","mergeOpts","commands.merge","push","pushOpts","commands.push","reset","resetOpts","commands.reset","revParse","expression","commands.revParse","rmOpts","commands.rm","status","commands.status","tag","commands.tag","primitives","createCommit","input","primitives.createCommit","diffTrees","a","b","options","primitives.diffTrees","getRepoRoot","primitives.getRepoRoot","mergeBase","primitives.mergeBase","readBlob","id","primitives.readBlob","readIndex","primitives.readIndex","readObject","primitives.readObject","readTree","ref","primitives.readTree","resolveRef","name","primitives.resolveRef","updateRef","newId","primitives.updateRef","walkCommits","primitives.walkCommits","walkTree","treeIdOrObject","primitives.walkTree","writeObject","object","primitives.writeObject","writeSymbolicRef","primitives.writeSymbolicRef","writeTree","entries","primitives.writeTree","dispose","abort","Promise","resolve","setImmediate","setTimeout","all","map","port","err","warn","String","disposePort","disposeAdapters"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{T as t,u as e}from"./error-DVZkS_ub.js";import{s as a,v as r,x as i,y as s,z as n,A as o,R as c,f as d,b as f,r as l,B as w,u,a as h,i as m,e as y,O as g,w as p,h as v,c as b,m as $,j as k,C as D}from"./merge-base-opORz-S1.js";import{o as E,c as x,p as A,e as U,b as L,d as N,f as I,g as _,h as H,u as M,j as R,t as O,k as S,l as F,m as T,n as C,q as B,v as P,w as W,x as j,y as z}from"./error-CAlAXhN3.js";function V(t,e,a,i,s){e.setUint32(a,i.ctimeSeconds),e.setUint32(a+4,i.ctimeNanoseconds),e.setUint32(a+8,i.mtimeSeconds),e.setUint32(a+12,i.mtimeNanoseconds),e.setUint32(a+16,i.dev),e.setUint32(a+20,i.ino),e.setUint32(a+24,Number.parseInt(i.mode,8)),e.setUint32(a+28,i.uid),e.setUint32(a+32,i.gid),e.setUint32(a+36,i.fileSize);const n=r(i.id);t.set(n,a+40);const o=Math.min(s.length,4095);e.setUint16(a+60,(i.flags.assumeValid?32768:0)|i.flags.stage<<12|o),t.set(s,a+62)}const X=(e,a)=>new t(void 0===a?{code:"RESOURCE_LOCKED",resource:"index",path:e}:{code:"RESOURCE_LOCKED",resource:"index",path:e,mtimeMs:a}),Y=async(e,a={})=>{const r=`${s(e.layout.gitDir)}${i}`,n=s(e.layout.gitDir),o=a.now??(()=>Date.now()),c=a.breakStaleLockMs;try{await e.fs.writeExclusive(r,new Uint8Array)}catch(a){if(!(a instanceof t)||"FILE_EXISTS"!==a.data.code)throw a;if(void 0===c)throw X(r,await K(e,r));await q(e,r,c,o)}return G(e,r,n)},K=async(t,e)=>{try{return(await t.fs.lstat(e)).mtimeMs}catch{return}},q=async(e,a,r,i)=>{const s=await K(e,a);if(void 0===s)return void await e.fs.writeExclusive(a,new Uint8Array);const n=i()-s;if(n<0)throw X(a,s);if(n<r)throw X(a,s);await e.fs.rm(a);try{await e.fs.writeExclusive(a,new Uint8Array)}catch(r){if(r instanceof t&&"FILE_EXISTS"===r.data.code)throw X(a,await K(e,a));throw r}},G=(e,r,i)=>{let s=!1,n=!1;return{release:async()=>{if(!s&&!n){n=!0;try{await e.fs.rm(r)}catch(e){if(!(e instanceof t)||"FILE_NOT_FOUND"!==e.data.code)throw e}}},commit:async t=>{if(s||n)return;const o=function(t){const e=[...t.entries].sort((t,e)=>t.path<e.path?-1:t.path>e.path?1:0),r=e.map(t=>{const e=a(t.path);return{entry:t,pathBytes:e,paddedLength:62+e.length+8&-8}}),i=t.extensions.map(t=>({ext:t,sigBytes:a(t.signature),totalLength:8+t.data.length})),s=12+r.reduce((t,e)=>t+e.paddedLength,0)+i.reduce((t,e)=>t+e.totalLength,0),n=new Uint8Array(s),o=new DataView(n.buffer);o.setUint32(0,1145655875),o.setUint32(4,2),o.setUint32(8,e.length);let c=12;for(const{entry:t,pathBytes:e,paddedLength:a}of r)V(n,o,c,t,e),c+=a;for(const{ext:t,sigBytes:e,totalLength:a}of i)n.set(e,c),o.setUint32(c+4,t.data.length),n.set(t.data,c+8),c+=a;return n}({entries:[...t],extensions:[]}),c=await e.hash.hash(o),d=new Uint8Array(o.length+c.length);d.set(o,0),d.set(c,o.length),await e.fs.write(r,d),await e.fs.rename(r,i),s=!0}}};let Z=new WeakMap;const J=t=>{const e=Z.get(t);if(void 0!==e)return e;const a=Q(t);return Z.set(t,a),a},Q=async t=>{const e=await tt(t);return void 0===e?{}:et(e)},tt=async e=>{try{return await e.fs.readUtf8(`${e.layout.gitDir}/config`)}catch(e){if(e instanceof t&&"FILE_NOT_FOUND"===e.data.code)return;throw e}},et=t=>{const e=at(t);return ct(e)},at=t=>{const e=[];let a;for(const r of rt(t.split("\n"))){const t=it(r).trim();if(""===t)continue;const i=nt(t);if(void 0!==i){a={section:i.section,subsection:i.subsection,entries:[]},e.push(a);continue}if(void 0===a)continue;const s=ot(t);void 0!==s&&a.entries.push(s)}return e},rt=t=>{const e=[];let a="";for(const r of t){const t=""===a?r:r.replace(/^\s+/,"");r.endsWith("\\")?a+=t.slice(0,t.length-(r.endsWith("\\")?1:0)):(e.push(`${a}${t}`),a="")}return""!==a&&e.push(a),e},it=t=>{const e=[st(t,"#"),st(t,";")].filter(t=>t>=0);return 0===e.length?t:t.slice(0,Math.min(...e))},st=(t,e)=>{let a=!1;for(let r=0;r<t.length;r+=1){const i=t[r];if('"'===i)a=!a;else if(!a&&i===e)return r}return-1},nt=t=>{if(!t.startsWith("[")||!t.endsWith("]"))return;const e=t.slice(1,-1).trim();if(""===e)return;const a=e.indexOf('"');if(-1===a)return{section:e,subsection:void 0};const r=e.slice(0,a).trim(),i=e.lastIndexOf('"');return i<=a?void 0:{section:r,subsection:e.slice(a+1,i)}},ot=t=>{const e=t.indexOf("=");if(-1===e)return;const a=t.slice(0,e).trim();return""!==a?{key:a,value:t.slice(e+1).trim()}:void 0},ct=t=>{const e={};for(const a of t)"core"===a.section&&void 0===a.subsection?dt(e,a):"user"===a.section&&void 0===a.subsection?ft(e,a):"remote"===a.section&&void 0!==a.subsection?lt(e,a.subsection,a):"branch"===a.section&&void 0!==a.subsection&&wt(e,a.subsection,a);return ut(e)},dt=(t,e)=>{for(const{key:a,value:r}of e.entries)"bare"===a&&(t.core??={},t.core={...t.core,bare:yt(r)})},ft=(t,e)=>{for(const{key:a,value:r}of e.entries)"name"===a?(t.user??={},t.user={...t.user,name:r}):"email"===a&&(t.user??={},t.user={...t.user,email:r})},lt=(t,e,a)=>{t.remote??=new Map;const r=t.remote.get(e)??{},i=r.fetch?[...r.fetch]:[];let s=r.url;for(const{key:t,value:e}of a.entries)"url"===t?s=e:"fetch"===t&&i.push(e);const n={};void 0!==s&&(n.url=s),i.length>0&&(n.fetch=i),t.remote.set(e,n)},wt=(t,e,a)=>{t.branch??=new Map;const r={...t.branch.get(e)??{}};for(const{key:t,value:e}of a.entries)"remote"===t?r.remote=e:"merge"===t&&(r.merge=e);t.branch.set(e,r)},ut=t=>{const e={};return void 0!==t.core?.bare&&(e.core={bare:t.core.bare}),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},ht=new Set(["true","yes","on","1"]),mt=new Set(["false","no","off","0",""]),yt=t=>{const e=t.toLowerCase();return!!ht.has(e)||(mt.has(e),!1)},gt=c.from("HEAD"),pt=async e=>{const a=`${e.layout.gitDir}/HEAD`;if(!await e.fs.exists(a))throw new t({code:"NOT_A_REPOSITORY",path:e.layout.workDir});return e.layout.bare?e.layout.gitDir:e.layout.workDir},vt=async(e,a)=>{if(await(async t=>{const e=await J(t);return e.core?.bare??!1})(e))throw(e=>new t({code:"BARE_REPOSITORY",operation:e}))(a)},bt=async e=>{const a=`${e.layout.gitDir}/HEAD`;let r;try{r=await e.fs.readUtf8(a)}catch(e){if(e instanceof t&&"FILE_NOT_FOUND"===e.data.code)throw n(gt);throw e}const i=o(r);return"symbolic"===i.type?{kind:"symbolic",target:i.target}:{kind:"direct",id:i.target}},$t=[{file:"MERGE_HEAD",operation:"merge"},{file:"CHERRY_PICK_HEAD",operation:"cherry-pick"},{file:"REVERT_HEAD",operation:"revert"},{file:"REBASE_HEAD",operation:"rebase"}],kt=async t=>{const e=await Promise.all($t.map(e=>t.fs.exists(`${t.layout.gitDir}/${e.file}`)));for(let t=0;t<$t.length;t+=1)if(!0===e[t])throw E($t[t]?.operation)},Dt=new TextEncoder,Et=new Set([".git"]),xt=t=>{""===t&&At(t),Nt(t)>4096&&At(t),t.startsWith("/")&&At(t),t.includes("\\")&&At(t),t.includes("\0")&&At(t);const e=t.split("/");for(const a of e)Ut(a,t);return t},At=t=>{throw A(t)},Ut=(t,e)=>{""===t&&At(e),"."!==t&&".."!==t||At(e),Nt(t)>255&&At(e),Lt(t)&&At(e),t.includes(":")&&At(e);for(let a=0;a<t.length;a+=1){const r=t.charCodeAt(a);(r<=31||127===r)&&At(e)}},Lt=t=>{const e=t.toLowerCase();return!!Et.has(e)||".git"===e.replace(/[. ]+$/,"")},Nt=t=>Dt.encode(t).length,It=(t,e)=>`${t.layout.workDir}/${e}`,_t=async(t,e)=>{const a=xt(e);return t.fs.read(It(t,a))},Ht=async(t,e)=>{const a=xt(e),r=It(t,a);let i;try{i=await t.fs.lstat(r)}catch{throw x([a])}if(!i.isFile&&!i.isSymbolicLink)throw x([a]);await t.fs.rm(r)},Mt=new Set(["FILE_NOT_FOUND","INVALID_INDEX_HEADER","INVALID_INDEX_ENTRY"]),Rt=async(t,e,a={})=>{if(await pt(t),await vt(t,"add"),await kt(t),0===e.length)throw U();const r=e.map(xt),i=await Y(t,void 0!==a.breakStaleLockMs?{breakStaleLockMs:a.breakStaleLockMs}:{});try{const e=await Ot(t),a=new Map(e),s=[],n=[];for(const i of r){const r=await St(t,i);if("missing"===r)throw L(i);const o=e.get(i);a.set(i,r),void 0===o?s.push(i):o.id===r.id&&o.mode===r.mode||n.push(i)}return await i.commit(Array.from(a.values())),{added:s,modified:n,removed:[]}}finally{await i.release()}},Ot=async e=>{try{const t=await d(e),a=new Map;for(const e of t.entries)a.set(e.path,e);return a}catch(e){if(e instanceof t&&Mt.has(e.data.code))return new Map;throw e}},St=async(t,e)=>{const a=await t.fs.lstat(`${t.layout.workDir}/${e}`).catch(()=>{});if(void 0===a)return"missing";const r=a.isSymbolicLink?"120000":73&a.mode?"100755":"100644",i=a.isSymbolicLink?(new TextEncoder).encode(await t.fs.readlink(`${t.layout.workDir}/${e}`)):await _t(t,e),s=await f(t,{type:"blob",id:"",content:i});return Ft(a,r,s,e)},Ft=(t,e,a,r)=>({ctimeSeconds:Math.floor(t.ctimeMs/1e3),ctimeNanoseconds:0,mtimeSeconds:Math.floor(t.mtimeMs/1e3),mtimeNanoseconds:0,dev:t.dev,ino:t.ino,mode:e,uid:t.uid,gid:t.gid,fileSize:t.size,id:a,flags:{assumeValid:!1,extended:!1,stage:0},path:r}),Tt="refs/heads/",Ct=async(t,e)=>(await pt(t),"list"===e.kind?Bt(t):"create"===e.kind?Pt(t,e):"delete"===e.kind?Wt(t,e):jt(t,e)),Bt=async t=>{const e=`${t.layout.gitDir}/refs/heads`;if(!await t.fs.exists(e))return{kind:"list",branches:[]};const a=await bt(t),r="symbolic"===a.kind&&a.target.startsWith(Tt)?a.target:void 0,i=await t.fs.readdir(e),s=[];for(const e of i){if(!e.isFile)continue;const a=`${Tt}${e.name}`,i=await l(t,a);s.push({name:a,id:i,current:a===r})}return s.sort((t,e)=>t.name<e.name?-1:t.name>e.name?1:0),{kind:"list",branches:s}},Pt=async(e,a)=>{const r=w(`${Tt}${a.name}`),i=a.startPoint??"HEAD",s=await zt(e,i);try{await u(e,r,s,!0===a.force?{}:{expected:"absent"})}catch(e){if(e instanceof t&&"REF_UPDATE_CONFLICT"===e.data.code)throw N(r);throw e}return{kind:"create",name:r,id:s}},Wt=async(t,e)=>{const a=w(`${Tt}${e.name}`),r=await bt(t);if("symbolic"===r.kind&&r.target===a)throw I(a);if(!await t.fs.exists(`${t.layout.gitDir}/${a}`))throw _(a);return await u(t,a,"0".repeat(40),{delete:!0}),{kind:"delete",name:a}},jt=async(e,a)=>{const r=w(`${Tt}${a.from}`),i=w(`${Tt}${a.to}`),s=await l(e,r);try{await u(e,i,s,!0===a.force?{}:{expected:"absent"})}catch(e){if(e instanceof t&&"REF_UPDATE_CONFLICT"===e.data.code)throw N(i);throw e}await u(e,r,"0".repeat(40),{delete:!0});const n=await bt(e);return"symbolic"===n.kind&&n.target===r&&await h(e,"HEAD",i),{kind:"rename",from:r,to:i}},zt=async(t,e)=>{if(/^[0-9a-f]{40}$/.test(e))return e;const a="HEAD"===e?["HEAD"]:[`${Tt}${e}`,e];for(const e of a)try{return await l(t,e)}catch{}throw _(e)},Vt="checkout:materialize",Xt=async(t,e)=>{await pt(t),await vt(t,"checkout"),await kt(t),t.progress.start(Vt);try{if(e.detach||/^[0-9a-f]{40}$/.test(e.target)){const a=await Yt(t,e.target);return await t.fs.writeUtf8(`${t.layout.gitDir}/HEAD`,`${a}\n`),{branch:void 0,id:a,detached:!0}}const a=w(`refs/heads/${e.target}`);if(!await t.fs.exists(`${t.layout.gitDir}/${a}`))throw _(a);const r=await l(t,a);return await h(t,"HEAD",a),{branch:a,id:r,detached:!1}}finally{t.progress.end(Vt)}},Yt=async(t,e)=>/^[0-9a-f]{40}$/.test(e)?e:l(t,e),Kt=async(t,e)=>{const a=w(e.initialBranch),r=t.layout.gitDir;try{await t.fs.mkdir(r),await t.fs.writeUtf8(`${r}/HEAD`,`ref: refs/heads/${a}\n`),await t.fs.writeUtf8(`${r}/config`,(i=e.bare,`[core]\n\trepositoryformatversion = 0\n\tfilemode = true\n\tbare = ${i?"true":"false"}\n`)),await t.fs.mkdir(`${r}/refs/heads`),await t.fs.mkdir(`${r}/refs/tags`),await t.fs.mkdir(`${r}/objects/info`),await t.fs.mkdir(`${r}/objects/pack`),await t.fs.writeUtf8(`${r}/info/exclude`,"# git ls-files --others --exclude-from=.git/info/exclude\n# Lines that start with '#' are comments.\n# For a project mostly in C, the following would be a good set of\n# exclude patterns (uncomment them if you want to use them):\n# *.[oa]\n# *~\n"),await t.fs.writeUtf8(`${r}/description`,"Unnamed repository; edit this file 'description' to name the repository.\n")}catch(e){throw await t.fs.rmRecursive(r).catch(()=>{}),e}var i;return{gitDir:r,initialBranch:a,bare:e.bare}},qt=async(t,e)=>{Gt(t);const a=Zt(t);Jt(a,e.allowInsecure??!1),Qt(a);const r=await e.resolver(a.hostname);return{url:t,pinnedAddress:te(r,e.allowPrivateNetworks??!1)}},Gt=t=>{for(let e=0;e<t.length;e+=1){const a=t.charCodeAt(e);if(10===a||13===a)throw H("contains forbidden control character")}},Zt=t=>{try{return new URL(t)}catch{throw H("not a valid URL")}},Jt=(t,e)=>{const a=t.protocol;if("https:"!==a&&("http:"!==a||!e))throw M(a.replace(":",""))},Qt=t=>{if(""!==t.hash)throw H("URL fragment is not allowed")},te=(t,e)=>{for(const a of t)if(e||!ee(a))return a;if(0===t.length)throw R("<unresolved>","no DNS records returned");throw R(t[0],"all resolved addresses are in a blocked range")},ee=t=>t.includes(":")?re(t):ae(t),ae=t=>{const e=(t=>{const e=t.split(".");if(4!==e.length)return;const a=[];for(const t of e){if(!/^\d{1,3}$/.test(t))return;const e=Number(t);if(e<0||e>255)return;a.push(e)}return a})(t);if(void 0===e)return!1;const[a,r]=e;return 0===a||10===a||100===a&&r>=64&&r<=127||127===a||169===a&&254===r||172===a&&r>=16&&r<=31||192===a&&168===r||a>=224&&a<=239||a>=240},re=t=>{const e=t.toLowerCase(),a=e.match(/::ffff:(?:0:)?(\d+\.\d+\.\d+\.\d+)$/);if(void 0!==a?.[1])return ae(a[1]);const r=e.match(/^::ffff:([0-9a-f]{1,4}):([0-9a-f]{1,4})$/);if(void 0!==r?.[1]&&void 0!==r[2]){const t=parseInt(r[1],16),e=parseInt(r[2],16);return ae(`${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"))},ie="clone:discover",se=async(t,e)=>{if(await t.fs.exists(`${t.layout.gitDir}/HEAD`))throw O(t.layout.workDir);if(""===e.url)throw S();t.progress.start(ie);try{void 0!==e.resolver&&await qt(e.url,{resolver:e.resolver,...void 0!==e.allowInsecure?{allowInsecure:e.allowInsecure}:{},...void 0!==e.allowPrivateNetworks?{allowPrivateNetworks:e.allowPrivateNetworks}:{}});const a=await Kt(t,{initialBranch:e.initialBranch??"main",bare:e.bare??!1});return{path:a.gitDir,head:a.initialBranch,fetchedRefs:[]}}finally{t.progress.end(ie)}},ne=t=>{if(void 0!==t.explicit)return t.explicit;if(void 0!==t.configUser)return t.configUser;throw T()},oe=t=>{if(void 0!==t.explicit)return t.explicit;if(void 0!==t.author)return t.author;if(void 0!==t.configUser)return t.configUser;throw T()},ce=(t,e)=>{const a=t.trim();if(""===a&&!e.allowEmpty)throw F();return a},de=async(t,e)=>{await pt(t),await vt(t,"commit"),await kt(t);const a=ce(e.message,{allowEmpty:e.allowEmptyMessage??!1}),r=await J(t),i=fe(r.user),s=ne(le(e.author,i)),n=oe(we(e.committer,s,i)),o=await d(t),c=await me(t,o.entries),f=await bt(t),l="symbolic"===f.kind?await ue(t,f.target):f.id,w=void 0!==l?[l]:[];if(!e.allowEmpty&&void 0!==l&&await he(t,l)===c)throw C();const h={tree:c,parents:w,author:s,committer:n,message:a,extraHeaders:[]},y=await m(t,h),g="symbolic"===f.kind?f.target:void 0;return void 0!==g?await u(t,g,y,void 0!==l?{expected:l}:{}):await t.fs.writeUtf8(`${t.layout.gitDir}/HEAD`,`${y}\n`),{id:y,tree:c,branch:g,parents:w}},fe=t=>{if(void 0!==t)return{name:t.name,email:t.email,timestamp:Math.floor(Date.now()/1e3),timezoneOffset:"+0000"}},le=(t,e)=>{const a={};return void 0!==t&&(a.explicit=t),void 0!==e&&(a.configUser=e),a},we=(t,e,a)=>{const r={};return void 0!==t&&(r.explicit=t),void 0!==e&&(r.author=e),void 0!==a&&(r.configUser=a),r},ue=async(t,e)=>{try{return await l(t,e)}catch{return}},he=async(t,e)=>{const a=await y(t,e);return"commit"!==a.type?g.from("0".repeat(40)):a.data.tree},me=async(t,e)=>{const a={files:new Map,subdirs:new Map};for(const t of e)ye(a,t.path.split("/"),t);return ge(t,a)},ye=(t,e,a)=>{if(1===e.length)return void t.files.set(e[0],{id:a.id,mode:a.mode});const[r,...i]=e,s=r;let n=t.subdirs.get(s);void 0===n&&(n={files:new Map,subdirs:new Map},t.subdirs.set(s,n)),ye(n,i,a)},ge=async(t,e)=>{const a=[];for(const[t,r]of e.files)a.push({mode:r.mode,name:t,id:r.id});const r=await Promise.all(Array.from(e.subdirs).map(async([e,a])=>({name:e,id:await ge(t,a)})));for(const{name:t,id:e}of r)a.push({mode:"40000",name:t,id:e});return p(t,a)},pe=async(t,e={})=>{await pt(t);const a=await ve(t,e.from??"HEAD"),r=void 0!==e.to?await ve(t,e.to):void 0;return v(t,a,r,!0===e.detectRenames?{detectRenames:!0}:{})},ve=async(t,e)=>{const a=/^[0-9a-f]{40}$/.test(e)?e:await l(t,"HEAD"===e?"HEAD":w(e)),r=await y(t,a);return"commit"===r.type?r.data.tree:a},be="fetch:negotiate",$e=async(t,e={})=>{await pt(t),t.progress.start(be);try{const a=e.remote??"origin",r=await J(t),i=r.remote?.get(a);if(void 0===i?.url)throw B(a);return{remote:a,url:i.url,updatedRefs:[]}}finally{t.progress.end(be)}},ke=async(e,a={})=>{const r=a.initialBranch??"main",i=a.bare??!1;if(await e.fs.exists(`${e.layout.gitDir}/HEAD`))throw new t({code:"ALREADY_INITIALIZED",path:e.layout.gitDir});const s=await Kt(e,{initialBranch:r,bare:i});return{path:s.gitDir,initialBranch:s.initialBranch,bare:s.bare}},De=async(t,e={})=>{await pt(t);const a=await Ee(t,e.from??"HEAD"),r=await xe(t,e.excluding??[]),i=e.before,s=[];let n=0;for await(const o of b(t,{from:[a],until:r,order:"first-parent"}))if(!(void 0!==i&&o.data.committer.timestamp>=i.getTime()/1e3)&&(s.push({id:o.id,tree:o.data.tree,parents:o.data.parents,author:o.data.author,committer:o.data.committer,message:o.data.message}),n+=1,void 0!==e.limit&&n>=e.limit))break;return s},Ee=async(t,e)=>{if(/^[0-9a-f]{40}$/.test(e))return e;if("HEAD"===e)return l(t,"HEAD");const a=[e,`refs/heads/${e}`,`refs/tags/${e}`];for(const e of a)try{return await l(t,w(e))}catch{}return l(t,w(e))},xe=async(t,e)=>{const a=[];for(const r of e)if(/^[0-9a-f]{40}$/.test(r))a.push(r);else try{a.push(await l(t,w(r)))}catch{}return a},Ae=async(t,a)=>{await pt(t),await vt(t,"merge"),await kt(t);const r=await bt(t);if("symbolic"!==r.kind)throw e("merge","cannot merge with detached HEAD");const i=await l(t,r.target),s=await Ne(t,a.target);if(i===s)return{kind:"up-to-date",id:i};const n=await $(t,i,s);if(n===s)return{kind:"up-to-date",id:i};if(n===i&&!0!==a.noFastForward)return await u(t,r.target,s,{expected:i}),{kind:"fast-forward",id:s,branch:r.target};if(!0===a.fastForwardOnly)throw P(r.target,i,s);return Le(t,a,r.target,i,s)},Ue="merge:write-files",Le=async(t,e,a,r,i)=>{t.progress.start(Ue);try{const s=await J(t),n=s.user?{name:s.user.name,email:s.user.email,timestamp:Math.floor(Date.now()/1e3),timezoneOffset:"+0000"}:void 0,o={};void 0!==e.author&&(o.explicit=e.author),void 0!==n&&(o.configUser=n);const c=ne(o),d={author:c};void 0!==e.committer&&(d.explicit=e.committer),void 0!==n&&(d.configUser=n);const f=oe(d),l={tree:await Ie(t,r),parents:[r,i],author:c,committer:f,message:ce(e.message??`Merge ${e.target}`,{allowEmpty:!1}),extraHeaders:[]},w=await m(t,l);return await u(t,a,w,{expected:r}),{kind:"merge",id:w,branch:a,parents:[r,i]}}finally{t.progress.end(Ue)}},Ne=async(t,e)=>/^[0-9a-f]{40}$/.test(e)?e:l(t,`refs/heads/${e}`),Ie=async(t,e)=>{const a=await y(t,e);if("commit"!==a.type)throw k("commit",a.type,e);return a.data.tree},_e="push:enumerate-objects",He=async(t,e={})=>{await pt(t),t.progress.start(_e);try{const a=e.remote??"origin",r=await J(t),i=r.remote?.get(a);if(void 0===i?.url)throw B(a);return{remote:a,url:i.url,pushedRefs:[]}}finally{t.progress.end(_e)}},Me=async(t,e)=>{await pt(t),"hard"===e.mode&&await vt(t,"reset --hard"),await kt(t);const a=await Re(t,e.target),r=await bt(t),i="symbolic"===r.kind?r.target:void 0;return void 0!==i?await u(t,i,a,{}):await t.fs.writeUtf8(`${t.layout.gitDir}/HEAD`,`${a}\n`),{mode:e.mode,id:a,branch:i}},Re=async(t,e)=>{if(/^[0-9a-f]{40}$/.test(e))return e;const a="HEAD"===e?["HEAD"]:[e,`refs/heads/${e}`,`refs/tags/${e}`];for(const e of a)try{return await l(t,e)}catch{}throw W(e)},Oe=new Set(["commit","tree","blob","tag"]),Se=/^:(\d):(.+)$/,Fe=/^[0-9a-f]{1,6}$/,Te=t=>{throw W(t)},Ce=t=>{for(let e=0;e<t.length;e+=1){const a=t[e];if("~"===a||"^"===a)return e}return-1},Be=(t,e)=>{const a=[];let r=e;for(;r<t.length;){const e=t[r];if("~"===e){const e=Pe(t,r);a.push(e.op),r=e.next}else if("^"===e){const e=We(t,r);a.push(e.op),r=e.next}else Te(t)}return a},Pe=(t,e)=>{let a=e+1;for(;a<t.length&&je(t.charCodeAt(a));)a+=1;return a===e+1&&Te(t),{op:{kind:"ancestor",n:Number(t.slice(e+1,a))},next:a}},We=(t,e)=>{if("{"===t[e+1]){const a=t.indexOf("}",e+2);-1===a&&Te(t);const r=t.slice(e+2,a);return Oe.has(r)||Te(t),{op:{kind:"peel",target:r},next:a+1}}let a=e+1;for(;a<t.length&&je(t.charCodeAt(a));)a+=1;const r=t.slice(e+1,a);return{op:{kind:"parent",n:""===r?1:Number(r)},next:a}},je=t=>t>=48&&t<=57,ze=async(t,e)=>{await pt(t);const a=(""===(r=e)&&Te(r),r.startsWith(":")?(t=>{const e=Se.exec(t);null===e&&Te(t);const a=e[2],r=Number(e[1]);return(r<0||r>3)&&Te(t),""===a&&Te(t),{kind:"index-stage",stage:r,path:a}})(r):(r.includes("@{")&&Te(r),(t=>{const e=Ce(t),a=-1===e?t:t.slice(0,e);return""===a&&Te(t),Fe.test(a)&&-1===e&&Te(t),{kind:"ref-or-hex",base:a,operations:-1===e?[]:Be(t,e)}})(r)));var r;return Ve(t,a)},Ve=async(t,e)=>{if("index-stage"===e.kind)return Ge(t,e);let a=await Xe(t,e.base);for(const r of e.operations)a=await Ye(t,a,r);return a},Xe=async(t,e)=>{if(/^[0-9a-f]{40}$/.test(e))return g.from(e);const a="HEAD"===e?["HEAD"]:[e,`refs/heads/${e}`,`refs/tags/${e}`,`refs/remotes/${e}`];for(const e of a)try{return await l(t,e)}catch{}throw D(e)},Ye=async(t,e,a)=>{if("parent"===a.kind)return Ke(t,e,a.n);if("ancestor"===a.kind){let r=e;for(let e=0;e<a.n;e+=1)r=await Ke(t,r,1);return r}return qe(t,e,a.target)},Ke=async(t,e,a)=>{const r=await y(t,e);if("commit"!==r.type)throw D(e);const i=r.data.parents[a-1];if(void 0===i)throw D(e);return i},qe=async(t,e,a)=>{let r=e;for(let e=0;e<5;e+=1){const e=await y(t,r);if(e.type===a)return r;if("tag"!==e.type){if("tree"===a&&"commit"===e.type)return e.data.tree;throw D(r)}r=e.data.object}throw D(r)},Ge=async(t,e)=>{const a=await d(t);for(const t of a.entries)if(t.path===e.path&&t.flags.stage===e.stage)return t.id;throw D(`${e.stage}:${e.path}`)},Ze=new Set(["FILE_NOT_FOUND","INVALID_INDEX_HEADER","INVALID_INDEX_ENTRY"]),Je=async(e,a,r={})=>{if(await pt(e),await vt(e,"rm"),await kt(e),0===a.length)throw U();const i=a.map(xt),s=await Y(e,void 0!==r.breakStaleLockMs?{breakStaleLockMs:r.breakStaleLockMs}:{});try{const a=await d(e).catch(e=>{if(e instanceof t&&Ze.has(e.data.code))return{entries:[]};throw e}),n=new Map;for(const t of a.entries)n.set(t.path,t);const o=[];for(const t of i){if(!n.has(t))throw L(t);n.delete(t),o.push(t)}if(!r.cached)for(const a of o)await Ht(e,a).catch(e=>{if(!(e instanceof t&&"FILE_NOT_FOUND"===e.data.code))throw e});return await s.commit(Array.from(n.values())),{removed:o}}finally{await s.release()}},Qe="status:scan",ta=async t=>{await pt(t);const e=await bt(t),a="symbolic"===e.kind?e.target:void 0,r="direct"===e.kind,i=await d(t).catch(()=>({entries:[]})),s=new Map;for(const t of i.entries)s.set(t.path,t);t.progress.start(Qe);try{const e=((t,e)=>{let a=0,r=0;return{tick:()=>{a+=1;const i=Math.floor(a/100);i>r&&(r=i,t.update(e,a))}}})(t.progress,Qe),i=(await Promise.all(Array.from(s).map(async([a,r])=>{const i=await ea(t,a,r);return e.tick(),i}))).filter(t=>void 0!==t);return{branch:a,detached:r,indexChanges:[],workingTreeChanges:i,clean:0===i.length}}finally{t.progress.end(Qe)}},ea=async(t,e,a)=>void 0===await t.fs.lstat(`${t.layout.workDir}/${e}`).catch(()=>{})?{kind:"deleted",path:e}:await ra(t,e,a)?{kind:"modified",path:e}:void 0,aa=new TextEncoder,ra=async(t,e,a)=>{try{const r=await _t(t,xt(e)),i=aa.encode(`blob ${r.byteLength}\0`),s=new Uint8Array(i.byteLength+r.byteLength);return s.set(i,0),s.set(r,i.byteLength),await t.hash.hashHex(s)!==a.id}catch{return!0}},ia="refs/tags/",sa=async(t,e)=>(await pt(t),"list"===e.kind?na(t):"create"===e.kind?oa(t,e):ca(t,e)),na=async t=>{const e=`${t.layout.gitDir}/refs/tags`;if(!await t.fs.exists(e))return{kind:"list",tags:[]};const a=await t.fs.readdir(e),r=[];for(const e of a){if(!e.isFile)continue;const a=`${ia}${e.name}`,i=await l(t,a);r.push({name:a,id:i})}return r.sort((t,e)=>t.name<e.name?-1:t.name>e.name?1:0),{kind:"list",tags:r}},oa=async(e,a)=>{const r=w(`${ia}${a.name}`),i=void 0!==a.target?a.target:await da(e),s=/^[0-9a-f]{40}$/.test(i)?i:await l(e,i);try{await u(e,r,s,!0===a.force?{}:{expected:"absent"})}catch(e){if(e instanceof t&&"REF_UPDATE_CONFLICT"===e.data.code)throw j(r);throw e}return{kind:"create",name:r,id:s}},ca=async(t,e)=>{const a=w(`${ia}${e.name}`);if(!await t.fs.exists(`${t.layout.gitDir}/${a}`))throw z(a);return await u(t,a,"0".repeat(40),{delete:!0}),{kind:"delete",name:a}},da=async t=>{const e=await bt(t);return"direct"===e.kind?e.id:l(t,e.target)};export{Rt as a,Ct as b,Xt as c,se as d,de as e,pe as f,$e as g,ze as h,ke as i,Je as j,De as l,Ae as m,He as p,Me as r,ta as s,sa as t,qt as v};
2
- //# sourceMappingURL=index-gUdap5AF.js.map
@@ -1,2 +0,0 @@
1
- import{c as s,d as t,f as e,p as i,a as r,u as o,n,h,b as a}from"./error-DVZkS_ub.js";class c{constructor(){if("undefined"==typeof CompressionStream||"undefined"==typeof DecompressionStream)throw s("CompressionStream/DecompressionStream unavailable")}deflate=async t=>{try{return await l(t,new CompressionStream("deflate"))}catch(t){throw s(d(t))}};inflate=async s=>{try{return await l(s,new DecompressionStream("deflate"))}catch(s){throw t(d(s))}};streamInflate=async(s,e)=>{const i=s.subarray(e);if(i.length>65536)throw t("MemoryCompressor.streamInflate input exceeds 65536 byte safety cap; use NodeCompressor for real pack files");for(let s=1;s<=i.length;s+=1){const t=i.subarray(0,s);try{return{output:await l(t,new DecompressionStream("deflate")),bytesConsumed:s}}catch{}}throw t("no valid zlib stream at offset")};createInflateStream=()=>new DecompressionStream("deflate")}async function l(s,t){const e=new ReadableStream({start(t){t.enqueue(s),t.close()}}).pipeThrough(t).getReader(),i=[];let r=0;for(;;){const{done:s,value:t}=await e.read();if(s)break;i.push(t),r+=t.length}const o=new Uint8Array(r);let n=0;for(const s of i)o.set(s,n),n+=s.length;return o}function d(s){return s instanceof Error?s.message:String(s)}class f{files=new Map;directories=new Set;symlinks=new Map;times=new Map;rootDir;constructor(s){this.rootDir=s.rootDir,this.directories.add(this.rootDir);for(const[t,e]of Object.entries(s.files??{})){const s=this.resolve(t);this.files.set(s,e.slice()),this.touch(s),this.ensureParentDirs(s)}}read=async s=>{const t=this.resolve(s),i=this.files.get(t);if(void 0===i)throw e(s);return i.slice()};readSlice=async(s,t,r)=>{if(t<0||r<0)throw i(s);const o=this.resolve(s),n=this.files.get(o);if(void 0===n)throw e(s);const h=Math.min(t+r,n.length);return n.slice(t,h)};readUtf8=async s=>{const t=await this.read(s);return(new TextDecoder).decode(t)};write=async(s,t)=>{const e=this.resolve(s);this.ensureParentDirs(e),this.files.set(e,t.slice()),this.touch(e)};writeExclusive=async(s,t)=>{const e=this.resolve(s);if(this.files.has(e)||this.symlinks.has(e))throw r(s);this.ensureParentDirs(e),this.files.set(e,t.slice()),this.touch(e)};writeUtf8=async(s,t)=>{await this.write(s,(new TextEncoder).encode(t))};exists=async s=>{const t=this.resolve(s);return this.files.has(t)||this.directories.has(t)||this.symlinks.has(t)};static SYMLINK_FOLLOW_LIMIT=40;stat=async s=>this.statFollowing(s,s,0);async statFollowing(s,t,e){if(e>=f.SYMLINK_FOLLOW_LIMIT)throw o("stat",`symlink loop: ${t}`);const i=this.resolve(s),r=this.symlinks.get(i);return void 0!==r?this.statFollowing(r,t,e+1):this.buildStat(i,t)}lstat=async s=>{const t=this.resolve(s),e=this.symlinks.get(t);return void 0!==e?this.makeStatRecord({size:e.length,isFile:!1,isDirectory:!1,isSymbolicLink:!0,times:this.times.get(t)}):this.buildStat(t,s)};readdir=async s=>{const t=this.resolve(s);if(this.files.has(t))throw n(s);if(!this.directories.has(t))throw n(s);const e=`${t}/`,i=new Map;for(const s of this.files.keys())this.addDirectEntry(s,e,i,"file");for(const s of this.symlinks.keys())this.addDirectEntry(s,e,i,"symlink");for(const s of this.directories)s!==t&&this.addDirectEntry(s,e,i,"directory");return Array.from(i.values())};mkdir=async s=>{const t=this.resolve(s);if(this.files.has(t)||this.symlinks.has(t))throw n(s);this.addDirectoryRecursive(t)};rm=async s=>{const t=this.resolve(s);if(this.files.has(t))return this.files.delete(t),void this.times.delete(t);if(this.symlinks.has(t))return this.symlinks.delete(t),void this.times.delete(t);if(this.directories.has(t)){if(this.hasChildren(t))throw n(s);return this.directories.delete(t),void this.times.delete(t)}throw e(s)};rename=async(s,t)=>{const i=this.resolve(s),r=this.resolve(t),o=this.files.get(i),n=this.symlinks.get(i);if(void 0===o&&void 0===n)throw e(s);const h=this.times.get(i);this.ensureParentDirs(r),this.files.delete(r),this.symlinks.delete(r),this.times.delete(r),void 0!==o&&(this.files.delete(i),this.files.set(r,o)),void 0!==n&&(this.symlinks.delete(i),this.symlinks.set(r,n)),this.times.delete(i),this.times.set(r,h)};readlink=async s=>{const t=this.resolve(s),i=this.symlinks.get(t);if(void 0===i)throw e(s);return i};symlink=async(s,t)=>{const e=this.resolve(t);if(this.files.has(e)||this.symlinks.has(e)||this.directories.has(e))throw r(t);this.ensureParentDirs(e),this.symlinks.set(e,s),this.touch(e)};chmod=async(s,t)=>{this.resolve(s)};rmRecursive=async s=>{const t=this.resolve(s);this.removeLeafEntry(t)||this.directories.has(t)&&this.removeSubtree(t)};removeLeafEntry(s){return this.files.has(s)?(this.files.delete(s),this.times.delete(s),!0):!!this.symlinks.has(s)&&(this.symlinks.delete(s),this.times.delete(s),!0)}removeSubtree(s){const t=`${s}/`,e=u(this.files.keys(),t),i=u(this.symlinks.keys(),t),r=function(s,t,e){const i=[];for(const r of s)(r===t||r.startsWith(e))&&i.push(r);return i}(this.directories,s,t);y(e,this.files,this.times),y(i,this.symlinks,this.times),function(s,t,e){for(const i of s)t.delete(i),e.delete(i)}(r,this.directories,this.times)}openWithNoFollow=async(s,t)=>{const r=this.resolve(s);if(this.symlinks.has(r))throw i(s);if(!this.files.has(r))throw e(s);return this.makeMemoryHandle(r)};makeMemoryHandle(s){return{read:async(t,e,i,r)=>{const o=this.files.get(s),n=r??0,h=Math.min(n+i,o.length),a=o.subarray(n,Math.max(n,h));return t.set(a,e),a.length},write:async t=>{this.files.set(s,t.slice()),this.touch(s)},stat:async()=>this.buildStat(s,s),close:async()=>{}}}resolve(s){const t=function(s,t){const e=(t.startsWith("/")?t:`${s}/${t}`).split("/"),i=[];for(const s of e)""!==s&&"."!==s&&(".."!==s?i.push(s):i.pop());return`/${i.join("/")}`}(this.rootDir,s);if(t!==this.rootDir&&!t.startsWith(`${this.rootDir}/`))throw i(s);return t}ensureParentDirs(s){this.addDirectoryRecursive(m(s))}addDirectoryRecursive(s){let t=s;for(;t.length>=this.rootDir.length;){if(this.files.has(t)||this.symlinks.has(t))throw n(t);if(this.directories.add(t),t===this.rootDir)break;t=m(t)}}touch(s){const t=Date.now();this.times.set(s,{ctimeMs:t,mtimeMs:t})}buildStat(s,t){const i=this.files.get(s);if(void 0!==i)return this.makeStatRecord({size:i.byteLength,isFile:!0,isDirectory:!1,isSymbolicLink:!1,times:this.times.get(s)});if(this.directories.has(s))return this.makeStatRecord({size:0,isFile:!1,isDirectory:!0,isSymbolicLink:!1,times:this.times.get(s)});throw e(t)}makeStatRecord(s){const t=s.times??{ctimeMs:0,mtimeMs:0};return{ctimeMs:t.ctimeMs,mtimeMs:t.mtimeMs,dev:0,ino:0,mode:33188,uid:0,gid:0,size:s.size,isFile:s.isFile,isDirectory:s.isDirectory,isSymbolicLink:s.isSymbolicLink}}hasChildren(s){const t=`${s}/`;for(const s of this.files.keys())if(s.startsWith(t))return!0;for(const s of this.symlinks.keys())if(s.startsWith(t))return!0;for(const e of this.directories)if(e!==s&&e.startsWith(t))return!0;return!1}addDirectEntry(s,t,e,i){if(!s.startsWith(t))return;const r=s.slice(t.length),o=r.indexOf("/"),n=-1===o?r:r.slice(0,o);e.has(n)||e.set(n,-1!==o?{name:n,isFile:!1,isDirectory:!0,isSymbolicLink:!1}:{name:n,isFile:"file"===i,isDirectory:"directory"===i,isSymbolicLink:"symlink"===i})}}function m(s){return s.slice(0,s.lastIndexOf("/"))}function u(s,t){const e=[];for(const i of s)i.startsWith(t)&&e.push(i);return e}function y(s,t,e){for(const i of s)t.delete(i),e.delete(i)}const w={sha1:"SHA-1",sha256:"SHA-256"},k={sha1:20,sha256:32};class g{algorithm;digestLength;subtleAlgo;subtle;constructor(s="sha1"){const t=globalThis.crypto?.subtle;if(void 0===t)throw h("crypto.subtle unavailable");this.subtle=t,this.algorithm=s,this.digestLength=k[s],this.subtleAlgo=w[s]}hash=async s=>{const t=await this.subtle.digest(this.subtleAlgo,s);return new Uint8Array(t)};hashHex=async s=>v(await this.hash(s));createHasher=()=>{const s=[],t=this.subtle,e=this.subtleAlgo;let i=!1;const r=async()=>{if(i)throw h("cannot digest after digest");i=!0;const r=s.reduce((s,t)=>s+t.length,0),o=new Uint8Array(r);let n=0;for(const t of s)o.set(t,n),n+=t.length;const a=await t.digest(e,o);return new Uint8Array(a)};return{update:t=>{if(i)throw h("cannot update after digest");s.push(t.slice())},digest:r,digestHex:async()=>v(await r())}}}function v(s){let t="";for(const e of s)t+=e.toString(16).padStart(2,"0");return t}class b{mocks=new Map;request=async s=>{const t=p(s.method,s.url),e=this.mocks.get(t);if(void 0===e)throw a(`no mock for ${s.url}`);const i=e.body.slice();return{statusCode:e.statusCode,headers:e.headers,body:new ReadableStream({start(s){s.enqueue(i),s.close()}})}};addMockResponse(s){const t={};for(const[e,i]of Object.entries(s.response.headers))t[e.toLowerCase()]=i;this.mocks.set(p(s.method,s.url),{statusCode:s.response.statusCode,headers:t,body:s.response.body.slice()})}clearMocks(){this.mocks.clear()}}function p(s,t){return`${s}:${t}`}export{c as M,g as a,f as b,b as c};
2
- //# sourceMappingURL=memory-http-transport-Cv1sbkCX.js.map
@@ -1,2 +0,0 @@
1
- import{s as t}from"./error-CAlAXhN3.js";const e=Object.freeze({start:()=>{},update:()=>{},end:()=>{}}),r=/\x1b\[[0-9;]*m/g,a=/[<>&"']/g,o=e=>{let o=e.replace(r,"");return o=t(o),o=o.replace(a,t=>`&#${t.charCodeAt(0)};`),o},s=t=>{const e=e=>{try{t(e)}catch{}};return{start:(t,r)=>e(((t,e)=>`${o(t)}: start${void 0!==e?`/${e}`:""}`)(t,r)),update:(t,r,a,s)=>e(((t,e,r,a)=>{const s=`${o(t)}: ${e}${void 0!==r?`/${r}`:""}`;return void 0!==a&&""!==a?`${s} ${o(a)}`:s})(t,r,a,s)),end:t=>e((t=>`${o(t)}: done`)(t))}};export{s as c,e as n};
2
- //# sourceMappingURL=progress-OxUHmDV4.js.map
@@ -1,2 +0,0 @@
1
- import{a as s,i as e,p as r,r as t}from"./error-CAlAXhN3.js";import{a,w as o}from"./logger-Cg7fUh8D.js";import{n as i}from"./progress-OxUHmDV4.js";import{v as n,t as c,s as m,j as d,h as l,r as f,p,m as h,l as w,i as g,g as u,f as v,e as b,d as y,c as k,b as j,a as x}from"./index-gUdap5AF.js";import{w as O,a as R,b as P,c as S,u as I,r as D,d as N,e as C,f as z,m as E,g as T,h as W,i as $}from"./merge-base-opORz-S1.js";import{walkTree as A,readBlob as B}from"../primitives/index.js";const U=["fs","transport","compressor","hash"],F=s=>{if(null!==s&&"object"==typeof s&&!Object.isFrozen(s)){Object.freeze(s);for(const e of Object.keys(s))F(s[e])}},q=/^[A-Za-z]:[/\\]/,L=(s,e)=>{const t=s=>{if(!M(s,e))throw r(s)};return{read:e=>(t(e),s.read(e)),readSlice:(e,r,a)=>(t(e),s.readSlice(e,r,a)),readUtf8:e=>(t(e),s.readUtf8(e)),write:(e,r)=>(t(e),s.write(e,r)),writeExclusive:(e,r)=>(t(e),s.writeExclusive(e,r)),writeUtf8:(e,r)=>(t(e),s.writeUtf8(e,r)),exists:e=>(t(e),s.exists(e)),stat:e=>(t(e),s.stat(e)),lstat:e=>(t(e),s.lstat(e)),readdir:e=>(t(e),s.readdir(e)),mkdir:e=>(t(e),s.mkdir(e)),rm:e=>(t(e),s.rm(e)),rename:(e,r)=>(t(e),t(r),s.rename(e,r)),readlink:e=>(t(e),s.readlink(e)),symlink:(e,r)=>(t(e),t(r),s.symlink(e,r)),chmod:(e,r)=>(t(e),s.chmod(e,r)),rmRecursive:e=>(t(e),s.rmRecursive(e)),openWithNoFollow:(e,r)=>(t(e),s.openWithNoFollow(e,r))}},M=(s,e)=>{if(s===e)return!0;const r=e.endsWith("/")?e:`${e}/`;return s.startsWith(r)},G=(s,e)=>{const r=e?.allowInsecure??!1,t=e?.allowPrivateNetworks??!1,a=e?.dnsResolver??Z;return{request:async e=>(await n(e.url,{resolver:a,allowInsecure:r,allowPrivateNetworks:t}),s.request(e))}},Z=async()=>[],H=async(r,n)=>{(s=>{if(void 0!==s.cwd&&!(s=>s.startsWith("/")||s.startsWith("\\\\")||q.test(s))(s.cwd))throw e("cwd","must be an absolute path");const r=s.config;void 0!==r&&((s=>{if(void 0!==s){if(!Number.isInteger(s))throw e("parallelism","must be an integer");if(s<1||s>32)throw e("parallelism",`must be in 1..32 (got ${s})`)}})(r.parallelism),(s=>{if(void 0!==s&&s<1024)throw e("maxResponseBytes",`must be >= 1024 (got ${s})`)})(r.maxResponseBytes),(s=>{if(void 0!==s&&s<0)throw e("breakStaleLockMs",`must be >= 0 (got ${s})`)})(r.breakStaleLockMs),(s=>{if(void 0!==s&&s<1)throw e("maxObjectsPerPack",`must be >= 1 (got ${s})`)})(r.maxObjectsPerPack),(s=>{if(void 0!==s&&s<1)throw e("maxDnsResults",`must be >= 1 (got ${s})`)})(r.maxDnsResults),(s=>{if(void 0!==s&&"function"!=typeof s)throw e("dnsResolver","must be a function")})(r.dnsResolver))})(r);const M=r.cwd??(a()?globalThis.process.cwd():"/"),Z=((e,r)=>{const t={fs:e.fs??r.fs,hash:e.hash??r.hash,compressor:e.compressor??r.compressor,transport:e.transport??r.transport};if(void 0===t.fs)throw s(r.runtime,"fs adapter missing");if(void 0===t.hash)throw s(r.runtime,"hash adapter missing");if(void 0===t.compressor)throw s(r.runtime,"compressor adapter missing");if(void 0===t.transport)throw s(r.runtime,"transport adapter missing");return t})(r,n),H=!0===r.unsafeRawAdapters?Z:{...Z,fs:L(Z.fs,n.layout.workDir),transport:G(Z.transport,r.config)},J=void 0!==r.config?(K={...r.config},F(K),K):void 0;var K;const Q=new AbortController,V=void 0!==r.signal?AbortSignal.any([Q.signal,r.signal]):Q.signal,X={fs:H.fs,hash:H.hash,compressor:H.compressor,transport:H.transport,progress:r.progress??i,layout:n.layout,cwd:M,hashConfig:n.hashConfig,deltaCache:n.deltaCache,signal:V},Y=void 0!==r.logger?o(r.logger):void 0,_=Object.freeze({...X,...void 0!==J?{config:J}:{},...void 0!==Y?{logger:Y}:{}});let ss,es="OPEN";const rs=()=>{if(_.signal.aborted||"OPEN"!==es)throw t()},ts=Object.freeze({add:(s,e)=>(rs(),x(_,s,e)),branch:s=>(rs(),j(_,s)),checkout:s=>(rs(),k(_,s)),clone:s=>(rs(),y(_,s)),commit:s=>(rs(),b(_,s)),diff:s=>(rs(),v(_,s)),fetch:s=>(rs(),u(_,s)),init:s=>(rs(),g(_,s)),log:s=>(rs(),w(_,s)),merge:s=>(rs(),h(_,s)),push:s=>(rs(),p(_,s)),reset:s=>(rs(),f(_,s)),revParse:s=>(rs(),l(_,s)),rm:(s,e)=>(rs(),d(_,s,e)),status:()=>(rs(),m(_)),tag:s=>(rs(),c(_,s)),primitives:Object.freeze({createCommit:s=>(rs(),$(_,s)),diffTrees:(s,e,r)=>(rs(),W(_,s,e,r)),getRepoRoot:()=>(rs(),T(_)),mergeBase:(s,e)=>(rs(),E(_,s,e)),readBlob:(s,e)=>(rs(),B(_,s,e)),readIndex:()=>(rs(),z(_)),readObject:(s,e)=>(rs(),C(_,s,e)),readTree:s=>(rs(),N(_,s)),resolveRef:(s,e)=>(rs(),D(_,s,e)),updateRef:(s,e,r)=>(rs(),I(_,s,e,r)),walkCommits:s=>(rs(),S(_,s)),walkTree:(s,e)=>(rs(),A(_,s,e)),writeObject:s=>(rs(),P(_,s)),writeSymbolicRef:(s,e)=>(rs(),R(_,s,e)),writeTree:s=>(rs(),O(_,s))}),ctx:_,dispose:async()=>{if("DISPOSED"!==es)return void 0!==ss||(es="DISPOSING",Q.abort(),ss=(async()=>{await new Promise(s=>{"function"==typeof setImmediate?setImmediate(s):setTimeout(s,0)}),await(async s=>{await Promise.all(U.map(e=>(async(s,e)=>{const r=s[e];if("function"==typeof r.dispose)try{await r.dispose()}catch(r){s.logger?.warn?.("disposeAdapters: port dispose threw",{port:e,err:String(r)})}})(s,e)))})(_),es="DISPOSED"})()),ss}});return ts};export{H as o};
2
- //# sourceMappingURL=repository-BaEhU6zt.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"repository-BaEhU6zt.js","sources":["../../../src/dispose-adapters.ts","../../../src/repository/deep-freeze.ts","../../../src/repository/validate-options.ts","../../../src/repository/wrap-fs-validator.ts","../../../src/repository/wrap-transport-validator.ts","../../../src/repository.ts","../../../src/repository/default-cwd.ts","../../../src/repository/compose-adapters.ts"],"sourcesContent":[null,null,null,null,null,null,null,null],"names":["DISPOSABLE_PORT_KEYS","walk","value","Object","isFrozen","freeze","key","keys","ABS_WINDOWS","wrapFsValidator","fs","cwd","guard","path","isContainedIn","pathspecOutsideRepo","read","p","readSlice","o","l","readUtf8","write","d","writeExclusive","writeUtf8","c","exists","stat","lstat","readdir","mkdir","rm","rename","s","readlink","symlink","target","linkPath","chmod","mode","rmRecursive","openWithNoFollow","normalizedCwd","endsWith","startsWith","wrapTransportValidator","transport","config","allowInsecure","allowPrivateNetworks","resolver","dnsResolver","defaultResolver","request","async","req","validateUrl","url","openRepository","opts","fallback","undefined","test","isAbsolutePath","invalidOption","Number","isInteger","validateParallelism","parallelism","validateMaxResponseBytes","maxResponseBytes","validateBreakStaleLockMs","breakStaleLockMs","validateMaxObjectsPerPack","maxObjectsPerPack","validateMaxDnsResults","maxDnsResults","validateDnsResolver","validateOptions","isNode","globalThis","process","detected","overrides","resolved","hash","compressor","adapterUnavailable","runtime","composeAdapters","adapters","unsafeRawAdapters","layout","workDir","controller","AbortController","signal","AbortSignal","any","baseCtx","progress","noopProgress","hashConfig","deltaCache","sanitizedLogger","logger","wrapLoggerSanitizer","ctx","disposePromise","state","aborted","repositoryDisposed","repo","add","paths","addOpts","commands.add","branch","action","commands.branch","checkout","checkoutOpts","commands.checkout","clone","cloneOpts","commands.clone","commit","commitOpts","commands.commit","diff","diffOpts","commands.diff","fetch","fetchOpts","commands.fetch","init","initOpts","commands.init","log","logOpts","commands.log","merge","mergeOpts","commands.merge","push","pushOpts","commands.push","reset","resetOpts","commands.reset","revParse","expression","commands.revParse","rmOpts","commands.rm","status","commands.status","tag","commands.tag","primitives","createCommit","input","primitives.createCommit","diffTrees","a","b","options","primitives.diffTrees","getRepoRoot","primitives.getRepoRoot","mergeBase","primitives.mergeBase","readBlob","id","primitives.readBlob","readIndex","primitives.readIndex","readObject","primitives.readObject","readTree","ref","primitives.readTree","resolveRef","name","primitives.resolveRef","updateRef","newId","primitives.updateRef","walkCommits","primitives.walkCommits","walkTree","treeIdOrObject","primitives.walkTree","writeObject","object","primitives.writeObject","writeSymbolicRef","primitives.writeSymbolicRef","writeTree","entries","primitives.writeTree","dispose","abort","Promise","resolve","setImmediate","setTimeout","all","map","port","err","warn","String","disposePort","disposeAdapters"],"mappings":"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"}