@loaders.gl/compression 4.4.0-alpha.2 → 4.4.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 (48) hide show
  1. package/dist/brotli/decode.d.ts +1 -1
  2. package/dist/brotli/decode.d.ts.map +1 -1
  3. package/dist/brotli/decode.js +1 -0
  4. package/dist/brotli/decode.js.map +1 -0
  5. package/dist/compress-on-worker.js +2 -1
  6. package/dist/compress-on-worker.js.map +1 -0
  7. package/dist/compression-worker.js +2 -2
  8. package/dist/compression-worker.js.map +4 -4
  9. package/dist/dist.dev.js +268 -175
  10. package/dist/dist.min.js +3 -3
  11. package/dist/index.cjs +8 -46
  12. package/dist/index.cjs.map +4 -4
  13. package/dist/index.d.ts +0 -1
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +1 -1
  16. package/dist/index.js.map +1 -0
  17. package/dist/lib/brotli-compression.js +3 -2
  18. package/dist/lib/brotli-compression.js.map +1 -0
  19. package/dist/lib/compression.js +1 -0
  20. package/dist/lib/compression.js.map +1 -0
  21. package/dist/lib/deflate-compression.js +3 -2
  22. package/dist/lib/deflate-compression.js.map +1 -0
  23. package/dist/lib/gzip-compression.js +1 -0
  24. package/dist/lib/gzip-compression.js.map +1 -0
  25. package/dist/lib/lz4-compression.js +1 -0
  26. package/dist/lib/lz4-compression.js.map +1 -0
  27. package/dist/lib/no-compression.js +1 -0
  28. package/dist/lib/no-compression.js.map +1 -0
  29. package/dist/lib/snappy-compression.js +1 -0
  30. package/dist/lib/snappy-compression.js.map +1 -0
  31. package/dist/lib/zstd-compression.d.ts.map +1 -1
  32. package/dist/lib/zstd-compression.js +5 -2
  33. package/dist/lib/zstd-compression.js.map +1 -0
  34. package/dist/types.js +1 -0
  35. package/dist/types.js.map +1 -0
  36. package/dist/workers/compression-worker-node.js +1 -0
  37. package/dist/workers/compression-worker-node.js.map +1 -0
  38. package/dist/workers/compression-worker.js +1 -0
  39. package/dist/workers/compression-worker.js.map +1 -0
  40. package/package.json +10 -5
  41. package/src/index.ts +0 -1
  42. package/src/lib/brotli-compression.ts +2 -2
  43. package/src/lib/deflate-compression.ts +4 -4
  44. package/src/lib/zstd-compression.ts +6 -3
  45. package/dist/lib/lzo-compression.d.ts +0 -21
  46. package/dist/lib/lzo-compression.d.ts.map +0 -1
  47. package/dist/lib/lzo-compression.js +0 -57
  48. package/src/lib/lzo-compression.ts +0 -66
package/dist/dist.dev.js CHANGED
@@ -4665,7 +4665,6 @@ var __exports__ = (() => {
4665
4665
  DeflateCompression: () => DeflateCompression,
4666
4666
  GZipCompression: () => GZipCompression,
4667
4667
  LZ4Compression: () => LZ4Compression,
4668
- LZOCompression: () => LZOCompression,
4669
4668
  NoCompression: () => NoCompression,
4670
4669
  SnappyCompression: () => SnappyCompression,
4671
4670
  ZstdCompression: () => ZstdCompression,
@@ -4721,7 +4720,139 @@ var __exports__ = (() => {
4721
4720
  }
4722
4721
 
4723
4722
  // ../../node_modules/@probe.gl/env/dist/index.js
4724
- var VERSION = true ? "4.0.7" : "untranspiled source";
4723
+ var VERSION = true ? "4.1.1" : "untranspiled source";
4724
+
4725
+ // ../../node_modules/@probe.gl/log/dist/utils/assert.js
4726
+ function assert(condition, message) {
4727
+ if (!condition) {
4728
+ throw new Error(message || "Assertion failed");
4729
+ }
4730
+ }
4731
+
4732
+ // ../../node_modules/@probe.gl/log/dist/loggers/log-utils.js
4733
+ function normalizeLogLevel(logLevel) {
4734
+ if (!logLevel) {
4735
+ return 0;
4736
+ }
4737
+ let resolvedLevel;
4738
+ switch (typeof logLevel) {
4739
+ case "number":
4740
+ resolvedLevel = logLevel;
4741
+ break;
4742
+ case "object":
4743
+ resolvedLevel = logLevel.logLevel || logLevel.priority || 0;
4744
+ break;
4745
+ default:
4746
+ return 0;
4747
+ }
4748
+ assert(Number.isFinite(resolvedLevel) && resolvedLevel >= 0);
4749
+ return resolvedLevel;
4750
+ }
4751
+ function normalizeArguments(opts) {
4752
+ const { logLevel, message } = opts;
4753
+ opts.logLevel = normalizeLogLevel(logLevel);
4754
+ const args = opts.args ? Array.from(opts.args) : [];
4755
+ while (args.length && args.shift() !== message) {
4756
+ }
4757
+ switch (typeof logLevel) {
4758
+ case "string":
4759
+ case "function":
4760
+ if (message !== void 0) {
4761
+ args.unshift(message);
4762
+ }
4763
+ opts.message = logLevel;
4764
+ break;
4765
+ case "object":
4766
+ Object.assign(opts, logLevel);
4767
+ break;
4768
+ default:
4769
+ }
4770
+ if (typeof opts.message === "function") {
4771
+ opts.message = opts.message();
4772
+ }
4773
+ const messageType = typeof opts.message;
4774
+ assert(messageType === "string" || messageType === "object");
4775
+ return Object.assign(opts, { args }, opts.opts);
4776
+ }
4777
+
4778
+ // ../../node_modules/@probe.gl/log/dist/loggers/base-log.js
4779
+ var noop = () => {
4780
+ };
4781
+ var BaseLog = class {
4782
+ constructor({ level = 0 } = {}) {
4783
+ this.userData = {};
4784
+ this._onceCache = /* @__PURE__ */ new Set();
4785
+ this._level = level;
4786
+ }
4787
+ set level(newLevel) {
4788
+ this.setLevel(newLevel);
4789
+ }
4790
+ get level() {
4791
+ return this.getLevel();
4792
+ }
4793
+ setLevel(level) {
4794
+ this._level = level;
4795
+ return this;
4796
+ }
4797
+ getLevel() {
4798
+ return this._level;
4799
+ }
4800
+ // Unconditional logging
4801
+ warn(message, ...args) {
4802
+ return this._log("warn", 0, message, args, { once: true });
4803
+ }
4804
+ error(message, ...args) {
4805
+ return this._log("error", 0, message, args);
4806
+ }
4807
+ // Conditional logging
4808
+ log(logLevel, message, ...args) {
4809
+ return this._log("log", logLevel, message, args);
4810
+ }
4811
+ info(logLevel, message, ...args) {
4812
+ return this._log("info", logLevel, message, args);
4813
+ }
4814
+ once(logLevel, message, ...args) {
4815
+ return this._log("once", logLevel, message, args, { once: true });
4816
+ }
4817
+ _log(type, logLevel, message, args, options = {}) {
4818
+ const normalized = normalizeArguments({
4819
+ logLevel,
4820
+ message,
4821
+ args: this._buildArgs(logLevel, message, args),
4822
+ opts: options
4823
+ });
4824
+ return this._createLogFunction(type, normalized, options);
4825
+ }
4826
+ _buildArgs(logLevel, message, args) {
4827
+ return [logLevel, message, ...args];
4828
+ }
4829
+ _createLogFunction(type, normalized, options) {
4830
+ if (!this._shouldLog(normalized.logLevel)) {
4831
+ return noop;
4832
+ }
4833
+ const tag = this._getOnceTag(options.tag ?? normalized.tag ?? normalized.message);
4834
+ if ((options.once || normalized.once) && tag !== void 0) {
4835
+ if (this._onceCache.has(tag)) {
4836
+ return noop;
4837
+ }
4838
+ this._onceCache.add(tag);
4839
+ }
4840
+ return this._emit(type, normalized);
4841
+ }
4842
+ _shouldLog(logLevel) {
4843
+ return this.getLevel() >= normalizeLogLevel(logLevel);
4844
+ }
4845
+ _getOnceTag(tag) {
4846
+ if (tag === void 0) {
4847
+ return void 0;
4848
+ }
4849
+ try {
4850
+ return typeof tag === "string" ? tag : String(tag);
4851
+ } catch {
4852
+ return void 0;
4853
+ }
4854
+ }
4855
+ };
4725
4856
 
4726
4857
  // ../../node_modules/@probe.gl/log/dist/utils/local-storage.js
4727
4858
  function getStorage(type) {
@@ -4840,13 +4971,6 @@ var __exports__ = (() => {
4840
4971
  }
4841
4972
  }
4842
4973
 
4843
- // ../../node_modules/@probe.gl/log/dist/utils/assert.js
4844
- function assert(condition, message) {
4845
- if (!condition) {
4846
- throw new Error(message || "Assertion failed");
4847
- }
4848
- }
4849
-
4850
4974
  // ../../node_modules/@probe.gl/log/dist/utils/hi-res-timestamp.js
4851
4975
  function getHiResTimestamp() {
4852
4976
  let timestamp;
@@ -4861,7 +4985,7 @@ var __exports__ = (() => {
4861
4985
  return timestamp;
4862
4986
  }
4863
4987
 
4864
- // ../../node_modules/@probe.gl/log/dist/log.js
4988
+ // ../../node_modules/@probe.gl/log/dist/loggers/probe-log.js
4865
4989
  var originalConsole = {
4866
4990
  debug: isBrowser2() ? console.debug || console.log : console.log,
4867
4991
  log: console.log,
@@ -4873,12 +4997,9 @@ var __exports__ = (() => {
4873
4997
  enabled: true,
4874
4998
  level: 0
4875
4999
  };
4876
- function noop() {
4877
- }
4878
- var cache = {};
4879
- var ONCE = { once: true };
4880
- var Log = class {
5000
+ var ProbeLog = class extends BaseLog {
4881
5001
  constructor({ id } = { id: "" }) {
5002
+ super({ level: 0 });
4882
5003
  this.VERSION = VERSION;
4883
5004
  this._startTs = getHiResTimestamp();
4884
5005
  this._deltaTs = getHiResTimestamp();
@@ -4886,22 +5007,16 @@ var __exports__ = (() => {
4886
5007
  this.LOG_THROTTLE_TIMEOUT = 0;
4887
5008
  this.id = id;
4888
5009
  this.userData = {};
4889
- this._storage = new LocalStorage(`__probe-${this.id}__`, DEFAULT_LOG_CONFIGURATION);
5010
+ this._storage = new LocalStorage(`__probe-${this.id}__`, { [this.id]: DEFAULT_LOG_CONFIGURATION });
4890
5011
  this.timeStamp(`${this.id} started`);
4891
5012
  autobind(this);
4892
5013
  Object.seal(this);
4893
5014
  }
4894
- set level(newLevel) {
4895
- this.setLevel(newLevel);
4896
- }
4897
- get level() {
4898
- return this.getLevel();
4899
- }
4900
5015
  isEnabled() {
4901
- return this._storage.config.enabled;
5016
+ return this._getConfiguration().enabled;
4902
5017
  }
4903
5018
  getLevel() {
4904
- return this._storage.config.level;
5019
+ return this._getConfiguration().level;
4905
5020
  }
4906
5021
  /** @return milliseconds, with fractions */
4907
5022
  getTotal() {
@@ -4925,20 +5040,20 @@ var __exports__ = (() => {
4925
5040
  }
4926
5041
  // Configure
4927
5042
  enable(enabled = true) {
4928
- this._storage.setConfiguration({ enabled });
5043
+ this._updateConfiguration({ enabled });
4929
5044
  return this;
4930
5045
  }
4931
5046
  setLevel(level) {
4932
- this._storage.setConfiguration({ level });
5047
+ this._updateConfiguration({ level });
4933
5048
  return this;
4934
5049
  }
4935
5050
  /** return the current status of the setting */
4936
5051
  get(setting) {
4937
- return this._storage.config[setting];
5052
+ return this._getConfiguration()[setting];
4938
5053
  }
4939
5054
  // update the status of the setting
4940
5055
  set(setting, value) {
4941
- this._storage.setConfiguration({ [setting]: value });
5056
+ this._updateConfiguration({ [setting]: value });
4942
5057
  }
4943
5058
  /** Logs the current settings as a table */
4944
5059
  settings() {
@@ -4954,11 +5069,16 @@ var __exports__ = (() => {
4954
5069
  throw new Error(message || "Assertion failed");
4955
5070
  }
4956
5071
  }
4957
- warn(message) {
4958
- return this._getLogFunction(0, message, originalConsole.warn, arguments, ONCE);
5072
+ warn(message, ...args) {
5073
+ return this._log("warn", 0, message, args, {
5074
+ method: originalConsole.warn,
5075
+ once: true
5076
+ });
4959
5077
  }
4960
- error(message) {
4961
- return this._getLogFunction(0, message, originalConsole.error, arguments);
5078
+ error(message, ...args) {
5079
+ return this._log("error", 0, message, args, {
5080
+ method: originalConsole.error
5081
+ });
4962
5082
  }
4963
5083
  /** Print a deprecation warning */
4964
5084
  deprecated(oldUsage, newUsage) {
@@ -4968,50 +5088,63 @@ var __exports__ = (() => {
4968
5088
  removed(oldUsage, newUsage) {
4969
5089
  return this.error(`\`${oldUsage}\` has been removed. Use \`${newUsage}\` instead`);
4970
5090
  }
4971
- probe(logLevel, message) {
4972
- return this._getLogFunction(logLevel, message, originalConsole.log, arguments, {
5091
+ probe(logLevel, message, ...args) {
5092
+ return this._log("log", logLevel, message, args, {
5093
+ method: originalConsole.log,
4973
5094
  time: true,
4974
5095
  once: true
4975
5096
  });
4976
5097
  }
4977
- log(logLevel, message) {
4978
- return this._getLogFunction(logLevel, message, originalConsole.debug, arguments);
5098
+ log(logLevel, message, ...args) {
5099
+ return this._log("log", logLevel, message, args, {
5100
+ method: originalConsole.debug
5101
+ });
4979
5102
  }
4980
- info(logLevel, message) {
4981
- return this._getLogFunction(logLevel, message, console.info, arguments);
5103
+ info(logLevel, message, ...args) {
5104
+ return this._log("info", logLevel, message, args, { method: console.info });
4982
5105
  }
4983
- once(logLevel, message) {
4984
- return this._getLogFunction(logLevel, message, originalConsole.debug || originalConsole.info, arguments, ONCE);
5106
+ once(logLevel, message, ...args) {
5107
+ return this._log("once", logLevel, message, args, {
5108
+ method: originalConsole.debug || originalConsole.info,
5109
+ once: true
5110
+ });
4985
5111
  }
4986
5112
  /** Logs an object as a table */
4987
5113
  table(logLevel, table, columns) {
4988
5114
  if (table) {
4989
- return this._getLogFunction(logLevel, table, console.table || noop, columns && [columns], {
5115
+ return this._log("table", logLevel, table, columns && [columns] || [], {
5116
+ method: console.table || noop,
4990
5117
  tag: getTableHeader(table)
4991
5118
  });
4992
5119
  }
4993
5120
  return noop;
4994
5121
  }
4995
5122
  time(logLevel, message) {
4996
- return this._getLogFunction(logLevel, message, console.time ? console.time : console.info);
5123
+ return this._log("time", logLevel, message, [], {
5124
+ method: console.time ? console.time : console.info
5125
+ });
4997
5126
  }
4998
5127
  timeEnd(logLevel, message) {
4999
- return this._getLogFunction(logLevel, message, console.timeEnd ? console.timeEnd : console.info);
5128
+ return this._log("time", logLevel, message, [], {
5129
+ method: console.timeEnd ? console.timeEnd : console.info
5130
+ });
5000
5131
  }
5001
5132
  timeStamp(logLevel, message) {
5002
- return this._getLogFunction(logLevel, message, console.timeStamp || noop);
5133
+ return this._log("time", logLevel, message, [], {
5134
+ method: console.timeStamp || noop
5135
+ });
5003
5136
  }
5004
5137
  group(logLevel, message, opts = { collapsed: false }) {
5005
- const options = normalizeArguments({ logLevel, message, opts });
5006
- const { collapsed } = opts;
5007
- options.method = (collapsed ? console.groupCollapsed : console.group) || console.info;
5008
- return this._getLogFunction(options);
5138
+ const method = (opts.collapsed ? console.groupCollapsed : console.group) || console.info;
5139
+ return this._log("group", logLevel, message, [], { method });
5009
5140
  }
5010
5141
  groupCollapsed(logLevel, message, opts = {}) {
5011
5142
  return this.group(logLevel, message, Object.assign({}, opts, { collapsed: true }));
5012
5143
  }
5013
5144
  groupEnd(logLevel) {
5014
- return this._getLogFunction(logLevel, "", console.groupEnd || noop);
5145
+ return this._log("groupEnd", logLevel, "", [], {
5146
+ method: console.groupEnd || noop
5147
+ });
5015
5148
  }
5016
5149
  // EXPERIMENTAL
5017
5150
  withGroup(logLevel, message, func) {
@@ -5027,78 +5160,34 @@ var __exports__ = (() => {
5027
5160
  console.trace();
5028
5161
  }
5029
5162
  }
5030
- // PRIVATE METHODS
5031
- /** Deduces log level from a variety of arguments */
5032
5163
  _shouldLog(logLevel) {
5033
- return this.isEnabled() && this.getLevel() >= normalizeLogLevel(logLevel);
5034
- }
5035
- _getLogFunction(logLevel, message, method, args, opts) {
5036
- if (this._shouldLog(logLevel)) {
5037
- opts = normalizeArguments({ logLevel, message, args, opts });
5038
- method = method || opts.method;
5039
- assert(method);
5040
- opts.total = this.getTotal();
5041
- opts.delta = this.getDelta();
5042
- this._deltaTs = getHiResTimestamp();
5043
- const tag = opts.tag || opts.message;
5044
- if (opts.once && tag) {
5045
- if (!cache[tag]) {
5046
- cache[tag] = getHiResTimestamp();
5047
- } else {
5048
- return noop;
5049
- }
5050
- }
5051
- message = decorateMessage(this.id, opts.message, opts);
5052
- return method.bind(console, message, ...opts.args);
5053
- }
5054
- return noop;
5055
- }
5056
- };
5057
- Log.VERSION = VERSION;
5058
- function normalizeLogLevel(logLevel) {
5059
- if (!logLevel) {
5060
- return 0;
5164
+ return this.isEnabled() && super._shouldLog(logLevel);
5061
5165
  }
5062
- let resolvedLevel;
5063
- switch (typeof logLevel) {
5064
- case "number":
5065
- resolvedLevel = logLevel;
5066
- break;
5067
- case "object":
5068
- resolvedLevel = logLevel.logLevel || logLevel.priority || 0;
5069
- break;
5070
- default:
5071
- return 0;
5072
- }
5073
- assert(Number.isFinite(resolvedLevel) && resolvedLevel >= 0);
5074
- return resolvedLevel;
5075
- }
5076
- function normalizeArguments(opts) {
5077
- const { logLevel, message } = opts;
5078
- opts.logLevel = normalizeLogLevel(logLevel);
5079
- const args = opts.args ? Array.from(opts.args) : [];
5080
- while (args.length && args.shift() !== message) {
5166
+ _emit(_type, normalized) {
5167
+ const method = normalized.method;
5168
+ assert(method);
5169
+ normalized.total = this.getTotal();
5170
+ normalized.delta = this.getDelta();
5171
+ this._deltaTs = getHiResTimestamp();
5172
+ const message = decorateMessage(this.id, normalized.message, normalized);
5173
+ return method.bind(console, message, ...normalized.args);
5081
5174
  }
5082
- switch (typeof logLevel) {
5083
- case "string":
5084
- case "function":
5085
- if (message !== void 0) {
5086
- args.unshift(message);
5087
- }
5088
- opts.message = logLevel;
5089
- break;
5090
- case "object":
5091
- Object.assign(opts, logLevel);
5092
- break;
5093
- default:
5175
+ _getConfiguration() {
5176
+ if (!this._storage.config[this.id]) {
5177
+ this._updateConfiguration(DEFAULT_LOG_CONFIGURATION);
5178
+ }
5179
+ return this._storage.config[this.id];
5094
5180
  }
5095
- if (typeof opts.message === "function") {
5096
- opts.message = opts.message();
5181
+ _updateConfiguration(configuration) {
5182
+ const currentConfiguration = this._storage.config[this.id] || {
5183
+ ...DEFAULT_LOG_CONFIGURATION
5184
+ };
5185
+ this._storage.setConfiguration({
5186
+ [this.id]: { ...currentConfiguration, ...configuration }
5187
+ });
5097
5188
  }
5098
- const messageType = typeof opts.message;
5099
- assert(messageType === "string" || messageType === "object");
5100
- return Object.assign(opts, { args }, opts.opts);
5101
- }
5189
+ };
5190
+ ProbeLog.VERSION = VERSION;
5102
5191
  function decorateMessage(id, message, opts) {
5103
5192
  if (typeof message === "string") {
5104
5193
  const time = opts.time ? leftPad(formatTime(opts.total)) : "";
@@ -5120,22 +5209,25 @@ var __exports__ = (() => {
5120
5209
  globalThis.probe = {};
5121
5210
 
5122
5211
  // ../../node_modules/@probe.gl/log/dist/index.js
5123
- var dist_default = new Log({ id: "@probe.gl/log" });
5212
+ var dist_default = new ProbeLog({ id: "@probe.gl/log" });
5124
5213
 
5125
5214
  // ../loader-utils/src/lib/log-utils/log.ts
5126
5215
  var VERSION2 = typeof __VERSION__ !== "undefined" ? __VERSION__ : "latest";
5127
5216
  var version = VERSION2[0] >= "0" && VERSION2[0] <= "9" ? `v${VERSION2}` : "";
5128
5217
  function createLog() {
5129
- const log2 = new Log({ id: "loaders.gl" });
5130
- globalThis.loaders = globalThis.loaders || {};
5218
+ const log2 = new ProbeLog({ id: "loaders.gl" });
5219
+ globalThis.loaders ||= {};
5131
5220
  globalThis.loaders.log = log2;
5132
5221
  globalThis.loaders.version = version;
5133
- globalThis.probe = globalThis.probe || {};
5222
+ globalThis.probe ||= {};
5134
5223
  globalThis.probe.loaders = log2;
5135
5224
  return log2;
5136
5225
  }
5137
5226
  var log = createLog();
5138
5227
 
5228
+ // ../loader-utils/src/lib/javascript-utils/is-type.ts
5229
+ var isSharedArrayBuffer = (value) => typeof SharedArrayBuffer !== "undefined" && value instanceof SharedArrayBuffer;
5230
+
5139
5231
  // ../loader-utils/src/lib/module-utils/js-module-utils.ts
5140
5232
  function registerJSModules(modules) {
5141
5233
  globalThis.loaders ||= {};
@@ -5164,14 +5256,16 @@ var __exports__ = (() => {
5164
5256
  var NPM_TAG = "beta";
5165
5257
 
5166
5258
  // ../worker-utils/src/lib/env-utils/version.ts
5259
+ var warningIssued = false;
5167
5260
  function getVersion() {
5168
5261
  if (!globalThis._loadersgl_?.version) {
5169
5262
  globalThis._loadersgl_ = globalThis._loadersgl_ || {};
5170
- if (typeof __VERSION__ === "undefined") {
5263
+ if (typeof __VERSION__ === "undefined" && !warningIssued) {
5171
5264
  console.warn(
5172
5265
  "loaders.gl: The __VERSION__ variable is not injected using babel plugin. Latest unstable workers would be fetched from the CDN."
5173
5266
  );
5174
5267
  globalThis._loadersgl_.version = NPM_TAG;
5268
+ warningIssued = true;
5175
5269
  } else {
5176
5270
  globalThis._loadersgl_.version = __VERSION__;
5177
5271
  }
@@ -5443,7 +5537,8 @@ var __exports__ = (() => {
5443
5537
  if (this.url) {
5444
5538
  const absolute = this.url.includes(":/") || this.url.startsWith("/");
5445
5539
  const url = absolute ? this.url : `./${this.url}`;
5446
- worker = new NodeWorker(url, { eval: false });
5540
+ const type = this.url.endsWith(".ts") || this.url.endsWith(".mjs") ? "module" : "commonjs";
5541
+ worker = new NodeWorker(url, { eval: false, type });
5447
5542
  } else if (this.source) {
5448
5543
  worker = new NodeWorker(this.source, { eval: true });
5449
5544
  } else {
@@ -5699,7 +5794,8 @@ var __exports__ = (() => {
5699
5794
  if (!url && worker.id === "compression") {
5700
5795
  url = options.workerUrl;
5701
5796
  }
5702
- if (options._workerType === "test") {
5797
+ const workerType = options._workerType || options?.core?._workerType;
5798
+ if (workerType === "test") {
5703
5799
  if (isBrowser3) {
5704
5800
  url = `modules/${worker.module}/dist/${workerFile}`;
5705
5801
  } else {
@@ -5788,26 +5884,36 @@ var __exports__ = (() => {
5788
5884
  async function concatenateArrayBuffersAsync(asyncIterator) {
5789
5885
  const arrayBuffers = [];
5790
5886
  for await (const chunk of asyncIterator) {
5791
- arrayBuffers.push(chunk);
5887
+ arrayBuffers.push(copyToArrayBuffer(chunk));
5792
5888
  }
5793
5889
  return concatenateArrayBuffers(...arrayBuffers);
5794
5890
  }
5891
+ function copyToArrayBuffer(chunk) {
5892
+ if (chunk instanceof ArrayBuffer) {
5893
+ return chunk;
5894
+ }
5895
+ if (ArrayBuffer.isView(chunk)) {
5896
+ const { buffer, byteOffset, byteLength } = chunk;
5897
+ return copyFromBuffer(buffer, byteOffset, byteLength);
5898
+ }
5899
+ return copyFromBuffer(chunk);
5900
+ }
5901
+ function copyFromBuffer(buffer, byteOffset = 0, byteLength = buffer.byteLength - byteOffset) {
5902
+ const view = new Uint8Array(buffer, byteOffset, byteLength);
5903
+ const copy = new Uint8Array(view.length);
5904
+ copy.set(view);
5905
+ return copy.buffer;
5906
+ }
5795
5907
 
5796
5908
  // ../loader-utils/src/lib/node/buffer.browser.ts
5797
5909
  function toArrayBuffer(buffer) {
5798
5910
  return buffer;
5799
5911
  }
5800
- function toBuffer(binaryData) {
5801
- throw new Error("Buffer not supported in browser");
5802
- }
5803
5912
 
5804
5913
  // ../loader-utils/src/lib/binary-utils/memory-conversion-utils.ts
5805
5914
  function isBuffer(value) {
5806
5915
  return value && typeof value === "object" && value.isBuffer;
5807
5916
  }
5808
- function toBuffer2(data) {
5809
- return toBuffer ? toBuffer(data) : data;
5810
- }
5811
5917
  function toArrayBuffer2(data) {
5812
5918
  if (isBuffer(data)) {
5813
5919
  return toArrayBuffer(data);
@@ -5815,11 +5921,15 @@ var __exports__ = (() => {
5815
5921
  if (data instanceof ArrayBuffer) {
5816
5922
  return data;
5817
5923
  }
5924
+ if (isSharedArrayBuffer(data)) {
5925
+ return copyToArrayBuffer2(data);
5926
+ }
5818
5927
  if (ArrayBuffer.isView(data)) {
5928
+ const buffer = data.buffer;
5819
5929
  if (data.byteOffset === 0 && data.byteLength === data.buffer.byteLength) {
5820
- return data.buffer;
5930
+ return buffer;
5821
5931
  }
5822
- return data.buffer.slice(data.byteOffset, data.byteOffset + data.byteLength);
5932
+ return buffer.slice(data.byteOffset, data.byteOffset + data.byteLength);
5823
5933
  }
5824
5934
  if (typeof data === "string") {
5825
5935
  const text = data;
@@ -5831,6 +5941,25 @@ var __exports__ = (() => {
5831
5941
  }
5832
5942
  throw new Error("toArrayBuffer");
5833
5943
  }
5944
+ function ensureArrayBuffer(bufferSource) {
5945
+ if (bufferSource instanceof ArrayBuffer) {
5946
+ return bufferSource;
5947
+ }
5948
+ if (isSharedArrayBuffer(bufferSource)) {
5949
+ return copyToArrayBuffer2(bufferSource);
5950
+ }
5951
+ const { buffer, byteOffset, byteLength } = bufferSource;
5952
+ if (buffer instanceof ArrayBuffer && byteOffset === 0 && byteLength === buffer.byteLength) {
5953
+ return buffer;
5954
+ }
5955
+ return copyToArrayBuffer2(buffer, byteOffset, byteLength);
5956
+ }
5957
+ function copyToArrayBuffer2(buffer, byteOffset = 0, byteLength = buffer.byteLength - byteOffset) {
5958
+ const view = new Uint8Array(buffer, byteOffset, byteLength);
5959
+ const copy = new Uint8Array(view.length);
5960
+ copy.set(view);
5961
+ return copy.buffer;
5962
+ }
5834
5963
 
5835
5964
  // ../loader-utils/src/lib/node/promisify.ts
5836
5965
  function promisify1(fn) {
@@ -5951,7 +6080,7 @@ var __exports__ = (() => {
5951
6080
  const pakoOptions = this.options?.deflate || {};
5952
6081
  const inputArray = new Uint8Array(input);
5953
6082
  const deflate = this.options?.raw ? import_pako.default.deflateRaw : import_pako.default.deflate;
5954
- return deflate(inputArray, pakoOptions).buffer;
6083
+ return toArrayBuffer2(deflate(inputArray, pakoOptions).buffer);
5955
6084
  }
5956
6085
  decompressSync(input) {
5957
6086
  if (!isBrowser && this.options.deflate?.useZlib) {
@@ -5961,7 +6090,7 @@ var __exports__ = (() => {
5961
6090
  const pakoOptions = this.options?.deflate || {};
5962
6091
  const inputArray = new Uint8Array(input);
5963
6092
  const inflate = this.options?.raw ? import_pako.default.inflateRaw : import_pako.default.inflate;
5964
- return inflate(inputArray, pakoOptions).buffer;
6093
+ return toArrayBuffer2(inflate(inputArray, pakoOptions).buffer);
5965
6094
  }
5966
6095
  async *compressBatches(asyncIterator) {
5967
6096
  const pakoOptions = this.options?.deflate || {};
@@ -8151,7 +8280,7 @@ var __exports__ = (() => {
8151
8280
  const inputArray = new Uint8Array(input);
8152
8281
  const brotli = getJSModule("brotli", this.name);
8153
8282
  const outputArray = brotli.compress(inputArray, brotliOptions);
8154
- return outputArray.buffer;
8283
+ return toArrayBuffer2(outputArray.buffer);
8155
8284
  }
8156
8285
  async decompress(input) {
8157
8286
  if (!isBrowser && this.options.brotli?.useZlib) {
@@ -8170,7 +8299,7 @@ var __exports__ = (() => {
8170
8299
  const brotli = getJSModuleOrNull("brotli");
8171
8300
  if (brotli) {
8172
8301
  const outputArray2 = brotli.decompress(inputArray, brotliOptions);
8173
- return outputArray2.buffer;
8302
+ return toArrayBuffer2(outputArray2.buffer);
8174
8303
  }
8175
8304
  const outputArray = BrotliDecode(inputArray, void 0);
8176
8305
  return outputArray.buffer;
@@ -8348,51 +8477,15 @@ var __exports__ = (() => {
8348
8477
  const inputArray = new Uint8Array(input);
8349
8478
  const chunks = [];
8350
8479
  for (let i = 0; i <= inputArray.length; i += CHUNK_SIZE) {
8351
- chunks.push(inputArray.subarray(i, i + CHUNK_SIZE));
8480
+ const chunkView = inputArray.subarray(i, i + CHUNK_SIZE);
8481
+ const chunkArrayBuffer = ensureArrayBuffer(chunkView);
8482
+ chunks.push(new Uint8Array(chunkArrayBuffer));
8352
8483
  }
8353
8484
  const decompressResult = await simpleZstd.decompressChunks(chunks);
8354
8485
  return decompressResult.buffer;
8355
8486
  }
8356
8487
  };
8357
8488
 
8358
- // src/lib/lzo-compression.ts
8359
- var LZOCompression = class extends Compression {
8360
- name = "lzo";
8361
- extensions = [];
8362
- contentEncodings = [];
8363
- isSupported = false;
8364
- // !isBrowser;
8365
- options;
8366
- /**
8367
- * lzo is an injectable dependency due to big size
8368
- * @param options
8369
- */
8370
- constructor(options) {
8371
- super(options);
8372
- this.options = options;
8373
- registerJSModules(options?.modules);
8374
- }
8375
- async preload(modules = {}) {
8376
- registerJSModules(modules);
8377
- }
8378
- async compress(input) {
8379
- await this.preload();
8380
- const lzo = getJSModule("lzo", this.name);
8381
- const inputBuffer = toBuffer2(input);
8382
- return lzo.compress(inputBuffer).buffer;
8383
- }
8384
- async decompress(input) {
8385
- try {
8386
- await this.preload();
8387
- const lzo = getJSModule("lzo", this.name);
8388
- const inputBuffer = toBuffer2(input);
8389
- return lzo.decompress(inputBuffer).buffer;
8390
- } catch (error) {
8391
- throw error;
8392
- }
8393
- }
8394
- };
8395
-
8396
8489
  // src/compress-on-worker.ts
8397
8490
  var VERSION4 = typeof __VERSION__ !== "undefined" ? __VERSION__ : "latest";
8398
8491
  var CompressionWorker = {