@fps-games/editor 0.2.0-beta.2 → 0.2.0-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.
Files changed (652) hide show
  1. package/dist/agent-bridge/capabilities/assets.js.map +1 -1
  2. package/dist/agent-bridge/capabilities/editor-state.d.ts.map +1 -1
  3. package/dist/agent-bridge/capabilities/editor-state.js +26 -17
  4. package/dist/agent-bridge/capabilities/editor-state.js.map +1 -1
  5. package/dist/agent-bridge/capabilities/host-lifecycle.js.map +1 -1
  6. package/dist/agent-bridge/capabilities/prefabs.d.ts.map +1 -1
  7. package/dist/agent-bridge/capabilities/prefabs.js +61 -13
  8. package/dist/agent-bridge/capabilities/prefabs.js.map +1 -1
  9. package/dist/agent-bridge/capabilities/scene-objects.d.ts +1 -1
  10. package/dist/agent-bridge/capabilities/scene-objects.d.ts.map +1 -1
  11. package/dist/agent-bridge/capabilities/scene-objects.js +110 -25
  12. package/dist/agent-bridge/capabilities/scene-objects.js.map +1 -1
  13. package/dist/agent-bridge/capabilities/selection.d.ts.map +1 -1
  14. package/dist/agent-bridge/capabilities/selection.js +8 -5
  15. package/dist/agent-bridge/capabilities/selection.js.map +1 -1
  16. package/dist/agent-bridge/capabilities/shadows.d.ts.map +1 -1
  17. package/dist/agent-bridge/capabilities/shadows.js +11 -2
  18. package/dist/agent-bridge/capabilities/shadows.js.map +1 -1
  19. package/dist/agent-bridge/capabilities/transform.d.ts.map +1 -1
  20. package/dist/agent-bridge/capabilities/transform.js +6 -4
  21. package/dist/agent-bridge/capabilities/transform.js.map +1 -1
  22. package/dist/agent-bridge/capabilities/ui-regions.js.map +1 -1
  23. package/dist/agent-bridge/capabilities/viewport.d.ts.map +1 -1
  24. package/dist/agent-bridge/capabilities/viewport.js +79 -47
  25. package/dist/agent-bridge/capabilities/viewport.js.map +1 -1
  26. package/dist/agent-bridge/capability-sources.js.map +1 -1
  27. package/dist/agent-bridge/diagnostics.js.map +1 -1
  28. package/dist/agent-bridge/index.js.map +1 -1
  29. package/dist/agent-bridge/register.js.map +1 -1
  30. package/dist/agent-bridge/shared.d.ts +8 -3
  31. package/dist/agent-bridge/shared.d.ts.map +1 -1
  32. package/dist/agent-bridge/shared.js +32 -0
  33. package/dist/agent-bridge/shared.js.map +1 -1
  34. package/dist/agent-bridge/source-types.js.map +1 -1
  35. package/dist/authoring-apply.js.map +1 -1
  36. package/dist/build-info.json +48 -48
  37. package/dist/editor-plugin-agent-capabilities.js.map +1 -1
  38. package/dist/editor-plugin-hierarchy-command.js.map +1 -1
  39. package/dist/index.js.map +1 -1
  40. package/dist/internal/local-editor-lifecycle-operations.js.map +1 -1
  41. package/dist/local-editor-agent-actions.d.ts.map +1 -1
  42. package/dist/local-editor-agent-actions.js +9 -5
  43. package/dist/local-editor-agent-actions.js.map +1 -1
  44. package/dist/local-editor-agent-bridge-transport.js.map +1 -1
  45. package/dist/local-editor-agent-bridge.js.map +1 -1
  46. package/dist/local-editor-agent-context.js.map +1 -1
  47. package/dist/local-editor-harness.d.ts +57 -1
  48. package/dist/local-editor-harness.d.ts.map +1 -1
  49. package/dist/local-editor-harness.js +393 -41
  50. package/dist/local-editor-harness.js.map +1 -1
  51. package/dist/local-editor-marker-graph.js.map +1 -1
  52. package/dist/local-editor-performance-stats.js.map +1 -1
  53. package/dist/local-editor-plugin-inspector.js.map +1 -1
  54. package/dist/local-editor-plugin-panel.js.map +1 -1
  55. package/dist/local-editor-scene-render-scheduler.js.map +1 -1
  56. package/dist/local-editor-scene-view-interaction-runtime.js.map +1 -1
  57. package/dist/local-editor-viewport-render-coordinator.js.map +1 -1
  58. package/dist/playable-babylon-facade.js.map +1 -1
  59. package/dist/playable-babylon-outline-inspector.js.map +1 -1
  60. package/dist/playable-babylon-outline-runtime.js.map +1 -1
  61. package/dist/playable-babylon-rendering.js.map +1 -1
  62. package/dist/playable-local-editor-host.d.ts +36 -0
  63. package/dist/playable-local-editor-host.d.ts.map +1 -1
  64. package/dist/playable-local-editor-host.js.map +1 -1
  65. package/dist/playable-product-local-editor.js.map +1 -1
  66. package/dist/playable-product-projection-preview.js.map +1 -1
  67. package/dist/playable-product-rendering.js.map +1 -1
  68. package/dist/playable-product-scene-capabilities.d.ts.map +1 -1
  69. package/dist/playable-product-scene-capabilities.js +49 -2
  70. package/dist/playable-product-scene-capabilities.js.map +1 -1
  71. package/dist/playable-runtime-babylon.js.map +1 -1
  72. package/dist/playable-runtime.js.map +1 -1
  73. package/dist/playable-sdk-upgrade-doctor.js.map +1 -1
  74. package/dist/playable-sdk-vite.js.map +1 -1
  75. package/dist/playable-sdk.js.map +1 -1
  76. package/dist/playable-standard-project.js.map +1 -1
  77. package/dist/static-shadow-cpu-worker.js.map +1 -1
  78. package/dist/vite.js.map +1 -1
  79. package/node_modules/@fps-games/babylon-renderer/dist/environment/environment-texture-controller.js.map +1 -1
  80. package/node_modules/@fps-games/babylon-renderer/dist/environment/index.js.map +1 -1
  81. package/node_modules/@fps-games/babylon-renderer/dist/environment/profile.js.map +1 -1
  82. package/node_modules/@fps-games/babylon-renderer/dist/environment/types.js.map +1 -1
  83. package/node_modules/@fps-games/babylon-renderer/dist/index.js.map +1 -1
  84. package/node_modules/@fps-games/babylon-renderer/dist/lighting/directional-light-angles.js.map +1 -1
  85. package/node_modules/@fps-games/babylon-renderer/dist/outlines/babylon-default/apply.js.map +1 -1
  86. package/node_modules/@fps-games/babylon-renderer/dist/outlines/babylon-default/index.js.map +1 -1
  87. package/node_modules/@fps-games/babylon-renderer/dist/outlines/babylon-default/types.js.map +1 -1
  88. package/node_modules/@fps-games/babylon-renderer/dist/outlines/index.js.map +1 -1
  89. package/node_modules/@fps-games/babylon-renderer/dist/outlines/types.js.map +1 -1
  90. package/node_modules/@fps-games/babylon-renderer/dist/placement/index.js.map +1 -1
  91. package/node_modules/@fps-games/babylon-renderer/dist/placement/runtime-drop-position.js.map +1 -1
  92. package/node_modules/@fps-games/babylon-renderer/dist/plugin.js.map +1 -1
  93. package/node_modules/@fps-games/babylon-renderer/dist/post-process/babylon-default-pipeline.js.map +1 -1
  94. package/node_modules/@fps-games/babylon-renderer/dist/post-process/index.js.map +1 -1
  95. package/node_modules/@fps-games/babylon-renderer/dist/post-process/profile.js.map +1 -1
  96. package/node_modules/@fps-games/babylon-renderer/dist/post-process/types.js.map +1 -1
  97. package/node_modules/@fps-games/babylon-renderer/dist/post-process/volume-stack.js.map +1 -1
  98. package/node_modules/@fps-games/babylon-renderer/dist/reference.js.map +1 -1
  99. package/node_modules/@fps-games/babylon-renderer/dist/rendering/index.js.map +1 -1
  100. package/node_modules/@fps-games/babylon-renderer/dist/rendering/node-rendering.js.map +1 -1
  101. package/node_modules/@fps-games/babylon-renderer/dist/shadows/blob-shadow-shaders.js.map +1 -1
  102. package/node_modules/@fps-games/babylon-renderer/dist/shadows/blob-shadow-system.js.map +1 -1
  103. package/node_modules/@fps-games/babylon-renderer/dist/shadows/dynamic-shadow-system.js.map +1 -1
  104. package/node_modules/@fps-games/babylon-renderer/dist/shadows/planar-shadow-shaders.js.map +1 -1
  105. package/node_modules/@fps-games/babylon-renderer/dist/shadows/planar-shadow-system.js.map +1 -1
  106. package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-artifact-system.js.map +1 -1
  107. package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-atlas.js.map +1 -1
  108. package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-bake.js.map +1 -1
  109. package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-baker.js.map +1 -1
  110. package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-options.js.map +1 -1
  111. package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-rendering.js.map +1 -1
  112. package/node_modules/@fps-games/babylon-renderer/dist/shadows/types.js.map +1 -1
  113. package/node_modules/@fps-games/babylon-renderer/package.json +7 -7
  114. package/node_modules/@fps-games/editor-babylon/dist/camera-controller.js.map +1 -1
  115. package/node_modules/@fps-games/editor-babylon/dist/edit-session.js.map +1 -1
  116. package/node_modules/@fps-games/editor-babylon/dist/editor-sky.js.map +1 -1
  117. package/node_modules/@fps-games/editor-babylon/dist/editor-world.js.map +1 -1
  118. package/node_modules/@fps-games/editor-babylon/dist/event-guard.js.map +1 -1
  119. package/node_modules/@fps-games/editor-babylon/dist/index.js.map +1 -1
  120. package/node_modules/@fps-games/editor-babylon/dist/infinite-grid-layer.js.map +1 -1
  121. package/node_modules/@fps-games/editor-babylon/dist/infinite-grid.js.map +1 -1
  122. package/node_modules/@fps-games/editor-babylon/dist/input-controller.js.map +1 -1
  123. package/node_modules/@fps-games/editor-babylon/dist/inspector-adapter.js.map +1 -1
  124. package/node_modules/@fps-games/editor-babylon/dist/inspector-host.js.map +1 -1
  125. package/node_modules/@fps-games/editor-babylon/dist/main-camera-preview.js.map +1 -1
  126. package/node_modules/@fps-games/editor-babylon/dist/marker-overlay.js.map +1 -1
  127. package/node_modules/@fps-games/editor-babylon/dist/material-property-adapter.js.map +1 -1
  128. package/node_modules/@fps-games/editor-babylon/dist/material-slot-source-resolver.js.map +1 -1
  129. package/node_modules/@fps-games/editor-babylon/dist/monitor.js.map +1 -1
  130. package/node_modules/@fps-games/editor-babylon/dist/outline-adapter.js.map +1 -1
  131. package/node_modules/@fps-games/editor-babylon/dist/performance-monitor.js.map +1 -1
  132. package/node_modules/@fps-games/editor-babylon/dist/prefab-comparison-preview-controller.js.map +1 -1
  133. package/node_modules/@fps-games/editor-babylon/dist/primitive-projection-instancing.js.map +1 -1
  134. package/node_modules/@fps-games/editor-babylon/dist/projection-asset-container-importer.js.map +1 -1
  135. package/node_modules/@fps-games/editor-babylon/dist/projection-pick-resolver.js.map +1 -1
  136. package/node_modules/@fps-games/editor-babylon/dist/projection-selection-controller.js.map +1 -1
  137. package/node_modules/@fps-games/editor-babylon/dist/projection-source-owner-path.js.map +1 -1
  138. package/node_modules/@fps-games/editor-babylon/dist/projection.js.map +1 -1
  139. package/node_modules/@fps-games/editor-babylon/dist/runtime-globals.js.map +1 -1
  140. package/node_modules/@fps-games/editor-babylon/dist/scene-camera-preview.js.map +1 -1
  141. package/node_modules/@fps-games/editor-babylon/dist/scene-view-camera-controller.js.map +1 -1
  142. package/node_modules/@fps-games/editor-babylon/dist/scene-view-input-controller.js.map +1 -1
  143. package/node_modules/@fps-games/editor-babylon/dist/scene-view-measurement-controller.js.map +1 -1
  144. package/node_modules/@fps-games/editor-babylon/dist/scene-view-spatial-overlay-controller.js.map +1 -1
  145. package/node_modules/@fps-games/editor-babylon/dist/selection-controller.js.map +1 -1
  146. package/node_modules/@fps-games/editor-babylon/dist/shadow-preview-controller.js.map +1 -1
  147. package/node_modules/@fps-games/editor-babylon/dist/tool-controller.js.map +1 -1
  148. package/node_modules/@fps-games/editor-babylon/dist/transform-gizmo-controller.js.map +1 -1
  149. package/node_modules/@fps-games/editor-babylon/dist/transform-solver.js.map +1 -1
  150. package/node_modules/@fps-games/editor-babylon/dist/types.js.map +1 -1
  151. package/node_modules/@fps-games/editor-babylon/package.json +5 -5
  152. package/node_modules/@fps-games/editor-browser/dist/index.d.ts +3 -1
  153. package/node_modules/@fps-games/editor-browser/dist/index.d.ts.map +1 -1
  154. package/node_modules/@fps-games/editor-browser/dist/index.js +2 -0
  155. package/node_modules/@fps-games/editor-browser/dist/index.js.map +1 -1
  156. package/node_modules/@fps-games/editor-browser/dist/local-editor-inspector-clipboard.js.map +1 -1
  157. package/node_modules/@fps-games/editor-browser/dist/local-editor-inspector-groups.js.map +1 -1
  158. package/node_modules/@fps-games/editor-browser/dist/local-editor-rendering-actions.js.map +1 -1
  159. package/node_modules/@fps-games/editor-browser/dist/local-editor-root-ownership.js.map +1 -1
  160. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-asset-kind.js.map +1 -1
  161. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-context-menu.js.map +1 -1
  162. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-dock-panel.js.map +1 -1
  163. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-actions.js.map +1 -1
  164. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-attach-dialog.js.map +1 -1
  165. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-auto-scroll.js.map +1 -1
  166. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-command-adapter.js.map +1 -1
  167. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.d.ts +2 -1
  168. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.d.ts.map +1 -1
  169. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.js +260 -94
  170. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.js.map +1 -1
  171. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-drag-policy.js.map +1 -1
  172. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-projection.d.ts +7 -0
  173. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-projection.d.ts.map +1 -0
  174. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-projection.js +186 -0
  175. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-projection.js.map +1 -0
  176. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-scope.d.ts +2 -2
  177. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-scope.d.ts.map +1 -1
  178. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-scope.js +14 -8
  179. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-scope.js.map +1 -1
  180. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-tree.d.ts.map +1 -1
  181. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-tree.js +23 -7
  182. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-tree.js.map +1 -1
  183. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view.js.map +1 -1
  184. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-icons.d.ts +1 -1
  185. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-icons.d.ts.map +1 -1
  186. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-icons.js +6 -0
  187. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-icons.js.map +1 -1
  188. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-input-router.d.ts +3 -0
  189. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-input-router.d.ts.map +1 -1
  190. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-input-router.js +60 -13
  191. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-input-router.js.map +1 -1
  192. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-modal-dialog.js.map +1 -1
  193. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panel-registry.js.map +1 -1
  194. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.js.map +1 -1
  195. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-plugin-panel.js.map +1 -1
  196. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-prefab-stage.js.map +1 -1
  197. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-primitives.js.map +1 -1
  198. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shared.js.map +1 -1
  199. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shortcuts.js.map +1 -1
  200. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-status-diagnostics.d.ts +24 -0
  201. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-status-diagnostics.d.ts.map +1 -0
  202. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-status-diagnostics.js +69 -0
  203. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-status-diagnostics.js.map +1 -0
  204. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-structured-drag-auto-scroll.js.map +1 -1
  205. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-structured-drag-policy.js.map +1 -1
  206. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-structured-drag-preview.js.map +1 -1
  207. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-structured-drag-session.js.map +1 -1
  208. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-theme.js.map +1 -1
  209. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-tooltip.js.map +1 -1
  210. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.d.ts +58 -14
  211. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.d.ts.map +1 -1
  212. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.js.map +1 -1
  213. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-workbench.js.map +1 -1
  214. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.d.ts +1 -1
  215. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.d.ts.map +1 -1
  216. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.js +196 -11
  217. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.js.map +1 -1
  218. package/node_modules/@fps-games/editor-browser/dist/plugin-contributions.js.map +1 -1
  219. package/node_modules/@fps-games/editor-browser/dist/runtime-camera-debug-panel.js.map +1 -1
  220. package/node_modules/@fps-games/editor-browser/dist/runtime-debug-panel-shell.js.map +1 -1
  221. package/node_modules/@fps-games/editor-browser/dist/runtime-lighting-debug-panel.js.map +1 -1
  222. package/node_modules/@fps-games/editor-browser/package.json +4 -4
  223. package/node_modules/@fps-games/editor-core/dist/agent-bridge.js.map +1 -1
  224. package/node_modules/@fps-games/editor-core/dist/agent-interaction.js.map +1 -1
  225. package/node_modules/@fps-games/editor-core/dist/authoring-source.js.map +1 -1
  226. package/node_modules/@fps-games/editor-core/dist/document-adapter.js.map +1 -1
  227. package/node_modules/@fps-games/editor-core/dist/editor-plugin-host.js.map +1 -1
  228. package/node_modules/@fps-games/editor-core/dist/editor-session.d.ts +9 -1
  229. package/node_modules/@fps-games/editor-core/dist/editor-session.d.ts.map +1 -1
  230. package/node_modules/@fps-games/editor-core/dist/editor-session.js +18 -0
  231. package/node_modules/@fps-games/editor-core/dist/editor-session.js.map +1 -1
  232. package/node_modules/@fps-games/editor-core/dist/events.d.ts +1 -1
  233. package/node_modules/@fps-games/editor-core/dist/events.d.ts.map +1 -1
  234. package/node_modules/@fps-games/editor-core/dist/events.js.map +1 -1
  235. package/node_modules/@fps-games/editor-core/dist/field-schema/index.js.map +1 -1
  236. package/node_modules/@fps-games/editor-core/dist/field-schema/resolver.js.map +1 -1
  237. package/node_modules/@fps-games/editor-core/dist/field-schema/schema.js.map +1 -1
  238. package/node_modules/@fps-games/editor-core/dist/field-schema/types.js.map +1 -1
  239. package/node_modules/@fps-games/editor-core/dist/field-schema/validators.js.map +1 -1
  240. package/node_modules/@fps-games/editor-core/dist/host-services.js.map +1 -1
  241. package/node_modules/@fps-games/editor-core/dist/index.js.map +1 -1
  242. package/node_modules/@fps-games/editor-core/dist/inspector.js.map +1 -1
  243. package/node_modules/@fps-games/editor-core/dist/lifecycle.js.map +1 -1
  244. package/node_modules/@fps-games/editor-core/dist/marker-graph.js.map +1 -1
  245. package/node_modules/@fps-games/editor-core/dist/scene-graph.js.map +1 -1
  246. package/node_modules/@fps-games/editor-core/dist/scene-view-input.js.map +1 -1
  247. package/node_modules/@fps-games/editor-core/dist/selection-strategy.js.map +1 -1
  248. package/node_modules/@fps-games/editor-core/dist/serialized-object.js.map +1 -1
  249. package/node_modules/@fps-games/editor-core/dist/transform-command.js.map +1 -1
  250. package/node_modules/@fps-games/editor-core/dist/transform-gizmo.js.map +1 -1
  251. package/node_modules/@fps-games/editor-core/dist/transform-operation-policy.js.map +1 -1
  252. package/node_modules/@fps-games/editor-core/dist/transform-operations.js.map +1 -1
  253. package/node_modules/@fps-games/editor-core/dist/viewport-tools.js.map +1 -1
  254. package/node_modules/@fps-games/editor-core/package.json +6 -6
  255. package/node_modules/@fps-games/editor-forge-play/dist/agent-transport.js.map +1 -1
  256. package/node_modules/@fps-games/editor-forge-play/dist/index.js.map +1 -1
  257. package/node_modules/@fps-games/editor-forge-play/package.json +2 -2
  258. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/drop-cache.js.map +1 -1
  259. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/index.js.map +1 -1
  260. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/payload.d.ts.map +1 -1
  261. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/payload.js +28 -5
  262. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/payload.js.map +1 -1
  263. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/types.d.ts +1 -0
  264. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/types.d.ts.map +1 -1
  265. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/types.js.map +1 -1
  266. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/config.js.map +1 -1
  267. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/generated-module.js.map +1 -1
  268. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/index.js.map +1 -1
  269. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/managed-facade.js.map +1 -1
  270. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/manager-core.d.ts.map +1 -1
  271. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/manager-core.js +13 -1
  272. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/manager-core.js.map +1 -1
  273. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/metadata.js.map +1 -1
  274. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/node.js.map +1 -1
  275. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.d.ts +1 -0
  276. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.d.ts.map +1 -1
  277. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.js +58 -23
  278. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.js.map +1 -1
  279. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/types.js.map +1 -1
  280. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/catalog.js.map +1 -1
  281. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/document.js.map +1 -1
  282. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/index.js.map +1 -1
  283. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/types.js.map +1 -1
  284. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/document.js.map +1 -1
  285. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/identity.js.map +1 -1
  286. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/index.js.map +1 -1
  287. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/managed-runtime-instance.js.map +1 -1
  288. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/placement.js.map +1 -1
  289. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/runtime-scene.js.map +1 -1
  290. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/types.js.map +1 -1
  291. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/index.js.map +1 -1
  292. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/result.d.ts.map +1 -1
  293. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/result.js +3 -0
  294. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/result.js.map +1 -1
  295. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/transport.js.map +1 -1
  296. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/types.d.ts +1 -0
  297. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/types.d.ts.map +1 -1
  298. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/types.js.map +1 -1
  299. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/workflow.d.ts +1 -0
  300. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/workflow.d.ts.map +1 -1
  301. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/workflow.js +7 -1
  302. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/workflow.js.map +1 -1
  303. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring/constants.js.map +1 -1
  304. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring/drift.js.map +1 -1
  305. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring/index.js.map +1 -1
  306. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring/runtime-transform-patch.js.map +1 -1
  307. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring/source.js.map +1 -1
  308. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-client/client.js.map +1 -1
  309. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-client/index.js.map +1 -1
  310. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-client/types.js.map +1 -1
  311. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/handler.js.map +1 -1
  312. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/index.js.map +1 -1
  313. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/payload.js.map +1 -1
  314. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/response.js.map +1 -1
  315. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/routes.js.map +1 -1
  316. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/types.js.map +1 -1
  317. package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/adapter-dispatcher.js.map +1 -1
  318. package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/index.js.map +1 -1
  319. package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/payload.js.map +1 -1
  320. package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/project-asset-adapter.js.map +1 -1
  321. package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/protocol.js.map +1 -1
  322. package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/readers.js.map +1 -1
  323. package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/types.js.map +1 -1
  324. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/binding.js.map +1 -1
  325. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/fields.js.map +1 -1
  326. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/index.js.map +1 -1
  327. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/math.js.map +1 -1
  328. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/pan.js.map +1 -1
  329. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/panel-format.js.map +1 -1
  330. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/panel-state.js.map +1 -1
  331. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/panel-storage.js.map +1 -1
  332. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/panel-text.js.map +1 -1
  333. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/rig.js.map +1 -1
  334. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/save-patch.js.map +1 -1
  335. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/snapshot.js.map +1 -1
  336. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/types.js.map +1 -1
  337. package/node_modules/@fps-games/editor-playable-sdk/dist/commands/index.js.map +1 -1
  338. package/node_modules/@fps-games/editor-playable-sdk/dist/commands/transform.js.map +1 -1
  339. package/node_modules/@fps-games/editor-playable-sdk/dist/commands/types.js.map +1 -1
  340. package/node_modules/@fps-games/editor-playable-sdk/dist/core-contracts/index.js.map +1 -1
  341. package/node_modules/@fps-games/editor-playable-sdk/dist/document/helpers.js.map +1 -1
  342. package/node_modules/@fps-games/editor-playable-sdk/dist/document/index.js.map +1 -1
  343. package/node_modules/@fps-games/editor-playable-sdk/dist/document/types.js.map +1 -1
  344. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/index.js.map +1 -1
  345. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/resolver.js.map +1 -1
  346. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/schema.js.map +1 -1
  347. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/types.js.map +1 -1
  348. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/validators.js.map +1 -1
  349. package/node_modules/@fps-games/editor-playable-sdk/dist/index.js.map +1 -1
  350. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/camera-section.js.map +1 -1
  351. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/document-property.js.map +1 -1
  352. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/document-sections.js.map +1 -1
  353. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/format.js.map +1 -1
  354. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/index.js.map +1 -1
  355. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/light-fields.js.map +1 -1
  356. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/light-sections.js.map +1 -1
  357. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/marker-section.js.map +1 -1
  358. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/object-assembly.js.map +1 -1
  359. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/readonly.js.map +1 -1
  360. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/runtime-sections.js.map +1 -1
  361. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/runtime-summary.js.map +1 -1
  362. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/runtime.js.map +1 -1
  363. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/safe-value.js.map +1 -1
  364. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/types.js.map +1 -1
  365. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/validation.js.map +1 -1
  366. package/node_modules/@fps-games/editor-playable-sdk/dist/internal/local-harness.js.map +1 -1
  367. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/binding.js.map +1 -1
  368. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/fields.js.map +1 -1
  369. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/index.js.map +1 -1
  370. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/math.js.map +1 -1
  371. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/save-patch.js.map +1 -1
  372. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/snapshot.js.map +1 -1
  373. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/storage.js.map +1 -1
  374. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/text.js.map +1 -1
  375. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/types.js.map +1 -1
  376. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-preview/index.js.map +1 -1
  377. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-preview/math.js.map +1 -1
  378. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-preview/profile.js.map +1 -1
  379. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-preview/types.js.map +1 -1
  380. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/agent-descriptions.js.map +1 -1
  381. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play-types.js.map +1 -1
  382. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.d.ts +2 -0
  383. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.d.ts.map +1 -1
  384. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.js +5 -0
  385. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.js.map +1 -1
  386. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/host-controller.js.map +1 -1
  387. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.d.ts +1 -1
  388. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.d.ts.map +1 -1
  389. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.js.map +1 -1
  390. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/lifecycle.js.map +1 -1
  391. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/loading-overlay.js.map +1 -1
  392. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/project-asset-commands.d.ts +18 -0
  393. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/project-asset-commands.d.ts.map +1 -1
  394. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/project-asset-commands.js +60 -1
  395. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/project-asset-commands.js.map +1 -1
  396. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/timing.js.map +1 -1
  397. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/types.js.map +1 -1
  398. package/node_modules/@fps-games/editor-playable-sdk/dist/marker-scene/facade.js.map +1 -1
  399. package/node_modules/@fps-games/editor-playable-sdk/dist/marker-scene/game-objects.js.map +1 -1
  400. package/node_modules/@fps-games/editor-playable-sdk/dist/marker-scene/geometry.js.map +1 -1
  401. package/node_modules/@fps-games/editor-playable-sdk/dist/marker-scene/index.js.map +1 -1
  402. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/asset-fields.js.map +1 -1
  403. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/binding.js.map +1 -1
  404. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/default-assets.js.map +1 -1
  405. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/document-assets.d.ts.map +1 -1
  406. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/document-assets.js +28 -2
  407. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/document-assets.js.map +1 -1
  408. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/duplicate.js.map +1 -1
  409. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/index.js.map +1 -1
  410. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/inspector.js.map +1 -1
  411. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/paths.js.map +1 -1
  412. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/preview.js.map +1 -1
  413. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/profile.js.map +1 -1
  414. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/reimport.d.ts.map +1 -1
  415. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/reimport.js +26 -9
  416. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/reimport.js.map +1 -1
  417. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/resolver.js.map +1 -1
  418. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/scene-inspector.js.map +1 -1
  419. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/slot-inspector.d.ts.map +1 -1
  420. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/slot-inspector.js +0 -3
  421. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/slot-inspector.js.map +1 -1
  422. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/text.js.map +1 -1
  423. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/types.d.ts +8 -1
  424. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/types.d.ts.map +1 -1
  425. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/types.js.map +1 -1
  426. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/field-patch.js.map +1 -1
  427. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/index.js.map +1 -1
  428. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/json-field.js.map +1 -1
  429. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/reducer.js.map +1 -1
  430. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/rendering-alpha-index.js.map +1 -1
  431. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/transform.js.map +1 -1
  432. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/types.js.map +1 -1
  433. package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/aliases.d.ts +1 -1
  434. package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/aliases.d.ts.map +1 -1
  435. package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/aliases.js +18 -1
  436. package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/aliases.js.map +1 -1
  437. package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/index.js.map +1 -1
  438. package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/types.d.ts +2 -0
  439. package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/types.d.ts.map +1 -1
  440. package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/types.js.map +1 -1
  441. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/action-patches.js.map +1 -1
  442. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/assets.js.map +1 -1
  443. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/index.js.map +1 -1
  444. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/material-override-inspector.js.map +1 -1
  445. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/projection.js.map +1 -1
  446. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/shadow-inspector.js.map +1 -1
  447. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/source-structure-inspector.js.map +1 -1
  448. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/stage-inspector.js.map +1 -1
  449. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/structure.js.map +1 -1
  450. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/types.js.map +1 -1
  451. package/node_modules/@fps-games/editor-playable-sdk/dist/product/asset-manager.js.map +1 -1
  452. package/node_modules/@fps-games/editor-playable-sdk/dist/product/ground-decal-scene-feature.js.map +1 -1
  453. package/node_modules/@fps-games/editor-playable-sdk/dist/product/ground-decal.js.map +1 -1
  454. package/node_modules/@fps-games/editor-playable-sdk/dist/product/index.js.map +1 -1
  455. package/node_modules/@fps-games/editor-playable-sdk/dist/product/project-host-services.d.ts +1 -0
  456. package/node_modules/@fps-games/editor-playable-sdk/dist/product/project-host-services.d.ts.map +1 -1
  457. package/node_modules/@fps-games/editor-playable-sdk/dist/product/project-host-services.js +3 -1
  458. package/node_modules/@fps-games/editor-playable-sdk/dist/product/project-host-services.js.map +1 -1
  459. package/node_modules/@fps-games/editor-playable-sdk/dist/product/scene-session.js.map +1 -1
  460. package/node_modules/@fps-games/editor-playable-sdk/dist/product/scene-source.js.map +1 -1
  461. package/node_modules/@fps-games/editor-playable-sdk/dist/product/standard-asset-actions.js.map +1 -1
  462. package/node_modules/@fps-games/editor-playable-sdk/dist/product/standard-scene-assembly.js.map +1 -1
  463. package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/draft.js.map +1 -1
  464. package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/index.js.map +1 -1
  465. package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/panel.js.map +1 -1
  466. package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/route.js.map +1 -1
  467. package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/types.js.map +1 -1
  468. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/assets.js.map +1 -1
  469. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/import-plan.js.map +1 -1
  470. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/index.js.map +1 -1
  471. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/nodes.js.map +1 -1
  472. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/types.js.map +1 -1
  473. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/compiler.js +13 -1
  474. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/compiler.js.map +1 -1
  475. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/index.js.map +1 -1
  476. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/types.js.map +1 -1
  477. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/validation.js.map +1 -1
  478. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/artifacts.js.map +1 -1
  479. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/client.js.map +1 -1
  480. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/companion-configs.js.map +1 -1
  481. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/driver.js.map +1 -1
  482. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/index.js.map +1 -1
  483. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/protocol.js.map +1 -1
  484. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/types.js.map +1 -1
  485. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/validation.js.map +1 -1
  486. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/descriptors.js.map +1 -1
  487. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/index.js.map +1 -1
  488. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/inspector.js.map +1 -1
  489. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/object.js.map +1 -1
  490. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/patch.js.map +1 -1
  491. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/types.js.map +1 -1
  492. package/node_modules/@fps-games/editor-playable-sdk/dist/session/classification.js.map +1 -1
  493. package/node_modules/@fps-games/editor-playable-sdk/dist/session/hierarchy-facade.js.map +1 -1
  494. package/node_modules/@fps-games/editor-playable-sdk/dist/session/hierarchy.js.map +1 -1
  495. package/node_modules/@fps-games/editor-playable-sdk/dist/session/identity.js.map +1 -1
  496. package/node_modules/@fps-games/editor-playable-sdk/dist/session/index.js.map +1 -1
  497. package/node_modules/@fps-games/editor-playable-sdk/dist/session/object-command-facade.js.map +1 -1
  498. package/node_modules/@fps-games/editor-playable-sdk/dist/session/patches.js.map +1 -1
  499. package/node_modules/@fps-games/editor-playable-sdk/dist/session/property-patches.js.map +1 -1
  500. package/node_modules/@fps-games/editor-playable-sdk/dist/session/reducer-core.js.map +1 -1
  501. package/node_modules/@fps-games/editor-playable-sdk/dist/session/system-defaults.js.map +1 -1
  502. package/node_modules/@fps-games/editor-playable-sdk/dist/session/transform.js.map +1 -1
  503. package/node_modules/@fps-games/editor-playable-sdk/dist/session/types.js.map +1 -1
  504. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/index.js.map +1 -1
  505. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/resolver.js.map +1 -1
  506. package/node_modules/@fps-games/editor-playable-sdk/dist/shared/http.js.map +1 -1
  507. package/node_modules/@fps-games/editor-playable-sdk/dist/shared/json.js.map +1 -1
  508. package/node_modules/@fps-games/editor-playable-sdk/dist/static-shadows/artifact.js.map +1 -1
  509. package/node_modules/@fps-games/editor-playable-sdk/dist/static-shadows/index.js.map +1 -1
  510. package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/host.js.map +1 -1
  511. package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/index.js.map +1 -1
  512. package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/inspectors.js.map +1 -1
  513. package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/report.js.map +1 -1
  514. package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/types.js.map +1 -1
  515. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/asset-authoring.js.map +1 -1
  516. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/authoring-http.d.ts +1 -0
  517. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/authoring-http.d.ts.map +1 -1
  518. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/authoring-http.js +1 -0
  519. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/authoring-http.js.map +1 -1
  520. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/build-info-core.js.map +1 -1
  521. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/build-info-node.js.map +1 -1
  522. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-scene-workflow.d.ts +6 -5
  523. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-scene-workflow.d.ts.map +1 -1
  524. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-scene-workflow.js.map +1 -1
  525. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/index.js.map +1 -1
  526. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/module-invalidation.d.ts +3 -1
  527. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/module-invalidation.d.ts.map +1 -1
  528. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/module-invalidation.js +37 -8
  529. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/module-invalidation.js.map +1 -1
  530. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/path-write-coordinator.js.map +1 -1
  531. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/plugin.d.ts +4 -3
  532. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/plugin.d.ts.map +1 -1
  533. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/plugin.js +14 -1
  534. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/plugin.js.map +1 -1
  535. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-adapter.d.ts +5 -4
  536. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-adapter.d.ts.map +1 -1
  537. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-adapter.js.map +1 -1
  538. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-asset-authoring.d.ts +3 -2
  539. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-asset-authoring.d.ts.map +1 -1
  540. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-asset-authoring.js +2 -11
  541. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-asset-authoring.js.map +1 -1
  542. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-authoring-api.d.ts +8 -7
  543. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-authoring-api.d.ts.map +1 -1
  544. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-authoring-api.js +84 -6
  545. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-authoring-api.js.map +1 -1
  546. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-rendering-authoring.d.ts +2 -1
  547. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-rendering-authoring.d.ts.map +1 -1
  548. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-rendering-authoring.js.map +1 -1
  549. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-scene-authoring.d.ts +4 -3
  550. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-scene-authoring.d.ts.map +1 -1
  551. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-scene-authoring.js +1 -4
  552. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-scene-authoring.js.map +1 -1
  553. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/session-metadata.js.map +1 -1
  554. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/types.d.ts +0 -33
  555. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/types.d.ts.map +1 -1
  556. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/types.js.map +1 -1
  557. package/node_modules/@fps-games/editor-playable-sdk/package.json +9 -6
  558. package/node_modules/@fps-games/editor-protocol/dist/agent-bridge.js.map +1 -1
  559. package/node_modules/@fps-games/editor-protocol/dist/agent-trace.js.map +1 -1
  560. package/node_modules/@fps-games/editor-protocol/dist/agent.js.map +1 -1
  561. package/node_modules/@fps-games/editor-protocol/dist/index.js.map +1 -1
  562. package/node_modules/@fps-games/editor-protocol/dist/marker-graph.js.map +1 -1
  563. package/node_modules/@fps-games/editor-protocol/package.json +2 -2
  564. package/node_modules/@fps-games/editor-tooling/dist/contributions.js.map +1 -1
  565. package/node_modules/@fps-games/editor-tooling/dist/data-object.js.map +1 -1
  566. package/node_modules/@fps-games/editor-tooling/dist/index.js.map +1 -1
  567. package/node_modules/@fps-games/editor-tooling/dist/migration.js.map +1 -1
  568. package/node_modules/@fps-games/editor-tooling/dist/package-metadata-node.js.map +1 -1
  569. package/node_modules/@fps-games/editor-tooling/dist/vite.js.map +1 -1
  570. package/node_modules/@fps-games/editor-tooling/package.json +3 -3
  571. package/node_modules/@fps-games/playable-assets/dist/identity.js.map +1 -1
  572. package/node_modules/@fps-games/playable-assets/dist/index.d.ts +1 -0
  573. package/node_modules/@fps-games/playable-assets/dist/index.d.ts.map +1 -1
  574. package/node_modules/@fps-games/playable-assets/dist/index.js +1 -0
  575. package/node_modules/@fps-games/playable-assets/dist/index.js.map +1 -1
  576. package/node_modules/@fps-games/playable-assets/dist/portable-path.d.ts +2 -0
  577. package/node_modules/@fps-games/playable-assets/dist/portable-path.d.ts.map +1 -0
  578. package/node_modules/@fps-games/playable-assets/dist/portable-path.js +25 -0
  579. package/node_modules/@fps-games/playable-assets/dist/portable-path.js.map +1 -0
  580. package/node_modules/@fps-games/playable-assets/package.json +1 -1
  581. package/node_modules/@fps-games/playable-contracts/dist/index.js.map +1 -1
  582. package/node_modules/@fps-games/playable-contracts/dist/marker-graph-validation.js.map +1 -1
  583. package/node_modules/@fps-games/playable-contracts/dist/marker-graph.js.map +1 -1
  584. package/node_modules/@fps-games/playable-contracts/package.json +1 -1
  585. package/node_modules/@fps-games/playable-rendering/dist/index.js.map +1 -1
  586. package/node_modules/@fps-games/playable-rendering/dist/rendering-profile-authoring.js.map +1 -1
  587. package/node_modules/@fps-games/playable-rendering/dist/rendering-profile-types.js.map +1 -1
  588. package/node_modules/@fps-games/playable-rendering/dist/rendering-profile-validation.js.map +1 -1
  589. package/node_modules/@fps-games/playable-rendering/dist/rendering-profile-values.js.map +1 -1
  590. package/node_modules/@fps-games/playable-rendering/dist/rendering-profile.js.map +1 -1
  591. package/node_modules/@fps-games/playable-rendering/dist/runtime.js.map +1 -1
  592. package/node_modules/@fps-games/playable-rendering/dist/shadow-quality.js.map +1 -1
  593. package/node_modules/@fps-games/playable-rendering/dist/shadow-runtime.js.map +1 -1
  594. package/node_modules/@fps-games/playable-rendering/dist/shadow-settings.js.map +1 -1
  595. package/node_modules/@fps-games/playable-rendering/dist/shadow-types.js.map +1 -1
  596. package/node_modules/@fps-games/playable-rendering/dist/shadow-validation.js.map +1 -1
  597. package/node_modules/@fps-games/playable-rendering/dist/value.js.map +1 -1
  598. package/node_modules/@fps-games/playable-rendering/package.json +2 -2
  599. package/node_modules/@fps-games/playable-runtime/dist/compiled-scene-data.js.map +1 -1
  600. package/node_modules/@fps-games/playable-runtime/dist/index.js.map +1 -1
  601. package/node_modules/@fps-games/playable-runtime/dist/runtime-data.js.map +1 -1
  602. package/node_modules/@fps-games/playable-runtime/dist/runtime.js.map +1 -1
  603. package/node_modules/@fps-games/playable-runtime/dist/standard-plugins.js.map +1 -1
  604. package/node_modules/@fps-games/playable-runtime/dist/tokens.js.map +1 -1
  605. package/node_modules/@fps-games/playable-runtime/dist/types.js.map +1 -1
  606. package/node_modules/@fps-games/playable-runtime/package.json +12 -12
  607. package/node_modules/@fps-games/playable-runtime-data/dist/index.js.map +1 -1
  608. package/node_modules/@fps-games/playable-runtime-data/package.json +4 -4
  609. package/node_modules/@fps-games/playable-scene/dist/index.js.map +1 -1
  610. package/node_modules/@fps-games/playable-scene/dist/transform-math.js.map +1 -1
  611. package/node_modules/@fps-games/playable-scene/package.json +2 -2
  612. package/node_modules/@fps-games/plugin-api/dist/index.js.map +1 -1
  613. package/node_modules/@fps-games/plugin-api/package.json +1 -1
  614. package/node_modules/@fps-games/plugin-assets/dist/reference.js.map +1 -1
  615. package/node_modules/@fps-games/plugin-assets/dist/runtime.js.map +1 -1
  616. package/node_modules/@fps-games/plugin-assets/dist/version.d.ts +1 -1
  617. package/node_modules/@fps-games/plugin-assets/dist/version.js +1 -1
  618. package/node_modules/@fps-games/plugin-assets/dist/version.js.map +1 -1
  619. package/node_modules/@fps-games/plugin-assets/package.json +5 -5
  620. package/node_modules/@fps-games/plugin-host/dist/index.js.map +1 -1
  621. package/node_modules/@fps-games/plugin-host/package.json +2 -2
  622. package/node_modules/@fps-games/plugin-markers/dist/reference.js.map +1 -1
  623. package/node_modules/@fps-games/plugin-markers/dist/runtime.js.map +1 -1
  624. package/node_modules/@fps-games/plugin-markers/dist/version.d.ts +1 -1
  625. package/node_modules/@fps-games/plugin-markers/dist/version.js +1 -1
  626. package/node_modules/@fps-games/plugin-markers/dist/version.js.map +1 -1
  627. package/node_modules/@fps-games/plugin-markers/package.json +5 -5
  628. package/node_modules/@fps-games/plugin-materials/dist/reference.js.map +1 -1
  629. package/node_modules/@fps-games/plugin-materials/dist/runtime.js.map +1 -1
  630. package/node_modules/@fps-games/plugin-materials/dist/version.d.ts +1 -1
  631. package/node_modules/@fps-games/plugin-materials/dist/version.js +1 -1
  632. package/node_modules/@fps-games/plugin-materials/dist/version.js.map +1 -1
  633. package/node_modules/@fps-games/plugin-materials/package.json +5 -5
  634. package/node_modules/@fps-games/plugin-rendering/dist/reference.js.map +1 -1
  635. package/node_modules/@fps-games/plugin-rendering/dist/runtime.js.map +1 -1
  636. package/node_modules/@fps-games/plugin-rendering/dist/version.d.ts +1 -1
  637. package/node_modules/@fps-games/plugin-rendering/dist/version.js +1 -1
  638. package/node_modules/@fps-games/plugin-rendering/dist/version.js.map +1 -1
  639. package/node_modules/@fps-games/plugin-rendering/package.json +5 -5
  640. package/node_modules/@fps-games/plugin-scene/dist/reference.js.map +1 -1
  641. package/node_modules/@fps-games/plugin-scene/dist/runtime.js.map +1 -1
  642. package/node_modules/@fps-games/plugin-scene/dist/version.d.ts +1 -1
  643. package/node_modules/@fps-games/plugin-scene/dist/version.js +1 -1
  644. package/node_modules/@fps-games/plugin-scene/dist/version.js.map +1 -1
  645. package/node_modules/@fps-games/plugin-scene/package.json +5 -5
  646. package/node_modules/@fps-games/plugin-shadows/dist/reference.js.map +1 -1
  647. package/node_modules/@fps-games/plugin-shadows/dist/runtime.js.map +1 -1
  648. package/node_modules/@fps-games/plugin-shadows/dist/version.d.ts +1 -1
  649. package/node_modules/@fps-games/plugin-shadows/dist/version.js +1 -1
  650. package/node_modules/@fps-games/plugin-shadows/dist/version.js.map +1 -1
  651. package/node_modules/@fps-games/plugin-shadows/package.json +7 -7
  652. package/package.json +27 -19
@@ -36,4 +36,36 @@ export function isAgentBridgeObjectSelectable(options, document, objectId, hiera
36
36
  return false;
37
37
  return isAgentBridgeDocumentNodeSelectable(options, document, objectId);
38
38
  }
39
+ export function isAgentBridgeHierarchyObjectSelectable(options, document, objectId, hierarchyItems) {
40
+ return hierarchyItems.some(item => item.id === objectId)
41
+ && isAgentBridgeDocumentNodeSelectable(options, document, objectId);
42
+ }
43
+ export function getAgentBridgeSafeSceneHierarchy(operations) {
44
+ const projection = operations.getHierarchyProjection();
45
+ if (!projection || projection.scopeKind !== 'scene')
46
+ return [];
47
+ const commandableRows = new Set(projection.targets
48
+ .filter(target => target.rowId === target.targetId)
49
+ .map(target => target.rowId));
50
+ return projection.nodes.filter(node => commandableRows.has(node.id));
51
+ }
52
+ export function hasAgentBridgeSafeSceneScope(operations) {
53
+ return operations.getHierarchyProjection()?.scopeKind === 'scene';
54
+ }
55
+ export function getAgentBridgeSafeSceneSelection(operations) {
56
+ const projection = operations.getHierarchyProjection();
57
+ if (!projection || projection.scopeKind !== 'scene')
58
+ return EMPTY_EDITOR_SELECTION;
59
+ const safeIds = new Set(projection.targets
60
+ .filter(target => target.rowId === target.targetId)
61
+ .map(target => target.rowId));
62
+ const selectedIds = projection.selectedIds.filter(id => safeIds.has(id));
63
+ const activeId = projection.activeId && selectedIds.includes(projection.activeId)
64
+ ? projection.activeId
65
+ : selectedIds[selectedIds.length - 1] ?? null;
66
+ return { selectedIds, activeId };
67
+ }
68
+ export function isAgentBridgeSafeSceneObjectId(operations, objectId) {
69
+ return getAgentBridgeSafeSceneHierarchy(operations).some(item => item.id === objectId);
70
+ }
39
71
  //# sourceMappingURL=shared.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/agent-bridge/shared.ts"],"names":[],"mappings":"AAAA,OAAO,EAWN,MAAM,wBAAwB,CAAC;AAqBhC,MAAM,CAAC,MAAM,sBAAsB,GAAyB,EAAE,WAAW,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AA8LhG,MAAM,UAAU,yBAAyB,CAAC,SAA+B;IACvE,OAAO;QACL,WAAW,EAAE,CAAC,GAAG,SAAS,CAAC,WAAW,CAAC;QACvC,QAAQ,EAAE,SAAS,CAAC,QAAQ;KAC7B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,KAAc;IACvD,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,MAA0B;IACnE,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,EAAE,GAAG,0BAA0B,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,SAAS;QAClC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,OAA6D,EAC7D,QAAmB,EACnB,EAAU;IAEV,OAAO,OAAO,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC;AACnE,CAAC;AAED,MAAM,UAAU,mCAAmC,CACjD,OAA6D,EAC7D,QAAmB,EACnB,EAAU;IAEV,IAAI,+BAA+B,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC;QAAE,OAAO,KAAK,CAAC;IACzE,OAAO,OAAO,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC;AACtE,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,OAA6D,EAC7D,QAAmB,EACnB,QAAgB,EAChB,cAA4D;IAE5D,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC;IACtE,MAAM,iBAAiB,GAAG,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC1F,IAAI,CAAC,WAAW,IAAI,CAAC,iBAAiB;QAAE,OAAO,KAAK,CAAC;IACrD,OAAO,mCAAmC,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAC1E,CAAC"}
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/agent-bridge/shared.ts"],"names":[],"mappings":"AAAA,OAAO,EAWN,MAAM,wBAAwB,CAAC;AAuBhC,MAAM,CAAC,MAAM,sBAAsB,GAAyB,EAAE,WAAW,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AA8LhG,MAAM,UAAU,yBAAyB,CAAC,SAA+B;IACvE,OAAO;QACL,WAAW,EAAE,CAAC,GAAG,SAAS,CAAC,WAAW,CAAC;QACvC,QAAQ,EAAE,SAAS,CAAC,QAAQ;KAC7B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,KAAc;IACvD,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,MAA0B;IACnE,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,EAAE,GAAG,0BAA0B,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,SAAS;QAClC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,OAA6D,EAC7D,QAAmB,EACnB,EAAU;IAEV,OAAO,OAAO,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC;AACnE,CAAC;AAED,MAAM,UAAU,mCAAmC,CACjD,OAA6D,EAC7D,QAAmB,EACnB,EAAU;IAEV,IAAI,+BAA+B,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC;QAAE,OAAO,KAAK,CAAC;IACzE,OAAO,OAAO,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC;AACtE,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,OAA6D,EAC7D,QAAmB,EACnB,QAAgB,EAChB,cAA4D;IAE5D,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC;IACtE,MAAM,iBAAiB,GAAG,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC1F,IAAI,CAAC,WAAW,IAAI,CAAC,iBAAiB;QAAE,OAAO,KAAK,CAAC;IACrD,OAAO,mCAAmC,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,sCAAsC,CACpD,OAA6D,EAC7D,QAAmB,EACnB,QAAgB,EAChB,cAA4D;IAE5D,OAAO,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,QAAQ,CAAC;WACnD,mCAAmC,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,gCAAgC,CAC9C,UAAuG;IAEvG,MAAM,UAAU,GAAG,UAAU,CAAC,sBAAsB,EAAE,CAAC;IACvD,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,SAAS,KAAK,OAAO;QAAE,OAAO,EAAE,CAAC;IAC/D,MAAM,eAAe,GAAG,IAAI,GAAG,CAC7B,UAAU,CAAC,OAAO;SACf,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,QAAQ,CAAC;SAClD,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAC/B,CAAC;IACF,OAAO,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,UAAuG;IAEvG,OAAO,UAAU,CAAC,sBAAsB,EAAE,EAAE,SAAS,KAAK,OAAO,CAAC;AACpE,CAAC;AAED,MAAM,UAAU,gCAAgC,CAC9C,UAAuG;IAEvG,MAAM,UAAU,GAAG,UAAU,CAAC,sBAAsB,EAAE,CAAC;IACvD,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,SAAS,KAAK,OAAO;QAAE,OAAO,sBAAsB,CAAC;IACnF,MAAM,OAAO,GAAG,IAAI,GAAG,CACrB,UAAU,CAAC,OAAO;SACf,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,QAAQ,CAAC;SAClD,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAC/B,CAAC;IACF,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IACzE,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,IAAI,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC;QAC/E,CAAC,CAAC,UAAU,CAAC,QAAQ;QACrB,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC;IAChD,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,8BAA8B,CAC5C,UAAuG,EACvG,QAAgB;IAEhB,OAAO,gCAAgC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC;AACzF,CAAC","sourcesContent":["import {\n type AuthoringSourceDescriptor,\n type EditorProjectionImpact,\n type EditorSelectionState,\n type EditorSession,\n type EditorTransformSnapshot,\n type EditorViewportProjectionMode,\n type EditorViewportToolState,\n type EditorViewportViewPreset,\n type InspectorObject,\n type SelectionCommand,\n} from '@fps-games/editor-core';\nimport type { FpsEditorLifecycleService } from '@fps-games/editor-core/lifecycle';\nimport type {\n EditorAgentBridgePrefabStageExitOutput,\n EditorAgentBridgePrefabStageOpenOutput,\n EditorAgentBridgePrefabStageState,\n EditorAgentBridgeSelectionState,\n EditorAgentBridgeVec3,\n} from '@fps-games/editor-protocol';\nimport type {\n LocalEditorBrowserAssetActionInput,\n LocalEditorBrowserPrefabStageStructureItem,\n LocalEditorBrowserHierarchyProjectionState,\n LocalEditorBrowserStatusDiagnostic,\n LocalEditorBrowserUiHierarchyItem,\n} from '@fps-games/editor-browser';\nimport type {\n LocalEditorHarnessAssetCreationOptions,\n LocalEditorHarnessAssetCreationResult,\n LocalEditorHarnessMode,\n LocalEditorHarnessOptions,\n} from '../local-editor-harness.js';\n\nexport const EMPTY_EDITOR_SELECTION: EditorSelectionState = { selectedIds: [], activeId: null };\n\nexport interface LocalEditorAgentBridgeProjection {\n readNodeTransform(objectId: string): EditorTransformSnapshot | null;\n getSelectionBounds(objectIds: readonly string[]): { center: EditorAgentBridgeVec3; size: EditorAgentBridgeVec3 } | null;\n getPreviewVisibilityOverrides?(): Array<{\n nodeId: string;\n visible: boolean;\n authoredActive: boolean;\n effectiveVisible: boolean;\n }>;\n setPreviewVisibilityOverrides?(overrides: Record<string, boolean>): Array<{\n nodeId: string;\n visible: boolean;\n authoredActive: boolean;\n effectiveVisible: boolean;\n }>;\n clearPreviewVisibilityOverrides?(): Array<{\n nodeId: string;\n visible: boolean;\n authoredActive: boolean;\n effectiveVisible: boolean;\n }>;\n getProjectedNodeIds?(): string[];\n getProjectionParentIds?(nodeId: string): string[];\n setShadowDebugOverlay?(items: LocalEditorAgentBridgeShadowDebugOverlayItem[]): string[];\n clearShadowDebugOverlay?(): boolean;\n waitForIdle?(): Promise<unknown>;\n}\n\nexport interface LocalEditorAgentBridgePreviewVisibilityEntry {\n nodeId: string;\n visible: boolean;\n authoredActive: boolean;\n effectiveVisible: boolean;\n}\n\nexport interface LocalEditorAgentBridgePreviewVisibilityState {\n overrides: Record<string, boolean>;\n isolatedObjectIds: string[];\n reason?: string;\n protectedObjectIds?: string[];\n protectedReceiverIds?: string[];\n}\n\nexport interface LocalEditorAgentBridgeShadowDebugBounds {\n min: EditorAgentBridgeVec3;\n max: EditorAgentBridgeVec3;\n size: EditorAgentBridgeVec3;\n center: EditorAgentBridgeVec3;\n}\n\nexport interface LocalEditorAgentBridgeShadowDebugOverlayItem {\n id: string;\n kind: 'caster-bounds' | 'receiver-bounds' | 'receiver-surface' | 'light-direction' | 'footprint' | 'artifact-bounds';\n bounds?: LocalEditorAgentBridgeShadowDebugBounds;\n center?: EditorAgentBridgeVec3;\n size?: EditorAgentBridgeVec3;\n direction?: EditorAgentBridgeVec3;\n}\n\nexport interface LocalEditorAgentBridgePlanarShadowCasterDebugInfo {\n sourceName: string;\n sourceMeshNames?: string[];\n sourceNodeId?: string;\n sourceNodeIds?: string[];\n shadowName: string;\n strategy: 'auto' | 'projected-mesh' | 'convex-hull';\n hasSkeleton: boolean;\n projectedMeshCount: number;\n convexHullMeshCount: number;\n alphaCutoutMeshCount: number;\n instancedCasterCount?: number;\n batchMeshCount?: number;\n instancedBatchIds?: string[];\n instancedBatchNames?: string[];\n independentProjectedMeshCount?: number;\n visibleInstanceCount?: number;\n alphaCutoutChannels?: Array<'alpha' | 'luminance' | 'red'>;\n alphaCutoutUvSets?: number[];\n alphaCutoutLevels?: number[];\n fallbackReasons?: string[];\n instancingFallbackReasons?: string[];\n}\n\nexport interface LocalEditorAgentBridgeShadowPreviewDebugInfo {\n planar?: {\n enabled: boolean;\n casterCount: number;\n casters: LocalEditorAgentBridgePlanarShadowCasterDebugInfo[];\n };\n}\n\nexport interface LocalEditorAgentBridgeSceneViewCameraState {\n viewPreset: EditorViewportViewPreset;\n projectionMode: EditorViewportProjectionMode;\n target?: EditorAgentBridgeVec3;\n position?: EditorAgentBridgeVec3;\n alpha?: number;\n beta?: number;\n radius?: number;\n}\n\nexport interface LocalEditorAgentBridgeSceneViewCamera {\n getState(): LocalEditorAgentBridgeSceneViewCameraState;\n setViewPreset(preset: EditorViewportViewPreset, options?: { target?: EditorAgentBridgeVec3 | null; radius?: number }): boolean;\n orbit(options?: {\n target?: EditorAgentBridgeVec3;\n yawDeltaDeg?: number;\n pitchDeltaDeg?: number;\n distanceScale?: number;\n }): boolean;\n}\n\nexport interface LocalEditorAgentBridgePrefabStageDetails<TDocument = unknown> {\n stage: EditorAgentBridgePrefabStageState;\n structureItems: readonly LocalEditorBrowserPrefabStageStructureItem[];\n inspectorObject?: InspectorObject<TDocument> | null;\n}\n\nexport interface LocalEditorAgentBridgeHarnessState<TDocument, TPatch> {\n mode: LocalEditorHarnessMode;\n lifecycle: FpsEditorLifecycleService | null;\n busy: boolean;\n session: EditorSession<TDocument, TPatch> | null;\n assets: readonly unknown[];\n projection: LocalEditorAgentBridgeProjection | null;\n previewVisibility: LocalEditorAgentBridgePreviewVisibilityState;\n sceneCameraPreviewEnabled: boolean;\n sceneViewCamera: LocalEditorAgentBridgeSceneViewCamera | null | any;\n viewportTools: EditorViewportToolState;\n status: string;\n statusTone: 'default' | 'success' | 'warning' | 'error';\n statusToneStatus: string;\n statusDetails: string;\n summary: string;\n}\n\nexport interface LocalEditorAgentBridgeCapabilitySourceOperations<TDocument> {\n createAssetFromAssetId(assetId: string, options?: LocalEditorHarnessAssetCreationOptions): LocalEditorHarnessAssetCreationResult;\n getPrefabStage(): EditorAgentBridgePrefabStageState | null;\n getPrefabStageDetails(): LocalEditorAgentBridgePrefabStageDetails<TDocument> | null;\n openPrefabStage(input: {\n assetId: string;\n browserAssetId?: string;\n }): Promise<EditorAgentBridgePrefabStageOpenOutput | null>;\n exitPrefabStage(): Promise<EditorAgentBridgePrefabStageExitOutput>;\n selectPrefabStageItem(itemId: string): boolean;\n runPrefabStageAssetAction(input: LocalEditorBrowserAssetActionInput): boolean;\n getHierarchyProjection(): LocalEditorBrowserHierarchyProjectionState | null;\n getStatusDiagnostics(): LocalEditorBrowserStatusDiagnostic[];\n dispatchSelectionCommand(command: SelectionCommand, renderUi?: boolean): boolean;\n focusProjectionNode(objectId: string): boolean;\n syncViewportCameraState(): void;\n requestSceneFrame(reason: string): void;\n cloneTransformSnapshot(transform: EditorTransformSnapshot): EditorTransformSnapshot;\n cancelActiveOperation(): void;\n withProjectionImpact(impact: EditorProjectionImpact | undefined): { projectionImpact?: EditorProjectionImpact };\n resolveProjectionImpact(source: { projectionImpact?: EditorProjectionImpact }, fallback: EditorProjectionImpact | undefined): EditorProjectionImpact | undefined;\n createReprojectProjectionImpact(ids: readonly (string | null | undefined)[]): EditorProjectionImpact | undefined;\n createTransformProjectionImpact(ids: readonly (string | null | undefined)[]): EditorProjectionImpact | undefined;\n createKnownCreatedReprojectProjectionImpact(input: {\n createdNodeIds: readonly (string | null | undefined)[];\n reprojectIds?: readonly (string | null | undefined)[];\n }): EditorProjectionImpact | undefined;\n createDeletedNodeProjectionImpact(ids: readonly (string | null | undefined)[]): EditorProjectionImpact | undefined;\n reprojectProjectionForChangedIds(document: TDocument, changedIds: string[]): void;\n syncProjectionForChangedIds(document: TDocument, changedIds: string[]): void;\n rebuildProjectionFromDocument(document: TDocument, selection: EditorSelectionState): void;\n sanitizeSelection(document: TDocument, selection: EditorSelectionState): EditorSelectionState | null;\n summarizeDocument(document: TDocument, source?: AuthoringSourceDescriptor | null): string;\n runRenderingAction?(actionId: string): Promise<LocalEditorAgentBridgeRenderingActionResult>;\n invalidateStaticShadowArtifact?(): boolean;\n getShadowPreviewDebugInfo?(): LocalEditorAgentBridgeShadowPreviewDebugInfo | null;\n setShadowDebugOverlay?(items: LocalEditorAgentBridgeShadowDebugOverlayItem[]): string[];\n clearShadowDebugOverlay?(): boolean;\n resolvePrefabStageProjectionNodeId?(nodeId: string): string | null;\n}\n\nexport interface LocalEditorAgentBridgeRenderingActionResult {\n ok: boolean;\n changed: boolean;\n rendered: boolean;\n status?: string;\n statusTone?: 'default' | 'success' | 'warning' | 'error';\n statusDetails?: string;\n details?: Record<string, unknown>;\n error?: string;\n}\n\nexport function cloneAgentBridgeSelection(selection: EditorSelectionState): EditorAgentBridgeSelectionState {\n return {\n selectedIds: [...selection.selectedIds],\n activeId: selection.activeId,\n };\n}\n\nexport function normalizeAgentBridgeString(value: unknown): string {\n return typeof value === 'string' ? value.trim() : '';\n}\n\nexport function normalizeAgentBridgeIdList(values: readonly unknown[]): string[] {\n const ids: string[] = [];\n const seen = new Set<string>();\n for (const value of values) {\n const id = normalizeAgentBridgeString(value);\n if (!id || seen.has(id)) continue;\n seen.add(id);\n ids.push(id);\n }\n return ids;\n}\n\nexport function isAgentBridgeDocumentNodeLocked<TDocument, TPatch, TAsset>(\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n document: TDocument,\n id: string,\n): boolean {\n return options.documentAdapter.isLocked?.(document, id) ?? false;\n}\n\nexport function isAgentBridgeDocumentNodeSelectable<TDocument, TPatch, TAsset>(\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n document: TDocument,\n id: string,\n): boolean {\n if (isAgentBridgeDocumentNodeLocked(options, document, id)) return false;\n return options.documentAdapter.isSelectable?.(document, id) ?? true;\n}\n\nexport function isAgentBridgeObjectSelectable<TDocument, TPatch, TAsset>(\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n document: TDocument,\n objectId: string,\n hierarchyItems: readonly LocalEditorBrowserUiHierarchyItem[],\n): boolean {\n const inHierarchy = hierarchyItems.some(item => item.id === objectId);\n const hasProjectionNode = !!options.documentAdapter.getProjectionNode(document, objectId);\n if (!inHierarchy && !hasProjectionNode) return false;\n return isAgentBridgeDocumentNodeSelectable(options, document, objectId);\n}\n\nexport function isAgentBridgeHierarchyObjectSelectable<TDocument, TPatch, TAsset>(\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n document: TDocument,\n objectId: string,\n hierarchyItems: readonly LocalEditorBrowserUiHierarchyItem[],\n): boolean {\n return hierarchyItems.some(item => item.id === objectId)\n && isAgentBridgeDocumentNodeSelectable(options, document, objectId);\n}\n\nexport function getAgentBridgeSafeSceneHierarchy<TDocument>(\n operations: Pick<LocalEditorAgentBridgeCapabilitySourceOperations<TDocument>, 'getHierarchyProjection'>,\n): LocalEditorBrowserUiHierarchyItem[] {\n const projection = operations.getHierarchyProjection();\n if (!projection || projection.scopeKind !== 'scene') return [];\n const commandableRows = new Set(\n projection.targets\n .filter(target => target.rowId === target.targetId)\n .map(target => target.rowId),\n );\n return projection.nodes.filter(node => commandableRows.has(node.id));\n}\n\nexport function hasAgentBridgeSafeSceneScope<TDocument>(\n operations: Pick<LocalEditorAgentBridgeCapabilitySourceOperations<TDocument>, 'getHierarchyProjection'>,\n): boolean {\n return operations.getHierarchyProjection()?.scopeKind === 'scene';\n}\n\nexport function getAgentBridgeSafeSceneSelection<TDocument>(\n operations: Pick<LocalEditorAgentBridgeCapabilitySourceOperations<TDocument>, 'getHierarchyProjection'>,\n): EditorSelectionState {\n const projection = operations.getHierarchyProjection();\n if (!projection || projection.scopeKind !== 'scene') return EMPTY_EDITOR_SELECTION;\n const safeIds = new Set(\n projection.targets\n .filter(target => target.rowId === target.targetId)\n .map(target => target.rowId),\n );\n const selectedIds = projection.selectedIds.filter(id => safeIds.has(id));\n const activeId = projection.activeId && selectedIds.includes(projection.activeId)\n ? projection.activeId\n : selectedIds[selectedIds.length - 1] ?? null;\n return { selectedIds, activeId };\n}\n\nexport function isAgentBridgeSafeSceneObjectId<TDocument>(\n operations: Pick<LocalEditorAgentBridgeCapabilitySourceOperations<TDocument>, 'getHierarchyProjection'>,\n objectId: string,\n): boolean {\n return getAgentBridgeSafeSceneHierarchy(operations).some(item => item.id === objectId);\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"source-types.js","sourceRoot":"","sources":["../../src/agent-bridge/source-types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"source-types.js","sourceRoot":"","sources":["../../src/agent-bridge/source-types.ts"],"names":[],"mappings":"","sourcesContent":["import type {\n EditorAgentBridgeCallResult,\n EditorAgentBridgeAssetAnalysisGetInput,\n EditorAgentBridgeAssetAnalysisGetOutput,\n EditorAgentBridgeAssetInfoGetInput,\n EditorAgentBridgeAssetInfoGetOutput,\n EditorAgentBridgeAssetLibraryListInput,\n EditorAgentBridgeAssetLibraryListOutput,\n EditorAgentBridgeEditorSnapshot,\n EditorAgentBridgeEditorSnapshotGetInput,\n EditorAgentBridgeEditorState,\n EditorAgentBridgeEditorStateGetInput,\n EditorAgentBridgeUiRegionsGetInput,\n EditorAgentBridgeUiRegionsGetOutput,\n EditorAgentBridgeHostEditorEnterInput,\n EditorAgentBridgeHostEditorEnterOutput,\n EditorAgentBridgeHostEditorSaveAndRunInput,\n EditorAgentBridgeHostEditorSaveAndRunOutput,\n EditorAgentBridgeHostEditorDiscardAndRunInput,\n EditorAgentBridgeHostEditorDiscardAndRunOutput,\n EditorAgentBridgeHostEditorWaitReadyInput,\n EditorAgentBridgeHostEditorWaitReadyOutput,\n EditorAgentBridgeHostModeGetInput,\n EditorAgentBridgeHostModeGetOutput,\n EditorAgentBridgeObjectCreatePrimitiveInput,\n EditorAgentBridgeObjectCreatePrimitiveOutput,\n EditorAgentBridgeObjectCreateFromAssetInput,\n EditorAgentBridgeObjectCreateFromAssetOutput,\n EditorAgentBridgeObjectDeleteInput,\n EditorAgentBridgeObjectDeleteOutput,\n EditorAgentBridgeObjectResolveInput,\n EditorAgentBridgeObjectResolveOutput,\n EditorAgentBridgePrefabMaterialSlotsListInput,\n EditorAgentBridgePrefabMaterialSlotsListOutput,\n EditorAgentBridgePrefabAssetRenameInput,\n EditorAgentBridgePrefabAssetRenameOutput,\n EditorAgentBridgePrefabNodeCreateFromAssetInput,\n EditorAgentBridgePrefabNodeCreateGroupInput,\n EditorAgentBridgePrefabNodeCreatePrimitiveInput,\n EditorAgentBridgePrefabNodeDeleteInput,\n EditorAgentBridgePrefabNodeMutationOutput,\n EditorAgentBridgePrefabNodeReparentInput,\n EditorAgentBridgePrefabNodeRenameInput,\n EditorAgentBridgePrefabNodeRenameOutput,\n EditorAgentBridgePrefabNodeSelectInput,\n EditorAgentBridgePrefabNodeSelectOutput,\n EditorAgentBridgePrefabNodeSetTransformInput,\n EditorAgentBridgePrefabResolveInput,\n EditorAgentBridgePrefabResolveOutput,\n EditorAgentBridgePrefabSceneGetInput,\n EditorAgentBridgePrefabSceneGetOutput,\n EditorAgentBridgePrefabSourceStructureGetInput,\n EditorAgentBridgePrefabSourceStructureGetOutput,\n EditorAgentBridgePrefabStageExitInput,\n EditorAgentBridgePrefabStageExitOutput,\n EditorAgentBridgePrefabStageOpenInput,\n EditorAgentBridgePrefabStageOpenOutput,\n EditorAgentBridgeSceneObject,\n EditorAgentBridgeSceneObjectsListInput,\n EditorAgentBridgeSelectionSetInput,\n EditorAgentBridgeSelectionSetOutput,\n EditorAgentBridgeSelectionState,\n EditorAgentBridgeShadowPolicyGetInput,\n EditorAgentBridgeShadowPolicyGetOutput,\n EditorAgentBridgeShadowPolicySetInput,\n EditorAgentBridgeShadowPolicySetOutput,\n EditorAgentBridgeShadowDebugInspectInput,\n EditorAgentBridgeShadowDebugInspectOutput,\n EditorAgentBridgeShadowDebugContextClearInput,\n EditorAgentBridgeShadowDebugContextClearOutput,\n EditorAgentBridgeShadowDebugContextEnterInput,\n EditorAgentBridgeShadowDebugContextEnterOutput,\n EditorAgentBridgeShadowDebugOverlayClearInput,\n EditorAgentBridgeShadowDebugOverlayClearOutput,\n EditorAgentBridgeShadowDebugOverlaySetInput,\n EditorAgentBridgeShadowDebugOverlaySetOutput,\n EditorAgentBridgeShadowDebugVisibilityMeasureInput,\n EditorAgentBridgeShadowDebugVisibilityMeasureOutput,\n EditorAgentBridgeShadowReceiversListInput,\n EditorAgentBridgeShadowReceiversListOutput,\n EditorAgentBridgeShadowResolvePreviewInput,\n EditorAgentBridgeShadowResolvePreviewOutput,\n EditorAgentBridgeShadowStaticBakeInput,\n EditorAgentBridgeShadowStaticBakeOutput,\n EditorAgentBridgeShadowStaticInvalidateInput,\n EditorAgentBridgeShadowStaticInvalidateOutput,\n EditorAgentBridgeTransformMoveInput,\n EditorAgentBridgeTransformMoveOutput,\n EditorAgentBridgeTransformSetInput,\n EditorAgentBridgeTransformSetOutput,\n EditorAgentBridgeViewportCameraGetInput,\n EditorAgentBridgeViewportCameraOrbitInput,\n EditorAgentBridgeViewportCameraOrbitOutput,\n EditorAgentBridgeViewportCameraSetPresetInput,\n EditorAgentBridgeViewportCameraSetPresetOutput,\n EditorAgentBridgeViewportCameraState,\n EditorAgentBridgeViewportFocusObjectInput,\n EditorAgentBridgeViewportFocusObjectOutput,\n EditorAgentBridgeViewportFrameSelectionInput,\n EditorAgentBridgeViewportFrameSelectionOutput,\n EditorAgentBridgeViewportIsolationEnterInput,\n EditorAgentBridgeViewportIsolationEnterOutput,\n EditorAgentBridgeViewportVisibilityClearInput,\n EditorAgentBridgeViewportVisibilityMutationOutput,\n EditorAgentBridgeViewportVisibilitySetInput,\n EditorAgentBridgeViewportVisibilitySnapshotInput,\n EditorAgentBridgeViewportVisibilitySnapshotOutput,\n} from '@fps-games/editor-protocol';\nimport type { EditorAgentBridgeCallContext } from '@fps-games/editor-core';\n\nexport type LocalEditorAgentBridgeSourceResult<TOutput> =\n | TOutput\n | EditorAgentBridgeCallResult<TOutput>\n | Promise<TOutput | EditorAgentBridgeCallResult<TOutput>>;\n\nexport interface LocalEditorAgentBridgeHostSource {\n isBusy(): boolean;\n getMode(input: EditorAgentBridgeHostModeGetInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeHostModeGetOutput>;\n enterEditor(input: EditorAgentBridgeHostEditorEnterInput, context?: EditorAgentBridgeCallContext): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeHostEditorEnterOutput>;\n saveAndRun(input: EditorAgentBridgeHostEditorSaveAndRunInput, context?: EditorAgentBridgeCallContext): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeHostEditorSaveAndRunOutput>;\n discardAndRun(input: EditorAgentBridgeHostEditorDiscardAndRunInput, context?: EditorAgentBridgeCallContext): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeHostEditorDiscardAndRunOutput>;\n waitReady(input: EditorAgentBridgeHostEditorWaitReadyInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeHostEditorWaitReadyOutput>;\n}\n\nexport interface LocalEditorAgentBridgeAssetSource {\n listAssets(input: EditorAgentBridgeAssetLibraryListInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeAssetLibraryListOutput>;\n getAssetInfo(input: EditorAgentBridgeAssetInfoGetInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeAssetInfoGetOutput>;\n getAssetAnalysis(input: EditorAgentBridgeAssetAnalysisGetInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeAssetAnalysisGetOutput>;\n}\n\nexport interface LocalEditorAgentBridgeObjectSource {\n listObjects(input: EditorAgentBridgeSceneObjectsListInput): EditorAgentBridgeSceneObject[];\n resolveObject(input: EditorAgentBridgeObjectResolveInput): EditorAgentBridgeObjectResolveOutput;\n getObject(objectId: string): EditorAgentBridgeSceneObject | null;\n createPrimitive(input: EditorAgentBridgeObjectCreatePrimitiveInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeObjectCreatePrimitiveOutput>;\n createFromAsset(input: EditorAgentBridgeObjectCreateFromAssetInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeObjectCreateFromAssetOutput>;\n deleteObjects(input: EditorAgentBridgeObjectDeleteInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeObjectDeleteOutput>;\n}\n\nexport interface LocalEditorAgentBridgePrefabSource {\n resolvePrefab(input: EditorAgentBridgePrefabResolveInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgePrefabResolveOutput>;\n openStage(input: EditorAgentBridgePrefabStageOpenInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgePrefabStageOpenOutput>;\n exitStage(input: EditorAgentBridgePrefabStageExitInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgePrefabStageExitOutput>;\n renameAsset(input: EditorAgentBridgePrefabAssetRenameInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgePrefabAssetRenameOutput>;\n getScene(input: EditorAgentBridgePrefabSceneGetInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgePrefabSceneGetOutput>;\n selectNode(input: EditorAgentBridgePrefabNodeSelectInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgePrefabNodeSelectOutput>;\n createNodeFromAsset(input: EditorAgentBridgePrefabNodeCreateFromAssetInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgePrefabNodeMutationOutput>;\n createGroupNode(input: EditorAgentBridgePrefabNodeCreateGroupInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgePrefabNodeMutationOutput>;\n createPrimitiveNode(input: EditorAgentBridgePrefabNodeCreatePrimitiveInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgePrefabNodeMutationOutput>;\n setNodeTransform(input: EditorAgentBridgePrefabNodeSetTransformInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgePrefabNodeMutationOutput>;\n renameNode(input: EditorAgentBridgePrefabNodeRenameInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgePrefabNodeRenameOutput>;\n reparentNode(input: EditorAgentBridgePrefabNodeReparentInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgePrefabNodeMutationOutput>;\n deleteNode(input: EditorAgentBridgePrefabNodeDeleteInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgePrefabNodeMutationOutput>;\n getSourceStructure(input: EditorAgentBridgePrefabSourceStructureGetInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgePrefabSourceStructureGetOutput>;\n listMaterialSlots(input: EditorAgentBridgePrefabMaterialSlotsListInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgePrefabMaterialSlotsListOutput>;\n}\n\nexport interface LocalEditorAgentBridgeSelectionSource {\n getSelection(): EditorAgentBridgeSelectionState;\n setSelection(input: EditorAgentBridgeSelectionSetInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeSelectionSetOutput>;\n}\n\nexport interface LocalEditorAgentBridgeShadowSource {\n getPolicy(input: EditorAgentBridgeShadowPolicyGetInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeShadowPolicyGetOutput>;\n setPolicy(input: EditorAgentBridgeShadowPolicySetInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeShadowPolicySetOutput>;\n listReceivers(input: EditorAgentBridgeShadowReceiversListInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeShadowReceiversListOutput>;\n resolvePreview(input: EditorAgentBridgeShadowResolvePreviewInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeShadowResolvePreviewOutput>;\n inspectDebug(input: EditorAgentBridgeShadowDebugInspectInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeShadowDebugInspectOutput>;\n enterDebugContext(input: EditorAgentBridgeShadowDebugContextEnterInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeShadowDebugContextEnterOutput>;\n clearDebugContext(input: EditorAgentBridgeShadowDebugContextClearInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeShadowDebugContextClearOutput>;\n setDebugOverlay(input: EditorAgentBridgeShadowDebugOverlaySetInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeShadowDebugOverlaySetOutput>;\n clearDebugOverlay(input: EditorAgentBridgeShadowDebugOverlayClearInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeShadowDebugOverlayClearOutput>;\n measureVisibility(input: EditorAgentBridgeShadowDebugVisibilityMeasureInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeShadowDebugVisibilityMeasureOutput>;\n bakeStatic(input: EditorAgentBridgeShadowStaticBakeInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeShadowStaticBakeOutput>;\n invalidateStatic(input: EditorAgentBridgeShadowStaticInvalidateInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeShadowStaticInvalidateOutput>;\n}\n\nexport interface LocalEditorAgentBridgeTransformSource {\n move(input: EditorAgentBridgeTransformMoveInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeTransformMoveOutput>;\n set(input: EditorAgentBridgeTransformSetInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeTransformSetOutput>;\n}\n\nexport interface LocalEditorAgentBridgeViewportSource {\n focusObject(input: EditorAgentBridgeViewportFocusObjectInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeViewportFocusObjectOutput>;\n frameSelection(input: EditorAgentBridgeViewportFrameSelectionInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeViewportFrameSelectionOutput>;\n getCamera(input: EditorAgentBridgeViewportCameraGetInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeViewportCameraState>;\n setCameraPreset(input: EditorAgentBridgeViewportCameraSetPresetInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeViewportCameraSetPresetOutput>;\n orbitCamera(input: EditorAgentBridgeViewportCameraOrbitInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeViewportCameraOrbitOutput>;\n getVisibilitySnapshot(input: EditorAgentBridgeViewportVisibilitySnapshotInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeViewportVisibilitySnapshotOutput>;\n setVisibility(input: EditorAgentBridgeViewportVisibilitySetInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeViewportVisibilityMutationOutput>;\n clearVisibility(input: EditorAgentBridgeViewportVisibilityClearInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeViewportVisibilityMutationOutput>;\n enterIsolation(input: EditorAgentBridgeViewportIsolationEnterInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeViewportIsolationEnterOutput>;\n}\n\nexport interface LocalEditorAgentBridgeStateSource {\n getSnapshot(input: EditorAgentBridgeEditorSnapshotGetInput): EditorAgentBridgeEditorSnapshot;\n getState(input: EditorAgentBridgeEditorStateGetInput): EditorAgentBridgeEditorState;\n}\n\nexport interface LocalEditorAgentBridgeUiSource {\n getRegions(input: EditorAgentBridgeUiRegionsGetInput): LocalEditorAgentBridgeSourceResult<EditorAgentBridgeUiRegionsGetOutput>;\n}\n\nexport interface LocalEditorAgentBridgeCapabilitySources {\n assets: LocalEditorAgentBridgeAssetSource;\n host: LocalEditorAgentBridgeHostSource;\n objects: LocalEditorAgentBridgeObjectSource;\n prefabs: LocalEditorAgentBridgePrefabSource;\n selection: LocalEditorAgentBridgeSelectionSource;\n shadows: LocalEditorAgentBridgeShadowSource;\n transform: LocalEditorAgentBridgeTransformSource;\n viewport: LocalEditorAgentBridgeViewportSource;\n state: LocalEditorAgentBridgeStateSource;\n ui: LocalEditorAgentBridgeUiSource;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"authoring-apply.js","sourceRoot":"","sources":["../src/authoring-apply.ts"],"names":[],"mappings":"AAuBA,MAAM,UAAU,2BAA2B,CACzC,OAA8D;IAE9D,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAC5D,MAAM,OAAO,GAAG,YAAY,CAAC,aAAa,CAAC;IAC3C,IAAI,CAAC,YAAY,CAAC,SAAS,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IACrD,IAAI,YAAY,CAAC,WAAW,KAAK,MAAM,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IAChE,IAAI,OAAO,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,IAAI,OAAO,CAAC,UAAU,KAAK,MAAM,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IAElG,MAAM,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC;QACjD,MAAM;QACN,QAAQ;QACR,YAAY;KACb,CAAC,CAAC;IACH,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAEzB,OAAO;QACL,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE;QACrB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,YAAY,CAAC,KAAK,IAAI,SAAS,YAAY,CAAC,mBAAmB,EAAE;QACxF,YAAY,EAAE,iBAAiB,CAAC,YAAY,CAAC;KAC9C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uCAAuC,CACrD,OAAsC;IAEtC,OAAO;QACL,IAAI,EAAE,gBAAgB;QACtB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,MAA0B,EAC1B,QAAmB;IAEnB,OAAO;QACL,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE;QACrB,QAAQ;QACR,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAmB;IAC5C,OAAO;QACL,GAAG,KAAK;QACR,aAAa,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa;QACrF,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS;KAC7D,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"authoring-apply.js","sourceRoot":"","sources":["../src/authoring-apply.ts"],"names":[],"mappings":"AAuBA,MAAM,UAAU,2BAA2B,CACzC,OAA8D;IAE9D,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAC5D,MAAM,OAAO,GAAG,YAAY,CAAC,aAAa,CAAC;IAC3C,IAAI,CAAC,YAAY,CAAC,SAAS,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IACrD,IAAI,YAAY,CAAC,WAAW,KAAK,MAAM,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IAChE,IAAI,OAAO,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,IAAI,OAAO,CAAC,UAAU,KAAK,MAAM,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IAElG,MAAM,MAAM,GAAG,OAAO,CAAC,2BAA2B,CAAC;QACjD,MAAM;QACN,QAAQ;QACR,YAAY;KACb,CAAC,CAAC;IACH,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAEzB,OAAO;QACL,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE;QACrB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,YAAY,CAAC,KAAK,IAAI,SAAS,YAAY,CAAC,mBAAmB,EAAE;QACxF,YAAY,EAAE,iBAAiB,CAAC,YAAY,CAAC;KAC9C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uCAAuC,CACrD,OAAsC;IAEtC,OAAO;QACL,IAAI,EAAE,gBAAgB;QACtB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,MAA0B,EAC1B,QAAmB;IAEnB,OAAO;QACL,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE;QACrB,QAAQ;QACR,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAmB;IAC5C,OAAO;QACL,GAAG,KAAK;QACR,aAAa,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa;QACrF,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS;KAC7D,CAAC;AACJ,CAAC","sourcesContent":["import type {\n AuthoringApplyCommand,\n AuthoringApplyResult,\n AuthoringSourceRef,\n DocumentCommand,\n RuntimePatch,\n} from '@fps-games/editor-core';\n\nexport interface AuthoringRuntimePatchApplyAdapter<TDocument, TPatch = unknown> {\n createPatchFromRuntimePatch(input: {\n source: AuthoringSourceRef;\n document: TDocument;\n runtimePatch: RuntimePatch;\n }): { patch: TPatch; label?: string } | null;\n}\n\nexport interface CreateAuthoringApplyCommandOptions<TDocument, TPatch = unknown> {\n source: AuthoringSourceRef;\n document: TDocument;\n runtimePatch: RuntimePatch;\n adapter: AuthoringRuntimePatchApplyAdapter<TDocument, TPatch>;\n}\n\nexport function createAuthoringApplyCommand<TDocument, TPatch = unknown>(\n options: CreateAuthoringApplyCommandOptions<TDocument, TPatch>,\n): AuthoringApplyCommand<TPatch> | null {\n const { source, document, runtimePatch, adapter } = options;\n const binding = runtimePatch.sourceBinding;\n if (!runtimePatch.applyable || !binding) return null;\n if (runtimePatch.applyTarget !== source.sourceType) return null;\n if (binding.sourceId !== source.sourceId || binding.sourceType !== source.sourceType) return null;\n\n const result = adapter.createPatchFromRuntimePatch({\n source,\n document,\n runtimePatch,\n });\n if (!result) return null;\n\n return {\n source: { ...source },\n patch: result.patch,\n label: result.label ?? runtimePatch.label ?? `Apply ${runtimePatch.runtimePropertyPath}`,\n runtimePatch: cloneRuntimePatch(runtimePatch),\n };\n}\n\nexport function createDocumentCommandFromAuthoringApply<TDocument, TPatch = unknown>(\n command: AuthoringApplyCommand<TPatch>,\n): DocumentCommand<TDocument, TPatch> {\n return {\n type: 'document.patch',\n patch: command.patch,\n label: command.label,\n };\n}\n\nexport function createAuthoringApplyResult<TDocument>(\n source: AuthoringSourceRef,\n document: TDocument,\n): AuthoringApplyResult<TDocument> {\n return {\n source: { ...source },\n document,\n applied: true,\n };\n}\n\nfunction cloneRuntimePatch(patch: RuntimePatch): RuntimePatch {\n return {\n ...patch,\n sourceBinding: patch.sourceBinding ? { ...patch.sourceBinding } : patch.sourceBinding,\n metadata: patch.metadata ? { ...patch.metadata } : undefined,\n };\n}\n"]}
@@ -1,120 +1,120 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
3
  "packageName": "@fps-games/editor",
4
- "version": "0.2.0-beta.2",
5
- "gitSha": "31baf934768d6324e869ede20cf10e632bc403ff",
6
- "distHash": "c60dd2d9713df02561993ae0638503d19cba28a7fa96f15efb8e545648cf9db9",
7
- "cacheKey": "0.2.0-beta.2-c60dd2d9713d",
4
+ "version": "0.2.0-beta.4",
5
+ "gitSha": "3af070a16bb4fe064c9e529dc457f6d62a1b8a83",
6
+ "distHash": "50f72f4635bc01946e0b64c0a95009bcc45b968161c176960362e56c35bd9838",
7
+ "cacheKey": "0.2.0-beta.4-50f72f4635bc",
8
8
  "bundledPackages": [
9
9
  {
10
10
  "name": "@fps-games/babylon-renderer",
11
- "version": "0.2.0-beta.2",
12
- "distHash": "30aed1ecbb792a42c3581b10d13cfa14f6306139c5b85eba95ac57d9be123dab"
11
+ "version": "0.2.0-beta.4",
12
+ "distHash": "139d995a8a8639cb8961cb8d17166c15c2ea5c0ef413800fc33b2a61eb6bae9d"
13
13
  },
14
14
  {
15
15
  "name": "@fps-games/editor-babylon",
16
- "version": "0.2.0-beta.2",
17
- "distHash": "525d65fc096a076c3927e8e8a28e7ca8f22bc540dc43a1013730403e7c0292b1"
16
+ "version": "0.2.0-beta.4",
17
+ "distHash": "2e45131e4abb054c711c6d2cef651d63039fa54bbe06a2f5bdbf20edf4b00928"
18
18
  },
19
19
  {
20
20
  "name": "@fps-games/editor-browser",
21
- "version": "0.2.0-beta.2",
22
- "distHash": "6bf3b2a3a64c7924e0756024000cb812c4333f3e062750cfe76f6c841dfa50f3"
21
+ "version": "0.2.0-beta.4",
22
+ "distHash": "1dc9a78034c6847da69fd8688b6ff784883994d2670c4c75977f677cb3be9595"
23
23
  },
24
24
  {
25
25
  "name": "@fps-games/editor-core",
26
- "version": "0.2.0-beta.2",
27
- "distHash": "108faecd08c3737761f459f9a01427e25923443d66883de3c8ea5e2d5b646c8d"
26
+ "version": "0.2.0-beta.4",
27
+ "distHash": "5ad33bdf6be07dcc509c1f307c11f151dee75095f5ff55787819979cd57e7e48"
28
28
  },
29
29
  {
30
30
  "name": "@fps-games/editor-forge-play",
31
- "version": "0.2.0-beta.2",
32
- "distHash": "3e72a5c8a02e8ea7aa0f21ce04c5c8bf819b85ea6df1a4e291922b58a95fa8c6"
31
+ "version": "0.2.0-beta.4",
32
+ "distHash": "c76fb413ce05bbcae6481366d71aed662bc56c65827b6dddbde5478a2740e079"
33
33
  },
34
34
  {
35
35
  "name": "@fps-games/editor-playable-sdk",
36
- "version": "0.2.0-beta.2",
37
- "distHash": "c9c5b1c300e176f4b945c39e1ab946064a5f7c8aed68b709d0192873c01caf82"
36
+ "version": "0.2.0-beta.4",
37
+ "distHash": "db085a25a65765db6d18c31b39a57cbf599b16c8d1f6b8f1a90f67479b4ac108"
38
38
  },
39
39
  {
40
40
  "name": "@fps-games/editor-protocol",
41
- "version": "0.2.0-beta.2",
42
- "distHash": "0298c40496b044d8161dee9a0480aca042a76a362258ca70d7bf8b95abba7ecc"
41
+ "version": "0.2.0-beta.4",
42
+ "distHash": "7877cc4b750c9c6d78c885f736f8c17e87a55d611ee4c311e7394c3834c3e241"
43
43
  },
44
44
  {
45
45
  "name": "@fps-games/editor-tooling",
46
- "version": "0.2.0-beta.2",
47
- "distHash": "094065e0ef101606d7d8ce60ccf0d741c1662160d3524e8f852e49d5c0f85088"
46
+ "version": "0.2.0-beta.4",
47
+ "distHash": "12978b8fc285b62185ecc723089e489ec8f9c5192d2c20f772f8c5b3c527a951"
48
48
  },
49
49
  {
50
50
  "name": "@fps-games/playable-assets",
51
- "version": "0.2.0-beta.2",
52
- "distHash": "4f69f1bef7c47feb966bc1533e9f71ffc67542a11a3f19e262c391c77e257592"
51
+ "version": "0.2.0-beta.4",
52
+ "distHash": "37a544c7fef71429562a181f3e74008b1d40ed8fcb26e19b604ddaa1298cbd18"
53
53
  },
54
54
  {
55
55
  "name": "@fps-games/playable-contracts",
56
- "version": "0.2.0-beta.2",
57
- "distHash": "a2f8fa7b54012e8664ac5dff108e9fb78d1da805bd8bbcabd3fb2d060527576f"
56
+ "version": "0.2.0-beta.4",
57
+ "distHash": "c82be59868699be97bf3639b6961714877fb3d6c45098dc2366690a7f3976cde"
58
58
  },
59
59
  {
60
60
  "name": "@fps-games/playable-rendering",
61
- "version": "0.2.0-beta.2",
62
- "distHash": "f62450835aece5b4bfb0f39321109fd3e9e85a6e50f75c7100abf5f04b9b0a08"
61
+ "version": "0.2.0-beta.4",
62
+ "distHash": "64b91540fbe200093158c2229b431dffc3965b2dde5615c6824c27983be5bd7b"
63
63
  },
64
64
  {
65
65
  "name": "@fps-games/playable-runtime",
66
- "version": "0.2.0-beta.2",
67
- "distHash": "1e816e31adf3e0e6b788a9ec9c5375055045cb8be02c274c10b27efc5e8d5b2f"
66
+ "version": "0.2.0-beta.4",
67
+ "distHash": "8c8388cd6a9ed3a73a879f90c8bb103a138563c1d6030470beae59b0a87fabeb"
68
68
  },
69
69
  {
70
70
  "name": "@fps-games/playable-runtime-data",
71
- "version": "0.2.0-beta.2",
72
- "distHash": "f60f81d1a9b8b236a5fd11282facaf297b9eed3aaa478a9f1e278de7e18329c4"
71
+ "version": "0.2.0-beta.4",
72
+ "distHash": "44bf5edaf873b0888d790a142895d24acae9896b5d38836d6cee1d85a5d9483e"
73
73
  },
74
74
  {
75
75
  "name": "@fps-games/playable-scene",
76
- "version": "0.2.0-beta.2",
77
- "distHash": "b1ab3f7a2c61b1f28f54e18848e6f19792e1e4e8016b77a316a292d733a88ef2"
76
+ "version": "0.2.0-beta.4",
77
+ "distHash": "c9988e0a517dbda0250812d61c3cca1b149b25ac36231f5f2b57346f3435dd92"
78
78
  },
79
79
  {
80
80
  "name": "@fps-games/plugin-api",
81
- "version": "0.2.0-beta.2",
82
- "distHash": "8ad094b24cafb4606d0aee5f083aff83ca1e309473977121817db8b4cacf9ecd"
81
+ "version": "0.2.0-beta.4",
82
+ "distHash": "06c15e6ba76748b069aae75d1ec325ad2842e38bad37f91a25fd878ed1bf73f6"
83
83
  },
84
84
  {
85
85
  "name": "@fps-games/plugin-assets",
86
- "version": "0.2.0-beta.2",
87
- "distHash": "5ea5b4fc625883dec307fab8c6061553e490be0fc892f2c14757bd26474bdec0"
86
+ "version": "0.2.0-beta.4",
87
+ "distHash": "a0c4dadc5ef040e0d3b83e71239490d7f57ffc21ee47fe1cf40e6c33b9db897f"
88
88
  },
89
89
  {
90
90
  "name": "@fps-games/plugin-host",
91
- "version": "0.2.0-beta.2",
92
- "distHash": "0ac27e48828cd32f04a231c98bc98707cd1036efd3b8e92aaa9c2ca0f2769c91"
91
+ "version": "0.2.0-beta.4",
92
+ "distHash": "f46e8257e5ed78b4dff21a905d3cf7c54933a6ff1ae458ae2d73126dfc0d8f56"
93
93
  },
94
94
  {
95
95
  "name": "@fps-games/plugin-markers",
96
- "version": "0.2.0-beta.2",
97
- "distHash": "7950c6e6d137edc1bbbd7c24ba25aebb7723da7a4ab0129e75346dcb51fe4cf1"
96
+ "version": "0.2.0-beta.4",
97
+ "distHash": "c8842db3cb39e90e96273c8e86699c046747b8244fe1bbe55132a3e23e20e37e"
98
98
  },
99
99
  {
100
100
  "name": "@fps-games/plugin-materials",
101
- "version": "0.2.0-beta.2",
102
- "distHash": "66dc60a46efc01ac25cc12c91996785ac7bd40eda9b2fa962fd45f2eca03a8d8"
101
+ "version": "0.2.0-beta.4",
102
+ "distHash": "82203101b8cf31345e3cf70ffcc521b1ab3de7bdb94ef2750a7268e73511b8c3"
103
103
  },
104
104
  {
105
105
  "name": "@fps-games/plugin-rendering",
106
- "version": "0.2.0-beta.2",
107
- "distHash": "c1ec8dd61de17e880c898747e0f2bf5b42d66c9fd3abdff177fd1449e77405d3"
106
+ "version": "0.2.0-beta.4",
107
+ "distHash": "28de2f9c65651328eb1d7e25eddb58cebed8619be94e675868a2ef62103464f8"
108
108
  },
109
109
  {
110
110
  "name": "@fps-games/plugin-scene",
111
- "version": "0.2.0-beta.2",
112
- "distHash": "5b78a03eb00f219bffc72c915395e8832f5909124d26081a1a412159e364ec2c"
111
+ "version": "0.2.0-beta.4",
112
+ "distHash": "b075093cfc667c696fc875edf25bc937d058f349e83c8fb751bf635529155ce8"
113
113
  },
114
114
  {
115
115
  "name": "@fps-games/plugin-shadows",
116
- "version": "0.2.0-beta.2",
117
- "distHash": "2aeecc1e105c6e6ed1b1db00d6a3440633179d09ad5251364b20808302392a93"
116
+ "version": "0.2.0-beta.4",
117
+ "distHash": "02b20ab2e06a7454f0fc9ba0e006c08b0532145e2dc9f8f4fb5fd1c5d5f167e3"
118
118
  }
119
119
  ]
120
120
  }
@@ -1 +1 @@
1
- {"version":3,"file":"editor-plugin-agent-capabilities.js","sourceRoot":"","sources":["../src/editor-plugin-agent-capabilities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editor-plugin-agent-capabilities.js","sourceRoot":"","sources":["../src/editor-plugin-agent-capabilities.ts"],"names":[],"mappings":"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","sourcesContent":["import type { FpsEditorPluginHost } from '@fps-games/editor-core/plugin-host';\nimport type { EditorAgentBridge } from '@fps-games/editor-core';\n\nexport function registerEditorPluginAgentCapabilities(\n bridge: EditorAgentBridge,\n pluginHost: FpsEditorPluginHost | undefined,\n): () => void {\n if (!pluginHost) return () => undefined;\n if (pluginHost.state !== 'started' || pluginHost.transitioning) {\n throw new Error('Plugin Agent capabilities require an idle started Editor Plugin Host.');\n }\n const commands = pluginHost.listCommands().filter(command => command.agent);\n const existingIds = new Set(bridge.listCapabilities().map(capability => capability.id));\n const unregister: Array<() => void> = [];\n try {\n for (const command of commands) {\n const manifest = command.agent!;\n if (existingIds.has(manifest.id)) {\n throw new Error(`Plugin Agent capability conflicts with an existing capability: ${manifest.id}`);\n }\n existingIds.add(manifest.id);\n unregister.push(bridge.registerCapability({\n manifest,\n available: () => (\n pluginHost.state === 'started' && !pluginHost.transitioning\n ? true\n : `Editor Plugin Host is not available: ${pluginHost.state}`\n ),\n handler: input => pluginHost.executeCommand(command.command, input),\n }));\n }\n } catch (error) {\n try {\n disposePluginAgentCapabilities(unregister);\n } catch (cleanupError) {\n throw combinePluginAgentCapabilityErrors(error, cleanupError, 'registration');\n }\n throw error;\n }\n let active = true;\n return () => {\n if (!active) return;\n disposePluginAgentCapabilities(unregister);\n active = false;\n };\n}\n\nfunction combinePluginAgentCapabilityErrors(\n cause: unknown,\n cleanupError: unknown,\n operation: string,\n): Error {\n const error = new Error(`Plugin Agent capability ${operation} failed and cleanup reported errors.`) as Error & {\n errors: unknown[];\n };\n error.errors = [cause, cleanupError];\n return error;\n}\n\nfunction disposePluginAgentCapabilities(unregister: readonly (() => void)[]): void {\n const errors: unknown[] = [];\n for (const dispose of [...unregister].reverse()) {\n try { dispose(); } catch (error) { errors.push(error); }\n }\n if (errors.length > 0) {\n const error = new Error('Plugin Agent capability cleanup failed.') as Error & { errors: unknown[] };\n error.errors = errors;\n throw error;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"editor-plugin-hierarchy-command.js","sourceRoot":"","sources":["../src/editor-plugin-hierarchy-command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editor-plugin-hierarchy-command.js","sourceRoot":"","sources":["../src/editor-plugin-hierarchy-command.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n registerLocalEditorBrowserHierarchyContextAction,\n resolveLocalEditorBrowserHierarchyContextActions,\n type LocalEditorBrowserHierarchyContextActionRegistration,\n} from '@fps-games/editor-browser';\nimport {\n registerFpsEditorCommand,\n type FpsEditorCommandRegistration,\n type FpsEditorPluginHost,\n} from '@fps-games/editor-core/plugin-host';\nimport type { FpsPluginContext } from '@fps-games/plugin-api';\nimport type { FpsCommand } from '@fps-games/plugin-api';\nimport type { EditorAgentBridgeJsonObject } from '@fps-games/editor-protocol';\nimport type {\n LocalEditorHarnessHierarchyContextActionRegistration,\n LocalEditorHarnessPatchResult,\n} from './local-editor-harness.js';\n\nexport interface FpsEditorHierarchyCommandInput {\n readonly contextNodeId: string | null;\n readonly targetIds: readonly string[];\n readonly activeId: string | null;\n readonly payload?: EditorAgentBridgeJsonObject;\n}\n\nexport type FpsEditorHierarchyCommandResult<TPatch = unknown> =\n | boolean\n | void\n | LocalEditorHarnessPatchResult<TPatch>;\n\nexport interface FpsEditorHierarchyCommandRegistration<TDocument = unknown, TPatch = unknown> {\n readonly command: FpsEditorCommandRegistration<\n FpsEditorHierarchyCommandInput,\n FpsEditorHierarchyCommandResult<TPatch>\n >;\n readonly action: Omit<LocalEditorBrowserHierarchyContextActionRegistration<TDocument>, 'commandId'>;\n}\n\nexport function registerFpsEditorHierarchyCommand<TDocument, TPatch>(\n context: FpsPluginContext,\n registration: FpsEditorHierarchyCommandRegistration<TDocument, TPatch>,\n handler: (\n input: FpsEditorHierarchyCommandInput,\n ) => FpsEditorHierarchyCommandResult<TPatch> | Promise<FpsEditorHierarchyCommandResult<TPatch>>,\n): void {\n if (registration.action.id === registration.command.command.id) {\n throw new Error('Editor Hierarchy action id must differ from its command id.');\n }\n registerFpsEditorCommand(context, registration.command, handler);\n registerLocalEditorBrowserHierarchyContextAction(context, {\n ...registration.action,\n commandId: registration.command.command.id,\n });\n}\n\nexport function createLocalEditorHarnessPluginHierarchyContextActions<\n TDocument,\n TPatch,\n>(\n pluginHost: FpsEditorPluginHost | undefined,\n): readonly LocalEditorHarnessHierarchyContextActionRegistration<TDocument, TPatch>[] {\n if (!pluginHost) return [];\n if (pluginHost.state !== 'started' || pluginHost.transitioning) {\n throw new Error('Plugin Hierarchy actions require an idle started Editor Plugin Host.');\n }\n const commands = new Map(pluginHost.listCommands().map(command => [command.command.id, command.command]));\n return resolveLocalEditorBrowserHierarchyContextActions<TDocument>(pluginHost.contributions).map(action => {\n const commandId = action.commandId;\n if (!commandId) throw new Error(`Plugin Hierarchy action has no command: ${action.id}`);\n const command = commands.get(commandId) as FpsCommand<\n FpsEditorHierarchyCommandInput,\n FpsEditorHierarchyCommandResult<TPatch>\n > | undefined;\n if (!command) throw new Error(`Plugin Hierarchy action references an unknown command: ${action.id} -> ${commandId}`);\n return {\n id: action.id,\n label: action.label,\n shortcut: action.shortcut,\n danger: action.danger,\n placement: action.placement,\n separatorBefore: action.separatorBefore,\n children: action.children\n ? context => {\n const children = typeof action.children === 'function'\n ? action.children(context.browserContext)\n : action.children ?? [];\n return children.map(child => ({\n ...child,\n disabled: child.disabled ? () => child.disabled!(context.browserContext) : undefined,\n payload: child.payload ? () => child.payload!(context.browserContext) : undefined,\n }));\n }\n : undefined,\n visible: action.visible ? context => action.visible!(context.browserContext) : undefined,\n disabled: action.disabled ? context => action.disabled!(context.browserContext) : undefined,\n run: context => pluginHost.executeCommand(\n command,\n Object.freeze({\n contextNodeId: context.contextNodeId,\n targetIds: Object.freeze([...context.targetIds]),\n activeId: context.activeId,\n ...(context.payload ? { payload: cloneHierarchyCommandPayload(context.payload) } : {}),\n }),\n ).then(result => assertHierarchyCommandResult<TPatch>(result, commandId)),\n };\n });\n}\n\nfunction cloneHierarchyCommandPayload(value: Record<string, unknown>): EditorAgentBridgeJsonObject {\n return cloneHierarchyJsonValue(value, '$payload', new WeakSet()) as EditorAgentBridgeJsonObject;\n}\n\nfunction cloneHierarchyJsonValue(value: unknown, path: string, ancestors: WeakSet<object>): unknown {\n if (value === null || typeof value === 'string' || typeof value === 'boolean') return value;\n if (typeof value === 'number' && Number.isFinite(value)) return value;\n if (!value || typeof value !== 'object') {\n throw new Error(`Plugin Hierarchy payload must contain JSON values: ${path}`);\n }\n if (ancestors.has(value)) throw new Error(`Plugin Hierarchy payload must not contain cycles: ${path}`);\n const prototype = Object.getPrototypeOf(value);\n if (prototype !== Object.prototype && prototype !== null && !Array.isArray(value)) {\n throw new Error(`Plugin Hierarchy payload must contain plain objects: ${path}`);\n }\n ancestors.add(value);\n try {\n if (Array.isArray(value)) {\n const result: unknown[] = [];\n for (let index = 0; index < value.length; index += 1) {\n const descriptor = Object.getOwnPropertyDescriptor(value, String(index));\n if (!descriptor?.enumerable || !('value' in descriptor)) {\n throw new Error(`Plugin Hierarchy payload arrays must contain enumerable data fields: ${path}[${index}]`);\n }\n result.push(cloneHierarchyJsonValue(descriptor.value, `${path}[${index}]`, ancestors));\n }\n for (const key of Reflect.ownKeys(value)) {\n if (key === 'length') continue;\n if (typeof key !== 'string' || !/^(0|[1-9][0-9]*)$/.test(key) || Number(key) >= value.length) {\n throw new Error(`Plugin Hierarchy payload arrays contain unsupported properties: ${path}`);\n }\n }\n return Object.freeze(result);\n }\n const result: Record<string, unknown> = {};\n for (const key of Reflect.ownKeys(value)) {\n if (typeof key !== 'string' || key === '__proto__') {\n throw new Error(`Plugin Hierarchy payload contains an unsupported key: ${path}`);\n }\n const descriptor = Object.getOwnPropertyDescriptor(value, key);\n if (!descriptor?.enumerable || !('value' in descriptor)) {\n throw new Error(`Plugin Hierarchy payload must contain enumerable data fields: ${path}.${key}`);\n }\n result[key] = cloneHierarchyJsonValue(descriptor.value, `${path}.${key}`, ancestors);\n }\n return Object.freeze(result);\n } finally {\n ancestors.delete(value);\n }\n}\n\nfunction assertHierarchyCommandResult<TPatch>(\n value: unknown,\n commandId: string,\n): FpsEditorHierarchyCommandResult<TPatch> {\n if (value === undefined || typeof value === 'boolean') return value;\n if (value && typeof value === 'object' && Object.prototype.hasOwnProperty.call(value, 'patch')) {\n return value as LocalEditorHarnessPatchResult<TPatch>;\n }\n throw new Error(`Plugin Hierarchy command returned an invalid action result: ${commandId}`);\n}\n"]}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,kCAAkC,EAClC,iCAAiC,EACjC,oCAAoC,GACrC,MAAM,2BAA2B,CAAC;AAkBnC,OAAO,EAAE,4BAA4B,EAAE,MAAM,kCAAkC,CAAC;AAChF,OAAO,EACL,8BAA8B,EAC9B,8BAA8B,EAC9B,2BAA2B,EAC3B,6BAA6B,EAC7B,+BAA+B,EAC/B,0BAA0B,EAC1B,0BAA0B,EAC1B,uBAAuB,EACvB,uBAAuB,EACvB,4BAA4B,GAC7B,MAAM,+BAA+B,CAAC;AAgCvC,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EACrB,0BAA0B,EAC1B,mCAAmC,EACnC,uCAAuC,EACvC,iCAAiC,GAClC,MAAM,uBAAuB,CAAC;AAkB/B,OAAO,EACL,mCAAmC,EACnC,wCAAwC,GACzC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,qBAAqB,GACtB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,mBAAmB,EACnB,WAAW,GACZ,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,oBAAoB,EACpB,YAAY,GACb,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,uBAAuB,EACvB,eAAe,GAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,qBAAqB,EACrB,aAAa,GACd,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,uBAAuB,EACvB,eAAe,GAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,qBAAqB,EACrB,aAAa,GACd,MAAM,2BAA2B,CAAC;AAInC,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,8CAA8C,EAC9C,wBAAwB,EACxB,qCAAqC,EACrC,qCAAqC,GACtC,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,0CAA0C,GAC3C,MAAM,2BAA2B,CAAC;AAwBnC,OAAO,EACL,kCAAkC,EAClC,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AAKpC,OAAO,EACL,iCAAiC,GAClC,MAAM,sCAAsC,CAAC;AAO9C,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,kCAAkC,EAClC,iCAAiC,EACjC,oCAAoC,GACrC,MAAM,2BAA2B,CAAC;AAkBnC,OAAO,EAAE,4BAA4B,EAAE,MAAM,kCAAkC,CAAC;AAChF,OAAO,EACL,8BAA8B,EAC9B,8BAA8B,EAC9B,2BAA2B,EAC3B,6BAA6B,EAC7B,+BAA+B,EAC/B,0BAA0B,EAC1B,0BAA0B,EAC1B,uBAAuB,EACvB,uBAAuB,EACvB,4BAA4B,GAC7B,MAAM,+BAA+B,CAAC;AAgCvC,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EACrB,0BAA0B,EAC1B,mCAAmC,EACnC,uCAAuC,EACvC,iCAAiC,GAClC,MAAM,uBAAuB,CAAC;AAkB/B,OAAO,EACL,mCAAmC,EACnC,wCAAwC,GACzC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,qBAAqB,GACtB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,mBAAmB,EACnB,WAAW,GACZ,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,oBAAoB,EACpB,YAAY,GACb,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,uBAAuB,EACvB,eAAe,GAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,qBAAqB,EACrB,aAAa,GACd,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,uBAAuB,EACvB,eAAe,GAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,qBAAqB,EACrB,aAAa,GACd,MAAM,2BAA2B,CAAC;AAInC,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,8CAA8C,EAC9C,wBAAwB,EACxB,qCAAqC,EACrC,qCAAqC,GACtC,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,0CAA0C,GAC3C,MAAM,2BAA2B,CAAC;AAwBnC,OAAO,EACL,kCAAkC,EAClC,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AAKpC,OAAO,EACL,iCAAiC,GAClC,MAAM,sCAAsC,CAAC;AAO9C,cAAc,sBAAsB,CAAC","sourcesContent":["export type {\n LocalEditorThemeController,\n LocalEditorThemeName,\n} from '@fps-games/editor-browser';\nexport {\n mountEditorRuntimeCameraDebugPanel,\n mountEditorRuntimeDebugPanelShell,\n mountEditorRuntimeLightingDebugPanel,\n} from '@fps-games/editor-browser';\nexport type {\n EditorRuntimeCameraDebugPanel,\n EditorRuntimeCameraDebugPanelOptions,\n EditorRuntimeCameraDebugPanInput,\n EditorRuntimeCameraDebugScreenPoint,\n EditorRuntimeCameraDebugViewportRect,\n EditorRuntimeDebugPanelLanguage,\n EditorRuntimeDebugPanelMode,\n EditorRuntimeDebugPanelPlacement,\n EditorRuntimeDebugPanelShell,\n EditorRuntimeDebugPanelShellOptions,\n EditorRuntimeDebugPanelStatusOptions,\n EditorRuntimeLightingDebugPanel,\n EditorRuntimeLightingDebugPanelOptions,\n} from '@fps-games/editor-browser';\nexport type { BabylonRuntimeGlobal } from '@fps-games/editor-babylon';\nexport type { DocumentAdapter } from '@fps-games/editor-core/document-adapter';\nexport { FPS_EDITOR_LIFECYCLE_CHANGED } from '@fps-games/editor-core/lifecycle';\nexport {\n FPS_EDITOR_ACTIVE_TOOL_CHANGED,\n FPS_EDITOR_DIAGNOSTIC_REPORTED,\n FPS_EDITOR_DOCUMENT_CHANGED,\n FPS_EDITOR_DOCUMENT_COMMITTED,\n FPS_EDITOR_DOCUMENT_SAVE_FAILED,\n FPS_EDITOR_HISTORY_CHANGED,\n FPS_EDITOR_PREVIEW_CHANGED,\n FPS_EDITOR_SCOPE_CLOSED,\n FPS_EDITOR_SCOPE_OPENED,\n FPS_EDITOR_SELECTION_CHANGED,\n} from '@fps-games/editor-core/events';\nexport type {\n FpsEditorActiveToolChangedEvent,\n FpsEditorDiagnosticReportedEvent,\n FpsEditorDocumentChangedEvent,\n FpsEditorDocumentCommittedEvent,\n FpsEditorDocumentSaveFailedEvent,\n FpsEditorEventContext,\n FpsEditorEventPublisher,\n FpsEditorHistoryChangedEvent,\n FpsEditorPreviewChangedEvent,\n FpsEditorScopeEvent,\n FpsEditorSelectionChangedEvent,\n} from '@fps-games/editor-core/events';\nexport type {\n FpsEditorApplicationLifecycleState,\n FpsEditorDocumentLifecycleState,\n FpsEditorLifecycleChangedEvent,\n FpsEditorLifecycleFailureEvent,\n FpsEditorLifecycleListener,\n FpsEditorLifecycleParticipant,\n FpsEditorLifecycleScopeSnapshot,\n FpsEditorLifecycleService,\n FpsEditorLifecycleSnapshot,\n FpsEditorLifecycleTransition,\n FpsEditorLifecycleTransitionContext,\n FpsEditorLifecycleTransitionEvent,\n FpsEditorLifecycleTransitionType,\n FpsEditorModeLifecycleState,\n FpsEditorPreviewLifecycleState,\n FpsEditorProjectLifecycleState,\n} from '@fps-games/editor-core/lifecycle';\nexport {\n defineFpsCommand,\n defineFpsEvent,\n defineFpsPluginEvent,\n defineFpsPluginEntry,\n defineFpsPluginManifest,\n defineFpsPluginReference,\n defineFpsServiceToken,\n getFpsPluginEventNamespace,\n resolveFpsPluginEnvironmentProvides,\n resolveFpsPluginEnvironmentRequirements,\n resolveFpsPluginEnvironmentScopes,\n} from '@fps-games/plugin-api';\nexport type {\n FpsPluginEnvironmentContract,\n FpsCommand,\n FpsDiagnostic,\n FpsDisposer,\n FpsEvent,\n FpsEventEnvelope,\n FpsPluginContext,\n FpsPluginEntry,\n FpsPluginEnvironment,\n FpsPluginEnvironmentModule,\n FpsPluginEnvironmentModuleEntry,\n FpsPluginManifest,\n FpsPluginReference,\n FpsPluginScope,\n FpsServiceToken,\n} from '@fps-games/plugin-api';\nexport {\n createFpsPluginEnvironmentLifecycle,\n createFpsPluginHostFromEnvironmentModule,\n} from '@fps-games/plugin-host';\nexport {\n babylonRendererPlugin,\n} from '@fps-games/babylon-renderer/config';\nexport {\n FPS_SCENE_PLUGIN_ID,\n scenePlugin,\n} from '@fps-games/plugin-scene';\nexport {\n FPS_ASSETS_PLUGIN_ID,\n assetsPlugin,\n} from '@fps-games/plugin-assets';\nexport {\n FPS_MATERIALS_PLUGIN_ID,\n materialsPlugin,\n} from '@fps-games/plugin-materials';\nexport {\n FPS_MARKERS_PLUGIN_ID,\n markersPlugin,\n} from '@fps-games/plugin-markers';\nexport {\n FPS_RENDERING_PLUGIN_ID,\n renderingPlugin,\n} from '@fps-games/plugin-rendering';\nexport {\n FPS_SHADOWS_PLUGIN_ID,\n shadowsPlugin,\n} from '@fps-games/plugin-shadows';\nexport type {\n FpsBabylonRendererPluginConfig,\n} from '@fps-games/babylon-renderer/config';\nexport {\n FPS_EDITOR_CONTRIBUTIONS,\n createFpsEditorPluginHost,\n createFpsEditorPluginHostFromEnvironmentModule,\n registerFpsEditorCommand,\n registerFpsEditorLifecycleParticipant,\n resolveFpsEditorLifecycleParticipants,\n} from '@fps-games/editor-core/plugin-host';\nexport {\n registerLocalEditorBrowserInspectorControl,\n} from '@fps-games/editor-browser';\nexport type {\n LocalEditorBrowserInspectorControlRegistration,\n LocalEditorBrowserInspectorControlRenderContext,\n LocalEditorBrowserInspectorControlRenderer,\n} from '@fps-games/editor-browser';\nexport type {\n FpsEditorPluginHost,\n FpsEditorPluginHostOptions,\n FpsEditorPluginEnvironmentModuleHostOptions,\n FpsEditorCommandRegistration,\n} from '@fps-games/editor-core/plugin-host';\nexport type {\n FpsPluginHostInspection,\n FpsPluginHostState,\n FpsPluginInspectionDiagnostic,\n FpsPluginInspection,\n FpsPluginLifecycleState,\n} from '@fps-games/plugin-host';\nexport type {\n EditorRuntime,\n EditorRuntimeChange,\n PersistentBinding,\n} from '@fps-games/editor-protocol';\nexport {\n EDITOR_AGENT_BRIDGE_SCHEMA_VERSION,\n EDITOR_COMMAND_NAME,\n EDITOR_EVENT_NAME,\n EDITOR_POST_MESSAGE,\n} from '@fps-games/editor-protocol';\nexport type {\n EditorAgentBridgeCapabilityManifest,\n EditorAgentBridgeJsonObject,\n} from '@fps-games/editor-protocol';\nexport {\n registerFpsEditorHierarchyCommand,\n} from './editor-plugin-hierarchy-command.js';\nexport type {\n FpsEditorHierarchyCommandInput,\n FpsEditorHierarchyCommandRegistration,\n FpsEditorHierarchyCommandResult,\n} from './editor-plugin-hierarchy-command.js';\n\nexport * from './authoring-apply.js';\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"local-editor-lifecycle-operations.js","sourceRoot":"","sources":["../../src/internal/local-editor-lifecycle-operations.ts"],"names":[],"mappings":"AA4BA,MAAM,mBAAmB,GAAG,IAAI,OAAO,EAAiD,CAAC;AAEzF,MAAM,UAAU,6CAA6C,CAC3D,OAAe,EACf,UAAiD;IAEjD,mBAAmB,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,wCAAwC,CACtD,OAAe;IAEf,MAAM,UAAU,GAAG,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACpD,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACvF,OAAO,UAAU,CAAC;AACpB,CAAC"}
1
+ {"version":3,"file":"local-editor-lifecycle-operations.js","sourceRoot":"","sources":["../../src/internal/local-editor-lifecycle-operations.ts"],"names":[],"mappings":"AA4BA,MAAM,mBAAmB,GAAG,IAAI,OAAO,EAAiD,CAAC;AAEzF,MAAM,UAAU,6CAA6C,CAC3D,OAAe,EACf,UAAiD;IAEjD,mBAAmB,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,wCAAwC,CACtD,OAAe;IAEf,MAAM,UAAU,GAAG,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACpD,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACvF,OAAO,UAAU,CAAC;AACpB,CAAC","sourcesContent":["import type {\n PlayableLocalEditorLifecycleController,\n PlayableLocalEditorLifecycleOperations,\n} from '@fps-games/editor-playable-sdk/internal/local-harness';\n\nexport type LocalEditorLifecycleControllerBinding = Pick<\n PlayableLocalEditorLifecycleController,\n | 'enterEditor'\n | 'saveScene'\n | 'saveAndRunGame'\n | 'discardAndRunGame'\n | 'prepareSaveAndRunGame'\n | 'prepareDiscardAndRunGame'\n> & Partial<Pick<\n PlayableLocalEditorLifecycleController,\n | 'lifecycle'\n | 'synchronizeDocumentState'\n | 'registerParticipant'\n | 'openScope'\n | 'addScopeResource'\n | 'closeScope'\n>>;\n\nexport interface LocalEditorHarnessLifecycleOperations\n extends PlayableLocalEditorLifecycleOperations {\n setLifecycleController(controller: LocalEditorLifecycleControllerBinding): void;\n}\n\nconst operationsByHarness = new WeakMap<object, LocalEditorHarnessLifecycleOperations>();\n\nexport function registerLocalEditorHarnessLifecycleOperations(\n harness: object,\n operations: LocalEditorHarnessLifecycleOperations,\n): void {\n operationsByHarness.set(harness, operations);\n}\n\nexport function getLocalEditorHarnessLifecycleOperations(\n harness: object,\n): LocalEditorHarnessLifecycleOperations {\n const operations = operationsByHarness.get(harness);\n if (!operations) throw new Error('Local editor lifecycle operations are unavailable.');\n return operations;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"local-editor-agent-actions.d.ts","sourceRoot":"","sources":["../src/local-editor-agent-actions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC3B,iBAAiB,EACjB,kBAAkB,EAClB,2BAA2B,EAC3B,6BAA6B,EAC9B,MAAM,4BAA4B,CAAC;AAiBpC,OAAO,KAAK,EAEV,oDAAoD,EACrD,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,2BAA2B,CAAC;AAEnF,MAAM,WAAW,yCAAyC,CAAC,SAAS;IAClE,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,aAAa,EAAE,OAAO,GAAG,IAAI,CAAC;IAC9B,cAAc,EAAE,SAAS,OAAO,EAAE,CAAC;IACnC,cAAc,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;CAC5C;AAED,MAAM,WAAW,4CAA4C,CAAC,SAAS;IACrE,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,cAAc,EAAE,SAAS,OAAO,EAAE,CAAC;IACnC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;CAC7D;AAED,MAAM,WAAW,2CAA2C,CAAC,SAAS,CACpE,SAAQ,4CAA4C,CAAC,SAAS,CAAC;IAC/D,gBAAgB,EAAE,kBAAkB,CAAC;CACtC;AAED,MAAM,WAAW,sCAAsC,CAAC,SAAS;IAC/D,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5E,iBAAiB,CAAC,QAAQ,EAAE,SAAS,GAAG,iCAAiC,EAAE,CAAC;IAC5E,iBAAiB,CAAC,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;IAC/E,cAAc,CAAC,CAAC,QAAQ,EAAE,SAAS,GAAG,kBAAkB,GAAG,IAAI,CAAC;IAChE,oBAAoB,CAAC,CAAC,QAAQ,EAAE,SAAS,GAAG,2BAA2B,EAAE,CAAC;IAC1E,sBAAsB,CAAC,CAAC,QAAQ,EAAE,SAAS,GAAG,6BAA6B,EAAE,CAAC;IAC9E,mBAAmB,CAAC,CAAC,KAAK,EAAE,yCAAyC,CAAC,SAAS,CAAC,GAAG,2BAA2B,GAAG,IAAI,GAAG,SAAS,CAAC;IAClI,sBAAsB,CAAC,CAAC,KAAK,EAAE,4CAA4C,CAAC,SAAS,CAAC,GAAG,2BAA2B,GAAG,IAAI,GAAG,SAAS,CAAC;IACxI,qBAAqB,CAAC,CAAC,KAAK,EAAE,2CAA2C,CAAC,SAAS,CAAC,GAAG,2BAA2B,GAAG,IAAI,GAAG,SAAS,CAAC;IACtI,MAAM,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACpC,WAAW,CAAC,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;CACpC;AAED,eAAO,MAAM,4BAA4B;;;;;;CAM/B,CAAC;AAEX,wBAAgB,6CAA6C,CAAC,SAAS,EACrE,OAAO,EAAE,sCAAsC,CAAC,SAAS,CAAC,GACzD,oDAAoD,CAAC,SAAS,CAAC,EAAE,CA8KnE"}
1
+ {"version":3,"file":"local-editor-agent-actions.d.ts","sourceRoot":"","sources":["../src/local-editor-agent-actions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,2BAA2B,EAC3B,iBAAiB,EACjB,kBAAkB,EAClB,2BAA2B,EAC3B,6BAA6B,EAC9B,MAAM,4BAA4B,CAAC;AAiBpC,OAAO,KAAK,EAEV,oDAAoD,EACrD,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,2BAA2B,CAAC;AAEnF,MAAM,WAAW,yCAAyC,CAAC,SAAS;IAClE,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,aAAa,EAAE,OAAO,GAAG,IAAI,CAAC;IAC9B,cAAc,EAAE,SAAS,OAAO,EAAE,CAAC;IACnC,cAAc,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;CAC5C;AAED,MAAM,WAAW,4CAA4C,CAAC,SAAS;IACrE,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,cAAc,EAAE,SAAS,OAAO,EAAE,CAAC;IACnC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;CAC7D;AAED,MAAM,WAAW,2CAA2C,CAAC,SAAS,CACpE,SAAQ,4CAA4C,CAAC,SAAS,CAAC;IAC/D,gBAAgB,EAAE,kBAAkB,CAAC;CACtC;AAED,MAAM,WAAW,sCAAsC,CAAC,SAAS;IAC/D,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5E,iBAAiB,CAAC,QAAQ,EAAE,SAAS,GAAG,iCAAiC,EAAE,CAAC;IAC5E,iBAAiB,CAAC,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;IAC/E,cAAc,CAAC,CAAC,QAAQ,EAAE,SAAS,GAAG,kBAAkB,GAAG,IAAI,CAAC;IAChE,oBAAoB,CAAC,CAAC,QAAQ,EAAE,SAAS,GAAG,2BAA2B,EAAE,CAAC;IAC1E,sBAAsB,CAAC,CAAC,QAAQ,EAAE,SAAS,GAAG,6BAA6B,EAAE,CAAC;IAC9E,mBAAmB,CAAC,CAAC,KAAK,EAAE,yCAAyC,CAAC,SAAS,CAAC,GAAG,2BAA2B,GAAG,IAAI,GAAG,SAAS,CAAC;IAClI,sBAAsB,CAAC,CAAC,KAAK,EAAE,4CAA4C,CAAC,SAAS,CAAC,GAAG,2BAA2B,GAAG,IAAI,GAAG,SAAS,CAAC;IACxI,qBAAqB,CAAC,CAAC,KAAK,EAAE,2CAA2C,CAAC,SAAS,CAAC,GAAG,2BAA2B,GAAG,IAAI,GAAG,SAAS,CAAC;IACtI,MAAM,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACpC,WAAW,CAAC,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;CACpC;AAED,eAAO,MAAM,4BAA4B;;;;;;CAM/B,CAAC;AASX,wBAAgB,6CAA6C,CAAC,SAAS,EACrE,OAAO,EAAE,sCAAsC,CAAC,SAAS,CAAC,GACzD,oDAAoD,CAAC,SAAS,CAAC,EAAE,CA8KnE"}
@@ -7,6 +7,10 @@ export const LOCAL_EDITOR_AGENT_ACTION_ID = {
7
7
  SEND_MARKER: 'agent.send-marker',
8
8
  SEND_MARKER_GRAPH: 'agent.send-marker-graph',
9
9
  };
10
+ function getSafeSceneAgentHierarchyItems(context) {
11
+ const projection = context.browserContext.state.hierarchyProjection;
12
+ return projection?.scopeKind === 'scene' ? [...projection.nodes] : [];
13
+ }
10
14
  export function createLocalEditorAgentHierarchyContextActions(options) {
11
15
  return [
12
16
  {
@@ -22,7 +26,7 @@ export function createLocalEditorAgentHierarchyContextActions(options) {
22
26
  const objectId = resolvePrimarySceneObjectId(context, options);
23
27
  if (!objectId)
24
28
  return false;
25
- const hierarchyItems = context.browserContext.state.hierarchy;
29
+ const hierarchyItems = getSafeSceneAgentHierarchyItems(context);
26
30
  const projectionNode = objectId === context.contextNodeId
27
31
  ? context.projectionNode
28
32
  : options.getProjectionNode(context.document, objectId);
@@ -62,7 +66,7 @@ export function createLocalEditorAgentHierarchyContextActions(options) {
62
66
  const targetIds = resolveSceneObjectSelectionIds(context, options);
63
67
  if (targetIds.length === 0)
64
68
  return false;
65
- const hierarchyItems = context.browserContext.state.hierarchy;
69
+ const hierarchyItems = getSafeSceneAgentHierarchyItems(context);
66
70
  const projectionNodes = createProjectionNodeMap(context.document, targetIds, options);
67
71
  const agentContext = createLocalEditorSceneObjectSetAgentContext({
68
72
  document: context.document,
@@ -95,7 +99,7 @@ export function createLocalEditorAgentHierarchyContextActions(options) {
95
99
  const targetIds = resolveSceneObjectSelectionIds(context, options);
96
100
  if (targetIds.length < 2)
97
101
  return false;
98
- const hierarchyItems = context.browserContext.state.hierarchy;
102
+ const hierarchyItems = getSafeSceneAgentHierarchyItems(context);
99
103
  const projectionNodes = createProjectionNodeMap(context.document, targetIds, options);
100
104
  const agentContext = createLocalEditorRegionBindingAgentContext({
101
105
  document: context.document,
@@ -144,7 +148,7 @@ export function createLocalEditorAgentHierarchyContextActions(options) {
144
148
  directRelations,
145
149
  relatedMarkerIds: relatedIds.markerIds,
146
150
  relatedObjectIds: relatedIds.objectIds,
147
- hierarchyItems: context.browserContext.state.hierarchy,
151
+ hierarchyItems: getSafeSceneAgentHierarchyItems(context),
148
152
  markerTypes: options.getMarkerTypeCatalog?.(context.document) ?? [],
149
153
  relationTypes: options.getRelationTypeCatalog?.(context.document) ?? [],
150
154
  source: options.source,
@@ -179,7 +183,7 @@ export function createLocalEditorAgentHierarchyContextActions(options) {
179
183
  graph,
180
184
  focusMarkerIds,
181
185
  focusObjectIds,
182
- hierarchyItems: context.browserContext.state.hierarchy,
186
+ hierarchyItems: getSafeSceneAgentHierarchyItems(context),
183
187
  markerTypes: options.getMarkerTypeCatalog?.(context.document) ?? [],
184
188
  relationTypes: options.getRelationTypeCatalog?.(context.document) ?? [],
185
189
  source: options.source,
@@ -1 +1 @@
1
- {"version":3,"file":"local-editor-agent-actions.js","sourceRoot":"","sources":["../src/local-editor-agent-actions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local-editor-agent-actions.js","sourceRoot":"","sources":["../src/local-editor-agent-actions.ts"],"names":[],"mappings":"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","sourcesContent":["import type {\n EditorAgentContext,\n EditorAgentContextSemantics,\n EditorAgentSource,\n SpatialMarkerGraph,\n SpatialMarkerTypeDefinition,\n SpatialRelationTypeDefinition,\n} from '@fps-games/editor-protocol';\nimport {\n createLocalEditorRegionBindingAgentContext,\n createLocalEditorSceneObjectAgentContext,\n createLocalEditorSceneObjectSetAgentContext,\n createLocalEditorSpatialMarkerAgentContext,\n createLocalEditorSpatialRelationGraphAgentContext,\n} from './local-editor-agent-context.js';\nimport {\n findSpatialMarkerById,\n getSpatialMarkerDirectRelations,\n getSpatialRelationRelatedIds,\n isMarkerGraphHierarchyRootRowId,\n readMarkerGraphHierarchyMarkerIdForGraph,\n readSpatialMarkerIdFromHierarchySelection,\n resolveSpatialMarkerGraph,\n} from './local-editor-marker-graph.js';\nimport type {\n LocalEditorHarnessHierarchyContextActionContext,\n LocalEditorHarnessHierarchyContextActionRegistration,\n} from './local-editor-harness.js';\nimport type { LocalEditorBrowserUiHierarchyItem } from '@fps-games/editor-browser';\n\nexport interface LocalEditorAgentSceneObjectSemanticsInput<TDocument> {\n document: TDocument;\n objectId: string;\n targetIds: string[];\n activeId: string | null;\n contextNodeId: string | null;\n hierarchyItem: unknown | null;\n hierarchyItems: readonly unknown[];\n projectionNode: unknown | null | undefined;\n}\n\nexport interface LocalEditorAgentSceneObjectSetSemanticsInput<TDocument> {\n document: TDocument;\n objectIds: string[];\n activeId: string | null;\n hierarchyItems: readonly unknown[];\n projectionNodes: Record<string, unknown | null | undefined>;\n}\n\nexport interface LocalEditorAgentRegionBindingSemanticsInput<TDocument>\n extends LocalEditorAgentSceneObjectSetSemanticsInput<TDocument> {\n relationshipType: 'selection-region';\n}\n\nexport interface LocalEditorAgentHierarchyActionOptions<TDocument> {\n sendContext(context: EditorAgentContext): void | boolean | Promise<unknown>;\n getHierarchyItems(document: TDocument): LocalEditorBrowserUiHierarchyItem[];\n getProjectionNode(document: TDocument, id: string): unknown | null | undefined;\n getMarkerGraph?(document: TDocument): SpatialMarkerGraph | null;\n getMarkerTypeCatalog?(document: TDocument): SpatialMarkerTypeDefinition[];\n getRelationTypeCatalog?(document: TDocument): SpatialRelationTypeDefinition[];\n describeSceneObject?(input: LocalEditorAgentSceneObjectSemanticsInput<TDocument>): EditorAgentContextSemantics | null | undefined;\n describeSceneObjectSet?(input: LocalEditorAgentSceneObjectSetSemanticsInput<TDocument>): EditorAgentContextSemantics | null | undefined;\n describeRegionBinding?(input: LocalEditorAgentRegionBindingSemanticsInput<TDocument>): EditorAgentContextSemantics | null | undefined;\n source?: Partial<EditorAgentSource>;\n reportError?(error: unknown): void;\n}\n\nexport const LOCAL_EDITOR_AGENT_ACTION_ID = {\n SEND_OBJECT: 'agent.send-object',\n SEND_SELECTION: 'agent.send-selection',\n SEND_SELECTION_AS_REGION: 'agent.send-selection-as-region',\n SEND_MARKER: 'agent.send-marker',\n SEND_MARKER_GRAPH: 'agent.send-marker-graph',\n} as const;\n\nfunction getSafeSceneAgentHierarchyItems<TDocument>(\n context: LocalEditorHarnessHierarchyContextActionContext<TDocument>,\n): LocalEditorBrowserUiHierarchyItem[] {\n const projection = context.browserContext.state.hierarchyProjection;\n return projection?.scopeKind === 'scene' ? [...projection.nodes] : [];\n}\n\nexport function createLocalEditorAgentHierarchyContextActions<TDocument>(\n options: LocalEditorAgentHierarchyActionOptions<TDocument>,\n): LocalEditorHarnessHierarchyContextActionRegistration<TDocument>[] {\n return [\n {\n id: LOCAL_EDITOR_AGENT_ACTION_ID.SEND_OBJECT,\n label: 'Send to Agent',\n placement: 'after-primary',\n separatorBefore: true,\n visible: context => context.contextNodeId !== null && resolvePrimarySceneObjectId(context, options) !== null,\n disabled(context) {\n return resolvePrimarySceneObjectId(context, options) ? false : 'Select a scene object to send to Agent.';\n },\n run(context) {\n const objectId = resolvePrimarySceneObjectId(context, options);\n if (!objectId) return false;\n const hierarchyItems = getSafeSceneAgentHierarchyItems(context);\n const projectionNode = objectId === context.contextNodeId\n ? context.projectionNode\n : options.getProjectionNode(context.document, objectId);\n const agentContext = createLocalEditorSceneObjectAgentContext({\n document: context.document,\n objectId,\n hierarchyItems,\n projectionNode,\n source: options.source,\n semantics: options.describeSceneObject?.({\n document: context.document,\n objectId,\n targetIds: context.targetIds,\n activeId: context.activeId,\n contextNodeId: context.contextNodeId,\n hierarchyItem: objectId === context.contextNodeId\n ? context.hierarchyItem\n : hierarchyItems.find(item => item.id === objectId) ?? null,\n hierarchyItems,\n projectionNode,\n }),\n });\n return sendAgentContext(agentContext, options);\n },\n },\n {\n id: LOCAL_EDITOR_AGENT_ACTION_ID.SEND_SELECTION,\n label: 'Send Selection to Agent',\n placement: 'after-primary',\n visible: context => resolveSceneObjectSelectionIds(context, options).length > 1,\n disabled(context) {\n return resolveSceneObjectSelectionIds(context, options).length > 1\n ? false\n : 'Select multiple scene objects to send selection to Agent.';\n },\n run(context) {\n const targetIds = resolveSceneObjectSelectionIds(context, options);\n if (targetIds.length === 0) return false;\n const hierarchyItems = getSafeSceneAgentHierarchyItems(context);\n const projectionNodes = createProjectionNodeMap(context.document, targetIds, options);\n const agentContext = createLocalEditorSceneObjectSetAgentContext({\n document: context.document,\n objectIds: targetIds,\n hierarchyItems,\n projectionNodes,\n source: options.source,\n semantics: options.describeSceneObjectSet?.({\n document: context.document,\n objectIds: targetIds,\n activeId: context.activeId,\n hierarchyItems,\n projectionNodes,\n }),\n });\n return sendAgentContext(agentContext, options);\n },\n },\n {\n id: LOCAL_EDITOR_AGENT_ACTION_ID.SEND_SELECTION_AS_REGION,\n label: 'Send Selection as Region',\n placement: 'after-primary',\n visible: context => resolveSceneObjectSelectionIds(context, options).length > 1,\n disabled(context) {\n return resolveSceneObjectSelectionIds(context, options).length > 1\n ? false\n : 'Select multiple scene objects to describe a region to Agent.';\n },\n run(context) {\n const targetIds = resolveSceneObjectSelectionIds(context, options);\n if (targetIds.length < 2) return false;\n const hierarchyItems = getSafeSceneAgentHierarchyItems(context);\n const projectionNodes = createProjectionNodeMap(context.document, targetIds, options);\n const agentContext = createLocalEditorRegionBindingAgentContext({\n document: context.document,\n objectIds: targetIds,\n hierarchyItems,\n projectionNodes,\n source: options.source,\n semantics: options.describeRegionBinding?.({\n document: context.document,\n objectIds: targetIds,\n activeId: context.activeId,\n hierarchyItems,\n projectionNodes,\n relationshipType: 'selection-region',\n }),\n });\n return sendAgentContext(agentContext, options);\n },\n },\n {\n id: LOCAL_EDITOR_AGENT_ACTION_ID.SEND_MARKER,\n label: 'Send Marker to Agent',\n placement: 'after-primary',\n visible: context => resolveContextMarkerId(context, options) !== null,\n disabled(context) {\n const resolved = resolveContextMarker(context, options);\n if (!resolved.marker) return 'Select a spatial marker to send to Agent.';\n if (resolved.marker.spatial.status !== 'resolved') {\n return resolved.marker.spatial.unresolvedReason\n ? `Marker spatial facts unresolved: ${resolved.marker.spatial.unresolvedReason}`\n : 'Marker spatial facts are unresolved.';\n }\n return false;\n },\n run(context) {\n const resolved = resolveContextMarker(context, options);\n if (!resolved.graph || !resolved.marker) return false;\n const directRelations = getSpatialMarkerDirectRelations(resolved.graph, resolved.marker.id);\n const relatedIds = getSpatialRelationRelatedIds(directRelations, resolved.marker.id);\n const agentContext = createLocalEditorSpatialMarkerAgentContext({\n document: context.document,\n marker: resolved.marker,\n graph: resolved.graph,\n directRelations,\n relatedMarkerIds: relatedIds.markerIds,\n relatedObjectIds: relatedIds.objectIds,\n hierarchyItems: getSafeSceneAgentHierarchyItems(context),\n markerTypes: options.getMarkerTypeCatalog?.(context.document) ?? [],\n relationTypes: options.getRelationTypeCatalog?.(context.document) ?? [],\n source: options.source,\n });\n return sendAgentContext(agentContext, options);\n },\n },\n {\n id: LOCAL_EDITOR_AGENT_ACTION_ID.SEND_MARKER_GRAPH,\n label: 'Send Marker Graph to Agent',\n placement: 'after-primary',\n visible: context => isMarkerGraphContext(context, options),\n disabled(context) {\n const graph = resolveContextMarkerGraph(context, options);\n if (!graph || graph.markers.length === 0) return 'No marker graph is available.';\n const unresolved = graph.markers.filter(marker => marker.spatial.status !== 'resolved');\n if (unresolved.length > 0) {\n const labels = unresolved.map(marker => marker.label || marker.id).join(', ');\n return `Marker graph has unresolved spatial facts: ${labels}.`;\n }\n return false;\n },\n run(context) {\n const graph = resolveContextMarkerGraph(context, options);\n if (!graph) return false;\n const focusMarkerIds = collectContextMarkerIds(context, options);\n const focusObjectIds = collectRelatedObjectIdsForMarkers(graph, focusMarkerIds);\n const agentContext = createLocalEditorSpatialRelationGraphAgentContext({\n document: context.document,\n graph,\n focusMarkerIds,\n focusObjectIds,\n hierarchyItems: getSafeSceneAgentHierarchyItems(context),\n markerTypes: options.getMarkerTypeCatalog?.(context.document) ?? [],\n relationTypes: options.getRelationTypeCatalog?.(context.document) ?? [],\n source: options.source,\n });\n return sendAgentContext(agentContext, options);\n },\n },\n ];\n}\n\nfunction resolvePrimarySceneObjectId<TDocument>(\n context: LocalEditorHarnessHierarchyContextActionContext<TDocument>,\n options: Pick<LocalEditorAgentHierarchyActionOptions<TDocument>, 'getHierarchyItems' | 'getMarkerGraph'>,\n): string | null {\n const id = context.contextNodeId ?? context.activeId ?? context.targetIds[0] ?? null;\n if (!id) return null;\n const graph = options.getMarkerGraph?.(context.document) ?? null;\n if (!graph) return id;\n const hierarchyItems = options.getHierarchyItems(context.document);\n if (isMarkerGraphHierarchyRootRowId(graph, id, hierarchyItems)) return null;\n return readSpatialMarkerIdFromHierarchySelection(graph, id, hierarchyItems) ? null : id;\n}\n\nfunction resolveSceneObjectSelectionIds<TDocument>(\n context: LocalEditorHarnessHierarchyContextActionContext<TDocument>,\n options: Pick<LocalEditorAgentHierarchyActionOptions<TDocument>, 'getHierarchyItems' | 'getMarkerGraph'>,\n): string[] {\n const ids = normalizeActionIds(context.targetIds);\n const graph = options.getMarkerGraph?.(context.document) ?? null;\n if (!graph) return ids;\n const hierarchyItems = options.getHierarchyItems(context.document);\n return ids.filter(id => (\n !isMarkerGraphHierarchyRootRowId(graph, id, hierarchyItems)\n && !readSpatialMarkerIdFromHierarchySelection(graph, id, hierarchyItems)\n ));\n}\n\nfunction createProjectionNodeMap<TDocument>(\n document: TDocument,\n objectIds: readonly string[],\n options: Pick<LocalEditorAgentHierarchyActionOptions<TDocument>, 'getProjectionNode'>,\n): Record<string, unknown | null | undefined> {\n const nodes: Record<string, unknown | null | undefined> = {};\n for (const objectId of objectIds) nodes[objectId] = options.getProjectionNode(document, objectId);\n return nodes;\n}\n\nfunction sendAgentContext<TDocument>(\n context: EditorAgentContext | null,\n options: Pick<LocalEditorAgentHierarchyActionOptions<TDocument>, 'sendContext' | 'reportError'>,\n): boolean {\n if (!context) return false;\n try {\n void Promise.resolve(options.sendContext(context)).catch(error => options.reportError?.(error));\n return true;\n } catch (error) {\n options.reportError?.(error);\n return false;\n }\n}\n\nfunction resolveContextMarkerId<TDocument>(\n context: LocalEditorHarnessHierarchyContextActionContext<TDocument>,\n options: Pick<LocalEditorAgentHierarchyActionOptions<TDocument>, 'getHierarchyItems' | 'getMarkerGraph'>,\n): string | null {\n const graph = options.getMarkerGraph?.(context.document) ?? null;\n if (!graph) return null;\n const hierarchyItems = options.getHierarchyItems(context.document);\n const candidateIds = [\n context.contextNodeId,\n context.activeId,\n ...context.targetIds,\n ];\n for (const candidateId of candidateIds) {\n const markerId = readSpatialMarkerIdFromHierarchySelection(graph, candidateId, hierarchyItems);\n if (markerId) return markerId;\n }\n return null;\n}\n\nfunction resolveContextMarker<TDocument>(\n context: LocalEditorHarnessHierarchyContextActionContext<TDocument>,\n options: Pick<LocalEditorAgentHierarchyActionOptions<TDocument>, 'getHierarchyItems' | 'getMarkerGraph'>,\n) {\n const graph = resolveContextMarkerGraph(context, options);\n const markerId = resolveContextMarkerId(context, options);\n return {\n graph,\n marker: graph && markerId ? findSpatialMarkerById(graph, markerId) : null,\n };\n}\n\nfunction resolveContextMarkerGraph<TDocument>(\n context: LocalEditorHarnessHierarchyContextActionContext<TDocument>,\n options: Pick<LocalEditorAgentHierarchyActionOptions<TDocument>, 'getMarkerGraph'>,\n) {\n return resolveSpatialMarkerGraph(options.getMarkerGraph?.(context.document) ?? null);\n}\n\nfunction isMarkerGraphContext<TDocument>(\n context: LocalEditorHarnessHierarchyContextActionContext<TDocument>,\n options: Pick<LocalEditorAgentHierarchyActionOptions<TDocument>, 'getHierarchyItems' | 'getMarkerGraph'>,\n): boolean {\n const graph = options.getMarkerGraph?.(context.document) ?? null;\n if (!graph || graph.markers.length === 0) return false;\n const hierarchyItems = options.getHierarchyItems(context.document);\n if (isMarkerGraphHierarchyRootRowId(graph, context.contextNodeId, hierarchyItems)) return true;\n return collectContextMarkerIds(context, options).length > 0;\n}\n\nfunction collectContextMarkerIds<TDocument>(\n context: LocalEditorHarnessHierarchyContextActionContext<TDocument>,\n options: Pick<LocalEditorAgentHierarchyActionOptions<TDocument>, 'getHierarchyItems' | 'getMarkerGraph'>,\n): string[] {\n const graph = options.getMarkerGraph?.(context.document) ?? null;\n if (!graph) return [];\n const hierarchyItems = options.getHierarchyItems(context.document);\n const markerIds = new Set<string>();\n for (const candidateId of [context.contextNodeId, context.activeId, ...context.targetIds]) {\n const markerId = readSpatialMarkerIdFromHierarchySelection(graph, candidateId, hierarchyItems);\n if (markerId) markerIds.add(markerId);\n }\n return [...markerIds];\n}\n\nfunction collectRelatedObjectIdsForMarkers(\n graph: { relations: SpatialMarkerGraph['relations'] },\n markerIds: readonly string[],\n): string[] {\n const objectIds = new Set<string>();\n for (const markerId of markerIds) {\n const relatedIds = getSpatialRelationRelatedIds(getSpatialMarkerDirectRelations(graph, markerId), markerId);\n for (const objectId of relatedIds.objectIds) objectIds.add(objectId);\n }\n return [...objectIds];\n}\n\nfunction normalizeActionIds(values: readonly (string | null | undefined)[]): string[] {\n return [...new Set(values.map(value => value?.trim()).filter((value): value is string => !!value))];\n}\n"]}