@loaders.gl/gltf 4.2.0-alpha.3 → 4.2.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 (148) hide show
  1. package/dist/dist.dev.js +1049 -517
  2. package/dist/dist.min.js +9 -0
  3. package/dist/glb-loader.d.ts +2 -2
  4. package/dist/glb-loader.d.ts.map +1 -1
  5. package/dist/glb-loader.js +22 -21
  6. package/dist/glb-writer.d.ts +2 -2
  7. package/dist/glb-writer.d.ts.map +1 -1
  8. package/dist/glb-writer.js +27 -24
  9. package/dist/gltf-loader.d.ts +3 -3
  10. package/dist/gltf-loader.d.ts.map +1 -1
  11. package/dist/gltf-loader.js +31 -36
  12. package/dist/gltf-writer.js +24 -26
  13. package/dist/index.cjs +95 -284
  14. package/dist/index.cjs.map +7 -0
  15. package/dist/index.d.ts +17 -17
  16. package/dist/index.d.ts.map +1 -1
  17. package/dist/index.js +3 -1
  18. package/dist/lib/api/gltf-extensions.d.ts +2 -2
  19. package/dist/lib/api/gltf-extensions.d.ts.map +1 -1
  20. package/dist/lib/api/gltf-extensions.js +45 -22
  21. package/dist/lib/api/gltf-scenegraph.d.ts +2 -2
  22. package/dist/lib/api/gltf-scenegraph.d.ts.map +1 -1
  23. package/dist/lib/api/gltf-scenegraph.js +561 -438
  24. package/dist/lib/api/normalize-gltf-v1.js +250 -181
  25. package/dist/lib/api/post-process-gltf.d.ts +3 -3
  26. package/dist/lib/api/post-process-gltf.d.ts.map +1 -1
  27. package/dist/lib/api/post-process-gltf.js +375 -339
  28. package/dist/lib/encoders/encode-glb.js +62 -48
  29. package/dist/lib/encoders/encode-gltf.js +24 -10
  30. package/dist/lib/extensions/EXT_mesh_features.d.ts +2 -2
  31. package/dist/lib/extensions/EXT_mesh_features.d.ts.map +1 -1
  32. package/dist/lib/extensions/EXT_mesh_features.js +55 -33
  33. package/dist/lib/extensions/EXT_meshopt_compression.d.ts +2 -2
  34. package/dist/lib/extensions/EXT_meshopt_compression.d.ts.map +1 -1
  35. package/dist/lib/extensions/EXT_meshopt_compression.js +27 -31
  36. package/dist/lib/extensions/EXT_structural_metadata.d.ts +2 -2
  37. package/dist/lib/extensions/EXT_structural_metadata.d.ts.map +1 -1
  38. package/dist/lib/extensions/EXT_structural_metadata.js +434 -230
  39. package/dist/lib/extensions/EXT_texture_webp.d.ts +2 -2
  40. package/dist/lib/extensions/EXT_texture_webp.d.ts.map +1 -1
  41. package/dist/lib/extensions/EXT_texture_webp.js +24 -17
  42. package/dist/lib/extensions/KHR_binary_gltf.d.ts +1 -1
  43. package/dist/lib/extensions/KHR_binary_gltf.d.ts.map +1 -1
  44. package/dist/lib/extensions/KHR_binary_gltf.js +29 -15
  45. package/dist/lib/extensions/KHR_draco_mesh_compression.d.ts +2 -2
  46. package/dist/lib/extensions/KHR_draco_mesh_compression.d.ts.map +1 -1
  47. package/dist/lib/extensions/KHR_draco_mesh_compression.js +110 -87
  48. package/dist/lib/extensions/KHR_texture_basisu.d.ts +2 -2
  49. package/dist/lib/extensions/KHR_texture_basisu.d.ts.map +1 -1
  50. package/dist/lib/extensions/KHR_texture_basisu.js +19 -12
  51. package/dist/lib/extensions/KHR_texture_transform.d.ts +2 -2
  52. package/dist/lib/extensions/KHR_texture_transform.d.ts.map +1 -1
  53. package/dist/lib/extensions/KHR_texture_transform.js +194 -154
  54. package/dist/lib/extensions/deprecated/EXT_feature_metadata.d.ts +2 -2
  55. package/dist/lib/extensions/deprecated/EXT_feature_metadata.d.ts.map +1 -1
  56. package/dist/lib/extensions/deprecated/EXT_feature_metadata.js +263 -143
  57. package/dist/lib/extensions/deprecated/KHR_lights_punctual.d.ts +1 -1
  58. package/dist/lib/extensions/deprecated/KHR_lights_punctual.d.ts.map +1 -1
  59. package/dist/lib/extensions/deprecated/KHR_lights_punctual.js +44 -32
  60. package/dist/lib/extensions/deprecated/KHR_materials_unlit.d.ts +1 -1
  61. package/dist/lib/extensions/deprecated/KHR_materials_unlit.d.ts.map +1 -1
  62. package/dist/lib/extensions/deprecated/KHR_materials_unlit.js +30 -24
  63. package/dist/lib/extensions/deprecated/KHR_techniques_webgl.d.ts +1 -1
  64. package/dist/lib/extensions/deprecated/KHR_techniques_webgl.d.ts.map +1 -1
  65. package/dist/lib/extensions/deprecated/KHR_techniques_webgl.js +65 -52
  66. package/dist/lib/extensions/utils/3d-tiles-utils.d.ts +2 -2
  67. package/dist/lib/extensions/utils/3d-tiles-utils.d.ts.map +1 -1
  68. package/dist/lib/extensions/utils/3d-tiles-utils.js +298 -181
  69. package/dist/lib/gltf-utils/get-typed-array.d.ts +1 -1
  70. package/dist/lib/gltf-utils/get-typed-array.d.ts.map +1 -1
  71. package/dist/lib/gltf-utils/get-typed-array.js +54 -42
  72. package/dist/lib/gltf-utils/gltf-attribute-utils.d.ts +1 -1
  73. package/dist/lib/gltf-utils/gltf-attribute-utils.d.ts.map +1 -1
  74. package/dist/lib/gltf-utils/gltf-attribute-utils.js +58 -52
  75. package/dist/lib/gltf-utils/gltf-constants.js +27 -27
  76. package/dist/lib/gltf-utils/gltf-utils.d.ts +1 -1
  77. package/dist/lib/gltf-utils/gltf-utils.d.ts.map +1 -1
  78. package/dist/lib/gltf-utils/gltf-utils.js +67 -60
  79. package/dist/lib/gltf-utils/resolve-url.js +12 -10
  80. package/dist/lib/parsers/parse-glb.d.ts +1 -1
  81. package/dist/lib/parsers/parse-glb.d.ts.map +1 -1
  82. package/dist/lib/parsers/parse-glb.js +132 -89
  83. package/dist/lib/parsers/parse-gltf.d.ts +3 -3
  84. package/dist/lib/parsers/parse-gltf.d.ts.map +1 -1
  85. package/dist/lib/parsers/parse-gltf.js +155 -126
  86. package/dist/lib/types/glb-types.js +0 -1
  87. package/dist/lib/types/gltf-ext-feature-metadata-schema.d.ts +1 -1
  88. package/dist/lib/types/gltf-ext-feature-metadata-schema.d.ts.map +1 -1
  89. package/dist/lib/types/gltf-ext-feature-metadata-schema.js +0 -1
  90. package/dist/lib/types/gltf-ext-mesh-features-schema.d.ts +1 -1
  91. package/dist/lib/types/gltf-ext-mesh-features-schema.d.ts.map +1 -1
  92. package/dist/lib/types/gltf-ext-mesh-features-schema.js +0 -1
  93. package/dist/lib/types/gltf-ext-structural-metadata-schema.d.ts +1 -1
  94. package/dist/lib/types/gltf-ext-structural-metadata-schema.d.ts.map +1 -1
  95. package/dist/lib/types/gltf-ext-structural-metadata-schema.js +0 -1
  96. package/dist/lib/types/gltf-json-schema.js +2 -1
  97. package/dist/lib/types/gltf-postprocessed-schema.js +2 -1
  98. package/dist/lib/types/gltf-types.d.ts +3 -3
  99. package/dist/lib/types/gltf-types.d.ts.map +1 -1
  100. package/dist/lib/types/gltf-types.js +1 -1
  101. package/dist/lib/utils/assert.js +6 -4
  102. package/dist/lib/utils/version.js +4 -2
  103. package/dist/meshopt/meshopt-decoder.js +86 -67
  104. package/dist/webp/webp.js +28 -19
  105. package/package.json +12 -8
  106. package/dist/glb-loader.js.map +0 -1
  107. package/dist/glb-writer.js.map +0 -1
  108. package/dist/gltf-loader.js.map +0 -1
  109. package/dist/gltf-writer.js.map +0 -1
  110. package/dist/index.js.map +0 -1
  111. package/dist/lib/api/gltf-extensions.js.map +0 -1
  112. package/dist/lib/api/gltf-scenegraph.js.map +0 -1
  113. package/dist/lib/api/normalize-gltf-v1.js.map +0 -1
  114. package/dist/lib/api/post-process-gltf.js.map +0 -1
  115. package/dist/lib/encoders/encode-glb.js.map +0 -1
  116. package/dist/lib/encoders/encode-gltf.js.map +0 -1
  117. package/dist/lib/extensions/EXT_mesh_features.js.map +0 -1
  118. package/dist/lib/extensions/EXT_meshopt_compression.js.map +0 -1
  119. package/dist/lib/extensions/EXT_structural_metadata.js.map +0 -1
  120. package/dist/lib/extensions/EXT_texture_webp.js.map +0 -1
  121. package/dist/lib/extensions/KHR_binary_gltf.js.map +0 -1
  122. package/dist/lib/extensions/KHR_draco_mesh_compression.js.map +0 -1
  123. package/dist/lib/extensions/KHR_texture_basisu.js.map +0 -1
  124. package/dist/lib/extensions/KHR_texture_transform.js.map +0 -1
  125. package/dist/lib/extensions/deprecated/EXT_feature_metadata.js.map +0 -1
  126. package/dist/lib/extensions/deprecated/KHR_lights_punctual.js.map +0 -1
  127. package/dist/lib/extensions/deprecated/KHR_materials_unlit.js.map +0 -1
  128. package/dist/lib/extensions/deprecated/KHR_techniques_webgl.js.map +0 -1
  129. package/dist/lib/extensions/utils/3d-tiles-utils.js.map +0 -1
  130. package/dist/lib/gltf-utils/get-typed-array.js.map +0 -1
  131. package/dist/lib/gltf-utils/gltf-attribute-utils.js.map +0 -1
  132. package/dist/lib/gltf-utils/gltf-constants.js.map +0 -1
  133. package/dist/lib/gltf-utils/gltf-utils.js.map +0 -1
  134. package/dist/lib/gltf-utils/resolve-url.js.map +0 -1
  135. package/dist/lib/parsers/parse-glb.js.map +0 -1
  136. package/dist/lib/parsers/parse-gltf.js.map +0 -1
  137. package/dist/lib/types/glb-types.js.map +0 -1
  138. package/dist/lib/types/gltf-ext-feature-metadata-schema.js.map +0 -1
  139. package/dist/lib/types/gltf-ext-mesh-features-schema.js.map +0 -1
  140. package/dist/lib/types/gltf-ext-structural-metadata-schema.js.map +0 -1
  141. package/dist/lib/types/gltf-json-schema.js.map +0 -1
  142. package/dist/lib/types/gltf-postprocessed-schema.js.map +0 -1
  143. package/dist/lib/types/gltf-types.js.map +0 -1
  144. package/dist/lib/utils/assert.js.map +0 -1
  145. package/dist/lib/utils/version.js.map +0 -1
  146. package/dist/meshopt/meshopt-decoder.js.map +0 -1
  147. package/dist/meshopt/meshopt-encoder.ts.disabled +0 -409
  148. package/dist/webp/webp.js.map +0 -1
package/dist/index.cjs CHANGED
@@ -17,9 +17,9 @@ var __copyProps = (to, from, except, desc) => {
17
17
  };
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
 
20
- // src/index.ts
21
- var src_exports = {};
22
- __export(src_exports, {
20
+ // dist/index.js
21
+ var dist_exports = {};
22
+ __export(dist_exports, {
23
23
  EXT_FEATURE_METADATA: () => name3,
24
24
  EXT_MESH_FEATURES: () => name,
25
25
  EXT_STRUCTURAL_METADATA: () => name2,
@@ -31,27 +31,27 @@ __export(src_exports, {
31
31
  _getMemoryUsageGLTF: () => getMemoryUsageGLTF,
32
32
  postProcessGLTF: () => postProcessGLTF
33
33
  });
34
- module.exports = __toCommonJS(src_exports);
34
+ module.exports = __toCommonJS(dist_exports);
35
35
 
36
- // src/lib/extensions/EXT_mesh_features.ts
36
+ // dist/lib/extensions/EXT_mesh_features.js
37
37
  var EXT_mesh_features_exports = {};
38
38
  __export(EXT_mesh_features_exports, {
39
39
  decode: () => decode,
40
40
  name: () => name
41
41
  });
42
42
 
43
- // src/lib/api/gltf-scenegraph.ts
43
+ // dist/lib/api/gltf-scenegraph.js
44
44
  var import_images = require("@loaders.gl/images");
45
45
  var import_loader_utils = require("@loaders.gl/loader-utils");
46
46
 
47
- // src/lib/utils/assert.ts
47
+ // dist/lib/utils/assert.js
48
48
  function assert(condition, message) {
49
49
  if (!condition) {
50
50
  throw new Error(message || "assert failed: gltf");
51
51
  }
52
52
  }
53
53
 
54
- // src/lib/gltf-utils/gltf-constants.ts
54
+ // dist/lib/gltf-utils/gltf-constants.js
55
55
  var COMPONENTS = {
56
56
  SCALAR: 1,
57
57
  VEC2: 2,
@@ -76,7 +76,7 @@ var BYTES = {
76
76
  // FLOAT
77
77
  };
78
78
 
79
- // src/lib/gltf-utils/gltf-utils.ts
79
+ // dist/lib/gltf-utils/gltf-utils.js
80
80
  var MIPMAP_FACTOR = 1.33;
81
81
  var TYPES = ["SCALAR", "VEC2", "VEC3", "VEC4"];
82
82
  var ARRAY_CONSTRUCTOR_TO_WEBGL_CONSTANT = [
@@ -88,9 +88,7 @@ var ARRAY_CONSTRUCTOR_TO_WEBGL_CONSTANT = [
88
88
  [Float32Array, 5126],
89
89
  [Float64Array, 5130]
90
90
  ];
91
- var ARRAY_TO_COMPONENT_TYPE = new Map(
92
- ARRAY_CONSTRUCTOR_TO_WEBGL_CONSTANT
93
- );
91
+ var ARRAY_TO_COMPONENT_TYPE = new Map(ARRAY_CONSTRUCTOR_TO_WEBGL_CONSTANT);
94
92
  var ATTRIBUTE_TYPE_TO_COMPONENTS = {
95
93
  SCALAR: 1,
96
94
  VEC2: 2,
@@ -152,7 +150,7 @@ function getMemoryUsageGLTF(gltf) {
152
150
  return bufferMemory + Math.ceil(4 * pixelCount * MIPMAP_FACTOR);
153
151
  }
154
152
 
155
- // src/lib/gltf-utils/get-typed-array.ts
153
+ // dist/lib/gltf-utils/get-typed-array.js
156
154
  function getTypedArrayForBufferView(json, buffers, bufferViewIndex) {
157
155
  const bufferView = json.bufferViews[bufferViewIndex];
158
156
  assert(bufferView);
@@ -183,17 +181,13 @@ function getTypedArrayForAccessor(json, buffers, accessor) {
183
181
  }
184
182
  const result = new ArrayType(length);
185
183
  for (let i = 0; i < gltfAccessor.count; i++) {
186
- const values = new ArrayType(
187
- arrayBuffer,
188
- byteOffset + i * elementAddressScale,
189
- numberOfComponentsInElement
190
- );
184
+ const values = new ArrayType(arrayBuffer, byteOffset + i * elementAddressScale, numberOfComponentsInElement);
191
185
  result.set(values, i * numberOfComponentsInElement);
192
186
  }
193
187
  return result;
194
188
  }
195
189
 
196
- // src/lib/api/gltf-scenegraph.ts
190
+ // dist/lib/api/gltf-scenegraph.js
197
191
  function makeDefaultGLTFJson() {
198
192
  return {
199
193
  asset: {
@@ -716,7 +710,7 @@ var GLTFScenegraph = class {
716
710
  }
717
711
  };
718
712
 
719
- // src/lib/extensions/utils/3d-tiles-utils.ts
713
+ // dist/lib/extensions/utils/3d-tiles-utils.js
720
714
  var import_images2 = require("@loaders.gl/images");
721
715
  function emod(n) {
722
716
  return (n % 1 + 1) % 1;
@@ -807,13 +801,7 @@ function getPrimitiveTextureData(scenegraph, textureInfo, primitive) {
807
801
  if (parsedImage && typeof parsedImage.width !== "undefined") {
808
802
  const textureData = [];
809
803
  for (let index = 0; index < textureCoordinates.length; index += 2) {
810
- const value = getImageValueByCoordinates(
811
- parsedImage,
812
- mimeType,
813
- textureCoordinates,
814
- index,
815
- textureInfo.channels
816
- );
804
+ const value = getImageValueByCoordinates(parsedImage, mimeType, textureCoordinates, index, textureInfo.channels);
817
805
  textureData.push(value);
818
806
  }
819
807
  return textureData;
@@ -928,7 +916,7 @@ function getPropertyDataString(numberOfElements, valuesDataBytes, arrayOffsets,
928
916
  return [];
929
917
  }
930
918
 
931
- // src/lib/extensions/EXT_mesh_features.ts
919
+ // dist/lib/extensions/EXT_mesh_features.js
932
920
  var EXT_MESH_FEATURES_NAME = "EXT_mesh_features";
933
921
  var name = EXT_MESH_FEATURES_NAME;
934
922
  async function decode(gltfData, options) {
@@ -971,7 +959,7 @@ function processMeshPrimitiveFeatures(scenegraph, primitive, options) {
971
959
  }
972
960
  }
973
961
 
974
- // src/lib/extensions/EXT_structural_metadata.ts
962
+ // dist/lib/extensions/EXT_structural_metadata.js
975
963
  var EXT_structural_metadata_exports = {};
976
964
  __export(EXT_structural_metadata_exports, {
977
965
  decode: () => decode2,
@@ -988,9 +976,7 @@ function decodeExtStructuralMetadata(scenegraph, options) {
988
976
  if (!((_a = options.gltf) == null ? void 0 : _a.loadBuffers)) {
989
977
  return;
990
978
  }
991
- const extension = scenegraph.getExtension(
992
- EXT_STRUCTURAL_METADATA_NAME
993
- );
979
+ const extension = scenegraph.getExtension(EXT_STRUCTURAL_METADATA_NAME);
994
980
  if (!extension) {
995
981
  return;
996
982
  }
@@ -1068,21 +1054,11 @@ function processPrimitivePropertyTexture(scenegraph, propertyTexture, primitive,
1068
1054
  textureInfoTopLevel.data = [];
1069
1055
  }
1070
1056
  const featureTextureTable = textureInfoTopLevel.data;
1071
- const propertyData = getPrimitiveTextureData(
1072
- scenegraph,
1073
- textureInfoTopLevel,
1074
- primitive
1075
- );
1057
+ const propertyData = getPrimitiveTextureData(scenegraph, textureInfoTopLevel, primitive);
1076
1058
  if (propertyData === null) {
1077
1059
  continue;
1078
1060
  }
1079
- primitivePropertyDataToAttributes(
1080
- scenegraph,
1081
- attributeName,
1082
- propertyData,
1083
- featureTextureTable,
1084
- primitive
1085
- );
1061
+ primitivePropertyDataToAttributes(scenegraph, attributeName, propertyData, featureTextureTable, primitive);
1086
1062
  textureInfoTopLevel.data = featureTextureTable;
1087
1063
  extension.dataAttributeNames.push(attributeName);
1088
1064
  }
@@ -1091,22 +1067,14 @@ function processPropertyTable(scenegraph, schema, propertyTable) {
1091
1067
  var _a, _b;
1092
1068
  const schemaClass = (_a = schema.classes) == null ? void 0 : _a[propertyTable.class];
1093
1069
  if (!schemaClass) {
1094
- throw new Error(
1095
- `Incorrect data in the EXT_structural_metadata extension: no schema class with name ${propertyTable.class}`
1096
- );
1070
+ throw new Error(`Incorrect data in the EXT_structural_metadata extension: no schema class with name ${propertyTable.class}`);
1097
1071
  }
1098
1072
  const numberOfElements = propertyTable.count;
1099
1073
  for (const propertyName in schemaClass.properties) {
1100
1074
  const classProperty = schemaClass.properties[propertyName];
1101
1075
  const propertyTableProperty = (_b = propertyTable.properties) == null ? void 0 : _b[propertyName];
1102
1076
  if (propertyTableProperty) {
1103
- const data = getPropertyDataFromBinarySource(
1104
- scenegraph,
1105
- schema,
1106
- classProperty,
1107
- numberOfElements,
1108
- propertyTableProperty
1109
- );
1077
+ const data = getPropertyDataFromBinarySource(scenegraph, schema, classProperty, numberOfElements, propertyTableProperty);
1110
1078
  propertyTableProperty.data = data;
1111
1079
  }
1112
1080
  }
@@ -1115,17 +1083,8 @@ function getPropertyDataFromBinarySource(scenegraph, schema, classProperty, numb
1115
1083
  let data = [];
1116
1084
  const valuesBufferView = propertyTableProperty.values;
1117
1085
  const valuesDataBytes = scenegraph.getTypedArrayForBufferView(valuesBufferView);
1118
- const arrayOffsets = getArrayOffsetsForProperty(
1119
- scenegraph,
1120
- classProperty,
1121
- propertyTableProperty,
1122
- numberOfElements
1123
- );
1124
- const stringOffsets = getStringOffsetsForProperty(
1125
- scenegraph,
1126
- propertyTableProperty,
1127
- numberOfElements
1128
- );
1086
+ const arrayOffsets = getArrayOffsetsForProperty(scenegraph, classProperty, propertyTableProperty, numberOfElements);
1087
+ const stringOffsets = getStringOffsetsForProperty(scenegraph, propertyTableProperty, numberOfElements);
1129
1088
  switch (classProperty.type) {
1130
1089
  case "SCALAR":
1131
1090
  case "VEC2":
@@ -1145,13 +1104,7 @@ function getPropertyDataFromBinarySource(scenegraph, schema, classProperty, numb
1145
1104
  break;
1146
1105
  }
1147
1106
  case "ENUM": {
1148
- data = getPropertyDataENUM(
1149
- schema,
1150
- classProperty,
1151
- numberOfElements,
1152
- valuesDataBytes,
1153
- arrayOffsets
1154
- );
1107
+ data = getPropertyDataENUM(schema, classProperty, numberOfElements, valuesDataBytes, arrayOffsets);
1155
1108
  break;
1156
1109
  }
1157
1110
  default:
@@ -1164,23 +1117,13 @@ function getArrayOffsetsForProperty(scenegraph, classProperty, propertyTableProp
1164
1117
  // If `count` is NOT defined, it's a VARIABLE-length array
1165
1118
  typeof classProperty.count === "undefined" && // `arrayOffsets` is an index of the buffer view containing offsets for variable-length arrays.
1166
1119
  typeof propertyTableProperty.arrayOffsets !== "undefined") {
1167
- return getOffsetsForProperty(
1168
- scenegraph,
1169
- propertyTableProperty.arrayOffsets,
1170
- propertyTableProperty.arrayOffsetType || "UINT32",
1171
- numberOfElements
1172
- );
1120
+ return getOffsetsForProperty(scenegraph, propertyTableProperty.arrayOffsets, propertyTableProperty.arrayOffsetType || "UINT32", numberOfElements);
1173
1121
  }
1174
1122
  return null;
1175
1123
  }
1176
1124
  function getStringOffsetsForProperty(scenegraph, propertyTableProperty, numberOfElements) {
1177
1125
  if (typeof propertyTableProperty.stringOffsets !== "undefined") {
1178
- return getOffsetsForProperty(
1179
- scenegraph,
1180
- propertyTableProperty.stringOffsets,
1181
- propertyTableProperty.stringOffsetType || "UINT32",
1182
- numberOfElements
1183
- );
1126
+ return getOffsetsForProperty(scenegraph, propertyTableProperty.stringOffsets, propertyTableProperty.stringOffsetType || "UINT32", numberOfElements);
1184
1127
  }
1185
1128
  return null;
1186
1129
  }
@@ -1203,13 +1146,7 @@ function getPropertyDataNumeric(classProperty, numberOfElements, valuesDataBytes
1203
1146
  }
1204
1147
  if (isArray) {
1205
1148
  if (arrayOffsets) {
1206
- return parseVariableLengthArrayNumeric(
1207
- valuesData,
1208
- numberOfElements,
1209
- arrayOffsets,
1210
- valuesDataBytes.length,
1211
- elementSize
1212
- );
1149
+ return parseVariableLengthArrayNumeric(valuesData, numberOfElements, arrayOffsets, valuesDataBytes.length, elementSize);
1213
1150
  }
1214
1151
  if (arrayCount) {
1215
1152
  return parseFixedLengthArrayNumeric(valuesData, numberOfElements, arrayCount);
@@ -1222,25 +1159,16 @@ function getPropertyDataENUM(schema, classProperty, numberOfElements, valuesData
1222
1159
  var _a;
1223
1160
  const enumType = classProperty.enumType;
1224
1161
  if (!enumType) {
1225
- throw new Error(
1226
- "Incorrect data in the EXT_structural_metadata extension: classProperty.enumType is not set for type ENUM"
1227
- );
1162
+ throw new Error("Incorrect data in the EXT_structural_metadata extension: classProperty.enumType is not set for type ENUM");
1228
1163
  }
1229
1164
  const enumEntry = (_a = schema.enums) == null ? void 0 : _a[enumType];
1230
1165
  if (!enumEntry) {
1231
- throw new Error(
1232
- `Incorrect data in the EXT_structural_metadata extension: schema.enums does't contain ${enumType}`
1233
- );
1166
+ throw new Error(`Incorrect data in the EXT_structural_metadata extension: schema.enums does't contain ${enumType}`);
1234
1167
  }
1235
1168
  const enumValueType = enumEntry.valueType || "UINT16";
1236
1169
  const elementSize = getArrayElementByteSize(classProperty.type, enumValueType);
1237
1170
  const elementCount = valuesDataBytes.byteLength / elementSize;
1238
- let valuesData = convertRawBufferToMetadataArray(
1239
- valuesDataBytes,
1240
- classProperty.type,
1241
- enumValueType,
1242
- elementCount
1243
- );
1171
+ let valuesData = convertRawBufferToMetadataArray(valuesDataBytes, classProperty.type, enumValueType, elementCount);
1244
1172
  if (!valuesData) {
1245
1173
  valuesData = valuesDataBytes;
1246
1174
  }
@@ -1264,14 +1192,7 @@ function getPropertyDataENUM(schema, classProperty, numberOfElements, valuesData
1264
1192
  return getEnumsArray(valuesData, 0, numberOfElements, enumEntry);
1265
1193
  }
1266
1194
  function parseVariableLengthArrayENUM(params) {
1267
- const {
1268
- valuesData,
1269
- numberOfElements,
1270
- arrayOffsets,
1271
- valuesDataBytesLength,
1272
- elementSize,
1273
- enumEntry
1274
- } = params;
1195
+ const { valuesData, numberOfElements, arrayOffsets, valuesDataBytesLength, elementSize, enumEntry } = params;
1275
1196
  const attributeValueArray = [];
1276
1197
  for (let index = 0; index < numberOfElements; index++) {
1277
1198
  const arrayOffset = arrayOffsets[index];
@@ -1321,7 +1242,7 @@ function getEnumByValue(enumEntry, value) {
1321
1242
  return null;
1322
1243
  }
1323
1244
 
1324
- // src/lib/extensions/deprecated/EXT_feature_metadata.ts
1245
+ // dist/lib/extensions/deprecated/EXT_feature_metadata.js
1325
1246
  var EXT_feature_metadata_exports = {};
1326
1247
  __export(EXT_feature_metadata_exports, {
1327
1248
  decode: () => decode3,
@@ -1405,22 +1326,14 @@ function processPropertyTable2(scenegraph, schema, propertyTable) {
1405
1326
  }
1406
1327
  const schemaClass = (_a = schema.classes) == null ? void 0 : _a[propertyTable.class];
1407
1328
  if (!schemaClass) {
1408
- throw new Error(
1409
- `Incorrect data in the EXT_structural_metadata extension: no schema class with name ${propertyTable.class}`
1410
- );
1329
+ throw new Error(`Incorrect data in the EXT_structural_metadata extension: no schema class with name ${propertyTable.class}`);
1411
1330
  }
1412
1331
  const numberOfElements = propertyTable.count;
1413
1332
  for (const propertyName in schemaClass.properties) {
1414
1333
  const classProperty = schemaClass.properties[propertyName];
1415
1334
  const propertyTableProperty = (_b = propertyTable.properties) == null ? void 0 : _b[propertyName];
1416
1335
  if (propertyTableProperty) {
1417
- const data = getPropertyDataFromBinarySource2(
1418
- scenegraph,
1419
- schema,
1420
- classProperty,
1421
- numberOfElements,
1422
- propertyTableProperty
1423
- );
1336
+ const data = getPropertyDataFromBinarySource2(scenegraph, schema, classProperty, numberOfElements, propertyTableProperty);
1424
1337
  propertyTableProperty.data = data;
1425
1338
  }
1426
1339
  }
@@ -1440,18 +1353,8 @@ function getPropertyDataFromBinarySource2(scenegraph, schema, classProperty, num
1440
1353
  let data = [];
1441
1354
  const bufferView = featureTableProperty.bufferView;
1442
1355
  const dataArray = scenegraph.getTypedArrayForBufferView(bufferView);
1443
- const arrayOffsets = getArrayOffsetsForProperty2(
1444
- scenegraph,
1445
- classProperty,
1446
- featureTableProperty,
1447
- numberOfFeatures
1448
- );
1449
- const stringOffsets = getStringOffsetsForProperty2(
1450
- scenegraph,
1451
- classProperty,
1452
- featureTableProperty,
1453
- numberOfFeatures
1454
- );
1356
+ const arrayOffsets = getArrayOffsetsForProperty2(scenegraph, classProperty, featureTableProperty, numberOfFeatures);
1357
+ const stringOffsets = getStringOffsetsForProperty2(scenegraph, classProperty, featureTableProperty, numberOfFeatures);
1455
1358
  if (classProperty.type === "STRING" || classProperty.componentType === "STRING") {
1456
1359
  data = getPropertyDataString(numberOfFeatures, dataArray, arrayOffsets, stringOffsets);
1457
1360
  } else if (isNumericProperty(classProperty)) {
@@ -1507,21 +1410,10 @@ function getPropertyDataNumeric2(classProperty, numberOfElements, valuesDataByte
1507
1410
  const componentType = classProperty.componentType || classProperty.type;
1508
1411
  const elementSize = getArrayElementByteSize(attributeType, componentType);
1509
1412
  const elementCount = valuesDataBytes.byteLength / elementSize;
1510
- const valuesData = convertRawBufferToMetadataArray(
1511
- valuesDataBytes,
1512
- attributeType,
1513
- componentType,
1514
- elementCount
1515
- );
1413
+ const valuesData = convertRawBufferToMetadataArray(valuesDataBytes, attributeType, componentType, elementCount);
1516
1414
  if (isArray) {
1517
1415
  if (arrayOffsets) {
1518
- return parseVariableLengthArrayNumeric(
1519
- valuesData,
1520
- numberOfElements,
1521
- arrayOffsets,
1522
- valuesDataBytes.length,
1523
- elementSize
1524
- );
1416
+ return parseVariableLengthArrayNumeric(valuesData, numberOfElements, arrayOffsets, valuesDataBytes.length, elementSize);
1525
1417
  }
1526
1418
  if (arrayCount) {
1527
1419
  return parseFixedLengthArrayNumeric(valuesData, numberOfElements, arrayCount);
@@ -1538,13 +1430,7 @@ function getPropertyDataFromTexture(scenegraph, featureTextureProperty, attribut
1538
1430
  const featureTextureTable = [];
1539
1431
  for (const mesh of json.meshes) {
1540
1432
  for (const primitive of mesh.primitives) {
1541
- processPrimitiveTextures(
1542
- scenegraph,
1543
- attributeName,
1544
- featureTextureProperty,
1545
- featureTextureTable,
1546
- primitive
1547
- );
1433
+ processPrimitiveTextures(scenegraph, attributeName, featureTextureProperty, featureTextureTable, primitive);
1548
1434
  }
1549
1435
  }
1550
1436
  return featureTextureTable;
@@ -1554,32 +1440,22 @@ function processPrimitiveTextures(scenegraph, attributeName, featureTexturePrope
1554
1440
  channels: featureTextureProperty.channels,
1555
1441
  ...featureTextureProperty.texture
1556
1442
  };
1557
- const propertyData = getPrimitiveTextureData(
1558
- scenegraph,
1559
- textureInfoTopLevel,
1560
- primitive
1561
- );
1443
+ const propertyData = getPrimitiveTextureData(scenegraph, textureInfoTopLevel, primitive);
1562
1444
  if (!propertyData) {
1563
1445
  return;
1564
1446
  }
1565
- primitivePropertyDataToAttributes(
1566
- scenegraph,
1567
- attributeName,
1568
- propertyData,
1569
- featureTextureTable,
1570
- primitive
1571
- );
1447
+ primitivePropertyDataToAttributes(scenegraph, attributeName, propertyData, featureTextureTable, primitive);
1572
1448
  }
1573
1449
 
1574
- // src/lib/utils/version.ts
1575
- var VERSION = typeof __VERSION__ !== "undefined" ? __VERSION__ : "latest";
1450
+ // dist/lib/utils/version.js
1451
+ var VERSION = true ? "4.2.0-alpha.4" : "latest";
1576
1452
 
1577
- // src/lib/parsers/parse-gltf.ts
1453
+ // dist/lib/parsers/parse-gltf.js
1578
1454
  var import_loader_utils4 = require("@loaders.gl/loader-utils");
1579
1455
  var import_images4 = require("@loaders.gl/images");
1580
1456
  var import_textures = require("@loaders.gl/textures");
1581
1457
 
1582
- // src/lib/parsers/parse-glb.ts
1458
+ // dist/lib/parsers/parse-glb.js
1583
1459
  var import_loader_utils2 = require("@loaders.gl/loader-utils");
1584
1460
  var LITTLE_ENDIAN = true;
1585
1461
  var MAGIC_glTF = 1735152710;
@@ -1690,7 +1566,7 @@ function parseBINChunk(glb, dataView, byteOffset, chunkLength) {
1690
1566
  return (0, import_loader_utils2.padToNBytes)(chunkLength, 4);
1691
1567
  }
1692
1568
 
1693
- // src/lib/gltf-utils/resolve-url.ts
1569
+ // dist/lib/gltf-utils/resolve-url.js
1694
1570
  function resolveUrl(url, options) {
1695
1571
  const absolute = url.startsWith("data:") || url.startsWith("http:") || url.startsWith("https:");
1696
1572
  if (absolute) {
@@ -1703,14 +1579,14 @@ function resolveUrl(url, options) {
1703
1579
  return baseUrl.substr(0, baseUrl.lastIndexOf("/") + 1) + url;
1704
1580
  }
1705
1581
 
1706
- // src/lib/extensions/EXT_meshopt_compression.ts
1582
+ // dist/lib/extensions/EXT_meshopt_compression.js
1707
1583
  var EXT_meshopt_compression_exports = {};
1708
1584
  __export(EXT_meshopt_compression_exports, {
1709
1585
  decode: () => decode5,
1710
1586
  name: () => name4
1711
1587
  });
1712
1588
 
1713
- // src/meshopt/meshopt-decoder.ts
1589
+ // dist/meshopt/meshopt-decoder.js
1714
1590
  var wasm_base = "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";
1715
1591
  var wasm_simd = "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";
1716
1592
  var detector = new Uint8Array([
@@ -1852,15 +1728,7 @@ var DECODERS = {
1852
1728
  };
1853
1729
  async function meshoptDecodeGltfBuffer(target, count, size, source, mode, filter = "NONE") {
1854
1730
  const instance = await loadWasmInstance();
1855
- decode4(
1856
- instance,
1857
- instance.exports[DECODERS[mode]],
1858
- target,
1859
- count,
1860
- size,
1861
- source,
1862
- instance.exports[FILTERS[filter || "NONE"]]
1863
- );
1731
+ decode4(instance, instance.exports[DECODERS[mode]], target, count, size, source, instance.exports[FILTERS[filter || "NONE"]]);
1864
1732
  }
1865
1733
  var wasmPromise;
1866
1734
  async function loadWasmInstance() {
@@ -1909,7 +1777,7 @@ function decode4(instance, fun, target, count, size, source, filter) {
1909
1777
  }
1910
1778
  }
1911
1779
 
1912
- // src/lib/extensions/EXT_meshopt_compression.ts
1780
+ // dist/lib/extensions/EXT_meshopt_compression.js
1913
1781
  var EXT_MESHOPT_COMPRESSION = "EXT_meshopt_compression";
1914
1782
  var name4 = EXT_MESHOPT_COMPRESSION;
1915
1783
  async function decode5(gltfData, options) {
@@ -1926,33 +1794,18 @@ async function decode5(gltfData, options) {
1926
1794
  scenegraph.removeExtension(EXT_MESHOPT_COMPRESSION);
1927
1795
  }
1928
1796
  async function decodeMeshoptBufferView(scenegraph, bufferView) {
1929
- const meshoptExtension = scenegraph.getObjectExtension(
1930
- bufferView,
1931
- EXT_MESHOPT_COMPRESSION
1932
- );
1797
+ const meshoptExtension = scenegraph.getObjectExtension(bufferView, EXT_MESHOPT_COMPRESSION);
1933
1798
  if (meshoptExtension) {
1934
- const {
1935
- byteOffset = 0,
1936
- byteLength = 0,
1937
- byteStride,
1938
- count,
1939
- mode,
1940
- filter = "NONE",
1941
- buffer: bufferIndex
1942
- } = meshoptExtension;
1799
+ const { byteOffset = 0, byteLength = 0, byteStride, count, mode, filter = "NONE", buffer: bufferIndex } = meshoptExtension;
1943
1800
  const buffer = scenegraph.gltf.buffers[bufferIndex];
1944
1801
  const source = new Uint8Array(buffer.arrayBuffer, buffer.byteOffset + byteOffset, byteLength);
1945
- const result = new Uint8Array(
1946
- scenegraph.gltf.buffers[bufferView.buffer].arrayBuffer,
1947
- bufferView.byteOffset,
1948
- bufferView.byteLength
1949
- );
1802
+ const result = new Uint8Array(scenegraph.gltf.buffers[bufferView.buffer].arrayBuffer, bufferView.byteOffset, bufferView.byteLength);
1950
1803
  await meshoptDecodeGltfBuffer(result, count, byteStride, source, mode, filter);
1951
1804
  scenegraph.removeObjectExtension(bufferView, EXT_MESHOPT_COMPRESSION);
1952
1805
  }
1953
1806
  }
1954
1807
 
1955
- // src/lib/extensions/EXT_texture_webp.ts
1808
+ // dist/lib/extensions/EXT_texture_webp.js
1956
1809
  var EXT_texture_webp_exports = {};
1957
1810
  __export(EXT_texture_webp_exports, {
1958
1811
  name: () => name5,
@@ -1971,10 +1824,7 @@ function preprocess(gltfData, options) {
1971
1824
  }
1972
1825
  const { json } = scenegraph;
1973
1826
  for (const texture of json.textures || []) {
1974
- const extension = scenegraph.getObjectExtension(
1975
- texture,
1976
- EXT_TEXTURE_WEBP
1977
- );
1827
+ const extension = scenegraph.getObjectExtension(texture, EXT_TEXTURE_WEBP);
1978
1828
  if (extension) {
1979
1829
  texture.source = extension.source;
1980
1830
  }
@@ -1983,7 +1833,7 @@ function preprocess(gltfData, options) {
1983
1833
  scenegraph.removeExtension(EXT_TEXTURE_WEBP);
1984
1834
  }
1985
1835
 
1986
- // src/lib/extensions/KHR_texture_basisu.ts
1836
+ // dist/lib/extensions/KHR_texture_basisu.js
1987
1837
  var KHR_texture_basisu_exports = {};
1988
1838
  __export(KHR_texture_basisu_exports, {
1989
1839
  name: () => name6,
@@ -1995,10 +1845,7 @@ function preprocess2(gltfData, options) {
1995
1845
  const scene = new GLTFScenegraph(gltfData);
1996
1846
  const { json } = scene;
1997
1847
  for (const texture of json.textures || []) {
1998
- const extension = scene.getObjectExtension(
1999
- texture,
2000
- KHR_TEXTURE_BASISU
2001
- );
1848
+ const extension = scene.getObjectExtension(texture, KHR_TEXTURE_BASISU);
2002
1849
  if (extension) {
2003
1850
  texture.source = extension.source;
2004
1851
  scene.removeObjectExtension(texture, KHR_TEXTURE_BASISU);
@@ -2007,7 +1854,7 @@ function preprocess2(gltfData, options) {
2007
1854
  scene.removeExtension(KHR_TEXTURE_BASISU);
2008
1855
  }
2009
1856
 
2010
- // src/lib/extensions/KHR_draco_mesh_compression.ts
1857
+ // dist/lib/extensions/KHR_draco_mesh_compression.js
2011
1858
  var KHR_draco_mesh_compression_exports = {};
2012
1859
  __export(KHR_draco_mesh_compression_exports, {
2013
1860
  decode: () => decode6,
@@ -2018,7 +1865,7 @@ __export(KHR_draco_mesh_compression_exports, {
2018
1865
  var import_loader_utils3 = require("@loaders.gl/loader-utils");
2019
1866
  var import_draco = require("@loaders.gl/draco");
2020
1867
 
2021
- // src/lib/gltf-utils/gltf-attribute-utils.ts
1868
+ // dist/lib/gltf-utils/gltf-attribute-utils.js
2022
1869
  function getGLTFAccessors(attributes) {
2023
1870
  const accessors = {};
2024
1871
  for (const name12 in attributes) {
@@ -2077,7 +1924,7 @@ function toTypedArray(array, ArrayType, convertTypedArrays = false) {
2077
1924
  return array;
2078
1925
  }
2079
1926
 
2080
- // src/lib/extensions/KHR_draco_mesh_compression.ts
1927
+ // dist/lib/extensions/KHR_draco_mesh_compression.js
2081
1928
  var KHR_DRACO_MESH_COMPRESSION = "KHR_draco_mesh_compression";
2082
1929
  var name7 = KHR_DRACO_MESH_COMPRESSION;
2083
1930
  function preprocess3(gltfData, options, context) {
@@ -2110,10 +1957,7 @@ function encode(gltfData, options = {}) {
2110
1957
  }
2111
1958
  }
2112
1959
  async function decompressPrimitive(scenegraph, primitive, options, context) {
2113
- const dracoExtension = scenegraph.getObjectExtension(
2114
- primitive,
2115
- KHR_DRACO_MESH_COMPRESSION
2116
- );
1960
+ const dracoExtension = scenegraph.getObjectExtension(primitive, KHR_DRACO_MESH_COMPRESSION);
2117
1961
  if (!dracoExtension) {
2118
1962
  return;
2119
1963
  }
@@ -2181,7 +2025,7 @@ function* makeMeshPrimitiveIterator(scenegraph) {
2181
2025
  }
2182
2026
  }
2183
2027
 
2184
- // src/lib/extensions/KHR_texture_transform.ts
2028
+ // dist/lib/extensions/KHR_texture_transform.js
2185
2029
  var KHR_texture_transform_exports = {};
2186
2030
  __export(KHR_texture_transform_exports, {
2187
2031
  decode: () => decode7,
@@ -2250,9 +2094,7 @@ function getTransformParameters(texture, processedTexCoords) {
2250
2094
  const textureInfo = (_a = texture.extensions) == null ? void 0 : _a[EXT_MESHOPT_TRANSFORM];
2251
2095
  const { texCoord: originalTexCoord = 0 } = texture;
2252
2096
  const { texCoord = originalTexCoord } = textureInfo;
2253
- const isProcessed = processedTexCoords.findIndex(
2254
- ([original, newTexCoord]) => original === originalTexCoord && newTexCoord === texCoord
2255
- ) !== -1;
2097
+ const isProcessed = processedTexCoords.findIndex(([original, newTexCoord]) => original === originalTexCoord && newTexCoord === texCoord) !== -1;
2256
2098
  if (!isProcessed) {
2257
2099
  const matrix = makeTransformationMatrix(textureInfo);
2258
2100
  if (originalTexCoord !== texCoord) {
@@ -2337,22 +2179,12 @@ function createAttribute(newTexCoord, originalAccessor, primitive, gltfData, new
2337
2179
  function makeTransformationMatrix(extensionData) {
2338
2180
  const { offset = [0, 0], rotation = 0, scale = [1, 1] } = extensionData;
2339
2181
  const translationMatrix = new import_core.Matrix3().set(1, 0, 0, 0, 1, 0, offset[0], offset[1], 1);
2340
- const rotationMatrix = scratchRotationMatrix.set(
2341
- Math.cos(rotation),
2342
- Math.sin(rotation),
2343
- 0,
2344
- -Math.sin(rotation),
2345
- Math.cos(rotation),
2346
- 0,
2347
- 0,
2348
- 0,
2349
- 1
2350
- );
2182
+ const rotationMatrix = scratchRotationMatrix.set(Math.cos(rotation), Math.sin(rotation), 0, -Math.sin(rotation), Math.cos(rotation), 0, 0, 0, 1);
2351
2183
  const scaleMatrix = scratchScaleMatrix.set(scale[0], 0, 0, 0, scale[1], 0, 0, 0, 1);
2352
2184
  return translationMatrix.multiplyRight(rotationMatrix).multiplyRight(scaleMatrix);
2353
2185
  }
2354
2186
 
2355
- // src/lib/extensions/deprecated/KHR_lights_punctual.ts
2187
+ // dist/lib/extensions/deprecated/KHR_lights_punctual.js
2356
2188
  var KHR_lights_punctual_exports = {};
2357
2189
  __export(KHR_lights_punctual_exports, {
2358
2190
  decode: () => decode8,
@@ -2395,7 +2227,7 @@ async function encode2(gltfData) {
2395
2227
  }
2396
2228
  }
2397
2229
 
2398
- // src/lib/extensions/deprecated/KHR_materials_unlit.ts
2230
+ // dist/lib/extensions/deprecated/KHR_materials_unlit.js
2399
2231
  var KHR_materials_unlit_exports = {};
2400
2232
  __export(KHR_materials_unlit_exports, {
2401
2233
  decode: () => decode9,
@@ -2430,7 +2262,7 @@ function encode3(gltfData) {
2430
2262
  }
2431
2263
  }
2432
2264
 
2433
- // src/lib/extensions/deprecated/KHR_techniques_webgl.ts
2265
+ // dist/lib/extensions/deprecated/KHR_techniques_webgl.js
2434
2266
  var KHR_techniques_webgl_exports = {};
2435
2267
  __export(KHR_techniques_webgl_exports, {
2436
2268
  decode: () => decode10,
@@ -2468,9 +2300,7 @@ function resolveTechniques(techniquesExtension, gltfScenegraph) {
2468
2300
  const textDecoder = new TextDecoder();
2469
2301
  shaders.forEach((shader) => {
2470
2302
  if (Number.isFinite(shader.bufferView)) {
2471
- shader.code = textDecoder.decode(
2472
- gltfScenegraph.getTypedArrayForBufferView(shader.bufferView)
2473
- );
2303
+ shader.code = textDecoder.decode(gltfScenegraph.getTypedArrayForBufferView(shader.bufferView));
2474
2304
  } else {
2475
2305
  throw new Error("KHR_techniques_webgl: no shader code");
2476
2306
  }
@@ -2499,7 +2329,7 @@ function resolveValues(technique, gltfScenegraph) {
2499
2329
  return values;
2500
2330
  }
2501
2331
 
2502
- // src/lib/api/gltf-extensions.ts
2332
+ // dist/lib/api/gltf-extensions.js
2503
2333
  var EXTENSIONS = [
2504
2334
  // 1.0
2505
2335
  // KHR_binary_gltf is handled separately - must be processed before other parsing starts
@@ -2539,16 +2369,13 @@ function useExtension(extensionName, options) {
2539
2369
  return !exclude;
2540
2370
  }
2541
2371
 
2542
- // src/lib/extensions/KHR_binary_gltf.ts
2372
+ // dist/lib/extensions/KHR_binary_gltf.js
2543
2373
  var KHR_BINARY_GLTF = "KHR_binary_glTF";
2544
2374
  function preprocess4(gltfData) {
2545
2375
  const gltfScenegraph = new GLTFScenegraph(gltfData);
2546
2376
  const { json } = gltfScenegraph;
2547
2377
  for (const image of json.images || []) {
2548
- const extension = gltfScenegraph.getObjectExtension(
2549
- image,
2550
- KHR_BINARY_GLTF
2551
- );
2378
+ const extension = gltfScenegraph.getObjectExtension(image, KHR_BINARY_GLTF);
2552
2379
  if (extension) {
2553
2380
  Object.assign(image, extension);
2554
2381
  }
@@ -2560,7 +2387,7 @@ function preprocess4(gltfData) {
2560
2387
  gltfScenegraph.removeExtension(KHR_BINARY_GLTF);
2561
2388
  }
2562
2389
 
2563
- // src/lib/api/normalize-gltf-v1.ts
2390
+ // dist/lib/api/normalize-gltf-v1.js
2564
2391
  var GLTF_ARRAYS = {
2565
2392
  accessors: "accessor",
2566
2393
  animations: "animation",
@@ -2774,7 +2601,7 @@ function normalizeGLTFV1(gltf, options = {}) {
2774
2601
  return new GLTFV1Normalizer().normalize(gltf, options);
2775
2602
  }
2776
2603
 
2777
- // src/lib/parsers/parse-gltf.ts
2604
+ // dist/lib/parsers/parse-gltf.js
2778
2605
  async function parseGLTF(gltf, arrayBufferOrString, byteOffset = 0, options, context) {
2779
2606
  var _a, _b, _c;
2780
2607
  parseGLTFContainerSync(gltf, arrayBufferOrString, byteOffset, options);
@@ -2882,16 +2709,11 @@ async function loadImage(gltf, image, index, options, context) {
2882
2709
  arrayBuffer = (0, import_loader_utils4.sliceArrayBuffer)(array.buffer, array.byteOffset, array.byteLength);
2883
2710
  }
2884
2711
  assert(arrayBuffer, "glTF image has no data");
2885
- let parsedImage = await (0, import_loader_utils4.parseFromContext)(
2886
- arrayBuffer,
2887
- [import_images4.ImageLoader, import_textures.BasisLoader],
2888
- {
2889
- ...options,
2890
- mimeType: image.mimeType,
2891
- basis: options.basis || { format: (0, import_textures.selectSupportedBasisFormat)() }
2892
- },
2893
- context
2894
- );
2712
+ let parsedImage = await (0, import_loader_utils4.parseFromContext)(arrayBuffer, [import_images4.ImageLoader, import_textures.BasisLoader], {
2713
+ ...options,
2714
+ mimeType: image.mimeType,
2715
+ basis: options.basis || { format: (0, import_textures.selectSupportedBasisFormat)() }
2716
+ }, context);
2895
2717
  if (parsedImage && parsedImage[0]) {
2896
2718
  parsedImage = {
2897
2719
  compressed: true,
@@ -2906,7 +2728,7 @@ async function loadImage(gltf, image, index, options, context) {
2906
2728
  gltf.images[index] = parsedImage;
2907
2729
  }
2908
2730
 
2909
- // src/gltf-loader.ts
2731
+ // dist/gltf-loader.js
2910
2732
  var GLTFLoader = {
2911
2733
  name: "glTF",
2912
2734
  id: "gltf",
@@ -2942,7 +2764,7 @@ async function parse(arrayBuffer, options = {}, context) {
2942
2764
  return await parseGLTF(gltf, arrayBuffer, byteOffset, options, context);
2943
2765
  }
2944
2766
 
2945
- // src/lib/encoders/encode-glb.ts
2767
+ // dist/lib/encoders/encode-glb.js
2946
2768
  var import_loader_utils5 = require("@loaders.gl/loader-utils");
2947
2769
  var MAGIC_glTF2 = 1179937895;
2948
2770
  var MAGIC_JSON = 1313821514;
@@ -2990,7 +2812,7 @@ function encodeGLBSync(glb, dataView, byteOffset = 0, options = {}) {
2990
2812
  return byteOffset;
2991
2813
  }
2992
2814
 
2993
- // src/lib/encoders/encode-gltf.ts
2815
+ // dist/lib/encoders/encode-gltf.js
2994
2816
  function encodeGLTFSync(gltf, arrayBuffer, byteOffset, options) {
2995
2817
  convertBuffersToBase64(gltf);
2996
2818
  return encodeGLBSync(gltf, arrayBuffer, byteOffset, options);
@@ -3001,7 +2823,7 @@ function convertBuffersToBase64(gltf, { firstBuffer = 0 } = {}) {
3001
2823
  }
3002
2824
  }
3003
2825
 
3004
- // src/gltf-writer.ts
2826
+ // dist/gltf-writer.js
3005
2827
  var GLTFWriter = {
3006
2828
  name: "glTF",
3007
2829
  id: "gltf",
@@ -3027,7 +2849,7 @@ function encodeSync(gltf, options = {}) {
3027
2849
  return arrayBuffer;
3028
2850
  }
3029
2851
 
3030
- // src/glb-loader.ts
2852
+ // dist/glb-loader.js
3031
2853
  var GLBLoader = {
3032
2854
  name: "GLB",
3033
2855
  id: "glb",
@@ -3055,7 +2877,7 @@ function parseSync(arrayBuffer, options) {
3055
2877
  return glb;
3056
2878
  }
3057
2879
 
3058
- // src/glb-writer.ts
2880
+ // dist/glb-writer.js
3059
2881
  var GLBWriter = {
3060
2882
  name: "GLB",
3061
2883
  id: "glb",
@@ -3079,7 +2901,7 @@ function encodeSync2(glb, options) {
3079
2901
  return arrayBuffer;
3080
2902
  }
3081
2903
 
3082
- // src/lib/api/post-process-gltf.ts
2904
+ // dist/lib/api/post-process-gltf.js
3083
2905
  var COMPONENTS2 = {
3084
2906
  SCALAR: 1,
3085
2907
  VEC2: 2,
@@ -3268,15 +3090,12 @@ var GLTFPostProcessor = class {
3268
3090
  node.skin = this.getSkin(gltfNode.skin);
3269
3091
  }
3270
3092
  if (gltfNode.meshes !== void 0 && gltfNode.meshes.length) {
3271
- node.mesh = gltfNode.meshes.reduce(
3272
- (accum, meshIndex) => {
3273
- const mesh = this.getMesh(meshIndex);
3274
- accum.id = mesh.id;
3275
- accum.primitives = accum.primitives.concat(mesh.primitives);
3276
- return accum;
3277
- },
3278
- { primitives: [] }
3279
- );
3093
+ node.mesh = gltfNode.meshes.reduce((accum, meshIndex) => {
3094
+ const mesh = this.getMesh(meshIndex);
3095
+ accum.id = mesh.id;
3096
+ accum.primitives = accum.primitives.concat(mesh.primitives);
3097
+ return accum;
3098
+ }, { primitives: [] });
3280
3099
  }
3281
3100
  return node;
3282
3101
  }
@@ -3382,13 +3201,7 @@ var GLTFPostProcessor = class {
3382
3201
  const byteOffset = (accessor.bufferView.byteOffset || 0) + (accessor.byteOffset || 0) + buffer.byteOffset;
3383
3202
  let cutBuffer = buffer.arrayBuffer.slice(byteOffset, byteOffset + byteLength);
3384
3203
  if (accessor.bufferView.byteStride) {
3385
- cutBuffer = this._getValueFromInterleavedBuffer(
3386
- buffer,
3387
- byteOffset,
3388
- accessor.bufferView.byteStride,
3389
- accessor.bytesPerElement,
3390
- accessor.count
3391
- );
3204
+ cutBuffer = this._getValueFromInterleavedBuffer(buffer, byteOffset, accessor.bufferView.byteStride, accessor.bytesPerElement, accessor.count);
3392
3205
  }
3393
3206
  accessor.value = new ArrayType(cutBuffer);
3394
3207
  }
@@ -3408,10 +3221,7 @@ var GLTFPostProcessor = class {
3408
3221
  const result = new Uint8Array(count * bytesPerElement);
3409
3222
  for (let i = 0; i < count; i++) {
3410
3223
  const elementOffset = byteOffset + i * byteStride;
3411
- result.set(
3412
- new Uint8Array(buffer.arrayBuffer.slice(elementOffset, elementOffset + bytesPerElement)),
3413
- i * bytesPerElement
3414
- );
3224
+ result.set(new Uint8Array(buffer.arrayBuffer.slice(elementOffset, elementOffset + bytesPerElement)), i * bytesPerElement);
3415
3225
  }
3416
3226
  return result.buffer;
3417
3227
  }
@@ -3489,3 +3299,4 @@ var GLTFPostProcessor = class {
3489
3299
  function postProcessGLTF(gltf, options) {
3490
3300
  return new GLTFPostProcessor().postProcess(gltf, options);
3491
3301
  }
3302
+ //# sourceMappingURL=index.cjs.map