@loaders.gl/textures 4.0.0-alpha.4 → 4.0.0-alpha.5

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 (144) hide show
  1. package/dist/basis-loader.d.ts +50 -0
  2. package/dist/basis-loader.d.ts.map +1 -0
  3. package/dist/basis-worker.js +116 -60
  4. package/dist/bundle.d.ts +2 -0
  5. package/dist/bundle.d.ts.map +1 -0
  6. package/dist/compressed-texture-loader.d.ts +49 -0
  7. package/dist/compressed-texture-loader.d.ts.map +1 -0
  8. package/dist/compressed-texture-loader.js +1 -1
  9. package/dist/compressed-texture-loader.js.map +1 -1
  10. package/dist/compressed-texture-worker.js +221 -123
  11. package/dist/compressed-texture-writer.d.ts +25 -0
  12. package/dist/compressed-texture-writer.d.ts.map +1 -0
  13. package/dist/crunch-loader.d.ts +21 -0
  14. package/dist/crunch-loader.d.ts.map +1 -0
  15. package/dist/crunch-worker.js +59 -26
  16. package/dist/dist.min.js +2123 -0
  17. package/dist/index.d.ts +16 -0
  18. package/dist/index.d.ts.map +1 -0
  19. package/dist/index.js +1 -1
  20. package/dist/index.js.map +1 -1
  21. package/dist/ktx2-basis-universal-texture-writer.d.ts +22 -0
  22. package/dist/ktx2-basis-universal-texture-writer.d.ts.map +1 -0
  23. package/dist/lib/encoders/encode-ktx.d.ts +2 -0
  24. package/dist/lib/encoders/encode-ktx.d.ts.map +1 -0
  25. package/dist/lib/encoders/encode-ktx2-basis-texture.d.ts +10 -0
  26. package/dist/lib/encoders/encode-ktx2-basis-texture.d.ts.map +1 -0
  27. package/dist/lib/encoders/encode-ktx2-basis-texture.js +1 -1
  28. package/dist/lib/encoders/encode-ktx2-basis-texture.js.map +1 -1
  29. package/dist/lib/encoders/encode-texture.d.ts +4 -0
  30. package/dist/lib/encoders/encode-texture.d.ts.map +1 -0
  31. package/dist/lib/encoders/encode-texture.js +2 -5
  32. package/dist/lib/encoders/encode-texture.js.map +1 -1
  33. package/dist/lib/gl-extensions.d.ts +61 -0
  34. package/dist/lib/gl-extensions.d.ts.map +1 -0
  35. package/dist/lib/{gl-constants.js → gl-extensions.js} +2 -2
  36. package/dist/lib/gl-extensions.js.map +1 -0
  37. package/dist/lib/parsers/basis-module-loader.d.ts +13 -0
  38. package/dist/lib/parsers/basis-module-loader.d.ts.map +1 -0
  39. package/dist/lib/parsers/basis-module-loader.js +1 -1
  40. package/dist/lib/parsers/crunch-module-loader.d.ts +7 -0
  41. package/dist/lib/parsers/crunch-module-loader.d.ts.map +1 -0
  42. package/dist/lib/parsers/crunch-module-loader.js +1 -1
  43. package/dist/lib/parsers/crunch-module-loader.js.map +1 -1
  44. package/dist/lib/parsers/parse-basis.d.ts +18 -0
  45. package/dist/lib/parsers/parse-basis.d.ts.map +1 -0
  46. package/dist/lib/parsers/parse-basis.js +16 -16
  47. package/dist/lib/parsers/parse-basis.js.map +1 -1
  48. package/dist/lib/parsers/parse-compressed-texture.d.ts +8 -0
  49. package/dist/lib/parsers/parse-compressed-texture.d.ts.map +1 -0
  50. package/dist/lib/parsers/parse-compressed-texture.js.map +1 -1
  51. package/dist/lib/parsers/parse-crunch.d.ts +9 -0
  52. package/dist/lib/parsers/parse-crunch.d.ts.map +1 -0
  53. package/dist/lib/parsers/parse-crunch.js +14 -13
  54. package/dist/lib/parsers/parse-crunch.js.map +1 -1
  55. package/dist/lib/parsers/parse-dds.d.ts +28 -0
  56. package/dist/lib/parsers/parse-dds.d.ts.map +1 -0
  57. package/dist/lib/parsers/parse-dds.js +7 -7
  58. package/dist/lib/parsers/parse-dds.js.map +1 -1
  59. package/dist/lib/parsers/parse-ktx.d.ts +4 -0
  60. package/dist/lib/parsers/parse-ktx.d.ts.map +1 -0
  61. package/dist/lib/parsers/parse-ktx.js.map +1 -1
  62. package/dist/lib/parsers/parse-npy.d.ts +10 -0
  63. package/dist/lib/parsers/parse-npy.d.ts.map +1 -0
  64. package/dist/lib/parsers/parse-npy.js.map +1 -1
  65. package/dist/lib/parsers/parse-pvr.d.ts +15 -0
  66. package/dist/lib/parsers/parse-pvr.d.ts.map +1 -0
  67. package/dist/lib/parsers/parse-pvr.js +28 -28
  68. package/dist/lib/parsers/parse-pvr.js.map +1 -1
  69. package/dist/lib/texture-api/async-deep-map.d.ts +5 -0
  70. package/dist/lib/texture-api/async-deep-map.d.ts.map +1 -0
  71. package/dist/lib/texture-api/deep-load.d.ts +5 -0
  72. package/dist/lib/texture-api/deep-load.d.ts.map +1 -0
  73. package/dist/lib/texture-api/generate-url.d.ts +3 -0
  74. package/dist/lib/texture-api/generate-url.d.ts.map +1 -0
  75. package/dist/lib/texture-api/load-image-array.d.ts +4 -0
  76. package/dist/lib/texture-api/load-image-array.d.ts.map +1 -0
  77. package/dist/lib/texture-api/load-image-cube.d.ts +12 -0
  78. package/dist/lib/texture-api/load-image-cube.d.ts.map +1 -0
  79. package/dist/lib/texture-api/load-image.d.ts +8 -0
  80. package/dist/lib/texture-api/load-image.d.ts.map +1 -0
  81. package/dist/lib/texture-api/texture-api-types.d.ts +10 -0
  82. package/dist/lib/texture-api/texture-api-types.d.ts.map +1 -0
  83. package/dist/lib/utils/extract-mipmap-images.d.ts +20 -0
  84. package/dist/lib/utils/extract-mipmap-images.d.ts.map +1 -0
  85. package/dist/lib/utils/extract-mipmap-images.js.map +1 -1
  86. package/dist/lib/utils/ktx-format-helper.d.ts +9 -0
  87. package/dist/lib/utils/ktx-format-helper.d.ts.map +1 -0
  88. package/dist/lib/utils/ktx-format-helper.js +67 -67
  89. package/dist/lib/utils/ktx-format-helper.js.map +1 -1
  90. package/dist/lib/utils/texture-formats.d.ts +8 -0
  91. package/dist/lib/utils/texture-formats.d.ts.map +1 -0
  92. package/dist/lib/utils/texture-formats.js.map +1 -1
  93. package/dist/lib/utils/version.d.ts +2 -0
  94. package/dist/lib/utils/version.d.ts.map +1 -0
  95. package/dist/lib/utils/version.js +1 -1
  96. package/dist/libs/README.md +2 -2
  97. package/dist/libs/basis_encoder.js +1 -1
  98. package/dist/libs/basis_transcoder.js +1 -1
  99. package/dist/libs/crunch.js +1 -0
  100. package/dist/libs/libs/README.md +9 -0
  101. package/dist/libs/libs/basis_encoder.js +22 -0
  102. package/dist/libs/libs/basis_encoder.wasm +0 -0
  103. package/dist/libs/libs/basis_transcoder.js +21 -0
  104. package/dist/libs/libs/basis_transcoder.wasm +0 -0
  105. package/dist/libs/libs/crunch.js +136 -0
  106. package/dist/npy-loader.d.ts +45 -0
  107. package/dist/npy-loader.d.ts.map +1 -0
  108. package/dist/npy-worker.js +1 -1
  109. package/dist/types.d.ts +1 -0
  110. package/dist/types.d.ts.map +1 -0
  111. package/dist/types.js +1 -1
  112. package/dist/workers/basis-worker.d.ts +2 -0
  113. package/dist/workers/basis-worker.d.ts.map +1 -0
  114. package/dist/workers/compressed-texture-worker.d.ts +2 -0
  115. package/dist/workers/compressed-texture-worker.d.ts.map +1 -0
  116. package/dist/workers/crunch-worker.d.ts +21 -0
  117. package/dist/workers/crunch-worker.d.ts.map +1 -0
  118. package/dist/workers/npy-worker.d.ts +2 -0
  119. package/dist/workers/npy-worker.d.ts.map +1 -0
  120. package/package.json +12 -11
  121. package/src/compressed-texture-loader.ts +1 -1
  122. package/src/index.ts +2 -2
  123. package/src/lib/encoders/encode-ktx2-basis-texture.ts +2 -2
  124. package/src/lib/encoders/encode-texture.ts +6 -6
  125. package/src/lib/{gl-constants.ts → gl-extensions.ts} +1 -1
  126. package/src/lib/parsers/crunch-module-loader.ts +1 -1
  127. package/src/lib/parsers/{parse-basis.js → parse-basis.ts} +100 -44
  128. package/src/lib/parsers/parse-compressed-texture.ts +1 -1
  129. package/src/lib/parsers/parse-crunch.ts +16 -15
  130. package/src/lib/parsers/parse-dds.ts +8 -8
  131. package/src/lib/parsers/parse-ktx.ts +2 -1
  132. package/src/lib/parsers/parse-npy.ts +2 -0
  133. package/src/lib/parsers/parse-pvr.ts +72 -29
  134. package/src/lib/utils/extract-mipmap-images.ts +9 -1
  135. package/src/lib/utils/ktx-format-helper.ts +67 -67
  136. package/src/lib/utils/texture-formats.ts +1 -1
  137. package/src/libs/README.md +2 -2
  138. package/src/libs/basis_encoder.js +1 -1
  139. package/src/libs/basis_transcoder.js +1 -1
  140. package/src/libs/crunch.js +1 -0
  141. package/src/types.ts +0 -30
  142. package/dist/lib/gl-constants.js.map +0 -1
  143. package/src/lib/parsers/parse-ktx.js +0 -45
  144. package/src/lib/parsers/parse-npy.js +0 -96
@@ -1,114 +1,114 @@
1
- import {GL} from '../gl-constants';
1
+ import {GL_EXTENSIONS_CONSTANTS} from '../gl-extensions';
2
2
 
3
3
  const VULKAN_TO_WEBGL_FORMAT_MAP: Record<number, number> = {
4
- 131: GL.COMPRESSED_RGB_S3TC_DXT1_EXT,
5
- 132: GL.COMPRESSED_SRGB_S3TC_DXT1_EXT,
6
- 133: GL.COMPRESSED_RGBA_S3TC_DXT1_EXT,
7
- 134: GL.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT,
8
- 135: GL.COMPRESSED_RGBA_S3TC_DXT3_EXT,
9
- 136: GL.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT,
10
- 137: GL.COMPRESSED_RGBA_S3TC_DXT5_EXT,
11
- 138: GL.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT,
12
- 139: GL.COMPRESSED_RED_RGTC1_EXT,
13
- 140: GL.COMPRESSED_SIGNED_RED_RGTC1_EXT,
14
- 141: GL.COMPRESSED_RED_GREEN_RGTC2_EXT,
15
- 142: GL.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT,
16
- 147: GL.COMPRESSED_RGB8_ETC2,
17
- 148: GL.COMPRESSED_SRGB8_ETC2,
18
- 149: GL.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2,
19
- 150: GL.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2,
20
- 151: GL.COMPRESSED_RGBA8_ETC2_EAC,
21
- 152: GL.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC,
22
- 153: GL.COMPRESSED_R11_EAC,
23
- 154: GL.COMPRESSED_SIGNED_R11_EAC,
24
- 155: GL.COMPRESSED_RG11_EAC,
25
- 156: GL.COMPRESSED_SIGNED_RG11_EAC,
4
+ 131: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT,
5
+ 132: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_S3TC_DXT1_EXT,
6
+ 133: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT1_EXT,
7
+ 134: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT,
8
+ 135: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT3_EXT,
9
+ 136: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT,
10
+ 137: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT,
11
+ 138: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT,
12
+ 139: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RED_RGTC1_EXT,
13
+ 140: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_RED_RGTC1_EXT,
14
+ 141: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RED_GREEN_RGTC2_EXT,
15
+ 142: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT,
16
+ 147: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB8_ETC2,
17
+ 148: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ETC2,
18
+ 149: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2,
19
+ 150: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2,
20
+ 151: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA8_ETC2_EAC,
21
+ 152: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC,
22
+ 153: GL_EXTENSIONS_CONSTANTS.COMPRESSED_R11_EAC,
23
+ 154: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_R11_EAC,
24
+ 155: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RG11_EAC,
25
+ 156: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_RG11_EAC,
26
26
  // @ts-ignore
27
- 157: GL.COMPRESSED_RGBA_ASTC_4x4_KHR,
27
+ 157: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4x4_KHR,
28
28
  // @ts-ignore
29
- 158: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR,
29
+ 158: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR,
30
30
  // @ts-ignore
31
- 159: GL.COMPRESSED_RGBA_ASTC_5x4_KHR,
31
+ 159: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x4_KHR,
32
32
  // @ts-ignore
33
- 160: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR,
33
+ 160: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR,
34
34
  // @ts-ignore
35
- 161: GL.COMPRESSED_RGBA_ASTC_5x5_KHR,
35
+ 161: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x5_KHR,
36
36
  // @ts-ignore
37
- 162: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR,
37
+ 162: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR,
38
38
  // @ts-ignore
39
- 163: GL.COMPRESSED_RGBA_ASTC_6x5_KHR,
39
+ 163: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x5_KHR,
40
40
  // @ts-ignore
41
- 164: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR,
41
+ 164: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR,
42
42
  // @ts-ignore
43
- 165: GL.COMPRESSED_RGBA_ASTC_6x6_KHR,
43
+ 165: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x6_KHR,
44
44
  // @ts-ignore
45
- 166: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR,
45
+ 166: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR,
46
46
  // @ts-ignore
47
- 167: GL.COMPRESSED_RGBA_ASTC_8x5_KHR,
47
+ 167: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x5_KHR,
48
48
  // @ts-ignore
49
- 168: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR,
49
+ 168: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR,
50
50
  // @ts-ignore
51
- 169: GL.COMPRESSED_RGBA_ASTC_8x6_KHR,
51
+ 169: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x6_KHR,
52
52
  // @ts-ignore
53
- 170: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR,
53
+ 170: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR,
54
54
  // @ts-ignore
55
- 171: GL.COMPRESSED_RGBA_ASTC_8x8_KHR,
55
+ 171: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x8_KHR,
56
56
  // @ts-ignore
57
- 172: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR,
57
+ 172: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR,
58
58
  // @ts-ignore
59
- 173: GL.COMPRESSED_RGBA_ASTC_10x5_KHR,
59
+ 173: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x5_KHR,
60
60
  // @ts-ignore
61
- 174: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR,
61
+ 174: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR,
62
62
  // @ts-ignore
63
- 175: GL.COMPRESSED_RGBA_ASTC_10x6_KHR,
63
+ 175: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x6_KHR,
64
64
  // @ts-ignore
65
- 176: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR,
65
+ 176: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR,
66
66
  // @ts-ignore
67
- 177: GL.COMPRESSED_RGBA_ASTC_10x8_KHR,
67
+ 177: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x8_KHR,
68
68
  // @ts-ignore
69
- 178: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR,
69
+ 178: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR,
70
70
  // @ts-ignore
71
- 179: GL.COMPRESSED_RGBA_ASTC_10x10_KHR,
71
+ 179: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x10_KHR,
72
72
  // @ts-ignore
73
- 180: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR,
73
+ 180: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR,
74
74
  // @ts-ignore
75
- 181: GL.COMPRESSED_RGBA_ASTC_12x10_KHR,
75
+ 181: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x10_KHR,
76
76
  // @ts-ignore
77
- 182: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR,
77
+ 182: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR,
78
78
  // @ts-ignore
79
- 183: GL.COMPRESSED_RGBA_ASTC_12x12_KHR,
79
+ 183: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x12_KHR,
80
80
  // @ts-ignore
81
- 184: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR,
82
- 1000054000: GL.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG,
83
- 1000054001: GL.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG,
81
+ 184: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR,
82
+ 1000054000: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG,
83
+ 1000054001: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG,
84
84
  // @ts-ignore
85
- 1000066000: GL.COMPRESSED_RGBA_ASTC_4x4_KHR,
85
+ 1000066000: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4x4_KHR,
86
86
  // @ts-ignore
87
- 1000066001: GL.COMPRESSED_RGBA_ASTC_5x4_KHR,
87
+ 1000066001: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x4_KHR,
88
88
  // @ts-ignore
89
- 1000066002: GL.COMPRESSED_RGBA_ASTC_5x5_KHR,
89
+ 1000066002: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x5_KHR,
90
90
  // @ts-ignore
91
- 1000066003: GL.COMPRESSED_RGBA_ASTC_6x5_KHR,
91
+ 1000066003: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x5_KHR,
92
92
  // @ts-ignore
93
- 1000066004: GL.COMPRESSED_RGBA_ASTC_6x6_KHR,
93
+ 1000066004: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x6_KHR,
94
94
  // @ts-ignore
95
- 1000066005: GL.COMPRESSED_RGBA_ASTC_8x5_KHR,
95
+ 1000066005: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x5_KHR,
96
96
  // @ts-ignore
97
- 1000066006: GL.COMPRESSED_RGBA_ASTC_8x6_KHR,
97
+ 1000066006: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x6_KHR,
98
98
  // @ts-ignore
99
- 1000066007: GL.COMPRESSED_RGBA_ASTC_8x8_KHR,
99
+ 1000066007: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x8_KHR,
100
100
  // @ts-ignore
101
- 1000066008: GL.COMPRESSED_RGBA_ASTC_10x5_KHR,
101
+ 1000066008: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x5_KHR,
102
102
  // @ts-ignore
103
- 1000066009: GL.COMPRESSED_RGBA_ASTC_10x6_KHR,
103
+ 1000066009: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x6_KHR,
104
104
  // @ts-ignore
105
- 1000066010: GL.COMPRESSED_RGBA_ASTC_10x8_KHR,
105
+ 1000066010: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x8_KHR,
106
106
  // @ts-ignore
107
- 1000066011: GL.COMPRESSED_RGBA_ASTC_10x10_KHR,
107
+ 1000066011: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x10_KHR,
108
108
  // @ts-ignore
109
- 1000066012: GL.COMPRESSED_RGBA_ASTC_12x10_KHR,
109
+ 1000066012: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x10_KHR,
110
110
  // @ts-ignore
111
- 1000066013: GL.COMPRESSED_RGBA_ASTC_12x12_KHR
111
+ 1000066013: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x12_KHR
112
112
  };
113
113
 
114
114
  /**
@@ -1,4 +1,4 @@
1
- import type {GPUTextureFormat} from '../../types';
1
+ import type {GPUTextureFormat} from '@loaders.gl/schema';
2
2
 
3
3
  const BROWSER_PREFIXES = ['', 'WEBKIT_', 'MOZ_'];
4
4
 
@@ -1,6 +1,6 @@
1
- # Basis decoder
1
+ # Basis transcoder/encoder
2
2
 
3
- Version 1.12
3
+ Version 1.15
4
4
 
5
5
  [Website](https://github.com/BinomialLLC/basis_universal)
6
6
 
@@ -1,4 +1,4 @@
1
-
1
+ // @ts-nocheck
2
2
  var BASIS = (function() {
3
3
  var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;
4
4
  if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename;
@@ -1,4 +1,4 @@
1
-
1
+ // @ts-nocheck
2
2
  var BASIS = (function () {
3
3
  var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;
4
4
  if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename;
@@ -1,3 +1,4 @@
1
+ // @ts-nocheck
1
2
  // Shim to provide workers a usable "window" object.
2
3
  window = this;
3
4
 
package/src/types.ts CHANGED
@@ -1,30 +0,0 @@
1
- /**
2
- * These represent the main compressed texture formats
3
- * Each format typically has a number of more specific subformats
4
- */
5
- export type GPUTextureFormat =
6
- | 'dxt'
7
- | 'dxt-srgb'
8
- | 'etc1'
9
- | 'etc2'
10
- | 'pvrtc'
11
- | 'atc'
12
- | 'astc'
13
- | 'rgtc';
14
-
15
- export interface TextureLevel {
16
- compressed: boolean;
17
- format: number;
18
- data: Uint8Array;
19
- witdh: number;
20
- height: number;
21
- levelSize?: number;
22
- }
23
-
24
- export interface CompressedTextureExtractOptions {
25
- mipMapLevels: number;
26
- width: number;
27
- height: number;
28
- sizeFunction: Function;
29
- internalFormat: number;
30
- }
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/lib/gl-constants.ts"],"names":["GL","COMPRESSED_RGB_S3TC_DXT1_EXT","COMPRESSED_RGBA_S3TC_DXT1_EXT","COMPRESSED_RGBA_S3TC_DXT3_EXT","COMPRESSED_RGBA_S3TC_DXT5_EXT","COMPRESSED_R11_EAC","COMPRESSED_SIGNED_R11_EAC","COMPRESSED_RG11_EAC","COMPRESSED_SIGNED_RG11_EAC","COMPRESSED_RGB8_ETC2","COMPRESSED_RGBA8_ETC2_EAC","COMPRESSED_SRGB8_ETC2","COMPRESSED_SRGB8_ALPHA8_ETC2_EAC","COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2","COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2","COMPRESSED_RGB_PVRTC_4BPPV1_IMG","COMPRESSED_RGBA_PVRTC_4BPPV1_IMG","COMPRESSED_RGB_PVRTC_2BPPV1_IMG","COMPRESSED_RGBA_PVRTC_2BPPV1_IMG","COMPRESSED_RGB_ETC1_WEBGL","COMPRESSED_RGB_ATC_WEBGL","COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL","COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL","COMPRESSED_RGBA_ASTC_4X4_KHR","COMPRESSED_RGBA_ASTC_5X4_KHR","COMPRESSED_RGBA_ASTC_5X5_KHR","COMPRESSED_RGBA_ASTC_6X5_KHR","COMPRESSED_RGBA_ASTC_6X6_KHR","COMPRESSED_RGBA_ASTC_8X5_KHR","COMPRESSED_RGBA_ASTC_8X6_KHR","COMPRESSED_RGBA_ASTC_8X8_KHR","COMPRESSED_RGBA_ASTC_10X5_KHR","COMPRESSED_RGBA_ASTC_10X6_KHR","COMPRESSED_RGBA_ASTC_10X8_KHR","COMPRESSED_RGBA_ASTC_10X10_KHR","COMPRESSED_RGBA_ASTC_12X10_KHR","COMPRESSED_RGBA_ASTC_12X12_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_4X4_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_5X5_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_6X5_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_6X6_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_8X5_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_8X6_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_8X8_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_10X5_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_10X6_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_10X8_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR","COMPRESSED_RED_RGTC1_EXT","COMPRESSED_SIGNED_RED_RGTC1_EXT","COMPRESSED_RED_GREEN_RGTC2_EXT","COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT","COMPRESSED_SRGB_S3TC_DXT1_EXT","COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT","COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT","COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT"],"mappings":"AACA,OAAO,MAAMA,EAAE,GAAG;AAGhBC,EAAAA,4BAA4B,EAAE,MAHd;AAIhBC,EAAAA,6BAA6B,EAAE,MAJf;AAKhBC,EAAAA,6BAA6B,EAAE,MALf;AAMhBC,EAAAA,6BAA6B,EAAE,MANf;AAUhBC,EAAAA,kBAAkB,EAAE,MAVJ;AAWhBC,EAAAA,yBAAyB,EAAE,MAXX;AAYhBC,EAAAA,mBAAmB,EAAE,MAZL;AAahBC,EAAAA,0BAA0B,EAAE,MAbZ;AAchBC,EAAAA,oBAAoB,EAAE,MAdN;AAehBC,EAAAA,yBAAyB,EAAE,MAfX;AAgBhBC,EAAAA,qBAAqB,EAAE,MAhBP;AAiBhBC,EAAAA,gCAAgC,EAAE,MAjBlB;AAkBhBC,EAAAA,wCAAwC,EAAE,MAlB1B;AAmBhBC,EAAAA,yCAAyC,EAAE,MAnB3B;AAuBhBC,EAAAA,+BAA+B,EAAE,MAvBjB;AAwBhBC,EAAAA,gCAAgC,EAAE,MAxBlB;AAyBhBC,EAAAA,+BAA+B,EAAE,MAzBjB;AA0BhBC,EAAAA,gCAAgC,EAAE,MA1BlB;AA8BhBC,EAAAA,yBAAyB,EAAE,MA9BX;AAkChBC,EAAAA,wBAAwB,EAAE,MAlCV;AAmChBC,EAAAA,wCAAwC,EAAE,MAnC1B;AAoChBC,EAAAA,4CAA4C,EAAE,MApC9B;AAwChBC,EAAAA,4BAA4B,EAAE,MAxCd;AAyChBC,EAAAA,4BAA4B,EAAE,MAzCd;AA0ChBC,EAAAA,4BAA4B,EAAE,MA1Cd;AA2ChBC,EAAAA,4BAA4B,EAAE,MA3Cd;AA4ChBC,EAAAA,4BAA4B,EAAE,MA5Cd;AA6ChBC,EAAAA,4BAA4B,EAAE,MA7Cd;AA8ChBC,EAAAA,4BAA4B,EAAE,MA9Cd;AA+ChBC,EAAAA,4BAA4B,EAAE,MA/Cd;AAgDhBC,EAAAA,6BAA6B,EAAE,MAhDf;AAiDhBC,EAAAA,6BAA6B,EAAE,MAjDf;AAkDhBC,EAAAA,6BAA6B,EAAE,MAlDf;AAmDhBC,EAAAA,8BAA8B,EAAE,MAnDhB;AAoDhBC,EAAAA,8BAA8B,EAAE,MApDhB;AAqDhBC,EAAAA,8BAA8B,EAAE,MArDhB;AAsDhBC,EAAAA,oCAAoC,EAAE,MAtDtB;AAuDhBC,EAAAA,oCAAoC,EAAE,MAvDtB;AAwDhBC,EAAAA,oCAAoC,EAAE,MAxDtB;AAyDhBC,EAAAA,oCAAoC,EAAE,MAzDtB;AA0DhBC,EAAAA,oCAAoC,EAAE,MA1DtB;AA2DhBC,EAAAA,oCAAoC,EAAE,MA3DtB;AA4DhBC,EAAAA,oCAAoC,EAAE,MA5DtB;AA6DhBC,EAAAA,oCAAoC,EAAE,MA7DtB;AA8DhBC,EAAAA,qCAAqC,EAAE,MA9DvB;AA+DhBC,EAAAA,qCAAqC,EAAE,MA/DvB;AAgEhBC,EAAAA,qCAAqC,EAAE,MAhEvB;AAiEhBC,EAAAA,sCAAsC,EAAE,MAjExB;AAkEhBC,EAAAA,sCAAsC,EAAE,MAlExB;AAmEhBC,EAAAA,sCAAsC,EAAE,MAnExB;AAuEhBC,EAAAA,wBAAwB,EAAE,MAvEV;AAwEhBC,EAAAA,+BAA+B,EAAE,MAxEjB;AAyEhBC,EAAAA,8BAA8B,EAAE,MAzEhB;AA0EhBC,EAAAA,qCAAqC,EAAE,MA1EvB;AA8EhBC,EAAAA,6BAA6B,EAAE,MA9Ef;AA+EhBC,EAAAA,mCAAmC,EAAE,MA/ErB;AAgFhBC,EAAAA,mCAAmC,EAAE,MAhFrB;AAiFhBC,EAAAA,mCAAmC,EAAE;AAjFrB,CAAX","sourcesContent":["/* eslint-disable camelcase */\nexport const GL = {\n // WEBGL_compressed_texture_s3tc\n\n COMPRESSED_RGB_S3TC_DXT1_EXT: 0x83f0,\n COMPRESSED_RGBA_S3TC_DXT1_EXT: 0x83f1,\n COMPRESSED_RGBA_S3TC_DXT3_EXT: 0x83f2,\n COMPRESSED_RGBA_S3TC_DXT5_EXT: 0x83f3,\n\n // WEBGL_compressed_texture_es3\n\n COMPRESSED_R11_EAC: 0x9270,\n COMPRESSED_SIGNED_R11_EAC: 0x9271,\n COMPRESSED_RG11_EAC: 0x9272,\n COMPRESSED_SIGNED_RG11_EAC: 0x9273,\n COMPRESSED_RGB8_ETC2: 0x9274,\n COMPRESSED_RGBA8_ETC2_EAC: 0x9275,\n COMPRESSED_SRGB8_ETC2: 0x9276,\n COMPRESSED_SRGB8_ALPHA8_ETC2_EAC: 0x9277,\n COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2: 0x9278,\n COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2: 0x9279,\n\n // WEBGL_compressed_texture_pvrtc\n\n COMPRESSED_RGB_PVRTC_4BPPV1_IMG: 0x8c00,\n COMPRESSED_RGBA_PVRTC_4BPPV1_IMG: 0x8c02,\n COMPRESSED_RGB_PVRTC_2BPPV1_IMG: 0x8c01,\n COMPRESSED_RGBA_PVRTC_2BPPV1_IMG: 0x8c03,\n\n // WEBGL_compressed_texture_etc1\n\n COMPRESSED_RGB_ETC1_WEBGL: 0x8d64,\n\n // WEBGL_compressed_texture_atc\n\n COMPRESSED_RGB_ATC_WEBGL: 0x8c92,\n COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL: 0x8c93,\n COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL: 0x87ee,\n\n // WEBGL_compressed_texture_astc\n\n COMPRESSED_RGBA_ASTC_4X4_KHR: 0x93b0,\n COMPRESSED_RGBA_ASTC_5X4_KHR: 0x93b1,\n COMPRESSED_RGBA_ASTC_5X5_KHR: 0x93b2,\n COMPRESSED_RGBA_ASTC_6X5_KHR: 0x93b3,\n COMPRESSED_RGBA_ASTC_6X6_KHR: 0x93b4,\n COMPRESSED_RGBA_ASTC_8X5_KHR: 0x93b5,\n COMPRESSED_RGBA_ASTC_8X6_KHR: 0x93b6,\n COMPRESSED_RGBA_ASTC_8X8_KHR: 0x93b7,\n COMPRESSED_RGBA_ASTC_10X5_KHR: 0x93b8,\n COMPRESSED_RGBA_ASTC_10X6_KHR: 0x93b9,\n COMPRESSED_RGBA_ASTC_10X8_KHR: 0x93ba,\n COMPRESSED_RGBA_ASTC_10X10_KHR: 0x93bb,\n COMPRESSED_RGBA_ASTC_12X10_KHR: 0x93bc,\n COMPRESSED_RGBA_ASTC_12X12_KHR: 0x93bd,\n COMPRESSED_SRGB8_ALPHA8_ASTC_4X4_KHR: 0x93d0,\n COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR: 0x93d1,\n COMPRESSED_SRGB8_ALPHA8_ASTC_5X5_KHR: 0x93d2,\n COMPRESSED_SRGB8_ALPHA8_ASTC_6X5_KHR: 0x93d3,\n COMPRESSED_SRGB8_ALPHA8_ASTC_6X6_KHR: 0x93d4,\n COMPRESSED_SRGB8_ALPHA8_ASTC_8X5_KHR: 0x93d5,\n COMPRESSED_SRGB8_ALPHA8_ASTC_8X6_KHR: 0x93d6,\n COMPRESSED_SRGB8_ALPHA8_ASTC_8X8_KHR: 0x93d7,\n COMPRESSED_SRGB8_ALPHA8_ASTC_10X5_KHR: 0x93d8,\n COMPRESSED_SRGB8_ALPHA8_ASTC_10X6_KHR: 0x93d9,\n COMPRESSED_SRGB8_ALPHA8_ASTC_10X8_KHR: 0x93da,\n COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR: 0x93db,\n COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR: 0x93dc,\n COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR: 0x93dd,\n\n // EXT_texture_compression_rgtc\n\n COMPRESSED_RED_RGTC1_EXT: 0x8dbb,\n COMPRESSED_SIGNED_RED_RGTC1_EXT: 0x8dbc,\n COMPRESSED_RED_GREEN_RGTC2_EXT: 0x8dbd,\n COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT: 0x8dbe,\n\n // WEBGL_compressed_texture_s3tc_srgb\n\n COMPRESSED_SRGB_S3TC_DXT1_EXT: 0x8c4c,\n COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT: 0x8c4d,\n COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT: 0x8c4e,\n COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT: 0x8c4f\n};\n"],"file":"gl-constants.js"}
@@ -1,45 +0,0 @@
1
- import {read} from 'ktx-parse';
2
- import {extractMipmapImages} from '../utils/extract-mipmap-images';
3
- import {mapVkFormatToWebGL} from '../utils/ktx-format-helper';
4
-
5
- const KTX2_ID = [
6
- // '´', 'K', 'T', 'X', '2', '0', 'ª', '\r', '\n', '\x1A', '\n'
7
- 0xab, 0x4b, 0x54, 0x58, 0x20, 0x32, 0x30, 0xbb, 0x0d, 0x0a, 0x1a, 0x0a
8
- ];
9
-
10
- // eslint-disable-next-line complexity
11
- export function isKTX(data) {
12
- const id = new Uint8Array(data.buffer || data, data.byteOffset || 0, KTX2_ID.length);
13
- const notKTX =
14
- id[0] !== KTX2_ID[0] || // '´'
15
- id[1] !== KTX2_ID[1] || // 'K'
16
- id[2] !== KTX2_ID[2] || // 'T'
17
- id[3] !== KTX2_ID[3] || // 'X'
18
- id[4] !== KTX2_ID[4] || // ' '
19
- id[5] !== KTX2_ID[5] || // '2'
20
- id[6] !== KTX2_ID[6] || // '0'
21
- id[7] !== KTX2_ID[7] || // 'ª'
22
- id[8] !== KTX2_ID[8] || // '\r'
23
- id[9] !== KTX2_ID[9] || // '\n'
24
- id[10] !== KTX2_ID[10] || // '\x1A'
25
- id[11] !== KTX2_ID[11]; // '\n'
26
-
27
- return !notKTX;
28
- }
29
-
30
- export function parseKTX(arrayBuffer) {
31
- const uint8Array = new Uint8Array(arrayBuffer);
32
- const ktx = read(uint8Array);
33
- const mipMapLevels = Math.max(1, ktx.levels.length);
34
- const width = ktx.pixelWidth;
35
- const height = ktx.pixelHeight;
36
- const internalFormat = mapVkFormatToWebGL(ktx.vkFormat);
37
-
38
- return extractMipmapImages(ktx.levels, {
39
- mipMapLevels,
40
- width,
41
- height,
42
- sizeFunction: (level) => level.uncompressedByteLength,
43
- internalFormat
44
- });
45
- }
@@ -1,96 +0,0 @@
1
- function systemIsLittleEndian() {
2
- const a = new Uint32Array([0x12345678]);
3
- const b = new Uint8Array(a.buffer, a.byteOffset, a.byteLength);
4
- return !(b[0] === 0x12);
5
- }
6
-
7
- const LITTLE_ENDIAN_OS = systemIsLittleEndian();
8
-
9
- // The basic string format consists of 3 characters:
10
- // 1. a character describing the byteorder of the data (<: little-endian, >: big-endian, |: not-relevant)
11
- // 2. a character code giving the basic type of the array
12
- // 3. an integer providing the number of bytes the type uses.
13
- // https://numpy.org/doc/stable/reference/arrays.interface.html
14
- //
15
- // Here I only include the second and third characters, and check endianness
16
- // separately
17
- const DTYPES = {
18
- u1: Uint8Array,
19
- i1: Int8Array,
20
- u2: Uint16Array,
21
- i2: Int16Array,
22
- u4: Uint32Array,
23
- i4: Int32Array,
24
- f4: Float32Array,
25
- f8: Float64Array
26
- };
27
-
28
- export function parseNPY(arrayBuffer, options) {
29
- if (!arrayBuffer) {
30
- return null;
31
- }
32
-
33
- const view = new DataView(arrayBuffer);
34
- const {header, headerEndOffset} = parseHeader(view);
35
-
36
- const numpyType = header.descr;
37
- const ArrayType = DTYPES[numpyType.slice(1, 3)];
38
- if (!ArrayType) {
39
- // eslint-disable-next-line no-console, no-undef
40
- console.warn(`Decoding of npy dtype not implemented: ${numpyType}`);
41
- return null;
42
- }
43
-
44
- const nArrayElements = header.shape.reduce((a, b) => a * b);
45
- const arrayByteLength = nArrayElements * ArrayType.BYTES_PER_ELEMENT;
46
-
47
- const data = new ArrayType(arrayBuffer.slice(headerEndOffset, headerEndOffset + arrayByteLength));
48
-
49
- // Swap endianness if needed
50
- if ((numpyType[0] === '>' && LITTLE_ENDIAN_OS) || (numpyType[0] === '<' && !LITTLE_ENDIAN_OS)) {
51
- // eslint-disable-next-line no-console, no-undef
52
- console.warn('Data is wrong endianness, byte swapping not yet implemented.');
53
- }
54
-
55
- return {
56
- data,
57
- header
58
- };
59
- }
60
-
61
- /**
62
- * Parse NPY header
63
- *
64
- * @param {DataView} view
65
- * @return {Object}
66
- */
67
- function parseHeader(view) {
68
- const majorVersion = view.getUint8(6);
69
- // const minorVersion = view.getUint8(7);
70
-
71
- let offset = 8;
72
- let headerLength;
73
- if (majorVersion >= 2) {
74
- headerLength = view.getUint32(8, true);
75
- offset += 4;
76
- } else {
77
- headerLength = view.getUint16(8, true);
78
- offset += 2;
79
- }
80
-
81
- const encoding = majorVersion <= 2 ? 'latin1' : 'utf-8';
82
- const decoder = new TextDecoder(encoding);
83
- const headerArray = new Uint8Array(view.buffer, offset, headerLength);
84
- const headerText = decoder.decode(headerArray);
85
- offset += headerLength;
86
-
87
- const header = JSON.parse(
88
- headerText
89
- .replace(/'/g, '"')
90
- .replace('False', 'false')
91
- .replace('(', '[')
92
- .replace(/,*\),*/g, ']')
93
- );
94
-
95
- return {header, headerEndOffset: offset};
96
- }