@loaders.gl/scene 5.0.0-alpha.9 → 5.0.0-beta.10
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.
- package/DRACO-README.md +15 -0
- package/GLTF-README.md +46 -0
- package/LICENSE +2 -30
- package/OBJ-README.md +28 -0
- package/README.md +17 -1
- package/THIRD-PARTY-NOTICES.md +32 -0
- package/bin/gltf/glbdump.js +8 -0
- package/dist/dist.dev.js +40859 -59
- package/dist/dist.min.js +46 -3
- package/dist/draco/bundled.cjs +34 -0
- package/dist/draco/bundled.cjs.map +7 -0
- package/dist/draco/bundled.d.ts +5 -0
- package/dist/draco/bundled.d.ts.map +1 -0
- package/dist/draco/bundled.js +6 -0
- package/dist/draco/bundled.js.map +1 -0
- package/dist/draco/draco-format.cjs +41 -0
- package/dist/draco/draco-format.cjs.map +7 -0
- package/dist/draco/draco-format.d.ts +15 -0
- package/dist/draco/draco-format.d.ts.map +1 -0
- package/dist/draco/draco-format.js +18 -0
- package/dist/draco/draco-format.js.map +1 -0
- package/dist/draco/draco-javascript-loader-with-parser.cjs +47 -0
- package/dist/draco/draco-javascript-loader-with-parser.cjs.map +7 -0
- package/dist/draco/draco-javascript-loader-with-parser.d.ts +36 -0
- package/dist/draco/draco-javascript-loader-with-parser.d.ts.map +1 -0
- package/dist/draco/draco-javascript-loader-with-parser.js +14 -0
- package/dist/draco/draco-javascript-loader-with-parser.js.map +1 -0
- package/dist/draco/draco-libraries.cjs +61 -0
- package/dist/draco/draco-libraries.cjs.map +7 -0
- package/dist/draco/draco-libraries.d.ts +28 -0
- package/dist/draco/draco-libraries.d.ts.map +1 -0
- package/dist/draco/draco-libraries.js +33 -0
- package/dist/draco/draco-libraries.js.map +1 -0
- package/dist/draco/draco-library-options.cjs +80 -0
- package/dist/draco/draco-library-options.cjs.map +7 -0
- package/dist/draco/draco-library-options.d.ts +16 -0
- package/dist/draco/draco-library-options.d.ts.map +1 -0
- package/dist/draco/draco-library-options.js +52 -0
- package/dist/draco/draco-library-options.js.map +1 -0
- package/dist/draco/draco-loader-options.cjs +37 -0
- package/dist/draco/draco-loader-options.cjs.map +7 -0
- package/dist/draco/draco-loader-options.d.ts +27 -0
- package/dist/draco/draco-loader-options.d.ts.map +1 -0
- package/dist/draco/draco-loader-options.js +12 -0
- package/dist/draco/draco-loader-options.js.map +1 -0
- package/dist/draco/draco-loader-types.cjs +87 -0
- package/dist/draco/draco-loader-types.cjs.map +7 -0
- package/dist/draco/draco-loader-types.d.ts +41 -0
- package/dist/draco/draco-loader-types.d.ts.map +1 -0
- package/dist/draco/draco-loader-types.js +54 -0
- package/dist/draco/draco-loader-types.js.map +1 -0
- package/dist/draco/draco-loader.cjs +51 -0
- package/dist/draco/draco-loader.cjs.map +7 -0
- package/dist/draco/draco-loader.d.ts +41 -0
- package/dist/draco/draco-loader.d.ts.map +1 -0
- package/dist/draco/draco-loader.js +22 -0
- package/dist/draco/draco-loader.js.map +1 -0
- package/dist/draco/draco-wasm-loader-with-parser.cjs +48 -0
- package/dist/draco/draco-wasm-loader-with-parser.cjs.map +7 -0
- package/dist/draco/draco-wasm-loader-with-parser.d.ts +36 -0
- package/dist/draco/draco-wasm-loader-with-parser.d.ts.map +1 -0
- package/dist/draco/draco-wasm-loader-with-parser.js +14 -0
- package/dist/draco/draco-wasm-loader-with-parser.js.map +1 -0
- package/dist/draco/draco-writer.cjs +183 -0
- package/dist/draco/draco-writer.cjs.map +7 -0
- package/dist/draco/draco-writer.d.ts +98 -0
- package/dist/draco/draco-writer.d.ts.map +1 -0
- package/dist/draco/draco-writer.js +166 -0
- package/dist/draco/draco-writer.js.map +1 -0
- package/dist/draco/draco3d/draco3d-types.cjs +76 -0
- package/dist/draco/draco3d/draco3d-types.cjs.map +7 -0
- package/dist/draco/draco3d/draco3d-types.d.ts +303 -0
- package/dist/draco/draco3d/draco3d-types.d.ts.map +1 -0
- package/dist/draco/draco3d/draco3d-types.js +47 -0
- package/dist/draco/draco3d/draco3d-types.js.map +1 -0
- package/dist/draco/draco3d-loader-with-parser.cjs +50 -0
- package/dist/draco/draco3d-loader-with-parser.cjs.map +7 -0
- package/dist/draco/draco3d-loader-with-parser.d.ts +36 -0
- package/dist/draco/draco3d-loader-with-parser.d.ts.map +1 -0
- package/dist/draco/draco3d-loader-with-parser.js +21 -0
- package/dist/draco/draco3d-loader-with-parser.js.map +1 -0
- package/dist/draco/index.cjs +51 -0
- package/dist/draco/index.cjs.map +7 -0
- package/dist/draco/index.d.ts +11 -0
- package/dist/draco/index.d.ts.map +1 -0
- package/dist/draco/index.js +10 -0
- package/dist/draco/index.js.map +1 -0
- package/dist/draco/lib/draco-builder.cjs +660 -0
- package/dist/draco/lib/draco-builder.cjs.map +7 -0
- package/dist/draco/lib/draco-builder.d.ts +175 -0
- package/dist/draco/lib/draco-builder.d.ts.map +1 -0
- package/dist/draco/lib/draco-builder.js +612 -0
- package/dist/draco/lib/draco-builder.js.map +1 -0
- package/dist/draco/lib/draco-library-loader.cjs +47 -0
- package/dist/draco/lib/draco-library-loader.cjs.map +7 -0
- package/dist/draco/lib/draco-library-loader.d.ts +5 -0
- package/dist/draco/lib/draco-library-loader.d.ts.map +1 -0
- package/dist/draco/lib/draco-library-loader.js +23 -0
- package/dist/draco/lib/draco-library-loader.js.map +1 -0
- package/dist/draco/lib/draco-module-loader.cjs +281 -0
- package/dist/draco/lib/draco-module-loader.cjs.map +7 -0
- package/dist/draco/lib/draco-module-loader.d.ts +25 -0
- package/dist/draco/lib/draco-module-loader.d.ts.map +1 -0
- package/dist/draco/lib/draco-module-loader.js +220 -0
- package/dist/draco/lib/draco-module-loader.js.map +1 -0
- package/dist/draco/lib/draco-parser.cjs +601 -0
- package/dist/draco/lib/draco-parser.cjs.map +7 -0
- package/dist/draco/lib/draco-parser.d.ts +143 -0
- package/dist/draco/lib/draco-parser.d.ts.map +1 -0
- package/dist/draco/lib/draco-parser.js +598 -0
- package/dist/draco/lib/draco-parser.js.map +1 -0
- package/dist/draco/lib/draco-types.cjs +19 -0
- package/dist/draco/lib/draco-types.cjs.map +7 -0
- package/dist/draco/lib/draco-types.d.ts +59 -0
- package/dist/draco/lib/draco-types.d.ts.map +1 -0
- package/dist/draco/lib/draco-types.js +5 -0
- package/dist/draco/lib/draco-types.js.map +1 -0
- package/dist/draco/lib/parse-draco.cjs +60 -0
- package/dist/draco/lib/parse-draco.cjs.map +7 -0
- package/dist/draco/lib/parse-draco.d.ts +22 -0
- package/dist/draco/lib/parse-draco.d.ts.map +1 -0
- package/dist/draco/lib/parse-draco.js +33 -0
- package/dist/draco/lib/parse-draco.js.map +1 -0
- package/dist/draco/lib/utils/get-draco-schema.cjs +74 -0
- package/dist/draco/lib/utils/get-draco-schema.cjs.map +7 -0
- package/dist/draco/lib/utils/get-draco-schema.d.ts +7 -0
- package/dist/draco/lib/utils/get-draco-schema.d.ts.map +1 -0
- package/dist/draco/lib/utils/get-draco-schema.js +45 -0
- package/dist/draco/lib/utils/get-draco-schema.js.map +1 -0
- package/dist/draco/lib/utils/version.cjs +31 -0
- package/dist/draco/lib/utils/version.cjs.map +7 -0
- package/dist/draco/lib/utils/version.d.ts +2 -0
- package/dist/draco/lib/utils/version.d.ts.map +1 -0
- package/dist/draco/lib/utils/version.js +8 -0
- package/dist/draco/lib/utils/version.js.map +1 -0
- package/dist/draco/unbundled.cjs +31 -0
- package/dist/draco/unbundled.cjs.map +7 -0
- package/dist/draco/unbundled.d.ts +3 -0
- package/dist/draco/unbundled.d.ts.map +1 -0
- package/dist/draco/unbundled.js +5 -0
- package/dist/draco/unbundled.js.map +1 -0
- package/dist/draco/workers/draco-worker-node.cjs +8 -0
- package/dist/draco/workers/draco-worker-node.cjs.map +7 -0
- package/dist/draco/workers/draco-worker-node.d.ts +2 -0
- package/dist/draco/workers/draco-worker-node.d.ts.map +1 -0
- package/dist/draco/workers/draco-worker-node.js +9 -0
- package/dist/draco/workers/draco-worker-node.js.map +1 -0
- package/dist/draco/workers/draco-worker.cjs +7 -0
- package/dist/draco/workers/draco-worker.cjs.map +7 -0
- package/dist/draco/workers/draco-worker.d.ts +2 -0
- package/dist/draco/workers/draco-worker.d.ts.map +1 -0
- package/dist/draco/workers/draco-worker.js +7 -0
- package/dist/draco/workers/draco-worker.js.map +1 -0
- package/dist/draco/workers/draco-writer-worker-node.cjs +11 -0
- package/dist/draco/workers/draco-writer-worker-node.cjs.map +7 -0
- package/dist/draco/workers/draco-writer-worker-node.d.cts +2 -0
- package/dist/draco/workers/draco-writer-worker-node.d.cts.map +1 -0
- package/dist/draco/workers/draco-writer-worker-node.d.ts +2 -0
- package/dist/draco/workers/draco-writer-worker-node.d.ts.map +1 -0
- package/dist/draco/workers/draco-writer-worker-node.js +9 -0
- package/dist/draco/workers/draco-writer-worker-node.js.map +1 -0
- package/dist/draco/workers/draco-writer-worker.cjs +10 -0
- package/dist/draco/workers/draco-writer-worker.cjs.map +7 -0
- package/dist/draco/workers/draco-writer-worker.d.ts +2 -0
- package/dist/draco/workers/draco-writer-worker.d.ts.map +1 -0
- package/dist/draco/workers/draco-writer-worker.js +7 -0
- package/dist/draco/workers/draco-writer-worker.js.map +1 -0
- package/dist/draco-javascript-loader.cjs +25 -0
- package/dist/draco-javascript-loader.cjs.map +7 -0
- package/dist/draco-javascript-loader.d.ts +2 -0
- package/dist/draco-javascript-loader.d.ts.map +1 -0
- package/dist/draco-javascript-loader.js +3 -0
- package/dist/draco-javascript-loader.js.map +1 -0
- package/dist/draco-library-options.cjs +36 -0
- package/dist/draco-library-options.cjs.map +7 -0
- package/dist/draco-library-options.d.ts +3 -0
- package/dist/draco-library-options.d.ts.map +1 -0
- package/dist/draco-library-options.js +4 -0
- package/dist/draco-library-options.js.map +1 -0
- package/dist/draco-loader-types.cjs +25 -0
- package/dist/draco-loader-types.cjs.map +7 -0
- package/dist/draco-loader-types.d.ts +2 -0
- package/dist/draco-loader-types.d.ts.map +1 -0
- package/dist/draco-loader-types.js +3 -0
- package/dist/draco-loader-types.js.map +1 -0
- package/dist/draco-loader.cjs +25 -0
- package/dist/draco-loader.cjs.map +7 -0
- package/dist/draco-loader.d.ts +2 -0
- package/dist/draco-loader.d.ts.map +1 -0
- package/dist/draco-loader.js +3 -0
- package/dist/draco-loader.js.map +1 -0
- package/dist/draco-wasm-loader.cjs +25 -0
- package/dist/draco-wasm-loader.cjs.map +7 -0
- package/dist/draco-wasm-loader.d.ts +2 -0
- package/dist/draco-wasm-loader.d.ts.map +1 -0
- package/dist/draco-wasm-loader.js +3 -0
- package/dist/draco-wasm-loader.js.map +1 -0
- package/dist/draco-worker-node.js +29842 -0
- package/dist/draco-worker-node.js.map +7 -0
- package/dist/draco-worker.js +19668 -0
- package/dist/draco-worker.js.map +7 -0
- package/dist/draco-writer-worker-node.cjs +30022 -0
- package/dist/draco-writer-worker-node.cjs.map +7 -0
- package/dist/draco-writer-worker.js +19767 -0
- package/dist/draco-writer-worker.js.map +7 -0
- package/dist/draco-writer.cjs +25 -0
- package/dist/draco-writer.cjs.map +7 -0
- package/dist/draco-writer.d.ts +2 -0
- package/dist/draco-writer.d.ts.map +1 -0
- package/dist/draco-writer.js +3 -0
- package/dist/draco-writer.js.map +1 -0
- package/dist/draco3d-loader.cjs +25 -0
- package/dist/draco3d-loader.cjs.map +7 -0
- package/dist/draco3d-loader.d.ts +2 -0
- package/dist/draco3d-loader.d.ts.map +1 -0
- package/dist/draco3d-loader.js +3 -0
- package/dist/draco3d-loader.js.map +1 -0
- package/dist/glb-loader-types.cjs +61 -0
- package/dist/glb-loader-types.cjs.map +7 -0
- package/dist/glb-loader-types.d.ts +2 -0
- package/dist/glb-loader-types.d.ts.map +1 -0
- package/dist/glb-loader-types.js +2 -0
- package/dist/glb-loader-types.js.map +1 -0
- package/dist/glb-loader.cjs +48 -0
- package/dist/glb-loader.cjs.map +7 -0
- package/dist/glb-loader.d.ts +2 -0
- package/dist/glb-loader.d.ts.map +1 -0
- package/dist/glb-loader.js +2 -0
- package/dist/glb-loader.js.map +1 -0
- package/dist/glb-writer.cjs +53 -0
- package/dist/glb-writer.cjs.map +7 -0
- package/dist/glb-writer.d.ts +2 -0
- package/dist/glb-writer.d.ts.map +1 -0
- package/dist/glb-writer.js +2 -0
- package/dist/glb-writer.js.map +1 -0
- package/dist/gltf/bundled.cjs +34 -0
- package/dist/gltf/bundled.cjs.map +7 -0
- package/dist/gltf/bundled.d.ts +5 -0
- package/dist/gltf/bundled.d.ts.map +1 -0
- package/dist/gltf/bundled.js +6 -0
- package/dist/gltf/bundled.js.map +1 -0
- package/dist/gltf/glb-loader-types.cjs +59 -0
- package/dist/gltf/glb-loader-types.cjs.map +7 -0
- package/dist/gltf/glb-loader-types.d.ts +58 -0
- package/dist/gltf/glb-loader-types.d.ts.map +1 -0
- package/dist/gltf/glb-loader-types.js +24 -0
- package/dist/gltf/glb-loader-types.js.map +1 -0
- package/dist/gltf/glb-loader.cjs +46 -0
- package/dist/gltf/glb-loader.cjs.map +7 -0
- package/dist/gltf/glb-loader.d.ts +42 -0
- package/dist/gltf/glb-loader.d.ts.map +1 -0
- package/dist/gltf/glb-loader.js +24 -0
- package/dist/gltf/glb-loader.js.map +1 -0
- package/dist/gltf/glb-writer.cjs +51 -0
- package/dist/gltf/glb-writer.cjs.map +7 -0
- package/dist/gltf/glb-writer.d.ts +30 -0
- package/dist/gltf/glb-writer.d.ts.map +1 -0
- package/dist/gltf/glb-writer.js +31 -0
- package/dist/gltf/glb-writer.js.map +1 -0
- package/dist/gltf/gltf-1.schema.json +2075 -0
- package/dist/gltf/gltf-2.1.schema.json +1786 -0
- package/dist/gltf/gltf-2.schema.json +1786 -0
- package/dist/gltf/gltf-all.schema.json +5654 -0
- package/dist/gltf/gltf-format.cjs +55 -0
- package/dist/gltf/gltf-format.cjs.map +7 -0
- package/dist/gltf/gltf-format.d.ts +26 -0
- package/dist/gltf/gltf-format.d.ts.map +1 -0
- package/dist/gltf/gltf-format.js +29 -0
- package/dist/gltf/gltf-format.js.map +1 -0
- package/dist/gltf/gltf-loader-types.cjs +71 -0
- package/dist/gltf/gltf-loader-types.cjs.map +7 -0
- package/dist/gltf/gltf-loader-types.d.ts +77 -0
- package/dist/gltf/gltf-loader-types.d.ts.map +1 -0
- package/dist/gltf/gltf-loader-types.js +30 -0
- package/dist/gltf/gltf-loader-types.js.map +1 -0
- package/dist/gltf/gltf-loader.cjs +46 -0
- package/dist/gltf/gltf-loader.cjs.map +7 -0
- package/dist/gltf/gltf-loader.d.ts +45 -0
- package/dist/gltf/gltf-loader.d.ts.map +1 -0
- package/dist/gltf/gltf-loader.js +22 -0
- package/dist/gltf/gltf-loader.js.map +1 -0
- package/dist/gltf/gltf-source.cjs +236 -0
- package/dist/gltf/gltf-source.cjs.map +7 -0
- package/dist/gltf/gltf-source.d.ts +59 -0
- package/dist/gltf/gltf-source.d.ts.map +1 -0
- package/dist/gltf/gltf-source.js +230 -0
- package/dist/gltf/gltf-source.js.map +1 -0
- package/dist/gltf/gltf-writer.cjs +67 -0
- package/dist/gltf/gltf-writer.cjs.map +7 -0
- package/dist/gltf/gltf-writer.d.ts +14 -0
- package/dist/gltf/gltf-writer.d.ts.map +1 -0
- package/dist/gltf/gltf-writer.js +44 -0
- package/dist/gltf/gltf-writer.js.map +1 -0
- package/dist/gltf/gltf.schema.json +5654 -0
- package/dist/gltf/index.cjs +227 -0
- package/dist/gltf/index.cjs.map +7 -0
- package/dist/gltf/index.d.ts +46 -0
- package/dist/gltf/index.d.ts.map +1 -0
- package/dist/gltf/index.js +39 -0
- package/dist/gltf/index.js.map +1 -0
- package/dist/gltf/lib/api/append-gltf-v1-buffer-data.cjs +68 -0
- package/dist/gltf/lib/api/append-gltf-v1-buffer-data.cjs.map +7 -0
- package/dist/gltf/lib/api/append-gltf-v1-buffer-data.d.ts +17 -0
- package/dist/gltf/lib/api/append-gltf-v1-buffer-data.d.ts.map +1 -0
- package/dist/gltf/lib/api/append-gltf-v1-buffer-data.js +45 -0
- package/dist/gltf/lib/api/append-gltf-v1-buffer-data.js.map +1 -0
- package/dist/gltf/lib/api/bake-gltf-v1-bind-shapes.cjs +133 -0
- package/dist/gltf/lib/api/bake-gltf-v1-bind-shapes.cjs.map +7 -0
- package/dist/gltf/lib/api/bake-gltf-v1-bind-shapes.d.ts +8 -0
- package/dist/gltf/lib/api/bake-gltf-v1-bind-shapes.d.ts.map +1 -0
- package/dist/gltf/lib/api/bake-gltf-v1-bind-shapes.js +138 -0
- package/dist/gltf/lib/api/bake-gltf-v1-bind-shapes.js.map +1 -0
- package/dist/gltf/lib/api/clean-gltf-v1-fields.cjs +93 -0
- package/dist/gltf/lib/api/clean-gltf-v1-fields.cjs.map +7 -0
- package/dist/gltf/lib/api/clean-gltf-v1-fields.d.ts +6 -0
- package/dist/gltf/lib/api/clean-gltf-v1-fields.d.ts.map +1 -0
- package/dist/gltf/lib/api/clean-gltf-v1-fields.js +87 -0
- package/dist/gltf/lib/api/clean-gltf-v1-fields.js.map +1 -0
- package/dist/gltf/lib/api/convert-gltf-v1-accessors.cjs +128 -0
- package/dist/gltf/lib/api/convert-gltf-v1-accessors.cjs.map +7 -0
- package/dist/gltf/lib/api/convert-gltf-v1-accessors.d.ts +8 -0
- package/dist/gltf/lib/api/convert-gltf-v1-accessors.d.ts.map +1 -0
- package/dist/gltf/lib/api/convert-gltf-v1-accessors.js +147 -0
- package/dist/gltf/lib/api/convert-gltf-v1-accessors.js.map +1 -0
- package/dist/gltf/lib/api/convert-gltf-v1-animations.cjs +81 -0
- package/dist/gltf/lib/api/convert-gltf-v1-animations.cjs.map +7 -0
- package/dist/gltf/lib/api/convert-gltf-v1-animations.d.ts +4 -0
- package/dist/gltf/lib/api/convert-gltf-v1-animations.d.ts.map +1 -0
- package/dist/gltf/lib/api/convert-gltf-v1-animations.js +61 -0
- package/dist/gltf/lib/api/convert-gltf-v1-animations.js.map +1 -0
- package/dist/gltf/lib/api/convert-gltf-v1-materials.cjs +265 -0
- package/dist/gltf/lib/api/convert-gltf-v1-materials.cjs.map +7 -0
- package/dist/gltf/lib/api/convert-gltf-v1-materials.d.ts +6 -0
- package/dist/gltf/lib/api/convert-gltf-v1-materials.d.ts.map +1 -0
- package/dist/gltf/lib/api/convert-gltf-v1-materials.js +266 -0
- package/dist/gltf/lib/api/convert-gltf-v1-materials.js.map +1 -0
- package/dist/gltf/lib/api/convert-gltf-v1-matrix-nodes.cjs +98 -0
- package/dist/gltf/lib/api/convert-gltf-v1-matrix-nodes.cjs.map +7 -0
- package/dist/gltf/lib/api/convert-gltf-v1-matrix-nodes.d.ts +4 -0
- package/dist/gltf/lib/api/convert-gltf-v1-matrix-nodes.d.ts.map +1 -0
- package/dist/gltf/lib/api/convert-gltf-v1-matrix-nodes.js +86 -0
- package/dist/gltf/lib/api/convert-gltf-v1-matrix-nodes.js.map +1 -0
- package/dist/gltf/lib/api/convert-gltf-v1-skin-scenes.cjs +87 -0
- package/dist/gltf/lib/api/convert-gltf-v1-skin-scenes.cjs.map +7 -0
- package/dist/gltf/lib/api/convert-gltf-v1-skin-scenes.d.ts +4 -0
- package/dist/gltf/lib/api/convert-gltf-v1-skin-scenes.d.ts.map +1 -0
- package/dist/gltf/lib/api/convert-gltf-v1-skin-scenes.js +72 -0
- package/dist/gltf/lib/api/convert-gltf-v1-skin-scenes.js.map +1 -0
- package/dist/gltf/lib/api/convert-gltf-v1-skins.cjs +173 -0
- package/dist/gltf/lib/api/convert-gltf-v1-skins.cjs.map +7 -0
- package/dist/gltf/lib/api/convert-gltf-v1-skins.d.ts +9 -0
- package/dist/gltf/lib/api/convert-gltf-v1-skins.d.ts.map +1 -0
- package/dist/gltf/lib/api/convert-gltf-v1-skins.js +161 -0
- package/dist/gltf/lib/api/convert-gltf-v1-skins.js.map +1 -0
- package/dist/gltf/lib/api/gltf-accessors.cjs +83 -0
- package/dist/gltf/lib/api/gltf-accessors.cjs.map +7 -0
- package/dist/gltf/lib/api/gltf-accessors.d.ts +22 -0
- package/dist/gltf/lib/api/gltf-accessors.d.ts.map +1 -0
- package/dist/gltf/lib/api/gltf-accessors.js +66 -0
- package/dist/gltf/lib/api/gltf-accessors.js.map +1 -0
- package/dist/gltf/lib/api/gltf-culling.cjs +73 -0
- package/dist/gltf/lib/api/gltf-culling.cjs.map +7 -0
- package/dist/gltf/lib/api/gltf-culling.d.ts +12 -0
- package/dist/gltf/lib/api/gltf-culling.d.ts.map +1 -0
- package/dist/gltf/lib/api/gltf-culling.js +55 -0
- package/dist/gltf/lib/api/gltf-culling.js.map +1 -0
- package/dist/gltf/lib/api/gltf-extension-data.cjs +102 -0
- package/dist/gltf/lib/api/gltf-extension-data.cjs.map +7 -0
- package/dist/gltf/lib/api/gltf-extension-data.d.ts +38 -0
- package/dist/gltf/lib/api/gltf-extension-data.d.ts.map +1 -0
- package/dist/gltf/lib/api/gltf-extension-data.js +75 -0
- package/dist/gltf/lib/api/gltf-extension-data.js.map +1 -0
- package/dist/gltf/lib/api/gltf-extensions.cjs +128 -0
- package/dist/gltf/lib/api/gltf-extensions.cjs.map +7 -0
- package/dist/gltf/lib/api/gltf-extensions.d.ts +33 -0
- package/dist/gltf/lib/api/gltf-extensions.d.ts.map +1 -0
- package/dist/gltf/lib/api/gltf-extensions.js +102 -0
- package/dist/gltf/lib/api/gltf-extensions.js.map +1 -0
- package/dist/gltf/lib/api/gltf-iterator.cjs +1001 -0
- package/dist/gltf/lib/api/gltf-iterator.cjs.map +7 -0
- package/dist/gltf/lib/api/gltf-iterator.d.ts +407 -0
- package/dist/gltf/lib/api/gltf-iterator.d.ts.map +1 -0
- package/dist/gltf/lib/api/gltf-iterator.js +940 -0
- package/dist/gltf/lib/api/gltf-iterator.js.map +1 -0
- package/dist/gltf/lib/api/gltf-mesh-arrow.cjs +269 -0
- package/dist/gltf/lib/api/gltf-mesh-arrow.cjs.map +7 -0
- package/dist/gltf/lib/api/gltf-mesh-arrow.d.ts +53 -0
- package/dist/gltf/lib/api/gltf-mesh-arrow.d.ts.map +1 -0
- package/dist/gltf/lib/api/gltf-mesh-arrow.js +247 -0
- package/dist/gltf/lib/api/gltf-mesh-arrow.js.map +1 -0
- package/dist/gltf/lib/api/gltf-scenegraph.cjs +615 -0
- package/dist/gltf/lib/api/gltf-scenegraph.cjs.map +7 -0
- package/dist/gltf/lib/api/gltf-scenegraph.d.ts +183 -0
- package/dist/gltf/lib/api/gltf-scenegraph.d.ts.map +1 -0
- package/dist/gltf/lib/api/gltf-scenegraph.js +624 -0
- package/dist/gltf/lib/api/gltf-scenegraph.js.map +1 -0
- package/dist/gltf/lib/api/normalize-gltf-v1.cjs +479 -0
- package/dist/gltf/lib/api/normalize-gltf-v1.cjs.map +7 -0
- package/dist/gltf/lib/api/normalize-gltf-v1.d.ts +37 -0
- package/dist/gltf/lib/api/normalize-gltf-v1.d.ts.map +1 -0
- package/dist/gltf/lib/api/normalize-gltf-v1.js +461 -0
- package/dist/gltf/lib/api/normalize-gltf-v1.js.map +1 -0
- package/dist/gltf/lib/api/repack-gltf-v1-accessors.cjs +405 -0
- package/dist/gltf/lib/api/repack-gltf-v1-accessors.cjs.map +7 -0
- package/dist/gltf/lib/api/repack-gltf-v1-accessors.d.ts +50 -0
- package/dist/gltf/lib/api/repack-gltf-v1-accessors.d.ts.map +1 -0
- package/dist/gltf/lib/api/repack-gltf-v1-accessors.js +448 -0
- package/dist/gltf/lib/api/repack-gltf-v1-accessors.js.map +1 -0
- package/dist/gltf/lib/api/validate-gltf-v1-buffers.cjs +110 -0
- package/dist/gltf/lib/api/validate-gltf-v1-buffers.cjs.map +7 -0
- package/dist/gltf/lib/api/validate-gltf-v1-buffers.d.ts +4 -0
- package/dist/gltf/lib/api/validate-gltf-v1-buffers.d.ts.map +1 -0
- package/dist/gltf/lib/api/validate-gltf-v1-buffers.js +111 -0
- package/dist/gltf/lib/api/validate-gltf-v1-buffers.js.map +1 -0
- package/dist/gltf/lib/api/validate-gltf-v1-cameras.cjs +41 -0
- package/dist/gltf/lib/api/validate-gltf-v1-cameras.cjs.map +7 -0
- package/dist/gltf/lib/api/validate-gltf-v1-cameras.d.ts +4 -0
- package/dist/gltf/lib/api/validate-gltf-v1-cameras.d.ts.map +1 -0
- package/dist/gltf/lib/api/validate-gltf-v1-cameras.js +34 -0
- package/dist/gltf/lib/api/validate-gltf-v1-cameras.js.map +1 -0
- package/dist/gltf/lib/api/validate-gltf-v1-geometry.cjs +121 -0
- package/dist/gltf/lib/api/validate-gltf-v1-geometry.cjs.map +7 -0
- package/dist/gltf/lib/api/validate-gltf-v1-geometry.d.ts +5 -0
- package/dist/gltf/lib/api/validate-gltf-v1-geometry.d.ts.map +1 -0
- package/dist/gltf/lib/api/validate-gltf-v1-geometry.js +118 -0
- package/dist/gltf/lib/api/validate-gltf-v1-geometry.js.map +1 -0
- package/dist/gltf/lib/api/validate-gltf-v1-payloads.cjs +265 -0
- package/dist/gltf/lib/api/validate-gltf-v1-payloads.cjs.map +7 -0
- package/dist/gltf/lib/api/validate-gltf-v1-payloads.d.ts +4 -0
- package/dist/gltf/lib/api/validate-gltf-v1-payloads.d.ts.map +1 -0
- package/dist/gltf/lib/api/validate-gltf-v1-payloads.js +268 -0
- package/dist/gltf/lib/api/validate-gltf-v1-payloads.js.map +1 -0
- package/dist/gltf/lib/encoders/encode-glb.cjs +147 -0
- package/dist/gltf/lib/encoders/encode-glb.cjs.map +7 -0
- package/dist/gltf/lib/encoders/encode-glb.d.ts +21 -0
- package/dist/gltf/lib/encoders/encode-glb.d.ts.map +1 -0
- package/dist/gltf/lib/encoders/encode-glb.js +142 -0
- package/dist/gltf/lib/encoders/encode-glb.js.map +1 -0
- package/dist/gltf/lib/encoders/encode-gltf-draco.cjs +212 -0
- package/dist/gltf/lib/encoders/encode-gltf-draco.cjs.map +7 -0
- package/dist/gltf/lib/encoders/encode-gltf-draco.d.ts +20 -0
- package/dist/gltf/lib/encoders/encode-gltf-draco.d.ts.map +1 -0
- package/dist/gltf/lib/encoders/encode-gltf-draco.js +187 -0
- package/dist/gltf/lib/encoders/encode-gltf-draco.js.map +1 -0
- package/dist/gltf/lib/encoders/encode-gltf.cjs +40 -0
- package/dist/gltf/lib/encoders/encode-gltf.cjs.map +7 -0
- package/dist/gltf/lib/encoders/encode-gltf.d.ts +22 -0
- package/dist/gltf/lib/encoders/encode-gltf.d.ts.map +1 -0
- package/dist/gltf/lib/encoders/encode-gltf.js +32 -0
- package/dist/gltf/lib/encoders/encode-gltf.js.map +1 -0
- package/dist/gltf/lib/extensions/EXT_mesh_features.cjs +175 -0
- package/dist/gltf/lib/extensions/EXT_mesh_features.cjs.map +7 -0
- package/dist/gltf/lib/extensions/EXT_mesh_features.d.ts +22 -0
- package/dist/gltf/lib/extensions/EXT_mesh_features.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/EXT_mesh_features.js +189 -0
- package/dist/gltf/lib/extensions/EXT_mesh_features.js.map +1 -0
- package/dist/gltf/lib/extensions/EXT_mesh_polygon.cjs +149 -0
- package/dist/gltf/lib/extensions/EXT_mesh_polygon.cjs.map +7 -0
- package/dist/gltf/lib/extensions/EXT_mesh_polygon.d.ts +7 -0
- package/dist/gltf/lib/extensions/EXT_mesh_polygon.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/EXT_mesh_polygon.js +125 -0
- package/dist/gltf/lib/extensions/EXT_mesh_polygon.js.map +1 -0
- package/dist/gltf/lib/extensions/EXT_meshopt_compression.cjs +37 -0
- package/dist/gltf/lib/extensions/EXT_meshopt_compression.cjs.map +7 -0
- package/dist/gltf/lib/extensions/EXT_meshopt_compression.d.ts +25 -0
- package/dist/gltf/lib/extensions/EXT_meshopt_compression.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/EXT_meshopt_compression.js +29 -0
- package/dist/gltf/lib/extensions/EXT_meshopt_compression.js.map +1 -0
- package/dist/gltf/lib/extensions/EXT_primitive_voxels.cjs +87 -0
- package/dist/gltf/lib/extensions/EXT_primitive_voxels.cjs.map +7 -0
- package/dist/gltf/lib/extensions/EXT_primitive_voxels.d.ts +10 -0
- package/dist/gltf/lib/extensions/EXT_primitive_voxels.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/EXT_primitive_voxels.js +57 -0
- package/dist/gltf/lib/extensions/EXT_primitive_voxels.js.map +1 -0
- package/dist/gltf/lib/extensions/EXT_structural_metadata.cjs +684 -0
- package/dist/gltf/lib/extensions/EXT_structural_metadata.cjs.map +7 -0
- package/dist/gltf/lib/extensions/EXT_structural_metadata.d.ts +26 -0
- package/dist/gltf/lib/extensions/EXT_structural_metadata.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/EXT_structural_metadata.js +786 -0
- package/dist/gltf/lib/extensions/EXT_structural_metadata.js.map +1 -0
- package/dist/gltf/lib/extensions/EXT_texture_avif.cjs +56 -0
- package/dist/gltf/lib/extensions/EXT_texture_avif.cjs.map +7 -0
- package/dist/gltf/lib/extensions/EXT_texture_avif.d.ts +15 -0
- package/dist/gltf/lib/extensions/EXT_texture_avif.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/EXT_texture_avif.js +40 -0
- package/dist/gltf/lib/extensions/EXT_texture_avif.js.map +1 -0
- package/dist/gltf/lib/extensions/EXT_texture_webp.cjs +54 -0
- package/dist/gltf/lib/extensions/EXT_texture_webp.cjs.map +7 -0
- package/dist/gltf/lib/extensions/EXT_texture_webp.d.ts +10 -0
- package/dist/gltf/lib/extensions/EXT_texture_webp.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/EXT_texture_webp.js +35 -0
- package/dist/gltf/lib/extensions/EXT_texture_webp.js.map +1 -0
- package/dist/gltf/lib/extensions/KHR_accessor_float64.cjs +45 -0
- package/dist/gltf/lib/extensions/KHR_accessor_float64.cjs.map +7 -0
- package/dist/gltf/lib/extensions/KHR_accessor_float64.d.ts +6 -0
- package/dist/gltf/lib/extensions/KHR_accessor_float64.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/KHR_accessor_float64.js +20 -0
- package/dist/gltf/lib/extensions/KHR_accessor_float64.js.map +1 -0
- package/dist/gltf/lib/extensions/KHR_audio_emitter.cjs +128 -0
- package/dist/gltf/lib/extensions/KHR_audio_emitter.cjs.map +7 -0
- package/dist/gltf/lib/extensions/KHR_audio_emitter.d.ts +8 -0
- package/dist/gltf/lib/extensions/KHR_audio_emitter.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/KHR_audio_emitter.js +121 -0
- package/dist/gltf/lib/extensions/KHR_audio_emitter.js.map +1 -0
- package/dist/gltf/lib/extensions/KHR_binary_gltf.cjs +53 -0
- package/dist/gltf/lib/extensions/KHR_binary_gltf.cjs.map +7 -0
- package/dist/gltf/lib/extensions/KHR_binary_gltf.d.ts +6 -0
- package/dist/gltf/lib/extensions/KHR_binary_gltf.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/KHR_binary_gltf.js +40 -0
- package/dist/gltf/lib/extensions/KHR_binary_gltf.js.map +1 -0
- package/dist/gltf/lib/extensions/KHR_draco_mesh_compression.cjs +131 -0
- package/dist/gltf/lib/extensions/KHR_draco_mesh_compression.cjs.map +7 -0
- package/dist/gltf/lib/extensions/KHR_draco_mesh_compression.d.ts +8 -0
- package/dist/gltf/lib/extensions/KHR_draco_mesh_compression.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/KHR_draco_mesh_compression.js +107 -0
- package/dist/gltf/lib/extensions/KHR_draco_mesh_compression.js.map +1 -0
- package/dist/gltf/lib/extensions/KHR_gaussian_splatting.cjs +225 -0
- package/dist/gltf/lib/extensions/KHR_gaussian_splatting.cjs.map +7 -0
- package/dist/gltf/lib/extensions/KHR_gaussian_splatting.d.ts +14 -0
- package/dist/gltf/lib/extensions/KHR_gaussian_splatting.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/KHR_gaussian_splatting.js +176 -0
- package/dist/gltf/lib/extensions/KHR_gaussian_splatting.js.map +1 -0
- package/dist/gltf/lib/extensions/KHR_mesh_primitive_restart.cjs +110 -0
- package/dist/gltf/lib/extensions/KHR_mesh_primitive_restart.cjs.map +7 -0
- package/dist/gltf/lib/extensions/KHR_mesh_primitive_restart.d.ts +10 -0
- package/dist/gltf/lib/extensions/KHR_mesh_primitive_restart.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/KHR_mesh_primitive_restart.js +87 -0
- package/dist/gltf/lib/extensions/KHR_mesh_primitive_restart.js.map +1 -0
- package/dist/gltf/lib/extensions/KHR_meshopt_compression.cjs +37 -0
- package/dist/gltf/lib/extensions/KHR_meshopt_compression.cjs.map +7 -0
- package/dist/gltf/lib/extensions/KHR_meshopt_compression.d.ts +24 -0
- package/dist/gltf/lib/extensions/KHR_meshopt_compression.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/KHR_meshopt_compression.js +28 -0
- package/dist/gltf/lib/extensions/KHR_meshopt_compression.js.map +1 -0
- package/dist/gltf/lib/extensions/KHR_texture_basisu.cjs +47 -0
- package/dist/gltf/lib/extensions/KHR_texture_basisu.cjs.map +7 -0
- package/dist/gltf/lib/extensions/KHR_texture_basisu.d.ts +10 -0
- package/dist/gltf/lib/extensions/KHR_texture_basisu.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/KHR_texture_basisu.js +26 -0
- package/dist/gltf/lib/extensions/KHR_texture_basisu.js.map +1 -0
- package/dist/gltf/lib/extensions/KHR_texture_transform.cjs +258 -0
- package/dist/gltf/lib/extensions/KHR_texture_transform.cjs.map +7 -0
- package/dist/gltf/lib/extensions/KHR_texture_transform.d.ts +10 -0
- package/dist/gltf/lib/extensions/KHR_texture_transform.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/KHR_texture_transform.js +271 -0
- package/dist/gltf/lib/extensions/KHR_texture_transform.js.map +1 -0
- package/dist/gltf/lib/extensions/MPEG_audio_spatial.cjs +70 -0
- package/dist/gltf/lib/extensions/MPEG_audio_spatial.cjs.map +7 -0
- package/dist/gltf/lib/extensions/MPEG_audio_spatial.d.ts +10 -0
- package/dist/gltf/lib/extensions/MPEG_audio_spatial.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/MPEG_audio_spatial.js +45 -0
- package/dist/gltf/lib/extensions/MPEG_audio_spatial.js.map +1 -0
- package/dist/gltf/lib/extensions/MSFT_texture_dds.cjs +64 -0
- package/dist/gltf/lib/extensions/MSFT_texture_dds.cjs.map +7 -0
- package/dist/gltf/lib/extensions/MSFT_texture_dds.d.ts +12 -0
- package/dist/gltf/lib/extensions/MSFT_texture_dds.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/MSFT_texture_dds.js +39 -0
- package/dist/gltf/lib/extensions/MSFT_texture_dds.js.map +1 -0
- package/dist/gltf/lib/extensions/deprecated/EXT_feature_metadata.cjs +276 -0
- package/dist/gltf/lib/extensions/deprecated/EXT_feature_metadata.cjs.map +7 -0
- package/dist/gltf/lib/extensions/deprecated/EXT_feature_metadata.d.ts +5 -0
- package/dist/gltf/lib/extensions/deprecated/EXT_feature_metadata.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/deprecated/EXT_feature_metadata.js +306 -0
- package/dist/gltf/lib/extensions/deprecated/EXT_feature_metadata.js.map +1 -0
- package/dist/gltf/lib/extensions/deprecated/KHR_lights_punctual.cjs +71 -0
- package/dist/gltf/lib/extensions/deprecated/KHR_lights_punctual.cjs.map +7 -0
- package/dist/gltf/lib/extensions/deprecated/KHR_lights_punctual.d.ts +5 -0
- package/dist/gltf/lib/extensions/deprecated/KHR_lights_punctual.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/deprecated/KHR_lights_punctual.js +54 -0
- package/dist/gltf/lib/extensions/deprecated/KHR_lights_punctual.js.map +1 -0
- package/dist/gltf/lib/extensions/deprecated/KHR_materials_unlit.cjs +62 -0
- package/dist/gltf/lib/extensions/deprecated/KHR_materials_unlit.cjs.map +7 -0
- package/dist/gltf/lib/extensions/deprecated/KHR_materials_unlit.d.ts +9 -0
- package/dist/gltf/lib/extensions/deprecated/KHR_materials_unlit.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/deprecated/KHR_materials_unlit.js +38 -0
- package/dist/gltf/lib/extensions/deprecated/KHR_materials_unlit.js.map +1 -0
- package/dist/gltf/lib/extensions/deprecated/KHR_techniques_webgl.cjs +99 -0
- package/dist/gltf/lib/extensions/deprecated/KHR_techniques_webgl.cjs.map +7 -0
- package/dist/gltf/lib/extensions/deprecated/KHR_techniques_webgl.d.ts +5 -0
- package/dist/gltf/lib/extensions/deprecated/KHR_techniques_webgl.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/deprecated/KHR_techniques_webgl.js +76 -0
- package/dist/gltf/lib/extensions/deprecated/KHR_techniques_webgl.js.map +1 -0
- package/dist/gltf/lib/extensions/meshopt-compression.cjs +114 -0
- package/dist/gltf/lib/extensions/meshopt-compression.cjs.map +7 -0
- package/dist/gltf/lib/extensions/meshopt-compression.d.ts +48 -0
- package/dist/gltf/lib/extensions/meshopt-compression.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/meshopt-compression.js +123 -0
- package/dist/gltf/lib/extensions/meshopt-compression.js.map +1 -0
- package/dist/gltf/lib/extensions/utils/3d-tiles-utils.cjs +280 -0
- package/dist/gltf/lib/extensions/utils/3d-tiles-utils.cjs.map +7 -0
- package/dist/gltf/lib/extensions/utils/3d-tiles-utils.d.ts +84 -0
- package/dist/gltf/lib/extensions/utils/3d-tiles-utils.d.ts.map +1 -0
- package/dist/gltf/lib/extensions/utils/3d-tiles-utils.js +360 -0
- package/dist/gltf/lib/extensions/utils/3d-tiles-utils.js.map +1 -0
- package/dist/gltf/lib/gltf-utils/get-typed-array.cjs +189 -0
- package/dist/gltf/lib/gltf-utils/get-typed-array.cjs.map +7 -0
- package/dist/gltf/lib/gltf-utils/get-typed-array.d.ts +13 -0
- package/dist/gltf/lib/gltf-utils/get-typed-array.d.ts.map +1 -0
- package/dist/gltf/lib/gltf-utils/get-typed-array.js +175 -0
- package/dist/gltf/lib/gltf-utils/get-typed-array.js.map +1 -0
- package/dist/gltf/lib/gltf-utils/gltf-attribute-utils.cjs +90 -0
- package/dist/gltf/lib/gltf-utils/gltf-attribute-utils.cjs.map +7 -0
- package/dist/gltf/lib/gltf-utils/gltf-attribute-utils.d.ts +6 -0
- package/dist/gltf/lib/gltf-utils/gltf-attribute-utils.d.ts.map +1 -0
- package/dist/gltf/lib/gltf-utils/gltf-attribute-utils.js +72 -0
- package/dist/gltf/lib/gltf-utils/gltf-attribute-utils.js.map +1 -0
- package/dist/gltf/lib/gltf-utils/gltf-constants.cjs +90 -0
- package/dist/gltf/lib/gltf-utils/gltf-constants.cjs.map +7 -0
- package/dist/gltf/lib/gltf-utils/gltf-constants.d.ts +26 -0
- package/dist/gltf/lib/gltf-utils/gltf-constants.d.ts.map +1 -0
- package/dist/gltf/lib/gltf-utils/gltf-constants.js +46 -0
- package/dist/gltf/lib/gltf-utils/gltf-constants.js.map +1 -0
- package/dist/gltf/lib/gltf-utils/gltf-utils.cjs +157 -0
- package/dist/gltf/lib/gltf-utils/gltf-utils.cjs.map +7 -0
- package/dist/gltf/lib/gltf-utils/gltf-utils.d.ts +17 -0
- package/dist/gltf/lib/gltf-utils/gltf-utils.d.ts.map +1 -0
- package/dist/gltf/lib/gltf-utils/gltf-utils.js +135 -0
- package/dist/gltf/lib/gltf-utils/gltf-utils.js.map +1 -0
- package/dist/gltf/lib/gltf-utils/resolve-gltf-file.cjs +91 -0
- package/dist/gltf/lib/gltf-utils/resolve-gltf-file.cjs.map +7 -0
- package/dist/gltf/lib/gltf-utils/resolve-gltf-file.d.ts +21 -0
- package/dist/gltf/lib/gltf-utils/resolve-gltf-file.d.ts.map +1 -0
- package/dist/gltf/lib/gltf-utils/resolve-gltf-file.js +77 -0
- package/dist/gltf/lib/gltf-utils/resolve-gltf-file.js.map +1 -0
- package/dist/gltf/lib/gltf-utils/resolve-url.cjs +61 -0
- package/dist/gltf/lib/gltf-utils/resolve-url.cjs.map +7 -0
- package/dist/gltf/lib/gltf-utils/resolve-url.d.ts +10 -0
- package/dist/gltf/lib/gltf-utils/resolve-url.d.ts.map +1 -0
- package/dist/gltf/lib/gltf-utils/resolve-url.js +43 -0
- package/dist/gltf/lib/gltf-utils/resolve-url.js.map +1 -0
- package/dist/gltf/lib/parsers/parse-glb.cjs +185 -0
- package/dist/gltf/lib/parsers/parse-glb.cjs.map +7 -0
- package/dist/gltf/lib/parsers/parse-glb.d.ts +20 -0
- package/dist/gltf/lib/parsers/parse-glb.d.ts.map +1 -0
- package/dist/gltf/lib/parsers/parse-glb.js +216 -0
- package/dist/gltf/lib/parsers/parse-glb.js.map +1 -0
- package/dist/gltf/lib/parsers/parse-gltf.cjs +391 -0
- package/dist/gltf/lib/parsers/parse-gltf.cjs.map +7 -0
- package/dist/gltf/lib/parsers/parse-gltf.d.ts +45 -0
- package/dist/gltf/lib/parsers/parse-gltf.d.ts.map +1 -0
- package/dist/gltf/lib/parsers/parse-gltf.js +392 -0
- package/dist/gltf/lib/parsers/parse-gltf.js.map +1 -0
- package/dist/gltf/lib/types/glb-types.cjs +19 -0
- package/dist/gltf/lib/types/glb-types.cjs.map +7 -0
- package/dist/gltf/lib/types/glb-types.d.ts +35 -0
- package/dist/gltf/lib/types/glb-types.d.ts.map +1 -0
- package/dist/gltf/lib/types/glb-types.js +5 -0
- package/dist/gltf/lib/types/glb-types.js.map +1 -0
- package/dist/gltf/lib/types/gltf-additional-extension-schemas.cjs +145 -0
- package/dist/gltf/lib/types/gltf-additional-extension-schemas.cjs.map +7 -0
- package/dist/gltf/lib/types/gltf-additional-extension-schemas.d.ts +133 -0
- package/dist/gltf/lib/types/gltf-additional-extension-schemas.d.ts.map +1 -0
- package/dist/gltf/lib/types/gltf-additional-extension-schemas.js +109 -0
- package/dist/gltf/lib/types/gltf-additional-extension-schemas.js.map +1 -0
- package/dist/gltf/lib/types/gltf-audio-extension-schemas.cjs +189 -0
- package/dist/gltf/lib/types/gltf-audio-extension-schemas.cjs.map +7 -0
- package/dist/gltf/lib/types/gltf-audio-extension-schemas.d.ts +192 -0
- package/dist/gltf/lib/types/gltf-audio-extension-schemas.d.ts.map +1 -0
- package/dist/gltf/lib/types/gltf-audio-extension-schemas.js +154 -0
- package/dist/gltf/lib/types/gltf-audio-extension-schemas.js.map +1 -0
- package/dist/gltf/lib/types/gltf-ext-feature-metadata-schema.cjs +19 -0
- package/dist/gltf/lib/types/gltf-ext-feature-metadata-schema.cjs.map +7 -0
- package/dist/gltf/lib/types/gltf-ext-feature-metadata-schema.d.ts +421 -0
- package/dist/gltf/lib/types/gltf-ext-feature-metadata-schema.d.ts.map +1 -0
- package/dist/gltf/lib/types/gltf-ext-feature-metadata-schema.js +5 -0
- package/dist/gltf/lib/types/gltf-ext-feature-metadata-schema.js.map +1 -0
- package/dist/gltf/lib/types/gltf-ext-gaussian-splatting-schema.cjs +19 -0
- package/dist/gltf/lib/types/gltf-ext-gaussian-splatting-schema.cjs.map +7 -0
- package/dist/gltf/lib/types/gltf-ext-gaussian-splatting-schema.d.ts +39 -0
- package/dist/gltf/lib/types/gltf-ext-gaussian-splatting-schema.d.ts.map +1 -0
- package/dist/gltf/lib/types/gltf-ext-gaussian-splatting-schema.js +5 -0
- package/dist/gltf/lib/types/gltf-ext-gaussian-splatting-schema.js.map +1 -0
- package/dist/gltf/lib/types/gltf-ext-mesh-features-schema.cjs +19 -0
- package/dist/gltf/lib/types/gltf-ext-mesh-features-schema.cjs.map +7 -0
- package/dist/gltf/lib/types/gltf-ext-mesh-features-schema.d.ts +49 -0
- package/dist/gltf/lib/types/gltf-ext-mesh-features-schema.d.ts.map +1 -0
- package/dist/gltf/lib/types/gltf-ext-mesh-features-schema.js +5 -0
- package/dist/gltf/lib/types/gltf-ext-mesh-features-schema.js.map +1 -0
- package/dist/gltf/lib/types/gltf-ext-structural-metadata-schema.cjs +19 -0
- package/dist/gltf/lib/types/gltf-ext-structural-metadata-schema.cjs.map +7 -0
- package/dist/gltf/lib/types/gltf-ext-structural-metadata-schema.d.ts +334 -0
- package/dist/gltf/lib/types/gltf-ext-structural-metadata-schema.d.ts.map +1 -0
- package/dist/gltf/lib/types/gltf-ext-structural-metadata-schema.js +5 -0
- package/dist/gltf/lib/types/gltf-ext-structural-metadata-schema.js.map +1 -0
- package/dist/gltf/lib/types/gltf-ext-vector-voxel-schema.cjs +19 -0
- package/dist/gltf/lib/types/gltf-ext-vector-voxel-schema.cjs.map +7 -0
- package/dist/gltf/lib/types/gltf-ext-vector-voxel-schema.d.ts +42 -0
- package/dist/gltf/lib/types/gltf-ext-vector-voxel-schema.d.ts.map +1 -0
- package/dist/gltf/lib/types/gltf-ext-vector-voxel-schema.js +5 -0
- package/dist/gltf/lib/types/gltf-ext-vector-voxel-schema.js.map +1 -0
- package/dist/gltf/lib/types/gltf-extension-schemas.cjs +91 -0
- package/dist/gltf/lib/types/gltf-extension-schemas.cjs.map +7 -0
- package/dist/gltf/lib/types/gltf-extension-schemas.d.ts +256 -0
- package/dist/gltf/lib/types/gltf-extension-schemas.d.ts.map +1 -0
- package/dist/gltf/lib/types/gltf-extension-schemas.js +60 -0
- package/dist/gltf/lib/types/gltf-extension-schemas.js.map +1 -0
- package/dist/gltf/lib/types/gltf-interactivity.cjs +34 -0
- package/dist/gltf/lib/types/gltf-interactivity.cjs.map +7 -0
- package/dist/gltf/lib/types/gltf-interactivity.d.ts +131 -0
- package/dist/gltf/lib/types/gltf-interactivity.d.ts.map +1 -0
- package/dist/gltf/lib/types/gltf-interactivity.js +13 -0
- package/dist/gltf/lib/types/gltf-interactivity.js.map +1 -0
- package/dist/gltf/lib/types/gltf-json-schema.cjs +19 -0
- package/dist/gltf/lib/types/gltf-json-schema.cjs.map +7 -0
- package/dist/gltf/lib/types/gltf-json-schema.d.ts +841 -0
- package/dist/gltf/lib/types/gltf-json-schema.d.ts.map +1 -0
- package/dist/gltf/lib/types/gltf-json-schema.js +3 -0
- package/dist/gltf/lib/types/gltf-json-schema.js.map +1 -0
- package/dist/gltf/lib/types/gltf-khr-audio-emitter-schema.cjs +19 -0
- package/dist/gltf/lib/types/gltf-khr-audio-emitter-schema.cjs.map +7 -0
- package/dist/gltf/lib/types/gltf-khr-audio-emitter-schema.d.ts +46 -0
- package/dist/gltf/lib/types/gltf-khr-audio-emitter-schema.d.ts.map +1 -0
- package/dist/gltf/lib/types/gltf-khr-audio-emitter-schema.js +5 -0
- package/dist/gltf/lib/types/gltf-khr-audio-emitter-schema.js.map +1 -0
- package/dist/gltf/lib/types/gltf-mpeg-audio-spatial-schema.cjs +19 -0
- package/dist/gltf/lib/types/gltf-mpeg-audio-spatial-schema.cjs.map +7 -0
- package/dist/gltf/lib/types/gltf-mpeg-audio-spatial-schema.d.ts +20 -0
- package/dist/gltf/lib/types/gltf-mpeg-audio-spatial-schema.d.ts.map +1 -0
- package/dist/gltf/lib/types/gltf-mpeg-audio-spatial-schema.js +5 -0
- package/dist/gltf/lib/types/gltf-mpeg-audio-spatial-schema.js.map +1 -0
- package/dist/gltf/lib/types/gltf-official-json-schemas.cjs +17840 -0
- package/dist/gltf/lib/types/gltf-official-json-schemas.cjs.map +7 -0
- package/dist/gltf/lib/types/gltf-official-json-schemas.d.ts +14 -0
- package/dist/gltf/lib/types/gltf-official-json-schemas.d.ts.map +1 -0
- package/dist/gltf/lib/types/gltf-official-json-schemas.js +17751 -0
- package/dist/gltf/lib/types/gltf-official-json-schemas.js.map +1 -0
- package/dist/gltf/lib/types/gltf-shape-schema.cjs +19 -0
- package/dist/gltf/lib/types/gltf-shape-schema.cjs.map +7 -0
- package/dist/gltf/lib/types/gltf-shape-schema.d.ts +49 -0
- package/dist/gltf/lib/types/gltf-shape-schema.d.ts.map +1 -0
- package/dist/gltf/lib/types/gltf-shape-schema.js +5 -0
- package/dist/gltf/lib/types/gltf-shape-schema.js.map +1 -0
- package/dist/gltf/lib/types/gltf-texture-procedurals.cjs +19 -0
- package/dist/gltf/lib/types/gltf-texture-procedurals.cjs.map +7 -0
- package/dist/gltf/lib/types/gltf-texture-procedurals.d.ts +45 -0
- package/dist/gltf/lib/types/gltf-texture-procedurals.d.ts.map +1 -0
- package/dist/gltf/lib/types/gltf-texture-procedurals.js +5 -0
- package/dist/gltf/lib/types/gltf-texture-procedurals.js.map +1 -0
- package/dist/gltf/lib/types/gltf-types.cjs +19 -0
- package/dist/gltf/lib/types/gltf-types.cjs.map +7 -0
- package/dist/gltf/lib/types/gltf-types.d.ts +60 -0
- package/dist/gltf/lib/types/gltf-types.d.ts.map +1 -0
- package/dist/gltf/lib/types/gltf-types.js +5 -0
- package/dist/gltf/lib/types/gltf-types.js.map +1 -0
- package/dist/gltf/lib/types/gltf-vector-topology.cjs +19 -0
- package/dist/gltf/lib/types/gltf-vector-topology.cjs.map +7 -0
- package/dist/gltf/lib/types/gltf-vector-topology.d.ts +56 -0
- package/dist/gltf/lib/types/gltf-vector-topology.d.ts.map +1 -0
- package/dist/gltf/lib/types/gltf-vector-topology.js +5 -0
- package/dist/gltf/lib/types/gltf-vector-topology.js.map +1 -0
- package/dist/gltf/lib/types/gltf-version-zod-schemas.cjs +423 -0
- package/dist/gltf/lib/types/gltf-version-zod-schemas.cjs.map +7 -0
- package/dist/gltf/lib/types/gltf-version-zod-schemas.d.ts +1163 -0
- package/dist/gltf/lib/types/gltf-version-zod-schemas.d.ts.map +1 -0
- package/dist/gltf/lib/types/gltf-version-zod-schemas.js +333 -0
- package/dist/gltf/lib/types/gltf-version-zod-schemas.js.map +1 -0
- package/dist/gltf/lib/types/gltf-zod-schema.cjs +465 -0
- package/dist/gltf/lib/types/gltf-zod-schema.cjs.map +7 -0
- package/dist/gltf/lib/types/gltf-zod-schema.d.ts +1651 -0
- package/dist/gltf/lib/types/gltf-zod-schema.d.ts.map +1 -0
- package/dist/gltf/lib/types/gltf-zod-schema.js +501 -0
- package/dist/gltf/lib/types/gltf-zod-schema.js.map +1 -0
- package/dist/gltf/lib/utils/assert.cjs +35 -0
- package/dist/gltf/lib/utils/assert.cjs.map +7 -0
- package/dist/gltf/lib/utils/assert.d.ts +2 -0
- package/dist/gltf/lib/utils/assert.d.ts.map +1 -0
- package/dist/gltf/lib/utils/assert.js +12 -0
- package/dist/gltf/lib/utils/assert.js.map +1 -0
- package/dist/gltf/lib/utils/version.cjs +31 -0
- package/dist/gltf/lib/utils/version.cjs.map +7 -0
- package/dist/gltf/lib/utils/version.d.ts +2 -0
- package/dist/gltf/lib/utils/version.d.ts.map +1 -0
- package/dist/gltf/lib/utils/version.js +8 -0
- package/dist/gltf/lib/utils/version.js.map +1 -0
- package/dist/gltf/libs/README.md +12 -0
- package/dist/gltf/libs/meshopt-decoder.d.mts +15 -0
- package/dist/gltf/libs/meshopt-decoder.mjs +196 -0
- package/dist/gltf/libs/meshoptimizer-LICENSE.md +21 -0
- package/dist/gltf/mesh-arrow.cjs +31 -0
- package/dist/gltf/mesh-arrow.cjs.map +7 -0
- package/dist/gltf/mesh-arrow.d.ts +2 -0
- package/dist/gltf/mesh-arrow.d.ts.map +1 -0
- package/dist/gltf/mesh-arrow.js +5 -0
- package/dist/gltf/mesh-arrow.js.map +1 -0
- package/dist/gltf/meshopt/meshopt-decoder.cjs +93 -0
- package/dist/gltf/meshopt/meshopt-decoder.cjs.map +7 -0
- package/dist/gltf/meshopt/meshopt-decoder.d.ts +78 -0
- package/dist/gltf/meshopt/meshopt-decoder.d.ts.map +1 -0
- package/dist/gltf/meshopt/meshopt-decoder.js +111 -0
- package/dist/gltf/meshopt/meshopt-decoder.js.map +1 -0
- package/dist/gltf/meshopt/meshopt-module-loader.cjs +43 -0
- package/dist/gltf/meshopt/meshopt-module-loader.cjs.map +7 -0
- package/dist/gltf/meshopt/meshopt-module-loader.d.ts +3 -0
- package/dist/gltf/meshopt/meshopt-module-loader.d.ts.map +1 -0
- package/dist/gltf/meshopt/meshopt-module-loader.js +8 -0
- package/dist/gltf/meshopt/meshopt-module-loader.js.map +1 -0
- package/dist/gltf/schema.cjs +63 -0
- package/dist/gltf/schema.cjs.map +7 -0
- package/dist/gltf/schema.d.ts +7 -0
- package/dist/gltf/schema.d.ts.map +1 -0
- package/dist/gltf/schema.js +11 -0
- package/dist/gltf/schema.js.map +1 -0
- package/dist/gltf/schemas/extensions/1.0/Khronos/KHR_binary_glTF/image.KHR_binary_glTF.schema.json +34 -0
- package/dist/gltf/schemas/extensions/1.0/Khronos/KHR_binary_glTF/shader.KHR_binary_glTF.schema.json +16 -0
- package/dist/gltf/schemas/extensions/1.0/Khronos/KHR_materials_common/glTF.KHR_materials_common.schema.json +272 -0
- package/dist/gltf/schemas/extensions/1.0/Khronos/KHR_materials_common/light.ambient.schema.json +57 -0
- package/dist/gltf/schemas/extensions/1.0/Khronos/KHR_materials_common/light.directional.schema.json +57 -0
- package/dist/gltf/schemas/extensions/1.0/Khronos/KHR_materials_common/light.point.schema.json +72 -0
- package/dist/gltf/schemas/extensions/1.0/Khronos/KHR_materials_common/light.schema.json +258 -0
- package/dist/gltf/schemas/extensions/1.0/Khronos/KHR_materials_common/light.spot.schema.json +82 -0
- package/dist/gltf/schemas/extensions/1.0/Khronos/KHR_materials_common/node.KHR_materials_common.schema.json +23 -0
- package/dist/gltf/schemas/extensions/1.0/Vendor/CESIUM_RTC/CESIUM_RTC.schema.json +21 -0
- package/dist/gltf/schemas/extensions/1.0/Vendor/WEB3D_quantized_attributes/WEB3D_quantized_attributes.accessor.schema.json +40 -0
- package/dist/gltf/schemas/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/glTF.KHR_materials_pbrSpecularGlossiness.schema.json +141 -0
- package/dist/gltf/schemas/extensions/2.0/Archived/KHR_techniques_webgl/glTF.KHR_techniques_webgl.schema.json +417 -0
- package/dist/gltf/schemas/extensions/2.0/Archived/KHR_techniques_webgl/material.KHR_techniques_webgl.schema.json +133 -0
- package/dist/gltf/schemas/extensions/2.0/Archived/KHR_techniques_webgl/program.schema.json +97 -0
- package/dist/gltf/schemas/extensions/2.0/Archived/KHR_techniques_webgl/shader.schema.json +109 -0
- package/dist/gltf/schemas/extensions/2.0/Archived/KHR_techniques_webgl/technique.attribute.schema.json +51 -0
- package/dist/gltf/schemas/extensions/2.0/Archived/KHR_techniques_webgl/technique.schema.json +267 -0
- package/dist/gltf/schemas/extensions/2.0/Archived/KHR_techniques_webgl/technique.uniform.schema.json +185 -0
- package/dist/gltf/schemas/extensions/2.0/Archived/KHR_techniques_webgl/uniform.value.schema.json +98 -0
- package/dist/gltf/schemas/extensions/2.0/Archived/KHR_xmp/glTF.KHR_xmp.schema.json +61 -0
- package/dist/gltf/schemas/extensions/2.0/Archived/KHR_xmp/node.KHR_xmp.schema.json +59 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_animation_pointer/animation.channel.target.KHR_animation_pointer.schema.json +51 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_draco_mesh_compression/mesh.primitive.KHR_draco_mesh_compression.schema.json +67 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_gaussian_splatting/mesh.primitive.KHR_gaussian_splatting.schema.json +100 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_interactivity/declaration.KHR_interactivity.schema.json +106 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_interactivity/event.KHR_interactivity.schema.json +90 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_interactivity/glTF.KHR_interactivity.schema.json +546 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_interactivity/graph.KHR_interactivity.schema.json +512 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_interactivity/node.KHR_interactivity.schema.json +183 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_interactivity/type.KHR_interactivity.schema.json +96 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_interactivity/variable.KHR_interactivity.schema.json +64 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_lights_punctual/glTF.KHR_lights_punctual.schema.json +175 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_lights_punctual/light.schema.json +151 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_lights_punctual/light.spot.schema.json +58 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_lights_punctual/node.KHR_lights_punctual.schema.json +58 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_materials_anisotropy/material.KHR_materials_anisotropy.schema.json +103 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_materials_clearcoat/material.KHR_materials_clearcoat.schema.json +144 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/material.KHR_materials_diffuse_transmission.schema.json +123 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_materials_dispersion/material.KHR_materials_dispersion.schema.json +50 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_materials_emissive_strength/material.KHR_materials_emissive_strength.schema.json +49 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_materials_ior/material.KHR_materials_ior.schema.json +58 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_materials_iridescence/material.KHR_materials_iridescence.schema.json +125 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_materials_sheen/material.KHR_materials_sheen.schema.json +122 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_materials_specular/material.KHR_materials_specular.schema.json +122 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_materials_transmission/material.KHR_materials_transmission.schema.json +97 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_materials_unlit/material.KHR_materials_unlit.schema.json +43 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_materials_variants/glTF.KHR_materials_variants.schema.json +88 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_materials_variants/mesh.primitive.KHR_materials_variants.schema.json +100 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_materials_volume/material.KHR_materials_volume.schema.json +119 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_meshopt_compression/buffer.KHR_meshopt_compression.schema.json +48 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_meshopt_compression/bufferView.KHR_meshopt_compression.schema.json +106 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_node_hoverability/node.KHR_node_hoverability.schema.json +49 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_node_selectability/node.KHR_node_selectability.schema.json +49 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_node_visibility/node.KHR_node_visibility.schema.json +49 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_texture_basisu/texture.KHR_texture_basisu.schema.json +56 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_texture_transform/textureInfo.KHR_texture_transform.schema.json +79 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_xmp_json_ld/KHR_xmp_json_ld.schema.json +59 -0
- package/dist/gltf/schemas/extensions/2.0/Khronos/KHR_xmp_json_ld/glTF.KHR_xmp_json_ld.schema.json +70 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/ADOBE_materials_clearcoat_specular/glTF.ADOBE_materials_clearcoat_specular.schema.json +105 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/ADOBE_materials_clearcoat_tint/material.ADOBE_materials_clearcoat_tint.schema.json +106 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/ADOBE_materials_thin_transparency/glTF.ADOBE_materials_thin_transparency.schema.json +105 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/AGI_articulations/articulation.schema.json +177 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/AGI_articulations/articulation.stage.schema.json +136 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/AGI_articulations/gltf.AGI_articulations.schema.json +200 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/AGI_articulations/node.AGI_articulations.schema.json +53 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/AGI_stk_metadata/gltf.AGI_stk_metadata.schema.json +81 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/AGI_stk_metadata/node.AGI_stk_metadata.schema.json +53 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/AGI_stk_metadata/solarPanelGroup.schema.json +59 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/CESIUM_primitive_outline/primitive.CESIUM_primitive_outline.schema.json +56 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/EXT_lights_ies/glTF.EXT_lights_ies.schema.json +132 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/EXT_lights_ies/lightProfile.schema.json +107 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/EXT_lights_ies/node.EXT_lights_ies.schema.json +80 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/EXT_lights_image_based/glTF.EXT_lights_image_based.schema.json +145 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/EXT_lights_image_based/light.schema.json +121 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/EXT_lights_image_based/scene.EXT_lights_image_based.schema.json +58 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/EXT_mesh_gpu_instancing/glTF.EXT_mesh_gpu_instancing.schema.json +56 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/EXT_mesh_manifold/mesh.EXT_mesh_manifold.schema.json +175 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/EXT_mesh_primitive_edge_visibility/lineString.schema.json +70 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/EXT_mesh_primitive_edge_visibility/primitive.EXT_mesh_primitive_edge_visibility.schema.json +119 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/EXT_mesh_primitive_restart/EXT_mesh_primitive_restart.schema.json +97 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/EXT_mesh_primitive_restart/primitiveGroup.schema.json +72 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/EXT_meshopt_compression/buffer.EXT_meshopt_compression.schema.json +48 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/EXT_meshopt_compression/bufferView.EXT_meshopt_compression.schema.json +105 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/EXT_texture_astc/texture.EXT_texture_astc.schema.json +56 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/EXT_texture_webp/glTF.EXT_texture_webp.schema.json +56 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/FB_geometry_metadata/scene.FB_geometry_metadata.schema.json +97 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/FB_geometry_metadata/sceneBounds.schema.json +64 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/GRIFFEL_bim_data/GRIFFEL_bim_data.schema.json +164 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/GRIFFEL_bim_data/glTF.GRIFFEL_bim_data.schema.json +107 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/GRIFFEL_bim_data/node.GRIFFEL_bim_data.schema.json +95 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/MPEG_accessor_timed/MPEG_accessor_timed.schema.json +85 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/MPEG_animation_timing/MPEG_animation_timing.schema.json +60 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/MPEG_audio_spatial/MPEG_audio_spatial.listener.schema.json +51 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/MPEG_audio_spatial/MPEG_audio_spatial.reverb.property.schema.json +63 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/MPEG_audio_spatial/MPEG_audio_spatial.reverb.schema.json +107 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/MPEG_audio_spatial/MPEG_audio_spatial.schema.json +276 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/MPEG_audio_spatial/MPEG_audio_spatial.source.schema.json +139 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/MPEG_buffer_circular/MPEG_buffer_circular.schema.json +80 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/MPEG_media/MPEG_media.media.alternative.schema.json +110 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/MPEG_media/MPEG_media.media.alternative.track.schema.json +56 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/MPEG_media/MPEG_media.media.schema.json +195 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/MPEG_media/MPEG_media.schema.json +237 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/MPEG_mesh_linking/MPEG_mesh_linking.schema.json +89 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/MPEG_scene_dynamic/MPEG_scene_dynamic.schema.json +69 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/MPEG_texture_video/MPEG_texture_video.schema.json +109 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/MPEG_viewport_recommended/MPEG_viewport_recommended.schema.json +119 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/MPEG_viewport_recommended/MPEG_viewport_recommended.viewport.schema.json +96 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/MSFT_lod/glTF.MSFT_lod.schema.json +51 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/MSFT_packing_normalRoughnessMetallic/glTF.MSFT_packing_normalRoughnessMetallic.schema.json +62 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/MSFT_packing_occlusionRoughnessMetallic/glTF.MSFT_packing_occlusionRoughnessMetallic.schema.json +90 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/MSFT_texture_dds/glTF.MSFT_texture_dds.schema.json +56 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/NV_materials_mdl/bsdfMeasurement.schema.json +109 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/NV_materials_mdl/functionCall.argument.schema.json +228 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/NV_materials_mdl/functionCall.schema.json +292 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/NV_materials_mdl/functionCall.type.schema.json +86 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/NV_materials_mdl/glTF.NV_materials_mdl.schema.json +451 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/NV_materials_mdl/material.NV_materials_mdl.schema.json +60 -0
- package/dist/gltf/schemas/extensions/2.0/Vendor/NV_materials_mdl/module.schema.json +114 -0
- package/dist/gltf/unbundled.cjs +34 -0
- package/dist/gltf/unbundled.cjs.map +7 -0
- package/dist/gltf/unbundled.d.ts +5 -0
- package/dist/gltf/unbundled.d.ts.map +1 -0
- package/dist/gltf/unbundled.js +6 -0
- package/dist/gltf/unbundled.js.map +1 -0
- package/dist/gltf/webp/webp.cjs +53 -0
- package/dist/gltf/webp/webp.cjs.map +7 -0
- package/dist/gltf/webp/webp.d.ts +7 -0
- package/dist/gltf/webp/webp.d.ts.map +1 -0
- package/dist/gltf/webp/webp.js +38 -0
- package/dist/gltf/webp/webp.js.map +1 -0
- package/dist/gltf-loader-types.cjs +73 -0
- package/dist/gltf-loader-types.cjs.map +7 -0
- package/dist/gltf-loader-types.d.ts +2 -0
- package/dist/gltf-loader-types.d.ts.map +1 -0
- package/dist/gltf-loader-types.js +2 -0
- package/dist/gltf-loader-types.js.map +1 -0
- package/dist/gltf-loader.cjs +48 -0
- package/dist/gltf-loader.cjs.map +7 -0
- package/dist/gltf-loader.d.ts +2 -0
- package/dist/gltf-loader.d.ts.map +1 -0
- package/dist/gltf-loader.js +2 -0
- package/dist/gltf-loader.js.map +1 -0
- package/dist/gltf-source.cjs +238 -0
- package/dist/gltf-source.cjs.map +7 -0
- package/dist/gltf-source.d.ts +2 -0
- package/dist/gltf-source.d.ts.map +1 -0
- package/dist/gltf-source.js +2 -0
- package/dist/gltf-source.js.map +1 -0
- package/dist/gltf-writer.cjs +69 -0
- package/dist/gltf-writer.cjs.map +7 -0
- package/dist/gltf-writer.d.ts +2 -0
- package/dist/gltf-writer.d.ts.map +1 -0
- package/dist/gltf-writer.js +2 -0
- package/dist/gltf-writer.js.map +1 -0
- package/dist/index.cjs +56 -809
- package/dist/index.cjs.map +4 -3
- package/dist/index.d.ts +20 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +17 -2
- package/dist/index.js.map +1 -1
- package/dist/libs/DRACO-LICENSE +252 -0
- package/dist/libs/README.md +20 -0
- package/dist/libs/draco_decoder.js +34 -0
- package/dist/libs/draco_decoder.mjs +37 -0
- package/dist/libs/draco_decoder.wasm +0 -0
- package/dist/libs/draco_decoder_gltf.wasm +0 -0
- package/dist/libs/draco_encoder.js +98 -0
- package/dist/libs/draco_encoder.mjs +101 -0
- package/dist/libs/draco_encoder.wasm +0 -0
- package/dist/libs/draco_wasm_wrapper.js +117 -0
- package/dist/libs/draco_wasm_wrapper.mjs +120 -0
- package/dist/libs/draco_wasm_wrapper_gltf.js +116 -0
- package/dist/libs/draco_wasm_wrapper_gltf.mjs +119 -0
- package/dist/materialx/parse-materialx.cjs +61 -0
- package/dist/materialx/parse-materialx.cjs.map +7 -0
- package/dist/materialx/parse-materialx.d.ts +23 -0
- package/dist/materialx/parse-materialx.d.ts.map +1 -0
- package/dist/materialx/parse-materialx.js +39 -0
- package/dist/materialx/parse-materialx.js.map +1 -0
- package/dist/materialx/procedural-graph.cjs +77 -0
- package/dist/materialx/procedural-graph.cjs.map +7 -0
- package/dist/materialx/procedural-graph.d.ts +40 -0
- package/dist/materialx/procedural-graph.d.ts.map +1 -0
- package/dist/materialx/procedural-graph.js +59 -0
- package/dist/materialx/procedural-graph.js.map +1 -0
- package/dist/materialx-loader-types.cjs +57 -0
- package/dist/materialx-loader-types.cjs.map +7 -0
- package/dist/materialx-loader-types.d.ts +34 -0
- package/dist/materialx-loader-types.d.ts.map +1 -0
- package/dist/materialx-loader-types.js +20 -0
- package/dist/materialx-loader-types.js.map +1 -0
- package/dist/materialx-loader.cjs +40 -0
- package/dist/materialx-loader.cjs.map +7 -0
- package/dist/materialx-loader.d.ts +19 -0
- package/dist/materialx-loader.d.ts.map +1 -0
- package/dist/materialx-loader.js +14 -0
- package/dist/materialx-loader.js.map +1 -0
- package/dist/mtl-loader-types.cjs +61 -0
- package/dist/mtl-loader-types.cjs.map +7 -0
- package/dist/mtl-loader-types.d.ts +2 -0
- package/dist/mtl-loader-types.d.ts.map +1 -0
- package/dist/mtl-loader-types.js +2 -0
- package/dist/mtl-loader-types.js.map +1 -0
- package/dist/mtl-loader.cjs +47 -0
- package/dist/mtl-loader.cjs.map +7 -0
- package/dist/mtl-loader.d.ts +2 -0
- package/dist/mtl-loader.d.ts.map +1 -0
- package/dist/mtl-loader.js +2 -0
- package/dist/mtl-loader.js.map +1 -0
- package/dist/obj/bundled.cjs +42 -0
- package/dist/obj/bundled.cjs.map +7 -0
- package/dist/obj/bundled.d.ts +7 -0
- package/dist/obj/bundled.d.ts.map +1 -0
- package/dist/obj/bundled.js +8 -0
- package/dist/obj/bundled.js.map +1 -0
- package/dist/obj/index.cjs +43 -0
- package/dist/obj/index.cjs.map +7 -0
- package/dist/obj/index.d.ts +9 -0
- package/dist/obj/index.d.ts.map +1 -0
- package/dist/obj/index.js +11 -0
- package/dist/obj/index.js.map +1 -0
- package/dist/obj/lib/get-obj-schema.cjs +60 -0
- package/dist/obj/lib/get-obj-schema.cjs.map +7 -0
- package/dist/obj/lib/get-obj-schema.d.ts +4 -0
- package/dist/obj/lib/get-obj-schema.d.ts.map +1 -0
- package/dist/obj/lib/get-obj-schema.js +36 -0
- package/dist/obj/lib/get-obj-schema.js.map +1 -0
- package/dist/obj/lib/obj-types.cjs +2 -0
- package/dist/obj/lib/obj-types.cjs.map +7 -0
- package/dist/obj/lib/obj-types.d.ts +1 -0
- package/dist/obj/lib/obj-types.d.ts.map +1 -0
- package/dist/obj/lib/obj-types.js +5 -0
- package/dist/obj/lib/obj-types.js.map +1 -0
- package/dist/obj/lib/parse-mtl.cjs +97 -0
- package/dist/obj/lib/parse-mtl.cjs.map +7 -0
- package/dist/obj/lib/parse-mtl.d.ts +34 -0
- package/dist/obj/lib/parse-mtl.d.ts.map +1 -0
- package/dist/obj/lib/parse-mtl.js +200 -0
- package/dist/obj/lib/parse-mtl.js.map +1 -0
- package/dist/obj/lib/parse-obj-meshes.cjs +389 -0
- package/dist/obj/lib/parse-obj-meshes.cjs.map +7 -0
- package/dist/obj/lib/parse-obj-meshes.d.ts +5 -0
- package/dist/obj/lib/parse-obj-meshes.d.ts.map +1 -0
- package/dist/obj/lib/parse-obj-meshes.js +441 -0
- package/dist/obj/lib/parse-obj-meshes.js.map +1 -0
- package/dist/obj/lib/parse-obj.cjs +96 -0
- package/dist/obj/lib/parse-obj.cjs.map +7 -0
- package/dist/obj/lib/parse-obj.d.ts +3 -0
- package/dist/obj/lib/parse-obj.d.ts.map +1 -0
- package/dist/obj/lib/parse-obj.js +72 -0
- package/dist/obj/lib/parse-obj.js.map +1 -0
- package/dist/obj/mtl-format.cjs +39 -0
- package/dist/obj/mtl-format.cjs.map +7 -0
- package/dist/obj/mtl-format.d.ts +14 -0
- package/dist/obj/mtl-format.d.ts.map +1 -0
- package/dist/obj/mtl-format.js +17 -0
- package/dist/obj/mtl-format.js.map +1 -0
- package/dist/obj/mtl-loader-types.cjs +59 -0
- package/dist/obj/mtl-loader-types.cjs.map +7 -0
- package/dist/obj/mtl-loader-types.d.ts +53 -0
- package/dist/obj/mtl-loader-types.d.ts.map +1 -0
- package/dist/obj/mtl-loader-types.js +32 -0
- package/dist/obj/mtl-loader-types.js.map +1 -0
- package/dist/obj/mtl-loader.cjs +45 -0
- package/dist/obj/mtl-loader.cjs.map +7 -0
- package/dist/obj/mtl-loader.d.ts +51 -0
- package/dist/obj/mtl-loader.d.ts.map +1 -0
- package/dist/obj/mtl-loader.js +25 -0
- package/dist/obj/mtl-loader.js.map +1 -0
- package/dist/obj/obj-format.cjs +39 -0
- package/dist/obj/obj-format.cjs.map +7 -0
- package/dist/obj/obj-format.d.ts +13 -0
- package/dist/obj/obj-format.d.ts.map +1 -0
- package/dist/obj/obj-format.js +16 -0
- package/dist/obj/obj-format.js.map +1 -0
- package/dist/obj/obj-loader-types.cjs +68 -0
- package/dist/obj/obj-loader-types.cjs.map +7 -0
- package/dist/obj/obj-loader-types.d.ts +92 -0
- package/dist/obj/obj-loader-types.d.ts.map +1 -0
- package/dist/obj/obj-loader-types.js +41 -0
- package/dist/obj/obj-loader-types.js.map +1 -0
- package/dist/obj/obj-loader.cjs +193 -0
- package/dist/obj/obj-loader.cjs.map +7 -0
- package/dist/obj/obj-loader.d.ts +74 -0
- package/dist/obj/obj-loader.d.ts.map +1 -0
- package/dist/obj/obj-loader.js +181 -0
- package/dist/obj/obj-loader.js.map +1 -0
- package/dist/obj/obj-writer.cjs +165 -0
- package/dist/obj/obj-writer.cjs.map +7 -0
- package/dist/obj/obj-writer.d.ts +36 -0
- package/dist/obj/obj-writer.d.ts.map +1 -0
- package/dist/obj/obj-writer.js +123 -0
- package/dist/obj/obj-writer.js.map +1 -0
- package/dist/obj/unbundled.cjs +40 -0
- package/dist/obj/unbundled.cjs.map +7 -0
- package/dist/obj/unbundled.d.ts +7 -0
- package/dist/obj/unbundled.d.ts.map +1 -0
- package/dist/obj/unbundled.js +8 -0
- package/dist/obj/unbundled.js.map +1 -0
- package/dist/obj/workers/obj-worker.cjs +23 -0
- package/dist/obj/workers/obj-worker.cjs.map +7 -0
- package/dist/obj/workers/obj-worker.d.ts +2 -0
- package/dist/obj/workers/obj-worker.d.ts.map +1 -0
- package/dist/obj/workers/obj-worker.js +23 -0
- package/dist/obj/workers/obj-worker.js.map +1 -0
- package/dist/obj-loader-types.cjs +70 -0
- package/dist/obj-loader-types.cjs.map +7 -0
- package/dist/obj-loader-types.d.ts +2 -0
- package/dist/obj-loader-types.d.ts.map +1 -0
- package/dist/obj-loader-types.js +2 -0
- package/dist/obj-loader-types.js.map +1 -0
- package/dist/obj-loader.cjs +195 -0
- package/dist/obj-loader.cjs.map +7 -0
- package/dist/obj-loader.d.ts +2 -0
- package/dist/obj-loader.d.ts.map +1 -0
- package/dist/obj-loader.js +2 -0
- package/dist/obj-loader.js.map +1 -0
- package/dist/obj-worker.js +18623 -0
- package/dist/obj-writer.cjs +167 -0
- package/dist/obj-writer.cjs.map +7 -0
- package/dist/obj-writer.d.ts +2 -0
- package/dist/obj-writer.d.ts.map +1 -0
- package/dist/obj-writer.js +2 -0
- package/dist/obj-writer.js.map +1 -0
- package/dist/stl/parse-stl.cjs +100 -0
- package/dist/stl/parse-stl.cjs.map +7 -0
- package/dist/stl/parse-stl.d.ts +4 -0
- package/dist/stl/parse-stl.d.ts.map +1 -0
- package/dist/stl/parse-stl.js +84 -0
- package/dist/stl/parse-stl.js.map +1 -0
- package/dist/stl-loader-types.cjs +58 -0
- package/dist/stl-loader-types.cjs.map +7 -0
- package/dist/stl-loader-types.d.ts +32 -0
- package/dist/stl-loader-types.d.ts.map +1 -0
- package/dist/stl-loader-types.js +25 -0
- package/dist/stl-loader-types.js.map +1 -0
- package/dist/stl-loader.cjs +38 -0
- package/dist/stl-loader.cjs.map +7 -0
- package/dist/stl-loader.d.ts +17 -0
- package/dist/stl-loader.d.ts.map +1 -0
- package/dist/stl-loader.js +13 -0
- package/dist/stl-loader.js.map +1 -0
- package/dist/usd/index.cjs +31 -0
- package/dist/usd/index.cjs.map +7 -0
- package/dist/usd/index.d.ts +3 -0
- package/dist/usd/index.d.ts.map +1 -0
- package/dist/usd/index.js +5 -0
- package/dist/usd/index.js.map +1 -0
- package/dist/usd/lib/parse-usd.cjs +331 -0
- package/dist/usd/lib/parse-usd.cjs.map +7 -0
- package/dist/{lib → usd/lib}/parse-usd.d.ts +1 -1
- package/dist/usd/lib/parse-usd.d.ts.map +1 -0
- package/dist/{lib → usd/lib}/parse-usd.js +53 -6
- package/dist/usd/lib/parse-usd.js.map +1 -0
- package/dist/usd/lib/parse-usda.cjs +406 -0
- package/dist/usd/lib/parse-usda.cjs.map +7 -0
- package/dist/usd/lib/parse-usda.d.ts.map +1 -0
- package/dist/usd/lib/parse-usda.js.map +1 -0
- package/dist/usd/lib/parse-usdc.cjs +187 -0
- package/dist/usd/lib/parse-usdc.cjs.map +7 -0
- package/dist/usd/lib/parse-usdc.d.ts +4 -0
- package/dist/usd/lib/parse-usdc.d.ts.map +1 -0
- package/dist/usd/lib/parse-usdc.js +176 -0
- package/dist/usd/lib/parse-usdc.js.map +1 -0
- package/dist/usd/lib/parse-usdz.cjs +98 -0
- package/dist/usd/lib/parse-usdz.cjs.map +7 -0
- package/dist/usd/lib/parse-usdz.d.ts.map +1 -0
- package/dist/{lib → usd/lib}/parse-usdz.js +26 -0
- package/dist/usd/lib/parse-usdz.js.map +1 -0
- package/dist/usd/lib/usd-types.cjs +19 -0
- package/dist/usd/lib/usd-types.cjs.map +7 -0
- package/dist/{lib → usd/lib}/usd-types.d.ts +15 -2
- package/dist/usd/lib/usd-types.d.ts.map +1 -0
- package/dist/{lib → usd/lib}/usd-types.js +1 -1
- package/dist/usd/lib/usd-types.js.map +1 -0
- package/dist/usd/libs/README.md +27 -0
- package/dist/usd/libs/THREE-LICENSE +21 -0
- package/dist/usd/libs/usdc-parser.d.ts +78 -0
- package/dist/usd/libs/usdc-parser.d.ts.map +1 -0
- package/dist/usd/libs/usdc-parser.js +1669 -0
- package/dist/usd/libs/usdc-parser.js.map +1 -0
- package/dist/usd/usd-loader-types.cjs +67 -0
- package/dist/usd/usd-loader-types.cjs.map +7 -0
- package/dist/usd/usd-loader-types.d.ts +50 -0
- package/dist/usd/usd-loader-types.d.ts.map +1 -0
- package/dist/usd/usd-loader-types.js +35 -0
- package/dist/usd/usd-loader-types.js.map +1 -0
- package/dist/usd/usd-loader.cjs +41 -0
- package/dist/usd/usd-loader.cjs.map +7 -0
- package/dist/usd/usd-loader.d.ts +30 -0
- package/dist/usd/usd-loader.d.ts.map +1 -0
- package/dist/usd/usd-loader.js +17 -0
- package/dist/usd/usd-loader.js.map +1 -0
- package/dist/usd-loader-types.cjs +69 -0
- package/dist/usd-loader-types.cjs.map +7 -0
- package/dist/usd-loader-types.d.ts +1 -49
- package/dist/usd-loader-types.d.ts.map +1 -1
- package/dist/usd-loader-types.js +1 -34
- package/dist/usd-loader-types.js.map +1 -1
- package/dist/usd-loader.cjs +43 -0
- package/dist/usd-loader.cjs.map +7 -0
- package/dist/usd-loader.d.ts +1 -29
- package/dist/usd-loader.d.ts.map +1 -1
- package/dist/usd-loader.js +1 -16
- package/dist/usd-loader.js.map +1 -1
- package/package.json +254 -11
- package/src/draco/bundled.ts +9 -0
- package/src/draco/draco-format.ts +20 -0
- package/src/draco/draco-javascript-loader-with-parser.ts +30 -0
- package/src/draco/draco-libraries.ts +35 -0
- package/src/draco/draco-library-options.ts +76 -0
- package/src/draco/draco-loader-options.ts +33 -0
- package/src/draco/draco-loader-types.ts +77 -0
- package/src/draco/draco-loader.ts +45 -0
- package/src/draco/draco-wasm-loader-with-parser.ts +31 -0
- package/src/draco/draco-writer.ts +254 -0
- package/src/draco/draco3d/draco3d-types.ts +498 -0
- package/src/draco/draco3d-loader-with-parser.ts +34 -0
- package/src/draco/index.ts +42 -0
- package/src/draco/lib/draco-builder.ts +935 -0
- package/src/draco/lib/draco-library-loader.ts +38 -0
- package/src/draco/lib/draco-module-loader.ts +370 -0
- package/src/draco/lib/draco-parser.ts +779 -0
- package/src/draco/lib/draco-types.ts +72 -0
- package/src/draco/lib/parse-draco.ts +52 -0
- package/src/draco/lib/utils/get-draco-schema.ts +65 -0
- package/src/draco/lib/utils/version.ts +8 -0
- package/src/draco/libs/DRACO-LICENSE +252 -0
- package/src/draco/libs/README.md +20 -0
- package/src/draco/libs/draco_decoder.js +34 -0
- package/src/draco/libs/draco_decoder.wasm +0 -0
- package/src/draco/libs/draco_decoder_gltf.wasm +0 -0
- package/src/draco/libs/draco_encoder.js +98 -0
- package/src/draco/libs/draco_encoder.wasm +0 -0
- package/src/draco/libs/draco_wasm_wrapper.js +117 -0
- package/src/draco/libs/draco_wasm_wrapper_gltf.js +116 -0
- package/src/draco/unbundled.ts +6 -0
- package/src/draco/workers/draco-worker-node.ts +10 -0
- package/src/draco/workers/draco-worker.ts +8 -0
- package/src/draco/workers/draco-writer-worker-node.cjs +21 -0
- package/src/draco/workers/draco-writer-worker-node.ts +13 -0
- package/src/draco/workers/draco-writer-worker.ts +11 -0
- package/src/draco-javascript-loader.ts +2 -0
- package/src/draco-library-options.ts +6 -0
- package/src/draco-loader-types.ts +2 -0
- package/src/draco-loader.ts +2 -0
- package/src/draco-wasm-loader.ts +2 -0
- package/src/draco-writer.ts +2 -0
- package/src/draco3d-loader.ts +2 -0
- package/src/glb-loader-types.ts +1 -0
- package/src/glb-loader.ts +1 -0
- package/src/glb-writer.ts +1 -0
- package/src/gltf/bundled.ts +8 -0
- package/src/gltf/glb-loader-types.ts +40 -0
- package/src/gltf/glb-loader.ts +42 -0
- package/src/gltf/glb-writer.ts +46 -0
- package/src/gltf/gltf-format.ts +32 -0
- package/src/gltf/gltf-loader-types.ts +58 -0
- package/src/gltf/gltf-loader.ts +49 -0
- package/src/gltf/gltf-source.ts +244 -0
- package/src/gltf/gltf-writer.ts +62 -0
- package/src/gltf/index.ts +273 -0
- package/src/gltf/lib/api/append-gltf-v1-buffer-data.ts +61 -0
- package/src/gltf/lib/api/bake-gltf-v1-bind-shapes.ts +178 -0
- package/src/gltf/lib/api/clean-gltf-v1-fields.ts +94 -0
- package/src/gltf/lib/api/convert-gltf-v1-accessors.ts +170 -0
- package/src/gltf/lib/api/convert-gltf-v1-animations.ts +79 -0
- package/src/gltf/lib/api/convert-gltf-v1-materials.ts +351 -0
- package/src/gltf/lib/api/convert-gltf-v1-matrix-nodes.ts +116 -0
- package/src/gltf/lib/api/convert-gltf-v1-skin-scenes.ts +88 -0
- package/src/gltf/lib/api/convert-gltf-v1-skins.ts +217 -0
- package/src/gltf/lib/api/gltf-accessors.ts +87 -0
- package/src/gltf/lib/api/gltf-culling.ts +80 -0
- package/src/gltf/lib/api/gltf-extension-data.ts +125 -0
- package/src/gltf/lib/api/gltf-extensions.ts +138 -0
- package/src/gltf/lib/api/gltf-iterator.ts +1469 -0
- package/src/gltf/lib/api/gltf-mesh-arrow.ts +410 -0
- package/src/gltf/lib/api/gltf-scenegraph.ts +741 -0
- package/src/gltf/lib/api/normalize-gltf-v1.ts +603 -0
- package/src/gltf/lib/api/repack-gltf-v1-accessors.ts +566 -0
- package/src/gltf/lib/api/validate-gltf-v1-buffers.ts +139 -0
- package/src/gltf/lib/api/validate-gltf-v1-cameras.ts +40 -0
- package/src/gltf/lib/api/validate-gltf-v1-geometry.ts +156 -0
- package/src/gltf/lib/api/validate-gltf-v1-payloads.ts +315 -0
- package/src/gltf/lib/encoders/encode-glb.ts +198 -0
- package/src/gltf/lib/encoders/encode-gltf-draco.ts +239 -0
- package/src/gltf/lib/encoders/encode-gltf.ts +45 -0
- package/src/gltf/lib/extensions/EXT_mesh_features.ts +240 -0
- package/src/gltf/lib/extensions/EXT_mesh_polygon.ts +172 -0
- package/src/gltf/lib/extensions/EXT_meshopt_compression.ts +33 -0
- package/src/gltf/lib/extensions/EXT_primitive_voxels.ts +85 -0
- package/src/gltf/lib/extensions/EXT_structural_metadata.ts +1130 -0
- package/src/gltf/lib/extensions/EXT_texture_avif.ts +56 -0
- package/src/gltf/lib/extensions/EXT_texture_webp.ts +49 -0
- package/src/gltf/lib/extensions/KHR_accessor_float64.ts +22 -0
- package/src/gltf/lib/extensions/KHR_audio_emitter.ts +136 -0
- package/src/gltf/lib/extensions/KHR_binary_gltf.ts +56 -0
- package/src/gltf/lib/extensions/KHR_draco_mesh_compression.ts +170 -0
- package/src/gltf/lib/extensions/KHR_gaussian_splatting.ts +263 -0
- package/src/gltf/lib/extensions/KHR_mesh_primitive_restart.ts +108 -0
- package/src/gltf/lib/extensions/KHR_meshopt_compression.ts +32 -0
- package/src/gltf/lib/extensions/KHR_texture_basisu.ts +39 -0
- package/src/gltf/lib/extensions/KHR_texture_transform.ts +385 -0
- package/src/gltf/lib/extensions/MPEG_audio_spatial.ts +59 -0
- package/src/gltf/lib/extensions/MSFT_texture_dds.ts +52 -0
- package/src/gltf/lib/extensions/deprecated/EXT_feature_metadata.ts +479 -0
- package/src/gltf/lib/extensions/deprecated/KHR_lights_punctual.ts +67 -0
- package/src/gltf/lib/extensions/deprecated/KHR_materials_unlit.ts +52 -0
- package/src/gltf/lib/extensions/deprecated/KHR_techniques_webgl.ts +105 -0
- package/src/gltf/lib/extensions/meshopt-compression.ts +189 -0
- package/src/gltf/lib/extensions/utils/3d-tiles-utils.ts +477 -0
- package/src/gltf/lib/gltf-utils/get-typed-array.ts +215 -0
- package/src/gltf/lib/gltf-utils/gltf-attribute-utils.ts +85 -0
- package/src/gltf/lib/gltf-utils/gltf-constants.ts +53 -0
- package/src/gltf/lib/gltf-utils/gltf-utils.ts +162 -0
- package/src/gltf/lib/gltf-utils/resolve-gltf-file.ts +95 -0
- package/src/gltf/lib/gltf-utils/resolve-url.ts +48 -0
- package/src/gltf/lib/parsers/parse-glb.ts +299 -0
- package/src/gltf/lib/parsers/parse-gltf.ts +602 -0
- package/src/gltf/lib/types/glb-types.ts +44 -0
- package/src/gltf/lib/types/gltf-additional-extension-schemas.ts +159 -0
- package/src/gltf/lib/types/gltf-audio-extension-schemas.ts +167 -0
- package/src/gltf/lib/types/gltf-ext-feature-metadata-schema.ts +474 -0
- package/src/gltf/lib/types/gltf-ext-gaussian-splatting-schema.ts +46 -0
- package/src/gltf/lib/types/gltf-ext-mesh-features-schema.ts +56 -0
- package/src/gltf/lib/types/gltf-ext-structural-metadata-schema.ts +387 -0
- package/src/gltf/lib/types/gltf-ext-vector-voxel-schema.ts +49 -0
- package/src/gltf/lib/types/gltf-extension-schemas.ts +99 -0
- package/src/gltf/lib/types/gltf-interactivity.ts +168 -0
- package/src/gltf/lib/types/gltf-json-schema.ts +948 -0
- package/src/gltf/lib/types/gltf-khr-audio-emitter-schema.ts +60 -0
- package/src/gltf/lib/types/gltf-mpeg-audio-spatial-schema.ts +31 -0
- package/src/gltf/lib/types/gltf-official-json-schemas.ts +18619 -0
- package/src/gltf/lib/types/gltf-shape-schema.ts +47 -0
- package/src/gltf/lib/types/gltf-texture-procedurals.ts +67 -0
- package/src/gltf/lib/types/gltf-types.ts +98 -0
- package/src/gltf/lib/types/gltf-vector-topology.ts +65 -0
- package/src/gltf/lib/types/gltf-version-zod-schemas.ts +511 -0
- package/src/gltf/lib/types/gltf-zod-schema.ts +551 -0
- package/src/gltf/lib/utils/assert.ts +12 -0
- package/src/gltf/lib/utils/version.ts +8 -0
- package/src/gltf/libs/README.md +12 -0
- package/src/gltf/libs/meshopt-decoder.d.mts +15 -0
- package/src/gltf/libs/meshopt-decoder.mjs +196 -0
- package/src/gltf/libs/meshoptimizer-LICENSE.md +21 -0
- package/src/gltf/mesh-arrow.ts +11 -0
- package/src/gltf/meshopt/meshopt-decoder.ts +185 -0
- package/src/gltf/meshopt/meshopt-encoder.ts.disabled +409 -0
- package/src/gltf/meshopt/meshopt-module-loader.ts +8 -0
- package/src/gltf/schema.ts +25 -0
- package/src/gltf/unbundled.ts +8 -0
- package/src/gltf/webp/webp.ts +45 -0
- package/src/gltf-loader-types.ts +1 -0
- package/src/gltf-loader.ts +1 -0
- package/src/gltf-source.ts +1 -0
- package/src/gltf-writer.ts +1 -0
- package/src/index.ts +24 -12
- package/src/materialx/README.md +5 -0
- package/src/materialx/parse-materialx.ts +70 -0
- package/src/materialx/procedural-graph.ts +94 -0
- package/src/materialx-loader-types.ts +24 -0
- package/src/materialx-loader.ts +15 -0
- package/src/mtl-loader-types.ts +1 -0
- package/src/mtl-loader.ts +1 -0
- package/src/obj/bundled.ts +13 -0
- package/src/obj/index.ts +17 -0
- package/src/obj/lib/get-obj-schema.ts +45 -0
- package/src/obj/lib/obj-types.ts +3 -0
- package/src/obj/lib/parse-mtl.ts +248 -0
- package/src/obj/lib/parse-obj-meshes.ts +530 -0
- package/src/obj/lib/parse-obj.ts +88 -0
- package/src/obj/mtl-format.ts +19 -0
- package/src/obj/mtl-loader-types.ts +43 -0
- package/src/obj/mtl-loader.ts +37 -0
- package/src/obj/obj-format.ts +18 -0
- package/src/obj/obj-loader-types.ts +75 -0
- package/src/obj/obj-loader.ts +253 -0
- package/src/obj/obj-writer.ts +194 -0
- package/src/obj/unbundled.ts +10 -0
- package/src/obj/workers/obj-worker.ts +24 -0
- package/src/obj-loader-types.ts +1 -0
- package/src/obj-loader.ts +1 -0
- package/src/obj-writer.ts +1 -0
- package/src/stl/parse-stl.ts +90 -0
- package/src/stl-loader-types.ts +28 -0
- package/src/stl-loader.ts +12 -0
- package/src/usd/index.ts +16 -0
- package/src/{lib → usd/lib}/parse-usd.ts +69 -8
- package/src/usd/lib/parse-usdc.ts +188 -0
- package/src/{lib → usd/lib}/parse-usdz.ts +28 -0
- package/src/{lib → usd/lib}/usd-types.ts +17 -3
- package/src/usd/libs/README.md +27 -0
- package/src/usd/libs/THREE-LICENSE +21 -0
- package/src/usd/libs/usdc-parser.d.ts +18 -0
- package/src/usd/libs/usdc-parser.js +1669 -0
- package/src/usd/usd-loader-types.ts +40 -0
- package/src/usd/usd-loader.ts +26 -0
- package/src/usd-loader-types.ts +1 -40
- package/src/usd-loader.ts +1 -26
- package/third-party-licenses/gltf-loader-ts-LICENSE +21 -0
- package/third-party-licenses/three-LICENSE +21 -0
- package/dist/lib/parse-usd.d.ts.map +0 -1
- package/dist/lib/parse-usd.js.map +0 -1
- package/dist/lib/parse-usda.d.ts.map +0 -1
- package/dist/lib/parse-usda.js.map +0 -1
- package/dist/lib/parse-usdz.d.ts.map +0 -1
- package/dist/lib/parse-usdz.js.map +0 -1
- package/dist/lib/usd-types.d.ts.map +0 -1
- package/dist/lib/usd-types.js.map +0 -1
- /package/dist/{lib → usd/lib}/parse-usda.d.ts +0 -0
- /package/dist/{lib → usd/lib}/parse-usda.js +0 -0
- /package/dist/{lib → usd/lib}/parse-usdz.d.ts +0 -0
- /package/src/{lib → usd/lib}/parse-usda.ts +0 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/gltf/lib/api/gltf-iterator.ts"],
|
|
4
|
+
"sourcesContent": ["// loaders.gl\n// SPDX-License-Identifier: MIT\n// Copyright (c) vis.gl contributors\n\nimport type {BigTypedArray} from '@loaders.gl/core/schema';\nimport type {\n GLTF,\n GLTFAccessor,\n GLTFAnimation,\n GLTFAnimationChannel,\n GLTFAnimationChannelTarget,\n GLTFAnimationSampler,\n GLTFBuffer,\n GLTFBufferView,\n GLTFCamera,\n GLTFExternalAsset,\n GLTFFile,\n GLTFImage,\n GLTFMaterial,\n GLTFMaterialNormalTextureInfo,\n GLTFMaterialOcclusionTextureInfo,\n GLTFMesh,\n GLTFMeshPrimitive,\n GLTFNode,\n GLTFSampler,\n GLTFScene,\n GLTFSkin,\n GLTFTexture,\n GLTFTextureInfo\n} from '../types/gltf-json-schema';\nimport type {GLTFWithBuffers} from '../types/gltf-types';\nimport {\n getTypedArrayForAccessor as getAccessorTypedArray,\n getTypedArrayForBufferView as getBufferViewTypedArray,\n getTypedArrayForImageData as getImageTypedArray\n} from '../gltf-utils/get-typed-array';\nimport {getAccessorTypeFromSize} from '../gltf-utils/gltf-utils';\n\n/** String tag identifying a raw glTF object registered with an iterator. */\nexport type GLTFIteratorType =\n | 'accessor'\n | 'animation'\n | 'animationChannel'\n | 'animationChannelTarget'\n | 'animationSampler'\n | 'buffer'\n | 'bufferView'\n | 'camera'\n | 'externalAsset'\n | 'file'\n | 'image'\n | 'material'\n | 'mesh'\n | 'primitive'\n | 'node'\n | 'sampler'\n | 'scene'\n | 'skin'\n | 'texture'\n | 'textureInfo';\n\n/** Top-level glTF collection wrapper tags. */\ntype GLTFCollectionType = Exclude<\n GLTFIteratorType,\n 'animationChannel' | 'animationChannelTarget' | 'animationSampler' | 'primitive' | 'textureInfo'\n>;\n\n/** Minimum raw object shape required by extension helpers. */\ntype GLTFIteratorData = {\n extensions?: Record<string, any>;\n};\n\n/** Base class for a lightweight view of one raw glTF object. */\nabstract class GLTFObjectIterator<DataT extends GLTFIteratorData, TypeT extends GLTFIteratorType> {\n /** Original glTF container. */\n readonly gltf: GLTFWithBuffers;\n\n /** Stable tag identifying the wrapped object type. */\n readonly type: TypeT;\n\n /** Index in the object's top-level or parent-local collection. */\n readonly index: number;\n\n /** Exact unmodified object from the source glTF JSON. */\n readonly data: DataT;\n\n /** Human-readable path to the raw object. */\n readonly path: string;\n\n /** Root iterator used to resolve linked indices. */\n protected readonly iterator: GLTFIterator;\n\n /** Create a lightweight wrapper for a raw glTF object. */\n constructor(iterator: GLTFIterator, type: TypeT, index: number, data: DataT, path: string) {\n this.iterator = iterator;\n this.gltf = iterator.gltf;\n this.type = type;\n this.index = index;\n this.data = data;\n this.path = path;\n }\n}\n\n/** Base class for an object stored in a parent-local array or property. */\nabstract class GLTFNestedObjectIterator<\n DataT extends GLTFIteratorData,\n TypeT extends GLTFIteratorType,\n ParentT extends GLTFObjectIterator<GLTFIteratorData, GLTFIteratorType>\n> extends GLTFObjectIterator<DataT, TypeT> {\n /** Wrapper containing this nested object. */\n readonly parent: ParentT;\n\n /** Create a wrapper for a parent-local raw glTF object. */\n constructor(\n iterator: GLTFIterator,\n type: TypeT,\n index: number,\n data: DataT,\n path: string,\n parent: ParentT\n ) {\n super(iterator, type, index, data, path);\n this.parent = parent;\n }\n}\n\n/** Metadata privately associated with a raw glTF object by an iterator. */\nexport interface GLTFIteratorMetadata {\n readonly gltf: GLTFWithBuffers;\n readonly type: GLTFIteratorType;\n readonly index: number;\n readonly parent?: GLTFIteratorData;\n readonly path: string;\n}\n\n/** Lazily resolved standard relationships for one raw glTF object. */\nexport type GLTFIteratorReferences = object;\n\n/** References reachable from a texture wrapper. */\nexport interface GLTFTextureReferences {\n readonly sampler: GLTFSampler | undefined;\n readonly source: GLTFImage | undefined;\n}\n\n/** References reachable from a node wrapper. */\nexport interface GLTFNodeReferences {\n readonly camera: GLTFCamera | undefined;\n readonly children: IterableIterator<GLTFNode>;\n readonly skin: GLTFSkin | undefined;\n readonly mesh: GLTFMesh | undefined;\n readonly externalAsset: GLTFExternalAsset | undefined;\n}\n\n/** References reachable from a mesh wrapper. */\nexport interface GLTFMeshReferences {\n readonly primitives: IterableIterator<GLTFMeshPrimitive>;\n}\n\n/** References reachable from a scene wrapper. */\nexport interface GLTFSceneReferences {\n readonly nodes: IterableIterator<GLTFNode>;\n}\n\n/** References reachable from a mesh primitive wrapper. */\nexport interface GLTFMeshPrimitiveReferences {\n readonly attributes: ReadonlyMap<string, GLTFAccessor>;\n readonly indices: GLTFAccessor | undefined;\n readonly material: GLTFMaterial | undefined;\n readonly targets: ReadonlyArray<ReadonlyMap<string, GLTFAccessor>>;\n}\n\n/** References reachable from a texture-info wrapper. */\nexport interface GLTFTextureInfoReferences {\n readonly texture: GLTFTexture;\n}\n\n/** References reachable from a material wrapper. */\nexport interface GLTFMaterialReferences {\n readonly baseColorTexture: GLTFTextureInfo | undefined;\n readonly metallicRoughnessTexture: GLTFTextureInfo | undefined;\n readonly normalTexture: GLTFMaterialNormalTextureInfo | undefined;\n readonly occlusionTexture: GLTFMaterialOcclusionTextureInfo | undefined;\n readonly emissiveTexture: GLTFTextureInfo | undefined;\n readonly textures: IterableIterator<\n GLTFTextureInfo | GLTFMaterialNormalTextureInfo | GLTFMaterialOcclusionTextureInfo\n >;\n}\n\n/** References reachable from an accessor wrapper. */\nexport interface GLTFAccessorReferences {\n readonly bufferView: GLTFBufferView | undefined;\n}\n\n/** References reachable from a buffer-view wrapper. */\nexport interface GLTFBufferViewReferences {\n readonly buffer: GLTFBuffer;\n}\n\n/** References reachable from a file or image wrapper. */\nexport interface GLTFBufferViewOwnerReferences {\n readonly bufferView: GLTFBufferView | undefined;\n}\n\n/** References reachable from an external asset wrapper. */\nexport interface GLTFExternalAssetReferences {\n readonly file: GLTFFile;\n}\n\n/** References reachable from an animation wrapper. */\nexport interface GLTFAnimationReferences {\n readonly channels: IterableIterator<GLTFAnimationChannel>;\n readonly samplers: IterableIterator<GLTFAnimationSampler>;\n}\n\n/** References reachable from an animation channel wrapper. */\nexport interface GLTFAnimationChannelReferences {\n readonly sampler: GLTFAnimationSampler;\n readonly target: GLTFAnimationChannelTarget;\n}\n\n/** References reachable from an animation target wrapper. */\nexport interface GLTFAnimationChannelTargetReferences {\n readonly node: GLTFNode | undefined;\n}\n\n/** References reachable from an animation sampler wrapper. */\nexport interface GLTFAnimationSamplerReferences {\n readonly input: GLTFAccessor;\n readonly output: GLTFAccessor;\n}\n\n/** References reachable from a skin wrapper. */\nexport interface GLTFSkinReferences {\n readonly inverseBindMatrices: GLTFAccessor | undefined;\n readonly skeleton: GLTFNode | undefined;\n readonly joints: IterableIterator<GLTFNode>;\n}\n\n/** Lightweight accessor wrapper. */\nclass GLTFAccessorIterator extends GLTFObjectIterator<GLTFAccessor, 'accessor'> {\n /** Resolve the accessor's buffer view. */\n get bufferView(): GLTFBufferViewIterator | undefined {\n return this.data.bufferView === undefined\n ? undefined\n : this.iterator.resolveBufferView(this.data.bufferView, `${this.path}.bufferView`);\n }\n}\n\n/** Lightweight animation wrapper. */\nclass GLTFAnimationIterator extends GLTFObjectIterator<GLTFAnimation, 'animation'> {\n /** Iterate animation channels in source order. */\n get channels(): IterableIterator<GLTFAnimationChannelIterator> {\n return iterateValues(this.data.channels, (channel, channelIndex) =>\n this.iterator.getOrCreateNested(\n channel,\n () =>\n new GLTFAnimationChannelIterator(\n this.iterator,\n 'animationChannel',\n channelIndex,\n channel,\n `${this.path}.channels[${channelIndex}]`,\n this\n )\n )\n );\n }\n\n /** Iterate animation samplers in source order. */\n get samplers(): IterableIterator<GLTFAnimationSamplerIterator> {\n return iterateValues(this.data.samplers, (sampler, samplerIndex) =>\n this.iterator.getOrCreateNested(\n sampler,\n () =>\n new GLTFAnimationSamplerIterator(\n this.iterator,\n 'animationSampler',\n samplerIndex,\n sampler,\n `${this.path}.samplers[${samplerIndex}]`,\n this\n )\n )\n );\n }\n}\n\n/** Lightweight animation channel wrapper. */\nclass GLTFAnimationChannelIterator extends GLTFNestedObjectIterator<\n GLTFAnimationChannel,\n 'animationChannel',\n GLTFAnimationIterator\n> {\n /** Resolve the animation-local sampler. */\n get sampler(): GLTFAnimationSamplerIterator {\n const samplers = this.parent.data.samplers;\n const sampler = samplers[this.data.sampler];\n if (!sampler) {\n throw new Error(\n `Invalid glTF reference at ${this.path}.sampler: animation sampler index ${this.data.sampler} is out of range`\n );\n }\n return this.iterator.getOrCreateNested(\n sampler,\n () =>\n new GLTFAnimationSamplerIterator(\n this.iterator,\n 'animationSampler',\n this.data.sampler,\n sampler,\n `${this.parent.path}.samplers[${this.data.sampler}]`,\n this.parent\n )\n );\n }\n\n /** Return the channel target wrapper. */\n get target(): GLTFAnimationChannelTargetIterator {\n return this.iterator.getOrCreateNested(\n this.data.target,\n () =>\n new GLTFAnimationChannelTargetIterator(\n this.iterator,\n 'animationChannelTarget',\n 0,\n this.data.target,\n `${this.path}.target`,\n this\n )\n );\n }\n}\n\n/** Lightweight animation channel target wrapper. */\nclass GLTFAnimationChannelTargetIterator extends GLTFNestedObjectIterator<\n GLTFAnimationChannelTarget,\n 'animationChannelTarget',\n GLTFAnimationChannelIterator\n> {\n /** Resolve the target node when one is specified. */\n get node(): GLTFNodeIterator | undefined {\n return this.data.node === undefined\n ? undefined\n : this.iterator.resolveNode(this.data.node, `${this.path}.node`);\n }\n}\n\n/** Lightweight animation sampler wrapper. */\nclass GLTFAnimationSamplerIterator extends GLTFNestedObjectIterator<\n GLTFAnimationSampler,\n 'animationSampler',\n GLTFAnimationIterator\n> {\n /** Resolve the sampler input accessor. */\n get input(): GLTFAccessorIterator {\n return this.iterator.resolveAccessor(this.data.input, `${this.path}.input`);\n }\n\n /** Resolve the sampler output accessor. */\n get output(): GLTFAccessorIterator {\n return this.iterator.resolveAccessor(this.data.output, `${this.path}.output`);\n }\n}\n\n/** Lightweight buffer wrapper. */\nclass GLTFBufferIterator extends GLTFObjectIterator<GLTFBuffer, 'buffer'> {\n /** Return the loaded byte range parallel to this JSON buffer, when available. */\n get loadedBuffer(): GLTFWithBuffers['buffers'][number] | undefined {\n return this.gltf.buffers[this.index];\n }\n}\n\n/** Lightweight buffer-view wrapper. */\nclass GLTFBufferViewIterator extends GLTFObjectIterator<GLTFBufferView, 'bufferView'> {\n /** Resolve the backing JSON buffer. */\n get buffer(): GLTFBufferIterator {\n return this.iterator.resolveBuffer(this.data.buffer, `${this.path}.buffer`);\n }\n\n /** Return a byte view over the loaded buffer-view range. */\n get loadedBufferView(): Uint8Array | undefined {\n const loadedBuffer = this.buffer.loadedBuffer;\n if (!loadedBuffer) {\n return undefined;\n }\n const byteOffset = loadedBuffer.byteOffset + (this.data.byteOffset || 0);\n return new Uint8Array(loadedBuffer.arrayBuffer, byteOffset, this.data.byteLength);\n }\n}\n\n/** Lightweight camera wrapper. */\nclass GLTFCameraIterator extends GLTFObjectIterator<GLTFCamera, 'camera'> {}\n\n/** Lightweight external-asset wrapper for draft glTF 2.1. */\nclass GLTFExternalAssetIterator extends GLTFObjectIterator<GLTFExternalAsset, 'externalAsset'> {\n /** Resolve the file containing the external glTF asset. */\n get file(): GLTFFileIterator {\n return this.iterator.resolveFile(this.data.file, `${this.path}.file`);\n }\n\n /** Return the parsed external glTF loaded parallel to this definition. */\n get loadedAsset(): GLTFWithBuffers | null | undefined {\n return this.gltf.externalAssets?.[this.index];\n }\n}\n\n/** Lightweight file wrapper for draft glTF 2.1. */\nclass GLTFFileIterator extends GLTFObjectIterator<GLTFFile, 'file'> {\n /** Resolve the optional buffer view containing this file. */\n get bufferView(): GLTFBufferViewIterator | undefined {\n return this.data.bufferView === undefined\n ? undefined\n : this.iterator.resolveBufferView(this.data.bufferView, `${this.path}.bufferView`);\n }\n\n /** Return the resolved file loaded parallel to this definition. */\n get loadedFile(): NonNullable<GLTFWithBuffers['files']>[number] | undefined {\n return this.gltf.files?.[this.index];\n }\n}\n\n/** Lightweight image wrapper. */\nclass GLTFImageIterator extends GLTFObjectIterator<GLTFImage, 'image'> {\n /** Resolve the optional buffer view containing this image. */\n get bufferView(): GLTFBufferViewIterator | undefined {\n return this.data.bufferView === undefined\n ? undefined\n : this.iterator.resolveBufferView(this.data.bufferView, `${this.path}.bufferView`);\n }\n\n /** Return the decoded image loaded parallel to this definition. */\n get loadedImage(): NonNullable<GLTFWithBuffers['images']>[number] | undefined {\n return this.gltf.images?.[this.index];\n }\n}\n\n/** Lightweight material wrapper. */\nclass GLTFMaterialIterator extends GLTFObjectIterator<GLTFMaterial, 'material'> {\n /** Resolve the base-color texture info. */\n get baseColorTexture(): GLTFTextureInfoIterator | undefined {\n return this.getTextureInfo(\n this.data.pbrMetallicRoughness?.baseColorTexture,\n 0,\n 'pbrMetallicRoughness.baseColorTexture'\n );\n }\n\n /** Resolve the metallic-roughness texture info. */\n get metallicRoughnessTexture(): GLTFTextureInfoIterator | undefined {\n return this.getTextureInfo(\n this.data.pbrMetallicRoughness?.metallicRoughnessTexture,\n 1,\n 'pbrMetallicRoughness.metallicRoughnessTexture'\n );\n }\n\n /** Resolve the normal texture info. */\n get normalTexture(): GLTFTextureInfoIterator | undefined {\n return this.getTextureInfo(this.data.normalTexture, 2, 'normalTexture');\n }\n\n /** Resolve the occlusion texture info. */\n get occlusionTexture(): GLTFTextureInfoIterator | undefined {\n return this.getTextureInfo(this.data.occlusionTexture, 3, 'occlusionTexture');\n }\n\n /** Resolve the emissive texture info. */\n get emissiveTexture(): GLTFTextureInfoIterator | undefined {\n return this.getTextureInfo(this.data.emissiveTexture, 4, 'emissiveTexture');\n }\n\n /** Resolve standard texture-info properties in their schema order. */\n get textures(): IterableIterator<GLTFTextureInfoIterator> {\n const textureInfos = [\n this.baseColorTexture,\n this.metallicRoughnessTexture,\n this.normalTexture,\n this.occlusionTexture,\n this.emissiveTexture\n ].filter((textureInfo): textureInfo is GLTFTextureInfoIterator => Boolean(textureInfo));\n return textureInfos.values();\n }\n\n /** Wrap one optional standard material texture-info property. */\n private getTextureInfo(\n textureInfo:\n | GLTFTextureInfo\n | GLTFMaterialNormalTextureInfo\n | GLTFMaterialOcclusionTextureInfo\n | undefined,\n index: number,\n propertyPath: string\n ): GLTFTextureInfoIterator | undefined {\n return textureInfo\n ? this.iterator.getOrCreateNested(\n textureInfo,\n () =>\n new GLTFTextureInfoIterator(\n this.iterator,\n 'textureInfo',\n index,\n textureInfo,\n `${this.path}.${propertyPath}`,\n this\n )\n )\n : undefined;\n }\n}\n\n/** Lightweight texture-info wrapper nested in a material. */\nclass GLTFTextureInfoIterator extends GLTFNestedObjectIterator<\n GLTFTextureInfo | GLTFMaterialNormalTextureInfo | GLTFMaterialOcclusionTextureInfo,\n 'textureInfo',\n GLTFMaterialIterator\n> {\n /** Resolve the texture referenced by the raw texture-info `index` field. */\n get texture(): GLTFTextureIterator {\n return this.iterator.resolveTexture(this.data.index, `${this.path}.index`);\n }\n}\n\n/** Lightweight mesh wrapper. */\nclass GLTFMeshIterator extends GLTFObjectIterator<GLTFMesh, 'mesh'> {\n /** Iterate mesh primitives in source order. */\n get primitives(): IterableIterator<GLTFMeshPrimitiveIterator> {\n return iterateValues(this.data.primitives, (primitive, primitiveIndex) =>\n this.iterator.getOrCreateNested(\n primitive,\n () =>\n new GLTFMeshPrimitiveIterator(\n this.iterator,\n 'primitive',\n primitiveIndex,\n primitive,\n `${this.path}.primitives[${primitiveIndex}]`,\n this\n )\n )\n );\n }\n}\n\n/** Lightweight mesh primitive wrapper. */\nclass GLTFMeshPrimitiveIterator extends GLTFNestedObjectIterator<\n GLTFMeshPrimitive,\n 'primitive',\n GLTFMeshIterator\n> {\n /** Resolve every vertex attribute accessor by semantic name. */\n get attributes(): ReadonlyMap<string, GLTFAccessorIterator> {\n return new Map(\n Object.entries(this.data.attributes).map(([attributeName, accessorIndex]) => [\n attributeName,\n this.iterator.resolveAccessor(accessorIndex, `${this.path}.attributes.${attributeName}`)\n ])\n );\n }\n\n /** Resolve the optional index accessor. */\n get indices(): GLTFAccessorIterator | undefined {\n return this.data.indices === undefined\n ? undefined\n : this.iterator.resolveAccessor(this.data.indices, `${this.path}.indices`);\n }\n\n /** Resolve the optional material. */\n get material(): GLTFMaterialIterator | undefined {\n return this.data.material === undefined\n ? undefined\n : this.iterator.resolveMaterial(this.data.material, `${this.path}.material`);\n }\n\n /** Resolve morph-target attribute accessors without rewriting target dictionaries. */\n get targets(): ReadonlyArray<ReadonlyMap<string, GLTFAccessorIterator>> {\n return (this.data.targets || []).map(\n (target, targetIndex) =>\n new Map(\n Object.entries(target).map(([attributeName, accessorIndex]) => [\n attributeName,\n this.iterator.resolveAccessor(\n accessorIndex,\n `${this.path}.targets[${targetIndex}].${attributeName}`\n )\n ])\n )\n );\n }\n}\n\n/** Lightweight node wrapper. */\nclass GLTFNodeIterator extends GLTFObjectIterator<GLTFNode, 'node'> {\n /** Resolve the optional camera. */\n get camera(): GLTFCameraIterator | undefined {\n return this.data.camera === undefined\n ? undefined\n : this.iterator.resolveCamera(this.data.camera, `${this.path}.camera`);\n }\n\n /** Iterate resolved child nodes in source order. */\n get children(): IterableIterator<GLTFNodeIterator> {\n return iterateValues(this.data.children || [], (childNodeIndex, childIndex) =>\n this.iterator.resolveNode(childNodeIndex, `${this.path}.children[${childIndex}]`)\n );\n }\n\n /** Resolve the optional skin. */\n get skin(): GLTFSkinIterator | undefined {\n return this.data.skin === undefined\n ? undefined\n : this.iterator.resolveSkin(this.data.skin, `${this.path}.skin`);\n }\n\n /** Resolve the optional mesh definition. */\n get mesh(): GLTFMeshIterator | undefined {\n return this.data.mesh === undefined\n ? undefined\n : this.iterator.resolveMesh(this.data.mesh, `${this.path}.mesh`);\n }\n\n /** Resolve the optional draft glTF 2.1 external asset. */\n get externalAsset(): GLTFExternalAssetIterator | undefined {\n return this.data.externalAsset === undefined\n ? undefined\n : this.iterator.resolveExternalAsset(this.data.externalAsset, `${this.path}.externalAsset`);\n }\n}\n\n/** Lightweight texture sampler wrapper. */\nclass GLTFSamplerIterator extends GLTFObjectIterator<GLTFSampler, 'sampler'> {}\n\n/** Lightweight scene wrapper. */\nclass GLTFSceneIterator extends GLTFObjectIterator<GLTFScene, 'scene'> {\n /** Iterate resolved scene root nodes in source order. */\n get nodes(): IterableIterator<GLTFNodeIterator> {\n return iterateValues(this.data.nodes || [], (nodeIndex, sceneNodeIndex) =>\n this.iterator.resolveNode(nodeIndex, `${this.path}.nodes[${sceneNodeIndex}]`)\n );\n }\n}\n\n/** Lightweight skin wrapper. */\nclass GLTFSkinIterator extends GLTFObjectIterator<GLTFSkin, 'skin'> {\n /** Resolve the optional inverse-bind-matrix accessor. */\n get inverseBindMatrices(): GLTFAccessorIterator | undefined {\n return this.data.inverseBindMatrices === undefined\n ? undefined\n : this.iterator.resolveAccessor(\n this.data.inverseBindMatrices,\n `${this.path}.inverseBindMatrices`\n );\n }\n\n /** Resolve the optional skeleton root node. */\n get skeleton(): GLTFNodeIterator | undefined {\n return this.data.skeleton === undefined\n ? undefined\n : this.iterator.resolveNode(this.data.skeleton, `${this.path}.skeleton`);\n }\n\n /** Iterate resolved joint nodes in source order. */\n get joints(): IterableIterator<GLTFNodeIterator> {\n return iterateValues(this.data.joints, (jointNodeIndex, jointIndex) =>\n this.iterator.resolveNode(jointNodeIndex, `${this.path}.joints[${jointIndex}]`)\n );\n }\n}\n\n/** Lightweight texture wrapper. */\nclass GLTFTextureIterator extends GLTFObjectIterator<GLTFTexture, 'texture'> {\n /** Resolve the optional sampler. */\n get sampler(): GLTFSamplerIterator | undefined {\n return this.data.sampler === undefined\n ? undefined\n : this.iterator.resolveSampler(this.data.sampler, `${this.path}.sampler`);\n }\n\n /** Resolve the optional source image. */\n get source(): GLTFImageIterator | undefined {\n return this.data.source === undefined\n ? undefined\n : this.iterator.resolveImage(this.data.source, `${this.path}.source`);\n }\n}\n\n/**\n * Traverse and transform raw glTF data through lazy, identity-preserving object wrappers.\n *\n * The iterator never clones, links, normalizes, or otherwise postprocesses its input. Wrapper\n * `data` fields are the original mutable JSON objects so extension handlers can transform them in\n * place while using typed reference getters for navigation.\n */\nexport class GLTFIterator {\n /** Original glTF container traversed by this iterator. */\n readonly gltf: GLTFWithBuffers;\n\n /** Cached wrapper for each raw source object. */\n private readonly objectCache = new WeakMap<object, GLTFObjectIterator<any, any>>();\n\n /** Cached lazy reference facades keyed by their source wrapper. */\n private readonly referencesCache = new WeakMap<object, GLTFIteratorReferences>();\n\n /** Create an iterator over an existing parsed glTF container. */\n constructor(gltf: GLTFWithBuffers) {\n this.gltf = gltf;\n }\n\n /** Exact unmodified glTF JSON root. */\n get data(): GLTF {\n return this.gltf.json;\n }\n\n /** Return the loaded bytes addressed by a raw bufferView index. */\n getTypedArrayForBufferView(bufferViewIndex: number): Uint8Array {\n return getBufferViewTypedArray(this.data, this.gltf.buffers, bufferViewIndex);\n }\n\n /** Return the loaded typed values addressed by a raw accessor index or decoded accessor. */\n getTypedArrayForAccessor(accessor: GLTFAccessor | number): BigTypedArray {\n return getAccessorTypedArray(this.data, this.gltf.buffers, accessor);\n }\n\n /** Return the loaded bytes addressed by a raw image index. */\n getTypedArrayForImageData(imageIndex: number): Uint8Array {\n return getImageTypedArray(this.data, this.gltf.buffers, imageIndex);\n }\n\n /** Return the loaded buffer companion for a raw buffer definition. */\n getLoadedBuffer(buffer: GLTFBuffer): GLTFWithBuffers['buffers'][number] | undefined {\n const metadata = this.getMetadata(buffer);\n return this.gltf.buffers[metadata.index];\n }\n\n /** Return the loaded byte range for a raw buffer-view definition. */\n getLoadedBufferView(bufferView: GLTFBufferView): Uint8Array | undefined {\n const buffer = this.getReferences(bufferView).buffer;\n const loadedBuffer = this.getLoadedBuffer(buffer);\n if (!loadedBuffer) {\n return undefined;\n }\n const byteOffset = loadedBuffer.byteOffset + (bufferView.byteOffset || 0);\n return new Uint8Array(loadedBuffer.arrayBuffer, byteOffset, bufferView.byteLength);\n }\n\n /** Return the loaded image companion for a raw image definition. */\n getLoadedImage(image: GLTFImage): NonNullable<GLTFWithBuffers['images']>[number] | undefined {\n return this.gltf.images?.[this.getMetadata(image).index];\n }\n\n /** Return the loaded file companion for a raw file definition. */\n getLoadedFile(file: GLTFFile): NonNullable<GLTFWithBuffers['files']>[number] | undefined {\n return this.gltf.files?.[this.getMetadata(file).index];\n }\n\n /** Return the loaded asset companion for a raw external-asset definition. */\n getLoadedExternalAsset(externalAsset: GLTFExternalAsset): GLTFWithBuffers | null | undefined {\n return this.gltf.externalAssets?.[this.getMetadata(externalAsset).index];\n }\n\n /** Append loaded bytes and a raw buffer definition, returning the new buffer index. */\n addBuffer(array: ArrayBufferView): number {\n const arrayBuffer = array.buffer.slice(\n array.byteOffset,\n array.byteOffset + array.byteLength\n ) as ArrayBuffer;\n this.gltf.buffers.push({arrayBuffer, byteOffset: 0, byteLength: array.byteLength});\n this.data.buffers ||= [];\n this.data.buffers.push({byteLength: array.byteLength});\n return this.data.buffers.length - 1;\n }\n\n /** Append a raw bufferView definition and return its index. */\n addBufferView(bufferIndex: number, byteLength: number, byteOffset = 0): number {\n this.data.bufferViews ||= [];\n this.data.bufferViews.push({buffer: bufferIndex, byteOffset, byteLength});\n return this.data.bufferViews.length - 1;\n }\n\n /** Append a raw accessor definition and return its index. */\n addAccessor(\n bufferViewIndex: number,\n accessor: {\n size: number;\n componentType: number;\n count: number;\n min?: number[];\n max?: number[];\n }\n ): number {\n this.data.accessors ||= [];\n this.data.accessors.push({\n bufferView: bufferViewIndex,\n type: getAccessorTypeFromSize(accessor.size),\n componentType: accessor.componentType,\n count: accessor.count,\n min: accessor.min,\n max: accessor.max\n });\n return this.data.accessors.length - 1;\n }\n\n /** Return lazily resolved standard relationships for a raw glTF object. */\n getReferences(object: GLTFAccessor): GLTFAccessorReferences;\n getReferences(object: GLTFAnimation): GLTFAnimationReferences;\n getReferences(object: GLTFAnimationChannel): GLTFAnimationChannelReferences;\n getReferences(object: GLTFAnimationChannelTarget): GLTFAnimationChannelTargetReferences;\n getReferences(object: GLTFAnimationSampler): GLTFAnimationSamplerReferences;\n getReferences(object: GLTFBufferView): GLTFBufferViewReferences;\n getReferences(object: GLTFExternalAsset): GLTFExternalAssetReferences;\n getReferences(object: GLTFFile): GLTFBufferViewOwnerReferences;\n getReferences(object: GLTFImage): GLTFBufferViewOwnerReferences;\n getReferences(object: GLTFMaterial): GLTFMaterialReferences;\n getReferences(object: GLTFTextureInfo): GLTFTextureInfoReferences;\n getReferences(object: GLTFMesh): GLTFMeshReferences;\n getReferences(object: GLTFMeshPrimitive): GLTFMeshPrimitiveReferences;\n getReferences(object: GLTFNode): GLTFNodeReferences;\n getReferences(object: GLTFScene): GLTFSceneReferences;\n getReferences(object: GLTFSkin): GLTFSkinReferences;\n getReferences(object: GLTFTexture): GLTFTextureReferences;\n getReferences(object: GLTFIteratorData): GLTFIteratorReferences {\n const cachedReferences = this.referencesCache.get(object);\n if (cachedReferences) {\n return cachedReferences;\n }\n const objectIterator = this.getObjectIterator(object);\n const references = createReferences(objectIterator);\n this.referencesCache.set(object, references);\n return references;\n }\n\n /** Return iterator-owned metadata for a raw glTF object. */\n getMetadata(object: GLTFIteratorData): GLTFIteratorMetadata {\n const objectIterator = this.getObjectIterator(object);\n const parent =\n objectIterator instanceof GLTFNestedObjectIterator ? objectIterator.parent.data : undefined;\n return {\n gltf: this.gltf,\n type: objectIterator.type,\n index: objectIterator.index,\n parent,\n path: objectIterator.path\n };\n }\n\n /** Resolve the default scene. */\n get scene(): GLTFScene | undefined {\n return this.data.scene === undefined\n ? undefined\n : this.resolveScene(this.data.scene, 'scene').data;\n }\n\n /** Resolve the optional draft glTF 2.1 thumbnail image. */\n get thumbnail(): GLTFImage | undefined {\n return this.data.asset.thumbnail === undefined\n ? undefined\n : this.resolveImage(this.data.asset.thumbnail, 'asset.thumbnail').data;\n }\n\n /** Iterate raw accessors in source order. */\n get accessors(): IterableIterator<GLTFAccessor> {\n return this.iterateCollectionData('accessor') as IterableIterator<GLTFAccessor>;\n }\n\n /** Iterate raw animations in source order. */\n get animations(): IterableIterator<GLTFAnimation> {\n return this.iterateCollectionData('animation') as IterableIterator<GLTFAnimation>;\n }\n\n /** Iterate raw buffers in source order. */\n get buffers(): IterableIterator<GLTFBuffer> {\n return this.iterateCollectionData('buffer') as IterableIterator<GLTFBuffer>;\n }\n\n /** Iterate raw buffer views in source order. */\n get bufferViews(): IterableIterator<GLTFBufferView> {\n return this.iterateCollectionData('bufferView') as IterableIterator<GLTFBufferView>;\n }\n\n /** Iterate raw cameras in source order. */\n get cameras(): IterableIterator<GLTFCamera> {\n return this.iterateCollectionData('camera') as IterableIterator<GLTFCamera>;\n }\n\n /** Iterate raw draft glTF 2.1 external assets in source order. */\n get externalAssets(): IterableIterator<GLTFExternalAsset> {\n return this.iterateCollectionData('externalAsset') as IterableIterator<GLTFExternalAsset>;\n }\n\n /** Iterate raw draft glTF 2.1 files in source order. */\n get files(): IterableIterator<GLTFFile> {\n return this.iterateCollectionData('file') as IterableIterator<GLTFFile>;\n }\n\n /** Iterate raw images in source order. */\n get images(): IterableIterator<GLTFImage> {\n return this.iterateCollectionData('image') as IterableIterator<GLTFImage>;\n }\n\n /** Iterate raw materials in source order. */\n get materials(): IterableIterator<GLTFMaterial> {\n return this.iterateCollectionData('material') as IterableIterator<GLTFMaterial>;\n }\n\n /** Iterate raw mesh definitions in source order. */\n get meshes(): IterableIterator<GLTFMesh> {\n return this.iterateCollectionData('mesh') as IterableIterator<GLTFMesh>;\n }\n\n /** Iterate raw nodes in source order. */\n get nodes(): IterableIterator<GLTFNode> {\n return this.iterateCollectionData('node') as IterableIterator<GLTFNode>;\n }\n\n /** Iterate raw texture samplers in source order. */\n get samplers(): IterableIterator<GLTFSampler> {\n return this.iterateCollectionData('sampler') as IterableIterator<GLTFSampler>;\n }\n\n /** Iterate raw scenes in source order. */\n get scenes(): IterableIterator<GLTFScene> {\n return this.iterateCollectionData('scene') as IterableIterator<GLTFScene>;\n }\n\n /** Iterate raw skins in source order. */\n get skins(): IterableIterator<GLTFSkin> {\n return this.iterateCollectionData('skin') as IterableIterator<GLTFSkin>;\n }\n\n /** Iterate raw textures in source order. */\n get textures(): IterableIterator<GLTFTexture> {\n return this.iterateCollectionData('texture') as IterableIterator<GLTFTexture>;\n }\n\n /** Return whether an extension is declared used or required. */\n hasExtension(extensionName: string): boolean {\n return (\n Boolean(this.data.extensionsUsed?.includes(extensionName)) ||\n Boolean(this.data.extensionsRequired?.includes(extensionName))\n );\n }\n\n /** Return whether an extension is declared required. */\n isExtensionRequired(extensionName: string): boolean {\n return Boolean(this.data.extensionsRequired?.includes(extensionName));\n }\n\n /** Return an extension payload from the root or a wrapped raw object without modifying it. */\n getExtension<ExtensionT = unknown>(extensionName: string): ExtensionT | undefined;\n getExtension<ExtensionT = unknown>(\n object: GLTFIteratorData,\n extensionName: string\n ): ExtensionT | undefined;\n getExtension<ExtensionT = unknown>(\n objectOrExtensionName: GLTFIteratorData | string,\n objectExtensionName?: string\n ): ExtensionT | undefined {\n const data = typeof objectOrExtensionName === 'string' ? this.data : objectOrExtensionName;\n const extensionName =\n typeof objectOrExtensionName === 'string' ? objectOrExtensionName : objectExtensionName!;\n return data.extensions?.[extensionName] as ExtensionT | undefined;\n }\n\n /** Set an extension payload on the root or a wrapped raw object and register it as used. */\n setExtension<ExtensionT>(extensionName: string, extension: ExtensionT, required?: boolean): void;\n setExtension<ExtensionT>(\n object: GLTFIteratorData,\n extensionName: string,\n extension: ExtensionT\n ): void;\n setExtension<ExtensionT>(\n objectOrExtensionName: GLTFIteratorData | string,\n extensionNameOrExtension: string | ExtensionT,\n extensionOrRequired?: ExtensionT | boolean\n ): void {\n const isRootExtension = typeof objectOrExtensionName === 'string';\n const data = isRootExtension ? this.data : objectOrExtensionName;\n const extensionName = isRootExtension\n ? objectOrExtensionName\n : (extensionNameOrExtension as string);\n const extension = isRootExtension\n ? (extensionNameOrExtension as ExtensionT)\n : (extensionOrRequired as ExtensionT);\n const required = isRootExtension ? Boolean(extensionOrRequired) : false;\n data.extensions ||= {};\n data.extensions[extensionName] = extension;\n this.registerUsedExtension(extensionName);\n if (required) {\n this.registerRequiredExtension(extensionName);\n }\n }\n\n /** Register an extension in `extensionsUsed`. */\n registerUsedExtension(extensionName: string): void {\n this.data.extensionsUsed ||= [];\n if (!this.data.extensionsUsed.includes(extensionName)) {\n this.data.extensionsUsed.push(extensionName);\n }\n }\n\n /** Register an extension in both `extensionsUsed` and `extensionsRequired`. */\n registerRequiredExtension(extensionName: string): void {\n this.registerUsedExtension(extensionName);\n this.data.extensionsRequired ||= [];\n if (!this.data.extensionsRequired.includes(extensionName)) {\n this.data.extensionsRequired.push(extensionName);\n }\n }\n\n /** Remove extension data from the root or a wrapped raw object. */\n removeExtension(extensionName: string): void;\n removeExtension(object: GLTFIteratorData, extensionName: string): void;\n removeExtension(\n objectOrExtensionName: GLTFIteratorData | string,\n objectExtensionName?: string\n ): void {\n const isRootExtension = typeof objectOrExtensionName === 'string';\n const data = isRootExtension ? this.data : objectOrExtensionName;\n const extensionName = isRootExtension ? objectOrExtensionName : objectExtensionName!;\n if (data.extensions?.[extensionName] !== undefined) {\n this.recordRemovedExtension(extensionName);\n delete data.extensions[extensionName];\n }\n if (isRootExtension) {\n removeString(this.data.extensionsUsed, extensionName);\n removeString(this.data.extensionsRequired, extensionName);\n }\n }\n\n /** Record that an extension payload was consumed by a transformation. */\n recordRemovedExtension(extensionName: string): void {\n const json = this.data as GLTF & {extensionsRemoved?: string[]};\n json.extensionsRemoved ||= [];\n if (!json.extensionsRemoved.includes(extensionName)) {\n json.extensionsRemoved.push(extensionName);\n }\n }\n\n /** Resolve an accessor reference. */\n resolveAccessor(index: number, sourcePath: string): GLTFAccessorIterator {\n return this.resolveCollectionObject('accessor', index, sourcePath) as GLTFAccessorIterator;\n }\n\n /** Resolve a buffer reference. */\n resolveBuffer(index: number, sourcePath: string): GLTFBufferIterator {\n return this.resolveCollectionObject('buffer', index, sourcePath) as GLTFBufferIterator;\n }\n\n /** Resolve a buffer-view reference. */\n resolveBufferView(index: number, sourcePath: string): GLTFBufferViewIterator {\n return this.resolveCollectionObject('bufferView', index, sourcePath) as GLTFBufferViewIterator;\n }\n\n /** Resolve a camera reference. */\n resolveCamera(index: number, sourcePath: string): GLTFCameraIterator {\n return this.resolveCollectionObject('camera', index, sourcePath) as GLTFCameraIterator;\n }\n\n /** Resolve a draft external-asset reference. */\n resolveExternalAsset(index: number, sourcePath: string): GLTFExternalAssetIterator {\n return this.resolveCollectionObject(\n 'externalAsset',\n index,\n sourcePath\n ) as GLTFExternalAssetIterator;\n }\n\n /** Resolve a draft file reference. */\n resolveFile(index: number, sourcePath: string): GLTFFileIterator {\n return this.resolveCollectionObject('file', index, sourcePath) as GLTFFileIterator;\n }\n\n /** Resolve an image reference. */\n resolveImage(index: number, sourcePath: string): GLTFImageIterator {\n return this.resolveCollectionObject('image', index, sourcePath) as GLTFImageIterator;\n }\n\n /** Resolve a material reference. */\n resolveMaterial(index: number, sourcePath: string): GLTFMaterialIterator {\n return this.resolveCollectionObject('material', index, sourcePath) as GLTFMaterialIterator;\n }\n\n /** Resolve a mesh reference. */\n resolveMesh(index: number, sourcePath: string): GLTFMeshIterator {\n return this.resolveCollectionObject('mesh', index, sourcePath) as GLTFMeshIterator;\n }\n\n /** Resolve a node reference. */\n resolveNode(index: number, sourcePath: string): GLTFNodeIterator {\n return this.resolveCollectionObject('node', index, sourcePath) as GLTFNodeIterator;\n }\n\n /** Resolve a sampler reference. */\n resolveSampler(index: number, sourcePath: string): GLTFSamplerIterator {\n return this.resolveCollectionObject('sampler', index, sourcePath) as GLTFSamplerIterator;\n }\n\n /** Resolve a scene reference. */\n resolveScene(index: number, sourcePath: string): GLTFSceneIterator {\n return this.resolveCollectionObject('scene', index, sourcePath) as GLTFSceneIterator;\n }\n\n /** Resolve a skin reference. */\n resolveSkin(index: number, sourcePath: string): GLTFSkinIterator {\n return this.resolveCollectionObject('skin', index, sourcePath) as GLTFSkinIterator;\n }\n\n /** Resolve a texture reference. */\n resolveTexture(index: number, sourcePath: string): GLTFTextureIterator {\n return this.resolveCollectionObject('texture', index, sourcePath) as GLTFTextureIterator;\n }\n\n /** Return a cached nested wrapper or create it once. */\n getOrCreateNested<IteratorT extends GLTFObjectIterator<any, any>>(\n data: object,\n createIterator: () => IteratorT\n ): IteratorT {\n return this.getOrCreate(data, createIterator);\n }\n\n /** Iterate one top-level glTF collection lazily. */\n private iterateCollection(\n type: GLTFCollectionType\n ): IterableIterator<GLTFObjectIterator<any, any>> {\n const values = this.getCollection(type);\n return iterateValues(values, (_, index) => this.resolveCollectionObject(type, index, type));\n }\n\n /** Iterate exact raw objects from one top-level glTF collection. */\n private iterateCollectionData(type: GLTFCollectionType): IterableIterator<GLTFIteratorData> {\n return (function* iterateRawObjects(\n iterator: GLTFIterator\n ): IterableIterator<GLTFIteratorData> {\n for (const objectIterator of iterator.iterateCollection(type)) {\n yield objectIterator.data;\n }\n })(this);\n }\n\n /** Return the registered internal context for a raw glTF object. */\n private getObjectIterator(object: GLTFIteratorData): GLTFObjectIterator<any, any> {\n const objectIterator = this.objectCache.get(object);\n if (!objectIterator) {\n throw new Error('glTF object is not registered with this iterator');\n }\n return objectIterator;\n }\n\n /** Resolve and cache one top-level collection object. */\n private resolveCollectionObject(\n type: GLTFCollectionType,\n index: number,\n sourcePath: string\n ): GLTFObjectIterator<any, any> {\n const values = this.getCollection(type);\n const data = values[index] as GLTFIteratorData | undefined;\n if (!data) {\n throw new Error(\n `Invalid glTF reference at ${sourcePath}: ${type} index ${index} is out of range`\n );\n }\n return this.getOrCreate(data, () => this.createCollectionObject(type, index, data));\n }\n\n /** Return the raw array corresponding to a top-level wrapper type. */\n private getCollection(type: GLTFCollectionType): GLTFIteratorData[] {\n switch (type) {\n case 'accessor':\n return this.data.accessors || [];\n case 'animation':\n return this.data.animations || [];\n case 'buffer':\n return this.data.buffers || [];\n case 'bufferView':\n return this.data.bufferViews || [];\n case 'camera':\n return this.data.cameras || [];\n case 'externalAsset':\n return this.data.externalAssets || [];\n case 'file':\n return this.data.files || [];\n case 'image':\n return this.data.images || [];\n case 'material':\n return this.data.materials || [];\n case 'mesh':\n return this.data.meshes || [];\n case 'node':\n return this.data.nodes || [];\n case 'sampler':\n return this.data.samplers || [];\n case 'scene':\n return this.data.scenes || [];\n case 'skin':\n return this.data.skins || [];\n case 'texture':\n return this.data.textures || [];\n }\n }\n\n /** Create one correctly typed top-level wrapper. */\n private createCollectionObject(\n type: GLTFCollectionType,\n index: number,\n data: GLTFIteratorData\n ): GLTFObjectIterator<any, any> {\n const path = `${getCollectionName(type)}[${index}]`;\n switch (type) {\n case 'accessor':\n return new GLTFAccessorIterator(this, type, index, data as GLTFAccessor, path);\n case 'animation':\n return new GLTFAnimationIterator(this, type, index, data as GLTFAnimation, path);\n case 'buffer':\n return new GLTFBufferIterator(this, type, index, data as GLTFBuffer, path);\n case 'bufferView':\n return new GLTFBufferViewIterator(this, type, index, data as GLTFBufferView, path);\n case 'camera':\n return new GLTFCameraIterator(this, type, index, data as GLTFCamera, path);\n case 'externalAsset':\n return new GLTFExternalAssetIterator(this, type, index, data as GLTFExternalAsset, path);\n case 'file':\n return new GLTFFileIterator(this, type, index, data as GLTFFile, path);\n case 'image':\n return new GLTFImageIterator(this, type, index, data as GLTFImage, path);\n case 'material':\n return new GLTFMaterialIterator(this, type, index, data as GLTFMaterial, path);\n case 'mesh':\n return new GLTFMeshIterator(this, type, index, data as GLTFMesh, path);\n case 'node':\n return new GLTFNodeIterator(this, type, index, data as GLTFNode, path);\n case 'sampler':\n return new GLTFSamplerIterator(this, type, index, data as GLTFSampler, path);\n case 'scene':\n return new GLTFSceneIterator(this, type, index, data as GLTFScene, path);\n case 'skin':\n return new GLTFSkinIterator(this, type, index, data as GLTFSkin, path);\n case 'texture':\n return new GLTFTextureIterator(this, type, index, data as GLTFTexture, path);\n }\n }\n\n /** Reuse a wrapper for the same raw source object. */\n private getOrCreate<IteratorT extends GLTFObjectIterator<any, any>>(\n data: object,\n createIterator: () => IteratorT\n ): IteratorT {\n const cachedIterator = this.objectCache.get(data);\n if (cachedIterator) {\n return cachedIterator as IteratorT;\n }\n const iterator = createIterator();\n this.objectCache.set(data, iterator);\n return iterator;\n }\n}\n\n/** Build a lazy relationship facade without resolving any links during construction. */\nfunction createReferences(object: GLTFObjectIterator<any, any>): GLTFIteratorReferences {\n switch (object.type) {\n case 'accessor':\n return {\n get bufferView() {\n return (object as GLTFAccessorIterator).bufferView?.data;\n }\n };\n case 'animation':\n return {\n get channels() {\n return iterateObjectData((object as GLTFAnimationIterator).channels);\n },\n get samplers() {\n return iterateObjectData((object as GLTFAnimationIterator).samplers);\n }\n };\n case 'animationChannel':\n return {\n get sampler() {\n return (object as GLTFAnimationChannelIterator).sampler.data;\n },\n get target() {\n return (object as GLTFAnimationChannelIterator).target.data;\n }\n };\n case 'animationChannelTarget':\n return {\n get node() {\n return (object as GLTFAnimationChannelTargetIterator).node?.data;\n }\n };\n case 'animationSampler':\n return {\n get input() {\n return (object as GLTFAnimationSamplerIterator).input.data;\n },\n get output() {\n return (object as GLTFAnimationSamplerIterator).output.data;\n }\n };\n case 'bufferView':\n return {\n get buffer() {\n return (object as GLTFBufferViewIterator).buffer.data;\n }\n };\n case 'externalAsset':\n return {\n get file() {\n return (object as GLTFExternalAssetIterator).file.data;\n }\n };\n case 'file':\n case 'image':\n return {\n get bufferView() {\n return (object as GLTFFileIterator | GLTFImageIterator).bufferView?.data;\n }\n };\n case 'material':\n return {\n get baseColorTexture() {\n return (object as GLTFMaterialIterator).baseColorTexture?.data;\n },\n get metallicRoughnessTexture() {\n return (object as GLTFMaterialIterator).metallicRoughnessTexture?.data;\n },\n get normalTexture() {\n return (object as GLTFMaterialIterator).normalTexture?.data;\n },\n get occlusionTexture() {\n return (object as GLTFMaterialIterator).occlusionTexture?.data;\n },\n get emissiveTexture() {\n return (object as GLTFMaterialIterator).emissiveTexture?.data;\n },\n get textures() {\n return iterateObjectData((object as GLTFMaterialIterator).textures);\n }\n };\n case 'textureInfo':\n return {\n get texture() {\n return (object as GLTFTextureInfoIterator).texture.data;\n }\n };\n case 'mesh':\n return {\n get primitives() {\n return iterateObjectData((object as GLTFMeshIterator).primitives);\n }\n };\n case 'primitive':\n return {\n get attributes() {\n return mapObjectData((object as GLTFMeshPrimitiveIterator).attributes);\n },\n get indices() {\n return (object as GLTFMeshPrimitiveIterator).indices?.data;\n },\n get material() {\n return (object as GLTFMeshPrimitiveIterator).material?.data;\n },\n get targets() {\n return (object as GLTFMeshPrimitiveIterator).targets.map(mapObjectData);\n }\n };\n case 'node':\n return {\n get camera() {\n return (object as GLTFNodeIterator).camera?.data;\n },\n get children() {\n return iterateObjectData((object as GLTFNodeIterator).children);\n },\n get skin() {\n return (object as GLTFNodeIterator).skin?.data;\n },\n get mesh() {\n return (object as GLTFNodeIterator).mesh?.data;\n },\n get externalAsset() {\n return (object as GLTFNodeIterator).externalAsset?.data;\n }\n };\n case 'scene':\n return {\n get nodes() {\n return iterateObjectData((object as GLTFSceneIterator).nodes);\n }\n };\n case 'skin':\n return {\n get inverseBindMatrices() {\n return (object as GLTFSkinIterator).inverseBindMatrices?.data;\n },\n get skeleton() {\n return (object as GLTFSkinIterator).skeleton?.data;\n },\n get joints() {\n return iterateObjectData((object as GLTFSkinIterator).joints);\n }\n };\n case 'texture':\n return {\n get sampler() {\n return (object as GLTFTextureIterator).sampler?.data;\n },\n get source() {\n return (object as GLTFTextureIterator).source?.data;\n }\n };\n default:\n return {};\n }\n}\n\n/** Iterate raw array values without creating wrapper arrays. */\nfunction iterateValues<ValueT, IteratorT>(\n values: readonly ValueT[],\n getIterator: (value: ValueT, index: number) => IteratorT\n): IterableIterator<IteratorT> {\n return (function* iterate(): IterableIterator<IteratorT> {\n for (let index = 0; index < values.length; index++) {\n yield getIterator(values[index], index);\n }\n })();\n}\n\n/** Yield the exact raw object carried by each internal iterator context. */\nfunction iterateObjectData<DataT extends GLTFIteratorData>(\n objects: Iterable<GLTFObjectIterator<DataT, any>>\n): IterableIterator<DataT> {\n return (function* iterateRawData(): IterableIterator<DataT> {\n for (const object of objects) {\n yield object.data;\n }\n })();\n}\n\n/** Replace internal iterator contexts in a reference map with their exact raw objects. */\nfunction mapObjectData<DataT extends GLTFIteratorData>(\n objects: ReadonlyMap<string, GLTFObjectIterator<DataT, any>>\n): ReadonlyMap<string, DataT> {\n return new Map(Array.from(objects, ([name, object]) => [name, object.data]));\n}\n\n/** Return the JSON collection name for a wrapper type. */\nfunction getCollectionName(type: GLTFCollectionType): string {\n switch (type) {\n case 'bufferView':\n return 'bufferViews';\n case 'externalAsset':\n return 'externalAssets';\n case 'mesh':\n return 'meshes';\n default:\n return `${type}s`;\n }\n}\n\n/** Remove every occurrence of a string from an optional array. */\nfunction removeString(values: string[] | undefined, value: string): void {\n if (!values) {\n return;\n }\n for (let index = values.length - 1; index >= 0; index--) {\n if (values[index] === value) {\n values.splice(index, 1);\n }\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["getBufferViewTypedArray", "getAccessorTypedArray", "getImageTypedArray"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,407 @@
|
|
|
1
|
+
import type { BigTypedArray } from '@loaders.gl/core/schema';
|
|
2
|
+
import type { GLTF, GLTFAccessor, GLTFAnimation, GLTFAnimationChannel, GLTFAnimationChannelTarget, GLTFAnimationSampler, GLTFBuffer, GLTFBufferView, GLTFCamera, GLTFExternalAsset, GLTFFile, GLTFImage, GLTFMaterial, GLTFMaterialNormalTextureInfo, GLTFMaterialOcclusionTextureInfo, GLTFMesh, GLTFMeshPrimitive, GLTFNode, GLTFSampler, GLTFScene, GLTFSkin, GLTFTexture, GLTFTextureInfo } from "../types/gltf-json-schema.js";
|
|
3
|
+
import type { GLTFWithBuffers } from "../types/gltf-types.js";
|
|
4
|
+
/** String tag identifying a raw glTF object registered with an iterator. */
|
|
5
|
+
export type GLTFIteratorType = 'accessor' | 'animation' | 'animationChannel' | 'animationChannelTarget' | 'animationSampler' | 'buffer' | 'bufferView' | 'camera' | 'externalAsset' | 'file' | 'image' | 'material' | 'mesh' | 'primitive' | 'node' | 'sampler' | 'scene' | 'skin' | 'texture' | 'textureInfo';
|
|
6
|
+
/** Minimum raw object shape required by extension helpers. */
|
|
7
|
+
type GLTFIteratorData = {
|
|
8
|
+
extensions?: Record<string, any>;
|
|
9
|
+
};
|
|
10
|
+
/** Base class for a lightweight view of one raw glTF object. */
|
|
11
|
+
declare abstract class GLTFObjectIterator<DataT extends GLTFIteratorData, TypeT extends GLTFIteratorType> {
|
|
12
|
+
/** Original glTF container. */
|
|
13
|
+
readonly gltf: GLTFWithBuffers;
|
|
14
|
+
/** Stable tag identifying the wrapped object type. */
|
|
15
|
+
readonly type: TypeT;
|
|
16
|
+
/** Index in the object's top-level or parent-local collection. */
|
|
17
|
+
readonly index: number;
|
|
18
|
+
/** Exact unmodified object from the source glTF JSON. */
|
|
19
|
+
readonly data: DataT;
|
|
20
|
+
/** Human-readable path to the raw object. */
|
|
21
|
+
readonly path: string;
|
|
22
|
+
/** Root iterator used to resolve linked indices. */
|
|
23
|
+
protected readonly iterator: GLTFIterator;
|
|
24
|
+
/** Create a lightweight wrapper for a raw glTF object. */
|
|
25
|
+
constructor(iterator: GLTFIterator, type: TypeT, index: number, data: DataT, path: string);
|
|
26
|
+
}
|
|
27
|
+
/** Base class for an object stored in a parent-local array or property. */
|
|
28
|
+
declare abstract class GLTFNestedObjectIterator<DataT extends GLTFIteratorData, TypeT extends GLTFIteratorType, ParentT extends GLTFObjectIterator<GLTFIteratorData, GLTFIteratorType>> extends GLTFObjectIterator<DataT, TypeT> {
|
|
29
|
+
/** Wrapper containing this nested object. */
|
|
30
|
+
readonly parent: ParentT;
|
|
31
|
+
/** Create a wrapper for a parent-local raw glTF object. */
|
|
32
|
+
constructor(iterator: GLTFIterator, type: TypeT, index: number, data: DataT, path: string, parent: ParentT);
|
|
33
|
+
}
|
|
34
|
+
/** Metadata privately associated with a raw glTF object by an iterator. */
|
|
35
|
+
export interface GLTFIteratorMetadata {
|
|
36
|
+
readonly gltf: GLTFWithBuffers;
|
|
37
|
+
readonly type: GLTFIteratorType;
|
|
38
|
+
readonly index: number;
|
|
39
|
+
readonly parent?: GLTFIteratorData;
|
|
40
|
+
readonly path: string;
|
|
41
|
+
}
|
|
42
|
+
/** Lazily resolved standard relationships for one raw glTF object. */
|
|
43
|
+
export type GLTFIteratorReferences = object;
|
|
44
|
+
/** References reachable from a texture wrapper. */
|
|
45
|
+
export interface GLTFTextureReferences {
|
|
46
|
+
readonly sampler: GLTFSampler | undefined;
|
|
47
|
+
readonly source: GLTFImage | undefined;
|
|
48
|
+
}
|
|
49
|
+
/** References reachable from a node wrapper. */
|
|
50
|
+
export interface GLTFNodeReferences {
|
|
51
|
+
readonly camera: GLTFCamera | undefined;
|
|
52
|
+
readonly children: IterableIterator<GLTFNode>;
|
|
53
|
+
readonly skin: GLTFSkin | undefined;
|
|
54
|
+
readonly mesh: GLTFMesh | undefined;
|
|
55
|
+
readonly externalAsset: GLTFExternalAsset | undefined;
|
|
56
|
+
}
|
|
57
|
+
/** References reachable from a mesh wrapper. */
|
|
58
|
+
export interface GLTFMeshReferences {
|
|
59
|
+
readonly primitives: IterableIterator<GLTFMeshPrimitive>;
|
|
60
|
+
}
|
|
61
|
+
/** References reachable from a scene wrapper. */
|
|
62
|
+
export interface GLTFSceneReferences {
|
|
63
|
+
readonly nodes: IterableIterator<GLTFNode>;
|
|
64
|
+
}
|
|
65
|
+
/** References reachable from a mesh primitive wrapper. */
|
|
66
|
+
export interface GLTFMeshPrimitiveReferences {
|
|
67
|
+
readonly attributes: ReadonlyMap<string, GLTFAccessor>;
|
|
68
|
+
readonly indices: GLTFAccessor | undefined;
|
|
69
|
+
readonly material: GLTFMaterial | undefined;
|
|
70
|
+
readonly targets: ReadonlyArray<ReadonlyMap<string, GLTFAccessor>>;
|
|
71
|
+
}
|
|
72
|
+
/** References reachable from a texture-info wrapper. */
|
|
73
|
+
export interface GLTFTextureInfoReferences {
|
|
74
|
+
readonly texture: GLTFTexture;
|
|
75
|
+
}
|
|
76
|
+
/** References reachable from a material wrapper. */
|
|
77
|
+
export interface GLTFMaterialReferences {
|
|
78
|
+
readonly baseColorTexture: GLTFTextureInfo | undefined;
|
|
79
|
+
readonly metallicRoughnessTexture: GLTFTextureInfo | undefined;
|
|
80
|
+
readonly normalTexture: GLTFMaterialNormalTextureInfo | undefined;
|
|
81
|
+
readonly occlusionTexture: GLTFMaterialOcclusionTextureInfo | undefined;
|
|
82
|
+
readonly emissiveTexture: GLTFTextureInfo | undefined;
|
|
83
|
+
readonly textures: IterableIterator<GLTFTextureInfo | GLTFMaterialNormalTextureInfo | GLTFMaterialOcclusionTextureInfo>;
|
|
84
|
+
}
|
|
85
|
+
/** References reachable from an accessor wrapper. */
|
|
86
|
+
export interface GLTFAccessorReferences {
|
|
87
|
+
readonly bufferView: GLTFBufferView | undefined;
|
|
88
|
+
}
|
|
89
|
+
/** References reachable from a buffer-view wrapper. */
|
|
90
|
+
export interface GLTFBufferViewReferences {
|
|
91
|
+
readonly buffer: GLTFBuffer;
|
|
92
|
+
}
|
|
93
|
+
/** References reachable from a file or image wrapper. */
|
|
94
|
+
export interface GLTFBufferViewOwnerReferences {
|
|
95
|
+
readonly bufferView: GLTFBufferView | undefined;
|
|
96
|
+
}
|
|
97
|
+
/** References reachable from an external asset wrapper. */
|
|
98
|
+
export interface GLTFExternalAssetReferences {
|
|
99
|
+
readonly file: GLTFFile;
|
|
100
|
+
}
|
|
101
|
+
/** References reachable from an animation wrapper. */
|
|
102
|
+
export interface GLTFAnimationReferences {
|
|
103
|
+
readonly channels: IterableIterator<GLTFAnimationChannel>;
|
|
104
|
+
readonly samplers: IterableIterator<GLTFAnimationSampler>;
|
|
105
|
+
}
|
|
106
|
+
/** References reachable from an animation channel wrapper. */
|
|
107
|
+
export interface GLTFAnimationChannelReferences {
|
|
108
|
+
readonly sampler: GLTFAnimationSampler;
|
|
109
|
+
readonly target: GLTFAnimationChannelTarget;
|
|
110
|
+
}
|
|
111
|
+
/** References reachable from an animation target wrapper. */
|
|
112
|
+
export interface GLTFAnimationChannelTargetReferences {
|
|
113
|
+
readonly node: GLTFNode | undefined;
|
|
114
|
+
}
|
|
115
|
+
/** References reachable from an animation sampler wrapper. */
|
|
116
|
+
export interface GLTFAnimationSamplerReferences {
|
|
117
|
+
readonly input: GLTFAccessor;
|
|
118
|
+
readonly output: GLTFAccessor;
|
|
119
|
+
}
|
|
120
|
+
/** References reachable from a skin wrapper. */
|
|
121
|
+
export interface GLTFSkinReferences {
|
|
122
|
+
readonly inverseBindMatrices: GLTFAccessor | undefined;
|
|
123
|
+
readonly skeleton: GLTFNode | undefined;
|
|
124
|
+
readonly joints: IterableIterator<GLTFNode>;
|
|
125
|
+
}
|
|
126
|
+
/** Lightweight accessor wrapper. */
|
|
127
|
+
declare class GLTFAccessorIterator extends GLTFObjectIterator<GLTFAccessor, 'accessor'> {
|
|
128
|
+
/** Resolve the accessor's buffer view. */
|
|
129
|
+
get bufferView(): GLTFBufferViewIterator | undefined;
|
|
130
|
+
}
|
|
131
|
+
/** Lightweight buffer wrapper. */
|
|
132
|
+
declare class GLTFBufferIterator extends GLTFObjectIterator<GLTFBuffer, 'buffer'> {
|
|
133
|
+
/** Return the loaded byte range parallel to this JSON buffer, when available. */
|
|
134
|
+
get loadedBuffer(): GLTFWithBuffers['buffers'][number] | undefined;
|
|
135
|
+
}
|
|
136
|
+
/** Lightweight buffer-view wrapper. */
|
|
137
|
+
declare class GLTFBufferViewIterator extends GLTFObjectIterator<GLTFBufferView, 'bufferView'> {
|
|
138
|
+
/** Resolve the backing JSON buffer. */
|
|
139
|
+
get buffer(): GLTFBufferIterator;
|
|
140
|
+
/** Return a byte view over the loaded buffer-view range. */
|
|
141
|
+
get loadedBufferView(): Uint8Array | undefined;
|
|
142
|
+
}
|
|
143
|
+
/** Lightweight camera wrapper. */
|
|
144
|
+
declare class GLTFCameraIterator extends GLTFObjectIterator<GLTFCamera, 'camera'> {
|
|
145
|
+
}
|
|
146
|
+
/** Lightweight external-asset wrapper for draft glTF 2.1. */
|
|
147
|
+
declare class GLTFExternalAssetIterator extends GLTFObjectIterator<GLTFExternalAsset, 'externalAsset'> {
|
|
148
|
+
/** Resolve the file containing the external glTF asset. */
|
|
149
|
+
get file(): GLTFFileIterator;
|
|
150
|
+
/** Return the parsed external glTF loaded parallel to this definition. */
|
|
151
|
+
get loadedAsset(): GLTFWithBuffers | null | undefined;
|
|
152
|
+
}
|
|
153
|
+
/** Lightweight file wrapper for draft glTF 2.1. */
|
|
154
|
+
declare class GLTFFileIterator extends GLTFObjectIterator<GLTFFile, 'file'> {
|
|
155
|
+
/** Resolve the optional buffer view containing this file. */
|
|
156
|
+
get bufferView(): GLTFBufferViewIterator | undefined;
|
|
157
|
+
/** Return the resolved file loaded parallel to this definition. */
|
|
158
|
+
get loadedFile(): NonNullable<GLTFWithBuffers['files']>[number] | undefined;
|
|
159
|
+
}
|
|
160
|
+
/** Lightweight image wrapper. */
|
|
161
|
+
declare class GLTFImageIterator extends GLTFObjectIterator<GLTFImage, 'image'> {
|
|
162
|
+
/** Resolve the optional buffer view containing this image. */
|
|
163
|
+
get bufferView(): GLTFBufferViewIterator | undefined;
|
|
164
|
+
/** Return the decoded image loaded parallel to this definition. */
|
|
165
|
+
get loadedImage(): NonNullable<GLTFWithBuffers['images']>[number] | undefined;
|
|
166
|
+
}
|
|
167
|
+
/** Lightweight material wrapper. */
|
|
168
|
+
declare class GLTFMaterialIterator extends GLTFObjectIterator<GLTFMaterial, 'material'> {
|
|
169
|
+
/** Resolve the base-color texture info. */
|
|
170
|
+
get baseColorTexture(): GLTFTextureInfoIterator | undefined;
|
|
171
|
+
/** Resolve the metallic-roughness texture info. */
|
|
172
|
+
get metallicRoughnessTexture(): GLTFTextureInfoIterator | undefined;
|
|
173
|
+
/** Resolve the normal texture info. */
|
|
174
|
+
get normalTexture(): GLTFTextureInfoIterator | undefined;
|
|
175
|
+
/** Resolve the occlusion texture info. */
|
|
176
|
+
get occlusionTexture(): GLTFTextureInfoIterator | undefined;
|
|
177
|
+
/** Resolve the emissive texture info. */
|
|
178
|
+
get emissiveTexture(): GLTFTextureInfoIterator | undefined;
|
|
179
|
+
/** Resolve standard texture-info properties in their schema order. */
|
|
180
|
+
get textures(): IterableIterator<GLTFTextureInfoIterator>;
|
|
181
|
+
/** Wrap one optional standard material texture-info property. */
|
|
182
|
+
private getTextureInfo;
|
|
183
|
+
}
|
|
184
|
+
/** Lightweight texture-info wrapper nested in a material. */
|
|
185
|
+
declare class GLTFTextureInfoIterator extends GLTFNestedObjectIterator<GLTFTextureInfo | GLTFMaterialNormalTextureInfo | GLTFMaterialOcclusionTextureInfo, 'textureInfo', GLTFMaterialIterator> {
|
|
186
|
+
/** Resolve the texture referenced by the raw texture-info `index` field. */
|
|
187
|
+
get texture(): GLTFTextureIterator;
|
|
188
|
+
}
|
|
189
|
+
/** Lightweight mesh wrapper. */
|
|
190
|
+
declare class GLTFMeshIterator extends GLTFObjectIterator<GLTFMesh, 'mesh'> {
|
|
191
|
+
/** Iterate mesh primitives in source order. */
|
|
192
|
+
get primitives(): IterableIterator<GLTFMeshPrimitiveIterator>;
|
|
193
|
+
}
|
|
194
|
+
/** Lightweight mesh primitive wrapper. */
|
|
195
|
+
declare class GLTFMeshPrimitiveIterator extends GLTFNestedObjectIterator<GLTFMeshPrimitive, 'primitive', GLTFMeshIterator> {
|
|
196
|
+
/** Resolve every vertex attribute accessor by semantic name. */
|
|
197
|
+
get attributes(): ReadonlyMap<string, GLTFAccessorIterator>;
|
|
198
|
+
/** Resolve the optional index accessor. */
|
|
199
|
+
get indices(): GLTFAccessorIterator | undefined;
|
|
200
|
+
/** Resolve the optional material. */
|
|
201
|
+
get material(): GLTFMaterialIterator | undefined;
|
|
202
|
+
/** Resolve morph-target attribute accessors without rewriting target dictionaries. */
|
|
203
|
+
get targets(): ReadonlyArray<ReadonlyMap<string, GLTFAccessorIterator>>;
|
|
204
|
+
}
|
|
205
|
+
/** Lightweight node wrapper. */
|
|
206
|
+
declare class GLTFNodeIterator extends GLTFObjectIterator<GLTFNode, 'node'> {
|
|
207
|
+
/** Resolve the optional camera. */
|
|
208
|
+
get camera(): GLTFCameraIterator | undefined;
|
|
209
|
+
/** Iterate resolved child nodes in source order. */
|
|
210
|
+
get children(): IterableIterator<GLTFNodeIterator>;
|
|
211
|
+
/** Resolve the optional skin. */
|
|
212
|
+
get skin(): GLTFSkinIterator | undefined;
|
|
213
|
+
/** Resolve the optional mesh definition. */
|
|
214
|
+
get mesh(): GLTFMeshIterator | undefined;
|
|
215
|
+
/** Resolve the optional draft glTF 2.1 external asset. */
|
|
216
|
+
get externalAsset(): GLTFExternalAssetIterator | undefined;
|
|
217
|
+
}
|
|
218
|
+
/** Lightweight texture sampler wrapper. */
|
|
219
|
+
declare class GLTFSamplerIterator extends GLTFObjectIterator<GLTFSampler, 'sampler'> {
|
|
220
|
+
}
|
|
221
|
+
/** Lightweight scene wrapper. */
|
|
222
|
+
declare class GLTFSceneIterator extends GLTFObjectIterator<GLTFScene, 'scene'> {
|
|
223
|
+
/** Iterate resolved scene root nodes in source order. */
|
|
224
|
+
get nodes(): IterableIterator<GLTFNodeIterator>;
|
|
225
|
+
}
|
|
226
|
+
/** Lightweight skin wrapper. */
|
|
227
|
+
declare class GLTFSkinIterator extends GLTFObjectIterator<GLTFSkin, 'skin'> {
|
|
228
|
+
/** Resolve the optional inverse-bind-matrix accessor. */
|
|
229
|
+
get inverseBindMatrices(): GLTFAccessorIterator | undefined;
|
|
230
|
+
/** Resolve the optional skeleton root node. */
|
|
231
|
+
get skeleton(): GLTFNodeIterator | undefined;
|
|
232
|
+
/** Iterate resolved joint nodes in source order. */
|
|
233
|
+
get joints(): IterableIterator<GLTFNodeIterator>;
|
|
234
|
+
}
|
|
235
|
+
/** Lightweight texture wrapper. */
|
|
236
|
+
declare class GLTFTextureIterator extends GLTFObjectIterator<GLTFTexture, 'texture'> {
|
|
237
|
+
/** Resolve the optional sampler. */
|
|
238
|
+
get sampler(): GLTFSamplerIterator | undefined;
|
|
239
|
+
/** Resolve the optional source image. */
|
|
240
|
+
get source(): GLTFImageIterator | undefined;
|
|
241
|
+
}
|
|
242
|
+
/**
|
|
243
|
+
* Traverse and transform raw glTF data through lazy, identity-preserving object wrappers.
|
|
244
|
+
*
|
|
245
|
+
* The iterator never clones, links, normalizes, or otherwise postprocesses its input. Wrapper
|
|
246
|
+
* `data` fields are the original mutable JSON objects so extension handlers can transform them in
|
|
247
|
+
* place while using typed reference getters for navigation.
|
|
248
|
+
*/
|
|
249
|
+
export declare class GLTFIterator {
|
|
250
|
+
/** Original glTF container traversed by this iterator. */
|
|
251
|
+
readonly gltf: GLTFWithBuffers;
|
|
252
|
+
/** Cached wrapper for each raw source object. */
|
|
253
|
+
private readonly objectCache;
|
|
254
|
+
/** Cached lazy reference facades keyed by their source wrapper. */
|
|
255
|
+
private readonly referencesCache;
|
|
256
|
+
/** Create an iterator over an existing parsed glTF container. */
|
|
257
|
+
constructor(gltf: GLTFWithBuffers);
|
|
258
|
+
/** Exact unmodified glTF JSON root. */
|
|
259
|
+
get data(): GLTF;
|
|
260
|
+
/** Return the loaded bytes addressed by a raw bufferView index. */
|
|
261
|
+
getTypedArrayForBufferView(bufferViewIndex: number): Uint8Array;
|
|
262
|
+
/** Return the loaded typed values addressed by a raw accessor index or decoded accessor. */
|
|
263
|
+
getTypedArrayForAccessor(accessor: GLTFAccessor | number): BigTypedArray;
|
|
264
|
+
/** Return the loaded bytes addressed by a raw image index. */
|
|
265
|
+
getTypedArrayForImageData(imageIndex: number): Uint8Array;
|
|
266
|
+
/** Return the loaded buffer companion for a raw buffer definition. */
|
|
267
|
+
getLoadedBuffer(buffer: GLTFBuffer): GLTFWithBuffers['buffers'][number] | undefined;
|
|
268
|
+
/** Return the loaded byte range for a raw buffer-view definition. */
|
|
269
|
+
getLoadedBufferView(bufferView: GLTFBufferView): Uint8Array | undefined;
|
|
270
|
+
/** Return the loaded image companion for a raw image definition. */
|
|
271
|
+
getLoadedImage(image: GLTFImage): NonNullable<GLTFWithBuffers['images']>[number] | undefined;
|
|
272
|
+
/** Return the loaded file companion for a raw file definition. */
|
|
273
|
+
getLoadedFile(file: GLTFFile): NonNullable<GLTFWithBuffers['files']>[number] | undefined;
|
|
274
|
+
/** Return the loaded asset companion for a raw external-asset definition. */
|
|
275
|
+
getLoadedExternalAsset(externalAsset: GLTFExternalAsset): GLTFWithBuffers | null | undefined;
|
|
276
|
+
/** Append loaded bytes and a raw buffer definition, returning the new buffer index. */
|
|
277
|
+
addBuffer(array: ArrayBufferView): number;
|
|
278
|
+
/** Append a raw bufferView definition and return its index. */
|
|
279
|
+
addBufferView(bufferIndex: number, byteLength: number, byteOffset?: number): number;
|
|
280
|
+
/** Append a raw accessor definition and return its index. */
|
|
281
|
+
addAccessor(bufferViewIndex: number, accessor: {
|
|
282
|
+
size: number;
|
|
283
|
+
componentType: number;
|
|
284
|
+
count: number;
|
|
285
|
+
min?: number[];
|
|
286
|
+
max?: number[];
|
|
287
|
+
}): number;
|
|
288
|
+
/** Return lazily resolved standard relationships for a raw glTF object. */
|
|
289
|
+
getReferences(object: GLTFAccessor): GLTFAccessorReferences;
|
|
290
|
+
getReferences(object: GLTFAnimation): GLTFAnimationReferences;
|
|
291
|
+
getReferences(object: GLTFAnimationChannel): GLTFAnimationChannelReferences;
|
|
292
|
+
getReferences(object: GLTFAnimationChannelTarget): GLTFAnimationChannelTargetReferences;
|
|
293
|
+
getReferences(object: GLTFAnimationSampler): GLTFAnimationSamplerReferences;
|
|
294
|
+
getReferences(object: GLTFBufferView): GLTFBufferViewReferences;
|
|
295
|
+
getReferences(object: GLTFExternalAsset): GLTFExternalAssetReferences;
|
|
296
|
+
getReferences(object: GLTFFile): GLTFBufferViewOwnerReferences;
|
|
297
|
+
getReferences(object: GLTFImage): GLTFBufferViewOwnerReferences;
|
|
298
|
+
getReferences(object: GLTFMaterial): GLTFMaterialReferences;
|
|
299
|
+
getReferences(object: GLTFTextureInfo): GLTFTextureInfoReferences;
|
|
300
|
+
getReferences(object: GLTFMesh): GLTFMeshReferences;
|
|
301
|
+
getReferences(object: GLTFMeshPrimitive): GLTFMeshPrimitiveReferences;
|
|
302
|
+
getReferences(object: GLTFNode): GLTFNodeReferences;
|
|
303
|
+
getReferences(object: GLTFScene): GLTFSceneReferences;
|
|
304
|
+
getReferences(object: GLTFSkin): GLTFSkinReferences;
|
|
305
|
+
getReferences(object: GLTFTexture): GLTFTextureReferences;
|
|
306
|
+
/** Return iterator-owned metadata for a raw glTF object. */
|
|
307
|
+
getMetadata(object: GLTFIteratorData): GLTFIteratorMetadata;
|
|
308
|
+
/** Resolve the default scene. */
|
|
309
|
+
get scene(): GLTFScene | undefined;
|
|
310
|
+
/** Resolve the optional draft glTF 2.1 thumbnail image. */
|
|
311
|
+
get thumbnail(): GLTFImage | undefined;
|
|
312
|
+
/** Iterate raw accessors in source order. */
|
|
313
|
+
get accessors(): IterableIterator<GLTFAccessor>;
|
|
314
|
+
/** Iterate raw animations in source order. */
|
|
315
|
+
get animations(): IterableIterator<GLTFAnimation>;
|
|
316
|
+
/** Iterate raw buffers in source order. */
|
|
317
|
+
get buffers(): IterableIterator<GLTFBuffer>;
|
|
318
|
+
/** Iterate raw buffer views in source order. */
|
|
319
|
+
get bufferViews(): IterableIterator<GLTFBufferView>;
|
|
320
|
+
/** Iterate raw cameras in source order. */
|
|
321
|
+
get cameras(): IterableIterator<GLTFCamera>;
|
|
322
|
+
/** Iterate raw draft glTF 2.1 external assets in source order. */
|
|
323
|
+
get externalAssets(): IterableIterator<GLTFExternalAsset>;
|
|
324
|
+
/** Iterate raw draft glTF 2.1 files in source order. */
|
|
325
|
+
get files(): IterableIterator<GLTFFile>;
|
|
326
|
+
/** Iterate raw images in source order. */
|
|
327
|
+
get images(): IterableIterator<GLTFImage>;
|
|
328
|
+
/** Iterate raw materials in source order. */
|
|
329
|
+
get materials(): IterableIterator<GLTFMaterial>;
|
|
330
|
+
/** Iterate raw mesh definitions in source order. */
|
|
331
|
+
get meshes(): IterableIterator<GLTFMesh>;
|
|
332
|
+
/** Iterate raw nodes in source order. */
|
|
333
|
+
get nodes(): IterableIterator<GLTFNode>;
|
|
334
|
+
/** Iterate raw texture samplers in source order. */
|
|
335
|
+
get samplers(): IterableIterator<GLTFSampler>;
|
|
336
|
+
/** Iterate raw scenes in source order. */
|
|
337
|
+
get scenes(): IterableIterator<GLTFScene>;
|
|
338
|
+
/** Iterate raw skins in source order. */
|
|
339
|
+
get skins(): IterableIterator<GLTFSkin>;
|
|
340
|
+
/** Iterate raw textures in source order. */
|
|
341
|
+
get textures(): IterableIterator<GLTFTexture>;
|
|
342
|
+
/** Return whether an extension is declared used or required. */
|
|
343
|
+
hasExtension(extensionName: string): boolean;
|
|
344
|
+
/** Return whether an extension is declared required. */
|
|
345
|
+
isExtensionRequired(extensionName: string): boolean;
|
|
346
|
+
/** Return an extension payload from the root or a wrapped raw object without modifying it. */
|
|
347
|
+
getExtension<ExtensionT = unknown>(extensionName: string): ExtensionT | undefined;
|
|
348
|
+
getExtension<ExtensionT = unknown>(object: GLTFIteratorData, extensionName: string): ExtensionT | undefined;
|
|
349
|
+
/** Set an extension payload on the root or a wrapped raw object and register it as used. */
|
|
350
|
+
setExtension<ExtensionT>(extensionName: string, extension: ExtensionT, required?: boolean): void;
|
|
351
|
+
setExtension<ExtensionT>(object: GLTFIteratorData, extensionName: string, extension: ExtensionT): void;
|
|
352
|
+
/** Register an extension in `extensionsUsed`. */
|
|
353
|
+
registerUsedExtension(extensionName: string): void;
|
|
354
|
+
/** Register an extension in both `extensionsUsed` and `extensionsRequired`. */
|
|
355
|
+
registerRequiredExtension(extensionName: string): void;
|
|
356
|
+
/** Remove extension data from the root or a wrapped raw object. */
|
|
357
|
+
removeExtension(extensionName: string): void;
|
|
358
|
+
removeExtension(object: GLTFIteratorData, extensionName: string): void;
|
|
359
|
+
/** Record that an extension payload was consumed by a transformation. */
|
|
360
|
+
recordRemovedExtension(extensionName: string): void;
|
|
361
|
+
/** Resolve an accessor reference. */
|
|
362
|
+
resolveAccessor(index: number, sourcePath: string): GLTFAccessorIterator;
|
|
363
|
+
/** Resolve a buffer reference. */
|
|
364
|
+
resolveBuffer(index: number, sourcePath: string): GLTFBufferIterator;
|
|
365
|
+
/** Resolve a buffer-view reference. */
|
|
366
|
+
resolveBufferView(index: number, sourcePath: string): GLTFBufferViewIterator;
|
|
367
|
+
/** Resolve a camera reference. */
|
|
368
|
+
resolveCamera(index: number, sourcePath: string): GLTFCameraIterator;
|
|
369
|
+
/** Resolve a draft external-asset reference. */
|
|
370
|
+
resolveExternalAsset(index: number, sourcePath: string): GLTFExternalAssetIterator;
|
|
371
|
+
/** Resolve a draft file reference. */
|
|
372
|
+
resolveFile(index: number, sourcePath: string): GLTFFileIterator;
|
|
373
|
+
/** Resolve an image reference. */
|
|
374
|
+
resolveImage(index: number, sourcePath: string): GLTFImageIterator;
|
|
375
|
+
/** Resolve a material reference. */
|
|
376
|
+
resolveMaterial(index: number, sourcePath: string): GLTFMaterialIterator;
|
|
377
|
+
/** Resolve a mesh reference. */
|
|
378
|
+
resolveMesh(index: number, sourcePath: string): GLTFMeshIterator;
|
|
379
|
+
/** Resolve a node reference. */
|
|
380
|
+
resolveNode(index: number, sourcePath: string): GLTFNodeIterator;
|
|
381
|
+
/** Resolve a sampler reference. */
|
|
382
|
+
resolveSampler(index: number, sourcePath: string): GLTFSamplerIterator;
|
|
383
|
+
/** Resolve a scene reference. */
|
|
384
|
+
resolveScene(index: number, sourcePath: string): GLTFSceneIterator;
|
|
385
|
+
/** Resolve a skin reference. */
|
|
386
|
+
resolveSkin(index: number, sourcePath: string): GLTFSkinIterator;
|
|
387
|
+
/** Resolve a texture reference. */
|
|
388
|
+
resolveTexture(index: number, sourcePath: string): GLTFTextureIterator;
|
|
389
|
+
/** Return a cached nested wrapper or create it once. */
|
|
390
|
+
getOrCreateNested<IteratorT extends GLTFObjectIterator<any, any>>(data: object, createIterator: () => IteratorT): IteratorT;
|
|
391
|
+
/** Iterate one top-level glTF collection lazily. */
|
|
392
|
+
private iterateCollection;
|
|
393
|
+
/** Iterate exact raw objects from one top-level glTF collection. */
|
|
394
|
+
private iterateCollectionData;
|
|
395
|
+
/** Return the registered internal context for a raw glTF object. */
|
|
396
|
+
private getObjectIterator;
|
|
397
|
+
/** Resolve and cache one top-level collection object. */
|
|
398
|
+
private resolveCollectionObject;
|
|
399
|
+
/** Return the raw array corresponding to a top-level wrapper type. */
|
|
400
|
+
private getCollection;
|
|
401
|
+
/** Create one correctly typed top-level wrapper. */
|
|
402
|
+
private createCollectionObject;
|
|
403
|
+
/** Reuse a wrapper for the same raw source object. */
|
|
404
|
+
private getOrCreate;
|
|
405
|
+
}
|
|
406
|
+
export {};
|
|
407
|
+
//# sourceMappingURL=gltf-iterator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gltf-iterator.d.ts","sourceRoot":"","sources":["../../../../src/gltf/lib/api/gltf-iterator.ts"],"names":[],"mappings":"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"}
|