@loaders.gl/textures 4.4.0-alpha.16 → 4.4.0-alpha.18

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 (95) hide show
  1. package/README.md +44 -0
  2. package/dist/basis-loader.d.ts +15 -10
  3. package/dist/basis-loader.d.ts.map +1 -1
  4. package/dist/basis-loader.js +0 -1
  5. package/dist/basis-loader.js.map +1 -1
  6. package/dist/basis-worker-node.js +333 -193
  7. package/dist/basis-worker.js +267 -128
  8. package/dist/compressed-texture-loader.d.ts +0 -4
  9. package/dist/compressed-texture-loader.d.ts.map +1 -1
  10. package/dist/compressed-texture-loader.js +0 -1
  11. package/dist/compressed-texture-loader.js.map +1 -1
  12. package/dist/compressed-texture-worker.js +1050 -331
  13. package/dist/crunch-loader.d.ts +1 -5
  14. package/dist/crunch-loader.d.ts.map +1 -1
  15. package/dist/crunch-loader.js +1 -3
  16. package/dist/crunch-loader.js.map +1 -1
  17. package/dist/crunch-worker.js +153 -86
  18. package/dist/dist.dev.js +1281 -388
  19. package/dist/dist.min.js +1 -2
  20. package/dist/index.cjs +671 -330
  21. package/dist/index.cjs.map +4 -4
  22. package/dist/index.d.ts +2 -4
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +1 -3
  25. package/dist/index.js.map +1 -1
  26. package/dist/ktx2-basis-writer-worker-node.js +14 -3
  27. package/dist/ktx2-basis-writer-worker.js +13 -3
  28. package/dist/lib/encoders/encode-ktx2-basis-texture.d.ts.map +1 -1
  29. package/dist/lib/encoders/encode-ktx2-basis-texture.js +2 -1
  30. package/dist/lib/encoders/encode-ktx2-basis-texture.js.map +1 -1
  31. package/dist/lib/gl-extensions.d.ts +164 -58
  32. package/dist/lib/gl-extensions.d.ts.map +1 -1
  33. package/dist/lib/gl-extensions.js +175 -66
  34. package/dist/lib/gl-extensions.js.map +1 -1
  35. package/dist/lib/parsers/crunch-module-loader.d.ts +2 -2
  36. package/dist/lib/parsers/crunch-module-loader.d.ts.map +1 -1
  37. package/dist/lib/parsers/crunch-module-loader.js.map +1 -1
  38. package/dist/lib/parsers/parse-basis.d.ts +16 -2
  39. package/dist/lib/parsers/parse-basis.d.ts.map +1 -1
  40. package/dist/lib/parsers/parse-basis.js +222 -47
  41. package/dist/lib/parsers/parse-basis.js.map +1 -1
  42. package/dist/lib/parsers/parse-crunch.d.ts.map +1 -1
  43. package/dist/lib/parsers/parse-crunch.js +6 -5
  44. package/dist/lib/parsers/parse-crunch.js.map +1 -1
  45. package/dist/lib/parsers/parse-dds.d.ts.map +1 -1
  46. package/dist/lib/parsers/parse-dds.js +7 -7
  47. package/dist/lib/parsers/parse-dds.js.map +1 -1
  48. package/dist/lib/parsers/parse-ktx.d.ts.map +1 -1
  49. package/dist/lib/parsers/parse-ktx.js +7 -0
  50. package/dist/lib/parsers/parse-ktx.js.map +1 -1
  51. package/dist/lib/parsers/parse-pvr.d.ts.map +1 -1
  52. package/dist/lib/parsers/parse-pvr.js +28 -70
  53. package/dist/lib/parsers/parse-pvr.js.map +1 -1
  54. package/dist/lib/utils/detect-supported-texture-formats.d.ts +14 -0
  55. package/dist/lib/utils/detect-supported-texture-formats.d.ts.map +1 -0
  56. package/dist/lib/utils/detect-supported-texture-formats.js +197 -0
  57. package/dist/lib/utils/detect-supported-texture-formats.js.map +1 -0
  58. package/dist/lib/utils/extract-mipmap-images.d.ts +2 -2
  59. package/dist/lib/utils/extract-mipmap-images.d.ts.map +1 -1
  60. package/dist/lib/utils/extract-mipmap-images.js +12 -2
  61. package/dist/lib/utils/extract-mipmap-images.js.map +1 -1
  62. package/dist/lib/utils/ktx-format-helper.d.ts +2 -1
  63. package/dist/lib/utils/ktx-format-helper.d.ts.map +1 -1
  64. package/dist/lib/utils/ktx-format-helper.js +67 -109
  65. package/dist/lib/utils/ktx-format-helper.js.map +1 -1
  66. package/dist/lib/utils/texture-format-map.d.ts +3 -0
  67. package/dist/lib/utils/texture-format-map.d.ts.map +1 -0
  68. package/dist/lib/utils/texture-format-map.js +71 -0
  69. package/dist/lib/utils/texture-format-map.js.map +1 -0
  70. package/dist/lib/utils/version.js +1 -1
  71. package/dist/npy-worker.js +1 -1
  72. package/dist/workers/crunch-worker.d.ts +1 -3
  73. package/dist/workers/crunch-worker.d.ts.map +1 -1
  74. package/package.json +6 -6
  75. package/src/basis-loader.ts +19 -9
  76. package/src/compressed-texture-loader.ts +0 -3
  77. package/src/crunch-loader.ts +1 -5
  78. package/src/index.ts +2 -4
  79. package/src/lib/encoders/encode-ktx2-basis-texture.ts +2 -1
  80. package/src/lib/gl-extensions.ts +186 -81
  81. package/src/lib/parsers/crunch-module-loader.ts +4 -4
  82. package/src/lib/parsers/parse-basis.ts +281 -45
  83. package/src/lib/parsers/parse-crunch.ts +15 -7
  84. package/src/lib/parsers/parse-dds.ts +16 -9
  85. package/src/lib/parsers/parse-ktx.ts +12 -2
  86. package/src/lib/parsers/parse-pvr.ts +72 -72
  87. package/src/lib/utils/detect-supported-texture-formats.ts +210 -0
  88. package/src/lib/utils/extract-mipmap-images.ts +15 -4
  89. package/src/lib/utils/ktx-format-helper.ts +124 -111
  90. package/src/lib/utils/texture-format-map.ts +135 -0
  91. package/dist/lib/utils/texture-formats.d.ts +0 -8
  92. package/dist/lib/utils/texture-formats.d.ts.map +0 -1
  93. package/dist/lib/utils/texture-formats.js +0 -51
  94. package/dist/lib/utils/texture-formats.js.map +0 -1
  95. package/src/lib/utils/texture-formats.ts +0 -59
@@ -1,53 +1,116 @@
1
1
  // loaders.gl
2
2
  // SPDX-License-Identifier: MIT
3
3
  // Copyright (c) vis.gl contributors
4
+ import { extractLoadLibraryOptions } from '@loaders.gl/worker-utils';
4
5
  import { loadBasisEncoderModule, loadBasisTranscoderModule } from "./basis-module-loader.js";
5
- import { GL_EXTENSIONS_CONSTANTS } from "../gl-extensions.js";
6
- import { getSupportedGPUTextureFormats } from "../utils/texture-formats.js";
6
+ import { GL_COMPRESSED_RED_GREEN_RGTC2_EXT, GL_COMPRESSED_RED_RGTC1_EXT, GL_COMPRESSED_RGB_ATC_WEBGL, GL_COMPRESSED_RGB_ETC1_WEBGL, GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG, GL_COMPRESSED_RGB_S3TC_DXT1_EXT, GL_COMPRESSED_RGBA8_ETC2_EAC, GL_COMPRESSED_RGBA_ASTC_4x4_KHR, GL_COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL, GL_COMPRESSED_RGBA_BPTC_UNORM_EXT, GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG, GL_COMPRESSED_RGBA_S3TC_DXT5_EXT, GL_RGB565, GL_RGBA4, GL_RGBA8 } from "../gl-extensions.js";
7
+ import { detectSupportedTextureFormats } from "../utils/detect-supported-texture-formats.js";
7
8
  import { isKTX } from "./parse-ktx.js";
8
- const OutputFormat = {
9
+ export const BASIS_FORMAT_TO_OUTPUT_OPTIONS = {
9
10
  etc1: {
10
11
  basisFormat: 0,
11
12
  compressed: true,
12
- format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_ETC1_WEBGL
13
+ format: GL_COMPRESSED_RGB_ETC1_WEBGL,
14
+ textureFormat: 'etc1-rbg-unorm-webgl'
15
+ },
16
+ etc2: {
17
+ basisFormat: 1,
18
+ compressed: true,
19
+ format: GL_COMPRESSED_RGBA8_ETC2_EAC,
20
+ textureFormat: 'etc2-rgba8unorm'
13
21
  },
14
- etc2: { basisFormat: 1, compressed: true },
15
22
  bc1: {
16
23
  basisFormat: 2,
17
24
  compressed: true,
18
- format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT
25
+ format: GL_COMPRESSED_RGB_S3TC_DXT1_EXT,
26
+ textureFormat: 'bc1-rgb-unorm-webgl'
19
27
  },
20
28
  bc3: {
21
29
  basisFormat: 3,
22
30
  compressed: true,
23
- format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT
31
+ format: GL_COMPRESSED_RGBA_S3TC_DXT5_EXT,
32
+ textureFormat: 'bc3-rgba-unorm'
33
+ },
34
+ bc4: {
35
+ basisFormat: 4,
36
+ compressed: true,
37
+ format: GL_COMPRESSED_RED_RGTC1_EXT,
38
+ textureFormat: 'bc4-r-unorm'
39
+ },
40
+ bc5: {
41
+ basisFormat: 5,
42
+ compressed: true,
43
+ format: GL_COMPRESSED_RED_GREEN_RGTC2_EXT,
44
+ textureFormat: 'bc5-rg-unorm'
45
+ },
46
+ 'bc7-m6-opaque-only': {
47
+ basisFormat: 6,
48
+ compressed: true,
49
+ format: GL_COMPRESSED_RGBA_BPTC_UNORM_EXT,
50
+ textureFormat: 'bc7-rgba-unorm'
51
+ },
52
+ 'bc7-m5': {
53
+ basisFormat: 7,
54
+ compressed: true,
55
+ format: GL_COMPRESSED_RGBA_BPTC_UNORM_EXT,
56
+ textureFormat: 'bc7-rgba-unorm'
24
57
  },
25
- bc4: { basisFormat: 4, compressed: true },
26
- bc5: { basisFormat: 5, compressed: true },
27
- 'bc7-m6-opaque-only': { basisFormat: 6, compressed: true },
28
- 'bc7-m5': { basisFormat: 7, compressed: true },
29
58
  'pvrtc1-4-rgb': {
30
59
  basisFormat: 8,
31
60
  compressed: true,
32
- format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_PVRTC_4BPPV1_IMG
61
+ format: GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG,
62
+ textureFormat: 'pvrtc-rgb4unorm-webgl'
33
63
  },
34
64
  'pvrtc1-4-rgba': {
35
65
  basisFormat: 9,
36
66
  compressed: true,
37
- format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG
67
+ format: GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG,
68
+ textureFormat: 'pvrtc-rgba4unorm-webgl'
38
69
  },
39
70
  'astc-4x4': {
40
71
  basisFormat: 10,
41
72
  compressed: true,
42
- format: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4X4_KHR
43
- },
44
- 'atc-rgb': { basisFormat: 11, compressed: true },
45
- 'atc-rgba-interpolated-alpha': { basisFormat: 12, compressed: true },
46
- rgba32: { basisFormat: 13, compressed: false },
47
- rgb565: { basisFormat: 14, compressed: false },
48
- bgr565: { basisFormat: 15, compressed: false },
49
- rgba4444: { basisFormat: 16, compressed: false }
73
+ format: GL_COMPRESSED_RGBA_ASTC_4x4_KHR,
74
+ textureFormat: 'astc-4x4-unorm'
75
+ },
76
+ 'atc-rgb': {
77
+ basisFormat: 11,
78
+ compressed: true,
79
+ format: GL_COMPRESSED_RGB_ATC_WEBGL,
80
+ textureFormat: 'atc-rgb-unorm-webgl'
81
+ },
82
+ 'atc-rgba-interpolated-alpha': {
83
+ basisFormat: 12,
84
+ compressed: true,
85
+ format: GL_COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL,
86
+ textureFormat: 'atc-rgbai-unorm-webgl'
87
+ },
88
+ rgba32: {
89
+ basisFormat: 13,
90
+ compressed: false,
91
+ format: GL_RGBA8,
92
+ textureFormat: 'rgba8unorm'
93
+ },
94
+ rgb565: {
95
+ basisFormat: 14,
96
+ compressed: false,
97
+ format: GL_RGB565,
98
+ textureFormat: 'rgb565unorm-webgl'
99
+ },
100
+ bgr565: {
101
+ basisFormat: 15,
102
+ compressed: false,
103
+ format: GL_RGB565,
104
+ textureFormat: 'rgb565unorm-webgl'
105
+ },
106
+ rgba4444: {
107
+ basisFormat: 16,
108
+ compressed: false,
109
+ format: GL_RGBA4,
110
+ textureFormat: 'rgba4unorm-webgl'
111
+ }
50
112
  };
113
+ export const BASIS_FORMATS = Object.freeze(Object.keys(BASIS_FORMAT_TO_OUTPUT_OPTIONS));
51
114
  /**
52
115
  * parse data with a Binomial Basis_Universal module
53
116
  * @param data
@@ -56,17 +119,18 @@ const OutputFormat = {
56
119
  */
57
120
  // eslint-disable-next-line complexity
58
121
  export async function parseBasis(data, options = {}) {
122
+ const loadLibraryOptions = extractLoadLibraryOptions(options);
59
123
  if (!options.basis?.containerFormat || options.basis.containerFormat === 'auto') {
60
124
  if (isKTX(data)) {
61
- const fileConstructors = await loadBasisEncoderModule(options?.core || {});
125
+ const fileConstructors = await loadBasisEncoderModule(loadLibraryOptions);
62
126
  return parseKTX2File(fileConstructors.KTX2File, data, options);
63
127
  }
64
- const { BasisFile } = await loadBasisTranscoderModule(options?.core || {});
128
+ const { BasisFile } = await loadBasisTranscoderModule(loadLibraryOptions);
65
129
  return parseBasisFile(BasisFile, data, options);
66
130
  }
67
131
  switch (options.basis.module) {
68
132
  case 'encoder':
69
- const fileConstructors = await loadBasisEncoderModule(options?.core || {});
133
+ const fileConstructors = await loadBasisEncoderModule(loadLibraryOptions);
70
134
  switch (options.basis.containerFormat) {
71
135
  case 'ktx2':
72
136
  return parseKTX2File(fileConstructors.KTX2File, data, options);
@@ -76,7 +140,7 @@ export async function parseBasis(data, options = {}) {
76
140
  }
77
141
  case 'transcoder':
78
142
  default:
79
- const { BasisFile } = await loadBasisTranscoderModule(options.core || {});
143
+ const { BasisFile } = await loadBasisTranscoderModule(loadLibraryOptions);
80
144
  return parseBasisFile(BasisFile, data, options);
81
145
  }
82
146
  }
@@ -124,7 +188,7 @@ function transcodeImage(basisFile, imageIndex, levelIndex, options) {
124
188
  // See https://github.com/BinomialLLC/basis_universal/pull/83
125
189
  const hasAlpha = basisFile.getHasAlpha( /* imageIndex, levelIndex */);
126
190
  // Check options for output format etc
127
- const { compressed, format, basisFormat } = getBasisOptions(options, hasAlpha);
191
+ const { compressed, format, basisFormat, textureFormat } = getBasisOptions(options, hasAlpha);
128
192
  const decodedSize = basisFile.getImageTranscodedSizeInBytes(imageIndex, levelIndex, basisFormat);
129
193
  const decodedData = new Uint8Array(decodedSize);
130
194
  if (!basisFile.transcodeImage(decodedData, imageIndex, levelIndex, basisFormat, 0, 0)) {
@@ -132,11 +196,13 @@ function transcodeImage(basisFile, imageIndex, levelIndex, options) {
132
196
  }
133
197
  return {
134
198
  // standard loaders.gl image category payload
199
+ shape: 'texture-level',
135
200
  width,
136
201
  height,
137
202
  data: decodedData,
138
203
  compressed,
139
- format,
204
+ ...(format !== undefined ? { format } : {}),
205
+ ...(textureFormat !== undefined ? { textureFormat } : {}),
140
206
  // Additional fields
141
207
  // Add levelSize field.
142
208
  hasAlpha
@@ -177,7 +243,7 @@ function parseKTX2File(KTX2File, data, options) {
177
243
  function transcodeKTX2Image(ktx2File, levelIndex, options) {
178
244
  const { alphaFlag, height, width } = ktx2File.getImageLevelInfo(levelIndex, 0, 0);
179
245
  // Check options for output format etc
180
- const { compressed, format, basisFormat } = getBasisOptions(options, alphaFlag);
246
+ const { compressed, format, basisFormat, textureFormat } = getBasisOptions(options, alphaFlag);
181
247
  const decodedSize = ktx2File.getImageTranscodedSizeInBytes(levelIndex, 0 /* layerIndex */, 0 /* faceIndex */, basisFormat);
182
248
  const decodedData = new Uint8Array(decodedSize);
183
249
  if (!ktx2File.transcodeImage(decodedData, levelIndex, 0 /* layerIndex */, 0 /* faceIndex */, basisFormat, 0, -1 /* channel0 */, -1 /* channel1 */)) {
@@ -185,14 +251,16 @@ function transcodeKTX2Image(ktx2File, levelIndex, options) {
185
251
  }
186
252
  return {
187
253
  // standard loaders.gl image category payload
254
+ shape: 'texture-level',
188
255
  width,
189
256
  height,
190
257
  data: decodedData,
191
258
  compressed,
259
+ ...(format !== undefined ? { format } : {}),
260
+ ...(textureFormat !== undefined ? { textureFormat } : {}),
192
261
  // Additional fields
193
262
  levelSize: decodedSize,
194
- hasAlpha: alphaFlag,
195
- format
263
+ hasAlpha: alphaFlag
196
264
  };
197
265
  }
198
266
  /**
@@ -202,44 +270,151 @@ function transcodeKTX2Image(ktx2File, levelIndex, options) {
202
270
  * @returns BasisFormat data
203
271
  */
204
272
  function getBasisOptions(options, hasAlpha) {
205
- // TODO - any
206
- let format = options.basis?.format;
273
+ let format = options.basis?.format || 'auto';
207
274
  if (format === 'auto') {
208
- format = selectSupportedBasisFormat();
275
+ format = options.basis?.supportedTextureFormats
276
+ ? selectSupportedBasisFormat(options.basis.supportedTextureFormats)
277
+ : selectSupportedBasisFormat();
209
278
  }
210
279
  if (typeof format === 'object') {
211
280
  format = hasAlpha ? format.alpha : format.noAlpha;
212
281
  }
213
- format = format.toLowerCase();
214
- return OutputFormat[format];
282
+ const normalizedFormat = format.toLowerCase();
283
+ const basisOutputOptions = BASIS_FORMAT_TO_OUTPUT_OPTIONS[normalizedFormat];
284
+ if (!basisOutputOptions) {
285
+ throw new Error(`Unknown Basis format ${format}`);
286
+ }
287
+ return basisOutputOptions;
215
288
  }
216
- /**
217
- * Select transcode format from the list of supported formats
218
- * @returns key for OutputFormat map
219
- */
220
- export function selectSupportedBasisFormat() {
221
- const supportedFormats = getSupportedGPUTextureFormats();
222
- if (supportedFormats.has('astc')) {
289
+ export function selectSupportedBasisFormat(supportedTextureFormats = detectSupportedTextureFormats()) {
290
+ const textureFormats = new Set(supportedTextureFormats);
291
+ if (hasSupportedTextureFormat(textureFormats, ['astc-4x4-unorm', 'astc-4x4-unorm-srgb'])) {
223
292
  return 'astc-4x4';
224
293
  }
225
- else if (supportedFormats.has('dxt')) {
294
+ else if (hasSupportedTextureFormat(textureFormats, ['bc7-rgba-unorm', 'bc7-rgba-unorm-srgb'])) {
295
+ return {
296
+ alpha: 'bc7-m5',
297
+ noAlpha: 'bc7-m6-opaque-only'
298
+ };
299
+ }
300
+ else if (hasSupportedTextureFormat(textureFormats, [
301
+ 'bc1-rgb-unorm-webgl',
302
+ 'bc1-rgb-unorm-srgb-webgl',
303
+ 'bc1-rgba-unorm',
304
+ 'bc1-rgba-unorm-srgb',
305
+ 'bc2-rgba-unorm',
306
+ 'bc2-rgba-unorm-srgb',
307
+ 'bc3-rgba-unorm',
308
+ 'bc3-rgba-unorm-srgb'
309
+ ])) {
226
310
  return {
227
311
  alpha: 'bc3',
228
312
  noAlpha: 'bc1'
229
313
  };
230
314
  }
231
- else if (supportedFormats.has('pvrtc')) {
315
+ else if (hasSupportedTextureFormat(textureFormats, [
316
+ 'pvrtc-rgb4unorm-webgl',
317
+ 'pvrtc-rgba4unorm-webgl',
318
+ 'pvrtc-rbg2unorm-webgl',
319
+ 'pvrtc-rgba2unorm-webgl'
320
+ ])) {
232
321
  return {
233
322
  alpha: 'pvrtc1-4-rgba',
234
323
  noAlpha: 'pvrtc1-4-rgb'
235
324
  };
236
325
  }
237
- else if (supportedFormats.has('etc1')) {
326
+ else if (hasSupportedTextureFormat(textureFormats, [
327
+ 'etc2-rgb8unorm',
328
+ 'etc2-rgb8unorm-srgb',
329
+ 'etc2-rgb8a1unorm',
330
+ 'etc2-rgb8a1unorm-srgb',
331
+ 'etc2-rgba8unorm',
332
+ 'etc2-rgba8unorm-srgb',
333
+ 'eac-r11unorm',
334
+ 'eac-r11snorm',
335
+ 'eac-rg11unorm',
336
+ 'eac-rg11snorm'
337
+ ])) {
338
+ return 'etc2';
339
+ }
340
+ else if (textureFormats.has('etc1-rbg-unorm-webgl')) {
238
341
  return 'etc1';
239
342
  }
240
- else if (supportedFormats.has('etc2')) {
241
- return 'etc2';
343
+ else if (hasSupportedTextureFormat(textureFormats, [
344
+ 'atc-rgb-unorm-webgl',
345
+ 'atc-rgba-unorm-webgl',
346
+ 'atc-rgbai-unorm-webgl'
347
+ ])) {
348
+ return {
349
+ alpha: 'atc-rgba-interpolated-alpha',
350
+ noAlpha: 'atc-rgb'
351
+ };
242
352
  }
243
353
  return 'rgb565';
244
354
  }
355
+ export function getSupportedBasisFormats(supportedTextureFormats = detectSupportedTextureFormats()) {
356
+ const textureFormats = new Set(supportedTextureFormats);
357
+ const basisFormats = [];
358
+ if (hasSupportedTextureFormat(textureFormats, ['astc-4x4-unorm', 'astc-4x4-unorm-srgb'])) {
359
+ basisFormats.push('astc-4x4');
360
+ }
361
+ if (hasSupportedTextureFormat(textureFormats, [
362
+ 'bc1-rgb-unorm-webgl',
363
+ 'bc1-rgb-unorm-srgb-webgl',
364
+ 'bc1-rgba-unorm',
365
+ 'bc1-rgba-unorm-srgb',
366
+ 'bc2-rgba-unorm',
367
+ 'bc2-rgba-unorm-srgb',
368
+ 'bc3-rgba-unorm',
369
+ 'bc3-rgba-unorm-srgb'
370
+ ])) {
371
+ basisFormats.push('bc1', 'bc3');
372
+ }
373
+ if (hasSupportedTextureFormat(textureFormats, ['bc4-r-unorm', 'bc4-r-snorm'])) {
374
+ basisFormats.push('bc4');
375
+ }
376
+ if (hasSupportedTextureFormat(textureFormats, ['bc5-rg-unorm', 'bc5-rg-snorm'])) {
377
+ basisFormats.push('bc5');
378
+ }
379
+ if (hasSupportedTextureFormat(textureFormats, ['bc7-rgba-unorm', 'bc7-rgba-unorm-srgb'])) {
380
+ basisFormats.push('bc7-m5', 'bc7-m6-opaque-only');
381
+ }
382
+ if (hasSupportedTextureFormat(textureFormats, [
383
+ 'pvrtc-rgb4unorm-webgl',
384
+ 'pvrtc-rgba4unorm-webgl',
385
+ 'pvrtc-rbg2unorm-webgl',
386
+ 'pvrtc-rgba2unorm-webgl'
387
+ ])) {
388
+ basisFormats.push('pvrtc1-4-rgb', 'pvrtc1-4-rgba');
389
+ }
390
+ if (hasSupportedTextureFormat(textureFormats, [
391
+ 'etc2-rgb8unorm',
392
+ 'etc2-rgb8unorm-srgb',
393
+ 'etc2-rgb8a1unorm',
394
+ 'etc2-rgb8a1unorm-srgb',
395
+ 'etc2-rgba8unorm',
396
+ 'etc2-rgba8unorm-srgb',
397
+ 'eac-r11unorm',
398
+ 'eac-r11snorm',
399
+ 'eac-rg11unorm',
400
+ 'eac-rg11snorm'
401
+ ])) {
402
+ basisFormats.push('etc2');
403
+ }
404
+ if (textureFormats.has('etc1-rbg-unorm-webgl')) {
405
+ basisFormats.push('etc1');
406
+ }
407
+ if (hasSupportedTextureFormat(textureFormats, [
408
+ 'atc-rgb-unorm-webgl',
409
+ 'atc-rgba-unorm-webgl',
410
+ 'atc-rgbai-unorm-webgl'
411
+ ])) {
412
+ basisFormats.push('atc-rgb', 'atc-rgba-interpolated-alpha');
413
+ }
414
+ basisFormats.push('rgba32', 'rgb565', 'bgr565', 'rgba4444');
415
+ return basisFormats;
416
+ }
417
+ function hasSupportedTextureFormat(supportedTextureFormats, candidateTextureFormats) {
418
+ return candidateTextureFormats.some((textureFormat) => supportedTextureFormats.has(textureFormat));
419
+ }
245
420
  //# sourceMappingURL=parse-basis.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parse-basis.js","sourceRoot":"","sources":["../../../src/lib/parsers/parse-basis.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parse-basis.js","sourceRoot":"","sources":["../../../src/lib/parsers/parse-basis.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAKpC,OAAO,EAAC,yBAAyB,EAAC,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAC,sBAAsB,EAAE,yBAAyB,EAAC,iCAA8B;AACxF,OAAO,EACL,iCAAiC,EACjC,2BAA2B,EAC3B,2BAA2B,EAC3B,4BAA4B,EAC5B,kCAAkC,EAClC,+BAA+B,EAC/B,4BAA4B,EAC5B,+BAA+B,EAC/B,+CAA+C,EAC/C,iCAAiC,EACjC,mCAAmC,EACnC,gCAAgC,EAChC,SAAS,EACT,QAAQ,EACR,QAAQ,EACT,4BAAyB;AAC1B,OAAO,EAAC,6BAA6B,EAAC,qDAAkD;AACxF,OAAO,EAAC,KAAK,EAAC,uBAAoB;AA+BlC,MAAM,CAAC,MAAM,8BAA8B,GAA4C;IACrF,IAAI,EAAE;QACJ,WAAW,EAAE,CAAC;QACd,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,4BAA4B;QACpC,aAAa,EAAE,sBAAsB;KACtC;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,CAAC;QACd,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,4BAA4B;QACpC,aAAa,EAAE,iBAAiB;KACjC;IACD,GAAG,EAAE;QACH,WAAW,EAAE,CAAC;QACd,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,+BAA+B;QACvC,aAAa,EAAE,qBAAqB;KACrC;IACD,GAAG,EAAE;QACH,WAAW,EAAE,CAAC;QACd,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,gCAAgC;QACxC,aAAa,EAAE,gBAAgB;KAChC;IACD,GAAG,EAAE;QACH,WAAW,EAAE,CAAC;QACd,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,2BAA2B;QACnC,aAAa,EAAE,aAAa;KAC7B;IACD,GAAG,EAAE;QACH,WAAW,EAAE,CAAC;QACd,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,iCAAiC;QACzC,aAAa,EAAE,cAAc;KAC9B;IACD,oBAAoB,EAAE;QACpB,WAAW,EAAE,CAAC;QACd,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,iCAAiC;QACzC,aAAa,EAAE,gBAAgB;KAChC;IACD,QAAQ,EAAE;QACR,WAAW,EAAE,CAAC;QACd,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,iCAAiC;QACzC,aAAa,EAAE,gBAAgB;KAChC;IACD,cAAc,EAAE;QACd,WAAW,EAAE,CAAC;QACd,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,kCAAkC;QAC1C,aAAa,EAAE,uBAAuB;KACvC;IACD,eAAe,EAAE;QACf,WAAW,EAAE,CAAC;QACd,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,mCAAmC;QAC3C,aAAa,EAAE,wBAAwB;KACxC;IACD,UAAU,EAAE;QACV,WAAW,EAAE,EAAE;QACf,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,+BAA+B;QACvC,aAAa,EAAE,gBAAgB;KAChC;IACD,SAAS,EAAE;QACT,WAAW,EAAE,EAAE;QACf,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,2BAA2B;QACnC,aAAa,EAAE,qBAAqB;KACrC;IACD,6BAA6B,EAAE;QAC7B,WAAW,EAAE,EAAE;QACf,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,+CAA+C;QACvD,aAAa,EAAE,uBAAuB;KACvC;IACD,MAAM,EAAE;QACN,WAAW,EAAE,EAAE;QACf,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE,QAAQ;QAChB,aAAa,EAAE,YAAY;KAC5B;IACD,MAAM,EAAE;QACN,WAAW,EAAE,EAAE;QACf,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE,SAAS;QACjB,aAAa,EAAE,mBAAmB;KACnC;IACD,MAAM,EAAE;QACN,WAAW,EAAE,EAAE;QACf,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE,SAAS;QACjB,aAAa,EAAE,mBAAmB;KACnC;IACD,QAAQ,EAAE;QACR,WAAW,EAAE,EAAE;QACf,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE,QAAQ;QAChB,aAAa,EAAE,kBAAkB;KAClC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CACxC,MAAM,CAAC,IAAI,CAAC,8BAA8B,CAAkB,CAC7D,CAAC;AASF;;;;;GAKG;AACH,sCAAsC;AACtC,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,IAAiB,EACjB,UAA8B,EAAE;IAEhC,MAAM,kBAAkB,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAC;IAE9D,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,eAAe,IAAI,OAAO,CAAC,KAAK,CAAC,eAAe,KAAK,MAAM,EAAE,CAAC;QAChF,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YAChB,MAAM,gBAAgB,GAAG,MAAM,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;YAC1E,OAAO,aAAa,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACjE,CAAC;QACD,MAAM,EAAC,SAAS,EAAC,GAAG,MAAM,yBAAyB,CAAC,kBAAkB,CAAC,CAAC;QACxE,OAAO,cAAc,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;IACD,QAAQ,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAC7B,KAAK,SAAS;YACZ,MAAM,gBAAgB,GAAG,MAAM,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;YAC1E,QAAQ,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;gBACtC,KAAK,MAAM;oBACT,OAAO,aAAa,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;gBACjE,KAAK,OAAO,CAAC;gBACb;oBACE,OAAO,cAAc,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;YACrE,CAAC;QACH,KAAK,YAAY,CAAC;QAClB;YACE,MAAM,EAAC,SAAS,EAAC,GAAG,MAAM,yBAAyB,CAAC,kBAAkB,CAAC,CAAC;YACxE,OAAO,cAAc,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,cAAc,CACrB,SAAS,EACT,IAAiB,EACjB,OAA2B;IAE3B,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;IAEtD,IAAI,CAAC;QACH,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,UAAU,GAAG,SAAS,CAAC,YAAY,EAAE,CAAC;QAC5C,MAAM,MAAM,GAAqB,EAAE,CAAC;QAEpC,KAAK,IAAI,UAAU,GAAG,CAAC,EAAE,UAAU,GAAG,UAAU,EAAE,UAAU,EAAE,EAAE,CAAC;YAC/D,MAAM,WAAW,GAAG,SAAS,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;YACvD,MAAM,MAAM,GAAmB,EAAE,CAAC;YAElC,KAAK,IAAI,UAAU,GAAG,CAAC,EAAE,UAAU,GAAG,WAAW,EAAE,UAAU,EAAE,EAAE,CAAC;gBAChE,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;YAC1E,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtB,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;YAAS,CAAC;QACT,SAAS,CAAC,KAAK,EAAE,CAAC;QAClB,SAAS,CAAC,MAAM,EAAE,CAAC;IACrB,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,cAAc,CACrB,SAAS,EACT,UAAkB,EAClB,UAAkB,EAClB,OAA2B;IAE3B,MAAM,KAAK,GAAG,SAAS,CAAC,aAAa,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAC9D,MAAM,MAAM,GAAG,SAAS,CAAC,cAAc,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAEhE,6DAA6D;IAC7D,MAAM,QAAQ,GAAG,SAAS,CAAC,WAAW,EAAC,4BAA4B,CAAC,CAAC;IAErE,sCAAsC;IACtC,MAAM,EAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAC,GAAG,eAAe,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAE5F,MAAM,WAAW,GAAG,SAAS,CAAC,6BAA6B,CAAC,UAAU,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;IACjG,MAAM,WAAW,GAAG,IAAI,UAAU,CAAC,WAAW,CAAC,CAAC;IAEhD,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QACtF,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACvD,CAAC;IAED,OAAO;QACL,6CAA6C;QAC7C,KAAK,EAAE,eAAe;QACtB,KAAK;QACL,MAAM;QACN,IAAI,EAAE,WAAW;QACjB,UAAU;QACV,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAC,MAAM,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAC,aAAa,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAEvD,oBAAoB;QACpB,uBAAuB;QACvB,QAAQ;KACT,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,SAAS,aAAa,CAAC,QAAQ,EAAE,IAAiB,EAAE,OAA2B;IAC7E,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;IAEpD,IAAI,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACtD,CAAC;QACD,MAAM,WAAW,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC;QACzC,MAAM,MAAM,GAAmB,EAAE,CAAC;QAElC,KAAK,IAAI,UAAU,GAAG,CAAC,EAAE,UAAU,GAAG,WAAW,EAAE,UAAU,EAAE,EAAE,CAAC;YAChE,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;QACjE,CAAC;QAED,OAAO,CAAC,MAAM,CAAC,CAAC;IAClB,CAAC;YAAS,CAAC;QACT,QAAQ,CAAC,KAAK,EAAE,CAAC;QACjB,QAAQ,CAAC,MAAM,EAAE,CAAC;IACpB,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,kBAAkB,CACzB,QAAQ,EACR,UAAkB,EAClB,OAA2B;IAE3B,MAAM,EAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAC,GAAG,QAAQ,CAAC,iBAAiB,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAEhF,sCAAsC;IACtC,MAAM,EAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAC,GAAG,eAAe,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAE7F,MAAM,WAAW,GAAG,QAAQ,CAAC,6BAA6B,CACxD,UAAU,EACV,CAAC,CAAC,gBAAgB,EAClB,CAAC,CAAC,eAAe,EACjB,WAAW,CACZ,CAAC;IACF,MAAM,WAAW,GAAG,IAAI,UAAU,CAAC,WAAW,CAAC,CAAC;IAEhD,IACE,CAAC,QAAQ,CAAC,cAAc,CACtB,WAAW,EACX,UAAU,EACV,CAAC,CAAC,gBAAgB,EAClB,CAAC,CAAC,eAAe,EACjB,WAAW,EACX,CAAC,EACD,CAAC,CAAC,CAAC,cAAc,EACjB,CAAC,CAAC,CAAC,cAAc,CAClB,EACD,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IAED,OAAO;QACL,6CAA6C;QAC7C,KAAK,EAAE,eAAe;QACtB,KAAK;QACL,MAAM;QACN,IAAI,EAAE,WAAW;QACjB,UAAU;QACV,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAC,MAAM,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAC,aAAa,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAEvD,oBAAoB;QACpB,SAAS,EAAE,WAAW;QACtB,QAAQ,EAAE,SAAS;KACpB,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAS,eAAe,CAAC,OAA2B,EAAE,QAAiB;IACrE,IAAI,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,MAAM,IAAI,MAAM,CAAC;IAC7C,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,uBAAuB;YAC7C,CAAC,CAAC,0BAA0B,CAAC,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC;YACnE,CAAC,CAAC,0BAA0B,EAAE,CAAC;IACnC,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;IACpD,CAAC;IACD,MAAM,gBAAgB,GAAG,MAAM,CAAC,WAAW,EAAiB,CAAC;IAC7D,MAAM,kBAAkB,GAAG,8BAA8B,CAAC,gBAAgB,CAAC,CAAC;IAC5E,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,wBAAwB,MAAM,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAkBD,MAAM,UAAU,0BAA0B,CACxC,0BAAmD,6BAA6B,EAAE;IAElF,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,uBAAuB,CAAC,CAAC;IAExD,IAAI,yBAAyB,CAAC,cAAc,EAAE,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,CAAC,EAAE,CAAC;QACzF,OAAO,UAAU,CAAC;IACpB,CAAC;SAAM,IAAI,yBAAyB,CAAC,cAAc,EAAE,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,CAAC,EAAE,CAAC;QAChG,OAAO;YACL,KAAK,EAAE,QAAQ;YACf,OAAO,EAAE,oBAAoB;SAC9B,CAAC;IACJ,CAAC;SAAM,IACL,yBAAyB,CAAC,cAAc,EAAE;QACxC,qBAAqB;QACrB,0BAA0B;QAC1B,gBAAgB;QAChB,qBAAqB;QACrB,gBAAgB;QAChB,qBAAqB;QACrB,gBAAgB;QAChB,qBAAqB;KACtB,CAAC,EACF,CAAC;QACD,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,KAAK;SACf,CAAC;IACJ,CAAC;SAAM,IACL,yBAAyB,CAAC,cAAc,EAAE;QACxC,uBAAuB;QACvB,wBAAwB;QACxB,uBAAuB;QACvB,wBAAwB;KACzB,CAAC,EACF,CAAC;QACD,OAAO;YACL,KAAK,EAAE,eAAe;YACtB,OAAO,EAAE,cAAc;SACxB,CAAC;IACJ,CAAC;SAAM,IACL,yBAAyB,CAAC,cAAc,EAAE;QACxC,gBAAgB;QAChB,qBAAqB;QACrB,kBAAkB;QAClB,uBAAuB;QACvB,iBAAiB;QACjB,sBAAsB;QACtB,cAAc;QACd,cAAc;QACd,eAAe;QACf,eAAe;KAChB,CAAC,EACF,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;SAAM,IAAI,cAAc,CAAC,GAAG,CAAC,sBAAsB,CAAC,EAAE,CAAC;QACtD,OAAO,MAAM,CAAC;IAChB,CAAC;SAAM,IACL,yBAAyB,CAAC,cAAc,EAAE;QACxC,qBAAqB;QACrB,sBAAsB;QACtB,uBAAuB;KACxB,CAAC,EACF,CAAC;QACD,OAAO;YACL,KAAK,EAAE,6BAA6B;YACpC,OAAO,EAAE,SAAS;SACnB,CAAC;IACJ,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,0BAAmD,6BAA6B,EAAE;IAElF,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,uBAAuB,CAAC,CAAC;IACxD,MAAM,YAAY,GAAkB,EAAE,CAAC;IAEvC,IAAI,yBAAyB,CAAC,cAAc,EAAE,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,CAAC,EAAE,CAAC;QACzF,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAChC,CAAC;IACD,IACE,yBAAyB,CAAC,cAAc,EAAE;QACxC,qBAAqB;QACrB,0BAA0B;QAC1B,gBAAgB;QAChB,qBAAqB;QACrB,gBAAgB;QAChB,qBAAqB;QACrB,gBAAgB;QAChB,qBAAqB;KACtB,CAAC,EACF,CAAC;QACD,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAClC,CAAC;IACD,IAAI,yBAAyB,CAAC,cAAc,EAAE,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC;QAC9E,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IACD,IAAI,yBAAyB,CAAC,cAAc,EAAE,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC;QAChF,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IACD,IAAI,yBAAyB,CAAC,cAAc,EAAE,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,CAAC,EAAE,CAAC;QACzF,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;IACpD,CAAC;IACD,IACE,yBAAyB,CAAC,cAAc,EAAE;QACxC,uBAAuB;QACvB,wBAAwB;QACxB,uBAAuB;QACvB,wBAAwB;KACzB,CAAC,EACF,CAAC;QACD,YAAY,CAAC,IAAI,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;IACrD,CAAC;IACD,IACE,yBAAyB,CAAC,cAAc,EAAE;QACxC,gBAAgB;QAChB,qBAAqB;QACrB,kBAAkB;QAClB,uBAAuB;QACvB,iBAAiB;QACjB,sBAAsB;QACtB,cAAc;QACd,cAAc;QACd,eAAe;QACf,eAAe;KAChB,CAAC,EACF,CAAC;QACD,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IACD,IAAI,cAAc,CAAC,GAAG,CAAC,sBAAsB,CAAC,EAAE,CAAC;QAC/C,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IACD,IACE,yBAAyB,CAAC,cAAc,EAAE;QACxC,qBAAqB;QACrB,sBAAsB;QACtB,uBAAuB;KACxB,CAAC,EACF,CAAC;QACD,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,6BAA6B,CAAC,CAAC;IAC9D,CAAC;IAED,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;IAC5D,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,SAAS,yBAAyB,CAChC,uBAA2C,EAC3C,uBAAwC;IAExC,OAAO,uBAAuB,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,EAAE,CACpD,uBAAuB,CAAC,GAAG,CAAC,aAAa,CAAC,CAC3C,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"parse-crunch.d.ts","sourceRoot":"","sources":["../../../src/lib/parsers/parse-crunch.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAsCrD;;;;;GAKG;AACH,wBAAsB,WAAW,CAAC,IAAI,KAAA,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAmD7E"}
1
+ {"version":3,"file":"parse-crunch.d.ts","sourceRoot":"","sources":["../../../src/lib/parsers/parse-crunch.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAkB,YAAY,EAAC,MAAM,oBAAoB,CAAC;AA8CtE;;;;;GAKG;AACH,wBAAsB,WAAW,CAAC,IAAI,KAAA,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAmD7E"}
@@ -2,10 +2,11 @@
2
2
  // SPDX-License-Identifier: MIT
3
3
  // Copyright (c) vis.gl contributors
4
4
  import { loadCrunchModule } from "./crunch-module-loader.js";
5
- import { GL_EXTENSIONS_CONSTANTS } from "../gl-extensions.js";
6
5
  import { assert } from '@loaders.gl/loader-utils';
6
+ import { extractLoadLibraryOptions } from '@loaders.gl/worker-utils';
7
7
  import { getDxt1LevelSize, getDxtXLevelSize } from "./parse-dds.js";
8
8
  import { extractMipmapImages } from "../utils/extract-mipmap-images.js";
9
+ import { GL_COMPRESSED_RGB_S3TC_DXT1_EXT, GL_COMPRESSED_RGBA_S3TC_DXT3_EXT, GL_COMPRESSED_RGBA_S3TC_DXT5_EXT } from "../gl-extensions.js";
9
10
  // Taken from crnlib.h
10
11
  const CRN_FORMAT = {
11
12
  cCRNFmtInvalid: -1,
@@ -18,15 +19,15 @@ const CRN_FORMAT = {
18
19
  /** Mapping of Crunch formats to DXT formats. */
19
20
  const DXT_FORMAT_MAP = {
20
21
  [CRN_FORMAT.cCRNFmtDXT1]: {
21
- pixelFormat: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT,
22
+ pixelFormat: GL_COMPRESSED_RGB_S3TC_DXT1_EXT,
22
23
  sizeFunction: getDxt1LevelSize
23
24
  },
24
25
  [CRN_FORMAT.cCRNFmtDXT3]: {
25
- pixelFormat: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT3_EXT,
26
+ pixelFormat: GL_COMPRESSED_RGBA_S3TC_DXT3_EXT,
26
27
  sizeFunction: getDxtXLevelSize
27
28
  },
28
29
  [CRN_FORMAT.cCRNFmtDXT5]: {
29
- pixelFormat: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT,
30
+ pixelFormat: GL_COMPRESSED_RGBA_S3TC_DXT5_EXT,
30
31
  sizeFunction: getDxtXLevelSize
31
32
  }
32
33
  };
@@ -39,7 +40,7 @@ let dst;
39
40
  * @returns Promise of Array of the texture levels
40
41
  */
41
42
  export async function parseCrunch(data, options) {
42
- const crunchModule = await loadCrunchModule(options);
43
+ const crunchModule = await loadCrunchModule(extractLoadLibraryOptions(options));
43
44
  // Copy the contents of the arrayBuffer into emscriptens heap.
44
45
  const srcSize = data.byteLength;
45
46
  const bytes = new Uint8Array(data);
@@ -1 +1 @@
1
- {"version":3,"file":"parse-crunch.js","sourceRoot":"","sources":["../../../src/lib/parsers/parse-crunch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parse-crunch.js","sourceRoot":"","sources":["../../../src/lib/parsers/parse-crunch.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"parse-dds.d.ts","sourceRoot":"","sources":["../../../src/lib/parsers/parse-dds.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AA0CrD;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAIhD;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,WAAW,GAAG,YAAY,EAAE,CA4B1D;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAEtE;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAEtE"}
1
+ {"version":3,"file":"parse-dds.d.ts","sourceRoot":"","sources":["../../../src/lib/parsers/parse-dds.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAkB,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAiDtE;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAIhD;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,WAAW,GAAG,YAAY,EAAE,CA4B1D;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAEtE;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAEtE"}
@@ -2,7 +2,7 @@
2
2
  // SPDX-License-Identifier: MIT
3
3
  // Copyright (c) vis.gl contributors
4
4
  import { assert } from '@loaders.gl/loader-utils';
5
- import { GL_EXTENSIONS_CONSTANTS } from "../gl-extensions.js";
5
+ import { GL_COMPRESSED_RGB_ATC_WEBGL, GL_COMPRESSED_RGB_S3TC_DXT1_EXT, GL_COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL, GL_COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL, GL_COMPRESSED_RGBA_S3TC_DXT3_EXT, GL_COMPRESSED_RGBA_S3TC_DXT5_EXT } from "../gl-extensions.js";
6
6
  import { extractMipmapImages } from "../utils/extract-mipmap-images.js";
7
7
  const DDS_CONSTANTS = {
8
8
  MAGIC_NUMBER: 0x20534444,
@@ -19,12 +19,12 @@ const DDS_CONSTANTS = {
19
19
  DDPF_FOURCC: 0x4
20
20
  };
21
21
  const DDS_PIXEL_FORMATS = {
22
- DXT1: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT,
23
- DXT3: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT3_EXT,
24
- DXT5: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT,
25
- 'ATC ': GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_ATC_WEBGL,
26
- ATCA: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL,
27
- ATCI: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL
22
+ DXT1: GL_COMPRESSED_RGB_S3TC_DXT1_EXT,
23
+ DXT3: GL_COMPRESSED_RGBA_S3TC_DXT3_EXT,
24
+ DXT5: GL_COMPRESSED_RGBA_S3TC_DXT5_EXT,
25
+ 'ATC ': GL_COMPRESSED_RGB_ATC_WEBGL,
26
+ ATCA: GL_COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL,
27
+ ATCI: GL_COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL
28
28
  };
29
29
  const getATCLevelSize = getDxt1LevelSize;
30
30
  const getATCALevelSize = getDxtXLevelSize;
@@ -1 +1 @@
1
- {"version":3,"file":"parse-dds.js","sourceRoot":"","sources":["../../../src/lib/parsers/parse-dds.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parse-dds.js","sourceRoot":"","sources":["../../../src/lib/parsers/parse-dds.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"parse-ktx.d.ts","sourceRoot":"","sources":["../../../src/lib/parsers/parse-ktx.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAWrD,wBAAgB,KAAK,CAAC,IAAI,EAAE,WAAW,WAmBtC;AAED,wBAAgB,QAAQ,CAAC,WAAW,EAAE,WAAW,GAAG,YAAY,EAAE,CAejE"}
1
+ {"version":3,"file":"parse-ktx.d.ts","sourceRoot":"","sources":["../../../src/lib/parsers/parse-ktx.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAkB,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAYtE,wBAAgB,KAAK,CAAC,IAAI,EAAE,WAAW,WAmBtC;AAED,wBAAgB,QAAQ,CAAC,WAAW,EAAE,WAAW,GAAG,YAAY,EAAE,CAwBjE"}
@@ -1,6 +1,7 @@
1
1
  // loaders.gl
2
2
  // SPDX-License-Identifier: MIT
3
3
  // Copyright (c) vis.gl contributors
4
+ import { log } from '@loaders.gl/loader-utils';
4
5
  import { read } from 'ktx-parse';
5
6
  import { extractMipmapImages } from "../utils/extract-mipmap-images.js";
6
7
  import { mapVkFormatToWebGL } from "../utils/ktx-format-helper.js";
@@ -34,6 +35,12 @@ export function parseKTX(arrayBuffer) {
34
35
  const width = ktx.pixelWidth;
35
36
  const height = ktx.pixelHeight;
36
37
  const internalFormat = mapVkFormatToWebGL(ktx.vkFormat);
38
+ if (internalFormat === undefined) {
39
+ // TODO: Basis-backed and otherwise unknown-format KTX2 files should preserve the
40
+ // legacy CompressedTextureLoader behavior for now. Do not fail here or add implicit
41
+ // transcoding in this parser path; just return levels without `format` metadata.
42
+ log.warn(`KTX2 container vkFormat ${ktx.vkFormat} does not map to a known WebGL format; returning texture levels without format metadata.`)();
43
+ }
37
44
  return extractMipmapImages(ktx.levels, {
38
45
  mipMapLevels,
39
46
  width,
@@ -1 +1 @@
1
- {"version":3,"file":"parse-ktx.js","sourceRoot":"","sources":["../../../src/lib/parsers/parse-ktx.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAGpC,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAC;AAC/B,OAAO,EAAC,mBAAmB,EAAC,0CAAuC;AACnE,OAAO,EAAC,kBAAkB,EAAC,sCAAmC;AAE9D,MAAM,OAAO,GAAG;IACd,8DAA8D;IAC9D,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;CACvE,CAAC;AAEF,sCAAsC;AACtC,MAAM,UAAU,KAAK,CAAC,IAAiB;IACrC,4EAA4E;IAC5E,MAAM,EAAE,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAChC,MAAM,MAAM,GACV,EAAE,CAAC,UAAU,GAAG,OAAO,CAAC,MAAM;QAC9B,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM;QAC9B,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM;QAC9B,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM;QAC9B,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM;QAC9B,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM;QAC9B,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM;QAC9B,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM;QAC9B,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM;QAC9B,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO;QAC/B,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO;QAC/B,EAAE,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC,EAAE,CAAC,IAAI,SAAS;QACnC,EAAE,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO;IAEjC,OAAO,CAAC,MAAM,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,WAAwB;IAC/C,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,WAAW,CAAC,CAAC;IAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;IAC7B,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,CAAC;IAC7B,MAAM,MAAM,GAAG,GAAG,CAAC,WAAW,CAAC;IAC/B,MAAM,cAAc,GAAG,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAExD,OAAO,mBAAmB,CAAC,GAAG,CAAC,MAAM,EAAE;QACrC,YAAY;QACZ,KAAK;QACL,MAAM;QACN,YAAY,EAAE,CAAC,KAAU,EAAU,EAAE,CAAC,KAAK,CAAC,sBAAsB;QAClE,cAAc;KACf,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"parse-ktx.js","sourceRoot":"","sources":["../../../src/lib/parsers/parse-ktx.ts"],"names":[],"mappings":"AAAA,aAAa;AACb,+BAA+B;AAC/B,oCAAoC;AAGpC,OAAO,EAAC,GAAG,EAAC,MAAM,0BAA0B,CAAC;AAC7C,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAC;AAC/B,OAAO,EAAC,mBAAmB,EAAC,0CAAuC;AACnE,OAAO,EAAC,kBAAkB,EAAC,sCAAmC;AAE9D,MAAM,OAAO,GAAG;IACd,8DAA8D;IAC9D,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;CACvE,CAAC;AAEF,sCAAsC;AACtC,MAAM,UAAU,KAAK,CAAC,IAAiB;IACrC,4EAA4E;IAC5E,MAAM,EAAE,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IAChC,MAAM,MAAM,GACV,EAAE,CAAC,UAAU,GAAG,OAAO,CAAC,MAAM;QAC9B,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM;QAC9B,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM;QAC9B,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM;QAC9B,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM;QAC9B,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM;QAC9B,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM;QAC9B,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM;QAC9B,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM;QAC9B,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO;QAC/B,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO;QAC/B,EAAE,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC,EAAE,CAAC,IAAI,SAAS;QACnC,EAAE,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO;IAEjC,OAAO,CAAC,MAAM,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,WAAwB;IAC/C,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,WAAW,CAAC,CAAC;IAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;IAC7B,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,CAAC;IAC7B,MAAM,MAAM,GAAG,GAAG,CAAC,WAAW,CAAC;IAC/B,MAAM,cAAc,GAAgC,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAErF,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QACjC,iFAAiF;QACjF,oFAAoF;QACpF,iFAAiF;QACjF,GAAG,CAAC,IAAI,CACN,2BAA2B,GAAG,CAAC,QAAQ,0FAA0F,CAClI,EAAE,CAAC;IACN,CAAC;IAED,OAAO,mBAAmB,CAAC,GAAG,CAAC,MAAM,EAAE;QACrC,YAAY;QACZ,KAAK;QACL,MAAM;QACN,YAAY,EAAE,CAAC,KAAU,EAAU,EAAE,CAAC,KAAK,CAAC,sBAAsB;QAClE,cAAc;KACf,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"parse-pvr.d.ts","sourceRoot":"","sources":["../../../src/lib/parsers/parse-pvr.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAwHrD;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAKhD;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,WAAW,GAAG,YAAY,EAAE,CA0B1D"}
1
+ {"version":3,"file":"parse-pvr.d.ts","sourceRoot":"","sources":["../../../src/lib/parsers/parse-pvr.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAkB,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAwHtE;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAKhD;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,WAAW,GAAG,YAAY,EAAE,CA0B1D"}