@salsita-ai/sdk 0.50.0-develop.9db1e1f3bf → 0.50.0-develop.9eab66c5a9

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 (1048) hide show
  1. package/README.md +19 -14
  2. package/dist/admin/default-admin-elements.d.ts +9 -0
  3. package/dist/admin/default-admin-elements.js +1 -0
  4. package/dist/admin/default-elements/built-in-entity-element.d.ts +10 -0
  5. package/dist/admin/default-elements/built-in-entity-element.js +1 -0
  6. package/dist/admin/default-elements/built-in-layout-element.d.ts +10 -0
  7. package/dist/admin/default-elements/built-in-layout-element.js +1 -0
  8. package/dist/admin/default-elements/index.d.ts +2 -0
  9. package/dist/admin/default-elements/index.js +1 -0
  10. package/dist/admin/index.d.ts +1 -0
  11. package/dist/admin/index.js +1 -1
  12. package/dist/application/index.d.ts +1 -0
  13. package/dist/application/index.js +1 -1
  14. package/dist/application/mount-application.d.ts +1 -1
  15. package/dist/application/mount-application.js +1 -1
  16. package/dist/application/mount-configurator.d.ts +19 -0
  17. package/dist/application/mount-configurator.js +1 -0
  18. package/dist/application/mounted-application-runtime.d.ts +4 -0
  19. package/dist/application/mounted-application-runtime.js +1 -0
  20. package/dist/application/register-web-component.d.ts +2 -0
  21. package/dist/application/register-web-component.js +1 -0
  22. package/dist/application-spec/caching/content-diff.js +1 -1
  23. package/dist/application-spec/core/application-file.d.ts +0 -2
  24. package/dist/application-spec/core/application-file.js +1 -1
  25. package/dist/application-spec/errors/diagnostic-codes.d.ts +14 -0
  26. package/dist/application-spec/errors/diagnostic-codes.js +1 -1
  27. package/dist/application-spec/errors/diagnostic-messages.d.ts +15 -1
  28. package/dist/application-spec/errors/diagnostic-messages.js +1 -1
  29. package/dist/application-spec/generate-application/code/common/code-imports.js +1 -1
  30. package/dist/application-spec/generate-application/code/common/env-reader.js +2 -2
  31. package/dist/application-spec/generate-application/code/common/index.d.ts +1 -0
  32. package/dist/application-spec/generate-application/code/common/index.js +1 -1
  33. package/dist/application-spec/generate-application/code/common/single-quoted-string.d.ts +6 -0
  34. package/dist/application-spec/generate-application/code/common/single-quoted-string.js +1 -0
  35. package/dist/application-spec/generate-application/code/domain-runtime-files.js +1 -1
  36. package/dist/application-spec/generate-application/code/generate-application-code.d.ts +3 -2
  37. package/dist/application-spec/generate-application/code/generate-application-code.js +1 -1
  38. package/dist/application-spec/generate-application/code/project-scaffolding.d.ts +15 -14
  39. package/dist/application-spec/generate-application/code/project-scaffolding.js +2 -2
  40. package/dist/application-spec/generate-application/code/standalone-app-files.d.ts +2 -2
  41. package/dist/application-spec/generate-application/code/standalone-app-files.js +1 -1
  42. package/dist/application-spec/generate-application/code/story-files.js +1 -1
  43. package/dist/application-spec/generate-application/code/templates/admin-config.js +3 -0
  44. package/dist/application-spec/generate-application/code/templates/application-types.js +6 -6
  45. package/dist/application-spec/generate-application/code/templates/common/doc-comment.d.ts +2 -0
  46. package/dist/application-spec/generate-application/code/templates/common/doc-comment.js +1 -0
  47. package/dist/application-spec/generate-application/code/templates/common/format-property-key.d.ts +7 -0
  48. package/dist/application-spec/generate-application/code/templates/common/format-property-key.js +1 -0
  49. package/dist/application-spec/generate-application/code/templates/common/schema-to-type-string.js +3 -3
  50. package/dist/application-spec/generate-application/code/templates/configurator-config.js +6 -4
  51. package/dist/application-spec/generate-application/code/templates/configurator-globals.d.ts +2 -1
  52. package/dist/application-spec/generate-application/code/templates/configurator-globals.js +19 -6
  53. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/domain-factory-types.d.ts +35 -0
  54. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/domain-factory-types.js +5 -0
  55. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/index.d.ts +1 -0
  56. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/index.js +1 -0
  57. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-component-optics.d.ts +1 -1
  58. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-component-optics.js +6 -6
  59. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-domain-block.js +59 -63
  60. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.d.ts +8 -0
  61. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.js +1 -1
  62. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-presets.js +1 -1
  63. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-resources.js +13 -13
  64. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-states.d.ts +1 -1
  65. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-states.js +2 -2
  66. package/dist/application-spec/generate-application/code/templates/domain-spec/index.d.ts +2 -1
  67. package/dist/application-spec/generate-application/code/templates/domain-spec/index.js +1 -1
  68. package/dist/application-spec/generate-application/code/templates/eslint-config.d.ts +5 -0
  69. package/dist/application-spec/generate-application/code/templates/eslint-config.js +4 -5
  70. package/dist/application-spec/generate-application/code/templates/frontend-config.js +3 -5
  71. package/dist/application-spec/generate-application/code/templates/gitignore.js +0 -3
  72. package/dist/application-spec/generate-application/code/templates/global-definition/generate-action-types.js +7 -7
  73. package/dist/application-spec/generate-application/code/templates/global-definition/generate-assistant-form-element-types.d.ts +12 -0
  74. package/dist/application-spec/generate-application/code/templates/global-definition/generate-assistant-form-element-types.js +7 -0
  75. package/dist/application-spec/generate-application/code/templates/global-definition/generate-phx-types.d.ts +43 -0
  76. package/dist/application-spec/generate-application/code/templates/global-definition/generate-phx-types.js +33 -0
  77. package/dist/application-spec/generate-application/code/templates/global-definition/index.d.ts +2 -0
  78. package/dist/application-spec/generate-application/code/templates/global-definition/index.js +1 -1
  79. package/dist/application-spec/generate-application/code/templates/globals.js +24 -44
  80. package/dist/application-spec/generate-application/code/templates/index.d.ts +3 -3
  81. package/dist/application-spec/generate-application/code/templates/index.js +1 -1
  82. package/dist/application-spec/generate-application/code/templates/lingui-rc.d.ts +5 -0
  83. package/dist/application-spec/generate-application/code/templates/lingui-rc.js +4 -4
  84. package/dist/application-spec/generate-application/code/templates/prettier-config.d.ts +5 -0
  85. package/dist/application-spec/generate-application/code/templates/prettier-config.js +4 -5
  86. package/dist/application-spec/generate-application/code/templates/root-tsconfig.d.ts +6 -0
  87. package/dist/application-spec/generate-application/code/templates/root-tsconfig.js +2 -0
  88. package/dist/application-spec/generate-application/code/templates/skills/phoenix-cli-skill.js +1 -1
  89. package/dist/application-spec/generate-application/code/templates/skills/phoenix-create-configurator-skill.js +1 -1
  90. package/dist/application-spec/generate-application/code/templates/skills/phoenix-feedback-skill.js +5 -5
  91. package/dist/application-spec/generate-application/code/templates/skills/phoenix-review-skill.js +3 -3
  92. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill.js +1 -1
  93. package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.js +2 -2
  94. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.d.ts +32 -8
  95. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.js +2 -2
  96. package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.d.ts +58 -0
  97. package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.js +1 -0
  98. package/dist/application-spec/generate-application/code/templates/spec-code/index.d.ts +2 -0
  99. package/dist/application-spec/generate-application/code/templates/spec-code/index.js +1 -0
  100. package/dist/application-spec/generate-application/code/templates/spec-code/spec-code.d.ts +18 -0
  101. package/dist/application-spec/generate-application/code/templates/spec-code/spec-code.js +41 -0
  102. package/dist/application-spec/generate-application/code/templates/spec-messages/index.d.ts +1 -0
  103. package/dist/application-spec/generate-application/code/templates/spec-messages/index.js +1 -0
  104. package/dist/application-spec/generate-application/code/templates/spec-messages/spec-messages.d.ts +20 -0
  105. package/dist/application-spec/generate-application/code/templates/spec-messages/spec-messages.js +6 -0
  106. package/dist/application-spec/generate-application/code/templates/story/phx-module.d.ts +8 -2
  107. package/dist/application-spec/generate-application/code/templates/story/phx-module.js +15 -3
  108. package/dist/application-spec/generate-application/code/templates/story/wrapper.d.ts +3 -0
  109. package/dist/application-spec/generate-application/code/templates/story/wrapper.js +2 -1
  110. package/dist/application-spec/generate-application/code/templates/tsconfig.d.ts +5 -0
  111. package/dist/application-spec/generate-application/code/templates/tsconfig.js +1 -1
  112. package/dist/application-spec/generate-application/code/templates/webhook-index.d.ts +6 -1
  113. package/dist/application-spec/generate-application/code/templates/webhook-index.js +10 -1
  114. package/dist/application-spec/generate-application/code/templates/webhooks-config.js +2 -3
  115. package/dist/application-spec/generate-application/implementations/phx-application-types.d.ts +25 -0
  116. package/dist/application-spec/generate-application/implementations/phx-application-types.js +1 -0
  117. package/dist/application-spec/generate-application/implementations/phx-domain.d.ts +36 -0
  118. package/dist/application-spec/generate-application/implementations/phx-domain.js +1 -0
  119. package/dist/application-spec/generate-application/implementations/phx-model.d.ts +24 -0
  120. package/dist/application-spec/generate-application/implementations/phx-model.js +1 -0
  121. package/dist/application-spec/generate-application/implementations/phx.d.ts +22 -0
  122. package/dist/application-spec/generate-application/implementations/phx.js +1 -0
  123. package/dist/application-spec/generate-application/index.d.ts +4 -0
  124. package/dist/application-spec/generate-application/index.js +1 -1
  125. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.d.ts +6 -4
  126. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.js +1 -1
  127. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.d.ts +12 -4
  128. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.js +1 -1
  129. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-spec-runtime.d.ts +16 -0
  130. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-spec-runtime.js +1 -0
  131. package/dist/application-spec/generate-application/runtime/admin-runtime/states-runtime.d.ts +2 -2
  132. package/dist/application-spec/generate-application/runtime/application-runtime.d.ts +35 -8
  133. package/dist/application-spec/generate-application/runtime/application-runtime.js +1 -1
  134. package/dist/application-spec/generate-application/runtime/application-spec-slice.d.ts +71 -0
  135. package/dist/application-spec/generate-application/runtime/application-spec-slice.js +1 -0
  136. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.d.ts +7 -5
  137. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.js +1 -1
  138. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.d.ts +12 -5
  139. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.js +1 -1
  140. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-spec-runtime.d.ts +16 -0
  141. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-spec-runtime.js +1 -0
  142. package/dist/application-spec/generate-application/runtime/configurator-runtime/states-runtime.d.ts +2 -2
  143. package/dist/application-spec/generate-application/runtime/create-application.d.ts +57 -0
  144. package/dist/application-spec/generate-application/runtime/create-application.js +1 -0
  145. package/dist/application-spec/generate-application/runtime/factory-data/factory-data-runtime.d.ts +43 -0
  146. package/dist/application-spec/generate-application/runtime/factory-data/factory-data-runtime.js +1 -0
  147. package/dist/application-spec/generate-application/runtime/factory-data/index.d.ts +3 -0
  148. package/dist/application-spec/generate-application/runtime/factory-data/index.js +1 -0
  149. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.d.ts +13 -0
  150. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.js +1 -0
  151. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.d.ts +16 -0
  152. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.js +1 -0
  153. package/dist/application-spec/generate-application/runtime/index.d.ts +8 -0
  154. package/dist/application-spec/generate-application/runtime/index.js +1 -0
  155. package/dist/application-spec/generate-application/runtime/migrations/index.d.ts +1 -0
  156. package/dist/application-spec/generate-application/runtime/migrations/index.js +1 -0
  157. package/dist/application-spec/generate-application/runtime/migrations/migration-runtime.d.ts +53 -0
  158. package/dist/application-spec/generate-application/runtime/migrations/migration-runtime.js +1 -0
  159. package/dist/application-spec/generate-application/runtime/sections/assistant-runtime.d.ts +2 -2
  160. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.d.ts +2 -1
  161. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.js +1 -1
  162. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.d.ts +2 -1
  163. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.js +1 -1
  164. package/dist/application-spec/generate-application/runtime/sections/component-optic.d.ts +3 -0
  165. package/dist/application-spec/generate-application/runtime/sections/component-optic.js +1 -1
  166. package/dist/application-spec/generate-application/runtime/sections/data-runtime.d.ts +4 -4
  167. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.d.ts +15 -6
  168. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.js +1 -1
  169. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.d.ts +9 -5
  170. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.js +1 -1
  171. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.d.ts +3 -1
  172. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.js +1 -1
  173. package/dist/application-spec/generate-application/runtime/sections/theme-runtime.d.ts +2 -2
  174. package/dist/application-spec/generate-application/runtime/sections/transformers-runtime.d.ts +3 -3
  175. package/dist/application-spec/generate-application/runtime/spec-code/index.d.ts +2 -0
  176. package/dist/application-spec/generate-application/runtime/spec-code/index.js +1 -0
  177. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.d.ts +18 -0
  178. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.js +1 -0
  179. package/dist/application-spec/generate-application/runtime/spec-code/spec-code-module.d.ts +17 -0
  180. package/dist/application-spec/generate-application/runtime/spec-code/spec-code-module.js +1 -0
  181. package/dist/application-spec/generate-application/runtime/spec-runtime.d.ts +21 -0
  182. package/dist/application-spec/generate-application/runtime/spec-runtime.js +1 -0
  183. package/dist/application-spec/generate-application/runtime-spec/decode-runtime-spec.d.ts +9 -0
  184. package/dist/application-spec/generate-application/runtime-spec/decode-runtime-spec.js +1 -0
  185. package/dist/application-spec/generate-application/runtime-spec/encode-runtime-spec.d.ts +8 -0
  186. package/dist/application-spec/generate-application/runtime-spec/encode-runtime-spec.js +1 -0
  187. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.d.ts +28 -0
  188. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.js +1 -0
  189. package/dist/application-spec/generate-application/runtime-spec/index.d.ts +5 -0
  190. package/dist/application-spec/generate-application/runtime-spec/index.js +1 -0
  191. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.d.ts +103 -0
  192. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.js +1 -0
  193. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.d.ts +40 -0
  194. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.js +1 -0
  195. package/dist/application-spec/parse-application-files/categorize/categorize-files.d.ts +34 -0
  196. package/dist/application-spec/parse-application-files/categorize/categorize-files.js +1 -1
  197. package/dist/application-spec/parse-application-files/categorize/earlier-generated-editor-configs.d.ts +16 -0
  198. package/dist/application-spec/parse-application-files/categorize/earlier-generated-editor-configs.js +9 -0
  199. package/dist/application-spec/parse-application-files/categorize/earlier-generated-tsconfig.d.ts +9 -0
  200. package/dist/application-spec/parse-application-files/categorize/earlier-generated-tsconfig.js +1 -0
  201. package/dist/application-spec/parse-application-files/raw-spec/parse-yaml-spec-file.js +1 -1
  202. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.d.ts +33 -3
  203. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.js +1 -1
  204. package/dist/application-spec/parse-application-files/spec/application/admin-spec/admin-spec.js +1 -1
  205. package/dist/application-spec/parse-application-files/spec/application/configurator-spec/configurator-spec.js +1 -1
  206. package/dist/application-spec/parse-application-files/spec/common/index.d.ts +1 -0
  207. package/dist/application-spec/parse-application-files/spec/common/index.js +1 -1
  208. package/dist/application-spec/parse-application-files/spec/common/value-type/format-value-type.d.ts +3 -0
  209. package/dist/application-spec/parse-application-files/spec/common/value-type/format-value-type.js +1 -0
  210. package/dist/application-spec/parse-application-files/spec/common/value-type/index.d.ts +5 -0
  211. package/dist/application-spec/parse-application-files/spec/common/value-type/index.js +1 -0
  212. package/dist/application-spec/parse-application-files/spec/common/value-type/intersect-value-types.d.ts +6 -0
  213. package/dist/application-spec/parse-application-files/spec/common/value-type/intersect-value-types.js +1 -0
  214. package/dist/application-spec/parse-application-files/spec/common/value-type/is-assignable-value-type.d.ts +8 -0
  215. package/dist/application-spec/parse-application-files/spec/common/value-type/is-assignable-value-type.js +1 -0
  216. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type-at.d.ts +10 -0
  217. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type-at.js +1 -0
  218. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type.d.ts +98 -0
  219. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type.js +1 -0
  220. package/dist/application-spec/parse-application-files/spec/components/bindings/component-path.d.ts +13 -0
  221. package/dist/application-spec/parse-application-files/spec/components/bindings/component-path.js +1 -0
  222. package/dist/application-spec/parse-application-files/spec/components/bindings/index.d.ts +2 -0
  223. package/dist/application-spec/parse-application-files/spec/components/bindings/index.js +1 -1
  224. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding-type.d.ts +24 -0
  225. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding-type.js +1 -0
  226. package/dist/application-spec/parse-application-files/spec/components/component-state-type.d.ts +8 -0
  227. package/dist/application-spec/parse-application-files/spec/components/component-state-type.js +1 -0
  228. package/dist/application-spec/parse-application-files/spec/components/filter-criterion-types.d.ts +13 -0
  229. package/dist/application-spec/parse-application-files/spec/components/filter-criterion-types.js +1 -0
  230. package/dist/application-spec/parse-application-files/spec/components/static-entity-id.d.ts +14 -0
  231. package/dist/application-spec/parse-application-files/spec/components/static-entity-id.js +1 -0
  232. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.d.ts +6 -0
  233. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.js +1 -1
  234. package/dist/application-spec/parse-application-files/spec/components/user-components.d.ts +7 -4
  235. package/dist/application-spec/parse-application-files/spec/components/user-components.js +1 -1
  236. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.d.ts +24 -0
  237. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.js +1 -0
  238. package/dist/application-spec/parse-application-files/spec/expressions/expression-read.d.ts +13 -0
  239. package/dist/application-spec/parse-application-files/spec/expressions/expression-read.js +1 -0
  240. package/dist/application-spec/parse-application-files/spec/expressions/expression-value-type.d.ts +9 -0
  241. package/dist/application-spec/parse-application-files/spec/expressions/expression-value-type.js +1 -0
  242. package/dist/application-spec/parse-application-files/spec/expressions/expressions.d.ts +6 -2
  243. package/dist/application-spec/parse-application-files/spec/expressions/expressions.js +1 -1
  244. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.d.ts +3 -1
  245. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.js +1 -1
  246. package/dist/application-spec/parse-application-files/spec/invariants/invariants.d.ts +2 -2
  247. package/dist/application-spec/parse-application-files/spec/invariants/invariants.js +1 -1
  248. package/dist/application-spec/parse-application-files/spec/model/index.d.ts +1 -0
  249. package/dist/application-spec/parse-application-files/spec/model/index.js +1 -1
  250. package/dist/application-spec/parse-application-files/spec/model/model-type-resolution.d.ts +10 -0
  251. package/dist/application-spec/parse-application-files/spec/model/model-type-resolution.js +1 -0
  252. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-form-elements.d.ts +9 -0
  253. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-form-elements.js +1 -0
  254. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.d.ts +4 -1
  255. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.js +1 -1
  256. package/dist/client/authorized-client.d.ts +3 -1
  257. package/dist/client/authorized-client.js +1 -1
  258. package/dist/client/contract.d.ts +17 -0
  259. package/dist/client/index.d.ts +1 -1
  260. package/dist/client/local-authorized-client.d.ts +3 -1
  261. package/dist/client/local-authorized-client.js +1 -1
  262. package/dist/client/memory-authorized-client.d.ts +4 -1
  263. package/dist/client/memory-authorized-client.js +1 -1
  264. package/dist/client/phoenix-api.d.ts +694 -99
  265. package/dist/configurator/ConfiguratorApp.js +1 -1
  266. package/dist/configurator/app-loader-content/DefaultAppLoaderContent.d.ts +2 -0
  267. package/dist/configurator/app-loader-content/DefaultAppLoaderContent.js +5 -0
  268. package/dist/configurator/app-loader-content/index.d.ts +1 -0
  269. package/dist/configurator/app-loader-content/index.js +1 -0
  270. package/dist/configurator/application-runtime/extensions/selectors.js +1 -1
  271. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.d.ts +52 -3
  272. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.js +1 -1
  273. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.d.ts +40 -7
  274. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.js +1 -1
  275. package/dist/configurator/application-runtime/extensions/systems/camera-control-system/camera-control-system.d.ts +1 -1
  276. package/dist/configurator/application-runtime/extensions/systems/canvas-system.d.ts +8 -0
  277. package/dist/configurator/application-runtime/extensions/systems/canvas-system.js +1 -1
  278. package/dist/configurator/application-runtime/extensions/systems/export-system/export-busy-error.d.ts +8 -0
  279. package/dist/configurator/application-runtime/extensions/systems/export-system/export-busy-error.js +1 -0
  280. package/dist/configurator/application-runtime/extensions/systems/export-system/export-system.d.ts +23 -1
  281. package/dist/configurator/application-runtime/extensions/systems/export-system/export-system.js +1 -1
  282. package/dist/configurator/application-runtime/extensions/systems/graphql-system/close-unclosed-braces.d.ts +12 -0
  283. package/dist/configurator/application-runtime/extensions/systems/graphql-system/close-unclosed-braces.js +1 -0
  284. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.d.ts +14 -1
  285. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.js +1 -1
  286. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.d.ts +58 -5
  287. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.js +1 -1
  288. package/dist/configurator/application-runtime/extensions/systems/image-rendering-system/image-rendering-system.d.ts +14 -5
  289. package/dist/configurator/application-runtime/extensions/systems/image-rendering-system/image-rendering-system.js +1 -1
  290. package/dist/configurator/application-runtime/extensions/systems/index.d.ts +1 -1
  291. package/dist/configurator/common/configurator-interface.d.ts +135 -5
  292. package/dist/configurator/common/configurator-interface.js +1 -1
  293. package/dist/configurator/common/index.d.ts +3 -1
  294. package/dist/configurator/common/index.js +1 -1
  295. package/dist/configurator/common/use-reset-camera.d.ts +6 -0
  296. package/dist/configurator/common/use-reset-camera.js +1 -0
  297. package/dist/configurator/configuration-not-found-page/BuiltInConfigurationNotFoundPage.d.ts +5 -0
  298. package/dist/configurator/configuration-not-found-page/BuiltInConfigurationNotFoundPage.js +1 -0
  299. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.d.ts +6 -0
  300. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.js +1 -0
  301. package/dist/configurator/configuration-not-found-page/index.d.ts +2 -0
  302. package/dist/configurator/configuration-not-found-page/index.js +1 -0
  303. package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.d.ts +12 -0
  304. package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.js +1 -0
  305. package/dist/configurator/configurator-context/PresetSelectionProvider.js +1 -1
  306. package/dist/configurator/configurator-context/PreviewContextProvider.js +1 -1
  307. package/dist/configurator/configurator-context/ViewportStateSync.d.ts +2 -2
  308. package/dist/configurator/configurator-context/ViewportStateSync.js +1 -1
  309. package/dist/configurator/configurator-context/configurator-hooks/layout-hooks.d.ts +10 -0
  310. package/dist/configurator/configurator-context/configurator-routing/ConfiguratorRoutingProvider.js +1 -1
  311. package/dist/configurator/configurator-error-page/BuiltInConfiguratorErrorPage.d.ts +6 -0
  312. package/dist/configurator/configurator-error-page/BuiltInConfiguratorErrorPage.js +1 -0
  313. package/dist/configurator/configurator-error-page/ConfiguratorErrorPageElement.d.ts +7 -0
  314. package/dist/configurator/configurator-error-page/ConfiguratorErrorPageElement.js +1 -0
  315. package/dist/configurator/configurator-error-page/index.d.ts +2 -0
  316. package/dist/configurator/configurator-error-page/index.js +1 -0
  317. package/dist/configurator/index.d.ts +10 -0
  318. package/dist/configurator/index.js +1 -1
  319. package/dist/configurator/pages/ConfiguratorErrorPage.d.ts +0 -1
  320. package/dist/configurator/pages/ConfiguratorErrorPage.js +1 -1
  321. package/dist/configurator/pages/ConfiguratorNotFoundPage.js +1 -1
  322. package/dist/configurator/pages/DefaultConfiguratorLayout.d.ts +3 -2
  323. package/dist/configurator/pages/DefaultNotAuthenticatedPage.d.ts +8 -0
  324. package/dist/configurator/pages/DefaultNotAuthenticatedPage.js +1 -0
  325. package/dist/configurator/pages/DefaultPresetUi.d.ts +7 -0
  326. package/dist/configurator/pages/DefaultPresetUi.js +1 -0
  327. package/dist/configurator/pages/LoadedConfiguratorDetailPage.js +1 -1
  328. package/dist/configurator/pages/NewConfiguratorPage.js +1 -1
  329. package/dist/configurator/pages/PresetCreationErrorPage.d.ts +1 -1
  330. package/dist/configurator/pages/PresetCreationErrorPage.js +1 -1
  331. package/dist/configurator/pages/RootPage.js +1 -1
  332. package/dist/configurator/pages/configurator-layout-name.d.ts +2 -0
  333. package/dist/configurator/pages/configurator-layout-name.js +1 -0
  334. package/dist/configurator/pages/default-configurator-elements.d.ts +13 -0
  335. package/dist/configurator/pages/default-configurator-elements.js +1 -0
  336. package/dist/configurator/pages/default-elements/built-in-entity-element.d.ts +10 -0
  337. package/dist/configurator/pages/default-elements/built-in-entity-element.js +1 -0
  338. package/dist/configurator/pages/default-elements/built-in-layout-element.d.ts +10 -0
  339. package/dist/configurator/pages/default-elements/built-in-layout-element.js +1 -0
  340. package/dist/configurator/pages/default-elements/domain-control-elements.d.ts +6 -0
  341. package/dist/configurator/pages/default-elements/domain-control-elements.js +1 -0
  342. package/dist/configurator/pages/default-elements/index.d.ts +5 -0
  343. package/dist/configurator/pages/default-elements/index.js +1 -0
  344. package/dist/configurator/pages/default-elements/recipe-panel-elements.d.ts +3 -0
  345. package/dist/configurator/pages/default-elements/recipe-panel-elements.js +1 -0
  346. package/dist/configurator/pages/default-elements/scene-controls/BuiltInAddEntityFab.d.ts +3 -0
  347. package/dist/configurator/pages/default-elements/scene-controls/BuiltInAddEntityFab.js +1 -0
  348. package/dist/configurator/pages/default-elements/scene-controls/BuiltInDeleteEntityFab.d.ts +3 -0
  349. package/dist/configurator/pages/default-elements/scene-controls/BuiltInDeleteEntityFab.js +1 -0
  350. package/dist/configurator/pages/default-elements/scene-controls/BuiltInNavigationHotspot.d.ts +3 -0
  351. package/dist/configurator/pages/default-elements/scene-controls/BuiltInNavigationHotspot.js +1 -0
  352. package/dist/configurator/pages/default-elements/scene-controls/BuiltInSelectionHotspot.d.ts +3 -0
  353. package/dist/configurator/pages/default-elements/scene-controls/BuiltInSelectionHotspot.js +1 -0
  354. package/dist/configurator/pages/default-elements/scene-controls/BuiltInToolMenuFab.d.ts +3 -0
  355. package/dist/configurator/pages/default-elements/scene-controls/BuiltInToolMenuFab.js +1 -0
  356. package/dist/configurator/pages/default-elements/scene-controls/index.d.ts +6 -0
  357. package/dist/configurator/pages/default-elements/scene-controls/index.js +1 -0
  358. package/dist/configurator/pages/default-elements/scene-controls/scene-control-elements.d.ts +6 -0
  359. package/dist/configurator/pages/default-elements/scene-controls/scene-control-elements.js +1 -0
  360. package/dist/configurator/pages/default-elements/sidebar-footer-elements.d.ts +7 -0
  361. package/dist/configurator/pages/default-elements/sidebar-footer-elements.js +1 -0
  362. package/dist/configurator/pages/default-elements/toolbar-elements.d.ts +7 -0
  363. package/dist/configurator/pages/default-elements/toolbar-elements.js +1 -0
  364. package/dist/configurator/pages/error-boundaries/GeneralErrorBoundary.js +1 -1
  365. package/dist/configurator/pages/error-boundaries/LoadingErrorBoundary.js +1 -1
  366. package/dist/configurator/pages/index.d.ts +1 -0
  367. package/dist/configurator/pages/index.js +1 -1
  368. package/dist/configurator/preset-screen-elements/PresetDeviceNotSupportedElement.d.ts +4 -0
  369. package/dist/configurator/preset-screen-elements/PresetDeviceNotSupportedElement.js +1 -0
  370. package/dist/configurator/preset-screen-elements/PresetPageActionElement.d.ts +4 -0
  371. package/dist/configurator/preset-screen-elements/PresetPageActionElement.js +1 -0
  372. package/dist/configurator/preset-screen-elements/index.d.ts +2 -0
  373. package/dist/configurator/preset-screen-elements/index.js +1 -0
  374. package/dist/configurator/scene/index.d.ts +1 -0
  375. package/dist/configurator/scene/index.js +1 -1
  376. package/dist/configurator/scene/scene-controls/DeleteEntityFab.js +1 -1
  377. package/dist/configurator/scene/scene-controls/SelectionHotspot.js +1 -1
  378. package/dist/configurator/scene/scene-controls/ToolFab.d.ts +4 -0
  379. package/dist/configurator/scene/scene-controls/ToolFab.js +1 -1
  380. package/dist/configurator/scene/scene-controls/use-scene-control-tooltip.d.ts +2 -1
  381. package/dist/configurator/scene/scene-entity/scene-controls/SceneEntityHtmlHotspots.js +1 -1
  382. package/dist/configurator/toolbar-actions/index.d.ts +3 -0
  383. package/dist/configurator/toolbar-actions/index.js +1 -0
  384. package/dist/configurator/toolbar-actions/use-assistant-panel.d.ts +18 -0
  385. package/dist/configurator/toolbar-actions/use-assistant-panel.js +1 -0
  386. package/dist/configurator/toolbar-actions/use-measurements.d.ts +35 -0
  387. package/dist/configurator/toolbar-actions/use-measurements.js +1 -0
  388. package/dist/configurator/toolbar-actions/use-toolbar-actions.d.ts +100 -0
  389. package/dist/configurator/toolbar-actions/use-toolbar-actions.js +1 -0
  390. package/dist/configurator/toolbar-actions/use-toolbar-help.d.ts +7 -0
  391. package/dist/configurator/toolbar-actions/use-toolbar-help.js +1 -0
  392. package/dist/configurator/ui/assistant/AssistantChips.d.ts +10 -3
  393. package/dist/configurator/ui/assistant/AssistantChips.js +1 -1
  394. package/dist/configurator/ui/assistant/AssistantMarkdown.d.ts +7 -2
  395. package/dist/configurator/ui/assistant/AssistantMarkdown.js +1 -1
  396. package/dist/configurator/ui/assistant/AssistantPanel.js +1 -1
  397. package/dist/configurator/ui/assistant/AssistantThread.js +1 -1
  398. package/dist/configurator/ui/assistant/alert/AssistantAlert.d.ts +8 -0
  399. package/dist/configurator/ui/assistant/alert/AssistantAlert.js +1 -0
  400. package/dist/configurator/ui/assistant/alert/index.d.ts +2 -0
  401. package/dist/configurator/ui/assistant/alert/index.js +1 -0
  402. package/dist/configurator/ui/assistant/alert/remark-alerts.d.ts +10 -0
  403. package/dist/configurator/ui/assistant/alert/remark-alerts.js +1 -0
  404. package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.d.ts +1 -1
  405. package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.js +1 -1
  406. package/dist/configurator/ui/assistant/entity-link/entity-link-state.d.ts +1 -1
  407. package/dist/configurator/ui/assistant/entity-link/index.d.ts +0 -1
  408. package/dist/configurator/ui/assistant/entity-link/index.js +1 -1
  409. package/dist/configurator/ui/assistant/form/AssistantForm.d.ts +19 -0
  410. package/dist/configurator/ui/assistant/form/AssistantForm.js +1 -0
  411. package/dist/configurator/ui/assistant/form/compose-answer.d.ts +11 -0
  412. package/dist/configurator/ui/assistant/form/compose-answer.js +1 -0
  413. package/dist/configurator/ui/assistant/form/describe-build-errors.d.ts +6 -0
  414. package/dist/configurator/ui/assistant/form/describe-build-errors.js +1 -0
  415. package/dist/configurator/ui/assistant/form/form-model.d.ts +37 -0
  416. package/dist/configurator/ui/assistant/form/form-model.js +1 -0
  417. package/dist/configurator/ui/assistant/form/form-state.d.ts +4 -0
  418. package/dist/configurator/ui/assistant/form/form-state.js +1 -0
  419. package/dist/configurator/ui/assistant/form/index.d.ts +4 -0
  420. package/dist/configurator/ui/assistant/form/index.js +1 -0
  421. package/dist/configurator/ui/assistant/form/parse-form-block.d.ts +10 -0
  422. package/dist/configurator/ui/assistant/form/parse-form-block.js +1 -0
  423. package/dist/configurator/ui/assistant/form/read-form-attributes.d.ts +13 -0
  424. package/dist/configurator/ui/assistant/form/read-form-attributes.js +1 -0
  425. package/dist/configurator/ui/assistant/form/registry/built-in-form-elements.d.ts +3 -0
  426. package/dist/configurator/ui/assistant/form/registry/built-in-form-elements.js +1 -0
  427. package/dist/configurator/ui/assistant/form/registry/create-assistant-form-element.d.ts +31 -0
  428. package/dist/configurator/ui/assistant/form/registry/create-assistant-form-element.js +1 -0
  429. package/dist/configurator/ui/assistant/form/registry/form-element-definition.d.ts +16 -0
  430. package/dist/configurator/ui/assistant/form/registry/form-element-definition.js +1 -0
  431. package/dist/configurator/ui/assistant/form/registry/form-registry.d.ts +31 -0
  432. package/dist/configurator/ui/assistant/form/registry/form-registry.js +1 -0
  433. package/dist/configurator/ui/assistant/form/registry/index.d.ts +6 -0
  434. package/dist/configurator/ui/assistant/form/registry/index.js +1 -0
  435. package/dist/configurator/ui/assistant/form/registry/use-form-registry.d.ts +8 -0
  436. package/dist/configurator/ui/assistant/form/registry/use-form-registry.js +1 -0
  437. package/dist/configurator/ui/assistant/form-elements/FormCard.d.ts +9 -0
  438. package/dist/configurator/ui/assistant/form-elements/FormCard.js +1 -0
  439. package/dist/configurator/ui/assistant/form-elements/FormConfirm.d.ts +9 -0
  440. package/dist/configurator/ui/assistant/form-elements/FormConfirm.js +1 -0
  441. package/dist/configurator/ui/assistant/form-elements/FormGroup.d.ts +6 -0
  442. package/dist/configurator/ui/assistant/form-elements/FormGroup.js +1 -0
  443. package/dist/configurator/ui/assistant/form-elements/FormNumber.d.ts +9 -0
  444. package/dist/configurator/ui/assistant/form-elements/FormNumber.js +1 -0
  445. package/dist/configurator/ui/assistant/form-elements/FormOptions.d.ts +6 -0
  446. package/dist/configurator/ui/assistant/form-elements/FormOptions.js +1 -0
  447. package/dist/configurator/ui/assistant/form-elements/FormReply.d.ts +6 -0
  448. package/dist/configurator/ui/assistant/form-elements/FormReply.js +1 -0
  449. package/dist/configurator/ui/assistant/form-elements/FormSwatch.d.ts +10 -0
  450. package/dist/configurator/ui/assistant/form-elements/FormSwatch.js +1 -0
  451. package/dist/configurator/ui/assistant/form-elements/FormText.d.ts +6 -0
  452. package/dist/configurator/ui/assistant/form-elements/FormText.js +1 -0
  453. package/dist/configurator/ui/assistant/form-elements/clamp-form-number.d.ts +10 -0
  454. package/dist/configurator/ui/assistant/form-elements/clamp-form-number.js +1 -0
  455. package/dist/configurator/ui/assistant/form-elements/form-element-props.d.ts +38 -0
  456. package/dist/configurator/ui/assistant/form-elements/form-element-props.js +1 -0
  457. package/dist/configurator/ui/assistant/form-elements/index.d.ts +9 -0
  458. package/dist/configurator/ui/assistant/form-elements/index.js +1 -0
  459. package/dist/configurator/ui/assistant/index.d.ts +3 -0
  460. package/dist/configurator/ui/assistant/index.js +1 -1
  461. package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.d.ts +16 -0
  462. package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.js +1 -0
  463. package/dist/configurator/ui/assistant/reference-link/assistant-link-target.d.ts +34 -0
  464. package/dist/configurator/ui/assistant/reference-link/assistant-link-target.js +1 -0
  465. package/dist/configurator/ui/assistant/reference-link/assistant-reference-details.d.ts +25 -0
  466. package/dist/configurator/ui/assistant/reference-link/assistant-reference-details.js +1 -0
  467. package/dist/configurator/ui/assistant/reference-link/index.d.ts +3 -0
  468. package/dist/configurator/ui/assistant/reference-link/index.js +1 -0
  469. package/dist/configurator/ui/assistant/reference-link/reference-styles.d.ts +12 -0
  470. package/dist/configurator/ui/assistant/reference-link/reference-styles.js +1 -0
  471. package/dist/configurator/ui/assistant/reference-link/use-assistant-reference-details.d.ts +8 -0
  472. package/dist/configurator/ui/assistant/reference-link/use-assistant-reference-details.js +1 -0
  473. package/dist/configurator/ui/assistant/resource-image/AssistantImage.d.ts +9 -0
  474. package/dist/configurator/ui/assistant/resource-image/AssistantImage.js +1 -0
  475. package/dist/configurator/ui/assistant/resource-image/index.d.ts +3 -0
  476. package/dist/configurator/ui/assistant/resource-image/index.js +1 -0
  477. package/dist/configurator/ui/assistant/resource-image/resource-path.d.ts +2 -0
  478. package/dist/configurator/ui/assistant/resource-image/resource-path.js +1 -0
  479. package/dist/configurator/ui/assistant/resource-image/use-resource-image-url.d.ts +5 -0
  480. package/dist/configurator/ui/assistant/resource-image/use-resource-image-url.js +1 -0
  481. package/dist/configurator/ui/assistant/screenshots/ScreenshotThumbnails.d.ts +9 -0
  482. package/dist/configurator/ui/assistant/screenshots/ScreenshotThumbnails.js +1 -0
  483. package/dist/configurator/ui/assistant/screenshots/index.d.ts +2 -0
  484. package/dist/configurator/ui/assistant/screenshots/index.js +1 -0
  485. package/dist/configurator/ui/assistant/screenshots/tool-screenshots.d.ts +22 -0
  486. package/dist/configurator/ui/assistant/screenshots/tool-screenshots.js +1 -0
  487. package/dist/configurator/ui/assistant/screenshots/use-screenshot-src.d.ts +8 -0
  488. package/dist/configurator/ui/assistant/screenshots/use-screenshot-src.js +1 -0
  489. package/dist/configurator/ui/assistant/streamed-markdown.d.ts +4 -2
  490. package/dist/configurator/ui/assistant/streamed-markdown.js +2 -2
  491. package/dist/configurator/ui/assistant/thread-items.d.ts +8 -1
  492. package/dist/configurator/ui/assistant/thread-items.js +1 -1
  493. package/dist/configurator/ui/assistant/tool-chip.js +1 -1
  494. package/dist/configurator/ui/assistant/use-follow-stream.js +1 -1
  495. package/dist/configurator/ui/configurator-layout/slots/canvas/LayoutCanvas.js +1 -1
  496. package/dist/configurator/ui/configurator-layout/slots/canvas/SharedCanvas.js +1 -1
  497. package/dist/configurator/ui/configurator-layout/slots/mobile-tabs/use-mobile-tabs.d.ts +1 -1
  498. package/dist/configurator/ui/configurator-layout/slots/mobile-tabs/use-mobile-tabs.js +1 -1
  499. package/dist/configurator/ui/configurator-layout/slots/services/InvariantViolations.js +1 -1
  500. package/dist/configurator/ui/configurator-layout/slots/services/Services.js +1 -1
  501. package/dist/configurator/ui/configurator-layout/slots/sidebar-tabs/use-sidebar-tabs.d.ts +1 -1
  502. package/dist/configurator/ui/configurator-layout/slots/sidebar-tabs/use-sidebar-tabs.js +1 -1
  503. package/dist/configurator/ui/configurator-layout/universal/ExportingOverlay.d.ts +5 -0
  504. package/dist/configurator/ui/configurator-layout/universal/ExportingOverlay.js +1 -0
  505. package/dist/configurator/ui/configurator-layout/universal/Layout.js +1 -1
  506. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.d.ts +1 -1
  507. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.js +1 -1
  508. package/dist/configurator/ui/configurator-layout/universal/use-scene-safe-area.d.ts +1 -1
  509. package/dist/configurator/ui/index.d.ts +1 -0
  510. package/dist/configurator/ui/index.js +1 -1
  511. package/dist/configurator/ui/legacy/layout/common/CommonFinalizeButton.js +1 -1
  512. package/dist/configurator/ui/legacy/layout/common/CommonSummaryButton.js +1 -1
  513. package/dist/configurator/ui/legacy/layout/common/CommonTopNavigation.js +1 -1
  514. package/dist/configurator/ui/legacy/layout/common/ReactiveInterfaceLayout.js +1 -1
  515. package/dist/configurator/ui/legacy/layout/common/ResponsiveFinalizeButton.js +1 -1
  516. package/dist/configurator/ui/legacy/layout/common/SummaryReadLayout.js +1 -1
  517. package/dist/configurator/ui/legacy/layout/simple/SimpleOwnerLayout.js +1 -1
  518. package/dist/configurator/ui/legacy/layout/simple/SimpleTopNavigation.js +1 -1
  519. package/dist/configurator/ui/legacy/layout/steps/StepsNavigation.js +1 -1
  520. package/dist/configurator/ui/legacy/layout/steps/StepsOwnerLayout.js +1 -1
  521. package/dist/configurator/ui/legacy/layout/steps/StepsSidebarFooter.js +1 -1
  522. package/dist/configurator/ui/legacy/layout/tabs/TabsOwnerLayout.js +1 -1
  523. package/dist/configurator/ui/legacy/toolbar/common/DimensionUnitSelector.js +1 -1
  524. package/dist/configurator/ui/legacy/toolbar/common/MeasurementsIndicatorsSwitch.js +1 -1
  525. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/FullscreenToolbarAction.js +1 -1
  526. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/HelpToolbarAction.js +1 -1
  527. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/MeasurementsToolbarAction.js +1 -1
  528. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/UndoRedoToolbarGroup.js +1 -1
  529. package/dist/configurator/ui/phoenix-layout-elements/AppLoader.d.ts +0 -7
  530. package/dist/configurator/ui/phoenix-layout-elements/AppLoader.js +2 -6
  531. package/dist/configurator/ui/phoenix-layout-elements/AssistantToolbarButton.js +1 -1
  532. package/dist/configurator/ui/phoenix-layout-elements/EnterFullscreenToolbarButton.js +1 -1
  533. package/dist/configurator/ui/phoenix-layout-elements/ExitFullscreenToolbarButton.js +1 -1
  534. package/dist/configurator/ui/phoenix-layout-elements/HelpToolbarButton.js +1 -1
  535. package/dist/configurator/ui/phoenix-layout-elements/LanguageMenuAction.js +1 -1
  536. package/dist/configurator/ui/phoenix-layout-elements/LanguageToolbarButton.js +1 -1
  537. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomOwnerUi.d.ts +1 -0
  538. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomOwnerUi.js +1 -1
  539. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomReadUi.d.ts +1 -0
  540. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomReadUi.js +1 -1
  541. package/dist/configurator/ui/phoenix-layout-elements/MeasurementsMenuAction.js +1 -1
  542. package/dist/configurator/ui/phoenix-layout-elements/MeasurementsToolbarButton.js +1 -1
  543. package/dist/configurator/ui/phoenix-layout-elements/RedoToolbarButton.js +1 -1
  544. package/dist/configurator/ui/phoenix-layout-elements/ShareToolbarButton.js +1 -1
  545. package/dist/configurator/ui/phoenix-layout-elements/UndoToolbarButton.js +1 -1
  546. package/dist/configurator/ui/phoenix-layout-elements/header/common/back-button/use-go-back-action.js +1 -1
  547. package/dist/configurator/ui/phoenix-layout-elements/header/common/horizontal-tabs/DesktopHorizontalTabs.js +1 -1
  548. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/DesktopNavigationSteps.d.ts +1 -1
  549. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/DesktopNavigationSteps.js +1 -1
  550. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.d.ts +2 -8
  551. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.js +1 -1
  552. package/dist/configurator/ui/phoenix-layout-elements/index.d.ts +8 -1
  553. package/dist/configurator/ui/phoenix-layout-elements/index.js +1 -1
  554. package/dist/configurator/ui/phoenix-layout-elements/measurements/DimensionUnitSelector.js +1 -1
  555. package/dist/configurator/ui/phoenix-layout-elements/measurements/MeasurementsIndicatorsSwitch.js +1 -1
  556. package/dist/configurator/ui/phoenix-layout-elements/share/ShareModal.js +1 -1
  557. package/dist/configurator/ui/phoenix-layout-elements/share/use-share.d.ts +7 -8
  558. package/dist/configurator/ui/phoenix-layout-elements/share/use-share.js +1 -1
  559. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/basic/BasicFinalizeButton.js +1 -1
  560. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/CustomFinalizeButton.js +1 -1
  561. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/EnterSummaryButton.js +1 -1
  562. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/FinalizeActions.js +1 -1
  563. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/NextStepButton.js +1 -1
  564. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/PreviousStepButton.js +1 -1
  565. package/dist/configurator/ui/preset-layout/CategoryPresetUi.js +1 -1
  566. package/dist/configurator/ui/preset-layout/PresetUi.d.ts +4 -2
  567. package/dist/configurator/ui/preset-layout/PresetUi.js +1 -1
  568. package/dist/configurator/ui/preset-layout/index.d.ts +6 -1
  569. package/dist/configurator/ui/preset-layout/index.js +1 -1
  570. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.d.ts +10 -0
  571. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.js +1 -0
  572. package/dist/configurator/ui/save-message-snackbars/index.d.ts +1 -0
  573. package/dist/configurator/ui/save-message-snackbars/index.js +1 -0
  574. package/dist/docs/complex-use-cases/focus-mode.mdx +2 -0
  575. package/dist/docs/controls/select-child-entity/cardselect.mdx +1 -0
  576. package/dist/docs/fabs/basic.mdx +6 -2
  577. package/dist/docs/index.json +95 -1
  578. package/dist/docs/integrations/webcomponent-api/basics.mdx +2 -0
  579. package/dist/docs/layouts/custom-layout.mdx +1643 -210
  580. package/dist/docs/layouts/gallery/ardent-compressor.mdx +3516 -0
  581. package/dist/docs/layouts/gallery/corvid-drone.mdx +3428 -0
  582. package/dist/docs/layouts/gallery/fenwick-window.mdx +2803 -0
  583. package/dist/docs/layouts/gallery/ferrule-bar-station.mdx +6567 -0
  584. package/dist/docs/layouts/gallery/kestrel-kettle.mdx +1858 -0
  585. package/dist/docs/layouts/gallery/nightjar-guitar.mdx +3698 -0
  586. package/dist/docs/layouts/gallery/sunfold-solar.mdx +2683 -0
  587. package/dist/docs/layouts/gallery/tidepool-aquascape.mdx +5203 -0
  588. package/dist/docs/other-features/client-side-rendering/declarative.mdx +1 -1
  589. package/dist/docs/other-features/error-5xx.mdx +1 -1
  590. package/dist/docs/other-features/navigation-hotspot.mdx +2 -0
  591. package/dist/docs/other-features/not-found-404.mdx +1 -1
  592. package/dist/docs/phoenix/clerk-sign-in.mdx +1 -1
  593. package/dist/docs/phoenix/components.mdx +6 -0
  594. package/dist/docs/phoenix/configurator-interface.mdx +245 -28
  595. package/dist/docs/phoenix/deployments.mdx +2 -6
  596. package/dist/docs/phoenix/domain-model.mdx +6 -1
  597. package/dist/docs/phoenix/finalization.mdx +1 -1
  598. package/dist/docs/phoenix/getting-started.mdx +6 -3
  599. package/dist/docs/phoenix/layout-slots.mdx +25 -23
  600. package/dist/docs/phoenix/localization.mdx +10 -6
  601. package/dist/docs/phoenix/migration-guide.mdx +24 -11
  602. package/dist/docs/phoenix/phoenix-cli.mdx +77 -22
  603. package/dist/docs/phoenix/project-structure.mdx +70 -33
  604. package/dist/docs/phoenix/quickstart.mdx +7 -7
  605. package/dist/docs/phoenix/sdk-builder-workflow.mdx +12 -10
  606. package/dist/docs/phoenix/sessions-and-access.mdx +2 -0
  607. package/dist/docs/phoenix/testing.mdx +8 -0
  608. package/dist/docs/phoenix/webhooks.mdx +21 -4
  609. package/dist/docs/selection-and-highlight/hotspots.mdx +2 -0
  610. package/dist/domain/application/application-config.d.ts +3 -1
  611. package/dist/domain/application/assistant/assistant-manifest.d.ts +16 -1
  612. package/dist/domain/application/assistant/assistant-resolved-manifest.d.ts +8 -1
  613. package/dist/domain/application/assistant/build-assistant-manifest.js +1 -1
  614. package/dist/domain/application/assistant/form/assistant-form-element-name.d.ts +11 -0
  615. package/dist/domain/application/assistant/form/assistant-form-element-name.js +8 -0
  616. package/dist/domain/application/assistant/form/assistant-form-elements.d.ts +174 -0
  617. package/dist/domain/application/assistant/form/assistant-form-elements.js +1 -0
  618. package/dist/domain/application/assistant/form/assistant-resource-path.d.ts +10 -0
  619. package/dist/domain/application/assistant/form/assistant-resource-path.js +1 -0
  620. package/dist/domain/application/assistant/form/index.d.ts +4 -0
  621. package/dist/domain/application/assistant/form/index.js +1 -0
  622. package/dist/domain/application/assistant/generate-assistant-prompt.d.ts +3 -0
  623. package/dist/domain/application/assistant/generate-assistant-prompt.js +1 -1
  624. package/dist/domain/application/assistant/index.d.ts +2 -1
  625. package/dist/domain/application/assistant/index.js +1 -1
  626. package/dist/domain/application/assistant/session-setup/apply-assistant-setup.js +1 -1
  627. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.d.ts +2 -0
  628. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.js +1 -1
  629. package/dist/domain/application/assistant-recipe-groups.d.ts +3 -1
  630. package/dist/domain/application/configurator-builder.d.ts +10 -1
  631. package/dist/domain/application/configurator-builder.js +1 -1
  632. package/dist/domain/application/index.d.ts +1 -1
  633. package/dist/domain/application/index.js +1 -1
  634. package/dist/domain/application/standard-properties.js +1 -1
  635. package/dist/domain/application/web-component-property.d.ts +3 -1
  636. package/dist/domain/application/web-component-property.js +1 -1
  637. package/dist/domain/available-system-components.d.ts +1 -1
  638. package/dist/domain/available-system-components.js +1 -1
  639. package/dist/domain/core/schema/extended-schema-validator.js +1 -1
  640. package/dist/domain/domain-builder.d.ts +9 -3
  641. package/dist/domain/domain-builder.js +1 -1
  642. package/dist/domain/domain-context/index.d.ts +1 -1
  643. package/dist/domain/domain-context/store-system/store-system.d.ts +5 -0
  644. package/dist/domain/domain-context/store-system/store-system.js +1 -1
  645. package/dist/domain/domain-context/undo-system.d.ts +28 -1
  646. package/dist/domain/domain-context/undo-system.js +1 -1
  647. package/dist/domain/domain-runtime/application.d.ts +39 -0
  648. package/dist/domain/domain-runtime/application.js +1 -0
  649. package/dist/domain/domain-runtime/domain-context/selectors.d.ts +1 -0
  650. package/dist/domain/domain-runtime/domain-context/selectors.js +1 -1
  651. package/dist/domain/domain-runtime/domain-runtime.d.ts +44 -4
  652. package/dist/domain/domain-runtime/domain-runtime.js +1 -1
  653. package/dist/domain/domain-runtime/environment/initialize.d.ts +1 -1
  654. package/dist/domain/domain-runtime/environment/types.d.ts +1 -1
  655. package/dist/domain/domain-runtime/errors/implementation-error-collector.d.ts +2 -0
  656. package/dist/domain/domain-runtime/errors/implementation-error-collector.js +1 -1
  657. package/dist/domain/domain-runtime/index.d.ts +2 -1
  658. package/dist/domain/domain-runtime/index.js +1 -1
  659. package/dist/domain/domain-runtime/spec/index.d.ts +1 -1
  660. package/dist/domain/domain-runtime/spec/index.js +1 -1
  661. package/dist/domain/domain-runtime/spec/initialize.js +1 -1
  662. package/dist/domain/domain-runtime/spec/module-checks/element-registration.d.ts +27 -12
  663. package/dist/domain/domain-runtime/spec/module-checks/element-registration.js +1 -1
  664. package/dist/domain/domain-runtime/spec/module-checks/find-assistant-form-element-errors.d.ts +12 -0
  665. package/dist/domain/domain-runtime/spec/module-checks/find-assistant-form-element-errors.js +1 -0
  666. package/dist/domain/domain-runtime/spec/module-checks/index.d.ts +3 -1
  667. package/dist/domain/domain-runtime/spec/module-checks/index.js +1 -1
  668. package/dist/domain/domain-runtime/spec/module-checks/merge-expression-modules.d.ts +23 -0
  669. package/dist/domain/domain-runtime/spec/module-checks/merge-expression-modules.js +1 -0
  670. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.d.ts +3 -4
  671. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.js +1 -1
  672. package/dist/domain/domain-runtime/spec/selectors.d.ts +3 -1
  673. package/dist/domain/domain-runtime/spec/selectors.js +1 -1
  674. package/dist/domain/domain-runtime/spec/types.d.ts +2 -0
  675. package/dist/domain/domain-runtime/web-component/actions.d.ts +3 -0
  676. package/dist/domain/domain-runtime/web-component/actions.js +1 -1
  677. package/dist/domain/domain-runtime/web-component/initialize.d.ts +1 -0
  678. package/dist/domain/domain-runtime/web-component/initialize.js +1 -1
  679. package/dist/domain/domain-runtime/web-component/selectors.d.ts +2 -0
  680. package/dist/domain/domain-runtime/web-component/selectors.js +1 -1
  681. package/dist/domain/domain-runtime/web-component/types.d.ts +6 -3
  682. package/dist/domain/extensions/export-images/agent-screenshot.d.ts +24 -0
  683. package/dist/domain/extensions/export-images/agent-screenshot.js +1 -0
  684. package/dist/domain/extensions/{client-side-image.d.ts → export-images/client-side-image.d.ts} +2 -2
  685. package/dist/domain/extensions/export-images/client-side-image.js +1 -0
  686. package/dist/domain/extensions/export-images/index.d.ts +3 -0
  687. package/dist/domain/extensions/export-images/index.js +1 -0
  688. package/dist/domain/extensions/{save-template-thumbnail.d.ts → export-images/save-template-thumbnail.d.ts} +2 -2
  689. package/dist/domain/extensions/export-images/save-template-thumbnail.js +1 -0
  690. package/dist/domain/extensions/index.d.ts +1 -2
  691. package/dist/domain/extensions/index.js +1 -1
  692. package/dist/domain/mocks/create-mock-domain-runtime.d.ts +9 -0
  693. package/dist/domain/system-components/child-entity-selection.js +1 -1
  694. package/dist/domain/system-components/common/scene-entity-control-schema.d.ts +3 -0
  695. package/dist/domain/system-components/common/scene-entity-control-schema.js +1 -1
  696. package/dist/editor/Editor.d.ts +7 -0
  697. package/dist/editor/Editor.js +1 -1
  698. package/dist/editor/domain-editors/DomainSpecContext.js +1 -1
  699. package/dist/editor/domain-editors/apply-spec-update.d.ts +10 -2
  700. package/dist/editor/domain-editors/apply-spec-update.js +1 -1
  701. package/dist/editor/domain-editors/use-implementation-files.d.ts +6 -14
  702. package/dist/editor/domain-editors/use-implementation-files.js +1 -1
  703. package/dist/editor/mocks/CreateMockYaml.js +2 -2
  704. package/dist/editor/mocks/EditorMockContext.d.ts +2 -0
  705. package/dist/editor/mocks/EditorMockContext.js +1 -1
  706. package/dist/editor/screenshot/ScreenshotHandler.js +1 -1
  707. package/dist/globals/index.d.ts +2 -0
  708. package/dist/i18n/locales/cs/messages.js +1 -1
  709. package/dist/i18n/locales/da/messages.js +1 -1
  710. package/dist/i18n/locales/de/messages.js +1 -1
  711. package/dist/i18n/locales/de-AT/messages.js +1 -1
  712. package/dist/i18n/locales/en/messages.js +1 -1
  713. package/dist/i18n/locales/en-AU/messages.js +1 -1
  714. package/dist/i18n/locales/en-GB/messages.js +1 -1
  715. package/dist/i18n/locales/es/messages.js +1 -1
  716. package/dist/i18n/locales/fr/messages.js +1 -1
  717. package/dist/i18n/locales/hu/messages.js +1 -1
  718. package/dist/i18n/locales/it/messages.js +1 -1
  719. package/dist/i18n/locales/nl/messages.js +1 -1
  720. package/dist/i18n/locales/pl/messages.js +1 -1
  721. package/dist/i18n/locales/pt/messages.js +1 -1
  722. package/dist/i18n/locales/ro/messages.js +1 -1
  723. package/dist/i18n/locales/sk/messages.js +1 -1
  724. package/dist/i18n/locales/tr/messages.js +1 -1
  725. package/dist/legacy/domain-cli/utils/cache.d.ts +1 -1
  726. package/dist/legacy/domain-cli/utils/cache.js +1 -1
  727. package/dist/legacy/domain-spec/__generated/domain-schema.d.ts +95 -80
  728. package/dist/legacy/domain-spec/spec/domain-spec.js +1 -1
  729. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/claude-md.d.ts +1 -1
  730. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/cursor-rules.d.ts +1 -1
  731. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.d.ts +1 -1
  732. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.js +13 -2
  733. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-admin.js +15 -14
  734. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-configurator.js +14 -12
  735. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-admin.js +14 -13
  736. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-configurator.js +13 -11
  737. package/dist/phoenix/application-spec/application-spec-builder.d.ts +0 -2
  738. package/dist/phoenix/application-spec/application-spec-builder.js +1 -1
  739. package/dist/phoenix/application-spec/generate-application-spec-project.d.ts +0 -2
  740. package/dist/phoenix/application-spec/generate-application-spec-project.js +2 -2
  741. package/dist/phoenix/application-spec/generate-application-spec-story.js +2 -2
  742. package/dist/phoenix/application-spec/generate-project-files.d.ts +0 -2
  743. package/dist/phoenix/application-spec/project-files.js +1 -1
  744. package/dist/phoenix/application-spec/resolve-deployment-data.d.ts +11 -0
  745. package/dist/phoenix/application-spec/resolve-deployment-data.js +2 -2
  746. package/dist/phoenix/bin.d.ts +2 -0
  747. package/dist/phoenix/bin.js +2 -0
  748. package/dist/phoenix/check-configs/built-in-eslint-config.d.ts +9 -0
  749. package/dist/phoenix/check-configs/built-in-eslint-config.js +1 -0
  750. package/dist/phoenix/check-configs/eslint-config.d.ts +10 -0
  751. package/dist/phoenix/check-configs/eslint-config.js +1 -0
  752. package/dist/phoenix/check-configs/index.d.ts +8 -0
  753. package/dist/phoenix/check-configs/index.js +1 -0
  754. package/dist/phoenix/check-configs/typescript-project.d.ts +5 -0
  755. package/dist/phoenix/check-configs/typescript-project.js +1 -0
  756. package/dist/phoenix/cli.d.ts +0 -1
  757. package/dist/phoenix/cli.js +1 -2
  758. package/dist/phoenix/commands/build.js +1 -1
  759. package/dist/phoenix/commands/check.js +1 -1
  760. package/dist/phoenix/commands/clean.js +1 -1
  761. package/dist/phoenix/commands/deploy.js +2 -2
  762. package/dist/phoenix/commands/deps/deps.d.ts +73 -0
  763. package/dist/phoenix/commands/deps/deps.js +3 -0
  764. package/dist/phoenix/commands/deps/index.d.ts +1 -0
  765. package/dist/phoenix/commands/deps/index.js +1 -0
  766. package/dist/phoenix/commands/deps/sdk-manifest.d.ts +12 -0
  767. package/dist/phoenix/commands/deps/sdk-manifest.js +1 -0
  768. package/dist/phoenix/commands/dev.js +5 -5
  769. package/dist/phoenix/commands/fix.js +1 -1
  770. package/dist/phoenix/commands/generated-env-markers.d.ts +1 -0
  771. package/dist/phoenix/commands/generated-env-markers.js +1 -1
  772. package/dist/phoenix/commands/index.d.ts +1 -0
  773. package/dist/phoenix/commands/index.js +1 -1
  774. package/dist/phoenix/commands/init.d.ts +17 -5
  775. package/dist/phoenix/commands/init.js +1 -1
  776. package/dist/phoenix/commands/link.js +1 -1
  777. package/dist/phoenix/commands/prettier.js +1 -1
  778. package/dist/phoenix/commands/sync.js +1 -1
  779. package/dist/phoenix/commands/unlink.js +1 -1
  780. package/dist/phoenix/services/application-spec-project-watcher.d.ts +5 -3
  781. package/dist/phoenix/services/application-spec-project-watcher.js +3 -3
  782. package/dist/phoenix/services/index.d.ts +1 -0
  783. package/dist/phoenix/services/index.js +1 -1
  784. package/dist/phoenix/services/lingui.d.ts +11 -0
  785. package/dist/phoenix/services/lingui.js +1 -1
  786. package/dist/phoenix/services/prepare-development-environment.js +1 -1
  787. package/dist/phoenix/services/swc.js +1 -1
  788. package/dist/phoenix/services/vite-config.js +1 -1
  789. package/dist/phoenix/utils/index.d.ts +4 -2
  790. package/dist/phoenix/utils/index.js +1 -1
  791. package/dist/phoenix/utils/node-version/index.d.ts +1 -0
  792. package/dist/phoenix/utils/node-version/index.js +1 -0
  793. package/dist/phoenix/utils/node-version/supported-node-version.d.ts +12 -0
  794. package/dist/phoenix/utils/node-version/supported-node-version.js +4 -0
  795. package/dist/phoenix/utils/package-info.d.ts +0 -9
  796. package/dist/phoenix/utils/package-info.js +1 -1
  797. package/dist/phoenix/utils/package-manager/index.d.ts +2 -0
  798. package/dist/phoenix/utils/package-manager/index.js +1 -0
  799. package/dist/phoenix/utils/package-manager/package-manager-commands.d.ts +19 -0
  800. package/dist/phoenix/utils/package-manager/package-manager-commands.js +1 -0
  801. package/dist/phoenix/utils/package-manager/pnpm-project.d.ts +9 -0
  802. package/dist/phoenix/utils/package-manager/pnpm-project.js +1 -0
  803. package/dist/phoenix/utils/run-command.d.ts +11 -0
  804. package/dist/phoenix/utils/run-command.js +1 -1
  805. package/dist/phoenix/utils/sdk-tool/index.d.ts +1 -0
  806. package/dist/phoenix/utils/sdk-tool/index.js +1 -0
  807. package/dist/phoenix/utils/sdk-tool/resolve-sdk-tool-bin.d.ts +15 -0
  808. package/dist/phoenix/utils/sdk-tool/resolve-sdk-tool-bin.js +1 -0
  809. package/dist/react-sdk/application-runtime/common-services/analytics/analytics-service.d.ts +1 -1
  810. package/dist/{configurator/common → react-sdk/application-runtime/common-services/analytics}/frontend-analytics.d.ts +4 -0
  811. package/dist/react-sdk/application-runtime/common-services/analytics/index.d.ts +1 -0
  812. package/dist/react-sdk/application-runtime/common-services/analytics/index.js +1 -1
  813. package/dist/react-sdk/application-runtime/common-services/initialize.d.ts +2 -2
  814. package/dist/react-sdk/application-runtime/hooks/index.d.ts +2 -0
  815. package/dist/react-sdk/application-runtime/hooks/index.js +1 -1
  816. package/dist/react-sdk/application-runtime/hooks/loading/index.d.ts +5 -0
  817. package/dist/react-sdk/application-runtime/hooks/loading/index.js +1 -0
  818. package/dist/react-sdk/application-runtime/hooks/loading/loader-host-context.d.ts +11 -0
  819. package/dist/react-sdk/application-runtime/hooks/loading/loader-host-context.js +1 -0
  820. package/dist/react-sdk/application-runtime/hooks/loading/use-is-awaiting-loading-phase.d.ts +8 -0
  821. package/dist/react-sdk/application-runtime/hooks/loading/use-is-awaiting-loading-phase.js +1 -0
  822. package/dist/react-sdk/application-runtime/hooks/loading/use-is-loader-hosted.d.ts +7 -0
  823. package/dist/react-sdk/application-runtime/hooks/loading/use-is-loader-hosted.js +1 -0
  824. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-actions.d.ts +9 -0
  825. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-actions.js +1 -0
  826. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-application.d.ts +24 -0
  827. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-application.js +1 -0
  828. package/dist/react-sdk/application-runtime/hooks/responsive/index.d.ts +3 -0
  829. package/dist/react-sdk/application-runtime/hooks/responsive/index.js +1 -0
  830. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-actions.d.ts +9 -0
  831. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-actions.js +1 -0
  832. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-application.d.ts +26 -0
  833. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-application.js +1 -0
  834. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-state.d.ts +10 -0
  835. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-state.js +1 -0
  836. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-store.d.ts +24 -0
  837. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-store.js +1 -0
  838. package/dist/react-sdk/application-runtime/hooks/use-access-service.d.ts +5 -0
  839. package/dist/react-sdk/application-runtime/hooks/use-access-service.js +1 -1
  840. package/dist/react-sdk/application-runtime/hooks/use-phoenix-element-slots.d.ts +2 -1
  841. package/dist/react-sdk/application-runtime/hooks/use-web-component-readonly-sync.d.ts +4 -11
  842. package/dist/react-sdk/application-runtime/hooks/use-web-component-readonly-sync.js +1 -1
  843. package/dist/react-sdk/application-runtime/hooks/use-web-component.d.ts +5 -0
  844. package/dist/react-sdk/application-runtime/hooks/use-web-component.js +1 -1
  845. package/dist/react-sdk/application-runtime/host-properties/actions.d.ts +15 -0
  846. package/dist/react-sdk/application-runtime/host-properties/actions.js +1 -0
  847. package/dist/react-sdk/application-runtime/host-properties/connect-host-properties.d.ts +30 -0
  848. package/dist/react-sdk/application-runtime/host-properties/connect-host-properties.js +1 -0
  849. package/dist/react-sdk/application-runtime/host-properties/domain-host-properties.d.ts +7 -0
  850. package/dist/react-sdk/application-runtime/host-properties/domain-host-properties.js +1 -0
  851. package/dist/react-sdk/application-runtime/host-properties/host-property-descriptors.d.ts +21 -0
  852. package/dist/react-sdk/application-runtime/host-properties/host-property-descriptors.js +1 -0
  853. package/dist/react-sdk/application-runtime/host-properties/host-property-scopes.d.ts +42 -0
  854. package/dist/react-sdk/application-runtime/host-properties/host-property-scopes.js +1 -0
  855. package/dist/react-sdk/application-runtime/host-properties/index.d.ts +8 -0
  856. package/dist/react-sdk/application-runtime/host-properties/index.js +1 -0
  857. package/dist/react-sdk/application-runtime/host-properties/initialize.d.ts +7 -0
  858. package/dist/react-sdk/application-runtime/host-properties/initialize.js +1 -0
  859. package/dist/react-sdk/application-runtime/host-properties/selectors.d.ts +54 -0
  860. package/dist/react-sdk/application-runtime/host-properties/selectors.js +1 -0
  861. package/dist/react-sdk/application-runtime/host-properties/types.d.ts +18 -0
  862. package/dist/react-sdk/application-runtime/host-properties/types.js +1 -0
  863. package/dist/react-sdk/application-runtime/index.d.ts +3 -0
  864. package/dist/react-sdk/application-runtime/integration/initialize.d.ts +7 -6
  865. package/dist/react-sdk/application-runtime/integration/initialize.js +1 -1
  866. package/dist/react-sdk/application-runtime/integration/selectors.d.ts +11 -2
  867. package/dist/react-sdk/application-runtime/integration/selectors.js +1 -1
  868. package/dist/react-sdk/application-runtime/integration/types.d.ts +5 -2
  869. package/dist/react-sdk/application-runtime/loading/actions.d.ts +45 -0
  870. package/dist/react-sdk/application-runtime/loading/actions.js +1 -0
  871. package/dist/react-sdk/application-runtime/loading/index.d.ts +4 -0
  872. package/dist/react-sdk/application-runtime/loading/index.js +1 -0
  873. package/dist/react-sdk/application-runtime/loading/initialize.d.ts +3 -0
  874. package/dist/react-sdk/application-runtime/loading/initialize.js +1 -0
  875. package/dist/react-sdk/application-runtime/loading/selectors.d.ts +18 -0
  876. package/dist/react-sdk/application-runtime/loading/selectors.js +1 -0
  877. package/dist/react-sdk/application-runtime/loading/types.d.ts +59 -0
  878. package/dist/react-sdk/application-runtime/loading/types.js +1 -0
  879. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.js +1 -1
  880. package/dist/react-sdk/application-runtime/provider/ApplicationRuntime.d.ts +6 -0
  881. package/dist/react-sdk/application-runtime/provider/ApplicationRuntime.js +1 -1
  882. package/dist/react-sdk/application-runtime/provider/ApplicationType.d.ts +7 -0
  883. package/dist/react-sdk/application-runtime/provider/ApplicationType.js +1 -1
  884. package/dist/react-sdk/application-runtime/responsive/actions.d.ts +47 -0
  885. package/dist/react-sdk/application-runtime/responsive/actions.js +1 -0
  886. package/dist/react-sdk/application-runtime/responsive/index.d.ts +4 -0
  887. package/dist/react-sdk/application-runtime/responsive/index.js +1 -0
  888. package/dist/react-sdk/application-runtime/responsive/initialize.d.ts +3 -0
  889. package/dist/react-sdk/application-runtime/responsive/initialize.js +1 -0
  890. package/dist/react-sdk/application-runtime/responsive/selectors.d.ts +20 -0
  891. package/dist/react-sdk/application-runtime/responsive/selectors.js +1 -0
  892. package/dist/react-sdk/application-runtime/responsive/types.d.ts +104 -0
  893. package/dist/react-sdk/application-runtime/responsive/types.js +1 -0
  894. package/dist/react-sdk/application-runtime/routing/routing-service.d.ts +34 -2
  895. package/dist/react-sdk/application-runtime/routing/routing-service.js +1 -1
  896. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.d.ts +313 -10
  897. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.js +1 -1
  898. package/dist/react-sdk/domain-application-context/BackendDataProvider.js +1 -1
  899. package/dist/react-sdk/domain-application-context/DomainLifecycleBoundary.js +1 -1
  900. package/dist/react-sdk/domain-application-context/FrontendDataProvider.js +1 -1
  901. package/dist/react-sdk/domain-application-context/PublishedDataProvider.js +1 -1
  902. package/dist/react-sdk/domain-context/common-hooks/index.d.ts +9 -0
  903. package/dist/react-sdk/domain-context/common-hooks/index.js +1 -0
  904. package/dist/react-sdk/domain-context/common-hooks/use-configuration-save-state.d.ts +23 -0
  905. package/dist/react-sdk/domain-context/common-hooks/use-configuration-save-state.js +1 -0
  906. package/dist/react-sdk/domain-context/common-hooks/use-configurator-messages.d.ts +15 -4
  907. package/dist/react-sdk/domain-context/common-hooks/use-configurator-messages.js +1 -1
  908. package/dist/react-sdk/domain-context/common-hooks/use-domain-context.d.ts +1 -0
  909. package/dist/react-sdk/domain-context/component-hooks/index.d.ts +1 -0
  910. package/dist/react-sdk/domain-context/component-hooks/index.js +1 -0
  911. package/dist/react-sdk/domain-context/component-hooks/use-component.js +1 -1
  912. package/dist/react-sdk/domain-context/entity-hooks/use-domain-entity-state.js +1 -1
  913. package/dist/react-sdk/domain-context/entity-hooks/use-entity-price.js +1 -1
  914. package/dist/react-sdk/domain-context/entity-hooks/use-root-entity-id.js +1 -1
  915. package/dist/react-sdk/domain-context/entity-hooks/use-root-entity-state.js +1 -1
  916. package/dist/react-sdk/domain-context/index.d.ts +8 -1
  917. package/dist/react-sdk/domain-context/index.js +1 -1
  918. package/dist/react-sdk/domain-context/system-hooks/composition-hooks.js +1 -1
  919. package/dist/react-sdk/domain-context/system-hooks/dimension-hooks.js +1 -1
  920. package/dist/react-sdk/domain-context/system-hooks/generate-share-link-hooks.d.ts +8 -0
  921. package/dist/react-sdk/domain-context/system-hooks/generate-share-link-hooks.js +1 -0
  922. package/dist/react-sdk/domain-context/system-hooks/hover-hooks.js +1 -1
  923. package/dist/react-sdk/domain-context/system-hooks/locale-switch-hooks.d.ts +24 -0
  924. package/dist/react-sdk/domain-context/system-hooks/locale-switch-hooks.js +1 -0
  925. package/dist/react-sdk/domain-context/system-hooks/navigation-hooks.d.ts +5 -0
  926. package/dist/react-sdk/domain-context/system-hooks/navigation-hooks.js +1 -1
  927. package/dist/react-sdk/domain-context/system-hooks/selection-hooks.js +1 -1
  928. package/dist/react-sdk/domain-context/system-hooks/share-links-hooks.d.ts +32 -0
  929. package/dist/react-sdk/domain-context/system-hooks/share-links-hooks.js +1 -0
  930. package/dist/react-sdk/domain-context/system-hooks/step-navigation-hooks.d.ts +57 -0
  931. package/dist/react-sdk/domain-context/system-hooks/step-navigation-hooks.js +1 -0
  932. package/dist/react-sdk/domain-context/system-hooks/tab-navigation-hooks.d.ts +61 -0
  933. package/dist/react-sdk/domain-context/system-hooks/tab-navigation-hooks.js +1 -0
  934. package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.d.ts +20 -0
  935. package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.js +1 -0
  936. package/dist/react-sdk/handlers/FinalizeActionRunner.d.ts +13 -0
  937. package/dist/react-sdk/handlers/FinalizeActionRunner.js +1 -0
  938. package/dist/react-sdk/handlers/FinalizeActionsHost.d.ts +10 -0
  939. package/dist/react-sdk/handlers/FinalizeActionsHost.js +1 -0
  940. package/dist/react-sdk/handlers/FinalizeActionsProvider.d.ts +11 -0
  941. package/dist/react-sdk/handlers/FinalizeActionsProvider.js +1 -0
  942. package/dist/react-sdk/handlers/finalize-actions-context.d.ts +6 -0
  943. package/dist/react-sdk/handlers/finalize-actions-context.js +1 -0
  944. package/dist/react-sdk/handlers/finalize-actions-store.d.ts +23 -0
  945. package/dist/react-sdk/handlers/finalize-actions-store.js +1 -0
  946. package/dist/react-sdk/handlers/index.d.ts +6 -0
  947. package/dist/react-sdk/handlers/index.js +1 -1
  948. package/dist/react-sdk/handlers/use-finalize-action.d.ts +32 -0
  949. package/dist/react-sdk/handlers/use-finalize-action.js +1 -0
  950. package/dist/react-sdk/handlers/use-finalize-actions.d.ts +53 -0
  951. package/dist/react-sdk/handlers/use-finalize-actions.js +1 -0
  952. package/dist/react-sdk/index.d.ts +2 -0
  953. package/dist/react-sdk/index.js +1 -1
  954. package/dist/react-sdk/loading-state/LoaderHost.d.ts +20 -0
  955. package/dist/react-sdk/loading-state/LoaderHost.js +1 -0
  956. package/dist/react-sdk/loading-state/built-in-loading-phase.d.ts +9 -0
  957. package/dist/react-sdk/loading-state/built-in-loading-phase.js +1 -0
  958. package/dist/react-sdk/loading-state/create-app-loader.d.ts +18 -0
  959. package/dist/react-sdk/loading-state/create-app-loader.js +1 -0
  960. package/dist/react-sdk/loading-state/index.d.ts +4 -2
  961. package/dist/react-sdk/loading-state/index.js +1 -1
  962. package/dist/react-sdk/loading-state/{LoadingStateProvider.d.ts → loading-state-hooks.d.ts} +3 -12
  963. package/dist/react-sdk/loading-state/loading-state-hooks.js +1 -0
  964. package/dist/react-sdk/page-elements/ConfigurationNotFoundPagePropsProvider.d.ts +17 -0
  965. package/dist/react-sdk/page-elements/ConfigurationNotFoundPagePropsProvider.js +1 -0
  966. package/dist/react-sdk/page-elements/ConfiguratorErrorPagePropsProvider.d.ts +17 -0
  967. package/dist/react-sdk/page-elements/ConfiguratorErrorPagePropsProvider.js +1 -0
  968. package/dist/react-sdk/page-elements/configurator-error-page-props.d.ts +20 -0
  969. package/dist/react-sdk/page-elements/configurator-error-page-props.js +1 -0
  970. package/dist/react-sdk/page-elements/create-configuration-not-found-page.d.ts +15 -0
  971. package/dist/react-sdk/page-elements/create-configuration-not-found-page.js +1 -0
  972. package/dist/react-sdk/page-elements/create-configurator-error-page.d.ts +14 -0
  973. package/dist/react-sdk/page-elements/create-configurator-error-page.js +1 -0
  974. package/dist/react-sdk/page-elements/create-preset-ui.d.ts +9 -0
  975. package/dist/react-sdk/page-elements/create-preset-ui.js +1 -0
  976. package/dist/react-sdk/page-elements/index.d.ts +6 -0
  977. package/dist/react-sdk/page-elements/index.js +1 -0
  978. package/dist/react-sdk/scene-control-elements/AddEntityFabElement.d.ts +36 -0
  979. package/dist/react-sdk/scene-control-elements/AddEntityFabElement.js +1 -0
  980. package/dist/react-sdk/scene-control-elements/DeleteEntityFabElement.d.ts +44 -0
  981. package/dist/react-sdk/scene-control-elements/DeleteEntityFabElement.js +1 -0
  982. package/dist/react-sdk/scene-control-elements/NavigationHotspotElement.d.ts +38 -0
  983. package/dist/react-sdk/scene-control-elements/NavigationHotspotElement.js +1 -0
  984. package/dist/react-sdk/scene-control-elements/SelectionHotspotElement.d.ts +30 -0
  985. package/dist/react-sdk/scene-control-elements/SelectionHotspotElement.js +1 -0
  986. package/dist/react-sdk/scene-control-elements/ToolMenuFabElement.d.ts +30 -0
  987. package/dist/react-sdk/scene-control-elements/ToolMenuFabElement.js +1 -0
  988. package/dist/react-sdk/scene-control-elements/create-add-entity-fab.d.ts +9 -0
  989. package/dist/react-sdk/scene-control-elements/create-add-entity-fab.js +1 -0
  990. package/dist/react-sdk/scene-control-elements/create-delete-entity-fab.d.ts +9 -0
  991. package/dist/react-sdk/scene-control-elements/create-delete-entity-fab.js +1 -0
  992. package/dist/react-sdk/scene-control-elements/create-navigation-hotspot.d.ts +10 -0
  993. package/dist/react-sdk/scene-control-elements/create-navigation-hotspot.js +1 -0
  994. package/dist/react-sdk/scene-control-elements/create-selection-hotspot.d.ts +9 -0
  995. package/dist/react-sdk/scene-control-elements/create-selection-hotspot.js +1 -0
  996. package/dist/react-sdk/scene-control-elements/create-tool-menu-fab.d.ts +9 -0
  997. package/dist/react-sdk/scene-control-elements/create-tool-menu-fab.js +1 -0
  998. package/dist/react-sdk/scene-control-elements/index.d.ts +11 -0
  999. package/dist/react-sdk/scene-control-elements/index.js +1 -0
  1000. package/dist/react-sdk/scene-control-elements/scene-control-tooltip-visibility.d.ts +5 -0
  1001. package/dist/react-sdk/scene-control-elements/scene-control-tooltip-visibility.js +1 -0
  1002. package/dist/react-sdk/session/NotAuthenticatedPage.d.ts +4 -0
  1003. package/dist/react-sdk/session/NotAuthenticatedPage.js +1 -1
  1004. package/dist/react-sdk/session/SessionServiceProvider.js +1 -1
  1005. package/dist/react-sdk/web-component/create-web-component.js +1 -1
  1006. package/dist/react-sdk/web-component/god-mode/god-mode-registry.d.ts +30 -0
  1007. package/dist/react-sdk/web-component/god-mode/god-mode-registry.js +1 -0
  1008. package/dist/react-sdk/web-component/god-mode/index.d.ts +1 -0
  1009. package/dist/react-sdk/web-component/god-mode/index.js +1 -0
  1010. package/dist/ui-sdk/icons/__generated/Lightbulb.d.ts +3 -0
  1011. package/dist/ui-sdk/icons/__generated/Lightbulb.js +1 -0
  1012. package/dist/ui-sdk/icons/__generated/XCircle.d.ts +3 -0
  1013. package/dist/ui-sdk/icons/__generated/XCircle.js +1 -0
  1014. package/dist/ui-sdk/icons/__generated/index.d.ts +4 -0
  1015. package/dist/ui-sdk/icons/__generated/index.js +1 -1
  1016. package/dist/ui-sdk/icons/icons-registry.js +1 -1
  1017. package/dist/ui-sdk/responsive-application/ResponsiveApplicationProvider.d.ts +9 -0
  1018. package/dist/ui-sdk/responsive-application/ResponsiveApplicationProvider.js +1 -1
  1019. package/dist/ui-sdk/responsive-application/index.d.ts +1 -0
  1020. package/dist/ui-sdk/responsive-application/responsive-state-store.d.ts +59 -0
  1021. package/dist/ui-sdk/responsive-application/responsive-state-store.js +1 -0
  1022. package/dist/ui-sdk/responsive-application/use-store-responsive-info.d.ts +7 -0
  1023. package/dist/ui-sdk/responsive-application/use-store-responsive-info.js +1 -0
  1024. package/dist/ui-sdk/theme/types.d.ts +5 -1
  1025. package/package.json +58 -36
  1026. package/schema/domain-spec.json +226 -8
  1027. package/dist/application-spec/generate-application/code/templates/nvmrc.d.ts +0 -1
  1028. package/dist/application-spec/generate-application/code/templates/nvmrc.js +0 -2
  1029. package/dist/application-spec/generate-application/code/templates/package-json.d.ts +0 -10
  1030. package/dist/application-spec/generate-application/code/templates/package-json.js +0 -1
  1031. package/dist/application-spec/generate-application/code/templates/webhook-implementation.d.ts +0 -1
  1032. package/dist/application-spec/generate-application/code/templates/webhook-implementation.js +0 -7
  1033. package/dist/configurator/ui/assistant/entity-link/entity-link-target.d.ts +0 -5
  1034. package/dist/configurator/ui/assistant/entity-link/entity-link-target.js +0 -1
  1035. package/dist/configurator/ui/phoenix-layout-elements/language/use-locale-options.d.ts +0 -4
  1036. package/dist/configurator/ui/phoenix-layout-elements/language/use-locale-options.js +0 -1
  1037. package/dist/configurator/ui/phoenix-layout-elements/measurements/use-measurements-visibility.d.ts +0 -4
  1038. package/dist/configurator/ui/phoenix-layout-elements/measurements/use-measurements-visibility.js +0 -1
  1039. package/dist/domain/extensions/client-side-image.js +0 -1
  1040. package/dist/domain/extensions/save-template-thumbnail.js +0 -1
  1041. package/dist/phoenix/commands/generate-project-files.d.ts +0 -6
  1042. package/dist/phoenix/commands/generate-project-files.js +0 -1
  1043. package/dist/react-sdk/application-runtime/runtime/god-mode.d.ts +0 -19
  1044. package/dist/react-sdk/application-runtime/runtime/god-mode.js +0 -1
  1045. package/dist/react-sdk/loading-state/LoadingStateProvider.js +0 -1
  1046. package/dist/react-sdk/loading-state/loading-state-manager.d.ts +0 -32
  1047. package/dist/react-sdk/loading-state/loading-state-manager.js +0 -1
  1048. /package/dist/{configurator/common → react-sdk/application-runtime/common-services/analytics}/frontend-analytics.js +0 -0
@@ -14,7 +14,9 @@ The Phoenix CLI (`phoenix` command) is the unified tool for all configurator dev
14
14
 
15
15
  ## Starting a New Project
16
16
 
17
- `phoenix init [folder]` starts a configurator project in `[folder]` (default: the working directory):
17
+ The SDK and its CLI run on Node.js 22.13 or newer, the range declared in `engines.node` of `@salsita-ai/sdk`. On an older Node.js, `phoenix` stops before it runs a command, names the running version and the required range, and exits with a non-zero code. The legacy binaries run no such check; package managers warn about the range when the SDK is installed.
18
+
19
+ `phoenix init [folder]` starts a configurator project in `[folder]` (default: the working directory). The project installs with any package manager. The commands on this page use pnpm; with npm, run `npm install` and `npx phoenix sync`, with Yarn `yarn phoenix sync`, with Bun `bunx phoenix sync`:
18
20
 
19
21
  ```bash
20
22
  npx -p @salsita-ai/sdk@canary phoenix init my-configurator
@@ -28,12 +30,17 @@ pnpm phoenix dev
28
30
  `phoenix init`:
29
31
 
30
32
  1. Refuses to run when a `spec/` folder already exists, so it never touches an existing project.
31
- 2. Writes a `package.json` that depends on the CLI's SDK version when the folder has none. An existing `package.json` is kept, as long as it depends on the SDK.
33
+ 2. Writes a `package.json` when the folder has none, and an existing one is kept, as long as it depends on the SDK. Either way, `package.json` gains the entries it lacks, and an entry it already has stays as it is:
34
+ - the CLI's SDK version, in a new `package.json`;
35
+ - every package the SDK requires as a peer, at the version [`phoenix deps`](#phoenix-deps) writes: the lowest of the SDK's range, with the `@types/*` packages in `devDependencies`. A peer the project declares in any dependency field counts, whatever its version. `@clerk/clerk-react` is not among them, because the starter spec does not set `useClerk`;
36
+ - `eslint` and `prettier` in `devDependencies`, at the versions the SDK runs itself, so an editor formats and lints with the same versions as `phoenix check`.
37
+
38
+ With these, the install gives the project everything `phoenix dev`, `build` and `check` need. `init` writes no `packageManager` field and no package-manager settings: a project that installs with pnpm 11 adds the settings in [Package manager](?path=/docs/phoenix-project-structure--docs#package-manager) itself.
39
+
32
40
  3. Adds the `dev`, `build`, `deploy`, `check` and `fix` scripts to `package.json` (see [Project Scripts](#project-scripts)). A script the project already has under one of those names keeps its command.
33
41
  4. Writes a starter spec (`spec/application.yaml`, `spec/configurator.yaml`) with one resizable, recolorable box, and switches `package.json` to the application-spec pipeline.
34
- 5. Writes `pnpm-workspace.yaml` with the pnpm settings the first install needs: the build scripts of the SDK's dependencies are allowed or denied, and `@salsita-ai/*` packages are exempt from pnpm's minimum release age. A project inside a pnpm monorepo gets no file; the workspace root holds these settings.
35
42
 
36
- It asks nothing, writes no `.env` and contacts no server. `phoenix sync` then generates every other project file, including the agent skills described in [Project Structure](?path=/docs/phoenix-project-structure--docs). The `.gitignore` is among them only when the folder is inside a git repository, so run `git init` before the first sync, or sync again after it.
43
+ The next steps it prints use the package manager you ran it with, or name none when it cannot tell. It asks nothing, writes no `.env` and contacts no server. `phoenix sync` then generates every other project file, including the agent skills described in [Project Structure](?path=/docs/phoenix-project-structure--docs). The `.gitignore` is among them only when the folder is inside a git repository, so run `git init` before the first sync, or sync again after it.
37
44
 
38
45
  ### Which project `phoenix dev` develops in
39
46
 
@@ -135,24 +142,37 @@ The same streams are available in the editor's **Logs** sidebar panel with per-s
135
142
 
136
143
  ### `phoenix check`
137
144
 
138
- Runs all code quality checks in sequence:
145
+ Runs all code quality checks in sequence, with the TypeScript compiler, ESLint and Prettier the SDK installs as its own dependencies, so the versions in the project's `package.json` do not decide them:
139
146
 
140
- 1. **TypeScript** — Type checking with `tsc`
141
- 2. **ESLint** — Linting rules
142
- 3. **Prettier** — Code formatting
147
+ 1. **TypeScript** — Type checking with the SDK's `tsc` (TypeScript 7), with the project's root `tsconfig.json`, or with `.phoenix/tsconfig.json` when the project has none (see [Project Structure](?path=/docs/phoenix-project-structure--docs#root-level-files))
148
+ 2. **ESLint** — Linting rules, over `src/`; a project with no files there passes. ESLint uses the project's `eslint.config.js`, or the SDK's configuration when the project has none; its type-aware rules then read the same TypeScript configuration as the type check
149
+ 3. **Prettier** — Code formatting, with the project's Prettier configuration, or the SDK's when the project has none
143
150
 
144
151
  ### `phoenix fix`
145
152
 
146
- Auto-fixes ESLint and Prettier issues. Equivalent to running `eslint --fix` and `prettier --write` together.
153
+ Auto-fixes ESLint and Prettier issues, with the same tools and configurations as `phoenix check`. Equivalent to running the SDK's `eslint --fix` and `prettier --write` together.
147
154
 
148
155
  ## Environment Variables
149
156
 
150
- When you run `deployment:prepare-local` or `deployment:prepare`, the CLI communicates with the Phoenix server, which generates environment variables and writes them to `.env.generated`.
157
+ When you run `deployment:prepare-local` or `deployment:prepare`, the CLI communicates with the Phoenix server, which generates environment variables and writes them to `.env.generated`. `phoenix dev` does the same for its development deployment when it starts.
158
+
159
+ ### The generated env file
160
+
161
+ A project has one generated env file. Phoenix keeps it in `.phoenix/`, as `.phoenix/.env.generated`, unless the project has a `.env.generated` in its root, which then is the one that counts.
162
+
163
+ - `phoenix dev` reads and writes `.phoenix/.env.generated` in a project without a root `.env.generated`, and creates no file in the project root. In a project that has a root `.env.generated`, it reads and writes that file and `.phoenix/.env.generated` is not used.
164
+ - The deployment and environment commands (`deployment:prepare`, `deployment:prepare-dev`, `deployment:prepare-local`, `deployment:build-envs` and the others with an `--outFile` option) write `.env.generated` in the project root unless `--outFile` or `OUT_FILE` names another file. Deploy pipelines read it there. Once one of them has written it, `phoenix dev` and `phoenix build` use it.
165
+ - Everything that reads environment variables follows the same rule: the root `.env.generated` when it exists, otherwise `.phoenix/.env.generated`. The two files are never merged.
166
+ - `phoenix clean` removes `.phoenix/` and with it `.phoenix/.env.generated`; the next `phoenix dev` prepares the development deployment again. A root `.env.generated` stays.
167
+ - `phoenix dev` starts on the deployment the file names, and prepares a new one when the file was written for another project, environment or server, when the spec registers something on the server the deployment was not prepared with (the domain model, the published data schema, the auth hook, the roles that may create configurations, or the assistant), and on `--force`. A running `phoenix dev` does not prepare again after such a change: it logs an error that asks for a restart.
168
+ - Asset contents do not trigger preparation. After changing uploaded assets, restart with `phoenix dev --force` to prepare and upload them again.
169
+
170
+ This holds for a project on the application-spec pipeline. In a project on the legacy pipeline (see [Current and legacy project tooling](#current-and-legacy-project-tooling)), `phoenix dev` always reads and writes `.env.generated` in the project root.
151
171
 
152
172
  ### Data Flow
153
173
 
154
174
  ```
155
- spec/application.yaml → Server prepares environment → CLI writes .env.generated → Frontend/Webhooks read it
175
+ spec/application.yaml → Server prepares environment → CLI writes the generated env file → Frontend/Webhooks read it
156
176
  ```
157
177
 
158
178
  ### Project Scripts
@@ -167,13 +187,13 @@ spec/application.yaml → Server prepares environment → CLI writes .env.genera
167
187
  | `check` | `phoenix check` | Run all checks (TypeScript, ESLint, Prettier) |
168
188
  | `fix` | `phoenix fix` | Auto-fix lint and formatting issues |
169
189
 
170
- The scripts are yours: change, rename or delete them, and add your own. `phoenix sync` and `phoenix clean` leave the `scripts` section of `package.json` as it is, so they add no script, restore none you removed and remove none. Every CLI command also runs without a script, as `pnpm phoenix <command>`.
190
+ The scripts are yours: change, rename or delete them, and add your own. `phoenix sync` and `phoenix clean` leave the `scripts` section of `package.json` as it is, so they add no script, restore none you removed and remove none. Every CLI command also runs without a script, through your package manager: `pnpm phoenix <command>`, `npx phoenix <command>`, `yarn phoenix <command>` or `bunx phoenix <command>`.
171
191
 
172
192
  A project may have other scripts than these five, such as `sync`, `test` or `verify:fix`; they are its own and stay as they are. All of this holds for a project on the application-spec pipeline, which `phoenix init` selects. In a project on the legacy pipeline (see [Current and legacy project tooling](#current-and-legacy-project-tooling)), `phoenix sync` and `phoenix clean` write their own set of scripts into `package.json` on every run, over scripts of the same name.
173
193
 
174
194
  ### Server-Generated Variables
175
195
 
176
- These are automatically computed by the server and written to `.env.generated`:
196
+ These are automatically computed by the server and written to the generated env file:
177
197
 
178
198
  | Variable | Purpose |
179
199
  | -------------------------------- | ------------------------------------------------------- |
@@ -261,7 +281,7 @@ A development environment keeps the AI assistant's conversation when the assista
261
281
  Environment variables are resolved in this order (highest to lowest priority):
262
282
 
263
283
  1. Process environment variables (shell)
264
- 2. `.env.generated` (created by deployment commands)
284
+ 2. [The generated env file](#the-generated-env-file): `.env.generated` in the project root when the project has one, otherwise `.phoenix/.env.generated`
265
285
  3. `.env` (manual overrides)
266
286
 
267
287
  ### Generated Config Files
@@ -287,18 +307,25 @@ Starts the full development environment: Vite dev server, development webhook tu
287
307
  | `--environmentSlug` | `ENVIRONMENT_SLUG` | package.json name | Environment slug |
288
308
  | `--withLingui` | `WITH_LINGUI` | `false` | Enable i18n extraction/compilation and watch i18n sources during dev |
289
309
  | `--persistence` | `PERSISTENCE_MODE` | `server` | Persistence mode |
290
- | `--force` / `-f` | `FORCE_REBUILD` | `false` | Force full rebuild, skip cache |
310
+ | `--force` / `-f` | `FORCE_REBUILD` | `false` | Force full rebuild, skip cache, and prepare the development deployment again |
291
311
  | `--serverUrl` | `SERVER_URL` | the region's server | Phoenix server URL |
292
312
  | `--region` | `PHOENIX_REGION` | `eu` | Region of the signed-in workspace, used when no server URL is set |
293
313
  | `--skipUpload` / `--su` | `SKIP_UPLOAD` | `false` | Skip the S3 asset upload when the development deployment is prepared at startup |
294
314
 
315
+ With the application-spec pipeline, `phoenix dev` creates an empty `src/` folder when the project has none, so that it rebuilds when the first source file, such as `src/webhooks/index.ts`, is added.
316
+
317
+ By default, with the application-spec pipeline, `phoenix dev` bootstraps missing compiled catalogs for every configured locale at startup, so a fresh project can start without a prior sync. It compiles existing `.po` translations as they are and extracts a locale only when its `.po` source is also missing. Existing compiled catalogs and `.po` sources stay unchanged. New or changed messages still need `phoenix sync` or continuous updates enabled by `--withLingui` or `WITH_LINGUI=true`.
318
+
319
+ The SDK's own Lingui CLI uses the configuration generated in `.phoenix/.linguirc`, both for `--withLingui` and when `phoenix sync` and `phoenix build` extract and compile the catalogs; see [Root Level Files](?path=/docs/phoenix-project-structure--docs#root-level-files). The dev server and `phoenix build` compile the Lingui macros (`msg`, `t`, `Trans` and the others, imported from `@lingui/core/macro`, `@lingui/react/macro` or `@lingui/macro`) with the SDK's own Lingui macro plugin and the same configuration, so the project needs neither `babel-plugin-macros` nor `@lingui/macro` for them. Babel macros of other packages are not compiled.
320
+
295
321
  In `server` persistence mode the project comes from `--projectSlug`, `PROJECT_SLUG` or `project` in the spec, and the credential from `DEVELOPMENT_KEY` or the `phoenix login` sign-in; see [Starting a New Project](#starting-a-new-project). When signed in, the environment is always your own development environment and `--environmentSlug` is ignored.
296
322
 
297
323
  The dev server watches for changes in:
298
324
 
299
325
  - `spec/**/*.yaml` — Domain specification files
300
326
  - `src/**/*.{ts,tsx,yaml,yml,json,html,css}` — Source files
301
- - `.env`, `.env.generated` — Environment files (triggers full Vite restart)
327
+ - `.env` — Environment file; a change restarts the Vite dev server
328
+ - `.env.generated`, `.phoenix/.env.generated` — Generated env files; a change rebuilds the project files. Only a file that exists when `phoenix dev` starts is watched: a root `.env.generated` that a deployment command creates while dev runs is not watched; restart `phoenix dev` to use it.
302
329
 
303
330
  When linked SDK packages are detected (`phoenix link`), changes to SDK dist files are also watched.
304
331
 
@@ -313,7 +340,11 @@ Restart the application after fixing either failure; a subscriber or generation
313
340
  observed the attempted update.
314
341
 
315
342
  Domain-model changes are not applied live yet. Phoenix rejects them with a restart-required
316
- diagnostic so the mounted application cannot observe a new model with old configuration data. Other
343
+ diagnostic so the mounted application cannot observe a new model with old configuration data. With
344
+ server persistence, `phoenix dev` logs an error that asks for its own restart, because the
345
+ development deployment keeps the schema it was prepared with until `phoenix dev` starts again and
346
+ prepares it. After the restart, open the preview address it prints: a tab whose address has `?cid=`
347
+ loads a configuration saved with the earlier model, which the new model rejects. Other
317
348
  generated bootstrap, admin, data, environment, and host-integration surfaces should also be treated
318
349
  as restart-required unless their feature documentation explicitly states live-update support.
319
350
 
@@ -380,7 +411,7 @@ Set initial values from a local production build with roughly 5–10% headroom t
380
411
 
381
412
  ### `phoenix clean`
382
413
 
383
- Removes all build artifacts (`.phoenix/`, `node_modules/`), reinstalls dependencies, and rebuilds all generated files from scratch. Use this when:
414
+ Removes `.phoenix/` and regenerates all project files from scratch. It installs nothing and leaves `node_modules/` as it is; to reinstall too, delete `node_modules/` and install with your package manager. In a project on the legacy pipeline (see [Current and legacy project tooling](#current-and-legacy-project-tooling)), `phoenix clean` also removes `node_modules/` and runs `pnpm install`. Use this when:
384
415
 
385
416
  - Generated files are corrupted or out of sync
386
417
  - After major SDK version upgrades
@@ -388,14 +419,36 @@ Removes all build artifacts (`.phoenix/`, `node_modules/`), reinstalls dependenc
388
419
 
389
420
  ### `phoenix sync`
390
421
 
391
- Syncs project dependencies and regenerates all project files without building Vite bundles or webhooks. Faster than `clean` — use this for routine updates after changing spec files or upgrading dependencies. Before installing, it adds the pnpm settings `phoenix init` writes to a standalone project's `pnpm-workspace.yaml` when they are missing; values you set there are kept.
422
+ Regenerates all project files without building Vite bundles or webhooks. Faster than `clean` — use this for routine updates after changing spec files or updating the SDK. It installs nothing: install with your package manager before syncing, after any change to `package.json`. It writes no package-manager settings; `pnpm-workspace.yaml` is the project's own. In a project on the legacy pipeline, `phoenix sync` runs `pnpm install` first.
392
423
 
393
424
  With the application-spec pipeline (see [Current and legacy project tooling](#current-and-legacy-project-tooling)), `.gitignore` is written only when the project is inside a git repository: the project folder or one of its parent folders holds a `.git` entry. Outside a repository, sync neither creates the file nor changes one that is already there, and the same holds for `dev`, `build` and `clean`. Run `git init` before the first sync, or sync again after it, to get the file. The legacy pipeline writes `.gitignore` in every project.
394
425
 
426
+ With the application-spec pipeline, sync never writes `package.json`. Before it generates any file, it checks that `package.json` declares every peer of the installed SDK at a version inside the SDK's range, and stops with a non-zero exit code when it does not. The message lists each peer that fails, with the range the SDK needs and the version found, or `missing`, and names the fix: run [`phoenix deps`](#phoenix-deps), then install with your package manager. `phoenix build`, `phoenix clean` and `phoenix dev` make the same check, and so does the platform build of [`phoenix deploy`](#phoenix-deploy). `phoenix dev` stops when the check fails at start; on a rebuild it reports the failure like a spec error and keeps running. [Dependencies](?path=/docs/phoenix-project-structure--docs#dependencies) has the rules. The legacy pipeline merges the SDK's dependencies into `package.json` on every sync.
427
+
395
428
  | Flag | Env Variable | Default | Description |
396
429
  | ---------------- | --------------- | ------- | ------------------------------ |
397
430
  | `--force` / `-f` | `FORCE_REBUILD` | `false` | Force full rebuild, skip cache |
398
431
 
432
+ ### `phoenix deps`
433
+
434
+ Brings `package.json` in line with the SDK's peer dependencies: the packages the SDK's code imports and the project installs next to it, so the project and the SDK share one copy. The `peerDependencies` of the installed `@salsita-ai/sdk` decide which packages and which versions. `@clerk/clerk-react` is needed only when the spec sets `useClerk`.
435
+
436
+ ```bash
437
+ pnpm phoenix deps
438
+ pnpm install
439
+ ```
440
+
441
+ Run it after every SDK update: `phoenix sync`, `dev` and `build` stop while `package.json` does not declare the SDK's peers (see [`phoenix sync`](#phoenix-sync)).
442
+
443
+ - A missing peer is added at the lowest version of the SDK's range, as an exact version, in alphabetical order: type packages (`@types/*`) to `devDependencies`, the others to `dependencies`.
444
+ - A peer declared with a version range whose lowest version falls outside the SDK's range is set to the lowest version of the SDK's range, in the field that declares it. The output says when that is a downgrade.
445
+ - A peer declared with a specifier that is not a version range, such as `workspace:`, `npm:`, `catalog:`, `file:`, `link:` or a git URL, stays as it is.
446
+ - `@salsita-ai/common`, `@salsita-ai/contracts`, `@salsita-ai/platform-project-sdk`, `@salsita-ai/platform-common` and `@salsita-ai/platform-contracts` are removed, because `@salsita-ai/sdk` replaces them. No other entry is removed.
447
+
448
+ Every other part of `package.json` keeps its order and formatting. `phoenix deps` installs nothing: it lists each change and names the install of the package manager you ran it with as the next step, or says that nothing needed to change. Running it again changes nothing. It reads the spec to learn whether the project uses Clerk, so it stops with the spec's errors when the spec does not parse.
449
+
450
+ This holds for a project on the application-spec pipeline. In a project on the legacy pipeline (see [Current and legacy project tooling](#current-and-legacy-project-tooling)), `phoenix deps` changes nothing and says that `phoenix sync` manages the dependencies.
451
+
399
452
  ### Current and legacy project tooling
400
453
 
401
454
  Use the `phoenix` binary for projects that still use domain-spec generation. The CLI selects a
@@ -570,10 +623,11 @@ Generated projects carry the `phoenix-variants` agent skill, which tells coding
570
623
 
571
624
  ### `phoenix link`
572
625
 
573
- Link a local copy of the Phoenix SDK for development. This creates symlinks so that changes to the SDK source are reflected in your project without publishing.
626
+ An internal tool for working on the SDK itself, and pnpm only: in a project with another package manager's lockfile and no `pnpm-lock.yaml`, it stops and changes nothing. Link a local copy of the Phoenix SDK for development in a project installed with pnpm. It writes a `file:` override for each SDK package into `pnpm-workspace.yaml`, so that after the next install changes to the SDK source are reflected in your project without publishing. It installs nothing; run the install it prints next:
574
627
 
575
628
  ```bash
576
629
  phoenix link --sdk-path ../configurator-phoenix
630
+ pnpm install --config.optimistic-repeat-install=false
577
631
  ```
578
632
 
579
633
  | Flag | Default | Description |
@@ -584,10 +638,11 @@ When linked, `phoenix dev` automatically watches for changes in the linked SDK's
584
638
 
585
639
  ### `phoenix unlink`
586
640
 
587
- Remove the local SDK linking and restore normal package resolution.
641
+ Remove the local SDK linking: it deletes the overrides `phoenix link` wrote. Like `phoenix link`, it is an internal tool and pnpm only. It installs nothing; the install it prints restores normal package resolution:
588
642
 
589
643
  ```bash
590
644
  phoenix unlink
645
+ pnpm install --config.optimistic-repeat-install=false
591
646
  ```
592
647
 
593
648
  ## Utilities
@@ -703,7 +758,7 @@ Revokes the token on the server and removes it from the credentials file. `--reg
703
758
 
704
759
  ### `phoenix deploy`
705
760
 
706
- Validates the spec, adds the pnpm settings `phoenix init` writes to `pnpm-workspace.yaml` when they are missing, packs and uploads the project, starts its build on the server and follows it until the configurator is live. Before the upload the server compares the domain model with the deployed one: a model that changed under an already deployed model version is refused with the reason, and needs a new model version and a [migration](?path=/docs/phoenix-migrations--docs). Once the build starts it prints `Follow the build in Studio: <url>`, the build's page in the Studio you signed in through; a sign-in stored by an older CLI has no Studio URL, so sign in again to get the link. After `Your configurator is live at <url>` it prints one line for coding agents, which tells them to offer the run evaluation of the `phoenix-feedback` skill once you have nothing more to build; you can ignore it when you run the command yourself. `--region` or `--serverUrl` selects the server, as for `login`; `--no-wait` returns as soon as the build starts.
761
+ Validates the spec, packs and uploads the project, starts its build on the server and follows it until the configurator is live. Before the upload the server compares the domain model with the deployed one: a model that changed under an already deployed model version is refused with the reason, and needs a new model version and a [migration](?path=/docs/phoenix-migrations--docs). Once the build starts it prints `Follow the build in Studio: <url>`, the build's page in the Studio you signed in through; a sign-in stored by an older CLI has no Studio URL, so sign in again to get the link. After `Your configurator is live at <url>` it prints one line for coding agents, which tells them to offer the run evaluation of the `phoenix-feedback` skill once you have nothing more to build; you can ignore it when you run the command yourself. `--region` or `--serverUrl` selects the server, as for `login`; `--no-wait` returns as soon as the build starts.
707
762
 
708
763
  To keep the conversation that led to a build, place a reviewed UTF-8 transcript in `conversation.log` at the project root before deploying. Deploy automatically includes it in the private source archive. Download the build's sources from Studio to read it; access is the same as for the rest of that build's sources. The build extractor skips the log, so it is not an application build input or a public asset. Missing logs produce a warning and deployment continues. Directories, links and special files at that path are rejected.
709
764
 
@@ -44,7 +44,7 @@ project-root/
44
44
  | `invariants/` | Domain constraints |
45
45
  | `transformers/` | Data transformation logic |
46
46
  | `handlers/` | Event & lifecycle handlers |
47
- | `webhooks/` | Webhook implementations |
47
+ | `webhooks/` | Webhook implementations, entered through `index.ts` |
48
48
  | `migrations/` | Data schema migrations (v\*.ts) - auto-created based on model versions |
49
49
  | `locales/` | Locale catalogs (`.po` sources; compiled `.ts`, do not edit) |
50
50
  | `_*` | Shared code folders at any depth (not auto-imported) |
@@ -56,6 +56,9 @@ factory returns, or an array of those. A file that exports anything else, such a
56
56
  shape. When several files in `handlers/`, `elements/`, `transformers/`, `components/`, `admin/elements/` and
57
57
  `admin/components/` are wrong, the error lists all of them, one numbered line per file. Keep plain components and helpers in a `_*` folder.
58
58
 
59
+ With the application-spec pipeline, sync does not write `src/webhooks/index.ts`, and a project without it gets a
60
+ built-in webhook; see [Webhook Entry Point](?path=/docs/phoenix-webhooks--docs#webhook-entry-point).
61
+
59
62
  ### Admin Folders (src/admin/)
60
63
 
61
64
  The `admin/` folder supports these admin-specific categories:
@@ -133,18 +136,37 @@ export default [CabinetModule, DrawerModule, ShelfModule]
133
136
 
134
137
  Phoenix auto-flattens both patterns during build. Use array exports when logically grouping related items in one file.
135
138
 
136
- ## Dependencies Merging
139
+ ## Dependencies
140
+
141
+ In a project on the application-spec pipeline, `package.json` is the project's own: `phoenix sync`, `phoenix dev` and `phoenix build` never write it. The SDK lists the packages its code imports from the project's install as peer dependencies (React, three.js, MUI, Lingui and others), and the project declares them next to `@salsita-ai/sdk`. [`phoenix deps`](?path=/docs/phoenix-phoenix-cli--docs#phoenix-deps) adds the missing ones and moves out-of-range ones into the SDK's range; run it, then install, after every SDK update. With pnpm, and the same through any other package manager (`npm install`, `npx phoenix deps` with npm):
142
+
143
+ ```bash
144
+ pnpm add @salsita-ai/sdk@<version>
145
+ pnpm phoenix deps
146
+ pnpm install
147
+ pnpm phoenix sync
148
+ ```
149
+
150
+ `phoenix sync`, `phoenix dev` and `phoenix build`, also on the platform when a deploy builds, check `package.json` before they generate any file. When a peer is missing, or declared at a version whose lowest match falls outside the SDK's range, they stop and list each such peer with the range the SDK needs and what `package.json` declares. A peer counts in `dependencies`, `devDependencies` or `optionalDependencies`, and a specifier that is not a version range, such as `workspace:` or `link:`, counts as declared. Add your own dependencies to `package.json` as usual; Phoenix leaves them, the Node.js and package-manager versions and the rest of the file as you wrote them.
137
151
 
138
- When running `phx sync` or `phx build`, Phoenix manages `package.json` dependencies:
152
+ In a project on the legacy pipeline (see [Current and legacy project tooling](?path=/docs/phoenix-phoenix-cli--docs#current-and-legacy-project-tooling)), `phoenix sync` and `phoenix build` merge the SDK's required dependencies into `package.json` instead, at exact versions over the ones you set, and keep every other dependency.
139
153
 
140
- | Behavior | Description |
141
- | --------------------- | -------------------------------------------------------------- |
142
- | Phoenix deps override | Required Phoenix dependencies override user-specified versions |
143
- | Versions pinned | All Phoenix deps use exact versions (no ^ or ~) |
144
- | User deps preserved | Non-conflicting user dependencies are kept |
145
- | Manual deps safe | Dependencies not in Phoenix's required list remain untouched |
154
+ ### Package manager
146
155
 
147
- To add custom dependencies, add them normally to `package.json`. Phoenix preserves them unless they conflict with required framework dependencies.
156
+ A project installs with any package manager: pnpm, npm, Yarn or Bun. Phoenix writes no package-manager settings and no `packageManager` field; the lockfile, `pnpm-workspace.yaml`, `.npmrc` and `.yarnrc.yml` are the project's own. Run `phoenix` through the package manager the project uses, such as `pnpm phoenix sync` or `npx phoenix sync`.
157
+
158
+ A project that installs with pnpm 11 needs a `pnpm-workspace.yaml` in its root before the first install. pnpm 11 stops an install until every dependency build script is allowed or denied, and the SDK's dependencies have three. Its default minimum release age also refuses a package published only recently, so the exclusion lets the project install an SDK build on the day it is released; it is optional:
159
+
160
+ ```yaml
161
+ allowBuilds:
162
+ '@swc/core': true
163
+ esbuild: true
164
+ es5-ext: false
165
+ minimumReleaseAgeExclude:
166
+ - '@salsita-ai/*'
167
+ ```
168
+
169
+ The file is yours to extend, for example to allow the build script of a dependency you add. In a pnpm monorepo, these settings go into the workspace root's `pnpm-workspace.yaml`. [`phoenix deploy`](?path=/docs/phoenix-phoenix-cli--docs#phoenix-deploy) packs `pnpm-lock.yaml` and `pnpm-workspace.yaml` when the project has them, and the platform build, which installs with pnpm, follows them.
148
170
 
149
171
  ## Global Interfaces
150
172
 
@@ -177,45 +199,56 @@ type CustomMaterial = Phx['AdminModel']['CustomMaterial']
177
199
 
178
200
  ### Root Level Files
179
201
 
180
- | File | Auto-Generated? | Notes |
181
- | ------------------------------------------------------ | --------------- | -------------------------------------- |
182
- | `package.json` | Partially | Dependencies merged, scripts untouched |
183
- | `tsconfig.json` | Yes | Managed by Phoenix |
184
- | `eslint.config.js` | Yes | Managed by Phoenix |
185
- | `prettier.config.js` | Yes | Managed by Phoenix |
186
- | `.prettierignore` | No | Optional and your own; see below |
187
- | `.linguirc` | Yes | Managed by Phoenix |
188
- | `.nvmrc` | Yes | Managed by Phoenix |
189
- | `.gitignore` | Partially | Only in a git repository; see Markers |
190
- | `.env` | No | Git-ignored, local config |
191
- | `.env.example` | No | Template for env vars |
192
- | `.env.generated` | Yes | Auto-generated IDs, git-ignored |
193
- | `README.md` | No | Project documentation |
194
- | `AGENTS.md` | No | Your own coding-agent instructions |
195
- | `.claude/skills/phoenix*/`, `.agents/skills/phoenix*/` | Yes | Phoenix agent skills |
202
+ | File | Auto-Generated? | Notes |
203
+ | ------------------------------------------------------ | --------------- | ------------------------------------- |
204
+ | `package.json` | No | Yours; see Dependencies |
205
+ | `tsconfig.json` | Once | Yours; see below |
206
+ | `eslint.config.js` | Once | Yours; see below |
207
+ | `prettier.config.js` | Once | Yours; see below |
208
+ | `.prettierignore` | No | Optional and your own; see below |
209
+ | `pnpm-workspace.yaml` | No | Only with pnpm; see Package manager |
210
+ | `.gitignore` | Partially | Only in a git repository; see Markers |
211
+ | `.env` | No | Git-ignored, local config |
212
+ | `.env.example` | No | Template for env vars |
213
+ | `.env.generated` | Yes | Optional, git-ignored; see below |
214
+ | `README.md` | No | Project documentation |
215
+ | `AGENTS.md` | No | Your own coding-agent instructions |
216
+ | `.claude/skills/phoenix*/`, `.agents/skills/phoenix*/` | Yes | Phoenix agent skills |
196
217
 
197
218
  Sync does not write `README.md`, `AGENTS.md`, `.env.example`, `.env.ci` or the `README.md` files in `assets/public/` and `assets/private/`. Earlier SDK versions wrote them once; a project that has them keeps them, and they are yours to edit.
198
219
 
199
- With the application-spec pipeline (see [Current and legacy project tooling](?path=/docs/phoenix-phoenix-cli--docs#current-and-legacy-project-tooling)), Phoenix does not write a `.prettierignore`, and a fresh clone or CI checkout of a project has none. `phoenix check` and `phoenix fix` do not read one: they skip `.phoenix/`, `dist/`, the compiled catalogs in `src/locales/`, `pnpm-lock.yaml` and `.linguirc` on their own. A project that runs Prettier directly, as `prettier --check .` or from an editor, can add its own `.prettierignore`. To commit it, add a `!.prettierignore` line after the Phoenix block of `.gitignore`, because that block lists the file. The legacy pipeline writes `.prettierignore` on every sync.
220
+ Phoenix keeps the generated env file, with the IDs and values of the prepared deployment, in `.phoenix/` unless the project has a `.env.generated` in its root, which then is the one that counts. `phoenix dev` creates no `.env.generated` in the project root; the deployment and environment commands write it there. See [The generated env file](?path=/docs/phoenix-phoenix-cli--docs#the-generated-env-file).
221
+
222
+ With the application-spec pipeline (see [Current and legacy project tooling](?path=/docs/phoenix-phoenix-cli--docs#current-and-legacy-project-tooling)), Phoenix does not write a `.prettierignore`, and a fresh clone or CI checkout of a project has none. `phoenix check` and `phoenix fix` do not read one: they skip `.phoenix/`, `dist/`, the compiled catalogs in `src/locales/` and `.linguirc` on their own, and the package manager's files in the project root, which belong to whichever package manager the project uses: `pnpm-lock.yaml`, `pnpm-workspace.yaml`, `package-lock.json`, `npm-shrinkwrap.json`, `yarn.lock`, `.yarnrc.yml`, `bun.lock` and `bun.lockb`. A project that runs Prettier directly, as `prettier --check .` or from an editor, can add its own `.prettierignore`. To commit it, add a `!.prettierignore` line after the Phoenix block of `.gitignore`, because that block lists the file. The legacy pipeline writes `.prettierignore` on every sync.
223
+
224
+ With the application-spec pipeline, the project's TypeScript settings are in `.phoenix/tsconfig.json`, which sync rewrites with the rest of `.phoenix/`. The root `tsconfig.json` is the one editors and tools find: sync writes it only when the project has none, as a single line that extends the generated settings, and it is yours to commit and to add to:
225
+
226
+ ```json
227
+ { "extends": "./.phoenix/tsconfig.json" }
228
+ ```
229
+
230
+ The only root `tsconfig.json` sync replaces is the full file earlier SDK versions generated there, recognised by its settings; any other stays as it is. `phoenix dev`, `phoenix build` and the webhook bundle do not resolve `paths` aliases, so an alias added to the root file passes `phoenix check` and fails the build. `phoenix check` type-checks with the root `tsconfig.json`, or with `.phoenix/tsconfig.json` when the project has none. The legacy pipeline writes the full `tsconfig.json` on every sync.
231
+
232
+ With the application-spec pipeline, sync writes `eslint.config.js` and `prettier.config.js` only when the project has none, each re-exporting the SDK's shared configuration so editors find it. They are yours to commit and to change. The only ones sync replaces are the files earlier SDK versions generated there; any other stays as it is. `phoenix check` and `phoenix fix` lint and format with the project's files, and with the SDK's configurations when a file is missing (see [`phoenix check`](?path=/docs/phoenix-phoenix-cli--docs#phoenix-check)). Sync formats the files it generates in the project root, such as the agent skills, with the same Prettier configuration, so `phoenix check` accepts them; while the project's configuration cannot be loaded, as before the first install, they get the SDK's settings. The legacy pipeline writes both files on every sync.
233
+
234
+ With the application-spec pipeline, the Lingui configuration is `.phoenix/.linguirc`, which sync rewrites with the rest of `.phoenix/` from `availableLocales` in `spec/application.yaml`. Phoenix passes that file to Lingui every time it extracts or compiles the catalogs and to its Vite builds, so a `.linguirc` in the project root is not read and can be deleted. To run Lingui yourself, name the file: `npx lingui extract --config .phoenix/.linguirc`, from the project root. The legacy pipeline writes `.linguirc` in the project root on every sync.
200
235
 
201
236
  ### DO NOT EDIT (Fully Auto-Generated)
202
237
 
203
- - **Everything in `.phoenix/`** - Completely regenerated on each build. The one exception is `.phoenix/variants/`, where a coding agent writes the option files for `phoenix variants`; a rebuild keeps it
204
- - `tsconfig.json`, `eslint.config.js`, `prettier.config.js`
205
- - `.linguirc`, `.nvmrc`
238
+ - **Everything in `.phoenix/`** - Completely regenerated on each build. The exceptions are `.phoenix/variants/`, where a coding agent writes the option files for `phoenix variants`, and `.phoenix/.env.generated`, the generated env file of `phoenix dev`; a rebuild keeps both
206
239
  - `src/locales/**/*.ts` - Compiled from `.po` catalogs
207
240
  - `.env.generated`
208
241
  - `phoenix` and `phoenix-*` skill folders under `.claude/skills/` and `.agents/skills/` — rewritten on every sync with anything else inside them removed, and other `phoenix`-prefixed skill folders are removed; to customise a skill, copy it to a folder whose name does not start with `phoenix`
209
242
 
210
243
  ### Agent Guidance
211
244
 
212
- Coding agents (Claude Code, Codex, Cursor) read the Phoenix agent skills. An `AGENTS.md` is yours to add for your own instructions; sync does not write one. The `phoenix`, `phoenix-cli`, `phoenix-feedback` and `phoenix-review` skills carry the SDK conventions, CLI tooling and review checklist, and the `phoenix-create-configurator` skill walks the agent from your product documents and assets to a reviewed configurator in five stages. The `phoenix-variants` skill has the agent show you several options over the dev preview when a decision is a matter of taste, and build the one you pick. Phoenix keeps them in step with the installed SDK, including the reference files inside a skill folder. During the internal beta, a project created from a canary build of the SDK gets one more section in the `phoenix` skill: once per conversation the agent checks for a newer canary and, after telling you, updates the project's SDK and runs `phoenix sync`. Other skill folders are never touched.
245
+ Coding agents (Claude Code, Codex, Cursor) read the Phoenix agent skills. An `AGENTS.md` is yours to add for your own instructions; sync does not write one. The `phoenix`, `phoenix-cli`, `phoenix-feedback` and `phoenix-review` skills carry the SDK conventions, CLI tooling and review checklist, and the `phoenix-create-configurator` skill walks the agent from your product documents and assets to a reviewed configurator in five stages. The `phoenix-variants` skill has the agent show you several options over the dev preview when a decision is a matter of taste, and build the one you pick. Phoenix keeps them in step with the installed SDK, including the reference files inside a skill folder. During the internal beta, a project created from a canary build of the SDK gets one more section in the `phoenix` skill: once per conversation the agent checks for a newer canary and, after telling you, updates the project's SDK, runs `phoenix deps`, installs, then runs `phoenix sync`. Other skill folders are never touched.
213
246
 
214
247
  Projects created by earlier SDK versions had this guidance in `CLAUDE.md`, `.cursor/rules/phoenix.mdc` and `commands/review.md`. Sync removes the SDK block from the first two, keeps your own text around it, deletes a file that held nothing else, and deletes the review commands; use the `phoenix-review` skill instead of `/review`.
215
248
 
216
249
  ### Markers for Partial Auto-Generation
217
250
 
218
- `.gitignore` holds the Phoenix entries between two marker lines. Sync rewrites that block and keeps everything outside it:
251
+ `.gitignore` holds the Phoenix entries between two marker lines. Sync rewrites that block and keeps everything outside it. With the application-spec pipeline the block does not list the files sync writes once, `tsconfig.json`, `eslint.config.js` and `prettier.config.js`, so a project commits them:
219
252
 
220
253
  ```gitignore
221
254
  # ===== BEGIN PHOENIX AUTO-GENERATED =====
@@ -239,6 +272,8 @@ With the application-spec pipeline (see [Current and legacy project tooling](?pa
239
272
  - `templates/`
240
273
  - `package.json` (scripts section, custom dependencies)
241
274
  - `.env`, `.env.example`, `.env.ci`
275
+ - `tsconfig.json` (application-spec pipeline; keep it extending `.phoenix/tsconfig.json`)
276
+ - `eslint.config.js`, `prettier.config.js` (application-spec pipeline; sync writes them once, and they are the project's afterwards)
242
277
  - `README.md`, `AGENTS.md`
243
278
 
244
279
  ## File Naming Conventions
@@ -346,6 +381,8 @@ project-root/
346
381
  │ ├── admin-interface.ts # Admin interface types
347
382
  │ ├── i18n.ts # i18n initialization
348
383
  │ ├── globals.d.ts # Global type definitions
384
+ │ ├── tsconfig.json # TypeScript settings, extended by the root tsconfig.json
385
+ │ ├── .linguirc # Lingui configuration
349
386
  │ ├── index.html # Configurator HTML entry
350
387
  │ └── admin.html # Admin HTML entry
351
388
  │
@@ -509,7 +546,7 @@ Assets are split between two locations with different deployment strategies:
509
546
 
510
547
  Localization files enable multi-language support in your configurator.
511
548
 
512
- Translatable messages are authored in TypeScript and TSX source files using `@lingui/macro`.
549
+ Translatable messages are authored in TypeScript and TSX source files using Lingui's macros: `msg` from `@lingui/core/macro` and `<Trans>` from `@lingui/react/macro`.
513
550
 
514
551
  Locale catalogs live in `src/locales/<lang>/`. Phoenix creates and updates the `messages.po` source catalogs; edit their `msgstr` values to provide translations. The `messages.ts` files are compiled from those catalogs and must not be edited directly.
515
552
 
@@ -15,7 +15,7 @@ Build a working office desk configurator from an empty folder. You will describe
15
15
 
16
16
  ## Before you start
17
17
 
18
- Use Node.js 24 and pnpm 11. The tutorial uses the office desk model served by this documentation site at `/models/office-desk.gltf`; download it first. Real client projects normally start from `phoenix init`. This tutorial creates the four essential files by hand so you can see what Phoenix owns.
18
+ Use Node.js 24 and any package manager; the commands below use pnpm, and with pnpm 11 the project also needs the `pnpm-workspace.yaml` in [Package manager](?path=/docs/phoenix-project-structure--docs#package-manager). The tutorial uses the office desk model served by this documentation site at `/models/office-desk.gltf`; download it first. Real client projects normally start from `phoenix init`. This tutorial creates the four essential files by hand so you can see what Phoenix owns.
19
19
 
20
20
  ## Step 0 — Create the project
21
21
 
@@ -40,17 +40,13 @@ Now add these four files.
40
40
  "dependencies": {
41
41
  "@salsita-ai/sdk": "0.48.0"
42
42
  },
43
- "devDependencies": {
44
- "@lingui/cli": "5.9.5",
45
- "@lingui/swc-plugin": "5.11.0"
46
- },
47
43
  "phoenix": {
48
44
  "applicationFlow": true
49
45
  }
50
46
  }
51
47
  ```
52
48
 
53
- Use the SDK version supplied by your team if it differs from the repository's current `0.48.0` version. `phoenix.applicationFlow` selects the application-spec project structure. The first sync uses Lingui while generating the rest of the dependencies, so its CLI and SWC plugin must also be present in the initial install.
49
+ Use the SDK version supplied by your team if it differs from the repository's current `0.48.0` version. `phoenix.applicationFlow` selects the application-spec project structure. The SDK runs its own Lingui, so the SDK is the only dependency you write by hand; `phoenix deps` adds the packages it needs next to it in the install step below. A project started with `phoenix init` gets a `package.json` that already declares them.
54
50
 
55
51
  ### `.env`
56
52
 
@@ -97,13 +93,17 @@ components:
97
93
  layout: universal
98
94
  ```
99
95
 
100
- Install the SDK, then ask Phoenix to generate the rest of the project:
96
+ Install the SDK, let it declare the packages it needs, such as React, three.js and MUI, install them, then ask Phoenix to generate the rest of the project:
101
97
 
102
98
  ```sh
103
99
  pnpm install
100
+ pnpm phoenix deps
101
+ pnpm install
104
102
  pnpm phoenix sync
105
103
  ```
106
104
 
105
+ `phoenix sync` stops while `package.json` lacks one of those packages; after every SDK update, run `phoenix deps` and install again (see [`phoenix deps`](?path=/docs/phoenix-phoenix-cli--docs#phoenix-deps)). With npm, the same steps are `npm install`, `npx phoenix deps`, `npm install` and `npx phoenix sync`.
106
+
107
107
  `phoenix sync` keeps `spec/` and `src/` as your authored inputs and generates the application shell, types, and `.phoenix/` implementation. Start development without a server:
108
108
 
109
109
  ```sh
@@ -8,9 +8,9 @@ Your workspace's Studio shows the setup, the link to your configurator and the s
8
8
 
9
9
  ## Before you start
10
10
 
11
- - **Package access:** `@salsita-ai/sdk` is public on npm; `npx` and `pnpm install` download it without a registry token.
11
+ - **Package access:** `@salsita-ai/sdk` is public on npm; any package manager downloads it without a registry token.
12
12
  - **Workspace details:** you need your workspace slug and its Phoenix region (`eu` or `us`), which you also received with your workspace.
13
- - **Tools:** Node.js and pnpm.
13
+ - **Tools:** Node.js and a package manager. The commands below use pnpm; with npm, run `npm install` and `npx phoenix …` instead, with Yarn `yarn phoenix …`, with Bun `bunx phoenix …`.
14
14
  - **SDK build:** during the internal beta, use the `canary` build of the SDK, as the commands below do. It is published from every change to the platform, so it is newer than the last release.
15
15
 
16
16
  ## 1. Create a project
@@ -22,11 +22,11 @@ pnpm install
22
22
  pnpm phoenix sync
23
23
  ```
24
24
 
25
- `phoenix init [folder]` writes the starter project: `package.json`, `pnpm-workspace.yaml` and the starter spec, `spec/application.yaml` and `spec/configurator.yaml`, which describe one box you can resize and recolour. The starter depends on the same SDK version as the CLI that created it, and its `package.json` has the `dev`, `build`, `deploy`, `check` and `fix` scripts, which are yours to change. `phoenix sync` then adds the rest of the project: webhooks and lint config. It writes a `.gitignore` only when the folder is inside a git repository; run `git init` before the first sync, or sync again after it, to get the file.
25
+ `phoenix init [folder]` writes the starter project: `package.json` and the starter spec, `spec/application.yaml` and `spec/configurator.yaml`, which describe one box you can resize and recolour. The starter depends on the same SDK version as the CLI that created it and on the packages the SDK requires next to it (React, three.js, MUI, Lingui and the others, with their type packages), with ESLint and Prettier at the versions the SDK uses itself. Its `package.json` has the `dev`, `build`, `deploy`, `check` and `fix` scripts, which are yours to change. `phoenix sync` then adds the rest of the project: the TypeScript, lint and formatting config and the agent skills. It writes no webhook code: a project without `src/webhooks/index.ts` gets a built-in webhook (see [Webhook Entry Point](?path=/docs/phoenix-webhooks--docs#webhook-entry-point)). It writes a `.gitignore` only when the folder is inside a git repository; run `git init` before the first sync, or sync again after it, to get the file.
26
26
 
27
- `init` only writes these files: it asks nothing and contacts no server. It refuses a folder that already has a `spec/` folder. A `package.json` already in the folder is kept, as long as it depends on the SDK.
27
+ `init` only writes these files: it asks nothing and contacts no server. It refuses a folder that already has a `spec/` folder. A `package.json` already in the folder is kept, as long as it depends on the SDK, and gains only the entries it lacks (see [Starting a New Project](?path=/docs/phoenix-phoenix-cli--docs#starting-a-new-project)).
28
28
 
29
- `pnpm-workspace.yaml` holds the pnpm settings the install needs: it allows the build scripts of the SDK's dependencies and exempts `@salsita-ai/*` packages from pnpm's minimum release age, so a build of the SDK published today installs. The file is yours to edit, for example to allow the build script of a dependency you add. `phoenix sync` adds these entries when they are missing and keeps the values you set. A project inside a pnpm monorepo gets no file of its own; the workspace root holds the settings.
29
+ Phoenix writes no package-manager settings. With pnpm 11, add a `pnpm-workspace.yaml` that allows the build scripts of the SDK's dependencies before the first install; [Package manager](?path=/docs/phoenix-project-structure--docs#package-manager) has the file.
30
30
 
31
31
  The starter `spec/application.yaml` begins with `project: default`, which means the default project of the workspace you sign in to. Leave it as it is; a workspace has one project.
32
32
 
@@ -76,16 +76,18 @@ pnpm phoenix deploy
76
76
  `phoenix deploy` goes through these steps:
77
77
 
78
78
  1. It validates the application spec.
79
- 2. It packs the project files: the `.yaml` files in `spec`, everything in `src`, `mocks`, `assets`, `public` and `templates`, and `package.json`, `pnpm-lock.yaml`, `pnpm-workspace.yaml`, `.gitignore`, `CLAUDE.md` and `.cursor/rules/phoenix.mdc`. Every `node_modules`, `.phoenix` and `__generated` folder, every `.DS_Store` and `._*` file and every `.env` and `.env.*` file are left out, at any depth.
79
+ 2. It packs the project files: the `.yaml` files in `spec`, everything in `src`, `mocks`, `assets`, `public` and `templates`, and `package.json`, `tsconfig.json`, `pnpm-lock.yaml`, `pnpm-workspace.yaml`, `.gitignore`, `CLAUDE.md` and `.cursor/rules/phoenix.mdc`. Every `node_modules`, `.phoenix` and `__generated` folder, every `.DS_Store` and `._*` file and every `.env` and `.env.*` file are left out, at any depth.
80
80
  3. It asks the server for a build. The server compares your domain model with the deployed one and refuses, before anything is uploaded, a model that changed under an already deployed model version; see [Migrations](?path=/docs/phoenix-migrations--docs).
81
81
  4. It uploads the archive, which may be up to 200 MB.
82
82
  5. It starts the build, prints a link to the build's page in Studio and follows the build until your configurator is live, then prints its URL.
83
83
 
84
- On the server, the install follows your `pnpm-lock.yaml` and `pnpm-workspace.yaml`, so it allows the same build scripts and package versions as `pnpm install` on your computer. The build runs without platform secrets. It sees only your own environment variables and the public platform values, the [build environment](?path=/docs/phoenix-phoenix-cli--docs) that `phoenix deployment:build-envs` writes. The trusted deploy step then publishes the frontend, webhooks and assets.
84
+ On the server, the install runs pnpm. It follows your `pnpm-lock.yaml` and `pnpm-workspace.yaml` when the project has them, so a pnpm project gets the same build scripts and package versions as on your computer; without them, pnpm resolves `package.json` with the settings the SDK needs. The build runs without platform secrets. It sees only your own environment variables and the public platform values, the [build environment](?path=/docs/phoenix-phoenix-cli--docs) that `phoenix deployment:build-envs` writes. The trusted deploy step then publishes the frontend, webhooks and assets.
85
85
 
86
86
  If the build fails, is cancelled or takes too long, `phoenix deploy` prints the end of the build log and exits with an error. `--no-wait` returns as soon as the build starts.
87
87
 
88
- Studio's **Builds & deployments** page lists your builds and shows which one your configurator serves. Each build shows its progress, its error and the full build log while it runs.
88
+ Studio's **Builds & deployments** page lists your builds, 20 to a page, and shows which one your configurator serves. Filter it to the live build or to the builds that failed. Each build shows its progress, its error and the full build log while it runs, and who deployed it with which CLI token.
89
+
90
+ **Rebuild** on a build's page builds the files uploaded with that build again, with your environment variables as they are now, without a new `phoenix deploy`. Use it after changing a variable, or when a build failed for a reason on our side. If the rebuild succeeds it goes live, so rebuilding an older build rolls production back to it.
89
91
 
90
92
  `phoenix deploy` refuses symlinks, hard-linked files and other special files among the project files, because builds only accept regular files. Packing uses the system `tar`, which macOS, Linux and Windows 10 or later all include. The build runner checks the uploaded archive again and keeps only project files, so a file outside the list above never reaches the build.
91
93
 
@@ -95,7 +97,7 @@ Tell us what is broken, confusing or missing, from wherever you are:
95
97
 
96
98
  - In Studio, **Send beta feedback** in the sidebar opens a short form.
97
99
  - In the terminal, `pnpm phoenix feedback "<message>" --type bug|idea|other` sends it with your sign-in, and `--file <path>` sends a text file instead of the argument. See the [CLI reference](?path=/docs/phoenix-phoenix-cli--docs).
98
- - On a build's page in Studio, **Download sources** downloads the archive `phoenix deploy` uploaded for that build, so a report only needs to name the build.
100
+ - On a build's page in Studio, **Download** → **Sources** downloads the archive `phoenix deploy` uploaded for that build, so a report only needs to name the build.
99
101
 
100
102
  Coding agents working in your project use the same command, guided by the generated `phoenix-feedback` skill. They never send on their own: an agent shows you a draft, right away when the problem is crucial and otherwise at the end of the task, and sends it only after you approve it. A report names the build with its Studio page link and the live configurator, says what the agent was doing, what happened and what it expected, quotes the exact error and ends with a condensed conversation log. Agents are told never to include secrets, credentials or personal data; parts of your project and your own words go in only through a draft you approved. When you are done with the configurator, the agent also asks you, once per conversation, to evaluate the run: minutes spent, then scores from 0 to 10 for the agent's guidance, functionality, UX, 3D quality, UI visuals and the overall result, and your comments. It asks one question at a time, never picks a score for you, tells you the answers go to the Phoenix team, shows the message and sends it only after you approve it.
101
103
 
@@ -107,5 +109,5 @@ Coding agents working in your project use the same command, guided by the genera
107
109
  - `phoenix deploy` always deploys to the workspace's default project; it doesn't read `project` from the spec yet.
108
110
  - Only `phoenix dev` works from the sign-in. `phoenix deployment:prepare-dev` still needs the `.env` block of a Studio development environment.
109
111
  - Every deploy uploads the whole project; there are no incremental uploads.
110
- - Your own environment variables are set in Studio under Environment, by a super admin of the workspace, and apply from the next deploy. `phoenix dev` doesn't receive them: your development environment has its own variables. A build reads them from `process.env`; a webhook reads the ones the spec declares under `env.webhook`, through `phx.webhooksEnv` (see [Webhooks](?path=/docs/phoenix-webhooks--docs)). They can't use platform names such as `LAMBDA_FUNCTION_NAME`, the `AWS_` prefix, the identity provider settings such as `CLERK_API_KEY`, or names the CLI and the deploy tooling read themselves, such as `SERVER_URL` or `NODE_OPTIONS`; Studio refuses those names.
112
+ - Your own environment variables are set in Studio under Environment, by a super admin of the workspace, and apply from the next deploy. After a change, **Redeploy #N now** there rebuilds your live build with the new values, without a new `phoenix deploy`; it appears once your own build is live. `phoenix dev` doesn't receive them: your development environment has its own variables. A build reads them from `process.env`; a webhook reads the ones the spec declares under `env.webhook`, through `phx.webhooksEnv` (see [Webhooks](?path=/docs/phoenix-webhooks--docs)). They can't use platform names such as `LAMBDA_FUNCTION_NAME`, the `AWS_` prefix, the identity provider settings such as `CLERK_API_KEY`, or names the CLI and the deploy tooling read themselves, such as `SERVER_URL` or `NODE_OPTIONS`; Studio refuses those names.
111
113
  - Only super admins of a workspace can open its Studio. Admins and users see a page that says so.
@@ -427,6 +427,8 @@ The `readonly` web component property lets the host force view mode without chan
427
427
 
428
428
  Because an owner-token session can be forced read-only client-side while the server still accepts writes from that owner token, Phoenix skips persistence and logs a warning instead of updating the configuration. This guards against the configuration being silently overwritten by code paths that mutate state in read-only mode. UI that triggers significant changes (anything that produces a new revision) should still be disabled when `accessInfo.viewMode` is true — the warning is a backstop, not a substitute.
429
429
 
430
+ The assistant follows the same read-only rule as the UI: its `apply` tool refuses changes while `accessInfo.viewMode` is true, that is with a read-revision token or while `readonly` is set, and makes them again once it is false. A switch of `readonly` takes effect at once, in both directions, and the configurator loads the configuration again. A change applied after `readonly` is cleared and before the configuration has loaded again is not saved; saving resumes once it has loaded. The `query` tool keeps working, including its dry-run mutations.
431
+
430
432
  ```html
431
433
  <salsita-configurator readonly></salsita-configurator>
432
434
  ```
@@ -33,6 +33,14 @@ invariants, actions, migrations, presets and the components declared in YAML. `c
33
33
  handler, element and transformer; it reads the frontend environment when it is imported, so a test that
34
34
  uses it stubs `phx.frontendEnv` first.
35
35
 
36
+ A test that mounts the configurator's UI builds from `configuratorConfig`: it carries the SDK's default
37
+ elements, the built-in layout, preset screen, not-found, not-authenticated and error pages, app loader content,
38
+ controls, toolbar buttons and sidebar-footer pieces, which `configuratorBuilder` does not, so a test that mounts the UI from `createTestApplicationConfig(configuratorBuilder)`
39
+ shows a "not found" box in place of every built-in element. Code that assembles a config without the
40
+ generated files calls `.withDefaultElements(defaultConfiguratorElements)` on its configurator builder, with
41
+ the list from `@salsita-ai/sdk/configurator`, or `defaultAdminElements` from `@salsita-ai/sdk/admin` for
42
+ the admin.
43
+
36
44
  A test passes the generated export to the helper and does not call the export's methods: they are how the
37
45
  SDK assembles an application, not an interface for tests, while the helper's call does not depend on that
38
46
  assembly.