@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
@@ -1 +1 @@
1
- {"version":3,"file":"assets.js","sourceRoot":"","sources":["../../../src/agent-bridge/capabilities/assets.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iCAAiC,GAMlC,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,mCAAmC,EAAE,MAAM,mBAAmB,CAAC;AAExE,OAAO,EACL,0BAA0B,GAE3B,MAAM,cAAc,CAAC;AAEtB,MAAM,qCAAqC,GAAG,GAAG,CAAC;AAClD,MAAM,iCAAiC,GAAG,GAAG,CAAC;AAE9C,MAAM,UAAU,uCAAuC,CACrD,KAA4D,EAC5D,OAA6D;IAE7D,OAAO;QACL,KAAK,CAAC,UAAU,CAAC,KAAK;YACpB,MAAM,wBAAwB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAC/C,MAAM,SAAS,GAAG,qBAAqB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YACxD,MAAM,KAAK,GAAG,0BAA0B,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;YACpE,MAAM,IAAI,GAAG,0BAA0B,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;YAClE,MAAM,kBAAkB,GAAG,KAAK,CAAC,kBAAkB,KAAK,IAAI,CAAC;YAC7D,MAAM,KAAK,GAAG,uBAAuB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACnD,MAAM,QAAQ,GAAG,SAAS;iBACvB,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,kBAAkB,IAAI,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC;iBAChE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC;iBACnE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,4BAA4B,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;YACzE,OAAO;gBACL,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;gBAChC,UAAU,EAAE,QAAQ,CAAC,MAAM;aAC5B,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,YAAY,CAAC,KAAK;YACtB,MAAM,wBAAwB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAC/C,MAAM,OAAO,GAAG,0BAA0B,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC1D,MAAM,KAAK,GAAG,gCAAgC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,OAAO,KAAK,OAAO,CAAC,IAAI,IAAI,CAAC;YACxH,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO,mCAAmC,CACxC,iCAAiC,CAAC,cAAc,EAChD,oBAAoB,OAAO,IAAI,SAAS,EAAE,EAC1C,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAC3B,CAAC;YACJ,CAAC;YACD,OAAO,EAAE,KAAK,EAAE,CAAC;QACnB,CAAC;QACD,KAAK,CAAC,gBAAgB,CAAC,KAAK;YAC1B,MAAM,wBAAwB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAC/C,MAAM,OAAO,GAAG,0BAA0B,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC1D,MAAM,KAAK,GAAG,gCAAgC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,OAAO,KAAK,OAAO,CAAC,IAAI,IAAI,CAAC;YACxH,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO,mCAAmC,CACxC,iCAAiC,CAAC,kBAAkB,EACpD,oBAAoB,OAAO,IAAI,SAAS,EAAE,EAC1C,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAC3B,CAAC;YACJ,CAAC;YACD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACnD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,mCAAmC,CACxC,iCAAiC,CAAC,kBAAkB,EACpD,oCAAoC,KAAK,CAAC,OAAO,EAAE,EACnD,EAAE,IAAI,EAAE,2BAA2B,EAAE,CACtC,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,QAAQ;aACT,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,wBAAwB,CACrC,KAA4D,EAC5D,OAA6D;IAE7D,KAAK,CAAC,MAAM,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,UAAU,EAAE,CAAC;AAC/D,CAAC;AAED,SAAS,qBAAqB,CAC5B,KAA4D,EAC5D,OAA6D;IAE7D,OAAO,gCAAgC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QAClE,MAAM,OAAO,GAAkC;YAC7C,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvD,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/D,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChE,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5E,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC7E,CAAC;QACF,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,gCAAgC,CAC9C,KAA4D,EAC5D,OAA6D;IAE7D,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC,eAAe,IAAI,IAAI,CAAC;IAC5F,MAAM,cAAc,GAAG,QAAQ;QAC7B,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,oBAAoB,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE;QAChE,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,KAAK,GAAG,IAAI,GAAG,EAAsC,CAAC;IAC5D,KAAK,MAAM,KAAK,IAAI,yBAAyB,CAAC,cAAc,CAAC,EAAE,CAAC;QAC9D,KAAK,CAAC,GAAG,CAAC,6BAA6B,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;IACzD,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,yBAAyB,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5D,MAAM,GAAG,GAAG,6BAA6B,CAAC,KAAK,CAAC,CAAC;QACjD,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACxB,CAAC;IACD,OAAO,yBAAyB,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,yBAAyB,CAAC,MAA0B;IAC3D,OAAO,MAAM;SACV,GAAG,CAAC,0BAA0B,CAAC;SAC/B,MAAM,CAAC,CAAC,KAAK,EAAuC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;SAC/D,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,yBAAyB,CAAC,MAAoC;IACrE,OAAO,MAAM;SACV,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CACrB,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;WACpE,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC;WACjD,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAC7C,CAAC,CAAC;AACP,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,KAA4D,EAC5D,OAA6D,EAC7D,OAAe;IAEf,MAAM,iBAAiB,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAC;IAC9D,IAAI,CAAC,iBAAiB;QAAE,OAAO,IAAI,CAAC;IACpC,OAAO,gCAAgC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,OAAO,KAAK,iBAAiB,CAAC,IAAI,IAAI,CAAC;AAC7H,CAAC;AAED,SAAS,0BAA0B,CAAC,KAAc;IAChD,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IACjC,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACpE,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC;IAC1F,IAAI,CAAC,OAAO,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAC1C,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC7C,MAAM,eAAe,GAAG,0BAA0B,CAAC,QAAQ,CAAC,CAAC;IAC7D,MAAM,QAAQ,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAC7C,OAAO;QACL,OAAO;QACP,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrE,WAAW;QACX,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,MAAM,CAAC;QACvD,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,MAAM,CAAC;QACvD,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjF,SAAS,EAAE,MAAM,CAAC,SAAS,KAAK,KAAK,IAAI,MAAM,CAAC,QAAQ,KAAK,IAAI;QACjE,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9F,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9F,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjG,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,0BAA0B,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9E,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3E,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpF,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7F,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpF,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1H,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1H,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACrH,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CAAC,QAAiC;IACnE,MAAM,OAAO,GAAG;QACd,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,UAAU,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7G,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtG,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,eAAe,CAAC,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC3I,CAAC;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AAC/D,CAAC;AAED,SAAS,0BAA0B,CAAC,QAAwC;IAC1E,OAAO;QACL,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClF,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3F,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjG,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjG,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,CAAC,QAAQ,CAAC,cAAc,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChH,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7G,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1G,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpG,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,CAAC,QAAQ,CAAC,cAAc,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChH,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjG,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrF,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxF,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,GAAG,CAAC,OAAO,QAAQ,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClF,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,eAAe,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACvG,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAiB;IAC1C,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC,CAAC;IAChE,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAmC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC/G,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAc;IAC7C,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,qCAAqC,CAAC;IACtE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,qCAAqC,CAAC;IACvG,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,iCAAiC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACrF,CAAC;AAED,SAAS,4BAA4B,CAAC,KAAoC,EAAE,KAAa;IACvF,OAAO;QACL,KAAK,CAAC,OAAO;QACb,KAAK,CAAC,IAAI;QACV,KAAK,CAAC,WAAW;QACjB,KAAK,CAAC,IAAI;QACV,KAAK,CAAC,IAAI;QACV,KAAK,CAAC,QAAQ;QACd,KAAK,CAAC,YAAY;QAClB,KAAK,CAAC,WAAW;KAClB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,cAAc,CAAC,MAA+B;IACrD,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,IAAI,KAAK,KAAK;QAAE,OAAO,OAAO,CAAC;IACnC,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC;IACvC,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACzC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,cAAc,CAAC,MAA+B;IACrD,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IACtB,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACzC,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC;IACvC,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,6BAA6B,CAAC,KAAiC;IACtE,IAAI,KAAK,CAAC,IAAI;QAAE,OAAO,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;IAC5C,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC5C,MAAM,eAAe,GAAG,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IAC7D,IAAI,eAAe;QAAE,OAAO,YAAY,eAAe,EAAE,CAAC;IAC1D,IAAI,KAAK,CAAC,SAAS;QAAE,OAAO,UAAU,KAAK,CAAC,SAAS,EAAE,CAAC;IACxD,OAAO,SAAS,KAAK,CAAC,OAAO,EAAE,CAAC;AAClC,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAA4B,CAAC,CAAC,CAAC,EAAE,CAAC;AACzG,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACvE,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AAC5E,CAAC"}
1
+ {"version":3,"file":"assets.js","sourceRoot":"","sources":["../../../src/agent-bridge/capabilities/assets.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID,\n type EditorAgentBridgeAssetAnalysis,\n type EditorAgentBridgeAssetAnalysisGetOutput,\n type EditorAgentBridgeAssetInfo,\n type EditorAgentBridgeAssetLibraryListOutput,\n type EditorAgentBridgeAssetSummary,\n} from '@fps-games/editor-protocol';\nimport type { LocalEditorHarnessOptions } from '../../local-editor-harness.js';\nimport { createLocalEditorAgentBridgeFailure } from '../diagnostics.js';\nimport type { LocalEditorAgentBridgeAssetSource } from '../source-types.js';\nimport {\n normalizeAgentBridgeString,\n type LocalEditorAgentBridgeHarnessState,\n} from '../shared.js';\n\nconst AGENT_BRIDGE_ASSET_LIST_DEFAULT_LIMIT = 100;\nconst AGENT_BRIDGE_ASSET_LIST_MAX_LIMIT = 500;\n\nexport function createLocalEditorAgentBridgeAssetSource<TDocument, TPatch, TAsset>(\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n): LocalEditorAgentBridgeAssetSource {\n return {\n async listAssets(input): Promise<EditorAgentBridgeAssetLibraryListOutput> {\n await refreshAgentBridgeAssets(state, options);\n const allAssets = listAgentBridgeAssets(state, options);\n const query = normalizeAgentBridgeString(input.query).toLowerCase();\n const kind = normalizeAgentBridgeString(input.kind).toLowerCase();\n const includeUnplaceable = input.includeUnplaceable === true;\n const limit = normalizeAssetListLimit(input.limit);\n const filtered = allAssets\n .filter(asset => includeUnplaceable || asset.placeable !== false)\n .filter(asset => !kind || String(asset.kind).toLowerCase() === kind)\n .filter(asset => !query || agentBridgeAssetMatchesQuery(asset, query));\n return {\n assets: filtered.slice(0, limit),\n assetCount: filtered.length,\n };\n },\n async getAssetInfo(input) {\n await refreshAgentBridgeAssets(state, options);\n const assetId = normalizeAgentBridgeString(input.assetId);\n const asset = listAgentBridgeVisibleAssetInfos(state, options).find(candidate => candidate.assetId === assetId) ?? null;\n if (!asset) {\n return createLocalEditorAgentBridgeFailure(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.ASSET_INFO_GET,\n `Asset not found: ${assetId || '(empty)'}`,\n { code: 'asset.notFound' },\n );\n }\n return { asset };\n },\n async getAssetAnalysis(input): Promise<EditorAgentBridgeAssetAnalysisGetOutput | ReturnType<typeof createLocalEditorAgentBridgeFailure>> {\n await refreshAgentBridgeAssets(state, options);\n const assetId = normalizeAgentBridgeString(input.assetId);\n const asset = listAgentBridgeVisibleAssetInfos(state, options).find(candidate => candidate.assetId === assetId) ?? null;\n if (!asset) {\n return createLocalEditorAgentBridgeFailure(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.ASSET_ANALYSIS_GET,\n `Asset not found: ${assetId || '(empty)'}`,\n { code: 'asset.notFound' },\n );\n }\n const analysis = readAssetAnalysis(asset.metadata);\n if (!analysis) {\n return createLocalEditorAgentBridgeFailure(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.ASSET_ANALYSIS_GET,\n `Asset analysis is not available: ${asset.assetId}`,\n { code: 'asset.analysisUnavailable' },\n );\n }\n return {\n assetId: asset.assetId,\n kind: asset.kind,\n analysis,\n };\n },\n };\n}\n\nasync function refreshAgentBridgeAssets<TDocument, TPatch, TAsset>(\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n): Promise<void> {\n state.assets = await options.persistenceAdapter.loadAssets();\n}\n\nfunction listAgentBridgeAssets<TDocument, TPatch, TAsset>(\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n): EditorAgentBridgeAssetSummary[] {\n return listAgentBridgeVisibleAssetInfos(state, options).map(asset => {\n const summary: EditorAgentBridgeAssetSummary = {\n assetId: asset.assetId,\n ...(asset.guid ? { guid: asset.guid } : {}),\n displayName: asset.displayName,\n kind: asset.kind,\n type: asset.type,\n ...(asset.category ? { category: asset.category } : {}),\n placeable: asset.placeable,\n ...(asset.byteSize != null ? { byteSize: asset.byteSize } : {}),\n ...(asset.contentHash ? { contentHash: asset.contentHash } : {}),\n ...(asset.relativePath ? { relativePath: asset.relativePath } : {}),\n ...(asset.metadataSummary ? { metadataSummary: asset.metadataSummary } : {}),\n ...(asset.analysisSummary ? { analysisSummary: asset.analysisSummary } : {}),\n };\n return summary;\n });\n}\n\nexport function listAgentBridgeVisibleAssetInfos<TDocument, TPatch, TAsset>(\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n): EditorAgentBridgeAssetInfo[] {\n const document = state.session?.getState({ cloneDocuments: false }).workingDocument ?? null;\n const documentAssets = document\n ? options.documentAdapter.getBrowserAssetItems?.(document) ?? []\n : [];\n const byKey = new Map<string, EditorAgentBridgeAssetInfo>();\n for (const asset of listAgentBridgeAssetInfos(documentAssets)) {\n byKey.set(createAgentBridgeAssetInfoKey(asset), asset);\n }\n for (const asset of listAgentBridgeAssetInfos(state.assets)) {\n const key = createAgentBridgeAssetInfoKey(asset);\n byKey.set(key, asset);\n }\n return sortAgentBridgeAssetInfos([...byKey.values()]);\n}\n\nfunction listAgentBridgeAssetInfos(assets: readonly unknown[]): EditorAgentBridgeAssetInfo[] {\n return assets\n .map(createAgentBridgeAssetInfo)\n .filter((asset): asset is EditorAgentBridgeAssetInfo => !!asset)\n .map(asset => ({ ...asset }));\n}\n\nfunction sortAgentBridgeAssetInfos(assets: EditorAgentBridgeAssetInfo[]): EditorAgentBridgeAssetInfo[] {\n return assets\n .sort((left, right) => (\n String(left.category ?? '').localeCompare(String(right.category ?? ''))\n || left.displayName.localeCompare(right.displayName)\n || left.assetId.localeCompare(right.assetId)\n ));\n}\n\nexport function findAgentBridgeVisibleAssetInfo<TDocument, TPatch, TAsset>(\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n assetId: string,\n): EditorAgentBridgeAssetInfo | null {\n const normalizedAssetId = normalizeAgentBridgeString(assetId);\n if (!normalizedAssetId) return null;\n return listAgentBridgeVisibleAssetInfos(state, options).find(candidate => candidate.assetId === normalizedAssetId) ?? null;\n}\n\nfunction createAgentBridgeAssetInfo(asset: unknown): EditorAgentBridgeAssetInfo | null {\n const record = readRecord(asset);\n const assetId = readString(record.assetId) || readString(record.id);\n const displayName = readString(record.displayName) || readString(record.label) || assetId;\n if (!assetId || !displayName) return null;\n const metadata = readRecord(record.metadata);\n const metadataSummary = createAssetMetadataSummary(metadata);\n const analysis = readAssetAnalysis(metadata);\n return {\n assetId,\n ...(readString(record.guid) ? { guid: readString(record.guid) } : {}),\n displayName,\n kind: readString(record.kind) || inferAssetKind(record),\n type: readString(record.type) || inferAssetType(record),\n ...(readString(record.category) ? { category: readString(record.category) } : {}),\n placeable: record.placeable !== false && record.disabled !== true,\n ...(readNumber(metadata.byteSize) != null ? { byteSize: readNumber(metadata.byteSize)! } : {}),\n ...(readString(metadata.contentHash) ? { contentHash: readString(metadata.contentHash) } : {}),\n ...(readString(metadata.relativePath) ? { relativePath: readString(metadata.relativePath) } : {}),\n ...(metadataSummary ? { metadataSummary } : {}),\n ...(analysis ? { analysisSummary: createAssetAnalysisSummary(analysis) } : {}),\n ...(readString(record.origin) ? { origin: readString(record.origin) } : {}),\n ...(readString(record.dedupeKey) ? { dedupeKey: readString(record.dedupeKey) } : {}),\n ...(readString(record.materialMode) ? { materialMode: readString(record.materialMode) } : {}),\n ...(Object.keys(metadata).length > 0 ? { metadata: structuredClone(metadata) } : {}),\n ...(Object.keys(readRecord(record.external)).length > 0 ? { external: structuredClone(readRecord(record.external)) } : {}),\n ...(Object.keys(readRecord(record.defaults)).length > 0 ? { defaults: structuredClone(readRecord(record.defaults)) } : {}),\n ...(Object.keys(readRecord(record.prefab)).length > 0 ? { prefab: structuredClone(readRecord(record.prefab)) } : {}),\n };\n}\n\nfunction createAssetMetadataSummary(metadata: Record<string, unknown>): Record<string, unknown> | undefined {\n const summary = {\n ...(readString(metadata.originalFileName) ? { originalFileName: readString(metadata.originalFileName) } : {}),\n ...(Array.isArray(metadata.materialSlots) ? { materialSlotCount: metadata.materialSlots.length } : {}),\n ...(readString(metadata.textureUsage) ? { textureUsage: readString(metadata.textureUsage) } : {}),\n ...(Object.keys(readRecord(metadata.capabilities)).length > 0 ? { capabilities: structuredClone(readRecord(metadata.capabilities)) } : {}),\n };\n return Object.keys(summary).length > 0 ? summary : undefined;\n}\n\nfunction createAssetAnalysisSummary(analysis: EditorAgentBridgeAssetAnalysis): EditorAgentBridgeAssetSummary['analysisSummary'] {\n return {\n ...(readString(analysis.kind) ? { kind: readString(analysis.kind) } : {}),\n ...(readString(analysis.summary) ? { summary: readString(analysis.summary) } : {}),\n ...(readString(analysis.complexity) ? { complexity: readString(analysis.complexity) } : {}),\n ...(readNumber(analysis.nodeCount) != null ? { nodeCount: readNumber(analysis.nodeCount)! } : {}),\n ...(readNumber(analysis.meshCount) != null ? { meshCount: readNumber(analysis.meshCount)! } : {}),\n ...(readNumber(analysis.primitiveCount) != null ? { primitiveCount: readNumber(analysis.primitiveCount)! } : {}),\n ...(readNumber(analysis.materialCount) != null ? { materialCount: readNumber(analysis.materialCount)! } : {}),\n ...(readNumber(analysis.textureCount) != null ? { textureCount: readNumber(analysis.textureCount)! } : {}),\n ...(readNumber(analysis.imageCount) != null ? { imageCount: readNumber(analysis.imageCount)! } : {}),\n ...(readNumber(analysis.animationCount) != null ? { animationCount: readNumber(analysis.animationCount)! } : {}),\n ...(readNumber(analysis.skinCount) != null ? { skinCount: readNumber(analysis.skinCount)! } : {}),\n ...(readNumber(analysis.width) != null ? { width: readNumber(analysis.width)! } : {}),\n ...(readNumber(analysis.height) != null ? { height: readNumber(analysis.height)! } : {}),\n ...(readString(analysis.mime) ? { mime: readString(analysis.mime) } : {}),\n ...(typeof analysis.hasAlpha === 'boolean' ? { hasAlpha: analysis.hasAlpha } : {}),\n ...(Array.isArray(analysis.diagnostics) ? { diagnostics: structuredClone(analysis.diagnostics) } : {}),\n };\n}\n\nfunction readAssetAnalysis(metadata: unknown): EditorAgentBridgeAssetAnalysis | null {\n const analysis = readRecord(readRecord(metadata).assetAnalysis);\n return Object.keys(analysis).length > 0 ? structuredClone(analysis) as EditorAgentBridgeAssetAnalysis : null;\n}\n\nfunction normalizeAssetListLimit(value: unknown): number {\n if (value === undefined) return AGENT_BRIDGE_ASSET_LIST_DEFAULT_LIMIT;\n if (typeof value !== 'number' || !Number.isFinite(value)) return AGENT_BRIDGE_ASSET_LIST_DEFAULT_LIMIT;\n return Math.max(0, Math.min(AGENT_BRIDGE_ASSET_LIST_MAX_LIMIT, Math.floor(value)));\n}\n\nfunction agentBridgeAssetMatchesQuery(asset: EditorAgentBridgeAssetSummary, query: string): boolean {\n return [\n asset.assetId,\n asset.guid,\n asset.displayName,\n asset.kind,\n asset.type,\n asset.category,\n asset.relativePath,\n asset.contentHash,\n ].some(value => String(value ?? '').toLowerCase().includes(query));\n}\n\nfunction inferAssetKind(record: Record<string, unknown>): string {\n const type = readString(record.type);\n if (type === 'glb') return 'model';\n if (type === 'prefab') return 'prefab';\n if (type === 'texture') return 'texture';\n return 'model';\n}\n\nfunction inferAssetType(record: Record<string, unknown>): string {\n const type = readString(record.type);\n if (type) return type;\n const kind = readString(record.kind);\n if (kind === 'texture') return 'texture';\n if (kind === 'prefab') return 'prefab';\n return 'glb';\n}\n\nfunction createAgentBridgeAssetInfoKey(asset: EditorAgentBridgeAssetInfo): string {\n if (asset.guid) return `guid:${asset.guid}`;\n const external = readRecord(asset.external);\n const platformAssetId = readString(external.platformAssetId);\n if (platformAssetId) return `external:${platformAssetId}`;\n if (asset.dedupeKey) return `dedupe:${asset.dedupeKey}`;\n return `asset:${asset.assetId}`;\n}\n\nfunction readRecord(value: unknown): Record<string, any> {\n return value && typeof value === 'object' && !Array.isArray(value) ? value as Record<string, any> : {};\n}\n\nfunction readString(value: unknown): string {\n return typeof value === 'string' && value.trim() ? value.trim() : '';\n}\n\nfunction readNumber(value: unknown): number | null {\n return typeof value === 'number' && Number.isFinite(value) ? value : null;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"editor-state.d.ts","sourceRoot":"","sources":["../../../src/agent-bridge/capabilities/editor-state.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAGL,KAAK,gDAAgD,EACrD,KAAK,kCAAkC,EACxC,MAAM,cAAc,CAAC;AAKtB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAK/E,wBAAgB,uCAAuC,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAC/E,KAAK,EAAE,kCAAkC,CAAC,SAAS,EAAE,MAAM,CAAC,EAC5D,OAAO,EAAE,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAC7D,UAAU,EAAE,gDAAgD,CAAC,SAAS,CAAC,GACtE,iCAAiC,CASnC"}
1
+ {"version":3,"file":"editor-state.d.ts","sourceRoot":"","sources":["../../../src/agent-bridge/capabilities/editor-state.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAIL,KAAK,gDAAgD,EACrD,KAAK,kCAAkC,EACxC,MAAM,cAAc,CAAC;AAKtB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAK/E,wBAAgB,uCAAuC,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAC/E,KAAK,EAAE,kCAAkC,CAAC,SAAS,EAAE,MAAM,CAAC,EAC5D,OAAO,EAAE,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAC7D,UAAU,EAAE,gDAAgD,CAAC,SAAS,CAAC,GACtE,iCAAiC,CASnC"}
@@ -1,11 +1,11 @@
1
- import { cloneAgentBridgeSelection, EMPTY_EDITOR_SELECTION, } from '../shared.js';
1
+ import { cloneAgentBridgeSelection, getAgentBridgeSafeSceneHierarchy, getAgentBridgeSafeSceneSelection, } from '../shared.js';
2
2
  import { createAgentBridgeSceneObject, listAgentBridgeSceneObjects, } from './scene-objects.js';
3
3
  const AGENT_BRIDGE_SNAPSHOT_DEFAULT_OBJECT_LIMIT = 100;
4
4
  const AGENT_BRIDGE_SNAPSHOT_MAX_OBJECT_LIMIT = 500;
5
5
  export function createLocalEditorAgentBridgeStateSource(state, options, operations) {
6
6
  return {
7
7
  getSnapshot(input) {
8
- return createAgentBridgeEditorSnapshot(state, options, input);
8
+ return createAgentBridgeEditorSnapshot(state, options, input, operations);
9
9
  },
10
10
  getState(input) {
11
11
  return createAgentBridgeEditorState(state, options, input.objectId, operations);
@@ -15,11 +15,12 @@ export function createLocalEditorAgentBridgeStateSource(state, options, operatio
15
15
  function createAgentBridgeEditorState(state, options, objectId, operations) {
16
16
  const sessionState = state.session?.getState({ cloneDocuments: false }) ?? null;
17
17
  const document = sessionState?.workingDocument ?? null;
18
+ const safeSelection = getAgentBridgeSafeSceneSelection(operations);
18
19
  const requestedObjectId = typeof objectId === 'string' && objectId.trim()
19
20
  ? objectId.trim()
20
- : sessionState?.selection.activeId ?? undefined;
21
+ : safeSelection.activeId ?? undefined;
21
22
  const object = document && requestedObjectId
22
- ? createAgentBridgeSceneObject(state, options, document, requestedObjectId, operations.getHierarchy())
23
+ ? createAgentBridgeSceneObject(state, options, document, requestedObjectId, getAgentBridgeSafeSceneHierarchy(operations))
23
24
  : null;
24
25
  return {
25
26
  mode: state.mode,
@@ -28,16 +29,17 @@ function createAgentBridgeEditorState(state, options, objectId, operations) {
28
29
  statusDetails: state.statusDetails,
29
30
  dirty: sessionState?.dirty,
30
31
  busy: state.busy,
31
- selection: cloneAgentBridgeSelection(sessionState?.selection ?? EMPTY_EDITOR_SELECTION),
32
+ selection: cloneAgentBridgeSelection(safeSelection),
32
33
  object,
33
- diagnostics: createAgentBridgeStateDiagnostics(state),
34
+ diagnostics: createAgentBridgeStateDiagnostics(state, operations),
34
35
  };
35
36
  }
36
- function createAgentBridgeEditorSnapshot(state, options, input) {
37
+ function createAgentBridgeEditorSnapshot(state, options, input, operations) {
37
38
  const sessionState = state.session?.getState({ cloneDocuments: false }) ?? null;
38
39
  const document = sessionState?.workingDocument ?? null;
40
+ const safeSelection = getAgentBridgeSafeSceneSelection(operations);
39
41
  const objects = state.mode === 'editor' && document
40
- ? listAgentBridgeSceneObjects(state, options, document, input.includeUnselectable === true)
42
+ ? listAgentBridgeSceneObjects(state, options, document, input.includeUnselectable === true, operations)
41
43
  : [];
42
44
  const snapshot = {
43
45
  mode: state.mode,
@@ -45,7 +47,7 @@ function createAgentBridgeEditorSnapshot(state, options, input) {
45
47
  dirty: sessionState?.dirty ?? false,
46
48
  status: state.status,
47
49
  statusTone: state.statusTone,
48
- selection: cloneAgentBridgeSelection(sessionState?.selection ?? EMPTY_EDITOR_SELECTION),
50
+ selection: cloneAgentBridgeSelection(safeSelection),
49
51
  objectCount: objects.length,
50
52
  };
51
53
  if (input.includeObjects === true) {
@@ -53,14 +55,21 @@ function createAgentBridgeEditorSnapshot(state, options, input) {
53
55
  }
54
56
  return snapshot;
55
57
  }
56
- function createAgentBridgeStateDiagnostics(state) {
57
- if (state.statusTone !== 'error' && state.statusTone !== 'warning')
58
- return [];
59
- return [{
60
- severity: state.statusTone,
61
- source: 'editor',
62
- message: state.statusDetails || state.status,
63
- }];
58
+ function createAgentBridgeStateDiagnostics(state, operations) {
59
+ return operations.getStatusDiagnostics().map(diagnostic => ({
60
+ severity: diagnostic.severity,
61
+ source: diagnostic.source,
62
+ code: diagnostic.code,
63
+ message: diagnostic.message,
64
+ ...(diagnostic.rowId ? { objectId: diagnostic.rowId } : {}),
65
+ details: {
66
+ ...(diagnostic.scopeId ? { scopeId: diagnostic.scopeId } : {}),
67
+ ...(diagnostic.targetId ? { targetId: diagnostic.targetId } : {}),
68
+ ...(diagnostic.documentRevision != null ? { documentRevision: diagnostic.documentRevision } : {}),
69
+ ...(diagnostic.projectionRevision != null ? { projectionRevision: diagnostic.projectionRevision } : {}),
70
+ ...(diagnostic.details ?? {}),
71
+ },
72
+ }));
64
73
  }
65
74
  function normalizeAgentBridgeSnapshotObjectLimit(value) {
66
75
  if (value === undefined)
@@ -1 +1 @@
1
- {"version":3,"file":"editor-state.js","sourceRoot":"","sources":["../../../src/agent-bridge/capabilities/editor-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editor-state.js","sourceRoot":"","sources":["../../../src/agent-bridge/capabilities/editor-state.ts"],"names":[],"mappings":"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","sourcesContent":["import type {\n EditorAgentBridgeEditorSnapshot,\n EditorAgentBridgeEditorSnapshotGetInput,\n EditorAgentBridgeEditorState,\n} from '@fps-games/editor-protocol';\nimport type { LocalEditorAgentBridgeStateSource } from '../source-types.js';\nimport {\n cloneAgentBridgeSelection,\n getAgentBridgeSafeSceneHierarchy,\n getAgentBridgeSafeSceneSelection,\n type LocalEditorAgentBridgeCapabilitySourceOperations,\n type LocalEditorAgentBridgeHarnessState,\n} from '../shared.js';\nimport {\n createAgentBridgeSceneObject,\n listAgentBridgeSceneObjects,\n} from './scene-objects.js';\nimport type { LocalEditorHarnessOptions } from '../../local-editor-harness.js';\n\nconst AGENT_BRIDGE_SNAPSHOT_DEFAULT_OBJECT_LIMIT = 100;\nconst AGENT_BRIDGE_SNAPSHOT_MAX_OBJECT_LIMIT = 500;\n\nexport function createLocalEditorAgentBridgeStateSource<TDocument, TPatch, TAsset>(\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n operations: LocalEditorAgentBridgeCapabilitySourceOperations<TDocument>,\n): LocalEditorAgentBridgeStateSource {\n return {\n getSnapshot(input) {\n return createAgentBridgeEditorSnapshot(state, options, input, operations);\n },\n getState(input) {\n return createAgentBridgeEditorState(state, options, input.objectId, operations);\n },\n };\n}\n\nfunction createAgentBridgeEditorState<TDocument, TPatch, TAsset>(\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n objectId: string | undefined,\n operations: LocalEditorAgentBridgeCapabilitySourceOperations<TDocument>,\n): EditorAgentBridgeEditorState {\n const sessionState = state.session?.getState({ cloneDocuments: false }) ?? null;\n const document = sessionState?.workingDocument ?? null;\n const safeSelection = getAgentBridgeSafeSceneSelection(operations);\n const requestedObjectId = typeof objectId === 'string' && objectId.trim()\n ? objectId.trim()\n : safeSelection.activeId ?? undefined;\n const object = document && requestedObjectId\n ? createAgentBridgeSceneObject(\n state,\n options,\n document,\n requestedObjectId,\n getAgentBridgeSafeSceneHierarchy(operations),\n )\n : null;\n return {\n mode: state.mode,\n status: state.status,\n statusTone: state.statusTone,\n statusDetails: state.statusDetails,\n dirty: sessionState?.dirty,\n busy: state.busy,\n selection: cloneAgentBridgeSelection(safeSelection),\n object,\n diagnostics: createAgentBridgeStateDiagnostics(state, operations),\n };\n}\n\nfunction createAgentBridgeEditorSnapshot<TDocument, TPatch, TAsset>(\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n input: EditorAgentBridgeEditorSnapshotGetInput,\n operations: LocalEditorAgentBridgeCapabilitySourceOperations<TDocument>,\n): EditorAgentBridgeEditorSnapshot {\n const sessionState = state.session?.getState({ cloneDocuments: false }) ?? null;\n const document = sessionState?.workingDocument ?? null;\n const safeSelection = getAgentBridgeSafeSceneSelection(operations);\n const objects = state.mode === 'editor' && document\n ? listAgentBridgeSceneObjects(state, options, document, input.includeUnselectable === true, operations)\n : [];\n const snapshot: EditorAgentBridgeEditorSnapshot = {\n mode: state.mode,\n busy: state.busy,\n dirty: sessionState?.dirty ?? false,\n status: state.status,\n statusTone: state.statusTone,\n selection: cloneAgentBridgeSelection(safeSelection),\n objectCount: objects.length,\n };\n if (input.includeObjects === true) {\n snapshot.objects = objects.slice(0, normalizeAgentBridgeSnapshotObjectLimit(input.objectLimit));\n }\n return snapshot;\n}\n\nfunction createAgentBridgeStateDiagnostics<TDocument, TPatch>(\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n operations: LocalEditorAgentBridgeCapabilitySourceOperations<TDocument>,\n): EditorAgentBridgeEditorState['diagnostics'] {\n return operations.getStatusDiagnostics().map(diagnostic => ({\n severity: diagnostic.severity,\n source: diagnostic.source,\n code: diagnostic.code,\n message: diagnostic.message,\n ...(diagnostic.rowId ? { objectId: diagnostic.rowId } : {}),\n details: {\n ...(diagnostic.scopeId ? { scopeId: diagnostic.scopeId } : {}),\n ...(diagnostic.targetId ? { targetId: diagnostic.targetId } : {}),\n ...(diagnostic.documentRevision != null ? { documentRevision: diagnostic.documentRevision } : {}),\n ...(diagnostic.projectionRevision != null ? { projectionRevision: diagnostic.projectionRevision } : {}),\n ...(diagnostic.details ?? {}),\n },\n }));\n}\n\nfunction normalizeAgentBridgeSnapshotObjectLimit(value: unknown): number {\n if (value === undefined) return AGENT_BRIDGE_SNAPSHOT_DEFAULT_OBJECT_LIMIT;\n if (typeof value !== 'number' || !Number.isFinite(value)) return AGENT_BRIDGE_SNAPSHOT_DEFAULT_OBJECT_LIMIT;\n return Math.max(0, Math.min(AGENT_BRIDGE_SNAPSHOT_MAX_OBJECT_LIMIT, Math.floor(value)));\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"host-lifecycle.js","sourceRoot":"","sources":["../../../src/agent-bridge/capabilities/host-lifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"host-lifecycle.js","sourceRoot":"","sources":["../../../src/agent-bridge/capabilities/host-lifecycle.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID,\n type EditorAgentBridgeHostEditorEnterOutput,\n type EditorAgentBridgeHostEditorSaveAndRunOutput,\n type EditorAgentBridgeHostEditorDiscardAndRunOutput,\n type EditorAgentBridgeHostEditorWaitReadyOutput,\n type EditorAgentBridgeHostStatus,\n} from '@fps-games/editor-protocol';\nimport type { FpsDiagnostic } from '@fps-games/plugin-api';\nimport type { EditorAgentBridgeCallContext } from '@fps-games/editor-core';\nimport type { FpsEditorLifecycleSnapshot } from '@fps-games/editor-core/lifecycle';\nimport { createLocalEditorAgentBridgeFailure } from '../diagnostics.js';\nimport type { LocalEditorAgentBridgeHostSource } from '../source-types.js';\nimport type { LocalEditorAgentBridgeHarnessState } from '../shared.js';\n\nconst AGENT_BRIDGE_HOST_READY_TIMEOUT_MS = 10000;\nconst AGENT_BRIDGE_HOST_READY_MAX_TIMEOUT_MS = 60000;\nconst AGENT_BRIDGE_HOST_READY_POLL_INTERVAL_MS = 100;\nconst AGENT_BRIDGE_HOST_READY_MAX_POLL_INTERVAL_MS = 1000;\n\nexport interface LocalEditorAgentBridgeHostObservability {\n getLifecycleSnapshot(): Readonly<FpsEditorLifecycleSnapshot> | null;\n getRecentDiagnostics(): readonly Readonly<FpsDiagnostic>[];\n}\n\nexport function createLocalEditorAgentBridgeHostSource<TDocument, TPatch>(\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n enterEditor: (context?: EditorAgentBridgeCallContext) => Promise<void>,\n reloadAssets?: () => Promise<void>,\n saveAndRun?: (context?: EditorAgentBridgeCallContext) => Promise<boolean>,\n discardAndRun?: (context?: EditorAgentBridgeCallContext) => Promise<boolean>,\n observability?: LocalEditorAgentBridgeHostObservability,\n): LocalEditorAgentBridgeHostSource {\n return {\n isBusy() {\n return state.busy;\n },\n getMode() {\n return createAgentBridgeHostStatus(state, observability);\n },\n async enterEditor(input, context) {\n const timeout = normalizeAgentBridgeHostMilliseconds(\n input?.timeoutMs,\n AGENT_BRIDGE_HOST_READY_TIMEOUT_MS,\n AGENT_BRIDGE_HOST_READY_MAX_TIMEOUT_MS,\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.HOST_EDITOR_ENTER,\n 'timeoutMs',\n );\n if (!timeout.ok) return timeout.result;\n const before = createAgentBridgeHostStatus(state, observability);\n if (state.busy) {\n return createLocalEditorAgentBridgeFailure(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.HOST_EDITOR_ENTER,\n 'Host is busy and cannot enter editor mode.',\n { code: 'host.busy' },\n );\n }\n if (before.editorReady) {\n await reloadAssets?.();\n const ready = createAgentBridgeHostStatus(state, observability);\n return {\n ...ready,\n entered: false,\n alreadyEditor: true,\n } satisfies EditorAgentBridgeHostEditorEnterOutput;\n }\n await enterEditor(context);\n const ready = await waitForAgentBridgeHostReady(\n state,\n timeout.value,\n AGENT_BRIDGE_HOST_READY_POLL_INTERVAL_MS,\n observability,\n );\n if (!ready.editorReady) {\n return createLocalEditorAgentBridgeFailure(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.HOST_EDITOR_ENTER,\n state.statusDetails || state.status || 'Host did not enter editor mode.',\n { code: state.statusTone === 'error' ? 'host.editorEnterFailed' : 'host.waitReady.timeout' },\n );\n }\n return {\n ...ready,\n entered: true,\n alreadyEditor: false,\n } satisfies EditorAgentBridgeHostEditorEnterOutput;\n },\n async waitReady(input) {\n const timeout = normalizeAgentBridgeHostMilliseconds(\n input?.timeoutMs,\n AGENT_BRIDGE_HOST_READY_TIMEOUT_MS,\n AGENT_BRIDGE_HOST_READY_MAX_TIMEOUT_MS,\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.HOST_EDITOR_WAIT_READY,\n 'timeoutMs',\n );\n if (!timeout.ok) return timeout.result;\n const pollInterval = normalizeAgentBridgeHostMilliseconds(\n input?.pollIntervalMs,\n AGENT_BRIDGE_HOST_READY_POLL_INTERVAL_MS,\n AGENT_BRIDGE_HOST_READY_MAX_POLL_INTERVAL_MS,\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.HOST_EDITOR_WAIT_READY,\n 'pollIntervalMs',\n 1,\n );\n if (!pollInterval.ok) return pollInterval.result;\n const ready = await waitForAgentBridgeHostReady(state, timeout.value, pollInterval.value, observability);\n if (!ready.editorReady) {\n return createLocalEditorAgentBridgeFailure(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.HOST_EDITOR_WAIT_READY,\n 'Timed out waiting for editor mode readiness.',\n { code: 'host.waitReady.timeout' },\n );\n }\n return ready satisfies EditorAgentBridgeHostEditorWaitReadyOutput;\n },\n async saveAndRun(_input, context) {\n if (!createAgentBridgeHostStatus(state, observability).editorReady || !saveAndRun) {\n return createLocalEditorAgentBridgeFailure(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.HOST_EDITOR_SAVE_AND_RUN,\n 'Host is not ready to save and run.',\n { code: 'host.editorNotReady' },\n );\n }\n let saved: boolean;\n try {\n saved = await saveAndRun(context);\n } catch (error) {\n return createLocalEditorAgentBridgeFailure(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.HOST_EDITOR_SAVE_AND_RUN,\n state.statusDetails || state.status || (error instanceof Error ? error.message : String(error)),\n { code: 'host.saveRejected' },\n );\n }\n if (!saved) {\n return createLocalEditorAgentBridgeFailure(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.HOST_EDITOR_SAVE_AND_RUN,\n state.statusDetails || state.status || 'Host rejected the save operation.',\n { code: 'host.saveRejected' },\n );\n }\n return {\n ...createAgentBridgeHostStatus(state, observability),\n saved: true,\n runScheduled: true,\n } satisfies EditorAgentBridgeHostEditorSaveAndRunOutput;\n },\n async discardAndRun(_input, context) {\n if (!createAgentBridgeHostStatus(state, observability).editorReady || !discardAndRun) {\n return createLocalEditorAgentBridgeFailure(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.HOST_EDITOR_DISCARD_AND_RUN,\n 'Host is not ready to discard and run.',\n { code: 'host.editorNotReady' },\n );\n }\n const accepted = await discardAndRun(context);\n if (!accepted) {\n return createLocalEditorAgentBridgeFailure(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.HOST_EDITOR_DISCARD_AND_RUN,\n 'Host discard was cancelled by the active lifecycle policy.',\n { code: 'host.discardRejected' },\n );\n }\n return {\n ...createAgentBridgeHostStatus(state, observability),\n discarded: true,\n runScheduled: true,\n } satisfies EditorAgentBridgeHostEditorDiscardAndRunOutput;\n },\n };\n}\n\nfunction createAgentBridgeHostStatus<TDocument, TPatch>(\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n observability?: LocalEditorAgentBridgeHostObservability,\n): EditorAgentBridgeHostStatus {\n const lifecycle = observability?.getLifecycleSnapshot();\n const diagnostics = observability?.getRecentDiagnostics().slice(-5);\n return {\n mode: state.mode,\n editorReady: state.mode === 'editor' && !!state.session && !state.busy,\n busy: state.busy,\n status: state.status,\n statusTone: state.statusTone,\n statusDetails: state.statusDetails,\n sessionActive: !!state.session,\n ...(lifecycle ? {\n lifecycle: {\n revision: lifecycle.revision,\n transitioning: lifecycle.transitioning,\n ...(lifecycle.activeTransition ? { activeTransition: { ...lifecycle.activeTransition } } : {}),\n application: lifecycle.application,\n project: lifecycle.project,\n mode: lifecycle.mode,\n document: lifecycle.document,\n preview: lifecycle.preview,\n scopes: lifecycle.scopes.map(scope => ({ ...scope })),\n },\n } : {}),\n ...(diagnostics && diagnostics.length > 0 ? {\n recentDiagnostics: diagnostics.map(diagnostic => ({\n code: diagnostic.code,\n message: diagnostic.message,\n severity: diagnostic.severity,\n ...(diagnostic.pluginId ? { pluginId: diagnostic.pluginId } : {}),\n })),\n } : {}),\n };\n}\n\nasync function waitForAgentBridgeHostReady<TDocument, TPatch>(\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n timeoutMs: number,\n pollIntervalMs: number,\n observability?: LocalEditorAgentBridgeHostObservability,\n): Promise<EditorAgentBridgeHostStatus> {\n const startedAt = Date.now();\n let status = createAgentBridgeHostStatus(state, observability);\n while (!status.editorReady && Date.now() - startedAt < timeoutMs) {\n await waitForAgentBridgeHostPoll(Math.min(pollIntervalMs, Math.max(0, timeoutMs - (Date.now() - startedAt))));\n status = createAgentBridgeHostStatus(state, observability);\n }\n return status;\n}\n\nfunction waitForAgentBridgeHostPoll(delayMs: number): Promise<void> {\n return new Promise(resolve => setTimeout(resolve, Math.max(0, delayMs)));\n}\n\nfunction normalizeAgentBridgeHostMilliseconds(\n value: unknown,\n fallback: number,\n maximum: number,\n capabilityId: string,\n fieldName: string,\n minimum = 0,\n): { ok: true; value: number } | { ok: false; result: ReturnType<typeof createLocalEditorAgentBridgeFailure> } {\n if (value === undefined) return { ok: true, value: fallback };\n if (typeof value !== 'number' || !Number.isFinite(value) || value < minimum || value > maximum) {\n return {\n ok: false,\n result: createLocalEditorAgentBridgeFailure(\n capabilityId,\n `${fieldName} must be a finite number between ${minimum} and ${maximum}.`,\n { code: 'host.invalidInput' },\n ),\n };\n }\n return { ok: true, value };\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"prefabs.d.ts","sourceRoot":"","sources":["../../../src/agent-bridge/capabilities/prefabs.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAE/E,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAEL,KAAK,gDAAgD,EAErD,KAAK,kCAAkC,EACxC,MAAM,cAAc,CAAC;AAgBtB,wBAAgB,wCAAwC,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAChF,KAAK,EAAE,kCAAkC,CAAC,SAAS,EAAE,MAAM,CAAC,EAC5D,OAAO,EAAE,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAC7D,QAAQ,EAAE,MAAM,IAAI,EACpB,UAAU,EAAE,gDAAgD,CAAC,SAAS,CAAC,GACtE,kCAAkC,CAiWpC"}
1
+ {"version":3,"file":"prefabs.d.ts","sourceRoot":"","sources":["../../../src/agent-bridge/capabilities/prefabs.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAE/E,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,oBAAoB,CAAC;AAC7E,OAAO,EAEL,KAAK,gDAAgD,EAErD,KAAK,kCAAkC,EACxC,MAAM,cAAc,CAAC;AAgBtB,wBAAgB,wCAAwC,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAChF,KAAK,EAAE,kCAAkC,CAAC,SAAS,EAAE,MAAM,CAAC,EAC5D,OAAO,EAAE,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAC7D,QAAQ,EAAE,MAAM,IAAI,EACpB,UAAU,EAAE,gDAAgD,CAAC,SAAS,CAAC,GACtE,kCAAkC,CAmYpC"}
@@ -104,7 +104,7 @@ export function createLocalEditorAgentBridgePrefabSource(state, options, renderU
104
104
  if (!details || !isRequestedPrefabStage(details.stage, input.assetId)) {
105
105
  return createLocalEditorAgentBridgeFailure(EDITOR_AGENT_BRIDGE_CAPABILITY_ID.PREFAB_SCENE_GET, createPrefabStageUnavailableMessage(input.assetId), { code: 'prefab.stageNotOpen', details: { assetId: input.assetId } });
106
106
  }
107
- return createPrefabSceneOutput(details);
107
+ return createSafePrefabSceneOutput(EDITOR_AGENT_BRIDGE_CAPABILITY_ID.PREFAB_SCENE_GET, details, operations);
108
108
  },
109
109
  selectNode(input) {
110
110
  const nodeId = normalizePrefabNodeId(input.nodeId);
@@ -112,7 +112,9 @@ export function createLocalEditorAgentBridgePrefabSource(state, options, renderU
112
112
  if (!details || !nodeId) {
113
113
  return createLocalEditorAgentBridgeFailure(EDITOR_AGENT_BRIDGE_CAPABILITY_ID.PREFAB_NODE_SELECT, nodeId ? 'Prefab stage is not open.' : 'Prefab node id is required.', { code: nodeId ? 'prefab.stageNotOpen' : 'prefab.invalidInput', details: { nodeId: input.nodeId } });
114
114
  }
115
- const scene = createPrefabSceneOutput(details);
115
+ const scene = createSafePrefabSceneOutput(EDITOR_AGENT_BRIDGE_CAPABILITY_ID.PREFAB_NODE_SELECT, details, operations);
116
+ if ('ok' in scene)
117
+ return scene;
116
118
  const node = scene.nodes.find(candidate => candidate.nodeId === nodeId) ?? null;
117
119
  if (!node) {
118
120
  return createLocalEditorAgentBridgeFailure(EDITOR_AGENT_BRIDGE_CAPABILITY_ID.PREFAB_NODE_SELECT, `Prefab node not found: ${nodeId}`, { code: 'prefab.nodeNotFound', details: { assetId: details.stage.assetId, nodeId } });
@@ -121,7 +123,9 @@ export function createLocalEditorAgentBridgePrefabSource(state, options, renderU
121
123
  if (changed)
122
124
  renderUi();
123
125
  const nextDetails = operations.getPrefabStageDetails() ?? details;
124
- const nextScene = createPrefabSceneOutput(nextDetails);
126
+ const nextScene = createSafePrefabSceneOutput(EDITOR_AGENT_BRIDGE_CAPABILITY_ID.PREFAB_NODE_SELECT, nextDetails, operations);
127
+ if ('ok' in nextScene)
128
+ return nextScene;
125
129
  const selectedNode = nextScene.nodes.find(candidate => candidate.nodeId === nodeId) ?? node;
126
130
  return {
127
131
  stage: nextScene.stage,
@@ -138,7 +142,9 @@ export function createLocalEditorAgentBridgePrefabSource(state, options, renderU
138
142
  ? 'Prefab stage is not open.'
139
143
  : `Asset not found: ${assetId || '(empty)'}`, { code: !details ? 'prefab.stageNotOpen' : 'asset.notFound', details: { assetId } });
140
144
  }
141
- const beforeScene = createPrefabSceneOutput(details);
145
+ const beforeScene = createSafePrefabSceneOutput(EDITOR_AGENT_BRIDGE_CAPABILITY_ID.PREFAB_NODE_CREATE_FROM_ASSET, details, operations);
146
+ if ('ok' in beforeScene)
147
+ return beforeScene;
142
148
  const parentNodeId = resolvePrefabMutationParentNodeId(input.parentNodeId, beforeScene);
143
149
  const action = {
144
150
  actionId: 'asset.add-to-current-prefab',
@@ -163,7 +169,9 @@ export function createLocalEditorAgentBridgePrefabSource(state, options, renderU
163
169
  if (!details) {
164
170
  return createLocalEditorAgentBridgeFailure(EDITOR_AGENT_BRIDGE_CAPABILITY_ID.PREFAB_NODE_CREATE_GROUP, 'Prefab stage is not open.', { code: 'prefab.stageNotOpen' });
165
171
  }
166
- const beforeScene = createPrefabSceneOutput(details);
172
+ const beforeScene = createSafePrefabSceneOutput(EDITOR_AGENT_BRIDGE_CAPABILITY_ID.PREFAB_NODE_CREATE_GROUP, details, operations);
173
+ if ('ok' in beforeScene)
174
+ return beforeScene;
167
175
  const parentNodeId = resolvePrefabMutationParentNodeId(input.parentNodeId, beforeScene);
168
176
  const action = {
169
177
  actionId: 'prefab.node.createGroup',
@@ -186,7 +194,9 @@ export function createLocalEditorAgentBridgePrefabSource(state, options, renderU
186
194
  if (!details) {
187
195
  return createLocalEditorAgentBridgeFailure(EDITOR_AGENT_BRIDGE_CAPABILITY_ID.PREFAB_NODE_CREATE_PRIMITIVE, 'Prefab stage is not open.', { code: 'prefab.stageNotOpen' });
188
196
  }
189
- const beforeScene = createPrefabSceneOutput(details);
197
+ const beforeScene = createSafePrefabSceneOutput(EDITOR_AGENT_BRIDGE_CAPABILITY_ID.PREFAB_NODE_CREATE_PRIMITIVE, details, operations);
198
+ if ('ok' in beforeScene)
199
+ return beforeScene;
190
200
  const parentNodeId = resolvePrefabMutationParentNodeId(input.parentNodeId, beforeScene);
191
201
  const action = {
192
202
  actionId: 'prefab.node.createPrimitive',
@@ -211,7 +221,9 @@ export function createLocalEditorAgentBridgePrefabSource(state, options, renderU
211
221
  if (!details || !nodeId) {
212
222
  return createLocalEditorAgentBridgeFailure(EDITOR_AGENT_BRIDGE_CAPABILITY_ID.PREFAB_NODE_SET_TRANSFORM, nodeId ? 'Prefab stage is not open.' : 'Prefab node id is required.', { code: nodeId ? 'prefab.stageNotOpen' : 'prefab.invalidInput', details: { nodeId: input.nodeId } });
213
223
  }
214
- const beforeScene = createPrefabSceneOutput(details);
224
+ const beforeScene = createSafePrefabSceneOutput(EDITOR_AGENT_BRIDGE_CAPABILITY_ID.PREFAB_NODE_SET_TRANSFORM, details, operations);
225
+ if ('ok' in beforeScene)
226
+ return beforeScene;
215
227
  const node = beforeScene.nodes.find(candidate => candidate.nodeId === nodeId) ?? null;
216
228
  if (!node) {
217
229
  return createLocalEditorAgentBridgeFailure(EDITOR_AGENT_BRIDGE_CAPABILITY_ID.PREFAB_NODE_SET_TRANSFORM, `Prefab node not found: ${nodeId}`, { code: 'prefab.nodeNotFound', details: { assetId: details.stage.assetId, nodeId } });
@@ -381,12 +393,42 @@ function isRequestedPrefabStage(stage, assetId) {
381
393
  const normalized = normalizeAgentBridgeString(assetId);
382
394
  return !normalized || stage.assetId === normalized || stage.browserAssetId === normalized;
383
395
  }
384
- function createPrefabSceneOutput(details) {
385
- const nodes = listPrefabSceneNodes(details.structureItems);
396
+ function createSafePrefabSceneOutput(capabilityId, details, operations) {
397
+ const projection = operations.getHierarchyProjection();
398
+ const expectedScopeId = `prefab-stage:${details.stage.assetId}`;
399
+ if (!projection
400
+ || projection.scopeKind !== 'prefab-stage'
401
+ || projection.scopeId !== expectedScopeId) {
402
+ return createLocalEditorAgentBridgeFailure(capabilityId, 'Prefab Hierarchy projection is unavailable or does not match the active Prefab Stage.', {
403
+ code: 'prefab.hierarchyProjectionUnavailable',
404
+ details: {
405
+ assetId: details.stage.assetId,
406
+ expectedScopeId,
407
+ actualScopeId: projection?.scopeId,
408
+ actualScopeKind: projection?.scopeKind,
409
+ },
410
+ });
411
+ }
412
+ const safeNodeIds = new Set(projection.targets.map(target => target.targetId));
413
+ for (const node of projection.nodes) {
414
+ if (node.sourceKind !== 'root')
415
+ continue;
416
+ const rootNodeId = normalizePrefabNodeId(node.id);
417
+ if (rootNodeId)
418
+ safeNodeIds.add(rootNodeId);
419
+ }
420
+ return createPrefabSceneOutput(details, safeNodeIds);
421
+ }
422
+ function createPrefabSceneOutput(details, safeNodeIds) {
423
+ const nodes = listPrefabSceneNodes(details.structureItems)
424
+ .filter(node => safeNodeIds.has(node.nodeId));
386
425
  const rootNodeId = nodes.find(node => node.kind === 'root')?.nodeId
387
426
  ?? nodes.find(node => !node.parentNodeId)?.nodeId
388
427
  ?? PREFAB_ROOT_NODE_ID;
389
- const selectedNodeId = getSelectedPrefabNodeId(details.stage.selectedItemId);
428
+ const rawSelectedNodeId = getSelectedPrefabNodeId(details.stage.selectedItemId);
429
+ const selectedNodeId = rawSelectedNodeId && safeNodeIds.has(rawSelectedNodeId)
430
+ ? rawSelectedNodeId
431
+ : null;
390
432
  return {
391
433
  stage: details.stage,
392
434
  rootNodeId,
@@ -531,7 +573,9 @@ function runNodeIdMutation(input) {
531
573
  details: { nodeId: input.nodeId, parentNodeId: input.parentNodeId },
532
574
  });
533
575
  }
534
- const beforeScene = createPrefabSceneOutput(details);
576
+ const beforeScene = createSafePrefabSceneOutput(input.capabilityId, details, input.operations);
577
+ if ('ok' in beforeScene)
578
+ return beforeScene;
535
579
  const node = beforeScene.nodes.find(candidate => candidate.nodeId === nodeId) ?? null;
536
580
  if (!node) {
537
581
  return createLocalEditorAgentBridgeFailure(input.capabilityId, `Prefab node not found: ${nodeId}`, { code: 'prefab.nodeNotFound', details: { assetId: details.stage.assetId, nodeId } });
@@ -618,7 +662,9 @@ function runPrefabNodeMutation(input) {
618
662
  if (!afterDetails) {
619
663
  return createLocalEditorAgentBridgeFailure(input.capabilityId, 'Prefab mutation completed, but Prefab stage is no longer open.', { code: 'prefab.stageClosed' });
620
664
  }
621
- const afterScene = createPrefabSceneOutput(afterDetails);
665
+ const afterScene = createSafePrefabSceneOutput(input.capabilityId, afterDetails, input.operations);
666
+ if ('ok' in afterScene)
667
+ return afterScene;
622
668
  const beforeNodeIds = new Set(input.beforeScene.nodes.map(node => node.nodeId));
623
669
  const afterNodeIds = new Set(afterScene.nodes.map(node => node.nodeId));
624
670
  const createdNodeId = afterScene.nodes.find(node => !beforeNodeIds.has(node.nodeId))?.nodeId;
@@ -654,7 +700,9 @@ function resolvePrefabAssetForInspection(capabilityId, state, options, operation
654
700
  result: createLocalEditorAgentBridgeFailure(capabilityId, 'Prefab stage is not open.', { code: 'prefab.stageNotOpen' }),
655
701
  };
656
702
  }
657
- const scene = createPrefabSceneOutput(details);
703
+ const scene = createSafePrefabSceneOutput(capabilityId, details, operations);
704
+ if ('ok' in scene)
705
+ return { ok: false, result: scene };
658
706
  const nodeId = normalizePrefabNodeId(input.nodeId) || scene.selectedNodeId || '';
659
707
  const node = nodeId ? scene.nodes.find(candidate => candidate.nodeId === nodeId) ?? null : null;
660
708
  const assetId = normalizeAgentBridgeString(input.assetId)