@fps-games/editor 0.2.0-beta.3 → 0.2.1-beta.1
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/dist/agent-bridge/capabilities/editor-state.d.ts.map +1 -1
- package/dist/agent-bridge/capabilities/editor-state.js +32 -17
- package/dist/agent-bridge/capabilities/editor-state.js.map +1 -1
- package/dist/agent-bridge/capabilities/hierarchy.d.ts +4 -0
- package/dist/agent-bridge/capabilities/hierarchy.d.ts.map +1 -0
- package/dist/agent-bridge/capabilities/hierarchy.js +209 -0
- package/dist/agent-bridge/capabilities/hierarchy.js.map +1 -0
- package/dist/agent-bridge/capabilities/prefabs.d.ts.map +1 -1
- package/dist/agent-bridge/capabilities/prefabs.js +243 -60
- package/dist/agent-bridge/capabilities/prefabs.js.map +1 -1
- package/dist/agent-bridge/capabilities/scene-objects.d.ts +3 -4
- package/dist/agent-bridge/capabilities/scene-objects.d.ts.map +1 -1
- package/dist/agent-bridge/capabilities/scene-objects.js +111 -25
- package/dist/agent-bridge/capabilities/scene-objects.js.map +1 -1
- package/dist/agent-bridge/capabilities/selection.d.ts.map +1 -1
- package/dist/agent-bridge/capabilities/selection.js +8 -5
- package/dist/agent-bridge/capabilities/selection.js.map +1 -1
- package/dist/agent-bridge/capabilities/shadows.d.ts.map +1 -1
- package/dist/agent-bridge/capabilities/shadows.js +839 -67
- package/dist/agent-bridge/capabilities/shadows.js.map +1 -1
- package/dist/agent-bridge/capabilities/transform.d.ts.map +1 -1
- package/dist/agent-bridge/capabilities/transform.js +6 -4
- package/dist/agent-bridge/capabilities/transform.js.map +1 -1
- package/dist/agent-bridge/capabilities/ui-regions.d.ts.map +1 -1
- package/dist/agent-bridge/capabilities/ui-regions.js +3 -1
- package/dist/agent-bridge/capabilities/ui-regions.js.map +1 -1
- package/dist/agent-bridge/capabilities/viewport.d.ts.map +1 -1
- package/dist/agent-bridge/capabilities/viewport.js +92 -47
- package/dist/agent-bridge/capabilities/viewport.js.map +1 -1
- package/dist/agent-bridge/capability-sources.d.ts.map +1 -1
- package/dist/agent-bridge/capability-sources.js +2 -0
- package/dist/agent-bridge/capability-sources.js.map +1 -1
- package/dist/agent-bridge/register.d.ts.map +1 -1
- package/dist/agent-bridge/register.js +194 -0
- package/dist/agent-bridge/register.js.map +1 -1
- package/dist/agent-bridge/shared.d.ts +232 -7
- package/dist/agent-bridge/shared.d.ts.map +1 -1
- package/dist/agent-bridge/shared.js +174 -0
- package/dist/agent-bridge/shared.js.map +1 -1
- package/dist/agent-bridge/source-types.d.ts +17 -1
- package/dist/agent-bridge/source-types.d.ts.map +1 -1
- package/dist/agent-bridge/source-types.js.map +1 -1
- package/dist/build-info.json +57 -42
- package/dist/index.d.ts +7 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -3
- package/dist/index.js.map +1 -1
- package/dist/internal/babylon-preview-engine.d.ts +3 -0
- package/dist/internal/babylon-preview-engine.d.ts.map +1 -0
- package/dist/internal/babylon-preview-engine.js +11 -0
- package/dist/internal/babylon-preview-engine.js.map +1 -0
- package/dist/internal/product-local-editor-cleanup.d.ts +5 -0
- package/dist/internal/product-local-editor-cleanup.d.ts.map +1 -0
- package/dist/internal/product-local-editor-cleanup.js +20 -0
- package/dist/internal/product-local-editor-cleanup.js.map +1 -0
- package/dist/local-editor-agent-actions.d.ts +2 -4
- package/dist/local-editor-agent-actions.d.ts.map +1 -1
- package/dist/local-editor-agent-actions.js +61 -33
- package/dist/local-editor-agent-actions.js.map +1 -1
- package/dist/local-editor-agent-context.d.ts +5 -5
- package/dist/local-editor-agent-context.d.ts.map +1 -1
- package/dist/local-editor-agent-context.js.map +1 -1
- package/dist/local-editor-harness.d.ts +340 -35
- package/dist/local-editor-harness.d.ts.map +1 -1
- package/dist/local-editor-harness.js +3854 -1118
- package/dist/local-editor-harness.js.map +1 -1
- package/dist/local-editor-marker-graph.d.ts +15 -15
- package/dist/local-editor-marker-graph.d.ts.map +1 -1
- package/dist/local-editor-marker-graph.js +3 -0
- package/dist/local-editor-marker-graph.js.map +1 -1
- package/dist/local-editor-performance-stats.d.ts +3 -2
- package/dist/local-editor-performance-stats.d.ts.map +1 -1
- package/dist/local-editor-performance-stats.js.map +1 -1
- package/dist/local-editor-prefab-stage-transaction.d.ts +19 -0
- package/dist/local-editor-prefab-stage-transaction.d.ts.map +1 -0
- package/dist/local-editor-prefab-stage-transaction.js +45 -0
- package/dist/local-editor-prefab-stage-transaction.js.map +1 -0
- package/dist/local-editor-scene-view-interaction-runtime.d.ts +3 -1
- package/dist/local-editor-scene-view-interaction-runtime.d.ts.map +1 -1
- package/dist/local-editor-scene-view-interaction-runtime.js +24 -0
- package/dist/local-editor-scene-view-interaction-runtime.js.map +1 -1
- package/dist/local-editor-tools.d.ts +18 -0
- package/dist/local-editor-tools.d.ts.map +1 -0
- package/dist/local-editor-tools.js +53 -0
- package/dist/local-editor-tools.js.map +1 -0
- package/dist/playable-babylon-rendering.d.ts +9 -0
- package/dist/playable-babylon-rendering.d.ts.map +1 -1
- package/dist/playable-babylon-rendering.js +162 -6
- package/dist/playable-babylon-rendering.js.map +1 -1
- package/dist/playable-local-editor-entry.d.ts +68 -0
- package/dist/playable-local-editor-entry.d.ts.map +1 -0
- package/dist/playable-local-editor-entry.js +424 -0
- package/dist/playable-local-editor-entry.js.map +1 -0
- package/dist/playable-local-editor-host.d.ts +51 -29
- package/dist/playable-local-editor-host.d.ts.map +1 -1
- package/dist/playable-local-editor-host.js +23 -11
- package/dist/playable-local-editor-host.js.map +1 -1
- package/dist/playable-product-local-editor.d.ts +10 -12
- package/dist/playable-product-local-editor.d.ts.map +1 -1
- package/dist/playable-product-local-editor.js +178 -85
- package/dist/playable-product-local-editor.js.map +1 -1
- package/dist/playable-product-projection-preview.d.ts +4 -1
- package/dist/playable-product-projection-preview.d.ts.map +1 -1
- package/dist/playable-product-projection-preview.js +122 -5
- package/dist/playable-product-projection-preview.js.map +1 -1
- package/dist/playable-product-rendering.d.ts +12 -0
- package/dist/playable-product-rendering.d.ts.map +1 -1
- package/dist/playable-product-rendering.js +128 -6
- package/dist/playable-product-rendering.js.map +1 -1
- package/dist/playable-product-scene-capabilities.d.ts +24 -7
- package/dist/playable-product-scene-capabilities.d.ts.map +1 -1
- package/dist/playable-product-scene-capabilities.js +172 -15
- package/dist/playable-product-scene-capabilities.js.map +1 -1
- package/dist/playable-project-mode.d.ts +17 -0
- package/dist/playable-project-mode.d.ts.map +1 -0
- package/dist/playable-project-mode.js +2 -0
- package/dist/playable-project-mode.js.map +1 -0
- package/dist/playable-runtime-babylon.d.ts +3 -6
- package/dist/playable-runtime-babylon.d.ts.map +1 -1
- package/dist/playable-runtime-babylon.js +1 -5
- package/dist/playable-runtime-babylon.js.map +1 -1
- package/dist/playable-sdk.d.ts +16 -9
- package/dist/playable-sdk.d.ts.map +1 -1
- package/dist/playable-sdk.js +6 -4
- package/dist/playable-sdk.js.map +1 -1
- package/dist/playable-standard-project.d.ts +23 -14
- package/dist/playable-standard-project.d.ts.map +1 -1
- package/dist/playable-standard-project.js +53 -19
- package/dist/playable-standard-project.js.map +1 -1
- package/dist/vite-client.d.ts +4 -0
- package/node_modules/@babel/helper-string-parser/lib/index.js +0 -1
- package/node_modules/@babel/helper-validator-identifier/lib/identifier.js +0 -1
- package/node_modules/@babel/helper-validator-identifier/lib/index.js +0 -1
- package/node_modules/@babel/helper-validator-identifier/lib/keyword.js +0 -1
- package/node_modules/@babel/parser/lib/index.js +0 -1
- package/node_modules/@babel/types/lib/asserts/assertNode.js +0 -1
- package/node_modules/@babel/types/lib/asserts/generated/index.js +0 -1
- package/node_modules/@babel/types/lib/ast-types/generated/index.js +0 -1
- package/node_modules/@babel/types/lib/builders/flow/createFlowUnionType.js +0 -1
- package/node_modules/@babel/types/lib/builders/flow/createTypeAnnotationBasedOnTypeof.js +0 -1
- package/node_modules/@babel/types/lib/builders/generated/index.js +0 -1
- package/node_modules/@babel/types/lib/builders/generated/lowercase.js +0 -1
- package/node_modules/@babel/types/lib/builders/generated/uppercase.js +0 -1
- package/node_modules/@babel/types/lib/builders/productions.js +0 -1
- package/node_modules/@babel/types/lib/builders/react/buildChildren.js +0 -1
- package/node_modules/@babel/types/lib/builders/typescript/createTSUnionType.js +0 -1
- package/node_modules/@babel/types/lib/builders/validateNode.js +0 -1
- package/node_modules/@babel/types/lib/clone/clone.js +0 -1
- package/node_modules/@babel/types/lib/clone/cloneDeep.js +0 -1
- package/node_modules/@babel/types/lib/clone/cloneDeepWithoutLoc.js +0 -1
- package/node_modules/@babel/types/lib/clone/cloneNode.js +0 -1
- package/node_modules/@babel/types/lib/clone/cloneWithoutLoc.js +0 -1
- package/node_modules/@babel/types/lib/comments/addComment.js +0 -1
- package/node_modules/@babel/types/lib/comments/addComments.js +0 -1
- package/node_modules/@babel/types/lib/comments/inheritInnerComments.js +0 -1
- package/node_modules/@babel/types/lib/comments/inheritLeadingComments.js +0 -1
- package/node_modules/@babel/types/lib/comments/inheritTrailingComments.js +0 -1
- package/node_modules/@babel/types/lib/comments/inheritsComments.js +0 -1
- package/node_modules/@babel/types/lib/comments/removeComments.js +0 -1
- package/node_modules/@babel/types/lib/constants/generated/index.js +0 -1
- package/node_modules/@babel/types/lib/constants/index.js +0 -1
- package/node_modules/@babel/types/lib/converters/ensureBlock.js +0 -1
- package/node_modules/@babel/types/lib/converters/gatherSequenceExpressions.js +0 -1
- package/node_modules/@babel/types/lib/converters/toBindingIdentifierName.js +0 -1
- package/node_modules/@babel/types/lib/converters/toBlock.js +0 -1
- package/node_modules/@babel/types/lib/converters/toComputedKey.js +0 -1
- package/node_modules/@babel/types/lib/converters/toExpression.js +0 -1
- package/node_modules/@babel/types/lib/converters/toIdentifier.js +0 -1
- package/node_modules/@babel/types/lib/converters/toKeyAlias.js +0 -1
- package/node_modules/@babel/types/lib/converters/toSequenceExpression.js +0 -1
- package/node_modules/@babel/types/lib/converters/toStatement.js +0 -1
- package/node_modules/@babel/types/lib/converters/valueToNode.js +0 -1
- package/node_modules/@babel/types/lib/definitions/core.js +0 -1
- package/node_modules/@babel/types/lib/definitions/deprecated-aliases.js +0 -1
- package/node_modules/@babel/types/lib/definitions/experimental.js +0 -1
- package/node_modules/@babel/types/lib/definitions/flow.js +0 -1
- package/node_modules/@babel/types/lib/definitions/index.js +0 -1
- package/node_modules/@babel/types/lib/definitions/jsx.js +0 -1
- package/node_modules/@babel/types/lib/definitions/misc.js +0 -1
- package/node_modules/@babel/types/lib/definitions/placeholders.js +0 -1
- package/node_modules/@babel/types/lib/definitions/typescript.js +0 -1
- package/node_modules/@babel/types/lib/definitions/utils.js +0 -1
- package/node_modules/@babel/types/lib/index.js +0 -1
- package/node_modules/@babel/types/lib/modifications/appendToMemberExpression.js +0 -1
- package/node_modules/@babel/types/lib/modifications/flow/removeTypeDuplicates.js +0 -1
- package/node_modules/@babel/types/lib/modifications/inherits.js +0 -1
- package/node_modules/@babel/types/lib/modifications/prependToMemberExpression.js +0 -1
- package/node_modules/@babel/types/lib/modifications/removeProperties.js +0 -1
- package/node_modules/@babel/types/lib/modifications/removePropertiesDeep.js +0 -1
- package/node_modules/@babel/types/lib/modifications/typescript/removeTypeDuplicates.js +0 -1
- package/node_modules/@babel/types/lib/retrievers/getAssignmentIdentifiers.js +0 -1
- package/node_modules/@babel/types/lib/retrievers/getBindingIdentifiers.js +0 -1
- package/node_modules/@babel/types/lib/retrievers/getFunctionName.js +0 -1
- package/node_modules/@babel/types/lib/retrievers/getOuterBindingIdentifiers.js +0 -1
- package/node_modules/@babel/types/lib/traverse/traverse.js +0 -1
- package/node_modules/@babel/types/lib/traverse/traverseFast.js +0 -1
- package/node_modules/@babel/types/lib/utils/deprecationWarning.js +0 -1
- package/node_modules/@babel/types/lib/utils/inherit.js +0 -1
- package/node_modules/@babel/types/lib/utils/react/cleanJSXElementLiteralChild.js +0 -1
- package/node_modules/@babel/types/lib/utils/shallowEqual.js +0 -1
- package/node_modules/@babel/types/lib/validators/buildMatchMemberExpression.js +0 -1
- package/node_modules/@babel/types/lib/validators/generated/index.js +0 -1
- package/node_modules/@babel/types/lib/validators/is.js +0 -1
- package/node_modules/@babel/types/lib/validators/isBinding.js +0 -1
- package/node_modules/@babel/types/lib/validators/isBlockScoped.js +0 -1
- package/node_modules/@babel/types/lib/validators/isImmutable.js +0 -1
- package/node_modules/@babel/types/lib/validators/isLet.js +0 -1
- package/node_modules/@babel/types/lib/validators/isNode.js +0 -1
- package/node_modules/@babel/types/lib/validators/isNodesEquivalent.js +0 -1
- package/node_modules/@babel/types/lib/validators/isPlaceholderType.js +0 -1
- package/node_modules/@babel/types/lib/validators/isReferenced.js +0 -1
- package/node_modules/@babel/types/lib/validators/isScope.js +0 -1
- package/node_modules/@babel/types/lib/validators/isSpecifierDefault.js +0 -1
- package/node_modules/@babel/types/lib/validators/isType.js +0 -1
- package/node_modules/@babel/types/lib/validators/isValidES3Identifier.js +0 -1
- package/node_modules/@babel/types/lib/validators/isValidIdentifier.js +0 -1
- package/node_modules/@babel/types/lib/validators/isVar.js +0 -1
- package/node_modules/@babel/types/lib/validators/matchesPattern.js +0 -1
- package/node_modules/@babel/types/lib/validators/react/isCompatTag.js +0 -1
- package/node_modules/@babel/types/lib/validators/react/isReactComponent.js +0 -1
- package/node_modules/@babel/types/lib/validators/validate.js +0 -1
- package/node_modules/@babylonjs/loaders/BVH/bvhFileLoader.d.ts +69 -0
- package/node_modules/@babylonjs/loaders/BVH/bvhFileLoader.js +132 -0
- package/node_modules/@babylonjs/loaders/BVH/bvhFileLoader.metadata.d.ts +8 -0
- package/node_modules/@babylonjs/loaders/BVH/bvhFileLoader.metadata.js +7 -0
- package/node_modules/@babylonjs/loaders/BVH/bvhLoader.d.ts +14 -0
- package/node_modules/@babylonjs/loaders/BVH/bvhLoader.js +328 -0
- package/node_modules/@babylonjs/loaders/BVH/bvhLoadingOptions.d.ts +9 -0
- package/node_modules/@babylonjs/loaders/BVH/bvhLoadingOptions.js +1 -0
- package/node_modules/@babylonjs/loaders/BVH/index.d.ts +2 -0
- package/node_modules/@babylonjs/loaders/BVH/index.js +3 -0
- package/node_modules/@babylonjs/loaders/OBJ/index.d.ts +4 -0
- package/node_modules/@babylonjs/loaders/OBJ/index.js +4 -0
- package/node_modules/@babylonjs/loaders/OBJ/mtlFileLoader.d.ts +41 -0
- package/node_modules/@babylonjs/loaders/OBJ/mtlFileLoader.js +230 -0
- package/node_modules/@babylonjs/loaders/OBJ/objFileLoader.d.ts +136 -0
- package/node_modules/@babylonjs/loaders/OBJ/objFileLoader.js +317 -0
- package/node_modules/@babylonjs/loaders/OBJ/objFileLoader.metadata.d.ts +4 -0
- package/node_modules/@babylonjs/loaders/OBJ/objFileLoader.metadata.js +4 -0
- package/node_modules/@babylonjs/loaders/OBJ/objLoadingOptions.d.ts +47 -0
- package/node_modules/@babylonjs/loaders/OBJ/objLoadingOptions.js +1 -0
- package/node_modules/@babylonjs/loaders/OBJ/solidParser.d.ts +175 -0
- package/node_modules/@babylonjs/loaders/OBJ/solidParser.js +903 -0
- package/node_modules/@babylonjs/loaders/SPLAT/index.d.ts +2 -0
- package/node_modules/@babylonjs/loaders/SPLAT/index.js +3 -0
- package/node_modules/@babylonjs/loaders/SPLAT/sog.d.ts +84 -0
- package/node_modules/@babylonjs/loaders/SPLAT/sog.js +294 -0
- package/node_modules/@babylonjs/loaders/SPLAT/splatDefs.d.ts +26 -0
- package/node_modules/@babylonjs/loaders/SPLAT/splatDefs.js +10 -0
- package/node_modules/@babylonjs/loaders/SPLAT/splatFileLoader.d.ts +100 -0
- package/node_modules/@babylonjs/loaders/SPLAT/splatFileLoader.js +536 -0
- package/node_modules/@babylonjs/loaders/SPLAT/splatFileLoader.metadata.d.ts +20 -0
- package/node_modules/@babylonjs/loaders/SPLAT/splatFileLoader.metadata.js +15 -0
- package/node_modules/@babylonjs/loaders/SPLAT/splatLoadingOptions.d.ts +33 -0
- package/node_modules/@babylonjs/loaders/SPLAT/splatLoadingOptions.js +1 -0
- package/node_modules/@babylonjs/loaders/SPLAT/spz.d.ts +11 -0
- package/node_modules/@babylonjs/loaders/SPLAT/spz.js +168 -0
- package/node_modules/@babylonjs/loaders/STL/index.d.ts +1 -0
- package/node_modules/@babylonjs/loaders/STL/index.js +1 -0
- package/node_modules/@babylonjs/loaders/STL/stlFileLoader.d.ts +78 -0
- package/node_modules/@babylonjs/loaders/STL/stlFileLoader.js +238 -0
- package/node_modules/@babylonjs/loaders/STL/stlFileLoader.metadata.d.ts +8 -0
- package/node_modules/@babylonjs/loaders/STL/stlFileLoader.metadata.js +7 -0
- package/node_modules/@babylonjs/loaders/bvh/license.md +21 -0
- package/node_modules/@babylonjs/loaders/dynamic.d.ts +5 -0
- package/node_modules/@babylonjs/loaders/dynamic.js +56 -0
- package/node_modules/@babylonjs/loaders/glTF/1.0/glTFBinaryExtension.d.ts +16 -0
- package/node_modules/@babylonjs/loaders/glTF/1.0/glTFBinaryExtension.js +64 -0
- package/node_modules/@babylonjs/loaders/glTF/1.0/glTFLoader.d.ts +144 -0
- package/node_modules/@babylonjs/loaders/glTF/1.0/glTFLoader.js +1841 -0
- package/node_modules/@babylonjs/loaders/glTF/1.0/glTFLoaderInterfaces.d.ts +412 -0
- package/node_modules/@babylonjs/loaders/glTF/1.0/glTFLoaderInterfaces.js +95 -0
- package/node_modules/@babylonjs/loaders/glTF/1.0/glTFLoaderUtils.d.ts +71 -0
- package/node_modules/@babylonjs/loaders/glTF/1.0/glTFLoaderUtils.js +254 -0
- package/node_modules/@babylonjs/loaders/glTF/1.0/glTFMaterialsCommonExtension.d.ts +13 -0
- package/node_modules/@babylonjs/loaders/glTF/1.0/glTFMaterialsCommonExtension.js +130 -0
- package/node_modules/@babylonjs/loaders/glTF/1.0/index.d.ts +5 -0
- package/node_modules/@babylonjs/loaders/glTF/1.0/index.js +5 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_lights_area.d.ts +41 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_lights_area.js +93 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_lights_ies.d.ts +41 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_lights_ies.js +83 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_lights_image_based.d.ts +48 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_lights_image_based.js +115 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_mesh_gpu_instancing.d.ts +39 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_mesh_gpu_instancing.js +94 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_meshopt_compression.d.ts +39 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_meshopt_compression.js +50 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_texture_avif.d.ts +34 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_texture_avif.js +38 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_texture_webp.d.ts +33 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/EXT_texture_webp.js +37 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/ExtrasAsMetadata.d.ts +53 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/ExtrasAsMetadata.js +73 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_animation_pointer.d.ts +47 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_animation_pointer.data.d.ts +1 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_animation_pointer.data.js +251 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_animation_pointer.js +77 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_draco_mesh_compression.d.ts +47 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_draco_mesh_compression.js +92 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_interactivity/declarationMapper.d.ts +355 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_interactivity/declarationMapper.js +1678 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_interactivity/flowGraphGLTFDataProvider.d.ts +33 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_interactivity/flowGraphGLTFDataProvider.js +19 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_interactivity/index.d.ts +3 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_interactivity/index.js +3 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_interactivity/interactivityGraphParser.d.ts +70 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_interactivity/interactivityGraphParser.js +438 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_interactivity.d.ts +38 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_interactivity.js +150 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_lights_punctual.d.ts +41 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_lights_punctual.js +91 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_anisotropy.d.ts +42 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_anisotropy.js +65 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_clearcoat.d.ts +43 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_clearcoat.js +79 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_coat.d.ts +49 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_coat.js +119 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_diffuse_roughness.d.ts +43 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_diffuse_roughness.js +58 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_diffuse_transmission.d.ts +43 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_diffuse_transmission.js +69 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_dispersion.d.ts +43 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_dispersion.js +56 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_emissive_strength.d.ts +42 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_emissive_strength.js +47 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_fuzz.d.ts +43 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_fuzz.js +77 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_ior.d.ts +46 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_ior.js +54 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_iridescence.d.ts +42 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_iridescence.js +68 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_pbrSpecularGlossiness.d.ts +42 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_pbrSpecularGlossiness.js +80 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_sheen.d.ts +43 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_sheen.js +73 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_specular.d.ts +42 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_specular.js +76 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_transmission.d.ts +42 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_transmission.js +303 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_unlit.d.ts +42 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_unlit.js +66 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_variants.d.ts +112 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_variants.js +262 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_volume.d.ts +43 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_volume.js +82 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_volume_scatter.d.ts +45 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_materials_volume_scatter.js +109 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_mesh_quantization.d.ts +29 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_mesh_quantization.js +22 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_node_hoverability.d.ts +31 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_node_hoverability.js +189 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_node_selectability.d.ts +30 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_node_selectability.js +123 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_node_visibility.d.ts +30 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_node_visibility.js +66 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_texture_basisu.d.ts +33 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_texture_basisu.js +37 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_texture_transform.d.ts +37 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_texture_transform.js +58 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_xmp_json_ld.d.ts +39 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/KHR_xmp_json_ld.js +47 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/MSFT_audio_emitter.d.ts +56 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/MSFT_audio_emitter.js +228 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/MSFT_lod.d.ts +104 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/MSFT_lod.js +337 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/MSFT_minecraftMesh.d.ts +27 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/MSFT_minecraftMesh.js +39 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/MSFT_sRGBFactors.d.ts +27 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/MSFT_sRGBFactors.js +38 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/dynamic.d.ts +4 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/dynamic.js +212 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/gltfPathToObjectConverter.d.ts +45 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/gltfPathToObjectConverter.js +100 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/index.d.ts +43 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/index.js +44 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/objectModelMapping.d.ts +306 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/Extensions/objectModelMapping.js +884 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/glTFLoader.d.ts +450 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/glTFLoader.js +2485 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/glTFLoaderAnimation.d.ts +42 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/glTFLoaderAnimation.js +79 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/glTFLoaderExtension.d.ts +165 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/glTFLoaderExtension.js +1 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/glTFLoaderExtensionRegistry.d.ts +25 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/glTFLoaderExtensionRegistry.js +32 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/glTFLoaderInterfaces.d.ts +262 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/glTFLoaderInterfaces.js +1 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/index.d.ts +8 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/index.js +9 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/materialLoadingAdapter.d.ts +364 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/materialLoadingAdapter.js +1 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/openpbrMaterialLoadingAdapter.d.ts +674 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/openpbrMaterialLoadingAdapter.js +1034 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/pbrMaterialLoadingAdapter.d.ts +705 -0
- package/node_modules/@babylonjs/loaders/glTF/2.0/pbrMaterialLoadingAdapter.js +1126 -0
- package/node_modules/@babylonjs/loaders/glTF/glTFFileLoader.d.ts +553 -0
- package/node_modules/@babylonjs/loaders/glTF/glTFFileLoader.js +998 -0
- package/node_modules/@babylonjs/loaders/glTF/glTFFileLoader.metadata.d.ts +15 -0
- package/node_modules/@babylonjs/loaders/glTF/glTFFileLoader.metadata.js +17 -0
- package/node_modules/@babylonjs/loaders/glTF/glTFValidation.d.ts +35 -0
- package/node_modules/@babylonjs/loaders/glTF/glTFValidation.js +131 -0
- package/node_modules/@babylonjs/loaders/glTF/index.d.ts +5 -0
- package/node_modules/@babylonjs/loaders/glTF/index.js +6 -0
- package/node_modules/@babylonjs/loaders/index.d.ts +6 -0
- package/node_modules/@babylonjs/loaders/index.js +7 -0
- package/node_modules/@babylonjs/loaders/legacy/legacy-bvhFileLoader.d.ts +1 -0
- package/node_modules/@babylonjs/loaders/legacy/legacy-bvhFileLoader.js +15 -0
- package/node_modules/@babylonjs/loaders/legacy/legacy-dynamic.d.ts +1 -0
- package/node_modules/@babylonjs/loaders/legacy/legacy-dynamic.js +13 -0
- package/node_modules/@babylonjs/loaders/legacy/legacy-glTF.d.ts +2 -0
- package/node_modules/@babylonjs/loaders/legacy/legacy-glTF.js +18 -0
- package/node_modules/@babylonjs/loaders/legacy/legacy-glTF1.d.ts +2 -0
- package/node_modules/@babylonjs/loaders/legacy/legacy-glTF1.js +15 -0
- package/node_modules/@babylonjs/loaders/legacy/legacy-glTF1FileLoader.d.ts +2 -0
- package/node_modules/@babylonjs/loaders/legacy/legacy-glTF1FileLoader.js +3 -0
- package/node_modules/@babylonjs/loaders/legacy/legacy-glTF2.d.ts +2 -0
- package/node_modules/@babylonjs/loaders/legacy/legacy-glTF2.js +34 -0
- package/node_modules/@babylonjs/loaders/legacy/legacy-glTF2FileLoader.d.ts +2 -0
- package/node_modules/@babylonjs/loaders/legacy/legacy-glTF2FileLoader.js +3 -0
- package/node_modules/@babylonjs/loaders/legacy/legacy-glTFFileLoader.d.ts +3 -0
- package/node_modules/@babylonjs/loaders/legacy/legacy-glTFFileLoader.js +4 -0
- package/node_modules/@babylonjs/loaders/legacy/legacy-objFileLoader.d.ts +1 -0
- package/node_modules/@babylonjs/loaders/legacy/legacy-objFileLoader.js +15 -0
- package/node_modules/@babylonjs/loaders/legacy/legacy-stlFileLoader.d.ts +1 -0
- package/node_modules/@babylonjs/loaders/legacy/legacy-stlFileLoader.js +15 -0
- package/node_modules/@babylonjs/loaders/legacy/legacy.d.ts +8 -0
- package/node_modules/@babylonjs/loaders/legacy/legacy.js +10 -0
- package/node_modules/@babylonjs/loaders/license.md +71 -0
- package/node_modules/@babylonjs/loaders/package.json +49 -0
- package/node_modules/@babylonjs/loaders/readme.md +23 -0
- package/node_modules/@fps-games/babylon-renderer/dist/game-world-plugin-lifecycle.d.ts +22 -0
- package/node_modules/@fps-games/babylon-renderer/dist/game-world-plugin-lifecycle.d.ts.map +1 -0
- package/node_modules/@fps-games/babylon-renderer/dist/game-world-plugin-lifecycle.js +187 -0
- package/node_modules/@fps-games/babylon-renderer/dist/game-world-plugin-lifecycle.js.map +1 -0
- package/node_modules/@fps-games/babylon-renderer/dist/index.d.ts +3 -0
- package/node_modules/@fps-games/babylon-renderer/dist/index.d.ts.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/index.js +3 -0
- package/node_modules/@fps-games/babylon-renderer/dist/index.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/material-owner-candidates.d.ts +19 -0
- package/node_modules/@fps-games/babylon-renderer/dist/material-owner-candidates.d.ts.map +1 -0
- package/node_modules/@fps-games/babylon-renderer/dist/material-owner-candidates.js +212 -0
- package/node_modules/@fps-games/babylon-renderer/dist/material-owner-candidates.js.map +1 -0
- package/node_modules/@fps-games/babylon-renderer/dist/plugin.d.ts +17 -2
- package/node_modules/@fps-games/babylon-renderer/dist/plugin.d.ts.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/plugin.js +192 -17
- package/node_modules/@fps-games/babylon-renderer/dist/plugin.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/post-process/babylon-default-pipeline.d.ts +2 -0
- package/node_modules/@fps-games/babylon-renderer/dist/post-process/babylon-default-pipeline.d.ts.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/post-process/babylon-default-pipeline.js +139 -3
- package/node_modules/@fps-games/babylon-renderer/dist/post-process/babylon-default-pipeline.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/post-process/types.d.ts +4 -0
- package/node_modules/@fps-games/babylon-renderer/dist/post-process/types.d.ts.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/post-process/types.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/dynamic-shadow-system.d.ts +1 -0
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/dynamic-shadow-system.d.ts.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/dynamic-shadow-system.js +1 -0
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/dynamic-shadow-system.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/shadow-generator-shaders.d.ts +14 -0
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/shadow-generator-shaders.d.ts.map +1 -0
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/shadow-generator-shaders.js +14 -0
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/shadow-generator-shaders.js.map +1 -0
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/shadow-map-experiment-depth-backend.d.ts +59 -0
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/shadow-map-experiment-depth-backend.d.ts.map +1 -0
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/shadow-map-experiment-depth-backend.js +725 -0
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/shadow-map-experiment-depth-backend.js.map +1 -0
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/shadow-map-experiment-system.d.ts +136 -0
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/shadow-map-experiment-system.d.ts.map +1 -0
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/shadow-map-experiment-system.js +2735 -0
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/shadow-map-experiment-system.js.map +1 -0
- package/node_modules/@fps-games/babylon-renderer/package.json +7 -7
- package/node_modules/@fps-games/editor-babylon/dist/camera-controller.js +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/camera-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/index.d.ts +2 -1
- package/node_modules/@fps-games/editor-babylon/dist/index.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/index.js +2 -1
- package/node_modules/@fps-games/editor-babylon/dist/index.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/main-camera-preview.d.ts +2 -0
- package/node_modules/@fps-games/editor-babylon/dist/main-camera-preview.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/main-camera-preview.js +59 -6
- package/node_modules/@fps-games/editor-babylon/dist/main-camera-preview.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/material-slot-source-resolver.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/material-slot-source-resolver.js +81 -11
- package/node_modules/@fps-games/editor-babylon/dist/material-slot-source-resolver.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/projection-asset-container-importer.js +2 -8
- package/node_modules/@fps-games/editor-babylon/dist/projection-asset-container-importer.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/projection.d.ts +17 -5
- package/node_modules/@fps-games/editor-babylon/dist/projection.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/projection.js +300 -362
- package/node_modules/@fps-games/editor-babylon/dist/projection.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/scene-view-camera-controller.d.ts +4 -0
- package/node_modules/@fps-games/editor-babylon/dist/scene-view-camera-controller.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/scene-view-camera-controller.js +76 -10
- package/node_modules/@fps-games/editor-babylon/dist/scene-view-camera-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/selection-identity-pass.d.ts +46 -0
- package/node_modules/@fps-games/editor-babylon/dist/selection-identity-pass.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/selection-identity-pass.js +304 -0
- package/node_modules/@fps-games/editor-babylon/dist/selection-identity-pass.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/selection-presentation-controller.d.ts +85 -0
- package/node_modules/@fps-games/editor-babylon/dist/selection-presentation-controller.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/selection-presentation-controller.js +1600 -0
- package/node_modules/@fps-games/editor-babylon/dist/selection-presentation-controller.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/shadow-preview-controller.d.ts +11 -3
- package/node_modules/@fps-games/editor-babylon/dist/shadow-preview-controller.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/shadow-preview-controller.js +105 -15
- package/node_modules/@fps-games/editor-babylon/dist/shadow-preview-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/viewport-ground-projection.d.ts +25 -0
- package/node_modules/@fps-games/editor-babylon/dist/viewport-ground-projection.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/viewport-ground-projection.js +44 -0
- package/node_modules/@fps-games/editor-babylon/dist/viewport-ground-projection.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/package.json +6 -5
- package/node_modules/@fps-games/editor-browser/dist/index.d.ts +8 -9
- package/node_modules/@fps-games/editor-browser/dist/index.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/index.js +6 -7
- package/node_modules/@fps-games/editor-browser/dist/index.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-clipboard.d.ts +2 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-clipboard.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-clipboard.js +36 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-clipboard.js.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-inspector-groups.d.ts +2 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-inspector-groups.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-inspector-groups.js +17 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-inspector-groups.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-asset-kind.d.ts +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-asset-kind.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-asset-kind.js +6 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-asset-kind.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-context-menu.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-context-menu.js +157 -77
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-context-menu.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-dock-panel.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-dock-panel.js +27 -21
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-dock-panel.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-formal-surface-visibility.d.ts +19 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-formal-surface-visibility.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-formal-surface-visibility.js +44 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-formal-surface-visibility.js.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.d.ts +36 -5
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.js +831 -702
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-drag-policy.d.ts +8 -7
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-drag-policy.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-drag-policy.js +1 -7
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-drag-policy.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view-adapter.d.ts +7 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view-adapter.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view-adapter.js +20 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view-adapter.js.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view.d.ts +6 -7
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view.js +266 -114
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-icons.d.ts +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-icons.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-icons.js +11 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-icons.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-input-router.d.ts +3 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-input-router.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-input-router.js +58 -25
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-input-router.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-modal-dialog.d.ts +14 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-modal-dialog.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-modal-dialog.js +44 -62
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-modal-dialog.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.d.ts +10 -7
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.js +591 -639
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-prefab-stage.d.ts +8 -36
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-prefab-stage.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-prefab-stage.js +25 -103
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-prefab-stage.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-primitives.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-primitives.js +29 -110
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-primitives.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shared.d.ts +1 -3
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shared.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shared.js +6 -90
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shared.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shortcuts.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shortcuts.js +9 -54
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shortcuts.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-status-diagnostics.d.ts +39 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-status-diagnostics.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-status-diagnostics.js +74 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-status-diagnostics.js.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-status-format.d.ts +4 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-status-format.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-status-format.js +44 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-status-format.js.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-structured-drag-policy.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-structured-drag-policy.js +35 -44
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-structured-drag-policy.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-theme.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-theme.js +40 -24
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-theme.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-tooltip.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-tooltip.js +2 -20
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-tooltip.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.d.ts +56 -301
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-workbench.d.ts +4 -14
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-workbench.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-workbench.js +33 -119
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-workbench.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.d.ts +5 -10
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.js +760 -524
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/plugin-contributions.d.ts +2 -3
- package/node_modules/@fps-games/editor-browser/dist/plugin-contributions.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/plugin-contributions.js +0 -180
- package/node_modules/@fps-games/editor-browser/dist/plugin-contributions.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/runtime-debug.d.ts +5 -0
- package/node_modules/@fps-games/editor-browser/dist/runtime-debug.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/runtime-debug.js +5 -0
- package/node_modules/@fps-games/editor-browser/dist/runtime-debug.js.map +1 -0
- package/node_modules/@fps-games/editor-browser/package.json +15 -4
- package/node_modules/@fps-games/editor-core/dist/editor-diagnostic-store.d.ts +22 -0
- package/node_modules/@fps-games/editor-core/dist/editor-diagnostic-store.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/editor-diagnostic-store.js +226 -0
- package/node_modules/@fps-games/editor-core/dist/editor-diagnostic-store.js.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/editor-plugin-host.d.ts +6 -1
- package/node_modules/@fps-games/editor-core/dist/editor-plugin-host.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/editor-plugin-host.js +94 -2
- package/node_modules/@fps-games/editor-core/dist/editor-plugin-host.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/editor-session.d.ts +26 -1
- package/node_modules/@fps-games/editor-core/dist/editor-session.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/editor-session.js +77 -8
- package/node_modules/@fps-games/editor-core/dist/editor-session.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/editor-tools.d.ts +112 -0
- package/node_modules/@fps-games/editor-core/dist/editor-tools.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/editor-tools.js +613 -0
- package/node_modules/@fps-games/editor-core/dist/editor-tools.js.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/inspector.d.ts +46 -0
- package/node_modules/@fps-games/editor-core/dist/inspector.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/inspector.js +62 -0
- package/node_modules/@fps-games/editor-core/dist/inspector.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/scene-graph.d.ts +1 -0
- package/node_modules/@fps-games/editor-core/dist/scene-graph.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/scene-graph.js.map +1 -1
- package/node_modules/@fps-games/editor-core/package.json +14 -6
- package/node_modules/@fps-games/editor-forge-play/package.json +2 -2
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/metadata.js +14 -3
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/metadata.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/node.d.ts +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/node.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/node.js +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/node.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.d.ts +14 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.js +49 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/catalog.js +58 -2
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/catalog.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/document.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/document.js +48 -6
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/document.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/helpers.d.ts +28 -3
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/helpers.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/helpers.js +314 -6
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/helpers.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/index.d.ts +2 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/index.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/index.js +2 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/prefab-instance-identity.d.ts +11 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/prefab-instance-identity.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/prefab-instance-identity.js +27 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/prefab-instance-identity.js.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/prefab-marker.d.ts +5 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/prefab-marker.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/prefab-marker.js +285 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/prefab-marker.js.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/types.d.ts +7 -3
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/index.d.ts +3 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/index.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/index.js +6 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/document-sections.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/document-sections.js +23 -81
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/document-sections.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/editor-entry-manifest.d.ts +41 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/editor-entry-manifest.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/editor-entry-manifest.js +93 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/editor-entry-manifest.js.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/editor-entry-module.d.ts +29 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/editor-entry-module.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/editor-entry-module.js +77 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/editor-entry-module.js.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/editor-entry-performance.d.ts +51 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/editor-entry-performance.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/editor-entry-performance.js +105 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/editor-entry-performance.js.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/editor-entry.d.ts +60 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/editor-entry.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/editor-entry.js +287 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/editor-entry.js.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play-types.d.ts +6 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play-types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play-types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.d.ts +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.js +53 -17
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/host-controller.d.ts +16 -8
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/host-controller.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/host-controller.js +10 -6
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/host-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.d.ts +5 -3
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.js +2 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/lifecycle.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/lifecycle.js +134 -66
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/lifecycle.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/project-asset-commands.d.ts +11 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/project-asset-commands.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/project-asset-commands.js +21 -14
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/project-asset-commands.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/types.d.ts +17 -9
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/field-patch.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/field-patch.js +20 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/field-patch.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/reducer.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/reducer.js +49 -10
- package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/reducer.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/aliases.d.ts +2 -2
- package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/aliases.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/aliases.js +18 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/aliases.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/action-patches.d.ts +7 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/action-patches.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/action-patches.js +130 -20
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/action-patches.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/assets.d.ts +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/assets.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/assets.js +12 -3
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/assets.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/derived-markers.d.ts +11 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/derived-markers.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/derived-markers.js +136 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/derived-markers.js.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/index.d.ts +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/index.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/index.js +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/projection.d.ts +36 -51
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/projection.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/projection.js +40 -65
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/projection.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/stage-inspector.d.ts +5 -2
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/stage-inspector.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/stage-inspector.js +207 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/stage-inspector.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/index.d.ts +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/index.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/index.js +3 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/project-host-services.d.ts +18 -7
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/project-host-services.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/project-host-services.js +110 -18
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/project-host-services.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/scene-source.d.ts +5 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/scene-source.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/scene-source.js +6 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/scene-source.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/standard-scene-assembly.d.ts +5 -2
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/standard-scene-assembly.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/standard-scene-assembly.js +22 -2
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/standard-scene-assembly.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/panel.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/panel.js +144 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/panel.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/types.d.ts +16 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/nodes.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/nodes.js +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/nodes.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/types.d.ts +2 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/compiler.d.ts +2 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/compiler.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/compiler.js +241 -13
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/compiler.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/index.d.ts +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/index.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/index.js +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/shadow-map-experiment-migration.d.ts +31 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/shadow-map-experiment-migration.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/shadow-map-experiment-migration.js +170 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/shadow-map-experiment-migration.js.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/types.d.ts +153 -13
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/validation.d.ts +17 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/validation.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/validation.js +1295 -3
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/validation.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/client.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/client.js +14 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/client.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/driver.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/driver.js +57 -34
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/driver.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/protocol.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/protocol.js +4 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/protocol.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/types.d.ts +4 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/inspector.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/inspector.js +20 -198
- package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/inspector.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/hierarchy-facade.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/hierarchy-facade.js +5 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/hierarchy-facade.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/patches.d.ts +5 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/patches.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/patches.js +144 -8
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/patches.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/reducer-core.d.ts +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/reducer-core.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/reducer-core.js +30 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/reducer-core.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/types.d.ts +6 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/inspectors.js +31 -3
- package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/inspectors.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-scene-workflow.d.ts +5 -2
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-scene-workflow.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-scene-workflow.js +40 -4
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-scene-workflow.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/plugin.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/plugin.js +116 -3
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/plugin.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-adapter.d.ts +2 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-adapter.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-adapter.js +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-adapter.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-asset-authoring.d.ts +17 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-asset-authoring.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-asset-authoring.js +50 -2
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-asset-authoring.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-authoring-api.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-authoring-api.js +7 -5
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-authoring-api.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-scene-authoring.d.ts +5 -6
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-scene-authoring.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-scene-authoring.js +31 -17
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-scene-authoring.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/types.d.ts +6 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/package.json +6 -6
- package/node_modules/@fps-games/editor-protocol/dist/agent-bridge.d.ts +417 -2
- package/node_modules/@fps-games/editor-protocol/dist/agent-bridge.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-protocol/dist/agent-bridge.js +692 -2
- package/node_modules/@fps-games/editor-protocol/dist/agent-bridge.js.map +1 -1
- package/node_modules/@fps-games/editor-protocol/dist/editor-diagnostics.d.ts +55 -0
- package/node_modules/@fps-games/editor-protocol/dist/editor-diagnostics.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-protocol/dist/editor-diagnostics.js +2 -0
- package/node_modules/@fps-games/editor-protocol/dist/editor-diagnostics.js.map +1 -0
- package/node_modules/@fps-games/editor-protocol/dist/index.d.ts +3 -18
- package/node_modules/@fps-games/editor-protocol/dist/index.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-protocol/dist/index.js +1 -0
- package/node_modules/@fps-games/editor-protocol/dist/index.js.map +1 -1
- package/node_modules/@fps-games/editor-protocol/package.json +2 -2
- package/node_modules/@fps-games/editor-tooling/dist/package-metadata-node.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-tooling/dist/package-metadata-node.js +5 -0
- package/node_modules/@fps-games/editor-tooling/dist/package-metadata-node.js.map +1 -1
- package/node_modules/@fps-games/editor-tooling/dist/vite.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-tooling/dist/vite.js +151 -5
- package/node_modules/@fps-games/editor-tooling/dist/vite.js.map +1 -1
- package/node_modules/@fps-games/editor-tooling/package.json +3 -3
- package/node_modules/@fps-games/editor-ui/dist/editor-ui-controls.d.ts +107 -0
- package/node_modules/@fps-games/editor-ui/dist/editor-ui-controls.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-ui/dist/editor-ui-controls.js +770 -0
- package/node_modules/@fps-games/editor-ui/dist/editor-ui-controls.js.map +1 -0
- package/node_modules/@fps-games/editor-ui/dist/editor-ui-layer-host.d.ts +21 -0
- package/node_modules/@fps-games/editor-ui/dist/editor-ui-layer-host.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-ui/dist/editor-ui-layer-host.js +172 -0
- package/node_modules/@fps-games/editor-ui/dist/editor-ui-layer-host.js.map +1 -0
- package/node_modules/@fps-games/editor-ui/dist/editor-ui-shell.d.ts +14 -0
- package/node_modules/@fps-games/editor-ui/dist/editor-ui-shell.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-ui/dist/editor-ui-shell.js +32 -0
- package/node_modules/@fps-games/editor-ui/dist/editor-ui-shell.js.map +1 -0
- package/node_modules/@fps-games/editor-ui/dist/editor-ui-theme.d.ts +3 -0
- package/node_modules/@fps-games/editor-ui/dist/editor-ui-theme.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-ui/dist/editor-ui-theme.js +653 -0
- package/node_modules/@fps-games/editor-ui/dist/editor-ui-theme.js.map +1 -0
- package/node_modules/@fps-games/editor-ui/dist/gallery.d.ts +3 -0
- package/node_modules/@fps-games/editor-ui/dist/gallery.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-ui/dist/gallery.js +3 -0
- package/node_modules/@fps-games/editor-ui/dist/gallery.js.map +1 -0
- package/node_modules/@fps-games/editor-ui/dist/index.d.ts +5 -0
- package/node_modules/@fps-games/editor-ui/dist/index.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-ui/dist/index.js +5 -0
- package/node_modules/@fps-games/editor-ui/dist/index.js.map +1 -0
- package/node_modules/@fps-games/editor-ui/dist/inspector-property-gallery-model.d.ts +7 -0
- package/node_modules/@fps-games/editor-ui/dist/inspector-property-gallery-model.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-ui/dist/inspector-property-gallery-model.js +29 -0
- package/node_modules/@fps-games/editor-ui/dist/inspector-property-gallery-model.js.map +1 -0
- package/node_modules/@fps-games/editor-ui/dist/inspector-property-gallery-styles.d.ts +2 -0
- package/node_modules/@fps-games/editor-ui/dist/inspector-property-gallery-styles.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-ui/dist/inspector-property-gallery-styles.js +95 -0
- package/node_modules/@fps-games/editor-ui/dist/inspector-property-gallery-styles.js.map +1 -0
- package/node_modules/@fps-games/editor-ui/dist/inspector-property-gallery.d.ts +28 -0
- package/node_modules/@fps-games/editor-ui/dist/inspector-property-gallery.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-ui/dist/inspector-property-gallery.js +387 -0
- package/node_modules/@fps-games/editor-ui/dist/inspector-property-gallery.js.map +1 -0
- package/node_modules/@fps-games/editor-ui/package.json +23 -0
- package/node_modules/@fps-games/playable-assets/package.json +1 -1
- package/node_modules/@fps-games/playable-contracts/dist/index.d.ts +1 -0
- package/node_modules/@fps-games/playable-contracts/dist/index.d.ts.map +1 -1
- package/node_modules/@fps-games/playable-contracts/dist/index.js +1 -0
- package/node_modules/@fps-games/playable-contracts/dist/index.js.map +1 -1
- package/node_modules/@fps-games/playable-contracts/dist/material-owner.d.ts +116 -0
- package/node_modules/@fps-games/playable-contracts/dist/material-owner.d.ts.map +1 -0
- package/node_modules/@fps-games/playable-contracts/dist/material-owner.js +403 -0
- package/node_modules/@fps-games/playable-contracts/dist/material-owner.js.map +1 -0
- package/node_modules/@fps-games/playable-contracts/package.json +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/index.d.ts +3 -0
- package/node_modules/@fps-games/playable-rendering/dist/index.d.ts.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/index.js +3 -0
- package/node_modules/@fps-games/playable-rendering/dist/index.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/rendering-profile-validation.js +5 -25
- package/node_modules/@fps-games/playable-rendering/dist/rendering-profile-validation.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/runtime.d.ts +3 -0
- package/node_modules/@fps-games/playable-rendering/dist/runtime.d.ts.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/runtime.js +3 -0
- package/node_modules/@fps-games/playable-rendering/dist/runtime.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/shadow-map-experiment-depth.d.ts +61 -0
- package/node_modules/@fps-games/playable-rendering/dist/shadow-map-experiment-depth.d.ts.map +1 -0
- package/node_modules/@fps-games/playable-rendering/dist/shadow-map-experiment-depth.js +176 -0
- package/node_modules/@fps-games/playable-rendering/dist/shadow-map-experiment-depth.js.map +1 -0
- package/node_modules/@fps-games/playable-rendering/dist/shadow-map-experiment-lifecycle.d.ts +84 -0
- package/node_modules/@fps-games/playable-rendering/dist/shadow-map-experiment-lifecycle.d.ts.map +1 -0
- package/node_modules/@fps-games/playable-rendering/dist/shadow-map-experiment-lifecycle.js +362 -0
- package/node_modules/@fps-games/playable-rendering/dist/shadow-map-experiment-lifecycle.js.map +1 -0
- package/node_modules/@fps-games/playable-rendering/dist/shadow-map-experiment.d.ts +167 -0
- package/node_modules/@fps-games/playable-rendering/dist/shadow-map-experiment.d.ts.map +1 -0
- package/node_modules/@fps-games/playable-rendering/dist/shadow-map-experiment.js +484 -0
- package/node_modules/@fps-games/playable-rendering/dist/shadow-map-experiment.js.map +1 -0
- package/node_modules/@fps-games/playable-rendering/package.json +2 -2
- package/node_modules/@fps-games/playable-runtime/dist/compiled-scene-data.d.ts +5 -0
- package/node_modules/@fps-games/playable-runtime/dist/compiled-scene-data.d.ts.map +1 -1
- package/node_modules/@fps-games/playable-runtime/dist/compiled-scene-data.js +1 -0
- package/node_modules/@fps-games/playable-runtime/dist/compiled-scene-data.js.map +1 -1
- package/node_modules/@fps-games/playable-runtime/package.json +12 -12
- package/node_modules/@fps-games/playable-runtime-data/package.json +4 -4
- package/node_modules/@fps-games/playable-scene/package.json +2 -2
- package/node_modules/@fps-games/plugin-api/package.json +1 -1
- package/node_modules/@fps-games/plugin-assets/dist/version.d.ts +1 -1
- package/node_modules/@fps-games/plugin-assets/dist/version.js +1 -1
- package/node_modules/@fps-games/plugin-assets/dist/version.js.map +1 -1
- package/node_modules/@fps-games/plugin-assets/package.json +5 -5
- package/node_modules/@fps-games/plugin-hierarchy/dist/editor.d.ts +6 -0
- package/node_modules/@fps-games/plugin-hierarchy/dist/editor.d.ts.map +1 -0
- package/node_modules/@fps-games/plugin-hierarchy/dist/editor.js +16 -0
- package/node_modules/@fps-games/plugin-hierarchy/dist/editor.js.map +1 -0
- package/node_modules/@fps-games/plugin-hierarchy/dist/integration.d.ts +7 -0
- package/node_modules/@fps-games/plugin-hierarchy/dist/integration.d.ts.map +1 -0
- package/node_modules/@fps-games/plugin-hierarchy/dist/integration.js +47 -0
- package/node_modules/@fps-games/plugin-hierarchy/dist/integration.js.map +1 -0
- package/node_modules/@fps-games/plugin-hierarchy/dist/kernel.d.ts +306 -0
- package/node_modules/@fps-games/plugin-hierarchy/dist/kernel.d.ts.map +1 -0
- package/node_modules/@fps-games/plugin-hierarchy/dist/kernel.js +1237 -0
- package/node_modules/@fps-games/plugin-hierarchy/dist/kernel.js.map +1 -0
- package/node_modules/@fps-games/plugin-hierarchy/dist/reference.d.ts +8 -0
- package/node_modules/@fps-games/plugin-hierarchy/dist/reference.d.ts.map +1 -0
- package/node_modules/@fps-games/plugin-hierarchy/dist/reference.js +32 -0
- package/node_modules/@fps-games/plugin-hierarchy/dist/reference.js.map +1 -0
- package/node_modules/@fps-games/plugin-hierarchy/dist/version.d.ts +2 -0
- package/node_modules/@fps-games/plugin-hierarchy/dist/version.d.ts.map +1 -0
- package/node_modules/@fps-games/plugin-hierarchy/dist/version.js +2 -0
- package/node_modules/@fps-games/plugin-hierarchy/dist/version.js.map +1 -0
- package/node_modules/@fps-games/plugin-hierarchy/package.json +57 -0
- package/node_modules/@fps-games/plugin-host/package.json +2 -2
- package/node_modules/@fps-games/plugin-markers/dist/version.d.ts +1 -1
- package/node_modules/@fps-games/plugin-markers/dist/version.js +1 -1
- package/node_modules/@fps-games/plugin-markers/dist/version.js.map +1 -1
- package/node_modules/@fps-games/plugin-markers/package.json +5 -5
- package/node_modules/@fps-games/plugin-materials/dist/version.d.ts +1 -1
- package/node_modules/@fps-games/plugin-materials/dist/version.js +1 -1
- package/node_modules/@fps-games/plugin-materials/dist/version.js.map +1 -1
- package/node_modules/@fps-games/plugin-materials/package.json +5 -5
- package/node_modules/@fps-games/plugin-rendering/dist/version.d.ts +1 -1
- package/node_modules/@fps-games/plugin-rendering/dist/version.js +1 -1
- package/node_modules/@fps-games/plugin-rendering/dist/version.js.map +1 -1
- package/node_modules/@fps-games/plugin-rendering/package.json +5 -5
- package/node_modules/@fps-games/plugin-scene/dist/version.d.ts +1 -1
- package/node_modules/@fps-games/plugin-scene/dist/version.js +1 -1
- package/node_modules/@fps-games/plugin-scene/dist/version.js.map +1 -1
- package/node_modules/@fps-games/plugin-scene/package.json +5 -5
- package/node_modules/@fps-games/plugin-shadow-map-experiment/dist/reference.d.ts +8 -0
- package/node_modules/@fps-games/plugin-shadow-map-experiment/dist/reference.d.ts.map +1 -0
- package/node_modules/@fps-games/plugin-shadow-map-experiment/dist/reference.js +35 -0
- package/node_modules/@fps-games/plugin-shadow-map-experiment/dist/reference.js.map +1 -0
- package/node_modules/@fps-games/plugin-shadow-map-experiment/dist/runtime.d.ts +11 -0
- package/node_modules/@fps-games/plugin-shadow-map-experiment/dist/runtime.d.ts.map +1 -0
- package/node_modules/@fps-games/plugin-shadow-map-experiment/dist/runtime.js +14 -0
- package/node_modules/@fps-games/plugin-shadow-map-experiment/dist/runtime.js.map +1 -0
- package/node_modules/@fps-games/plugin-shadow-map-experiment/dist/version.d.ts +2 -0
- package/node_modules/@fps-games/plugin-shadow-map-experiment/dist/version.d.ts.map +1 -0
- package/node_modules/@fps-games/plugin-shadow-map-experiment/dist/version.js +2 -0
- package/node_modules/@fps-games/plugin-shadow-map-experiment/dist/version.js.map +1 -0
- package/node_modules/@fps-games/plugin-shadow-map-experiment/package.json +53 -0
- package/node_modules/@fps-games/plugin-shadows/dist/version.d.ts +1 -1
- package/node_modules/@fps-games/plugin-shadows/dist/version.js +1 -1
- package/node_modules/@fps-games/plugin-shadows/dist/version.js.map +1 -1
- package/node_modules/@fps-games/plugin-shadows/package.json +7 -7
- package/node_modules/@playcanvas/observer/LICENSE +19 -0
- package/node_modules/@playcanvas/observer/README.md +72 -0
- package/node_modules/@playcanvas/observer/dist/index.cjs +2033 -0
- package/node_modules/@playcanvas/observer/dist/index.js +2039 -0
- package/node_modules/@playcanvas/observer/dist/index.mjs +2026 -0
- package/node_modules/@playcanvas/observer/package.json +78 -0
- package/node_modules/@playcanvas/observer/types/event-handle.d.ts +41 -0
- package/node_modules/@playcanvas/observer/types/events.d.ts +162 -0
- package/node_modules/@playcanvas/observer/types/history.d.ts +123 -0
- package/node_modules/@playcanvas/observer/types/index.d.ts +15 -0
- package/node_modules/@playcanvas/observer/types/observer-history.d.ts +32 -0
- package/node_modules/@playcanvas/observer/types/observer-list.d.ts +39 -0
- package/node_modules/@playcanvas/observer/types/observer.d.ts +157 -0
- package/node_modules/@playcanvas/observer/types/utils.d.ts +33 -0
- package/node_modules/@playcanvas/pcui/LICENSE +19 -0
- package/node_modules/@playcanvas/pcui/README.md +164 -0
- package/node_modules/@playcanvas/pcui/dist/module/node_modules/playcanvas/build/playcanvas/src/core/math/constants.mjs +6 -0
- package/node_modules/@playcanvas/pcui/dist/module/node_modules/playcanvas/build/playcanvas/src/core/math/curve-evaluator.mjs +119 -0
- package/node_modules/@playcanvas/pcui/dist/module/node_modules/playcanvas/build/playcanvas/src/core/math/curve-set.mjs +82 -0
- package/node_modules/@playcanvas/pcui/dist/module/node_modules/playcanvas/build/playcanvas/src/core/math/curve.mjs +92 -0
- package/node_modules/@playcanvas/pcui/dist/module/node_modules/playcanvas/build/playcanvas/src/core/math/math.mjs +105 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/Math/color-value.mjs +77 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/binding/BindingBase/index.mjs +215 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/binding/BindingElementToObservers/index.mjs +297 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/binding/BindingObserversToElement/index.mjs +110 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/binding/BindingTwoWay/index.mjs +113 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/class.mjs +19 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/ArrayInput/index.mjs +498 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/BooleanInput/index.mjs +122 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/Button/index.mjs +119 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/Canvas/index.mjs +104 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/Code/index.mjs +43 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/ColorPicker/index.mjs +619 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/Container/index.mjs +642 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/Divider/index.mjs +20 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/Element/index.mjs +829 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/GradientPicker/index.mjs +1136 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/GridView/index.mjs +448 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/GridViewItem/index.mjs +152 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/InfoBox/index.mjs +90 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/InputElement/index.mjs +186 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/Label/index.mjs +124 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/LabelGroup/index.mjs +74 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/Menu/index.mjs +174 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/MenuItem/index.mjs +223 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/NumericInput/index.mjs +400 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/Overlay/index.mjs +108 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/Panel/index.mjs +400 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/Progress/index.mjs +45 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/RadioButton/index.mjs +113 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/SelectInput/index.mjs +1085 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/SliderInput/index.mjs +333 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/Spinner/index.mjs +34 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/TextAreaInput/index.mjs +50 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/TextInput/index.mjs +98 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/TreeView/index.mjs +1131 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/TreeViewItem/index.mjs +500 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/components/VectorInput/index.mjs +366 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/helpers/search.mjs +194 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/helpers/utils.mjs +43 -0
- package/node_modules/@playcanvas/pcui/dist/module/src/index.mjs +56 -0
- package/node_modules/@playcanvas/pcui/dist/pcui-theme-green.scss +2798 -0
- package/node_modules/@playcanvas/pcui/dist/pcui-theme-grey.scss +2798 -0
- package/node_modules/@playcanvas/pcui/package.json +150 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/node_modules/playcanvas/build/playcanvas/src/core/math/constants.mjs +6 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/node_modules/playcanvas/build/playcanvas/src/core/math/curve-evaluator.mjs +119 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/node_modules/playcanvas/build/playcanvas/src/core/math/curve-set.mjs +82 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/node_modules/playcanvas/build/playcanvas/src/core/math/curve.mjs +92 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/node_modules/playcanvas/build/playcanvas/src/core/math/math.mjs +105 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/Math/color-value.mjs +77 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/binding/BindingBase/index.mjs +215 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/binding/BindingElementToObservers/index.mjs +297 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/binding/BindingObserversToElement/index.mjs +110 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/binding/BindingTwoWay/index.mjs +113 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/class.mjs +19 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/ArrayInput/component.mjs +11 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/ArrayInput/index.mjs +498 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/BooleanInput/component.mjs +11 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/BooleanInput/index.mjs +122 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Button/component.mjs +16 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Button/index.mjs +119 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Canvas/component.mjs +16 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Canvas/index.mjs +104 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Code/component.mjs +11 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Code/index.mjs +43 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/ColorPicker/component.mjs +16 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/ColorPicker/index.mjs +619 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Container/component.mjs +36 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Container/index.mjs +642 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Divider/component.mjs +11 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Divider/index.mjs +20 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Element/component.mjs +107 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Element/index.mjs +829 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/GradientPicker/component.mjs +16 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/GradientPicker/index.mjs +1136 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/GridView/component.mjs +38 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/GridView/index.mjs +448 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/GridViewItem/component.mjs +11 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/GridViewItem/index.mjs +152 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/InfoBox/component.mjs +16 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/InfoBox/index.mjs +90 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/InputElement/index.mjs +186 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Label/component.mjs +16 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Label/index.mjs +124 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/LabelGroup/component.mjs +42 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/LabelGroup/index.mjs +74 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Menu/component.mjs +23 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Menu/index.mjs +174 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/MenuItem/index.mjs +223 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/NumericInput/component.mjs +11 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/NumericInput/index.mjs +400 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Overlay/component.mjs +11 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Overlay/index.mjs +108 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Panel/component.mjs +32 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Panel/index.mjs +400 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Progress/component.mjs +11 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Progress/index.mjs +45 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/RadioButton/component.mjs +11 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/RadioButton/index.mjs +113 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/SelectInput/component.mjs +21 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/SelectInput/index.mjs +1085 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/SliderInput/component.mjs +12 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/SliderInput/index.mjs +333 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Spinner/component.mjs +16 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/Spinner/index.mjs +34 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/TextAreaInput/component.mjs +11 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/TextAreaInput/index.mjs +50 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/TextInput/component.mjs +23 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/TextInput/index.mjs +98 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/TreeView/component.mjs +52 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/TreeView/index.mjs +1131 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/TreeViewItem/component.mjs +33 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/TreeViewItem/index.mjs +500 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/VectorInput/component.mjs +11 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/components/VectorInput/index.mjs +366 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/helpers/search.mjs +194 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/helpers/utils.mjs +43 -0
- package/node_modules/@playcanvas/pcui/react/dist/module/src/index.mjs +39 -0
- package/node_modules/@playcanvas/pcui/react/package.json +18 -0
- package/node_modules/@playcanvas/pcui/react/types/Math/color-value.d.ts +3 -0
- package/node_modules/@playcanvas/pcui/react/types/binding/BindingBase/index.d.ts +178 -0
- package/node_modules/@playcanvas/pcui/react/types/binding/BindingElementToObservers/index.d.ts +24 -0
- package/node_modules/@playcanvas/pcui/react/types/binding/BindingObserversToElement/index.d.ts +40 -0
- package/node_modules/@playcanvas/pcui/react/types/binding/BindingTwoWay/index.d.ts +54 -0
- package/node_modules/@playcanvas/pcui/react/types/binding/index.d.ts +5 -0
- package/node_modules/@playcanvas/pcui/react/types/class.d.ts +17 -0
- package/node_modules/@playcanvas/pcui/react/types/components/ArrayInput/component.d.ts +9 -0
- package/node_modules/@playcanvas/pcui/react/types/components/ArrayInput/index.d.ts +140 -0
- package/node_modules/@playcanvas/pcui/react/types/components/BooleanInput/component.d.ts +9 -0
- package/node_modules/@playcanvas/pcui/react/types/components/BooleanInput/index.d.ts +41 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Button/component.d.ts +11 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Button/index.d.ts +75 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Canvas/component.d.ts +11 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Canvas/index.d.ts +61 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Code/component.d.ts +9 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Code/index.d.ts +33 -0
- package/node_modules/@playcanvas/pcui/react/types/components/ColorPicker/component.d.ts +11 -0
- package/node_modules/@playcanvas/pcui/react/types/components/ColorPicker/index.d.ts +99 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Container/component.d.ts +15 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Container/index.d.ts +292 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Divider/component.d.ts +10 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Divider/index.d.ts +13 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Element/component.d.ts +23 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Element/index.d.ts +671 -0
- package/node_modules/@playcanvas/pcui/react/types/components/GradientPicker/component.d.ts +11 -0
- package/node_modules/@playcanvas/pcui/react/types/components/GradientPicker/index.d.ts +152 -0
- package/node_modules/@playcanvas/pcui/react/types/components/GridView/component.d.ts +14 -0
- package/node_modules/@playcanvas/pcui/react/types/components/GridView/index.d.ts +103 -0
- package/node_modules/@playcanvas/pcui/react/types/components/GridViewItem/component.d.ts +9 -0
- package/node_modules/@playcanvas/pcui/react/types/components/GridViewItem/index.d.ts +82 -0
- package/node_modules/@playcanvas/pcui/react/types/components/InfoBox/component.d.ts +11 -0
- package/node_modules/@playcanvas/pcui/react/types/components/InfoBox/index.d.ts +71 -0
- package/node_modules/@playcanvas/pcui/react/types/components/InputElement/index.d.ts +84 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Label/component.d.ts +11 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Label/index.d.ts +85 -0
- package/node_modules/@playcanvas/pcui/react/types/components/LabelGroup/component.d.ts +10 -0
- package/node_modules/@playcanvas/pcui/react/types/components/LabelGroup/index.d.ts +62 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Menu/component.d.ts +14 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Menu/index.d.ts +70 -0
- package/node_modules/@playcanvas/pcui/react/types/components/MenuItem/index.d.ts +139 -0
- package/node_modules/@playcanvas/pcui/react/types/components/NumericInput/component.d.ts +9 -0
- package/node_modules/@playcanvas/pcui/react/types/components/NumericInput/index.d.ts +173 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Overlay/component.d.ts +9 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Overlay/index.d.ts +53 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Panel/component.d.ts +16 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Panel/index.d.ts +178 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Progress/component.d.ts +9 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Progress/index.d.ts +33 -0
- package/node_modules/@playcanvas/pcui/react/types/components/RadioButton/component.d.ts +9 -0
- package/node_modules/@playcanvas/pcui/react/types/components/RadioButton/index.d.ts +33 -0
- package/node_modules/@playcanvas/pcui/react/types/components/SelectInput/component.d.ts +12 -0
- package/node_modules/@playcanvas/pcui/react/types/components/SelectInput/index.d.ts +278 -0
- package/node_modules/@playcanvas/pcui/react/types/components/SliderInput/component.d.ts +10 -0
- package/node_modules/@playcanvas/pcui/react/types/components/SliderInput/index.d.ts +133 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Spinner/component.d.ts +11 -0
- package/node_modules/@playcanvas/pcui/react/types/components/Spinner/index.d.ts +27 -0
- package/node_modules/@playcanvas/pcui/react/types/components/TextAreaInput/component.d.ts +9 -0
- package/node_modules/@playcanvas/pcui/react/types/components/TextAreaInput/index.d.ts +24 -0
- package/node_modules/@playcanvas/pcui/react/types/components/TextInput/component.d.ts +12 -0
- package/node_modules/@playcanvas/pcui/react/types/components/TextInput/index.d.ts +40 -0
- package/node_modules/@playcanvas/pcui/react/types/components/TreeView/component.d.ts +17 -0
- package/node_modules/@playcanvas/pcui/react/types/components/TreeView/index.d.ts +359 -0
- package/node_modules/@playcanvas/pcui/react/types/components/TreeViewItem/component.d.ts +13 -0
- package/node_modules/@playcanvas/pcui/react/types/components/TreeViewItem/index.d.ts +224 -0
- package/node_modules/@playcanvas/pcui/react/types/components/VectorInput/component.d.ts +9 -0
- package/node_modules/@playcanvas/pcui/react/types/components/VectorInput/index.d.ts +176 -0
- package/node_modules/@playcanvas/pcui/react/types/components/components.d.ts +30 -0
- package/node_modules/@playcanvas/pcui/react/types/components/index.d.ts +32 -0
- package/node_modules/@playcanvas/pcui/react/types/helpers/search.d.ts +31 -0
- package/node_modules/@playcanvas/pcui/react/types/helpers/utils.d.ts +2 -0
- package/node_modules/@playcanvas/pcui/react/types/index.d.ts +4 -0
- package/node_modules/@playcanvas/pcui/styles/dist/index.mjs +11 -0
- package/node_modules/@playcanvas/pcui/styles/package.json +17 -0
- package/node_modules/@playcanvas/pcui/types/Math/color-value.d.ts +3 -0
- package/node_modules/@playcanvas/pcui/types/binding/BindingBase/index.d.ts +178 -0
- package/node_modules/@playcanvas/pcui/types/binding/BindingElementToObservers/index.d.ts +24 -0
- package/node_modules/@playcanvas/pcui/types/binding/BindingObserversToElement/index.d.ts +40 -0
- package/node_modules/@playcanvas/pcui/types/binding/BindingTwoWay/index.d.ts +54 -0
- package/node_modules/@playcanvas/pcui/types/binding/index.d.ts +5 -0
- package/node_modules/@playcanvas/pcui/types/class.d.ts +17 -0
- package/node_modules/@playcanvas/pcui/types/components/ArrayInput/index.d.ts +140 -0
- package/node_modules/@playcanvas/pcui/types/components/BooleanInput/index.d.ts +41 -0
- package/node_modules/@playcanvas/pcui/types/components/Button/index.d.ts +75 -0
- package/node_modules/@playcanvas/pcui/types/components/Canvas/index.d.ts +61 -0
- package/node_modules/@playcanvas/pcui/types/components/Code/index.d.ts +33 -0
- package/node_modules/@playcanvas/pcui/types/components/ColorPicker/index.d.ts +99 -0
- package/node_modules/@playcanvas/pcui/types/components/Container/index.d.ts +292 -0
- package/node_modules/@playcanvas/pcui/types/components/Divider/index.d.ts +13 -0
- package/node_modules/@playcanvas/pcui/types/components/Element/index.d.ts +671 -0
- package/node_modules/@playcanvas/pcui/types/components/GradientPicker/index.d.ts +152 -0
- package/node_modules/@playcanvas/pcui/types/components/GridView/index.d.ts +103 -0
- package/node_modules/@playcanvas/pcui/types/components/GridViewItem/index.d.ts +82 -0
- package/node_modules/@playcanvas/pcui/types/components/InfoBox/index.d.ts +71 -0
- package/node_modules/@playcanvas/pcui/types/components/InputElement/index.d.ts +84 -0
- package/node_modules/@playcanvas/pcui/types/components/Label/index.d.ts +85 -0
- package/node_modules/@playcanvas/pcui/types/components/LabelGroup/index.d.ts +62 -0
- package/node_modules/@playcanvas/pcui/types/components/Menu/index.d.ts +70 -0
- package/node_modules/@playcanvas/pcui/types/components/MenuItem/index.d.ts +139 -0
- package/node_modules/@playcanvas/pcui/types/components/NumericInput/index.d.ts +173 -0
- package/node_modules/@playcanvas/pcui/types/components/Overlay/index.d.ts +53 -0
- package/node_modules/@playcanvas/pcui/types/components/Panel/index.d.ts +178 -0
- package/node_modules/@playcanvas/pcui/types/components/Progress/index.d.ts +33 -0
- package/node_modules/@playcanvas/pcui/types/components/RadioButton/index.d.ts +33 -0
- package/node_modules/@playcanvas/pcui/types/components/SelectInput/index.d.ts +278 -0
- package/node_modules/@playcanvas/pcui/types/components/SliderInput/index.d.ts +133 -0
- package/node_modules/@playcanvas/pcui/types/components/Spinner/index.d.ts +27 -0
- package/node_modules/@playcanvas/pcui/types/components/TextAreaInput/index.d.ts +24 -0
- package/node_modules/@playcanvas/pcui/types/components/TextInput/index.d.ts +40 -0
- package/node_modules/@playcanvas/pcui/types/components/TreeView/index.d.ts +359 -0
- package/node_modules/@playcanvas/pcui/types/components/TreeViewItem/index.d.ts +224 -0
- package/node_modules/@playcanvas/pcui/types/components/VectorInput/index.d.ts +176 -0
- package/node_modules/@playcanvas/pcui/types/components/index.d.ts +32 -0
- package/node_modules/@playcanvas/pcui/types/helpers/search.d.ts +31 -0
- package/node_modules/@playcanvas/pcui/types/helpers/utils.d.ts +2 -0
- package/node_modules/@playcanvas/pcui/types/index.d.ts +20 -0
- package/node_modules/babylonjs-gltf2interface/babylon.glTF2Interface.d.ts +1655 -0
- package/node_modules/babylonjs-gltf2interface/license.md +71 -0
- package/node_modules/babylonjs-gltf2interface/package.json +26 -0
- package/package.json +31 -19
- package/dist/editor-plugin-hierarchy-command.d.ts +0 -19
- package/dist/editor-plugin-hierarchy-command.d.ts.map +0 -1
- package/dist/editor-plugin-hierarchy-command.js +0 -119
- package/dist/editor-plugin-hierarchy-command.js.map +0 -1
- package/node_modules/@babel/helper-string-parser/lib/index.js.map +0 -1
- package/node_modules/@babel/helper-validator-identifier/lib/identifier.js.map +0 -1
- package/node_modules/@babel/helper-validator-identifier/lib/index.js.map +0 -1
- package/node_modules/@babel/helper-validator-identifier/lib/keyword.js.map +0 -1
- package/node_modules/@babel/parser/lib/index.js.map +0 -1
- package/node_modules/@babel/types/lib/asserts/assertNode.js.map +0 -1
- package/node_modules/@babel/types/lib/asserts/generated/index.js.map +0 -1
- package/node_modules/@babel/types/lib/ast-types/generated/index.js.map +0 -1
- package/node_modules/@babel/types/lib/builders/flow/createFlowUnionType.js.map +0 -1
- package/node_modules/@babel/types/lib/builders/flow/createTypeAnnotationBasedOnTypeof.js.map +0 -1
- package/node_modules/@babel/types/lib/builders/generated/index.js.map +0 -1
- package/node_modules/@babel/types/lib/builders/generated/lowercase.js.map +0 -1
- package/node_modules/@babel/types/lib/builders/generated/uppercase.js.map +0 -1
- package/node_modules/@babel/types/lib/builders/productions.js.map +0 -1
- package/node_modules/@babel/types/lib/builders/react/buildChildren.js.map +0 -1
- package/node_modules/@babel/types/lib/builders/typescript/createTSUnionType.js.map +0 -1
- package/node_modules/@babel/types/lib/builders/validateNode.js.map +0 -1
- package/node_modules/@babel/types/lib/clone/clone.js.map +0 -1
- package/node_modules/@babel/types/lib/clone/cloneDeep.js.map +0 -1
- package/node_modules/@babel/types/lib/clone/cloneDeepWithoutLoc.js.map +0 -1
- package/node_modules/@babel/types/lib/clone/cloneNode.js.map +0 -1
- package/node_modules/@babel/types/lib/clone/cloneWithoutLoc.js.map +0 -1
- package/node_modules/@babel/types/lib/comments/addComment.js.map +0 -1
- package/node_modules/@babel/types/lib/comments/addComments.js.map +0 -1
- package/node_modules/@babel/types/lib/comments/inheritInnerComments.js.map +0 -1
- package/node_modules/@babel/types/lib/comments/inheritLeadingComments.js.map +0 -1
- package/node_modules/@babel/types/lib/comments/inheritTrailingComments.js.map +0 -1
- package/node_modules/@babel/types/lib/comments/inheritsComments.js.map +0 -1
- package/node_modules/@babel/types/lib/comments/removeComments.js.map +0 -1
- package/node_modules/@babel/types/lib/constants/generated/index.js.map +0 -1
- package/node_modules/@babel/types/lib/constants/index.js.map +0 -1
- package/node_modules/@babel/types/lib/converters/ensureBlock.js.map +0 -1
- package/node_modules/@babel/types/lib/converters/gatherSequenceExpressions.js.map +0 -1
- package/node_modules/@babel/types/lib/converters/toBindingIdentifierName.js.map +0 -1
- package/node_modules/@babel/types/lib/converters/toBlock.js.map +0 -1
- package/node_modules/@babel/types/lib/converters/toComputedKey.js.map +0 -1
- package/node_modules/@babel/types/lib/converters/toExpression.js.map +0 -1
- package/node_modules/@babel/types/lib/converters/toIdentifier.js.map +0 -1
- package/node_modules/@babel/types/lib/converters/toKeyAlias.js.map +0 -1
- package/node_modules/@babel/types/lib/converters/toSequenceExpression.js.map +0 -1
- package/node_modules/@babel/types/lib/converters/toStatement.js.map +0 -1
- package/node_modules/@babel/types/lib/converters/valueToNode.js.map +0 -1
- package/node_modules/@babel/types/lib/definitions/core.js.map +0 -1
- package/node_modules/@babel/types/lib/definitions/deprecated-aliases.js.map +0 -1
- package/node_modules/@babel/types/lib/definitions/experimental.js.map +0 -1
- package/node_modules/@babel/types/lib/definitions/flow.js.map +0 -1
- package/node_modules/@babel/types/lib/definitions/index.js.map +0 -1
- package/node_modules/@babel/types/lib/definitions/jsx.js.map +0 -1
- package/node_modules/@babel/types/lib/definitions/misc.js.map +0 -1
- package/node_modules/@babel/types/lib/definitions/placeholders.js.map +0 -1
- package/node_modules/@babel/types/lib/definitions/typescript.js.map +0 -1
- package/node_modules/@babel/types/lib/definitions/utils.js.map +0 -1
- package/node_modules/@babel/types/lib/index.js.map +0 -1
- package/node_modules/@babel/types/lib/modifications/appendToMemberExpression.js.map +0 -1
- package/node_modules/@babel/types/lib/modifications/flow/removeTypeDuplicates.js.map +0 -1
- package/node_modules/@babel/types/lib/modifications/inherits.js.map +0 -1
- package/node_modules/@babel/types/lib/modifications/prependToMemberExpression.js.map +0 -1
- package/node_modules/@babel/types/lib/modifications/removeProperties.js.map +0 -1
- package/node_modules/@babel/types/lib/modifications/removePropertiesDeep.js.map +0 -1
- package/node_modules/@babel/types/lib/modifications/typescript/removeTypeDuplicates.js.map +0 -1
- package/node_modules/@babel/types/lib/retrievers/getAssignmentIdentifiers.js.map +0 -1
- package/node_modules/@babel/types/lib/retrievers/getBindingIdentifiers.js.map +0 -1
- package/node_modules/@babel/types/lib/retrievers/getFunctionName.js.map +0 -1
- package/node_modules/@babel/types/lib/retrievers/getOuterBindingIdentifiers.js.map +0 -1
- package/node_modules/@babel/types/lib/traverse/traverse.js.map +0 -1
- package/node_modules/@babel/types/lib/traverse/traverseFast.js.map +0 -1
- package/node_modules/@babel/types/lib/utils/deprecationWarning.js.map +0 -1
- package/node_modules/@babel/types/lib/utils/inherit.js.map +0 -1
- package/node_modules/@babel/types/lib/utils/react/cleanJSXElementLiteralChild.js.map +0 -1
- package/node_modules/@babel/types/lib/utils/shallowEqual.js.map +0 -1
- package/node_modules/@babel/types/lib/validators/buildMatchMemberExpression.js.map +0 -1
- package/node_modules/@babel/types/lib/validators/generated/index.js.map +0 -1
- package/node_modules/@babel/types/lib/validators/is.js.map +0 -1
- package/node_modules/@babel/types/lib/validators/isBinding.js.map +0 -1
- package/node_modules/@babel/types/lib/validators/isBlockScoped.js.map +0 -1
- package/node_modules/@babel/types/lib/validators/isImmutable.js.map +0 -1
- package/node_modules/@babel/types/lib/validators/isLet.js.map +0 -1
- package/node_modules/@babel/types/lib/validators/isNode.js.map +0 -1
- package/node_modules/@babel/types/lib/validators/isNodesEquivalent.js.map +0 -1
- package/node_modules/@babel/types/lib/validators/isPlaceholderType.js.map +0 -1
- package/node_modules/@babel/types/lib/validators/isReferenced.js.map +0 -1
- package/node_modules/@babel/types/lib/validators/isScope.js.map +0 -1
- package/node_modules/@babel/types/lib/validators/isSpecifierDefault.js.map +0 -1
- package/node_modules/@babel/types/lib/validators/isType.js.map +0 -1
- package/node_modules/@babel/types/lib/validators/isValidES3Identifier.js.map +0 -1
- package/node_modules/@babel/types/lib/validators/isValidIdentifier.js.map +0 -1
- package/node_modules/@babel/types/lib/validators/isVar.js.map +0 -1
- package/node_modules/@babel/types/lib/validators/matchesPattern.js.map +0 -1
- package/node_modules/@babel/types/lib/validators/react/isCompatTag.js.map +0 -1
- package/node_modules/@babel/types/lib/validators/react/isReactComponent.js.map +0 -1
- package/node_modules/@babel/types/lib/validators/validate.js.map +0 -1
- package/node_modules/@fps-games/editor-babylon/dist/prefab-comparison-preview-controller.d.ts +0 -37
- package/node_modules/@fps-games/editor-babylon/dist/prefab-comparison-preview-controller.d.ts.map +0 -1
- package/node_modules/@fps-games/editor-babylon/dist/prefab-comparison-preview-controller.js +0 -451
- package/node_modules/@fps-games/editor-babylon/dist/prefab-comparison-preview-controller.js.map +0 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-actions.d.ts +0 -49
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-actions.d.ts.map +0 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-actions.js +0 -627
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-actions.js.map +0 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-attach-dialog.d.ts +0 -52
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-attach-dialog.d.ts.map +0 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-attach-dialog.js +0 -450
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-attach-dialog.js.map +0 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-command-adapter.d.ts +0 -21
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-command-adapter.d.ts.map +0 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-command-adapter.js +0 -75
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-command-adapter.js.map +0 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-scope.d.ts +0 -5
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-scope.d.ts.map +0 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-scope.js +0 -92
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-scope.js.map +0 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-tree.d.ts +0 -63
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-tree.d.ts.map +0 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-tree.js +0 -285
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-tree.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"document-sections.js","sourceRoot":"","sources":["../../src/inspector/document-sections.ts"],"names":[],"mappings":"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","sourcesContent":["import type {\n EditorTransformSnapshot,\n InspectorProperty,\n InspectorSection,\n} from '@fps-games/editor-core';\nimport {\n createIdentityEditorTransform,\n decomposeEditorTransformMatrix,\n isEditorTransformMatrixSnapshot,\n} from '@fps-games/editor-core';\nimport {\n getEditorSceneAuthoringSourceRef,\n} from '../authoring/index';\nimport {\n findEditorSceneModelRenderer,\n findEditorSceneTransform,\n readEditorSceneNodeKind,\n type EditorSceneAsset,\n type EditorSceneCameraInspectorLanguage,\n type EditorSceneDocument,\n type EditorSceneGameObject,\n type EditorSceneNodeKind,\n} from '../document/index';\nimport {\n EDITOR_SHADOW_OBJECT_ADVANCED_PARAMS_ENABLED,\n EDITOR_SHADOW_STATIC_AUTHORING_ENABLED,\n readEditorShadowSettingsResult,\n type EditorShadowCastMode,\n type EditorShadowResolvedPlan,\n type EditorShadowLightMode,\n type EditorShadowMode,\n type EditorShadowQuality,\n type EditorShadowReceiveMode,\n type EditorShadowResolvedMode,\n type EditorShadowResolvedQuality,\n type EditorShadowSettings,\n} from '@fps-games/playable-rendering';\nimport { resolveEditorShadowPlan } from '../shadow-system';\nimport {\n normalizeEditorSceneRenderingProfile,\n type EditorSceneRenderingGroupSlot,\n type EditorSceneRenderingProfile,\n} from '../rendering-profile/index';\nimport {\n collectEditorSceneSubtreeIdList,\n} from '../session/hierarchy';\nimport {\n isEditorSceneRootGameObject,\n} from '../session/identity';\nimport {\n findEditorSceneGameObject,\n isEditorSceneMatrixTransformComponent,\n readRawEditorSceneGameObjectLocalTransform,\n} from '../session/transform';\nimport {\n createEditorSceneDocumentInspectorProperty,\n} from './document-property';\nimport {\n roundEditorSceneInspectorNumber,\n radiansToEditorSceneDegrees,\n} from './format';\nimport {\n createEditorSceneReadonlyInspectorProperty,\n createEditorSceneReadonlyInspectorSection,\n} from './readonly';\nimport type {\n EditorSceneFieldInspectorExtraValidator,\n EditorSceneReadonlyInspectorPropertyInput,\n} from './types';\n\nexport interface EditorSceneInspectorOption<TValue = string> {\n label: string;\n value: TValue;\n}\n\nexport type EditorSceneShadowInspectorLanguage = EditorSceneCameraInspectorLanguage;\n\nexport const EDITOR_SCENE_SHADOW_INSPECTOR_LANGUAGE_PATH = 'metadata.shadowInspectorLanguage';\nexport const EDITOR_SCENE_STATIC_SHADOW_BAKE_ACTION_PATH = 'actions.bakeStaticShadows';\nexport const EDITOR_SCENE_STATIC_SHADOW_BAKE_ACTION_ID = 'bake-static-shadows';\n\nexport interface EditorSceneDocumentInspectorSectionsInput<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n> {\n document: TDocument;\n gameObject: TGameObject;\n nodeKind?: TNodeKind;\n extraValidators?: readonly EditorSceneFieldInspectorExtraValidator<TDocument, TNodeKind>[];\n rootTransform?: EditorTransformSnapshot;\n renderingProfile?: EditorSceneRenderingProfile | unknown;\n transformTypeOptions?: readonly EditorSceneInspectorOption[];\n primitiveShapeOptions?: readonly EditorSceneInspectorOption[];\n}\n\nexport function createEditorSceneDocumentInspectorSections<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorSection<TDocument>[] {\n const sections: InspectorSection<TDocument>[] = [\n createEditorSceneCommonInspectorSection(input),\n ];\n const hierarchySourceSection = createEditorSceneHierarchySourceInspectorSection(input);\n if (hierarchySourceSection) sections.push(hierarchySourceSection);\n const transformSection = createEditorSceneTransformInspectorSection(input);\n if (transformSection) sections.push(transformSection);\n const rendererSection = createEditorSceneRendererInspectorSection(input);\n if (rendererSection) sections.push(rendererSection);\n const primitiveSection = createEditorScenePrimitiveInspectorSection(input);\n if (primitiveSection) sections.push(primitiveSection);\n const shadowSection = createEditorSceneShadowInspectorSection(input);\n if (shadowSection) sections.push(shadowSection);\n const renderingSection = createEditorSceneRenderingInspectorSection(input);\n if (renderingSection) sections.push(renderingSection);\n const componentsSection = createEditorSceneComponentsInspectorSection<TDocument, TGameObject>(input);\n if (componentsSection) sections.push(componentsSection);\n const metadataSection = createEditorSceneMetadataInspectorSection<TDocument, TGameObject>(input);\n if (metadataSection) sections.push(metadataSection);\n return sections;\n}\n\nexport function createEditorSceneCommonInspectorSection<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorSection<TDocument> {\n const nodeKind = resolveEditorSceneInspectorNodeKind(input);\n return {\n id: 'common',\n title: 'Common',\n order: 10,\n placement: 'body',\n summary: nodeKind,\n persistence: 'document',\n collapsedByDefault: false,\n properties: createEditorSceneCommonInspectorProperties(input),\n };\n}\n\nexport function createEditorSceneCommonInspectorProperties<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorProperty<TDocument>[] {\n const { document, gameObject } = input;\n const nodeKind = resolveEditorSceneInspectorNodeKind(input);\n const properties: InspectorProperty<TDocument>[] = [\n createEditorSceneDocumentReadonlyProperty('id', 'ID', gameObject.id, 0),\n createEditorSceneEditableInspectorProperty(input, {\n document,\n path: 'name',\n label: 'Name',\n valueType: 'string',\n control: 'string',\n value: gameObject.name ?? gameObject.id,\n commitMode: 'blur',\n order: 1,\n }),\n createEditorSceneEditableInspectorProperty(input, {\n document,\n path: 'enabled',\n label: 'Enabled',\n valueType: 'boolean',\n control: 'boolean',\n value: gameObject.active !== false,\n commitMode: 'immediate',\n order: 2,\n }),\n createEditorSceneDocumentReadonlyProperty('kind.resolved', 'Resolved Kind', nodeKind, 3),\n createEditorSceneDocumentReadonlyProperty('kind.explicit', 'Explicit Kind', gameObject.kind ?? 'inferred', 4),\n createEditorSceneDocumentReadonlyProperty('common.activeField', 'Active Field', gameObject.active ?? 'default:true', 5),\n ];\n if (nodeKind === 'transform') {\n properties.push(createEditorSceneEditableInspectorProperty(input, {\n document,\n path: 'transformType',\n label: 'Transform Type',\n valueType: 'enum',\n control: 'enum',\n value: gameObject.transformType ?? 'plain',\n commitMode: 'immediate',\n order: 6,\n options: input.transformTypeOptions ?? DEFAULT_EDITOR_SCENE_TRANSFORM_TYPE_OPTIONS,\n }));\n } else {\n properties.push(createEditorSceneDocumentReadonlyProperty(\n 'common.transformType',\n 'Transform Type',\n gameObject.transformType ?? 'none',\n 6,\n ));\n }\n return properties;\n}\n\nexport function createEditorSceneHierarchySourceInspectorSection<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorSection<TDocument> | null {\n return createEditorSceneReadonlyInspectorSection<TDocument>({\n id: 'hierarchySource',\n title: 'Hierarchy / Source',\n order: 15,\n summary: createEditorSceneHierarchySourceInspectorSummary(input),\n collapsedByDefault: true,\n tags: ['Document', 'Derived'],\n properties: createEditorSceneHierarchySourceInspectorProperties(input),\n });\n}\n\nexport function createEditorSceneHierarchySourceInspectorSummary(\n input: Pick<EditorSceneDocumentInspectorSectionsInput, 'document' | 'gameObject'>,\n): string {\n const parent = input.gameObject.parentId\n ? findEditorSceneGameObject(input.document, input.gameObject.parentId)\n : null;\n return parent ? `Parent: ${parent.name ?? parent.id}` : 'Scene root';\n}\n\nexport function createEditorSceneHierarchySourceInspectorProperties<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n>(\n input: Pick<EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject>, 'document' | 'gameObject'>,\n): InspectorProperty<TDocument>[] {\n const { document, gameObject } = input;\n const properties: InspectorProperty<TDocument>[] = [];\n const parent = gameObject.parentId ? findEditorSceneGameObject(document, gameObject.parentId) : null;\n const directChildren = document.scene.gameObjects.filter((entry) => entry.parentId === gameObject.id);\n const descendantCount = Math.max(collectEditorSceneSubtreeIdList(document, [gameObject.id]).length - 1, 0);\n const sourceRef = getEditorSceneAuthoringSourceRef(document);\n const siblingIndex = document.scene.gameObjects\n .filter((entry) => entry.parentId === gameObject.parentId)\n .findIndex((entry) => entry.id === gameObject.id);\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'hierarchy.parentId',\n label: 'Parent ID',\n value: gameObject.parentId ?? 'none',\n order: 0,\n source: 'Document',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'hierarchy.parentName',\n label: 'Parent Name',\n value: parent ? parent.name ?? parent.id : gameObject.parentId ? 'missing' : 'none',\n order: 1,\n source: 'Document',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'hierarchy.childCount',\n label: 'Children',\n value: directChildren.length,\n order: 2,\n source: 'Derived',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'hierarchy.descendantCount',\n label: 'Descendants',\n value: descendantCount,\n order: 3,\n source: 'Derived',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'hierarchy.siblingIndex',\n label: 'Sibling Index',\n value: siblingIndex >= 0 ? siblingIndex : 'unknown',\n order: 4,\n source: 'Derived',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'document.gameObjectIndex',\n label: 'Document Index',\n value: document.scene.gameObjects.findIndex((entry) => entry.id === gameObject.id),\n order: 5,\n source: 'Derived',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'document.schemaVersion',\n label: 'Schema Version',\n value: document.schemaVersion,\n order: 6,\n source: 'Document',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'source.sourceId',\n label: 'Source ID',\n value: sourceRef.sourceId,\n order: 7,\n source: 'Document',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'source.sourceType',\n label: 'Source Type',\n value: sourceRef.sourceType,\n order: 8,\n source: 'Document',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'source.revision',\n label: 'Revision',\n value: sourceRef.revision ?? 'none',\n order: 9,\n source: 'Document',\n });\n return properties;\n}\n\nexport function createEditorSceneTransformInspectorSection<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorSection<TDocument> | null {\n const transform = findEditorSceneTransform(input.gameObject);\n if (!transform) return null;\n return {\n id: 'transform',\n title: 'Transform',\n order: 20,\n placement: 'body',\n summary: createEditorSceneTransformInspectorSummary(input),\n persistence: 'document',\n collapsedByDefault: false,\n properties: createEditorSceneTransformInspectorProperties(input),\n };\n}\n\nexport function createEditorSceneTransformInspectorProperties<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorProperty<TDocument>[] {\n const transform = findEditorSceneTransform(input.gameObject);\n if (!transform) return [];\n const nodeKind = resolveEditorSceneInspectorNodeKind(input);\n const rootTransform = isEditorSceneRootGameObject(input.gameObject);\n const displayTransform = rootTransform\n ? input.rootTransform ?? createIdentityEditorTransform()\n : readRawEditorSceneGameObjectLocalTransform(input.gameObject);\n if (isEditorTransformMatrixSnapshot(displayTransform)) {\n return createEditorSceneMatrixTransformInspectorProperties(displayTransform, 0);\n }\n const properties: InspectorProperty<TDocument>[] = [];\n let order = 0;\n for (const vectorName of ['position', 'rotation', 'scale'] as const) {\n const vector = readEditorSceneInspectorTransformVector(displayTransform, vectorName);\n for (const axis of ['x', 'y', 'z'] as const) {\n const path = `transform.${vectorName}.${axis}`;\n const value = vectorName === 'rotation'\n ? roundEditorSceneInspectorNumber(radiansToEditorSceneDegrees(vector[axis]))\n : vector[axis];\n if (rootTransform) {\n properties.push(createEditorSceneDocumentReadonlyProperty<TDocument>(\n path,\n `${toEditorSceneTransformVectorLabel(vectorName)}.${axis}`,\n value,\n order,\n ));\n } else {\n properties.push(createEditorSceneEditableInspectorProperty<TDocument, TGameObject, TNodeKind>(input, {\n document: null,\n path,\n label: `${toEditorSceneTransformVectorLabel(vectorName)}.${axis}`,\n valueType: 'number',\n control: 'number',\n value,\n commitMode: 'live',\n order,\n step: vectorName === 'rotation' ? 1 : 0.1,\n }, nodeKind));\n }\n order += 1;\n }\n }\n return properties;\n}\n\nexport function createEditorSceneTransformInspectorSummary(\n input: Pick<EditorSceneDocumentInspectorSectionsInput, 'document' | 'gameObject'>,\n): string {\n const parent = input.gameObject.parentId\n ? findEditorSceneGameObject(input.document, input.gameObject.parentId)\n : null;\n if (isEditorSceneRootGameObject(input.gameObject)) return 'Identity Root';\n const transform = findEditorSceneTransform(input.gameObject);\n if (transform && isEditorSceneMatrixTransformComponent(transform)) return 'Matrix Transform';\n return `Relative to: ${parent ? parent.name ?? parent.id : 'Scene'}`;\n}\n\nfunction createEditorSceneMatrixTransformInspectorProperties<TDocument>(\n transform: EditorTransformSnapshot,\n startOrder: number,\n): InspectorProperty<TDocument>[] {\n if (!isEditorTransformMatrixSnapshot(transform)) return [];\n const properties: InspectorProperty<TDocument>[] = [\n createEditorSceneDocumentReadonlyProperty<TDocument>(\n 'transform.mode',\n 'Mode',\n 'Matrix Transform',\n startOrder,\n ),\n ];\n let order = startOrder + 1;\n for (let row = 0; row < 4; row += 1) {\n properties.push(createEditorSceneDocumentReadonlyProperty<TDocument>(\n `transform.matrix.row${row}`,\n `Matrix Row ${row + 1}`,\n transform.matrix.slice(row * 4, row * 4 + 4).map(formatEditorSceneMatrixNumber).join(', '),\n order,\n ));\n order += 1;\n }\n const approximation = decomposeEditorTransformMatrix(transform.matrix);\n properties.push(createEditorSceneDocumentReadonlyProperty<TDocument>(\n 'transform.matrix.trsApproximation',\n 'TRS Approximation',\n approximation\n ? [\n `P ${formatEditorSceneVec3(approximation.position)}`,\n `R ${formatEditorSceneVec3({\n x: radiansToEditorSceneDegrees(approximation.rotation.x),\n y: radiansToEditorSceneDegrees(approximation.rotation.y),\n z: radiansToEditorSceneDegrees(approximation.rotation.z),\n })}`,\n `S ${formatEditorSceneVec3(approximation.scale)}`,\n ].join(' | ')\n : 'Not representable as TRS',\n order,\n ));\n return properties;\n}\n\nexport function createEditorSceneRendererInspectorSection<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorSection<TDocument> | null {\n const renderer = findEditorSceneModelRenderer(input.gameObject);\n if (!renderer) return null;\n return {\n id: 'renderer',\n title: 'Renderer / Asset',\n order: 30,\n placement: 'body',\n summary: createEditorSceneRendererInspectorSummary(input.document, renderer.assetId),\n persistence: 'document',\n collapsedByDefault: true,\n properties: createEditorSceneRendererInspectorProperties(input),\n };\n}\n\nexport function createEditorSceneRendererInspectorProperties<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorProperty<TDocument>[] {\n const renderer = findEditorSceneModelRenderer(input.gameObject);\n if (!renderer) return [];\n const { document } = input;\n const asset = findEditorSceneInspectorAsset(document, renderer.assetId);\n const properties: InspectorProperty<TDocument>[] = [\n createEditorSceneEditableInspectorProperty(input, {\n document,\n path: 'instance.assetId',\n label: 'Asset',\n valueType: 'enum',\n control: 'enum',\n value: renderer.assetId,\n commitMode: 'immediate',\n order: 0,\n options: document.assets.map((asset) => ({\n label: asset.displayName ?? asset.id,\n value: asset.id,\n })),\n }),\n ];\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'renderer.assetId',\n label: 'Renderer Asset ID',\n value: renderer.assetId,\n order: 1,\n source: 'Document',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'asset.id',\n label: 'Asset ID',\n value: asset?.id ?? 'missing',\n order: 2,\n source: 'Asset',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'asset.type',\n label: 'Asset Type',\n value: asset?.type ?? 'missing',\n order: 3,\n source: 'Asset',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'asset.guid',\n label: 'GUID',\n value: asset?.guid ?? 'missing',\n order: 4,\n source: 'Asset',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'asset.displayName',\n label: 'Display Name',\n value: asset?.displayName ?? 'none',\n order: 5,\n source: 'Asset',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'asset.category',\n label: 'Category',\n value: asset?.category ?? 'none',\n order: 6,\n source: 'Asset',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'asset.materialMode',\n label: 'Material Mode',\n value: asset?.materialMode ?? 'none',\n order: 7,\n source: 'Asset',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'asset.defaults',\n label: 'Defaults',\n value: asset?.defaults ?? 'none',\n order: 8,\n source: 'Asset',\n tags: ['Raw'],\n });\n return properties;\n}\n\nexport function createEditorSceneRendererInspectorSummary(\n document: Pick<EditorSceneDocument, 'assets'>,\n assetId: string,\n): string {\n const asset = findEditorSceneInspectorAsset(document, assetId);\n if (!asset) return `Missing asset: ${assetId}`;\n return asset.displayName ?? asset.id;\n}\n\nexport function createEditorScenePrimitiveInspectorSection<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorSection<TDocument> | null {\n const primitive = input.gameObject.primitive;\n if (!primitive) return null;\n return {\n id: 'primitive',\n title: 'Primitive',\n order: 32,\n placement: 'body',\n summary: primitive.shape,\n persistence: 'document',\n collapsedByDefault: false,\n properties: createEditorScenePrimitiveInspectorProperties(input),\n };\n}\n\nexport function createEditorScenePrimitiveInspectorProperties<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorProperty<TDocument>[] {\n const primitive = input.gameObject.primitive;\n if (!primitive) return [];\n return [\n createEditorSceneEditableInspectorProperty(input, {\n document: input.document,\n path: 'primitive.shape',\n label: 'Shape',\n valueType: 'enum',\n control: 'enum',\n value: primitive.shape,\n commitMode: 'immediate',\n order: 0,\n options: input.primitiveShapeOptions ?? DEFAULT_EDITOR_SCENE_PRIMITIVE_SHAPE_OPTIONS,\n }),\n ];\n}\n\nexport function createEditorSceneShadowInspectorSection<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorSection<TDocument> | null {\n if (!canEditEditorSceneShadowSettings(input)) return null;\n const language = readEditorSceneShadowInspectorLanguage(input.gameObject);\n const text = getEditorSceneShadowInspectorText(language);\n const authoredShadowSettings = readEditorShadowSettingsResult(input.gameObject.shadow).shadow;\n const shadowSettings = authoredShadowSettings ?? {};\n const profile = readEditorSceneInspectorRenderingProfile(input.renderingProfile);\n const fallbackMode = readEditorSceneShadowFallbackModeFromRenderingProfile(profile);\n const documentGameObject = findEditorSceneGameObject(input.document, input.gameObject.id);\n const detachedInspectorGameObject = documentGameObject !== input.gameObject;\n const resolvedPlan = resolveEditorShadowPlan({\n document: input.document,\n casterId: input.gameObject.id,\n fallbackMode,\n ...(detachedInspectorGameObject && authoredShadowSettings ? { settings: { instance: authoredShadowSettings } } : {}),\n });\n const shadowCastValue = readEditorSceneCompactShadowCastValue(shadowSettings.cast, resolvedPlan.mode);\n const showShadowPolicyControls = shadowCastValue === 'enabled';\n const properties: InspectorProperty<TDocument>[] = [\n createEditorSceneEditableInspectorProperty(input, {\n document: input.document,\n path: EDITOR_SCENE_SHADOW_INSPECTOR_LANGUAGE_PATH,\n label: text.language,\n valueType: 'enum',\n control: 'enum',\n value: language,\n commitMode: 'immediate',\n order: 0,\n options: EDITOR_SCENE_SHADOW_INSPECTOR_LANGUAGE_OPTIONS,\n controlOptions: { variant: 'segmented' },\n tooltip: text.tooltips.language,\n }),\n ...createEditorSceneShadowResolvedInspectorProperties<TDocument>(resolvedPlan, text, 1),\n createEditorSceneEditableInspectorProperty(input, {\n document: input.document,\n path: 'shadow.cast',\n label: text.cast,\n valueType: 'enum',\n control: 'enum',\n value: shadowCastValue,\n commitMode: 'immediate',\n order: 10,\n options: createEditorSceneShadowCastOptions(text),\n tooltip: text.tooltips.cast,\n }),\n ...(showShadowPolicyControls ? [\n createEditorSceneEditableInspectorProperty(input, {\n document: input.document,\n path: 'shadow.mode',\n label: text.policy,\n valueType: 'enum',\n control: 'enum',\n value: readEditorSceneCompactShadowPolicyValue(shadowSettings.mode, resolvedPlan.mode),\n commitMode: 'immediate',\n order: 11,\n options: createEditorSceneShadowPolicyOptions(text),\n controlOptions: { indentLevel: 1, parentPath: 'shadow.cast' },\n tooltip: text.tooltips.policy,\n }),\n createEditorSceneEditableInspectorProperty(input, {\n document: input.document,\n path: 'shadow.quality',\n label: text.quality,\n valueType: 'enum',\n control: 'enum',\n value: readEditorSceneCompactShadowQualityValue(shadowSettings.quality, resolvedPlan.quality),\n commitMode: 'immediate',\n order: 12,\n options: createEditorSceneShadowQualityOptions(text),\n controlOptions: { indentLevel: 1, parentPath: 'shadow.cast' },\n tooltip: text.tooltips.quality,\n }),\n ] : []),\n createEditorSceneEditableInspectorProperty(input, {\n document: input.document,\n path: 'shadow.receive',\n label: text.receive,\n valueType: 'enum',\n control: 'enum',\n value: readEditorSceneCompactShadowReceiveValue(shadowSettings.receive),\n commitMode: 'immediate',\n order: 13,\n options: createEditorSceneShadowReceiveOptions(text),\n tooltip: text.tooltips.receive,\n }),\n ...(showShadowPolicyControls && EDITOR_SHADOW_OBJECT_ADVANCED_PARAMS_ENABLED\n ? createEditorSceneShadowParamInspectorProperties(input, shadowSettings, text, 30)\n : []),\n ];\n if (EDITOR_SHADOW_STATIC_AUTHORING_ENABLED && resolvedPlan.mode === 'static') {\n properties.push(createEditorSceneStaticShadowBakeActionProperty(text, 90));\n }\n return {\n id: 'shadow',\n title: text.title,\n order: 34,\n placement: 'body',\n summary: text.summaryPolicy(resolvedPlan.mode),\n persistence: 'document',\n collapsedByDefault: false,\n properties,\n };\n}\n\nfunction readEditorSceneInspectorRenderingProfile(value: EditorSceneRenderingProfile | unknown): EditorSceneRenderingProfile {\n if (\n value\n && typeof value === 'object'\n && 'environment' in value\n && 'postProcess' in value\n && 'shadows' in value\n && 'renderingGroups' in value\n && 'shadowMeshes' in value\n ) {\n return value as EditorSceneRenderingProfile;\n }\n return normalizeEditorSceneRenderingProfile(value);\n}\n\nfunction readEditorSceneCompactShadowCastValue(\n value: EditorShadowCastMode | undefined,\n resolvedMode: EditorShadowResolvedMode,\n): EditorShadowCastMode {\n if (value === 'enabled') return 'enabled';\n if (value === 'none') return 'none';\n return resolvedMode === 'none' ? 'none' : 'enabled';\n}\n\nfunction readEditorSceneCompactShadowReceiveValue(value: EditorShadowReceiveMode | undefined): EditorShadowReceiveMode {\n return value === 'enabled' ? 'enabled' : 'none';\n}\n\nfunction readEditorSceneCompactShadowPolicyValue(\n authoredMode: EditorShadowMode | undefined,\n resolvedMode: EditorShadowResolvedMode,\n): EditorShadowMode {\n if (authoredMode === 'none' || authoredMode === 'dynamic' || authoredMode === 'blob' || authoredMode === 'projected') {\n return authoredMode;\n }\n if (resolvedMode === 'none' || resolvedMode === 'dynamic' || resolvedMode === 'blob' || resolvedMode === 'projected') {\n return resolvedMode;\n }\n return 'none';\n}\n\nfunction readEditorSceneCompactShadowQualityValue(\n authoredQuality: EditorShadowQuality | undefined,\n resolvedQuality: EditorShadowResolvedQuality,\n): EditorShadowQuality {\n if (authoredQuality === 'low' || authoredQuality === 'medium' || authoredQuality === 'high') {\n return authoredQuality;\n }\n if (resolvedQuality === 'low' || resolvedQuality === 'medium' || resolvedQuality === 'high') {\n return resolvedQuality;\n }\n return 'high';\n}\n\nfunction createEditorSceneShadowResolvedInspectorProperties<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n>(\n plan: EditorShadowResolvedPlan,\n text: EditorSceneShadowInspectorText,\n startOrder: number,\n): InspectorProperty<TDocument>[] {\n const diagnostics = plan.diagnostics\n .map(diagnostic => `${diagnostic.severity}:${diagnostic.code} - ${diagnostic.message}`)\n .join('\\n');\n const properties: Array<InspectorProperty<TDocument> | null> = [];\n if (EDITOR_SHADOW_STATIC_AUTHORING_ENABLED && plan.mode === 'static') {\n properties.push(createEditorSceneReadonlyInspectorProperty<TDocument>({\n path: 'shadow.static.bakeState',\n label: text.staticBakeState,\n value: plan.stale ? text.staticBakeStale : text.staticBakeAuthored,\n order: startOrder + 5,\n source: 'Derived',\n tooltip: text.tooltips.staticBakeState,\n effect: 'derived',\n }));\n }\n if (diagnostics) {\n properties.push(createEditorSceneReadonlyInspectorProperty<TDocument>({\n path: 'shadow.resolved.diagnostics',\n label: text.resolvedDiagnostics,\n value: diagnostics,\n order: startOrder + 6,\n source: 'Derived',\n tooltip: text.tooltips.resolvedDiagnostics,\n effect: plan.diagnostics.some(diagnostic => diagnostic.severity === 'error')\n ? 'unsupported'\n : 'derived',\n }));\n }\n return properties.filter((property): property is InspectorProperty<TDocument> => !!property);\n}\n\nfunction readEditorSceneShadowFallbackModeFromRenderingProfile(\n profile: EditorSceneRenderingProfile,\n): EditorShadowResolvedMode {\n const defaultMode = profile.shadows.defaultMode;\n if (defaultMode === 'planar') return 'projected';\n return defaultMode;\n}\n\nexport function createEditorSceneStaticShadowBakeActionProperty<TDocument = unknown>(\n text: EditorSceneShadowInspectorText,\n order: number,\n): InspectorProperty<TDocument> {\n return {\n path: EDITOR_SCENE_STATIC_SHADOW_BAKE_ACTION_PATH,\n label: text.bakeAction,\n valueType: 'string',\n control: 'custom',\n customControl: 'rendering-action-button',\n controlOptions: {\n actionId: EDITOR_SCENE_STATIC_SHADOW_BAKE_ACTION_ID,\n label: text.bakeAction,\n icon: 'save',\n },\n value: EDITOR_SCENE_STATIC_SHADOW_BAKE_ACTION_ID,\n readOnly: false,\n persistence: 'document',\n commitMode: 'immediate',\n order,\n tooltip: text.tooltips.bakeAction,\n batchEdit: false,\n tags: ['Rendering'],\n };\n}\n\nfunction createEditorSceneShadowParamInspectorProperties<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n shadow: EditorShadowSettings,\n text: EditorSceneShadowInspectorText,\n startOrder: number,\n): InspectorProperty<TDocument>[] {\n return [\n createEditorSceneShadowNumberInspectorProperty(input, 'shadow.params.opacity', text.opacity, shadow.params?.opacity ?? null, startOrder + 0, 0.05, text.tooltips.opacity),\n createEditorSceneShadowNumberInspectorProperty(input, 'shadow.params.softness', text.softness, shadow.params?.softness ?? null, startOrder + 1, 0.05, text.tooltips.softness),\n createEditorSceneShadowNumberInspectorProperty(input, 'shadow.params.bias', text.bias, shadow.params?.bias ?? null, startOrder + 2, 0.0001, text.tooltips.bias),\n createEditorSceneShadowNumberInspectorProperty(input, 'shadow.params.normalBias', text.normalBias, shadow.params?.normalBias ?? null, startOrder + 3, 0.0001, text.tooltips.normalBias),\n createEditorSceneShadowNumberInspectorProperty(input, 'shadow.params.maxDistance', text.maxDistance, shadow.params?.maxDistance ?? null, startOrder + 4, 1, text.tooltips.maxDistance),\n createEditorSceneShadowNumberInspectorProperty(input, 'shadow.params.resolution', text.resolution, shadow.params?.resolution ?? null, startOrder + 5, 64, text.tooltips.resolution),\n createEditorSceneShadowNumberInspectorProperty(input, 'shadow.params.cascadeCount', text.cascadeCount, shadow.params?.cascadeCount ?? null, startOrder + 6, 1, text.tooltips.cascadeCount),\n createEditorSceneShadowNumberInspectorProperty(input, 'shadow.params.bakeSamples', text.bakeSamples, shadow.params?.bakeSamples ?? null, startOrder + 7, 1, text.tooltips.bakeSamples),\n createEditorSceneShadowNumberInspectorProperty(input, 'shadow.params.blurKernel', text.blurKernel, shadow.params?.blurKernel ?? null, startOrder + 8, 1, text.tooltips.blurKernel),\n ];\n}\n\nfunction createEditorSceneShadowNumberInspectorProperty<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n path: string,\n label: string,\n value: number | null,\n order: number,\n step: number,\n tooltip: string,\n): InspectorProperty<TDocument> {\n return createEditorSceneEditableInspectorProperty(input, {\n document: input.document,\n path,\n label,\n valueType: 'number',\n control: 'number',\n value,\n commitMode: 'live',\n order,\n step,\n tooltip,\n });\n}\n\nexport function createEditorSceneRenderingInspectorSection<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorSection<TDocument> | null {\n if (!canEditEditorSceneObjectRendering(input)) return null;\n const profile = readEditorSceneInspectorRenderingProfile(input.renderingProfile);\n const renderingGroupId = readEditorSceneRenderingGroupId(input.gameObject.rendering?.renderingGroupId);\n const groupSlot = profile.renderingGroups.slots.find(slot => slot.renderingGroupId === renderingGroupId)\n ?? profile.renderingGroups.slots[0]!;\n const alphaIndex = readEditorSceneRenderingAlphaIndex(input.gameObject)\n ?? null;\n return {\n id: 'rendering',\n title: 'Rendering',\n order: 36,\n placement: 'body',\n summary: createEditorSceneRenderingInspectorSummary(groupSlot, alphaIndex),\n persistence: 'document',\n collapsedByDefault: false,\n properties: [\n createEditorSceneEditableInspectorProperty(input, {\n document: input.document,\n path: 'rendering.renderingGroupId',\n label: 'Rendering Group',\n valueType: 'enum',\n control: 'enum',\n value: renderingGroupId,\n commitMode: 'immediate',\n order: 0,\n options: profile.renderingGroups.slots.map(slot => ({\n label: `${slot.renderingGroupId}: ${slot.name}`,\n value: slot.renderingGroupId,\n })),\n }),\n createEditorSceneEditableInspectorProperty(input, {\n document: input.document,\n path: 'rendering.alphaIndex',\n label: 'Alpha Order',\n valueType: 'enum',\n control: 'enum',\n value: alphaIndex,\n commitMode: 'immediate',\n order: 1,\n options: createEditorSceneRenderingAlphaIndexOptions(groupSlot, alphaIndex),\n }),\n ],\n };\n}\n\nexport function createEditorSceneComponentsInspectorSection<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n>(\n input: Pick<EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject>, 'gameObject'>,\n): InspectorSection<TDocument> | null {\n return createEditorSceneReadonlyInspectorSection<TDocument>({\n id: 'components',\n title: 'Scripts / Components',\n order: 65,\n summary: createEditorSceneComponentsInspectorSummary(input.gameObject),\n collapsedByDefault: true,\n tags: ['Document'],\n properties: createEditorSceneComponentsInspectorProperties(input.gameObject),\n });\n}\n\nexport function createEditorSceneComponentsInspectorSummary(\n gameObject: Pick<EditorSceneGameObject, 'components'>,\n): string {\n return gameObject.components.map((component) => component.type).join(', ') || 'none';\n}\n\nexport function createEditorSceneComponentsInspectorProperties<TDocument = unknown>(\n gameObject: Pick<EditorSceneGameObject, 'components'>,\n): InspectorProperty<TDocument>[] {\n const properties: InspectorProperty<TDocument>[] = [];\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'components.count',\n label: 'Count',\n value: gameObject.components.length,\n order: 0,\n source: 'Document',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'components.types',\n label: 'Types',\n value: createEditorSceneComponentsInspectorSummary(gameObject),\n order: 1,\n source: 'Document',\n });\n gameObject.components.forEach((component, index) => {\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: `components.${index}`,\n label: `${component.type} ${index}`,\n value: component,\n order: index + 2,\n source: 'Document',\n tags: ['Component', 'Raw'],\n });\n });\n return properties;\n}\n\nexport function createEditorSceneMetadataInspectorSection<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n>(\n input: Pick<EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject>, 'document' | 'gameObject'> & {\n assetId?: string | null;\n },\n): InspectorSection<TDocument> | null {\n const assetId = input.assetId ?? findEditorSceneModelRenderer(input.gameObject)?.assetId ?? null;\n const properties = createEditorSceneMetadataInspectorProperties({\n document: input.document,\n gameObject: input.gameObject,\n assetId,\n });\n if (properties.length === 0) return null;\n return {\n id: 'metadata',\n title: 'Metadata',\n order: 80,\n placement: 'body',\n summary: createEditorSceneMetadataInspectorSummary({\n document: input.document,\n gameObject: input.gameObject,\n assetId,\n }),\n persistence: 'readonly',\n collapsedByDefault: true,\n tags: ['Document', 'Asset'],\n properties,\n };\n}\n\nexport function createEditorSceneMetadataInspectorProperties<TDocument extends EditorSceneDocument = EditorSceneDocument>(\n input: {\n document: TDocument;\n gameObject: EditorSceneGameObject;\n assetId?: string | null;\n },\n): InspectorProperty<TDocument>[] {\n const properties: InspectorProperty<TDocument>[] = [];\n const asset = input.assetId ? findEditorSceneInspectorAsset(input.document, input.assetId) : null;\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'metadata.document',\n label: 'Document Meta',\n value: input.document.meta ?? 'none',\n order: 0,\n source: 'Document',\n tags: ['Raw'],\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'metadata.gameObject',\n label: 'GameObject Metadata',\n value: input.gameObject.metadata ?? 'none',\n order: 1,\n source: 'Document',\n tags: ['Raw'],\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'metadata.asset',\n label: 'Asset Metadata',\n value: asset?.metadata ?? 'none',\n order: 2,\n source: 'Asset',\n tags: ['Raw'],\n });\n return properties;\n}\n\nexport function createEditorSceneMetadataInspectorSummary(\n input: {\n document: Pick<EditorSceneDocument, 'meta' | 'assets'>;\n gameObject: Pick<EditorSceneGameObject, 'metadata'>;\n assetId?: string | null;\n },\n): string {\n const asset = input.assetId ? findEditorSceneInspectorAsset(input.document, input.assetId) : null;\n const sources = [\n input.document.meta ? 'Document' : null,\n input.gameObject.metadata ? 'GameObject' : null,\n asset?.metadata ? 'Asset' : null,\n ].filter((entry): entry is string => !!entry);\n return sources.length > 0 ? sources.join(' + ') : 'none';\n}\n\nfunction createEditorSceneEditableInspectorProperty<\n TDocument extends EditorSceneDocument,\n TGameObject extends EditorSceneGameObject,\n TNodeKind extends string,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n property: Omit<InspectorProperty<TDocument>, 'document' | 'readOnly' | 'persistence' | 'validate'> & {\n document?: TDocument | null;\n },\n nodeKind = resolveEditorSceneInspectorNodeKind(input),\n): InspectorProperty<TDocument> {\n const { document, ...propertyInput } = property;\n return createEditorSceneDocumentInspectorProperty<TDocument, TNodeKind>({\n document: document ?? null,\n nodeKind,\n property: propertyInput,\n extraValidators: input.extraValidators,\n });\n}\n\nfunction appendEditorSceneDocumentReadonlyProperty<TDocument>(\n properties: InspectorProperty<TDocument>[],\n input: EditorSceneReadonlyInspectorPropertyInput<TDocument>,\n): void {\n const property = createEditorSceneReadonlyInspectorProperty(input);\n if (property) properties.push(property);\n}\n\nfunction createEditorSceneDocumentReadonlyProperty<TDocument = unknown>(\n path: string,\n label: string,\n value: unknown,\n order: number,\n): InspectorProperty<TDocument> {\n return createEditorSceneReadonlyInspectorProperty<TDocument>({\n path,\n label,\n value,\n order,\n persistence: 'readonly',\n source: 'Document',\n })!;\n}\n\nfunction resolveEditorSceneInspectorNodeKind<\n TDocument extends EditorSceneDocument,\n TGameObject extends EditorSceneGameObject,\n TNodeKind extends string,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): TNodeKind {\n return input.nodeKind ?? readEditorSceneNodeKind(input.gameObject) as TNodeKind;\n}\n\nexport function canEditEditorSceneShadowSettings(\n input: Pick<EditorSceneDocumentInspectorSectionsInput, 'gameObject' | 'nodeKind'>,\n): boolean {\n const gameObject = input.gameObject;\n if (isEditorSceneRootGameObject(gameObject)) return false;\n if (gameObject.transformType === 'camera' || gameObject.transformType === 'light') return false;\n if (gameObject.camera || gameObject.light) return false;\n const nodeKind = input.nodeKind ?? readEditorSceneNodeKind(gameObject);\n return nodeKind === 'instance' || nodeKind === 'primitive' || nodeKind === 'transform';\n}\n\nfunction canEditEditorSceneObjectRendering(\n input: Pick<EditorSceneDocumentInspectorSectionsInput, 'gameObject' | 'nodeKind'>,\n): boolean {\n const gameObject = input.gameObject;\n if (isEditorSceneRootGameObject(gameObject)) return false;\n if (gameObject.transformType === 'camera' || gameObject.transformType === 'light') return false;\n if (gameObject.camera || gameObject.light) return false;\n const nodeKind = input.nodeKind ?? readEditorSceneNodeKind(gameObject);\n return nodeKind === 'instance' || nodeKind === 'primitive' || nodeKind === 'transform';\n}\n\nfunction readEditorSceneRenderingGroupId(value: unknown): 0 | 1 | 2 | 3 {\n return value === 1 || value === 2 || value === 3 ? value : 0;\n}\n\nfunction readEditorSceneRenderingAlphaIndex(gameObject: EditorSceneGameObject): number | undefined {\n const renderingAlphaIndex = gameObject.rendering?.alphaIndex;\n if (typeof renderingAlphaIndex === 'number' && Number.isFinite(renderingAlphaIndex)) return renderingAlphaIndex;\n return undefined;\n}\n\nfunction createEditorSceneRenderingInspectorSummary(\n groupSlot: EditorSceneRenderingGroupSlot,\n alphaIndex: number | null,\n): string {\n return alphaIndex == null\n ? `${groupSlot.name} · Babylon 默认`\n : `${groupSlot.name} · ${resolveEditorSceneAlphaIndexLabel(groupSlot, alphaIndex)}`;\n}\n\nfunction createEditorSceneRenderingAlphaIndexOptions(\n groupSlot: EditorSceneRenderingGroupSlot,\n alphaIndex: number | null,\n): Array<{ label: string; value: number | null; batchCompatibility?: 'ignore' }> {\n const options: Array<{ label: string; value: number | null; batchCompatibility?: 'ignore' }> = [{\n label: 'Babylon 默认',\n value: null,\n }, ...groupSlot.alphaIndexPresets.map(preset => ({\n label: `${preset.name} (${preset.alphaIndex})`,\n value: preset.alphaIndex,\n }))];\n if (alphaIndex != null && !groupSlot.alphaIndexPresets.some(preset => preset.alphaIndex === alphaIndex)) {\n options.push({\n label: `未命名值 ${alphaIndex}`,\n value: alphaIndex,\n batchCompatibility: 'ignore',\n });\n }\n return options;\n}\n\nfunction resolveEditorSceneAlphaIndexLabel(groupSlot: EditorSceneRenderingGroupSlot, alphaIndex: number): string {\n const preset = groupSlot.alphaIndexPresets.find(candidate => candidate.alphaIndex === alphaIndex);\n return preset ? preset.name : `未命名值 ${alphaIndex}`;\n}\n\nexport function readEditorSceneShadowInspectorLanguage(\n gameObject: Pick<EditorSceneGameObject, 'metadata'>,\n): EditorSceneShadowInspectorLanguage {\n return gameObject.metadata?.shadowInspectorLanguage === 'en' ? 'en' : 'zh';\n}\n\nexport function getEditorSceneShadowInspectorText(\n language: EditorSceneShadowInspectorLanguage,\n): EditorSceneShadowInspectorText {\n return EDITOR_SCENE_SHADOW_INSPECTOR_TEXT[language] ?? EDITOR_SCENE_SHADOW_INSPECTOR_TEXT.zh;\n}\n\nexport function createEditorSceneShadowCastOptions(\n text: EditorSceneShadowInspectorText,\n): readonly EditorSceneInspectorOption<EditorShadowCastMode>[] {\n return [\n { label: text.castNone, value: 'none' },\n { label: text.castEnabled, value: 'enabled' },\n ];\n}\n\nexport function createEditorSceneShadowReceiveOptions(\n text: EditorSceneShadowInspectorText,\n): readonly EditorSceneInspectorOption<EditorShadowReceiveMode>[] {\n return [\n { label: text.receiveNone, value: 'none' },\n { label: text.receiveEnabled, value: 'enabled' },\n ];\n}\n\nexport function createEditorSceneShadowPolicyOptions(\n text: EditorSceneShadowInspectorText,\n): readonly EditorSceneInspectorOption<EditorShadowMode>[] {\n return [\n { label: text.policyNone, value: 'none' },\n { label: text.policyDynamic, value: 'dynamic' },\n { label: text.policyBlob, value: 'blob' },\n { label: text.policyProjected, value: 'projected' },\n ];\n}\n\nexport function createEditorSceneShadowQualityOptions(\n text: EditorSceneShadowInspectorText,\n): readonly EditorSceneInspectorOption<EditorShadowQuality>[] {\n return [\n { label: text.qualityLow, value: 'low' },\n { label: text.qualityMedium, value: 'medium' },\n { label: text.qualityHigh, value: 'high' },\n ];\n}\n\nexport function createEditorSceneShadowLightOptions(\n text: EditorSceneShadowInspectorText,\n): readonly EditorSceneInspectorOption<EditorShadowLightMode>[] {\n return [\n { label: text.inherit, value: 'inherit' },\n { label: text.lightSceneMain, value: 'scene-main' },\n { label: text.lightNearest, value: 'nearest' },\n { label: text.lightExplicit, value: 'explicit' },\n ];\n}\n\nexport function readEditorSceneInspectorShadowSettings(\n gameObject: Pick<EditorSceneGameObject, 'shadow'>,\n): EditorShadowSettings {\n return readEditorShadowSettingsResult(gameObject.shadow).shadow ?? {};\n}\n\nfunction readEditorSceneInspectorTransformVector(\n transform: {\n position: { x: number; y: number; z: number };\n rotation: { x: number; y: number; z: number };\n scale?: { x: number; y: number; z: number };\n },\n vectorName: 'position' | 'rotation' | 'scale',\n) {\n if (vectorName === 'scale') return transform.scale ?? { x: 1, y: 1, z: 1 };\n return transform[vectorName];\n}\n\nfunction formatEditorSceneVec3(vector: { x: number; y: number; z: number }): string {\n return `${formatEditorSceneMatrixNumber(vector.x)}, ${formatEditorSceneMatrixNumber(vector.y)}, ${formatEditorSceneMatrixNumber(vector.z)}`;\n}\n\nfunction formatEditorSceneMatrixNumber(value: number): string {\n return roundEditorSceneInspectorNumber(value).toString();\n}\n\nfunction toEditorSceneTransformVectorLabel(\n vectorName: 'position' | 'rotation' | 'scale',\n): string {\n return vectorName === 'position' ? 'Position' : vectorName === 'rotation' ? 'Rotation' : 'Scale';\n}\n\nfunction findEditorSceneInspectorAsset(\n document: Pick<EditorSceneDocument, 'assets'>,\n assetId: string,\n): EditorSceneAsset | null {\n return document.assets.find((entry) => entry.id === assetId) ?? null;\n}\n\nconst DEFAULT_EDITOR_SCENE_TRANSFORM_TYPE_OPTIONS: readonly EditorSceneInspectorOption[] = [\n { label: 'Plain', value: 'plain' },\n { label: 'Light', value: 'light' },\n { label: 'Camera', value: 'camera' },\n];\n\nconst DEFAULT_EDITOR_SCENE_PRIMITIVE_SHAPE_OPTIONS: readonly EditorSceneInspectorOption[] = [\n { label: 'Cube', value: 'cube' },\n { label: 'Sphere', value: 'sphere' },\n { label: 'Plane', value: 'plane' },\n { label: 'Capsule', value: 'capsule' },\n];\n\nexport interface EditorSceneShadowInspectorText {\n title: string;\n language: string;\n cast: string;\n receive: string;\n policy: string;\n quality: string;\n light: string;\n lightId: string;\n opacity: string;\n softness: string;\n bias: string;\n normalBias: string;\n maxDistance: string;\n resolution: string;\n cascadeCount: string;\n bakeSamples: string;\n blurKernel: string;\n bakeAction: string;\n resolvedSource: string;\n resolvedPolicy: string;\n resolvedQuality: string;\n resolvedReceivers: string;\n resolvedLight: string;\n resolvedDiagnostics: string;\n staticBakeState: string;\n staticBakeAuthored: string;\n staticBakeStale: string;\n sourceShadowSettings: string;\n sourcePrefabDefaults: string;\n sourceAssetDefaults: string;\n sourceInherited: string;\n none: string;\n inherit: string;\n castNone: string;\n castEnabled: string;\n castAuto: string;\n receiveNone: string;\n receiveEnabled: string;\n receiveAuto: string;\n policyNone: string;\n policyDynamic: string;\n policyStatic: string;\n policyBlob: string;\n policyProjected: string;\n policyAuto: string;\n qualityLow: string;\n qualityMedium: string;\n qualityHigh: string;\n qualityUltra: string;\n lightSceneMain: string;\n lightNearest: string;\n lightExplicit: string;\n summaryPolicy(mode: EditorShadowMode, mixed?: boolean): string;\n tooltips: {\n language: string;\n cast: string;\n receive: string;\n policy: string;\n quality: string;\n light: string;\n lightId: string;\n opacity: string;\n softness: string;\n bias: string;\n normalBias: string;\n maxDistance: string;\n resolution: string;\n cascadeCount: string;\n bakeSamples: string;\n blurKernel: string;\n bakeAction: string;\n resolvedSource: string;\n resolvedPolicy: string;\n resolvedQuality: string;\n resolvedReceivers: string;\n resolvedLight: string;\n resolvedDiagnostics: string;\n staticBakeState: string;\n };\n}\n\nexport const EDITOR_SCENE_SHADOW_INSPECTOR_LANGUAGE_OPTIONS: readonly EditorSceneInspectorOption<EditorSceneShadowInspectorLanguage>[] = [\n { label: '中文', value: 'zh' },\n { label: 'English', value: 'en' },\n];\n\nconst EDITOR_SCENE_SHADOW_INSPECTOR_TEXT: Record<EditorSceneShadowInspectorLanguage, EditorSceneShadowInspectorText> = {\n zh: {\n title: '阴影',\n language: '语言',\n cast: '投射阴影',\n receive: '接收阴影',\n policy: '阴影模式',\n quality: '质量预设',\n light: '阴影光源',\n lightId: '显式光源 ID',\n opacity: '透明度',\n softness: '柔和度',\n bias: 'Bias',\n normalBias: 'Normal Bias',\n maxDistance: '最大距离',\n resolution: '分辨率',\n cascadeCount: '级联数量',\n bakeSamples: '烘焙采样',\n blurKernel: '模糊核',\n bakeAction: '更新烘焙结果',\n resolvedSource: '生效来源',\n resolvedPolicy: '生效策略',\n resolvedQuality: '生效质量',\n resolvedReceivers: '接收面',\n resolvedLight: '光源',\n resolvedDiagnostics: '诊断',\n staticBakeState: '静态烘焙状态',\n staticBakeAuthored: '已标记静态;请在修改后更新烘焙',\n staticBakeStale: '烘焙已过期',\n sourceShadowSettings: '当前对象 shadow.*',\n sourcePrefabDefaults: 'Prefab defaults',\n sourceAssetDefaults: 'Source asset defaults',\n sourceInherited: '继承 / 项目默认',\n none: '无',\n inherit: '继承',\n castNone: '关闭',\n castEnabled: '开启',\n castAuto: '自动',\n receiveNone: '关闭',\n receiveEnabled: '开启',\n receiveAuto: '自动',\n policyNone: '无阴影',\n policyDynamic: '动态 Shadow Map',\n policyStatic: '静态烘焙',\n policyBlob: 'Blob 阴影',\n policyProjected: 'Projected 阴影',\n policyAuto: '自动',\n qualityLow: '高性能',\n qualityMedium: '平衡',\n qualityHigh: '高质量',\n qualityUltra: '超高质量',\n lightSceneMain: '场景主光源',\n lightNearest: '最近光源',\n lightExplicit: '指定光源',\n summaryPolicy: (mode, mixed) => {\n if (mixed) return '多种策略';\n if (mode === 'none') return '无阴影';\n if (mode === 'dynamic') return '动态 Shadow Map';\n if (mode === 'static') return '静态烘焙';\n if (mode === 'blob') return 'Blob 阴影';\n if (mode === 'projected') return 'Projected 阴影';\n if (mode === 'auto') return '自动';\n return '继承';\n },\n tooltips: {\n language: '切换阴影 Inspector 的显示语言。该字段只影响编辑器,不会导出到运行时。',\n cast: '控制该对象是否投射阴影。关闭时该对象不会产生阴影。',\n receive: '控制该对象是否接收阴影。通常地面或平台开启,角色和道具按需要开启。',\n policy: '选择当前对象使用的阴影模式:无阴影、动态 Shadow Map、Blob 阴影或 Projected 阴影。',\n quality: '选择阴影预设:高性能、平衡或高质量。具体项目级参数在右侧 Rendering / Shadows 面板中配置。',\n light: '选择阴影使用的光源策略。显式光源需要填写光源 ID。',\n lightId: '当阴影光源为指定光源时使用。为空表示稍后由 resolver 诊断。',\n opacity: '覆盖阴影透明度,范围 0 到 1;为空则使用质量预设。',\n softness: '覆盖阴影柔和度;为空则使用质量预设。',\n bias: '覆盖 Shadow Map bias;为空则使用质量预设。',\n normalBias: '覆盖 Shadow Map normal bias;为空则使用质量预设。',\n maxDistance: '覆盖阴影最大作用距离;为空则使用质量预设。',\n resolution: '覆盖阴影贴图或烘焙分辨率;为空则使用质量预设。',\n cascadeCount: '覆盖动态阴影级联数量;为空则使用质量预设。',\n bakeSamples: '覆盖静态烘焙采样数;为空则使用质量预设。',\n blurKernel: '覆盖静态或 projected 阴影的模糊核大小;为空则使用质量预设。',\n bakeAction: '重新烘焙当前场景中所有标记为静态烘焙阴影的物体,并刷新编辑器预览和运行时 artifact。',\n resolvedSource: '只读摘要:当前对象阴影配置主要来自对象自身、Prefab/Instance 链或项目默认。',\n resolvedPolicy: '只读摘要:resolver 将当前 Caster / Receiver / Light / Quality 设置解析成的实际后端。',\n resolvedQuality: '只读摘要:resolver 使用的实际质量预设。',\n resolvedReceivers: '只读摘要:resolver 找到的阴影接收面对象 id。',\n resolvedLight: '只读摘要:resolver 找到的阴影光源 id。',\n resolvedDiagnostics: '只读摘要:resolver 返回的 warning/error,可用于解释为什么阴影没有显示。',\n staticBakeState: '静态阴影只随 owner 显隐同步;transform、light 或 source 改动后需要更新烘焙。',\n },\n },\n en: {\n title: 'Shadow',\n language: 'Language',\n cast: 'Cast Shadow',\n receive: 'Receive Shadow',\n policy: 'Shadow Mode',\n quality: 'Quality Preset',\n light: 'Shadow Light',\n lightId: 'Explicit Light ID',\n opacity: 'Opacity',\n softness: 'Softness',\n bias: 'Bias',\n normalBias: 'Normal Bias',\n maxDistance: 'Max Distance',\n resolution: 'Resolution',\n cascadeCount: 'Cascade Count',\n bakeSamples: 'Bake Samples',\n blurKernel: 'Blur Kernel',\n bakeAction: 'Update Bake',\n resolvedSource: 'Effective Source',\n resolvedPolicy: 'Effective Policy',\n resolvedQuality: 'Effective Quality',\n resolvedReceivers: 'Receivers',\n resolvedLight: 'Light',\n resolvedDiagnostics: 'Diagnostics',\n staticBakeState: 'Static Bake State',\n staticBakeAuthored: 'Authored static; update bake after changes',\n staticBakeStale: 'Bake is stale',\n sourceShadowSettings: 'This object shadow.*',\n sourcePrefabDefaults: 'Prefab defaults',\n sourceAssetDefaults: 'Source asset defaults',\n sourceInherited: 'Inherited / project default',\n none: 'None',\n inherit: 'Inherit',\n castNone: 'Off',\n castEnabled: 'On',\n castAuto: 'Auto',\n receiveNone: 'Off',\n receiveEnabled: 'On',\n receiveAuto: 'Auto',\n policyNone: 'No Shadow',\n policyDynamic: 'Dynamic Shadow Map',\n policyStatic: 'Static Baked',\n policyBlob: 'Blob Shadow',\n policyProjected: 'Projected Shadow',\n policyAuto: 'Auto',\n qualityLow: 'High Performance',\n qualityMedium: 'Balanced',\n qualityHigh: 'High Quality',\n qualityUltra: 'Ultra',\n lightSceneMain: 'Scene Main Light',\n lightNearest: 'Nearest Light',\n lightExplicit: 'Explicit Light',\n summaryPolicy: (mode, mixed) => {\n if (mixed) return 'Mixed policies';\n if (mode === 'none') return 'No Shadow';\n if (mode === 'dynamic') return 'Dynamic Shadow Map';\n if (mode === 'static') return 'Static Baked';\n if (mode === 'blob') return 'Blob Shadow';\n if (mode === 'projected') return 'Projected Shadow';\n if (mode === 'auto') return 'Auto';\n return 'Inherit';\n },\n tooltips: {\n language: 'Switches the display language for this Shadow inspector. This editor-only field is not exported to runtime.',\n cast: 'Controls whether this object casts shadows. Off prevents it from producing a shadow.',\n receive: 'Controls whether this object receives shadows. Ground and platforms usually turn this on; characters and props can opt in when needed.',\n policy: 'Chooses this object shadow mode: No Shadow, Dynamic Shadow Map, Blob Shadow, or Projected Shadow.',\n quality: 'Chooses a shadow preset: High Performance, Balanced, or High Quality. Project-level parameters live in the Rendering / Shadows panel.',\n light: 'Chooses the light selection policy for shadows. Explicit light requires a light id.',\n lightId: 'Used when Shadow Light is Explicit Light. Empty values will be diagnosed by the resolver later.',\n opacity: 'Overrides shadow opacity from 0 to 1. Empty uses the quality preset.',\n softness: 'Overrides softness. Empty uses the quality preset.',\n bias: 'Overrides shadow-map bias. Empty uses the quality preset.',\n normalBias: 'Overrides shadow-map normal bias. Empty uses the quality preset.',\n maxDistance: 'Overrides max shadow distance. Empty uses the quality preset.',\n resolution: 'Overrides map or bake resolution. Empty uses the quality preset.',\n cascadeCount: 'Overrides dynamic shadow cascade count. Empty uses the quality preset.',\n bakeSamples: 'Overrides static bake sample count. Empty uses the quality preset.',\n blurKernel: 'Overrides static or projected blur kernel. Empty uses the quality preset.',\n bakeAction: 'Rebake every object authored as Static Baked Shadow in the current scene, then refresh the editor preview and runtime artifact.',\n resolvedSource: 'Readonly summary of whether this object is mainly using object shadow.*, prefab/instance inheritance, or project defaults.',\n resolvedPolicy: 'Readonly summary of the concrete backend resolved from Caster / Receiver / Light / Quality settings.',\n resolvedQuality: 'Readonly summary of the quality preset used by the resolver.',\n resolvedReceivers: 'Readonly summary of receiver object ids selected by the resolver.',\n resolvedLight: 'Readonly summary of the light id selected by the resolver.',\n resolvedDiagnostics: 'Readonly resolver warnings/errors explaining why a shadow may not appear.',\n staticBakeState: 'Static shadows follow owner visibility; transform, light, or source changes require a rebake.',\n },\n },\n};\n"]}
|
|
1
|
+
{"version":3,"file":"document-sections.js","sourceRoot":"","sources":["../../src/inspector/document-sections.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,6BAA6B,EAC7B,8BAA8B,EAC9B,+BAA+B,GAChC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,gCAAgC,GACjC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,4BAA4B,EAC5B,wBAAwB,EACxB,uBAAuB,GAMxB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,4CAA4C,EAC5C,sCAAsC,EACtC,8BAA8B,GAU/B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EACL,oCAAoC,GAGrC,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,+BAA+B,GAChC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,2BAA2B,GAC5B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,yBAAyB,EACzB,qCAAqC,EACrC,0CAA0C,GAC3C,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,0CAA0C,GAC3C,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,+BAA+B,EAC/B,2BAA2B,GAC5B,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,0CAA0C,EAC1C,yCAAyC,GAC1C,MAAM,YAAY,CAAC;AAapB,MAAM,CAAC,MAAM,2CAA2C,GAAG,kCAAkC,CAAC;AAC9F,MAAM,CAAC,MAAM,2CAA2C,GAAG,2BAA2B,CAAC;AACvF,MAAM,CAAC,MAAM,yCAAyC,GAAG,qBAAqB,CAAC;AAiB/E,MAAM,UAAU,0CAA0C,CAKxD,KAAmF;IAEnF,MAAM,QAAQ,GAAkC;QAC9C,uCAAuC,CAAC,KAAK,CAAC;KAC/C,CAAC;IACF,MAAM,sBAAsB,GAAG,gDAAgD,CAAC,KAAK,CAAC,CAAC;IACvF,IAAI,sBAAsB;QAAE,QAAQ,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAClE,MAAM,gBAAgB,GAAG,0CAA0C,CAAC,KAAK,CAAC,CAAC;IAC3E,IAAI,gBAAgB;QAAE,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACtD,MAAM,eAAe,GAAG,yCAAyC,CAAC,KAAK,CAAC,CAAC;IACzE,IAAI,eAAe;QAAE,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACpD,MAAM,gBAAgB,GAAG,0CAA0C,CAAC,KAAK,CAAC,CAAC;IAC3E,IAAI,gBAAgB;QAAE,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACtD,MAAM,aAAa,GAAG,uCAAuC,CAAC,KAAK,CAAC,CAAC;IACrE,IAAI,aAAa;QAAE,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAChD,MAAM,gBAAgB,GAAG,0CAA0C,CAAC,KAAK,CAAC,CAAC;IAC3E,IAAI,gBAAgB;QAAE,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACtD,MAAM,iBAAiB,GAAG,2CAA2C,CAAyB,KAAK,CAAC,CAAC;IACrG,IAAI,iBAAiB;QAAE,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IACxD,MAAM,eAAe,GAAG,yCAAyC,CAAyB,KAAK,CAAC,CAAC;IACjG,IAAI,eAAe;QAAE,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACpD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,uCAAuC,CAKrD,KAAmF;IAEnF,MAAM,QAAQ,GAAG,mCAAmC,CAAC,KAAK,CAAC,CAAC;IAC5D,OAAO;QACL,EAAE,EAAE,QAAQ;QACZ,KAAK,EAAE,QAAQ;QACf,KAAK,EAAE,EAAE;QACT,SAAS,EAAE,MAAM;QACjB,OAAO,EAAE,QAAQ;QACjB,WAAW,EAAE,UAAU;QACvB,kBAAkB,EAAE,KAAK;QACzB,UAAU,EAAE,0CAA0C,CAAC,KAAK,CAAC;KAC9D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0CAA0C,CAKxD,KAAmF;IAEnF,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;IACvC,MAAM,QAAQ,GAAG,mCAAmC,CAAC,KAAK,CAAC,CAAC;IAC5D,MAAM,UAAU,GAAmC;QACjD,yCAAyC,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;QACvE,0CAA0C,CAAC,KAAK,EAAE;YAChD,QAAQ;YACR,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,MAAM;YACb,SAAS,EAAE,QAAQ;YACnB,OAAO,EAAE,QAAQ;YACjB,KAAK,EAAE,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,EAAE;YACvC,UAAU,EAAE,MAAM;YAClB,KAAK,EAAE,CAAC;SACT,CAAC;QACF,0CAA0C,CAAC,KAAK,EAAE;YAChD,QAAQ;YACR,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,SAAS;YAChB,SAAS,EAAE,SAAS;YACpB,OAAO,EAAE,SAAS;YAClB,KAAK,EAAE,UAAU,CAAC,MAAM,KAAK,KAAK;YAClC,UAAU,EAAE,WAAW;YACvB,KAAK,EAAE,CAAC;SACT,CAAC;QACF,yCAAyC,CAAC,eAAe,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC,CAAC;QACxF,yCAAyC,CAAC,eAAe,EAAE,eAAe,EAAE,UAAU,CAAC,IAAI,IAAI,UAAU,EAAE,CAAC,CAAC;QAC7G,yCAAyC,CAAC,oBAAoB,EAAE,cAAc,EAAE,UAAU,CAAC,MAAM,IAAI,cAAc,EAAE,CAAC,CAAC;KACxH,CAAC;IACF,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;QAC7B,UAAU,CAAC,IAAI,CAAC,0CAA0C,CAAC,KAAK,EAAE;YAChE,QAAQ;YACR,IAAI,EAAE,eAAe;YACrB,KAAK,EAAE,gBAAgB;YACvB,SAAS,EAAE,MAAM;YACjB,OAAO,EAAE,MAAM;YACf,KAAK,EAAE,UAAU,CAAC,aAAa,IAAI,OAAO;YAC1C,UAAU,EAAE,WAAW;YACvB,KAAK,EAAE,CAAC;YACR,OAAO,EAAE,KAAK,CAAC,oBAAoB,IAAI,2CAA2C;SACnF,CAAC,CAAC,CAAC;IACN,CAAC;SAAM,CAAC;QACN,UAAU,CAAC,IAAI,CAAC,yCAAyC,CACvD,sBAAsB,EACtB,gBAAgB,EAChB,UAAU,CAAC,aAAa,IAAI,MAAM,EAClC,CAAC,CACF,CAAC,CAAC;IACL,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,gDAAgD,CAK9D,KAAmF;IAEnF,OAAO,yCAAyC,CAAY;QAC1D,EAAE,EAAE,iBAAiB;QACrB,KAAK,EAAE,oBAAoB;QAC3B,KAAK,EAAE,EAAE;QACT,OAAO,EAAE,gDAAgD,CAAC,KAAK,CAAC;QAChE,kBAAkB,EAAE,IAAI;QACxB,IAAI,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC;QAC7B,UAAU,EAAE,mDAAmD,CAAC,KAAK,CAAC;KACvE,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,gDAAgD,CAC9D,KAAiF;IAEjF,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC,QAAQ;QACtC,CAAC,CAAC,yBAAyB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;QACtE,CAAC,CAAC,IAAI,CAAC;IACT,OAAO,MAAM,CAAC,CAAC,CAAC,WAAW,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,mDAAmD,CAIjE,KAAyG;IAEzG,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;IACvC,MAAM,UAAU,GAAmC,EAAE,CAAC;IACtD,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,yBAAyB,CAAC,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACrG,MAAM,cAAc,GAAG,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,UAAU,CAAC,EAAE,CAAC,CAAC;IACtG,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,+BAA+B,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3G,MAAM,SAAS,GAAG,gCAAgC,CAAC,QAAQ,CAAC,CAAC;IAC7D,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,WAAW;SAC5C,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,UAAU,CAAC,QAAQ,CAAC;SACzD,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,CAAC,CAAC;IACpD,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,oBAAoB;QAC1B,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,UAAU,CAAC,QAAQ,IAAI,MAAM;QACpC,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,UAAU;KACnB,CAAC,CAAC;IACH,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,sBAAsB;QAC5B,KAAK,EAAE,aAAa;QACpB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;QACnF,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,UAAU;KACnB,CAAC,CAAC;IACH,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,sBAAsB;QAC5B,KAAK,EAAE,UAAU;QACjB,KAAK,EAAE,cAAc,CAAC,MAAM;QAC5B,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,SAAS;KAClB,CAAC,CAAC;IACH,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,2BAA2B;QACjC,KAAK,EAAE,aAAa;QACpB,KAAK,EAAE,eAAe;QACtB,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,SAAS;KAClB,CAAC,CAAC;IACH,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,wBAAwB;QAC9B,KAAK,EAAE,eAAe;QACtB,KAAK,EAAE,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;QACnD,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,SAAS;KAClB,CAAC,CAAC;IACH,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,0BAA0B;QAChC,KAAK,EAAE,gBAAgB;QACvB,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,CAAC;QAClF,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,SAAS;KAClB,CAAC,CAAC;IACH,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,wBAAwB;QAC9B,KAAK,EAAE,gBAAgB;QACvB,KAAK,EAAE,QAAQ,CAAC,aAAa;QAC7B,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,UAAU;KACnB,CAAC,CAAC;IACH,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,iBAAiB;QACvB,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,SAAS,CAAC,QAAQ;QACzB,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,UAAU;KACnB,CAAC,CAAC;IACH,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,mBAAmB;QACzB,KAAK,EAAE,aAAa;QACpB,KAAK,EAAE,SAAS,CAAC,UAAU;QAC3B,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,UAAU;KACnB,CAAC,CAAC;IACH,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,iBAAiB;QACvB,KAAK,EAAE,UAAU;QACjB,KAAK,EAAE,SAAS,CAAC,QAAQ,IAAI,MAAM;QACnC,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,UAAU;KACnB,CAAC,CAAC;IACH,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,0CAA0C,CAKxD,KAAmF;IAEnF,MAAM,SAAS,GAAG,wBAAwB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC7D,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAC5B,OAAO;QACL,EAAE,EAAE,WAAW;QACf,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,EAAE;QACT,SAAS,EAAE,MAAM;QACjB,OAAO,EAAE,0CAA0C,CAAC,KAAK,CAAC;QAC1D,WAAW,EAAE,UAAU;QACvB,kBAAkB,EAAE,KAAK;QACzB,UAAU,EAAE,6CAA6C,CAAC,KAAK,CAAC;KACjE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,6CAA6C,CAK3D,KAAmF;IAEnF,MAAM,SAAS,GAAG,wBAAwB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC7D,IAAI,CAAC,SAAS;QAAE,OAAO,EAAE,CAAC;IAC1B,MAAM,QAAQ,GAAG,mCAAmC,CAAC,KAAK,CAAC,CAAC;IAC5D,MAAM,aAAa,GAAG,2BAA2B,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACpE,MAAM,gBAAgB,GAAG,aAAa;QACpC,CAAC,CAAC,KAAK,CAAC,aAAa,IAAI,6BAA6B,EAAE;QACxD,CAAC,CAAC,0CAA0C,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACjE,IAAI,+BAA+B,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACtD,OAAO,mDAAmD,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAClF,CAAC;IACD,MAAM,UAAU,GAAmC,EAAE,CAAC;IACtD,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,UAAU,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAU,EAAE,CAAC;QACpE,MAAM,MAAM,GAAG,uCAAuC,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;QACrF,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAU,EAAE,CAAC;YAC5C,MAAM,IAAI,GAAG,aAAa,UAAU,IAAI,IAAI,EAAE,CAAC;YAC/C,MAAM,KAAK,GAAG,UAAU,KAAK,UAAU;gBACrC,CAAC,CAAC,+BAA+B,CAAC,2BAA2B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC5E,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACjB,IAAI,aAAa,EAAE,CAAC;gBAClB,UAAU,CAAC,IAAI,CAAC,yCAAyC,CACvD,IAAI,EACJ,GAAG,iCAAiC,CAAC,UAAU,CAAC,IAAI,IAAI,EAAE,EAC1D,KAAK,EACL,KAAK,CACN,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,UAAU,CAAC,IAAI,CAAC,0CAA0C,CAAoC,KAAK,EAAE;oBACjG,QAAQ,EAAE,IAAI;oBACd,IAAI;oBACJ,KAAK,EAAE,GAAG,iCAAiC,CAAC,UAAU,CAAC,IAAI,IAAI,EAAE;oBACjE,SAAS,EAAE,QAAQ;oBACnB,OAAO,EAAE,QAAQ;oBACjB,KAAK;oBACL,UAAU,EAAE,MAAM;oBAClB,KAAK;oBACL,SAAS,EAAE,CAAC;oBACZ,IAAI,EAAE,UAAU,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG;oBACzE,aAAa,EAAE,UAAU,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;iBACvF,EAAE,QAAQ,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,KAAK,IAAI,CAAC,CAAC;QACb,CAAC;IACH,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,0CAA0C,CACxD,KAAiF;IAEjF,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC,QAAQ;QACtC,CAAC,CAAC,yBAAyB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;QACtE,CAAC,CAAC,IAAI,CAAC;IACT,IAAI,2BAA2B,CAAC,KAAK,CAAC,UAAU,CAAC;QAAE,OAAO,eAAe,CAAC;IAC1E,MAAM,SAAS,GAAG,wBAAwB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC7D,IAAI,SAAS,IAAI,qCAAqC,CAAC,SAAS,CAAC;QAAE,OAAO,kBAAkB,CAAC;IAC7F,OAAO,gBAAgB,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;AACvE,CAAC;AAED,SAAS,mDAAmD,CAC1D,SAAkC,EAClC,UAAkB;IAElB,IAAI,CAAC,+BAA+B,CAAC,SAAS,CAAC;QAAE,OAAO,EAAE,CAAC;IAC3D,MAAM,UAAU,GAAmC;QACjD,yCAAyC,CACvC,gBAAgB,EAChB,MAAM,EACN,kBAAkB,EAClB,UAAU,CACX;KACF,CAAC;IACF,IAAI,KAAK,GAAG,UAAU,GAAG,CAAC,CAAC;IAC3B,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;QACpC,UAAU,CAAC,IAAI,CAAC,yCAAyC,CACvD,uBAAuB,GAAG,EAAE,EAC5B,cAAc,GAAG,GAAG,CAAC,EAAE,EACvB,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAC1F,KAAK,CACN,CAAC,CAAC;QACH,KAAK,IAAI,CAAC,CAAC;IACb,CAAC;IACD,MAAM,aAAa,GAAG,8BAA8B,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACvE,UAAU,CAAC,IAAI,CAAC,yCAAyC,CACvD,mCAAmC,EACnC,mBAAmB,EACnB,aAAa;QACX,CAAC,CAAC;YACE,KAAK,qBAAqB,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE;YACpD,KAAK,qBAAqB,CAAC;gBACzB,CAAC,EAAE,2BAA2B,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACxD,CAAC,EAAE,2BAA2B,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACxD,CAAC,EAAE,2BAA2B,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC;aACzD,CAAC,EAAE;YACJ,KAAK,qBAAqB,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE;SAClD,CAAC,IAAI,CAAC,KAAK,CAAC;QACf,CAAC,CAAC,0BAA0B,EAC9B,KAAK,CACN,CAAC,CAAC;IACH,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,yCAAyC,CAKvD,KAAmF;IAEnF,MAAM,QAAQ,GAAG,4BAA4B,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAChE,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3B,OAAO;QACL,EAAE,EAAE,UAAU;QACd,KAAK,EAAE,kBAAkB;QACzB,KAAK,EAAE,EAAE;QACT,SAAS,EAAE,MAAM;QACjB,OAAO,EAAE,yCAAyC,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC;QACpF,WAAW,EAAE,UAAU;QACvB,kBAAkB,EAAE,IAAI;QACxB,UAAU,EAAE,4CAA4C,CAAC,KAAK,CAAC;KAChE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,4CAA4C,CAK1D,KAAmF;IAEnF,MAAM,QAAQ,GAAG,4BAA4B,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAChE,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,CAAC;IACzB,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAC3B,MAAM,KAAK,GAAG,6BAA6B,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;IACxE,MAAM,UAAU,GAAmC;QACjD,0CAA0C,CAAC,KAAK,EAAE;YAChD,QAAQ;YACR,IAAI,EAAE,kBAAkB;YACxB,KAAK,EAAE,OAAO;YACd,SAAS,EAAE,MAAM;YACjB,OAAO,EAAE,MAAM;YACf,KAAK,EAAE,QAAQ,CAAC,OAAO;YACvB,UAAU,EAAE,WAAW;YACvB,KAAK,EAAE,CAAC;YACR,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACvC,KAAK,EAAE,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,EAAE;gBACpC,KAAK,EAAE,KAAK,CAAC,EAAE;aAChB,CAAC,CAAC;SACJ,CAAC;KACH,CAAC;IACF,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,kBAAkB;QACxB,KAAK,EAAE,mBAAmB;QAC1B,KAAK,EAAE,QAAQ,CAAC,OAAO;QACvB,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,UAAU;KACnB,CAAC,CAAC;IACH,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU;QACjB,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,SAAS;QAC7B,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,OAAO;KAChB,CAAC,CAAC;IACH,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,YAAY;QACnB,KAAK,EAAE,KAAK,EAAE,IAAI,IAAI,SAAS;QAC/B,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,OAAO;KAChB,CAAC,CAAC;IACH,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,MAAM;QACb,KAAK,EAAE,KAAK,EAAE,IAAI,IAAI,SAAS;QAC/B,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,OAAO;KAChB,CAAC,CAAC;IACH,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,mBAAmB;QACzB,KAAK,EAAE,cAAc;QACrB,KAAK,EAAE,KAAK,EAAE,WAAW,IAAI,MAAM;QACnC,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,OAAO;KAChB,CAAC,CAAC;IACH,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,gBAAgB;QACtB,KAAK,EAAE,UAAU;QACjB,KAAK,EAAE,KAAK,EAAE,QAAQ,IAAI,MAAM;QAChC,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,OAAO;KAChB,CAAC,CAAC;IACH,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,oBAAoB;QAC1B,KAAK,EAAE,eAAe;QACtB,KAAK,EAAE,KAAK,EAAE,YAAY,IAAI,MAAM;QACpC,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,OAAO;KAChB,CAAC,CAAC;IACH,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,gBAAgB;QACtB,KAAK,EAAE,UAAU;QACjB,KAAK,EAAE,KAAK,EAAE,QAAQ,IAAI,MAAM;QAChC,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,OAAO;QACf,IAAI,EAAE,CAAC,KAAK,CAAC;KACd,CAAC,CAAC;IACH,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,yCAAyC,CACvD,QAA6C,EAC7C,OAAe;IAEf,MAAM,KAAK,GAAG,6BAA6B,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC/D,IAAI,CAAC,KAAK;QAAE,OAAO,kBAAkB,OAAO,EAAE,CAAC;IAC/C,OAAO,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,EAAE,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,0CAA0C,CAKxD,KAAmF;IAEnF,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC;IAC7C,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAC5B,OAAO;QACL,EAAE,EAAE,WAAW;QACf,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,EAAE;QACT,SAAS,EAAE,MAAM;QACjB,OAAO,EAAE,SAAS,CAAC,KAAK;QACxB,WAAW,EAAE,UAAU;QACvB,kBAAkB,EAAE,KAAK;QACzB,UAAU,EAAE,6CAA6C,CAAC,KAAK,CAAC;KACjE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,6CAA6C,CAK3D,KAAmF;IAEnF,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC;IAC7C,IAAI,CAAC,SAAS;QAAE,OAAO,EAAE,CAAC;IAC1B,OAAO;QACL,0CAA0C,CAAC,KAAK,EAAE;YAChD,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,IAAI,EAAE,iBAAiB;YACvB,KAAK,EAAE,OAAO;YACd,SAAS,EAAE,MAAM;YACjB,OAAO,EAAE,MAAM;YACf,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,UAAU,EAAE,WAAW;YACvB,KAAK,EAAE,CAAC;YACR,OAAO,EAAE,KAAK,CAAC,qBAAqB,IAAI,4CAA4C;SACrF,CAAC;KACH,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uCAAuC,CAKrD,KAAmF;IAEnF,IAAI,CAAC,gCAAgC,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1D,MAAM,sBAAsB,GAAG,8BAA8B,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;IAC9F,MAAM,cAAc,GAAG,sBAAsB,IAAI,EAAE,CAAC;IACpD,MAAM,OAAO,GAAG,wCAAwC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACjF,MAAM,YAAY,GAAG,qDAAqD,CAAC,OAAO,CAAC,CAAC;IACpF,MAAM,kBAAkB,GAAG,yBAAyB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IAC1F,MAAM,2BAA2B,GAAG,kBAAkB,KAAK,KAAK,CAAC,UAAU,CAAC;IAC5E,MAAM,YAAY,GAAG,uBAAuB,CAAC;QAC3C,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE;QAC7B,YAAY;QACZ,GAAG,CAAC,2BAA2B,IAAI,sBAAsB,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,sBAAsB,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACrH,CAAC,CAAC;IACH,MAAM,eAAe,GAAG,qCAAqC,CAAC,cAAc,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;IACtG,MAAM,cAAc,GAAG,0CAA0C,CAAC,KAAK,EAAE;QACvE,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,MAAM;QACb,SAAS,EAAE,SAAS;QACpB,OAAO,EAAE,SAAS;QAClB,KAAK,EAAE,eAAe,KAAK,SAAS;QACpC,UAAU,EAAE,WAAW;QACvB,KAAK,EAAE,CAAC;QACR,OAAO,EAAE,uBAAuB;KACjC,CAAC,CAAC;IACH,MAAM,cAAc,GAAG,cAAc,CAAC,QAAQ,CAAC;IAC/C,OAAO;QACL,EAAE,EAAE,QAAQ;QACZ,KAAK,EAAE,IAAI;QACX,KAAK,EAAE,EAAE;QACT,SAAS,EAAE,MAAM;QACjB,WAAW,EAAE,UAAU;QACvB,kBAAkB,EAAE,KAAK;QACzB,UAAU,EAAE,CAAC;gBACX,GAAG,cAAc;gBACjB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,cAAc,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI;oBAC5E,EAAE,EAAE,IAAI;oBACR,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;iBAC3C;aACF,CAAC;KACH,CAAC;AACJ,CAAC;AAED,SAAS,wCAAwC,CAAC,KAA4C;IAC5F,IACE,KAAK;WACF,OAAO,KAAK,KAAK,QAAQ;WACzB,aAAa,IAAI,KAAK;WACtB,aAAa,IAAI,KAAK;WACtB,SAAS,IAAI,KAAK;WAClB,iBAAiB,IAAI,KAAK;WAC1B,cAAc,IAAI,KAAK,EAC1B,CAAC;QACD,OAAO,KAAoC,CAAC;IAC9C,CAAC;IACD,OAAO,oCAAoC,CAAC,KAAK,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,qCAAqC,CAC5C,KAAuC,EACvC,YAAsC;IAEtC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC1C,IAAI,KAAK,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IACpC,OAAO,YAAY,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACtD,CAAC;AAED,SAAS,wCAAwC,CAAC,KAA0C;IAC1F,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;AAClD,CAAC;AAED,SAAS,uCAAuC,CAC9C,YAA0C,EAC1C,YAAsC;IAEtC,IAAI,YAAY,KAAK,MAAM,IAAI,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,MAAM,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;QACrH,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,IAAI,YAAY,KAAK,MAAM,IAAI,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,MAAM,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;QACrH,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,wCAAwC,CAC/C,eAAgD,EAChD,eAA4C;IAE5C,IAAI,eAAe,KAAK,KAAK,IAAI,eAAe,KAAK,QAAQ,IAAI,eAAe,KAAK,MAAM,EAAE,CAAC;QAC5F,OAAO,eAAe,CAAC;IACzB,CAAC;IACD,IAAI,eAAe,KAAK,KAAK,IAAI,eAAe,KAAK,QAAQ,IAAI,eAAe,KAAK,MAAM,EAAE,CAAC;QAC5F,OAAO,eAAe,CAAC;IACzB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,kDAAkD,CAGzD,IAA8B,EAC9B,IAAoC,EACpC,UAAkB;IAElB,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW;SACjC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,QAAQ,IAAI,UAAU,CAAC,IAAI,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;SACtF,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,MAAM,UAAU,GAA+C,EAAE,CAAC;IAClE,IAAI,sCAAsC,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACrE,UAAU,CAAC,IAAI,CAAC,0CAA0C,CAAY;YACpE,IAAI,EAAE,yBAAyB;YAC/B,KAAK,EAAE,IAAI,CAAC,eAAe;YAC3B,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB;YAClE,KAAK,EAAE,UAAU,GAAG,CAAC;YACrB,MAAM,EAAE,SAAS;YACjB,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,eAAe;YACtC,MAAM,EAAE,SAAS;SAClB,CAAC,CAAC,CAAC;IACN,CAAC;IACD,IAAI,WAAW,EAAE,CAAC;QAChB,UAAU,CAAC,IAAI,CAAC,0CAA0C,CAAY;YACpE,IAAI,EAAE,6BAA6B;YACnC,KAAK,EAAE,IAAI,CAAC,mBAAmB;YAC/B,KAAK,EAAE,WAAW;YAClB,KAAK,EAAE,UAAU,GAAG,CAAC;YACrB,MAAM,EAAE,SAAS;YACjB,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,mBAAmB;YAC1C,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,KAAK,OAAO,CAAC;gBAC1E,CAAC,CAAC,aAAa;gBACf,CAAC,CAAC,SAAS;SACd,CAAC,CAAC,CAAC;IACN,CAAC;IACD,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,QAAQ,EAA4C,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;AAC/F,CAAC;AAED,SAAS,qDAAqD,CAC5D,OAAoC;IAEpC,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC;IAChD,IAAI,WAAW,KAAK,QAAQ;QAAE,OAAO,WAAW,CAAC;IACjD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,+CAA+C,CAC7D,IAAoC,EACpC,KAAa;IAEb,OAAO;QACL,IAAI,EAAE,2CAA2C;QACjD,KAAK,EAAE,IAAI,CAAC,UAAU;QACtB,SAAS,EAAE,QAAQ;QACnB,OAAO,EAAE,QAAQ;QACjB,aAAa,EAAE,yBAAyB;QACxC,cAAc,EAAE;YACd,QAAQ,EAAE,yCAAyC;YACnD,KAAK,EAAE,IAAI,CAAC,UAAU;YACtB,IAAI,EAAE,MAAM;SACb;QACD,KAAK,EAAE,yCAAyC;QAChD,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,UAAU;QACvB,UAAU,EAAE,WAAW;QACvB,KAAK;QACL,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU;QACjC,SAAS,EAAE,KAAK;QAChB,IAAI,EAAE,CAAC,WAAW,CAAC;KACpB,CAAC;AACJ,CAAC;AAED,SAAS,+CAA+C,CAKtD,KAAmF,EACnF,MAA4B,EAC5B,IAAoC,EACpC,UAAkB;IAElB,OAAO;QACL,8CAA8C,CAAC,KAAK,EAAE,uBAAuB,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,IAAI,IAAI,EAAE,UAAU,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QACzK,8CAA8C,CAAC,KAAK,EAAE,wBAAwB,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,IAAI,IAAI,EAAE,UAAU,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC7K,8CAA8C,CAAC,KAAK,EAAE,oBAAoB,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,IAAI,IAAI,EAAE,UAAU,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC/J,8CAA8C,CAAC,KAAK,EAAE,0BAA0B,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,IAAI,IAAI,EAAE,UAAU,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;QACvL,8CAA8C,CAAC,KAAK,EAAE,2BAA2B,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,IAAI,IAAI,EAAE,UAAU,GAAG,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;QACtL,8CAA8C,CAAC,KAAK,EAAE,0BAA0B,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,IAAI,IAAI,EAAE,UAAU,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;QACnL,8CAA8C,CAAC,KAAK,EAAE,4BAA4B,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,IAAI,IAAI,EAAE,UAAU,GAAG,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;QAC1L,8CAA8C,CAAC,KAAK,EAAE,2BAA2B,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,IAAI,IAAI,EAAE,UAAU,GAAG,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;QACtL,8CAA8C,CAAC,KAAK,EAAE,0BAA0B,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,IAAI,IAAI,EAAE,UAAU,GAAG,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;KACnL,CAAC;AACJ,CAAC;AAED,SAAS,8CAA8C,CAKrD,KAAmF,EACnF,IAAY,EACZ,KAAa,EACb,KAAoB,EACpB,KAAa,EACb,IAAY,EACZ,OAAe;IAEf,OAAO,0CAA0C,CAAC,KAAK,EAAE;QACvD,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,IAAI;QACJ,KAAK;QACL,SAAS,EAAE,QAAQ;QACnB,OAAO,EAAE,QAAQ;QACjB,KAAK;QACL,UAAU,EAAE,MAAM;QAClB,KAAK;QACL,IAAI;QACJ,OAAO;KACR,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,0CAA0C,CAKxD,KAAmF;IAEnF,IAAI,CAAC,iCAAiC,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3D,MAAM,OAAO,GAAG,wCAAwC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACjF,MAAM,gBAAgB,GAAG,+BAA+B,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;IACvG,MAAM,SAAS,GAAG,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,KAAK,gBAAgB,CAAC;WACnG,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC;IACvC,MAAM,UAAU,GAAG,kCAAkC,CAAC,KAAK,CAAC,UAAU,CAAC;WAClE,IAAI,CAAC;IACV,OAAO;QACL,EAAE,EAAE,WAAW;QACf,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,EAAE;QACT,SAAS,EAAE,MAAM;QACjB,OAAO,EAAE,0CAA0C,CAAC,SAAS,EAAE,UAAU,CAAC;QAC1E,WAAW,EAAE,UAAU;QACvB,kBAAkB,EAAE,KAAK;QACzB,UAAU,EAAE;YACV,0CAA0C,CAAC,KAAK,EAAE;gBAChD,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,IAAI,EAAE,4BAA4B;gBAClC,KAAK,EAAE,iBAAiB;gBACxB,SAAS,EAAE,MAAM;gBACjB,OAAO,EAAE,MAAM;gBACf,KAAK,EAAE,gBAAgB;gBACvB,UAAU,EAAE,WAAW;gBACvB,KAAK,EAAE,CAAC;gBACR,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBAClD,KAAK,EAAE,GAAG,IAAI,CAAC,gBAAgB,KAAK,IAAI,CAAC,IAAI,EAAE;oBAC/C,KAAK,EAAE,IAAI,CAAC,gBAAgB;iBAC7B,CAAC,CAAC;aACJ,CAAC;YACF,0CAA0C,CAAC,KAAK,EAAE;gBAChD,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,IAAI,EAAE,sBAAsB;gBAC5B,KAAK,EAAE,aAAa;gBACpB,SAAS,EAAE,MAAM;gBACjB,OAAO,EAAE,MAAM;gBACf,KAAK,EAAE,UAAU;gBACjB,UAAU,EAAE,WAAW;gBACvB,KAAK,EAAE,CAAC;gBACR,OAAO,EAAE,2CAA2C,CAAC,SAAS,EAAE,UAAU,CAAC;aAC5E,CAAC;SACH;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2CAA2C,CAIzD,KAA4F;IAE5F,OAAO,yCAAyC,CAAY;QAC1D,EAAE,EAAE,YAAY;QAChB,KAAK,EAAE,sBAAsB;QAC7B,KAAK,EAAE,EAAE;QACT,OAAO,EAAE,2CAA2C,CAAC,KAAK,CAAC,UAAU,CAAC;QACtE,kBAAkB,EAAE,IAAI;QACxB,IAAI,EAAE,CAAC,UAAU,CAAC;QAClB,UAAU,EAAE,8CAA8C,CAAC,KAAK,CAAC,UAAU,CAAC;KAC7E,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,2CAA2C,CACzD,UAAqD;IAErD,OAAO,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC;AACvF,CAAC;AAED,MAAM,UAAU,8CAA8C,CAC5D,UAAqD;IAErD,MAAM,UAAU,GAAmC,EAAE,CAAC;IACtD,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,kBAAkB;QACxB,KAAK,EAAE,OAAO;QACd,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,MAAM;QACnC,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,UAAU;KACnB,CAAC,CAAC;IACH,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,kBAAkB;QACxB,KAAK,EAAE,OAAO;QACd,KAAK,EAAE,2CAA2C,CAAC,UAAU,CAAC;QAC9D,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,UAAU;KACnB,CAAC,CAAC;IACH,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE;QACjD,yCAAyC,CAAC,UAAU,EAAE;YACpD,IAAI,EAAE,cAAc,KAAK,EAAE;YAC3B,KAAK,EAAE,GAAG,SAAS,CAAC,IAAI,IAAI,KAAK,EAAE;YACnC,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE,KAAK,GAAG,CAAC;YAChB,MAAM,EAAE,UAAU;YAClB,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,CAAC;SAC3B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,yCAAyC,CAIvD,KAEC;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,4BAA4B,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,OAAO,IAAI,IAAI,CAAC;IACjG,MAAM,UAAU,GAAG,4CAA4C,CAAC;QAC9D,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,OAAO;KACR,CAAC,CAAC;IACH,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACzC,OAAO;QACL,EAAE,EAAE,UAAU;QACd,KAAK,EAAE,UAAU;QACjB,KAAK,EAAE,EAAE;QACT,SAAS,EAAE,MAAM;QACjB,OAAO,EAAE,yCAAyC,CAAC;YACjD,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,OAAO;SACR,CAAC;QACF,WAAW,EAAE,UAAU;QACvB,kBAAkB,EAAE,IAAI;QACxB,IAAI,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC;QAC3B,UAAU;KACX,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,4CAA4C,CAC1D,KAIC;IAED,MAAM,UAAU,GAAmC,EAAE,CAAC;IACtD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,6BAA6B,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAClG,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,mBAAmB;QACzB,KAAK,EAAE,eAAe;QACtB,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI,IAAI,MAAM;QACpC,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,UAAU;QAClB,IAAI,EAAE,CAAC,KAAK,CAAC;KACd,CAAC,CAAC;IACH,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,qBAAqB;QAC3B,KAAK,EAAE,qBAAqB;QAC5B,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,IAAI,MAAM;QAC1C,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,UAAU;QAClB,IAAI,EAAE,CAAC,KAAK,CAAC;KACd,CAAC,CAAC;IACH,yCAAyC,CAAC,UAAU,EAAE;QACpD,IAAI,EAAE,gBAAgB;QACtB,KAAK,EAAE,gBAAgB;QACvB,KAAK,EAAE,KAAK,EAAE,QAAQ,IAAI,MAAM;QAChC,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,OAAO;QACf,IAAI,EAAE,CAAC,KAAK,CAAC;KACd,CAAC,CAAC;IACH,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,yCAAyC,CACvD,KAIC;IAED,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,6BAA6B,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAClG,MAAM,OAAO,GAAG;QACd,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI;QACvC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI;QAC/C,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;KACjC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC9C,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;AAC3D,CAAC;AAED,SAAS,0CAA0C,CAKjD,KAAmF,EACnF,QAEC,EACD,QAAQ,GAAG,mCAAmC,CAAC,KAAK,CAAC;IAErD,MAAM,EAAE,QAAQ,EAAE,GAAG,aAAa,EAAE,GAAG,QAAQ,CAAC;IAChD,OAAO,0CAA0C,CAAuB;QACtE,QAAQ,EAAE,QAAQ,IAAI,IAAI;QAC1B,QAAQ;QACR,QAAQ,EAAE,aAAa;QACvB,eAAe,EAAE,KAAK,CAAC,eAAe;KACvC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,yCAAyC,CAChD,UAA0C,EAC1C,KAA2D;IAE3D,MAAM,QAAQ,GAAG,0CAA0C,CAAC,KAAK,CAAC,CAAC;IACnE,IAAI,QAAQ;QAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,yCAAyC,CAChD,IAAY,EACZ,KAAa,EACb,KAAc,EACd,KAAa;IAEb,OAAO,0CAA0C,CAAY;QAC3D,IAAI;QACJ,KAAK;QACL,KAAK;QACL,KAAK;QACL,WAAW,EAAE,UAAU;QACvB,MAAM,EAAE,UAAU;KACnB,CAAE,CAAC;AACN,CAAC;AAED,SAAS,mCAAmC,CAK1C,KAAmF;IAEnF,OAAO,KAAK,CAAC,QAAQ,IAAI,uBAAuB,CAAC,KAAK,CAAC,UAAU,CAAc,CAAC;AAClF,CAAC;AAED,MAAM,UAAU,gCAAgC,CAC9C,KAAiF;IAEjF,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;IACpC,IAAI,2BAA2B,CAAC,UAAU,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1D,IAAI,UAAU,CAAC,aAAa,KAAK,QAAQ,IAAI,UAAU,CAAC,aAAa,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IAChG,IAAI,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACxD,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,uBAAuB,CAAC,UAAU,CAAC,CAAC;IACvE,OAAO,QAAQ,KAAK,UAAU,IAAI,QAAQ,KAAK,WAAW,IAAI,QAAQ,KAAK,WAAW,CAAC;AACzF,CAAC;AAED,SAAS,iCAAiC,CACxC,KAAiF;IAEjF,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;IACpC,IAAI,2BAA2B,CAAC,UAAU,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1D,IAAI,UAAU,CAAC,aAAa,KAAK,QAAQ,IAAI,UAAU,CAAC,aAAa,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IAChG,IAAI,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACxD,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,uBAAuB,CAAC,UAAU,CAAC,CAAC;IACvE,OAAO,QAAQ,KAAK,UAAU,IAAI,QAAQ,KAAK,WAAW,IAAI,QAAQ,KAAK,WAAW,CAAC;AACzF,CAAC;AAED,SAAS,+BAA+B,CAAC,KAAc;IACrD,OAAO,KAAK,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/D,CAAC;AAED,SAAS,kCAAkC,CAAC,UAAiC;IAC3E,MAAM,mBAAmB,GAAG,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC;IAC7D,IAAI,OAAO,mBAAmB,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC;QAAE,OAAO,mBAAmB,CAAC;IAChH,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,0CAA0C,CACjD,SAAwC,EACxC,UAAyB;IAEzB,OAAO,UAAU,IAAI,IAAI;QACvB,CAAC,CAAC,GAAG,SAAS,CAAC,IAAI,eAAe;QAClC,CAAC,CAAC,GAAG,SAAS,CAAC,IAAI,MAAM,iCAAiC,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,CAAC;AACxF,CAAC;AAED,SAAS,2CAA2C,CAClD,SAAwC,EACxC,UAAyB;IAEzB,MAAM,OAAO,GAAkF,CAAC;YAC9F,KAAK,EAAE,YAAY;YACnB,KAAK,EAAE,IAAI;SACZ,EAAE,GAAG,SAAS,CAAC,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC/C,KAAK,EAAE,GAAG,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,UAAU,GAAG;YAC9C,KAAK,EAAE,MAAM,CAAC,UAAU;SACzB,CAAC,CAAC,CAAC,CAAC;IACL,IAAI,UAAU,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,UAAU,KAAK,UAAU,CAAC,EAAE,CAAC;QACxG,OAAO,CAAC,IAAI,CAAC;YACX,KAAK,EAAE,QAAQ,UAAU,EAAE;YAC3B,KAAK,EAAE,UAAU;YACjB,kBAAkB,EAAE,QAAQ;SAC7B,CAAC,CAAC;IACL,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,iCAAiC,CAAC,SAAwC,EAAE,UAAkB;IACrG,MAAM,MAAM,GAAG,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,UAAU,KAAK,UAAU,CAAC,CAAC;IAClG,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,UAAU,EAAE,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,sCAAsC,CACpD,UAAmD;IAEnD,OAAO,UAAU,CAAC,QAAQ,EAAE,uBAAuB,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7E,CAAC;AAED,MAAM,UAAU,iCAAiC,CAC/C,QAA4C;IAE5C,OAAO,kCAAkC,CAAC,QAAQ,CAAC,IAAI,kCAAkC,CAAC,EAAE,CAAC;AAC/F,CAAC;AAED,MAAM,UAAU,kCAAkC,CAChD,IAAoC;IAEpC,OAAO;QACL,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE;QACvC,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE;KAC9C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qCAAqC,CACnD,IAAoC;IAEpC,OAAO;QACL,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE;QAC1C,EAAE,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,SAAS,EAAE;KACjD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oCAAoC,CAClD,IAAoC;IAEpC,OAAO;QACL,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE;QACzC,EAAE,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE,SAAS,EAAE;QAC/C,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE;QACzC,EAAE,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE,KAAK,EAAE,WAAW,EAAE;KACpD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qCAAqC,CACnD,IAAoC;IAEpC,OAAO;QACL,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE;QACxC,EAAE,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE;QAC9C,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE;KAC3C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mCAAmC,CACjD,IAAoC;IAEpC,OAAO;QACL,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE;QACzC,EAAE,KAAK,EAAE,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,YAAY,EAAE;QACnD,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE;QAC9C,EAAE,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE;KACjD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sCAAsC,CACpD,UAAiD;IAEjD,OAAO,8BAA8B,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC;AACxE,CAAC;AAED,SAAS,uCAAuC,CAC9C,SAIC,EACD,UAA6C;IAE7C,IAAI,UAAU,KAAK,OAAO;QAAE,OAAO,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IAC3E,OAAO,SAAS,CAAC,UAAU,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,qBAAqB,CAAC,MAA2C;IACxE,OAAO,GAAG,6BAA6B,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,6BAA6B,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,6BAA6B,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;AAC9I,CAAC;AAED,SAAS,6BAA6B,CAAC,KAAa;IAClD,OAAO,+BAA+B,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC;AAC3D,CAAC;AAED,SAAS,iCAAiC,CACxC,UAA6C;IAE7C,OAAO,UAAU,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC;AACnG,CAAC;AAED,SAAS,6BAA6B,CACpC,QAA6C,EAC7C,OAAe;IAEf,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,OAAO,CAAC,IAAI,IAAI,CAAC;AACvE,CAAC;AAED,MAAM,2CAA2C,GAA0C;IACzF,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;IAClC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;IAClC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;CACrC,CAAC;AAEF,MAAM,4CAA4C,GAA0C;IAC1F,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;IAChC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;IACpC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;IAClC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE;CACvC,CAAC;AAoFF,MAAM,CAAC,MAAM,8CAA8C,GAA8E;IACvI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;IAC5B,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE;CAClC,CAAC;AAEF,MAAM,kCAAkC,GAA+E;IACrH,EAAE,EAAE;QACF,KAAK,EAAE,IAAI;QACX,QAAQ,EAAE,IAAI;QACd,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,MAAM;QACf,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,MAAM;QACf,KAAK,EAAE,MAAM;QACb,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,KAAK;QACf,IAAI,EAAE,MAAM;QACZ,UAAU,EAAE,aAAa;QACzB,WAAW,EAAE,MAAM;QACnB,UAAU,EAAE,KAAK;QACjB,YAAY,EAAE,MAAM;QACpB,WAAW,EAAE,MAAM;QACnB,UAAU,EAAE,KAAK;QACjB,UAAU,EAAE,QAAQ;QACpB,cAAc,EAAE,MAAM;QACtB,cAAc,EAAE,MAAM;QACtB,eAAe,EAAE,MAAM;QACvB,iBAAiB,EAAE,KAAK;QACxB,aAAa,EAAE,IAAI;QACnB,mBAAmB,EAAE,IAAI;QACzB,eAAe,EAAE,QAAQ;QACzB,kBAAkB,EAAE,iBAAiB;QACrC,eAAe,EAAE,OAAO;QACxB,oBAAoB,EAAE,eAAe;QACrC,oBAAoB,EAAE,iBAAiB;QACvC,mBAAmB,EAAE,uBAAuB;QAC5C,eAAe,EAAE,WAAW;QAC5B,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,IAAI;QACjB,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,IAAI;QACjB,cAAc,EAAE,IAAI;QACpB,WAAW,EAAE,IAAI;QACjB,UAAU,EAAE,KAAK;QACjB,aAAa,EAAE,eAAe;QAC9B,YAAY,EAAE,MAAM;QACpB,UAAU,EAAE,SAAS;QACrB,eAAe,EAAE,cAAc;QAC/B,UAAU,EAAE,IAAI;QAChB,UAAU,EAAE,KAAK;QACjB,aAAa,EAAE,IAAI;QACnB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,MAAM;QACpB,cAAc,EAAE,OAAO;QACvB,YAAY,EAAE,MAAM;QACpB,aAAa,EAAE,MAAM;QACrB,aAAa,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YAC7B,IAAI,KAAK;gBAAE,OAAO,MAAM,CAAC;YACzB,IAAI,IAAI,KAAK,MAAM;gBAAE,OAAO,KAAK,CAAC;YAClC,IAAI,IAAI,KAAK,SAAS;gBAAE,OAAO,eAAe,CAAC;YAC/C,IAAI,IAAI,KAAK,QAAQ;gBAAE,OAAO,MAAM,CAAC;YACrC,IAAI,IAAI,KAAK,MAAM;gBAAE,OAAO,SAAS,CAAC;YACtC,IAAI,IAAI,KAAK,WAAW;gBAAE,OAAO,cAAc,CAAC;YAChD,IAAI,IAAI,KAAK,MAAM;gBAAE,OAAO,IAAI,CAAC;YACjC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,QAAQ,EAAE;YACR,QAAQ,EAAE,0CAA0C;YACpD,IAAI,EAAE,2BAA2B;YACjC,OAAO,EAAE,mCAAmC;YAC5C,MAAM,EAAE,wDAAwD;YAChE,OAAO,EAAE,yDAAyD;YAClE,KAAK,EAAE,4BAA4B;YACnC,OAAO,EAAE,oCAAoC;YAC7C,OAAO,EAAE,6BAA6B;YACtC,QAAQ,EAAE,oBAAoB;YAC9B,IAAI,EAAE,+BAA+B;YACrC,UAAU,EAAE,sCAAsC;YAClD,WAAW,EAAE,uBAAuB;YACpC,UAAU,EAAE,yBAAyB;YACrC,YAAY,EAAE,uBAAuB;YACrC,WAAW,EAAE,sBAAsB;YACnC,UAAU,EAAE,qCAAqC;YACjD,UAAU,EAAE,gDAAgD;YAC5D,cAAc,EAAE,+CAA+C;YAC/D,cAAc,EAAE,mEAAmE;YACnF,eAAe,EAAE,0BAA0B;YAC3C,iBAAiB,EAAE,8BAA8B;YACjD,aAAa,EAAE,2BAA2B;YAC1C,mBAAmB,EAAE,iDAAiD;YACtE,eAAe,EAAE,uDAAuD;SACzE;KACF;IACD,EAAE,EAAE;QACF,KAAK,EAAE,QAAQ;QACf,QAAQ,EAAE,UAAU;QACpB,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,gBAAgB;QACzB,MAAM,EAAE,aAAa;QACrB,OAAO,EAAE,gBAAgB;QACzB,KAAK,EAAE,cAAc;QACrB,OAAO,EAAE,mBAAmB;QAC5B,OAAO,EAAE,SAAS;QAClB,QAAQ,EAAE,UAAU;QACpB,IAAI,EAAE,MAAM;QACZ,UAAU,EAAE,aAAa;QACzB,WAAW,EAAE,cAAc;QAC3B,UAAU,EAAE,YAAY;QACxB,YAAY,EAAE,eAAe;QAC7B,WAAW,EAAE,cAAc;QAC3B,UAAU,EAAE,aAAa;QACzB,UAAU,EAAE,aAAa;QACzB,cAAc,EAAE,kBAAkB;QAClC,cAAc,EAAE,kBAAkB;QAClC,eAAe,EAAE,mBAAmB;QACpC,iBAAiB,EAAE,WAAW;QAC9B,aAAa,EAAE,OAAO;QACtB,mBAAmB,EAAE,aAAa;QAClC,eAAe,EAAE,mBAAmB;QACpC,kBAAkB,EAAE,4CAA4C;QAChE,eAAe,EAAE,eAAe;QAChC,oBAAoB,EAAE,sBAAsB;QAC5C,oBAAoB,EAAE,iBAAiB;QACvC,mBAAmB,EAAE,uBAAuB;QAC5C,eAAe,EAAE,6BAA6B;QAC9C,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,SAAS;QAClB,QAAQ,EAAE,KAAK;QACf,WAAW,EAAE,IAAI;QACjB,QAAQ,EAAE,MAAM;QAChB,WAAW,EAAE,KAAK;QAClB,cAAc,EAAE,IAAI;QACpB,WAAW,EAAE,MAAM;QACnB,UAAU,EAAE,WAAW;QACvB,aAAa,EAAE,oBAAoB;QACnC,YAAY,EAAE,cAAc;QAC5B,UAAU,EAAE,aAAa;QACzB,eAAe,EAAE,kBAAkB;QACnC,UAAU,EAAE,MAAM;QAClB,UAAU,EAAE,kBAAkB;QAC9B,aAAa,EAAE,UAAU;QACzB,WAAW,EAAE,cAAc;QAC3B,YAAY,EAAE,OAAO;QACrB,cAAc,EAAE,kBAAkB;QAClC,YAAY,EAAE,eAAe;QAC7B,aAAa,EAAE,gBAAgB;QAC/B,aAAa,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YAC7B,IAAI,KAAK;gBAAE,OAAO,gBAAgB,CAAC;YACnC,IAAI,IAAI,KAAK,MAAM;gBAAE,OAAO,WAAW,CAAC;YACxC,IAAI,IAAI,KAAK,SAAS;gBAAE,OAAO,oBAAoB,CAAC;YACpD,IAAI,IAAI,KAAK,QAAQ;gBAAE,OAAO,cAAc,CAAC;YAC7C,IAAI,IAAI,KAAK,MAAM;gBAAE,OAAO,aAAa,CAAC;YAC1C,IAAI,IAAI,KAAK,WAAW;gBAAE,OAAO,kBAAkB,CAAC;YACpD,IAAI,IAAI,KAAK,MAAM;gBAAE,OAAO,MAAM,CAAC;YACnC,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,QAAQ,EAAE;YACR,QAAQ,EAAE,6GAA6G;YACvH,IAAI,EAAE,sFAAsF;YAC5F,OAAO,EAAE,wIAAwI;YACjJ,MAAM,EAAE,mGAAmG;YAC3G,OAAO,EAAE,uIAAuI;YAChJ,KAAK,EAAE,qFAAqF;YAC5F,OAAO,EAAE,iGAAiG;YAC1G,OAAO,EAAE,sEAAsE;YAC/E,QAAQ,EAAE,oDAAoD;YAC9D,IAAI,EAAE,2DAA2D;YACjE,UAAU,EAAE,kEAAkE;YAC9E,WAAW,EAAE,+DAA+D;YAC5E,UAAU,EAAE,kEAAkE;YAC9E,YAAY,EAAE,wEAAwE;YACtF,WAAW,EAAE,oEAAoE;YACjF,UAAU,EAAE,2EAA2E;YACvF,UAAU,EAAE,iIAAiI;YAC7I,cAAc,EAAE,4HAA4H;YAC5I,cAAc,EAAE,sGAAsG;YACtH,eAAe,EAAE,8DAA8D;YAC/E,iBAAiB,EAAE,mEAAmE;YACtF,aAAa,EAAE,4DAA4D;YAC3E,mBAAmB,EAAE,2EAA2E;YAChG,eAAe,EAAE,+FAA+F;SACjH;KACF;CACF,CAAC","sourcesContent":["import type {\n EditorTransformSnapshot,\n InspectorProperty,\n InspectorSection,\n} from '@fps-games/editor-core';\nimport {\n createIdentityEditorTransform,\n decomposeEditorTransformMatrix,\n isEditorTransformMatrixSnapshot,\n} from '@fps-games/editor-core';\nimport {\n getEditorSceneAuthoringSourceRef,\n} from '../authoring/index';\nimport {\n findEditorSceneModelRenderer,\n findEditorSceneTransform,\n readEditorSceneNodeKind,\n type EditorSceneAsset,\n type EditorSceneCameraInspectorLanguage,\n type EditorSceneDocument,\n type EditorSceneGameObject,\n type EditorSceneNodeKind,\n} from '../document/index';\nimport {\n EDITOR_SHADOW_OBJECT_ADVANCED_PARAMS_ENABLED,\n EDITOR_SHADOW_STATIC_AUTHORING_ENABLED,\n readEditorShadowSettingsResult,\n type EditorShadowCastMode,\n type EditorShadowResolvedPlan,\n type EditorShadowLightMode,\n type EditorShadowMode,\n type EditorShadowQuality,\n type EditorShadowReceiveMode,\n type EditorShadowResolvedMode,\n type EditorShadowResolvedQuality,\n type EditorShadowSettings,\n} from '@fps-games/playable-rendering';\nimport { resolveEditorShadowPlan } from '../shadow-system';\nimport {\n normalizeEditorSceneRenderingProfile,\n type EditorSceneRenderingGroupSlot,\n type EditorSceneRenderingProfile,\n} from '../rendering-profile/index';\nimport {\n collectEditorSceneSubtreeIdList,\n} from '../session/hierarchy';\nimport {\n isEditorSceneRootGameObject,\n} from '../session/identity';\nimport {\n findEditorSceneGameObject,\n isEditorSceneMatrixTransformComponent,\n readRawEditorSceneGameObjectLocalTransform,\n} from '../session/transform';\nimport {\n createEditorSceneDocumentInspectorProperty,\n} from './document-property';\nimport {\n roundEditorSceneInspectorNumber,\n radiansToEditorSceneDegrees,\n} from './format';\nimport {\n createEditorSceneReadonlyInspectorProperty,\n createEditorSceneReadonlyInspectorSection,\n} from './readonly';\nimport type {\n EditorSceneFieldInspectorExtraValidator,\n EditorSceneReadonlyInspectorPropertyInput,\n} from './types';\n\nexport interface EditorSceneInspectorOption<TValue = string> {\n label: string;\n value: TValue;\n}\n\nexport type EditorSceneShadowInspectorLanguage = EditorSceneCameraInspectorLanguage;\n\nexport const EDITOR_SCENE_SHADOW_INSPECTOR_LANGUAGE_PATH = 'metadata.shadowInspectorLanguage';\nexport const EDITOR_SCENE_STATIC_SHADOW_BAKE_ACTION_PATH = 'actions.bakeStaticShadows';\nexport const EDITOR_SCENE_STATIC_SHADOW_BAKE_ACTION_ID = 'bake-static-shadows';\n\nexport interface EditorSceneDocumentInspectorSectionsInput<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n> {\n document: TDocument;\n gameObject: TGameObject;\n nodeKind?: TNodeKind;\n extraValidators?: readonly EditorSceneFieldInspectorExtraValidator<TDocument, TNodeKind>[];\n rootTransform?: EditorTransformSnapshot;\n renderingProfile?: EditorSceneRenderingProfile | unknown;\n transformTypeOptions?: readonly EditorSceneInspectorOption[];\n primitiveShapeOptions?: readonly EditorSceneInspectorOption[];\n}\n\nexport function createEditorSceneDocumentInspectorSections<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorSection<TDocument>[] {\n const sections: InspectorSection<TDocument>[] = [\n createEditorSceneCommonInspectorSection(input),\n ];\n const hierarchySourceSection = createEditorSceneHierarchySourceInspectorSection(input);\n if (hierarchySourceSection) sections.push(hierarchySourceSection);\n const transformSection = createEditorSceneTransformInspectorSection(input);\n if (transformSection) sections.push(transformSection);\n const rendererSection = createEditorSceneRendererInspectorSection(input);\n if (rendererSection) sections.push(rendererSection);\n const primitiveSection = createEditorScenePrimitiveInspectorSection(input);\n if (primitiveSection) sections.push(primitiveSection);\n const shadowSection = createEditorSceneShadowInspectorSection(input);\n if (shadowSection) sections.push(shadowSection);\n const renderingSection = createEditorSceneRenderingInspectorSection(input);\n if (renderingSection) sections.push(renderingSection);\n const componentsSection = createEditorSceneComponentsInspectorSection<TDocument, TGameObject>(input);\n if (componentsSection) sections.push(componentsSection);\n const metadataSection = createEditorSceneMetadataInspectorSection<TDocument, TGameObject>(input);\n if (metadataSection) sections.push(metadataSection);\n return sections;\n}\n\nexport function createEditorSceneCommonInspectorSection<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorSection<TDocument> {\n const nodeKind = resolveEditorSceneInspectorNodeKind(input);\n return {\n id: 'common',\n title: 'Common',\n order: 10,\n placement: 'body',\n summary: nodeKind,\n persistence: 'document',\n collapsedByDefault: false,\n properties: createEditorSceneCommonInspectorProperties(input),\n };\n}\n\nexport function createEditorSceneCommonInspectorProperties<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorProperty<TDocument>[] {\n const { document, gameObject } = input;\n const nodeKind = resolveEditorSceneInspectorNodeKind(input);\n const properties: InspectorProperty<TDocument>[] = [\n createEditorSceneDocumentReadonlyProperty('id', 'ID', gameObject.id, 0),\n createEditorSceneEditableInspectorProperty(input, {\n document,\n path: 'name',\n label: 'Name',\n valueType: 'string',\n control: 'string',\n value: gameObject.name ?? gameObject.id,\n commitMode: 'blur',\n order: 1,\n }),\n createEditorSceneEditableInspectorProperty(input, {\n document,\n path: 'enabled',\n label: 'Enabled',\n valueType: 'boolean',\n control: 'boolean',\n value: gameObject.active !== false,\n commitMode: 'immediate',\n order: 2,\n }),\n createEditorSceneDocumentReadonlyProperty('kind.resolved', 'Resolved Kind', nodeKind, 3),\n createEditorSceneDocumentReadonlyProperty('kind.explicit', 'Explicit Kind', gameObject.kind ?? 'inferred', 4),\n createEditorSceneDocumentReadonlyProperty('common.activeField', 'Active Field', gameObject.active ?? 'default:true', 5),\n ];\n if (nodeKind === 'transform') {\n properties.push(createEditorSceneEditableInspectorProperty(input, {\n document,\n path: 'transformType',\n label: 'Transform Type',\n valueType: 'enum',\n control: 'enum',\n value: gameObject.transformType ?? 'plain',\n commitMode: 'immediate',\n order: 6,\n options: input.transformTypeOptions ?? DEFAULT_EDITOR_SCENE_TRANSFORM_TYPE_OPTIONS,\n }));\n } else {\n properties.push(createEditorSceneDocumentReadonlyProperty(\n 'common.transformType',\n 'Transform Type',\n gameObject.transformType ?? 'none',\n 6,\n ));\n }\n return properties;\n}\n\nexport function createEditorSceneHierarchySourceInspectorSection<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorSection<TDocument> | null {\n return createEditorSceneReadonlyInspectorSection<TDocument>({\n id: 'hierarchySource',\n title: 'Hierarchy / Source',\n order: 15,\n summary: createEditorSceneHierarchySourceInspectorSummary(input),\n collapsedByDefault: true,\n tags: ['Document', 'Derived'],\n properties: createEditorSceneHierarchySourceInspectorProperties(input),\n });\n}\n\nexport function createEditorSceneHierarchySourceInspectorSummary(\n input: Pick<EditorSceneDocumentInspectorSectionsInput, 'document' | 'gameObject'>,\n): string {\n const parent = input.gameObject.parentId\n ? findEditorSceneGameObject(input.document, input.gameObject.parentId)\n : null;\n return parent ? `Parent: ${parent.name ?? parent.id}` : 'Scene root';\n}\n\nexport function createEditorSceneHierarchySourceInspectorProperties<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n>(\n input: Pick<EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject>, 'document' | 'gameObject'>,\n): InspectorProperty<TDocument>[] {\n const { document, gameObject } = input;\n const properties: InspectorProperty<TDocument>[] = [];\n const parent = gameObject.parentId ? findEditorSceneGameObject(document, gameObject.parentId) : null;\n const directChildren = document.scene.gameObjects.filter((entry) => entry.parentId === gameObject.id);\n const descendantCount = Math.max(collectEditorSceneSubtreeIdList(document, [gameObject.id]).length - 1, 0);\n const sourceRef = getEditorSceneAuthoringSourceRef(document);\n const siblingIndex = document.scene.gameObjects\n .filter((entry) => entry.parentId === gameObject.parentId)\n .findIndex((entry) => entry.id === gameObject.id);\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'hierarchy.parentId',\n label: 'Parent ID',\n value: gameObject.parentId ?? 'none',\n order: 0,\n source: 'Document',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'hierarchy.parentName',\n label: 'Parent Name',\n value: parent ? parent.name ?? parent.id : gameObject.parentId ? 'missing' : 'none',\n order: 1,\n source: 'Document',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'hierarchy.childCount',\n label: 'Children',\n value: directChildren.length,\n order: 2,\n source: 'Derived',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'hierarchy.descendantCount',\n label: 'Descendants',\n value: descendantCount,\n order: 3,\n source: 'Derived',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'hierarchy.siblingIndex',\n label: 'Sibling Index',\n value: siblingIndex >= 0 ? siblingIndex : 'unknown',\n order: 4,\n source: 'Derived',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'document.gameObjectIndex',\n label: 'Document Index',\n value: document.scene.gameObjects.findIndex((entry) => entry.id === gameObject.id),\n order: 5,\n source: 'Derived',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'document.schemaVersion',\n label: 'Schema Version',\n value: document.schemaVersion,\n order: 6,\n source: 'Document',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'source.sourceId',\n label: 'Source ID',\n value: sourceRef.sourceId,\n order: 7,\n source: 'Document',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'source.sourceType',\n label: 'Source Type',\n value: sourceRef.sourceType,\n order: 8,\n source: 'Document',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'source.revision',\n label: 'Revision',\n value: sourceRef.revision ?? 'none',\n order: 9,\n source: 'Document',\n });\n return properties;\n}\n\nexport function createEditorSceneTransformInspectorSection<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorSection<TDocument> | null {\n const transform = findEditorSceneTransform(input.gameObject);\n if (!transform) return null;\n return {\n id: 'transform',\n title: 'Transform',\n order: 20,\n placement: 'body',\n summary: createEditorSceneTransformInspectorSummary(input),\n persistence: 'document',\n collapsedByDefault: false,\n properties: createEditorSceneTransformInspectorProperties(input),\n };\n}\n\nexport function createEditorSceneTransformInspectorProperties<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorProperty<TDocument>[] {\n const transform = findEditorSceneTransform(input.gameObject);\n if (!transform) return [];\n const nodeKind = resolveEditorSceneInspectorNodeKind(input);\n const rootTransform = isEditorSceneRootGameObject(input.gameObject);\n const displayTransform = rootTransform\n ? input.rootTransform ?? createIdentityEditorTransform()\n : readRawEditorSceneGameObjectLocalTransform(input.gameObject);\n if (isEditorTransformMatrixSnapshot(displayTransform)) {\n return createEditorSceneMatrixTransformInspectorProperties(displayTransform, 0);\n }\n const properties: InspectorProperty<TDocument>[] = [];\n let order = 0;\n for (const vectorName of ['position', 'rotation', 'scale'] as const) {\n const vector = readEditorSceneInspectorTransformVector(displayTransform, vectorName);\n for (const axis of ['x', 'y', 'z'] as const) {\n const path = `transform.${vectorName}.${axis}`;\n const value = vectorName === 'rotation'\n ? roundEditorSceneInspectorNumber(radiansToEditorSceneDegrees(vector[axis]))\n : vector[axis];\n if (rootTransform) {\n properties.push(createEditorSceneDocumentReadonlyProperty<TDocument>(\n path,\n `${toEditorSceneTransformVectorLabel(vectorName)}.${axis}`,\n value,\n order,\n ));\n } else {\n properties.push(createEditorSceneEditableInspectorProperty<TDocument, TGameObject, TNodeKind>(input, {\n document: null,\n path,\n label: `${toEditorSceneTransformVectorLabel(vectorName)}.${axis}`,\n valueType: 'number',\n control: 'number',\n value,\n commitMode: 'live',\n order,\n precision: 4,\n step: vectorName === 'rotation' ? 1 : vectorName === 'scale' ? 0.01 : 0.1,\n stepPrecision: vectorName === 'rotation' ? 0.1 : vectorName === 'scale' ? 0.001 : 0.01,\n }, nodeKind));\n }\n order += 1;\n }\n }\n return properties;\n}\n\nexport function createEditorSceneTransformInspectorSummary(\n input: Pick<EditorSceneDocumentInspectorSectionsInput, 'document' | 'gameObject'>,\n): string {\n const parent = input.gameObject.parentId\n ? findEditorSceneGameObject(input.document, input.gameObject.parentId)\n : null;\n if (isEditorSceneRootGameObject(input.gameObject)) return 'Identity Root';\n const transform = findEditorSceneTransform(input.gameObject);\n if (transform && isEditorSceneMatrixTransformComponent(transform)) return 'Matrix Transform';\n return `Relative to: ${parent ? parent.name ?? parent.id : 'Scene'}`;\n}\n\nfunction createEditorSceneMatrixTransformInspectorProperties<TDocument>(\n transform: EditorTransformSnapshot,\n startOrder: number,\n): InspectorProperty<TDocument>[] {\n if (!isEditorTransformMatrixSnapshot(transform)) return [];\n const properties: InspectorProperty<TDocument>[] = [\n createEditorSceneDocumentReadonlyProperty<TDocument>(\n 'transform.mode',\n 'Mode',\n 'Matrix Transform',\n startOrder,\n ),\n ];\n let order = startOrder + 1;\n for (let row = 0; row < 4; row += 1) {\n properties.push(createEditorSceneDocumentReadonlyProperty<TDocument>(\n `transform.matrix.row${row}`,\n `Matrix Row ${row + 1}`,\n transform.matrix.slice(row * 4, row * 4 + 4).map(formatEditorSceneMatrixNumber).join(', '),\n order,\n ));\n order += 1;\n }\n const approximation = decomposeEditorTransformMatrix(transform.matrix);\n properties.push(createEditorSceneDocumentReadonlyProperty<TDocument>(\n 'transform.matrix.trsApproximation',\n 'TRS Approximation',\n approximation\n ? [\n `P ${formatEditorSceneVec3(approximation.position)}`,\n `R ${formatEditorSceneVec3({\n x: radiansToEditorSceneDegrees(approximation.rotation.x),\n y: radiansToEditorSceneDegrees(approximation.rotation.y),\n z: radiansToEditorSceneDegrees(approximation.rotation.z),\n })}`,\n `S ${formatEditorSceneVec3(approximation.scale)}`,\n ].join(' | ')\n : 'Not representable as TRS',\n order,\n ));\n return properties;\n}\n\nexport function createEditorSceneRendererInspectorSection<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorSection<TDocument> | null {\n const renderer = findEditorSceneModelRenderer(input.gameObject);\n if (!renderer) return null;\n return {\n id: 'renderer',\n title: 'Renderer / Asset',\n order: 30,\n placement: 'body',\n summary: createEditorSceneRendererInspectorSummary(input.document, renderer.assetId),\n persistence: 'document',\n collapsedByDefault: true,\n properties: createEditorSceneRendererInspectorProperties(input),\n };\n}\n\nexport function createEditorSceneRendererInspectorProperties<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorProperty<TDocument>[] {\n const renderer = findEditorSceneModelRenderer(input.gameObject);\n if (!renderer) return [];\n const { document } = input;\n const asset = findEditorSceneInspectorAsset(document, renderer.assetId);\n const properties: InspectorProperty<TDocument>[] = [\n createEditorSceneEditableInspectorProperty(input, {\n document,\n path: 'instance.assetId',\n label: 'Asset',\n valueType: 'enum',\n control: 'enum',\n value: renderer.assetId,\n commitMode: 'immediate',\n order: 0,\n options: document.assets.map((asset) => ({\n label: asset.displayName ?? asset.id,\n value: asset.id,\n })),\n }),\n ];\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'renderer.assetId',\n label: 'Renderer Asset ID',\n value: renderer.assetId,\n order: 1,\n source: 'Document',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'asset.id',\n label: 'Asset ID',\n value: asset?.id ?? 'missing',\n order: 2,\n source: 'Asset',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'asset.type',\n label: 'Asset Type',\n value: asset?.type ?? 'missing',\n order: 3,\n source: 'Asset',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'asset.guid',\n label: 'GUID',\n value: asset?.guid ?? 'missing',\n order: 4,\n source: 'Asset',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'asset.displayName',\n label: 'Display Name',\n value: asset?.displayName ?? 'none',\n order: 5,\n source: 'Asset',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'asset.category',\n label: 'Category',\n value: asset?.category ?? 'none',\n order: 6,\n source: 'Asset',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'asset.materialMode',\n label: 'Material Mode',\n value: asset?.materialMode ?? 'none',\n order: 7,\n source: 'Asset',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'asset.defaults',\n label: 'Defaults',\n value: asset?.defaults ?? 'none',\n order: 8,\n source: 'Asset',\n tags: ['Raw'],\n });\n return properties;\n}\n\nexport function createEditorSceneRendererInspectorSummary(\n document: Pick<EditorSceneDocument, 'assets'>,\n assetId: string,\n): string {\n const asset = findEditorSceneInspectorAsset(document, assetId);\n if (!asset) return `Missing asset: ${assetId}`;\n return asset.displayName ?? asset.id;\n}\n\nexport function createEditorScenePrimitiveInspectorSection<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorSection<TDocument> | null {\n const primitive = input.gameObject.primitive;\n if (!primitive) return null;\n return {\n id: 'primitive',\n title: 'Primitive',\n order: 32,\n placement: 'body',\n summary: primitive.shape,\n persistence: 'document',\n collapsedByDefault: false,\n properties: createEditorScenePrimitiveInspectorProperties(input),\n };\n}\n\nexport function createEditorScenePrimitiveInspectorProperties<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorProperty<TDocument>[] {\n const primitive = input.gameObject.primitive;\n if (!primitive) return [];\n return [\n createEditorSceneEditableInspectorProperty(input, {\n document: input.document,\n path: 'primitive.shape',\n label: 'Shape',\n valueType: 'enum',\n control: 'enum',\n value: primitive.shape,\n commitMode: 'immediate',\n order: 0,\n options: input.primitiveShapeOptions ?? DEFAULT_EDITOR_SCENE_PRIMITIVE_SHAPE_OPTIONS,\n }),\n ];\n}\n\nexport function createEditorSceneShadowInspectorSection<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorSection<TDocument> | null {\n if (!canEditEditorSceneShadowSettings(input)) return null;\n const authoredShadowSettings = readEditorShadowSettingsResult(input.gameObject.shadow).shadow;\n const shadowSettings = authoredShadowSettings ?? {};\n const profile = readEditorSceneInspectorRenderingProfile(input.renderingProfile);\n const fallbackMode = readEditorSceneShadowFallbackModeFromRenderingProfile(profile);\n const documentGameObject = findEditorSceneGameObject(input.document, input.gameObject.id);\n const detachedInspectorGameObject = documentGameObject !== input.gameObject;\n const resolvedPlan = resolveEditorShadowPlan({\n document: input.document,\n casterId: input.gameObject.id,\n fallbackMode,\n ...(detachedInspectorGameObject && authoredShadowSettings ? { settings: { instance: authoredShadowSettings } } : {}),\n });\n const shadowCastValue = readEditorSceneCompactShadowCastValue(shadowSettings.cast, resolvedPlan.mode);\n const toggleProperty = createEditorSceneEditableInspectorProperty(input, {\n document: input.document,\n path: 'shadow.cast',\n label: '开启阴影',\n valueType: 'boolean',\n control: 'boolean',\n value: shadowCastValue === 'enabled',\n commitMode: 'immediate',\n order: 0,\n tooltip: '勾选后该物体开启阴影;取消勾选后关闭阴影。',\n });\n const validateToggle = toggleProperty.validate;\n return {\n id: 'shadow',\n title: '阴影',\n order: 34,\n placement: 'body',\n persistence: 'document',\n collapsedByDefault: false,\n properties: [{\n ...toggleProperty,\n validate: (value) => validateToggle?.(value === true ? 'enabled' : 'none') ?? {\n ok: true,\n value: value === true ? 'enabled' : 'none',\n },\n }],\n };\n}\n\nfunction readEditorSceneInspectorRenderingProfile(value: EditorSceneRenderingProfile | unknown): EditorSceneRenderingProfile {\n if (\n value\n && typeof value === 'object'\n && 'environment' in value\n && 'postProcess' in value\n && 'shadows' in value\n && 'renderingGroups' in value\n && 'shadowMeshes' in value\n ) {\n return value as EditorSceneRenderingProfile;\n }\n return normalizeEditorSceneRenderingProfile(value);\n}\n\nfunction readEditorSceneCompactShadowCastValue(\n value: EditorShadowCastMode | undefined,\n resolvedMode: EditorShadowResolvedMode,\n): EditorShadowCastMode {\n if (value === 'enabled') return 'enabled';\n if (value === 'none') return 'none';\n return resolvedMode === 'none' ? 'none' : 'enabled';\n}\n\nfunction readEditorSceneCompactShadowReceiveValue(value: EditorShadowReceiveMode | undefined): EditorShadowReceiveMode {\n return value === 'enabled' ? 'enabled' : 'none';\n}\n\nfunction readEditorSceneCompactShadowPolicyValue(\n authoredMode: EditorShadowMode | undefined,\n resolvedMode: EditorShadowResolvedMode,\n): EditorShadowMode {\n if (authoredMode === 'none' || authoredMode === 'dynamic' || authoredMode === 'blob' || authoredMode === 'projected') {\n return authoredMode;\n }\n if (resolvedMode === 'none' || resolvedMode === 'dynamic' || resolvedMode === 'blob' || resolvedMode === 'projected') {\n return resolvedMode;\n }\n return 'none';\n}\n\nfunction readEditorSceneCompactShadowQualityValue(\n authoredQuality: EditorShadowQuality | undefined,\n resolvedQuality: EditorShadowResolvedQuality,\n): EditorShadowQuality {\n if (authoredQuality === 'low' || authoredQuality === 'medium' || authoredQuality === 'high') {\n return authoredQuality;\n }\n if (resolvedQuality === 'low' || resolvedQuality === 'medium' || resolvedQuality === 'high') {\n return resolvedQuality;\n }\n return 'high';\n}\n\nfunction createEditorSceneShadowResolvedInspectorProperties<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n>(\n plan: EditorShadowResolvedPlan,\n text: EditorSceneShadowInspectorText,\n startOrder: number,\n): InspectorProperty<TDocument>[] {\n const diagnostics = plan.diagnostics\n .map(diagnostic => `${diagnostic.severity}:${diagnostic.code} - ${diagnostic.message}`)\n .join('\\n');\n const properties: Array<InspectorProperty<TDocument> | null> = [];\n if (EDITOR_SHADOW_STATIC_AUTHORING_ENABLED && plan.mode === 'static') {\n properties.push(createEditorSceneReadonlyInspectorProperty<TDocument>({\n path: 'shadow.static.bakeState',\n label: text.staticBakeState,\n value: plan.stale ? text.staticBakeStale : text.staticBakeAuthored,\n order: startOrder + 5,\n source: 'Derived',\n tooltip: text.tooltips.staticBakeState,\n effect: 'derived',\n }));\n }\n if (diagnostics) {\n properties.push(createEditorSceneReadonlyInspectorProperty<TDocument>({\n path: 'shadow.resolved.diagnostics',\n label: text.resolvedDiagnostics,\n value: diagnostics,\n order: startOrder + 6,\n source: 'Derived',\n tooltip: text.tooltips.resolvedDiagnostics,\n effect: plan.diagnostics.some(diagnostic => diagnostic.severity === 'error')\n ? 'unsupported'\n : 'derived',\n }));\n }\n return properties.filter((property): property is InspectorProperty<TDocument> => !!property);\n}\n\nfunction readEditorSceneShadowFallbackModeFromRenderingProfile(\n profile: EditorSceneRenderingProfile,\n): EditorShadowResolvedMode {\n const defaultMode = profile.shadows.defaultMode;\n if (defaultMode === 'planar') return 'projected';\n return defaultMode;\n}\n\nexport function createEditorSceneStaticShadowBakeActionProperty<TDocument = unknown>(\n text: EditorSceneShadowInspectorText,\n order: number,\n): InspectorProperty<TDocument> {\n return {\n path: EDITOR_SCENE_STATIC_SHADOW_BAKE_ACTION_PATH,\n label: text.bakeAction,\n valueType: 'string',\n control: 'custom',\n customControl: 'rendering-action-button',\n controlOptions: {\n actionId: EDITOR_SCENE_STATIC_SHADOW_BAKE_ACTION_ID,\n label: text.bakeAction,\n icon: 'save',\n },\n value: EDITOR_SCENE_STATIC_SHADOW_BAKE_ACTION_ID,\n readOnly: false,\n persistence: 'document',\n commitMode: 'immediate',\n order,\n tooltip: text.tooltips.bakeAction,\n batchEdit: false,\n tags: ['Rendering'],\n };\n}\n\nfunction createEditorSceneShadowParamInspectorProperties<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n shadow: EditorShadowSettings,\n text: EditorSceneShadowInspectorText,\n startOrder: number,\n): InspectorProperty<TDocument>[] {\n return [\n createEditorSceneShadowNumberInspectorProperty(input, 'shadow.params.opacity', text.opacity, shadow.params?.opacity ?? null, startOrder + 0, 0.05, text.tooltips.opacity),\n createEditorSceneShadowNumberInspectorProperty(input, 'shadow.params.softness', text.softness, shadow.params?.softness ?? null, startOrder + 1, 0.05, text.tooltips.softness),\n createEditorSceneShadowNumberInspectorProperty(input, 'shadow.params.bias', text.bias, shadow.params?.bias ?? null, startOrder + 2, 0.0001, text.tooltips.bias),\n createEditorSceneShadowNumberInspectorProperty(input, 'shadow.params.normalBias', text.normalBias, shadow.params?.normalBias ?? null, startOrder + 3, 0.0001, text.tooltips.normalBias),\n createEditorSceneShadowNumberInspectorProperty(input, 'shadow.params.maxDistance', text.maxDistance, shadow.params?.maxDistance ?? null, startOrder + 4, 1, text.tooltips.maxDistance),\n createEditorSceneShadowNumberInspectorProperty(input, 'shadow.params.resolution', text.resolution, shadow.params?.resolution ?? null, startOrder + 5, 64, text.tooltips.resolution),\n createEditorSceneShadowNumberInspectorProperty(input, 'shadow.params.cascadeCount', text.cascadeCount, shadow.params?.cascadeCount ?? null, startOrder + 6, 1, text.tooltips.cascadeCount),\n createEditorSceneShadowNumberInspectorProperty(input, 'shadow.params.bakeSamples', text.bakeSamples, shadow.params?.bakeSamples ?? null, startOrder + 7, 1, text.tooltips.bakeSamples),\n createEditorSceneShadowNumberInspectorProperty(input, 'shadow.params.blurKernel', text.blurKernel, shadow.params?.blurKernel ?? null, startOrder + 8, 1, text.tooltips.blurKernel),\n ];\n}\n\nfunction createEditorSceneShadowNumberInspectorProperty<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n path: string,\n label: string,\n value: number | null,\n order: number,\n step: number,\n tooltip: string,\n): InspectorProperty<TDocument> {\n return createEditorSceneEditableInspectorProperty(input, {\n document: input.document,\n path,\n label,\n valueType: 'number',\n control: 'number',\n value,\n commitMode: 'live',\n order,\n step,\n tooltip,\n });\n}\n\nexport function createEditorSceneRenderingInspectorSection<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n TNodeKind extends string = EditorSceneNodeKind,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): InspectorSection<TDocument> | null {\n if (!canEditEditorSceneObjectRendering(input)) return null;\n const profile = readEditorSceneInspectorRenderingProfile(input.renderingProfile);\n const renderingGroupId = readEditorSceneRenderingGroupId(input.gameObject.rendering?.renderingGroupId);\n const groupSlot = profile.renderingGroups.slots.find(slot => slot.renderingGroupId === renderingGroupId)\n ?? profile.renderingGroups.slots[0]!;\n const alphaIndex = readEditorSceneRenderingAlphaIndex(input.gameObject)\n ?? null;\n return {\n id: 'rendering',\n title: 'Rendering',\n order: 36,\n placement: 'body',\n summary: createEditorSceneRenderingInspectorSummary(groupSlot, alphaIndex),\n persistence: 'document',\n collapsedByDefault: false,\n properties: [\n createEditorSceneEditableInspectorProperty(input, {\n document: input.document,\n path: 'rendering.renderingGroupId',\n label: 'Rendering Group',\n valueType: 'enum',\n control: 'enum',\n value: renderingGroupId,\n commitMode: 'immediate',\n order: 0,\n options: profile.renderingGroups.slots.map(slot => ({\n label: `${slot.renderingGroupId}: ${slot.name}`,\n value: slot.renderingGroupId,\n })),\n }),\n createEditorSceneEditableInspectorProperty(input, {\n document: input.document,\n path: 'rendering.alphaIndex',\n label: 'Alpha Order',\n valueType: 'enum',\n control: 'enum',\n value: alphaIndex,\n commitMode: 'immediate',\n order: 1,\n options: createEditorSceneRenderingAlphaIndexOptions(groupSlot, alphaIndex),\n }),\n ],\n };\n}\n\nexport function createEditorSceneComponentsInspectorSection<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n>(\n input: Pick<EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject>, 'gameObject'>,\n): InspectorSection<TDocument> | null {\n return createEditorSceneReadonlyInspectorSection<TDocument>({\n id: 'components',\n title: 'Scripts / Components',\n order: 65,\n summary: createEditorSceneComponentsInspectorSummary(input.gameObject),\n collapsedByDefault: true,\n tags: ['Document'],\n properties: createEditorSceneComponentsInspectorProperties(input.gameObject),\n });\n}\n\nexport function createEditorSceneComponentsInspectorSummary(\n gameObject: Pick<EditorSceneGameObject, 'components'>,\n): string {\n return gameObject.components.map((component) => component.type).join(', ') || 'none';\n}\n\nexport function createEditorSceneComponentsInspectorProperties<TDocument = unknown>(\n gameObject: Pick<EditorSceneGameObject, 'components'>,\n): InspectorProperty<TDocument>[] {\n const properties: InspectorProperty<TDocument>[] = [];\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'components.count',\n label: 'Count',\n value: gameObject.components.length,\n order: 0,\n source: 'Document',\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'components.types',\n label: 'Types',\n value: createEditorSceneComponentsInspectorSummary(gameObject),\n order: 1,\n source: 'Document',\n });\n gameObject.components.forEach((component, index) => {\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: `components.${index}`,\n label: `${component.type} ${index}`,\n value: component,\n order: index + 2,\n source: 'Document',\n tags: ['Component', 'Raw'],\n });\n });\n return properties;\n}\n\nexport function createEditorSceneMetadataInspectorSection<\n TDocument extends EditorSceneDocument = EditorSceneDocument,\n TGameObject extends EditorSceneGameObject = EditorSceneGameObject,\n>(\n input: Pick<EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject>, 'document' | 'gameObject'> & {\n assetId?: string | null;\n },\n): InspectorSection<TDocument> | null {\n const assetId = input.assetId ?? findEditorSceneModelRenderer(input.gameObject)?.assetId ?? null;\n const properties = createEditorSceneMetadataInspectorProperties({\n document: input.document,\n gameObject: input.gameObject,\n assetId,\n });\n if (properties.length === 0) return null;\n return {\n id: 'metadata',\n title: 'Metadata',\n order: 80,\n placement: 'body',\n summary: createEditorSceneMetadataInspectorSummary({\n document: input.document,\n gameObject: input.gameObject,\n assetId,\n }),\n persistence: 'readonly',\n collapsedByDefault: true,\n tags: ['Document', 'Asset'],\n properties,\n };\n}\n\nexport function createEditorSceneMetadataInspectorProperties<TDocument extends EditorSceneDocument = EditorSceneDocument>(\n input: {\n document: TDocument;\n gameObject: EditorSceneGameObject;\n assetId?: string | null;\n },\n): InspectorProperty<TDocument>[] {\n const properties: InspectorProperty<TDocument>[] = [];\n const asset = input.assetId ? findEditorSceneInspectorAsset(input.document, input.assetId) : null;\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'metadata.document',\n label: 'Document Meta',\n value: input.document.meta ?? 'none',\n order: 0,\n source: 'Document',\n tags: ['Raw'],\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'metadata.gameObject',\n label: 'GameObject Metadata',\n value: input.gameObject.metadata ?? 'none',\n order: 1,\n source: 'Document',\n tags: ['Raw'],\n });\n appendEditorSceneDocumentReadonlyProperty(properties, {\n path: 'metadata.asset',\n label: 'Asset Metadata',\n value: asset?.metadata ?? 'none',\n order: 2,\n source: 'Asset',\n tags: ['Raw'],\n });\n return properties;\n}\n\nexport function createEditorSceneMetadataInspectorSummary(\n input: {\n document: Pick<EditorSceneDocument, 'meta' | 'assets'>;\n gameObject: Pick<EditorSceneGameObject, 'metadata'>;\n assetId?: string | null;\n },\n): string {\n const asset = input.assetId ? findEditorSceneInspectorAsset(input.document, input.assetId) : null;\n const sources = [\n input.document.meta ? 'Document' : null,\n input.gameObject.metadata ? 'GameObject' : null,\n asset?.metadata ? 'Asset' : null,\n ].filter((entry): entry is string => !!entry);\n return sources.length > 0 ? sources.join(' + ') : 'none';\n}\n\nfunction createEditorSceneEditableInspectorProperty<\n TDocument extends EditorSceneDocument,\n TGameObject extends EditorSceneGameObject,\n TNodeKind extends string,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n property: Omit<InspectorProperty<TDocument>, 'document' | 'readOnly' | 'persistence' | 'validate'> & {\n document?: TDocument | null;\n },\n nodeKind = resolveEditorSceneInspectorNodeKind(input),\n): InspectorProperty<TDocument> {\n const { document, ...propertyInput } = property;\n return createEditorSceneDocumentInspectorProperty<TDocument, TNodeKind>({\n document: document ?? null,\n nodeKind,\n property: propertyInput,\n extraValidators: input.extraValidators,\n });\n}\n\nfunction appendEditorSceneDocumentReadonlyProperty<TDocument>(\n properties: InspectorProperty<TDocument>[],\n input: EditorSceneReadonlyInspectorPropertyInput<TDocument>,\n): void {\n const property = createEditorSceneReadonlyInspectorProperty(input);\n if (property) properties.push(property);\n}\n\nfunction createEditorSceneDocumentReadonlyProperty<TDocument = unknown>(\n path: string,\n label: string,\n value: unknown,\n order: number,\n): InspectorProperty<TDocument> {\n return createEditorSceneReadonlyInspectorProperty<TDocument>({\n path,\n label,\n value,\n order,\n persistence: 'readonly',\n source: 'Document',\n })!;\n}\n\nfunction resolveEditorSceneInspectorNodeKind<\n TDocument extends EditorSceneDocument,\n TGameObject extends EditorSceneGameObject,\n TNodeKind extends string,\n>(\n input: EditorSceneDocumentInspectorSectionsInput<TDocument, TGameObject, TNodeKind>,\n): TNodeKind {\n return input.nodeKind ?? readEditorSceneNodeKind(input.gameObject) as TNodeKind;\n}\n\nexport function canEditEditorSceneShadowSettings(\n input: Pick<EditorSceneDocumentInspectorSectionsInput, 'gameObject' | 'nodeKind'>,\n): boolean {\n const gameObject = input.gameObject;\n if (isEditorSceneRootGameObject(gameObject)) return false;\n if (gameObject.transformType === 'camera' || gameObject.transformType === 'light') return false;\n if (gameObject.camera || gameObject.light) return false;\n const nodeKind = input.nodeKind ?? readEditorSceneNodeKind(gameObject);\n return nodeKind === 'instance' || nodeKind === 'primitive' || nodeKind === 'transform';\n}\n\nfunction canEditEditorSceneObjectRendering(\n input: Pick<EditorSceneDocumentInspectorSectionsInput, 'gameObject' | 'nodeKind'>,\n): boolean {\n const gameObject = input.gameObject;\n if (isEditorSceneRootGameObject(gameObject)) return false;\n if (gameObject.transformType === 'camera' || gameObject.transformType === 'light') return false;\n if (gameObject.camera || gameObject.light) return false;\n const nodeKind = input.nodeKind ?? readEditorSceneNodeKind(gameObject);\n return nodeKind === 'instance' || nodeKind === 'primitive' || nodeKind === 'transform';\n}\n\nfunction readEditorSceneRenderingGroupId(value: unknown): 0 | 1 | 2 | 3 {\n return value === 1 || value === 2 || value === 3 ? value : 0;\n}\n\nfunction readEditorSceneRenderingAlphaIndex(gameObject: EditorSceneGameObject): number | undefined {\n const renderingAlphaIndex = gameObject.rendering?.alphaIndex;\n if (typeof renderingAlphaIndex === 'number' && Number.isFinite(renderingAlphaIndex)) return renderingAlphaIndex;\n return undefined;\n}\n\nfunction createEditorSceneRenderingInspectorSummary(\n groupSlot: EditorSceneRenderingGroupSlot,\n alphaIndex: number | null,\n): string {\n return alphaIndex == null\n ? `${groupSlot.name} · Babylon 默认`\n : `${groupSlot.name} · ${resolveEditorSceneAlphaIndexLabel(groupSlot, alphaIndex)}`;\n}\n\nfunction createEditorSceneRenderingAlphaIndexOptions(\n groupSlot: EditorSceneRenderingGroupSlot,\n alphaIndex: number | null,\n): Array<{ label: string; value: number | null; batchCompatibility?: 'ignore' }> {\n const options: Array<{ label: string; value: number | null; batchCompatibility?: 'ignore' }> = [{\n label: 'Babylon 默认',\n value: null,\n }, ...groupSlot.alphaIndexPresets.map(preset => ({\n label: `${preset.name} (${preset.alphaIndex})`,\n value: preset.alphaIndex,\n }))];\n if (alphaIndex != null && !groupSlot.alphaIndexPresets.some(preset => preset.alphaIndex === alphaIndex)) {\n options.push({\n label: `未命名值 ${alphaIndex}`,\n value: alphaIndex,\n batchCompatibility: 'ignore',\n });\n }\n return options;\n}\n\nfunction resolveEditorSceneAlphaIndexLabel(groupSlot: EditorSceneRenderingGroupSlot, alphaIndex: number): string {\n const preset = groupSlot.alphaIndexPresets.find(candidate => candidate.alphaIndex === alphaIndex);\n return preset ? preset.name : `未命名值 ${alphaIndex}`;\n}\n\nexport function readEditorSceneShadowInspectorLanguage(\n gameObject: Pick<EditorSceneGameObject, 'metadata'>,\n): EditorSceneShadowInspectorLanguage {\n return gameObject.metadata?.shadowInspectorLanguage === 'en' ? 'en' : 'zh';\n}\n\nexport function getEditorSceneShadowInspectorText(\n language: EditorSceneShadowInspectorLanguage,\n): EditorSceneShadowInspectorText {\n return EDITOR_SCENE_SHADOW_INSPECTOR_TEXT[language] ?? EDITOR_SCENE_SHADOW_INSPECTOR_TEXT.zh;\n}\n\nexport function createEditorSceneShadowCastOptions(\n text: EditorSceneShadowInspectorText,\n): readonly EditorSceneInspectorOption<EditorShadowCastMode>[] {\n return [\n { label: text.castNone, value: 'none' },\n { label: text.castEnabled, value: 'enabled' },\n ];\n}\n\nexport function createEditorSceneShadowReceiveOptions(\n text: EditorSceneShadowInspectorText,\n): readonly EditorSceneInspectorOption<EditorShadowReceiveMode>[] {\n return [\n { label: text.receiveNone, value: 'none' },\n { label: text.receiveEnabled, value: 'enabled' },\n ];\n}\n\nexport function createEditorSceneShadowPolicyOptions(\n text: EditorSceneShadowInspectorText,\n): readonly EditorSceneInspectorOption<EditorShadowMode>[] {\n return [\n { label: text.policyNone, value: 'none' },\n { label: text.policyDynamic, value: 'dynamic' },\n { label: text.policyBlob, value: 'blob' },\n { label: text.policyProjected, value: 'projected' },\n ];\n}\n\nexport function createEditorSceneShadowQualityOptions(\n text: EditorSceneShadowInspectorText,\n): readonly EditorSceneInspectorOption<EditorShadowQuality>[] {\n return [\n { label: text.qualityLow, value: 'low' },\n { label: text.qualityMedium, value: 'medium' },\n { label: text.qualityHigh, value: 'high' },\n ];\n}\n\nexport function createEditorSceneShadowLightOptions(\n text: EditorSceneShadowInspectorText,\n): readonly EditorSceneInspectorOption<EditorShadowLightMode>[] {\n return [\n { label: text.inherit, value: 'inherit' },\n { label: text.lightSceneMain, value: 'scene-main' },\n { label: text.lightNearest, value: 'nearest' },\n { label: text.lightExplicit, value: 'explicit' },\n ];\n}\n\nexport function readEditorSceneInspectorShadowSettings(\n gameObject: Pick<EditorSceneGameObject, 'shadow'>,\n): EditorShadowSettings {\n return readEditorShadowSettingsResult(gameObject.shadow).shadow ?? {};\n}\n\nfunction readEditorSceneInspectorTransformVector(\n transform: {\n position: { x: number; y: number; z: number };\n rotation: { x: number; y: number; z: number };\n scale?: { x: number; y: number; z: number };\n },\n vectorName: 'position' | 'rotation' | 'scale',\n) {\n if (vectorName === 'scale') return transform.scale ?? { x: 1, y: 1, z: 1 };\n return transform[vectorName];\n}\n\nfunction formatEditorSceneVec3(vector: { x: number; y: number; z: number }): string {\n return `${formatEditorSceneMatrixNumber(vector.x)}, ${formatEditorSceneMatrixNumber(vector.y)}, ${formatEditorSceneMatrixNumber(vector.z)}`;\n}\n\nfunction formatEditorSceneMatrixNumber(value: number): string {\n return roundEditorSceneInspectorNumber(value).toString();\n}\n\nfunction toEditorSceneTransformVectorLabel(\n vectorName: 'position' | 'rotation' | 'scale',\n): string {\n return vectorName === 'position' ? 'Position' : vectorName === 'rotation' ? 'Rotation' : 'Scale';\n}\n\nfunction findEditorSceneInspectorAsset(\n document: Pick<EditorSceneDocument, 'assets'>,\n assetId: string,\n): EditorSceneAsset | null {\n return document.assets.find((entry) => entry.id === assetId) ?? null;\n}\n\nconst DEFAULT_EDITOR_SCENE_TRANSFORM_TYPE_OPTIONS: readonly EditorSceneInspectorOption[] = [\n { label: 'Plain', value: 'plain' },\n { label: 'Light', value: 'light' },\n { label: 'Camera', value: 'camera' },\n];\n\nconst DEFAULT_EDITOR_SCENE_PRIMITIVE_SHAPE_OPTIONS: readonly EditorSceneInspectorOption[] = [\n { label: 'Cube', value: 'cube' },\n { label: 'Sphere', value: 'sphere' },\n { label: 'Plane', value: 'plane' },\n { label: 'Capsule', value: 'capsule' },\n];\n\nexport interface EditorSceneShadowInspectorText {\n title: string;\n language: string;\n cast: string;\n receive: string;\n policy: string;\n quality: string;\n light: string;\n lightId: string;\n opacity: string;\n softness: string;\n bias: string;\n normalBias: string;\n maxDistance: string;\n resolution: string;\n cascadeCount: string;\n bakeSamples: string;\n blurKernel: string;\n bakeAction: string;\n resolvedSource: string;\n resolvedPolicy: string;\n resolvedQuality: string;\n resolvedReceivers: string;\n resolvedLight: string;\n resolvedDiagnostics: string;\n staticBakeState: string;\n staticBakeAuthored: string;\n staticBakeStale: string;\n sourceShadowSettings: string;\n sourcePrefabDefaults: string;\n sourceAssetDefaults: string;\n sourceInherited: string;\n none: string;\n inherit: string;\n castNone: string;\n castEnabled: string;\n castAuto: string;\n receiveNone: string;\n receiveEnabled: string;\n receiveAuto: string;\n policyNone: string;\n policyDynamic: string;\n policyStatic: string;\n policyBlob: string;\n policyProjected: string;\n policyAuto: string;\n qualityLow: string;\n qualityMedium: string;\n qualityHigh: string;\n qualityUltra: string;\n lightSceneMain: string;\n lightNearest: string;\n lightExplicit: string;\n summaryPolicy(mode: EditorShadowMode, mixed?: boolean): string;\n tooltips: {\n language: string;\n cast: string;\n receive: string;\n policy: string;\n quality: string;\n light: string;\n lightId: string;\n opacity: string;\n softness: string;\n bias: string;\n normalBias: string;\n maxDistance: string;\n resolution: string;\n cascadeCount: string;\n bakeSamples: string;\n blurKernel: string;\n bakeAction: string;\n resolvedSource: string;\n resolvedPolicy: string;\n resolvedQuality: string;\n resolvedReceivers: string;\n resolvedLight: string;\n resolvedDiagnostics: string;\n staticBakeState: string;\n };\n}\n\nexport const EDITOR_SCENE_SHADOW_INSPECTOR_LANGUAGE_OPTIONS: readonly EditorSceneInspectorOption<EditorSceneShadowInspectorLanguage>[] = [\n { label: '中文', value: 'zh' },\n { label: 'English', value: 'en' },\n];\n\nconst EDITOR_SCENE_SHADOW_INSPECTOR_TEXT: Record<EditorSceneShadowInspectorLanguage, EditorSceneShadowInspectorText> = {\n zh: {\n title: '阴影',\n language: '语言',\n cast: '投射阴影',\n receive: '接收阴影',\n policy: '阴影模式',\n quality: '质量预设',\n light: '阴影光源',\n lightId: '显式光源 ID',\n opacity: '透明度',\n softness: '柔和度',\n bias: 'Bias',\n normalBias: 'Normal Bias',\n maxDistance: '最大距离',\n resolution: '分辨率',\n cascadeCount: '级联数量',\n bakeSamples: '烘焙采样',\n blurKernel: '模糊核',\n bakeAction: '更新烘焙结果',\n resolvedSource: '生效来源',\n resolvedPolicy: '生效策略',\n resolvedQuality: '生效质量',\n resolvedReceivers: '接收面',\n resolvedLight: '光源',\n resolvedDiagnostics: '诊断',\n staticBakeState: '静态烘焙状态',\n staticBakeAuthored: '已标记静态;请在修改后更新烘焙',\n staticBakeStale: '烘焙已过期',\n sourceShadowSettings: '当前对象 shadow.*',\n sourcePrefabDefaults: 'Prefab defaults',\n sourceAssetDefaults: 'Source asset defaults',\n sourceInherited: '继承 / 项目默认',\n none: '无',\n inherit: '继承',\n castNone: '关闭',\n castEnabled: '开启',\n castAuto: '自动',\n receiveNone: '关闭',\n receiveEnabled: '开启',\n receiveAuto: '自动',\n policyNone: '无阴影',\n policyDynamic: '动态 Shadow Map',\n policyStatic: '静态烘焙',\n policyBlob: 'Blob 阴影',\n policyProjected: 'Projected 阴影',\n policyAuto: '自动',\n qualityLow: '高性能',\n qualityMedium: '平衡',\n qualityHigh: '高质量',\n qualityUltra: '超高质量',\n lightSceneMain: '场景主光源',\n lightNearest: '最近光源',\n lightExplicit: '指定光源',\n summaryPolicy: (mode, mixed) => {\n if (mixed) return '多种策略';\n if (mode === 'none') return '无阴影';\n if (mode === 'dynamic') return '动态 Shadow Map';\n if (mode === 'static') return '静态烘焙';\n if (mode === 'blob') return 'Blob 阴影';\n if (mode === 'projected') return 'Projected 阴影';\n if (mode === 'auto') return '自动';\n return '继承';\n },\n tooltips: {\n language: '切换阴影 Inspector 的显示语言。该字段只影响编辑器,不会导出到运行时。',\n cast: '控制该对象是否投射阴影。关闭时该对象不会产生阴影。',\n receive: '控制该对象是否接收阴影。通常地面或平台开启,角色和道具按需要开启。',\n policy: '选择当前对象使用的阴影模式:无阴影、动态 Shadow Map、Blob 阴影或 Projected 阴影。',\n quality: '选择阴影预设:高性能、平衡或高质量。具体项目级参数在右侧 Rendering / Shadows 面板中配置。',\n light: '选择阴影使用的光源策略。显式光源需要填写光源 ID。',\n lightId: '当阴影光源为指定光源时使用。为空表示稍后由 resolver 诊断。',\n opacity: '覆盖阴影透明度,范围 0 到 1;为空则使用质量预设。',\n softness: '覆盖阴影柔和度;为空则使用质量预设。',\n bias: '覆盖 Shadow Map bias;为空则使用质量预设。',\n normalBias: '覆盖 Shadow Map normal bias;为空则使用质量预设。',\n maxDistance: '覆盖阴影最大作用距离;为空则使用质量预设。',\n resolution: '覆盖阴影贴图或烘焙分辨率;为空则使用质量预设。',\n cascadeCount: '覆盖动态阴影级联数量;为空则使用质量预设。',\n bakeSamples: '覆盖静态烘焙采样数;为空则使用质量预设。',\n blurKernel: '覆盖静态或 projected 阴影的模糊核大小;为空则使用质量预设。',\n bakeAction: '重新烘焙当前场景中所有标记为静态烘焙阴影的物体,并刷新编辑器预览和运行时 artifact。',\n resolvedSource: '只读摘要:当前对象阴影配置主要来自对象自身、Prefab/Instance 链或项目默认。',\n resolvedPolicy: '只读摘要:resolver 将当前 Caster / Receiver / Light / Quality 设置解析成的实际后端。',\n resolvedQuality: '只读摘要:resolver 使用的实际质量预设。',\n resolvedReceivers: '只读摘要:resolver 找到的阴影接收面对象 id。',\n resolvedLight: '只读摘要:resolver 找到的阴影光源 id。',\n resolvedDiagnostics: '只读摘要:resolver 返回的 warning/error,可用于解释为什么阴影没有显示。',\n staticBakeState: '静态阴影只随 owner 显隐同步;transform、light 或 source 改动后需要更新烘焙。',\n },\n },\n en: {\n title: 'Shadow',\n language: 'Language',\n cast: 'Cast Shadow',\n receive: 'Receive Shadow',\n policy: 'Shadow Mode',\n quality: 'Quality Preset',\n light: 'Shadow Light',\n lightId: 'Explicit Light ID',\n opacity: 'Opacity',\n softness: 'Softness',\n bias: 'Bias',\n normalBias: 'Normal Bias',\n maxDistance: 'Max Distance',\n resolution: 'Resolution',\n cascadeCount: 'Cascade Count',\n bakeSamples: 'Bake Samples',\n blurKernel: 'Blur Kernel',\n bakeAction: 'Update Bake',\n resolvedSource: 'Effective Source',\n resolvedPolicy: 'Effective Policy',\n resolvedQuality: 'Effective Quality',\n resolvedReceivers: 'Receivers',\n resolvedLight: 'Light',\n resolvedDiagnostics: 'Diagnostics',\n staticBakeState: 'Static Bake State',\n staticBakeAuthored: 'Authored static; update bake after changes',\n staticBakeStale: 'Bake is stale',\n sourceShadowSettings: 'This object shadow.*',\n sourcePrefabDefaults: 'Prefab defaults',\n sourceAssetDefaults: 'Source asset defaults',\n sourceInherited: 'Inherited / project default',\n none: 'None',\n inherit: 'Inherit',\n castNone: 'Off',\n castEnabled: 'On',\n castAuto: 'Auto',\n receiveNone: 'Off',\n receiveEnabled: 'On',\n receiveAuto: 'Auto',\n policyNone: 'No Shadow',\n policyDynamic: 'Dynamic Shadow Map',\n policyStatic: 'Static Baked',\n policyBlob: 'Blob Shadow',\n policyProjected: 'Projected Shadow',\n policyAuto: 'Auto',\n qualityLow: 'High Performance',\n qualityMedium: 'Balanced',\n qualityHigh: 'High Quality',\n qualityUltra: 'Ultra',\n lightSceneMain: 'Scene Main Light',\n lightNearest: 'Nearest Light',\n lightExplicit: 'Explicit Light',\n summaryPolicy: (mode, mixed) => {\n if (mixed) return 'Mixed policies';\n if (mode === 'none') return 'No Shadow';\n if (mode === 'dynamic') return 'Dynamic Shadow Map';\n if (mode === 'static') return 'Static Baked';\n if (mode === 'blob') return 'Blob Shadow';\n if (mode === 'projected') return 'Projected Shadow';\n if (mode === 'auto') return 'Auto';\n return 'Inherit';\n },\n tooltips: {\n language: 'Switches the display language for this Shadow inspector. This editor-only field is not exported to runtime.',\n cast: 'Controls whether this object casts shadows. Off prevents it from producing a shadow.',\n receive: 'Controls whether this object receives shadows. Ground and platforms usually turn this on; characters and props can opt in when needed.',\n policy: 'Chooses this object shadow mode: No Shadow, Dynamic Shadow Map, Blob Shadow, or Projected Shadow.',\n quality: 'Chooses a shadow preset: High Performance, Balanced, or High Quality. Project-level parameters live in the Rendering / Shadows panel.',\n light: 'Chooses the light selection policy for shadows. Explicit light requires a light id.',\n lightId: 'Used when Shadow Light is Explicit Light. Empty values will be diagnosed by the resolver later.',\n opacity: 'Overrides shadow opacity from 0 to 1. Empty uses the quality preset.',\n softness: 'Overrides softness. Empty uses the quality preset.',\n bias: 'Overrides shadow-map bias. Empty uses the quality preset.',\n normalBias: 'Overrides shadow-map normal bias. Empty uses the quality preset.',\n maxDistance: 'Overrides max shadow distance. Empty uses the quality preset.',\n resolution: 'Overrides map or bake resolution. Empty uses the quality preset.',\n cascadeCount: 'Overrides dynamic shadow cascade count. Empty uses the quality preset.',\n bakeSamples: 'Overrides static bake sample count. Empty uses the quality preset.',\n blurKernel: 'Overrides static or projected blur kernel. Empty uses the quality preset.',\n bakeAction: 'Rebake every object authored as Static Baked Shadow in the current scene, then refresh the editor preview and runtime artifact.',\n resolvedSource: 'Readonly summary of whether this object is mainly using object shadow.*, prefab/instance inheritance, or project defaults.',\n resolvedPolicy: 'Readonly summary of the concrete backend resolved from Caster / Receiver / Light / Quality settings.',\n resolvedQuality: 'Readonly summary of the quality preset used by the resolver.',\n resolvedReceivers: 'Readonly summary of receiver object ids selected by the resolver.',\n resolvedLight: 'Readonly summary of the light id selected by the resolver.',\n resolvedDiagnostics: 'Readonly resolver warnings/errors explaining why a shadow may not appear.',\n staticBakeState: 'Static shadows follow owner visibility; transform, light, or source changes require a rebake.',\n },\n },\n};\n"]}
|
package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/editor-entry-manifest.d.ts
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
export declare const PLAYABLE_EDITOR_ENTRY_MANIFEST_SCHEMA_VERSION = 1;
|
|
2
|
+
export declare const PLAYABLE_EDITOR_ENTRY_MANIFEST_PATH = "/__fps_editor/entry-manifest.json";
|
|
3
|
+
export declare const PLAYABLE_EDITOR_ENTRY_MANIFEST_CACHE_CONTROL = "no-cache";
|
|
4
|
+
export declare const PLAYABLE_EDITOR_ENTRY_IMMUTABLE_CACHE_CONTROL = "public, max-age=31536000, immutable";
|
|
5
|
+
export type PlayableEditorEntryResourceCachePolicy = 'revalidate' | 'immutable';
|
|
6
|
+
export interface PlayableEditorEntryBuildIdentity {
|
|
7
|
+
readonly packageName: string;
|
|
8
|
+
readonly version: string;
|
|
9
|
+
readonly buildId: string;
|
|
10
|
+
readonly distHash: string;
|
|
11
|
+
}
|
|
12
|
+
export interface PlayableEditorEntryManifestEntry {
|
|
13
|
+
readonly kind: 'module';
|
|
14
|
+
readonly url: string;
|
|
15
|
+
readonly cache: PlayableEditorEntryResourceCachePolicy;
|
|
16
|
+
}
|
|
17
|
+
export interface PlayableEditorEntryManifest {
|
|
18
|
+
readonly schemaVersion: 1;
|
|
19
|
+
readonly build: PlayableEditorEntryBuildIdentity;
|
|
20
|
+
readonly entry: PlayableEditorEntryManifestEntry;
|
|
21
|
+
readonly cacheControl: {
|
|
22
|
+
readonly manifest: typeof PLAYABLE_EDITOR_ENTRY_MANIFEST_CACHE_CONTROL;
|
|
23
|
+
readonly immutableResource: typeof PLAYABLE_EDITOR_ENTRY_IMMUTABLE_CACHE_CONTROL;
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
export interface CreatePlayableEditorEntryManifestOptions {
|
|
27
|
+
readonly packageName: string;
|
|
28
|
+
readonly version: string;
|
|
29
|
+
readonly buildId: string;
|
|
30
|
+
readonly distHash: string;
|
|
31
|
+
readonly entryUrl: string;
|
|
32
|
+
readonly entryCache?: PlayableEditorEntryResourceCachePolicy;
|
|
33
|
+
}
|
|
34
|
+
export interface CreatePlayableEditorEntryModuleUrlOptions {
|
|
35
|
+
readonly baseUrl: string;
|
|
36
|
+
readonly retryAttempt?: number;
|
|
37
|
+
}
|
|
38
|
+
export declare function createPlayableEditorEntryManifest(options: CreatePlayableEditorEntryManifestOptions): PlayableEditorEntryManifest;
|
|
39
|
+
export declare function parsePlayableEditorEntryManifest(value: unknown): PlayableEditorEntryManifest;
|
|
40
|
+
export declare function createPlayableEditorEntryModuleUrl(manifest: PlayableEditorEntryManifest, options: CreatePlayableEditorEntryModuleUrlOptions): string;
|
|
41
|
+
//# sourceMappingURL=editor-entry-manifest.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"editor-entry-manifest.d.ts","sourceRoot":"","sources":["../../src/local-harness/editor-entry-manifest.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,6CAA6C,IAAI,CAAC;AAC/D,eAAO,MAAM,mCAAmC,sCAAsC,CAAC;AACvF,eAAO,MAAM,4CAA4C,aAAa,CAAC;AACvE,eAAO,MAAM,6CAA6C,wCAAwC,CAAC;AAEnG,MAAM,MAAM,sCAAsC,GAAG,YAAY,GAAG,WAAW,CAAC;AAEhF,MAAM,WAAW,gCAAgC;IAC/C,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,gCAAgC;IAC/C,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,sCAAsC,CAAC;CACxD;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,gCAAgC,CAAC;IACjD,QAAQ,CAAC,KAAK,EAAE,gCAAgC,CAAC;IACjD,QAAQ,CAAC,YAAY,EAAE;QACrB,QAAQ,CAAC,QAAQ,EAAE,OAAO,4CAA4C,CAAC;QACvE,QAAQ,CAAC,iBAAiB,EAAE,OAAO,6CAA6C,CAAC;KAClF,CAAC;CACH;AAED,MAAM,WAAW,wCAAwC;IACvD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,sCAAsC,CAAC;CAC9D;AAED,MAAM,WAAW,yCAAyC;IACxD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,wCAAwC,GAChD,2BAA2B,CAmB7B;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,OAAO,GAAG,2BAA2B,CAmB5F;AAED,wBAAgB,kCAAkC,CAChD,QAAQ,EAAE,2BAA2B,EACrC,OAAO,EAAE,yCAAyC,GACjD,MAAM,CAUR"}
|