@zip.js/zip.js 2.10.0 → 2.11.1

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 (48) hide show
  1. package/deno.json +1 -1
  2. package/dist/zip-core-external.js +23 -48
  3. package/dist/zip-core-external.min.js +1 -1
  4. package/dist/zip-core.js +12 -35
  5. package/dist/zip-core.min.js +1 -1
  6. package/dist/zip-fs-core-external.js +23 -48
  7. package/dist/zip-fs-core-external.min.js +1 -1
  8. package/dist/zip-fs-core.js +12 -35
  9. package/dist/zip-fs-core.min.js +1 -1
  10. package/dist/zip-fs-external.js +23 -48
  11. package/dist/zip-fs-external.min.js +1 -1
  12. package/dist/zip-fs-native.js +15 -38
  13. package/dist/zip-fs-native.min.js +1 -1
  14. package/dist/zip-fs.js +26 -52
  15. package/dist/zip-fs.min.js +1 -1
  16. package/dist/zip-legacy.js +14 -37
  17. package/dist/zip-legacy.min.js +1 -1
  18. package/dist/zip-module.wasm +0 -0
  19. package/dist/zip-native.js +15 -38
  20. package/dist/zip-native.min.js +1 -1
  21. package/dist/zip-web-worker-native.js +1 -1
  22. package/dist/zip-web-worker.js +1 -1
  23. package/dist/zip.js +26 -52
  24. package/dist/zip.min.js +1 -1
  25. package/eslint.config.mjs +1 -1
  26. package/index-native.cjs +15 -38
  27. package/index-native.min.js +1 -1
  28. package/index.cjs +26 -52
  29. package/index.d.cts +5 -37
  30. package/index.d.ts +5 -37
  31. package/index.min.js +1 -1
  32. package/lib/core/codec-pool.js +0 -2
  33. package/lib/core/codec-registry.js +2 -0
  34. package/lib/core/streams/codec-stream.js +0 -2
  35. package/lib/core/streams/common-crypto.js +1 -3
  36. package/lib/core/streams/zip-entry-stream.js +2 -5
  37. package/lib/core/streams/zlib-js/zlib-streams.min.js +1 -1
  38. package/lib/core/streams/zlib-wasm/zlib-streams.js +11 -14
  39. package/lib/core/streams/zlib-wasm/zlib-streams.wasm +0 -0
  40. package/lib/core/version.js +1 -1
  41. package/lib/core/web-worker-inline-native.js +1 -1
  42. package/lib/core/web-worker-inline-wasm.js +1 -1
  43. package/lib/core/zip-entry.js +0 -6
  44. package/lib/core/zip-reader.js +1 -6
  45. package/lib/core/zip-writer.js +4 -19
  46. package/lib/core/zlib-streams-inline.js +1 -1
  47. package/lib/zip-core-reader.js +0 -1
  48. package/package.json +4 -2
@@ -1461,8 +1461,7 @@
1461
1461
  const GET_RANDOM_VALUES_SUPPORTED = typeof crypto != UNDEFINED_TYPE && typeof crypto.getRandomValues == FUNCTION_TYPE;
1462
1462
 
1463
1463
  const ERR_INVALID_PASSWORD = "Invalid password";
1464
- const ERR_INVALID_SIGNATURE = "Invalid signature";
1465
- const ERR_INVALID_AUTHENTICATION_CODE = ERR_INVALID_SIGNATURE;
1464
+ const ERR_INVALID_AUTHENTICATION_CODE = "Invalid authentication code";
1466
1465
  const ERR_ABORT_CHECK_PASSWORD = "zipjs-abort-check-password";
1467
1466
  const ERR_UNSUPPORTED_CRYPTO_API = "Crypto API not supported";
1468
1467
 
@@ -2036,6 +2035,7 @@
2036
2035
  const ERR_INVALID_CODEC_DEFINITION = "Invalid codec definition";
2037
2036
  const ERR_RESERVED_COMPRESSION_METHOD = "Reserved compression method";
2038
2037
  const ERR_INVALID_CODEC_MODULE = "Invalid codec module";
2038
+ const ERR_UNSUPPORTED_COMPRESSION = "Compression method not supported";
2039
2039
 
2040
2040
  const RESERVED_COMPRESSION_METHODS = [
2041
2041
  COMPRESSION_METHOD_STORE,
@@ -2135,8 +2135,7 @@
2135
2135
 
2136
2136
  const ERR_INVALID_UNCOMPRESSED_SIZE = "Invalid uncompressed size";
2137
2137
  const ERR_INVALID_COMPRESSED_DATA = "Invalid compressed data";
2138
- const ERR_INVALID_CRC32 = ERR_INVALID_SIGNATURE;
2139
- const ERR_UNSUPPORTED_COMPRESSION$2 = "Compression method not supported";
2138
+ const ERR_INVALID_CRC32 = "Invalid CRC32";
2140
2139
  const FORMAT_DEFLATE_RAW = "deflate-raw";
2141
2140
  const FORMAT_DEFLATE64_RAW = "deflate64-raw";
2142
2141
  const FORMAT_GZIP = "gzip";
@@ -2404,7 +2403,7 @@
2404
2403
 
2405
2404
  function createCodecStream(CodecStreamClass, format, options) {
2406
2405
  if (!CodecStreamClass) {
2407
- throw new Error(ERR_UNSUPPORTED_COMPRESSION$2);
2406
+ throw new Error(ERR_UNSUPPORTED_COMPRESSION);
2408
2407
  }
2409
2408
  return new CodecStreamClass(format, options);
2410
2409
  }
@@ -4568,8 +4567,6 @@
4568
4567
  const PROPERTY_NAME_RAW_CREATION_DATE = "rawCreationDate";
4569
4568
  const PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTES = "internalFileAttributes";
4570
4569
  const PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTES = "externalFileAttributes";
4571
- const PROPERTY_NAME_DEPRECATED_INTERNAL_FILE_ATTRIBUTES = "internalFileAttribute";
4572
- const PROPERTY_NAME_DEPRECATED_EXTERNAL_FILE_ATTRIBUTES = "externalFileAttribute";
4573
4570
  const PROPERTY_NAME_MSDOS_ATTRIBUTES_RAW = "msdosAttributesRaw";
4574
4571
  const PROPERTY_NAME_MSDOS_ATTRIBUTES = "msdosAttributes";
4575
4572
  const PROPERTY_NAME_MS_DOS_COMPATIBLE = "msDosCompatible";
@@ -4628,8 +4625,6 @@
4628
4625
  PROPERTY_NAME_DISK_NUMBER_START,
4629
4626
  PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTES,
4630
4627
  PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTES,
4631
- PROPERTY_NAME_DEPRECATED_INTERNAL_FILE_ATTRIBUTES,
4632
- PROPERTY_NAME_DEPRECATED_EXTERNAL_FILE_ATTRIBUTES,
4633
4628
  PROPERTY_NAME_MSDOS_ATTRIBUTES_RAW,
4634
4629
  PROPERTY_NAME_MSDOS_ATTRIBUTES,
4635
4630
  PROPERTY_NAME_MS_DOS_COMPATIBLE,
@@ -4717,7 +4712,6 @@
4717
4712
  const ERR_EXTRAFIELD_ZIP64_NOT_FOUND = "Zip64 extra field not found";
4718
4713
  const ERR_ENCRYPTED = "File contains encrypted entry";
4719
4714
  const ERR_UNSUPPORTED_ENCRYPTION = "Encryption method not supported";
4720
- const ERR_UNSUPPORTED_COMPRESSION$1 = "Compression method not supported";
4721
4715
  const ERR_SPLIT_ZIP_FILE = "Split zip file";
4722
4716
  const ERR_OVERLAPPING_ENTRY = "Overlapping entry found";
4723
4717
  const ERR_ENTRY_DATA_OUT_OF_BOUNDS = "Entry data out of bounds";
@@ -5098,8 +5092,6 @@
5098
5092
  sticky,
5099
5093
  symlink,
5100
5094
  unixExternalUpper,
5101
- internalFileAttribute: fileEntry.internalFileAttributes,
5102
- externalFileAttribute: fileEntry.externalFileAttributes,
5103
5095
  executable,
5104
5096
  directory: modeIsDir || upperIsDir || (msDosCompatible && msdosAttributes.directory) || fileEntry.filename.endsWith(DIRECTORY_SIGNATURE),
5105
5097
  zipCrypto: fileEntry.encrypted && !fileEntry.extraFieldAES
@@ -5298,7 +5290,7 @@
5298
5290
  rawPassword = rawPassword && rawPassword.length && rawPassword;
5299
5291
  if (extraFieldAES) {
5300
5292
  if (extraFieldAES.originalCompressionMethod != COMPRESSION_METHOD_AES) {
5301
- throw new Error(ERR_UNSUPPORTED_COMPRESSION$1);
5293
+ throw new Error(ERR_UNSUPPORTED_COMPRESSION);
5302
5294
  }
5303
5295
  }
5304
5296
  if (dataArray.length < HEADER_SIZE || getUint32$1(dataView, 0) != LOCAL_FILE_HEADER_SIGNATURE) {
@@ -5354,7 +5346,7 @@
5354
5346
  }
5355
5347
  const registeredCodec = passThrough ? UNDEFINED_VALUE : getRegisteredCodec(compressionMethod);
5356
5348
  if (compressionMethod != COMPRESSION_METHOD_STORE && compressionMethod != COMPRESSION_METHOD_DEFLATE && compressionMethod != COMPRESSION_METHOD_DEFLATE_64 && !registeredCodec && !passThrough) {
5357
- throw new Error(ERR_UNSUPPORTED_COMPRESSION$1);
5349
+ throw new Error(ERR_UNSUPPORTED_COMPRESSION);
5358
5350
  }
5359
5351
  if (encrypted) {
5360
5352
  if (!zipCrypto && (extraFieldAES.strength < 1 || extraFieldAES.strength > 3)) {
@@ -6206,14 +6198,13 @@
6206
6198
  ERR_INVALID_FILENAME_VALIDATION: ERR_INVALID_FILENAME_VALIDATION,
6207
6199
  ERR_INVALID_MAX_APPENDED_DATA_SIZE: ERR_INVALID_MAX_APPENDED_DATA_SIZE,
6208
6200
  ERR_INVALID_PASSWORD: ERR_INVALID_PASSWORD,
6209
- ERR_INVALID_SIGNATURE: ERR_INVALID_SIGNATURE,
6210
6201
  ERR_INVALID_STRICTNESS: ERR_INVALID_STRICTNESS,
6211
6202
  ERR_INVALID_UNCOMPRESSED_SIZE: ERR_INVALID_UNCOMPRESSED_SIZE,
6212
6203
  ERR_LOCAL_FILE_HEADER_NOT_FOUND: ERR_LOCAL_FILE_HEADER_NOT_FOUND,
6213
6204
  ERR_OVERLAPPING_ENTRY: ERR_OVERLAPPING_ENTRY,
6214
6205
  ERR_SPLIT_ZIP_FILE: ERR_SPLIT_ZIP_FILE,
6215
6206
  ERR_UNSAFE_FILENAME: ERR_UNSAFE_FILENAME,
6216
- ERR_UNSUPPORTED_COMPRESSION: ERR_UNSUPPORTED_COMPRESSION$1,
6207
+ ERR_UNSUPPORTED_COMPRESSION: ERR_UNSUPPORTED_COMPRESSION,
6217
6208
  ERR_UNSUPPORTED_ENCRYPTION: ERR_UNSUPPORTED_ENCRYPTION,
6218
6209
  ERR_UNSUPPORTED_UINT64: ERR_UNSUPPORTED_UINT64,
6219
6210
  ERR_WORKER_STARTUP_TIMEOUT: ERR_WORKER_STARTUP_TIMEOUT,
@@ -6281,7 +6272,6 @@
6281
6272
  const ERR_INVALID_EXTRAFIELD_TYPE = "Invalid extra field type (must be integer 0..65535)";
6282
6273
  const ERR_INVALID_EXTRAFIELD_DATA_TYPE = "Invalid extra field data (must be a Uint8Array)";
6283
6274
  const ERR_INVALID_EXTRAFIELD_DATA = "Extra field data exceeds 64KB";
6284
- const ERR_UNSUPPORTED_COMPRESSION = "Compression method not supported";
6285
6275
  const MIN_UNIX_TIME = -2147483648;
6286
6276
  const MAX_UNIX_TIME = 2147483647;
6287
6277
  const MIN_NTFS_TIME = BigInt(0);
@@ -6721,9 +6711,7 @@
6721
6711
  Object.assign(fileEntry, {
6722
6712
  name,
6723
6713
  comment,
6724
- extraField,
6725
- [PROPERTY_NAME_DEPRECATED_INTERNAL_FILE_ATTRIBUTES]: fileEntry.internalFileAttributes,
6726
- [PROPERTY_NAME_DEPRECATED_EXTERNAL_FILE_ATTRIBUTES]: fileEntry.externalFileAttributes
6714
+ extraField
6727
6715
  });
6728
6716
  return new Entry(fileEntry);
6729
6717
  }
@@ -6770,7 +6758,7 @@
6770
6758
  if (versionMadeBy > MAX_16_BITS) {
6771
6759
  throw new Error(ERR_INVALID_VERSION);
6772
6760
  }
6773
- let externalFileAttributes = getAliasedOptionValue(zipWriter, options, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTES, PROPERTY_NAME_DEPRECATED_EXTERNAL_FILE_ATTRIBUTES);
6761
+ let externalFileAttributes = getOptionValue(zipWriter, options, PROPERTY_NAME_EXTERNAL_FILE_ATTRIBUTES);
6774
6762
  const externalFileAttributesProvided = externalFileAttributes !== UNDEFINED_VALUE;
6775
6763
  if (!externalFileAttributesProvided) {
6776
6764
  externalFileAttributes = 0;
@@ -6880,7 +6868,7 @@
6880
6868
  const rawLastModDate = getOptionValue(zipWriter, options, PROPERTY_NAME_RAW_LAST_MODIFICATION_DATE);
6881
6869
  const lastAccessDate = getDateOptionValue(zipWriter, options, PROPERTY_NAME_LAST_ACCESS_DATE);
6882
6870
  const creationDate = getDateOptionValue(zipWriter, options, PROPERTY_NAME_CREATION_DATE);
6883
- const internalFileAttributes = getAliasedOptionValue(zipWriter, options, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTES, PROPERTY_NAME_DEPRECATED_INTERNAL_FILE_ATTRIBUTES, 0);
6871
+ const internalFileAttributes = getOptionValue(zipWriter, options, PROPERTY_NAME_INTERNAL_FILE_ATTRIBUTES, 0);
6884
6872
  const passThrough = getOptionValue(zipWriter, options, OPTION_PASS_THROUGH);
6885
6873
  const password = getOptionValue(zipWriter, options, OPTION_PASSWORD);
6886
6874
  const rawPassword = getOptionValue(zipWriter, options, OPTION_RAW_PASSWORD);
@@ -8349,16 +8337,6 @@
8349
8337
  return checkFunctionOption(getOptionValue(zipWriter, options, name));
8350
8338
  }
8351
8339
 
8352
- function getAliasedOptionValue(zipWriter, options, name, deprecatedName, defaultValue) {
8353
- const value = getAliasedValue(options, name, deprecatedName);
8354
- const result = value === UNDEFINED_VALUE ? getAliasedValue(zipWriter.options, name, deprecatedName) : value;
8355
- return result === UNDEFINED_VALUE ? defaultValue : result;
8356
- }
8357
-
8358
- function getAliasedValue(options, name, deprecatedName) {
8359
- return options[name] === UNDEFINED_VALUE ? options[deprecatedName] : options[name];
8360
- }
8361
-
8362
8340
  function getNumberOptionValue(zipWriter, options, name, defaultValue) {
8363
8341
  return toNumber(getOptionValue(zipWriter, options, name, defaultValue));
8364
8342
  }
@@ -8617,7 +8595,7 @@
8617
8595
  EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
8618
8596
  */
8619
8597
 
8620
- const VERSION = "2.10.0";
8598
+ const VERSION = "2.11.1";
8621
8599
 
8622
8600
  /*
8623
8601
  Copyright (c) 2025 Gildas Lormeau. All rights reserved.
@@ -10544,7 +10522,6 @@
10544
10522
  exports.ERR_INVALID_PASS_THROUGH = ERR_INVALID_PASS_THROUGH;
10545
10523
  exports.ERR_INVALID_READER_OPTIONS = ERR_INVALID_READER_OPTIONS;
10546
10524
  exports.ERR_INVALID_SIGNAL = ERR_INVALID_SIGNAL;
10547
- exports.ERR_INVALID_SIGNATURE = ERR_INVALID_SIGNATURE;
10548
10525
  exports.ERR_INVALID_SIGNATURE_DATA = ERR_INVALID_SIGNATURE_DATA;
10549
10526
  exports.ERR_INVALID_STRICTNESS = ERR_INVALID_STRICTNESS;
10550
10527
  exports.ERR_INVALID_UID = ERR_INVALID_UID;
@@ -10564,7 +10541,7 @@
10564
10541
  exports.ERR_UNDEFINED_UNCOMPRESSED_SIZE = ERR_UNDEFINED_UNCOMPRESSED_SIZE;
10565
10542
  exports.ERR_UNDETERMINED_SIZE = ERR_UNDETERMINED_SIZE;
10566
10543
  exports.ERR_UNSAFE_FILENAME = ERR_UNSAFE_FILENAME;
10567
- exports.ERR_UNSUPPORTED_COMPRESSION = ERR_UNSUPPORTED_COMPRESSION$1;
10544
+ exports.ERR_UNSUPPORTED_COMPRESSION = ERR_UNSUPPORTED_COMPRESSION;
10568
10545
  exports.ERR_UNSUPPORTED_CONTEXT = ERR_UNSUPPORTED_CONTEXT;
10569
10546
  exports.ERR_UNSUPPORTED_CRYPTO_API = ERR_UNSUPPORTED_CRYPTO_API;
10570
10547
  exports.ERR_UNSUPPORTED_ENCRYPTION = ERR_UNSUPPORTED_ENCRYPTION;