@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,9 @@
|
|
|
1
|
+
import type { EditorCommandRegistration } from './editor-command-system.js';
|
|
2
|
+
declare const COMMAND_COMPOSED_AUTHORITY_REGISTRATION: unique symbol;
|
|
3
|
+
type AuthorizedCommandComposedRegistration<TInput, TOutput> = EditorCommandRegistration<TInput, TOutput> & {
|
|
4
|
+
readonly [COMMAND_COMPOSED_AUTHORITY_REGISTRATION]: true;
|
|
5
|
+
};
|
|
6
|
+
export declare function authorizeCommandComposedRegistration<TInput, TOutput>(registration: EditorCommandRegistration<TInput, TOutput>): AuthorizedCommandComposedRegistration<TInput, TOutput>;
|
|
7
|
+
export declare function isAuthorizedCommandComposedRegistration(registration: EditorCommandRegistration<unknown, unknown>): boolean;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=editor-command-composed-authority.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"editor-command-composed-authority.d.ts","sourceRoot":"","sources":["../src/editor-command-composed-authority.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAE5E,QAAA,MAAM,uCAAuC,eAA+D,CAAC;AAE7G,KAAK,qCAAqC,CAAC,MAAM,EAAE,OAAO,IAAI,yBAAyB,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IACzG,QAAQ,CAAC,CAAC,uCAAuC,CAAC,EAAE,IAAI,CAAC;CAC1D,CAAC;AAEF,wBAAgB,oCAAoC,CAAC,MAAM,EAAE,OAAO,EAClE,YAAY,EAAE,yBAAyB,CAAC,MAAM,EAAE,OAAO,CAAC,GACvD,qCAAqC,CAAC,MAAM,EAAE,OAAO,CAAC,CAQxD;AAED,wBAAgB,uCAAuC,CACrD,YAAY,EAAE,yBAAyB,CAAC,OAAO,EAAE,OAAO,CAAC,GACxD,OAAO,CAGT"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
const COMMAND_COMPOSED_AUTHORITY_REGISTRATION = Symbol('fps.editor.command-composed-authority-registration');
|
|
2
|
+
export function authorizeCommandComposedRegistration(registration) {
|
|
3
|
+
Object.defineProperty(registration, COMMAND_COMPOSED_AUTHORITY_REGISTRATION, {
|
|
4
|
+
value: true,
|
|
5
|
+
enumerable: false,
|
|
6
|
+
configurable: false,
|
|
7
|
+
writable: false,
|
|
8
|
+
});
|
|
9
|
+
return registration;
|
|
10
|
+
}
|
|
11
|
+
export function isAuthorizedCommandComposedRegistration(registration) {
|
|
12
|
+
return registration[COMMAND_COMPOSED_AUTHORITY_REGISTRATION] === true;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=editor-command-composed-authority.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"editor-command-composed-authority.js","sourceRoot":"","sources":["../src/editor-command-composed-authority.ts"],"names":[],"mappings":"AAEA,MAAM,uCAAuC,GAAG,MAAM,CAAC,oDAAoD,CAAC,CAAC;AAM7G,MAAM,UAAU,oCAAoC,CAClD,YAAwD;IAExD,MAAM,CAAC,cAAc,CAAC,YAAY,EAAE,uCAAuC,EAAE;QAC3E,KAAK,EAAE,IAAI;QACX,UAAU,EAAE,KAAK;QACjB,YAAY,EAAE,KAAK;QACnB,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IACH,OAAO,YAAsE,CAAC;AAChF,CAAC;AAED,MAAM,UAAU,uCAAuC,CACrD,YAAyD;IAEzD,OAAQ,YAAiF,CACtF,uCAAuC,CAAC,KAAK,IAAI,CAAC;AACvD,CAAC","sourcesContent":["import type { EditorCommandRegistration } from './editor-command-system.js';\n\nconst COMMAND_COMPOSED_AUTHORITY_REGISTRATION = Symbol('fps.editor.command-composed-authority-registration');\n\ntype AuthorizedCommandComposedRegistration<TInput, TOutput> = EditorCommandRegistration<TInput, TOutput> & {\n readonly [COMMAND_COMPOSED_AUTHORITY_REGISTRATION]: true;\n};\n\nexport function authorizeCommandComposedRegistration<TInput, TOutput>(\n registration: EditorCommandRegistration<TInput, TOutput>,\n): AuthorizedCommandComposedRegistration<TInput, TOutput> {\n Object.defineProperty(registration, COMMAND_COMPOSED_AUTHORITY_REGISTRATION, {\n value: true,\n enumerable: false,\n configurable: false,\n writable: false,\n });\n return registration as AuthorizedCommandComposedRegistration<TInput, TOutput>;\n}\n\nexport function isAuthorizedCommandComposedRegistration(\n registration: EditorCommandRegistration<unknown, unknown>,\n): boolean {\n return (registration as Partial<AuthorizedCommandComposedRegistration<unknown, unknown>>)\n [COMMAND_COMPOSED_AUTHORITY_REGISTRATION] === true;\n}\n"]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { type EditorCommandTrace, type EditorServiceTracePage } from '@fps-games/editor-protocol';
|
|
2
|
+
import type { EditorCommandOperationSettledEvent } from './editor-command-system.js';
|
|
3
|
+
export interface EditorCommandObservabilityStoreOptions {
|
|
4
|
+
readonly maxTraces?: number;
|
|
5
|
+
readonly maxStepsPerTrace?: number;
|
|
6
|
+
readonly maxSummaryCharacters?: number;
|
|
7
|
+
}
|
|
8
|
+
export interface EditorCommandObservabilityStore {
|
|
9
|
+
recordOperation(event: EditorCommandOperationSettledEvent): void;
|
|
10
|
+
read(input: {
|
|
11
|
+
traceId?: string;
|
|
12
|
+
cursor?: string;
|
|
13
|
+
limit: number;
|
|
14
|
+
}): EditorServiceTracePage<EditorCommandTrace>;
|
|
15
|
+
clear(): void;
|
|
16
|
+
}
|
|
17
|
+
export declare function createEditorCommandObservabilityStore(options?: EditorCommandObservabilityStoreOptions): EditorCommandObservabilityStore;
|
|
18
|
+
//# sourceMappingURL=editor-command-observability.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"editor-command-observability.d.ts","sourceRoot":"","sources":["../src/editor-command-observability.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,kBAAkB,EAEvB,KAAK,sBAAsB,EAC5B,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,4BAA4B,CAAC;AAErF,MAAM,WAAW,sCAAsC;IACrD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;CACxC;AAED,MAAM,WAAW,+BAA+B;IAC9C,eAAe,CAAC,KAAK,EAAE,kCAAkC,GAAG,IAAI,CAAC;IACjE,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;IAC9G,KAAK,IAAI,IAAI,CAAC;CACf;AAMD,wBAAgB,qCAAqC,CACnD,OAAO,GAAE,sCAA2C,GACnD,+BAA+B,CAyEjC"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { EDITOR_COMMAND_TRACE_SCHEMA_VERSION, } from '@fps-games/editor-protocol';
|
|
2
|
+
const DEFAULT_MAX_TRACES = 200;
|
|
3
|
+
const DEFAULT_MAX_STEPS = 100;
|
|
4
|
+
const DEFAULT_MAX_SUMMARY_CHARACTERS = 2000;
|
|
5
|
+
export function createEditorCommandObservabilityStore(options = {}) {
|
|
6
|
+
const maxTraces = normalizePositiveInteger(options.maxTraces, DEFAULT_MAX_TRACES);
|
|
7
|
+
const maxSteps = normalizePositiveInteger(options.maxStepsPerTrace, DEFAULT_MAX_STEPS);
|
|
8
|
+
const maxSummaryCharacters = normalizePositiveInteger(options.maxSummaryCharacters, DEFAULT_MAX_SUMMARY_CHARACTERS);
|
|
9
|
+
const traces = new Map();
|
|
10
|
+
return Object.freeze({
|
|
11
|
+
recordOperation(event) {
|
|
12
|
+
const operation = event.operation;
|
|
13
|
+
const traceId = event.invocation.traceId ?? `operation:${operation.operationId}`;
|
|
14
|
+
const createdAt = toTimestamp(operation.createdAt);
|
|
15
|
+
const updatedAt = toTimestamp(operation.completedAt ?? operation.startedAt ?? operation.createdAt);
|
|
16
|
+
const existing = traces.get(traceId);
|
|
17
|
+
const diagnostics = cloneDiagnostics(operation.diagnostics ?? []);
|
|
18
|
+
const actionCommandId = operation.intentCommandId ?? operation.commandId;
|
|
19
|
+
const step = {
|
|
20
|
+
id: event.invocation.traceStepId ?? operation.operationId,
|
|
21
|
+
traceId,
|
|
22
|
+
source: toTraceSource(event.invocation.source),
|
|
23
|
+
layer: event.manifest?.target === 'renderer' ? 'L1' : 'L2',
|
|
24
|
+
action: actionCommandId,
|
|
25
|
+
status: operation.status === 'completed' ? 'ok' : 'failed',
|
|
26
|
+
startedAt: toTimestamp(operation.startedAt ?? operation.createdAt),
|
|
27
|
+
endedAt: updatedAt,
|
|
28
|
+
durationMs: Math.max(0, (operation.completedAt ?? operation.createdAt) - (operation.startedAt ?? operation.createdAt)),
|
|
29
|
+
commandId: operation.commandId,
|
|
30
|
+
...(operation.intentCommandId ? { intentCommandId: operation.intentCommandId } : {}),
|
|
31
|
+
requestId: operation.requestId,
|
|
32
|
+
inputSummary: summarize(event.invocation.input, maxSummaryCharacters),
|
|
33
|
+
...(operation.output !== undefined
|
|
34
|
+
? { outputSummary: summarize(operation.output, maxSummaryCharacters) }
|
|
35
|
+
: {}),
|
|
36
|
+
...(diagnostics.length ? { diagnostics } : {}),
|
|
37
|
+
};
|
|
38
|
+
const steps = [...(existing?.steps ?? []), step].slice(-maxSteps);
|
|
39
|
+
const traceDiagnostics = steps.reduce((count, item) => count + (item.diagnostics?.length ?? 0), 0);
|
|
40
|
+
const trace = {
|
|
41
|
+
schemaVersion: EDITOR_COMMAND_TRACE_SCHEMA_VERSION,
|
|
42
|
+
traceId,
|
|
43
|
+
status: steps.some(item => item.status === 'failed') ? 'failed' : 'ok',
|
|
44
|
+
createdAt: existing?.createdAt ?? createdAt,
|
|
45
|
+
updatedAt,
|
|
46
|
+
stepCount: steps.length,
|
|
47
|
+
diagnosticCount: traceDiagnostics,
|
|
48
|
+
artifactCount: 0,
|
|
49
|
+
lastAction: actionCommandId,
|
|
50
|
+
...(diagnostics[0]?.message ? { lastMessage: diagnostics[0].message } : {}),
|
|
51
|
+
steps,
|
|
52
|
+
};
|
|
53
|
+
traces.delete(traceId);
|
|
54
|
+
traces.set(traceId, trace);
|
|
55
|
+
while (traces.size > maxTraces)
|
|
56
|
+
traces.delete(traces.keys().next().value);
|
|
57
|
+
},
|
|
58
|
+
read(input) {
|
|
59
|
+
const values = input.traceId
|
|
60
|
+
? traces.has(input.traceId) ? [traces.get(input.traceId)] : []
|
|
61
|
+
: [...traces.values()].reverse();
|
|
62
|
+
const offset = decodeCursor(input.cursor);
|
|
63
|
+
const limit = normalizePositiveInteger(input.limit, 100);
|
|
64
|
+
const page = values.slice(offset, offset + limit).map(cloneTrace);
|
|
65
|
+
const nextOffset = offset + page.length;
|
|
66
|
+
return {
|
|
67
|
+
traces: page,
|
|
68
|
+
...(nextOffset < values.length ? { nextCursor: String(nextOffset) } : {}),
|
|
69
|
+
};
|
|
70
|
+
},
|
|
71
|
+
clear() {
|
|
72
|
+
traces.clear();
|
|
73
|
+
},
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
function summarize(value, maxCharacters) {
|
|
77
|
+
let text;
|
|
78
|
+
try {
|
|
79
|
+
text = JSON.stringify(value === undefined ? null : value);
|
|
80
|
+
}
|
|
81
|
+
catch {
|
|
82
|
+
text = '"[unserializable]"';
|
|
83
|
+
}
|
|
84
|
+
return {
|
|
85
|
+
preview: text.length > maxCharacters ? `${text.slice(0, maxCharacters)}…` : text,
|
|
86
|
+
characters: text.length,
|
|
87
|
+
truncated: text.length > maxCharacters,
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
function cloneDiagnostics(diagnostics) {
|
|
91
|
+
return diagnostics.map(diagnostic => structuredClone(diagnostic));
|
|
92
|
+
}
|
|
93
|
+
function cloneTrace(trace) {
|
|
94
|
+
return structuredClone(trace);
|
|
95
|
+
}
|
|
96
|
+
function toTraceSource(source) {
|
|
97
|
+
return source === 'agent-cli' ? 'agent' : 'editor';
|
|
98
|
+
}
|
|
99
|
+
function toTimestamp(value) {
|
|
100
|
+
return new Date(Number.isFinite(value) ? value : 0).toISOString();
|
|
101
|
+
}
|
|
102
|
+
function decodeCursor(cursor) {
|
|
103
|
+
if (cursor === undefined)
|
|
104
|
+
return 0;
|
|
105
|
+
const value = Number(cursor);
|
|
106
|
+
if (!Number.isSafeInteger(value) || value < 0)
|
|
107
|
+
throw new Error('Trace cursor is invalid.');
|
|
108
|
+
return value;
|
|
109
|
+
}
|
|
110
|
+
function normalizePositiveInteger(value, fallback) {
|
|
111
|
+
return Number.isSafeInteger(value) && Number(value) > 0 ? Number(value) : fallback;
|
|
112
|
+
}
|
|
113
|
+
//# sourceMappingURL=editor-command-observability.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"editor-command-observability.js","sourceRoot":"","sources":["../src/editor-command-observability.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n EDITOR_COMMAND_TRACE_SCHEMA_VERSION,\n type EditorCommandDiagnostic,\n type EditorCommandJsonObject,\n type EditorCommandOperationSnapshot,\n type EditorCommandTrace,\n type EditorCommandTraceSource,\n type EditorServiceTracePage,\n} from '@fps-games/editor-protocol';\nimport type { EditorCommandOperationSettledEvent } from './editor-command-system.js';\n\nexport interface EditorCommandObservabilityStoreOptions {\n readonly maxTraces?: number;\n readonly maxStepsPerTrace?: number;\n readonly maxSummaryCharacters?: number;\n}\n\nexport interface EditorCommandObservabilityStore {\n recordOperation(event: EditorCommandOperationSettledEvent): void;\n read(input: { traceId?: string; cursor?: string; limit: number }): EditorServiceTracePage<EditorCommandTrace>;\n clear(): void;\n}\n\nconst DEFAULT_MAX_TRACES = 200;\nconst DEFAULT_MAX_STEPS = 100;\nconst DEFAULT_MAX_SUMMARY_CHARACTERS = 2_000;\n\nexport function createEditorCommandObservabilityStore(\n options: EditorCommandObservabilityStoreOptions = {},\n): EditorCommandObservabilityStore {\n const maxTraces = normalizePositiveInteger(options.maxTraces, DEFAULT_MAX_TRACES);\n const maxSteps = normalizePositiveInteger(options.maxStepsPerTrace, DEFAULT_MAX_STEPS);\n const maxSummaryCharacters = normalizePositiveInteger(\n options.maxSummaryCharacters,\n DEFAULT_MAX_SUMMARY_CHARACTERS,\n );\n const traces = new Map<string, EditorCommandTrace>();\n\n return Object.freeze({\n recordOperation(event: EditorCommandOperationSettledEvent) {\n const operation = event.operation;\n const traceId = event.invocation.traceId ?? `operation:${operation.operationId}`;\n const createdAt = toTimestamp(operation.createdAt);\n const updatedAt = toTimestamp(operation.completedAt ?? operation.startedAt ?? operation.createdAt);\n const existing = traces.get(traceId);\n const diagnostics = cloneDiagnostics(operation.diagnostics ?? []);\n const actionCommandId = operation.intentCommandId ?? operation.commandId;\n const step = {\n id: event.invocation.traceStepId ?? operation.operationId,\n traceId,\n source: toTraceSource(event.invocation.source),\n layer: event.manifest?.target === 'renderer' ? 'L1' as const : 'L2' as const,\n action: actionCommandId,\n status: operation.status === 'completed' ? 'ok' as const : 'failed' as const,\n startedAt: toTimestamp(operation.startedAt ?? operation.createdAt),\n endedAt: updatedAt,\n durationMs: Math.max(0, (operation.completedAt ?? operation.createdAt) - (operation.startedAt ?? operation.createdAt)),\n commandId: operation.commandId,\n ...(operation.intentCommandId ? { intentCommandId: operation.intentCommandId } : {}),\n requestId: operation.requestId,\n inputSummary: summarize(event.invocation.input, maxSummaryCharacters),\n ...(operation.output !== undefined\n ? { outputSummary: summarize(operation.output, maxSummaryCharacters) }\n : {}),\n ...(diagnostics.length ? { diagnostics } : {}),\n };\n const steps = [...(existing?.steps ?? []), step].slice(-maxSteps);\n const traceDiagnostics = steps.reduce((count, item) => count + (item.diagnostics?.length ?? 0), 0);\n const trace: EditorCommandTrace = {\n schemaVersion: EDITOR_COMMAND_TRACE_SCHEMA_VERSION,\n traceId,\n status: steps.some(item => item.status === 'failed') ? 'failed' : 'ok',\n createdAt: existing?.createdAt ?? createdAt,\n updatedAt,\n stepCount: steps.length,\n diagnosticCount: traceDiagnostics,\n artifactCount: 0,\n lastAction: actionCommandId,\n ...(diagnostics[0]?.message ? { lastMessage: diagnostics[0].message } : {}),\n steps,\n };\n traces.delete(traceId);\n traces.set(traceId, trace);\n while (traces.size > maxTraces) traces.delete(traces.keys().next().value as string);\n },\n read(input: { traceId?: string; cursor?: string; limit: number }) {\n const values = input.traceId\n ? traces.has(input.traceId) ? [traces.get(input.traceId)!] : []\n : [...traces.values()].reverse();\n const offset = decodeCursor(input.cursor);\n const limit = normalizePositiveInteger(input.limit, 100);\n const page = values.slice(offset, offset + limit).map(cloneTrace);\n const nextOffset = offset + page.length;\n return {\n traces: page,\n ...(nextOffset < values.length ? { nextCursor: String(nextOffset) } : {}),\n };\n },\n clear() {\n traces.clear();\n },\n });\n}\n\nfunction summarize(value: unknown, maxCharacters: number): EditorCommandJsonObject {\n let text: string;\n try {\n text = JSON.stringify(value === undefined ? null : value);\n } catch {\n text = '\"[unserializable]\"';\n }\n return {\n preview: text.length > maxCharacters ? `${text.slice(0, maxCharacters)}…` : text,\n characters: text.length,\n truncated: text.length > maxCharacters,\n };\n}\n\nfunction cloneDiagnostics(diagnostics: readonly EditorCommandDiagnostic[]): EditorCommandDiagnostic[] {\n return diagnostics.map(diagnostic => structuredClone(diagnostic));\n}\n\nfunction cloneTrace(trace: EditorCommandTrace): EditorCommandTrace {\n return structuredClone(trace);\n}\n\nfunction toTraceSource(source: string): EditorCommandTraceSource {\n return source === 'agent-cli' ? 'agent' : 'editor';\n}\n\nfunction toTimestamp(value: number): string {\n return new Date(Number.isFinite(value) ? value : 0).toISOString();\n}\n\nfunction decodeCursor(cursor: string | undefined): number {\n if (cursor === undefined) return 0;\n const value = Number(cursor);\n if (!Number.isSafeInteger(value) || value < 0) throw new Error('Trace cursor is invalid.');\n return value;\n}\n\nfunction normalizePositiveInteger(value: number | undefined, fallback: number): number {\n return Number.isSafeInteger(value) && Number(value) > 0 ? Number(value) : fallback;\n}\n"]}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { type EditorCommandAvailability, type EditorCommandCatalogSnapshot, type EditorCommandDiagnostic, type EditorCommandExecutionResult, type EditorCommandInvocation, type EditorCommandManifest, type EditorCommandOperationSnapshot } from '@fps-games/editor-protocol';
|
|
2
|
+
export type EditorCommandMaybePromise<T> = T | Promise<T>;
|
|
3
|
+
export interface EditorCommandHandlerContext extends EditorCommandInvocation {
|
|
4
|
+
readonly operationId: string;
|
|
5
|
+
readonly manifest: EditorCommandManifest;
|
|
6
|
+
readonly signal: AbortSignal;
|
|
7
|
+
/** Host-owned composed handlers use an already-admitted authoring transaction. */
|
|
8
|
+
readonly authorityTransaction?: 'isolated' | 'composed';
|
|
9
|
+
/** Opaque Host-issued access for the currently serialized external command handler. */
|
|
10
|
+
readonly authorityContext?: unknown;
|
|
11
|
+
}
|
|
12
|
+
export type EditorCommandHandlerOutcome<TOutput = unknown> = {
|
|
13
|
+
ok: true;
|
|
14
|
+
output: TOutput;
|
|
15
|
+
diagnostics?: readonly EditorCommandDiagnostic[];
|
|
16
|
+
} | {
|
|
17
|
+
ok: false;
|
|
18
|
+
diagnostics: readonly EditorCommandDiagnostic[];
|
|
19
|
+
};
|
|
20
|
+
export interface EditorCommandRegistration<TInput = unknown, TOutput = unknown> {
|
|
21
|
+
readonly manifest: EditorCommandManifest;
|
|
22
|
+
readonly available?: () => EditorCommandMaybePromise<boolean | string | EditorCommandAvailability>;
|
|
23
|
+
readonly handler: (input: TInput, context: EditorCommandHandlerContext) => EditorCommandMaybePromise<EditorCommandHandlerOutcome<TOutput>>;
|
|
24
|
+
/** Command capability adapters may defer validation to their existing handler. */
|
|
25
|
+
readonly validateInput?: boolean;
|
|
26
|
+
/** Command capability adapters may return an capability result envelope. */
|
|
27
|
+
readonly validateOutput?: boolean;
|
|
28
|
+
/** External command adapter for handlers that still own their Session mutation path. */
|
|
29
|
+
readonly authorityTransaction?: 'isolated' | 'composed';
|
|
30
|
+
}
|
|
31
|
+
export interface EditorCommandExecutionInterceptorContext extends EditorCommandHandlerContext {
|
|
32
|
+
}
|
|
33
|
+
export type EditorCommandExecutionInterceptor = (context: EditorCommandExecutionInterceptorContext, execute: (authorityContext?: unknown) => Promise<EditorCommandHandlerOutcome<unknown>>) => Promise<EditorCommandHandlerOutcome<unknown>>;
|
|
34
|
+
export interface EditorCommandCatalogQuery {
|
|
35
|
+
readonly text?: string;
|
|
36
|
+
readonly limit?: number;
|
|
37
|
+
readonly target?: EditorCommandManifest['target'];
|
|
38
|
+
readonly access?: EditorCommandManifest['access'];
|
|
39
|
+
}
|
|
40
|
+
export interface EditorCommandInvocationHandle<TOutput = unknown> {
|
|
41
|
+
readonly operationId: string;
|
|
42
|
+
readonly requestId: string;
|
|
43
|
+
readonly reused: boolean;
|
|
44
|
+
readonly completion: Promise<EditorCommandExecutionResult<TOutput>>;
|
|
45
|
+
}
|
|
46
|
+
export interface EditorCommandSystem {
|
|
47
|
+
readonly catalogRevision: number;
|
|
48
|
+
readonly executionAuthorityInstalled: boolean;
|
|
49
|
+
registerCommand<TInput = unknown, TOutput = unknown>(registration: EditorCommandRegistration<TInput, TOutput>): () => void;
|
|
50
|
+
/** Installs the process-local execution authority. Only one owner may be active. */
|
|
51
|
+
installExecutionInterceptor(interceptor: EditorCommandExecutionInterceptor, options?: {
|
|
52
|
+
scopeId?: string;
|
|
53
|
+
}): () => void;
|
|
54
|
+
listManifests(): EditorCommandManifest[];
|
|
55
|
+
getCatalog(query?: EditorCommandCatalogQuery): Promise<EditorCommandCatalogSnapshot>;
|
|
56
|
+
describeCommand(commandId: string): Promise<EditorCommandCatalogSnapshot['commands'][number] | null>;
|
|
57
|
+
invoke<TOutput = unknown>(invocation: EditorCommandInvocation): EditorCommandInvocationHandle<TOutput>;
|
|
58
|
+
execute<TOutput = unknown>(invocation: EditorCommandInvocation): Promise<EditorCommandExecutionResult<TOutput>>;
|
|
59
|
+
getOperation<TOutput = unknown>(operationId: string): EditorCommandOperationSnapshot<TOutput> | null;
|
|
60
|
+
cancelOperation(operationId: string): boolean;
|
|
61
|
+
dispose(): void;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Invocation/catalog surface exposed by an authoring Host. Registration and
|
|
65
|
+
* execution-authority ownership stay private to the Host.
|
|
66
|
+
*/
|
|
67
|
+
export type EditorCommandClient = Pick<EditorCommandSystem, 'catalogRevision' | 'executionAuthorityInstalled' | 'listManifests' | 'getCatalog' | 'describeCommand' | 'invoke' | 'execute' | 'getOperation' | 'cancelOperation'>;
|
|
68
|
+
export interface CreateEditorCommandSystemOptions {
|
|
69
|
+
readonly now?: () => number;
|
|
70
|
+
readonly createOperationId?: () => string;
|
|
71
|
+
readonly maxRetainedOperations?: number;
|
|
72
|
+
readonly maxResultBytes?: number;
|
|
73
|
+
readonly onOperationSettled?: (event: EditorCommandOperationSettledEvent) => void;
|
|
74
|
+
}
|
|
75
|
+
export interface EditorCommandOperationSettledEvent {
|
|
76
|
+
readonly invocation: EditorCommandInvocation;
|
|
77
|
+
readonly manifest?: EditorCommandManifest;
|
|
78
|
+
readonly operation: EditorCommandExecutionResult<unknown>;
|
|
79
|
+
}
|
|
80
|
+
export declare function createEditorCommandSystem(options?: CreateEditorCommandSystemOptions): EditorCommandSystem;
|
|
81
|
+
export declare function snapshotEditorCommandManifest(manifest: EditorCommandManifest): EditorCommandManifest;
|
|
82
|
+
//# sourceMappingURL=editor-command-system.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"editor-command-system.d.ts","sourceRoot":"","sources":["../src/editor-command-system.ts"],"names":[],"mappings":"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"}
|