compress-utils 0.11.1 → 0.12.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 (82) hide show
  1. package/README.md +44 -112
  2. package/THIRD_PARTY_NOTICES.md +42 -8
  3. package/dist/algorithms/brotli/brotli.wasm +0 -0
  4. package/dist/algorithms/brotli/compress/brotli.wasm +0 -0
  5. package/dist/algorithms/brotli/decompress/brotli.wasm +0 -0
  6. package/dist/algorithms/brotli/decompress/index.d.ts +2 -2
  7. package/dist/algorithms/brotli/decompress/index.d.ts.map +1 -1
  8. package/dist/algorithms/brotli/index.d.ts +1 -1
  9. package/dist/algorithms/brotli/index.d.ts.map +1 -1
  10. package/dist/algorithms/bz2/bz2.wasm +0 -0
  11. package/dist/algorithms/bz2/compress/bz2.wasm +0 -0
  12. package/dist/algorithms/bz2/decompress/bz2.wasm +0 -0
  13. package/dist/algorithms/bz2/decompress/index.d.ts +2 -2
  14. package/dist/algorithms/bz2/decompress/index.d.ts.map +1 -1
  15. package/dist/algorithms/bz2/index.d.ts +1 -1
  16. package/dist/algorithms/bz2/index.d.ts.map +1 -1
  17. package/dist/algorithms/deflate/decompress/index.d.ts +2 -2
  18. package/dist/algorithms/deflate/decompress/index.d.ts.map +1 -1
  19. package/dist/algorithms/deflate/index.d.ts +1 -1
  20. package/dist/algorithms/deflate/index.d.ts.map +1 -1
  21. package/dist/algorithms/gzip/compress/gzip.wasm +0 -0
  22. package/dist/algorithms/gzip/decompress/gzip.wasm +0 -0
  23. package/dist/algorithms/gzip/decompress/index.d.ts +2 -2
  24. package/dist/algorithms/gzip/decompress/index.d.ts.map +1 -1
  25. package/dist/algorithms/gzip/gzip.wasm +0 -0
  26. package/dist/algorithms/gzip/index.d.ts +1 -1
  27. package/dist/algorithms/gzip/index.d.ts.map +1 -1
  28. package/dist/algorithms/lz4/compress/lz4.wasm +0 -0
  29. package/dist/algorithms/lz4/decompress/index.d.ts +2 -2
  30. package/dist/algorithms/lz4/decompress/index.d.ts.map +1 -1
  31. package/dist/algorithms/lz4/decompress/lz4.wasm +0 -0
  32. package/dist/algorithms/lz4/index.d.ts +1 -1
  33. package/dist/algorithms/lz4/index.d.ts.map +1 -1
  34. package/dist/algorithms/lz4/lz4.wasm +0 -0
  35. package/dist/algorithms/lz4_raw/decompress/index.d.ts +2 -2
  36. package/dist/algorithms/lz4_raw/decompress/index.d.ts.map +1 -1
  37. package/dist/algorithms/lz4_raw/decompress/index.js.map +1 -1
  38. package/dist/algorithms/lz4_raw/index.d.ts +1 -1
  39. package/dist/algorithms/lz4_raw/index.d.ts.map +1 -1
  40. package/dist/algorithms/lzo/decompress/index.d.ts +2 -2
  41. package/dist/algorithms/lzo/decompress/index.d.ts.map +1 -1
  42. package/dist/algorithms/lzo/decompress/lzo.wasm +0 -0
  43. package/dist/algorithms/snappy/compress/snappy.wasm +0 -0
  44. package/dist/algorithms/snappy/decompress/index.d.ts +2 -2
  45. package/dist/algorithms/snappy/decompress/index.d.ts.map +1 -1
  46. package/dist/algorithms/snappy/decompress/snappy.wasm +0 -0
  47. package/dist/algorithms/snappy/index.d.ts +1 -1
  48. package/dist/algorithms/snappy/index.d.ts.map +1 -1
  49. package/dist/algorithms/snappy/snappy.wasm +0 -0
  50. package/dist/algorithms/xz/compress/xz.wasm +0 -0
  51. package/dist/algorithms/xz/decompress/index.d.ts +2 -2
  52. package/dist/algorithms/xz/decompress/index.d.ts.map +1 -1
  53. package/dist/algorithms/xz/decompress/xz.wasm +0 -0
  54. package/dist/algorithms/xz/index.d.ts +1 -1
  55. package/dist/algorithms/xz/index.d.ts.map +1 -1
  56. package/dist/algorithms/xz/xz.wasm +0 -0
  57. package/dist/algorithms/zlib/compress/zlib.wasm +0 -0
  58. package/dist/algorithms/zlib/decompress/index.d.ts +2 -2
  59. package/dist/algorithms/zlib/decompress/index.d.ts.map +1 -1
  60. package/dist/algorithms/zlib/decompress/zlib.wasm +0 -0
  61. package/dist/algorithms/zlib/index.d.ts +1 -1
  62. package/dist/algorithms/zlib/index.d.ts.map +1 -1
  63. package/dist/algorithms/zlib/zlib.wasm +0 -0
  64. package/dist/algorithms/zstd/compress/zstd.wasm +0 -0
  65. package/dist/algorithms/zstd/decompress/index.d.ts +2 -2
  66. package/dist/algorithms/zstd/decompress/index.d.ts.map +1 -1
  67. package/dist/algorithms/zstd/decompress/zstd.wasm +0 -0
  68. package/dist/algorithms/zstd/index.d.ts +1 -1
  69. package/dist/algorithms/zstd/index.d.ts.map +1 -1
  70. package/dist/algorithms/zstd/zstd.wasm +0 -0
  71. package/dist/core/dispatch.d.ts +9 -9
  72. package/dist/core/dispatch.d.ts.map +1 -1
  73. package/dist/core/dispatch.js +21 -17
  74. package/dist/core/dispatch.js.map +1 -1
  75. package/dist/core/loader.d.ts +5 -1
  76. package/dist/core/loader.d.ts.map +1 -1
  77. package/dist/core/loader.js +4 -1
  78. package/dist/core/loader.js.map +1 -1
  79. package/dist/core/types.d.ts +8 -0
  80. package/dist/core/types.d.ts.map +1 -1
  81. package/dist/wasm-source/resolve-node-source.mjs +2 -0
  82. package/package.json +9 -6
@@ -16,7 +16,7 @@ export declare const createDecompressStream: (opts?: import("./index.js").Decomp
16
16
  /** Requires completed preload(), like other synchronous stream factories. */
17
17
  export declare const createDecompressStreamSync: (opts?: import("./index.js").DecompressStreamOptions) => import("./index.js").DecompressStream;
18
18
  /** Incrementally decodes one raw block through Web Streams. */
19
- export declare const decompressionStream: () => TransformStream<Uint8Array, Uint8Array>;
20
- export type { DecompressOptions, DecompressStreamOptions, AlgorithmName } from "../../../core/types.js";
19
+ export declare const decompressionStream: (opts?: Pick<import("./index.js").DecompressStreamOptions, "maxOutput">) => TransformStream<Uint8Array, Uint8Array>;
20
+ export type { DecompressOptions, DecompressStreamOptions, AlgorithmName, } from "../../../core/types.js";
21
21
  export type { DecompressStream } from "../../../core/dispatch.js";
22
22
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/algorithms/lzo/decompress/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAa,KAAK,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAM3E;;;GAGG;AACH,wBAAsB,UAAU,CAC5B,KAAK,EAAE,UAAU,EACjB,OAAO,GAAE,iBAAsB,GAChC,OAAO,CAAC,UAAU,CAAC,CAGrB;AACD,qFAAqF;AACrF,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,GAAE,iBAAsB,GAAG,UAAU,CAG7F;AACD,+EAA+E;AAC/E,eAAO,MAAM,OAAO,qBAAmB,CAAC;AACxC,eAAO,MAAM,OAAO,uBAAmB,CAAC;AACxC,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,uFAAuF;AACvF,eAAO,MAAM,sBAAsB,yGAAkC,CAAC;AACtE,6EAA6E;AAC7E,eAAO,MAAM,0BAA0B,gGAAsC,CAAC;AAC9E,+DAA+D;AAC/D,eAAO,MAAM,mBAAmB,+CAA+B,CAAC;AAChE,YAAY,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACxG,YAAY,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/algorithms/lzo/decompress/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAa,KAAK,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAM3E;;;GAGG;AACH,wBAAsB,UAAU,CAC5B,KAAK,EAAE,UAAU,EACjB,OAAO,GAAE,iBAAsB,GAChC,OAAO,CAAC,UAAU,CAAC,CAGrB;AACD,qFAAqF;AACrF,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,GAAE,iBAAsB,GAAG,UAAU,CAG7F;AACD,+EAA+E;AAC/E,eAAO,MAAM,OAAO,qBAAmB,CAAC;AACxC,eAAO,MAAM,OAAO,uBAAmB,CAAC;AACxC,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,uFAAuF;AACvF,eAAO,MAAM,sBAAsB,yGAAkC,CAAC;AACtE,6EAA6E;AAC7E,eAAO,MAAM,0BAA0B,gGAAsC,CAAC;AAC9E,+DAA+D;AAC/D,eAAO,MAAM,mBAAmB,qHAA+B,CAAC;AAChE,YAAY,EACR,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,GAChB,MAAM,wBAAwB,CAAC;AAChC,YAAY,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC"}
@@ -4,12 +4,12 @@ export declare const decompressSync: (input: Uint8Array, opts?: import("./index.
4
4
  export declare const createDecompressStream: (opts?: import("./index.js").DecompressStreamOptions) => Promise<import("./index.js").DecompressStream>;
5
5
  /** Synchronous counterpart; requires completed preload(). */
6
6
  export declare const createDecompressStreamSync: (opts?: import("./index.js").DecompressStreamOptions) => import("./index.js").DecompressStream;
7
- export declare const decompressionStream: () => TransformStream<Uint8Array, Uint8Array>;
7
+ export declare const decompressionStream: (opts?: Pick<import("./index.js").DecompressStreamOptions, "maxOutput">) => TransformStream<Uint8Array, Uint8Array>;
8
8
  /** Initializes this independently loaded WASM subpath. */
9
9
  export declare const preload: () => Promise<void>;
10
10
  export declare const version: () => Promise<string>;
11
11
  export declare const setMaxDecompressedSize: (bytes: number) => Promise<void>;
12
12
  export { CompressError } from "../../../core/types.js";
13
- export type { DecompressOptions, DecompressStreamOptions, AlgorithmName } from "../../../core/types.js";
13
+ export type { DecompressOptions, DecompressStreamOptions, AlgorithmName, } from "../../../core/types.js";
14
14
  export type { DecompressStream } from "../../../core/dispatch.js";
15
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/algorithms/snappy/decompress/index.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,UAAU,2FAAsB,CAAC;AAC9C,6DAA6D;AAC7D,eAAO,MAAM,cAAc,kFAA0B,CAAC;AACtD,eAAO,MAAM,sBAAsB,yGAAkC,CAAC;AACtE,6DAA6D;AAC7D,eAAO,MAAM,0BAA0B,gGAAsC,CAAC;AAC9E,eAAO,MAAM,mBAAmB,+CAA+B,CAAC;AAChE,0DAA0D;AAC1D,eAAO,MAAM,OAAO,qBAAmB,CAAC;AACxC,eAAO,MAAM,OAAO,uBAAmB,CAAC;AACxC,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,YAAY,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACxG,YAAY,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/algorithms/snappy/decompress/index.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,UAAU,2FAAsB,CAAC;AAC9C,6DAA6D;AAC7D,eAAO,MAAM,cAAc,kFAA0B,CAAC;AACtD,eAAO,MAAM,sBAAsB,yGAAkC,CAAC;AACtE,6DAA6D;AAC7D,eAAO,MAAM,0BAA0B,gGAAsC,CAAC;AAC9E,eAAO,MAAM,mBAAmB,qHAA+B,CAAC;AAChE,0DAA0D;AAC1D,eAAO,MAAM,OAAO,qBAAmB,CAAC;AACxC,eAAO,MAAM,OAAO,uBAAmB,CAAC;AACxC,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,YAAY,EACR,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,GAChB,MAAM,wBAAwB,CAAC;AAChC,YAAY,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC"}
@@ -11,7 +11,7 @@ export declare const createDecompressStream: (opts?: import("./index.js").Decomp
11
11
  /** Synchronous counterpart; requires completed preload(). */
12
12
  export declare const createDecompressStreamSync: (opts?: import("./index.js").DecompressStreamOptions) => import("./index.js").DecompressStream;
13
13
  export declare const compressionStream: (opts?: import("./index.js").CompressionStreamOptions) => TransformStream<Uint8Array, Uint8Array>;
14
- export declare const decompressionStream: () => TransformStream<Uint8Array, Uint8Array>;
14
+ export declare const decompressionStream: (opts?: Pick<import("./index.js").DecompressStreamOptions, "maxOutput">) => TransformStream<Uint8Array, Uint8Array>;
15
15
  /** Initializes this independently loaded WASM subpath. */
16
16
  export declare const preload: () => Promise<void>;
17
17
  export declare const version: () => Promise<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/algorithms/snappy/index.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,QAAQ,yFAAoB,CAAC;AAC1C,6DAA6D;AAC7D,eAAO,MAAM,YAAY,gFAAwB,CAAC;AAClD,eAAO,MAAM,UAAU,2FAAsB,CAAC;AAC9C,6DAA6D;AAC7D,eAAO,MAAM,cAAc,kFAA0B,CAAC;AACtD,eAAO,MAAM,oBAAoB,+FAAgC,CAAC;AAClE,6DAA6D;AAC7D,eAAO,MAAM,wBAAwB,sFAAoC,CAAC;AAC1E,eAAO,MAAM,sBAAsB,yGAAkC,CAAC;AACtE,6DAA6D;AAC7D,eAAO,MAAM,0BAA0B,gGAAsC,CAAC;AAC9E,eAAO,MAAM,iBAAiB,mGAA6B,CAAC;AAC5D,eAAO,MAAM,mBAAmB,+CAA+B,CAAC;AAChE,0DAA0D;AAC1D,eAAO,MAAM,OAAO,qBAAmB,CAAC;AACxC,eAAO,MAAM,OAAO,uBAAmB,CAAC;AACxC,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,YAAY,EACR,eAAe,EACf,wBAAwB,EACxB,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,GAChB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/algorithms/snappy/index.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,QAAQ,yFAAoB,CAAC;AAC1C,6DAA6D;AAC7D,eAAO,MAAM,YAAY,gFAAwB,CAAC;AAClD,eAAO,MAAM,UAAU,2FAAsB,CAAC;AAC9C,6DAA6D;AAC7D,eAAO,MAAM,cAAc,kFAA0B,CAAC;AACtD,eAAO,MAAM,oBAAoB,+FAAgC,CAAC;AAClE,6DAA6D;AAC7D,eAAO,MAAM,wBAAwB,sFAAoC,CAAC;AAC1E,eAAO,MAAM,sBAAsB,yGAAkC,CAAC;AACtE,6DAA6D;AAC7D,eAAO,MAAM,0BAA0B,gGAAsC,CAAC;AAC9E,eAAO,MAAM,iBAAiB,mGAA6B,CAAC;AAC5D,eAAO,MAAM,mBAAmB,qHAA+B,CAAC;AAChE,0DAA0D;AAC1D,eAAO,MAAM,OAAO,qBAAmB,CAAC;AACxC,eAAO,MAAM,OAAO,uBAAmB,CAAC;AACxC,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,YAAY,EACR,eAAe,EACf,wBAAwB,EACxB,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,GAChB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC"}
Binary file
Binary file
@@ -4,12 +4,12 @@ export declare const decompressSync: (input: Uint8Array, opts?: import("./index.
4
4
  export declare const createDecompressStream: (opts?: import("./index.js").DecompressStreamOptions) => Promise<import("./index.js").DecompressStream>;
5
5
  /** Synchronous counterpart; requires completed preload(). */
6
6
  export declare const createDecompressStreamSync: (opts?: import("./index.js").DecompressStreamOptions) => import("./index.js").DecompressStream;
7
- export declare const decompressionStream: () => TransformStream<Uint8Array, Uint8Array>;
7
+ export declare const decompressionStream: (opts?: Pick<import("./index.js").DecompressStreamOptions, "maxOutput">) => TransformStream<Uint8Array, Uint8Array>;
8
8
  /** Initializes this independently loaded WASM subpath. */
9
9
  export declare const preload: () => Promise<void>;
10
10
  export declare const version: () => Promise<string>;
11
11
  export declare const setMaxDecompressedSize: (bytes: number) => Promise<void>;
12
12
  export { CompressError } from "../../../core/types.js";
13
- export type { DecompressOptions, DecompressStreamOptions, AlgorithmName } from "../../../core/types.js";
13
+ export type { DecompressOptions, DecompressStreamOptions, AlgorithmName, } from "../../../core/types.js";
14
14
  export type { DecompressStream } from "../../../core/dispatch.js";
15
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/algorithms/xz/decompress/index.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,UAAU,2FAAsB,CAAC;AAC9C,6DAA6D;AAC7D,eAAO,MAAM,cAAc,kFAA0B,CAAC;AACtD,eAAO,MAAM,sBAAsB,yGAAkC,CAAC;AACtE,6DAA6D;AAC7D,eAAO,MAAM,0BAA0B,gGAAsC,CAAC;AAC9E,eAAO,MAAM,mBAAmB,+CAA+B,CAAC;AAChE,0DAA0D;AAC1D,eAAO,MAAM,OAAO,qBAAmB,CAAC;AACxC,eAAO,MAAM,OAAO,uBAAmB,CAAC;AACxC,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,YAAY,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACxG,YAAY,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/algorithms/xz/decompress/index.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,UAAU,2FAAsB,CAAC;AAC9C,6DAA6D;AAC7D,eAAO,MAAM,cAAc,kFAA0B,CAAC;AACtD,eAAO,MAAM,sBAAsB,yGAAkC,CAAC;AACtE,6DAA6D;AAC7D,eAAO,MAAM,0BAA0B,gGAAsC,CAAC;AAC9E,eAAO,MAAM,mBAAmB,qHAA+B,CAAC;AAChE,0DAA0D;AAC1D,eAAO,MAAM,OAAO,qBAAmB,CAAC;AACxC,eAAO,MAAM,OAAO,uBAAmB,CAAC;AACxC,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,YAAY,EACR,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,GAChB,MAAM,wBAAwB,CAAC;AAChC,YAAY,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC"}
@@ -11,7 +11,7 @@ export declare const createDecompressStream: (opts?: import("./index.js").Decomp
11
11
  /** Synchronous counterpart; requires completed preload(). */
12
12
  export declare const createDecompressStreamSync: (opts?: import("./index.js").DecompressStreamOptions) => import("./index.js").DecompressStream;
13
13
  export declare const compressionStream: (opts?: import("./index.js").CompressionStreamOptions) => TransformStream<Uint8Array, Uint8Array>;
14
- export declare const decompressionStream: () => TransformStream<Uint8Array, Uint8Array>;
14
+ export declare const decompressionStream: (opts?: Pick<import("./index.js").DecompressStreamOptions, "maxOutput">) => TransformStream<Uint8Array, Uint8Array>;
15
15
  /** Initializes this independently loaded WASM subpath. */
16
16
  export declare const preload: () => Promise<void>;
17
17
  export declare const version: () => Promise<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/algorithms/xz/index.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,QAAQ,yFAAoB,CAAC;AAC1C,6DAA6D;AAC7D,eAAO,MAAM,YAAY,gFAAwB,CAAC;AAClD,eAAO,MAAM,UAAU,2FAAsB,CAAC;AAC9C,6DAA6D;AAC7D,eAAO,MAAM,cAAc,kFAA0B,CAAC;AACtD,eAAO,MAAM,oBAAoB,+FAAgC,CAAC;AAClE,6DAA6D;AAC7D,eAAO,MAAM,wBAAwB,sFAAoC,CAAC;AAC1E,eAAO,MAAM,sBAAsB,yGAAkC,CAAC;AACtE,6DAA6D;AAC7D,eAAO,MAAM,0BAA0B,gGAAsC,CAAC;AAC9E,eAAO,MAAM,iBAAiB,mGAA6B,CAAC;AAC5D,eAAO,MAAM,mBAAmB,+CAA+B,CAAC;AAChE,0DAA0D;AAC1D,eAAO,MAAM,OAAO,qBAAmB,CAAC;AACxC,eAAO,MAAM,OAAO,uBAAmB,CAAC;AACxC,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,YAAY,EACR,eAAe,EACf,wBAAwB,EACxB,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,GAChB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/algorithms/xz/index.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,QAAQ,yFAAoB,CAAC;AAC1C,6DAA6D;AAC7D,eAAO,MAAM,YAAY,gFAAwB,CAAC;AAClD,eAAO,MAAM,UAAU,2FAAsB,CAAC;AAC9C,6DAA6D;AAC7D,eAAO,MAAM,cAAc,kFAA0B,CAAC;AACtD,eAAO,MAAM,oBAAoB,+FAAgC,CAAC;AAClE,6DAA6D;AAC7D,eAAO,MAAM,wBAAwB,sFAAoC,CAAC;AAC1E,eAAO,MAAM,sBAAsB,yGAAkC,CAAC;AACtE,6DAA6D;AAC7D,eAAO,MAAM,0BAA0B,gGAAsC,CAAC;AAC9E,eAAO,MAAM,iBAAiB,mGAA6B,CAAC;AAC5D,eAAO,MAAM,mBAAmB,qHAA+B,CAAC;AAChE,0DAA0D;AAC1D,eAAO,MAAM,OAAO,qBAAmB,CAAC;AACxC,eAAO,MAAM,OAAO,uBAAmB,CAAC;AACxC,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,YAAY,EACR,eAAe,EACf,wBAAwB,EACxB,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,GAChB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC"}
Binary file
@@ -4,12 +4,12 @@ export declare const decompressSync: (input: Uint8Array, opts?: import("./index.
4
4
  export declare const createDecompressStream: (opts?: import("./index.js").DecompressStreamOptions) => Promise<import("./index.js").DecompressStream>;
5
5
  /** Synchronous counterpart; requires completed preload(). */
6
6
  export declare const createDecompressStreamSync: (opts?: import("./index.js").DecompressStreamOptions) => import("./index.js").DecompressStream;
7
- export declare const decompressionStream: () => TransformStream<Uint8Array, Uint8Array>;
7
+ export declare const decompressionStream: (opts?: Pick<import("./index.js").DecompressStreamOptions, "maxOutput">) => TransformStream<Uint8Array, Uint8Array>;
8
8
  /** Initializes this independently loaded WASM subpath. */
9
9
  export declare const preload: () => Promise<void>;
10
10
  export declare const version: () => Promise<string>;
11
11
  export declare const setMaxDecompressedSize: (bytes: number) => Promise<void>;
12
12
  export { CompressError } from "../../../core/types.js";
13
- export type { DecompressOptions, DecompressStreamOptions, AlgorithmName } from "../../../core/types.js";
13
+ export type { DecompressOptions, DecompressStreamOptions, AlgorithmName, } from "../../../core/types.js";
14
14
  export type { DecompressStream } from "../../../core/dispatch.js";
15
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/algorithms/zlib/decompress/index.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,UAAU,2FAAsB,CAAC;AAC9C,6DAA6D;AAC7D,eAAO,MAAM,cAAc,kFAA0B,CAAC;AACtD,eAAO,MAAM,sBAAsB,yGAAkC,CAAC;AACtE,6DAA6D;AAC7D,eAAO,MAAM,0BAA0B,gGAAsC,CAAC;AAC9E,eAAO,MAAM,mBAAmB,+CAA+B,CAAC;AAChE,0DAA0D;AAC1D,eAAO,MAAM,OAAO,qBAAmB,CAAC;AACxC,eAAO,MAAM,OAAO,uBAAmB,CAAC;AACxC,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,YAAY,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACxG,YAAY,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/algorithms/zlib/decompress/index.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,UAAU,2FAAsB,CAAC;AAC9C,6DAA6D;AAC7D,eAAO,MAAM,cAAc,kFAA0B,CAAC;AACtD,eAAO,MAAM,sBAAsB,yGAAkC,CAAC;AACtE,6DAA6D;AAC7D,eAAO,MAAM,0BAA0B,gGAAsC,CAAC;AAC9E,eAAO,MAAM,mBAAmB,qHAA+B,CAAC;AAChE,0DAA0D;AAC1D,eAAO,MAAM,OAAO,qBAAmB,CAAC;AACxC,eAAO,MAAM,OAAO,uBAAmB,CAAC;AACxC,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,YAAY,EACR,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,GAChB,MAAM,wBAAwB,CAAC;AAChC,YAAY,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC"}
@@ -11,7 +11,7 @@ export declare const createDecompressStream: (opts?: import("./index.js").Decomp
11
11
  /** Synchronous counterpart; requires completed preload(). */
12
12
  export declare const createDecompressStreamSync: (opts?: import("./index.js").DecompressStreamOptions) => import("./index.js").DecompressStream;
13
13
  export declare const compressionStream: (opts?: import("./index.js").CompressionStreamOptions) => TransformStream<Uint8Array, Uint8Array>;
14
- export declare const decompressionStream: () => TransformStream<Uint8Array, Uint8Array>;
14
+ export declare const decompressionStream: (opts?: Pick<import("./index.js").DecompressStreamOptions, "maxOutput">) => TransformStream<Uint8Array, Uint8Array>;
15
15
  /** Initializes this independently loaded WASM subpath. */
16
16
  export declare const preload: () => Promise<void>;
17
17
  export declare const version: () => Promise<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/algorithms/zlib/index.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,QAAQ,yFAAoB,CAAC;AAC1C,6DAA6D;AAC7D,eAAO,MAAM,YAAY,gFAAwB,CAAC;AAClD,eAAO,MAAM,UAAU,2FAAsB,CAAC;AAC9C,6DAA6D;AAC7D,eAAO,MAAM,cAAc,kFAA0B,CAAC;AACtD,eAAO,MAAM,oBAAoB,+FAAgC,CAAC;AAClE,6DAA6D;AAC7D,eAAO,MAAM,wBAAwB,sFAAoC,CAAC;AAC1E,eAAO,MAAM,sBAAsB,yGAAkC,CAAC;AACtE,6DAA6D;AAC7D,eAAO,MAAM,0BAA0B,gGAAsC,CAAC;AAC9E,eAAO,MAAM,iBAAiB,mGAA6B,CAAC;AAC5D,eAAO,MAAM,mBAAmB,+CAA+B,CAAC;AAChE,0DAA0D;AAC1D,eAAO,MAAM,OAAO,qBAAmB,CAAC;AACxC,eAAO,MAAM,OAAO,uBAAmB,CAAC;AACxC,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,YAAY,EACR,eAAe,EACf,wBAAwB,EACxB,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,GAChB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/algorithms/zlib/index.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,QAAQ,yFAAoB,CAAC;AAC1C,6DAA6D;AAC7D,eAAO,MAAM,YAAY,gFAAwB,CAAC;AAClD,eAAO,MAAM,UAAU,2FAAsB,CAAC;AAC9C,6DAA6D;AAC7D,eAAO,MAAM,cAAc,kFAA0B,CAAC;AACtD,eAAO,MAAM,oBAAoB,+FAAgC,CAAC;AAClE,6DAA6D;AAC7D,eAAO,MAAM,wBAAwB,sFAAoC,CAAC;AAC1E,eAAO,MAAM,sBAAsB,yGAAkC,CAAC;AACtE,6DAA6D;AAC7D,eAAO,MAAM,0BAA0B,gGAAsC,CAAC;AAC9E,eAAO,MAAM,iBAAiB,mGAA6B,CAAC;AAC5D,eAAO,MAAM,mBAAmB,qHAA+B,CAAC;AAChE,0DAA0D;AAC1D,eAAO,MAAM,OAAO,qBAAmB,CAAC;AACxC,eAAO,MAAM,OAAO,uBAAmB,CAAC;AACxC,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,YAAY,EACR,eAAe,EACf,wBAAwB,EACxB,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,GAChB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC"}
Binary file
@@ -4,12 +4,12 @@ export declare const decompressSync: (input: Uint8Array, opts?: import("./index.
4
4
  export declare const createDecompressStream: (opts?: import("./index.js").DecompressStreamOptions) => Promise<import("./index.js").DecompressStream>;
5
5
  /** Synchronous counterpart; requires completed preload(). */
6
6
  export declare const createDecompressStreamSync: (opts?: import("./index.js").DecompressStreamOptions) => import("./index.js").DecompressStream;
7
- export declare const decompressionStream: () => TransformStream<Uint8Array, Uint8Array>;
7
+ export declare const decompressionStream: (opts?: Pick<import("./index.js").DecompressStreamOptions, "maxOutput">) => TransformStream<Uint8Array, Uint8Array>;
8
8
  /** Initializes this independently loaded WASM subpath. */
9
9
  export declare const preload: () => Promise<void>;
10
10
  export declare const version: () => Promise<string>;
11
11
  export declare const setMaxDecompressedSize: (bytes: number) => Promise<void>;
12
12
  export { CompressError } from "../../../core/types.js";
13
- export type { DecompressOptions, DecompressStreamOptions, AlgorithmName } from "../../../core/types.js";
13
+ export type { DecompressOptions, DecompressStreamOptions, AlgorithmName, } from "../../../core/types.js";
14
14
  export type { DecompressStream } from "../../../core/dispatch.js";
15
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/algorithms/zstd/decompress/index.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,UAAU,2FAAsB,CAAC;AAC9C,6DAA6D;AAC7D,eAAO,MAAM,cAAc,kFAA0B,CAAC;AACtD,eAAO,MAAM,sBAAsB,yGAAkC,CAAC;AACtE,6DAA6D;AAC7D,eAAO,MAAM,0BAA0B,gGAAsC,CAAC;AAC9E,eAAO,MAAM,mBAAmB,+CAA+B,CAAC;AAChE,0DAA0D;AAC1D,eAAO,MAAM,OAAO,qBAAmB,CAAC;AACxC,eAAO,MAAM,OAAO,uBAAmB,CAAC;AACxC,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,YAAY,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACxG,YAAY,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/algorithms/zstd/decompress/index.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,UAAU,2FAAsB,CAAC;AAC9C,6DAA6D;AAC7D,eAAO,MAAM,cAAc,kFAA0B,CAAC;AACtD,eAAO,MAAM,sBAAsB,yGAAkC,CAAC;AACtE,6DAA6D;AAC7D,eAAO,MAAM,0BAA0B,gGAAsC,CAAC;AAC9E,eAAO,MAAM,mBAAmB,qHAA+B,CAAC;AAChE,0DAA0D;AAC1D,eAAO,MAAM,OAAO,qBAAmB,CAAC;AACxC,eAAO,MAAM,OAAO,uBAAmB,CAAC;AACxC,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,YAAY,EACR,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,GAChB,MAAM,wBAAwB,CAAC;AAChC,YAAY,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC"}
@@ -11,7 +11,7 @@ export declare const createDecompressStream: (opts?: import("./index.js").Decomp
11
11
  /** Synchronous counterpart; requires completed preload(). */
12
12
  export declare const createDecompressStreamSync: (opts?: import("./index.js").DecompressStreamOptions) => import("./index.js").DecompressStream;
13
13
  export declare const compressionStream: (opts?: import("./index.js").CompressionStreamOptions) => TransformStream<Uint8Array, Uint8Array>;
14
- export declare const decompressionStream: () => TransformStream<Uint8Array, Uint8Array>;
14
+ export declare const decompressionStream: (opts?: Pick<import("./index.js").DecompressStreamOptions, "maxOutput">) => TransformStream<Uint8Array, Uint8Array>;
15
15
  /** Initializes this independently loaded WASM subpath. */
16
16
  export declare const preload: () => Promise<void>;
17
17
  export declare const version: () => Promise<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/algorithms/zstd/index.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,QAAQ,yFAAoB,CAAC;AAC1C,6DAA6D;AAC7D,eAAO,MAAM,YAAY,gFAAwB,CAAC;AAClD,eAAO,MAAM,UAAU,2FAAsB,CAAC;AAC9C,6DAA6D;AAC7D,eAAO,MAAM,cAAc,kFAA0B,CAAC;AACtD,eAAO,MAAM,oBAAoB,+FAAgC,CAAC;AAClE,6DAA6D;AAC7D,eAAO,MAAM,wBAAwB,sFAAoC,CAAC;AAC1E,eAAO,MAAM,sBAAsB,yGAAkC,CAAC;AACtE,6DAA6D;AAC7D,eAAO,MAAM,0BAA0B,gGAAsC,CAAC;AAC9E,eAAO,MAAM,iBAAiB,mGAA6B,CAAC;AAC5D,eAAO,MAAM,mBAAmB,+CAA+B,CAAC;AAChE,0DAA0D;AAC1D,eAAO,MAAM,OAAO,qBAAmB,CAAC;AACxC,eAAO,MAAM,OAAO,uBAAmB,CAAC;AACxC,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,YAAY,EACR,eAAe,EACf,wBAAwB,EACxB,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,GAChB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/algorithms/zstd/index.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,QAAQ,yFAAoB,CAAC;AAC1C,6DAA6D;AAC7D,eAAO,MAAM,YAAY,gFAAwB,CAAC;AAClD,eAAO,MAAM,UAAU,2FAAsB,CAAC;AAC9C,6DAA6D;AAC7D,eAAO,MAAM,cAAc,kFAA0B,CAAC;AACtD,eAAO,MAAM,oBAAoB,+FAAgC,CAAC;AAClE,6DAA6D;AAC7D,eAAO,MAAM,wBAAwB,sFAAoC,CAAC;AAC1E,eAAO,MAAM,sBAAsB,yGAAkC,CAAC;AACtE,6DAA6D;AAC7D,eAAO,MAAM,0BAA0B,gGAAsC,CAAC;AAC9E,eAAO,MAAM,iBAAiB,mGAA6B,CAAC;AAC5D,eAAO,MAAM,mBAAmB,qHAA+B,CAAC;AAChE,0DAA0D;AAC1D,eAAO,MAAM,OAAO,qBAAmB,CAAC;AACxC,eAAO,MAAM,OAAO,uBAAmB,CAAC;AACxC,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,YAAY,EACR,eAAe,EACf,wBAAwB,EACxB,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,GAChB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC"}
Binary file
@@ -27,7 +27,7 @@ export declare class Dispatcher {
27
27
  setMaxDecompressedSize(bytes: number): void;
28
28
  compress(input: Uint8Array, opts?: CompressOptions): Uint8Array;
29
29
  decompress(input: Uint8Array, opts?: DecompressOptions): Uint8Array;
30
- private decompressStreaming;
30
+ private decompressAlloc;
31
31
  private tryProbeSize;
32
32
  createCompressStream(opts?: CompressOptions): CompressStream;
33
33
  createDecompressStream(opts?: DecompressStreamOptions): DecompressStream;
@@ -112,21 +112,21 @@ export interface AlgorithmBindings {
112
112
  * TransformStream that decompresses bytes as they flow through. It always
113
113
  * decodes concatenated frames as one stream: a TransformStream can't hand
114
114
  * back bytes after the end, so use `createDecompressStream({ singleStream:
115
- * true })` for that.
115
+ * true })` for that. `maxOutput` limits the total decompressed output; the
116
+ * stream errors with a `CompressError` (code `SizeLimit`) past it.
116
117
  */
117
- decompressionStream(): TransformStream<Uint8Array, Uint8Array>;
118
+ decompressionStream(opts?: Pick<DecompressStreamOptions, "maxOutput">): TransformStream<Uint8Array, Uint8Array>;
118
119
  /** Library version, e.g. "0.6.0". */
119
120
  version(): Promise<string>;
120
121
  /**
121
- * Cap on decompressed size (bytes) for the one-shot decompress path.
122
- * Defaults to 1 GiB. Set 0 to disable. Streaming decompress is not
123
- * affected except raw LZ4/LZO, which capture the cap at creation. Bound
124
- * buffers for other streams yourself. Thread-local in C; in WASM
125
- * it's effectively global to this module instance.
122
+ * Cap on decompressed size (bytes) for one-shot decompress, for every
123
+ * algorithm. Defaults to 1 GiB. Set 0 to disable. Streams have no limit
124
+ * unless given `maxOutput` (raw LZ4/LZO and Snappy also capture this cap
125
+ * at creation). Global to this module instance.
126
126
  */
127
127
  setMaxDecompressedSize(bytes: number): Promise<void>;
128
128
  }
129
- export type WasmResolver = (url: URL) => Promise<BufferSource | Response | PromiseLike<Response>>;
129
+ export type WasmResolver = (url: URL) => Promise<BufferSource | Response | PromiseLike<Response> | WebAssembly.Module>;
130
130
  export declare function createBindings(algorithm: Algorithm, name: AlgorithmName, wasmUrl: URL, resolveWasm: WasmResolver): AlgorithmBindings;
131
131
  export {};
132
132
  //# sourceMappingURL=dispatch.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"dispatch.d.ts","sourceRoot":"","sources":["../../src/core/dispatch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dispatch.d.ts","sourceRoot":"","sources":["../../src/core/dispatch.ts"],"names":[],"mappings":"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"}
@@ -94,9 +94,8 @@ export class Dispatcher {
94
94
  const outSize = opts.expectedSize ?? this.tryProbeSize(arena, inPtr, inLen);
95
95
  if (outSize === undefined) {
96
96
  // Wire format doesn't carry size (bz2, brotli, raw deflate,
97
- // current xz size_hint impl). Fall through to a
98
- // streaming decode so the one-shot API still works.
99
- return this.decompressStreaming(input);
97
+ // an xz input that isn't exactly one Stream). The core grows its own buffer, so the one-shot API still works.
98
+ return this.decompressAlloc(arena, inPtr, inLen);
100
99
  }
101
100
  const outPtr = arena.alloc(outSize, this.algorithmName);
102
101
  const outLenPtr = arena.alloc(4, this.algorithmName);
@@ -109,20 +108,19 @@ export class Dispatcher {
109
108
  arena.freeAll();
110
109
  }
111
110
  }
112
- decompressStreaming(input) {
113
- const stream = this.createDecompressStream();
111
+ /* Decodes the input already staged at `inPtr` into a buffer the core grows (bounded by the same cap as the one-shot path), then copies the result out of the heap once. */
112
+ decompressAlloc(arena, inPtr, inLen) {
113
+ const outPP = arena.alloc(8, this.algorithmName);
114
+ this.writeU32(outPP, 0);
115
+ this.writeU32(outPP + 4, 0);
116
+ const status = this.exports.cu_decompress_alloc(this.algorithm, inPtr, inLen, outPP, outPP + 4);
117
+ checkStatus(this.exports, status, this.algorithmName);
118
+ const outPtr = this.readU32(outPP);
114
119
  try {
115
- const body = stream.write(input);
116
- const tail = stream.finish();
117
- if (tail.byteLength === 0)
118
- return body;
119
- const out = new Uint8Array(body.byteLength + tail.byteLength);
120
- out.set(body, 0);
121
- out.set(tail, body.byteLength);
122
- return out;
120
+ return this.readBytes(outPtr, this.readU32(outPP + 4));
123
121
  }
124
122
  finally {
125
- stream.destroy();
123
+ this.exports.cu_buffer_free(outPtr);
126
124
  }
127
125
  }
128
126
  tryProbeSize(arena, inPtr, inLen) {
@@ -159,7 +157,13 @@ export class Dispatcher {
159
157
  this.writeU32(streamPP, 0);
160
158
  const status = this.exports.cu_decompress_stream_create_ex(this.algorithm, single ? DSTREAM_SINGLE : 0, streamPP);
161
159
  checkStatus(this.exports, status, this.algorithmName);
162
- return new DecompressStream(this, this.readU32(streamPP), single);
160
+ const handle = this.readU32(streamPP);
161
+ if (opts.maxOutput) {
162
+ // size_t is 32-bit here, and no output can exceed the 4 GiB
163
+ // address space, so larger limits saturate.
164
+ this.exports.cu_decompress_stream_set_max_output(handle, Math.min(opts.maxOutput, 0xffffffff));
165
+ }
166
+ return new DecompressStream(this, handle, single);
163
167
  }
164
168
  finally {
165
169
  arena.freeAll();
@@ -462,11 +466,11 @@ export function createBindings(algorithm, name, wasmUrl, resolveWasm) {
462
466
  },
463
467
  });
464
468
  },
465
- decompressionStream() {
469
+ decompressionStream(opts) {
466
470
  let stream;
467
471
  return new TransformStream({
468
472
  async start() {
469
- stream = (await getDispatcher()).createDecompressStream();
473
+ stream = (await getDispatcher()).createDecompressStream(opts);
470
474
  },
471
475
  transform(chunk, controller) {
472
476
  const out = stream.write(chunk);
@@ -1 +1 @@
1
- {"version":3,"file":"dispatch.js","sourceRoot":"","sources":["../../src/core/dispatch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dispatch.js","sourceRoot":"","sources":["../../src/core/dispatch.ts"],"names":[],"mappings":"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"}
@@ -30,6 +30,8 @@ export interface WasmExports {
30
30
  readonly cu_compress: (algo: number, in_ptr: number, in_len: number, out_ptr: number, out_len_ptr: number, level: number) => number;
31
31
  readonly cu_decompress: (algo: number, in_ptr: number, in_len: number, out_ptr: number, out_len_ptr: number) => number;
32
32
  readonly cu_decompress_size_hint: (algo: number, in_ptr: number, in_len: number, out_size_ptr: number) => number;
33
+ readonly cu_decompress_alloc: (algo: number, in_ptr: number, in_len: number, out_pp: number, out_len_ptr: number) => number;
34
+ readonly cu_buffer_free: (ptr: number) => void;
33
35
  readonly cu_compress_stream_create: (algo: number, level: number, out_stream_pp: number) => number;
34
36
  readonly cu_compress_stream_write: (stream: number, in_ptr: number, in_len: number, out_ptr: number, out_len_ptr: number) => number;
35
37
  readonly cu_compress_stream_flush: (stream: number, out_ptr: number, out_len_ptr: number) => number;
@@ -40,11 +42,13 @@ export interface WasmExports {
40
42
  readonly cu_decompress_stream_finish: (stream: number, out_ptr: number, out_len_ptr: number) => number;
41
43
  readonly cu_decompress_stream_destroy: (stream: number) => void;
42
44
  readonly cu_decompress_stream_create_ex: (algo: number, flags: number, out_stream_pp: number) => number;
45
+ readonly cu_decompress_stream_set_max_output: (stream: number, bytes: number) => number;
46
+ readonly cu_get_max_decompressed_size: () => number;
43
47
  readonly cu_decompress_stream_eof: (stream: number) => number;
44
48
  readonly cu_decompress_stream_unused: (stream: number, data_pp: number, len_ptr: number) => number;
45
49
  readonly cu_set_max_decompressed_size?: (bytes: number) => void;
46
50
  }
47
- export declare function loadModule(source: BufferSource | Response | PromiseLike<Response>): Promise<WasmExports>;
51
+ export declare function loadModule(source: BufferSource | Response | PromiseLike<Response> | WebAssembly.Module): Promise<WasmExports>;
48
52
  export declare function decodeCString(memory: WebAssembly.Memory, ptr: number, maxLen?: number): string;
49
53
  /** Convert a non-Ok status into a thrown CompressError using the C side's message. */
50
54
  export declare function checkStatus(exports: WasmExports, status: number, algorithm: AlgorithmName): void;
@@ -1 +1 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/core/loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/core/loader.ts"],"names":[],"mappings":"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"}
@@ -117,7 +117,10 @@ export async function loadModule(source) {
117
117
  const imports = {
118
118
  wasi_snapshot_preview1: wasiImports(() => instance.exports.memory),
119
119
  };
120
- if (source instanceof ArrayBuffer || ArrayBuffer.isView(source)) {
120
+ if (source instanceof WebAssembly.Module) {
121
+ instance = await WebAssembly.instantiate(source, imports);
122
+ }
123
+ else if (source instanceof ArrayBuffer || ArrayBuffer.isView(source)) {
121
124
  const { instance: inst } = await WebAssembly.instantiate(source, imports);
122
125
  instance = inst;
123
126
  }
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/core/loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/core/loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,EAAsB,MAAM,YAAY,CAAC;AAuGvE,MAAM,UAAU,GAAG,CAAC,CAAC;AACrB,MAAM,QAAQ,GAAG,EAAE,CAAC;AACpB,MAAM,WAAW,GAAG,EAAE,CAAC;AAEvB;;6DAE6D;AAC7D,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAE/B;;;;kEAIkE;AAClE,MAAM,SAAS,GACX,OAAO,UAAU,CAAC,MAAM,KAAK,WAAW;IACxC,OAAO,UAAU,CAAC,MAAM,CAAC,eAAe,KAAK,UAAU;IACnD,CAAC,CAAC,UAAU,CAAC,MAAM;IACnB,CAAC,CAAC,IAAI,CAAC;AAEf,SAAS,WAAW,CAAC,SAAmC;IACpD,OAAO;QACH,+DAA+D;QAC/D,gEAAgE;QAChE,6CAA6C;QAC7C,SAAS,CAAC,IAAY;YAClB,MAAM,IAAI,KAAK,CAAC,kBAAkB,IAAI,GAAG,CAAC,CAAC;QAC/C,CAAC;QACD,+DAA+D;QAC/D,gEAAgE;QAChE,gEAAgE;QAChE,yCAAyC;QACzC,QAAQ;YACJ,OAAO,WAAW,CAAC;QACvB,CAAC;QACD,QAAQ;YACJ,OAAO,WAAW,CAAC;QACvB,CAAC;QACD,OAAO;YACH,OAAO,WAAW,CAAC;QACvB,CAAC;QACD,OAAO;YACH,OAAO,WAAW,CAAC;QACvB,CAAC;QACD,aAAa;YACT,OAAO,WAAW,CAAC;QACvB,CAAC;QACD,mBAAmB;YACf,OAAO,WAAW,CAAC;QACvB,CAAC;QACD,8DAA8D;QAC9D,gEAAgE;QAChE,uDAAuD;QACvD,cAAc;YACV,OAAO,UAAU,CAAC;QACtB,CAAC;QACD,mBAAmB;YACf,OAAO,UAAU,CAAC;QACtB,CAAC;QACD,eAAe;YACX,OAAO,WAAW,CAAC;QACvB,CAAC;QACD,SAAS;YACL,OAAO,WAAW,CAAC;QACvB,CAAC;QACD,WAAW;YACP,OAAO,WAAW,CAAC;QACvB,CAAC;QACD,WAAW;YACP,OAAO,CAAC,CAAC;QACb,CAAC;QACD,iBAAiB;YACb,OAAO,CAAC,CAAC;QACb,CAAC;QACD,WAAW;YACP,OAAO,CAAC,CAAC;QACb,CAAC;QACD,cAAc;YACV,OAAO,WAAW,CAAC;QACvB,CAAC;QACD,4DAA4D;QAC5D,iEAAiE;QACjE,kEAAkE;QAClE,oCAAoC;QACpC,UAAU,CAAC,GAAW,EAAE,GAAW;YAC/B,IAAI,CAAC,SAAS;gBAAE,OAAO,QAAQ,CAAC;YAChC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;YAC3B,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,gBAAgB,EAAE,CAAC;gBACnD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,GAAG,GAAG,GAAG,CAAC,CAAC;gBACpD,SAAS,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;YAC/E,CAAC;YACD,OAAO,CAAC,CAAC;QACb,CAAC;KACJ,CAAC;AACN,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC5B,MAA4E;IAE5E,kEAAkE;IAClE,sEAAsE;IACtE,4DAA4D;IAC5D,IAAI,QAA0C,CAAC;IAC/C,MAAM,OAAO,GAAG;QACZ,sBAAsB,EAAE,WAAW,CAC/B,GAAG,EAAE,CAAE,QAAS,CAAC,OAAkC,CAAC,MAAM,CAC7D;KACJ,CAAC;IAEF,IAAI,MAAM,YAAY,WAAW,CAAC,MAAM,EAAE,CAAC;QACvC,QAAQ,GAAG,MAAM,WAAW,CAAC,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;SAAM,IAAI,MAAM,YAAY,WAAW,IAAI,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACrE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,MAAM,WAAW,CAAC,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC1E,QAAQ,GAAG,IAAI,CAAC;IACpB,CAAC;SAAM,CAAC;QACJ,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,MAAM,WAAW,CAAC,oBAAoB,CAC7D,MAA0C,EAC1C,OAAO,CACV,CAAC;QACF,QAAQ,GAAG,IAAI,CAAC;IACpB,CAAC;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAiC,CAAC;IAC3D,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;IACxB,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAA0B,EAAE,GAAW,EAAE,MAAM,GAAG,IAAI;IAChF,IAAI,GAAG,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACzB,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChD,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,OAAO,GAAG,GAAG,MAAM,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;QAAE,GAAG,EAAE,CAAC;IAC9C,OAAO,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;AAClE,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,WAAW,CAAC,OAAoB,EAAE,MAAc,EAAE,SAAwB;IACtF,IAAI,MAAM,KAAK,MAAM,CAAC,EAAE;QAAE,OAAO;IACjC,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAC3C,IAAI,GAAG,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACpD,IAAI,CAAC,GAAG;QAAE,GAAG,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3E,MAAM,IAAI,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,UAAU,MAAM,EAAE,CAAC,CAAC;AAC1E,CAAC"}
@@ -69,6 +69,14 @@ export interface DecompressStreamOptions {
69
69
  * raw LZ4 and LZO (throws `UnsupportedAlgo`, 5).
70
70
  */
71
71
  singleStream?: boolean;
72
+ /**
73
+ * Limit on the total decompressed output in bytes (default: no limit).
74
+ * The write or finish that would go past it throws `CompressError` (code
75
+ * `SizeLimit`, 9), and the stream can't be used after that. Set it when
76
+ * decompressing untrusted input, which can expand to far more than its
77
+ * own size.
78
+ */
79
+ maxOutput?: number;
72
80
  }
73
81
  export interface DecompressOptions {
74
82
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,gBAAgB;AAChB,0BAAkB,SAAS;IACvB,IAAI,IAAI;IACR,MAAM,IAAI;IACV,IAAI,IAAI;IACR,GAAG,IAAI;IACP,GAAG,IAAI;IACP,EAAE,IAAI;IACN,IAAI,IAAI;IACR,MAAM,IAAI;IACV,IAAI,IAAI;IACR,OAAO,IAAI;IACX,MAAM,KAAK;IACX,GAAG,KAAK;CACX;AAED,gBAAgB;AAChB,0BAAkB,MAAM;IACpB,EAAE,IAAI;IACN,UAAU,IAAI;IACd,YAAY,IAAI;IAChB,WAAW,IAAI;IACf,WAAW,IAAI;IACf,eAAe,IAAI;IACnB,WAAW,IAAI;IACf,aAAa,IAAI;IACjB,SAAS,IAAI;IACb,SAAS,IAAI;IACb,cAAc,KAAK;IACnB,WAAW,KAAK;IAChB,GAAG,KAAK;IACR,QAAQ,KAAK;CAChB;AAED,4CAA4C;AAC5C,MAAM,MAAM,aAAa,GACnB,MAAM,GACN,QAAQ,GACR,MAAM,GACN,KAAK,GACL,KAAK,GACL,IAAI,GACJ,QAAQ,GACR,MAAM,GACN,SAAS,GACT,SAAS,GACT,KAAK,CAAC;AAEZ,+EAA+E;AAC/E,qBAAa,aAAc,SAAQ,KAAK;IACpC,8EAA8E;IAC9E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC;IAElC,YAAY,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAKlE;CACJ;AAED,MAAM,WAAW,eAAe;IAC5B,oDAAoD;IACpD,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,wBAAyB,SAAQ,eAAe;IAC7D;;;;;OAKG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,uBAAuB;IACpC;;;;;;;;;OASG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAC9B;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,gBAAgB;AAChB,0BAAkB,SAAS;IACvB,IAAI,IAAI;IACR,MAAM,IAAI;IACV,IAAI,IAAI;IACR,GAAG,IAAI;IACP,GAAG,IAAI;IACP,EAAE,IAAI;IACN,IAAI,IAAI;IACR,MAAM,IAAI;IACV,IAAI,IAAI;IACR,OAAO,IAAI;IACX,MAAM,KAAK;IACX,GAAG,KAAK;CACX;AAED,gBAAgB;AAChB,0BAAkB,MAAM;IACpB,EAAE,IAAI;IACN,UAAU,IAAI;IACd,YAAY,IAAI;IAChB,WAAW,IAAI;IACf,WAAW,IAAI;IACf,eAAe,IAAI;IACnB,WAAW,IAAI;IACf,aAAa,IAAI;IACjB,SAAS,IAAI;IACb,SAAS,IAAI;IACb,cAAc,KAAK;IACnB,WAAW,KAAK;IAChB,GAAG,KAAK;IACR,QAAQ,KAAK;CAChB;AAED,4CAA4C;AAC5C,MAAM,MAAM,aAAa,GACnB,MAAM,GACN,QAAQ,GACR,MAAM,GACN,KAAK,GACL,KAAK,GACL,IAAI,GACJ,QAAQ,GACR,MAAM,GACN,SAAS,GACT,SAAS,GACT,KAAK,CAAC;AAEZ,+EAA+E;AAC/E,qBAAa,aAAc,SAAQ,KAAK;IACpC,8EAA8E;IAC9E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC;IAElC,YAAY,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAKlE;CACJ;AAED,MAAM,WAAW,eAAe;IAC5B,oDAAoD;IACpD,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,wBAAyB,SAAQ,eAAe;IAC7D;;;;;OAKG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,uBAAuB;IACpC;;;;;;;;;OASG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAC9B;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB"}
@@ -0,0 +1,2 @@
1
+ /** Resolve a local WebAssembly module using Node's source-phase ESM loader. */
2
+ export const resolveWasm = (url) => import.source(url.href);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "compress-utils",
3
- "version": "0.11.1",
3
+ "version": "0.12.0",
4
4
  "description": "WASM compression bindings for zstd, brotli, zlib, bz2, lz4, xz, snappy, gzip - all tree-shakeable.",
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -73,7 +73,10 @@
73
73
  "browser": "./dist/core/resolve-browser.js",
74
74
  "deno": "./dist/core/resolve-browser.js",
75
75
  "bun": "./dist/core/resolve-browser.js",
76
- "node": "./dist/core/resolve-node.js",
76
+ "node": {
77
+ "compress-utils-wasm-source": "./dist/wasm-source/resolve-node-source.mjs",
78
+ "default": "./dist/core/resolve-node.js"
79
+ },
77
80
  "default": "./dist/core/resolve-default.js"
78
81
  }
79
82
  },
@@ -85,7 +88,7 @@
85
88
  ],
86
89
  "scripts": {
87
90
  "build:wasm": "cmake -S ../.. -B ../../build-wasm -DBUILD_WASM_BINDINGS=ON -DBUILD_PYTHON_BINDINGS=OFF -DBUILD_CPP_BINDINGS=OFF -DENABLE_TESTS=OFF -DCMAKE_BUILD_TYPE=Release && cmake --build ../../build-wasm --target compress_utils_wasm -j",
88
- "build:ts": "tsc -p tsconfig.json",
91
+ "build:ts": "tsc -p tsconfig.json && node scripts/copy-wasm-source.mjs",
89
92
  "prepack": "node -e \"require('node:fs').copyFileSync('../../THIRD_PARTY_NOTICES.md', 'THIRD_PARTY_NOTICES.md')\"",
90
93
  "build": "npm run build:wasm && npm run build:ts",
91
94
  "test": "vitest run",
@@ -100,13 +103,13 @@
100
103
  "check": "biome check ."
101
104
  },
102
105
  "devDependencies": {
103
- "@biomejs/biome": "2.5.9",
106
+ "@biomejs/biome": "2.6.3",
104
107
  "@playwright/test": "^1.60.0",
105
108
  "@types/node": "^26.2.0",
106
- "@vitest/coverage-v8": "^4.1.11",
109
+ "@vitest/coverage-v8": "^5.0.5",
107
110
  "esbuild": "^0.28.0",
108
111
  "typescript": "^7.0.2",
109
- "vitest": "^4.1.6"
112
+ "vitest": "^5.0.5"
110
113
  },
111
114
  "engines": {
112
115
  "node": ">=18"