@carbonenginejs/runtime-resource 0.13.0 → 0.15.0
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/LICENSE +21 -21
- package/NOTICE +32 -32
- package/README.md +129 -129
- package/dist/CjsMotherLode.js +1271 -1271
- package/dist/CjsResMan.js +3858 -3858
- package/dist/CjsResManFetchProvider.js +94 -94
- package/dist/CjsResManWorkQueue.js +301 -301
- package/dist/_virtual/_rollupPluginBabelHelpers.js +150 -150
- package/dist/format/CjsBlueReader.js +358 -358
- package/dist/format/CjsByteReader.js +310 -310
- package/dist/format/CjsByteWriter.js +242 -242
- package/dist/format/CjsFormat.js +223 -223
- package/dist/format/CjsFormatError.js +41 -41
- package/dist/format/CjsReader.js +22 -22
- package/dist/format/CjsResourceProbe.js +279 -279
- package/dist/format/CjsStringTable.js +268 -268
- package/dist/format/carbonEffect/CjsCarbonEffectReader.js +265 -265
- package/dist/format/carbonEffect/CjsCarbonEffectWriter.js +373 -373
- package/dist/format/carbonEffect/buildCarbonEffectContainer.js +182 -182
- package/dist/format/carbonEffect/carbonEffectBackendBlock.js +321 -321
- package/dist/format/carbonEffect/carbonEffectRecords.js +1147 -1147
- package/dist/format/carbonEffect/carbonEffectResourceTransform.js +197 -197
- package/dist/format/compareUtf8.js +36 -36
- package/dist/format/effect/effectBodyInventory.js +146 -146
- package/dist/format/effect/effectPermutationGraph.js +257 -257
- package/dist/format/effect/sha256.js +114 -114
- package/dist/format/index.js +11 -11
- package/dist/format/payloadContract.js +193 -193
- package/dist/formats/black/CjsBlackFormat.js +310 -310
- package/dist/formats/black/core/CjsBlackBinaryReader.js +260 -260
- package/dist/formats/black/core/CjsBlackPropertyReaders.js +448 -448
- package/dist/formats/black/core/CjsBlackReader.js +764 -764
- package/dist/formats/black/core/CjsBlackSchemaRegistry.js +540 -540
- package/dist/formats/black/core/black-schema-v1-2026-07-23.json.js +4 -4
- package/dist/formats/black/core/blackConstants.js +7 -7
- package/dist/formats/black/core/blackDefinitions.js +10 -10
- package/dist/formats/black/core/blackEnums.js +6 -6
- package/dist/formats/black/core/blackSchema.js +3 -3
- package/dist/formats/black/core/blackVersion.js +22 -22
- package/dist/formats/black/core/helpers.js +199 -199
- package/dist/formats/black/core/schema.js +4 -4
- package/dist/formats/black/index.js +2 -2
- package/dist/formats/bnk/CjsBnkFormat.js +175 -175
- package/dist/formats/bnk/core/busNodes.js +252 -252
- package/dist/formats/bnk/core/effectNodes.js +147 -147
- package/dist/formats/bnk/core/eventAction.js +416 -416
- package/dist/formats/bnk/core/globalSettings.js +215 -215
- package/dist/formats/bnk/core/graph.js +137 -137
- package/dist/formats/bnk/core/helpers.js +512 -512
- package/dist/formats/bnk/core/musicNodes.js +540 -540
- package/dist/formats/bnk/core/nodeBase.js +553 -553
- package/dist/formats/bnk/core/sfxNodes.js +632 -632
- package/dist/formats/bnk/core/soundbanksInfo.js +209 -209
- package/dist/formats/bnk/index.js +2 -2
- package/dist/formats/cmf/CjsCmfFormat.js +497 -497
- package/dist/formats/cmf/core/binary.js +194 -194
- package/dist/formats/cmf/core/buffers.js +237 -237
- package/dist/formats/cmf/core/constants.js +47 -47
- package/dist/formats/cmf/core/gr2Anim.js +453 -453
- package/dist/formats/cmf/core/helpers.js +318 -318
- package/dist/formats/cmf/core/pack.js +276 -276
- package/dist/formats/cmf/core/schema.js +374 -374
- package/dist/formats/cmf/core/shared.js +277 -277
- package/dist/formats/cmf/core/writer.js +571 -571
- package/dist/formats/cmf/index.js +2 -2
- package/dist/formats/dds/CjsDdsFormat.js +200 -200
- package/dist/formats/dds/core/bc6h.js +298 -298
- package/dist/formats/dds/core/bc7.js +272 -272
- package/dist/formats/dds/core/helpers.js +901 -862
- package/dist/formats/dds/core/helpers.js.map +1 -1
- package/dist/formats/dds/index.js +2 -2
- package/dist/formats/dxbc/CjsDxbcFormat.js +187 -142
- package/dist/formats/dxbc/CjsDxbcFormat.js.map +1 -1
- package/dist/formats/dxbc/core/DxbcReader.js +266 -266
- package/dist/formats/dxbc/core/container.js +169 -169
- package/dist/formats/dxbc/core/decoder.js +789 -789
- package/dist/formats/dxbc/core/disassemble.js +240 -0
- package/dist/formats/dxbc/core/disassemble.js.map +1 -0
- package/dist/formats/dxbc/core/errors.js +19 -19
- package/dist/formats/dxbc/core/helpers.js +220 -220
- package/dist/formats/dxbc/core/opcodes.js +45 -45
- package/dist/formats/dxbc/core/program.js +91 -91
- package/dist/formats/dxbc/core/signature.js +172 -172
- package/dist/formats/dxbc/index.js +2 -2
- package/dist/formats/fbx/CjsFbxFormat.js +266 -266
- package/dist/formats/fbx/core/helpers.js +3932 -3932
- package/dist/formats/fbx/index.js +2 -2
- package/dist/formats/flac/CjsFlacFormat.js +142 -142
- package/dist/formats/flac/core/helpers.js +315 -315
- package/dist/formats/flac/index.js +2 -2
- package/dist/formats/gif/CjsGifFormat.js +141 -141
- package/dist/formats/gif/core/helpers.js +380 -380
- package/dist/formats/gif/index.js +2 -2
- package/dist/formats/gltf/CjsGltfFormat.js +252 -290
- package/dist/formats/gltf/CjsGltfFormat.js.map +1 -1
- package/dist/formats/gltf/core/helpers.js +287 -307
- package/dist/formats/gltf/core/helpers.js.map +1 -1
- package/dist/formats/gltf/core/json.js +79 -79
- package/dist/formats/gltf/core/parser.js +679 -679
- package/dist/formats/gltf/core/targets.js +173 -173
- package/dist/formats/gltf/index.js +2 -2
- package/dist/formats/gr2/CjsGr2Format.js +289 -289
- package/dist/formats/gr2/core/bitknit2.js +282 -282
- package/dist/formats/gr2/core/curves.js +1047 -1047
- package/dist/formats/gr2/core/gsf.js +72 -72
- package/dist/formats/gr2/core/helpers.js +352 -352
- package/dist/formats/gr2/core/json.js +622 -622
- package/dist/formats/gr2/core/oodle1.js +388 -388
- package/dist/formats/gr2/core/tangents.js +48 -48
- package/dist/formats/gr2/core/targets.js +361 -361
- package/dist/formats/gr2/index.js +2 -2
- package/dist/formats/hlsl/CjsHlslFormat.js +233 -254
- package/dist/formats/hlsl/CjsHlslFormat.js.map +1 -1
- package/dist/formats/hlsl/core/HlslBinaryUtils.js +15 -15
- package/dist/formats/hlsl/core/HlslEffectReadError.js +19 -19
- package/dist/formats/hlsl/core/HlslEffectStateManager.js +130 -130
- package/dist/formats/hlsl/core/HlslRenderStateSetup.js +37 -37
- package/dist/formats/hlsl/core/HlslResourceSetDescription.js +94 -94
- package/dist/formats/hlsl/core/HlslShaderBytecode.js +44 -44
- package/dist/formats/hlsl/core/analysis.js +51 -51
- package/dist/formats/hlsl/core/carbonDescriptionToRuntime.js +850 -850
- package/dist/formats/hlsl/core/detailMapFamily.js +128 -128
- package/dist/formats/hlsl/core/helpers.js +270 -270
- package/dist/formats/hlsl/core/json.js +284 -284
- package/dist/formats/hlsl/core/localLightFamily.js +133 -133
- package/dist/formats/hlsl/core/metadata.js +327 -327
- package/dist/formats/hlsl/core/render-states.js +280 -280
- package/dist/formats/hlsl/core/tr2/HlslRenderContextEnum.js +43 -43
- package/dist/formats/hlsl/core/tr2/resources/HlslEffectRes.js +320 -320
- package/dist/formats/hlsl/core/tr2/resources/HlslShaderPermutation.js +33 -33
- package/dist/formats/hlsl/core/tr2/shader/HlslEffectBindingManifest.js +423 -416
- package/dist/formats/hlsl/core/tr2/shader/HlslEffectBindingManifest.js.map +1 -1
- package/dist/formats/hlsl/core/tr2/shader/HlslEffectConstant.js +40 -40
- package/dist/formats/hlsl/core/tr2/shader/HlslEffectDescription.js +62 -62
- package/dist/formats/hlsl/core/tr2/shader/HlslEffectLibrary.js +52 -52
- package/dist/formats/hlsl/core/tr2/shader/HlslEffectParameterAnnotation.js +38 -38
- package/dist/formats/hlsl/core/tr2/shader/HlslEffectResource.js +50 -50
- package/dist/formats/hlsl/core/tr2/shader/HlslEffectStageInput.js +86 -86
- package/dist/formats/hlsl/core/tr2/shader/HlslEffectTechnique.js +31 -31
- package/dist/formats/hlsl/core/tr2/shader/HlslPass.js +42 -42
- package/dist/formats/hlsl/core/tr2/shader/HlslSamplerDescription.js +55 -55
- package/dist/formats/hlsl/core/tr2/shader/HlslSamplerSetup.js +29 -29
- package/dist/formats/hlsl/core/tr2/shader/HlslShader.js +220 -220
- package/dist/formats/hlsl/core/tr2/shader/HlslShaderOption.js +30 -30
- package/dist/formats/hlsl/index.js +3 -3
- package/dist/formats/index.js +33 -33
- package/dist/formats/jpeg/CjsJpegFormat.js +212 -212
- package/dist/formats/jpeg/core/helpers.js +402 -402
- package/dist/formats/jpeg/core/jpeg.js +480 -480
- package/dist/formats/jpeg/index.js +2 -2
- package/dist/formats/mp3/CjsMp3Format.js +197 -197
- package/dist/formats/mp3/core/helpers.js +375 -375
- package/dist/formats/mp3/index.js +2 -2
- package/dist/formats/mp4/CjsMp4Format.js +197 -197
- package/dist/formats/mp4/core/helpers.js +484 -484
- package/dist/formats/mp4/index.js +2 -2
- package/dist/formats/obj/CjsObjFormat.js +232 -253
- package/dist/formats/obj/CjsObjFormat.js.map +1 -1
- package/dist/formats/obj/core/helpers.js +553 -573
- package/dist/formats/obj/core/helpers.js.map +1 -1
- package/dist/formats/obj/core/json.js +64 -64
- package/dist/formats/obj/core/parser.js +321 -321
- package/dist/formats/obj/index.js +2 -2
- package/dist/formats/ogg/CjsOggFormat.js +143 -143
- package/dist/formats/ogg/core/helpers.js +410 -410
- package/dist/formats/ogg/core/imdct.js +178 -178
- package/dist/formats/ogg/core/vorbis.js +1017 -1017
- package/dist/formats/ogg/index.js +2 -2
- package/dist/formats/pickle/CjsPickleFormat.js +214 -214
- package/dist/formats/pickle/core/CjsPickleProtocol0Reader.js +551 -551
- package/dist/formats/pickle/index.js +2 -2
- package/dist/formats/png/CjsPngFormat.js +201 -201
- package/dist/formats/png/core/helpers.js +635 -635
- package/dist/formats/png/index.js +2 -2
- package/dist/formats/red/CjsRedFormat.js +263 -263
- package/dist/formats/red/core/CjsRedReader.js +246 -246
- package/dist/formats/red/core/blackDefinitions.js +3 -3
- package/dist/formats/red/core/helpers.js +158 -158
- package/dist/formats/red/core/redGraph.js +71 -71
- package/dist/formats/red/core/schema.js +4 -4
- package/dist/formats/red/index.js +2 -2
- package/dist/formats/stl/CjsStlFormat.js +320 -365
- package/dist/formats/stl/CjsStlFormat.js.map +1 -1
- package/dist/formats/stl/core/helpers.js +241 -261
- package/dist/formats/stl/core/helpers.js.map +1 -1
- package/dist/formats/stl/core/json.js +51 -51
- package/dist/formats/stl/core/stl.js +642 -642
- package/dist/formats/stl/core/targets.js +173 -173
- package/dist/formats/stl/index.js +2 -2
- package/dist/formats/tga/CjsTgaFormat.js +197 -197
- package/dist/formats/tga/core/helpers.js +493 -493
- package/dist/formats/tga/index.js +2 -2
- package/dist/formats/wav/CjsWavFormat.js +198 -198
- package/dist/formats/wav/core/helpers.js +365 -365
- package/dist/formats/wav/index.js +2 -2
- package/dist/formats/webgl/CjsWebglFormat.js +199 -199
- package/dist/formats/webgl/core/buildGlslEffectContainer.js +70 -70
- package/dist/formats/webgl/core/effectPackage.js +900 -900
- package/dist/formats/webgl/core/errors.js +27 -27
- package/dist/formats/webgl/core/glsl/DxbcGlslEmitter.js +2820 -2820
- package/dist/formats/webgl/core/glsl/DxbcGlslHelpers.js +89 -89
- package/dist/formats/webgl/core/glsl/DxbcGlslOperandFormatter.js +486 -486
- package/dist/formats/webgl/core/glsl/packedLightFixups.js +98 -98
- package/dist/formats/webgl/core/glslBackendBlock.js +552 -552
- package/dist/formats/webgl/core/glslBackendBodySet.js +243 -243
- package/dist/formats/webgl/core/glslEffectCompleteness.js +85 -85
- package/dist/formats/webgl/core/glslEffectCompleteness.js.map +1 -1
- package/dist/formats/webgl/core/helpers.js +167 -167
- package/dist/formats/webgl/core/inspectGlslEffectContainer.js +122 -122
- package/dist/formats/webgl/core/readGlslEffectContainer.js +202 -256
- package/dist/formats/webgl/core/readGlslEffectContainer.js.map +1 -1
- package/dist/formats/webgl/index.js +2 -2
- package/dist/formats/webgpu/CjsWebgpuFormat.js +357 -357
- package/dist/formats/webgpu/core/buildCarbonEffectContainer.js +89 -89
- package/dist/formats/webgpu/core/carbonWebgpu/CarbonWebgpuContainer.js +354 -354
- package/dist/formats/webgpu/core/carbonWebgpu/containerViews.js +355 -355
- package/dist/formats/webgpu/core/carbonWebgpu/validateContainer.js +90 -90
- package/dist/formats/webgpu/core/effectAnalysis.js +82 -82
- package/dist/formats/webgpu/core/effectBackendBodySet.js +306 -306
- package/dist/formats/webgpu/core/errors.js +20 -20
- package/dist/formats/webgpu/core/helpers.js +443 -443
- package/dist/formats/webgpu/core/ir/analyzeRegisterValues.js +212 -212
- package/dist/formats/webgpu/core/ir/buildControlFlow.js +220 -220
- package/dist/formats/webgpu/core/ir/indexableTemps.js +137 -137
- package/dist/formats/webgpu/core/ir/inferValueTypes.js +449 -449
- package/dist/formats/webgpu/core/ir/lowerDxbcToIr.js +494 -494
- package/dist/formats/webgpu/core/ir/resolveRegisterFlow.js +177 -177
- package/dist/formats/webgpu/core/ir/sourceLanes.js +61 -61
- package/dist/formats/webgpu/core/packageEffect.js +381 -381
- package/dist/formats/webgpu/core/packageEffectSelection.js +164 -164
- package/dist/formats/webgpu/core/packageMetadata.js +17 -17
- package/dist/formats/webgpu/core/schema.js +4 -4
- package/dist/formats/webgpu/core/wgsl/buildResourceTransformPlan.js +263 -263
- package/dist/formats/webgpu/core/wgsl/buildWgslBindingPlan.js +172 -172
- package/dist/formats/webgpu/core/wgsl/buildWgslSet.js +325 -325
- package/dist/formats/webgpu/core/wgsl/emitWgsl.js +356 -356
- package/dist/formats/webgpu/core/wgsl/hoistEscapingValues.js +77 -77
- package/dist/formats/webgpu/core/wgsl/lowerBindingLayout.js +451 -451
- package/dist/formats/webgpu/core/wgsl/lowerComputeProgram.js +735 -735
- package/dist/formats/webgpu/core/wgsl/lowerCreateHistogramsComputeProgram.js +457 -457
- package/dist/formats/webgpu/core/wgsl/lowerFragmentProgram.js +1572 -1572
- package/dist/formats/webgpu/core/wgsl/lowerMergeHistogramsComputeProgram.js +659 -659
- package/dist/formats/webgpu/core/wgsl/lowerParticleClearComputePrograms.js +734 -734
- package/dist/formats/webgpu/core/wgsl/lowerParticleEmitComputeProgram.js +583 -583
- package/dist/formats/webgpu/core/wgsl/lowerSkinVerticesComputeProgram.js +621 -621
- package/dist/formats/webgpu/core/wgsl/lowerSortComputeProgram.js +824 -824
- package/dist/formats/webgpu/core/wgsl/lowerSortInnerComputeProgram.js +697 -697
- package/dist/formats/webgpu/core/wgsl/lowerSortStepComputeProgram.js +559 -559
- package/dist/formats/webgpu/core/wgsl/lowerVertexProgram.js +1328 -1328
- package/dist/formats/webgpu/core/wgsl/particleEmitSemanticDigest.js +110 -110
- package/dist/formats/webgpu/core/wgsl/precisionControls.js +55 -55
- package/dist/formats/webgpu/core/wgsl/selectionPlans.js +717 -717
- package/dist/formats/webgpu/core/wgsl/uniformity.js +78 -78
- package/dist/formats/webgpu/core/wgsl/validateExactComputeIr.js +196 -196
- package/dist/formats/webgpu/core/wgsl/validateHandleOperand.js +37 -37
- package/dist/formats/webgpu/index.js +2 -2
- package/dist/formats/webm/CjsWebmFormat.js +197 -197
- package/dist/formats/webm/core/helpers.js +572 -572
- package/dist/formats/webm/index.js +2 -2
- package/dist/formats/webp/CjsWebpFormat.js +140 -140
- package/dist/formats/webp/core/helpers.js +237 -237
- package/dist/formats/webp/index.js +2 -2
- package/dist/formats/wem/CjsWemFormat.js +250 -250
- package/dist/formats/wem/core/bitStream.js +261 -261
- package/dist/formats/wem/core/codebookLibrary.js +164 -164
- package/dist/formats/wem/core/helpers.js +437 -437
- package/dist/formats/wem/core/packedCodebooksAotuv603.js +30 -30
- package/dist/formats/wem/core/ptadpcm.js +77 -77
- package/dist/formats/wem/core/resolve.js +121 -121
- package/dist/formats/wem/core/wemToOgg.js +485 -485
- package/dist/formats/wem/index.js +2 -2
- package/dist/formats/yaml/CjsYamlFormat.js +134 -134
- package/dist/formats/yaml/core/CjsYamlReader.js +400 -400
- package/dist/formats/yaml/core/helpers.js +196 -196
- package/dist/formats/yaml/index.js +2 -2
- package/dist/index.js +64 -64
- package/dist/resource/CjsLoadingObject.js +19 -19
- package/dist/resource/CjsResource.js +801 -801
- package/dist/resource/ResourceHandlerMode.js +14 -14
- package/dist/resource/Tr2LightProfileRes.js +32 -32
- package/dist/resource/audio/AudioGeometryResData.js +47 -47
- package/dist/resource/audio/CjsAudioBufferRes.js +86 -86
- package/dist/resource/audio/CjsAudioRes.js +213 -213
- package/dist/resource/audio/index.js +4 -4
- package/dist/resource/geometry/MeshDecalData.js +37 -37
- package/dist/resource/geometry/MeshDecalLodData.js +34 -34
- package/dist/resource/geometry/TriGeometryRes.js +570 -467
- package/dist/resource/geometry/TriGeometryRes.js.map +1 -1
- package/dist/resource/geometry/TriGeometryResAreaData.js +59 -59
- package/dist/resource/geometry/TriGeometryResJointData.js +38 -38
- package/dist/resource/geometry/TriGeometryResLodData.js +88 -88
- package/dist/resource/geometry/TriGeometryResMeshData.js +63 -63
- package/dist/resource/geometry/TriGeometryResSkeletonData.js +34 -34
- package/dist/resource/geometry/TriJointBinding.js +38 -38
- package/dist/resource/geometry/TriMorphTargetGeometryConstants.js +46 -46
- package/dist/resource/geometry/TriRtGeometryConstants.js +88 -88
- package/dist/resource/geometry/granny/GStateBindingCallbackData.js +31 -31
- package/dist/resource/geometry/granny/Tr2GrannyIntersectionResult.js +60 -60
- package/dist/resource/geometry/granny/Tr2GrannyStateRes.js +36 -36
- package/dist/resource/geometry/granny/TriGrannyRes.js +35 -35
- package/dist/resource/geometry/granny/enums.js +10 -10
- package/dist/resource/geometry/granny/index.js +6 -6
- package/dist/resource/geometry/index.js +17 -17
- package/dist/resource/index.js +54 -54
- package/dist/resource/resourceBoundary.js +64 -64
- package/dist/resource/shader/Tr2EffectRes.js +336 -336
- package/dist/resource/shader/Tr2MaterialArea.js +31 -31
- package/dist/resource/shader/Tr2MaterialMesh.js +27 -27
- package/dist/resource/shader/Tr2MaterialRes.js +31 -31
- package/dist/resource/shader/Tr2Shader.js +283 -283
- package/dist/resource/shader/Tr2ShaderPermutation.js +43 -43
- package/dist/resource/shader/index.js +17 -17
- package/dist/resource/shader/reflection/Tr2EffectConstant.js +143 -143
- package/dist/resource/shader/reflection/Tr2EffectDefine.js +30 -30
- package/dist/resource/shader/reflection/Tr2EffectDescription.js +114 -114
- package/dist/resource/shader/reflection/Tr2EffectLibrary.js +168 -168
- package/dist/resource/shader/reflection/Tr2EffectParameterAnnotation.js +125 -125
- package/dist/resource/shader/reflection/Tr2EffectResource.js +120 -120
- package/dist/resource/shader/reflection/Tr2EffectStageInput.js +372 -372
- package/dist/resource/shader/reflection/Tr2EffectTechnique.js +78 -78
- package/dist/resource/shader/reflection/Tr2Pass.js +168 -168
- package/dist/resource/shader/reflection/carbonRecordFields.js +159 -159
- package/dist/resource/shader/reflection/shaderStage.js +22 -22
- package/dist/resource/shader/sampler/Tr2SamplerSetup.js +135 -135
- package/dist/resource/texture/CjsTextureArrayRes.js +472 -472
- package/dist/resource/texture/CjsTextureArrayResParameterProxy.js +179 -179
- package/dist/resource/texture/Tr2ImageRes.js +120 -120
- package/dist/resource/texture/Tr2TextureLodManager.js +82 -82
- package/dist/resource/texture/Tr2TextureLodUpdateRequest.js +37 -37
- package/dist/resource/texture/Tr2TexturePackChannel.js +37 -37
- package/dist/resource/texture/Tr2TexturePipeline.js +54 -54
- package/dist/resource/texture/Tr2TexturePipelineParams.js +34 -34
- package/dist/resource/texture/Tr2TexturePipelineStepCompress.js +40 -40
- package/dist/resource/texture/Tr2TexturePipelineStepGenerateMips.js +22 -22
- package/dist/resource/texture/Tr2TexturePipelineStepLimitSize.js +34 -34
- package/dist/resource/texture/Tr2TexturePipelineStepLoad.js +31 -31
- package/dist/resource/texture/Tr2TexturePipelineStepPack.js +43 -43
- package/dist/resource/texture/TriTextureRes.js +359 -359
- package/dist/resource/texture/index.js +15 -15
- package/dist/resource/texture/texturePipelineBehavior.js +308 -308
- package/dist/worker/CjsResManMainThreadLoader.js +89 -89
- package/dist/worker/CjsResManWorker.js +218 -218
- package/dist/worker/CjsResManWorkerLoader.js +437 -437
- package/dist/worker/protocol.js +12 -12
- package/docs/README.md +98 -98
- package/docs/architecture.md +118 -118
- package/docs/concepts/resource-lifecycle.md +226 -226
- package/docs/concepts/shader-resource-model.md +111 -111
- package/docs/concepts/writing-an-engine-adapter.md +115 -115
- package/docs/formats/README.md +138 -138
- package/docs/formats/carbon-effect-container.md +553 -553
- package/docs/formats/dxbc/README.md +68 -68
- package/docs/formats/dxbc/architecture.md +80 -80
- package/docs/formats/dxbc/reference/api.md +105 -77
- package/docs/formats/dxbc/reference/classes/README.md +9 -9
- package/docs/formats/dxbc/reference/decoded-output.md +122 -122
- package/docs/formats/gr2.md +160 -160
- package/docs/formats/hlsl/README.md +54 -54
- package/docs/formats/hlsl/architecture.md +66 -65
- package/docs/formats/hlsl/guides/hydrating-json-output.md +60 -60
- package/docs/formats/hlsl/guides/reading-effects.md +68 -64
- package/docs/formats/hlsl/reference/advanced-analysis.md +61 -61
- package/docs/formats/hlsl/reference/api.md +91 -92
- package/docs/formats/hlsl/reference/classes/README.md +11 -11
- package/docs/formats/hlsl/reference/json-graph.md +97 -97
- package/docs/formats/pickle.md +82 -82
- package/docs/formats/provenance.md +196 -196
- package/docs/formats/stl.md +37 -37
- package/docs/formats/webgl/README.md +115 -115
- package/docs/formats/webgl/architecture.md +69 -69
- package/docs/formats/webgl/carbon-constant-layouts.md +326 -326
- package/docs/formats/webgl/decl-io.md +1234 -1234
- package/docs/formats/webgl/memory-structured.md +890 -890
- package/docs/formats/webgl/reference/classes/README.md +9 -9
- package/docs/formats/webgl/texture-sample.md +964 -964
- package/docs/formats/webgpu/README.md +84 -84
- package/docs/formats/webgpu/architecture.md +95 -95
- package/docs/formats/webgpu/formats/carbon-webgpu.md +215 -215
- package/docs/formats/webgpu/guides/effect-packaging.md +189 -189
- package/docs/formats/webgpu/reference/api.md +196 -196
- package/docs/formats/webgpu/reference/classes/README.md +9 -9
- package/docs/formats/webgpu/reference/wgsl-compatibility.md +1546 -1546
- package/docs/formats/wwise.md +146 -146
- package/docs/reference/classes/README.md +35 -35
- package/docs/reference/classes/audio.md +30 -30
- package/docs/reference/classes/core.md +216 -216
- package/docs/reference/classes/dropped.md +46 -46
- package/docs/reference/classes/formats.md +944 -944
- package/docs/reference/classes/resources.md +456 -456
- package/docs/reference/classes/texture.md +26 -26
- package/docs/reference/events.md +117 -117
- package/docs/reference/motherlode-cache.md +275 -275
- package/docs/reference/queues.md +194 -194
- package/docs/reference/reload.md +107 -107
- package/docs/reference/texture-arrays.md +113 -113
- package/docs/reference/texture-pipeline.md +53 -53
- package/docs/reference/workers.md +142 -142
- package/docs/roadmap.md +150 -150
- package/format-notices/black/LICENSE +21 -21
- package/format-notices/black/NOTICE +47 -47
- package/format-notices/bnk/LICENSE +21 -21
- package/format-notices/bnk/NOTICE +21 -21
- package/format-notices/cmf/LICENSE +21 -21
- package/format-notices/cmf/NOTICE +36 -36
- package/format-notices/dds/LICENSE +21 -21
- package/format-notices/dds/NOTICE +14 -14
- package/format-notices/dxbc/LICENSE +21 -21
- package/format-notices/dxbc/NOTICE +20 -20
- package/format-notices/fbx/LICENSE +21 -21
- package/format-notices/fbx/NOTICE +14 -14
- package/format-notices/flac/LICENSE +21 -21
- package/format-notices/flac/NOTICE +14 -14
- package/format-notices/gif/LICENSE +21 -21
- package/format-notices/gif/NOTICE +14 -14
- package/format-notices/gltf/LICENSE +21 -21
- package/format-notices/gltf/NOTICE +27 -27
- package/format-notices/gr2/LICENSE +21 -21
- package/format-notices/gr2/NOTICE +60 -60
- package/format-notices/gr2/THIRD-PARTY-NOTICES.md +93 -93
- package/format-notices/hlsl/LICENSE +21 -21
- package/format-notices/hlsl/NOTICE +25 -25
- package/format-notices/jpeg/LICENSE +21 -21
- package/format-notices/jpeg/NOTICE +14 -14
- package/format-notices/mp3/LICENSE +21 -21
- package/format-notices/mp3/NOTICE +14 -14
- package/format-notices/mp4/LICENSE +21 -21
- package/format-notices/mp4/NOTICE +14 -14
- package/format-notices/obj/LICENSE +21 -21
- package/format-notices/obj/NOTICE +26 -26
- package/format-notices/ogg/LICENSE +21 -21
- package/format-notices/ogg/NOTICE +28 -28
- package/format-notices/png/LICENSE +21 -21
- package/format-notices/png/NOTICE +14 -14
- package/format-notices/red/LICENSE +21 -21
- package/format-notices/red/NOTICE +31 -31
- package/format-notices/stl/LICENSE +21 -21
- package/format-notices/stl/NOTICE +21 -21
- package/format-notices/tga/LICENSE +21 -21
- package/format-notices/tga/NOTICE +14 -14
- package/format-notices/wav/LICENSE +21 -21
- package/format-notices/wav/NOTICE +14 -14
- package/format-notices/webgl/LICENSE +21 -21
- package/format-notices/webgl/NOTICE +35 -35
- package/format-notices/webgpu/LICENSE +21 -21
- package/format-notices/webgpu/NOTICE +31 -31
- package/format-notices/webm/LICENSE +21 -21
- package/format-notices/webm/NOTICE +14 -14
- package/format-notices/webp/LICENSE +21 -21
- package/format-notices/webp/NOTICE +14 -14
- package/format-notices/wem/LICENSE +57 -57
- package/format-notices/wem/NOTICE +33 -33
- package/format-notices/yaml/LICENSE +21 -21
- package/format-notices/yaml/NOTICE +44 -44
- package/package.json +63 -63
|
@@ -1,196 +1,196 @@
|
|
|
1
|
-
const OUTPUT_JSON = "json";
|
|
2
|
-
const OUTPUT_PAYLOAD = "payload";
|
|
3
|
-
const OUTPUT_RAW = "raw";
|
|
4
|
-
const OUTPUT_DOCUMENT = "document";
|
|
5
|
-
const TAG_PRESERVE = "preserve";
|
|
6
|
-
const TAG_REJECT = "reject";
|
|
7
|
-
const TAG_HANDLE = "handle";
|
|
8
|
-
const DEFAULT_VALUES = Object.freeze({
|
|
9
|
-
emit: OUTPUT_PAYLOAD,
|
|
10
|
-
tagPolicy: TAG_PRESERVE,
|
|
11
|
-
allowedTags: null,
|
|
12
|
-
tagHandlers: Object.freeze({}),
|
|
13
|
-
sourceName: null,
|
|
14
|
-
maxAliasCount: 100,
|
|
15
|
-
uniqueKeys: true,
|
|
16
|
-
idField: "$yamlId",
|
|
17
|
-
refField: "$yamlRef",
|
|
18
|
-
valuesField: "$yamlValues",
|
|
19
|
-
tagField: "$yamlTag",
|
|
20
|
-
valueField: "$yamlValue"
|
|
21
|
-
});
|
|
22
|
-
const OPTION_KEYS = new Set(Object.keys(DEFAULT_VALUES));
|
|
23
|
-
|
|
24
|
-
/** Returns true when a value can be decoded as YAML source text. */
|
|
25
|
-
function isYamlSourceInput(value) {
|
|
26
|
-
return typeof value === "string" || value instanceof ArrayBuffer || ArrayBuffer.isView(value);
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* Converts string or byte input into strict UTF-8 YAML source text while
|
|
31
|
-
* respecting typed-array/DataView bounds.
|
|
32
|
-
*/
|
|
33
|
-
function toYamlSourceText(value, readerName = "CjsYamlFormat") {
|
|
34
|
-
if (typeof value === "string") return value;
|
|
35
|
-
if (!isYamlSourceInput(value)) {
|
|
36
|
-
throw new TypeError(`${readerName} input must be a YAML string or byte buffer`);
|
|
37
|
-
}
|
|
38
|
-
const bytes = value instanceof ArrayBuffer ? new Uint8Array(value) : new Uint8Array(value.buffer, value.byteOffset, value.byteLength);
|
|
39
|
-
try {
|
|
40
|
-
return new TextDecoder("utf-8", {
|
|
41
|
-
fatal: true
|
|
42
|
-
}).decode(bytes);
|
|
43
|
-
} catch (error) {
|
|
44
|
-
throw new TypeError(`${readerName} input must contain valid UTF-8 YAML`, {
|
|
45
|
-
cause: error
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
function hasOwn(value, key) {
|
|
50
|
-
return Object.prototype.hasOwnProperty.call(value, key);
|
|
51
|
-
}
|
|
52
|
-
function defineMappingValue(target, key, value) {
|
|
53
|
-
Object.defineProperty(target, key, {
|
|
54
|
-
value,
|
|
55
|
-
enumerable: true,
|
|
56
|
-
configurable: true,
|
|
57
|
-
writable: true
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
function normalizeEmit(value, readerName) {
|
|
61
|
-
if (value === OUTPUT_JSON || value === OUTPUT_PAYLOAD) return value;
|
|
62
|
-
if (value === OUTPUT_RAW || value === OUTPUT_DOCUMENT) return value;
|
|
63
|
-
throw new TypeError(`${readerName} unknown emit value "${value}"`);
|
|
64
|
-
}
|
|
65
|
-
function normalizeTagPolicy(value, readerName) {
|
|
66
|
-
if (value === TAG_PRESERVE || value === TAG_REJECT || value === TAG_HANDLE) return value;
|
|
67
|
-
throw new TypeError(`${readerName} unknown tagPolicy value "${value}"`);
|
|
68
|
-
}
|
|
69
|
-
function normalizeAllowedTags(value, readerName) {
|
|
70
|
-
if (value === null || value === undefined) return null;
|
|
71
|
-
if (!Array.isArray(value) && !(value instanceof Set)) {
|
|
72
|
-
throw new TypeError(`${readerName} allowedTags must be an array, Set, or null`);
|
|
73
|
-
}
|
|
74
|
-
return [...value];
|
|
75
|
-
}
|
|
76
|
-
function normalizeTagHandlers(value, readerName) {
|
|
77
|
-
if (value instanceof Map) {
|
|
78
|
-
for (const [tag, handler] of value) {
|
|
79
|
-
if (typeof handler !== "function") {
|
|
80
|
-
throw new TypeError(`${readerName} tag handler "${tag}" must be a function`);
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
return new Map(value);
|
|
84
|
-
}
|
|
85
|
-
if (!value || typeof value !== "object" || Array.isArray(value)) {
|
|
86
|
-
throw new TypeError(`${readerName} tagHandlers must be an object or Map`);
|
|
87
|
-
}
|
|
88
|
-
for (const [tag, handler] of Object.entries(value)) {
|
|
89
|
-
if (typeof handler !== "function") {
|
|
90
|
-
throw new TypeError(`${readerName} tag handler "${tag}" must be a function`);
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
return {
|
|
94
|
-
...value
|
|
95
|
-
};
|
|
96
|
-
}
|
|
97
|
-
function normalizeField(value, name, readerName) {
|
|
98
|
-
if (typeof value !== "string" || !value) {
|
|
99
|
-
throw new TypeError(`${readerName} ${name} must be a non-empty string`);
|
|
100
|
-
}
|
|
101
|
-
return value;
|
|
102
|
-
}
|
|
103
|
-
function normalizeBoolean(value, name, readerName) {
|
|
104
|
-
if (typeof value !== "boolean") throw new TypeError(`${readerName} ${name} must be a boolean`);
|
|
105
|
-
return value;
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
/**
|
|
109
|
-
* Normalizes reader options against their supported defaults for the YAML
|
|
110
|
-
* document reader.
|
|
111
|
-
*/
|
|
112
|
-
function normalizeValues(base, options = {}, readerName = "CjsYamlFormat") {
|
|
113
|
-
if (!options || typeof options !== "object" || Array.isArray(options)) {
|
|
114
|
-
throw new TypeError(`${readerName} options must be an object`);
|
|
115
|
-
}
|
|
116
|
-
for (const key of Object.keys(options)) {
|
|
117
|
-
if (!OPTION_KEYS.has(key)) throw new TypeError(`${readerName} unknown option "${key}"`);
|
|
118
|
-
}
|
|
119
|
-
const values = {
|
|
120
|
-
...base,
|
|
121
|
-
allowedTags: base.allowedTags ? [...base.allowedTags] : null,
|
|
122
|
-
tagHandlers: base.tagHandlers instanceof Map ? new Map(base.tagHandlers) : {
|
|
123
|
-
...base.tagHandlers
|
|
124
|
-
}
|
|
125
|
-
};
|
|
126
|
-
if (hasOwn(options, "emit")) values.emit = normalizeEmit(options.emit, readerName);
|
|
127
|
-
if (hasOwn(options, "tagPolicy")) values.tagPolicy = normalizeTagPolicy(options.tagPolicy, readerName);
|
|
128
|
-
if (hasOwn(options, "allowedTags")) values.allowedTags = normalizeAllowedTags(options.allowedTags, readerName);
|
|
129
|
-
if (hasOwn(options, "tagHandlers")) values.tagHandlers = normalizeTagHandlers(options.tagHandlers, readerName);
|
|
130
|
-
if (hasOwn(options, "sourceName")) values.sourceName = options.sourceName == null ? null : String(options.sourceName);
|
|
131
|
-
if (hasOwn(options, "maxAliasCount")) {
|
|
132
|
-
if (!Number.isInteger(options.maxAliasCount) || options.maxAliasCount < 0) {
|
|
133
|
-
throw new TypeError(`${readerName} maxAliasCount must be a non-negative integer`);
|
|
134
|
-
}
|
|
135
|
-
values.maxAliasCount = options.maxAliasCount;
|
|
136
|
-
}
|
|
137
|
-
if (hasOwn(options, "uniqueKeys")) {
|
|
138
|
-
values.uniqueKeys = normalizeBoolean(options.uniqueKeys, "uniqueKeys", readerName);
|
|
139
|
-
}
|
|
140
|
-
for (const name of ["idField", "refField", "valuesField", "tagField", "valueField"]) {
|
|
141
|
-
if (hasOwn(options, name)) values[name] = normalizeField(options[name], name, readerName);
|
|
142
|
-
}
|
|
143
|
-
return values;
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
/**
|
|
147
|
-
* Converts a YAML node graph into JSON-safe values while preserving references
|
|
148
|
-
* for the YAML document reader.
|
|
149
|
-
*/
|
|
150
|
-
function toJsonGraph(value, options) {
|
|
151
|
-
const counts = new WeakMap();
|
|
152
|
-
const traversed = new WeakSet();
|
|
153
|
-
const count = node => {
|
|
154
|
-
if (!node || typeof node !== "object") return;
|
|
155
|
-
counts.set(node, (counts.get(node) || 0) + 1);
|
|
156
|
-
if (traversed.has(node)) return;
|
|
157
|
-
traversed.add(node);
|
|
158
|
-
if (Array.isArray(node)) node.forEach(count);else Object.keys(node).forEach(key => count(node[key]));
|
|
159
|
-
};
|
|
160
|
-
count(value);
|
|
161
|
-
const ids = new WeakMap();
|
|
162
|
-
let nextId = 1;
|
|
163
|
-
const encode = node => {
|
|
164
|
-
if (node === null || typeof node !== "object") return node;
|
|
165
|
-
if (ArrayBuffer.isView(node)) return Array.from(node, encode);
|
|
166
|
-
if (node instanceof Date) return node.toISOString();
|
|
167
|
-
const repeated = (counts.get(node) || 0) > 1;
|
|
168
|
-
if (ids.has(node)) return {
|
|
169
|
-
[options.refField]: ids.get(node)
|
|
170
|
-
};
|
|
171
|
-
let id = null;
|
|
172
|
-
if (repeated) {
|
|
173
|
-
id = nextId++;
|
|
174
|
-
ids.set(node, id);
|
|
175
|
-
}
|
|
176
|
-
if (Array.isArray(node)) {
|
|
177
|
-
const values = node.map(encode);
|
|
178
|
-
return repeated ? {
|
|
179
|
-
[options.idField]: id,
|
|
180
|
-
[options.valuesField]: values
|
|
181
|
-
} : values;
|
|
182
|
-
}
|
|
183
|
-
if (repeated && Object.prototype.hasOwnProperty.call(node, options.idField)) {
|
|
184
|
-
throw new TypeError(`CjsYamlFormat cannot encode repeated mapping: reserved field "${options.idField}" already exists`);
|
|
185
|
-
}
|
|
186
|
-
const out = repeated ? {
|
|
187
|
-
[options.idField]: id
|
|
188
|
-
} : {};
|
|
189
|
-
for (const key of Object.keys(node)) defineMappingValue(out, key, encode(node[key]));
|
|
190
|
-
return out;
|
|
191
|
-
};
|
|
192
|
-
return encode(value);
|
|
193
|
-
}
|
|
194
|
-
|
|
195
|
-
export { DEFAULT_VALUES, OUTPUT_DOCUMENT, OUTPUT_JSON, OUTPUT_PAYLOAD, OUTPUT_RAW, TAG_HANDLE, TAG_PRESERVE, TAG_REJECT, isYamlSourceInput, normalizeValues, toJsonGraph, toYamlSourceText };
|
|
196
|
-
//# sourceMappingURL=helpers.js.map
|
|
1
|
+
const OUTPUT_JSON = "json";
|
|
2
|
+
const OUTPUT_PAYLOAD = "payload";
|
|
3
|
+
const OUTPUT_RAW = "raw";
|
|
4
|
+
const OUTPUT_DOCUMENT = "document";
|
|
5
|
+
const TAG_PRESERVE = "preserve";
|
|
6
|
+
const TAG_REJECT = "reject";
|
|
7
|
+
const TAG_HANDLE = "handle";
|
|
8
|
+
const DEFAULT_VALUES = Object.freeze({
|
|
9
|
+
emit: OUTPUT_PAYLOAD,
|
|
10
|
+
tagPolicy: TAG_PRESERVE,
|
|
11
|
+
allowedTags: null,
|
|
12
|
+
tagHandlers: Object.freeze({}),
|
|
13
|
+
sourceName: null,
|
|
14
|
+
maxAliasCount: 100,
|
|
15
|
+
uniqueKeys: true,
|
|
16
|
+
idField: "$yamlId",
|
|
17
|
+
refField: "$yamlRef",
|
|
18
|
+
valuesField: "$yamlValues",
|
|
19
|
+
tagField: "$yamlTag",
|
|
20
|
+
valueField: "$yamlValue"
|
|
21
|
+
});
|
|
22
|
+
const OPTION_KEYS = new Set(Object.keys(DEFAULT_VALUES));
|
|
23
|
+
|
|
24
|
+
/** Returns true when a value can be decoded as YAML source text. */
|
|
25
|
+
function isYamlSourceInput(value) {
|
|
26
|
+
return typeof value === "string" || value instanceof ArrayBuffer || ArrayBuffer.isView(value);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Converts string or byte input into strict UTF-8 YAML source text while
|
|
31
|
+
* respecting typed-array/DataView bounds.
|
|
32
|
+
*/
|
|
33
|
+
function toYamlSourceText(value, readerName = "CjsYamlFormat") {
|
|
34
|
+
if (typeof value === "string") return value;
|
|
35
|
+
if (!isYamlSourceInput(value)) {
|
|
36
|
+
throw new TypeError(`${readerName} input must be a YAML string or byte buffer`);
|
|
37
|
+
}
|
|
38
|
+
const bytes = value instanceof ArrayBuffer ? new Uint8Array(value) : new Uint8Array(value.buffer, value.byteOffset, value.byteLength);
|
|
39
|
+
try {
|
|
40
|
+
return new TextDecoder("utf-8", {
|
|
41
|
+
fatal: true
|
|
42
|
+
}).decode(bytes);
|
|
43
|
+
} catch (error) {
|
|
44
|
+
throw new TypeError(`${readerName} input must contain valid UTF-8 YAML`, {
|
|
45
|
+
cause: error
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
function hasOwn(value, key) {
|
|
50
|
+
return Object.prototype.hasOwnProperty.call(value, key);
|
|
51
|
+
}
|
|
52
|
+
function defineMappingValue(target, key, value) {
|
|
53
|
+
Object.defineProperty(target, key, {
|
|
54
|
+
value,
|
|
55
|
+
enumerable: true,
|
|
56
|
+
configurable: true,
|
|
57
|
+
writable: true
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
function normalizeEmit(value, readerName) {
|
|
61
|
+
if (value === OUTPUT_JSON || value === OUTPUT_PAYLOAD) return value;
|
|
62
|
+
if (value === OUTPUT_RAW || value === OUTPUT_DOCUMENT) return value;
|
|
63
|
+
throw new TypeError(`${readerName} unknown emit value "${value}"`);
|
|
64
|
+
}
|
|
65
|
+
function normalizeTagPolicy(value, readerName) {
|
|
66
|
+
if (value === TAG_PRESERVE || value === TAG_REJECT || value === TAG_HANDLE) return value;
|
|
67
|
+
throw new TypeError(`${readerName} unknown tagPolicy value "${value}"`);
|
|
68
|
+
}
|
|
69
|
+
function normalizeAllowedTags(value, readerName) {
|
|
70
|
+
if (value === null || value === undefined) return null;
|
|
71
|
+
if (!Array.isArray(value) && !(value instanceof Set)) {
|
|
72
|
+
throw new TypeError(`${readerName} allowedTags must be an array, Set, or null`);
|
|
73
|
+
}
|
|
74
|
+
return [...value];
|
|
75
|
+
}
|
|
76
|
+
function normalizeTagHandlers(value, readerName) {
|
|
77
|
+
if (value instanceof Map) {
|
|
78
|
+
for (const [tag, handler] of value) {
|
|
79
|
+
if (typeof handler !== "function") {
|
|
80
|
+
throw new TypeError(`${readerName} tag handler "${tag}" must be a function`);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
return new Map(value);
|
|
84
|
+
}
|
|
85
|
+
if (!value || typeof value !== "object" || Array.isArray(value)) {
|
|
86
|
+
throw new TypeError(`${readerName} tagHandlers must be an object or Map`);
|
|
87
|
+
}
|
|
88
|
+
for (const [tag, handler] of Object.entries(value)) {
|
|
89
|
+
if (typeof handler !== "function") {
|
|
90
|
+
throw new TypeError(`${readerName} tag handler "${tag}" must be a function`);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
return {
|
|
94
|
+
...value
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
function normalizeField(value, name, readerName) {
|
|
98
|
+
if (typeof value !== "string" || !value) {
|
|
99
|
+
throw new TypeError(`${readerName} ${name} must be a non-empty string`);
|
|
100
|
+
}
|
|
101
|
+
return value;
|
|
102
|
+
}
|
|
103
|
+
function normalizeBoolean(value, name, readerName) {
|
|
104
|
+
if (typeof value !== "boolean") throw new TypeError(`${readerName} ${name} must be a boolean`);
|
|
105
|
+
return value;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
/**
|
|
109
|
+
* Normalizes reader options against their supported defaults for the YAML
|
|
110
|
+
* document reader.
|
|
111
|
+
*/
|
|
112
|
+
function normalizeValues(base, options = {}, readerName = "CjsYamlFormat") {
|
|
113
|
+
if (!options || typeof options !== "object" || Array.isArray(options)) {
|
|
114
|
+
throw new TypeError(`${readerName} options must be an object`);
|
|
115
|
+
}
|
|
116
|
+
for (const key of Object.keys(options)) {
|
|
117
|
+
if (!OPTION_KEYS.has(key)) throw new TypeError(`${readerName} unknown option "${key}"`);
|
|
118
|
+
}
|
|
119
|
+
const values = {
|
|
120
|
+
...base,
|
|
121
|
+
allowedTags: base.allowedTags ? [...base.allowedTags] : null,
|
|
122
|
+
tagHandlers: base.tagHandlers instanceof Map ? new Map(base.tagHandlers) : {
|
|
123
|
+
...base.tagHandlers
|
|
124
|
+
}
|
|
125
|
+
};
|
|
126
|
+
if (hasOwn(options, "emit")) values.emit = normalizeEmit(options.emit, readerName);
|
|
127
|
+
if (hasOwn(options, "tagPolicy")) values.tagPolicy = normalizeTagPolicy(options.tagPolicy, readerName);
|
|
128
|
+
if (hasOwn(options, "allowedTags")) values.allowedTags = normalizeAllowedTags(options.allowedTags, readerName);
|
|
129
|
+
if (hasOwn(options, "tagHandlers")) values.tagHandlers = normalizeTagHandlers(options.tagHandlers, readerName);
|
|
130
|
+
if (hasOwn(options, "sourceName")) values.sourceName = options.sourceName == null ? null : String(options.sourceName);
|
|
131
|
+
if (hasOwn(options, "maxAliasCount")) {
|
|
132
|
+
if (!Number.isInteger(options.maxAliasCount) || options.maxAliasCount < 0) {
|
|
133
|
+
throw new TypeError(`${readerName} maxAliasCount must be a non-negative integer`);
|
|
134
|
+
}
|
|
135
|
+
values.maxAliasCount = options.maxAliasCount;
|
|
136
|
+
}
|
|
137
|
+
if (hasOwn(options, "uniqueKeys")) {
|
|
138
|
+
values.uniqueKeys = normalizeBoolean(options.uniqueKeys, "uniqueKeys", readerName);
|
|
139
|
+
}
|
|
140
|
+
for (const name of ["idField", "refField", "valuesField", "tagField", "valueField"]) {
|
|
141
|
+
if (hasOwn(options, name)) values[name] = normalizeField(options[name], name, readerName);
|
|
142
|
+
}
|
|
143
|
+
return values;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
/**
|
|
147
|
+
* Converts a YAML node graph into JSON-safe values while preserving references
|
|
148
|
+
* for the YAML document reader.
|
|
149
|
+
*/
|
|
150
|
+
function toJsonGraph(value, options) {
|
|
151
|
+
const counts = new WeakMap();
|
|
152
|
+
const traversed = new WeakSet();
|
|
153
|
+
const count = node => {
|
|
154
|
+
if (!node || typeof node !== "object") return;
|
|
155
|
+
counts.set(node, (counts.get(node) || 0) + 1);
|
|
156
|
+
if (traversed.has(node)) return;
|
|
157
|
+
traversed.add(node);
|
|
158
|
+
if (Array.isArray(node)) node.forEach(count);else Object.keys(node).forEach(key => count(node[key]));
|
|
159
|
+
};
|
|
160
|
+
count(value);
|
|
161
|
+
const ids = new WeakMap();
|
|
162
|
+
let nextId = 1;
|
|
163
|
+
const encode = node => {
|
|
164
|
+
if (node === null || typeof node !== "object") return node;
|
|
165
|
+
if (ArrayBuffer.isView(node)) return Array.from(node, encode);
|
|
166
|
+
if (node instanceof Date) return node.toISOString();
|
|
167
|
+
const repeated = (counts.get(node) || 0) > 1;
|
|
168
|
+
if (ids.has(node)) return {
|
|
169
|
+
[options.refField]: ids.get(node)
|
|
170
|
+
};
|
|
171
|
+
let id = null;
|
|
172
|
+
if (repeated) {
|
|
173
|
+
id = nextId++;
|
|
174
|
+
ids.set(node, id);
|
|
175
|
+
}
|
|
176
|
+
if (Array.isArray(node)) {
|
|
177
|
+
const values = node.map(encode);
|
|
178
|
+
return repeated ? {
|
|
179
|
+
[options.idField]: id,
|
|
180
|
+
[options.valuesField]: values
|
|
181
|
+
} : values;
|
|
182
|
+
}
|
|
183
|
+
if (repeated && Object.prototype.hasOwnProperty.call(node, options.idField)) {
|
|
184
|
+
throw new TypeError(`CjsYamlFormat cannot encode repeated mapping: reserved field "${options.idField}" already exists`);
|
|
185
|
+
}
|
|
186
|
+
const out = repeated ? {
|
|
187
|
+
[options.idField]: id
|
|
188
|
+
} : {};
|
|
189
|
+
for (const key of Object.keys(node)) defineMappingValue(out, key, encode(node[key]));
|
|
190
|
+
return out;
|
|
191
|
+
};
|
|
192
|
+
return encode(value);
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
export { DEFAULT_VALUES, OUTPUT_DOCUMENT, OUTPUT_JSON, OUTPUT_PAYLOAD, OUTPUT_RAW, TAG_HANDLE, TAG_PRESERVE, TAG_REJECT, isYamlSourceInput, normalizeValues, toJsonGraph, toYamlSourceText };
|
|
196
|
+
//# sourceMappingURL=helpers.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { CjsYamlFormat, CjsYamlFormat as default } from './CjsYamlFormat.js';
|
|
2
|
-
//# sourceMappingURL=index.js.map
|
|
1
|
+
export { CjsYamlFormat, CjsYamlFormat as default } from './CjsYamlFormat.js';
|
|
2
|
+
//# sourceMappingURL=index.js.map
|
package/dist/index.js
CHANGED
|
@@ -1,64 +1,64 @@
|
|
|
1
|
-
export { CjsResource } from './resource/CjsResource.js';
|
|
2
|
-
export { CjsLoadingObject } from './resource/CjsLoadingObject.js';
|
|
3
|
-
export { ResourceHandlerMode } from './resource/ResourceHandlerMode.js';
|
|
4
|
-
export { Tr2LightProfileRes } from './resource/Tr2LightProfileRes.js';
|
|
5
|
-
export { AudioGeometryResData } from './resource/audio/AudioGeometryResData.js';
|
|
6
|
-
export { CjsAudioBufferRes } from './resource/audio/CjsAudioBufferRes.js';
|
|
7
|
-
export { CjsAudioRes } from './resource/audio/CjsAudioRes.js';
|
|
8
|
-
export { MeshDecalData } from './resource/geometry/MeshDecalData.js';
|
|
9
|
-
export { MeshDecalLodData } from './resource/geometry/MeshDecalLodData.js';
|
|
10
|
-
export { TriGeometryRes } from './resource/geometry/TriGeometryRes.js';
|
|
11
|
-
export { TriGeometryResAreaData } from './resource/geometry/TriGeometryResAreaData.js';
|
|
12
|
-
export { TriGeometryResJointData } from './resource/geometry/TriGeometryResJointData.js';
|
|
13
|
-
export { TriGeometryResLodData } from './resource/geometry/TriGeometryResLodData.js';
|
|
14
|
-
export { TriGeometryResMeshData } from './resource/geometry/TriGeometryResMeshData.js';
|
|
15
|
-
export { TriGeometryResSkeletonData } from './resource/geometry/TriGeometryResSkeletonData.js';
|
|
16
|
-
export { TriJointBinding } from './resource/geometry/TriJointBinding.js';
|
|
17
|
-
export { TriMorphTargetGeometryConstants } from './resource/geometry/TriMorphTargetGeometryConstants.js';
|
|
18
|
-
export { TriRtGeometryConstants } from './resource/geometry/TriRtGeometryConstants.js';
|
|
19
|
-
export { GStateBindingCallbackData } from './resource/geometry/granny/GStateBindingCallbackData.js';
|
|
20
|
-
export { Tr2GrannyIntersectionResult } from './resource/geometry/granny/Tr2GrannyIntersectionResult.js';
|
|
21
|
-
export { Tr2GrannyStateRes } from './resource/geometry/granny/Tr2GrannyStateRes.js';
|
|
22
|
-
export { TriGrannyRes } from './resource/geometry/granny/TriGrannyRes.js';
|
|
23
|
-
export { GrannyDeprecationLevel } from './resource/geometry/granny/enums.js';
|
|
24
|
-
export { GetGlobalEffectOptions, ModifyGlobalEffectOptions, Tr2EffectRes } from './resource/shader/Tr2EffectRes.js';
|
|
25
|
-
export { Tr2MaterialArea } from './resource/shader/Tr2MaterialArea.js';
|
|
26
|
-
export { Tr2MaterialMesh } from './resource/shader/Tr2MaterialMesh.js';
|
|
27
|
-
export { Tr2MaterialRes } from './resource/shader/Tr2MaterialRes.js';
|
|
28
|
-
export { Tr2Shader } from './resource/shader/Tr2Shader.js';
|
|
29
|
-
export { Tr2ShaderPermutation } from './resource/shader/Tr2ShaderPermutation.js';
|
|
30
|
-
export { Tr2EffectConstant } from './resource/shader/reflection/Tr2EffectConstant.js';
|
|
31
|
-
export { Tr2EffectDefine } from './resource/shader/reflection/Tr2EffectDefine.js';
|
|
32
|
-
export { Tr2EffectDescription } from './resource/shader/reflection/Tr2EffectDescription.js';
|
|
33
|
-
export { Tr2EffectLibrary } from './resource/shader/reflection/Tr2EffectLibrary.js';
|
|
34
|
-
export { Tr2EffectParameterAnnotation } from './resource/shader/reflection/Tr2EffectParameterAnnotation.js';
|
|
35
|
-
export { Tr2EffectResource } from './resource/shader/reflection/Tr2EffectResource.js';
|
|
36
|
-
export { Tr2EffectStageInput } from './resource/shader/reflection/Tr2EffectStageInput.js';
|
|
37
|
-
export { Tr2EffectTechnique } from './resource/shader/reflection/Tr2EffectTechnique.js';
|
|
38
|
-
export { Tr2Pass } from './resource/shader/reflection/Tr2Pass.js';
|
|
39
|
-
export { Tr2SamplerSetup } from './resource/shader/sampler/Tr2SamplerSetup.js';
|
|
40
|
-
export { CjsTextureArrayRes } from './resource/texture/CjsTextureArrayRes.js';
|
|
41
|
-
export { CjsTextureArrayResParameterProxy } from './resource/texture/CjsTextureArrayResParameterProxy.js';
|
|
42
|
-
export { Tr2ImageRes } from './resource/texture/Tr2ImageRes.js';
|
|
43
|
-
export { Tr2TextureLodManager } from './resource/texture/Tr2TextureLodManager.js';
|
|
44
|
-
export { Tr2TextureLodUpdateRequest } from './resource/texture/Tr2TextureLodUpdateRequest.js';
|
|
45
|
-
export { Tr2TexturePackChannel } from './resource/texture/Tr2TexturePackChannel.js';
|
|
46
|
-
export { Tr2TexturePipeline } from './resource/texture/Tr2TexturePipeline.js';
|
|
47
|
-
export { Tr2TexturePipelineParams } from './resource/texture/Tr2TexturePipelineParams.js';
|
|
48
|
-
export { Tr2TexturePipelineStepCompress } from './resource/texture/Tr2TexturePipelineStepCompress.js';
|
|
49
|
-
export { Tr2TexturePipelineStepGenerateMips } from './resource/texture/Tr2TexturePipelineStepGenerateMips.js';
|
|
50
|
-
export { Tr2TexturePipelineStepLimitSize } from './resource/texture/Tr2TexturePipelineStepLimitSize.js';
|
|
51
|
-
export { Tr2TexturePipelineStepLoad } from './resource/texture/Tr2TexturePipelineStepLoad.js';
|
|
52
|
-
export { Tr2TexturePipelineStepPack } from './resource/texture/Tr2TexturePipelineStepPack.js';
|
|
53
|
-
export { TriTextureRes } from './resource/texture/TriTextureRes.js';
|
|
54
|
-
export { CjsResourceProbe } from './format/CjsResourceProbe.js';
|
|
55
|
-
export { ResourcePayloadType, ResourcePayloadValues, validateAudioPayload, validateRgbaPayload, validateTexturePayload, validateVideoPayload } from './format/payloadContract.js';
|
|
56
|
-
export { CjsFormat } from './format/CjsFormat.js';
|
|
57
|
-
export { CjsEventEmitter } from '@carbonenginejs/runtime-utils/model';
|
|
58
|
-
export { CjsMotherLode, getMotherLodeKey } from './CjsMotherLode.js';
|
|
59
|
-
export { CjsResManFetchProvider } from './CjsResManFetchProvider.js';
|
|
60
|
-
export { CjsResManMainThreadLoader } from './worker/CjsResManMainThreadLoader.js';
|
|
61
|
-
export { CjsResManWorkerLoader } from './worker/CjsResManWorkerLoader.js';
|
|
62
|
-
export { CjsResManQueue } from './CjsResManWorkQueue.js';
|
|
63
|
-
export { CjsResMan } from './CjsResMan.js';
|
|
64
|
-
//# sourceMappingURL=index.js.map
|
|
1
|
+
export { CjsResource } from './resource/CjsResource.js';
|
|
2
|
+
export { CjsLoadingObject } from './resource/CjsLoadingObject.js';
|
|
3
|
+
export { ResourceHandlerMode } from './resource/ResourceHandlerMode.js';
|
|
4
|
+
export { Tr2LightProfileRes } from './resource/Tr2LightProfileRes.js';
|
|
5
|
+
export { AudioGeometryResData } from './resource/audio/AudioGeometryResData.js';
|
|
6
|
+
export { CjsAudioBufferRes } from './resource/audio/CjsAudioBufferRes.js';
|
|
7
|
+
export { CjsAudioRes } from './resource/audio/CjsAudioRes.js';
|
|
8
|
+
export { MeshDecalData } from './resource/geometry/MeshDecalData.js';
|
|
9
|
+
export { MeshDecalLodData } from './resource/geometry/MeshDecalLodData.js';
|
|
10
|
+
export { TriGeometryRes } from './resource/geometry/TriGeometryRes.js';
|
|
11
|
+
export { TriGeometryResAreaData } from './resource/geometry/TriGeometryResAreaData.js';
|
|
12
|
+
export { TriGeometryResJointData } from './resource/geometry/TriGeometryResJointData.js';
|
|
13
|
+
export { TriGeometryResLodData } from './resource/geometry/TriGeometryResLodData.js';
|
|
14
|
+
export { TriGeometryResMeshData } from './resource/geometry/TriGeometryResMeshData.js';
|
|
15
|
+
export { TriGeometryResSkeletonData } from './resource/geometry/TriGeometryResSkeletonData.js';
|
|
16
|
+
export { TriJointBinding } from './resource/geometry/TriJointBinding.js';
|
|
17
|
+
export { TriMorphTargetGeometryConstants } from './resource/geometry/TriMorphTargetGeometryConstants.js';
|
|
18
|
+
export { TriRtGeometryConstants } from './resource/geometry/TriRtGeometryConstants.js';
|
|
19
|
+
export { GStateBindingCallbackData } from './resource/geometry/granny/GStateBindingCallbackData.js';
|
|
20
|
+
export { Tr2GrannyIntersectionResult } from './resource/geometry/granny/Tr2GrannyIntersectionResult.js';
|
|
21
|
+
export { Tr2GrannyStateRes } from './resource/geometry/granny/Tr2GrannyStateRes.js';
|
|
22
|
+
export { TriGrannyRes } from './resource/geometry/granny/TriGrannyRes.js';
|
|
23
|
+
export { GrannyDeprecationLevel } from './resource/geometry/granny/enums.js';
|
|
24
|
+
export { GetGlobalEffectOptions, ModifyGlobalEffectOptions, Tr2EffectRes } from './resource/shader/Tr2EffectRes.js';
|
|
25
|
+
export { Tr2MaterialArea } from './resource/shader/Tr2MaterialArea.js';
|
|
26
|
+
export { Tr2MaterialMesh } from './resource/shader/Tr2MaterialMesh.js';
|
|
27
|
+
export { Tr2MaterialRes } from './resource/shader/Tr2MaterialRes.js';
|
|
28
|
+
export { Tr2Shader } from './resource/shader/Tr2Shader.js';
|
|
29
|
+
export { Tr2ShaderPermutation } from './resource/shader/Tr2ShaderPermutation.js';
|
|
30
|
+
export { Tr2EffectConstant } from './resource/shader/reflection/Tr2EffectConstant.js';
|
|
31
|
+
export { Tr2EffectDefine } from './resource/shader/reflection/Tr2EffectDefine.js';
|
|
32
|
+
export { Tr2EffectDescription } from './resource/shader/reflection/Tr2EffectDescription.js';
|
|
33
|
+
export { Tr2EffectLibrary } from './resource/shader/reflection/Tr2EffectLibrary.js';
|
|
34
|
+
export { Tr2EffectParameterAnnotation } from './resource/shader/reflection/Tr2EffectParameterAnnotation.js';
|
|
35
|
+
export { Tr2EffectResource } from './resource/shader/reflection/Tr2EffectResource.js';
|
|
36
|
+
export { Tr2EffectStageInput } from './resource/shader/reflection/Tr2EffectStageInput.js';
|
|
37
|
+
export { Tr2EffectTechnique } from './resource/shader/reflection/Tr2EffectTechnique.js';
|
|
38
|
+
export { Tr2Pass } from './resource/shader/reflection/Tr2Pass.js';
|
|
39
|
+
export { Tr2SamplerSetup } from './resource/shader/sampler/Tr2SamplerSetup.js';
|
|
40
|
+
export { CjsTextureArrayRes } from './resource/texture/CjsTextureArrayRes.js';
|
|
41
|
+
export { CjsTextureArrayResParameterProxy } from './resource/texture/CjsTextureArrayResParameterProxy.js';
|
|
42
|
+
export { Tr2ImageRes } from './resource/texture/Tr2ImageRes.js';
|
|
43
|
+
export { Tr2TextureLodManager } from './resource/texture/Tr2TextureLodManager.js';
|
|
44
|
+
export { Tr2TextureLodUpdateRequest } from './resource/texture/Tr2TextureLodUpdateRequest.js';
|
|
45
|
+
export { Tr2TexturePackChannel } from './resource/texture/Tr2TexturePackChannel.js';
|
|
46
|
+
export { Tr2TexturePipeline } from './resource/texture/Tr2TexturePipeline.js';
|
|
47
|
+
export { Tr2TexturePipelineParams } from './resource/texture/Tr2TexturePipelineParams.js';
|
|
48
|
+
export { Tr2TexturePipelineStepCompress } from './resource/texture/Tr2TexturePipelineStepCompress.js';
|
|
49
|
+
export { Tr2TexturePipelineStepGenerateMips } from './resource/texture/Tr2TexturePipelineStepGenerateMips.js';
|
|
50
|
+
export { Tr2TexturePipelineStepLimitSize } from './resource/texture/Tr2TexturePipelineStepLimitSize.js';
|
|
51
|
+
export { Tr2TexturePipelineStepLoad } from './resource/texture/Tr2TexturePipelineStepLoad.js';
|
|
52
|
+
export { Tr2TexturePipelineStepPack } from './resource/texture/Tr2TexturePipelineStepPack.js';
|
|
53
|
+
export { TriTextureRes } from './resource/texture/TriTextureRes.js';
|
|
54
|
+
export { CjsResourceProbe } from './format/CjsResourceProbe.js';
|
|
55
|
+
export { ResourcePayloadType, ResourcePayloadValues, validateAudioPayload, validateRgbaPayload, validateTexturePayload, validateVideoPayload } from './format/payloadContract.js';
|
|
56
|
+
export { CjsFormat } from './format/CjsFormat.js';
|
|
57
|
+
export { CjsEventEmitter } from '@carbonenginejs/runtime-utils/model';
|
|
58
|
+
export { CjsMotherLode, getMotherLodeKey } from './CjsMotherLode.js';
|
|
59
|
+
export { CjsResManFetchProvider } from './CjsResManFetchProvider.js';
|
|
60
|
+
export { CjsResManMainThreadLoader } from './worker/CjsResManMainThreadLoader.js';
|
|
61
|
+
export { CjsResManWorkerLoader } from './worker/CjsResManWorkerLoader.js';
|
|
62
|
+
export { CjsResManQueue } from './CjsResManWorkQueue.js';
|
|
63
|
+
export { CjsResMan } from './CjsResMan.js';
|
|
64
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import { CjsResource } from './CjsResource.js';
|
|
2
|
-
import { ResourceHandlerMode } from './ResourceHandlerMode.js';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Resource-compatible handler whose public loading result is the constructed
|
|
6
|
-
* object produced by an extension route.
|
|
7
|
-
*
|
|
8
|
-
* The handler reuses CjsResource lifecycle, queue, reload, and payload
|
|
9
|
-
* retention mechanics. CjsResMan keeps the handler internal to its canonical
|
|
10
|
-
* cache while `GetObject()` and path-only `Fetch()` expose its payload.
|
|
11
|
-
*/
|
|
12
|
-
class CjsLoadingObject extends CjsResource {
|
|
13
|
-
/** The handler borrows resource mechanics but is not itself a domain resource. */
|
|
14
|
-
static isResource = false;
|
|
15
|
-
static handlerMode = ResourceHandlerMode.OBJECT;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export { CjsLoadingObject };
|
|
19
|
-
//# sourceMappingURL=CjsLoadingObject.js.map
|
|
1
|
+
import { CjsResource } from './CjsResource.js';
|
|
2
|
+
import { ResourceHandlerMode } from './ResourceHandlerMode.js';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Resource-compatible handler whose public loading result is the constructed
|
|
6
|
+
* object produced by an extension route.
|
|
7
|
+
*
|
|
8
|
+
* The handler reuses CjsResource lifecycle, queue, reload, and payload
|
|
9
|
+
* retention mechanics. CjsResMan keeps the handler internal to its canonical
|
|
10
|
+
* cache while `GetObject()` and path-only `Fetch()` expose its payload.
|
|
11
|
+
*/
|
|
12
|
+
class CjsLoadingObject extends CjsResource {
|
|
13
|
+
/** The handler borrows resource mechanics but is not itself a domain resource. */
|
|
14
|
+
static isResource = false;
|
|
15
|
+
static handlerMode = ResourceHandlerMode.OBJECT;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export { CjsLoadingObject };
|
|
19
|
+
//# sourceMappingURL=CjsLoadingObject.js.map
|