@loaders.gl/scene 5.0.0-beta.1 → 5.0.0-beta.4

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 (541) hide show
  1. package/DRACO-README.md +15 -0
  2. package/README.md +7 -1
  3. package/THIRD-PARTY-NOTICES.md +4 -1
  4. package/dist/dist.dev.js +8894 -5137
  5. package/dist/dist.min.js +32 -24
  6. package/dist/draco/bundled.cjs +37 -0
  7. package/dist/draco/bundled.cjs.map +7 -0
  8. package/dist/draco/bundled.d.ts +6 -0
  9. package/dist/draco/bundled.d.ts.map +1 -0
  10. package/dist/draco/bundled.js +7 -0
  11. package/dist/draco/bundled.js.map +1 -0
  12. package/dist/draco/draco-format.cjs +41 -0
  13. package/dist/draco/draco-format.cjs.map +7 -0
  14. package/dist/draco/draco-format.d.ts +15 -0
  15. package/dist/draco/draco-format.d.ts.map +1 -0
  16. package/dist/draco/draco-format.js +18 -0
  17. package/dist/draco/draco-format.js.map +1 -0
  18. package/dist/draco/draco-javascript-loader-with-parser.cjs +44 -0
  19. package/dist/draco/draco-javascript-loader-with-parser.cjs.map +7 -0
  20. package/dist/draco/draco-javascript-loader-with-parser.d.ts +34 -0
  21. package/dist/draco/draco-javascript-loader-with-parser.d.ts.map +1 -0
  22. package/dist/draco/draco-javascript-loader-with-parser.js +14 -0
  23. package/dist/draco/draco-javascript-loader-with-parser.js.map +1 -0
  24. package/dist/draco/draco-libraries.cjs +61 -0
  25. package/dist/draco/draco-libraries.cjs.map +7 -0
  26. package/dist/draco/draco-libraries.d.ts +28 -0
  27. package/dist/draco/draco-libraries.d.ts.map +1 -0
  28. package/dist/draco/draco-libraries.js +33 -0
  29. package/dist/draco/draco-libraries.js.map +1 -0
  30. package/dist/draco/draco-library-options.cjs +80 -0
  31. package/dist/draco/draco-library-options.cjs.map +7 -0
  32. package/dist/draco/draco-library-options.d.ts +16 -0
  33. package/dist/draco/draco-library-options.d.ts.map +1 -0
  34. package/dist/draco/draco-library-options.js +52 -0
  35. package/dist/draco/draco-library-options.js.map +1 -0
  36. package/dist/draco/draco-loader-options.cjs +37 -0
  37. package/dist/draco/draco-loader-options.cjs.map +7 -0
  38. package/dist/draco/draco-loader-options.d.ts +27 -0
  39. package/dist/draco/draco-loader-options.d.ts.map +1 -0
  40. package/dist/draco/draco-loader-options.js +12 -0
  41. package/dist/draco/draco-loader-options.js.map +1 -0
  42. package/dist/draco/draco-loader-types.cjs +88 -0
  43. package/dist/draco/draco-loader-types.cjs.map +7 -0
  44. package/dist/draco/draco-loader-types.d.ts +69 -0
  45. package/dist/draco/draco-loader-types.d.ts.map +1 -0
  46. package/dist/draco/draco-loader-types.js +54 -0
  47. package/dist/draco/draco-loader-types.js.map +1 -0
  48. package/dist/draco/draco-loader.cjs +51 -0
  49. package/dist/draco/draco-loader.cjs.map +7 -0
  50. package/dist/draco/draco-loader.d.ts +39 -0
  51. package/dist/draco/draco-loader.d.ts.map +1 -0
  52. package/dist/draco/draco-loader.js +22 -0
  53. package/dist/draco/draco-loader.js.map +1 -0
  54. package/dist/draco/draco-wasm-loader-with-parser.cjs +48 -0
  55. package/dist/draco/draco-wasm-loader-with-parser.cjs.map +7 -0
  56. package/dist/draco/draco-wasm-loader-with-parser.d.ts +34 -0
  57. package/dist/draco/draco-wasm-loader-with-parser.d.ts.map +1 -0
  58. package/dist/draco/draco-wasm-loader-with-parser.js +14 -0
  59. package/dist/draco/draco-wasm-loader-with-parser.js.map +1 -0
  60. package/dist/draco/draco-writer.cjs +183 -0
  61. package/dist/draco/draco-writer.cjs.map +7 -0
  62. package/dist/draco/draco-writer.d.ts +97 -0
  63. package/dist/draco/draco-writer.d.ts.map +1 -0
  64. package/dist/draco/draco-writer.js +166 -0
  65. package/dist/draco/draco-writer.js.map +1 -0
  66. package/dist/draco/draco3d/draco3d-types.cjs +76 -0
  67. package/dist/draco/draco3d/draco3d-types.cjs.map +7 -0
  68. package/dist/draco/draco3d/draco3d-types.d.ts +303 -0
  69. package/dist/draco/draco3d/draco3d-types.d.ts.map +1 -0
  70. package/dist/draco/draco3d/draco3d-types.js +47 -0
  71. package/dist/draco/draco3d/draco3d-types.js.map +1 -0
  72. package/dist/draco/draco3d-loader-with-parser.cjs +50 -0
  73. package/dist/draco/draco3d-loader-with-parser.cjs.map +7 -0
  74. package/dist/draco/draco3d-loader-with-parser.d.ts +34 -0
  75. package/dist/draco/draco3d-loader-with-parser.d.ts.map +1 -0
  76. package/dist/draco/draco3d-loader-with-parser.js +21 -0
  77. package/dist/draco/draco3d-loader-with-parser.js.map +1 -0
  78. package/dist/draco/index.cjs +54 -0
  79. package/dist/draco/index.cjs.map +7 -0
  80. package/dist/draco/index.d.ts +13 -0
  81. package/dist/draco/index.d.ts.map +1 -0
  82. package/dist/draco/index.js +13 -0
  83. package/dist/draco/index.js.map +1 -0
  84. package/dist/draco/lib/draco-builder.cjs +660 -0
  85. package/dist/draco/lib/draco-builder.cjs.map +7 -0
  86. package/dist/draco/lib/draco-builder.d.ts +175 -0
  87. package/dist/draco/lib/draco-builder.d.ts.map +1 -0
  88. package/dist/draco/lib/draco-builder.js +612 -0
  89. package/dist/draco/lib/draco-builder.js.map +1 -0
  90. package/dist/draco/lib/draco-library-loader.cjs +47 -0
  91. package/dist/draco/lib/draco-library-loader.cjs.map +7 -0
  92. package/dist/draco/lib/draco-library-loader.d.ts +5 -0
  93. package/dist/draco/lib/draco-library-loader.d.ts.map +1 -0
  94. package/dist/draco/lib/draco-library-loader.js +23 -0
  95. package/dist/draco/lib/draco-library-loader.js.map +1 -0
  96. package/dist/draco/lib/draco-module-loader.cjs +281 -0
  97. package/dist/draco/lib/draco-module-loader.cjs.map +7 -0
  98. package/dist/draco/lib/draco-module-loader.d.ts +25 -0
  99. package/dist/draco/lib/draco-module-loader.d.ts.map +1 -0
  100. package/dist/draco/lib/draco-module-loader.js +220 -0
  101. package/dist/draco/lib/draco-module-loader.js.map +1 -0
  102. package/dist/draco/lib/draco-parser.cjs +598 -0
  103. package/dist/draco/lib/draco-parser.cjs.map +7 -0
  104. package/dist/draco/lib/draco-parser.d.ts +142 -0
  105. package/dist/draco/lib/draco-parser.d.ts.map +1 -0
  106. package/dist/draco/lib/draco-parser.js +595 -0
  107. package/dist/draco/lib/draco-parser.js.map +1 -0
  108. package/dist/draco/lib/draco-types.cjs +19 -0
  109. package/dist/draco/lib/draco-types.cjs.map +7 -0
  110. package/dist/draco/lib/draco-types.d.ts +59 -0
  111. package/dist/draco/lib/draco-types.d.ts.map +1 -0
  112. package/dist/draco/lib/draco-types.js +5 -0
  113. package/dist/draco/lib/draco-types.js.map +1 -0
  114. package/dist/draco/lib/parse-draco.cjs +59 -0
  115. package/dist/draco/lib/parse-draco.cjs.map +7 -0
  116. package/dist/draco/lib/parse-draco.d.ts +22 -0
  117. package/dist/draco/lib/parse-draco.d.ts.map +1 -0
  118. package/dist/draco/lib/parse-draco.js +32 -0
  119. package/dist/draco/lib/parse-draco.js.map +1 -0
  120. package/dist/draco/lib/utils/get-draco-schema.cjs +74 -0
  121. package/dist/draco/lib/utils/get-draco-schema.cjs.map +7 -0
  122. package/dist/draco/lib/utils/get-draco-schema.d.ts +7 -0
  123. package/dist/draco/lib/utils/get-draco-schema.d.ts.map +1 -0
  124. package/dist/draco/lib/utils/get-draco-schema.js +45 -0
  125. package/dist/draco/lib/utils/get-draco-schema.js.map +1 -0
  126. package/dist/draco/lib/utils/version.cjs +31 -0
  127. package/dist/draco/lib/utils/version.cjs.map +7 -0
  128. package/dist/draco/lib/utils/version.d.ts +2 -0
  129. package/dist/draco/lib/utils/version.d.ts.map +1 -0
  130. package/dist/draco/lib/utils/version.js +8 -0
  131. package/dist/draco/lib/utils/version.js.map +1 -0
  132. package/dist/draco/unbundled.cjs +33 -0
  133. package/dist/draco/unbundled.cjs.map +7 -0
  134. package/dist/draco/unbundled.d.ts +3 -0
  135. package/dist/draco/unbundled.d.ts.map +1 -0
  136. package/dist/draco/unbundled.js +5 -0
  137. package/dist/draco/unbundled.js.map +1 -0
  138. package/dist/draco/workers/draco-worker-node.cjs +8 -0
  139. package/dist/draco/workers/draco-worker-node.cjs.map +7 -0
  140. package/dist/draco/workers/draco-worker-node.d.ts +2 -0
  141. package/dist/draco/workers/draco-worker-node.d.ts.map +1 -0
  142. package/dist/draco/workers/draco-worker-node.js +9 -0
  143. package/dist/draco/workers/draco-worker-node.js.map +1 -0
  144. package/dist/draco/workers/draco-worker.cjs +7 -0
  145. package/dist/draco/workers/draco-worker.cjs.map +7 -0
  146. package/dist/draco/workers/draco-worker.d.ts +2 -0
  147. package/dist/draco/workers/draco-worker.d.ts.map +1 -0
  148. package/dist/draco/workers/draco-worker.js +7 -0
  149. package/dist/draco/workers/draco-worker.js.map +1 -0
  150. package/dist/draco/workers/draco-writer-worker-node.cjs +11 -0
  151. package/dist/draco/workers/draco-writer-worker-node.cjs.map +7 -0
  152. package/dist/draco/workers/draco-writer-worker-node.d.cts +2 -0
  153. package/dist/draco/workers/draco-writer-worker-node.d.cts.map +1 -0
  154. package/dist/draco/workers/draco-writer-worker-node.d.ts +2 -0
  155. package/dist/draco/workers/draco-writer-worker-node.d.ts.map +1 -0
  156. package/dist/draco/workers/draco-writer-worker-node.js +9 -0
  157. package/dist/draco/workers/draco-writer-worker-node.js.map +1 -0
  158. package/dist/draco/workers/draco-writer-worker.cjs +10 -0
  159. package/dist/draco/workers/draco-writer-worker.cjs.map +7 -0
  160. package/dist/draco/workers/draco-writer-worker.d.ts +2 -0
  161. package/dist/draco/workers/draco-writer-worker.d.ts.map +1 -0
  162. package/dist/draco/workers/draco-writer-worker.js +7 -0
  163. package/dist/draco/workers/draco-writer-worker.js.map +1 -0
  164. package/dist/draco-javascript-loader.cjs +25 -0
  165. package/dist/draco-javascript-loader.cjs.map +7 -0
  166. package/dist/draco-javascript-loader.d.ts +2 -0
  167. package/dist/draco-javascript-loader.d.ts.map +1 -0
  168. package/dist/draco-javascript-loader.js +3 -0
  169. package/dist/draco-javascript-loader.js.map +1 -0
  170. package/dist/draco-library-options.cjs +36 -0
  171. package/dist/draco-library-options.cjs.map +7 -0
  172. package/dist/draco-library-options.d.ts +3 -0
  173. package/dist/draco-library-options.d.ts.map +1 -0
  174. package/dist/draco-library-options.js +4 -0
  175. package/dist/draco-library-options.js.map +1 -0
  176. package/dist/draco-loader-types.cjs +25 -0
  177. package/dist/draco-loader-types.cjs.map +7 -0
  178. package/dist/draco-loader-types.d.ts +2 -0
  179. package/dist/draco-loader-types.d.ts.map +1 -0
  180. package/dist/draco-loader-types.js +3 -0
  181. package/dist/draco-loader-types.js.map +1 -0
  182. package/dist/draco-loader.cjs +25 -0
  183. package/dist/draco-loader.cjs.map +7 -0
  184. package/dist/draco-loader.d.ts +2 -0
  185. package/dist/draco-loader.d.ts.map +1 -0
  186. package/dist/draco-loader.js +3 -0
  187. package/dist/draco-loader.js.map +1 -0
  188. package/dist/draco-wasm-loader.cjs +25 -0
  189. package/dist/draco-wasm-loader.cjs.map +7 -0
  190. package/dist/draco-wasm-loader.d.ts +2 -0
  191. package/dist/draco-wasm-loader.d.ts.map +1 -0
  192. package/dist/draco-wasm-loader.js +3 -0
  193. package/dist/draco-wasm-loader.js.map +1 -0
  194. package/dist/draco-worker-node.js +28640 -0
  195. package/dist/draco-worker-node.js.map +7 -0
  196. package/dist/draco-worker.js +18481 -0
  197. package/dist/draco-worker.js.map +7 -0
  198. package/dist/draco-writer-worker-node.cjs +28855 -0
  199. package/dist/draco-writer-worker-node.cjs.map +7 -0
  200. package/dist/draco-writer-worker.js +18617 -0
  201. package/dist/draco-writer-worker.js.map +7 -0
  202. package/dist/draco-writer.cjs +25 -0
  203. package/dist/draco-writer.cjs.map +7 -0
  204. package/dist/draco-writer.d.ts +2 -0
  205. package/dist/draco-writer.d.ts.map +1 -0
  206. package/dist/draco-writer.js +3 -0
  207. package/dist/draco-writer.js.map +1 -0
  208. package/dist/draco3d-loader.cjs +25 -0
  209. package/dist/draco3d-loader.cjs.map +7 -0
  210. package/dist/draco3d-loader.d.ts +2 -0
  211. package/dist/draco3d-loader.d.ts.map +1 -0
  212. package/dist/draco3d-loader.js +3 -0
  213. package/dist/draco3d-loader.js.map +1 -0
  214. package/dist/glb-loader-types.cjs +61 -0
  215. package/dist/glb-loader-types.cjs.map +7 -0
  216. package/dist/glb-loader-types.d.ts +2 -0
  217. package/dist/glb-loader-types.d.ts.map +1 -0
  218. package/dist/glb-loader-types.js +2 -0
  219. package/dist/glb-loader-types.js.map +1 -0
  220. package/dist/glb-loader.cjs +48 -0
  221. package/dist/glb-loader.cjs.map +7 -0
  222. package/dist/glb-loader.d.ts +2 -0
  223. package/dist/glb-loader.d.ts.map +1 -0
  224. package/dist/glb-loader.js +2 -0
  225. package/dist/glb-loader.js.map +1 -0
  226. package/dist/glb-writer.cjs +53 -0
  227. package/dist/glb-writer.cjs.map +7 -0
  228. package/dist/glb-writer.d.ts +2 -0
  229. package/dist/glb-writer.d.ts.map +1 -0
  230. package/dist/glb-writer.js +2 -0
  231. package/dist/glb-writer.js.map +1 -0
  232. package/dist/gltf/glb-loader-types.cjs +1 -1
  233. package/dist/gltf/glb-loader-types.cjs.map +2 -2
  234. package/dist/gltf/glb-loader-types.d.ts +2 -2
  235. package/dist/gltf/glb-loader-types.js +1 -1
  236. package/dist/gltf/glb-loader-types.js.map +1 -1
  237. package/dist/gltf/gltf-loader-types.cjs +1 -1
  238. package/dist/gltf/gltf-loader-types.cjs.map +2 -2
  239. package/dist/gltf/gltf-loader-types.d.ts +11 -5
  240. package/dist/gltf/gltf-loader-types.d.ts.map +1 -1
  241. package/dist/gltf/gltf-loader-types.js +1 -1
  242. package/dist/gltf/gltf-loader-types.js.map +1 -1
  243. package/dist/gltf/gltf-loader.cjs.map +1 -1
  244. package/dist/gltf/gltf-loader.d.ts +4 -4
  245. package/dist/gltf/gltf-loader.d.ts.map +1 -1
  246. package/dist/gltf/index.cjs +2 -0
  247. package/dist/gltf/index.cjs.map +2 -2
  248. package/dist/gltf/index.d.ts +2 -2
  249. package/dist/gltf/index.d.ts.map +1 -1
  250. package/dist/gltf/index.js +1 -1
  251. package/dist/gltf/index.js.map +1 -1
  252. package/dist/gltf/lib/api/gltf-extensions.cjs +7 -2
  253. package/dist/gltf/lib/api/gltf-extensions.cjs.map +2 -2
  254. package/dist/gltf/lib/api/gltf-extensions.d.ts.map +1 -1
  255. package/dist/gltf/lib/api/gltf-extensions.js +7 -5
  256. package/dist/gltf/lib/api/gltf-extensions.js.map +1 -1
  257. package/dist/gltf/lib/encoders/encode-gltf-draco.cjs +12 -2
  258. package/dist/gltf/lib/encoders/encode-gltf-draco.cjs.map +2 -2
  259. package/dist/gltf/lib/encoders/encode-gltf-draco.d.ts +1 -1
  260. package/dist/gltf/lib/encoders/encode-gltf-draco.d.ts.map +1 -1
  261. package/dist/gltf/lib/encoders/encode-gltf-draco.js +1 -1
  262. package/dist/gltf/lib/encoders/encode-gltf-draco.js.map +1 -1
  263. package/dist/gltf/lib/extensions/EXT_texture_webp.cjs +1 -0
  264. package/dist/gltf/lib/extensions/EXT_texture_webp.cjs.map +2 -2
  265. package/dist/gltf/lib/extensions/EXT_texture_webp.d.ts.map +1 -1
  266. package/dist/gltf/lib/extensions/EXT_texture_webp.js +3 -0
  267. package/dist/gltf/lib/extensions/EXT_texture_webp.js.map +1 -1
  268. package/dist/gltf/lib/extensions/KHR_accessor_float64.cjs +45 -0
  269. package/dist/gltf/lib/extensions/KHR_accessor_float64.cjs.map +7 -0
  270. package/dist/gltf/lib/extensions/KHR_accessor_float64.d.ts +6 -0
  271. package/dist/gltf/lib/extensions/KHR_accessor_float64.d.ts.map +1 -0
  272. package/dist/gltf/lib/extensions/KHR_accessor_float64.js +20 -0
  273. package/dist/gltf/lib/extensions/KHR_accessor_float64.js.map +1 -0
  274. package/dist/gltf/lib/extensions/KHR_draco_mesh_compression.cjs +2 -2
  275. package/dist/gltf/lib/extensions/KHR_draco_mesh_compression.cjs.map +2 -2
  276. package/dist/gltf/lib/extensions/KHR_draco_mesh_compression.d.ts.map +1 -1
  277. package/dist/gltf/lib/extensions/KHR_draco_mesh_compression.js +1 -1
  278. package/dist/gltf/lib/extensions/KHR_draco_mesh_compression.js.map +1 -1
  279. package/dist/gltf/lib/extensions/KHR_gaussian_splatting.cjs +12 -3
  280. package/dist/gltf/lib/extensions/KHR_gaussian_splatting.cjs.map +2 -2
  281. package/dist/gltf/lib/extensions/KHR_gaussian_splatting.d.ts +2 -1
  282. package/dist/gltf/lib/extensions/KHR_gaussian_splatting.d.ts.map +1 -1
  283. package/dist/gltf/lib/extensions/KHR_gaussian_splatting.js +9 -3
  284. package/dist/gltf/lib/extensions/KHR_gaussian_splatting.js.map +1 -1
  285. package/dist/gltf/lib/extensions/MSFT_texture_dds.cjs +64 -0
  286. package/dist/gltf/lib/extensions/MSFT_texture_dds.cjs.map +7 -0
  287. package/dist/gltf/lib/extensions/MSFT_texture_dds.d.ts +12 -0
  288. package/dist/gltf/lib/extensions/MSFT_texture_dds.d.ts.map +1 -0
  289. package/dist/gltf/lib/extensions/MSFT_texture_dds.js +39 -0
  290. package/dist/gltf/lib/extensions/MSFT_texture_dds.js.map +1 -0
  291. package/dist/gltf/lib/extensions/utils/3d-tiles-utils.cjs +1 -1
  292. package/dist/gltf/lib/extensions/utils/3d-tiles-utils.cjs.map +2 -2
  293. package/dist/gltf/lib/extensions/utils/3d-tiles-utils.d.ts.map +1 -1
  294. package/dist/gltf/lib/extensions/utils/3d-tiles-utils.js +3 -1
  295. package/dist/gltf/lib/extensions/utils/3d-tiles-utils.js.map +1 -1
  296. package/dist/gltf/lib/parsers/parse-gltf.cjs +27 -2
  297. package/dist/gltf/lib/parsers/parse-gltf.cjs.map +3 -3
  298. package/dist/gltf/lib/parsers/parse-gltf.d.ts.map +1 -1
  299. package/dist/gltf/lib/parsers/parse-gltf.js +23 -5
  300. package/dist/gltf/lib/parsers/parse-gltf.js.map +1 -1
  301. package/dist/gltf/lib/types/gltf-ext-gaussian-splatting-schema.cjs.map +1 -1
  302. package/dist/gltf/lib/types/gltf-ext-gaussian-splatting-schema.d.ts +1 -1
  303. package/dist/gltf/lib/types/gltf-ext-gaussian-splatting-schema.d.ts.map +1 -1
  304. package/dist/gltf/lib/types/gltf-texture-procedurals.cjs +19 -0
  305. package/dist/gltf/lib/types/gltf-texture-procedurals.cjs.map +7 -0
  306. package/dist/gltf/lib/types/gltf-texture-procedurals.d.ts +45 -0
  307. package/dist/gltf/lib/types/gltf-texture-procedurals.d.ts.map +1 -0
  308. package/dist/gltf/lib/types/gltf-texture-procedurals.js +5 -0
  309. package/dist/gltf/lib/types/gltf-texture-procedurals.js.map +1 -0
  310. package/dist/gltf/lib/types/gltf-types.cjs.map +1 -1
  311. package/dist/gltf/lib/types/gltf-types.d.ts +7 -0
  312. package/dist/gltf/lib/types/gltf-types.d.ts.map +1 -1
  313. package/dist/gltf/lib/types/gltf-zod-schema.cjs +3 -0
  314. package/dist/gltf/lib/types/gltf-zod-schema.cjs.map +2 -2
  315. package/dist/gltf/lib/types/gltf-zod-schema.d.ts +6 -1
  316. package/dist/gltf/lib/types/gltf-zod-schema.d.ts.map +1 -1
  317. package/dist/gltf/lib/types/gltf-zod-schema.js +4 -0
  318. package/dist/gltf/lib/types/gltf-zod-schema.js.map +1 -1
  319. package/dist/gltf/lib/utils/version.cjs +1 -1
  320. package/dist/gltf/lib/utils/version.js +1 -1
  321. package/dist/gltf/schema.cjs +3 -0
  322. package/dist/gltf/schema.cjs.map +2 -2
  323. package/dist/gltf/schema.d.ts +1 -0
  324. package/dist/gltf/schema.d.ts.map +1 -1
  325. package/dist/gltf/schema.js +1 -0
  326. package/dist/gltf/schema.js.map +1 -1
  327. package/dist/gltf-loader-types.cjs +73 -0
  328. package/dist/gltf-loader-types.cjs.map +7 -0
  329. package/dist/gltf-loader-types.d.ts +2 -0
  330. package/dist/gltf-loader-types.d.ts.map +1 -0
  331. package/dist/gltf-loader-types.js +2 -0
  332. package/dist/gltf-loader-types.js.map +1 -0
  333. package/dist/gltf-loader.cjs +48 -0
  334. package/dist/gltf-loader.cjs.map +7 -0
  335. package/dist/gltf-loader.d.ts +2 -0
  336. package/dist/gltf-loader.d.ts.map +1 -0
  337. package/dist/gltf-loader.js +2 -0
  338. package/dist/gltf-loader.js.map +1 -0
  339. package/dist/gltf-source.cjs +238 -0
  340. package/dist/gltf-source.cjs.map +7 -0
  341. package/dist/gltf-source.d.ts +2 -0
  342. package/dist/gltf-source.d.ts.map +1 -0
  343. package/dist/gltf-source.js +2 -0
  344. package/dist/gltf-source.js.map +1 -0
  345. package/dist/gltf-writer.cjs +69 -0
  346. package/dist/gltf-writer.cjs.map +7 -0
  347. package/dist/gltf-writer.d.ts +2 -0
  348. package/dist/gltf-writer.d.ts.map +1 -0
  349. package/dist/gltf-writer.js +2 -0
  350. package/dist/gltf-writer.js.map +1 -0
  351. package/dist/index.cjs +16 -0
  352. package/dist/index.cjs.map +2 -2
  353. package/dist/index.d.ts +6 -0
  354. package/dist/index.d.ts.map +1 -1
  355. package/dist/index.js +4 -0
  356. package/dist/index.js.map +1 -1
  357. package/dist/libs/DRACO-LICENSE +252 -0
  358. package/dist/libs/README.md +20 -0
  359. package/dist/libs/draco_decoder.js +34 -0
  360. package/dist/libs/draco_decoder.mjs +37 -0
  361. package/dist/libs/draco_decoder.wasm +0 -0
  362. package/dist/libs/draco_decoder_gltf.wasm +0 -0
  363. package/dist/libs/draco_encoder.js +98 -0
  364. package/dist/libs/draco_encoder.mjs +101 -0
  365. package/dist/libs/draco_encoder.wasm +0 -0
  366. package/dist/libs/draco_wasm_wrapper.js +117 -0
  367. package/dist/libs/draco_wasm_wrapper.mjs +120 -0
  368. package/dist/libs/draco_wasm_wrapper_gltf.js +116 -0
  369. package/dist/libs/draco_wasm_wrapper_gltf.mjs +119 -0
  370. package/dist/materialx/parse-materialx.cjs +61 -0
  371. package/dist/materialx/parse-materialx.cjs.map +7 -0
  372. package/dist/materialx/parse-materialx.d.ts +23 -0
  373. package/dist/materialx/parse-materialx.d.ts.map +1 -0
  374. package/dist/materialx/parse-materialx.js +39 -0
  375. package/dist/materialx/parse-materialx.js.map +1 -0
  376. package/dist/materialx/procedural-graph.cjs +77 -0
  377. package/dist/materialx/procedural-graph.cjs.map +7 -0
  378. package/dist/materialx/procedural-graph.d.ts +40 -0
  379. package/dist/materialx/procedural-graph.d.ts.map +1 -0
  380. package/dist/materialx/procedural-graph.js +59 -0
  381. package/dist/materialx/procedural-graph.js.map +1 -0
  382. package/dist/materialx-loader-types.cjs +57 -0
  383. package/dist/materialx-loader-types.cjs.map +7 -0
  384. package/dist/materialx-loader-types.d.ts +34 -0
  385. package/dist/materialx-loader-types.d.ts.map +1 -0
  386. package/dist/materialx-loader-types.js +20 -0
  387. package/dist/materialx-loader-types.js.map +1 -0
  388. package/dist/materialx-loader.cjs +40 -0
  389. package/dist/materialx-loader.cjs.map +7 -0
  390. package/dist/materialx-loader.d.ts +19 -0
  391. package/dist/materialx-loader.d.ts.map +1 -0
  392. package/dist/materialx-loader.js +14 -0
  393. package/dist/materialx-loader.js.map +1 -0
  394. package/dist/mtl-loader-types.cjs +64 -0
  395. package/dist/mtl-loader-types.cjs.map +7 -0
  396. package/dist/mtl-loader-types.d.ts +2 -0
  397. package/dist/mtl-loader-types.d.ts.map +1 -0
  398. package/dist/mtl-loader-types.js +2 -0
  399. package/dist/mtl-loader-types.js.map +1 -0
  400. package/dist/mtl-loader.cjs +47 -0
  401. package/dist/mtl-loader.cjs.map +7 -0
  402. package/dist/mtl-loader.d.ts +2 -0
  403. package/dist/mtl-loader.d.ts.map +1 -0
  404. package/dist/mtl-loader.js +2 -0
  405. package/dist/mtl-loader.js.map +1 -0
  406. package/dist/obj/mtl-loader-types.cjs +2 -2
  407. package/dist/obj/mtl-loader-types.cjs.map +2 -2
  408. package/dist/obj/mtl-loader-types.d.ts +2 -2
  409. package/dist/obj/mtl-loader-types.js +2 -2
  410. package/dist/obj/mtl-loader-types.js.map +1 -1
  411. package/dist/obj/mtl-loader.cjs +1 -1
  412. package/dist/obj/mtl-loader.cjs.map +2 -2
  413. package/dist/obj/mtl-loader.js +1 -1
  414. package/dist/obj/mtl-loader.js.map +1 -1
  415. package/dist/obj/obj-loader-types.cjs +2 -2
  416. package/dist/obj/obj-loader-types.cjs.map +2 -2
  417. package/dist/obj/obj-loader-types.js +2 -2
  418. package/dist/obj/obj-loader-types.js.map +1 -1
  419. package/dist/obj/obj-writer.cjs +1 -1
  420. package/dist/obj/obj-writer.js +1 -1
  421. package/dist/obj-loader-types.cjs +71 -0
  422. package/dist/obj-loader-types.cjs.map +7 -0
  423. package/dist/obj-loader-types.d.ts +2 -0
  424. package/dist/obj-loader-types.d.ts.map +1 -0
  425. package/dist/obj-loader-types.js +2 -0
  426. package/dist/obj-loader-types.js.map +1 -0
  427. package/dist/obj-loader.cjs +163 -0
  428. package/dist/obj-loader.cjs.map +7 -0
  429. package/dist/obj-loader.d.ts +2 -0
  430. package/dist/obj-loader.d.ts.map +1 -0
  431. package/dist/obj-loader.js +2 -0
  432. package/dist/obj-loader.js.map +1 -0
  433. package/dist/obj-worker.js +586 -117
  434. package/dist/obj-writer.cjs +167 -0
  435. package/dist/obj-writer.cjs.map +7 -0
  436. package/dist/obj-writer.d.ts +2 -0
  437. package/dist/obj-writer.d.ts.map +1 -0
  438. package/dist/obj-writer.js +2 -0
  439. package/dist/obj-writer.js.map +1 -0
  440. package/dist/usd/usd-loader-types.cjs +2 -2
  441. package/dist/usd/usd-loader-types.cjs.map +2 -2
  442. package/dist/usd/usd-loader-types.js +2 -2
  443. package/dist/usd/usd-loader-types.js.map +1 -1
  444. package/dist/usd-loader-types.cjs +69 -0
  445. package/dist/usd-loader-types.cjs.map +7 -0
  446. package/dist/usd-loader-types.d.ts +2 -0
  447. package/dist/usd-loader-types.d.ts.map +1 -0
  448. package/dist/usd-loader-types.js +2 -0
  449. package/dist/usd-loader-types.js.map +1 -0
  450. package/dist/usd-loader.cjs +43 -0
  451. package/dist/usd-loader.cjs.map +7 -0
  452. package/dist/usd-loader.d.ts +2 -0
  453. package/dist/usd-loader.d.ts.map +1 -0
  454. package/dist/usd-loader.js +2 -0
  455. package/dist/usd-loader.js.map +1 -0
  456. package/package.json +136 -71
  457. package/src/draco/bundled.ts +10 -0
  458. package/src/draco/draco-format.ts +20 -0
  459. package/src/draco/draco-javascript-loader-with-parser.ts +26 -0
  460. package/src/draco/draco-libraries.ts +35 -0
  461. package/src/draco/draco-library-options.ts +76 -0
  462. package/src/draco/draco-loader-options.ts +33 -0
  463. package/src/draco/draco-loader-types.ts +78 -0
  464. package/src/draco/draco-loader.ts +45 -0
  465. package/src/draco/draco-wasm-loader-with-parser.ts +31 -0
  466. package/src/draco/draco-writer.ts +252 -0
  467. package/src/draco/draco3d/draco3d-types.ts +498 -0
  468. package/src/draco/draco3d-loader-with-parser.ts +34 -0
  469. package/src/draco/index.ts +46 -0
  470. package/src/draco/lib/draco-builder.ts +935 -0
  471. package/src/draco/lib/draco-library-loader.ts +38 -0
  472. package/src/draco/lib/draco-module-loader.ts +370 -0
  473. package/src/draco/lib/draco-parser.ts +776 -0
  474. package/src/draco/lib/draco-types.ts +72 -0
  475. package/src/draco/lib/parse-draco.ts +51 -0
  476. package/src/draco/lib/utils/get-draco-schema.ts +65 -0
  477. package/src/draco/lib/utils/version.ts +8 -0
  478. package/src/draco/libs/DRACO-LICENSE +252 -0
  479. package/src/draco/libs/README.md +20 -0
  480. package/src/draco/libs/draco_decoder.js +34 -0
  481. package/src/draco/libs/draco_decoder.wasm +0 -0
  482. package/src/draco/libs/draco_decoder_gltf.wasm +0 -0
  483. package/src/draco/libs/draco_encoder.js +98 -0
  484. package/src/draco/libs/draco_encoder.wasm +0 -0
  485. package/src/draco/libs/draco_wasm_wrapper.js +117 -0
  486. package/src/draco/libs/draco_wasm_wrapper_gltf.js +116 -0
  487. package/src/draco/unbundled.ts +6 -0
  488. package/src/draco/workers/draco-worker-node.ts +10 -0
  489. package/src/draco/workers/draco-worker.ts +8 -0
  490. package/src/draco/workers/draco-writer-worker-node.cjs +21 -0
  491. package/src/draco/workers/draco-writer-worker-node.ts +13 -0
  492. package/src/draco/workers/draco-writer-worker.ts +11 -0
  493. package/src/draco-javascript-loader.ts +2 -0
  494. package/src/draco-library-options.ts +6 -0
  495. package/src/draco-loader-types.ts +2 -0
  496. package/src/draco-loader.ts +2 -0
  497. package/src/draco-wasm-loader.ts +2 -0
  498. package/src/draco-writer.ts +2 -0
  499. package/src/draco3d-loader.ts +2 -0
  500. package/src/glb-loader-types.ts +1 -0
  501. package/src/glb-loader.ts +1 -0
  502. package/src/glb-writer.ts +1 -0
  503. package/src/gltf/glb-loader-types.ts +1 -1
  504. package/src/gltf/gltf-loader-types.ts +11 -5
  505. package/src/gltf/gltf-loader.ts +4 -4
  506. package/src/gltf/index.ts +4 -1
  507. package/src/gltf/lib/api/gltf-extensions.ts +7 -2
  508. package/src/gltf/lib/encoders/encode-gltf-draco.ts +2 -2
  509. package/src/gltf/lib/extensions/EXT_texture_webp.ts +3 -0
  510. package/src/gltf/lib/extensions/KHR_accessor_float64.ts +22 -0
  511. package/src/gltf/lib/extensions/KHR_draco_mesh_compression.ts +2 -1
  512. package/src/gltf/lib/extensions/KHR_gaussian_splatting.ts +17 -3
  513. package/src/gltf/lib/extensions/MSFT_texture_dds.ts +52 -0
  514. package/src/gltf/lib/extensions/utils/3d-tiles-utils.ts +5 -1
  515. package/src/gltf/lib/parsers/parse-gltf.ts +34 -5
  516. package/src/gltf/lib/types/gltf-ext-gaussian-splatting-schema.ts +1 -1
  517. package/src/gltf/lib/types/gltf-texture-procedurals.ts +67 -0
  518. package/src/gltf/lib/types/gltf-types.ts +8 -0
  519. package/src/gltf/lib/types/gltf-zod-schema.ts +5 -0
  520. package/src/gltf/schema.ts +1 -0
  521. package/src/gltf-loader-types.ts +1 -0
  522. package/src/gltf-loader.ts +1 -0
  523. package/src/gltf-source.ts +1 -0
  524. package/src/gltf-writer.ts +1 -0
  525. package/src/index.ts +8 -0
  526. package/src/materialx/README.md +5 -0
  527. package/src/materialx/parse-materialx.ts +70 -0
  528. package/src/materialx/procedural-graph.ts +94 -0
  529. package/src/materialx-loader-types.ts +24 -0
  530. package/src/materialx-loader.ts +15 -0
  531. package/src/mtl-loader-types.ts +1 -0
  532. package/src/mtl-loader.ts +1 -0
  533. package/src/obj/mtl-loader-types.ts +1 -1
  534. package/src/obj/mtl-loader.ts +1 -1
  535. package/src/obj/obj-loader-types.ts +1 -1
  536. package/src/obj-loader-types.ts +1 -0
  537. package/src/obj-loader.ts +1 -0
  538. package/src/obj-writer.ts +1 -0
  539. package/src/usd/usd-loader-types.ts +1 -1
  540. package/src/usd-loader-types.ts +1 -0
  541. package/src/usd-loader.ts +1 -0
@@ -0,0 +1,220 @@
1
+ // SPDX-License-Identifier: MIT
2
+ // Dynamic DRACO module loading inspired by THREE.DRACOLoader
3
+ // https://github.com/mrdoob/three.js/blob/dev/examples/jsm/loaders/DRACOLoader.js
4
+ // by Don McCurdy / https://www.donmccurdy.com / MIT license
5
+ import { initializeWasmModule } from '@loaders.gl/core/loader-utils';
6
+ import { isBrowser, loadLibrary } from "./draco-library-loader.js";
7
+ import { DRACO_EXTERNAL_LIBRARIES, DRACO_EXTERNAL_LIBRARY_URLS } from "../draco-libraries.js";
8
+ export { DRACO_EXTERNAL_LIBRARIES, DRACO_EXTERNAL_LIBRARY_URLS } from "../draco-libraries.js";
9
+ const libraryDecoderPromises = new Map();
10
+ const libraryEncoderPromises = new Map();
11
+ const injectedDecoderPromises = new WeakMap();
12
+ const injectedEncoderPromises = new WeakMap();
13
+ /** Loads a Draco decoder from either an injected `draco3d` package or external libraries. */
14
+ export async function loadDracoDecoderModule(options = {}, type, profile = 'full') {
15
+ const draco3DModule = getInjectedDraco3DModule(options);
16
+ if (draco3DModule) {
17
+ return await loadDracoDecoderModuleFromDraco3D(draco3DModule);
18
+ }
19
+ return await loadDracoDecoderModuleFromLibrary(options, type === 'js' ? 'javascript' : type, profile);
20
+ }
21
+ /** Loads a Draco decoder from external WASM or JavaScript fallback libraries. */
22
+ export async function loadDracoDecoderModuleFromLibrary(options = {}, type, profile = 'full') {
23
+ const cacheKey = getLibraryCacheKey(`${type}:${profile}`, options);
24
+ let decoderPromise = libraryDecoderPromises.get(cacheKey);
25
+ if (!decoderPromise) {
26
+ decoderPromise = loadDracoDecoderWithFallback(options, type, profile);
27
+ libraryDecoderPromises.set(cacheKey, decoderPromise);
28
+ }
29
+ return await decoderPromise;
30
+ }
31
+ /** Loads a decoder from an injected `draco3d` npm package. */
32
+ export async function loadDracoDecoderModuleFromDraco3D(draco3DModule) {
33
+ const typedDraco3DModule = validateDracoDecoderModule(draco3DModule);
34
+ let decoderPromise = injectedDecoderPromises.get(typedDraco3DModule);
35
+ if (!decoderPromise) {
36
+ decoderPromise = initializeWasmModule(() => typedDraco3DModule.createDecoderModule({}), draco => ({ draco }));
37
+ injectedDecoderPromises.set(typedDraco3DModule, decoderPromise);
38
+ }
39
+ return await decoderPromise;
40
+ }
41
+ /** Loads a Draco encoder from an injected `draco3d` package or external WASM libraries. */
42
+ export async function loadDracoEncoderModule(options = {}) {
43
+ const draco3DModule = getInjectedDraco3DModule(options);
44
+ if (draco3DModule) {
45
+ const typedDraco3DModule = validateDracoEncoderModule(draco3DModule);
46
+ let encoderPromise = injectedEncoderPromises.get(typedDraco3DModule);
47
+ if (!encoderPromise) {
48
+ encoderPromise = initializeWasmModule(() => typedDraco3DModule.createEncoderModule({}), draco => ({ draco }));
49
+ injectedEncoderPromises.set(typedDraco3DModule, encoderPromise);
50
+ }
51
+ return await encoderPromise;
52
+ }
53
+ const cacheKey = getLibraryCacheKey('encoder', options);
54
+ let encoderPromise = libraryEncoderPromises.get(cacheKey);
55
+ if (!encoderPromise) {
56
+ encoderPromise = loadDracoEncoder(options);
57
+ libraryEncoderPromises.set(cacheKey, encoderPromise);
58
+ }
59
+ return await encoderPromise;
60
+ }
61
+ /** Loads the selected decoder and retries with the JavaScript backend after a WASM failure. */
62
+ async function loadDracoDecoderWithFallback(options, type, profile) {
63
+ try {
64
+ return await loadDracoDecoder(options, type, profile);
65
+ }
66
+ catch (wasmError) {
67
+ if (type === 'javascript') {
68
+ throw wasmError;
69
+ }
70
+ try {
71
+ return await loadDracoDecoder(options, 'javascript', 'full');
72
+ }
73
+ catch (javascriptError) {
74
+ throw new AggregateError([wasmError, javascriptError], 'Draco decoder could not load either the WebAssembly or JavaScript backend');
75
+ }
76
+ }
77
+ }
78
+ let decoderInitializationQueue = Promise.resolve();
79
+ /** Loads and initializes one external Draco decoder backend. */
80
+ async function loadDracoDecoder(options, type, profile) {
81
+ const initialization = decoderInitializationQueue.then(() => loadDracoDecoderInternal(options, type, profile));
82
+ decoderInitializationQueue = initialization.then(() => undefined, () => undefined);
83
+ return await initialization;
84
+ }
85
+ /** Performs decoder loading after preceding global initializers have completed. */
86
+ async function loadDracoDecoderInternal(options, type, profile) {
87
+ if (type === 'javascript') {
88
+ let decoderLibrary;
89
+ try {
90
+ decoderLibrary = await loadLibrary(DRACO_EXTERNAL_LIBRARY_URLS[DRACO_EXTERNAL_LIBRARIES.FALLBACK_DECODER], 'scene', options, DRACO_EXTERNAL_LIBRARIES.FALLBACK_DECODER, 'draco_decoder.mjs');
91
+ }
92
+ catch (error) {
93
+ if (isBrowser || options.useLocalLibraries) {
94
+ throw error;
95
+ }
96
+ decoderLibrary = await loadLibrary(DRACO_EXTERNAL_LIBRARY_URLS[DRACO_EXTERNAL_LIBRARIES.FALLBACK_DECODER], 'scene', { ...options, useLocalLibraries: true }, DRACO_EXTERNAL_LIBRARIES.FALLBACK_DECODER, 'draco_decoder.mjs');
97
+ }
98
+ const decoderInitializer = getLibraryExport(decoderLibrary, 'DracoDecoderModule') ||
99
+ globalThis.DracoDecoderModule;
100
+ return await initializeDracoModule(decoderInitializer);
101
+ }
102
+ let decoderLibrary;
103
+ let wasmBinary;
104
+ try {
105
+ [decoderLibrary, wasmBinary] = await loadDecoderWasmAssets(options, profile);
106
+ }
107
+ catch (error) {
108
+ if (isBrowser || options.useLocalLibraries) {
109
+ throw error;
110
+ }
111
+ [decoderLibrary, wasmBinary] = await loadDecoderWasmAssets({ ...options, useLocalLibraries: true }, profile);
112
+ }
113
+ const decoderInitializer = getLibraryExport(decoderLibrary, 'DracoDecoderModule') ||
114
+ globalThis.DracoDecoderModule;
115
+ return await initializeDracoModule(decoderInitializer, wasmBinary);
116
+ }
117
+ /** Loads the decoder wrapper and WASM binary concurrently. */
118
+ async function loadDecoderWasmAssets(options, profile) {
119
+ const decoderLibrary = profile === 'gltf' ? DRACO_EXTERNAL_LIBRARIES.GLTF_DECODER : DRACO_EXTERNAL_LIBRARIES.DECODER;
120
+ const decoderWasm = profile === 'gltf'
121
+ ? DRACO_EXTERNAL_LIBRARIES.GLTF_DECODER_WASM
122
+ : DRACO_EXTERNAL_LIBRARIES.DECODER_WASM;
123
+ return await Promise.all([
124
+ loadLibrary(DRACO_EXTERNAL_LIBRARY_URLS[decoderLibrary], 'scene', options, decoderLibrary, profile === 'gltf' ? 'draco_wasm_wrapper_gltf.mjs' : 'draco_wasm_wrapper.mjs'),
125
+ loadLibrary(DRACO_EXTERNAL_LIBRARY_URLS[decoderWasm], 'scene', options, decoderWasm)
126
+ ]);
127
+ }
128
+ /** Loads and initializes the external Draco WASM encoder. */
129
+ async function loadDracoEncoder(options) {
130
+ let encoderLibrary;
131
+ let wasmBinary;
132
+ try {
133
+ [encoderLibrary, wasmBinary] = await loadEncoderWasmAssets(options);
134
+ }
135
+ catch (error) {
136
+ if (isBrowser || options.useLocalLibraries) {
137
+ throw error;
138
+ }
139
+ [encoderLibrary, wasmBinary] = await loadEncoderWasmAssets({
140
+ ...options,
141
+ useLocalLibraries: true
142
+ });
143
+ }
144
+ const encoderInitializer = getLibraryExport(encoderLibrary, 'DracoEncoderModule') ||
145
+ globalThis.DracoEncoderModule;
146
+ return await initializeDracoModule(encoderInitializer, wasmBinary);
147
+ }
148
+ /** Loads the encoder wrapper and WASM binary concurrently. */
149
+ async function loadEncoderWasmAssets(options) {
150
+ return await Promise.all([
151
+ loadLibrary(DRACO_EXTERNAL_LIBRARY_URLS[DRACO_EXTERNAL_LIBRARIES.ENCODER], 'scene', options, DRACO_EXTERNAL_LIBRARIES.ENCODER, 'draco_encoder.mjs'),
152
+ loadLibrary(DRACO_EXTERNAL_LIBRARY_URLS[DRACO_EXTERNAL_LIBRARIES.ENCODER_WASM], 'scene', options, DRACO_EXTERNAL_LIBRARIES.ENCODER_WASM)
153
+ ]);
154
+ }
155
+ /** Initializes an Emscripten Draco factory that may use callbacks, promises, or both. */
156
+ function initializeDracoModule(initializer, wasmBinary) {
157
+ if (typeof initializer !== 'function') {
158
+ throw new Error('Draco module initializer could not be loaded');
159
+ }
160
+ return initializeWasmModule(onInitialized => initializer({
161
+ ...(wasmBinary ? { wasmBinary } : {}),
162
+ onModuleLoaded: onInitialized
163
+ }), (draco) => ({ draco }));
164
+ }
165
+ /** Resolves a Draco initializer from a direct, named, or default library export. */
166
+ function getLibraryExport(library, exportName) {
167
+ if (typeof library === 'function') {
168
+ return library;
169
+ }
170
+ if (library && typeof library === 'object') {
171
+ const exports = library;
172
+ const exportedInitializer = exports[exportName] || exports.default;
173
+ return typeof exportedInitializer === 'function'
174
+ ? exportedInitializer
175
+ : undefined;
176
+ }
177
+ return undefined;
178
+ }
179
+ /** Returns and validates the optional injected `draco3d` package reference. */
180
+ function getInjectedDraco3DModule(options) {
181
+ const module = options.modules?.draco3d;
182
+ if (!module) {
183
+ return undefined;
184
+ }
185
+ if (typeof module !== 'object' && typeof module !== 'function') {
186
+ throw new Error('Invalid draco3d module');
187
+ }
188
+ return module;
189
+ }
190
+ /** Narrows an injected package to the decoder factory interface. */
191
+ function validateDracoDecoderModule(module) {
192
+ const typedModule = module;
193
+ if (typeof typedModule?.createDecoderModule !== 'function') {
194
+ throw new Error('Invalid draco3d decoder module');
195
+ }
196
+ return typedModule;
197
+ }
198
+ /** Narrows an injected package to the encoder factory interface. */
199
+ function validateDracoEncoderModule(module) {
200
+ const typedModule = module;
201
+ if (typeof typedModule?.createEncoderModule !== 'function') {
202
+ throw new Error('Invalid draco3d encoder module');
203
+ }
204
+ return typedModule;
205
+ }
206
+ /** Builds a stable cache key from the backend and external-library configuration. */
207
+ function getLibraryCacheKey(type, options) {
208
+ const libraryOverrides = Object.entries(options.modules || {})
209
+ .filter(([name]) => name !== 'draco3d')
210
+ .map(([name, value]) => `${name}:${String(value)}`)
211
+ .sort()
212
+ .join('|');
213
+ return [
214
+ type,
215
+ options.useLocalLibraries ? 'local' : 'remote',
216
+ options.CDN || '',
217
+ libraryOverrides
218
+ ].join('|');
219
+ }
220
+ //# sourceMappingURL=draco-module-loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"draco-module-loader.js","sourceRoot":"","sources":["../../../src/draco/lib/draco-module-loader.ts"],"names":[],"mappings":"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"}