@loaders.gl/textures 4.0.0-beta.2 → 4.0.0-beta.3

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 (235) hide show
  1. package/dist/{esm/basis-loader.js → basis-loader.js} +2 -2
  2. package/dist/basis-loader.js.map +1 -0
  3. package/dist/basis-worker-node.js +5203 -3479
  4. package/dist/basis-worker.js +105 -31
  5. package/dist/{esm/compressed-texture-loader.js → compressed-texture-loader.js} +3 -3
  6. package/dist/compressed-texture-loader.js.map +1 -0
  7. package/dist/compressed-texture-worker.js +158 -34
  8. package/dist/{esm/compressed-texture-writer.js → compressed-texture-writer.js} +2 -2
  9. package/dist/compressed-texture-writer.js.map +1 -0
  10. package/dist/{esm/crunch-loader.js → crunch-loader.js} +1 -1
  11. package/dist/crunch-loader.js.map +1 -0
  12. package/dist/crunch-worker.js +60 -26
  13. package/dist/{dist.min.js → dist.dev.js} +953 -1100
  14. package/dist/index.cjs +1360 -0
  15. package/dist/index.js +31 -0
  16. package/dist/index.js.map +1 -0
  17. package/dist/ktx2-basis-writer-worker-node.js +4887 -3214
  18. package/dist/ktx2-basis-writer-worker.js +52 -26
  19. package/dist/{esm/ktx2-basis-writer.js → ktx2-basis-writer.js} +2 -2
  20. package/dist/ktx2-basis-writer.js.map +1 -0
  21. package/dist/lib/encoders/encode-ktx.js.map +1 -0
  22. package/dist/{esm/lib → lib}/encoders/encode-ktx2-basis-texture.js +1 -1
  23. package/dist/lib/encoders/encode-ktx2-basis-texture.js.map +1 -0
  24. package/dist/lib/encoders/encode-texture.js.map +1 -0
  25. package/dist/lib/gl-extensions.js.map +1 -0
  26. package/dist/lib/parsers/basis-module-loader.js.map +1 -0
  27. package/dist/lib/parsers/crunch-module-loader.js.map +1 -0
  28. package/dist/{esm/lib → lib}/parsers/parse-basis.js +4 -4
  29. package/dist/lib/parsers/parse-basis.js.map +1 -0
  30. package/dist/{esm/lib → lib}/parsers/parse-compressed-texture.js +3 -3
  31. package/dist/lib/parsers/parse-compressed-texture.js.map +1 -0
  32. package/dist/{esm/lib → lib}/parsers/parse-crunch.js +4 -4
  33. package/dist/lib/parsers/parse-crunch.js.map +1 -0
  34. package/dist/{esm/lib → lib}/parsers/parse-dds.js +3 -3
  35. package/dist/lib/parsers/parse-dds.js.map +1 -0
  36. package/dist/{esm/lib → lib}/parsers/parse-ktx.js +2 -2
  37. package/dist/lib/parsers/parse-ktx.js.map +1 -0
  38. package/dist/lib/parsers/parse-npy.d.ts.map +1 -1
  39. package/dist/{esm/lib → lib}/parsers/parse-npy.js +1 -1
  40. package/dist/lib/parsers/parse-npy.js.map +1 -0
  41. package/dist/{esm/lib → lib}/parsers/parse-pvr.js +2 -2
  42. package/dist/lib/parsers/parse-pvr.js.map +1 -0
  43. package/dist/lib/texture-api/async-deep-map.js.map +1 -0
  44. package/dist/{esm/lib → lib}/texture-api/deep-load.js +1 -1
  45. package/dist/lib/texture-api/deep-load.js.map +1 -0
  46. package/dist/{esm/lib → lib}/texture-api/generate-url.js +1 -1
  47. package/dist/lib/texture-api/generate-url.js.map +1 -0
  48. package/dist/{esm/lib → lib}/texture-api/load-image-array.js +2 -2
  49. package/dist/lib/texture-api/load-image-array.js.map +1 -0
  50. package/dist/{esm/lib → lib}/texture-api/load-image-cube.js +2 -2
  51. package/dist/lib/texture-api/load-image-cube.js.map +1 -0
  52. package/dist/{esm/lib → lib}/texture-api/load-image.js +2 -2
  53. package/dist/lib/texture-api/load-image.js.map +1 -0
  54. package/dist/lib/texture-api/texture-api-types.js.map +1 -0
  55. package/dist/lib/utils/extract-mipmap-images.js.map +1 -0
  56. package/dist/{esm/lib → lib}/utils/ktx-format-helper.js +1 -1
  57. package/dist/lib/utils/ktx-format-helper.js.map +1 -0
  58. package/dist/{esm/lib → lib}/utils/texture-formats.js +1 -1
  59. package/dist/lib/utils/texture-formats.js.map +1 -0
  60. package/dist/lib/utils/version.js +2 -0
  61. package/dist/lib/utils/version.js.map +1 -0
  62. package/dist/libs/basis_encoder.js +5435 -19
  63. package/dist/libs/basis_encoder.js.map +1 -0
  64. package/dist/libs/basis_transcoder.js +2523 -20
  65. package/dist/libs/basis_transcoder.js.map +1 -0
  66. package/dist/libs/crunch.js +10043 -129
  67. package/dist/libs/crunch.js.map +1 -0
  68. package/dist/{esm/npy-loader.js → npy-loader.js} +2 -2
  69. package/dist/npy-loader.js.map +1 -0
  70. package/dist/npy-worker.js +17 -4
  71. package/dist/types.js.map +1 -0
  72. package/dist/{esm/workers → workers}/basis-worker-node.js +1 -1
  73. package/dist/workers/basis-worker-node.js.map +1 -0
  74. package/dist/{esm/workers → workers}/basis-worker.js +1 -1
  75. package/dist/workers/basis-worker.js.map +1 -0
  76. package/dist/workers/compressed-texture-worker.js +4 -0
  77. package/dist/workers/compressed-texture-worker.js.map +1 -0
  78. package/dist/{esm/workers → workers}/crunch-worker.js +2 -2
  79. package/dist/workers/crunch-worker.js.map +1 -0
  80. package/dist/{esm/workers → workers}/ktx2-basis-writer-worker-node.js +1 -1
  81. package/dist/workers/ktx2-basis-writer-worker-node.js.map +1 -0
  82. package/dist/{esm/workers → workers}/ktx2-basis-writer-worker.js +1 -1
  83. package/dist/workers/ktx2-basis-writer-worker.js.map +1 -0
  84. package/dist/{esm/workers → workers}/npy-worker.js +1 -1
  85. package/dist/workers/npy-worker.js.map +1 -0
  86. package/package.json +19 -11
  87. package/src/lib/parsers/parse-npy.ts +0 -2
  88. package/dist/bundle.d.ts +0 -2
  89. package/dist/bundle.d.ts.map +0 -1
  90. package/dist/es5/basis-loader.js +0 -37
  91. package/dist/es5/basis-loader.js.map +0 -1
  92. package/dist/es5/bundle.js +0 -6
  93. package/dist/es5/bundle.js.map +0 -1
  94. package/dist/es5/compressed-texture-loader.js +0 -74
  95. package/dist/es5/compressed-texture-loader.js.map +0 -1
  96. package/dist/es5/compressed-texture-writer.js +0 -28
  97. package/dist/es5/compressed-texture-writer.js.map +0 -1
  98. package/dist/es5/crunch-loader.js +0 -24
  99. package/dist/es5/crunch-loader.js.map +0 -1
  100. package/dist/es5/index.js +0 -145
  101. package/dist/es5/index.js.map +0 -1
  102. package/dist/es5/ktx2-basis-writer.js +0 -26
  103. package/dist/es5/ktx2-basis-writer.js.map +0 -1
  104. package/dist/es5/lib/encoders/encode-ktx.js +0 -12
  105. package/dist/es5/lib/encoders/encode-ktx.js.map +0 -1
  106. package/dist/es5/lib/encoders/encode-ktx2-basis-texture.js +0 -75
  107. package/dist/es5/lib/encoders/encode-ktx2-basis-texture.js.map +0 -1
  108. package/dist/es5/lib/encoders/encode-texture.js +0 -38
  109. package/dist/es5/lib/encoders/encode-texture.js.map +0 -1
  110. package/dist/es5/lib/gl-extensions.js +0 -68
  111. package/dist/es5/lib/gl-extensions.js.map +0 -1
  112. package/dist/es5/lib/parsers/basis-module-loader.js +0 -199
  113. package/dist/es5/lib/parsers/basis-module-loader.js.map +0 -1
  114. package/dist/es5/lib/parsers/crunch-module-loader.js +0 -72
  115. package/dist/es5/lib/parsers/crunch-module-loader.js.map +0 -1
  116. package/dist/es5/lib/parsers/parse-basis.js +0 -270
  117. package/dist/es5/lib/parsers/parse-basis.js.map +0 -1
  118. package/dist/es5/lib/parsers/parse-compressed-texture.js +0 -22
  119. package/dist/es5/lib/parsers/parse-compressed-texture.js.map +0 -1
  120. package/dist/es5/lib/parsers/parse-crunch.js +0 -100
  121. package/dist/es5/lib/parsers/parse-crunch.js.map +0 -1
  122. package/dist/es5/lib/parsers/parse-dds.js +0 -84
  123. package/dist/es5/lib/parsers/parse-dds.js.map +0 -1
  124. package/dist/es5/lib/parsers/parse-ktx.js +0 -34
  125. package/dist/es5/lib/parsers/parse-ktx.js.map +0 -1
  126. package/dist/es5/lib/parsers/parse-npy.js +0 -70
  127. package/dist/es5/lib/parsers/parse-npy.js.map +0 -1
  128. package/dist/es5/lib/parsers/parse-pvr.js +0 -161
  129. package/dist/es5/lib/parsers/parse-pvr.js.map +0 -1
  130. package/dist/es5/lib/texture-api/async-deep-map.js +0 -156
  131. package/dist/es5/lib/texture-api/async-deep-map.js.map +0 -1
  132. package/dist/es5/lib/texture-api/deep-load.js +0 -63
  133. package/dist/es5/lib/texture-api/deep-load.js.map +0 -1
  134. package/dist/es5/lib/texture-api/generate-url.js +0 -20
  135. package/dist/es5/lib/texture-api/generate-url.js.map +0 -1
  136. package/dist/es5/lib/texture-api/load-image-array.js +0 -75
  137. package/dist/es5/lib/texture-api/load-image-array.js.map +0 -1
  138. package/dist/es5/lib/texture-api/load-image-cube.js +0 -136
  139. package/dist/es5/lib/texture-api/load-image-cube.js.map +0 -1
  140. package/dist/es5/lib/texture-api/load-image.js +0 -129
  141. package/dist/es5/lib/texture-api/load-image.js.map +0 -1
  142. package/dist/es5/lib/texture-api/texture-api-types.js +0 -2
  143. package/dist/es5/lib/texture-api/texture-api-types.js.map +0 -1
  144. package/dist/es5/lib/utils/extract-mipmap-images.js +0 -41
  145. package/dist/es5/lib/utils/extract-mipmap-images.js.map +0 -1
  146. package/dist/es5/lib/utils/ktx-format-helper.js +0 -79
  147. package/dist/es5/lib/utils/ktx-format-helper.js.map +0 -1
  148. package/dist/es5/lib/utils/texture-formats.js +0 -54
  149. package/dist/es5/lib/utils/texture-formats.js.map +0 -1
  150. package/dist/es5/lib/utils/version.js +0 -9
  151. package/dist/es5/lib/utils/version.js.map +0 -1
  152. package/dist/es5/npy-loader.js +0 -51
  153. package/dist/es5/npy-loader.js.map +0 -1
  154. package/dist/es5/types.js +0 -2
  155. package/dist/es5/types.js.map +0 -1
  156. package/dist/es5/workers/basis-worker-node.js +0 -7
  157. package/dist/es5/workers/basis-worker-node.js.map +0 -1
  158. package/dist/es5/workers/basis-worker.js +0 -6
  159. package/dist/es5/workers/basis-worker.js.map +0 -1
  160. package/dist/es5/workers/compressed-texture-worker.js +0 -6
  161. package/dist/es5/workers/compressed-texture-worker.js.map +0 -1
  162. package/dist/es5/workers/crunch-worker.js +0 -19
  163. package/dist/es5/workers/crunch-worker.js.map +0 -1
  164. package/dist/es5/workers/ktx2-basis-writer-worker-node.js +0 -54
  165. package/dist/es5/workers/ktx2-basis-writer-worker-node.js.map +0 -1
  166. package/dist/es5/workers/ktx2-basis-writer-worker.js +0 -53
  167. package/dist/es5/workers/ktx2-basis-writer-worker.js.map +0 -1
  168. package/dist/es5/workers/npy-worker.js +0 -6
  169. package/dist/es5/workers/npy-worker.js.map +0 -1
  170. package/dist/esm/basis-loader.js.map +0 -1
  171. package/dist/esm/bundle.js +0 -4
  172. package/dist/esm/bundle.js.map +0 -1
  173. package/dist/esm/compressed-texture-loader.js.map +0 -1
  174. package/dist/esm/compressed-texture-writer.js.map +0 -1
  175. package/dist/esm/crunch-loader.js.map +0 -1
  176. package/dist/esm/index.js +0 -31
  177. package/dist/esm/index.js.map +0 -1
  178. package/dist/esm/ktx2-basis-writer.js.map +0 -1
  179. package/dist/esm/lib/encoders/encode-ktx.js.map +0 -1
  180. package/dist/esm/lib/encoders/encode-ktx2-basis-texture.js.map +0 -1
  181. package/dist/esm/lib/encoders/encode-texture.js.map +0 -1
  182. package/dist/esm/lib/gl-extensions.js.map +0 -1
  183. package/dist/esm/lib/parsers/basis-module-loader.js.map +0 -1
  184. package/dist/esm/lib/parsers/crunch-module-loader.js.map +0 -1
  185. package/dist/esm/lib/parsers/parse-basis.js.map +0 -1
  186. package/dist/esm/lib/parsers/parse-compressed-texture.js.map +0 -1
  187. package/dist/esm/lib/parsers/parse-crunch.js.map +0 -1
  188. package/dist/esm/lib/parsers/parse-dds.js.map +0 -1
  189. package/dist/esm/lib/parsers/parse-ktx.js.map +0 -1
  190. package/dist/esm/lib/parsers/parse-npy.js.map +0 -1
  191. package/dist/esm/lib/parsers/parse-pvr.js.map +0 -1
  192. package/dist/esm/lib/texture-api/async-deep-map.js.map +0 -1
  193. package/dist/esm/lib/texture-api/deep-load.js.map +0 -1
  194. package/dist/esm/lib/texture-api/generate-url.js.map +0 -1
  195. package/dist/esm/lib/texture-api/load-image-array.js.map +0 -1
  196. package/dist/esm/lib/texture-api/load-image-cube.js.map +0 -1
  197. package/dist/esm/lib/texture-api/load-image.js.map +0 -1
  198. package/dist/esm/lib/texture-api/texture-api-types.js.map +0 -1
  199. package/dist/esm/lib/utils/extract-mipmap-images.js.map +0 -1
  200. package/dist/esm/lib/utils/ktx-format-helper.js.map +0 -1
  201. package/dist/esm/lib/utils/texture-formats.js.map +0 -1
  202. package/dist/esm/lib/utils/version.js +0 -2
  203. package/dist/esm/lib/utils/version.js.map +0 -1
  204. package/dist/esm/libs/README.md +0 -9
  205. package/dist/esm/libs/basis_encoder.js +0 -21
  206. package/dist/esm/libs/basis_encoder.wasm +0 -0
  207. package/dist/esm/libs/basis_transcoder.js +0 -22
  208. package/dist/esm/libs/basis_transcoder.wasm +0 -0
  209. package/dist/esm/libs/crunch.js +0 -136
  210. package/dist/esm/npy-loader.js.map +0 -1
  211. package/dist/esm/types.js.map +0 -1
  212. package/dist/esm/workers/basis-worker-node.js.map +0 -1
  213. package/dist/esm/workers/basis-worker.js.map +0 -1
  214. package/dist/esm/workers/compressed-texture-worker.js +0 -4
  215. package/dist/esm/workers/compressed-texture-worker.js.map +0 -1
  216. package/dist/esm/workers/crunch-worker.js.map +0 -1
  217. package/dist/esm/workers/ktx2-basis-writer-worker-node.js.map +0 -1
  218. package/dist/esm/workers/ktx2-basis-writer-worker.js.map +0 -1
  219. package/dist/esm/workers/npy-worker.js.map +0 -1
  220. package/src/bundle.ts +0 -4
  221. /package/dist/{esm/lib → lib}/encoders/encode-ktx.js +0 -0
  222. /package/dist/{esm/lib → lib}/encoders/encode-texture.js +0 -0
  223. /package/dist/{esm/lib → lib}/gl-extensions.js +0 -0
  224. /package/dist/{esm/lib → lib}/parsers/basis-module-loader.js +0 -0
  225. /package/dist/{esm/lib → lib}/parsers/crunch-module-loader.js +0 -0
  226. /package/dist/{esm/lib → lib}/texture-api/async-deep-map.js +0 -0
  227. /package/dist/{esm/lib → lib}/texture-api/texture-api-types.js +0 -0
  228. /package/dist/{esm/lib → lib}/utils/extract-mipmap-images.js +0 -0
  229. /package/dist/{es5 → libs}/libs/README.md +0 -0
  230. /package/dist/{es5 → libs}/libs/basis_encoder.js +0 -0
  231. /package/dist/{es5 → libs}/libs/basis_encoder.wasm +0 -0
  232. /package/dist/{es5 → libs}/libs/basis_transcoder.js +0 -0
  233. /package/dist/{es5 → libs}/libs/basis_transcoder.wasm +0 -0
  234. /package/dist/{es5 → libs}/libs/crunch.js +0 -0
  235. /package/dist/{esm/types.js → types.js} +0 -0
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  (() => {
2
3
  var __create = Object.create;
3
4
  var __defProp = Object.defineProperty;
@@ -5,25 +6,30 @@
5
6
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
7
  var __getProtoOf = Object.getPrototypeOf;
7
8
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
9
9
  var __commonJS = (cb, mod) => function __require() {
10
- return mod || (0, cb[Object.keys(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
10
+ return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
11
11
  };
12
- var __reExport = (target, module, desc) => {
13
- if (module && typeof module === "object" || typeof module === "function") {
14
- for (let key of __getOwnPropNames(module))
15
- if (!__hasOwnProp.call(target, key) && key !== "default")
16
- __defProp(target, key, { get: () => module[key], enumerable: !(desc = __getOwnPropDesc(module, key)) || desc.enumerable });
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
17
  }
18
- return target;
19
- };
20
- var __toModule = (module) => {
21
- return __reExport(__markAsModule(__defProp(module != null ? __create(__getProtoOf(module)) : {}, "default", module && module.__esModule && "default" in module ? { get: () => module.default, enumerable: true } : { value: module, enumerable: true })), module);
18
+ return to;
22
19
  };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
23
28
 
24
29
  // (disabled):../worker-utils/src/lib/node/require-utils.node
25
30
  var require_require_utils = __commonJS({
26
31
  "(disabled):../worker-utils/src/lib/node/require-utils.node"() {
32
+ "use strict";
27
33
  }
28
34
  });
29
35
 
@@ -32,10 +38,12 @@
32
38
  if (!globalThis._loadersgl_?.version) {
33
39
  globalThis._loadersgl_ = globalThis._loadersgl_ || {};
34
40
  if (false) {
35
- console.error("loaders.gl: The __VERSION__ variable is not injected using babel plugin. Latest unstable workers would be fetched from the CDN.");
41
+ console.error(
42
+ "loaders.gl: The __VERSION__ variable is not injected using babel plugin. Latest unstable workers would be fetched from the CDN."
43
+ );
36
44
  globalThis._loadersgl_.version = NPM_TAG;
37
45
  } else {
38
- globalThis._loadersgl_.version = "4.0.0-beta.2";
46
+ globalThis._loadersgl_.version = "4.0.0-beta.3";
39
47
  }
40
48
  }
41
49
  return globalThis._loadersgl_.version;
@@ -60,7 +68,10 @@
60
68
  var window_ = globals.window || globals.self || globals.global || {};
61
69
  var global_ = globals.global || globals.self || globals.window || {};
62
70
  var document_ = globals.document || {};
63
- var isBrowser = typeof process !== "object" || String(process) !== "[object process]" || process.browser;
71
+ var isBrowser = (
72
+ // @ts-ignore process.browser
73
+ typeof process !== "object" || String(process) !== "[object process]" || process.browser
74
+ );
64
75
  var isWorker = typeof importScripts === "function";
65
76
  var isMobile = typeof window !== "undefined" && typeof window.orientation !== "undefined";
66
77
  var matches = typeof process !== "undefined" && process.version && /v([0-9]*)/.exec(process.version);
@@ -68,7 +79,7 @@
68
79
 
69
80
  // ../worker-utils/src/lib/worker-utils/get-transfer-list.ts
70
81
  function getTransferList(object, recursive = true, transfers) {
71
- const transfersSet = transfers || new Set();
82
+ const transfersSet = transfers || /* @__PURE__ */ new Set();
72
83
  if (!object) {
73
84
  } else if (isTransferable(object)) {
74
85
  transfersSet.add(object);
@@ -111,11 +122,15 @@
111
122
  }
112
123
  return parentPort;
113
124
  }
114
- var onMessageWrapperMap = new Map();
125
+ var onMessageWrapperMap = /* @__PURE__ */ new Map();
115
126
  var WorkerBody = class {
127
+ /** Check that we are actually in a worker thread */
116
128
  static inWorkerThread() {
117
129
  return typeof self !== "undefined" || Boolean(getParentPort());
118
130
  }
131
+ /*
132
+ * (type: WorkerMessageType, payload: WorkerMessagePayload) => any
133
+ */
119
134
  static set onmessage(onMessage) {
120
135
  function handleMessage(message) {
121
136
  const parentPort3 = getParentPort();
@@ -159,6 +174,11 @@
159
174
  globalThis.removeEventListener("message", onMessageWrapper);
160
175
  }
161
176
  }
177
+ /**
178
+ * Send a message from a worker to creating thread (main thread)
179
+ * @param type
180
+ * @param payload
181
+ */
162
182
  static postMessage(type, payload) {
163
183
  const data = { source: "loaders.gl", type, payload };
164
184
  const transferList = getTransferList(payload);
@@ -176,13 +196,14 @@
176
196
  }
177
197
 
178
198
  // ../worker-utils/src/lib/library-utils/library-utils.ts
179
- var node = __toModule(require_require_utils());
199
+ var node = __toESM(require_require_utils(), 1);
180
200
  var loadLibraryPromises = {};
181
201
  async function loadLibrary(libraryUrl, moduleName = null, options = {}, libraryName = null) {
182
202
  if (moduleName) {
183
203
  libraryUrl = getLibraryUrl(libraryUrl, moduleName, options, libraryName);
184
204
  }
185
- loadLibraryPromises[libraryUrl] = loadLibraryPromises[libraryUrl] || loadLibraryFromFile(libraryUrl);
205
+ loadLibraryPromises[libraryUrl] = // eslint-disable-next-line @typescript-eslint/no-misused-promises
206
+ loadLibraryPromises[libraryUrl] || loadLibraryFromFile(libraryUrl);
186
207
  return await loadLibraryPromises[libraryUrl];
187
208
  }
188
209
  function getLibraryUrl(library, moduleName, options = {}, libraryName = null) {
@@ -212,8 +233,9 @@
212
233
  }
213
234
  if (!isBrowser) {
214
235
  try {
215
- return node && node.requireFromFile && await node.requireFromFile(libraryUrl);
216
- } catch {
236
+ return node && void 0 && await (void 0)(libraryUrl);
237
+ } catch (error) {
238
+ console.error(error);
217
239
  return null;
218
240
  }
219
241
  }
@@ -225,7 +247,7 @@
225
247
  }
226
248
  function loadLibraryFromString(scriptSource, id) {
227
249
  if (!isBrowser) {
228
- return node.requireFromString && node.requireFromString(scriptSource, id);
250
+ return void 0 && (void 0)(scriptSource, id);
229
251
  }
230
252
  if (isWorker) {
231
253
  eval.call(global_, scriptSource);
@@ -242,18 +264,18 @@
242
264
  return null;
243
265
  }
244
266
  async function loadAsArrayBuffer(url) {
245
- if (!node.readFileAsArrayBuffer || url.startsWith("http")) {
267
+ if (!void 0 || url.startsWith("http")) {
246
268
  const response = await fetch(url);
247
269
  return await response.arrayBuffer();
248
270
  }
249
- return await node.readFileAsArrayBuffer(url);
271
+ return await (void 0)(url);
250
272
  }
251
273
  async function loadAsText(url) {
252
- if (!node.readFileAsText || url.startsWith("http")) {
274
+ if (!void 0 || url.startsWith("http")) {
253
275
  const response = await fetch(url);
254
276
  return await response.text();
255
277
  }
256
- return await node.readFileAsText(url);
278
+ return await (void 0)(url);
257
279
  }
258
280
 
259
281
  // ../loader-utils/src/lib/worker-loader-utils/create-loader-worker.ts
@@ -271,6 +293,7 @@
271
293
  loader,
272
294
  arrayBuffer: input,
273
295
  options,
296
+ // @ts-expect-error fetch missing
274
297
  context: {
275
298
  ...context,
276
299
  _parse: parseOnMainThread
@@ -337,13 +360,17 @@
337
360
  }
338
361
 
339
362
  // src/lib/utils/version.ts
340
- var VERSION2 = true ? "4.0.0-beta.2" : "beta";
363
+ var VERSION2 = true ? "4.0.0-beta.3" : "beta";
341
364
 
342
365
  // src/lib/parsers/basis-module-loader.ts
343
366
  var BASIS_EXTERNAL_LIBRARIES = {
367
+ /** Basis transcoder, javascript wrapper part */
344
368
  TRANSCODER: "basis_transcoder.js",
369
+ /** Basis transcoder, compiled web assembly part */
345
370
  TRANSCODER_WASM: "basis_transcoder.wasm",
371
+ /** Basis encoder, javascript wrapper part */
346
372
  ENCODER: "basis_encoder.js",
373
+ /** Basis encoder, compiled web assembly part */
347
374
  ENCODER_WASM: "basis_encoder.wasm"
348
375
  };
349
376
  var loadBasisTranscoderPromise;
@@ -413,10 +440,12 @@
413
440
 
414
441
  // src/lib/gl-extensions.ts
415
442
  var GL_EXTENSIONS_CONSTANTS = {
443
+ // WEBGL_compressed_texture_s3tc
416
444
  COMPRESSED_RGB_S3TC_DXT1_EXT: 33776,
417
445
  COMPRESSED_RGBA_S3TC_DXT1_EXT: 33777,
418
446
  COMPRESSED_RGBA_S3TC_DXT3_EXT: 33778,
419
447
  COMPRESSED_RGBA_S3TC_DXT5_EXT: 33779,
448
+ // WEBGL_compressed_texture_es3
420
449
  COMPRESSED_R11_EAC: 37488,
421
450
  COMPRESSED_SIGNED_R11_EAC: 37489,
422
451
  COMPRESSED_RG11_EAC: 37490,
@@ -427,14 +456,18 @@
427
456
  COMPRESSED_SRGB8_ALPHA8_ETC2_EAC: 37495,
428
457
  COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2: 37496,
429
458
  COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2: 37497,
459
+ // WEBGL_compressed_texture_pvrtc
430
460
  COMPRESSED_RGB_PVRTC_4BPPV1_IMG: 35840,
431
461
  COMPRESSED_RGBA_PVRTC_4BPPV1_IMG: 35842,
432
462
  COMPRESSED_RGB_PVRTC_2BPPV1_IMG: 35841,
433
463
  COMPRESSED_RGBA_PVRTC_2BPPV1_IMG: 35843,
464
+ // WEBGL_compressed_texture_etc1
434
465
  COMPRESSED_RGB_ETC1_WEBGL: 36196,
466
+ // WEBGL_compressed_texture_atc
435
467
  COMPRESSED_RGB_ATC_WEBGL: 35986,
436
468
  COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL: 35987,
437
469
  COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL: 34798,
470
+ // WEBGL_compressed_texture_astc
438
471
  COMPRESSED_RGBA_ASTC_4X4_KHR: 37808,
439
472
  COMPRESSED_RGBA_ASTC_5X4_KHR: 37809,
440
473
  COMPRESSED_RGBA_ASTC_5X5_KHR: 37810,
@@ -463,10 +496,12 @@
463
496
  COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR: 37851,
464
497
  COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR: 37852,
465
498
  COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR: 37853,
499
+ // EXT_texture_compression_rgtc
466
500
  COMPRESSED_RED_RGTC1_EXT: 36283,
467
501
  COMPRESSED_SIGNED_RED_RGTC1_EXT: 36284,
468
502
  COMPRESSED_RED_GREEN_RGTC2_EXT: 36285,
469
503
  COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT: 36286,
504
+ // WEBGL_compressed_texture_s3tc_srgb
470
505
  COMPRESSED_SRGB_S3TC_DXT1_EXT: 35916,
471
506
  COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT: 35917,
472
507
  COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT: 35918,
@@ -476,6 +511,7 @@
476
511
  // src/lib/utils/texture-formats.ts
477
512
  var BROWSER_PREFIXES = ["", "WEBKIT_", "MOZ_"];
478
513
  var WEBGL_EXTENSIONS = {
514
+ /* eslint-disable camelcase */
479
515
  WEBGL_compressed_texture_s3tc: "dxt",
480
516
  WEBGL_compressed_texture_s3tc_srgb: "dxt-srgb",
481
517
  WEBGL_compressed_texture_etc1: "etc1",
@@ -484,12 +520,13 @@
484
520
  WEBGL_compressed_texture_atc: "atc",
485
521
  WEBGL_compressed_texture_astc: "astc",
486
522
  EXT_texture_compression_rgtc: "rgtc"
523
+ /* eslint-enable camelcase */
487
524
  };
488
525
  var formats = null;
489
526
  function getSupportedGPUTextureFormats(gl) {
490
527
  if (!formats) {
491
528
  gl = gl || getWebGLContext() || void 0;
492
- formats = new Set();
529
+ formats = /* @__PURE__ */ new Set();
493
530
  for (const prefix of BROWSER_PREFIXES) {
494
531
  for (const extension in WEBGL_EXTENSIONS) {
495
532
  if (gl && gl.getExtension(`${prefix}${extension}`)) {
@@ -540,6 +577,7 @@
540
577
 
541
578
  // src/lib/parsers/parse-ktx.ts
542
579
  var KTX2_ID = [
580
+ // '´', 'K', 'T', 'X', '2', '0', 'ª', '\r', '\n', '\x1A', '\n'
543
581
  171,
544
582
  75,
545
583
  84,
@@ -555,7 +593,18 @@
555
593
  ];
556
594
  function isKTX(data) {
557
595
  const id = new Uint8Array(data);
558
- const notKTX = id.byteLength < KTX2_ID.length || id[0] !== KTX2_ID[0] || id[1] !== KTX2_ID[1] || id[2] !== KTX2_ID[2] || id[3] !== KTX2_ID[3] || id[4] !== KTX2_ID[4] || id[5] !== KTX2_ID[5] || id[6] !== KTX2_ID[6] || id[7] !== KTX2_ID[7] || id[8] !== KTX2_ID[8] || id[9] !== KTX2_ID[9] || id[10] !== KTX2_ID[10] || id[11] !== KTX2_ID[11];
596
+ const notKTX = id.byteLength < KTX2_ID.length || id[0] !== KTX2_ID[0] || // '´'
597
+ id[1] !== KTX2_ID[1] || // 'K'
598
+ id[2] !== KTX2_ID[2] || // 'T'
599
+ id[3] !== KTX2_ID[3] || // 'X'
600
+ id[4] !== KTX2_ID[4] || // ' '
601
+ id[5] !== KTX2_ID[5] || // '2'
602
+ id[6] !== KTX2_ID[6] || // '0'
603
+ id[7] !== KTX2_ID[7] || // 'ª'
604
+ id[8] !== KTX2_ID[8] || // '\r'
605
+ id[9] !== KTX2_ID[9] || // '\n'
606
+ id[10] !== KTX2_ID[10] || // '\x1A'
607
+ id[11] !== KTX2_ID[11];
559
608
  return !notKTX;
560
609
  }
561
610
 
@@ -653,7 +702,9 @@
653
702
  function transcodeImage(basisFile, imageIndex, levelIndex, options) {
654
703
  const width = basisFile.getImageWidth(imageIndex, levelIndex);
655
704
  const height = basisFile.getImageHeight(imageIndex, levelIndex);
656
- const hasAlpha = basisFile.getHasAlpha();
705
+ const hasAlpha = basisFile.getHasAlpha(
706
+ /* imageIndex, levelIndex */
707
+ );
657
708
  const { compressed, format, basisFormat } = getBasisOptions(options, hasAlpha);
658
709
  const decodedSize = basisFile.getImageTranscodedSizeInBytes(imageIndex, levelIndex, basisFormat);
659
710
  const decodedData = new Uint8Array(decodedSize);
@@ -661,11 +712,14 @@
661
712
  throw new Error("failed to start Basis transcoding");
662
713
  }
663
714
  return {
715
+ // standard loaders.gl image category payload
664
716
  width,
665
717
  height,
666
718
  data: decodedData,
667
719
  compressed,
668
720
  format,
721
+ // Additional fields
722
+ // Add levelSize field.
669
723
  hasAlpha
670
724
  };
671
725
  }
@@ -690,16 +744,33 @@
690
744
  function transcodeKTX2Image(ktx2File, levelIndex, options) {
691
745
  const { alphaFlag, height, width } = ktx2File.getImageLevelInfo(levelIndex, 0, 0);
692
746
  const { compressed, format, basisFormat } = getBasisOptions(options, alphaFlag);
693
- const decodedSize = ktx2File.getImageTranscodedSizeInBytes(levelIndex, 0, 0, basisFormat);
747
+ const decodedSize = ktx2File.getImageTranscodedSizeInBytes(
748
+ levelIndex,
749
+ 0,
750
+ 0,
751
+ basisFormat
752
+ );
694
753
  const decodedData = new Uint8Array(decodedSize);
695
- if (!ktx2File.transcodeImage(decodedData, levelIndex, 0, 0, basisFormat, 0, -1, -1)) {
754
+ if (!ktx2File.transcodeImage(
755
+ decodedData,
756
+ levelIndex,
757
+ 0,
758
+ 0,
759
+ basisFormat,
760
+ 0,
761
+ -1,
762
+ -1
763
+ /* channel1 */
764
+ )) {
696
765
  throw new Error("Failed to transcode KTX2 image");
697
766
  }
698
767
  return {
768
+ // standard loaders.gl image category payload
699
769
  width,
700
770
  height,
701
771
  data: decodedData,
702
772
  compressed,
773
+ // Additional fields
703
774
  levelSize: decodedSize,
704
775
  hasAlpha: alphaFlag,
705
776
  format
@@ -752,9 +823,12 @@
752
823
  options: {
753
824
  basis: {
754
825
  format: "auto",
826
+ // gl context doesn't exist on a worker thread
755
827
  libraryPath: "libs/",
756
828
  containerFormat: "auto",
829
+ // 'basis' || 'ktx2' || 'auto'
757
830
  module: "transcoder"
831
+ // 'transcoder' || 'encoder'
758
832
  }
759
833
  }
760
834
  };
@@ -1,6 +1,6 @@
1
- import { VERSION } from './lib/utils/version';
2
- import { parseCompressedTexture } from './lib/parsers/parse-compressed-texture';
3
- import parseBasis from './lib/parsers/parse-basis';
1
+ import { VERSION } from "./lib/utils/version.js";
2
+ import { parseCompressedTexture } from "./lib/parsers/parse-compressed-texture.js";
3
+ import parseBasis from "./lib/parsers/parse-basis.js";
4
4
  export const CompressedTextureWorkerLoader = {
5
5
  name: 'Texture Containers',
6
6
  id: 'compressed-texture',
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compressed-texture-loader.js","names":["VERSION","parseCompressedTexture","parseBasis","CompressedTextureWorkerLoader","name","id","module","version","worker","extensions","mimeTypes","binary","options","libraryPath","useBasis","CompressedTextureLoader","parse","arrayBuffer","_options$compressedT","basis","format","alpha","noAlpha","containerFormat","result"],"sources":["../src/compressed-texture-loader.ts"],"sourcesContent":["import type {Loader, LoaderWithParser} from '@loaders.gl/loader-utils';\nimport {VERSION} from './lib/utils/version';\nimport {parseCompressedTexture} from './lib/parsers/parse-compressed-texture';\nimport parseBasis from './lib/parsers/parse-basis';\n\nexport type TextureLoaderOptions = {\n 'compressed-texture'?: {\n libraryPath?: string;\n useBasis?: boolean;\n };\n};\n\n/**\n * Worker Loader for KTX, DDS, and PVR texture container formats\n */\nexport const CompressedTextureWorkerLoader: Loader<any, never, TextureLoaderOptions> = {\n name: 'Texture Containers',\n id: 'compressed-texture',\n module: 'textures',\n version: VERSION,\n worker: true,\n extensions: [\n 'ktx',\n 'ktx2',\n 'dds', // WEBGL_compressed_texture_s3tc, WEBGL_compressed_texture_atc\n 'pvr' // WEBGL_compressed_texture_pvrtc\n ],\n mimeTypes: [\n 'image/ktx2',\n 'image/ktx',\n 'image/vnd-ms.dds',\n 'image/x-dds',\n 'application/octet-stream'\n ],\n binary: true,\n options: {\n 'compressed-texture': {\n libraryPath: 'libs/',\n useBasis: false\n }\n }\n};\n\n/**\n * Loader for KTX, DDS, and PVR texture container formats\n */\nexport const CompressedTextureLoader: LoaderWithParser<any, never, TextureLoaderOptions> = {\n ...CompressedTextureWorkerLoader,\n parse: async (arrayBuffer: ArrayBuffer, options?: TextureLoaderOptions) => {\n if (options?.['compressed-texture']?.useBasis) {\n // @ts-expect-error TODO not allowed to modify inputs\n options.basis = {\n format: {\n alpha: 'BC3',\n noAlpha: 'BC1'\n },\n // @ts-expect-error TODO not allowed to modify inputs\n ...options.basis,\n containerFormat: 'ktx2',\n module: 'encoder'\n };\n const result = await parseBasis(arrayBuffer, options);\n return result[0];\n }\n return parseCompressedTexture(arrayBuffer);\n }\n};\n"],"mappings":"SACQA,OAAO;AAAA,SACPC,sBAAsB;AAAA,OACvBC,UAAU;AAYjB,OAAO,MAAMC,6BAAuE,GAAG;EACrFC,IAAI,EAAE,oBAAoB;EAC1BC,EAAE,EAAE,oBAAoB;EACxBC,MAAM,EAAE,UAAU;EAClBC,OAAO,EAAEP,OAAO;EAChBQ,MAAM,EAAE,IAAI;EACZC,UAAU,EAAE,CACV,KAAK,EACL,MAAM,EACN,KAAK,EACL,KAAK,CACN;EACDC,SAAS,EAAE,CACT,YAAY,EACZ,WAAW,EACX,kBAAkB,EAClB,aAAa,EACb,0BAA0B,CAC3B;EACDC,MAAM,EAAE,IAAI;EACZC,OAAO,EAAE;IACP,oBAAoB,EAAE;MACpBC,WAAW,EAAE,OAAO;MACpBC,QAAQ,EAAE;IACZ;EACF;AACF,CAAC;AAKD,OAAO,MAAMC,uBAA2E,GAAG;EACzF,GAAGZ,6BAA6B;EAChCa,KAAK,EAAE,MAAAA,CAAOC,WAAwB,EAAEL,OAA8B,KAAK;IAAA,IAAAM,oBAAA;IACzE,IAAIN,OAAO,aAAPA,OAAO,gBAAAM,oBAAA,GAAPN,OAAO,CAAG,oBAAoB,CAAC,cAAAM,oBAAA,eAA/BA,oBAAA,CAAiCJ,QAAQ,EAAE;MAE7CF,OAAO,CAACO,KAAK,GAAG;QACdC,MAAM,EAAE;UACNC,KAAK,EAAE,KAAK;UACZC,OAAO,EAAE;QACX,CAAC;QAED,GAAGV,OAAO,CAACO,KAAK;QAChBI,eAAe,EAAE,MAAM;QACvBjB,MAAM,EAAE;MACV,CAAC;MACD,MAAMkB,MAAM,GAAG,MAAMtB,UAAU,CAACe,WAAW,EAAEL,OAAO,CAAC;MACrD,OAAOY,MAAM,CAAC,CAAC,CAAC;IAClB;IACA,OAAOvB,sBAAsB,CAACgB,WAAW,CAAC;EAC5C;AACF,CAAC"}