@salsita-ai/sdk 0.50.0-develop.ea458ea381 → 0.50.0-develop.f03b563886

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 (933) hide show
  1. package/README.md +20 -12
  2. package/dist/admin/create-admin-pages-from-spec.d.ts +1 -1
  3. package/dist/application-spec/generate-application/code/common/index.d.ts +1 -0
  4. package/dist/application-spec/generate-application/code/common/index.js +1 -1
  5. package/dist/application-spec/generate-application/code/common/project-module-list.d.ts +8 -0
  6. package/dist/application-spec/generate-application/code/common/project-module-list.js +3 -0
  7. package/dist/application-spec/generate-application/code/domain-runtime-files.js +1 -1
  8. package/dist/application-spec/generate-application/code/project-scaffolding.js +2 -2
  9. package/dist/application-spec/generate-application/code/templates/admin-domain-code.d.ts +1 -2
  10. package/dist/application-spec/generate-application/code/templates/admin-domain-code.js +6 -14
  11. package/dist/application-spec/generate-application/code/templates/admin-frontend-code.d.ts +1 -2
  12. package/dist/application-spec/generate-application/code/templates/admin-frontend-code.js +4 -4
  13. package/dist/application-spec/generate-application/code/templates/configurator-domain-code.d.ts +1 -2
  14. package/dist/application-spec/generate-application/code/templates/configurator-domain-code.js +7 -16
  15. package/dist/application-spec/generate-application/code/templates/configurator-frontend-code.d.ts +1 -2
  16. package/dist/application-spec/generate-application/code/templates/configurator-frontend-code.js +7 -9
  17. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-assistant.d.ts +2 -2
  18. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-assistant.js +1 -1
  19. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-domain-block.js +36 -36
  20. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.d.ts +1 -1
  21. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.js +1 -1
  22. package/dist/application-spec/generate-application/code/templates/domain-spec.js +4 -4
  23. package/dist/application-spec/generate-application/code/templates/domain.js +3 -3
  24. package/dist/application-spec/generate-application/code/templates/env-example.js +4 -0
  25. package/dist/application-spec/generate-application/code/templates/index.d.ts +1 -0
  26. package/dist/application-spec/generate-application/code/templates/index.js +1 -1
  27. package/dist/application-spec/generate-application/code/templates/skills/agents-md.js +1 -1
  28. package/dist/application-spec/generate-application/code/templates/skills/phoenix-cli-skill.js +1 -1
  29. package/dist/application-spec/generate-application/code/templates/skills/phoenix-create-configurator-skill.js +95 -41
  30. package/dist/application-spec/generate-application/code/templates/skills/phoenix-feedback-skill.js +39 -16
  31. package/dist/application-spec/generate-application/code/templates/skills/phoenix-review-skill.js +2 -2
  32. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill.js +1 -1
  33. package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.d.ts +1 -0
  34. package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.js +6 -0
  35. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.d.ts +30 -3
  36. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.js +19 -5
  37. package/dist/application-spec/generate-application/code/templates/webhook-builders.js +9 -4
  38. package/dist/application-spec/generate-application/code/templates/webhooks-config.js +2 -2
  39. package/dist/application-spec/generate-application/runtime/sections/assistant-runtime.d.ts +4 -3
  40. package/dist/application-spec/generate-application/runtime/sections/assistant-runtime.js +1 -1
  41. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.js +1 -1
  42. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-field-type.d.ts +3 -8
  43. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-field-type.js +1 -1
  44. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.d.ts +9 -43
  45. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.js +1 -1
  46. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-server-settings.d.ts +2 -2
  47. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant.d.ts +5 -21
  48. package/dist/client/authorized-client.d.ts +3 -1
  49. package/dist/client/authorized-client.js +1 -1
  50. package/dist/client/contract.d.ts +34 -0
  51. package/dist/client/contract.js +1 -1
  52. package/dist/client/index.d.ts +2 -2
  53. package/dist/client/index.js +1 -1
  54. package/dist/client/local-authorized-client.d.ts +3 -1
  55. package/dist/client/local-authorized-client.js +1 -1
  56. package/dist/client/memory-authorized-client.d.ts +3 -1
  57. package/dist/client/memory-authorized-client.js +1 -1
  58. package/dist/client/phoenix-api.d.ts +271 -30
  59. package/dist/configurator/application-runtime/extensions/selectors.js +1 -1
  60. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.d.ts +245 -13
  61. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.js +1 -1
  62. package/dist/configurator/application-runtime/extensions/systems/assistant-system/change-recorder.d.ts +85 -0
  63. package/dist/configurator/application-runtime/extensions/systems/assistant-system/change-recorder.js +1 -0
  64. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.d.ts +8 -3
  65. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.js +1 -1
  66. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.d.ts +4 -0
  67. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.js +1 -1
  68. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.d.ts +16 -1
  69. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.js +1 -1
  70. package/dist/configurator/application-runtime/extensions/systems/graphql-system/side-effects.d.ts +9 -0
  71. package/dist/configurator/application-runtime/extensions/systems/graphql-system/side-effects.js +1 -0
  72. package/dist/configurator/application-runtime/extensions/systems/index.d.ts +1 -1
  73. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.d.ts +2 -0
  74. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.js +1 -1
  75. package/dist/configurator/common/frontend-analytics.d.ts +21 -21
  76. package/dist/configurator/index.d.ts +0 -1
  77. package/dist/configurator/index.js +1 -1
  78. package/dist/configurator/pages/LoadedConfiguratorDetailPage.js +1 -1
  79. package/dist/configurator/scene/scene-analytics/scene-analytics.d.ts +2 -2
  80. package/dist/configurator/ui/assistant/AssistantChips.d.ts +11 -0
  81. package/dist/configurator/ui/assistant/AssistantChips.js +1 -0
  82. package/dist/configurator/ui/assistant/AssistantComposer.d.ts +7 -0
  83. package/dist/configurator/ui/assistant/AssistantComposer.js +1 -0
  84. package/dist/configurator/ui/assistant/AssistantMarkdown.d.ts +7 -0
  85. package/dist/configurator/ui/assistant/AssistantMarkdown.js +1 -0
  86. package/dist/configurator/ui/assistant/AssistantPanel.d.ts +11 -0
  87. package/dist/configurator/ui/assistant/AssistantPanel.js +1 -0
  88. package/dist/configurator/ui/assistant/AssistantThread.d.ts +10 -0
  89. package/dist/configurator/ui/assistant/AssistantThread.js +1 -0
  90. package/dist/configurator/ui/assistant/assistant-failure.d.ts +18 -0
  91. package/dist/configurator/ui/assistant/assistant-failure.js +1 -0
  92. package/dist/configurator/ui/assistant/index.d.ts +2 -0
  93. package/dist/configurator/ui/assistant/index.js +1 -0
  94. package/dist/configurator/ui/assistant/streamed-markdown.d.ts +6 -0
  95. package/dist/configurator/ui/assistant/streamed-markdown.js +2 -0
  96. package/dist/configurator/ui/assistant/theme.d.ts +2 -0
  97. package/dist/configurator/ui/assistant/theme.js +1 -0
  98. package/dist/configurator/ui/assistant/thread-items.d.ts +48 -0
  99. package/dist/configurator/ui/assistant/thread-items.js +1 -0
  100. package/dist/configurator/ui/assistant/tool-chip.d.ts +44 -0
  101. package/dist/configurator/ui/assistant/tool-chip.js +1 -0
  102. package/dist/configurator/ui/assistant/use-follow-stream.d.ts +17 -0
  103. package/dist/configurator/ui/assistant/use-follow-stream.js +1 -0
  104. package/dist/configurator/ui/assistant/use-is-assistant-panel-open.d.ts +5 -0
  105. package/dist/configurator/ui/assistant/use-is-assistant-panel-open.js +1 -0
  106. package/dist/configurator/ui/configurator-layout/universal/DesktopLayout.js +5 -5
  107. package/dist/configurator/ui/configurator-layout/universal/MobileLayout.d.ts +2 -0
  108. package/dist/configurator/ui/configurator-layout/universal/MobileLayout.js +4 -4
  109. package/dist/configurator/ui/legacy/mobile-controls/MobileControls.d.ts +1 -1
  110. package/dist/configurator/ui/phoenix-layout-elements/AssistantToolbarButton.d.ts +10 -0
  111. package/dist/configurator/ui/phoenix-layout-elements/AssistantToolbarButton.js +1 -0
  112. package/dist/configurator/ui/phoenix-layout-elements/index.d.ts +1 -0
  113. package/dist/configurator/ui/phoenix-layout-elements/index.js +1 -1
  114. package/dist/docs/complex-use-cases/filtered-controls-with-fix-dialog.mdx +84 -98
  115. package/dist/docs/complex-use-cases/navigation-reset-selection.mdx +18 -12
  116. package/dist/docs/index.json +1 -1
  117. package/dist/docs/layouts/custom-price.mdx +14 -16
  118. package/dist/docs/layouts/sidebar/tabs.mdx +24 -21
  119. package/dist/docs/layouts/toolbar.mdx +6 -0
  120. package/dist/docs/other-features/domain-actions.mdx +1 -1
  121. package/dist/docs/other-features/side-effects.mdx +68 -34
  122. package/dist/docs/other-features/transformers.mdx +1 -1
  123. package/dist/docs/phoenix/admin.mdx +11 -26
  124. package/dist/docs/phoenix/deployments.mdx +1 -1
  125. package/dist/docs/phoenix/expression-context.mdx +11 -3
  126. package/dist/docs/phoenix/finalization.mdx +1 -1
  127. package/dist/docs/phoenix/integration/headless-mode-external.mdx +5 -5
  128. package/dist/docs/phoenix/integration/widget-mode-external.mdx +5 -5
  129. package/dist/docs/phoenix/localization.mdx +3 -22
  130. package/dist/docs/phoenix/phoenix-cli.mdx +159 -39
  131. package/dist/docs/phoenix/project-structure.mdx +10 -3
  132. package/dist/docs/phoenix/sdk-builder-workflow.mdx +13 -11
  133. package/dist/docs/recipes-and-delete/recipe-hierarchy-selection.mdx +15 -13
  134. package/dist/docs/relations/hierarchy.mdx +13 -2
  135. package/dist/docs/ux-guidelines/choosing-a-control.mdx +11 -0
  136. package/dist/domain/admin-domain/__generated/enhanced-model.d.ts +1 -2
  137. package/dist/domain/admin-domain/__generated/model/versions/v1.d.ts +1 -1
  138. package/dist/domain/admin-domain/__generated/model/versions/v2.d.ts +1 -1
  139. package/dist/domain/admin-domain/__generated/model/versions/v3.d.ts +1 -1
  140. package/dist/domain/admin-domain/__generated/model/versions/v4.d.ts +1 -1
  141. package/dist/domain/admin-domain/__generated/model/versions/v5.d.ts +1 -1
  142. package/dist/domain/admin-domain/__generated/model/versions/v6.d.ts +2 -2
  143. package/dist/domain/admin-domain/__generated/model/versions/v6.js +1 -1
  144. package/dist/domain/admin-domain/implementation/common-admin-expressions.d.ts +10 -13
  145. package/dist/domain/admin-domain/implementation/common-admin-migrations.d.ts +1 -1
  146. package/dist/domain/admin-domain/index.d.ts +9 -5
  147. package/dist/domain/admin-domain/index.js +1 -1
  148. package/dist/domain/application/admin-page-factories.d.ts +1 -2
  149. package/dist/domain/application/application-config.d.ts +24 -94
  150. package/dist/domain/application/assistant/assistant-manifest.d.ts +63 -0
  151. package/dist/domain/application/assistant/assistant-resolved-manifest.d.ts +95 -0
  152. package/dist/domain/application/assistant/assistant-value-type.d.ts +9 -0
  153. package/dist/domain/application/assistant/assistant-value-type.js +1 -0
  154. package/dist/domain/application/assistant/build-assistant-manifest.d.ts +4 -0
  155. package/dist/domain/application/assistant/build-assistant-manifest.js +1 -0
  156. package/dist/domain/application/assistant/generate-assistant-prompt.d.ts +3 -0
  157. package/dist/domain/application/assistant/generate-assistant-prompt.js +1 -0
  158. package/dist/domain/application/assistant/index.d.ts +4 -0
  159. package/dist/domain/application/assistant/index.js +1 -0
  160. package/dist/domain/application/assistant-field-options.d.ts +2 -3
  161. package/dist/domain/application/assistant-mutations.d.ts +3 -5
  162. package/dist/domain/application/assistant-mutations.js +1 -1
  163. package/dist/domain/application/assistant-recipe-groups.d.ts +2 -6
  164. package/dist/domain/application/configurator-builder.d.ts +33 -18
  165. package/dist/domain/application/configurator-builder.js +1 -1
  166. package/dist/domain/application/element-registration.d.ts +5 -0
  167. package/dist/domain/application/element-registration.js +1 -1
  168. package/dist/domain/application/handler-registration.d.ts +5 -0
  169. package/dist/domain/application/handler-registration.js +1 -1
  170. package/dist/domain/application/index.d.ts +6 -5
  171. package/dist/domain/application/index.js +1 -1
  172. package/dist/domain/application/published-data/build-legend-data.d.ts +1 -1
  173. package/dist/domain/application/published-data/create-finalize-admin-domain.d.ts +1 -2
  174. package/dist/domain/application/published-data/format-field-type.d.ts +1 -1
  175. package/dist/domain/application/published-data/map-data-to-sheet.d.ts +1 -1
  176. package/dist/domain/application/published-data/map-published-chunked-data.d.ts +2 -2
  177. package/dist/domain/application/published-data/map-published-data.d.ts +1 -2
  178. package/dist/domain/application/published-data/validate-sheet-data.d.ts +1 -1
  179. package/dist/domain/application/resolve-imported-transformers.d.ts +12 -2
  180. package/dist/domain/application/resolve-imported-transformers.js +1 -1
  181. package/dist/domain/available-system-components.js +1 -1
  182. package/dist/domain/core/action/action-factory.d.ts +11 -0
  183. package/dist/domain/core/{action.d.ts → action/action.d.ts} +22 -18
  184. package/dist/domain/core/action/index.d.ts +2 -0
  185. package/dist/domain/core/action/index.js +1 -0
  186. package/dist/domain/{components → core/component}/component-reader-types.d.ts +1 -2
  187. package/dist/domain/{components → core/component}/debug-state-component.d.ts +1 -1
  188. package/dist/domain/core/component/debug-state-component.js +1 -0
  189. package/dist/domain/{components → core/component}/domain-component-optic.d.ts +36 -39
  190. package/dist/domain/{components → core/component}/domain-component-optic.js +2 -2
  191. package/dist/domain/{components → core/component}/drag-state-component.d.ts +1 -1
  192. package/dist/domain/core/component/drag-state-component.js +1 -0
  193. package/dist/domain/{components → core/component}/export-state-component.d.ts +1 -1
  194. package/dist/domain/core/component/export-state-component.js +1 -0
  195. package/dist/domain/{components → core/component}/fullscreen-state-component.d.ts +1 -1
  196. package/dist/domain/core/component/fullscreen-state-component.js +1 -0
  197. package/dist/domain/{components → core/component}/group-components-by-entity-id-and-name.d.ts +1 -2
  198. package/dist/domain/core/component/group-components-by-entity-id-and-name.js +1 -0
  199. package/dist/domain/{components → core/component}/hover-state-component.d.ts +1 -1
  200. package/dist/domain/core/component/hover-state-component.js +1 -0
  201. package/dist/domain/core/component/index.d.ts +18 -0
  202. package/dist/domain/core/component/index.js +1 -0
  203. package/dist/domain/{components → core/component}/legacy-filter.d.ts +2 -2
  204. package/dist/domain/{components → core/component}/navigation-state-component.d.ts +1 -1
  205. package/dist/domain/core/component/navigation-state-component.js +1 -0
  206. package/dist/domain/{components → core/component}/selection-state-component.d.ts +1 -1
  207. package/dist/domain/core/component/selection-state-component.js +1 -0
  208. package/dist/domain/{components → core/component}/system-component-builder.d.ts +1 -2
  209. package/dist/domain/core/component/system-component-builder.js +1 -0
  210. package/dist/domain/{components → core/component}/system-component-filter.d.ts +19 -19
  211. package/dist/domain/core/component/system-virtual-entity.js +1 -0
  212. package/dist/domain/{components → core/component}/tool-state-component.d.ts +1 -1
  213. package/dist/domain/core/component/tool-state-component.js +1 -0
  214. package/dist/domain/{components → core/component}/updates.d.ts +17 -2
  215. package/dist/domain/{components → core/component}/view-state-component.d.ts +1 -1
  216. package/dist/domain/core/component/view-state-component.js +1 -0
  217. package/dist/domain/{components → core/component}/viewport-state-component.d.ts +1 -1
  218. package/dist/domain/core/component/viewport-state-component.js +1 -0
  219. package/dist/domain/core/data-schema/data-cell-value.d.ts +4 -0
  220. package/dist/domain/core/data-schema/data-schema-array-field.d.ts +5 -0
  221. package/dist/domain/core/data-schema/data-schema-field-object.d.ts +4 -0
  222. package/dist/domain/core/data-schema/data-schema-field.d.ts +2 -0
  223. package/dist/domain/core/data-schema/data-schema-field.js +1 -0
  224. package/dist/domain/core/data-schema/data-schema-localized-field.d.ts +4 -0
  225. package/dist/domain/core/data-schema/data-schema-localized-field.js +1 -0
  226. package/dist/domain/core/data-schema/data-schema-primitive-field.d.ts +5 -0
  227. package/dist/domain/core/data-schema/data-schema-primitive-field.js +1 -0
  228. package/dist/domain/core/data-schema/data-schema.d.ts +2 -0
  229. package/dist/domain/core/data-schema/data-schema.js +1 -0
  230. package/dist/domain/core/data-schema/index.d.ts +7 -0
  231. package/dist/domain/core/data-schema/index.js +1 -0
  232. package/dist/domain/core/decoder/create-decoder.d.ts +6 -0
  233. package/dist/domain/core/decoder/create-decoder.js +1 -0
  234. package/dist/domain/core/decoder/decoder.d.ts +6 -0
  235. package/dist/domain/core/decoder/decoder.js +1 -0
  236. package/dist/domain/core/decoder/index.d.ts +2 -0
  237. package/dist/domain/core/decoder/index.js +1 -0
  238. package/dist/domain/core/domain-factory.d.ts +4 -5
  239. package/dist/domain/core/domain-factory.js +1 -1
  240. package/dist/domain/core/domain.d.ts +4 -5
  241. package/dist/domain/core/domain.js +1 -1
  242. package/dist/domain/core/emission/index.d.ts +8 -0
  243. package/dist/domain/core/emission/index.js +1 -0
  244. package/dist/domain/core/emission/reset-state-emission.d.ts +12 -0
  245. package/dist/domain/core/emission/reset-state-emission.js +1 -0
  246. package/dist/domain/core/emission/state-emission.d.ts +4 -0
  247. package/dist/domain/core/emission/state-emission.js +1 -0
  248. package/dist/domain/core/emission/state-update-emission.d.ts +14 -0
  249. package/dist/domain/core/emission/state-update-emission.js +1 -0
  250. package/dist/domain/core/emission/state-validation-result.d.ts +18 -0
  251. package/dist/domain/core/emission/state-validation-result.js +1 -0
  252. package/dist/domain/core/emission/transformation-log.d.ts +2 -0
  253. package/dist/domain/core/emission/transformation-log.js +1 -0
  254. package/dist/domain/core/emission/transformer-log-entry.d.ts +6 -0
  255. package/dist/domain/core/emission/transformer-log-entry.js +1 -0
  256. package/dist/domain/core/emission/transformer-log.d.ts +11 -0
  257. package/dist/domain/core/emission/transformer-log.js +1 -0
  258. package/dist/domain/core/emission/transformer-phase.d.ts +1 -0
  259. package/dist/domain/core/emission/transformer-phase.js +1 -0
  260. package/dist/domain/core/expression/aliased-expressions.d.ts +10 -0
  261. package/dist/domain/core/expression/aliased-expressions.js +1 -0
  262. package/dist/domain/{expressions → core/expression}/constant-expressions.d.ts +2 -3
  263. package/dist/domain/core/expression/constant-expressions.js +1 -0
  264. package/dist/domain/{expressions → core/expression}/custom-expression.d.ts +9 -10
  265. package/dist/domain/core/expression/custom-expression.js +1 -0
  266. package/dist/domain/core/{expression.d.ts → expression/expression.d.ts} +17 -20
  267. package/dist/domain/core/expression/expression.js +1 -0
  268. package/dist/domain/core/expression/index.d.ts +4 -0
  269. package/dist/domain/core/expression/index.js +1 -0
  270. package/dist/domain/core/index.d.ts +13 -17
  271. package/dist/domain/core/index.js +1 -1
  272. package/dist/domain/{invariants → core/invariant}/builtin-invariant.d.ts +2 -2
  273. package/dist/domain/{invariants → core/invariant}/custom-invariants.d.ts +7 -8
  274. package/dist/domain/core/invariant/custom-invariants.js +1 -0
  275. package/dist/domain/core/invariant/index.d.ts +5 -0
  276. package/dist/domain/core/invariant/index.js +1 -0
  277. package/dist/domain/core/invariant/invariants.d.ts +13 -0
  278. package/dist/domain/core/invariant/invariants.js +1 -0
  279. package/dist/domain/core/invariant/violation-component.js +1 -0
  280. package/dist/domain/{invariants → core/invariant}/violation.d.ts +2 -2
  281. package/dist/domain/core/{component.d.ts → model/component.d.ts} +1 -1
  282. package/dist/domain/core/model/index.d.ts +6 -0
  283. package/dist/domain/core/model/index.js +1 -0
  284. package/dist/domain/core/{reflection.d.ts → model/reflection.d.ts} +1 -1
  285. package/dist/domain/core/model/reflection.js +1 -0
  286. package/dist/domain/core/recipe/index.d.ts +1 -0
  287. package/dist/domain/core/recipe/index.js +1 -0
  288. package/dist/domain/{domain-context/recipe-system → core/recipe}/recipes.d.ts +1 -3
  289. package/dist/domain/core/recipe/recipes.js +1 -0
  290. package/dist/domain/{relations → core/relation}/all-of-type-relation.d.ts +3 -4
  291. package/dist/domain/core/relation/all-of-type-relation.js +1 -0
  292. package/dist/domain/{relations → core/relation}/component-factories.d.ts +1 -2
  293. package/dist/domain/core/relation/component-factories.js +1 -0
  294. package/dist/domain/{relations → core/relation}/composed-of.d.ts +1 -1
  295. package/dist/domain/core/relation/composed-of.js +1 -0
  296. package/dist/domain/{relations → core/relation}/direct-relation.d.ts +2 -3
  297. package/dist/domain/core/relation/index.d.ts +9 -0
  298. package/dist/domain/core/relation/index.js +1 -0
  299. package/dist/domain/{relations → core/relation}/indirect-relation.d.ts +3 -4
  300. package/dist/domain/core/relation/indirect-relation.js +1 -0
  301. package/dist/domain/{relations → core/relation}/reference-component.d.ts +4 -5
  302. package/dist/domain/core/relation/reference-component.js +1 -0
  303. package/dist/domain/{relations → core/relation}/reference-field.d.ts +1 -1
  304. package/dist/domain/core/relation/reference-field.js +1 -0
  305. package/dist/domain/{relations → core/relation}/relation-factory.d.ts +2 -3
  306. package/dist/domain/{relations → core/relation}/relation-implementation.d.ts +3 -4
  307. package/dist/domain/core/relation/relation-implementation.js +1 -0
  308. package/dist/domain/core/schema/enhanced-json-schema.js +1 -0
  309. package/dist/domain/core/schema/extended-schema-validator.js +1 -0
  310. package/dist/domain/core/schema/index.d.ts +3 -0
  311. package/dist/domain/core/schema/index.js +1 -0
  312. package/dist/domain/core/schema/schema-validator.js +1 -0
  313. package/dist/domain/core/state/id-sequence.d.ts +15 -0
  314. package/dist/domain/core/state/id-sequence.js +1 -0
  315. package/dist/domain/core/state/index.d.ts +3 -0
  316. package/dist/domain/core/state/index.js +1 -0
  317. package/dist/domain/core/{migrations.d.ts → state/migrations.d.ts} +1 -2
  318. package/dist/domain/core/{state.d.ts → state/state.d.ts} +1 -2
  319. package/dist/domain/domain-builder.d.ts +11 -11
  320. package/dist/domain/domain-builder.js +1 -1
  321. package/dist/domain/domain-context/action-system/action-system.d.ts +2 -4
  322. package/dist/domain/domain-context/action-system/action-system.js +1 -1
  323. package/dist/domain/domain-context/create-transformer.d.ts +1 -1
  324. package/dist/domain/domain-context/dimension-system/dimension-state.js +1 -1
  325. package/dist/domain/domain-context/dimension-system/dimension-system.d.ts +1 -2
  326. package/dist/domain/domain-context/domain-context-systems.d.ts +1 -3
  327. package/dist/domain/domain-context/index.d.ts +3 -4
  328. package/dist/domain/domain-context/index.js +1 -1
  329. package/dist/domain/domain-context/navigation-system/navigation-system.d.ts +3 -5
  330. package/dist/domain/domain-context/navigation-system/navigation-system.js +1 -1
  331. package/dist/domain/domain-context/navigation-system/navigation-updates.d.ts +1 -12
  332. package/dist/domain/domain-context/navigation-system/navigation-updates.js +1 -1
  333. package/dist/domain/domain-context/navigation-system/selection-transformers.d.ts +1 -1
  334. package/dist/domain/domain-context/navigation-system/selection-transformers.js +1 -1
  335. package/dist/domain/domain-context/recipe-system/recipe-cooker-system.d.ts +1 -3
  336. package/dist/domain/domain-context/recipe-system/recipe-cooker-system.js +1 -1
  337. package/dist/domain/domain-context/relation-transformers/cascade-deletes.d.ts +1 -1
  338. package/dist/domain/domain-context/relation-transformers/cascade-deletes.js +1 -1
  339. package/dist/domain/domain-context/relation-transformers/cascade-ref-pruning.d.ts +1 -1
  340. package/dist/domain/domain-context/relation-transformers/cascade-ref-pruning.js +1 -1
  341. package/dist/domain/domain-context/relation-transformers/create-entity-refs.d.ts +1 -1
  342. package/dist/domain/domain-context/relation-transformers/create-entity-refs.js +2 -2
  343. package/dist/domain/domain-context/relation-transformers/replace-refs.d.ts +1 -1
  344. package/dist/domain/domain-context/relation-transformers/replace-refs.js +1 -1
  345. package/dist/domain/domain-context/store-system/apply-updates.d.ts +1 -3
  346. package/dist/domain/domain-context/store-system/apply-updates.js +1 -1
  347. package/dist/domain/domain-context/store-system/next-domain-entity-id.d.ts +1 -13
  348. package/dist/domain/domain-context/store-system/next-domain-entity-id.js +1 -1
  349. package/dist/domain/domain-context/store-system/reconcile-projected-entities.d.ts +1 -2
  350. package/dist/domain/domain-context/store-system/reconcile-projected-entities.js +1 -1
  351. package/dist/domain/domain-context/store-system/store-system.d.ts +1 -36
  352. package/dist/domain/domain-context/store-system/store-system.js +2 -2
  353. package/dist/domain/domain-context/store-system/system-state.d.ts +1 -3
  354. package/dist/domain/domain-context/store-system/system-state.js +1 -1
  355. package/dist/domain/domain-context/transformers/actions-builder.d.ts +1 -2
  356. package/dist/domain/domain-context/transformers/actions-builder.js +1 -1
  357. package/dist/domain/domain-context/transformers/auto-snap-transformer.d.ts +1 -3
  358. package/dist/domain/domain-context/transformers/chain-builder.d.ts +2 -2
  359. package/dist/domain/domain-context/transformers/context.d.ts +1 -6
  360. package/dist/domain/domain-context/transformers/entity-builder.d.ts +1 -5
  361. package/dist/domain/domain-context/transformers/entity-builder.js +1 -1
  362. package/dist/domain/domain-context/transformers/then-builder.d.ts +1 -2
  363. package/dist/domain/domain-context/transformers/then-builder.js +1 -1
  364. package/dist/domain/domain-context/transformers/when-builder.d.ts +1 -6
  365. package/dist/domain/domain-context/transformers/when-builder.js +1 -1
  366. package/dist/domain/domain-context/undo-system.d.ts +1 -2
  367. package/dist/domain/domain-runtime/domain-context/action-context.d.ts +11 -0
  368. package/dist/domain/domain-runtime/domain-context/action-context.js +1 -0
  369. package/dist/domain/domain-runtime/domain-context/component-reader.d.ts +1 -4
  370. package/dist/domain/domain-runtime/domain-context/component-reader.js +1 -1
  371. package/dist/domain/domain-runtime/domain-context/expression-context.d.ts +8 -0
  372. package/dist/domain/domain-runtime/domain-context/expression-context.js +1 -0
  373. package/dist/domain/domain-runtime/domain-context/index.d.ts +3 -0
  374. package/dist/domain/domain-runtime/domain-context/runtime-expression-context.d.ts +18 -0
  375. package/dist/domain/domain-runtime/domain-context/runtime-expression-context.js +1 -0
  376. package/dist/domain/domain-runtime/domain-context/selectors.d.ts +3 -4
  377. package/dist/domain/domain-runtime/domain-context/selectors.js +1 -1
  378. package/dist/domain/domain-runtime/domain-runtime.d.ts +12 -12
  379. package/dist/domain/domain-runtime/spec/index.d.ts +8 -0
  380. package/dist/domain/domain-runtime/spec/index.js +1 -1
  381. package/dist/domain/domain-runtime/spec/initialize.js +1 -1
  382. package/dist/domain/{invariants/invariants.d.ts → domain-runtime/spec/invariant-builder.d.ts} +7 -14
  383. package/dist/domain/domain-runtime/spec/invariant-builder.js +1 -0
  384. package/dist/domain/{expressions → domain-runtime/spec}/memoize-expression.d.ts +1 -2
  385. package/dist/domain/{actions → domain-runtime/spec}/prepare-action-implementations.d.ts +1 -1
  386. package/dist/domain/domain-runtime/spec/prepare-action-implementations.js +5 -0
  387. package/dist/domain/{expressions → domain-runtime/spec}/prepare-domain-expressions.d.ts +1 -1
  388. package/dist/domain/domain-runtime/spec/resolve-action-modules.d.ts +4 -0
  389. package/dist/domain/domain-runtime/spec/resolve-action-modules.js +1 -0
  390. package/dist/domain/domain-runtime/spec/resolve-component-optic-modules.d.ts +4 -0
  391. package/dist/domain/domain-runtime/spec/resolve-component-optic-modules.js +1 -0
  392. package/dist/domain/domain-runtime/spec/resolve-expression-modules.d.ts +15 -0
  393. package/dist/domain/domain-runtime/spec/resolve-expression-modules.js +1 -0
  394. package/dist/domain/domain-runtime/spec/resolve-invariant-modules.d.ts +6 -0
  395. package/dist/domain/domain-runtime/spec/resolve-invariant-modules.js +1 -0
  396. package/dist/domain/domain-runtime/spec/selectors.d.ts +2 -2
  397. package/dist/domain/domain-runtime/spec/selectors.js +1 -1
  398. package/dist/domain/domain-runtime/spec/types.d.ts +4 -5
  399. package/dist/domain/{system-components → extensions}/angle-indicator.d.ts +1 -1
  400. package/dist/domain/extensions/angle-indicator.js +1 -0
  401. package/dist/domain/extensions/attribute-switch.js +1 -0
  402. package/dist/domain/{system-components → extensions}/autorotate-camera-component.d.ts +1 -1
  403. package/dist/domain/extensions/autorotate-camera-component.js +1 -0
  404. package/dist/domain/{system-components → extensions}/basic-sidebar-footer.d.ts +1 -1
  405. package/dist/domain/extensions/basic-sidebar-footer.js +1 -0
  406. package/dist/domain/extensions/camera-based-hidden-entity-object.js +1 -0
  407. package/dist/domain/extensions/camera-based-hidden-entity.js +1 -0
  408. package/dist/domain/{system-components → extensions}/canvas-config.d.ts +1 -1
  409. package/dist/domain/extensions/canvas-config.js +1 -0
  410. package/dist/domain/extensions/canvas-custom-environment.js +1 -0
  411. package/dist/domain/{system-components → extensions}/canvas-padding.d.ts +1 -1
  412. package/dist/domain/extensions/canvas-padding.js +1 -0
  413. package/dist/domain/{system-components → extensions}/canvas-preset-environment.d.ts +1 -1
  414. package/dist/domain/extensions/canvas-preset-environment.js +1 -0
  415. package/dist/domain/{system-components → extensions}/child-entity-recipe-hierarchy.d.ts +2 -2
  416. package/dist/domain/extensions/child-entity-recipe-hierarchy.js +1 -0
  417. package/dist/domain/extensions/client-side-image.js +1 -0
  418. package/dist/domain/extensions/color-value.js +1 -0
  419. package/dist/domain/{system-components → extensions}/common/angle-indicator-schema.d.ts +1 -1
  420. package/dist/domain/extensions/common/angle-indicator-schema.js +1 -0
  421. package/dist/domain/{system-components → extensions}/common/dimension-indicator-schema.d.ts +1 -1
  422. package/dist/domain/extensions/common/dimension-indicator-schema.js +1 -0
  423. package/dist/domain/extensions/common/index.d.ts +4 -0
  424. package/dist/domain/extensions/common/index.js +1 -0
  425. package/dist/domain/{system-components → extensions}/custom-header.d.ts +2 -2
  426. package/dist/domain/{system-components → extensions}/custom-header.js +1 -1
  427. package/dist/domain/extensions/custom-price-footer.js +1 -0
  428. package/dist/domain/{system-components → extensions}/custom-sidebar-footer.d.ts +2 -2
  429. package/dist/domain/{system-components → extensions}/custom-sidebar-footer.js +1 -1
  430. package/dist/domain/{system-components → extensions}/dimension-indicator.d.ts +1 -1
  431. package/dist/domain/extensions/dimension-indicator.js +1 -0
  432. package/dist/domain/{system-components → extensions}/editable-angle-indicator.d.ts +3 -2
  433. package/dist/domain/extensions/editable-angle-indicator.js +1 -0
  434. package/dist/domain/{system-components → extensions}/editable-distance-dimension-indicator.d.ts +3 -2
  435. package/dist/domain/extensions/editable-distance-dimension-indicator.js +1 -0
  436. package/dist/domain/{system-components → extensions}/editable-offset-indicator.d.ts +3 -2
  437. package/dist/domain/extensions/editable-offset-indicator.js +1 -0
  438. package/dist/domain/{system-components → extensions}/editable-size-indicator.d.ts +3 -2
  439. package/dist/domain/extensions/editable-size-indicator.js +1 -0
  440. package/dist/domain/{system-components → extensions}/entity-header.d.ts +1 -1
  441. package/dist/domain/extensions/entity-header.js +1 -0
  442. package/dist/domain/{system-components → extensions}/exit-tool-mode-fab.d.ts +1 -1
  443. package/dist/domain/extensions/exit-tool-mode-fab.js +1 -0
  444. package/dist/domain/{system-components → extensions}/finalize-action.d.ts +1 -1
  445. package/dist/domain/extensions/finalize-action.js +1 -0
  446. package/dist/domain/extensions/finalize-component.js +1 -0
  447. package/dist/domain/extensions/fit-selection-orthographic-camera-component.js +1 -0
  448. package/dist/domain/extensions/fit-selection-perspective-camera-component.js +1 -0
  449. package/dist/domain/{system-components → extensions}/fixed-header.d.ts +1 -1
  450. package/dist/domain/extensions/fixed-header.js +1 -0
  451. package/dist/domain/{system-components → extensions}/floating-header.d.ts +1 -1
  452. package/dist/domain/extensions/floating-header.js +1 -0
  453. package/dist/domain/{system-components → extensions}/hidden-header.d.ts +1 -1
  454. package/dist/domain/extensions/hidden-header.js +1 -0
  455. package/dist/domain/{system-components → extensions}/hidden-sidebar-footer.d.ts +1 -1
  456. package/dist/domain/extensions/hidden-sidebar-footer.js +1 -0
  457. package/dist/domain/{system-components → extensions}/horizontal-tabs.d.ts +1 -1
  458. package/dist/domain/extensions/horizontal-tabs.js +1 -0
  459. package/dist/domain/extensions/index.d.ts +69 -0
  460. package/dist/domain/extensions/index.js +1 -0
  461. package/dist/domain/{system-components → extensions}/list-selector-dimension-indicator.d.ts +3 -2
  462. package/dist/domain/extensions/list-selector-dimension-indicator.js +1 -0
  463. package/dist/domain/extensions/multilingual-text-value.js +1 -0
  464. package/dist/domain/extensions/navigation-steps.js +1 -0
  465. package/dist/domain/{system-components → extensions}/offset-anchors.d.ts +1 -1
  466. package/dist/domain/extensions/offset-anchors.js +1 -0
  467. package/dist/domain/{system-components → extensions}/offset-indicator.d.ts +1 -2
  468. package/dist/domain/extensions/offset-indicator.js +1 -0
  469. package/dist/domain/{system-components → extensions}/offset.d.ts +1 -1
  470. package/dist/domain/extensions/offset.js +1 -0
  471. package/dist/domain/{system-components → extensions}/other-action.d.ts +1 -1
  472. package/dist/domain/extensions/other-action.js +1 -0
  473. package/dist/domain/{system-components → extensions}/property-page.d.ts +2 -2
  474. package/dist/domain/extensions/property-page.js +1 -0
  475. package/dist/domain/{system-components → extensions}/read-sidebar-footer.d.ts +1 -1
  476. package/dist/domain/extensions/read-sidebar-footer.js +1 -0
  477. package/dist/domain/{system-components → extensions}/replace-entity-recipe-hierarchy.d.ts +2 -2
  478. package/dist/domain/extensions/replace-entity-recipe-hierarchy.js +1 -0
  479. package/dist/domain/extensions/rotatable.js +1 -0
  480. package/dist/domain/extensions/rotation-handle.js +1 -0
  481. package/dist/domain/extensions/save-template-thumbnail.js +1 -0
  482. package/dist/domain/{system-components → extensions}/scene-entity-add-fab.d.ts +1 -1
  483. package/dist/domain/extensions/scene-entity-add-fab.js +1 -0
  484. package/dist/domain/extensions/scene-entity-animation.js +1 -0
  485. package/dist/domain/extensions/scene-entity-control.js +1 -0
  486. package/dist/domain/{system-components → extensions}/scene-entity-delete-fab.d.ts +1 -1
  487. package/dist/domain/extensions/scene-entity-delete-fab.js +1 -0
  488. package/dist/domain/extensions/scene-entity-floor-object.js +1 -0
  489. package/dist/domain/{system-components → extensions}/scene-entity-html-hotspot.d.ts +1 -1
  490. package/dist/domain/extensions/scene-entity-html-hotspot.js +1 -0
  491. package/dist/domain/{system-components → extensions}/scene-entity-navigation-hotspot.d.ts +1 -1
  492. package/dist/domain/extensions/scene-entity-navigation-hotspot.js +1 -0
  493. package/dist/domain/{system-components → extensions}/scene-entity-object-html-hotspot.d.ts +1 -1
  494. package/dist/domain/extensions/scene-entity-object-html-hotspot.js +1 -0
  495. package/dist/domain/{system-components → extensions}/scene-entity-select-hotspot.d.ts +1 -1
  496. package/dist/domain/extensions/scene-entity-select-hotspot.js +1 -0
  497. package/dist/domain/extensions/scene-entity-wall-object.js +1 -0
  498. package/dist/domain/extensions/selectable-component.js +1 -0
  499. package/dist/domain/{system-components → extensions}/sidebar-tabs.d.ts +1 -1
  500. package/dist/domain/extensions/sidebar-tabs.js +1 -0
  501. package/dist/domain/extensions/simple-summary.js +1 -0
  502. package/dist/domain/{system-components → extensions}/size.d.ts +1 -1
  503. package/dist/domain/extensions/size.js +1 -0
  504. package/dist/domain/{system-components → extensions}/sketching-draw.d.ts +1 -1
  505. package/dist/domain/extensions/sketching-draw.js +1 -0
  506. package/dist/domain/{system-components → extensions}/sketching-edit.d.ts +2 -2
  507. package/dist/domain/extensions/sketching-edit.js +1 -0
  508. package/dist/domain/extensions/summary-component.js +1 -0
  509. package/dist/domain/extensions/text-value.js +1 -0
  510. package/dist/domain/extensions/tool-controls.js +1 -0
  511. package/dist/domain/{system-components → extensions}/tool-menu-fab.d.ts +2 -2
  512. package/dist/domain/extensions/tool-menu-fab.js +1 -0
  513. package/dist/domain/{system-components → extensions}/toolbar.d.ts +2 -2
  514. package/dist/domain/{system-components → extensions}/toolbar.js +1 -1
  515. package/dist/domain/{system-components → extensions}/universal-sidebar-footer.d.ts +1 -1
  516. package/dist/domain/extensions/universal-sidebar-footer.js +1 -0
  517. package/dist/domain/extensions/view-controls.js +1 -0
  518. package/dist/domain/index.d.ts +3 -32
  519. package/dist/domain/index.js +1 -1
  520. package/dist/domain/mocks/create-mock-domain-runtime.d.ts +3 -3
  521. package/dist/domain/mocks/create-mock-domain-runtime.js +1 -1
  522. package/dist/domain/project-modules/index.d.ts +1 -0
  523. package/dist/domain/project-modules/index.js +1 -0
  524. package/dist/domain/project-modules/project-modules.d.ts +25 -0
  525. package/dist/domain/project-modules/project-modules.js +1 -0
  526. package/dist/domain/projections/blender-projections/blender-projections.d.ts +1 -1
  527. package/dist/domain/projections/blender-projections/blender-projections.js +1 -1
  528. package/dist/domain/projections/composition-projections.js +1 -1
  529. package/dist/domain/projections/index.d.ts +1 -1
  530. package/dist/domain/projections/projected-entities-projections.d.ts +1 -2
  531. package/dist/domain/projections/snap-matching.d.ts +1 -2
  532. package/dist/domain/projections/snap-utils.d.ts +1 -2
  533. package/dist/domain/projections/validation-projections.d.ts +1 -18
  534. package/dist/domain/projections/validation-projections.js +1 -1
  535. package/dist/domain/system-components/admin-sidebar.d.ts +1 -1
  536. package/dist/domain/system-components/admin-sidebar.js +1 -1
  537. package/dist/domain/system-components/angle-dimension.js +1 -1
  538. package/dist/domain/system-components/application-config.d.ts +1 -1
  539. package/dist/domain/system-components/application-config.js +1 -1
  540. package/dist/domain/system-components/attribute-selection.js +1 -1
  541. package/dist/domain/system-components/bounding-box-component.d.ts +1 -1
  542. package/dist/domain/system-components/bounding-box-component.js +1 -1
  543. package/dist/domain/system-components/bounding-sphere-component.d.ts +1 -1
  544. package/dist/domain/system-components/bounding-sphere-component.js +1 -1
  545. package/dist/domain/system-components/child-entity-recipes.d.ts +1 -1
  546. package/dist/domain/system-components/child-entity-recipes.js +1 -1
  547. package/dist/domain/system-components/child-entity-selection.d.ts +1 -2
  548. package/dist/domain/system-components/child-entity-selection.js +1 -1
  549. package/dist/domain/system-components/collision-box-geometry.d.ts +1 -1
  550. package/dist/domain/system-components/collision-box-geometry.js +1 -1
  551. package/dist/domain/system-components/collision-geometries.d.ts +1 -1
  552. package/dist/domain/system-components/collision-geometry.d.ts +1 -1
  553. package/dist/domain/system-components/collision-geometry.js +1 -1
  554. package/dist/domain/system-components/collision-point-geometry.d.ts +1 -1
  555. package/dist/domain/system-components/collision-point-geometry.js +1 -1
  556. package/dist/domain/system-components/common/index.d.ts +0 -4
  557. package/dist/domain/system-components/common/index.js +1 -1
  558. package/dist/domain/system-components/common/recipes.d.ts +1 -2
  559. package/dist/domain/system-components/constraint.d.ts +1 -1
  560. package/dist/domain/system-components/constraint.js +1 -1
  561. package/dist/domain/system-components/create-blueprint.d.ts +1 -1
  562. package/dist/domain/system-components/custom-scene-entity.d.ts +1 -1
  563. package/dist/domain/system-components/custom-scene-entity.js +1 -1
  564. package/dist/domain/system-components/detail.js +1 -1
  565. package/dist/domain/system-components/distance-dimension-select.d.ts +1 -1
  566. package/dist/domain/system-components/distance-dimension-select.js +1 -1
  567. package/dist/domain/system-components/distance-dimension.d.ts +1 -1
  568. package/dist/domain/system-components/distance-dimension.js +1 -1
  569. package/dist/domain/system-components/drag-handle.d.ts +1 -1
  570. package/dist/domain/system-components/drag-handle.js +1 -1
  571. package/dist/domain/system-components/fit-entity-orthographic-camera-component.js +1 -1
  572. package/dist/domain/system-components/fit-entity-perspective-camera-component.js +1 -1
  573. package/dist/domain/system-components/fit-root-orthographic-camera-component.js +1 -1
  574. package/dist/domain/system-components/fit-root-perspective-camera-component.js +1 -1
  575. package/dist/domain/system-components/generic-dimension.d.ts +1 -1
  576. package/dist/domain/system-components/generic-dimension.js +1 -1
  577. package/dist/domain/system-components/hidden-entity.js +1 -1
  578. package/dist/domain/system-components/hotspot-drag-handle.d.ts +1 -2
  579. package/dist/domain/system-components/hotspot-drag-handle.js +1 -1
  580. package/dist/domain/system-components/index.d.ts +0 -68
  581. package/dist/domain/system-components/index.js +1 -1
  582. package/dist/domain/system-components/material-override-property-transition.js +1 -1
  583. package/dist/domain/system-components/material-override-transformer.js +1 -1
  584. package/dist/domain/system-components/material-swatch.js +1 -1
  585. package/dist/domain/system-components/navigation-page.js +1 -1
  586. package/dist/domain/system-components/navigation-panel-list.js +1 -1
  587. package/dist/domain/system-components/phoenix-entity-elements/admin-data-table-sidebar.d.ts +1 -1
  588. package/dist/domain/system-components/phoenix-layout-elements/admin-connected-resource-page.d.ts +1 -1
  589. package/dist/domain/system-components/phoenix-layout-elements/admin-data-table-actions.d.ts +1 -1
  590. package/dist/domain/system-components/phoenix-layout-elements/admin-data-table-page.d.ts +1 -1
  591. package/dist/domain/system-components/phoenix-layout-elements/assistant-toolbar-button.d.ts +44 -0
  592. package/dist/domain/system-components/phoenix-layout-elements/assistant-toolbar-button.js +1 -0
  593. package/dist/domain/system-components/phoenix-layout-elements/index.d.ts +1 -0
  594. package/dist/domain/system-components/phoenix-layout-elements/index.js +1 -1
  595. package/dist/domain/system-components/phoenix-layout-elements/phoenix-layout-element.d.ts +2 -1
  596. package/dist/domain/system-components/phoenix-layout-elements/phoenix-layout-element.js +1 -1
  597. package/dist/domain/system-components/pivot-point.d.ts +1 -1
  598. package/dist/domain/system-components/pivot-point.js +1 -1
  599. package/dist/domain/system-components/price.js +1 -1
  600. package/dist/domain/system-components/projected-entities.d.ts +1 -1
  601. package/dist/domain/system-components/projected-entities.js +1 -1
  602. package/dist/domain/system-components/replace-entity-recipes.d.ts +1 -1
  603. package/dist/domain/system-components/replace-entity-recipes.js +1 -1
  604. package/dist/domain/system-components/scene-entity-ambient-light.js +1 -1
  605. package/dist/domain/system-components/scene-entity-box-object.js +1 -1
  606. package/dist/domain/system-components/scene-entity-directional-light.js +1 -1
  607. package/dist/domain/system-components/scene-entity-local-material-override.js +1 -1
  608. package/dist/domain/system-components/scene-entity-material-override.js +1 -1
  609. package/dist/domain/system-components/scene-entity-object-clip.js +1 -1
  610. package/dist/domain/system-components/scene-entity-object-decal.js +1 -1
  611. package/dist/domain/system-components/scene-entity-object-group.js +1 -1
  612. package/dist/domain/system-components/scene-entity-object-local-material-override.js +1 -1
  613. package/dist/domain/system-components/scene-entity-object-material-override.js +1 -1
  614. package/dist/domain/system-components/scene-entity-object-properties.js +1 -1
  615. package/dist/domain/system-components/scene-entity-object-remote-material-override.js +1 -1
  616. package/dist/domain/system-components/scene-entity-object-text-decal.js +1 -1
  617. package/dist/domain/system-components/scene-entity-object-transformer.js +1 -1
  618. package/dist/domain/system-components/scene-entity-object-transimissive-material-override.js +1 -1
  619. package/dist/domain/system-components/scene-entity-object.js +1 -1
  620. package/dist/domain/system-components/scene-entity-point-light.js +1 -1
  621. package/dist/domain/system-components/scene-entity-properties.js +1 -1
  622. package/dist/domain/system-components/scene-entity-rect-area-light.js +1 -1
  623. package/dist/domain/system-components/scene-entity-remote-material-override.js +1 -1
  624. package/dist/domain/system-components/scene-entity-remote-object.js +1 -1
  625. package/dist/domain/system-components/scene-entity-spot-light.js +1 -1
  626. package/dist/domain/system-components/scene-entity-transimissive-material-override.js +1 -1
  627. package/dist/domain/system-components/sketching-line.d.ts +1 -1
  628. package/dist/domain/system-components/sketching-line.js +1 -1
  629. package/dist/domain/system-components/sketching-rectangle.d.ts +1 -1
  630. package/dist/domain/system-components/sketching-rectangle.js +1 -1
  631. package/dist/domain/system-components/sketching.d.ts +1 -1
  632. package/dist/domain/system-components/sketching.js +1 -1
  633. package/dist/domain/system-components/snap-axis.d.ts +1 -1
  634. package/dist/domain/system-components/snap-axis.js +1 -1
  635. package/dist/domain/system-components/snap-edge.d.ts +1 -1
  636. package/dist/domain/system-components/snap-edge.js +1 -1
  637. package/dist/domain/system-components/snap-plane.d.ts +1 -1
  638. package/dist/domain/system-components/snap-plane.js +1 -1
  639. package/dist/domain/system-components/snap-point.d.ts +1 -1
  640. package/dist/domain/system-components/snap-point.js +1 -1
  641. package/dist/domain/system-components/static-orthographic-camera-component.d.ts +1 -1
  642. package/dist/domain/system-components/static-orthographic-camera-component.js +1 -1
  643. package/dist/domain/system-components/static-perspective-camera-component.d.ts +1 -1
  644. package/dist/domain/system-components/static-perspective-camera-component.js +1 -1
  645. package/dist/domain/utils/eval-cache.d.ts +1 -2
  646. package/dist/domain/utils/memo-eval.d.ts +2 -4
  647. package/dist/editor/Editor.js +1 -1
  648. package/dist/editor/domain-editors/use-implementation-files.d.ts +7 -6
  649. package/dist/editor/domain-editors/use-implementation-files.js +1 -1
  650. package/dist/editor/graphql/GraphQLPanel.js +1 -1
  651. package/dist/editor/variants/VariantAnswerFooter.d.ts +17 -0
  652. package/dist/editor/variants/VariantAnswerFooter.js +1 -0
  653. package/dist/editor/variants/VariantPreviewHandler.d.ts +6 -0
  654. package/dist/editor/variants/VariantPreviewHandler.js +1 -0
  655. package/dist/editor/variants/variant-preview-styles.d.ts +49 -0
  656. package/dist/editor/variants/variant-preview-styles.js +1 -0
  657. package/dist/i18n/locales/cs/messages.js +1 -1
  658. package/dist/i18n/locales/da/messages.js +1 -1
  659. package/dist/i18n/locales/de/messages.js +1 -1
  660. package/dist/i18n/locales/de-AT/messages.js +1 -1
  661. package/dist/i18n/locales/en/messages.js +1 -1
  662. package/dist/i18n/locales/en-AU/messages.js +1 -1
  663. package/dist/i18n/locales/en-GB/messages.js +1 -1
  664. package/dist/i18n/locales/es/messages.js +1 -1
  665. package/dist/i18n/locales/fr/messages.js +1 -1
  666. package/dist/i18n/locales/hu/messages.js +1 -1
  667. package/dist/i18n/locales/it/messages.js +1 -1
  668. package/dist/i18n/locales/nl/messages.js +1 -1
  669. package/dist/i18n/locales/pl/messages.js +1 -1
  670. package/dist/i18n/locales/pt/messages.js +1 -1
  671. package/dist/i18n/locales/ro/messages.js +1 -1
  672. package/dist/i18n/locales/sk/messages.js +1 -1
  673. package/dist/i18n/locales/tr/messages.js +1 -1
  674. package/dist/legacy/domain-cli/gen/configurator-builder.js +21 -8
  675. package/dist/legacy/domain-cli/gen/implementation.js +5 -5
  676. package/dist/legacy/domain-cli/gen/invariants.js +5 -3
  677. package/dist/legacy/domain-cli/utils/cache.d.ts +1 -1
  678. package/dist/legacy/domain-cli/utils/cache.js +1 -1
  679. package/dist/legacy/domain-spec/__generated/domain-schema.d.ts +6 -0
  680. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/env-example.d.ts +1 -1
  681. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/env-example.js +4 -0
  682. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-admin.js +18 -19
  683. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-configurator.js +15 -16
  684. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-admin.js +22 -23
  685. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-configurator.js +15 -16
  686. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/generator-shared.d.ts +7 -2
  687. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/generator-shared.js +8 -12
  688. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/index.d.ts +1 -1
  689. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/index.js +1 -1
  690. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/webhook-builders.js +7 -7
  691. package/dist/phoenix/application-spec/application-spec-builder.js +1 -1
  692. package/dist/phoenix/application-spec/resolve-deployment-data.d.ts +4 -3
  693. package/dist/phoenix/application-spec/resolve-deployment-data.js +2 -2
  694. package/dist/phoenix/cli.js +1 -1
  695. package/dist/phoenix/commands/build.d.ts +5 -0
  696. package/dist/phoenix/commands/build.js +1 -1
  697. package/dist/phoenix/commands/deploy.js +2 -2
  698. package/dist/phoenix/commands/dev.js +5 -5
  699. package/dist/phoenix/commands/feedback.d.ts +2 -1
  700. package/dist/phoenix/commands/feedback.js +1 -1
  701. package/dist/phoenix/commands/index.d.ts +1 -0
  702. package/dist/phoenix/commands/index.js +1 -1
  703. package/dist/phoenix/commands/prepare-deployment-command.js +2 -2
  704. package/dist/phoenix/commands/prepare-local-environment-command.js +1 -1
  705. package/dist/phoenix/commands/story-dev.js +2 -2
  706. package/dist/phoenix/commands/variants.d.ts +35 -0
  707. package/dist/phoenix/commands/variants.js +1 -0
  708. package/dist/phoenix/editor-server/commands-router.d.ts +68 -1
  709. package/dist/phoenix/editor-server/commands-router.js +1 -1
  710. package/dist/phoenix/editor-server/editor-router.d.ts +65 -0
  711. package/dist/phoenix/editor-server/editor-server.d.ts +3 -3
  712. package/dist/phoenix/editor-server/editor-server.js +1 -1
  713. package/dist/phoenix/editor-server/protocol.d.ts +1 -0
  714. package/dist/phoenix/editor-server/spec-router.js +1 -1
  715. package/dist/phoenix/editor-server/trpc.d.ts +3 -0
  716. package/dist/phoenix/scripts/build-admin.js +1 -1
  717. package/dist/phoenix/services/application-spec-project-watcher.d.ts +13 -2
  718. package/dist/phoenix/services/application-spec-project-watcher.js +3 -3
  719. package/dist/phoenix/services/index.d.ts +5 -0
  720. package/dist/phoenix/services/index.js +1 -1
  721. package/dist/phoenix/services/phoenix-application.d.ts +21 -0
  722. package/dist/phoenix/services/phoenix-application.js +1 -0
  723. package/dist/phoenix/services/phoenix-store.d.ts +48 -0
  724. package/dist/phoenix/services/phoenix-store.js +1 -0
  725. package/dist/phoenix/services/phx-banner-plugin.d.ts +32 -0
  726. package/dist/phoenix/services/phx-banner-plugin.js +1 -0
  727. package/dist/phoenix/services/phx-licenses-plugin.d.ts +55 -0
  728. package/dist/phoenix/services/phx-licenses-plugin.js +8 -0
  729. package/dist/phoenix/services/phx-variant-previews-plugin.d.ts +9 -0
  730. package/dist/phoenix/services/phx-variant-previews-plugin.js +1 -0
  731. package/dist/phoenix/services/prepare-development-environment.js +1 -1
  732. package/dist/phoenix/services/variant-file-session.d.ts +36 -0
  733. package/dist/phoenix/services/variant-file-session.js +1 -0
  734. package/dist/phoenix/services/variant-preview-service.d.ts +80 -0
  735. package/dist/phoenix/services/variant-preview-service.js +1 -0
  736. package/dist/phoenix/services/vite-config.d.ts +2 -0
  737. package/dist/phoenix/services/vite-config.js +1 -1
  738. package/dist/phoenix/utils/index.d.ts +1 -0
  739. package/dist/phoenix/utils/index.js +1 -1
  740. package/dist/phoenix/utils/read-git-commit.d.ts +14 -0
  741. package/dist/phoenix/utils/read-git-commit.js +1 -0
  742. package/dist/react-sdk/application-runtime/common-services/analytics/analytics-service.d.ts +2 -2
  743. package/dist/react-sdk/application-runtime/common-services/analytics/domain-controls-analytics.d.ts +21 -21
  744. package/dist/react-sdk/application-runtime/hooks/data/use-published-data.d.ts +1 -1
  745. package/dist/react-sdk/application-runtime/hooks/use-domain-application-props.d.ts +5 -2
  746. package/dist/react-sdk/application-runtime/hooks/use-spec.d.ts +1 -1
  747. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.d.ts +1 -1
  748. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.js +1 -1
  749. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.d.ts +4 -4
  750. package/dist/ui-sdk/common/use-viewport-size.d.ts +4 -1
  751. package/dist/ui-sdk/common/use-viewport-size.js +1 -1
  752. package/dist/ui-sdk/components/mobile-controls/index.d.ts +1 -1
  753. package/dist/ui-sdk/theme/types.d.ts +4 -0
  754. package/dist/webhook/builders/common.d.ts +8 -0
  755. package/dist/webhook/builders/webhook-builder.d.ts +1 -1
  756. package/dist/webhook/builders/webhook-builder.js +1 -1
  757. package/package.json +5 -8
  758. package/schema/domain-spec.json +24 -0
  759. package/dist/configurator/assistant/index.d.ts +0 -1
  760. package/dist/configurator/assistant/index.js +0 -1
  761. package/dist/configurator/assistant/use-assistant-chat.d.ts +0 -20
  762. package/dist/configurator/assistant/use-assistant-chat.js +0 -1
  763. package/dist/domain/actions/action-factory.d.ts +0 -10
  764. package/dist/domain/actions/prepare-action-implementations.js +0 -5
  765. package/dist/domain/components/debug-state-component.js +0 -1
  766. package/dist/domain/components/drag-state-component.js +0 -1
  767. package/dist/domain/components/export-state-component.js +0 -1
  768. package/dist/domain/components/fullscreen-state-component.js +0 -1
  769. package/dist/domain/components/group-components-by-entity-id-and-name.js +0 -1
  770. package/dist/domain/components/hover-state-component.js +0 -1
  771. package/dist/domain/components/index.d.ts +0 -2
  772. package/dist/domain/components/index.js +0 -1
  773. package/dist/domain/components/navigation-state-component.js +0 -1
  774. package/dist/domain/components/selection-state-component.js +0 -1
  775. package/dist/domain/components/system-component-builder.js +0 -1
  776. package/dist/domain/components/system-virtual-entity.js +0 -1
  777. package/dist/domain/components/tool-state-component.js +0 -1
  778. package/dist/domain/components/view-state-component.js +0 -1
  779. package/dist/domain/components/viewport-state-component.js +0 -1
  780. package/dist/domain/core/json-schema.js +0 -1
  781. package/dist/domain/core/reflection.js +0 -1
  782. package/dist/domain/domain-context/recipe-system/recipes.js +0 -1
  783. package/dist/domain/expressions/constant-expressions.js +0 -1
  784. package/dist/domain/expressions/custom-expression.js +0 -1
  785. package/dist/domain/expressions/index.d.ts +0 -1
  786. package/dist/domain/expressions/index.js +0 -1
  787. package/dist/domain/invariants/custom-invariants.js +0 -1
  788. package/dist/domain/invariants/invariants.js +0 -1
  789. package/dist/domain/invariants/violation-component.js +0 -1
  790. package/dist/domain/relations/all-of-type-relation.js +0 -1
  791. package/dist/domain/relations/component-factories.js +0 -1
  792. package/dist/domain/relations/composed-of.js +0 -1
  793. package/dist/domain/relations/indirect-relation.js +0 -1
  794. package/dist/domain/relations/reference-component.js +0 -1
  795. package/dist/domain/system-components/angle-indicator.js +0 -1
  796. package/dist/domain/system-components/attribute-switch.js +0 -1
  797. package/dist/domain/system-components/autorotate-camera-component.js +0 -1
  798. package/dist/domain/system-components/basic-sidebar-footer.js +0 -1
  799. package/dist/domain/system-components/camera-based-hidden-entity-object.js +0 -1
  800. package/dist/domain/system-components/camera-based-hidden-entity.js +0 -1
  801. package/dist/domain/system-components/canvas-config.js +0 -1
  802. package/dist/domain/system-components/canvas-custom-environment.js +0 -1
  803. package/dist/domain/system-components/canvas-padding.js +0 -1
  804. package/dist/domain/system-components/canvas-preset-environment.js +0 -1
  805. package/dist/domain/system-components/child-entity-recipe-hierarchy.js +0 -1
  806. package/dist/domain/system-components/client-side-image.js +0 -1
  807. package/dist/domain/system-components/color-value.js +0 -1
  808. package/dist/domain/system-components/common/angle-indicator-schema.js +0 -1
  809. package/dist/domain/system-components/common/dimension-indicator-schema.js +0 -1
  810. package/dist/domain/system-components/custom-price-footer.js +0 -1
  811. package/dist/domain/system-components/dimension-indicator.js +0 -1
  812. package/dist/domain/system-components/editable-angle-indicator.js +0 -1
  813. package/dist/domain/system-components/editable-distance-dimension-indicator.js +0 -1
  814. package/dist/domain/system-components/editable-offset-indicator.js +0 -1
  815. package/dist/domain/system-components/editable-size-indicator.js +0 -1
  816. package/dist/domain/system-components/entity-header.js +0 -1
  817. package/dist/domain/system-components/exit-tool-mode-fab.js +0 -1
  818. package/dist/domain/system-components/finalize-action.js +0 -1
  819. package/dist/domain/system-components/finalize-component.js +0 -1
  820. package/dist/domain/system-components/fit-selection-orthographic-camera-component.js +0 -1
  821. package/dist/domain/system-components/fit-selection-perspective-camera-component.js +0 -1
  822. package/dist/domain/system-components/fixed-header.js +0 -1
  823. package/dist/domain/system-components/floating-header.js +0 -1
  824. package/dist/domain/system-components/hidden-header.js +0 -1
  825. package/dist/domain/system-components/hidden-sidebar-footer.js +0 -1
  826. package/dist/domain/system-components/horizontal-tabs.js +0 -1
  827. package/dist/domain/system-components/list-selector-dimension-indicator.js +0 -1
  828. package/dist/domain/system-components/multilingual-text-value.js +0 -1
  829. package/dist/domain/system-components/navigation-steps.js +0 -1
  830. package/dist/domain/system-components/offset-anchors.js +0 -1
  831. package/dist/domain/system-components/offset-indicator.js +0 -1
  832. package/dist/domain/system-components/offset.js +0 -1
  833. package/dist/domain/system-components/other-action.js +0 -1
  834. package/dist/domain/system-components/property-page.js +0 -1
  835. package/dist/domain/system-components/read-sidebar-footer.js +0 -1
  836. package/dist/domain/system-components/replace-entity-recipe-hierarchy.js +0 -1
  837. package/dist/domain/system-components/rotatable.js +0 -1
  838. package/dist/domain/system-components/rotation-handle.js +0 -1
  839. package/dist/domain/system-components/save-template-thumbnail.js +0 -1
  840. package/dist/domain/system-components/scene-entity-add-fab.js +0 -1
  841. package/dist/domain/system-components/scene-entity-animation.js +0 -1
  842. package/dist/domain/system-components/scene-entity-control.js +0 -1
  843. package/dist/domain/system-components/scene-entity-delete-fab.js +0 -1
  844. package/dist/domain/system-components/scene-entity-floor-object.js +0 -1
  845. package/dist/domain/system-components/scene-entity-html-hotspot.js +0 -1
  846. package/dist/domain/system-components/scene-entity-navigation-hotspot.js +0 -1
  847. package/dist/domain/system-components/scene-entity-object-html-hotspot.js +0 -1
  848. package/dist/domain/system-components/scene-entity-select-hotspot.js +0 -1
  849. package/dist/domain/system-components/scene-entity-wall-object.js +0 -1
  850. package/dist/domain/system-components/selectable-component.js +0 -1
  851. package/dist/domain/system-components/sidebar-tabs.js +0 -1
  852. package/dist/domain/system-components/simple-summary.js +0 -1
  853. package/dist/domain/system-components/size.js +0 -1
  854. package/dist/domain/system-components/sketching-draw.js +0 -1
  855. package/dist/domain/system-components/sketching-edit.js +0 -1
  856. package/dist/domain/system-components/summary-component.js +0 -1
  857. package/dist/domain/system-components/text-value.js +0 -1
  858. package/dist/domain/system-components/tool-controls.js +0 -1
  859. package/dist/domain/system-components/tool-menu-fab.js +0 -1
  860. package/dist/domain/system-components/universal-sidebar-footer.js +0 -1
  861. package/dist/domain/system-components/view-controls.js +0 -1
  862. package/dist/extras/assistant/AssistantChat.d.ts +0 -6
  863. package/dist/extras/assistant/AssistantChat.js +0 -1
  864. package/dist/extras/assistant/index.d.ts +0 -1
  865. package/dist/extras/assistant/index.js +0 -1
  866. package/dist/phoenix/application-spec/generate-assistant-prompt.d.ts +0 -12
  867. package/dist/phoenix/application-spec/generate-assistant-prompt.js +0 -1
  868. /package/dist/domain/{components/component-reader-types.js → application/assistant/assistant-manifest.js} +0 -0
  869. /package/dist/domain/{core/action.js → application/assistant/assistant-resolved-manifest.js} +0 -0
  870. /package/dist/domain/{actions → core/action}/action-factory.js +0 -0
  871. /package/dist/domain/core/{enhanced-json-schema.js → action/action.js} +0 -0
  872. /package/dist/domain/core/{expression.js → component/component-reader-types.js} +0 -0
  873. /package/dist/domain/{components → core/component}/legacy-filter.js +0 -0
  874. /package/dist/domain/{components → core/component}/system-component-filter.js +0 -0
  875. /package/dist/domain/{components → core/component}/system-virtual-entity.d.ts +0 -0
  876. /package/dist/domain/{components → core/component}/updates.js +0 -0
  877. /package/dist/domain/core/{schema-validator.js → data-schema/data-cell-value.js} +0 -0
  878. /package/dist/domain/{relations/reference-field.js → core/data-schema/data-schema-array-field.js} +0 -0
  879. /package/dist/domain/{relations/relation-implementation.js → core/data-schema/data-schema-field-object.js} +0 -0
  880. /package/dist/domain/{invariants → core/invariant}/builtin-invariant.js +0 -0
  881. /package/dist/domain/{invariants → core/invariant}/violation-component.d.ts +0 -0
  882. /package/dist/domain/{invariants → core/invariant}/violation.js +0 -0
  883. /package/dist/domain/core/{alias.d.ts → model/alias.d.ts} +0 -0
  884. /package/dist/domain/core/{alias.js → model/alias.js} +0 -0
  885. /package/dist/domain/core/{common-definitions.d.ts → model/common-definitions.d.ts} +0 -0
  886. /package/dist/domain/core/{common-definitions.js → model/common-definitions.js} +0 -0
  887. /package/dist/domain/core/{component.js → model/component.js} +0 -0
  888. /package/dist/domain/core/{model.d.ts → model/model.d.ts} +0 -0
  889. /package/dist/domain/core/{model.js → model/model.js} +0 -0
  890. /package/dist/domain/core/{preset.d.ts → model/preset.d.ts} +0 -0
  891. /package/dist/domain/core/{preset.js → model/preset.js} +0 -0
  892. /package/dist/domain/{relations → core/relation}/direct-relation.js +0 -0
  893. /package/dist/domain/{relations → core/relation}/relation-factory.js +0 -0
  894. /package/dist/domain/core/{schema-validator-ajv.d.ts → schema/create-ajv-schema-validator.d.ts} +0 -0
  895. /package/dist/domain/core/{schema-validator-ajv.js → schema/create-ajv-schema-validator.js} +0 -0
  896. /package/dist/domain/core/{schema-validator-csp.d.ts → schema/create-csp-schema-validator.d.ts} +0 -0
  897. /package/dist/domain/core/{schema-validator-csp.js → schema/create-csp-schema-validator.js} +0 -0
  898. /package/dist/domain/core/{enhanced-json-schema.d.ts → schema/enhanced-json-schema.d.ts} +0 -0
  899. /package/dist/domain/core/{json-schema.d.ts → schema/extended-schema-validator.d.ts} +0 -0
  900. /package/dist/domain/core/{schema-validator.d.ts → schema/schema-validator.d.ts} +0 -0
  901. /package/dist/domain/core/{migrations.js → state/migrations.js} +0 -0
  902. /package/dist/domain/core/{state.js → state/state.js} +0 -0
  903. /package/dist/domain/{expressions → domain-runtime/spec}/memoize-expression.js +0 -0
  904. /package/dist/domain/{expressions → domain-runtime/spec}/prepare-domain-expressions.js +0 -0
  905. /package/dist/domain/{system-components → extensions}/attribute-switch.d.ts +0 -0
  906. /package/dist/domain/{system-components → extensions}/camera-based-hidden-entity-object.d.ts +0 -0
  907. /package/dist/domain/{system-components → extensions}/camera-based-hidden-entity.d.ts +0 -0
  908. /package/dist/domain/{system-components → extensions}/canvas-custom-environment.d.ts +0 -0
  909. /package/dist/domain/{system-components → extensions}/client-side-image.d.ts +0 -0
  910. /package/dist/domain/{system-components → extensions}/color-value.d.ts +0 -0
  911. /package/dist/domain/{system-components → extensions}/common/dimension-indicators.d.ts +0 -0
  912. /package/dist/domain/{system-components → extensions}/common/dimension-indicators.js +0 -0
  913. /package/dist/domain/{system-components → extensions}/common/editable-indicator-button-variant.d.ts +0 -0
  914. /package/dist/domain/{system-components → extensions}/common/editable-indicator-button-variant.js +0 -0
  915. /package/dist/domain/{system-components → extensions}/custom-price-footer.d.ts +0 -0
  916. /package/dist/domain/{system-components → extensions}/finalize-component.d.ts +0 -0
  917. /package/dist/domain/{system-components → extensions}/fit-selection-orthographic-camera-component.d.ts +0 -0
  918. /package/dist/domain/{system-components → extensions}/fit-selection-perspective-camera-component.d.ts +0 -0
  919. /package/dist/domain/{system-components → extensions}/multilingual-text-value.d.ts +0 -0
  920. /package/dist/domain/{system-components → extensions}/navigation-steps.d.ts +0 -0
  921. /package/dist/domain/{system-components → extensions}/rotatable.d.ts +0 -0
  922. /package/dist/domain/{system-components → extensions}/rotation-handle.d.ts +0 -0
  923. /package/dist/domain/{system-components → extensions}/save-template-thumbnail.d.ts +0 -0
  924. /package/dist/domain/{system-components → extensions}/scene-entity-animation.d.ts +0 -0
  925. /package/dist/domain/{system-components → extensions}/scene-entity-control.d.ts +0 -0
  926. /package/dist/domain/{system-components → extensions}/scene-entity-floor-object.d.ts +0 -0
  927. /package/dist/domain/{system-components → extensions}/scene-entity-wall-object.d.ts +0 -0
  928. /package/dist/domain/{system-components → extensions}/selectable-component.d.ts +0 -0
  929. /package/dist/domain/{system-components → extensions}/simple-summary.d.ts +0 -0
  930. /package/dist/domain/{system-components → extensions}/summary-component.d.ts +0 -0
  931. /package/dist/domain/{system-components → extensions}/text-value.d.ts +0 -0
  932. /package/dist/domain/{system-components → extensions}/tool-controls.d.ts +0 -0
  933. /package/dist/domain/{system-components → extensions}/view-controls.d.ts +0 -0
@@ -0,0 +1,18 @@
1
+ import type { DomainEntity } from '../../core/index.js';
2
+ import type { CollisionProjections, ConstraintProjections, PositionProjections, ProjectedEntitiesProjections, SnappingProjections } from '../../projections/index.js';
3
+ import type { SketchingProjections } from '../../sketching/index.js';
4
+ import type { ComponentReader } from './component-reader.js';
5
+ /**
6
+ * What the domain runtime adds to the expression context of core: the component reader and the
7
+ * projections it builds for every application. It is the context extension that generated project
8
+ * code closes the factories of core with.
9
+ */
10
+ export interface RuntimeExpressionContext<ENTITIES extends DomainEntity<string>> {
11
+ readonly componentReader: ComponentReader<ENTITIES>;
12
+ readonly positionProjections: PositionProjections<ENTITIES>;
13
+ readonly sketchingProjections: SketchingProjections<ENTITIES>;
14
+ readonly collisionProjections: CollisionProjections<ENTITIES>;
15
+ readonly constraintProjections: ConstraintProjections<ENTITIES>;
16
+ readonly snappingProjections: SnappingProjections<ENTITIES>;
17
+ readonly projectedEntitiesProjections: ProjectedEntitiesProjections<ENTITIES>;
18
+ }
@@ -1,6 +1,4 @@
1
- import type { DomainComponentOptic } from '../../components/index.js';
2
- import { type AnyDomain } from '../../core/domain.js';
3
- import type { AnyDomainFactory, AnyExpressionContext, DomainEntity, DomainMode, SystemComponentTypeConstraint } from '../../core/index.js';
1
+ import { type AnyDomain, type AnyDomainFactory, type DomainComponentOptic, type DomainEntity, type DomainMode, type SystemComponentTypeConstraint } from '../../core/index.js';
4
2
  import { type AnyActionSystem } from '../../domain-context/action-system/action-system.js';
5
3
  import { type AnyDimensionSystem } from '../../domain-context/dimension-system/dimension-system.js';
6
4
  import type { AnyDomainContextSystems } from '../../domain-context/domain-context-systems.js';
@@ -16,11 +14,12 @@ import type { DomainServicesSelectors } from '../domain-services/index.js';
16
14
  import type { EnvironmentSelectors } from '../environment/index.js';
17
15
  import type { ApplicationLoadedData } from '../loaded-data/index.js';
18
16
  import type { DomainSessionContext, SessionContextSelectorState, SessionContextSelectors } from '../session-context/index.js';
19
- import type { SpecSelectorState, SpecSelectors } from '../spec/index.js';
17
+ import { type SpecSelectorState, type SpecSelectors } from '../spec/index.js';
20
18
  import type { WebComponentSelectorState, WebComponentSelectors } from '../web-component/index.js';
21
19
  import type { DomainContextApplicationActions } from './actions.js';
22
20
  import { type AnyComponentReader } from './component-reader.js';
23
21
  import { DomainContext } from './domain-context.js';
22
+ import type { AnyExpressionContext } from './expression-context.js';
24
23
  import type { ApplicationDomainContextState, DomainApplicationType, DomainContextInitializationContext, DomainContextInitializationIdentity, DomainContextInitializationState, InitializableSystem, SchemaCoherence } from './types.js';
25
24
  type ComponentOptic<ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>> = DomainComponentOptic<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ENTITIES, SystemComponentTypeConstraint>;
26
25
  /**
@@ -1 +1 @@
1
- import{createSelector as e}from"@salsita-ai/common/utils";import{prepareActionImplementations as t}from"../../actions/prepare-action-implementations.js";import{Domain as n}from"../../core/domain.js";import{createInitialDomainState as o}from"../../core/state.js";import{ActionSystem as i}from"../../domain-context/action-system/action-system.js";import{DimensionSystem as a}from"../../domain-context/dimension-system/dimension-system.js";import{NavigationSystem as s}from"../../domain-context/navigation-system/navigation-system.js";import{RecipeCookerSystem as r}from"../../domain-context/recipe-system/recipe-cooker-system.js";import{StoreSystem as c}from"../../domain-context/store-system/store-system.js";import{UndoSystem as m}from"../../domain-context/undo-system.js";import{prepareDomainExpressions as l}from"../../expressions/index.js";import{BlenderProjections as d,CollisionProjections as g,CompositionProjections as f,ConstraintProjections as p,PositionProjections as u,ProjectedEntitiesProjections as y,SnappingProjections as w,ValidationProjections as h}from"../../projections/index.js";import{SketchingProjections as S}from"../../sketching/sketching-projections.js";import{requireAccessService as x}from"../access/index.js";import{ComponentReader as j}from"./component-reader.js";import{DomainContext as C}from"./domain-context.js";let D=e.withTypes(),v=[],I={},P={role:"admin",data:I},M=e=>{if(null!==e)return e;throw Error("Cannot read the session role and data because the domain session context is not set. The session context is written into the domain runtime by the session lifecycle after authentication. Move this read into the loaded session lifecycle.")};export const createDomainContextSelectors=e=>{let{applicationType:A,getState:R,actions:E,specSelectors:T,accessSelectors:b,webComponentSelectors:k,domainDataSelectors:$,sessionContextSelectors:N,domainServicesSelectors:z,environmentSelectors:L,getExtensionSystems:V}=e,B="configurator"===A?T.selectConfiguratorSpec:T.selectAdminSpec,F="configurator"===A?b.selectConfiguratorRawAccessService:b.selectAdminRawAccessService,W=D.leaf(e=>e.domainContext[A]),_=D([W],e=>e.initializationContext),q=D([_],e=>{if(null===e)throw Error(`Domain lifecycle context is not available for ${A}! Read it from an active domain lifecycle.`);return e}),O=D([W],e=>e.executionMode),U=D([W],e=>e.isInitialized),G=D([B],e=>e.factory),H=D([B],e=>e.expressions),J=D([B],e=>e.actions),K=D([B],e=>e.actionImplementations),Q=D([J,K],t),X=D([B],e=>e.$entityReflections),Y=D([H,X],(e,t)=>l({expressions:e,$entityReflections:t})),Z=D([B],e=>e.modelVersion),ee=D([B],e=>e.aliasMap),et=D([B],e=>e.allowedRootEntityTypes),en=D([B],e=>e.entityReflections),eo=D([B],e=>e.migrate),ei=D([O,k.selectReadonly,F],(e,t,n)=>"finalize"===e?"finalize":x(A,n).accessInfo.viewMode||t?"read":"owner"),ea=D([F],e=>e?.configurationId??null),es="configurator"===A?N.selectSessionContext:D([],()=>P),er=D([es],e=>e?.role??null),ec=D([es],e=>e?.data??null),em=D([D.leaf(e=>e.loadedData)],e=>"configurator"===A?e.configuratorLoadedData:e.adminLoadedData),el=D([em],e=>e?.schemaIdentity??null),ed=D([em,G],(e,t)=>{if(null===e)return"coherent";let n=e.schemaIdentity;return void 0===n?"missing-stamp":n===t?"coherent":"schema-mismatch"}),eg=D([ea,er,ec,el,ed],(e,t,n,o,i)=>null===e||null===t||null===n||null===o||"coherent"!==i?null:{configurationId:e,role:t,schemaIdentity:o,sessionData:n}),ef=D([F,k.selectReadonly],(e,t)=>e?.accessInfo.viewMode===!0||t),ep=D([eg,_,U,ef],(e,t,n,o)=>{let i=null!==e&&null!==t&&n&&t.configurationId===e.configurationId&&t.role===e.role&&t.schemaIdentity===e.schemaIdentity&&t.sessionData===e.sessionData;return{identity:e,isCurrent:i,isViewMode:o}}),eu=D([B],e=>e.componentOptics),ey=D([eu],e=>(e=>{let t=new Map,n=new Map,o=new Map,i=new Map;for(let n of e)for(let e of n.entityTypes){let o=t.get(e);o||(o=new Map,t.set(e,o));let a=o.get(n.componentType);if(a||(a=new Map,o.set(n.componentType,a)),a.has(n.instanceName))throw Error(`Component instance ${n.instanceName} already exists for type ${n.componentType.name} in entity ${e}. This is likely a bug in the component definition! InstanceNames must be unique within an entity and component.`);if(a.set(n.instanceName,n),"dynamic"===n.kind){let t=i.get(e);t||(t=new Map,i.set(e,t));let o=t.get(n.componentType)??[],a=o.find(e=>{var t;return t=n.instanceName,e.startsWith(`${t}_`)||t.startsWith(`${e}_`)});if(a)throw Error(`Cannot register dynamic component instance ${n.instanceName} for component ${n.componentType.name} on entity ${e} because it overlaps with dynamic instance ${a}. Rename one dynamic instance so compound names cannot be ambiguous.`);t.set(n.componentType,[...o,n.instanceName])}}for(let[e,i]of t.entries()){n.set(e,new Set(i.keys()));let t=new Map;for(let[n,a]of(o.set(e,t),i.entries()))t.set(n,new Set(a.keys()))}return{opticMap:t,allComponentTypes:n,allComponentInstanceNames:o,dynamicInstanceNames:i}})(e)),ew=D([ey,Y,et],(e,t,n)=>({componentReaderIndexes:e,domainExpressions:t,allowedRootEntityTypes:n})),eh=D([B],e=>e.navigationStates),eS=D([B],e=>e.viewStates),ex="configurator"===A?D([T.selectConfiguratorSpec],e=>e.toolStates):D([],()=>v),ej="configurator"===A?D([T.selectConfiguratorSpec],e=>e.exportStates):D([],()=>v),eC="configurator"===A?D([T.selectConfiguratorSpec],e=>e.createTransformers):D([],()=>void 0),eD=D([em],e=>{if(null===e)throw Error(`Loaded data is not available for ${A}! Loaded data is written after the configuration fetch succeeds and before the domain context initialization starts.`);return e}),ev=D([eD,G],(e,t)=>o(t.validateAndMigrateState(e.initialEntities,e.modelVersion),e.rootEntityType)),eI="configurator"===A?$.selectConfiguratorFrontendData:$.selectAdminFrontendData,eP="configurator"===A?$.selectConfiguratorBackendData:$.selectAdminBackendData,eM="configurator"===A?$.selectConfiguratorPublishedData:$.selectAdminPublishedData,eA="configurator"===A?D([N.selectSessionContext],e=>M(e).role):D([],()=>"admin"),eR="configurator"===A?D([N.selectSessionContext],e=>M(e).data):D([],()=>I),eE=D([ea,ei,eA,eR,eD],(e,t,n,o,i)=>({configurationId:e,mode:t,role:n,schemaIdentity:i.schemaIdentity,sessionData:o})),eT=D([q],e=>e.mode),eb=D([q],e=>{let t=e.configurationId;if(null===t)throw Error(`Configuration id is not available for ${A}! Read it from an active interactive domain lifecycle.`);return t}),ek=D([q],e=>e.role),e$=D([q],e=>e.sessionData),eN=D([eT,ek,e$,eI,eP,eM,eo],(e,t,n,o,i,a,s)=>({mode:e,role:t,sessionData:n,frontendData:o,backendData:i,publishedData:a,migrate:s,domain:eL,componentReader:eV,positionProjections:eq,sketchingProjections:e_,collisionProjections:eO,constraintProjections:eG,snappingProjections:eU,projectedEntitiesProjections:eH})),ez={selectApplicationSpec:B,selectRawAccessService:F,selectDomainContextState:W,selectInitializationContext:_,selectActiveInitializationContext:q,selectExecutionMode:O,selectIsInitialized:U,selectFactory:G,selectSpecExpressions:H,select$SpecEntityReflections:X,selectDomainExpressions:Y,selectModelVersion:Z,selectAliasMap:ee,selectAllowedRootEntityTypes:et,selectEntityReflections:en,selectMigrate:eo,selectLatestMode:ei,selectLatestConfigurationId:ea,selectLatestSessionContext:es,selectLatestRoleOrNull:er,selectLatestSessionDataOrNull:ec,selectLatestSchemaIdentity:el,selectSchemaCoherence:ed,selectInitializationIdentity:eg,selectIsViewMode:ef,selectInitializationState:ep,selectComponentOptics:eu,selectComponentReaderIndexes:ey,selectStoreRuntimeDependencies:ew,selectNavigationStates:eh,selectViewStates:eS,selectToolStates:ex,selectExportStates:ej,selectCreateTransformers:eC,selectLatestLoadedData:em,selectLoadedData:eD,selectInitialDomainState:ev,selectFrontendData:eI,selectBackendData:eP,selectPublishedData:eM,selectLatestRole:eA,selectLatestSessionData:eR,selectNextInitializationContext:eE,selectActiveMode:eT,selectActiveConfigurationId:eb,selectActiveRole:ek,selectActiveSessionData:e$,selectExpressionContext:eN,getInitializationContext:()=>_(R()),getInitializationState:()=>ep(R()),getNextInitializationContext:()=>eE(R()),getLatestLoadedData:()=>em(R()),getSchemaCoherence:()=>ed(R()),getActiveConfigurationId:()=>eb(R()),getFactory:()=>G(R()),getDomainExpressions:()=>Y(R()),getActionDefinitions:()=>J(R()),getActionImplementations:()=>Q(R()),getModelVersion:()=>Z(R()),getAliasMap:()=>ee(R()),getAllowedRootEntityTypes:()=>et(R()),getEntityReflections:()=>en(R()),getMigrate:()=>eo(R()),getActiveMode:()=>eT(R()),getIsInitialized:()=>U(R()),getComponentReaderIndexes:()=>ey(R()),getStoreRuntimeDependencies:()=>ew(R()),getNavigationStates:()=>eh(R()),getViewStates:()=>eS(R()),getToolStates:()=>ex(R()),getExportStates:()=>ej(R()),getCreateTransformers:()=>eC(R()),getLoadedData:()=>eD(R()),getInitialDomainState:()=>ev(R()),getFrontendData:()=>eI(R()),getBackendData:()=>eP(R()),getPublishedData:()=>eM(R()),getActiveRole:()=>ek(R()),getActiveSessionData:()=>e$(R()),getDomain:()=>eL,getComponentReader:()=>eV,getCompositionProjections:()=>eB,getDimensionSystem:()=>eF,getValidationProjections:()=>eW,getSketchingProjections:()=>e_,getPositionProjections:()=>eq,getCollisionProjections:()=>eO,getSnappingProjections:()=>eU,getConstraintProjections:()=>eG,getProjectedEntitiesProjections:()=>eH,getStoreSystem:()=>eJ,getNavigationSystem:()=>eK,getUndoSystem:()=>eQ,getRecipeCookerSystem:()=>eX,getActionSystem:()=>eY,getBlenderProjections:()=>eZ,getExpressionContext:()=>eN(R()),getDomainSystems:function(){return e0},getDomainContext:function(){return e1}},eL=new n({selectors:ez}),eV=new j({selectors:ez}),eB=new f({selectors:ez}),eF=new a({selectors:ez}),eW=new h({selectors:ez}),e_=new S({selectors:ez}),eq=new u({selectors:ez}),eO=new g({selectors:ez}),eU=new w({selectors:ez}),eG=new p({selectors:ez}),eH=new y({selectors:ez}),eJ=new c({selectors:ez,domainServicesSelectors:z,environmentSelectors:L}),eK=new s({selectors:ez,domainServicesSelectors:z}),eQ=new m({selectors:ez}),eX=new r({selectors:ez}),eY=new i({selectors:ez}),eZ=new d({selectors:ez,domainServicesSelectors:z}),e0={domainContextSelectors:ez,domain:eL,componentReader:eV,compositionProjections:eB,blenderProjections:eZ,validationProjections:eW,storeSystem:eJ,navigationSystem:eK,dimensionSystem:eF,undoSystem:eQ,recipeCooker:eX,actionSystem:eY,sketchingProjections:e_,collisionProjections:eO,positionProjections:eq,snappingProjections:eU,projectedEntitiesProjections:eH,constraintProjections:eG},e1=new C({selectors:ez,actions:E,getExtensionSystems:V});return ez};
1
+ import{createSelector as e}from"@salsita-ai/common/utils";import{Domain as t,createInitialDomainState as n}from"../../core/index.js";import{ActionSystem as o}from"../../domain-context/action-system/action-system.js";import{DimensionSystem as i}from"../../domain-context/dimension-system/dimension-system.js";import{NavigationSystem as a}from"../../domain-context/navigation-system/navigation-system.js";import{RecipeCookerSystem as s}from"../../domain-context/recipe-system/recipe-cooker-system.js";import{StoreSystem as r}from"../../domain-context/store-system/store-system.js";import{UndoSystem as c}from"../../domain-context/undo-system.js";import{BlenderProjections as l,CollisionProjections as m,CompositionProjections as d,ConstraintProjections as g,PositionProjections as f,ProjectedEntitiesProjections as p,SnappingProjections as u,ValidationProjections as y}from"../../projections/index.js";import{SketchingProjections as w}from"../../sketching/sketching-projections.js";import{requireAccessService as h}from"../access/index.js";import{prepareActionImplementations as S,prepareDomainExpressions as x}from"../spec/index.js";import{ComponentReader as j}from"./component-reader.js";import{DomainContext as C}from"./domain-context.js";let D=e.withTypes(),v=[],I={},P={role:"admin",data:I},M=e=>{if(null!==e)return e;throw Error("Cannot read the session role and data because the domain session context is not set. The session context is written into the domain runtime by the session lifecycle after authentication. Move this read into the loaded session lifecycle.")};export const createDomainContextSelectors=e=>{let{applicationType:A,getState:R,actions:E,specSelectors:T,accessSelectors:b,webComponentSelectors:k,domainDataSelectors:$,sessionContextSelectors:N,domainServicesSelectors:z,environmentSelectors:L,getExtensionSystems:V}=e,B="configurator"===A?T.selectConfiguratorSpec:T.selectAdminSpec,F="configurator"===A?b.selectConfiguratorRawAccessService:b.selectAdminRawAccessService,W=D.leaf(e=>e.domainContext[A]),_=D([W],e=>e.initializationContext),q=D([_],e=>{if(null===e)throw Error(`Domain lifecycle context is not available for ${A}! Read it from an active domain lifecycle.`);return e}),O=D([W],e=>e.executionMode),U=D([W],e=>e.isInitialized),G=D([B],e=>e.factory),H=D([B],e=>e.expressions),J=D([B],e=>e.actions),K=D([B],e=>e.actionImplementations),Q=D([J,K],S),X=D([B],e=>e.$entityReflections),Y=D([H,X],(e,t)=>x({expressions:e,$entityReflections:t})),Z=D([B],e=>e.modelVersion),ee=D([B],e=>e.aliasMap),et=D([B],e=>e.allowedRootEntityTypes),en=D([B],e=>e.entityReflections),eo=D([B],e=>e.migrate),ei=D([O,k.selectReadonly,F],(e,t,n)=>"finalize"===e?"finalize":h(A,n).accessInfo.viewMode||t?"read":"owner"),ea=D([F],e=>e?.configurationId??null),es="configurator"===A?N.selectSessionContext:D([],()=>P),er=D([es],e=>e?.role??null),ec=D([es],e=>e?.data??null),el=D([D.leaf(e=>e.loadedData)],e=>"configurator"===A?e.configuratorLoadedData:e.adminLoadedData),em=D([el],e=>e?.schemaIdentity??null),ed=D([el,G],(e,t)=>{if(null===e)return"coherent";let n=e.schemaIdentity;return void 0===n?"missing-stamp":n===t?"coherent":"schema-mismatch"}),eg=D([ea,er,ec,em,ed],(e,t,n,o,i)=>null===e||null===t||null===n||null===o||"coherent"!==i?null:{configurationId:e,role:t,schemaIdentity:o,sessionData:n}),ef=D([F,k.selectReadonly],(e,t)=>e?.accessInfo.viewMode===!0||t),ep=D([eg,_,U,ef],(e,t,n,o)=>{let i=null!==e&&null!==t&&n&&t.configurationId===e.configurationId&&t.role===e.role&&t.schemaIdentity===e.schemaIdentity&&t.sessionData===e.sessionData;return{identity:e,isCurrent:i,isViewMode:o}}),eu=D([B],e=>e.componentOptics),ey=D([eu],e=>(e=>{let t=new Map,n=new Map,o=new Map,i=new Map;for(let n of e)for(let e of n.entityTypes){let o=t.get(e);o||(o=new Map,t.set(e,o));let a=o.get(n.componentType);if(a||(a=new Map,o.set(n.componentType,a)),a.has(n.instanceName))throw Error(`Component instance ${n.instanceName} already exists for type ${n.componentType.name} in entity ${e}. This is likely a bug in the component definition! InstanceNames must be unique within an entity and component.`);if(a.set(n.instanceName,n),"dynamic"===n.kind){let t=i.get(e);t||(t=new Map,i.set(e,t));let o=t.get(n.componentType)??[],a=o.find(e=>{var t;return t=n.instanceName,e.startsWith(`${t}_`)||t.startsWith(`${e}_`)});if(a)throw Error(`Cannot register dynamic component instance ${n.instanceName} for component ${n.componentType.name} on entity ${e} because it overlaps with dynamic instance ${a}. Rename one dynamic instance so compound names cannot be ambiguous.`);t.set(n.componentType,[...o,n.instanceName])}}for(let[e,i]of t.entries()){n.set(e,new Set(i.keys()));let t=new Map;for(let[n,a]of(o.set(e,t),i.entries()))t.set(n,new Set(a.keys()))}return{opticMap:t,allComponentTypes:n,allComponentInstanceNames:o,dynamicInstanceNames:i}})(e)),ew=D([ey,Y,et],(e,t,n)=>({componentReaderIndexes:e,domainExpressions:t,allowedRootEntityTypes:n})),eh=D([B],e=>e.navigationStates),eS=D([B],e=>e.viewStates),ex="configurator"===A?D([T.selectConfiguratorSpec],e=>e.toolStates):D([],()=>v),ej="configurator"===A?D([T.selectConfiguratorSpec],e=>e.exportStates):D([],()=>v),eC="configurator"===A?D([T.selectConfiguratorSpec],e=>e.createTransformers):D([],()=>void 0),eD=D([el],e=>{if(null===e)throw Error(`Loaded data is not available for ${A}! Loaded data is written after the configuration fetch succeeds and before the domain context initialization starts.`);return e}),ev=D([eD,G],(e,t)=>n(t.validateAndMigrateState(e.initialEntities,e.modelVersion),e.rootEntityType)),eI="configurator"===A?$.selectConfiguratorFrontendData:$.selectAdminFrontendData,eP="configurator"===A?$.selectConfiguratorBackendData:$.selectAdminBackendData,eM="configurator"===A?$.selectConfiguratorPublishedData:$.selectAdminPublishedData,eA="configurator"===A?D([N.selectSessionContext],e=>M(e).role):D([],()=>"admin"),eR="configurator"===A?D([N.selectSessionContext],e=>M(e).data):D([],()=>I),eE=D([ea,ei,eA,eR,eD],(e,t,n,o,i)=>({configurationId:e,mode:t,role:n,schemaIdentity:i.schemaIdentity,sessionData:o})),eT=D([q],e=>e.mode),eb=D([q],e=>{let t=e.configurationId;if(null===t)throw Error(`Configuration id is not available for ${A}! Read it from an active interactive domain lifecycle.`);return t}),ek=D([q],e=>e.role),e$=D([q],e=>e.sessionData),eN=D([eT,ek,e$,eI,eP,eM,eo],(e,t,n,o,i,a,s)=>({mode:e,role:t,sessionData:n,frontendData:o,backendData:i,publishedData:a,migrate:s,domain:eL,componentReader:eV,positionProjections:eq,sketchingProjections:e_,collisionProjections:eO,constraintProjections:eG,snappingProjections:eU,projectedEntitiesProjections:eH})),ez={selectApplicationSpec:B,selectRawAccessService:F,selectDomainContextState:W,selectInitializationContext:_,selectActiveInitializationContext:q,selectExecutionMode:O,selectIsInitialized:U,selectFactory:G,selectSpecExpressions:H,select$SpecEntityReflections:X,selectDomainExpressions:Y,selectModelVersion:Z,selectAliasMap:ee,selectAllowedRootEntityTypes:et,selectEntityReflections:en,selectMigrate:eo,selectLatestMode:ei,selectLatestConfigurationId:ea,selectLatestSessionContext:es,selectLatestRoleOrNull:er,selectLatestSessionDataOrNull:ec,selectLatestSchemaIdentity:em,selectSchemaCoherence:ed,selectInitializationIdentity:eg,selectIsViewMode:ef,selectInitializationState:ep,selectComponentOptics:eu,selectComponentReaderIndexes:ey,selectStoreRuntimeDependencies:ew,selectNavigationStates:eh,selectViewStates:eS,selectToolStates:ex,selectExportStates:ej,selectCreateTransformers:eC,selectLatestLoadedData:el,selectLoadedData:eD,selectInitialDomainState:ev,selectFrontendData:eI,selectBackendData:eP,selectPublishedData:eM,selectLatestRole:eA,selectLatestSessionData:eR,selectNextInitializationContext:eE,selectActiveMode:eT,selectActiveConfigurationId:eb,selectActiveRole:ek,selectActiveSessionData:e$,selectExpressionContext:eN,getInitializationContext:()=>_(R()),getInitializationState:()=>ep(R()),getNextInitializationContext:()=>eE(R()),getLatestLoadedData:()=>el(R()),getSchemaCoherence:()=>ed(R()),getActiveConfigurationId:()=>eb(R()),getFactory:()=>G(R()),getDomainExpressions:()=>Y(R()),getActionDefinitions:()=>J(R()),getActionImplementations:()=>Q(R()),getModelVersion:()=>Z(R()),getAliasMap:()=>ee(R()),getAllowedRootEntityTypes:()=>et(R()),getEntityReflections:()=>en(R()),getMigrate:()=>eo(R()),getActiveMode:()=>eT(R()),getIsInitialized:()=>U(R()),getComponentReaderIndexes:()=>ey(R()),getStoreRuntimeDependencies:()=>ew(R()),getNavigationStates:()=>eh(R()),getViewStates:()=>eS(R()),getToolStates:()=>ex(R()),getExportStates:()=>ej(R()),getCreateTransformers:()=>eC(R()),getLoadedData:()=>eD(R()),getInitialDomainState:()=>ev(R()),getFrontendData:()=>eI(R()),getBackendData:()=>eP(R()),getPublishedData:()=>eM(R()),getActiveRole:()=>ek(R()),getActiveSessionData:()=>e$(R()),getDomain:()=>eL,getComponentReader:()=>eV,getCompositionProjections:()=>eB,getDimensionSystem:()=>eF,getValidationProjections:()=>eW,getSketchingProjections:()=>e_,getPositionProjections:()=>eq,getCollisionProjections:()=>eO,getSnappingProjections:()=>eU,getConstraintProjections:()=>eG,getProjectedEntitiesProjections:()=>eH,getStoreSystem:()=>eJ,getNavigationSystem:()=>eK,getUndoSystem:()=>eQ,getRecipeCookerSystem:()=>eX,getActionSystem:()=>eY,getBlenderProjections:()=>eZ,getExpressionContext:()=>eN(R()),getDomainSystems:function(){return e0},getDomainContext:function(){return e1}},eL=new t({selectors:ez}),eV=new j({selectors:ez}),eB=new d({selectors:ez}),eF=new i({selectors:ez}),eW=new y({selectors:ez}),e_=new w({selectors:ez}),eq=new f({selectors:ez}),eO=new m({selectors:ez}),eU=new u({selectors:ez}),eG=new g({selectors:ez}),eH=new p({selectors:ez}),eJ=new r({selectors:ez,domainServicesSelectors:z,environmentSelectors:L}),eK=new a({selectors:ez,domainServicesSelectors:z}),eQ=new c({selectors:ez}),eX=new s({selectors:ez}),eY=new o({selectors:ez}),eZ=new l({selectors:ez,domainServicesSelectors:z}),e0={domainContextSelectors:ez,domain:eL,componentReader:eV,compositionProjections:eB,blenderProjections:eZ,validationProjections:eW,storeSystem:eJ,navigationSystem:eK,dimensionSystem:eF,undoSystem:eQ,recipeCooker:eX,actionSystem:eY,sketchingProjections:e_,collisionProjections:eO,positionProjections:eq,snappingProjections:eU,projectedEntitiesProjections:eH,constraintProjections:eG},e1=new C({selectors:ez,actions:E,getExtensionSystems:V});return ez};
@@ -61,7 +61,7 @@ export declare function createDomainRuntimeSlices<State extends DomainRuntimeSta
61
61
  selectAdminPreset: import("@salsita-ai/common/utils").Selector<import("./index.js").SpecSelectorState, import("../index.js").AnyProductPreset>;
62
62
  selectAdminModelVersion: import("@salsita-ai/common/utils").Selector<import("./index.js").SpecSelectorState, number>;
63
63
  selectThemeOptions: import("@salsita-ai/common/utils").Selector<import("./index.js").SpecSelectorState, import("@mui/material").ThemeOptions>;
64
- selectAssistant: import("@salsita-ai/common/utils").Selector<import("./index.js").SpecSelectorState, import("../index.js").AssistantManifest | null>;
64
+ selectAssistant: import("@salsita-ai/common/utils").Selector<import("./index.js").SpecSelectorState, Required<import("../index.js").AssistantManifest> | null>;
65
65
  selectConfiguratorFactory: import("@salsita-ai/common/utils").Selector<import("./index.js").SpecSelectorState, import("../index.js").AnyDomainFactory>;
66
66
  selectAdminFactory: import("@salsita-ai/common/utils").Selector<import("./index.js").SpecSelectorState, import("../index.js").AnyDomainFactory>;
67
67
  selectConfiguratorComponentOptics: import("@salsita-ai/common/utils").Selector<import("./index.js").SpecSelectorState, readonly import("../index.js").AnyDomainComponentOptic[]>;
@@ -104,7 +104,7 @@ export declare function createDomainRuntimeSlices<State extends DomainRuntimeSta
104
104
  getAdminPreset: () => import("../index.js").AnyProductPreset;
105
105
  getAdminModelVersion: () => number;
106
106
  getThemeOptions: () => import("@mui/material").ThemeOptions;
107
- getAssistant: () => import("../index.js").AssistantManifest | null;
107
+ getAssistant: () => Required<import("../index.js").AssistantManifest> | null;
108
108
  getConfiguratorFactory: () => import("../index.js").AnyDomainFactory;
109
109
  getAdminFactory: () => import("../index.js").AnyDomainFactory;
110
110
  getConfiguratorComponentOptics: () => readonly import("../index.js").AnyDomainComponentOptic[];
@@ -389,7 +389,7 @@ export declare function createDomainRuntimeSlices<State extends DomainRuntimeSta
389
389
  selectActiveConfigurationId: import("@salsita-ai/common/utils").Selector<import("./index.js").DomainContextSelectorState, string>;
390
390
  selectActiveRole: import("@salsita-ai/common/utils").Selector<import("./index.js").DomainContextSelectorState, import("@salsita-ai/contracts/api").SessionRole>;
391
391
  selectActiveSessionData: import("@salsita-ai/common/utils").Selector<import("./index.js").DomainContextSelectorState, Record<string, unknown>>;
392
- selectExpressionContext: import("@salsita-ai/common/utils").Selector<import("./index.js").DomainContextSelectorState, import("../index.js").AnyExpressionContext>;
392
+ selectExpressionContext: import("@salsita-ai/common/utils").Selector<import("./index.js").DomainContextSelectorState, import("./index.js").AnyExpressionContext>;
393
393
  getInitializationContext: () => import("./index.js").DomainContextInitializationContext | null;
394
394
  getInitializationState: () => import("./index.js").DomainContextInitializationState;
395
395
  getNextInitializationContext: () => import("./index.js").DomainContextInitializationContext;
@@ -442,7 +442,7 @@ export declare function createDomainRuntimeSlices<State extends DomainRuntimeSta
442
442
  getRecipeCookerSystem: () => import("../index.js").AnyRecipeCookerSystem;
443
443
  getActionSystem: () => import("../index.js").AnyActionSystem;
444
444
  getBlenderProjections: () => import("../index.js").AnyBlenderProjections;
445
- getExpressionContext: () => import("../index.js").AnyExpressionContext;
445
+ getExpressionContext: () => import("./index.js").AnyExpressionContext;
446
446
  getDomainSystems: () => import("../index.js").AnyDomainContextSystems;
447
447
  getDomainContext: () => import("./index.js").DomainContext;
448
448
  };
@@ -498,7 +498,7 @@ export declare function createDomainRuntimeSlices<State extends DomainRuntimeSta
498
498
  selectActiveConfigurationId: import("@salsita-ai/common/utils").Selector<import("./index.js").DomainContextSelectorState, string>;
499
499
  selectActiveRole: import("@salsita-ai/common/utils").Selector<import("./index.js").DomainContextSelectorState, import("@salsita-ai/contracts/api").SessionRole>;
500
500
  selectActiveSessionData: import("@salsita-ai/common/utils").Selector<import("./index.js").DomainContextSelectorState, Record<string, unknown>>;
501
- selectExpressionContext: import("@salsita-ai/common/utils").Selector<import("./index.js").DomainContextSelectorState, import("../index.js").AnyExpressionContext>;
501
+ selectExpressionContext: import("@salsita-ai/common/utils").Selector<import("./index.js").DomainContextSelectorState, import("./index.js").AnyExpressionContext>;
502
502
  getInitializationContext: () => import("./index.js").DomainContextInitializationContext | null;
503
503
  getInitializationState: () => import("./index.js").DomainContextInitializationState;
504
504
  getNextInitializationContext: () => import("./index.js").DomainContextInitializationContext;
@@ -551,7 +551,7 @@ export declare function createDomainRuntimeSlices<State extends DomainRuntimeSta
551
551
  getRecipeCookerSystem: () => import("../index.js").AnyRecipeCookerSystem;
552
552
  getActionSystem: () => import("../index.js").AnyActionSystem;
553
553
  getBlenderProjections: () => import("../index.js").AnyBlenderProjections;
554
- getExpressionContext: () => import("../index.js").AnyExpressionContext;
554
+ getExpressionContext: () => import("./index.js").AnyExpressionContext;
555
555
  getDomainSystems: () => import("../index.js").AnyDomainContextSystems;
556
556
  getDomainContext: () => import("./index.js").DomainContext;
557
557
  };
@@ -651,7 +651,7 @@ export declare const createDomainRuntime: (props: Omit<Props<DomainRuntimeState>
651
651
  selectAdminPreset: import("@salsita-ai/common/utils").Selector<import("./index.js").SpecSelectorState, import("../index.js").AnyProductPreset>;
652
652
  selectAdminModelVersion: import("@salsita-ai/common/utils").Selector<import("./index.js").SpecSelectorState, number>;
653
653
  selectThemeOptions: import("@salsita-ai/common/utils").Selector<import("./index.js").SpecSelectorState, import("@mui/material").ThemeOptions>;
654
- selectAssistant: import("@salsita-ai/common/utils").Selector<import("./index.js").SpecSelectorState, import("../index.js").AssistantManifest | null>;
654
+ selectAssistant: import("@salsita-ai/common/utils").Selector<import("./index.js").SpecSelectorState, Required<import("../index.js").AssistantManifest> | null>;
655
655
  selectConfiguratorFactory: import("@salsita-ai/common/utils").Selector<import("./index.js").SpecSelectorState, import("../index.js").AnyDomainFactory>;
656
656
  selectAdminFactory: import("@salsita-ai/common/utils").Selector<import("./index.js").SpecSelectorState, import("../index.js").AnyDomainFactory>;
657
657
  selectConfiguratorComponentOptics: import("@salsita-ai/common/utils").Selector<import("./index.js").SpecSelectorState, readonly import("../index.js").AnyDomainComponentOptic[]>;
@@ -694,7 +694,7 @@ export declare const createDomainRuntime: (props: Omit<Props<DomainRuntimeState>
694
694
  getAdminPreset: () => import("../index.js").AnyProductPreset;
695
695
  getAdminModelVersion: () => number;
696
696
  getThemeOptions: () => import("@mui/material").ThemeOptions;
697
- getAssistant: () => import("../index.js").AssistantManifest | null;
697
+ getAssistant: () => Required<import("../index.js").AssistantManifest> | null;
698
698
  getConfiguratorFactory: () => import("../index.js").AnyDomainFactory;
699
699
  getAdminFactory: () => import("../index.js").AnyDomainFactory;
700
700
  getConfiguratorComponentOptics: () => readonly import("../index.js").AnyDomainComponentOptic[];
@@ -979,7 +979,7 @@ export declare const createDomainRuntime: (props: Omit<Props<DomainRuntimeState>
979
979
  selectActiveConfigurationId: import("@salsita-ai/common/utils").Selector<import("./index.js").DomainContextSelectorState, string>;
980
980
  selectActiveRole: import("@salsita-ai/common/utils").Selector<import("./index.js").DomainContextSelectorState, import("@salsita-ai/contracts/api").SessionRole>;
981
981
  selectActiveSessionData: import("@salsita-ai/common/utils").Selector<import("./index.js").DomainContextSelectorState, Record<string, unknown>>;
982
- selectExpressionContext: import("@salsita-ai/common/utils").Selector<import("./index.js").DomainContextSelectorState, import("../index.js").AnyExpressionContext>;
982
+ selectExpressionContext: import("@salsita-ai/common/utils").Selector<import("./index.js").DomainContextSelectorState, import("./index.js").AnyExpressionContext>;
983
983
  getInitializationContext: () => import("./index.js").DomainContextInitializationContext | null;
984
984
  getInitializationState: () => import("./index.js").DomainContextInitializationState;
985
985
  getNextInitializationContext: () => import("./index.js").DomainContextInitializationContext;
@@ -1032,7 +1032,7 @@ export declare const createDomainRuntime: (props: Omit<Props<DomainRuntimeState>
1032
1032
  getRecipeCookerSystem: () => import("../index.js").AnyRecipeCookerSystem;
1033
1033
  getActionSystem: () => import("../index.js").AnyActionSystem;
1034
1034
  getBlenderProjections: () => import("../index.js").AnyBlenderProjections;
1035
- getExpressionContext: () => import("../index.js").AnyExpressionContext;
1035
+ getExpressionContext: () => import("./index.js").AnyExpressionContext;
1036
1036
  getDomainSystems: () => import("../index.js").AnyDomainContextSystems;
1037
1037
  getDomainContext: () => import("./index.js").DomainContext;
1038
1038
  };
@@ -1088,7 +1088,7 @@ export declare const createDomainRuntime: (props: Omit<Props<DomainRuntimeState>
1088
1088
  selectActiveConfigurationId: import("@salsita-ai/common/utils").Selector<import("./index.js").DomainContextSelectorState, string>;
1089
1089
  selectActiveRole: import("@salsita-ai/common/utils").Selector<import("./index.js").DomainContextSelectorState, import("@salsita-ai/contracts/api").SessionRole>;
1090
1090
  selectActiveSessionData: import("@salsita-ai/common/utils").Selector<import("./index.js").DomainContextSelectorState, Record<string, unknown>>;
1091
- selectExpressionContext: import("@salsita-ai/common/utils").Selector<import("./index.js").DomainContextSelectorState, import("../index.js").AnyExpressionContext>;
1091
+ selectExpressionContext: import("@salsita-ai/common/utils").Selector<import("./index.js").DomainContextSelectorState, import("./index.js").AnyExpressionContext>;
1092
1092
  getInitializationContext: () => import("./index.js").DomainContextInitializationContext | null;
1093
1093
  getInitializationState: () => import("./index.js").DomainContextInitializationState;
1094
1094
  getNextInitializationContext: () => import("./index.js").DomainContextInitializationContext;
@@ -1141,7 +1141,7 @@ export declare const createDomainRuntime: (props: Omit<Props<DomainRuntimeState>
1141
1141
  getRecipeCookerSystem: () => import("../index.js").AnyRecipeCookerSystem;
1142
1142
  getActionSystem: () => import("../index.js").AnyActionSystem;
1143
1143
  getBlenderProjections: () => import("../index.js").AnyBlenderProjections;
1144
- getExpressionContext: () => import("../index.js").AnyExpressionContext;
1144
+ getExpressionContext: () => import("./index.js").AnyExpressionContext;
1145
1145
  getDomainSystems: () => import("../index.js").AnyDomainContextSystems;
1146
1146
  getDomainContext: () => import("./index.js").DomainContext;
1147
1147
  };
@@ -2,3 +2,11 @@ export * from './selectors.js';
2
2
  export type * from './types.js';
3
3
  export * from './actions.js';
4
4
  export * from './initialize.js';
5
+ export * from './invariant-builder.js';
6
+ export * from './memoize-expression.js';
7
+ export * from './prepare-action-implementations.js';
8
+ export * from './prepare-domain-expressions.js';
9
+ export * from './resolve-action-modules.js';
10
+ export * from './resolve-component-optic-modules.js';
11
+ export * from './resolve-expression-modules.js';
12
+ export * from './resolve-invariant-modules.js';
@@ -1 +1 @@
1
- export*from"./selectors.js";export*from"./actions.js";export*from"./initialize.js";
1
+ export*from"./selectors.js";export*from"./actions.js";export*from"./initialize.js";export*from"./invariant-builder.js";export*from"./memoize-expression.js";export*from"./prepare-action-implementations.js";export*from"./prepare-domain-expressions.js";export*from"./resolve-action-modules.js";export*from"./resolve-component-optic-modules.js";export*from"./resolve-expression-modules.js";export*from"./resolve-invariant-modules.js";
@@ -1 +1 @@
1
- import{SessionRole as e}from"@salsita-ai/contracts/api";let a=(e,a)=>{let t={};for(let n of e)t[n.name]=a?.[n.name]??n.name;return t},t=(e,a)=>{let t={},n=0;for(let o of e)if("entity"===o.type||"layout"===o.type)t[o.name]=a?.[o.name]??o.name;else{let e=`icon:${n}`;t[e]=a?.[e]??`${e}:${o.elements.length}`,n+=1}return t};export const initializeSpec=n=>{let o=n.adminDomain.presets[0];if(!o)throw Error("Cannot register application spec because admin preset is required.");return{version:n.version,dataConfig:n.dataSpec??null,chunks:n.chunks,publishedDataHash:n.publishedDataHash,initialPublishedData:n.initialPublishedData,canCreate:n.features?.acl?.canCreate??Object.values(e),enableAdminRelease:n.features?.enableAdminRelease??!1,textLanguages:n.domain.textLanguages??n.adminDomain.textLanguages??["en"],baseResourcesUrl:n.resources?.baseResourcesUrl??n.defaultEnvs?.resourcesUrl??"",configurator:{factory:n.domain.domainFactory,presets:n.domain.presets,aliasMap:n.domain.domainFactory.context.aliasMap,entityReflections:n.domain.domainFactory.context.entityReflections,$entityReflections:n.domain.domainFactory.context.$entityReflections,expressions:n.domain.domainFactory.context.expressions,actions:n.domain.domainFactory.context.actions,actionImplementations:n.domain.domainFactory.context.actionImplementations,allowedRootEntityTypes:n.domain.domainFactory.context.allowedRootEntityTypes,migrate:n.domain.domainFactory.context.migrate,componentOptics:n.domain.componentOptics,createTransformers:n.createTransformers??(()=>[]),navigationStates:n.navigation?.navigationStates??[],viewStates:n.navigation?.viewStates??[],toolStates:n.navigation?.toolStates??[],exportStates:n.navigation?.exportStates??[],handlers:n.handlers,handlerHashes:a(n.handlers),elements:n.elements,elementHashes:t(n.elements),appLoader:n.ui?.appLoader??"universal",preview:n.ui?.preview??"auto",alwaysExpand:n.ui?.alwaysExpand??!1,theme:n.ui?.theme??{},assistant:n.assistant??null,deploymentQueryDisabled:n.resources?.deploymentQueryDisabled??!1,prefetchTextureUrls:n.resources?.prefetchTextureUrls??[],modelVersion:n.domain.domainFactory.modelVersion},admin:{factory:n.adminDomain.domainFactory,modelVersion:n.adminDomain.domainFactory.modelVersion,aliasMap:n.adminDomain.domainFactory.context.aliasMap,entityReflections:n.adminDomain.domainFactory.context.entityReflections,$entityReflections:n.adminDomain.domainFactory.context.$entityReflections,expressions:n.adminDomain.domainFactory.context.expressions,actions:n.adminDomain.domainFactory.context.actions,actionImplementations:n.adminDomain.domainFactory.context.actionImplementations,allowedRootEntityTypes:n.adminDomain.domainFactory.context.allowedRootEntityTypes,migrate:n.adminDomain.domainFactory.context.migrate,preset:o,componentOptics:n.adminDomain.componentOptics,navigationStates:n.adminNavigation?.navigationStates??[],viewStates:n.adminNavigation?.viewStates??[],handlers:n.handlers,handlerHashes:a(n.handlers),elements:n.elements,elementHashes:t(n.elements)}}};
1
+ import{SessionRole as e}from"@salsita-ai/contracts/api";import{resolveElementModules as t}from"../../application/element-registration.js";import{resolveHandlerModules as a}from"../../application/handler-registration.js";import{resolveImportedTransformers as o,resolveTransformerModules as n}from"../../application/resolve-imported-transformers.js";import{resolveComponentOpticModules as i}from"./resolve-component-optic-modules.js";export const initializeSpec=s=>{let r=s.adminDomain.presets[0];if(!r)throw Error("Cannot register application spec because admin preset is required.");let m=a(s.handlers),c=t(s.elements),d=(e=>{let t={};for(let a of e)t[a.name]=(void 0)??a.name;return t})(m),l=(e=>{let t={},a=0;for(let o of e)if("entity"===o.type||"layout"===o.type)t[o.name]=(void 0)??o.name;else{let e=`icon:${a}`;t[e]=(void 0)??`${e}:${o.elements.length}`,a+=1}return t})(c),p=n(s.transformers?.importedTransformers??[]),y=s.transformers?.specTransformers??[];return{version:s.version,dataConfig:s.dataSpec??null,chunks:s.chunks,publishedDataHash:s.publishedDataHash,initialPublishedData:s.initialPublishedData,canCreate:s.features?.acl?.canCreate??Object.values(e),enableAdminRelease:s.features?.enableAdminRelease??!1,textLanguages:s.domain.textLanguages??s.adminDomain.textLanguages??["en"],baseResourcesUrl:s.resources?.baseResourcesUrl??s.defaultEnvs?.resourcesUrl??"",configurator:{factory:s.domain.domainFactory,presets:s.domain.presets,aliasMap:s.domain.domainFactory.context.aliasMap,entityReflections:s.domain.domainFactory.context.entityReflections,$entityReflections:s.domain.domainFactory.context.$entityReflections,expressions:s.domain.domainFactory.context.expressions,actions:s.domain.domainFactory.context.actions,actionImplementations:s.domain.domainFactory.context.actionImplementations,allowedRootEntityTypes:s.domain.domainFactory.context.allowedRootEntityTypes,migrate:s.domain.domainFactory.context.migrate,componentOptics:i(s.domain.componentOptics),createTransformers:e=>o(p,y,e),navigationStates:s.navigation?.navigationStates??[],viewStates:s.navigation?.viewStates??[],toolStates:s.navigation?.toolStates??[],exportStates:s.navigation?.exportStates??[],handlers:m,handlerHashes:d,elements:c,elementHashes:l,appLoader:s.ui?.appLoader??"universal",preview:s.ui?.preview??"auto",alwaysExpand:s.ui?.alwaysExpand??!1,theme:s.ui?.theme??{},assistant:s.assistant??null,deploymentQueryDisabled:s.resources?.deploymentQueryDisabled??!1,prefetchTextureUrls:s.resources?.prefetchTextureUrls??[],modelVersion:s.domain.domainFactory.modelVersion},admin:{factory:s.adminDomain.domainFactory,modelVersion:s.adminDomain.domainFactory.modelVersion,aliasMap:s.adminDomain.domainFactory.context.aliasMap,entityReflections:s.adminDomain.domainFactory.context.entityReflections,$entityReflections:s.adminDomain.domainFactory.context.$entityReflections,expressions:s.adminDomain.domainFactory.context.expressions,actions:s.adminDomain.domainFactory.context.actions,actionImplementations:s.adminDomain.domainFactory.context.actionImplementations,allowedRootEntityTypes:s.adminDomain.domainFactory.context.allowedRootEntityTypes,migrate:s.adminDomain.domainFactory.context.migrate,preset:r,componentOptics:i(s.adminDomain.componentOptics),navigationStates:s.adminNavigation?.navigationStates??[],viewStates:s.adminNavigation?.viewStates??[],handlers:m,handlerHashes:d,elements:c,elementHashes:l}}};
@@ -1,18 +1,6 @@
1
1
  import type { OmitNever } from '@salsita-ai/common/utils';
2
- import { type AliasMap, type EventualAlias, type ExpandAlias, type ExtractFromAliasedRecord, type TypeOrAlias } from '../core/alias.js';
3
- import type { AnonymousExpression, ExpressionContext } from '../core/expression.js';
4
- import type { $DomainEntity, DomainEntity, EntityByType } from '../core/model.js';
5
- import type { DomainState } from '../core/state.js';
6
- import { type Violation } from './violation.js';
7
- export interface Invariant<ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, ENTITY extends ENTITIES, VIOLATION_TYPE extends string> {
8
- evaluate(selfId: ENTITY['id'], state: DomainState<ENTITIES>, ctx: ExpressionContext<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA>): ReadonlyArray<Violation<VIOLATION_TYPE>>;
9
- }
10
- export type AliasedInvariants<ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, ALIASES extends Record<string, ENTITIES>, VIOLATION_TYPES extends string> = {
11
- [K in TypeOrAlias<ENTITIES, ALIASES>]?: ReadonlyArray<Invariant<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ExpandAlias<ENTITIES, ALIASES, K>, VIOLATION_TYPES>>;
12
- };
13
- export type DeclaredInvariants<ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, $MAP extends Record<ENTITIES['type'], $DomainEntity<ENTITIES>>, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>> = {
14
- readonly [TYPE in ENTITIES['type']]: '$violations' extends keyof $MAP[TYPE] ? $MAP[TYPE]['$violations'] extends () => ReadonlyArray<Violation<infer VIOLATION_TYPE>> ? ReadonlyArray<Invariant<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ENTITIES, VIOLATION_TYPE>> : never : never;
15
- };
2
+ import { type $DomainEntity, type AliasMap, type AliasedInvariants, type AnonymousExpression, type DeclaredInvariants, type DomainEntity, type EntityByType, type EventualAlias, type ExpandAlias, type ExtractFromAliasedRecord, type Invariant, type TypeOrAlias, type Violation } from '../../core/index.js';
3
+ import type { ProjectModule } from '../../project-modules/index.js';
16
4
  type ConflictingInvariants<ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, EXPECTED extends Partial<Record<ENTITIES['type'], ReadonlyArray<Invariant<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ENTITIES, string>>>>, IMPLEMENTED extends Partial<Record<ENTITIES['type'], ReadonlyArray<Invariant<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ENTITIES, string>>>>> = OmitNever<{
17
5
  [K in keyof EXPECTED]: EXPECTED[K] extends [never] ? never : K extends keyof IMPLEMENTED ? ViolationTypeOfInvariants<EXPECTED[K]> extends ViolationTypeOfInvariants<IMPLEMENTED[K]> ? ViolationTypeOfInvariants<IMPLEMENTED[K]> extends ViolationTypeOfInvariants<EXPECTED[K]> ? never : {
18
6
  missing: Exclude<ViolationTypeOfInvariants<EXPECTED[K]>, ViolationTypeOfInvariants<IMPLEMENTED[K]>>;
@@ -42,6 +30,11 @@ export declare class InvariantBuilder<ENTITIES extends DomainEntity<string>, ALL
42
30
  private readonly aliasMap;
43
31
  private readonly invariants;
44
32
  constructor(aliasMap: AliasMap<ALIASES>, invariants?: INVARIANTS);
33
+ /**
34
+ * Adds the invariants of the `src/invariants/` files, as the generated barrel lists them, after
35
+ * checking each file against the folder's contract.
36
+ */
37
+ withInvariantModules(modules: readonly ProjectModule[]): InvariantBuilder<ENTITIES, ALLOWED_ROOT_ENTITIES, $MAP, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ALIASES, ExpandAndMergeInvariants<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ALIASES, INVARIANTS, AliasedInvariants<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ALIASES, string>>>;
45
38
  withInvariants<ALIASED_INVARIANTS extends AliasedInvariants<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ALIASES, string>>(aliasedInvariants: ALIASED_INVARIANTS): InvariantBuilder<ENTITIES, ALLOWED_ROOT_ENTITIES, $MAP, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ALIASES, ExpandAndMergeInvariants<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ALIASES, INVARIANTS, ALIASED_INVARIANTS>>;
46
39
  /**
47
40
  * DO NOT USE in runtime!
@@ -0,0 +1 @@
1
+ import{expandAlias as a}from"../../core/index.js";import{resolveInvariantModules as i}from"./resolve-invariant-modules.js";export class InvariantBuilder{aliasMap;invariants;constructor(a,i={}){this.aliasMap=a,this.invariants=i}withInvariantModules(a){return this.withInvariants(i(a))}withInvariants(i){let t={...this.invariants};return Object.entries(i).forEach(([i,r])=>{a(this.aliasMap,i).forEach(a=>{t[a]=[...t[a]??[],...r]})}),new InvariantBuilder(this.aliasMap,t)}_conflicts={};buildViolationExpressions=()=>{let a={};return Object.entries(this.invariants).forEach(([i,t])=>{a[i]={$violations:{evaluate:(a,i,r)=>t.flatMap(t=>t.evaluate(a,i,r)),meta:{}}}}),a}}
@@ -1,5 +1,4 @@
1
- import type { Expression, ExpressionOrigin } from '../core/expression.js';
2
- import type { DomainEntity, DomainEntityId } from '../core/model.js';
1
+ import type { DomainEntity, DomainEntityId, Expression, ExpressionOrigin } from '../../core/index.js';
3
2
  export interface ExpressionTrace {
4
3
  origin: ExpressionOrigin;
5
4
  entityId: DomainEntityId<string>;
@@ -1,4 +1,4 @@
1
- import type { ActionDefinitions, AnyActionImplementations } from '../core/index.js';
1
+ import type { ActionDefinitions, AnyActionImplementations } from '../../core/index.js';
2
2
  /** The declared actions that have no implementation, and the implementations of undeclared names. */
3
3
  export interface ActionImplementationConflicts {
4
4
  readonly missing: readonly string[];
@@ -0,0 +1,5 @@
1
+ export const findActionImplementationConflicts=(e,t)=>{let n=Object.entries(t).filter(([,e])=>"function"==typeof e).map(([e])=>e);return{missing:e.filter(e=>!n.includes(e)),extra:n.filter(t=>!e.includes(t))}};export const prepareActionImplementations=(e,t)=>{let{missing:n,extra:i}=findActionImplementationConflicts(Object.values(e).map(e=>e.name),t);if(0===n.length&&0===i.length)return t;let o=Error("Domain cannot be instantiated because there are conflicts between declared and implemented actions."+(n.length>0?`
2
+
3
+ Missing actions: ${n.join(", ")}. Add each to a default export of phx.domain.implementActions({ ... }) in src/actions/.`:"")+(i.length>0?`
4
+
5
+ Extra actions: ${i.join(", ")}. Declare each under "actions" in a spec file or remove its implementation.`:"")+"\n");if(n.length>0)throw o;return console.error(o),t};
@@ -1,4 +1,4 @@
1
- import type { AnyExpressions } from '../core/expression.js';
1
+ import type { AnyExpressions } from '../../core/index.js';
2
2
  interface DomainExpressionsSource {
3
3
  readonly expressions: AnyExpressions;
4
4
  readonly $entityReflections: Record<string, {
@@ -0,0 +1,4 @@
1
+ import type { AnyActionImplementations } from '../../core/index.js';
2
+ import { type ProjectModule } from '../../project-modules/index.js';
3
+ /** Validates the `src/actions/` files and merges their implementations by action name; a later file wins. */
4
+ export declare const resolveActionModules: (modules: readonly ProjectModule[]) => AnyActionImplementations;
@@ -0,0 +1 @@
1
+ import{SHARED_FOLDER_HINT as e,createContractError as t,isRecord as o}from"../../project-modules/index.js";let i={expected:"an object of action implementations keyed by action name",fix:`Create it with phx.domain.implementActions({ ... }), ${e}.`},n=e=>"function"==typeof e;export const resolveActionModules=e=>e.reduce((e,r)=>{let c;if(!(o(c=r.exports)&&Object.values(c).every(n)))throw t(r.origin,i,r.exports);return{...e,...r.exports}},{});
@@ -0,0 +1,4 @@
1
+ import type { AnyDomainComponentOptic } from '../../core/index.js';
2
+ import { type ProjectModule } from '../../project-modules/index.js';
3
+ /** Validates the `src/components/` files, or the optics a generated file lists, and flattens them. */
4
+ export declare const resolveComponentOpticModules: (modules: readonly ProjectModule[]) => readonly AnyDomainComponentOptic[];
@@ -0,0 +1 @@
1
+ import{SHARED_FOLDER_HINT as t,isRecord as e,resolveListModule as n}from"../../project-modules/index.js";let o={expected:"an attached component, or an array of them",fix:`Create it with phx.domain.attachComponent(...) (phx.domain.admin.attachComponent(...) under src/admin/), ${t}.`},a=t=>e(t)&&("simple"===t.kind||"dynamic"===t.kind)&&"string"==typeof t.instanceName&&"function"==typeof t.read;export const resolveComponentOpticModules=t=>t.flatMap(t=>n(t,o,a));
@@ -0,0 +1,15 @@
1
+ import type { AnonymousExpression } from '../../core/index.js';
2
+ import { type ProjectModule } from '../../project-modules/index.js';
3
+ /** The expressions of one validated expression file, keyed by entity type or alias, then by expression name. */
4
+ export interface ExpressionModule {
5
+ readonly origin: string;
6
+ readonly expressions: Readonly<Record<string, Readonly<Record<string, AnyAnonymousExpression>>>>;
7
+ }
8
+ type AnyAnonymousExpression = AnonymousExpression<any, any, any, any, any, any, unknown>;
9
+ /**
10
+ * Validates the `src/expressions/` files and rejects an expression that two files define for the
11
+ * same entity type. Merging stays with the caller, because the domain builder and the editor expand
12
+ * aliases at different points; within one file the builder's own duplicate check applies.
13
+ */
14
+ export declare const resolveExpressionModules: (modules: readonly ProjectModule[], aliasMap: Readonly<Record<string, readonly string[]>>) => readonly ExpressionModule[];
15
+ export {};
@@ -0,0 +1 @@
1
+ import{SHARED_FOLDER_HINT as e,createContractError as o,isRecord as t}from"../../project-modules/index.js";let i={expected:"an object of expressions keyed by entity type or alias, then by expression name",fix:`Create it with phx.domain.implementCustomExpressions({ ... }) (phx.domain.admin.implementCustomExpressions({ ... }) under src/admin/), ${e}.`},r=e=>t(e)&&"function"==typeof e.evaluate,n=e=>t(e)&&Object.values(e).every(r);export const resolveExpressionModules=(e,r)=>{let s=new Map;return e.map(e=>{let p;if(!(t(p=e.exports)&&Object.values(p).every(n)))throw o(e.origin,i,e.exports);for(let[o,t]of Object.entries(e.exports))for(let i of r[o]??[o])for(let o of Object.keys(t)){let t=`${i}.${o}`,r=s.get(t);if(void 0!==r&&r!==e.origin)throw Error(`Duplicate expression ${t}: it is defined in both ${r} and ${e.origin}, which would make its value depend on file order. Keep one definition and remove the other.`);s.set(t,e.origin)}return{origin:e.origin,expressions:e.exports}})};
@@ -0,0 +1,6 @@
1
+ import type { Invariant } from '../../core/index.js';
2
+ import { type ProjectModule } from '../../project-modules/index.js';
3
+ type AnyInvariant = Invariant<any, any, any, any, any, any, string>;
4
+ /** Validates the `src/invariants/` files and concatenates their invariants per entity type or alias. */
5
+ export declare const resolveInvariantModules: (modules: readonly ProjectModule[]) => Readonly<Record<string, readonly AnyInvariant[]>>;
6
+ export {};
@@ -0,0 +1 @@
1
+ import{SHARED_FOLDER_HINT as e,createContractError as t,isRecord as r}from"../../project-modules/index.js";let o={expected:"an object of invariant lists keyed by entity type or alias",fix:`Create it with phx.domain.implementCustomInvariants({ ... }) (phx.domain.admin.implementCustomInvariants({ ... }) under src/admin/), ${e}.`},i=e=>r(e)&&"function"==typeof e.evaluate,n=e=>r(e)&&Object.values(e).every(e=>Array.isArray(e)&&e.every(i));export const resolveInvariantModules=e=>{let r={};for(let i of e){if(!n(i.exports))throw t(i.origin,o,i.exports);for(let[e,t]of Object.entries(i.exports))r[e]=[...r[e]??[],...t]}return r};
@@ -22,7 +22,7 @@ export declare const createSpecSelectors: (context: Context) => {
22
22
  selectAdminPreset: import("@salsita-ai/common/utils").Selector<SpecSelectorState, import("../../index.js").AnyProductPreset>;
23
23
  selectAdminModelVersion: import("@salsita-ai/common/utils").Selector<SpecSelectorState, number>;
24
24
  selectThemeOptions: import("@salsita-ai/common/utils").Selector<SpecSelectorState, import("@mui/material").ThemeOptions>;
25
- selectAssistant: import("@salsita-ai/common/utils").Selector<SpecSelectorState, import("../../index.js").AssistantManifest | null>;
25
+ selectAssistant: import("@salsita-ai/common/utils").Selector<SpecSelectorState, Required<import("../../index.js").AssistantManifest> | null>;
26
26
  selectConfiguratorFactory: import("@salsita-ai/common/utils").Selector<SpecSelectorState, import("../../index.js").AnyDomainFactory>;
27
27
  selectAdminFactory: import("@salsita-ai/common/utils").Selector<SpecSelectorState, import("../../index.js").AnyDomainFactory>;
28
28
  selectConfiguratorComponentOptics: import("@salsita-ai/common/utils").Selector<SpecSelectorState, readonly import("../../index.js").AnyDomainComponentOptic[]>;
@@ -65,7 +65,7 @@ export declare const createSpecSelectors: (context: Context) => {
65
65
  getAdminPreset: () => import("../../index.js").AnyProductPreset;
66
66
  getAdminModelVersion: () => number;
67
67
  getThemeOptions: () => import("@mui/material").ThemeOptions;
68
- getAssistant: () => import("../../index.js").AssistantManifest | null;
68
+ getAssistant: () => Required<import("../../index.js").AssistantManifest> | null;
69
69
  getConfiguratorFactory: () => import("../../index.js").AnyDomainFactory;
70
70
  getAdminFactory: () => import("../../index.js").AnyDomainFactory;
71
71
  getConfiguratorComponentOptics: () => readonly import("../../index.js").AnyDomainComponentOptic[];
@@ -1 +1 @@
1
- import{createSelector as e}from"@salsita-ai/common/utils";import{systemElementRegistry as t}from"../../application/element-registration.js";export const createSpecSelectors=n=>{let{getState:a}=n,s=e.withTypes(),r=s([s.leaf(e=>e.spec)],e=>e),o=s([r],e=>e.version),l=s([r],e=>e.baseResourcesUrl),i=s([r],e=>e.configurator),g=s([r],e=>e.dataConfig),m=s([r],e=>e.chunks),p=s([r],e=>e.publishedDataHash),d=s([r],e=>e.initialPublishedData),c=s([r],e=>e.canCreate),u=s([r],e=>e.enableAdminRelease),y=s([r],e=>e.textLanguages),h=s([i],e=>e.modelVersion),f=s([r],e=>e.admin),C=s([f],e=>e.preset),A=s([f],e=>e.modelVersion),E=s([i],e=>e.theme),b=s([i],e=>e.assistant),H=s([i],e=>e.factory),x=s([f],e=>e.factory),D=s([i],e=>e.componentOptics),P=s([f],e=>e.componentOptics),S=s([i],e=>e.appLoader),w=s([i],e=>e.preview),O=s([i],e=>e.alwaysExpand),T=s([i],e=>e.presets),V=s([i],e=>e.deploymentQueryDisabled),L=s([i],e=>e.prefetchTextureUrls),R=s([i],e=>e.handlerHashes),U=s([i],e=>e.handlers),v=s([U,R],(e,t)=>({...(e=>{let t={},n={},a={};for(let s of e)"phoenix"===s.type&&(t[s.name]=s.handler),"system"===s.type&&(n[s.name]=s.handler),"system-async"===s.type&&(a[s.name]=s.handler);return{handlers:t,systemHandlers:n,systemAsyncHandlers:a}})(e),hashes:t})),k=s([i],e=>e.elementHashes),F=s([i],e=>e.elements),M=s([F,k],(e,n)=>({...(e=>{let n={},a={};for(let t of e)"layout"===t.type&&(n[t.name]=t.element),"entity"===t.type&&(a[t.name]=t.element);return{entityElements:{...t.entityElements,...a},layoutElements:{...t.layoutElements,...n}}})(e),hashes:n}));return{selectSpec:r,selectVersion:o,selectBaseResourcesUrl:l,selectConfiguratorSpec:i,selectConfiguratorModelVersion:h,selectAdminSpec:f,selectAdminPreset:C,selectAdminModelVersion:A,selectThemeOptions:E,selectAssistant:b,selectConfiguratorFactory:H,selectAdminFactory:x,selectConfiguratorComponentOptics:D,selectAdminComponentOptics:P,selectAppLoader:S,selectPreview:w,selectAlwaysExpand:O,selectPresetSeed:T,selectDeploymentQueryDisabled:V,selectPrefetchTextureUrls:L,selectTextLanguages:y,selectHandlerHashes:R,selectHandlers:U,selectHandlerSlots:v,selectElementHashes:k,selectElements:F,selectElementSlots:M,selectDataConfig:g,selectChunks:m,selectPublishedDataHash:p,selectInitialPublishedData:d,selectCanCreate:c,selectEnableAdminRelease:u,getVersion:()=>o(a()),getBaseResourcesUrl:()=>l(a()),getConfiguratorSpec:()=>i(a()),getConfiguratorModelVersion:()=>h(a()),getAdminSpec:()=>f(a()),getAdminPreset:()=>C(a()),getAdminModelVersion:()=>A(a()),getThemeOptions:()=>E(a()),getAssistant:()=>b(a()),getConfiguratorFactory:()=>H(a()),getAdminFactory:()=>x(a()),getConfiguratorComponentOptics:()=>D(a()),getAdminComponentOptics:()=>P(a()),getAppLoader:()=>S(a()),getPreview:()=>w(a()),getAlwaysExpand:()=>O(a()),getPresetSeed:()=>T(a()),getDeploymentQueryDisabled:()=>V(a()),getPrefetchTextureUrls:()=>L(a()),getTextLanguages:()=>y(a()),getHandlerHashes:()=>R(a()),getHandlers:()=>U(a()),getHandlerSlots:()=>v(a()),getElementHashes:()=>k(a()),getElements:()=>F(a()),getElementSlots:()=>M(a()),getDataConfig:()=>g(a()),getChunks:()=>m(a()),getPublishedDataHash:()=>p(a()),getInitialPublishedData:()=>d(a()),getCanCreate:()=>c(a()),getEnableAdminRelease:()=>u(a())}};
1
+ import{createSelector as e}from"@salsita-ai/common/utils";import{buildAssistantManifest as t}from"../../application/assistant/index.js";import{systemElementRegistry as n}from"../../application/element-registration.js";export const createSpecSelectors=a=>{let{getState:s}=a,r=e.withTypes(),o=r([r.leaf(e=>e.spec)],e=>e),l=r([o],e=>e.version),i=r([o],e=>e.baseResourcesUrl),m=r([o],e=>e.configurator),g=r([o],e=>e.dataConfig),p=r([o],e=>e.chunks),d=r([o],e=>e.publishedDataHash),c=r([o],e=>e.initialPublishedData),u=r([o],e=>e.canCreate),y=r([o],e=>e.enableAdminRelease),h=r([o],e=>e.textLanguages),f=r([m],e=>e.modelVersion),C=r([o],e=>e.admin),A=r([C],e=>e.preset),E=r([C],e=>e.modelVersion),b=r([m],e=>e.theme),x=r([m],e=>e.assistant),H=r([x],e=>e?t(e):null),D=r([m],e=>e.factory),P=r([C],e=>e.factory),S=r([m],e=>e.componentOptics),w=r([C],e=>e.componentOptics),O=r([m],e=>e.appLoader),T=r([m],e=>e.preview),V=r([m],e=>e.alwaysExpand),L=r([m],e=>e.presets),R=r([m],e=>e.deploymentQueryDisabled),U=r([m],e=>e.prefetchTextureUrls),v=r([m],e=>e.handlerHashes),j=r([m],e=>e.handlers),k=r([j,v],(e,t)=>({...(e=>{let t={},n={},a={};for(let s of e)"phoenix"===s.type&&(t[s.name]=s.handler),"system"===s.type&&(n[s.name]=s.handler),"system-async"===s.type&&(a[s.name]=s.handler);return{handlers:t,systemHandlers:n,systemAsyncHandlers:a}})(e),hashes:t})),F=r([m],e=>e.elementHashes),M=r([m],e=>e.elements),Q=r([M,F],(e,t)=>({...(e=>{let t={},a={};for(let n of e)"layout"===n.type&&(t[n.name]=n.element),"entity"===n.type&&(a[n.name]=n.element);return{entityElements:{...n.entityElements,...a},layoutElements:{...n.layoutElements,...t}}})(e),hashes:t}));return{selectSpec:o,selectVersion:l,selectBaseResourcesUrl:i,selectConfiguratorSpec:m,selectConfiguratorModelVersion:f,selectAdminSpec:C,selectAdminPreset:A,selectAdminModelVersion:E,selectThemeOptions:b,selectAssistant:H,selectConfiguratorFactory:D,selectAdminFactory:P,selectConfiguratorComponentOptics:S,selectAdminComponentOptics:w,selectAppLoader:O,selectPreview:T,selectAlwaysExpand:V,selectPresetSeed:L,selectDeploymentQueryDisabled:R,selectPrefetchTextureUrls:U,selectTextLanguages:h,selectHandlerHashes:v,selectHandlers:j,selectHandlerSlots:k,selectElementHashes:F,selectElements:M,selectElementSlots:Q,selectDataConfig:g,selectChunks:p,selectPublishedDataHash:d,selectInitialPublishedData:c,selectCanCreate:u,selectEnableAdminRelease:y,getVersion:()=>l(s()),getBaseResourcesUrl:()=>i(s()),getConfiguratorSpec:()=>m(s()),getConfiguratorModelVersion:()=>f(s()),getAdminSpec:()=>C(s()),getAdminPreset:()=>A(s()),getAdminModelVersion:()=>E(s()),getThemeOptions:()=>b(s()),getAssistant:()=>H(s()),getConfiguratorFactory:()=>D(s()),getAdminFactory:()=>P(s()),getConfiguratorComponentOptics:()=>S(s()),getAdminComponentOptics:()=>w(s()),getAppLoader:()=>O(s()),getPreview:()=>T(s()),getAlwaysExpand:()=>V(s()),getPresetSeed:()=>L(s()),getDeploymentQueryDisabled:()=>R(s()),getPrefetchTextureUrls:()=>U(s()),getTextLanguages:()=>h(s()),getHandlerHashes:()=>v(s()),getHandlers:()=>j(s()),getHandlerSlots:()=>k(s()),getElementHashes:()=>F(s()),getElements:()=>M(s()),getElementSlots:()=>Q(s()),getDataConfig:()=>g(s()),getChunks:()=>p(s()),getPublishedDataHash:()=>d(s()),getInitialPublishedData:()=>c(s()),getCanCreate:()=>u(s()),getEnableAdminRelease:()=>y(s())}};
@@ -1,8 +1,7 @@
1
1
  import type { ThemeOptions } from '@mui/material';
2
2
  import type { SessionRole } from '@salsita-ai/contracts/api';
3
- import type { AssistantManifest, ChunksSpec, DataSpec, ElementRegistration, HandlerRegistration } from '../../application/index.js';
4
- import type { AnyDomainComponentOptic } from '../../components/index.js';
5
- import type { ActionDefinitions, Any$EntityReflections, AnyActionImplementations, AnyAliasMap, AnyAllowedRootEntityTypes, AnyDomainFactory, AnyEntityReflections, AnyExpressions, AnyProductPreset, DomainEntity, MigrateFunction } from '../../core/index.js';
3
+ import type { AssistantResolvedManifest, ChunksSpec, DataSpec, ElementRegistration, HandlerRegistration } from '../../application/index.js';
4
+ import type { ActionDefinitions, Any$EntityReflections, AnyActionImplementations, AnyAliasMap, AnyAllowedRootEntityTypes, AnyDomainComponentOptic, AnyDomainFactory, AnyEntityReflections, AnyExpressions, AnyProductPreset, DomainEntity, MigrateFunction } from '../../core/index.js';
6
5
  import type { AnyCreateTransformersFactory } from '../../domain-context/store-system/store-system.js';
7
6
  export interface ApplicationConfiguratorSpec {
8
7
  readonly modelVersion: number;
@@ -46,10 +45,10 @@ export interface ApplicationConfiguratorSpec {
46
45
  readonly alwaysExpand: boolean;
47
46
  readonly theme: ThemeOptions;
48
47
  /**
49
- * Experimental assistant manifest with its generated GraphQL SDL, or `null` when the application
48
+ * Resolved assistant manifest used to rebuild GraphQL SDL, or `null` when the application
50
49
  * spec declares no `assistant` section. Replaced by editor hot reload when the section changes.
51
50
  */
52
- readonly assistant: AssistantManifest | null;
51
+ readonly assistant: AssistantResolvedManifest | null;
53
52
  /**
54
53
  * When true, resource urls are not suffixed with the `?did=<deploymentId>` cache-busting
55
54
  * query — useful for demos serving local blob urls.
@@ -1,5 +1,5 @@
1
1
  import { type Localizable } from '@salsita-ai/common/utils';
2
- import { type ComponentSnapshot } from '../core/component.js';
2
+ import { type ComponentSnapshot } from '../core/index.js';
3
3
  import { type AngleIndicatorBaseState } from './common/index.js';
4
4
  export type AngleIndicatorComponentState = AngleIndicatorBaseState & {
5
5
  /**
@@ -0,0 +1 @@
1
+ import{EnhancedLocalizableSchema as o}from"@salsita-ai/common/utils";import{SystemComponentBuilder as t,isSnapshotOfComponentType as e}from"../core/index.js";import{AngleIndicatorProperties as n}from"./common/index.js";export const angleIndicatorComponent=t.component("angleIndicator").withState({tsType:"AngleIndicatorComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"AngleIndicatorComponentState"}],type:"object",properties:{...n,label:o,visible:{type:"boolean"},force:{type:"boolean"}},required:["positionX","positionY","positionZ","startAngle","sweepAngle"],additionalProperties:!1}).build();export const isAngleIndicatorSnapshot=e(angleIndicatorComponent);
@@ -0,0 +1 @@
1
+ import{SystemComponentBuilder as t}from"../core/index.js";export const AttributeSwitchValueSchema={type:["string","number","boolean"]};export const attributeSwitchComponent=t.component("attributeSwitch").withState({type:"object",properties:{value:AttributeSwitchValueSchema},tsType:"AttributeSwitchComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"AttributeSwitchComponentState"}],required:["value"],additionalProperties:!1}).withWritableKeys(["value"]).build();
@@ -1,4 +1,4 @@
1
- import type { ComponentSnapshot } from '../core/component.js';
1
+ import { type ComponentSnapshot } from '../core/index.js';
2
2
  export type AutorotateCameraComponentState = {
3
3
  /**
4
4
  * Speed of autorotation in radians per second.
@@ -0,0 +1 @@
1
+ import{SystemComponentBuilder as e}from"../core/index.js";export const AutorotateCameraComponentName="autorotateCamera";export const autorotateCameraComponent=e.component(AutorotateCameraComponentName).withState({type:"object",tsType:"AutorotateCameraComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"AutorotateCameraComponentState"}],properties:{speed:{type:"number"},pauseOnInteraction:{type:"boolean"},resumeDelay:{type:"number"}},required:[],additionalProperties:!1}).build();export const isAutorotateCameraComponent=e=>e.componentInstance.componentType.name===AutorotateCameraComponentName;
@@ -1,4 +1,4 @@
1
- import type { ComponentInstance, ComponentSnapshot } from '../core/component.js';
1
+ import { type ComponentInstance, type ComponentSnapshot } from '../core/index.js';
2
2
  export type BasicSidebarFooterComponentState = Record<string, never>;
3
3
  export declare const basicSidebarFooterComponent: import("../index.js").SystemComponentType<"basicSidebarFooter", BasicSidebarFooterComponentState, never>;
4
4
  export type BasicSidebarFooterComponent = typeof basicSidebarFooterComponent;
@@ -0,0 +1 @@
1
+ import{SystemComponentBuilder as o,isInstanceOfComponentType as e,isSnapshotOfComponentType as t}from"../core/index.js";export const basicSidebarFooterComponent=o.component("basicSidebarFooter").withState({type:"object",tsType:"BasicSidebarFooterComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"BasicSidebarFooterComponentState"}],properties:{},required:[],additionalProperties:!1}).build();export const isBasicSidebarFooterSnapshot=t(basicSidebarFooterComponent);export const isBasicSidebarFooterInstance=e(basicSidebarFooterComponent);
@@ -0,0 +1 @@
1
+ import{SystemComponentBuilder as e,isSnapshotOfComponentType as t}from"../core/index.js";export const cameraBasedHiddenEntityObjectComponent=e.component("cameraBasedHiddenEntityObject").withState({type:"object",tsType:"CameraBasedHiddenEntityObjectComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"CameraBasedHiddenEntityObjectComponentState"}],properties:{normal:{type:"object",properties:{x:{type:"number"},y:{type:"number"},z:{type:"number"}},required:["x","y","z"],additionalProperties:!1},constant:{type:"number"},behind:{type:"boolean"}},required:["normal","constant"],additionalProperties:!1}).build();export const isCameraBasedHiddenEntityObjectComponent=t(cameraBasedHiddenEntityObjectComponent);
@@ -0,0 +1 @@
1
+ import{SystemComponentBuilder as e,isSnapshotOfComponentType as t}from"../core/index.js";export const cameraBasedHiddenEntityComponent=e.component("cameraBasedHiddenEntity").withState({type:"object",tsType:"CameraBasedHiddenEntityComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"CameraBasedHiddenEntityComponentState"}],properties:{normal:{type:"object",properties:{x:{type:"number"},y:{type:"number"},z:{type:"number"}},required:["x","y","z"],additionalProperties:!1},constant:{type:"number"},behind:{type:"boolean"}},required:["normal","constant"],additionalProperties:!1}).build();export const isCameraBasedHiddenEntityComponent=t(cameraBasedHiddenEntityComponent);
@@ -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
  export type CanvasConfigComponentState = {
3
3
  /**
4
4
  * If true, highlighting will be disabled.
@@ -0,0 +1 @@
1
+ import{SystemComponentBuilder as e,isInstanceOfComponentType as n,isSnapshotOfComponentType as o}from"../core/index.js";export const canvasConfigComponent=e.component("canvasConfig").withState({type:"object",tsType:"CanvasConfigComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"CanvasConfigComponentState"}],properties:{highlightingDisabled:{type:"boolean"},frameloop:{type:"string",enum:["always","demand","never"]},__doNotSuspendEnvironment:{type:"boolean"},precision:{type:"string",enum:["highp","mediump","lowp"]},alpha:{type:"boolean"},premultipliedAlpha:{type:"boolean"},antialias:{type:"boolean"},stencil:{type:"boolean"},preserveDrawingBuffer:{type:"boolean"},powerPreference:{type:"string",enum:["high-performance","low-power","default"]},depth:{type:"boolean"},logarithmicDepthBuffer:{type:"boolean"},failIfMajorPerformanceCaveat:{type:"boolean"},shadows:{type:"string",enum:["basic","percentage","soft","variance"]},enableFastHighlight:{type:"boolean"},fastHighlightColor:{type:"string"},fastHighlightIntensity:{type:"number"}},required:[],additionalProperties:!1}).build();export const isCanvasConfigSnapshot=o(canvasConfigComponent);export const isCanvasConfigInstance=n(canvasConfigComponent);
@@ -0,0 +1 @@
1
+ import{SystemComponentBuilder as n,isInstanceOfComponentType as t,isSnapshotOfComponentType as o}from"../core/index.js";export const canvasCustomEnvironmentComponent=n.component("canvasCustomEnvironment").withState({type:"object",tsType:"CanvasCustomEnvironmentComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"CanvasCustomEnvironmentComponentState"}],properties:{name:{type:"string"}},required:["name"],additionalProperties:!1}).build();export const isCanvasCustomEnvironmentSnapshot=o(canvasCustomEnvironmentComponent);export const isCanvasCustomEnvironmentInstance=t(canvasCustomEnvironmentComponent);
@@ -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
  export type CanvasPaddingComponentState = {
3
3
  /**
4
4
  * Fraction of the available left space to be applied to the left side of the canvas.
@@ -0,0 +1 @@
1
+ import{SystemComponentBuilder as n,isInstanceOfComponentType as t,isSnapshotOfComponentType as e}from"../core/index.js";export const canvasPaddingComponent=n.component("canvasPadding").withState({type:"object",tsType:"CanvasPaddingComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"CanvasPaddingComponentState"}],properties:{left:{type:"number"},right:{type:"number"},top:{type:"number"},bottom:{type:"number"}},required:[],additionalProperties:!1}).build();export const isCanvasPaddingSnapshot=e(canvasPaddingComponent);export const isCanvasPaddingInstance=t(canvasPaddingComponent);
@@ -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
  export type CanvasPresetEnvironmentComponentState = {
3
3
  /**
4
4
  * Intensity of ambient light in the scene. Defaults to 0.7 if not specified.
@@ -0,0 +1 @@
1
+ import{SystemComponentBuilder as e,isInstanceOfComponentType as n,isSnapshotOfComponentType as t}from"../core/index.js";export const canvasPresetEnvironmentComponent=e.component("canvasPresetEnvironment").withState({type:"object",tsType:"CanvasPresetEnvironmentComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"CanvasPresetEnvironmentComponentState"}],properties:{ambientLightIntensity:{type:"number"},frames:{type:"number"},near:{type:"number"},far:{type:"number"},preset:{type:"string",enum:["apartment","city","dawn","forest","lobby","night","park","studio","sunset","warehouse"]},resolution:{type:"number"},blur:{type:"number"}},required:[],additionalProperties:!1}).build();export const isCanvasPresetEnvironmentSnapshot=t(canvasPresetEnvironmentComponent);export const isCanvasPresetEnvironmentInstance=n(canvasPresetEnvironmentComponent);
@@ -1,5 +1,5 @@
1
- import type { ComponentInstance, ComponentSnapshot, SystemComponentTypeConstraint } from '../core/index.js';
2
- import { type GroupedRecipeItems } from './common/recipes.js';
1
+ import { type ComponentInstance, type ComponentSnapshot, type SystemComponentTypeConstraint } from '../core/index.js';
2
+ import { type GroupedRecipeItems } from '../system-components/index.js';
3
3
  export type ChildEntityRecipeHierarchyComponentState = {
4
4
  /**
5
5
  * The fixable violations.
@@ -0,0 +1 @@
1
+ import{SystemComponentBuilder as e}from"../core/index.js";import{GroupedRecipeItemsSchema as i}from"../system-components/index.js";export const childEntityRecipeHierarchyComponent=e.component("childEntityRecipeHierarchy").withState({type:"object",tsType:"ChildEntityRecipeHierarchyComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"ChildEntityRecipeHierarchyComponentState"}],properties:{recipes:i,fixableViolations:{type:"array",items:{type:"string"}}},definitions:{GroupedRecipeItems:i},required:["recipes"],additionalProperties:!1}).build();export const isChildEntityRecipeHierarchySnapshot=e=>e.componentInstance.componentType===childEntityRecipeHierarchyComponent;export const isChildEntityRecipeHierarchyInstance=e=>e.componentType===childEntityRecipeHierarchyComponent;
@@ -0,0 +1 @@
1
+ import{SystemComponentBuilder as t,isSnapshotOfComponentType as e}from"../core/index.js";export const clientSideImageComponent=t.component("clientSideImage").withState({type:"object",tsType:"ClientSideImageComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"ClientSideImageComponentState"}],properties:{exportState:{type:"string"},width:{type:"number"},height:{type:"number"},fileFormat:{type:"string",enum:["PNG","JPEG"]},backgroundColor:{type:"string",pattern:"^#[0-9a-fA-F]{6}$"},toolState:{type:"string"},viewState:{type:"string"},navigationState:{type:"string"}},required:["exportState","width","height","fileFormat","toolState","viewState","navigationState"],additionalProperties:!1}).build();export const isClientSideImageComponentSnapshot=e(clientSideImageComponent);