@salsita-ai/sdk 0.50.0-develop.be40f0cee8 → 0.50.0-develop.d37f5db8ff

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 (1000) hide show
  1. package/README.md +3 -3
  2. package/dist/admin/create-admin-pages-from-spec.d.ts +1 -1
  3. package/dist/application-spec/errors/diagnostic-codes.d.ts +4 -0
  4. package/dist/application-spec/errors/diagnostic-codes.js +1 -1
  5. package/dist/application-spec/errors/diagnostic-messages.d.ts +4 -0
  6. package/dist/application-spec/errors/diagnostic-messages.js +1 -1
  7. package/dist/application-spec/generate-application/code/common/index.d.ts +1 -0
  8. package/dist/application-spec/generate-application/code/common/index.js +1 -1
  9. package/dist/application-spec/generate-application/code/common/project-module-list.d.ts +8 -0
  10. package/dist/application-spec/generate-application/code/common/project-module-list.js +3 -0
  11. package/dist/application-spec/generate-application/code/domain-runtime-files.js +1 -1
  12. package/dist/application-spec/generate-application/code/project-scaffolding.d.ts +8 -1
  13. package/dist/application-spec/generate-application/code/project-scaffolding.js +2 -2
  14. package/dist/application-spec/generate-application/code/templates/admin-domain-code.d.ts +1 -2
  15. package/dist/application-spec/generate-application/code/templates/admin-domain-code.js +6 -14
  16. package/dist/application-spec/generate-application/code/templates/admin-frontend-code.d.ts +1 -2
  17. package/dist/application-spec/generate-application/code/templates/admin-frontend-code.js +4 -4
  18. package/dist/application-spec/generate-application/code/templates/configurator-domain-code.d.ts +1 -2
  19. package/dist/application-spec/generate-application/code/templates/configurator-domain-code.js +7 -16
  20. package/dist/application-spec/generate-application/code/templates/configurator-frontend-code.d.ts +1 -2
  21. package/dist/application-spec/generate-application/code/templates/configurator-frontend-code.js +7 -9
  22. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-assistant.d.ts +2 -2
  23. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-assistant.js +1 -1
  24. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-domain-block.js +46 -44
  25. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.d.ts +1 -1
  26. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.js +1 -1
  27. package/dist/application-spec/generate-application/code/templates/domain-spec.js +4 -4
  28. package/dist/application-spec/generate-application/code/templates/domain.js +5 -5
  29. package/dist/application-spec/generate-application/code/templates/index.d.ts +1 -7
  30. package/dist/application-spec/generate-application/code/templates/index.js +1 -1
  31. package/dist/application-spec/generate-application/code/templates/package-json.js +1 -1
  32. package/dist/application-spec/generate-application/code/templates/skills/phoenix-cli-skill.js +1 -1
  33. package/dist/application-spec/generate-application/code/templates/skills/phoenix-create-configurator-skill.js +93 -41
  34. package/dist/application-spec/generate-application/code/templates/skills/phoenix-feedback-skill.js +1 -1
  35. package/dist/application-spec/generate-application/code/templates/skills/phoenix-review-skill.js +2 -2
  36. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill.js +1 -1
  37. package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.d.ts +1 -0
  38. package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.js +6 -0
  39. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.d.ts +37 -12
  40. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.js +19 -7
  41. package/dist/application-spec/generate-application/code/templates/webhook-builders.js +9 -4
  42. package/dist/application-spec/generate-application/code/templates/webhooks-config.js +2 -2
  43. package/dist/application-spec/generate-application/runtime/sections/assistant-runtime.d.ts +4 -3
  44. package/dist/application-spec/generate-application/runtime/sections/assistant-runtime.js +1 -1
  45. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.js +1 -1
  46. package/dist/application-spec/parse-application-files/spec/application/admin-spec/admin-spec.js +1 -1
  47. package/dist/application-spec/parse-application-files/spec/application/configurator-spec/configurator-spec.js +1 -1
  48. package/dist/application-spec/parse-application-files/spec/model/defaults.d.ts +5 -0
  49. package/dist/application-spec/parse-application-files/spec/model/defaults.js +1 -1
  50. package/dist/application-spec/parse-application-files/spec/relations/reference-field-type.d.ts +25 -0
  51. package/dist/application-spec/parse-application-files/spec/relations/reference-field-type.js +1 -0
  52. package/dist/application-spec/parse-application-files/spec/relations/relation-field-mismatch.d.ts +46 -0
  53. package/dist/application-spec/parse-application-files/spec/relations/relation-field-mismatch.js +1 -0
  54. package/dist/application-spec/parse-application-files/spec/relations/relations.d.ts +4 -3
  55. package/dist/application-spec/parse-application-files/spec/relations/relations.js +1 -1
  56. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-field-type.d.ts +3 -8
  57. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-field-type.js +1 -1
  58. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.d.ts +9 -43
  59. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.js +1 -1
  60. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-server-settings.d.ts +2 -2
  61. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant.d.ts +5 -21
  62. package/dist/client/authorized-client.d.ts +3 -1
  63. package/dist/client/authorized-client.js +1 -1
  64. package/dist/client/contract.d.ts +34 -0
  65. package/dist/client/contract.js +1 -1
  66. package/dist/client/index.d.ts +2 -2
  67. package/dist/client/index.js +1 -1
  68. package/dist/client/local-authorized-client.d.ts +3 -1
  69. package/dist/client/local-authorized-client.js +1 -1
  70. package/dist/client/memory-authorized-client.d.ts +3 -1
  71. package/dist/client/memory-authorized-client.js +1 -1
  72. package/dist/client/phoenix-api.d.ts +271 -30
  73. package/dist/configurator/application-runtime/extensions/selectors.js +1 -1
  74. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.d.ts +245 -13
  75. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.js +1 -1
  76. package/dist/configurator/application-runtime/extensions/systems/assistant-system/change-recorder.d.ts +85 -0
  77. package/dist/configurator/application-runtime/extensions/systems/assistant-system/change-recorder.js +1 -0
  78. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.d.ts +8 -3
  79. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.js +1 -1
  80. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.d.ts +4 -0
  81. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.js +1 -1
  82. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.d.ts +16 -1
  83. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.js +1 -1
  84. package/dist/configurator/application-runtime/extensions/systems/graphql-system/side-effects.d.ts +9 -0
  85. package/dist/configurator/application-runtime/extensions/systems/graphql-system/side-effects.js +1 -0
  86. package/dist/configurator/application-runtime/extensions/systems/index.d.ts +1 -1
  87. package/dist/configurator/common/frontend-analytics.d.ts +21 -21
  88. package/dist/configurator/index.d.ts +0 -1
  89. package/dist/configurator/index.js +1 -1
  90. package/dist/configurator/pages/DefaultConfiguratorLayout.d.ts +6 -0
  91. package/dist/configurator/pages/DefaultConfiguratorLayout.js +1 -0
  92. package/dist/configurator/pages/LoadedConfiguratorDetailPage.js +1 -1
  93. package/dist/configurator/scene/scene-analytics/scene-analytics.d.ts +2 -2
  94. package/dist/configurator/ui/assistant/AssistantChips.js +1 -1
  95. package/dist/configurator/ui/assistant/AssistantComposer.d.ts +3 -7
  96. package/dist/configurator/ui/assistant/AssistantComposer.js +1 -1
  97. package/dist/configurator/ui/assistant/AssistantPanel.js +1 -1
  98. package/dist/configurator/ui/assistant/AssistantThread.d.ts +7 -8
  99. package/dist/configurator/ui/assistant/AssistantThread.js +1 -1
  100. package/dist/configurator/ui/assistant/index.d.ts +1 -1
  101. package/dist/configurator/ui/assistant/index.js +1 -1
  102. package/dist/configurator/ui/assistant/thread-items.d.ts +14 -3
  103. package/dist/configurator/ui/assistant/thread-items.js +1 -1
  104. package/dist/configurator/ui/assistant/tool-chip.d.ts +8 -1
  105. package/dist/configurator/ui/assistant/tool-chip.js +1 -1
  106. package/dist/configurator/ui/assistant/use-is-assistant-panel-open.d.ts +5 -0
  107. package/dist/configurator/ui/assistant/use-is-assistant-panel-open.js +1 -0
  108. package/dist/configurator/ui/configurator-layout/universal/DesktopLayout.js +4 -4
  109. package/dist/configurator/ui/configurator-layout/universal/DesktopPreview.js +1 -1
  110. package/dist/configurator/ui/configurator-layout/universal/Layout.js +1 -1
  111. package/dist/configurator/ui/configurator-layout/universal/MobileLayout.js +2 -2
  112. package/dist/configurator/ui/configurator-layout/universal/MobilePreview.js +1 -1
  113. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.d.ts +47 -0
  114. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.js +1 -0
  115. package/dist/configurator/ui/configurator-layout/universal/use-scene-safe-area.d.ts +11 -26
  116. package/dist/configurator/ui/configurator-layout/universal/use-scene-safe-area.js +1 -1
  117. package/dist/configurator/ui/legacy/mobile-controls/MobileControls.d.ts +1 -1
  118. package/dist/configurator/ui/phoenix-layout-elements/AssistantToolbarButton.d.ts +2 -2
  119. package/dist/configurator/ui/phoenix-layout-elements/AssistantToolbarButton.js +1 -1
  120. package/dist/docs/complex-use-cases/filtered-controls-with-fix-dialog.mdx +100 -117
  121. package/dist/docs/complex-use-cases/navigation-reset-selection.mdx +18 -12
  122. package/dist/docs/complex-use-cases/sketching.mdx +0 -38
  123. package/dist/docs/controls/select-attribute/cardselect.mdx +9 -13
  124. package/dist/docs/index.json +1 -1
  125. package/dist/docs/integrations/woocommerce/local-development.mdx +1 -1
  126. package/dist/docs/layouts/custom-price.mdx +14 -16
  127. package/dist/docs/layouts/sidebar/tabs.mdx +24 -21
  128. package/dist/docs/layouts/toolbar.mdx +3 -1
  129. package/dist/docs/other-features/domain-actions.mdx +1 -1
  130. package/dist/docs/other-features/side-effects.mdx +76 -45
  131. package/dist/docs/other-features/transformers.mdx +1 -1
  132. package/dist/docs/other-features/violation-messages.mdx +52 -56
  133. package/dist/docs/phoenix/admin.mdx +9 -24
  134. package/dist/docs/phoenix/configurator-interface.mdx +100 -65
  135. package/dist/docs/phoenix/deployments.mdx +1 -1
  136. package/dist/docs/phoenix/domain-model.mdx +4 -0
  137. package/dist/docs/phoenix/expression-context.mdx +11 -3
  138. package/dist/docs/phoenix/getting-started.mdx +1 -1
  139. package/dist/docs/phoenix/localization.mdx +3 -22
  140. package/dist/docs/phoenix/phoenix-cli.mdx +124 -49
  141. package/dist/docs/phoenix/project-structure.mdx +24 -11
  142. package/dist/docs/phoenix/quickstart.mdx +2 -2
  143. package/dist/docs/phoenix/sdk-builder-workflow.mdx +12 -11
  144. package/dist/docs/phoenix/webhooks.mdx +1 -1
  145. package/dist/docs/recipes-and-delete/recipe-hierarchy-selection.mdx +15 -13
  146. package/dist/docs/relations/hierarchy.mdx +13 -2
  147. package/dist/docs/ux-guidelines/choosing-a-control.mdx +11 -0
  148. package/dist/domain/admin-domain/__generated/enhanced-model.d.ts +1 -2
  149. package/dist/domain/admin-domain/__generated/model/versions/v1.d.ts +1 -1
  150. package/dist/domain/admin-domain/__generated/model/versions/v2.d.ts +1 -1
  151. package/dist/domain/admin-domain/__generated/model/versions/v3.d.ts +1 -1
  152. package/dist/domain/admin-domain/__generated/model/versions/v4.d.ts +1 -1
  153. package/dist/domain/admin-domain/__generated/model/versions/v5.d.ts +1 -1
  154. package/dist/domain/admin-domain/__generated/model/versions/v6.d.ts +2 -2
  155. package/dist/domain/admin-domain/__generated/model/versions/v6.js +1 -1
  156. package/dist/domain/admin-domain/implementation/common-admin-expressions.d.ts +26 -14
  157. package/dist/domain/admin-domain/implementation/common-admin-migrations.d.ts +1 -1
  158. package/dist/domain/admin-domain/index.d.ts +9 -5
  159. package/dist/domain/admin-domain/index.js +1 -1
  160. package/dist/domain/application/GetApplicationWrapperHandler.d.ts +1 -1
  161. package/dist/domain/application/GetThemeHandler.d.ts +1 -1
  162. package/dist/domain/application/GetWebComponentOptions.d.ts +1 -1
  163. package/dist/domain/application/admin-page-factories.d.ts +1 -2
  164. package/dist/domain/application/application-config.d.ts +24 -95
  165. package/dist/domain/application/assistant/assistant-manifest.d.ts +63 -0
  166. package/dist/domain/application/assistant/assistant-resolved-manifest.d.ts +95 -0
  167. package/dist/domain/application/assistant/assistant-value-type.d.ts +9 -0
  168. package/dist/domain/application/assistant/assistant-value-type.js +1 -0
  169. package/dist/domain/application/assistant/build-assistant-manifest.d.ts +4 -0
  170. package/dist/domain/application/assistant/build-assistant-manifest.js +1 -0
  171. package/dist/domain/application/assistant/generate-assistant-prompt.d.ts +3 -0
  172. package/dist/domain/application/assistant/generate-assistant-prompt.js +1 -0
  173. package/dist/domain/application/assistant/index.d.ts +4 -0
  174. package/dist/domain/application/assistant/index.js +1 -0
  175. package/dist/domain/application/assistant-field-options.d.ts +2 -3
  176. package/dist/domain/application/assistant-mutations.d.ts +3 -5
  177. package/dist/domain/application/assistant-mutations.js +1 -1
  178. package/dist/domain/application/assistant-recipe-groups.d.ts +3 -7
  179. package/dist/domain/application/configurator-builder.d.ts +33 -18
  180. package/dist/domain/application/configurator-builder.js +1 -1
  181. package/dist/domain/application/create-initial-published-data.d.ts +1 -2
  182. package/dist/domain/application/index.d.ts +3 -5
  183. package/dist/domain/application/index.js +1 -1
  184. package/dist/domain/application/published-data/DataRowValidatorHandler.d.ts +1 -1
  185. package/dist/domain/application/published-data/FilterPublishedChunksHandler.d.ts +1 -1
  186. package/dist/domain/application/published-data/MapPublishedChunkedDataHandler.d.ts +1 -1
  187. package/dist/domain/application/published-data/MapPublishedRevisionDataHandler.d.ts +1 -1
  188. package/dist/domain/application/published-data/SheetValidatorHandler.d.ts +1 -1
  189. package/dist/domain/application/published-data/build-legend-data.d.ts +1 -1
  190. package/dist/domain/application/published-data/create-finalize-admin-domain.d.ts +1 -2
  191. package/dist/domain/application/published-data/format-field-type.d.ts +1 -1
  192. package/dist/domain/application/published-data/map-data-to-sheet.d.ts +1 -1
  193. package/dist/domain/application/published-data/map-published-chunked-data.d.ts +2 -2
  194. package/dist/domain/application/published-data/map-published-data.d.ts +1 -2
  195. package/dist/domain/application/published-data/validate-sheet-data.d.ts +1 -1
  196. package/dist/domain/available-system-components.js +1 -1
  197. package/dist/domain/core/action/action-factory.d.ts +11 -0
  198. package/dist/domain/core/{action.d.ts → action/action.d.ts} +22 -18
  199. package/dist/domain/core/action/index.d.ts +2 -0
  200. package/dist/domain/core/action/index.js +1 -0
  201. package/dist/domain/{components → core/component}/component-reader-types.d.ts +1 -2
  202. package/dist/domain/{components → core/component}/debug-state-component.d.ts +1 -1
  203. package/dist/domain/core/component/debug-state-component.js +1 -0
  204. package/dist/domain/core/component/domain-component-optic.d.ts +66 -0
  205. package/dist/domain/core/component/domain-component-optic.js +16 -0
  206. package/dist/domain/{components → core/component}/drag-state-component.d.ts +1 -1
  207. package/dist/domain/core/component/drag-state-component.js +1 -0
  208. package/dist/domain/{components → core/component}/export-state-component.d.ts +1 -1
  209. package/dist/domain/core/component/export-state-component.js +1 -0
  210. package/dist/domain/{components → core/component}/fullscreen-state-component.d.ts +1 -1
  211. package/dist/domain/core/component/fullscreen-state-component.js +1 -0
  212. package/dist/domain/{components → core/component}/group-components-by-entity-id-and-name.d.ts +1 -2
  213. package/dist/domain/core/component/group-components-by-entity-id-and-name.js +1 -0
  214. package/dist/domain/{components → core/component}/hover-state-component.d.ts +1 -1
  215. package/dist/domain/core/component/hover-state-component.js +1 -0
  216. package/dist/domain/core/component/index.d.ts +18 -0
  217. package/dist/domain/core/component/index.js +1 -0
  218. package/dist/domain/{components → core/component}/legacy-filter.d.ts +4 -19
  219. package/dist/domain/{components → core/component}/navigation-state-component.d.ts +1 -1
  220. package/dist/domain/core/component/navigation-state-component.js +1 -0
  221. package/dist/domain/{components → core/component}/selection-state-component.d.ts +1 -1
  222. package/dist/domain/core/component/selection-state-component.js +1 -0
  223. package/dist/domain/{components → core/component}/system-component-builder.d.ts +1 -2
  224. package/dist/domain/core/component/system-component-builder.js +1 -0
  225. package/dist/domain/{components → core/component}/system-component-filter.d.ts +25 -20
  226. package/dist/domain/core/component/system-virtual-entity.js +1 -0
  227. package/dist/domain/{components → core/component}/tool-state-component.d.ts +1 -1
  228. package/dist/domain/core/component/tool-state-component.js +1 -0
  229. package/dist/domain/{components → core/component}/updates.d.ts +17 -2
  230. package/dist/domain/{components → core/component}/view-state-component.d.ts +1 -1
  231. package/dist/domain/core/component/view-state-component.js +1 -0
  232. package/dist/domain/{components → core/component}/viewport-state-component.d.ts +1 -1
  233. package/dist/domain/core/component/viewport-state-component.js +1 -0
  234. package/dist/domain/core/data-schema/data-cell-value.d.ts +4 -0
  235. package/dist/domain/core/data-schema/data-schema-array-field.d.ts +5 -0
  236. package/dist/domain/core/data-schema/data-schema-field-object.d.ts +4 -0
  237. package/dist/domain/core/data-schema/data-schema-field.d.ts +2 -0
  238. package/dist/domain/core/data-schema/data-schema-field.js +1 -0
  239. package/dist/domain/core/data-schema/data-schema-localized-field.d.ts +4 -0
  240. package/dist/domain/core/data-schema/data-schema-localized-field.js +1 -0
  241. package/dist/domain/core/data-schema/data-schema-primitive-field.d.ts +5 -0
  242. package/dist/domain/core/data-schema/data-schema-primitive-field.js +1 -0
  243. package/dist/domain/core/data-schema/data-schema.d.ts +2 -0
  244. package/dist/domain/core/data-schema/data-schema.js +1 -0
  245. package/dist/domain/core/data-schema/index.d.ts +7 -0
  246. package/dist/domain/core/data-schema/index.js +1 -0
  247. package/dist/domain/core/decoder/create-decoder.d.ts +6 -0
  248. package/dist/domain/core/decoder/create-decoder.js +1 -0
  249. package/dist/domain/core/decoder/decoder.d.ts +6 -0
  250. package/dist/domain/core/decoder/decoder.js +1 -0
  251. package/dist/domain/core/decoder/index.d.ts +2 -0
  252. package/dist/domain/core/decoder/index.js +1 -0
  253. package/dist/domain/core/domain-factory.d.ts +4 -5
  254. package/dist/domain/core/domain-factory.js +1 -1
  255. package/dist/domain/core/domain.d.ts +4 -5
  256. package/dist/domain/core/domain.js +1 -1
  257. package/dist/domain/core/emission/index.d.ts +8 -0
  258. package/dist/domain/core/emission/index.js +1 -0
  259. package/dist/domain/core/emission/reset-state-emission.d.ts +12 -0
  260. package/dist/domain/core/emission/reset-state-emission.js +1 -0
  261. package/dist/domain/core/emission/state-emission.d.ts +4 -0
  262. package/dist/domain/core/emission/state-emission.js +1 -0
  263. package/dist/domain/core/emission/state-update-emission.d.ts +14 -0
  264. package/dist/domain/core/emission/state-update-emission.js +1 -0
  265. package/dist/domain/core/emission/state-validation-result.d.ts +18 -0
  266. package/dist/domain/core/emission/state-validation-result.js +1 -0
  267. package/dist/domain/core/emission/transformation-log.d.ts +2 -0
  268. package/dist/domain/core/emission/transformation-log.js +1 -0
  269. package/dist/domain/core/emission/transformer-log-entry.d.ts +6 -0
  270. package/dist/domain/core/emission/transformer-log-entry.js +1 -0
  271. package/dist/domain/core/emission/transformer-log.d.ts +11 -0
  272. package/dist/domain/core/emission/transformer-log.js +1 -0
  273. package/dist/domain/core/emission/transformer-phase.d.ts +1 -0
  274. package/dist/domain/core/emission/transformer-phase.js +1 -0
  275. package/dist/domain/core/expression/aliased-expressions.d.ts +10 -0
  276. package/dist/domain/core/expression/aliased-expressions.js +1 -0
  277. package/dist/domain/{expressions → core/expression}/constant-expressions.d.ts +3 -4
  278. package/dist/domain/core/expression/constant-expressions.js +1 -0
  279. package/dist/domain/core/expression/custom-expression.d.ts +25 -0
  280. package/dist/domain/core/expression/custom-expression.js +1 -0
  281. package/dist/domain/core/expression/expression.d.ts +46 -0
  282. package/dist/domain/core/expression/expression.js +1 -0
  283. package/dist/domain/core/expression/index.d.ts +4 -0
  284. package/dist/domain/core/expression/index.js +1 -0
  285. package/dist/domain/core/index.d.ts +13 -17
  286. package/dist/domain/core/index.js +1 -1
  287. package/dist/domain/{invariants → core/invariant}/builtin-invariant.d.ts +2 -2
  288. package/dist/domain/core/invariant/custom-invariants.d.ts +13 -0
  289. package/dist/domain/core/invariant/custom-invariants.js +1 -0
  290. package/dist/domain/core/invariant/index.d.ts +5 -0
  291. package/dist/domain/core/invariant/index.js +1 -0
  292. package/dist/domain/core/invariant/invariants.d.ts +10 -0
  293. package/dist/domain/core/invariant/invariants.js +1 -0
  294. package/dist/domain/core/invariant/violation-component.js +1 -0
  295. package/dist/domain/{invariants → core/invariant}/violation.d.ts +2 -2
  296. package/dist/domain/core/{component.d.ts → model/component.d.ts} +1 -1
  297. package/dist/domain/core/model/index.d.ts +6 -0
  298. package/dist/domain/core/model/index.js +1 -0
  299. package/dist/domain/core/{reflection.d.ts → model/reflection.d.ts} +1 -1
  300. package/dist/domain/core/model/reflection.js +1 -0
  301. package/dist/domain/core/recipe/index.d.ts +1 -0
  302. package/dist/domain/core/recipe/index.js +1 -0
  303. package/dist/domain/{domain-context/recipe-system → core/recipe}/recipes.d.ts +1 -3
  304. package/dist/domain/core/recipe/recipes.js +1 -0
  305. package/dist/domain/{relations → core/relation}/all-of-type-relation.d.ts +3 -4
  306. package/dist/domain/core/relation/all-of-type-relation.js +1 -0
  307. package/dist/domain/{relations → core/relation}/component-factories.d.ts +1 -2
  308. package/dist/domain/core/relation/component-factories.js +1 -0
  309. package/dist/domain/{relations → core/relation}/composed-of.d.ts +1 -1
  310. package/dist/domain/core/relation/composed-of.js +1 -0
  311. package/dist/domain/{relations → core/relation}/direct-relation.d.ts +2 -3
  312. package/dist/domain/core/relation/index.d.ts +9 -0
  313. package/dist/domain/core/relation/index.js +1 -0
  314. package/dist/domain/{relations → core/relation}/indirect-relation.d.ts +3 -4
  315. package/dist/domain/core/relation/indirect-relation.js +1 -0
  316. package/dist/domain/{relations → core/relation}/reference-component.d.ts +4 -5
  317. package/dist/domain/core/relation/reference-component.js +1 -0
  318. package/dist/domain/{relations → core/relation}/reference-field.d.ts +1 -1
  319. package/dist/domain/core/relation/reference-field.js +1 -0
  320. package/dist/domain/{relations → core/relation}/relation-factory.d.ts +2 -3
  321. package/dist/domain/{relations → core/relation}/relation-implementation.d.ts +3 -4
  322. package/dist/domain/core/relation/relation-implementation.js +1 -0
  323. package/dist/domain/core/schema/enhanced-json-schema.js +1 -0
  324. package/dist/domain/core/schema/extended-schema-validator.js +1 -0
  325. package/dist/domain/core/schema/index.d.ts +3 -0
  326. package/dist/domain/core/schema/index.js +1 -0
  327. package/dist/domain/core/schema/schema-validator.js +1 -0
  328. package/dist/domain/core/state/id-sequence.d.ts +15 -0
  329. package/dist/domain/core/state/id-sequence.js +1 -0
  330. package/dist/domain/core/state/index.d.ts +3 -0
  331. package/dist/domain/core/state/index.js +1 -0
  332. package/dist/domain/core/{migrations.d.ts → state/migrations.d.ts} +15 -47
  333. package/dist/domain/core/state/migrations.js +1 -0
  334. package/dist/domain/core/{state.d.ts → state/state.d.ts} +1 -2
  335. package/dist/domain/domain-builder.d.ts +11 -11
  336. package/dist/domain/domain-builder.js +1 -1
  337. package/dist/domain/domain-context/action-system/action-system.d.ts +2 -4
  338. package/dist/domain/domain-context/action-system/action-system.js +1 -1
  339. package/dist/domain/domain-context/action-system/index.d.ts +1 -0
  340. package/dist/domain/domain-context/action-system/index.js +1 -0
  341. package/dist/domain/domain-context/analytics-system/index.d.ts +2 -0
  342. package/dist/domain/domain-context/analytics-system/index.js +1 -0
  343. package/dist/domain/domain-context/create-transformer.d.ts +2 -2
  344. package/dist/domain/domain-context/dimension-system/dimension-state.js +1 -1
  345. package/dist/domain/domain-context/dimension-system/dimension-system.d.ts +3 -4
  346. package/dist/domain/domain-context/dimension-system/dimension-system.js +1 -1
  347. package/dist/domain/domain-context/dimension-system/index.d.ts +1 -0
  348. package/dist/domain/domain-context/dimension-system/index.js +1 -0
  349. package/dist/domain/domain-context/domain-context-systems.d.ts +8 -10
  350. package/dist/domain/domain-context/index.d.ts +8 -18
  351. package/dist/domain/domain-context/index.js +1 -1
  352. package/dist/domain/domain-context/navigation-system/index.d.ts +3 -0
  353. package/dist/domain/domain-context/navigation-system/index.js +1 -0
  354. package/dist/domain/domain-context/navigation-system/navigation-system.d.ts +5 -8
  355. package/dist/domain/domain-context/navigation-system/navigation-system.js +1 -1
  356. package/dist/domain/domain-context/navigation-system/navigation-updates.d.ts +1 -12
  357. package/dist/domain/domain-context/navigation-system/navigation-updates.js +1 -1
  358. package/dist/domain/domain-context/navigation-system/selection-transformers.d.ts +2 -2
  359. package/dist/domain/domain-context/navigation-system/selection-transformers.js +1 -1
  360. package/dist/domain/domain-context/recipe-system/index.d.ts +1 -0
  361. package/dist/domain/domain-context/recipe-system/index.js +1 -0
  362. package/dist/domain/domain-context/recipe-system/recipe-cooker-system.d.ts +2 -4
  363. package/dist/domain/domain-context/recipe-system/recipe-cooker-system.js +1 -1
  364. package/dist/domain/domain-context/relation-transformers/cascade-deletes.d.ts +3 -3
  365. package/dist/domain/domain-context/relation-transformers/cascade-deletes.js +1 -1
  366. package/dist/domain/domain-context/relation-transformers/cascade-ref-pruning.d.ts +3 -3
  367. package/dist/domain/domain-context/relation-transformers/cascade-ref-pruning.js +1 -1
  368. package/dist/domain/domain-context/relation-transformers/create-entity-refs.d.ts +3 -3
  369. package/dist/domain/domain-context/relation-transformers/create-entity-refs.js +2 -2
  370. package/dist/domain/domain-context/relation-transformers/index.d.ts +4 -0
  371. package/dist/domain/domain-context/relation-transformers/index.js +1 -0
  372. package/dist/domain/domain-context/relation-transformers/replace-refs.d.ts +3 -3
  373. package/dist/domain/domain-context/relation-transformers/replace-refs.js +1 -1
  374. package/dist/domain/domain-context/store-system/apply-updates.d.ts +1 -3
  375. package/dist/domain/domain-context/store-system/apply-updates.js +1 -1
  376. package/dist/domain/domain-context/store-system/index.d.ts +4 -0
  377. package/dist/domain/domain-context/store-system/index.js +1 -0
  378. package/dist/domain/domain-context/store-system/next-domain-entity-id.d.ts +1 -13
  379. package/dist/domain/domain-context/store-system/next-domain-entity-id.js +1 -1
  380. package/dist/domain/domain-context/store-system/reconcile-projected-entities.d.ts +1 -2
  381. package/dist/domain/domain-context/store-system/reconcile-projected-entities.js +1 -1
  382. package/dist/domain/domain-context/store-system/store-system.d.ts +2 -39
  383. package/dist/domain/domain-context/store-system/store-system.js +2 -2
  384. package/dist/domain/domain-context/store-system/system-state.d.ts +2 -4
  385. package/dist/domain/domain-context/store-system/system-state.js +1 -1
  386. package/dist/domain/domain-context/transformers/actions-builder.d.ts +1 -2
  387. package/dist/domain/domain-context/transformers/actions-builder.js +1 -1
  388. package/dist/domain/domain-context/transformers/auto-snap-transformer.d.ts +6 -10
  389. package/dist/domain/domain-context/transformers/auto-snap-transformer.js +1 -1
  390. package/dist/domain/domain-context/transformers/chain-builder.d.ts +3 -3
  391. package/dist/domain/domain-context/transformers/context.d.ts +2 -7
  392. package/dist/domain/domain-context/transformers/context.js +1 -1
  393. package/dist/domain/domain-context/transformers/entity-builder.d.ts +1 -5
  394. package/dist/domain/domain-context/transformers/entity-builder.js +1 -1
  395. package/dist/domain/domain-context/transformers/index.d.ts +1 -1
  396. package/dist/domain/domain-context/transformers/index.js +1 -1
  397. package/dist/domain/domain-context/transformers/then-builder.d.ts +1 -2
  398. package/dist/domain/domain-context/transformers/then-builder.js +1 -1
  399. package/dist/domain/domain-context/transformers/when-builder.d.ts +3 -9
  400. package/dist/domain/domain-context/transformers/when-builder.js +1 -1
  401. package/dist/domain/domain-context/undo-system.d.ts +2 -3
  402. package/dist/domain/domain-runtime/domain-context/action-context.d.ts +11 -0
  403. package/dist/domain/domain-runtime/domain-context/action-context.js +1 -0
  404. package/dist/domain/domain-runtime/domain-context/component-reader.d.ts +1 -4
  405. package/dist/domain/domain-runtime/domain-context/component-reader.js +1 -1
  406. package/dist/domain/domain-runtime/domain-context/domain-context.js +1 -1
  407. package/dist/domain/domain-runtime/domain-context/expression-context.d.ts +8 -0
  408. package/dist/domain/domain-runtime/domain-context/expression-context.js +1 -0
  409. package/dist/domain/domain-runtime/domain-context/index.d.ts +3 -0
  410. package/dist/domain/domain-runtime/domain-context/runtime-expression-context.d.ts +18 -0
  411. package/dist/domain/domain-runtime/domain-context/runtime-expression-context.js +1 -0
  412. package/dist/domain/domain-runtime/domain-context/selectors.d.ts +6 -13
  413. package/dist/domain/domain-runtime/domain-context/selectors.js +1 -1
  414. package/dist/domain/domain-runtime/domain-runtime.d.ts +56 -56
  415. package/dist/domain/domain-runtime/spec/create-violation-expressions.d.ts +24 -0
  416. package/dist/domain/domain-runtime/spec/create-violation-expressions.js +1 -0
  417. package/dist/domain/domain-runtime/spec/index.d.ts +5 -0
  418. package/dist/domain/domain-runtime/spec/index.js +1 -1
  419. package/dist/domain/domain-runtime/spec/initialize.js +1 -1
  420. package/dist/domain/{expressions → domain-runtime/spec}/memoize-expression.d.ts +1 -2
  421. package/dist/domain/{application → domain-runtime/spec/module-checks}/element-registration.d.ts +6 -1
  422. package/dist/domain/domain-runtime/spec/module-checks/element-registration.js +1 -0
  423. package/dist/domain/{application → domain-runtime/spec/module-checks}/handler-registration.d.ts +5 -0
  424. package/dist/domain/domain-runtime/spec/module-checks/handler-registration.js +1 -0
  425. package/dist/domain/domain-runtime/spec/module-checks/index.d.ts +8 -0
  426. package/dist/domain/domain-runtime/spec/module-checks/index.js +1 -0
  427. package/dist/domain/domain-runtime/spec/module-checks/project-modules.d.ts +25 -0
  428. package/dist/domain/domain-runtime/spec/module-checks/project-modules.js +1 -0
  429. package/dist/domain/domain-runtime/spec/module-checks/resolve-action-modules.d.ts +4 -0
  430. package/dist/domain/domain-runtime/spec/module-checks/resolve-action-modules.js +1 -0
  431. package/dist/domain/domain-runtime/spec/module-checks/resolve-component-optic-modules.d.ts +4 -0
  432. package/dist/domain/domain-runtime/spec/module-checks/resolve-component-optic-modules.js +1 -0
  433. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.d.ts +15 -0
  434. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.js +1 -0
  435. package/dist/domain/domain-runtime/spec/module-checks/resolve-imported-transformers.d.ts +22 -0
  436. package/dist/domain/domain-runtime/spec/module-checks/resolve-imported-transformers.js +1 -0
  437. package/dist/domain/domain-runtime/spec/module-checks/resolve-invariant-modules.d.ts +6 -0
  438. package/dist/domain/domain-runtime/spec/module-checks/resolve-invariant-modules.js +1 -0
  439. package/dist/domain/{actions → domain-runtime/spec}/prepare-action-implementations.d.ts +1 -1
  440. package/dist/domain/domain-runtime/spec/prepare-action-implementations.js +5 -0
  441. package/dist/domain/{expressions → domain-runtime/spec}/prepare-domain-expressions.d.ts +1 -1
  442. package/dist/domain/domain-runtime/spec/selectors.d.ts +7 -8
  443. package/dist/domain/domain-runtime/spec/selectors.js +1 -1
  444. package/dist/domain/domain-runtime/spec/types.d.ts +6 -6
  445. package/dist/domain/{system-components → extensions}/angle-indicator.d.ts +1 -1
  446. package/dist/domain/extensions/angle-indicator.js +1 -0
  447. package/dist/domain/extensions/attribute-switch.js +1 -0
  448. package/dist/domain/{system-components → extensions}/autorotate-camera-component.d.ts +1 -1
  449. package/dist/domain/extensions/autorotate-camera-component.js +1 -0
  450. package/dist/domain/{system-components → extensions}/basic-sidebar-footer.d.ts +1 -1
  451. package/dist/domain/extensions/basic-sidebar-footer.js +1 -0
  452. package/dist/domain/extensions/camera-based-hidden-entity-object.js +1 -0
  453. package/dist/domain/extensions/camera-based-hidden-entity.js +1 -0
  454. package/dist/domain/{system-components → extensions}/canvas-config.d.ts +1 -1
  455. package/dist/domain/extensions/canvas-config.js +1 -0
  456. package/dist/domain/extensions/canvas-custom-environment.js +1 -0
  457. package/dist/domain/{system-components → extensions}/canvas-padding.d.ts +1 -1
  458. package/dist/domain/extensions/canvas-padding.js +1 -0
  459. package/dist/domain/{system-components → extensions}/canvas-preset-environment.d.ts +1 -1
  460. package/dist/domain/extensions/canvas-preset-environment.js +1 -0
  461. package/dist/domain/{system-components → extensions}/child-entity-recipe-hierarchy.d.ts +2 -2
  462. package/dist/domain/extensions/child-entity-recipe-hierarchy.js +1 -0
  463. package/dist/domain/extensions/client-side-image.js +1 -0
  464. package/dist/domain/extensions/color-value.js +1 -0
  465. package/dist/domain/{system-components → extensions}/common/angle-indicator-schema.d.ts +1 -1
  466. package/dist/domain/extensions/common/angle-indicator-schema.js +1 -0
  467. package/dist/domain/{system-components → extensions}/common/dimension-indicator-schema.d.ts +1 -1
  468. package/dist/domain/extensions/common/dimension-indicator-schema.js +1 -0
  469. package/dist/domain/extensions/common/index.d.ts +4 -0
  470. package/dist/domain/extensions/common/index.js +1 -0
  471. package/dist/domain/{system-components → extensions}/custom-header.d.ts +2 -2
  472. package/dist/domain/{system-components → extensions}/custom-header.js +1 -1
  473. package/dist/domain/extensions/custom-price-footer.js +1 -0
  474. package/dist/domain/{system-components → extensions}/custom-sidebar-footer.d.ts +2 -2
  475. package/dist/domain/{system-components → extensions}/custom-sidebar-footer.js +1 -1
  476. package/dist/domain/{system-components → extensions}/dimension-indicator.d.ts +1 -1
  477. package/dist/domain/extensions/dimension-indicator.js +1 -0
  478. package/dist/domain/{system-components → extensions}/editable-angle-indicator.d.ts +3 -2
  479. package/dist/domain/extensions/editable-angle-indicator.js +1 -0
  480. package/dist/domain/{system-components → extensions}/editable-distance-dimension-indicator.d.ts +3 -2
  481. package/dist/domain/extensions/editable-distance-dimension-indicator.js +1 -0
  482. package/dist/domain/{system-components → extensions}/editable-offset-indicator.d.ts +3 -2
  483. package/dist/domain/extensions/editable-offset-indicator.js +1 -0
  484. package/dist/domain/{system-components → extensions}/editable-size-indicator.d.ts +3 -2
  485. package/dist/domain/extensions/editable-size-indicator.js +1 -0
  486. package/dist/domain/{system-components → extensions}/entity-header.d.ts +1 -1
  487. package/dist/domain/extensions/entity-header.js +1 -0
  488. package/dist/domain/{system-components → extensions}/exit-tool-mode-fab.d.ts +1 -1
  489. package/dist/domain/extensions/exit-tool-mode-fab.js +1 -0
  490. package/dist/domain/{system-components → extensions}/finalize-action.d.ts +1 -1
  491. package/dist/domain/extensions/finalize-action.js +1 -0
  492. package/dist/domain/extensions/finalize-component.js +1 -0
  493. package/dist/domain/extensions/fit-selection-orthographic-camera-component.js +1 -0
  494. package/dist/domain/extensions/fit-selection-perspective-camera-component.js +1 -0
  495. package/dist/domain/{system-components → extensions}/fixed-header.d.ts +1 -1
  496. package/dist/domain/extensions/fixed-header.js +1 -0
  497. package/dist/domain/{system-components → extensions}/floating-header.d.ts +1 -1
  498. package/dist/domain/extensions/floating-header.js +1 -0
  499. package/dist/domain/{system-components → extensions}/hidden-header.d.ts +1 -1
  500. package/dist/domain/extensions/hidden-header.js +1 -0
  501. package/dist/domain/{system-components → extensions}/hidden-sidebar-footer.d.ts +1 -1
  502. package/dist/domain/extensions/hidden-sidebar-footer.js +1 -0
  503. package/dist/domain/{system-components → extensions}/horizontal-tabs.d.ts +1 -1
  504. package/dist/domain/extensions/horizontal-tabs.js +1 -0
  505. package/dist/domain/extensions/index.d.ts +69 -0
  506. package/dist/domain/extensions/index.js +1 -0
  507. package/dist/domain/{system-components → extensions}/list-selector-dimension-indicator.d.ts +3 -2
  508. package/dist/domain/extensions/list-selector-dimension-indicator.js +1 -0
  509. package/dist/domain/extensions/multilingual-text-value.js +1 -0
  510. package/dist/domain/extensions/navigation-steps.js +1 -0
  511. package/dist/domain/{system-components → extensions}/offset-anchors.d.ts +1 -1
  512. package/dist/domain/extensions/offset-anchors.js +1 -0
  513. package/dist/domain/{system-components → extensions}/offset-indicator.d.ts +1 -2
  514. package/dist/domain/extensions/offset-indicator.js +1 -0
  515. package/dist/domain/{system-components → extensions}/offset.d.ts +1 -1
  516. package/dist/domain/extensions/offset.js +1 -0
  517. package/dist/domain/{system-components → extensions}/other-action.d.ts +1 -1
  518. package/dist/domain/extensions/other-action.js +1 -0
  519. package/dist/domain/{system-components → extensions}/property-page.d.ts +2 -2
  520. package/dist/domain/extensions/property-page.js +1 -0
  521. package/dist/domain/{system-components → extensions}/read-sidebar-footer.d.ts +1 -1
  522. package/dist/domain/extensions/read-sidebar-footer.js +1 -0
  523. package/dist/domain/{system-components → extensions}/replace-entity-recipe-hierarchy.d.ts +2 -2
  524. package/dist/domain/extensions/replace-entity-recipe-hierarchy.js +1 -0
  525. package/dist/domain/extensions/rotatable.js +1 -0
  526. package/dist/domain/extensions/rotation-handle.js +1 -0
  527. package/dist/domain/extensions/save-template-thumbnail.js +1 -0
  528. package/dist/domain/{system-components → extensions}/scene-entity-add-fab.d.ts +1 -1
  529. package/dist/domain/extensions/scene-entity-add-fab.js +1 -0
  530. package/dist/domain/extensions/scene-entity-animation.js +1 -0
  531. package/dist/domain/extensions/scene-entity-control.js +1 -0
  532. package/dist/domain/{system-components → extensions}/scene-entity-delete-fab.d.ts +1 -1
  533. package/dist/domain/extensions/scene-entity-delete-fab.js +1 -0
  534. package/dist/domain/extensions/scene-entity-floor-object.js +1 -0
  535. package/dist/domain/{system-components → extensions}/scene-entity-html-hotspot.d.ts +1 -1
  536. package/dist/domain/extensions/scene-entity-html-hotspot.js +1 -0
  537. package/dist/domain/{system-components → extensions}/scene-entity-navigation-hotspot.d.ts +1 -1
  538. package/dist/domain/extensions/scene-entity-navigation-hotspot.js +1 -0
  539. package/dist/domain/{system-components → extensions}/scene-entity-object-html-hotspot.d.ts +1 -1
  540. package/dist/domain/extensions/scene-entity-object-html-hotspot.js +1 -0
  541. package/dist/domain/{system-components → extensions}/scene-entity-select-hotspot.d.ts +1 -1
  542. package/dist/domain/extensions/scene-entity-select-hotspot.js +1 -0
  543. package/dist/domain/extensions/scene-entity-wall-object.js +1 -0
  544. package/dist/domain/extensions/selectable-component.js +1 -0
  545. package/dist/domain/{system-components → extensions}/sidebar-tabs.d.ts +1 -1
  546. package/dist/domain/extensions/sidebar-tabs.js +1 -0
  547. package/dist/domain/extensions/simple-summary.js +1 -0
  548. package/dist/domain/{system-components → extensions}/size.d.ts +1 -1
  549. package/dist/domain/extensions/size.js +1 -0
  550. package/dist/domain/{system-components → extensions}/sketching-draw.d.ts +1 -1
  551. package/dist/domain/extensions/sketching-draw.js +1 -0
  552. package/dist/domain/{system-components → extensions}/sketching-edit.d.ts +2 -2
  553. package/dist/domain/extensions/sketching-edit.js +1 -0
  554. package/dist/domain/extensions/summary-component.js +1 -0
  555. package/dist/domain/extensions/text-value.js +1 -0
  556. package/dist/domain/extensions/tool-controls.js +1 -0
  557. package/dist/domain/{system-components → extensions}/tool-menu-fab.d.ts +2 -2
  558. package/dist/domain/extensions/tool-menu-fab.js +1 -0
  559. package/dist/domain/{system-components → extensions}/toolbar.d.ts +2 -2
  560. package/dist/domain/{system-components → extensions}/toolbar.js +1 -1
  561. package/dist/domain/{system-components → extensions}/universal-sidebar-footer.d.ts +1 -1
  562. package/dist/domain/extensions/universal-sidebar-footer.js +1 -0
  563. package/dist/domain/extensions/view-controls.js +1 -0
  564. package/dist/domain/index.d.ts +2 -32
  565. package/dist/domain/index.js +1 -1
  566. package/dist/domain/mocks/create-mock-domain-runtime-services.d.ts +1 -1
  567. package/dist/domain/mocks/create-mock-domain-runtime.d.ts +13 -13
  568. package/dist/domain/mocks/create-mock-domain-runtime.js +1 -1
  569. package/dist/domain/projections/blender-projections/blender-projections.d.ts +2 -3
  570. package/dist/domain/projections/blender-projections/blender-projections.js +1 -1
  571. package/dist/domain/projections/blender-projections/camera.d.ts +1 -1
  572. package/dist/domain/projections/collision-projections.d.ts +1 -1
  573. package/dist/domain/projections/composition-projections.d.ts +1 -1
  574. package/dist/domain/projections/composition-projections.js +1 -1
  575. package/dist/domain/projections/constraint-projections.d.ts +1 -1
  576. package/dist/domain/projections/index.d.ts +1 -1
  577. package/dist/domain/projections/position-projections.d.ts +1 -1
  578. package/dist/domain/projections/projected-entities-projections.d.ts +2 -3
  579. package/dist/domain/projections/snap-matching.d.ts +1 -2
  580. package/dist/domain/projections/snap-utils.d.ts +1 -2
  581. package/dist/domain/projections/snapping-projections.d.ts +1 -1
  582. package/dist/domain/projections/validation-projections.d.ts +3 -20
  583. package/dist/domain/projections/validation-projections.js +1 -1
  584. package/dist/domain/sketching/sketching-projections.d.ts +1 -1
  585. package/dist/domain/system-components/admin-sidebar.d.ts +1 -1
  586. package/dist/domain/system-components/admin-sidebar.js +1 -1
  587. package/dist/domain/system-components/angle-dimension.js +1 -1
  588. package/dist/domain/system-components/application-config.d.ts +1 -1
  589. package/dist/domain/system-components/application-config.js +1 -1
  590. package/dist/domain/system-components/attribute-selection.js +1 -1
  591. package/dist/domain/system-components/bounding-box-component.d.ts +1 -1
  592. package/dist/domain/system-components/bounding-box-component.js +1 -1
  593. package/dist/domain/system-components/bounding-sphere-component.d.ts +1 -1
  594. package/dist/domain/system-components/bounding-sphere-component.js +1 -1
  595. package/dist/domain/system-components/child-entity-recipes.d.ts +1 -1
  596. package/dist/domain/system-components/child-entity-recipes.js +1 -1
  597. package/dist/domain/system-components/child-entity-selection.d.ts +1 -2
  598. package/dist/domain/system-components/child-entity-selection.js +1 -1
  599. package/dist/domain/system-components/collision-box-geometry.d.ts +1 -1
  600. package/dist/domain/system-components/collision-box-geometry.js +1 -1
  601. package/dist/domain/system-components/collision-geometries.d.ts +1 -1
  602. package/dist/domain/system-components/collision-geometry.d.ts +1 -1
  603. package/dist/domain/system-components/collision-geometry.js +1 -1
  604. package/dist/domain/system-components/collision-point-geometry.d.ts +1 -1
  605. package/dist/domain/system-components/collision-point-geometry.js +1 -1
  606. package/dist/domain/system-components/common/index.d.ts +0 -4
  607. package/dist/domain/system-components/common/index.js +1 -1
  608. package/dist/domain/system-components/common/recipes.d.ts +1 -2
  609. package/dist/domain/system-components/constraint.d.ts +1 -1
  610. package/dist/domain/system-components/constraint.js +1 -1
  611. package/dist/domain/system-components/create-blueprint.d.ts +1 -1
  612. package/dist/domain/system-components/custom-scene-entity.d.ts +1 -1
  613. package/dist/domain/system-components/custom-scene-entity.js +1 -1
  614. package/dist/domain/system-components/detail.js +1 -1
  615. package/dist/domain/system-components/distance-dimension-select.d.ts +1 -1
  616. package/dist/domain/system-components/distance-dimension-select.js +1 -1
  617. package/dist/domain/system-components/distance-dimension.d.ts +1 -1
  618. package/dist/domain/system-components/distance-dimension.js +1 -1
  619. package/dist/domain/system-components/drag-handle.d.ts +1 -1
  620. package/dist/domain/system-components/drag-handle.js +1 -1
  621. package/dist/domain/system-components/fit-entity-orthographic-camera-component.js +1 -1
  622. package/dist/domain/system-components/fit-entity-perspective-camera-component.js +1 -1
  623. package/dist/domain/system-components/fit-root-orthographic-camera-component.js +1 -1
  624. package/dist/domain/system-components/fit-root-perspective-camera-component.js +1 -1
  625. package/dist/domain/system-components/generic-dimension.d.ts +1 -1
  626. package/dist/domain/system-components/generic-dimension.js +1 -1
  627. package/dist/domain/system-components/hidden-entity.js +1 -1
  628. package/dist/domain/system-components/hotspot-drag-handle.d.ts +1 -2
  629. package/dist/domain/system-components/hotspot-drag-handle.js +1 -1
  630. package/dist/domain/system-components/index.d.ts +0 -68
  631. package/dist/domain/system-components/index.js +1 -1
  632. package/dist/domain/system-components/material-override-property-transition.js +1 -1
  633. package/dist/domain/system-components/material-override-transformer.js +1 -1
  634. package/dist/domain/system-components/material-swatch.js +1 -1
  635. package/dist/domain/system-components/navigation-page.js +1 -1
  636. package/dist/domain/system-components/navigation-panel-list.js +1 -1
  637. package/dist/domain/system-components/phoenix-entity-elements/admin-data-table-sidebar.d.ts +1 -1
  638. package/dist/domain/system-components/phoenix-layout-elements/admin-connected-resource-page.d.ts +1 -1
  639. package/dist/domain/system-components/phoenix-layout-elements/admin-data-table-actions.d.ts +1 -1
  640. package/dist/domain/system-components/phoenix-layout-elements/admin-data-table-page.d.ts +1 -1
  641. package/dist/domain/system-components/pivot-point.d.ts +1 -1
  642. package/dist/domain/system-components/pivot-point.js +1 -1
  643. package/dist/domain/system-components/price.js +1 -1
  644. package/dist/domain/system-components/projected-entities.d.ts +1 -1
  645. package/dist/domain/system-components/projected-entities.js +1 -1
  646. package/dist/domain/system-components/replace-entity-recipes.d.ts +1 -1
  647. package/dist/domain/system-components/replace-entity-recipes.js +1 -1
  648. package/dist/domain/system-components/scene-entity-ambient-light.js +1 -1
  649. package/dist/domain/system-components/scene-entity-box-object.js +1 -1
  650. package/dist/domain/system-components/scene-entity-directional-light.js +1 -1
  651. package/dist/domain/system-components/scene-entity-local-material-override.js +1 -1
  652. package/dist/domain/system-components/scene-entity-material-override.js +1 -1
  653. package/dist/domain/system-components/scene-entity-object-clip.js +1 -1
  654. package/dist/domain/system-components/scene-entity-object-decal.js +1 -1
  655. package/dist/domain/system-components/scene-entity-object-group.js +1 -1
  656. package/dist/domain/system-components/scene-entity-object-local-material-override.js +1 -1
  657. package/dist/domain/system-components/scene-entity-object-material-override.js +1 -1
  658. package/dist/domain/system-components/scene-entity-object-properties.js +1 -1
  659. package/dist/domain/system-components/scene-entity-object-remote-material-override.js +1 -1
  660. package/dist/domain/system-components/scene-entity-object-text-decal.js +1 -1
  661. package/dist/domain/system-components/scene-entity-object-transformer.js +1 -1
  662. package/dist/domain/system-components/scene-entity-object-transimissive-material-override.js +1 -1
  663. package/dist/domain/system-components/scene-entity-object.js +1 -1
  664. package/dist/domain/system-components/scene-entity-point-light.js +1 -1
  665. package/dist/domain/system-components/scene-entity-properties.js +1 -1
  666. package/dist/domain/system-components/scene-entity-rect-area-light.js +1 -1
  667. package/dist/domain/system-components/scene-entity-remote-material-override.js +1 -1
  668. package/dist/domain/system-components/scene-entity-remote-object.js +1 -1
  669. package/dist/domain/system-components/scene-entity-spot-light.js +1 -1
  670. package/dist/domain/system-components/scene-entity-transimissive-material-override.js +1 -1
  671. package/dist/domain/system-components/sketching-line.d.ts +1 -1
  672. package/dist/domain/system-components/sketching-line.js +1 -1
  673. package/dist/domain/system-components/sketching-rectangle.d.ts +1 -1
  674. package/dist/domain/system-components/sketching-rectangle.js +1 -1
  675. package/dist/domain/system-components/sketching.d.ts +1 -1
  676. package/dist/domain/system-components/sketching.js +1 -1
  677. package/dist/domain/system-components/snap-axis.d.ts +1 -1
  678. package/dist/domain/system-components/snap-axis.js +1 -1
  679. package/dist/domain/system-components/snap-edge.d.ts +1 -1
  680. package/dist/domain/system-components/snap-edge.js +1 -1
  681. package/dist/domain/system-components/snap-plane.d.ts +1 -1
  682. package/dist/domain/system-components/snap-plane.js +1 -1
  683. package/dist/domain/system-components/snap-point.d.ts +1 -1
  684. package/dist/domain/system-components/snap-point.js +1 -1
  685. package/dist/domain/system-components/static-orthographic-camera-component.d.ts +1 -1
  686. package/dist/domain/system-components/static-orthographic-camera-component.js +1 -1
  687. package/dist/domain/system-components/static-perspective-camera-component.d.ts +1 -1
  688. package/dist/domain/system-components/static-perspective-camera-component.js +1 -1
  689. package/dist/domain/utils/eval-cache.d.ts +1 -2
  690. package/dist/domain/utils/memo-eval.d.ts +2 -4
  691. package/dist/editor/Editor.js +1 -1
  692. package/dist/editor/domain-editors/use-implementation-files.d.ts +7 -6
  693. package/dist/editor/domain-editors/use-implementation-files.js +1 -1
  694. package/dist/editor/graphql/GraphQLPanel.js +1 -1
  695. package/dist/editor/variants/VariantAnswerFooter.d.ts +17 -0
  696. package/dist/editor/variants/VariantAnswerFooter.js +1 -0
  697. package/dist/editor/variants/VariantPreviewHandler.d.ts +6 -0
  698. package/dist/editor/variants/VariantPreviewHandler.js +1 -0
  699. package/dist/editor/variants/variant-preview-styles.d.ts +49 -0
  700. package/dist/editor/variants/variant-preview-styles.js +1 -0
  701. package/dist/i18n/locales/cs/messages.js +1 -1
  702. package/dist/i18n/locales/da/messages.js +1 -1
  703. package/dist/i18n/locales/de/messages.js +1 -1
  704. package/dist/i18n/locales/de-AT/messages.js +1 -1
  705. package/dist/i18n/locales/en/messages.js +1 -1
  706. package/dist/i18n/locales/en-AU/messages.js +1 -1
  707. package/dist/i18n/locales/en-GB/messages.js +1 -1
  708. package/dist/i18n/locales/es/messages.js +1 -1
  709. package/dist/i18n/locales/fr/messages.js +1 -1
  710. package/dist/i18n/locales/hu/messages.js +1 -1
  711. package/dist/i18n/locales/it/messages.js +1 -1
  712. package/dist/i18n/locales/nl/messages.js +1 -1
  713. package/dist/i18n/locales/pl/messages.js +1 -1
  714. package/dist/i18n/locales/pt/messages.js +1 -1
  715. package/dist/i18n/locales/ro/messages.js +1 -1
  716. package/dist/i18n/locales/sk/messages.js +1 -1
  717. package/dist/i18n/locales/tr/messages.js +1 -1
  718. package/dist/legacy/domain-cli/gen/configurator-builder.js +21 -8
  719. package/dist/legacy/domain-cli/gen/constant-expressions.js +1 -3
  720. package/dist/legacy/domain-cli/gen/implementation.js +7 -11
  721. package/dist/legacy/domain-cli/gen/invariants.js +7 -6
  722. package/dist/legacy/domain-cli/utils/cache.d.ts +1 -1
  723. package/dist/legacy/domain-cli/utils/cache.js +1 -1
  724. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/claude-md.d.ts +1 -1
  725. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/cursor-rules.d.ts +1 -1
  726. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.d.ts +1 -1
  727. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.js +1 -0
  728. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/domain-index.js +17 -15
  729. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/env-example.d.ts +1 -1
  730. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/env-example.js +4 -0
  731. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-admin.js +18 -19
  732. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-configurator.js +15 -16
  733. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-admin.js +22 -23
  734. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-configurator.js +15 -16
  735. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/generator-shared.d.ts +7 -2
  736. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/generator-shared.js +8 -12
  737. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/index.d.ts +1 -1
  738. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/index.js +1 -1
  739. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/webhook-builders.js +7 -7
  740. package/dist/phoenix/application-spec/application-spec-builder.js +1 -1
  741. package/dist/phoenix/application-spec/resolve-deployment-data.d.ts +4 -3
  742. package/dist/phoenix/application-spec/resolve-deployment-data.js +2 -2
  743. package/dist/phoenix/cli.js +1 -1
  744. package/dist/phoenix/commands/deploy.js +2 -2
  745. package/dist/phoenix/commands/dev.js +5 -5
  746. package/dist/phoenix/commands/index.d.ts +1 -0
  747. package/dist/phoenix/commands/index.js +1 -1
  748. package/dist/phoenix/commands/init.d.ts +4 -4
  749. package/dist/phoenix/commands/init.js +1 -1
  750. package/dist/phoenix/commands/prepare-deployment-command.js +2 -2
  751. package/dist/phoenix/commands/prepare-local-environment-command.js +1 -1
  752. package/dist/phoenix/commands/prettier.js +1 -1
  753. package/dist/phoenix/commands/story-dev.js +2 -2
  754. package/dist/phoenix/commands/variants.d.ts +35 -0
  755. package/dist/phoenix/commands/variants.js +1 -0
  756. package/dist/phoenix/editor-server/commands-router.d.ts +68 -1
  757. package/dist/phoenix/editor-server/commands-router.js +1 -1
  758. package/dist/phoenix/editor-server/editor-router.d.ts +65 -0
  759. package/dist/phoenix/editor-server/editor-server.d.ts +3 -3
  760. package/dist/phoenix/editor-server/editor-server.js +1 -1
  761. package/dist/phoenix/editor-server/protocol.d.ts +1 -0
  762. package/dist/phoenix/editor-server/spec-router.js +1 -1
  763. package/dist/phoenix/editor-server/trpc.d.ts +3 -0
  764. package/dist/phoenix/scripts/build-admin.js +1 -1
  765. package/dist/phoenix/services/application-spec-project-watcher.d.ts +13 -2
  766. package/dist/phoenix/services/application-spec-project-watcher.js +3 -3
  767. package/dist/phoenix/services/index.d.ts +4 -0
  768. package/dist/phoenix/services/index.js +1 -1
  769. package/dist/phoenix/services/phoenix-application.d.ts +21 -0
  770. package/dist/phoenix/services/phoenix-application.js +1 -0
  771. package/dist/phoenix/services/phoenix-store.d.ts +48 -0
  772. package/dist/phoenix/services/phoenix-store.js +1 -0
  773. package/dist/phoenix/services/phx-variant-previews-plugin.d.ts +9 -0
  774. package/dist/phoenix/services/phx-variant-previews-plugin.js +1 -0
  775. package/dist/phoenix/services/prepare-development-environment.js +1 -1
  776. package/dist/phoenix/services/variant-file-session.d.ts +36 -0
  777. package/dist/phoenix/services/variant-file-session.js +1 -0
  778. package/dist/phoenix/services/variant-preview-service.d.ts +80 -0
  779. package/dist/phoenix/services/variant-preview-service.js +1 -0
  780. package/dist/phoenix/services/vite-config.js +1 -1
  781. package/dist/phoenix/utils/git/index.d.ts +1 -0
  782. package/dist/phoenix/utils/git/index.js +1 -0
  783. package/dist/phoenix/utils/git/is-inside-git-repository.d.ts +6 -0
  784. package/dist/phoenix/utils/git/is-inside-git-repository.js +1 -0
  785. package/dist/phoenix/utils/index.d.ts +1 -0
  786. package/dist/phoenix/utils/index.js +1 -1
  787. package/dist/react-sdk/application-runtime/common-services/analytics/analytics-service.d.ts +2 -2
  788. package/dist/react-sdk/application-runtime/common-services/analytics/domain-controls-analytics.d.ts +21 -21
  789. package/dist/react-sdk/application-runtime/hooks/data/use-published-data.d.ts +1 -1
  790. package/dist/react-sdk/application-runtime/hooks/use-domain-application-props.d.ts +5 -2
  791. package/dist/react-sdk/application-runtime/hooks/use-spec.d.ts +1 -1
  792. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.d.ts +1 -1
  793. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.js +1 -1
  794. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.d.ts +24 -24
  795. package/dist/react-sdk/domain-context/common-hooks/use-domain-context.d.ts +5 -5
  796. package/dist/ui-sdk/common/use-viewport-size.d.ts +4 -1
  797. package/dist/ui-sdk/common/use-viewport-size.js +1 -1
  798. package/dist/ui-sdk/components/mobile-controls/index.d.ts +1 -1
  799. package/dist/ui-sdk/theme/types.d.ts +1 -1
  800. package/dist/webhook/builders/common.d.ts +8 -0
  801. package/dist/webhook/builders/webhook-builder.d.ts +1 -1
  802. package/dist/webhook/builders/webhook-builder.js +1 -1
  803. package/package.json +4 -4
  804. package/dist/application-spec/generate-application/code/templates/env-ci.d.ts +0 -1
  805. package/dist/application-spec/generate-application/code/templates/env-ci.js +0 -25
  806. package/dist/application-spec/generate-application/code/templates/env-example.d.ts +0 -1
  807. package/dist/application-spec/generate-application/code/templates/env-example.js +0 -90
  808. package/dist/application-spec/generate-application/code/templates/prettier-ignore.d.ts +0 -1
  809. package/dist/application-spec/generate-application/code/templates/prettier-ignore.js +0 -6
  810. package/dist/application-spec/generate-application/code/templates/private-assets-readme.d.ts +0 -1
  811. package/dist/application-spec/generate-application/code/templates/private-assets-readme.js +0 -24
  812. package/dist/application-spec/generate-application/code/templates/public-assets-readme.d.ts +0 -1
  813. package/dist/application-spec/generate-application/code/templates/public-assets-readme.js +0 -24
  814. package/dist/application-spec/generate-application/code/templates/readme.d.ts +0 -1
  815. package/dist/application-spec/generate-application/code/templates/readme.js +0 -23
  816. package/dist/application-spec/generate-application/code/templates/skills/agents-md.d.ts +0 -1
  817. package/dist/application-spec/generate-application/code/templates/skills/agents-md.js +0 -2
  818. package/dist/configurator/assistant/index.d.ts +0 -1
  819. package/dist/configurator/assistant/index.js +0 -1
  820. package/dist/configurator/assistant/use-assistant-chat.d.ts +0 -30
  821. package/dist/configurator/assistant/use-assistant-chat.js +0 -1
  822. package/dist/configurator/ui/assistant/AssistantPanelProvider.d.ts +0 -42
  823. package/dist/configurator/ui/assistant/AssistantPanelProvider.js +0 -1
  824. package/dist/domain/actions/action-factory.d.ts +0 -10
  825. package/dist/domain/actions/prepare-action-implementations.js +0 -5
  826. package/dist/domain/application/element-registration.js +0 -1
  827. package/dist/domain/application/handler-registration.js +0 -1
  828. package/dist/domain/application/resolve-imported-transformers.d.ts +0 -13
  829. package/dist/domain/application/resolve-imported-transformers.js +0 -1
  830. package/dist/domain/components/debug-state-component.js +0 -1
  831. package/dist/domain/components/domain-component-optic.d.ts +0 -76
  832. package/dist/domain/components/domain-component-optic.js +0 -16
  833. package/dist/domain/components/drag-state-component.js +0 -1
  834. package/dist/domain/components/export-state-component.js +0 -1
  835. package/dist/domain/components/fullscreen-state-component.js +0 -1
  836. package/dist/domain/components/group-components-by-entity-id-and-name.js +0 -1
  837. package/dist/domain/components/hover-state-component.js +0 -1
  838. package/dist/domain/components/index.d.ts +0 -2
  839. package/dist/domain/components/index.js +0 -1
  840. package/dist/domain/components/navigation-state-component.js +0 -1
  841. package/dist/domain/components/selection-state-component.js +0 -1
  842. package/dist/domain/components/system-component-builder.js +0 -1
  843. package/dist/domain/components/system-virtual-entity.js +0 -1
  844. package/dist/domain/components/tool-state-component.js +0 -1
  845. package/dist/domain/components/view-state-component.js +0 -1
  846. package/dist/domain/components/viewport-state-component.js +0 -1
  847. package/dist/domain/core/expression.d.ts +0 -50
  848. package/dist/domain/core/json-schema.js +0 -1
  849. package/dist/domain/core/migrations.js +0 -1
  850. package/dist/domain/core/reflection.js +0 -1
  851. package/dist/domain/domain-context/recipe-system/recipes.js +0 -1
  852. package/dist/domain/expressions/constant-expressions.js +0 -1
  853. package/dist/domain/expressions/custom-expression.d.ts +0 -13
  854. package/dist/domain/expressions/custom-expression.js +0 -1
  855. package/dist/domain/expressions/index.d.ts +0 -1
  856. package/dist/domain/expressions/index.js +0 -1
  857. package/dist/domain/invariants/custom-invariants.d.ts +0 -22
  858. package/dist/domain/invariants/custom-invariants.js +0 -1
  859. package/dist/domain/invariants/invariants.d.ts +0 -68
  860. package/dist/domain/invariants/invariants.js +0 -1
  861. package/dist/domain/invariants/violation-component.js +0 -1
  862. package/dist/domain/relations/all-of-type-relation.js +0 -1
  863. package/dist/domain/relations/component-factories.js +0 -1
  864. package/dist/domain/relations/composed-of.js +0 -1
  865. package/dist/domain/relations/indirect-relation.js +0 -1
  866. package/dist/domain/relations/reference-component.js +0 -1
  867. package/dist/domain/system-components/angle-indicator.js +0 -1
  868. package/dist/domain/system-components/attribute-switch.js +0 -1
  869. package/dist/domain/system-components/autorotate-camera-component.js +0 -1
  870. package/dist/domain/system-components/basic-sidebar-footer.js +0 -1
  871. package/dist/domain/system-components/camera-based-hidden-entity-object.js +0 -1
  872. package/dist/domain/system-components/camera-based-hidden-entity.js +0 -1
  873. package/dist/domain/system-components/canvas-config.js +0 -1
  874. package/dist/domain/system-components/canvas-custom-environment.js +0 -1
  875. package/dist/domain/system-components/canvas-padding.js +0 -1
  876. package/dist/domain/system-components/canvas-preset-environment.js +0 -1
  877. package/dist/domain/system-components/child-entity-recipe-hierarchy.js +0 -1
  878. package/dist/domain/system-components/client-side-image.js +0 -1
  879. package/dist/domain/system-components/color-value.js +0 -1
  880. package/dist/domain/system-components/common/angle-indicator-schema.js +0 -1
  881. package/dist/domain/system-components/common/dimension-indicator-schema.js +0 -1
  882. package/dist/domain/system-components/custom-price-footer.js +0 -1
  883. package/dist/domain/system-components/dimension-indicator.js +0 -1
  884. package/dist/domain/system-components/editable-angle-indicator.js +0 -1
  885. package/dist/domain/system-components/editable-distance-dimension-indicator.js +0 -1
  886. package/dist/domain/system-components/editable-offset-indicator.js +0 -1
  887. package/dist/domain/system-components/editable-size-indicator.js +0 -1
  888. package/dist/domain/system-components/entity-header.js +0 -1
  889. package/dist/domain/system-components/exit-tool-mode-fab.js +0 -1
  890. package/dist/domain/system-components/finalize-action.js +0 -1
  891. package/dist/domain/system-components/finalize-component.js +0 -1
  892. package/dist/domain/system-components/fit-selection-orthographic-camera-component.js +0 -1
  893. package/dist/domain/system-components/fit-selection-perspective-camera-component.js +0 -1
  894. package/dist/domain/system-components/fixed-header.js +0 -1
  895. package/dist/domain/system-components/floating-header.js +0 -1
  896. package/dist/domain/system-components/hidden-header.js +0 -1
  897. package/dist/domain/system-components/hidden-sidebar-footer.js +0 -1
  898. package/dist/domain/system-components/horizontal-tabs.js +0 -1
  899. package/dist/domain/system-components/list-selector-dimension-indicator.js +0 -1
  900. package/dist/domain/system-components/multilingual-text-value.js +0 -1
  901. package/dist/domain/system-components/navigation-steps.js +0 -1
  902. package/dist/domain/system-components/offset-anchors.js +0 -1
  903. package/dist/domain/system-components/offset-indicator.js +0 -1
  904. package/dist/domain/system-components/offset.js +0 -1
  905. package/dist/domain/system-components/other-action.js +0 -1
  906. package/dist/domain/system-components/property-page.js +0 -1
  907. package/dist/domain/system-components/read-sidebar-footer.js +0 -1
  908. package/dist/domain/system-components/replace-entity-recipe-hierarchy.js +0 -1
  909. package/dist/domain/system-components/rotatable.js +0 -1
  910. package/dist/domain/system-components/rotation-handle.js +0 -1
  911. package/dist/domain/system-components/save-template-thumbnail.js +0 -1
  912. package/dist/domain/system-components/scene-entity-add-fab.js +0 -1
  913. package/dist/domain/system-components/scene-entity-animation.js +0 -1
  914. package/dist/domain/system-components/scene-entity-control.js +0 -1
  915. package/dist/domain/system-components/scene-entity-delete-fab.js +0 -1
  916. package/dist/domain/system-components/scene-entity-floor-object.js +0 -1
  917. package/dist/domain/system-components/scene-entity-html-hotspot.js +0 -1
  918. package/dist/domain/system-components/scene-entity-navigation-hotspot.js +0 -1
  919. package/dist/domain/system-components/scene-entity-object-html-hotspot.js +0 -1
  920. package/dist/domain/system-components/scene-entity-select-hotspot.js +0 -1
  921. package/dist/domain/system-components/scene-entity-wall-object.js +0 -1
  922. package/dist/domain/system-components/selectable-component.js +0 -1
  923. package/dist/domain/system-components/sidebar-tabs.js +0 -1
  924. package/dist/domain/system-components/simple-summary.js +0 -1
  925. package/dist/domain/system-components/size.js +0 -1
  926. package/dist/domain/system-components/sketching-draw.js +0 -1
  927. package/dist/domain/system-components/sketching-edit.js +0 -1
  928. package/dist/domain/system-components/summary-component.js +0 -1
  929. package/dist/domain/system-components/text-value.js +0 -1
  930. package/dist/domain/system-components/tool-controls.js +0 -1
  931. package/dist/domain/system-components/tool-menu-fab.js +0 -1
  932. package/dist/domain/system-components/universal-sidebar-footer.js +0 -1
  933. package/dist/domain/system-components/view-controls.js +0 -1
  934. package/dist/phoenix/application-spec/generate-assistant-prompt.d.ts +0 -12
  935. package/dist/phoenix/application-spec/generate-assistant-prompt.js +0 -1
  936. /package/dist/domain/{components/component-reader-types.js → application/assistant/assistant-manifest.js} +0 -0
  937. /package/dist/domain/{core/action.js → application/assistant/assistant-resolved-manifest.js} +0 -0
  938. /package/dist/domain/{actions → core/action}/action-factory.js +0 -0
  939. /package/dist/domain/core/{enhanced-json-schema.js → action/action.js} +0 -0
  940. /package/dist/domain/core/{expression.js → component/component-reader-types.js} +0 -0
  941. /package/dist/domain/{components → core/component}/legacy-filter.js +0 -0
  942. /package/dist/domain/{components → core/component}/system-component-filter.js +0 -0
  943. /package/dist/domain/{components → core/component}/system-virtual-entity.d.ts +0 -0
  944. /package/dist/domain/{components → core/component}/updates.js +0 -0
  945. /package/dist/domain/core/{schema-validator.js → data-schema/data-cell-value.js} +0 -0
  946. /package/dist/domain/{relations/reference-field.js → core/data-schema/data-schema-array-field.js} +0 -0
  947. /package/dist/domain/{relations/relation-implementation.js → core/data-schema/data-schema-field-object.js} +0 -0
  948. /package/dist/domain/{invariants → core/invariant}/builtin-invariant.js +0 -0
  949. /package/dist/domain/{invariants → core/invariant}/violation-component.d.ts +0 -0
  950. /package/dist/domain/{invariants → core/invariant}/violation.js +0 -0
  951. /package/dist/domain/core/{alias.d.ts → model/alias.d.ts} +0 -0
  952. /package/dist/domain/core/{alias.js → model/alias.js} +0 -0
  953. /package/dist/domain/core/{common-definitions.d.ts → model/common-definitions.d.ts} +0 -0
  954. /package/dist/domain/core/{common-definitions.js → model/common-definitions.js} +0 -0
  955. /package/dist/domain/core/{component.js → model/component.js} +0 -0
  956. /package/dist/domain/core/{model.d.ts → model/model.d.ts} +0 -0
  957. /package/dist/domain/core/{model.js → model/model.js} +0 -0
  958. /package/dist/domain/core/{preset.d.ts → model/preset.d.ts} +0 -0
  959. /package/dist/domain/core/{preset.js → model/preset.js} +0 -0
  960. /package/dist/domain/{relations → core/relation}/direct-relation.js +0 -0
  961. /package/dist/domain/{relations → core/relation}/relation-factory.js +0 -0
  962. /package/dist/domain/core/{schema-validator-ajv.d.ts → schema/create-ajv-schema-validator.d.ts} +0 -0
  963. /package/dist/domain/core/{schema-validator-ajv.js → schema/create-ajv-schema-validator.js} +0 -0
  964. /package/dist/domain/core/{schema-validator-csp.d.ts → schema/create-csp-schema-validator.d.ts} +0 -0
  965. /package/dist/domain/core/{schema-validator-csp.js → schema/create-csp-schema-validator.js} +0 -0
  966. /package/dist/domain/core/{enhanced-json-schema.d.ts → schema/enhanced-json-schema.d.ts} +0 -0
  967. /package/dist/domain/core/{json-schema.d.ts → schema/extended-schema-validator.d.ts} +0 -0
  968. /package/dist/domain/core/{schema-validator.d.ts → schema/schema-validator.d.ts} +0 -0
  969. /package/dist/domain/core/{state.js → state/state.js} +0 -0
  970. /package/dist/domain/{expressions → domain-runtime/spec}/memoize-expression.js +0 -0
  971. /package/dist/domain/{expressions → domain-runtime/spec}/prepare-domain-expressions.js +0 -0
  972. /package/dist/domain/{system-components → extensions}/attribute-switch.d.ts +0 -0
  973. /package/dist/domain/{system-components → extensions}/camera-based-hidden-entity-object.d.ts +0 -0
  974. /package/dist/domain/{system-components → extensions}/camera-based-hidden-entity.d.ts +0 -0
  975. /package/dist/domain/{system-components → extensions}/canvas-custom-environment.d.ts +0 -0
  976. /package/dist/domain/{system-components → extensions}/client-side-image.d.ts +0 -0
  977. /package/dist/domain/{system-components → extensions}/color-value.d.ts +0 -0
  978. /package/dist/domain/{system-components → extensions}/common/dimension-indicators.d.ts +0 -0
  979. /package/dist/domain/{system-components → extensions}/common/dimension-indicators.js +0 -0
  980. /package/dist/domain/{system-components → extensions}/common/editable-indicator-button-variant.d.ts +0 -0
  981. /package/dist/domain/{system-components → extensions}/common/editable-indicator-button-variant.js +0 -0
  982. /package/dist/domain/{system-components → extensions}/custom-price-footer.d.ts +0 -0
  983. /package/dist/domain/{system-components → extensions}/finalize-component.d.ts +0 -0
  984. /package/dist/domain/{system-components → extensions}/fit-selection-orthographic-camera-component.d.ts +0 -0
  985. /package/dist/domain/{system-components → extensions}/fit-selection-perspective-camera-component.d.ts +0 -0
  986. /package/dist/domain/{system-components → extensions}/multilingual-text-value.d.ts +0 -0
  987. /package/dist/domain/{system-components → extensions}/navigation-steps.d.ts +0 -0
  988. /package/dist/domain/{system-components → extensions}/rotatable.d.ts +0 -0
  989. /package/dist/domain/{system-components → extensions}/rotation-handle.d.ts +0 -0
  990. /package/dist/domain/{system-components → extensions}/save-template-thumbnail.d.ts +0 -0
  991. /package/dist/domain/{system-components → extensions}/scene-entity-animation.d.ts +0 -0
  992. /package/dist/domain/{system-components → extensions}/scene-entity-control.d.ts +0 -0
  993. /package/dist/domain/{system-components → extensions}/scene-entity-floor-object.d.ts +0 -0
  994. /package/dist/domain/{system-components → extensions}/scene-entity-wall-object.d.ts +0 -0
  995. /package/dist/domain/{system-components → extensions}/selectable-component.d.ts +0 -0
  996. /package/dist/domain/{system-components → extensions}/simple-summary.d.ts +0 -0
  997. /package/dist/domain/{system-components → extensions}/summary-component.d.ts +0 -0
  998. /package/dist/domain/{system-components → extensions}/text-value.d.ts +0 -0
  999. /package/dist/domain/{system-components → extensions}/tool-controls.d.ts +0 -0
  1000. /package/dist/domain/{system-components → extensions}/view-controls.d.ts +0 -0
@@ -15,7 +15,7 @@ import type { RegistrableTransformer } from '../domain-context/index.js';
15
15
  *
16
16
  * Contributing no extension systems is the same shape webhook and finalize hosts run in.
17
17
  */
18
- export declare const createMockDomainRuntime: <ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, $MAP extends Record<ENTITIES['type'], $DomainEntity<ENTITIES>>, NAVIGATION_STATES extends string, VIEW_STATES extends string, TOOL_STATES extends string, EXPORT_STATES extends string, CHAT_CONTEXT extends Record<string, unknown>, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, ADMIN_ENTITIES extends DomainEntity<string>, ADMIN_ALLOWED_ROOT_ENTITIES extends ADMIN_ENTITIES, ADMIN_$MAP extends Record<ADMIN_ENTITIES['type'], $DomainEntity<ADMIN_ENTITIES>>, ADMIN_NAVIGATION_STATES extends string, ADMIN_VIEW_STATES extends string>(_cfg: ApplicationConfig<ENTITIES, ALLOWED_ROOT_ENTITIES, $MAP, NAVIGATION_STATES, VIEW_STATES, TOOL_STATES, EXPORT_STATES, CHAT_CONTEXT, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ADMIN_ENTITIES, ADMIN_ALLOWED_ROOT_ENTITIES, ADMIN_$MAP, ADMIN_NAVIGATION_STATES, ADMIN_VIEW_STATES>, mocks: {
18
+ export declare const createMockDomainRuntime: <ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, $MAP extends Record<ENTITIES['type'], $DomainEntity<ENTITIES>>, NAVIGATION_STATES extends string, VIEW_STATES extends string, TOOL_STATES extends string, EXPORT_STATES extends string, CHAT_CONTEXT extends Record<string, unknown>, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, ADMIN_ENTITIES extends DomainEntity<string>, ADMIN_ALLOWED_ROOT_ENTITIES extends ADMIN_ENTITIES, ADMIN_$MAP extends Record<ADMIN_ENTITIES['type'], $DomainEntity<ADMIN_ENTITIES>>, ADMIN_NAVIGATION_STATES extends string, ADMIN_VIEW_STATES extends string>(config: ApplicationConfig<ENTITIES, ALLOWED_ROOT_ENTITIES, $MAP, NAVIGATION_STATES, VIEW_STATES, TOOL_STATES, EXPORT_STATES, CHAT_CONTEXT, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ADMIN_ENTITIES, ADMIN_ALLOWED_ROOT_ENTITIES, ADMIN_$MAP, ADMIN_NAVIGATION_STATES, ADMIN_VIEW_STATES>, mocks: {
19
19
  frontendData: FRONTEND_DATA;
20
20
  publishedData: PUBLISHED_DATA;
21
21
  sessionData: SESSION_DATA;
@@ -57,7 +57,7 @@ export declare const createMockDomainRuntime: <ENTITIES extends DomainEntity<str
57
57
  selectAdminPreset: import("@salsita-ai/common/utils").Selector<import("../index.js").SpecSelectorState, import("../index.js").AnyProductPreset>;
58
58
  selectAdminModelVersion: import("@salsita-ai/common/utils").Selector<import("../index.js").SpecSelectorState, number>;
59
59
  selectThemeOptions: import("@salsita-ai/common/utils").Selector<import("../index.js").SpecSelectorState, import("@mui/material").ThemeOptions>;
60
- selectAssistant: import("@salsita-ai/common/utils").Selector<import("../index.js").SpecSelectorState, import("../index.js").AssistantManifest | null>;
60
+ selectAssistant: import("@salsita-ai/common/utils").Selector<import("../index.js").SpecSelectorState, Required<import("../index.js").AssistantManifest> | null>;
61
61
  selectConfiguratorFactory: import("@salsita-ai/common/utils").Selector<import("../index.js").SpecSelectorState, import("../index.js").AnyDomainFactory>;
62
62
  selectAdminFactory: import("@salsita-ai/common/utils").Selector<import("../index.js").SpecSelectorState, import("../index.js").AnyDomainFactory>;
63
63
  selectConfiguratorComponentOptics: import("@salsita-ai/common/utils").Selector<import("../index.js").SpecSelectorState, readonly import("../index.js").AnyDomainComponentOptic[]>;
@@ -100,7 +100,7 @@ export declare const createMockDomainRuntime: <ENTITIES extends DomainEntity<str
100
100
  getAdminPreset: () => import("../index.js").AnyProductPreset;
101
101
  getAdminModelVersion: () => number;
102
102
  getThemeOptions: () => import("@mui/material").ThemeOptions;
103
- getAssistant: () => import("../index.js").AssistantManifest | null;
103
+ getAssistant: () => Required<import("../index.js").AssistantManifest> | null;
104
104
  getConfiguratorFactory: () => import("../index.js").AnyDomainFactory;
105
105
  getAdminFactory: () => import("../index.js").AnyDomainFactory;
106
106
  getConfiguratorComponentOptics: () => readonly import("../index.js").AnyDomainComponentOptic[];
@@ -371,7 +371,7 @@ export declare const createMockDomainRuntime: <ENTITIES extends DomainEntity<str
371
371
  selectViewStates: import("@salsita-ai/common/utils").Selector<import("../index.js").DomainContextSelectorState, readonly string[]>;
372
372
  selectToolStates: import("@salsita-ai/common/utils").Selector<import("../index.js").DomainContextSelectorState, readonly string[]>;
373
373
  selectExportStates: import("@salsita-ai/common/utils").Selector<import("../index.js").DomainContextSelectorState, readonly string[]>;
374
- selectCreateTransformers: import("@salsita-ai/common/utils").Selector<import("../index.js").DomainContextSelectorState, undefined> | import("@salsita-ai/common/utils").Selector<import("../index.js").DomainContextSelectorState, import("../domain-context/store-system/store-system.js").AnyCreateTransformersFactory>;
374
+ selectCreateTransformers: import("@salsita-ai/common/utils").Selector<import("../index.js").DomainContextSelectorState, undefined> | import("@salsita-ai/common/utils").Selector<import("../index.js").DomainContextSelectorState, import("../index.js").AnyCreateTransformersFactory>;
375
375
  selectLatestLoadedData: import("@salsita-ai/common/utils").Selector<import("../index.js").DomainContextSelectorState, import("../index.js").ConfiguratorLoadedData | null>;
376
376
  selectLoadedData: import("@salsita-ai/common/utils").Selector<import("../index.js").DomainContextSelectorState, import("../index.js").ConfiguratorLoadedData>;
377
377
  selectInitialDomainState: import("@salsita-ai/common/utils").Selector<import("../index.js").DomainContextSelectorState, import("../index.js").DomainState<any>>;
@@ -413,7 +413,7 @@ export declare const createMockDomainRuntime: <ENTITIES extends DomainEntity<str
413
413
  getViewStates: () => readonly string[];
414
414
  getToolStates: () => readonly string[];
415
415
  getExportStates: () => readonly string[];
416
- getCreateTransformers: () => import("../domain-context/store-system/store-system.js").AnyCreateTransformersFactory | undefined;
416
+ getCreateTransformers: () => import("../index.js").AnyCreateTransformersFactory | undefined;
417
417
  getLoadedData: () => import("../index.js").ConfiguratorLoadedData;
418
418
  getInitialDomainState: () => import("../index.js").DomainState<any>;
419
419
  getFrontendData: () => Record<string, unknown>;
@@ -432,9 +432,9 @@ export declare const createMockDomainRuntime: <ENTITIES extends DomainEntity<str
432
432
  getSnappingProjections: () => import("../index.js").AnySnappingProjections;
433
433
  getConstraintProjections: () => import("../index.js").AnyConstraintProjections;
434
434
  getProjectedEntitiesProjections: () => import("../index.js").AnyProjectedEntitiesProjections;
435
- getStoreSystem: () => import("../domain-context/store-system/store-system.js").AnyStoreSystem;
436
- getNavigationSystem: () => import("../domain-context/navigation-system/navigation-system.js").AnyNavigationSystem;
437
- getUndoSystem: () => import("../domain-context/undo-system.js").AnyUndoSystem;
435
+ getStoreSystem: () => import("../index.js").AnyStoreSystem;
436
+ getNavigationSystem: () => import("../index.js").AnyNavigationSystem;
437
+ getUndoSystem: () => import("../index.js").AnyUndoSystem;
438
438
  getRecipeCookerSystem: () => import("../index.js").AnyRecipeCookerSystem;
439
439
  getActionSystem: () => import("../index.js").AnyActionSystem;
440
440
  getBlenderProjections: () => import("../index.js").AnyBlenderProjections;
@@ -480,7 +480,7 @@ export declare const createMockDomainRuntime: <ENTITIES extends DomainEntity<str
480
480
  selectViewStates: import("@salsita-ai/common/utils").Selector<import("../index.js").DomainContextSelectorState, readonly string[]>;
481
481
  selectToolStates: import("@salsita-ai/common/utils").Selector<import("../index.js").DomainContextSelectorState, readonly string[]>;
482
482
  selectExportStates: import("@salsita-ai/common/utils").Selector<import("../index.js").DomainContextSelectorState, readonly string[]>;
483
- selectCreateTransformers: import("@salsita-ai/common/utils").Selector<import("../index.js").DomainContextSelectorState, undefined> | import("@salsita-ai/common/utils").Selector<import("../index.js").DomainContextSelectorState, import("../domain-context/store-system/store-system.js").AnyCreateTransformersFactory>;
483
+ selectCreateTransformers: import("@salsita-ai/common/utils").Selector<import("../index.js").DomainContextSelectorState, undefined> | import("@salsita-ai/common/utils").Selector<import("../index.js").DomainContextSelectorState, import("../index.js").AnyCreateTransformersFactory>;
484
484
  selectLatestLoadedData: import("@salsita-ai/common/utils").Selector<import("../index.js").DomainContextSelectorState, import("../index.js").ConfiguratorLoadedData | null>;
485
485
  selectLoadedData: import("@salsita-ai/common/utils").Selector<import("../index.js").DomainContextSelectorState, import("../index.js").ConfiguratorLoadedData>;
486
486
  selectInitialDomainState: import("@salsita-ai/common/utils").Selector<import("../index.js").DomainContextSelectorState, import("../index.js").DomainState<any>>;
@@ -522,7 +522,7 @@ export declare const createMockDomainRuntime: <ENTITIES extends DomainEntity<str
522
522
  getViewStates: () => readonly string[];
523
523
  getToolStates: () => readonly string[];
524
524
  getExportStates: () => readonly string[];
525
- getCreateTransformers: () => import("../domain-context/store-system/store-system.js").AnyCreateTransformersFactory | undefined;
525
+ getCreateTransformers: () => import("../index.js").AnyCreateTransformersFactory | undefined;
526
526
  getLoadedData: () => import("../index.js").ConfiguratorLoadedData;
527
527
  getInitialDomainState: () => import("../index.js").DomainState<any>;
528
528
  getFrontendData: () => Record<string, unknown>;
@@ -541,9 +541,9 @@ export declare const createMockDomainRuntime: <ENTITIES extends DomainEntity<str
541
541
  getSnappingProjections: () => import("../index.js").AnySnappingProjections;
542
542
  getConstraintProjections: () => import("../index.js").AnyConstraintProjections;
543
543
  getProjectedEntitiesProjections: () => import("../index.js").AnyProjectedEntitiesProjections;
544
- getStoreSystem: () => import("../domain-context/store-system/store-system.js").AnyStoreSystem;
545
- getNavigationSystem: () => import("../domain-context/navigation-system/navigation-system.js").AnyNavigationSystem;
546
- getUndoSystem: () => import("../domain-context/undo-system.js").AnyUndoSystem;
544
+ getStoreSystem: () => import("../index.js").AnyStoreSystem;
545
+ getNavigationSystem: () => import("../index.js").AnyNavigationSystem;
546
+ getUndoSystem: () => import("../index.js").AnyUndoSystem;
547
547
  getRecipeCookerSystem: () => import("../index.js").AnyRecipeCookerSystem;
548
548
  getActionSystem: () => import("../index.js").AnyActionSystem;
549
549
  getBlenderProjections: () => import("../index.js").AnyBlenderProjections;
@@ -1 +1 @@
1
- import{createDomainRuntime as o}from"../domain-runtime/index.js";import{createMockDomainRuntimeServices as e}from"./create-mock-domain-runtime-services.js";import{createMockSessionContext as t}from"./create-mock-session-context.js";export const createMockDomainRuntime=(i,a)=>{let{sessionData:n,mode:r,role:s}=a,c={...i,createTransformers:o=>a.transformers.map(e=>e.transformer.register(o,e.priority??1/0))},m=o({config:c,services:e()});return m.actions.sessionContext.setSessionContext(t(s,n)),m.actions.access.setConfiguratorAccessInfo({raw:"mock-access-token",viewMode:"read"===r,revisionId:void 0,configurationId:"mock"}),m.actions.domainData.setDomainData({publishedData:a.publishedData,frontendData:a.frontendData,backendData:a.backendData}),m.actions.loadedData.completeConfiguratorLoad({initialRevisionId:"mock-revision",initialEntities:a.entities,modelVersion:c.domain.domainFactory.modelVersion,rootEntityType:a.rootEntityType,schemaIdentity:c.domain.domainFactory}),m};
1
+ import{createDomainRuntime as o}from"../domain-runtime/index.js";import{createMockDomainRuntimeServices as t}from"./create-mock-domain-runtime-services.js";import{createMockSessionContext as e}from"./create-mock-session-context.js";export const createMockDomainRuntime=(a,i)=>{let{sessionData:n,mode:r,role:s}=i,c=o({config:a,services:t()}),m=c.getState().spec;return c.actions.spec.updateSpec({...m,configurator:{...m.configurator,createTransformers:o=>i.transformers.map(t=>t.transformer.register(o,t.priority??1/0))}}),c.actions.sessionContext.setSessionContext(e(s,n)),c.actions.access.setConfiguratorAccessInfo({raw:"mock-access-token",viewMode:"read"===r,revisionId:void 0,configurationId:"mock"}),c.actions.domainData.setDomainData({publishedData:i.publishedData,frontendData:i.frontendData,backendData:i.backendData}),c.actions.loadedData.completeConfiguratorLoad({initialRevisionId:"mock-revision",initialEntities:i.entities,modelVersion:a.domain.domainFactory.modelVersion,rootEntityType:i.rootEntityType,schemaIdentity:a.domain.domainFactory}),c};
@@ -1,7 +1,6 @@
1
1
  import type { BlenderLight } from '@salsita-ai/contracts/webhook';
2
- import type { DomainEntity, DomainState } from '../../core/index.js';
3
- import type { DomainContextSelectors } from '../../domain-runtime/domain-context/index.js';
4
- import type { DomainServicesSelectors } from '../../domain-runtime/domain-services/index.js';
2
+ import { type DomainEntity, type DomainState } from '../../core/index.js';
3
+ import type { DomainContextSelectors, DomainServicesSelectors } from '../../domain-runtime/index.js';
5
4
  import type { BlenderCamera, BlenderImageConfig, BlenderImageSize, BlenderSceneConfig, BlenderSceneObject, SceneEntityNode } from './types.js';
6
5
  /**
7
6
  * Constructor context of a `BlenderProjections`. It reaches its domain collaborators through the
@@ -1 +1 @@
1
- import{Matrix4 as e}from"three";import{groupComponentsByEntityIdAndName as t}from"../../components/group-components-by-entity-id-and-name.js";import{resolveMorphTargetInfluences as n}from"../../scene/index.js";import{customSceneEntityComponent as r,hiddenEntityComponent as i,materialOverridePropertyTransitionComponent as o,materialOverrideTransformerComponent as s,sceneEntityAmbientLightComponent as a,sceneEntityBoxObjectComponent as c,sceneEntityDirectionalLightComponent as l,sceneEntityLocalMaterialOverrideComponent as m,sceneEntityMaterialOverrideComponent as d,sceneEntityObjectClipComponent as g,sceneEntityObjectComponent as p,sceneEntityObjectDecalComponent as h,sceneEntityObjectGroupComponent as f,sceneEntityObjectLocalMaterialOverrideComponent as y,sceneEntityObjectMaterialOverrideComponent as j,sceneEntityObjectPropertiesComponent as x,sceneEntityObjectRemoteMaterialOverrideComponent as u,sceneEntityObjectTextDecalComponent as S,sceneEntityObjectTransformerComponent as v,sceneEntityObjectTransmissiveMaterialOverrideComponent as b,sceneEntityPointLightComponent as _,sceneEntityPropertiesComponent as E,sceneEntityRectAreaLightComponent as O,sceneEntityRemoteMaterialOverrideComponent as N,sceneEntityRemoteObjectComponent as B,sceneEntitySpotLightComponent as I,sceneEntityTransmissiveMaterialOverrideComponent as w}from"../../system-components/index.js";import{createSceneObjectGroupTransformResolver as $}from"../common/scene-object-transform.js";import{reduceMaterialOverrides as L}from"../material-overrides.js";import{projectBlenderCamera as C}from"./camera.js";import{getBlenderObjectMaterialOverrides as T}from"./entity-overrides.js";import{projectBlenderLight as D}from"./lights.js";import{projectBlenderMaterialOverrides as P}from"./materials.js";import{getBlenderObjectTransform as M}from"./transforms.js";let U=e=>"fileUrl"in e,R=(e,t)=>`${e}_${t}`;export class BlenderProjections{_context;constructor(e){this._context=e}_readEntityComponents=(e,n)=>t(this._context.selectors.getComponentReader().readManyComponents({entityIds:[e],componentTypes:[r,i,E,B,p,c,N,m,d,w,x,f,j,y,u,b,S,h,v,g,s,o,_,I,l,a,O]},n)).get(e);_traverse=(e,t,r)=>{let i=this._readEntityComponents(e.id,r),o=[...i?.sceneEntityRemoteObject??[],...i?.sceneEntityObject??[],...i?.sceneEntityBoxObject??[]],s={worldMatrix:this._context.selectors.getPositionProjections().getEntityWorldMatrix(e.id,r,null)},a=(i?.hiddenEntity?.length??0)>0,c={id:e.id,parent:t,customEntity:i?.customSceneEntity?.[0]?.state.node,isHidden:a,overrideComponents:i,properties:s,sceneObjects:o.map(r=>{let o=i?.sceneEntityObjectProperties?.find(e=>e.componentInstance.instanceName===r.componentInstance.instanceName)?.state,s=i?.sceneEntityObjectTextDecal?.filter(e=>e.componentInstance.instanceName===r.componentInstance.instanceName),a=i?.sceneEntityObjectDecal?.filter(e=>e.componentInstance.instanceName===r.componentInstance.instanceName),c=i?.sceneEntityObjectTransformer?.filter(e=>e.state.target===r.componentInstance.instanceName),l=n(o?.morphTargetInfluences,t=>this._context.domainServicesSelectors.getLogger().warn(`Morph target "${t}" on object ${r.componentInstance.instanceName} of entity ${e.id} has scaleZero equal to scaleOne, so its influence is undefined and is exported to Blender as 0. Give scaleZero and scaleOne different values.`)),m=i?.sceneEntityObjectClip?.filter(e=>e.state.target===r.componentInstance.instanceName),{overrides:d,transformations:g,transitions:p}=T(i??{},t,r.componentInstance.instanceName);return{instanceName:r.componentInstance.instanceName,object:r.state,properties:o,morphTargetInfluences:l,textDecals:s,decals:a,materialOverrides:d,materialOverrideTransformations:g,materialOverridePropertyTransitions:p,objectTransformations:c,clips:m}}),nodes:[]};for(let t of e.nodes){let e=this._traverse(t.node,c,r);c.nodes.push(e)}return c};getSceneEntityTree=e=>{let{root:t}=this._context.selectors.getCompositionProjections().getTree(e);return this._traverse(t,null,e)};_getBlenderObjects=(t,n)=>{let r=this._context.selectors.getDimensionSystem().getDataDistanceUnit(t),i=[],o=t=>{if(t.isHidden)return;if(null!=t.customEntity)return void this._context.domainServicesSelectors.getLogger().warn(`Custom entity ${t.id} is not supported in Blender.`);let n=t.overrideComponents?.materialOverrideTransformer??[];n.length>0&&this._context.domainServicesSelectors.getLogger().warn(`Entity ${t.id} has ${n.length} material override transformer(s), they are not applied in Blender. Set the final material values on the overrides active in the export state.`);let s=t.properties,a=$(t.overrideComponents?.sceneEntityObjectGroup?.map(e=>({instanceName:e.componentInstance.instanceName,state:e.state}))??[],r),c=new Map(t.sceneObjects.map(e=>[e,a(e.properties?.targetParentGroup,e.instanceName)]));for(let n of t.sceneObjects){let o=c.get(n);if(o?.visible===!1||n.properties?.visible===!1||n.properties?.rendered===!1)continue;if(!U(n.object)){this._context.domainServicesSelectors.getLogger().warn(`Object ${n.instanceName} is not a remote object, it will not be rendered in Blender.`);continue}n.textDecals&&n.textDecals.length>0&&this._context.domainServicesSelectors.getLogger().warn(`Object ${n.instanceName} of entity ${t.id} has text decals, they are not rendered in Blender.`),n.decals&&n.decals.length>0&&this._context.domainServicesSelectors.getLogger().warn(`Object ${n.instanceName} of entity ${t.id} has decals, they are not rendered in Blender.`),n.objectTransformations&&n.objectTransformations.length>0&&this._context.domainServicesSelectors.getLogger().warn(`Object ${n.instanceName} of entity ${t.id} has object transformers, they are not applied in Blender. Express the transform through sceneEntityObjectProperties or a sceneEntityObjectGroup active in the export state.`),n.clips&&n.clips.length>0&&this._context.domainServicesSelectors.getLogger().warn(`Object ${n.instanceName} of entity ${t.id} has animation clips, they are not played in Blender.`);let a=n.object,{position:l,scale:m,rotation:d}=M(o?new e().multiplyMatrices(s.worldMatrix,o.matrix):s.worldMatrix,n.properties,a.dimensionUnit??r,r),g=L(n.materialOverrides??[]),p=P({logger:this._context.domainServicesSelectors.getLogger(),materialOverrides:g,objectInstanceName:n.instanceName,transitions:n.materialOverridePropertyTransitions??[]});i.push({id:R(t.id,n.instanceName),objectName:a.objectName,position:l,scale:m,rotation:d,morphTargetInfluences:n.morphTargetInfluences,materialOverrides:p})}for(let e of t.nodes)o(e)};return o(n),i};getBlenderObjects=e=>this._getBlenderObjects(e,this.getSceneEntityTree(e));_prepareExportState=(e,t,n)=>{let r=this._context.selectors.getNavigationSystem().getExportUpdate(t,n),i=this._context.selectors.getStoreSystem().prepareStateEmission([r],e,"staged");if(!i.validity.valid)throw this._context.domainServicesSelectors.getLogger().error(`Setting an export state to ${t} for entity ${n} resulted in an invalid state! Check if there isn't a transformer corrupting the state as a reaction to setting the export state.`,i),Error("Exported state is invalid!");return i.state};_getBlenderLights=(e,t)=>{let n=this._context.selectors.getDimensionSystem().getDataDistanceUnit(e),r=[],i=e=>{if(e.isHidden||null!=e.customEntity)return;let t=e.overrideComponents,o=t?.sceneEntityAmbientLight??[];for(let i of(o.length>0&&this._context.domainServicesSelectors.getLogger().warn(`Entity "${e.id}" has ${o.length} ambient light component(s) which are not exported to Blender because Blender has no equivalent ambient light type. Use HDRI lighting or additional point/area lights instead.`),[...t?.sceneEntityPointLight??[],...t?.sceneEntitySpotLight??[],...t?.sceneEntityDirectionalLight??[],...t?.sceneEntityRectAreaLight??[]])){let t=D({entityId:e.id,entityWorldMatrix:e.properties.worldMatrix,snapshot:i,distanceUnit:n});null!=t?r.push(t):this._context.domainServicesSelectors.getLogger().warn(`Unknown light component type for ${i.componentInstance.instanceName}`)}for(let t of e.nodes)i(t)};return i(t),r};getBlenderLights=e=>this._getBlenderLights(e,this.getSceneEntityTree(e));getBlenderCamera=(e,t)=>C(e,t,{componentReader:this._context.selectors.getComponentReader(),dimensionSystem:this._context.selectors.getDimensionSystem(),positionProjections:this._context.selectors.getPositionProjections()});_getBlenderSceneConfigFromState=e=>{let t=this.getSceneEntityTree(e),n=this._getBlenderObjects(e,t),r=this._getBlenderLights(e,t);return{renderedEntities:n.map(e=>({id:e.id,type:"default",objectName:e.objectName,position:e.position,scale:e.scale,rotation:e.rotation,materialOverrides:e.materialOverrides,morphTargetInfluences:e.morphTargetInfluences})),lights:r.length>0?r:void 0}};getBlenderSceneConfig=(e,t,n)=>{let r=this._prepareExportState(e,t,n);return this._getBlenderSceneConfigFromState(r)};getBlenderImageConfig=(e,t,n,r)=>{let i=this._prepareExportState(e,t,n);return{width:r.width,height:r.height,...this._getBlenderSceneConfigFromState(i),camera:this.getBlenderCamera(i,r)}}}
1
+ import{Matrix4 as e}from"three";import{groupComponentsByEntityIdAndName as t}from"../../core/index.js";import{resolveMorphTargetInfluences as n}from"../../scene/index.js";import{customSceneEntityComponent as r,hiddenEntityComponent as i,materialOverridePropertyTransitionComponent as o,materialOverrideTransformerComponent as s,sceneEntityAmbientLightComponent as a,sceneEntityBoxObjectComponent as c,sceneEntityDirectionalLightComponent as l,sceneEntityLocalMaterialOverrideComponent as m,sceneEntityMaterialOverrideComponent as d,sceneEntityObjectClipComponent as g,sceneEntityObjectComponent as p,sceneEntityObjectDecalComponent as h,sceneEntityObjectGroupComponent as f,sceneEntityObjectLocalMaterialOverrideComponent as y,sceneEntityObjectMaterialOverrideComponent as j,sceneEntityObjectPropertiesComponent as x,sceneEntityObjectRemoteMaterialOverrideComponent as S,sceneEntityObjectTextDecalComponent as u,sceneEntityObjectTransformerComponent as v,sceneEntityObjectTransmissiveMaterialOverrideComponent as b,sceneEntityPointLightComponent as _,sceneEntityPropertiesComponent as E,sceneEntityRectAreaLightComponent as O,sceneEntityRemoteMaterialOverrideComponent as N,sceneEntityRemoteObjectComponent as B,sceneEntitySpotLightComponent as I,sceneEntityTransmissiveMaterialOverrideComponent as w}from"../../system-components/index.js";import{createSceneObjectGroupTransformResolver as $}from"../common/scene-object-transform.js";import{reduceMaterialOverrides as L}from"../material-overrides.js";import{projectBlenderCamera as C}from"./camera.js";import{getBlenderObjectMaterialOverrides as T}from"./entity-overrides.js";import{projectBlenderLight as D}from"./lights.js";import{projectBlenderMaterialOverrides as P}from"./materials.js";import{getBlenderObjectTransform as M}from"./transforms.js";let U=e=>"fileUrl"in e,R=(e,t)=>`${e}_${t}`;export class BlenderProjections{_context;constructor(e){this._context=e}_readEntityComponents=(e,n)=>t(this._context.selectors.getComponentReader().readManyComponents({entityIds:[e],componentTypes:[r,i,E,B,p,c,N,m,d,w,x,f,j,y,S,b,u,h,v,g,s,o,_,I,l,a,O]},n)).get(e);_traverse=(e,t,r)=>{let i=this._readEntityComponents(e.id,r),o=[...i?.sceneEntityRemoteObject??[],...i?.sceneEntityObject??[],...i?.sceneEntityBoxObject??[]],s={worldMatrix:this._context.selectors.getPositionProjections().getEntityWorldMatrix(e.id,r,null)},a=(i?.hiddenEntity?.length??0)>0,c={id:e.id,parent:t,customEntity:i?.customSceneEntity?.[0]?.state.node,isHidden:a,overrideComponents:i,properties:s,sceneObjects:o.map(r=>{let o=i?.sceneEntityObjectProperties?.find(e=>e.componentInstance.instanceName===r.componentInstance.instanceName)?.state,s=i?.sceneEntityObjectTextDecal?.filter(e=>e.componentInstance.instanceName===r.componentInstance.instanceName),a=i?.sceneEntityObjectDecal?.filter(e=>e.componentInstance.instanceName===r.componentInstance.instanceName),c=i?.sceneEntityObjectTransformer?.filter(e=>e.state.target===r.componentInstance.instanceName),l=n(o?.morphTargetInfluences,t=>this._context.domainServicesSelectors.getLogger().warn(`Morph target "${t}" on object ${r.componentInstance.instanceName} of entity ${e.id} has scaleZero equal to scaleOne, so its influence is undefined and is exported to Blender as 0. Give scaleZero and scaleOne different values.`)),m=i?.sceneEntityObjectClip?.filter(e=>e.state.target===r.componentInstance.instanceName),{overrides:d,transformations:g,transitions:p}=T(i??{},t,r.componentInstance.instanceName);return{instanceName:r.componentInstance.instanceName,object:r.state,properties:o,morphTargetInfluences:l,textDecals:s,decals:a,materialOverrides:d,materialOverrideTransformations:g,materialOverridePropertyTransitions:p,objectTransformations:c,clips:m}}),nodes:[]};for(let t of e.nodes){let e=this._traverse(t.node,c,r);c.nodes.push(e)}return c};getSceneEntityTree=e=>{let{root:t}=this._context.selectors.getCompositionProjections().getTree(e);return this._traverse(t,null,e)};_getBlenderObjects=(t,n)=>{let r=this._context.selectors.getDimensionSystem().getDataDistanceUnit(t),i=[],o=t=>{if(t.isHidden)return;if(null!=t.customEntity)return void this._context.domainServicesSelectors.getLogger().warn(`Custom entity ${t.id} is not supported in Blender.`);let n=t.overrideComponents?.materialOverrideTransformer??[];n.length>0&&this._context.domainServicesSelectors.getLogger().warn(`Entity ${t.id} has ${n.length} material override transformer(s), they are not applied in Blender. Set the final material values on the overrides active in the export state.`);let s=t.properties,a=$(t.overrideComponents?.sceneEntityObjectGroup?.map(e=>({instanceName:e.componentInstance.instanceName,state:e.state}))??[],r),c=new Map(t.sceneObjects.map(e=>[e,a(e.properties?.targetParentGroup,e.instanceName)]));for(let n of t.sceneObjects){let o=c.get(n);if(o?.visible===!1||n.properties?.visible===!1||n.properties?.rendered===!1)continue;if(!U(n.object)){this._context.domainServicesSelectors.getLogger().warn(`Object ${n.instanceName} is not a remote object, it will not be rendered in Blender.`);continue}n.textDecals&&n.textDecals.length>0&&this._context.domainServicesSelectors.getLogger().warn(`Object ${n.instanceName} of entity ${t.id} has text decals, they are not rendered in Blender.`),n.decals&&n.decals.length>0&&this._context.domainServicesSelectors.getLogger().warn(`Object ${n.instanceName} of entity ${t.id} has decals, they are not rendered in Blender.`),n.objectTransformations&&n.objectTransformations.length>0&&this._context.domainServicesSelectors.getLogger().warn(`Object ${n.instanceName} of entity ${t.id} has object transformers, they are not applied in Blender. Express the transform through sceneEntityObjectProperties or a sceneEntityObjectGroup active in the export state.`),n.clips&&n.clips.length>0&&this._context.domainServicesSelectors.getLogger().warn(`Object ${n.instanceName} of entity ${t.id} has animation clips, they are not played in Blender.`);let a=n.object,{position:l,scale:m,rotation:d}=M(o?new e().multiplyMatrices(s.worldMatrix,o.matrix):s.worldMatrix,n.properties,a.dimensionUnit??r,r),g=L(n.materialOverrides??[]),p=P({logger:this._context.domainServicesSelectors.getLogger(),materialOverrides:g,objectInstanceName:n.instanceName,transitions:n.materialOverridePropertyTransitions??[]});i.push({id:R(t.id,n.instanceName),objectName:a.objectName,position:l,scale:m,rotation:d,morphTargetInfluences:n.morphTargetInfluences,materialOverrides:p})}for(let e of t.nodes)o(e)};return o(n),i};getBlenderObjects=e=>this._getBlenderObjects(e,this.getSceneEntityTree(e));_prepareExportState=(e,t,n)=>{let r=this._context.selectors.getNavigationSystem().getExportUpdate(t,n),i=this._context.selectors.getStoreSystem().prepareStateEmission([r],e,"staged");if(!i.validity.valid)throw this._context.domainServicesSelectors.getLogger().error(`Setting an export state to ${t} for entity ${n} resulted in an invalid state! Check if there isn't a transformer corrupting the state as a reaction to setting the export state.`,i),Error("Exported state is invalid!");return i.state};_getBlenderLights=(e,t)=>{let n=this._context.selectors.getDimensionSystem().getDataDistanceUnit(e),r=[],i=e=>{if(e.isHidden||null!=e.customEntity)return;let t=e.overrideComponents,o=t?.sceneEntityAmbientLight??[];for(let i of(o.length>0&&this._context.domainServicesSelectors.getLogger().warn(`Entity "${e.id}" has ${o.length} ambient light component(s) which are not exported to Blender because Blender has no equivalent ambient light type. Use HDRI lighting or additional point/area lights instead.`),[...t?.sceneEntityPointLight??[],...t?.sceneEntitySpotLight??[],...t?.sceneEntityDirectionalLight??[],...t?.sceneEntityRectAreaLight??[]])){let t=D({entityId:e.id,entityWorldMatrix:e.properties.worldMatrix,snapshot:i,distanceUnit:n});null!=t?r.push(t):this._context.domainServicesSelectors.getLogger().warn(`Unknown light component type for ${i.componentInstance.instanceName}`)}for(let t of e.nodes)i(t)};return i(t),r};getBlenderLights=e=>this._getBlenderLights(e,this.getSceneEntityTree(e));getBlenderCamera=(e,t)=>C(e,t,{componentReader:this._context.selectors.getComponentReader(),dimensionSystem:this._context.selectors.getDimensionSystem(),positionProjections:this._context.selectors.getPositionProjections()});_getBlenderSceneConfigFromState=e=>{let t=this.getSceneEntityTree(e),n=this._getBlenderObjects(e,t),r=this._getBlenderLights(e,t);return{renderedEntities:n.map(e=>({id:e.id,type:"default",objectName:e.objectName,position:e.position,scale:e.scale,rotation:e.rotation,materialOverrides:e.materialOverrides,morphTargetInfluences:e.morphTargetInfluences})),lights:r.length>0?r:void 0}};getBlenderSceneConfig=(e,t,n)=>{let r=this._prepareExportState(e,t,n);return this._getBlenderSceneConfigFromState(r)};getBlenderImageConfig=(e,t,n,r)=>{let i=this._prepareExportState(e,t,n);return{width:r.width,height:r.height,...this._getBlenderSceneConfigFromState(i),camera:this.getBlenderCamera(i,r)}}}
@@ -1,6 +1,6 @@
1
1
  import type { DomainEntity, DomainState } from '../../core/index.js';
2
2
  import type { AnyDimensionSystem } from '../../domain-context/index.js';
3
- import type { AnyComponentReader } from '../../domain-runtime/domain-context/index.js';
3
+ import type { AnyComponentReader } from '../../domain-runtime/index.js';
4
4
  import type { AnyPositionProjections } from '../position-projections.js';
5
5
  import type { BlenderCamera, BlenderImageSize } from './types.js';
6
6
  export interface BlenderCameraProjectionContext {
@@ -1,6 +1,6 @@
1
1
  import { Matrix4, Mesh, Vector3 } from 'three';
2
2
  import { type DomainEntity, type DomainState, type EntityId } from '../core/index.js';
3
- import type { DomainContextSelectors } from '../domain-runtime/domain-context/index.js';
3
+ import type { DomainContextSelectors } from '../domain-runtime/index.js';
4
4
  import { type AnyCollisionGeometrySnapshot } from '../system-components/index.js';
5
5
  /**
6
6
  * DE-9IM-style classification of the spatial relationship between two
@@ -1,6 +1,6 @@
1
1
  import { type Localizable } from '@salsita-ai/common/utils';
2
2
  import { type DomainEntity, type DomainEntityId, type DomainState, type EntityId, type VirtualEntityId } from '../core/index.js';
3
- import type { DomainContextSelectors } from '../domain-runtime/domain-context/index.js';
3
+ import type { DomainContextSelectors } from '../domain-runtime/index.js';
4
4
  export declare class CompositionCycleError extends Error {
5
5
  constructor(entityId: DomainEntityId<string>);
6
6
  }
@@ -1 +1 @@
1
- import{isEqualArray as t}from"@salsita-ai/common/utils";import{groupComponentsByEntityIdAndName as e}from"../components/group-components-by-entity-id-and-name.js";import{domainEntityTypeFromId as o,isVirtualEntityId as i}from"../core/index.js";import{composedOfComponent as n}from"../relations/composed-of.js";import{detailComponent as s,priceComponent as r}from"../system-components/index.js";export class CompositionCycleError extends Error{constructor(t){super(`Entity ${t} is part of a cycle or appears in two branches in the scene graph! This is not allowed, fix the domain relationships to have clear composition hierarchy!`)}}export class EntityNotPartOfCompositionTreeError extends Error{constructor(t){super(`Entity ${t} is not part of the composition tree. Add composition relations to the entity so every entity is descendant of the root entity!`)}}export class EntityCompositionNode{id;parent;nodes;constructor(t,e,o){this.id=t,this.parent=e,this.nodes=o}descendants=t=>(function* t(e,o){for(let i of e.nodes)o&&i.relation!==o||(yield i.node,yield*t(i.node))})(this,t);children=t=>(function*(t,e){for(let o of t.nodes)e&&o.relation!==e||(yield o.node)})(this,t);ancestors=()=>(function*(t){let e=t.parent;for(;e;)yield e,e=e.parent})(this)}export class CompositionProjections{_context;_weakCache=new WeakMap;_previousValue=null;constructor(t){this._context=t}_traverseComposition=(t,e,o,i,n,s)=>{let r=new EntityCompositionNode(t,e,[]);if(o.has(r))throw new CompositionCycleError(t);for(let e of(i.set(t,r),o.add(r),s??[]))if(e.componentInstance.entityId===t)for(let t of e.state.childEntityIds){let a=this._traverseComposition(t,r,o,i,n,s);r.nodes.push({node:a,relation:e.componentInstance.instanceName})}return r};getTree=e=>{let o=this._weakCache.get(e);if(void 0!==o)return o;let i=this._context.selectors.getComponentReader().readManyComponents({componentTypes:[n]},e);if(this._previousValue&&this._previousValue.rootEntityId===e.rootEntityId&&t(i,this._previousValue.components??[]))return this._weakCache.set(e,this._previousValue.value),this._previousValue.value;let s=new Map,r=this._traverseComposition(e.rootEntityId,null,new Set,s,e,i);for(let t of e.entities)if(void 0===s.get(t.id))throw new EntityNotPartOfCompositionTreeError(t.id);let a={map:s,root:r};return this._weakCache.set(e,a),this._previousValue={components:i,value:a,rootEntityId:e.rootEntityId},a};readBasicEntityInfo=(t,n)=>{let a=e(this._context.selectors.getComponentReader().readManyComponents({entityIds:[t],componentTypes:[s,r]},n)).get(t),l=i(t)?t.name:o(t);return{entityId:t,title:a?.detail?.[0]?.state.title??l,shortDescription:a?.detail?.[0]?.state.description,subtitle:a?.detail?.[0]?.state.subtitle,price:a?.price?.[0]?.state.price,thumbnailUrl:a?.detail?.[0]?.state.thumbnailUrl}}}
1
+ import{isEqualArray as t}from"@salsita-ai/common/utils";import{composedOfComponent as e,domainEntityTypeFromId as o,groupComponentsByEntityIdAndName as i,isVirtualEntityId as n}from"../core/index.js";import{detailComponent as s,priceComponent as r}from"../system-components/index.js";export class CompositionCycleError extends Error{constructor(t){super(`Entity ${t} is part of a cycle or appears in two branches in the scene graph! This is not allowed, fix the domain relationships to have clear composition hierarchy!`)}}export class EntityNotPartOfCompositionTreeError extends Error{constructor(t){super(`Entity ${t} is not part of the composition tree. Add composition relations to the entity so every entity is descendant of the root entity!`)}}export class EntityCompositionNode{id;parent;nodes;constructor(t,e,o){this.id=t,this.parent=e,this.nodes=o}descendants=t=>(function* t(e,o){for(let i of e.nodes)o&&i.relation!==o||(yield i.node,yield*t(i.node))})(this,t);children=t=>(function*(t,e){for(let o of t.nodes)e&&o.relation!==e||(yield o.node)})(this,t);ancestors=()=>(function*(t){let e=t.parent;for(;e;)yield e,e=e.parent})(this)}export class CompositionProjections{_context;_weakCache=new WeakMap;_previousValue=null;constructor(t){this._context=t}_traverseComposition=(t,e,o,i,n,s)=>{let r=new EntityCompositionNode(t,e,[]);if(o.has(r))throw new CompositionCycleError(t);for(let e of(i.set(t,r),o.add(r),s??[]))if(e.componentInstance.entityId===t)for(let t of e.state.childEntityIds){let a=this._traverseComposition(t,r,o,i,n,s);r.nodes.push({node:a,relation:e.componentInstance.instanceName})}return r};getTree=o=>{let i=this._weakCache.get(o);if(void 0!==i)return i;let n=this._context.selectors.getComponentReader().readManyComponents({componentTypes:[e]},o);if(this._previousValue&&this._previousValue.rootEntityId===o.rootEntityId&&t(n,this._previousValue.components??[]))return this._weakCache.set(o,this._previousValue.value),this._previousValue.value;let s=new Map,r=this._traverseComposition(o.rootEntityId,null,new Set,s,o,n);for(let t of o.entities)if(void 0===s.get(t.id))throw new EntityNotPartOfCompositionTreeError(t.id);let a={map:s,root:r};return this._weakCache.set(o,a),this._previousValue={components:n,value:a,rootEntityId:o.rootEntityId},a};readBasicEntityInfo=(t,e)=>{let a=i(this._context.selectors.getComponentReader().readManyComponents({entityIds:[t],componentTypes:[s,r]},e)).get(t),l=n(t)?t.name:o(t);return{entityId:t,title:a?.detail?.[0]?.state.title??l,shortDescription:a?.detail?.[0]?.state.description,subtitle:a?.detail?.[0]?.state.subtitle,price:a?.price?.[0]?.state.price,thumbnailUrl:a?.detail?.[0]?.state.thumbnailUrl}}}
@@ -1,5 +1,5 @@
1
1
  import type { DomainEntity, DomainState } from '../core/index.js';
2
- import type { DomainContextSelectors } from '../domain-runtime/domain-context/index.js';
2
+ import type { DomainContextSelectors } from '../domain-runtime/index.js';
3
3
  import { type SpatialPredicateName } from '../system-components/index.js';
4
4
  /**
5
5
  * Constructor context of `ConstraintProjections`. It carries no `selectors` member because every
@@ -5,7 +5,7 @@ export { CollisionProjections, type CollisionMesh, type Collision, type SpatialR
5
5
  export { ConstraintProjections, type AnyConstraintProjections } from './constraint-projections.js';
6
6
  export { CompositionProjections, type AnyCompositionProjections, EntityCompositionNode, CompositionCycleError, EntityNotPartOfCompositionTreeError, type CompositionTreeWithIndex, } from './composition-projections.js';
7
7
  export { SnappingProjections, type AnySnapMatch, type WorldSnapPoint, type SnapMatch, type FindSnapOptions, type WorldSnapEdge, type EdgeSnapMatch, type WorldSnapPlane, type PlaneSnapMatch, type WorldSnapAxis, type AxisSnapMatch, type AnySnappingProjections, } from './snapping-projections.js';
8
- export { ValidationProjections, type AnyValidationProjections, type ValidationProjectionsContext, type StateValidationResult, type SystemViolation, } from './validation-projections.js';
8
+ export { ValidationProjections, type AnyValidationProjections, type ValidationProjectionsContext, type SystemViolation, } from './validation-projections.js';
9
9
  export { findBestPointSnap, findAllPointSnaps, findBestEdgeSnap, findBestPlaneSnap, findBestAxisSnap, snapScore, extractYRotationFromMatrix, type AutoRotateContext, } from './snap-matching.js';
10
10
  export { computeWorldMatrix, computeWorldSnapPoints, computeWorldSnapEdges, computeWorldSnapPlanes, computeWorldSnapAxes, toMmBounds, } from './snap-utils.js';
11
11
  export { ProjectedEntitiesProjections, type AnyProjectedEntitiesProjections } from './projected-entities-projections.js';
@@ -1,6 +1,6 @@
1
1
  import { Euler, Matrix4, Quaternion, Vector3 } from 'three';
2
2
  import type { DomainEntity, DomainEntityId, DomainState } from '../core/index.js';
3
- import type { DomainContextSelectors } from '../domain-runtime/domain-context/index.js';
3
+ import type { DomainContextSelectors } from '../domain-runtime/index.js';
4
4
  /**
5
5
  * Override for an entity's position during an active drag or rotation.
6
6
  * This is a simplified view of the dragging state — only the fields
@@ -1,6 +1,5 @@
1
- import type { DomainEntity, DomainEntityId } from '../core/model.js';
2
- import type { DomainState } from '../core/state.js';
3
- import type { DomainContextSelectors } from '../domain-runtime/domain-context/index.js';
1
+ import type { DomainEntity, DomainEntityId, DomainState } from '../core/index.js';
2
+ import type { DomainContextSelectors } from '../domain-runtime/index.js';
4
3
  /**
5
4
  * Constructor context of `ProjectedEntitiesProjections`. It carries no `selectors` member because
6
5
  * every registry read is transitive through collaborators that own their own registry window. A
@@ -1,7 +1,6 @@
1
1
  import type { Matrix4 } from 'three';
2
2
  import { Vector3 } from 'three';
3
- import type { ComponentSnapshot } from '../core/component.js';
4
- import type { DomainEntity } from '../core/model.js';
3
+ import type { ComponentSnapshot, DomainEntity } from '../core/index.js';
5
4
  import type { SnapAxisComponent, SnapEdgeComponent, SnapPlaneComponent, SnapPointComponent } from '../system-components/index.js';
6
5
  /**
7
6
  * Common fields shared by all world-space snap primitives (points, edges, planes, axes).
@@ -1,6 +1,5 @@
1
1
  import { type Euler, Matrix4, Vector3 } from 'three';
2
- import type { ComponentSnapshot } from '../core/component.js';
3
- import type { DomainEntity } from '../core/model.js';
2
+ import type { ComponentSnapshot, DomainEntity } from '../core/index.js';
4
3
  import type { DimensionUnit } from '../dimensions/dimensions.js';
5
4
  import type { SnapAxisComponent, SnapEdgeComponent, SnapPlaneComponent, SnapPointComponent } from '../system-components/index.js';
6
5
  import type { SnapAxisComponentState } from '../system-components/snap-axis.js';
@@ -1,5 +1,5 @@
1
1
  import { type DomainEntity, type DomainState, type EntityId } from '../core/index.js';
2
- import type { DomainContextSelectors } from '../domain-runtime/domain-context/index.js';
2
+ import type { DomainContextSelectors } from '../domain-runtime/index.js';
3
3
  import { type AnySnapMatch, type AxisSnapMatch, type EdgeSnapMatch, type FindSnapOptions, type PlaneSnapMatch, type SnapMatch, type WorldSnapAxis, type WorldSnapEdge, type WorldSnapPlane, type WorldSnapPoint } from './snap-matching.js';
4
4
  export type { AnySnapMatch, WorldSnapPoint, SnapMatch, FindSnapOptions, WorldSnapEdge, EdgeSnapMatch, WorldSnapPlane, PlaneSnapMatch, WorldSnapAxis, AxisSnapMatch, };
5
5
  /**
@@ -1,24 +1,7 @@
1
- import type { $DomainEntity, DomainEntity, DomainState } from '../core/index.js';
2
- import type { AngleDimensionViolation, DistanceDimensionViolation, GenericDimensionViolation } from '../domain-context/dimension-system/dimension-system.js';
3
- import type { DomainContextSelectors } from '../domain-runtime/domain-context/index.js';
4
- import type { EntityViolation, ViolationTypesOf$Entity } from '../invariants/violation.js';
1
+ import { type $DomainEntity, type DomainEntity, type DomainState, type StateValidationResult, type ViolationTypesOf$Entity } from '../core/index.js';
2
+ import type { AngleDimensionViolation, DistanceDimensionViolation, GenericDimensionViolation } from '../domain-context/index.js';
3
+ import type { DomainContextSelectors } from '../domain-runtime/index.js';
5
4
  export type SystemViolation = AngleDimensionViolation | DistanceDimensionViolation | GenericDimensionViolation;
6
- export type StateValidationResult<ENTITIES extends DomainEntity<string>, VIOLATION_TYPE extends string> = {
7
- readonly valid: true;
8
- readonly severity: null;
9
- } | {
10
- readonly valid: true;
11
- readonly severity: 'warning' | 'notice';
12
- readonly entityViolations: ReadonlyArray<EntityViolation<ENTITIES, VIOLATION_TYPE>>;
13
- } | {
14
- readonly valid: false;
15
- readonly severity: 'uncaught';
16
- readonly error: Error;
17
- } | {
18
- readonly valid: false;
19
- readonly severity: 'fatal' | 'fixable';
20
- readonly entityViolations: ReadonlyArray<EntityViolation<ENTITIES, VIOLATION_TYPE>>;
21
- };
22
5
  /**
23
6
  * Constructor context of `ValidationProjections`. Runtime dependencies are resolved through
24
7
  * selectors on every read so a hot-reloaded spec is observed without rebuilding the projections.
@@ -1 +1 @@
1
- import{violationsComponent as t}from"../invariants/violation-component.js";import{compareSeverity as e}from"../invariants/violation.js";export class ValidationProjections{_context;constructor(t){this._context=t}validateState(o){let n=[],r=null;try{for(let i of(this._context.selectors.getDomain().validateExpressions(o),this._context.selectors.getComponentReader().readManyComponents({componentTypes:[t]},o)))i.state.violations.forEach(t=>{(null===r||0>e(t.severity,r))&&(r=t.severity),n.push({entityId:i.componentInstance.entityId,violation:t})});for(let{entityId:t,violation:i}of this._context.selectors.getDimensionSystem().validateState(o))(null===r||0>e(i.severity,r))&&(r=i.severity),n.push({entityId:t,violation:i});if(null===r)return{valid:!0,severity:null};if("fatal"===r||"fixable"===r)return{valid:!1,severity:r,entityViolations:n};return{valid:!0,severity:r,entityViolations:n}}catch(t){return{valid:!1,error:t instanceof Error?t:Error(`Unknown error occurred - ${String(t)}`),severity:"uncaught"}}}}
1
+ import{compareSeverity as t,violationsComponent as e}from"../core/index.js";export class ValidationProjections{_context;constructor(t){this._context=t}validateState(r){let o=[],n=null;try{for(let i of(this._context.selectors.getDomain().validateExpressions(r),this._context.selectors.getComponentReader().readManyComponents({componentTypes:[e]},r)))i.state.violations.forEach(e=>{(null===n||0>t(e.severity,n))&&(n=e.severity),o.push({entityId:i.componentInstance.entityId,violation:e})});for(let{entityId:e,violation:i}of this._context.selectors.getDimensionSystem().validateState(r))(null===n||0>t(i.severity,n))&&(n=i.severity),o.push({entityId:e,violation:i});if(null===n)return{valid:!0,severity:null};if("fatal"===n||"fixable"===n)return{valid:!1,severity:n,entityViolations:o};return{valid:!0,severity:n,entityViolations:o}}catch(t){return{valid:!1,error:t instanceof Error?t:Error(`Unknown error occurred - ${String(t)}`),severity:"uncaught"}}}}
@@ -1,5 +1,5 @@
1
1
  import type { DomainEntity, DomainState, EntityId } from '../core/index.js';
2
- import type { DomainContextSelectors } from '../domain-runtime/domain-context/index.js';
2
+ import type { DomainContextSelectors } from '../domain-runtime/index.js';
3
3
  import { type Shape, type Sketching, type SketchingPoint } from './sketching.js';
4
4
  /**
5
5
  * Constructor context of `SketchingProjections`. It carries no `selectors` member because every
@@ -1,5 +1,5 @@
1
1
  import type { ReactNode } from 'react';
2
- import { type DomainEntityId } from '../core/model.js';
2
+ import { type DomainEntityId } from '../core/index.js';
3
3
  import { type PhoenixEntityElement } from './phoenix-entity-elements/index.js';
4
4
  export type AdminSidebarComponentState = {
5
5
  /**
@@ -1 +1 @@
1
- import{SystemComponentBuilder as e}from"../components/system-component-builder.js";import{DomainEntityIdSchema as t}from"../core/model.js";import{ReactNodeSchema as i}from"./common/react-node-schema.js";import{PhoenixEntityElementSchema as o}from"./phoenix-entity-elements/index.js";export const adminSidebarComponent=e.component("adminSidebar").withState({type:"object",tsType:"AdminSidebarComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"AdminSidebarComponentState"}],properties:{page:i,children:{type:"array",items:{$ref:"#/definitions/PhoenixEntityElement"}},title:{type:"string"},fallbackId:t},definitions:{PhoenixEntityElement:o},required:["title"],additionalProperties:!1}).build();
1
+ import{DomainEntityIdSchema as e,SystemComponentBuilder as t}from"../core/index.js";import{ReactNodeSchema as i}from"./common/react-node-schema.js";import{PhoenixEntityElementSchema as n}from"./phoenix-entity-elements/index.js";export const adminSidebarComponent=t.component("adminSidebar").withState({type:"object",tsType:"AdminSidebarComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"AdminSidebarComponentState"}],properties:{page:i,children:{type:"array",items:{$ref:"#/definitions/PhoenixEntityElement"}},title:{type:"string"},fallbackId:e},definitions:{PhoenixEntityElement:n},required:["title"],additionalProperties:!1}).build();
@@ -1 +1 @@
1
- import{SystemComponentBuilder as n}from"../components/system-component-builder.js";import{isInstanceOfComponentType as o,isSnapshotOfComponentType as e}from"../core/index.js";import{AngleValueSchema as i}from"../dimensions/index.js";export const angleDimensionComponent=n.component("angleDimension").withState(i).withWritableKeys(["value"]).build();export const isAngleDimensionSnapshot=e(angleDimensionComponent);export const isAngleDimensionInstance=o(angleDimensionComponent);
1
+ import{SystemComponentBuilder as n,isInstanceOfComponentType as e,isSnapshotOfComponentType as o}from"../core/index.js";import{AngleValueSchema as i}from"../dimensions/index.js";export const angleDimensionComponent=n.component("angleDimension").withState(i).withWritableKeys(["value"]).build();export const isAngleDimensionSnapshot=o(angleDimensionComponent);export const isAngleDimensionInstance=e(angleDimensionComponent);
@@ -1,4 +1,4 @@
1
- import { type ComponentInstance, type ComponentSnapshot } from '../core/component.js';
1
+ import { type ComponentInstance, type ComponentSnapshot } from '../core/index.js';
2
2
  import { DimensionUnit, type UnitsConfig } from '../dimensions/index.js';
3
3
  export type ApplicationConfigComponentState = {
4
4
  readonly showCollisionWarnings?: boolean;
@@ -1 +1 @@
1
- import{SystemComponentBuilder as e}from"../components/system-component-builder.js";import{isInstanceOfComponentType as n,isSnapshotOfComponentType as t}from"../core/component.js";import{DimensionUnit as o,UnitsConfigSchema as i}from"../dimensions/index.js";export const applicationConfigComponent=e.component("applicationConfig").withState({type:"object",tsType:"ApplicationConfigComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"ApplicationConfigComponentState"}],properties:{showCollisionWarnings:{type:"boolean"},collisionWarningIcon:{type:"string"},sidebarBackIcon:{type:"string"},hamburgerIcon:{type:"string"},readonlyBannerIcon:{type:"string"},toolbarCloseIcon:{type:"string"},layout:{type:"string",enum:["simple","tabs","steps","custom","universal"]},ignoreSelectionInSidebar:{type:"boolean"},miniSidebar:{type:"boolean"},initialGlobalUnit:{type:"string",enum:Object.values(o)},distanceDataUnit:{type:"string",enum:Object.values(o)},unitDisplayConfig:i,availableDimensions:{type:"array",items:{type:"string",enum:Object.values(o)}},splitSidebar:{type:"boolean"},showSelectionBackButton:{type:"boolean"},disableDefaultCamera:{type:"boolean"},shareDisabled:{type:"boolean"},shareOwnerLinkDisabled:{type:"boolean"},shareReadRevisionLinkDisabled:{type:"boolean"},shareExpiration:{type:"number"},shareCloneToEdit:{type:"boolean"},shareStrategy:{type:"string",enum:["deployment-registered","current-frontend"]},availableLocales:{type:"array",items:{type:"string"}},initialIndicatorShown:{type:"boolean"},chatEnabled:{type:"boolean"},indicatorSwitch:{type:"boolean"},disableRelativeDragging:{type:"boolean"}},required:[],additionalProperties:!1}).build();export const isApplicationConfigSnapshot=t(applicationConfigComponent);export const isApplicationConfigInstance=n(applicationConfigComponent);
1
+ import{SystemComponentBuilder as e,isInstanceOfComponentType as n,isSnapshotOfComponentType as t}from"../core/index.js";import{DimensionUnit as o,UnitsConfigSchema as i}from"../dimensions/index.js";export const applicationConfigComponent=e.component("applicationConfig").withState({type:"object",tsType:"ApplicationConfigComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"ApplicationConfigComponentState"}],properties:{showCollisionWarnings:{type:"boolean"},collisionWarningIcon:{type:"string"},sidebarBackIcon:{type:"string"},hamburgerIcon:{type:"string"},readonlyBannerIcon:{type:"string"},toolbarCloseIcon:{type:"string"},layout:{type:"string",enum:["simple","tabs","steps","custom","universal"]},ignoreSelectionInSidebar:{type:"boolean"},miniSidebar:{type:"boolean"},initialGlobalUnit:{type:"string",enum:Object.values(o)},distanceDataUnit:{type:"string",enum:Object.values(o)},unitDisplayConfig:i,availableDimensions:{type:"array",items:{type:"string",enum:Object.values(o)}},splitSidebar:{type:"boolean"},showSelectionBackButton:{type:"boolean"},disableDefaultCamera:{type:"boolean"},shareDisabled:{type:"boolean"},shareOwnerLinkDisabled:{type:"boolean"},shareReadRevisionLinkDisabled:{type:"boolean"},shareExpiration:{type:"number"},shareCloneToEdit:{type:"boolean"},shareStrategy:{type:"string",enum:["deployment-registered","current-frontend"]},availableLocales:{type:"array",items:{type:"string"}},initialIndicatorShown:{type:"boolean"},chatEnabled:{type:"boolean"},indicatorSwitch:{type:"boolean"},disableRelativeDragging:{type:"boolean"}},required:[],additionalProperties:!1}).build();export const isApplicationConfigSnapshot=t(applicationConfigComponent);export const isApplicationConfigInstance=n(applicationConfigComponent);
@@ -1 +1 @@
1
- import{EnhancedLocalizableSchema as t}from"@salsita-ai/common/utils";import{SystemComponentBuilder as e}from"../components/system-component-builder.js";import{isSnapshotOfComponentType as o}from"../core/component.js";export const attributeSelectionComponent=e.component("attributeSelection").withState({type:"object",tsType:"AttributeSelectionComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"AttributeSelectionComponentState"}],properties:{value:{type:["string","number","boolean","null"]},options:{type:"array",items:{type:"object",properties:{label:t,description:t,img:t,value:{type:["string","number","boolean"]}},required:["value","label"],additionalProperties:!0}}},required:["value","options"],additionalProperties:!1}).withWritableKeys(["value"]).build();export const isAttributeSelectionSnapshot=o(attributeSelectionComponent);
1
+ import{EnhancedLocalizableSchema as t}from"@salsita-ai/common/utils";import{SystemComponentBuilder as e,isSnapshotOfComponentType as o}from"../core/index.js";export const attributeSelectionComponent=e.component("attributeSelection").withState({type:"object",tsType:"AttributeSelectionComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"AttributeSelectionComponentState"}],properties:{value:{type:["string","number","boolean","null"]},options:{type:"array",items:{type:"object",properties:{label:t,description:t,img:t,value:{type:["string","number","boolean"]}},required:["value","label"],additionalProperties:!0}}},required:["value","options"],additionalProperties:!1}).withWritableKeys(["value"]).build();export const isAttributeSelectionSnapshot=o(attributeSelectionComponent);
@@ -1,5 +1,5 @@
1
1
  import { type Box3 } from 'three';
2
- import type { ComponentSnapshot } from '../core/component.js';
2
+ import { type ComponentSnapshot } from '../core/index.js';
3
3
  export type BoundingBoxComponentState = {
4
4
  /**
5
5
  * Three.js Box3 object defining the custom bounding box for camera fitting.
@@ -1 +1 @@
1
- import{SystemComponentBuilder as e}from"../components/system-component-builder.js";export const boundingBoxComponent=e.component("boundingBox").withState({type:"object",tsType:"BoundingBoxComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"BoundingBoxComponentState"}],properties:{shape:{type:"object"},minX:{type:"number"},minY:{type:"number"},minZ:{type:"number"},maxX:{type:"number"},maxY:{type:"number"},maxZ:{type:"number"},relative:{type:"boolean"}},required:[],additionalProperties:!1}).build();export const isBoundingBoxComponent=e=>"boundingBox"===e.componentInstance.componentType.name;
1
+ import{SystemComponentBuilder as e}from"../core/index.js";export const boundingBoxComponent=e.component("boundingBox").withState({type:"object",tsType:"BoundingBoxComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"BoundingBoxComponentState"}],properties:{shape:{type:"object"},minX:{type:"number"},minY:{type:"number"},minZ:{type:"number"},maxX:{type:"number"},maxY:{type:"number"},maxZ:{type:"number"},relative:{type:"boolean"}},required:[],additionalProperties:!1}).build();export const isBoundingBoxComponent=e=>"boundingBox"===e.componentInstance.componentType.name;
@@ -1,5 +1,5 @@
1
1
  import { type Sphere } from 'three';
2
- import type { ComponentSnapshot } from '../core/component.js';
2
+ import { type ComponentSnapshot } from '../core/index.js';
3
3
  export type BoundingSphereComponentState = {
4
4
  /**
5
5
  * Three.js Sphere object defining the custom bounding sphere for camera fitting.
@@ -1 +1 @@
1
- import{SystemComponentBuilder as e}from"../components/system-component-builder.js";export const boundingSphereComponent=e.component("boundingSphere").withState({type:"object",tsType:"BoundingSphereComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"BoundingSphereComponentState"}],properties:{shape:{type:"object"},centerX:{type:"number"},centerY:{type:"number"},centerZ:{type:"number"},radius:{type:"number"},relative:{type:"boolean"}},required:[],additionalProperties:!1}).build();export const isBoundingSphereComponent=e=>"boundingSphere"===e.componentInstance.componentType.name;
1
+ import{SystemComponentBuilder as e}from"../core/index.js";export const boundingSphereComponent=e.component("boundingSphere").withState({type:"object",tsType:"BoundingSphereComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"BoundingSphereComponentState"}],properties:{shape:{type:"object"},centerX:{type:"number"},centerY:{type:"number"},centerZ:{type:"number"},radius:{type:"number"},relative:{type:"boolean"}},required:[],additionalProperties:!1}).build();export const isBoundingSphereComponent=e=>"boundingSphere"===e.componentInstance.componentType.name;
@@ -1,5 +1,5 @@
1
1
  import { type Localizable } from '@salsita-ai/common/utils';
2
- import type { ComponentInstance, ComponentSnapshot, SystemComponentTypeConstraint } from '../core/index.js';
2
+ import { type ComponentInstance, type ComponentSnapshot, type SystemComponentTypeConstraint } from '../core/index.js';
3
3
  import { type RecipeListItem } from './common/recipes.js';
4
4
  export type ChildEntityRecipesComponentState = {
5
5
  /**
@@ -1 +1 @@
1
- import{EnhancedLocalizableSchema as e}from"@salsita-ai/common/utils";import{SystemComponentBuilder as t}from"../components/system-component-builder.js";import{recipeListItemSchema as i}from"./common/recipes.js";export const childEntityRecipesComponent=t.component("childEntityRecipes").withState({type:"object",tsType:"ChildEntityRecipesComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"ChildEntityRecipesComponentState"}],properties:{collection:{type:"string"},recipes:{type:"array",items:i},groupLabel:e,groupDescription:e},required:["recipes"],additionalProperties:!1}).build();export const isChildEntityRecipesSnapshot=e=>e.componentInstance.componentType===childEntityRecipesComponent;export const isChildEntityRecipesInstance=e=>e.componentType===childEntityRecipesComponent;
1
+ import{EnhancedLocalizableSchema as e}from"@salsita-ai/common/utils";import{SystemComponentBuilder as t}from"../core/index.js";import{recipeListItemSchema as i}from"./common/recipes.js";export const childEntityRecipesComponent=t.component("childEntityRecipes").withState({type:"object",tsType:"ChildEntityRecipesComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"ChildEntityRecipesComponentState"}],properties:{collection:{type:"string"},recipes:{type:"array",items:i},groupLabel:e,groupDescription:e},required:["recipes"],additionalProperties:!1}).build();export const isChildEntityRecipesSnapshot=e=>e.componentInstance.componentType===childEntityRecipesComponent;export const isChildEntityRecipesInstance=e=>e.componentType===childEntityRecipesComponent;
@@ -1,6 +1,5 @@
1
1
  import { type Localizable } from '@salsita-ai/common/utils';
2
- import type { DomainEntity, DomainEntityId } from '../core/model.js';
3
- import type { EntityRecipe } from '../domain-context/recipe-system/recipes.js';
2
+ import { type DomainEntity, type DomainEntityId, type EntityRecipe } from '../core/index.js';
4
3
  export interface ChildEntitySelectionOption {
5
4
  /**
6
5
  * The label of the option
@@ -1 +1 @@
1
- import{EnhancedLocalizableSchema as e}from"@salsita-ai/common/utils";import{SystemComponentBuilder as t}from"../components/system-component-builder.js";import{recipeSchema as i}from"./common/recipes.js";export const childEntitySelectionComponent=t.component("childEntitySelection").withState({type:"object",tsType:"ChildEntitySelectionComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"ChildEntitySelectionComponentState"}],properties:{value:{type:"string"},options:{type:"array",items:{type:"object",properties:{label:e,description:e,img:e,recipes:{type:"array",items:i},keepChildren:{type:"boolean"}},required:["recipes","label"],additionalProperties:!0}}},required:["value","options"],additionalProperties:!1}).build();
1
+ import{EnhancedLocalizableSchema as e}from"@salsita-ai/common/utils";import{SystemComponentBuilder as t}from"../core/index.js";import{recipeSchema as i}from"./common/recipes.js";export const childEntitySelectionComponent=t.component("childEntitySelection").withState({type:"object",tsType:"ChildEntitySelectionComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"ChildEntitySelectionComponentState"}],properties:{value:{type:"string"},options:{type:"array",items:{type:"object",properties:{label:e,description:e,img:e,recipes:{type:"array",items:i},keepChildren:{type:"boolean"}},required:["recipes","label"],additionalProperties:!0}}},required:["value","options"],additionalProperties:!1}).build();
@@ -1,5 +1,5 @@
1
1
  import type { Color } from '@salsita-ai/common/utils';
2
- import type { ComponentSnapshot } from '../core/component.js';
2
+ import { type ComponentSnapshot } from '../core/index.js';
3
3
  /**
4
4
  * Axis-aligned box collision geometry, authored via per-axis start/end
5
5
  * coordinates in the entity's local frame (before `sceneEntityProperties`
@@ -1 +1 @@
1
- import{SystemComponentBuilder as e}from"../components/system-component-builder.js";export const collisionBoxGeometryComponent=e.component("collisionBoxGeometry").withState({type:"object",tsType:"CollisionBoxGeometryComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"CollisionBoxGeometryComponentState"}],properties:{startX:{type:"number"},endX:{type:"number"},startY:{type:"number"},endY:{type:"number"},startZ:{type:"number"},endZ:{type:"number"},color:{type:"string"}},required:["startX","endX","startY","endY","startZ","endZ","color"],additionalProperties:!1}).build();export const isCollisionBoxGeometryComponent=e=>"collisionBoxGeometry"===e.componentInstance.componentType.name;
1
+ import{SystemComponentBuilder as e}from"../core/index.js";export const collisionBoxGeometryComponent=e.component("collisionBoxGeometry").withState({type:"object",tsType:"CollisionBoxGeometryComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"CollisionBoxGeometryComponentState"}],properties:{startX:{type:"number"},endX:{type:"number"},startY:{type:"number"},endY:{type:"number"},startZ:{type:"number"},endZ:{type:"number"},color:{type:"string"}},required:["startX","endX","startY","endY","startZ","endZ","color"],additionalProperties:!1}).build();export const isCollisionBoxGeometryComponent=e=>"collisionBoxGeometry"===e.componentInstance.componentType.name;
@@ -1,5 +1,5 @@
1
1
  import { type BufferGeometry } from 'three';
2
- import type { ComponentSnapshot } from '../core/component.js';
2
+ import type { ComponentSnapshot } from '../core/index.js';
3
3
  import { type DimensionUnit } from '../dimensions/dimensions.js';
4
4
  import { type CollisionBoxGeometryComponent } from './collision-box-geometry.js';
5
5
  import type { CollisionGeometryComponent } from './collision-geometry.js';
@@ -1,5 +1,5 @@
1
1
  import type { Color } from '@salsita-ai/common/utils';
2
- import type { ComponentSnapshot } from '../core/component.js';
2
+ import { type ComponentSnapshot } from '../core/index.js';
3
3
  /**
4
4
  * Mesh-backed collision geometry. The caller supplies a pre-built
5
5
  * `BufferGeometry` — used for arbitrary meshes (extruded outlines,
@@ -1 +1 @@
1
- import{SystemComponentBuilder as o}from"../components/system-component-builder.js";export const collisionGeometryComponent=o.component("collisionGeometry").withState({type:"object",tsType:"CollisionGeometryComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"CollisionGeometryComponentState"}],properties:{geometry:{type:"object"},color:{type:"string"}},required:["geometry","color"],additionalProperties:!1}).build();export const isCollisionGeometryComponent=o=>"collisionGeometry"===o.componentInstance.componentType.name;
1
+ import{SystemComponentBuilder as o}from"../core/index.js";export const collisionGeometryComponent=o.component("collisionGeometry").withState({type:"object",tsType:"CollisionGeometryComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"CollisionGeometryComponentState"}],properties:{geometry:{type:"object"},color:{type:"string"}},required:["geometry","color"],additionalProperties:!1}).build();export const isCollisionGeometryComponent=o=>"collisionGeometry"===o.componentInstance.componentType.name;
@@ -1,5 +1,5 @@
1
1
  import type { Color } from '@salsita-ai/common/utils';
2
- import type { ComponentSnapshot } from '../core/component.js';
2
+ import { type ComponentSnapshot } from '../core/index.js';
3
3
  /**
4
4
  * Zero-volume point collision geometry at a local `(x, y, z)`. Authored
5
5
  * via the position in the entity's local frame. Internally rendered as a
@@ -1 +1 @@
1
- import{SystemComponentBuilder as o}from"../components/system-component-builder.js";export const collisionPointGeometryComponent=o.component("collisionPointGeometry").withState({type:"object",tsType:"CollisionPointGeometryComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"CollisionPointGeometryComponentState"}],properties:{x:{type:"number"},y:{type:"number"},z:{type:"number"},color:{type:"string"}},required:["x","y","z","color"],additionalProperties:!1}).build();export const isCollisionPointGeometryComponent=o=>"collisionPointGeometry"===o.componentInstance.componentType.name;
1
+ import{SystemComponentBuilder as o}from"../core/index.js";export const collisionPointGeometryComponent=o.component("collisionPointGeometry").withState({type:"object",tsType:"CollisionPointGeometryComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"CollisionPointGeometryComponentState"}],properties:{x:{type:"number"},y:{type:"number"},z:{type:"number"},color:{type:"string"}},required:["x","y","z","color"],additionalProperties:!1}).build();export const isCollisionPointGeometryComponent=o=>"collisionPointGeometry"===o.componentInstance.componentType.name;
@@ -1,10 +1,6 @@
1
- export { type AngleIndicatorBaseState, AngleIndicatorProperties } from './angle-indicator-schema.js';
2
1
  export { type RecipeListItem, recipeListItemSchema } from './recipes.js';
3
2
  export { ReactNodeSchema, type ReactNodeSchemaType } from './react-node-schema.js';
4
3
  export { type SceneEntityHtmlPositionState, type SceneEntityHtmlOpacityState, type SceneEntityHtmlVisibilityState, type SceneEntityHtmlOpacityLimits, type SceneEntityHtmlTooltipState, SceneHtmlPositionProperties, SceneHtmlOpacityProperties, SceneHtmlVisibilityProperties, SceneHtmlTooltipProperties, } from './scene-entity-control-schema.js';
5
4
  export { type DraggableSurface, DraggableSurfaceSchema } from './dragging.js';
6
- export { ArrowHeadType, ArrowHeadTypeSchema } from './dimension-indicators.js';
7
- export { type EditableIndicatorButtonVariant, EditableIndicatorButtonVariantSchema, } from './editable-indicator-button-variant.js';
8
- export { type DimensionIndicatorBaseState, type DimensionIndicatorState, DimensionIndicatorBaseProperties, DimensionIndicatorProperties, } from './dimension-indicator-schema.js';
9
5
  export { type MaterialOverrideBaseState, MaterialOverrideProperties } from './material-override-schema.js';
10
6
  export { type GroupedRecipeItems, type GroupedRecipeGroup, type GroupedRecipes, GroupedRecipeItemsSchema, GroupedRecipeGroupSchema, GroupedRecipesSchema, } from './recipes.js';
@@ -1 +1 @@
1
- export{AngleIndicatorProperties}from"./angle-indicator-schema.js";export{recipeListItemSchema,GroupedRecipeItemsSchema,GroupedRecipeGroupSchema,GroupedRecipesSchema}from"./recipes.js";export{ReactNodeSchema}from"./react-node-schema.js";export{SceneHtmlPositionProperties,SceneHtmlOpacityProperties,SceneHtmlVisibilityProperties,SceneHtmlTooltipProperties}from"./scene-entity-control-schema.js";export{DraggableSurfaceSchema}from"./dragging.js";export{ArrowHeadType,ArrowHeadTypeSchema}from"./dimension-indicators.js";export{EditableIndicatorButtonVariantSchema}from"./editable-indicator-button-variant.js";export{DimensionIndicatorBaseProperties,DimensionIndicatorProperties}from"./dimension-indicator-schema.js";export{MaterialOverrideProperties}from"./material-override-schema.js";
1
+ export{recipeListItemSchema,GroupedRecipeItemsSchema,GroupedRecipeGroupSchema,GroupedRecipesSchema}from"./recipes.js";export{ReactNodeSchema}from"./react-node-schema.js";export{SceneHtmlPositionProperties,SceneHtmlOpacityProperties,SceneHtmlVisibilityProperties,SceneHtmlTooltipProperties}from"./scene-entity-control-schema.js";export{DraggableSurfaceSchema}from"./dragging.js";export{MaterialOverrideProperties}from"./material-override-schema.js";
@@ -1,6 +1,5 @@
1
1
  import { type Localizable } from '@salsita-ai/common/utils';
2
- import type { DomainEntity } from '../../core/index.js';
3
- import { type EntityRecipe } from '../../domain-context/index.js';
2
+ import type { DomainEntity, EntityRecipe } from '../../core/index.js';
4
3
  export interface RecipeListItem {
5
4
  /**
6
5
  * Stable identifier of the recipe within its list, independent of the language and of the title.
@@ -1,4 +1,4 @@
1
- import type { ComponentSnapshot } from '../core/component.js';
1
+ import { type ComponentSnapshot } from '../core/index.js';
2
2
  /**
3
3
  * Spatial predicates the constraint framework supports. A trimmed subset
4
4
  * of the DE-9IM family — only the predicates we actually evaluate today.
@@ -1 +1 @@
1
- import{SystemComponentBuilder as t}from"../components/system-component-builder.js";export const constraintComponent=t.component("constraint").withState({type:"object",tsType:"ConstraintComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"ConstraintComponentState"}],properties:{spatial:{type:"array",items:{type:"object",properties:{predicate:{enum:["disjoint","touches","within"]},group:{type:"string"},container:{oneOf:[{type:"string"},{type:"null"}]},target:{type:"string"},enforce:{type:"boolean"}},required:["predicate"]}}},required:["spatial"],additionalProperties:!1}).build();export const isConstraintComponent=t=>"constraint"===t.componentInstance.componentType.name;
1
+ import{SystemComponentBuilder as t}from"../core/index.js";export const constraintComponent=t.component("constraint").withState({type:"object",tsType:"ConstraintComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"ConstraintComponentState"}],properties:{spatial:{type:"array",items:{type:"object",properties:{predicate:{enum:["disjoint","touches","within"]},group:{type:"string"},container:{oneOf:[{type:"string"},{type:"null"}]},target:{type:"string"},enforce:{type:"boolean"}},required:["predicate"]}}},required:["spatial"],additionalProperties:!1}).build();export const isConstraintComponent=t=>"constraint"===t.componentInstance.componentType.name;
@@ -1,4 +1,4 @@
1
- import type { DomainEntity } from '../core/model.js';
1
+ import type { DomainEntity } from '../core/index.js';
2
2
  import type { Blueprint } from './projected-entities.js';
3
3
  type BlueprintDefaults<ENTITY extends DomainEntity<string>> = Omit<ENTITY, 'id' | 'type' | 'parentId' | 'instanceName' | 'key'>;
4
4
  interface CreateBlueprintArgs<ENTITY extends DomainEntity<string>, DATA> {
@@ -1,5 +1,5 @@
1
1
  import { type ReactNode } from 'react';
2
- import { type ComponentInstance, type ComponentSnapshot } from '../core/component.js';
2
+ import { type ComponentInstance, type ComponentSnapshot } from '../core/index.js';
3
3
  export type CustomSceneEntityComponentState = {
4
4
  /**
5
5
  * Name of the PHX element to render in the scene (registered via theme slots)
@@ -1 +1 @@
1
- import{SystemComponentBuilder as t}from"../components/system-component-builder.js";import{isInstanceOfComponentType as e,isSnapshotOfComponentType as o}from"../core/component.js";import{ReactNodeSchema as n}from"./common/react-node-schema.js";export const customSceneEntityComponent=t.component("customSceneEntity").withState({type:"object",tsType:"CustomSceneEntityComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"CustomSceneEntityComponentState"}],properties:{name:{type:"string"},node:n},required:[],additionalProperties:!1}).build();export const isCustomSceneEntitySnapshot=o(customSceneEntityComponent);export const isCustomSceneEntityInstance=e(customSceneEntityComponent);
1
+ import{SystemComponentBuilder as t,isInstanceOfComponentType as e,isSnapshotOfComponentType as o}from"../core/index.js";import{ReactNodeSchema as n}from"./common/react-node-schema.js";export const customSceneEntityComponent=t.component("customSceneEntity").withState({type:"object",tsType:"CustomSceneEntityComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"CustomSceneEntityComponentState"}],properties:{name:{type:"string"},node:n},required:[],additionalProperties:!1}).build();export const isCustomSceneEntitySnapshot=o(customSceneEntityComponent);export const isCustomSceneEntityInstance=e(customSceneEntityComponent);
@@ -1 +1 @@
1
- import{EnhancedLocalizableSchema as t}from"@salsita-ai/common/utils";import{SystemComponentBuilder as e}from"../components/system-component-builder.js";export const detailComponent=e.component("detail").withState({type:"object",tsType:"DetailComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"DetailComponentState"}],properties:{title:t,subtitle:t,description:t,thumbnailUrl:t},required:["title","subtitle","description"],additionalProperties:!1}).build();
1
+ import{EnhancedLocalizableSchema as t}from"@salsita-ai/common/utils";import{SystemComponentBuilder as e}from"../core/index.js";export const detailComponent=e.component("detail").withState({type:"object",tsType:"DetailComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"DetailComponentState"}],properties:{title:t,subtitle:t,description:t,thumbnailUrl:t},required:["title","subtitle","description"],additionalProperties:!1}).build();