@fps-games/editor 0.2.0-beta.2 → 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 +49 -2
- 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.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.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.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.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/manager-core.js +13 -1
- 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.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 +58 -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.js.map +1 -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.js.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.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.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.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 +1 -1
- 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.js.map +1 -1
- 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.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.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.js +13 -1
- 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.js.map +1 -1
- 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.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.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.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.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 +2 -11
- 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.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":"runtime-globals.js","sourceRoot":"","sources":["../src/runtime-globals.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,iBAAiB,CAAC,eAA6C;IAC7E,IAAI,eAAe;QAAE,OAAO,eAAe,CAAC;IAC5C,MAAM,IAAI,GAAG,UAAoE,CAAC;IAClF,OAAO,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC;AAC9B,CAAC"}
|
|
1
|
+
{"version":3,"file":"runtime-globals.js","sourceRoot":"","sources":["../src/runtime-globals.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,iBAAiB,CAAC,eAA6C;IAC7E,IAAI,eAAe;QAAE,OAAO,eAAe,CAAC;IAC5C,MAAM,IAAI,GAAG,UAAoE,CAAC;IAClF,OAAO,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC;AAC9B,CAAC","sourcesContent":["import type { BabylonRuntimeGlobal } from './types';\n\nexport function getBabylonRuntime(explicitRuntime?: BabylonRuntimeGlobal | null): BabylonRuntimeGlobal | null {\n if (explicitRuntime) return explicitRuntime;\n const root = globalThis as typeof globalThis & { BABYLON?: BabylonRuntimeGlobal };\n return root.BABYLON ?? null;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scene-camera-preview.js","sourceRoot":"","sources":["../src/scene-camera-preview.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,wCAAwC,IAAI,yCAAyC,EACrF,mDAAmD,IAAI,oDAAoD,GAC5G,MAAM,uBAAuB,CAAC"}
|
|
1
|
+
{"version":3,"file":"scene-camera-preview.js","sourceRoot":"","sources":["../src/scene-camera-preview.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,wCAAwC,IAAI,yCAAyC,EACrF,mDAAmD,IAAI,oDAAoD,GAC5G,MAAM,uBAAuB,CAAC","sourcesContent":["export type {\n BabylonMainCameraPreviewController as BabylonSceneCameraPreviewController,\n BabylonMainCameraPreviewControllerOptions as BabylonSceneCameraPreviewControllerOptions,\n BabylonMainCameraPreviewRig as BabylonSceneCameraPreviewRig,\n} from './main-camera-preview';\nexport {\n createBabylonMainCameraPreviewController as createBabylonSceneCameraPreviewController,\n createBabylonMainCameraPreviewRigFromProjectionNode as createBabylonSceneCameraPreviewRigFromProjectionNode,\n} from './main-camera-preview';\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scene-view-camera-controller.js","sourceRoot":"","sources":["../src/scene-view-camera-controller.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scene-view-camera-controller.js","sourceRoot":"","sources":["../src/scene-view-camera-controller.ts"],"names":[],"mappings":"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","sourcesContent":["import type {\n EditorViewportProjectionMode,\n EditorViewportViewPreset,\n} from '@fps-games/editor-core';\nimport type {\n BabylonSceneViewInputController,\n BabylonSceneViewInputPointerEvent,\n BabylonSceneViewInputWheelEvent,\n} from './scene-view-input-controller';\nimport type {\n BabylonRuntimeGlobal,\n RuntimeCamera,\n RuntimeScene,\n} from './types';\n\nexport interface BabylonSceneViewCameraControllerOptions {\n babylon: BabylonRuntimeGlobal;\n scene: RuntimeScene;\n camera: RuntimeCamera;\n input: BabylonSceneViewInputController;\n orbitSensitivity?: number;\n panSensitivity?: number;\n dollySensitivity?: number;\n}\n\nexport interface BabylonSceneViewCameraFrame {\n deltaSeconds: number;\n}\n\nexport interface BabylonSceneViewCameraController {\n getState(): BabylonSceneViewCameraState;\n setViewPreset(preset: EditorViewportViewPreset, options?: BabylonSceneViewCameraPresetOptions): boolean;\n setProjectionMode(mode: EditorViewportProjectionMode): boolean;\n orbit(options?: BabylonSceneViewCameraOrbitOptions): boolean;\n updateFrame(frame: BabylonSceneViewCameraFrame): boolean;\n handlePointerIntentMove(event: BabylonSceneViewInputPointerEvent): boolean;\n handleWheel(event: BabylonSceneViewInputWheelEvent): boolean;\n dispose(): void;\n}\n\nexport interface BabylonSceneViewCameraState {\n viewPreset: EditorViewportViewPreset;\n projectionMode: EditorViewportProjectionMode;\n target?: Vec3;\n position?: Vec3;\n alpha?: number;\n beta?: number;\n radius?: number;\n}\n\nexport interface BabylonSceneViewCameraPresetOptions {\n target?: Vec3 | null;\n radius?: number;\n}\n\nexport interface BabylonSceneViewCameraOrbitOptions extends BabylonSceneViewCameraPresetOptions {\n yawDeltaDeg?: number;\n pitchDeltaDeg?: number;\n distanceScale?: number;\n}\n\ninterface PerspectiveSnapshot {\n alpha?: number;\n beta?: number;\n radius?: number;\n target?: Vec3;\n}\n\ninterface Vec3 {\n x: number;\n y: number;\n z: number;\n}\n\nconst DEFAULT_ORBIT_SENSITIVITY = 0.005;\nconst DEFAULT_PAN_SENSITIVITY = 0.0015;\nconst DEFAULT_DOLLY_SENSITIVITY = 0.001;\nconst MIN_CAMERA_RADIUS = 0.2;\nconst MAX_CAMERA_RADIUS = 10000;\nconst DEFAULT_ORTHO_RADIUS = 10;\nconst DEFAULT_ORTHO_SIZE = 6;\nconst TOP_VIEW_BETA = 0.01;\nconst BOTTOM_VIEW_BETA = Math.PI - 0.01;\nconst ISOMETRIC_VIEW_BETA = Math.PI / 3;\nconst THREE_QUARTER_TOP_BETA = Math.PI / 4;\n\nconst VIEW_PRESET_ANGLES: Record<Exclude<EditorViewportViewPreset, 'perspective'>, {\n alpha: number;\n beta: number;\n projectionMode: EditorViewportProjectionMode;\n}> = {\n top: { alpha: Math.PI / 2, beta: TOP_VIEW_BETA, projectionMode: 'orthographic' },\n bottom: { alpha: Math.PI / 2, beta: BOTTOM_VIEW_BETA, projectionMode: 'orthographic' },\n front: { alpha: -Math.PI / 2, beta: Math.PI / 2, projectionMode: 'orthographic' },\n back: { alpha: Math.PI / 2, beta: Math.PI / 2, projectionMode: 'orthographic' },\n left: { alpha: Math.PI, beta: Math.PI / 2, projectionMode: 'orthographic' },\n right: { alpha: 0, beta: Math.PI / 2, projectionMode: 'orthographic' },\n iso: { alpha: Math.PI / 4, beta: ISOMETRIC_VIEW_BETA, projectionMode: 'orthographic' },\n threeQuarterTop: { alpha: Math.PI / 4, beta: THREE_QUARTER_TOP_BETA, projectionMode: 'perspective' },\n};\n\nexport function createBabylonSceneViewCameraController(\n options: BabylonSceneViewCameraControllerOptions,\n): BabylonSceneViewCameraController {\n const camera = options.camera as any;\n const scene = options.scene;\n const input = options.input;\n const Vector3 = options.babylon.Vector3;\n const orbitSensitivity = options.orbitSensitivity ?? DEFAULT_ORBIT_SENSITIVITY;\n const panSensitivity = options.panSensitivity ?? DEFAULT_PAN_SENSITIVITY;\n const dollySensitivity = options.dollySensitivity ?? DEFAULT_DOLLY_SENSITIVITY;\n let disposed = false;\n let viewPreset: EditorViewportViewPreset = 'perspective';\n let projectionMode: EditorViewportProjectionMode = readProjectionMode();\n let lastPerspective: PerspectiveSnapshot | null = readPerspectiveSnapshot();\n\n function handlePointerIntentMove(event: BabylonSceneViewInputPointerEvent): boolean {\n if (disposed) return false;\n const { intent, delta } = event.state;\n if (intent === 'orbit') {\n orbitCamera(delta.x, delta.y);\n viewPreset = 'perspective';\n return true;\n }\n if (intent === 'flythrough') {\n lookCamera(delta.x, delta.y);\n viewPreset = 'perspective';\n return true;\n }\n if (intent === 'pan') {\n panCamera(delta.x, delta.y);\n return true;\n }\n if (intent === 'dolly') {\n dollyCamera(delta.y * 4);\n return true;\n }\n return false;\n }\n\n function handleWheel(event: BabylonSceneViewInputWheelEvent): boolean {\n if (disposed) return false;\n if (input.getState().navigationMode === 'flythrough') return true;\n dollyCamera(event.deltaY);\n return true;\n }\n\n function getState(): BabylonSceneViewCameraState {\n const state: BabylonSceneViewCameraState = {\n viewPreset,\n projectionMode: readProjectionMode(),\n };\n const target = readTarget();\n const position = readCameraPosition(target);\n if (target) state.target = target;\n if (position) state.position = position;\n if (Number.isFinite(camera.alpha)) state.alpha = Number(camera.alpha);\n if (Number.isFinite(camera.beta)) state.beta = Number(camera.beta);\n if (Number.isFinite(camera.radius)) state.radius = Number(camera.radius);\n return state;\n }\n\n function setViewPreset(\n preset: EditorViewportViewPreset,\n presetOptions: BabylonSceneViewCameraPresetOptions = {},\n ): boolean {\n if (disposed) return false;\n const nextPreset = normalizeViewPreset(preset);\n if (nextPreset === 'perspective') {\n viewPreset = 'perspective';\n applyPerspectivePreset(presetOptions);\n setProjectionMode('perspective');\n return true;\n }\n\n const angles = VIEW_PRESET_ANGLES[nextPreset];\n if (readProjectionMode() === 'perspective' && angles.projectionMode === 'orthographic') {\n lastPerspective = readPerspectiveSnapshot() ?? lastPerspective;\n }\n viewPreset = nextPreset;\n applyViewPresetAngles(nextPreset, presetOptions);\n setProjectionMode(angles.projectionMode);\n if (angles.projectionMode === 'orthographic') updateOrthoExtents(resolveOrthoSize());\n return true;\n }\n\n function orbit(orbitOptions: BabylonSceneViewCameraOrbitOptions = {}): boolean {\n if (disposed) return false;\n const baseAlpha = Number(camera.alpha);\n const baseBeta = Number(camera.beta);\n const baseRadius = Number(camera.radius);\n if (orbitOptions.target) setCameraTarget(orbitOptions.target);\n const yawDelta = degreesToRadians(orbitOptions.yawDeltaDeg ?? 0);\n const pitchDelta = degreesToRadians(orbitOptions.pitchDeltaDeg ?? 0);\n if (Number.isFinite(baseAlpha)) camera.alpha = baseAlpha + yawDelta;\n if (Number.isFinite(baseBeta)) camera.beta = clamp(baseBeta + pitchDelta, 0.01, Math.PI - 0.01);\n if (Number.isFinite(baseRadius)) {\n const distanceScale = Number.isFinite(orbitOptions.distanceScale) ? Number(orbitOptions.distanceScale) : 1;\n camera.radius = clamp(baseRadius * Math.max(0.05, distanceScale), MIN_CAMERA_RADIUS, MAX_CAMERA_RADIUS);\n }\n viewPreset = 'perspective';\n setProjectionMode('perspective');\n return true;\n }\n\n function setProjectionMode(mode: EditorViewportProjectionMode): boolean {\n if (disposed) return false;\n const nextMode = mode === 'orthographic' ? 'orthographic' : 'perspective';\n const Camera = options.babylon.Camera;\n camera.mode = nextMode === 'orthographic'\n ? Camera?.ORTHOGRAPHIC_CAMERA ?? 1\n : Camera?.PERSPECTIVE_CAMERA ?? 0;\n projectionMode = nextMode;\n if (nextMode === 'orthographic') updateOrthoExtents(resolveOrthoSize());\n return true;\n }\n\n function updateFrame(frame: BabylonSceneViewCameraFrame): boolean {\n if (disposed) return false;\n return updateFlythroughMovement(frame);\n }\n\n function updateFlythroughMovement(frame: BabylonSceneViewCameraFrame): boolean {\n const inputState = input.getState();\n if (inputState.navigationMode !== 'flythrough' || inputState.pressedMovementKeys.length === 0) {\n return false;\n }\n const pressed = inputState.pressedMovementKeys;\n const speed = inputState.flySpeed;\n const step = speed * frame.deltaSeconds * 4;\n if (step <= 0) return false;\n const forward = getCameraForward();\n const right = getCameraRight();\n if (!forward || !right) return false;\n const up = { x: 0, y: 1, z: 0 };\n let move = { x: 0, y: 0, z: 0 };\n for (const key of pressed) {\n if (key === 'w') move = addVec3(move, forward);\n else if (key === 's') move = subtractVec3(move, forward);\n else if (key === 'd') move = addVec3(move, right);\n else if (key === 'a') move = subtractVec3(move, right);\n else if (key === 'e') move = addVec3(move, up);\n else if (key === 'q') move = subtractVec3(move, up);\n }\n const normalized = normalizeVec3(move);\n if (!normalized) return false;\n translateCamera(scaleVec3(normalized, step));\n return true;\n }\n\n function orbitCamera(dx: number, dy: number): void {\n if (Number.isFinite(camera.alpha) && Number.isFinite(camera.beta)) {\n camera.alpha -= dx * orbitSensitivity;\n camera.beta = clamp(camera.beta + dy * orbitSensitivity, 0.01, Math.PI - 0.01);\n return;\n }\n if (camera.rotation) {\n camera.rotation.y -= dx * orbitSensitivity;\n camera.rotation.x = clamp(camera.rotation.x + dy * orbitSensitivity, -Math.PI / 2 + 0.01, Math.PI / 2 - 0.01);\n }\n }\n\n function lookCamera(dx: number, dy: number): void {\n if (Number.isFinite(camera.alpha) && Number.isFinite(camera.beta)) {\n const position = readVec3(camera.position);\n camera.alpha += dx * orbitSensitivity;\n camera.beta = clamp(camera.beta - dy * orbitSensitivity, 0.01, Math.PI - 0.01);\n keepArcRotatePosition(position);\n return;\n }\n if (camera.rotation) {\n camera.rotation.y -= dx * orbitSensitivity;\n camera.rotation.x = clamp(camera.rotation.x - dy * orbitSensitivity, -Math.PI / 2 + 0.01, Math.PI / 2 - 0.01);\n }\n }\n\n function panCamera(dx: number, dy: number): void {\n const right = getCameraRight();\n const up = getCameraUp();\n if (!right || !up) return;\n const radiusScale = Number.isFinite(camera.radius) ? Math.max(Number(camera.radius), 1) : 8;\n const scale = radiusScale * panSensitivity;\n const delta = addVec3(\n scaleVec3(right, -dx * scale),\n scaleVec3(up, dy * scale),\n );\n translateCamera(delta);\n }\n\n function dollyCamera(deltaY: number): void {\n if (Number.isFinite(camera.radius)) {\n const factor = 1 + deltaY * dollySensitivity;\n camera.radius = clamp(Number(camera.radius) * Math.max(0.05, factor), MIN_CAMERA_RADIUS, MAX_CAMERA_RADIUS);\n if (readProjectionMode() === 'orthographic') updateOrthoExtents(resolveOrthoSize());\n return;\n }\n const forward = getCameraForward();\n if (!forward) return;\n translateCamera(scaleVec3(forward, -deltaY * 0.01));\n }\n\n function keepArcRotatePosition(position: Vec3): void {\n if (!camera.target || !Vector3) return;\n const radius = Number(camera.radius);\n const alpha = Number(camera.alpha);\n const beta = Number(camera.beta);\n if (!Number.isFinite(radius) || !Number.isFinite(alpha) || !Number.isFinite(beta)) return;\n const sinBeta = Math.sin(beta);\n const offset = {\n x: radius * Math.cos(alpha) * sinBeta,\n y: radius * Math.cos(beta),\n z: radius * Math.sin(alpha) * sinBeta,\n };\n camera.target = new Vector3(\n position.x - offset.x,\n position.y - offset.y,\n position.z - offset.z,\n );\n }\n\n function translateCamera(delta: Vec3): void {\n if (camera.target) {\n addInPlace(camera.target, delta);\n return;\n }\n if (camera.position) {\n addInPlace(camera.position, delta);\n }\n }\n\n function applyViewPresetAngles(\n preset: Exclude<EditorViewportViewPreset, 'perspective'>,\n presetOptions: BabylonSceneViewCameraPresetOptions,\n ): void {\n const target = presetOptions.target ?? readTarget() ?? { x: 0, y: 0, z: 0 };\n const angles = VIEW_PRESET_ANGLES[preset];\n const currentRadius = Number(camera.radius);\n const radius = clamp(\n presetOptions.radius\n ?? (Number.isFinite(currentRadius) ? currentRadius : lastPerspective?.radius ?? DEFAULT_ORTHO_RADIUS),\n MIN_CAMERA_RADIUS,\n MAX_CAMERA_RADIUS,\n );\n setCameraTarget(target);\n\n if (Number.isFinite(camera.alpha) && Number.isFinite(camera.beta)) {\n camera.alpha = angles.alpha;\n camera.beta = angles.beta;\n camera.radius = radius;\n } else if (camera.position && Vector3) {\n const offset = createSphericalOffset(angles.alpha, angles.beta, radius);\n camera.position = new Vector3(target.x + offset.x, target.y + offset.y, target.z + offset.z);\n camera.setTarget?.(new Vector3(target.x, target.y, target.z));\n }\n if (angles.projectionMode === 'orthographic') updateOrthoExtents(Math.max(radius * 0.5, DEFAULT_ORTHO_SIZE));\n }\n\n function applyPerspectivePreset(presetOptions: BabylonSceneViewCameraPresetOptions): void {\n const target = presetOptions.target ?? undefined;\n const radius = typeof presetOptions.radius === 'number' && Number.isFinite(presetOptions.radius)\n ? presetOptions.radius\n : undefined;\n if (target) setCameraTarget(target);\n if (radius !== undefined) camera.radius = clamp(radius, MIN_CAMERA_RADIUS, MAX_CAMERA_RADIUS);\n if (!target && radius === undefined) restorePerspective();\n }\n\n function restorePerspective(): void {\n const snapshot = lastPerspective;\n if (!snapshot) return;\n if (Number.isFinite(snapshot.alpha)) camera.alpha = snapshot.alpha;\n if (Number.isFinite(snapshot.beta)) camera.beta = snapshot.beta;\n if (Number.isFinite(snapshot.radius)) camera.radius = snapshot.radius;\n if (snapshot.target && Vector3) {\n if (camera.target) camera.target = new Vector3(snapshot.target.x, snapshot.target.y, snapshot.target.z);\n else camera.setTarget?.(new Vector3(snapshot.target.x, snapshot.target.y, snapshot.target.z));\n }\n }\n\n function readProjectionMode(): EditorViewportProjectionMode {\n const Camera = options.babylon.Camera;\n const orthoMode = Camera?.ORTHOGRAPHIC_CAMERA ?? 1;\n return camera.mode === orthoMode ? 'orthographic' : 'perspective';\n }\n\n function setCameraTarget(target: Vec3): void {\n if (camera.target && Vector3) camera.target = new Vector3(target.x, target.y, target.z);\n else if (camera.setTarget && Vector3) camera.setTarget(new Vector3(target.x, target.y, target.z));\n }\n\n function readTarget(): Vec3 | null {\n if (camera.target) return readVec3(camera.target);\n const target = camera.getTarget?.();\n return target ? readVec3(target) : null;\n }\n\n function readCameraPosition(target: Vec3 | null): Vec3 | null {\n const radius = Number(camera.radius);\n const alpha = Number(camera.alpha);\n const beta = Number(camera.beta);\n if (target && Number.isFinite(radius) && Number.isFinite(alpha) && Number.isFinite(beta)) {\n const offset = createSphericalOffset(alpha, beta, radius);\n return {\n x: target.x + offset.x,\n y: target.y + offset.y,\n z: target.z + offset.z,\n };\n }\n return camera?.position ? readVec3(camera.position) : null;\n }\n\n function readPerspectiveSnapshot(): PerspectiveSnapshot | null {\n if (!camera) return null;\n return {\n alpha: Number.isFinite(camera.alpha) ? Number(camera.alpha) : undefined,\n beta: Number.isFinite(camera.beta) ? Number(camera.beta) : undefined,\n radius: Number.isFinite(camera.radius) ? Number(camera.radius) : undefined,\n target: readTarget() ?? undefined,\n };\n }\n\n function resolveOrthoSize(): number {\n const top = Number(camera.orthoTop);\n const bottom = Number(camera.orthoBottom);\n if (Number.isFinite(top) && Number.isFinite(bottom) && top !== bottom) {\n return Math.abs(top - bottom) / 2;\n }\n const radius = Number(camera.radius);\n return Number.isFinite(radius) ? Math.max(radius * 0.5, DEFAULT_ORTHO_SIZE) : DEFAULT_ORTHO_SIZE;\n }\n\n function updateOrthoExtents(halfHeight: number): void {\n const engine = scene?.getEngine?.();\n const width = Number(engine?.getRenderWidth?.() ?? engine?.getRenderingCanvas?.()?.width ?? 1);\n const height = Number(engine?.getRenderHeight?.() ?? engine?.getRenderingCanvas?.()?.height ?? 1);\n const aspect = height > 0 ? Math.max(0.0001, width / height) : 1;\n const size = Math.max(0.001, halfHeight);\n camera.orthoTop = size;\n camera.orthoBottom = -size;\n camera.orthoLeft = -size * aspect;\n camera.orthoRight = size * aspect;\n }\n\n function getCameraForward(): Vec3 | null {\n const forwardRayDirection = readVec3(camera?.getForwardRay?.()?.direction);\n if (isNonZeroVec3(forwardRayDirection)) return forwardRayDirection;\n const forwardZ = scene?.useRightHandedSystem ? -1 : 1;\n return getCameraDirection({ x: 0, y: 0, z: forwardZ });\n }\n\n function getCameraRight(): Vec3 | null {\n return getCameraDirection({ x: 1, y: 0, z: 0 });\n }\n\n function getCameraUp(): Vec3 | null {\n return getCameraDirection({ x: 0, y: 1, z: 0 });\n }\n\n function getCameraDirection(local: Vec3): Vec3 | null {\n if (!camera?.getDirection || !Vector3) return null;\n try {\n return readVec3(camera.getDirection(new Vector3(local.x, local.y, local.z)));\n } catch {\n return null;\n }\n }\n\n return {\n getState,\n setViewPreset,\n setProjectionMode,\n orbit,\n updateFrame,\n handlePointerIntentMove,\n handleWheel,\n dispose() {\n if (disposed) return;\n disposed = true;\n },\n };\n}\n\nfunction readVec3(value: any): Vec3 {\n return {\n x: Number(value?.x) || 0,\n y: Number(value?.y) || 0,\n z: Number(value?.z) || 0,\n };\n}\n\nfunction normalizeViewPreset(preset: EditorViewportViewPreset): EditorViewportViewPreset {\n return preset in VIEW_PRESET_ANGLES || preset === 'perspective' ? preset : 'perspective';\n}\n\nfunction createSphericalOffset(alpha: number, beta: number, radius: number): Vec3 {\n const sinBeta = Math.sin(beta);\n return {\n x: radius * Math.cos(alpha) * sinBeta,\n y: radius * Math.cos(beta),\n z: radius * Math.sin(alpha) * sinBeta,\n };\n}\n\nfunction degreesToRadians(value: number): number {\n return Number.isFinite(value) ? value * Math.PI / 180 : 0;\n}\n\nfunction isNonZeroVec3(value: Vec3): boolean {\n return Math.hypot(value.x, value.y, value.z) > 0.000001;\n}\n\nfunction addInPlace(target: any, delta: Vec3): void {\n if (target?.addInPlaceFromFloats) {\n target.addInPlaceFromFloats(delta.x, delta.y, delta.z);\n return;\n }\n target.x = (Number(target.x) || 0) + delta.x;\n target.y = (Number(target.y) || 0) + delta.y;\n target.z = (Number(target.z) || 0) + delta.z;\n}\n\nfunction addVec3(left: Vec3, right: Vec3): Vec3 {\n return { x: left.x + right.x, y: left.y + right.y, z: left.z + right.z };\n}\n\nfunction subtractVec3(left: Vec3, right: Vec3): Vec3 {\n return { x: left.x - right.x, y: left.y - right.y, z: left.z - right.z };\n}\n\nfunction scaleVec3(value: Vec3, scale: number): Vec3 {\n return { x: value.x * scale, y: value.y * scale, z: value.z * scale };\n}\n\nfunction normalizeVec3(value: Vec3): Vec3 | null {\n const length = Math.hypot(value.x, value.y, value.z);\n if (!Number.isFinite(length) || length <= 0.000001) return null;\n return scaleVec3(value, 1 / length);\n}\n\nfunction clamp(value: number, min: number, max: number): number {\n return Math.min(max, Math.max(min, value));\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scene-view-input-controller.js","sourceRoot":"","sources":["../src/scene-view-input-controller.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scene-view-input-controller.js","sourceRoot":"","sources":["../src/scene-view-input-controller.ts"],"names":[],"mappings":"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","sourcesContent":["import type {\n SceneViewInputModifiers,\n SceneViewInputState,\n SceneViewNavigationMode,\n SceneViewPointerButton,\n SceneViewPointerIntent,\n SceneViewPointerState,\n} from '@fps-games/editor-core';\n\nexport interface BabylonSceneViewInputPointerEvent {\n state: SceneViewPointerState;\n originalEvent: PointerEvent;\n}\n\nexport interface BabylonSceneViewInputWheelEvent {\n deltaY: number;\n flySpeed: number;\n originalEvent: WheelEvent;\n}\n\nexport interface BabylonSceneViewInputKeyEvent {\n pressedMovementKeys: string[];\n originalEvent: KeyboardEvent;\n}\n\nexport interface BabylonSceneViewInputControllerOptions {\n canvas: HTMLCanvasElement;\n isEnabled?: () => boolean;\n isGizmoDragCandidate?: (event: PointerEvent) => boolean;\n isViewPlaneMoveCandidate?: (event: PointerEvent) => boolean;\n isPlacementCandidate?: (event: PointerEvent) => boolean;\n isMeasurementCandidate?: (event: PointerEvent) => boolean;\n isBoxSelectCandidate?: (event: PointerEvent) => boolean;\n boxSelectDragThresholdPx?: number;\n onPointerIntentStart?: (event: BabylonSceneViewInputPointerEvent) => void;\n onPointerIntentMove?: (event: BabylonSceneViewInputPointerEvent) => void;\n onPointerIntentEnd?: (event: BabylonSceneViewInputPointerEvent) => void;\n onPointerIntentCancel?: (event: BabylonSceneViewInputPointerEvent) => void;\n onDoubleClick?: (event: MouseEvent) => void;\n onWheel?: (event: BabylonSceneViewInputWheelEvent) => void;\n onMovementKeysChange?: (event: BabylonSceneViewInputKeyEvent) => void;\n}\n\nexport interface BabylonSceneViewInputController {\n getState(): SceneViewInputState;\n ownsKeyboardEvent(event: KeyboardEvent): boolean;\n cancelActiveIntent(): void;\n dispose(): void;\n}\n\nconst MOVEMENT_KEYS = new Set(['w', 'a', 's', 'd', 'q', 'e']);\nconst MOVEMENT_KEY_LIST = [...MOVEMENT_KEYS].sort();\nconst DEFAULT_FLY_SPEED = 1;\nconst MIN_FLY_SPEED = 0.1;\nconst MAX_FLY_SPEED = 20;\nconst DEFAULT_BOX_SELECT_DRAG_THRESHOLD_PX = 5;\n\ninterface ActivePointerState extends SceneViewPointerState {\n boxSelectCandidate: boolean;\n}\n\nexport function createBabylonSceneViewInputController(\n options: BabylonSceneViewInputControllerOptions,\n): BabylonSceneViewInputController {\n const canvas = options.canvas;\n const doc = canvas.ownerDocument;\n const win = doc.defaultView ?? (typeof window !== 'undefined' ? window : null);\n let activePointer: ActivePointerState | null = null;\n let disposed = false;\n let flySpeed = DEFAULT_FLY_SPEED;\n let globalPointerListenersAttached = false;\n let flythroughKeyboardListenersAttached = false;\n const movementKeys = new Set<string>();\n const handledPointerEvents = new WeakSet<PointerEvent>();\n const handledKeyboardEvents = new WeakSet<KeyboardEvent>();\n const boxSelectDragThresholdPx = options.boxSelectDragThresholdPx ?? DEFAULT_BOX_SELECT_DRAG_THRESHOLD_PX;\n\n if (!canvas.hasAttribute('tabindex')) {\n canvas.tabIndex = 0;\n }\n\n function enabled(): boolean {\n return !disposed && (options.isEnabled?.() ?? true);\n }\n\n function makeState(): SceneViewInputState {\n return {\n activeIntent: activePointer?.intent ?? null,\n navigationMode: activePointer ? toNavigationMode(activePointer.intent) : 'none',\n activePointer: activePointer ? clonePointerState(activePointer) : null,\n keyboardCapture: makeKeyboardCaptureState(),\n pressedMovementKeys: [...movementKeys].sort(),\n flySpeed,\n };\n }\n\n function makeKeyboardCaptureState(): SceneViewInputState['keyboardCapture'] {\n if (activePointer?.intent !== 'flythrough') return null;\n return {\n owner: 'scene-view',\n intent: 'flythrough',\n keys: [...MOVEMENT_KEY_LIST],\n pressedKeys: [...movementKeys].sort(),\n };\n }\n\n function ownsKeyboardEvent(event: KeyboardEvent): boolean {\n if (!enabled() || activePointer?.intent !== 'flythrough') return false;\n if (event.metaKey || event.ctrlKey || event.altKey) return false;\n return MOVEMENT_KEYS.has(normalizeMovementKey(event));\n }\n\n function onPointerDown(event: PointerEvent): void {\n if (!enabled() || activePointer) return;\n const button = toPointerButton(event.button);\n if (!button) return;\n const intent = classifyPointerIntent(event, button, options);\n if (!intent) return;\n activePointer = {\n pointerId: event.pointerId,\n button,\n intent,\n start: { x: event.clientX, y: event.clientY },\n current: { x: event.clientX, y: event.clientY },\n delta: { x: 0, y: 0 },\n modifiers: readModifiers(event),\n boxSelectCandidate: button === 'left' && intent === 'selection-click' && (options.isBoxSelectCandidate?.(event) ?? false),\n };\n try { canvas.setPointerCapture(event.pointerId); } catch {}\n attachGlobalPointerListeners();\n if (intent === 'flythrough') {\n attachFlythroughKeyboardListeners();\n canvas.focus?.({ preventScroll: true });\n }\n consumePointerEvent(event, intent);\n options.onPointerIntentStart?.({ state: clonePointerState(activePointer), originalEvent: event });\n }\n\n function onPointerMove(event: PointerEvent): void {\n if (handledPointerEvents.has(event)) return;\n handledPointerEvents.add(event);\n if (!activePointer || event.pointerId !== activePointer.pointerId || disposed) return;\n activePointer.delta = {\n x: event.clientX - activePointer.current.x,\n y: event.clientY - activePointer.current.y,\n };\n activePointer.current = { x: event.clientX, y: event.clientY };\n activePointer.modifiers = readModifiers(event);\n if (\n activePointer.intent === 'selection-click'\n && activePointer.boxSelectCandidate\n && pointerDistance(activePointer.start.x, activePointer.start.y, activePointer.current.x, activePointer.current.y) >= boxSelectDragThresholdPx\n ) {\n activePointer.intent = 'box-select';\n }\n consumePointerEvent(event, activePointer.intent);\n options.onPointerIntentMove?.({ state: clonePointerState(activePointer), originalEvent: event });\n }\n\n function onPointerUp(event: PointerEvent): void {\n if (handledPointerEvents.has(event)) return;\n handledPointerEvents.add(event);\n if (!activePointer || event.pointerId !== activePointer.pointerId || disposed) return;\n const ended = clonePointerState(activePointer);\n releasePointer(event.pointerId);\n detachGlobalPointerListeners();\n if (ended.intent === 'flythrough') {\n detachFlythroughKeyboardListeners();\n clearMovementKeys(event);\n }\n activePointer = null;\n consumePointerEvent(event, ended.intent);\n options.onPointerIntentEnd?.({ state: ended, originalEvent: event });\n }\n\n function onPointerCancel(event: PointerEvent): void {\n if (handledPointerEvents.has(event)) return;\n handledPointerEvents.add(event);\n if (!activePointer || event.pointerId !== activePointer.pointerId || disposed) return;\n const canceled = clonePointerState(activePointer);\n releasePointer(event.pointerId);\n detachGlobalPointerListeners();\n if (canceled.intent === 'flythrough') {\n detachFlythroughKeyboardListeners();\n clearMovementKeys(event);\n }\n activePointer = null;\n options.onPointerIntentCancel?.({ state: canceled, originalEvent: event });\n }\n\n function onWheel(event: WheelEvent): void {\n if (!enabled()) return;\n if (activePointer?.intent === 'flythrough') {\n flySpeed = clamp(flySpeed + (-event.deltaY * 0.005), MIN_FLY_SPEED, MAX_FLY_SPEED);\n }\n event.preventDefault();\n options.onWheel?.({ deltaY: event.deltaY, flySpeed, originalEvent: event });\n }\n\n function onContextMenu(event: MouseEvent): void {\n if (!enabled()) return;\n event.preventDefault();\n }\n\n function onDoubleClick(event: MouseEvent): void {\n if (!enabled()) return;\n if (event.altKey || event.button !== 0) return;\n options.onDoubleClick?.(event);\n }\n\n function onKeyDown(event: KeyboardEvent): void {\n if (handledKeyboardEvents.has(event)) return;\n if (!ownsKeyboardEvent(event)) return;\n const key = normalizeMovementKey(event);\n handledKeyboardEvents.add(event);\n if (!movementKeys.has(key)) {\n movementKeys.add(key);\n options.onMovementKeysChange?.({ pressedMovementKeys: [...movementKeys].sort(), originalEvent: event });\n }\n consumeMovementKeyEvent(event);\n }\n\n function onKeyUp(event: KeyboardEvent): void {\n if (handledKeyboardEvents.has(event)) return;\n const key = normalizeMovementKey(event);\n if (!movementKeys.has(key)) return;\n handledKeyboardEvents.add(event);\n movementKeys.delete(key);\n options.onMovementKeysChange?.({ pressedMovementKeys: [...movementKeys].sort(), originalEvent: event });\n consumeMovementKeyEvent(event);\n }\n\n function onWindowBlur(event: Event): void {\n clearMovementKeys(event);\n }\n\n function releasePointer(pointerId: number): void {\n try {\n if (canvas.hasPointerCapture(pointerId)) canvas.releasePointerCapture(pointerId);\n } catch {}\n }\n\n function attachGlobalPointerListeners(): void {\n if (globalPointerListenersAttached || !win) return;\n win.addEventListener('pointermove', onPointerMove, true);\n win.addEventListener('pointerup', onPointerUp, true);\n win.addEventListener('pointercancel', onPointerCancel, true);\n globalPointerListenersAttached = true;\n }\n\n function detachGlobalPointerListeners(): void {\n if (!globalPointerListenersAttached || !win) return;\n win.removeEventListener('pointermove', onPointerMove, true);\n win.removeEventListener('pointerup', onPointerUp, true);\n win.removeEventListener('pointercancel', onPointerCancel, true);\n globalPointerListenersAttached = false;\n }\n\n function attachFlythroughKeyboardListeners(): void {\n if (flythroughKeyboardListenersAttached) return;\n doc.addEventListener('keydown', onKeyDown, true);\n doc.addEventListener('keyup', onKeyUp, true);\n win?.addEventListener('keydown', onKeyDown, true);\n win?.addEventListener('keyup', onKeyUp, true);\n win?.addEventListener('blur', onWindowBlur, true);\n flythroughKeyboardListenersAttached = true;\n }\n\n function detachFlythroughKeyboardListeners(): void {\n if (!flythroughKeyboardListenersAttached) return;\n doc.removeEventListener('keydown', onKeyDown, true);\n doc.removeEventListener('keyup', onKeyUp, true);\n win?.removeEventListener('keydown', onKeyDown, true);\n win?.removeEventListener('keyup', onKeyUp, true);\n win?.removeEventListener('blur', onWindowBlur, true);\n flythroughKeyboardListenersAttached = false;\n }\n\n function clearMovementKeys(originalEvent: Event): void {\n if (movementKeys.size === 0) return;\n movementKeys.clear();\n options.onMovementKeysChange?.({\n pressedMovementKeys: [],\n originalEvent: originalEvent as KeyboardEvent,\n });\n }\n\n canvas.addEventListener('pointerdown', onPointerDown, { capture: true });\n canvas.addEventListener('pointermove', onPointerMove, { capture: true });\n canvas.addEventListener('pointerup', onPointerUp, { capture: true });\n canvas.addEventListener('pointercancel', onPointerCancel, { capture: true });\n canvas.addEventListener('wheel', onWheel, { capture: true, passive: false });\n canvas.addEventListener('contextmenu', onContextMenu, { capture: true });\n canvas.addEventListener('dblclick', onDoubleClick, { capture: true });\n canvas.addEventListener('keydown', onKeyDown, { capture: true });\n canvas.addEventListener('keyup', onKeyUp, { capture: true });\n\n return {\n getState: makeState,\n ownsKeyboardEvent,\n cancelActiveIntent() {\n const current = activePointer;\n if (!current) return;\n releasePointer(current.pointerId);\n detachGlobalPointerListeners();\n if (current.intent === 'flythrough') {\n detachFlythroughKeyboardListeners();\n clearMovementKeys(new Event('blur'));\n }\n activePointer = null;\n options.onPointerIntentCancel?.({\n state: clonePointerState(current),\n originalEvent: new PointerEvent('pointercancel', { pointerId: current.pointerId }),\n });\n },\n dispose() {\n if (disposed) return;\n disposed = true;\n detachGlobalPointerListeners();\n detachFlythroughKeyboardListeners();\n activePointer = null;\n clearMovementKeys(new Event('blur'));\n canvas.removeEventListener('pointerdown', onPointerDown, { capture: true });\n canvas.removeEventListener('pointermove', onPointerMove, { capture: true });\n canvas.removeEventListener('pointerup', onPointerUp, { capture: true });\n canvas.removeEventListener('pointercancel', onPointerCancel, { capture: true });\n canvas.removeEventListener('wheel', onWheel, { capture: true });\n canvas.removeEventListener('contextmenu', onContextMenu, { capture: true });\n canvas.removeEventListener('dblclick', onDoubleClick, { capture: true });\n canvas.removeEventListener('keydown', onKeyDown, { capture: true });\n canvas.removeEventListener('keyup', onKeyUp, { capture: true });\n },\n };\n}\n\nfunction classifyPointerIntent(\n event: PointerEvent,\n button: SceneViewPointerButton,\n options: BabylonSceneViewInputControllerOptions,\n): SceneViewPointerIntent | null {\n if (event.altKey && button === 'left') return 'orbit';\n if (event.altKey && button === 'middle') return 'pan';\n if (event.altKey && button === 'right') return 'dolly';\n if (button === 'right') return 'flythrough';\n if (button === 'middle') return 'pan';\n if (button === 'left' && options.isMeasurementCandidate?.(event)) return 'measurement';\n if (options.isGizmoDragCandidate?.(event)) return 'gizmo-drag';\n if (options.isViewPlaneMoveCandidate?.(event)) return 'view-plane-move';\n if (button === 'left' && options.isPlacementCandidate?.(event)) return 'placement';\n if (button === 'left') return 'selection-click';\n return null;\n}\n\nfunction toPointerButton(button: number): SceneViewPointerButton | null {\n if (button === 0) return 'left';\n if (button === 1) return 'middle';\n if (button === 2) return 'right';\n return null;\n}\n\nfunction readModifiers(event: PointerEvent | KeyboardEvent): SceneViewInputModifiers {\n return {\n alt: event.altKey,\n shift: event.shiftKey,\n ctrl: event.ctrlKey,\n meta: event.metaKey,\n };\n}\n\nfunction toNavigationMode(intent: SceneViewPointerIntent): SceneViewNavigationMode {\n if (intent === 'placement' || intent === 'measurement') return 'none';\n if (intent === 'orbit' || intent === 'pan' || intent === 'dolly' || intent === 'flythrough') return intent;\n return 'none';\n}\n\nfunction clonePointerState(state: SceneViewPointerState): SceneViewPointerState {\n return {\n ...state,\n start: { ...state.start },\n current: { ...state.current },\n delta: { ...state.delta },\n modifiers: { ...state.modifiers },\n };\n}\n\nfunction clamp(value: number, min: number, max: number): number {\n return Math.min(max, Math.max(min, value));\n}\n\nfunction pointerDistance(startX: number, startY: number, currentX: number, currentY: number): number {\n return Math.hypot(currentX - startX, currentY - startY);\n}\n\nfunction normalizeMovementKey(event: KeyboardEvent): string {\n const key = event.key?.toLowerCase() ?? '';\n if (MOVEMENT_KEYS.has(key)) return key;\n const code = event.code?.toLowerCase() ?? '';\n if (code.length === 4 && code.startsWith('key')) {\n const keyFromCode = code.slice(3);\n if (MOVEMENT_KEYS.has(keyFromCode)) return keyFromCode;\n }\n return key;\n}\n\nfunction consumePointerEvent(event: PointerEvent, intent: SceneViewPointerIntent): void {\n if (intent === 'selection-click' || intent === 'gizmo-drag') return;\n event.preventDefault();\n event.stopPropagation();\n}\n\nfunction consumeMovementKeyEvent(event: KeyboardEvent): void {\n event.preventDefault();\n event.stopPropagation();\n event.stopImmediatePropagation();\n}\n"]}
|
package/node_modules/@fps-games/editor-babylon/dist/scene-view-measurement-controller.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scene-view-measurement-controller.js","sourceRoot":"","sources":["../src/scene-view-measurement-controller.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scene-view-measurement-controller.js","sourceRoot":"","sources":["../src/scene-view-measurement-controller.ts"],"names":[],"mappings":"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","sourcesContent":["import type {\n EditorTransformVec3,\n EditorViewportGroundMeasurement,\n EditorViewportScreenPoint,\n} from '@fps-games/editor-core';\nimport type {\n BabylonRuntimeGlobal,\n RuntimeScene,\n} from './types';\n\nexport interface BabylonSceneViewMeasurementControllerOptions {\n babylon: BabylonRuntimeGlobal;\n scene: RuntimeScene;\n}\n\nexport interface BabylonSceneViewMeasurementController {\n beginAt(clientX: number, clientY: number): EditorViewportGroundMeasurement | null;\n previewAt(clientX: number, clientY: number): EditorViewportGroundMeasurement | null;\n completeAt(clientX: number, clientY: number): EditorViewportGroundMeasurement | null;\n clear(): EditorViewportGroundMeasurement;\n getState(): EditorViewportGroundMeasurement;\n dispose(): void;\n}\n\nexport function createBabylonSceneViewMeasurementController(\n options: BabylonSceneViewMeasurementControllerOptions,\n): BabylonSceneViewMeasurementController {\n let disposed = false;\n let state = createEmptyMeasurementState();\n\n function beginAt(clientX: number, clientY: number): EditorViewportGroundMeasurement | null {\n if (disposed) return null;\n const point = pickGroundPoint(options, clientX, clientY);\n if (!point) return null;\n state = projectMeasurementState(options, {\n active: true,\n start: point,\n end: null,\n preview: point,\n distance: null,\n });\n return cloneMeasurement(state);\n }\n\n function previewAt(clientX: number, clientY: number): EditorViewportGroundMeasurement | null {\n if (disposed || !state.active || !state.start || state.end) return null;\n const point = pickGroundPoint(options, clientX, clientY);\n if (!point) return null;\n state = projectMeasurementState(options, {\n active: true,\n start: state.start,\n end: null,\n preview: point,\n distance: distanceXZ(state.start, point),\n });\n return cloneMeasurement(state);\n }\n\n function completeAt(clientX: number, clientY: number): EditorViewportGroundMeasurement | null {\n if (disposed || !state.active || !state.start) return null;\n const point = pickGroundPoint(options, clientX, clientY);\n if (!point) return null;\n state = projectMeasurementState(options, {\n active: false,\n start: state.start,\n end: point,\n preview: null,\n distance: distanceXZ(state.start, point),\n });\n return cloneMeasurement(state);\n }\n\n function clear(): EditorViewportGroundMeasurement {\n state = createEmptyMeasurementState();\n return cloneMeasurement(state);\n }\n\n return {\n beginAt,\n previewAt,\n completeAt,\n clear,\n getState: () => {\n state = projectMeasurementState(options, state);\n return cloneMeasurement(state);\n },\n dispose() {\n disposed = true;\n state = createEmptyMeasurementState();\n },\n };\n}\n\nexport function createEmptyMeasurementState(): EditorViewportGroundMeasurement {\n return {\n active: false,\n start: null,\n end: null,\n preview: null,\n distance: null,\n screenStart: null,\n screenEnd: null,\n screenPreview: null,\n label: null,\n };\n}\n\nexport function pickGroundPoint(\n options: BabylonSceneViewMeasurementControllerOptions,\n clientX: number,\n clientY: number,\n): EditorTransformVec3 | null {\n const scene = options.scene;\n const Matrix = (options.babylon as any).Matrix;\n const camera = scene.activeCamera ?? (scene as any).cameraToUseForPointers ?? null;\n const canvas = scene.getEngine?.().getRenderingCanvas?.() as HTMLCanvasElement | null | undefined;\n if (!canvas || !camera || !Matrix?.Identity || typeof scene.createPickingRay !== 'function') return null;\n const rect = canvas.getBoundingClientRect();\n const renderWidth = Math.max(1, Number(scene.getEngine?.().getRenderWidth?.() ?? canvas.width ?? rect.width));\n const renderHeight = Math.max(1, Number(scene.getEngine?.().getRenderHeight?.() ?? canvas.height ?? rect.height));\n const renderX = (clientX - rect.left) * (renderWidth / Math.max(1, rect.width));\n const renderY = (clientY - rect.top) * (renderHeight / Math.max(1, rect.height));\n const ray = scene.createPickingRay(renderX, renderY, Matrix.Identity(), camera);\n const origin = readVec3(ray?.origin);\n const direction = readVec3(ray?.direction);\n if (!origin || !direction || Math.abs(direction.y) < 0.000001) return null;\n const t = -origin.y / direction.y;\n if (!Number.isFinite(t) || t < 0) return null;\n return addVec3(origin, scaleVec3(direction, t));\n}\n\nexport function projectMeasurementState(\n options: BabylonSceneViewMeasurementControllerOptions,\n measurement: EditorViewportGroundMeasurement,\n): EditorViewportGroundMeasurement {\n const start = measurement.start ? { ...measurement.start } : null;\n const end = measurement.end ? { ...measurement.end } : null;\n const preview = measurement.preview ? { ...measurement.preview } : null;\n const screenStart = start ? projectWorldPoint(options, start) : null;\n const screenEnd = end ? projectWorldPoint(options, end) : null;\n const screenPreview = preview ? projectWorldPoint(options, preview) : null;\n const labelEnd = screenEnd ?? screenPreview;\n const distance = measurement.distance ?? (start && (end ?? preview) ? distanceXZ(start, end ?? preview!) : null);\n return {\n active: measurement.active,\n start,\n end,\n preview,\n distance,\n screenStart,\n screenEnd,\n screenPreview,\n label: screenStart && labelEnd && distance != null\n ? {\n text: `${formatMeasurementDistance(distance)} m`,\n x: (screenStart.x + labelEnd.x) / 2,\n y: (screenStart.y + labelEnd.y) / 2 - 14,\n }\n : null,\n };\n}\n\nexport function formatMeasurementDistance(value: number): string {\n if (!Number.isFinite(value)) return '0';\n const rounded = Math.abs(value) < 0.005 ? 0 : value;\n return rounded.toFixed(2).replace(/\\.?0+$/, '');\n}\n\nfunction projectWorldPoint(\n options: BabylonSceneViewMeasurementControllerOptions,\n point: EditorTransformVec3,\n): EditorViewportScreenPoint | null {\n const Vector3 = options.babylon.Vector3 as any;\n const Matrix = (options.babylon as any).Matrix;\n const scene = options.scene;\n const camera = scene.activeCamera ?? (scene as any).cameraToUseForPointers ?? null;\n const canvas = scene.getEngine?.().getRenderingCanvas?.() as HTMLCanvasElement | null | undefined;\n const viewport = camera?.viewport?.toGlobal?.(\n scene.getEngine?.().getRenderWidth?.() ?? canvas?.width ?? 0,\n scene.getEngine?.().getRenderHeight?.() ?? canvas?.height ?? 0,\n );\n const transformMatrix = scene.getTransformMatrix?.();\n if (!Vector3?.Project || !Matrix?.Identity || !camera || !canvas || !viewport || !transformMatrix) return null;\n const rect = canvas.getBoundingClientRect();\n const renderWidth = Math.max(1, Number(scene.getEngine?.().getRenderWidth?.() ?? canvas.width ?? rect.width));\n const renderHeight = Math.max(1, Number(scene.getEngine?.().getRenderHeight?.() ?? canvas.height ?? rect.height));\n const projected = Vector3.Project(\n new Vector3(point.x, point.y, point.z),\n Matrix.Identity(),\n transformMatrix,\n viewport,\n );\n const x = rect.left + Number(projected?.x) * (rect.width / renderWidth);\n const y = rect.top + Number(projected?.y) * (rect.height / renderHeight);\n const depth = Number(projected?.z);\n if (!Number.isFinite(x) || !Number.isFinite(y) || !Number.isFinite(depth)) return null;\n return { x, y, depth };\n}\n\nfunction cloneMeasurement(measurement: EditorViewportGroundMeasurement): EditorViewportGroundMeasurement {\n return {\n active: measurement.active,\n start: measurement.start ? { ...measurement.start } : null,\n end: measurement.end ? { ...measurement.end } : null,\n preview: measurement.preview ? { ...measurement.preview } : null,\n distance: measurement.distance,\n screenStart: measurement.screenStart ? { ...measurement.screenStart } : null,\n screenEnd: measurement.screenEnd ? { ...measurement.screenEnd } : null,\n screenPreview: measurement.screenPreview ? { ...measurement.screenPreview } : null,\n label: measurement.label ? { ...measurement.label } : null,\n };\n}\n\nfunction readVec3(value: any): EditorTransformVec3 | null {\n if (!value) return null;\n const x = Number(value.x);\n const y = Number(value.y);\n const z = Number(value.z);\n return Number.isFinite(x) && Number.isFinite(y) && Number.isFinite(z) ? { x, y, z } : null;\n}\n\nfunction addVec3(left: EditorTransformVec3, right: EditorTransformVec3): EditorTransformVec3 {\n return { x: left.x + right.x, y: left.y + right.y, z: left.z + right.z };\n}\n\nfunction scaleVec3(value: EditorTransformVec3, factor: number): EditorTransformVec3 {\n return { x: value.x * factor, y: value.y * factor, z: value.z * factor };\n}\n\nfunction distanceXZ(left: EditorTransformVec3, right: EditorTransformVec3): number {\n return Math.hypot(right.x - left.x, right.z - left.z);\n}\n"]}
|
package/node_modules/@fps-games/editor-babylon/dist/scene-view-spatial-overlay-controller.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scene-view-spatial-overlay-controller.js","sourceRoot":"","sources":["../src/scene-view-spatial-overlay-controller.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scene-view-spatial-overlay-controller.js","sourceRoot":"","sources":["../src/scene-view-spatial-overlay-controller.ts"],"names":[],"mappings":"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","sourcesContent":["import type {\n EditorTransformVec3,\n EditorViewportBounds,\n EditorViewportOverlaySettings,\n EditorViewportSpatialOverlayLabel,\n EditorViewportSpatialOverlayLine,\n EditorViewportSpatialOverlayMarker,\n EditorViewportSpatialOverlayState,\n} from '@fps-games/editor-core';\nimport {\n createEmptyEditorViewportSpatialOverlayState,\n} from '@fps-games/editor-core';\nimport type {\n BabylonRuntimeGlobal,\n RuntimeScene,\n} from './types';\n\nexport interface BabylonSceneViewSpatialOverlayControllerOptions {\n babylon: BabylonRuntimeGlobal;\n scene: RuntimeScene;\n}\n\nexport interface BabylonSceneViewSpatialOverlayInput {\n nodeId: string | null;\n bounds: EditorViewportBounds | null;\n anchor: EditorTransformVec3 | null;\n settings: EditorViewportOverlaySettings;\n}\n\nexport interface BabylonSceneViewSpatialOverlayController {\n compute(input: BabylonSceneViewSpatialOverlayInput): EditorViewportSpatialOverlayState;\n dispose(): void;\n}\n\ninterface ProjectedCorner {\n key: BoundsCornerKey;\n world: EditorTransformVec3;\n screen: ProjectedPoint;\n}\n\ninterface ProjectedPoint {\n x: number;\n y: number;\n depth: number;\n}\n\ntype BoundsCornerKey =\n | 'min-min-min'\n | 'max-min-min'\n | 'min-max-min'\n | 'max-max-min'\n | 'min-min-max'\n | 'max-min-max'\n | 'min-max-max'\n | 'max-max-max';\n\ninterface BoundsEdge {\n id: string;\n axis: 'x' | 'y' | 'z';\n start: BoundsCornerKey;\n end: BoundsCornerKey;\n}\n\nconst MIN_LABEL_EDGE_LENGTH_PX = 34;\n\nconst BOUNDS_EDGES = [\n { id: 'x-y0-z0', axis: 'x', start: 'min-min-min', end: 'max-min-min' },\n { id: 'x-y1-z0', axis: 'x', start: 'min-max-min', end: 'max-max-min' },\n { id: 'x-y0-z1', axis: 'x', start: 'min-min-max', end: 'max-min-max' },\n { id: 'x-y1-z1', axis: 'x', start: 'min-max-max', end: 'max-max-max' },\n { id: 'y-x0-z0', axis: 'y', start: 'min-min-min', end: 'min-max-min' },\n { id: 'y-x1-z0', axis: 'y', start: 'max-min-min', end: 'max-max-min' },\n { id: 'y-x0-z1', axis: 'y', start: 'min-min-max', end: 'min-max-max' },\n { id: 'y-x1-z1', axis: 'y', start: 'max-min-max', end: 'max-max-max' },\n { id: 'z-x0-y0', axis: 'z', start: 'min-min-min', end: 'min-min-max' },\n { id: 'z-x1-y0', axis: 'z', start: 'max-min-min', end: 'max-min-max' },\n { id: 'z-x0-y1', axis: 'z', start: 'min-max-min', end: 'min-max-max' },\n { id: 'z-x1-y1', axis: 'z', start: 'max-max-min', end: 'max-max-max' },\n] as const satisfies readonly BoundsEdge[];\n\nconst DIMENSION_EDGES = [\n BOUNDS_EDGES[0],\n BOUNDS_EDGES[4],\n BOUNDS_EDGES[8],\n] as const satisfies readonly BoundsEdge[];\n\nexport function createBabylonSceneViewSpatialOverlayController(\n options: BabylonSceneViewSpatialOverlayControllerOptions,\n): BabylonSceneViewSpatialOverlayController {\n let disposed = false;\n\n return {\n compute(input) {\n if (disposed) return createEmptyEditorViewportSpatialOverlayState();\n return createEditorViewportSpatialOverlayState(options, input);\n },\n dispose() {\n disposed = true;\n },\n };\n}\n\nexport function createEditorViewportSpatialOverlayState(\n options: BabylonSceneViewSpatialOverlayControllerOptions,\n input: BabylonSceneViewSpatialOverlayInput,\n): EditorViewportSpatialOverlayState {\n if (!input.nodeId || !input.bounds) return createEmptyEditorViewportSpatialOverlayState();\n const projectedCorners = projectBoundsCorners(options, input.bounds);\n if (!projectedCorners) return createEmptyEditorViewportSpatialOverlayState();\n const cornerMap = new Map(projectedCorners.map(corner => [corner.key, corner]));\n const lines: EditorViewportSpatialOverlayLine[] = [];\n const labels: EditorViewportSpatialOverlayLabel[] = [];\n\n if (input.settings.bounds) {\n for (const edge of BOUNDS_EDGES) {\n const line = createOverlayLine(edge, cornerMap);\n if (line) lines.push(line);\n }\n }\n\n if (input.settings.dimensions) {\n for (const edge of DIMENSION_EDGES) {\n const label = createEdgeLabel(edge, cornerMap, input.bounds, 'dimension');\n if (label) labels.push(label);\n }\n }\n\n if (input.settings.edgeLengths) {\n for (const edge of BOUNDS_EDGES) {\n const label = createEdgeLabel(edge, cornerMap, input.bounds, 'edge-length');\n if (label) labels.push(label);\n }\n }\n\n const markers: EditorViewportSpatialOverlayMarker[] = [];\n if (input.settings.anchor && input.anchor) {\n const anchor = projectWorldPoint(options, input.anchor);\n if (anchor) {\n const label = `Anchor ${formatVec3(input.anchor)}`;\n markers.push({\n id: 'anchor',\n kind: 'anchor',\n position: anchor,\n label,\n });\n labels.push({\n id: 'anchor-label',\n kind: 'anchor',\n text: label,\n x: anchor.x,\n y: anchor.y - 18,\n });\n }\n }\n\n return {\n active: lines.length > 0 || labels.length > 0 || markers.length > 0,\n nodeId: input.nodeId,\n bounds: cloneBounds(input.bounds),\n anchor: input.anchor ? { ...input.anchor } : null,\n lines,\n labels,\n markers,\n };\n}\n\nfunction projectBoundsCorners(\n options: BabylonSceneViewSpatialOverlayControllerOptions,\n bounds: EditorViewportBounds,\n): ProjectedCorner[] | null {\n const corners: Array<[BoundsCornerKey, EditorTransformVec3]> = [\n ['min-min-min', { x: bounds.min.x, y: bounds.min.y, z: bounds.min.z }],\n ['max-min-min', { x: bounds.max.x, y: bounds.min.y, z: bounds.min.z }],\n ['min-max-min', { x: bounds.min.x, y: bounds.max.y, z: bounds.min.z }],\n ['max-max-min', { x: bounds.max.x, y: bounds.max.y, z: bounds.min.z }],\n ['min-min-max', { x: bounds.min.x, y: bounds.min.y, z: bounds.max.z }],\n ['max-min-max', { x: bounds.max.x, y: bounds.min.y, z: bounds.max.z }],\n ['min-max-max', { x: bounds.min.x, y: bounds.max.y, z: bounds.max.z }],\n ['max-max-max', { x: bounds.max.x, y: bounds.max.y, z: bounds.max.z }],\n ];\n const projected: ProjectedCorner[] = [];\n for (const [key, world] of corners) {\n const screen = projectWorldPoint(options, world);\n if (!screen) return null;\n projected.push({ key, world, screen });\n }\n return projected;\n}\n\nfunction projectWorldPoint(\n options: BabylonSceneViewSpatialOverlayControllerOptions,\n point: EditorTransformVec3,\n): ProjectedPoint | null {\n const Vector3 = options.babylon.Vector3 as any;\n const Matrix = (options.babylon as any).Matrix;\n const scene = options.scene;\n const camera = scene.activeCamera ?? (scene as any).cameraToUseForPointers ?? null;\n const canvas = scene.getEngine?.().getRenderingCanvas?.() as HTMLCanvasElement | null | undefined;\n const viewport = camera?.viewport?.toGlobal?.(\n scene.getEngine?.().getRenderWidth?.() ?? canvas?.width ?? 0,\n scene.getEngine?.().getRenderHeight?.() ?? canvas?.height ?? 0,\n );\n const transformMatrix = scene.getTransformMatrix?.();\n if (!Vector3?.Project || !Matrix?.Identity || !camera || !canvas || !viewport || !transformMatrix) return null;\n const canvasRect = canvas.getBoundingClientRect();\n const renderWidth = Math.max(1, Number(scene.getEngine?.().getRenderWidth?.() ?? canvas.width ?? canvasRect.width));\n const renderHeight = Math.max(1, Number(scene.getEngine?.().getRenderHeight?.() ?? canvas.height ?? canvasRect.height));\n const cssScaleX = canvasRect.width / renderWidth;\n const cssScaleY = canvasRect.height / renderHeight;\n const projected = Vector3.Project(\n new Vector3(point.x, point.y, point.z),\n Matrix.Identity(),\n transformMatrix,\n viewport,\n );\n const x = canvasRect.left + Number(projected?.x) * cssScaleX;\n const y = canvasRect.top + Number(projected?.y) * cssScaleY;\n const depth = Number(projected?.z);\n if (!Number.isFinite(x) || !Number.isFinite(y) || !Number.isFinite(depth)) return null;\n return { x, y, depth };\n}\n\nfunction createOverlayLine(\n edge: BoundsEdge,\n corners: Map<BoundsCornerKey, ProjectedCorner>,\n): EditorViewportSpatialOverlayLine | null {\n const start = corners.get(edge.start)?.screen;\n const end = corners.get(edge.end)?.screen;\n if (!start || !end) return null;\n return {\n id: edge.id,\n kind: 'bounds',\n start: { ...start },\n end: { ...end },\n };\n}\n\nfunction createEdgeLabel(\n edge: BoundsEdge,\n corners: Map<BoundsCornerKey, ProjectedCorner>,\n bounds: EditorViewportBounds,\n kind: 'dimension' | 'edge-length',\n): EditorViewportSpatialOverlayLabel | null {\n const start = corners.get(edge.start)?.screen;\n const end = corners.get(edge.end)?.screen;\n if (!start || !end) return null;\n const screenLength = Math.hypot(end.x - start.x, end.y - start.y);\n if (screenLength < MIN_LABEL_EDGE_LENGTH_PX) return null;\n return {\n id: `${kind}-${edge.id}`,\n kind,\n text: kind === 'dimension'\n ? `${edge.axis.toUpperCase()} ${formatNumber(bounds.size[edge.axis])}`\n : formatNumber(bounds.size[edge.axis]),\n x: (start.x + end.x) / 2,\n y: (start.y + end.y) / 2,\n };\n}\n\nfunction cloneBounds(bounds: EditorViewportBounds): EditorViewportBounds {\n return {\n min: { ...bounds.min },\n max: { ...bounds.max },\n center: { ...bounds.center },\n size: { ...bounds.size },\n };\n}\n\nexport function formatEditorViewportOverlayNumber(value: number): string {\n return formatNumber(value);\n}\n\nfunction formatVec3(value: EditorTransformVec3): string {\n return `(${formatNumber(value.x)}, ${formatNumber(value.y)}, ${formatNumber(value.z)})`;\n}\n\nfunction formatNumber(value: number): string {\n if (!Number.isFinite(value)) return '0';\n const rounded = Math.abs(value) < 0.005 ? 0 : value;\n return rounded.toFixed(2).replace(/\\.?0+$/, '');\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selection-controller.js","sourceRoot":"","sources":["../src/selection-controller.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"selection-controller.js","sourceRoot":"","sources":["../src/selection-controller.ts"],"names":[],"mappings":"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","sourcesContent":["import { createBrowserHost, type BrowserHost } from '@fps-games/editor-browser';\nimport type { SelectionController, SelectionSource } from '@fps-games/editor-protocol';\nimport type { RuntimeScene } from './types';\n\ntype SelectionMonitorLike = {\n isDragging?: boolean;\n};\n\ntype NormalizeSelectionResult = {\n normalizedEntity: unknown;\n hasPersistentBinding: boolean;\n};\n\ntype PendingSelectionContext =\n | {\n kind: 'viewport' | 'tree';\n token: number;\n createdAt: number;\n additive: boolean;\n }\n | null;\n\nexport interface EditorSelectionControllerOptions {\n host?: BrowserHost;\n getScene: () => RuntimeScene | null;\n getMonitor?: () => SelectionMonitorLike | null;\n shouldHandleViewportSelection?: () => boolean;\n normalizeSelection: (args: {\n source: SelectionSource;\n rawEntity: unknown;\n }) => NormalizeSelectionResult;\n onSelectionCommitted: (entity: unknown | null) => void;\n externalSelectionRootSelector?: string;\n externalSelectionInteractiveSelector?: string;\n setExternalPickingState?: (enabled: boolean) => boolean | void;\n}\n\ntype SelectionTrackingCtx = {\n onPointerDown: (event: PointerEvent) => void;\n};\n\nconst PENDING_SELECTION_CONTEXT_TTL_MS = 1000;\n\nfunction getNodeIdentity(node: any): string | null {\n if (!node || typeof node !== 'object') return null;\n if (typeof node.uniqueId === 'number' && Number.isFinite(node.uniqueId)) return `uid:${node.uniqueId}`;\n if (typeof node.id === 'string' && node.id.trim()) return `id:${node.id.trim()}`;\n return null;\n}\n\nfunction getNodeParentIdentity(node: any): string | null {\n const parent = node?.parent ?? null;\n if (!parent) return 'root';\n if (typeof parent.uniqueId === 'number' && Number.isFinite(parent.uniqueId)) return `uid:${parent.uniqueId}`;\n if (typeof parent.id === 'string' && parent.id.trim()) return `id:${parent.id.trim()}`;\n if (typeof parent.name === 'string' && parent.name.trim()) return `name:${parent.name.trim()}`;\n return null;\n}\n\nfunction collectHighlightMeshesFromNode(node: any): any[] {\n if (!node) return [];\n const result: any[] = [];\n if ('showBoundingBox' in node) result.push(node);\n const children = typeof node.getChildMeshes === 'function' ? node.getChildMeshes(false) : [];\n for (const mesh of children) {\n if (mesh && 'showBoundingBox' in mesh) result.push(mesh);\n }\n return result;\n}\n\nfunction isHostHTMLElement(target: EventTarget | null, win: Window): target is HTMLElement {\n const ElementCtor = (win as Window & typeof globalThis).HTMLElement ?? HTMLElement;\n return typeof ElementCtor === 'function' && target instanceof ElementCtor;\n}\n\nexport function createEditorSelectionController(options: EditorSelectionControllerOptions): SelectionController {\n const host = options.host ?? createBrowserHost();\n let externalSelectionService: any = null;\n let selectedEntity: unknown | null = null;\n let selectedEntities: unknown[] = [];\n let highlightedMeshes = new Map<any, { showBoundingBox: boolean }>();\n let normalizingSelection = false;\n let selectionTrackingCtx: SelectionTrackingCtx | null = null;\n let pendingSelectionContext: PendingSelectionContext = null;\n let nextSelectionToken = 1;\n\n function clearSelectionHighlight(): void {\n for (const [mesh, state] of highlightedMeshes.entries()) {\n try {\n if (mesh && 'showBoundingBox' in mesh) mesh.showBoundingBox = state.showBoundingBox;\n } catch {}\n }\n highlightedMeshes = new Map();\n }\n\n function syncSelectionHighlight(): void {\n clearSelectionHighlight();\n const nextMeshes = new Map<any, { showBoundingBox: boolean }>();\n for (const entity of selectedEntities) {\n for (const mesh of collectHighlightMeshesFromNode(entity)) {\n try {\n const prevState = { showBoundingBox: !!mesh.showBoundingBox };\n mesh.showBoundingBox = true;\n nextMeshes.set(mesh, prevState);\n } catch {}\n }\n }\n highlightedMeshes = nextMeshes;\n }\n\n function createSelectionToken(): number {\n const token = nextSelectionToken;\n nextSelectionToken += 1;\n return token;\n }\n\n function setPendingSelectionContext(context: PendingSelectionContext): void {\n pendingSelectionContext = context;\n }\n\n function clearPendingSelectionContext(expectedToken?: number): void {\n if (expectedToken != null && pendingSelectionContext && pendingSelectionContext.token !== expectedToken) return;\n pendingSelectionContext = null;\n }\n\n function peekPendingSelectionContext(expectedToken?: number): PendingSelectionContext {\n const context = pendingSelectionContext;\n if (!context) return null;\n if (expectedToken != null && context.token !== expectedToken) return null;\n if (Date.now() - context.createdAt > PENDING_SELECTION_CONTEXT_TTL_MS) {\n clearPendingSelectionContext(context.token);\n return null;\n }\n return context;\n }\n\n function consumePendingSelectionContext(expectedToken?: number): PendingSelectionContext {\n const context = peekPendingSelectionContext(expectedToken);\n if (!context) return null;\n pendingSelectionContext = null;\n return context;\n }\n\n function commitSelection(\n entity: unknown,\n syncExternalSelection = true,\n selectionOptions?: { additive?: boolean; toggle?: boolean },\n ): void {\n const additive = !!selectionOptions?.additive;\n const toggle = selectionOptions?.toggle ?? additive;\n const nextEntity = entity ?? null;\n\n if (!additive || !nextEntity) {\n selectedEntity = nextEntity;\n selectedEntities = nextEntity ? [nextEntity] : [];\n } else {\n const identity = getNodeIdentity(nextEntity);\n if (!identity) {\n selectedEntity = nextEntity;\n selectedEntities = [nextEntity];\n } else {\n const nextParentIdentity = getNodeParentIdentity(nextEntity);\n const currentParentIdentity = selectedEntities.length > 0 ? getNodeParentIdentity(selectedEntities[0]) : null;\n if (\n selectedEntities.length > 0\n && currentParentIdentity != null\n && nextParentIdentity != null\n && currentParentIdentity !== nextParentIdentity\n ) {\n return;\n }\n\n const index = selectedEntities.findIndex(item => getNodeIdentity(item) === identity);\n if (index >= 0 && toggle) {\n const nextList = selectedEntities.slice();\n nextList.splice(index, 1);\n selectedEntities = nextList;\n if (selectedEntities.length === 0) {\n selectedEntity = null;\n } else if (getNodeIdentity(selectedEntity) === identity) {\n selectedEntity = selectedEntities[selectedEntities.length - 1] ?? null;\n }\n } else if (index < 0) {\n selectedEntities = [...selectedEntities, nextEntity];\n selectedEntity = nextEntity;\n } else {\n selectedEntity = nextEntity;\n }\n }\n }\n\n options.onSelectionCommitted(selectedEntity ?? null);\n syncSelectionHighlight();\n if (!syncExternalSelection || !externalSelectionService) return;\n if (externalSelectionService.selectedEntity === (selectedEntity ?? null)) return;\n if (normalizingSelection) return;\n normalizingSelection = true;\n try {\n externalSelectionService.selectedEntity = selectedEntity ?? null;\n } finally {\n queueMicrotask(() => {\n normalizingSelection = false;\n });\n }\n }\n\n function isWithinCanvasViewport(event: PointerEvent, canvas: HTMLCanvasElement): boolean {\n if (event.target === canvas) return true;\n const rect = canvas.getBoundingClientRect();\n return event.clientX >= rect.left\n && event.clientX <= rect.right\n && event.clientY >= rect.top\n && event.clientY <= rect.bottom;\n }\n\n return {\n createV2SelectionBridge(v2: any) {\n const SelectionServiceIdentity = v2?.SelectionServiceIdentity;\n if (!SelectionServiceIdentity) return null;\n return {\n friendlyName: 'Editor Selection Sync',\n consumes: [SelectionServiceIdentity],\n factory: (selectionService: any) => {\n externalSelectionService = selectionService;\n const selObs = selectionService.onSelectedEntityChanged?.add(() => {\n if (normalizingSelection) return;\n if (options.getMonitor?.()?.isDragging) return;\n\n let entity = selectionService.selectedEntity;\n const consumedContext = consumePendingSelectionContext();\n if (!consumedContext) {\n commitSelection(entity ?? null, false);\n return;\n }\n\n const normalized = options.normalizeSelection({\n source: consumedContext.kind,\n rawEntity: entity,\n });\n\n if (consumedContext.kind === 'viewport' && !normalized.hasPersistentBinding) return;\n if (!normalized.normalizedEntity) return;\n entity = normalized.normalizedEntity;\n commitSelection(entity ?? null, consumedContext.kind === 'viewport', {\n additive: consumedContext.additive,\n toggle: consumedContext.additive,\n });\n });\n\n return {\n dispose: () => {\n if (selObs) selectionService.onSelectedEntityChanged?.remove(selObs);\n if (externalSelectionService === selectionService) externalSelectionService = null;\n if (selectedEntity === selectionService.selectedEntity) selectedEntity = null;\n clearSelectionHighlight();\n selectedEntities = [];\n },\n };\n },\n };\n },\n\n bindSelectionSourceTracking(): void {\n this.unbindSelectionSourceTracking?.();\n const onPointerDown = (event: PointerEvent) => {\n const rawTarget = event.target as EventTarget | null;\n const target = isHostHTMLElement(rawTarget, host.window) ? rawTarget : null;\n const scene = options.getScene();\n const canvas = scene?.getEngine?.()?.getRenderingCanvas?.() ?? null;\n if (!target) return;\n\n if (canvas && isWithinCanvasViewport(event, canvas)) {\n const withinExternalRoot = options.externalSelectionRootSelector\n ? !!target.closest?.(options.externalSelectionRootSelector)\n : false;\n const isExternalInteractive = options.externalSelectionInteractiveSelector\n ? !!target.closest?.(options.externalSelectionInteractiveSelector)\n : false;\n if (!withinExternalRoot || !isExternalInteractive) {\n if (event.button !== 0 || !scene || !canvas) return;\n if (!(options.shouldHandleViewportSelection?.() ?? true)) return;\n setPendingSelectionContext({\n kind: 'viewport',\n token: createSelectionToken(),\n createdAt: Date.now(),\n additive: !!event.shiftKey,\n });\n return;\n }\n }\n\n if (options.externalSelectionRootSelector && target.closest?.(options.externalSelectionRootSelector)) {\n const isExternalInteractive = options.externalSelectionInteractiveSelector\n ? !!target.closest?.(options.externalSelectionInteractiveSelector)\n : true;\n if (isExternalInteractive) {\n setPendingSelectionContext({\n kind: 'tree',\n token: createSelectionToken(),\n createdAt: Date.now(),\n additive: !!event.shiftKey,\n });\n return;\n }\n clearPendingSelectionContext();\n }\n };\n\n host.document.addEventListener('pointerdown', onPointerDown, true);\n selectionTrackingCtx = { onPointerDown };\n },\n\n unbindSelectionSourceTracking(): void {\n if (!selectionTrackingCtx) return;\n host.document.removeEventListener('pointerdown', selectionTrackingCtx.onPointerDown, true);\n selectionTrackingCtx = null;\n pendingSelectionContext = null;\n },\n\n enablePicking(): void {\n options.setExternalPickingState?.(true);\n },\n\n reset(): void {\n this.unbindSelectionSourceTracking?.();\n normalizingSelection = false;\n externalSelectionService = null;\n selectedEntity = null;\n clearSelectionHighlight();\n selectedEntities = [];\n pendingSelectionContext = null;\n },\n\n getSelectedEntity(): unknown | null {\n return selectedEntity;\n },\n\n getSelectedEntities(): unknown[] {\n return [...selectedEntities];\n },\n\n selectEntity(entity: unknown | null, syncExternalSelection = true, selectionOptions?: { additive?: boolean; toggle?: boolean }): void {\n commitSelection(entity ?? null, syncExternalSelection, selectionOptions);\n },\n };\n}\n"]}
|