@salsita-ai/sdk 0.49.0 → 0.50.0-develop.016963b09e

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 (1127) 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/errors/diagnostic-codes.d.ts +10 -0
  4. package/dist/application-spec/errors/diagnostic-codes.js +1 -1
  5. package/dist/application-spec/errors/diagnostic-messages.d.ts +10 -0
  6. package/dist/application-spec/errors/diagnostic-messages.js +1 -1
  7. package/dist/application-spec/generate-application/code/common/index.d.ts +1 -0
  8. package/dist/application-spec/generate-application/code/common/index.js +1 -1
  9. package/dist/application-spec/generate-application/code/common/project-module-list.d.ts +8 -0
  10. package/dist/application-spec/generate-application/code/common/project-module-list.js +3 -0
  11. package/dist/application-spec/generate-application/code/domain-runtime-files.js +1 -1
  12. package/dist/application-spec/generate-application/code/project-scaffolding.d.ts +8 -1
  13. package/dist/application-spec/generate-application/code/project-scaffolding.js +2 -2
  14. package/dist/application-spec/generate-application/code/templates/admin-domain-code.d.ts +1 -2
  15. package/dist/application-spec/generate-application/code/templates/admin-domain-code.js +6 -14
  16. package/dist/application-spec/generate-application/code/templates/admin-frontend-code.d.ts +1 -2
  17. package/dist/application-spec/generate-application/code/templates/admin-frontend-code.js +4 -4
  18. package/dist/application-spec/generate-application/code/templates/application-types.js +6 -6
  19. package/dist/application-spec/generate-application/code/templates/configurator-domain-code.d.ts +2 -2
  20. package/dist/application-spec/generate-application/code/templates/configurator-domain-code.js +7 -13
  21. package/dist/application-spec/generate-application/code/templates/configurator-frontend-code.d.ts +1 -2
  22. package/dist/application-spec/generate-application/code/templates/configurator-frontend-code.js +7 -9
  23. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-assistant.d.ts +2 -2
  24. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-assistant.js +1 -1
  25. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-defaults.d.ts +4 -2
  26. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-domain-block.d.ts +3 -1
  27. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-domain-block.js +71 -68
  28. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.d.ts +1 -1
  29. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.js +1 -1
  30. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-phx-globals.js +3 -0
  31. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-relation-expressions.js +1 -1
  32. package/dist/application-spec/generate-application/code/templates/domain-spec.js +7 -7
  33. package/dist/application-spec/generate-application/code/templates/domain.js +4 -4
  34. package/dist/application-spec/generate-application/code/templates/global-definition/generate-action-types.d.ts +11 -0
  35. package/dist/application-spec/generate-application/code/templates/global-definition/generate-action-types.js +8 -0
  36. package/dist/application-spec/generate-application/code/templates/global-definition/index.d.ts +1 -0
  37. package/dist/application-spec/generate-application/code/templates/global-definition/index.js +1 -1
  38. package/dist/application-spec/generate-application/code/templates/globals.js +1 -0
  39. package/dist/application-spec/generate-application/code/templates/index.d.ts +6 -12
  40. package/dist/application-spec/generate-application/code/templates/index.js +1 -1
  41. package/dist/application-spec/generate-application/code/templates/package-json.js +1 -1
  42. package/dist/application-spec/generate-application/code/templates/skills/phoenix-cli-skill.js +1 -0
  43. package/dist/application-spec/generate-application/code/templates/{phoenix-create-configurator-skill.d.ts → skills/phoenix-create-configurator-skill.d.ts} +1 -1
  44. package/dist/application-spec/generate-application/code/templates/skills/phoenix-create-configurator-skill.js +166 -0
  45. package/dist/application-spec/generate-application/code/templates/skills/phoenix-feedback-skill.js +54 -0
  46. package/dist/application-spec/generate-application/code/templates/{phoenix-review-skill.js → skills/phoenix-review-skill.js} +7 -5
  47. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill.js +1 -0
  48. package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.d.ts +1 -0
  49. package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.js +6 -0
  50. package/dist/application-spec/generate-application/code/templates/{common → skills}/sdk-content.d.ts +60 -12
  51. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.js +79 -0
  52. package/dist/application-spec/generate-application/code/templates/webhook-builders.js +9 -4
  53. package/dist/application-spec/generate-application/code/templates/webhooks-config.js +2 -2
  54. package/dist/application-spec/generate-application/runtime/application-runtime.d.ts +1 -3
  55. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.d.ts +3 -3
  56. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.js +1 -1
  57. package/dist/application-spec/generate-application/runtime/sections/actions-runtime.d.ts +14 -0
  58. package/dist/application-spec/generate-application/runtime/sections/actions-runtime.js +1 -0
  59. package/dist/application-spec/generate-application/runtime/sections/assistant-runtime.d.ts +4 -3
  60. package/dist/application-spec/generate-application/runtime/sections/assistant-runtime.js +1 -1
  61. package/dist/application-spec/generate-application/runtime/sections/component-optic.d.ts +2 -1
  62. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.js +1 -1
  63. package/dist/application-spec/generate-application/runtime/sections/index.d.ts +1 -0
  64. package/dist/application-spec/generate-application/runtime/sections/index.js +1 -1
  65. package/dist/application-spec/generate-application/runtime/sections/transformers-runtime.d.ts +2 -4
  66. package/dist/application-spec/parse-application-files/categorize/categorize-files.d.ts +3 -1
  67. package/dist/application-spec/parse-application-files/categorize/categorize-files.js +1 -1
  68. package/dist/application-spec/parse-application-files/merge/index.d.ts +1 -0
  69. package/dist/application-spec/parse-application-files/merge/index.js +1 -1
  70. package/dist/application-spec/parse-application-files/merge/merged-actions.d.ts +11 -0
  71. package/dist/application-spec/parse-application-files/merge/merged-actions.js +1 -0
  72. package/dist/application-spec/parse-application-files/merge/merged-spec.d.ts +2 -0
  73. package/dist/application-spec/parse-application-files/merge/merged-spec.js +1 -1
  74. package/dist/application-spec/parse-application-files/raw-spec/index.d.ts +1 -0
  75. package/dist/application-spec/parse-application-files/raw-spec/index.js +1 -1
  76. package/dist/application-spec/parse-application-files/raw-spec/raw-actions.d.ts +18 -0
  77. package/dist/application-spec/parse-application-files/raw-spec/raw-actions.js +1 -0
  78. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.d.ts +14 -2
  79. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.js +1 -1
  80. package/dist/application-spec/parse-application-files/raw-spec/raw-spec-file.d.ts +2 -0
  81. package/dist/application-spec/parse-application-files/raw-spec/raw-spec-file.js +1 -1
  82. package/dist/application-spec/parse-application-files/resolve/resolve-import-modules.js +1 -1
  83. package/dist/application-spec/parse-application-files/spec/application/admin-spec/admin-spec.js +1 -1
  84. package/dist/application-spec/parse-application-files/spec/application/application-spec.js +1 -1
  85. package/dist/application-spec/parse-application-files/spec/application/configurator-spec/configurator-spec.d.ts +4 -2
  86. package/dist/application-spec/parse-application-files/spec/application/configurator-spec/configurator-spec.js +1 -1
  87. package/dist/application-spec/parse-application-files/spec/common/index.d.ts +1 -0
  88. package/dist/application-spec/parse-application-files/spec/common/index.js +1 -1
  89. package/dist/application-spec/parse-application-files/spec/common/schema-ref-resolver.d.ts +23 -0
  90. package/dist/application-spec/parse-application-files/spec/common/schema-ref-resolver.js +1 -0
  91. package/dist/application-spec/parse-application-files/spec/model/defaults.d.ts +7 -2
  92. package/dist/application-spec/parse-application-files/spec/model/defaults.js +1 -1
  93. package/dist/application-spec/parse-application-files/spec/model/names/action-name.d.ts +10 -0
  94. package/dist/application-spec/parse-application-files/spec/model/names/action-name.js +1 -0
  95. package/dist/application-spec/parse-application-files/spec/model/names/index.d.ts +1 -0
  96. package/dist/application-spec/parse-application-files/spec/model/names/index.js +1 -1
  97. package/dist/application-spec/parse-application-files/spec/relations/reference-field-type.d.ts +25 -0
  98. package/dist/application-spec/parse-application-files/spec/relations/reference-field-type.js +1 -0
  99. package/dist/application-spec/parse-application-files/spec/relations/relation-field-mismatch.d.ts +46 -0
  100. package/dist/application-spec/parse-application-files/spec/relations/relation-field-mismatch.js +1 -0
  101. package/dist/application-spec/parse-application-files/spec/relations/relations.d.ts +4 -3
  102. package/dist/application-spec/parse-application-files/spec/relations/relations.js +1 -1
  103. package/dist/application-spec/parse-application-files/spec/sections/actions.d.ts +35 -0
  104. package/dist/application-spec/parse-application-files/spec/sections/actions.js +1 -0
  105. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-field-type.d.ts +5 -21
  106. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-field-type.js +1 -1
  107. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.d.ts +14 -39
  108. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.js +1 -1
  109. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-server-settings.d.ts +2 -2
  110. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant.d.ts +5 -19
  111. package/dist/application-spec/parse-application-files/spec/sections/index.d.ts +1 -0
  112. package/dist/application-spec/parse-application-files/spec/sections/index.js +1 -1
  113. package/dist/client/authorized-client.d.ts +3 -1
  114. package/dist/client/authorized-client.js +1 -1
  115. package/dist/client/contract.d.ts +34 -0
  116. package/dist/client/contract.js +1 -1
  117. package/dist/client/index.d.ts +2 -2
  118. package/dist/client/index.js +1 -1
  119. package/dist/client/local-authorized-client.d.ts +3 -1
  120. package/dist/client/local-authorized-client.js +1 -1
  121. package/dist/client/memory-authorized-client.d.ts +3 -1
  122. package/dist/client/memory-authorized-client.js +1 -1
  123. package/dist/client/phoenix-api.d.ts +276 -31
  124. package/dist/configurator/application-runtime/extensions/configurator-extension-systems.d.ts +2 -1
  125. package/dist/configurator/application-runtime/extensions/configurator-extension-systems.js +1 -1
  126. package/dist/configurator/application-runtime/extensions/selectors.d.ts +2 -1
  127. package/dist/configurator/application-runtime/extensions/selectors.js +1 -1
  128. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.d.ts +267 -0
  129. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.js +1 -0
  130. package/dist/configurator/{assistant → application-runtime/extensions/systems/assistant-system}/browser-details.d.ts +1 -1
  131. package/dist/configurator/application-runtime/extensions/systems/assistant-system/browser-details.js +1 -0
  132. package/dist/configurator/application-runtime/extensions/systems/assistant-system/change-recorder.d.ts +85 -0
  133. package/dist/configurator/application-runtime/extensions/systems/assistant-system/change-recorder.js +1 -0
  134. package/dist/configurator/{assistant → application-runtime/extensions/systems/assistant-system}/graphql-tools.d.ts +20 -16
  135. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.js +1 -0
  136. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.d.ts +4 -0
  137. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.js +1 -1
  138. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.d.ts +16 -1
  139. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.js +1 -1
  140. package/dist/configurator/application-runtime/extensions/systems/graphql-system/side-effects.d.ts +9 -0
  141. package/dist/configurator/application-runtime/extensions/systems/graphql-system/side-effects.js +1 -0
  142. package/dist/configurator/application-runtime/extensions/systems/index.d.ts +1 -0
  143. package/dist/configurator/application-runtime/extensions/systems/index.js +1 -1
  144. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.d.ts +2 -0
  145. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.js +1 -1
  146. package/dist/configurator/common/frontend-analytics.d.ts +21 -21
  147. package/dist/configurator/index.d.ts +0 -1
  148. package/dist/configurator/index.js +1 -1
  149. package/dist/configurator/pages/DefaultConfiguratorLayout.d.ts +6 -0
  150. package/dist/configurator/pages/DefaultConfiguratorLayout.js +1 -0
  151. package/dist/configurator/pages/LoadedConfiguratorDetailPage.js +1 -1
  152. package/dist/configurator/scene/scene-analytics/scene-analytics.d.ts +2 -2
  153. package/dist/configurator/ui/assistant/AssistantChips.d.ts +11 -0
  154. package/dist/configurator/ui/assistant/AssistantChips.js +1 -0
  155. package/dist/configurator/ui/assistant/AssistantComposer.d.ts +7 -0
  156. package/dist/configurator/ui/assistant/AssistantComposer.js +1 -0
  157. package/dist/configurator/ui/assistant/AssistantMarkdown.d.ts +7 -0
  158. package/dist/configurator/ui/assistant/AssistantMarkdown.js +1 -0
  159. package/dist/configurator/ui/assistant/AssistantPanel.d.ts +11 -0
  160. package/dist/configurator/ui/assistant/AssistantPanel.js +1 -0
  161. package/dist/configurator/ui/assistant/AssistantThread.d.ts +10 -0
  162. package/dist/configurator/ui/assistant/AssistantThread.js +1 -0
  163. package/dist/configurator/ui/assistant/assistant-failure.d.ts +18 -0
  164. package/dist/configurator/ui/assistant/assistant-failure.js +1 -0
  165. package/dist/configurator/ui/assistant/index.d.ts +2 -0
  166. package/dist/configurator/ui/assistant/index.js +1 -0
  167. package/dist/configurator/ui/assistant/streamed-markdown.d.ts +6 -0
  168. package/dist/configurator/ui/assistant/streamed-markdown.js +2 -0
  169. package/dist/configurator/ui/assistant/theme.d.ts +2 -0
  170. package/dist/configurator/ui/assistant/theme.js +1 -0
  171. package/dist/configurator/ui/assistant/thread-items.d.ts +48 -0
  172. package/dist/configurator/ui/assistant/thread-items.js +1 -0
  173. package/dist/configurator/ui/assistant/tool-chip.d.ts +44 -0
  174. package/dist/configurator/ui/assistant/tool-chip.js +1 -0
  175. package/dist/configurator/ui/assistant/use-follow-stream.d.ts +17 -0
  176. package/dist/configurator/ui/assistant/use-follow-stream.js +1 -0
  177. package/dist/configurator/ui/assistant/use-is-assistant-panel-open.d.ts +5 -0
  178. package/dist/configurator/ui/assistant/use-is-assistant-panel-open.js +1 -0
  179. package/dist/configurator/ui/configurator-layout/universal/DesktopLayout.js +9 -9
  180. package/dist/configurator/ui/configurator-layout/universal/DesktopPreview.js +1 -1
  181. package/dist/configurator/ui/configurator-layout/universal/MobileLayout.d.ts +2 -0
  182. package/dist/configurator/ui/configurator-layout/universal/MobileLayout.js +3 -3
  183. package/dist/configurator/ui/configurator-layout/universal/MobilePreview.js +1 -1
  184. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.d.ts +47 -0
  185. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.js +1 -0
  186. package/dist/configurator/ui/configurator-layout/universal/use-scene-safe-area.d.ts +11 -26
  187. package/dist/configurator/ui/configurator-layout/universal/use-scene-safe-area.js +1 -1
  188. package/dist/configurator/ui/legacy/mobile-controls/MobileControls.d.ts +1 -1
  189. package/dist/configurator/ui/phoenix-layout-elements/AssistantToolbarButton.d.ts +10 -0
  190. package/dist/configurator/ui/phoenix-layout-elements/AssistantToolbarButton.js +1 -0
  191. package/dist/configurator/ui/phoenix-layout-elements/index.d.ts +1 -0
  192. package/dist/configurator/ui/phoenix-layout-elements/index.js +1 -1
  193. package/dist/docs/complex-use-cases/filtered-controls-with-fix-dialog.mdx +100 -117
  194. package/dist/docs/complex-use-cases/navigation-reset-selection.mdx +18 -12
  195. package/dist/docs/complex-use-cases/sketching.mdx +0 -38
  196. package/dist/docs/controls/select-attribute/cardselect.mdx +9 -13
  197. package/dist/docs/index.json +12 -2
  198. package/dist/docs/integrations/woocommerce/local-development.mdx +1 -1
  199. package/dist/docs/layouts/custom-price.mdx +14 -16
  200. package/dist/docs/layouts/sidebar/tabs.mdx +24 -21
  201. package/dist/docs/layouts/toolbar.mdx +6 -0
  202. package/dist/docs/other-features/domain-actions.mdx +418 -0
  203. package/dist/docs/other-features/side-effects.mdx +76 -45
  204. package/dist/docs/other-features/transformers.mdx +1 -1
  205. package/dist/docs/other-features/violation-messages.mdx +52 -56
  206. package/dist/docs/phoenix/admin.mdx +11 -26
  207. package/dist/docs/phoenix/best-practices.mdx +1 -0
  208. package/dist/docs/phoenix/configurator-interface.mdx +100 -65
  209. package/dist/docs/phoenix/deployments.mdx +1 -1
  210. package/dist/docs/phoenix/domain-model.mdx +4 -0
  211. package/dist/docs/phoenix/expression-context.mdx +11 -3
  212. package/dist/docs/phoenix/finalization.mdx +1 -1
  213. package/dist/docs/phoenix/getting-started.mdx +1 -1
  214. package/dist/docs/phoenix/integration/headless-mode-external.mdx +5 -5
  215. package/dist/docs/phoenix/integration/widget-mode-external.mdx +5 -5
  216. package/dist/docs/phoenix/localization.mdx +3 -22
  217. package/dist/docs/phoenix/migrations.mdx +45 -5
  218. package/dist/docs/phoenix/phoenix-cli.mdx +181 -66
  219. package/dist/docs/phoenix/project-structure.mdx +28 -12
  220. package/dist/docs/phoenix/quickstart.mdx +2 -2
  221. package/dist/docs/phoenix/sdk-builder-workflow.mdx +20 -16
  222. package/dist/docs/phoenix/state-management.mdx +1 -1
  223. package/dist/docs/phoenix/webhooks.mdx +1 -1
  224. package/dist/docs/recipes-and-delete/recipe-hierarchy-selection.mdx +15 -13
  225. package/dist/docs/relations/hierarchy.mdx +13 -2
  226. package/dist/docs/ux-guidelines/choosing-a-control.mdx +11 -0
  227. package/dist/domain/admin-domain/__generated/enhanced-model.d.ts +1 -2
  228. package/dist/domain/admin-domain/__generated/model/versions/v1.d.ts +1 -1
  229. package/dist/domain/admin-domain/__generated/model/versions/v2.d.ts +1 -1
  230. package/dist/domain/admin-domain/__generated/model/versions/v3.d.ts +1 -1
  231. package/dist/domain/admin-domain/__generated/model/versions/v4.d.ts +1 -1
  232. package/dist/domain/admin-domain/__generated/model/versions/v5.d.ts +1 -1
  233. package/dist/domain/admin-domain/__generated/model/versions/v6.d.ts +2 -2
  234. package/dist/domain/admin-domain/__generated/model/versions/v6.js +1 -1
  235. package/dist/domain/admin-domain/implementation/common-admin-expressions.d.ts +26 -14
  236. package/dist/domain/admin-domain/implementation/common-admin-migrations.d.ts +1 -1
  237. package/dist/domain/admin-domain/implementation/common-admin-publish.d.ts +1 -2
  238. package/dist/domain/admin-domain/index.d.ts +9 -5
  239. package/dist/domain/admin-domain/index.js +1 -1
  240. package/dist/domain/application/GetApplicationWrapperHandler.d.ts +2 -2
  241. package/dist/domain/application/GetThemeHandler.d.ts +1 -1
  242. package/dist/domain/application/GetWebComponentOptions.d.ts +1 -1
  243. package/dist/domain/application/admin-page-factories.d.ts +1 -2
  244. package/dist/domain/application/application-config.d.ts +28 -95
  245. package/dist/domain/application/assistant/assistant-manifest.d.ts +63 -0
  246. package/dist/domain/application/assistant/assistant-resolved-manifest.d.ts +95 -0
  247. package/dist/domain/application/assistant/assistant-value-type.d.ts +9 -0
  248. package/dist/domain/application/assistant/assistant-value-type.js +1 -0
  249. package/dist/domain/application/assistant/build-assistant-manifest.d.ts +4 -0
  250. package/dist/domain/application/assistant/build-assistant-manifest.js +1 -0
  251. package/dist/domain/application/assistant/generate-assistant-prompt.d.ts +3 -0
  252. package/dist/domain/application/assistant/generate-assistant-prompt.js +1 -0
  253. package/dist/domain/application/assistant/index.d.ts +4 -0
  254. package/dist/domain/application/assistant/index.js +1 -0
  255. package/dist/domain/application/assistant-field-options.d.ts +2 -3
  256. package/dist/domain/application/assistant-mutations.d.ts +16 -17
  257. package/dist/domain/application/assistant-mutations.js +1 -1
  258. package/dist/domain/application/assistant-recipe-groups.d.ts +3 -7
  259. package/dist/domain/application/configurator-builder.d.ts +33 -18
  260. package/dist/domain/application/configurator-builder.js +1 -1
  261. package/dist/domain/application/create-initial-published-data.d.ts +6 -7
  262. package/dist/domain/application/index.d.ts +3 -5
  263. package/dist/domain/application/index.js +1 -1
  264. package/dist/domain/application/published-data/DataRowValidatorHandler.d.ts +1 -1
  265. package/dist/domain/application/published-data/FilterPublishedChunksHandler.d.ts +1 -1
  266. package/dist/domain/application/published-data/MapPublishedChunkedDataHandler.d.ts +1 -1
  267. package/dist/domain/application/published-data/MapPublishedRevisionDataHandler.d.ts +1 -1
  268. package/dist/domain/application/published-data/SheetValidatorHandler.d.ts +1 -1
  269. package/dist/domain/application/published-data/build-legend-data.d.ts +1 -1
  270. package/dist/domain/application/published-data/create-finalize-admin-domain.d.ts +1 -2
  271. package/dist/domain/application/published-data/format-field-type.d.ts +1 -1
  272. package/dist/domain/application/published-data/map-data-to-sheet.d.ts +1 -1
  273. package/dist/domain/application/published-data/map-published-chunked-data.d.ts +3 -3
  274. package/dist/domain/application/published-data/map-published-data.d.ts +7 -4
  275. package/dist/domain/application/published-data/validate-sheet-data.d.ts +1 -1
  276. package/dist/domain/available-system-components.js +1 -1
  277. package/dist/domain/core/action/action-factory.d.ts +11 -0
  278. package/dist/domain/core/action/action-factory.js +1 -0
  279. package/dist/domain/core/action/action.d.ts +71 -0
  280. package/dist/domain/core/action/index.d.ts +2 -0
  281. package/dist/domain/core/action/index.js +1 -0
  282. package/dist/domain/{components → core/component}/component-reader-types.d.ts +1 -2
  283. package/dist/domain/{components → core/component}/debug-state-component.d.ts +1 -1
  284. package/dist/domain/core/component/debug-state-component.js +1 -0
  285. package/dist/domain/core/component/domain-component-optic.d.ts +65 -0
  286. package/dist/domain/core/component/domain-component-optic.js +16 -0
  287. package/dist/domain/{components → core/component}/drag-state-component.d.ts +1 -1
  288. package/dist/domain/core/component/drag-state-component.js +1 -0
  289. package/dist/domain/{components → core/component}/export-state-component.d.ts +1 -1
  290. package/dist/domain/core/component/export-state-component.js +1 -0
  291. package/dist/domain/{components → core/component}/fullscreen-state-component.d.ts +1 -1
  292. package/dist/domain/core/component/fullscreen-state-component.js +1 -0
  293. package/dist/domain/{components → core/component}/group-components-by-entity-id-and-name.d.ts +1 -2
  294. package/dist/domain/core/component/group-components-by-entity-id-and-name.js +1 -0
  295. package/dist/domain/{components → core/component}/hover-state-component.d.ts +1 -1
  296. package/dist/domain/core/component/hover-state-component.js +1 -0
  297. package/dist/domain/core/component/index.d.ts +18 -0
  298. package/dist/domain/core/component/index.js +1 -0
  299. package/dist/domain/{components → core/component}/legacy-filter.d.ts +4 -19
  300. package/dist/domain/{components → core/component}/navigation-state-component.d.ts +1 -1
  301. package/dist/domain/core/component/navigation-state-component.js +1 -0
  302. package/dist/domain/{components → core/component}/selection-state-component.d.ts +1 -1
  303. package/dist/domain/core/component/selection-state-component.js +1 -0
  304. package/dist/domain/{components → core/component}/system-component-builder.d.ts +1 -2
  305. package/dist/domain/core/component/system-component-builder.js +1 -0
  306. package/dist/domain/{components → core/component}/system-component-filter.d.ts +38 -20
  307. package/dist/domain/core/component/system-virtual-entity.js +1 -0
  308. package/dist/domain/{components → core/component}/tool-state-component.d.ts +1 -1
  309. package/dist/domain/core/component/tool-state-component.js +1 -0
  310. package/dist/domain/{components → core/component}/updates.d.ts +17 -2
  311. package/dist/domain/{components → core/component}/view-state-component.d.ts +1 -1
  312. package/dist/domain/core/component/view-state-component.js +1 -0
  313. package/dist/domain/{components → core/component}/viewport-state-component.d.ts +1 -1
  314. package/dist/domain/core/component/viewport-state-component.js +1 -0
  315. package/dist/domain/core/data-schema/data-cell-value.d.ts +4 -0
  316. package/dist/domain/core/data-schema/data-schema-array-field.d.ts +5 -0
  317. package/dist/domain/core/data-schema/data-schema-field-object.d.ts +4 -0
  318. package/dist/domain/core/data-schema/data-schema-field-object.js +1 -0
  319. package/dist/domain/core/data-schema/data-schema-field.d.ts +2 -0
  320. package/dist/domain/core/data-schema/data-schema-field.js +1 -0
  321. package/dist/domain/core/data-schema/data-schema-localized-field.d.ts +4 -0
  322. package/dist/domain/core/data-schema/data-schema-localized-field.js +1 -0
  323. package/dist/domain/core/data-schema/data-schema-primitive-field.d.ts +5 -0
  324. package/dist/domain/core/data-schema/data-schema-primitive-field.js +1 -0
  325. package/dist/domain/core/data-schema/data-schema.d.ts +2 -0
  326. package/dist/domain/core/data-schema/data-schema.js +1 -0
  327. package/dist/domain/core/data-schema/index.d.ts +7 -0
  328. package/dist/domain/core/data-schema/index.js +1 -0
  329. package/dist/domain/core/decoder/create-decoder.d.ts +6 -0
  330. package/dist/domain/core/decoder/create-decoder.js +1 -0
  331. package/dist/domain/core/decoder/decoder.d.ts +6 -0
  332. package/dist/domain/core/decoder/decoder.js +1 -0
  333. package/dist/domain/core/decoder/index.d.ts +2 -0
  334. package/dist/domain/core/decoder/index.js +1 -0
  335. package/dist/domain/core/domain-factory.d.ts +7 -4
  336. package/dist/domain/core/domain-factory.js +1 -1
  337. package/dist/domain/core/domain.d.ts +4 -5
  338. package/dist/domain/core/domain.js +1 -1
  339. package/dist/domain/core/emission/index.d.ts +8 -0
  340. package/dist/domain/core/emission/index.js +1 -0
  341. package/dist/domain/core/emission/reset-state-emission.d.ts +12 -0
  342. package/dist/domain/core/emission/reset-state-emission.js +1 -0
  343. package/dist/domain/core/emission/state-emission.d.ts +4 -0
  344. package/dist/domain/core/emission/state-emission.js +1 -0
  345. package/dist/domain/core/emission/state-update-emission.d.ts +14 -0
  346. package/dist/domain/core/emission/state-update-emission.js +1 -0
  347. package/dist/domain/core/emission/state-validation-result.d.ts +18 -0
  348. package/dist/domain/core/emission/state-validation-result.js +1 -0
  349. package/dist/domain/core/emission/transformation-log.d.ts +2 -0
  350. package/dist/domain/core/emission/transformation-log.js +1 -0
  351. package/dist/domain/core/emission/transformer-log-entry.d.ts +6 -0
  352. package/dist/domain/core/emission/transformer-log-entry.js +1 -0
  353. package/dist/domain/core/emission/transformer-log.d.ts +11 -0
  354. package/dist/domain/core/emission/transformer-log.js +1 -0
  355. package/dist/domain/core/emission/transformer-phase.d.ts +1 -0
  356. package/dist/domain/core/emission/transformer-phase.js +1 -0
  357. package/dist/domain/core/expression/aliased-expressions.d.ts +10 -0
  358. package/dist/domain/core/expression/aliased-expressions.js +1 -0
  359. package/dist/domain/{expressions → core/expression}/constant-expressions.d.ts +3 -4
  360. package/dist/domain/core/expression/constant-expressions.js +1 -0
  361. package/dist/domain/core/expression/custom-expression.d.ts +25 -0
  362. package/dist/domain/core/expression/custom-expression.js +1 -0
  363. package/dist/domain/core/expression/expression.d.ts +46 -0
  364. package/dist/domain/core/expression/expression.js +1 -0
  365. package/dist/domain/core/expression/index.d.ts +4 -0
  366. package/dist/domain/core/expression/index.js +1 -0
  367. package/dist/domain/core/index.d.ts +13 -16
  368. package/dist/domain/core/index.js +1 -1
  369. package/dist/domain/{invariants → core/invariant}/builtin-invariant.d.ts +2 -2
  370. package/dist/domain/core/invariant/custom-invariants.d.ts +13 -0
  371. package/dist/domain/core/invariant/custom-invariants.js +1 -0
  372. package/dist/domain/core/invariant/index.d.ts +5 -0
  373. package/dist/domain/core/invariant/index.js +1 -0
  374. package/dist/domain/core/invariant/invariants.d.ts +10 -0
  375. package/dist/domain/core/invariant/invariants.js +1 -0
  376. package/dist/domain/core/invariant/violation-component.js +1 -0
  377. package/dist/domain/{invariants → core/invariant}/violation.d.ts +2 -2
  378. package/dist/domain/core/{component.d.ts → model/component.d.ts} +1 -1
  379. package/dist/domain/core/model/index.d.ts +6 -0
  380. package/dist/domain/core/model/index.js +1 -0
  381. package/dist/domain/core/{reflection.d.ts → model/reflection.d.ts} +1 -1
  382. package/dist/domain/core/model/reflection.js +1 -0
  383. package/dist/domain/core/recipe/index.d.ts +1 -0
  384. package/dist/domain/core/recipe/index.js +1 -0
  385. package/dist/domain/core/recipe/recipes.d.ts +23 -0
  386. package/dist/domain/core/recipe/recipes.js +1 -0
  387. package/dist/domain/core/relation/all-of-type-relation.d.ts +19 -0
  388. package/dist/domain/core/relation/all-of-type-relation.js +1 -0
  389. package/dist/domain/{relations → core/relation}/component-factories.d.ts +1 -2
  390. package/dist/domain/core/relation/component-factories.js +1 -0
  391. package/dist/domain/{relations → core/relation}/composed-of.d.ts +1 -1
  392. package/dist/domain/core/relation/composed-of.js +1 -0
  393. package/dist/domain/core/relation/direct-relation.d.ts +17 -0
  394. package/dist/domain/core/relation/index.d.ts +8 -0
  395. package/dist/domain/core/relation/index.js +1 -0
  396. package/dist/domain/core/relation/indirect-relation.d.ts +25 -0
  397. package/dist/domain/core/relation/indirect-relation.js +1 -0
  398. package/dist/domain/{relations → core/relation}/reference-component.d.ts +4 -5
  399. package/dist/domain/core/relation/reference-component.js +1 -0
  400. package/dist/domain/{relations → core/relation}/reference-field.d.ts +1 -1
  401. package/dist/domain/core/relation/reference-field.js +1 -0
  402. package/dist/domain/core/relation/relation-factory.d.ts +22 -0
  403. package/dist/domain/core/relation/relation-factory.js +1 -0
  404. package/dist/domain/core/schema/enhanced-json-schema.js +1 -0
  405. package/dist/domain/core/schema/extended-schema-validator.js +1 -0
  406. package/dist/domain/core/schema/index.d.ts +3 -0
  407. package/dist/domain/core/schema/index.js +1 -0
  408. package/dist/domain/core/schema/schema-validator.js +1 -0
  409. package/dist/domain/core/state/id-sequence.d.ts +15 -0
  410. package/dist/domain/core/state/id-sequence.js +1 -0
  411. package/dist/domain/core/state/index.d.ts +3 -0
  412. package/dist/domain/core/state/index.js +1 -0
  413. package/dist/domain/core/{migrations.d.ts → state/migrations.d.ts} +15 -47
  414. package/dist/domain/core/state/migrations.js +1 -0
  415. package/dist/domain/core/{state.d.ts → state/state.d.ts} +2 -3
  416. package/dist/domain/domain-builder.d.ts +16 -9
  417. package/dist/domain/domain-builder.js +1 -1
  418. package/dist/domain/domain-context/action-system/action-system.d.ts +38 -0
  419. package/dist/domain/domain-context/action-system/action-system.js +1 -0
  420. package/dist/domain/domain-context/action-system/index.d.ts +1 -0
  421. package/dist/domain/domain-context/action-system/index.js +1 -0
  422. package/dist/domain/domain-context/analytics-system/index.d.ts +2 -0
  423. package/dist/domain/domain-context/analytics-system/index.js +1 -0
  424. package/dist/domain/domain-context/create-transformer.d.ts +2 -2
  425. package/dist/domain/domain-context/dimension-system/dimension-state.js +1 -1
  426. package/dist/domain/domain-context/dimension-system/dimension-system.d.ts +3 -4
  427. package/dist/domain/domain-context/dimension-system/dimension-system.js +1 -1
  428. package/dist/domain/domain-context/dimension-system/index.d.ts +1 -0
  429. package/dist/domain/domain-context/dimension-system/index.js +1 -0
  430. package/dist/domain/domain-context/domain-context-systems.d.ts +11 -10
  431. package/dist/domain/domain-context/index.d.ts +8 -17
  432. package/dist/domain/domain-context/index.js +1 -1
  433. package/dist/domain/domain-context/navigation-system/index.d.ts +3 -0
  434. package/dist/domain/domain-context/navigation-system/index.js +1 -0
  435. package/dist/domain/domain-context/navigation-system/navigation-system.d.ts +5 -8
  436. package/dist/domain/domain-context/navigation-system/navigation-system.js +1 -1
  437. package/dist/domain/domain-context/navigation-system/navigation-updates.d.ts +1 -12
  438. package/dist/domain/domain-context/navigation-system/navigation-updates.js +1 -1
  439. package/dist/domain/domain-context/navigation-system/selection-transformers.d.ts +2 -2
  440. package/dist/domain/domain-context/navigation-system/selection-transformers.js +1 -1
  441. package/dist/domain/domain-context/recipe-system/index.d.ts +1 -0
  442. package/dist/domain/domain-context/recipe-system/index.js +1 -0
  443. package/dist/domain/domain-context/recipe-system/recipe-cooker-system.d.ts +2 -4
  444. package/dist/domain/domain-context/recipe-system/recipe-cooker-system.js +1 -1
  445. package/dist/domain/domain-context/relation-transformers/cascade-deletes.d.ts +3 -3
  446. package/dist/domain/domain-context/relation-transformers/cascade-deletes.js +1 -1
  447. package/dist/domain/domain-context/relation-transformers/cascade-ref-pruning.d.ts +3 -3
  448. package/dist/domain/domain-context/relation-transformers/cascade-ref-pruning.js +1 -1
  449. package/dist/domain/domain-context/relation-transformers/create-entity-refs.d.ts +3 -3
  450. package/dist/domain/domain-context/relation-transformers/create-entity-refs.js +2 -2
  451. package/dist/domain/domain-context/relation-transformers/index.d.ts +4 -0
  452. package/dist/domain/domain-context/relation-transformers/index.js +1 -0
  453. package/dist/domain/domain-context/relation-transformers/replace-refs.d.ts +3 -3
  454. package/dist/domain/domain-context/relation-transformers/replace-refs.js +1 -1
  455. package/dist/domain/domain-context/store-system/apply-updates.d.ts +1 -3
  456. package/dist/domain/domain-context/store-system/apply-updates.js +1 -1
  457. package/dist/domain/domain-context/store-system/index.d.ts +4 -0
  458. package/dist/domain/domain-context/store-system/index.js +1 -0
  459. package/dist/domain/domain-context/store-system/next-domain-entity-id.d.ts +1 -13
  460. package/dist/domain/domain-context/store-system/next-domain-entity-id.js +1 -1
  461. package/dist/domain/domain-context/store-system/reconcile-projected-entities.d.ts +1 -2
  462. package/dist/domain/domain-context/store-system/reconcile-projected-entities.js +1 -1
  463. package/dist/domain/domain-context/store-system/store-system.d.ts +2 -39
  464. package/dist/domain/domain-context/store-system/store-system.js +2 -2
  465. package/dist/domain/domain-context/store-system/system-state.d.ts +2 -4
  466. package/dist/domain/domain-context/store-system/system-state.js +1 -1
  467. package/dist/domain/domain-context/transformers/actions-builder.d.ts +1 -2
  468. package/dist/domain/domain-context/transformers/actions-builder.js +1 -1
  469. package/dist/domain/domain-context/transformers/auto-snap-transformer.d.ts +6 -10
  470. package/dist/domain/domain-context/transformers/auto-snap-transformer.js +1 -1
  471. package/dist/domain/domain-context/transformers/chain-builder.d.ts +3 -3
  472. package/dist/domain/domain-context/transformers/context.d.ts +2 -7
  473. package/dist/domain/domain-context/transformers/context.js +1 -1
  474. package/dist/domain/domain-context/transformers/entity-builder.d.ts +1 -5
  475. package/dist/domain/domain-context/transformers/entity-builder.js +1 -1
  476. package/dist/domain/domain-context/transformers/index.d.ts +1 -1
  477. package/dist/domain/domain-context/transformers/index.js +1 -1
  478. package/dist/domain/domain-context/transformers/then-builder.d.ts +1 -2
  479. package/dist/domain/domain-context/transformers/then-builder.js +1 -1
  480. package/dist/domain/domain-context/transformers/when-builder.d.ts +3 -9
  481. package/dist/domain/domain-context/transformers/when-builder.js +1 -1
  482. package/dist/domain/domain-context/undo-system.d.ts +2 -3
  483. package/dist/domain/domain-runtime/domain-context/action-context.d.ts +11 -0
  484. package/dist/domain/domain-runtime/domain-context/action-context.js +1 -0
  485. package/dist/domain/domain-runtime/domain-context/component-reader.d.ts +1 -4
  486. package/dist/domain/domain-runtime/domain-context/component-reader.js +1 -1
  487. package/dist/domain/domain-runtime/domain-context/domain-context.js +1 -1
  488. package/dist/domain/domain-runtime/domain-context/expression-context.d.ts +8 -0
  489. package/dist/domain/domain-runtime/domain-context/expression-context.js +1 -0
  490. package/dist/domain/domain-runtime/domain-context/index.d.ts +3 -0
  491. package/dist/domain/domain-runtime/domain-context/runtime-expression-context.d.ts +18 -0
  492. package/dist/domain/domain-runtime/domain-context/runtime-expression-context.js +1 -0
  493. package/dist/domain/domain-runtime/domain-context/selectors.d.ts +22 -24
  494. package/dist/domain/domain-runtime/domain-context/selectors.js +1 -1
  495. package/dist/domain/domain-runtime/domain-runtime.d.ts +84 -72
  496. package/dist/domain/domain-runtime/spec/create-violation-expressions.d.ts +24 -0
  497. package/dist/domain/domain-runtime/spec/create-violation-expressions.js +1 -0
  498. package/dist/domain/domain-runtime/spec/index.d.ts +5 -0
  499. package/dist/domain/domain-runtime/spec/index.js +1 -1
  500. package/dist/domain/domain-runtime/spec/initialize.js +1 -1
  501. package/dist/domain/{expressions → domain-runtime/spec}/memoize-expression.d.ts +1 -2
  502. package/dist/domain/{application → domain-runtime/spec/module-checks}/element-registration.d.ts +6 -1
  503. package/dist/domain/domain-runtime/spec/module-checks/element-registration.js +1 -0
  504. package/dist/domain/{application → domain-runtime/spec/module-checks}/handler-registration.d.ts +5 -0
  505. package/dist/domain/domain-runtime/spec/module-checks/handler-registration.js +1 -0
  506. package/dist/domain/domain-runtime/spec/module-checks/index.d.ts +8 -0
  507. package/dist/domain/domain-runtime/spec/module-checks/index.js +1 -0
  508. package/dist/domain/domain-runtime/spec/module-checks/project-modules.d.ts +25 -0
  509. package/dist/domain/domain-runtime/spec/module-checks/project-modules.js +1 -0
  510. package/dist/domain/domain-runtime/spec/module-checks/resolve-action-modules.d.ts +4 -0
  511. package/dist/domain/domain-runtime/spec/module-checks/resolve-action-modules.js +1 -0
  512. package/dist/domain/domain-runtime/spec/module-checks/resolve-component-optic-modules.d.ts +4 -0
  513. package/dist/domain/domain-runtime/spec/module-checks/resolve-component-optic-modules.js +1 -0
  514. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.d.ts +15 -0
  515. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.js +1 -0
  516. package/dist/domain/domain-runtime/spec/module-checks/resolve-imported-transformers.d.ts +22 -0
  517. package/dist/domain/domain-runtime/spec/module-checks/resolve-imported-transformers.js +1 -0
  518. package/dist/domain/domain-runtime/spec/module-checks/resolve-invariant-modules.d.ts +6 -0
  519. package/dist/domain/domain-runtime/spec/module-checks/resolve-invariant-modules.js +1 -0
  520. package/dist/domain/domain-runtime/spec/prepare-action-implementations.d.ts +15 -0
  521. package/dist/domain/domain-runtime/spec/prepare-action-implementations.js +5 -0
  522. package/dist/domain/{expressions → domain-runtime/spec}/prepare-domain-expressions.d.ts +1 -1
  523. package/dist/domain/domain-runtime/spec/selectors.d.ts +7 -8
  524. package/dist/domain/domain-runtime/spec/selectors.js +1 -1
  525. package/dist/domain/domain-runtime/spec/types.d.ts +20 -6
  526. package/dist/domain/{system-components → extensions}/angle-indicator.d.ts +1 -1
  527. package/dist/domain/extensions/angle-indicator.js +1 -0
  528. package/dist/domain/extensions/attribute-switch.js +1 -0
  529. package/dist/domain/{system-components → extensions}/autorotate-camera-component.d.ts +1 -1
  530. package/dist/domain/extensions/autorotate-camera-component.js +1 -0
  531. package/dist/domain/{system-components → extensions}/basic-sidebar-footer.d.ts +1 -1
  532. package/dist/domain/extensions/basic-sidebar-footer.js +1 -0
  533. package/dist/domain/extensions/camera-based-hidden-entity-object.js +1 -0
  534. package/dist/domain/extensions/camera-based-hidden-entity.js +1 -0
  535. package/dist/domain/{system-components → extensions}/canvas-config.d.ts +1 -1
  536. package/dist/domain/extensions/canvas-config.js +1 -0
  537. package/dist/domain/extensions/canvas-custom-environment.js +1 -0
  538. package/dist/domain/{system-components → extensions}/canvas-padding.d.ts +1 -1
  539. package/dist/domain/extensions/canvas-padding.js +1 -0
  540. package/dist/domain/{system-components → extensions}/canvas-preset-environment.d.ts +1 -1
  541. package/dist/domain/extensions/canvas-preset-environment.js +1 -0
  542. package/dist/domain/{system-components → extensions}/child-entity-recipe-hierarchy.d.ts +2 -2
  543. package/dist/domain/extensions/child-entity-recipe-hierarchy.js +1 -0
  544. package/dist/domain/extensions/client-side-image.js +1 -0
  545. package/dist/domain/extensions/color-value.js +1 -0
  546. package/dist/domain/{system-components → extensions}/common/angle-indicator-schema.d.ts +1 -1
  547. package/dist/domain/extensions/common/angle-indicator-schema.js +1 -0
  548. package/dist/domain/{system-components → extensions}/common/dimension-indicator-schema.d.ts +1 -1
  549. package/dist/domain/extensions/common/dimension-indicator-schema.js +1 -0
  550. package/dist/domain/extensions/common/index.d.ts +4 -0
  551. package/dist/domain/extensions/common/index.js +1 -0
  552. package/dist/domain/{system-components → extensions}/custom-header.d.ts +2 -2
  553. package/dist/domain/{system-components → extensions}/custom-header.js +1 -1
  554. package/dist/domain/extensions/custom-price-footer.js +1 -0
  555. package/dist/domain/{system-components → extensions}/custom-sidebar-footer.d.ts +2 -2
  556. package/dist/domain/{system-components → extensions}/custom-sidebar-footer.js +1 -1
  557. package/dist/domain/{system-components → extensions}/dimension-indicator.d.ts +1 -1
  558. package/dist/domain/extensions/dimension-indicator.js +1 -0
  559. package/dist/domain/{system-components → extensions}/editable-angle-indicator.d.ts +3 -2
  560. package/dist/domain/extensions/editable-angle-indicator.js +1 -0
  561. package/dist/domain/{system-components → extensions}/editable-distance-dimension-indicator.d.ts +3 -2
  562. package/dist/domain/extensions/editable-distance-dimension-indicator.js +1 -0
  563. package/dist/domain/{system-components → extensions}/editable-offset-indicator.d.ts +3 -2
  564. package/dist/domain/extensions/editable-offset-indicator.js +1 -0
  565. package/dist/domain/{system-components → extensions}/editable-size-indicator.d.ts +3 -2
  566. package/dist/domain/extensions/editable-size-indicator.js +1 -0
  567. package/dist/domain/{system-components → extensions}/entity-header.d.ts +1 -1
  568. package/dist/domain/extensions/entity-header.js +1 -0
  569. package/dist/domain/{system-components → extensions}/exit-tool-mode-fab.d.ts +1 -1
  570. package/dist/domain/extensions/exit-tool-mode-fab.js +1 -0
  571. package/dist/domain/{system-components → extensions}/finalize-action.d.ts +1 -1
  572. package/dist/domain/extensions/finalize-action.js +1 -0
  573. package/dist/domain/extensions/finalize-component.js +1 -0
  574. package/dist/domain/extensions/fit-selection-orthographic-camera-component.js +1 -0
  575. package/dist/domain/extensions/fit-selection-perspective-camera-component.js +1 -0
  576. package/dist/domain/{system-components → extensions}/fixed-header.d.ts +1 -1
  577. package/dist/domain/extensions/fixed-header.js +1 -0
  578. package/dist/domain/{system-components → extensions}/floating-header.d.ts +1 -1
  579. package/dist/domain/extensions/floating-header.js +1 -0
  580. package/dist/domain/{system-components → extensions}/hidden-header.d.ts +1 -1
  581. package/dist/domain/extensions/hidden-header.js +1 -0
  582. package/dist/domain/{system-components → extensions}/hidden-sidebar-footer.d.ts +1 -1
  583. package/dist/domain/extensions/hidden-sidebar-footer.js +1 -0
  584. package/dist/domain/{system-components → extensions}/horizontal-tabs.d.ts +1 -1
  585. package/dist/domain/extensions/horizontal-tabs.js +1 -0
  586. package/dist/domain/extensions/index.d.ts +69 -0
  587. package/dist/domain/extensions/index.js +1 -0
  588. package/dist/domain/{system-components → extensions}/list-selector-dimension-indicator.d.ts +3 -2
  589. package/dist/domain/extensions/list-selector-dimension-indicator.js +1 -0
  590. package/dist/domain/extensions/multilingual-text-value.js +1 -0
  591. package/dist/domain/extensions/navigation-steps.js +1 -0
  592. package/dist/domain/{system-components → extensions}/offset-anchors.d.ts +1 -1
  593. package/dist/domain/extensions/offset-anchors.js +1 -0
  594. package/dist/domain/{system-components → extensions}/offset-indicator.d.ts +1 -2
  595. package/dist/domain/extensions/offset-indicator.js +1 -0
  596. package/dist/domain/{system-components → extensions}/offset.d.ts +1 -1
  597. package/dist/domain/extensions/offset.js +1 -0
  598. package/dist/domain/{system-components → extensions}/other-action.d.ts +1 -1
  599. package/dist/domain/extensions/other-action.js +1 -0
  600. package/dist/domain/{system-components → extensions}/property-page.d.ts +2 -2
  601. package/dist/domain/extensions/property-page.js +1 -0
  602. package/dist/domain/{system-components → extensions}/read-sidebar-footer.d.ts +1 -1
  603. package/dist/domain/extensions/read-sidebar-footer.js +1 -0
  604. package/dist/domain/{system-components → extensions}/replace-entity-recipe-hierarchy.d.ts +2 -2
  605. package/dist/domain/extensions/replace-entity-recipe-hierarchy.js +1 -0
  606. package/dist/domain/extensions/rotatable.js +1 -0
  607. package/dist/domain/extensions/rotation-handle.js +1 -0
  608. package/dist/domain/extensions/save-template-thumbnail.js +1 -0
  609. package/dist/domain/{system-components → extensions}/scene-entity-add-fab.d.ts +1 -1
  610. package/dist/domain/extensions/scene-entity-add-fab.js +1 -0
  611. package/dist/domain/extensions/scene-entity-animation.js +1 -0
  612. package/dist/domain/extensions/scene-entity-control.js +1 -0
  613. package/dist/domain/{system-components → extensions}/scene-entity-delete-fab.d.ts +1 -1
  614. package/dist/domain/extensions/scene-entity-delete-fab.js +1 -0
  615. package/dist/domain/extensions/scene-entity-floor-object.js +1 -0
  616. package/dist/domain/{system-components → extensions}/scene-entity-html-hotspot.d.ts +1 -1
  617. package/dist/domain/extensions/scene-entity-html-hotspot.js +1 -0
  618. package/dist/domain/{system-components → extensions}/scene-entity-navigation-hotspot.d.ts +1 -1
  619. package/dist/domain/extensions/scene-entity-navigation-hotspot.js +1 -0
  620. package/dist/domain/{system-components → extensions}/scene-entity-object-html-hotspot.d.ts +1 -1
  621. package/dist/domain/extensions/scene-entity-object-html-hotspot.js +1 -0
  622. package/dist/domain/{system-components → extensions}/scene-entity-select-hotspot.d.ts +1 -1
  623. package/dist/domain/extensions/scene-entity-select-hotspot.js +1 -0
  624. package/dist/domain/extensions/scene-entity-wall-object.js +1 -0
  625. package/dist/domain/extensions/selectable-component.js +1 -0
  626. package/dist/domain/{system-components → extensions}/sidebar-tabs.d.ts +1 -1
  627. package/dist/domain/extensions/sidebar-tabs.js +1 -0
  628. package/dist/domain/extensions/simple-summary.js +1 -0
  629. package/dist/domain/{system-components → extensions}/size.d.ts +1 -1
  630. package/dist/domain/extensions/size.js +1 -0
  631. package/dist/domain/{system-components → extensions}/sketching-draw.d.ts +1 -1
  632. package/dist/domain/extensions/sketching-draw.js +1 -0
  633. package/dist/domain/{system-components → extensions}/sketching-edit.d.ts +2 -2
  634. package/dist/domain/extensions/sketching-edit.js +1 -0
  635. package/dist/domain/extensions/summary-component.js +1 -0
  636. package/dist/domain/extensions/text-value.js +1 -0
  637. package/dist/domain/extensions/tool-controls.js +1 -0
  638. package/dist/domain/{system-components → extensions}/tool-menu-fab.d.ts +2 -2
  639. package/dist/domain/extensions/tool-menu-fab.js +1 -0
  640. package/dist/domain/{system-components → extensions}/toolbar.d.ts +2 -2
  641. package/dist/domain/{system-components → extensions}/toolbar.js +1 -1
  642. package/dist/domain/{system-components → extensions}/universal-sidebar-footer.d.ts +1 -1
  643. package/dist/domain/extensions/universal-sidebar-footer.js +1 -0
  644. package/dist/domain/extensions/view-controls.js +1 -0
  645. package/dist/domain/index.d.ts +2 -30
  646. package/dist/domain/index.js +1 -1
  647. package/dist/domain/mocks/create-mock-domain-context.d.ts +1 -1
  648. package/dist/domain/mocks/create-mock-domain-runtime-services.d.ts +1 -1
  649. package/dist/domain/mocks/create-mock-domain-runtime.d.ts +27 -21
  650. package/dist/domain/mocks/create-mock-domain-runtime.js +1 -1
  651. package/dist/domain/mocks/create-mock-domain.d.ts +1 -1
  652. package/dist/domain/mocks/create-mock-state.d.ts +2 -2
  653. package/dist/domain/projections/blender-projections/blender-projections.d.ts +2 -3
  654. package/dist/domain/projections/blender-projections/blender-projections.js +1 -1
  655. package/dist/domain/projections/blender-projections/camera.d.ts +2 -2
  656. package/dist/domain/projections/collision-projections.d.ts +1 -1
  657. package/dist/domain/projections/composition-projections.d.ts +1 -1
  658. package/dist/domain/projections/composition-projections.js +1 -1
  659. package/dist/domain/projections/constraint-projections.d.ts +1 -1
  660. package/dist/domain/projections/index.d.ts +1 -1
  661. package/dist/domain/projections/position-projections.d.ts +1 -1
  662. package/dist/domain/projections/projected-entities-projections.d.ts +2 -3
  663. package/dist/domain/projections/snap-matching.d.ts +1 -2
  664. package/dist/domain/projections/snap-utils.d.ts +1 -2
  665. package/dist/domain/projections/snapping-projections.d.ts +1 -1
  666. package/dist/domain/projections/validation-projections.d.ts +3 -20
  667. package/dist/domain/projections/validation-projections.js +1 -1
  668. package/dist/domain/sketching/sketching-projections.d.ts +1 -1
  669. package/dist/domain/system-components/admin-sidebar.d.ts +1 -1
  670. package/dist/domain/system-components/admin-sidebar.js +1 -1
  671. package/dist/domain/system-components/angle-dimension.js +1 -1
  672. package/dist/domain/system-components/application-config.d.ts +1 -1
  673. package/dist/domain/system-components/application-config.js +1 -1
  674. package/dist/domain/system-components/attribute-selection.js +1 -1
  675. package/dist/domain/system-components/bounding-box-component.d.ts +1 -1
  676. package/dist/domain/system-components/bounding-box-component.js +1 -1
  677. package/dist/domain/system-components/bounding-sphere-component.d.ts +1 -1
  678. package/dist/domain/system-components/bounding-sphere-component.js +1 -1
  679. package/dist/domain/system-components/child-entity-recipes.d.ts +1 -1
  680. package/dist/domain/system-components/child-entity-recipes.js +1 -1
  681. package/dist/domain/system-components/child-entity-selection.d.ts +1 -2
  682. package/dist/domain/system-components/child-entity-selection.js +1 -1
  683. package/dist/domain/system-components/collision-box-geometry.d.ts +1 -1
  684. package/dist/domain/system-components/collision-box-geometry.js +1 -1
  685. package/dist/domain/system-components/collision-geometries.d.ts +1 -1
  686. package/dist/domain/system-components/collision-geometry.d.ts +1 -1
  687. package/dist/domain/system-components/collision-geometry.js +1 -1
  688. package/dist/domain/system-components/collision-point-geometry.d.ts +1 -1
  689. package/dist/domain/system-components/collision-point-geometry.js +1 -1
  690. package/dist/domain/system-components/common/index.d.ts +0 -4
  691. package/dist/domain/system-components/common/index.js +1 -1
  692. package/dist/domain/system-components/common/recipes.d.ts +1 -2
  693. package/dist/domain/system-components/constraint.d.ts +1 -1
  694. package/dist/domain/system-components/constraint.js +1 -1
  695. package/dist/domain/system-components/create-blueprint.d.ts +1 -1
  696. package/dist/domain/system-components/custom-scene-entity.d.ts +1 -1
  697. package/dist/domain/system-components/custom-scene-entity.js +1 -1
  698. package/dist/domain/system-components/detail.js +1 -1
  699. package/dist/domain/system-components/distance-dimension-select.d.ts +1 -1
  700. package/dist/domain/system-components/distance-dimension-select.js +1 -1
  701. package/dist/domain/system-components/distance-dimension.d.ts +1 -1
  702. package/dist/domain/system-components/distance-dimension.js +1 -1
  703. package/dist/domain/system-components/drag-handle.d.ts +1 -1
  704. package/dist/domain/system-components/drag-handle.js +1 -1
  705. package/dist/domain/system-components/fit-entity-orthographic-camera-component.js +1 -1
  706. package/dist/domain/system-components/fit-entity-perspective-camera-component.js +1 -1
  707. package/dist/domain/system-components/fit-root-orthographic-camera-component.js +1 -1
  708. package/dist/domain/system-components/fit-root-perspective-camera-component.js +1 -1
  709. package/dist/domain/system-components/generic-dimension.d.ts +1 -1
  710. package/dist/domain/system-components/generic-dimension.js +1 -1
  711. package/dist/domain/system-components/hidden-entity.js +1 -1
  712. package/dist/domain/system-components/hotspot-drag-handle.d.ts +1 -2
  713. package/dist/domain/system-components/hotspot-drag-handle.js +1 -1
  714. package/dist/domain/system-components/index.d.ts +0 -68
  715. package/dist/domain/system-components/index.js +1 -1
  716. package/dist/domain/system-components/material-override-property-transition.js +1 -1
  717. package/dist/domain/system-components/material-override-transformer.js +1 -1
  718. package/dist/domain/system-components/material-swatch.js +1 -1
  719. package/dist/domain/system-components/navigation-page.js +1 -1
  720. package/dist/domain/system-components/navigation-panel-list.js +1 -1
  721. package/dist/domain/system-components/phoenix-entity-elements/admin-data-table-sidebar.d.ts +1 -1
  722. package/dist/domain/system-components/phoenix-layout-elements/admin-connected-resource-page.d.ts +1 -1
  723. package/dist/domain/system-components/phoenix-layout-elements/admin-data-table-actions.d.ts +1 -1
  724. package/dist/domain/system-components/phoenix-layout-elements/admin-data-table-page.d.ts +1 -1
  725. package/dist/domain/system-components/phoenix-layout-elements/assistant-toolbar-button.d.ts +44 -0
  726. package/dist/domain/system-components/phoenix-layout-elements/assistant-toolbar-button.js +1 -0
  727. package/dist/domain/system-components/phoenix-layout-elements/index.d.ts +1 -0
  728. package/dist/domain/system-components/phoenix-layout-elements/index.js +1 -1
  729. package/dist/domain/system-components/phoenix-layout-elements/phoenix-layout-element.d.ts +2 -1
  730. package/dist/domain/system-components/phoenix-layout-elements/phoenix-layout-element.js +1 -1
  731. package/dist/domain/system-components/pivot-point.d.ts +1 -1
  732. package/dist/domain/system-components/pivot-point.js +1 -1
  733. package/dist/domain/system-components/price.js +1 -1
  734. package/dist/domain/system-components/projected-entities.d.ts +1 -1
  735. package/dist/domain/system-components/projected-entities.js +1 -1
  736. package/dist/domain/system-components/replace-entity-recipes.d.ts +1 -1
  737. package/dist/domain/system-components/replace-entity-recipes.js +1 -1
  738. package/dist/domain/system-components/scene-entity-ambient-light.js +1 -1
  739. package/dist/domain/system-components/scene-entity-box-object.js +1 -1
  740. package/dist/domain/system-components/scene-entity-directional-light.js +1 -1
  741. package/dist/domain/system-components/scene-entity-local-material-override.js +1 -1
  742. package/dist/domain/system-components/scene-entity-material-override.js +1 -1
  743. package/dist/domain/system-components/scene-entity-object-clip.js +1 -1
  744. package/dist/domain/system-components/scene-entity-object-decal.js +1 -1
  745. package/dist/domain/system-components/scene-entity-object-group.js +1 -1
  746. package/dist/domain/system-components/scene-entity-object-local-material-override.js +1 -1
  747. package/dist/domain/system-components/scene-entity-object-material-override.js +1 -1
  748. package/dist/domain/system-components/scene-entity-object-properties.js +1 -1
  749. package/dist/domain/system-components/scene-entity-object-remote-material-override.js +1 -1
  750. package/dist/domain/system-components/scene-entity-object-text-decal.js +1 -1
  751. package/dist/domain/system-components/scene-entity-object-transformer.js +1 -1
  752. package/dist/domain/system-components/scene-entity-object-transimissive-material-override.js +1 -1
  753. package/dist/domain/system-components/scene-entity-object.js +1 -1
  754. package/dist/domain/system-components/scene-entity-point-light.js +1 -1
  755. package/dist/domain/system-components/scene-entity-properties.js +1 -1
  756. package/dist/domain/system-components/scene-entity-rect-area-light.js +1 -1
  757. package/dist/domain/system-components/scene-entity-remote-material-override.js +1 -1
  758. package/dist/domain/system-components/scene-entity-remote-object.js +1 -1
  759. package/dist/domain/system-components/scene-entity-spot-light.js +1 -1
  760. package/dist/domain/system-components/scene-entity-transimissive-material-override.js +1 -1
  761. package/dist/domain/system-components/sketching-line.d.ts +1 -1
  762. package/dist/domain/system-components/sketching-line.js +1 -1
  763. package/dist/domain/system-components/sketching-rectangle.d.ts +1 -1
  764. package/dist/domain/system-components/sketching-rectangle.js +1 -1
  765. package/dist/domain/system-components/sketching.d.ts +1 -1
  766. package/dist/domain/system-components/sketching.js +1 -1
  767. package/dist/domain/system-components/snap-axis.d.ts +1 -1
  768. package/dist/domain/system-components/snap-axis.js +1 -1
  769. package/dist/domain/system-components/snap-edge.d.ts +1 -1
  770. package/dist/domain/system-components/snap-edge.js +1 -1
  771. package/dist/domain/system-components/snap-plane.d.ts +1 -1
  772. package/dist/domain/system-components/snap-plane.js +1 -1
  773. package/dist/domain/system-components/snap-point.d.ts +1 -1
  774. package/dist/domain/system-components/snap-point.js +1 -1
  775. package/dist/domain/system-components/static-orthographic-camera-component.d.ts +1 -1
  776. package/dist/domain/system-components/static-orthographic-camera-component.js +1 -1
  777. package/dist/domain/system-components/static-perspective-camera-component.d.ts +1 -1
  778. package/dist/domain/system-components/static-perspective-camera-component.js +1 -1
  779. package/dist/domain/utils/eval-cache.d.ts +2 -3
  780. package/dist/domain/utils/map-nested-object.d.ts +1 -1
  781. package/dist/domain/utils/memo-eval.d.ts +2 -4
  782. package/dist/editor/Editor.js +1 -1
  783. package/dist/editor/domain-editors/DomainSpecContext.js +1 -1
  784. package/dist/editor/domain-editors/apply-spec-update.js +1 -1
  785. package/dist/editor/domain-editors/use-implementation-files.d.ts +12 -8
  786. package/dist/editor/domain-editors/use-implementation-files.js +1 -1
  787. package/dist/editor/graphql/GraphQLPanel.js +1 -1
  788. package/dist/editor/variants/VariantAnswerFooter.d.ts +17 -0
  789. package/dist/editor/variants/VariantAnswerFooter.js +1 -0
  790. package/dist/editor/variants/VariantPreviewHandler.d.ts +6 -0
  791. package/dist/editor/variants/VariantPreviewHandler.js +1 -0
  792. package/dist/editor/variants/variant-preview-styles.d.ts +49 -0
  793. package/dist/editor/variants/variant-preview-styles.js +1 -0
  794. package/dist/i18n/locales/cs/messages.js +1 -1
  795. package/dist/i18n/locales/da/messages.js +1 -1
  796. package/dist/i18n/locales/de/messages.js +1 -1
  797. package/dist/i18n/locales/de-AT/messages.js +1 -1
  798. package/dist/i18n/locales/en/messages.js +1 -1
  799. package/dist/i18n/locales/en-AU/messages.js +1 -1
  800. package/dist/i18n/locales/en-GB/messages.js +1 -1
  801. package/dist/i18n/locales/es/messages.js +1 -1
  802. package/dist/i18n/locales/fr/messages.js +1 -1
  803. package/dist/i18n/locales/hu/messages.js +1 -1
  804. package/dist/i18n/locales/it/messages.js +1 -1
  805. package/dist/i18n/locales/nl/messages.js +1 -1
  806. package/dist/i18n/locales/pl/messages.js +1 -1
  807. package/dist/i18n/locales/pt/messages.js +1 -1
  808. package/dist/i18n/locales/ro/messages.js +1 -1
  809. package/dist/i18n/locales/sk/messages.js +1 -1
  810. package/dist/i18n/locales/tr/messages.js +1 -1
  811. package/dist/legacy/domain-cli/gen/configurator-builder.js +21 -8
  812. package/dist/legacy/domain-cli/gen/constant-expressions.js +1 -3
  813. package/dist/legacy/domain-cli/gen/defaults.js +1 -7
  814. package/dist/legacy/domain-cli/gen/implementation.js +7 -11
  815. package/dist/legacy/domain-cli/gen/invariants.js +7 -6
  816. package/dist/legacy/domain-cli/gen/relations.js +1 -1
  817. package/dist/legacy/domain-cli/utils/cache.d.ts +1 -1
  818. package/dist/legacy/domain-cli/utils/cache.js +1 -1
  819. package/dist/legacy/domain-spec/__generated/domain-schema.d.ts +6 -0
  820. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/claude-md.d.ts +1 -1
  821. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/cursor-rules.d.ts +1 -1
  822. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.d.ts +1 -1
  823. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.js +1 -0
  824. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/domain-index.js +17 -15
  825. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/env-example.d.ts +1 -1
  826. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/env-example.js +4 -0
  827. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-admin.js +18 -19
  828. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-configurator.js +15 -16
  829. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-admin.js +22 -23
  830. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-configurator.js +15 -16
  831. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/generator-shared.d.ts +7 -2
  832. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/generator-shared.js +8 -12
  833. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/index.d.ts +1 -1
  834. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/index.js +1 -1
  835. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/webhook-builders.js +7 -7
  836. package/dist/phoenix/application-spec/application-spec-builder.js +1 -1
  837. package/dist/phoenix/application-spec/resolve-deployment-data.d.ts +4 -3
  838. package/dist/phoenix/application-spec/resolve-deployment-data.js +2 -2
  839. package/dist/phoenix/cli.js +1 -1
  840. package/dist/phoenix/commands/build.d.ts +5 -0
  841. package/dist/phoenix/commands/build.js +1 -1
  842. package/dist/phoenix/commands/deploy.js +2 -2
  843. package/dist/phoenix/commands/dev.js +5 -5
  844. package/dist/phoenix/commands/feedback.d.ts +2 -1
  845. package/dist/phoenix/commands/feedback.js +1 -1
  846. package/dist/phoenix/commands/index.d.ts +1 -0
  847. package/dist/phoenix/commands/index.js +1 -1
  848. package/dist/phoenix/commands/init.d.ts +4 -4
  849. package/dist/phoenix/commands/init.js +1 -1
  850. package/dist/phoenix/commands/login.d.ts +24 -6
  851. package/dist/phoenix/commands/login.js +2 -2
  852. package/dist/phoenix/commands/prepare-deployment-command.js +2 -2
  853. package/dist/phoenix/commands/prepare-local-environment-command.js +1 -1
  854. package/dist/phoenix/commands/prettier.js +1 -1
  855. package/dist/phoenix/commands/story-dev.js +2 -2
  856. package/dist/phoenix/commands/variants.d.ts +35 -0
  857. package/dist/phoenix/commands/variants.js +1 -0
  858. package/dist/phoenix/editor-server/commands-router.d.ts +68 -1
  859. package/dist/phoenix/editor-server/commands-router.js +1 -1
  860. package/dist/phoenix/editor-server/editor-router.d.ts +65 -0
  861. package/dist/phoenix/editor-server/editor-server.d.ts +3 -3
  862. package/dist/phoenix/editor-server/editor-server.js +1 -1
  863. package/dist/phoenix/editor-server/protocol.d.ts +1 -0
  864. package/dist/phoenix/editor-server/spec-router.js +1 -1
  865. package/dist/phoenix/editor-server/trpc.d.ts +3 -0
  866. package/dist/phoenix/scripts/build-admin.js +1 -1
  867. package/dist/phoenix/services/application-spec-project-watcher.d.ts +13 -2
  868. package/dist/phoenix/services/application-spec-project-watcher.js +3 -3
  869. package/dist/phoenix/services/index.d.ts +5 -0
  870. package/dist/phoenix/services/index.js +1 -1
  871. package/dist/phoenix/services/phoenix-application.d.ts +21 -0
  872. package/dist/phoenix/services/phoenix-application.js +1 -0
  873. package/dist/phoenix/services/phoenix-store.d.ts +48 -0
  874. package/dist/phoenix/services/phoenix-store.js +1 -0
  875. package/dist/phoenix/services/phx-banner-plugin.d.ts +32 -0
  876. package/dist/phoenix/services/phx-banner-plugin.js +1 -0
  877. package/dist/phoenix/services/phx-licenses-plugin.d.ts +55 -0
  878. package/dist/phoenix/services/phx-licenses-plugin.js +8 -0
  879. package/dist/phoenix/services/phx-variant-previews-plugin.d.ts +9 -0
  880. package/dist/phoenix/services/phx-variant-previews-plugin.js +1 -0
  881. package/dist/phoenix/services/prepare-development-environment.js +1 -1
  882. package/dist/phoenix/services/variant-file-session.d.ts +36 -0
  883. package/dist/phoenix/services/variant-file-session.js +1 -0
  884. package/dist/phoenix/services/variant-preview-service.d.ts +80 -0
  885. package/dist/phoenix/services/variant-preview-service.js +1 -0
  886. package/dist/phoenix/services/vite-config.d.ts +2 -0
  887. package/dist/phoenix/services/vite-config.js +1 -1
  888. package/dist/phoenix/utils/git/index.d.ts +1 -0
  889. package/dist/phoenix/utils/git/index.js +1 -0
  890. package/dist/phoenix/utils/git/is-inside-git-repository.d.ts +6 -0
  891. package/dist/phoenix/utils/git/is-inside-git-repository.js +1 -0
  892. package/dist/phoenix/utils/index.d.ts +2 -0
  893. package/dist/phoenix/utils/index.js +1 -1
  894. package/dist/phoenix/utils/read-git-commit.d.ts +14 -0
  895. package/dist/phoenix/utils/read-git-commit.js +1 -0
  896. package/dist/react-sdk/application-runtime/common-services/analytics/analytics-service.d.ts +2 -2
  897. package/dist/react-sdk/application-runtime/common-services/analytics/domain-controls-analytics.d.ts +21 -21
  898. package/dist/react-sdk/application-runtime/hooks/data/use-published-data.d.ts +1 -1
  899. package/dist/react-sdk/application-runtime/hooks/use-domain-application-props.d.ts +5 -2
  900. package/dist/react-sdk/application-runtime/hooks/use-spec.d.ts +1 -1
  901. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.d.ts +1 -1
  902. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.js +1 -1
  903. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.d.ts +52 -40
  904. package/dist/react-sdk/domain-context/common-hooks/use-domain-context.d.ts +12 -9
  905. package/dist/ui-sdk/common/use-viewport-size.d.ts +4 -1
  906. package/dist/ui-sdk/common/use-viewport-size.js +1 -1
  907. package/dist/ui-sdk/components/mobile-controls/index.d.ts +1 -1
  908. package/dist/ui-sdk/theme/types.d.ts +4 -0
  909. package/dist/webhook/builders/common.d.ts +8 -0
  910. package/dist/webhook/builders/webhook-builder.d.ts +1 -1
  911. package/dist/webhook/builders/webhook-builder.js +1 -1
  912. package/package.json +5 -8
  913. package/schema/domain-spec.json +24 -0
  914. package/dist/application-spec/generate-application/code/templates/agents-md.d.ts +0 -1
  915. package/dist/application-spec/generate-application/code/templates/agents-md.js +0 -2
  916. package/dist/application-spec/generate-application/code/templates/common/sdk-content.js +0 -67
  917. package/dist/application-spec/generate-application/code/templates/env-ci.d.ts +0 -1
  918. package/dist/application-spec/generate-application/code/templates/env-ci.js +0 -25
  919. package/dist/application-spec/generate-application/code/templates/env-example.d.ts +0 -1
  920. package/dist/application-spec/generate-application/code/templates/env-example.js +0 -90
  921. package/dist/application-spec/generate-application/code/templates/phoenix-cli-skill.js +0 -1
  922. package/dist/application-spec/generate-application/code/templates/phoenix-create-configurator-skill.js +0 -112
  923. package/dist/application-spec/generate-application/code/templates/phoenix-feedback-skill.js +0 -31
  924. package/dist/application-spec/generate-application/code/templates/phoenix-skill.js +0 -1
  925. package/dist/application-spec/generate-application/code/templates/prettier-ignore.d.ts +0 -1
  926. package/dist/application-spec/generate-application/code/templates/prettier-ignore.js +0 -6
  927. package/dist/application-spec/generate-application/code/templates/private-assets-readme.d.ts +0 -1
  928. package/dist/application-spec/generate-application/code/templates/private-assets-readme.js +0 -24
  929. package/dist/application-spec/generate-application/code/templates/public-assets-readme.d.ts +0 -1
  930. package/dist/application-spec/generate-application/code/templates/public-assets-readme.js +0 -24
  931. package/dist/application-spec/generate-application/code/templates/readme.d.ts +0 -1
  932. package/dist/application-spec/generate-application/code/templates/readme.js +0 -23
  933. package/dist/configurator/assistant/browser-details.js +0 -1
  934. package/dist/configurator/assistant/graphql-tools.js +0 -1
  935. package/dist/configurator/assistant/index.d.ts +0 -1
  936. package/dist/configurator/assistant/index.js +0 -1
  937. package/dist/configurator/assistant/use-assistant-chat.d.ts +0 -20
  938. package/dist/configurator/assistant/use-assistant-chat.js +0 -1
  939. package/dist/domain/application/element-registration.js +0 -1
  940. package/dist/domain/application/handler-registration.js +0 -1
  941. package/dist/domain/application/resolve-imported-transformers.d.ts +0 -13
  942. package/dist/domain/application/resolve-imported-transformers.js +0 -1
  943. package/dist/domain/components/debug-state-component.js +0 -1
  944. package/dist/domain/components/domain-component-optic.d.ts +0 -76
  945. package/dist/domain/components/domain-component-optic.js +0 -16
  946. package/dist/domain/components/drag-state-component.js +0 -1
  947. package/dist/domain/components/export-state-component.js +0 -1
  948. package/dist/domain/components/fullscreen-state-component.js +0 -1
  949. package/dist/domain/components/group-components-by-entity-id-and-name.js +0 -1
  950. package/dist/domain/components/hover-state-component.js +0 -1
  951. package/dist/domain/components/index.d.ts +0 -2
  952. package/dist/domain/components/index.js +0 -1
  953. package/dist/domain/components/navigation-state-component.js +0 -1
  954. package/dist/domain/components/selection-state-component.js +0 -1
  955. package/dist/domain/components/system-component-builder.js +0 -1
  956. package/dist/domain/components/system-virtual-entity.js +0 -1
  957. package/dist/domain/components/tool-state-component.js +0 -1
  958. package/dist/domain/components/view-state-component.js +0 -1
  959. package/dist/domain/components/viewport-state-component.js +0 -1
  960. package/dist/domain/core/expression.d.ts +0 -50
  961. package/dist/domain/core/json-schema.js +0 -1
  962. package/dist/domain/core/migrations.js +0 -1
  963. package/dist/domain/core/reflection.js +0 -1
  964. package/dist/domain/domain-context/recipe-system/recipes.d.ts +0 -57
  965. package/dist/domain/domain-context/recipe-system/recipes.js +0 -1
  966. package/dist/domain/expressions/constant-expressions.js +0 -1
  967. package/dist/domain/expressions/custom-expression.d.ts +0 -13
  968. package/dist/domain/expressions/custom-expression.js +0 -1
  969. package/dist/domain/expressions/index.d.ts +0 -1
  970. package/dist/domain/expressions/index.js +0 -1
  971. package/dist/domain/invariants/custom-invariants.d.ts +0 -22
  972. package/dist/domain/invariants/custom-invariants.js +0 -1
  973. package/dist/domain/invariants/invariants.d.ts +0 -68
  974. package/dist/domain/invariants/invariants.js +0 -1
  975. package/dist/domain/invariants/violation-component.js +0 -1
  976. package/dist/domain/relations/all-of-type-relation.d.ts +0 -33
  977. package/dist/domain/relations/all-of-type-relation.js +0 -1
  978. package/dist/domain/relations/component-factories.js +0 -1
  979. package/dist/domain/relations/composed-of.js +0 -1
  980. package/dist/domain/relations/direct-relation.d.ts +0 -29
  981. package/dist/domain/relations/indirect-relation.d.ts +0 -81
  982. package/dist/domain/relations/indirect-relation.js +0 -1
  983. package/dist/domain/relations/reference-component.js +0 -1
  984. package/dist/domain/relations/relation-factory.d.ts +0 -19
  985. package/dist/domain/relations/relation-factory.js +0 -1
  986. package/dist/domain/relations/relation-implementation.d.ts +0 -8
  987. package/dist/domain/system-components/angle-indicator.js +0 -1
  988. package/dist/domain/system-components/attribute-switch.js +0 -1
  989. package/dist/domain/system-components/autorotate-camera-component.js +0 -1
  990. package/dist/domain/system-components/basic-sidebar-footer.js +0 -1
  991. package/dist/domain/system-components/camera-based-hidden-entity-object.js +0 -1
  992. package/dist/domain/system-components/camera-based-hidden-entity.js +0 -1
  993. package/dist/domain/system-components/canvas-config.js +0 -1
  994. package/dist/domain/system-components/canvas-custom-environment.js +0 -1
  995. package/dist/domain/system-components/canvas-padding.js +0 -1
  996. package/dist/domain/system-components/canvas-preset-environment.js +0 -1
  997. package/dist/domain/system-components/child-entity-recipe-hierarchy.js +0 -1
  998. package/dist/domain/system-components/client-side-image.js +0 -1
  999. package/dist/domain/system-components/color-value.js +0 -1
  1000. package/dist/domain/system-components/common/angle-indicator-schema.js +0 -1
  1001. package/dist/domain/system-components/common/dimension-indicator-schema.js +0 -1
  1002. package/dist/domain/system-components/custom-price-footer.js +0 -1
  1003. package/dist/domain/system-components/dimension-indicator.js +0 -1
  1004. package/dist/domain/system-components/editable-angle-indicator.js +0 -1
  1005. package/dist/domain/system-components/editable-distance-dimension-indicator.js +0 -1
  1006. package/dist/domain/system-components/editable-offset-indicator.js +0 -1
  1007. package/dist/domain/system-components/editable-size-indicator.js +0 -1
  1008. package/dist/domain/system-components/entity-header.js +0 -1
  1009. package/dist/domain/system-components/exit-tool-mode-fab.js +0 -1
  1010. package/dist/domain/system-components/finalize-action.js +0 -1
  1011. package/dist/domain/system-components/finalize-component.js +0 -1
  1012. package/dist/domain/system-components/fit-selection-orthographic-camera-component.js +0 -1
  1013. package/dist/domain/system-components/fit-selection-perspective-camera-component.js +0 -1
  1014. package/dist/domain/system-components/fixed-header.js +0 -1
  1015. package/dist/domain/system-components/floating-header.js +0 -1
  1016. package/dist/domain/system-components/hidden-header.js +0 -1
  1017. package/dist/domain/system-components/hidden-sidebar-footer.js +0 -1
  1018. package/dist/domain/system-components/horizontal-tabs.js +0 -1
  1019. package/dist/domain/system-components/list-selector-dimension-indicator.js +0 -1
  1020. package/dist/domain/system-components/multilingual-text-value.js +0 -1
  1021. package/dist/domain/system-components/navigation-steps.js +0 -1
  1022. package/dist/domain/system-components/offset-anchors.js +0 -1
  1023. package/dist/domain/system-components/offset-indicator.js +0 -1
  1024. package/dist/domain/system-components/offset.js +0 -1
  1025. package/dist/domain/system-components/other-action.js +0 -1
  1026. package/dist/domain/system-components/property-page.js +0 -1
  1027. package/dist/domain/system-components/read-sidebar-footer.js +0 -1
  1028. package/dist/domain/system-components/replace-entity-recipe-hierarchy.js +0 -1
  1029. package/dist/domain/system-components/rotatable.js +0 -1
  1030. package/dist/domain/system-components/rotation-handle.js +0 -1
  1031. package/dist/domain/system-components/save-template-thumbnail.js +0 -1
  1032. package/dist/domain/system-components/scene-entity-add-fab.js +0 -1
  1033. package/dist/domain/system-components/scene-entity-animation.js +0 -1
  1034. package/dist/domain/system-components/scene-entity-control.js +0 -1
  1035. package/dist/domain/system-components/scene-entity-delete-fab.js +0 -1
  1036. package/dist/domain/system-components/scene-entity-floor-object.js +0 -1
  1037. package/dist/domain/system-components/scene-entity-html-hotspot.js +0 -1
  1038. package/dist/domain/system-components/scene-entity-navigation-hotspot.js +0 -1
  1039. package/dist/domain/system-components/scene-entity-object-html-hotspot.js +0 -1
  1040. package/dist/domain/system-components/scene-entity-select-hotspot.js +0 -1
  1041. package/dist/domain/system-components/scene-entity-wall-object.js +0 -1
  1042. package/dist/domain/system-components/selectable-component.js +0 -1
  1043. package/dist/domain/system-components/sidebar-tabs.js +0 -1
  1044. package/dist/domain/system-components/simple-summary.js +0 -1
  1045. package/dist/domain/system-components/size.js +0 -1
  1046. package/dist/domain/system-components/sketching-draw.js +0 -1
  1047. package/dist/domain/system-components/sketching-edit.js +0 -1
  1048. package/dist/domain/system-components/summary-component.js +0 -1
  1049. package/dist/domain/system-components/text-value.js +0 -1
  1050. package/dist/domain/system-components/tool-controls.js +0 -1
  1051. package/dist/domain/system-components/tool-menu-fab.js +0 -1
  1052. package/dist/domain/system-components/universal-sidebar-footer.js +0 -1
  1053. package/dist/domain/system-components/view-controls.js +0 -1
  1054. package/dist/extras/assistant/AssistantChat.d.ts +0 -6
  1055. package/dist/extras/assistant/AssistantChat.js +0 -1
  1056. package/dist/extras/assistant/index.d.ts +0 -1
  1057. package/dist/extras/assistant/index.js +0 -1
  1058. package/dist/phoenix/application-spec/generate-assistant-prompt.d.ts +0 -12
  1059. package/dist/phoenix/application-spec/generate-assistant-prompt.js +0 -1
  1060. /package/dist/application-spec/generate-application/code/templates/{common → skills}/agent-skill.d.ts +0 -0
  1061. /package/dist/application-spec/generate-application/code/templates/{common → skills}/agent-skill.js +0 -0
  1062. /package/dist/application-spec/generate-application/code/templates/{phoenix-cli-skill.d.ts → skills/phoenix-cli-skill.d.ts} +0 -0
  1063. /package/dist/application-spec/generate-application/code/templates/{phoenix-feedback-skill.d.ts → skills/phoenix-feedback-skill.d.ts} +0 -0
  1064. /package/dist/application-spec/generate-application/code/templates/{phoenix-review-skill.d.ts → skills/phoenix-review-skill.d.ts} +0 -0
  1065. /package/dist/application-spec/generate-application/code/templates/{phoenix-skill.d.ts → skills/phoenix-skill.d.ts} +0 -0
  1066. /package/dist/domain/{components/component-reader-types.js → application/assistant/assistant-manifest.js} +0 -0
  1067. /package/dist/domain/{core/enhanced-json-schema.js → application/assistant/assistant-resolved-manifest.js} +0 -0
  1068. /package/dist/domain/core/{expression.js → action/action.js} +0 -0
  1069. /package/dist/domain/core/{schema-validator.js → component/component-reader-types.js} +0 -0
  1070. /package/dist/domain/{components → core/component}/legacy-filter.js +0 -0
  1071. /package/dist/domain/{components → core/component}/system-component-filter.js +0 -0
  1072. /package/dist/domain/{components → core/component}/system-virtual-entity.d.ts +0 -0
  1073. /package/dist/domain/{components → core/component}/updates.js +0 -0
  1074. /package/dist/domain/{relations/reference-field.js → core/data-schema/data-cell-value.js} +0 -0
  1075. /package/dist/domain/{relations/relation-implementation.js → core/data-schema/data-schema-array-field.js} +0 -0
  1076. /package/dist/domain/{invariants → core/invariant}/builtin-invariant.js +0 -0
  1077. /package/dist/domain/{invariants → core/invariant}/violation-component.d.ts +0 -0
  1078. /package/dist/domain/{invariants → core/invariant}/violation.js +0 -0
  1079. /package/dist/domain/core/{alias.d.ts → model/alias.d.ts} +0 -0
  1080. /package/dist/domain/core/{alias.js → model/alias.js} +0 -0
  1081. /package/dist/domain/core/{common-definitions.d.ts → model/common-definitions.d.ts} +0 -0
  1082. /package/dist/domain/core/{common-definitions.js → model/common-definitions.js} +0 -0
  1083. /package/dist/domain/core/{component.js → model/component.js} +0 -0
  1084. /package/dist/domain/core/{model.d.ts → model/model.d.ts} +0 -0
  1085. /package/dist/domain/core/{model.js → model/model.js} +0 -0
  1086. /package/dist/domain/core/{preset.d.ts → model/preset.d.ts} +0 -0
  1087. /package/dist/domain/core/{preset.js → model/preset.js} +0 -0
  1088. /package/dist/domain/{relations → core/relation}/direct-relation.js +0 -0
  1089. /package/dist/domain/core/{schema-validator-ajv.d.ts → schema/create-ajv-schema-validator.d.ts} +0 -0
  1090. /package/dist/domain/core/{schema-validator-ajv.js → schema/create-ajv-schema-validator.js} +0 -0
  1091. /package/dist/domain/core/{schema-validator-csp.d.ts → schema/create-csp-schema-validator.d.ts} +0 -0
  1092. /package/dist/domain/core/{schema-validator-csp.js → schema/create-csp-schema-validator.js} +0 -0
  1093. /package/dist/domain/core/{enhanced-json-schema.d.ts → schema/enhanced-json-schema.d.ts} +0 -0
  1094. /package/dist/domain/core/{json-schema.d.ts → schema/extended-schema-validator.d.ts} +0 -0
  1095. /package/dist/domain/core/{schema-validator.d.ts → schema/schema-validator.d.ts} +0 -0
  1096. /package/dist/domain/core/{state.js → state/state.js} +0 -0
  1097. /package/dist/domain/{expressions → domain-runtime/spec}/memoize-expression.js +0 -0
  1098. /package/dist/domain/{expressions → domain-runtime/spec}/prepare-domain-expressions.js +0 -0
  1099. /package/dist/domain/{system-components → extensions}/attribute-switch.d.ts +0 -0
  1100. /package/dist/domain/{system-components → extensions}/camera-based-hidden-entity-object.d.ts +0 -0
  1101. /package/dist/domain/{system-components → extensions}/camera-based-hidden-entity.d.ts +0 -0
  1102. /package/dist/domain/{system-components → extensions}/canvas-custom-environment.d.ts +0 -0
  1103. /package/dist/domain/{system-components → extensions}/client-side-image.d.ts +0 -0
  1104. /package/dist/domain/{system-components → extensions}/color-value.d.ts +0 -0
  1105. /package/dist/domain/{system-components → extensions}/common/dimension-indicators.d.ts +0 -0
  1106. /package/dist/domain/{system-components → extensions}/common/dimension-indicators.js +0 -0
  1107. /package/dist/domain/{system-components → extensions}/common/editable-indicator-button-variant.d.ts +0 -0
  1108. /package/dist/domain/{system-components → extensions}/common/editable-indicator-button-variant.js +0 -0
  1109. /package/dist/domain/{system-components → extensions}/custom-price-footer.d.ts +0 -0
  1110. /package/dist/domain/{system-components → extensions}/finalize-component.d.ts +0 -0
  1111. /package/dist/domain/{system-components → extensions}/fit-selection-orthographic-camera-component.d.ts +0 -0
  1112. /package/dist/domain/{system-components → extensions}/fit-selection-perspective-camera-component.d.ts +0 -0
  1113. /package/dist/domain/{system-components → extensions}/multilingual-text-value.d.ts +0 -0
  1114. /package/dist/domain/{system-components → extensions}/navigation-steps.d.ts +0 -0
  1115. /package/dist/domain/{system-components → extensions}/rotatable.d.ts +0 -0
  1116. /package/dist/domain/{system-components → extensions}/rotation-handle.d.ts +0 -0
  1117. /package/dist/domain/{system-components → extensions}/save-template-thumbnail.d.ts +0 -0
  1118. /package/dist/domain/{system-components → extensions}/scene-entity-animation.d.ts +0 -0
  1119. /package/dist/domain/{system-components → extensions}/scene-entity-control.d.ts +0 -0
  1120. /package/dist/domain/{system-components → extensions}/scene-entity-floor-object.d.ts +0 -0
  1121. /package/dist/domain/{system-components → extensions}/scene-entity-wall-object.d.ts +0 -0
  1122. /package/dist/domain/{system-components → extensions}/selectable-component.d.ts +0 -0
  1123. /package/dist/domain/{system-components → extensions}/simple-summary.d.ts +0 -0
  1124. /package/dist/domain/{system-components → extensions}/summary-component.d.ts +0 -0
  1125. /package/dist/domain/{system-components → extensions}/text-value.d.ts +0 -0
  1126. /package/dist/domain/{system-components → extensions}/tool-controls.d.ts +0 -0
  1127. /package/dist/domain/{system-components → extensions}/view-controls.d.ts +0 -0
@@ -40,6 +40,7 @@ project-root/
40
40
  | `components/` | Phoenix system components (ECS) |
41
41
  | `elements/` | Page elements (pages, providers) |
42
42
  | `expressions/` | Domain logic expressions |
43
+ | `actions/` | Implementations of the domain actions declared under `actions:` |
43
44
  | `invariants/` | Domain constraints |
44
45
  | `transformers/` | Data transformation logic |
45
46
  | `handlers/` | Event & lifecycle handlers |
@@ -48,6 +49,12 @@ project-root/
48
49
  | `locales/` | Locale catalogs (`.po` sources; compiled `.ts`, do not edit) |
49
50
  | `_*` | Shared code folders at any depth (not auto-imported) |
50
51
 
52
+ Every file in `components/`, `elements/`, `expressions/`, `actions/`, `invariants/`, `transformers/` and `handlers/`
53
+ (and their `admin/` counterparts) is imported by its location, so its default export must be what that folder's `phx`
54
+ factory returns, or an array of those. A file that exports anything else, such as a plain React component in
55
+ `elements/`, stops the application at start with an `Invalid default export in <file>` error that names the expected
56
+ shape. Keep plain components and helpers in a `_*` folder.
57
+
51
58
  ### Admin Folders (src/admin/)
52
59
 
53
60
  The `admin/` folder supports these admin-specific categories:
@@ -171,25 +178,29 @@ type CustomMaterial = Phx['AdminModel']['CustomMaterial']
171
178
 
172
179
  | File | Auto-Generated? | Notes |
173
180
  | ------------------------------------------------------ | --------------- | -------------------------------------- |
174
- | `package.json` | Partially | Dependencies merged, scripts preserved |
181
+ | `package.json` | Partially | Dependencies merged, scripts untouched |
175
182
  | `tsconfig.json` | Yes | Managed by Phoenix |
176
183
  | `eslint.config.js` | Yes | Managed by Phoenix |
177
184
  | `prettier.config.js` | Yes | Managed by Phoenix |
178
- | `.prettierignore` | Yes | Managed by Phoenix |
185
+ | `.prettierignore` | No | Optional and your own; see below |
179
186
  | `.linguirc` | Yes | Managed by Phoenix |
180
187
  | `.nvmrc` | Yes | Managed by Phoenix |
181
- | `.gitignore` | Partially | User entries between markers preserved |
188
+ | `.gitignore` | Partially | Only in a git repository; see Markers |
182
189
  | `.env` | No | Git-ignored, local config |
183
190
  | `.env.example` | No | Template for env vars |
184
191
  | `.env.generated` | Yes | Auto-generated IDs, git-ignored |
185
192
  | `README.md` | No | Project documentation |
186
- | `AGENTS.md` | Once | Coding-agent instructions, yours after |
193
+ | `AGENTS.md` | No | Your own coding-agent instructions |
187
194
  | `.claude/skills/phoenix*/`, `.agents/skills/phoenix*/` | Yes | Phoenix agent skills |
188
195
 
196
+ Sync does not write `README.md`, `AGENTS.md`, `.env.example`, `.env.ci` or the `README.md` files in `assets/public/` and `assets/private/`. Earlier SDK versions wrote them once; a project that has them keeps them, and they are yours to edit.
197
+
198
+ With the application-spec pipeline (see [Current and legacy project tooling](?path=/docs/phoenix-phoenix-cli--docs#current-and-legacy-project-tooling)), Phoenix does not write a `.prettierignore`, and a fresh clone or CI checkout of a project has none. `phoenix check` and `phoenix fix` do not read one: they skip `.phoenix/`, `dist/`, the compiled catalogs in `src/locales/`, `pnpm-lock.yaml` and `.linguirc` on their own. A project that runs Prettier directly, as `prettier --check .` or from an editor, can add its own `.prettierignore`. To commit it, add a `!.prettierignore` line after the Phoenix block of `.gitignore`, because that block lists the file. The legacy pipeline writes `.prettierignore` on every sync.
199
+
189
200
  ### DO NOT EDIT (Fully Auto-Generated)
190
201
 
191
- - **Everything in `.phoenix/`** - Completely regenerated on each build
192
- - `tsconfig.json`, `eslint.config.js`, `prettier.config.js`, `.prettierignore`
202
+ - **Everything in `.phoenix/`** - Completely regenerated on each build. The one exception is `.phoenix/variants/`, where a coding agent writes the option files for `phoenix variants`; a rebuild keeps it
203
+ - `tsconfig.json`, `eslint.config.js`, `prettier.config.js`
193
204
  - `.linguirc`, `.nvmrc`
194
205
  - `src/locales/**/*.ts` - Compiled from `.po` catalogs
195
206
  - `.env.generated`
@@ -197,23 +208,25 @@ type CustomMaterial = Phx['AdminModel']['CustomMaterial']
197
208
 
198
209
  ### Agent Guidance
199
210
 
200
- Coding agents (Claude Code, Codex, Cursor) read `AGENTS.md` and the Phoenix agent skills. `AGENTS.md` is written once with the build commands, the do-not-edit list and a pointer to the skills; after that it is yours. The `phoenix`, `phoenix-cli`, `phoenix-feedback` and `phoenix-review` skills carry the SDK conventions, CLI tooling and review checklist, and the `phoenix-create-configurator` skill walks the agent from your product documents and assets to a reviewed configurator in five stages. Phoenix keeps them in step with the installed SDK, including the reference files inside a skill folder. During the internal beta, a project created from a canary build of the SDK gets one more section in the `phoenix` skill: once per conversation the agent checks for a newer canary and, after telling you, updates the project's SDK and runs `phoenix sync`. Other skill folders are never touched.
211
+ Coding agents (Claude Code, Codex, Cursor) read the Phoenix agent skills. An `AGENTS.md` is yours to add for your own instructions; sync does not write one. The `phoenix`, `phoenix-cli`, `phoenix-feedback` and `phoenix-review` skills carry the SDK conventions, CLI tooling and review checklist, and the `phoenix-create-configurator` skill walks the agent from your product documents and assets to a reviewed configurator in five stages. The `phoenix-variants` skill has the agent show you several options over the dev preview when a decision is a matter of taste, and build the one you pick. Phoenix keeps them in step with the installed SDK, including the reference files inside a skill folder. During the internal beta, a project created from a canary build of the SDK gets one more section in the `phoenix` skill: once per conversation the agent checks for a newer canary and, after telling you, updates the project's SDK and runs `phoenix sync`. Other skill folders are never touched.
201
212
 
202
213
  Projects created by earlier SDK versions had this guidance in `CLAUDE.md`, `.cursor/rules/phoenix.mdc` and `commands/review.md`. Sync removes the SDK block from the first two, keeps your own text around it, deletes a file that held nothing else, and deletes the review commands; use the `phoenix-review` skill instead of `/review`.
203
214
 
204
215
  ### Markers for Partial Auto-Generation
205
216
 
206
- `.gitignore` preserves custom entries between markers:
217
+ `.gitignore` holds the Phoenix entries between two marker lines. Sync rewrites that block and keeps everything outside it:
207
218
 
208
219
  ```gitignore
209
- # phoenix-start
220
+ # ===== BEGIN PHOENIX AUTO-GENERATED =====
210
221
  # ... Phoenix-managed ignores ...
211
- # phoenix-end
222
+ # ===== END PHOENIX AUTO-GENERATED =====
212
223
 
213
- # Your custom ignores below (preserved)
224
+ # Your custom ignores (preserved)
214
225
  my-custom-folder/
215
226
  ```
216
227
 
228
+ With the application-spec pipeline (see [Current and legacy project tooling](?path=/docs/phoenix-phoenix-cli--docs#current-and-legacy-project-tooling)), sync writes `.gitignore` only when the project is inside a git repository: the project folder or one of its parent folders holds a `.git` entry. Outside a repository it neither creates the file nor changes one that is already there. Run `git init` before the first sync, or sync again after it, to get the file. The legacy pipeline writes the file in every project.
229
+
217
230
  ### Safe to Edit
218
231
 
219
232
  - `src/` (except compiled `src/locales/**/*.ts` files)
@@ -249,6 +262,7 @@ project-root/
249
262
  │ ├── components/ # Phoenix system components (ECS)
250
263
  │ ├── elements/ # UI elements (pages, providers)
251
264
  │ ├── expressions/ # Domain logic expressions
265
+ │ ├── actions/ # Domain action implementations
252
266
  │ ├── invariants/ # Domain constraints
253
267
  │ ├── transformers/ # Data transformation logic
254
268
  │ ├── handlers/ # Event & lifecycle handlers
@@ -314,6 +328,7 @@ project-root/
314
328
  │ │ └── builders.ts
315
329
  │ ├── .swc/ # SWC transpiled sources
316
330
  │ ├── .lingui/ # Compiled i18n catalogs
331
+ │ ├── variants/ # Option files of `phoenix variants`, written by coding agents
317
332
  │ ├── dist/ # Build output
318
333
  │ │ ├── frontend/ # Frontend bundles
319
334
  │ │ └── webhooks/ # Webhook bundles
@@ -362,6 +377,7 @@ Domain logic files define the business rules and computed properties of your con
362
377
  | Purpose | Location | Example Files |
363
378
  | ------------ | ------------------- | ---------------------------------------------- |
364
379
  | Expressions | `src/expressions/` | `table.ts`, `legs.ts`, `module.ts` |
380
+ | Actions | `src/actions/` | `move-part.ts`, `swap-cabinets.ts` |
365
381
  | Invariants | `src/invariants/` | `top.ts`, `legs.ts` |
366
382
  | Transformers | `src/transformers/` | `fix-table-top-material-update-transformer.ts` |
367
383
  | Migrations | `src/migrations/` | `v2.ts`, `v3.ts`, `v4.ts` |
@@ -510,7 +526,7 @@ The `application.yaml` file contains global application-level settings. These fi
510
526
  | Field | Type | Description |
511
527
  | -------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
512
528
  | `project` | `string` | Server project `phoenix dev` develops in: a project slug, or `default` for the default project of the signed-in workspace. Read only by the CLI; overridden by `--projectSlug` and `PROJECT_SLUG` |
513
- | `applicationVersion` | `string` | Semantic version (`x.y.z`) exported as `ApplicationVersion` constant and stored on the deployment record |
529
+ | `applicationVersion` | `string` | Semantic version (`x.y.z`) exported as `ApplicationVersion` constant, stored on the deployment record and named in the banner comment of built bundles |
514
530
  | `webComponentTag` | `string` | Custom HTML web component tag name for embedding |
515
531
  | `pageTitle` | `string` | Browser page title |
516
532
 
@@ -104,10 +104,10 @@ pnpm install
104
104
  pnpm phoenix sync
105
105
  ```
106
106
 
107
- `phoenix sync` keeps `spec/` and `src/` as your authored inputs and generates the application shell, scripts, types, and `.phoenix/` implementation. Start the generated development script without a server:
107
+ `phoenix sync` keeps `spec/` and `src/` as your authored inputs and generates the application shell, types, and `.phoenix/` implementation. Start development without a server:
108
108
 
109
109
  ```sh
110
- pnpm dev:local
110
+ pnpm phoenix dev --persistence local-storage
111
111
  ```
112
112
 
113
113
  Open the URL printed by the command. The application shell loads with the default `<salsita-configurator>` element and an empty 3D scene.
@@ -22,7 +22,7 @@ pnpm install
22
22
  pnpm phoenix sync
23
23
  ```
24
24
 
25
- `phoenix init [folder]` writes the starter project: `package.json`, `pnpm-workspace.yaml` and the starter spec, `spec/application.yaml` and `spec/configurator.yaml`, which describe one box you can resize and recolour. The starter depends on the same SDK version as the CLI that created it. `phoenix sync` then adds the rest of the project: package scripts, webhooks, README and lint config.
25
+ `phoenix init [folder]` writes the starter project: `package.json`, `pnpm-workspace.yaml` and the starter spec, `spec/application.yaml` and `spec/configurator.yaml`, which describe one box you can resize and recolour. The starter depends on the same SDK version as the CLI that created it, and its `package.json` has the `dev`, `build`, `deploy`, `check` and `fix` scripts, which are yours to change. `phoenix sync` then adds the rest of the project: webhooks and lint config. It writes a `.gitignore` only when the folder is inside a git repository; run `git init` before the first sync, or sync again after it, to get the file.
26
26
 
27
27
  `init` only writes these files: it asks nothing and contacts no server. It refuses a folder that already has a `spec/` folder. A `package.json` already in the folder is kept, as long as it depends on the SDK.
28
28
 
@@ -36,20 +36,20 @@ The starter `spec/application.yaml` begins with `project: default`, which means
36
36
  pnpm phoenix login <workspace>
37
37
  ```
38
38
 
39
- `phoenix login` opens Studio, where you approve the sign-in. Studio sends a one-time code back to the CLI on `127.0.0.1`, and the CLI exchanges it for a personal token. The code only works for the CLI that asked for it and expires after five minutes. Use `--no-open` to print the link instead of opening a browser.
39
+ `phoenix login` opens Studio, where you name the token and approve the sign-in. Only a super admin of the workspace can open Studio, so only a super admin can approve it. The CLI suggests `phoenix CLI on <computer>`; a name of your own, such as the agent and the machine, tells your tokens apart later. Studio sends a one-time code back to the CLI on `127.0.0.1`, the CLI exchanges it for a personal token and returns the browser to Studio, which confirms the sign-in. The code only works for the CLI that asked for it and expires after five minutes. **Deny** stops the waiting CLI at once and creates no token. Use `--no-open` to print the link instead of opening a browser.
40
40
 
41
41
  The CLI stores the token in `~/.phoenix/credentials.json`, readable only by you, with one entry per server. `PHOENIX_CREDENTIALS_FILE` moves the file. The token acts for you in your workspace until you revoke it. It stops working when you are removed from the workspace or banned.
42
42
 
43
- `pnpm phoenix logout` revokes the token and removes it from the file. Studio's **CLI tokens** page lists your tokens with when they were last used, and revokes any of them, for example one left on another computer.
43
+ `pnpm phoenix logout` revokes the token and removes it from the file. Studio's **CLI tokens** page lists your tokens by the names you gave them, with when they were last used, and revokes any of them, for example one left on another computer. A revoked token leaves the list.
44
44
 
45
45
  `login`, `logout` and `deploy` follow the region, not the `SERVER_URL` in the project's `.env`. `dev` follows the region too when `.env` has no `SERVER_URL`:
46
46
 
47
- | Flag | Default | Description |
48
- | --------------------- | ------------------------------------ | ------------------------------------------------ |
49
- | `--region` | `eu` | Phoenix region of the workspace: `eu` or `us` |
50
- | `--serverUrl` / `-su` | the region's server | Phoenix server URL, for a local or custom server |
51
- | `--studioUrl` | the workspace's Studio in the region | Studio URL of the workspace (`login`) |
52
- | `--open` | `true` | Open the approval page in your browser (`login`) |
47
+ | Flag | Default | Description |
48
+ | ---------------------- | ------------------------------------ | ------------------------------------------------ |
49
+ | `--region` | `eu` | Phoenix region of the workspace: `eu` or `us` |
50
+ | `--serverUrl` / `--su` | the region's server | Phoenix server URL, for a local or custom server |
51
+ | `--studioUrl` | the workspace's Studio in the region | Studio URL of the workspace (`login`) |
52
+ | `--open` | `true` | Open the approval page in your browser (`login`) |
53
53
 
54
54
  ## 3. Develop
55
55
 
@@ -59,9 +59,9 @@ pnpm phoenix dev
59
59
 
60
60
  Signed in, `phoenix dev` needs no `.env` and nothing set up in Studio. When it starts, it asks the server for your development environment in the project the spec names. The server creates that environment the first time and finds it again on every later run. `phoenix dev` prints the workspace, project and environment it works in, prepares a development deployment there and opens the webhook tunnel, as for any Phoenix project (see [Phoenix CLI](?path=/docs/phoenix-phoenix-cli--docs)). It then prints the address of the preview as `Preview: <url>`; the preview talks to the server the deployment was prepared on.
61
61
 
62
- Every user of the workspace gets their own development environment, so a teammate who clones the project and signs in doesn't overwrite your schema or take over your webhooks. The development environment is separate from `production`: nothing you do in `phoenix dev` changes the live configurator.
62
+ Every user who signs the CLI in gets their own development environment, so a teammate (a super admin of the workspace, like you) who clones the project and signs in doesn't overwrite your schema or take over your webhooks. The development environment is separate from `production`: nothing you do in `phoenix dev` changes the live configurator.
63
63
 
64
- `pnpm dev:local` still runs the project without any server, with state kept in the browser.
64
+ `pnpm phoenix dev --persistence local-storage` still runs the project without any server, with state kept in the browser.
65
65
 
66
66
  Coding agents follow the generated `phoenix` skill: before their first change they start `phoenix dev` and open the preview in your browser, and after `phoenix deploy` starts a build they open its page in Studio.
67
67
 
@@ -77,8 +77,9 @@ pnpm phoenix deploy
77
77
 
78
78
  1. It validates the application spec.
79
79
  2. It packs the project files: the `.yaml` files in `spec`, everything in `src`, `mocks`, `assets`, `public` and `templates`, and `package.json`, `pnpm-lock.yaml`, `pnpm-workspace.yaml`, `.gitignore`, `CLAUDE.md` and `.cursor/rules/phoenix.mdc`. Every `node_modules`, `.phoenix` and `__generated` folder, every `.DS_Store` and `._*` file and every `.env` and `.env.*` file are left out, at any depth.
80
- 3. It uploads the archive, which may be up to 200 MB.
81
- 4. It starts the build, prints a link to the build's page in Studio and follows the build until your configurator is live, then prints its URL.
80
+ 3. It asks the server for a build. The server compares your domain model with the deployed one and refuses, before anything is uploaded, a model that changed under an already deployed model version; see [Migrations](?path=/docs/phoenix-migrations--docs).
81
+ 4. It uploads the archive, which may be up to 200 MB.
82
+ 5. It starts the build, prints a link to the build's page in Studio and follows the build until your configurator is live, then prints its URL.
82
83
 
83
84
  On the server, the install follows your `pnpm-lock.yaml` and `pnpm-workspace.yaml`, so it allows the same build scripts and package versions as `pnpm install` on your computer. The build runs without platform secrets. It sees only your own environment variables and the public platform values, the [build environment](?path=/docs/phoenix-phoenix-cli--docs) that `phoenix deployment:build-envs` writes. The trusted deploy step then publishes the frontend, webhooks and assets.
84
85
 
@@ -93,15 +94,18 @@ Studio's **Builds & deployments** page lists your builds and shows which one you
93
94
  Tell us what is broken, confusing or missing, from wherever you are:
94
95
 
95
96
  - In Studio, **Send beta feedback** in the sidebar opens a short form.
96
- - In the terminal, `pnpm phoenix feedback "<message>" --type bug|idea|other` sends it with your sign-in. See the [CLI reference](?path=/docs/phoenix-phoenix-cli--docs).
97
+ - In the terminal, `pnpm phoenix feedback "<message>" --type bug|idea|other` sends it with your sign-in, and `--file <path>` sends a text file instead of the argument. See the [CLI reference](?path=/docs/phoenix-phoenix-cli--docs).
98
+ - On a build's page in Studio, **Download sources** downloads the archive `phoenix deploy` uploaded for that build, so a report only needs to name the build.
97
99
 
98
- Coding agents working in your project use the same command, guided by the generated `phoenix-feedback` skill. They never send on their own: an agent shows you a draft, right away when the problem is crucial and otherwise at the end of the task, and sends it only after you approve it. They are told never to include secrets, customer data or your project's source. After a deploy goes live, the agent also asks you, once per conversation, to rate building with Phoenix from 0 to 10; it tells you the answer goes to the Phoenix team, shows the message and sends it only after you approve it.
100
+ Coding agents working in your project use the same command, guided by the generated `phoenix-feedback` skill. They never send on their own: an agent shows you a draft, right away when the problem is crucial and otherwise at the end of the task, and sends it only after you approve it. A report names the build with its Studio page link and the live configurator, says what the agent was doing, what happened and what it expected, quotes the exact error and ends with a condensed conversation log. Agents are told never to include secrets, credentials or personal data; parts of your project and your own words go in only through a draft you approved. When you are done with the configurator, the agent also asks you, once per conversation, to evaluate the run: minutes spent, then scores from 0 to 10 for the agent's guidance, functionality, UX, 3D quality, UI visuals and the overall result, and your comments. It asks one question at a time, never picks a score for you, tells you the answers go to the Phoenix team, shows the message and sends it only after you approve it.
99
101
 
100
102
  ## Known limits
101
103
 
102
104
  - You can deploy once the workspace's first deployment is live. Until then, `phoenix deploy` tells you the workspace is still being set up.
105
+ - The first deployment is the starter, so the starter's model is version 1 in production. Replacing it with your own model needs the starter's model kept as `v1` and a migration to version 2; [Migrations](?path=/docs/phoenix-migrations--docs) shows the migration for replacing a model entirely.
103
106
  - One workspace has one project, one `production` environment and one development environment per user.
104
107
  - `phoenix deploy` always deploys to the workspace's default project; it doesn't read `project` from the spec yet.
105
108
  - Only `phoenix dev` works from the sign-in. `phoenix deployment:prepare-dev` still needs the `.env` block of a Studio development environment.
106
109
  - Every deploy uploads the whole project; there are no incremental uploads.
107
- - Your own environment variables can't use platform names such as `LAMBDA_FUNCTION_NAME` or the `AWS_` prefix. A deploy that sets them fails before it registers.
110
+ - Your own environment variables are set in Studio under Environment, by a super admin of the workspace, and apply from the next deploy. `phoenix dev` doesn't receive them: your development environment has its own variables. A build reads them from `process.env`; a webhook reads the ones the spec declares under `env.webhook`, through `phx.webhooksEnv` (see [Webhooks](?path=/docs/phoenix-webhooks--docs)). They can't use platform names such as `LAMBDA_FUNCTION_NAME`, the `AWS_` prefix, the identity provider settings such as `CLERK_API_KEY`, or names the CLI and the deploy tooling read themselves, such as `SERVER_URL` or `NODE_OPTIONS`; Studio refuses those names.
111
+ - Only super admins of a workspace can open its Studio. Admins and users see a page that says so.
@@ -61,7 +61,7 @@ interface ConfigurationSchema {
61
61
 
62
62
  When you save work, Phoenix validates the entity data against this schema using AJV (Another JSON Schema Validator). If the data doesn't match the schema rules, the save fails. This prevents corrupt or mismatched data from entering your system.
63
63
 
64
- Phoenix also checks the schema hash during deployment registration. If you try to deploy the same model version with different schema content, registration fails unless you use the `--overrideSchema` flag (which you should only use for development and testing).
64
+ Phoenix also checks the schema hash during deployment registration. If you try to deploy the same model version with different schema content, registration fails with a message that names the model version and the environment: a deployed model version cannot change, because saved configurations depend on it. Keep the deployed model as that version, put the change in a new model version and add a [migration](?path=/docs/phoenix-migrations--docs). Development and testing environments replace the deployed schema instead, as does the `--overrideSchema` flag, which is for development and testing only.
65
65
 
66
66
  ### Revisions: Your Version History
67
67
 
@@ -991,7 +991,7 @@ Save the same OAuth client ID, client secret, and base URL in the customer's **C
991
991
  JWT_SECRET_BASE64=<base64 of a long random key>
992
992
  ```
993
993
 
994
- For a deployment, run `pnpm phoenix deployment:prepare` followed by `pnpm phoenix deployment:finish`. For local development, run `pnpm deployment:prepare-local`. These current commands use the customer settings stored in Studio; the removed `environment:create` and `deployment:register` commands are not part of the setup flow.
994
+ For a deployment, run `pnpm phoenix deployment:prepare` followed by `pnpm phoenix deployment:finish`. For local development, run `pnpm phoenix deployment:prepare-local`. These current commands use the customer settings stored in Studio; the removed `environment:create` and `deployment:register` commands are not part of the setup flow.
995
995
 
996
996
  #### Clerk organization
997
997
 
@@ -160,21 +160,23 @@ Room: {
160
160
 
161
161
  ### Entity Replacement Transformer
162
162
 
163
- Configure transformers to handle entity deselection when replacement occurs. This ensures clean state transitions:
163
+ Add a transformer to handle entity deselection when replacement occurs. This ensures clean state transitions:
164
164
 
165
165
  ```typescript
166
- const config = configuratorBuilder
167
- .withTransformers(ctx => {
168
- return [
169
- phx.frontend.transformerBuilder.when
170
- .entity(['RedSpecialConsole', 'BlueSpecialConsole'])
171
- .replacedWith(['RedSpecialConsole', 'BlueSpecialConsole'])
172
- .then.deselect()
173
- .build('Deselect special console on replacement')
174
- .register(ctx),
175
- ]
176
- })
177
- .buildConfig()
166
+ // src/transformers/deselect-special.ts
167
+ export default phx.frontend.transformerBuilder.when
168
+ .entity(['RedSpecialConsole', 'BlueSpecialConsole'])
169
+ .replacedWith(['RedSpecialConsole', 'BlueSpecialConsole'])
170
+ .then.deselect()
171
+ .build('deselect-special')
172
+ ```
173
+
174
+ Each file in `src/transformers/` default-exports one transformer and is picked up by its location. The `transformers` section of the spec turns it on by name. For a transformer made with `build(name)` that is the name passed to `build(...)`, which must match the file name with case and dashes ignored (`fix-finish.ts` and `fixFinish` match). For a plain-function export it is the file name:
175
+
176
+ ```yaml
177
+ # spec/application.yaml
178
+ transformers:
179
+ - name: deselect-special
178
180
  ```
179
181
 
180
182
  ### Initial Configuration
@@ -69,8 +69,19 @@ relations:
69
69
 
70
70
  Consider enabling select-parent-on-deselection to keep selection stable:
71
71
 
72
- ```ts
73
- .withTransformers(ctx => [{ priority: 101, transformer: createSelectParentOnDeselectionTransformer(ctx) }])
72
+ ```typescript
73
+ // src/transformers/select-parent.ts
74
+ import { createSelectParentOnDeselectionTransformer } from '@salsita-ai/sdk/domain'
75
+
76
+ export default createSelectParentOnDeselectionTransformer
77
+ ```
78
+
79
+ Each file in `src/transformers/` default-exports one transformer and is picked up by its location. The `transformers` section of the spec turns it on by name. For a transformer made with `build(name)` that is the name passed to `build(...)`, which must match the file name with case and dashes ignored (`fix-finish.ts` and `fixFinish` match). For a plain-function export it is the file name:
80
+
81
+ ```yaml
82
+ # spec/application.yaml
83
+ transformers:
84
+ - name: select-parent
74
85
  ```
75
86
 
76
87
  ## Example
@@ -13,6 +13,15 @@ Choose the control from how users understand the options.
13
13
  - Long labels or descriptions: list selector.
14
14
  - Many text options or tight space: select dropdown.
15
15
 
16
+ ## Adding, removing, and placing
17
+
18
+ The controls above choose a value for a property. A decision that changes which parts exist is a different kind of choice, and where its control lives is part of the decision.
19
+
20
+ - Put the control in the scene when position carries the meaning of the action: where the next part goes, what sits on top of this one, which part this removes. An add FAB stands at the place the new part will occupy, and a delete FAB sits on the part it removes.
21
+ - Put the control in the sidebar when the choice is a catalogue pick and position is incidental, or when the scene offers no obvious place for the control to stand.
22
+ - A product the user assembles or arranges is the first case. A sidebar list for it turns building into list-keeping and leaves the scene a picture of the result rather than the place the user works.
23
+ - Both forms offer the same recipes, so this chooses where the user acts, not what they can add.
24
+
16
25
  ## Common control guidance
17
26
 
18
27
  - Order properties in the sequence users naturally make the decisions.
@@ -31,3 +40,5 @@ Choose the control from how users understand the options.
31
40
  - [Select dropdown](?path=/docs/controls-select-attribute-select--docs)
32
41
  - [Text input](?path=/docs/design-system-inputs-textinput--docs)
33
42
  - [Color picker](?path=/docs/controls-color-picker-input--docs)
43
+ - [Scene add and delete FABs](?path=/docs/fabs-basic--docs)
44
+ - [Recipe panel in the sidebar](?path=/docs/recipes-delete-simple--docs)
@@ -3,8 +3,7 @@
3
3
  * @file enhanced-model.ts
4
4
  * @description Standalone common-admin enhanced model types.
5
5
  */
6
- import type { $DomainEntity } from '../../core/model.js';
7
- import type { Violation } from '../../invariants/violation.js';
6
+ import type { $DomainEntity, Violation } from '../../core/index.js';
8
7
  import type { Admin, ConnectedDataConfig, DataTable, DummyDoNotUse, Preset, PresetCategory, Recipe } from './model/index.js';
9
8
  export type PresetCategoryExpressions = {
10
9
  readonly $isDraft: boolean;
@@ -3,7 +3,7 @@
3
3
  * @file model/versions/v1.ts
4
4
  * @description Historical domain model types for the migration chain.
5
5
  */
6
- import type { DomainEntityId } from '../../../../core/model.js';
6
+ import type { DomainEntityId } from '../../../../core/index.js';
7
7
  export interface Admin {
8
8
  readonly id: DomainEntityId<'Admin'>;
9
9
  readonly type: 'Admin';
@@ -3,7 +3,7 @@
3
3
  * @file model/versions/v2.ts
4
4
  * @description Historical domain model types for the migration chain.
5
5
  */
6
- import type { DomainEntityId } from '../../../../core/model.js';
6
+ import type { DomainEntityId } from '../../../../core/index.js';
7
7
  export type GenericDomainEntity = {
8
8
  readonly id: DomainEntityId<string>;
9
9
  readonly type: string;
@@ -3,7 +3,7 @@
3
3
  * @file model/versions/v3.ts
4
4
  * @description Historical domain model types for the migration chain.
5
5
  */
6
- import type { DomainEntityId } from '../../../../core/model.js';
6
+ import type { DomainEntityId } from '../../../../core/index.js';
7
7
  export type GenericDomainEntity = {
8
8
  readonly id: DomainEntityId<string>;
9
9
  readonly type: string;
@@ -4,7 +4,7 @@
4
4
  * @description Historical domain model types for the migration chain.
5
5
  */
6
6
  import type { MultilingualString } from '@salsita-ai/common/utils';
7
- import type { DomainEntityId } from '../../../../core/model.js';
7
+ import type { DomainEntityId } from '../../../../core/index.js';
8
8
  export type GenericDomainEntity = {
9
9
  readonly id: DomainEntityId<string>;
10
10
  readonly type: string;
@@ -4,7 +4,7 @@
4
4
  * @description Historical domain model types for the migration chain.
5
5
  */
6
6
  import type { MultilingualString } from '@salsita-ai/common/utils';
7
- import type { DomainEntityId } from '../../../../core/model.js';
7
+ import type { DomainEntityId } from '../../../../core/index.js';
8
8
  export type GenericDomainEntity = {
9
9
  readonly id: DomainEntityId<string>;
10
10
  readonly type: string;
@@ -4,8 +4,8 @@
4
4
  * @description Standalone versioned domain model and reflections.
5
5
  */
6
6
  import type { MultilingualString } from '@salsita-ai/common/utils';
7
- import type { DomainEntityId } from '../../../../core/model.js';
8
- import { DomainEntityReflection, RawAliasReflection } from '../../../../core/reflection.js';
7
+ import type { DomainEntityId } from '../../../../core/index.js';
8
+ import { DomainEntityReflection, RawAliasReflection } from '../../../../core/index.js';
9
9
  export declare const modelVersion = 6;
10
10
  export type GenericDomainEntity = {
11
11
  readonly id: DomainEntityId<string>;
@@ -1 +1 @@
1
- import{DomainEntityReflection as e,RawAliasReflection as t}from"../../../../core/reflection.js";export const modelVersion=6;export const Admin=new e("Admin",[{type:"object",properties:{commonAdminModelVersion:{enum:[6]}},required:["commonAdminModelVersion"],additionalProperties:!1}]);export const Preset=new e("Preset",[{type:"object",properties:{commonAdminModelVersion:{enum:[6]},name:{$ref:"#/$defs/MultilingualString"},description:{$ref:"#/$defs/MultilingualString"},index:{type:"number"},visible:{type:"boolean"},categoryId:{oneOf:[{$ref:"#/$defs/DomainEntityId"},{type:"null"}]},configurationId:{oneOf:[{type:"string"},{type:"null"}]},revisionId:{oneOf:[{type:"string"},{type:"null"}]},ownerToken:{oneOf:[{type:"string"},{type:"null"}]},readToken:{oneOf:[{type:"string"},{type:"null"}]},thumbnailUrl:{oneOf:[{type:"string"},{type:"null"}]},customThumbnailUrl:{oneOf:[{type:"string"},{type:"null"}]},tags:{type:"array",items:{type:"string"}}},required:["commonAdminModelVersion","name","description","index","visible","categoryId","configurationId","revisionId","ownerToken","readToken","thumbnailUrl","customThumbnailUrl","tags"],additionalProperties:!1,$defs:{MultilingualString:{type:"object",properties:{$lang:{type:"object",additionalProperties:{type:"string"}}},required:["$lang"],additionalProperties:!1},DomainEntityId:{type:"string",pattern:"^[A-Z]\\w*-\\d+$"}}}]);export const PresetCategory=new e("PresetCategory",[{type:"object",properties:{commonAdminModelVersion:{enum:[6]},name:{$ref:"#/$defs/MultilingualString"},index:{type:"number"},visible:{type:"boolean"},description:{$ref:"#/$defs/MultilingualString"}},required:["commonAdminModelVersion","name","index","visible","description"],additionalProperties:!1,$defs:{MultilingualString:{type:"object",properties:{$lang:{type:"object",additionalProperties:{type:"string"}}},required:["$lang"],additionalProperties:!1}}}]);export const Recipe=new e("Recipe",[{type:"object",properties:{commonAdminModelVersion:{enum:[6]},name:{$ref:"#/$defs/MultilingualString"},description:{$ref:"#/$defs/MultilingualString"},collection:{type:"string"},index:{type:"number"},visible:{type:"boolean"},configuration:{anyOf:[{$ref:"#/$defs/RecipeConfiguration"},{type:"null"}]}},required:["commonAdminModelVersion","name","description","collection","index","visible","configuration"],additionalProperties:!1,$defs:{MultilingualString:{type:"object",properties:{$lang:{type:"object",additionalProperties:{type:"string"}}},required:["$lang"],additionalProperties:!1},RecipeConfiguration:{type:"object",properties:{modelVersion:{type:"integer"},entities:{type:"array",items:{$ref:"#/$defs/GenericDomainEntity"}},rootEntityType:{type:"string"},rootRecipeId:{type:"string"},recipeIds:{type:"array",items:{type:"string"}},configurationId:{type:"string"},revisionId:{type:"string"},ownerToken:{type:"string"}},additionalProperties:!1,required:["entities","rootEntityType","rootRecipeId","recipeIds","modelVersion","configurationId","revisionId","ownerToken"]},GenericDomainEntity:{type:"object",properties:{id:{$ref:"#/$defs/DomainEntityId"},type:{type:"string"}},additionalProperties:!0,required:["id","type"]},DomainEntityId:{type:"string",pattern:"^[A-Z]\\w*-\\d+$"}}}]);export const ConnectedDataConfig=new e("ConnectedDataConfig",[{type:"object",properties:{commonAdminModelVersion:{enum:[6]},dataEntryKey:{type:"string"},provider:{type:"string"},externalFileId:{type:"string"},fileLabel:{type:"string"},driveId:{oneOf:[{type:"string"},{type:"null"}]},tabSelection:{type:"array",items:{type:"string"}},headerRowIndex:{oneOf:[{type:"integer"},{type:"null"}]}},required:["commonAdminModelVersion","dataEntryKey","provider","externalFileId","fileLabel","driveId","tabSelection","headerRowIndex"],additionalProperties:!1}]);export const DataTable=new e("DataTable",[{type:"object",properties:{commonAdminModelVersion:{enum:[6]},dataEntryKey:{type:"string"},data:{type:"object"}},required:["commonAdminModelVersion","dataEntryKey","data"],additionalProperties:!1}]);export const DummyDoNotUse=new e("DummyDoNotUse",[{type:"object",properties:{},required:[],additionalProperties:!1}]);export const RootEntity=new t("RootEntity",[Admin]);export const CommonAdminEntity=new t("CommonAdminEntity",[Admin,Preset,PresetCategory,Recipe,ConnectedDataConfig,DataTable]);export const AnyDomainEntity=new t("AnyDomainEntity",[Admin,Preset,PresetCategory,Recipe,ConnectedDataConfig,DataTable,DummyDoNotUse]);export const aliases={RootEntity:RootEntity.types,CommonAdminEntity:CommonAdminEntity.types,AnyDomainEntity:AnyDomainEntity.types};
1
+ import{DomainEntityReflection as e,RawAliasReflection as t}from"../../../../core/index.js";export const modelVersion=6;export const Admin=new e("Admin",[{type:"object",properties:{commonAdminModelVersion:{enum:[6]}},required:["commonAdminModelVersion"],additionalProperties:!1}]);export const Preset=new e("Preset",[{type:"object",properties:{commonAdminModelVersion:{enum:[6]},name:{$ref:"#/$defs/MultilingualString"},description:{$ref:"#/$defs/MultilingualString"},index:{type:"number"},visible:{type:"boolean"},categoryId:{oneOf:[{$ref:"#/$defs/DomainEntityId"},{type:"null"}]},configurationId:{oneOf:[{type:"string"},{type:"null"}]},revisionId:{oneOf:[{type:"string"},{type:"null"}]},ownerToken:{oneOf:[{type:"string"},{type:"null"}]},readToken:{oneOf:[{type:"string"},{type:"null"}]},thumbnailUrl:{oneOf:[{type:"string"},{type:"null"}]},customThumbnailUrl:{oneOf:[{type:"string"},{type:"null"}]},tags:{type:"array",items:{type:"string"}}},required:["commonAdminModelVersion","name","description","index","visible","categoryId","configurationId","revisionId","ownerToken","readToken","thumbnailUrl","customThumbnailUrl","tags"],additionalProperties:!1,$defs:{MultilingualString:{type:"object",properties:{$lang:{type:"object",additionalProperties:{type:"string"}}},required:["$lang"],additionalProperties:!1},DomainEntityId:{type:"string",pattern:"^[A-Z]\\w*-\\d+$"}}}]);export const PresetCategory=new e("PresetCategory",[{type:"object",properties:{commonAdminModelVersion:{enum:[6]},name:{$ref:"#/$defs/MultilingualString"},index:{type:"number"},visible:{type:"boolean"},description:{$ref:"#/$defs/MultilingualString"}},required:["commonAdminModelVersion","name","index","visible","description"],additionalProperties:!1,$defs:{MultilingualString:{type:"object",properties:{$lang:{type:"object",additionalProperties:{type:"string"}}},required:["$lang"],additionalProperties:!1}}}]);export const Recipe=new e("Recipe",[{type:"object",properties:{commonAdminModelVersion:{enum:[6]},name:{$ref:"#/$defs/MultilingualString"},description:{$ref:"#/$defs/MultilingualString"},collection:{type:"string"},index:{type:"number"},visible:{type:"boolean"},configuration:{anyOf:[{$ref:"#/$defs/RecipeConfiguration"},{type:"null"}]}},required:["commonAdminModelVersion","name","description","collection","index","visible","configuration"],additionalProperties:!1,$defs:{MultilingualString:{type:"object",properties:{$lang:{type:"object",additionalProperties:{type:"string"}}},required:["$lang"],additionalProperties:!1},RecipeConfiguration:{type:"object",properties:{modelVersion:{type:"integer"},entities:{type:"array",items:{$ref:"#/$defs/GenericDomainEntity"}},rootEntityType:{type:"string"},rootRecipeId:{type:"string"},recipeIds:{type:"array",items:{type:"string"}},configurationId:{type:"string"},revisionId:{type:"string"},ownerToken:{type:"string"}},additionalProperties:!1,required:["entities","rootEntityType","rootRecipeId","recipeIds","modelVersion","configurationId","revisionId","ownerToken"]},GenericDomainEntity:{type:"object",properties:{id:{$ref:"#/$defs/DomainEntityId"},type:{type:"string"}},additionalProperties:!0,required:["id","type"]},DomainEntityId:{type:"string",pattern:"^[A-Z]\\w*-\\d+$"}}}]);export const ConnectedDataConfig=new e("ConnectedDataConfig",[{type:"object",properties:{commonAdminModelVersion:{enum:[6]},dataEntryKey:{type:"string"},provider:{type:"string"},externalFileId:{type:"string"},fileLabel:{type:"string"},driveId:{oneOf:[{type:"string"},{type:"null"}]},tabSelection:{type:"array",items:{type:"string"}},headerRowIndex:{oneOf:[{type:"integer"},{type:"null"}]}},required:["commonAdminModelVersion","dataEntryKey","provider","externalFileId","fileLabel","driveId","tabSelection","headerRowIndex"],additionalProperties:!1}]);export const DataTable=new e("DataTable",[{type:"object",properties:{commonAdminModelVersion:{enum:[6]},dataEntryKey:{type:"string"},data:{type:"object"}},required:["commonAdminModelVersion","dataEntryKey","data"],additionalProperties:!1}]);export const DummyDoNotUse=new e("DummyDoNotUse",[{type:"object",properties:{},required:[],additionalProperties:!1}]);export const RootEntity=new t("RootEntity",[Admin]);export const CommonAdminEntity=new t("CommonAdminEntity",[Admin,Preset,PresetCategory,Recipe,ConnectedDataConfig,DataTable]);export const AnyDomainEntity=new t("AnyDomainEntity",[Admin,Preset,PresetCategory,Recipe,ConnectedDataConfig,DataTable,DummyDoNotUse]);export const aliases={RootEntity:RootEntity.types,CommonAdminEntity:CommonAdminEntity.types,AnyDomainEntity:AnyDomainEntity.types};
@@ -1,7 +1,4 @@
1
- import type { ExpressionContext } from '../../core/expression.js';
2
- import type { DomainEntity } from '../../core/model.js';
3
- import type { DomainState } from '../../core/state.js';
4
- import type { Violation } from '../../invariants/violation.js';
1
+ import type { DomainEntity, MigrateFunction, Violation } from '../../core/index.js';
5
2
  import type { ChildEntitySelectionOption } from '../../system-components/child-entity-selection.js';
6
3
  import type { RecipeListItem } from '../../system-components/index.js';
7
4
  import type { SwatchOptionMap } from '../../system-components/material-swatch.js';
@@ -20,11 +17,23 @@ export declare const commonAdminCustomExpressions: {
20
17
  readonly $isDraft: (self: PresetCategory) => boolean;
21
18
  };
22
19
  };
20
+ /**
21
+ * An expression of this file. It reads nothing of the entity or of the state, and of the context
22
+ * only `CONTEXT`, so it is written against that part alone: it fits every entity of every project
23
+ * whose expression context has that part, because the project's own entity view, state and context
24
+ * are assignable to these parameters.
25
+ */
26
+ type CommonAdminExpression<CONTEXT, T> = (self: unknown, state: unknown, ctx: CONTEXT) => T;
27
+ /** The part of the expression context a recipe expression reads. */
28
+ interface RecipeExpressionContext<PUBLISHED_DATA> {
29
+ readonly publishedData: PUBLISHED_DATA;
30
+ readonly migrate: MigrateFunction<DomainEntity<string>>;
31
+ }
23
32
  export declare const CommonAdminExpressionBuilder: {
24
- createConstantSwatchExpression: <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>, SELF extends ENTITIES>(swatches: SwatchOptionMap) => ((self: SELF, state: DomainState<ENTITIES>, ctx: ExpressionContext<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA>) => SwatchOptionMap);
25
- createConstantRecipeExpression: <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>, SELF extends ENTITIES>(recipes: RecipeListItem[]) => ((self: SELF, state: DomainState<ENTITIES>, ctx: ExpressionContext<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA>) => RecipeListItem[]);
26
- createConstantChildEntitySelectionExpression: <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>, SELF extends ENTITIES>(entities: ChildEntitySelectionOption[]) => ((self: SELF, state: DomainState<ENTITIES>, ctx: ExpressionContext<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA>) => ChildEntitySelectionOption[]);
27
- createRecipeExpression: <ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, PUBLISHED_DATA extends CommonAdminPublishedData, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, SELF extends ENTITIES>(collection: string, defaults: RecipeListItem[]) => ((self: SELF, state: DomainState<ENTITIES>, ctx: ExpressionContext<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA>) => RecipeListItem[]);
33
+ createConstantSwatchExpression: (swatches: SwatchOptionMap) => (() => SwatchOptionMap);
34
+ createConstantRecipeExpression: (recipes: RecipeListItem[]) => (() => RecipeListItem[]);
35
+ createConstantChildEntitySelectionExpression: (entities: ChildEntitySelectionOption[]) => (() => ChildEntitySelectionOption[]);
36
+ createRecipeExpression: (collection: string, defaults: RecipeListItem[]) => CommonAdminExpression<RecipeExpressionContext<CommonAdminPublishedData>, RecipeListItem[]>;
28
37
  };
29
38
  /**
30
39
  * Expression helpers for projects with chunked published data.
@@ -33,13 +42,16 @@ export declare const CommonAdminExpressionBuilder: {
33
42
  * Use {@link CommonAdminExpressionBuilder} for projects with flat published data.
34
43
  */
35
44
  export declare const ChunkedCommonAdminExpressionBuilder: {
36
- createConstantSwatchExpression: <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>, SELF extends ENTITIES>(swatches: SwatchOptionMap) => ((self: SELF, state: DomainState<ENTITIES>, ctx: ExpressionContext<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA>) => SwatchOptionMap);
37
- createConstantRecipeExpression: <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>, SELF extends ENTITIES>(recipes: RecipeListItem[]) => ((self: SELF, state: DomainState<ENTITIES>, ctx: ExpressionContext<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA>) => RecipeListItem[]);
38
- createConstantChildEntitySelectionExpression: <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>, SELF extends ENTITIES>(entities: ChildEntitySelectionOption[]) => ((self: SELF, state: DomainState<ENTITIES>, ctx: ExpressionContext<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA>) => ChildEntitySelectionOption[]);
39
- createRecipeExpression: <ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, PUBLISHED_DATA extends {
45
+ createConstantSwatchExpression: (swatches: SwatchOptionMap) => (() => SwatchOptionMap);
46
+ createConstantRecipeExpression: (recipes: RecipeListItem[]) => (() => RecipeListItem[]);
47
+ createConstantChildEntitySelectionExpression: (entities: ChildEntitySelectionOption[]) => (() => ChildEntitySelectionOption[]);
48
+ createRecipeExpression: (collection: string, defaults: RecipeListItem[]) => CommonAdminExpression<RecipeExpressionContext<{
40
49
  readonly system?: CommonAdminPublishedData;
41
- }, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, SELF extends ENTITIES>(collection: string, defaults: RecipeListItem[]) => ((self: SELF, state: DomainState<ENTITIES>, ctx: ExpressionContext<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA>) => RecipeListItem[]);
50
+ }>, RecipeListItem[]>;
42
51
  };
43
52
  export declare const createDataSwatchMap: (tableName: string, chunkKey?: string) => {
44
- bind: <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>, SELF extends ENTITIES>() => (_self: SELF, _state: DomainState<ENTITIES>, ctx: ExpressionContext<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA>) => SwatchOptionMap;
53
+ bind: () => CommonAdminExpression<{
54
+ readonly publishedData: Record<string, unknown>;
55
+ }, SwatchOptionMap>;
45
56
  };
57
+ export {};
@@ -1,4 +1,4 @@
1
- import type { DomainEntity } from '../../core/model.js';
1
+ import type { DomainEntity } from '../../core/index.js';
2
2
  import { AnyDomainEntity as V1Entity } from '../__generated/model/versions/v1.js';
3
3
  import { AnyDomainEntity as V2Entity } from '../__generated/model/versions/v2.js';
4
4
  import { AnyDomainEntity as V3Entity } from '../__generated/model/versions/v3.js';
@@ -1,6 +1,5 @@
1
1
  import type { DomainEntity } from '../../core/index.js';
2
2
  import type { PublishedData } from '../__generated/application-types.js';
3
- import { type AnyDomainEntity } from '../__generated/model/index.js';
4
3
  export type CommonAdminPublishedData = PublishedData;
5
4
  export declare const CommonAdminPublishedDataSchema: {
6
5
  type: "object";
@@ -182,4 +181,4 @@ export declare const CommonAdminPublishedDataSchema: {
182
181
  additionalProperties: false;
183
182
  required: never[];
184
183
  };
185
- export declare const mapCommonAdminPublishedData: <ENTITIES extends DomainEntity<string>>(entities: ReadonlyArray<ENTITIES | AnyDomainEntity>) => CommonAdminPublishedData;
184
+ export declare const mapCommonAdminPublishedData: (entities: ReadonlyArray<DomainEntity<string>>) => CommonAdminPublishedData;
@@ -1,6 +1,5 @@
1
1
  import type { ConfiguratorBuilder } from '../application/configurator-builder.js';
2
- import { DomainComponentOpticBuilder } from '../components/domain-component-optic.js';
3
- import type { $DomainEntity, DomainEntity } from '../core/model.js';
2
+ import { type $DomainEntity, DomainComponentOpticBuilder, type DomainEntity } from '../core/index.js';
4
3
  import type { FinalizeData, FinalizeResult, FrontendData, NavigationState, PublishedData, SessionData, ViewState } from './__generated/application-types.js';
5
4
  import type { $Map } from './__generated/enhanced-model.js';
6
5
  import type { Aliases, CommonAdminEntity, RootEntity } from './__generated/model/index.js';
@@ -11,9 +10,14 @@ export * from './__generated/model/index.js';
11
10
  export * from './implementation/common-admin-expressions.js';
12
11
  export * from './implementation/common-admin-publish.js';
13
12
  export * from './schema/index.js';
14
- export declare const createCommonAdminRecipe: import("../domain-context/recipe-system/recipes.js").RecipeFactory<AnyDomainEntity>;
15
- export declare const attachCommonAdminDomainComponent: DomainComponentOpticBuilder<AnyDomainEntity, import("./index.js").Admin, $Map, PublishedData, SessionData, Record<string, unknown>, Aliases, never, never, never>;
16
- export declare const commonAdminComponents: import("../components/domain-component-optic.js").DomainComponentSimpleOptic<AnyDomainEntity, import("./index.js").Admin, PublishedData, SessionData, Record<string, unknown>, import("./index.js").Preset, import("../index.js").SystemComponentType<"attributeSelection", import("../index.js").AttributeSelectionComponentState, "value">>[];
13
+ export declare const createCommonAdminRecipe: import("../index.js").RecipeFactory<AnyDomainEntity>;
14
+ /**
15
+ * Closed with core's part of the expression context only: `admin-domain/` counts as core and may
16
+ * not import the runtime. A callback that needs the component reader or a projection is written
17
+ * through a builder closed with `RuntimeExpressionContext`.
18
+ */
19
+ export declare const attachCommonAdminDomainComponent: DomainComponentOpticBuilder<AnyDomainEntity, import("./index.js").Admin, $Map, PublishedData, SessionData, Record<string, unknown>, Aliases, never, never, never, unknown>;
20
+ export declare const commonAdminComponents: import("../index.js").DomainComponentSimpleOptic<AnyDomainEntity, import("./index.js").Admin, PublishedData, SessionData, Record<string, unknown>, import("./index.js").Preset, import("../index.js").SystemComponentType<"attributeSelection", import("../index.js").AttributeSelectionComponentState, "value">, unknown>[];
17
21
  /**
18
22
  * Type-level carrier for the common-admin builder shape consumed by `createAdminInterface`.
19
23
  *
@@ -1 +1 @@
1
- import{DomainComponentOpticBuilder as o}from"../components/domain-component-optic.js";import{RecipeFactoryBuilder as e}from"../domain-context/index.js";import{attributeSelectionComponent as n}from"../system-components/index.js";import{AnyDomainEntity as m,PresetCategory as t,aliases as i}from"./__generated/model/index.js";import{DraftId as a}from"./implementation/common-admin-expressions.js";export{migrateCommonAdminDomain}from"./implementation/common-admin-migrations.js";export*from"./__generated/model/index.js";export*from"./implementation/common-admin-expressions.js";export*from"./implementation/common-admin-publish.js";export*from"./schema/index.js";export const createCommonAdminRecipe=e.forAliases(i).forEntities(m.reflections).withDefaults({}).build();export const attachCommonAdminDomainComponent=o.from(i);export const commonAdminComponents=[attachCommonAdminDomainComponent.withEntity("Preset").withComponent(n,"category").attach((o,e)=>{let n=e.entities.filter(t.is);return null===o.categoryId?{value:a,options:n.map(o=>({value:o.id,label:o.name})).concat([{value:a,label:{$lang:{en:"Draft"}}}])}:{value:o.categoryId,options:n.map(o=>({value:o.id,label:o.name}))}},o=>({categoryId:o.value===a?null:o.value}))];export const configuratorBuilder=null;
1
+ import{DomainComponentOpticBuilder as o,createRecipeFactory as e}from"../core/index.js";import{attributeSelectionComponent as n}from"../system-components/index.js";import{AnyDomainEntity as m,PresetCategory as t,aliases as i}from"./__generated/model/index.js";import{DraftId as a}from"./implementation/common-admin-expressions.js";export{migrateCommonAdminDomain}from"./implementation/common-admin-migrations.js";export*from"./__generated/model/index.js";export*from"./implementation/common-admin-expressions.js";export*from"./implementation/common-admin-publish.js";export*from"./schema/index.js";export const createCommonAdminRecipe=e(i,m.reflections,{});export const attachCommonAdminDomainComponent=o.from(i);export const commonAdminComponents=[attachCommonAdminDomainComponent.withEntity("Preset").withComponent(n,"category").attach((o,e)=>{let n=e.entities.filter(t.is);return null===o.categoryId?{value:a,options:n.map(o=>({value:o.id,label:o.name})).concat([{value:a,label:{$lang:{en:"Draft"}}}])}:{value:o.categoryId,options:n.map(o=>({value:o.id,label:o.name}))}},o=>({categoryId:o.value===a?null:o.value}))];export const configuratorBuilder=null;
@@ -1,7 +1,7 @@
1
1
  import type { ComponentType } from 'react';
2
2
  import type { $DomainEntity, DomainEntity } from '../core/index.js';
3
+ import type { HandlerRegistration, SystemPhoenixHandlerRegistration } from '../domain-runtime/index.js';
3
4
  import type { ApplicationConfig } from './application-config.js';
4
- import type { HandlerRegistration, SystemPhoenixHandlerRegistration } from './handler-registration.js';
5
5
  export declare const createGetApplicationWrapperHandler: (fn: (ctx: ApplicationConfig<any, any, any, any, any, any, never, any, any, any, any, any, any, any, any, any>) => ComponentType) => SystemPhoenixHandlerRegistration<ApplicationConfig<any, any, any, any, any, any, never, any, any, any, any, any, any, any, any, any>, ComponentType>;
6
- export type CreateGetApplicationWrapperHandler<ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, $MAP extends Record<ENTITIES['type'], $DomainEntity<ENTITIES>>, NAVIGATION_STATES extends string, VIEW_STATES extends string, TOOL_STATES extends string, EXPORT_STATES extends string, CHAT_CONTEXT extends Record<string, unknown>, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, ADMIN_ENTITIES extends DomainEntity<string>, ADMIN_ALLOWED_ROOT_ENTITIES extends ADMIN_ENTITIES, ADMIN_$MAP extends Record<ADMIN_ENTITIES['type'], $DomainEntity<ADMIN_ENTITIES>>, ADMIN_NAVIGATION_STATES extends string, ADMIN_VIEW_STATES extends string> = (fn: (ctx: ApplicationConfig<ENTITIES, ALLOWED_ROOT_ENTITIES, $MAP, NAVIGATION_STATES, VIEW_STATES, TOOL_STATES, EXPORT_STATES, CHAT_CONTEXT, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ADMIN_ENTITIES, ADMIN_ALLOWED_ROOT_ENTITIES, ADMIN_$MAP, ADMIN_NAVIGATION_STATES, ADMIN_VIEW_STATES>) => ComponentType) => SystemPhoenixHandlerRegistration<ApplicationConfig<ENTITIES, ALLOWED_ROOT_ENTITIES, $MAP, NAVIGATION_STATES, VIEW_STATES, TOOL_STATES, EXPORT_STATES, CHAT_CONTEXT, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ADMIN_ENTITIES, ADMIN_ALLOWED_ROOT_ENTITIES, ADMIN_$MAP, ADMIN_NAVIGATION_STATES, ADMIN_VIEW_STATES>, ComponentType>;
6
+ export type CreateGetApplicationWrapperHandler = typeof createGetApplicationWrapperHandler;
7
7
  export declare const isGetApplicationWrapperHandler: <ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, $MAP extends Record<ENTITIES['type'], $DomainEntity<ENTITIES>>, NAVIGATION_STATES extends string, VIEW_STATES extends string, TOOL_STATES extends string, EXPORT_STATES extends string, CHAT_CONTEXT extends Record<string, unknown>, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, ADMIN_ENTITIES extends DomainEntity<string>, ADMIN_ALLOWED_ROOT_ENTITIES extends ADMIN_ENTITIES, ADMIN_$MAP extends Record<ADMIN_ENTITIES['type'], $DomainEntity<ADMIN_ENTITIES>>, ADMIN_NAVIGATION_STATES extends string, ADMIN_VIEW_STATES extends string>(handler: HandlerRegistration<ApplicationConfig<ENTITIES, ALLOWED_ROOT_ENTITIES, $MAP, NAVIGATION_STATES, VIEW_STATES, TOOL_STATES, EXPORT_STATES, CHAT_CONTEXT, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ADMIN_ENTITIES, ADMIN_ALLOWED_ROOT_ENTITIES, ADMIN_$MAP, ADMIN_NAVIGATION_STATES, ADMIN_VIEW_STATES>, ComponentType>) => handler is SystemPhoenixHandlerRegistration<ApplicationConfig<ENTITIES, ALLOWED_ROOT_ENTITIES, $MAP, NAVIGATION_STATES, VIEW_STATES, TOOL_STATES, EXPORT_STATES, CHAT_CONTEXT, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ADMIN_ENTITIES, ADMIN_ALLOWED_ROOT_ENTITIES, ADMIN_$MAP, ADMIN_NAVIGATION_STATES, ADMIN_VIEW_STATES>, ComponentType>;