@fps-games/editor 0.2.1-beta.3 → 0.2.1-beta.4
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/build-info.json +44 -44
- package/dist/editor-commands/capabilities/assets.d.ts +8 -0
- package/dist/editor-commands/capabilities/assets.d.ts.map +1 -0
- package/dist/{agent-bridge → editor-commands}/capabilities/assets.js +41 -41
- package/dist/editor-commands/capabilities/assets.js.map +1 -0
- package/dist/editor-commands/capabilities/editor-state.d.ts +5 -0
- package/dist/editor-commands/capabilities/editor-state.d.ts.map +1 -0
- package/dist/{agent-bridge → editor-commands}/capabilities/editor-state.js +22 -22
- package/dist/editor-commands/capabilities/editor-state.js.map +1 -0
- package/dist/editor-commands/capabilities/hierarchy.d.ts +4 -0
- package/dist/editor-commands/capabilities/hierarchy.d.ts.map +1 -0
- package/dist/{agent-bridge → editor-commands}/capabilities/hierarchy.js +5 -5
- package/dist/editor-commands/capabilities/hierarchy.js.map +1 -0
- package/dist/editor-commands/capabilities/host-lifecycle.d.ts +11 -0
- package/dist/editor-commands/capabilities/host-lifecycle.d.ts.map +1 -0
- package/dist/editor-commands/capabilities/host-lifecycle.js +149 -0
- package/dist/editor-commands/capabilities/host-lifecycle.js.map +1 -0
- package/dist/editor-commands/capabilities/prefabs.d.ts +5 -0
- package/dist/editor-commands/capabilities/prefabs.d.ts.map +1 -0
- package/dist/{agent-bridge → editor-commands}/capabilities/prefabs.js +93 -93
- package/dist/editor-commands/capabilities/prefabs.js.map +1 -0
- package/dist/editor-commands/capabilities/scene-objects.d.ts +8 -0
- package/dist/editor-commands/capabilities/scene-objects.d.ts.map +1 -0
- package/dist/editor-commands/capabilities/scene-objects.js +480 -0
- package/dist/editor-commands/capabilities/scene-objects.js.map +1 -0
- package/dist/editor-commands/capabilities/selection.d.ts +5 -0
- package/dist/editor-commands/capabilities/selection.d.ts.map +1 -0
- package/dist/editor-commands/capabilities/selection.js +60 -0
- package/dist/editor-commands/capabilities/selection.js.map +1 -0
- package/dist/editor-commands/capabilities/shadows.d.ts +5 -0
- package/dist/editor-commands/capabilities/shadows.d.ts.map +1 -0
- package/dist/{agent-bridge → editor-commands}/capabilities/shadows.js +74 -74
- package/dist/editor-commands/capabilities/shadows.js.map +1 -0
- package/dist/editor-commands/capabilities/transform.d.ts +5 -0
- package/dist/editor-commands/capabilities/transform.d.ts.map +1 -0
- package/dist/editor-commands/capabilities/transform.js +164 -0
- package/dist/editor-commands/capabilities/transform.js.map +1 -0
- package/dist/editor-commands/capabilities/ui-regions.d.ts +4 -0
- package/dist/editor-commands/capabilities/ui-regions.d.ts.map +1 -0
- package/dist/{agent-bridge → editor-commands}/capabilities/ui-regions.js +55 -57
- package/dist/editor-commands/capabilities/ui-regions.js.map +1 -0
- package/dist/editor-commands/capabilities/viewport.d.ts +5 -0
- package/dist/editor-commands/capabilities/viewport.d.ts.map +1 -0
- package/dist/{agent-bridge → editor-commands}/capabilities/viewport.js +100 -100
- package/dist/editor-commands/capabilities/viewport.js.map +1 -0
- package/dist/editor-commands/command-sources.d.ts +7 -0
- package/dist/editor-commands/command-sources.d.ts.map +1 -0
- package/dist/editor-commands/command-sources.js +34 -0
- package/dist/editor-commands/command-sources.js.map +1 -0
- package/dist/editor-commands/diagnostics.d.ts +12 -0
- package/dist/editor-commands/diagnostics.d.ts.map +1 -0
- package/dist/{agent-bridge → editor-commands}/diagnostics.js +4 -4
- package/dist/editor-commands/diagnostics.js.map +1 -0
- package/dist/{agent-bridge → editor-commands}/index.d.ts +1 -1
- package/dist/editor-commands/index.d.ts.map +1 -0
- package/dist/{agent-bridge → editor-commands}/index.js +1 -1
- package/dist/editor-commands/index.js.map +1 -0
- package/dist/editor-commands/register.d.ts +4 -0
- package/dist/editor-commands/register.d.ts.map +1 -0
- package/dist/{agent-bridge → editor-commands}/register.js +323 -286
- package/dist/editor-commands/register.js.map +1 -0
- package/dist/{agent-bridge → editor-commands}/shared.d.ts +80 -80
- package/dist/editor-commands/shared.d.ts.map +1 -0
- package/dist/{agent-bridge → editor-commands}/shared.js +29 -29
- package/dist/editor-commands/shared.js.map +1 -0
- package/dist/editor-commands/source-types.d.ts +110 -0
- package/dist/editor-commands/source-types.d.ts.map +1 -0
- package/dist/editor-commands/source-types.js.map +1 -0
- package/dist/editor-plugin-commands.d.ts +4 -0
- package/dist/editor-plugin-commands.d.ts.map +1 -0
- package/dist/editor-plugin-commands.js +18 -0
- package/dist/editor-plugin-commands.js.map +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/local-editor-commands.d.ts +2 -0
- package/dist/local-editor-commands.d.ts.map +1 -0
- package/dist/local-editor-commands.js +2 -0
- package/dist/local-editor-commands.js.map +1 -0
- package/dist/local-editor-harness.d.ts +35 -21
- package/dist/local-editor-harness.d.ts.map +1 -1
- package/dist/local-editor-harness.js +1721 -367
- package/dist/local-editor-harness.js.map +1 -1
- package/dist/local-editor-prefab-stage-transaction.d.ts +2 -1
- package/dist/local-editor-prefab-stage-transaction.d.ts.map +1 -1
- package/dist/local-editor-prefab-stage-transaction.js +6 -5
- package/dist/local-editor-prefab-stage-transaction.js.map +1 -1
- package/dist/local-editor-scene-view-interaction-runtime.d.ts.map +1 -1
- package/dist/local-editor-scene-view-interaction-runtime.js +2 -5
- package/dist/local-editor-scene-view-interaction-runtime.js.map +1 -1
- package/dist/playable-local-editor-entry.d.ts +10 -0
- package/dist/playable-local-editor-entry.d.ts.map +1 -1
- package/dist/playable-local-editor-entry.js +10 -2
- package/dist/playable-local-editor-entry.js.map +1 -1
- package/dist/playable-local-editor-host.d.ts +3 -32
- package/dist/playable-local-editor-host.d.ts.map +1 -1
- package/dist/playable-local-editor-host.js +6 -70
- package/dist/playable-local-editor-host.js.map +1 -1
- package/dist/playable-product-local-editor.d.ts +1 -2
- package/dist/playable-product-local-editor.d.ts.map +1 -1
- package/dist/playable-product-local-editor.js +0 -1
- package/dist/playable-product-local-editor.js.map +1 -1
- package/dist/playable-product-projection-preview.d.ts.map +1 -1
- package/dist/playable-product-projection-preview.js +1 -1
- package/dist/playable-product-projection-preview.js.map +1 -1
- package/dist/playable-product-scene-capabilities.d.ts +0 -2
- package/dist/playable-product-scene-capabilities.d.ts.map +1 -1
- package/dist/playable-product-scene-capabilities.js +33 -6
- package/dist/playable-product-scene-capabilities.js.map +1 -1
- package/dist/playable-runtime-babylon.d.ts +4 -0
- package/dist/playable-runtime-babylon.d.ts.map +1 -1
- package/dist/playable-runtime-babylon.js +4 -0
- package/dist/playable-runtime-babylon.js.map +1 -1
- package/dist/playable-sdk.d.ts +1 -1
- package/dist/playable-sdk.d.ts.map +1 -1
- package/dist/playable-sdk.js.map +1 -1
- package/dist/playable-standard-project.d.ts +0 -2
- package/dist/playable-standard-project.d.ts.map +1 -1
- package/dist/playable-standard-project.js +1 -2
- package/dist/playable-standard-project.js.map +1 -1
- package/dist/project-service-projection.d.ts +16 -0
- package/dist/project-service-projection.d.ts.map +1 -0
- package/dist/project-service-projection.js +67 -0
- package/dist/project-service-projection.js.map +1 -0
- package/node_modules/@fps-games/babylon-renderer/dist/post-process/babylon-default-pipeline.d.ts +18 -0
- package/node_modules/@fps-games/babylon-renderer/dist/post-process/babylon-default-pipeline.d.ts.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/post-process/babylon-default-pipeline.js +54 -18
- package/node_modules/@fps-games/babylon-renderer/dist/post-process/babylon-default-pipeline.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/package.json +9 -9
- package/node_modules/@fps-games/editor-babylon/dist/projection.d.ts +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/projection.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/projection.js +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/projection.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/selection-presentation-controller.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/selection-presentation-controller.js +127 -13
- package/node_modules/@fps-games/editor-babylon/dist/selection-presentation-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/transform-gizmo-controller.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/transform-gizmo-controller.js +66 -1
- package/node_modules/@fps-games/editor-babylon/dist/transform-gizmo-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/package.json +6 -6
- package/node_modules/@fps-games/editor-browser/dist/editor-command-service-client.d.ts +32 -0
- package/node_modules/@fps-games/editor-browser/dist/editor-command-service-client.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/editor-command-service-client.js +254 -0
- package/node_modules/@fps-games/editor-browser/dist/editor-command-service-client.js.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/index.d.ts +3 -1
- package/node_modules/@fps-games/editor-browser/dist/index.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/index.js +2 -0
- package/node_modules/@fps-games/editor-browser/dist/index.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-command-center.d.ts +68 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-command-center.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-command-center.js +650 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-command-center.js.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-formal-surface-visibility.d.ts +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-formal-surface-visibility.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-formal-surface-visibility.js +22 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-formal-surface-visibility.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.d.ts +8 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.js +117 -6
- 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-view.d.ts +14 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view.js +100 -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-panels.d.ts +8 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.js +75 -2
- 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-types.d.ts +37 -12
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.d.ts +25 -2
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.js +332 -107
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/package.json +7 -7
- package/node_modules/@fps-games/editor-core/dist/editor-authoring-host.d.ts +107 -0
- package/node_modules/@fps-games/editor-core/dist/editor-authoring-host.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/editor-authoring-host.js +1211 -0
- package/node_modules/@fps-games/editor-core/dist/editor-authoring-host.js.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/editor-command-capability-adapter.d.ts +34 -0
- package/node_modules/@fps-games/editor-core/dist/editor-command-capability-adapter.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/editor-command-capability-adapter.js +260 -0
- package/node_modules/@fps-games/editor-core/dist/editor-command-capability-adapter.js.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/editor-command-composed-authority.d.ts +9 -0
- package/node_modules/@fps-games/editor-core/dist/editor-command-composed-authority.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/editor-command-composed-authority.js +14 -0
- package/node_modules/@fps-games/editor-core/dist/editor-command-composed-authority.js.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/editor-command-observability.d.ts +18 -0
- package/node_modules/@fps-games/editor-core/dist/editor-command-observability.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/editor-command-observability.js +113 -0
- package/node_modules/@fps-games/editor-core/dist/editor-command-observability.js.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/editor-command-system.d.ts +82 -0
- package/node_modules/@fps-games/editor-core/dist/editor-command-system.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/editor-command-system.js +1098 -0
- package/node_modules/@fps-games/editor-core/dist/editor-command-system.js.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/editor-plugin-host.d.ts +6 -7
- package/node_modules/@fps-games/editor-core/dist/editor-plugin-host.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/editor-plugin-host.js +62 -103
- package/node_modules/@fps-games/editor-core/dist/editor-plugin-host.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/editor-service-gateway.d.ts +30 -0
- package/node_modules/@fps-games/editor-core/dist/editor-service-gateway.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/editor-service-gateway.js +540 -0
- package/node_modules/@fps-games/editor-core/dist/editor-service-gateway.js.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/editor-session-authority.d.ts +9 -0
- package/node_modules/@fps-games/editor-core/dist/editor-session-authority.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/editor-session-authority.js +61 -0
- package/node_modules/@fps-games/editor-core/dist/editor-session-authority.js.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/editor-session.d.ts +55 -0
- 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 +247 -6
- package/node_modules/@fps-games/editor-core/dist/editor-session.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/index.d.ts +6 -2
- package/node_modules/@fps-games/editor-core/dist/index.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/index.js +6 -2
- package/node_modules/@fps-games/editor-core/dist/index.js.map +1 -1
- package/node_modules/@fps-games/editor-core/package.json +6 -6
- package/node_modules/@fps-games/editor-forge-play/dist/index.d.ts +0 -1
- package/node_modules/@fps-games/editor-forge-play/dist/index.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-forge-play/dist/index.js +0 -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/bridge-command/protocol.d.ts +2 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/protocol.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/helpers.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/helpers.js +41 -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/local-harness/forge-play-types.d.ts +27 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play-types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play-types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.d.ts +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 +214 -7
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/host-controller.d.ts +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/host-controller.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/host-controller.js +11 -3
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/host-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.d.ts +2 -4
- 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 +0 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/lifecycle.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/lifecycle.js +77 -31
- 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/types.d.ts +8 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/asset-fields.d.ts +21 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/asset-fields.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/asset-fields.js +90 -4
- 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.d.ts +27 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/binding.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/binding.js +161 -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/inspector.d.ts +2 -2
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/inspector.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/inspector.js +5 -92
- 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/scene-inspector.d.ts +7 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/scene-inspector.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/scene-inspector.js +26 -9
- 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 +9 -0
- 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 +19 -8
- 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/prefab-stage/material-override-inspector.d.ts +5 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/material-override-inspector.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/material-override-inspector.js +16 -4
- 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/stage-inspector.d.ts +9 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/stage-inspector.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/stage-inspector.js +12 -2
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/stage-inspector.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/ground-decal.d.ts +2 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/ground-decal.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/ground-decal.js +10 -5
- 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.d.ts +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/index.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/index.js +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/project-host-services.d.ts +17 -82
- 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 +53 -57
- 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.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/scene-session.js +3 -2
- 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/standard-authoring-commands.d.ts +10 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/standard-authoring-commands.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/standard-authoring-commands.js +256 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/standard-authoring-commands.js.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/standard-scene-assembly.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/standard-scene-assembly.js +7 -5
- 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/scene-source/client.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/client.js +8 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/client.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/types.d.ts +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/inspectors.js +134 -12
- package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/inspectors.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-scene-workflow.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-scene-workflow.js +47 -0
- 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/editor-service-vite.d.ts +27 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-service-vite.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-service-vite.js +592 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-service-vite.js.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/index.d.ts +3 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/index.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/index.js +2 -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/plugin.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/plugin.js +61 -6
- 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 +0 -2
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-adapter.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-adapter.js +1 -10
- 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-authoring-api.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-authoring-api.js +21 -0
- 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/project-authoring-backend.d.ts +13 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/project-authoring-backend.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/project-authoring-backend.js +18 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/project-authoring-backend.js.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/project-editor-service.d.ts +28 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/project-editor-service.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/project-editor-service.js +863 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/project-editor-service.js.map +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/types.d.ts +2 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/package.json +6 -6
- package/node_modules/@fps-games/editor-protocol/dist/editor-command-capabilities.d.ts +1626 -0
- package/node_modules/@fps-games/editor-protocol/dist/editor-command-capabilities.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-protocol/dist/{agent-bridge.js → editor-command-capabilities.js} +766 -620
- package/node_modules/@fps-games/editor-protocol/dist/editor-command-capabilities.js.map +1 -0
- package/node_modules/@fps-games/editor-protocol/dist/editor-command-trace.d.ts +69 -0
- package/node_modules/@fps-games/editor-protocol/dist/editor-command-trace.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-protocol/dist/editor-command-trace.js +22 -0
- package/node_modules/@fps-games/editor-protocol/dist/editor-command-trace.js.map +1 -0
- package/node_modules/@fps-games/editor-protocol/dist/editor-command.d.ts +136 -0
- package/node_modules/@fps-games/editor-protocol/dist/editor-command.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-protocol/dist/editor-command.js +2 -0
- package/node_modules/@fps-games/editor-protocol/dist/editor-command.js.map +1 -0
- package/node_modules/@fps-games/editor-protocol/dist/editor-service.d.ts +225 -0
- package/node_modules/@fps-games/editor-protocol/dist/editor-service.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-protocol/dist/editor-service.js +4 -0
- package/node_modules/@fps-games/editor-protocol/dist/editor-service.js.map +1 -0
- package/node_modules/@fps-games/editor-protocol/dist/index.d.ts +6 -3
- package/node_modules/@fps-games/editor-protocol/dist/index.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-protocol/dist/index.js +6 -3
- package/node_modules/@fps-games/editor-protocol/dist/index.js.map +1 -1
- package/node_modules/@fps-games/editor-protocol/package.json +2 -2
- package/node_modules/@fps-games/editor-tooling/package.json +3 -3
- package/node_modules/@fps-games/editor-ui/package.json +1 -1
- package/node_modules/@fps-games/playable-assets/package.json +1 -1
- package/node_modules/@fps-games/playable-contracts/package.json +1 -1
- package/node_modules/@fps-games/playable-rendering/package.json +2 -2
- package/node_modules/@fps-games/playable-runtime/package.json +12 -12
- package/node_modules/@fps-games/playable-runtime-data/package.json +4 -4
- package/node_modules/@fps-games/playable-scene/package.json +2 -2
- package/node_modules/@fps-games/plugin-api/package.json +1 -1
- package/node_modules/@fps-games/plugin-assets/dist/version.d.ts +1 -1
- package/node_modules/@fps-games/plugin-assets/dist/version.js +1 -1
- package/node_modules/@fps-games/plugin-assets/dist/version.js.map +1 -1
- package/node_modules/@fps-games/plugin-assets/package.json +6 -6
- package/node_modules/@fps-games/plugin-hierarchy/dist/kernel.d.ts +1 -0
- package/node_modules/@fps-games/plugin-hierarchy/dist/kernel.d.ts.map +1 -1
- package/node_modules/@fps-games/plugin-hierarchy/dist/kernel.js +78 -4
- package/node_modules/@fps-games/plugin-hierarchy/dist/kernel.js.map +1 -1
- package/node_modules/@fps-games/plugin-hierarchy/dist/version.d.ts +1 -1
- package/node_modules/@fps-games/plugin-hierarchy/dist/version.js +1 -1
- package/node_modules/@fps-games/plugin-hierarchy/dist/version.js.map +1 -1
- package/node_modules/@fps-games/plugin-hierarchy/package.json +5 -5
- package/node_modules/@fps-games/plugin-host/package.json +2 -2
- package/node_modules/@fps-games/plugin-markers/dist/version.d.ts +1 -1
- package/node_modules/@fps-games/plugin-markers/dist/version.js +1 -1
- package/node_modules/@fps-games/plugin-markers/dist/version.js.map +1 -1
- package/node_modules/@fps-games/plugin-markers/package.json +5 -5
- package/node_modules/@fps-games/plugin-materials/dist/version.d.ts +1 -1
- package/node_modules/@fps-games/plugin-materials/dist/version.js +1 -1
- package/node_modules/@fps-games/plugin-materials/dist/version.js.map +1 -1
- package/node_modules/@fps-games/plugin-materials/package.json +5 -5
- package/node_modules/@fps-games/plugin-rendering/dist/version.d.ts +1 -1
- package/node_modules/@fps-games/plugin-rendering/dist/version.js +1 -1
- package/node_modules/@fps-games/plugin-rendering/dist/version.js.map +1 -1
- package/node_modules/@fps-games/plugin-rendering/package.json +5 -5
- package/node_modules/@fps-games/plugin-scene/dist/version.d.ts +1 -1
- package/node_modules/@fps-games/plugin-scene/dist/version.js +1 -1
- package/node_modules/@fps-games/plugin-scene/dist/version.js.map +1 -1
- package/node_modules/@fps-games/plugin-scene/package.json +5 -5
- package/node_modules/@fps-games/plugin-shadow-map-experiment/dist/version.d.ts +1 -1
- package/node_modules/@fps-games/plugin-shadow-map-experiment/dist/version.js +1 -1
- package/node_modules/@fps-games/plugin-shadow-map-experiment/dist/version.js.map +1 -1
- package/node_modules/@fps-games/plugin-shadow-map-experiment/package.json +5 -5
- 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 +23 -23
- package/dist/agent-bridge/capabilities/assets.d.ts +0 -8
- package/dist/agent-bridge/capabilities/assets.d.ts.map +0 -1
- package/dist/agent-bridge/capabilities/assets.js.map +0 -1
- package/dist/agent-bridge/capabilities/editor-state.d.ts +0 -5
- package/dist/agent-bridge/capabilities/editor-state.d.ts.map +0 -1
- package/dist/agent-bridge/capabilities/editor-state.js.map +0 -1
- package/dist/agent-bridge/capabilities/hierarchy.d.ts +0 -4
- package/dist/agent-bridge/capabilities/hierarchy.d.ts.map +0 -1
- package/dist/agent-bridge/capabilities/hierarchy.js.map +0 -1
- package/dist/agent-bridge/capabilities/host-lifecycle.d.ts +0 -11
- package/dist/agent-bridge/capabilities/host-lifecycle.d.ts.map +0 -1
- package/dist/agent-bridge/capabilities/host-lifecycle.js +0 -149
- package/dist/agent-bridge/capabilities/host-lifecycle.js.map +0 -1
- package/dist/agent-bridge/capabilities/prefabs.d.ts +0 -5
- package/dist/agent-bridge/capabilities/prefabs.d.ts.map +0 -1
- package/dist/agent-bridge/capabilities/prefabs.js.map +0 -1
- package/dist/agent-bridge/capabilities/scene-objects.d.ts +0 -8
- package/dist/agent-bridge/capabilities/scene-objects.d.ts.map +0 -1
- package/dist/agent-bridge/capabilities/scene-objects.js +0 -480
- package/dist/agent-bridge/capabilities/scene-objects.js.map +0 -1
- package/dist/agent-bridge/capabilities/selection.d.ts +0 -5
- package/dist/agent-bridge/capabilities/selection.d.ts.map +0 -1
- package/dist/agent-bridge/capabilities/selection.js +0 -60
- package/dist/agent-bridge/capabilities/selection.js.map +0 -1
- package/dist/agent-bridge/capabilities/shadows.d.ts +0 -5
- package/dist/agent-bridge/capabilities/shadows.d.ts.map +0 -1
- package/dist/agent-bridge/capabilities/shadows.js.map +0 -1
- package/dist/agent-bridge/capabilities/transform.d.ts +0 -5
- package/dist/agent-bridge/capabilities/transform.d.ts.map +0 -1
- package/dist/agent-bridge/capabilities/transform.js +0 -164
- package/dist/agent-bridge/capabilities/transform.js.map +0 -1
- package/dist/agent-bridge/capabilities/ui-regions.d.ts +0 -4
- package/dist/agent-bridge/capabilities/ui-regions.d.ts.map +0 -1
- package/dist/agent-bridge/capabilities/ui-regions.js.map +0 -1
- package/dist/agent-bridge/capabilities/viewport.d.ts +0 -5
- package/dist/agent-bridge/capabilities/viewport.d.ts.map +0 -1
- package/dist/agent-bridge/capabilities/viewport.js.map +0 -1
- package/dist/agent-bridge/capability-sources.d.ts +0 -7
- package/dist/agent-bridge/capability-sources.d.ts.map +0 -1
- package/dist/agent-bridge/capability-sources.js +0 -34
- package/dist/agent-bridge/capability-sources.js.map +0 -1
- package/dist/agent-bridge/diagnostics.d.ts +0 -12
- package/dist/agent-bridge/diagnostics.d.ts.map +0 -1
- package/dist/agent-bridge/diagnostics.js.map +0 -1
- package/dist/agent-bridge/index.d.ts.map +0 -1
- package/dist/agent-bridge/index.js.map +0 -1
- package/dist/agent-bridge/register.d.ts +0 -4
- package/dist/agent-bridge/register.d.ts.map +0 -1
- package/dist/agent-bridge/register.js.map +0 -1
- package/dist/agent-bridge/shared.d.ts.map +0 -1
- package/dist/agent-bridge/shared.js.map +0 -1
- package/dist/agent-bridge/source-types.d.ts +0 -110
- package/dist/agent-bridge/source-types.d.ts.map +0 -1
- package/dist/agent-bridge/source-types.js.map +0 -1
- package/dist/editor-plugin-agent-capabilities.d.ts +0 -4
- package/dist/editor-plugin-agent-capabilities.d.ts.map +0 -1
- package/dist/editor-plugin-agent-capabilities.js +0 -64
- package/dist/editor-plugin-agent-capabilities.js.map +0 -1
- package/dist/local-editor-agent-actions.d.ts +0 -43
- package/dist/local-editor-agent-actions.d.ts.map +0 -1
- package/dist/local-editor-agent-actions.js +0 -321
- package/dist/local-editor-agent-actions.js.map +0 -1
- package/dist/local-editor-agent-bridge-transport.d.ts +0 -129
- package/dist/local-editor-agent-bridge-transport.d.ts.map +0 -1
- package/dist/local-editor-agent-bridge-transport.js +0 -403
- package/dist/local-editor-agent-bridge-transport.js.map +0 -1
- package/dist/local-editor-agent-bridge.d.ts +0 -2
- package/dist/local-editor-agent-bridge.d.ts.map +0 -1
- package/dist/local-editor-agent-bridge.js +0 -2
- package/dist/local-editor-agent-bridge.js.map +0 -1
- package/dist/local-editor-agent-context.d.ts +0 -68
- package/dist/local-editor-agent-context.d.ts.map +0 -1
- package/dist/local-editor-agent-context.js +0 -716
- package/dist/local-editor-agent-context.js.map +0 -1
- package/node_modules/@fps-games/editor-core/dist/agent-bridge.d.ts +0 -22
- package/node_modules/@fps-games/editor-core/dist/agent-bridge.d.ts.map +0 -1
- package/node_modules/@fps-games/editor-core/dist/agent-bridge.js +0 -106
- package/node_modules/@fps-games/editor-core/dist/agent-bridge.js.map +0 -1
- package/node_modules/@fps-games/editor-core/dist/agent-interaction.d.ts +0 -17
- package/node_modules/@fps-games/editor-core/dist/agent-interaction.d.ts.map +0 -1
- package/node_modules/@fps-games/editor-core/dist/agent-interaction.js +0 -14
- package/node_modules/@fps-games/editor-core/dist/agent-interaction.js.map +0 -1
- package/node_modules/@fps-games/editor-forge-play/dist/agent-transport.d.ts +0 -23
- package/node_modules/@fps-games/editor-forge-play/dist/agent-transport.d.ts.map +0 -1
- package/node_modules/@fps-games/editor-forge-play/dist/agent-transport.js +0 -47
- package/node_modules/@fps-games/editor-forge-play/dist/agent-transport.js.map +0 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/agent-descriptions.d.ts +0 -112
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/agent-descriptions.d.ts.map +0 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/agent-descriptions.js +0 -159
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/agent-descriptions.js.map +0 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/session-metadata.d.ts +0 -15
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/session-metadata.d.ts.map +0 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/session-metadata.js +0 -76
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/session-metadata.js.map +0 -1
- package/node_modules/@fps-games/editor-protocol/dist/agent-bridge.d.ts +0 -1622
- package/node_modules/@fps-games/editor-protocol/dist/agent-bridge.d.ts.map +0 -1
- package/node_modules/@fps-games/editor-protocol/dist/agent-bridge.js.map +0 -1
- package/node_modules/@fps-games/editor-protocol/dist/agent-trace.d.ts +0 -68
- package/node_modules/@fps-games/editor-protocol/dist/agent-trace.d.ts.map +0 -1
- package/node_modules/@fps-games/editor-protocol/dist/agent-trace.js +0 -23
- package/node_modules/@fps-games/editor-protocol/dist/agent-trace.js.map +0 -1
- package/node_modules/@fps-games/editor-protocol/dist/agent.d.ts +0 -187
- package/node_modules/@fps-games/editor-protocol/dist/agent.d.ts.map +0 -1
- package/node_modules/@fps-games/editor-protocol/dist/agent.js +0 -5
- package/node_modules/@fps-games/editor-protocol/dist/agent.js.map +0 -1
- /package/dist/{agent-bridge → editor-commands}/source-types.js +0 -0
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { LocalEditorCommandTransformSource } from '../source-types.js';
|
|
2
|
+
import { type LocalEditorCommandCapabilitySourceOperations, type LocalEditorCommandHarnessState } from '../shared.js';
|
|
3
|
+
import type { LocalEditorHarnessOptions } from '../../local-editor-harness.js';
|
|
4
|
+
export declare function createLocalEditorCommandTransformSource<TDocument, TPatch, TAsset>(state: LocalEditorCommandHarnessState<TDocument, TPatch>, options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>, renderUi: () => void, operations: LocalEditorCommandCapabilitySourceOperations<TDocument>): LocalEditorCommandTransformSource;
|
|
5
|
+
//# sourceMappingURL=transform.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../../src/editor-commands/capabilities/transform.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAKL,KAAK,4CAA4C,EACjD,KAAK,8BAA8B,EACpC,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAE/E,wBAAgB,uCAAuC,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAC/E,KAAK,EAAE,8BAA8B,CAAC,SAAS,EAAE,MAAM,CAAC,EACxD,OAAO,EAAE,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAC7D,QAAQ,EAAE,MAAM,IAAI,EACpB,UAAU,EAAE,4CAA4C,CAAC,SAAS,CAAC,GAClE,iCAAiC,CASnC"}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
import { isEditorTransformTrsSnapshot, } from '@fps-games/editor-core';
|
|
2
|
+
import { EDITOR_COMMAND_ID, } from '@fps-games/editor-protocol';
|
|
3
|
+
import { cloneVec3, createLocalEditorCommandFailure, editorTransformSnapshotToAgentTransform, isLocalEditorCommandVec3, } from '../diagnostics.js';
|
|
4
|
+
import { cloneEditorCommandSelection, getEditorCommandSafeSceneSelection, isEditorCommandDocumentNodeSelectable, isEditorCommandSafeSceneObjectId, } from '../shared.js';
|
|
5
|
+
export function createLocalEditorCommandTransformSource(state, options, renderUi, operations) {
|
|
6
|
+
return {
|
|
7
|
+
move(input) {
|
|
8
|
+
return moveEditorCommandObject(state, options, input, renderUi, operations);
|
|
9
|
+
},
|
|
10
|
+
set(input) {
|
|
11
|
+
return setEditorCommandObjectTransform(state, options, input, renderUi, operations);
|
|
12
|
+
},
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
function moveEditorCommandObject(state, options, input, renderUi, operations) {
|
|
16
|
+
const objectId = typeof input?.objectId === 'string' ? input.objectId.trim() : '';
|
|
17
|
+
if (!objectId) {
|
|
18
|
+
return createLocalEditorCommandFailure(EDITOR_COMMAND_ID.TRANSFORM_MOVE, 'transform.move requires objectId.', { code: 'transform.invalidInput' });
|
|
19
|
+
}
|
|
20
|
+
const hasPosition = input.position !== undefined;
|
|
21
|
+
const hasOffset = input.offset !== undefined;
|
|
22
|
+
if (hasPosition === hasOffset) {
|
|
23
|
+
return createLocalEditorCommandFailure(EDITOR_COMMAND_ID.TRANSFORM_MOVE, 'transform.move requires exactly one of position or offset.', { code: 'transform.invalidInput', objectId });
|
|
24
|
+
}
|
|
25
|
+
const movePosition = hasPosition && isLocalEditorCommandVec3(input.position) ? input.position : null;
|
|
26
|
+
const moveOffset = hasOffset && isLocalEditorCommandVec3(input.offset) ? input.offset : null;
|
|
27
|
+
if ((hasPosition && !movePosition) || (hasOffset && !moveOffset)) {
|
|
28
|
+
return createLocalEditorCommandFailure(EDITOR_COMMAND_ID.TRANSFORM_MOVE, 'transform.move position or offset must be a finite Vec3.', { code: 'transform.invalidVec3', objectId });
|
|
29
|
+
}
|
|
30
|
+
if (state.mode !== 'editor' || !state.session) {
|
|
31
|
+
return createLocalEditorCommandFailure(EDITOR_COMMAND_ID.TRANSFORM_MOVE, 'Editor is not in edit mode.', { code: 'editor.notReady', objectId });
|
|
32
|
+
}
|
|
33
|
+
const document = state.session.getState({ cloneDocuments: false }).workingDocument;
|
|
34
|
+
if (!isEditorCommandSafeSceneObjectId(operations, objectId)
|
|
35
|
+
|| !isEditorCommandDocumentNodeSelectable(options, document, objectId)) {
|
|
36
|
+
return createLocalEditorCommandFailure(EDITOR_COMMAND_ID.TRANSFORM_MOVE, `Object is not movable: ${objectId}`, { code: 'transform.notSelectable', objectId });
|
|
37
|
+
}
|
|
38
|
+
const before = state.projection?.readNodeTransform(objectId) ?? null;
|
|
39
|
+
if (!before || !isEditorTransformTrsSnapshot(before)) {
|
|
40
|
+
return createLocalEditorCommandFailure(EDITOR_COMMAND_ID.TRANSFORM_MOVE, `Object does not have an editable TRS transform: ${objectId}`, { code: 'transform.unsupported', objectId });
|
|
41
|
+
}
|
|
42
|
+
const after = operations.cloneTransformSnapshot(before);
|
|
43
|
+
if (!isEditorTransformTrsSnapshot(after)) {
|
|
44
|
+
return createLocalEditorCommandFailure(EDITOR_COMMAND_ID.TRANSFORM_MOVE, `Object does not have an editable TRS transform: ${objectId}`, { code: 'transform.unsupported', objectId });
|
|
45
|
+
}
|
|
46
|
+
after.position = movePosition
|
|
47
|
+
? cloneVec3(movePosition)
|
|
48
|
+
: addEditorCommandVec3(after.position, moveOffset);
|
|
49
|
+
return dispatchEditorCommandTransformPatch(state, options, {
|
|
50
|
+
capabilityId: EDITOR_COMMAND_ID.TRANSFORM_MOVE,
|
|
51
|
+
objectId,
|
|
52
|
+
before,
|
|
53
|
+
after,
|
|
54
|
+
tool: 'move',
|
|
55
|
+
label: `Agent move ${objectId}`,
|
|
56
|
+
}, renderUi, operations);
|
|
57
|
+
}
|
|
58
|
+
function setEditorCommandObjectTransform(state, options, input, renderUi, operations) {
|
|
59
|
+
const objectId = typeof input?.objectId === 'string' ? input.objectId.trim() : '';
|
|
60
|
+
if (!objectId) {
|
|
61
|
+
return createLocalEditorCommandFailure(EDITOR_COMMAND_ID.TRANSFORM_SET, 'transform.set requires objectId.', { code: 'transform.invalidInput' });
|
|
62
|
+
}
|
|
63
|
+
const hasPosition = input.position !== undefined;
|
|
64
|
+
const hasRotation = input.rotation !== undefined;
|
|
65
|
+
const hasScale = input.scale !== undefined;
|
|
66
|
+
if (!hasPosition && !hasRotation && !hasScale) {
|
|
67
|
+
return createLocalEditorCommandFailure(EDITOR_COMMAND_ID.TRANSFORM_SET, 'transform.set requires at least one of position, rotation, or scale.', { code: 'transform.invalidInput', objectId });
|
|
68
|
+
}
|
|
69
|
+
const position = hasPosition && isLocalEditorCommandVec3(input.position) ? input.position : null;
|
|
70
|
+
const rotation = hasRotation && isLocalEditorCommandVec3(input.rotation) ? input.rotation : null;
|
|
71
|
+
const scale = hasScale && isLocalEditorCommandVec3(input.scale) ? input.scale : null;
|
|
72
|
+
if ((hasPosition && !position) || (hasRotation && !rotation) || (hasScale && !scale)) {
|
|
73
|
+
return createLocalEditorCommandFailure(EDITOR_COMMAND_ID.TRANSFORM_SET, 'transform.set position, rotation, and scale must be finite Vec3 values when provided.', { code: 'transform.invalidVec3', objectId });
|
|
74
|
+
}
|
|
75
|
+
if (state.mode !== 'editor' || !state.session) {
|
|
76
|
+
return createLocalEditorCommandFailure(EDITOR_COMMAND_ID.TRANSFORM_SET, 'Editor is not in edit mode.', { code: 'editor.notReady', objectId });
|
|
77
|
+
}
|
|
78
|
+
const document = state.session.getState({ cloneDocuments: false }).workingDocument;
|
|
79
|
+
if (!isEditorCommandSafeSceneObjectId(operations, objectId)
|
|
80
|
+
|| !isEditorCommandDocumentNodeSelectable(options, document, objectId)) {
|
|
81
|
+
return createLocalEditorCommandFailure(EDITOR_COMMAND_ID.TRANSFORM_SET, `Object is not transformable: ${objectId}`, { code: 'transform.notSelectable', objectId });
|
|
82
|
+
}
|
|
83
|
+
const before = state.projection?.readNodeTransform(objectId) ?? null;
|
|
84
|
+
if (!before || !isEditorTransformTrsSnapshot(before)) {
|
|
85
|
+
return createLocalEditorCommandFailure(EDITOR_COMMAND_ID.TRANSFORM_SET, `Object does not have an editable TRS transform: ${objectId}`, { code: 'transform.unsupported', objectId });
|
|
86
|
+
}
|
|
87
|
+
const after = operations.cloneTransformSnapshot(before);
|
|
88
|
+
if (!isEditorTransformTrsSnapshot(after)) {
|
|
89
|
+
return createLocalEditorCommandFailure(EDITOR_COMMAND_ID.TRANSFORM_SET, `Object does not have an editable TRS transform: ${objectId}`, { code: 'transform.unsupported', objectId });
|
|
90
|
+
}
|
|
91
|
+
if (position)
|
|
92
|
+
after.position = cloneVec3(position);
|
|
93
|
+
if (rotation)
|
|
94
|
+
after.rotation = cloneVec3(rotation);
|
|
95
|
+
if (scale)
|
|
96
|
+
after.scale = cloneVec3(scale);
|
|
97
|
+
return dispatchEditorCommandTransformPatch(state, options, {
|
|
98
|
+
capabilityId: EDITOR_COMMAND_ID.TRANSFORM_SET,
|
|
99
|
+
objectId,
|
|
100
|
+
before,
|
|
101
|
+
after,
|
|
102
|
+
tool: position ? 'move' : rotation ? 'rotate' : 'scale',
|
|
103
|
+
label: `Agent set transform ${objectId}`,
|
|
104
|
+
}, renderUi, operations);
|
|
105
|
+
}
|
|
106
|
+
function dispatchEditorCommandTransformPatch(state, options, input, renderUi, operations) {
|
|
107
|
+
const { capabilityId, objectId, before, after, tool, label } = input;
|
|
108
|
+
if (state.mode !== 'editor' || !state.session) {
|
|
109
|
+
return createLocalEditorCommandFailure(capabilityId, 'Editor is not in edit mode.', { code: 'editor.notReady', objectId });
|
|
110
|
+
}
|
|
111
|
+
const document = state.session.getState({ cloneDocuments: false }).workingDocument;
|
|
112
|
+
const patch = options.documentAdapter.createTransformPatch?.({
|
|
113
|
+
document,
|
|
114
|
+
targetId: objectId,
|
|
115
|
+
tool,
|
|
116
|
+
space: 'world',
|
|
117
|
+
constraint: 'free',
|
|
118
|
+
before,
|
|
119
|
+
after,
|
|
120
|
+
});
|
|
121
|
+
if (!patch) {
|
|
122
|
+
return createLocalEditorCommandFailure(capabilityId, `Transform patch was not created for object: ${objectId}`, { code: 'transform.patchUnavailable', objectId });
|
|
123
|
+
}
|
|
124
|
+
const result = state.session.dispatch({
|
|
125
|
+
type: 'document.patch',
|
|
126
|
+
label: patch.label ?? `Agent move ${objectId}`,
|
|
127
|
+
patch: patch.patch,
|
|
128
|
+
targetId: objectId,
|
|
129
|
+
...operations.withProjectionImpact(operations.resolveProjectionImpact(patch, patch.reprojectIds?.length
|
|
130
|
+
? operations.createReprojectProjectionImpact(patch.reprojectIds)
|
|
131
|
+
: operations.createTransformProjectionImpact([patch.changedId ?? objectId]))),
|
|
132
|
+
});
|
|
133
|
+
if (!result.documentChanged) {
|
|
134
|
+
return createLocalEditorCommandFailure(capabilityId, `Transform was unchanged for object: ${objectId}`, { code: 'transform.unchanged', objectId });
|
|
135
|
+
}
|
|
136
|
+
if (patch.reprojectIds?.length)
|
|
137
|
+
operations.reprojectProjectionForChangedIds(result.workingDocument, patch.reprojectIds);
|
|
138
|
+
else
|
|
139
|
+
operations.syncProjectionForChangedIds(result.workingDocument, [patch.changedId ?? objectId]);
|
|
140
|
+
state.summary = operations.summarizeDocument(result.workingDocument, state.session.getSource());
|
|
141
|
+
state.status = patch.label ?? label;
|
|
142
|
+
operations.dispatchSelectionCommand({
|
|
143
|
+
type: 'selection.replace',
|
|
144
|
+
selectedIds: [objectId],
|
|
145
|
+
activeId: objectId,
|
|
146
|
+
label,
|
|
147
|
+
});
|
|
148
|
+
renderUi();
|
|
149
|
+
const updated = state.projection?.readNodeTransform(objectId) ?? after;
|
|
150
|
+
return {
|
|
151
|
+
objectId,
|
|
152
|
+
before: editorTransformSnapshotToAgentTransform(before) ?? {},
|
|
153
|
+
after: editorTransformSnapshotToAgentTransform(updated) ?? {},
|
|
154
|
+
selection: cloneEditorCommandSelection(getEditorCommandSafeSceneSelection(operations)),
|
|
155
|
+
};
|
|
156
|
+
}
|
|
157
|
+
function addEditorCommandVec3(left, right) {
|
|
158
|
+
return {
|
|
159
|
+
x: left.x + right.x,
|
|
160
|
+
y: left.y + right.y,
|
|
161
|
+
z: left.z + right.z,
|
|
162
|
+
};
|
|
163
|
+
}
|
|
164
|
+
//# sourceMappingURL=transform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transform.js","sourceRoot":"","sources":["../../../src/editor-commands/capabilities/transform.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n type EditorTransformSnapshot,\n type EditorTransformTool,\n isEditorTransformTrsSnapshot,\n} from '@fps-games/editor-core';\nimport {\n EDITOR_COMMAND_ID,\n type EditorCommandTransformMoveOutput,\n type EditorCommandVec3,\n} from '@fps-games/editor-protocol';\nimport {\n cloneVec3,\n createLocalEditorCommandFailure,\n editorTransformSnapshotToAgentTransform,\n isLocalEditorCommandVec3,\n} from '../diagnostics.js';\nimport type { LocalEditorCommandTransformSource } from '../source-types.js';\nimport {\n cloneEditorCommandSelection,\n getEditorCommandSafeSceneSelection,\n isEditorCommandDocumentNodeSelectable,\n isEditorCommandSafeSceneObjectId,\n type LocalEditorCommandCapabilitySourceOperations,\n type LocalEditorCommandHarnessState,\n} from '../shared.js';\nimport type { LocalEditorHarnessOptions } from '../../local-editor-harness.js';\n\nexport function createLocalEditorCommandTransformSource<TDocument, TPatch, TAsset>(\n state: LocalEditorCommandHarnessState<TDocument, TPatch>,\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n renderUi: () => void,\n operations: LocalEditorCommandCapabilitySourceOperations<TDocument>,\n): LocalEditorCommandTransformSource {\n return {\n move(input) {\n return moveEditorCommandObject(state, options, input, renderUi, operations);\n },\n set(input) {\n return setEditorCommandObjectTransform(state, options, input, renderUi, operations);\n },\n };\n}\n\nfunction moveEditorCommandObject<TDocument, TPatch, TAsset>(\n state: LocalEditorCommandHarnessState<TDocument, TPatch>,\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n input: { objectId?: string; position?: unknown; offset?: unknown },\n renderUi: () => void,\n operations: LocalEditorCommandCapabilitySourceOperations<TDocument>,\n): ReturnType<LocalEditorCommandTransformSource['move']> {\n const objectId = typeof input?.objectId === 'string' ? input.objectId.trim() : '';\n if (!objectId) {\n return createLocalEditorCommandFailure(\n EDITOR_COMMAND_ID.TRANSFORM_MOVE,\n 'transform.move requires objectId.',\n { code: 'transform.invalidInput' },\n );\n }\n const hasPosition = input.position !== undefined;\n const hasOffset = input.offset !== undefined;\n if (hasPosition === hasOffset) {\n return createLocalEditorCommandFailure(\n EDITOR_COMMAND_ID.TRANSFORM_MOVE,\n 'transform.move requires exactly one of position or offset.',\n { code: 'transform.invalidInput', objectId },\n );\n }\n const movePosition = hasPosition && isLocalEditorCommandVec3(input.position) ? input.position : null;\n const moveOffset = hasOffset && isLocalEditorCommandVec3(input.offset) ? input.offset : null;\n if ((hasPosition && !movePosition) || (hasOffset && !moveOffset)) {\n return createLocalEditorCommandFailure(\n EDITOR_COMMAND_ID.TRANSFORM_MOVE,\n 'transform.move position or offset must be a finite Vec3.',\n { code: 'transform.invalidVec3', objectId },\n );\n }\n if (state.mode !== 'editor' || !state.session) {\n return createLocalEditorCommandFailure(\n EDITOR_COMMAND_ID.TRANSFORM_MOVE,\n 'Editor is not in edit mode.',\n { code: 'editor.notReady', objectId },\n );\n }\n const document = state.session.getState({ cloneDocuments: false }).workingDocument;\n if (!isEditorCommandSafeSceneObjectId(operations, objectId)\n || !isEditorCommandDocumentNodeSelectable(options, document, objectId)) {\n return createLocalEditorCommandFailure(\n EDITOR_COMMAND_ID.TRANSFORM_MOVE,\n `Object is not movable: ${objectId}`,\n { code: 'transform.notSelectable', objectId },\n );\n }\n const before = state.projection?.readNodeTransform(objectId) ?? null;\n if (!before || !isEditorTransformTrsSnapshot(before)) {\n return createLocalEditorCommandFailure(\n EDITOR_COMMAND_ID.TRANSFORM_MOVE,\n `Object does not have an editable TRS transform: ${objectId}`,\n { code: 'transform.unsupported', objectId },\n );\n }\n const after = operations.cloneTransformSnapshot(before);\n if (!isEditorTransformTrsSnapshot(after)) {\n return createLocalEditorCommandFailure(\n EDITOR_COMMAND_ID.TRANSFORM_MOVE,\n `Object does not have an editable TRS transform: ${objectId}`,\n { code: 'transform.unsupported', objectId },\n );\n }\n after.position = movePosition\n ? cloneVec3(movePosition)\n : addEditorCommandVec3(after.position, moveOffset!);\n return dispatchEditorCommandTransformPatch(\n state,\n options,\n {\n capabilityId: EDITOR_COMMAND_ID.TRANSFORM_MOVE,\n objectId,\n before,\n after,\n tool: 'move',\n label: `Agent move ${objectId}`,\n },\n renderUi,\n operations,\n );\n}\n\nfunction setEditorCommandObjectTransform<TDocument, TPatch, TAsset>(\n state: LocalEditorCommandHarnessState<TDocument, TPatch>,\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n input: { objectId?: string; position?: unknown; rotation?: unknown; scale?: unknown },\n renderUi: () => void,\n operations: LocalEditorCommandCapabilitySourceOperations<TDocument>,\n): ReturnType<LocalEditorCommandTransformSource['set']> {\n const objectId = typeof input?.objectId === 'string' ? input.objectId.trim() : '';\n if (!objectId) {\n return createLocalEditorCommandFailure(\n EDITOR_COMMAND_ID.TRANSFORM_SET,\n 'transform.set requires objectId.',\n { code: 'transform.invalidInput' },\n );\n }\n const hasPosition = input.position !== undefined;\n const hasRotation = input.rotation !== undefined;\n const hasScale = input.scale !== undefined;\n if (!hasPosition && !hasRotation && !hasScale) {\n return createLocalEditorCommandFailure(\n EDITOR_COMMAND_ID.TRANSFORM_SET,\n 'transform.set requires at least one of position, rotation, or scale.',\n { code: 'transform.invalidInput', objectId },\n );\n }\n const position = hasPosition && isLocalEditorCommandVec3(input.position) ? input.position : null;\n const rotation = hasRotation && isLocalEditorCommandVec3(input.rotation) ? input.rotation : null;\n const scale = hasScale && isLocalEditorCommandVec3(input.scale) ? input.scale : null;\n if ((hasPosition && !position) || (hasRotation && !rotation) || (hasScale && !scale)) {\n return createLocalEditorCommandFailure(\n EDITOR_COMMAND_ID.TRANSFORM_SET,\n 'transform.set position, rotation, and scale must be finite Vec3 values when provided.',\n { code: 'transform.invalidVec3', objectId },\n );\n }\n if (state.mode !== 'editor' || !state.session) {\n return createLocalEditorCommandFailure(\n EDITOR_COMMAND_ID.TRANSFORM_SET,\n 'Editor is not in edit mode.',\n { code: 'editor.notReady', objectId },\n );\n }\n const document = state.session.getState({ cloneDocuments: false }).workingDocument;\n if (!isEditorCommandSafeSceneObjectId(operations, objectId)\n || !isEditorCommandDocumentNodeSelectable(options, document, objectId)) {\n return createLocalEditorCommandFailure(\n EDITOR_COMMAND_ID.TRANSFORM_SET,\n `Object is not transformable: ${objectId}`,\n { code: 'transform.notSelectable', objectId },\n );\n }\n const before = state.projection?.readNodeTransform(objectId) ?? null;\n if (!before || !isEditorTransformTrsSnapshot(before)) {\n return createLocalEditorCommandFailure(\n EDITOR_COMMAND_ID.TRANSFORM_SET,\n `Object does not have an editable TRS transform: ${objectId}`,\n { code: 'transform.unsupported', objectId },\n );\n }\n const after = operations.cloneTransformSnapshot(before);\n if (!isEditorTransformTrsSnapshot(after)) {\n return createLocalEditorCommandFailure(\n EDITOR_COMMAND_ID.TRANSFORM_SET,\n `Object does not have an editable TRS transform: ${objectId}`,\n { code: 'transform.unsupported', objectId },\n );\n }\n if (position) after.position = cloneVec3(position);\n if (rotation) after.rotation = cloneVec3(rotation);\n if (scale) after.scale = cloneVec3(scale);\n return dispatchEditorCommandTransformPatch(\n state,\n options,\n {\n capabilityId: EDITOR_COMMAND_ID.TRANSFORM_SET,\n objectId,\n before,\n after,\n tool: position ? 'move' : rotation ? 'rotate' : 'scale',\n label: `Agent set transform ${objectId}`,\n },\n renderUi,\n operations,\n );\n}\n\nfunction dispatchEditorCommandTransformPatch<TDocument, TPatch, TAsset>(\n state: LocalEditorCommandHarnessState<TDocument, TPatch>,\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n input: {\n capabilityId: string;\n objectId: string;\n before: EditorTransformSnapshot;\n after: EditorTransformSnapshot;\n tool: Exclude<EditorTransformTool, 'select'>;\n label: string;\n },\n renderUi: () => void,\n operations: LocalEditorCommandCapabilitySourceOperations<TDocument>,\n): EditorCommandTransformMoveOutput | ReturnType<typeof createLocalEditorCommandFailure> {\n const { capabilityId, objectId, before, after, tool, label } = input;\n if (state.mode !== 'editor' || !state.session) {\n return createLocalEditorCommandFailure(\n capabilityId,\n 'Editor is not in edit mode.',\n { code: 'editor.notReady', objectId },\n );\n }\n const document = state.session.getState({ cloneDocuments: false }).workingDocument;\n const patch = options.documentAdapter.createTransformPatch?.({\n document,\n targetId: objectId,\n tool,\n space: 'world',\n constraint: 'free',\n before,\n after,\n });\n if (!patch) {\n return createLocalEditorCommandFailure(\n capabilityId,\n `Transform patch was not created for object: ${objectId}`,\n { code: 'transform.patchUnavailable', objectId },\n );\n }\n const result = state.session.dispatch({\n type: 'document.patch',\n label: patch.label ?? `Agent move ${objectId}`,\n patch: patch.patch,\n targetId: objectId,\n ...operations.withProjectionImpact(operations.resolveProjectionImpact(\n patch,\n patch.reprojectIds?.length\n ? operations.createReprojectProjectionImpact(patch.reprojectIds)\n : operations.createTransformProjectionImpact([patch.changedId ?? objectId]),\n )),\n });\n if (!result.documentChanged) {\n return createLocalEditorCommandFailure(\n capabilityId,\n `Transform was unchanged for object: ${objectId}`,\n { code: 'transform.unchanged', objectId },\n );\n }\n if (patch.reprojectIds?.length) operations.reprojectProjectionForChangedIds(result.workingDocument, patch.reprojectIds);\n else operations.syncProjectionForChangedIds(result.workingDocument, [patch.changedId ?? objectId]);\n state.summary = operations.summarizeDocument(result.workingDocument, state.session.getSource());\n state.status = patch.label ?? label;\n operations.dispatchSelectionCommand({\n type: 'selection.replace',\n selectedIds: [objectId],\n activeId: objectId,\n label,\n });\n renderUi();\n const updated = state.projection?.readNodeTransform(objectId) ?? after;\n return {\n objectId,\n before: editorTransformSnapshotToAgentTransform(before) ?? {},\n after: editorTransformSnapshotToAgentTransform(updated) ?? {},\n selection: cloneEditorCommandSelection(getEditorCommandSafeSceneSelection(operations)),\n } satisfies EditorCommandTransformMoveOutput;\n}\n\nfunction addEditorCommandVec3(left: EditorCommandVec3, right: EditorCommandVec3): EditorCommandVec3 {\n return {\n x: left.x + right.x,\n y: left.y + right.y,\n z: left.z + right.z,\n };\n}\n"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { LocalEditorCommandUiSource } from '../source-types.js';
|
|
2
|
+
import type { LocalEditorCommandHarnessState } from '../shared.js';
|
|
3
|
+
export declare function createLocalEditorCommandUiSource<TDocument, TPatch>(state: LocalEditorCommandHarnessState<TDocument, TPatch>): LocalEditorCommandUiSource;
|
|
4
|
+
//# sourceMappingURL=ui-regions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui-regions.d.ts","sourceRoot":"","sources":["../../../src/editor-commands/capabilities/ui-regions.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,cAAc,CAAC;AAkKnE,wBAAgB,gCAAgC,CAAC,SAAS,EAAE,MAAM,EAChE,KAAK,EAAE,8BAA8B,CAAC,SAAS,EAAE,MAAM,CAAC,GACvD,0BAA0B,CAM5B"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import {
|
|
2
|
-
const
|
|
1
|
+
import { EDITOR_COMMAND_ID, } from '@fps-games/editor-protocol';
|
|
2
|
+
const EDITOR_COMMAND_WORKSPACE_REGIONS = Object.freeze([
|
|
3
3
|
{
|
|
4
4
|
id: 'top-toolbar',
|
|
5
5
|
label: 'Top Toolbar',
|
|
6
6
|
location: 'top',
|
|
7
|
-
purpose: 'Mode, transform tool, viewport utility, save/history, and
|
|
7
|
+
purpose: 'Mode, transform tool, viewport utility, save/history, and Command Service status controls.',
|
|
8
8
|
primaryCapabilities: [
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
9
|
+
EDITOR_COMMAND_ID.HOST_MODE_GET,
|
|
10
|
+
EDITOR_COMMAND_ID.HOST_EDITOR_ENTER,
|
|
11
|
+
EDITOR_COMMAND_ID.HOST_EDITOR_WAIT_READY,
|
|
12
|
+
EDITOR_COMMAND_ID.EDITOR_STATE_GET,
|
|
13
|
+
EDITOR_COMMAND_ID.EDITOR_DIAGNOSTICS_LIST,
|
|
14
14
|
],
|
|
15
15
|
fallbackTools: ['playwright', 'chrome'],
|
|
16
16
|
notes: [
|
|
@@ -24,11 +24,11 @@ const AGENT_BRIDGE_WORKSPACE_REGIONS = Object.freeze([
|
|
|
24
24
|
location: 'left',
|
|
25
25
|
purpose: 'Scene object tree, selection context, protected/locked object visibility, and hierarchy actions.',
|
|
26
26
|
primaryCapabilities: [
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
27
|
+
EDITOR_COMMAND_ID.SCENE_OBJECTS_LIST,
|
|
28
|
+
EDITOR_COMMAND_ID.OBJECT_RESOLVE,
|
|
29
|
+
EDITOR_COMMAND_ID.SELECTION_SET,
|
|
30
|
+
EDITOR_COMMAND_ID.OBJECT_CREATE_PRIMITIVE,
|
|
31
|
+
EDITOR_COMMAND_ID.OBJECT_DELETE,
|
|
32
32
|
],
|
|
33
33
|
fallbackTools: ['playwright', 'chrome'],
|
|
34
34
|
notes: [
|
|
@@ -42,13 +42,13 @@ const AGENT_BRIDGE_WORKSPACE_REGIONS = Object.freeze([
|
|
|
42
42
|
location: 'center',
|
|
43
43
|
purpose: 'Rendered scene viewport, selection focus, transform gizmo, camera framing, and visual inspection.',
|
|
44
44
|
primaryCapabilities: [
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
45
|
+
EDITOR_COMMAND_ID.VIEWPORT_FOCUS_OBJECT,
|
|
46
|
+
EDITOR_COMMAND_ID.VIEWPORT_FRAME_SELECTION,
|
|
47
|
+
EDITOR_COMMAND_ID.VIEWPORT_CAMERA_GET,
|
|
48
|
+
EDITOR_COMMAND_ID.VIEWPORT_CAMERA_SET_PRESET,
|
|
49
|
+
EDITOR_COMMAND_ID.VIEWPORT_CAMERA_ORBIT,
|
|
50
|
+
EDITOR_COMMAND_ID.TRANSFORM_MOVE,
|
|
51
|
+
EDITOR_COMMAND_ID.TRANSFORM_SET,
|
|
52
52
|
],
|
|
53
53
|
fallbackTools: ['playwright', 'chrome', 'computer-use'],
|
|
54
54
|
notes: [
|
|
@@ -62,11 +62,11 @@ const AGENT_BRIDGE_WORKSPACE_REGIONS = Object.freeze([
|
|
|
62
62
|
location: 'right',
|
|
63
63
|
purpose: 'Selected object properties, Transform fields, project adapter sections, and editable component data.',
|
|
64
64
|
primaryCapabilities: [
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
65
|
+
EDITOR_COMMAND_ID.EDITOR_STATE_GET,
|
|
66
|
+
EDITOR_COMMAND_ID.EDITOR_DIAGNOSTICS_LIST,
|
|
67
|
+
EDITOR_COMMAND_ID.EDITOR_SNAPSHOT_GET,
|
|
68
|
+
EDITOR_COMMAND_ID.TRANSFORM_SET,
|
|
69
|
+
EDITOR_COMMAND_ID.SELECTION_SET,
|
|
70
70
|
],
|
|
71
71
|
fallbackTools: ['playwright', 'chrome'],
|
|
72
72
|
notes: [
|
|
@@ -80,8 +80,8 @@ const AGENT_BRIDGE_WORKSPACE_REGIONS = Object.freeze([
|
|
|
80
80
|
location: 'right',
|
|
81
81
|
purpose: 'Rendering-oriented panels, diagnostics, and project-specific inspector tabs when present.',
|
|
82
82
|
primaryCapabilities: [
|
|
83
|
-
|
|
84
|
-
|
|
83
|
+
EDITOR_COMMAND_ID.EDITOR_STATE_GET,
|
|
84
|
+
EDITOR_COMMAND_ID.EDITOR_SNAPSHOT_GET,
|
|
85
85
|
],
|
|
86
86
|
fallbackTools: ['playwright', 'chrome'],
|
|
87
87
|
notes: [
|
|
@@ -95,13 +95,13 @@ const AGENT_BRIDGE_WORKSPACE_REGIONS = Object.freeze([
|
|
|
95
95
|
location: 'bottom',
|
|
96
96
|
purpose: 'Project asset browsing, asset analysis, and asset placement into the scene.',
|
|
97
97
|
primaryCapabilities: [
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
98
|
+
EDITOR_COMMAND_ID.ASSET_LIBRARY_LIST,
|
|
99
|
+
EDITOR_COMMAND_ID.ASSET_INFO_GET,
|
|
100
|
+
EDITOR_COMMAND_ID.ASSET_ANALYSIS_GET,
|
|
101
|
+
EDITOR_COMMAND_ID.PREFAB_RESOLVE,
|
|
102
|
+
EDITOR_COMMAND_ID.PREFAB_STAGE_OPEN,
|
|
103
|
+
EDITOR_COMMAND_ID.PREFAB_STAGE_EXIT,
|
|
104
|
+
EDITOR_COMMAND_ID.OBJECT_CREATE_FROM_ASSET,
|
|
105
105
|
],
|
|
106
106
|
fallbackTools: ['playwright', 'chrome'],
|
|
107
107
|
notes: [
|
|
@@ -114,42 +114,40 @@ const AGENT_BRIDGE_WORKSPACE_REGIONS = Object.freeze([
|
|
|
114
114
|
id: 'bottom-console',
|
|
115
115
|
label: 'Editor Console',
|
|
116
116
|
location: 'bottom-global',
|
|
117
|
-
purpose: 'Session-scoped structured output for editor save, import, compile, run, plugin, and
|
|
117
|
+
purpose: 'Session-scoped structured output for editor save, import, compile, run, plugin, and command operations.',
|
|
118
118
|
primaryCapabilities: [
|
|
119
|
-
|
|
120
|
-
|
|
119
|
+
EDITOR_COMMAND_ID.EDITOR_DIAGNOSTICS_LIST,
|
|
120
|
+
EDITOR_COMMAND_ID.EDITOR_STATE_GET,
|
|
121
121
|
],
|
|
122
122
|
fallbackTools: ['playwright', 'chrome'],
|
|
123
123
|
notes: [
|
|
124
124
|
'This Console is Editor-owned operation output and does not intercept browser console.* calls.',
|
|
125
125
|
'Validation Center remains the revision-aware diagnostics surface and Save/Run gate.',
|
|
126
|
-
'
|
|
126
|
+
'Command operation and trace details come from the shared Command System.',
|
|
127
127
|
],
|
|
128
128
|
},
|
|
129
129
|
{
|
|
130
|
-
id: '
|
|
131
|
-
label: '
|
|
132
|
-
location: '
|
|
133
|
-
purpose: '
|
|
130
|
+
id: 'command-center',
|
|
131
|
+
label: 'Command Center',
|
|
132
|
+
location: 'overlay',
|
|
133
|
+
purpose: 'Manifest-driven command discovery, schema input, invocation history, and operation diagnostics.',
|
|
134
134
|
primaryCapabilities: [
|
|
135
|
-
|
|
135
|
+
EDITOR_COMMAND_ID.EDITOR_STATE_GET,
|
|
136
136
|
],
|
|
137
137
|
fallbackTools: ['browser', 'playwright', 'chrome'],
|
|
138
138
|
notes: [
|
|
139
|
-
'
|
|
140
|
-
'
|
|
139
|
+
'Cmd/Ctrl+Shift+P opens the Palette; commands with required input continue in the schema Console.',
|
|
140
|
+
'Favorites and manual invocation history are local view state and never become document authority.',
|
|
141
141
|
],
|
|
142
142
|
},
|
|
143
143
|
]);
|
|
144
144
|
const RECOMMENDED_OPERATION_ORDER = Object.freeze([
|
|
145
|
-
'
|
|
146
|
-
'
|
|
147
|
-
'
|
|
148
|
-
'
|
|
149
|
-
'
|
|
150
|
-
'
|
|
151
|
-
'L2 semantic capability for the target region',
|
|
152
|
-
'L0 browser automation only for missing capability, disconnected bridge, page load, or screenshot evidence',
|
|
145
|
+
'fps-editor-agent status',
|
|
146
|
+
'fps-editor-agent commands list/search/describe',
|
|
147
|
+
'fps-editor-agent command editor.ui.regions.get',
|
|
148
|
+
'fps-editor-agent command host.editor.enter',
|
|
149
|
+
'L2 semantic command for the target region',
|
|
150
|
+
'L0 browser automation only for a missing command, unavailable Browser attachment, page load, or screenshot evidence',
|
|
153
151
|
]);
|
|
154
152
|
const L0_FALLBACK_RULES = Object.freeze([
|
|
155
153
|
'Do not click Hierarchy rows when selection.set or object.resolve can provide the same semantic result.',
|
|
@@ -158,19 +156,19 @@ const L0_FALLBACK_RULES = Object.freeze([
|
|
|
158
156
|
'Do not drag assets from the bottom panel when object.createFromAsset can place a standard asset.',
|
|
159
157
|
'When L0 fallback is required, record screenshot paths and console/page errors through Agent Operation Trace.',
|
|
160
158
|
]);
|
|
161
|
-
export function
|
|
159
|
+
export function createLocalEditorCommandUiSource(state) {
|
|
162
160
|
return {
|
|
163
161
|
getRegions() {
|
|
164
|
-
return
|
|
162
|
+
return createEditorCommandUiRegions(state);
|
|
165
163
|
},
|
|
166
164
|
};
|
|
167
165
|
}
|
|
168
|
-
function
|
|
166
|
+
function createEditorCommandUiRegions(state) {
|
|
169
167
|
return {
|
|
170
168
|
mode: state.mode,
|
|
171
169
|
editorReady: state.mode === 'editor' && !!state.session && !state.busy,
|
|
172
170
|
sessionActive: !!state.session,
|
|
173
|
-
regions:
|
|
171
|
+
regions: EDITOR_COMMAND_WORKSPACE_REGIONS.map(cloneRegion),
|
|
174
172
|
recommendedOperationOrder: [...RECOMMENDED_OPERATION_ORDER],
|
|
175
173
|
l0FallbackRules: [...L0_FALLBACK_RULES],
|
|
176
174
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ui-regions.js","sourceRoot":"","sources":["../../../src/editor-commands/capabilities/ui-regions.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n EDITOR_COMMAND_ID,\n type EditorCommandUiRegionsGetOutput,\n type EditorCommandWorkspaceRegion,\n} from '@fps-games/editor-protocol';\nimport type { LocalEditorCommandUiSource } from '../source-types.js';\nimport type { LocalEditorCommandHarnessState } from '../shared.js';\n\nconst EDITOR_COMMAND_WORKSPACE_REGIONS: readonly EditorCommandWorkspaceRegion[] = Object.freeze([\n {\n id: 'top-toolbar',\n label: 'Top Toolbar',\n location: 'top',\n purpose: 'Mode, transform tool, viewport utility, save/history, and Command Service status controls.',\n primaryCapabilities: [\n EDITOR_COMMAND_ID.HOST_MODE_GET,\n EDITOR_COMMAND_ID.HOST_EDITOR_ENTER,\n EDITOR_COMMAND_ID.HOST_EDITOR_WAIT_READY,\n EDITOR_COMMAND_ID.EDITOR_STATE_GET,\n EDITOR_COMMAND_ID.EDITOR_DIAGNOSTICS_LIST,\n ],\n fallbackTools: ['playwright', 'chrome'],\n notes: [\n 'Use host.editor.enter instead of clicking the editor entry UI.',\n 'Use editor.diagnostics.list for the same revision-aware snapshot shown in the Validation Center.',\n ],\n },\n {\n id: 'left-hierarchy',\n label: 'Hierarchy',\n location: 'left',\n purpose: 'Scene object tree, selection context, protected/locked object visibility, and hierarchy actions.',\n primaryCapabilities: [\n EDITOR_COMMAND_ID.SCENE_OBJECTS_LIST,\n EDITOR_COMMAND_ID.OBJECT_RESOLVE,\n EDITOR_COMMAND_ID.SELECTION_SET,\n EDITOR_COMMAND_ID.OBJECT_CREATE_PRIMITIVE,\n EDITOR_COMMAND_ID.OBJECT_DELETE,\n ],\n fallbackTools: ['playwright', 'chrome'],\n notes: [\n 'Prefer object ids from scene.objects.list or object.resolve over clicking hierarchy rows.',\n 'Creation and deletion must go through editor scene graph capabilities, not manual scene JSON edits.',\n ],\n },\n {\n id: 'center-preview',\n label: 'Preview / Scene View',\n location: 'center',\n purpose: 'Rendered scene viewport, selection focus, transform gizmo, camera framing, and visual inspection.',\n primaryCapabilities: [\n EDITOR_COMMAND_ID.VIEWPORT_FOCUS_OBJECT,\n EDITOR_COMMAND_ID.VIEWPORT_FRAME_SELECTION,\n EDITOR_COMMAND_ID.VIEWPORT_CAMERA_GET,\n EDITOR_COMMAND_ID.VIEWPORT_CAMERA_SET_PRESET,\n EDITOR_COMMAND_ID.VIEWPORT_CAMERA_ORBIT,\n EDITOR_COMMAND_ID.TRANSFORM_MOVE,\n EDITOR_COMMAND_ID.TRANSFORM_SET,\n ],\n fallbackTools: ['playwright', 'chrome', 'computer-use'],\n notes: [\n 'Use viewport.camera.setPreset before L0 screenshots so visual evidence has a stable semantic view.',\n 'Use transform capabilities instead of dragging the gizmo when a structured transform target is known.',\n ],\n },\n {\n id: 'right-inspector',\n label: 'Inspector',\n location: 'right',\n purpose: 'Selected object properties, Transform fields, project adapter sections, and editable component data.',\n primaryCapabilities: [\n EDITOR_COMMAND_ID.EDITOR_STATE_GET,\n EDITOR_COMMAND_ID.EDITOR_DIAGNOSTICS_LIST,\n EDITOR_COMMAND_ID.EDITOR_SNAPSHOT_GET,\n EDITOR_COMMAND_ID.TRANSFORM_SET,\n EDITOR_COMMAND_ID.SELECTION_SET,\n ],\n fallbackTools: ['playwright', 'chrome'],\n notes: [\n 'Prefer semantic capabilities for known fields; use Inspector UI only when a field has no capability yet.',\n 'Future material, shadow, and rendering property work should add focused capabilities before relying on form automation.',\n ],\n },\n {\n id: 'right-render-tabs',\n label: 'Render / Diagnostics Tabs',\n location: 'right',\n purpose: 'Rendering-oriented panels, diagnostics, and project-specific inspector tabs when present.',\n primaryCapabilities: [\n EDITOR_COMMAND_ID.EDITOR_STATE_GET,\n EDITOR_COMMAND_ID.EDITOR_SNAPSHOT_GET,\n ],\n fallbackTools: ['playwright', 'chrome'],\n notes: [\n 'Treat render tab UI as fallback until rendering/shadow capabilities are added.',\n 'Capture tab screenshots as trace artifacts when using L0 fallback for visual diagnostics.',\n ],\n },\n {\n id: 'bottom-assets',\n label: 'Asset Library',\n location: 'bottom',\n purpose: 'Project asset browsing, asset analysis, and asset placement into the scene.',\n primaryCapabilities: [\n EDITOR_COMMAND_ID.ASSET_LIBRARY_LIST,\n EDITOR_COMMAND_ID.ASSET_INFO_GET,\n EDITOR_COMMAND_ID.ASSET_ANALYSIS_GET,\n EDITOR_COMMAND_ID.PREFAB_RESOLVE,\n EDITOR_COMMAND_ID.PREFAB_STAGE_OPEN,\n EDITOR_COMMAND_ID.PREFAB_STAGE_EXIT,\n EDITOR_COMMAND_ID.OBJECT_CREATE_FROM_ASSET,\n ],\n fallbackTools: ['playwright', 'chrome'],\n notes: [\n 'Use asset.library.list and asset.analysis.get before object.createFromAsset.',\n 'Double-clicking a prefab asset opens the Prefab stage for users; agents should call prefab.resolve then prefab.stage.open.',\n 'Do not drag assets in the browser or hand-edit generated catalogs as the primary placement path.',\n ],\n },\n {\n id: 'bottom-console',\n label: 'Editor Console',\n location: 'bottom-global',\n purpose: 'Session-scoped structured output for editor save, import, compile, run, plugin, and command operations.',\n primaryCapabilities: [\n EDITOR_COMMAND_ID.EDITOR_DIAGNOSTICS_LIST,\n EDITOR_COMMAND_ID.EDITOR_STATE_GET,\n ],\n fallbackTools: ['playwright', 'chrome'],\n notes: [\n 'This Console is Editor-owned operation output and does not intercept browser console.* calls.',\n 'Validation Center remains the revision-aware diagnostics surface and Save/Run gate.',\n 'Command operation and trace details come from the shared Command System.',\n ],\n },\n {\n id: 'command-center',\n label: 'Command Center',\n location: 'overlay',\n purpose: 'Manifest-driven command discovery, schema input, invocation history, and operation diagnostics.',\n primaryCapabilities: [\n EDITOR_COMMAND_ID.EDITOR_STATE_GET,\n ],\n fallbackTools: ['browser', 'playwright', 'chrome'],\n notes: [\n 'Cmd/Ctrl+Shift+P opens the Palette; commands with required input continue in the schema Console.',\n 'Favorites and manual invocation history are local view state and never become document authority.',\n ],\n },\n]);\n\nconst RECOMMENDED_OPERATION_ORDER = Object.freeze([\n 'fps-editor-agent status',\n 'fps-editor-agent commands list/search/describe',\n 'fps-editor-agent command editor.ui.regions.get',\n 'fps-editor-agent command host.editor.enter',\n 'L2 semantic command for the target region',\n 'L0 browser automation only for a missing command, unavailable Browser attachment, page load, or screenshot evidence',\n]);\n\nconst L0_FALLBACK_RULES = Object.freeze([\n 'Do not click Hierarchy rows when selection.set or object.resolve can provide the same semantic result.',\n 'Do not drag the Preview gizmo when transform.move or transform.set can express the edit.',\n 'Do not use browser screenshots for camera setup before trying viewport.camera.setPreset or viewport.camera.orbit.',\n 'Do not drag assets from the bottom panel when object.createFromAsset can place a standard asset.',\n 'When L0 fallback is required, record screenshot paths and console/page errors through Agent Operation Trace.',\n]);\n\nexport function createLocalEditorCommandUiSource<TDocument, TPatch>(\n state: LocalEditorCommandHarnessState<TDocument, TPatch>,\n): LocalEditorCommandUiSource {\n return {\n getRegions() {\n return createEditorCommandUiRegions(state);\n },\n };\n}\n\nfunction createEditorCommandUiRegions<TDocument, TPatch>(\n state: LocalEditorCommandHarnessState<TDocument, TPatch>,\n): EditorCommandUiRegionsGetOutput {\n return {\n mode: state.mode,\n editorReady: state.mode === 'editor' && !!state.session && !state.busy,\n sessionActive: !!state.session,\n regions: EDITOR_COMMAND_WORKSPACE_REGIONS.map(cloneRegion),\n recommendedOperationOrder: [...RECOMMENDED_OPERATION_ORDER],\n l0FallbackRules: [...L0_FALLBACK_RULES],\n };\n}\n\nfunction cloneRegion(region: EditorCommandWorkspaceRegion): EditorCommandWorkspaceRegion {\n return {\n ...region,\n primaryCapabilities: [...region.primaryCapabilities],\n ...(region.fallbackTools ? { fallbackTools: [...region.fallbackTools] } : {}),\n ...(region.notes ? { notes: [...region.notes] } : {}),\n };\n}\n"]}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { LocalEditorCommandViewportSource } from '../source-types.js';
|
|
2
|
+
import { type LocalEditorCommandCapabilitySourceOperations, type LocalEditorCommandHarnessState } from '../shared.js';
|
|
3
|
+
import type { LocalEditorHarnessOptions } from '../../local-editor-harness.js';
|
|
4
|
+
export declare function createLocalEditorCommandViewportSource<TDocument, TPatch, TAsset>(state: LocalEditorCommandHarnessState<TDocument, TPatch>, options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>, renderUi: () => void, operations: LocalEditorCommandCapabilitySourceOperations<TDocument>): LocalEditorCommandViewportSource;
|
|
5
|
+
//# sourceMappingURL=viewport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viewport.d.ts","sourceRoot":"","sources":["../../../src/editor-commands/capabilities/viewport.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EASL,KAAK,4CAA4C,EACjD,KAAK,8BAA8B,EACpC,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAE/E,wBAAgB,sCAAsC,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAC9E,KAAK,EAAE,8BAA8B,CAAC,SAAS,EAAE,MAAM,CAAC,EACxD,OAAO,EAAE,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAC7D,QAAQ,EAAE,MAAM,IAAI,EACpB,UAAU,EAAE,4CAA4C,CAAC,SAAS,CAAC,GAClE,gCAAgC,CA2FlC"}
|