@fps-games/editor 0.2.1-beta.3 → 0.2.1-beta.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (514) hide show
  1. package/dist/build-info.json +44 -44
  2. package/dist/editor-commands/capabilities/assets.d.ts +8 -0
  3. package/dist/editor-commands/capabilities/assets.d.ts.map +1 -0
  4. package/dist/{agent-bridge → editor-commands}/capabilities/assets.js +41 -41
  5. package/dist/editor-commands/capabilities/assets.js.map +1 -0
  6. package/dist/editor-commands/capabilities/editor-state.d.ts +5 -0
  7. package/dist/editor-commands/capabilities/editor-state.d.ts.map +1 -0
  8. package/dist/{agent-bridge → editor-commands}/capabilities/editor-state.js +22 -22
  9. package/dist/editor-commands/capabilities/editor-state.js.map +1 -0
  10. package/dist/editor-commands/capabilities/hierarchy.d.ts +4 -0
  11. package/dist/editor-commands/capabilities/hierarchy.d.ts.map +1 -0
  12. package/dist/{agent-bridge → editor-commands}/capabilities/hierarchy.js +5 -5
  13. package/dist/editor-commands/capabilities/hierarchy.js.map +1 -0
  14. package/dist/editor-commands/capabilities/host-lifecycle.d.ts +11 -0
  15. package/dist/editor-commands/capabilities/host-lifecycle.d.ts.map +1 -0
  16. package/dist/editor-commands/capabilities/host-lifecycle.js +149 -0
  17. package/dist/editor-commands/capabilities/host-lifecycle.js.map +1 -0
  18. package/dist/editor-commands/capabilities/prefabs.d.ts +5 -0
  19. package/dist/editor-commands/capabilities/prefabs.d.ts.map +1 -0
  20. package/dist/{agent-bridge → editor-commands}/capabilities/prefabs.js +93 -93
  21. package/dist/editor-commands/capabilities/prefabs.js.map +1 -0
  22. package/dist/editor-commands/capabilities/scene-objects.d.ts +8 -0
  23. package/dist/editor-commands/capabilities/scene-objects.d.ts.map +1 -0
  24. package/dist/editor-commands/capabilities/scene-objects.js +480 -0
  25. package/dist/editor-commands/capabilities/scene-objects.js.map +1 -0
  26. package/dist/editor-commands/capabilities/selection.d.ts +5 -0
  27. package/dist/editor-commands/capabilities/selection.d.ts.map +1 -0
  28. package/dist/editor-commands/capabilities/selection.js +60 -0
  29. package/dist/editor-commands/capabilities/selection.js.map +1 -0
  30. package/dist/editor-commands/capabilities/shadows.d.ts +5 -0
  31. package/dist/editor-commands/capabilities/shadows.d.ts.map +1 -0
  32. package/dist/{agent-bridge → editor-commands}/capabilities/shadows.js +74 -74
  33. package/dist/editor-commands/capabilities/shadows.js.map +1 -0
  34. package/dist/editor-commands/capabilities/transform.d.ts +5 -0
  35. package/dist/editor-commands/capabilities/transform.d.ts.map +1 -0
  36. package/dist/editor-commands/capabilities/transform.js +164 -0
  37. package/dist/editor-commands/capabilities/transform.js.map +1 -0
  38. package/dist/editor-commands/capabilities/ui-regions.d.ts +4 -0
  39. package/dist/editor-commands/capabilities/ui-regions.d.ts.map +1 -0
  40. package/dist/{agent-bridge → editor-commands}/capabilities/ui-regions.js +55 -57
  41. package/dist/editor-commands/capabilities/ui-regions.js.map +1 -0
  42. package/dist/editor-commands/capabilities/viewport.d.ts +5 -0
  43. package/dist/editor-commands/capabilities/viewport.d.ts.map +1 -0
  44. package/dist/{agent-bridge → editor-commands}/capabilities/viewport.js +100 -100
  45. package/dist/editor-commands/capabilities/viewport.js.map +1 -0
  46. package/dist/editor-commands/command-sources.d.ts +7 -0
  47. package/dist/editor-commands/command-sources.d.ts.map +1 -0
  48. package/dist/editor-commands/command-sources.js +34 -0
  49. package/dist/editor-commands/command-sources.js.map +1 -0
  50. package/dist/editor-commands/diagnostics.d.ts +12 -0
  51. package/dist/editor-commands/diagnostics.d.ts.map +1 -0
  52. package/dist/{agent-bridge → editor-commands}/diagnostics.js +4 -4
  53. package/dist/editor-commands/diagnostics.js.map +1 -0
  54. package/dist/{agent-bridge → editor-commands}/index.d.ts +1 -1
  55. package/dist/editor-commands/index.d.ts.map +1 -0
  56. package/dist/{agent-bridge → editor-commands}/index.js +1 -1
  57. package/dist/editor-commands/index.js.map +1 -0
  58. package/dist/editor-commands/register.d.ts +4 -0
  59. package/dist/editor-commands/register.d.ts.map +1 -0
  60. package/dist/{agent-bridge → editor-commands}/register.js +323 -286
  61. package/dist/editor-commands/register.js.map +1 -0
  62. package/dist/{agent-bridge → editor-commands}/shared.d.ts +80 -80
  63. package/dist/editor-commands/shared.d.ts.map +1 -0
  64. package/dist/{agent-bridge → editor-commands}/shared.js +29 -29
  65. package/dist/editor-commands/shared.js.map +1 -0
  66. package/dist/editor-commands/source-types.d.ts +110 -0
  67. package/dist/editor-commands/source-types.d.ts.map +1 -0
  68. package/dist/editor-commands/source-types.js.map +1 -0
  69. package/dist/editor-plugin-commands.d.ts +4 -0
  70. package/dist/editor-plugin-commands.d.ts.map +1 -0
  71. package/dist/editor-plugin-commands.js +18 -0
  72. package/dist/editor-plugin-commands.js.map +1 -0
  73. package/dist/index.d.ts +2 -2
  74. package/dist/index.d.ts.map +1 -1
  75. package/dist/index.js +1 -1
  76. package/dist/index.js.map +1 -1
  77. package/dist/local-editor-commands.d.ts +2 -0
  78. package/dist/local-editor-commands.d.ts.map +1 -0
  79. package/dist/local-editor-commands.js +2 -0
  80. package/dist/local-editor-commands.js.map +1 -0
  81. package/dist/local-editor-harness.d.ts +35 -21
  82. package/dist/local-editor-harness.d.ts.map +1 -1
  83. package/dist/local-editor-harness.js +1721 -367
  84. package/dist/local-editor-harness.js.map +1 -1
  85. package/dist/local-editor-prefab-stage-transaction.d.ts +2 -1
  86. package/dist/local-editor-prefab-stage-transaction.d.ts.map +1 -1
  87. package/dist/local-editor-prefab-stage-transaction.js +6 -5
  88. package/dist/local-editor-prefab-stage-transaction.js.map +1 -1
  89. package/dist/local-editor-scene-view-interaction-runtime.d.ts.map +1 -1
  90. package/dist/local-editor-scene-view-interaction-runtime.js +2 -5
  91. package/dist/local-editor-scene-view-interaction-runtime.js.map +1 -1
  92. package/dist/playable-local-editor-entry.d.ts +10 -0
  93. package/dist/playable-local-editor-entry.d.ts.map +1 -1
  94. package/dist/playable-local-editor-entry.js +10 -2
  95. package/dist/playable-local-editor-entry.js.map +1 -1
  96. package/dist/playable-local-editor-host.d.ts +3 -32
  97. package/dist/playable-local-editor-host.d.ts.map +1 -1
  98. package/dist/playable-local-editor-host.js +6 -70
  99. package/dist/playable-local-editor-host.js.map +1 -1
  100. package/dist/playable-product-local-editor.d.ts +1 -2
  101. package/dist/playable-product-local-editor.d.ts.map +1 -1
  102. package/dist/playable-product-local-editor.js +0 -1
  103. package/dist/playable-product-local-editor.js.map +1 -1
  104. package/dist/playable-product-projection-preview.d.ts.map +1 -1
  105. package/dist/playable-product-projection-preview.js +1 -1
  106. package/dist/playable-product-projection-preview.js.map +1 -1
  107. package/dist/playable-product-scene-capabilities.d.ts +0 -2
  108. package/dist/playable-product-scene-capabilities.d.ts.map +1 -1
  109. package/dist/playable-product-scene-capabilities.js +33 -6
  110. package/dist/playable-product-scene-capabilities.js.map +1 -1
  111. package/dist/playable-runtime-babylon.d.ts +4 -0
  112. package/dist/playable-runtime-babylon.d.ts.map +1 -1
  113. package/dist/playable-runtime-babylon.js +4 -0
  114. package/dist/playable-runtime-babylon.js.map +1 -1
  115. package/dist/playable-sdk.d.ts +1 -1
  116. package/dist/playable-sdk.d.ts.map +1 -1
  117. package/dist/playable-sdk.js.map +1 -1
  118. package/dist/playable-standard-project.d.ts +0 -2
  119. package/dist/playable-standard-project.d.ts.map +1 -1
  120. package/dist/playable-standard-project.js +1 -2
  121. package/dist/playable-standard-project.js.map +1 -1
  122. package/dist/project-service-projection.d.ts +16 -0
  123. package/dist/project-service-projection.d.ts.map +1 -0
  124. package/dist/project-service-projection.js +67 -0
  125. package/dist/project-service-projection.js.map +1 -0
  126. package/node_modules/@fps-games/babylon-renderer/dist/post-process/babylon-default-pipeline.d.ts +18 -0
  127. package/node_modules/@fps-games/babylon-renderer/dist/post-process/babylon-default-pipeline.d.ts.map +1 -1
  128. package/node_modules/@fps-games/babylon-renderer/dist/post-process/babylon-default-pipeline.js +54 -18
  129. package/node_modules/@fps-games/babylon-renderer/dist/post-process/babylon-default-pipeline.js.map +1 -1
  130. package/node_modules/@fps-games/babylon-renderer/package.json +9 -9
  131. package/node_modules/@fps-games/editor-babylon/dist/projection.d.ts +1 -0
  132. package/node_modules/@fps-games/editor-babylon/dist/projection.d.ts.map +1 -1
  133. package/node_modules/@fps-games/editor-babylon/dist/projection.js +1 -1
  134. package/node_modules/@fps-games/editor-babylon/dist/projection.js.map +1 -1
  135. package/node_modules/@fps-games/editor-babylon/dist/selection-presentation-controller.d.ts.map +1 -1
  136. package/node_modules/@fps-games/editor-babylon/dist/selection-presentation-controller.js +127 -13
  137. package/node_modules/@fps-games/editor-babylon/dist/selection-presentation-controller.js.map +1 -1
  138. package/node_modules/@fps-games/editor-babylon/dist/transform-gizmo-controller.d.ts.map +1 -1
  139. package/node_modules/@fps-games/editor-babylon/dist/transform-gizmo-controller.js +66 -1
  140. package/node_modules/@fps-games/editor-babylon/dist/transform-gizmo-controller.js.map +1 -1
  141. package/node_modules/@fps-games/editor-babylon/package.json +6 -6
  142. package/node_modules/@fps-games/editor-browser/dist/editor-command-service-client.d.ts +32 -0
  143. package/node_modules/@fps-games/editor-browser/dist/editor-command-service-client.d.ts.map +1 -0
  144. package/node_modules/@fps-games/editor-browser/dist/editor-command-service-client.js +254 -0
  145. package/node_modules/@fps-games/editor-browser/dist/editor-command-service-client.js.map +1 -0
  146. package/node_modules/@fps-games/editor-browser/dist/index.d.ts +3 -1
  147. package/node_modules/@fps-games/editor-browser/dist/index.d.ts.map +1 -1
  148. package/node_modules/@fps-games/editor-browser/dist/index.js +2 -0
  149. package/node_modules/@fps-games/editor-browser/dist/index.js.map +1 -1
  150. package/node_modules/@fps-games/editor-browser/dist/local-editor-command-center.d.ts +68 -0
  151. package/node_modules/@fps-games/editor-browser/dist/local-editor-command-center.d.ts.map +1 -0
  152. package/node_modules/@fps-games/editor-browser/dist/local-editor-command-center.js +650 -0
  153. package/node_modules/@fps-games/editor-browser/dist/local-editor-command-center.js.map +1 -0
  154. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-formal-surface-visibility.d.ts +1 -0
  155. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-formal-surface-visibility.d.ts.map +1 -1
  156. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-formal-surface-visibility.js +22 -0
  157. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-formal-surface-visibility.js.map +1 -1
  158. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.d.ts +8 -0
  159. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.d.ts.map +1 -1
  160. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.js +117 -6
  161. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.js.map +1 -1
  162. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view.d.ts +14 -1
  163. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view.d.ts.map +1 -1
  164. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view.js +100 -1
  165. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view.js.map +1 -1
  166. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.d.ts +8 -1
  167. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.d.ts.map +1 -1
  168. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.js +75 -2
  169. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.js.map +1 -1
  170. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.d.ts +37 -12
  171. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.d.ts.map +1 -1
  172. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.js.map +1 -1
  173. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.d.ts +25 -2
  174. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.d.ts.map +1 -1
  175. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.js +332 -107
  176. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.js.map +1 -1
  177. package/node_modules/@fps-games/editor-browser/package.json +7 -7
  178. package/node_modules/@fps-games/editor-core/dist/editor-authoring-host.d.ts +107 -0
  179. package/node_modules/@fps-games/editor-core/dist/editor-authoring-host.d.ts.map +1 -0
  180. package/node_modules/@fps-games/editor-core/dist/editor-authoring-host.js +1211 -0
  181. package/node_modules/@fps-games/editor-core/dist/editor-authoring-host.js.map +1 -0
  182. package/node_modules/@fps-games/editor-core/dist/editor-command-capability-adapter.d.ts +34 -0
  183. package/node_modules/@fps-games/editor-core/dist/editor-command-capability-adapter.d.ts.map +1 -0
  184. package/node_modules/@fps-games/editor-core/dist/editor-command-capability-adapter.js +260 -0
  185. package/node_modules/@fps-games/editor-core/dist/editor-command-capability-adapter.js.map +1 -0
  186. package/node_modules/@fps-games/editor-core/dist/editor-command-composed-authority.d.ts +9 -0
  187. package/node_modules/@fps-games/editor-core/dist/editor-command-composed-authority.d.ts.map +1 -0
  188. package/node_modules/@fps-games/editor-core/dist/editor-command-composed-authority.js +14 -0
  189. package/node_modules/@fps-games/editor-core/dist/editor-command-composed-authority.js.map +1 -0
  190. package/node_modules/@fps-games/editor-core/dist/editor-command-observability.d.ts +18 -0
  191. package/node_modules/@fps-games/editor-core/dist/editor-command-observability.d.ts.map +1 -0
  192. package/node_modules/@fps-games/editor-core/dist/editor-command-observability.js +113 -0
  193. package/node_modules/@fps-games/editor-core/dist/editor-command-observability.js.map +1 -0
  194. package/node_modules/@fps-games/editor-core/dist/editor-command-system.d.ts +82 -0
  195. package/node_modules/@fps-games/editor-core/dist/editor-command-system.d.ts.map +1 -0
  196. package/node_modules/@fps-games/editor-core/dist/editor-command-system.js +1098 -0
  197. package/node_modules/@fps-games/editor-core/dist/editor-command-system.js.map +1 -0
  198. package/node_modules/@fps-games/editor-core/dist/editor-plugin-host.d.ts +6 -7
  199. package/node_modules/@fps-games/editor-core/dist/editor-plugin-host.d.ts.map +1 -1
  200. package/node_modules/@fps-games/editor-core/dist/editor-plugin-host.js +62 -103
  201. package/node_modules/@fps-games/editor-core/dist/editor-plugin-host.js.map +1 -1
  202. package/node_modules/@fps-games/editor-core/dist/editor-service-gateway.d.ts +30 -0
  203. package/node_modules/@fps-games/editor-core/dist/editor-service-gateway.d.ts.map +1 -0
  204. package/node_modules/@fps-games/editor-core/dist/editor-service-gateway.js +540 -0
  205. package/node_modules/@fps-games/editor-core/dist/editor-service-gateway.js.map +1 -0
  206. package/node_modules/@fps-games/editor-core/dist/editor-session-authority.d.ts +9 -0
  207. package/node_modules/@fps-games/editor-core/dist/editor-session-authority.d.ts.map +1 -0
  208. package/node_modules/@fps-games/editor-core/dist/editor-session-authority.js +61 -0
  209. package/node_modules/@fps-games/editor-core/dist/editor-session-authority.js.map +1 -0
  210. package/node_modules/@fps-games/editor-core/dist/editor-session.d.ts +55 -0
  211. package/node_modules/@fps-games/editor-core/dist/editor-session.d.ts.map +1 -1
  212. package/node_modules/@fps-games/editor-core/dist/editor-session.js +247 -6
  213. package/node_modules/@fps-games/editor-core/dist/editor-session.js.map +1 -1
  214. package/node_modules/@fps-games/editor-core/dist/index.d.ts +6 -2
  215. package/node_modules/@fps-games/editor-core/dist/index.d.ts.map +1 -1
  216. package/node_modules/@fps-games/editor-core/dist/index.js +6 -2
  217. package/node_modules/@fps-games/editor-core/dist/index.js.map +1 -1
  218. package/node_modules/@fps-games/editor-core/package.json +6 -6
  219. package/node_modules/@fps-games/editor-forge-play/dist/index.d.ts +0 -1
  220. package/node_modules/@fps-games/editor-forge-play/dist/index.d.ts.map +1 -1
  221. package/node_modules/@fps-games/editor-forge-play/dist/index.js +0 -1
  222. package/node_modules/@fps-games/editor-forge-play/dist/index.js.map +1 -1
  223. package/node_modules/@fps-games/editor-forge-play/package.json +2 -2
  224. package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/protocol.d.ts +2 -0
  225. package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/protocol.d.ts.map +1 -1
  226. package/node_modules/@fps-games/editor-playable-sdk/dist/document/helpers.d.ts.map +1 -1
  227. package/node_modules/@fps-games/editor-playable-sdk/dist/document/helpers.js +41 -1
  228. package/node_modules/@fps-games/editor-playable-sdk/dist/document/helpers.js.map +1 -1
  229. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play-types.d.ts +27 -1
  230. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play-types.d.ts.map +1 -1
  231. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play-types.js.map +1 -1
  232. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.d.ts +2 -0
  233. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.d.ts.map +1 -1
  234. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.js +214 -7
  235. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.js.map +1 -1
  236. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/host-controller.d.ts +1 -0
  237. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/host-controller.d.ts.map +1 -1
  238. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/host-controller.js +11 -3
  239. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/host-controller.js.map +1 -1
  240. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.d.ts +2 -4
  241. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.d.ts.map +1 -1
  242. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.js +0 -1
  243. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.js.map +1 -1
  244. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/lifecycle.d.ts.map +1 -1
  245. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/lifecycle.js +77 -31
  246. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/lifecycle.js.map +1 -1
  247. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/types.d.ts +8 -1
  248. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/types.d.ts.map +1 -1
  249. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/types.js.map +1 -1
  250. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/asset-fields.d.ts +21 -1
  251. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/asset-fields.d.ts.map +1 -1
  252. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/asset-fields.js +90 -4
  253. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/asset-fields.js.map +1 -1
  254. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/binding.d.ts +27 -1
  255. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/binding.d.ts.map +1 -1
  256. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/binding.js +161 -1
  257. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/binding.js.map +1 -1
  258. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/inspector.d.ts +2 -2
  259. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/inspector.d.ts.map +1 -1
  260. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/inspector.js +5 -92
  261. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/inspector.js.map +1 -1
  262. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/scene-inspector.d.ts +7 -0
  263. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/scene-inspector.d.ts.map +1 -1
  264. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/scene-inspector.js +26 -9
  265. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/scene-inspector.js.map +1 -1
  266. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/slot-inspector.d.ts +9 -0
  267. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/slot-inspector.d.ts.map +1 -1
  268. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/slot-inspector.js +19 -8
  269. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/slot-inspector.js.map +1 -1
  270. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/material-override-inspector.d.ts +5 -0
  271. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/material-override-inspector.d.ts.map +1 -1
  272. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/material-override-inspector.js +16 -4
  273. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/material-override-inspector.js.map +1 -1
  274. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/stage-inspector.d.ts +9 -0
  275. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/stage-inspector.d.ts.map +1 -1
  276. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/stage-inspector.js +12 -2
  277. package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/stage-inspector.js.map +1 -1
  278. package/node_modules/@fps-games/editor-playable-sdk/dist/product/ground-decal.d.ts +2 -1
  279. package/node_modules/@fps-games/editor-playable-sdk/dist/product/ground-decal.d.ts.map +1 -1
  280. package/node_modules/@fps-games/editor-playable-sdk/dist/product/ground-decal.js +10 -5
  281. package/node_modules/@fps-games/editor-playable-sdk/dist/product/ground-decal.js.map +1 -1
  282. package/node_modules/@fps-games/editor-playable-sdk/dist/product/index.d.ts +1 -0
  283. package/node_modules/@fps-games/editor-playable-sdk/dist/product/index.d.ts.map +1 -1
  284. package/node_modules/@fps-games/editor-playable-sdk/dist/product/index.js +1 -0
  285. package/node_modules/@fps-games/editor-playable-sdk/dist/product/index.js.map +1 -1
  286. package/node_modules/@fps-games/editor-playable-sdk/dist/product/project-host-services.d.ts +17 -82
  287. package/node_modules/@fps-games/editor-playable-sdk/dist/product/project-host-services.d.ts.map +1 -1
  288. package/node_modules/@fps-games/editor-playable-sdk/dist/product/project-host-services.js +53 -57
  289. package/node_modules/@fps-games/editor-playable-sdk/dist/product/project-host-services.js.map +1 -1
  290. package/node_modules/@fps-games/editor-playable-sdk/dist/product/scene-session.d.ts.map +1 -1
  291. package/node_modules/@fps-games/editor-playable-sdk/dist/product/scene-session.js +3 -2
  292. package/node_modules/@fps-games/editor-playable-sdk/dist/product/scene-session.js.map +1 -1
  293. package/node_modules/@fps-games/editor-playable-sdk/dist/product/standard-authoring-commands.d.ts +10 -0
  294. package/node_modules/@fps-games/editor-playable-sdk/dist/product/standard-authoring-commands.d.ts.map +1 -0
  295. package/node_modules/@fps-games/editor-playable-sdk/dist/product/standard-authoring-commands.js +256 -0
  296. package/node_modules/@fps-games/editor-playable-sdk/dist/product/standard-authoring-commands.js.map +1 -0
  297. package/node_modules/@fps-games/editor-playable-sdk/dist/product/standard-scene-assembly.d.ts.map +1 -1
  298. package/node_modules/@fps-games/editor-playable-sdk/dist/product/standard-scene-assembly.js +7 -5
  299. package/node_modules/@fps-games/editor-playable-sdk/dist/product/standard-scene-assembly.js.map +1 -1
  300. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/client.d.ts.map +1 -1
  301. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/client.js +8 -0
  302. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/client.js.map +1 -1
  303. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/types.d.ts +1 -0
  304. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/types.d.ts.map +1 -1
  305. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/types.js.map +1 -1
  306. package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/inspectors.js +134 -12
  307. package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/inspectors.js.map +1 -1
  308. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-scene-workflow.d.ts.map +1 -1
  309. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-scene-workflow.js +47 -0
  310. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-scene-workflow.js.map +1 -1
  311. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-service-vite.d.ts +27 -0
  312. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-service-vite.d.ts.map +1 -0
  313. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-service-vite.js +592 -0
  314. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-service-vite.js.map +1 -0
  315. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/index.d.ts +3 -1
  316. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/index.d.ts.map +1 -1
  317. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/index.js +2 -1
  318. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/index.js.map +1 -1
  319. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/plugin.d.ts.map +1 -1
  320. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/plugin.js +61 -6
  321. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/plugin.js.map +1 -1
  322. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-adapter.d.ts +0 -2
  323. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-adapter.d.ts.map +1 -1
  324. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-adapter.js +1 -10
  325. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-adapter.js.map +1 -1
  326. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-authoring-api.d.ts.map +1 -1
  327. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-authoring-api.js +21 -0
  328. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-authoring-api.js.map +1 -1
  329. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/project-authoring-backend.d.ts +13 -0
  330. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/project-authoring-backend.d.ts.map +1 -0
  331. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/project-authoring-backend.js +18 -0
  332. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/project-authoring-backend.js.map +1 -0
  333. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/project-editor-service.d.ts +28 -0
  334. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/project-editor-service.d.ts.map +1 -0
  335. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/project-editor-service.js +863 -0
  336. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/project-editor-service.js.map +1 -0
  337. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/types.d.ts +2 -0
  338. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/types.d.ts.map +1 -1
  339. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/types.js.map +1 -1
  340. package/node_modules/@fps-games/editor-playable-sdk/package.json +6 -6
  341. package/node_modules/@fps-games/editor-protocol/dist/editor-command-capabilities.d.ts +1626 -0
  342. package/node_modules/@fps-games/editor-protocol/dist/editor-command-capabilities.d.ts.map +1 -0
  343. package/node_modules/@fps-games/editor-protocol/dist/{agent-bridge.js → editor-command-capabilities.js} +766 -620
  344. package/node_modules/@fps-games/editor-protocol/dist/editor-command-capabilities.js.map +1 -0
  345. package/node_modules/@fps-games/editor-protocol/dist/editor-command-trace.d.ts +69 -0
  346. package/node_modules/@fps-games/editor-protocol/dist/editor-command-trace.d.ts.map +1 -0
  347. package/node_modules/@fps-games/editor-protocol/dist/editor-command-trace.js +22 -0
  348. package/node_modules/@fps-games/editor-protocol/dist/editor-command-trace.js.map +1 -0
  349. package/node_modules/@fps-games/editor-protocol/dist/editor-command.d.ts +136 -0
  350. package/node_modules/@fps-games/editor-protocol/dist/editor-command.d.ts.map +1 -0
  351. package/node_modules/@fps-games/editor-protocol/dist/editor-command.js +2 -0
  352. package/node_modules/@fps-games/editor-protocol/dist/editor-command.js.map +1 -0
  353. package/node_modules/@fps-games/editor-protocol/dist/editor-service.d.ts +225 -0
  354. package/node_modules/@fps-games/editor-protocol/dist/editor-service.d.ts.map +1 -0
  355. package/node_modules/@fps-games/editor-protocol/dist/editor-service.js +4 -0
  356. package/node_modules/@fps-games/editor-protocol/dist/editor-service.js.map +1 -0
  357. package/node_modules/@fps-games/editor-protocol/dist/index.d.ts +6 -3
  358. package/node_modules/@fps-games/editor-protocol/dist/index.d.ts.map +1 -1
  359. package/node_modules/@fps-games/editor-protocol/dist/index.js +6 -3
  360. package/node_modules/@fps-games/editor-protocol/dist/index.js.map +1 -1
  361. package/node_modules/@fps-games/editor-protocol/package.json +2 -2
  362. package/node_modules/@fps-games/editor-tooling/package.json +3 -3
  363. package/node_modules/@fps-games/editor-ui/package.json +1 -1
  364. package/node_modules/@fps-games/playable-assets/package.json +1 -1
  365. package/node_modules/@fps-games/playable-contracts/package.json +1 -1
  366. package/node_modules/@fps-games/playable-rendering/package.json +2 -2
  367. package/node_modules/@fps-games/playable-runtime/package.json +12 -12
  368. package/node_modules/@fps-games/playable-runtime-data/package.json +4 -4
  369. package/node_modules/@fps-games/playable-scene/package.json +2 -2
  370. package/node_modules/@fps-games/plugin-api/package.json +1 -1
  371. package/node_modules/@fps-games/plugin-assets/dist/version.d.ts +1 -1
  372. package/node_modules/@fps-games/plugin-assets/dist/version.js +1 -1
  373. package/node_modules/@fps-games/plugin-assets/dist/version.js.map +1 -1
  374. package/node_modules/@fps-games/plugin-assets/package.json +6 -6
  375. package/node_modules/@fps-games/plugin-hierarchy/dist/kernel.d.ts +1 -0
  376. package/node_modules/@fps-games/plugin-hierarchy/dist/kernel.d.ts.map +1 -1
  377. package/node_modules/@fps-games/plugin-hierarchy/dist/kernel.js +78 -4
  378. package/node_modules/@fps-games/plugin-hierarchy/dist/kernel.js.map +1 -1
  379. package/node_modules/@fps-games/plugin-hierarchy/dist/version.d.ts +1 -1
  380. package/node_modules/@fps-games/plugin-hierarchy/dist/version.js +1 -1
  381. package/node_modules/@fps-games/plugin-hierarchy/dist/version.js.map +1 -1
  382. package/node_modules/@fps-games/plugin-hierarchy/package.json +5 -5
  383. package/node_modules/@fps-games/plugin-host/package.json +2 -2
  384. package/node_modules/@fps-games/plugin-markers/dist/version.d.ts +1 -1
  385. package/node_modules/@fps-games/plugin-markers/dist/version.js +1 -1
  386. package/node_modules/@fps-games/plugin-markers/dist/version.js.map +1 -1
  387. package/node_modules/@fps-games/plugin-markers/package.json +5 -5
  388. package/node_modules/@fps-games/plugin-materials/dist/version.d.ts +1 -1
  389. package/node_modules/@fps-games/plugin-materials/dist/version.js +1 -1
  390. package/node_modules/@fps-games/plugin-materials/dist/version.js.map +1 -1
  391. package/node_modules/@fps-games/plugin-materials/package.json +5 -5
  392. package/node_modules/@fps-games/plugin-rendering/dist/version.d.ts +1 -1
  393. package/node_modules/@fps-games/plugin-rendering/dist/version.js +1 -1
  394. package/node_modules/@fps-games/plugin-rendering/dist/version.js.map +1 -1
  395. package/node_modules/@fps-games/plugin-rendering/package.json +5 -5
  396. package/node_modules/@fps-games/plugin-scene/dist/version.d.ts +1 -1
  397. package/node_modules/@fps-games/plugin-scene/dist/version.js +1 -1
  398. package/node_modules/@fps-games/plugin-scene/dist/version.js.map +1 -1
  399. package/node_modules/@fps-games/plugin-scene/package.json +5 -5
  400. package/node_modules/@fps-games/plugin-shadow-map-experiment/dist/version.d.ts +1 -1
  401. package/node_modules/@fps-games/plugin-shadow-map-experiment/dist/version.js +1 -1
  402. package/node_modules/@fps-games/plugin-shadow-map-experiment/dist/version.js.map +1 -1
  403. package/node_modules/@fps-games/plugin-shadow-map-experiment/package.json +5 -5
  404. package/node_modules/@fps-games/plugin-shadows/dist/version.d.ts +1 -1
  405. package/node_modules/@fps-games/plugin-shadows/dist/version.js +1 -1
  406. package/node_modules/@fps-games/plugin-shadows/dist/version.js.map +1 -1
  407. package/node_modules/@fps-games/plugin-shadows/package.json +7 -7
  408. package/package.json +23 -23
  409. package/dist/agent-bridge/capabilities/assets.d.ts +0 -8
  410. package/dist/agent-bridge/capabilities/assets.d.ts.map +0 -1
  411. package/dist/agent-bridge/capabilities/assets.js.map +0 -1
  412. package/dist/agent-bridge/capabilities/editor-state.d.ts +0 -5
  413. package/dist/agent-bridge/capabilities/editor-state.d.ts.map +0 -1
  414. package/dist/agent-bridge/capabilities/editor-state.js.map +0 -1
  415. package/dist/agent-bridge/capabilities/hierarchy.d.ts +0 -4
  416. package/dist/agent-bridge/capabilities/hierarchy.d.ts.map +0 -1
  417. package/dist/agent-bridge/capabilities/hierarchy.js.map +0 -1
  418. package/dist/agent-bridge/capabilities/host-lifecycle.d.ts +0 -11
  419. package/dist/agent-bridge/capabilities/host-lifecycle.d.ts.map +0 -1
  420. package/dist/agent-bridge/capabilities/host-lifecycle.js +0 -149
  421. package/dist/agent-bridge/capabilities/host-lifecycle.js.map +0 -1
  422. package/dist/agent-bridge/capabilities/prefabs.d.ts +0 -5
  423. package/dist/agent-bridge/capabilities/prefabs.d.ts.map +0 -1
  424. package/dist/agent-bridge/capabilities/prefabs.js.map +0 -1
  425. package/dist/agent-bridge/capabilities/scene-objects.d.ts +0 -8
  426. package/dist/agent-bridge/capabilities/scene-objects.d.ts.map +0 -1
  427. package/dist/agent-bridge/capabilities/scene-objects.js +0 -480
  428. package/dist/agent-bridge/capabilities/scene-objects.js.map +0 -1
  429. package/dist/agent-bridge/capabilities/selection.d.ts +0 -5
  430. package/dist/agent-bridge/capabilities/selection.d.ts.map +0 -1
  431. package/dist/agent-bridge/capabilities/selection.js +0 -60
  432. package/dist/agent-bridge/capabilities/selection.js.map +0 -1
  433. package/dist/agent-bridge/capabilities/shadows.d.ts +0 -5
  434. package/dist/agent-bridge/capabilities/shadows.d.ts.map +0 -1
  435. package/dist/agent-bridge/capabilities/shadows.js.map +0 -1
  436. package/dist/agent-bridge/capabilities/transform.d.ts +0 -5
  437. package/dist/agent-bridge/capabilities/transform.d.ts.map +0 -1
  438. package/dist/agent-bridge/capabilities/transform.js +0 -164
  439. package/dist/agent-bridge/capabilities/transform.js.map +0 -1
  440. package/dist/agent-bridge/capabilities/ui-regions.d.ts +0 -4
  441. package/dist/agent-bridge/capabilities/ui-regions.d.ts.map +0 -1
  442. package/dist/agent-bridge/capabilities/ui-regions.js.map +0 -1
  443. package/dist/agent-bridge/capabilities/viewport.d.ts +0 -5
  444. package/dist/agent-bridge/capabilities/viewport.d.ts.map +0 -1
  445. package/dist/agent-bridge/capabilities/viewport.js.map +0 -1
  446. package/dist/agent-bridge/capability-sources.d.ts +0 -7
  447. package/dist/agent-bridge/capability-sources.d.ts.map +0 -1
  448. package/dist/agent-bridge/capability-sources.js +0 -34
  449. package/dist/agent-bridge/capability-sources.js.map +0 -1
  450. package/dist/agent-bridge/diagnostics.d.ts +0 -12
  451. package/dist/agent-bridge/diagnostics.d.ts.map +0 -1
  452. package/dist/agent-bridge/diagnostics.js.map +0 -1
  453. package/dist/agent-bridge/index.d.ts.map +0 -1
  454. package/dist/agent-bridge/index.js.map +0 -1
  455. package/dist/agent-bridge/register.d.ts +0 -4
  456. package/dist/agent-bridge/register.d.ts.map +0 -1
  457. package/dist/agent-bridge/register.js.map +0 -1
  458. package/dist/agent-bridge/shared.d.ts.map +0 -1
  459. package/dist/agent-bridge/shared.js.map +0 -1
  460. package/dist/agent-bridge/source-types.d.ts +0 -110
  461. package/dist/agent-bridge/source-types.d.ts.map +0 -1
  462. package/dist/agent-bridge/source-types.js.map +0 -1
  463. package/dist/editor-plugin-agent-capabilities.d.ts +0 -4
  464. package/dist/editor-plugin-agent-capabilities.d.ts.map +0 -1
  465. package/dist/editor-plugin-agent-capabilities.js +0 -64
  466. package/dist/editor-plugin-agent-capabilities.js.map +0 -1
  467. package/dist/local-editor-agent-actions.d.ts +0 -43
  468. package/dist/local-editor-agent-actions.d.ts.map +0 -1
  469. package/dist/local-editor-agent-actions.js +0 -321
  470. package/dist/local-editor-agent-actions.js.map +0 -1
  471. package/dist/local-editor-agent-bridge-transport.d.ts +0 -129
  472. package/dist/local-editor-agent-bridge-transport.d.ts.map +0 -1
  473. package/dist/local-editor-agent-bridge-transport.js +0 -403
  474. package/dist/local-editor-agent-bridge-transport.js.map +0 -1
  475. package/dist/local-editor-agent-bridge.d.ts +0 -2
  476. package/dist/local-editor-agent-bridge.d.ts.map +0 -1
  477. package/dist/local-editor-agent-bridge.js +0 -2
  478. package/dist/local-editor-agent-bridge.js.map +0 -1
  479. package/dist/local-editor-agent-context.d.ts +0 -68
  480. package/dist/local-editor-agent-context.d.ts.map +0 -1
  481. package/dist/local-editor-agent-context.js +0 -716
  482. package/dist/local-editor-agent-context.js.map +0 -1
  483. package/node_modules/@fps-games/editor-core/dist/agent-bridge.d.ts +0 -22
  484. package/node_modules/@fps-games/editor-core/dist/agent-bridge.d.ts.map +0 -1
  485. package/node_modules/@fps-games/editor-core/dist/agent-bridge.js +0 -106
  486. package/node_modules/@fps-games/editor-core/dist/agent-bridge.js.map +0 -1
  487. package/node_modules/@fps-games/editor-core/dist/agent-interaction.d.ts +0 -17
  488. package/node_modules/@fps-games/editor-core/dist/agent-interaction.d.ts.map +0 -1
  489. package/node_modules/@fps-games/editor-core/dist/agent-interaction.js +0 -14
  490. package/node_modules/@fps-games/editor-core/dist/agent-interaction.js.map +0 -1
  491. package/node_modules/@fps-games/editor-forge-play/dist/agent-transport.d.ts +0 -23
  492. package/node_modules/@fps-games/editor-forge-play/dist/agent-transport.d.ts.map +0 -1
  493. package/node_modules/@fps-games/editor-forge-play/dist/agent-transport.js +0 -47
  494. package/node_modules/@fps-games/editor-forge-play/dist/agent-transport.js.map +0 -1
  495. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/agent-descriptions.d.ts +0 -112
  496. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/agent-descriptions.d.ts.map +0 -1
  497. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/agent-descriptions.js +0 -159
  498. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/agent-descriptions.js.map +0 -1
  499. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/session-metadata.d.ts +0 -15
  500. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/session-metadata.d.ts.map +0 -1
  501. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/session-metadata.js +0 -76
  502. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/session-metadata.js.map +0 -1
  503. package/node_modules/@fps-games/editor-protocol/dist/agent-bridge.d.ts +0 -1622
  504. package/node_modules/@fps-games/editor-protocol/dist/agent-bridge.d.ts.map +0 -1
  505. package/node_modules/@fps-games/editor-protocol/dist/agent-bridge.js.map +0 -1
  506. package/node_modules/@fps-games/editor-protocol/dist/agent-trace.d.ts +0 -68
  507. package/node_modules/@fps-games/editor-protocol/dist/agent-trace.d.ts.map +0 -1
  508. package/node_modules/@fps-games/editor-protocol/dist/agent-trace.js +0 -23
  509. package/node_modules/@fps-games/editor-protocol/dist/agent-trace.js.map +0 -1
  510. package/node_modules/@fps-games/editor-protocol/dist/agent.d.ts +0 -187
  511. package/node_modules/@fps-games/editor-protocol/dist/agent.d.ts.map +0 -1
  512. package/node_modules/@fps-games/editor-protocol/dist/agent.js +0 -5
  513. package/node_modules/@fps-games/editor-protocol/dist/agent.js.map +0 -1
  514. /package/dist/{agent-bridge → editor-commands}/source-types.js +0 -0
@@ -1,135 +1,135 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
3
  "packageName": "@fps-games/editor",
4
- "version": "0.2.1-beta.3",
5
- "gitSha": "698fdec002644a60b9641c5e23b93755489e8cfe",
6
- "distHash": "fcb8a51f1c5603abf0775987a7d4d1b8711c2871ca515c3711e8ec71b318aaf1",
7
- "cacheKey": "0.2.1-beta.3-fcb8a51f1c56",
4
+ "version": "0.2.1-beta.4",
5
+ "gitSha": "64cc094b6eb7214f794b1253ed7b21a367a720d0",
6
+ "distHash": "f46cef1e9da8f0da43121ddfc2e1a0a0e6b82c978105f4665b84f6ab23574086",
7
+ "cacheKey": "0.2.1-beta.4-f46cef1e9da8",
8
8
  "bundledPackages": [
9
9
  {
10
10
  "name": "@fps-games/babylon-renderer",
11
- "version": "0.2.1-beta.3",
12
- "distHash": "f8ee94d224e29418a14c076e2087d81f59e2c81128cbde8a848ee03825e9849d"
11
+ "version": "0.2.1-beta.4",
12
+ "distHash": "936837630630b2e0d9151965543c642f34c0cf8c017317347e184c44437f5ab7"
13
13
  },
14
14
  {
15
15
  "name": "@fps-games/editor-babylon",
16
- "version": "0.2.1-beta.3",
17
- "distHash": "042ba72ad85a4798bc367380e57a5e9bfb118a4234bef798d102e726fb2e2d46"
16
+ "version": "0.2.1-beta.4",
17
+ "distHash": "6031b167ce78cc4ad2c5b488baf7f11706bca7468cec5ed39763bc653b768ec1"
18
18
  },
19
19
  {
20
20
  "name": "@fps-games/editor-browser",
21
- "version": "0.2.1-beta.3",
22
- "distHash": "d0ea7289047415397c5a3784f59c4f47a224591ad9f9b7413d1df830b9e82cc1"
21
+ "version": "0.2.1-beta.4",
22
+ "distHash": "be33bb87da0c9db8e7a25958953238bd7fb499db2b038afcd40f90a81ab6b8f1"
23
23
  },
24
24
  {
25
25
  "name": "@fps-games/editor-core",
26
- "version": "0.2.1-beta.3",
27
- "distHash": "d45d91e0ead3e332bd619202c050235b34c6a53e1328d1ae3c3c42df82045e62"
26
+ "version": "0.2.1-beta.4",
27
+ "distHash": "f256c97e22c81efe91067d4e95329a004cb04cb769d0a90733dc1bb244ae5e92"
28
28
  },
29
29
  {
30
30
  "name": "@fps-games/editor-forge-play",
31
- "version": "0.2.1-beta.3",
32
- "distHash": "c76fb413ce05bbcae6481366d71aed662bc56c65827b6dddbde5478a2740e079"
31
+ "version": "0.2.1-beta.4",
32
+ "distHash": "16989c3fb7d7b881e51e51f124146855a6fe44ba855e42a623f14da1e6651635"
33
33
  },
34
34
  {
35
35
  "name": "@fps-games/editor-playable-sdk",
36
- "version": "0.2.1-beta.3",
37
- "distHash": "1c3daa9b4125756031bda23e40640aab67f9cfc929bc577808159e3e4d5ef6eb"
36
+ "version": "0.2.1-beta.4",
37
+ "distHash": "31e876d8df26fff97eeb1cfe2ef661be72fbb76f35aa2b49faeabce70884fdc5"
38
38
  },
39
39
  {
40
40
  "name": "@fps-games/editor-protocol",
41
- "version": "0.2.1-beta.3",
42
- "distHash": "085b5fd121a111de975194f4fe5c29f2f3a046294bb32a4687ff54fb5a386b26"
41
+ "version": "0.2.1-beta.4",
42
+ "distHash": "9eb5f15e6b6d4bd4c82754b00a2b0c47a1df0e9819f31ae21d4dbb372b89bb69"
43
43
  },
44
44
  {
45
45
  "name": "@fps-games/editor-tooling",
46
- "version": "0.2.1-beta.3",
46
+ "version": "0.2.1-beta.4",
47
47
  "distHash": "adb386db73f3001fecddf7a5961b1d896db58b0fc65ec30d306c41e16a887a07"
48
48
  },
49
49
  {
50
50
  "name": "@fps-games/editor-ui",
51
- "version": "0.2.1-beta.3",
51
+ "version": "0.2.1-beta.4",
52
52
  "distHash": "58b1a9a815d851715535ad7df93fd971bdc276f39195742dae79d539a62df674"
53
53
  },
54
54
  {
55
55
  "name": "@fps-games/playable-assets",
56
- "version": "0.2.1-beta.3",
56
+ "version": "0.2.1-beta.4",
57
57
  "distHash": "b75753686d5fd646cd3a504ad54849fa9466b7db624971208c4480c94f670736"
58
58
  },
59
59
  {
60
60
  "name": "@fps-games/playable-contracts",
61
- "version": "0.2.1-beta.3",
61
+ "version": "0.2.1-beta.4",
62
62
  "distHash": "234d4c791465ed1911668589489210caa54c8198301b5a4ba644849c68eadbbb"
63
63
  },
64
64
  {
65
65
  "name": "@fps-games/playable-rendering",
66
- "version": "0.2.1-beta.3",
66
+ "version": "0.2.1-beta.4",
67
67
  "distHash": "08bad015efd9c32ec9e61cb2ea826d1c87176d447ad28dea8d4604ea31de29b8"
68
68
  },
69
69
  {
70
70
  "name": "@fps-games/playable-runtime",
71
- "version": "0.2.1-beta.3",
71
+ "version": "0.2.1-beta.4",
72
72
  "distHash": "13370a129ad47a618f872b128d9d4fd6d76e7bd03bd947918383f8c3d9b3db70"
73
73
  },
74
74
  {
75
75
  "name": "@fps-games/playable-runtime-data",
76
- "version": "0.2.1-beta.3",
76
+ "version": "0.2.1-beta.4",
77
77
  "distHash": "44bf5edaf873b0888d790a142895d24acae9896b5d38836d6cee1d85a5d9483e"
78
78
  },
79
79
  {
80
80
  "name": "@fps-games/playable-scene",
81
- "version": "0.2.1-beta.3",
81
+ "version": "0.2.1-beta.4",
82
82
  "distHash": "c9988e0a517dbda0250812d61c3cca1b149b25ac36231f5f2b57346f3435dd92"
83
83
  },
84
84
  {
85
85
  "name": "@fps-games/plugin-api",
86
- "version": "0.2.1-beta.3",
86
+ "version": "0.2.1-beta.4",
87
87
  "distHash": "06c15e6ba76748b069aae75d1ec325ad2842e38bad37f91a25fd878ed1bf73f6"
88
88
  },
89
89
  {
90
90
  "name": "@fps-games/plugin-assets",
91
- "version": "0.2.1-beta.3",
92
- "distHash": "3a667ddb27a4ff89940418478fd5bd8a4945b37cdb0da03a2ccbc43ace3342be"
91
+ "version": "0.2.1-beta.4",
92
+ "distHash": "09aa4d95f5b2aa2b8be66f380b8bfee965ecb87976cb83c3c0e6ad99d95706a7"
93
93
  },
94
94
  {
95
95
  "name": "@fps-games/plugin-hierarchy",
96
- "version": "0.2.1-beta.3",
97
- "distHash": "1ca61d273cf806af07368f1de4b224391b22ae72a4cbb24f39cc2ab3b70b6ed7"
96
+ "version": "0.2.1-beta.4",
97
+ "distHash": "573c0a9f1e603fb2235b3e059ba0fb31e03957daedb7d155330a3ca888826d0f"
98
98
  },
99
99
  {
100
100
  "name": "@fps-games/plugin-host",
101
- "version": "0.2.1-beta.3",
101
+ "version": "0.2.1-beta.4",
102
102
  "distHash": "f46e8257e5ed78b4dff21a905d3cf7c54933a6ff1ae458ae2d73126dfc0d8f56"
103
103
  },
104
104
  {
105
105
  "name": "@fps-games/plugin-markers",
106
- "version": "0.2.1-beta.3",
107
- "distHash": "19e1cfb54b824637347391359e289cfe034351166d0ad51ed1b4223281661b3b"
106
+ "version": "0.2.1-beta.4",
107
+ "distHash": "fb98f095e5f1ce9e8ad7a6636e5282c38b0acbca01e82ee23e9236190aaec550"
108
108
  },
109
109
  {
110
110
  "name": "@fps-games/plugin-materials",
111
- "version": "0.2.1-beta.3",
112
- "distHash": "6e39797ad6f3e513d2499df7525c190cf0c11c6f1c0eba8d770786327e1cd588"
111
+ "version": "0.2.1-beta.4",
112
+ "distHash": "a41ee1cbf71e217a002d76d59198ce51278a47c4eae16e6fc1dbb767c6e14c2d"
113
113
  },
114
114
  {
115
115
  "name": "@fps-games/plugin-rendering",
116
- "version": "0.2.1-beta.3",
117
- "distHash": "4080802832051fe434ad89d2bd2b2498edb9034abb17ee06dc48d1dfea98c45d"
116
+ "version": "0.2.1-beta.4",
117
+ "distHash": "7828b053cf3e37fb412df996a2e99619dfed677c3bd4bdfc8db98b80639d0937"
118
118
  },
119
119
  {
120
120
  "name": "@fps-games/plugin-scene",
121
- "version": "0.2.1-beta.3",
122
- "distHash": "adbcf106fd86301ec624f901e8ea070827fded310c8118dfe70df212c5c7b7d2"
121
+ "version": "0.2.1-beta.4",
122
+ "distHash": "b3210ead9c7bf7a49d45058a57fb7e47eb92ac7d6e49d9a35a9320810a3f4062"
123
123
  },
124
124
  {
125
125
  "name": "@fps-games/plugin-shadow-map-experiment",
126
- "version": "0.2.1-beta.3",
127
- "distHash": "d550d6054766d3ba9ce5a9ada76e51ee44490c77bf15fea83362239226323135"
126
+ "version": "0.2.1-beta.4",
127
+ "distHash": "e7aa27b9ec1faf26eb940bab6d18d6196ae358a495cb2c9d09d32f2233f280ab"
128
128
  },
129
129
  {
130
130
  "name": "@fps-games/plugin-shadows",
131
- "version": "0.2.1-beta.3",
132
- "distHash": "afbc294dec97896421c113d1a232b993c796dd9ed984d8cb09190a44649ef44d"
131
+ "version": "0.2.1-beta.4",
132
+ "distHash": "e59808fd8d5fe37010df48549a7e4a6a02f933ff19e4e301cb8230979dfa2251"
133
133
  }
134
134
  ]
135
135
  }
@@ -0,0 +1,8 @@
1
+ import { type EditorCommandAssetInfo } from '@fps-games/editor-protocol';
2
+ import type { LocalEditorHarnessOptions } from '../../local-editor-harness.js';
3
+ import type { LocalEditorCommandAssetSource } from '../source-types.js';
4
+ import { type LocalEditorCommandHarnessState } from '../shared.js';
5
+ export declare function createLocalEditorCommandAssetSource<TDocument, TPatch, TAsset>(state: LocalEditorCommandHarnessState<TDocument, TPatch>, options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>): LocalEditorCommandAssetSource;
6
+ export declare function listEditorCommandVisibleAssetInfos<TDocument, TPatch, TAsset>(state: LocalEditorCommandHarnessState<TDocument, TPatch>, options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>): EditorCommandAssetInfo[];
7
+ export declare function findEditorCommandVisibleAssetInfo<TDocument, TPatch, TAsset>(state: LocalEditorCommandHarnessState<TDocument, TPatch>, options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>, assetId: string): EditorCommandAssetInfo | null;
8
+ //# sourceMappingURL=assets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assets.d.ts","sourceRoot":"","sources":["../../../src/editor-commands/capabilities/assets.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,sBAAsB,EAG5B,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAE/E,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAEL,KAAK,8BAA8B,EACpC,MAAM,cAAc,CAAC;AAKtB,wBAAgB,mCAAmC,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAC3E,KAAK,EAAE,8BAA8B,CAAC,SAAS,EAAE,MAAM,CAAC,EACxD,OAAO,EAAE,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,GAC5D,6BAA6B,CAyD/B;AAgCD,wBAAgB,kCAAkC,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAC1E,KAAK,EAAE,8BAA8B,CAAC,SAAS,EAAE,MAAM,CAAC,EACxD,OAAO,EAAE,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,GAC5D,sBAAsB,EAAE,CAc1B;AAkBD,wBAAgB,iCAAiC,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EACzE,KAAK,EAAE,8BAA8B,CAAC,SAAS,EAAE,MAAM,CAAC,EACxD,OAAO,EAAE,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAC7D,OAAO,EAAE,MAAM,GACd,sBAAsB,GAAG,IAAI,CAI/B"}
@@ -1,45 +1,45 @@
1
- import { EDITOR_AGENT_BRIDGE_CAPABILITY_ID, } from '@fps-games/editor-protocol';
2
- import { createLocalEditorAgentBridgeFailure } from '../diagnostics.js';
3
- import { normalizeAgentBridgeString, } from '../shared.js';
4
- const AGENT_BRIDGE_ASSET_LIST_DEFAULT_LIMIT = 100;
5
- const AGENT_BRIDGE_ASSET_LIST_MAX_LIMIT = 500;
6
- export function createLocalEditorAgentBridgeAssetSource(state, options) {
1
+ import { EDITOR_COMMAND_ID, } from '@fps-games/editor-protocol';
2
+ import { createLocalEditorCommandFailure } from '../diagnostics.js';
3
+ import { normalizeEditorCommandString, } from '../shared.js';
4
+ const EDITOR_COMMAND_ASSET_LIST_DEFAULT_LIMIT = 100;
5
+ const EDITOR_COMMAND_ASSET_LIST_MAX_LIMIT = 500;
6
+ export function createLocalEditorCommandAssetSource(state, options) {
7
7
  return {
8
8
  async listAssets(input) {
9
- await refreshAgentBridgeAssets(state, options);
10
- const allAssets = listAgentBridgeAssets(state, options);
11
- const query = normalizeAgentBridgeString(input.query).toLowerCase();
12
- const kind = normalizeAgentBridgeString(input.kind).toLowerCase();
9
+ await refreshEditorCommandAssets(state, options);
10
+ const allAssets = listEditorCommandAssets(state, options);
11
+ const query = normalizeEditorCommandString(input.query).toLowerCase();
12
+ const kind = normalizeEditorCommandString(input.kind).toLowerCase();
13
13
  const includeUnplaceable = input.includeUnplaceable === true;
14
14
  const limit = normalizeAssetListLimit(input.limit);
15
15
  const filtered = allAssets
16
16
  .filter(asset => includeUnplaceable || asset.placeable !== false)
17
17
  .filter(asset => !kind || String(asset.kind).toLowerCase() === kind)
18
- .filter(asset => !query || agentBridgeAssetMatchesQuery(asset, query));
18
+ .filter(asset => !query || commandServiceAssetMatchesQuery(asset, query));
19
19
  return {
20
20
  assets: filtered.slice(0, limit),
21
21
  assetCount: filtered.length,
22
22
  };
23
23
  },
24
24
  async getAssetInfo(input) {
25
- await refreshAgentBridgeAssets(state, options);
26
- const assetId = normalizeAgentBridgeString(input.assetId);
27
- const asset = listAgentBridgeVisibleAssetInfos(state, options).find(candidate => candidate.assetId === assetId) ?? null;
25
+ await refreshEditorCommandAssets(state, options);
26
+ const assetId = normalizeEditorCommandString(input.assetId);
27
+ const asset = listEditorCommandVisibleAssetInfos(state, options).find(candidate => candidate.assetId === assetId) ?? null;
28
28
  if (!asset) {
29
- return createLocalEditorAgentBridgeFailure(EDITOR_AGENT_BRIDGE_CAPABILITY_ID.ASSET_INFO_GET, `Asset not found: ${assetId || '(empty)'}`, { code: 'asset.notFound' });
29
+ return createLocalEditorCommandFailure(EDITOR_COMMAND_ID.ASSET_INFO_GET, `Asset not found: ${assetId || '(empty)'}`, { code: 'asset.notFound' });
30
30
  }
31
31
  return { asset };
32
32
  },
33
33
  async getAssetAnalysis(input) {
34
- await refreshAgentBridgeAssets(state, options);
35
- const assetId = normalizeAgentBridgeString(input.assetId);
36
- const asset = listAgentBridgeVisibleAssetInfos(state, options).find(candidate => candidate.assetId === assetId) ?? null;
34
+ await refreshEditorCommandAssets(state, options);
35
+ const assetId = normalizeEditorCommandString(input.assetId);
36
+ const asset = listEditorCommandVisibleAssetInfos(state, options).find(candidate => candidate.assetId === assetId) ?? null;
37
37
  if (!asset) {
38
- return createLocalEditorAgentBridgeFailure(EDITOR_AGENT_BRIDGE_CAPABILITY_ID.ASSET_ANALYSIS_GET, `Asset not found: ${assetId || '(empty)'}`, { code: 'asset.notFound' });
38
+ return createLocalEditorCommandFailure(EDITOR_COMMAND_ID.ASSET_ANALYSIS_GET, `Asset not found: ${assetId || '(empty)'}`, { code: 'asset.notFound' });
39
39
  }
40
40
  const analysis = readAssetAnalysis(asset.metadata);
41
41
  if (!analysis) {
42
- return createLocalEditorAgentBridgeFailure(EDITOR_AGENT_BRIDGE_CAPABILITY_ID.ASSET_ANALYSIS_GET, `Asset analysis is not available: ${asset.assetId}`, { code: 'asset.analysisUnavailable' });
42
+ return createLocalEditorCommandFailure(EDITOR_COMMAND_ID.ASSET_ANALYSIS_GET, `Asset analysis is not available: ${asset.assetId}`, { code: 'asset.analysisUnavailable' });
43
43
  }
44
44
  return {
45
45
  assetId: asset.assetId,
@@ -49,11 +49,11 @@ export function createLocalEditorAgentBridgeAssetSource(state, options) {
49
49
  },
50
50
  };
51
51
  }
52
- async function refreshAgentBridgeAssets(state, options) {
52
+ async function refreshEditorCommandAssets(state, options) {
53
53
  state.assets = await options.persistenceAdapter.loadAssets();
54
54
  }
55
- function listAgentBridgeAssets(state, options) {
56
- return listAgentBridgeVisibleAssetInfos(state, options).map(asset => {
55
+ function listEditorCommandAssets(state, options) {
56
+ return listEditorCommandVisibleAssetInfos(state, options).map(asset => {
57
57
  const summary = {
58
58
  assetId: asset.assetId,
59
59
  ...(asset.guid ? { guid: asset.guid } : {}),
@@ -71,40 +71,40 @@ function listAgentBridgeAssets(state, options) {
71
71
  return summary;
72
72
  });
73
73
  }
74
- export function listAgentBridgeVisibleAssetInfos(state, options) {
74
+ export function listEditorCommandVisibleAssetInfos(state, options) {
75
75
  const document = state.session?.getState({ cloneDocuments: false }).workingDocument ?? null;
76
76
  const documentAssets = document
77
77
  ? options.documentAdapter.getBrowserAssetItems?.(document) ?? []
78
78
  : [];
79
79
  const byKey = new Map();
80
- for (const asset of listAgentBridgeAssetInfos(documentAssets)) {
81
- byKey.set(createAgentBridgeAssetInfoKey(asset), asset);
80
+ for (const asset of listEditorCommandAssetInfos(documentAssets)) {
81
+ byKey.set(createEditorCommandAssetInfoKey(asset), asset);
82
82
  }
83
- for (const asset of listAgentBridgeAssetInfos(state.assets)) {
84
- const key = createAgentBridgeAssetInfoKey(asset);
83
+ for (const asset of listEditorCommandAssetInfos(state.assets)) {
84
+ const key = createEditorCommandAssetInfoKey(asset);
85
85
  byKey.set(key, asset);
86
86
  }
87
- return sortAgentBridgeAssetInfos([...byKey.values()]);
87
+ return sortEditorCommandAssetInfos([...byKey.values()]);
88
88
  }
89
- function listAgentBridgeAssetInfos(assets) {
89
+ function listEditorCommandAssetInfos(assets) {
90
90
  return assets
91
- .map(createAgentBridgeAssetInfo)
91
+ .map(createEditorCommandAssetInfo)
92
92
  .filter((asset) => !!asset)
93
93
  .map(asset => ({ ...asset }));
94
94
  }
95
- function sortAgentBridgeAssetInfos(assets) {
95
+ function sortEditorCommandAssetInfos(assets) {
96
96
  return assets
97
97
  .sort((left, right) => (String(left.category ?? '').localeCompare(String(right.category ?? ''))
98
98
  || left.displayName.localeCompare(right.displayName)
99
99
  || left.assetId.localeCompare(right.assetId)));
100
100
  }
101
- export function findAgentBridgeVisibleAssetInfo(state, options, assetId) {
102
- const normalizedAssetId = normalizeAgentBridgeString(assetId);
101
+ export function findEditorCommandVisibleAssetInfo(state, options, assetId) {
102
+ const normalizedAssetId = normalizeEditorCommandString(assetId);
103
103
  if (!normalizedAssetId)
104
104
  return null;
105
- return listAgentBridgeVisibleAssetInfos(state, options).find(candidate => candidate.assetId === normalizedAssetId) ?? null;
105
+ return listEditorCommandVisibleAssetInfos(state, options).find(candidate => candidate.assetId === normalizedAssetId) ?? null;
106
106
  }
107
- function createAgentBridgeAssetInfo(asset) {
107
+ function createEditorCommandAssetInfo(asset) {
108
108
  const record = readRecord(asset);
109
109
  const assetId = readString(record.assetId) || readString(record.id);
110
110
  const displayName = readString(record.displayName) || readString(record.label) || assetId;
@@ -170,12 +170,12 @@ function readAssetAnalysis(metadata) {
170
170
  }
171
171
  function normalizeAssetListLimit(value) {
172
172
  if (value === undefined)
173
- return AGENT_BRIDGE_ASSET_LIST_DEFAULT_LIMIT;
173
+ return EDITOR_COMMAND_ASSET_LIST_DEFAULT_LIMIT;
174
174
  if (typeof value !== 'number' || !Number.isFinite(value))
175
- return AGENT_BRIDGE_ASSET_LIST_DEFAULT_LIMIT;
176
- return Math.max(0, Math.min(AGENT_BRIDGE_ASSET_LIST_MAX_LIMIT, Math.floor(value)));
175
+ return EDITOR_COMMAND_ASSET_LIST_DEFAULT_LIMIT;
176
+ return Math.max(0, Math.min(EDITOR_COMMAND_ASSET_LIST_MAX_LIMIT, Math.floor(value)));
177
177
  }
178
- function agentBridgeAssetMatchesQuery(asset, query) {
178
+ function commandServiceAssetMatchesQuery(asset, query) {
179
179
  return [
180
180
  asset.assetId,
181
181
  asset.guid,
@@ -208,7 +208,7 @@ function inferAssetType(record) {
208
208
  return 'prefab';
209
209
  return 'glb';
210
210
  }
211
- function createAgentBridgeAssetInfoKey(asset) {
211
+ function createEditorCommandAssetInfoKey(asset) {
212
212
  if (asset.guid)
213
213
  return `guid:${asset.guid}`;
214
214
  const external = readRecord(asset.external);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assets.js","sourceRoot":"","sources":["../../../src/editor-commands/capabilities/assets.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n EDITOR_COMMAND_ID,\n type EditorCommandAssetAnalysis,\n type EditorCommandAssetAnalysisGetOutput,\n type EditorCommandAssetInfo,\n type EditorCommandAssetLibraryListOutput,\n type EditorCommandAssetSummary,\n} from '@fps-games/editor-protocol';\nimport type { LocalEditorHarnessOptions } from '../../local-editor-harness.js';\nimport { createLocalEditorCommandFailure } from '../diagnostics.js';\nimport type { LocalEditorCommandAssetSource } from '../source-types.js';\nimport {\n normalizeEditorCommandString,\n type LocalEditorCommandHarnessState,\n} from '../shared.js';\n\nconst EDITOR_COMMAND_ASSET_LIST_DEFAULT_LIMIT = 100;\nconst EDITOR_COMMAND_ASSET_LIST_MAX_LIMIT = 500;\n\nexport function createLocalEditorCommandAssetSource<TDocument, TPatch, TAsset>(\n state: LocalEditorCommandHarnessState<TDocument, TPatch>,\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n): LocalEditorCommandAssetSource {\n return {\n async listAssets(input): Promise<EditorCommandAssetLibraryListOutput> {\n await refreshEditorCommandAssets(state, options);\n const allAssets = listEditorCommandAssets(state, options);\n const query = normalizeEditorCommandString(input.query).toLowerCase();\n const kind = normalizeEditorCommandString(input.kind).toLowerCase();\n const includeUnplaceable = input.includeUnplaceable === true;\n const limit = normalizeAssetListLimit(input.limit);\n const filtered = allAssets\n .filter(asset => includeUnplaceable || asset.placeable !== false)\n .filter(asset => !kind || String(asset.kind).toLowerCase() === kind)\n .filter(asset => !query || commandServiceAssetMatchesQuery(asset, query));\n return {\n assets: filtered.slice(0, limit),\n assetCount: filtered.length,\n };\n },\n async getAssetInfo(input) {\n await refreshEditorCommandAssets(state, options);\n const assetId = normalizeEditorCommandString(input.assetId);\n const asset = listEditorCommandVisibleAssetInfos(state, options).find(candidate => candidate.assetId === assetId) ?? null;\n if (!asset) {\n return createLocalEditorCommandFailure(\n EDITOR_COMMAND_ID.ASSET_INFO_GET,\n `Asset not found: ${assetId || '(empty)'}`,\n { code: 'asset.notFound' },\n );\n }\n return { asset };\n },\n async getAssetAnalysis(input): Promise<EditorCommandAssetAnalysisGetOutput | ReturnType<typeof createLocalEditorCommandFailure>> {\n await refreshEditorCommandAssets(state, options);\n const assetId = normalizeEditorCommandString(input.assetId);\n const asset = listEditorCommandVisibleAssetInfos(state, options).find(candidate => candidate.assetId === assetId) ?? null;\n if (!asset) {\n return createLocalEditorCommandFailure(\n EDITOR_COMMAND_ID.ASSET_ANALYSIS_GET,\n `Asset not found: ${assetId || '(empty)'}`,\n { code: 'asset.notFound' },\n );\n }\n const analysis = readAssetAnalysis(asset.metadata);\n if (!analysis) {\n return createLocalEditorCommandFailure(\n EDITOR_COMMAND_ID.ASSET_ANALYSIS_GET,\n `Asset analysis is not available: ${asset.assetId}`,\n { code: 'asset.analysisUnavailable' },\n );\n }\n return {\n assetId: asset.assetId,\n kind: asset.kind,\n analysis,\n };\n },\n };\n}\n\nasync function refreshEditorCommandAssets<TDocument, TPatch, TAsset>(\n state: LocalEditorCommandHarnessState<TDocument, TPatch>,\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n): Promise<void> {\n state.assets = await options.persistenceAdapter.loadAssets();\n}\n\nfunction listEditorCommandAssets<TDocument, TPatch, TAsset>(\n state: LocalEditorCommandHarnessState<TDocument, TPatch>,\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n): EditorCommandAssetSummary[] {\n return listEditorCommandVisibleAssetInfos(state, options).map(asset => {\n const summary: EditorCommandAssetSummary = {\n assetId: asset.assetId,\n ...(asset.guid ? { guid: asset.guid } : {}),\n displayName: asset.displayName,\n kind: asset.kind,\n type: asset.type,\n ...(asset.category ? { category: asset.category } : {}),\n placeable: asset.placeable,\n ...(asset.byteSize != null ? { byteSize: asset.byteSize } : {}),\n ...(asset.contentHash ? { contentHash: asset.contentHash } : {}),\n ...(asset.relativePath ? { relativePath: asset.relativePath } : {}),\n ...(asset.metadataSummary ? { metadataSummary: asset.metadataSummary } : {}),\n ...(asset.analysisSummary ? { analysisSummary: asset.analysisSummary } : {}),\n };\n return summary;\n });\n}\n\nexport function listEditorCommandVisibleAssetInfos<TDocument, TPatch, TAsset>(\n state: LocalEditorCommandHarnessState<TDocument, TPatch>,\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n): EditorCommandAssetInfo[] {\n const document = state.session?.getState({ cloneDocuments: false }).workingDocument ?? null;\n const documentAssets = document\n ? options.documentAdapter.getBrowserAssetItems?.(document) ?? []\n : [];\n const byKey = new Map<string, EditorCommandAssetInfo>();\n for (const asset of listEditorCommandAssetInfos(documentAssets)) {\n byKey.set(createEditorCommandAssetInfoKey(asset), asset);\n }\n for (const asset of listEditorCommandAssetInfos(state.assets)) {\n const key = createEditorCommandAssetInfoKey(asset);\n byKey.set(key, asset);\n }\n return sortEditorCommandAssetInfos([...byKey.values()]);\n}\n\nfunction listEditorCommandAssetInfos(assets: readonly unknown[]): EditorCommandAssetInfo[] {\n return assets\n .map(createEditorCommandAssetInfo)\n .filter((asset): asset is EditorCommandAssetInfo => !!asset)\n .map(asset => ({ ...asset }));\n}\n\nfunction sortEditorCommandAssetInfos(assets: EditorCommandAssetInfo[]): EditorCommandAssetInfo[] {\n return assets\n .sort((left, right) => (\n String(left.category ?? '').localeCompare(String(right.category ?? ''))\n || left.displayName.localeCompare(right.displayName)\n || left.assetId.localeCompare(right.assetId)\n ));\n}\n\nexport function findEditorCommandVisibleAssetInfo<TDocument, TPatch, TAsset>(\n state: LocalEditorCommandHarnessState<TDocument, TPatch>,\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n assetId: string,\n): EditorCommandAssetInfo | null {\n const normalizedAssetId = normalizeEditorCommandString(assetId);\n if (!normalizedAssetId) return null;\n return listEditorCommandVisibleAssetInfos(state, options).find(candidate => candidate.assetId === normalizedAssetId) ?? null;\n}\n\nfunction createEditorCommandAssetInfo(asset: unknown): EditorCommandAssetInfo | null {\n const record = readRecord(asset);\n const assetId = readString(record.assetId) || readString(record.id);\n const displayName = readString(record.displayName) || readString(record.label) || assetId;\n if (!assetId || !displayName) return null;\n const metadata = readRecord(record.metadata);\n const metadataSummary = createAssetMetadataSummary(metadata);\n const analysis = readAssetAnalysis(metadata);\n return {\n assetId,\n ...(readString(record.guid) ? { guid: readString(record.guid) } : {}),\n displayName,\n kind: readString(record.kind) || inferAssetKind(record),\n type: readString(record.type) || inferAssetType(record),\n ...(readString(record.category) ? { category: readString(record.category) } : {}),\n placeable: record.placeable !== false && record.disabled !== true,\n ...(readNumber(metadata.byteSize) != null ? { byteSize: readNumber(metadata.byteSize)! } : {}),\n ...(readString(metadata.contentHash) ? { contentHash: readString(metadata.contentHash) } : {}),\n ...(readString(metadata.relativePath) ? { relativePath: readString(metadata.relativePath) } : {}),\n ...(metadataSummary ? { metadataSummary } : {}),\n ...(analysis ? { analysisSummary: createAssetAnalysisSummary(analysis) } : {}),\n ...(readString(record.origin) ? { origin: readString(record.origin) } : {}),\n ...(readString(record.dedupeKey) ? { dedupeKey: readString(record.dedupeKey) } : {}),\n ...(readString(record.materialMode) ? { materialMode: readString(record.materialMode) } : {}),\n ...(Object.keys(metadata).length > 0 ? { metadata: structuredClone(metadata) } : {}),\n ...(Object.keys(readRecord(record.external)).length > 0 ? { external: structuredClone(readRecord(record.external)) } : {}),\n ...(Object.keys(readRecord(record.defaults)).length > 0 ? { defaults: structuredClone(readRecord(record.defaults)) } : {}),\n ...(Object.keys(readRecord(record.prefab)).length > 0 ? { prefab: structuredClone(readRecord(record.prefab)) } : {}),\n };\n}\n\nfunction createAssetMetadataSummary(metadata: Record<string, unknown>): Record<string, unknown> | undefined {\n const summary = {\n ...(readString(metadata.originalFileName) ? { originalFileName: readString(metadata.originalFileName) } : {}),\n ...(Array.isArray(metadata.materialSlots) ? { materialSlotCount: metadata.materialSlots.length } : {}),\n ...(readString(metadata.textureUsage) ? { textureUsage: readString(metadata.textureUsage) } : {}),\n ...(Object.keys(readRecord(metadata.capabilities)).length > 0 ? { capabilities: structuredClone(readRecord(metadata.capabilities)) } : {}),\n };\n return Object.keys(summary).length > 0 ? summary : undefined;\n}\n\nfunction createAssetAnalysisSummary(analysis: EditorCommandAssetAnalysis): EditorCommandAssetSummary['analysisSummary'] {\n return {\n ...(readString(analysis.kind) ? { kind: readString(analysis.kind) } : {}),\n ...(readString(analysis.summary) ? { summary: readString(analysis.summary) } : {}),\n ...(readString(analysis.complexity) ? { complexity: readString(analysis.complexity) } : {}),\n ...(readNumber(analysis.nodeCount) != null ? { nodeCount: readNumber(analysis.nodeCount)! } : {}),\n ...(readNumber(analysis.meshCount) != null ? { meshCount: readNumber(analysis.meshCount)! } : {}),\n ...(readNumber(analysis.primitiveCount) != null ? { primitiveCount: readNumber(analysis.primitiveCount)! } : {}),\n ...(readNumber(analysis.materialCount) != null ? { materialCount: readNumber(analysis.materialCount)! } : {}),\n ...(readNumber(analysis.textureCount) != null ? { textureCount: readNumber(analysis.textureCount)! } : {}),\n ...(readNumber(analysis.imageCount) != null ? { imageCount: readNumber(analysis.imageCount)! } : {}),\n ...(readNumber(analysis.animationCount) != null ? { animationCount: readNumber(analysis.animationCount)! } : {}),\n ...(readNumber(analysis.skinCount) != null ? { skinCount: readNumber(analysis.skinCount)! } : {}),\n ...(readNumber(analysis.width) != null ? { width: readNumber(analysis.width)! } : {}),\n ...(readNumber(analysis.height) != null ? { height: readNumber(analysis.height)! } : {}),\n ...(readString(analysis.mime) ? { mime: readString(analysis.mime) } : {}),\n ...(typeof analysis.hasAlpha === 'boolean' ? { hasAlpha: analysis.hasAlpha } : {}),\n ...(Array.isArray(analysis.diagnostics) ? { diagnostics: structuredClone(analysis.diagnostics) } : {}),\n };\n}\n\nfunction readAssetAnalysis(metadata: unknown): EditorCommandAssetAnalysis | null {\n const analysis = readRecord(readRecord(metadata).assetAnalysis);\n return Object.keys(analysis).length > 0 ? structuredClone(analysis) as EditorCommandAssetAnalysis : null;\n}\n\nfunction normalizeAssetListLimit(value: unknown): number {\n if (value === undefined) return EDITOR_COMMAND_ASSET_LIST_DEFAULT_LIMIT;\n if (typeof value !== 'number' || !Number.isFinite(value)) return EDITOR_COMMAND_ASSET_LIST_DEFAULT_LIMIT;\n return Math.max(0, Math.min(EDITOR_COMMAND_ASSET_LIST_MAX_LIMIT, Math.floor(value)));\n}\n\nfunction commandServiceAssetMatchesQuery(asset: EditorCommandAssetSummary, query: string): boolean {\n return [\n asset.assetId,\n asset.guid,\n asset.displayName,\n asset.kind,\n asset.type,\n asset.category,\n asset.relativePath,\n asset.contentHash,\n ].some(value => String(value ?? '').toLowerCase().includes(query));\n}\n\nfunction inferAssetKind(record: Record<string, unknown>): string {\n const type = readString(record.type);\n if (type === 'glb') return 'model';\n if (type === 'prefab') return 'prefab';\n if (type === 'texture') return 'texture';\n return 'model';\n}\n\nfunction inferAssetType(record: Record<string, unknown>): string {\n const type = readString(record.type);\n if (type) return type;\n const kind = readString(record.kind);\n if (kind === 'texture') return 'texture';\n if (kind === 'prefab') return 'prefab';\n return 'glb';\n}\n\nfunction createEditorCommandAssetInfoKey(asset: EditorCommandAssetInfo): string {\n if (asset.guid) return `guid:${asset.guid}`;\n const external = readRecord(asset.external);\n const platformAssetId = readString(external.platformAssetId);\n if (platformAssetId) return `external:${platformAssetId}`;\n if (asset.dedupeKey) return `dedupe:${asset.dedupeKey}`;\n return `asset:${asset.assetId}`;\n}\n\nfunction readRecord(value: unknown): Record<string, any> {\n return value && typeof value === 'object' && !Array.isArray(value) ? value as Record<string, any> : {};\n}\n\nfunction readString(value: unknown): string {\n return typeof value === 'string' && value.trim() ? value.trim() : '';\n}\n\nfunction readNumber(value: unknown): number | null {\n return typeof value === 'number' && Number.isFinite(value) ? value : null;\n}\n"]}
@@ -0,0 +1,5 @@
1
+ import type { LocalEditorCommandStateSource } from '../source-types.js';
2
+ import { type LocalEditorCommandCapabilitySourceOperations, type LocalEditorCommandHarnessState } from '../shared.js';
3
+ import type { LocalEditorHarnessOptions } from '../../local-editor-harness.js';
4
+ export declare function createLocalEditorCommandStateSource<TDocument, TPatch, TAsset>(state: LocalEditorCommandHarnessState<TDocument, TPatch>, options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>, operations: LocalEditorCommandCapabilitySourceOperations<TDocument>): LocalEditorCommandStateSource;
5
+ //# sourceMappingURL=editor-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editor-state.d.ts","sourceRoot":"","sources":["../../../src/editor-commands/capabilities/editor-state.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAGL,KAAK,4CAA4C,EACjD,KAAK,8BAA8B,EACpC,MAAM,cAAc,CAAC;AAKtB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAK/E,wBAAgB,mCAAmC,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAC3E,KAAK,EAAE,8BAA8B,CAAC,SAAS,EAAE,MAAM,CAAC,EACxD,OAAO,EAAE,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAC7D,UAAU,EAAE,4CAA4C,CAAC,SAAS,CAAC,GAClE,6BAA6B,CAY/B"}
@@ -1,30 +1,30 @@
1
- import { cloneAgentBridgeSelection, getAgentBridgeSafeSceneReadModel, } from '../shared.js';
2
- import { createAgentBridgeSceneObject, listAgentBridgeSceneObjects, } from './scene-objects.js';
3
- const AGENT_BRIDGE_SNAPSHOT_DEFAULT_OBJECT_LIMIT = 100;
4
- const AGENT_BRIDGE_SNAPSHOT_MAX_OBJECT_LIMIT = 500;
5
- export function createLocalEditorAgentBridgeStateSource(state, options, operations) {
1
+ import { cloneEditorCommandSelection, getEditorCommandSafeSceneReadModel, } from '../shared.js';
2
+ import { createEditorCommandSceneObject, listEditorCommandSceneObjects, } from './scene-objects.js';
3
+ const EDITOR_COMMAND_SNAPSHOT_DEFAULT_OBJECT_LIMIT = 100;
4
+ const EDITOR_COMMAND_SNAPSHOT_MAX_OBJECT_LIMIT = 500;
5
+ export function createLocalEditorCommandStateSource(state, options, operations) {
6
6
  return {
7
7
  getSnapshot(input) {
8
- return createAgentBridgeEditorSnapshot(state, options, input, operations);
8
+ return createEditorCommandEditorSnapshot(state, options, input, operations);
9
9
  },
10
10
  getState(input) {
11
- return createAgentBridgeEditorState(state, options, input.objectId, operations);
11
+ return createEditorCommandEditorState(state, options, input.objectId, operations);
12
12
  },
13
13
  listDiagnostics(input) {
14
14
  return operations.getDiagnostics(input);
15
15
  },
16
16
  };
17
17
  }
18
- function createAgentBridgeEditorState(state, options, objectId, operations) {
18
+ function createEditorCommandEditorState(state, options, objectId, operations) {
19
19
  const sessionState = state.session?.getState({ cloneDocuments: false }) ?? null;
20
20
  const document = sessionState?.workingDocument ?? null;
21
- const safeScene = getAgentBridgeSafeSceneReadModel(operations);
21
+ const safeScene = getEditorCommandSafeSceneReadModel(operations);
22
22
  const safeSelection = safeScene.selection;
23
23
  const requestedObjectId = typeof objectId === 'string' && objectId.trim()
24
24
  ? objectId.trim()
25
25
  : safeSelection.activeId ?? undefined;
26
26
  const object = document && requestedObjectId
27
- ? createAgentBridgeSceneObject(state, options, document, requestedObjectId, safeScene.hierarchy)
27
+ ? createEditorCommandSceneObject(state, options, document, requestedObjectId, safeScene.hierarchy)
28
28
  : null;
29
29
  return {
30
30
  mode: state.mode,
@@ -33,17 +33,17 @@ function createAgentBridgeEditorState(state, options, objectId, operations) {
33
33
  statusDetails: state.statusDetails,
34
34
  dirty: sessionState?.dirty,
35
35
  busy: state.busy,
36
- selection: cloneAgentBridgeSelection(safeSelection),
36
+ selection: cloneEditorCommandSelection(safeSelection),
37
37
  object,
38
- diagnostics: createAgentBridgeStateDiagnostics(state, operations),
38
+ diagnostics: createEditorCommandStateDiagnostics(state, operations),
39
39
  };
40
40
  }
41
- function createAgentBridgeEditorSnapshot(state, options, input, operations) {
41
+ function createEditorCommandEditorSnapshot(state, options, input, operations) {
42
42
  const sessionState = state.session?.getState({ cloneDocuments: false }) ?? null;
43
43
  const document = sessionState?.workingDocument ?? null;
44
- const safeSelection = getAgentBridgeSafeSceneReadModel(operations).selection;
44
+ const safeSelection = getEditorCommandSafeSceneReadModel(operations).selection;
45
45
  const objects = state.mode === 'editor' && document
46
- ? listAgentBridgeSceneObjects(state, options, document, input.includeUnselectable === true, operations)
46
+ ? listEditorCommandSceneObjects(state, options, document, input.includeUnselectable === true, operations)
47
47
  : [];
48
48
  const snapshot = {
49
49
  mode: state.mode,
@@ -51,15 +51,15 @@ function createAgentBridgeEditorSnapshot(state, options, input, operations) {
51
51
  dirty: sessionState?.dirty ?? false,
52
52
  status: state.status,
53
53
  statusTone: state.statusTone,
54
- selection: cloneAgentBridgeSelection(safeSelection),
54
+ selection: cloneEditorCommandSelection(safeSelection),
55
55
  objectCount: objects.length,
56
56
  };
57
57
  if (input.includeObjects === true) {
58
- snapshot.objects = objects.slice(0, normalizeAgentBridgeSnapshotObjectLimit(input.objectLimit));
58
+ snapshot.objects = objects.slice(0, normalizeEditorCommandSnapshotObjectLimit(input.objectLimit));
59
59
  }
60
60
  return snapshot;
61
61
  }
62
- function createAgentBridgeStateDiagnostics(state, operations) {
62
+ function createEditorCommandStateDiagnostics(state, operations) {
63
63
  return operations.getStatusDiagnostics().map(diagnostic => ({
64
64
  severity: diagnostic.severity,
65
65
  source: diagnostic.source,
@@ -77,11 +77,11 @@ function createAgentBridgeStateDiagnostics(state, operations) {
77
77
  },
78
78
  }));
79
79
  }
80
- function normalizeAgentBridgeSnapshotObjectLimit(value) {
80
+ function normalizeEditorCommandSnapshotObjectLimit(value) {
81
81
  if (value === undefined)
82
- return AGENT_BRIDGE_SNAPSHOT_DEFAULT_OBJECT_LIMIT;
82
+ return EDITOR_COMMAND_SNAPSHOT_DEFAULT_OBJECT_LIMIT;
83
83
  if (typeof value !== 'number' || !Number.isFinite(value))
84
- return AGENT_BRIDGE_SNAPSHOT_DEFAULT_OBJECT_LIMIT;
85
- return Math.max(0, Math.min(AGENT_BRIDGE_SNAPSHOT_MAX_OBJECT_LIMIT, Math.floor(value)));
84
+ return EDITOR_COMMAND_SNAPSHOT_DEFAULT_OBJECT_LIMIT;
85
+ return Math.max(0, Math.min(EDITOR_COMMAND_SNAPSHOT_MAX_OBJECT_LIMIT, Math.floor(value)));
86
86
  }
87
87
  //# sourceMappingURL=editor-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editor-state.js","sourceRoot":"","sources":["../../../src/editor-commands/capabilities/editor-state.ts"],"names":[],"mappings":"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","sourcesContent":["import type {\n EditorCommandEditorSnapshot,\n EditorCommandEditorSnapshotGetInput,\n EditorCommandEditorState,\n} from '@fps-games/editor-protocol';\nimport type { LocalEditorCommandStateSource } from '../source-types.js';\nimport {\n cloneEditorCommandSelection,\n getEditorCommandSafeSceneReadModel,\n type LocalEditorCommandCapabilitySourceOperations,\n type LocalEditorCommandHarnessState,\n} from '../shared.js';\nimport {\n createEditorCommandSceneObject,\n listEditorCommandSceneObjects,\n} from './scene-objects.js';\nimport type { LocalEditorHarnessOptions } from '../../local-editor-harness.js';\n\nconst EDITOR_COMMAND_SNAPSHOT_DEFAULT_OBJECT_LIMIT = 100;\nconst EDITOR_COMMAND_SNAPSHOT_MAX_OBJECT_LIMIT = 500;\n\nexport function createLocalEditorCommandStateSource<TDocument, TPatch, TAsset>(\n state: LocalEditorCommandHarnessState<TDocument, TPatch>,\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n operations: LocalEditorCommandCapabilitySourceOperations<TDocument>,\n): LocalEditorCommandStateSource {\n return {\n getSnapshot(input) {\n return createEditorCommandEditorSnapshot(state, options, input, operations);\n },\n getState(input) {\n return createEditorCommandEditorState(state, options, input.objectId, operations);\n },\n listDiagnostics(input) {\n return operations.getDiagnostics(input);\n },\n };\n}\n\nfunction createEditorCommandEditorState<TDocument, TPatch, TAsset>(\n state: LocalEditorCommandHarnessState<TDocument, TPatch>,\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n objectId: string | undefined,\n operations: LocalEditorCommandCapabilitySourceOperations<TDocument>,\n): EditorCommandEditorState {\n const sessionState = state.session?.getState({ cloneDocuments: false }) ?? null;\n const document = sessionState?.workingDocument ?? null;\n const safeScene = getEditorCommandSafeSceneReadModel(operations);\n const safeSelection = safeScene.selection;\n const requestedObjectId = typeof objectId === 'string' && objectId.trim()\n ? objectId.trim()\n : safeSelection.activeId ?? undefined;\n const object = document && requestedObjectId\n ? createEditorCommandSceneObject(\n state,\n options,\n document,\n requestedObjectId,\n safeScene.hierarchy,\n )\n : null;\n return {\n mode: state.mode,\n status: state.status,\n statusTone: state.statusTone,\n statusDetails: state.statusDetails,\n dirty: sessionState?.dirty,\n busy: state.busy,\n selection: cloneEditorCommandSelection(safeSelection),\n object,\n diagnostics: createEditorCommandStateDiagnostics(state, operations),\n };\n}\n\nfunction createEditorCommandEditorSnapshot<TDocument, TPatch, TAsset>(\n state: LocalEditorCommandHarnessState<TDocument, TPatch>,\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n input: EditorCommandEditorSnapshotGetInput,\n operations: LocalEditorCommandCapabilitySourceOperations<TDocument>,\n): EditorCommandEditorSnapshot {\n const sessionState = state.session?.getState({ cloneDocuments: false }) ?? null;\n const document = sessionState?.workingDocument ?? null;\n const safeSelection = getEditorCommandSafeSceneReadModel(operations).selection;\n const objects = state.mode === 'editor' && document\n ? listEditorCommandSceneObjects(state, options, document, input.includeUnselectable === true, operations)\n : [];\n const snapshot: EditorCommandEditorSnapshot = {\n mode: state.mode,\n busy: state.busy,\n dirty: sessionState?.dirty ?? false,\n status: state.status,\n statusTone: state.statusTone,\n selection: cloneEditorCommandSelection(safeSelection),\n objectCount: objects.length,\n };\n if (input.includeObjects === true) {\n snapshot.objects = objects.slice(0, normalizeEditorCommandSnapshotObjectLimit(input.objectLimit));\n }\n return snapshot;\n}\n\nfunction createEditorCommandStateDiagnostics<TDocument, TPatch>(\n state: LocalEditorCommandHarnessState<TDocument, TPatch>,\n operations: LocalEditorCommandCapabilitySourceOperations<TDocument>,\n): EditorCommandEditorState['diagnostics'] {\n return operations.getStatusDiagnostics().map(diagnostic => ({\n severity: diagnostic.severity,\n source: diagnostic.source,\n code: diagnostic.code,\n message: diagnostic.message,\n ...(diagnostic.locator?.objectId || diagnostic.locator?.rowId\n ? { objectId: diagnostic.locator.objectId ?? diagnostic.locator.rowId }\n : {}),\n details: {\n ...(diagnostic.scopeId ? { scopeId: diagnostic.scopeId } : {}),\n ...(diagnostic.locator?.objectId ? { targetId: diagnostic.locator.objectId } : {}),\n ...(diagnostic.documentRevision != null ? { documentRevision: diagnostic.documentRevision } : {}),\n ...(diagnostic.projectionRevision != null ? { projectionRevision: diagnostic.projectionRevision } : {}),\n ...(diagnostic.details ?? {}),\n },\n }));\n}\n\nfunction normalizeEditorCommandSnapshotObjectLimit(value: unknown): number {\n if (value === undefined) return EDITOR_COMMAND_SNAPSHOT_DEFAULT_OBJECT_LIMIT;\n if (typeof value !== 'number' || !Number.isFinite(value)) return EDITOR_COMMAND_SNAPSHOT_DEFAULT_OBJECT_LIMIT;\n return Math.max(0, Math.min(EDITOR_COMMAND_SNAPSHOT_MAX_OBJECT_LIMIT, Math.floor(value)));\n}\n"]}
@@ -0,0 +1,4 @@
1
+ import type { LocalEditorCommandHierarchySource } from '../source-types.js';
2
+ import type { LocalEditorCommandCapabilitySourceOperations } from '../shared.js';
3
+ export declare function createLocalEditorCommandHierarchySource<TDocument>(operations: LocalEditorCommandCapabilitySourceOperations<TDocument>): LocalEditorCommandHierarchySource;
4
+ //# sourceMappingURL=hierarchy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hierarchy.d.ts","sourceRoot":"","sources":["../../../src/editor-commands/capabilities/hierarchy.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,KAAK,EAAE,4CAA4C,EAAE,MAAM,cAAc,CAAC;AAiBjF,wBAAgB,uCAAuC,CAAC,SAAS,EAC/D,UAAU,EAAE,4CAA4C,CAAC,SAAS,CAAC,GAClE,iCAAiC,CAUnC"}
@@ -1,13 +1,13 @@
1
- import { EDITOR_AGENT_BRIDGE_CAPABILITY_ID, } from '@fps-games/editor-protocol';
2
- import { createLocalEditorAgentBridgeFailure } from '../diagnostics.js';
1
+ import { EDITOR_COMMAND_ID, } from '@fps-games/editor-protocol';
2
+ import { createLocalEditorCommandFailure } from '../diagnostics.js';
3
3
  const DEFAULT_HIERARCHY_SCOPE_PAGE_LIMIT = 200;
4
4
  const MAX_HIERARCHY_SCOPE_PAGE_LIMIT = 1000;
5
- export function createLocalEditorAgentBridgeHierarchySource(operations) {
5
+ export function createLocalEditorCommandHierarchySource(operations) {
6
6
  const cursorKey = createHierarchyCursorKey();
7
7
  return {
8
8
  getScope: input => queryHierarchyScope(operations.getHierarchyScope(), input, cursorKey),
9
9
  listOperations: input => operations.listHierarchyOperations(input),
10
- executeOperation: input => operations.executeHierarchyOperation(input),
10
+ executeOperation: (input, context) => operations.executeHierarchyOperation(input, context?.serializedAuthoringAccess),
11
11
  };
12
12
  }
13
13
  async function queryHierarchyScope(scope, input, cursorKey) {
@@ -204,6 +204,6 @@ function hexToBytes(value) {
204
204
  return bytes;
205
205
  }
206
206
  function hierarchyScopeQueryFailure(code, message) {
207
- return createLocalEditorAgentBridgeFailure(EDITOR_AGENT_BRIDGE_CAPABILITY_ID.HIERARCHY_SCOPE_GET, message, { code, source: 'hierarchy' });
207
+ return createLocalEditorCommandFailure(EDITOR_COMMAND_ID.HIERARCHY_SCOPE_GET, message, { code, source: 'hierarchy' });
208
208
  }
209
209
  //# sourceMappingURL=hierarchy.js.map