@salsita-ai/sdk 0.50.0-develop.eb204e0da4 → 0.50.0-develop.ef06ca4ac1

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 (1872) hide show
  1. package/README.md +28 -15
  2. package/dist/admin/create-admin-pages-from-spec.d.ts +1 -1
  3. package/dist/admin/default-admin-elements.d.ts +9 -0
  4. package/dist/admin/default-admin-elements.js +1 -0
  5. package/dist/admin/default-elements/built-in-entity-element.d.ts +10 -0
  6. package/dist/admin/default-elements/built-in-entity-element.js +1 -0
  7. package/dist/admin/default-elements/built-in-layout-element.d.ts +10 -0
  8. package/dist/admin/default-elements/built-in-layout-element.js +1 -0
  9. package/dist/admin/default-elements/index.d.ts +2 -0
  10. package/dist/admin/default-elements/index.js +1 -0
  11. package/dist/admin/index.d.ts +1 -0
  12. package/dist/admin/index.js +1 -1
  13. package/dist/application-spec/caching/content-diff.js +1 -1
  14. package/dist/application-spec/core/application-file.d.ts +0 -2
  15. package/dist/application-spec/core/application-file.js +1 -1
  16. package/dist/application-spec/core/components/component-filter.d.ts +53 -0
  17. package/dist/application-spec/core/components/component-filter.js +1 -0
  18. package/dist/application-spec/core/components/index.d.ts +2 -0
  19. package/dist/application-spec/core/components/index.js +1 -0
  20. package/dist/application-spec/core/components/sdk-code-ref.d.ts +9 -0
  21. package/dist/application-spec/core/components/sdk-code-ref.js +1 -0
  22. package/dist/application-spec/core/enhanced-json-value.d.ts +0 -68
  23. package/dist/application-spec/core/enhanced-json-value.js +1 -1
  24. package/dist/application-spec/core/expressions/index.d.ts +2 -0
  25. package/dist/application-spec/core/expressions/index.js +1 -0
  26. package/dist/application-spec/core/expressions/relation-expression-params.d.ts +11 -0
  27. package/dist/application-spec/core/expressions/sdk-expression-implementation.d.ts +24 -0
  28. package/dist/application-spec/core/expressions/sdk-expression-implementation.js +1 -0
  29. package/dist/application-spec/core/index.d.ts +2 -0
  30. package/dist/application-spec/core/index.js +1 -1
  31. package/dist/application-spec/core/json-value.d.ts +1 -1
  32. package/dist/application-spec/enhanced-json/eval-to-constant.d.ts +14 -0
  33. package/dist/application-spec/enhanced-json/index.d.ts +4 -0
  34. package/dist/application-spec/enhanced-json/index.js +1 -0
  35. package/dist/application-spec/enhanced-json/is-enhanced-json-array.d.ts +2 -0
  36. package/dist/application-spec/enhanced-json/is-enhanced-json-array.js +1 -0
  37. package/dist/application-spec/enhanced-json/resolve-enhanced-json-value.d.ts +18 -0
  38. package/dist/application-spec/enhanced-json/resolve-enhanced-json-value.js +1 -0
  39. package/dist/application-spec/enhanced-json/schema-from-value.d.ts +24 -0
  40. package/dist/application-spec/enhanced-json/schema-from-value.js +1 -0
  41. package/dist/application-spec/enhanced-json/stringify-enhanced-json-value.d.ts +14 -0
  42. package/dist/application-spec/enhanced-json/stringify-enhanced-json-value.js +1 -0
  43. package/dist/application-spec/enhanced-json/validate-enhanced-json-value-caps.d.ts +12 -0
  44. package/dist/application-spec/enhanced-json/validate-enhanced-json-value-caps.js +1 -0
  45. package/dist/application-spec/enhanced-json/validate-no-legacy-code-ref.d.ts +13 -0
  46. package/dist/application-spec/enhanced-json/validate-no-legacy-code-ref.js +1 -0
  47. package/dist/application-spec/errors/diagnostic-codes.d.ts +20 -0
  48. package/dist/application-spec/errors/diagnostic-codes.js +1 -1
  49. package/dist/application-spec/errors/diagnostic-messages.d.ts +23 -0
  50. package/dist/application-spec/errors/diagnostic-messages.js +1 -1
  51. package/dist/application-spec/generate-application/code/common/code-imports.js +1 -1
  52. package/dist/application-spec/generate-application/code/common/env-reader.js +2 -2
  53. package/dist/application-spec/generate-application/code/common/index.d.ts +2 -0
  54. package/dist/application-spec/generate-application/code/common/index.js +1 -1
  55. package/dist/application-spec/generate-application/code/common/project-module-list.d.ts +8 -0
  56. package/dist/application-spec/generate-application/code/common/project-module-list.js +3 -0
  57. package/dist/application-spec/generate-application/code/common/single-quoted-string.d.ts +6 -0
  58. package/dist/application-spec/generate-application/code/common/single-quoted-string.js +1 -0
  59. package/dist/application-spec/generate-application/code/domain-runtime-files.js +1 -1
  60. package/dist/application-spec/generate-application/code/generate-application-code.d.ts +3 -2
  61. package/dist/application-spec/generate-application/code/generate-application-code.js +1 -1
  62. package/dist/application-spec/generate-application/code/project-scaffolding.d.ts +22 -14
  63. package/dist/application-spec/generate-application/code/project-scaffolding.js +2 -2
  64. package/dist/application-spec/generate-application/code/standalone-app-files.d.ts +2 -2
  65. package/dist/application-spec/generate-application/code/standalone-app-files.js +1 -1
  66. package/dist/application-spec/generate-application/code/story-files.js +1 -1
  67. package/dist/application-spec/generate-application/code/templates/admin-config.js +3 -0
  68. package/dist/application-spec/generate-application/code/templates/admin-domain-code.d.ts +1 -2
  69. package/dist/application-spec/generate-application/code/templates/admin-domain-code.js +6 -14
  70. package/dist/application-spec/generate-application/code/templates/admin-frontend-code.d.ts +1 -2
  71. package/dist/application-spec/generate-application/code/templates/admin-frontend-code.js +4 -4
  72. package/dist/application-spec/generate-application/code/templates/application-types.js +6 -6
  73. package/dist/application-spec/generate-application/code/templates/common/format-property-key.d.ts +7 -0
  74. package/dist/application-spec/generate-application/code/templates/common/format-property-key.js +1 -0
  75. package/dist/application-spec/generate-application/code/templates/common/schema-to-type-string.js +3 -3
  76. package/dist/application-spec/generate-application/code/templates/configurator-config.js +6 -4
  77. package/dist/application-spec/generate-application/code/templates/configurator-domain-code.d.ts +2 -2
  78. package/dist/application-spec/generate-application/code/templates/configurator-domain-code.js +7 -13
  79. package/dist/application-spec/generate-application/code/templates/configurator-frontend-code.d.ts +1 -2
  80. package/dist/application-spec/generate-application/code/templates/configurator-frontend-code.js +7 -9
  81. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/domain-factory-types.d.ts +35 -0
  82. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/domain-factory-types.js +5 -0
  83. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/index.d.ts +1 -0
  84. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/index.js +1 -0
  85. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-assistant.d.ts +2 -2
  86. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-assistant.js +1 -1
  87. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-component-optics.d.ts +1 -1
  88. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-component-optics.js +7 -7
  89. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-defaults.d.ts +4 -2
  90. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-defaults.js +1 -1
  91. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-domain-block.d.ts +3 -1
  92. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-domain-block.js +73 -73
  93. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.d.ts +9 -1
  94. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.js +1 -1
  95. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-phx-globals.js +6 -0
  96. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-presets.js +1 -1
  97. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-relation-expressions.js +1 -1
  98. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-resources.d.ts +6 -8
  99. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-resources.js +21 -21
  100. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-states.d.ts +1 -1
  101. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-states.js +2 -2
  102. package/dist/application-spec/generate-application/code/templates/domain-spec/index.d.ts +3 -2
  103. package/dist/application-spec/generate-application/code/templates/domain-spec/index.js +1 -1
  104. package/dist/application-spec/generate-application/code/templates/domain-spec.js +11 -11
  105. package/dist/application-spec/generate-application/code/templates/domain.js +4 -4
  106. package/dist/application-spec/generate-application/code/templates/eslint-config.d.ts +5 -0
  107. package/dist/application-spec/generate-application/code/templates/eslint-config.js +4 -5
  108. package/dist/application-spec/generate-application/code/templates/frontend-config.js +3 -5
  109. package/dist/application-spec/generate-application/code/templates/gitignore.js +0 -3
  110. package/dist/application-spec/generate-application/code/templates/global-definition/generate-action-types.d.ts +11 -0
  111. package/dist/application-spec/generate-application/code/templates/global-definition/generate-action-types.js +8 -0
  112. package/dist/application-spec/generate-application/code/templates/global-definition/generate-phx-types.d.ts +43 -0
  113. package/dist/application-spec/generate-application/code/templates/global-definition/generate-phx-types.js +31 -0
  114. package/dist/application-spec/generate-application/code/templates/global-definition/index.d.ts +2 -0
  115. package/dist/application-spec/generate-application/code/templates/global-definition/index.js +1 -1
  116. package/dist/application-spec/generate-application/code/templates/globals.js +24 -42
  117. package/dist/application-spec/generate-application/code/templates/index.d.ts +4 -10
  118. package/dist/application-spec/generate-application/code/templates/index.js +1 -1
  119. package/dist/application-spec/generate-application/code/templates/lingui-rc.d.ts +5 -0
  120. package/dist/application-spec/generate-application/code/templates/lingui-rc.js +4 -4
  121. package/dist/application-spec/generate-application/code/templates/prettier-config.d.ts +5 -0
  122. package/dist/application-spec/generate-application/code/templates/prettier-config.js +4 -5
  123. package/dist/application-spec/generate-application/code/templates/root-tsconfig.d.ts +6 -0
  124. package/dist/application-spec/generate-application/code/templates/root-tsconfig.js +2 -0
  125. package/dist/application-spec/generate-application/code/templates/skills/phoenix-cli-skill.js +1 -1
  126. package/dist/application-spec/generate-application/code/templates/skills/phoenix-create-configurator-skill.js +95 -41
  127. package/dist/application-spec/generate-application/code/templates/skills/phoenix-feedback-skill.js +40 -17
  128. package/dist/application-spec/generate-application/code/templates/skills/phoenix-review-skill.js +13 -5
  129. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill.js +1 -1
  130. package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.d.ts +1 -0
  131. package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.js +6 -0
  132. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.d.ts +62 -16
  133. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.js +19 -7
  134. package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.d.ts +58 -0
  135. package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.js +1 -0
  136. package/dist/application-spec/generate-application/code/templates/spec-code/index.d.ts +2 -0
  137. package/dist/application-spec/generate-application/code/templates/spec-code/index.js +1 -0
  138. package/dist/application-spec/generate-application/code/templates/spec-code/spec-code.d.ts +18 -0
  139. package/dist/application-spec/generate-application/code/templates/spec-code/spec-code.js +41 -0
  140. package/dist/application-spec/generate-application/code/templates/spec-messages/index.d.ts +1 -0
  141. package/dist/application-spec/generate-application/code/templates/spec-messages/index.js +1 -0
  142. package/dist/application-spec/generate-application/code/templates/spec-messages/spec-messages.d.ts +20 -0
  143. package/dist/application-spec/generate-application/code/templates/spec-messages/spec-messages.js +6 -0
  144. package/dist/application-spec/generate-application/code/templates/story/phx-module.d.ts +8 -2
  145. package/dist/application-spec/generate-application/code/templates/story/phx-module.js +15 -3
  146. package/dist/application-spec/generate-application/code/templates/story/wrapper.d.ts +3 -0
  147. package/dist/application-spec/generate-application/code/templates/story/wrapper.js +2 -1
  148. package/dist/application-spec/generate-application/code/templates/tsconfig.d.ts +5 -0
  149. package/dist/application-spec/generate-application/code/templates/tsconfig.js +1 -1
  150. package/dist/application-spec/generate-application/code/templates/webhook-builders.js +9 -4
  151. package/dist/application-spec/generate-application/code/templates/webhook-index.d.ts +6 -1
  152. package/dist/application-spec/generate-application/code/templates/webhook-index.js +10 -1
  153. package/dist/application-spec/generate-application/code/templates/webhooks-config.js +2 -3
  154. package/dist/application-spec/generate-application/index.d.ts +2 -0
  155. package/dist/application-spec/generate-application/index.js +1 -1
  156. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.d.ts +6 -4
  157. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.js +1 -1
  158. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.d.ts +8 -3
  159. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.js +1 -1
  160. package/dist/application-spec/generate-application/runtime/admin-runtime/states-runtime.d.ts +2 -2
  161. package/dist/application-spec/generate-application/runtime/application-runtime.d.ts +19 -7
  162. package/dist/application-spec/generate-application/runtime/application-runtime.js +1 -1
  163. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.d.ts +6 -4
  164. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.js +1 -1
  165. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.d.ts +9 -4
  166. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.js +1 -1
  167. package/dist/application-spec/generate-application/runtime/configurator-runtime/states-runtime.d.ts +2 -2
  168. package/dist/application-spec/generate-application/runtime/factory-data/factory-data-runtime.d.ts +43 -0
  169. package/dist/application-spec/generate-application/runtime/factory-data/factory-data-runtime.js +1 -0
  170. package/dist/application-spec/generate-application/runtime/factory-data/index.d.ts +3 -0
  171. package/dist/application-spec/generate-application/runtime/factory-data/index.js +1 -0
  172. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.d.ts +13 -0
  173. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.js +1 -0
  174. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.d.ts +16 -0
  175. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.js +1 -0
  176. package/dist/application-spec/generate-application/runtime/migrations/index.d.ts +1 -0
  177. package/dist/application-spec/generate-application/runtime/migrations/index.js +1 -0
  178. package/dist/application-spec/generate-application/runtime/migrations/migration-runtime.d.ts +53 -0
  179. package/dist/application-spec/generate-application/runtime/migrations/migration-runtime.js +1 -0
  180. package/dist/application-spec/generate-application/runtime/sections/actions-runtime.d.ts +14 -0
  181. package/dist/application-spec/generate-application/runtime/sections/actions-runtime.js +1 -0
  182. package/dist/application-spec/generate-application/runtime/sections/assistant-runtime.d.ts +5 -4
  183. package/dist/application-spec/generate-application/runtime/sections/assistant-runtime.js +1 -1
  184. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.d.ts +3 -2
  185. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.js +1 -1
  186. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.d.ts +2 -1
  187. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.js +1 -1
  188. package/dist/application-spec/generate-application/runtime/sections/component-optic.d.ts +5 -1
  189. package/dist/application-spec/generate-application/runtime/sections/component-optic.js +1 -1
  190. package/dist/application-spec/generate-application/runtime/sections/data-runtime.d.ts +4 -4
  191. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.d.ts +7 -4
  192. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.js +1 -1
  193. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.d.ts +9 -5
  194. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.js +1 -1
  195. package/dist/application-spec/generate-application/runtime/sections/index.d.ts +1 -0
  196. package/dist/application-spec/generate-application/runtime/sections/index.js +1 -1
  197. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.d.ts +3 -1
  198. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.js +1 -1
  199. package/dist/application-spec/generate-application/runtime/sections/theme-runtime.d.ts +2 -2
  200. package/dist/application-spec/generate-application/runtime/sections/transformers-runtime.d.ts +4 -6
  201. package/dist/application-spec/generate-application/runtime/spec-code/index.d.ts +2 -0
  202. package/dist/application-spec/generate-application/runtime/spec-code/index.js +1 -0
  203. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.d.ts +18 -0
  204. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.js +1 -0
  205. package/dist/application-spec/generate-application/runtime/spec-code/spec-code-module.d.ts +17 -0
  206. package/dist/application-spec/generate-application/runtime-spec/decode-runtime-spec.d.ts +9 -0
  207. package/dist/application-spec/generate-application/runtime-spec/decode-runtime-spec.js +1 -0
  208. package/dist/application-spec/generate-application/runtime-spec/encode-runtime-spec.d.ts +8 -0
  209. package/dist/application-spec/generate-application/runtime-spec/encode-runtime-spec.js +1 -0
  210. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.d.ts +27 -0
  211. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.js +1 -0
  212. package/dist/application-spec/generate-application/runtime-spec/index.d.ts +5 -0
  213. package/dist/application-spec/generate-application/runtime-spec/index.js +1 -0
  214. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.d.ts +68 -0
  215. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.js +1 -0
  216. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.d.ts +40 -0
  217. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.js +1 -0
  218. package/dist/application-spec/index.d.ts +1 -0
  219. package/dist/application-spec/index.js +1 -1
  220. package/dist/application-spec/parse-application-files/categorize/categorize-files.d.ts +37 -1
  221. package/dist/application-spec/parse-application-files/categorize/categorize-files.js +1 -1
  222. package/dist/application-spec/parse-application-files/categorize/earlier-generated-editor-configs.d.ts +16 -0
  223. package/dist/application-spec/parse-application-files/categorize/earlier-generated-editor-configs.js +9 -0
  224. package/dist/application-spec/parse-application-files/categorize/earlier-generated-tsconfig.d.ts +9 -0
  225. package/dist/application-spec/parse-application-files/categorize/earlier-generated-tsconfig.js +1 -0
  226. package/dist/application-spec/parse-application-files/categorize/module-analysis.d.ts +1 -1
  227. package/dist/application-spec/parse-application-files/categorize/module-analysis.js +1 -1
  228. package/dist/application-spec/parse-application-files/merge/index.d.ts +1 -0
  229. package/dist/application-spec/parse-application-files/merge/index.js +1 -1
  230. package/dist/application-spec/parse-application-files/merge/merged-actions.d.ts +11 -0
  231. package/dist/application-spec/parse-application-files/merge/merged-actions.js +1 -0
  232. package/dist/application-spec/parse-application-files/merge/merged-spec.d.ts +2 -0
  233. package/dist/application-spec/parse-application-files/merge/merged-spec.js +1 -1
  234. package/dist/application-spec/parse-application-files/raw-spec/index.d.ts +1 -0
  235. package/dist/application-spec/parse-application-files/raw-spec/index.js +1 -1
  236. package/dist/application-spec/parse-application-files/raw-spec/parse-yaml-spec-file.js +1 -1
  237. package/dist/application-spec/parse-application-files/raw-spec/raw-actions.d.ts +18 -0
  238. package/dist/application-spec/parse-application-files/raw-spec/raw-actions.js +1 -0
  239. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.d.ts +29 -4
  240. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.js +1 -1
  241. package/dist/application-spec/parse-application-files/raw-spec/raw-spec-file.d.ts +2 -0
  242. package/dist/application-spec/parse-application-files/raw-spec/raw-spec-file.js +1 -1
  243. package/dist/application-spec/parse-application-files/resolve/resolve-import-modules.js +1 -1
  244. package/dist/application-spec/parse-application-files/spec/application/admin-spec/admin-spec.js +1 -1
  245. package/dist/application-spec/parse-application-files/spec/application/application-spec.js +1 -1
  246. package/dist/application-spec/parse-application-files/spec/application/configurator-spec/configurator-spec.d.ts +4 -2
  247. package/dist/application-spec/parse-application-files/spec/application/configurator-spec/configurator-spec.js +1 -1
  248. package/dist/application-spec/parse-application-files/spec/common/index.d.ts +2 -0
  249. package/dist/application-spec/parse-application-files/spec/common/index.js +1 -1
  250. package/dist/application-spec/parse-application-files/spec/common/schema-ref-resolver.d.ts +23 -0
  251. package/dist/application-spec/parse-application-files/spec/common/schema-ref-resolver.js +1 -0
  252. package/dist/application-spec/parse-application-files/spec/common/value-type/format-value-type.d.ts +3 -0
  253. package/dist/application-spec/parse-application-files/spec/common/value-type/format-value-type.js +1 -0
  254. package/dist/application-spec/parse-application-files/spec/common/value-type/index.d.ts +5 -0
  255. package/dist/application-spec/parse-application-files/spec/common/value-type/index.js +1 -0
  256. package/dist/application-spec/parse-application-files/spec/common/value-type/intersect-value-types.d.ts +6 -0
  257. package/dist/application-spec/parse-application-files/spec/common/value-type/intersect-value-types.js +1 -0
  258. package/dist/application-spec/parse-application-files/spec/common/value-type/is-assignable-value-type.d.ts +8 -0
  259. package/dist/application-spec/parse-application-files/spec/common/value-type/is-assignable-value-type.js +1 -0
  260. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type-at.d.ts +10 -0
  261. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type-at.js +1 -0
  262. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type.d.ts +98 -0
  263. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type.js +1 -0
  264. package/dist/application-spec/parse-application-files/spec/components/bindings/component-path.d.ts +13 -0
  265. package/dist/application-spec/parse-application-files/spec/components/bindings/component-path.js +1 -0
  266. package/dist/application-spec/parse-application-files/spec/components/bindings/index.d.ts +2 -0
  267. package/dist/application-spec/parse-application-files/spec/components/bindings/index.js +1 -1
  268. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding-type.d.ts +24 -0
  269. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding-type.js +1 -0
  270. package/dist/application-spec/parse-application-files/spec/components/component-entry.d.ts +1 -9
  271. package/dist/application-spec/parse-application-files/spec/components/component-entry.js +1 -1
  272. package/dist/application-spec/parse-application-files/spec/components/component-filter.d.ts +1 -54
  273. package/dist/application-spec/parse-application-files/spec/components/component-filter.js +1 -1
  274. package/dist/application-spec/parse-application-files/spec/components/component-state-type.d.ts +8 -0
  275. package/dist/application-spec/parse-application-files/spec/components/component-state-type.js +1 -0
  276. package/dist/application-spec/parse-application-files/spec/components/filter-criterion-types.d.ts +13 -0
  277. package/dist/application-spec/parse-application-files/spec/components/filter-criterion-types.js +1 -0
  278. package/dist/application-spec/parse-application-files/spec/components/index.d.ts +1 -1
  279. package/dist/application-spec/parse-application-files/spec/components/index.js +1 -1
  280. package/dist/application-spec/parse-application-files/spec/components/static-entity-id.d.ts +14 -0
  281. package/dist/application-spec/parse-application-files/spec/components/static-entity-id.js +1 -0
  282. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.d.ts +6 -0
  283. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.js +1 -1
  284. package/dist/application-spec/parse-application-files/spec/components/user-components.d.ts +7 -4
  285. package/dist/application-spec/parse-application-files/spec/components/user-components.js +1 -1
  286. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.d.ts +24 -0
  287. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.js +1 -0
  288. package/dist/application-spec/parse-application-files/spec/expressions/expression-read.d.ts +13 -0
  289. package/dist/application-spec/parse-application-files/spec/expressions/expression-value-type.d.ts +9 -0
  290. package/dist/application-spec/parse-application-files/spec/expressions/expression-value-type.js +1 -0
  291. package/dist/application-spec/parse-application-files/spec/expressions/expression.d.ts +1 -28
  292. package/dist/application-spec/parse-application-files/spec/expressions/expression.js +1 -1
  293. package/dist/application-spec/parse-application-files/spec/expressions/expressions.d.ts +7 -3
  294. package/dist/application-spec/parse-application-files/spec/expressions/expressions.js +1 -1
  295. package/dist/application-spec/parse-application-files/spec/expressions/index.d.ts +0 -1
  296. package/dist/application-spec/parse-application-files/spec/expressions/index.js +1 -1
  297. package/dist/application-spec/parse-application-files/spec/expressions/memo-eval-plan.js +1 -1
  298. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.d.ts +3 -1
  299. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.js +1 -1
  300. package/dist/application-spec/parse-application-files/spec/invariants/invariants.d.ts +2 -2
  301. package/dist/application-spec/parse-application-files/spec/invariants/invariants.js +1 -1
  302. package/dist/application-spec/parse-application-files/spec/model/defaults.d.ts +7 -2
  303. package/dist/application-spec/parse-application-files/spec/model/defaults.js +1 -1
  304. package/dist/application-spec/parse-application-files/spec/model/index.d.ts +1 -0
  305. package/dist/application-spec/parse-application-files/spec/model/index.js +1 -1
  306. package/dist/application-spec/parse-application-files/spec/model/model-type-resolution.d.ts +10 -0
  307. package/dist/application-spec/parse-application-files/spec/model/model-type-resolution.js +1 -0
  308. package/dist/application-spec/parse-application-files/spec/model/names/action-name.d.ts +10 -0
  309. package/dist/application-spec/parse-application-files/spec/model/names/action-name.js +1 -0
  310. package/dist/application-spec/parse-application-files/spec/model/names/index.d.ts +1 -0
  311. package/dist/application-spec/parse-application-files/spec/model/names/index.js +1 -1
  312. package/dist/application-spec/parse-application-files/spec/relations/reference-field-type.d.ts +25 -0
  313. package/dist/application-spec/parse-application-files/spec/relations/reference-field-type.js +1 -0
  314. package/dist/application-spec/parse-application-files/spec/relations/relation-field-mismatch.d.ts +46 -0
  315. package/dist/application-spec/parse-application-files/spec/relations/relation-field-mismatch.js +1 -0
  316. package/dist/application-spec/parse-application-files/spec/relations/relations.d.ts +4 -3
  317. package/dist/application-spec/parse-application-files/spec/relations/relations.js +1 -1
  318. package/dist/application-spec/parse-application-files/spec/sections/actions.d.ts +35 -0
  319. package/dist/application-spec/parse-application-files/spec/sections/actions.js +1 -0
  320. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-field-type.d.ts +5 -21
  321. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-field-type.js +1 -1
  322. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.d.ts +14 -39
  323. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.js +1 -1
  324. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-server-settings.d.ts +2 -2
  325. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant.d.ts +5 -19
  326. package/dist/application-spec/parse-application-files/spec/sections/index.d.ts +1 -0
  327. package/dist/application-spec/parse-application-files/spec/sections/index.js +1 -1
  328. package/dist/application-spec/parse-application-files/spec/sections/infra.d.ts +2 -0
  329. package/dist/application-spec/parse-application-files/spec/sections/infra.js +1 -1
  330. package/dist/client/authorized-client.d.ts +3 -1
  331. package/dist/client/authorized-client.js +1 -1
  332. package/dist/client/contract.d.ts +34 -0
  333. package/dist/client/contract.js +1 -1
  334. package/dist/client/index.d.ts +2 -2
  335. package/dist/client/index.js +1 -1
  336. package/dist/client/local-authorized-client.d.ts +3 -1
  337. package/dist/client/local-authorized-client.js +1 -1
  338. package/dist/client/memory-authorized-client.d.ts +3 -1
  339. package/dist/client/memory-authorized-client.js +1 -1
  340. package/dist/client/phoenix-api.d.ts +761 -57
  341. package/dist/configurator/ConfiguratorApp.js +1 -1
  342. package/dist/configurator/app-loader-content/DefaultAppLoaderContent.d.ts +2 -0
  343. package/dist/configurator/app-loader-content/DefaultAppLoaderContent.js +5 -0
  344. package/dist/configurator/app-loader-content/app-loader-content-name.d.ts +5 -0
  345. package/dist/configurator/app-loader-content/app-loader-content-name.js +1 -0
  346. package/dist/configurator/app-loader-content/index.d.ts +2 -0
  347. package/dist/configurator/app-loader-content/index.js +1 -0
  348. package/dist/configurator/application-runtime/extensions/configurator-extension-systems.d.ts +2 -1
  349. package/dist/configurator/application-runtime/extensions/configurator-extension-systems.js +1 -1
  350. package/dist/configurator/application-runtime/extensions/create-configurator-extensions.js +1 -1
  351. package/dist/configurator/application-runtime/extensions/selectors.d.ts +5 -2
  352. package/dist/configurator/application-runtime/extensions/selectors.js +1 -1
  353. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.d.ts +304 -0
  354. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.js +1 -0
  355. package/dist/configurator/application-runtime/extensions/systems/assistant-system/browser-details.d.ts +17 -0
  356. package/dist/configurator/application-runtime/extensions/systems/assistant-system/browser-details.js +1 -0
  357. package/dist/configurator/application-runtime/extensions/systems/assistant-system/change-recorder.d.ts +85 -0
  358. package/dist/configurator/application-runtime/extensions/systems/assistant-system/change-recorder.js +1 -0
  359. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.d.ts +166 -0
  360. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.js +1 -0
  361. package/dist/configurator/application-runtime/extensions/systems/camera-control-system/camera-control-system.d.ts +1 -1
  362. package/dist/configurator/application-runtime/extensions/systems/drag-and-drop-system/drag-and-drop-system.d.ts +3 -3
  363. package/dist/configurator/application-runtime/extensions/systems/graphql-system/close-unclosed-braces.d.ts +12 -0
  364. package/dist/configurator/application-runtime/extensions/systems/graphql-system/close-unclosed-braces.js +1 -0
  365. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.d.ts +4 -0
  366. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.js +1 -1
  367. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.d.ts +36 -5
  368. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.js +1 -1
  369. package/dist/configurator/application-runtime/extensions/systems/graphql-system/inject-assistant-lenses.d.ts +11 -0
  370. package/dist/configurator/application-runtime/extensions/systems/graphql-system/inject-assistant-lenses.js +1 -0
  371. package/dist/configurator/application-runtime/extensions/systems/graphql-system/side-effects.d.ts +9 -0
  372. package/dist/configurator/application-runtime/extensions/systems/graphql-system/side-effects.js +1 -0
  373. package/dist/configurator/application-runtime/extensions/systems/index.d.ts +1 -0
  374. package/dist/configurator/application-runtime/extensions/systems/index.js +1 -1
  375. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.d.ts +4 -2
  376. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.js +1 -1
  377. package/dist/configurator/common/configurator-interface.d.ts +90 -3
  378. package/dist/configurator/common/configurator-interface.js +1 -1
  379. package/dist/configurator/common/index.d.ts +3 -1
  380. package/dist/configurator/common/index.js +1 -1
  381. package/dist/configurator/common/use-reset-camera.d.ts +6 -0
  382. package/dist/configurator/common/use-reset-camera.js +1 -0
  383. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.d.ts +12 -0
  384. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.js +1 -0
  385. package/dist/configurator/configuration-not-found-page/create-configuration-not-found-page.d.ts +9 -0
  386. package/dist/configurator/configuration-not-found-page/create-configuration-not-found-page.js +1 -0
  387. package/dist/configurator/configuration-not-found-page/index.d.ts +2 -0
  388. package/dist/configurator/configuration-not-found-page/index.js +1 -0
  389. package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.d.ts +12 -0
  390. package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.js +1 -0
  391. package/dist/configurator/configurator-context/PresetSelectionProvider.js +1 -1
  392. package/dist/configurator/configurator-context/PreviewContextProvider.js +1 -1
  393. package/dist/configurator/configurator-context/ViewportStateSync.d.ts +2 -2
  394. package/dist/configurator/configurator-context/ViewportStateSync.js +1 -1
  395. package/dist/configurator/configurator-context/configurator-hooks/layout-hooks.d.ts +7 -1
  396. package/dist/configurator/configurator-error-page/BuiltInConfiguratorErrorPage.d.ts +6 -0
  397. package/dist/configurator/configurator-error-page/BuiltInConfiguratorErrorPage.js +1 -0
  398. package/dist/configurator/configurator-error-page/ConfiguratorErrorPageElement.d.ts +12 -0
  399. package/dist/configurator/configurator-error-page/ConfiguratorErrorPageElement.js +1 -0
  400. package/dist/configurator/configurator-error-page/create-configurator-error-page.d.ts +9 -0
  401. package/dist/configurator/configurator-error-page/create-configurator-error-page.js +1 -0
  402. package/dist/configurator/configurator-error-page/index.d.ts +3 -0
  403. package/dist/configurator/configurator-error-page/index.js +1 -0
  404. package/dist/configurator/index.d.ts +2 -1
  405. package/dist/configurator/index.js +1 -1
  406. package/dist/configurator/pages/ConfiguratorErrorPage.d.ts +0 -1
  407. package/dist/configurator/pages/ConfiguratorErrorPage.js +1 -1
  408. package/dist/configurator/pages/ConfiguratorNotFoundPage.js +1 -1
  409. package/dist/configurator/pages/DefaultConfiguratorLayout.d.ts +7 -0
  410. package/dist/configurator/pages/DefaultConfiguratorLayout.js +1 -0
  411. package/dist/configurator/pages/DefaultNotAuthenticatedPage.d.ts +8 -0
  412. package/dist/configurator/pages/DefaultNotAuthenticatedPage.js +1 -0
  413. package/dist/configurator/pages/DefaultPresetUi.d.ts +7 -0
  414. package/dist/configurator/pages/DefaultPresetUi.js +1 -0
  415. package/dist/configurator/pages/LoadedConfiguratorDetailPage.js +1 -1
  416. package/dist/configurator/pages/NewConfiguratorPage.js +1 -1
  417. package/dist/configurator/pages/PresetCreationErrorPage.d.ts +1 -1
  418. package/dist/configurator/pages/PresetCreationErrorPage.js +1 -1
  419. package/dist/configurator/pages/RootPage.js +1 -1
  420. package/dist/configurator/pages/configurator-layout-name.d.ts +2 -0
  421. package/dist/configurator/pages/configurator-layout-name.js +1 -0
  422. package/dist/configurator/pages/default-configurator-elements.d.ts +12 -0
  423. package/dist/configurator/pages/default-configurator-elements.js +1 -0
  424. package/dist/configurator/pages/default-elements/built-in-entity-element.d.ts +10 -0
  425. package/dist/configurator/pages/default-elements/built-in-entity-element.js +1 -0
  426. package/dist/configurator/pages/default-elements/built-in-layout-element.d.ts +10 -0
  427. package/dist/configurator/pages/default-elements/built-in-layout-element.js +1 -0
  428. package/dist/configurator/pages/default-elements/domain-control-elements.d.ts +6 -0
  429. package/dist/configurator/pages/default-elements/domain-control-elements.js +1 -0
  430. package/dist/configurator/pages/default-elements/index.d.ts +4 -0
  431. package/dist/configurator/pages/default-elements/index.js +1 -0
  432. package/dist/configurator/pages/default-elements/recipe-panel-elements.d.ts +3 -0
  433. package/dist/configurator/pages/default-elements/recipe-panel-elements.js +1 -0
  434. package/dist/configurator/pages/default-elements/sidebar-footer-elements.d.ts +7 -0
  435. package/dist/configurator/pages/default-elements/sidebar-footer-elements.js +1 -0
  436. package/dist/configurator/pages/default-elements/toolbar-elements.d.ts +7 -0
  437. package/dist/configurator/pages/default-elements/toolbar-elements.js +1 -0
  438. package/dist/configurator/pages/error-boundaries/GeneralErrorBoundary.js +1 -1
  439. package/dist/configurator/pages/index.d.ts +1 -0
  440. package/dist/configurator/pages/index.js +1 -1
  441. package/dist/configurator/preset-screen-elements/PresetDeviceNotSupportedElement.d.ts +4 -0
  442. package/dist/configurator/preset-screen-elements/PresetDeviceNotSupportedElement.js +1 -0
  443. package/dist/configurator/preset-screen-elements/PresetPageActionElement.d.ts +4 -0
  444. package/dist/configurator/preset-screen-elements/PresetPageActionElement.js +1 -0
  445. package/dist/configurator/preset-screen-elements/index.d.ts +2 -0
  446. package/dist/configurator/preset-screen-elements/index.js +1 -0
  447. package/dist/configurator/scene/scene-analytics/scene-analytics.d.ts +2 -2
  448. package/dist/configurator/scene/scene-controls/DeleteEntityFab.js +1 -1
  449. package/dist/configurator/scene/scene-controls/SelectionHotspot.js +1 -1
  450. package/dist/configurator/scene/scene-controls/hotspot-drag-handle/HotspotDragHandle.d.ts +1 -1
  451. package/dist/configurator/scene/scene-controls/hotspot-drag-handle/HotspotDragSceneHandle.d.ts +1 -1
  452. package/dist/configurator/scene/scene-entity/dimension-indicators/DimensionIndicator.d.ts +1 -1
  453. package/dist/configurator/scene/scene-entity/dimension-indicators/DimensionIndicatorInternal.d.ts +1 -1
  454. package/dist/configurator/scene/scene-entity/drag-and-drop/shared.d.ts +2 -2
  455. package/dist/configurator/scene/scene-entity/drag-and-drop/use-drag-object.d.ts +1 -1
  456. package/dist/configurator/scene/scene-entity/materials/RemoteReplacedMaterial.js +1 -1
  457. package/dist/configurator/scene/scene-entity/objects/SceneEntityObjectTextDecal.d.ts +1 -1
  458. package/dist/configurator/ui/assistant/AssistantChips.d.ts +17 -0
  459. package/dist/configurator/ui/assistant/AssistantChips.js +1 -0
  460. package/dist/configurator/ui/assistant/AssistantComposer.d.ts +7 -0
  461. package/dist/configurator/ui/assistant/AssistantComposer.js +1 -0
  462. package/dist/configurator/ui/assistant/AssistantMarkdown.d.ts +12 -0
  463. package/dist/configurator/ui/assistant/AssistantMarkdown.js +1 -0
  464. package/dist/configurator/ui/assistant/AssistantPanel.d.ts +11 -0
  465. package/dist/configurator/ui/assistant/AssistantPanel.js +1 -0
  466. package/dist/configurator/ui/assistant/AssistantThread.d.ts +10 -0
  467. package/dist/configurator/ui/assistant/AssistantThread.js +1 -0
  468. package/dist/configurator/ui/assistant/assistant-failure.d.ts +18 -0
  469. package/dist/configurator/ui/assistant/assistant-failure.js +1 -0
  470. package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.d.ts +13 -0
  471. package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.js +1 -0
  472. package/dist/configurator/ui/assistant/entity-link/entity-link-selection.d.ts +22 -0
  473. package/dist/configurator/ui/assistant/entity-link/entity-link-selection.js +1 -0
  474. package/dist/configurator/ui/assistant/entity-link/entity-link-state.d.ts +27 -0
  475. package/dist/configurator/ui/assistant/entity-link/entity-link-state.js +1 -0
  476. package/dist/configurator/ui/assistant/entity-link/index.d.ts +2 -0
  477. package/dist/configurator/ui/assistant/entity-link/index.js +1 -0
  478. package/dist/configurator/ui/assistant/form/AssistantForm.d.ts +19 -0
  479. package/dist/configurator/ui/assistant/form/AssistantForm.js +1 -0
  480. package/dist/configurator/ui/assistant/form/built-in-form-registry.d.ts +10 -0
  481. package/dist/configurator/ui/assistant/form/built-in-form-registry.js +1 -0
  482. package/dist/configurator/ui/assistant/form/compose-answer.d.ts +11 -0
  483. package/dist/configurator/ui/assistant/form/compose-answer.js +1 -0
  484. package/dist/configurator/ui/assistant/form/describe-build-errors.d.ts +6 -0
  485. package/dist/configurator/ui/assistant/form/describe-build-errors.js +1 -0
  486. package/dist/configurator/ui/assistant/form/form-element-definition.d.ts +14 -0
  487. package/dist/configurator/ui/assistant/form/form-model.d.ts +38 -0
  488. package/dist/configurator/ui/assistant/form/form-registry.d.ts +31 -0
  489. package/dist/configurator/ui/assistant/form/form-registry.js +8 -0
  490. package/dist/configurator/ui/assistant/form/form-state.d.ts +4 -0
  491. package/dist/configurator/ui/assistant/form/form-state.js +1 -0
  492. package/dist/configurator/ui/assistant/form/index.d.ts +2 -0
  493. package/dist/configurator/ui/assistant/form/index.js +1 -0
  494. package/dist/configurator/ui/assistant/form/parse-form-block.d.ts +9 -0
  495. package/dist/configurator/ui/assistant/form/parse-form-block.js +1 -0
  496. package/dist/configurator/ui/assistant/form/read-form-attributes.d.ts +13 -0
  497. package/dist/configurator/ui/assistant/form/read-form-attributes.js +1 -0
  498. package/dist/configurator/ui/assistant/form-elements/FormGroup.d.ts +3 -0
  499. package/dist/configurator/ui/assistant/form-elements/FormGroup.js +1 -0
  500. package/dist/configurator/ui/assistant/form-elements/FormOptions.d.ts +3 -0
  501. package/dist/configurator/ui/assistant/form-elements/FormOptions.js +1 -0
  502. package/dist/configurator/ui/assistant/form-elements/FormReply.d.ts +3 -0
  503. package/dist/configurator/ui/assistant/form-elements/FormReply.js +1 -0
  504. package/dist/configurator/ui/assistant/form-elements/FormText.d.ts +3 -0
  505. package/dist/configurator/ui/assistant/form-elements/FormText.js +1 -0
  506. package/dist/configurator/ui/assistant/form-elements/form-element-props.d.ts +34 -0
  507. package/dist/configurator/ui/assistant/form-elements/index.d.ts +5 -0
  508. package/dist/configurator/ui/assistant/form-elements/index.js +1 -0
  509. package/dist/configurator/ui/assistant/index.d.ts +2 -0
  510. package/dist/configurator/ui/assistant/index.js +1 -0
  511. package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.d.ts +16 -0
  512. package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.js +1 -0
  513. package/dist/configurator/ui/assistant/reference-link/assistant-link-target.d.ts +34 -0
  514. package/dist/configurator/ui/assistant/reference-link/assistant-link-target.js +1 -0
  515. package/dist/configurator/ui/assistant/reference-link/assistant-reference-details.d.ts +25 -0
  516. package/dist/configurator/ui/assistant/reference-link/assistant-reference-details.js +1 -0
  517. package/dist/configurator/ui/assistant/reference-link/index.d.ts +3 -0
  518. package/dist/configurator/ui/assistant/reference-link/index.js +1 -0
  519. package/dist/configurator/ui/assistant/reference-link/reference-styles.d.ts +12 -0
  520. package/dist/configurator/ui/assistant/reference-link/reference-styles.js +1 -0
  521. package/dist/configurator/ui/assistant/reference-link/use-assistant-reference-details.d.ts +8 -0
  522. package/dist/configurator/ui/assistant/reference-link/use-assistant-reference-details.js +1 -0
  523. package/dist/configurator/ui/assistant/resource-image/AssistantImage.d.ts +9 -0
  524. package/dist/configurator/ui/assistant/resource-image/AssistantImage.js +1 -0
  525. package/dist/configurator/ui/assistant/resource-image/index.d.ts +3 -0
  526. package/dist/configurator/ui/assistant/resource-image/index.js +1 -0
  527. package/dist/configurator/ui/assistant/resource-image/resource-path.d.ts +11 -0
  528. package/dist/configurator/ui/assistant/resource-image/resource-path.js +1 -0
  529. package/dist/configurator/ui/assistant/resource-image/use-resource-image-url.d.ts +5 -0
  530. package/dist/configurator/ui/assistant/resource-image/use-resource-image-url.js +1 -0
  531. package/dist/configurator/ui/assistant/streamed-markdown.d.ts +8 -0
  532. package/dist/configurator/ui/assistant/streamed-markdown.js +2 -0
  533. package/dist/configurator/ui/assistant/theme.d.ts +2 -0
  534. package/dist/configurator/ui/assistant/theme.js +1 -0
  535. package/dist/configurator/ui/assistant/thread-items.d.ts +55 -0
  536. package/dist/configurator/ui/assistant/thread-items.js +1 -0
  537. package/dist/configurator/ui/assistant/tool-chip.d.ts +44 -0
  538. package/dist/configurator/ui/assistant/tool-chip.js +1 -0
  539. package/dist/configurator/ui/assistant/use-follow-stream.d.ts +17 -0
  540. package/dist/configurator/ui/assistant/use-follow-stream.js +1 -0
  541. package/dist/configurator/ui/assistant/use-is-assistant-panel-open.d.ts +5 -0
  542. package/dist/configurator/ui/assistant/use-is-assistant-panel-open.js +1 -0
  543. package/dist/configurator/ui/configurator-layout/sidebar-keys/index.d.ts +1 -0
  544. package/dist/configurator/ui/configurator-layout/sidebar-keys/index.js +1 -0
  545. package/dist/configurator/ui/configurator-layout/sidebar-keys/sidebar-keys.d.ts +11 -0
  546. package/dist/configurator/ui/configurator-layout/sidebar-keys/sidebar-keys.js +1 -0
  547. package/dist/configurator/ui/configurator-layout/slots/canvas/LayoutCanvas.js +1 -1
  548. package/dist/configurator/ui/configurator-layout/slots/canvas/SharedCanvas.js +1 -1
  549. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/DesktopSidebar.d.ts +101 -0
  550. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/DesktopSidebar.js +16 -0
  551. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/index.d.ts +1 -0
  552. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/index.js +1 -0
  553. package/dist/configurator/ui/configurator-layout/slots/mobile-tabs/use-mobile-tabs.d.ts +1 -1
  554. package/dist/configurator/ui/configurator-layout/slots/mobile-tabs/use-mobile-tabs.js +1 -1
  555. package/dist/configurator/ui/configurator-layout/slots/services/InvariantViolations.d.ts +4 -4
  556. package/dist/configurator/ui/configurator-layout/slots/services/InvariantViolations.js +1 -1
  557. package/dist/configurator/ui/configurator-layout/slots/services/Services.js +1 -1
  558. package/dist/configurator/ui/configurator-layout/slots/services/SideEffects.d.ts +3 -6
  559. package/dist/configurator/ui/configurator-layout/slots/services/SideEffects.js +1 -1
  560. package/dist/configurator/ui/configurator-layout/slots/sidebar-tabs/use-sidebar-tabs.d.ts +1 -1
  561. package/dist/configurator/ui/configurator-layout/slots/sidebar-tabs/use-sidebar-tabs.js +1 -1
  562. package/dist/configurator/ui/configurator-layout/slots/slots.d.ts +1 -0
  563. package/dist/configurator/ui/configurator-layout/slots/slots.js +1 -1
  564. package/dist/configurator/ui/configurator-layout/universal/DesktopLayout.d.ts +0 -74
  565. package/dist/configurator/ui/configurator-layout/universal/DesktopLayout.js +5 -20
  566. package/dist/configurator/ui/configurator-layout/universal/DesktopPreview.js +1 -1
  567. package/dist/configurator/ui/configurator-layout/universal/MobileLayout.d.ts +2 -0
  568. package/dist/configurator/ui/configurator-layout/universal/MobileLayout.js +3 -3
  569. package/dist/configurator/ui/configurator-layout/universal/MobilePreview.js +1 -1
  570. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.d.ts +47 -0
  571. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.js +1 -0
  572. package/dist/configurator/ui/configurator-layout/universal/use-scene-safe-area.d.ts +11 -26
  573. package/dist/configurator/ui/configurator-layout/universal/use-scene-safe-area.js +1 -1
  574. package/dist/configurator/ui/legacy/layout/common/CommonFinalizeButton.js +1 -1
  575. package/dist/configurator/ui/legacy/layout/common/CommonSummaryButton.js +1 -1
  576. package/dist/configurator/ui/legacy/layout/common/CommonTopNavigation.js +1 -1
  577. package/dist/configurator/ui/legacy/layout/common/ReactiveInterfaceLayout.js +1 -1
  578. package/dist/configurator/ui/legacy/layout/common/ResponsiveFinalizeButton.js +1 -1
  579. package/dist/configurator/ui/legacy/layout/common/SummaryReadLayout.js +1 -1
  580. package/dist/configurator/ui/legacy/layout/simple/SimpleOwnerLayout.js +1 -1
  581. package/dist/configurator/ui/legacy/layout/simple/SimpleTopNavigation.js +1 -1
  582. package/dist/configurator/ui/legacy/layout/steps/StepsNavigation.d.ts +2 -2
  583. package/dist/configurator/ui/legacy/layout/steps/StepsNavigation.js +1 -1
  584. package/dist/configurator/ui/legacy/layout/steps/StepsOwnerLayout.js +1 -1
  585. package/dist/configurator/ui/legacy/layout/steps/StepsSidebarFooter.js +1 -1
  586. package/dist/configurator/ui/legacy/layout/tabs/TabsOwnerLayout.js +1 -1
  587. package/dist/configurator/ui/legacy/mobile-controls/MobileControls.d.ts +1 -1
  588. package/dist/configurator/ui/legacy/toolbar/common/DimensionUnitSelector.js +1 -1
  589. package/dist/configurator/ui/legacy/toolbar/common/MeasurementsIndicatorsSwitch.js +1 -1
  590. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/FullscreenToolbarAction.js +1 -1
  591. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/HelpToolbarAction.js +1 -1
  592. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/MeasurementsToolbarAction.js +1 -1
  593. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/UndoRedoToolbarGroup.js +1 -1
  594. package/dist/configurator/ui/phoenix-layout-elements/AppLoader.js +2 -6
  595. package/dist/configurator/ui/phoenix-layout-elements/AssistantToolbarButton.d.ts +10 -0
  596. package/dist/configurator/ui/phoenix-layout-elements/AssistantToolbarButton.js +1 -0
  597. package/dist/configurator/ui/phoenix-layout-elements/EnterFullscreenToolbarButton.js +1 -1
  598. package/dist/configurator/ui/phoenix-layout-elements/ExitFullscreenToolbarButton.js +1 -1
  599. package/dist/configurator/ui/phoenix-layout-elements/HelpToolbarButton.js +1 -1
  600. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomOwnerUi.d.ts +1 -0
  601. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomOwnerUi.js +1 -1
  602. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomReadUi.d.ts +1 -0
  603. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomReadUi.js +1 -1
  604. package/dist/configurator/ui/phoenix-layout-elements/MeasurementsToolbarButton.js +1 -1
  605. package/dist/configurator/ui/phoenix-layout-elements/RedoToolbarButton.js +1 -1
  606. package/dist/configurator/ui/phoenix-layout-elements/UndoToolbarButton.js +1 -1
  607. package/dist/configurator/ui/phoenix-layout-elements/header/common/back-button/use-go-back-action.js +1 -1
  608. package/dist/configurator/ui/phoenix-layout-elements/header/common/horizontal-tabs/DesktopHorizontalTabs.js +1 -1
  609. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/DesktopNavigationSteps.d.ts +1 -1
  610. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/DesktopNavigationSteps.js +1 -1
  611. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.d.ts +2 -8
  612. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.js +1 -1
  613. package/dist/configurator/ui/phoenix-layout-elements/index.d.ts +1 -0
  614. package/dist/configurator/ui/phoenix-layout-elements/index.js +1 -1
  615. package/dist/configurator/ui/phoenix-layout-elements/measurements/DimensionUnitSelector.js +1 -1
  616. package/dist/configurator/ui/phoenix-layout-elements/measurements/MeasurementsIndicatorsSwitch.js +1 -1
  617. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/basic/BasicFinalizeButton.js +1 -1
  618. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/CustomFinalizeButton.js +1 -1
  619. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/EnterSummaryButton.js +1 -1
  620. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/FinalizeActions.js +1 -1
  621. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/NextStepButton.js +1 -1
  622. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/PreviousStepButton.js +1 -1
  623. package/dist/configurator/ui/preset-layout/CategoryPresetUi.js +1 -1
  624. package/dist/configurator/ui/preset-layout/PresetUi.d.ts +4 -0
  625. package/dist/configurator/ui/preset-layout/PresetUi.js +1 -1
  626. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.d.ts +10 -0
  627. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.js +1 -0
  628. package/dist/configurator/ui/save-message-snackbars/index.d.ts +1 -0
  629. package/dist/configurator/ui/save-message-snackbars/index.js +1 -0
  630. package/dist/docs/complex-use-cases/filtered-controls-with-fix-dialog.mdx +100 -117
  631. package/dist/docs/complex-use-cases/navigation-reset-selection.mdx +18 -12
  632. package/dist/docs/complex-use-cases/sketching.mdx +0 -38
  633. package/dist/docs/controls/select-attribute/cardselect.mdx +9 -13
  634. package/dist/docs/controls/select-child-entity/cardselect.mdx +1 -0
  635. package/dist/docs/dimensions/3d-scene-integration/dimension-indicators.mdx +2 -2
  636. package/dist/docs/dimensions/3d-scene-integration/editable-angle-indicator.mdx +1 -1
  637. package/dist/docs/dimensions/3d-scene-integration/editable-distance-dimension-indicator.mdx +1 -1
  638. package/dist/docs/dimensions/3d-scene-integration/list-selector-dimension-indicator.mdx +1 -1
  639. package/dist/docs/drag-and-drop/drag-handle.mdx +1 -1
  640. package/dist/docs/drag-and-drop/hotspot-handle.mdx +1 -1
  641. package/dist/docs/drag-and-drop/planes.mdx +1 -1
  642. package/dist/docs/drag-and-drop/rotatable.mdx +2 -2
  643. package/dist/docs/fabs/basic.mdx +2 -2
  644. package/dist/docs/index.json +53 -2
  645. package/dist/docs/integrations/woocommerce/local-development.mdx +1 -1
  646. package/dist/docs/layouts/custom-layout.mdx +2435 -0
  647. package/dist/docs/layouts/custom-price.mdx +14 -16
  648. package/dist/docs/layouts/header/fixed.mdx +2 -2
  649. package/dist/docs/layouts/header/floating.mdx +2 -2
  650. package/dist/docs/layouts/sidebar/in-a-custom-layout.mdx +380 -0
  651. package/dist/docs/layouts/sidebar/tabs.mdx +24 -21
  652. package/dist/docs/layouts/sidebar-footer/basic.mdx +32 -77
  653. package/dist/docs/layouts/toolbar.mdx +6 -0
  654. package/dist/docs/other-features/client-side-rendering/declarative.mdx +1 -1
  655. package/dist/docs/other-features/domain-actions.mdx +418 -0
  656. package/dist/docs/other-features/error-5xx.mdx +1 -1
  657. package/dist/docs/other-features/not-found-404.mdx +1 -1
  658. package/dist/docs/other-features/side-effects.mdx +76 -45
  659. package/dist/docs/other-features/transformers.mdx +5 -1
  660. package/dist/docs/other-features/violation-messages.mdx +52 -56
  661. package/dist/docs/phoenix/admin.mdx +11 -26
  662. package/dist/docs/phoenix/application-states.mdx +9 -7
  663. package/dist/docs/phoenix/best-practices.mdx +1 -0
  664. package/dist/docs/phoenix/clerk-sign-in.mdx +1 -1
  665. package/dist/docs/phoenix/components.mdx +6 -0
  666. package/dist/docs/phoenix/configurator-interface.mdx +333 -81
  667. package/dist/docs/phoenix/deployments.mdx +3 -7
  668. package/dist/docs/phoenix/domain-model.mdx +6 -0
  669. package/dist/docs/phoenix/expression-context.mdx +11 -3
  670. package/dist/docs/phoenix/finalization.mdx +2 -2
  671. package/dist/docs/phoenix/getting-started.mdx +7 -4
  672. package/dist/docs/phoenix/integration/headless-mode-external.mdx +5 -5
  673. package/dist/docs/phoenix/integration/widget-mode-external.mdx +5 -5
  674. package/dist/docs/phoenix/layout-slots.mdx +116 -0
  675. package/dist/docs/phoenix/localization.mdx +13 -28
  676. package/dist/docs/phoenix/migration-guide.mdx +24 -11
  677. package/dist/docs/phoenix/phoenix-cli.mdx +249 -83
  678. package/dist/docs/phoenix/project-structure.mdx +90 -36
  679. package/dist/docs/phoenix/quickstart.mdx +9 -9
  680. package/dist/docs/phoenix/sdk-builder-workflow.mdx +22 -20
  681. package/dist/docs/phoenix/testing.mdx +148 -0
  682. package/dist/docs/phoenix/webhook-membership.mdx +10 -9
  683. package/dist/docs/phoenix/webhooks.mdx +23 -6
  684. package/dist/docs/recipes-and-delete/recipe-hierarchy-selection.mdx +15 -13
  685. package/dist/docs/relations/hierarchy.mdx +13 -2
  686. package/dist/docs/ux-guidelines/choosing-a-control.mdx +11 -0
  687. package/dist/domain/admin-domain/__generated/enhanced-model.d.ts +1 -2
  688. package/dist/domain/admin-domain/__generated/model/versions/v1.d.ts +1 -1
  689. package/dist/domain/admin-domain/__generated/model/versions/v2.d.ts +1 -1
  690. package/dist/domain/admin-domain/__generated/model/versions/v3.d.ts +1 -1
  691. package/dist/domain/admin-domain/__generated/model/versions/v4.d.ts +1 -1
  692. package/dist/domain/admin-domain/__generated/model/versions/v5.d.ts +1 -1
  693. package/dist/domain/admin-domain/__generated/model/versions/v6.d.ts +2 -2
  694. package/dist/domain/admin-domain/__generated/model/versions/v6.js +1 -1
  695. package/dist/domain/admin-domain/implementation/common-admin-expressions.d.ts +26 -14
  696. package/dist/domain/admin-domain/implementation/common-admin-migrations.d.ts +1 -1
  697. package/dist/domain/admin-domain/implementation/common-admin-publish.d.ts +1 -2
  698. package/dist/domain/admin-domain/index.d.ts +9 -5
  699. package/dist/domain/admin-domain/index.js +1 -1
  700. package/dist/domain/application/GetApplicationWrapperHandler.d.ts +2 -2
  701. package/dist/domain/application/GetThemeHandler.d.ts +1 -1
  702. package/dist/domain/application/GetWebComponentOptions.d.ts +1 -1
  703. package/dist/domain/application/admin-page-factories.d.ts +1 -2
  704. package/dist/domain/application/application-config.d.ts +30 -95
  705. package/dist/domain/application/assistant/assistant-fields.d.ts +12 -0
  706. package/dist/domain/application/assistant/assistant-fields.js +1 -0
  707. package/dist/domain/application/assistant/assistant-form-elements.d.ts +28 -0
  708. package/dist/domain/application/assistant/assistant-form-elements.js +1 -0
  709. package/dist/domain/application/assistant/assistant-manifest.d.ts +71 -0
  710. package/dist/domain/application/assistant/assistant-manifest.js +1 -0
  711. package/dist/domain/application/assistant/assistant-resolved-manifest.d.ts +131 -0
  712. package/dist/domain/application/assistant/assistant-resolved-manifest.js +1 -0
  713. package/dist/domain/application/assistant/assistant-value-type.d.ts +9 -0
  714. package/dist/domain/application/assistant/assistant-value-type.js +1 -0
  715. package/dist/domain/application/assistant/build-assistant-lenses.d.ts +14 -0
  716. package/dist/domain/application/assistant/build-assistant-lenses.js +5 -0
  717. package/dist/domain/application/assistant/build-assistant-manifest.d.ts +4 -0
  718. package/dist/domain/application/assistant/build-assistant-manifest.js +1 -0
  719. package/dist/domain/application/assistant/create-assistant-execution-schema.d.ts +32 -0
  720. package/dist/domain/application/assistant/create-assistant-execution-schema.js +1 -0
  721. package/dist/domain/application/assistant/generate-assistant-prompt.d.ts +3 -0
  722. package/dist/domain/application/assistant/generate-assistant-prompt.js +1 -0
  723. package/dist/domain/application/assistant/index.d.ts +11 -0
  724. package/dist/domain/application/assistant/index.js +1 -0
  725. package/dist/domain/application/assistant/session-setup/AssistantSetupHandler.d.ts +20 -0
  726. package/dist/domain/application/assistant/session-setup/AssistantSetupHandler.js +1 -0
  727. package/dist/domain/application/assistant/session-setup/apply-assistant-setup.d.ts +10 -0
  728. package/dist/domain/application/assistant/session-setup/apply-assistant-setup.js +1 -0
  729. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.d.ts +48 -0
  730. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.js +1 -0
  731. package/dist/domain/application/assistant/session-setup/create-session-assistant.d.ts +15 -0
  732. package/dist/domain/application/assistant/session-setup/create-session-assistant.js +1 -0
  733. package/dist/domain/application/assistant/session-setup/index.d.ts +4 -0
  734. package/dist/domain/application/assistant/session-setup/index.js +1 -0
  735. package/dist/domain/application/assistant-field-options.d.ts +2 -3
  736. package/dist/domain/application/assistant-mutations.d.ts +16 -17
  737. package/dist/domain/application/assistant-mutations.js +1 -1
  738. package/dist/domain/application/assistant-recipe-groups.d.ts +6 -8
  739. package/dist/domain/application/configurator-builder.d.ts +36 -18
  740. package/dist/domain/application/configurator-builder.js +1 -1
  741. package/dist/domain/application/create-initial-published-data.d.ts +6 -7
  742. package/dist/domain/application/index.d.ts +3 -6
  743. package/dist/domain/application/index.js +1 -1
  744. package/dist/domain/application/published-data/DataRowValidatorHandler.d.ts +1 -1
  745. package/dist/domain/application/published-data/FilterPublishedChunksHandler.d.ts +1 -1
  746. package/dist/domain/application/published-data/MapPublishedChunkedDataHandler.d.ts +1 -1
  747. package/dist/domain/application/published-data/MapPublishedRevisionDataHandler.d.ts +1 -1
  748. package/dist/domain/application/published-data/SheetValidatorHandler.d.ts +1 -1
  749. package/dist/domain/application/published-data/build-legend-data.d.ts +1 -1
  750. package/dist/domain/application/published-data/create-finalize-admin-domain.d.ts +1 -2
  751. package/dist/domain/application/published-data/format-field-type.d.ts +1 -1
  752. package/dist/domain/application/published-data/map-data-to-sheet.d.ts +1 -1
  753. package/dist/domain/application/published-data/map-published-chunked-data.d.ts +3 -3
  754. package/dist/domain/application/published-data/map-published-data.d.ts +7 -4
  755. package/dist/domain/application/published-data/validate-sheet-data.d.ts +1 -1
  756. package/dist/domain/available-system-components.js +1 -1
  757. package/dist/domain/core/action/action-factory.d.ts +11 -0
  758. package/dist/domain/core/action/action-factory.js +1 -0
  759. package/dist/domain/core/action/action.d.ts +71 -0
  760. package/dist/domain/core/action/action.js +1 -0
  761. package/dist/domain/core/action/index.d.ts +2 -0
  762. package/dist/domain/core/action/index.js +1 -0
  763. package/dist/domain/core/component/component-reader-types.d.ts +43 -0
  764. package/dist/domain/core/component/component-reader-types.js +1 -0
  765. package/dist/domain/core/component/debug-state-component.d.ts +14 -0
  766. package/dist/domain/core/component/debug-state-component.js +1 -0
  767. package/dist/domain/core/component/domain-component-optic.d.ts +65 -0
  768. package/dist/domain/core/component/domain-component-optic.js +16 -0
  769. package/dist/domain/core/component/drag-state-component.d.ts +16 -0
  770. package/dist/domain/core/component/drag-state-component.js +1 -0
  771. package/dist/domain/core/component/export-state-component.d.ts +15 -0
  772. package/dist/domain/core/component/export-state-component.js +1 -0
  773. package/dist/domain/core/component/fullscreen-state-component.d.ts +14 -0
  774. package/dist/domain/core/component/fullscreen-state-component.js +1 -0
  775. package/dist/domain/core/component/group-components-by-entity-id-and-name.d.ts +8 -0
  776. package/dist/domain/core/component/group-components-by-entity-id-and-name.js +1 -0
  777. package/dist/domain/core/component/hover-state-component.d.ts +14 -0
  778. package/dist/domain/core/component/hover-state-component.js +1 -0
  779. package/dist/domain/core/component/index.d.ts +18 -0
  780. package/dist/domain/core/component/index.js +1 -0
  781. package/dist/domain/core/component/legacy-filter.d.ts +498 -0
  782. package/dist/domain/core/component/navigation-state-component.d.ts +15 -0
  783. package/dist/domain/core/component/navigation-state-component.js +1 -0
  784. package/dist/domain/core/component/selection-state-component.d.ts +14 -0
  785. package/dist/domain/core/component/selection-state-component.js +1 -0
  786. package/dist/domain/core/component/system-component-builder.d.ts +11 -0
  787. package/dist/domain/core/component/system-component-builder.js +1 -0
  788. package/dist/domain/core/component/system-component-filter.d.ts +811 -0
  789. package/dist/domain/core/component/system-virtual-entity.js +1 -0
  790. package/dist/domain/core/component/tool-state-component.d.ts +14 -0
  791. package/dist/domain/core/component/tool-state-component.js +1 -0
  792. package/dist/domain/core/component/updates.d.ts +123 -0
  793. package/dist/domain/core/component/view-state-component.d.ts +14 -0
  794. package/dist/domain/core/component/view-state-component.js +1 -0
  795. package/dist/domain/core/component/viewport-state-component.d.ts +29 -0
  796. package/dist/domain/core/component/viewport-state-component.js +1 -0
  797. package/dist/domain/core/data-schema/data-cell-value.d.ts +4 -0
  798. package/dist/domain/core/data-schema/data-cell-value.js +1 -0
  799. package/dist/domain/core/data-schema/data-schema-array-field.d.ts +5 -0
  800. package/dist/domain/core/data-schema/data-schema-array-field.js +1 -0
  801. package/dist/domain/core/data-schema/data-schema-field-object.d.ts +4 -0
  802. package/dist/domain/core/data-schema/data-schema-field-object.js +1 -0
  803. package/dist/domain/core/data-schema/data-schema-field.d.ts +2 -0
  804. package/dist/domain/core/data-schema/data-schema-field.js +1 -0
  805. package/dist/domain/core/data-schema/data-schema-localized-field.d.ts +4 -0
  806. package/dist/domain/core/data-schema/data-schema-localized-field.js +1 -0
  807. package/dist/domain/core/data-schema/data-schema-primitive-field.d.ts +5 -0
  808. package/dist/domain/core/data-schema/data-schema-primitive-field.js +1 -0
  809. package/dist/domain/core/data-schema/data-schema.d.ts +2 -0
  810. package/dist/domain/core/data-schema/data-schema.js +1 -0
  811. package/dist/domain/core/data-schema/index.d.ts +7 -0
  812. package/dist/domain/core/data-schema/index.js +1 -0
  813. package/dist/domain/core/decoder/create-decoder.d.ts +6 -0
  814. package/dist/domain/core/decoder/create-decoder.js +1 -0
  815. package/dist/domain/core/decoder/decoder.d.ts +6 -0
  816. package/dist/domain/core/decoder/decoder.js +1 -0
  817. package/dist/domain/core/decoder/index.d.ts +2 -0
  818. package/dist/domain/core/decoder/index.js +1 -0
  819. package/dist/domain/core/domain-factory.d.ts +7 -4
  820. package/dist/domain/core/domain-factory.js +1 -1
  821. package/dist/domain/core/domain.d.ts +4 -5
  822. package/dist/domain/core/domain.js +1 -1
  823. package/dist/domain/core/emission/index.d.ts +8 -0
  824. package/dist/domain/core/emission/index.js +1 -0
  825. package/dist/domain/core/emission/reset-state-emission.d.ts +12 -0
  826. package/dist/domain/core/emission/reset-state-emission.js +1 -0
  827. package/dist/domain/core/emission/state-emission.d.ts +4 -0
  828. package/dist/domain/core/emission/state-emission.js +1 -0
  829. package/dist/domain/core/emission/state-update-emission.d.ts +14 -0
  830. package/dist/domain/core/emission/state-update-emission.js +1 -0
  831. package/dist/domain/core/emission/state-validation-result.d.ts +18 -0
  832. package/dist/domain/core/emission/state-validation-result.js +1 -0
  833. package/dist/domain/core/emission/transformation-log.d.ts +2 -0
  834. package/dist/domain/core/emission/transformation-log.js +1 -0
  835. package/dist/domain/core/emission/transformer-log-entry.d.ts +6 -0
  836. package/dist/domain/core/emission/transformer-log-entry.js +1 -0
  837. package/dist/domain/core/emission/transformer-log.d.ts +11 -0
  838. package/dist/domain/core/emission/transformer-log.js +1 -0
  839. package/dist/domain/core/emission/transformer-phase.d.ts +1 -0
  840. package/dist/domain/core/emission/transformer-phase.js +1 -0
  841. package/dist/domain/core/expression/aliased-expressions.d.ts +10 -0
  842. package/dist/domain/core/expression/aliased-expressions.js +1 -0
  843. package/dist/domain/core/expression/constant-expressions.d.ts +16 -0
  844. package/dist/domain/core/expression/constant-expressions.js +1 -0
  845. package/dist/domain/core/expression/custom-expression.d.ts +25 -0
  846. package/dist/domain/core/expression/custom-expression.js +1 -0
  847. package/dist/domain/core/expression/expression.d.ts +46 -0
  848. package/dist/domain/core/expression/expression.js +1 -0
  849. package/dist/domain/core/expression/index.d.ts +4 -0
  850. package/dist/domain/core/expression/index.js +1 -0
  851. package/dist/domain/core/index.d.ts +13 -16
  852. package/dist/domain/core/index.js +1 -1
  853. package/dist/domain/core/invariant/builtin-invariant.d.ts +5 -0
  854. package/dist/domain/core/invariant/custom-invariants.d.ts +13 -0
  855. package/dist/domain/core/invariant/custom-invariants.js +1 -0
  856. package/dist/domain/core/invariant/index.d.ts +5 -0
  857. package/dist/domain/core/invariant/index.js +1 -0
  858. package/dist/domain/core/invariant/invariants.d.ts +10 -0
  859. package/dist/domain/core/invariant/invariants.js +1 -0
  860. package/dist/domain/core/invariant/violation-component.js +1 -0
  861. package/dist/domain/core/invariant/violation.d.ts +133 -0
  862. package/dist/domain/core/invariant/violation.js +1 -0
  863. package/dist/domain/core/model/component.d.ts +46 -0
  864. package/dist/domain/core/model/index.d.ts +6 -0
  865. package/dist/domain/core/model/index.js +1 -0
  866. package/dist/domain/core/model/model.d.ts +127 -0
  867. package/dist/domain/core/model/reflection.d.ts +114 -0
  868. package/dist/domain/core/model/reflection.js +1 -0
  869. package/dist/domain/core/recipe/index.d.ts +1 -0
  870. package/dist/domain/core/recipe/index.js +1 -0
  871. package/dist/domain/core/recipe/recipes.d.ts +23 -0
  872. package/dist/domain/core/recipe/recipes.js +1 -0
  873. package/dist/domain/core/relation/all-of-type-relation.d.ts +19 -0
  874. package/dist/domain/core/relation/all-of-type-relation.js +1 -0
  875. package/dist/domain/core/relation/component-factories.d.ts +14 -0
  876. package/dist/domain/core/relation/component-factories.js +1 -0
  877. package/dist/domain/core/relation/composed-of.d.ts +12 -0
  878. package/dist/domain/core/relation/composed-of.js +1 -0
  879. package/dist/domain/core/relation/direct-relation.d.ts +17 -0
  880. package/dist/domain/core/relation/index.d.ts +8 -0
  881. package/dist/domain/core/relation/index.js +1 -0
  882. package/dist/domain/core/relation/indirect-relation.d.ts +25 -0
  883. package/dist/domain/core/relation/indirect-relation.js +1 -0
  884. package/dist/domain/core/relation/reference-component.d.ts +17 -0
  885. package/dist/domain/core/relation/reference-component.js +1 -0
  886. package/dist/domain/core/relation/reference-field.d.ts +7 -0
  887. package/dist/domain/core/relation/reference-field.js +1 -0
  888. package/dist/domain/core/relation/relation-factory.d.ts +22 -0
  889. package/dist/domain/core/relation/relation-factory.js +1 -0
  890. package/dist/domain/core/schema/enhanced-json-schema.js +1 -0
  891. package/dist/domain/core/schema/extended-schema-validator.js +1 -0
  892. package/dist/domain/core/schema/index.d.ts +3 -0
  893. package/dist/domain/core/schema/index.js +1 -0
  894. package/dist/domain/core/schema/schema-validator.js +1 -0
  895. package/dist/domain/core/state/id-sequence.d.ts +15 -0
  896. package/dist/domain/core/state/id-sequence.js +1 -0
  897. package/dist/domain/core/state/index.d.ts +3 -0
  898. package/dist/domain/core/state/index.js +1 -0
  899. package/dist/domain/core/state/migrations.d.ts +67 -0
  900. package/dist/domain/core/state/migrations.js +1 -0
  901. package/dist/domain/core/state/state.d.ts +9 -0
  902. package/dist/domain/domain-builder.d.ts +16 -9
  903. package/dist/domain/domain-builder.js +1 -1
  904. package/dist/domain/domain-context/action-system/action-system.d.ts +38 -0
  905. package/dist/domain/domain-context/action-system/action-system.js +1 -0
  906. package/dist/domain/domain-context/action-system/index.d.ts +1 -0
  907. package/dist/domain/domain-context/action-system/index.js +1 -0
  908. package/dist/domain/domain-context/analytics-system/index.d.ts +2 -0
  909. package/dist/domain/domain-context/analytics-system/index.js +1 -0
  910. package/dist/domain/domain-context/create-transformer.d.ts +2 -2
  911. package/dist/domain/domain-context/dimension-system/dimension-state.js +1 -1
  912. package/dist/domain/domain-context/dimension-system/dimension-system.d.ts +3 -4
  913. package/dist/domain/domain-context/dimension-system/dimension-system.js +1 -1
  914. package/dist/domain/domain-context/dimension-system/index.d.ts +1 -0
  915. package/dist/domain/domain-context/dimension-system/index.js +1 -0
  916. package/dist/domain/domain-context/domain-context-systems.d.ts +11 -10
  917. package/dist/domain/domain-context/index.d.ts +8 -17
  918. package/dist/domain/domain-context/index.js +1 -1
  919. package/dist/domain/domain-context/navigation-system/index.d.ts +3 -0
  920. package/dist/domain/domain-context/navigation-system/index.js +1 -0
  921. package/dist/domain/domain-context/navigation-system/navigation-system.d.ts +5 -8
  922. package/dist/domain/domain-context/navigation-system/navigation-system.js +1 -1
  923. package/dist/domain/domain-context/navigation-system/navigation-updates.d.ts +1 -12
  924. package/dist/domain/domain-context/navigation-system/navigation-updates.js +1 -1
  925. package/dist/domain/domain-context/navigation-system/selection-transformers.d.ts +2 -2
  926. package/dist/domain/domain-context/navigation-system/selection-transformers.js +1 -1
  927. package/dist/domain/domain-context/recipe-system/index.d.ts +1 -0
  928. package/dist/domain/domain-context/recipe-system/index.js +1 -0
  929. package/dist/domain/domain-context/recipe-system/recipe-cooker-system.d.ts +2 -4
  930. package/dist/domain/domain-context/recipe-system/recipe-cooker-system.js +1 -1
  931. package/dist/domain/domain-context/relation-transformers/cascade-deletes.d.ts +3 -3
  932. package/dist/domain/domain-context/relation-transformers/cascade-deletes.js +1 -1
  933. package/dist/domain/domain-context/relation-transformers/cascade-ref-pruning.d.ts +3 -3
  934. package/dist/domain/domain-context/relation-transformers/cascade-ref-pruning.js +1 -1
  935. package/dist/domain/domain-context/relation-transformers/create-entity-refs.d.ts +3 -3
  936. package/dist/domain/domain-context/relation-transformers/create-entity-refs.js +2 -2
  937. package/dist/domain/domain-context/relation-transformers/index.d.ts +4 -0
  938. package/dist/domain/domain-context/relation-transformers/index.js +1 -0
  939. package/dist/domain/domain-context/relation-transformers/replace-refs.d.ts +3 -3
  940. package/dist/domain/domain-context/relation-transformers/replace-refs.js +1 -1
  941. package/dist/domain/domain-context/store-system/apply-updates.d.ts +1 -3
  942. package/dist/domain/domain-context/store-system/apply-updates.js +1 -1
  943. package/dist/domain/domain-context/store-system/index.d.ts +4 -0
  944. package/dist/domain/domain-context/store-system/index.js +1 -0
  945. package/dist/domain/domain-context/store-system/next-domain-entity-id.d.ts +1 -13
  946. package/dist/domain/domain-context/store-system/next-domain-entity-id.js +1 -1
  947. package/dist/domain/domain-context/store-system/reconcile-projected-entities.d.ts +1 -2
  948. package/dist/domain/domain-context/store-system/reconcile-projected-entities.js +1 -1
  949. package/dist/domain/domain-context/store-system/store-system.d.ts +2 -39
  950. package/dist/domain/domain-context/store-system/store-system.js +2 -2
  951. package/dist/domain/domain-context/store-system/system-state.d.ts +2 -4
  952. package/dist/domain/domain-context/store-system/system-state.js +1 -1
  953. package/dist/domain/domain-context/transformers/actions-builder.d.ts +1 -2
  954. package/dist/domain/domain-context/transformers/actions-builder.js +1 -1
  955. package/dist/domain/domain-context/transformers/auto-snap-transformer.d.ts +6 -10
  956. package/dist/domain/domain-context/transformers/auto-snap-transformer.js +1 -1
  957. package/dist/domain/domain-context/transformers/chain-builder.d.ts +3 -3
  958. package/dist/domain/domain-context/transformers/context.d.ts +2 -7
  959. package/dist/domain/domain-context/transformers/context.js +1 -1
  960. package/dist/domain/domain-context/transformers/entity-builder.d.ts +1 -5
  961. package/dist/domain/domain-context/transformers/entity-builder.js +1 -1
  962. package/dist/domain/domain-context/transformers/index.d.ts +1 -1
  963. package/dist/domain/domain-context/transformers/index.js +1 -1
  964. package/dist/domain/domain-context/transformers/then-builder.d.ts +1 -2
  965. package/dist/domain/domain-context/transformers/then-builder.js +1 -1
  966. package/dist/domain/domain-context/transformers/when-builder.d.ts +3 -9
  967. package/dist/domain/domain-context/transformers/when-builder.js +1 -1
  968. package/dist/domain/domain-context/undo-system.d.ts +29 -3
  969. package/dist/domain/domain-context/undo-system.js +1 -1
  970. package/dist/domain/domain-runtime/access/selectors.d.ts +9 -0
  971. package/dist/domain/domain-runtime/access/selectors.js +1 -1
  972. package/dist/domain/domain-runtime/access/types.d.ts +2 -0
  973. package/dist/domain/domain-runtime/access/types.js +1 -1
  974. package/dist/domain/domain-runtime/domain-context/action-context.d.ts +11 -0
  975. package/dist/domain/domain-runtime/domain-context/action-context.js +1 -0
  976. package/dist/domain/domain-runtime/domain-context/component-reader.d.ts +1 -4
  977. package/dist/domain/domain-runtime/domain-context/component-reader.js +1 -1
  978. package/dist/domain/domain-runtime/domain-context/domain-context.js +1 -1
  979. package/dist/domain/domain-runtime/domain-context/expression-context.d.ts +8 -0
  980. package/dist/domain/domain-runtime/domain-context/expression-context.js +1 -0
  981. package/dist/domain/domain-runtime/domain-context/index.d.ts +3 -0
  982. package/dist/domain/domain-runtime/domain-context/runtime-expression-context.d.ts +18 -0
  983. package/dist/domain/domain-runtime/domain-context/runtime-expression-context.js +1 -0
  984. package/dist/domain/domain-runtime/domain-context/selectors.d.ts +22 -24
  985. package/dist/domain/domain-runtime/domain-context/selectors.js +1 -1
  986. package/dist/domain/domain-runtime/domain-context/types.d.ts +4 -1
  987. package/dist/domain/domain-runtime/domain-runtime.d.ts +100 -72
  988. package/dist/domain/domain-runtime/errors/implementation-error-collector.d.ts +19 -0
  989. package/dist/domain/domain-runtime/errors/implementation-error-collector.js +1 -0
  990. package/dist/domain/domain-runtime/errors/implementation-error.d.ts +46 -0
  991. package/dist/domain/domain-runtime/errors/implementation-error.js +1 -0
  992. package/dist/domain/domain-runtime/errors/implementation-errors.d.ts +13 -0
  993. package/dist/domain/domain-runtime/errors/implementation-errors.js +1 -0
  994. package/dist/domain/domain-runtime/errors/index.d.ts +4 -0
  995. package/dist/domain/domain-runtime/errors/index.js +1 -0
  996. package/dist/domain/domain-runtime/errors/to-implementation-errors.d.ts +10 -0
  997. package/dist/domain/domain-runtime/errors/to-implementation-errors.js +1 -0
  998. package/dist/domain/domain-runtime/index.d.ts +1 -0
  999. package/dist/domain/domain-runtime/index.js +1 -1
  1000. package/dist/domain/domain-runtime/spec/create-violation-expressions.d.ts +24 -0
  1001. package/dist/domain/domain-runtime/spec/create-violation-expressions.js +1 -0
  1002. package/dist/domain/domain-runtime/spec/index.d.ts +5 -0
  1003. package/dist/domain/domain-runtime/spec/index.js +1 -1
  1004. package/dist/domain/domain-runtime/spec/initialize.d.ts +11 -0
  1005. package/dist/domain/domain-runtime/spec/initialize.js +1 -1
  1006. package/dist/domain/domain-runtime/spec/memoize-expression.d.ts +16 -0
  1007. package/dist/domain/domain-runtime/spec/module-checks/element-registration.d.ts +111 -0
  1008. package/dist/domain/domain-runtime/spec/module-checks/element-registration.js +1 -0
  1009. package/dist/domain/domain-runtime/spec/module-checks/handler-registration.d.ts +34 -0
  1010. package/dist/domain/domain-runtime/spec/module-checks/handler-registration.js +1 -0
  1011. package/dist/domain/domain-runtime/spec/module-checks/index.d.ts +8 -0
  1012. package/dist/domain/domain-runtime/spec/module-checks/index.js +1 -0
  1013. package/dist/domain/domain-runtime/spec/module-checks/project-modules.d.ts +32 -0
  1014. package/dist/domain/domain-runtime/spec/module-checks/project-modules.js +1 -0
  1015. package/dist/domain/domain-runtime/spec/module-checks/resolve-action-modules.d.ts +4 -0
  1016. package/dist/domain/domain-runtime/spec/module-checks/resolve-action-modules.js +1 -0
  1017. package/dist/domain/domain-runtime/spec/module-checks/resolve-component-optic-modules.d.ts +4 -0
  1018. package/dist/domain/domain-runtime/spec/module-checks/resolve-component-optic-modules.js +1 -0
  1019. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.d.ts +15 -0
  1020. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.js +1 -0
  1021. package/dist/domain/domain-runtime/spec/module-checks/resolve-imported-transformers.d.ts +22 -0
  1022. package/dist/domain/domain-runtime/spec/module-checks/resolve-imported-transformers.js +1 -0
  1023. package/dist/domain/domain-runtime/spec/module-checks/resolve-invariant-modules.d.ts +6 -0
  1024. package/dist/domain/domain-runtime/spec/module-checks/resolve-invariant-modules.js +1 -0
  1025. package/dist/domain/domain-runtime/spec/prepare-action-implementations.d.ts +15 -0
  1026. package/dist/domain/domain-runtime/spec/prepare-action-implementations.js +5 -0
  1027. package/dist/domain/domain-runtime/spec/prepare-domain-expressions.d.ts +16 -0
  1028. package/dist/domain/domain-runtime/spec/selectors.d.ts +7 -8
  1029. package/dist/domain/domain-runtime/spec/selectors.js +1 -1
  1030. package/dist/domain/domain-runtime/spec/types.d.ts +22 -6
  1031. package/dist/domain/extensions/angle-indicator.d.ts +21 -0
  1032. package/dist/domain/extensions/angle-indicator.js +1 -0
  1033. package/dist/domain/extensions/attribute-switch.d.ts +8 -0
  1034. package/dist/domain/extensions/attribute-switch.js +1 -0
  1035. package/dist/domain/extensions/autorotate-camera-component.d.ts +19 -0
  1036. package/dist/domain/extensions/autorotate-camera-component.js +1 -0
  1037. package/dist/domain/extensions/basic-sidebar-footer.d.ts +8 -0
  1038. package/dist/domain/extensions/basic-sidebar-footer.js +1 -0
  1039. package/dist/domain/extensions/camera-based-hidden-entity-object.js +1 -0
  1040. package/dist/domain/extensions/camera-based-hidden-entity.js +1 -0
  1041. package/dist/domain/extensions/canvas-config.d.ts +87 -0
  1042. package/dist/domain/extensions/canvas-config.js +1 -0
  1043. package/dist/domain/extensions/canvas-custom-environment.js +1 -0
  1044. package/dist/domain/extensions/canvas-padding.d.ts +25 -0
  1045. package/dist/domain/extensions/canvas-padding.js +1 -0
  1046. package/dist/domain/extensions/canvas-preset-environment.d.ts +37 -0
  1047. package/dist/domain/extensions/canvas-preset-environment.js +1 -0
  1048. package/dist/domain/extensions/child-entity-recipe-hierarchy.d.ts +21 -0
  1049. package/dist/domain/extensions/child-entity-recipe-hierarchy.js +1 -0
  1050. package/dist/domain/extensions/client-side-image.d.ts +14 -0
  1051. package/dist/domain/extensions/client-side-image.js +1 -0
  1052. package/dist/domain/extensions/color-value.js +1 -0
  1053. package/dist/domain/extensions/common/angle-indicator-schema.d.ts +292 -0
  1054. package/dist/domain/extensions/common/angle-indicator-schema.js +1 -0
  1055. package/dist/domain/extensions/common/dimension-indicator-schema.d.ts +607 -0
  1056. package/dist/domain/extensions/common/dimension-indicator-schema.js +1 -0
  1057. package/dist/domain/extensions/common/index.d.ts +4 -0
  1058. package/dist/domain/extensions/common/index.js +1 -0
  1059. package/dist/domain/extensions/custom-header.d.ts +11 -0
  1060. package/dist/domain/extensions/custom-header.js +1 -0
  1061. package/dist/domain/extensions/custom-price-footer.js +1 -0
  1062. package/dist/domain/extensions/custom-sidebar-footer.d.ts +11 -0
  1063. package/dist/domain/extensions/custom-sidebar-footer.js +1 -0
  1064. package/dist/domain/extensions/dimension-indicator.d.ts +31 -0
  1065. package/dist/domain/extensions/dimension-indicator.js +1 -0
  1066. package/dist/domain/extensions/editable-angle-indicator.d.ts +39 -0
  1067. package/dist/domain/extensions/editable-angle-indicator.js +1 -0
  1068. package/dist/domain/extensions/editable-distance-dimension-indicator.d.ts +43 -0
  1069. package/dist/domain/extensions/editable-distance-dimension-indicator.js +1 -0
  1070. package/dist/domain/extensions/editable-offset-indicator.d.ts +42 -0
  1071. package/dist/domain/extensions/editable-offset-indicator.js +1 -0
  1072. package/dist/domain/extensions/editable-size-indicator.d.ts +39 -0
  1073. package/dist/domain/extensions/editable-size-indicator.js +1 -0
  1074. package/dist/domain/extensions/entity-header.d.ts +22 -0
  1075. package/dist/domain/extensions/entity-header.js +1 -0
  1076. package/dist/domain/extensions/exit-tool-mode-fab.d.ts +25 -0
  1077. package/dist/domain/extensions/exit-tool-mode-fab.js +1 -0
  1078. package/dist/domain/extensions/finalize-action.d.ts +20 -0
  1079. package/dist/domain/extensions/finalize-action.js +1 -0
  1080. package/dist/domain/extensions/finalize-component.js +1 -0
  1081. package/dist/domain/extensions/fit-selection-orthographic-camera-component.js +1 -0
  1082. package/dist/domain/extensions/fit-selection-perspective-camera-component.js +1 -0
  1083. package/dist/domain/extensions/fixed-header.d.ts +10 -0
  1084. package/dist/domain/extensions/fixed-header.js +1 -0
  1085. package/dist/domain/extensions/floating-header.d.ts +10 -0
  1086. package/dist/domain/extensions/floating-header.js +1 -0
  1087. package/dist/domain/extensions/hidden-header.d.ts +8 -0
  1088. package/dist/domain/extensions/hidden-header.js +1 -0
  1089. package/dist/domain/extensions/hidden-sidebar-footer.d.ts +21 -0
  1090. package/dist/domain/extensions/hidden-sidebar-footer.js +1 -0
  1091. package/dist/domain/extensions/horizontal-tabs.d.ts +28 -0
  1092. package/dist/domain/extensions/horizontal-tabs.js +1 -0
  1093. package/dist/domain/extensions/index.d.ts +69 -0
  1094. package/dist/domain/extensions/index.js +1 -0
  1095. package/dist/domain/extensions/list-selector-dimension-indicator.d.ts +31 -0
  1096. package/dist/domain/extensions/list-selector-dimension-indicator.js +1 -0
  1097. package/dist/domain/extensions/multilingual-text-value.js +1 -0
  1098. package/dist/domain/extensions/navigation-steps.d.ts +19 -0
  1099. package/dist/domain/extensions/navigation-steps.js +1 -0
  1100. package/dist/domain/extensions/offset-anchors.d.ts +20 -0
  1101. package/dist/domain/extensions/offset-anchors.js +1 -0
  1102. package/dist/domain/extensions/offset-indicator.d.ts +83 -0
  1103. package/dist/domain/extensions/offset-indicator.js +1 -0
  1104. package/dist/domain/extensions/offset.d.ts +31 -0
  1105. package/dist/domain/extensions/offset.js +1 -0
  1106. package/dist/domain/extensions/other-action.d.ts +14 -0
  1107. package/dist/domain/extensions/other-action.js +1 -0
  1108. package/dist/domain/extensions/property-page.d.ts +16 -0
  1109. package/dist/domain/extensions/property-page.js +1 -0
  1110. package/dist/domain/extensions/read-sidebar-footer.d.ts +8 -0
  1111. package/dist/domain/extensions/read-sidebar-footer.js +1 -0
  1112. package/dist/domain/extensions/replace-entity-recipe-hierarchy.d.ts +21 -0
  1113. package/dist/domain/extensions/replace-entity-recipe-hierarchy.js +1 -0
  1114. package/dist/domain/extensions/rotatable.js +1 -0
  1115. package/dist/domain/extensions/rotation-handle.d.ts +53 -0
  1116. package/dist/domain/extensions/rotation-handle.js +1 -0
  1117. package/dist/domain/extensions/save-template-thumbnail.d.ts +14 -0
  1118. package/dist/domain/extensions/save-template-thumbnail.js +1 -0
  1119. package/dist/domain/extensions/scene-entity-add-fab.d.ts +32 -0
  1120. package/dist/domain/extensions/scene-entity-add-fab.js +1 -0
  1121. package/dist/domain/extensions/scene-entity-animation.js +1 -0
  1122. package/dist/domain/extensions/scene-entity-control.js +1 -0
  1123. package/dist/domain/extensions/scene-entity-delete-fab.d.ts +19 -0
  1124. package/dist/domain/extensions/scene-entity-delete-fab.js +1 -0
  1125. package/dist/domain/extensions/scene-entity-floor-object.js +1 -0
  1126. package/dist/domain/extensions/scene-entity-html-hotspot.d.ts +27 -0
  1127. package/dist/domain/extensions/scene-entity-html-hotspot.js +1 -0
  1128. package/dist/domain/extensions/scene-entity-navigation-hotspot.d.ts +20 -0
  1129. package/dist/domain/extensions/scene-entity-navigation-hotspot.js +1 -0
  1130. package/dist/domain/extensions/scene-entity-object-html-hotspot.d.ts +31 -0
  1131. package/dist/domain/extensions/scene-entity-object-html-hotspot.js +1 -0
  1132. package/dist/domain/extensions/scene-entity-select-hotspot.d.ts +5 -0
  1133. package/dist/domain/extensions/scene-entity-select-hotspot.js +1 -0
  1134. package/dist/domain/extensions/scene-entity-wall-object.js +1 -0
  1135. package/dist/domain/extensions/selectable-component.js +1 -0
  1136. package/dist/domain/extensions/sidebar-tabs.d.ts +29 -0
  1137. package/dist/domain/extensions/sidebar-tabs.js +1 -0
  1138. package/dist/domain/extensions/simple-summary.js +1 -0
  1139. package/dist/domain/extensions/size.d.ts +21 -0
  1140. package/dist/domain/extensions/size.js +1 -0
  1141. package/dist/domain/extensions/sketching-draw.d.ts +17 -0
  1142. package/dist/domain/extensions/sketching-draw.js +1 -0
  1143. package/dist/domain/extensions/sketching-edit.d.ts +28 -0
  1144. package/dist/domain/extensions/sketching-edit.js +1 -0
  1145. package/dist/domain/extensions/summary-component.js +1 -0
  1146. package/dist/domain/extensions/text-value.js +1 -0
  1147. package/dist/domain/extensions/tool-controls.js +1 -0
  1148. package/dist/domain/extensions/tool-menu-fab.d.ts +40 -0
  1149. package/dist/domain/extensions/tool-menu-fab.js +1 -0
  1150. package/dist/domain/extensions/toolbar.d.ts +13 -0
  1151. package/dist/domain/extensions/toolbar.js +1 -0
  1152. package/dist/domain/extensions/universal-sidebar-footer.d.ts +12 -0
  1153. package/dist/domain/extensions/universal-sidebar-footer.js +1 -0
  1154. package/dist/domain/extensions/view-controls.js +1 -0
  1155. package/dist/domain/index.d.ts +2 -30
  1156. package/dist/domain/index.js +1 -1
  1157. package/dist/domain/mocks/create-mock-domain-context.d.ts +1 -1
  1158. package/dist/domain/mocks/create-mock-domain-runtime-services.d.ts +1 -1
  1159. package/dist/domain/mocks/create-mock-domain-runtime.d.ts +36 -21
  1160. package/dist/domain/mocks/create-mock-domain-runtime.js +1 -1
  1161. package/dist/domain/mocks/create-mock-domain.d.ts +1 -1
  1162. package/dist/domain/mocks/create-mock-domain.js +1 -1
  1163. package/dist/domain/mocks/create-mock-state.d.ts +2 -2
  1164. package/dist/domain/mocks/create-test-application-config.d.ts +59 -0
  1165. package/dist/domain/mocks/create-test-application-config.js +1 -0
  1166. package/dist/domain/mocks/index.d.ts +1 -0
  1167. package/dist/domain/mocks/index.js +1 -1
  1168. package/dist/domain/projections/blender-projections/blender-projections.d.ts +2 -3
  1169. package/dist/domain/projections/blender-projections/blender-projections.js +1 -1
  1170. package/dist/domain/projections/blender-projections/camera.d.ts +2 -2
  1171. package/dist/domain/projections/collision-projections.d.ts +1 -1
  1172. package/dist/domain/projections/composition-projections.d.ts +1 -1
  1173. package/dist/domain/projections/composition-projections.js +1 -1
  1174. package/dist/domain/projections/constraint-projections.d.ts +1 -1
  1175. package/dist/domain/projections/index.d.ts +1 -1
  1176. package/dist/domain/projections/position-projections.d.ts +1 -1
  1177. package/dist/domain/projections/projected-entities-projections.d.ts +2 -3
  1178. package/dist/domain/projections/snap-matching.d.ts +1 -2
  1179. package/dist/domain/projections/snap-utils.d.ts +1 -2
  1180. package/dist/domain/projections/snapping-projections.d.ts +1 -1
  1181. package/dist/domain/projections/validation-projections.d.ts +3 -20
  1182. package/dist/domain/projections/validation-projections.js +1 -1
  1183. package/dist/domain/sketching/sketching-projections.d.ts +1 -1
  1184. package/dist/domain/system-components/admin-sidebar.d.ts +1 -1
  1185. package/dist/domain/system-components/admin-sidebar.js +1 -1
  1186. package/dist/domain/system-components/angle-dimension.js +1 -1
  1187. package/dist/domain/system-components/application-config.d.ts +3 -3
  1188. package/dist/domain/system-components/application-config.js +1 -1
  1189. package/dist/domain/system-components/attribute-selection.js +1 -1
  1190. package/dist/domain/system-components/bounding-box-component.d.ts +1 -1
  1191. package/dist/domain/system-components/bounding-box-component.js +1 -1
  1192. package/dist/domain/system-components/bounding-sphere-component.d.ts +1 -1
  1193. package/dist/domain/system-components/bounding-sphere-component.js +1 -1
  1194. package/dist/domain/system-components/child-entity-recipes.d.ts +1 -1
  1195. package/dist/domain/system-components/child-entity-recipes.js +1 -1
  1196. package/dist/domain/system-components/child-entity-selection.d.ts +1 -2
  1197. package/dist/domain/system-components/child-entity-selection.js +1 -1
  1198. package/dist/domain/system-components/collision-box-geometry.d.ts +5 -3
  1199. package/dist/domain/system-components/collision-box-geometry.js +1 -1
  1200. package/dist/domain/system-components/collision-geometries.d.ts +1 -1
  1201. package/dist/domain/system-components/collision-geometry.d.ts +5 -3
  1202. package/dist/domain/system-components/collision-geometry.js +1 -1
  1203. package/dist/domain/system-components/collision-point-geometry.d.ts +5 -3
  1204. package/dist/domain/system-components/collision-point-geometry.js +1 -1
  1205. package/dist/domain/system-components/common/index.d.ts +0 -4
  1206. package/dist/domain/system-components/common/index.js +1 -1
  1207. package/dist/domain/system-components/common/material-override-schema.d.ts +2 -2
  1208. package/dist/domain/system-components/common/recipes.d.ts +21 -4
  1209. package/dist/domain/system-components/common/recipes.js +1 -1
  1210. package/dist/domain/system-components/common/scene-entity-control-schema.d.ts +3 -0
  1211. package/dist/domain/system-components/common/scene-entity-control-schema.js +1 -1
  1212. package/dist/domain/system-components/constraint.d.ts +11 -24
  1213. package/dist/domain/system-components/constraint.js +1 -1
  1214. package/dist/domain/system-components/create-blueprint.d.ts +1 -1
  1215. package/dist/domain/system-components/custom-scene-entity.d.ts +1 -1
  1216. package/dist/domain/system-components/custom-scene-entity.js +1 -1
  1217. package/dist/domain/system-components/detail.js +1 -1
  1218. package/dist/domain/system-components/distance-dimension-select.d.ts +1 -1
  1219. package/dist/domain/system-components/distance-dimension-select.js +1 -1
  1220. package/dist/domain/system-components/distance-dimension.d.ts +1 -1
  1221. package/dist/domain/system-components/distance-dimension.js +1 -1
  1222. package/dist/domain/system-components/drag-handle.d.ts +2 -2
  1223. package/dist/domain/system-components/drag-handle.js +1 -1
  1224. package/dist/domain/system-components/fit-entity-orthographic-camera-component.js +1 -1
  1225. package/dist/domain/system-components/fit-entity-perspective-camera-component.js +1 -1
  1226. package/dist/domain/system-components/fit-root-orthographic-camera-component.js +1 -1
  1227. package/dist/domain/system-components/fit-root-perspective-camera-component.js +1 -1
  1228. package/dist/domain/system-components/generic-dimension.d.ts +1 -1
  1229. package/dist/domain/system-components/generic-dimension.js +1 -1
  1230. package/dist/domain/system-components/hidden-entity.js +1 -1
  1231. package/dist/domain/system-components/hotspot-drag-handle.d.ts +2 -3
  1232. package/dist/domain/system-components/hotspot-drag-handle.js +1 -1
  1233. package/dist/domain/system-components/index.d.ts +0 -68
  1234. package/dist/domain/system-components/index.js +1 -1
  1235. package/dist/domain/system-components/material-override-property-transition.js +1 -1
  1236. package/dist/domain/system-components/material-override-transformer.js +1 -1
  1237. package/dist/domain/system-components/material-swatch.js +1 -1
  1238. package/dist/domain/system-components/navigation-page.js +1 -1
  1239. package/dist/domain/system-components/navigation-panel-list.js +1 -1
  1240. package/dist/domain/system-components/phoenix-entity-elements/admin-data-table-sidebar.d.ts +1 -1
  1241. package/dist/domain/system-components/phoenix-layout-elements/admin-connected-resource-page.d.ts +1 -1
  1242. package/dist/domain/system-components/phoenix-layout-elements/admin-data-table-actions.d.ts +1 -1
  1243. package/dist/domain/system-components/phoenix-layout-elements/admin-data-table-page.d.ts +1 -1
  1244. package/dist/domain/system-components/phoenix-layout-elements/assistant-toolbar-button.d.ts +44 -0
  1245. package/dist/domain/system-components/phoenix-layout-elements/assistant-toolbar-button.js +1 -0
  1246. package/dist/domain/system-components/phoenix-layout-elements/index.d.ts +1 -0
  1247. package/dist/domain/system-components/phoenix-layout-elements/index.js +1 -1
  1248. package/dist/domain/system-components/phoenix-layout-elements/phoenix-layout-element.d.ts +2 -1
  1249. package/dist/domain/system-components/phoenix-layout-elements/phoenix-layout-element.js +1 -1
  1250. package/dist/domain/system-components/pivot-point.d.ts +1 -1
  1251. package/dist/domain/system-components/pivot-point.js +1 -1
  1252. package/dist/domain/system-components/price.js +1 -1
  1253. package/dist/domain/system-components/projected-entities.d.ts +1 -1
  1254. package/dist/domain/system-components/projected-entities.js +1 -1
  1255. package/dist/domain/system-components/replace-entity-recipes.d.ts +1 -1
  1256. package/dist/domain/system-components/replace-entity-recipes.js +1 -1
  1257. package/dist/domain/system-components/scene-entity-ambient-light.js +1 -1
  1258. package/dist/domain/system-components/scene-entity-box-object.js +1 -1
  1259. package/dist/domain/system-components/scene-entity-directional-light.js +1 -1
  1260. package/dist/domain/system-components/scene-entity-local-material-override.js +1 -1
  1261. package/dist/domain/system-components/scene-entity-material-override.d.ts +1 -1
  1262. package/dist/domain/system-components/scene-entity-material-override.js +1 -1
  1263. package/dist/domain/system-components/scene-entity-object-clip.js +1 -1
  1264. package/dist/domain/system-components/scene-entity-object-decal.js +1 -1
  1265. package/dist/domain/system-components/scene-entity-object-group.js +1 -1
  1266. package/dist/domain/system-components/scene-entity-object-local-material-override.js +1 -1
  1267. package/dist/domain/system-components/scene-entity-object-material-override.d.ts +1 -1
  1268. package/dist/domain/system-components/scene-entity-object-material-override.js +1 -1
  1269. package/dist/domain/system-components/scene-entity-object-properties.js +1 -1
  1270. package/dist/domain/system-components/scene-entity-object-remote-material-override.js +1 -1
  1271. package/dist/domain/system-components/scene-entity-object-text-decal.d.ts +1 -1
  1272. package/dist/domain/system-components/scene-entity-object-text-decal.js +1 -1
  1273. package/dist/domain/system-components/scene-entity-object-transformer.js +1 -1
  1274. package/dist/domain/system-components/scene-entity-object-transimissive-material-override.d.ts +1 -1
  1275. package/dist/domain/system-components/scene-entity-object-transimissive-material-override.js +1 -1
  1276. package/dist/domain/system-components/scene-entity-object.js +1 -1
  1277. package/dist/domain/system-components/scene-entity-point-light.js +1 -1
  1278. package/dist/domain/system-components/scene-entity-properties.js +1 -1
  1279. package/dist/domain/system-components/scene-entity-rect-area-light.js +1 -1
  1280. package/dist/domain/system-components/scene-entity-remote-material-override.js +1 -1
  1281. package/dist/domain/system-components/scene-entity-remote-object.js +1 -1
  1282. package/dist/domain/system-components/scene-entity-spot-light.js +1 -1
  1283. package/dist/domain/system-components/scene-entity-transimissive-material-override.d.ts +1 -1
  1284. package/dist/domain/system-components/scene-entity-transimissive-material-override.js +1 -1
  1285. package/dist/domain/system-components/sketching-line.d.ts +1 -1
  1286. package/dist/domain/system-components/sketching-line.js +1 -1
  1287. package/dist/domain/system-components/sketching-rectangle.d.ts +1 -1
  1288. package/dist/domain/system-components/sketching-rectangle.js +1 -1
  1289. package/dist/domain/system-components/sketching.d.ts +1 -1
  1290. package/dist/domain/system-components/sketching.js +1 -1
  1291. package/dist/domain/system-components/snap-axis.d.ts +1 -1
  1292. package/dist/domain/system-components/snap-axis.js +1 -1
  1293. package/dist/domain/system-components/snap-edge.d.ts +1 -1
  1294. package/dist/domain/system-components/snap-edge.js +1 -1
  1295. package/dist/domain/system-components/snap-plane.d.ts +1 -1
  1296. package/dist/domain/system-components/snap-plane.js +1 -1
  1297. package/dist/domain/system-components/snap-point.d.ts +1 -1
  1298. package/dist/domain/system-components/snap-point.js +1 -1
  1299. package/dist/domain/system-components/static-orthographic-camera-component.d.ts +1 -1
  1300. package/dist/domain/system-components/static-orthographic-camera-component.js +1 -1
  1301. package/dist/domain/system-components/static-perspective-camera-component.d.ts +1 -1
  1302. package/dist/domain/system-components/static-perspective-camera-component.js +1 -1
  1303. package/dist/domain/utils/eval-cache.d.ts +2 -3
  1304. package/dist/domain/utils/map-nested-object.d.ts +1 -1
  1305. package/dist/domain/utils/memo-eval.d.ts +2 -4
  1306. package/dist/editor/Editor.d.ts +7 -0
  1307. package/dist/editor/Editor.js +1 -1
  1308. package/dist/editor/domain-editors/DomainSpecContext.js +1 -1
  1309. package/dist/editor/domain-editors/apply-spec-update.js +1 -1
  1310. package/dist/editor/domain-editors/use-implementation-files.d.ts +12 -8
  1311. package/dist/editor/domain-editors/use-implementation-files.js +1 -1
  1312. package/dist/editor/graphql/GraphQLPanel.js +1 -1
  1313. package/dist/editor/mocks/CreateMockYaml.js +2 -2
  1314. package/dist/editor/mocks/EditorMockContext.d.ts +2 -0
  1315. package/dist/editor/mocks/EditorMockContext.js +1 -1
  1316. package/dist/editor/variants/VariantAnswerFooter.d.ts +17 -0
  1317. package/dist/editor/variants/VariantAnswerFooter.js +1 -0
  1318. package/dist/editor/variants/VariantPreviewHandler.d.ts +6 -0
  1319. package/dist/editor/variants/VariantPreviewHandler.js +1 -0
  1320. package/dist/editor/variants/variant-preview-styles.d.ts +49 -0
  1321. package/dist/editor/variants/variant-preview-styles.js +1 -0
  1322. package/dist/globals/index.d.ts +2 -0
  1323. package/dist/i18n/locales/cs/messages.js +1 -1
  1324. package/dist/i18n/locales/da/messages.js +1 -1
  1325. package/dist/i18n/locales/de/messages.js +1 -1
  1326. package/dist/i18n/locales/de-AT/messages.js +1 -1
  1327. package/dist/i18n/locales/en/messages.js +1 -1
  1328. package/dist/i18n/locales/en-AU/messages.js +1 -1
  1329. package/dist/i18n/locales/en-GB/messages.js +1 -1
  1330. package/dist/i18n/locales/es/messages.js +1 -1
  1331. package/dist/i18n/locales/fr/messages.js +1 -1
  1332. package/dist/i18n/locales/hu/messages.js +1 -1
  1333. package/dist/i18n/locales/it/messages.js +1 -1
  1334. package/dist/i18n/locales/nl/messages.js +1 -1
  1335. package/dist/i18n/locales/pl/messages.js +1 -1
  1336. package/dist/i18n/locales/pt/messages.js +1 -1
  1337. package/dist/i18n/locales/ro/messages.js +1 -1
  1338. package/dist/i18n/locales/sk/messages.js +1 -1
  1339. package/dist/i18n/locales/tr/messages.js +1 -1
  1340. package/dist/legacy/domain-cli/gen/configurator-builder.js +30 -16
  1341. package/dist/legacy/domain-cli/gen/constant-expressions.js +1 -3
  1342. package/dist/legacy/domain-cli/gen/defaults.js +1 -7
  1343. package/dist/legacy/domain-cli/gen/implementation.js +7 -11
  1344. package/dist/legacy/domain-cli/gen/invariants.js +7 -6
  1345. package/dist/legacy/domain-cli/gen/relations.js +1 -1
  1346. package/dist/legacy/domain-cli/utils/cache.d.ts +1 -1
  1347. package/dist/legacy/domain-cli/utils/cache.js +1 -1
  1348. package/dist/legacy/domain-spec/__generated/domain-schema.d.ts +166 -148
  1349. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/claude-md.d.ts +1 -1
  1350. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/cursor-rules.d.ts +1 -1
  1351. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.d.ts +1 -1
  1352. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.js +7 -0
  1353. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/domain-index.js +17 -15
  1354. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/env-example.d.ts +1 -1
  1355. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/env-example.js +4 -0
  1356. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-admin.js +18 -18
  1357. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-configurator.js +16 -15
  1358. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-admin.js +24 -24
  1359. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-configurator.js +16 -15
  1360. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/generator-shared.d.ts +7 -2
  1361. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/generator-shared.js +8 -12
  1362. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/index.d.ts +1 -1
  1363. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/index.js +1 -1
  1364. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/webhook-builders.js +7 -7
  1365. package/dist/phoenix/application-spec/application-spec-builder.d.ts +0 -2
  1366. package/dist/phoenix/application-spec/application-spec-builder.js +1 -1
  1367. package/dist/phoenix/application-spec/generate-application-spec-project.d.ts +0 -2
  1368. package/dist/phoenix/application-spec/generate-application-spec-project.js +2 -2
  1369. package/dist/phoenix/application-spec/generate-application-spec-story.js +2 -2
  1370. package/dist/phoenix/application-spec/generate-project-files.d.ts +0 -2
  1371. package/dist/phoenix/application-spec/project-files.js +1 -1
  1372. package/dist/phoenix/application-spec/resolve-deployment-data.d.ts +4 -3
  1373. package/dist/phoenix/application-spec/resolve-deployment-data.js +2 -2
  1374. package/dist/phoenix/bin.d.ts +2 -0
  1375. package/dist/phoenix/bin.js +2 -0
  1376. package/dist/phoenix/check-configs/built-in-eslint-config.d.ts +9 -0
  1377. package/dist/phoenix/check-configs/built-in-eslint-config.js +1 -0
  1378. package/dist/phoenix/check-configs/eslint-config.d.ts +10 -0
  1379. package/dist/phoenix/check-configs/eslint-config.js +1 -0
  1380. package/dist/phoenix/check-configs/index.d.ts +8 -0
  1381. package/dist/phoenix/check-configs/index.js +1 -0
  1382. package/dist/phoenix/check-configs/typescript-project.d.ts +5 -0
  1383. package/dist/phoenix/check-configs/typescript-project.js +1 -0
  1384. package/dist/phoenix/cli.d.ts +0 -1
  1385. package/dist/phoenix/cli.js +1 -2
  1386. package/dist/phoenix/commands/build.d.ts +5 -0
  1387. package/dist/phoenix/commands/build.js +1 -1
  1388. package/dist/phoenix/commands/check.js +1 -1
  1389. package/dist/phoenix/commands/clean.js +1 -1
  1390. package/dist/phoenix/commands/deploy.js +2 -2
  1391. package/dist/phoenix/commands/deps/deps.d.ts +73 -0
  1392. package/dist/phoenix/commands/deps/deps.js +3 -0
  1393. package/dist/phoenix/commands/deps/index.d.ts +1 -0
  1394. package/dist/phoenix/commands/deps/index.js +1 -0
  1395. package/dist/phoenix/commands/deps/sdk-manifest.d.ts +12 -0
  1396. package/dist/phoenix/commands/deps/sdk-manifest.js +1 -0
  1397. package/dist/phoenix/commands/dev.js +5 -5
  1398. package/dist/phoenix/commands/feedback.d.ts +2 -1
  1399. package/dist/phoenix/commands/feedback.js +1 -1
  1400. package/dist/phoenix/commands/fix.js +1 -1
  1401. package/dist/phoenix/commands/index.d.ts +2 -0
  1402. package/dist/phoenix/commands/index.js +1 -1
  1403. package/dist/phoenix/commands/init.d.ts +17 -5
  1404. package/dist/phoenix/commands/init.js +1 -1
  1405. package/dist/phoenix/commands/link.js +1 -1
  1406. package/dist/phoenix/commands/login.d.ts +24 -6
  1407. package/dist/phoenix/commands/login.js +2 -2
  1408. package/dist/phoenix/commands/prepare-deployment-command.js +2 -2
  1409. package/dist/phoenix/commands/prepare-local-environment-command.js +1 -1
  1410. package/dist/phoenix/commands/prettier.js +1 -1
  1411. package/dist/phoenix/commands/story-dev.js +2 -2
  1412. package/dist/phoenix/commands/sync.js +1 -1
  1413. package/dist/phoenix/commands/unlink.js +1 -1
  1414. package/dist/phoenix/commands/variants.d.ts +35 -0
  1415. package/dist/phoenix/commands/variants.js +1 -0
  1416. package/dist/phoenix/editor-server/commands-router.d.ts +68 -1
  1417. package/dist/phoenix/editor-server/commands-router.js +1 -1
  1418. package/dist/phoenix/editor-server/editor-router.d.ts +65 -0
  1419. package/dist/phoenix/editor-server/editor-server.d.ts +3 -3
  1420. package/dist/phoenix/editor-server/editor-server.js +1 -1
  1421. package/dist/phoenix/editor-server/protocol.d.ts +1 -0
  1422. package/dist/phoenix/editor-server/spec-router.js +1 -1
  1423. package/dist/phoenix/editor-server/trpc.d.ts +3 -0
  1424. package/dist/phoenix/scripts/build-admin.js +1 -1
  1425. package/dist/phoenix/services/application-spec-project-watcher.d.ts +15 -4
  1426. package/dist/phoenix/services/application-spec-project-watcher.js +3 -3
  1427. package/dist/phoenix/services/index.d.ts +5 -0
  1428. package/dist/phoenix/services/index.js +1 -1
  1429. package/dist/phoenix/services/lingui.d.ts +8 -0
  1430. package/dist/phoenix/services/lingui.js +1 -1
  1431. package/dist/phoenix/services/phoenix-application.d.ts +21 -0
  1432. package/dist/phoenix/services/phoenix-application.js +1 -0
  1433. package/dist/phoenix/services/phoenix-store.d.ts +48 -0
  1434. package/dist/phoenix/services/phoenix-store.js +1 -0
  1435. package/dist/phoenix/services/phx-banner-plugin.d.ts +32 -0
  1436. package/dist/phoenix/services/phx-banner-plugin.js +1 -0
  1437. package/dist/phoenix/services/phx-licenses-plugin.d.ts +55 -0
  1438. package/dist/phoenix/services/phx-licenses-plugin.js +8 -0
  1439. package/dist/phoenix/services/phx-variant-previews-plugin.d.ts +9 -0
  1440. package/dist/phoenix/services/phx-variant-previews-plugin.js +1 -0
  1441. package/dist/phoenix/services/prepare-development-environment.js +1 -1
  1442. package/dist/phoenix/services/source-archive.d.ts +1 -0
  1443. package/dist/phoenix/services/source-archive.js +1 -1
  1444. package/dist/phoenix/services/swc.js +1 -1
  1445. package/dist/phoenix/services/variant-file-session.d.ts +36 -0
  1446. package/dist/phoenix/services/variant-file-session.js +1 -0
  1447. package/dist/phoenix/services/variant-preview-service.d.ts +80 -0
  1448. package/dist/phoenix/services/variant-preview-service.js +1 -0
  1449. package/dist/phoenix/services/vite-config.d.ts +2 -0
  1450. package/dist/phoenix/services/vite-config.js +1 -1
  1451. package/dist/phoenix/utils/git/index.d.ts +1 -0
  1452. package/dist/phoenix/utils/git/index.js +1 -0
  1453. package/dist/phoenix/utils/git/is-inside-git-repository.d.ts +6 -0
  1454. package/dist/phoenix/utils/git/is-inside-git-repository.js +1 -0
  1455. package/dist/phoenix/utils/index.d.ts +6 -2
  1456. package/dist/phoenix/utils/index.js +1 -1
  1457. package/dist/phoenix/utils/node-version/index.d.ts +1 -0
  1458. package/dist/phoenix/utils/node-version/index.js +1 -0
  1459. package/dist/phoenix/utils/node-version/supported-node-version.d.ts +12 -0
  1460. package/dist/phoenix/utils/node-version/supported-node-version.js +4 -0
  1461. package/dist/phoenix/utils/package-info.d.ts +0 -9
  1462. package/dist/phoenix/utils/package-info.js +1 -1
  1463. package/dist/phoenix/utils/package-manager/index.d.ts +2 -0
  1464. package/dist/phoenix/utils/package-manager/index.js +1 -0
  1465. package/dist/phoenix/utils/package-manager/package-manager-commands.d.ts +19 -0
  1466. package/dist/phoenix/utils/package-manager/package-manager-commands.js +1 -0
  1467. package/dist/phoenix/utils/package-manager/pnpm-project.d.ts +9 -0
  1468. package/dist/phoenix/utils/package-manager/pnpm-project.js +1 -0
  1469. package/dist/phoenix/utils/read-git-commit.d.ts +14 -0
  1470. package/dist/phoenix/utils/read-git-commit.js +1 -0
  1471. package/dist/phoenix/utils/run-command.d.ts +11 -0
  1472. package/dist/phoenix/utils/run-command.js +1 -1
  1473. package/dist/phoenix/utils/sdk-tool/index.d.ts +1 -0
  1474. package/dist/phoenix/utils/sdk-tool/index.js +1 -0
  1475. package/dist/phoenix/utils/sdk-tool/resolve-sdk-tool-bin.d.ts +15 -0
  1476. package/dist/phoenix/utils/sdk-tool/resolve-sdk-tool-bin.js +1 -0
  1477. package/dist/react-sdk/application-runtime/common-services/analytics/analytics-service.d.ts +2 -2
  1478. package/dist/react-sdk/application-runtime/common-services/analytics/domain-controls-analytics.d.ts +21 -21
  1479. package/dist/react-sdk/application-runtime/common-services/analytics/frontend-analytics.d.ts +52 -0
  1480. package/dist/react-sdk/application-runtime/common-services/analytics/frontend-analytics.js +1 -0
  1481. package/dist/react-sdk/application-runtime/common-services/analytics/index.d.ts +1 -0
  1482. package/dist/react-sdk/application-runtime/common-services/analytics/index.js +1 -1
  1483. package/dist/react-sdk/application-runtime/hooks/data/use-published-data.d.ts +1 -1
  1484. package/dist/react-sdk/application-runtime/hooks/use-access-service.d.ts +2 -0
  1485. package/dist/react-sdk/application-runtime/hooks/use-domain-application-props.d.ts +5 -2
  1486. package/dist/react-sdk/application-runtime/hooks/use-spec.d.ts +1 -1
  1487. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.d.ts +1 -1
  1488. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.js +1 -1
  1489. package/dist/react-sdk/application-runtime/routing/access-service.d.ts +1 -0
  1490. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.d.ts +69 -40
  1491. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.js +1 -1
  1492. package/dist/react-sdk/domain-application-context/DomainLifecycleBoundary.js +1 -1
  1493. package/dist/react-sdk/domain-context/common-hooks/index.d.ts +8 -0
  1494. package/dist/react-sdk/domain-context/common-hooks/index.js +1 -0
  1495. package/dist/react-sdk/domain-context/common-hooks/use-configurator-messages.d.ts +41 -0
  1496. package/dist/react-sdk/domain-context/common-hooks/use-configurator-messages.js +1 -0
  1497. package/dist/react-sdk/domain-context/common-hooks/use-domain-context.d.ts +12 -9
  1498. package/dist/react-sdk/domain-context/component-hooks/index.d.ts +1 -0
  1499. package/dist/react-sdk/domain-context/component-hooks/index.js +1 -0
  1500. package/dist/react-sdk/domain-context/component-hooks/use-component.js +1 -1
  1501. package/dist/react-sdk/domain-context/entity-hooks/use-domain-entity-state.js +1 -1
  1502. package/dist/react-sdk/domain-context/entity-hooks/use-entity-price.js +1 -1
  1503. package/dist/react-sdk/domain-context/entity-hooks/use-root-entity-id.js +1 -1
  1504. package/dist/react-sdk/domain-context/entity-hooks/use-root-entity-state.js +1 -1
  1505. package/dist/react-sdk/domain-context/index.d.ts +5 -1
  1506. package/dist/react-sdk/domain-context/index.js +1 -1
  1507. package/dist/react-sdk/domain-context/system-hooks/composition-hooks.js +1 -1
  1508. package/dist/react-sdk/domain-context/system-hooks/dimension-hooks.js +1 -1
  1509. package/dist/react-sdk/domain-context/system-hooks/hover-hooks.js +1 -1
  1510. package/dist/react-sdk/domain-context/system-hooks/navigation-hooks.d.ts +11 -0
  1511. package/dist/react-sdk/domain-context/system-hooks/navigation-hooks.js +1 -1
  1512. package/dist/react-sdk/domain-context/system-hooks/selection-hooks.js +1 -1
  1513. package/dist/react-sdk/domain-context/system-hooks/step-navigation-hooks.d.ts +57 -0
  1514. package/dist/react-sdk/domain-context/system-hooks/step-navigation-hooks.js +1 -0
  1515. package/dist/react-sdk/domain-context/system-hooks/tab-navigation-hooks.d.ts +61 -0
  1516. package/dist/react-sdk/domain-context/system-hooks/tab-navigation-hooks.js +1 -0
  1517. package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.d.ts +20 -0
  1518. package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.js +1 -0
  1519. package/dist/react-sdk/domain-controls/hooks/use-angle-dimension.d.ts +1 -1
  1520. package/dist/react-sdk/elements/configurator-error-page-props.d.ts +20 -0
  1521. package/dist/react-sdk/elements/configurator-error-page-props.js +1 -0
  1522. package/dist/react-sdk/elements/index.d.ts +1 -0
  1523. package/dist/react-sdk/handlers/FinalizeActionRunner.d.ts +13 -0
  1524. package/dist/react-sdk/handlers/FinalizeActionRunner.js +1 -0
  1525. package/dist/react-sdk/handlers/FinalizeActionsHost.d.ts +10 -0
  1526. package/dist/react-sdk/handlers/FinalizeActionsHost.js +1 -0
  1527. package/dist/react-sdk/handlers/FinalizeActionsProvider.d.ts +11 -0
  1528. package/dist/react-sdk/handlers/FinalizeActionsProvider.js +1 -0
  1529. package/dist/react-sdk/handlers/finalize-actions-context.d.ts +6 -0
  1530. package/dist/react-sdk/handlers/finalize-actions-context.js +1 -0
  1531. package/dist/react-sdk/handlers/finalize-actions-store.d.ts +23 -0
  1532. package/dist/react-sdk/handlers/finalize-actions-store.js +1 -0
  1533. package/dist/react-sdk/handlers/index.d.ts +6 -0
  1534. package/dist/react-sdk/handlers/index.js +1 -1
  1535. package/dist/react-sdk/handlers/use-finalize-action.d.ts +32 -0
  1536. package/dist/react-sdk/handlers/use-finalize-action.js +1 -0
  1537. package/dist/react-sdk/handlers/use-finalize-actions.d.ts +53 -0
  1538. package/dist/react-sdk/handlers/use-finalize-actions.js +1 -0
  1539. package/dist/react-sdk/index.d.ts +1 -0
  1540. package/dist/react-sdk/index.js +1 -1
  1541. package/dist/react-sdk/loading-state/loading-state-manager.d.ts +5 -0
  1542. package/dist/react-sdk/loading-state/loading-state-manager.js +1 -1
  1543. package/dist/react-sdk/responsive-state/ResponsiveStateProvider.d.ts +25 -0
  1544. package/dist/react-sdk/responsive-state/ResponsiveStateProvider.js +1 -0
  1545. package/dist/react-sdk/responsive-state/canvas-padding.d.ts +14 -0
  1546. package/dist/react-sdk/responsive-state/canvas-padding.js +1 -0
  1547. package/dist/react-sdk/responsive-state/index.d.ts +5 -0
  1548. package/dist/react-sdk/responsive-state/index.js +1 -0
  1549. package/dist/react-sdk/responsive-state/responsive-state-manager.d.ts +111 -0
  1550. package/dist/react-sdk/responsive-state/responsive-state-manager.js +1 -0
  1551. package/dist/react-sdk/responsive-state/use-responsive-state-manager.d.ts +10 -0
  1552. package/dist/react-sdk/responsive-state/use-responsive-state-manager.js +1 -0
  1553. package/dist/react-sdk/responsive-state/use-responsive-state.d.ts +11 -0
  1554. package/dist/react-sdk/responsive-state/use-responsive-state.js +1 -0
  1555. package/dist/react-sdk/session/NotAuthenticatedPage.d.ts +4 -0
  1556. package/dist/react-sdk/session/NotAuthenticatedPage.js +1 -1
  1557. package/dist/ui-sdk/common/use-viewport-size.d.ts +4 -1
  1558. package/dist/ui-sdk/common/use-viewport-size.js +1 -1
  1559. package/dist/ui-sdk/components/mobile-controls/index.d.ts +1 -1
  1560. package/dist/ui-sdk/responsive-application/ResponsiveApplicationProvider.d.ts +9 -0
  1561. package/dist/ui-sdk/responsive-application/ResponsiveApplicationProvider.js +1 -1
  1562. package/dist/ui-sdk/responsive-application/index.d.ts +1 -0
  1563. package/dist/ui-sdk/responsive-application/responsive-state-store.d.ts +57 -0
  1564. package/dist/ui-sdk/responsive-application/responsive-state-store.js +1 -0
  1565. package/dist/ui-sdk/responsive-application/use-store-responsive-info.d.ts +7 -0
  1566. package/dist/ui-sdk/responsive-application/use-store-responsive-info.js +1 -0
  1567. package/dist/ui-sdk/theme/types.d.ts +4 -0
  1568. package/dist/webhook/builders/common.d.ts +8 -0
  1569. package/dist/webhook/builders/webhook-builder.d.ts +1 -1
  1570. package/dist/webhook/builders/webhook-builder.js +1 -1
  1571. package/package.json +50 -41
  1572. package/schema/domain-spec.json +1225 -217
  1573. package/dist/application-spec/core/eval-to-constant.d.ts +0 -14
  1574. package/dist/application-spec/generate-application/code/templates/env-ci.d.ts +0 -1
  1575. package/dist/application-spec/generate-application/code/templates/env-ci.js +0 -25
  1576. package/dist/application-spec/generate-application/code/templates/env-example.d.ts +0 -1
  1577. package/dist/application-spec/generate-application/code/templates/env-example.js +0 -90
  1578. package/dist/application-spec/generate-application/code/templates/nvmrc.d.ts +0 -1
  1579. package/dist/application-spec/generate-application/code/templates/nvmrc.js +0 -2
  1580. package/dist/application-spec/generate-application/code/templates/package-json.d.ts +0 -10
  1581. package/dist/application-spec/generate-application/code/templates/package-json.js +0 -1
  1582. package/dist/application-spec/generate-application/code/templates/prettier-ignore.d.ts +0 -1
  1583. package/dist/application-spec/generate-application/code/templates/prettier-ignore.js +0 -6
  1584. package/dist/application-spec/generate-application/code/templates/private-assets-readme.d.ts +0 -1
  1585. package/dist/application-spec/generate-application/code/templates/private-assets-readme.js +0 -24
  1586. package/dist/application-spec/generate-application/code/templates/public-assets-readme.d.ts +0 -1
  1587. package/dist/application-spec/generate-application/code/templates/public-assets-readme.js +0 -24
  1588. package/dist/application-spec/generate-application/code/templates/readme.d.ts +0 -1
  1589. package/dist/application-spec/generate-application/code/templates/readme.js +0 -23
  1590. package/dist/application-spec/generate-application/code/templates/skills/agents-md.d.ts +0 -1
  1591. package/dist/application-spec/generate-application/code/templates/skills/agents-md.js +0 -2
  1592. package/dist/application-spec/generate-application/code/templates/webhook-implementation.d.ts +0 -1
  1593. package/dist/application-spec/generate-application/code/templates/webhook-implementation.js +0 -7
  1594. package/dist/configurator/assistant/browser-details.d.ts +0 -17
  1595. package/dist/configurator/assistant/browser-details.js +0 -1
  1596. package/dist/configurator/assistant/graphql-tools.d.ts +0 -156
  1597. package/dist/configurator/assistant/graphql-tools.js +0 -1
  1598. package/dist/configurator/assistant/index.d.ts +0 -1
  1599. package/dist/configurator/assistant/index.js +0 -1
  1600. package/dist/configurator/assistant/use-assistant-chat.d.ts +0 -20
  1601. package/dist/configurator/assistant/use-assistant-chat.js +0 -1
  1602. package/dist/configurator/common/frontend-analytics.d.ts +0 -46
  1603. package/dist/configurator/common/frontend-analytics.js +0 -1
  1604. package/dist/domain/application/element-registration.d.ts +0 -105
  1605. package/dist/domain/application/element-registration.js +0 -1
  1606. package/dist/domain/application/handler-registration.d.ts +0 -29
  1607. package/dist/domain/application/handler-registration.js +0 -1
  1608. package/dist/domain/application/resolve-imported-transformers.d.ts +0 -13
  1609. package/dist/domain/application/resolve-imported-transformers.js +0 -1
  1610. package/dist/domain/application/resource-builder.d.ts +0 -13
  1611. package/dist/domain/application/resource-builder.js +0 -1
  1612. package/dist/domain/components/component-reader-types.d.ts +0 -44
  1613. package/dist/domain/components/debug-state-component.d.ts +0 -14
  1614. package/dist/domain/components/debug-state-component.js +0 -1
  1615. package/dist/domain/components/domain-component-optic.d.ts +0 -76
  1616. package/dist/domain/components/domain-component-optic.js +0 -16
  1617. package/dist/domain/components/drag-state-component.d.ts +0 -16
  1618. package/dist/domain/components/drag-state-component.js +0 -1
  1619. package/dist/domain/components/export-state-component.d.ts +0 -15
  1620. package/dist/domain/components/export-state-component.js +0 -1
  1621. package/dist/domain/components/fullscreen-state-component.d.ts +0 -14
  1622. package/dist/domain/components/fullscreen-state-component.js +0 -1
  1623. package/dist/domain/components/group-components-by-entity-id-and-name.d.ts +0 -9
  1624. package/dist/domain/components/group-components-by-entity-id-and-name.js +0 -1
  1625. package/dist/domain/components/hover-state-component.d.ts +0 -14
  1626. package/dist/domain/components/hover-state-component.js +0 -1
  1627. package/dist/domain/components/index.d.ts +0 -2
  1628. package/dist/domain/components/index.js +0 -1
  1629. package/dist/domain/components/legacy-filter.d.ts +0 -513
  1630. package/dist/domain/components/navigation-state-component.d.ts +0 -15
  1631. package/dist/domain/components/navigation-state-component.js +0 -1
  1632. package/dist/domain/components/selection-state-component.d.ts +0 -14
  1633. package/dist/domain/components/selection-state-component.js +0 -1
  1634. package/dist/domain/components/system-component-builder.d.ts +0 -12
  1635. package/dist/domain/components/system-component-builder.js +0 -1
  1636. package/dist/domain/components/system-component-filter.d.ts +0 -793
  1637. package/dist/domain/components/system-virtual-entity.js +0 -1
  1638. package/dist/domain/components/tool-state-component.d.ts +0 -14
  1639. package/dist/domain/components/tool-state-component.js +0 -1
  1640. package/dist/domain/components/updates.d.ts +0 -108
  1641. package/dist/domain/components/view-state-component.d.ts +0 -14
  1642. package/dist/domain/components/view-state-component.js +0 -1
  1643. package/dist/domain/components/viewport-state-component.d.ts +0 -29
  1644. package/dist/domain/components/viewport-state-component.js +0 -1
  1645. package/dist/domain/core/component.d.ts +0 -46
  1646. package/dist/domain/core/expression.d.ts +0 -50
  1647. package/dist/domain/core/json-schema.js +0 -1
  1648. package/dist/domain/core/migrations.d.ts +0 -99
  1649. package/dist/domain/core/migrations.js +0 -1
  1650. package/dist/domain/core/model.d.ts +0 -127
  1651. package/dist/domain/core/reflection.d.ts +0 -114
  1652. package/dist/domain/core/reflection.js +0 -1
  1653. package/dist/domain/core/state.d.ts +0 -10
  1654. package/dist/domain/domain-context/recipe-system/recipes.d.ts +0 -57
  1655. package/dist/domain/domain-context/recipe-system/recipes.js +0 -1
  1656. package/dist/domain/expressions/constant-expressions.d.ts +0 -9
  1657. package/dist/domain/expressions/constant-expressions.js +0 -1
  1658. package/dist/domain/expressions/custom-expression.d.ts +0 -13
  1659. package/dist/domain/expressions/custom-expression.js +0 -1
  1660. package/dist/domain/expressions/index.d.ts +0 -1
  1661. package/dist/domain/expressions/index.js +0 -1
  1662. package/dist/domain/expressions/memoize-expression.d.ts +0 -17
  1663. package/dist/domain/expressions/prepare-domain-expressions.d.ts +0 -16
  1664. package/dist/domain/invariants/builtin-invariant.d.ts +0 -5
  1665. package/dist/domain/invariants/custom-invariants.d.ts +0 -22
  1666. package/dist/domain/invariants/custom-invariants.js +0 -1
  1667. package/dist/domain/invariants/invariants.d.ts +0 -68
  1668. package/dist/domain/invariants/invariants.js +0 -1
  1669. package/dist/domain/invariants/violation-component.js +0 -1
  1670. package/dist/domain/invariants/violation.d.ts +0 -85
  1671. package/dist/domain/invariants/violation.js +0 -1
  1672. package/dist/domain/relations/all-of-type-relation.d.ts +0 -33
  1673. package/dist/domain/relations/all-of-type-relation.js +0 -1
  1674. package/dist/domain/relations/component-factories.d.ts +0 -15
  1675. package/dist/domain/relations/component-factories.js +0 -1
  1676. package/dist/domain/relations/composed-of.d.ts +0 -12
  1677. package/dist/domain/relations/composed-of.js +0 -1
  1678. package/dist/domain/relations/direct-relation.d.ts +0 -29
  1679. package/dist/domain/relations/indirect-relation.d.ts +0 -81
  1680. package/dist/domain/relations/indirect-relation.js +0 -1
  1681. package/dist/domain/relations/reference-component.d.ts +0 -18
  1682. package/dist/domain/relations/reference-component.js +0 -1
  1683. package/dist/domain/relations/reference-field.d.ts +0 -7
  1684. package/dist/domain/relations/relation-factory.d.ts +0 -19
  1685. package/dist/domain/relations/relation-factory.js +0 -1
  1686. package/dist/domain/relations/relation-implementation.d.ts +0 -8
  1687. package/dist/domain/system-components/angle-indicator.d.ts +0 -21
  1688. package/dist/domain/system-components/angle-indicator.js +0 -1
  1689. package/dist/domain/system-components/attribute-switch.d.ts +0 -8
  1690. package/dist/domain/system-components/attribute-switch.js +0 -1
  1691. package/dist/domain/system-components/autorotate-camera-component.d.ts +0 -19
  1692. package/dist/domain/system-components/autorotate-camera-component.js +0 -1
  1693. package/dist/domain/system-components/basic-sidebar-footer.d.ts +0 -8
  1694. package/dist/domain/system-components/basic-sidebar-footer.js +0 -1
  1695. package/dist/domain/system-components/camera-based-hidden-entity-object.js +0 -1
  1696. package/dist/domain/system-components/camera-based-hidden-entity.js +0 -1
  1697. package/dist/domain/system-components/canvas-config.d.ts +0 -87
  1698. package/dist/domain/system-components/canvas-config.js +0 -1
  1699. package/dist/domain/system-components/canvas-custom-environment.js +0 -1
  1700. package/dist/domain/system-components/canvas-padding.d.ts +0 -25
  1701. package/dist/domain/system-components/canvas-padding.js +0 -1
  1702. package/dist/domain/system-components/canvas-preset-environment.d.ts +0 -37
  1703. package/dist/domain/system-components/canvas-preset-environment.js +0 -1
  1704. package/dist/domain/system-components/child-entity-recipe-hierarchy.d.ts +0 -21
  1705. package/dist/domain/system-components/child-entity-recipe-hierarchy.js +0 -1
  1706. package/dist/domain/system-components/client-side-image.d.ts +0 -14
  1707. package/dist/domain/system-components/client-side-image.js +0 -1
  1708. package/dist/domain/system-components/color-value.js +0 -1
  1709. package/dist/domain/system-components/common/angle-indicator-schema.d.ts +0 -292
  1710. package/dist/domain/system-components/common/angle-indicator-schema.js +0 -1
  1711. package/dist/domain/system-components/common/dimension-indicator-schema.d.ts +0 -607
  1712. package/dist/domain/system-components/common/dimension-indicator-schema.js +0 -1
  1713. package/dist/domain/system-components/custom-header.d.ts +0 -11
  1714. package/dist/domain/system-components/custom-header.js +0 -1
  1715. package/dist/domain/system-components/custom-price-footer.js +0 -1
  1716. package/dist/domain/system-components/custom-sidebar-footer.d.ts +0 -11
  1717. package/dist/domain/system-components/custom-sidebar-footer.js +0 -1
  1718. package/dist/domain/system-components/dimension-indicator.d.ts +0 -31
  1719. package/dist/domain/system-components/dimension-indicator.js +0 -1
  1720. package/dist/domain/system-components/editable-angle-indicator.d.ts +0 -38
  1721. package/dist/domain/system-components/editable-angle-indicator.js +0 -1
  1722. package/dist/domain/system-components/editable-distance-dimension-indicator.d.ts +0 -42
  1723. package/dist/domain/system-components/editable-distance-dimension-indicator.js +0 -1
  1724. package/dist/domain/system-components/editable-offset-indicator.d.ts +0 -41
  1725. package/dist/domain/system-components/editable-offset-indicator.js +0 -1
  1726. package/dist/domain/system-components/editable-size-indicator.d.ts +0 -38
  1727. package/dist/domain/system-components/editable-size-indicator.js +0 -1
  1728. package/dist/domain/system-components/entity-header.d.ts +0 -22
  1729. package/dist/domain/system-components/entity-header.js +0 -1
  1730. package/dist/domain/system-components/exit-tool-mode-fab.d.ts +0 -25
  1731. package/dist/domain/system-components/exit-tool-mode-fab.js +0 -1
  1732. package/dist/domain/system-components/finalize-action.d.ts +0 -20
  1733. package/dist/domain/system-components/finalize-action.js +0 -1
  1734. package/dist/domain/system-components/finalize-component.js +0 -1
  1735. package/dist/domain/system-components/fit-selection-orthographic-camera-component.js +0 -1
  1736. package/dist/domain/system-components/fit-selection-perspective-camera-component.js +0 -1
  1737. package/dist/domain/system-components/fixed-header.d.ts +0 -10
  1738. package/dist/domain/system-components/fixed-header.js +0 -1
  1739. package/dist/domain/system-components/floating-header.d.ts +0 -10
  1740. package/dist/domain/system-components/floating-header.js +0 -1
  1741. package/dist/domain/system-components/hidden-header.d.ts +0 -8
  1742. package/dist/domain/system-components/hidden-header.js +0 -1
  1743. package/dist/domain/system-components/hidden-sidebar-footer.d.ts +0 -21
  1744. package/dist/domain/system-components/hidden-sidebar-footer.js +0 -1
  1745. package/dist/domain/system-components/horizontal-tabs.d.ts +0 -28
  1746. package/dist/domain/system-components/horizontal-tabs.js +0 -1
  1747. package/dist/domain/system-components/list-selector-dimension-indicator.d.ts +0 -30
  1748. package/dist/domain/system-components/list-selector-dimension-indicator.js +0 -1
  1749. package/dist/domain/system-components/multilingual-text-value.js +0 -1
  1750. package/dist/domain/system-components/navigation-steps.d.ts +0 -19
  1751. package/dist/domain/system-components/navigation-steps.js +0 -1
  1752. package/dist/domain/system-components/offset-anchors.d.ts +0 -20
  1753. package/dist/domain/system-components/offset-anchors.js +0 -1
  1754. package/dist/domain/system-components/offset-indicator.d.ts +0 -84
  1755. package/dist/domain/system-components/offset-indicator.js +0 -1
  1756. package/dist/domain/system-components/offset.d.ts +0 -31
  1757. package/dist/domain/system-components/offset.js +0 -1
  1758. package/dist/domain/system-components/other-action.d.ts +0 -14
  1759. package/dist/domain/system-components/other-action.js +0 -1
  1760. package/dist/domain/system-components/property-page.d.ts +0 -16
  1761. package/dist/domain/system-components/property-page.js +0 -1
  1762. package/dist/domain/system-components/read-sidebar-footer.d.ts +0 -8
  1763. package/dist/domain/system-components/read-sidebar-footer.js +0 -1
  1764. package/dist/domain/system-components/replace-entity-recipe-hierarchy.d.ts +0 -21
  1765. package/dist/domain/system-components/replace-entity-recipe-hierarchy.js +0 -1
  1766. package/dist/domain/system-components/rotatable.js +0 -1
  1767. package/dist/domain/system-components/rotation-handle.d.ts +0 -53
  1768. package/dist/domain/system-components/rotation-handle.js +0 -1
  1769. package/dist/domain/system-components/save-template-thumbnail.d.ts +0 -14
  1770. package/dist/domain/system-components/save-template-thumbnail.js +0 -1
  1771. package/dist/domain/system-components/scene-entity-add-fab.d.ts +0 -32
  1772. package/dist/domain/system-components/scene-entity-add-fab.js +0 -1
  1773. package/dist/domain/system-components/scene-entity-animation.js +0 -1
  1774. package/dist/domain/system-components/scene-entity-control.js +0 -1
  1775. package/dist/domain/system-components/scene-entity-delete-fab.d.ts +0 -19
  1776. package/dist/domain/system-components/scene-entity-delete-fab.js +0 -1
  1777. package/dist/domain/system-components/scene-entity-floor-object.js +0 -1
  1778. package/dist/domain/system-components/scene-entity-html-hotspot.d.ts +0 -27
  1779. package/dist/domain/system-components/scene-entity-html-hotspot.js +0 -1
  1780. package/dist/domain/system-components/scene-entity-navigation-hotspot.d.ts +0 -20
  1781. package/dist/domain/system-components/scene-entity-navigation-hotspot.js +0 -1
  1782. package/dist/domain/system-components/scene-entity-object-html-hotspot.d.ts +0 -31
  1783. package/dist/domain/system-components/scene-entity-object-html-hotspot.js +0 -1
  1784. package/dist/domain/system-components/scene-entity-select-hotspot.d.ts +0 -5
  1785. package/dist/domain/system-components/scene-entity-select-hotspot.js +0 -1
  1786. package/dist/domain/system-components/scene-entity-wall-object.js +0 -1
  1787. package/dist/domain/system-components/selectable-component.js +0 -1
  1788. package/dist/domain/system-components/sidebar-tabs.d.ts +0 -29
  1789. package/dist/domain/system-components/sidebar-tabs.js +0 -1
  1790. package/dist/domain/system-components/simple-summary.js +0 -1
  1791. package/dist/domain/system-components/size.d.ts +0 -21
  1792. package/dist/domain/system-components/size.js +0 -1
  1793. package/dist/domain/system-components/sketching-draw.d.ts +0 -17
  1794. package/dist/domain/system-components/sketching-draw.js +0 -1
  1795. package/dist/domain/system-components/sketching-edit.d.ts +0 -28
  1796. package/dist/domain/system-components/sketching-edit.js +0 -1
  1797. package/dist/domain/system-components/summary-component.js +0 -1
  1798. package/dist/domain/system-components/text-value.js +0 -1
  1799. package/dist/domain/system-components/tool-controls.js +0 -1
  1800. package/dist/domain/system-components/tool-menu-fab.d.ts +0 -40
  1801. package/dist/domain/system-components/tool-menu-fab.js +0 -1
  1802. package/dist/domain/system-components/toolbar.d.ts +0 -13
  1803. package/dist/domain/system-components/toolbar.js +0 -1
  1804. package/dist/domain/system-components/universal-sidebar-footer.d.ts +0 -12
  1805. package/dist/domain/system-components/universal-sidebar-footer.js +0 -1
  1806. package/dist/domain/system-components/view-controls.js +0 -1
  1807. package/dist/extras/assistant/AssistantChat.d.ts +0 -6
  1808. package/dist/extras/assistant/AssistantChat.js +0 -1
  1809. package/dist/extras/assistant/index.d.ts +0 -1
  1810. package/dist/extras/assistant/index.js +0 -1
  1811. package/dist/phoenix/application-spec/generate-assistant-prompt.d.ts +0 -12
  1812. package/dist/phoenix/application-spec/generate-assistant-prompt.js +0 -1
  1813. package/dist/phoenix/commands/generate-project-files.d.ts +0 -6
  1814. package/dist/phoenix/commands/generate-project-files.js +0 -1
  1815. /package/dist/{domain/components/component-reader-types.js → application-spec/core/expressions/relation-expression-params.js} +0 -0
  1816. /package/dist/application-spec/{core → enhanced-json}/eval-code-uses-self.d.ts +0 -0
  1817. /package/dist/application-spec/{core → enhanced-json}/eval-code-uses-self.js +0 -0
  1818. /package/dist/application-spec/{core → enhanced-json}/eval-to-constant.js +0 -0
  1819. /package/dist/{domain/core/enhanced-json-schema.js → application-spec/generate-application/runtime/spec-code/spec-code-module.js} +0 -0
  1820. /package/dist/{domain/core/expression.js → application-spec/parse-application-files/spec/expressions/expression-read.js} +0 -0
  1821. /package/dist/{domain/relations/reference-field.js → configurator/ui/assistant/form/form-element-definition.js} +0 -0
  1822. /package/dist/{domain/relations/relation-implementation.js → configurator/ui/assistant/form/form-model.js} +0 -0
  1823. /package/dist/{domain/core/schema-validator.js → configurator/ui/assistant/form-elements/form-element-props.js} +0 -0
  1824. /package/dist/domain/{components → core/component}/legacy-filter.js +0 -0
  1825. /package/dist/domain/{components → core/component}/system-component-filter.js +0 -0
  1826. /package/dist/domain/{components → core/component}/system-virtual-entity.d.ts +0 -0
  1827. /package/dist/domain/{components → core/component}/updates.js +0 -0
  1828. /package/dist/domain/{invariants → core/invariant}/builtin-invariant.js +0 -0
  1829. /package/dist/domain/{invariants → core/invariant}/violation-component.d.ts +0 -0
  1830. /package/dist/domain/core/{alias.d.ts → model/alias.d.ts} +0 -0
  1831. /package/dist/domain/core/{alias.js → model/alias.js} +0 -0
  1832. /package/dist/domain/core/{common-definitions.d.ts → model/common-definitions.d.ts} +0 -0
  1833. /package/dist/domain/core/{common-definitions.js → model/common-definitions.js} +0 -0
  1834. /package/dist/domain/core/{component.js → model/component.js} +0 -0
  1835. /package/dist/domain/core/{model.js → model/model.js} +0 -0
  1836. /package/dist/domain/core/{preset.d.ts → model/preset.d.ts} +0 -0
  1837. /package/dist/domain/core/{preset.js → model/preset.js} +0 -0
  1838. /package/dist/domain/{relations → core/relation}/direct-relation.js +0 -0
  1839. /package/dist/domain/core/{schema-validator-ajv.d.ts → schema/create-ajv-schema-validator.d.ts} +0 -0
  1840. /package/dist/domain/core/{schema-validator-ajv.js → schema/create-ajv-schema-validator.js} +0 -0
  1841. /package/dist/domain/core/{schema-validator-csp.d.ts → schema/create-csp-schema-validator.d.ts} +0 -0
  1842. /package/dist/domain/core/{schema-validator-csp.js → schema/create-csp-schema-validator.js} +0 -0
  1843. /package/dist/domain/core/{enhanced-json-schema.d.ts → schema/enhanced-json-schema.d.ts} +0 -0
  1844. /package/dist/domain/core/{json-schema.d.ts → schema/extended-schema-validator.d.ts} +0 -0
  1845. /package/dist/domain/core/{schema-validator.d.ts → schema/schema-validator.d.ts} +0 -0
  1846. /package/dist/domain/core/{state.js → state/state.js} +0 -0
  1847. /package/dist/domain/{expressions → domain-runtime/spec}/memoize-expression.js +0 -0
  1848. /package/dist/domain/{expressions → domain-runtime/spec}/prepare-domain-expressions.js +0 -0
  1849. /package/dist/domain/{system-components → extensions}/camera-based-hidden-entity-object.d.ts +0 -0
  1850. /package/dist/domain/{system-components → extensions}/camera-based-hidden-entity.d.ts +0 -0
  1851. /package/dist/domain/{system-components → extensions}/canvas-custom-environment.d.ts +0 -0
  1852. /package/dist/domain/{system-components → extensions}/color-value.d.ts +0 -0
  1853. /package/dist/domain/{system-components → extensions}/common/dimension-indicators.d.ts +0 -0
  1854. /package/dist/domain/{system-components → extensions}/common/dimension-indicators.js +0 -0
  1855. /package/dist/domain/{system-components → extensions}/common/editable-indicator-button-variant.d.ts +0 -0
  1856. /package/dist/domain/{system-components → extensions}/common/editable-indicator-button-variant.js +0 -0
  1857. /package/dist/domain/{system-components → extensions}/custom-price-footer.d.ts +0 -0
  1858. /package/dist/domain/{system-components → extensions}/finalize-component.d.ts +0 -0
  1859. /package/dist/domain/{system-components → extensions}/fit-selection-orthographic-camera-component.d.ts +0 -0
  1860. /package/dist/domain/{system-components → extensions}/fit-selection-perspective-camera-component.d.ts +0 -0
  1861. /package/dist/domain/{system-components → extensions}/multilingual-text-value.d.ts +0 -0
  1862. /package/dist/domain/{system-components → extensions}/rotatable.d.ts +0 -0
  1863. /package/dist/domain/{system-components → extensions}/scene-entity-animation.d.ts +0 -0
  1864. /package/dist/domain/{system-components → extensions}/scene-entity-control.d.ts +0 -0
  1865. /package/dist/domain/{system-components → extensions}/scene-entity-floor-object.d.ts +0 -0
  1866. /package/dist/domain/{system-components → extensions}/scene-entity-wall-object.d.ts +0 -0
  1867. /package/dist/domain/{system-components → extensions}/selectable-component.d.ts +0 -0
  1868. /package/dist/domain/{system-components → extensions}/simple-summary.d.ts +0 -0
  1869. /package/dist/domain/{system-components → extensions}/summary-component.d.ts +0 -0
  1870. /package/dist/domain/{system-components → extensions}/text-value.d.ts +0 -0
  1871. /package/dist/domain/{system-components → extensions}/tool-controls.d.ts +0 -0
  1872. /package/dist/domain/{system-components → extensions}/view-controls.d.ts +0 -0
@@ -1,2 +1,2 @@
1
1
  export declare const mergeClaudeMdContent: (existingContent: string | undefined) => string;
2
- export declare const claudeMdFile = "[PHOENIX-SDK-START]\n## Phoenix Configurator Project\n\nDeclarative 3D product configurator built with Phoenix SDK. Domain model defined in YAML, custom logic in TypeScript.\n\n## Build Commands\n- `pnpm phoenix build` \u2014 Full production build\n- `pnpm phoenix dev` \u2014 Development mode with hot reload\n- `pnpm phoenix sync` \u2014 Sync generated files without full build\n\n## Dev Logs\n- `pnpm phoenix dev` writes all logs to `.phoenix/phoenix-dev.log`\n- Contains: spec parse errors, build errors, browser runtime errors, file watcher events\n- After making changes, always check the log for errors: `tail -50 .phoenix/phoenix-dev.log` or `grep ERROR .phoenix/phoenix-dev.log`\n- Rotated automatically at 10MB (`.log.1`, `.log.2` are older rotations)\n\n## Project Structure\n- `spec/` \u2014 Domain YAML specs (entities, relations, expressions, invariants, components, application config)\n- `src/expressions/` \u2014 Computed/derived entity properties (`phx.domain.implementCustomExpressions()`)\n- `src/invariants/` \u2014 Business rule constraints (`phx.domain.implementCustomInvariants()`)\n- `src/transformers/` \u2014 Automatic state fixers (`phx.frontend.transformerBuilder`)\n- `src/components/` \u2014 ECS system components (`phx.domain.attachComponent.withEntity()`)\n- `src/elements/` \u2014 Page-level React components (`phx.frontend.createCustomPhoenixLayoutElement()`)\n- `src/handlers/` \u2014 Event & lifecycle handlers\n- `src/webhooks/` \u2014 Server-side webhook handlers (`phx.webhooks.*Builder`)\n- `src/migrations/` \u2014 Schema version migrations (v*.ts)\n- `src/locales/` \u2014 Locale catalogs (authored .po sources; compiled .ts, do not edit)\n- `src/admin/` \u2014 Admin interface (mirrors main src/ structure)\n- `src/_shared/` \u2014 Shared utilities (NOT auto-imported, requires explicit imports)\n- `.phoenix/` \u2014 Auto-generated files (DO NOT EDIT)\n- `public/` \u2014 Static assets (3D models, textures, images, HDRI maps, fonts)\n- `assets/` \u2014 Uploadable resources (PDF templates, email assets)\n\n## Architecture Principles\n- YAML-first: 99% of configuration in spec/*.yaml, custom code is last resort\n- ECS pattern: entities (domain objects) + components (behavior/UI) + systems (SDK runtime)\n- Reactive state: immutable domain state flows through RxJS pipelines\n- Data binding: `$read` (read-only), `$write` (write-only), `$bind` (bidirectional) connect components to domain\n- memoEval: all component implementations must use memoEval for stable object references\n\n## Key Patterns\n- Expressions = computed properties on entities (prefix: `$`), implemented per-entity in src/expressions/\n- Invariants = validation rules returning violations, static or dynamic\n- Transformers = auto-fixers maintaining consistency after state changes\n- Components defined in YAML with `$read`/`$bind` bindings, or custom in src/components/ using attachComponent builder\n- Webhooks = server-side finalization tasks (PDF, email, CSV, image rendering)\n- Filters = contextual component activation via navigationStates, viewStates, modes, selectedEntityIds\n\n## File Conventions\n- Components: PascalCase (.tsx)\n- Utilities: kebab-case (.ts)\n- Expressions: entity-name.ts\n- Migrations: v*.ts (sequential)\n- Specs: kebab-case.yaml\n- Underscore folders (_shared/, _utils/) are NOT auto-imported\n\n## Export Rules\nAll files in src/expressions/, src/invariants/, src/transformers/, src/components/, src/handlers/, src/webhooks/ MUST use default exports. Can be a single item or an array. Named exports are ignored by the SDK auto-import system.\n\n## Webhook Membership\n- User-authored components, admin components, and handlers are frontend-only by default.\n- A handler that registers `createMapPublishedRevisionDataHandler`, `createMapPublishedChunkedDataHandler`, `createDataRowValidatorHandler`, or `createSheetValidatorHandler` is included in the webhook automatically.\n- To include another component or handler in the webhook, put `'use webhook'` as its first statement (leading comments are allowed).\n- A webhook-included file and its runtime local-import closure must not import browser SDK entrypoints (`application`, `admin`, `configurator`, `editor`, `react`, `ui`) or style/font/image assets. Spec parsing reports the unsafe import and inclusion reason as a diagnostic.\n- Keep browser rendering in an unpinned file. Move shared server-safe logic into a separate module when both frontend and webhook code need it.\n\n## Do Not Edit\n- `.phoenix/` directory \u2014 completely regenerated on each build\n- `tsconfig.json`, `eslint.config.js`, `prettier.config.js`, `.prettierignore`, `.linguirc`, `.nvmrc`\n- `src/locales/` .ts files \u2014 compiled from .po files\n\n## Code Review\nUse `/review` command to review code changes before committing.\n\n## SDK Documentation\n\nAlways search SDK docs for relevant examples before implementing Phoenix features.\n\n### Commands\n- `pnpm phoenix docs` \u2014 Full documentation index with descriptions\n- `pnpm phoenix docs -s <term>` \u2014 Search all doc content and metadata (case-insensitive)\n- `pnpm phoenix docs --dir` \u2014 Print the absolute docs directory for grep or ripgrep\n- `pnpm phoenix docs -r <path>` \u2014 Read specific doc (raw text to stdout)\n- `pnpm phoenix docs -c <category>` \u2014 List docs in a category\n- `pnpm phoenix docs -l` \u2014 List all doc paths with titles\n\n### 3D Asset Inspection\n\nRun `pnpm phoenix inspect:assets` to discover all glTF/GLB files in `public/` and get a summary table. Use `--file <path>` for detailed single-file inspection.\n\n**When to use:** before writing YAML/code that references objectName, materialsToOverride, morphTargetInfluences, or object positioning.\n\n**What it shows per node:**\n- Name, type (Mesh/Light/Camera/Empty), children\n- Transform: `pos=`, `rot=`, `scale=` (only non-default values shown)\n- Per-node morph targets: `morphs=Width,Height`\n- Bounding box: `bounds=WxHxD` (width x height x depth in meters)\n- Origin placement: `origin=center`, `bottom-center`, `top-center`, `bottom-corner`, etc. with numerical offset\n\n**Use cases:**\n- Find exact node names for `objectName` in scene entity components\n- Find material names for `materialsToOverride`\n- Find morph target names for `morphTargetInfluences`\n- Check model dimensions (bounds) for positioning, dimension indicators, or invariants\n- Check origin placement to understand how models anchor (center vs bottom-center)\n- Use `--json` for programmatic access to all data\n\n**Flags:** `--objects`, `--materials`, `--morphs`, `--animations`, `--json`\n\n### Screenshot CLI\n\nCapture 3D canvas screenshots from a running dev server via `pnpm phoenix screenshot`.\n\n**Prerequisites:**\n1. `phoenix dev` must be running (starts the WebSocket server on port 3020)\n2. Configurator must be open in a browser (the browser does the actual rendering)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (default: `./screenshot.png`)\n- `--width, -w` \u2014 Width in pixels (default: 1920)\n- `--height` \u2014 Height in pixels (default: 1080)\n- `--format, -f` \u2014 Image format: PNG or JPEG (default: PNG)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Example workflow:**\n1. Start dev server: `pnpm phoenix dev`\n2. Open configurator in browser (or via Playwright MCP)\n3. Take screenshot: `pnpm phoenix screenshot -o ./render.png -w 2560 --height 1440`\n\n**Use cases:** visual regression testing, generating product images, debugging 3D renders\n\n### Inspect: State\n\nGet the current editor runtime state as JSON via `pnpm phoenix inspect:state`.\n\n**Prerequisites:** same as screenshot (dev server running + browser open)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (prints to stdout if omitted)\n- `--sections, -s` \u2014 Comma-separated: entities, navigation, validation (default: all)\n- `--pretty` \u2014 Pretty-print JSON (default: true)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Example:** `pnpm phoenix inspect:state -o ./state.json -s entities,navigation`\n\n**Lifecycle status:** Always included in response. Shows which systems are ready:\n- `domainLoaded` \u2014 domain data loaded\n- `domainContextReady` \u2014 domain context initialized (entities available)\n- `configuratorReady` \u2014 3D configurator initialized\n- `sessionAuthenticated` \u2014 session service active\n- `editorMode` \u2014 editor mode enabled\n\n**Tips:** Use `--sections` to limit payload size. Pipe through `head`/`tail` for partial output (e.g., `pnpm phoenix inspect:state | head -50`).\n\n**Use cases:** AI agent context, debugging entity state, inspecting navigation/validation\n\n### Inspect: Data\n\nGet the current editor context data as JSON via `pnpm phoenix inspect:data`.\n\n**Prerequisites:** same as screenshot (dev server running + browser open)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (prints to stdout if omitted)\n- `--pretty` \u2014 Pretty-print JSON (default: true)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Returns:** publishedData, frontendData, backendData, sessionData, accessData, webComponentProperties\n\n**Example:** `pnpm phoenix inspect:data -o ./data.json`\n\n**Tips:** Pipe through `head`/`tail` for partial output (e.g., `pnpm phoenix inspect:data | head -30`).\n\n**Use cases:** AI agent context, debugging published/session/access data\n\n### Inspect: Scene\n\nGet the current Three.js scene graph as JSON via `pnpm phoenix inspect:scene`.\n\n**Prerequisites:** same as screenshot (dev server running + browser open)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (prints to stdout if omitted)\n- `--pretty` \u2014 Pretty-print JSON (default: true)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Returns:** Recursive scene tree with per-node: name, type, visible, position, rotation, scale, userData (entityId), and for meshes: geometry name, bounding box, material properties (color, metalness, roughness, opacity, textures), morph target influences. Lights include color, intensity, and type-specific properties.\n\n**Example:** `pnpm phoenix inspect:scene -o ./scene.json`\n\n**Tips:** Scene graphs can be large. Pipe through `head`/`tail` for partial output.\n\n**Use cases:** AI agent context, debugging 3D scene layout, inspecting materials and lighting\n\n### Key Docs\n- `docs/phoenix/getting-started.mdx` \u2014 Setup, prerequisites, first project\n- `docs/phoenix/quickstart.mdx` \u2014 End-to-end tutorial building a configurator\n- `docs/phoenix/domain-model.mdx` \u2014 Entities, attributes, relations, specs\n- `docs/phoenix/components.mdx` \u2014 ECS pattern, YAML components, custom components\n- `docs/phoenix/project-structure.mdx` \u2014 Files, folders, conventions\n- `docs/phoenix/best-practices.mdx` \u2014 YAML-first, code patterns, common pitfalls\n- `docs/phoenix/state-management.mdx` \u2014 Reactive state, RxJS pipelines, data flow\n- `docs/phoenix/expression-context.mdx` \u2014 Expression API, context object, helpers\n- `docs/phoenix/webhooks.mdx` \u2014 Server-side finalization workflows\n- `docs/phoenix/finalization.mdx` \u2014 Finalization system, PDF/email/CSV generation\n- `docs/phoenix/migrations.mdx` \u2014 Schema versioning, migration files\n\n### Agent Workflow\n1. Find relevant docs by content: `pnpm phoenix docs -s \"camera\"`\n2. Read matching doc: `pnpm phoenix docs -r docs/3d-scene/cameras/transitions.mdx`\n3. Search within a doc: `pnpm phoenix docs -r <path> | grep \"example\"`\n4. Search titles only as a fallback: `pnpm phoenix docs -l | grep \"camera\"`\n5. Search generated files directly when needed: `grep -rn \"camera\" \"$(pnpm phoenix docs --dir)\"`\n6. Browse a topic area: `pnpm phoenix docs -c \"Layouts\"`\n\n### Playwright MCP Setup (for AI agents)\n\nTo interact with the 3D configurator in a browser, Playwright MCP needs GPU-enabled flags for WebGL rendering. Add to `~/.claude/.mcp.json`:\n\n```json\n{\n \"mcpServers\": {\n \"playwright\": {\n \"command\": \"npx\",\n \"args\": [\n \"@playwright/mcp@latest\",\n \"--headed\",\n \"--launch-options\",\n \"{\\\"args\\\":[\\\"--use-gl=swiftshader\\\",\\\"--enable-webgl\\\",\\\"--ignore-gpu-blocklist\\\"]}\"\n ]\n }\n }\n}\n```\n\nKey flags:\n- `--headed` \u2014 visible browser (required for GPU rendering)\n- `--use-gl=swiftshader` \u2014 software GPU fallback for environments without a physical GPU\n- `--enable-webgl` + `--ignore-gpu-blocklist` \u2014 ensure WebGL is available\n[PHOENIX-SDK-END]\n";
2
+ export declare const claudeMdFile = "[PHOENIX-SDK-START]\n## Phoenix Configurator Project\n\nDeclarative 3D product configurator built with Phoenix SDK. Domain model defined in YAML, custom logic in TypeScript.\n\n## Build Commands\n- `pnpm phoenix build` \u2014 Full production build\n- `pnpm phoenix dev` \u2014 Development mode with hot reload\n- `pnpm phoenix sync` \u2014 Sync generated files without full build\n\n## Dev Logs\n- `pnpm phoenix dev` writes all logs to `.phoenix/phoenix-dev.log`\n- Contains: spec parse errors, build errors, browser runtime errors, file watcher events\n- After making changes, always check the log for errors: `tail -50 .phoenix/phoenix-dev.log` or `grep ERROR .phoenix/phoenix-dev.log`\n- Rotated automatically at 10MB (`.log.1`, `.log.2` are older rotations)\n\n## Project Structure\n- `spec/` \u2014 Domain YAML specs (entities, relations, expressions, invariants, components, application config)\n- `src/expressions/` \u2014 Computed/derived entity properties (`phx.domain.implementCustomExpressions()`)\n- `src/invariants/` \u2014 Business rule constraints (`phx.domain.implementCustomInvariants()`)\n- `src/transformers/` \u2014 Automatic state fixers (`phx.frontend.transformerBuilder`)\n- `src/components/` \u2014 ECS system components (`phx.domain.attachComponent.withEntity()`)\n- `src/elements/` \u2014 Page-level React components (`phx.frontend.createCustomPhoenixLayoutElement()`)\n - `ConfiguratorLayout`: a layout element with this name replaces everything the built-in layout renders for a loaded configuration, in owner and read mode, finalization included. Prefer arranging the spec's layout components; write one for shell-level changes, such as moving the sidebar or adding an area the built-in layout has no place for\n - Mount `LayoutSlots.SharedCanvas` (from `@salsita-ai/sdk/configurator`) in a positioned root covering the page, or the app loader stays on screen; put the UI above it, positioned and after it in the markup. Call `useSceneSafeArea()` (same import) and put `containerRef` on the element covering the whole canvas and `safeAreaRef` on the region the UI leaves free, with `pointerEvents: 'none'`, so the camera frames the scene there\n - Sidebar moved, contents as the spec configures them: mount `LayoutSlots.DesktopSidebar` in a positioned container that sets its size, with `side=\"start\"` on the left; `docs/layouts/sidebar/in-a-custom-layout.mdx` is the whole layout\n - Your own UI: \"Hooks for a Project Layout\" in `docs/phoenix/configurator-interface.mdx` lists the hooks with what each returns (`pnpm phoenix docs -r docs/phoenix/configurator-interface.mdx`), `docs/phoenix/layout-slots.mdx` the built-in pieces you can still mount, and `docs/layouts/custom-layout.mdx` is a worked example\n - Messages: mount `LayoutSlots.Services` for the built-in snackbars, or show violations, side-effect hints and errors yourself with `phx.frontend.useConfiguratorMessages(onMessage)`, not both. Either way mount a snackbar root (`LayoutSlots.DesktopSnackbarsRoot` or `LayoutSlots.MobileSnackbarsRoot`): save and built-in action errors are always snackbars\n - Finalize over the spec's `finalizeAction` components, each naming a handler registered with `phx.frontend.createPhoenixHandler`: run each with `phx.frontend.useFinalizeAction(handler)` in a component of its own wrapped in `PhoenixHandlerBoundary` (from `@salsita-ai/sdk/react`), or mount `FinalizeActions` (from `@salsita-ai/sdk/configurator`) for the built-in buttons. `finalizePage` and `finalizeButton` are legacy\n - Read mode and fullscreen are the layout's job, no hook enforces them: hide what a viewer must not change while `phx.frontend.useAccessService().accessInfo.viewMode` is `true`, and remove panels while `phx.frontend.useIsFullscreenActive()` is set; `phx.frontend.useSetFullscreen()` returns its setter\n- `src/handlers/` \u2014 Event & lifecycle handlers\n- `src/webhooks/` \u2014 Server-side webhook handlers (`phx.webhooks.*Builder`)\n- `src/migrations/` \u2014 Schema version migrations (v*.ts)\n- `src/locales/` \u2014 Locale catalogs (authored .po sources; compiled .ts, do not edit)\n- `src/admin/` \u2014 Admin interface (mirrors main src/ structure)\n- `src/_shared/` \u2014 Shared utilities (NOT auto-imported, requires explicit imports)\n- `.phoenix/` \u2014 Auto-generated files (DO NOT EDIT)\n- `public/` \u2014 Static assets (3D models, textures, images, HDRI maps, fonts)\n- `assets/` \u2014 Uploadable resources (PDF templates, email assets)\n\n## Architecture Principles\n- YAML-first: 99% of configuration in spec/*.yaml, custom code is last resort\n- ECS pattern: entities (domain objects) + components (behavior/UI) + systems (SDK runtime)\n- Reactive state: immutable domain state flows through RxJS pipelines\n- Data binding: `$read` (read-only), `$write` (write-only), `$bind` (bidirectional) connect components to domain\n- memoEval: all component implementations must use memoEval for stable object references\n\n## Key Patterns\n- Expressions = computed properties on entities (prefix: `$`), implemented per-entity in src/expressions/\n- Invariants = validation rules returning violations, static or dynamic\n- Transformers = auto-fixers maintaining consistency after state changes\n- Components defined in YAML with `$read`/`$bind` bindings, or custom in src/components/ using attachComponent builder\n- Webhooks = server-side finalization tasks (PDF, email, CSV, image rendering)\n- Filters = contextual component activation via navigationStates, viewStates, modes, selectedEntityIds\n\n## File Conventions\n- Components: PascalCase (.tsx)\n- Utilities: kebab-case (.ts)\n- Expressions: entity-name.ts\n- Migrations: v*.ts (sequential)\n- Specs: kebab-case.yaml\n- Underscore folders (_shared/, _utils/) are NOT auto-imported\n\n## Export Rules\nAll files in src/expressions/, src/invariants/, src/transformers/, src/components/, src/handlers/, src/webhooks/ MUST use default exports. Can be a single item or an array. Named exports are ignored by the SDK auto-import system.\n\n## Webhook Membership\n- User-authored components, admin components, and handlers are frontend-only by default.\n- A handler that registers `createMapPublishedRevisionDataHandler`, `createMapPublishedChunkedDataHandler`, `createDataRowValidatorHandler`, or `createSheetValidatorHandler` is included in the webhook automatically.\n- To include another component or handler in the webhook, put `'use webhook'` as its first statement (leading comments are allowed).\n- A webhook-included file and its runtime local-import closure must not import browser SDK entrypoints (`application`, `admin`, `configurator`, `editor`, `react`, `ui`) or style/font/image assets. Spec parsing reports the unsafe import and inclusion reason as a diagnostic.\n- Keep browser rendering in an unpinned file. Move shared server-safe logic into a separate module when both frontend and webhook code need it.\n\n## Do Not Edit\n- `.phoenix/` directory \u2014 completely regenerated on each build\n- `tsconfig.json`, `eslint.config.js`, `prettier.config.js`, `.prettierignore`, `.linguirc`, `.nvmrc`\n- `src/locales/` .ts files \u2014 compiled from .po files\n\n## Code Review\nUse `/review` command to review code changes before committing.\n\n## SDK Documentation\n\nAlways search SDK docs for relevant examples before implementing Phoenix features.\n\n### Commands\n- `pnpm phoenix docs` \u2014 Full documentation index with descriptions\n- `pnpm phoenix docs -s <term>` \u2014 Search all doc content and metadata (case-insensitive)\n- `pnpm phoenix docs --dir` \u2014 Print the absolute docs directory for grep or ripgrep\n- `pnpm phoenix docs -r <path>` \u2014 Read specific doc (raw text to stdout)\n- `pnpm phoenix docs -c <category>` \u2014 List docs in a category\n- `pnpm phoenix docs -l` \u2014 List all doc paths with titles\n\n### 3D Asset Inspection\n\nRun `pnpm phoenix inspect:assets` to discover all glTF/GLB files in `public/` and get a summary table. Use `--file <path>` for detailed single-file inspection.\n\n**When to use:** before writing YAML/code that references objectName, materialsToOverride, morphTargetInfluences, or object positioning.\n\n**What it shows per node:**\n- Name, type (Mesh/Light/Camera/Empty), children\n- Transform: `pos=`, `rot=`, `scale=` (only non-default values shown)\n- Per-node morph targets: `morphs=Width,Height`\n- Bounding box: `bounds=WxHxD` (width x height x depth in meters)\n- Origin placement: `origin=center`, `bottom-center`, `top-center`, `bottom-corner`, etc. with numerical offset\n\n**Use cases:**\n- Find exact node names for `objectName` in scene entity components\n- Find material names for `materialsToOverride`\n- Find morph target names for `morphTargetInfluences`\n- Check model dimensions (bounds) for positioning, dimension indicators, or invariants\n- Check origin placement to understand how models anchor (center vs bottom-center)\n- Use `--json` for programmatic access to all data\n\n**Flags:** `--objects`, `--materials`, `--morphs`, `--animations`, `--json`\n\n### Screenshot CLI\n\nCapture 3D canvas screenshots from a running dev server via `pnpm phoenix screenshot`.\n\n**Prerequisites:**\n1. `phoenix dev` must be running (starts the WebSocket server on port 3020)\n2. Configurator must be open in a browser (the browser does the actual rendering)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (default: `./screenshot.png`)\n- `--width, -w` \u2014 Width in pixels (default: 1920)\n- `--height` \u2014 Height in pixels (default: 1080)\n- `--format, -f` \u2014 Image format: PNG or JPEG (default: PNG)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Example workflow:**\n1. Start dev server: `pnpm phoenix dev`\n2. Open configurator in browser (or via Playwright MCP)\n3. Take screenshot: `pnpm phoenix screenshot -o ./render.png -w 2560 --height 1440`\n\n**Use cases:** visual regression testing, generating product images, debugging 3D renders\n\n### Inspect: State\n\nGet the current editor runtime state as JSON via `pnpm phoenix inspect:state`.\n\n**Prerequisites:** same as screenshot (dev server running + browser open)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (prints to stdout if omitted)\n- `--sections, -s` \u2014 Comma-separated: entities, navigation, validation (default: all)\n- `--pretty` \u2014 Pretty-print JSON (default: true)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Example:** `pnpm phoenix inspect:state -o ./state.json -s entities,navigation`\n\n**Lifecycle status:** Always included in response. Shows which systems are ready:\n- `domainLoaded` \u2014 domain data loaded\n- `domainContextReady` \u2014 domain context initialized (entities available)\n- `configuratorReady` \u2014 3D configurator initialized\n- `sessionAuthenticated` \u2014 session service active\n- `editorMode` \u2014 editor mode enabled\n\n**Tips:** Use `--sections` to limit payload size. Pipe through `head`/`tail` for partial output (e.g., `pnpm phoenix inspect:state | head -50`).\n\n**Use cases:** AI agent context, debugging entity state, inspecting navigation/validation\n\n### Inspect: Data\n\nGet the current editor context data as JSON via `pnpm phoenix inspect:data`.\n\n**Prerequisites:** same as screenshot (dev server running + browser open)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (prints to stdout if omitted)\n- `--pretty` \u2014 Pretty-print JSON (default: true)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Returns:** publishedData, frontendData, backendData, sessionData, accessData, webComponentProperties\n\n**Example:** `pnpm phoenix inspect:data -o ./data.json`\n\n**Tips:** Pipe through `head`/`tail` for partial output (e.g., `pnpm phoenix inspect:data | head -30`).\n\n**Use cases:** AI agent context, debugging published/session/access data\n\n### Inspect: Scene\n\nGet the current Three.js scene graph as JSON via `pnpm phoenix inspect:scene`.\n\n**Prerequisites:** same as screenshot (dev server running + browser open)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (prints to stdout if omitted)\n- `--pretty` \u2014 Pretty-print JSON (default: true)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Returns:** Recursive scene tree with per-node: name, type, visible, position, rotation, scale, userData (entityId), and for meshes: geometry name, bounding box, material properties (color, metalness, roughness, opacity, textures), morph target influences. Lights include color, intensity, and type-specific properties.\n\n**Example:** `pnpm phoenix inspect:scene -o ./scene.json`\n\n**Tips:** Scene graphs can be large. Pipe through `head`/`tail` for partial output.\n\n**Use cases:** AI agent context, debugging 3D scene layout, inspecting materials and lighting\n\n### Key Docs\n- `docs/phoenix/getting-started.mdx` \u2014 Setup, prerequisites, first project\n- `docs/phoenix/quickstart.mdx` \u2014 End-to-end tutorial building a configurator\n- `docs/phoenix/domain-model.mdx` \u2014 Entities, attributes, relations, specs\n- `docs/phoenix/components.mdx` \u2014 ECS pattern, YAML components, custom components\n- `docs/phoenix/project-structure.mdx` \u2014 Files, folders, conventions\n- `docs/phoenix/best-practices.mdx` \u2014 YAML-first, code patterns, common pitfalls\n- `docs/phoenix/state-management.mdx` \u2014 Reactive state, RxJS pipelines, data flow\n- `docs/phoenix/expression-context.mdx` \u2014 Expression API, context object, helpers\n- `docs/phoenix/webhooks.mdx` \u2014 Server-side finalization workflows\n- `docs/phoenix/finalization.mdx` \u2014 Finalization system, PDF/email/CSV generation\n- `docs/phoenix/migrations.mdx` \u2014 Schema versioning, migration files\n\n### Agent Workflow\n1. Find relevant docs by content: `pnpm phoenix docs -s \"camera\"`\n2. Read matching doc: `pnpm phoenix docs -r docs/3d-scene/cameras/transitions.mdx`\n3. Search within a doc: `pnpm phoenix docs -r <path> | grep \"example\"`\n4. Search titles only as a fallback: `pnpm phoenix docs -l | grep \"camera\"`\n5. Search generated files directly when needed: `grep -rn \"camera\" \"$(pnpm phoenix docs --dir)\"`\n6. Browse a topic area: `pnpm phoenix docs -c \"Layouts\"`\n\n### Playwright MCP Setup (for AI agents)\n\nTo interact with the 3D configurator in a browser, Playwright MCP needs GPU-enabled flags for WebGL rendering. Add to `~/.claude/.mcp.json`:\n\n```json\n{\n \"mcpServers\": {\n \"playwright\": {\n \"command\": \"npx\",\n \"args\": [\n \"@playwright/mcp@latest\",\n \"--headed\",\n \"--launch-options\",\n \"{\\\"args\\\":[\\\"--use-gl=swiftshader\\\",\\\"--enable-webgl\\\",\\\"--ignore-gpu-blocklist\\\"]}\"\n ]\n }\n }\n}\n```\n\nKey flags:\n- `--headed` \u2014 visible browser (required for GPU rendering)\n- `--use-gl=swiftshader` \u2014 software GPU fallback for environments without a physical GPU\n- `--enable-webgl` + `--ignore-gpu-blocklist` \u2014 ensure WebGL is available\n[PHOENIX-SDK-END]\n";
@@ -1,2 +1,2 @@
1
1
  export declare const mergeCursorRulesContent: (existingContent: string | undefined) => string;
2
- export declare const cursorRulesFile = "---\ndescription: Phoenix SDK project rules\nglobs:\nalwaysApply: true\n---\n\n[PHOENIX-SDK-START]\n## Phoenix Configurator Project\n\nDeclarative 3D product configurator built with Phoenix SDK. Domain model defined in YAML, custom logic in TypeScript.\n\n## Build Commands\n- `pnpm phoenix build` \u2014 Full production build\n- `pnpm phoenix dev` \u2014 Development mode with hot reload\n- `pnpm phoenix sync` \u2014 Sync generated files without full build\n\n## Dev Logs\n- `pnpm phoenix dev` writes all logs to `.phoenix/phoenix-dev.log`\n- Contains: spec parse errors, build errors, browser runtime errors, file watcher events\n- After making changes, always check the log for errors: `tail -50 .phoenix/phoenix-dev.log` or `grep ERROR .phoenix/phoenix-dev.log`\n- Rotated automatically at 10MB (`.log.1`, `.log.2` are older rotations)\n\n## Project Structure\n- `spec/` \u2014 Domain YAML specs (entities, relations, expressions, invariants, components, application config)\n- `src/expressions/` \u2014 Computed/derived entity properties (`phx.domain.implementCustomExpressions()`)\n- `src/invariants/` \u2014 Business rule constraints (`phx.domain.implementCustomInvariants()`)\n- `src/transformers/` \u2014 Automatic state fixers (`phx.frontend.transformerBuilder`)\n- `src/components/` \u2014 ECS system components (`phx.domain.attachComponent.withEntity()`)\n- `src/elements/` \u2014 Page-level React components (`phx.frontend.createCustomPhoenixLayoutElement()`)\n- `src/handlers/` \u2014 Event & lifecycle handlers\n- `src/webhooks/` \u2014 Server-side webhook handlers (`phx.webhooks.*Builder`)\n- `src/migrations/` \u2014 Schema version migrations (v*.ts)\n- `src/locales/` \u2014 Locale catalogs (authored .po sources; compiled .ts, do not edit)\n- `src/admin/` \u2014 Admin interface (mirrors main src/ structure)\n- `src/_shared/` \u2014 Shared utilities (NOT auto-imported, requires explicit imports)\n- `.phoenix/` \u2014 Auto-generated files (DO NOT EDIT)\n- `public/` \u2014 Static assets (3D models, textures, images, HDRI maps, fonts)\n- `assets/` \u2014 Uploadable resources (PDF templates, email assets)\n\n## Architecture Principles\n- YAML-first: 99% of configuration in spec/*.yaml, custom code is last resort\n- ECS pattern: entities (domain objects) + components (behavior/UI) + systems (SDK runtime)\n- Reactive state: immutable domain state flows through RxJS pipelines\n- Data binding: `$read` (read-only), `$write` (write-only), `$bind` (bidirectional) connect components to domain\n- memoEval: all component implementations must use memoEval for stable object references\n\n## Key Patterns\n- Expressions = computed properties on entities (prefix: `$`), implemented per-entity in src/expressions/\n- Invariants = validation rules returning violations, static or dynamic\n- Transformers = auto-fixers maintaining consistency after state changes\n- Components defined in YAML with `$read`/`$bind` bindings, or custom in src/components/ using attachComponent builder\n- Webhooks = server-side finalization tasks (PDF, email, CSV, image rendering)\n- Filters = contextual component activation via navigationStates, viewStates, modes, selectedEntityIds\n\n## File Conventions\n- Components: PascalCase (.tsx)\n- Utilities: kebab-case (.ts)\n- Expressions: entity-name.ts\n- Migrations: v*.ts (sequential)\n- Specs: kebab-case.yaml\n- Underscore folders (_shared/, _utils/) are NOT auto-imported\n\n## Export Rules\nAll files in src/expressions/, src/invariants/, src/transformers/, src/components/, src/handlers/, src/webhooks/ MUST use default exports. Can be a single item or an array. Named exports are ignored by the SDK auto-import system.\n\n## Webhook Membership\n- User-authored components, admin components, and handlers are frontend-only by default.\n- A handler that registers `createMapPublishedRevisionDataHandler`, `createMapPublishedChunkedDataHandler`, `createDataRowValidatorHandler`, or `createSheetValidatorHandler` is included in the webhook automatically.\n- To include another component or handler in the webhook, put `'use webhook'` as its first statement (leading comments are allowed).\n- A webhook-included file and its runtime local-import closure must not import browser SDK entrypoints (`application`, `admin`, `configurator`, `editor`, `react`, `ui`) or style/font/image assets. Spec parsing reports the unsafe import and inclusion reason as a diagnostic.\n- Keep browser rendering in an unpinned file. Move shared server-safe logic into a separate module when both frontend and webhook code need it.\n\n## Do Not Edit\n- `.phoenix/` directory \u2014 completely regenerated on each build\n- `tsconfig.json`, `eslint.config.js`, `prettier.config.js`, `.prettierignore`, `.linguirc`, `.nvmrc`\n- `src/locales/` .ts files \u2014 compiled from .po files\n\n## Code Review\nUse `/review` command to review code changes before committing.\n\n## SDK Documentation\n\nAlways search SDK docs for relevant examples before implementing Phoenix features.\n\n### Commands\n- `pnpm phoenix docs` \u2014 Full documentation index with descriptions\n- `pnpm phoenix docs -s <term>` \u2014 Search all doc content and metadata (case-insensitive)\n- `pnpm phoenix docs --dir` \u2014 Print the absolute docs directory for grep or ripgrep\n- `pnpm phoenix docs -r <path>` \u2014 Read specific doc (raw text to stdout)\n- `pnpm phoenix docs -c <category>` \u2014 List docs in a category\n- `pnpm phoenix docs -l` \u2014 List all doc paths with titles\n\n### 3D Asset Inspection\n\nRun `pnpm phoenix inspect:assets` to discover all glTF/GLB files in `public/` and get a summary table. Use `--file <path>` for detailed single-file inspection.\n\n**When to use:** before writing YAML/code that references objectName, materialsToOverride, morphTargetInfluences, or object positioning.\n\n**What it shows per node:**\n- Name, type (Mesh/Light/Camera/Empty), children\n- Transform: `pos=`, `rot=`, `scale=` (only non-default values shown)\n- Per-node morph targets: `morphs=Width,Height`\n- Bounding box: `bounds=WxHxD` (width x height x depth in meters)\n- Origin placement: `origin=center`, `bottom-center`, `top-center`, `bottom-corner`, etc. with numerical offset\n\n**Use cases:**\n- Find exact node names for `objectName` in scene entity components\n- Find material names for `materialsToOverride`\n- Find morph target names for `morphTargetInfluences`\n- Check model dimensions (bounds) for positioning, dimension indicators, or invariants\n- Check origin placement to understand how models anchor (center vs bottom-center)\n- Use `--json` for programmatic access to all data\n\n**Flags:** `--objects`, `--materials`, `--morphs`, `--animations`, `--json`\n\n### Screenshot CLI\n\nCapture 3D canvas screenshots from a running dev server via `pnpm phoenix screenshot`.\n\n**Prerequisites:**\n1. `phoenix dev` must be running (starts the WebSocket server on port 3020)\n2. Configurator must be open in a browser (the browser does the actual rendering)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (default: `./screenshot.png`)\n- `--width, -w` \u2014 Width in pixels (default: 1920)\n- `--height` \u2014 Height in pixels (default: 1080)\n- `--format, -f` \u2014 Image format: PNG or JPEG (default: PNG)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Example workflow:**\n1. Start dev server: `pnpm phoenix dev`\n2. Open configurator in browser (or via Playwright MCP)\n3. Take screenshot: `pnpm phoenix screenshot -o ./render.png -w 2560 --height 1440`\n\n**Use cases:** visual regression testing, generating product images, debugging 3D renders\n\n### Inspect: State\n\nGet the current editor runtime state as JSON via `pnpm phoenix inspect:state`.\n\n**Prerequisites:** same as screenshot (dev server running + browser open)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (prints to stdout if omitted)\n- `--sections, -s` \u2014 Comma-separated: entities, navigation, validation (default: all)\n- `--pretty` \u2014 Pretty-print JSON (default: true)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Example:** `pnpm phoenix inspect:state -o ./state.json -s entities,navigation`\n\n**Lifecycle status:** Always included in response. Shows which systems are ready:\n- `domainLoaded` \u2014 domain data loaded\n- `domainContextReady` \u2014 domain context initialized (entities available)\n- `configuratorReady` \u2014 3D configurator initialized\n- `sessionAuthenticated` \u2014 session service active\n- `editorMode` \u2014 editor mode enabled\n\n**Tips:** Use `--sections` to limit payload size. Pipe through `head`/`tail` for partial output (e.g., `pnpm phoenix inspect:state | head -50`).\n\n**Use cases:** AI agent context, debugging entity state, inspecting navigation/validation\n\n### Inspect: Data\n\nGet the current editor context data as JSON via `pnpm phoenix inspect:data`.\n\n**Prerequisites:** same as screenshot (dev server running + browser open)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (prints to stdout if omitted)\n- `--pretty` \u2014 Pretty-print JSON (default: true)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Returns:** publishedData, frontendData, backendData, sessionData, accessData, webComponentProperties\n\n**Example:** `pnpm phoenix inspect:data -o ./data.json`\n\n**Tips:** Pipe through `head`/`tail` for partial output (e.g., `pnpm phoenix inspect:data | head -30`).\n\n**Use cases:** AI agent context, debugging published/session/access data\n\n### Inspect: Scene\n\nGet the current Three.js scene graph as JSON via `pnpm phoenix inspect:scene`.\n\n**Prerequisites:** same as screenshot (dev server running + browser open)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (prints to stdout if omitted)\n- `--pretty` \u2014 Pretty-print JSON (default: true)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Returns:** Recursive scene tree with per-node: name, type, visible, position, rotation, scale, userData (entityId), and for meshes: geometry name, bounding box, material properties (color, metalness, roughness, opacity, textures), morph target influences. Lights include color, intensity, and type-specific properties.\n\n**Example:** `pnpm phoenix inspect:scene -o ./scene.json`\n\n**Tips:** Scene graphs can be large. Pipe through `head`/`tail` for partial output.\n\n**Use cases:** AI agent context, debugging 3D scene layout, inspecting materials and lighting\n\n### Key Docs\n- `docs/phoenix/getting-started.mdx` \u2014 Setup, prerequisites, first project\n- `docs/phoenix/quickstart.mdx` \u2014 End-to-end tutorial building a configurator\n- `docs/phoenix/domain-model.mdx` \u2014 Entities, attributes, relations, specs\n- `docs/phoenix/components.mdx` \u2014 ECS pattern, YAML components, custom components\n- `docs/phoenix/project-structure.mdx` \u2014 Files, folders, conventions\n- `docs/phoenix/best-practices.mdx` \u2014 YAML-first, code patterns, common pitfalls\n- `docs/phoenix/state-management.mdx` \u2014 Reactive state, RxJS pipelines, data flow\n- `docs/phoenix/expression-context.mdx` \u2014 Expression API, context object, helpers\n- `docs/phoenix/webhooks.mdx` \u2014 Server-side finalization workflows\n- `docs/phoenix/finalization.mdx` \u2014 Finalization system, PDF/email/CSV generation\n- `docs/phoenix/migrations.mdx` \u2014 Schema versioning, migration files\n\n### Agent Workflow\n1. Find relevant docs by content: `pnpm phoenix docs -s \"camera\"`\n2. Read matching doc: `pnpm phoenix docs -r docs/3d-scene/cameras/transitions.mdx`\n3. Search within a doc: `pnpm phoenix docs -r <path> | grep \"example\"`\n4. Search titles only as a fallback: `pnpm phoenix docs -l | grep \"camera\"`\n5. Search generated files directly when needed: `grep -rn \"camera\" \"$(pnpm phoenix docs --dir)\"`\n6. Browse a topic area: `pnpm phoenix docs -c \"Layouts\"`\n\n### Playwright MCP Setup (for AI agents)\n\nTo interact with the 3D configurator in a browser, Playwright MCP needs GPU-enabled flags for WebGL rendering. Add to `~/.claude/.mcp.json`:\n\n```json\n{\n \"mcpServers\": {\n \"playwright\": {\n \"command\": \"npx\",\n \"args\": [\n \"@playwright/mcp@latest\",\n \"--headed\",\n \"--launch-options\",\n \"{\\\"args\\\":[\\\"--use-gl=swiftshader\\\",\\\"--enable-webgl\\\",\\\"--ignore-gpu-blocklist\\\"]}\"\n ]\n }\n }\n}\n```\n\nKey flags:\n- `--headed` \u2014 visible browser (required for GPU rendering)\n- `--use-gl=swiftshader` \u2014 software GPU fallback for environments without a physical GPU\n- `--enable-webgl` + `--ignore-gpu-blocklist` \u2014 ensure WebGL is available\n[PHOENIX-SDK-END]\n";
2
+ export declare const cursorRulesFile = "---\ndescription: Phoenix SDK project rules\nglobs:\nalwaysApply: true\n---\n\n[PHOENIX-SDK-START]\n## Phoenix Configurator Project\n\nDeclarative 3D product configurator built with Phoenix SDK. Domain model defined in YAML, custom logic in TypeScript.\n\n## Build Commands\n- `pnpm phoenix build` \u2014 Full production build\n- `pnpm phoenix dev` \u2014 Development mode with hot reload\n- `pnpm phoenix sync` \u2014 Sync generated files without full build\n\n## Dev Logs\n- `pnpm phoenix dev` writes all logs to `.phoenix/phoenix-dev.log`\n- Contains: spec parse errors, build errors, browser runtime errors, file watcher events\n- After making changes, always check the log for errors: `tail -50 .phoenix/phoenix-dev.log` or `grep ERROR .phoenix/phoenix-dev.log`\n- Rotated automatically at 10MB (`.log.1`, `.log.2` are older rotations)\n\n## Project Structure\n- `spec/` \u2014 Domain YAML specs (entities, relations, expressions, invariants, components, application config)\n- `src/expressions/` \u2014 Computed/derived entity properties (`phx.domain.implementCustomExpressions()`)\n- `src/invariants/` \u2014 Business rule constraints (`phx.domain.implementCustomInvariants()`)\n- `src/transformers/` \u2014 Automatic state fixers (`phx.frontend.transformerBuilder`)\n- `src/components/` \u2014 ECS system components (`phx.domain.attachComponent.withEntity()`)\n- `src/elements/` \u2014 Page-level React components (`phx.frontend.createCustomPhoenixLayoutElement()`)\n - `ConfiguratorLayout`: a layout element with this name replaces everything the built-in layout renders for a loaded configuration, in owner and read mode, finalization included. Prefer arranging the spec's layout components; write one for shell-level changes, such as moving the sidebar or adding an area the built-in layout has no place for\n - Mount `LayoutSlots.SharedCanvas` (from `@salsita-ai/sdk/configurator`) in a positioned root covering the page, or the app loader stays on screen; put the UI above it, positioned and after it in the markup. Call `useSceneSafeArea()` (same import) and put `containerRef` on the element covering the whole canvas and `safeAreaRef` on the region the UI leaves free, with `pointerEvents: 'none'`, so the camera frames the scene there\n - Sidebar moved, contents as the spec configures them: mount `LayoutSlots.DesktopSidebar` in a positioned container that sets its size, with `side=\"start\"` on the left; `docs/layouts/sidebar/in-a-custom-layout.mdx` is the whole layout\n - Your own UI: \"Hooks for a Project Layout\" in `docs/phoenix/configurator-interface.mdx` lists the hooks with what each returns (`pnpm phoenix docs -r docs/phoenix/configurator-interface.mdx`), `docs/phoenix/layout-slots.mdx` the built-in pieces you can still mount, and `docs/layouts/custom-layout.mdx` is a worked example\n - Messages: mount `LayoutSlots.Services` for the built-in snackbars, or show violations, side-effect hints and errors yourself with `phx.frontend.useConfiguratorMessages(onMessage)`, not both. Either way mount a snackbar root (`LayoutSlots.DesktopSnackbarsRoot` or `LayoutSlots.MobileSnackbarsRoot`): save and built-in action errors are always snackbars\n - Finalize over the spec's `finalizeAction` components, each naming a handler registered with `phx.frontend.createPhoenixHandler`: run each with `phx.frontend.useFinalizeAction(handler)` in a component of its own wrapped in `PhoenixHandlerBoundary` (from `@salsita-ai/sdk/react`), or mount `FinalizeActions` (from `@salsita-ai/sdk/configurator`) for the built-in buttons. `finalizePage` and `finalizeButton` are legacy\n - Read mode and fullscreen are the layout's job, no hook enforces them: hide what a viewer must not change while `phx.frontend.useAccessService().accessInfo.viewMode` is `true`, and remove panels while `phx.frontend.useIsFullscreenActive()` is set; `phx.frontend.useSetFullscreen()` returns its setter\n- `src/handlers/` \u2014 Event & lifecycle handlers\n- `src/webhooks/` \u2014 Server-side webhook handlers (`phx.webhooks.*Builder`)\n- `src/migrations/` \u2014 Schema version migrations (v*.ts)\n- `src/locales/` \u2014 Locale catalogs (authored .po sources; compiled .ts, do not edit)\n- `src/admin/` \u2014 Admin interface (mirrors main src/ structure)\n- `src/_shared/` \u2014 Shared utilities (NOT auto-imported, requires explicit imports)\n- `.phoenix/` \u2014 Auto-generated files (DO NOT EDIT)\n- `public/` \u2014 Static assets (3D models, textures, images, HDRI maps, fonts)\n- `assets/` \u2014 Uploadable resources (PDF templates, email assets)\n\n## Architecture Principles\n- YAML-first: 99% of configuration in spec/*.yaml, custom code is last resort\n- ECS pattern: entities (domain objects) + components (behavior/UI) + systems (SDK runtime)\n- Reactive state: immutable domain state flows through RxJS pipelines\n- Data binding: `$read` (read-only), `$write` (write-only), `$bind` (bidirectional) connect components to domain\n- memoEval: all component implementations must use memoEval for stable object references\n\n## Key Patterns\n- Expressions = computed properties on entities (prefix: `$`), implemented per-entity in src/expressions/\n- Invariants = validation rules returning violations, static or dynamic\n- Transformers = auto-fixers maintaining consistency after state changes\n- Components defined in YAML with `$read`/`$bind` bindings, or custom in src/components/ using attachComponent builder\n- Webhooks = server-side finalization tasks (PDF, email, CSV, image rendering)\n- Filters = contextual component activation via navigationStates, viewStates, modes, selectedEntityIds\n\n## File Conventions\n- Components: PascalCase (.tsx)\n- Utilities: kebab-case (.ts)\n- Expressions: entity-name.ts\n- Migrations: v*.ts (sequential)\n- Specs: kebab-case.yaml\n- Underscore folders (_shared/, _utils/) are NOT auto-imported\n\n## Export Rules\nAll files in src/expressions/, src/invariants/, src/transformers/, src/components/, src/handlers/, src/webhooks/ MUST use default exports. Can be a single item or an array. Named exports are ignored by the SDK auto-import system.\n\n## Webhook Membership\n- User-authored components, admin components, and handlers are frontend-only by default.\n- A handler that registers `createMapPublishedRevisionDataHandler`, `createMapPublishedChunkedDataHandler`, `createDataRowValidatorHandler`, or `createSheetValidatorHandler` is included in the webhook automatically.\n- To include another component or handler in the webhook, put `'use webhook'` as its first statement (leading comments are allowed).\n- A webhook-included file and its runtime local-import closure must not import browser SDK entrypoints (`application`, `admin`, `configurator`, `editor`, `react`, `ui`) or style/font/image assets. Spec parsing reports the unsafe import and inclusion reason as a diagnostic.\n- Keep browser rendering in an unpinned file. Move shared server-safe logic into a separate module when both frontend and webhook code need it.\n\n## Do Not Edit\n- `.phoenix/` directory \u2014 completely regenerated on each build\n- `tsconfig.json`, `eslint.config.js`, `prettier.config.js`, `.prettierignore`, `.linguirc`, `.nvmrc`\n- `src/locales/` .ts files \u2014 compiled from .po files\n\n## Code Review\nUse `/review` command to review code changes before committing.\n\n## SDK Documentation\n\nAlways search SDK docs for relevant examples before implementing Phoenix features.\n\n### Commands\n- `pnpm phoenix docs` \u2014 Full documentation index with descriptions\n- `pnpm phoenix docs -s <term>` \u2014 Search all doc content and metadata (case-insensitive)\n- `pnpm phoenix docs --dir` \u2014 Print the absolute docs directory for grep or ripgrep\n- `pnpm phoenix docs -r <path>` \u2014 Read specific doc (raw text to stdout)\n- `pnpm phoenix docs -c <category>` \u2014 List docs in a category\n- `pnpm phoenix docs -l` \u2014 List all doc paths with titles\n\n### 3D Asset Inspection\n\nRun `pnpm phoenix inspect:assets` to discover all glTF/GLB files in `public/` and get a summary table. Use `--file <path>` for detailed single-file inspection.\n\n**When to use:** before writing YAML/code that references objectName, materialsToOverride, morphTargetInfluences, or object positioning.\n\n**What it shows per node:**\n- Name, type (Mesh/Light/Camera/Empty), children\n- Transform: `pos=`, `rot=`, `scale=` (only non-default values shown)\n- Per-node morph targets: `morphs=Width,Height`\n- Bounding box: `bounds=WxHxD` (width x height x depth in meters)\n- Origin placement: `origin=center`, `bottom-center`, `top-center`, `bottom-corner`, etc. with numerical offset\n\n**Use cases:**\n- Find exact node names for `objectName` in scene entity components\n- Find material names for `materialsToOverride`\n- Find morph target names for `morphTargetInfluences`\n- Check model dimensions (bounds) for positioning, dimension indicators, or invariants\n- Check origin placement to understand how models anchor (center vs bottom-center)\n- Use `--json` for programmatic access to all data\n\n**Flags:** `--objects`, `--materials`, `--morphs`, `--animations`, `--json`\n\n### Screenshot CLI\n\nCapture 3D canvas screenshots from a running dev server via `pnpm phoenix screenshot`.\n\n**Prerequisites:**\n1. `phoenix dev` must be running (starts the WebSocket server on port 3020)\n2. Configurator must be open in a browser (the browser does the actual rendering)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (default: `./screenshot.png`)\n- `--width, -w` \u2014 Width in pixels (default: 1920)\n- `--height` \u2014 Height in pixels (default: 1080)\n- `--format, -f` \u2014 Image format: PNG or JPEG (default: PNG)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Example workflow:**\n1. Start dev server: `pnpm phoenix dev`\n2. Open configurator in browser (or via Playwright MCP)\n3. Take screenshot: `pnpm phoenix screenshot -o ./render.png -w 2560 --height 1440`\n\n**Use cases:** visual regression testing, generating product images, debugging 3D renders\n\n### Inspect: State\n\nGet the current editor runtime state as JSON via `pnpm phoenix inspect:state`.\n\n**Prerequisites:** same as screenshot (dev server running + browser open)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (prints to stdout if omitted)\n- `--sections, -s` \u2014 Comma-separated: entities, navigation, validation (default: all)\n- `--pretty` \u2014 Pretty-print JSON (default: true)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Example:** `pnpm phoenix inspect:state -o ./state.json -s entities,navigation`\n\n**Lifecycle status:** Always included in response. Shows which systems are ready:\n- `domainLoaded` \u2014 domain data loaded\n- `domainContextReady` \u2014 domain context initialized (entities available)\n- `configuratorReady` \u2014 3D configurator initialized\n- `sessionAuthenticated` \u2014 session service active\n- `editorMode` \u2014 editor mode enabled\n\n**Tips:** Use `--sections` to limit payload size. Pipe through `head`/`tail` for partial output (e.g., `pnpm phoenix inspect:state | head -50`).\n\n**Use cases:** AI agent context, debugging entity state, inspecting navigation/validation\n\n### Inspect: Data\n\nGet the current editor context data as JSON via `pnpm phoenix inspect:data`.\n\n**Prerequisites:** same as screenshot (dev server running + browser open)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (prints to stdout if omitted)\n- `--pretty` \u2014 Pretty-print JSON (default: true)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Returns:** publishedData, frontendData, backendData, sessionData, accessData, webComponentProperties\n\n**Example:** `pnpm phoenix inspect:data -o ./data.json`\n\n**Tips:** Pipe through `head`/`tail` for partial output (e.g., `pnpm phoenix inspect:data | head -30`).\n\n**Use cases:** AI agent context, debugging published/session/access data\n\n### Inspect: Scene\n\nGet the current Three.js scene graph as JSON via `pnpm phoenix inspect:scene`.\n\n**Prerequisites:** same as screenshot (dev server running + browser open)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (prints to stdout if omitted)\n- `--pretty` \u2014 Pretty-print JSON (default: true)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Returns:** Recursive scene tree with per-node: name, type, visible, position, rotation, scale, userData (entityId), and for meshes: geometry name, bounding box, material properties (color, metalness, roughness, opacity, textures), morph target influences. Lights include color, intensity, and type-specific properties.\n\n**Example:** `pnpm phoenix inspect:scene -o ./scene.json`\n\n**Tips:** Scene graphs can be large. Pipe through `head`/`tail` for partial output.\n\n**Use cases:** AI agent context, debugging 3D scene layout, inspecting materials and lighting\n\n### Key Docs\n- `docs/phoenix/getting-started.mdx` \u2014 Setup, prerequisites, first project\n- `docs/phoenix/quickstart.mdx` \u2014 End-to-end tutorial building a configurator\n- `docs/phoenix/domain-model.mdx` \u2014 Entities, attributes, relations, specs\n- `docs/phoenix/components.mdx` \u2014 ECS pattern, YAML components, custom components\n- `docs/phoenix/project-structure.mdx` \u2014 Files, folders, conventions\n- `docs/phoenix/best-practices.mdx` \u2014 YAML-first, code patterns, common pitfalls\n- `docs/phoenix/state-management.mdx` \u2014 Reactive state, RxJS pipelines, data flow\n- `docs/phoenix/expression-context.mdx` \u2014 Expression API, context object, helpers\n- `docs/phoenix/webhooks.mdx` \u2014 Server-side finalization workflows\n- `docs/phoenix/finalization.mdx` \u2014 Finalization system, PDF/email/CSV generation\n- `docs/phoenix/migrations.mdx` \u2014 Schema versioning, migration files\n\n### Agent Workflow\n1. Find relevant docs by content: `pnpm phoenix docs -s \"camera\"`\n2. Read matching doc: `pnpm phoenix docs -r docs/3d-scene/cameras/transitions.mdx`\n3. Search within a doc: `pnpm phoenix docs -r <path> | grep \"example\"`\n4. Search titles only as a fallback: `pnpm phoenix docs -l | grep \"camera\"`\n5. Search generated files directly when needed: `grep -rn \"camera\" \"$(pnpm phoenix docs --dir)\"`\n6. Browse a topic area: `pnpm phoenix docs -c \"Layouts\"`\n\n### Playwright MCP Setup (for AI agents)\n\nTo interact with the 3D configurator in a browser, Playwright MCP needs GPU-enabled flags for WebGL rendering. Add to `~/.claude/.mcp.json`:\n\n```json\n{\n \"mcpServers\": {\n \"playwright\": {\n \"command\": \"npx\",\n \"args\": [\n \"@playwright/mcp@latest\",\n \"--headed\",\n \"--launch-options\",\n \"{\\\"args\\\":[\\\"--use-gl=swiftshader\\\",\\\"--enable-webgl\\\",\\\"--ignore-gpu-blocklist\\\"]}\"\n ]\n }\n }\n}\n```\n\nKey flags:\n- `--headed` \u2014 visible browser (required for GPU rendering)\n- `--use-gl=swiftshader` \u2014 software GPU fallback for environments without a physical GPU\n- `--enable-webgl` + `--ignore-gpu-blocklist` \u2014 ensure WebGL is available\n[PHOENIX-SDK-END]\n";
@@ -1 +1 @@
1
- export declare const sdkContent = "[PHOENIX-SDK-START]\n## Phoenix Configurator Project\n\nDeclarative 3D product configurator built with Phoenix SDK. Domain model defined in YAML, custom logic in TypeScript.\n\n## Build Commands\n- `pnpm phoenix build` \u2014 Full production build\n- `pnpm phoenix dev` \u2014 Development mode with hot reload\n- `pnpm phoenix sync` \u2014 Sync generated files without full build\n\n## Dev Logs\n- `pnpm phoenix dev` writes all logs to `.phoenix/phoenix-dev.log`\n- Contains: spec parse errors, build errors, browser runtime errors, file watcher events\n- After making changes, always check the log for errors: `tail -50 .phoenix/phoenix-dev.log` or `grep ERROR .phoenix/phoenix-dev.log`\n- Rotated automatically at 10MB (`.log.1`, `.log.2` are older rotations)\n\n## Project Structure\n- `spec/` \u2014 Domain YAML specs (entities, relations, expressions, invariants, components, application config)\n- `src/expressions/` \u2014 Computed/derived entity properties (`phx.domain.implementCustomExpressions()`)\n- `src/invariants/` \u2014 Business rule constraints (`phx.domain.implementCustomInvariants()`)\n- `src/transformers/` \u2014 Automatic state fixers (`phx.frontend.transformerBuilder`)\n- `src/components/` \u2014 ECS system components (`phx.domain.attachComponent.withEntity()`)\n- `src/elements/` \u2014 Page-level React components (`phx.frontend.createCustomPhoenixLayoutElement()`)\n- `src/handlers/` \u2014 Event & lifecycle handlers\n- `src/webhooks/` \u2014 Server-side webhook handlers (`phx.webhooks.*Builder`)\n- `src/migrations/` \u2014 Schema version migrations (v*.ts)\n- `src/locales/` \u2014 Locale catalogs (authored .po sources; compiled .ts, do not edit)\n- `src/admin/` \u2014 Admin interface (mirrors main src/ structure)\n- `src/_shared/` \u2014 Shared utilities (NOT auto-imported, requires explicit imports)\n- `.phoenix/` \u2014 Auto-generated files (DO NOT EDIT)\n- `public/` \u2014 Static assets (3D models, textures, images, HDRI maps, fonts)\n- `assets/` \u2014 Uploadable resources (PDF templates, email assets)\n\n## Architecture Principles\n- YAML-first: 99% of configuration in spec/*.yaml, custom code is last resort\n- ECS pattern: entities (domain objects) + components (behavior/UI) + systems (SDK runtime)\n- Reactive state: immutable domain state flows through RxJS pipelines\n- Data binding: `$read` (read-only), `$write` (write-only), `$bind` (bidirectional) connect components to domain\n- memoEval: all component implementations must use memoEval for stable object references\n\n## Key Patterns\n- Expressions = computed properties on entities (prefix: `$`), implemented per-entity in src/expressions/\n- Invariants = validation rules returning violations, static or dynamic\n- Transformers = auto-fixers maintaining consistency after state changes\n- Components defined in YAML with `$read`/`$bind` bindings, or custom in src/components/ using attachComponent builder\n- Webhooks = server-side finalization tasks (PDF, email, CSV, image rendering)\n- Filters = contextual component activation via navigationStates, viewStates, modes, selectedEntityIds\n\n## File Conventions\n- Components: PascalCase (.tsx)\n- Utilities: kebab-case (.ts)\n- Expressions: entity-name.ts\n- Migrations: v*.ts (sequential)\n- Specs: kebab-case.yaml\n- Underscore folders (_shared/, _utils/) are NOT auto-imported\n\n## Export Rules\nAll files in src/expressions/, src/invariants/, src/transformers/, src/components/, src/handlers/, src/webhooks/ MUST use default exports. Can be a single item or an array. Named exports are ignored by the SDK auto-import system.\n\n## Webhook Membership\n- User-authored components, admin components, and handlers are frontend-only by default.\n- A handler that registers `createMapPublishedRevisionDataHandler`, `createMapPublishedChunkedDataHandler`, `createDataRowValidatorHandler`, or `createSheetValidatorHandler` is included in the webhook automatically.\n- To include another component or handler in the webhook, put `'use webhook'` as its first statement (leading comments are allowed).\n- A webhook-included file and its runtime local-import closure must not import browser SDK entrypoints (`application`, `admin`, `configurator`, `editor`, `react`, `ui`) or style/font/image assets. Spec parsing reports the unsafe import and inclusion reason as a diagnostic.\n- Keep browser rendering in an unpinned file. Move shared server-safe logic into a separate module when both frontend and webhook code need it.\n\n## Do Not Edit\n- `.phoenix/` directory \u2014 completely regenerated on each build\n- `tsconfig.json`, `eslint.config.js`, `prettier.config.js`, `.prettierignore`, `.linguirc`, `.nvmrc`\n- `src/locales/` .ts files \u2014 compiled from .po files\n\n## Code Review\nUse `/review` command to review code changes before committing.\n\n## SDK Documentation\n\nAlways search SDK docs for relevant examples before implementing Phoenix features.\n\n### Commands\n- `pnpm phoenix docs` \u2014 Full documentation index with descriptions\n- `pnpm phoenix docs -s <term>` \u2014 Search all doc content and metadata (case-insensitive)\n- `pnpm phoenix docs --dir` \u2014 Print the absolute docs directory for grep or ripgrep\n- `pnpm phoenix docs -r <path>` \u2014 Read specific doc (raw text to stdout)\n- `pnpm phoenix docs -c <category>` \u2014 List docs in a category\n- `pnpm phoenix docs -l` \u2014 List all doc paths with titles\n\n### 3D Asset Inspection\n\nRun `pnpm phoenix inspect:assets` to discover all glTF/GLB files in `public/` and get a summary table. Use `--file <path>` for detailed single-file inspection.\n\n**When to use:** before writing YAML/code that references objectName, materialsToOverride, morphTargetInfluences, or object positioning.\n\n**What it shows per node:**\n- Name, type (Mesh/Light/Camera/Empty), children\n- Transform: `pos=`, `rot=`, `scale=` (only non-default values shown)\n- Per-node morph targets: `morphs=Width,Height`\n- Bounding box: `bounds=WxHxD` (width x height x depth in meters)\n- Origin placement: `origin=center`, `bottom-center`, `top-center`, `bottom-corner`, etc. with numerical offset\n\n**Use cases:**\n- Find exact node names for `objectName` in scene entity components\n- Find material names for `materialsToOverride`\n- Find morph target names for `morphTargetInfluences`\n- Check model dimensions (bounds) for positioning, dimension indicators, or invariants\n- Check origin placement to understand how models anchor (center vs bottom-center)\n- Use `--json` for programmatic access to all data\n\n**Flags:** `--objects`, `--materials`, `--morphs`, `--animations`, `--json`\n\n### Screenshot CLI\n\nCapture 3D canvas screenshots from a running dev server via `pnpm phoenix screenshot`.\n\n**Prerequisites:**\n1. `phoenix dev` must be running (starts the WebSocket server on port 3020)\n2. Configurator must be open in a browser (the browser does the actual rendering)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (default: `./screenshot.png`)\n- `--width, -w` \u2014 Width in pixels (default: 1920)\n- `--height` \u2014 Height in pixels (default: 1080)\n- `--format, -f` \u2014 Image format: PNG or JPEG (default: PNG)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Example workflow:**\n1. Start dev server: `pnpm phoenix dev`\n2. Open configurator in browser (or via Playwright MCP)\n3. Take screenshot: `pnpm phoenix screenshot -o ./render.png -w 2560 --height 1440`\n\n**Use cases:** visual regression testing, generating product images, debugging 3D renders\n\n### Inspect: State\n\nGet the current editor runtime state as JSON via `pnpm phoenix inspect:state`.\n\n**Prerequisites:** same as screenshot (dev server running + browser open)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (prints to stdout if omitted)\n- `--sections, -s` \u2014 Comma-separated: entities, navigation, validation (default: all)\n- `--pretty` \u2014 Pretty-print JSON (default: true)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Example:** `pnpm phoenix inspect:state -o ./state.json -s entities,navigation`\n\n**Lifecycle status:** Always included in response. Shows which systems are ready:\n- `domainLoaded` \u2014 domain data loaded\n- `domainContextReady` \u2014 domain context initialized (entities available)\n- `configuratorReady` \u2014 3D configurator initialized\n- `sessionAuthenticated` \u2014 session service active\n- `editorMode` \u2014 editor mode enabled\n\n**Tips:** Use `--sections` to limit payload size. Pipe through `head`/`tail` for partial output (e.g., `pnpm phoenix inspect:state | head -50`).\n\n**Use cases:** AI agent context, debugging entity state, inspecting navigation/validation\n\n### Inspect: Data\n\nGet the current editor context data as JSON via `pnpm phoenix inspect:data`.\n\n**Prerequisites:** same as screenshot (dev server running + browser open)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (prints to stdout if omitted)\n- `--pretty` \u2014 Pretty-print JSON (default: true)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Returns:** publishedData, frontendData, backendData, sessionData, accessData, webComponentProperties\n\n**Example:** `pnpm phoenix inspect:data -o ./data.json`\n\n**Tips:** Pipe through `head`/`tail` for partial output (e.g., `pnpm phoenix inspect:data | head -30`).\n\n**Use cases:** AI agent context, debugging published/session/access data\n\n### Inspect: Scene\n\nGet the current Three.js scene graph as JSON via `pnpm phoenix inspect:scene`.\n\n**Prerequisites:** same as screenshot (dev server running + browser open)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (prints to stdout if omitted)\n- `--pretty` \u2014 Pretty-print JSON (default: true)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Returns:** Recursive scene tree with per-node: name, type, visible, position, rotation, scale, userData (entityId), and for meshes: geometry name, bounding box, material properties (color, metalness, roughness, opacity, textures), morph target influences. Lights include color, intensity, and type-specific properties.\n\n**Example:** `pnpm phoenix inspect:scene -o ./scene.json`\n\n**Tips:** Scene graphs can be large. Pipe through `head`/`tail` for partial output.\n\n**Use cases:** AI agent context, debugging 3D scene layout, inspecting materials and lighting\n\n### Key Docs\n- `docs/phoenix/getting-started.mdx` \u2014 Setup, prerequisites, first project\n- `docs/phoenix/quickstart.mdx` \u2014 End-to-end tutorial building a configurator\n- `docs/phoenix/domain-model.mdx` \u2014 Entities, attributes, relations, specs\n- `docs/phoenix/components.mdx` \u2014 ECS pattern, YAML components, custom components\n- `docs/phoenix/project-structure.mdx` \u2014 Files, folders, conventions\n- `docs/phoenix/best-practices.mdx` \u2014 YAML-first, code patterns, common pitfalls\n- `docs/phoenix/state-management.mdx` \u2014 Reactive state, RxJS pipelines, data flow\n- `docs/phoenix/expression-context.mdx` \u2014 Expression API, context object, helpers\n- `docs/phoenix/webhooks.mdx` \u2014 Server-side finalization workflows\n- `docs/phoenix/finalization.mdx` \u2014 Finalization system, PDF/email/CSV generation\n- `docs/phoenix/migrations.mdx` \u2014 Schema versioning, migration files\n\n### Agent Workflow\n1. Find relevant docs by content: `pnpm phoenix docs -s \"camera\"`\n2. Read matching doc: `pnpm phoenix docs -r docs/3d-scene/cameras/transitions.mdx`\n3. Search within a doc: `pnpm phoenix docs -r <path> | grep \"example\"`\n4. Search titles only as a fallback: `pnpm phoenix docs -l | grep \"camera\"`\n5. Search generated files directly when needed: `grep -rn \"camera\" \"$(pnpm phoenix docs --dir)\"`\n6. Browse a topic area: `pnpm phoenix docs -c \"Layouts\"`\n\n### Playwright MCP Setup (for AI agents)\n\nTo interact with the 3D configurator in a browser, Playwright MCP needs GPU-enabled flags for WebGL rendering. Add to `~/.claude/.mcp.json`:\n\n```json\n{\n \"mcpServers\": {\n \"playwright\": {\n \"command\": \"npx\",\n \"args\": [\n \"@playwright/mcp@latest\",\n \"--headed\",\n \"--launch-options\",\n \"{\\\"args\\\":[\\\"--use-gl=swiftshader\\\",\\\"--enable-webgl\\\",\\\"--ignore-gpu-blocklist\\\"]}\"\n ]\n }\n }\n}\n```\n\nKey flags:\n- `--headed` \u2014 visible browser (required for GPU rendering)\n- `--use-gl=swiftshader` \u2014 software GPU fallback for environments without a physical GPU\n- `--enable-webgl` + `--ignore-gpu-blocklist` \u2014 ensure WebGL is available\n[PHOENIX-SDK-END]";
1
+ export declare const sdkContent = "[PHOENIX-SDK-START]\n## Phoenix Configurator Project\n\nDeclarative 3D product configurator built with Phoenix SDK. Domain model defined in YAML, custom logic in TypeScript.\n\n## Build Commands\n- `pnpm phoenix build` \u2014 Full production build\n- `pnpm phoenix dev` \u2014 Development mode with hot reload\n- `pnpm phoenix sync` \u2014 Sync generated files without full build\n\n## Dev Logs\n- `pnpm phoenix dev` writes all logs to `.phoenix/phoenix-dev.log`\n- Contains: spec parse errors, build errors, browser runtime errors, file watcher events\n- After making changes, always check the log for errors: `tail -50 .phoenix/phoenix-dev.log` or `grep ERROR .phoenix/phoenix-dev.log`\n- Rotated automatically at 10MB (`.log.1`, `.log.2` are older rotations)\n\n## Project Structure\n- `spec/` \u2014 Domain YAML specs (entities, relations, expressions, invariants, components, application config)\n- `src/expressions/` \u2014 Computed/derived entity properties (`phx.domain.implementCustomExpressions()`)\n- `src/invariants/` \u2014 Business rule constraints (`phx.domain.implementCustomInvariants()`)\n- `src/transformers/` \u2014 Automatic state fixers (`phx.frontend.transformerBuilder`)\n- `src/components/` \u2014 ECS system components (`phx.domain.attachComponent.withEntity()`)\n- `src/elements/` \u2014 Page-level React components (`phx.frontend.createCustomPhoenixLayoutElement()`)\n - `ConfiguratorLayout`: a layout element with this name replaces everything the built-in layout renders for a loaded configuration, in owner and read mode, finalization included. Prefer arranging the spec's layout components; write one for shell-level changes, such as moving the sidebar or adding an area the built-in layout has no place for\n - Mount `LayoutSlots.SharedCanvas` (from `@salsita-ai/sdk/configurator`) in a positioned root covering the page, or the app loader stays on screen; put the UI above it, positioned and after it in the markup. Call `useSceneSafeArea()` (same import) and put `containerRef` on the element covering the whole canvas and `safeAreaRef` on the region the UI leaves free, with `pointerEvents: 'none'`, so the camera frames the scene there\n - Sidebar moved, contents as the spec configures them: mount `LayoutSlots.DesktopSidebar` in a positioned container that sets its size, with `side=\"start\"` on the left; `docs/layouts/sidebar/in-a-custom-layout.mdx` is the whole layout\n - Your own UI: \"Hooks for a Project Layout\" in `docs/phoenix/configurator-interface.mdx` lists the hooks with what each returns (`pnpm phoenix docs -r docs/phoenix/configurator-interface.mdx`), `docs/phoenix/layout-slots.mdx` the built-in pieces you can still mount, and `docs/layouts/custom-layout.mdx` is a worked example\n - Messages: mount `LayoutSlots.Services` for the built-in snackbars, or show violations, side-effect hints and errors yourself with `phx.frontend.useConfiguratorMessages(onMessage)`, not both. Either way mount a snackbar root (`LayoutSlots.DesktopSnackbarsRoot` or `LayoutSlots.MobileSnackbarsRoot`): save and built-in action errors are always snackbars\n - Finalize over the spec's `finalizeAction` components, each naming a handler registered with `phx.frontend.createPhoenixHandler`: run each with `phx.frontend.useFinalizeAction(handler)` in a component of its own wrapped in `PhoenixHandlerBoundary` (from `@salsita-ai/sdk/react`), or mount `FinalizeActions` (from `@salsita-ai/sdk/configurator`) for the built-in buttons. `finalizePage` and `finalizeButton` are legacy\n - Read mode and fullscreen are the layout's job, no hook enforces them: hide what a viewer must not change while `phx.frontend.useAccessService().accessInfo.viewMode` is `true`, and remove panels while `phx.frontend.useIsFullscreenActive()` is set; `phx.frontend.useSetFullscreen()` returns its setter\n- `src/handlers/` \u2014 Event & lifecycle handlers\n- `src/webhooks/` \u2014 Server-side webhook handlers (`phx.webhooks.*Builder`)\n- `src/migrations/` \u2014 Schema version migrations (v*.ts)\n- `src/locales/` \u2014 Locale catalogs (authored .po sources; compiled .ts, do not edit)\n- `src/admin/` \u2014 Admin interface (mirrors main src/ structure)\n- `src/_shared/` \u2014 Shared utilities (NOT auto-imported, requires explicit imports)\n- `.phoenix/` \u2014 Auto-generated files (DO NOT EDIT)\n- `public/` \u2014 Static assets (3D models, textures, images, HDRI maps, fonts)\n- `assets/` \u2014 Uploadable resources (PDF templates, email assets)\n\n## Architecture Principles\n- YAML-first: 99% of configuration in spec/*.yaml, custom code is last resort\n- ECS pattern: entities (domain objects) + components (behavior/UI) + systems (SDK runtime)\n- Reactive state: immutable domain state flows through RxJS pipelines\n- Data binding: `$read` (read-only), `$write` (write-only), `$bind` (bidirectional) connect components to domain\n- memoEval: all component implementations must use memoEval for stable object references\n\n## Key Patterns\n- Expressions = computed properties on entities (prefix: `$`), implemented per-entity in src/expressions/\n- Invariants = validation rules returning violations, static or dynamic\n- Transformers = auto-fixers maintaining consistency after state changes\n- Components defined in YAML with `$read`/`$bind` bindings, or custom in src/components/ using attachComponent builder\n- Webhooks = server-side finalization tasks (PDF, email, CSV, image rendering)\n- Filters = contextual component activation via navigationStates, viewStates, modes, selectedEntityIds\n\n## File Conventions\n- Components: PascalCase (.tsx)\n- Utilities: kebab-case (.ts)\n- Expressions: entity-name.ts\n- Migrations: v*.ts (sequential)\n- Specs: kebab-case.yaml\n- Underscore folders (_shared/, _utils/) are NOT auto-imported\n\n## Export Rules\nAll files in src/expressions/, src/invariants/, src/transformers/, src/components/, src/handlers/, src/webhooks/ MUST use default exports. Can be a single item or an array. Named exports are ignored by the SDK auto-import system.\n\n## Webhook Membership\n- User-authored components, admin components, and handlers are frontend-only by default.\n- A handler that registers `createMapPublishedRevisionDataHandler`, `createMapPublishedChunkedDataHandler`, `createDataRowValidatorHandler`, or `createSheetValidatorHandler` is included in the webhook automatically.\n- To include another component or handler in the webhook, put `'use webhook'` as its first statement (leading comments are allowed).\n- A webhook-included file and its runtime local-import closure must not import browser SDK entrypoints (`application`, `admin`, `configurator`, `editor`, `react`, `ui`) or style/font/image assets. Spec parsing reports the unsafe import and inclusion reason as a diagnostic.\n- Keep browser rendering in an unpinned file. Move shared server-safe logic into a separate module when both frontend and webhook code need it.\n\n## Do Not Edit\n- `.phoenix/` directory \u2014 completely regenerated on each build\n- `tsconfig.json`, `eslint.config.js`, `prettier.config.js`, `.prettierignore`, `.linguirc`, `.nvmrc`\n- `src/locales/` .ts files \u2014 compiled from .po files\n\n## Code Review\nUse `/review` command to review code changes before committing.\n\n## SDK Documentation\n\nAlways search SDK docs for relevant examples before implementing Phoenix features.\n\n### Commands\n- `pnpm phoenix docs` \u2014 Full documentation index with descriptions\n- `pnpm phoenix docs -s <term>` \u2014 Search all doc content and metadata (case-insensitive)\n- `pnpm phoenix docs --dir` \u2014 Print the absolute docs directory for grep or ripgrep\n- `pnpm phoenix docs -r <path>` \u2014 Read specific doc (raw text to stdout)\n- `pnpm phoenix docs -c <category>` \u2014 List docs in a category\n- `pnpm phoenix docs -l` \u2014 List all doc paths with titles\n\n### 3D Asset Inspection\n\nRun `pnpm phoenix inspect:assets` to discover all glTF/GLB files in `public/` and get a summary table. Use `--file <path>` for detailed single-file inspection.\n\n**When to use:** before writing YAML/code that references objectName, materialsToOverride, morphTargetInfluences, or object positioning.\n\n**What it shows per node:**\n- Name, type (Mesh/Light/Camera/Empty), children\n- Transform: `pos=`, `rot=`, `scale=` (only non-default values shown)\n- Per-node morph targets: `morphs=Width,Height`\n- Bounding box: `bounds=WxHxD` (width x height x depth in meters)\n- Origin placement: `origin=center`, `bottom-center`, `top-center`, `bottom-corner`, etc. with numerical offset\n\n**Use cases:**\n- Find exact node names for `objectName` in scene entity components\n- Find material names for `materialsToOverride`\n- Find morph target names for `morphTargetInfluences`\n- Check model dimensions (bounds) for positioning, dimension indicators, or invariants\n- Check origin placement to understand how models anchor (center vs bottom-center)\n- Use `--json` for programmatic access to all data\n\n**Flags:** `--objects`, `--materials`, `--morphs`, `--animations`, `--json`\n\n### Screenshot CLI\n\nCapture 3D canvas screenshots from a running dev server via `pnpm phoenix screenshot`.\n\n**Prerequisites:**\n1. `phoenix dev` must be running (starts the WebSocket server on port 3020)\n2. Configurator must be open in a browser (the browser does the actual rendering)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (default: `./screenshot.png`)\n- `--width, -w` \u2014 Width in pixels (default: 1920)\n- `--height` \u2014 Height in pixels (default: 1080)\n- `--format, -f` \u2014 Image format: PNG or JPEG (default: PNG)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Example workflow:**\n1. Start dev server: `pnpm phoenix dev`\n2. Open configurator in browser (or via Playwright MCP)\n3. Take screenshot: `pnpm phoenix screenshot -o ./render.png -w 2560 --height 1440`\n\n**Use cases:** visual regression testing, generating product images, debugging 3D renders\n\n### Inspect: State\n\nGet the current editor runtime state as JSON via `pnpm phoenix inspect:state`.\n\n**Prerequisites:** same as screenshot (dev server running + browser open)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (prints to stdout if omitted)\n- `--sections, -s` \u2014 Comma-separated: entities, navigation, validation (default: all)\n- `--pretty` \u2014 Pretty-print JSON (default: true)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Example:** `pnpm phoenix inspect:state -o ./state.json -s entities,navigation`\n\n**Lifecycle status:** Always included in response. Shows which systems are ready:\n- `domainLoaded` \u2014 domain data loaded\n- `domainContextReady` \u2014 domain context initialized (entities available)\n- `configuratorReady` \u2014 3D configurator initialized\n- `sessionAuthenticated` \u2014 session service active\n- `editorMode` \u2014 editor mode enabled\n\n**Tips:** Use `--sections` to limit payload size. Pipe through `head`/`tail` for partial output (e.g., `pnpm phoenix inspect:state | head -50`).\n\n**Use cases:** AI agent context, debugging entity state, inspecting navigation/validation\n\n### Inspect: Data\n\nGet the current editor context data as JSON via `pnpm phoenix inspect:data`.\n\n**Prerequisites:** same as screenshot (dev server running + browser open)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (prints to stdout if omitted)\n- `--pretty` \u2014 Pretty-print JSON (default: true)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Returns:** publishedData, frontendData, backendData, sessionData, accessData, webComponentProperties\n\n**Example:** `pnpm phoenix inspect:data -o ./data.json`\n\n**Tips:** Pipe through `head`/`tail` for partial output (e.g., `pnpm phoenix inspect:data | head -30`).\n\n**Use cases:** AI agent context, debugging published/session/access data\n\n### Inspect: Scene\n\nGet the current Three.js scene graph as JSON via `pnpm phoenix inspect:scene`.\n\n**Prerequisites:** same as screenshot (dev server running + browser open)\n\n**Options:**\n- `--output, -o` \u2014 Output file path (prints to stdout if omitted)\n- `--pretty` \u2014 Pretty-print JSON (default: true)\n- `--port` \u2014 WebSocket server port (default: 3020)\n\n**Returns:** Recursive scene tree with per-node: name, type, visible, position, rotation, scale, userData (entityId), and for meshes: geometry name, bounding box, material properties (color, metalness, roughness, opacity, textures), morph target influences. Lights include color, intensity, and type-specific properties.\n\n**Example:** `pnpm phoenix inspect:scene -o ./scene.json`\n\n**Tips:** Scene graphs can be large. Pipe through `head`/`tail` for partial output.\n\n**Use cases:** AI agent context, debugging 3D scene layout, inspecting materials and lighting\n\n### Key Docs\n- `docs/phoenix/getting-started.mdx` \u2014 Setup, prerequisites, first project\n- `docs/phoenix/quickstart.mdx` \u2014 End-to-end tutorial building a configurator\n- `docs/phoenix/domain-model.mdx` \u2014 Entities, attributes, relations, specs\n- `docs/phoenix/components.mdx` \u2014 ECS pattern, YAML components, custom components\n- `docs/phoenix/project-structure.mdx` \u2014 Files, folders, conventions\n- `docs/phoenix/best-practices.mdx` \u2014 YAML-first, code patterns, common pitfalls\n- `docs/phoenix/state-management.mdx` \u2014 Reactive state, RxJS pipelines, data flow\n- `docs/phoenix/expression-context.mdx` \u2014 Expression API, context object, helpers\n- `docs/phoenix/webhooks.mdx` \u2014 Server-side finalization workflows\n- `docs/phoenix/finalization.mdx` \u2014 Finalization system, PDF/email/CSV generation\n- `docs/phoenix/migrations.mdx` \u2014 Schema versioning, migration files\n\n### Agent Workflow\n1. Find relevant docs by content: `pnpm phoenix docs -s \"camera\"`\n2. Read matching doc: `pnpm phoenix docs -r docs/3d-scene/cameras/transitions.mdx`\n3. Search within a doc: `pnpm phoenix docs -r <path> | grep \"example\"`\n4. Search titles only as a fallback: `pnpm phoenix docs -l | grep \"camera\"`\n5. Search generated files directly when needed: `grep -rn \"camera\" \"$(pnpm phoenix docs --dir)\"`\n6. Browse a topic area: `pnpm phoenix docs -c \"Layouts\"`\n\n### Playwright MCP Setup (for AI agents)\n\nTo interact with the 3D configurator in a browser, Playwright MCP needs GPU-enabled flags for WebGL rendering. Add to `~/.claude/.mcp.json`:\n\n```json\n{\n \"mcpServers\": {\n \"playwright\": {\n \"command\": \"npx\",\n \"args\": [\n \"@playwright/mcp@latest\",\n \"--headed\",\n \"--launch-options\",\n \"{\\\"args\\\":[\\\"--use-gl=swiftshader\\\",\\\"--enable-webgl\\\",\\\"--ignore-gpu-blocklist\\\"]}\"\n ]\n }\n }\n}\n```\n\nKey flags:\n- `--headed` \u2014 visible browser (required for GPU rendering)\n- `--use-gl=swiftshader` \u2014 software GPU fallback for environments without a physical GPU\n- `--enable-webgl` + `--ignore-gpu-blocklist` \u2014 ensure WebGL is available\n[PHOENIX-SDK-END]";
@@ -21,6 +21,13 @@ Declarative 3D product configurator built with Phoenix SDK. Domain model defined
21
21
  - \`src/transformers/\` — Automatic state fixers (\`phx.frontend.transformerBuilder\`)
22
22
  - \`src/components/\` — ECS system components (\`phx.domain.attachComponent.withEntity()\`)
23
23
  - \`src/elements/\` — Page-level React components (\`phx.frontend.createCustomPhoenixLayoutElement()\`)
24
+ - \`ConfiguratorLayout\`: a layout element with this name replaces everything the built-in layout renders for a loaded configuration, in owner and read mode, finalization included. Prefer arranging the spec's layout components; write one for shell-level changes, such as moving the sidebar or adding an area the built-in layout has no place for
25
+ - Mount \`LayoutSlots.SharedCanvas\` (from \`@salsita-ai/sdk/configurator\`) in a positioned root covering the page, or the app loader stays on screen; put the UI above it, positioned and after it in the markup. Call \`useSceneSafeArea()\` (same import) and put \`containerRef\` on the element covering the whole canvas and \`safeAreaRef\` on the region the UI leaves free, with \`pointerEvents: 'none'\`, so the camera frames the scene there
26
+ - Sidebar moved, contents as the spec configures them: mount \`LayoutSlots.DesktopSidebar\` in a positioned container that sets its size, with \`side="start"\` on the left; \`docs/layouts/sidebar/in-a-custom-layout.mdx\` is the whole layout
27
+ - Your own UI: "Hooks for a Project Layout" in \`docs/phoenix/configurator-interface.mdx\` lists the hooks with what each returns (\`pnpm phoenix docs -r docs/phoenix/configurator-interface.mdx\`), \`docs/phoenix/layout-slots.mdx\` the built-in pieces you can still mount, and \`docs/layouts/custom-layout.mdx\` is a worked example
28
+ - Messages: mount \`LayoutSlots.Services\` for the built-in snackbars, or show violations, side-effect hints and errors yourself with \`phx.frontend.useConfiguratorMessages(onMessage)\`, not both. Either way mount a snackbar root (\`LayoutSlots.DesktopSnackbarsRoot\` or \`LayoutSlots.MobileSnackbarsRoot\`): save and built-in action errors are always snackbars
29
+ - Finalize over the spec's \`finalizeAction\` components, each naming a handler registered with \`phx.frontend.createPhoenixHandler\`: run each with \`phx.frontend.useFinalizeAction(handler)\` in a component of its own wrapped in \`PhoenixHandlerBoundary\` (from \`@salsita-ai/sdk/react\`), or mount \`FinalizeActions\` (from \`@salsita-ai/sdk/configurator\`) for the built-in buttons. \`finalizePage\` and \`finalizeButton\` are legacy
30
+ - Read mode and fullscreen are the layout's job, no hook enforces them: hide what a viewer must not change while \`phx.frontend.useAccessService().accessInfo.viewMode\` is \`true\`, and remove panels while \`phx.frontend.useIsFullscreenActive()\` is set; \`phx.frontend.useSetFullscreen()\` returns its setter
24
31
  - \`src/handlers/\` — Event & lifecycle handlers
25
32
  - \`src/webhooks/\` — Server-side webhook handlers (\`phx.webhooks.*Builder\`)
26
33
  - \`src/migrations/\` — Schema version migrations (v*.ts)
@@ -2,39 +2,39 @@ import{fileHeader as n}from"./file-header.js";import{generateImports as i,getImp
2
2
  ${n.join(",\n ")}
3
3
  )`,a=(n,i)=>{if(0===n.length)return"{}";let o=n.map((n,o)=>{let t=e(n);return null===t?null:` ${t}: ${i[o]}`}).filter(n=>null!==n);return 0===o.length?"{}":`{
4
4
  ${o.join(",\n")}
5
- }`};export const generateIndexDomainFile=(s={})=>{let{includeMigrations:r=!0,includeI18n:m=!0,expressionsFiles:d=[],invariantsFiles:l=[],adminExpressionsFiles:p=[],adminInvariantsFiles:c=[],migrationsFiles:u=[],adminMigrationsFiles:g=[]}=s,x=(n,i)=>`${i?"adminMigrateToV":"migrateToV"}${e(n)}`,$=u.map(n=>{let i=e(n),o=n.replace(/\.ts$/,""),t=`../src/${o}.js`;return`import { migrateToV${i} } from '${t}'`}).join("\n"),f=g.map(n=>{let i=e(n),o=n.replace(/\.ts$/,""),t=`../src/${o}.js`;return`import { migrateToV${i} as adminMigrateToV${i} } from '${t}'`}).join("\n"),h=u.map(n=>x(n,!1)),A=g.map(n=>x(n,!0)),E=u.length>0,j=g.length>0,y=i(d,"expressions"),D=i(l,"invariants"),V=i(p,"adminExpressions"),v=i(c,"adminInvariants"),M=o(d,"expressions"),B=o(l,"invariants"),I=o(p,"adminExpressions"),F=o(c,"adminInvariants"),w=t(B),b=t(M),R=t(F),T=t(I),C=[y,D,V,v].filter(Boolean).join("\n"),P=[$,f].filter(Boolean).join("\n"),S=d.length>1||l.length>1||p.length>1||c.length>1,k=a(u,h),q=a(g,A),z=E?`
5
+ }`};export const generateIndexDomainFile=(s={})=>{let{includeMigrations:r=!0,includeI18n:m=!0,expressionsFiles:d=[],invariantsFiles:l=[],adminExpressionsFiles:p=[],adminInvariantsFiles:c=[],migrationsFiles:x=[],adminMigrationsFiles:g=[]}=s,u=(n,i)=>`${i?"adminMigrateToV":"migrateToV"}${e(n)}`,$=x.map(n=>{let i=e(n),o=n.replace(/\.ts$/,""),t=`../src/${o}.js`;return`import { migrateToV${i} } from '${t}'`}).join("\n"),A=g.map(n=>{let i=e(n),o=n.replace(/\.ts$/,""),t=`../src/${o}.js`;return`import { migrateToV${i} as adminMigrateToV${i} } from '${t}'`}).join("\n"),h=x.map(n=>u(n,!1)),f=g.map(n=>u(n,!0)),E=x.length>0,j=g.length>0,y=i(d,"expressions"),D=i(l,"invariants"),V=i(p,"adminExpressions"),M=i(c,"adminInvariants"),F=o(d,"expressions"),I=o(l,"invariants"),v=o(p,"adminExpressions"),w=o(c,"adminInvariants"),B=t(I),R=t(F),b=t(w),T=t(v),C=[y,D,V,M].filter(Boolean).join("\n"),P=[$,A].filter(Boolean).join("\n"),S=d.length>1||l.length>1||p.length>1||c.length>1,k=a(x,h),q=a(g,f),z=E?`
6
6
  const migrations = ${k}
7
7
 
8
- const migrate = MigrateFunctionBuilder.fromVersions(modelVersions).to(modelVersion).using(migrations).build()`:"",G=j?`
8
+ const migrate = createMigrateFunction(modelVersions, modelVersion, migrations)`:"",G=j?`
9
9
  const adminMigrations = ${q}
10
10
 
11
- const migrateAdmin = MigrateFunctionBuilder.fromVersions(adminModelVersions).to(adminModelVersion).using(adminMigrations).build()`:"";return`${n}
11
+ const migrateAdmin = createMigrateFunction(adminModelVersions, adminModelVersion, adminMigrations)`:"";return`${n}
12
12
  ${S?"import merge from 'lodash-es/merge.js'\n":""}
13
- import { type AliasedExpressions${r&&(E||j)?", MigrateFunctionBuilder":""} } from '@salsita-ai/sdk/domain'
13
+ import { type AliasedExpressions${r&&(E||j)?", createMigrateFunction":""}, createViolationExpressions } from '@salsita-ai/sdk/domain'
14
14
 
15
15
  ${m?"import { createI18n } from './i18n.js'":""}
16
- import { adminDomainBuilder, adminInvariantBuilder } from './domain/admin-implementation.js'
16
+ import { adminDomainBuilder, commonAdminInvariants } from './domain/admin-implementation.js'
17
17
  import type {
18
18
  Aliases as AdminAliases,
19
19
  AnyDomainEntity as AdminAnyDomainEntity,
20
20
  RootEntity as AdminRootEntity,
21
21
  } from './domain/admin-model/index.js'
22
- ${j?"import { modelVersion as adminModelVersion, modelVersions as adminModelVersions } from './domain/admin-model/index.js'\n":""}
22
+ import { aliases as adminAliases${j?", modelVersion as adminModelVersion, modelVersions as adminModelVersions":""} } from './domain/admin-model/index.js'
23
23
  import type { FrontendData, PublishedData, SessionData } from './domain/application-types.js'
24
24
  import {
25
25
  generatedConfiguratorBuilder,
26
26
  } from './domain/configurator-builder.js'
27
- import { domainBuilder, invariantBuilder } from './domain/implementation.js'
27
+ import { domainBuilder } from './domain/implementation.js'
28
28
  import type { Aliases, AnyDomainEntity, RootEntity } from './domain/model/index.js'
29
- ${E?"import { modelVersion, modelVersions } from './domain/model/index.js'\n":""}
29
+ import { aliases${E?", modelVersion, modelVersions":""} } from './domain/model/index.js'
30
30
  ${C?`
31
31
  ${C}`:""}
32
32
  ${P?`
33
33
  ${P}`:""}${z}${G}
34
34
 
35
- const customInvariants = ${w}
35
+ const customInvariants = ${B}
36
36
 
37
- const violationExpressions = invariantBuilder.withInvariants(customInvariants).buildViolationExpressions()
37
+ const violationExpressions = createViolationExpressions(aliases, [{ origin: '.phoenix/domain.ts', exports: customInvariants }])
38
38
 
39
39
  const customExpressions: AliasedExpressions<
40
40
  AnyDomainEntity,
@@ -43,18 +43,20 @@ const customExpressions: AliasedExpressions<
43
43
  SessionData,
44
44
  FrontendData,
45
45
  Aliases
46
- > = ${b}
46
+ > = ${R}
47
47
 
48
48
  const domainFactory = domainBuilder
49
49
  .withExpressions(violationExpressions)
50
50
  .withExpressions(customExpressions)${r&&E?"\n .withMigrate(migrate)":""}
51
51
  .build()
52
52
 
53
- const customAdminInvariants = ${R}
53
+ const customAdminInvariants = ${b}
54
54
 
55
- const adminViolationExpressions = adminInvariantBuilder
56
- .withInvariants(customAdminInvariants)
57
- .buildViolationExpressions()
55
+ const adminViolationExpressions = createViolationExpressions(
56
+ adminAliases,
57
+ [{ origin: '.phoenix/domain.ts', exports: customAdminInvariants }],
58
+ commonAdminInvariants
59
+ )
58
60
 
59
61
  const customAdminExpressions: AliasedExpressions<
60
62
  AdminAnyDomainEntity,
@@ -1 +1 @@
1
- export declare const envExampleFile = "# This file documents developer-supplied Phoenix variables. Copy the values you\n# need into an untracked .env; never commit .env.\n# phoenix dev, deployment:prepare-dev, and deployment:prepare-local write\n# server-generated values to .env.generated; do not maintain them here.\n\n# ============================================================================\n# Development environment (phoenix dev and deployment:prepare-dev)\n# ============================================================================\n# Create a development environment in PHX Studio and paste its block here.\n#\n# SERVER_URL=http://localhost:3000\n# PROJECT_SLUG=<project-slug>\n# ENVIRONMENT_SLUG=<development-environment-slug>\n# DEVELOPMENT_KEY=<development-key>\n\n# ============================================================================\n# Shared-server access (deployment:prepare-local and CI commands only)\n# ============================================================================\n# Ask DevOps for these values when using the legacy prepare-local or CI flows.\n# SERVER_URL=https://phoenix.example.com\n# ENVIRONMENT_API_KEY=<shared-server-api-key>\n# PROJECT_KEY=<shared-server-project-key>\n# PROJECT_SLUG=<project-slug>\n# ENVIRONMENT_SLUG=<environment-slug>\n# LAMBDA_URL=http://localhost:8080\n\n# ============================================================================\n# Dev Configuration (phoenix dev)\n# ============================================================================\n# Override these to run multiple projects simultaneously.\n# Ports auto-increment if occupied, but setting explicit values avoids surprises.\n#\n# EDITOR_WS_PORT=3020\n# ENABLE_EDITOR=true\n# Enable Lingui extraction and compilation during dev. Phoenix warns when this is disabled.\n# WITH_LINGUI=false\n# DEBUG=false\n# FORCE_REBUILD=false\n# USE_APPLICATION_SPEC=false\n# IS_DEV=true\n#\n# Persistence mode controls how configurator state is stored.\n# Options: 'server' (default), 'local-storage', 'memory'\n# PERSISTENCE_MODE=server\n\n# deployment:prepare-dev and deployment:prepare-local output and behavior overrides:\n# OUT_FILE=.env.generated\n# SKIP_UPLOAD also applies to the deployment phoenix dev prepares at startup.\n# SKIP_UPLOAD=false\n# OVERRIDE_SCHEMA=true\n\n# ============================================================================\n# Project-Specific Environment Variables\n# ============================================================================\n# Additional environment variables can be defined in spec/application.yaml\n# under the 'env.frontend' and 'env.webhook' sections.\n#\n# These are useful for project-specific needs such as:\n# - Third-party API keys (e.g., salesforce)\n# - External service URLs\n# - Feature flags\n# - Custom configuration values\n#\n# Example in spec/application.yaml:\n# env:\n# frontend:\n# SALESFORCE_CLIENT_ID:\n# type: str\n# devDefault: pk_test_xxx\n# webhook:\n# SALESFORCE_CLIENT_SECRET:\n# type: str\n# SALESFORCE_REDIRECT_URI:\n# type: str\n#\n# These will be automatically validated and available in your code via\n# the generated frontend.config.ts and webhooks.config.ts files.\n#\n# IMPORTANT: If you add required custom environment variables (without defaults),\n# remember to also add them to .env.ci with mock values so CI builds can succeed.\n\n# ============================================================================\n# Generated environment\n# ============================================================================\n# Deployment variables (DEPLOYMENT_ID, RESOURCES_URL, and related values)\n# are auto-generated by the PHX server and written to .env.generated when you run\n# phoenix dev, deployment:prepare-dev, or deployment:prepare-local. Development\n# environment settings can be managed via PHX Studio.\n";
1
+ export declare const envExampleFile = "# This file documents developer-supplied Phoenix variables. Copy the values you\n# need into an untracked .env; never commit .env.\n# phoenix dev, deployment:prepare-dev, and deployment:prepare-local write\n# server-generated values to .env.generated; do not maintain them here.\n\n# ============================================================================\n# Development environment (phoenix dev and deployment:prepare-dev)\n# ============================================================================\n# Create a development environment in PHX Studio and paste its block here.\n#\n# SERVER_URL=http://localhost:3000\n# PROJECT_SLUG=<project-slug>\n# ENVIRONMENT_SLUG=<development-environment-slug>\n# DEVELOPMENT_KEY=<development-key>\n\n# ============================================================================\n# Shared-server access (deployment:prepare-local and CI commands only)\n# ============================================================================\n# Ask DevOps for these values when using the legacy prepare-local or CI flows.\n# SERVER_URL=https://phoenix.example.com\n# ENVIRONMENT_API_KEY=<shared-server-api-key>\n# PROJECT_KEY=<shared-server-project-key>\n# PROJECT_SLUG=<project-slug>\n# ENVIRONMENT_SLUG=<environment-slug>\n# LAMBDA_URL=http://localhost:8080\n\n# ============================================================================\n# Dev Configuration (phoenix dev)\n# ============================================================================\n# Override these to run multiple projects simultaneously.\n# Ports auto-increment if occupied, but setting explicit values avoids surprises.\n#\n# EDITOR_WS_PORT=3020\n# ENABLE_EDITOR=true\n# Enable Lingui extraction and compilation during dev. Phoenix warns when this is disabled.\n# WITH_LINGUI=false\n# DEBUG=false\n# FORCE_REBUILD=false\n# USE_APPLICATION_SPEC=false\n# IS_DEV=true\n# A development environment keeps the assistant thread when the assistant setup\n# (manifest, instructions, AI settings) changes. Set to true to lock the thread\n# on a setup change, as every other environment does.\n# ASSISTANT_STRICT_THREADS=false\n#\n# Persistence mode controls how configurator state is stored.\n# Options: 'server' (default), 'local-storage', 'memory'\n# PERSISTENCE_MODE=server\n\n# deployment:prepare-dev and deployment:prepare-local output and behavior overrides:\n# OUT_FILE=.env.generated\n# SKIP_UPLOAD also applies to the deployment phoenix dev prepares at startup.\n# SKIP_UPLOAD=false\n# OVERRIDE_SCHEMA=true\n\n# ============================================================================\n# Project-Specific Environment Variables\n# ============================================================================\n# Additional environment variables can be defined in spec/application.yaml\n# under the 'env.frontend' and 'env.webhook' sections.\n#\n# These are useful for project-specific needs such as:\n# - Third-party API keys (e.g., salesforce)\n# - External service URLs\n# - Feature flags\n# - Custom configuration values\n#\n# Example in spec/application.yaml:\n# env:\n# frontend:\n# SALESFORCE_CLIENT_ID:\n# type: str\n# devDefault: pk_test_xxx\n# webhook:\n# SALESFORCE_CLIENT_SECRET:\n# type: str\n# SALESFORCE_REDIRECT_URI:\n# type: str\n#\n# These will be automatically validated and available in your code via\n# the generated frontend.config.ts and webhooks.config.ts files.\n#\n# IMPORTANT: If you add required custom environment variables (without defaults),\n# remember to also add them to .env.ci with mock values so CI builds can succeed.\n\n# ============================================================================\n# Generated environment\n# ============================================================================\n# Deployment variables (DEPLOYMENT_ID, RESOURCES_URL, and related values)\n# are auto-generated by the PHX server and written to .env.generated when you run\n# phoenix dev, deployment:prepare-dev, or deployment:prepare-local. Development\n# environment settings can be managed via PHX Studio.\n";
@@ -38,6 +38,10 @@ export const envExampleFile=`# This file documents developer-supplied Phoenix va
38
38
  # FORCE_REBUILD=false
39
39
  # USE_APPLICATION_SPEC=false
40
40
  # IS_DEV=true
41
+ # A development environment keeps the assistant thread when the assistant setup
42
+ # (manifest, instructions, AI settings) changes. Set to true to lock the thread
43
+ # on a setup change, as every other environment does.
44
+ # ASSISTANT_STRICT_THREADS=false
41
45
  #
42
46
  # Persistence mode controls how configurator state is stored.
43
47
  # Options: 'server' (default), 'local-storage', 'memory'
@@ -1,38 +1,38 @@
1
- import{fileHeader as e}from"./file-header.js";import{defaultEnvsCode as n,generateDomainTypeImports as i,generateFlattenCall as t,generateImports as o,generateThemeCode as a,generateTransformerMap as m,generateTransformerRegistration as r,generateTransformerTypeImports as s,getImportNames as p}from"./generator-shared.js";export const generateFrontendAdminFile=(d=[],c=[],$=[],l=[],f=[],g=[],h=[],u,A,F)=>{let S=o(d,"components"),C=t(p(d,"components")),j=o(c,"adminComponents"),w=t(p(c,"adminComponents")),P=o(f,"handlers"),I=t(p(f,"handlers")),b=o(g,"elements"),E=p(g,"elements"),k=o(h,"adminElements"),B=t([...E,...p(h,"adminElements")]),O=m($,l),x=r(l),y=a(u,A),H=l.length>0,q=s(H),v=i(H),z=F?`
2
- import { createAdminPagesFromSpec } from '@salsita-ai/sdk/admin'
3
- import { $adminPagesSpec, $dataSpec } from './domain/application-types.js'`:"",D=F?`
1
+ import{fileHeader as e}from"./file-header.js";import{defaultEnvsCode as n,generateImports as i,generateModuleEntries as t,generateModuleList as o,generateThemeCode as a,generateTransformerMap as m,generateTransformerRegistration as r,generateTransformerTypeImports as s}from"./generator-shared.js";export const generateFrontendAdminFile=(p=[],d=[],c=[],l=[],$=[],f=[],g=[],u,h,A)=>{let F=i(p,"components"),S=o(t(p,"components")),w=i(d,"adminComponents"),C=o(t(d,"adminComponents")),j=i($,"handlers"),E=o(t($,"handlers")),P=i(f,"elements"),I=i(g,"adminElements"),b=o([...t(f,"elements"),...t(g,"adminElements")]),x=m(c,l),k=r(l),y=a(u,h),B=s(l.length>0),O=A?`
2
+ import { $adminPagesSpec, $dataSpec } from './domain/application-types.js'`:"",D=A?`
4
3
  const { components: specAdminComponents, pages: specAdminPages } = createAdminPagesFromSpec($adminPagesSpec, $dataSpec)
5
- `:"",G=F?`[...specAdminComponents, ...${w}]`:w;return`// prettier-ignore-file
4
+ `:"",H=A?`[{ origin: '.phoenix/domain/application-types.ts', exports: specAdminComponents }, ...${C}]`:C;return`// prettier-ignore-file
6
5
 
7
6
  ${e}
8
- ${q?`${q}
7
+ ${B?`${B}
9
8
  `:""}
10
9
  import * as interfaceFile from './configurator-interface.js'
11
10
  import * as adminInterfaceFile from './admin-interface.js'
12
11
 
13
12
  import { mountStandaloneAdminApplication } from '@salsita-ai/sdk/application'
13
+ import { ${A?"createAdminPagesFromSpec, ":""}defaultAdminElements } from '@salsita-ai/sdk/admin'
14
14
 
15
- import { configuratorBuilder } from './domain.js'${v?`
16
- ${v}`:""}${z}
17
- ${S?`
18
- ${S}`:""}${j?`
15
+ import { configuratorBuilder } from './domain.js'${O}
16
+ ${F?`
17
+ ${F}`:""}${w?`
18
+ ${w}`:""}${j?`
19
19
  ${j}`:""}${P?`
20
- ${P}`:""}${b?`
21
- ${b}`:""}${k?`
22
- ${k}`:""}${y.imports?`
23
- ${y.imports}`:""}${O}
20
+ ${P}`:""}${I?`
21
+ ${I}`:""}${y.imports?`
22
+ ${y.imports}`:""}${x}
24
23
  ${D}
25
24
  let builder = configuratorBuilder
26
25
  .withInterface(interfaceFile)
27
26
  .withInterface(adminInterfaceFile)
28
- .withComponentOptics(${C})
29
- .withAdminComponentOptics(${G})
30
- .withHandlers(${I})
31
- .withElements(${B})
27
+ .withComponentOptics(${S})
28
+ .withAdminComponentOptics(${H})
29
+ .withHandlers(${E})
30
+ .withDefaultElements(defaultAdminElements)
31
+ .withElements(${b})
32
32
  ${n}${y.code?`
33
33
  ${y.code}`:""}
34
34
 
35
- ${x}
35
+ ${k}
36
36
 
37
37
  const config = builder.buildConfig()
38
38
 
@@ -1,27 +1,28 @@
1
- import{fileHeader as o}from"./file-header.js";import{defaultEnvsCode as e,generateDomainTypeImports as r,generateFlattenCall as t,generateImports as i,generateThemeCode as n,generateTransformerMap as a,generateTransformerRegistration as s,generateTransformerTypeImports as $,getImportNames as c}from"./generator-shared.js";export const generateFrontendConfiguratorFile=(l=[],f=[],m=[],p=[],d=[],g,u,h=!0,C=!1)=>{let j=i(l,"components"),w=t(c(l,"components")),F=i(p,"handlers"),b=t(c(p,"handlers")),x=i(d,"elements"),A=t(c(d,"elements")),B=a(f,m),k=s(m),E=n(g,u),H=m.length>0,I=$(H),O=r(H);return`// prettier-ignore-file
2
- ${o}
3
- ${C?"":"import { mountConfiguratorApplication } from '@salsita-ai/sdk/application'\n"}${I?`${I}
1
+ import{fileHeader as t}from"./file-header.js";import{defaultEnvsCode as e,generateImports as o,generateModuleEntries as r,generateModuleList as i,generateThemeCode as n,generateTransformerMap as a,generateTransformerRegistration as s,generateTransformerTypeImports as l}from"./generator-shared.js";export const generateFrontendConfiguratorFile=(f=[],m=[],c=[],$=[],p=[],u,d,g=!0,h=!1)=>{let C=o(f,"components"),w=i(r(f,"components")),j=o($,"handlers"),E=i(r($,"handlers")),F=o(p,"elements"),b=i(r(p,"elements")),k=a(m,c),x=s(c),A=n(u,d),B=l(c.length>0);return`// prettier-ignore-file
2
+ ${t}
3
+ ${h?"":"import { mountConfiguratorApplication } from '@salsita-ai/sdk/application'\n"}import { defaultConfiguratorElements } from '@salsita-ai/sdk/configurator'
4
+ ${B?`${B}
4
5
  `:""}
5
6
  import * as interfaceFile from './configurator-interface.js'
6
7
 
7
- import { configuratorBuilder } from './domain.js'${O?`
8
- ${O}`:""}
9
- ${j?`
8
+ import { configuratorBuilder } from './domain.js'
9
+ ${C?`
10
+ ${C}`:""}${j?`
10
11
  ${j}`:""}${F?`
11
- ${F}`:""}${x?`
12
- ${x}`:""}${E.imports?`
13
- ${E.imports}`:""}${B}
12
+ ${F}`:""}${A.imports?`
13
+ ${A.imports}`:""}${k}
14
14
 
15
15
  const builder = configuratorBuilder
16
16
  .withInterface(interfaceFile)
17
17
  .withComponentOptics(${w})
18
- .withHandlers(${b})
19
- .withElements(${A})
20
- ${h?e:""}${E.code?`
21
- ${E.code}`:""}${k}
18
+ .withHandlers(${E})
19
+ .withDefaultElements(defaultConfiguratorElements)
20
+ .withElements(${b})
21
+ ${g?e:""}${A.code?`
22
+ ${A.code}`:""}${x}
22
23
 
23
24
 
24
- ${C?"export const config = ":"const config = "}builder.buildConfig()
25
+ ${h?"export const config = ":"const config = "}builder.buildConfig()
25
26
 
26
- ${C?"":"mountConfiguratorApplication(config)"}
27
+ ${h?"":"mountConfiguratorApplication(config)"}
27
28
  `};
@@ -1,45 +1,45 @@
1
- import{fileHeader as e}from"./file-header.js";import{defaultEnvsCode as n,generateDomainTypeImports as i,generateFlattenCall as t,generateImports as o,generateThemeCode as m,generateTransformerMap as a,generateTransformerRegistration as r,generateTransformerTypeImports as d,getImportNames as s}from"./generator-shared.js";export const getFrontendEmbeddedAdminFile=(p,c,$=[],l=[],f=[],g=[],u=[],h=[],A=[],F,C,b)=>{let j=o($,"components"),w=t(s($,"components")),E=o(l,"adminComponents"),S=t(s(l,"adminComponents")),P=o(u,"handlers"),I=t(s(u,"handlers")),k=o(h,"elements"),x=s(h,"elements"),B=o(A,"adminElements"),O=t([...x,...s(A,"adminElements")]),y=a(f,g),H=r(g),q=m(F,C),v=g.length>0,z=d(v),D=i(v),G=b?`
2
- import { createAdminPagesFromSpec } from '@salsita-ai/sdk/admin'
3
- import { $adminPagesSpec, $dataSpec } from './domain/application-types.js'`:"",J=b?`
1
+ import{fileHeader as e}from"./file-header.js";import{defaultEnvsCode as n,generateImports as i,generateModuleEntries as t,generateModuleList as o,generateThemeCode as m,generateTransformerMap as a,generateTransformerRegistration as r,generateTransformerTypeImports as s}from"./generator-shared.js";export const getFrontendEmbeddedAdminFile=(d,p,c=[],l=[],$=[],f=[],g=[],u=[],h=[],A,E,F)=>{let w=i(c,"components"),C=o(t(c,"components")),b=i(l,"adminComponents"),j=o(t(l,"adminComponents")),S=i(g,"handlers"),P=o(t(g,"handlers")),x=i(u,"elements"),I=i(h,"adminElements"),k=o([...t(u,"elements"),...t(h,"adminElements")]),y=a($,f),B=r(f),O=m(A,E),D=s(f.length>0),H=F?`
2
+ import { $adminPagesSpec, $dataSpec } from './domain/application-types.js'`:"",q=F?`
4
3
  const { components: specAdminComponents, pages: specAdminPages } = createAdminPagesFromSpec($adminPagesSpec, $dataSpec)
5
- `:"",K=b?`[...specAdminComponents, ...${S}]`:S;return`// prettier-ignore-file
4
+ `:"",v=F?`[{ origin: '.phoenix/domain/application-types.ts', exports: specAdminComponents }, ...${j}]`:j;return`// prettier-ignore-file
6
5
 
7
6
  ${e}
8
- ${z?`${z}
7
+ ${D?`${D}
9
8
  `:""}
10
9
  import * as interfaceFile from './configurator-interface.js'
11
10
  import * as adminInterfaceFile from './admin-interface.js'
12
11
 
13
12
  import { mountEmbeddedAdminApplication } from '@salsita-ai/sdk/application'
13
+ import { ${F?"createAdminPagesFromSpec, ":""}defaultAdminElements } from '@salsita-ai/sdk/admin'
14
14
 
15
- import { configuratorBuilder } from './domain.js'${D?`
16
- ${D}`:""}${G}
17
- ${j?`
18
- ${j}`:""}${E?`
19
- ${E}`:""}${P?`
20
- ${P}`:""}${k?`
21
- ${k}`:""}${B?`
22
- ${B}`:""}${q.imports?`
23
- ${q.imports}`:""}${y}
24
- ${J}
15
+ import { configuratorBuilder } from './domain.js'${H}
16
+ ${w?`
17
+ ${w}`:""}${b?`
18
+ ${b}`:""}${S?`
19
+ ${S}`:""}${x?`
20
+ ${x}`:""}${I?`
21
+ ${I}`:""}${O.imports?`
22
+ ${O.imports}`:""}${y}
23
+ ${q}
25
24
  let builder = configuratorBuilder
26
25
  .withInterface(interfaceFile)
27
26
  .withInterface(adminInterfaceFile)
28
- .withComponentOptics(${w})
29
- .withAdminComponentOptics(${K})
30
- .withHandlers(${I})
31
- .withElements(${O})
32
- ${n}${q.code?`
33
- ${q.code}`:""}
27
+ .withComponentOptics(${C})
28
+ .withAdminComponentOptics(${v})
29
+ .withHandlers(${P})
30
+ .withDefaultElements(defaultAdminElements)
31
+ .withElements(${k})
32
+ ${n}${O.code?`
33
+ ${O.code}`:""}
34
34
 
35
- ${H}
35
+ ${B}
36
36
 
37
37
  const config = builder.buildConfig()
38
38
 
39
39
  export default {
40
40
  mount: () => {
41
- mountEmbeddedAdminApplication(config, '${p}', '${c}')
42
- return 'salsita-admin-${p}-${c}'
41
+ mountEmbeddedAdminApplication(config, '${d}', '${p}')
42
+ return 'salsita-admin-${d}-${p}'
43
43
  },
44
44
  config,
45
45
  }
@@ -1,35 +1,36 @@
1
- import{fileHeader as e}from"./file-header.js";import{defaultEnvsCode as o,generateDomainTypeImports as t,generateFlattenCall as r,generateImports as i,generateThemeCode as n,generateTransformerMap as a,generateTransformerRegistration as d,generateTransformerTypeImports as m,getImportNames as s}from"./generator-shared.js";export const getFrontendEmbeddedConfiguratorFile=($,l,f=[],c=[],p=[],u=[],g=[],h,b)=>{let C=i(f,"components"),j=r(s(f,"components")),w=i(u,"handlers"),E=r(s(u,"handlers")),F=i(g,"elements"),x=r(s(g,"elements")),A=a(c,p),B=d(p),k=n(h,b),H=p.length>0,I=m(H),O=t(H);return`// prettier-ignore-file
1
+ import{fileHeader as e}from"./file-header.js";import{defaultEnvsCode as t,generateImports as o,generateModuleEntries as r,generateModuleList as i,generateThemeCode as n,generateTransformerMap as a,generateTransformerRegistration as l,generateTransformerTypeImports as s}from"./generator-shared.js";export const getFrontendEmbeddedConfiguratorFile=(f,m,d=[],u=[],c=[],$=[],p=[],g,h)=>{let C=o(d,"components"),E=i(r(d,"components")),b=o($,"handlers"),w=i(r($,"handlers")),j=o(p,"elements"),F=i(r(p,"elements")),k=a(u,c),x=l(c),A=n(g,h),B=s(c.length>0);return`// prettier-ignore-file
2
2
 
3
3
  ${e}
4
- ${I?`${I}
4
+ ${B?`${B}
5
5
  `:""}
6
6
  import * as interfaceFile from './configurator-interface.js'
7
7
 
8
8
  import { mountEmbeddedConfiguratorApplication } from '@salsita-ai/sdk/application'
9
+ import { defaultConfiguratorElements } from '@salsita-ai/sdk/configurator'
9
10
 
10
- import { configuratorBuilder } from './domain.js'${O?`
11
- ${O}`:""}
11
+ import { configuratorBuilder } from './domain.js'
12
12
  ${C?`
13
- ${C}`:""}${w?`
14
- ${w}`:""}${F?`
15
- ${F}`:""}${k.imports?`
16
- ${k.imports}`:""}${A}
13
+ ${C}`:""}${b?`
14
+ ${b}`:""}${j?`
15
+ ${j}`:""}${A.imports?`
16
+ ${A.imports}`:""}${k}
17
17
 
18
18
  const builder = configuratorBuilder
19
19
  .withInterface(interfaceFile)
20
- .withComponentOptics(${j})
21
- .withHandlers(${E})
22
- .withElements(${x})
23
- ${o}${k.code?`
24
- ${k.code}`:""}${B}
20
+ .withComponentOptics(${E})
21
+ .withHandlers(${w})
22
+ .withDefaultElements(defaultConfiguratorElements)
23
+ .withElements(${F})
24
+ ${t}${A.code?`
25
+ ${A.code}`:""}${x}
25
26
 
26
27
 
27
28
  const config = builder.buildConfig()
28
29
 
29
30
  export default {
30
31
  mount: () => {
31
- mountEmbeddedConfiguratorApplication(config, '${$}', '${l}')
32
- return 'salsita-configurator-${$}-${l}'
32
+ mountEmbeddedConfiguratorApplication(config, '${f}', '${m}')
33
+ return 'salsita-configurator-${f}-${m}'
33
34
  },
34
35
  config,
35
36
  }
@@ -4,9 +4,14 @@
4
4
  */
5
5
  export declare const getImportNames: (files: readonly string[], prefix: string) => readonly string[];
6
6
  export declare const generateImports: (files: readonly string[], prefix: string) => string;
7
- export declare const generateFlattenCall: (importNames: readonly string[]) => string;
7
+ /**
8
+ * The entries of a project-module list for one category of files: each default export paired with its project
9
+ * path. The generated file passes them to the configurator builder unchecked; the SDK validates each export
10
+ * against its folder's contract and names the file when it does not match.
11
+ */
12
+ export declare const generateModuleEntries: (files: readonly string[], prefix: string) => readonly string[];
13
+ export declare const generateModuleList: (entries: readonly string[]) => string;
8
14
  export declare const generateTransformerTypeImports: (hasTransformers: boolean) => string;
9
- export declare const generateDomainTypeImports: (hasTransformers: boolean) => string;
10
15
  export declare const generateTransformerMap: (transformersFiles: readonly string[], transformers: Array<{
11
16
  name: string;
12
17
  priority?: number;