@fps-games/editor 0.2.0-beta.1 → 0.2.0-beta.3
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/assets.js.map +1 -1
- package/dist/agent-bridge/capabilities/editor-state.js.map +1 -1
- package/dist/agent-bridge/capabilities/host-lifecycle.js.map +1 -1
- package/dist/agent-bridge/capabilities/prefabs.js.map +1 -1
- package/dist/agent-bridge/capabilities/scene-objects.js.map +1 -1
- package/dist/agent-bridge/capabilities/selection.js.map +1 -1
- package/dist/agent-bridge/capabilities/shadows.js.map +1 -1
- package/dist/agent-bridge/capabilities/transform.js.map +1 -1
- package/dist/agent-bridge/capabilities/ui-regions.js.map +1 -1
- package/dist/agent-bridge/capabilities/viewport.js.map +1 -1
- package/dist/agent-bridge/capability-sources.js.map +1 -1
- package/dist/agent-bridge/diagnostics.js.map +1 -1
- package/dist/agent-bridge/index.js.map +1 -1
- package/dist/agent-bridge/register.js.map +1 -1
- package/dist/agent-bridge/shared.js.map +1 -1
- package/dist/agent-bridge/source-types.js.map +1 -1
- package/dist/authoring-apply.js.map +1 -1
- package/dist/build-info.json +48 -48
- package/dist/editor-plugin-agent-capabilities.js.map +1 -1
- package/dist/editor-plugin-hierarchy-command.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/internal/local-editor-lifecycle-operations.js.map +1 -1
- package/dist/local-editor-agent-actions.js.map +1 -1
- package/dist/local-editor-agent-bridge-transport.js.map +1 -1
- package/dist/local-editor-agent-bridge.js.map +1 -1
- package/dist/local-editor-agent-context.js.map +1 -1
- package/dist/local-editor-harness.d.ts +57 -1
- package/dist/local-editor-harness.d.ts.map +1 -1
- package/dist/local-editor-harness.js +129 -0
- package/dist/local-editor-harness.js.map +1 -1
- package/dist/local-editor-marker-graph.js.map +1 -1
- package/dist/local-editor-performance-stats.js.map +1 -1
- package/dist/local-editor-plugin-inspector.js.map +1 -1
- package/dist/local-editor-plugin-panel.js.map +1 -1
- package/dist/local-editor-scene-render-scheduler.js.map +1 -1
- package/dist/local-editor-scene-view-interaction-runtime.js.map +1 -1
- package/dist/local-editor-viewport-render-coordinator.js.map +1 -1
- package/dist/playable-babylon-facade.js.map +1 -1
- package/dist/playable-babylon-outline-inspector.js.map +1 -1
- package/dist/playable-babylon-outline-runtime.js.map +1 -1
- package/dist/playable-babylon-rendering.js.map +1 -1
- package/dist/playable-local-editor-host.d.ts +36 -0
- package/dist/playable-local-editor-host.d.ts.map +1 -1
- package/dist/playable-local-editor-host.js.map +1 -1
- package/dist/playable-product-local-editor.js.map +1 -1
- package/dist/playable-product-projection-preview.js.map +1 -1
- package/dist/playable-product-rendering.js.map +1 -1
- package/dist/playable-product-scene-capabilities.d.ts.map +1 -1
- package/dist/playable-product-scene-capabilities.js +50 -3
- package/dist/playable-product-scene-capabilities.js.map +1 -1
- package/dist/playable-runtime-babylon.js.map +1 -1
- package/dist/playable-runtime.js.map +1 -1
- package/dist/playable-sdk-upgrade-doctor.js.map +1 -1
- package/dist/playable-sdk-vite.js.map +1 -1
- package/dist/playable-sdk.js.map +1 -1
- package/dist/playable-standard-project.d.ts.map +1 -1
- package/dist/playable-standard-project.js +8 -3
- package/dist/playable-standard-project.js.map +1 -1
- package/dist/static-shadow-cpu-worker.js.map +1 -1
- package/dist/vite.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/environment/environment-texture-controller.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/environment/index.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/environment/profile.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/environment/types.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/index.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/lighting/directional-light-angles.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/outlines/babylon-default/apply.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/outlines/babylon-default/index.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/outlines/babylon-default/types.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/outlines/index.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/outlines/types.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/placement/index.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/placement/runtime-drop-position.js.map +1 -1
- 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.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/post-process/index.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/post-process/profile.js.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/post-process/volume-stack.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/reference.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/rendering/index.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/rendering/node-rendering.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/blob-shadow-shaders.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/blob-shadow-system.js.map +1 -1
- 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/planar-shadow-shaders.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/planar-shadow-system.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-artifact-system.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-atlas.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-bake.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-baker.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-options.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-rendering.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/types.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/package.json +7 -7
- package/node_modules/@fps-games/editor-babylon/dist/camera-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/edit-session.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/editor-sky.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/editor-world.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/event-guard.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/index.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/infinite-grid-layer.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/infinite-grid.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/input-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/inspector-adapter.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/inspector-host.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/main-camera-preview.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/marker-overlay.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/material-property-adapter.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/material-slot-source-resolver.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/monitor.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/outline-adapter.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/performance-monitor.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/prefab-comparison-preview-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/primitive-projection-instancing.js.map +1 -1
- 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-pick-resolver.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/projection-selection-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/projection-source-owner-path.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/projection.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/runtime-globals.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/scene-camera-preview.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/scene-view-camera-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/scene-view-input-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/scene-view-measurement-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/scene-view-spatial-overlay-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/selection-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/shadow-preview-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/tool-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/transform-gizmo-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/transform-solver.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/types.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/package.json +5 -5
- package/node_modules/@fps-games/editor-browser/dist/index.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-inspector-clipboard.js.map +1 -1
- 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-rendering-actions.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-root-ownership.js.map +1 -1
- 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.js.map +1 -1
- 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-hierarchy-actions.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-attach-dialog.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-auto-scroll.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-command-adapter.js.map +1 -1
- 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.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-scope.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-tree.js.map +1 -1
- 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.js.map +1 -1
- 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.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panel-registry.js.map +1 -1
- 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-plugin-panel.js.map +1 -1
- 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.js.map +1 -1
- 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.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-structured-drag-auto-scroll.js.map +1 -1
- 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-structured-drag-preview.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-structured-drag-session.js.map +1 -1
- 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.js.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.js.map +1 -1
- 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.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/runtime-camera-debug-panel.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/runtime-debug-panel-shell.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/runtime-lighting-debug-panel.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/package.json +4 -4
- package/node_modules/@fps-games/editor-core/dist/agent-bridge.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/agent-interaction.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/authoring-source.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/document-adapter.js.map +1 -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 +17 -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 +6 -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 +9 -0
- package/node_modules/@fps-games/editor-core/dist/editor-session.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/events.d.ts +1 -1
- package/node_modules/@fps-games/editor-core/dist/events.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/events.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/field-schema/index.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/field-schema/resolver.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/field-schema/schema.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/field-schema/types.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/field-schema/validators.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/host-services.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/index.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/inspector.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/lifecycle.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/marker-graph.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/scene-graph.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/scene-view-input.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/selection-strategy.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/serialized-object.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/transform-command.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/transform-gizmo.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/transform-operation-policy.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/transform-operations.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/viewport-tools.js.map +1 -1
- package/node_modules/@fps-games/editor-core/package.json +6 -6
- package/node_modules/@fps-games/editor-forge-play/dist/agent-transport.js.map +1 -1
- package/node_modules/@fps-games/editor-forge-play/dist/index.js.map +1 -1
- package/node_modules/@fps-games/editor-forge-play/package.json +2 -2
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/drop-cache.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/payload.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/payload.js +28 -5
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/payload.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/types.d.ts +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/config.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/generated-module.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/generated-module.js +10 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/generated-module.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/managed-facade.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/manager-core.d.ts +8 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/manager-core.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/manager-core.js +24 -2
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/manager-core.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/metadata.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/metadata.js +6 -2
- 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.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.d.ts +1 -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 +83 -23
- 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-database/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/catalog.d.ts +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/catalog.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/catalog.js +8 -0
- 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 +22 -0
- 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 +108 -1
- 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/asset-library/index.d.ts +3 -2
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/index.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/index.js +2 -2
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/types.d.ts +2 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/document.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/document.js +2 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/document.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/identity.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/managed-runtime-instance.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/placement.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/runtime-scene.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/result.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/result.js +3 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/result.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/transport.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/types.d.ts +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/workflow.d.ts +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/workflow.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/workflow.js +7 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/workflow.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring/constants.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring/drift.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring/runtime-transform-patch.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring/source.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-client/client.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-client/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-client/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/handler.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/payload.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/response.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/routes.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/adapter-dispatcher.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/payload.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/project-asset-adapter.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/protocol.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/readers.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/binding.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/fields.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/math.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/pan.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/panel-format.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/panel-state.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/panel-storage.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/panel-text.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/rig.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/save-patch.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/snapshot.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/commands/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/commands/transform.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/commands/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/core-contracts/index.js.map +1 -1
- 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.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/types.d.ts +4 -0
- 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/field-schema/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/resolver.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/schema.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/validators.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/index.d.ts +1 -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 +1 -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/camera-section.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/document-property.js.map +1 -1
- 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/inspector/format.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/light-fields.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/light-sections.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/marker-section.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/object-assembly.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/readonly.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/runtime-sections.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/runtime-summary.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/runtime.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/safe-value.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/validation.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/internal/local-harness.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/binding.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/fields.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/math.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/save-patch.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/snapshot.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/storage.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/text.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-preview/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-preview/math.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-preview/profile.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-preview/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/agent-descriptions.js.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 +2 -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 +5 -0
- 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.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.d.ts +2 -2
- 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.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 +4 -1
- 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/loading-overlay.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/loading-overlay.js +54 -2
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/loading-overlay.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/project-asset-commands.d.ts +18 -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 +60 -1
- 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/timing.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/types.d.ts +2 -0
- 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/marker-scene/facade.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/marker-scene/game-objects.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/marker-scene/geometry.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/marker-scene/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/asset-fields.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/binding.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/default-assets.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/document-assets.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/document-assets.js +28 -2
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/document-assets.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/duplicate.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/inspector.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/paths.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/preview.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/profile.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/reimport.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/reimport.js +26 -9
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/reimport.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/resolver.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/scene-inspector.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/slot-inspector.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/slot-inspector.js +0 -3
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/slot-inspector.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/text.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/types.d.ts +8 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/types.js.map +1 -1
- 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/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/json-field.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/reducer.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/rendering-alpha-index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/transform.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/aliases.d.ts +1 -1
- 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 -1
- 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/package-resolution/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/types.d.ts +2 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/types.js.map +1 -1
- 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.js.map +1 -1
- 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/material-override-inspector.js.map +1 -1
- 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/shadow-inspector.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/source-structure-inspector.js.map +1 -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/prefab-stage/structure.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/asset-manager.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/ground-decal-scene-feature.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/ground-decal.js.map +1 -1
- 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 +1 -0
- 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 +3 -1
- 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-session.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/scene-source.d.ts +3 -3
- 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 +10 -1
- 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-asset-actions.js.map +1 -1
- 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/draft.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/index.js.map +1 -1
- 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/route.js.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/assets.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/import-plan.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/index.js.map +1 -1
- 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.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/compiler.d.ts +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/compiler.js +82 -6
- 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.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/types.d.ts +11 -3
- 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 +1 -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 +46 -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/artifacts.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 +4 -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/companion-configs.js.map +1 -1
- 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/index.js.map +1 -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 +3 -2
- 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/scene-source/validation.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/descriptors.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/index.js.map +1 -1
- 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/serialized-property/object.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/patch.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/classification.js.map +1 -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/hierarchy.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/identity.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/object-command-facade.js.map +1 -1
- 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/property-patches.js.map +1 -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/system-defaults.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/transform.js.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/shadow-system/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/resolver.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/shared/http.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/shared/json.d.ts +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/shared/json.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/shared/json.js +25 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/shared/json.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/static-shadows/artifact.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/static-shadows/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/host.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/index.js.map +1 -1
- 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/upgrade-doctor/report.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/asset-authoring.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/authoring-http.d.ts +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/authoring-http.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/authoring-http.js +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/authoring-http.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/build-info-core.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/build-info-node.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-scene-workflow.d.ts +6 -5
- 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 +37 -20
- 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/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/module-invalidation.d.ts +3 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/module-invalidation.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/module-invalidation.js +37 -8
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/module-invalidation.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/path-write-coordinator.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/plugin.d.ts +4 -3
- 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 +14 -1
- 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 +5 -4
- 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.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-asset-authoring.d.ts +3 -2
- 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 +10 -17
- 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 +8 -7
- 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 +84 -6
- 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-rendering-authoring.d.ts +2 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-rendering-authoring.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-rendering-authoring.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-scene-authoring.d.ts +4 -3
- 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 +1 -4
- 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/session-metadata.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/types.d.ts +0 -33
- 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 +9 -6
- package/node_modules/@fps-games/editor-protocol/dist/agent-bridge.js.map +1 -1
- package/node_modules/@fps-games/editor-protocol/dist/agent-trace.js.map +1 -1
- package/node_modules/@fps-games/editor-protocol/dist/agent.js.map +1 -1
- package/node_modules/@fps-games/editor-protocol/dist/index.js.map +1 -1
- package/node_modules/@fps-games/editor-protocol/dist/marker-graph.js.map +1 -1
- package/node_modules/@fps-games/editor-protocol/package.json +2 -2
- package/node_modules/@fps-games/editor-tooling/dist/contributions.js.map +1 -1
- package/node_modules/@fps-games/editor-tooling/dist/data-object.js.map +1 -1
- package/node_modules/@fps-games/editor-tooling/dist/index.js.map +1 -1
- package/node_modules/@fps-games/editor-tooling/dist/migration.js.map +1 -1
- package/node_modules/@fps-games/editor-tooling/dist/package-metadata-node.js.map +1 -1
- 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/playable-assets/dist/identity.js.map +1 -1
- package/node_modules/@fps-games/playable-assets/dist/index.d.ts +1 -0
- package/node_modules/@fps-games/playable-assets/dist/index.d.ts.map +1 -1
- package/node_modules/@fps-games/playable-assets/dist/index.js +1 -0
- package/node_modules/@fps-games/playable-assets/dist/index.js.map +1 -1
- package/node_modules/@fps-games/playable-assets/dist/portable-path.d.ts +2 -0
- package/node_modules/@fps-games/playable-assets/dist/portable-path.d.ts.map +1 -0
- package/node_modules/@fps-games/playable-assets/dist/portable-path.js +25 -0
- package/node_modules/@fps-games/playable-assets/dist/portable-path.js.map +1 -0
- package/node_modules/@fps-games/playable-assets/package.json +1 -1
- package/node_modules/@fps-games/playable-contracts/dist/index.js.map +1 -1
- package/node_modules/@fps-games/playable-contracts/dist/marker-graph-validation.js.map +1 -1
- package/node_modules/@fps-games/playable-contracts/dist/marker-graph.js.map +1 -1
- package/node_modules/@fps-games/playable-contracts/package.json +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/index.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/rendering-profile-authoring.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/rendering-profile-types.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/rendering-profile-validation.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/rendering-profile-values.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/rendering-profile.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/runtime.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/shadow-quality.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/shadow-runtime.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/shadow-settings.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/shadow-types.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/shadow-validation.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/value.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/package.json +2 -2
- package/node_modules/@fps-games/playable-runtime/dist/compiled-scene-data.js +5 -1
- package/node_modules/@fps-games/playable-runtime/dist/compiled-scene-data.js.map +1 -1
- package/node_modules/@fps-games/playable-runtime/dist/index.js.map +1 -1
- package/node_modules/@fps-games/playable-runtime/dist/runtime-data.js.map +1 -1
- package/node_modules/@fps-games/playable-runtime/dist/runtime.js.map +1 -1
- package/node_modules/@fps-games/playable-runtime/dist/standard-plugins.js.map +1 -1
- package/node_modules/@fps-games/playable-runtime/dist/tokens.js.map +1 -1
- package/node_modules/@fps-games/playable-runtime/dist/types.js.map +1 -1
- package/node_modules/@fps-games/playable-runtime/package.json +12 -12
- package/node_modules/@fps-games/playable-runtime-data/dist/index.js.map +1 -1
- package/node_modules/@fps-games/playable-runtime-data/package.json +4 -4
- package/node_modules/@fps-games/playable-scene/dist/index.js.map +1 -1
- package/node_modules/@fps-games/playable-scene/dist/transform-math.js.map +1 -1
- package/node_modules/@fps-games/playable-scene/package.json +2 -2
- package/node_modules/@fps-games/plugin-api/dist/index.js.map +1 -1
- package/node_modules/@fps-games/plugin-api/package.json +1 -1
- package/node_modules/@fps-games/plugin-assets/dist/reference.js.map +1 -1
- package/node_modules/@fps-games/plugin-assets/dist/runtime.js.map +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-host/dist/index.js.map +1 -1
- package/node_modules/@fps-games/plugin-host/package.json +2 -2
- package/node_modules/@fps-games/plugin-markers/dist/reference.js.map +1 -1
- package/node_modules/@fps-games/plugin-markers/dist/runtime.js.map +1 -1
- 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/reference.js.map +1 -1
- package/node_modules/@fps-games/plugin-materials/dist/runtime.js.map +1 -1
- 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/reference.js.map +1 -1
- package/node_modules/@fps-games/plugin-rendering/dist/runtime.js.map +1 -1
- 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/reference.js.map +1 -1
- package/node_modules/@fps-games/plugin-scene/dist/runtime.js.map +1 -1
- 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-shadows/dist/reference.js.map +1 -1
- package/node_modules/@fps-games/plugin-shadows/dist/runtime.js.map +1 -1
- 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/package.json +27 -19
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"outline-adapter.js","sourceRoot":"","sources":["../src/outline-adapter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"outline-adapter.js","sourceRoot":"","sources":["../src/outline-adapter.ts"],"names":[],"mappings":"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","sourcesContent":["import type { OutlineProp, OutlineValue, PersistentBinding } from '@fps-games/editor-protocol';\nimport { applyBabylonDefaultOutline } from '@fps-games/babylon-renderer';\nimport type { BabylonRuntimeGlobal, CanonicalOutlineChange, RuntimeNode } from './types';\n\nexport const OUTLINE_PROPERTY_KEYS = [\n 'renderOutline',\n 'outlineColor',\n 'outlineWidth',\n] as const;\n\nexport type OutlinePropertyKey = (typeof OUTLINE_PROPERTY_KEYS)[number];\n\nexport type OutlineTargetState = {\n target: unknown | null;\n shared: boolean;\n};\n\nexport const OUTLINE_CANONICAL_PATHS = [\n 'outline.renderOutline',\n 'outline.outlineWidth',\n 'outline.outlineColor',\n] as const satisfies readonly OutlineProp[];\n\ntype OutlinePropertyChangeArgs = {\n entity: unknown;\n property: OutlinePropertyKey;\n value: unknown;\n initialValue?: unknown;\n};\n\ntype AdaptOutlinePropertyChangeOptions = {\n selectedEntity: RuntimeNode | null;\n propertyKey: unknown;\n oldValue: unknown;\n newValue: unknown;\n resolveBinding: (node: RuntimeNode) => PersistentBinding | null;\n};\n\ntype ApplyOutlineRuntimeOptions = {\n babylon?: BabylonRuntimeGlobal | null;\n};\n\nconst SKIP = Symbol('outline-property-skip');\n\nfunction getNodeClassName(node: any): string {\n return node?.getClassName?.() || node?.constructor?.name || '';\n}\nfunction hasRenderableVertices(node: any): boolean {\n if (!node || typeof node.getTotalVertices !== 'function') return false;\n const count = node.getTotalVertices();\n return typeof count === 'number' && Number.isFinite(count) && count > 0;\n}\n\nfunction restoreOriginalOutlineValue(entity: any, property: OutlinePropertyKey, initialValue: unknown): void {\n if (!entity) return;\n try {\n if (\n getNodeClassName(entity) === 'InstancedMesh'\n && (property === 'renderOutline' || property === 'outlineColor' || property === 'outlineWidth')\n ) {\n Reflect.deleteProperty(entity, property);\n return;\n }\n if (initialValue === undefined) {\n if (Object.prototype.hasOwnProperty.call(entity, property)) Reflect.deleteProperty(entity, property);\n else entity[property] = undefined;\n return;\n }\n entity[property] = initialValue;\n } catch {}\n}\n\nexport function isOutlinePropertyKey(value: string): value is OutlinePropertyKey {\n return (OUTLINE_PROPERTY_KEYS as readonly string[]).includes(value);\n}\n\nexport function normalizeInstancedMeshOutlineProperties(entity: unknown): void {\n if (getNodeClassName(entity) !== 'InstancedMesh') return;\n for (const property of ['outlineColor', 'outlineWidth'] as const) {\n if (!Object.prototype.hasOwnProperty.call(entity, property)) continue;\n try { Reflect.deleteProperty(entity as object, property); } catch {}\n }\n}\n\nexport function resolveOutlineTarget(entity: unknown): OutlineTargetState {\n const node = entity as any;\n if (!node) return { target: null, shared: false };\n\n const className = getNodeClassName(node);\n if (className === 'InstancedMesh') {\n normalizeInstancedMeshOutlineProperties(node);\n return { target: node.sourceMesh ?? null, shared: true };\n }\n\n if (className === 'Mesh' && hasRenderableVertices(node)) return { target: node, shared: false };\n\n const children = typeof node.getChildMeshes === 'function' ? node.getChildMeshes(false) : [];\n for (const child of children) {\n const childClassName = getNodeClassName(child);\n if (childClassName === 'InstancedMesh') {\n normalizeInstancedMeshOutlineProperties(child);\n return { target: child.sourceMesh ?? null, shared: true };\n }\n if (childClassName === 'Mesh' && hasRenderableVertices(child)) return { target: child, shared: false };\n }\n\n if (className === 'Mesh') return { target: node, shared: false };\n return { target: null, shared: false };\n}\n\nfunction stableNodeSegment(node: any): string | null {\n const candidates = [node?.name, node?.id];\n for (const candidate of candidates) {\n if (typeof candidate !== 'string') continue;\n const trimmed = candidate.trim();\n if (trimmed) return trimmed;\n }\n return null;\n}\n\nfunction buildOwnerNodePath(ownerNode: RuntimeNode, rootNode: RuntimeNode): string | null {\n if (ownerNode === rootNode) return '';\n const segments: string[] = [];\n let current: any = ownerNode;\n while (current && current !== rootNode) {\n const segment = stableNodeSegment(current);\n if (!segment) return null;\n segments.push(segment);\n current = current.parent ?? null;\n }\n if (current !== rootNode) return null;\n return segments.reverse().join('/');\n}\n\nexport function resolveOutlineOwnerNode(rootNode: RuntimeNode | null): {\n ownerNode: RuntimeNode | null;\n shared: boolean;\n} {\n if (!rootNode) return { ownerNode: null, shared: false };\n\n const className = getNodeClassName(rootNode);\n if (className === 'InstancedMesh') {\n normalizeInstancedMeshOutlineProperties(rootNode);\n return { ownerNode: rootNode, shared: true };\n }\n if (className === 'Mesh' && hasRenderableVertices(rootNode)) return { ownerNode: rootNode, shared: false };\n\n const children = typeof (rootNode as any).getChildMeshes === 'function'\n ? (rootNode as any).getChildMeshes(false)\n : [];\n for (const child of children) {\n const childClassName = getNodeClassName(child);\n if (childClassName === 'InstancedMesh') {\n normalizeInstancedMeshOutlineProperties(child);\n return { ownerNode: child, shared: true };\n }\n if (childClassName === 'Mesh' && hasRenderableVertices(child)) return { ownerNode: child, shared: false };\n }\n\n if (className === 'Mesh') return { ownerNode: rootNode, shared: false };\n return { ownerNode: null, shared: false };\n}\n\nfunction normalizeOutlinePropertyKey(propertyKey: unknown): OutlineProp | null {\n if (typeof propertyKey !== 'string') return null;\n const trimmed = propertyKey.trim();\n if (!trimmed) return null;\n if ((OUTLINE_CANONICAL_PATHS as readonly string[]).includes(trimmed)) return trimmed as OutlineProp;\n if (trimmed === 'renderOutline') return 'outline.renderOutline';\n if (trimmed === 'outlineWidth') return 'outline.outlineWidth';\n if (trimmed === 'outlineColor') return 'outline.outlineColor';\n return null;\n}\n\nfunction normalizeColor3(value: unknown): OutlineValue | typeof SKIP {\n if (value == null) return null;\n if (!value || typeof value !== 'object') return SKIP;\n const source = value as { r?: unknown; g?: unknown; b?: unknown; _r?: unknown; _g?: unknown; _b?: unknown };\n const r = typeof source.r === 'number' ? source.r : typeof source._r === 'number' ? source._r : null;\n const g = typeof source.g === 'number' ? source.g : typeof source._g === 'number' ? source._g : null;\n const b = typeof source.b === 'number' ? source.b : typeof source._b === 'number' ? source._b : null;\n if (r == null || g == null || b == null) return SKIP;\n return { r, g, b };\n}\n\nfunction normalizeOutlineValue(path: OutlineProp, value: unknown): OutlineValue | typeof SKIP {\n switch (path) {\n case 'outline.renderOutline':\n return typeof value === 'boolean' ? value : SKIP;\n case 'outline.outlineWidth':\n if (value == null) return null;\n return typeof value === 'number' && Number.isFinite(value) ? value : SKIP;\n case 'outline.outlineColor':\n return normalizeColor3(value);\n default:\n return SKIP;\n }\n}\n\nexport function adaptOutlinePropertyChange(options: AdaptOutlinePropertyChangeOptions): CanonicalOutlineChange | null {\n const path = normalizeOutlinePropertyKey(options.propertyKey);\n if (!path) return null;\n const selectedEntity = options.selectedEntity;\n if (!selectedEntity) return null;\n\n const binding = options.resolveBinding(selectedEntity);\n if (!binding || binding.kind !== 'sceneNode') return null;\n const rootNode = binding.rootNode ?? selectedEntity;\n const owner = resolveOutlineOwnerNode(rootNode);\n if (!owner.ownerNode) return null;\n\n const ownerNodePath = buildOwnerNodePath(owner.ownerNode, rootNode);\n if (ownerNodePath == null) return null;\n\n const before = normalizeOutlineValue(path, options.oldValue);\n const after = normalizeOutlineValue(path, options.newValue);\n if (before === SKIP || after === SKIP) return null;\n if (JSON.stringify(before ?? null) === JSON.stringify(after ?? null)) return null;\n\n return {\n runtimeNode: owner.ownerNode,\n binding,\n ownerNodePath,\n target: ownerNodePath ? 'childOutline' : 'root',\n shared: owner.shared,\n path,\n before,\n after,\n };\n}\n\nexport function applyOutlineValueToRuntimeNode(\n entity: RuntimeNode | null,\n path: OutlineProp,\n value: OutlineValue,\n options: ApplyOutlineRuntimeOptions = {},\n): boolean {\n const { target } = resolveOutlineTarget(entity);\n const writableTarget = target as any;\n if (!writableTarget) return false;\n\n switch (path) {\n case 'outline.renderOutline':\n if (typeof value !== 'boolean') return false;\n return applyBabylonDefaultOutline(writableTarget, { enabled: value });\n case 'outline.outlineWidth':\n if (value != null && (typeof value !== 'number' || !Number.isFinite(value))) return false;\n return applyBabylonDefaultOutline(writableTarget, { width: value });\n case 'outline.outlineColor': {\n if (value == null) return applyBabylonDefaultOutline(writableTarget, { color: null });\n if (!value || typeof value !== 'object') return false;\n const color = value as { r: number; g: number; b: number };\n return applyBabylonDefaultOutline(writableTarget, { color });\n }\n default:\n return false;\n }\n}\n\nexport function applyOutlinePropertyChange(args: OutlinePropertyChangeArgs): OutlineTargetState {\n const { entity, property, value, initialValue } = args;\n const resolved = resolveOutlineTarget(entity);\n const target = resolved.target as any;\n if (!target) return resolved;\n\n try { target[property] = value; } catch {}\n if (target !== entity) restoreOriginalOutlineValue(entity, property, initialValue);\n\n return resolved;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"performance-monitor.js","sourceRoot":"","sources":["../src/performance-monitor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"performance-monitor.js","sourceRoot":"","sources":["../src/performance-monitor.ts"],"names":[],"mappings":"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","sourcesContent":["export interface BabylonEditorPerformanceMeshClassCounts {\n mesh: number;\n instancedMesh: number;\n linesMesh: number;\n groundMesh: number;\n other: number;\n}\n\nexport interface BabylonEditorPerformanceMeshCategoryCounts {\n assetMesh: number;\n primitiveMesh: number;\n staticProjectedShadow: number;\n editorHelper: number;\n uncategorized: number;\n}\n\nexport interface BabylonEditorPerformanceProjectionRoleCounts {\n assetInstanceMesh: number;\n assetSourceMesh: number;\n assetWrapperMesh: number;\n assetCloneMesh: number;\n assetGeneratedMesh: number;\n assetSelectionProxy: number;\n primitiveMesh: number;\n staticProjectedShadow: number;\n helperMesh: number;\n uncategorized: number;\n}\n\nexport interface BabylonEditorPerformanceSnapshot {\n drawCalls: number | null;\n meshes: number | null;\n activeMeshes: number | null;\n meshClassCounts: BabylonEditorPerformanceMeshClassCounts | null;\n activeMeshClassCounts: BabylonEditorPerformanceMeshClassCounts | null;\n meshCategoryCounts: BabylonEditorPerformanceMeshCategoryCounts | null;\n activeMeshCategoryCounts: BabylonEditorPerformanceMeshCategoryCounts | null;\n projectionRoleCounts?: BabylonEditorPerformanceProjectionRoleCounts | null;\n activeProjectionRoleCounts?: BabylonEditorPerformanceProjectionRoleCounts | null;\n materials: number | null;\n textures: number | null;\n lights: number | null;\n cameras: number | null;\n}\n\nexport interface BabylonEditorPerformanceMonitor {\n readSnapshot(): BabylonEditorPerformanceSnapshot;\n dispose(): void;\n}\n\ninterface BabylonObservableLike {\n add(callback: () => void): unknown;\n remove(observer: unknown): void;\n}\n\ntype BabylonPerformanceSceneLike = Record<string, any>;\n\nconst EMPTY_PERFORMANCE_SNAPSHOT: BabylonEditorPerformanceSnapshot = {\n drawCalls: null,\n meshes: null,\n activeMeshes: null,\n meshClassCounts: null,\n activeMeshClassCounts: null,\n meshCategoryCounts: null,\n activeMeshCategoryCounts: null,\n projectionRoleCounts: null,\n activeProjectionRoleCounts: null,\n materials: null,\n textures: null,\n lights: null,\n cameras: null,\n};\n\nexport function createBabylonEditorPerformanceMonitor(\n scene: unknown | null,\n): BabylonEditorPerformanceMonitor {\n let disposed = false;\n let latestDrawCalls: number | null = null;\n const cleanupCallbacks: Array<() => void> = [];\n const sceneLike = isRecord(scene) ? scene : null;\n\n if (sceneLike) {\n addSceneObserver(cleanupCallbacks, sceneLike.onBeforeAnimationsObservable, () => {\n readDrawCallsCounter(sceneLike)?.fetchNewFrame?.();\n });\n addSceneObserver(cleanupCallbacks, sceneLike.onAfterRenderObservable, () => {\n latestDrawCalls = readFiniteNumber(readDrawCallsCounter(sceneLike)?.current);\n });\n }\n\n return {\n readSnapshot() {\n if (disposed || !sceneLike) return cloneBabylonPerformanceSnapshot(EMPTY_PERFORMANCE_SNAPSHOT);\n const meshCensus = readMeshCensus(sceneLike);\n return {\n drawCalls: latestDrawCalls,\n meshes: meshCensus?.meshCount ?? readCollectionCount(sceneLike.meshes),\n activeMeshes: meshCensus?.activeMeshCount ?? readActiveMeshesCount(sceneLike),\n meshClassCounts: cloneBabylonMeshClassCounts(meshCensus?.meshClassCounts ?? null),\n activeMeshClassCounts: cloneBabylonMeshClassCounts(meshCensus?.activeMeshClassCounts ?? null),\n meshCategoryCounts: cloneBabylonMeshCategoryCounts(meshCensus?.meshCategoryCounts ?? null),\n activeMeshCategoryCounts: cloneBabylonMeshCategoryCounts(meshCensus?.activeMeshCategoryCounts ?? null),\n projectionRoleCounts: cloneBabylonProjectionRoleCounts(meshCensus?.projectionRoleCounts ?? null),\n activeProjectionRoleCounts: cloneBabylonProjectionRoleCounts(meshCensus?.activeProjectionRoleCounts ?? null),\n materials: readCollectionCount(sceneLike.materials),\n textures: readCollectionCount(sceneLike.textures),\n lights: readCollectionCount(sceneLike.lights),\n cameras: readCollectionCount(sceneLike.cameras),\n };\n },\n dispose() {\n if (disposed) return;\n disposed = true;\n for (const cleanup of cleanupCallbacks.splice(0)) cleanup();\n latestDrawCalls = null;\n },\n };\n}\n\nexport function cloneBabylonPerformanceSnapshot(\n snapshot: BabylonEditorPerformanceSnapshot,\n): BabylonEditorPerformanceSnapshot {\n return {\n ...snapshot,\n meshClassCounts: cloneBabylonMeshClassCounts(snapshot.meshClassCounts),\n activeMeshClassCounts: cloneBabylonMeshClassCounts(snapshot.activeMeshClassCounts),\n meshCategoryCounts: cloneBabylonMeshCategoryCounts(snapshot.meshCategoryCounts),\n activeMeshCategoryCounts: cloneBabylonMeshCategoryCounts(snapshot.activeMeshCategoryCounts),\n projectionRoleCounts: cloneBabylonProjectionRoleCounts(snapshot.projectionRoleCounts),\n activeProjectionRoleCounts: cloneBabylonProjectionRoleCounts(snapshot.activeProjectionRoleCounts),\n };\n}\n\nfunction addSceneObserver(\n cleanupCallbacks: Array<() => void>,\n observable: unknown,\n callback: () => void,\n): void {\n if (!isBabylonObservableLike(observable)) return;\n const observer = observable.add(callback);\n cleanupCallbacks.push(() => observable.remove(observer));\n}\n\nfunction isBabylonObservableLike(value: unknown): value is BabylonObservableLike {\n return !!value\n && typeof value === 'object'\n && typeof (value as BabylonObservableLike).add === 'function'\n && typeof (value as BabylonObservableLike).remove === 'function';\n}\n\nfunction isRecord(value: unknown): value is BabylonPerformanceSceneLike {\n return !!value && typeof value === 'object';\n}\n\nfunction readDrawCallsCounter(scene: BabylonPerformanceSceneLike): { current?: unknown; fetchNewFrame?: () => void } | null {\n const engine = typeof scene?.getEngine === 'function' ? scene.getEngine() : null;\n const counter = engine?._drawCalls;\n return counter && typeof counter === 'object' ? counter : null;\n}\n\nfunction readActiveMeshesCount(scene: BabylonPerformanceSceneLike): number | null {\n if (typeof scene?.getActiveMeshes !== 'function') return null;\n try {\n return readCollectionCount(scene.getActiveMeshes());\n } catch {\n return null;\n }\n}\n\ninterface BabylonMeshCensus {\n meshCount: number;\n activeMeshCount: number | null;\n meshClassCounts: BabylonEditorPerformanceMeshClassCounts;\n activeMeshClassCounts: BabylonEditorPerformanceMeshClassCounts | null;\n meshCategoryCounts: BabylonEditorPerformanceMeshCategoryCounts;\n activeMeshCategoryCounts: BabylonEditorPerformanceMeshCategoryCounts | null;\n projectionRoleCounts: BabylonEditorPerformanceProjectionRoleCounts;\n activeProjectionRoleCounts: BabylonEditorPerformanceProjectionRoleCounts | null;\n}\n\nfunction readMeshCensus(scene: BabylonPerformanceSceneLike): BabylonMeshCensus | null {\n const meshes = readCollectionItems(scene.meshes);\n if (!meshes) return null;\n const activeMeshes = readActiveMeshItems(scene);\n const activeMeshSet = activeMeshes ? new Set(activeMeshes) : null;\n const sourceMeshSet = collectSourceMeshes(meshes);\n const meshClassCounts = createEmptyMeshClassCounts();\n const meshCategoryCounts = createEmptyMeshCategoryCounts();\n const projectionRoleCounts = createEmptyProjectionRoleCounts();\n const activeMeshClassCounts = activeMeshSet ? createEmptyMeshClassCounts() : null;\n const activeMeshCategoryCounts = activeMeshSet ? createEmptyMeshCategoryCounts() : null;\n const activeProjectionRoleCounts = activeMeshSet ? createEmptyProjectionRoleCounts() : null;\n\n for (const mesh of meshes) {\n const classKey = classifyMeshClass(mesh);\n const projectionRoleKey = classifyProjectionRole(mesh, sourceMeshSet);\n const categoryKey = classifyMeshCategory(mesh, projectionRoleKey);\n meshClassCounts[classKey] += 1;\n meshCategoryCounts[categoryKey] += 1;\n projectionRoleCounts[projectionRoleKey] += 1;\n if (activeMeshSet?.has(mesh)) {\n activeMeshClassCounts![classKey] += 1;\n activeMeshCategoryCounts![categoryKey] += 1;\n activeProjectionRoleCounts![projectionRoleKey] += 1;\n }\n }\n\n return {\n meshCount: meshes.length,\n activeMeshCount: activeMeshes?.length ?? null,\n meshClassCounts,\n activeMeshClassCounts,\n meshCategoryCounts,\n activeMeshCategoryCounts,\n projectionRoleCounts,\n activeProjectionRoleCounts,\n };\n}\n\nfunction collectSourceMeshes(meshes: readonly unknown[]): Set<unknown> {\n const sourceMeshes = new Set<unknown>();\n for (const mesh of meshes) {\n const sourceMesh = readSourceMesh(mesh);\n if (sourceMesh) sourceMeshes.add(sourceMesh);\n }\n return sourceMeshes;\n}\n\nfunction readActiveMeshItems(scene: BabylonPerformanceSceneLike): unknown[] | null {\n if (typeof scene?.getActiveMeshes !== 'function') return null;\n try {\n return readCollectionItems(scene.getActiveMeshes());\n } catch {\n return null;\n }\n}\n\nfunction readCollectionItems(value: unknown): unknown[] | null {\n if (Array.isArray(value)) return value;\n if (!value || typeof value !== 'object') return null;\n const data = (value as { data?: unknown }).data;\n const length = readFiniteNumber((value as { length?: unknown }).length);\n if (Array.isArray(data) && length != null) return data.slice(0, Math.max(0, Math.floor(length)));\n if (length == null) return null;\n const items: unknown[] = [];\n const indexed = value as Record<number, unknown>;\n for (let index = 0; index < length; index += 1) {\n if (!(index in indexed)) return null;\n items.push(indexed[index]);\n }\n return items;\n}\n\nfunction readCollectionCount(value: unknown): number | null {\n if (!value || typeof value !== 'object') return null;\n const length = (value as { length?: unknown }).length;\n return readFiniteNumber(length);\n}\n\nfunction readFiniteNumber(value: unknown): number | null {\n return typeof value === 'number' && Number.isFinite(value) ? value : null;\n}\n\nfunction createEmptyMeshClassCounts(): BabylonEditorPerformanceMeshClassCounts {\n return {\n mesh: 0,\n instancedMesh: 0,\n linesMesh: 0,\n groundMesh: 0,\n other: 0,\n };\n}\n\nfunction createEmptyMeshCategoryCounts(): BabylonEditorPerformanceMeshCategoryCounts {\n return {\n assetMesh: 0,\n primitiveMesh: 0,\n staticProjectedShadow: 0,\n editorHelper: 0,\n uncategorized: 0,\n };\n}\n\nfunction createEmptyProjectionRoleCounts(): BabylonEditorPerformanceProjectionRoleCounts {\n return {\n assetInstanceMesh: 0,\n assetSourceMesh: 0,\n assetWrapperMesh: 0,\n assetCloneMesh: 0,\n assetGeneratedMesh: 0,\n assetSelectionProxy: 0,\n primitiveMesh: 0,\n staticProjectedShadow: 0,\n helperMesh: 0,\n uncategorized: 0,\n };\n}\n\nfunction cloneBabylonMeshClassCounts(\n counts: BabylonEditorPerformanceMeshClassCounts | null,\n): BabylonEditorPerformanceMeshClassCounts | null {\n return counts ? { ...counts } : null;\n}\n\nfunction cloneBabylonMeshCategoryCounts(\n counts: BabylonEditorPerformanceMeshCategoryCounts | null,\n): BabylonEditorPerformanceMeshCategoryCounts | null {\n return counts ? { ...counts } : null;\n}\n\nfunction cloneBabylonProjectionRoleCounts(\n counts: BabylonEditorPerformanceProjectionRoleCounts | null | undefined,\n): BabylonEditorPerformanceProjectionRoleCounts | null {\n return counts ? { ...counts } : null;\n}\n\nfunction classifyMeshClass(mesh: unknown): keyof BabylonEditorPerformanceMeshClassCounts {\n const className = readMeshClassName(mesh);\n if (className === 'InstancedMesh') return 'instancedMesh';\n if (className === 'LinesMesh') return 'linesMesh';\n if (className === 'GroundMesh') return 'groundMesh';\n if (className === 'Mesh') return 'mesh';\n return 'other';\n}\n\nfunction readMeshClassName(mesh: unknown): string {\n if (!isRecord(mesh)) return '';\n const getClassName = mesh.getClassName;\n if (typeof getClassName === 'function') {\n try {\n const className = getClassName.call(mesh);\n return typeof className === 'string' ? className : '';\n } catch {\n return '';\n }\n }\n const constructorName = (mesh as { constructor?: { name?: unknown } }).constructor?.name;\n return typeof constructorName === 'string' ? constructorName : '';\n}\n\nfunction classifyMeshCategory(\n mesh: unknown,\n projectionRole: keyof BabylonEditorPerformanceProjectionRoleCounts,\n): keyof BabylonEditorPerformanceMeshCategoryCounts {\n if (\n projectionRole === 'assetInstanceMesh'\n || projectionRole === 'assetSourceMesh'\n || projectionRole === 'assetWrapperMesh'\n || projectionRole === 'assetCloneMesh'\n || projectionRole === 'assetGeneratedMesh'\n || projectionRole === 'assetSelectionProxy'\n ) {\n return 'assetMesh';\n }\n if (projectionRole === 'primitiveMesh') return 'primitiveMesh';\n if (projectionRole === 'staticProjectedShadow') return 'staticProjectedShadow';\n if (projectionRole === 'helperMesh') return 'editorHelper';\n const projection = readEditorProjectionMetadata(mesh);\n const runtimeKind = typeof projection?.runtimeKind === 'string' ? projection.runtimeKind : '';\n if (isStaticProjectedShadowMesh(mesh)) return 'staticProjectedShadow';\n if (runtimeKind === 'camera' || runtimeKind === 'light' || projection?.helper != null || isEditorHelperMesh(mesh)) {\n return 'editorHelper';\n }\n if (runtimeKind === 'assetMesh') return 'assetMesh';\n if (runtimeKind === 'primitive' || projection?.primitiveShape != null) return 'primitiveMesh';\n return 'uncategorized';\n}\n\nfunction classifyProjectionRole(\n mesh: unknown,\n sourceMeshSet: ReadonlySet<unknown>,\n): keyof BabylonEditorPerformanceProjectionRoleCounts {\n const projection = readEditorProjectionMetadata(mesh);\n const runtimeKind = typeof projection?.runtimeKind === 'string' ? projection.runtimeKind : '';\n const className = readMeshClassName(mesh);\n if (isStaticProjectedShadowMesh(mesh)) return 'staticProjectedShadow';\n if (runtimeKind === 'camera' || runtimeKind === 'light' || projection?.helper != null || isEditorHelperMesh(mesh)) {\n return 'helperMesh';\n }\n if (runtimeKind === 'primitive' || projection?.primitiveShape != null) return 'primitiveMesh';\n if (runtimeKind === 'assetMeshSelectionProxy') return 'assetSelectionProxy';\n if (className === 'InstancedMesh' && (readSourceMesh(mesh) || isAssetProjectionMesh(mesh, projection))) {\n return 'assetInstanceMesh';\n }\n if (sourceMeshSet.has(mesh)) return 'assetSourceMesh';\n if (isAssetProjectionMesh(mesh, projection)) {\n const vertices = readTotalVertices(mesh);\n if (vertices != null && vertices <= 0) return 'assetWrapperMesh';\n if (className === 'Mesh') return 'assetCloneMesh';\n if (className === 'InstancedMesh') return 'assetInstanceMesh';\n return 'assetGeneratedMesh';\n }\n return 'uncategorized';\n}\n\nfunction isAssetProjectionMesh(mesh: unknown, projection: Record<string, unknown> | null): boolean {\n if (projection) {\n if (projection.runtimeKind === 'assetMesh') return true;\n if (typeof projection.sourceId === 'string' || typeof projection.rootNodeId === 'string') return true;\n }\n if (hasProjectionSourceNodeMetadata(mesh)) return true;\n if (hasPerformanceNameFragment(mesh, '.projectionAsset.')) return true;\n return !!readSourceMesh(mesh);\n}\n\nfunction hasProjectionSourceNodeMetadata(mesh: unknown): boolean {\n if (!isRecord(mesh)) return false;\n const metadata = isRecord(mesh.metadata) ? mesh.metadata : null;\n return !!metadata && metadata.editorProjectionSourceNode != null;\n}\n\nfunction readSourceMesh(mesh: unknown): unknown | null {\n if (!isRecord(mesh)) return null;\n return isRecord(mesh.sourceMesh) ? mesh.sourceMesh : null;\n}\n\nfunction readTotalVertices(mesh: unknown): number | null {\n if (!isRecord(mesh) || typeof mesh.getTotalVertices !== 'function') return null;\n try {\n const total = mesh.getTotalVertices.call(mesh);\n return readFiniteNumber(total);\n } catch {\n return null;\n }\n}\n\nfunction readEditorProjectionMetadata(mesh: unknown): Record<string, unknown> | null {\n if (!isRecord(mesh)) return null;\n const metadata = isRecord(mesh.metadata) ? mesh.metadata : null;\n const projection = metadata && isRecord(metadata.editorProjection) ? metadata.editorProjection : null;\n return projection;\n}\n\nfunction isStaticProjectedShadowMesh(mesh: unknown): boolean {\n if (!isRecord(mesh)) return false;\n const metadata = isRecord(mesh.metadata) ? mesh.metadata : null;\n if (metadata?.staticProjectedShadowInternal === true) return true;\n const material = isRecord(mesh.material) ? mesh.material : null;\n return hasPerformanceNameFragment(mesh, 'staticProjected')\n || hasPerformanceNameFragment(material, 'staticProjected');\n}\n\nfunction isEditorHelperMesh(mesh: unknown): boolean {\n if (!isRecord(mesh)) return false;\n const metadata = isRecord(mesh.metadata) ? mesh.metadata : null;\n if (metadata?.editorProjectionHelper === true) return true;\n const material = isRecord(mesh.material) ? mesh.material : null;\n return hasPerformanceNameFragment(mesh, 'editor.world.sky')\n || hasPerformanceNameFragment(mesh, 'editor-grid')\n || hasPerformanceNameFragment(mesh, 'editorGrid')\n || hasPerformanceNameFragment(mesh, 'grid-screen-layer')\n || hasPerformanceNameFragment(material, 'editor.world.sky')\n || hasPerformanceNameFragment(material, 'editor-grid')\n || hasPerformanceNameFragment(material, 'editorGrid')\n || hasPerformanceNameFragment(material, 'grid-screen-layer');\n}\n\nfunction hasPerformanceNameFragment(value: unknown, fragment: string): boolean {\n if (!isRecord(value)) return false;\n return readPerformanceNameCandidates(value)\n .some(candidate => candidate.includes(fragment));\n}\n\nfunction readPerformanceNameCandidates(value: Record<string, any>): string[] {\n return [value.name, value.id]\n .filter((candidate): candidate is string => typeof candidate === 'string');\n}\n"]}
|
package/node_modules/@fps-games/editor-babylon/dist/prefab-comparison-preview-controller.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prefab-comparison-preview-controller.js","sourceRoot":"","sources":["../src/prefab-comparison-preview-controller.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"prefab-comparison-preview-controller.js","sourceRoot":"","sources":["../src/prefab-comparison-preview-controller.ts"],"names":[],"mappings":"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","sourcesContent":["import type {\n BabylonRuntimeGlobal,\n RuntimeCamera,\n RuntimeScene,\n} from './types';\nimport type {\n BabylonEditorProjection,\n ProjectedBabylonEditorNode,\n} from './projection';\nimport type { BabylonEditorSkyBackdrop } from './editor-sky';\n\nexport interface BabylonPrefabComparisonPreviewSurface {\n previewId: string;\n projectionNodeId: string;\n rect: Pick<DOMRect, 'left' | 'top' | 'right' | 'bottom' | 'width' | 'height'>;\n}\n\nexport interface BabylonPrefabComparisonPreviewControllerOptions {\n babylon: BabylonRuntimeGlobal & Record<string, any>;\n scene: RuntimeScene;\n editorCamera: RuntimeCamera;\n projection: Pick<BabylonEditorProjection, 'getProjectedNode'>;\n getSkyBackdrop?: () => BabylonEditorSkyBackdrop | null;\n}\n\nexport interface BabylonPrefabComparisonPreviewController {\n sync(surfaces: readonly BabylonPrefabComparisonPreviewSurface[]): boolean;\n prepareFrame(): void;\n adjustView(input: BabylonPrefabComparisonPreviewViewInput): boolean;\n clear(options?: BabylonPrefabComparisonPreviewClearOptions): boolean;\n dispose(): void;\n}\n\nexport interface BabylonPrefabComparisonPreviewClearOptions {\n resetViewState?: boolean;\n}\n\nexport type BabylonPrefabComparisonPreviewViewInput =\n | {\n kind: 'orbit';\n previewId?: string;\n deltaX: number;\n deltaY: number;\n }\n | {\n kind: 'zoom';\n previewId?: string;\n deltaY: number;\n };\n\nconst MAIN_CAMERA_LAYER_MASK = 0x0fffffff;\nconst MESH_CLONE_LAYER_MASK = 0x10000000;\nconst INSTANCED_MESH_LAYER_MASK = 0x20000000;\nconst COMPARISON_LAYER_MASK = MESH_CLONE_LAYER_MASK | INSTANCED_MESH_LAYER_MASK;\nconst ORBIT_POINTER_PIXEL_TO_RADIAN = 0.008;\nconst ZOOM_WHEEL_DELTA_TO_SCALE = 0.0012;\n\ninterface ComparisonCameraState {\n previewId: string;\n projectionNodeId: string;\n layerMask: number;\n viewport: { x: number; y: number; width: number; height: number } | null;\n camera: RuntimeCamera;\n target: ComparisonVec3;\n requiredRadius: number;\n}\n\ninterface ComparisonVec3 {\n x: number;\n y: number;\n z: number;\n}\n\ninterface ComparisonViewState {\n alpha: number;\n beta: number;\n radius: number;\n minRadius: number;\n maxRadius: number;\n initialized: boolean;\n userAdjusted: boolean;\n fitKey: string;\n}\n\nexport function createBabylonPrefabComparisonPreviewController(\n options: BabylonPrefabComparisonPreviewControllerOptions,\n): BabylonPrefabComparisonPreviewController {\n const cameras = new Map<string, ComparisonCameraState>();\n const viewState: ComparisonViewState = createInitialComparisonViewState();\n let active = false;\n let disposed = false;\n let savedActiveCamera: RuntimeCamera | null = null;\n let savedActiveCameras: RuntimeCamera[] | null | undefined;\n let savedEditorCameraLayerMask: number | null = null;\n let savedEditorCameraViewport: unknown = null;\n let savedSkyLayerMask: number | null = null;\n\n function sync(surfaces: readonly BabylonPrefabComparisonPreviewSurface[]): boolean {\n if (disposed) return false;\n const canvasRect = readRenderCanvasRect(options.scene);\n if (!canvasRect || surfaces.length === 0) return clear({ resetViewState: false });\n\n const visibleProjectionIds = new Set<string>();\n let changed = false;\n for (const surface of surfaces) {\n const projectedNode = options.projection.getProjectedNode(surface.projectionNodeId);\n const viewport = resolveSurfaceViewport(surface.rect, canvasRect);\n const layerMask = resolveComparisonLayerMask(surface);\n if (!projectedNode || !viewport || layerMask == null) continue;\n const fit = resolveProjectionFit(options.babylon, projectedNode);\n visibleProjectionIds.add(surface.projectionNodeId);\n applyProjectionLayerMask(projectedNode, layerMask);\n const existing = cameras.get(surface.projectionNodeId);\n const cameraState = ensureCamera(surface, layerMask);\n if (!cameraState) continue;\n if (!existing) changed = true;\n if (cameraState.layerMask !== layerMask) changed = true;\n if (!viewportsEqual(cameraState.viewport, viewport)) changed = true;\n cameraState.projectionNodeId = surface.projectionNodeId;\n cameraState.layerMask = layerMask;\n cameraState.viewport = viewport;\n if (!vectorsEqual(cameraState.target, fit.target)) changed = true;\n if (Math.abs(cameraState.requiredRadius - fit.requiredRadius) > 0.0001) changed = true;\n cameraState.target = fit.target;\n cameraState.requiredRadius = fit.requiredRadius;\n cameraState.camera.layerMask = layerMask;\n applyCameraViewport(options.babylon, cameraState.camera, viewport);\n }\n\n for (const [projectionNodeId, cameraState] of cameras) {\n if (visibleProjectionIds.has(projectionNodeId)) continue;\n cameraState.camera.dispose?.();\n cameras.delete(projectionNodeId);\n changed = true;\n }\n\n if (cameras.size === 0) return clear() || changed;\n if (syncSharedComparisonViewState()) changed = true;\n applyComparisonCameraFrames();\n if (!active) changed = true;\n activateSceneCameras();\n return changed;\n }\n\n function prepareFrame(): void {\n if (disposed || !active) return;\n ensureSceneCamerasActive();\n applyComparisonCameraFrames();\n applySkyLayerMask();\n }\n\n function adjustView(input: BabylonPrefabComparisonPreviewViewInput): boolean {\n if (disposed || !active || cameras.size === 0) return false;\n if (input.kind === 'orbit') {\n if (!Number.isFinite(input.deltaX) || !Number.isFinite(input.deltaY)) return false;\n if (Math.abs(input.deltaX) < 0.001 && Math.abs(input.deltaY) < 0.001) return false;\n viewState.alpha -= input.deltaX * ORBIT_POINTER_PIXEL_TO_RADIAN;\n viewState.beta = clamp(\n viewState.beta + input.deltaY * ORBIT_POINTER_PIXEL_TO_RADIAN,\n 0.08,\n Math.PI - 0.08,\n );\n viewState.userAdjusted = true;\n applyComparisonCameraFrames();\n return true;\n }\n if (!Number.isFinite(input.deltaY) || Math.abs(input.deltaY) < 0.001) return false;\n const nextRadius = clamp(\n viewState.radius * Math.exp(input.deltaY * ZOOM_WHEEL_DELTA_TO_SCALE),\n viewState.minRadius,\n viewState.maxRadius,\n );\n if (Math.abs(nextRadius - viewState.radius) < 0.0001) return false;\n viewState.radius = nextRadius;\n viewState.userAdjusted = true;\n applyComparisonCameraFrames();\n return true;\n }\n\n function clear(clearOptions: BabylonPrefabComparisonPreviewClearOptions = {}): boolean {\n if (disposed) return false;\n const hadState = active || cameras.size > 0;\n for (const cameraState of cameras.values()) cameraState.camera.dispose?.();\n cameras.clear();\n restoreSceneCameras();\n restoreSkyLayerMask();\n if (clearOptions.resetViewState !== false) resetComparisonViewState(viewState);\n return hadState;\n }\n\n function dispose(): void {\n if (disposed) return;\n clear();\n disposed = true;\n }\n\n function ensureCamera(\n surface: BabylonPrefabComparisonPreviewSurface,\n layerMask: number,\n ): ComparisonCameraState | null {\n const existing = cameras.get(surface.projectionNodeId);\n if (existing) return existing;\n const camera = createComparisonCamera(options.babylon, options.scene, surface.projectionNodeId);\n if (!camera) return null;\n camera.layerMask = layerMask;\n camera.inertia = 0;\n const state: ComparisonCameraState = {\n previewId: surface.previewId,\n projectionNodeId: surface.projectionNodeId,\n layerMask,\n viewport: null,\n camera,\n target: { x: 0, y: 0, z: 0 },\n requiredRadius: 9,\n };\n cameras.set(surface.projectionNodeId, state);\n return state;\n }\n\n function activateSceneCameras(): void {\n if (!active) {\n savedActiveCamera = options.scene.activeCamera ?? options.editorCamera;\n savedActiveCameras = Array.isArray(options.scene.activeCameras)\n ? [...options.scene.activeCameras]\n : options.scene.activeCameras ?? null;\n savedEditorCameraLayerMask = typeof options.editorCamera.layerMask === 'number'\n ? options.editorCamera.layerMask\n : null;\n savedEditorCameraViewport = options.editorCamera.viewport ?? null;\n active = true;\n }\n ensureSceneCamerasActive();\n applySkyLayerMask();\n }\n\n function ensureSceneCamerasActive(): void {\n if (!active) return;\n options.editorCamera.layerMask = MAIN_CAMERA_LAYER_MASK;\n options.scene.activeCamera = options.editorCamera;\n options.scene.activeCameras = [options.editorCamera, ...[...cameras.values()].map(state => state.camera)];\n }\n\n function restoreSceneCameras(): void {\n if (!active) return;\n if (savedEditorCameraLayerMask != null) options.editorCamera.layerMask = savedEditorCameraLayerMask;\n if (savedEditorCameraViewport != null) options.editorCamera.viewport = savedEditorCameraViewport;\n options.scene.activeCamera = savedActiveCamera ?? options.editorCamera;\n if (savedActiveCameras === undefined) {\n delete options.scene.activeCameras;\n } else {\n options.scene.activeCameras = savedActiveCameras;\n }\n savedActiveCamera = null;\n savedActiveCameras = undefined;\n savedEditorCameraLayerMask = null;\n savedEditorCameraViewport = null;\n active = false;\n }\n\n function syncSharedComparisonViewState(): boolean {\n if (cameras.size === 0) return false;\n const cameraStates = [...cameras.values()];\n const requiredRadius = Math.max(...cameraStates.map(state => state.requiredRadius), 2);\n const minRadius = Math.max(0.1, requiredRadius * 0.12);\n const maxRadius = Math.max(requiredRadius * 8, minRadius + 1);\n const fitKey = cameraStates\n .map(state => `${state.projectionNodeId}:${formatComparisonNumber(state.target.x)},${formatComparisonNumber(state.target.y)},${formatComparisonNumber(state.target.z)}:${formatComparisonNumber(state.requiredRadius)}`)\n .sort()\n .join('|');\n const shouldRefit = !viewState.initialized || (!viewState.userAdjusted && viewState.fitKey !== fitKey);\n let changed = false;\n if (viewState.minRadius !== minRadius || viewState.maxRadius !== maxRadius) {\n viewState.minRadius = minRadius;\n viewState.maxRadius = maxRadius;\n changed = true;\n }\n if (shouldRefit) {\n if (Math.abs(viewState.radius - requiredRadius) > 0.0001) changed = true;\n viewState.radius = requiredRadius;\n viewState.initialized = true;\n } else {\n const clampedRadius = clamp(viewState.radius, minRadius, maxRadius);\n if (Math.abs(viewState.radius - clampedRadius) > 0.0001) changed = true;\n viewState.radius = clampedRadius;\n }\n if (viewState.fitKey !== fitKey) {\n viewState.fitKey = fitKey;\n changed = true;\n }\n return changed;\n }\n\n function applyComparisonCameraFrames(): void {\n for (const cameraState of cameras.values()) {\n applyComparisonCameraFrame(options.babylon, cameraState.camera, cameraState.target, viewState);\n cameraState.camera.layerMask = cameraState.layerMask;\n }\n }\n\n function applySkyLayerMask(): void {\n const mesh = options.getSkyBackdrop?.()?.mesh;\n if (!mesh || typeof mesh !== 'object') return;\n if (savedSkyLayerMask == null && typeof mesh.layerMask === 'number') {\n savedSkyLayerMask = mesh.layerMask;\n }\n const baseMask = typeof mesh.layerMask === 'number' ? mesh.layerMask : MAIN_CAMERA_LAYER_MASK;\n mesh.layerMask = baseMask | COMPARISON_LAYER_MASK;\n }\n\n function restoreSkyLayerMask(): void {\n const mesh = options.getSkyBackdrop?.()?.mesh;\n if (mesh && savedSkyLayerMask != null) mesh.layerMask = savedSkyLayerMask;\n savedSkyLayerMask = null;\n }\n\n return {\n sync,\n prepareFrame,\n adjustView,\n clear,\n dispose,\n };\n}\n\nfunction createInitialComparisonViewState(): ComparisonViewState {\n return {\n alpha: Math.PI / 4,\n beta: Math.PI / 3,\n radius: 9,\n minRadius: 0.5,\n maxRadius: 72,\n initialized: false,\n userAdjusted: false,\n fitKey: '',\n };\n}\n\nfunction resetComparisonViewState(viewState: ComparisonViewState): void {\n const initial = createInitialComparisonViewState();\n viewState.alpha = initial.alpha;\n viewState.beta = initial.beta;\n viewState.radius = initial.radius;\n viewState.minRadius = initial.minRadius;\n viewState.maxRadius = initial.maxRadius;\n viewState.initialized = initial.initialized;\n viewState.userAdjusted = initial.userAdjusted;\n viewState.fitKey = initial.fitKey;\n}\n\nfunction createComparisonCamera(\n babylon: BabylonRuntimeGlobal & Record<string, any>,\n scene: RuntimeScene,\n projectionNodeId: string,\n): RuntimeCamera | null {\n const Vector3 = babylon.Vector3;\n if (!Vector3) return null;\n if (babylon.ArcRotateCamera) {\n return new babylon.ArcRotateCamera(\n `prefab-comparison-preview:${projectionNodeId}`,\n Math.PI / 4,\n Math.PI / 3,\n 9,\n new Vector3(0, 0, 0),\n scene,\n );\n }\n if (!babylon.UniversalCamera) return null;\n return new babylon.UniversalCamera(\n `prefab-comparison-preview:${projectionNodeId}`,\n new Vector3(0, 0, -9),\n scene,\n );\n}\n\nfunction applyComparisonCameraFrame(\n babylon: BabylonRuntimeGlobal & Record<string, any>,\n camera: RuntimeCamera,\n target: ComparisonVec3,\n viewState: ComparisonViewState,\n): void {\n const beta = clamp(viewState.beta, 0.05, Math.PI - 0.05);\n const radius = clamp(viewState.radius, viewState.minRadius, viewState.maxRadius);\n if (typeof camera.alpha === 'number' && typeof camera.beta === 'number' && typeof camera.radius === 'number') {\n camera.alpha = viewState.alpha;\n camera.beta = beta;\n camera.radius = radius;\n setCameraTarget(babylon, camera, target);\n return;\n }\n if (camera.position) {\n const position = sphericalToPosition(target, viewState.alpha, beta, radius);\n copyPlainVec3ToVectorLike(position, camera.position);\n }\n setCameraTarget(babylon, camera, target);\n}\n\nfunction cloneVector3(\n babylon: BabylonRuntimeGlobal & Record<string, any>,\n value: { x?: number; y?: number; z?: number },\n): any {\n const Vector3 = babylon.Vector3;\n if (!Vector3) return { x: value.x ?? 0, y: value.y ?? 0, z: value.z ?? 0 };\n return new Vector3(value.x ?? 0, value.y ?? 0, value.z ?? 0);\n}\n\nfunction setCameraTarget(\n babylon: BabylonRuntimeGlobal & Record<string, any>,\n camera: RuntimeCamera,\n target: ComparisonVec3,\n): void {\n const cloned = cloneVector3(babylon, target);\n if (typeof camera.setTarget === 'function') {\n camera.setTarget(cloned);\n return;\n }\n camera.target = cloned;\n}\n\nfunction copyPlainVec3ToVectorLike(source: ComparisonVec3, target: unknown): void {\n if (!target || typeof target !== 'object') return;\n const to = target as { x?: number; y?: number; z?: number; copyFrom?: (value: unknown) => void };\n if (typeof to.copyFrom === 'function') {\n to.copyFrom(source);\n return;\n }\n to.x = source.x;\n to.y = source.y;\n to.z = source.z;\n}\n\nfunction sphericalToPosition(target: ComparisonVec3, alpha: number, beta: number, radius: number): ComparisonVec3 {\n const sinBeta = Math.sin(beta);\n return {\n x: target.x + radius * sinBeta * Math.cos(alpha),\n y: target.y + radius * Math.cos(beta),\n z: target.z + radius * sinBeta * Math.sin(alpha),\n };\n}\n\nfunction applyCameraViewport(\n babylon: BabylonRuntimeGlobal & Record<string, any>,\n camera: RuntimeCamera,\n viewport: { x: number; y: number; width: number; height: number },\n): void {\n camera.viewport = babylon.Viewport\n ? new babylon.Viewport(viewport.x, viewport.y, viewport.width, viewport.height)\n : viewport;\n}\n\nfunction viewportsEqual(\n left: { x: number; y: number; width: number; height: number } | null,\n right: { x: number; y: number; width: number; height: number },\n): boolean {\n return !!left\n && Math.abs(left.x - right.x) < 0.0001\n && Math.abs(left.y - right.y) < 0.0001\n && Math.abs(left.width - right.width) < 0.0001\n && Math.abs(left.height - right.height) < 0.0001;\n}\n\nfunction resolveSurfaceViewport(\n surfaceRect: BabylonPrefabComparisonPreviewSurface['rect'],\n canvasRect: Pick<DOMRect, 'left' | 'top' | 'width' | 'height'>,\n): { x: number; y: number; width: number; height: number } | null {\n const canvasWidth = Math.max(1, canvasRect.width);\n const canvasHeight = Math.max(1, canvasRect.height);\n const left = clamp01((surfaceRect.left - canvasRect.left) / canvasWidth);\n const top = clamp01((surfaceRect.top - canvasRect.top) / canvasHeight);\n const right = clamp01((surfaceRect.right - canvasRect.left) / canvasWidth);\n const bottom = clamp01((surfaceRect.bottom - canvasRect.top) / canvasHeight);\n const width = right - left;\n const height = bottom - top;\n if (width <= 0 || height <= 0) return null;\n return {\n x: left,\n y: 1 - bottom,\n width,\n height,\n };\n}\n\nfunction resolveComparisonLayerMask(\n surface: BabylonPrefabComparisonPreviewSurface,\n): number | null {\n if (surface.previewId === 'mesh-clone' || surface.projectionNodeId.endsWith(':compare-clone')) {\n return MESH_CLONE_LAYER_MASK;\n }\n if (surface.previewId === 'instanced-mesh' || surface.projectionNodeId.endsWith(':compare-instance')) {\n return INSTANCED_MESH_LAYER_MASK;\n }\n return null;\n}\n\nfunction applyProjectionLayerMask(\n projection: ProjectedBabylonEditorNode,\n layerMask: number,\n): void {\n applyNodeLayerMask(projection.root, layerMask);\n for (const mesh of projection.outlineMeshes ?? []) applyNodeLayerMask(mesh, layerMask);\n}\n\nfunction resolveProjectionFit(\n babylon: BabylonRuntimeGlobal & Record<string, any>,\n projection: ProjectedBabylonEditorNode,\n): { target: ComparisonVec3; requiredRadius: number } {\n const bounds = projection.root?.getHierarchyBoundingVectors?.();\n if (bounds?.min && bounds?.max) {\n const min = readComparisonVec3(bounds.min);\n const max = readComparisonVec3(bounds.max);\n const target = {\n x: (min.x + max.x) / 2,\n y: (min.y + max.y) / 2,\n z: (min.z + max.z) / 2,\n };\n const size = {\n x: Math.max(0, max.x - min.x),\n y: Math.max(0, max.y - min.y),\n z: Math.max(0, max.z - min.z),\n };\n const diagonal = Math.hypot(size.x, size.y, size.z);\n return {\n target,\n requiredRadius: Number.isFinite(diagonal) && diagonal > 0 ? Math.max(diagonal * 1.6, 2) : 2,\n };\n }\n return {\n target: readComparisonVec3(projection.root?.position, { x: 0, y: 0, z: 0 }),\n requiredRadius: 4,\n };\n}\n\nfunction readComparisonVec3(value: unknown, fallback: ComparisonVec3 = { x: 0, y: 0, z: 0 }): ComparisonVec3 {\n if (!value || typeof value !== 'object') return fallback;\n const input = value as { x?: unknown; y?: unknown; z?: unknown };\n return {\n x: typeof input.x === 'number' && Number.isFinite(input.x) ? input.x : fallback.x,\n y: typeof input.y === 'number' && Number.isFinite(input.y) ? input.y : fallback.y,\n z: typeof input.z === 'number' && Number.isFinite(input.z) ? input.z : fallback.z,\n };\n}\n\nfunction vectorsEqual(left: ComparisonVec3, right: ComparisonVec3): boolean {\n return Math.abs(left.x - right.x) < 0.0001\n && Math.abs(left.y - right.y) < 0.0001\n && Math.abs(left.z - right.z) < 0.0001;\n}\n\nfunction formatComparisonNumber(value: number): string {\n return Number.isFinite(value) ? value.toFixed(4) : '0.0000';\n}\n\nfunction applyNodeLayerMask(node: any, layerMask: number): void {\n if (!node || typeof node !== 'object') return;\n node.layerMask = layerMask;\n const childMeshes = node.getChildMeshes?.(false) ?? [];\n for (const child of childMeshes) {\n if (child && typeof child === 'object') child.layerMask = layerMask;\n }\n}\n\nfunction readRenderCanvasRect(\n scene: RuntimeScene,\n): Pick<DOMRect, 'left' | 'top' | 'width' | 'height'> | null {\n const canvas = scene.getEngine?.()?.getRenderingCanvas?.() as HTMLCanvasElement | null | undefined;\n const rect = canvas?.getBoundingClientRect?.();\n if (!rect || rect.width <= 0 || rect.height <= 0) return null;\n return rect;\n}\n\nfunction clamp01(value: number): number {\n if (!Number.isFinite(value)) return 0;\n return Math.max(0, Math.min(1, value));\n}\n\nfunction clamp(value: number, min: number, max: number): number {\n if (!Number.isFinite(value)) return min;\n return Math.max(min, Math.min(max, value));\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"primitive-projection-instancing.js","sourceRoot":"","sources":["../src/primitive-projection-instancing.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"primitive-projection-instancing.js","sourceRoot":"","sources":["../src/primitive-projection-instancing.ts"],"names":[],"mappings":"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","sourcesContent":["export type BabylonPrimitiveProjectionShape = 'cube' | 'sphere' | 'plane' | 'capsule';\nexport type BabylonPrimitiveProjectionMaterialKind = 'pbr' | 'standard';\n\nexport interface BabylonPrimitiveProjectionNodeLike {\n id: string;\n primitive?: { shape?: unknown } | null;\n artistMaterialKind?: unknown;\n artistMaterialProfile?: unknown;\n}\n\nexport interface BabylonPrimitiveProjectionInstancingControllerOptions {\n sourceMeshNamePrefix?: string;\n}\n\nexport interface BabylonPrimitiveProjectionInstancingController {\n createPreviewBabylonModule<TBabylon extends Record<string, any>>(babylon: TBabylon): TBabylon;\n remember(node: BabylonPrimitiveProjectionNodeLike): void;\n sync(nodes: readonly BabylonPrimitiveProjectionNodeLike[]): void;\n}\n\nconst SHARED_PRIMITIVE_SOURCE_MATERIAL_METADATA_KEY = 'editorPrimitiveProjectionSharedSourceMaterial';\n\ninterface PrimitiveProjectionInstancingEntry {\n shape: BabylonPrimitiveProjectionShape;\n materialKind: BabylonPrimitiveProjectionMaterialKind;\n}\n\nexport function isBabylonPrimitiveProjectionSharedMaterial(value: unknown): boolean {\n const metadata = value && typeof value === 'object' && !Array.isArray(value)\n ? (value as { metadata?: unknown }).metadata\n : null;\n return !!metadata\n && typeof metadata === 'object'\n && !Array.isArray(metadata)\n && (metadata as Record<string, unknown>)[SHARED_PRIMITIVE_SOURCE_MATERIAL_METADATA_KEY] === true;\n}\n\nexport function createBabylonPrimitiveProjectionInstancingController(\n options: BabylonPrimitiveProjectionInstancingControllerOptions = {},\n): BabylonPrimitiveProjectionInstancingController {\n const instancingByNodeId = new Map<string, PrimitiveProjectionInstancingEntry>();\n const sourceMeshes = new WeakMap<object, Map<string, any>>();\n const sourceMeshNamePrefix = options.sourceMeshNamePrefix ?? '__editor_primitive_projection_source';\n\n function createPreviewBabylonModule<TBabylon extends Record<string, any>>(BABYLON: TBabylon): TBabylon {\n const MeshBuilder = BABYLON.MeshBuilder;\n if (!MeshBuilder) return BABYLON;\n return {\n ...BABYLON,\n MeshBuilder: {\n ...MeshBuilder,\n CreateBox: createPrimitiveProjectionBuilder(BABYLON, 'cube', MeshBuilder.CreateBox),\n CreateSphere: createPrimitiveProjectionBuilder(BABYLON, 'sphere', MeshBuilder.CreateSphere),\n CreateGround: createPrimitiveProjectionBuilder(BABYLON, 'plane', MeshBuilder.CreateGround),\n CreateCapsule: createPrimitiveProjectionBuilder(BABYLON, 'capsule', MeshBuilder.CreateCapsule),\n },\n };\n }\n\n function remember(node: BabylonPrimitiveProjectionNodeLike): void {\n const shape = readPrimitiveProjectionShape(node.primitive?.shape);\n if (!shape || hasPrimitiveProjectionMaterialOverride(node)) {\n instancingByNodeId.delete(node.id);\n return;\n }\n instancingByNodeId.set(node.id, {\n shape,\n materialKind: node.artistMaterialKind === 'standard' ? 'standard' : 'pbr',\n });\n }\n\n function sync(nodes: readonly BabylonPrimitiveProjectionNodeLike[]): void {\n instancingByNodeId.clear();\n for (const node of nodes) remember(node);\n }\n\n function createPrimitiveProjectionBuilder(\n BABYLON: Record<string, any>,\n shape: BabylonPrimitiveProjectionShape,\n originalBuilder: unknown,\n ) {\n if (typeof originalBuilder !== 'function') return originalBuilder;\n const buildPrimitiveMesh = originalBuilder as (name: string, options: Record<string, unknown>, scene: unknown) => any;\n return (name: string, builderOptions: Record<string, unknown>, scene: unknown) => {\n const request = readPrimitiveProjectionMeshRequest(name);\n if (!request || request.shape !== shape) {\n return buildPrimitiveMesh(name, builderOptions, scene);\n }\n const instancing = instancingByNodeId.get(request.nodeId);\n if (!instancing || instancing.shape !== shape) {\n return buildPrimitiveMesh(name, builderOptions, scene);\n }\n const source = getOrCreatePrimitiveProjectionSourceMesh({\n BABYLON,\n scene,\n shape,\n materialKind: instancing.materialKind,\n options: builderOptions,\n originalBuilder: buildPrimitiveMesh,\n });\n const instance = typeof source?.createInstance === 'function'\n ? source.createInstance(name)\n : null;\n if (!instance) return buildPrimitiveMesh(name, builderOptions, scene);\n configurePrimitiveProjectionInstance(instance, source);\n return instance;\n };\n }\n\n function getOrCreatePrimitiveProjectionSourceMesh(input: {\n BABYLON: Record<string, any>;\n scene: unknown;\n shape: BabylonPrimitiveProjectionShape;\n materialKind: BabylonPrimitiveProjectionMaterialKind;\n options: Record<string, unknown>;\n originalBuilder: (name: string, options: Record<string, unknown>, scene: unknown) => any;\n }): any | null {\n if (!input.scene || typeof input.scene !== 'object') return null;\n let sceneCache = sourceMeshes.get(input.scene);\n if (!sceneCache) {\n sceneCache = new Map();\n sourceMeshes.set(input.scene, sceneCache);\n }\n const cacheKey = `${input.shape}:${input.materialKind}`;\n const cached = sceneCache.get(cacheKey);\n if (cached && !cached.isDisposed?.()) return cached;\n const sourceName = `${sourceMeshNamePrefix}_${cacheKey.replace(/[^a-z0-9_-]/gi, '_')}`;\n const source = input.originalBuilder(sourceName, input.options, input.scene);\n if (!source) return null;\n source.isVisible = false;\n source.isPickable = false;\n source.metadata = {\n ...(source.metadata && typeof source.metadata === 'object' ? source.metadata : {}),\n editorProjection: {\n helper: 'primitiveSource',\n primitiveShape: input.shape,\n materialKind: input.materialKind,\n },\n };\n sceneCache.set(cacheKey, source);\n return source;\n }\n\n return {\n createPreviewBabylonModule,\n remember,\n sync,\n };\n}\n\nfunction configurePrimitiveProjectionInstance(instance: any, source: any): void {\n try {\n Object.defineProperty(instance, 'material', {\n configurable: true,\n enumerable: true,\n get() {\n return source.material ?? null;\n },\n set(value: unknown) {\n if (!value) return;\n if (!source.material) {\n source.material = value;\n markSharedPrimitiveSourceMaterial(source.material);\n return;\n }\n markSharedPrimitiveSourceMaterial(source.material);\n if (value !== source.material && typeof (value as { dispose?: unknown }).dispose === 'function') {\n (value as { dispose: () => void }).dispose();\n }\n },\n });\n } catch {}\n}\n\nfunction markSharedPrimitiveSourceMaterial(material: unknown): void {\n if (!material || typeof material !== 'object' || Array.isArray(material)) return;\n const target = material as { metadata?: unknown };\n target.metadata = {\n ...(target.metadata && typeof target.metadata === 'object' && !Array.isArray(target.metadata)\n ? target.metadata as Record<string, unknown>\n : {}),\n [SHARED_PRIMITIVE_SOURCE_MATERIAL_METADATA_KEY]: true,\n };\n}\n\nfunction readPrimitiveProjectionMeshRequest(name: string): { nodeId: string; shape: BabylonPrimitiveProjectionShape } | null {\n for (const shape of ['cube', 'sphere', 'plane', 'capsule'] as const) {\n const suffix = `.${shape}Projection`;\n if (!name.endsWith(suffix)) continue;\n const nodeId = name.slice(0, -suffix.length);\n return nodeId ? { nodeId, shape } : null;\n }\n return null;\n}\n\nfunction readPrimitiveProjectionShape(value: unknown): BabylonPrimitiveProjectionShape | null {\n return value === 'cube' || value === 'sphere' || value === 'plane' || value === 'capsule' ? value : null;\n}\n\nfunction hasPrimitiveProjectionMaterialOverride(node: BabylonPrimitiveProjectionNodeLike): boolean {\n return hasObjectEntries(node.artistMaterialProfile);\n}\n\nfunction hasObjectEntries(value: unknown): boolean {\n return !!value && typeof value === 'object' && !Array.isArray(value) && Object.keys(value).length > 0;\n}\n"]}
|
package/node_modules/@fps-games/editor-babylon/dist/projection-asset-container-importer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projection-asset-container-importer.js","sourceRoot":"","sources":["../src/projection-asset-container-importer.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,kCAAkC,EAClC,gCAAgC,GACjC,MAAM,gCAAgC,CAAC;AA6DxC,MAAM,UAAU,6CAA6C,CAC3D,OAAuD;IAEvD,MAAM,WAAW,GAAG,IAAI,OAAO,EAAsB,CAAC;IAEtD,OAAO,KAAK,EAAE,OAAO,EAAE,EAAE;QACvB,MAAM,QAAQ,GAAG,MAAM,kCAAkC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC5E,MAAM,UAAU,GAAG,gCAAgC,CAAC,WAAW,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAChF,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACxC,MAAM,gBAAgB,GAAG,MAAM,IAAI,uBAAuB,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QACnG,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;QACxE,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,gBAAgB,CAAC;QACzC,yCAAyC,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QACpE,MAAM,gBAAgB,GAAG,8CAA8C,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC1F,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC;QAChF,MAAM,wBAAwB,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC3D,MAAM,OAAO,GAAG,SAAS,CAAC,wBAAwB,EAAE,CAClD,gCAAgC,CAC9B,wBAAwB,EACxB,UAAU,CAAC,EAAE,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;eACxE,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,oBAAoB,UAAU,EAAE,CACxD,EACD,KAAK,EACL,EAAE,gBAAgB,EAAE,CACrB,CAAC;QACF,OAAO,OAAO,CAAC,CAAC,CAAC,6BAA6B,CAAC,OAAO,EAAE,wBAAwB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3F,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,8CAA8C,CACrD,OAAuD,EACvD,OAA6C;IAE7C,QAAQ,OAAO,CAAC,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC5C,KAAK,WAAW,CAAC,CAAC,OAAO,IAAI,CAAC;QAC9B,KAAK,eAAe,CAAC,CAAC,OAAO,KAAK,CAAC;QACnC,KAAK,MAAM,CAAC;QACZ;YACE,OAAO,OAAO,CAAC,iBAAiB,EAAE,CAAC,OAAO,CAAC;mBACtC,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,gCAAgC,CACvC,WAAwC,EACxC,KAAa;IAEb,IAAI,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACxC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,UAAU,GAAG,IAAI,GAAG,EAAE,CAAC;QACvB,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,uBAAuB,CAC9B,OAAuD,EACvD,UAAsB,EACtB,QAAgB,EAChB,OAA6C;IAE7C,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;IACvE,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC;SAC3C,IAAI,CAAC,SAAS,CAAC,EAAE;QAChB,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,wBAAwB,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;QACzE,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC;SACD,KAAK,CAAC,KAAK,CAAC,EAAE;QACb,IAAI,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,OAAO;YAAE,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACtE,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,wBAAwB,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QAChF,MAAM,KAAK,CAAC;IACd,CAAC,CAAC,CAAC;IACL,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAClC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,KAAK,UAAU,kCAAkC,CAC/C,OAAuD,EACvD,OAA6C;IAE7C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,eAAe,EAAE,CAAC,OAAO,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE;QACzC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE;QACjB,CAAC,CAAC,wCAAwC,CAAC,OAAO,CAAC,CAAC;IACtD,OAAO,GAAG,OAAO,aAAa,8BAA8B,CAAC;QAC3D,kBAAkB,EAAE,OAAO,CAAC,IAAI,CAAC,kBAAkB;QACnD,qBAAqB,EAAE,OAAO,CAAC,IAAI,CAAC,qBAAqB;QACzD,0BAA0B,EAAE,OAAO,CAAC,IAAI,CAAC,0BAA0B;KACpE,CAAC,EAAE,CAAC;AACP,CAAC;AAED,SAAS,wCAAwC,CAAC,OAA6C;IAC7F,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC5B,OAAO,8BAA8B,CAAC;QACpC,OAAO,EAAE,KAAK,CAAC,EAAE;QACjB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,GAAG,EAAE,+BAA+B,CAAC,KAAK,CAAC,QAAQ,CAAC;KACrD,CAAC,CAAC;AACL,CAAC;AAED,SAAS,+BAA+B,CAAC,QAA6C;IACpF,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChC,OAAO,QAAQ,CAAC,GAAG,IAAI,QAAQ,CAAC,SAAS,IAAI,QAAQ,CAAC,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC;AAC7E,CAAC;AAED,SAAS,yCAAyC,CAChD,SAAmD,EACnD,KAA0B;IAE1B,uBAAuB,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IACxF,uBAAuB,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IACrF,uBAAuB,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;AAC1F,CAAC;AAED,SAAS,uBAAuB,CAC9B,KAA0B,EAC1B,QAA+B,EAC/B,SAAgC,EAChC,WAAkD;IAElD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,WAAW,KAAK,UAAU;QAAE,OAAO;IACrG,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAAE,SAAS;QACrE,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACpC,CAAC;AACH,CAAC;AAED,SAAS,6BAA6B,CACpC,OAA2D,EAC3D,wBAAqD;IAErD,MAAM,MAAM,GAAc,EAAE,CAAC;IAC7B,MAAM,cAAc,GAAc,EAAE,CAAC;IACrC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAW,CAAC;IAChC,KAAK,MAAM,QAAQ,IAAI,OAAO,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;QAC/C,qBAAqB,CAAC,QAAQ,EAAE,wBAAwB,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;IAC1F,CAAC;IACD,OAAO;QACL,MAAM;QACN,cAAc;QACd,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,EAAE;KAC/C,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAC5B,IAAa,EACb,wBAAqD,EACrD,IAAkB,EAClB,MAAiB,EACjB,cAAyB;IAEzB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO;IACpC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACf,kCAAkC,CAAC,IAAI,EAAE,wBAAwB,CAAC,CAAC;IACnE,IAAI,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;SAAM,CAAC;QACN,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,0BAA0B,CAAC,IAAI,CAAC,EAAE,CAAC;QACrD,qBAAqB,CAAC,KAAK,EAAE,wBAAwB,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;IACvF,CAAC;AACH,CAAC;AAED,SAAS,0BAA0B,CAAC,IAAa;IAC/C,MAAM,WAAW,GAAI,IAAiD,EAAE,WAAW,CAAC;IACpF,IAAI,OAAO,WAAW,KAAK,UAAU;QAAE,OAAO,EAAE,CAAC;IACjD,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,OAAO,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;AACjD,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAa;IACzC,OAAO,OAAQ,IAA8C,EAAE,gBAAgB,KAAK,UAAU,CAAC;AACjG,CAAC;AAED,SAAS,8BAA8B,CAAC,KAAc;IACpD,OAAO,IAAI,CAAC,SAAS,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,wBAAwB,CAAC,KAAc;IAC9C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IACrE,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACtD,MAAM,MAAM,GAAG,KAAgC,CAAC;IAChD,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QAC7C,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QACzB,IAAI,OAAO,IAAI,KAAK,WAAW,IAAI,OAAO,IAAI,KAAK,UAAU;YAAE,SAAS;QACxE,MAAM,CAAC,GAAG,CAAC,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
1
|
+
{"version":3,"file":"projection-asset-container-importer.js","sourceRoot":"","sources":["../src/projection-asset-container-importer.ts"],"names":[],"mappings":"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","sourcesContent":["import type {\n BabylonEditorProjectionImportContext,\n BabylonEditorProjectionImporter,\n BabylonEditorProjectionImportResult,\n} from './projection';\nimport {\n assignProjectionSourceNodeMetadata,\n createProjectionSourceNameMapper,\n} from './projection-source-owner-path';\n\nexport interface BabylonAssetContainerProjectionContainer {\n materials?: unknown[];\n textures?: unknown[];\n skeletons?: unknown[];\n instantiateModelsToScene?: (\n nameFunction?: (sourceName: string) => string,\n cloneMaterials?: boolean,\n options?: { doNotInstantiate?: boolean },\n ) => BabylonAssetContainerProjectionInstantiatedEntries;\n}\n\nexport interface BabylonAssetContainerProjectionInstantiatedEntries {\n rootNodes?: unknown[];\n animationGroups?: unknown[];\n}\n\nexport type BabylonAssetContainerProjectionImportEvent =\n | {\n type: 'container-load-start';\n cacheKey: string;\n context: BabylonEditorProjectionImportContext;\n }\n | {\n type: 'container-load-success';\n cacheKey: string;\n context: BabylonEditorProjectionImportContext;\n }\n | {\n type: 'container-load-failure';\n cacheKey: string;\n context: BabylonEditorProjectionImportContext;\n error: unknown;\n }\n | {\n type: 'container-cache-hit';\n cacheKey: string;\n context: BabylonEditorProjectionImportContext;\n }\n | {\n type: 'instantiate';\n cacheKey: string;\n context: BabylonEditorProjectionImportContext;\n doNotInstantiate: boolean;\n };\n\nexport interface BabylonAssetContainerProjectionImporterOptions {\n loadContainer(context: BabylonEditorProjectionImportContext): Promise<BabylonAssetContainerProjectionContainer>;\n resolveCacheKey?(context: BabylonEditorProjectionImportContext): string | Promise<string | null | undefined> | null | undefined;\n shouldCloneMeshes?(context: BabylonEditorProjectionImportContext): boolean;\n createInstanceName?(input: {\n sourceName: string;\n cacheKey: string;\n context: BabylonEditorProjectionImportContext;\n }): string;\n onEvent?(event: BabylonAssetContainerProjectionImportEvent): void;\n}\n\ntype SceneCache = Map<string, Promise<BabylonAssetContainerProjectionContainer>>;\n\nexport function createBabylonAssetContainerProjectionImporter(\n options: BabylonAssetContainerProjectionImporterOptions,\n): BabylonEditorProjectionImporter {\n const sceneCaches = new WeakMap<object, SceneCache>();\n\n return async (context) => {\n const cacheKey = await resolveProjectionContainerCacheKey(options, context);\n const sceneCache = getProjectionContainerSceneCache(sceneCaches, context.scene);\n const cached = sceneCache.get(cacheKey);\n const containerPromise = cached ?? loadProjectionContainer(options, sceneCache, cacheKey, context);\n if (cached) {\n options.onEvent?.({ type: 'container-cache-hit', cacheKey, context });\n }\n const container = await containerPromise;\n ensureProjectionContainerResourcesInScene(container, context.scene);\n const doNotInstantiate = resolveProjectionInstantiationDoNotInstantiate(options, context);\n options.onEvent?.({ type: 'instantiate', cacheKey, context, doNotInstantiate });\n const sourceNameByInstanceName = new Map<string, string>();\n const entries = container.instantiateModelsToScene?.(\n createProjectionSourceNameMapper(\n sourceNameByInstanceName,\n sourceName => options.createInstanceName?.({ sourceName, cacheKey, context })\n ?? `${context.node.id}.projectionAsset.${sourceName}`,\n ),\n false,\n { doNotInstantiate },\n );\n return entries ? collectProjectionImportResult(entries, sourceNameByInstanceName) : null;\n };\n}\n\nfunction resolveProjectionInstantiationDoNotInstantiate(\n options: BabylonAssetContainerProjectionImporterOptions,\n context: BabylonEditorProjectionImportContext,\n): boolean {\n switch (context.node.assetInstantiationMode) {\n case 'meshClone': return true;\n case 'instancedMesh': return false;\n case 'auto':\n default:\n return options.shouldCloneMeshes?.(context)\n ?? false;\n }\n}\n\nfunction getProjectionContainerSceneCache(\n sceneCaches: WeakMap<object, SceneCache>,\n scene: object,\n): SceneCache {\n let sceneCache = sceneCaches.get(scene);\n if (!sceneCache) {\n sceneCache = new Map();\n sceneCaches.set(scene, sceneCache);\n }\n return sceneCache;\n}\n\nfunction loadProjectionContainer(\n options: BabylonAssetContainerProjectionImporterOptions,\n sceneCache: SceneCache,\n cacheKey: string,\n context: BabylonEditorProjectionImportContext,\n): Promise<BabylonAssetContainerProjectionContainer> {\n options.onEvent?.({ type: 'container-load-start', cacheKey, context });\n const promise = options.loadContainer(context)\n .then(container => {\n options.onEvent?.({ type: 'container-load-success', cacheKey, context });\n return container;\n })\n .catch(error => {\n if (sceneCache.get(cacheKey) === promise) sceneCache.delete(cacheKey);\n options.onEvent?.({ type: 'container-load-failure', cacheKey, context, error });\n throw error;\n });\n sceneCache.set(cacheKey, promise);\n return promise;\n}\n\nasync function resolveProjectionContainerCacheKey(\n options: BabylonAssetContainerProjectionImporterOptions,\n context: BabylonEditorProjectionImportContext,\n): Promise<string> {\n const resolved = await options.resolveCacheKey?.(context);\n const baseKey = resolved && resolved.trim()\n ? resolved.trim()\n : createDefaultProjectionContainerCacheKey(context);\n return `${baseKey}|profiles:${stableProjectionCacheStringify({\n artistMaterialKind: context.node.artistMaterialKind,\n artistMaterialProfile: context.node.artistMaterialProfile,\n artistMaterialSlotBindings: context.node.artistMaterialSlotBindings,\n })}`;\n}\n\nfunction createDefaultProjectionContainerCacheKey(context: BabylonEditorProjectionImportContext): string {\n const asset = context.asset;\n return stableProjectionCacheStringify({\n assetId: asset.id,\n sourceId: asset.sourceId,\n url: readProjectionAssetUrlCandidate(asset.metadata),\n });\n}\n\nfunction readProjectionAssetUrlCandidate(metadata: Record<string, unknown> | undefined): unknown {\n if (!metadata) return undefined;\n return metadata.url ?? metadata.sourceUrl ?? metadata.src ?? metadata.path;\n}\n\nfunction ensureProjectionContainerResourcesInScene(\n container: BabylonAssetContainerProjectionContainer,\n scene: Record<string, any>,\n): void {\n addUniqueSceneResources(scene, scene.materials, container.materials, scene.addMaterial);\n addUniqueSceneResources(scene, scene.textures, container.textures, scene.addTexture);\n addUniqueSceneResources(scene, scene.skeletons, container.skeletons, scene.addSkeleton);\n}\n\nfunction addUniqueSceneResources(\n scene: Record<string, any>,\n existing: unknown[] | undefined,\n resources: unknown[] | undefined,\n addResource: ((resource: any) => void) | undefined,\n): void {\n if (!Array.isArray(resources) || resources.length === 0 || typeof addResource !== 'function') return;\n for (const resource of resources) {\n if (Array.isArray(existing) && existing.includes(resource)) continue;\n addResource.call(scene, resource);\n }\n}\n\nfunction collectProjectionImportResult(\n entries: BabylonAssetContainerProjectionInstantiatedEntries,\n sourceNameByInstanceName: ReadonlyMap<string, string>,\n): BabylonEditorProjectionImportResult {\n const meshes: unknown[] = [];\n const transformNodes: unknown[] = [];\n const seen = new Set<unknown>();\n for (const rootNode of entries.rootNodes ?? []) {\n collectProjectionNode(rootNode, sourceNameByInstanceName, seen, meshes, transformNodes);\n }\n return {\n meshes,\n transformNodes,\n animationGroups: entries.animationGroups ?? [],\n };\n}\n\nfunction collectProjectionNode(\n node: unknown,\n sourceNameByInstanceName: ReadonlyMap<string, string>,\n seen: Set<unknown>,\n meshes: unknown[],\n transformNodes: unknown[],\n): void {\n if (!node || seen.has(node)) return;\n seen.add(node);\n assignProjectionSourceNodeMetadata(node, sourceNameByInstanceName);\n if (isProjectionMeshLike(node)) {\n meshes.push(node);\n } else {\n transformNodes.push(node);\n }\n for (const child of readProjectionNodeChildren(node)) {\n collectProjectionNode(child, sourceNameByInstanceName, seen, meshes, transformNodes);\n }\n}\n\nfunction readProjectionNodeChildren(node: unknown): unknown[] {\n const getChildren = (node as { getChildren?: () => unknown[] } | null)?.getChildren;\n if (typeof getChildren !== 'function') return [];\n const children = getChildren.call(node);\n return Array.isArray(children) ? children : [];\n}\n\nfunction isProjectionMeshLike(node: unknown): boolean {\n return typeof (node as { getTotalVertices?: unknown } | null)?.getTotalVertices === 'function';\n}\n\nfunction stableProjectionCacheStringify(value: unknown): string {\n return JSON.stringify(sortProjectionCacheValue(value));\n}\n\nfunction sortProjectionCacheValue(value: unknown): unknown {\n if (Array.isArray(value)) return value.map(sortProjectionCacheValue);\n if (!value || typeof value !== 'object') return value;\n const record = value as Record<string, unknown>;\n const sorted: Record<string, unknown> = {};\n for (const key of Object.keys(record).sort()) {\n const item = record[key];\n if (typeof item === 'undefined' || typeof item === 'function') continue;\n sorted[key] = sortProjectionCacheValue(item);\n }\n return sorted;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projection-pick-resolver.js","sourceRoot":"","sources":["../src/projection-pick-resolver.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"projection-pick-resolver.js","sourceRoot":"","sources":["../src/projection-pick-resolver.ts"],"names":[],"mappings":"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","sourcesContent":["import type { RuntimeScene } from './types';\n\nexport interface BabylonProjectionPickResult {\n hit: boolean;\n nodeId: string | null;\n pickedMesh: unknown | null;\n}\n\nexport interface BabylonProjectionPickCandidate {\n hit: unknown;\n node: any;\n projection: Record<string, unknown>;\n selectionNodeId: string;\n editorOverlayPriority: number;\n renderingGroupId: number;\n alphaIndex: number;\n distance: number;\n}\n\nconst DEFAULT_ALPHA_THRESHOLD = 8 / 255;\nconst ALPHA_SAMPLE_CACHE_LIMIT = 2048;\nconst alphaSampleCache = new Map<string, Promise<number | null>>();\n\nexport function resolveBabylonProjectionNodeId(target: unknown): string | null {\n let current: any = target;\n while (current) {\n const nodeId = current.metadata?.editorProjection?.nodeId;\n if (typeof nodeId === 'string' && nodeId.length > 0) return nodeId;\n current = current.parent ?? null;\n }\n return null;\n}\n\nexport function resolveBabylonPickSelectionNodeId(target: unknown): string | null {\n let current: any = target;\n while (current) {\n const projection = current.metadata?.editorProjection;\n const rootNodeId = projection?.rootNodeId;\n if (projection?.runtimeKind === 'assetMesh' && typeof rootNodeId === 'string' && rootNodeId.length > 0) {\n return rootNodeId;\n }\n const nodeId = projection?.nodeId;\n if (typeof nodeId === 'string' && nodeId.length > 0) return nodeId;\n current = current.parent ?? null;\n }\n return null;\n}\n\nexport function pickBabylonProjectionNodeIdAt(\n scene: RuntimeScene,\n clientX: number,\n clientY: number,\n): string | null {\n const canvas = scene.getEngine?.().getRenderingCanvas?.() as HTMLCanvasElement | null | undefined;\n if (!canvas) return null;\n const rect = canvas.getBoundingClientRect();\n return pickBabylonProjectionAt(scene, clientX - rect.left, clientY - rect.top).nodeId;\n}\n\nexport function pickBabylonProjectionAt(\n scene: RuntimeScene,\n x: number,\n y: number,\n): BabylonProjectionPickResult {\n const hitBundle = collectScenePickHits(scene, x, y);\n const candidate = selectBabylonProjectionPickCandidate(scene, hitBundle.hits);\n return {\n hit: hitBundle.hit,\n nodeId: candidate?.selectionNodeId ?? null,\n pickedMesh: candidate?.node ?? null,\n };\n}\n\nexport async function pickBabylonProjectionAtAsync(\n scene: RuntimeScene,\n x: number,\n y: number,\n options: { alphaThreshold?: number } = {},\n): Promise<BabylonProjectionPickResult> {\n const hitBundle = collectScenePickHits(scene, x, y);\n const candidates = sortBabylonProjectionPickCandidates(scene, collectBabylonProjectionPickCandidates(hitBundle.hits));\n const alphaThreshold = options.alphaThreshold ?? DEFAULT_ALPHA_THRESHOLD;\n for (const candidate of candidates) {\n if (await isCandidateAlphaVisible(candidate, alphaThreshold)) {\n return {\n hit: hitBundle.hit,\n nodeId: candidate.selectionNodeId,\n pickedMesh: candidate.node,\n };\n }\n }\n return {\n hit: hitBundle.hit,\n nodeId: null,\n pickedMesh: null,\n };\n}\n\nexport function selectBabylonProjectionPickCandidate(\n scene: RuntimeScene,\n hits: readonly unknown[],\n): BabylonProjectionPickCandidate | null {\n return sortBabylonProjectionPickCandidates(scene, collectBabylonProjectionPickCandidates(hits))[0] ?? null;\n}\n\nexport function collectBabylonProjectionPickCandidates(\n hits: readonly unknown[],\n): BabylonProjectionPickCandidate[] {\n const candidates: BabylonProjectionPickCandidate[] = [];\n for (const hit of hits) {\n const pickedNode = readPickedNode(hit);\n if (!readHitFlag(hit) || !pickedNode) continue;\n const projection = findEditorProjectionMetadata(pickedNode);\n const markerRowId = resolveBabylonMarkerOverlaySelectionNodeId(pickedNode);\n if (!projection && !markerRowId) continue;\n const selectionNodeId = markerRowId ?? resolveBabylonPickSelectionNodeId(pickedNode);\n if (!selectionNodeId) continue;\n candidates.push({\n hit,\n node: pickedNode,\n projection: projection ?? { nodeId: selectionNodeId, runtimeKind: 'markerOverlay' },\n selectionNodeId,\n editorOverlayPriority: markerRowId ? 1 : 0,\n renderingGroupId: readRenderingGroupId(pickedNode),\n alphaIndex: readAlphaIndex(pickedNode),\n distance: readPickDistance(hit),\n });\n }\n return candidates;\n}\n\nexport function sortBabylonProjectionPickCandidates(\n scene: RuntimeScene,\n candidates: readonly BabylonProjectionPickCandidate[],\n): BabylonProjectionPickCandidate[] {\n if (candidates.length <= 1) return [...candidates];\n const nearestDistance = readNearestFiniteDistance(candidates);\n const depthTolerance = Number.isFinite(nearestDistance)\n ? Math.max(0.05, Math.abs(nearestDistance) * 0.001)\n : Number.POSITIVE_INFINITY;\n return [...candidates].sort((left, right) => {\n const rightTier = readDepthVisibilityTier(scene, right, nearestDistance, depthTolerance);\n const leftTier = readDepthVisibilityTier(scene, left, nearestDistance, depthTolerance);\n return right.editorOverlayPriority - left.editorOverlayPriority\n || rightTier - leftTier\n || right.renderingGroupId - left.renderingGroupId\n || right.alphaIndex - left.alphaIndex\n || left.distance - right.distance;\n });\n}\n\nfunction collectScenePickHits(\n scene: RuntimeScene,\n x: number,\n y: number,\n): { hit: boolean; hits: unknown[] } {\n if (typeof scene.multiPick === 'function') {\n const hits = scene.multiPick(x, y);\n if (Array.isArray(hits)) {\n return {\n hit: hits.some(readHitFlag),\n hits,\n };\n }\n }\n const pick = typeof scene.pick === 'function' ? scene.pick(x, y) : null;\n return {\n hit: readHitFlag(pick),\n hits: pick ? [pick] : [],\n };\n}\n\nfunction readDepthVisibilityTier(\n scene: RuntimeScene,\n candidate: BabylonProjectionPickCandidate,\n nearestDistance: number,\n depthTolerance: number,\n): number {\n if (renderingGroupClearsDepth(scene, candidate.renderingGroupId)) return 2;\n if (!Number.isFinite(nearestDistance) || !Number.isFinite(candidate.distance)) return 1;\n return Math.abs(candidate.distance - nearestDistance) <= depthTolerance ? 1 : 0;\n}\n\nfunction renderingGroupClearsDepth(scene: RuntimeScene, renderingGroupId: number): boolean {\n if (renderingGroupId <= 0 || typeof scene.getAutoClearDepthStencilSetup !== 'function') return false;\n const setup = scene.getAutoClearDepthStencilSetup(renderingGroupId);\n if (!setup || typeof setup !== 'object') return false;\n return (setup as any).autoClear !== false && (setup as any).depth !== false;\n}\n\nfunction findEditorProjectionMetadata(target: unknown): Record<string, unknown> | null {\n let current: any = target;\n while (current) {\n const projection = current.metadata?.editorProjection;\n if (projection && typeof projection === 'object') return projection;\n current = current.parent ?? null;\n }\n return null;\n}\n\nfunction resolveBabylonMarkerOverlaySelectionNodeId(target: unknown): string | null {\n let current: any = target;\n while (current) {\n if (current.metadata?.editorMarkerLabel === true) return null;\n const markerRowId = current.metadata?.editorMarkerRowId;\n if (current.metadata?.editorMarkerOverlay === true && typeof markerRowId === 'string' && markerRowId.length > 0) {\n return markerRowId;\n }\n current = current.parent ?? null;\n }\n return null;\n}\n\nfunction readPickedNode(hit: unknown): any | null {\n const pick = hit as any;\n return pick?.pickedMesh ?? pick?.pickedPoint?.mesh ?? null;\n}\n\nfunction readHitFlag(hit: unknown): boolean {\n return !!(hit as any)?.hit;\n}\n\nfunction readPickDistance(hit: unknown): number {\n const distance = (hit as any)?.distance;\n return typeof distance === 'number' && Number.isFinite(distance) ? distance : Number.POSITIVE_INFINITY;\n}\n\nfunction readNearestFiniteDistance(candidates: readonly BabylonProjectionPickCandidate[]): number {\n let nearest = Number.POSITIVE_INFINITY;\n for (const candidate of candidates) {\n if (Number.isFinite(candidate.distance) && candidate.distance < nearest) nearest = candidate.distance;\n }\n return nearest;\n}\n\nfunction readRenderingGroupId(node: any): number {\n let current = node;\n while (current) {\n const value = current.renderingGroupId;\n if (typeof value === 'number' && Number.isFinite(value)) return value;\n current = current.parent ?? null;\n }\n return 0;\n}\n\nfunction readAlphaIndex(node: any): number {\n let current = node;\n while (current) {\n const value = current.alphaIndex;\n if (typeof value === 'number' && Number.isFinite(value)) return value;\n current = current.parent ?? null;\n }\n return 0;\n}\n\nasync function isCandidateAlphaVisible(\n candidate: BabylonProjectionPickCandidate,\n alphaThreshold: number,\n): Promise<boolean> {\n const texture = readCandidateAlphaTexture(candidate.node);\n if (!texture) return true;\n const uv = readPickTextureCoordinates(candidate.hit);\n if (!uv) return true;\n try {\n const alpha = await sampleTextureAlpha(texture, uv);\n return alpha == null || alpha >= alphaThreshold;\n } catch {\n return true;\n }\n}\n\nfunction readCandidateAlphaTexture(node: any): any | null {\n const material = node?.material;\n if (!material || typeof material !== 'object') return null;\n const diffuseTexture = material.diffuseTexture;\n if (isAlphaTexture(diffuseTexture) && (material.useAlphaFromDiffuseTexture === true || diffuseTexture.hasAlpha === true)) {\n return diffuseTexture;\n }\n const albedoTexture = material.albedoTexture ?? material.baseTexture;\n if (isAlphaTexture(albedoTexture) && (material.useAlphaFromAlbedoTexture === true || albedoTexture.hasAlpha === true)) {\n return albedoTexture;\n }\n const opacityTexture = material.opacityTexture;\n if (isAlphaTexture(opacityTexture)) return opacityTexture;\n return null;\n}\n\nfunction isAlphaTexture(texture: any): boolean {\n return !!texture && typeof texture === 'object' && typeof texture.readPixels === 'function';\n}\n\nfunction readPickTextureCoordinates(hit: unknown): { x: number; y: number } | null {\n const pick = hit as any;\n const uv = typeof pick?.getTextureCoordinates === 'function' ? pick.getTextureCoordinates() : null;\n const x = uv?.x;\n const y = uv?.y;\n return typeof x === 'number' && Number.isFinite(x) && typeof y === 'number' && Number.isFinite(y)\n ? { x, y }\n : null;\n}\n\nasync function sampleTextureAlpha(\n texture: any,\n uv: { x: number; y: number },\n): Promise<number | null> {\n const size = readTextureSize(texture);\n if (!size) return null;\n const transformed = transformTextureUv(texture, uv);\n const x = toTexturePixelCoordinate(transformed.x, size.width, texture.wrapU);\n const y = toTexturePixelCoordinate(transformed.y, size.height, texture.wrapV);\n const cacheKey = createAlphaSampleCacheKey(texture, size.width, size.height, x, y);\n const cached = alphaSampleCache.get(cacheKey);\n if (cached) return cached;\n const sample = readTextureAlphaPixel(texture, x, y)\n .then(alpha => {\n if (alpha == null) alphaSampleCache.delete(cacheKey);\n return alpha;\n }, error => {\n alphaSampleCache.delete(cacheKey);\n throw error;\n });\n rememberAlphaSample(cacheKey, sample);\n return sample;\n}\n\nfunction readTextureSize(texture: any): { width: number; height: number } | null {\n const size = typeof texture.getSize === 'function'\n ? texture.getSize()\n : typeof texture.getBaseSize === 'function'\n ? texture.getBaseSize()\n : null;\n const width = size?.width;\n const height = size?.height;\n return typeof width === 'number' && Number.isFinite(width) && width > 0\n && typeof height === 'number' && Number.isFinite(height) && height > 0\n ? { width: Math.floor(width), height: Math.floor(height) }\n : null;\n}\n\nfunction transformTextureUv(texture: any, uv: { x: number; y: number }): { x: number; y: number } {\n const uScale = readTextureNumber(texture.uScale, 1);\n const vScale = readTextureNumber(texture.vScale, 1);\n const uOffset = readTextureNumber(texture.uOffset, 0);\n const vOffset = readTextureNumber(texture.vOffset, 0);\n return {\n x: uv.x * uScale + uOffset,\n y: uv.y * vScale + vOffset,\n };\n}\n\nfunction readTextureNumber(value: unknown, fallback: number): number {\n return typeof value === 'number' && Number.isFinite(value) ? value : fallback;\n}\n\nfunction toTexturePixelCoordinate(value: number, size: number, wrapMode: unknown): number {\n const normalized = wrapMode === 0 ? clamp01(value) : wrap01(value);\n return Math.min(size - 1, Math.max(0, Math.floor(normalized * size)));\n}\n\nfunction clamp01(value: number): number {\n return Math.min(1, Math.max(0, value));\n}\n\nfunction wrap01(value: number): number {\n return ((value % 1) + 1) % 1;\n}\n\nfunction createAlphaSampleCacheKey(\n texture: any,\n width: number,\n height: number,\n x: number,\n y: number,\n): string {\n const textureId = texture.uniqueId ?? texture.uid ?? texture.name ?? texture.url ?? 'anonymous';\n return `${String(textureId)}:${width}x${height}:${x},${y}`;\n}\n\nfunction rememberAlphaSample(key: string, sample: Promise<number | null>): void {\n alphaSampleCache.set(key, sample);\n while (alphaSampleCache.size > ALPHA_SAMPLE_CACHE_LIMIT) {\n const oldestKey = alphaSampleCache.keys().next().value;\n if (typeof oldestKey !== 'string') break;\n alphaSampleCache.delete(oldestKey);\n }\n}\n\nasync function readTextureAlphaPixel(texture: any, x: number, y: number): Promise<number | null> {\n const pixels = await texture.readPixels(0, 0, undefined, false, false, x, y, 1, 1);\n if (!pixels || typeof (pixels as ArrayBufferView).byteLength !== 'number' || (pixels as any).length < 4) return null;\n const alpha = Number((pixels as any)[3]);\n if (!Number.isFinite(alpha)) return null;\n return alpha <= 1 ? alpha : alpha / 255;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projection-selection-controller.js","sourceRoot":"","sources":["../src/projection-selection-controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,6BAA6B,GAG9B,MAAM,wBAAwB,CAAC;AAKhC,OAAO,EACL,uBAAuB,EACvB,4BAA4B,GAC7B,MAAM,4BAA4B,CAAC;AAgDpC,MAAM,uBAAuB,GAAG,CAAC,CAAC;AAElC,MAAM,UAAU,0CAA0C,CACxD,OAAoD;IAEpD,IAAI,IAAI,GAA4B,IAAI,CAAC;IACzC,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,cAAc,GAAG,CAAC,CAAC;IAEvB,SAAS,uBAAuB,CAAC,KAAmB;QAClD,IAAI,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,kBAAkB,EAAE,EAAE;YAAE,OAAO,KAAK,CAAC;QACnF,IAAI,KAAK,CAAC,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QACjE,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC9D,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IACnC,CAAC;IAED,SAAS,qBAAqB,CAAC,KAAmB;QAChD,IAAI,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,kBAAkB,EAAE,EAAE;YAAE,OAAO;QAC7E,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;QAC/B,IAAI,CAAC,yBAAyB,CAAC,KAAK,EAAE,IAAI,CAAC;YAAE,OAAO;QACpD,cAAc,IAAI,CAAC,CAAC;QACpB,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC9D,IAAI,GAAG;YACL,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,MAAM,EAAE,KAAK,CAAC,OAAO;YACrB,MAAM,EAAE,KAAK,CAAC,OAAO;YACrB,QAAQ,EAAE,KAAK,CAAC,OAAO;YACvB,QAAQ,EAAE,KAAK,CAAC,OAAO;YACvB,WAAW,EAAE,IAAI,CAAC,MAAM;YACxB,QAAQ,EAAE,IAAI,CAAC,GAAG;YAClB,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO;YAC5D,MAAM,EAAE,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO;YACtC,SAAS,EAAE,KAAK;SACjB,CAAC;IACJ,CAAC;IAED,SAAS,sBAAsB,CAAC,KAAmB,EAAE,MAA+B;QAClF,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,IAAI,QAAQ;YAAE,OAAO;QACpE,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACtF,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;QAC9B,IACE,CAAC,IAAI,CAAC,SAAS;eACZ,CACD,MAAM,KAAK,YAAY;mBACpB,CAAC,KAAK,IAAI,uBAAuB,IAAI,OAAO,CAAC,OAAO,EAAE,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAC/G,EACD,CAAC;YACD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACxB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO;QAC5B,OAAO,CAAC,oBAAoB,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;IACrD,CAAC;IAED,SAAS,mBAAmB,CAAC,KAAmB,EAAE,MAA+B;QAC/E,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,IAAI,QAAQ;YAAE,OAAO;QACpE,sBAAsB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC;QACrB,IAAI,GAAG,IAAI,CAAC;QACZ,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YACtB,OAAO,CAAC,oBAAoB,EAAE,CAAC,IAAI,CAAC,CAAC;YACrC,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU;iBACnC,sBAAsB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;iBAC7C,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;YAC3C,oBAAoB,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;YACpD,OAAO;QACT,CAAC;QACD,MAAM,KAAK,GAAG,eAAe,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC5F,IAAI,KAAK,IAAI,uBAAuB;YAAE,OAAO;QAC7C,MAAM,UAAU,GAAG,EAAE,cAAc,CAAC;QACpC,KAAK,2BAA2B,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACtF,CAAC;IAED,SAAS,iBAAiB,CAAC,KAAiB;QAC1C,IAAI,QAAQ,IAAI,OAAO,CAAC,kBAAkB,EAAE,EAAE;YAAE,OAAO;QACvD,MAAM,WAAW,GAAG,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACrE,IAAI,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM;YAAE,OAAO;QACpD,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,MAAM,UAAU,GAAG,EAAE,cAAc,CAAC;QACpC,KAAK,sBAAsB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACjD,CAAC;IAED,SAAS,kBAAkB;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC;QACrB,IAAI,GAAG,IAAI,CAAC;QACZ,cAAc,IAAI,CAAC,CAAC;QACpB,IAAI,OAAO,EAAE,SAAS,EAAE,CAAC;YACvB,OAAO,CAAC,oBAAoB,EAAE,CAAC,IAAI,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,OAAO;QACL,uBAAuB;QACvB,qBAAqB;QACrB,sBAAsB;QACtB,mBAAmB;QACnB,iBAAiB;QACjB,kBAAkB;QAClB,OAAO;YACL,IAAI,QAAQ;gBAAE,OAAO;YACrB,QAAQ,GAAG,IAAI,CAAC;YAChB,cAAc,IAAI,CAAC,CAAC;YACpB,kBAAkB,EAAE,CAAC;QACvB,CAAC;KACF,CAAC;IAEF,KAAK,UAAU,2BAA2B,CACxC,OAAyB,EACzB,OAAe,EACf,OAAe,EACf,UAAkB;QAElB,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAC7D,IAAI,QAAQ,IAAI,UAAU,KAAK,cAAc;YAAE,OAAO;QACtD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC;gBAAE,OAAO;YAChD,wBAAwB,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACxD,OAAO;QACT,CAAC;QACD,IAAI,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,QAAQ;YAAE,OAAO;QACzC,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACzC,OAAO,CAAC,kBAAkB,EAAE,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC,CAAC;QACtF,CAAC;IACH,CAAC;IAED,KAAK,UAAU,sBAAsB,CACnC,KAAiB,EACjB,UAAkB;QAElB,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACzE,IAAI,QAAQ,IAAI,UAAU,KAAK,cAAc;YAAE,OAAO;QACtD,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC;YAAE,OAAO;QAChE,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;QACzC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACjD,OAAO,CAAC,kBAAkB,EAAE,CAAC;gBAC3B,IAAI,EAAE,mBAAmB;gBACzB,WAAW,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC;gBAC1B,QAAQ,EAAE,IAAI,CAAC,MAAM;gBACrB,KAAK,EAAE,eAAe;aACvB,CAAC,CAAC;QACL,CAAC;QACD,OAAO,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC;AACH,CAAC;AAED,SAAS,yBAAyB,CAAC,KAAmB,EAAE,IAAyB;IAC/E,IAAI,KAAK,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAC/B,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,OAAO,CAAC;AACvF,CAAC;AAED,SAAS,SAAS,CAChB,OAAoD,EACpD,OAAe,EACf,OAAe;IAEf,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,qBAAqB,EAAE,CAAC;IACpD,MAAM,CAAC,GAAG,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC;IAC9B,MAAM,CAAC,GAAG,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC;IAC7B,OAAO,uBAAuB,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACtD,CAAC;AAED,KAAK,UAAU,cAAc,CAC3B,OAAoD,EACpD,OAAe,EACf,OAAe;IAEf,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,qBAAqB,EAAE,CAAC;IACpD,MAAM,CAAC,GAAG,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC;IAC9B,MAAM,CAAC,GAAG,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC;IAC7B,OAAO,4BAA4B,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,wBAAwB,CAC/B,OAAoD,EACpD,MAAc,EACd,IAAsB;IAEtB,MAAM,OAAO,GAAG,6BAA6B,CAAC;QAC5C,SAAS,EAAE,OAAO,CAAC,YAAY,EAAE;QACjC,SAAS,EAAE,CAAC,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM;QAChB,OAAO,EAAE,OAAO;QAChB,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;KAC1E,CAAC,CAAC;IACH,IAAI,OAAO;QAAE,OAAO,CAAC,kBAAkB,EAAE,CAAC,OAAO,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,oBAAoB,CAC3B,OAAoD,EACpD,WAAqB,EACrB,IAAsB;IAEtB,MAAM,OAAO,GAAG,6BAA6B,CAAC;QAC5C,SAAS,EAAE,OAAO,CAAC,YAAY,EAAE;QACjC,SAAS,EAAE,WAAW;QACtB,QAAQ,EAAE,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,IAAI;QACrD,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;KAC1E,CAAC,CAAC;IACH,IAAI,OAAO;QAAE,OAAO,CAAC,kBAAkB,EAAE,CAAC,OAAO,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,YAAY,CACnB,OAAoD,EACpD,MAAc;IAEd,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC;IAC7C,OAAO,OAAO,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC;AAChD,CAAC;AAED,SAAS,eAAe,CACtB,MAAc,EACd,MAAc,EACd,QAAgB,EAChB,QAAgB;IAEhB,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,MAAM,EAAE,QAAQ,GAAG,MAAM,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,YAAY,CAAC,IAAsB;IAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjD,OAAO;QACL,MAAM,EAAE,IAAI;QACZ,IAAI;QACJ,GAAG;QACH,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC;QAC5C,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC;KAC9C,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,IAAsB;IAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjD,OAAO;QACL,IAAI;QACJ,GAAG;QACH,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC;QAC3C,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC;KAC7C,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"projection-selection-controller.js","sourceRoot":"","sources":["../src/projection-selection-controller.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n type EditorSelectionState,\n type EditorTransformTool,\n resolveEditorSelectionCommand,\n type SceneViewPointerIntent,\n type SelectionCommand,\n} from '@fps-games/editor-core';\nimport type {\n BabylonEditorProjection,\n BabylonEditorProjectionScreenRect,\n} from './projection';\nimport {\n pickBabylonProjectionAt,\n pickBabylonProjectionAtAsync,\n} from './projection-pick-resolver';\nimport type { RuntimeScene } from './types';\n\nexport interface BabylonProjectionSelectionBox {\n active: boolean;\n left: number;\n top: number;\n width: number;\n height: number;\n}\n\nexport interface BabylonProjectionSelectionControllerOptions {\n scene: RuntimeScene;\n canvas: HTMLCanvasElement;\n projection: BabylonEditorProjection;\n getTool: () => EditorTransformTool;\n getSelection: () => EditorSelectionState;\n isSelectable?: (nodeId: string) => boolean;\n isLocked?: (nodeId: string) => boolean;\n isOperationBlocked?: () => boolean;\n onSelectionCommand?: (command: SelectionCommand) => void;\n onFocusIntent?: (nodeId: string) => void;\n onBoxSelectionChange?: (box: BabylonProjectionSelectionBox | null) => void;\n}\n\nexport interface BabylonProjectionSelectionController {\n isBoxSelectionCandidate(event: PointerEvent): boolean;\n beginPointerSelection(event: PointerEvent): void;\n updatePointerSelection(event: PointerEvent, intent?: SceneViewPointerIntent): void;\n endPointerSelection(event: PointerEvent, intent?: SceneViewPointerIntent): void;\n handleDoubleClick(event: MouseEvent): void;\n cancelBoxSelection(): void;\n dispose(): void;\n}\n\ninterface PointerDragState {\n pointerId: number;\n startX: number;\n startY: number;\n currentX: number;\n currentY: number;\n startNodeId: string | null;\n startHit: boolean;\n additive: boolean;\n toggle: boolean;\n boxActive: boolean;\n}\n\nconst CLICK_DRAG_THRESHOLD_PX = 5;\n\nexport function createBabylonProjectionSelectionController(\n options: BabylonProjectionSelectionControllerOptions,\n): BabylonProjectionSelectionController {\n let drag: PointerDragState | null = null;\n let disposed = false;\n let pickGeneration = 0;\n\n function isBoxSelectionCandidate(event: PointerEvent): boolean {\n if (disposed || event.button !== 0 || options.isOperationBlocked?.()) return false;\n if (event.altKey || options.getTool() !== 'select') return false;\n const pick = pickScene(options, event.clientX, event.clientY);\n return !pick.nodeId && !pick.hit;\n }\n\n function beginPointerSelection(event: PointerEvent): void {\n if (disposed || event.button !== 0 || options.isOperationBlocked?.()) return;\n const tool = options.getTool();\n if (!isSelectionPointerAllowed(event, tool)) return;\n pickGeneration += 1;\n const pick = pickScene(options, event.clientX, event.clientY);\n drag = {\n pointerId: event.pointerId,\n startX: event.clientX,\n startY: event.clientY,\n currentX: event.clientX,\n currentY: event.clientY,\n startNodeId: pick.nodeId,\n startHit: pick.hit,\n additive: event.shiftKey && !event.metaKey && !event.ctrlKey,\n toggle: event.metaKey || event.ctrlKey,\n boxActive: false,\n };\n }\n\n function updatePointerSelection(event: PointerEvent, intent?: SceneViewPointerIntent): void {\n if (!drag || event.pointerId !== drag.pointerId || disposed) return;\n const moved = pointerDistance(drag.startX, drag.startY, event.clientX, event.clientY);\n drag.currentX = event.clientX;\n drag.currentY = event.clientY;\n if (\n !drag.boxActive\n && (\n intent === 'box-select'\n || (moved >= CLICK_DRAG_THRESHOLD_PX && options.getTool() === 'select' && !drag.startNodeId && !drag.startHit)\n )\n ) {\n drag.boxActive = true;\n }\n if (!drag.boxActive) return;\n options.onBoxSelectionChange?.(toBoxOverlay(drag));\n }\n\n function endPointerSelection(event: PointerEvent, intent?: SceneViewPointerIntent): void {\n if (!drag || event.pointerId !== drag.pointerId || disposed) return;\n updatePointerSelection(event, intent);\n const current = drag;\n drag = null;\n if (current.boxActive) {\n options.onBoxSelectionChange?.(null);\n const selectedIds = options.projection\n .getNodeIdsInScreenRect(toScreenRect(current))\n .filter(id => isSelectable(options, id));\n dispatchBoxSelection(options, selectedIds, current);\n return;\n }\n const moved = pointerDistance(current.startX, current.startY, event.clientX, event.clientY);\n if (moved >= CLICK_DRAG_THRESHOLD_PX) return;\n const generation = ++pickGeneration;\n void finishPointerClickSelection(current, event.clientX, event.clientY, generation);\n }\n\n function handleDoubleClick(event: MouseEvent): void {\n if (disposed || options.isOperationBlocked?.()) return;\n const initialPick = pickScene(options, event.clientX, event.clientY);\n if (!initialPick.hit && !initialPick.nodeId) return;\n event.preventDefault();\n event.stopPropagation();\n const generation = ++pickGeneration;\n void finishDoubleClickFocus(event, generation);\n }\n\n function cancelBoxSelection(): void {\n const current = drag;\n drag = null;\n pickGeneration += 1;\n if (current?.boxActive) {\n options.onBoxSelectionChange?.(null);\n }\n }\n\n return {\n isBoxSelectionCandidate,\n beginPointerSelection,\n updatePointerSelection,\n endPointerSelection,\n handleDoubleClick,\n cancelBoxSelection,\n dispose() {\n if (disposed) return;\n disposed = true;\n pickGeneration += 1;\n cancelBoxSelection();\n },\n };\n\n async function finishPointerClickSelection(\n current: PointerDragState,\n clientX: number,\n clientY: number,\n generation: number,\n ): Promise<void> {\n const pick = await pickSceneAsync(options, clientX, clientY);\n if (disposed || generation !== pickGeneration) return;\n if (pick.nodeId) {\n if (!isSelectable(options, pick.nodeId)) return;\n dispatchPointerSelection(options, pick.nodeId, current);\n return;\n }\n if (pick.hit || current.startHit) return;\n if (!current.additive && !current.toggle) {\n options.onSelectionCommand?.({ type: 'selection.clear', label: 'Clear Selection' });\n }\n }\n\n async function finishDoubleClickFocus(\n event: MouseEvent,\n generation: number,\n ): Promise<void> {\n const pick = await pickSceneAsync(options, event.clientX, event.clientY);\n if (disposed || generation !== pickGeneration) return;\n if (!pick.nodeId || !isSelectable(options, pick.nodeId)) return;\n const selection = options.getSelection();\n if (!selection.selectedIds.includes(pick.nodeId)) {\n options.onSelectionCommand?.({\n type: 'selection.replace',\n selectedIds: [pick.nodeId],\n activeId: pick.nodeId,\n label: 'Select Object',\n });\n }\n options.onFocusIntent?.(pick.nodeId);\n }\n}\n\nfunction isSelectionPointerAllowed(event: PointerEvent, tool: EditorTransformTool): boolean {\n if (event.altKey) return false;\n return tool === 'select' || tool === 'move' || tool === 'rotate' || tool === 'scale';\n}\n\nfunction pickScene(\n options: BabylonProjectionSelectionControllerOptions,\n clientX: number,\n clientY: number,\n): { hit: boolean; nodeId: string | null } {\n const rect = options.canvas.getBoundingClientRect();\n const x = clientX - rect.left;\n const y = clientY - rect.top;\n return pickBabylonProjectionAt(options.scene, x, y);\n}\n\nasync function pickSceneAsync(\n options: BabylonProjectionSelectionControllerOptions,\n clientX: number,\n clientY: number,\n): Promise<{ hit: boolean; nodeId: string | null }> {\n const rect = options.canvas.getBoundingClientRect();\n const x = clientX - rect.left;\n const y = clientY - rect.top;\n return pickBabylonProjectionAtAsync(options.scene, x, y);\n}\n\nfunction dispatchPointerSelection(\n options: BabylonProjectionSelectionControllerOptions,\n nodeId: string,\n drag: PointerDragState,\n): void {\n const command = resolveEditorSelectionCommand({\n selection: options.getSelection(),\n targetIds: [nodeId],\n activeId: nodeId,\n gesture: 'click',\n modifier: drag.toggle ? 'toggle' : drag.additive ? 'additive' : 'replace',\n });\n if (command) options.onSelectionCommand?.(command);\n}\n\nfunction dispatchBoxSelection(\n options: BabylonProjectionSelectionControllerOptions,\n selectedIds: string[],\n drag: PointerDragState,\n): void {\n const command = resolveEditorSelectionCommand({\n selection: options.getSelection(),\n targetIds: selectedIds,\n activeId: selectedIds[selectedIds.length - 1] ?? null,\n gesture: 'box',\n modifier: drag.toggle ? 'toggle' : drag.additive ? 'additive' : 'replace',\n });\n if (command) options.onSelectionCommand?.(command);\n}\n\nfunction isSelectable(\n options: BabylonProjectionSelectionControllerOptions,\n nodeId: string,\n): boolean {\n if (options.isLocked?.(nodeId)) return false;\n return options.isSelectable?.(nodeId) ?? true;\n}\n\nfunction pointerDistance(\n startX: number,\n startY: number,\n currentX: number,\n currentY: number,\n): number {\n return Math.hypot(currentX - startX, currentY - startY);\n}\n\nfunction toBoxOverlay(drag: PointerDragState): BabylonProjectionSelectionBox {\n const left = Math.min(drag.startX, drag.currentX);\n const top = Math.min(drag.startY, drag.currentY);\n return {\n active: true,\n left,\n top,\n width: Math.abs(drag.currentX - drag.startX),\n height: Math.abs(drag.currentY - drag.startY),\n };\n}\n\nfunction toScreenRect(drag: PointerDragState): BabylonEditorProjectionScreenRect {\n const left = Math.min(drag.startX, drag.currentX);\n const top = Math.min(drag.startY, drag.currentY);\n return {\n left,\n top,\n right: Math.max(drag.startX, drag.currentX),\n bottom: Math.max(drag.startY, drag.currentY),\n };\n}\n"]}
|