neozipkit 1.0.2 → 1.5.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 (128) hide show
  1. package/NEOZIP_APPNOTE.md +625 -0
  2. package/README.md +44 -11
  3. package/WHATS_NEW.md +153 -10
  4. package/dist/browser/ZipkitBrowser.d.ts.map +1 -1
  5. package/dist/browser/ZipkitBrowser.js +4 -6
  6. package/dist/browser/ZipkitBrowser.js.map +1 -1
  7. package/dist/browser/zstd-browser-shim.d.ts +17 -9
  8. package/dist/browser/zstd-browser-shim.d.ts.map +1 -1
  9. package/dist/browser/zstd-browser-shim.js +99 -21
  10. package/dist/browser/zstd-browser-shim.js.map +1 -1
  11. package/dist/browser-esm/index.js +6534 -1275
  12. package/dist/browser-esm/index.js.map +4 -4
  13. package/dist/browser-umd/index.js +6534 -1275
  14. package/dist/browser-umd/index.js.map +4 -4
  15. package/dist/browser-umd/index.min.js +6 -3
  16. package/dist/core/ZipCompress.d.ts +6 -0
  17. package/dist/core/ZipCompress.d.ts.map +1 -1
  18. package/dist/core/ZipCompress.js +12 -11
  19. package/dist/core/ZipCompress.js.map +1 -1
  20. package/dist/core/ZipCopy.d.ts.map +1 -1
  21. package/dist/core/ZipCopy.js +33 -25
  22. package/dist/core/ZipCopy.js.map +1 -1
  23. package/dist/core/ZipDecompress.d.ts.map +1 -1
  24. package/dist/core/ZipDecompress.js +13 -8
  25. package/dist/core/ZipDecompress.js.map +1 -1
  26. package/dist/core/ZipEntry.d.ts +24 -0
  27. package/dist/core/ZipEntry.d.ts.map +1 -1
  28. package/dist/core/ZipEntry.js +146 -14
  29. package/dist/core/ZipEntry.js.map +1 -1
  30. package/dist/core/Zipkit.d.ts +43 -11
  31. package/dist/core/Zipkit.d.ts.map +1 -1
  32. package/dist/core/Zipkit.js +132 -82
  33. package/dist/core/Zipkit.js.map +1 -1
  34. package/dist/core/components/HashCalculator.d.ts +22 -1
  35. package/dist/core/components/HashCalculator.d.ts.map +1 -1
  36. package/dist/core/components/HashCalculator.js +49 -6
  37. package/dist/core/components/HashCalculator.js.map +1 -1
  38. package/dist/core/components/Util.d.ts +3 -4
  39. package/dist/core/components/Util.d.ts.map +1 -1
  40. package/dist/core/components/Util.js +10 -8
  41. package/dist/core/components/Util.js.map +1 -1
  42. package/dist/core/constants/Headers.d.ts +2 -3
  43. package/dist/core/constants/Headers.d.ts.map +1 -1
  44. package/dist/core/constants/Headers.js +15 -5
  45. package/dist/core/constants/Headers.js.map +1 -1
  46. package/dist/core/constants/MetaPaths.d.ts +38 -0
  47. package/dist/core/constants/MetaPaths.d.ts.map +1 -0
  48. package/dist/core/constants/MetaPaths.js +79 -0
  49. package/dist/core/constants/MetaPaths.js.map +1 -0
  50. package/dist/core/index.d.ts +5 -0
  51. package/dist/core/index.d.ts.map +1 -1
  52. package/dist/core/index.js +18 -1
  53. package/dist/core/index.js.map +1 -1
  54. package/dist/core/inflateZipPayload.d.ts +6 -0
  55. package/dist/core/inflateZipPayload.d.ts.map +1 -0
  56. package/dist/core/inflateZipPayload.js +28 -0
  57. package/dist/core/inflateZipPayload.js.map +1 -0
  58. package/dist/core/merkle/MerkleRoot.d.ts +109 -0
  59. package/dist/core/merkle/MerkleRoot.d.ts.map +1 -0
  60. package/dist/core/merkle/MerkleRoot.js +275 -0
  61. package/dist/core/merkle/MerkleRoot.js.map +1 -0
  62. package/dist/core/origin/OriginExtra.d.ts +43 -0
  63. package/dist/core/origin/OriginExtra.d.ts.map +1 -0
  64. package/dist/core/origin/OriginExtra.js +187 -0
  65. package/dist/core/origin/OriginExtra.js.map +1 -0
  66. package/dist/core/version.js +1 -1
  67. package/dist/core/zip64/Zip64.d.ts +138 -0
  68. package/dist/core/zip64/Zip64.d.ts.map +1 -0
  69. package/dist/core/zip64/Zip64.js +353 -0
  70. package/dist/core/zip64/Zip64.js.map +1 -0
  71. package/dist/node/ZipCompressNode.d.ts.map +1 -1
  72. package/dist/node/ZipCompressNode.js +40 -49
  73. package/dist/node/ZipCompressNode.js.map +1 -1
  74. package/dist/node/ZipCopyNode.d.ts.map +1 -1
  75. package/dist/node/ZipCopyNode.js +26 -26
  76. package/dist/node/ZipCopyNode.js.map +1 -1
  77. package/dist/node/ZipDecompressNode.d.ts.map +1 -1
  78. package/dist/node/ZipDecompressNode.js +21 -3
  79. package/dist/node/ZipDecompressNode.js.map +1 -1
  80. package/dist/node/ZipkitNode.d.ts +23 -1
  81. package/dist/node/ZipkitNode.d.ts.map +1 -1
  82. package/dist/node/ZipkitNode.js +158 -57
  83. package/dist/node/ZipkitNode.js.map +1 -1
  84. package/dist/node/ZstdNode.d.ts +14 -4
  85. package/dist/node/ZstdNode.d.ts.map +1 -1
  86. package/dist/node/ZstdNode.js +28 -4
  87. package/dist/node/ZstdNode.js.map +1 -1
  88. package/dist/node/buildZipBuffer.d.ts +49 -0
  89. package/dist/node/buildZipBuffer.d.ts.map +1 -0
  90. package/dist/node/buildZipBuffer.js +146 -0
  91. package/dist/node/buildZipBuffer.js.map +1 -0
  92. package/dist/node/index.d.ts +3 -0
  93. package/dist/node/index.d.ts.map +1 -1
  94. package/dist/node/index.js +6 -1
  95. package/dist/node/index.js.map +1 -1
  96. package/dist/node/inflateZipPayload.d.ts +5 -0
  97. package/dist/node/inflateZipPayload.d.ts.map +1 -0
  98. package/dist/node/inflateZipPayload.js +21 -0
  99. package/dist/node/inflateZipPayload.js.map +1 -0
  100. package/dist/types/index.js +2 -2
  101. package/node-esm.mjs +32 -0
  102. package/package.json +13 -6
  103. package/src/browser/ZipkitBrowser.ts +4 -6
  104. package/src/browser/zstd-browser-shim.ts +110 -28
  105. package/src/core/ZipCompress.ts +20 -13
  106. package/src/core/ZipCopy.ts +56 -27
  107. package/src/core/ZipDecompress.ts +14 -8
  108. package/src/core/ZipEntry.ts +200 -14
  109. package/src/core/Zipkit.ts +189 -98
  110. package/src/core/components/HashCalculator.ts +58 -6
  111. package/src/core/components/Util.ts +16 -7
  112. package/src/core/constants/Headers.ts +15 -4
  113. package/src/core/constants/MetaPaths.ts +86 -0
  114. package/src/core/index.ts +17 -0
  115. package/src/core/inflateZipPayload.ts +27 -0
  116. package/src/core/merkle/MerkleRoot.ts +312 -0
  117. package/src/core/origin/OriginExtra.ts +209 -0
  118. package/src/core/version.ts +1 -1
  119. package/src/core/zip64/Zip64.ts +473 -0
  120. package/src/node/ZipCompressNode.ts +40 -49
  121. package/src/node/ZipCopyNode.ts +31 -29
  122. package/src/node/ZipDecompressNode.ts +16 -3
  123. package/src/node/ZipkitNode.ts +203 -72
  124. package/src/node/ZstdNode.ts +33 -8
  125. package/src/node/buildZipBuffer.ts +221 -0
  126. package/src/node/index.ts +7 -0
  127. package/src/node/inflateZipPayload.ts +19 -0
  128. package/src/types/index.ts +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"ZipkitNode.d.ts","sourceRoot":"","sources":["../../src/node/ZipkitNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ZipkitNode.d.ts","sourceRoot":"","sources":["../../src/node/ZipkitNode.ts"],"names":[],"mappings":"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"}
@@ -52,12 +52,16 @@ exports.Errors = Errors_1.default;
52
52
  const ZipCompressNode_1 = require("./ZipCompressNode");
53
53
  const ZipDecompressNode_1 = require("./ZipDecompressNode");
54
54
  const Headers_1 = require("../core/constants/Headers");
55
+ const Zip64_1 = require("../core/zip64/Zip64");
55
56
  const NeoCrypto_1 = require("../core/encryption/NeoCrypto");
56
57
  const AesCrypto_1 = require("../core/encryption/AesCrypto");
57
58
  const LegacyZstd_1 = require("./LegacyZstd");
59
+ const buildZipBuffer_1 = require("./buildZipBuffer");
58
60
  const fs = __importStar(require("fs"));
59
61
  const path = __importStar(require("path"));
60
62
  const minimatch_1 = require("minimatch");
63
+ const MerkleRoot_1 = require("../core/merkle/MerkleRoot");
64
+ const MetaPaths_1 = require("../core/constants/MetaPaths");
61
65
  // Re-export everything from core Zipkit
62
66
  __exportStar(require("../core"), exports);
63
67
  // ======================================
@@ -117,6 +121,68 @@ class ZipkitNode extends core_1.default {
117
121
  }
118
122
  return this._zipkitDeCmpNode;
119
123
  }
124
+ /**
125
+ * Streaming Merkle root for file-based archives.
126
+ * V1 leaves come from the same decompress→hash pass as integrity (testEntry / extract),
127
+ * chunked — never re-reads uncompressed sources or materializes whole entries for the root alone.
128
+ */
129
+ async getMerkleRootAsync(options) {
130
+ const algorithm = options?.algorithm ?? 'v1';
131
+ let zipEntries;
132
+ try {
133
+ zipEntries = this.getDirectory();
134
+ }
135
+ catch {
136
+ return null;
137
+ }
138
+ if (!zipEntries?.length) {
139
+ return null;
140
+ }
141
+ const contentEntries = zipEntries.filter((e) => !(0, MetaPaths_1.isMetaInfPath)(e.filename || ''));
142
+ if (contentEntries.length === 0) {
143
+ return null;
144
+ }
145
+ if (algorithm === 'v0') {
146
+ const digests = contentEntries
147
+ .filter((e) => e.sha256)
148
+ .map((e) => ({ path: e.filename || '', sha256: e.sha256 }));
149
+ return (0, MerkleRoot_1.computeMerkleRootV0FromDigests)(digests);
150
+ }
151
+ if (contentEntries.every((e) => !!e.merkleLeafV1)) {
152
+ return (0, MerkleRoot_1.computeMerkleRootV1FromLeaves)(contentEntries.map((e) => ({
153
+ path: e.filename || '',
154
+ merkleLeafV1: e.merkleLeafV1,
155
+ })));
156
+ }
157
+ // Buffer-loaded: base class extract path
158
+ if (this.inBuffer) {
159
+ return super.getMerkleRootAsync(options);
160
+ }
161
+ // File-based: stream hash each content entry once via testEntry (no write, dual hash)
162
+ if (!this.fileHandle && !this.filePath) {
163
+ // Create-session only: may only have live ZipEntry[] with leaves from write
164
+ return super.getMerkleRootAsync(options);
165
+ }
166
+ try {
167
+ for (const entry of contentEntries) {
168
+ if (entry.merkleLeafV1) {
169
+ continue;
170
+ }
171
+ await this.getZipDecompressNode().testEntry(entry, { skipHashCheck: false });
172
+ }
173
+ }
174
+ catch (err) {
175
+ console.error('[ZipkitNode.getMerkleRootAsync] stream hash failed:', err);
176
+ return null;
177
+ }
178
+ if (!contentEntries.every((e) => !!e.merkleLeafV1)) {
179
+ return null;
180
+ }
181
+ return (0, MerkleRoot_1.computeMerkleRootV1FromLeaves)(contentEntries.map((e) => ({
182
+ path: e.filename || '',
183
+ merkleLeafV1: e.merkleLeafV1,
184
+ })));
185
+ }
120
186
  // ============================================================================
121
187
  // File Loading Methods
122
188
  // ============================================================================
@@ -532,6 +598,9 @@ class ZipkitNode extends core_1.default {
532
598
  * @returns Promise that resolves when entry is written
533
599
  */
534
600
  async writeZipEntry(writer, entry, filePath, options, callbacks) {
601
+ if (options?.forceZip64) {
602
+ entry.forceZip64 = true;
603
+ }
535
604
  // Set compression method based on options
536
605
  const level = options?.level ?? 6;
537
606
  let realCmpMethod;
@@ -545,11 +614,10 @@ class ZipkitNode extends core_1.default {
545
614
  realCmpMethod = 8; // DEFLATED
546
615
  }
547
616
  // For AES encryption, pre-configure the entry so the initial local header
548
- // includes the 0x9901 extra field and method 99. The actual compression
549
- // method is preserved in realCmpMethod for the AES extra field.
550
- // Default password encryption is WinZip AES-256 (matches compressData).
617
+ // matches the chosen scheme (WinZip method 99 + 0x9901, or NeoEncrypt + 0x024E).
618
+ // Default password encryption is NeoEncrypt (matches NeoZip product AES-256).
551
619
  const encMethod = options?.password
552
- ? (options.encryptionMethod || 'aes256')
620
+ ? (options.encryptionMethod || 'neo-aes256')
553
621
  : undefined;
554
622
  const isAesRequested = encMethod === 'aes256';
555
623
  const isNeoRequested = encMethod === 'neo-aes256';
@@ -669,9 +737,51 @@ class ZipkitNode extends core_1.default {
669
737
  if (entry.compressedSize === undefined) {
670
738
  throw new Error(`Compressed size not set for entry: ${entry.filename}`);
671
739
  }
672
- const sizeBuffer = Buffer.alloc(4);
673
- sizeBuffer.writeUInt32LE(entry.compressedSize, 0);
674
- fs.writeSync(writer.outputFd, sizeBuffer, 0, 4, entry.localHdrOffset + 18);
740
+ const classicCmp = entry.localHdrOffset + Headers_1.LOCAL_HDR.CMP_SIZE;
741
+ const classicUncmp = entry.localHdrOffset + Headers_1.LOCAL_HDR.UNCMP_SIZE;
742
+ const useZip64Sizes = entry.forceZip64 ||
743
+ (0, Zip64_1.exceedsU32)(entry.uncompressedSize) ||
744
+ (0, Zip64_1.exceedsU32)(entry.compressedSize);
745
+ if (useZip64Sizes) {
746
+ // Classic fields stay at 0xFFFFFFFF; update u64 sizes inside local extra 0x0001
747
+ const sentinel = Buffer.alloc(4);
748
+ sentinel.writeUInt32LE(Zip64_1.ZIP64_U32, 0);
749
+ fs.writeSync(writer.outputFd, sentinel, 0, 4, classicCmp);
750
+ fs.writeSync(writer.outputFd, sentinel, 0, 4, classicUncmp);
751
+ const fnameLenBuf = Buffer.alloc(2);
752
+ fs.readSync(writer.outputFd, fnameLenBuf, 0, 2, entry.localHdrOffset + Headers_1.LOCAL_HDR.FNAME_LEN);
753
+ const fnameLen = fnameLenBuf.readUInt16LE(0);
754
+ const extraLenBuf = Buffer.alloc(2);
755
+ fs.readSync(writer.outputFd, extraLenBuf, 0, 2, entry.localHdrOffset + Headers_1.LOCAL_HDR.EXTRA_LEN);
756
+ const extraLen = extraLenBuf.readUInt16LE(0);
757
+ const extraStart = entry.localHdrOffset + Headers_1.LOCAL_HDR.SIZE + fnameLen;
758
+ const extraBuf = Buffer.alloc(extraLen);
759
+ if (extraLen > 0) {
760
+ fs.readSync(writer.outputFd, extraBuf, 0, extraLen, extraStart);
761
+ }
762
+ let patched = false;
763
+ for (let i = 0; i + 4 <= extraBuf.length;) {
764
+ const id = extraBuf.readUInt16LE(i);
765
+ const len = extraBuf.readUInt16LE(i + 2);
766
+ if (id === Headers_1.HDR_ID.ZIP64 && len >= 16) {
767
+ // Local Zip64 always has uncompressed (8) then compressed (8)
768
+ (0, Zip64_1.writeU64)(extraBuf, i + 4, entry.uncompressedSize);
769
+ (0, Zip64_1.writeU64)(extraBuf, i + 12, entry.compressedSize);
770
+ fs.writeSync(writer.outputFd, extraBuf, i + 4, 16, extraStart + i + 4);
771
+ patched = true;
772
+ break;
773
+ }
774
+ i += 4 + len;
775
+ }
776
+ if (!patched) {
777
+ throw new Error(`Zip64 local extra (0x0001) missing for large entry: ${entry.filename}`);
778
+ }
779
+ }
780
+ else {
781
+ const sizeBuffer = Buffer.alloc(4);
782
+ sizeBuffer.writeUInt32LE(entry.compressedSize, 0);
783
+ fs.writeSync(writer.outputFd, sizeBuffer, 0, 4, classicCmp);
784
+ }
675
785
  if (entry.crc !== undefined) {
676
786
  const crcBuffer = Buffer.alloc(4);
677
787
  crcBuffer.writeUInt32LE(entry.crc, 0);
@@ -733,43 +843,20 @@ class ZipkitNode extends core_1.default {
733
843
  * @param centralDirSize - Size of central directory in bytes
734
844
  * @param centralDirOffset - Offset to start of central directory
735
845
  * @param archiveComment - Optional archive comment (max 65535 bytes)
846
+ * @param options - Optional Zip64 force and related EOCD flags
736
847
  * @returns Promise that resolves when EOCD is written
737
848
  */
738
- async writeEndOfCentralDirectory(writer, totalEntries, centralDirSize, centralDirOffset, archiveComment) {
739
- const comment = archiveComment || '';
740
- const commentBytes = Buffer.from(comment, 'utf8');
741
- const commentLength = Math.min(commentBytes.length, 0xFFFF); // Max 65535 bytes
742
- const buffer = Buffer.alloc(22 + commentLength);
743
- let offset = 0;
744
- // End of central directory signature (4 bytes)
745
- buffer.writeUInt32LE(0x06054b50, offset);
746
- offset += 4;
747
- // Number of this disk (2 bytes)
748
- buffer.writeUInt16LE(0, offset);
749
- offset += 2;
750
- // Number of the disk with the start of the central directory (2 bytes)
751
- buffer.writeUInt16LE(0, offset);
752
- offset += 2;
753
- // Total number of entries in the central directory on this disk (2 bytes)
754
- buffer.writeUInt16LE(totalEntries, offset);
755
- offset += 2;
756
- // Total number of entries in the central directory (2 bytes)
757
- buffer.writeUInt16LE(totalEntries, offset);
758
- offset += 2;
759
- // Size of the central directory (4 bytes)
760
- buffer.writeUInt32LE(centralDirSize, offset);
761
- offset += 4;
762
- // Offset of start of central directory with respect to the starting disk number (4 bytes)
763
- buffer.writeUInt32LE(centralDirOffset, offset);
764
- offset += 4;
765
- // ZIP file comment length (2 bytes)
766
- buffer.writeUInt16LE(commentLength, offset);
767
- offset += 2;
768
- // ZIP file comment (variable length)
769
- if (commentLength > 0) {
770
- commentBytes.copy(buffer, offset, 0, commentLength);
771
- }
772
- // Write EOCD to file
849
+ async writeEndOfCentralDirectory(writer, totalEntries, centralDirSize, centralDirOffset, archiveComment, options) {
850
+ const buffer = (0, Zip64_1.buildEndRecords)({
851
+ totalEntries,
852
+ centralDirSize,
853
+ centralDirOffset,
854
+ zip64EocdOffset: centralDirOffset + centralDirSize,
855
+ archiveComment,
856
+ allowSizeOffsetZip64: true,
857
+ forceZip64: options?.forceZip64 === true,
858
+ });
859
+ // Write EOCD (and Zip64 EOCD + locator when needed) to file
773
860
  await new Promise((resolve, reject) => {
774
861
  writer.outputStream.write(buffer, (error) => {
775
862
  if (error) {
@@ -831,7 +918,7 @@ class ZipkitNode extends core_1.default {
831
918
  const centralDirOffset = writer.currentPosition;
832
919
  const centralDirSize = await this.writeCentralDirectory(writer, entries);
833
920
  // Write EOCD
834
- await this.writeEndOfCentralDirectory(writer, entries.length, centralDirSize, centralDirOffset);
921
+ await this.writeEndOfCentralDirectory(writer, entries.length, centralDirSize, centralDirOffset, undefined, { forceZip64: options?.forceZip64 === true });
835
922
  }
836
923
  finally {
837
924
  await this.finalizeZipFile(writer);
@@ -945,6 +1032,16 @@ class ZipkitNode extends core_1.default {
945
1032
  // This would require significant ZIP file manipulation logic
946
1033
  throw new Error('updateZipFile() - Full implementation pending. Use neozip CLI for now.');
947
1034
  }
1035
+ /**
1036
+ * Stream members to `filePath` (local headers, payloads, central directory, EOCD).
1037
+ * Pass `useSHA256` for Extra Field 0x014E and `additionalExtra` for caller blocks
1038
+ * such as ZipWiki 0x014F. `method` 93 uses zlib zstd at `level` (default 7).
1039
+ * NeoEncrypt is not enabled. Precompressed members are copied without recompression.
1040
+ * Pass `{ forceZip64: true }` to emit Zip64 even for small members (testing).
1041
+ */
1042
+ writeMembersSync(filePath, members, options) {
1043
+ (0, buildZipBuffer_1.writeZipFileSync)(filePath, members, options);
1044
+ }
948
1045
  // ============================================================================
949
1046
  // File-based ZIP Loading Methods (merged from ZipLoadEntriesServer)
950
1047
  // ============================================================================
@@ -1001,8 +1098,14 @@ class ZipkitNode extends core_1.default {
1001
1098
  const zipkit = this;
1002
1099
  zipkit.centralDirSize = eocdBuffer.readUInt32LE(Headers_1.CENTRAL_END.CENTRAL_DIR_SIZE);
1003
1100
  zipkit.centralDirOffset = eocdBuffer.readUInt32LE(Headers_1.CENTRAL_END.CENTRAL_DIR_OFFSET);
1004
- // Handle ZIP64
1005
- if (zipkit.centralDirOffset === 0xFFFFFFFF) {
1101
+ const volEntries = eocdBuffer.readUInt16LE(Headers_1.CENTRAL_END.VOL_ENTRIES);
1102
+ const totalEntries = eocdBuffer.readUInt16LE(Headers_1.CENTRAL_END.TOTAL_ENTRIES);
1103
+ if ((0, Zip64_1.classicEocdNeedsZip64)({
1104
+ volEntries,
1105
+ totalEntries,
1106
+ centralDirSize: zipkit.centralDirSize,
1107
+ centralDirOffset: zipkit.centralDirOffset,
1108
+ })) {
1006
1109
  await this.loadZIP64EOCD(eocdOffset);
1007
1110
  }
1008
1111
  }
@@ -1031,18 +1134,16 @@ class ZipkitNode extends core_1.default {
1031
1134
  throw new Error('File handle not available');
1032
1135
  }
1033
1136
  // Look for ZIP64 locator
1034
- const locatorOffset = eocdOffset - 20;
1035
- const locatorBuffer = Buffer.alloc(20);
1036
- await this.fileHandle.read(locatorBuffer, 0, 20, locatorOffset);
1037
- if (locatorBuffer.readUInt32LE(0) === Headers_1.ZIP64_CENTRAL_END.SIGNATURE) {
1038
- // Read ZIP64 EOCD
1039
- const zip64Offset = locatorBuffer.readBigUInt64LE(8);
1040
- const zip64Buffer = Buffer.alloc(56);
1041
- await this.fileHandle.read(zip64Buffer, 0, 56, Number(zip64Offset));
1042
- const zipkit = this;
1043
- zipkit.centralDirSize = Number(zip64Buffer.readBigUInt64LE(Headers_1.ZIP64_CENTRAL_DIR.CENTRAL_DIR_SIZE));
1044
- zipkit.centralDirOffset = Number(zip64Buffer.readBigUInt64LE(Headers_1.ZIP64_CENTRAL_DIR.CENTRAL_DIR_OFFSET));
1045
- }
1137
+ const locatorOffset = eocdOffset - Zip64_1.ZIP64_LOCATOR_SIZE;
1138
+ const locatorBuffer = Buffer.alloc(Zip64_1.ZIP64_LOCATOR_SIZE);
1139
+ await this.fileHandle.read(locatorBuffer, 0, Zip64_1.ZIP64_LOCATOR_SIZE, locatorOffset);
1140
+ const zip64Offset = (0, Zip64_1.parseZip64Locator)(locatorBuffer);
1141
+ const zip64Buffer = Buffer.alloc(Zip64_1.ZIP64_EOCD_RECORD_SIZE);
1142
+ await this.fileHandle.read(zip64Buffer, 0, Zip64_1.ZIP64_EOCD_RECORD_SIZE, zip64Offset);
1143
+ const z64 = (0, Zip64_1.parseZip64Eocd)(zip64Buffer);
1144
+ const zipkit = this;
1145
+ zipkit.centralDirSize = z64.centralDirSize;
1146
+ zipkit.centralDirOffset = z64.centralDirOffset;
1046
1147
  }
1047
1148
  /**
1048
1149
  * Reset file-based ZIP path/size state.
@@ -1 +1 @@
1
- {"version":3,"file":"ZipkitNode.js","sourceRoot":"","sources":["../../src/node/ZipkitNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ZipkitNode.js","sourceRoot":"","sources":["../../src/node/ZipkitNode.ts"],"names":[],"mappings":"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"}
@@ -11,10 +11,18 @@ export declare function isNativeZstdAvailable(): boolean;
11
11
  export declare function mapCompressionLevel(level: number): number;
12
12
  export declare function createCompressTransform(level?: number): zlib.ZstdCompress;
13
13
  export declare function createDecompressTransform(): zlib.ZstdDecompress;
14
- export declare function compress(data: Buffer, level?: number): Promise<Buffer>;
15
- export declare function decompress(data: Buffer): Promise<Buffer>;
16
- export declare function compressSync(data: Buffer, level?: number): Buffer;
17
- export declare function decompressSync(data: Buffer): Buffer;
14
+ /** Bytes accepted by the buffer zstd codec (Node Buffer or browser ArrayBuffer). */
15
+ export type ZstdInput = Buffer | Uint8Array | ArrayBuffer;
16
+ export declare function asZstdBuffer(data: ZstdInput): Buffer;
17
+ export declare function compress(data: ZstdInput, level?: number): Promise<Buffer>;
18
+ export declare function decompress(data: ZstdInput): Promise<Buffer>;
19
+ export declare function compressSync(data: ZstdInput, level?: number): Buffer;
20
+ /**
21
+ * Compress with a raw zlib zstd level (1–19), without the 1–9 kit scale.
22
+ * ZipWiki pack uses level 7 on this scale.
23
+ */
24
+ export declare function compressSyncAtLevel(data: ZstdInput, zstdLevel: number): Buffer;
25
+ export declare function decompressSync(data: ZstdInput): Buffer;
18
26
  /**
19
27
  * Stream-compress plaintext from a chunked reader (primary path for all sizes).
20
28
  */
@@ -31,7 +39,9 @@ export declare const ZstdNode: {
31
39
  compress: typeof compress;
32
40
  decompress: typeof decompress;
33
41
  compressSync: typeof compressSync;
42
+ compressSyncAtLevel: typeof compressSyncAtLevel;
34
43
  decompressSync: typeof decompressSync;
44
+ asZstdBuffer: typeof asZstdBuffer;
35
45
  compressChunks: typeof compressChunks;
36
46
  decompressStream: typeof decompressStream;
37
47
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ZstdNode.d.ts","sourceRoot":"","sources":["../../src/node/ZstdNode.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAO7B,wBAAgB,qBAAqB,IAAI,OAAO,CAO/C;AAWD,kEAAkE;AAClE,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEzD;AAUD,wBAAgB,uBAAuB,CAAC,KAAK,GAAE,MAAU,GAAG,IAAI,CAAC,YAAY,CAG5E;AAED,wBAAgB,yBAAyB,IAAI,IAAI,CAAC,cAAc,CAG/D;AAED,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAI/E;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAI9D;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU,GAAG,MAAM,CAGpE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAGnD;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,MAAM,EACrD,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,EACtC,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAC1D,OAAO,CAAC,MAAM,CAAC,CA+BjB;AAED;;GAEG;AACH,wBAAuB,gBAAgB,CACrC,gBAAgB,EAAE,aAAa,CAAC,MAAM,CAAC,GACtC,cAAc,CAAC,MAAM,CAAC,CAaxB;AAED,eAAO,MAAM,QAAQ;;;;;;;;;;;CAWpB,CAAC;AAEF,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"ZstdNode.d.ts","sourceRoot":"","sources":["../../src/node/ZstdNode.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAO7B,wBAAgB,qBAAqB,IAAI,OAAO,CAO/C;AAWD,kEAAkE;AAClE,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEzD;AAUD,wBAAgB,uBAAuB,CAAC,KAAK,GAAE,MAAU,GAAG,IAAI,CAAC,YAAY,CAG5E;AAED,wBAAgB,yBAAyB,IAAI,IAAI,CAAC,cAAc,CAG/D;AAED,oFAAoF;AACpF,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,UAAU,GAAG,WAAW,CAAC;AAE1D,wBAAgB,YAAY,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAIpD;AAED,wBAAsB,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,GAAE,MAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAIlF;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAIjE;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,GAAE,MAAU,GAAG,MAAM,CAGvE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAQ9E;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAGtD;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,MAAM,EACrD,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,EACtC,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAC1D,OAAO,CAAC,MAAM,CAAC,CA+BjB;AAED;;GAEG;AACH,wBAAuB,gBAAgB,CACrC,gBAAgB,EAAE,aAAa,CAAC,MAAM,CAAC,GACtC,cAAc,CAAC,MAAM,CAAC,CAaxB;AAED,eAAO,MAAM,QAAQ;;;;;;;;;;;;;CAapB,CAAC;AAEF,eAAe,QAAQ,CAAC"}