@fps-games/editor 0.1.5-beta.5 → 0.1.7-beta.1

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 (469) hide show
  1. package/dist/agent-bridge/capabilities/assets.d.ts +8 -0
  2. package/dist/agent-bridge/capabilities/assets.d.ts.map +1 -0
  3. package/dist/agent-bridge/capabilities/assets.js +226 -0
  4. package/dist/agent-bridge/capabilities/assets.js.map +1 -0
  5. package/dist/agent-bridge/capabilities/editor-state.d.ts +5 -0
  6. package/dist/agent-bridge/capabilities/editor-state.d.ts.map +1 -0
  7. package/dist/agent-bridge/capabilities/editor-state.js +72 -0
  8. package/dist/agent-bridge/capabilities/editor-state.js.map +1 -0
  9. package/dist/agent-bridge/capabilities/host-lifecycle.d.ts +4 -0
  10. package/dist/agent-bridge/capabilities/host-lifecycle.d.ts.map +1 -0
  11. package/dist/agent-bridge/capabilities/host-lifecycle.js +87 -0
  12. package/dist/agent-bridge/capabilities/host-lifecycle.js.map +1 -0
  13. package/dist/agent-bridge/capabilities/prefabs.d.ts +5 -0
  14. package/dist/agent-bridge/capabilities/prefabs.d.ts.map +1 -0
  15. package/dist/agent-bridge/capabilities/prefabs.js +735 -0
  16. package/dist/agent-bridge/capabilities/prefabs.js.map +1 -0
  17. package/dist/agent-bridge/capabilities/scene-objects.d.ts +9 -0
  18. package/dist/agent-bridge/capabilities/scene-objects.d.ts.map +1 -0
  19. package/dist/agent-bridge/capabilities/scene-objects.js +394 -0
  20. package/dist/agent-bridge/capabilities/scene-objects.js.map +1 -0
  21. package/dist/agent-bridge/capabilities/selection.d.ts +5 -0
  22. package/dist/agent-bridge/capabilities/selection.d.ts.map +1 -0
  23. package/dist/agent-bridge/capabilities/selection.js +57 -0
  24. package/dist/agent-bridge/capabilities/selection.js.map +1 -0
  25. package/dist/agent-bridge/capabilities/shadows.d.ts +5 -0
  26. package/dist/agent-bridge/capabilities/shadows.d.ts.map +1 -0
  27. package/dist/agent-bridge/capabilities/shadows.js +1876 -0
  28. package/dist/agent-bridge/capabilities/shadows.js.map +1 -0
  29. package/dist/agent-bridge/capabilities/transform.d.ts +5 -0
  30. package/dist/agent-bridge/capabilities/transform.d.ts.map +1 -0
  31. package/dist/agent-bridge/capabilities/transform.js +162 -0
  32. package/dist/agent-bridge/capabilities/transform.js.map +1 -0
  33. package/dist/agent-bridge/capabilities/ui-regions.d.ts +4 -0
  34. package/dist/agent-bridge/capabilities/ui-regions.d.ts.map +1 -0
  35. package/dist/agent-bridge/capabilities/ui-regions.js +168 -0
  36. package/dist/agent-bridge/capabilities/ui-regions.js.map +1 -0
  37. package/dist/agent-bridge/capabilities/viewport.d.ts +5 -0
  38. package/dist/agent-bridge/capabilities/viewport.d.ts.map +1 -0
  39. package/dist/agent-bridge/capabilities/viewport.js +407 -0
  40. package/dist/agent-bridge/capabilities/viewport.js.map +1 -0
  41. package/dist/agent-bridge/capability-sources.d.ts +6 -0
  42. package/dist/agent-bridge/capability-sources.d.ts.map +1 -0
  43. package/dist/agent-bridge/capability-sources.js +26 -0
  44. package/dist/agent-bridge/capability-sources.js.map +1 -0
  45. package/dist/agent-bridge/diagnostics.d.ts +12 -0
  46. package/dist/agent-bridge/diagnostics.d.ts.map +1 -0
  47. package/dist/agent-bridge/diagnostics.js +45 -0
  48. package/dist/agent-bridge/diagnostics.js.map +1 -0
  49. package/dist/agent-bridge/index.d.ts +5 -0
  50. package/dist/agent-bridge/index.d.ts.map +1 -0
  51. package/dist/agent-bridge/index.js +5 -0
  52. package/dist/agent-bridge/index.js.map +1 -0
  53. package/dist/agent-bridge/register.d.ts +4 -0
  54. package/dist/agent-bridge/register.d.ts.map +1 -0
  55. package/dist/agent-bridge/register.js +908 -0
  56. package/dist/agent-bridge/register.js.map +1 -0
  57. package/dist/agent-bridge/shared.d.ts +189 -0
  58. package/dist/agent-bridge/shared.d.ts.map +1 -0
  59. package/dist/agent-bridge/shared.js +39 -0
  60. package/dist/agent-bridge/shared.js.map +1 -0
  61. package/dist/agent-bridge/source-types.d.ts +90 -0
  62. package/dist/agent-bridge/source-types.d.ts.map +1 -0
  63. package/dist/agent-bridge/source-types.js +2 -0
  64. package/dist/agent-bridge/source-types.js.map +1 -0
  65. package/dist/build-info.json +17 -17
  66. package/dist/local-editor-agent-actions.d.ts +8 -1
  67. package/dist/local-editor-agent-actions.d.ts.map +1 -1
  68. package/dist/local-editor-agent-actions.js +171 -12
  69. package/dist/local-editor-agent-actions.js.map +1 -1
  70. package/dist/local-editor-agent-bridge-transport.d.ts +95 -0
  71. package/dist/local-editor-agent-bridge-transport.d.ts.map +1 -0
  72. package/dist/local-editor-agent-bridge-transport.js +340 -0
  73. package/dist/local-editor-agent-bridge-transport.js.map +1 -0
  74. package/dist/local-editor-agent-bridge.d.ts +2 -0
  75. package/dist/local-editor-agent-bridge.d.ts.map +1 -0
  76. package/dist/local-editor-agent-bridge.js +2 -0
  77. package/dist/local-editor-agent-bridge.js.map +1 -0
  78. package/dist/local-editor-agent-context.d.ts +29 -1
  79. package/dist/local-editor-agent-context.d.ts.map +1 -1
  80. package/dist/local-editor-agent-context.js +403 -0
  81. package/dist/local-editor-agent-context.js.map +1 -1
  82. package/dist/local-editor-harness.d.ts +128 -6
  83. package/dist/local-editor-harness.d.ts.map +1 -1
  84. package/dist/local-editor-harness.js +2730 -151
  85. package/dist/local-editor-harness.js.map +1 -1
  86. package/dist/local-editor-marker-graph.d.ts +92 -0
  87. package/dist/local-editor-marker-graph.d.ts.map +1 -0
  88. package/dist/local-editor-marker-graph.js +1432 -0
  89. package/dist/local-editor-marker-graph.js.map +1 -0
  90. package/dist/local-editor-performance-stats.js +1 -1
  91. package/dist/local-editor-performance-stats.js.map +1 -1
  92. package/dist/playable-babylon-facade.d.ts +2 -2
  93. package/dist/playable-babylon-facade.d.ts.map +1 -1
  94. package/dist/playable-babylon-facade.js +1 -1
  95. package/dist/playable-babylon-facade.js.map +1 -1
  96. package/dist/playable-babylon-rendering.js +20 -0
  97. package/dist/playable-babylon-rendering.js.map +1 -1
  98. package/dist/playable-local-editor-host.d.ts +57 -7
  99. package/dist/playable-local-editor-host.d.ts.map +1 -1
  100. package/dist/playable-local-editor-host.js +25 -1
  101. package/dist/playable-local-editor-host.js.map +1 -1
  102. package/dist/playable-sdk.d.ts +4 -2
  103. package/dist/playable-sdk.d.ts.map +1 -1
  104. package/dist/playable-sdk.js +2 -1
  105. package/dist/playable-sdk.js.map +1 -1
  106. package/node_modules/@fps-games/babylon-renderer/dist/shadows/blob-shadow-system.d.ts.map +1 -1
  107. package/node_modules/@fps-games/babylon-renderer/dist/shadows/blob-shadow-system.js +6 -4
  108. package/node_modules/@fps-games/babylon-renderer/dist/shadows/blob-shadow-system.js.map +1 -1
  109. package/node_modules/@fps-games/babylon-renderer/dist/shadows/planar-shadow-shaders.d.ts.map +1 -1
  110. package/node_modules/@fps-games/babylon-renderer/dist/shadows/planar-shadow-shaders.js +103 -1
  111. package/node_modules/@fps-games/babylon-renderer/dist/shadows/planar-shadow-shaders.js.map +1 -1
  112. package/node_modules/@fps-games/babylon-renderer/dist/shadows/planar-shadow-system.d.ts.map +1 -1
  113. package/node_modules/@fps-games/babylon-renderer/dist/shadows/planar-shadow-system.js +330 -27
  114. package/node_modules/@fps-games/babylon-renderer/dist/shadows/planar-shadow-system.js.map +1 -1
  115. package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-artifact-system.d.ts.map +1 -1
  116. package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-artifact-system.js +159 -0
  117. package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-artifact-system.js.map +1 -1
  118. package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-baker.js +8 -1
  119. package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-baker.js.map +1 -1
  120. package/node_modules/@fps-games/babylon-renderer/dist/shadows/types.d.ts +53 -2
  121. package/node_modules/@fps-games/babylon-renderer/dist/shadows/types.d.ts.map +1 -1
  122. package/node_modules/@fps-games/babylon-renderer/dist/shadows/types.js +1 -0
  123. package/node_modules/@fps-games/babylon-renderer/dist/shadows/types.js.map +1 -1
  124. package/node_modules/@fps-games/babylon-renderer/package.json +1 -1
  125. package/node_modules/@fps-games/editor-babylon/dist/camera-controller.d.ts.map +1 -1
  126. package/node_modules/@fps-games/editor-babylon/dist/camera-controller.js +11 -0
  127. package/node_modules/@fps-games/editor-babylon/dist/camera-controller.js.map +1 -1
  128. package/node_modules/@fps-games/editor-babylon/dist/editor-sky.d.ts +3 -1
  129. package/node_modules/@fps-games/editor-babylon/dist/editor-sky.d.ts.map +1 -1
  130. package/node_modules/@fps-games/editor-babylon/dist/editor-sky.js +114 -18
  131. package/node_modules/@fps-games/editor-babylon/dist/editor-sky.js.map +1 -1
  132. package/node_modules/@fps-games/editor-babylon/dist/editor-world.d.ts +1 -0
  133. package/node_modules/@fps-games/editor-babylon/dist/editor-world.d.ts.map +1 -1
  134. package/node_modules/@fps-games/editor-babylon/dist/editor-world.js +3 -0
  135. package/node_modules/@fps-games/editor-babylon/dist/editor-world.js.map +1 -1
  136. package/node_modules/@fps-games/editor-babylon/dist/index.d.ts +3 -0
  137. package/node_modules/@fps-games/editor-babylon/dist/index.d.ts.map +1 -1
  138. package/node_modules/@fps-games/editor-babylon/dist/index.js +3 -0
  139. package/node_modules/@fps-games/editor-babylon/dist/index.js.map +1 -1
  140. package/node_modules/@fps-games/editor-babylon/dist/marker-overlay.d.ts +52 -0
  141. package/node_modules/@fps-games/editor-babylon/dist/marker-overlay.d.ts.map +1 -0
  142. package/node_modules/@fps-games/editor-babylon/dist/marker-overlay.js +1395 -0
  143. package/node_modules/@fps-games/editor-babylon/dist/marker-overlay.js.map +1 -0
  144. package/node_modules/@fps-games/editor-babylon/dist/material-property-adapter.d.ts.map +1 -1
  145. package/node_modules/@fps-games/editor-babylon/dist/material-property-adapter.js +4 -65
  146. package/node_modules/@fps-games/editor-babylon/dist/material-property-adapter.js.map +1 -1
  147. package/node_modules/@fps-games/editor-babylon/dist/material-slot-source-resolver.d.ts +28 -0
  148. package/node_modules/@fps-games/editor-babylon/dist/material-slot-source-resolver.d.ts.map +1 -0
  149. package/node_modules/@fps-games/editor-babylon/dist/material-slot-source-resolver.js +235 -0
  150. package/node_modules/@fps-games/editor-babylon/dist/material-slot-source-resolver.js.map +1 -0
  151. package/node_modules/@fps-games/editor-babylon/dist/prefab-comparison-preview-controller.d.ts +37 -0
  152. package/node_modules/@fps-games/editor-babylon/dist/prefab-comparison-preview-controller.d.ts.map +1 -0
  153. package/node_modules/@fps-games/editor-babylon/dist/prefab-comparison-preview-controller.js +451 -0
  154. package/node_modules/@fps-games/editor-babylon/dist/prefab-comparison-preview-controller.js.map +1 -0
  155. package/node_modules/@fps-games/editor-babylon/dist/projection-asset-container-importer.d.ts.map +1 -1
  156. package/node_modules/@fps-games/editor-babylon/dist/projection-asset-container-importer.js +14 -3
  157. package/node_modules/@fps-games/editor-babylon/dist/projection-asset-container-importer.js.map +1 -1
  158. package/node_modules/@fps-games/editor-babylon/dist/projection-pick-resolver.d.ts +1 -0
  159. package/node_modules/@fps-games/editor-babylon/dist/projection-pick-resolver.d.ts.map +1 -1
  160. package/node_modules/@fps-games/editor-babylon/dist/projection-pick-resolver.js +20 -4
  161. package/node_modules/@fps-games/editor-babylon/dist/projection-pick-resolver.js.map +1 -1
  162. package/node_modules/@fps-games/editor-babylon/dist/projection-source-owner-path.d.ts +3 -6
  163. package/node_modules/@fps-games/editor-babylon/dist/projection-source-owner-path.d.ts.map +1 -1
  164. package/node_modules/@fps-games/editor-babylon/dist/projection-source-owner-path.js +4 -37
  165. package/node_modules/@fps-games/editor-babylon/dist/projection-source-owner-path.js.map +1 -1
  166. package/node_modules/@fps-games/editor-babylon/dist/projection.d.ts +74 -1
  167. package/node_modules/@fps-games/editor-babylon/dist/projection.d.ts.map +1 -1
  168. package/node_modules/@fps-games/editor-babylon/dist/projection.js +641 -52
  169. package/node_modules/@fps-games/editor-babylon/dist/projection.js.map +1 -1
  170. package/node_modules/@fps-games/editor-babylon/dist/scene-view-camera-controller.d.ts +11 -0
  171. package/node_modules/@fps-games/editor-babylon/dist/scene-view-camera-controller.d.ts.map +1 -1
  172. package/node_modules/@fps-games/editor-babylon/dist/scene-view-camera-controller.js +113 -29
  173. package/node_modules/@fps-games/editor-babylon/dist/scene-view-camera-controller.js.map +1 -1
  174. package/node_modules/@fps-games/editor-babylon/dist/shadow-preview-controller.d.ts +13 -1
  175. package/node_modules/@fps-games/editor-babylon/dist/shadow-preview-controller.d.ts.map +1 -1
  176. package/node_modules/@fps-games/editor-babylon/dist/shadow-preview-controller.js +543 -3
  177. package/node_modules/@fps-games/editor-babylon/dist/shadow-preview-controller.js.map +1 -1
  178. package/node_modules/@fps-games/editor-babylon/package.json +5 -5
  179. package/node_modules/@fps-games/editor-browser/dist/index.d.ts +8 -2
  180. package/node_modules/@fps-games/editor-browser/dist/index.d.ts.map +1 -1
  181. package/node_modules/@fps-games/editor-browser/dist/index.js +4 -0
  182. package/node_modules/@fps-games/editor-browser/dist/index.js.map +1 -1
  183. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-asset-kind.d.ts +5 -0
  184. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-asset-kind.d.ts.map +1 -0
  185. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-asset-kind.js +23 -0
  186. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-asset-kind.js.map +1 -0
  187. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-context-menu.js +1 -1
  188. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-context-menu.js.map +1 -1
  189. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-actions.d.ts.map +1 -1
  190. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-actions.js +76 -9
  191. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-actions.js.map +1 -1
  192. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-attach-dialog.d.ts.map +1 -1
  193. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-attach-dialog.js +3 -2
  194. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-attach-dialog.js.map +1 -1
  195. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-command-adapter.d.ts +21 -0
  196. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-command-adapter.d.ts.map +1 -0
  197. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-command-adapter.js +75 -0
  198. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-command-adapter.js.map +1 -0
  199. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.d.ts +2 -0
  200. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.d.ts.map +1 -1
  201. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.js +326 -72
  202. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.js.map +1 -1
  203. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-scope.d.ts +5 -0
  204. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-scope.d.ts.map +1 -0
  205. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-scope.js +92 -0
  206. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-scope.js.map +1 -0
  207. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-tree.d.ts +4 -1
  208. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-tree.d.ts.map +1 -1
  209. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-tree.js +22 -7
  210. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-tree.js.map +1 -1
  211. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view.d.ts +4 -0
  212. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view.d.ts.map +1 -1
  213. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view.js +24 -11
  214. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view.js.map +1 -1
  215. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-icons.d.ts +1 -1
  216. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-icons.d.ts.map +1 -1
  217. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-icons.js +7 -0
  218. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-icons.js.map +1 -1
  219. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panel-registry.js +1 -1
  220. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panel-registry.js.map +1 -1
  221. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.d.ts +4 -0
  222. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.d.ts.map +1 -1
  223. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.js +1471 -29
  224. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.js.map +1 -1
  225. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-prefab-stage.d.ts +70 -0
  226. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-prefab-stage.d.ts.map +1 -0
  227. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-prefab-stage.js +171 -0
  228. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-prefab-stage.js.map +1 -0
  229. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-primitives.d.ts +1 -1
  230. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-primitives.d.ts.map +1 -1
  231. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-primitives.js +2 -2
  232. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-primitives.js.map +1 -1
  233. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shared.d.ts.map +1 -1
  234. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shared.js +9 -2
  235. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shared.js.map +1 -1
  236. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.d.ts +301 -3
  237. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.d.ts.map +1 -1
  238. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-workbench.d.ts +12 -1
  239. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-workbench.d.ts.map +1 -1
  240. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-workbench.js +13 -1
  241. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-workbench.js.map +1 -1
  242. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.d.ts +6 -4
  243. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.d.ts.map +1 -1
  244. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.js +1501 -122
  245. package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.js.map +1 -1
  246. package/node_modules/@fps-games/editor-browser/package.json +3 -3
  247. package/node_modules/@fps-games/editor-core/dist/agent-bridge.d.ts +18 -0
  248. package/node_modules/@fps-games/editor-core/dist/agent-bridge.d.ts.map +1 -0
  249. package/node_modules/@fps-games/editor-core/dist/agent-bridge.js +102 -0
  250. package/node_modules/@fps-games/editor-core/dist/agent-bridge.js.map +1 -0
  251. package/node_modules/@fps-games/editor-core/dist/index.d.ts +1 -0
  252. package/node_modules/@fps-games/editor-core/dist/index.d.ts.map +1 -1
  253. package/node_modules/@fps-games/editor-core/dist/index.js +1 -0
  254. package/node_modules/@fps-games/editor-core/dist/index.js.map +1 -1
  255. package/node_modules/@fps-games/editor-core/dist/scene-graph.d.ts +1 -1
  256. package/node_modules/@fps-games/editor-core/dist/scene-graph.d.ts.map +1 -1
  257. package/node_modules/@fps-games/editor-core/dist/viewport-tools.d.ts +3 -1
  258. package/node_modules/@fps-games/editor-core/dist/viewport-tools.d.ts.map +1 -1
  259. package/node_modules/@fps-games/editor-core/dist/viewport-tools.js +1 -0
  260. package/node_modules/@fps-games/editor-core/dist/viewport-tools.js.map +1 -1
  261. package/node_modules/@fps-games/editor-core/package.json +2 -2
  262. package/node_modules/@fps-games/editor-forge-play/package.json +2 -2
  263. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/config.d.ts +3 -0
  264. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/config.d.ts.map +1 -0
  265. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/config.js +9 -0
  266. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/config.js.map +1 -0
  267. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/generated-module.d.ts +6 -0
  268. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/generated-module.d.ts.map +1 -0
  269. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/generated-module.js +89 -0
  270. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/generated-module.js.map +1 -0
  271. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/identity.d.ts +18 -0
  272. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/identity.d.ts.map +1 -0
  273. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/identity.js +121 -0
  274. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/identity.js.map +1 -0
  275. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/index.d.ts +4 -0
  276. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/index.d.ts.map +1 -0
  277. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/index.js +3 -0
  278. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/index.js.map +1 -0
  279. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/metadata.d.ts +27 -0
  280. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/metadata.d.ts.map +1 -0
  281. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/metadata.js +782 -0
  282. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/metadata.js.map +1 -0
  283. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/node.d.ts +5 -0
  284. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/node.d.ts.map +1 -0
  285. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/node.js +5 -0
  286. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/node.js.map +1 -0
  287. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.d.ts +80 -0
  288. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.d.ts.map +1 -0
  289. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.js +600 -0
  290. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.js.map +1 -0
  291. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/types.d.ts +51 -0
  292. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/types.d.ts.map +1 -0
  293. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/types.js +2 -0
  294. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/types.js.map +1 -0
  295. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/catalog.d.ts.map +1 -1
  296. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/catalog.js +17 -3
  297. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/catalog.js.map +1 -1
  298. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/document.d.ts.map +1 -1
  299. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/document.js +2 -1
  300. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/document.js.map +1 -1
  301. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/types.d.ts +3 -2
  302. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/types.d.ts.map +1 -1
  303. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/document.d.ts +1 -1
  304. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/document.d.ts.map +1 -1
  305. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/document.js +48 -20
  306. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/document.js.map +1 -1
  307. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/index.d.ts +1 -1
  308. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/index.d.ts.map +1 -1
  309. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/index.js +1 -1
  310. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/index.js.map +1 -1
  311. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/placement.d.ts.map +1 -1
  312. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/placement.js +2 -1
  313. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/placement.js.map +1 -1
  314. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/types.d.ts +3 -0
  315. package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/types.d.ts.map +1 -1
  316. package/node_modules/@fps-games/editor-playable-sdk/dist/document/helpers.d.ts +97 -2
  317. package/node_modules/@fps-games/editor-playable-sdk/dist/document/helpers.d.ts.map +1 -1
  318. package/node_modules/@fps-games/editor-playable-sdk/dist/document/helpers.js +1143 -8
  319. package/node_modules/@fps-games/editor-playable-sdk/dist/document/helpers.js.map +1 -1
  320. package/node_modules/@fps-games/editor-playable-sdk/dist/document/types.d.ts +145 -2
  321. package/node_modules/@fps-games/editor-playable-sdk/dist/document/types.d.ts.map +1 -1
  322. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/index.d.ts +1 -1
  323. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/index.d.ts.map +1 -1
  324. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/index.js +1 -1
  325. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/index.js.map +1 -1
  326. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/schema.d.ts.map +1 -1
  327. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/schema.js +24 -9
  328. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/schema.js.map +1 -1
  329. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/validators.d.ts +6 -0
  330. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/validators.d.ts.map +1 -1
  331. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/validators.js +31 -0
  332. package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/validators.js.map +1 -1
  333. package/node_modules/@fps-games/editor-playable-sdk/dist/index.d.ts +3 -0
  334. package/node_modules/@fps-games/editor-playable-sdk/dist/index.d.ts.map +1 -1
  335. package/node_modules/@fps-games/editor-playable-sdk/dist/index.js +3 -0
  336. package/node_modules/@fps-games/editor-playable-sdk/dist/index.js.map +1 -1
  337. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/document-sections.d.ts +82 -2
  338. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/document-sections.d.ts.map +1 -1
  339. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/document-sections.js +396 -22
  340. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/document-sections.js.map +1 -1
  341. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/index.d.ts +1 -1
  342. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/index.d.ts.map +1 -1
  343. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/index.js +1 -1
  344. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/index.js.map +1 -1
  345. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/validation.d.ts.map +1 -1
  346. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/validation.js +0 -3
  347. package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/validation.js.map +1 -1
  348. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/math.d.ts +29 -1
  349. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/math.d.ts.map +1 -1
  350. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/math.js +143 -0
  351. package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/math.js.map +1 -1
  352. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/lifecycle.d.ts.map +1 -1
  353. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/lifecycle.js +3 -7
  354. package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/lifecycle.js.map +1 -1
  355. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/binding.d.ts.map +1 -1
  356. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/binding.js +6 -0
  357. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/binding.js.map +1 -1
  358. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/types.d.ts +2 -10
  359. package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/types.d.ts.map +1 -1
  360. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/field-patch.d.ts.map +1 -1
  361. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/field-patch.js +107 -11
  362. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/field-patch.js.map +1 -1
  363. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/reducer.d.ts.map +1 -1
  364. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/reducer.js +4 -1
  365. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/reducer.js.map +1 -1
  366. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/transform.d.ts.map +1 -1
  367. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/transform.js +19 -1
  368. package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/transform.js.map +1 -1
  369. package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/panel.d.ts.map +1 -1
  370. package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/panel.js +19 -3
  371. package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/panel.js.map +1 -1
  372. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/assets.d.ts +1 -2
  373. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/assets.d.ts.map +1 -1
  374. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/assets.js +0 -14
  375. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/assets.js.map +1 -1
  376. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/import-plan.d.ts +1 -7
  377. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/import-plan.d.ts.map +1 -1
  378. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/import-plan.js +3 -32
  379. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/import-plan.js.map +1 -1
  380. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/nodes.d.ts.map +1 -1
  381. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/nodes.js +82 -63
  382. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/nodes.js.map +1 -1
  383. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/types.d.ts +7 -23
  384. package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/types.d.ts.map +1 -1
  385. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/compiler.d.ts +5 -0
  386. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/compiler.d.ts.map +1 -0
  387. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/compiler.js +996 -0
  388. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/compiler.js.map +1 -0
  389. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/index.d.ts +3 -0
  390. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/index.d.ts.map +1 -0
  391. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/index.js +3 -0
  392. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/index.js.map +1 -0
  393. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/types.d.ts +152 -0
  394. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/types.d.ts.map +1 -0
  395. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/types.js +2 -0
  396. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/types.js.map +1 -0
  397. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/protocol.d.ts.map +1 -1
  398. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/protocol.js +44 -2
  399. package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/protocol.js.map +1 -1
  400. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/descriptors.d.ts +1 -0
  401. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/descriptors.d.ts.map +1 -1
  402. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/descriptors.js +244 -12
  403. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/descriptors.js.map +1 -1
  404. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/inspector.d.ts.map +1 -1
  405. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/inspector.js +216 -67
  406. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/inspector.js.map +1 -1
  407. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/object.d.ts.map +1 -1
  408. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/object.js +7 -4
  409. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/object.js.map +1 -1
  410. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/patch.d.ts.map +1 -1
  411. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/patch.js +45 -1
  412. package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/patch.js.map +1 -1
  413. package/node_modules/@fps-games/editor-playable-sdk/dist/session/hierarchy.d.ts.map +1 -1
  414. package/node_modules/@fps-games/editor-playable-sdk/dist/session/hierarchy.js +2 -1
  415. package/node_modules/@fps-games/editor-playable-sdk/dist/session/hierarchy.js.map +1 -1
  416. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/index.d.ts +5 -0
  417. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/index.d.ts.map +1 -0
  418. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/index.js +5 -0
  419. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/index.js.map +1 -0
  420. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/legacy.d.ts +21 -0
  421. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/legacy.d.ts.map +1 -0
  422. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/legacy.js +158 -0
  423. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/legacy.js.map +1 -0
  424. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/quality.d.ts +5 -0
  425. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/quality.d.ts.map +1 -0
  426. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/quality.js +83 -0
  427. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/quality.js.map +1 -0
  428. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/resolver.d.ts +35 -0
  429. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/resolver.d.ts.map +1 -0
  430. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/resolver.js +363 -0
  431. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/resolver.js.map +1 -0
  432. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/types.d.ts +105 -0
  433. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/types.d.ts.map +1 -0
  434. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/types.js +6 -0
  435. package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/types.js.map +1 -0
  436. package/node_modules/@fps-games/editor-playable-sdk/dist/static-shadows/artifact.d.ts +3 -0
  437. package/node_modules/@fps-games/editor-playable-sdk/dist/static-shadows/artifact.d.ts.map +1 -1
  438. package/node_modules/@fps-games/editor-playable-sdk/dist/static-shadows/artifact.js +44 -0
  439. package/node_modules/@fps-games/editor-playable-sdk/dist/static-shadows/artifact.js.map +1 -1
  440. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/asset-authoring.d.ts +26 -0
  441. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/asset-authoring.d.ts.map +1 -0
  442. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/asset-authoring.js +105 -0
  443. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/asset-authoring.js.map +1 -0
  444. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/index.d.ts +3 -0
  445. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/index.d.ts.map +1 -1
  446. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/index.js +3 -0
  447. package/node_modules/@fps-games/editor-playable-sdk/dist/vite/index.js.map +1 -1
  448. package/node_modules/@fps-games/editor-playable-sdk/package.json +3 -3
  449. package/node_modules/@fps-games/editor-protocol/dist/agent-bridge.d.ts +1127 -0
  450. package/node_modules/@fps-games/editor-protocol/dist/agent-bridge.d.ts.map +1 -0
  451. package/node_modules/@fps-games/editor-protocol/dist/agent-bridge.js +2180 -0
  452. package/node_modules/@fps-games/editor-protocol/dist/agent-bridge.js.map +1 -0
  453. package/node_modules/@fps-games/editor-protocol/dist/agent-trace.d.ts +68 -0
  454. package/node_modules/@fps-games/editor-protocol/dist/agent-trace.d.ts.map +1 -0
  455. package/node_modules/@fps-games/editor-protocol/dist/agent-trace.js +23 -0
  456. package/node_modules/@fps-games/editor-protocol/dist/agent-trace.js.map +1 -0
  457. package/node_modules/@fps-games/editor-protocol/dist/agent.d.ts +57 -3
  458. package/node_modules/@fps-games/editor-protocol/dist/agent.d.ts.map +1 -1
  459. package/node_modules/@fps-games/editor-protocol/dist/agent.js.map +1 -1
  460. package/node_modules/@fps-games/editor-protocol/dist/index.d.ts +21 -0
  461. package/node_modules/@fps-games/editor-protocol/dist/index.d.ts.map +1 -1
  462. package/node_modules/@fps-games/editor-protocol/dist/index.js +3 -0
  463. package/node_modules/@fps-games/editor-protocol/dist/index.js.map +1 -1
  464. package/node_modules/@fps-games/editor-protocol/dist/marker-graph.d.ts +128 -0
  465. package/node_modules/@fps-games/editor-protocol/dist/marker-graph.d.ts.map +1 -0
  466. package/node_modules/@fps-games/editor-protocol/dist/marker-graph.js +2 -0
  467. package/node_modules/@fps-games/editor-protocol/dist/marker-graph.js.map +1 -0
  468. package/node_modules/@fps-games/editor-protocol/package.json +1 -1
  469. package/package.json +8 -8
@@ -0,0 +1,51 @@
1
+ import type { EditorSceneAssetCatalogEntry, EditorSceneAssetCatalogKind } from '../asset-library';
2
+ export type PlayableEditorAssetKind = Extract<EditorSceneAssetCatalogKind, 'model' | 'texture' | 'image' | 'sound'>;
3
+ export interface PlayableEditorAssetDatabasePaths {
4
+ projectRoot: string;
5
+ assetsDir: string;
6
+ importedDir: string;
7
+ generatedDir: string;
8
+ manifestPath: string;
9
+ registryPath: string;
10
+ scenePath?: string;
11
+ rulesPath?: string;
12
+ }
13
+ export interface PlayableEditorAssetDatabaseCommands {
14
+ register?: string;
15
+ unregister?: string;
16
+ }
17
+ export interface PlayableEditorAssetDatabasePublicUrlInput {
18
+ kind: PlayableEditorAssetKind;
19
+ fileName: string;
20
+ relativePath?: string;
21
+ }
22
+ export interface PlayableEditorAssetDatabaseRelativePathInput {
23
+ kind: PlayableEditorAssetKind;
24
+ fileName: string;
25
+ }
26
+ export interface PlayableEditorAssetDatabaseConfig {
27
+ paths: PlayableEditorAssetDatabasePaths;
28
+ supportedExtensions?: readonly string[];
29
+ commands?: PlayableEditorAssetDatabaseCommands;
30
+ relativeImportedPath?: (input: PlayableEditorAssetDatabaseRelativePathInput) => string;
31
+ publicUrlForImportedAsset?: (input: PlayableEditorAssetDatabasePublicUrlInput) => string;
32
+ publicUrlForCatalogRelativePath?: (relativePath: string) => string;
33
+ }
34
+ export interface PlayableEditorAssetCatalogEntry<TExternal = unknown, TDefaults = unknown, TMaterialMode extends string = string> extends EditorSceneAssetCatalogEntry<TExternal, TDefaults, TMaterialMode> {
35
+ guid: string;
36
+ assetId: string;
37
+ kind: PlayableEditorAssetKind;
38
+ relativePath: string;
39
+ contentHash: string;
40
+ byteSize: number;
41
+ }
42
+ export interface PlayableEditorAssetRegistryEntry<TExternal = unknown, TDefaults = unknown, TMaterialMode extends string = string> extends EditorSceneAssetCatalogEntry<TExternal, TDefaults, TMaterialMode> {
43
+ guid: string;
44
+ assetId: string;
45
+ kind: PlayableEditorAssetKind;
46
+ displayName: string;
47
+ relativePath: string;
48
+ contentHash?: string;
49
+ byteSize?: number;
50
+ }
51
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/asset-database/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,4BAA4B,EAC5B,2BAA2B,EAC5B,MAAM,kBAAkB,CAAC;AAE1B,MAAM,MAAM,uBAAuB,GAAG,OAAO,CAC3C,2BAA2B,EAC3B,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,CACxC,CAAC;AAEF,MAAM,WAAW,gCAAgC;IAC/C,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,mCAAmC;IAClD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,yCAAyC;IACxD,IAAI,EAAE,uBAAuB,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,4CAA4C;IAC3D,IAAI,EAAE,uBAAuB,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,iCAAiC;IAChD,KAAK,EAAE,gCAAgC,CAAC;IACxC,mBAAmB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,QAAQ,CAAC,EAAE,mCAAmC,CAAC;IAC/C,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,4CAA4C,KAAK,MAAM,CAAC;IACvF,yBAAyB,CAAC,EAAE,CAAC,KAAK,EAAE,yCAAyC,KAAK,MAAM,CAAC;IACzF,+BAA+B,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,MAAM,CAAC;CACpE;AAED,MAAM,WAAW,+BAA+B,CAC9C,SAAS,GAAG,OAAO,EACnB,SAAS,GAAG,OAAO,EACnB,aAAa,SAAS,MAAM,GAAG,MAAM,CACrC,SAAQ,4BAA4B,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,uBAAuB,CAAC;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gCAAgC,CAC/C,SAAS,GAAG,OAAO,EACnB,SAAS,GAAG,OAAO,EACnB,aAAa,SAAS,MAAM,GAAG,MAAM,CACrC,SAAQ,4BAA4B,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,uBAAuB,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/asset-database/types.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/asset-library/catalog.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,2BAA2B,EAC5B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EACV,4BAA4B,EAC7B,MAAM,SAAS,CAAC;AAEjB,wBAAgB,6BAA6B,CAC3C,SAAS,GAAG,OAAO,EACnB,SAAS,GAAG,OAAO,EACnB,aAAa,SAAS,MAAM,GAAG,MAAM,EAErC,cAAc,EAAE,SAAS,4BAA4B,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE,GAC3F,KAAK,CAAC,2BAA2B,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC,CAKzE;AAED,wBAAgB,iCAAiC,CAC/C,SAAS,GAAG,OAAO,EACnB,SAAS,GAAG,OAAO,EACnB,aAAa,SAAS,MAAM,GAAG,MAAM,EAErC,KAAK,EAAE,4BAA4B,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC,GACvE,2BAA2B,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC,CAoBlE;AAED,wBAAgB,mCAAmC,CACjD,CAAC,EAAE,2BAA2B,EAC9B,CAAC,EAAE,2BAA2B,GAC7B,MAAM,CAKR"}
1
+ {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/asset-library/catalog.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,2BAA2B,EAC5B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EACV,4BAA4B,EAC7B,MAAM,SAAS,CAAC;AAEjB,wBAAgB,6BAA6B,CAC3C,SAAS,GAAG,OAAO,EACnB,SAAS,GAAG,OAAO,EACnB,aAAa,SAAS,MAAM,GAAG,MAAM,EAErC,cAAc,EAAE,SAAS,4BAA4B,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE,GAC3F,KAAK,CAAC,2BAA2B,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC,CAKzE;AAED,wBAAgB,iCAAiC,CAC/C,SAAS,GAAG,OAAO,EACnB,SAAS,GAAG,OAAO,EACnB,aAAa,SAAS,MAAM,GAAG,MAAM,EAErC,KAAK,EAAE,4BAA4B,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC,GACvE,2BAA2B,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,CAAC,CA6BlE;AAED,wBAAgB,mCAAmC,CACjD,CAAC,EAAE,2BAA2B,EAC9B,CAAC,EAAE,2BAA2B,GAC7B,MAAM,CAKR"}
@@ -1,11 +1,15 @@
1
1
  export function createEditorSceneAssetLibrary(catalogEntries) {
2
2
  return catalogEntries
3
- .filter((entry) => (entry.kind === 'model' || entry.kind === 'texture') && entry.placeable !== false)
3
+ .filter((entry) => isEditorScenePlaceableAssetCatalogKind(entry.kind) && entry.placeable !== false)
4
4
  .map(createEditorSceneAssetLibraryItem)
5
5
  .sort(compareEditorSceneAssetLibraryItems);
6
6
  }
7
7
  export function createEditorSceneAssetLibraryItem(entry) {
8
- const type = entry.kind === 'texture' ? 'texture' : 'glb';
8
+ const type = entry.kind === 'texture'
9
+ ? 'texture'
10
+ : entry.kind === 'prefab'
11
+ ? 'prefab'
12
+ : 'glb';
9
13
  const guid = readNonEmptyString(entry.guid);
10
14
  const metadata = createEditorSceneAssetCatalogMetadata(entry);
11
15
  return {
@@ -13,11 +17,16 @@ export function createEditorSceneAssetLibraryItem(entry) {
13
17
  ...(guid ? { guid } : {}),
14
18
  assetId: entry.assetId,
15
19
  type,
16
- kind: entry.kind === 'texture' ? 'texture' : 'model',
20
+ kind: entry.kind === 'texture'
21
+ ? 'texture'
22
+ : entry.kind === 'prefab'
23
+ ? 'prefab'
24
+ : 'model',
17
25
  displayName: entry.displayName,
18
26
  category: entry.category ?? inferEditorSceneAssetCategory(entry),
19
27
  materialMode: entry.materialMode,
20
28
  defaults: cloneOptional(entry.defaults),
29
+ prefab: cloneOptional(entry.prefab),
21
30
  external: cloneOptional(entry.external),
22
31
  metadata,
23
32
  origin: entry.origin ?? 'project',
@@ -32,6 +41,8 @@ export function compareEditorSceneAssetLibraryItems(a, b) {
32
41
  || a.type.localeCompare(b.type);
33
42
  }
34
43
  function inferEditorSceneAssetCategory(entry) {
44
+ if (entry.kind === 'prefab')
45
+ return 'Prefab';
35
46
  if (entry.kind === 'texture')
36
47
  return 'Texture';
37
48
  if (entry.kind === 'image')
@@ -61,4 +72,7 @@ function readNonEmptyString(value) {
61
72
  function cloneOptional(value) {
62
73
  return value == null ? undefined : structuredClone(value);
63
74
  }
75
+ function isEditorScenePlaceableAssetCatalogKind(kind) {
76
+ return kind === 'model' || kind === 'prefab' || kind === 'texture';
77
+ }
64
78
  //# sourceMappingURL=catalog.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/asset-library/catalog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/asset-library/catalog.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"document.d.ts","sourceRoot":"","sources":["../../src/asset-library/document.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,2BAA2B,EAC3B,mBAAmB,EACpB,MAAM,mBAAmB,CAAC;AAE3B,wBAAgB,+BAA+B,CAAC,SAAS,SAAS,mBAAmB,EACnF,WAAW,EAAE,SAAS,EACtB,YAAY,EAAE,SAAS,2BAA2B,EAAE,GACnD,SAAS,CAWX;AAED,wBAAgB,oCAAoC,CAAC,MAAM,SAAS,gBAAgB,EAClF,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,2BAA2B,GACvC,MAAM,CAWR"}
1
+ {"version":3,"file":"document.d.ts","sourceRoot":"","sources":["../../src/asset-library/document.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,2BAA2B,EAC3B,mBAAmB,EACpB,MAAM,mBAAmB,CAAC;AAE3B,wBAAgB,+BAA+B,CAAC,SAAS,SAAS,mBAAmB,EACnF,WAAW,EAAE,SAAS,EACtB,YAAY,EAAE,SAAS,2BAA2B,EAAE,GACnD,SAAS,CAWX;AAED,wBAAgB,oCAAoC,CAAC,MAAM,SAAS,gBAAgB,EAClF,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,2BAA2B,GACvC,MAAM,CAYR"}
@@ -1,6 +1,6 @@
1
1
  export function enrichEditorSceneDocumentAssets(editorScene, assetLibrary) {
2
2
  const libraryByAssetId = new Map(assetLibrary
3
- .filter((asset) => asset.type === 'glb')
3
+ .filter((asset) => asset.type === 'glb' || asset.type === 'prefab')
4
4
  .map((asset) => [asset.assetId, asset]));
5
5
  return {
6
6
  ...editorScene,
@@ -18,6 +18,7 @@ export function mergeEditorSceneAssetWithLibraryItem(asset, libraryItem) {
18
18
  category: libraryItem.category ?? asset.category,
19
19
  materialMode: libraryItem.materialMode ?? asset.materialMode,
20
20
  defaults: cloneOptional(libraryItem.defaults ?? asset.defaults),
21
+ prefab: cloneOptional(libraryItem.prefab ?? asset.prefab),
21
22
  external: cloneOptional(libraryItem.external ?? asset.external),
22
23
  metadata: cloneOptional(libraryItem.metadata ?? asset.metadata),
23
24
  };
@@ -1 +1 @@
1
- {"version":3,"file":"document.js","sourceRoot":"","sources":["../../src/asset-library/document.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,+BAA+B,CAC7C,WAAsB,EACtB,YAAoD;IAEpD,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,YAAY;SAC1C,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC;SACvC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAC3C,OAAO;QACL,GAAG,WAAW;QACd,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACvC,MAAM,WAAW,GAAG,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACnD,OAAO,WAAW,CAAC,CAAC,CAAC,oCAAoC,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACxF,CAAC,CAAC;KACH,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oCAAoC,CAClD,KAAa,EACb,WAAwC;IAExC,OAAO;QACL,GAAG,KAAK;QACR,IAAI,EAAE,WAAW,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI;QACpC,WAAW,EAAE,WAAW,CAAC,WAAW,IAAI,KAAK,CAAC,WAAW;QACzD,QAAQ,EAAE,WAAW,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ;QAChD,YAAY,EAAE,WAAW,CAAC,YAAY,IAAI,KAAK,CAAC,YAAY;QAC5D,QAAQ,EAAE,aAAa,CAAC,WAAW,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC;QAC/D,QAAQ,EAAE,aAAa,CAAC,WAAW,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC;QAC/D,QAAQ,EAAE,aAAa,CAAC,WAAW,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC;KACtD,CAAC;AACd,CAAC;AAED,SAAS,aAAa,CAAI,KAAoB;IAC5C,OAAO,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;AAC5D,CAAC"}
1
+ {"version":3,"file":"document.js","sourceRoot":"","sources":["../../src/asset-library/document.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,+BAA+B,CAC7C,WAAsB,EACtB,YAAoD;IAEpD,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,YAAY;SAC1C,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC;SAClE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAC3C,OAAO;QACL,GAAG,WAAW;QACd,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACvC,MAAM,WAAW,GAAG,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACnD,OAAO,WAAW,CAAC,CAAC,CAAC,oCAAoC,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACxF,CAAC,CAAC;KACH,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oCAAoC,CAClD,KAAa,EACb,WAAwC;IAExC,OAAO;QACL,GAAG,KAAK;QACR,IAAI,EAAE,WAAW,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI;QACpC,WAAW,EAAE,WAAW,CAAC,WAAW,IAAI,KAAK,CAAC,WAAW;QACzD,QAAQ,EAAE,WAAW,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ;QAChD,YAAY,EAAE,WAAW,CAAC,YAAY,IAAI,KAAK,CAAC,YAAY;QAC5D,QAAQ,EAAE,aAAa,CAAC,WAAW,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC;QAC/D,MAAM,EAAE,aAAa,CAAC,WAAW,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC;QACzD,QAAQ,EAAE,aAAa,CAAC,WAAW,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC;QAC/D,QAAQ,EAAE,aAAa,CAAC,WAAW,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC;KACtD,CAAC;AACd,CAAC;AAED,SAAS,aAAa,CAAI,KAAoB;IAC5C,OAAO,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;AAC5D,CAAC"}
@@ -1,5 +1,5 @@
1
- import type { EditorSceneAssetOrigin } from '../document/index';
2
- export type EditorSceneAssetCatalogKind = 'model' | 'texture' | 'image' | 'sound' | (string & {});
1
+ import type { EditorSceneAssetOrigin, EditorScenePrefabDefinition } from '../document/index';
2
+ export type EditorSceneAssetCatalogKind = 'model' | 'prefab' | 'texture' | 'image' | 'sound' | (string & {});
3
3
  export interface EditorSceneAssetCatalogEntry<TExternal = unknown, TDefaults = unknown, TMaterialMode extends string = string> {
4
4
  guid?: string;
5
5
  assetId: string;
@@ -14,6 +14,7 @@ export interface EditorSceneAssetCatalogEntry<TExternal = unknown, TDefaults = u
14
14
  byteSize?: number;
15
15
  external?: TExternal;
16
16
  defaults?: TDefaults;
17
+ prefab?: EditorScenePrefabDefinition;
17
18
  materialMode?: TMaterialMode;
18
19
  metadata?: Record<string, unknown>;
19
20
  origin?: EditorSceneAssetOrigin;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/asset-library/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACvB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,MAAM,2BAA2B,GACnC,OAAO,GACP,SAAS,GACT,OAAO,GACP,OAAO,GACP,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAElB,MAAM,WAAW,4BAA4B,CAC3C,SAAS,GAAG,OAAO,EACnB,SAAS,GAAG,OAAO,EACnB,aAAa,SAAS,MAAM,GAAG,MAAM;IAErC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,2BAA2B,CAAC;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/asset-library/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,2BAA2B,EAC5B,MAAM,mBAAmB,CAAC;AAE3B,MAAM,MAAM,2BAA2B,GACnC,OAAO,GACP,QAAQ,GACR,SAAS,GACT,OAAO,GACP,OAAO,GACP,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAElB,MAAM,WAAW,4BAA4B,CAC3C,SAAS,GAAG,OAAO,EACnB,SAAS,GAAG,OAAO,EACnB,aAAa,SAAS,MAAM,GAAG,MAAM;IAErC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,2BAA2B,CAAC;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,MAAM,CAAC,EAAE,2BAA2B,CAAC;IACrC,YAAY,CAAC,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB"}
@@ -4,5 +4,5 @@ import type { EditorSceneAssetPlacementOptions, EditorSceneAssetPlacementResult
4
4
  export declare function addAssetLibraryItemToEditorSceneDocument<TDocument extends EditorSceneDocument>(document: TDocument, assetItem: EditorSceneAssetLibraryItem, placement?: EditorTransformSnapshot, options?: EditorSceneAssetPlacementOptions): EditorSceneAssetPlacementResult<TDocument>;
5
5
  export declare function createEditorSceneAssetFromLibraryItem(assetItem: EditorSceneAssetLibraryItem): EditorSceneAsset;
6
6
  export declare function createEditorSceneModelGameObjectForAsset(document: EditorSceneDocument, assetItem: EditorSceneAssetLibraryItem, assetId: string, placement?: EditorTransformSnapshot, options?: EditorSceneAssetPlacementOptions): EditorSceneGameObject;
7
- export declare function createEditorSceneGroundDecalGameObjectForTextureAsset(document: EditorSceneDocument, assetItem: EditorSceneAssetLibraryItem, placement?: EditorTransformSnapshot, options?: EditorSceneAssetPlacementOptions): EditorSceneGameObject;
7
+ export declare function createEditorScenePrefabGameObjectForAsset(document: EditorSceneDocument, assetItem: EditorSceneAssetLibraryItem, prefabAsset: EditorSceneAsset, placement?: EditorTransformSnapshot, options?: EditorSceneAssetPlacementOptions): EditorSceneGameObject;
8
8
  //# sourceMappingURL=document.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"document.d.ts","sourceRoot":"","sources":["../../src/asset-placement/document.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACxB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,2BAA2B,EAChC,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC3B,MAAM,mBAAmB,CAAC;AAoB3B,OAAO,KAAK,EACV,gCAAgC,EAChC,+BAA+B,EAChC,MAAM,SAAS,CAAC;AAEjB,wBAAgB,wCAAwC,CAAC,SAAS,SAAS,mBAAmB,EAC5F,QAAQ,EAAE,SAAS,EACnB,SAAS,EAAE,2BAA2B,EACtC,SAAS,CAAC,EAAE,uBAAuB,EACnC,OAAO,GAAE,gCAAqC,GAC7C,+BAA+B,CAAC,SAAS,CAAC,CAiC5C;AAED,wBAAgB,qCAAqC,CAAC,SAAS,EAAE,2BAA2B,GAAG,gBAAgB,CAY9G;AAED,wBAAgB,wCAAwC,CACtD,QAAQ,EAAE,mBAAmB,EAC7B,SAAS,EAAE,2BAA2B,EACtC,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,uBAAuB,EACnC,OAAO,GAAE,gCAAqC,GAC7C,qBAAqB,CAwBvB;AAED,wBAAgB,qDAAqD,CACnE,QAAQ,EAAE,mBAAmB,EAC7B,SAAS,EAAE,2BAA2B,EACtC,SAAS,CAAC,EAAE,uBAAuB,EACnC,OAAO,GAAE,gCAAqC,GAC7C,qBAAqB,CAgCvB"}
1
+ {"version":3,"file":"document.d.ts","sourceRoot":"","sources":["../../src/asset-placement/document.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACxB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,2BAA2B,EAChC,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC3B,MAAM,mBAAmB,CAAC;AAwB3B,OAAO,KAAK,EACV,gCAAgC,EAChC,+BAA+B,EAChC,MAAM,SAAS,CAAC;AAEjB,wBAAgB,wCAAwC,CAAC,SAAS,SAAS,mBAAmB,EAC5F,QAAQ,EAAE,SAAS,EACnB,SAAS,EAAE,2BAA2B,EACtC,SAAS,CAAC,EAAE,uBAAuB,EACnC,OAAO,GAAE,gCAAqC,GAC7C,+BAA+B,CAAC,SAAS,CAAC,CAmD5C;AAED,wBAAgB,qCAAqC,CAAC,SAAS,EAAE,2BAA2B,GAAG,gBAAgB,CAa9G;AAED,wBAAgB,wCAAwC,CACtD,QAAQ,EAAE,mBAAmB,EAC7B,SAAS,EAAE,2BAA2B,EACtC,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,uBAAuB,EACnC,OAAO,GAAE,gCAAqC,GAC7C,qBAAqB,CAwBvB;AAED,wBAAgB,yCAAyC,CACvD,QAAQ,EAAE,mBAAmB,EAC7B,SAAS,EAAE,2BAA2B,EACtC,WAAW,EAAE,gBAAgB,EAC7B,SAAS,CAAC,EAAE,uBAAuB,EACnC,OAAO,GAAE,gCAAqC,GAC7C,qBAAqB,CAuBvB"}
@@ -1,4 +1,5 @@
1
1
  import {} from '../document/index.js';
2
+ import { createEditorScenePrefabInstanceGameObject, resolveEditorScenePrefabSourceAssetId, } from '../document/index.js';
2
3
  import { mergeEditorSceneAssetWithLibraryItem, } from '../asset-library/index.js';
3
4
  import { createUniqueEditorSceneGameObjectDisplayName, createEditorSceneGameObjectGuid, } from '../session/identity.js';
4
5
  import { resolveEditorSceneRootContainerId, toEditorSceneTransformComponent, toEditorSceneLocalTransformForParent, } from '../session/transform.js';
@@ -6,10 +7,22 @@ import { createUniqueEditorSceneId, sanitizeEditorSceneId, } from './identity.js
6
7
  import { createEditorScenePlacementWorldTransform, } from './placement.js';
7
8
  export function addAssetLibraryItemToEditorSceneDocument(document, assetItem, placement, options = {}) {
8
9
  if (assetItem.type === 'texture') {
9
- const gameObject = createEditorSceneGroundDecalGameObjectForTextureAsset(document, assetItem, placement, options);
10
+ throw new Error('Texture assets are not placeable by the default editor scene asset-placement path. '
11
+ + 'Projects must provide a domain-specific placement adapter for texture-backed authoring.');
12
+ }
13
+ if (assetItem.type === 'prefab') {
14
+ const existingAsset = findEditorSceneAssetForLibraryItem(document, assetItem);
15
+ const asset = existingAsset
16
+ ? mergeEditorSceneAssetWithLibraryItem(existingAsset, assetItem)
17
+ : createEditorSceneAssetFromLibraryItem(assetItem);
18
+ const gameObject = createEditorScenePrefabGameObjectForAsset(document, assetItem, asset, placement, options);
19
+ const assets = ensureEditorScenePrefabSourceAsset(existingAsset
20
+ ? document.assets.map((candidate) => candidate.id === asset.id ? asset : candidate)
21
+ : [...document.assets, asset], asset);
10
22
  return {
11
23
  document: {
12
24
  ...document,
25
+ assets,
13
26
  scene: {
14
27
  ...document.scene,
15
28
  gameObjects: [...document.scene.gameObjects, gameObject],
@@ -18,7 +31,7 @@ export function addAssetLibraryItemToEditorSceneDocument(document, assetItem, pl
18
31
  gameObject,
19
32
  };
20
33
  }
21
- const existingAsset = document.assets.find((asset) => asset.id === assetItem.assetId || (asset.guid && asset.guid === assetItem.guid));
34
+ const existingAsset = findEditorSceneAssetForLibraryItem(document, assetItem);
22
35
  const asset = existingAsset
23
36
  ? mergeEditorSceneAssetWithLibraryItem(existingAsset, assetItem)
24
37
  : createEditorSceneAssetFromLibraryItem(assetItem);
@@ -41,18 +54,19 @@ export function createEditorSceneAssetFromLibraryItem(assetItem) {
41
54
  return {
42
55
  id: assetItem.assetId,
43
56
  guid: assetItem.guid,
44
- type: 'glb',
57
+ type: assetItem.type,
45
58
  displayName: assetItem.displayName,
46
59
  category: assetItem.category,
47
60
  materialMode: assetItem.materialMode,
48
61
  defaults: cloneOptional(assetItem.defaults),
62
+ prefab: cloneOptional(assetItem.prefab),
49
63
  external: cloneOptional(assetItem.external),
50
64
  metadata: cloneOptional(assetItem.metadata),
51
65
  };
52
66
  }
53
67
  export function createEditorSceneModelGameObjectForAsset(document, assetItem, assetId, placement, options = {}) {
54
68
  const usedIds = document.scene.gameObjects.map((gameObject) => gameObject.id);
55
- const name = createUniqueEditorSceneGameObjectDisplayName(getEditorSceneGameObjectDisplayNames(document), assetItem.displayName, { fallbackName: assetItem.assetId });
69
+ const name = createUniqueEditorSceneGameObjectDisplayName(getEditorSceneGameObjectDisplayNames(document), options.name ?? assetItem.displayName, { fallbackName: assetItem.assetId });
56
70
  const id = createUniqueEditorSceneId(usedIds, sanitizeEditorSceneId(name));
57
71
  const parentId = resolveEditorSceneRootContainerId(document);
58
72
  const localTransform = resolveEditorSceneAssetPlacementLocalTransform(document, parentId, placement, options);
@@ -71,38 +85,52 @@ export function createEditorSceneModelGameObjectForAsset(document, assetItem, as
71
85
  ],
72
86
  };
73
87
  }
74
- export function createEditorSceneGroundDecalGameObjectForTextureAsset(document, assetItem, placement, options = {}) {
88
+ export function createEditorScenePrefabGameObjectForAsset(document, assetItem, prefabAsset, placement, options = {}) {
75
89
  const usedIds = document.scene.gameObjects.map((gameObject) => gameObject.id);
76
- const name = createUniqueEditorSceneGameObjectDisplayName(getEditorSceneGameObjectDisplayNames(document), assetItem.displayName, { fallbackName: assetItem.assetId });
90
+ const name = createUniqueEditorSceneGameObjectDisplayName(getEditorSceneGameObjectDisplayNames(document), options.name ?? assetItem.displayName, { fallbackName: assetItem.assetId });
77
91
  const id = createUniqueEditorSceneId(usedIds, sanitizeEditorSceneId(name));
78
92
  const parentId = resolveEditorSceneRootContainerId(document);
79
93
  const localTransform = resolveEditorSceneAssetPlacementLocalTransform(document, parentId, placement, options);
80
- return {
94
+ return createEditorScenePrefabInstanceGameObject({
81
95
  id,
82
96
  guid: (options.createGameObjectGuid ?? createEditorSceneGameObjectGuid)(),
83
97
  name,
84
- kind: 'transform',
85
98
  ...(parentId ? { parentId } : {}),
86
- active: true,
87
- transformType: 'groundDecal',
88
- groundDecal: {
89
- size: { width: 1, depth: 1 },
90
- textureId: assetItem.assetId,
91
- color: { r: 1, g: 1, b: 1 },
92
- },
99
+ prefabAsset,
100
+ transform: toEditorSceneTransformComponent(localTransform),
93
101
  metadata: {
94
102
  ...(assetItem.metadata ?? {}),
95
103
  assetId: assetItem.assetId,
96
- assetType: 'texture',
104
+ assetType: 'prefab',
97
105
  },
98
- components: [{
99
- ...toEditorSceneTransformComponent(localTransform),
100
- }],
101
- };
106
+ });
102
107
  }
103
108
  function getEditorSceneGameObjectDisplayNames(document) {
104
109
  return document.scene.gameObjects.map((gameObject) => gameObject.name ?? gameObject.id);
105
110
  }
111
+ function findEditorSceneAssetForLibraryItem(document, assetItem) {
112
+ return document.assets.find((asset) => asset.id === assetItem.assetId || (asset.guid && asset.guid === assetItem.guid));
113
+ }
114
+ function ensureEditorScenePrefabSourceAsset(assets, prefabAsset) {
115
+ const sourceAssetId = resolveEditorScenePrefabSourceAssetId(prefabAsset);
116
+ if (!sourceAssetId || assets.some((asset) => asset.id === sourceAssetId))
117
+ return [...assets];
118
+ const sourceAssetGuid = prefabAsset.prefab?.sourceAssetGuid;
119
+ const canUseSourceGuid = !!sourceAssetGuid && !assets.some((asset) => asset.guid === sourceAssetGuid);
120
+ return [
121
+ ...assets,
122
+ {
123
+ id: sourceAssetId,
124
+ ...(canUseSourceGuid ? { guid: sourceAssetGuid } : {}),
125
+ type: 'glb',
126
+ displayName: sourceAssetId,
127
+ category: 'Model',
128
+ metadata: {
129
+ sourcePrefabId: prefabAsset.id,
130
+ },
131
+ },
132
+ ];
133
+ }
106
134
  function resolveEditorSceneAssetPlacementLocalTransform(document, parentId, placement, options) {
107
135
  const worldTransform = createEditorScenePlacementWorldTransform(document, placement);
108
136
  if (!parentId)
@@ -1 +1 @@
1
- {"version":3,"file":"document.js","sourceRoot":"","sources":["../../src/asset-placement/document.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"document.js","sourceRoot":"","sources":["../../src/asset-placement/document.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  export type { EditorSceneAssetPlacementOptions, EditorSceneAssetPlacementPatch, EditorSceneAssetPlacementPatchInput, EditorSceneAssetPlacementPatchResult, EditorSceneAssetPlacementResult, EditorSceneAssetPlacementTransformResolver, EditorSceneAssetPlacementTransformResolverInput, } from './types';
2
2
  export { createUniqueEditorSceneId, sanitizeEditorSceneId, } from './identity';
3
3
  export { createEditorSceneAssetPlacementPatch, createEditorScenePlacementWorldTransform, getNextEditorSceneAssetPlacementPosition, } from './placement';
4
- export { addAssetLibraryItemToEditorSceneDocument, createEditorSceneAssetFromLibraryItem, createEditorSceneGroundDecalGameObjectForTextureAsset, createEditorSceneModelGameObjectForAsset, } from './document';
4
+ export { addAssetLibraryItemToEditorSceneDocument, createEditorSceneAssetFromLibraryItem, createEditorScenePrefabGameObjectForAsset, createEditorSceneModelGameObjectForAsset, } from './document';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/asset-placement/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,gCAAgC,EAChC,8BAA8B,EAC9B,mCAAmC,EACnC,oCAAoC,EACpC,+BAA+B,EAC/B,0CAA0C,EAC1C,+CAA+C,GAChD,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,oCAAoC,EACpC,wCAAwC,EACxC,wCAAwC,GACzC,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,wCAAwC,EACxC,qCAAqC,EACrC,qDAAqD,EACrD,wCAAwC,GACzC,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/asset-placement/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,gCAAgC,EAChC,8BAA8B,EAC9B,mCAAmC,EACnC,oCAAoC,EACpC,+BAA+B,EAC/B,0CAA0C,EAC1C,+CAA+C,GAChD,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,oCAAoC,EACpC,wCAAwC,EACxC,wCAAwC,GACzC,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,wCAAwC,EACxC,qCAAqC,EACrC,yCAAyC,EACzC,wCAAwC,GACzC,MAAM,YAAY,CAAC"}
@@ -1,4 +1,4 @@
1
1
  export { createUniqueEditorSceneId, sanitizeEditorSceneId, } from './identity.js';
2
2
  export { createEditorSceneAssetPlacementPatch, createEditorScenePlacementWorldTransform, getNextEditorSceneAssetPlacementPosition, } from './placement.js';
3
- export { addAssetLibraryItemToEditorSceneDocument, createEditorSceneAssetFromLibraryItem, createEditorSceneGroundDecalGameObjectForTextureAsset, createEditorSceneModelGameObjectForAsset, } from './document.js';
3
+ export { addAssetLibraryItemToEditorSceneDocument, createEditorSceneAssetFromLibraryItem, createEditorScenePrefabGameObjectForAsset, createEditorSceneModelGameObjectForAsset, } from './document.js';
4
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/asset-placement/index.ts"],"names":[],"mappings":"AASA,OAAO,EACL,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,oCAAoC,EACpC,wCAAwC,EACxC,wCAAwC,GACzC,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,wCAAwC,EACxC,qCAAqC,EACrC,qDAAqD,EACrD,wCAAwC,GACzC,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/asset-placement/index.ts"],"names":[],"mappings":"AASA,OAAO,EACL,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,oCAAoC,EACpC,wCAAwC,EACxC,wCAAwC,GACzC,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,wCAAwC,EACxC,qCAAqC,EACrC,yCAAyC,EACzC,wCAAwC,GACzC,MAAM,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"placement.d.ts","sourceRoot":"","sources":["../../src/asset-placement/placement.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACxB,MAAM,wBAAwB,CAAC;AAIhC,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACrB,MAAM,mBAAmB,CAAC;AAQ3B,OAAO,KAAK,EACV,mCAAmC,EACnC,oCAAoC,EACrC,MAAM,SAAS,CAAC;AAEjB,wBAAgB,oCAAoC,CAClD,KAAK,EAAE,mCAAmC,GACzC,oCAAoC,CAwBtC;AAED,wBAAgB,wCAAwC,CAAC,QAAQ,EAAE,mBAAmB,GAAG,eAAe,CASvG;AAED,wBAAgB,wCAAwC,CACtD,QAAQ,EAAE,mBAAmB,EAC7B,SAAS,CAAC,EAAE,uBAAuB,GAClC,uBAAuB,CAOzB"}
1
+ {"version":3,"file":"placement.d.ts","sourceRoot":"","sources":["../../src/asset-placement/placement.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACxB,MAAM,wBAAwB,CAAC;AAIhC,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACrB,MAAM,mBAAmB,CAAC;AAQ3B,OAAO,KAAK,EACV,mCAAmC,EACnC,oCAAoC,EACrC,MAAM,SAAS,CAAC;AAEjB,wBAAgB,oCAAoC,CAClD,KAAK,EAAE,mCAAmC,GACzC,oCAAoC,CAyBtC;AAED,wBAAgB,wCAAwC,CAAC,QAAQ,EAAE,mBAAmB,GAAG,eAAe,CASvG;AAED,wBAAgB,wCAAwC,CACtD,QAAQ,EAAE,mBAAmB,EAC7B,SAAS,CAAC,EAAE,uBAAuB,GAClC,uBAAuB,CAOzB"}
@@ -3,13 +3,14 @@ import { findEditorSceneModelRenderer, } from '../document/index.js';
3
3
  import { createUniqueEditorSceneGameObjectDisplayName, } from '../session/identity.js';
4
4
  import { createUniqueEditorSceneId, sanitizeEditorSceneId, } from './identity.js';
5
5
  export function createEditorSceneAssetPlacementPatch(input) {
6
- const name = createUniqueEditorSceneGameObjectDisplayName(input.document.scene.gameObjects.map((gameObject) => gameObject.name ?? gameObject.id), input.asset.displayName, { fallbackName: input.asset.assetId });
6
+ const name = createUniqueEditorSceneGameObjectDisplayName(input.document.scene.gameObjects.map((gameObject) => gameObject.name ?? gameObject.id), input.name ?? input.asset.displayName, { fallbackName: input.asset.assetId });
7
7
  const id = createUniqueEditorSceneId(input.document.scene.gameObjects.map((gameObject) => gameObject.id), sanitizeEditorSceneId(name));
8
8
  return {
9
9
  label: `Place ${input.asset.displayName}`,
10
10
  patch: {
11
11
  kind: 'game-object.create-from-asset',
12
12
  assetItem: input.asset,
13
+ ...(input.name ? { name: input.name } : {}),
13
14
  placement: {
14
15
  position: { ...input.hit.position },
15
16
  rotation: { x: 0, y: 0, z: 0 },
@@ -1 +1 @@
1
- {"version":3,"file":"placement.js","sourceRoot":"","sources":["../../src/asset-placement/placement.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"placement.js","sourceRoot":"","sources":["../../src/asset-placement/placement.ts"],"names":[],"mappings":"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"}
@@ -3,12 +3,14 @@ import type { EditorSceneAssetLibraryItem, EditorSceneDocument, EditorSceneGameO
3
3
  export interface EditorSceneAssetPlacementPatch<TAssetItem extends EditorSceneAssetLibraryItem = EditorSceneAssetLibraryItem> {
4
4
  kind: 'game-object.create-from-asset';
5
5
  assetItem: TAssetItem;
6
+ name?: string;
6
7
  placement?: EditorTransformSnapshot;
7
8
  }
8
9
  export interface EditorSceneAssetPlacementPatchInput<TAssetItem extends EditorSceneAssetLibraryItem = EditorSceneAssetLibraryItem> {
9
10
  document: EditorSceneDocument;
10
11
  asset: TAssetItem;
11
12
  hit: EditorPlacementHit;
13
+ name?: string;
12
14
  }
13
15
  export interface EditorSceneAssetPlacementPatchResult<TAssetItem extends EditorSceneAssetLibraryItem = EditorSceneAssetLibraryItem> {
14
16
  patch: EditorSceneAssetPlacementPatch<TAssetItem>;
@@ -23,6 +25,7 @@ export interface EditorSceneAssetPlacementTransformResolverInput {
23
25
  }
24
26
  export type EditorSceneAssetPlacementTransformResolver = (input: EditorSceneAssetPlacementTransformResolverInput) => EditorTransformSnapshot | null;
25
27
  export interface EditorSceneAssetPlacementOptions {
28
+ name?: string;
26
29
  createGameObjectGuid?: () => string;
27
30
  resolveLocalTransform?: EditorSceneAssetPlacementTransformResolver;
28
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/asset-placement/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,uBAAuB,EACxB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EACV,2BAA2B,EAC3B,mBAAmB,EACnB,qBAAqB,EACtB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,WAAW,8BAA8B,CAC7C,UAAU,SAAS,2BAA2B,GAAG,2BAA2B;IAE5E,IAAI,EAAE,+BAA+B,CAAC;IACtC,SAAS,EAAE,UAAU,CAAC;IACtB,SAAS,CAAC,EAAE,uBAAuB,CAAC;CACrC;AAED,MAAM,WAAW,mCAAmC,CAClD,UAAU,SAAS,2BAA2B,GAAG,2BAA2B;IAE5E,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,KAAK,EAAE,UAAU,CAAC;IAClB,GAAG,EAAE,kBAAkB,CAAC;CACzB;AAED,MAAM,WAAW,oCAAoC,CACnD,UAAU,SAAS,2BAA2B,GAAG,2BAA2B;IAE5E,KAAK,EAAE,8BAA8B,CAAC,UAAU,CAAC,CAAC;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,+CAA+C;IAC9D,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,uBAAuB,CAAC;CACzC;AAED,MAAM,MAAM,0CAA0C,GAAG,CACvD,KAAK,EAAE,+CAA+C,KACnD,uBAAuB,GAAG,IAAI,CAAC;AAEpC,MAAM,WAAW,gCAAgC;IAC/C,oBAAoB,CAAC,EAAE,MAAM,MAAM,CAAC;IACpC,qBAAqB,CAAC,EAAE,0CAA0C,CAAC;CACpE;AAED,MAAM,WAAW,+BAA+B,CAC9C,SAAS,SAAS,mBAAmB,GAAG,mBAAmB;IAE3D,QAAQ,EAAE,SAAS,CAAC;IACpB,UAAU,EAAE,qBAAqB,CAAC;CACnC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/asset-placement/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,uBAAuB,EACxB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EACV,2BAA2B,EAC3B,mBAAmB,EACnB,qBAAqB,EACtB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,WAAW,8BAA8B,CAC7C,UAAU,SAAS,2BAA2B,GAAG,2BAA2B;IAE5E,IAAI,EAAE,+BAA+B,CAAC;IACtC,SAAS,EAAE,UAAU,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,uBAAuB,CAAC;CACrC;AAED,MAAM,WAAW,mCAAmC,CAClD,UAAU,SAAS,2BAA2B,GAAG,2BAA2B;IAE5E,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,KAAK,EAAE,UAAU,CAAC;IAClB,GAAG,EAAE,kBAAkB,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,oCAAoC,CACnD,UAAU,SAAS,2BAA2B,GAAG,2BAA2B;IAE5E,KAAK,EAAE,8BAA8B,CAAC,UAAU,CAAC,CAAC;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,+CAA+C;IAC9D,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,uBAAuB,CAAC;CACzC;AAED,MAAM,MAAM,0CAA0C,GAAG,CACvD,KAAK,EAAE,+CAA+C,KACnD,uBAAuB,GAAG,IAAI,CAAC;AAEpC,MAAM,WAAW,gCAAgC;IAC/C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oBAAoB,CAAC,EAAE,MAAM,MAAM,CAAC;IACpC,qBAAqB,CAAC,EAAE,0CAA0C,CAAC;CACpE;AAED,MAAM,WAAW,+BAA+B,CAC9C,SAAS,SAAS,mBAAmB,GAAG,mBAAmB;IAE3D,QAAQ,EAAE,SAAS,CAAC;IACpB,UAAU,EAAE,qBAAqB,CAAC;CACnC"}
@@ -1,9 +1,104 @@
1
- import type { EditorSceneDocument, EditorSceneGameObject, EditorSceneGameObjectRenderingGroupId, EditorSceneModelRendererComponent, EditorSceneNodeKind, EditorSceneResolvedGameObjectRendering, EditorSceneTransformComponent } from './types';
1
+ import type { EditorSceneMaterialBinding } from '../material-binding/types';
2
+ import type { EditorSceneAsset, EditorSceneDocument, EditorSceneGameObject, EditorSceneGameObjectRenderingGroupId, EditorSceneModelRendererComponent, EditorSceneNodeKind, EditorScenePrefabNode, EditorScenePrefabDefaults, EditorScenePrefabDefinition, EditorScenePrefabAgentSummary, EditorScenePrefabMutationResult, EditorScenePrefabOverrides, EditorScenePrefabInstanceRelation, EditorScenePrefabInstance, EditorSceneResolvedGameObjectRendering, EditorSceneTransformComponent } from './types';
3
+ import type { EditorShadowSettings } from '../shadow-system/types';
4
+ export declare const EDITOR_SCENE_PREFAB_COMPOSITION_VERSION = 1;
5
+ export declare const EDITOR_SCENE_PREFAB_LEGACY_ROOT_NODE_ID = "prefab-root";
6
+ export declare const EDITOR_SCENE_PREFAB_LEGACY_MODEL_NODE_ID = "prefab-model";
2
7
  export declare function cloneEditorSceneDocument<TDocument extends EditorSceneDocument>(document: TDocument): TDocument;
3
8
  export declare function findEditorSceneTransform(gameObject: Pick<EditorSceneGameObject, 'components'>): EditorSceneTransformComponent | null;
4
9
  export declare function findEditorSceneModelRenderer(gameObject: Pick<EditorSceneGameObject, 'components'>): EditorSceneModelRendererComponent | null;
10
+ export declare function isEditorScenePrefabAsset(asset: Pick<EditorSceneAsset, 'type' | 'prefab'> | null | undefined): asset is Pick<EditorSceneAsset, 'type'> & {
11
+ prefab: EditorScenePrefabDefinition;
12
+ };
13
+ export declare function isEditorScenePrefabInstance(gameObject: Pick<EditorSceneGameObject, 'prefab'> | null | undefined): gameObject is Pick<EditorSceneGameObject, 'prefab'> & {
14
+ prefab: EditorScenePrefabInstance;
15
+ };
16
+ export declare function resolveEditorScenePrefabSourceAssetId(prefabAsset: Pick<EditorSceneAsset, 'prefab'> | null | undefined): string | null;
17
+ export declare function readEditorScenePrefabRootNodeId(prefabAsset: Pick<EditorSceneAsset, 'prefab' | 'displayName'> | null | undefined): string | null;
18
+ export declare function readEditorScenePrefabNodes(prefabAsset: Pick<EditorSceneAsset, 'prefab' | 'displayName'> | null | undefined): EditorScenePrefabNode[];
19
+ export declare function findEditorScenePrefabNode(prefabAsset: Pick<EditorSceneAsset, 'prefab' | 'displayName'> | null | undefined, nodeId: string): EditorScenePrefabNode | null;
20
+ export declare function readEditorScenePrefabNodeChildren(prefabAsset: Pick<EditorSceneAsset, 'prefab' | 'displayName'> | null | undefined, parentNodeId: string | null | undefined): EditorScenePrefabNode[];
21
+ export declare function ensureEditorScenePrefabComposition<TAsset extends EditorSceneAsset>(prefabAsset: TAsset): EditorScenePrefabMutationResult<TAsset>;
22
+ export declare function selectEditorScenePrefabNode<TAsset extends EditorSceneAsset>(prefabAsset: TAsset, nodeId: string): EditorScenePrefabMutationResult<TAsset>;
23
+ export declare function renameEditorScenePrefabAsset<TDocument extends Pick<EditorSceneDocument, 'assets'>>(document: TDocument, assetId: string, displayName: unknown): EditorScenePrefabMutationResult<EditorSceneAsset>;
24
+ export declare function renameEditorScenePrefabNode<TAsset extends EditorSceneAsset>(prefabAsset: TAsset, nodeId: string, name: unknown): EditorScenePrefabMutationResult<TAsset>;
25
+ export declare function createEditorScenePrefabNodeFromAsset<TAsset extends EditorSceneAsset>(prefabAsset: TAsset, asset: EditorSceneAsset, options?: {
26
+ id?: string;
27
+ guid?: string;
28
+ name?: string;
29
+ parentId?: string;
30
+ transform?: EditorSceneTransformComponent;
31
+ sourceNodePath?: string;
32
+ }): EditorScenePrefabMutationResult<TAsset>;
33
+ export declare function createEditorScenePrefabPrimitiveNode<TAsset extends EditorSceneAsset>(prefabAsset: TAsset, options: {
34
+ id?: string;
35
+ guid?: string;
36
+ name?: string;
37
+ parentId?: string;
38
+ shape: string;
39
+ transform?: EditorSceneTransformComponent;
40
+ }): EditorScenePrefabMutationResult<TAsset>;
41
+ export declare function createEditorScenePrefabGroupNode<TAsset extends EditorSceneAsset>(prefabAsset: TAsset, options?: {
42
+ id?: string;
43
+ guid?: string;
44
+ name?: string;
45
+ parentId?: string;
46
+ transform?: EditorSceneTransformComponent;
47
+ }): EditorScenePrefabMutationResult<TAsset>;
48
+ export declare function setEditorScenePrefabNodeTransform<TAsset extends EditorSceneAsset>(prefabAsset: TAsset, nodeId: string, transform: EditorSceneTransformComponent): EditorScenePrefabMutationResult<TAsset>;
49
+ export declare function setEditorScenePrefabNodeShadow<TAsset extends EditorSceneAsset>(prefabAsset: TAsset, nodeId: string, shadow: EditorShadowSettings | null | undefined): EditorScenePrefabMutationResult<TAsset>;
50
+ export declare function reparentEditorScenePrefabNode<TAsset extends EditorSceneAsset>(prefabAsset: TAsset, nodeId: string, parentId: string): EditorScenePrefabMutationResult<TAsset>;
51
+ export declare function deleteEditorScenePrefabNode<TAsset extends EditorSceneAsset>(prefabAsset: TAsset, nodeId: string): EditorScenePrefabMutationResult<TAsset>;
52
+ export declare function createEditorScenePrefabDefinitionFromAsset<TAsset extends Pick<EditorSceneAsset, 'id' | 'guid' | 'displayName'>>(sourceAsset: TAsset, options?: {
53
+ id?: string;
54
+ guid?: string;
55
+ displayName?: string;
56
+ category?: string;
57
+ defaults?: EditorScenePrefabDefaults;
58
+ metadata?: Record<string, unknown>;
59
+ }): EditorSceneAsset<unknown>;
60
+ export declare function createEditorScenePrefabInstanceGameObject(input: {
61
+ id: string;
62
+ guid?: string;
63
+ name?: string;
64
+ parentId?: string;
65
+ prefabAsset: Pick<EditorSceneAsset, 'id' | 'guid' | 'displayName' | 'prefab'>;
66
+ transform: EditorSceneTransformComponent;
67
+ active?: boolean;
68
+ shadowMode?: EditorScenePrefabDefaults['shadowMode'];
69
+ shadow?: EditorScenePrefabDefaults['shadow'];
70
+ metadata?: Record<string, unknown>;
71
+ overrides?: unknown;
72
+ }): EditorSceneGameObject;
73
+ export declare function createEditorScenePrefabDefinitionFromGameObject<TDocument extends EditorSceneDocument>(document: TDocument, gameObjectId: string, options?: {
74
+ id?: string;
75
+ guid?: string;
76
+ createGuid?: () => string;
77
+ displayName?: string;
78
+ category?: string;
79
+ defaults?: EditorScenePrefabDefaults;
80
+ metadata?: Record<string, unknown>;
81
+ }): EditorSceneAsset<unknown> | null;
82
+ export declare function createEditorSceneDuplicatedPrefabDefinition<TDocument extends EditorSceneDocument>(document: TDocument, prefabAssetId: string, options?: {
83
+ id?: string;
84
+ guid?: string;
85
+ createGuid?: () => string;
86
+ displayName?: string;
87
+ category?: string;
88
+ metadata?: Record<string, unknown>;
89
+ }): EditorSceneAsset<unknown> | null;
90
+ export declare function readEditorScenePrefabOverrideMaterialPath(path: string): string | null;
91
+ export declare function isEditorScenePrefabOverridePath(path: string): boolean;
92
+ export declare function isEditorScenePrefabCoreMaterialOverridePath(path: string): boolean;
93
+ export declare function readEditorScenePrefabOverrideProfileFieldPath(path: string): string | null;
94
+ export declare function patchEditorScenePrefabOverride<TAsset extends EditorSceneAsset = EditorSceneAsset>(prefabAsset: TAsset, path: string, value: unknown): TAsset;
95
+ export declare function mergeEditorSceneMaterialBindingOverrides<TOverride = unknown>(base: EditorSceneMaterialBinding<TOverride> | null | undefined, override: EditorSceneMaterialBinding<TOverride> | null | undefined): EditorSceneMaterialBinding<TOverride> | undefined;
96
+ export declare function mergeEditorScenePrefabOverrides<TOverride = unknown>(base: EditorScenePrefabOverrides<TOverride> | null | undefined, override: EditorScenePrefabOverrides<TOverride> | null | undefined): EditorScenePrefabOverrides<TOverride> | undefined;
97
+ export declare function resolveEditorScenePrefabInstanceEffectiveOverrides<TDocument extends EditorSceneDocument>(document: TDocument, gameObjectId: string): EditorScenePrefabOverrides | undefined;
98
+ export declare function createEditorScenePrefabAgentSummary<TDocument extends EditorSceneDocument>(document: TDocument, gameObjectId: string): EditorScenePrefabAgentSummary | null;
99
+ export declare function resolveEditorScenePrefabInstanceRelation<TDocument extends EditorSceneDocument>(document: TDocument, gameObjectId: string): EditorScenePrefabInstanceRelation<TDocument['scene']['gameObjects'][number], TDocument['assets'][number]>;
5
100
  export declare function readEditorSceneNodeKind(gameObject: EditorSceneGameObject): EditorSceneNodeKind;
6
- export declare function resolveEditorSceneGameObjectRendering(gameObject: Pick<EditorSceneGameObject, 'rendering' | 'groundDecal'>): EditorSceneResolvedGameObjectRendering | undefined;
101
+ export declare function resolveEditorSceneGameObjectRendering(gameObject: Pick<EditorSceneGameObject, 'rendering'>): EditorSceneResolvedGameObjectRendering | undefined;
7
102
  export declare function readEditorSceneGameObjectRenderingGroupId(value: unknown): EditorSceneGameObjectRenderingGroupId | null;
8
103
  export declare function readEditorSceneGameObjectAlphaIndex(value: unknown): number | null;
9
104
  //# sourceMappingURL=helpers.d.ts.map