@salsita-ai/sdk 0.50.0-develop.7d4723b0a5 → 0.50.0-develop.97a772d197

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 (725) hide show
  1. package/README.md +1 -1
  2. package/dist/admin/create-admin-pages-from-spec.d.ts +1 -1
  3. package/dist/application-spec/generate-application/code/common/index.d.ts +1 -0
  4. package/dist/application-spec/generate-application/code/common/index.js +1 -1
  5. package/dist/application-spec/generate-application/code/common/project-module-list.d.ts +8 -0
  6. package/dist/application-spec/generate-application/code/common/project-module-list.js +3 -0
  7. package/dist/application-spec/generate-application/code/domain-runtime-files.js +1 -1
  8. package/dist/application-spec/generate-application/code/project-scaffolding.js +2 -2
  9. package/dist/application-spec/generate-application/code/templates/admin-domain-code.d.ts +1 -2
  10. package/dist/application-spec/generate-application/code/templates/admin-domain-code.js +6 -14
  11. package/dist/application-spec/generate-application/code/templates/admin-frontend-code.d.ts +1 -2
  12. package/dist/application-spec/generate-application/code/templates/admin-frontend-code.js +4 -4
  13. package/dist/application-spec/generate-application/code/templates/configurator-domain-code.d.ts +1 -2
  14. package/dist/application-spec/generate-application/code/templates/configurator-domain-code.js +7 -16
  15. package/dist/application-spec/generate-application/code/templates/configurator-frontend-code.d.ts +1 -2
  16. package/dist/application-spec/generate-application/code/templates/configurator-frontend-code.js +7 -9
  17. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-assistant.d.ts +2 -2
  18. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-assistant.js +1 -1
  19. package/dist/application-spec/generate-application/code/templates/domain-spec.js +4 -4
  20. package/dist/application-spec/generate-application/code/templates/domain.js +3 -3
  21. package/dist/application-spec/generate-application/code/templates/index.d.ts +1 -0
  22. package/dist/application-spec/generate-application/code/templates/index.js +1 -1
  23. package/dist/application-spec/generate-application/code/templates/skills/agents-md.js +1 -1
  24. package/dist/application-spec/generate-application/code/templates/skills/phoenix-cli-skill.js +1 -1
  25. package/dist/application-spec/generate-application/code/templates/skills/phoenix-create-configurator-skill.js +41 -13
  26. package/dist/application-spec/generate-application/code/templates/skills/phoenix-feedback-skill.js +1 -1
  27. package/dist/application-spec/generate-application/code/templates/skills/phoenix-review-skill.js +2 -2
  28. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill.js +1 -1
  29. package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.d.ts +1 -0
  30. package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.js +6 -0
  31. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.d.ts +30 -3
  32. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.js +19 -5
  33. package/dist/application-spec/generate-application/code/templates/webhook-builders.js +8 -4
  34. package/dist/application-spec/generate-application/runtime/sections/assistant-runtime.d.ts +4 -3
  35. package/dist/application-spec/generate-application/runtime/sections/assistant-runtime.js +1 -1
  36. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-field-type.d.ts +3 -8
  37. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-field-type.js +1 -1
  38. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.d.ts +9 -43
  39. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.js +1 -1
  40. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-server-settings.d.ts +2 -2
  41. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant.d.ts +5 -21
  42. package/dist/client/phoenix-api.d.ts +58 -30
  43. package/dist/configurator/application-runtime/extensions/selectors.js +1 -1
  44. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.d.ts +158 -13
  45. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.js +1 -1
  46. package/dist/configurator/application-runtime/extensions/systems/assistant-system/change-recorder.d.ts +85 -0
  47. package/dist/configurator/application-runtime/extensions/systems/assistant-system/change-recorder.js +1 -0
  48. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.d.ts +8 -3
  49. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.js +1 -1
  50. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.d.ts +4 -0
  51. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.js +1 -1
  52. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.d.ts +16 -1
  53. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.js +1 -1
  54. package/dist/configurator/application-runtime/extensions/systems/graphql-system/side-effects.d.ts +9 -0
  55. package/dist/configurator/application-runtime/extensions/systems/graphql-system/side-effects.js +1 -0
  56. package/dist/configurator/application-runtime/extensions/systems/index.d.ts +1 -1
  57. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.d.ts +2 -0
  58. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.js +1 -1
  59. package/dist/configurator/common/frontend-analytics.d.ts +21 -21
  60. package/dist/configurator/index.d.ts +0 -1
  61. package/dist/configurator/index.js +1 -1
  62. package/dist/configurator/pages/LoadedConfiguratorDetailPage.js +1 -1
  63. package/dist/configurator/scene/scene-analytics/scene-analytics.d.ts +2 -2
  64. package/dist/configurator/ui/assistant/AssistantChips.d.ts +11 -0
  65. package/dist/configurator/ui/assistant/AssistantChips.js +1 -0
  66. package/dist/configurator/ui/assistant/AssistantComposer.d.ts +6 -0
  67. package/dist/configurator/ui/assistant/AssistantComposer.js +1 -0
  68. package/dist/configurator/ui/assistant/AssistantMarkdown.d.ts +7 -0
  69. package/dist/configurator/ui/assistant/AssistantMarkdown.js +1 -0
  70. package/dist/configurator/ui/assistant/AssistantPanel.d.ts +11 -0
  71. package/dist/configurator/ui/assistant/AssistantPanel.js +1 -0
  72. package/dist/configurator/ui/assistant/AssistantThread.d.ts +6 -0
  73. package/dist/configurator/ui/assistant/AssistantThread.js +1 -0
  74. package/dist/configurator/ui/assistant/assistant-failure.d.ts +18 -0
  75. package/dist/configurator/ui/assistant/assistant-failure.js +1 -0
  76. package/dist/configurator/ui/assistant/index.d.ts +2 -0
  77. package/dist/configurator/ui/assistant/index.js +1 -0
  78. package/dist/configurator/ui/assistant/streamed-markdown.d.ts +6 -0
  79. package/dist/configurator/ui/assistant/streamed-markdown.js +2 -0
  80. package/dist/configurator/ui/assistant/theme.d.ts +2 -0
  81. package/dist/configurator/ui/assistant/theme.js +1 -0
  82. package/dist/configurator/ui/assistant/thread-items.d.ts +37 -0
  83. package/dist/configurator/ui/assistant/thread-items.js +1 -0
  84. package/dist/configurator/ui/assistant/tool-chip.d.ts +44 -0
  85. package/dist/configurator/ui/assistant/tool-chip.js +1 -0
  86. package/dist/configurator/ui/assistant/use-follow-stream.d.ts +17 -0
  87. package/dist/configurator/ui/assistant/use-follow-stream.js +1 -0
  88. package/dist/configurator/ui/assistant/use-is-assistant-panel-open.d.ts +5 -0
  89. package/dist/configurator/ui/assistant/use-is-assistant-panel-open.js +1 -0
  90. package/dist/configurator/ui/configurator-layout/universal/DesktopLayout.js +5 -5
  91. package/dist/configurator/ui/configurator-layout/universal/MobileLayout.d.ts +2 -0
  92. package/dist/configurator/ui/configurator-layout/universal/MobileLayout.js +4 -4
  93. package/dist/configurator/ui/legacy/mobile-controls/MobileControls.d.ts +1 -1
  94. package/dist/configurator/ui/phoenix-layout-elements/AssistantToolbarButton.d.ts +10 -0
  95. package/dist/configurator/ui/phoenix-layout-elements/AssistantToolbarButton.js +1 -0
  96. package/dist/configurator/ui/phoenix-layout-elements/index.d.ts +1 -0
  97. package/dist/configurator/ui/phoenix-layout-elements/index.js +1 -1
  98. package/dist/docs/complex-use-cases/filtered-controls-with-fix-dialog.mdx +84 -98
  99. package/dist/docs/complex-use-cases/navigation-reset-selection.mdx +18 -12
  100. package/dist/docs/index.json +1 -1
  101. package/dist/docs/layouts/custom-price.mdx +14 -16
  102. package/dist/docs/layouts/sidebar/tabs.mdx +24 -21
  103. package/dist/docs/layouts/toolbar.mdx +6 -0
  104. package/dist/docs/other-features/domain-actions.mdx +1 -1
  105. package/dist/docs/other-features/side-effects.mdx +68 -34
  106. package/dist/docs/other-features/transformers.mdx +1 -1
  107. package/dist/docs/phoenix/admin.mdx +11 -26
  108. package/dist/docs/phoenix/deployments.mdx +1 -1
  109. package/dist/docs/phoenix/finalization.mdx +1 -1
  110. package/dist/docs/phoenix/integration/headless-mode-external.mdx +5 -5
  111. package/dist/docs/phoenix/integration/widget-mode-external.mdx +5 -5
  112. package/dist/docs/phoenix/localization.mdx +3 -22
  113. package/dist/docs/phoenix/phoenix-cli.mdx +102 -23
  114. package/dist/docs/phoenix/project-structure.mdx +9 -2
  115. package/dist/docs/phoenix/sdk-builder-workflow.mdx +10 -9
  116. package/dist/docs/recipes-and-delete/recipe-hierarchy-selection.mdx +15 -13
  117. package/dist/docs/relations/hierarchy.mdx +13 -2
  118. package/dist/domain/admin-domain/__generated/enhanced-model.d.ts +1 -2
  119. package/dist/domain/admin-domain/__generated/model/versions/v1.d.ts +1 -1
  120. package/dist/domain/admin-domain/__generated/model/versions/v2.d.ts +1 -1
  121. package/dist/domain/admin-domain/__generated/model/versions/v3.d.ts +1 -1
  122. package/dist/domain/admin-domain/__generated/model/versions/v4.d.ts +1 -1
  123. package/dist/domain/admin-domain/__generated/model/versions/v5.d.ts +1 -1
  124. package/dist/domain/admin-domain/__generated/model/versions/v6.d.ts +2 -2
  125. package/dist/domain/admin-domain/__generated/model/versions/v6.js +1 -1
  126. package/dist/domain/admin-domain/implementation/common-admin-expressions.d.ts +1 -4
  127. package/dist/domain/admin-domain/implementation/common-admin-migrations.d.ts +1 -1
  128. package/dist/domain/admin-domain/index.d.ts +3 -4
  129. package/dist/domain/admin-domain/index.js +1 -1
  130. package/dist/domain/application/admin-page-factories.d.ts +1 -1
  131. package/dist/domain/application/application-config.d.ts +25 -75
  132. package/dist/domain/application/assistant/assistant-manifest.d.ts +63 -0
  133. package/dist/domain/application/assistant/assistant-resolved-manifest.d.ts +95 -0
  134. package/dist/domain/application/assistant/assistant-value-type.d.ts +9 -0
  135. package/dist/domain/application/assistant/assistant-value-type.js +1 -0
  136. package/dist/domain/application/assistant/build-assistant-manifest.d.ts +4 -0
  137. package/dist/domain/application/assistant/build-assistant-manifest.js +1 -0
  138. package/dist/domain/application/assistant/generate-assistant-prompt.d.ts +3 -0
  139. package/dist/domain/application/assistant/generate-assistant-prompt.js +1 -0
  140. package/dist/domain/application/assistant/index.d.ts +4 -0
  141. package/dist/domain/application/assistant/index.js +1 -0
  142. package/dist/domain/application/assistant-field-options.d.ts +2 -3
  143. package/dist/domain/application/assistant-mutations.d.ts +2 -5
  144. package/dist/domain/application/assistant-mutations.js +1 -1
  145. package/dist/domain/application/assistant-recipe-groups.d.ts +2 -6
  146. package/dist/domain/application/configurator-builder.d.ts +33 -18
  147. package/dist/domain/application/configurator-builder.js +1 -1
  148. package/dist/domain/application/element-registration.d.ts +5 -0
  149. package/dist/domain/application/element-registration.js +1 -1
  150. package/dist/domain/application/handler-registration.d.ts +5 -0
  151. package/dist/domain/application/handler-registration.js +1 -1
  152. package/dist/domain/application/index.d.ts +6 -5
  153. package/dist/domain/application/index.js +1 -1
  154. package/dist/domain/application/published-data/create-finalize-admin-domain.d.ts +1 -2
  155. package/dist/domain/application/published-data/map-published-chunked-data.d.ts +1 -1
  156. package/dist/domain/application/published-data/map-published-data.d.ts +1 -2
  157. package/dist/domain/application/resolve-imported-transformers.d.ts +12 -2
  158. package/dist/domain/application/resolve-imported-transformers.js +1 -1
  159. package/dist/domain/available-system-components.js +1 -1
  160. package/dist/domain/{actions → core/action}/action-factory.d.ts +5 -4
  161. package/dist/domain/core/{action.d.ts → action/action.d.ts} +6 -7
  162. package/dist/domain/core/action/index.d.ts +2 -0
  163. package/dist/domain/core/action/index.js +1 -0
  164. package/dist/domain/{components → core/component}/component-reader-types.d.ts +1 -2
  165. package/dist/domain/{components → core/component}/debug-state-component.d.ts +1 -1
  166. package/dist/domain/core/component/debug-state-component.js +1 -0
  167. package/dist/domain/{components → core/component}/domain-component-optic.d.ts +6 -6
  168. package/dist/domain/core/component/domain-component-optic.js +16 -0
  169. package/dist/domain/{components → core/component}/drag-state-component.d.ts +1 -1
  170. package/dist/domain/core/component/drag-state-component.js +1 -0
  171. package/dist/domain/{components → core/component}/export-state-component.d.ts +1 -1
  172. package/dist/domain/core/component/export-state-component.js +1 -0
  173. package/dist/domain/{components → core/component}/fullscreen-state-component.d.ts +1 -1
  174. package/dist/domain/core/component/fullscreen-state-component.js +1 -0
  175. package/dist/domain/{components → core/component}/group-components-by-entity-id-and-name.d.ts +1 -2
  176. package/dist/domain/core/component/group-components-by-entity-id-and-name.js +1 -0
  177. package/dist/domain/{components → core/component}/hover-state-component.d.ts +1 -1
  178. package/dist/domain/core/component/hover-state-component.js +1 -0
  179. package/dist/domain/core/component/index.d.ts +18 -0
  180. package/dist/domain/core/component/index.js +1 -0
  181. package/dist/domain/{components → core/component}/legacy-filter.d.ts +2 -2
  182. package/dist/domain/{components → core/component}/navigation-state-component.d.ts +1 -1
  183. package/dist/domain/core/component/navigation-state-component.js +1 -0
  184. package/dist/domain/{components → core/component}/selection-state-component.d.ts +1 -1
  185. package/dist/domain/core/component/selection-state-component.js +1 -0
  186. package/dist/domain/{components → core/component}/system-component-builder.d.ts +1 -2
  187. package/dist/domain/core/component/system-component-builder.js +1 -0
  188. package/dist/domain/{components → core/component}/system-component-filter.d.ts +3 -3
  189. package/dist/domain/core/component/system-virtual-entity.js +1 -0
  190. package/dist/domain/{components → core/component}/tool-state-component.d.ts +1 -1
  191. package/dist/domain/core/component/tool-state-component.js +1 -0
  192. package/dist/domain/{components → core/component}/updates.d.ts +17 -2
  193. package/dist/domain/{components → core/component}/view-state-component.d.ts +1 -1
  194. package/dist/domain/core/component/view-state-component.js +1 -0
  195. package/dist/domain/{components → core/component}/viewport-state-component.d.ts +1 -1
  196. package/dist/domain/core/component/viewport-state-component.js +1 -0
  197. package/dist/domain/core/decoder/create-decoder.d.ts +6 -0
  198. package/dist/domain/core/decoder/create-decoder.js +1 -0
  199. package/dist/domain/core/decoder/decoder.d.ts +6 -0
  200. package/dist/domain/core/decoder/index.d.ts +2 -0
  201. package/dist/domain/core/decoder/index.js +1 -0
  202. package/dist/domain/core/domain-factory.d.ts +4 -5
  203. package/dist/domain/core/domain-factory.js +1 -1
  204. package/dist/domain/core/domain.d.ts +3 -4
  205. package/dist/domain/core/domain.js +1 -1
  206. package/dist/domain/core/expression/aliased-expressions.d.ts +10 -0
  207. package/dist/domain/{expressions → core/expression}/constant-expressions.d.ts +2 -3
  208. package/dist/domain/core/expression/constant-expressions.js +1 -0
  209. package/dist/domain/{expressions → core/expression}/custom-expression.d.ts +4 -5
  210. package/dist/domain/core/expression/custom-expression.js +1 -0
  211. package/dist/domain/core/{expression.d.ts → expression/expression.d.ts} +6 -8
  212. package/dist/domain/core/expression/index.d.ts +4 -0
  213. package/dist/domain/core/expression/index.js +1 -0
  214. package/dist/domain/core/index.d.ts +11 -17
  215. package/dist/domain/core/index.js +1 -1
  216. package/dist/domain/{invariants → core/invariant}/builtin-invariant.d.ts +2 -2
  217. package/dist/domain/{invariants → core/invariant}/custom-invariants.d.ts +2 -3
  218. package/dist/domain/core/invariant/custom-invariants.js +1 -0
  219. package/dist/domain/core/invariant/index.d.ts +5 -0
  220. package/dist/domain/core/invariant/index.js +1 -0
  221. package/dist/domain/{invariants → core/invariant}/invariants.d.ts +12 -4
  222. package/dist/domain/core/invariant/invariants.js +1 -0
  223. package/dist/domain/core/invariant/violation-component.js +1 -0
  224. package/dist/domain/{invariants → core/invariant}/violation.d.ts +2 -2
  225. package/dist/domain/core/{component.d.ts → model/component.d.ts} +1 -1
  226. package/dist/domain/core/model/index.d.ts +6 -0
  227. package/dist/domain/core/model/index.js +1 -0
  228. package/dist/domain/core/{reflection.d.ts → model/reflection.d.ts} +1 -1
  229. package/dist/domain/core/model/reflection.js +1 -0
  230. package/dist/domain/core/recipe/index.d.ts +1 -0
  231. package/dist/domain/core/recipe/index.js +1 -0
  232. package/dist/domain/{domain-context/recipe-system → core/recipe}/recipes.d.ts +1 -3
  233. package/dist/domain/core/recipe/recipes.js +1 -0
  234. package/dist/domain/{relations → core/relation}/all-of-type-relation.d.ts +3 -4
  235. package/dist/domain/core/relation/all-of-type-relation.js +1 -0
  236. package/dist/domain/{relations → core/relation}/component-factories.d.ts +1 -2
  237. package/dist/domain/core/relation/component-factories.js +1 -0
  238. package/dist/domain/{relations → core/relation}/composed-of.d.ts +1 -1
  239. package/dist/domain/core/relation/composed-of.js +1 -0
  240. package/dist/domain/{relations → core/relation}/direct-relation.d.ts +2 -3
  241. package/dist/domain/core/relation/index.d.ts +9 -0
  242. package/dist/domain/core/relation/index.js +1 -0
  243. package/dist/domain/{relations → core/relation}/indirect-relation.d.ts +3 -4
  244. package/dist/domain/core/relation/indirect-relation.js +1 -0
  245. package/dist/domain/{relations → core/relation}/reference-component.d.ts +4 -5
  246. package/dist/domain/core/relation/reference-component.js +1 -0
  247. package/dist/domain/{relations → core/relation}/reference-field.d.ts +1 -1
  248. package/dist/domain/core/relation/reference-field.js +1 -0
  249. package/dist/domain/{relations → core/relation}/relation-factory.d.ts +2 -3
  250. package/dist/domain/{relations → core/relation}/relation-implementation.d.ts +3 -4
  251. package/dist/domain/core/relation/relation-implementation.js +1 -0
  252. package/dist/domain/core/schema/enhanced-json-schema.js +1 -0
  253. package/dist/domain/core/schema/extended-schema-validator.js +1 -0
  254. package/dist/domain/core/schema/index.d.ts +3 -0
  255. package/dist/domain/core/schema/index.js +1 -0
  256. package/dist/domain/core/schema/schema-validator.js +1 -0
  257. package/dist/domain/core/state/id-sequence.d.ts +15 -0
  258. package/dist/domain/core/state/id-sequence.js +1 -0
  259. package/dist/domain/core/state/index.d.ts +3 -0
  260. package/dist/domain/core/state/index.js +1 -0
  261. package/dist/domain/core/{migrations.d.ts → state/migrations.d.ts} +1 -2
  262. package/dist/domain/core/{state.d.ts → state/state.d.ts} +1 -2
  263. package/dist/domain/domain-builder.d.ts +11 -11
  264. package/dist/domain/domain-builder.js +1 -1
  265. package/dist/domain/domain-context/action-system/action-system.d.ts +1 -3
  266. package/dist/domain/domain-context/action-system/action-system.js +1 -1
  267. package/dist/domain/domain-context/create-transformer.d.ts +1 -1
  268. package/dist/domain/domain-context/dimension-system/dimension-state.js +1 -1
  269. package/dist/domain/domain-context/dimension-system/dimension-system.d.ts +1 -2
  270. package/dist/domain/domain-context/domain-context-systems.d.ts +1 -3
  271. package/dist/domain/domain-context/index.d.ts +2 -3
  272. package/dist/domain/domain-context/index.js +1 -1
  273. package/dist/domain/domain-context/navigation-system/navigation-system.d.ts +3 -5
  274. package/dist/domain/domain-context/navigation-system/navigation-system.js +1 -1
  275. package/dist/domain/domain-context/navigation-system/navigation-updates.d.ts +1 -12
  276. package/dist/domain/domain-context/navigation-system/navigation-updates.js +1 -1
  277. package/dist/domain/domain-context/navigation-system/selection-transformers.d.ts +1 -1
  278. package/dist/domain/domain-context/navigation-system/selection-transformers.js +1 -1
  279. package/dist/domain/domain-context/recipe-system/recipe-cooker-system.d.ts +1 -3
  280. package/dist/domain/domain-context/recipe-system/recipe-cooker-system.js +1 -1
  281. package/dist/domain/domain-context/relation-transformers/cascade-deletes.d.ts +1 -1
  282. package/dist/domain/domain-context/relation-transformers/cascade-deletes.js +1 -1
  283. package/dist/domain/domain-context/relation-transformers/cascade-ref-pruning.d.ts +1 -1
  284. package/dist/domain/domain-context/relation-transformers/cascade-ref-pruning.js +1 -1
  285. package/dist/domain/domain-context/relation-transformers/create-entity-refs.d.ts +1 -1
  286. package/dist/domain/domain-context/relation-transformers/create-entity-refs.js +2 -2
  287. package/dist/domain/domain-context/relation-transformers/replace-refs.d.ts +1 -1
  288. package/dist/domain/domain-context/relation-transformers/replace-refs.js +1 -1
  289. package/dist/domain/domain-context/store-system/apply-updates.d.ts +1 -3
  290. package/dist/domain/domain-context/store-system/apply-updates.js +1 -1
  291. package/dist/domain/domain-context/store-system/next-domain-entity-id.d.ts +1 -13
  292. package/dist/domain/domain-context/store-system/next-domain-entity-id.js +1 -1
  293. package/dist/domain/domain-context/store-system/reconcile-projected-entities.d.ts +1 -2
  294. package/dist/domain/domain-context/store-system/reconcile-projected-entities.js +1 -1
  295. package/dist/domain/domain-context/store-system/store-system.d.ts +1 -5
  296. package/dist/domain/domain-context/store-system/store-system.js +2 -2
  297. package/dist/domain/domain-context/store-system/system-state.d.ts +1 -3
  298. package/dist/domain/domain-context/store-system/system-state.js +1 -1
  299. package/dist/domain/domain-context/transformers/actions-builder.d.ts +1 -2
  300. package/dist/domain/domain-context/transformers/actions-builder.js +1 -1
  301. package/dist/domain/domain-context/transformers/auto-snap-transformer.d.ts +1 -3
  302. package/dist/domain/domain-context/transformers/chain-builder.d.ts +2 -2
  303. package/dist/domain/domain-context/transformers/context.d.ts +1 -5
  304. package/dist/domain/domain-context/transformers/entity-builder.d.ts +1 -5
  305. package/dist/domain/domain-context/transformers/entity-builder.js +1 -1
  306. package/dist/domain/domain-context/transformers/then-builder.d.ts +1 -2
  307. package/dist/domain/domain-context/transformers/then-builder.js +1 -1
  308. package/dist/domain/domain-context/transformers/when-builder.d.ts +1 -6
  309. package/dist/domain/domain-context/transformers/when-builder.js +1 -1
  310. package/dist/domain/domain-context/undo-system.d.ts +1 -1
  311. package/dist/domain/domain-runtime/domain-context/component-reader.d.ts +1 -4
  312. package/dist/domain/domain-runtime/domain-context/component-reader.js +1 -1
  313. package/dist/domain/domain-runtime/domain-context/selectors.d.ts +2 -4
  314. package/dist/domain/domain-runtime/domain-context/selectors.js +1 -1
  315. package/dist/domain/domain-runtime/domain-runtime.d.ts +4 -4
  316. package/dist/domain/domain-runtime/spec/index.d.ts +3 -0
  317. package/dist/domain/domain-runtime/spec/index.js +1 -1
  318. package/dist/domain/domain-runtime/spec/initialize.js +1 -1
  319. package/dist/domain/{expressions → domain-runtime/spec}/memoize-expression.d.ts +1 -2
  320. package/dist/domain/{actions → domain-runtime/spec}/prepare-action-implementations.d.ts +1 -1
  321. package/dist/domain/domain-runtime/spec/prepare-action-implementations.js +5 -0
  322. package/dist/domain/{expressions → domain-runtime/spec}/prepare-domain-expressions.d.ts +1 -1
  323. package/dist/domain/domain-runtime/spec/selectors.d.ts +2 -2
  324. package/dist/domain/domain-runtime/spec/selectors.js +1 -1
  325. package/dist/domain/domain-runtime/spec/types.d.ts +4 -5
  326. package/dist/domain/index.d.ts +2 -32
  327. package/dist/domain/index.js +1 -1
  328. package/dist/domain/mocks/create-mock-domain-runtime.d.ts +3 -3
  329. package/dist/domain/mocks/create-mock-domain-runtime.js +1 -1
  330. package/dist/domain/project-modules/index.d.ts +1 -0
  331. package/dist/domain/project-modules/index.js +1 -0
  332. package/dist/domain/project-modules/project-modules.d.ts +41 -0
  333. package/dist/domain/project-modules/project-modules.js +1 -0
  334. package/dist/domain/projections/blender-projections/blender-projections.d.ts +1 -1
  335. package/dist/domain/projections/blender-projections/blender-projections.js +1 -1
  336. package/dist/domain/projections/composition-projections.js +1 -1
  337. package/dist/domain/projections/projected-entities-projections.d.ts +1 -2
  338. package/dist/domain/projections/snap-matching.d.ts +1 -2
  339. package/dist/domain/projections/snap-utils.d.ts +1 -2
  340. package/dist/domain/projections/validation-projections.d.ts +1 -2
  341. package/dist/domain/projections/validation-projections.js +1 -1
  342. package/dist/domain/system-components/admin-sidebar.d.ts +1 -1
  343. package/dist/domain/system-components/admin-sidebar.js +1 -1
  344. package/dist/domain/system-components/angle-dimension.js +1 -1
  345. package/dist/domain/system-components/angle-indicator.d.ts +1 -1
  346. package/dist/domain/system-components/angle-indicator.js +1 -1
  347. package/dist/domain/system-components/application-config.d.ts +1 -1
  348. package/dist/domain/system-components/application-config.js +1 -1
  349. package/dist/domain/system-components/attribute-selection.js +1 -1
  350. package/dist/domain/system-components/attribute-switch.js +1 -1
  351. package/dist/domain/system-components/autorotate-camera-component.d.ts +1 -1
  352. package/dist/domain/system-components/autorotate-camera-component.js +1 -1
  353. package/dist/domain/system-components/basic-sidebar-footer.d.ts +1 -1
  354. package/dist/domain/system-components/basic-sidebar-footer.js +1 -1
  355. package/dist/domain/system-components/bounding-box-component.d.ts +1 -1
  356. package/dist/domain/system-components/bounding-box-component.js +1 -1
  357. package/dist/domain/system-components/bounding-sphere-component.d.ts +1 -1
  358. package/dist/domain/system-components/bounding-sphere-component.js +1 -1
  359. package/dist/domain/system-components/camera-based-hidden-entity-object.js +1 -1
  360. package/dist/domain/system-components/camera-based-hidden-entity.js +1 -1
  361. package/dist/domain/system-components/canvas-config.d.ts +1 -1
  362. package/dist/domain/system-components/canvas-config.js +1 -1
  363. package/dist/domain/system-components/canvas-custom-environment.js +1 -1
  364. package/dist/domain/system-components/canvas-padding.d.ts +1 -1
  365. package/dist/domain/system-components/canvas-padding.js +1 -1
  366. package/dist/domain/system-components/canvas-preset-environment.d.ts +1 -1
  367. package/dist/domain/system-components/canvas-preset-environment.js +1 -1
  368. package/dist/domain/system-components/child-entity-recipe-hierarchy.d.ts +1 -1
  369. package/dist/domain/system-components/child-entity-recipe-hierarchy.js +1 -1
  370. package/dist/domain/system-components/child-entity-recipes.d.ts +1 -1
  371. package/dist/domain/system-components/child-entity-recipes.js +1 -1
  372. package/dist/domain/system-components/child-entity-selection.d.ts +1 -2
  373. package/dist/domain/system-components/child-entity-selection.js +1 -1
  374. package/dist/domain/system-components/client-side-image.js +1 -1
  375. package/dist/domain/system-components/collision-box-geometry.d.ts +1 -1
  376. package/dist/domain/system-components/collision-box-geometry.js +1 -1
  377. package/dist/domain/system-components/collision-geometries.d.ts +1 -1
  378. package/dist/domain/system-components/collision-geometry.d.ts +1 -1
  379. package/dist/domain/system-components/collision-geometry.js +1 -1
  380. package/dist/domain/system-components/collision-point-geometry.d.ts +1 -1
  381. package/dist/domain/system-components/collision-point-geometry.js +1 -1
  382. package/dist/domain/system-components/color-value.js +1 -1
  383. package/dist/domain/system-components/common/dimension-indicator-schema.d.ts +1 -1
  384. package/dist/domain/system-components/common/dimension-indicator-schema.js +1 -1
  385. package/dist/domain/system-components/common/recipes.d.ts +1 -2
  386. package/dist/domain/system-components/constraint.d.ts +1 -1
  387. package/dist/domain/system-components/constraint.js +1 -1
  388. package/dist/domain/system-components/create-blueprint.d.ts +1 -1
  389. package/dist/domain/system-components/custom-header.d.ts +1 -1
  390. package/dist/domain/system-components/custom-header.js +1 -1
  391. package/dist/domain/system-components/custom-price-footer.js +1 -1
  392. package/dist/domain/system-components/custom-scene-entity.d.ts +1 -1
  393. package/dist/domain/system-components/custom-scene-entity.js +1 -1
  394. package/dist/domain/system-components/custom-sidebar-footer.d.ts +1 -1
  395. package/dist/domain/system-components/custom-sidebar-footer.js +1 -1
  396. package/dist/domain/system-components/detail.js +1 -1
  397. package/dist/domain/system-components/dimension-indicator.d.ts +1 -1
  398. package/dist/domain/system-components/dimension-indicator.js +1 -1
  399. package/dist/domain/system-components/distance-dimension-select.d.ts +1 -1
  400. package/dist/domain/system-components/distance-dimension-select.js +1 -1
  401. package/dist/domain/system-components/distance-dimension.d.ts +1 -1
  402. package/dist/domain/system-components/distance-dimension.js +1 -1
  403. package/dist/domain/system-components/drag-handle.d.ts +1 -1
  404. package/dist/domain/system-components/drag-handle.js +1 -1
  405. package/dist/domain/system-components/editable-angle-indicator.d.ts +1 -1
  406. package/dist/domain/system-components/editable-angle-indicator.js +1 -1
  407. package/dist/domain/system-components/editable-distance-dimension-indicator.d.ts +1 -1
  408. package/dist/domain/system-components/editable-distance-dimension-indicator.js +1 -1
  409. package/dist/domain/system-components/editable-offset-indicator.d.ts +1 -1
  410. package/dist/domain/system-components/editable-offset-indicator.js +1 -1
  411. package/dist/domain/system-components/editable-size-indicator.d.ts +1 -1
  412. package/dist/domain/system-components/editable-size-indicator.js +1 -1
  413. package/dist/domain/system-components/entity-header.js +1 -1
  414. package/dist/domain/system-components/exit-tool-mode-fab.d.ts +1 -1
  415. package/dist/domain/system-components/exit-tool-mode-fab.js +1 -1
  416. package/dist/domain/system-components/finalize-action.d.ts +1 -1
  417. package/dist/domain/system-components/finalize-action.js +1 -1
  418. package/dist/domain/system-components/finalize-component.js +1 -1
  419. package/dist/domain/system-components/fit-entity-orthographic-camera-component.js +1 -1
  420. package/dist/domain/system-components/fit-entity-perspective-camera-component.js +1 -1
  421. package/dist/domain/system-components/fit-root-orthographic-camera-component.js +1 -1
  422. package/dist/domain/system-components/fit-root-perspective-camera-component.js +1 -1
  423. package/dist/domain/system-components/fit-selection-orthographic-camera-component.js +1 -1
  424. package/dist/domain/system-components/fit-selection-perspective-camera-component.js +1 -1
  425. package/dist/domain/system-components/fixed-header.d.ts +1 -1
  426. package/dist/domain/system-components/fixed-header.js +1 -1
  427. package/dist/domain/system-components/floating-header.d.ts +1 -1
  428. package/dist/domain/system-components/floating-header.js +1 -1
  429. package/dist/domain/system-components/generic-dimension.d.ts +1 -1
  430. package/dist/domain/system-components/generic-dimension.js +1 -1
  431. package/dist/domain/system-components/hidden-entity.js +1 -1
  432. package/dist/domain/system-components/hidden-header.d.ts +1 -1
  433. package/dist/domain/system-components/hidden-header.js +1 -1
  434. package/dist/domain/system-components/hidden-sidebar-footer.d.ts +1 -1
  435. package/dist/domain/system-components/hidden-sidebar-footer.js +1 -1
  436. package/dist/domain/system-components/horizontal-tabs.d.ts +1 -1
  437. package/dist/domain/system-components/horizontal-tabs.js +1 -1
  438. package/dist/domain/system-components/hotspot-drag-handle.d.ts +1 -2
  439. package/dist/domain/system-components/hotspot-drag-handle.js +1 -1
  440. package/dist/domain/system-components/list-selector-dimension-indicator.d.ts +1 -1
  441. package/dist/domain/system-components/list-selector-dimension-indicator.js +1 -1
  442. package/dist/domain/system-components/material-override-property-transition.js +1 -1
  443. package/dist/domain/system-components/material-override-transformer.js +1 -1
  444. package/dist/domain/system-components/material-swatch.js +1 -1
  445. package/dist/domain/system-components/multilingual-text-value.js +1 -1
  446. package/dist/domain/system-components/navigation-page.js +1 -1
  447. package/dist/domain/system-components/navigation-panel-list.js +1 -1
  448. package/dist/domain/system-components/navigation-steps.js +1 -1
  449. package/dist/domain/system-components/offset-anchors.d.ts +1 -1
  450. package/dist/domain/system-components/offset-anchors.js +1 -1
  451. package/dist/domain/system-components/offset-indicator.d.ts +1 -2
  452. package/dist/domain/system-components/offset-indicator.js +1 -1
  453. package/dist/domain/system-components/offset.d.ts +1 -1
  454. package/dist/domain/system-components/offset.js +1 -1
  455. package/dist/domain/system-components/other-action.d.ts +1 -1
  456. package/dist/domain/system-components/other-action.js +1 -1
  457. package/dist/domain/system-components/phoenix-layout-elements/assistant-toolbar-button.d.ts +44 -0
  458. package/dist/domain/system-components/phoenix-layout-elements/assistant-toolbar-button.js +1 -0
  459. package/dist/domain/system-components/phoenix-layout-elements/index.d.ts +1 -0
  460. package/dist/domain/system-components/phoenix-layout-elements/index.js +1 -1
  461. package/dist/domain/system-components/phoenix-layout-elements/phoenix-layout-element.d.ts +2 -1
  462. package/dist/domain/system-components/phoenix-layout-elements/phoenix-layout-element.js +1 -1
  463. package/dist/domain/system-components/pivot-point.d.ts +1 -1
  464. package/dist/domain/system-components/pivot-point.js +1 -1
  465. package/dist/domain/system-components/price.js +1 -1
  466. package/dist/domain/system-components/projected-entities.d.ts +1 -1
  467. package/dist/domain/system-components/projected-entities.js +1 -1
  468. package/dist/domain/system-components/property-page.d.ts +1 -1
  469. package/dist/domain/system-components/property-page.js +1 -1
  470. package/dist/domain/system-components/read-sidebar-footer.d.ts +1 -1
  471. package/dist/domain/system-components/read-sidebar-footer.js +1 -1
  472. package/dist/domain/system-components/replace-entity-recipe-hierarchy.d.ts +1 -1
  473. package/dist/domain/system-components/replace-entity-recipe-hierarchy.js +1 -1
  474. package/dist/domain/system-components/replace-entity-recipes.d.ts +1 -1
  475. package/dist/domain/system-components/replace-entity-recipes.js +1 -1
  476. package/dist/domain/system-components/rotatable.js +1 -1
  477. package/dist/domain/system-components/rotation-handle.js +1 -1
  478. package/dist/domain/system-components/save-template-thumbnail.js +1 -1
  479. package/dist/domain/system-components/scene-entity-add-fab.js +1 -1
  480. package/dist/domain/system-components/scene-entity-ambient-light.js +1 -1
  481. package/dist/domain/system-components/scene-entity-animation.js +1 -1
  482. package/dist/domain/system-components/scene-entity-box-object.js +1 -1
  483. package/dist/domain/system-components/scene-entity-control.js +1 -1
  484. package/dist/domain/system-components/scene-entity-delete-fab.js +1 -1
  485. package/dist/domain/system-components/scene-entity-directional-light.js +1 -1
  486. package/dist/domain/system-components/scene-entity-floor-object.js +1 -1
  487. package/dist/domain/system-components/scene-entity-html-hotspot.js +1 -1
  488. package/dist/domain/system-components/scene-entity-local-material-override.js +1 -1
  489. package/dist/domain/system-components/scene-entity-material-override.js +1 -1
  490. package/dist/domain/system-components/scene-entity-navigation-hotspot.js +1 -1
  491. package/dist/domain/system-components/scene-entity-object-clip.js +1 -1
  492. package/dist/domain/system-components/scene-entity-object-decal.js +1 -1
  493. package/dist/domain/system-components/scene-entity-object-group.js +1 -1
  494. package/dist/domain/system-components/scene-entity-object-html-hotspot.js +1 -1
  495. package/dist/domain/system-components/scene-entity-object-local-material-override.js +1 -1
  496. package/dist/domain/system-components/scene-entity-object-material-override.js +1 -1
  497. package/dist/domain/system-components/scene-entity-object-properties.js +1 -1
  498. package/dist/domain/system-components/scene-entity-object-remote-material-override.js +1 -1
  499. package/dist/domain/system-components/scene-entity-object-text-decal.js +1 -1
  500. package/dist/domain/system-components/scene-entity-object-transformer.js +1 -1
  501. package/dist/domain/system-components/scene-entity-object-transimissive-material-override.js +1 -1
  502. package/dist/domain/system-components/scene-entity-object.js +1 -1
  503. package/dist/domain/system-components/scene-entity-point-light.js +1 -1
  504. package/dist/domain/system-components/scene-entity-properties.js +1 -1
  505. package/dist/domain/system-components/scene-entity-rect-area-light.js +1 -1
  506. package/dist/domain/system-components/scene-entity-remote-material-override.js +1 -1
  507. package/dist/domain/system-components/scene-entity-remote-object.js +1 -1
  508. package/dist/domain/system-components/scene-entity-select-hotspot.js +1 -1
  509. package/dist/domain/system-components/scene-entity-spot-light.js +1 -1
  510. package/dist/domain/system-components/scene-entity-transimissive-material-override.js +1 -1
  511. package/dist/domain/system-components/scene-entity-wall-object.js +1 -1
  512. package/dist/domain/system-components/selectable-component.js +1 -1
  513. package/dist/domain/system-components/sidebar-tabs.d.ts +1 -1
  514. package/dist/domain/system-components/sidebar-tabs.js +1 -1
  515. package/dist/domain/system-components/simple-summary.js +1 -1
  516. package/dist/domain/system-components/size.d.ts +1 -1
  517. package/dist/domain/system-components/size.js +1 -1
  518. package/dist/domain/system-components/sketching-draw.d.ts +1 -1
  519. package/dist/domain/system-components/sketching-draw.js +1 -1
  520. package/dist/domain/system-components/sketching-edit.d.ts +1 -1
  521. package/dist/domain/system-components/sketching-edit.js +1 -1
  522. package/dist/domain/system-components/sketching-line.d.ts +1 -1
  523. package/dist/domain/system-components/sketching-line.js +1 -1
  524. package/dist/domain/system-components/sketching-rectangle.d.ts +1 -1
  525. package/dist/domain/system-components/sketching-rectangle.js +1 -1
  526. package/dist/domain/system-components/sketching.d.ts +1 -1
  527. package/dist/domain/system-components/sketching.js +1 -1
  528. package/dist/domain/system-components/snap-axis.d.ts +1 -1
  529. package/dist/domain/system-components/snap-axis.js +1 -1
  530. package/dist/domain/system-components/snap-edge.d.ts +1 -1
  531. package/dist/domain/system-components/snap-edge.js +1 -1
  532. package/dist/domain/system-components/snap-plane.d.ts +1 -1
  533. package/dist/domain/system-components/snap-plane.js +1 -1
  534. package/dist/domain/system-components/snap-point.d.ts +1 -1
  535. package/dist/domain/system-components/snap-point.js +1 -1
  536. package/dist/domain/system-components/static-orthographic-camera-component.d.ts +1 -1
  537. package/dist/domain/system-components/static-orthographic-camera-component.js +1 -1
  538. package/dist/domain/system-components/static-perspective-camera-component.d.ts +1 -1
  539. package/dist/domain/system-components/static-perspective-camera-component.js +1 -1
  540. package/dist/domain/system-components/summary-component.js +1 -1
  541. package/dist/domain/system-components/text-value.js +1 -1
  542. package/dist/domain/system-components/tool-controls.js +1 -1
  543. package/dist/domain/system-components/tool-menu-fab.d.ts +1 -1
  544. package/dist/domain/system-components/tool-menu-fab.js +1 -1
  545. package/dist/domain/system-components/toolbar.d.ts +1 -1
  546. package/dist/domain/system-components/toolbar.js +1 -1
  547. package/dist/domain/system-components/universal-sidebar-footer.d.ts +1 -1
  548. package/dist/domain/system-components/universal-sidebar-footer.js +1 -1
  549. package/dist/domain/system-components/view-controls.js +1 -1
  550. package/dist/domain/utils/eval-cache.d.ts +1 -2
  551. package/dist/domain/utils/memo-eval.d.ts +1 -3
  552. package/dist/editor/Editor.js +1 -1
  553. package/dist/editor/domain-editors/use-implementation-files.d.ts +7 -6
  554. package/dist/editor/domain-editors/use-implementation-files.js +1 -1
  555. package/dist/editor/graphql/GraphQLPanel.js +1 -1
  556. package/dist/editor/variants/VariantAnswerFooter.d.ts +17 -0
  557. package/dist/editor/variants/VariantAnswerFooter.js +1 -0
  558. package/dist/editor/variants/VariantPreviewHandler.d.ts +6 -0
  559. package/dist/editor/variants/VariantPreviewHandler.js +1 -0
  560. package/dist/editor/variants/variant-preview-styles.d.ts +49 -0
  561. package/dist/editor/variants/variant-preview-styles.js +1 -0
  562. package/dist/i18n/locales/cs/messages.js +1 -1
  563. package/dist/i18n/locales/da/messages.js +1 -1
  564. package/dist/i18n/locales/de/messages.js +1 -1
  565. package/dist/i18n/locales/de-AT/messages.js +1 -1
  566. package/dist/i18n/locales/en/messages.js +1 -1
  567. package/dist/i18n/locales/en-AU/messages.js +1 -1
  568. package/dist/i18n/locales/en-GB/messages.js +1 -1
  569. package/dist/i18n/locales/es/messages.js +1 -1
  570. package/dist/i18n/locales/fr/messages.js +1 -1
  571. package/dist/i18n/locales/hu/messages.js +1 -1
  572. package/dist/i18n/locales/it/messages.js +1 -1
  573. package/dist/i18n/locales/nl/messages.js +1 -1
  574. package/dist/i18n/locales/pl/messages.js +1 -1
  575. package/dist/i18n/locales/pt/messages.js +1 -1
  576. package/dist/i18n/locales/ro/messages.js +1 -1
  577. package/dist/i18n/locales/sk/messages.js +1 -1
  578. package/dist/i18n/locales/tr/messages.js +1 -1
  579. package/dist/legacy/domain-cli/gen/configurator-builder.js +21 -8
  580. package/dist/legacy/domain-cli/utils/cache.d.ts +1 -1
  581. package/dist/legacy/domain-cli/utils/cache.js +1 -1
  582. package/dist/legacy/domain-spec/__generated/domain-schema.d.ts +6 -0
  583. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-admin.js +18 -19
  584. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-configurator.js +15 -16
  585. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-admin.js +22 -23
  586. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-configurator.js +15 -16
  587. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/generator-shared.d.ts +7 -2
  588. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/generator-shared.js +8 -12
  589. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/index.d.ts +1 -1
  590. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/index.js +1 -1
  591. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/webhook-builders.js +7 -7
  592. package/dist/phoenix/application-spec/application-spec-builder.js +1 -1
  593. package/dist/phoenix/application-spec/resolve-deployment-data.d.ts +4 -3
  594. package/dist/phoenix/application-spec/resolve-deployment-data.js +2 -2
  595. package/dist/phoenix/cli.js +1 -1
  596. package/dist/phoenix/commands/deploy.js +2 -2
  597. package/dist/phoenix/commands/dev.js +5 -5
  598. package/dist/phoenix/commands/index.d.ts +1 -0
  599. package/dist/phoenix/commands/index.js +1 -1
  600. package/dist/phoenix/commands/prepare-deployment-command.js +2 -2
  601. package/dist/phoenix/commands/prepare-local-environment-command.js +1 -1
  602. package/dist/phoenix/commands/story-dev.js +2 -2
  603. package/dist/phoenix/commands/variants.d.ts +35 -0
  604. package/dist/phoenix/commands/variants.js +1 -0
  605. package/dist/phoenix/editor-server/commands-router.d.ts +68 -1
  606. package/dist/phoenix/editor-server/commands-router.js +1 -1
  607. package/dist/phoenix/editor-server/editor-router.d.ts +65 -0
  608. package/dist/phoenix/editor-server/editor-server.d.ts +3 -3
  609. package/dist/phoenix/editor-server/editor-server.js +1 -1
  610. package/dist/phoenix/editor-server/protocol.d.ts +1 -0
  611. package/dist/phoenix/editor-server/spec-router.js +1 -1
  612. package/dist/phoenix/editor-server/trpc.d.ts +3 -0
  613. package/dist/phoenix/scripts/build-admin.js +1 -1
  614. package/dist/phoenix/services/application-spec-project-watcher.d.ts +13 -2
  615. package/dist/phoenix/services/application-spec-project-watcher.js +3 -3
  616. package/dist/phoenix/services/index.d.ts +4 -0
  617. package/dist/phoenix/services/index.js +1 -1
  618. package/dist/phoenix/services/phoenix-application.d.ts +21 -0
  619. package/dist/phoenix/services/phoenix-application.js +1 -0
  620. package/dist/phoenix/services/phoenix-store.d.ts +48 -0
  621. package/dist/phoenix/services/phoenix-store.js +1 -0
  622. package/dist/phoenix/services/phx-variant-previews-plugin.d.ts +9 -0
  623. package/dist/phoenix/services/phx-variant-previews-plugin.js +1 -0
  624. package/dist/phoenix/services/prepare-development-environment.js +1 -1
  625. package/dist/phoenix/services/variant-file-session.d.ts +36 -0
  626. package/dist/phoenix/services/variant-file-session.js +1 -0
  627. package/dist/phoenix/services/variant-preview-service.d.ts +80 -0
  628. package/dist/phoenix/services/variant-preview-service.js +1 -0
  629. package/dist/phoenix/services/vite-config.js +1 -1
  630. package/dist/react-sdk/application-runtime/common-services/analytics/analytics-service.d.ts +2 -2
  631. package/dist/react-sdk/application-runtime/common-services/analytics/domain-controls-analytics.d.ts +21 -21
  632. package/dist/react-sdk/application-runtime/hooks/data/use-published-data.d.ts +1 -1
  633. package/dist/react-sdk/application-runtime/hooks/use-domain-application-props.d.ts +5 -2
  634. package/dist/react-sdk/application-runtime/hooks/use-spec.d.ts +1 -1
  635. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.d.ts +1 -1
  636. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.js +1 -1
  637. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.d.ts +4 -4
  638. package/dist/ui-sdk/common/use-viewport-size.d.ts +4 -1
  639. package/dist/ui-sdk/common/use-viewport-size.js +1 -1
  640. package/dist/ui-sdk/components/mobile-controls/index.d.ts +1 -1
  641. package/dist/ui-sdk/theme/types.d.ts +4 -0
  642. package/dist/webhook/builders/common.d.ts +3 -0
  643. package/dist/webhook/builders/webhook-builder.d.ts +1 -1
  644. package/dist/webhook/builders/webhook-builder.js +1 -1
  645. package/package.json +5 -8
  646. package/schema/domain-spec.json +24 -0
  647. package/dist/configurator/assistant/index.d.ts +0 -1
  648. package/dist/configurator/assistant/index.js +0 -1
  649. package/dist/configurator/assistant/use-assistant-chat.d.ts +0 -20
  650. package/dist/configurator/assistant/use-assistant-chat.js +0 -1
  651. package/dist/domain/actions/prepare-action-implementations.js +0 -5
  652. package/dist/domain/components/debug-state-component.js +0 -1
  653. package/dist/domain/components/domain-component-optic.js +0 -16
  654. package/dist/domain/components/drag-state-component.js +0 -1
  655. package/dist/domain/components/export-state-component.js +0 -1
  656. package/dist/domain/components/fullscreen-state-component.js +0 -1
  657. package/dist/domain/components/group-components-by-entity-id-and-name.js +0 -1
  658. package/dist/domain/components/hover-state-component.js +0 -1
  659. package/dist/domain/components/index.d.ts +0 -2
  660. package/dist/domain/components/index.js +0 -1
  661. package/dist/domain/components/navigation-state-component.js +0 -1
  662. package/dist/domain/components/selection-state-component.js +0 -1
  663. package/dist/domain/components/system-component-builder.js +0 -1
  664. package/dist/domain/components/system-virtual-entity.js +0 -1
  665. package/dist/domain/components/tool-state-component.js +0 -1
  666. package/dist/domain/components/view-state-component.js +0 -1
  667. package/dist/domain/components/viewport-state-component.js +0 -1
  668. package/dist/domain/core/json-schema.js +0 -1
  669. package/dist/domain/core/reflection.js +0 -1
  670. package/dist/domain/domain-context/recipe-system/recipes.js +0 -1
  671. package/dist/domain/expressions/constant-expressions.js +0 -1
  672. package/dist/domain/expressions/custom-expression.js +0 -1
  673. package/dist/domain/expressions/index.d.ts +0 -1
  674. package/dist/domain/expressions/index.js +0 -1
  675. package/dist/domain/invariants/custom-invariants.js +0 -1
  676. package/dist/domain/invariants/invariants.js +0 -1
  677. package/dist/domain/invariants/violation-component.js +0 -1
  678. package/dist/domain/relations/all-of-type-relation.js +0 -1
  679. package/dist/domain/relations/component-factories.js +0 -1
  680. package/dist/domain/relations/composed-of.js +0 -1
  681. package/dist/domain/relations/indirect-relation.js +0 -1
  682. package/dist/domain/relations/reference-component.js +0 -1
  683. package/dist/extras/assistant/AssistantChat.d.ts +0 -6
  684. package/dist/extras/assistant/AssistantChat.js +0 -1
  685. package/dist/extras/assistant/index.d.ts +0 -1
  686. package/dist/extras/assistant/index.js +0 -1
  687. package/dist/phoenix/application-spec/generate-assistant-prompt.d.ts +0 -12
  688. package/dist/phoenix/application-spec/generate-assistant-prompt.js +0 -1
  689. /package/dist/domain/{components/component-reader-types.js → application/assistant/assistant-manifest.js} +0 -0
  690. /package/dist/domain/{core/action.js → application/assistant/assistant-resolved-manifest.js} +0 -0
  691. /package/dist/domain/{actions → core/action}/action-factory.js +0 -0
  692. /package/dist/domain/core/{enhanced-json-schema.js → action/action.js} +0 -0
  693. /package/dist/domain/core/{expression.js → component/component-reader-types.js} +0 -0
  694. /package/dist/domain/{components → core/component}/legacy-filter.js +0 -0
  695. /package/dist/domain/{components → core/component}/system-component-filter.js +0 -0
  696. /package/dist/domain/{components → core/component}/system-virtual-entity.d.ts +0 -0
  697. /package/dist/domain/{components → core/component}/updates.js +0 -0
  698. /package/dist/domain/core/{schema-validator.js → decoder/decoder.js} +0 -0
  699. /package/dist/domain/{relations/reference-field.js → core/expression/aliased-expressions.js} +0 -0
  700. /package/dist/domain/{relations/relation-implementation.js → core/expression/expression.js} +0 -0
  701. /package/dist/domain/{invariants → core/invariant}/builtin-invariant.js +0 -0
  702. /package/dist/domain/{invariants → core/invariant}/violation-component.d.ts +0 -0
  703. /package/dist/domain/{invariants → core/invariant}/violation.js +0 -0
  704. /package/dist/domain/core/{alias.d.ts → model/alias.d.ts} +0 -0
  705. /package/dist/domain/core/{alias.js → model/alias.js} +0 -0
  706. /package/dist/domain/core/{common-definitions.d.ts → model/common-definitions.d.ts} +0 -0
  707. /package/dist/domain/core/{common-definitions.js → model/common-definitions.js} +0 -0
  708. /package/dist/domain/core/{component.js → model/component.js} +0 -0
  709. /package/dist/domain/core/{model.d.ts → model/model.d.ts} +0 -0
  710. /package/dist/domain/core/{model.js → model/model.js} +0 -0
  711. /package/dist/domain/core/{preset.d.ts → model/preset.d.ts} +0 -0
  712. /package/dist/domain/core/{preset.js → model/preset.js} +0 -0
  713. /package/dist/domain/{relations → core/relation}/direct-relation.js +0 -0
  714. /package/dist/domain/{relations → core/relation}/relation-factory.js +0 -0
  715. /package/dist/domain/core/{schema-validator-ajv.d.ts → schema/create-ajv-schema-validator.d.ts} +0 -0
  716. /package/dist/domain/core/{schema-validator-ajv.js → schema/create-ajv-schema-validator.js} +0 -0
  717. /package/dist/domain/core/{schema-validator-csp.d.ts → schema/create-csp-schema-validator.d.ts} +0 -0
  718. /package/dist/domain/core/{schema-validator-csp.js → schema/create-csp-schema-validator.js} +0 -0
  719. /package/dist/domain/core/{enhanced-json-schema.d.ts → schema/enhanced-json-schema.d.ts} +0 -0
  720. /package/dist/domain/core/{json-schema.d.ts → schema/extended-schema-validator.d.ts} +0 -0
  721. /package/dist/domain/core/{schema-validator.d.ts → schema/schema-validator.d.ts} +0 -0
  722. /package/dist/domain/core/{migrations.js → state/migrations.js} +0 -0
  723. /package/dist/domain/core/{state.js → state/state.js} +0 -0
  724. /package/dist/domain/{expressions → domain-runtime/spec}/memoize-expression.js +0 -0
  725. /package/dist/domain/{expressions → domain-runtime/spec}/prepare-domain-expressions.js +0 -0
@@ -1091,6 +1091,12 @@ export type PhoenixLayoutElement = {
1091
1091
  feet?: string;
1092
1092
  };
1093
1093
  };
1094
+ } | {
1095
+ kind: 'assistantToolbarButton';
1096
+ props?: {
1097
+ showTitle?: boolean;
1098
+ icon?: string;
1099
+ };
1094
1100
  } | {
1095
1101
  kind: 'helpToolbarButton';
1096
1102
  props?: {
@@ -1,38 +1,37 @@
1
- import{fileHeader as e}from"./file-header.js";import{defaultEnvsCode as n,generateDomainTypeImports as i,generateFlattenCall as t,generateImports as o,generateThemeCode as a,generateTransformerMap as m,generateTransformerRegistration as r,generateTransformerTypeImports as s,getImportNames as p}from"./generator-shared.js";export const generateFrontendAdminFile=(d=[],c=[],$=[],l=[],f=[],g=[],h=[],u,A,F)=>{let S=o(d,"components"),C=t(p(d,"components")),j=o(c,"adminComponents"),w=t(p(c,"adminComponents")),P=o(f,"handlers"),I=t(p(f,"handlers")),b=o(g,"elements"),E=p(g,"elements"),k=o(h,"adminElements"),B=t([...E,...p(h,"adminElements")]),O=m($,l),x=r(l),y=a(u,A),H=l.length>0,q=s(H),v=i(H),z=F?`
1
+ import{fileHeader as e}from"./file-header.js";import{defaultEnvsCode as n,generateImports as i,generateModuleEntries as t,generateModuleList as o,generateThemeCode as a,generateTransformerMap as m,generateTransformerRegistration as r,generateTransformerTypeImports as s}from"./generator-shared.js";export const generateFrontendAdminFile=(p=[],d=[],c=[],l=[],$=[],f=[],g=[],h,u,A)=>{let F=i(p,"components"),S=o(t(p,"components")),C=i(d,"adminComponents"),j=o(t(d,"adminComponents")),w=i($,"handlers"),P=o(t($,"handlers")),I=i(f,"elements"),b=i(g,"adminElements"),x=o([...t(f,"elements"),...t(g,"adminElements")]),E=m(c,l),k=r(l),y=a(h,u),B=s(l.length>0),O=A?`
2
2
  import { createAdminPagesFromSpec } from '@salsita-ai/sdk/admin'
3
- import { $adminPagesSpec, $dataSpec } from './domain/application-types.js'`:"",D=F?`
3
+ import { $adminPagesSpec, $dataSpec } from './domain/application-types.js'`:"",H=A?`
4
4
  const { components: specAdminComponents, pages: specAdminPages } = createAdminPagesFromSpec($adminPagesSpec, $dataSpec)
5
- `:"",G=F?`[...specAdminComponents, ...${w}]`:w;return`// prettier-ignore-file
5
+ `:"",q=A?`[{ origin: '.phoenix/domain/application-types.ts', exports: specAdminComponents }, ...${j}]`:j;return`// prettier-ignore-file
6
6
 
7
7
  ${e}
8
- ${q?`${q}
8
+ ${B?`${B}
9
9
  `:""}
10
10
  import * as interfaceFile from './configurator-interface.js'
11
11
  import * as adminInterfaceFile from './admin-interface.js'
12
12
 
13
13
  import { mountStandaloneAdminApplication } from '@salsita-ai/sdk/application'
14
14
 
15
- import { configuratorBuilder } from './domain.js'${v?`
16
- ${v}`:""}${z}
17
- ${S?`
18
- ${S}`:""}${j?`
19
- ${j}`:""}${P?`
20
- ${P}`:""}${b?`
21
- ${b}`:""}${k?`
22
- ${k}`:""}${y.imports?`
23
- ${y.imports}`:""}${O}
24
- ${D}
15
+ import { configuratorBuilder } from './domain.js'${O}
16
+ ${F?`
17
+ ${F}`:""}${C?`
18
+ ${C}`:""}${w?`
19
+ ${w}`:""}${I?`
20
+ ${I}`:""}${b?`
21
+ ${b}`:""}${y.imports?`
22
+ ${y.imports}`:""}${E}
23
+ ${H}
25
24
  let builder = configuratorBuilder
26
25
  .withInterface(interfaceFile)
27
26
  .withInterface(adminInterfaceFile)
28
- .withComponentOptics(${C})
29
- .withAdminComponentOptics(${G})
30
- .withHandlers(${I})
31
- .withElements(${B})
27
+ .withComponentOptics(${S})
28
+ .withAdminComponentOptics(${q})
29
+ .withHandlers(${P})
30
+ .withElements(${x})
32
31
  ${n}${y.code?`
33
32
  ${y.code}`:""}
34
33
 
35
- ${x}
34
+ ${k}
36
35
 
37
36
  const config = builder.buildConfig()
38
37
 
@@ -1,27 +1,26 @@
1
- import{fileHeader as o}from"./file-header.js";import{defaultEnvsCode as e,generateDomainTypeImports as r,generateFlattenCall as t,generateImports as i,generateThemeCode as n,generateTransformerMap as a,generateTransformerRegistration as s,generateTransformerTypeImports as $,getImportNames as c}from"./generator-shared.js";export const generateFrontendConfiguratorFile=(l=[],f=[],m=[],p=[],d=[],g,u,h=!0,C=!1)=>{let j=i(l,"components"),w=t(c(l,"components")),F=i(p,"handlers"),b=t(c(p,"handlers")),x=i(d,"elements"),A=t(c(d,"elements")),B=a(f,m),k=s(m),E=n(g,u),H=m.length>0,I=$(H),O=r(H);return`// prettier-ignore-file
1
+ import{fileHeader as o}from"./file-header.js";import{defaultEnvsCode as e,generateImports as r,generateModuleEntries as t,generateModuleList as i,generateThemeCode as n,generateTransformerMap as a,generateTransformerRegistration as s,generateTransformerTypeImports as c}from"./generator-shared.js";export const generateFrontendConfiguratorFile=(l=[],$=[],f=[],m=[],p=[],d,g,u=!0,h=!1)=>{let C=r(l,"components"),j=i(t(l,"components")),w=r(m,"handlers"),F=i(t(m,"handlers")),b=r(p,"elements"),x=i(t(p,"elements")),A=a($,f),B=s(f),k=n(d,g),E=c(f.length>0);return`// prettier-ignore-file
2
2
  ${o}
3
- ${C?"":"import { mountConfiguratorApplication } from '@salsita-ai/sdk/application'\n"}${I?`${I}
3
+ ${h?"":"import { mountConfiguratorApplication } from '@salsita-ai/sdk/application'\n"}${E?`${E}
4
4
  `:""}
5
5
  import * as interfaceFile from './configurator-interface.js'
6
6
 
7
- import { configuratorBuilder } from './domain.js'${O?`
8
- ${O}`:""}
9
- ${j?`
10
- ${j}`:""}${F?`
11
- ${F}`:""}${x?`
12
- ${x}`:""}${E.imports?`
13
- ${E.imports}`:""}${B}
7
+ import { configuratorBuilder } from './domain.js'
8
+ ${C?`
9
+ ${C}`:""}${w?`
10
+ ${w}`:""}${b?`
11
+ ${b}`:""}${k.imports?`
12
+ ${k.imports}`:""}${A}
14
13
 
15
14
  const builder = configuratorBuilder
16
15
  .withInterface(interfaceFile)
17
- .withComponentOptics(${w})
18
- .withHandlers(${b})
19
- .withElements(${A})
20
- ${h?e:""}${E.code?`
21
- ${E.code}`:""}${k}
16
+ .withComponentOptics(${j})
17
+ .withHandlers(${F})
18
+ .withElements(${x})
19
+ ${u?e:""}${k.code?`
20
+ ${k.code}`:""}${B}
22
21
 
23
22
 
24
- ${C?"export const config = ":"const config = "}builder.buildConfig()
23
+ ${h?"export const config = ":"const config = "}builder.buildConfig()
25
24
 
26
- ${C?"":"mountConfiguratorApplication(config)"}
25
+ ${h?"":"mountConfiguratorApplication(config)"}
27
26
  `};
@@ -1,45 +1,44 @@
1
- import{fileHeader as e}from"./file-header.js";import{defaultEnvsCode as n,generateDomainTypeImports as i,generateFlattenCall as t,generateImports as o,generateThemeCode as m,generateTransformerMap as a,generateTransformerRegistration as r,generateTransformerTypeImports as d,getImportNames as s}from"./generator-shared.js";export const getFrontendEmbeddedAdminFile=(p,c,$=[],l=[],f=[],g=[],u=[],h=[],A=[],F,C,b)=>{let j=o($,"components"),w=t(s($,"components")),E=o(l,"adminComponents"),S=t(s(l,"adminComponents")),P=o(u,"handlers"),I=t(s(u,"handlers")),k=o(h,"elements"),x=s(h,"elements"),B=o(A,"adminElements"),O=t([...x,...s(A,"adminElements")]),y=a(f,g),H=r(g),q=m(F,C),v=g.length>0,z=d(v),D=i(v),G=b?`
1
+ import{fileHeader as e}from"./file-header.js";import{defaultEnvsCode as i,generateImports as n,generateModuleEntries as t,generateModuleList as o,generateThemeCode as m,generateTransformerMap as a,generateTransformerRegistration as r,generateTransformerTypeImports as s}from"./generator-shared.js";export const getFrontendEmbeddedAdminFile=(d,p,c=[],$=[],l=[],f=[],g=[],u=[],h=[],A,F,C)=>{let b=n(c,"components"),j=o(t(c,"components")),w=n($,"adminComponents"),E=o(t($,"adminComponents")),S=n(g,"handlers"),P=o(t(g,"handlers")),x=n(u,"elements"),I=n(h,"adminElements"),k=o([...t(u,"elements"),...t(h,"adminElements")]),y=a(l,f),B=r(f),O=m(A,F),H=s(f.length>0),q=C?`
2
2
  import { createAdminPagesFromSpec } from '@salsita-ai/sdk/admin'
3
- import { $adminPagesSpec, $dataSpec } from './domain/application-types.js'`:"",J=b?`
3
+ import { $adminPagesSpec, $dataSpec } from './domain/application-types.js'`:"",v=C?`
4
4
  const { components: specAdminComponents, pages: specAdminPages } = createAdminPagesFromSpec($adminPagesSpec, $dataSpec)
5
- `:"",K=b?`[...specAdminComponents, ...${S}]`:S;return`// prettier-ignore-file
5
+ `:"",z=C?`[{ origin: '.phoenix/domain/application-types.ts', exports: specAdminComponents }, ...${E}]`:E;return`// prettier-ignore-file
6
6
 
7
7
  ${e}
8
- ${z?`${z}
8
+ ${H?`${H}
9
9
  `:""}
10
10
  import * as interfaceFile from './configurator-interface.js'
11
11
  import * as adminInterfaceFile from './admin-interface.js'
12
12
 
13
13
  import { mountEmbeddedAdminApplication } from '@salsita-ai/sdk/application'
14
14
 
15
- import { configuratorBuilder } from './domain.js'${D?`
16
- ${D}`:""}${G}
17
- ${j?`
18
- ${j}`:""}${E?`
19
- ${E}`:""}${P?`
20
- ${P}`:""}${k?`
21
- ${k}`:""}${B?`
22
- ${B}`:""}${q.imports?`
23
- ${q.imports}`:""}${y}
24
- ${J}
15
+ import { configuratorBuilder } from './domain.js'${q}
16
+ ${b?`
17
+ ${b}`:""}${w?`
18
+ ${w}`:""}${S?`
19
+ ${S}`:""}${x?`
20
+ ${x}`:""}${I?`
21
+ ${I}`:""}${O.imports?`
22
+ ${O.imports}`:""}${y}
23
+ ${v}
25
24
  let builder = configuratorBuilder
26
25
  .withInterface(interfaceFile)
27
26
  .withInterface(adminInterfaceFile)
28
- .withComponentOptics(${w})
29
- .withAdminComponentOptics(${K})
30
- .withHandlers(${I})
31
- .withElements(${O})
32
- ${n}${q.code?`
33
- ${q.code}`:""}
27
+ .withComponentOptics(${j})
28
+ .withAdminComponentOptics(${z})
29
+ .withHandlers(${P})
30
+ .withElements(${k})
31
+ ${i}${O.code?`
32
+ ${O.code}`:""}
34
33
 
35
- ${H}
34
+ ${B}
36
35
 
37
36
  const config = builder.buildConfig()
38
37
 
39
38
  export default {
40
39
  mount: () => {
41
- mountEmbeddedAdminApplication(config, '${p}', '${c}')
42
- return 'salsita-admin-${p}-${c}'
40
+ mountEmbeddedAdminApplication(config, '${d}', '${p}')
41
+ return 'salsita-admin-${d}-${p}'
43
42
  },
44
43
  config,
45
44
  }
@@ -1,35 +1,34 @@
1
- import{fileHeader as e}from"./file-header.js";import{defaultEnvsCode as o,generateDomainTypeImports as t,generateFlattenCall as r,generateImports as i,generateThemeCode as n,generateTransformerMap as a,generateTransformerRegistration as d,generateTransformerTypeImports as m,getImportNames as s}from"./generator-shared.js";export const getFrontendEmbeddedConfiguratorFile=($,l,f=[],c=[],p=[],u=[],g=[],h,b)=>{let C=i(f,"components"),j=r(s(f,"components")),w=i(u,"handlers"),E=r(s(u,"handlers")),F=i(g,"elements"),x=r(s(g,"elements")),A=a(c,p),B=d(p),k=n(h,b),H=p.length>0,I=m(H),O=t(H);return`// prettier-ignore-file
1
+ import{fileHeader as e}from"./file-header.js";import{defaultEnvsCode as o,generateImports as t,generateModuleEntries as r,generateModuleList as i,generateThemeCode as n,generateTransformerMap as a,generateTransformerRegistration as d,generateTransformerTypeImports as m}from"./generator-shared.js";export const getFrontendEmbeddedConfiguratorFile=(s,l,f=[],$=[],c=[],p=[],u=[],g,h)=>{let b=t(f,"components"),C=i(r(f,"components")),j=t(p,"handlers"),w=i(r(p,"handlers")),E=t(u,"elements"),F=i(r(u,"elements")),x=a($,c),A=d(c),B=n(g,h),k=m(c.length>0);return`// prettier-ignore-file
2
2
 
3
3
  ${e}
4
- ${I?`${I}
4
+ ${k?`${k}
5
5
  `:""}
6
6
  import * as interfaceFile from './configurator-interface.js'
7
7
 
8
8
  import { mountEmbeddedConfiguratorApplication } from '@salsita-ai/sdk/application'
9
9
 
10
- import { configuratorBuilder } from './domain.js'${O?`
11
- ${O}`:""}
12
- ${C?`
13
- ${C}`:""}${w?`
14
- ${w}`:""}${F?`
15
- ${F}`:""}${k.imports?`
16
- ${k.imports}`:""}${A}
10
+ import { configuratorBuilder } from './domain.js'
11
+ ${b?`
12
+ ${b}`:""}${j?`
13
+ ${j}`:""}${E?`
14
+ ${E}`:""}${B.imports?`
15
+ ${B.imports}`:""}${x}
17
16
 
18
17
  const builder = configuratorBuilder
19
18
  .withInterface(interfaceFile)
20
- .withComponentOptics(${j})
21
- .withHandlers(${E})
22
- .withElements(${x})
23
- ${o}${k.code?`
24
- ${k.code}`:""}${B}
19
+ .withComponentOptics(${C})
20
+ .withHandlers(${w})
21
+ .withElements(${F})
22
+ ${o}${B.code?`
23
+ ${B.code}`:""}${A}
25
24
 
26
25
 
27
26
  const config = builder.buildConfig()
28
27
 
29
28
  export default {
30
29
  mount: () => {
31
- mountEmbeddedConfiguratorApplication(config, '${$}', '${l}')
32
- return 'salsita-configurator-${$}-${l}'
30
+ mountEmbeddedConfiguratorApplication(config, '${s}', '${l}')
31
+ return 'salsita-configurator-${s}-${l}'
33
32
  },
34
33
  config,
35
34
  }
@@ -4,9 +4,14 @@
4
4
  */
5
5
  export declare const getImportNames: (files: readonly string[], prefix: string) => readonly string[];
6
6
  export declare const generateImports: (files: readonly string[], prefix: string) => string;
7
- export declare const generateFlattenCall: (importNames: readonly string[]) => string;
7
+ /**
8
+ * The entries of a project-module list for one category of files: each default export paired with its project
9
+ * path. The generated file passes them to the configurator builder unchecked; the SDK validates each export
10
+ * against its folder's contract and names the file when it does not match.
11
+ */
12
+ export declare const generateModuleEntries: (files: readonly string[], prefix: string) => readonly string[];
13
+ export declare const generateModuleList: (entries: readonly string[]) => string;
8
14
  export declare const generateTransformerTypeImports: (hasTransformers: boolean) => string;
9
- export declare const generateDomainTypeImports: (hasTransformers: boolean) => string;
10
15
  export declare const generateTransformerMap: (transformersFiles: readonly string[], transformers: Array<{
11
16
  name: string;
12
17
  priority?: number;
@@ -1,17 +1,13 @@
1
- import{basename as e,extname as r}from"path";export const getImportNames=(e,r)=>e.map((e,t)=>`${r}${t}`);export const generateImports=(e,r)=>{if(0===e.length)return"";let t=getImportNames(e,r);return e.map((e,r)=>{let n=`../src/${e.replace(/\.tsx?$/,"")}.js`;return`import ${t[r]} from '${n}'`}).join("\n")};export const generateFlattenCall=e=>{if(0===e.length)return"[]";let r=e.map(e=>`Array.isArray(${e}) ? ${e} : [${e}]`).join(",\n ");return 1===e.length?`Array.isArray(${e[0]}) ? ${e[0]} : [${e[0]}]`:`[
2
- ${r}
3
- ].flat()`};export const generateTransformerTypeImports=e=>e?"import type { ImportedTransformer, SpecTransformer } from '@salsita-ai/sdk/domain'":"";export const generateDomainTypeImports=e=>e?`import type { AnyDomainEntity, RootEntity } from './domain/model/index.js'
4
- import type { NavigationState, ViewState, ToolState, ExportState } from './domain/application-types.js'
5
- import type { $Map } from './domain/enhanced-model.js'`:"";export const generateTransformerMap=(t,n)=>{if(0===n.length)return"";if(0===t.length)throw Error(`Transformers specified in spec but no transformer files found in transformers/ folder. Expected transformers: ${n.map(e=>e.name).join(", ")}`);let o=getImportNames(t,"transformers"),a=[];t.forEach((e,r)=>{let t=o[r];a.push(`import ${t} from '../src/${e.replace(/\.tsx?$/,".js")}'`)});let s=`const allImportedTransformers: ReadonlyArray<ImportedTransformer<AnyDomainEntity, RootEntity, $Map, NavigationState, ViewState, ToolState, ExportState>> = [
6
- ${t.map((t,n)=>{let a=o[n],s=e(t,r(t));return` { name: '${s}', transformer: ${a} }`}).join(",\n")}
7
- ]`,m=n.map(e=>` { name: '${e.name}', priority: ${e.priority??"Infinity"} }`).join(",\n"),i=`const specTransformers: SpecTransformer[] = [
8
- ${m}
9
- ]`;return`${a.length>0?`
10
- ${a.join("\n")}`:""}
11
-
1
+ export const getImportNames=(e,r)=>e.map((e,t)=>`${r}${t}`);export const generateImports=(e,r)=>{if(0===e.length)return"";let t=getImportNames(e,r);return e.map((e,r)=>{let n=`../src/${e.replace(/\.tsx?$/,"")}.js`;return`import ${t[r]} from '${n}'`}).join("\n")};export const generateModuleEntries=(e,r)=>{let t=getImportNames(e,r);return e.map((e,r)=>`{ origin: 'src/${e}', exports: ${t[r]} }`)};export const generateModuleList=e=>0===e.length?"[]":`[
2
+ ${e.join(",\n ")}
3
+ ]`;export const generateTransformerTypeImports=e=>e?"import type { ProjectModule, SpecTransformer } from '@salsita-ai/sdk/domain'":"";export const generateTransformerMap=(e,r)=>{if(0===r.length)return"";if(0===e.length)throw Error(`Transformers specified in spec but no transformer files found in transformers/ folder. Expected transformers: ${r.map(e=>e.name).join(", ")}`);let t=getImportNames(e,"transformers"),n=[];e.forEach((e,r)=>{let o=t[r];n.push(`import ${o} from '../src/${e.replace(/\.tsx?$/,".js")}'`)});let o=`const allImportedTransformers: readonly ProjectModule[] = ${generateModuleList(generateModuleEntries(e,"transformers"))}`,s=r.map(e=>` { name: '${e.name}', priority: ${e.priority??"Infinity"} }`).join(",\n"),a=`const specTransformers: SpecTransformer[] = [
12
4
  ${s}
5
+ ]`;return`${n.length>0?`
6
+ ${n.join("\n")}`:""}
7
+
8
+ ${o}
13
9
 
14
- ${i}`};export const generateTransformerRegistration=e=>0===e.length?"":".withTransformers(allImportedTransformers, specTransformers)";export const generateThemeCode=(e,r)=>e?{imports:"import { getPhoenixThemes } from '@salsita-ai/sdk/ui'",code:` .withTheme(getPhoenixThemes().${e})`}:r?{imports:"import { createScaledPhoenixTheme } from '@salsita-ai/sdk/ui'",code:` .withTheme(createScaledPhoenixTheme(${JSON.stringify(r,null,2)}))`}:{imports:"",code:""};export const defaultEnvsCode=` .withDefaultEnvs({
10
+ ${a}`};export const generateTransformerRegistration=e=>0===e.length?"":".withTransformers(allImportedTransformers, specTransformers)";export const generateThemeCode=(e,r)=>e?{imports:"import { getPhoenixThemes } from '@salsita-ai/sdk/ui'",code:` .withTheme(getPhoenixThemes().${e})`}:r?{imports:"import { createScaledPhoenixTheme } from '@salsita-ai/sdk/ui'",code:` .withTheme(createScaledPhoenixTheme(${JSON.stringify(r,null,2)}))`}:{imports:"",code:""};export const defaultEnvsCode=` .withDefaultEnvs({
15
11
  isDev: phx.frontendEnv.IS_DEV,
16
12
  deploymentId: phx.frontendEnv.DEPLOYMENT_ID,
17
13
  datadogEnabled: phx.frontendEnv.DATADOG_ENABLED,
@@ -13,7 +13,7 @@ export { generateFrontendAdminFile } from './frontend-admin.js';
13
13
  export { generateFrontendConfiguratorFile } from './frontend-configurator.js';
14
14
  export { getFrontendEmbeddedAdminFile } from './frontend-embedded-admin.js';
15
15
  export { getFrontendEmbeddedConfiguratorFile } from './frontend-embedded-configurator.js';
16
- export { defaultEnvsCode, generateDomainTypeImports, generateFlattenCall, generateThemeCode, generateTransformerMap, generateTransformerRegistration, generateTransformerTypeImports, } from './generator-shared.js';
16
+ export { defaultEnvsCode, generateModuleEntries, generateModuleList, generateThemeCode, generateTransformerMap, generateTransformerRegistration, generateTransformerTypeImports, } from './generator-shared.js';
17
17
  export { GITIGNORE_END_MARKER, GITIGNORE_START_MARKER, gitignoreFile, mergeGitignoreContent } from './gitignore.js';
18
18
  export { claudeMdFile, cursorRulesFile, mergeClaudeMdContent, mergeCursorRulesContent, mergeMarkerContent, reviewCommandFile, SDK_END_MARKER, SDK_START_MARKER, } from './agents/index.js';
19
19
  export { globalTsFile } from './globals.js';
@@ -1 +1 @@
1
- export{adminInterfaceFile}from"./admin-interface.js";export{privateAssetsReadme,publicAssetsReadme}from"./assets-readme.js";export{configuratorInterfaceFile}from"./configurator-interface.js";export{generateIndexDomainFile}from"./domain-index.js";export{generateEditorFile}from"./editor.js";export{envCiFile}from"./env-ci.js";export{generateFrontendConfig,generateWebhookConfig}from"./env-config.js";export{envExampleFile}from"./env-example.js";export{eslintFile}from"./eslint.js";export{faviconBase64}from"./favicon.js";export{fileHeader}from"./file-header.js";export{generateFrontendAdminFile}from"./frontend-admin.js";export{generateFrontendConfiguratorFile}from"./frontend-configurator.js";export{getFrontendEmbeddedAdminFile}from"./frontend-embedded-admin.js";export{getFrontendEmbeddedConfiguratorFile}from"./frontend-embedded-configurator.js";export{defaultEnvsCode,generateDomainTypeImports,generateFlattenCall,generateThemeCode,generateTransformerMap,generateTransformerRegistration,generateTransformerTypeImports}from"./generator-shared.js";export{GITIGNORE_END_MARKER,GITIGNORE_START_MARKER,gitignoreFile,mergeGitignoreContent}from"./gitignore.js";export{claudeMdFile,cursorRulesFile,mergeClaudeMdContent,mergeCursorRulesContent,mergeMarkerContent,reviewCommandFile,SDK_END_MARKER,SDK_START_MARKER}from"./agents/index.js";export{globalTsFile}from"./globals.js";export{htmlAdminIndexFile}from"./html-admin-index.js";export{generateHtmlIndexFile}from"./html-index.js";export{generateI18nIndexFile}from"./i18n-index.js";export{getLinguiRcFile}from"./lingui-rc.js";export{generateNvmrc,generatePackageJson}from"./package-json.js";export{generatePhoenixConfigFile}from"./phoenix-config.js";export{prettierFile}from"./prettier.js";export{prettierignoreFile}from"./prettierignore.js";export{generateReadme}from"./readme.js";export{robotsTxtContent}from"./robots-txt.js";export{generateApplicationYaml,generateModelYaml}from"./spec-application.js";export{tsconfigFile}from"./tsconfig.js";export{generateWebhookBuildersFile}from"./webhook-builders.js";export{webhookImplementationFile}from"./webhook-implementation.js";export{webhookIndexFile}from"./webhook.index.js";
1
+ export{adminInterfaceFile}from"./admin-interface.js";export{privateAssetsReadme,publicAssetsReadme}from"./assets-readme.js";export{configuratorInterfaceFile}from"./configurator-interface.js";export{generateIndexDomainFile}from"./domain-index.js";export{generateEditorFile}from"./editor.js";export{envCiFile}from"./env-ci.js";export{generateFrontendConfig,generateWebhookConfig}from"./env-config.js";export{envExampleFile}from"./env-example.js";export{eslintFile}from"./eslint.js";export{faviconBase64}from"./favicon.js";export{fileHeader}from"./file-header.js";export{generateFrontendAdminFile}from"./frontend-admin.js";export{generateFrontendConfiguratorFile}from"./frontend-configurator.js";export{getFrontendEmbeddedAdminFile}from"./frontend-embedded-admin.js";export{getFrontendEmbeddedConfiguratorFile}from"./frontend-embedded-configurator.js";export{defaultEnvsCode,generateModuleEntries,generateModuleList,generateThemeCode,generateTransformerMap,generateTransformerRegistration,generateTransformerTypeImports}from"./generator-shared.js";export{GITIGNORE_END_MARKER,GITIGNORE_START_MARKER,gitignoreFile,mergeGitignoreContent}from"./gitignore.js";export{claudeMdFile,cursorRulesFile,mergeClaudeMdContent,mergeCursorRulesContent,mergeMarkerContent,reviewCommandFile,SDK_END_MARKER,SDK_START_MARKER}from"./agents/index.js";export{globalTsFile}from"./globals.js";export{htmlAdminIndexFile}from"./html-admin-index.js";export{generateHtmlIndexFile}from"./html-index.js";export{generateI18nIndexFile}from"./i18n-index.js";export{getLinguiRcFile}from"./lingui-rc.js";export{generateNvmrc,generatePackageJson}from"./package-json.js";export{generatePhoenixConfigFile}from"./phoenix-config.js";export{prettierFile}from"./prettier.js";export{prettierignoreFile}from"./prettierignore.js";export{generateReadme}from"./readme.js";export{robotsTxtContent}from"./robots-txt.js";export{generateApplicationYaml,generateModelYaml}from"./spec-application.js";export{tsconfigFile}from"./tsconfig.js";export{generateWebhookBuildersFile}from"./webhook-builders.js";export{webhookImplementationFile}from"./webhook-implementation.js";export{webhookIndexFile}from"./webhook.index.js";
@@ -1,23 +1,23 @@
1
- import{fileHeader as e}from"./file-header.js";import{generateFlattenCall as o,getImportNames as r}from"./generator-shared.js";export const generateWebhookBuildersFile=(i,t=[])=>{let a=i.useClerk?` clerk: {
1
+ import{fileHeader as e}from"./file-header.js";import{generateModuleEntries as o,generateModuleList as r,getImportNames as i}from"./generator-shared.js";export const generateWebhookBuildersFile=(a,t=[])=>{let l=a.useClerk?` clerk: {
2
2
  apiKey: phx.webhooksEnv.CLERK_API_KEY,
3
3
  authorizedParties: [phx.webhooksEnv.FRONTEND_URL, phx.webhooksEnv.RESOURCES_URL],
4
4
  jwtSecret: phx.webhooksEnv.JWT_SECRET_BASE64,
5
5
  oauthClientId: phx.webhooksEnv.OAUTH_PROVIDER_CLIENT_ID,
6
6
  oauthClientSecret: phx.webhooksEnv.OAUTH_PROVIDER_CLIENT_SECRET,
7
7
  oauthProviderBaseUrl: phx.webhooksEnv.OAUTH_PROVIDER_BASE_URL,
8
- },`:"",l=r(t,"handlers"),h=t.map((e,o)=>{let r=e.replace(/\.tsx?$/,"");return`import ${l[o]} from '../../src/${r}.js'`}).join("\n"),n=t.length>0,s=o(l),u=n?`
9
- .withHandlers(${s})`:"";return`${e}
8
+ },`:"",h=i(t,"handlers"),n=t.map((e,o)=>{let r=e.replace(/\.tsx?$/,"");return`import ${h[o]} from '../../src/${r}.js'`}).join("\n"),s=t.length>0,u=r(o(t,"handlers")),d=s?`
9
+ .withHandlers(${u})`:"";return`${e}
10
10
  import { createDomainWebhook } from '@salsita-ai/sdk/webhook'
11
11
 
12
12
  import { configuratorBuilder } from '../domain.js'
13
13
  import { createI18n } from '../i18n.js'
14
- ${h?`
15
- ${h}
14
+ ${n?`
15
+ ${n}
16
16
  `:""}
17
17
  const webhookConfiguratorBuilder = configuratorBuilder
18
18
  .withDefaultEnvs({
19
19
  isDev: phx.webhooksEnv.IS_DEV,
20
- })${u}
20
+ })${d}
21
21
 
22
22
  export const {
23
23
  authHandlerBuilder,
@@ -30,7 +30,7 @@ export const {
30
30
  } = createDomainWebhook({
31
31
  configuratorBuilder: webhookConfiguratorBuilder,
32
32
  createI18n,
33
- ${a}
33
+ ${l}
34
34
  })
35
35
 
36
36
  // @ts-ignore - Initialize the globals
@@ -1 +1 @@
1
- import{existsSync as e,lstatSync as i,readFileSync as t,readdirSync as r,rmSync as o,unlinkSync as s}from"fs";import{join as n}from"path";import{format as l}from"prettier";import{prettierrc as a}from"@salsita-ai/common/prettier";import{GeneratedApplication as c,GeneratedApplicationFile as p,RuntimeReferenceStore as g,buildPhoenixDefinitions as f,createContentDiffTracker as h,generateApplicationCode as m,parseApplicationFiles as d}from"#package/application-spec";import{getAllPhxDefinitions as u}from"#package/domain";import{compileWithSwc as S}from"../services/swc.js";import{syncChangedFiles as b}from"../utils/index.js";import{readApplicationFiles as w}from"./application-spec-file-reader.js";import{cleanStaleAgentSkills as j,removeProjectFiles as D}from"./clean-project-files.js";import{swcEvalExpressionParser as F,swcModuleAnalyzer as x}from"./swc-module-analyzer.js";let P=".phoenix",k=`${P}/`,v=async e=>{if(e.binary||!1===e.format)return e;try{let i=await l(e.content,{...a,filepath:e.path});return p(e.path,i,{binary:e.binary,format:e.format})}catch{return e}},y=async e=>{let[i,t,r]=await Promise.all([Promise.all(e.generatedProjectFiles.map(v)),Promise.all(e.initialProjectFiles.map(v)),Promise.all(e.prettierFiles.map(v))]);return c({files:e.files,generatedProjectFiles:i,initialProjectFiles:t,prettierFiles:r,removedProjectFiles:e.removedProjectFiles})};export class ApplicationSpecBuilder{contentDiff;referenceStore;config;logger;phxDefinitions;constructor(e){this.config=e,this.logger=e.logger,this.referenceStore=new g,this.contentDiff=h({readDiskContent:this.readDiskContent}),this.phxDefinitions=f(u())}async build(e){let i=e?.parsingContext,t=e?.compile??!0;e?.force&&this.referenceStore.clear();let r=i?.startSpan("readFiles","build","application-spec-builder.ts"),o=e?.rawProjectFiles??await w({envs:{}});r?.();let s=d({rawProjectFiles:o,phxDefinitions:this.phxDefinitions},{analyzer:x,evalExpressionParser:F,referenceStore:this.referenceStore,logger:this.logger,parsingContext:i});if(!s.ok)return{ok:!1,rawProjectFiles:o,errors:s.errors,diagnostics:s.diagnostics,metrics:s.metrics,counts:s.counts};let{applicationSpec:n,categorizedFiles:l,rawMockTemplates:a}=s.value,c=i?.startSpan("generateCode","build","application-spec-builder.ts"),p=m({applicationSpec:n,categorizedFiles:l,phxDefinitions:this.phxDefinitions,sdkVersion:this.config.sdkVersion,cliUseWorkspace:this.config.cliUseWorkspace,name:this.config.name,description:this.config.description,projectSlug:this.config.projectSlug,environmentSlug:this.config.environmentSlug,enableEditor:this.config.enableEditor,inlineTemplates:this.config.inlineTemplates,rawMockTemplates:a});c?.();let g=i?.startSpan("cleanStaleFiles","build","application-spec-builder.ts"),f=new Set(p.files.map(e=>e.path));this.cleanStaleGeneratedFiles(f),D(p.removedProjectFiles,{logger:this.logger}),j(new Set(p.generatedProjectFiles.map(e=>e.path)),{logger:this.logger}),g?.();let h=i?.startSpan("contentDiff","build","application-spec-builder.ts"),u=await y(p),S=this.contentDiff.getChangedApplicationFiles(u,{generatedFilesPathPrefix:k,force:e?.force}),P=S.changedGeneratedFiles;h?.(),P.length>0?this.logger.info(` ${P.length}/${p.files.length} generated files changed`):this.logger.info(" No generated files changed");let v=S.filesToWrite.length-P.length;v>0&&this.logger.info(` ${v} project files changed`);let C=i?.startSpan("writeFiles","build","application-spec-builder.ts");return await b(S.filesToWrite,{logger:this.logger,skipChecksum:!0}),C?.(),t&&await this.compile(i),{ok:!0,application:s.value,changedFiles:P,diagnostics:s.diagnostics,metrics:s.metrics,counts:s.counts}}async compile(e){let i=e?.startSpan("swcCompile(src)","build","application-spec-builder.ts");await S({sourceDir:"src",outDir:`./${P}/.swc/src`},{logger:this.logger}),i?.();let t=e?.startSpan("swcCompile(.phoenix)","build","application-spec-builder.ts");await S({sourceDir:P,outDir:`./${P}/.swc/${P}`},{logger:this.logger}),t?.()}readDiskContent=i=>{try{if(e(i))return t(i,"utf-8")}catch{}};cleanStaleGeneratedFiles(t){let l=new Set(["public",".swc","dist","phoenix-dev.log","phoenix-dev.log.1","phoenix-dev.log.2"]);try{if(!e(P))return;for(let e of r(P)){if(l.has(e)||t.has(e))continue;let r=n(P,e);try{let e=i(r);if(e.isSymbolicLink())continue;e.isDirectory()?o(r,{recursive:!0}):s(r),this.logger.debug(` Removed stale: ${r}`)}catch{}}}catch{}}}
1
+ import{existsSync as e,lstatSync as i,readFileSync as t,readdirSync as r,rmSync as o,unlinkSync as s}from"fs";import{join as n}from"path";import{format as a}from"prettier";import{prettierrc as l}from"@salsita-ai/common/prettier";import{GeneratedApplication as c,GeneratedApplicationFile as p,RuntimeReferenceStore as g,buildPhoenixDefinitions as f,createContentDiffTracker as h,generateApplicationCode as m,parseApplicationFiles as d}from"#package/application-spec";import{getAllPhxDefinitions as u}from"#package/domain";import{compileWithSwc as S}from"../services/swc.js";import{syncChangedFiles as b}from"../utils/index.js";import{readApplicationFiles as w}from"./application-spec-file-reader.js";import{cleanStaleAgentSkills as j,removeProjectFiles as v}from"./clean-project-files.js";import{swcEvalExpressionParser as D,swcModuleAnalyzer as F}from"./swc-module-analyzer.js";let x=".phoenix",y=`${x}/`,P=async e=>{if(e.binary||!1===e.format)return e;try{let i=await a(e.content,{...l,filepath:e.path});return p(e.path,i,{binary:e.binary,format:e.format})}catch{return e}},k=async e=>{let[i,t,r]=await Promise.all([Promise.all(e.generatedProjectFiles.map(P)),Promise.all(e.initialProjectFiles.map(P)),Promise.all(e.prettierFiles.map(P))]);return c({files:e.files,generatedProjectFiles:i,initialProjectFiles:t,prettierFiles:r,removedProjectFiles:e.removedProjectFiles})};export class ApplicationSpecBuilder{contentDiff;referenceStore;config;logger;phxDefinitions;constructor(e){this.config=e,this.logger=e.logger,this.referenceStore=new g,this.contentDiff=h({readDiskContent:this.readDiskContent}),this.phxDefinitions=f(u())}async build(e){let i=e?.parsingContext,t=e?.compile??!0;e?.force&&this.referenceStore.clear();let r=i?.startSpan("readFiles","build","application-spec-builder.ts"),o=e?.rawProjectFiles??await w({envs:{}});r?.();let s=d({rawProjectFiles:o,phxDefinitions:this.phxDefinitions},{analyzer:F,evalExpressionParser:D,referenceStore:this.referenceStore,logger:this.logger,parsingContext:i});if(!s.ok)return{ok:!1,rawProjectFiles:o,errors:s.errors,diagnostics:s.diagnostics,metrics:s.metrics,counts:s.counts};let{applicationSpec:n,categorizedFiles:a,rawMockTemplates:l}=s.value,c=i?.startSpan("generateCode","build","application-spec-builder.ts"),p=m({applicationSpec:n,categorizedFiles:a,phxDefinitions:this.phxDefinitions,sdkVersion:this.config.sdkVersion,cliUseWorkspace:this.config.cliUseWorkspace,name:this.config.name,description:this.config.description,projectSlug:this.config.projectSlug,environmentSlug:this.config.environmentSlug,enableEditor:this.config.enableEditor,inlineTemplates:this.config.inlineTemplates,rawMockTemplates:l});c?.();let g=i?.startSpan("cleanStaleFiles","build","application-spec-builder.ts"),f=new Set(p.files.map(e=>e.path));this.cleanStaleGeneratedFiles(f),v(p.removedProjectFiles,{logger:this.logger}),j(new Set(p.generatedProjectFiles.map(e=>e.path)),{logger:this.logger}),g?.();let h=i?.startSpan("contentDiff","build","application-spec-builder.ts"),u=await k(p),S=this.contentDiff.getChangedApplicationFiles(u,{generatedFilesPathPrefix:y,force:e?.force}),x=S.changedGeneratedFiles;h?.(),x.length>0?this.logger.info(` ${x.length}/${p.files.length} generated files changed`):this.logger.info(" No generated files changed");let P=S.filesToWrite.length-x.length;P>0&&this.logger.info(` ${P} project files changed`);let C=i?.startSpan("writeFiles","build","application-spec-builder.ts");return await b(S.filesToWrite,{logger:this.logger,skipChecksum:!0}),C?.(),t&&await this.compile(i),{ok:!0,application:s.value,changedFiles:x,diagnostics:s.diagnostics,metrics:s.metrics,counts:s.counts}}async compile(e){let i=e?.startSpan("swcCompile(src)","build","application-spec-builder.ts");await S({sourceDir:"src",outDir:`./${x}/.swc/src`},{logger:this.logger}),i?.();let t=e?.startSpan("swcCompile(.phoenix)","build","application-spec-builder.ts");await S({sourceDir:x,outDir:`./${x}/.swc/${x}`},{logger:this.logger}),t?.()}readDiskContent=i=>{try{if(e(i))return t(i,"utf-8")}catch{}};cleanStaleGeneratedFiles(t){let a=new Set(["public",".swc","dist","phoenix-dev.log","phoenix-dev.log.1","phoenix-dev.log.2","variants","variant-recovery.json"]);try{if(!e(x))return;for(let e of r(x)){if(a.has(e)||t.has(e))continue;let r=n(x,e);try{let e=i(r);if(e.isSymbolicLink())continue;e.isDirectory()?o(r,{recursive:!0}):s(r),this.logger.debug(` Removed stale: ${r}`)}catch{}}}catch{}}}
@@ -17,10 +17,11 @@ interface DeploymentData {
17
17
  readonly embeddings: undefined;
18
18
  readonly chat: undefined;
19
19
  /**
20
- * What the deployment registers for the experimental assistant: the GraphQL SDL and prompt generated
21
- * from the `assistant` spec section, with its instructions and AI settings. `undefined` without one.
20
+ * Whether the deployment webhook supplies assistant setup from the resolved spec.
22
21
  */
23
- readonly assistant: DeploymentAssistant | undefined;
22
+ readonly assistant: boolean;
23
+ /** Generated locally for prepare-command diagnostics; never sent to the server. */
24
+ readonly assistantSetup: DeploymentAssistant | undefined;
24
25
  readonly assets: {
25
26
  readonly privateFilePaths: readonly string[];
26
27
  readonly publicFilePaths: readonly string[];
@@ -1,2 +1,2 @@
1
- import{RuntimeReferenceStore as e,buildPhoenixDefinitions as a,parseApplicationFiles as s}from"#package/application-spec";import{getAllPhxDefinitions as i}from"#package/domain";import{readApplicationFiles as t}from"./application-spec-file-reader.js";import{generateAssistantPrompt as o}from"./generate-assistant-prompt.js";import{readProjectAssets as r}from"./read-project-assets.js";import{swcEvalExpressionParser as p,swcModuleAnalyzer as n}from"./swc-module-analyzer.js";export const resolveApplicationSpecDeploymentData=async l=>{let{skipUpload:c,logger:m}=l,d=s({rawProjectFiles:await t({envs:{}}),phxDefinitions:a(i())},{analyzer:n,evalExpressionParser:p,referenceStore:new e,logger:m});if(!d.ok)throw Error(`Failed to parse application spec:
2
- ${d.errors.map(e=>` [${e.code}] ${e.message}`).join("\n")}`);let{configurator:h,admin:u}=d.value.applicationSpec,{configurationSchema:v}=h,f=u.configurationSchema,g=await r(),S=[],F=[],b=[],j=[];c||(S=g.privateAssetFiles,F=g.publicAssetFiles,b=g.privateAssetFilesFullPaths,j=g.publicAssetFilesFullPaths,m.debug(`Scanned assets: ${S.length} private files, ${F.length} public files`));let{appMetadata:A,infra:w}=d.value.applicationSpec,{assistant:k,assistantServerSettings:D}=h;return{schema:{...v.schema},schemaVersion:v.version,adminSchema:{...f.schema},adminSchemaVersion:f.version,applicationVersion:A.applicationVersion,publishedDataHash:h.dataSchemas.publishedDataHash,useAuthHook:A.useAuthHook,aclCanCreate:w.acl.canCreate,embeddings:void 0,chat:void 0,assistant:k&&D?{sdl:k.sdl,prompt:o(k),instructions:D.instructions??void 0,ai:D.ai}:void 0,assets:{privateFilePaths:S,publicFilePaths:F,privateFilesFullPaths:b,publicFilesFullPaths:j}}};
1
+ import{RuntimeReferenceStore as e,buildPhoenixDefinitions as a,parseApplicationFiles as s}from"#package/application-spec";import{generateAssistantPrompt as i,getAllPhxDefinitions as t}from"#package/domain";import{readApplicationFiles as o}from"./application-spec-file-reader.js";import{readProjectAssets as r}from"./read-project-assets.js";import{swcEvalExpressionParser as n,swcModuleAnalyzer as l}from"./swc-module-analyzer.js";export const resolveApplicationSpecDeploymentData=async p=>{let{skipUpload:c,logger:m}=p,u=s({rawProjectFiles:await o({envs:{}}),phxDefinitions:a(t())},{analyzer:l,evalExpressionParser:n,referenceStore:new e,logger:m});if(!u.ok)throw Error(`Failed to parse application spec:
2
+ ${u.errors.map(e=>` [${e.code}] ${e.message}`).join("\n")}`);let{configurator:d,admin:h}=u.value.applicationSpec,{configurationSchema:v}=d,f=h.configurationSchema,S=await r(),g=[],F=[],b=[],A=[];c||(g=S.privateAssetFiles,F=S.publicAssetFiles,b=S.privateAssetFilesFullPaths,A=S.publicAssetFilesFullPaths,m.debug(`Scanned assets: ${g.length} private files, ${F.length} public files`));let{appMetadata:j,infra:w}=u.value.applicationSpec,{assistant:k,assistantServerSettings:D}=d;return{schema:{...v.schema},schemaVersion:v.version,adminSchema:{...f.schema},adminSchemaVersion:f.version,applicationVersion:j.applicationVersion,publishedDataHash:d.dataSchemas.publishedDataHash,useAuthHook:j.useAuthHook,aclCanCreate:w.acl.canCreate,embeddings:void 0,chat:void 0,assistant:null!==k&&null!==D,assistantSetup:k&&D?{sdl:k.sdl,prompt:i(k),instructions:D.instructions??void 0,ai:D.ai}:void 0,assets:{privateFilePaths:g,publicFilePaths:F,privateFilesFullPaths:b,publicFilesFullPaths:A}}};