@fps-games/editor 0.2.0-beta.1 → 0.2.0-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (653) hide show
  1. package/dist/agent-bridge/capabilities/assets.js.map +1 -1
  2. package/dist/agent-bridge/capabilities/editor-state.js.map +1 -1
  3. package/dist/agent-bridge/capabilities/host-lifecycle.js.map +1 -1
  4. package/dist/agent-bridge/capabilities/prefabs.js.map +1 -1
  5. package/dist/agent-bridge/capabilities/scene-objects.js.map +1 -1
  6. package/dist/agent-bridge/capabilities/selection.js.map +1 -1
  7. package/dist/agent-bridge/capabilities/shadows.js.map +1 -1
  8. package/dist/agent-bridge/capabilities/transform.js.map +1 -1
  9. package/dist/agent-bridge/capabilities/ui-regions.js.map +1 -1
  10. package/dist/agent-bridge/capabilities/viewport.js.map +1 -1
  11. package/dist/agent-bridge/capability-sources.js.map +1 -1
  12. package/dist/agent-bridge/diagnostics.js.map +1 -1
  13. package/dist/agent-bridge/index.js.map +1 -1
  14. package/dist/agent-bridge/register.js.map +1 -1
  15. package/dist/agent-bridge/shared.js.map +1 -1
  16. package/dist/agent-bridge/source-types.js.map +1 -1
  17. package/dist/authoring-apply.js.map +1 -1
  18. package/dist/build-info.json +48 -48
  19. package/dist/editor-plugin-agent-capabilities.js.map +1 -1
  20. package/dist/editor-plugin-hierarchy-command.js.map +1 -1
  21. package/dist/index.js.map +1 -1
  22. package/dist/internal/local-editor-lifecycle-operations.js.map +1 -1
  23. package/dist/local-editor-agent-actions.js.map +1 -1
  24. package/dist/local-editor-agent-bridge-transport.js.map +1 -1
  25. package/dist/local-editor-agent-bridge.js.map +1 -1
  26. package/dist/local-editor-agent-context.js.map +1 -1
  27. package/dist/local-editor-harness.d.ts +57 -1
  28. package/dist/local-editor-harness.d.ts.map +1 -1
  29. package/dist/local-editor-harness.js +129 -0
  30. package/dist/local-editor-harness.js.map +1 -1
  31. package/dist/local-editor-marker-graph.js.map +1 -1
  32. package/dist/local-editor-performance-stats.js.map +1 -1
  33. package/dist/local-editor-plugin-inspector.js.map +1 -1
  34. package/dist/local-editor-plugin-panel.js.map +1 -1
  35. package/dist/local-editor-scene-render-scheduler.js.map +1 -1
  36. package/dist/local-editor-scene-view-interaction-runtime.js.map +1 -1
  37. package/dist/local-editor-viewport-render-coordinator.js.map +1 -1
  38. package/dist/playable-babylon-facade.js.map +1 -1
  39. package/dist/playable-babylon-outline-inspector.js.map +1 -1
  40. package/dist/playable-babylon-outline-runtime.js.map +1 -1
  41. package/dist/playable-babylon-rendering.js.map +1 -1
  42. package/dist/playable-local-editor-host.d.ts +36 -0
  43. package/dist/playable-local-editor-host.d.ts.map +1 -1
  44. package/dist/playable-local-editor-host.js.map +1 -1
  45. package/dist/playable-product-local-editor.js.map +1 -1
  46. package/dist/playable-product-projection-preview.js.map +1 -1
  47. package/dist/playable-product-rendering.js.map +1 -1
  48. package/dist/playable-product-scene-capabilities.d.ts.map +1 -1
  49. package/dist/playable-product-scene-capabilities.js +50 -3
  50. package/dist/playable-product-scene-capabilities.js.map +1 -1
  51. package/dist/playable-runtime-babylon.js.map +1 -1
  52. package/dist/playable-runtime.js.map +1 -1
  53. package/dist/playable-sdk-upgrade-doctor.js.map +1 -1
  54. package/dist/playable-sdk-vite.js.map +1 -1
  55. package/dist/playable-sdk.js.map +1 -1
  56. package/dist/playable-standard-project.d.ts.map +1 -1
  57. package/dist/playable-standard-project.js +8 -3
  58. package/dist/playable-standard-project.js.map +1 -1
  59. package/dist/static-shadow-cpu-worker.js.map +1 -1
  60. package/dist/vite.js.map +1 -1
  61. package/node_modules/@fps-games/babylon-renderer/dist/environment/environment-texture-controller.js.map +1 -1
  62. package/node_modules/@fps-games/babylon-renderer/dist/environment/index.js.map +1 -1
  63. package/node_modules/@fps-games/babylon-renderer/dist/environment/profile.js.map +1 -1
  64. package/node_modules/@fps-games/babylon-renderer/dist/environment/types.js.map +1 -1
  65. package/node_modules/@fps-games/babylon-renderer/dist/index.js.map +1 -1
  66. package/node_modules/@fps-games/babylon-renderer/dist/lighting/directional-light-angles.js.map +1 -1
  67. package/node_modules/@fps-games/babylon-renderer/dist/outlines/babylon-default/apply.js.map +1 -1
  68. package/node_modules/@fps-games/babylon-renderer/dist/outlines/babylon-default/index.js.map +1 -1
  69. package/node_modules/@fps-games/babylon-renderer/dist/outlines/babylon-default/types.js.map +1 -1
  70. package/node_modules/@fps-games/babylon-renderer/dist/outlines/index.js.map +1 -1
  71. package/node_modules/@fps-games/babylon-renderer/dist/outlines/types.js.map +1 -1
  72. package/node_modules/@fps-games/babylon-renderer/dist/placement/index.js.map +1 -1
  73. package/node_modules/@fps-games/babylon-renderer/dist/placement/runtime-drop-position.js.map +1 -1
  74. package/node_modules/@fps-games/babylon-renderer/dist/plugin.js.map +1 -1
  75. package/node_modules/@fps-games/babylon-renderer/dist/post-process/babylon-default-pipeline.js.map +1 -1
  76. package/node_modules/@fps-games/babylon-renderer/dist/post-process/index.js.map +1 -1
  77. package/node_modules/@fps-games/babylon-renderer/dist/post-process/profile.js.map +1 -1
  78. package/node_modules/@fps-games/babylon-renderer/dist/post-process/types.js.map +1 -1
  79. package/node_modules/@fps-games/babylon-renderer/dist/post-process/volume-stack.js.map +1 -1
  80. package/node_modules/@fps-games/babylon-renderer/dist/reference.js.map +1 -1
  81. package/node_modules/@fps-games/babylon-renderer/dist/rendering/index.js.map +1 -1
  82. package/node_modules/@fps-games/babylon-renderer/dist/rendering/node-rendering.js.map +1 -1
  83. package/node_modules/@fps-games/babylon-renderer/dist/shadows/blob-shadow-shaders.js.map +1 -1
  84. package/node_modules/@fps-games/babylon-renderer/dist/shadows/blob-shadow-system.js.map +1 -1
  85. package/node_modules/@fps-games/babylon-renderer/dist/shadows/dynamic-shadow-system.js.map +1 -1
  86. package/node_modules/@fps-games/babylon-renderer/dist/shadows/planar-shadow-shaders.js.map +1 -1
  87. package/node_modules/@fps-games/babylon-renderer/dist/shadows/planar-shadow-system.js.map +1 -1
  88. package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-artifact-system.js.map +1 -1
  89. package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-atlas.js.map +1 -1
  90. package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-bake.js.map +1 -1
  91. package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-baker.js.map +1 -1
  92. package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-options.js.map +1 -1
  93. package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-rendering.js.map +1 -1
  94. package/node_modules/@fps-games/babylon-renderer/dist/shadows/types.js.map +1 -1
  95. package/node_modules/@fps-games/babylon-renderer/package.json +7 -7
  96. package/node_modules/@fps-games/editor-babylon/dist/camera-controller.js.map +1 -1
  97. package/node_modules/@fps-games/editor-babylon/dist/edit-session.js.map +1 -1
  98. package/node_modules/@fps-games/editor-babylon/dist/editor-sky.js.map +1 -1
  99. package/node_modules/@fps-games/editor-babylon/dist/editor-world.js.map +1 -1
  100. package/node_modules/@fps-games/editor-babylon/dist/event-guard.js.map +1 -1
  101. package/node_modules/@fps-games/editor-babylon/dist/index.js.map +1 -1
  102. package/node_modules/@fps-games/editor-babylon/dist/infinite-grid-layer.js.map +1 -1
  103. package/node_modules/@fps-games/editor-babylon/dist/infinite-grid.js.map +1 -1
  104. package/node_modules/@fps-games/editor-babylon/dist/input-controller.js.map +1 -1
  105. package/node_modules/@fps-games/editor-babylon/dist/inspector-adapter.js.map +1 -1
  106. package/node_modules/@fps-games/editor-babylon/dist/inspector-host.js.map +1 -1
  107. package/node_modules/@fps-games/editor-babylon/dist/main-camera-preview.js.map +1 -1
  108. package/node_modules/@fps-games/editor-babylon/dist/marker-overlay.js.map +1 -1
  109. package/node_modules/@fps-games/editor-babylon/dist/material-property-adapter.js.map +1 -1
  110. package/node_modules/@fps-games/editor-babylon/dist/material-slot-source-resolver.js.map +1 -1
  111. package/node_modules/@fps-games/editor-babylon/dist/monitor.js.map +1 -1
  112. package/node_modules/@fps-games/editor-babylon/dist/outline-adapter.js.map +1 -1
  113. package/node_modules/@fps-games/editor-babylon/dist/performance-monitor.js.map +1 -1
  114. package/node_modules/@fps-games/editor-babylon/dist/prefab-comparison-preview-controller.js.map +1 -1
  115. package/node_modules/@fps-games/editor-babylon/dist/primitive-projection-instancing.js.map +1 -1
  116. package/node_modules/@fps-games/editor-babylon/dist/projection-asset-container-importer.js.map +1 -1
  117. package/node_modules/@fps-games/editor-babylon/dist/projection-pick-resolver.js.map +1 -1
  118. package/node_modules/@fps-games/editor-babylon/dist/projection-selection-controller.js.map +1 -1
  119. package/node_modules/@fps-games/editor-babylon/dist/projection-source-owner-path.js.map +1 -1
  120. package/node_modules/@fps-games/editor-babylon/dist/projection.js.map +1 -1
  121. package/node_modules/@fps-games/editor-babylon/dist/runtime-globals.js.map +1 -1
  122. package/node_modules/@fps-games/editor-babylon/dist/scene-camera-preview.js.map +1 -1
  123. package/node_modules/@fps-games/editor-babylon/dist/scene-view-camera-controller.js.map +1 -1
  124. package/node_modules/@fps-games/editor-babylon/dist/scene-view-input-controller.js.map +1 -1
  125. package/node_modules/@fps-games/editor-babylon/dist/scene-view-measurement-controller.js.map +1 -1
  126. package/node_modules/@fps-games/editor-babylon/dist/scene-view-spatial-overlay-controller.js.map +1 -1
  127. package/node_modules/@fps-games/editor-babylon/dist/selection-controller.js.map +1 -1
  128. package/node_modules/@fps-games/editor-babylon/dist/shadow-preview-controller.js.map +1 -1
  129. package/node_modules/@fps-games/editor-babylon/dist/tool-controller.js.map +1 -1
  130. package/node_modules/@fps-games/editor-babylon/dist/transform-gizmo-controller.js.map +1 -1
  131. package/node_modules/@fps-games/editor-babylon/dist/transform-solver.js.map +1 -1
  132. package/node_modules/@fps-games/editor-babylon/dist/types.js.map +1 -1
  133. package/node_modules/@fps-games/editor-babylon/package.json +5 -5
  134. package/node_modules/@fps-games/editor-browser/dist/index.js.map +1 -1
  135. package/node_modules/@fps-games/editor-browser/dist/local-editor-inspector-clipboard.js.map +1 -1
  136. package/node_modules/@fps-games/editor-browser/dist/local-editor-inspector-groups.js.map +1 -1
  137. package/node_modules/@fps-games/editor-browser/dist/local-editor-rendering-actions.js.map +1 -1
  138. package/node_modules/@fps-games/editor-browser/dist/local-editor-root-ownership.js.map +1 -1
  139. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-asset-kind.js.map +1 -1
  140. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-context-menu.js.map +1 -1
  141. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-dock-panel.js.map +1 -1
  142. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-actions.js.map +1 -1
  143. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-attach-dialog.js.map +1 -1
  144. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-auto-scroll.js.map +1 -1
  145. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-command-adapter.js.map +1 -1
  146. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.js.map +1 -1
  147. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-drag-policy.js.map +1 -1
  148. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-scope.js.map +1 -1
  149. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-tree.js.map +1 -1
  150. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view.js.map +1 -1
  151. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-icons.js.map +1 -1
  152. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-input-router.js.map +1 -1
  153. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-modal-dialog.js.map +1 -1
  154. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panel-registry.js.map +1 -1
  155. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.js.map +1 -1
  156. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-plugin-panel.js.map +1 -1
  157. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-prefab-stage.js.map +1 -1
  158. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-primitives.js.map +1 -1
  159. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shared.js.map +1 -1
  160. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shortcuts.js.map +1 -1
  161. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-structured-drag-auto-scroll.js.map +1 -1
  162. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-structured-drag-policy.js.map +1 -1
  163. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-structured-drag-preview.js.map +1 -1
  164. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-structured-drag-session.js.map +1 -1
  165. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-theme.js.map +1 -1
  166. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-tooltip.js.map +1 -1
  167. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.js.map +1 -1
  168. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-workbench.js.map +1 -1
  169. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.js.map +1 -1
  170. package/node_modules/@fps-games/editor-browser/dist/plugin-contributions.js.map +1 -1
  171. package/node_modules/@fps-games/editor-browser/dist/runtime-camera-debug-panel.js.map +1 -1
  172. package/node_modules/@fps-games/editor-browser/dist/runtime-debug-panel-shell.js.map +1 -1
  173. package/node_modules/@fps-games/editor-browser/dist/runtime-lighting-debug-panel.js.map +1 -1
  174. package/node_modules/@fps-games/editor-browser/package.json +4 -4
  175. package/node_modules/@fps-games/editor-core/dist/agent-bridge.js.map +1 -1
  176. package/node_modules/@fps-games/editor-core/dist/agent-interaction.js.map +1 -1
  177. package/node_modules/@fps-games/editor-core/dist/authoring-source.js.map +1 -1
  178. package/node_modules/@fps-games/editor-core/dist/document-adapter.js.map +1 -1
  179. package/node_modules/@fps-games/editor-core/dist/editor-plugin-host.d.ts.map +1 -1
  180. package/node_modules/@fps-games/editor-core/dist/editor-plugin-host.js +17 -2
  181. package/node_modules/@fps-games/editor-core/dist/editor-plugin-host.js.map +1 -1
  182. package/node_modules/@fps-games/editor-core/dist/editor-session.d.ts +6 -1
  183. package/node_modules/@fps-games/editor-core/dist/editor-session.d.ts.map +1 -1
  184. package/node_modules/@fps-games/editor-core/dist/editor-session.js +9 -0
  185. package/node_modules/@fps-games/editor-core/dist/editor-session.js.map +1 -1
  186. package/node_modules/@fps-games/editor-core/dist/events.d.ts +1 -1
  187. package/node_modules/@fps-games/editor-core/dist/events.d.ts.map +1 -1
  188. package/node_modules/@fps-games/editor-core/dist/events.js.map +1 -1
  189. package/node_modules/@fps-games/editor-core/dist/field-schema/index.js.map +1 -1
  190. package/node_modules/@fps-games/editor-core/dist/field-schema/resolver.js.map +1 -1
  191. package/node_modules/@fps-games/editor-core/dist/field-schema/schema.js.map +1 -1
  192. package/node_modules/@fps-games/editor-core/dist/field-schema/types.js.map +1 -1
  193. package/node_modules/@fps-games/editor-core/dist/field-schema/validators.js.map +1 -1
  194. package/node_modules/@fps-games/editor-core/dist/host-services.js.map +1 -1
  195. package/node_modules/@fps-games/editor-core/dist/index.js.map +1 -1
  196. package/node_modules/@fps-games/editor-core/dist/inspector.js.map +1 -1
  197. package/node_modules/@fps-games/editor-core/dist/lifecycle.js.map +1 -1
  198. package/node_modules/@fps-games/editor-core/dist/marker-graph.js.map +1 -1
  199. package/node_modules/@fps-games/editor-core/dist/scene-graph.js.map +1 -1
  200. package/node_modules/@fps-games/editor-core/dist/scene-view-input.js.map +1 -1
  201. package/node_modules/@fps-games/editor-core/dist/selection-strategy.js.map +1 -1
  202. package/node_modules/@fps-games/editor-core/dist/serialized-object.js.map +1 -1
  203. package/node_modules/@fps-games/editor-core/dist/transform-command.js.map +1 -1
  204. package/node_modules/@fps-games/editor-core/dist/transform-gizmo.js.map +1 -1
  205. package/node_modules/@fps-games/editor-core/dist/transform-operation-policy.js.map +1 -1
  206. package/node_modules/@fps-games/editor-core/dist/transform-operations.js.map +1 -1
  207. package/node_modules/@fps-games/editor-core/dist/viewport-tools.js.map +1 -1
  208. package/node_modules/@fps-games/editor-core/package.json +6 -6
  209. package/node_modules/@fps-games/editor-forge-play/dist/agent-transport.js.map +1 -1
  210. package/node_modules/@fps-games/editor-forge-play/dist/index.js.map +1 -1
  211. package/node_modules/@fps-games/editor-forge-play/package.json +2 -2
  212. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/drop-cache.js.map +1 -1
  213. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/index.js.map +1 -1
  214. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/payload.d.ts.map +1 -1
  215. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/payload.js +28 -5
  216. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/payload.js.map +1 -1
  217. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/types.d.ts +1 -0
  218. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/types.d.ts.map +1 -1
  219. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/types.js.map +1 -1
  220. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/config.js.map +1 -1
  221. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/generated-module.d.ts.map +1 -1
  222. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/generated-module.js +10 -0
  223. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/generated-module.js.map +1 -1
  224. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/index.js.map +1 -1
  225. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/managed-facade.js.map +1 -1
  226. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/manager-core.d.ts +8 -0
  227. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/manager-core.d.ts.map +1 -1
  228. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/manager-core.js +24 -2
  229. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/manager-core.js.map +1 -1
  230. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/metadata.d.ts.map +1 -1
  231. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/metadata.js +6 -2
  232. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/metadata.js.map +1 -1
  233. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/node.js.map +1 -1
  234. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.d.ts +1 -0
  235. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.d.ts.map +1 -1
  236. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.js +83 -23
  237. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.js.map +1 -1
  238. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/types.js.map +1 -1
  239. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/catalog.d.ts +1 -0
  240. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/catalog.d.ts.map +1 -1
  241. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/catalog.js +8 -0
  242. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/catalog.js.map +1 -1
  243. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/document.d.ts +22 -0
  244. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/document.d.ts.map +1 -1
  245. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/document.js +108 -1
  246. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/document.js.map +1 -1
  247. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/index.d.ts +3 -2
  248. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/index.d.ts.map +1 -1
  249. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/index.js +2 -2
  250. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/index.js.map +1 -1
  251. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/types.d.ts +2 -0
  252. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/types.d.ts.map +1 -1
  253. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/types.js.map +1 -1
  254. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/document.d.ts.map +1 -1
  255. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/document.js +2 -0
  256. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/document.js.map +1 -1
  257. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/identity.js.map +1 -1
  258. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/index.js.map +1 -1
  259. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/managed-runtime-instance.js.map +1 -1
  260. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/placement.js.map +1 -1
  261. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/runtime-scene.js.map +1 -1
  262. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/types.js.map +1 -1
  263. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/index.js.map +1 -1
  264. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/result.d.ts.map +1 -1
  265. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/result.js +3 -0
  266. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/result.js.map +1 -1
  267. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/transport.js.map +1 -1
  268. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/types.d.ts +1 -0
  269. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/types.d.ts.map +1 -1
  270. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/types.js.map +1 -1
  271. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/workflow.d.ts +1 -0
  272. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/workflow.d.ts.map +1 -1
  273. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/workflow.js +7 -1
  274. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/workflow.js.map +1 -1
  275. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring/constants.js.map +1 -1
  276. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring/drift.js.map +1 -1
  277. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring/index.js.map +1 -1
  278. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring/runtime-transform-patch.js.map +1 -1
  279. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring/source.js.map +1 -1
  280. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-client/client.js.map +1 -1
  281. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-client/index.js.map +1 -1
  282. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-client/types.js.map +1 -1
  283. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/handler.js.map +1 -1
  284. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/index.js.map +1 -1
  285. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/payload.js.map +1 -1
  286. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/response.js.map +1 -1
  287. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/routes.js.map +1 -1
  288. package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/types.js.map +1 -1
  289. package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/adapter-dispatcher.js.map +1 -1
  290. package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/index.js.map +1 -1
  291. package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/payload.js.map +1 -1
  292. package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/project-asset-adapter.js.map +1 -1
  293. package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/protocol.js.map +1 -1
  294. package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/readers.js.map +1 -1
  295. package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/types.js.map +1 -1
  296. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/binding.js.map +1 -1
  297. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/fields.js.map +1 -1
  298. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/index.js.map +1 -1
  299. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/math.js.map +1 -1
  300. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/pan.js.map +1 -1
  301. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/panel-format.js.map +1 -1
  302. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/panel-state.js.map +1 -1
  303. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/panel-storage.js.map +1 -1
  304. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/panel-text.js.map +1 -1
  305. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/rig.js.map +1 -1
  306. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/save-patch.js.map +1 -1
  307. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/snapshot.js.map +1 -1
  308. package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/types.js.map +1 -1
  309. package/node_modules/@fps-games/editor-playable-sdk/dist/commands/index.js.map +1 -1
  310. package/node_modules/@fps-games/editor-playable-sdk/dist/commands/transform.js.map +1 -1
  311. package/node_modules/@fps-games/editor-playable-sdk/dist/commands/types.js.map +1 -1
  312. package/node_modules/@fps-games/editor-playable-sdk/dist/core-contracts/index.js.map +1 -1
  313. package/node_modules/@fps-games/editor-playable-sdk/dist/document/helpers.js.map +1 -1
  314. package/node_modules/@fps-games/editor-playable-sdk/dist/document/index.js.map +1 -1
  315. package/node_modules/@fps-games/editor-playable-sdk/dist/document/types.d.ts +4 -0
  316. package/node_modules/@fps-games/editor-playable-sdk/dist/document/types.d.ts.map +1 -1
  317. package/node_modules/@fps-games/editor-playable-sdk/dist/document/types.js.map +1 -1
  318. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/index.js.map +1 -1
  319. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/resolver.js.map +1 -1
  320. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/schema.js.map +1 -1
  321. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/types.js.map +1 -1
  322. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/validators.js.map +1 -1
  323. package/node_modules/@fps-games/editor-playable-sdk/dist/index.d.ts +1 -0
  324. package/node_modules/@fps-games/editor-playable-sdk/dist/index.d.ts.map +1 -1
  325. package/node_modules/@fps-games/editor-playable-sdk/dist/index.js +1 -0
  326. package/node_modules/@fps-games/editor-playable-sdk/dist/index.js.map +1 -1
  327. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/camera-section.js.map +1 -1
  328. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/document-property.js.map +1 -1
  329. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/document-sections.js.map +1 -1
  330. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/format.js.map +1 -1
  331. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/index.js.map +1 -1
  332. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/light-fields.js.map +1 -1
  333. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/light-sections.js.map +1 -1
  334. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/marker-section.js.map +1 -1
  335. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/object-assembly.js.map +1 -1
  336. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/readonly.js.map +1 -1
  337. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/runtime-sections.js.map +1 -1
  338. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/runtime-summary.js.map +1 -1
  339. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/runtime.js.map +1 -1
  340. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/safe-value.js.map +1 -1
  341. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/types.js.map +1 -1
  342. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/validation.js.map +1 -1
  343. package/node_modules/@fps-games/editor-playable-sdk/dist/internal/local-harness.js.map +1 -1
  344. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/binding.js.map +1 -1
  345. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/fields.js.map +1 -1
  346. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/index.js.map +1 -1
  347. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/math.js.map +1 -1
  348. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/save-patch.js.map +1 -1
  349. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/snapshot.js.map +1 -1
  350. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/storage.js.map +1 -1
  351. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/text.js.map +1 -1
  352. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/types.js.map +1 -1
  353. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-preview/index.js.map +1 -1
  354. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-preview/math.js.map +1 -1
  355. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-preview/profile.js.map +1 -1
  356. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-preview/types.js.map +1 -1
  357. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/agent-descriptions.js.map +1 -1
  358. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play-types.js.map +1 -1
  359. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.d.ts +2 -0
  360. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.d.ts.map +1 -1
  361. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.js +5 -0
  362. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.js.map +1 -1
  363. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/host-controller.js.map +1 -1
  364. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.d.ts +2 -2
  365. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.d.ts.map +1 -1
  366. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.js.map +1 -1
  367. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/lifecycle.d.ts.map +1 -1
  368. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/lifecycle.js +4 -1
  369. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/lifecycle.js.map +1 -1
  370. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/loading-overlay.d.ts.map +1 -1
  371. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/loading-overlay.js +54 -2
  372. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/loading-overlay.js.map +1 -1
  373. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/project-asset-commands.d.ts +18 -0
  374. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/project-asset-commands.d.ts.map +1 -1
  375. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/project-asset-commands.js +60 -1
  376. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/project-asset-commands.js.map +1 -1
  377. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/timing.js.map +1 -1
  378. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/types.d.ts +2 -0
  379. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/types.d.ts.map +1 -1
  380. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/types.js.map +1 -1
  381. package/node_modules/@fps-games/editor-playable-sdk/dist/marker-scene/facade.js.map +1 -1
  382. package/node_modules/@fps-games/editor-playable-sdk/dist/marker-scene/game-objects.js.map +1 -1
  383. package/node_modules/@fps-games/editor-playable-sdk/dist/marker-scene/geometry.js.map +1 -1
  384. package/node_modules/@fps-games/editor-playable-sdk/dist/marker-scene/index.js.map +1 -1
  385. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/asset-fields.js.map +1 -1
  386. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/binding.js.map +1 -1
  387. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/default-assets.js.map +1 -1
  388. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/document-assets.d.ts.map +1 -1
  389. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/document-assets.js +28 -2
  390. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/document-assets.js.map +1 -1
  391. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/duplicate.js.map +1 -1
  392. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/index.js.map +1 -1
  393. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/inspector.js.map +1 -1
  394. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/paths.js.map +1 -1
  395. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/preview.js.map +1 -1
  396. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/profile.js.map +1 -1
  397. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/reimport.d.ts.map +1 -1
  398. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/reimport.js +26 -9
  399. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/reimport.js.map +1 -1
  400. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/resolver.js.map +1 -1
  401. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/scene-inspector.js.map +1 -1
  402. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/slot-inspector.d.ts.map +1 -1
  403. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/slot-inspector.js +0 -3
  404. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/slot-inspector.js.map +1 -1
  405. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/text.js.map +1 -1
  406. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/types.d.ts +8 -1
  407. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/types.d.ts.map +1 -1
  408. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/types.js.map +1 -1
  409. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/field-patch.js.map +1 -1
  410. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/index.js.map +1 -1
  411. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/json-field.js.map +1 -1
  412. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/reducer.js.map +1 -1
  413. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/rendering-alpha-index.js.map +1 -1
  414. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/transform.js.map +1 -1
  415. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/types.js.map +1 -1
  416. package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/aliases.d.ts +1 -1
  417. package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/aliases.d.ts.map +1 -1
  418. package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/aliases.js +18 -1
  419. package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/aliases.js.map +1 -1
  420. package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/index.js.map +1 -1
  421. package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/types.d.ts +2 -0
  422. package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/types.d.ts.map +1 -1
  423. package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/types.js.map +1 -1
  424. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/action-patches.js.map +1 -1
  425. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/assets.js.map +1 -1
  426. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/index.js.map +1 -1
  427. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/material-override-inspector.js.map +1 -1
  428. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/projection.js.map +1 -1
  429. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/shadow-inspector.js.map +1 -1
  430. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/source-structure-inspector.js.map +1 -1
  431. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/stage-inspector.js.map +1 -1
  432. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/structure.js.map +1 -1
  433. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/types.js.map +1 -1
  434. package/node_modules/@fps-games/editor-playable-sdk/dist/product/asset-manager.js.map +1 -1
  435. package/node_modules/@fps-games/editor-playable-sdk/dist/product/ground-decal-scene-feature.js.map +1 -1
  436. package/node_modules/@fps-games/editor-playable-sdk/dist/product/ground-decal.js.map +1 -1
  437. package/node_modules/@fps-games/editor-playable-sdk/dist/product/index.js.map +1 -1
  438. package/node_modules/@fps-games/editor-playable-sdk/dist/product/project-host-services.d.ts +1 -0
  439. package/node_modules/@fps-games/editor-playable-sdk/dist/product/project-host-services.d.ts.map +1 -1
  440. package/node_modules/@fps-games/editor-playable-sdk/dist/product/project-host-services.js +3 -1
  441. package/node_modules/@fps-games/editor-playable-sdk/dist/product/project-host-services.js.map +1 -1
  442. package/node_modules/@fps-games/editor-playable-sdk/dist/product/scene-session.js.map +1 -1
  443. package/node_modules/@fps-games/editor-playable-sdk/dist/product/scene-source.d.ts +3 -3
  444. package/node_modules/@fps-games/editor-playable-sdk/dist/product/scene-source.d.ts.map +1 -1
  445. package/node_modules/@fps-games/editor-playable-sdk/dist/product/scene-source.js +10 -1
  446. package/node_modules/@fps-games/editor-playable-sdk/dist/product/scene-source.js.map +1 -1
  447. package/node_modules/@fps-games/editor-playable-sdk/dist/product/standard-asset-actions.js.map +1 -1
  448. package/node_modules/@fps-games/editor-playable-sdk/dist/product/standard-scene-assembly.js.map +1 -1
  449. package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/draft.js.map +1 -1
  450. package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/index.js.map +1 -1
  451. package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/panel.js.map +1 -1
  452. package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/route.js.map +1 -1
  453. package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/types.js.map +1 -1
  454. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/assets.js.map +1 -1
  455. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/import-plan.js.map +1 -1
  456. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/index.js.map +1 -1
  457. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/nodes.js.map +1 -1
  458. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/types.js.map +1 -1
  459. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/compiler.d.ts +1 -1
  460. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/compiler.js +82 -6
  461. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/compiler.js.map +1 -1
  462. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/index.js.map +1 -1
  463. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/types.d.ts +11 -3
  464. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/types.d.ts.map +1 -1
  465. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/types.js.map +1 -1
  466. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/validation.d.ts +1 -0
  467. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/validation.d.ts.map +1 -1
  468. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/validation.js +46 -3
  469. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/validation.js.map +1 -1
  470. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/artifacts.js.map +1 -1
  471. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/client.d.ts.map +1 -1
  472. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/client.js +4 -0
  473. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/client.js.map +1 -1
  474. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/companion-configs.js.map +1 -1
  475. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/driver.js.map +1 -1
  476. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/index.js.map +1 -1
  477. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/protocol.js.map +1 -1
  478. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/types.d.ts +3 -2
  479. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/types.d.ts.map +1 -1
  480. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/types.js.map +1 -1
  481. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/validation.js.map +1 -1
  482. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/descriptors.js.map +1 -1
  483. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/index.js.map +1 -1
  484. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/inspector.js.map +1 -1
  485. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/object.js.map +1 -1
  486. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/patch.js.map +1 -1
  487. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/types.js.map +1 -1
  488. package/node_modules/@fps-games/editor-playable-sdk/dist/session/classification.js.map +1 -1
  489. package/node_modules/@fps-games/editor-playable-sdk/dist/session/hierarchy-facade.js.map +1 -1
  490. package/node_modules/@fps-games/editor-playable-sdk/dist/session/hierarchy.js.map +1 -1
  491. package/node_modules/@fps-games/editor-playable-sdk/dist/session/identity.js.map +1 -1
  492. package/node_modules/@fps-games/editor-playable-sdk/dist/session/index.js.map +1 -1
  493. package/node_modules/@fps-games/editor-playable-sdk/dist/session/object-command-facade.js.map +1 -1
  494. package/node_modules/@fps-games/editor-playable-sdk/dist/session/patches.js.map +1 -1
  495. package/node_modules/@fps-games/editor-playable-sdk/dist/session/property-patches.js.map +1 -1
  496. package/node_modules/@fps-games/editor-playable-sdk/dist/session/reducer-core.js.map +1 -1
  497. package/node_modules/@fps-games/editor-playable-sdk/dist/session/system-defaults.js.map +1 -1
  498. package/node_modules/@fps-games/editor-playable-sdk/dist/session/transform.js.map +1 -1
  499. package/node_modules/@fps-games/editor-playable-sdk/dist/session/types.js.map +1 -1
  500. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/index.js.map +1 -1
  501. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/resolver.js.map +1 -1
  502. package/node_modules/@fps-games/editor-playable-sdk/dist/shared/http.js.map +1 -1
  503. package/node_modules/@fps-games/editor-playable-sdk/dist/shared/json.d.ts +1 -0
  504. package/node_modules/@fps-games/editor-playable-sdk/dist/shared/json.d.ts.map +1 -1
  505. package/node_modules/@fps-games/editor-playable-sdk/dist/shared/json.js +25 -0
  506. package/node_modules/@fps-games/editor-playable-sdk/dist/shared/json.js.map +1 -1
  507. package/node_modules/@fps-games/editor-playable-sdk/dist/static-shadows/artifact.js.map +1 -1
  508. package/node_modules/@fps-games/editor-playable-sdk/dist/static-shadows/index.js.map +1 -1
  509. package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/host.js.map +1 -1
  510. package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/index.js.map +1 -1
  511. package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/inspectors.js.map +1 -1
  512. package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/report.js.map +1 -1
  513. package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/types.js.map +1 -1
  514. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/asset-authoring.js.map +1 -1
  515. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/authoring-http.d.ts +1 -0
  516. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/authoring-http.d.ts.map +1 -1
  517. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/authoring-http.js +1 -0
  518. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/authoring-http.js.map +1 -1
  519. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/build-info-core.js.map +1 -1
  520. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/build-info-node.js.map +1 -1
  521. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-scene-workflow.d.ts +6 -5
  522. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-scene-workflow.d.ts.map +1 -1
  523. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-scene-workflow.js +37 -20
  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 +10 -17
  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 +5 -1
  600. package/node_modules/@fps-games/playable-runtime/dist/compiled-scene-data.js.map +1 -1
  601. package/node_modules/@fps-games/playable-runtime/dist/index.js.map +1 -1
  602. package/node_modules/@fps-games/playable-runtime/dist/runtime-data.js.map +1 -1
  603. package/node_modules/@fps-games/playable-runtime/dist/runtime.js.map +1 -1
  604. package/node_modules/@fps-games/playable-runtime/dist/standard-plugins.js.map +1 -1
  605. package/node_modules/@fps-games/playable-runtime/dist/tokens.js.map +1 -1
  606. package/node_modules/@fps-games/playable-runtime/dist/types.js.map +1 -1
  607. package/node_modules/@fps-games/playable-runtime/package.json +12 -12
  608. package/node_modules/@fps-games/playable-runtime-data/dist/index.js.map +1 -1
  609. package/node_modules/@fps-games/playable-runtime-data/package.json +4 -4
  610. package/node_modules/@fps-games/playable-scene/dist/index.js.map +1 -1
  611. package/node_modules/@fps-games/playable-scene/dist/transform-math.js.map +1 -1
  612. package/node_modules/@fps-games/playable-scene/package.json +2 -2
  613. package/node_modules/@fps-games/plugin-api/dist/index.js.map +1 -1
  614. package/node_modules/@fps-games/plugin-api/package.json +1 -1
  615. package/node_modules/@fps-games/plugin-assets/dist/reference.js.map +1 -1
  616. package/node_modules/@fps-games/plugin-assets/dist/runtime.js.map +1 -1
  617. package/node_modules/@fps-games/plugin-assets/dist/version.d.ts +1 -1
  618. package/node_modules/@fps-games/plugin-assets/dist/version.js +1 -1
  619. package/node_modules/@fps-games/plugin-assets/dist/version.js.map +1 -1
  620. package/node_modules/@fps-games/plugin-assets/package.json +5 -5
  621. package/node_modules/@fps-games/plugin-host/dist/index.js.map +1 -1
  622. package/node_modules/@fps-games/plugin-host/package.json +2 -2
  623. package/node_modules/@fps-games/plugin-markers/dist/reference.js.map +1 -1
  624. package/node_modules/@fps-games/plugin-markers/dist/runtime.js.map +1 -1
  625. package/node_modules/@fps-games/plugin-markers/dist/version.d.ts +1 -1
  626. package/node_modules/@fps-games/plugin-markers/dist/version.js +1 -1
  627. package/node_modules/@fps-games/plugin-markers/dist/version.js.map +1 -1
  628. package/node_modules/@fps-games/plugin-markers/package.json +5 -5
  629. package/node_modules/@fps-games/plugin-materials/dist/reference.js.map +1 -1
  630. package/node_modules/@fps-games/plugin-materials/dist/runtime.js.map +1 -1
  631. package/node_modules/@fps-games/plugin-materials/dist/version.d.ts +1 -1
  632. package/node_modules/@fps-games/plugin-materials/dist/version.js +1 -1
  633. package/node_modules/@fps-games/plugin-materials/dist/version.js.map +1 -1
  634. package/node_modules/@fps-games/plugin-materials/package.json +5 -5
  635. package/node_modules/@fps-games/plugin-rendering/dist/reference.js.map +1 -1
  636. package/node_modules/@fps-games/plugin-rendering/dist/runtime.js.map +1 -1
  637. package/node_modules/@fps-games/plugin-rendering/dist/version.d.ts +1 -1
  638. package/node_modules/@fps-games/plugin-rendering/dist/version.js +1 -1
  639. package/node_modules/@fps-games/plugin-rendering/dist/version.js.map +1 -1
  640. package/node_modules/@fps-games/plugin-rendering/package.json +5 -5
  641. package/node_modules/@fps-games/plugin-scene/dist/reference.js.map +1 -1
  642. package/node_modules/@fps-games/plugin-scene/dist/runtime.js.map +1 -1
  643. package/node_modules/@fps-games/plugin-scene/dist/version.d.ts +1 -1
  644. package/node_modules/@fps-games/plugin-scene/dist/version.js +1 -1
  645. package/node_modules/@fps-games/plugin-scene/dist/version.js.map +1 -1
  646. package/node_modules/@fps-games/plugin-scene/package.json +5 -5
  647. package/node_modules/@fps-games/plugin-shadows/dist/reference.js.map +1 -1
  648. package/node_modules/@fps-games/plugin-shadows/dist/runtime.js.map +1 -1
  649. package/node_modules/@fps-games/plugin-shadows/dist/version.d.ts +1 -1
  650. package/node_modules/@fps-games/plugin-shadows/dist/version.js +1 -1
  651. package/node_modules/@fps-games/plugin-shadows/dist/version.js.map +1 -1
  652. package/node_modules/@fps-games/plugin-shadows/package.json +7 -7
  653. package/package.json +27 -19
@@ -1 +1 @@
1
- {"version":3,"file":"editor-plugin-hierarchy-command.js","sourceRoot":"","sources":["../src/editor-plugin-hierarchy-command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editor-plugin-hierarchy-command.js","sourceRoot":"","sources":["../src/editor-plugin-hierarchy-command.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n registerLocalEditorBrowserHierarchyContextAction,\n resolveLocalEditorBrowserHierarchyContextActions,\n type LocalEditorBrowserHierarchyContextActionRegistration,\n} from '@fps-games/editor-browser';\nimport {\n registerFpsEditorCommand,\n type FpsEditorCommandRegistration,\n type FpsEditorPluginHost,\n} from '@fps-games/editor-core/plugin-host';\nimport type { FpsPluginContext } from '@fps-games/plugin-api';\nimport type { FpsCommand } from '@fps-games/plugin-api';\nimport type { EditorAgentBridgeJsonObject } from '@fps-games/editor-protocol';\nimport type {\n LocalEditorHarnessHierarchyContextActionRegistration,\n LocalEditorHarnessPatchResult,\n} from './local-editor-harness.js';\n\nexport interface FpsEditorHierarchyCommandInput {\n readonly contextNodeId: string | null;\n readonly targetIds: readonly string[];\n readonly activeId: string | null;\n readonly payload?: EditorAgentBridgeJsonObject;\n}\n\nexport type FpsEditorHierarchyCommandResult<TPatch = unknown> =\n | boolean\n | void\n | LocalEditorHarnessPatchResult<TPatch>;\n\nexport interface FpsEditorHierarchyCommandRegistration<TDocument = unknown, TPatch = unknown> {\n readonly command: FpsEditorCommandRegistration<\n FpsEditorHierarchyCommandInput,\n FpsEditorHierarchyCommandResult<TPatch>\n >;\n readonly action: Omit<LocalEditorBrowserHierarchyContextActionRegistration<TDocument>, 'commandId'>;\n}\n\nexport function registerFpsEditorHierarchyCommand<TDocument, TPatch>(\n context: FpsPluginContext,\n registration: FpsEditorHierarchyCommandRegistration<TDocument, TPatch>,\n handler: (\n input: FpsEditorHierarchyCommandInput,\n ) => FpsEditorHierarchyCommandResult<TPatch> | Promise<FpsEditorHierarchyCommandResult<TPatch>>,\n): void {\n if (registration.action.id === registration.command.command.id) {\n throw new Error('Editor Hierarchy action id must differ from its command id.');\n }\n registerFpsEditorCommand(context, registration.command, handler);\n registerLocalEditorBrowserHierarchyContextAction(context, {\n ...registration.action,\n commandId: registration.command.command.id,\n });\n}\n\nexport function createLocalEditorHarnessPluginHierarchyContextActions<\n TDocument,\n TPatch,\n>(\n pluginHost: FpsEditorPluginHost | undefined,\n): readonly LocalEditorHarnessHierarchyContextActionRegistration<TDocument, TPatch>[] {\n if (!pluginHost) return [];\n if (pluginHost.state !== 'started' || pluginHost.transitioning) {\n throw new Error('Plugin Hierarchy actions require an idle started Editor Plugin Host.');\n }\n const commands = new Map(pluginHost.listCommands().map(command => [command.command.id, command.command]));\n return resolveLocalEditorBrowserHierarchyContextActions<TDocument>(pluginHost.contributions).map(action => {\n const commandId = action.commandId;\n if (!commandId) throw new Error(`Plugin Hierarchy action has no command: ${action.id}`);\n const command = commands.get(commandId) as FpsCommand<\n FpsEditorHierarchyCommandInput,\n FpsEditorHierarchyCommandResult<TPatch>\n > | undefined;\n if (!command) throw new Error(`Plugin Hierarchy action references an unknown command: ${action.id} -> ${commandId}`);\n return {\n id: action.id,\n label: action.label,\n shortcut: action.shortcut,\n danger: action.danger,\n placement: action.placement,\n separatorBefore: action.separatorBefore,\n children: action.children\n ? context => {\n const children = typeof action.children === 'function'\n ? action.children(context.browserContext)\n : action.children ?? [];\n return children.map(child => ({\n ...child,\n disabled: child.disabled ? () => child.disabled!(context.browserContext) : undefined,\n payload: child.payload ? () => child.payload!(context.browserContext) : undefined,\n }));\n }\n : undefined,\n visible: action.visible ? context => action.visible!(context.browserContext) : undefined,\n disabled: action.disabled ? context => action.disabled!(context.browserContext) : undefined,\n run: context => pluginHost.executeCommand(\n command,\n Object.freeze({\n contextNodeId: context.contextNodeId,\n targetIds: Object.freeze([...context.targetIds]),\n activeId: context.activeId,\n ...(context.payload ? { payload: cloneHierarchyCommandPayload(context.payload) } : {}),\n }),\n ).then(result => assertHierarchyCommandResult<TPatch>(result, commandId)),\n };\n });\n}\n\nfunction cloneHierarchyCommandPayload(value: Record<string, unknown>): EditorAgentBridgeJsonObject {\n return cloneHierarchyJsonValue(value, '$payload', new WeakSet()) as EditorAgentBridgeJsonObject;\n}\n\nfunction cloneHierarchyJsonValue(value: unknown, path: string, ancestors: WeakSet<object>): unknown {\n if (value === null || typeof value === 'string' || typeof value === 'boolean') return value;\n if (typeof value === 'number' && Number.isFinite(value)) return value;\n if (!value || typeof value !== 'object') {\n throw new Error(`Plugin Hierarchy payload must contain JSON values: ${path}`);\n }\n if (ancestors.has(value)) throw new Error(`Plugin Hierarchy payload must not contain cycles: ${path}`);\n const prototype = Object.getPrototypeOf(value);\n if (prototype !== Object.prototype && prototype !== null && !Array.isArray(value)) {\n throw new Error(`Plugin Hierarchy payload must contain plain objects: ${path}`);\n }\n ancestors.add(value);\n try {\n if (Array.isArray(value)) {\n const result: unknown[] = [];\n for (let index = 0; index < value.length; index += 1) {\n const descriptor = Object.getOwnPropertyDescriptor(value, String(index));\n if (!descriptor?.enumerable || !('value' in descriptor)) {\n throw new Error(`Plugin Hierarchy payload arrays must contain enumerable data fields: ${path}[${index}]`);\n }\n result.push(cloneHierarchyJsonValue(descriptor.value, `${path}[${index}]`, ancestors));\n }\n for (const key of Reflect.ownKeys(value)) {\n if (key === 'length') continue;\n if (typeof key !== 'string' || !/^(0|[1-9][0-9]*)$/.test(key) || Number(key) >= value.length) {\n throw new Error(`Plugin Hierarchy payload arrays contain unsupported properties: ${path}`);\n }\n }\n return Object.freeze(result);\n }\n const result: Record<string, unknown> = {};\n for (const key of Reflect.ownKeys(value)) {\n if (typeof key !== 'string' || key === '__proto__') {\n throw new Error(`Plugin Hierarchy payload contains an unsupported key: ${path}`);\n }\n const descriptor = Object.getOwnPropertyDescriptor(value, key);\n if (!descriptor?.enumerable || !('value' in descriptor)) {\n throw new Error(`Plugin Hierarchy payload must contain enumerable data fields: ${path}.${key}`);\n }\n result[key] = cloneHierarchyJsonValue(descriptor.value, `${path}.${key}`, ancestors);\n }\n return Object.freeze(result);\n } finally {\n ancestors.delete(value);\n }\n}\n\nfunction assertHierarchyCommandResult<TPatch>(\n value: unknown,\n commandId: string,\n): FpsEditorHierarchyCommandResult<TPatch> {\n if (value === undefined || typeof value === 'boolean') return value;\n if (value && typeof value === 'object' && Object.prototype.hasOwnProperty.call(value, 'patch')) {\n return value as LocalEditorHarnessPatchResult<TPatch>;\n }\n throw new Error(`Plugin Hierarchy command returned an invalid action result: ${commandId}`);\n}\n"]}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,kCAAkC,EAClC,iCAAiC,EACjC,oCAAoC,GACrC,MAAM,2BAA2B,CAAC;AAkBnC,OAAO,EAAE,4BAA4B,EAAE,MAAM,kCAAkC,CAAC;AAChF,OAAO,EACL,8BAA8B,EAC9B,8BAA8B,EAC9B,2BAA2B,EAC3B,6BAA6B,EAC7B,+BAA+B,EAC/B,0BAA0B,EAC1B,0BAA0B,EAC1B,uBAAuB,EACvB,uBAAuB,EACvB,4BAA4B,GAC7B,MAAM,+BAA+B,CAAC;AAgCvC,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EACrB,0BAA0B,EAC1B,mCAAmC,EACnC,uCAAuC,EACvC,iCAAiC,GAClC,MAAM,uBAAuB,CAAC;AAkB/B,OAAO,EACL,mCAAmC,EACnC,wCAAwC,GACzC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,qBAAqB,GACtB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,mBAAmB,EACnB,WAAW,GACZ,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,oBAAoB,EACpB,YAAY,GACb,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,uBAAuB,EACvB,eAAe,GAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,qBAAqB,EACrB,aAAa,GACd,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,uBAAuB,EACvB,eAAe,GAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,qBAAqB,EACrB,aAAa,GACd,MAAM,2BAA2B,CAAC;AAInC,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,8CAA8C,EAC9C,wBAAwB,EACxB,qCAAqC,EACrC,qCAAqC,GACtC,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,0CAA0C,GAC3C,MAAM,2BAA2B,CAAC;AAwBnC,OAAO,EACL,kCAAkC,EAClC,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AAKpC,OAAO,EACL,iCAAiC,GAClC,MAAM,sCAAsC,CAAC;AAO9C,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,kCAAkC,EAClC,iCAAiC,EACjC,oCAAoC,GACrC,MAAM,2BAA2B,CAAC;AAkBnC,OAAO,EAAE,4BAA4B,EAAE,MAAM,kCAAkC,CAAC;AAChF,OAAO,EACL,8BAA8B,EAC9B,8BAA8B,EAC9B,2BAA2B,EAC3B,6BAA6B,EAC7B,+BAA+B,EAC/B,0BAA0B,EAC1B,0BAA0B,EAC1B,uBAAuB,EACvB,uBAAuB,EACvB,4BAA4B,GAC7B,MAAM,+BAA+B,CAAC;AAgCvC,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,oBAAoB,EACpB,oBAAoB,EACpB,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EACrB,0BAA0B,EAC1B,mCAAmC,EACnC,uCAAuC,EACvC,iCAAiC,GAClC,MAAM,uBAAuB,CAAC;AAkB/B,OAAO,EACL,mCAAmC,EACnC,wCAAwC,GACzC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,qBAAqB,GACtB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,mBAAmB,EACnB,WAAW,GACZ,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,oBAAoB,EACpB,YAAY,GACb,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,uBAAuB,EACvB,eAAe,GAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,qBAAqB,EACrB,aAAa,GACd,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,uBAAuB,EACvB,eAAe,GAChB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,qBAAqB,EACrB,aAAa,GACd,MAAM,2BAA2B,CAAC;AAInC,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,8CAA8C,EAC9C,wBAAwB,EACxB,qCAAqC,EACrC,qCAAqC,GACtC,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,0CAA0C,GAC3C,MAAM,2BAA2B,CAAC;AAwBnC,OAAO,EACL,kCAAkC,EAClC,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AAKpC,OAAO,EACL,iCAAiC,GAClC,MAAM,sCAAsC,CAAC;AAO9C,cAAc,sBAAsB,CAAC","sourcesContent":["export type {\n LocalEditorThemeController,\n LocalEditorThemeName,\n} from '@fps-games/editor-browser';\nexport {\n mountEditorRuntimeCameraDebugPanel,\n mountEditorRuntimeDebugPanelShell,\n mountEditorRuntimeLightingDebugPanel,\n} from '@fps-games/editor-browser';\nexport type {\n EditorRuntimeCameraDebugPanel,\n EditorRuntimeCameraDebugPanelOptions,\n EditorRuntimeCameraDebugPanInput,\n EditorRuntimeCameraDebugScreenPoint,\n EditorRuntimeCameraDebugViewportRect,\n EditorRuntimeDebugPanelLanguage,\n EditorRuntimeDebugPanelMode,\n EditorRuntimeDebugPanelPlacement,\n EditorRuntimeDebugPanelShell,\n EditorRuntimeDebugPanelShellOptions,\n EditorRuntimeDebugPanelStatusOptions,\n EditorRuntimeLightingDebugPanel,\n EditorRuntimeLightingDebugPanelOptions,\n} from '@fps-games/editor-browser';\nexport type { BabylonRuntimeGlobal } from '@fps-games/editor-babylon';\nexport type { DocumentAdapter } from '@fps-games/editor-core/document-adapter';\nexport { FPS_EDITOR_LIFECYCLE_CHANGED } from '@fps-games/editor-core/lifecycle';\nexport {\n FPS_EDITOR_ACTIVE_TOOL_CHANGED,\n FPS_EDITOR_DIAGNOSTIC_REPORTED,\n FPS_EDITOR_DOCUMENT_CHANGED,\n FPS_EDITOR_DOCUMENT_COMMITTED,\n FPS_EDITOR_DOCUMENT_SAVE_FAILED,\n FPS_EDITOR_HISTORY_CHANGED,\n FPS_EDITOR_PREVIEW_CHANGED,\n FPS_EDITOR_SCOPE_CLOSED,\n FPS_EDITOR_SCOPE_OPENED,\n FPS_EDITOR_SELECTION_CHANGED,\n} from '@fps-games/editor-core/events';\nexport type {\n FpsEditorActiveToolChangedEvent,\n FpsEditorDiagnosticReportedEvent,\n FpsEditorDocumentChangedEvent,\n FpsEditorDocumentCommittedEvent,\n FpsEditorDocumentSaveFailedEvent,\n FpsEditorEventContext,\n FpsEditorEventPublisher,\n FpsEditorHistoryChangedEvent,\n FpsEditorPreviewChangedEvent,\n FpsEditorScopeEvent,\n FpsEditorSelectionChangedEvent,\n} from '@fps-games/editor-core/events';\nexport type {\n FpsEditorApplicationLifecycleState,\n FpsEditorDocumentLifecycleState,\n FpsEditorLifecycleChangedEvent,\n FpsEditorLifecycleFailureEvent,\n FpsEditorLifecycleListener,\n FpsEditorLifecycleParticipant,\n FpsEditorLifecycleScopeSnapshot,\n FpsEditorLifecycleService,\n FpsEditorLifecycleSnapshot,\n FpsEditorLifecycleTransition,\n FpsEditorLifecycleTransitionContext,\n FpsEditorLifecycleTransitionEvent,\n FpsEditorLifecycleTransitionType,\n FpsEditorModeLifecycleState,\n FpsEditorPreviewLifecycleState,\n FpsEditorProjectLifecycleState,\n} from '@fps-games/editor-core/lifecycle';\nexport {\n defineFpsCommand,\n defineFpsEvent,\n defineFpsPluginEvent,\n defineFpsPluginEntry,\n defineFpsPluginManifest,\n defineFpsPluginReference,\n defineFpsServiceToken,\n getFpsPluginEventNamespace,\n resolveFpsPluginEnvironmentProvides,\n resolveFpsPluginEnvironmentRequirements,\n resolveFpsPluginEnvironmentScopes,\n} from '@fps-games/plugin-api';\nexport type {\n FpsPluginEnvironmentContract,\n FpsCommand,\n FpsDiagnostic,\n FpsDisposer,\n FpsEvent,\n FpsEventEnvelope,\n FpsPluginContext,\n FpsPluginEntry,\n FpsPluginEnvironment,\n FpsPluginEnvironmentModule,\n FpsPluginEnvironmentModuleEntry,\n FpsPluginManifest,\n FpsPluginReference,\n FpsPluginScope,\n FpsServiceToken,\n} from '@fps-games/plugin-api';\nexport {\n createFpsPluginEnvironmentLifecycle,\n createFpsPluginHostFromEnvironmentModule,\n} from '@fps-games/plugin-host';\nexport {\n babylonRendererPlugin,\n} from '@fps-games/babylon-renderer/config';\nexport {\n FPS_SCENE_PLUGIN_ID,\n scenePlugin,\n} from '@fps-games/plugin-scene';\nexport {\n FPS_ASSETS_PLUGIN_ID,\n assetsPlugin,\n} from '@fps-games/plugin-assets';\nexport {\n FPS_MATERIALS_PLUGIN_ID,\n materialsPlugin,\n} from '@fps-games/plugin-materials';\nexport {\n FPS_MARKERS_PLUGIN_ID,\n markersPlugin,\n} from '@fps-games/plugin-markers';\nexport {\n FPS_RENDERING_PLUGIN_ID,\n renderingPlugin,\n} from '@fps-games/plugin-rendering';\nexport {\n FPS_SHADOWS_PLUGIN_ID,\n shadowsPlugin,\n} from '@fps-games/plugin-shadows';\nexport type {\n FpsBabylonRendererPluginConfig,\n} from '@fps-games/babylon-renderer/config';\nexport {\n FPS_EDITOR_CONTRIBUTIONS,\n createFpsEditorPluginHost,\n createFpsEditorPluginHostFromEnvironmentModule,\n registerFpsEditorCommand,\n registerFpsEditorLifecycleParticipant,\n resolveFpsEditorLifecycleParticipants,\n} from '@fps-games/editor-core/plugin-host';\nexport {\n registerLocalEditorBrowserInspectorControl,\n} from '@fps-games/editor-browser';\nexport type {\n LocalEditorBrowserInspectorControlRegistration,\n LocalEditorBrowserInspectorControlRenderContext,\n LocalEditorBrowserInspectorControlRenderer,\n} from '@fps-games/editor-browser';\nexport type {\n FpsEditorPluginHost,\n FpsEditorPluginHostOptions,\n FpsEditorPluginEnvironmentModuleHostOptions,\n FpsEditorCommandRegistration,\n} from '@fps-games/editor-core/plugin-host';\nexport type {\n FpsPluginHostInspection,\n FpsPluginHostState,\n FpsPluginInspectionDiagnostic,\n FpsPluginInspection,\n FpsPluginLifecycleState,\n} from '@fps-games/plugin-host';\nexport type {\n EditorRuntime,\n EditorRuntimeChange,\n PersistentBinding,\n} from '@fps-games/editor-protocol';\nexport {\n EDITOR_AGENT_BRIDGE_SCHEMA_VERSION,\n EDITOR_COMMAND_NAME,\n EDITOR_EVENT_NAME,\n EDITOR_POST_MESSAGE,\n} from '@fps-games/editor-protocol';\nexport type {\n EditorAgentBridgeCapabilityManifest,\n EditorAgentBridgeJsonObject,\n} from '@fps-games/editor-protocol';\nexport {\n registerFpsEditorHierarchyCommand,\n} from './editor-plugin-hierarchy-command.js';\nexport type {\n FpsEditorHierarchyCommandInput,\n FpsEditorHierarchyCommandRegistration,\n FpsEditorHierarchyCommandResult,\n} from './editor-plugin-hierarchy-command.js';\n\nexport * from './authoring-apply.js';\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"local-editor-lifecycle-operations.js","sourceRoot":"","sources":["../../src/internal/local-editor-lifecycle-operations.ts"],"names":[],"mappings":"AA4BA,MAAM,mBAAmB,GAAG,IAAI,OAAO,EAAiD,CAAC;AAEzF,MAAM,UAAU,6CAA6C,CAC3D,OAAe,EACf,UAAiD;IAEjD,mBAAmB,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,wCAAwC,CACtD,OAAe;IAEf,MAAM,UAAU,GAAG,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACpD,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACvF,OAAO,UAAU,CAAC;AACpB,CAAC"}
1
+ {"version":3,"file":"local-editor-lifecycle-operations.js","sourceRoot":"","sources":["../../src/internal/local-editor-lifecycle-operations.ts"],"names":[],"mappings":"AA4BA,MAAM,mBAAmB,GAAG,IAAI,OAAO,EAAiD,CAAC;AAEzF,MAAM,UAAU,6CAA6C,CAC3D,OAAe,EACf,UAAiD;IAEjD,mBAAmB,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,wCAAwC,CACtD,OAAe;IAEf,MAAM,UAAU,GAAG,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACpD,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACvF,OAAO,UAAU,CAAC;AACpB,CAAC","sourcesContent":["import type {\n PlayableLocalEditorLifecycleController,\n PlayableLocalEditorLifecycleOperations,\n} from '@fps-games/editor-playable-sdk/internal/local-harness';\n\nexport type LocalEditorLifecycleControllerBinding = Pick<\n PlayableLocalEditorLifecycleController,\n | 'enterEditor'\n | 'saveScene'\n | 'saveAndRunGame'\n | 'discardAndRunGame'\n | 'prepareSaveAndRunGame'\n | 'prepareDiscardAndRunGame'\n> & Partial<Pick<\n PlayableLocalEditorLifecycleController,\n | 'lifecycle'\n | 'synchronizeDocumentState'\n | 'registerParticipant'\n | 'openScope'\n | 'addScopeResource'\n | 'closeScope'\n>>;\n\nexport interface LocalEditorHarnessLifecycleOperations\n extends PlayableLocalEditorLifecycleOperations {\n setLifecycleController(controller: LocalEditorLifecycleControllerBinding): void;\n}\n\nconst operationsByHarness = new WeakMap<object, LocalEditorHarnessLifecycleOperations>();\n\nexport function registerLocalEditorHarnessLifecycleOperations(\n harness: object,\n operations: LocalEditorHarnessLifecycleOperations,\n): void {\n operationsByHarness.set(harness, operations);\n}\n\nexport function getLocalEditorHarnessLifecycleOperations(\n harness: object,\n): LocalEditorHarnessLifecycleOperations {\n const operations = operationsByHarness.get(harness);\n if (!operations) throw new Error('Local editor lifecycle operations are unavailable.');\n return operations;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"local-editor-agent-actions.js","sourceRoot":"","sources":["../src/local-editor-agent-actions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local-editor-agent-actions.js","sourceRoot":"","sources":["../src/local-editor-agent-actions.ts"],"names":[],"mappings":"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","sourcesContent":["import type {\n EditorAgentContext,\n EditorAgentContextSemantics,\n EditorAgentSource,\n SpatialMarkerGraph,\n SpatialMarkerTypeDefinition,\n SpatialRelationTypeDefinition,\n} from '@fps-games/editor-protocol';\nimport {\n createLocalEditorRegionBindingAgentContext,\n createLocalEditorSceneObjectAgentContext,\n createLocalEditorSceneObjectSetAgentContext,\n createLocalEditorSpatialMarkerAgentContext,\n createLocalEditorSpatialRelationGraphAgentContext,\n} from './local-editor-agent-context.js';\nimport {\n findSpatialMarkerById,\n getSpatialMarkerDirectRelations,\n getSpatialRelationRelatedIds,\n isMarkerGraphHierarchyRootRowId,\n readMarkerGraphHierarchyMarkerIdForGraph,\n readSpatialMarkerIdFromHierarchySelection,\n resolveSpatialMarkerGraph,\n} from './local-editor-marker-graph.js';\nimport type {\n LocalEditorHarnessHierarchyContextActionContext,\n LocalEditorHarnessHierarchyContextActionRegistration,\n} from './local-editor-harness.js';\nimport type { LocalEditorBrowserUiHierarchyItem } from '@fps-games/editor-browser';\n\nexport interface LocalEditorAgentSceneObjectSemanticsInput<TDocument> {\n document: TDocument;\n objectId: string;\n targetIds: string[];\n activeId: string | null;\n contextNodeId: string | null;\n hierarchyItem: unknown | null;\n hierarchyItems: readonly unknown[];\n projectionNode: unknown | null | undefined;\n}\n\nexport interface LocalEditorAgentSceneObjectSetSemanticsInput<TDocument> {\n document: TDocument;\n objectIds: string[];\n activeId: string | null;\n hierarchyItems: readonly unknown[];\n projectionNodes: Record<string, unknown | null | undefined>;\n}\n\nexport interface LocalEditorAgentRegionBindingSemanticsInput<TDocument>\n extends LocalEditorAgentSceneObjectSetSemanticsInput<TDocument> {\n relationshipType: 'selection-region';\n}\n\nexport interface LocalEditorAgentHierarchyActionOptions<TDocument> {\n sendContext(context: EditorAgentContext): void | boolean | Promise<unknown>;\n getHierarchyItems(document: TDocument): LocalEditorBrowserUiHierarchyItem[];\n getProjectionNode(document: TDocument, id: string): unknown | null | undefined;\n getMarkerGraph?(document: TDocument): SpatialMarkerGraph | null;\n getMarkerTypeCatalog?(document: TDocument): SpatialMarkerTypeDefinition[];\n getRelationTypeCatalog?(document: TDocument): SpatialRelationTypeDefinition[];\n describeSceneObject?(input: LocalEditorAgentSceneObjectSemanticsInput<TDocument>): EditorAgentContextSemantics | null | undefined;\n describeSceneObjectSet?(input: LocalEditorAgentSceneObjectSetSemanticsInput<TDocument>): EditorAgentContextSemantics | null | undefined;\n describeRegionBinding?(input: LocalEditorAgentRegionBindingSemanticsInput<TDocument>): EditorAgentContextSemantics | null | undefined;\n source?: Partial<EditorAgentSource>;\n reportError?(error: unknown): void;\n}\n\nexport const LOCAL_EDITOR_AGENT_ACTION_ID = {\n SEND_OBJECT: 'agent.send-object',\n SEND_SELECTION: 'agent.send-selection',\n SEND_SELECTION_AS_REGION: 'agent.send-selection-as-region',\n SEND_MARKER: 'agent.send-marker',\n SEND_MARKER_GRAPH: 'agent.send-marker-graph',\n} as const;\n\nexport function createLocalEditorAgentHierarchyContextActions<TDocument>(\n options: LocalEditorAgentHierarchyActionOptions<TDocument>,\n): LocalEditorHarnessHierarchyContextActionRegistration<TDocument>[] {\n return [\n {\n id: LOCAL_EDITOR_AGENT_ACTION_ID.SEND_OBJECT,\n label: 'Send to Agent',\n placement: 'after-primary',\n separatorBefore: true,\n visible: context => context.contextNodeId !== null && resolvePrimarySceneObjectId(context, options) !== null,\n disabled(context) {\n return resolvePrimarySceneObjectId(context, options) ? false : 'Select a scene object to send to Agent.';\n },\n run(context) {\n const objectId = resolvePrimarySceneObjectId(context, options);\n if (!objectId) return false;\n const hierarchyItems = context.browserContext.state.hierarchy;\n const projectionNode = objectId === context.contextNodeId\n ? context.projectionNode\n : options.getProjectionNode(context.document, objectId);\n const agentContext = createLocalEditorSceneObjectAgentContext({\n document: context.document,\n objectId,\n hierarchyItems,\n projectionNode,\n source: options.source,\n semantics: options.describeSceneObject?.({\n document: context.document,\n objectId,\n targetIds: context.targetIds,\n activeId: context.activeId,\n contextNodeId: context.contextNodeId,\n hierarchyItem: objectId === context.contextNodeId\n ? context.hierarchyItem\n : hierarchyItems.find(item => item.id === objectId) ?? null,\n hierarchyItems,\n projectionNode,\n }),\n });\n return sendAgentContext(agentContext, options);\n },\n },\n {\n id: LOCAL_EDITOR_AGENT_ACTION_ID.SEND_SELECTION,\n label: 'Send Selection to Agent',\n placement: 'after-primary',\n visible: context => resolveSceneObjectSelectionIds(context, options).length > 1,\n disabled(context) {\n return resolveSceneObjectSelectionIds(context, options).length > 1\n ? false\n : 'Select multiple scene objects to send selection to Agent.';\n },\n run(context) {\n const targetIds = resolveSceneObjectSelectionIds(context, options);\n if (targetIds.length === 0) return false;\n const hierarchyItems = context.browserContext.state.hierarchy;\n const projectionNodes = createProjectionNodeMap(context.document, targetIds, options);\n const agentContext = createLocalEditorSceneObjectSetAgentContext({\n document: context.document,\n objectIds: targetIds,\n hierarchyItems,\n projectionNodes,\n source: options.source,\n semantics: options.describeSceneObjectSet?.({\n document: context.document,\n objectIds: targetIds,\n activeId: context.activeId,\n hierarchyItems,\n projectionNodes,\n }),\n });\n return sendAgentContext(agentContext, options);\n },\n },\n {\n id: LOCAL_EDITOR_AGENT_ACTION_ID.SEND_SELECTION_AS_REGION,\n label: 'Send Selection as Region',\n placement: 'after-primary',\n visible: context => resolveSceneObjectSelectionIds(context, options).length > 1,\n disabled(context) {\n return resolveSceneObjectSelectionIds(context, options).length > 1\n ? false\n : 'Select multiple scene objects to describe a region to Agent.';\n },\n run(context) {\n const targetIds = resolveSceneObjectSelectionIds(context, options);\n if (targetIds.length < 2) return false;\n const hierarchyItems = context.browserContext.state.hierarchy;\n const projectionNodes = createProjectionNodeMap(context.document, targetIds, options);\n const agentContext = createLocalEditorRegionBindingAgentContext({\n document: context.document,\n objectIds: targetIds,\n hierarchyItems,\n projectionNodes,\n source: options.source,\n semantics: options.describeRegionBinding?.({\n document: context.document,\n objectIds: targetIds,\n activeId: context.activeId,\n hierarchyItems,\n projectionNodes,\n relationshipType: 'selection-region',\n }),\n });\n return sendAgentContext(agentContext, options);\n },\n },\n {\n id: LOCAL_EDITOR_AGENT_ACTION_ID.SEND_MARKER,\n label: 'Send Marker to Agent',\n placement: 'after-primary',\n visible: context => resolveContextMarkerId(context, options) !== null,\n disabled(context) {\n const resolved = resolveContextMarker(context, options);\n if (!resolved.marker) return 'Select a spatial marker to send to Agent.';\n if (resolved.marker.spatial.status !== 'resolved') {\n return resolved.marker.spatial.unresolvedReason\n ? `Marker spatial facts unresolved: ${resolved.marker.spatial.unresolvedReason}`\n : 'Marker spatial facts are unresolved.';\n }\n return false;\n },\n run(context) {\n const resolved = resolveContextMarker(context, options);\n if (!resolved.graph || !resolved.marker) return false;\n const directRelations = getSpatialMarkerDirectRelations(resolved.graph, resolved.marker.id);\n const relatedIds = getSpatialRelationRelatedIds(directRelations, resolved.marker.id);\n const agentContext = createLocalEditorSpatialMarkerAgentContext({\n document: context.document,\n marker: resolved.marker,\n graph: resolved.graph,\n directRelations,\n relatedMarkerIds: relatedIds.markerIds,\n relatedObjectIds: relatedIds.objectIds,\n hierarchyItems: context.browserContext.state.hierarchy,\n markerTypes: options.getMarkerTypeCatalog?.(context.document) ?? [],\n relationTypes: options.getRelationTypeCatalog?.(context.document) ?? [],\n source: options.source,\n });\n return sendAgentContext(agentContext, options);\n },\n },\n {\n id: LOCAL_EDITOR_AGENT_ACTION_ID.SEND_MARKER_GRAPH,\n label: 'Send Marker Graph to Agent',\n placement: 'after-primary',\n visible: context => isMarkerGraphContext(context, options),\n disabled(context) {\n const graph = resolveContextMarkerGraph(context, options);\n if (!graph || graph.markers.length === 0) return 'No marker graph is available.';\n const unresolved = graph.markers.filter(marker => marker.spatial.status !== 'resolved');\n if (unresolved.length > 0) {\n const labels = unresolved.map(marker => marker.label || marker.id).join(', ');\n return `Marker graph has unresolved spatial facts: ${labels}.`;\n }\n return false;\n },\n run(context) {\n const graph = resolveContextMarkerGraph(context, options);\n if (!graph) return false;\n const focusMarkerIds = collectContextMarkerIds(context, options);\n const focusObjectIds = collectRelatedObjectIdsForMarkers(graph, focusMarkerIds);\n const agentContext = createLocalEditorSpatialRelationGraphAgentContext({\n document: context.document,\n graph,\n focusMarkerIds,\n focusObjectIds,\n hierarchyItems: context.browserContext.state.hierarchy,\n markerTypes: options.getMarkerTypeCatalog?.(context.document) ?? [],\n relationTypes: options.getRelationTypeCatalog?.(context.document) ?? [],\n source: options.source,\n });\n return sendAgentContext(agentContext, options);\n },\n },\n ];\n}\n\nfunction resolvePrimarySceneObjectId<TDocument>(\n context: LocalEditorHarnessHierarchyContextActionContext<TDocument>,\n options: Pick<LocalEditorAgentHierarchyActionOptions<TDocument>, 'getHierarchyItems' | 'getMarkerGraph'>,\n): string | null {\n const id = context.contextNodeId ?? context.activeId ?? context.targetIds[0] ?? null;\n if (!id) return null;\n const graph = options.getMarkerGraph?.(context.document) ?? null;\n if (!graph) return id;\n const hierarchyItems = options.getHierarchyItems(context.document);\n if (isMarkerGraphHierarchyRootRowId(graph, id, hierarchyItems)) return null;\n return readSpatialMarkerIdFromHierarchySelection(graph, id, hierarchyItems) ? null : id;\n}\n\nfunction resolveSceneObjectSelectionIds<TDocument>(\n context: LocalEditorHarnessHierarchyContextActionContext<TDocument>,\n options: Pick<LocalEditorAgentHierarchyActionOptions<TDocument>, 'getHierarchyItems' | 'getMarkerGraph'>,\n): string[] {\n const ids = normalizeActionIds(context.targetIds);\n const graph = options.getMarkerGraph?.(context.document) ?? null;\n if (!graph) return ids;\n const hierarchyItems = options.getHierarchyItems(context.document);\n return ids.filter(id => (\n !isMarkerGraphHierarchyRootRowId(graph, id, hierarchyItems)\n && !readSpatialMarkerIdFromHierarchySelection(graph, id, hierarchyItems)\n ));\n}\n\nfunction createProjectionNodeMap<TDocument>(\n document: TDocument,\n objectIds: readonly string[],\n options: Pick<LocalEditorAgentHierarchyActionOptions<TDocument>, 'getProjectionNode'>,\n): Record<string, unknown | null | undefined> {\n const nodes: Record<string, unknown | null | undefined> = {};\n for (const objectId of objectIds) nodes[objectId] = options.getProjectionNode(document, objectId);\n return nodes;\n}\n\nfunction sendAgentContext<TDocument>(\n context: EditorAgentContext | null,\n options: Pick<LocalEditorAgentHierarchyActionOptions<TDocument>, 'sendContext' | 'reportError'>,\n): boolean {\n if (!context) return false;\n try {\n void Promise.resolve(options.sendContext(context)).catch(error => options.reportError?.(error));\n return true;\n } catch (error) {\n options.reportError?.(error);\n return false;\n }\n}\n\nfunction resolveContextMarkerId<TDocument>(\n context: LocalEditorHarnessHierarchyContextActionContext<TDocument>,\n options: Pick<LocalEditorAgentHierarchyActionOptions<TDocument>, 'getHierarchyItems' | 'getMarkerGraph'>,\n): string | null {\n const graph = options.getMarkerGraph?.(context.document) ?? null;\n if (!graph) return null;\n const hierarchyItems = options.getHierarchyItems(context.document);\n const candidateIds = [\n context.contextNodeId,\n context.activeId,\n ...context.targetIds,\n ];\n for (const candidateId of candidateIds) {\n const markerId = readSpatialMarkerIdFromHierarchySelection(graph, candidateId, hierarchyItems);\n if (markerId) return markerId;\n }\n return null;\n}\n\nfunction resolveContextMarker<TDocument>(\n context: LocalEditorHarnessHierarchyContextActionContext<TDocument>,\n options: Pick<LocalEditorAgentHierarchyActionOptions<TDocument>, 'getHierarchyItems' | 'getMarkerGraph'>,\n) {\n const graph = resolveContextMarkerGraph(context, options);\n const markerId = resolveContextMarkerId(context, options);\n return {\n graph,\n marker: graph && markerId ? findSpatialMarkerById(graph, markerId) : null,\n };\n}\n\nfunction resolveContextMarkerGraph<TDocument>(\n context: LocalEditorHarnessHierarchyContextActionContext<TDocument>,\n options: Pick<LocalEditorAgentHierarchyActionOptions<TDocument>, 'getMarkerGraph'>,\n) {\n return resolveSpatialMarkerGraph(options.getMarkerGraph?.(context.document) ?? null);\n}\n\nfunction isMarkerGraphContext<TDocument>(\n context: LocalEditorHarnessHierarchyContextActionContext<TDocument>,\n options: Pick<LocalEditorAgentHierarchyActionOptions<TDocument>, 'getHierarchyItems' | 'getMarkerGraph'>,\n): boolean {\n const graph = options.getMarkerGraph?.(context.document) ?? null;\n if (!graph || graph.markers.length === 0) return false;\n const hierarchyItems = options.getHierarchyItems(context.document);\n if (isMarkerGraphHierarchyRootRowId(graph, context.contextNodeId, hierarchyItems)) return true;\n return collectContextMarkerIds(context, options).length > 0;\n}\n\nfunction collectContextMarkerIds<TDocument>(\n context: LocalEditorHarnessHierarchyContextActionContext<TDocument>,\n options: Pick<LocalEditorAgentHierarchyActionOptions<TDocument>, 'getHierarchyItems' | 'getMarkerGraph'>,\n): string[] {\n const graph = options.getMarkerGraph?.(context.document) ?? null;\n if (!graph) return [];\n const hierarchyItems = options.getHierarchyItems(context.document);\n const markerIds = new Set<string>();\n for (const candidateId of [context.contextNodeId, context.activeId, ...context.targetIds]) {\n const markerId = readSpatialMarkerIdFromHierarchySelection(graph, candidateId, hierarchyItems);\n if (markerId) markerIds.add(markerId);\n }\n return [...markerIds];\n}\n\nfunction collectRelatedObjectIdsForMarkers(\n graph: { relations: SpatialMarkerGraph['relations'] },\n markerIds: readonly string[],\n): string[] {\n const objectIds = new Set<string>();\n for (const markerId of markerIds) {\n const relatedIds = getSpatialRelationRelatedIds(getSpatialMarkerDirectRelations(graph, markerId), markerId);\n for (const objectId of relatedIds.objectIds) objectIds.add(objectId);\n }\n return [...objectIds];\n}\n\nfunction normalizeActionIds(values: readonly (string | null | undefined)[]): string[] {\n return [...new Set(values.map(value => value?.trim()).filter((value): value is string => !!value))];\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"local-editor-agent-bridge-transport.js","sourceRoot":"","sources":["../src/local-editor-agent-bridge-transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local-editor-agent-bridge-transport.js","sourceRoot":"","sources":["../src/local-editor-agent-bridge-transport.ts"],"names":[],"mappings":"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","sourcesContent":["import type { EditorAgentBridge } from '@fps-games/editor-core';\nimport type { FpsEditorLifecycleChangedEvent } from '@fps-games/editor-core/lifecycle';\nimport type {\n EditorAgentBridgeCallResult,\n EditorAgentBridgeCapabilityId,\n EditorAgentBridgeCapabilityManifest,\n EditorAgentBridgeDiagnostic,\n} from '@fps-games/editor-protocol';\n\nexport const LOCAL_EDITOR_AGENT_BRIDGE_QUERY_PARAM = 'fpsEditorAgentBridge';\nexport const LOCAL_EDITOR_AGENT_BRIDGE_DEFAULT_URL = 'ws://127.0.0.1:3777/editor-bridge';\nexport const LOCAL_EDITOR_AGENT_BRIDGE_TRANSPORT_PROTOCOL_VERSION = 1 as const;\n\nconst WEB_SOCKET_OPEN = 1;\nconst WEB_SOCKET_CLOSING = 2;\n\nexport interface LocalEditorAgentBridgeSessionMetadata {\n label?: string;\n pageUrl?: string;\n workspaceRoot?: string;\n repoRemote?: string;\n branch?: string;\n gitSha?: string;\n projectRoot?: string;\n paTemplateRoot?: string;\n projectRepoRemote?: string;\n projectBranch?: string;\n projectGitSha?: string;\n editorBuildInfo?: Record<string, unknown> | null;\n}\n\nexport type LocalEditorAgentBridgeTransportStatusKind =\n | 'disabled'\n | 'connecting'\n | 'connected'\n | 'disconnected'\n | 'error';\n\nexport interface LocalEditorAgentBridgeTransportStatus {\n status: LocalEditorAgentBridgeTransportStatusKind;\n url: string | null;\n sessionId: string | null;\n capabilityCount: number;\n lastChangedAt: string;\n connectedAt?: string;\n lastError?: string;\n}\n\nexport type LocalEditorAgentBridgeTransportStatusListener =\n (status: LocalEditorAgentBridgeTransportStatus) => void;\n\nexport interface LocalEditorAgentBridgeWebSocketLike {\n readonly readyState: number;\n send(data: string): void;\n close(code?: number, reason?: string): void;\n addEventListener(type: 'open' | 'message' | 'close' | 'error', listener: (event: unknown) => void): void;\n removeEventListener(type: 'open' | 'message' | 'close' | 'error', listener: (event: unknown) => void): void;\n}\n\nexport interface LocalEditorAgentBridgeWebSocketConstructor {\n new(url: string): LocalEditorAgentBridgeWebSocketLike;\n}\n\nexport interface LocalEditorAgentBridgeTransportController {\n readonly sessionId: string;\n readonly url: string;\n getStatus(): LocalEditorAgentBridgeTransportStatus;\n reportLifecycleTransition(event: FpsEditorLifecycleChangedEvent): boolean;\n dispose(): void;\n}\n\nexport interface LocalEditorAgentBridgeWebSocketTransportOptions {\n url: string;\n sessionId?: string;\n metadata?: LocalEditorAgentBridgeSessionMetadata;\n WebSocketCtor?: LocalEditorAgentBridgeWebSocketConstructor | null;\n onStatusChange?: LocalEditorAgentBridgeTransportStatusListener;\n}\n\nexport interface LocalEditorAgentBridgeWebSocketTransportFromQueryOptions\n extends Omit<LocalEditorAgentBridgeWebSocketTransportOptions, 'url'> {\n url?: string | null;\n searchParams?: URLSearchParams | null;\n baseUrl?: string | null;\n window?: (Window & typeof globalThis) | null;\n}\n\nexport interface LocalEditorAgentBridgeSessionRegistrationMessage {\n type: 'session.register';\n protocolVersion: typeof LOCAL_EDITOR_AGENT_BRIDGE_TRANSPORT_PROTOCOL_VERSION;\n sessionId: string;\n capabilities: EditorAgentBridgeCapabilityManifest[];\n metadata?: LocalEditorAgentBridgeSessionMetadata;\n}\n\nexport interface LocalEditorAgentBridgeSessionUnregisterMessage {\n type: 'session.unregister';\n protocolVersion: typeof LOCAL_EDITOR_AGENT_BRIDGE_TRANSPORT_PROTOCOL_VERSION;\n sessionId: string;\n}\n\nexport interface LocalEditorAgentBridgeCapabilityResultMessage {\n type: 'capability.result';\n protocolVersion: typeof LOCAL_EDITOR_AGENT_BRIDGE_TRANSPORT_PROTOCOL_VERSION;\n sessionId: string;\n requestId: string;\n traceId?: string;\n traceStepId?: string;\n result: EditorAgentBridgeCallResult;\n}\n\nexport interface LocalEditorAgentBridgeTransportErrorMessage {\n type: 'transport.error';\n protocolVersion: typeof LOCAL_EDITOR_AGENT_BRIDGE_TRANSPORT_PROTOCOL_VERSION;\n sessionId: string;\n requestId?: string;\n traceId?: string;\n traceStepId?: string;\n diagnostics: EditorAgentBridgeDiagnostic[];\n}\n\nexport interface LocalEditorAgentBridgeLifecycleTransitionMessage {\n type: 'lifecycle.transition';\n protocolVersion: typeof LOCAL_EDITOR_AGENT_BRIDGE_TRANSPORT_PROTOCOL_VERSION;\n sessionId: string;\n traceId?: string;\n transactionId?: string;\n sourcePluginId?: string;\n transitionId: string;\n transitionType: FpsEditorLifecycleChangedEvent['transition']['type'];\n status: FpsEditorLifecycleChangedEvent['status'];\n lifecycle: {\n revision: number;\n transitioning: boolean;\n application: string;\n project: string;\n mode: string;\n document: string;\n preview: string;\n scopeCount: number;\n };\n errorMessage?: string;\n}\n\nexport type LocalEditorAgentBridgeBrowserMessage =\n | LocalEditorAgentBridgeSessionRegistrationMessage\n | LocalEditorAgentBridgeSessionUnregisterMessage\n | LocalEditorAgentBridgeCapabilityResultMessage\n | LocalEditorAgentBridgeLifecycleTransitionMessage\n | LocalEditorAgentBridgeTransportErrorMessage;\n\nexport interface LocalEditorAgentBridgeCapabilityCallMessage {\n type: 'capability.call';\n protocolVersion?: typeof LOCAL_EDITOR_AGENT_BRIDGE_TRANSPORT_PROTOCOL_VERSION;\n requestId: string;\n capabilityId: EditorAgentBridgeCapabilityId;\n input?: unknown;\n traceId?: string;\n traceStepId?: string;\n}\n\nexport type LocalEditorAgentBridgeServerMessage = LocalEditorAgentBridgeCapabilityCallMessage;\n\nexport function createLocalEditorAgentBridgeWebSocketTransportFromQuery(\n bridge: EditorAgentBridge,\n options: LocalEditorAgentBridgeWebSocketTransportFromQueryOptions = {},\n): LocalEditorAgentBridgeTransportController | null {\n const win = options.window ?? getCurrentWindow();\n const queryUrl = readLocalEditorAgentBridgeWebSocketQueryParam(options.searchParams ?? getSearchParams(win));\n const rawUrl = resolveLocalEditorAgentBridgeWebSocketConfigUrl(options.url, queryUrl);\n if (rawUrl == null || isLocalEditorAgentBridgeDisabledUrl(rawUrl)) {\n emitLocalEditorAgentBridgeTransportStatus(options.onStatusChange, {\n status: 'disabled',\n url: null,\n sessionId: null,\n capabilityCount: bridge.listCapabilities().length,\n });\n return null;\n }\n const url = normalizeLocalEditorAgentBridgeWebSocketUrl(\n rawUrl,\n options.baseUrl ?? getLocationHref(win),\n );\n if (!url) {\n emitLocalEditorAgentBridgeTransportStatus(options.onStatusChange, {\n status: 'error',\n url: null,\n sessionId: null,\n capabilityCount: bridge.listCapabilities().length,\n lastError: 'Invalid Agent Bridge WebSocket URL.',\n });\n return null;\n }\n return createLocalEditorAgentBridgeWebSocketTransport(bridge, {\n ...options,\n url,\n WebSocketCtor: options.WebSocketCtor ?? getWebSocketConstructor(win),\n metadata: mergeLocalEditorAgentBridgeSessionMetadata(\n createWindowSessionMetadata(win),\n options.metadata,\n ),\n });\n}\n\nexport function createLocalEditorAgentBridgeWebSocketTransport(\n bridge: EditorAgentBridge,\n options: LocalEditorAgentBridgeWebSocketTransportOptions,\n): LocalEditorAgentBridgeTransportController | null {\n const url = normalizeLocalEditorAgentBridgeWebSocketUrl(options.url);\n const sessionId = options.sessionId?.trim() || createLocalEditorAgentBridgeSessionId();\n const capabilities = bridge.listCapabilities();\n const capabilityCount = capabilities.length;\n if (!url) {\n emitLocalEditorAgentBridgeTransportStatus(options.onStatusChange, {\n status: 'error',\n url: null,\n sessionId,\n capabilityCount,\n lastError: 'Invalid Agent Bridge WebSocket URL.',\n });\n return null;\n }\n\n const WebSocketCtor = options.WebSocketCtor ?? getWebSocketConstructor(getCurrentWindow());\n if (!WebSocketCtor) {\n emitLocalEditorAgentBridgeTransportStatus(options.onStatusChange, {\n status: 'error',\n url,\n sessionId,\n capabilityCount,\n lastError: 'WebSocket is not available in this environment.',\n });\n return null;\n }\n\n let socket: LocalEditorAgentBridgeWebSocketLike;\n try {\n socket = new WebSocketCtor(url);\n } catch (error) {\n emitLocalEditorAgentBridgeTransportStatus(options.onStatusChange, {\n status: 'error',\n url,\n sessionId,\n capabilityCount,\n lastError: error instanceof Error ? error.message : String(error),\n });\n return null;\n }\n let disposed = false;\n let disposeRequested = false;\n let activeCapabilityCalls = 0;\n let registered = false;\n let connectedAt: string | undefined;\n let currentStatus = createLocalEditorAgentBridgeTransportStatus({\n status: 'connecting',\n url,\n sessionId,\n capabilityCount,\n });\n\n const emitStatus = (\n status: LocalEditorAgentBridgeTransportStatusKind,\n lastError?: string,\n ): void => {\n if (status === 'connected' && !connectedAt) connectedAt = new Date().toISOString();\n currentStatus = createLocalEditorAgentBridgeTransportStatus({\n status,\n url,\n sessionId,\n capabilityCount,\n connectedAt,\n lastError: status === 'error' ? lastError : undefined,\n });\n options.onStatusChange?.({ ...currentStatus });\n };\n\n const sendMessage = (message: LocalEditorAgentBridgeBrowserMessage): boolean => {\n if (disposed || socket.readyState !== WEB_SOCKET_OPEN) return false;\n try {\n socket.send(JSON.stringify(message));\n return true;\n } catch (error) {\n emitStatus('error', error instanceof Error ? error.message : String(error));\n return false;\n }\n };\n\n const registerSession = () => {\n registered = sendMessage({\n type: 'session.register',\n protocolVersion: LOCAL_EDITOR_AGENT_BRIDGE_TRANSPORT_PROTOCOL_VERSION,\n sessionId,\n capabilities,\n ...(options.metadata ? { metadata: options.metadata } : {}),\n });\n if (registered) emitStatus('connected');\n else emitStatus('error', 'Agent Bridge WebSocket could not register the editor session.');\n };\n\n const sendTransportError = (\n diagnostic: EditorAgentBridgeDiagnostic,\n requestId?: string,\n traceId?: string,\n traceStepId?: string,\n ) => {\n sendMessage({\n type: 'transport.error',\n protocolVersion: LOCAL_EDITOR_AGENT_BRIDGE_TRANSPORT_PROTOCOL_VERSION,\n sessionId,\n ...(requestId ? { requestId } : {}),\n ...(traceId ? { traceId } : {}),\n ...(traceStepId ? { traceStepId } : {}),\n diagnostics: [diagnostic],\n });\n };\n\n const handleCapabilityCall = async (message: LocalEditorAgentBridgeCapabilityCallMessage) => {\n const result = await bridge.callCapability(message.capabilityId, message.input, {\n ...(message.traceId ? { traceId: message.traceId } : {}),\n ...(message.traceStepId ? { traceStepId: message.traceStepId } : {}),\n });\n sendMessage({\n type: 'capability.result',\n protocolVersion: LOCAL_EDITOR_AGENT_BRIDGE_TRANSPORT_PROTOCOL_VERSION,\n sessionId,\n requestId: message.requestId,\n ...(message.traceId ? { traceId: message.traceId } : {}),\n ...(message.traceStepId ? { traceStepId: message.traceStepId } : {}),\n result,\n });\n };\n\n const handleMessage = (event: unknown) => {\n const raw = getWebSocketMessageData(event);\n const message = parseServerMessage(raw);\n if (!message) {\n sendTransportError({\n severity: 'error',\n source: 'transport',\n code: 'transport.invalidMessage',\n message: 'Agent Bridge WebSocket received an invalid message.',\n });\n return;\n }\n activeCapabilityCalls += 1;\n void handleCapabilityCall(message)\n .catch(error => {\n sendTransportError({\n severity: 'error',\n source: 'transport',\n code: 'transport.callFailed',\n message: error instanceof Error ? error.message : String(error),\n details: {\n capabilityId: message.capabilityId,\n },\n }, message.requestId, message.traceId, message.traceStepId);\n })\n .finally(() => {\n activeCapabilityCalls = Math.max(0, activeCapabilityCalls - 1);\n if (disposeRequested && activeCapabilityCalls === 0) finalizeTransportDisposal();\n });\n };\n\n const handleOpen = () => {\n if (!disposed) registerSession();\n };\n const handleClose = () => {\n registered = false;\n if (!disposed && currentStatus.status !== 'error') emitStatus('disconnected');\n };\n const handleError = () => {\n emitStatus('error', 'Agent Bridge WebSocket error.');\n };\n\n const finalizeTransportDisposal = () => {\n if (disposed) return;\n if (registered) {\n try {\n sendMessage({\n type: 'session.unregister',\n protocolVersion: LOCAL_EDITOR_AGENT_BRIDGE_TRANSPORT_PROTOCOL_VERSION,\n sessionId,\n });\n } catch {\n // Continue releasing listeners and the socket.\n }\n }\n disposed = true;\n registered = false;\n socket.removeEventListener('open', handleOpen);\n socket.removeEventListener('message', handleMessage);\n socket.removeEventListener('close', handleClose);\n socket.removeEventListener('error', handleError);\n if (socket.readyState < WEB_SOCKET_CLOSING) {\n try {\n socket.close(1000, 'editor disposed');\n } catch {\n // Ignore close failures; disposal should never break the editor page.\n }\n }\n };\n const disposeTransport = () => {\n if (disposed || disposeRequested) return;\n disposeRequested = true;\n if (activeCapabilityCalls === 0) finalizeTransportDisposal();\n };\n\n try {\n socket.addEventListener('open', handleOpen);\n socket.addEventListener('message', handleMessage);\n socket.addEventListener('close', handleClose);\n socket.addEventListener('error', handleError);\n options.onStatusChange?.({ ...currentStatus });\n if (socket.readyState === WEB_SOCKET_OPEN) handleOpen();\n } catch (error) {\n disposeTransport();\n throw error;\n }\n\n return {\n sessionId,\n url,\n getStatus() {\n return { ...currentStatus };\n },\n reportLifecycleTransition(event) {\n const transition = event.transition;\n return sendMessage({\n type: 'lifecycle.transition',\n protocolVersion: LOCAL_EDITOR_AGENT_BRIDGE_TRANSPORT_PROTOCOL_VERSION,\n sessionId,\n ...(transition.traceId ? { traceId: transition.traceId } : {}),\n ...(transition.transactionId ? { transactionId: transition.transactionId } : {}),\n ...(transition.sourcePluginId ? { sourcePluginId: transition.sourcePluginId } : {}),\n transitionId: transition.id,\n transitionType: transition.type,\n status: event.status,\n lifecycle: {\n revision: event.current.revision,\n transitioning: event.current.transitioning,\n application: event.current.application,\n project: event.current.project,\n mode: event.current.mode,\n document: event.current.document,\n preview: event.current.preview,\n scopeCount: event.current.scopes.length,\n },\n ...(event.status === 'failed' ? { errorMessage: event.error.message } : {}),\n });\n },\n dispose: disposeTransport,\n };\n}\n\nexport function createDisabledLocalEditorAgentBridgeTransportStatus(): LocalEditorAgentBridgeTransportStatus {\n return createLocalEditorAgentBridgeTransportStatus({\n status: 'disabled',\n url: null,\n sessionId: null,\n capabilityCount: 0,\n });\n}\n\nfunction emitLocalEditorAgentBridgeTransportStatus(\n listener: LocalEditorAgentBridgeTransportStatusListener | undefined,\n input: Omit<LocalEditorAgentBridgeTransportStatus, 'lastChangedAt'>,\n): void {\n listener?.(createLocalEditorAgentBridgeTransportStatus(input));\n}\n\nfunction createLocalEditorAgentBridgeTransportStatus(\n input: Omit<LocalEditorAgentBridgeTransportStatus, 'lastChangedAt'>,\n): LocalEditorAgentBridgeTransportStatus {\n return {\n status: input.status,\n url: input.url,\n sessionId: input.sessionId,\n capabilityCount: input.capabilityCount,\n lastChangedAt: new Date().toISOString(),\n ...(input.connectedAt ? { connectedAt: input.connectedAt } : {}),\n ...(input.lastError ? { lastError: input.lastError } : {}),\n };\n}\n\nexport function normalizeLocalEditorAgentBridgeWebSocketUrl(rawUrl: unknown, baseUrl?: string | null): string | null {\n if (typeof rawUrl !== 'string') return null;\n const trimmed = rawUrl.trim();\n if (!trimmed) return null;\n try {\n const url = baseUrl ? new URL(trimmed, baseUrl) : new URL(trimmed);\n if (url.protocol !== 'ws:' && url.protocol !== 'wss:') return null;\n return url.href;\n } catch {\n return null;\n }\n}\n\nfunction readLocalEditorAgentBridgeWebSocketQueryParam(searchParams: URLSearchParams | null): string | null {\n return searchParams?.get(LOCAL_EDITOR_AGENT_BRIDGE_QUERY_PARAM) ?? null;\n}\n\nfunction resolveLocalEditorAgentBridgeWebSocketConfigUrl(\n optionUrl: string | null | undefined,\n queryUrl: string | null,\n): string | null {\n if (optionUrl === null) return null;\n if (typeof optionUrl === 'string') return optionUrl;\n return queryUrl ?? LOCAL_EDITOR_AGENT_BRIDGE_DEFAULT_URL;\n}\n\nfunction isLocalEditorAgentBridgeDisabledUrl(rawUrl: string): boolean {\n const value = rawUrl.trim().toLowerCase();\n return value === '0' || value === 'false' || value === 'off' || value === 'disabled';\n}\n\nfunction parseServerMessage(raw: unknown): LocalEditorAgentBridgeServerMessage | null {\n if (typeof raw !== 'string') return null;\n try {\n const value = JSON.parse(raw) as unknown;\n if (!value || typeof value !== 'object') return null;\n const record = value as Record<string, unknown>;\n if (record.type !== 'capability.call') return null;\n if (typeof record.requestId !== 'string' || !record.requestId.trim()) return null;\n if (typeof record.capabilityId !== 'string' || !record.capabilityId.trim()) return null;\n return {\n type: 'capability.call',\n protocolVersion: record.protocolVersion === LOCAL_EDITOR_AGENT_BRIDGE_TRANSPORT_PROTOCOL_VERSION\n ? LOCAL_EDITOR_AGENT_BRIDGE_TRANSPORT_PROTOCOL_VERSION\n : undefined,\n requestId: record.requestId,\n capabilityId: record.capabilityId as EditorAgentBridgeCapabilityId,\n input: record.input,\n traceId: typeof record.traceId === 'string' && record.traceId.trim()\n ? record.traceId\n : undefined,\n traceStepId: typeof record.traceStepId === 'string' && record.traceStepId.trim()\n ? record.traceStepId\n : undefined,\n };\n } catch {\n return null;\n }\n}\n\nfunction getWebSocketMessageData(event: unknown): unknown {\n if (!event || typeof event !== 'object') return event;\n return (event as { data?: unknown }).data;\n}\n\nfunction createLocalEditorAgentBridgeSessionId(): string {\n const random = Math.random().toString(36).slice(2, 10);\n return `fps-editor-${Date.now().toString(36)}-${random}`;\n}\n\nfunction createWindowSessionMetadata(win: Window | null): LocalEditorAgentBridgeSessionMetadata | undefined {\n if (!win) return undefined;\n const label = typeof win.document?.title === 'string' && win.document.title.trim()\n ? win.document.title.trim()\n : undefined;\n const pageUrl = getLocationHref(win) ?? undefined;\n return label || pageUrl ? { label, pageUrl } : undefined;\n}\n\nfunction mergeLocalEditorAgentBridgeSessionMetadata(\n base: LocalEditorAgentBridgeSessionMetadata | undefined,\n override: LocalEditorAgentBridgeSessionMetadata | undefined,\n): LocalEditorAgentBridgeSessionMetadata | undefined {\n if (!base) return override;\n if (!override) return base;\n return { ...override, ...base };\n}\n\nfunction getCurrentWindow(): (Window & typeof globalThis) | null {\n return typeof window !== 'undefined' ? window : null;\n}\n\nfunction getSearchParams(win: Window | null): URLSearchParams | null {\n const search = win?.location?.search;\n return typeof search === 'string' ? new URLSearchParams(search) : null;\n}\n\nfunction getLocationHref(win: Window | null): string | null {\n return typeof win?.location?.href === 'string' ? win.location.href : null;\n}\n\nfunction getWebSocketConstructor(win: Window | null): LocalEditorAgentBridgeWebSocketConstructor | null {\n return (win as unknown as { WebSocket?: LocalEditorAgentBridgeWebSocketConstructor } | null)?.WebSocket ?? null;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"local-editor-agent-bridge.js","sourceRoot":"","sources":["../src/local-editor-agent-bridge.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC"}
1
+ {"version":3,"file":"local-editor-agent-bridge.js","sourceRoot":"","sources":["../src/local-editor-agent-bridge.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC","sourcesContent":["export * from './agent-bridge/index.js';\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"local-editor-agent-context.js","sourceRoot":"","sources":["../src/local-editor-agent-context.ts"],"names":[],"mappings":"AACA,OAAO,EACL,mCAAmC,GAiBpC,MAAM,4BAA4B,CAAC;AA8FpC,MAAM,UAAU,wCAAwC,CACtD,KAAoD;IAEpD,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3B,MAAM,aAAa,GAAG,kBAAkB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAC/D,MAAM,MAAM,GAAG,sBAAsB,CAAC,QAAQ,EAAE,aAAa,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;IACrF,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,EAAE,CAAC;IACvD,OAAO;QACL,aAAa,EAAE,mCAAmC;QAClD,EAAE,EAAE,oBAAoB,CAAC,cAAc,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;QACrE,IAAI,EAAE,cAAc;QACpB,KAAK;QACL,OAAO,EAAE,oBAAoB,CAAC,MAAM,CAAC;QACrC,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE;QACxC,MAAM,EAAE,iBAAiB,CAAC,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC;QACpD,MAAM;QACN,GAAG,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC;KACvC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2CAA2C,CACzD,KAAuD;IAEvD,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAChD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACxC,MAAM,aAAa,GAAG,kBAAkB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAC/D,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,sBAAsB,CAAC,EAAE,EAAE,aAAa,EAAE,KAAK,CAAC,eAAe,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5G,OAAO;QACL,aAAa,EAAE,mCAAmC;QAClD,EAAE,EAAE,oBAAoB,CAAC,kBAAkB,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC;QACxE,IAAI,EAAE,kBAAkB;QACxB,KAAK,EAAE,GAAG,OAAO,CAAC,MAAM,mBAAmB;QAC3C,OAAO,EAAE,uBAAuB,CAAC,OAAO,CAAC;QACzC,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE;QACxC,MAAM,EAAE,iBAAiB,CAAC,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC;QACpD,SAAS;QACT,OAAO;QACP,GAAG,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC;KACvC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0CAA0C,CACxD,KAA2D;IAE3D,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAChD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACxC,MAAM,aAAa,GAAG,kBAAkB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAC/D,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,sBAAsB,CAAC,EAAE,EAAE,aAAa,EAAE,KAAK,CAAC,eAAe,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5G,MAAM,MAAM,GAAG,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAA8B,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7H,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,iBAAiB,CAAC;IAC9E,OAAO;QACL,aAAa,EAAE,mCAAmC;QAClD,EAAE,EAAE,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC;QACtE,IAAI,EAAE,gBAAgB;QACtB,KAAK;QACL,OAAO,EAAE,sBAAsB,CAAC,KAAK,EAAE,OAAO,CAAC;QAC/C,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE;QACxC,MAAM,EAAE,iBAAiB,CAAC,gBAAgB,EAAE,KAAK,CAAC,MAAM,CAAC;QACzD,MAAM,EAAE;YACN,EAAE,EAAE,UAAU,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACnC,KAAK;YACL,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7B,SAAS;SACV;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,KAAK,CAAC,gBAAgB,EAAE,IAAI,EAAE,IAAI,kBAAkB;YAC1D,WAAW,EAAE,KAAK,CAAC,uBAAuB,EAAE,IAAI,EAAE;mBAC7C,uFAAuF;SAC7F;QACD,GAAG,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC;KACvC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0CAA0C,CACxD,KAA2D;IAE3D,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC9C,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,UAAU;QAAE,OAAO,IAAI,CAAC;IACzE,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,QAAQ,CAAC;IAC7C,MAAM,YAAY,GAAG,oBAAoB,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAClF,MAAM,YAAY,GAAG,oBAAoB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAChE,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa,IAAI,EAAE,CAAC;IAChD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI;QAC3B,aAAa,EAAE,CAAC;QAChB,OAAO,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC;QACvB,SAAS,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE;KACnE,CAAC;IACF,MAAM,oBAAoB,GAAG,iCAAiC,CAC5D,QAAQ,EACR,KAAK,EACL,KAAK,EACL,KAAK,CAAC,eAAe,IAAI,EAAE,EAC3B,KAAK,CAAC,gBAAgB,IAAI,EAAE,EAC5B,KAAK,CAAC,gBAAgB,IAAI,EAAE,EAC5B,aAAa,EACb,YAAY,EACZ,YAAY,CACb,CAAC;IACF,MAAM,OAAO,GAAG;QACd,aAAa,EAAE,mCAAmC;QAClD,EAAE,EAAE,oBAAoB,CAAC,gBAAgB,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;QACvE,IAAI,EAAE,gBAAgB;QACtB,KAAK;QACL,OAAO,EAAE,sBAAsB,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,eAAe,IAAI,EAAE,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,oBAAoB,CAAC;QAC3I,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE;QACxC,MAAM,EAAE,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC;QACjD,MAAM,EAAE,0BAA0B,CAAC,KAAK,CAAC,MAAM,CAAC;QAChD,eAAe,EAAE,KAAK,CAAC,eAAe,EAAE,GAAG,CAAC,oBAAoB,CAAC,IAAI,EAAE;QACvE,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,GAAG,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5F,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,GAAG,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5F,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvG,GAAG,CAAC,KAAK,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,2BAA2B,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/G,oBAAoB;QACpB,GAAG,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC;KACvC,CAAC;IACF,OAAO,OAA0C,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,iDAAiD,CAC/D,KAAkE;IAElE,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAClD,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1F,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC/D,MAAM,YAAY,GAAG,oBAAoB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAChE,MAAM,YAAY,GAAG,oBAAoB,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC/D,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa,IAAI,EAAE,CAAC;IAChD,MAAM,WAAW,GAAG,wBAAwB,CAAC,KAAK,CAAC,KAAK,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;IACtF,MAAM,cAAc,GAAG,gCAAgC,CACrD,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,cAAc,IAAI,EAAE,EAC1B,KAAK,CAAC,cAAc,IAAI,EAAE,EAC1B,aAAa,EACb,YAAY,EACZ,YAAY,CACb,CAAC;IACF,MAAM,OAAO,GAAG;QACd,aAAa,EAAE,mCAAmC;QAClD,EAAE,EAAE,oBAAoB,CAAC,wBAAwB,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC;QAC9E,IAAI,EAAE,wBAAwB;QAC9B,KAAK,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,kBAAkB;QACtD,OAAO,EAAE,6BAA6B,CAAC,KAAK,CAAC,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,WAAW,CAAC;QAC7G,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE;QACxC,MAAM,EAAE,iBAAiB,CAAC,cAAc,EAAE,KAAK,CAAC,MAAM,CAAC;QACvD,KAAK,EAAE,+BAA+B,CAAC,KAAK,CAAC,KAAK,CAAC;QACnD,GAAG,CAAC,KAAK,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,GAAG,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtF,GAAG,CAAC,KAAK,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,GAAG,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtF,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvG,GAAG,CAAC,KAAK,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,2BAA2B,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/G,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpD,GAAG,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC;KACvC,CAAC;IACF,OAAO,OAAiD,CAAC;AAC3D,CAAC;AAED,SAAS,sBAAsB,CAC7B,QAAgB,EAChB,aAA6D,EAC7D,cAAuB;IAEvB,MAAM,aAAa,GAAG,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;IAC1D,MAAM,UAAU,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,aAAa,EAAE,KAAK,IAAI,QAAQ,CAAC;IAC9E,MAAM,MAAM,GAA2B;QACrC,EAAE,EAAE,QAAQ;QACZ,IAAI;QACJ,KAAK,EAAE,aAAa,EAAE,KAAK,IAAI,IAAI;QACnC,aAAa,EAAE,mBAAmB,CAAC,QAAQ,EAAE,aAAa,CAAC;KAC5D,CAAC;IACF,MAAM,UAAU,GAAG,cAAc,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;IAC7D,IAAI,UAAU;QAAE,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/C,MAAM,SAAS,GAAG,kBAAkB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAC5D,IAAI,SAAS;QAAE,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;IAC5C,MAAM,MAAM,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;IAC3C,IAAI,MAAM;QAAE,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;IACnC,MAAM,SAAS,GAAG,aAAa,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACnD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;IACvD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAY,EAAE,GAAsB,EAAE,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE;IACxF,OAAO,GAAG,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,SAAS,EAAE,CAAC;AACjD,CAAC;AAED,SAAS,iBAAiB,CACxB,OAAqC,EACrC,MAA8C;IAE9C,OAAO;QACL,MAAM,EAAE,iBAAiB;QACzB,OAAO;QACP,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACpE,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,KAA+D;IACzF,OAAO,IAAI,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,oBAAoB,CAAC,KAA+D;IAC3F,OAAO,IAAI,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;SACzB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC;SACjE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED,SAAS,oBAAoB,CAAC,OAA6C;IACzE,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAChF,CAAC;AAED,SAAS,mBAAmB,CAAC,QAAgB,EAAE,IAAoD;IACjG,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,IAAI,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;IACxC,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;QACtC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACpB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC;QACxC,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IACtE,CAAC;IACD,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACxD,CAAC;AAED,SAAS,cAAc,CACrB,aAAuD,EACvD,UAA0C;IAE1C,MAAM,WAAW,GAAG,UAAU,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACxD,IAAI,WAAW;QAAE,OAAO,WAAW,CAAC;IACpC,MAAM,UAAU,GAAG,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IACtD,IAAI,UAAU;QAAE,OAAO,UAAU,CAAC;IAClC,MAAM,SAAS,GAAG,UAAU,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACpD,MAAM,cAAc,GAAG,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACpD,IAAI,cAAc;QAAE,OAAO,aAAa,cAAc,EAAE,CAAC;IACzD,MAAM,KAAK,GAAG,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC5C,IAAI,KAAK;QAAE,OAAO,OAAO,CAAC;IAC1B,OAAO,aAAa,EAAE,IAAI,CAAC;AAC7B,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IACjC,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACrC,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IACvD,OAAO;QACL,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5B,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACrC,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IACjC,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC;IACzD,MAAM,GAAG,GAAG,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IACvC,MAAM,GAAG,GAAG,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IACvC,MAAM,IAAI,GAAG,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IAC7C,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IACvD,OAAO;QACL,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvB,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvB,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzB,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9B,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,UAAwC;IAChE,MAAM,YAAY,GAAG,UAAU;SAC5B,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;SACrF,MAAM,CAAC,CAAC,MAAM,EAA4D,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAC1F,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAChD,MAAM,GAAG,GAAG;QACV,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACxD,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACxD,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;KACzD,CAAC;IACF,MAAM,GAAG,GAAG;QACV,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACxD,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACxD,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;KACzD,CAAC;IACF,OAAO;QACL,GAAG;QACH,GAAG;QACH,IAAI,EAAE;YACJ,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;YAChB,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;YAChB,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;SACjB;QACD,MAAM,EAAE;YACN,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;YACtB,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;YACtB,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;SACvB;KACF,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IAChC,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IACtB,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAiB,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAClG,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IACjC,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,MAAM,CAAC,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACrC,MAAM,CAAC,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACrC,MAAM,CAAC,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACrC,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AACvE,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAgC,CAAC,CAAC,CAAC,IAAI,CAAC;AACtF,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,SAAS,CAAC;AAC9E,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACjF,CAAC;AAED,SAAS,WAAW,CAAC,KAAa;IAChC,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IACxB,OAAO,EAAE,IAAI,IAAI,CAAC;AACpB,CAAC;AAED,SAAS,YAAY,CAAC,MAAyB;IAC7C,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AACzE,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAqD;IAC/E,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IACtB,OAAO;QACL,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,GAAG,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,KAAK,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxF,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClF,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClF,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxD,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,MAA8B;IAC1D,OAAO;QACL,iBAAiB,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,EAAE,EAAE;QAC3D,OAAO,MAAM,CAAC,EAAE,EAAE;QAClB,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAClE,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KAC7D,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,uBAAuB,CAAC,OAA0C;IACzE,OAAO;QACL,qBAAqB,OAAO,CAAC,MAAM,UAAU;QAC7C,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,GAAG,CAAC;KACzF,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAa,EAAE,OAA0C;IACvF,OAAO;QACL,mBAAmB,KAAK,EAAE;QAC1B,YAAY,OAAO,CAAC,MAAM,EAAE;QAC5B,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,GAAG,CAAC;KACzF,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,sBAAsB,CAC7B,MAAiC,EACjC,SAAqC,EACrC,aAAuD,EACvD,YAAyC,EACzC,YAAyC,EACzC,YAA0D;IAE1D,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACrG,OAAO;QACL,mBAAmB,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,EAAE,EAAE;QAC9C,OAAO,MAAM,CAAC,EAAE,EAAE;QAClB,SAAS,MAAM,CAAC,UAAU,EAAE;QAC5B,SAAS,MAAM,CAAC,IAAI,EAAE;QACtB,YAAY,qBAAqB,CAAC,MAAM,CAAC,EAAE;QAC3C,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;YACtB,CAAC,CAAC,CAAC,cAAc,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,wBAAwB,CAAC,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACxI,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,YAAY,EAAE,cAAc,EAAE,MAAM;YACtC,CAAC,CAAC,CAAC,kBAAkB,YAAY,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9F,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,YAAY,EAAE,eAAe,EAAE,MAAM;YACvC,CAAC,CAAC,CAAC,oBAAoB,YAAY,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACjG,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,YAAY,EAAE,WAAW,EAAE,MAAM;YACnC,CAAC,CAAC,CAAC,aAAa,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAClF,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,6BAA6B,CACpC,KAAiC,EACjC,aAAuD,EACvD,YAAyC,EACzC,iBAAoE,EAAE,EACtE,cAA4D,EAAE;IAE9D,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACrG,MAAM,YAAY,GAAG,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACzD,OAAO;QACL,2BAA2B,KAAK,CAAC,OAAO,CAAC,MAAM,aAAa,KAAK,CAAC,SAAS,CAAC,MAAM,YAAY;QAC9F,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,MAAM,qBAAqB,CAAC,MAAM,CAAC,EAAE,CAAC;QACjH,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;YAC5B,CAAC,CAAC,CAAC,cAAc,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,wBAAwB,CAAC,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9I,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;YAC3B,CAAC,CAAC,CAAC,oBAAoB,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACnF,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;YACxB,CAAC,CAAC,CAAC,mBAAmB,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3E,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,iCAAiC,CACxC,QAAgB,EAChB,WAAmB,EACnB,KAAiC,EACjC,eAA2C,EAC3C,gBAAmC,EACnC,gBAAmC,EACnC,aAAuD,EACvD,YAAyC,EACzC,YAAyC;IAEzC,MAAM,MAAM,GAAG,wBAAwB,CAAC,KAAK,EAAE,YAAY,EAAE,YAAY,CAAC;SACvE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAC/E,QAAQ,CAAC,EAAE,KAAK,KAAK,CAAC,UAAU,IAAI,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAC9E,CAAC,CAAC,CAAC;IACN,OAAO;QACL,QAAQ;QACR,WAAW;QACX,eAAe,EAAE,eAAe,CAAC,GAAG,CAAC,oBAAoB,CAAC;QAC1D,GAAG,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,GAAG,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/E,GAAG,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,GAAG,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/E,cAAc,EAAE,kCAAkC,CAAC,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,CAAC;QACrI,eAAe,EAAE,6BAA6B,CAAC,QAAQ,EAAE,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,CAAC;QAC3H,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClD,CAAC;AACJ,CAAC;AAED,SAAS,gCAAgC,CACvC,KAAiC,EACjC,cAAiC,EACjC,cAAiC,EACjC,aAAuD,EACvD,YAAyC,EACzC,YAAyC;IAEzC,MAAM,SAAS,GAA6C,EAAE,CAAC;IAC/D,MAAM,YAAY,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC;QAC5C,CAAC,CAAC,cAAc;QAChB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACvD,KAAK,MAAM,QAAQ,IAAI,YAAY,EAAE,CAAC;QACpC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,QAAQ,CAAC,IAAI,IAAI,CAAC;QAClF,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,MAAM,eAAe,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;QACtG,SAAS,CAAC,IAAI,CAAC,GAAG,kCAAkC,CAClD,QAAQ,EACR,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,EAAE,EACzB,eAAe,EACf,aAAa,EACb,YAAY,EACZ,YAAY,CACb,CAAC,CAAC;IACL,CAAC;IACD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACrG,KAAK,MAAM,QAAQ,IAAI,cAAc,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;YAChG,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YACrC,SAAS,CAAC,IAAI,CAAC;gBACb,OAAO,EAAE,GAAG,wBAAwB,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,YAAY,EAAE,YAAY,CAAC,QAAQ,SAAS,CAAC,MAAM,6BAA6B,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,wBAAwB,CAAC,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACnR,KAAK,EAAE,SAAS,CAAC,MAAM;aACxB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,kCAAkC,CACzC,QAAgB,EAChB,WAAmB,EACnB,SAAqC,EACrC,aAAuD,EACvD,YAAyC,EACzC,YAAyC;IAEzC,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACzG,MAAM,MAAM,GAAG,IAAI,GAAG,EAAuH,CAAC;IAC9I,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC/G,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,IAAI,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC;QACvF,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;QACnG,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC;QACjB,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC;QACjF,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACxC,YAAY,EAAE,KAAK,CAAC,IAAI;QACxB,aAAa,EAAE,KAAK,CAAC,KAAK;QAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,OAAO,EAAE,GAAG,WAAW,IAAI,yBAAyB,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;KAC/O,CAAC,CAAC,CAAC;AACN,CAAC;AAED,SAAS,6BAA6B,CACpC,QAAgB,EAChB,KAAiC,EACjC,eAA2C,EAC3C,aAAuD,EACvD,YAAyC,EACzC,YAAyC;IAEzC,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;IAChF,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC5C,KAAK,MAAM,QAAQ,IAAI,eAAe,EAAE,CAAC;QACvC,KAAK,MAAM,QAAQ,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;YACpD,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,IAAI,QAAQ,CAAC,EAAE,KAAK,QAAQ;gBAAE,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACjG,CAAC;IACH,CAAC;IACD,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACrG,MAAM,SAAS,GAA6C,EAAE,CAAC;IAC/D,KAAK,MAAM,UAAU,IAAI,iBAAiB,EAAE,CAAC;QAC3C,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,qBAAqB,CAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QACzI,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QACrC,MAAM,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC;QACjE,SAAS,CAAC,IAAI,CAAC;YACb,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;YAC7E,KAAK,EAAE,SAAS,CAAC,MAAM;YACvB,OAAO,EAAE,GAAG,aAAa,QAAQ,SAAS,CAAC,MAAM,0BAA0B,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,wBAAwB,CAAC,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;SAC9Q,CAAC,CAAC;IACL,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,wBAAwB,CAC/B,KAAiC,EACjC,YAAyC,EACzC,YAAyC;IAEzC,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAClE,MAAM,MAAM,GAAwC,EAAE,CAAC;IACvD,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QACnC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YACzC,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,2BAA2B;gBACjC,QAAQ,EAAE,SAAS;gBACnB,QAAQ,EAAE,MAAM,CAAC,EAAE;gBACnB,OAAO,EAAE,GAAG,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,EAAE,gCAAgC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG;aACtJ,CAAC,CAAC;QACL,CAAC;QACD,KAAK,MAAM,MAAM,IAAI,2BAA2B,CAAC,MAAM,CAAC,EAAE,CAAC;YACzD,IAAI,MAAM,CAAC,IAAI,KAAK,cAAc,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;gBACnE,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,8BAA8B;oBACpC,QAAQ,EAAE,SAAS;oBACnB,QAAQ,EAAE,MAAM,CAAC,EAAE;oBACnB,QAAQ,EAAE,qBAAqB,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,EAAE,YAAY,EAAE,YAAY,CAAC;oBACtH,OAAO,EAAE,GAAG,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,EAAE,2CAA2C,MAAM,CAAC,EAAE,GAAG;iBAC7F,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IACD,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QACvC,KAAK,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAU,EAAE,CAAC;YACvF,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC9D,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,kCAAkC;oBACxC,QAAQ,EAAE,SAAS;oBACnB,UAAU,EAAE,QAAQ,CAAC,EAAE;oBACvB,QAAQ,EAAE,qBAAqB,CAAC,QAAQ,EAAE,YAAY,EAAE,YAAY,CAAC;oBACrE,OAAO,EAAE,YAAY,QAAQ,CAAC,EAAE,IAAI,IAAI,uCAAuC,QAAQ,CAAC,EAAE,GAAG;iBAC9F,CAAC,CAAC;YACL,CAAC;YACD,IAAI,QAAQ,CAAC,IAAI,KAAK,cAAc,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;gBACvE,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,kCAAkC;oBACxC,QAAQ,EAAE,SAAS;oBACnB,UAAU,EAAE,QAAQ,CAAC,EAAE;oBACvB,QAAQ,EAAE,qBAAqB,CAAC,QAAQ,EAAE,YAAY,EAAE,YAAY,CAAC;oBACrE,OAAO,EAAE,YAAY,QAAQ,CAAC,EAAE,IAAI,IAAI,6CAA6C,QAAQ,CAAC,EAAE,GAAG;iBACpG,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,2BAA2B,CAAC,MAAiC;IACpE,MAAM,OAAO,GAA8B,EAAE,CAAC;IAC9C,MAAM,UAAU,GAAG,CAAC,MAAuD,EAAE,EAAE;QAC7E,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,IAAI,SAAS,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC;YAAE,OAAO;QAC/G,OAAO,CAAC,IAAI,CAAC;YACX,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACjD,CAAC,CAAC;IACL,CAAC,CAAC;IACF,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC1B,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAClC,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,OAAO,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,eAAe;QAAE,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACrH,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,qBAAqB,CAAC,QAAyB,EAAE,QAAgB;IACxE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,QAAQ,CAAC;WACpE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,KAAK,QAAQ,IAAI,QAAQ,CAAC,EAAE,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC;AACtE,CAAC;AAED,SAAS,qBAAqB,CAAC,QAAyB,EAAE,QAAgB;IACxE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,cAAc,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,QAAQ,CAAC;WAC1E,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,KAAK,cAAc,IAAI,QAAQ,CAAC,EAAE,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC;AAC5E,CAAC;AAED,SAAS,qBAAqB,CAC5B,QAAiC,EACjC,YAAyC,EACzC,YAAyC;IAEzC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK;WACvB,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ;YAC5B,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/B,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,cAAc;gBAChC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC/B,CAAC,CAAC,SAAS,CAAC,CAAC;IACnB,OAAO;QACL,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,EAAE,EAAE,QAAQ,CAAC,EAAE;QACf,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5B,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,QAAwD;IACrF,OAAO,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,KAAK,QAAQ,CAAC,EAAE;QACrD,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,EAAE,KAAK,QAAQ,CAAC,KAAK,GAAG;QACvD,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;AACxC,CAAC;AAED,SAAS,wBAAwB,CAC/B,QAAiC,EACjC,YAAyC,EACzC,YAAyC;IAEzC,MAAM,OAAO,GAAG,qBAAqB,CAAC,QAAQ,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;IAC5E,OAAO,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,EAAE,CAAC;AACrC,CAAC;AAED,SAAS,yBAAyB,CAAC,KAAa,EAAE,IAAY,EAAE,KAAa;IAC3E,OAAO,GAAG,KAAK,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC;AACrC,CAAC;AAED,SAAS,qBAAqB,CAAC,MAAiC;IAC9D,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAC/B,IAAI,OAAO,CAAC,MAAM,KAAK,UAAU;QAAE,OAAO,aAAa,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACzH,MAAM,KAAK,GAAG;QACZ,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;QAC9D,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,WAAW,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;QACxF,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,cAAc,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;QAC1E,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;QACpH,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,gCAAgC,CAAC;YAC1D,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI;YACzB,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE;YACrB,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACjE,EAAE,IAAI,GAAG,EAAE,EAAE,IAAI,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;KAClC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC9C,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC;AACxC,CAAC;AAED,SAAS,wBAAwB,CAC/B,QAAyB,EACzB,cAA2C,EAC3C,YAAyC,EACzC,YAAyC;IAEzC,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IACxD,OAAO;QACL,gCAAgC,CAAC,QAAQ,CAAC,IAAI,EAAE,YAAY,EAAE,YAAY,CAAC;QAC3E,4BAA4B,CAAC,QAAQ,EAAE,cAAc,CAAC;QACtD,KAAK;QACL,gCAAgC,CAAC,QAAQ,CAAC,EAAE,EAAE,YAAY,EAAE,YAAY,CAAC;KAC1E,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACd,CAAC;AAED,SAAS,gCAAgC,CACvC,QAAiC,EACjC,YAAyC,EACzC,YAAyC;IAEzC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK;WACvB,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ;YAC5B,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/B,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,cAAc;gBAChC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC/B,CAAC,CAAC,SAAS,CAAC,CAAC;IACnB,OAAO,KAAK,IAAI,KAAK,KAAK,QAAQ,CAAC,EAAE;QACnC,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,EAAE,KAAK,KAAK,GAAG;QAC9C,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;AACxC,CAAC;AAED,SAAS,4BAA4B,CACnC,QAAyB,EACzB,cAA2C;IAE3C,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,IAAI,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAClE,OAAO,KAAK,IAAI,KAAK,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,KAAK,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;AAC1F,CAAC;AAED,SAAS,UAAU,CAAC,KAAsB;IACxC,OAAO,IAAI,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,GAAG,CAAC;AAChD,CAAC;AAED,SAAS,+BAA+B,CAAC,KAAiC;IACxE,OAAO;QACL,GAAG,KAAK;QACR,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC;QACtD,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,oBAAoB,CAAC;QACpD,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS;KAC7D,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CAAC,MAAiC;IACnE,OAAO;QACL,GAAG,MAAM;QACT,QAAQ,EAAE,eAAe,CAAC,MAAM,CAAC,QAAQ,CAA0C;QACnF,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS;QACtI,aAAa,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,SAAS;QAC7E,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;QAChD,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS;QAC9D,OAAO,EAAE;YACP,GAAG,MAAM,CAAC,OAAO;YACjB,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS;YACxE,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM;gBAC3B,CAAC,CAAC;oBACE,GAAG,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE;oBACrC,GAAG,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE;oBACrC,MAAM,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE;oBAC3C,IAAI,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE;iBACxC;gBACH,CAAC,CAAC,SAAS;YACb,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS;YACpF,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;YAC/D,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS;YACpF,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM;gBAC3B,CAAC,CAAC;oBACE,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM;oBACxB,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS;iBAC7F;gBACH,CAAC,CAAC,SAAS;YACb,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS;SAC/E;KACF,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,QAAyB;IACrD,OAAO;QACL,GAAG,QAAQ;QACX,IAAI,EAAE,EAAE,GAAG,QAAQ,CAAC,IAAI,EAAE;QAC1B,EAAE,EAAE,EAAE,GAAG,QAAQ,CAAC,EAAE,EAAE;QACtB,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;QACpD,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS;KACnE,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,UAAuC;IACxE,OAAO;QACL,GAAG,UAAU;QACb,WAAW,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;QAC7E,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS;KACvE,CAAC;AACJ,CAAC;AAED,SAAS,2BAA2B,CAAC,UAAyC;IAC5E,OAAO;QACL,GAAG,UAAU;QACb,gBAAgB,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,SAAS;QAC5F,cAAc,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS;QACtF,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS;KACvE,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAI,KAAQ;IAClC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACtD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAM,CAAC;AAChD,CAAC"}
1
+ {"version":3,"file":"local-editor-agent-context.js","sourceRoot":"","sources":["../src/local-editor-agent-context.ts"],"names":[],"mappings":"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","sourcesContent":["import type { LocalEditorBrowserUiHierarchyItem } from '@fps-games/editor-browser';\nimport {\n EDITOR_AGENT_CONTEXT_SCHEMA_VERSION,\n type EditorAgentBounds,\n type EditorAgentContextSemantics,\n type EditorAgentRegionBindingContext,\n type EditorAgentSceneObject,\n type EditorAgentSceneObjectContext,\n type EditorAgentSceneObjectSetContext,\n type EditorAgentSpatialMarkerContext,\n type EditorAgentSpatialRelationGraphContext,\n type EditorAgentSource,\n type EditorAgentTransform,\n type EditorAgentVec3,\n type ResolvedSpatialMarkerGraph,\n type ResolvedSpatialMarkerNode,\n type SpatialMarkerTypeDefinition,\n type SpatialRelation,\n type SpatialRelationTypeDefinition,\n} from '@fps-games/editor-protocol';\n\nexport interface LocalEditorAgentContextObjectInput<TDocument = unknown> {\n document: TDocument;\n objectId: string;\n hierarchyItems?: readonly LocalEditorBrowserUiHierarchyItem[];\n projectionNode?: unknown | null;\n source?: Partial<EditorAgentSource>;\n createdAt?: number;\n semantics?: EditorAgentContextSemantics | null;\n}\n\nexport interface LocalEditorAgentContextObjectSetInput<TDocument = unknown> {\n document: TDocument;\n objectIds: readonly string[];\n hierarchyItems?: readonly LocalEditorBrowserUiHierarchyItem[];\n projectionNodes?: Record<string, unknown | null | undefined>;\n source?: Partial<EditorAgentSource>;\n createdAt?: number;\n semantics?: EditorAgentContextSemantics | null;\n}\n\nexport interface LocalEditorAgentContextRegionBindingInput<TDocument = unknown>\n extends LocalEditorAgentContextObjectSetInput<TDocument> {\n regionLabel?: string;\n relationshipType?: string;\n relationshipDescription?: string;\n}\n\nexport interface LocalEditorAgentContextSpatialMarkerInput<TDocument = unknown> {\n document: TDocument;\n marker: ResolvedSpatialMarkerNode;\n graph?: ResolvedSpatialMarkerGraph | null;\n directRelations?: readonly SpatialRelation[];\n relatedMarkerIds?: readonly string[];\n relatedObjectIds?: readonly string[];\n hierarchyItems?: readonly LocalEditorBrowserUiHierarchyItem[];\n markerTypes?: readonly SpatialMarkerTypeDefinition[];\n relationTypes?: readonly SpatialRelationTypeDefinition[];\n source?: Partial<EditorAgentSource>;\n createdAt?: number;\n semantics?: EditorAgentContextSemantics | null;\n}\n\nexport interface LocalEditorAgentContextSpatialRelationGraphInput<TDocument = unknown> {\n document: TDocument;\n graph: ResolvedSpatialMarkerGraph;\n focusMarkerIds?: readonly string[];\n focusObjectIds?: readonly string[];\n hierarchyItems?: readonly LocalEditorBrowserUiHierarchyItem[];\n markerTypes?: readonly SpatialMarkerTypeDefinition[];\n relationTypes?: readonly SpatialRelationTypeDefinition[];\n source?: Partial<EditorAgentSource>;\n createdAt?: number;\n semantics?: EditorAgentContextSemantics | null;\n}\n\ninterface LocalEditorAgentSpatialRelationEndpointSummary {\n kind: string;\n id: string;\n label?: string;\n}\n\ninterface LocalEditorAgentSpatialRelationSummary {\n relationId?: string;\n relationType?: string;\n relationLabel?: string;\n directed?: boolean;\n from?: LocalEditorAgentSpatialRelationEndpointSummary;\n to?: LocalEditorAgentSpatialRelationEndpointSummary;\n summary: string;\n count?: number;\n}\n\ninterface LocalEditorAgentSpatialGraphIssue {\n code: string;\n severity: 'warning' | 'error';\n message: string;\n relationId?: string;\n markerId?: string;\n endpoint?: LocalEditorAgentSpatialRelationEndpointSummary;\n}\n\ninterface LocalEditorAgentSpatialRelationNeighborhood {\n markerId: string;\n markerLabel?: string;\n oneHopRelations: SpatialRelation[];\n relatedMarkerIds?: string[];\n relatedObjectIds?: string[];\n twoHopSummaries?: LocalEditorAgentSpatialRelationSummary[];\n localSummaries?: LocalEditorAgentSpatialRelationSummary[];\n graphIssues?: LocalEditorAgentSpatialGraphIssue[];\n}\n\nexport function createLocalEditorSceneObjectAgentContext<TDocument>(\n input: LocalEditorAgentContextObjectInput<TDocument>,\n): EditorAgentSceneObjectContext | null {\n const objectId = normalizeId(input.objectId);\n if (!objectId) return null;\n const hierarchyById = createHierarchyMap(input.hierarchyItems);\n const object = createAgentSceneObject(objectId, hierarchyById, input.projectionNode);\n const label = object.label ?? object.name ?? object.id;\n return {\n schemaVersion: EDITOR_AGENT_CONTEXT_SCHEMA_VERSION,\n id: createAgentContextId('scene-object', [objectId], input.createdAt),\n kind: 'scene-object',\n label,\n summary: summarizeSceneObject(object),\n createdAt: input.createdAt ?? Date.now(),\n source: createAgentSource('hierarchy', input.source),\n object,\n ...pickAgentSemantics(input.semantics),\n };\n}\n\nexport function createLocalEditorSceneObjectSetAgentContext<TDocument>(\n input: LocalEditorAgentContextObjectSetInput<TDocument>,\n): EditorAgentSceneObjectSetContext | null {\n const objectIds = normalizeIds(input.objectIds);\n if (objectIds.length === 0) return null;\n const hierarchyById = createHierarchyMap(input.hierarchyItems);\n const objects = objectIds.map(id => createAgentSceneObject(id, hierarchyById, input.projectionNodes?.[id]));\n return {\n schemaVersion: EDITOR_AGENT_CONTEXT_SCHEMA_VERSION,\n id: createAgentContextId('scene-object-set', objectIds, input.createdAt),\n kind: 'scene-object-set',\n label: `${objects.length} selected objects`,\n summary: summarizeSceneObjectSet(objects),\n createdAt: input.createdAt ?? Date.now(),\n source: createAgentSource('selection', input.source),\n objectIds,\n objects,\n ...pickAgentSemantics(input.semantics),\n };\n}\n\nexport function createLocalEditorRegionBindingAgentContext<TDocument>(\n input: LocalEditorAgentContextRegionBindingInput<TDocument>,\n): EditorAgentRegionBindingContext | null {\n const objectIds = normalizeIds(input.objectIds);\n if (objectIds.length === 0) return null;\n const hierarchyById = createHierarchyMap(input.hierarchyItems);\n const objects = objectIds.map(id => createAgentSceneObject(id, hierarchyById, input.projectionNodes?.[id]));\n const bounds = mergeAgentBounds(objects.map(object => object.bounds).filter((value): value is EditorAgentBounds => !!value));\n const label = input.regionLabel?.trim() || `${objects.length} objects region`;\n return {\n schemaVersion: EDITOR_AGENT_CONTEXT_SCHEMA_VERSION,\n id: createAgentContextId('region-binding', objectIds, input.createdAt),\n kind: 'region-binding',\n label,\n summary: summarizeRegionBinding(label, objects),\n createdAt: input.createdAt ?? Date.now(),\n source: createAgentSource('region-binding', input.source),\n region: {\n id: `region:${objectIds.join('+')}`,\n label,\n ...(bounds ? { bounds } : {}),\n objectIds,\n },\n relationship: {\n type: input.relationshipType?.trim() || 'selection-region',\n description: input.relationshipDescription?.trim()\n || 'The selected scene objects are being described to the Agent as a region relationship.',\n },\n ...pickAgentSemantics(input.semantics),\n };\n}\n\nexport function createLocalEditorSpatialMarkerAgentContext<TDocument>(\n input: LocalEditorAgentContextSpatialMarkerInput<TDocument>,\n): EditorAgentSpatialMarkerContext | null {\n const markerId = normalizeId(input.marker.id);\n if (!markerId || input.marker.spatial.status !== 'resolved') return null;\n const label = input.marker.label || markerId;\n const markerLabels = createMarkerLabelMap(input.graph?.markers ?? [input.marker]);\n const objectLabels = createObjectLabelMap(input.hierarchyItems);\n const relationTypes = input.relationTypes ?? [];\n const graph = input.graph ?? {\n schemaVersion: 1,\n markers: [input.marker],\n relations: input.directRelations ? [...input.directRelations] : [],\n };\n const relationNeighborhood = createSpatialRelationNeighborhood(\n markerId,\n label,\n graph,\n input.directRelations ?? [],\n input.relatedMarkerIds ?? [],\n input.relatedObjectIds ?? [],\n relationTypes,\n markerLabels,\n objectLabels,\n );\n const context = {\n schemaVersion: EDITOR_AGENT_CONTEXT_SCHEMA_VERSION,\n id: createAgentContextId('spatial-marker', [markerId], input.createdAt),\n kind: 'spatial-marker',\n label,\n summary: summarizeSpatialMarker(input.marker, input.directRelations ?? [], relationTypes, markerLabels, objectLabels, relationNeighborhood),\n createdAt: input.createdAt ?? Date.now(),\n source: createAgentSource('marker', input.source),\n marker: cloneResolvedSpatialMarker(input.marker),\n directRelations: input.directRelations?.map(cloneSpatialRelation) ?? [],\n ...(input.relatedMarkerIds?.length ? { relatedMarkerIds: [...input.relatedMarkerIds] } : {}),\n ...(input.relatedObjectIds?.length ? { relatedObjectIds: [...input.relatedObjectIds] } : {}),\n ...(input.markerTypes?.length ? { markerTypes: input.markerTypes.map(cloneMarkerTypeDefinition) } : {}),\n ...(input.relationTypes?.length ? { relationTypes: input.relationTypes.map(cloneRelationTypeDefinition) } : {}),\n relationNeighborhood,\n ...pickAgentSemantics(input.semantics),\n };\n return context as EditorAgentSpatialMarkerContext;\n}\n\nexport function createLocalEditorSpatialRelationGraphAgentContext<TDocument>(\n input: LocalEditorAgentContextSpatialRelationGraphInput<TDocument>,\n): EditorAgentSpatialRelationGraphContext | null {\n if (input.graph.markers.length === 0) return null;\n if (input.graph.markers.some(marker => marker.spatial.status !== 'resolved')) return null;\n const markerIds = input.graph.markers.map(marker => marker.id);\n const objectLabels = createObjectLabelMap(input.hierarchyItems);\n const markerLabels = createMarkerLabelMap(input.graph.markers);\n const relationTypes = input.relationTypes ?? [];\n const graphIssues = createSpatialGraphIssues(input.graph, markerLabels, objectLabels);\n const focusSummaries = createSpatialGraphFocusSummaries(\n input.graph,\n input.focusMarkerIds ?? [],\n input.focusObjectIds ?? [],\n relationTypes,\n markerLabels,\n objectLabels,\n );\n const context = {\n schemaVersion: EDITOR_AGENT_CONTEXT_SCHEMA_VERSION,\n id: createAgentContextId('spatial-relation-graph', markerIds, input.createdAt),\n kind: 'spatial-relation-graph',\n label: `${input.graph.markers.length} spatial markers`,\n summary: summarizeSpatialRelationGraph(input.graph, relationTypes, objectLabels, focusSummaries, graphIssues),\n createdAt: input.createdAt ?? Date.now(),\n source: createAgentSource('marker-graph', input.source),\n graph: cloneResolvedSpatialMarkerGraph(input.graph),\n ...(input.focusMarkerIds?.length ? { focusMarkerIds: [...input.focusMarkerIds] } : {}),\n ...(input.focusObjectIds?.length ? { focusObjectIds: [...input.focusObjectIds] } : {}),\n ...(input.markerTypes?.length ? { markerTypes: input.markerTypes.map(cloneMarkerTypeDefinition) } : {}),\n ...(input.relationTypes?.length ? { relationTypes: input.relationTypes.map(cloneRelationTypeDefinition) } : {}),\n ...(graphIssues.length ? { graphIssues } : {}),\n ...(focusSummaries.length ? { focusSummaries } : {}),\n ...pickAgentSemantics(input.semantics),\n };\n return context as EditorAgentSpatialRelationGraphContext;\n}\n\nfunction createAgentSceneObject(\n objectId: string,\n hierarchyById: Map<string, LocalEditorBrowserUiHierarchyItem>,\n projectionNode: unknown,\n): EditorAgentSceneObject {\n const hierarchyItem = hierarchyById.get(objectId) ?? null;\n const projection = readRecord(projectionNode);\n const name = readString(projection?.name) || hierarchyItem?.label || objectId;\n const object: EditorAgentSceneObject = {\n id: objectId,\n name,\n label: hierarchyItem?.label ?? name,\n hierarchyPath: createHierarchyPath(objectId, hierarchyById),\n };\n const objectKind = readObjectKind(hierarchyItem, projection);\n if (objectKind) object.objectKind = objectKind;\n const transform = readAgentTransform(projection?.transform);\n if (transform) object.transform = transform;\n const bounds = readAgentBounds(projection);\n if (bounds) object.bounds = bounds;\n const assetRefs = readAssetRefs(projection?.asset);\n if (assetRefs.length > 0) object.assetRefs = assetRefs;\n return object;\n}\n\nfunction createAgentContextId(kind: string, ids: readonly string[], createdAt = Date.now()): string {\n return `${kind}:${ids.join('+')}:${createdAt}`;\n}\n\nfunction createAgentSource(\n surface: EditorAgentSource['surface'],\n source: Partial<EditorAgentSource> | undefined,\n): EditorAgentSource {\n return {\n editor: 'fps-game-editor',\n surface,\n ...(source?.projectId ? { projectId: source.projectId } : {}),\n ...(source?.projectName ? { projectName: source.projectName } : {}),\n };\n}\n\nfunction createHierarchyMap(items: readonly LocalEditorBrowserUiHierarchyItem[] | undefined): Map<string, LocalEditorBrowserUiHierarchyItem> {\n return new Map((items ?? []).map(item => [item.id, item]));\n}\n\nfunction createObjectLabelMap(items: readonly LocalEditorBrowserUiHierarchyItem[] | undefined): Map<string, string> {\n return new Map((items ?? [])\n .filter(item => item.role === undefined || item.role === 'object')\n .map(item => [item.id, item.label || item.id]));\n}\n\nfunction createMarkerLabelMap(markers: readonly ResolvedSpatialMarkerNode[]): Map<string, string> {\n return new Map(markers.map(marker => [marker.id, marker.label || marker.id]));\n}\n\nfunction createHierarchyPath(objectId: string, byId: Map<string, LocalEditorBrowserUiHierarchyItem>): string | undefined {\n const path: string[] = [];\n const seen = new Set<string>();\n let cursor = byId.get(objectId) ?? null;\n while (cursor && !seen.has(cursor.id)) {\n seen.add(cursor.id);\n path.unshift(cursor.label || cursor.id);\n cursor = cursor.parentId ? byId.get(cursor.parentId) ?? null : null;\n }\n return path.length > 0 ? path.join(' / ') : undefined;\n}\n\nfunction readObjectKind(\n hierarchyItem: LocalEditorBrowserUiHierarchyItem | null,\n projection: Record<string, unknown> | null,\n): string | undefined {\n const runtimeKind = readString(projection?.runtimeKind);\n if (runtimeKind) return runtimeKind;\n const helperKind = readString(projection?.helperKind);\n if (helperKind) return helperKind;\n const primitive = readRecord(projection?.primitive);\n const primitiveShape = readString(primitive?.shape);\n if (primitiveShape) return `primitive:${primitiveShape}`;\n const asset = readRecord(projection?.asset);\n if (asset) return 'asset';\n return hierarchyItem?.role;\n}\n\nfunction readAgentTransform(value: unknown): EditorAgentTransform | undefined {\n const record = readRecord(value);\n if (!record) return undefined;\n const position = readVec3(record.position);\n const rotation = readVec3(record.rotation);\n const scale = readVec3(record.scale);\n if (!position && !rotation && !scale) return undefined;\n return {\n ...(position ? { position } : {}),\n ...(rotation ? { rotation } : {}),\n ...(scale ? { scale } : {}),\n };\n}\n\nfunction readAgentBounds(value: unknown): EditorAgentBounds | undefined {\n const record = readRecord(value);\n if (!record) return undefined;\n const boundsRecord = readRecord(record.bounds) ?? record;\n const min = readVec3(boundsRecord.min);\n const max = readVec3(boundsRecord.max);\n const size = readVec3(boundsRecord.size);\n const center = readVec3(boundsRecord.center);\n if (!min && !max && !size && !center) return undefined;\n return {\n ...(min ? { min } : {}),\n ...(max ? { max } : {}),\n ...(size ? { size } : {}),\n ...(center ? { center } : {}),\n };\n}\n\nfunction mergeAgentBounds(boundsList: readonly EditorAgentBounds[]): EditorAgentBounds | undefined {\n const minMaxBounds = boundsList\n .map(bounds => bounds.min && bounds.max ? { min: bounds.min, max: bounds.max } : null)\n .filter((bounds): bounds is { min: EditorAgentVec3; max: EditorAgentVec3 } => !!bounds);\n if (minMaxBounds.length === 0) return undefined;\n const min = {\n x: Math.min(...minMaxBounds.map(bounds => bounds.min.x)),\n y: Math.min(...minMaxBounds.map(bounds => bounds.min.y)),\n z: Math.min(...minMaxBounds.map(bounds => bounds.min.z)),\n };\n const max = {\n x: Math.max(...minMaxBounds.map(bounds => bounds.max.x)),\n y: Math.max(...minMaxBounds.map(bounds => bounds.max.y)),\n z: Math.max(...minMaxBounds.map(bounds => bounds.max.z)),\n };\n return {\n min,\n max,\n size: {\n x: max.x - min.x,\n y: max.y - min.y,\n z: max.z - min.z,\n },\n center: {\n x: (min.x + max.x) / 2,\n y: (min.y + max.y) / 2,\n z: (min.z + max.z) / 2,\n },\n };\n}\n\nfunction readAssetRefs(value: unknown): string[] {\n const asset = readRecord(value);\n if (!asset) return [];\n return [readString(asset.id), readString(asset.sourceId)].filter((ref): ref is string => !!ref);\n}\n\nfunction readVec3(value: unknown): EditorAgentVec3 | undefined {\n const record = readRecord(value);\n if (!record) return undefined;\n const x = readFiniteNumber(record.x);\n const y = readFiniteNumber(record.y);\n const z = readFiniteNumber(record.z);\n return x == null || y == null || z == null ? undefined : { x, y, z };\n}\n\nfunction readRecord(value: unknown): Record<string, unknown> | null {\n return value && typeof value === 'object' ? value as Record<string, unknown> : null;\n}\n\nfunction readString(value: unknown): string | undefined {\n return typeof value === 'string' && value.trim() ? value.trim() : undefined;\n}\n\nfunction readFiniteNumber(value: unknown): number | undefined {\n return typeof value === 'number' && Number.isFinite(value) ? value : undefined;\n}\n\nfunction normalizeId(value: string): string | null {\n const id = value.trim();\n return id || null;\n}\n\nfunction normalizeIds(values: readonly string[]): string[] {\n return [...new Set(values.map(value => value.trim()).filter(Boolean))];\n}\n\nfunction pickAgentSemantics(value: EditorAgentContextSemantics | null | undefined): EditorAgentContextSemantics {\n if (!value) return {};\n return {\n ...(value.domainKind ? { domainKind: value.domainKind } : {}),\n ...(value.domainRole ? { domainRole: value.domainRole } : {}),\n ...(value.functionLabel ? { functionLabel: value.functionLabel } : {}),\n ...(value.functionDescription ? { functionDescription: value.functionDescription } : {}),\n ...(value.domainHints ? { domainHints: value.domainHints } : {}),\n ...(value.bindingCandidates ? { bindingCandidates: value.bindingCandidates } : {}),\n ...(value.sourceRefs ? { sourceRefs: value.sourceRefs } : {}),\n ...(value.relationshipHints ? { relationshipHints: value.relationshipHints } : {}),\n ...(value.metadata ? { metadata: value.metadata } : {}),\n };\n}\n\nfunction summarizeSceneObject(object: EditorAgentSceneObject): string {\n return [\n `Scene Object: ${object.label ?? object.name ?? object.id}`,\n `id: ${object.id}`,\n ...(object.hierarchyPath ? [`path: ${object.hierarchyPath}`] : []),\n ...(object.objectKind ? [`kind: ${object.objectKind}`] : []),\n ].join('\\n');\n}\n\nfunction summarizeSceneObjectSet(objects: readonly EditorAgentSceneObject[]): string {\n return [\n `Scene Object Set: ${objects.length} objects`,\n ...objects.map(object => `- ${object.label ?? object.name ?? object.id} (${object.id})`),\n ].join('\\n');\n}\n\nfunction summarizeRegionBinding(label: string, objects: readonly EditorAgentSceneObject[]): string {\n return [\n `Region Binding: ${label}`,\n `objects: ${objects.length}`,\n ...objects.map(object => `- ${object.label ?? object.name ?? object.id} (${object.id})`),\n ].join('\\n');\n}\n\nfunction summarizeSpatialMarker(\n marker: ResolvedSpatialMarkerNode,\n relations: readonly SpatialRelation[],\n relationTypes: readonly SpatialRelationTypeDefinition[],\n markerLabels: ReadonlyMap<string, string>,\n objectLabels: ReadonlyMap<string, string>,\n neighborhood?: LocalEditorAgentSpatialRelationNeighborhood,\n): string {\n const relationLabels = new Map(relationTypes.map(definition => [definition.type, definition.label]));\n return [\n `Spatial Marker: ${marker.label || marker.id}`,\n `id: ${marker.id}`,\n `type: ${marker.markerType}`,\n `kind: ${marker.kind}`,\n `spatial: ${summarizeSpatialFacts(marker)}`,\n ...(relations.length > 0\n ? [`relations: ${relations.map(relation => summarizeSpatialRelation(relation, relationLabels, markerLabels, objectLabels)).join('; ')}`]\n : []),\n ...(neighborhood?.localSummaries?.length\n ? [`local summary: ${neighborhood.localSummaries.map(summary => summary.summary).join('; ')}`]\n : []),\n ...(neighborhood?.twoHopSummaries?.length\n ? [`two-hop context: ${neighborhood.twoHopSummaries.map(summary => summary.summary).join('; ')}`]\n : []),\n ...(neighborhood?.graphIssues?.length\n ? [`warnings: ${neighborhood.graphIssues.map(issue => issue.message).join('; ')}`]\n : []),\n ].join('\\n');\n}\n\nfunction summarizeSpatialRelationGraph(\n graph: ResolvedSpatialMarkerGraph,\n relationTypes: readonly SpatialRelationTypeDefinition[],\n objectLabels: ReadonlyMap<string, string>,\n focusSummaries: readonly LocalEditorAgentSpatialRelationSummary[] = [],\n graphIssues: readonly LocalEditorAgentSpatialGraphIssue[] = [],\n): string {\n const relationLabels = new Map(relationTypes.map(definition => [definition.type, definition.label]));\n const markerLabels = createMarkerLabelMap(graph.markers);\n return [\n `Spatial Relation Graph: ${graph.markers.length} markers, ${graph.relations.length} relations`,\n ...graph.markers.map(marker => `- ${marker.label || marker.id} (${marker.id}): ${summarizeSpatialFacts(marker)}`),\n ...(graph.relations.length > 0\n ? [`Relations: ${graph.relations.map(relation => summarizeSpatialRelation(relation, relationLabels, markerLabels, objectLabels)).join('; ')}`]\n : []),\n ...(focusSummaries.length > 0\n ? [`Focus summaries: ${focusSummaries.map(summary => summary.summary).join('; ')}`]\n : []),\n ...(graphIssues.length > 0\n ? [`Graph warnings: ${graphIssues.map(issue => issue.message).join('; ')}`]\n : []),\n ].join('\\n');\n}\n\nfunction createSpatialRelationNeighborhood(\n markerId: string,\n markerLabel: string,\n graph: ResolvedSpatialMarkerGraph,\n directRelations: readonly SpatialRelation[],\n relatedMarkerIds: readonly string[],\n relatedObjectIds: readonly string[],\n relationTypes: readonly SpatialRelationTypeDefinition[],\n markerLabels: ReadonlyMap<string, string>,\n objectLabels: ReadonlyMap<string, string>,\n): LocalEditorAgentSpatialRelationNeighborhood {\n const issues = createSpatialGraphIssues(graph, markerLabels, objectLabels)\n .filter(issue => issue.markerId === markerId || graph.relations.some(relation => (\n relation.id === issue.relationId && relationTouchesMarker(relation, markerId)\n )));\n return {\n markerId,\n markerLabel,\n oneHopRelations: directRelations.map(cloneSpatialRelation),\n ...(relatedMarkerIds.length ? { relatedMarkerIds: [...relatedMarkerIds] } : {}),\n ...(relatedObjectIds.length ? { relatedObjectIds: [...relatedObjectIds] } : {}),\n localSummaries: createMarkerLocalRelationSummaries(markerId, markerLabel, directRelations, relationTypes, markerLabels, objectLabels),\n twoHopSummaries: createTwoHopRelationSummaries(markerId, graph, directRelations, relationTypes, markerLabels, objectLabels),\n ...(issues.length ? { graphIssues: issues } : {}),\n };\n}\n\nfunction createSpatialGraphFocusSummaries(\n graph: ResolvedSpatialMarkerGraph,\n focusMarkerIds: readonly string[],\n focusObjectIds: readonly string[],\n relationTypes: readonly SpatialRelationTypeDefinition[],\n markerLabels: ReadonlyMap<string, string>,\n objectLabels: ReadonlyMap<string, string>,\n): LocalEditorAgentSpatialRelationSummary[] {\n const summaries: LocalEditorAgentSpatialRelationSummary[] = [];\n const focusMarkers = focusMarkerIds.length > 0\n ? focusMarkerIds\n : graph.markers.slice(0, 3).map(marker => marker.id);\n for (const markerId of focusMarkers) {\n const marker = graph.markers.find(candidate => candidate.id === markerId) ?? null;\n if (!marker) continue;\n const directRelations = graph.relations.filter(relation => relationTouchesMarker(relation, markerId));\n summaries.push(...createMarkerLocalRelationSummaries(\n markerId,\n marker.label || marker.id,\n directRelations,\n relationTypes,\n markerLabels,\n objectLabels,\n ));\n }\n if (focusObjectIds.length > 0) {\n const relationLabels = new Map(relationTypes.map(definition => [definition.type, definition.label]));\n for (const objectId of focusObjectIds) {\n const relations = graph.relations.filter(relation => relationTouchesObject(relation, objectId));\n if (relations.length === 0) continue;\n summaries.push({\n summary: `${formatEndpointHumanLabel({ kind: 'scene-object', id: objectId }, markerLabels, objectLabels)} has ${relations.length} direct marker relations: ${relations.map(relation => summarizeSpatialRelation(relation, relationLabels, markerLabels, objectLabels)).join('; ')}`,\n count: relations.length,\n });\n }\n }\n return summaries;\n}\n\nfunction createMarkerLocalRelationSummaries(\n markerId: string,\n markerLabel: string,\n relations: readonly SpatialRelation[],\n relationTypes: readonly SpatialRelationTypeDefinition[],\n markerLabels: ReadonlyMap<string, string>,\n objectLabels: ReadonlyMap<string, string>,\n): LocalEditorAgentSpatialRelationSummary[] {\n const relationTypeLabels = new Map(relationTypes.map(definition => [definition.type, definition.label]));\n const groups = new Map<string, { type: string; label: string; count: number; endpoints: LocalEditorAgentSpatialRelationEndpointSummary[] }>();\n for (const relation of relations) {\n const related = relation.from.kind === 'marker' && relation.from.id === markerId ? relation.to : relation.from;\n const label = relation.label || relationTypeLabels.get(relation.type) || relation.type;\n const group = groups.get(relation.type) ?? { type: relation.type, label, count: 0, endpoints: [] };\n group.count += 1;\n group.endpoints.push(createEndpointSummary(related, markerLabels, objectLabels));\n groups.set(relation.type, group);\n }\n return [...groups.values()].map(group => ({\n relationType: group.type,\n relationLabel: group.label,\n count: group.count,\n summary: `${markerLabel} ${formatRelationCountPhrase(group.label, group.type, group.count)}: ${group.endpoints.slice(0, 6).map(formatEndpointSummary).join(', ')}${group.endpoints.length > 6 ? `, +${group.endpoints.length - 6} more` : ''}`,\n }));\n}\n\nfunction createTwoHopRelationSummaries(\n markerId: string,\n graph: ResolvedSpatialMarkerGraph,\n directRelations: readonly SpatialRelation[],\n relationTypes: readonly SpatialRelationTypeDefinition[],\n markerLabels: ReadonlyMap<string, string>,\n objectLabels: ReadonlyMap<string, string>,\n): LocalEditorAgentSpatialRelationSummary[] {\n const directRelationIds = new Set(directRelations.map(relation => relation.id));\n const neighborMarkerIds = new Set<string>();\n for (const relation of directRelations) {\n for (const endpoint of [relation.from, relation.to]) {\n if (endpoint.kind === 'marker' && endpoint.id !== markerId) neighborMarkerIds.add(endpoint.id);\n }\n }\n const relationLabels = new Map(relationTypes.map(definition => [definition.type, definition.label]));\n const summaries: LocalEditorAgentSpatialRelationSummary[] = [];\n for (const neighborId of neighborMarkerIds) {\n const secondHop = graph.relations.filter(relation => relationTouchesMarker(relation, neighborId) && !directRelationIds.has(relation.id));\n if (secondHop.length === 0) continue;\n const neighborLabel = markerLabels.get(neighborId) ?? neighborId;\n summaries.push({\n from: { kind: 'marker', id: neighborId, label: markerLabels.get(neighborId) },\n count: secondHop.length,\n summary: `${neighborLabel} has ${secondHop.length} additional relations: ${secondHop.slice(0, 5).map(relation => summarizeSpatialRelation(relation, relationLabels, markerLabels, objectLabels)).join('; ')}${secondHop.length > 5 ? `; +${secondHop.length - 5} more` : ''}`,\n });\n }\n return summaries;\n}\n\nfunction createSpatialGraphIssues(\n graph: ResolvedSpatialMarkerGraph,\n markerLabels: ReadonlyMap<string, string>,\n objectLabels: ReadonlyMap<string, string>,\n): LocalEditorAgentSpatialGraphIssue[] {\n const markerIds = new Set(graph.markers.map(marker => marker.id));\n const issues: LocalEditorAgentSpatialGraphIssue[] = [];\n for (const marker of graph.markers) {\n if (marker.spatial.status !== 'resolved') {\n issues.push({\n code: 'marker-spatial-unresolved',\n severity: 'warning',\n markerId: marker.id,\n message: `${marker.label || marker.id} has unresolved spatial facts${marker.spatial.unresolvedReason ? `: ${marker.spatial.unresolvedReason}` : ''}.`,\n });\n }\n for (const target of collectMarkerSpatialTargets(marker)) {\n if (target.kind === 'scene-object' && !objectLabels.has(target.id)) {\n issues.push({\n code: 'marker-missing-object-target',\n severity: 'warning',\n markerId: marker.id,\n endpoint: createEndpointSummary({ kind: target.kind, id: target.id, label: target.label }, markerLabels, objectLabels),\n message: `${marker.label || marker.id} references missing target scene object ${target.id}.`,\n });\n }\n }\n }\n for (const relation of graph.relations) {\n for (const [side, endpoint] of [['from', relation.from], ['to', relation.to]] as const) {\n if (endpoint.kind === 'marker' && !markerIds.has(endpoint.id)) {\n issues.push({\n code: 'relation-missing-marker-endpoint',\n severity: 'warning',\n relationId: relation.id,\n endpoint: createEndpointSummary(endpoint, markerLabels, objectLabels),\n message: `Relation ${relation.id} ${side} endpoint references missing marker ${endpoint.id}.`,\n });\n }\n if (endpoint.kind === 'scene-object' && !objectLabels.has(endpoint.id)) {\n issues.push({\n code: 'relation-missing-object-endpoint',\n severity: 'warning',\n relationId: relation.id,\n endpoint: createEndpointSummary(endpoint, markerLabels, objectLabels),\n message: `Relation ${relation.id} ${side} endpoint references missing scene object ${endpoint.id}.`,\n });\n }\n }\n }\n return issues;\n}\n\nfunction collectMarkerSpatialTargets(marker: ResolvedSpatialMarkerNode): SpatialRelation['from'][] {\n const targets: SpatialRelation['from'][] = [];\n const pushTarget = (target: ResolvedSpatialMarkerNode['target'] | undefined) => {\n if (!target || targets.some(candidate => candidate.kind === target.kind && candidate.id === target.id)) return;\n targets.push({\n kind: target.kind,\n id: target.id,\n ...(target.label ? { label: target.label } : {}),\n });\n };\n pushTarget(marker.target);\n pushTarget(marker.spatial.target);\n if (marker.geometry.kind === 'point' || marker.geometry.kind === 'object-bounds') pushTarget(marker.geometry.target);\n return targets;\n}\n\nfunction relationTouchesMarker(relation: SpatialRelation, markerId: string): boolean {\n return (relation.from.kind === 'marker' && relation.from.id === markerId)\n || (relation.to.kind === 'marker' && relation.to.id === markerId);\n}\n\nfunction relationTouchesObject(relation: SpatialRelation, objectId: string): boolean {\n return (relation.from.kind === 'scene-object' && relation.from.id === objectId)\n || (relation.to.kind === 'scene-object' && relation.to.id === objectId);\n}\n\nfunction createEndpointSummary(\n endpoint: SpatialRelation['from'],\n markerLabels: ReadonlyMap<string, string>,\n objectLabels: ReadonlyMap<string, string>,\n): LocalEditorAgentSpatialRelationEndpointSummary {\n const label = endpoint.label\n || (endpoint.kind === 'marker'\n ? markerLabels.get(endpoint.id)\n : endpoint.kind === 'scene-object'\n ? objectLabels.get(endpoint.id)\n : undefined);\n return {\n kind: endpoint.kind,\n id: endpoint.id,\n ...(label ? { label } : {}),\n };\n}\n\nfunction formatEndpointSummary(endpoint: LocalEditorAgentSpatialRelationEndpointSummary): string {\n return endpoint.label && endpoint.label !== endpoint.id\n ? `${endpoint.kind}:${endpoint.id} \"${endpoint.label}\"`\n : `${endpoint.kind}:${endpoint.id}`;\n}\n\nfunction formatEndpointHumanLabel(\n endpoint: SpatialRelation['from'],\n markerLabels: ReadonlyMap<string, string>,\n objectLabels: ReadonlyMap<string, string>,\n): string {\n const summary = createEndpointSummary(endpoint, markerLabels, objectLabels);\n return summary.label || summary.id;\n}\n\nfunction formatRelationCountPhrase(label: string, type: string, count: number): string {\n return `${label || type} ${count}`;\n}\n\nfunction summarizeSpatialFacts(marker: ResolvedSpatialMarkerNode): string {\n const spatial = marker.spatial;\n if (spatial.status !== 'resolved') return `unresolved${spatial.unresolvedReason ? `: ${spatial.unresolvedReason}` : ''}`;\n const parts = [\n spatial.origin ? `origin ${formatVec3(spatial.origin)}` : null,\n spatial.localFrame?.forward ? `forward ${formatVec3(spatial.localFrame.forward)}` : null,\n spatial.dimensions ? `dimensions ${formatVec3(spatial.dimensions)}` : null,\n spatial.bounds ? `bounds center ${formatVec3(spatial.bounds.center)} size ${formatVec3(spatial.bounds.size)}` : null,\n spatial.target ? `target ${summarizeSpatialRelationEndpoint({\n kind: spatial.target.kind,\n id: spatial.target.id,\n ...(spatial.target.label ? { label: spatial.target.label } : {}),\n }, new Map(), new Map())}` : null,\n ].filter((value): value is string => !!value);\n return parts.join(', ') || 'resolved';\n}\n\nfunction summarizeSpatialRelation(\n relation: SpatialRelation,\n relationLabels: ReadonlyMap<string, string>,\n markerLabels: ReadonlyMap<string, string>,\n objectLabels: ReadonlyMap<string, string>,\n): string {\n const arrow = relation.directed === false ? '--' : '->';\n return [\n summarizeSpatialRelationEndpoint(relation.from, markerLabels, objectLabels),\n summarizeSpatialRelationType(relation, relationLabels),\n arrow,\n summarizeSpatialRelationEndpoint(relation.to, markerLabels, objectLabels),\n ].join(' ');\n}\n\nfunction summarizeSpatialRelationEndpoint(\n endpoint: SpatialRelation['from'],\n markerLabels: ReadonlyMap<string, string>,\n objectLabels: ReadonlyMap<string, string>,\n): string {\n const label = endpoint.label\n || (endpoint.kind === 'marker'\n ? markerLabels.get(endpoint.id)\n : endpoint.kind === 'scene-object'\n ? objectLabels.get(endpoint.id)\n : undefined);\n return label && label !== endpoint.id\n ? `${endpoint.kind}:${endpoint.id} \"${label}\"`\n : `${endpoint.kind}:${endpoint.id}`;\n}\n\nfunction summarizeSpatialRelationType(\n relation: SpatialRelation,\n relationLabels: ReadonlyMap<string, string>,\n): string {\n const label = relation.label || relationLabels.get(relation.type);\n return label && label !== relation.type ? `${label} [${relation.type}]` : relation.type;\n}\n\nfunction formatVec3(value: EditorAgentVec3): string {\n return `(${value.x}, ${value.y}, ${value.z})`;\n}\n\nfunction cloneResolvedSpatialMarkerGraph(graph: ResolvedSpatialMarkerGraph): ResolvedSpatialMarkerGraph {\n return {\n ...graph,\n markers: graph.markers.map(cloneResolvedSpatialMarker),\n relations: graph.relations.map(cloneSpatialRelation),\n metadata: graph.metadata ? { ...graph.metadata } : undefined,\n };\n}\n\nfunction cloneResolvedSpatialMarker(marker: ResolvedSpatialMarkerNode): ResolvedSpatialMarkerNode {\n return {\n ...marker,\n geometry: cloneJsonObject(marker.geometry) as ResolvedSpatialMarkerNode['geometry'],\n target: marker.target ? { ...marker.target, metadata: marker.target.metadata ? { ...marker.target.metadata } : undefined } : undefined,\n semanticFrame: marker.semanticFrame ? { ...marker.semanticFrame } : undefined,\n tags: marker.tags ? [...marker.tags] : undefined,\n metadata: marker.metadata ? { ...marker.metadata } : undefined,\n spatial: {\n ...marker.spatial,\n origin: marker.spatial.origin ? { ...marker.spatial.origin } : undefined,\n bounds: marker.spatial.bounds\n ? {\n min: { ...marker.spatial.bounds.min },\n max: { ...marker.spatial.bounds.max },\n center: { ...marker.spatial.bounds.center },\n size: { ...marker.spatial.bounds.size },\n }\n : undefined,\n dimensions: marker.spatial.dimensions ? { ...marker.spatial.dimensions } : undefined,\n corners: marker.spatial.corners?.map(corner => ({ ...corner })),\n localFrame: marker.spatial.localFrame ? { ...marker.spatial.localFrame } : undefined,\n target: marker.spatial.target\n ? {\n ...marker.spatial.target,\n metadata: marker.spatial.target.metadata ? { ...marker.spatial.target.metadata } : undefined,\n }\n : undefined,\n metadata: marker.spatial.metadata ? { ...marker.spatial.metadata } : undefined,\n },\n };\n}\n\nfunction cloneSpatialRelation(relation: SpatialRelation): SpatialRelation {\n return {\n ...relation,\n from: { ...relation.from },\n to: { ...relation.to },\n tags: relation.tags ? [...relation.tags] : undefined,\n metadata: relation.metadata ? { ...relation.metadata } : undefined,\n };\n}\n\nfunction cloneMarkerTypeDefinition(definition: SpatialMarkerTypeDefinition): SpatialMarkerTypeDefinition {\n return {\n ...definition,\n defaultTags: definition.defaultTags ? [...definition.defaultTags] : undefined,\n metadata: definition.metadata ? { ...definition.metadata } : undefined,\n };\n}\n\nfunction cloneRelationTypeDefinition(definition: SpatialRelationTypeDefinition): SpatialRelationTypeDefinition {\n return {\n ...definition,\n allowedFromKinds: definition.allowedFromKinds ? [...definition.allowedFromKinds] : undefined,\n allowedToKinds: definition.allowedToKinds ? [...definition.allowedToKinds] : undefined,\n metadata: definition.metadata ? { ...definition.metadata } : undefined,\n };\n}\n\nfunction cloneJsonObject<T>(value: T): T {\n if (!value || typeof value !== 'object') return value;\n return JSON.parse(JSON.stringify(value)) as T;\n}\n"]}