@loaders.gl/textures 4.0.0-alpha.18 → 4.0.0-alpha.20

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 (56) hide show
  1. package/dist/basis-worker-node.js +26 -22
  2. package/dist/basis-worker.js +23 -19
  3. package/dist/compressed-texture-worker.js +23 -19
  4. package/dist/crunch-worker.js +17 -13
  5. package/dist/dist.min.js +51 -26
  6. package/dist/es5/index.js +14 -0
  7. package/dist/es5/index.js.map +1 -1
  8. package/dist/es5/ktx2-basis-writer.js +4 -2
  9. package/dist/es5/ktx2-basis-writer.js.map +1 -1
  10. package/dist/es5/lib/encoders/encode-ktx2-basis-texture.js +6 -5
  11. package/dist/es5/lib/encoders/encode-ktx2-basis-texture.js.map +1 -1
  12. package/dist/es5/lib/parsers/basis-module-loader.js +12 -7
  13. package/dist/es5/lib/parsers/basis-module-loader.js.map +1 -1
  14. package/dist/es5/lib/parsers/crunch-module-loader.js +6 -1
  15. package/dist/es5/lib/parsers/crunch-module-loader.js.map +1 -1
  16. package/dist/es5/lib/utils/version.js +1 -1
  17. package/dist/es5/workers/ktx2-basis-writer-worker-node.js.map +1 -1
  18. package/dist/es5/workers/ktx2-basis-writer-worker.js.map +1 -1
  19. package/dist/esm/index.js +2 -0
  20. package/dist/esm/index.js.map +1 -1
  21. package/dist/esm/ktx2-basis-writer.js +6 -4
  22. package/dist/esm/ktx2-basis-writer.js.map +1 -1
  23. package/dist/esm/lib/encoders/encode-ktx2-basis-texture.js +1 -1
  24. package/dist/esm/lib/encoders/encode-ktx2-basis-texture.js.map +1 -1
  25. package/dist/esm/lib/parsers/basis-module-loader.js +8 -5
  26. package/dist/esm/lib/parsers/basis-module-loader.js.map +1 -1
  27. package/dist/esm/lib/parsers/crunch-module-loader.js +4 -1
  28. package/dist/esm/lib/parsers/crunch-module-loader.js.map +1 -1
  29. package/dist/esm/lib/utils/version.js +1 -1
  30. package/dist/esm/workers/ktx2-basis-writer-worker-node.js.map +1 -1
  31. package/dist/esm/workers/ktx2-basis-writer-worker.js.map +1 -1
  32. package/dist/index.d.ts +2 -0
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/index.js +6 -1
  35. package/dist/ktx2-basis-writer-worker-node.js +36 -25
  36. package/dist/ktx2-basis-writer-worker.js +33 -22
  37. package/dist/ktx2-basis-writer.d.ts +8 -6
  38. package/dist/ktx2-basis-writer.d.ts.map +1 -1
  39. package/dist/ktx2-basis-writer.js +6 -4
  40. package/dist/lib/encoders/encode-ktx2-basis-texture.d.ts.map +1 -1
  41. package/dist/lib/encoders/encode-ktx2-basis-texture.js +1 -1
  42. package/dist/lib/parsers/basis-module-loader.d.ts +10 -0
  43. package/dist/lib/parsers/basis-module-loader.d.ts.map +1 -1
  44. package/dist/lib/parsers/basis-module-loader.js +15 -11
  45. package/dist/lib/parsers/crunch-module-loader.d.ts +4 -0
  46. package/dist/lib/parsers/crunch-module-loader.d.ts.map +1 -1
  47. package/dist/lib/parsers/crunch-module-loader.js +6 -2
  48. package/dist/npy-worker.js +1 -1
  49. package/package.json +7 -7
  50. package/src/index.ts +4 -0
  51. package/src/ktx2-basis-writer.ts +14 -10
  52. package/src/lib/encoders/encode-ktx2-basis-texture.ts +6 -1
  53. package/src/lib/parsers/basis-module-loader.ts +14 -11
  54. package/src/lib/parsers/crunch-module-loader.ts +6 -1
  55. package/src/workers/ktx2-basis-writer-worker-node.ts +2 -2
  56. package/src/workers/ktx2-basis-writer-worker.ts +2 -2
@@ -21408,7 +21408,7 @@ var require_cookie = __commonJS({
21408
21408
  var Store = require_store().Store;
21409
21409
  var MemoryCookieStore = require_memstore().MemoryCookieStore;
21410
21410
  var pathMatch = require_pathMatch().pathMatch;
21411
- var VERSION5 = require_version();
21411
+ var VERSION4 = require_version();
21412
21412
  var punycode;
21413
21413
  try {
21414
21414
  punycode = require("punycode");
@@ -22225,7 +22225,7 @@ var require_cookie = __commonJS({
22225
22225
  type = null;
22226
22226
  }
22227
22227
  var serialized = {
22228
- version: "tough-cookie@" + VERSION5,
22228
+ version: "tough-cookie@" + VERSION4,
22229
22229
  storeType: type,
22230
22230
  rejectPublicSuffixes: !!this.rejectPublicSuffixes,
22231
22231
  cookies: []
@@ -22377,7 +22377,7 @@ var require_cookie = __commonJS({
22377
22377
  CAN_BE_SYNC.forEach(function(method) {
22378
22378
  CookieJar.prototype[method + "Sync"] = syncWrap(method);
22379
22379
  });
22380
- exports2.version = VERSION5;
22380
+ exports2.version = VERSION4;
22381
22381
  exports2.CookieJar = CookieJar;
22382
22382
  exports2.Cookie = Cookie;
22383
22383
  exports2.Store = Store;
@@ -63302,7 +63302,7 @@ if (!("allSettled" in Promise)) {
63302
63302
  }
63303
63303
 
63304
63304
  // ../worker-utils/src/lib/env-utils/version.ts
63305
- var VERSION = true ? "4.0.0-alpha.18" : DEFAULT_VERSION;
63305
+ var VERSION = true ? "4.0.0-alpha.20" : DEFAULT_VERSION;
63306
63306
  if (false) {
63307
63307
  console.error("loaders.gl: The __VERSION__ variable is not injected using babel plugin. Latest unstable workers would be fetched from the CDN.");
63308
63308
  }
@@ -63502,32 +63502,33 @@ function requireFromString(code, filename = "", options) {
63502
63502
  var LATEST = "beta";
63503
63503
  var VERSION2 = typeof VERSION !== "undefined" ? VERSION : LATEST;
63504
63504
  var loadLibraryPromises = {};
63505
- async function loadLibrary(libraryUrl, moduleName = null, options = {}) {
63505
+ async function loadLibrary(libraryUrl, moduleName = null, options = {}, libraryName = null) {
63506
63506
  if (moduleName) {
63507
- libraryUrl = getLibraryUrl(libraryUrl, moduleName, options);
63507
+ libraryUrl = getLibraryUrl(libraryUrl, moduleName, options, libraryName);
63508
63508
  }
63509
63509
  loadLibraryPromises[libraryUrl] = loadLibraryPromises[libraryUrl] || loadLibraryFromFile(libraryUrl);
63510
63510
  return await loadLibraryPromises[libraryUrl];
63511
63511
  }
63512
- function getLibraryUrl(library, moduleName, options) {
63513
- if (library.startsWith("http")) {
63512
+ function getLibraryUrl(library, moduleName, options = {}, libraryName = null) {
63513
+ if (!options.useLocalLibraries && library.startsWith("http")) {
63514
63514
  return library;
63515
63515
  }
63516
+ libraryName = libraryName || library;
63516
63517
  const modules = options.modules || {};
63517
- if (modules[library]) {
63518
- return modules[library];
63518
+ if (modules[libraryName]) {
63519
+ return modules[libraryName];
63519
63520
  }
63520
63521
  if (!isBrowser2) {
63521
- return `modules/${moduleName}/dist/libs/${library}`;
63522
+ return `modules/${moduleName}/dist/libs/${libraryName}`;
63522
63523
  }
63523
63524
  if (options.CDN) {
63524
63525
  assert2(options.CDN.startsWith("http"));
63525
- return `${options.CDN}/${moduleName}@${VERSION2}/dist/libs/${library}`;
63526
+ return `${options.CDN}/${moduleName}@${VERSION2}/dist/libs/${libraryName}`;
63526
63527
  }
63527
63528
  if (isWorker) {
63528
- return `../src/libs/${library}`;
63529
+ return `../src/libs/${libraryName}`;
63529
63530
  }
63530
- return `modules/${moduleName}/src/libs/${library}`;
63531
+ return `modules/${moduleName}/src/libs/${libraryName}`;
63531
63532
  }
63532
63533
  async function loadLibraryFromFile(libraryUrl) {
63533
63534
  if (libraryUrl.endsWith("wasm")) {
@@ -63653,12 +63654,15 @@ async function parseData({ loader, arrayBuffer, options, context }) {
63653
63654
  }
63654
63655
 
63655
63656
  // src/lib/utils/version.ts
63656
- var VERSION3 = true ? "4.0.0-alpha.18" : "beta";
63657
+ var VERSION3 = true ? "4.0.0-alpha.20" : "beta";
63657
63658
 
63658
63659
  // src/lib/parsers/basis-module-loader.ts
63659
- var VERSION4 = true ? "4.0.0-alpha.18" : "beta";
63660
- var BASIS_CDN_ENCODER_WASM = `https://unpkg.com/@loaders.gl/textures@${VERSION4}/dist/libs/basis_encoder.wasm`;
63661
- var BASIS_CDN_ENCODER_JS = `https://unpkg.com/@loaders.gl/textures@${VERSION4}/dist/libs/basis_encoder.js`;
63660
+ var BASIS_EXTERNAL_LIBRARIES = {
63661
+ TRANSCODER: "basis_transcoder.js",
63662
+ TRANSCODER_WASM: "basis_transcoder.wasm",
63663
+ ENCODER: "basis_encoder.js",
63664
+ ENCODER_WASM: "basis_encoder.wasm"
63665
+ };
63662
63666
  var loadBasisTranscoderPromise;
63663
63667
  async function loadBasisTranscoderModule(options) {
63664
63668
  const modules = options.modules || {};
@@ -63672,8 +63676,8 @@ async function loadBasisTranscoder(options) {
63672
63676
  let BASIS = null;
63673
63677
  let wasmBinary = null;
63674
63678
  [BASIS, wasmBinary] = await Promise.all([
63675
- await loadLibrary("basis_transcoder.js", "textures", options),
63676
- await loadLibrary("basis_transcoder.wasm", "textures", options)
63679
+ await loadLibrary(BASIS_EXTERNAL_LIBRARIES.TRANSCODER, "textures", options),
63680
+ await loadLibrary(BASIS_EXTERNAL_LIBRARIES.TRANSCODER_WASM, "textures", options)
63677
63681
  ]);
63678
63682
  BASIS = BASIS || globalThis.BASIS;
63679
63683
  return await initializeBasisTranscoderModule(BASIS, wasmBinary);
@@ -63704,8 +63708,8 @@ async function loadBasisEncoder(options) {
63704
63708
  let BASIS_ENCODER = null;
63705
63709
  let wasmBinary = null;
63706
63710
  [BASIS_ENCODER, wasmBinary] = await Promise.all([
63707
- await loadLibrary(BASIS_CDN_ENCODER_JS, "textures", options),
63708
- await loadLibrary(BASIS_CDN_ENCODER_WASM, "textures", options)
63711
+ await loadLibrary(BASIS_EXTERNAL_LIBRARIES.ENCODER, "textures", options),
63712
+ await loadLibrary(BASIS_EXTERNAL_LIBRARIES.ENCODER_WASM, "textures", options)
63709
63713
  ]);
63710
63714
  BASIS_ENCODER = BASIS_ENCODER || globalThis.BASIS;
63711
63715
  return await initializeBasisEncoderModule(BASIS_ENCODER, wasmBinary);
@@ -28,7 +28,7 @@
28
28
  });
29
29
 
30
30
  // ../worker-utils/src/lib/env-utils/version.ts
31
- var VERSION = true ? "4.0.0-alpha.18" : DEFAULT_VERSION;
31
+ var VERSION = true ? "4.0.0-alpha.20" : DEFAULT_VERSION;
32
32
  if (false) {
33
33
  console.error("loaders.gl: The __VERSION__ variable is not injected using babel plugin. Latest unstable workers would be fetched from the CDN.");
34
34
  }
@@ -171,32 +171,33 @@
171
171
  var LATEST = "beta";
172
172
  var VERSION2 = typeof VERSION !== "undefined" ? VERSION : LATEST;
173
173
  var loadLibraryPromises = {};
174
- async function loadLibrary(libraryUrl, moduleName = null, options = {}) {
174
+ async function loadLibrary(libraryUrl, moduleName = null, options = {}, libraryName = null) {
175
175
  if (moduleName) {
176
- libraryUrl = getLibraryUrl(libraryUrl, moduleName, options);
176
+ libraryUrl = getLibraryUrl(libraryUrl, moduleName, options, libraryName);
177
177
  }
178
178
  loadLibraryPromises[libraryUrl] = loadLibraryPromises[libraryUrl] || loadLibraryFromFile(libraryUrl);
179
179
  return await loadLibraryPromises[libraryUrl];
180
180
  }
181
- function getLibraryUrl(library, moduleName, options) {
182
- if (library.startsWith("http")) {
181
+ function getLibraryUrl(library, moduleName, options = {}, libraryName = null) {
182
+ if (!options.useLocalLibraries && library.startsWith("http")) {
183
183
  return library;
184
184
  }
185
+ libraryName = libraryName || library;
185
186
  const modules = options.modules || {};
186
- if (modules[library]) {
187
- return modules[library];
187
+ if (modules[libraryName]) {
188
+ return modules[libraryName];
188
189
  }
189
190
  if (!isBrowser) {
190
- return `modules/${moduleName}/dist/libs/${library}`;
191
+ return `modules/${moduleName}/dist/libs/${libraryName}`;
191
192
  }
192
193
  if (options.CDN) {
193
194
  assert(options.CDN.startsWith("http"));
194
- return `${options.CDN}/${moduleName}@${VERSION2}/dist/libs/${library}`;
195
+ return `${options.CDN}/${moduleName}@${VERSION2}/dist/libs/${libraryName}`;
195
196
  }
196
197
  if (isWorker) {
197
- return `../src/libs/${library}`;
198
+ return `../src/libs/${libraryName}`;
198
199
  }
199
- return `modules/${moduleName}/src/libs/${library}`;
200
+ return `modules/${moduleName}/src/libs/${libraryName}`;
200
201
  }
201
202
  async function loadLibraryFromFile(libraryUrl) {
202
203
  if (libraryUrl.endsWith("wasm")) {
@@ -324,12 +325,15 @@
324
325
  }
325
326
 
326
327
  // src/lib/utils/version.ts
327
- var VERSION3 = true ? "4.0.0-alpha.18" : "beta";
328
+ var VERSION3 = true ? "4.0.0-alpha.20" : "beta";
328
329
 
329
330
  // src/lib/parsers/basis-module-loader.ts
330
- var VERSION4 = true ? "4.0.0-alpha.18" : "beta";
331
- var BASIS_CDN_ENCODER_WASM = `https://unpkg.com/@loaders.gl/textures@${VERSION4}/dist/libs/basis_encoder.wasm`;
332
- var BASIS_CDN_ENCODER_JS = `https://unpkg.com/@loaders.gl/textures@${VERSION4}/dist/libs/basis_encoder.js`;
331
+ var BASIS_EXTERNAL_LIBRARIES = {
332
+ TRANSCODER: "basis_transcoder.js",
333
+ TRANSCODER_WASM: "basis_transcoder.wasm",
334
+ ENCODER: "basis_encoder.js",
335
+ ENCODER_WASM: "basis_encoder.wasm"
336
+ };
333
337
  var loadBasisTranscoderPromise;
334
338
  async function loadBasisTranscoderModule(options) {
335
339
  const modules = options.modules || {};
@@ -343,8 +347,8 @@
343
347
  let BASIS = null;
344
348
  let wasmBinary = null;
345
349
  [BASIS, wasmBinary] = await Promise.all([
346
- await loadLibrary("basis_transcoder.js", "textures", options),
347
- await loadLibrary("basis_transcoder.wasm", "textures", options)
350
+ await loadLibrary(BASIS_EXTERNAL_LIBRARIES.TRANSCODER, "textures", options),
351
+ await loadLibrary(BASIS_EXTERNAL_LIBRARIES.TRANSCODER_WASM, "textures", options)
348
352
  ]);
349
353
  BASIS = BASIS || globalThis.BASIS;
350
354
  return await initializeBasisTranscoderModule(BASIS, wasmBinary);
@@ -375,8 +379,8 @@
375
379
  let BASIS_ENCODER = null;
376
380
  let wasmBinary = null;
377
381
  [BASIS_ENCODER, wasmBinary] = await Promise.all([
378
- await loadLibrary(BASIS_CDN_ENCODER_JS, "textures", options),
379
- await loadLibrary(BASIS_CDN_ENCODER_WASM, "textures", options)
382
+ await loadLibrary(BASIS_EXTERNAL_LIBRARIES.ENCODER, "textures", options),
383
+ await loadLibrary(BASIS_EXTERNAL_LIBRARIES.ENCODER_WASM, "textures", options)
380
384
  ]);
381
385
  BASIS_ENCODER = BASIS_ENCODER || globalThis.BASIS;
382
386
  return await initializeBasisEncoderModule(BASIS_ENCODER, wasmBinary);
@@ -35,7 +35,7 @@
35
35
  }
36
36
 
37
37
  // ../worker-utils/src/lib/env-utils/version.ts
38
- var VERSION = true ? "4.0.0-alpha.18" : DEFAULT_VERSION;
38
+ var VERSION = true ? "4.0.0-alpha.20" : DEFAULT_VERSION;
39
39
  if (false) {
40
40
  console.error("loaders.gl: The __VERSION__ variable is not injected using babel plugin. Latest unstable workers would be fetched from the CDN.");
41
41
  }
@@ -178,32 +178,33 @@
178
178
  var LATEST = "beta";
179
179
  var VERSION2 = typeof VERSION !== "undefined" ? VERSION : LATEST;
180
180
  var loadLibraryPromises = {};
181
- async function loadLibrary(libraryUrl, moduleName = null, options = {}) {
181
+ async function loadLibrary(libraryUrl, moduleName = null, options = {}, libraryName = null) {
182
182
  if (moduleName) {
183
- libraryUrl = getLibraryUrl(libraryUrl, moduleName, options);
183
+ libraryUrl = getLibraryUrl(libraryUrl, moduleName, options, libraryName);
184
184
  }
185
185
  loadLibraryPromises[libraryUrl] = loadLibraryPromises[libraryUrl] || loadLibraryFromFile(libraryUrl);
186
186
  return await loadLibraryPromises[libraryUrl];
187
187
  }
188
- function getLibraryUrl(library, moduleName, options) {
189
- if (library.startsWith("http")) {
188
+ function getLibraryUrl(library, moduleName, options = {}, libraryName = null) {
189
+ if (!options.useLocalLibraries && library.startsWith("http")) {
190
190
  return library;
191
191
  }
192
+ libraryName = libraryName || library;
192
193
  const modules = options.modules || {};
193
- if (modules[library]) {
194
- return modules[library];
194
+ if (modules[libraryName]) {
195
+ return modules[libraryName];
195
196
  }
196
197
  if (!isBrowser) {
197
- return `modules/${moduleName}/dist/libs/${library}`;
198
+ return `modules/${moduleName}/dist/libs/${libraryName}`;
198
199
  }
199
200
  if (options.CDN) {
200
201
  assert2(options.CDN.startsWith("http"));
201
- return `${options.CDN}/${moduleName}@${VERSION2}/dist/libs/${library}`;
202
+ return `${options.CDN}/${moduleName}@${VERSION2}/dist/libs/${libraryName}`;
202
203
  }
203
204
  if (isWorker) {
204
- return `../src/libs/${library}`;
205
+ return `../src/libs/${libraryName}`;
205
206
  }
206
- return `modules/${moduleName}/src/libs/${library}`;
207
+ return `modules/${moduleName}/src/libs/${libraryName}`;
207
208
  }
208
209
  async function loadLibraryFromFile(libraryUrl) {
209
210
  if (libraryUrl.endsWith("wasm")) {
@@ -331,7 +332,7 @@
331
332
  }
332
333
 
333
334
  // src/lib/utils/version.ts
334
- var VERSION3 = true ? "4.0.0-alpha.18" : "beta";
335
+ var VERSION3 = true ? "4.0.0-alpha.20" : "beta";
335
336
 
336
337
  // ../../node_modules/ktx-parse/dist/ktx-parse.modern.js
337
338
  var t = new Uint8Array([0]);
@@ -919,9 +920,12 @@
919
920
  }
920
921
 
921
922
  // src/lib/parsers/basis-module-loader.ts
922
- var VERSION4 = true ? "4.0.0-alpha.18" : "beta";
923
- var BASIS_CDN_ENCODER_WASM = `https://unpkg.com/@loaders.gl/textures@${VERSION4}/dist/libs/basis_encoder.wasm`;
924
- var BASIS_CDN_ENCODER_JS = `https://unpkg.com/@loaders.gl/textures@${VERSION4}/dist/libs/basis_encoder.js`;
923
+ var BASIS_EXTERNAL_LIBRARIES = {
924
+ TRANSCODER: "basis_transcoder.js",
925
+ TRANSCODER_WASM: "basis_transcoder.wasm",
926
+ ENCODER: "basis_encoder.js",
927
+ ENCODER_WASM: "basis_encoder.wasm"
928
+ };
925
929
  var loadBasisTranscoderPromise;
926
930
  async function loadBasisTranscoderModule(options) {
927
931
  const modules = options.modules || {};
@@ -935,8 +939,8 @@
935
939
  let BASIS = null;
936
940
  let wasmBinary = null;
937
941
  [BASIS, wasmBinary] = await Promise.all([
938
- await loadLibrary("basis_transcoder.js", "textures", options),
939
- await loadLibrary("basis_transcoder.wasm", "textures", options)
942
+ await loadLibrary(BASIS_EXTERNAL_LIBRARIES.TRANSCODER, "textures", options),
943
+ await loadLibrary(BASIS_EXTERNAL_LIBRARIES.TRANSCODER_WASM, "textures", options)
940
944
  ]);
941
945
  BASIS = BASIS || globalThis.BASIS;
942
946
  return await initializeBasisTranscoderModule(BASIS, wasmBinary);
@@ -967,8 +971,8 @@
967
971
  let BASIS_ENCODER = null;
968
972
  let wasmBinary = null;
969
973
  [BASIS_ENCODER, wasmBinary] = await Promise.all([
970
- await loadLibrary(BASIS_CDN_ENCODER_JS, "textures", options),
971
- await loadLibrary(BASIS_CDN_ENCODER_WASM, "textures", options)
974
+ await loadLibrary(BASIS_EXTERNAL_LIBRARIES.ENCODER, "textures", options),
975
+ await loadLibrary(BASIS_EXTERNAL_LIBRARIES.ENCODER_WASM, "textures", options)
972
976
  ]);
973
977
  BASIS_ENCODER = BASIS_ENCODER || globalThis.BASIS;
974
978
  return await initializeBasisEncoderModule(BASIS_ENCODER, wasmBinary);
@@ -35,7 +35,7 @@
35
35
  }
36
36
 
37
37
  // ../worker-utils/src/lib/env-utils/version.ts
38
- var VERSION = true ? "4.0.0-alpha.18" : DEFAULT_VERSION;
38
+ var VERSION = true ? "4.0.0-alpha.20" : DEFAULT_VERSION;
39
39
  if (false) {
40
40
  console.error("loaders.gl: The __VERSION__ variable is not injected using babel plugin. Latest unstable workers would be fetched from the CDN.");
41
41
  }
@@ -178,32 +178,33 @@
178
178
  var LATEST = "beta";
179
179
  var VERSION2 = typeof VERSION !== "undefined" ? VERSION : LATEST;
180
180
  var loadLibraryPromises = {};
181
- async function loadLibrary(libraryUrl, moduleName = null, options = {}) {
181
+ async function loadLibrary(libraryUrl, moduleName = null, options = {}, libraryName = null) {
182
182
  if (moduleName) {
183
- libraryUrl = getLibraryUrl(libraryUrl, moduleName, options);
183
+ libraryUrl = getLibraryUrl(libraryUrl, moduleName, options, libraryName);
184
184
  }
185
185
  loadLibraryPromises[libraryUrl] = loadLibraryPromises[libraryUrl] || loadLibraryFromFile(libraryUrl);
186
186
  return await loadLibraryPromises[libraryUrl];
187
187
  }
188
- function getLibraryUrl(library, moduleName, options) {
189
- if (library.startsWith("http")) {
188
+ function getLibraryUrl(library, moduleName, options = {}, libraryName = null) {
189
+ if (!options.useLocalLibraries && library.startsWith("http")) {
190
190
  return library;
191
191
  }
192
+ libraryName = libraryName || library;
192
193
  const modules = options.modules || {};
193
- if (modules[library]) {
194
- return modules[library];
194
+ if (modules[libraryName]) {
195
+ return modules[libraryName];
195
196
  }
196
197
  if (!isBrowser) {
197
- return `modules/${moduleName}/dist/libs/${library}`;
198
+ return `modules/${moduleName}/dist/libs/${libraryName}`;
198
199
  }
199
200
  if (options.CDN) {
200
201
  assert2(options.CDN.startsWith("http"));
201
- return `${options.CDN}/${moduleName}@${VERSION2}/dist/libs/${library}`;
202
+ return `${options.CDN}/${moduleName}@${VERSION2}/dist/libs/${libraryName}`;
202
203
  }
203
204
  if (isWorker) {
204
- return `../src/libs/${library}`;
205
+ return `../src/libs/${libraryName}`;
205
206
  }
206
- return `modules/${moduleName}/src/libs/${library}`;
207
+ return `modules/${moduleName}/src/libs/${libraryName}`;
207
208
  }
208
209
  async function loadLibraryFromFile(libraryUrl) {
209
210
  if (libraryUrl.endsWith("wasm")) {
@@ -331,7 +332,7 @@
331
332
  }
332
333
 
333
334
  // src/lib/utils/version.ts
334
- var VERSION3 = true ? "4.0.0-alpha.18" : "beta";
335
+ var VERSION3 = true ? "4.0.0-alpha.20" : "beta";
335
336
 
336
337
  // src/crunch-loader.ts
337
338
  var CrunchLoader = {
@@ -351,6 +352,9 @@
351
352
  };
352
353
 
353
354
  // src/lib/parsers/crunch-module-loader.ts
355
+ var CRUNCH_EXTERNAL_LIBRARIES = {
356
+ DECODER: "crunch.js"
357
+ };
354
358
  async function loadCrunchModule(options) {
355
359
  const modules = options.modules || {};
356
360
  if (modules.crunch) {
@@ -363,7 +367,7 @@
363
367
  if (crunchModule) {
364
368
  return crunchModule;
365
369
  }
366
- let loadCrunchDecoder = await loadLibrary("crunch.js", "textures", options);
370
+ let loadCrunchDecoder = await loadLibrary(CRUNCH_EXTERNAL_LIBRARIES.DECODER, "textures", options);
367
371
  loadCrunchDecoder = loadCrunchDecoder || globalThis.LoadCrunchDecoder;
368
372
  crunchModule = loadCrunchDecoder();
369
373
  return crunchModule;
package/dist/dist.min.js CHANGED
@@ -89,32 +89,33 @@
89
89
  });
90
90
 
91
91
  // ../worker-utils/src/lib/library-utils/library-utils.ts
92
- async function loadLibrary(libraryUrl, moduleName = null, options = {}) {
92
+ async function loadLibrary(libraryUrl, moduleName = null, options = {}, libraryName = null) {
93
93
  if (moduleName) {
94
- libraryUrl = getLibraryUrl(libraryUrl, moduleName, options);
94
+ libraryUrl = getLibraryUrl(libraryUrl, moduleName, options, libraryName);
95
95
  }
96
96
  loadLibraryPromises[libraryUrl] = loadLibraryPromises[libraryUrl] || loadLibraryFromFile(libraryUrl);
97
97
  return await loadLibraryPromises[libraryUrl];
98
98
  }
99
- function getLibraryUrl(library, moduleName, options) {
100
- if (library.startsWith("http")) {
99
+ function getLibraryUrl(library, moduleName, options = {}, libraryName = null) {
100
+ if (!options.useLocalLibraries && library.startsWith("http")) {
101
101
  return library;
102
102
  }
103
+ libraryName = libraryName || library;
103
104
  const modules = options.modules || {};
104
- if (modules[library]) {
105
- return modules[library];
105
+ if (modules[libraryName]) {
106
+ return modules[libraryName];
106
107
  }
107
108
  if (!isBrowser) {
108
- return `modules/${moduleName}/dist/libs/${library}`;
109
+ return `modules/${moduleName}/dist/libs/${libraryName}`;
109
110
  }
110
111
  if (options.CDN) {
111
112
  assert(options.CDN.startsWith("http"));
112
- return `${options.CDN}/${moduleName}@${VERSION3}/dist/libs/${library}`;
113
+ return `${options.CDN}/${moduleName}@${VERSION3}/dist/libs/${libraryName}`;
113
114
  }
114
115
  if (isWorker) {
115
- return `../src/libs/${library}`;
116
+ return `../src/libs/${libraryName}`;
116
117
  }
117
- return `modules/${moduleName}/src/libs/${library}`;
118
+ return `modules/${moduleName}/src/libs/${libraryName}`;
118
119
  }
119
120
  async function loadLibraryFromFile(libraryUrl) {
120
121
  if (libraryUrl.endsWith("wasm")) {
@@ -205,8 +206,8 @@
205
206
  let BASIS = null;
206
207
  let wasmBinary = null;
207
208
  [BASIS, wasmBinary] = await Promise.all([
208
- await loadLibrary("basis_transcoder.js", "textures", options),
209
- await loadLibrary("basis_transcoder.wasm", "textures", options)
209
+ await loadLibrary(BASIS_EXTERNAL_LIBRARIES.TRANSCODER, "textures", options),
210
+ await loadLibrary(BASIS_EXTERNAL_LIBRARIES.TRANSCODER_WASM, "textures", options)
210
211
  ]);
211
212
  BASIS = BASIS || globalThis.BASIS;
212
213
  return await initializeBasisTranscoderModule(BASIS, wasmBinary);
@@ -236,8 +237,8 @@
236
237
  let BASIS_ENCODER = null;
237
238
  let wasmBinary = null;
238
239
  [BASIS_ENCODER, wasmBinary] = await Promise.all([
239
- await loadLibrary(BASIS_CDN_ENCODER_JS, "textures", options),
240
- await loadLibrary(BASIS_CDN_ENCODER_WASM, "textures", options)
240
+ await loadLibrary(BASIS_EXTERNAL_LIBRARIES.ENCODER, "textures", options),
241
+ await loadLibrary(BASIS_EXTERNAL_LIBRARIES.ENCODER_WASM, "textures", options)
241
242
  ]);
242
243
  BASIS_ENCODER = BASIS_ENCODER || globalThis.BASIS;
243
244
  return await initializeBasisEncoderModule(BASIS_ENCODER, wasmBinary);
@@ -255,13 +256,16 @@
255
256
  });
256
257
  });
257
258
  }
258
- var VERSION4, BASIS_CDN_ENCODER_WASM, BASIS_CDN_ENCODER_JS, loadBasisTranscoderPromise, loadBasisEncoderPromise;
259
+ var BASIS_EXTERNAL_LIBRARIES, loadBasisTranscoderPromise, loadBasisEncoderPromise;
259
260
  var init_basis_module_loader = __esm({
260
261
  "src/lib/parsers/basis-module-loader.ts"() {
261
262
  init_src();
262
- VERSION4 = typeof __VERSION__ !== "undefined" ? __VERSION__ : "beta";
263
- BASIS_CDN_ENCODER_WASM = `https://unpkg.com/@loaders.gl/textures@${VERSION4}/dist/libs/basis_encoder.wasm`;
264
- BASIS_CDN_ENCODER_JS = `https://unpkg.com/@loaders.gl/textures@${VERSION4}/dist/libs/basis_encoder.js`;
263
+ BASIS_EXTERNAL_LIBRARIES = {
264
+ TRANSCODER: "basis_transcoder.js",
265
+ TRANSCODER_WASM: "basis_transcoder.wasm",
266
+ ENCODER: "basis_encoder.js",
267
+ ENCODER_WASM: "basis_encoder.wasm"
268
+ };
265
269
  }
266
270
  });
267
271
 
@@ -1384,6 +1388,16 @@
1384
1388
  }
1385
1389
  });
1386
1390
 
1391
+ // src/lib/parsers/crunch-module-loader.ts
1392
+ var CRUNCH_EXTERNAL_LIBRARIES;
1393
+ var init_crunch_module_loader = __esm({
1394
+ "src/lib/parsers/crunch-module-loader.ts"() {
1395
+ CRUNCH_EXTERNAL_LIBRARIES = {
1396
+ DECODER: "crunch.js"
1397
+ };
1398
+ }
1399
+ });
1400
+
1387
1401
  // src/lib/encoders/encode-texture.ts
1388
1402
  async function encodeImageURLToCompressedTextureURL(inputUrl, outputUrl, options) {
1389
1403
  const args = [
@@ -1442,7 +1456,12 @@
1442
1456
 
1443
1457
  // src/lib/encoders/encode-ktx2-basis-texture.ts
1444
1458
  async function encodeKTX2BasisTexture(image, options = {}) {
1445
- const { useSRGB = false, qualityLevel = 10, encodeUASTC = false, mipmaps = false } = options;
1459
+ const {
1460
+ useSRGB = false,
1461
+ qualityLevel = 10,
1462
+ encodeUASTC = false,
1463
+ mipmaps = false
1464
+ } = options?.["ktx2-basis-writer"] || {};
1446
1465
  const { BasisEncoder } = await loadBasisEncoderModule(options);
1447
1466
  const basisEncoder = new BasisEncoder();
1448
1467
  try {
@@ -1485,10 +1504,12 @@
1485
1504
  version: VERSION,
1486
1505
  extensions: ["ktx2"],
1487
1506
  options: {
1488
- useSRGB: false,
1489
- qualityLevel: 10,
1490
- encodeUASTC: false,
1491
- mipmaps: false
1507
+ ["ktx2-basis-writer"]: {
1508
+ useSRGB: false,
1509
+ qualityLevel: 10,
1510
+ encodeUASTC: false,
1511
+ mipmaps: false
1512
+ }
1492
1513
  },
1493
1514
  encode: encodeKTX2BasisTexture
1494
1515
  };
@@ -1496,10 +1517,10 @@
1496
1517
  });
1497
1518
 
1498
1519
  // ../images/src/lib/utils/version.ts
1499
- var VERSION5;
1520
+ var VERSION4;
1500
1521
  var init_version3 = __esm({
1501
1522
  "../images/src/lib/utils/version.ts"() {
1502
- VERSION5 = typeof __VERSION__ !== "undefined" ? __VERSION__ : "latest";
1523
+ VERSION4 = typeof __VERSION__ !== "undefined" ? __VERSION__ : "latest";
1503
1524
  }
1504
1525
  });
1505
1526
 
@@ -1951,7 +1972,7 @@
1951
1972
  id: "image",
1952
1973
  module: "images",
1953
1974
  name: "Images",
1954
- version: VERSION5,
1975
+ version: VERSION4,
1955
1976
  mimeTypes: MIME_TYPES,
1956
1977
  extensions: EXTENSIONS,
1957
1978
  parse: parseImage,
@@ -2140,8 +2161,10 @@
2140
2161
  // src/index.ts
2141
2162
  var src_exports = {};
2142
2163
  __export(src_exports, {
2164
+ BASIS_EXTERNAL_LIBRARIES: () => BASIS_EXTERNAL_LIBRARIES,
2143
2165
  BasisLoader: () => BasisLoader,
2144
2166
  BasisWorkerLoader: () => BasisWorkerLoader,
2167
+ CRUNCH_EXTERNAL_LIBRARIES: () => CRUNCH_EXTERNAL_LIBRARIES,
2145
2168
  CompressedTextureLoader: () => CompressedTextureLoader,
2146
2169
  CompressedTextureWorkerLoader: () => CompressedTextureWorkerLoader,
2147
2170
  CompressedTextureWriter: () => CompressedTextureWriter,
@@ -2166,6 +2189,8 @@
2166
2189
  init_compressed_texture_loader();
2167
2190
  init_crunch_loader();
2168
2191
  init_npy_loader();
2192
+ init_basis_module_loader();
2193
+ init_crunch_module_loader();
2169
2194
  init_compressed_texture_writer();
2170
2195
  init_ktx2_basis_writer();
2171
2196
  init_load_image();
package/dist/es5/index.js CHANGED
@@ -3,6 +3,12 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ Object.defineProperty(exports, "BASIS_EXTERNAL_LIBRARIES", {
7
+ enumerable: true,
8
+ get: function get() {
9
+ return _basisModuleLoader.BASIS_EXTERNAL_LIBRARIES;
10
+ }
11
+ });
6
12
  Object.defineProperty(exports, "BasisLoader", {
7
13
  enumerable: true,
8
14
  get: function get() {
@@ -15,6 +21,12 @@ Object.defineProperty(exports, "BasisWorkerLoader", {
15
21
  return _basisLoader.BasisWorkerLoader;
16
22
  }
17
23
  });
24
+ Object.defineProperty(exports, "CRUNCH_EXTERNAL_LIBRARIES", {
25
+ enumerable: true,
26
+ get: function get() {
27
+ return _crunchModuleLoader.CRUNCH_EXTERNAL_LIBRARIES;
28
+ }
29
+ });
18
30
  Object.defineProperty(exports, "CompressedTextureLoader", {
19
31
  enumerable: true,
20
32
  get: function get() {
@@ -105,6 +117,8 @@ var _basisLoader = require("./basis-loader");
105
117
  var _compressedTextureLoader = require("./compressed-texture-loader");
106
118
  var _crunchLoader = require("./crunch-loader");
107
119
  var _npyLoader = require("./npy-loader");
120
+ var _basisModuleLoader = require("./lib/parsers/basis-module-loader");
121
+ var _crunchModuleLoader = require("./lib/parsers/crunch-module-loader");
108
122
  var _compressedTextureWriter = require("./compressed-texture-writer");
109
123
  var _ktx2BasisWriter = require("./ktx2-basis-writer");
110
124
  var _loadImage = require("./lib/texture-api/load-image");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_version","require","_basisLoader","_compressedTextureLoader","_crunchLoader","_npyLoader","_compressedTextureWriter","_ktx2BasisWriter","_loadImage","_loadImageArray","_loadImageCube","_glExtensions","_parseBasis","_textureFormats","KTX2BasisWriterWorker","name","id","module","version","VERSION","extensions","worker","options","useSRGB","qualityLevel","encodeUASTC","mipmaps","exports"],"sources":["../../src/index.ts"],"sourcesContent":["import {VERSION} from './lib/utils/version';\n\n// Types\nexport type {GPUTextureFormat} from '@loaders.gl/schema';\nexport type {TextureLoaderOptions} from './compressed-texture-loader';\n\n// Loaders\nexport {BasisLoader, BasisWorkerLoader} from './basis-loader';\nexport {CompressedTextureLoader, CompressedTextureWorkerLoader} from './compressed-texture-loader';\nexport {CrunchLoader} from './crunch-loader';\nexport {NPYLoader, NPYWorkerLoader} from './npy-loader';\n\n// Writers\nexport {CompressedTextureWriter} from './compressed-texture-writer';\nexport {KTX2BasisWriter} from './ktx2-basis-writer';\n\nexport const KTX2BasisWriterWorker = {\n name: 'Basis Universal Supercompressed GPU Texture',\n id: 'ktx2-basis-writer',\n module: 'textures',\n version: VERSION,\n extensions: ['ktx2'],\n worker: true,\n options: {\n useSRGB: false,\n qualityLevel: 10,\n encodeUASTC: false,\n mipmaps: false\n }\n};\n\n// Texture Loading API\nexport {loadImageTexture} from './lib/texture-api/load-image';\nexport {loadImageTextureArray} from './lib/texture-api/load-image-array';\nexport {loadImageTextureCube} from './lib/texture-api/load-image-cube';\n\n// Utilities\nexport {GL_EXTENSIONS_CONSTANTS} from './lib/gl-extensions';\nexport {selectSupportedBasisFormat} from './lib/parsers/parse-basis';\nexport {getSupportedGPUTextureFormats} from './lib/utils/texture-formats';\n\n// DEPRECATED\nexport {CrunchLoader as CrunchWorkerLoader} from './crunch-loader';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAOA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,wBAAA,GAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AAGA,IAAAK,wBAAA,GAAAL,OAAA;AACA,IAAAM,gBAAA,GAAAN,OAAA;AAkBA,IAAAO,UAAA,GAAAP,OAAA;AACA,IAAAQ,eAAA,GAAAR,OAAA;AACA,IAAAS,cAAA,GAAAT,OAAA;AAGA,IAAAU,aAAA,GAAAV,OAAA;AACA,IAAAW,WAAA,GAAAX,OAAA;AACA,IAAAY,eAAA,GAAAZ,OAAA;AAvBO,IAAMa,qBAAqB,GAAG;EACnCC,IAAI,EAAE,6CAA6C;EACnDC,EAAE,EAAE,mBAAmB;EACvBC,MAAM,EAAE,UAAU;EAClBC,OAAO,EAAEC,gBAAO;EAChBC,UAAU,EAAE,CAAC,MAAM,CAAC;EACpBC,MAAM,EAAE,IAAI;EACZC,OAAO,EAAE;IACPC,OAAO,EAAE,KAAK;IACdC,YAAY,EAAE,EAAE;IAChBC,WAAW,EAAE,KAAK;IAClBC,OAAO,EAAE;EACX;AACF,CAAC;AAACC,OAAA,CAAAb,qBAAA,GAAAA,qBAAA"}
1
+ {"version":3,"file":"index.js","names":["_version","require","_basisLoader","_compressedTextureLoader","_crunchLoader","_npyLoader","_basisModuleLoader","_crunchModuleLoader","_compressedTextureWriter","_ktx2BasisWriter","_loadImage","_loadImageArray","_loadImageCube","_glExtensions","_parseBasis","_textureFormats","KTX2BasisWriterWorker","name","id","module","version","VERSION","extensions","worker","options","useSRGB","qualityLevel","encodeUASTC","mipmaps","exports"],"sources":["../../src/index.ts"],"sourcesContent":["import {VERSION} from './lib/utils/version';\n\n// Types\nexport type {GPUTextureFormat} from '@loaders.gl/schema';\nexport type {TextureLoaderOptions} from './compressed-texture-loader';\n\n// Loaders\nexport {BasisLoader, BasisWorkerLoader} from './basis-loader';\nexport {CompressedTextureLoader, CompressedTextureWorkerLoader} from './compressed-texture-loader';\nexport {CrunchLoader} from './crunch-loader';\nexport {NPYLoader, NPYWorkerLoader} from './npy-loader';\n\n// Module constants\nexport {BASIS_EXTERNAL_LIBRARIES} from './lib/parsers/basis-module-loader';\nexport {CRUNCH_EXTERNAL_LIBRARIES} from './lib/parsers/crunch-module-loader';\n\n// Writers\nexport {CompressedTextureWriter} from './compressed-texture-writer';\nexport {KTX2BasisWriter} from './ktx2-basis-writer';\n\nexport const KTX2BasisWriterWorker = {\n name: 'Basis Universal Supercompressed GPU Texture',\n id: 'ktx2-basis-writer',\n module: 'textures',\n version: VERSION,\n extensions: ['ktx2'],\n worker: true,\n options: {\n useSRGB: false,\n qualityLevel: 10,\n encodeUASTC: false,\n mipmaps: false\n }\n};\n\n// Texture Loading API\nexport {loadImageTexture} from './lib/texture-api/load-image';\nexport {loadImageTextureArray} from './lib/texture-api/load-image-array';\nexport {loadImageTextureCube} from './lib/texture-api/load-image-cube';\n\n// Utilities\nexport {GL_EXTENSIONS_CONSTANTS} from './lib/gl-extensions';\nexport {selectSupportedBasisFormat} from './lib/parsers/parse-basis';\nexport {getSupportedGPUTextureFormats} from './lib/utils/texture-formats';\n\n// DEPRECATED\nexport {CrunchLoader as CrunchWorkerLoader} from './crunch-loader';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAOA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,wBAAA,GAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AAGA,IAAAK,kBAAA,GAAAL,OAAA;AACA,IAAAM,mBAAA,GAAAN,OAAA;AAGA,IAAAO,wBAAA,GAAAP,OAAA;AACA,IAAAQ,gBAAA,GAAAR,OAAA;AAkBA,IAAAS,UAAA,GAAAT,OAAA;AACA,IAAAU,eAAA,GAAAV,OAAA;AACA,IAAAW,cAAA,GAAAX,OAAA;AAGA,IAAAY,aAAA,GAAAZ,OAAA;AACA,IAAAa,WAAA,GAAAb,OAAA;AACA,IAAAc,eAAA,GAAAd,OAAA;AAvBO,IAAMe,qBAAqB,GAAG;EACnCC,IAAI,EAAE,6CAA6C;EACnDC,EAAE,EAAE,mBAAmB;EACvBC,MAAM,EAAE,UAAU;EAClBC,OAAO,EAAEC,gBAAO;EAChBC,UAAU,EAAE,CAAC,MAAM,CAAC;EACpBC,MAAM,EAAE,IAAI;EACZC,OAAO,EAAE;IACPC,OAAO,EAAE,KAAK;IACdC,YAAY,EAAE,EAAE;IAChBC,WAAW,EAAE,KAAK;IAClBC,OAAO,EAAE;EACX;AACF,CAAC;AAACC,OAAA,CAAAb,qBAAA,GAAAA,qBAAA"}
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
7
  exports._TypecheckKTX2TextureWriter = exports.KTX2BasisWriter = void 0;
8
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
7
9
  var _version = require("./lib/utils/version");
8
10
  var _encodeKtx2BasisTexture = require("./lib/encoders/encode-ktx2-basis-texture");
9
11
  var KTX2BasisWriter = {
@@ -12,12 +14,12 @@ var KTX2BasisWriter = {
12
14
  module: 'textures',
13
15
  version: _version.VERSION,
14
16
  extensions: ['ktx2'],
15
- options: {
17
+ options: (0, _defineProperty2.default)({}, 'ktx2-basis-writer', {
16
18
  useSRGB: false,
17
19
  qualityLevel: 10,
18
20
  encodeUASTC: false,
19
21
  mipmaps: false
20
- },
22
+ }),
21
23
  encode: _encodeKtx2BasisTexture.encodeKTX2BasisTexture
22
24
  };
23
25
  exports.KTX2BasisWriter = KTX2BasisWriter;