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
@@ -10,6 +10,12 @@ export interface CompressOptions {
10
10
  useSHA256?: boolean;
11
11
  useZstd?: boolean;
12
12
  bufferSize?: number;
13
+ /**
14
+ * Force APPNOTE Zip64 Version 1 even when sizes/offsets/counts fit classic fields.
15
+ * Useful for testing Zip64 read/list/integrity without multi-GiB payloads.
16
+ * Node streaming writers emit Zip64 EOCD + locator and per-member Extra `0x0001`.
17
+ */
18
+ forceZip64?: boolean;
13
19
  }
14
20
  /**
15
21
  * Callbacks for ZIP file creation process
@@ -1 +1 @@
1
- {"version":3,"file":"ZipCompress.d.ts","sourceRoot":"","sources":["../../src/core/ZipCompress.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ZipCompress.d.ts","sourceRoot":"","sources":["../../src/core/ZipCompress.ts"],"names":[],"mappings":"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"}
@@ -96,19 +96,18 @@ class ZipCompress {
96
96
  // Calculate hashes if needed
97
97
  if (hashCalculator) {
98
98
  hashCalculator.update(data);
99
- if (!entry.crc || entry.crc === 0) {
100
- entry.crc = hashCalculator.finalizeCRC32();
101
- }
102
- if (options?.useSHA256 && !entry.sha256) {
103
- entry.sha256 = hashCalculator.finalizeSHA256();
104
- }
99
+ hashCalculator.applyToEntry(entry, {
100
+ setCrc: !entry.crc || entry.crc === 0,
101
+ setSha256: !!(options?.useSHA256 && !entry.sha256),
102
+ });
105
103
  this.log(`Final hashes: CRC32=0x${entry.crc.toString(16).padStart(8, '0')}, SHA256=${entry.sha256 || 'N/A'}`);
106
104
  }
107
105
  // Encrypt if password provided
108
106
  const enc = options?.encryptionMethod;
109
107
  const useZipCrypto = enc === 'zipcrypto';
110
- const useNeo = enc === 'neo-aes256';
111
- const useAes = options?.password && !useZipCrypto && !useNeo;
108
+ // Explicit WinZip AE only when encryptionMethod is 'aes256'. Otherwise NeoEncrypt (default).
109
+ const useAes = enc === 'aes256';
110
+ const useNeo = !!options?.password && !useZipCrypto && !useAes;
112
111
  if (options?.password) {
113
112
  const label = useZipCrypto ? 'ZipCrypto' : useNeo ? 'NeoEncrypt (AES-256)' : 'WinZip AES-256';
114
113
  this.log(`Encrypting compressed data for entry: ${entry.filename} (method: ${label})`);
@@ -327,9 +326,11 @@ class ZipCompress {
327
326
  const hashCalculator = new HashCalculator_1.HashCalculator({ useSHA256: cmpOptions?.useSHA256 || false });
328
327
  hashCalculator.update(fileData);
329
328
  // Set hashes
330
- entry.crc = hashCalculator.finalizeCRC32();
331
- if (cmpOptions?.useSHA256) {
332
- entry.sha256 = hashCalculator.finalizeSHA256();
329
+ hashCalculator.applyToEntry(entry, {
330
+ setCrc: true,
331
+ setSha256: !!cmpOptions?.useSHA256,
332
+ });
333
+ if (entry.sha256) {
333
334
  this.log(`SHA-256 calculated: ${entry.sha256}`);
334
335
  }
335
336
  // compressData already handles encryption when password is provided
@@ -1 +1 @@
1
- {"version":3,"file":"ZipCompress.js","sourceRoot":"","sources":["../../src/core/ZipCompress.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ZipCompress.js","sourceRoot":"","sources":["../../src/core/ZipCompress.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ZipCopy.d.ts","sourceRoot":"","sources":["../../src/core/ZipCopy.ts"],"names":[],"mappings":"AAUA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,MAAM,MAAM,UAAU,CAAC;AAG9B;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,yDAAyD;IACzD,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,OAAO,CAAC;IAC3C,sDAAsD;IACtD,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,KAAK,MAAM,CAAC;IACnD,+DAA+D;IAC/D,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,uCAAuC;IACvC,OAAO,EAAE,KAAK,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC,CAAC;IACH,mDAAmD;IACnD,gBAAgB,EAAE,MAAM,CAAC;IACzB,qCAAqC;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,qDAAqD;IACrD,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC,+FAA+F;IAC/F,eAAe,EAAE,MAAM,CAAC;IACxB,8IAA8I;IAC9I,aAAa,EAAE,MAAM,CAAC;IACtB,wEAAwE;IACxE,aAAa,EAAE,QAAQ,EAAE,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,wCAAwC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iJAAiJ;IACjJ,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,qBAAa,OAAO;IAClB,OAAO,CAAC,MAAM,CAAS;IAEvB;;;OAGG;gBACS,MAAM,EAAE,MAAM;IAI1B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,wBAAwB;IA0BhC;;;;;;;;;;;;;;;;OAgBG;IACH,OAAO,CAAC,cAAc;IAuCtB;;;;;;;;;OASG;IACH,OAAO,CAAC,oBAAoB;IAoD5B;;;OAGG;IACH,OAAO,CAAC,kCAAkC;IAwC1C;;;;;;;;;OASG;IACG,kBAAkB,CACtB,eAAe,EAAE,MAAM,EACvB,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,qBAAqB,CAAC;IAqCjC;;;;;;;;;OASG;IACH,4BAA4B,CAC1B,OAAO,EAAE,QAAQ,EAAE,EACnB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM;IAeT;;;;;;;;;OASG;IACG,aAAa,CACjB,eAAe,EAAE,MAAM,EACvB,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,UAAU,CAAC;CA6BvB"}
1
+ {"version":3,"file":"ZipCopy.d.ts","sourceRoot":"","sources":["../../src/core/ZipCopy.ts"],"names":[],"mappings":"AAUA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,MAAM,MAAM,UAAU,CAAC;AAU9B;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,yDAAyD;IACzD,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,OAAO,CAAC;IAC3C,sDAAsD;IACtD,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,KAAK,MAAM,CAAC;IACnD,+DAA+D;IAC/D,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,uCAAuC;IACvC,OAAO,EAAE,KAAK,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC,CAAC;IACH,mDAAmD;IACnD,gBAAgB,EAAE,MAAM,CAAC;IACzB,qCAAqC;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,qDAAqD;IACrD,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC,+FAA+F;IAC/F,eAAe,EAAE,MAAM,CAAC;IACxB,8IAA8I;IAC9I,aAAa,EAAE,MAAM,CAAC;IACtB,wEAAwE;IACxE,aAAa,EAAE,QAAQ,EAAE,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,wCAAwC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iJAAiJ;IACjJ,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,qBAAa,OAAO;IAClB,OAAO,CAAC,MAAM,CAAS;IAEvB;;;OAGG;gBACS,MAAM,EAAE,MAAM;IAI1B;;;;;;;;;;OAUG;IACH,OAAO,CAAC,wBAAwB;IA0BhC;;;;;;;;;;;;;;;;OAgBG;IACH,OAAO,CAAC,cAAc;IAiDtB;;;;;;;;;OASG;IACH,OAAO,CAAC,oBAAoB;IA+D5B;;;OAGG;IACH,OAAO,CAAC,kCAAkC;IAyC1C;;;;;;;;;OASG;IACG,kBAAkB,CACtB,eAAe,EAAE,MAAM,EACvB,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,qBAAqB,CAAC;IAqCjC;;;;;;;;;OASG;IACH,4BAA4B,CAC1B,OAAO,EAAE,QAAQ,EAAE,EACnB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,MAAM;IAeT;;;;;;;;;OASG;IACG,aAAa,CACjB,eAAe,EAAE,MAAM,EACvB,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,UAAU,CAAC;CA6BvB"}
@@ -15,6 +15,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.ZipCopy = void 0;
16
16
  const ZipEntry_1 = __importDefault(require("./ZipEntry"));
17
17
  const Headers_1 = require("./constants/Headers");
18
+ const Zip64_1 = require("./zip64/Zip64");
18
19
  /**
19
20
  * Efficient ZIP file copying class (Buffer-based)
20
21
  *
@@ -107,9 +108,14 @@ class ZipCopy {
107
108
  // Calculate local header size by reading from buffer
108
109
  const localHeaderSize = this.calculateLocalHeaderSize(sourceBuffer, entry);
109
110
  // Determine total entry size
110
- // For data descriptor entries, add 16 bytes for the data descriptor
111
+ // For data descriptor entries, add Zip64 (24) or classic (16) descriptor bytes
111
112
  const hasDataDescriptor = (entry.bitFlags & Headers_1.GP_FLAG.DATA_DESC) !== 0;
112
- const totalEntrySize = localHeaderSize + entry.compressedSize + (hasDataDescriptor ? 16 : 0);
113
+ const descLen = hasDataDescriptor
114
+ ? (0, Zip64_1.dataDescriptorByteLength)(entry.usesZip64Extra)
115
+ : 0;
116
+ const totalEntrySize = localHeaderSize + entry.compressedSize + descLen;
117
+ // Buffer copy must remain memory-feasible
118
+ (0, Zip64_1.assertBufferAllowsEntryZip64)(entry.uncompressedSize, entry.compressedSize, entry.localHdrOffset);
113
119
  // Verify we have enough data in the buffer
114
120
  if (entry.localHdrOffset + totalEntrySize > sourceBuffer.length) {
115
121
  throw new Error(`Entry ${entry.filename} extends beyond buffer size: ` +
@@ -178,6 +184,16 @@ class ZipCopy {
178
184
  cloned.isHardLink = entry.isHardLink;
179
185
  cloned.originalEntry = entry.originalEntry;
180
186
  cloned.inode = entry.inode;
187
+ cloned.usesZip64Extra = entry.usesZip64Extra;
188
+ if (entry.additionalExtra) {
189
+ cloned.additionalExtra = Buffer.from(entry.additionalExtra);
190
+ }
191
+ cloned.aesVersion = entry.aesVersion;
192
+ cloned.aesStrength = entry.aesStrength;
193
+ cloned.realCmpMethod = entry.realCmpMethod;
194
+ cloned.neoCryptoPayloadVersion = entry.neoCryptoPayloadVersion;
195
+ cloned.neoCryptoAlgorithm = entry.neoCryptoAlgorithm;
196
+ cloned.neoCryptoFlags = entry.neoCryptoFlags;
181
197
  return cloned;
182
198
  }
183
199
  /**
@@ -185,36 +201,28 @@ class ZipCopy {
185
201
  * Used internally by copyZipBuffer and by writeCentralDirectoryAndEOCD.
186
202
  */
187
203
  buildCentralDirectoryAndEOCDBuffer(entries, zipComment, centralDirOffset) {
204
+ if ((0, Zip64_1.needsZip64SizeOrOffset)(0, 0, 0, 0, centralDirOffset) ||
205
+ entries.some((e) => (0, Zip64_1.needsZip64SizeOrOffset)(e.uncompressedSize, e.compressedSize, e.localHdrOffset))) {
206
+ throw new Error(Zip64_1.ZIP64_BUFFER_SIZE_OFFSET_ERROR);
207
+ }
188
208
  const centralDirChunks = [];
189
209
  for (const entry of entries) {
190
210
  centralDirChunks.push(entry.centralDirEntry());
191
211
  }
192
212
  const centralDirBuffer = Buffer.concat(centralDirChunks);
193
213
  const centralDirSize = centralDirBuffer.length;
194
- const commentBytes = Buffer.from(zipComment, 'utf8');
195
- const commentLength = Math.min(commentBytes.length, 0xffff);
196
- const eocdBuffer = Buffer.alloc(22 + commentLength);
197
- let pos = 0;
198
- eocdBuffer.writeUInt32LE(Headers_1.CENTRAL_END.SIGNATURE, pos);
199
- pos += 4;
200
- eocdBuffer.writeUInt16LE(0, pos);
201
- pos += 2;
202
- eocdBuffer.writeUInt16LE(0, pos);
203
- pos += 2;
204
- eocdBuffer.writeUInt16LE(entries.length, pos);
205
- pos += 2;
206
- eocdBuffer.writeUInt16LE(entries.length, pos);
207
- pos += 2;
208
- eocdBuffer.writeUInt32LE(centralDirSize, pos);
209
- pos += 4;
210
- eocdBuffer.writeUInt32LE(centralDirOffset, pos);
211
- pos += 4;
212
- eocdBuffer.writeUInt16LE(commentLength, pos);
213
- pos += 2;
214
- if (commentLength > 0) {
215
- commentBytes.copy(eocdBuffer, pos, 0, commentLength);
214
+ if ((0, Zip64_1.needsZip64SizeOrOffset)(0, 0, 0, centralDirSize, centralDirOffset)) {
215
+ throw new Error(Zip64_1.ZIP64_BUFFER_SIZE_OFFSET_ERROR);
216
216
  }
217
- return Buffer.concat([centralDirBuffer, eocdBuffer]);
217
+ const endRecords = (0, Zip64_1.buildEndRecords)({
218
+ totalEntries: entries.length,
219
+ centralDirSize,
220
+ centralDirOffset,
221
+ zip64EocdOffset: centralDirOffset + centralDirSize,
222
+ archiveComment: zipComment,
223
+ allowSizeOffsetZip64: false,
224
+ });
225
+ return Buffer.concat([centralDirBuffer, endRecords]);
218
226
  }
219
227
  /**
220
228
  * Copy only ZIP entry data from the source buffer (no central directory or EOCD).
@@ -1 +1 @@
1
- {"version":3,"file":"ZipCopy.js","sourceRoot":"","sources":["../../src/core/ZipCopy.ts"],"names":[],"mappings":";AAAA,yCAAyC;AACzC,0DAA0D;AAC1D,yDAAyD;AACzD,yCAAyC;AACzC,EAAE;AACF,iEAAiE;AACjE,iEAAiE;AACjE,0CAA0C;AAC1C,4DAA4D;;;;;;AAE5D,0DAAkC;AAElC,iDAAsE;AAwDtE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAa,OAAO;IAGlB;;;OAGG;IACH,YAAY,MAAc;QACxB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;;;;;;;;;OAUG;IACK,wBAAwB,CAAC,YAAoB,EAAE,KAAe;QACpE,wCAAwC;QACxC,IAAI,KAAK,CAAC,cAAc,GAAG,mBAAS,CAAC,IAAI,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC;YAChE,MAAM,IAAI,KAAK,CACb,uBAAuB,KAAK,CAAC,cAAc,0BAA0B,YAAY,CAAC,MAAM,cAAc,KAAK,CAAC,QAAQ,EAAE,CACvH,CAAC;QACJ,CAAC;QAED,sCAAsC;QACtC,MAAM,YAAY,GAAG,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,cAAc,GAAG,mBAAS,CAAC,IAAI,CAAC,CAAC;QAExG,mBAAmB;QACnB,IAAI,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,mBAAS,CAAC,SAAS,EAAE,CAAC;YACzD,MAAM,IAAI,KAAK,CACb,iDAAiD,KAAK,CAAC,QAAQ,cAAc,KAAK,CAAC,cAAc,EAAE,CACpG,CAAC;QACJ,CAAC;QAED,+DAA+D;QAC/D,MAAM,cAAc,GAAG,YAAY,CAAC,YAAY,CAAC,mBAAS,CAAC,SAAS,CAAC,CAAC;QACtE,MAAM,gBAAgB,GAAG,YAAY,CAAC,YAAY,CAAC,mBAAS,CAAC,SAAS,CAAC,CAAC;QAExE,oCAAoC;QACpC,OAAO,mBAAS,CAAC,IAAI,GAAG,cAAc,GAAG,gBAAgB,CAAC;IAC5D,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACK,cAAc,CACpB,YAAoB,EACpB,KAAe;QAEf,qDAAqD;QACrD,MAAM,eAAe,GAAG,IAAI,CAAC,wBAAwB,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;QAE3E,6BAA6B;QAC7B,oEAAoE;QACpE,MAAM,iBAAiB,GAAG,CAAC,KAAK,CAAC,QAAQ,GAAG,iBAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACrE,MAAM,cAAc,GAAG,eAAe,GAAG,KAAK,CAAC,cAAc,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE7F,2CAA2C;QAC3C,IAAI,KAAK,CAAC,cAAc,GAAG,cAAc,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC;YAChE,MAAM,IAAI,KAAK,CACb,SAAS,KAAK,CAAC,QAAQ,+BAA+B;gBACtD,UAAU,KAAK,CAAC,cAAc,WAAW,cAAc,oBAAoB,YAAY,CAAC,MAAM,EAAE,CACjG,CAAC;QACJ,CAAC;QAED,qGAAqG;QACrG,MAAM,WAAW,GAAG,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,cAAc,GAAG,cAAc,CAAC,CAAC;QAEvG,8CAA8C;QAC9C,IAAI,iBAAiB,EAAE,CAAC;YACtB,MAAM,cAAc,GAAG,eAAe,GAAG,KAAK,CAAC,cAAc,CAAC;YAC9D,MAAM,WAAW,GAAG,WAAW,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;YAC7D,IAAI,WAAW,KAAK,UAAU,EAAE,CAAC,CAAC,4BAA4B;gBAC5D,MAAM,IAAI,KAAK,CACb,+CAA+C,KAAK,CAAC,QAAQ,GAAG;oBAChE,+BAA+B,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAC3D,CAAC;YACJ,CAAC;QACH,CAAC;QAED,2EAA2E;QAC3E,OAAO,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC;IAED;;;;;;;;;OASG;IACK,oBAAoB,CAC1B,KAAe,EACf,iBAAyB;QAEzB,2DAA2D;QAC3D,MAAM,MAAM,GAAG,IAAI,kBAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,IAAI,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAEhF,sBAAsB;QACtB,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QACnC,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;QACrC,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QACjC,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QACnC,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;QACvC,MAAM,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;QACvB,MAAM,CAAC,cAAc,GAAG,KAAK,CAAC,cAAc,CAAC;QAC7C,MAAM,CAAC,gBAAgB,GAAG,KAAK,CAAC,gBAAgB,CAAC;QACjD,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QACnC,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;QACvC,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;QACvC,MAAM,CAAC,cAAc,GAAG,iBAAiB,CAAC,CAAC,gBAAgB;QAE3D,8BAA8B;QAC9B,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACpD,CAAC;QAED,gBAAgB;QAChB,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;QACvC,MAAM,CAAC,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;QAC/C,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;QACvC,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;QACrC,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QAEnC,8BAA8B;QAC9B,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QACjC,MAAM,CAAC,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;QAC3C,MAAM,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;QACvB,MAAM,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;QACvB,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAE7B,oBAAoB;QACpB,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QACnC,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;QAErC,qBAAqB;QACrB,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;QACrC,MAAM,CAAC,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;QAC3C,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAE3B,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;OAGG;IACK,kCAAkC,CACxC,OAAmB,EACnB,UAAkB,EAClB,gBAAwB;QAExB,MAAM,gBAAgB,GAAa,EAAE,CAAC;QACtC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC;QACjD,CAAC;QACD,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QACzD,MAAM,cAAc,GAAG,gBAAgB,CAAC,MAAM,CAAC;QAE/C,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QACrD,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAE5D,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,aAAa,CAAC,CAAC;QACpD,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,UAAU,CAAC,aAAa,CAAC,qBAAW,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QACrD,GAAG,IAAI,CAAC,CAAC;QACT,UAAU,CAAC,aAAa,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACjC,GAAG,IAAI,CAAC,CAAC;QACT,UAAU,CAAC,aAAa,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACjC,GAAG,IAAI,CAAC,CAAC;QACT,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC9C,GAAG,IAAI,CAAC,CAAC;QACT,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC9C,GAAG,IAAI,CAAC,CAAC;QACT,UAAU,CAAC,aAAa,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;QAC9C,GAAG,IAAI,CAAC,CAAC;QACT,UAAU,CAAC,aAAa,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;QAChD,GAAG,IAAI,CAAC,CAAC;QACT,UAAU,CAAC,aAAa,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;QAC7C,GAAG,IAAI,CAAC,CAAC;QACT,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;YACtB,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,EAAE,aAAa,CAAC,CAAC;QACvD,CAAC;QAED,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC,CAAC;IACvD,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,kBAAkB,CACtB,eAAuB,EACvB,OAAqB;QAErB,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QAE3D,IAAI,aAAa,GAAG,OAAO,EAAE,WAAW;YACtC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;YAC3C,CAAC,CAAC,aAAa,CAAC;QAElB,IAAI,OAAO,EAAE,WAAW,EAAE,CAAC;YACzB,aAAa,GAAG,CAAC,GAAG,aAAa,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;QACxD,CAAC;QAED,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,MAAM,aAAa,GAAe,EAAE,CAAC;QAErC,KAAK,MAAM,WAAW,IAAI,aAAa,EAAE,CAAC;YACxC,MAAM,iBAAiB,GAAG,UAAU,CAAC;YACrC,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;YACtE,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC/B,UAAU,IAAI,WAAW,CAAC,MAAM,CAAC;YACjC,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;YAC9E,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAClC,CAAC;QAED,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAEpD,OAAO;YACL,eAAe;YACf,aAAa,EAAE,eAAe,CAAC,MAAM;YACrC,aAAa;SACd,CAAC;IACJ,CAAC;IAED;;;;;;;;;OASG;IACH,4BAA4B,CAC1B,OAAmB,EACnB,OAA4B;QAE5B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,UAAU,GAAG,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC;QAC7C,MAAM,gBAAgB,GAAG,OAAO,EAAE,gBAAgB,IAAI,CAAC,CAAC;QACxD,MAAM,MAAM,GAAW,IAAI,CAAC,kCAAkC,CAC5D,OAAO,EACP,UAAU,EACV,gBAAgB,CACjB,CAAC;QACF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,aAAa,CACjB,eAAuB,EACvB,OAAqB;QAErB,MAAM,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,GAAG,MAAM,IAAI,CAAC,kBAAkB,CACrF,eAAe,EACf,OAAO,CACR,CAAC;QAEF,MAAM,UAAU,GACd,OAAO,EAAE,gBAAgB,KAAK,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE;YAChE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAG;YAC9B,CAAC,CAAC,EAAE,CAAC;QAET,MAAM,cAAc,GAAG,IAAI,CAAC,4BAA4B,CAAC,aAAa,EAAE;YACtE,UAAU;YACV,gBAAgB,EAAE,aAAa;SAChC,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC,CAAC;QAEnE,OAAO;YACL,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACnC,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,iBAAiB,EAAE,KAAK,CAAC,cAAc;gBACvC,cAAc,EAAE,KAAK,CAAC,cAAc;aACrC,CAAC,CAAC;YACH,gBAAgB,EAAE,aAAa;YAC/B,YAAY,EAAE,aAAa,CAAC,MAAM;YAClC,SAAS;SACV,CAAC;IACJ,CAAC;CACF;AA1UD,0BA0UC"}
1
+ {"version":3,"file":"ZipCopy.js","sourceRoot":"","sources":["../../src/core/ZipCopy.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ZipDecompress.d.ts","sourceRoot":"","sources":["../../src/core/ZipDecompress.ts"],"names":[],"mappings":"AAkBA,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B,OAAO,QAAQ,MAAM,YAAY,CAAC;AAMlC,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;;GAOG;AACH,cAAM,aAAa;IACjB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAU;IAGvB,OAAO,CAAC,MAAM,CAAC,cAAc,CAAkB;IAE/C;;OAEG;IACH,OAAO,CAAC,GAAG;gBAMC,MAAM,EAAE,MAAM;IAU1B;;;;;;;;OAQG;IACG,OAAO,CAAC,KAAK,EAAE,QAAQ,EAAE,aAAa,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAwC/E;;OAEG;IACH,OAAO,CAAC,OAAO;IAOf;;OAEG;YACW,kBAAkB;IA0BhC;;;;OAIG;YACW,UAAU;CA6CzB;AAGD,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"ZipDecompress.d.ts","sourceRoot":"","sources":["../../src/core/ZipDecompress.ts"],"names":[],"mappings":"AAkBA,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B,OAAO,QAAQ,MAAM,YAAY,CAAC;AAOlC,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;;GAOG;AACH,cAAM,aAAa;IACjB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAU;IAGvB,OAAO,CAAC,MAAM,CAAC,cAAc,CAAkB;IAE/C;;OAEG;IACH,OAAO,CAAC,GAAG;gBAMC,MAAM,EAAE,MAAM;IAU1B;;;;;;;;OAQG;IACG,OAAO,CAAC,KAAK,EAAE,QAAQ,EAAE,aAAa,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAwC/E;;OAEG;IACH,OAAO,CAAC,OAAO;IAOf;;OAEG;YACW,kBAAkB;IA0BhC;;;;OAIG;YACW,UAAU;CAkDzB;AAGD,eAAe,aAAa,CAAC"}
@@ -25,6 +25,7 @@ const Errors_1 = __importDefault(require("./constants/Errors"));
25
25
  const Headers_1 = require("./constants/Headers");
26
26
  const ZipCrypto_1 = require("./encryption/ZipCrypto");
27
27
  const AesCrypto_1 = require("./encryption/AesCrypto");
28
+ const HashCalculator_1 = require("./components/HashCalculator");
28
29
  /**
29
30
  * ZipDecompress - Unified Decompression Module (Internal to Zipkit)
30
31
  * Consolidates decompression functionality from ZipCompress
@@ -147,19 +148,23 @@ class ZipDecompress {
147
148
  else {
148
149
  throw new Error(`Unsupported compression method: ${method}`);
149
150
  }
150
- // Verify hash
151
+ // One pass: CRC + bare SHA-256 (0x014E) + v1 Merkle leaf — no second payload read
152
+ const hashCalc = new HashCalculator_1.HashCalculator({ useSHA256: true });
153
+ hashCalc.update(outBuf);
154
+ const calculatedCRC = hashCalc.finalizeCRC32();
155
+ const calculatedHash = hashCalc.finalizeSHA256();
156
+ const leaf = hashCalc.finalizeMerkleLeafV1();
157
+ if (leaf) {
158
+ entry.merkleLeafV1 = leaf;
159
+ }
151
160
  if (!skipHashCheck) {
152
161
  if (entry.sha256) {
153
- const isValid = this.zipkit.testSHA256(entry, outBuf);
154
- if (!isValid) {
162
+ if (calculatedHash !== entry.sha256) {
155
163
  throw new Error(Errors_1.default.INVALID_SHA256);
156
164
  }
157
165
  }
158
- else {
159
- const isValid = this.zipkit.testCRC32(entry, outBuf);
160
- if (!isValid) {
161
- throw new Error(Errors_1.default.INVALID_CRC);
162
- }
166
+ else if (calculatedCRC !== entry.crc) {
167
+ throw new Error(Errors_1.default.INVALID_CRC);
163
168
  }
164
169
  }
165
170
  return outBuf;
@@ -1 +1 @@
1
- {"version":3,"file":"ZipDecompress.js","sourceRoot":"","sources":["../../src/core/ZipDecompress.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ZipDecompress.js","sourceRoot":"","sources":["../../src/core/ZipDecompress.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,15 @@ export default class ZipEntry implements ZipFileEntry {
18
18
  localHdrOffset: number;
19
19
  filename: string;
20
20
  extraField: Buffer | null;
21
+ /**
22
+ * Caller-supplied extra-field records (complete header id + size + payload).
23
+ * Written on the local header and the central-directory header beside 0x014E.
24
+ * Unknown ids parsed from an existing header (including ZipWiki 0x014F) are kept here
25
+ * so a later header rebuild does not drop them.
26
+ */
27
+ additionalExtra: Buffer | null;
28
+ /** When false, local/central headers omit the Info-ZIP Unicode Path extra. */
29
+ emitUnicodePath: boolean;
21
30
  comment: string | null;
22
31
  fileBuffer: Buffer | null;
23
32
  cmpData: Buffer | null;
@@ -40,11 +49,24 @@ export default class ZipEntry implements ZipFileEntry {
40
49
  uid: number | null;
41
50
  gid: number | null;
42
51
  sha256: string | null;
52
+ /**
53
+ * APPNOTE §6.3 v1 Merkle leaf: SHA-256(0x00 ‖ uncompressed payload).
54
+ * In-memory only (not written as a ZIP Extra today). Filled in the same streaming hash
55
+ * pass as `sha256` during create/extract — never reconstruct by re-reading payload when set.
56
+ */
57
+ merkleLeafV1: string | null;
43
58
  isSymlink: boolean;
44
59
  linkTarget: string | null;
45
60
  isHardLink: boolean;
46
61
  originalEntry: string | null;
47
62
  inode: number | null;
63
+ /** True when Zip64 extra (0x0001) was applied or will be emitted (8-byte data descriptors). */
64
+ usesZip64Extra: boolean;
65
+ /**
66
+ * When true, emit Zip64 Extra Field `0x0001` and version-needed 45 even if
67
+ * sizes/offsets fit classic u16/u32 fields (APPNOTE MAY; for testing).
68
+ */
69
+ forceZip64: boolean;
48
70
  fileData?: FileData;
49
71
  /**
50
72
  * Creates a new ZIP entry
@@ -70,6 +92,8 @@ export default class ZipEntry implements ZipFileEntry {
70
92
  * @returns true if the filename contains non-ASCII characters or special characters
71
93
  */
72
94
  needsUnicodeHandling(): boolean;
95
+ /** Version needed to extract. Method 93 (zstd) is 6.3; Zip64 is 4.5. */
96
+ private versionNeededToExtract;
73
97
  /**
74
98
  * Adds UTF-8 Unicode Path field to a buffer
75
99
  * @param buffer - The buffer to write to
@@ -1 +1 @@
1
- {"version":3,"file":"ZipEntry.d.ts","sourceRoot":"","sources":["../../src/core/ZipEntry.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAQlD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,QAAS,YAAW,YAAY;IACnD,KAAK,UAAQ;IAEb,SAAS,EAAE,MAAM,CAAK;IACtB,UAAU,EAAE,MAAM,CAAK;IACvB,QAAQ,EAAE,MAAM,CAAK;IACrB,SAAS,EAAE,MAAM,CAAK;IACtB,WAAW,EAAE,MAAM,CAAK;IACxB,GAAG,EAAE,MAAM,CAAK;IAChB,cAAc,EAAE,MAAM,CAAK;IAC3B,gBAAgB,EAAE,MAAM,CAAK;IAC7B,SAAS,EAAE,MAAM,CAAK;IACtB,WAAW,EAAE,MAAM,CAAK;IACxB,WAAW,EAAE,MAAM,CAAK;IACxB,cAAc,EAAE,MAAM,CAAK;IAC3B,QAAQ,EAAE,MAAM,CAAM;IACtB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAQ;IACjC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAQ;IAG9B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGjC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE9B,WAAW,EAAE,OAAO,CAAS;IAC7B,eAAe,EAAE,OAAO,CAAS;IACjC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAQ;IACjC,eAAe,EAAE,MAAM,CAAK;IAC5B,OAAO,EAAE,QAAQ,GAAG,IAAI,CAAQ;IAGhC,UAAU,EAAE,MAAM,CAAK;IACvB,WAAW,EAAE,MAAM,CAAK;IACxB,aAAa,EAAE,MAAM,CAAM;IAG3B,uBAAuB,EAAE,MAAM,CAAK;IACpC,kBAAkB,EAAE,MAAM,CAAK;IAC/B,cAAc,EAAE,MAAM,CAAK;IAE3B,SAAS,EAAE,OAAO,CAAQ;IAC1B,WAAW,EAAE,OAAO,CAAS;IAC7B,UAAU,EAAE,OAAO,CAAS;IAG5B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC/B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAQ;IACpC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC1B,GAAG,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC1B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAQ;IAG7B,SAAS,EAAE,OAAO,CAAS;IAC3B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAQ;IAGjC,UAAU,EAAE,OAAO,CAAS;IAC5B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAQ;IACpC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAQ;IAE5B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEpB;;;;;OAKG;gBACS,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,CAAC,EAAE,OAAO;IAS1E,OAAO,UAA0B;IACjC,UAAU,UAAsD;IAChE,OAAO,UAAuD;IAC9D,OAAO,UAAsD;IAE7D,WAAW,SASN;IAEL;;;;;OAKG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IA0LlC;;;OAGG;IACH,oBAAoB,IAAI,OAAO;IAK/B;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB;IAuB3B;;;OAGG;IACH,cAAc,IAAI,MAAM;IAwFxB;;;OAGG;IACH,eAAe,IAAI,MAAM;IAyLzB;;;;OAIG;IACH,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IA0B/B;;;;OAIG;IACH,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAmB7C;;;OAGG;IACH,iBAAiB,IAAI,MAAM;IAW3B;;;OAGG;IACH,YAAY,IAAI,MAAM;IAOtB;;;OAGG;IACH,qBAAqB,IAAI,MAAM;IAoB/B;;;OAGG;IACH,wBAAwB,IAAI,MAAM;IAsBlC;;;OAGG;IACH,iBAAiB,IAAI,MAAM;IA4B3B;;;OAGG;IACH,kBAAkB,IAAI,MAAM;IAwB5B;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAgBrC;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAwD5B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAa7B;;;OAGG;IACH,eAAe;CA0MhB;AAED,OAAO,EAAE,QAAQ,EAAE,CAAC"}
1
+ {"version":3,"file":"ZipEntry.d.ts","sourceRoot":"","sources":["../../src/core/ZipEntry.ts"],"names":[],"mappings":"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"}