@salsita-ai/sdk 0.50.0-develop.aff4f8dd6d → 0.50.0-develop.b47f1774a2

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 (2064) hide show
  1. package/README.md +20 -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/index.d.ts +1 -0
  14. package/dist/application/index.js +1 -1
  15. package/dist/application/mount-application.d.ts +1 -1
  16. package/dist/application/mount-application.js +1 -1
  17. package/dist/application/mount-configurator.d.ts +19 -0
  18. package/dist/application/mount-configurator.js +1 -0
  19. package/dist/application/mounted-application-runtime.d.ts +4 -0
  20. package/dist/application/mounted-application-runtime.js +1 -0
  21. package/dist/application/register-web-component.d.ts +2 -0
  22. package/dist/application/register-web-component.js +1 -0
  23. package/dist/application-spec/caching/content-diff.js +1 -1
  24. package/dist/application-spec/core/application-file.d.ts +0 -2
  25. package/dist/application-spec/core/application-file.js +1 -1
  26. package/dist/application-spec/core/components/component-filter.d.ts +53 -0
  27. package/dist/application-spec/core/components/component-filter.js +1 -0
  28. package/dist/application-spec/core/components/index.d.ts +2 -0
  29. package/dist/application-spec/core/components/index.js +1 -0
  30. package/dist/application-spec/core/components/sdk-code-ref.d.ts +9 -0
  31. package/dist/application-spec/core/components/sdk-code-ref.js +1 -0
  32. package/dist/application-spec/core/enhanced-json-value.d.ts +0 -68
  33. package/dist/application-spec/core/enhanced-json-value.js +1 -1
  34. package/dist/application-spec/core/expressions/index.d.ts +2 -0
  35. package/dist/application-spec/core/expressions/index.js +1 -0
  36. package/dist/application-spec/core/expressions/relation-expression-params.d.ts +11 -0
  37. package/dist/application-spec/core/expressions/sdk-expression-implementation.d.ts +24 -0
  38. package/dist/application-spec/core/expressions/sdk-expression-implementation.js +1 -0
  39. package/dist/application-spec/core/index.d.ts +2 -0
  40. package/dist/application-spec/core/index.js +1 -1
  41. package/dist/application-spec/core/json-value.d.ts +1 -1
  42. package/dist/application-spec/enhanced-json/eval-to-constant.d.ts +14 -0
  43. package/dist/application-spec/enhanced-json/index.d.ts +4 -0
  44. package/dist/application-spec/enhanced-json/index.js +1 -0
  45. package/dist/application-spec/enhanced-json/is-enhanced-json-array.d.ts +2 -0
  46. package/dist/application-spec/enhanced-json/is-enhanced-json-array.js +1 -0
  47. package/dist/application-spec/enhanced-json/resolve-enhanced-json-value.d.ts +18 -0
  48. package/dist/application-spec/enhanced-json/resolve-enhanced-json-value.js +1 -0
  49. package/dist/application-spec/enhanced-json/schema-from-value.d.ts +24 -0
  50. package/dist/application-spec/enhanced-json/schema-from-value.js +1 -0
  51. package/dist/application-spec/enhanced-json/stringify-enhanced-json-value.d.ts +14 -0
  52. package/dist/application-spec/enhanced-json/stringify-enhanced-json-value.js +1 -0
  53. package/dist/application-spec/enhanced-json/validate-enhanced-json-value-caps.d.ts +12 -0
  54. package/dist/application-spec/enhanced-json/validate-enhanced-json-value-caps.js +1 -0
  55. package/dist/application-spec/enhanced-json/validate-no-legacy-code-ref.d.ts +13 -0
  56. package/dist/application-spec/enhanced-json/validate-no-legacy-code-ref.js +1 -0
  57. package/dist/application-spec/errors/diagnostic-codes.d.ts +23 -0
  58. package/dist/application-spec/errors/diagnostic-codes.js +1 -1
  59. package/dist/application-spec/errors/diagnostic-messages.d.ts +27 -1
  60. package/dist/application-spec/errors/diagnostic-messages.js +1 -1
  61. package/dist/application-spec/generate-application/code/common/code-imports.js +1 -1
  62. package/dist/application-spec/generate-application/code/common/env-reader.js +2 -2
  63. package/dist/application-spec/generate-application/code/common/index.d.ts +2 -0
  64. package/dist/application-spec/generate-application/code/common/index.js +1 -1
  65. package/dist/application-spec/generate-application/code/common/project-module-list.d.ts +8 -0
  66. package/dist/application-spec/generate-application/code/common/project-module-list.js +3 -0
  67. package/dist/application-spec/generate-application/code/common/single-quoted-string.d.ts +6 -0
  68. package/dist/application-spec/generate-application/code/common/single-quoted-string.js +1 -0
  69. package/dist/application-spec/generate-application/code/domain-runtime-files.js +1 -1
  70. package/dist/application-spec/generate-application/code/generate-application-code.d.ts +3 -2
  71. package/dist/application-spec/generate-application/code/generate-application-code.js +1 -1
  72. package/dist/application-spec/generate-application/code/project-scaffolding.d.ts +22 -14
  73. package/dist/application-spec/generate-application/code/project-scaffolding.js +2 -2
  74. package/dist/application-spec/generate-application/code/standalone-app-files.d.ts +2 -2
  75. package/dist/application-spec/generate-application/code/standalone-app-files.js +1 -1
  76. package/dist/application-spec/generate-application/code/story-files.js +1 -1
  77. package/dist/application-spec/generate-application/code/templates/admin-config.js +3 -0
  78. package/dist/application-spec/generate-application/code/templates/admin-domain-code.d.ts +1 -2
  79. package/dist/application-spec/generate-application/code/templates/admin-domain-code.js +6 -14
  80. package/dist/application-spec/generate-application/code/templates/admin-frontend-code.d.ts +1 -2
  81. package/dist/application-spec/generate-application/code/templates/admin-frontend-code.js +4 -4
  82. package/dist/application-spec/generate-application/code/templates/application-types.js +6 -6
  83. package/dist/application-spec/generate-application/code/templates/common/doc-comment.d.ts +2 -0
  84. package/dist/application-spec/generate-application/code/templates/common/doc-comment.js +1 -0
  85. package/dist/application-spec/generate-application/code/templates/common/format-property-key.d.ts +7 -0
  86. package/dist/application-spec/generate-application/code/templates/common/format-property-key.js +1 -0
  87. package/dist/application-spec/generate-application/code/templates/common/schema-to-type-string.js +3 -3
  88. package/dist/application-spec/generate-application/code/templates/configurator-config.js +6 -4
  89. package/dist/application-spec/generate-application/code/templates/configurator-domain-code.d.ts +1 -2
  90. package/dist/application-spec/generate-application/code/templates/configurator-domain-code.js +7 -16
  91. package/dist/application-spec/generate-application/code/templates/configurator-frontend-code.d.ts +1 -2
  92. package/dist/application-spec/generate-application/code/templates/configurator-frontend-code.js +7 -9
  93. package/dist/application-spec/generate-application/code/templates/configurator-globals.d.ts +2 -1
  94. package/dist/application-spec/generate-application/code/templates/configurator-globals.js +19 -6
  95. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/domain-factory-types.d.ts +35 -0
  96. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/domain-factory-types.js +5 -0
  97. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/index.d.ts +1 -0
  98. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/index.js +1 -0
  99. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-assistant.d.ts +2 -2
  100. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-assistant.js +1 -1
  101. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-component-optics.d.ts +1 -1
  102. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-component-optics.js +7 -7
  103. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-defaults.d.ts +4 -2
  104. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-defaults.js +1 -1
  105. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-domain-block.js +72 -76
  106. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.d.ts +9 -1
  107. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.js +1 -1
  108. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-phx-globals.js +3 -0
  109. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-presets.js +1 -1
  110. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-relation-expressions.js +1 -1
  111. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-resources.d.ts +6 -8
  112. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-resources.js +21 -21
  113. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-states.d.ts +1 -1
  114. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-states.js +2 -2
  115. package/dist/application-spec/generate-application/code/templates/domain-spec/index.d.ts +3 -2
  116. package/dist/application-spec/generate-application/code/templates/domain-spec/index.js +1 -1
  117. package/dist/application-spec/generate-application/code/templates/domain-spec.js +12 -12
  118. package/dist/application-spec/generate-application/code/templates/domain.js +5 -5
  119. package/dist/application-spec/generate-application/code/templates/eslint-config.d.ts +5 -0
  120. package/dist/application-spec/generate-application/code/templates/eslint-config.js +4 -5
  121. package/dist/application-spec/generate-application/code/templates/frontend-config.js +3 -5
  122. package/dist/application-spec/generate-application/code/templates/gitignore.js +0 -3
  123. package/dist/application-spec/generate-application/code/templates/global-definition/generate-action-types.js +7 -7
  124. package/dist/application-spec/generate-application/code/templates/global-definition/generate-assistant-form-element-types.d.ts +12 -0
  125. package/dist/application-spec/generate-application/code/templates/global-definition/generate-assistant-form-element-types.js +7 -0
  126. package/dist/application-spec/generate-application/code/templates/global-definition/generate-phx-types.d.ts +43 -0
  127. package/dist/application-spec/generate-application/code/templates/global-definition/generate-phx-types.js +33 -0
  128. package/dist/application-spec/generate-application/code/templates/global-definition/index.d.ts +2 -0
  129. package/dist/application-spec/generate-application/code/templates/global-definition/index.js +1 -1
  130. package/dist/application-spec/generate-application/code/templates/globals.js +24 -43
  131. package/dist/application-spec/generate-application/code/templates/index.d.ts +3 -10
  132. package/dist/application-spec/generate-application/code/templates/index.js +1 -1
  133. package/dist/application-spec/generate-application/code/templates/lingui-rc.d.ts +5 -0
  134. package/dist/application-spec/generate-application/code/templates/lingui-rc.js +4 -4
  135. package/dist/application-spec/generate-application/code/templates/prettier-config.d.ts +5 -0
  136. package/dist/application-spec/generate-application/code/templates/prettier-config.js +4 -5
  137. package/dist/application-spec/generate-application/code/templates/root-tsconfig.d.ts +6 -0
  138. package/dist/application-spec/generate-application/code/templates/root-tsconfig.js +2 -0
  139. package/dist/application-spec/generate-application/code/templates/skills/phoenix-cli-skill.js +1 -1
  140. package/dist/application-spec/generate-application/code/templates/skills/phoenix-create-configurator-skill.js +66 -42
  141. package/dist/application-spec/generate-application/code/templates/skills/phoenix-feedback-skill.js +5 -5
  142. package/dist/application-spec/generate-application/code/templates/skills/phoenix-review-skill.js +10 -4
  143. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill.js +1 -1
  144. package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.js +2 -2
  145. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.d.ts +44 -19
  146. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.js +6 -9
  147. package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.d.ts +58 -0
  148. package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.js +1 -0
  149. package/dist/application-spec/generate-application/code/templates/spec-code/index.d.ts +2 -0
  150. package/dist/application-spec/generate-application/code/templates/spec-code/index.js +1 -0
  151. package/dist/application-spec/generate-application/code/templates/spec-code/spec-code.d.ts +18 -0
  152. package/dist/application-spec/generate-application/code/templates/spec-code/spec-code.js +41 -0
  153. package/dist/application-spec/generate-application/code/templates/spec-messages/index.d.ts +1 -0
  154. package/dist/application-spec/generate-application/code/templates/spec-messages/index.js +1 -0
  155. package/dist/application-spec/generate-application/code/templates/spec-messages/spec-messages.d.ts +20 -0
  156. package/dist/application-spec/generate-application/code/templates/spec-messages/spec-messages.js +6 -0
  157. package/dist/application-spec/generate-application/code/templates/story/phx-module.d.ts +8 -2
  158. package/dist/application-spec/generate-application/code/templates/story/phx-module.js +15 -3
  159. package/dist/application-spec/generate-application/code/templates/story/wrapper.d.ts +3 -0
  160. package/dist/application-spec/generate-application/code/templates/story/wrapper.js +2 -1
  161. package/dist/application-spec/generate-application/code/templates/tsconfig.d.ts +5 -0
  162. package/dist/application-spec/generate-application/code/templates/tsconfig.js +1 -1
  163. package/dist/application-spec/generate-application/code/templates/webhook-builders.js +9 -4
  164. package/dist/application-spec/generate-application/code/templates/webhook-index.d.ts +6 -1
  165. package/dist/application-spec/generate-application/code/templates/webhook-index.js +10 -1
  166. package/dist/application-spec/generate-application/code/templates/webhooks-config.js +2 -3
  167. package/dist/application-spec/generate-application/implementations/phx-application-types.d.ts +25 -0
  168. package/dist/application-spec/generate-application/implementations/phx-application-types.js +1 -0
  169. package/dist/application-spec/generate-application/implementations/phx-domain.d.ts +36 -0
  170. package/dist/application-spec/generate-application/implementations/phx-domain.js +1 -0
  171. package/dist/application-spec/generate-application/implementations/phx-model.d.ts +24 -0
  172. package/dist/application-spec/generate-application/implementations/phx-model.js +1 -0
  173. package/dist/application-spec/generate-application/implementations/phx.d.ts +22 -0
  174. package/dist/application-spec/generate-application/implementations/phx.js +1 -0
  175. package/dist/application-spec/generate-application/index.d.ts +4 -0
  176. package/dist/application-spec/generate-application/index.js +1 -1
  177. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.d.ts +6 -4
  178. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.js +1 -1
  179. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.d.ts +12 -4
  180. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.js +1 -1
  181. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-spec-runtime.d.ts +16 -0
  182. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-spec-runtime.js +1 -0
  183. package/dist/application-spec/generate-application/runtime/admin-runtime/states-runtime.d.ts +2 -2
  184. package/dist/application-spec/generate-application/runtime/application-runtime.d.ts +35 -10
  185. package/dist/application-spec/generate-application/runtime/application-runtime.js +1 -1
  186. package/dist/application-spec/generate-application/runtime/application-spec-slice.d.ts +71 -0
  187. package/dist/application-spec/generate-application/runtime/application-spec-slice.js +1 -0
  188. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.d.ts +7 -5
  189. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.js +1 -1
  190. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.d.ts +12 -7
  191. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.js +1 -1
  192. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-spec-runtime.d.ts +16 -0
  193. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-spec-runtime.js +1 -0
  194. package/dist/application-spec/generate-application/runtime/configurator-runtime/states-runtime.d.ts +2 -2
  195. package/dist/application-spec/generate-application/runtime/create-application.d.ts +57 -0
  196. package/dist/application-spec/generate-application/runtime/create-application.js +1 -0
  197. package/dist/application-spec/generate-application/runtime/factory-data/factory-data-runtime.d.ts +43 -0
  198. package/dist/application-spec/generate-application/runtime/factory-data/factory-data-runtime.js +1 -0
  199. package/dist/application-spec/generate-application/runtime/factory-data/index.d.ts +3 -0
  200. package/dist/application-spec/generate-application/runtime/factory-data/index.js +1 -0
  201. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.d.ts +13 -0
  202. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.js +1 -0
  203. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.d.ts +16 -0
  204. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.js +1 -0
  205. package/dist/application-spec/generate-application/runtime/index.d.ts +8 -0
  206. package/dist/application-spec/generate-application/runtime/index.js +1 -0
  207. package/dist/application-spec/generate-application/runtime/migrations/index.d.ts +1 -0
  208. package/dist/application-spec/generate-application/runtime/migrations/index.js +1 -0
  209. package/dist/application-spec/generate-application/runtime/migrations/migration-runtime.d.ts +53 -0
  210. package/dist/application-spec/generate-application/runtime/migrations/migration-runtime.js +1 -0
  211. package/dist/application-spec/generate-application/runtime/sections/assistant-runtime.d.ts +5 -4
  212. package/dist/application-spec/generate-application/runtime/sections/assistant-runtime.js +1 -1
  213. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.d.ts +3 -2
  214. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.js +1 -1
  215. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.d.ts +2 -1
  216. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.js +1 -1
  217. package/dist/application-spec/generate-application/runtime/sections/component-optic.d.ts +5 -1
  218. package/dist/application-spec/generate-application/runtime/sections/component-optic.js +1 -1
  219. package/dist/application-spec/generate-application/runtime/sections/data-runtime.d.ts +4 -4
  220. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.d.ts +15 -6
  221. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.js +1 -1
  222. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.d.ts +9 -5
  223. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.js +1 -1
  224. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.d.ts +3 -1
  225. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.js +1 -1
  226. package/dist/application-spec/generate-application/runtime/sections/theme-runtime.d.ts +2 -2
  227. package/dist/application-spec/generate-application/runtime/sections/transformers-runtime.d.ts +4 -6
  228. package/dist/application-spec/generate-application/runtime/spec-code/index.d.ts +2 -0
  229. package/dist/application-spec/generate-application/runtime/spec-code/index.js +1 -0
  230. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.d.ts +18 -0
  231. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.js +1 -0
  232. package/dist/application-spec/generate-application/runtime/spec-code/spec-code-module.d.ts +17 -0
  233. package/dist/application-spec/generate-application/runtime/spec-runtime.d.ts +21 -0
  234. package/dist/application-spec/generate-application/runtime/spec-runtime.js +1 -0
  235. package/dist/application-spec/generate-application/runtime-spec/decode-runtime-spec.d.ts +9 -0
  236. package/dist/application-spec/generate-application/runtime-spec/decode-runtime-spec.js +1 -0
  237. package/dist/application-spec/generate-application/runtime-spec/encode-runtime-spec.d.ts +8 -0
  238. package/dist/application-spec/generate-application/runtime-spec/encode-runtime-spec.js +1 -0
  239. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.d.ts +28 -0
  240. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.js +1 -0
  241. package/dist/application-spec/generate-application/runtime-spec/index.d.ts +5 -0
  242. package/dist/application-spec/generate-application/runtime-spec/index.js +1 -0
  243. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.d.ts +103 -0
  244. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.js +1 -0
  245. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.d.ts +40 -0
  246. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.js +1 -0
  247. package/dist/application-spec/index.d.ts +1 -0
  248. package/dist/application-spec/index.js +1 -1
  249. package/dist/application-spec/parse-application-files/categorize/categorize-files.d.ts +34 -0
  250. package/dist/application-spec/parse-application-files/categorize/categorize-files.js +1 -1
  251. package/dist/application-spec/parse-application-files/categorize/earlier-generated-editor-configs.d.ts +16 -0
  252. package/dist/application-spec/parse-application-files/categorize/earlier-generated-editor-configs.js +9 -0
  253. package/dist/application-spec/parse-application-files/categorize/earlier-generated-tsconfig.d.ts +9 -0
  254. package/dist/application-spec/parse-application-files/categorize/earlier-generated-tsconfig.js +1 -0
  255. package/dist/application-spec/parse-application-files/categorize/module-analysis.d.ts +1 -1
  256. package/dist/application-spec/parse-application-files/categorize/module-analysis.js +1 -1
  257. package/dist/application-spec/parse-application-files/raw-spec/parse-yaml-spec-file.js +1 -1
  258. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.d.ts +47 -4
  259. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.js +1 -1
  260. package/dist/application-spec/parse-application-files/raw-spec/raw-spec-file.js +1 -1
  261. package/dist/application-spec/parse-application-files/spec/application/admin-spec/admin-spec.js +1 -1
  262. package/dist/application-spec/parse-application-files/spec/application/configurator-spec/configurator-spec.js +1 -1
  263. package/dist/application-spec/parse-application-files/spec/common/index.d.ts +1 -0
  264. package/dist/application-spec/parse-application-files/spec/common/index.js +1 -1
  265. package/dist/application-spec/parse-application-files/spec/common/value-type/format-value-type.d.ts +3 -0
  266. package/dist/application-spec/parse-application-files/spec/common/value-type/format-value-type.js +1 -0
  267. package/dist/application-spec/parse-application-files/spec/common/value-type/index.d.ts +5 -0
  268. package/dist/application-spec/parse-application-files/spec/common/value-type/index.js +1 -0
  269. package/dist/application-spec/parse-application-files/spec/common/value-type/intersect-value-types.d.ts +6 -0
  270. package/dist/application-spec/parse-application-files/spec/common/value-type/intersect-value-types.js +1 -0
  271. package/dist/application-spec/parse-application-files/spec/common/value-type/is-assignable-value-type.d.ts +8 -0
  272. package/dist/application-spec/parse-application-files/spec/common/value-type/is-assignable-value-type.js +1 -0
  273. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type-at.d.ts +10 -0
  274. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type-at.js +1 -0
  275. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type.d.ts +98 -0
  276. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type.js +1 -0
  277. package/dist/application-spec/parse-application-files/spec/components/bindings/component-path.d.ts +13 -0
  278. package/dist/application-spec/parse-application-files/spec/components/bindings/component-path.js +1 -0
  279. package/dist/application-spec/parse-application-files/spec/components/bindings/index.d.ts +2 -0
  280. package/dist/application-spec/parse-application-files/spec/components/bindings/index.js +1 -1
  281. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding-type.d.ts +24 -0
  282. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding-type.js +1 -0
  283. package/dist/application-spec/parse-application-files/spec/components/component-entry.d.ts +1 -9
  284. package/dist/application-spec/parse-application-files/spec/components/component-entry.js +1 -1
  285. package/dist/application-spec/parse-application-files/spec/components/component-filter.d.ts +1 -54
  286. package/dist/application-spec/parse-application-files/spec/components/component-filter.js +1 -1
  287. package/dist/application-spec/parse-application-files/spec/components/component-state-type.d.ts +8 -0
  288. package/dist/application-spec/parse-application-files/spec/components/component-state-type.js +1 -0
  289. package/dist/application-spec/parse-application-files/spec/components/filter-criterion-types.d.ts +13 -0
  290. package/dist/application-spec/parse-application-files/spec/components/filter-criterion-types.js +1 -0
  291. package/dist/application-spec/parse-application-files/spec/components/index.d.ts +1 -1
  292. package/dist/application-spec/parse-application-files/spec/components/index.js +1 -1
  293. package/dist/application-spec/parse-application-files/spec/components/static-entity-id.d.ts +14 -0
  294. package/dist/application-spec/parse-application-files/spec/components/static-entity-id.js +1 -0
  295. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.d.ts +6 -0
  296. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.js +1 -1
  297. package/dist/application-spec/parse-application-files/spec/components/user-components.d.ts +7 -4
  298. package/dist/application-spec/parse-application-files/spec/components/user-components.js +1 -1
  299. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.d.ts +24 -0
  300. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.js +1 -0
  301. package/dist/application-spec/parse-application-files/spec/expressions/expression-read.d.ts +13 -0
  302. package/dist/application-spec/parse-application-files/spec/expressions/expression-value-type.d.ts +9 -0
  303. package/dist/application-spec/parse-application-files/spec/expressions/expression-value-type.js +1 -0
  304. package/dist/application-spec/parse-application-files/spec/expressions/expression.d.ts +1 -28
  305. package/dist/application-spec/parse-application-files/spec/expressions/expression.js +1 -1
  306. package/dist/application-spec/parse-application-files/spec/expressions/expressions.d.ts +7 -3
  307. package/dist/application-spec/parse-application-files/spec/expressions/expressions.js +1 -1
  308. package/dist/application-spec/parse-application-files/spec/expressions/index.d.ts +0 -1
  309. package/dist/application-spec/parse-application-files/spec/expressions/index.js +1 -1
  310. package/dist/application-spec/parse-application-files/spec/expressions/memo-eval-plan.js +1 -1
  311. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.d.ts +3 -1
  312. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.js +1 -1
  313. package/dist/application-spec/parse-application-files/spec/invariants/invariants.d.ts +2 -2
  314. package/dist/application-spec/parse-application-files/spec/invariants/invariants.js +1 -1
  315. package/dist/application-spec/parse-application-files/spec/model/defaults.d.ts +7 -2
  316. package/dist/application-spec/parse-application-files/spec/model/defaults.js +1 -1
  317. package/dist/application-spec/parse-application-files/spec/model/index.d.ts +1 -0
  318. package/dist/application-spec/parse-application-files/spec/model/index.js +1 -1
  319. package/dist/application-spec/parse-application-files/spec/model/model-type-resolution.d.ts +10 -0
  320. package/dist/application-spec/parse-application-files/spec/model/model-type-resolution.js +1 -0
  321. package/dist/application-spec/parse-application-files/spec/relations/reference-field-type.d.ts +25 -0
  322. package/dist/application-spec/parse-application-files/spec/relations/reference-field-type.js +1 -0
  323. package/dist/application-spec/parse-application-files/spec/relations/relation-field-mismatch.d.ts +46 -0
  324. package/dist/application-spec/parse-application-files/spec/relations/relation-field-mismatch.js +1 -0
  325. package/dist/application-spec/parse-application-files/spec/relations/relations.d.ts +4 -3
  326. package/dist/application-spec/parse-application-files/spec/relations/relations.js +1 -1
  327. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-field-type.d.ts +3 -8
  328. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-field-type.js +1 -1
  329. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-form-elements.d.ts +9 -0
  330. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-form-elements.js +1 -0
  331. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.d.ts +13 -44
  332. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.js +1 -1
  333. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-server-settings.d.ts +2 -2
  334. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant.d.ts +5 -21
  335. package/dist/application-spec/parse-application-files/spec/sections/infra.d.ts +2 -0
  336. package/dist/application-spec/parse-application-files/spec/sections/infra.js +1 -1
  337. package/dist/client/authorized-client.d.ts +3 -1
  338. package/dist/client/authorized-client.js +1 -1
  339. package/dist/client/contract.d.ts +34 -0
  340. package/dist/client/contract.js +1 -1
  341. package/dist/client/index.d.ts +2 -2
  342. package/dist/client/index.js +1 -1
  343. package/dist/client/local-authorized-client.d.ts +3 -1
  344. package/dist/client/local-authorized-client.js +1 -1
  345. package/dist/client/memory-authorized-client.d.ts +3 -1
  346. package/dist/client/memory-authorized-client.js +1 -1
  347. package/dist/client/phoenix-api.d.ts +761 -57
  348. package/dist/configurator/ConfiguratorApp.js +1 -1
  349. package/dist/configurator/app-loader-content/DefaultAppLoaderContent.d.ts +2 -0
  350. package/dist/configurator/app-loader-content/DefaultAppLoaderContent.js +5 -0
  351. package/dist/configurator/app-loader-content/index.d.ts +1 -0
  352. package/dist/configurator/app-loader-content/index.js +1 -0
  353. package/dist/configurator/application-runtime/extensions/create-configurator-extensions.js +1 -1
  354. package/dist/configurator/application-runtime/extensions/selectors.d.ts +3 -1
  355. package/dist/configurator/application-runtime/extensions/selectors.js +1 -1
  356. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.d.ts +130 -5
  357. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.js +1 -1
  358. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.d.ts +39 -7
  359. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.js +1 -1
  360. package/dist/configurator/application-runtime/extensions/systems/camera-control-system/camera-control-system.d.ts +1 -1
  361. package/dist/configurator/application-runtime/extensions/systems/canvas-system.d.ts +8 -0
  362. package/dist/configurator/application-runtime/extensions/systems/canvas-system.js +1 -1
  363. package/dist/configurator/application-runtime/extensions/systems/drag-and-drop-system/drag-and-drop-system.d.ts +3 -3
  364. package/dist/configurator/application-runtime/extensions/systems/export-system/export-busy-error.d.ts +8 -0
  365. package/dist/configurator/application-runtime/extensions/systems/export-system/export-busy-error.js +1 -0
  366. package/dist/configurator/application-runtime/extensions/systems/export-system/export-system.d.ts +23 -1
  367. package/dist/configurator/application-runtime/extensions/systems/export-system/export-system.js +1 -1
  368. package/dist/configurator/application-runtime/extensions/systems/graphql-system/close-unclosed-braces.d.ts +12 -0
  369. package/dist/configurator/application-runtime/extensions/systems/graphql-system/close-unclosed-braces.js +1 -0
  370. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.d.ts +14 -1
  371. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.js +1 -1
  372. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.d.ts +64 -7
  373. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.js +1 -1
  374. package/dist/configurator/application-runtime/extensions/systems/graphql-system/inject-assistant-lenses.d.ts +11 -0
  375. package/dist/configurator/application-runtime/extensions/systems/graphql-system/inject-assistant-lenses.js +1 -0
  376. package/dist/configurator/application-runtime/extensions/systems/image-rendering-system/image-rendering-system.d.ts +14 -5
  377. package/dist/configurator/application-runtime/extensions/systems/image-rendering-system/image-rendering-system.js +1 -1
  378. package/dist/configurator/application-runtime/extensions/systems/index.d.ts +2 -2
  379. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.d.ts +2 -2
  380. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.js +1 -1
  381. package/dist/configurator/common/configurator-interface.d.ts +145 -5
  382. package/dist/configurator/common/configurator-interface.js +1 -1
  383. package/dist/configurator/common/index.d.ts +3 -1
  384. package/dist/configurator/common/index.js +1 -1
  385. package/dist/configurator/common/use-reset-camera.d.ts +6 -0
  386. package/dist/configurator/common/use-reset-camera.js +1 -0
  387. package/dist/configurator/configuration-not-found-page/BuiltInConfigurationNotFoundPage.d.ts +5 -0
  388. package/dist/configurator/configuration-not-found-page/BuiltInConfigurationNotFoundPage.js +1 -0
  389. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.d.ts +6 -0
  390. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.js +1 -0
  391. package/dist/configurator/configuration-not-found-page/index.d.ts +2 -0
  392. package/dist/configurator/configuration-not-found-page/index.js +1 -0
  393. package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.d.ts +12 -0
  394. package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.js +1 -0
  395. package/dist/configurator/configurator-context/PresetSelectionProvider.js +1 -1
  396. package/dist/configurator/configurator-context/PreviewContextProvider.js +1 -1
  397. package/dist/configurator/configurator-context/ViewportStateSync.d.ts +2 -2
  398. package/dist/configurator/configurator-context/ViewportStateSync.js +1 -1
  399. package/dist/configurator/configurator-context/configurator-hooks/layout-hooks.d.ts +11 -1
  400. package/dist/configurator/configurator-context/configurator-routing/ConfiguratorRoutingProvider.js +1 -1
  401. package/dist/configurator/configurator-error-page/BuiltInConfiguratorErrorPage.d.ts +6 -0
  402. package/dist/configurator/configurator-error-page/BuiltInConfiguratorErrorPage.js +1 -0
  403. package/dist/configurator/configurator-error-page/ConfiguratorErrorPageElement.d.ts +7 -0
  404. package/dist/configurator/configurator-error-page/ConfiguratorErrorPageElement.js +1 -0
  405. package/dist/configurator/configurator-error-page/index.d.ts +2 -0
  406. package/dist/configurator/configurator-error-page/index.js +1 -0
  407. package/dist/configurator/index.d.ts +10 -0
  408. package/dist/configurator/index.js +1 -1
  409. package/dist/configurator/pages/ConfiguratorErrorPage.d.ts +0 -1
  410. package/dist/configurator/pages/ConfiguratorErrorPage.js +1 -1
  411. package/dist/configurator/pages/ConfiguratorNotFoundPage.js +1 -1
  412. package/dist/configurator/pages/DefaultConfiguratorLayout.d.ts +7 -0
  413. package/dist/configurator/pages/DefaultConfiguratorLayout.js +1 -0
  414. package/dist/configurator/pages/DefaultNotAuthenticatedPage.d.ts +8 -0
  415. package/dist/configurator/pages/DefaultNotAuthenticatedPage.js +1 -0
  416. package/dist/configurator/pages/DefaultPresetUi.d.ts +7 -0
  417. package/dist/configurator/pages/DefaultPresetUi.js +1 -0
  418. package/dist/configurator/pages/LoadedConfiguratorDetailPage.js +1 -1
  419. package/dist/configurator/pages/NewConfiguratorPage.js +1 -1
  420. package/dist/configurator/pages/PresetCreationErrorPage.d.ts +1 -1
  421. package/dist/configurator/pages/PresetCreationErrorPage.js +1 -1
  422. package/dist/configurator/pages/RootPage.js +1 -1
  423. package/dist/configurator/pages/configurator-layout-name.d.ts +2 -0
  424. package/dist/configurator/pages/configurator-layout-name.js +1 -0
  425. package/dist/configurator/pages/default-configurator-elements.d.ts +13 -0
  426. package/dist/configurator/pages/default-configurator-elements.js +1 -0
  427. package/dist/configurator/pages/default-elements/built-in-entity-element.d.ts +10 -0
  428. package/dist/configurator/pages/default-elements/built-in-entity-element.js +1 -0
  429. package/dist/configurator/pages/default-elements/built-in-layout-element.d.ts +10 -0
  430. package/dist/configurator/pages/default-elements/built-in-layout-element.js +1 -0
  431. package/dist/configurator/pages/default-elements/domain-control-elements.d.ts +6 -0
  432. package/dist/configurator/pages/default-elements/domain-control-elements.js +1 -0
  433. package/dist/configurator/pages/default-elements/index.d.ts +5 -0
  434. package/dist/configurator/pages/default-elements/index.js +1 -0
  435. package/dist/configurator/pages/default-elements/recipe-panel-elements.d.ts +3 -0
  436. package/dist/configurator/pages/default-elements/recipe-panel-elements.js +1 -0
  437. package/dist/configurator/pages/default-elements/scene-controls/BuiltInAddEntityFab.d.ts +3 -0
  438. package/dist/configurator/pages/default-elements/scene-controls/BuiltInAddEntityFab.js +1 -0
  439. package/dist/configurator/pages/default-elements/scene-controls/BuiltInDeleteEntityFab.d.ts +3 -0
  440. package/dist/configurator/pages/default-elements/scene-controls/BuiltInDeleteEntityFab.js +1 -0
  441. package/dist/configurator/pages/default-elements/scene-controls/BuiltInNavigationHotspot.d.ts +3 -0
  442. package/dist/configurator/pages/default-elements/scene-controls/BuiltInNavigationHotspot.js +1 -0
  443. package/dist/configurator/pages/default-elements/scene-controls/BuiltInSelectionHotspot.d.ts +3 -0
  444. package/dist/configurator/pages/default-elements/scene-controls/BuiltInSelectionHotspot.js +1 -0
  445. package/dist/configurator/pages/default-elements/scene-controls/BuiltInToolMenuFab.d.ts +3 -0
  446. package/dist/configurator/pages/default-elements/scene-controls/BuiltInToolMenuFab.js +1 -0
  447. package/dist/configurator/pages/default-elements/scene-controls/index.d.ts +6 -0
  448. package/dist/configurator/pages/default-elements/scene-controls/index.js +1 -0
  449. package/dist/configurator/pages/default-elements/scene-controls/scene-control-elements.d.ts +6 -0
  450. package/dist/configurator/pages/default-elements/scene-controls/scene-control-elements.js +1 -0
  451. package/dist/configurator/pages/default-elements/sidebar-footer-elements.d.ts +7 -0
  452. package/dist/configurator/pages/default-elements/sidebar-footer-elements.js +1 -0
  453. package/dist/configurator/pages/default-elements/toolbar-elements.d.ts +7 -0
  454. package/dist/configurator/pages/default-elements/toolbar-elements.js +1 -0
  455. package/dist/configurator/pages/error-boundaries/GeneralErrorBoundary.js +1 -1
  456. package/dist/configurator/pages/error-boundaries/LoadingErrorBoundary.js +1 -1
  457. package/dist/configurator/pages/index.d.ts +1 -0
  458. package/dist/configurator/pages/index.js +1 -1
  459. package/dist/configurator/preset-screen-elements/PresetDeviceNotSupportedElement.d.ts +4 -0
  460. package/dist/configurator/preset-screen-elements/PresetDeviceNotSupportedElement.js +1 -0
  461. package/dist/configurator/preset-screen-elements/PresetPageActionElement.d.ts +4 -0
  462. package/dist/configurator/preset-screen-elements/PresetPageActionElement.js +1 -0
  463. package/dist/configurator/preset-screen-elements/index.d.ts +2 -0
  464. package/dist/configurator/preset-screen-elements/index.js +1 -0
  465. package/dist/configurator/scene/index.d.ts +1 -0
  466. package/dist/configurator/scene/index.js +1 -1
  467. package/dist/configurator/scene/scene-controls/DeleteEntityFab.js +1 -1
  468. package/dist/configurator/scene/scene-controls/SelectionHotspot.js +1 -1
  469. package/dist/configurator/scene/scene-controls/ToolFab.d.ts +4 -0
  470. package/dist/configurator/scene/scene-controls/ToolFab.js +1 -1
  471. package/dist/configurator/scene/scene-controls/hotspot-drag-handle/HotspotDragHandle.d.ts +1 -1
  472. package/dist/configurator/scene/scene-controls/hotspot-drag-handle/HotspotDragSceneHandle.d.ts +1 -1
  473. package/dist/configurator/scene/scene-controls/use-scene-control-tooltip.d.ts +2 -1
  474. package/dist/configurator/scene/scene-entity/dimension-indicators/DimensionIndicator.d.ts +1 -1
  475. package/dist/configurator/scene/scene-entity/dimension-indicators/DimensionIndicatorInternal.d.ts +1 -1
  476. package/dist/configurator/scene/scene-entity/drag-and-drop/shared.d.ts +2 -2
  477. package/dist/configurator/scene/scene-entity/drag-and-drop/use-drag-object.d.ts +1 -1
  478. package/dist/configurator/scene/scene-entity/materials/RemoteReplacedMaterial.js +1 -1
  479. package/dist/configurator/scene/scene-entity/objects/SceneEntityObjectTextDecal.d.ts +1 -1
  480. package/dist/configurator/scene/scene-entity/scene-controls/SceneEntityHtmlHotspots.js +1 -1
  481. package/dist/configurator/toolbar-actions/index.d.ts +3 -0
  482. package/dist/configurator/toolbar-actions/index.js +1 -0
  483. package/dist/configurator/toolbar-actions/use-assistant-panel.d.ts +18 -0
  484. package/dist/configurator/toolbar-actions/use-assistant-panel.js +1 -0
  485. package/dist/configurator/toolbar-actions/use-measurements.d.ts +35 -0
  486. package/dist/configurator/toolbar-actions/use-measurements.js +1 -0
  487. package/dist/configurator/toolbar-actions/use-toolbar-actions.d.ts +100 -0
  488. package/dist/configurator/toolbar-actions/use-toolbar-actions.js +1 -0
  489. package/dist/configurator/toolbar-actions/use-toolbar-help.d.ts +7 -0
  490. package/dist/configurator/toolbar-actions/use-toolbar-help.js +1 -0
  491. package/dist/configurator/ui/assistant/AssistantChips.d.ts +10 -3
  492. package/dist/configurator/ui/assistant/AssistantChips.js +1 -1
  493. package/dist/configurator/ui/assistant/AssistantComposer.d.ts +2 -1
  494. package/dist/configurator/ui/assistant/AssistantComposer.js +1 -1
  495. package/dist/configurator/ui/assistant/AssistantMarkdown.d.ts +7 -2
  496. package/dist/configurator/ui/assistant/AssistantMarkdown.js +1 -1
  497. package/dist/configurator/ui/assistant/AssistantPanel.js +1 -1
  498. package/dist/configurator/ui/assistant/AssistantThread.d.ts +6 -2
  499. package/dist/configurator/ui/assistant/AssistantThread.js +1 -1
  500. package/dist/configurator/ui/assistant/alert/AssistantAlert.d.ts +8 -0
  501. package/dist/configurator/ui/assistant/alert/AssistantAlert.js +1 -0
  502. package/dist/configurator/ui/assistant/alert/index.d.ts +2 -0
  503. package/dist/configurator/ui/assistant/alert/index.js +1 -0
  504. package/dist/configurator/ui/assistant/alert/remark-alerts.d.ts +10 -0
  505. package/dist/configurator/ui/assistant/alert/remark-alerts.js +1 -0
  506. package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.d.ts +13 -0
  507. package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.js +1 -0
  508. package/dist/configurator/ui/assistant/entity-link/entity-link-selection.d.ts +22 -0
  509. package/dist/configurator/ui/assistant/entity-link/entity-link-selection.js +1 -0
  510. package/dist/configurator/ui/assistant/entity-link/entity-link-state.d.ts +27 -0
  511. package/dist/configurator/ui/assistant/entity-link/entity-link-state.js +1 -0
  512. package/dist/configurator/ui/assistant/entity-link/index.d.ts +2 -0
  513. package/dist/configurator/ui/assistant/entity-link/index.js +1 -0
  514. package/dist/configurator/ui/assistant/form/AssistantForm.d.ts +19 -0
  515. package/dist/configurator/ui/assistant/form/AssistantForm.js +1 -0
  516. package/dist/configurator/ui/assistant/form/compose-answer.d.ts +11 -0
  517. package/dist/configurator/ui/assistant/form/compose-answer.js +1 -0
  518. package/dist/configurator/ui/assistant/form/describe-build-errors.d.ts +6 -0
  519. package/dist/configurator/ui/assistant/form/describe-build-errors.js +1 -0
  520. package/dist/configurator/ui/assistant/form/form-model.d.ts +37 -0
  521. package/dist/configurator/ui/assistant/form/form-state.d.ts +4 -0
  522. package/dist/configurator/ui/assistant/form/index.d.ts +4 -0
  523. package/dist/configurator/ui/assistant/form/index.js +1 -0
  524. package/dist/configurator/ui/assistant/form/parse-form-block.d.ts +10 -0
  525. package/dist/configurator/ui/assistant/form/parse-form-block.js +1 -0
  526. package/dist/configurator/ui/assistant/form/read-form-attributes.d.ts +13 -0
  527. package/dist/configurator/ui/assistant/form/read-form-attributes.js +1 -0
  528. package/dist/configurator/ui/assistant/form/registry/built-in-form-elements.d.ts +3 -0
  529. package/dist/configurator/ui/assistant/form/registry/built-in-form-elements.js +1 -0
  530. package/dist/configurator/ui/assistant/form/registry/create-assistant-form-element.d.ts +31 -0
  531. package/dist/configurator/ui/assistant/form/registry/create-assistant-form-element.js +1 -0
  532. package/dist/configurator/ui/assistant/form/registry/form-element-definition.d.ts +16 -0
  533. package/dist/configurator/ui/assistant/form/registry/form-element-definition.js +1 -0
  534. package/dist/configurator/ui/assistant/form/registry/form-registry.d.ts +31 -0
  535. package/dist/configurator/ui/assistant/form/registry/form-registry.js +1 -0
  536. package/dist/configurator/ui/assistant/form/registry/index.d.ts +6 -0
  537. package/dist/configurator/ui/assistant/form/registry/index.js +1 -0
  538. package/dist/configurator/ui/assistant/form/registry/use-form-registry.d.ts +8 -0
  539. package/dist/configurator/ui/assistant/form/registry/use-form-registry.js +1 -0
  540. package/dist/configurator/ui/assistant/form-elements/FormCard.d.ts +9 -0
  541. package/dist/configurator/ui/assistant/form-elements/FormCard.js +1 -0
  542. package/dist/configurator/ui/assistant/form-elements/FormConfirm.d.ts +9 -0
  543. package/dist/configurator/ui/assistant/form-elements/FormConfirm.js +1 -0
  544. package/dist/configurator/ui/assistant/form-elements/FormGroup.d.ts +6 -0
  545. package/dist/configurator/ui/assistant/form-elements/FormGroup.js +1 -0
  546. package/dist/configurator/ui/assistant/form-elements/FormNumber.d.ts +9 -0
  547. package/dist/configurator/ui/assistant/form-elements/FormNumber.js +1 -0
  548. package/dist/configurator/ui/assistant/form-elements/FormOptions.d.ts +6 -0
  549. package/dist/configurator/ui/assistant/form-elements/FormOptions.js +1 -0
  550. package/dist/configurator/ui/assistant/form-elements/FormReply.d.ts +6 -0
  551. package/dist/configurator/ui/assistant/form-elements/FormReply.js +1 -0
  552. package/dist/configurator/ui/assistant/form-elements/FormSwatch.d.ts +10 -0
  553. package/dist/configurator/ui/assistant/form-elements/FormSwatch.js +1 -0
  554. package/dist/configurator/ui/assistant/form-elements/FormText.d.ts +6 -0
  555. package/dist/configurator/ui/assistant/form-elements/FormText.js +1 -0
  556. package/dist/configurator/ui/assistant/form-elements/clamp-form-number.d.ts +10 -0
  557. package/dist/configurator/ui/assistant/form-elements/clamp-form-number.js +1 -0
  558. package/dist/configurator/ui/assistant/form-elements/form-element-props.d.ts +38 -0
  559. package/dist/configurator/ui/assistant/form-elements/index.d.ts +9 -0
  560. package/dist/configurator/ui/assistant/form-elements/index.js +1 -0
  561. package/dist/configurator/ui/assistant/index.d.ts +3 -0
  562. package/dist/configurator/ui/assistant/index.js +1 -1
  563. package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.d.ts +16 -0
  564. package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.js +1 -0
  565. package/dist/configurator/ui/assistant/reference-link/assistant-link-target.d.ts +34 -0
  566. package/dist/configurator/ui/assistant/reference-link/assistant-link-target.js +1 -0
  567. package/dist/configurator/ui/assistant/reference-link/assistant-reference-details.d.ts +25 -0
  568. package/dist/configurator/ui/assistant/reference-link/assistant-reference-details.js +1 -0
  569. package/dist/configurator/ui/assistant/reference-link/index.d.ts +3 -0
  570. package/dist/configurator/ui/assistant/reference-link/index.js +1 -0
  571. package/dist/configurator/ui/assistant/reference-link/reference-styles.d.ts +12 -0
  572. package/dist/configurator/ui/assistant/reference-link/reference-styles.js +1 -0
  573. package/dist/configurator/ui/assistant/reference-link/use-assistant-reference-details.d.ts +8 -0
  574. package/dist/configurator/ui/assistant/reference-link/use-assistant-reference-details.js +1 -0
  575. package/dist/configurator/ui/assistant/resource-image/AssistantImage.d.ts +9 -0
  576. package/dist/configurator/ui/assistant/resource-image/AssistantImage.js +1 -0
  577. package/dist/configurator/ui/assistant/resource-image/index.d.ts +3 -0
  578. package/dist/configurator/ui/assistant/resource-image/index.js +1 -0
  579. package/dist/configurator/ui/assistant/resource-image/resource-path.d.ts +2 -0
  580. package/dist/configurator/ui/assistant/resource-image/resource-path.js +1 -0
  581. package/dist/configurator/ui/assistant/resource-image/use-resource-image-url.d.ts +5 -0
  582. package/dist/configurator/ui/assistant/resource-image/use-resource-image-url.js +1 -0
  583. package/dist/configurator/ui/assistant/screenshots/ScreenshotThumbnails.d.ts +9 -0
  584. package/dist/configurator/ui/assistant/screenshots/ScreenshotThumbnails.js +1 -0
  585. package/dist/configurator/ui/assistant/screenshots/index.d.ts +2 -0
  586. package/dist/configurator/ui/assistant/screenshots/index.js +1 -0
  587. package/dist/configurator/ui/assistant/screenshots/tool-screenshots.d.ts +14 -0
  588. package/dist/configurator/ui/assistant/screenshots/tool-screenshots.js +1 -0
  589. package/dist/configurator/ui/assistant/streamed-markdown.d.ts +4 -2
  590. package/dist/configurator/ui/assistant/streamed-markdown.js +2 -2
  591. package/dist/configurator/ui/assistant/thread-items.d.ts +21 -3
  592. package/dist/configurator/ui/assistant/thread-items.js +1 -1
  593. package/dist/configurator/ui/assistant/tool-chip.js +1 -1
  594. package/dist/configurator/ui/assistant/use-follow-stream.js +1 -1
  595. package/dist/configurator/ui/configurator-layout/sidebar-keys/index.d.ts +1 -0
  596. package/dist/configurator/ui/configurator-layout/sidebar-keys/index.js +1 -0
  597. package/dist/configurator/ui/configurator-layout/sidebar-keys/sidebar-keys.d.ts +11 -0
  598. package/dist/configurator/ui/configurator-layout/sidebar-keys/sidebar-keys.js +1 -0
  599. package/dist/configurator/ui/configurator-layout/slots/canvas/LayoutCanvas.js +1 -1
  600. package/dist/configurator/ui/configurator-layout/slots/canvas/SharedCanvas.js +1 -1
  601. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/DesktopSidebar.d.ts +101 -0
  602. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/DesktopSidebar.js +16 -0
  603. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/index.d.ts +1 -0
  604. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/index.js +1 -0
  605. package/dist/configurator/ui/configurator-layout/slots/mobile-tabs/use-mobile-tabs.d.ts +1 -1
  606. package/dist/configurator/ui/configurator-layout/slots/mobile-tabs/use-mobile-tabs.js +1 -1
  607. package/dist/configurator/ui/configurator-layout/slots/services/InvariantViolations.d.ts +4 -4
  608. package/dist/configurator/ui/configurator-layout/slots/services/InvariantViolations.js +1 -1
  609. package/dist/configurator/ui/configurator-layout/slots/services/Services.js +1 -1
  610. package/dist/configurator/ui/configurator-layout/slots/services/SideEffects.d.ts +3 -6
  611. package/dist/configurator/ui/configurator-layout/slots/services/SideEffects.js +1 -1
  612. package/dist/configurator/ui/configurator-layout/slots/sidebar-tabs/use-sidebar-tabs.d.ts +1 -1
  613. package/dist/configurator/ui/configurator-layout/slots/sidebar-tabs/use-sidebar-tabs.js +1 -1
  614. package/dist/configurator/ui/configurator-layout/slots/slots.d.ts +1 -0
  615. package/dist/configurator/ui/configurator-layout/slots/slots.js +1 -1
  616. package/dist/configurator/ui/configurator-layout/universal/DesktopLayout.d.ts +0 -74
  617. package/dist/configurator/ui/configurator-layout/universal/DesktopLayout.js +5 -20
  618. package/dist/configurator/ui/configurator-layout/universal/DesktopPreview.js +1 -1
  619. package/dist/configurator/ui/configurator-layout/universal/ExportingOverlay.d.ts +5 -0
  620. package/dist/configurator/ui/configurator-layout/universal/ExportingOverlay.js +1 -0
  621. package/dist/configurator/ui/configurator-layout/universal/Layout.js +1 -1
  622. package/dist/configurator/ui/configurator-layout/universal/MobileLayout.js +4 -4
  623. package/dist/configurator/ui/configurator-layout/universal/MobilePreview.js +1 -1
  624. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.d.ts +47 -0
  625. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.js +1 -0
  626. package/dist/configurator/ui/configurator-layout/universal/use-scene-safe-area.d.ts +11 -26
  627. package/dist/configurator/ui/configurator-layout/universal/use-scene-safe-area.js +1 -1
  628. package/dist/configurator/ui/index.d.ts +1 -0
  629. package/dist/configurator/ui/index.js +1 -1
  630. package/dist/configurator/ui/legacy/layout/common/CommonFinalizeButton.js +1 -1
  631. package/dist/configurator/ui/legacy/layout/common/CommonSummaryButton.js +1 -1
  632. package/dist/configurator/ui/legacy/layout/common/CommonTopNavigation.js +1 -1
  633. package/dist/configurator/ui/legacy/layout/common/ReactiveInterfaceLayout.js +1 -1
  634. package/dist/configurator/ui/legacy/layout/common/ResponsiveFinalizeButton.js +1 -1
  635. package/dist/configurator/ui/legacy/layout/common/SummaryReadLayout.js +1 -1
  636. package/dist/configurator/ui/legacy/layout/simple/SimpleOwnerLayout.js +1 -1
  637. package/dist/configurator/ui/legacy/layout/simple/SimpleTopNavigation.js +1 -1
  638. package/dist/configurator/ui/legacy/layout/steps/StepsNavigation.d.ts +2 -2
  639. package/dist/configurator/ui/legacy/layout/steps/StepsNavigation.js +1 -1
  640. package/dist/configurator/ui/legacy/layout/steps/StepsOwnerLayout.js +1 -1
  641. package/dist/configurator/ui/legacy/layout/steps/StepsSidebarFooter.js +1 -1
  642. package/dist/configurator/ui/legacy/layout/tabs/TabsOwnerLayout.js +1 -1
  643. package/dist/configurator/ui/legacy/toolbar/common/DimensionUnitSelector.js +1 -1
  644. package/dist/configurator/ui/legacy/toolbar/common/MeasurementsIndicatorsSwitch.js +1 -1
  645. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/FullscreenToolbarAction.js +1 -1
  646. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/HelpToolbarAction.js +1 -1
  647. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/MeasurementsToolbarAction.js +1 -1
  648. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/UndoRedoToolbarGroup.js +1 -1
  649. package/dist/configurator/ui/phoenix-layout-elements/AppLoader.d.ts +0 -7
  650. package/dist/configurator/ui/phoenix-layout-elements/AppLoader.js +2 -6
  651. package/dist/configurator/ui/phoenix-layout-elements/AssistantToolbarButton.js +1 -1
  652. package/dist/configurator/ui/phoenix-layout-elements/EnterFullscreenToolbarButton.js +1 -1
  653. package/dist/configurator/ui/phoenix-layout-elements/ExitFullscreenToolbarButton.js +1 -1
  654. package/dist/configurator/ui/phoenix-layout-elements/HelpToolbarButton.js +1 -1
  655. package/dist/configurator/ui/phoenix-layout-elements/LanguageMenuAction.js +1 -1
  656. package/dist/configurator/ui/phoenix-layout-elements/LanguageToolbarButton.js +1 -1
  657. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomOwnerUi.d.ts +1 -0
  658. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomOwnerUi.js +1 -1
  659. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomReadUi.d.ts +1 -0
  660. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomReadUi.js +1 -1
  661. package/dist/configurator/ui/phoenix-layout-elements/MeasurementsMenuAction.js +1 -1
  662. package/dist/configurator/ui/phoenix-layout-elements/MeasurementsToolbarButton.js +1 -1
  663. package/dist/configurator/ui/phoenix-layout-elements/RedoToolbarButton.js +1 -1
  664. package/dist/configurator/ui/phoenix-layout-elements/ShareToolbarButton.js +1 -1
  665. package/dist/configurator/ui/phoenix-layout-elements/UndoToolbarButton.js +1 -1
  666. package/dist/configurator/ui/phoenix-layout-elements/header/common/back-button/use-go-back-action.js +1 -1
  667. package/dist/configurator/ui/phoenix-layout-elements/header/common/horizontal-tabs/DesktopHorizontalTabs.js +1 -1
  668. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/DesktopNavigationSteps.d.ts +1 -1
  669. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/DesktopNavigationSteps.js +1 -1
  670. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.d.ts +2 -8
  671. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.js +1 -1
  672. package/dist/configurator/ui/phoenix-layout-elements/index.d.ts +8 -1
  673. package/dist/configurator/ui/phoenix-layout-elements/index.js +1 -1
  674. package/dist/configurator/ui/phoenix-layout-elements/measurements/DimensionUnitSelector.js +1 -1
  675. package/dist/configurator/ui/phoenix-layout-elements/measurements/MeasurementsIndicatorsSwitch.js +1 -1
  676. package/dist/configurator/ui/phoenix-layout-elements/share/ShareModal.js +1 -1
  677. package/dist/configurator/ui/phoenix-layout-elements/share/use-share.d.ts +7 -8
  678. package/dist/configurator/ui/phoenix-layout-elements/share/use-share.js +1 -1
  679. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/basic/BasicFinalizeButton.js +1 -1
  680. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/CustomFinalizeButton.js +1 -1
  681. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/EnterSummaryButton.js +1 -1
  682. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/FinalizeActions.js +1 -1
  683. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/NextStepButton.js +1 -1
  684. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/PreviousStepButton.js +1 -1
  685. package/dist/configurator/ui/preset-layout/CategoryPresetUi.js +1 -1
  686. package/dist/configurator/ui/preset-layout/PresetUi.d.ts +4 -2
  687. package/dist/configurator/ui/preset-layout/PresetUi.js +1 -1
  688. package/dist/configurator/ui/preset-layout/index.d.ts +6 -1
  689. package/dist/configurator/ui/preset-layout/index.js +1 -1
  690. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.d.ts +10 -0
  691. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.js +1 -0
  692. package/dist/configurator/ui/save-message-snackbars/index.d.ts +1 -0
  693. package/dist/configurator/ui/save-message-snackbars/index.js +1 -0
  694. package/dist/docs/complex-use-cases/filtered-controls-with-fix-dialog.mdx +100 -117
  695. package/dist/docs/complex-use-cases/focus-mode.mdx +2 -0
  696. package/dist/docs/complex-use-cases/navigation-reset-selection.mdx +18 -12
  697. package/dist/docs/complex-use-cases/sketching.mdx +0 -38
  698. package/dist/docs/controls/select-attribute/cardselect.mdx +9 -13
  699. package/dist/docs/controls/select-child-entity/cardselect.mdx +1 -0
  700. package/dist/docs/dimensions/3d-scene-integration/dimension-indicators.mdx +2 -2
  701. package/dist/docs/dimensions/3d-scene-integration/editable-angle-indicator.mdx +1 -1
  702. package/dist/docs/dimensions/3d-scene-integration/editable-distance-dimension-indicator.mdx +1 -1
  703. package/dist/docs/dimensions/3d-scene-integration/list-selector-dimension-indicator.mdx +1 -1
  704. package/dist/docs/drag-and-drop/drag-handle.mdx +1 -1
  705. package/dist/docs/drag-and-drop/hotspot-handle.mdx +1 -1
  706. package/dist/docs/drag-and-drop/planes.mdx +1 -1
  707. package/dist/docs/drag-and-drop/rotatable.mdx +2 -2
  708. package/dist/docs/fabs/basic.mdx +6 -2
  709. package/dist/docs/index.json +136 -1
  710. package/dist/docs/integrations/webcomponent-api/basics.mdx +2 -0
  711. package/dist/docs/integrations/woocommerce/local-development.mdx +1 -1
  712. package/dist/docs/layouts/custom-layout.mdx +2597 -0
  713. package/dist/docs/layouts/custom-price.mdx +14 -16
  714. package/dist/docs/layouts/gallery/ardent-compressor.mdx +3516 -0
  715. package/dist/docs/layouts/gallery/corvid-drone.mdx +3428 -0
  716. package/dist/docs/layouts/gallery/fenwick-window.mdx +2803 -0
  717. package/dist/docs/layouts/gallery/ferrule-bar-station.mdx +6567 -0
  718. package/dist/docs/layouts/gallery/kestrel-kettle.mdx +1858 -0
  719. package/dist/docs/layouts/gallery/nightjar-guitar.mdx +3698 -0
  720. package/dist/docs/layouts/gallery/sunfold-solar.mdx +2683 -0
  721. package/dist/docs/layouts/gallery/tidepool-aquascape.mdx +5203 -0
  722. package/dist/docs/layouts/header/fixed.mdx +2 -2
  723. package/dist/docs/layouts/header/floating.mdx +2 -2
  724. package/dist/docs/layouts/sidebar/in-a-custom-layout.mdx +380 -0
  725. package/dist/docs/layouts/sidebar/tabs.mdx +24 -21
  726. package/dist/docs/layouts/sidebar-footer/basic.mdx +32 -77
  727. package/dist/docs/other-features/client-side-rendering/declarative.mdx +2 -2
  728. package/dist/docs/other-features/domain-actions.mdx +1 -1
  729. package/dist/docs/other-features/error-5xx.mdx +1 -1
  730. package/dist/docs/other-features/navigation-hotspot.mdx +2 -0
  731. package/dist/docs/other-features/not-found-404.mdx +1 -1
  732. package/dist/docs/other-features/side-effects.mdx +50 -45
  733. package/dist/docs/other-features/transformers.mdx +5 -1
  734. package/dist/docs/other-features/violation-messages.mdx +52 -56
  735. package/dist/docs/phoenix/admin.mdx +9 -24
  736. package/dist/docs/phoenix/application-states.mdx +9 -7
  737. package/dist/docs/phoenix/clerk-sign-in.mdx +1 -1
  738. package/dist/docs/phoenix/components.mdx +6 -0
  739. package/dist/docs/phoenix/configurator-interface.mdx +402 -81
  740. package/dist/docs/phoenix/deployments.mdx +3 -7
  741. package/dist/docs/phoenix/domain-model.mdx +6 -0
  742. package/dist/docs/phoenix/expression-context.mdx +11 -3
  743. package/dist/docs/phoenix/finalization.mdx +1 -1
  744. package/dist/docs/phoenix/getting-started.mdx +7 -4
  745. package/dist/docs/phoenix/layout-slots.mdx +116 -0
  746. package/dist/docs/phoenix/localization.mdx +13 -28
  747. package/dist/docs/phoenix/migration-guide.mdx +24 -11
  748. package/dist/docs/phoenix/phoenix-cli.mdx +112 -65
  749. package/dist/docs/phoenix/project-structure.mdx +85 -35
  750. package/dist/docs/phoenix/quickstart.mdx +9 -9
  751. package/dist/docs/phoenix/sdk-builder-workflow.mdx +19 -17
  752. package/dist/docs/phoenix/sessions-and-access.mdx +2 -0
  753. package/dist/docs/phoenix/testing.mdx +148 -0
  754. package/dist/docs/phoenix/webhook-membership.mdx +10 -9
  755. package/dist/docs/phoenix/webhooks.mdx +23 -6
  756. package/dist/docs/recipes-and-delete/recipe-hierarchy-selection.mdx +15 -13
  757. package/dist/docs/relations/hierarchy.mdx +13 -2
  758. package/dist/docs/selection-and-highlight/hotspots.mdx +2 -0
  759. package/dist/docs/ux-guidelines/choosing-a-control.mdx +11 -0
  760. package/dist/domain/admin-domain/__generated/enhanced-model.d.ts +1 -2
  761. package/dist/domain/admin-domain/__generated/model/versions/v1.d.ts +1 -1
  762. package/dist/domain/admin-domain/__generated/model/versions/v2.d.ts +1 -1
  763. package/dist/domain/admin-domain/__generated/model/versions/v3.d.ts +1 -1
  764. package/dist/domain/admin-domain/__generated/model/versions/v4.d.ts +1 -1
  765. package/dist/domain/admin-domain/__generated/model/versions/v5.d.ts +1 -1
  766. package/dist/domain/admin-domain/__generated/model/versions/v6.d.ts +2 -2
  767. package/dist/domain/admin-domain/__generated/model/versions/v6.js +1 -1
  768. package/dist/domain/admin-domain/implementation/common-admin-expressions.d.ts +26 -14
  769. package/dist/domain/admin-domain/implementation/common-admin-migrations.d.ts +1 -1
  770. package/dist/domain/admin-domain/implementation/common-admin-publish.d.ts +1 -2
  771. package/dist/domain/admin-domain/index.d.ts +9 -5
  772. package/dist/domain/admin-domain/index.js +1 -1
  773. package/dist/domain/application/GetApplicationWrapperHandler.d.ts +2 -2
  774. package/dist/domain/application/GetThemeHandler.d.ts +1 -1
  775. package/dist/domain/application/GetWebComponentOptions.d.ts +1 -1
  776. package/dist/domain/application/admin-page-factories.d.ts +1 -2
  777. package/dist/domain/application/application-config.d.ts +30 -97
  778. package/dist/domain/application/assistant/assistant-fields.d.ts +12 -0
  779. package/dist/domain/application/assistant/assistant-fields.js +1 -0
  780. package/dist/domain/application/assistant/assistant-manifest.d.ts +86 -0
  781. package/dist/domain/application/assistant/assistant-resolved-manifest.d.ts +138 -0
  782. package/dist/domain/application/assistant/assistant-resolved-manifest.js +1 -0
  783. package/dist/domain/application/assistant/assistant-value-type.d.ts +9 -0
  784. package/dist/domain/application/assistant/assistant-value-type.js +1 -0
  785. package/dist/domain/application/assistant/build-assistant-lenses.d.ts +14 -0
  786. package/dist/domain/application/assistant/build-assistant-lenses.js +5 -0
  787. package/dist/domain/application/assistant/build-assistant-manifest.d.ts +4 -0
  788. package/dist/domain/application/assistant/build-assistant-manifest.js +1 -0
  789. package/dist/domain/application/assistant/create-assistant-execution-schema.d.ts +32 -0
  790. package/dist/domain/application/assistant/create-assistant-execution-schema.js +1 -0
  791. package/dist/domain/application/assistant/form/assistant-form-element-name.d.ts +11 -0
  792. package/dist/domain/application/assistant/form/assistant-form-element-name.js +8 -0
  793. package/dist/domain/application/assistant/form/assistant-form-elements.d.ts +174 -0
  794. package/dist/domain/application/assistant/form/assistant-form-elements.js +1 -0
  795. package/dist/domain/application/assistant/form/assistant-resource-path.d.ts +10 -0
  796. package/dist/domain/application/assistant/form/assistant-resource-path.js +1 -0
  797. package/dist/domain/application/assistant/form/index.d.ts +4 -0
  798. package/dist/domain/application/assistant/form/index.js +1 -0
  799. package/dist/domain/application/assistant/generate-assistant-prompt.d.ts +6 -0
  800. package/dist/domain/application/assistant/generate-assistant-prompt.js +1 -0
  801. package/dist/domain/application/assistant/index.d.ts +10 -0
  802. package/dist/domain/application/assistant/index.js +1 -0
  803. package/dist/domain/application/assistant/session-setup/AssistantSetupHandler.d.ts +20 -0
  804. package/dist/domain/application/assistant/session-setup/AssistantSetupHandler.js +1 -0
  805. package/dist/domain/application/assistant/session-setup/apply-assistant-setup.d.ts +10 -0
  806. package/dist/domain/application/assistant/session-setup/apply-assistant-setup.js +1 -0
  807. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.d.ts +50 -0
  808. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.js +1 -0
  809. package/dist/domain/application/assistant/session-setup/create-session-assistant.d.ts +15 -0
  810. package/dist/domain/application/assistant/session-setup/create-session-assistant.js +1 -0
  811. package/dist/domain/application/assistant/session-setup/index.d.ts +4 -0
  812. package/dist/domain/application/assistant/session-setup/index.js +1 -0
  813. package/dist/domain/application/assistant-field-options.d.ts +2 -3
  814. package/dist/domain/application/assistant-mutations.d.ts +3 -5
  815. package/dist/domain/application/assistant-mutations.js +1 -1
  816. package/dist/domain/application/assistant-recipe-groups.d.ts +6 -8
  817. package/dist/domain/application/configurator-builder.d.ts +42 -18
  818. package/dist/domain/application/configurator-builder.js +1 -1
  819. package/dist/domain/application/create-initial-published-data.d.ts +6 -7
  820. package/dist/domain/application/index.d.ts +4 -7
  821. package/dist/domain/application/index.js +1 -1
  822. package/dist/domain/application/published-data/DataRowValidatorHandler.d.ts +1 -1
  823. package/dist/domain/application/published-data/FilterPublishedChunksHandler.d.ts +1 -1
  824. package/dist/domain/application/published-data/MapPublishedChunkedDataHandler.d.ts +1 -1
  825. package/dist/domain/application/published-data/MapPublishedRevisionDataHandler.d.ts +1 -1
  826. package/dist/domain/application/published-data/SheetValidatorHandler.d.ts +1 -1
  827. package/dist/domain/application/published-data/build-legend-data.d.ts +1 -1
  828. package/dist/domain/application/published-data/create-finalize-admin-domain.d.ts +1 -2
  829. package/dist/domain/application/published-data/format-field-type.d.ts +1 -1
  830. package/dist/domain/application/published-data/map-data-to-sheet.d.ts +1 -1
  831. package/dist/domain/application/published-data/map-published-chunked-data.d.ts +3 -3
  832. package/dist/domain/application/published-data/map-published-data.d.ts +7 -4
  833. package/dist/domain/application/published-data/validate-sheet-data.d.ts +1 -1
  834. package/dist/domain/application/standard-properties.js +1 -1
  835. package/dist/domain/application/web-component-property.d.ts +3 -1
  836. package/dist/domain/application/web-component-property.js +1 -1
  837. package/dist/domain/available-system-components.d.ts +1 -1
  838. package/dist/domain/available-system-components.js +1 -1
  839. package/dist/domain/core/action/action-factory.d.ts +11 -0
  840. package/dist/domain/core/action/action.d.ts +71 -0
  841. package/dist/domain/core/action/action.js +1 -0
  842. package/dist/domain/core/action/index.d.ts +2 -0
  843. package/dist/domain/core/action/index.js +1 -0
  844. package/dist/domain/core/component/component-reader-types.d.ts +43 -0
  845. package/dist/domain/core/component/component-reader-types.js +1 -0
  846. package/dist/domain/core/component/debug-state-component.d.ts +14 -0
  847. package/dist/domain/core/component/debug-state-component.js +1 -0
  848. package/dist/domain/core/component/domain-component-optic.d.ts +65 -0
  849. package/dist/domain/core/component/domain-component-optic.js +16 -0
  850. package/dist/domain/core/component/drag-state-component.d.ts +16 -0
  851. package/dist/domain/core/component/drag-state-component.js +1 -0
  852. package/dist/domain/core/component/export-state-component.d.ts +15 -0
  853. package/dist/domain/core/component/export-state-component.js +1 -0
  854. package/dist/domain/core/component/fullscreen-state-component.d.ts +14 -0
  855. package/dist/domain/core/component/fullscreen-state-component.js +1 -0
  856. package/dist/domain/core/component/group-components-by-entity-id-and-name.d.ts +8 -0
  857. package/dist/domain/core/component/group-components-by-entity-id-and-name.js +1 -0
  858. package/dist/domain/core/component/hover-state-component.d.ts +14 -0
  859. package/dist/domain/core/component/hover-state-component.js +1 -0
  860. package/dist/domain/core/component/index.d.ts +18 -0
  861. package/dist/domain/core/component/index.js +1 -0
  862. package/dist/domain/core/component/legacy-filter.d.ts +498 -0
  863. package/dist/domain/core/component/navigation-state-component.d.ts +15 -0
  864. package/dist/domain/core/component/navigation-state-component.js +1 -0
  865. package/dist/domain/core/component/selection-state-component.d.ts +14 -0
  866. package/dist/domain/core/component/selection-state-component.js +1 -0
  867. package/dist/domain/core/component/system-component-builder.d.ts +11 -0
  868. package/dist/domain/core/component/system-component-builder.js +1 -0
  869. package/dist/domain/core/component/system-component-filter.d.ts +811 -0
  870. package/dist/domain/core/component/system-virtual-entity.js +1 -0
  871. package/dist/domain/core/component/tool-state-component.d.ts +14 -0
  872. package/dist/domain/core/component/tool-state-component.js +1 -0
  873. package/dist/domain/core/component/updates.d.ts +123 -0
  874. package/dist/domain/core/component/view-state-component.d.ts +14 -0
  875. package/dist/domain/core/component/view-state-component.js +1 -0
  876. package/dist/domain/core/component/viewport-state-component.d.ts +29 -0
  877. package/dist/domain/core/component/viewport-state-component.js +1 -0
  878. package/dist/domain/core/data-schema/data-cell-value.d.ts +4 -0
  879. package/dist/domain/core/data-schema/data-cell-value.js +1 -0
  880. package/dist/domain/core/data-schema/data-schema-array-field.d.ts +5 -0
  881. package/dist/domain/core/data-schema/data-schema-array-field.js +1 -0
  882. package/dist/domain/core/data-schema/data-schema-field-object.d.ts +4 -0
  883. package/dist/domain/core/data-schema/data-schema-field-object.js +1 -0
  884. package/dist/domain/core/data-schema/data-schema-field.d.ts +2 -0
  885. package/dist/domain/core/data-schema/data-schema-field.js +1 -0
  886. package/dist/domain/core/data-schema/data-schema-localized-field.d.ts +4 -0
  887. package/dist/domain/core/data-schema/data-schema-localized-field.js +1 -0
  888. package/dist/domain/core/data-schema/data-schema-primitive-field.d.ts +5 -0
  889. package/dist/domain/core/data-schema/data-schema-primitive-field.js +1 -0
  890. package/dist/domain/core/data-schema/data-schema.d.ts +2 -0
  891. package/dist/domain/core/data-schema/data-schema.js +1 -0
  892. package/dist/domain/core/data-schema/index.d.ts +7 -0
  893. package/dist/domain/core/data-schema/index.js +1 -0
  894. package/dist/domain/core/decoder/create-decoder.d.ts +6 -0
  895. package/dist/domain/core/decoder/create-decoder.js +1 -0
  896. package/dist/domain/core/decoder/decoder.d.ts +6 -0
  897. package/dist/domain/core/decoder/decoder.js +1 -0
  898. package/dist/domain/core/decoder/index.d.ts +2 -0
  899. package/dist/domain/core/decoder/index.js +1 -0
  900. package/dist/domain/core/domain-factory.d.ts +4 -5
  901. package/dist/domain/core/domain-factory.js +1 -1
  902. package/dist/domain/core/domain.d.ts +4 -5
  903. package/dist/domain/core/domain.js +1 -1
  904. package/dist/domain/core/emission/index.d.ts +8 -0
  905. package/dist/domain/core/emission/index.js +1 -0
  906. package/dist/domain/core/emission/reset-state-emission.d.ts +12 -0
  907. package/dist/domain/core/emission/reset-state-emission.js +1 -0
  908. package/dist/domain/core/emission/state-emission.d.ts +4 -0
  909. package/dist/domain/core/emission/state-emission.js +1 -0
  910. package/dist/domain/core/emission/state-update-emission.d.ts +14 -0
  911. package/dist/domain/core/emission/state-update-emission.js +1 -0
  912. package/dist/domain/core/emission/state-validation-result.d.ts +18 -0
  913. package/dist/domain/core/emission/state-validation-result.js +1 -0
  914. package/dist/domain/core/emission/transformation-log.d.ts +2 -0
  915. package/dist/domain/core/emission/transformation-log.js +1 -0
  916. package/dist/domain/core/emission/transformer-log-entry.d.ts +6 -0
  917. package/dist/domain/core/emission/transformer-log-entry.js +1 -0
  918. package/dist/domain/core/emission/transformer-log.d.ts +11 -0
  919. package/dist/domain/core/emission/transformer-log.js +1 -0
  920. package/dist/domain/core/emission/transformer-phase.d.ts +1 -0
  921. package/dist/domain/core/emission/transformer-phase.js +1 -0
  922. package/dist/domain/core/expression/aliased-expressions.d.ts +10 -0
  923. package/dist/domain/core/expression/aliased-expressions.js +1 -0
  924. package/dist/domain/core/expression/constant-expressions.d.ts +16 -0
  925. package/dist/domain/core/expression/constant-expressions.js +1 -0
  926. package/dist/domain/core/expression/custom-expression.d.ts +25 -0
  927. package/dist/domain/core/expression/custom-expression.js +1 -0
  928. package/dist/domain/core/expression/expression.d.ts +46 -0
  929. package/dist/domain/core/expression/expression.js +1 -0
  930. package/dist/domain/core/expression/index.d.ts +4 -0
  931. package/dist/domain/core/expression/index.js +1 -0
  932. package/dist/domain/core/index.d.ts +13 -17
  933. package/dist/domain/core/index.js +1 -1
  934. package/dist/domain/core/invariant/builtin-invariant.d.ts +5 -0
  935. package/dist/domain/core/invariant/custom-invariants.d.ts +13 -0
  936. package/dist/domain/core/invariant/custom-invariants.js +1 -0
  937. package/dist/domain/core/invariant/index.d.ts +5 -0
  938. package/dist/domain/core/invariant/index.js +1 -0
  939. package/dist/domain/core/invariant/invariants.d.ts +10 -0
  940. package/dist/domain/core/invariant/invariants.js +1 -0
  941. package/dist/domain/core/invariant/violation-component.js +1 -0
  942. package/dist/domain/core/invariant/violation.d.ts +133 -0
  943. package/dist/domain/core/invariant/violation.js +1 -0
  944. package/dist/domain/core/model/component.d.ts +46 -0
  945. package/dist/domain/core/model/index.d.ts +6 -0
  946. package/dist/domain/core/model/index.js +1 -0
  947. package/dist/domain/core/model/model.d.ts +127 -0
  948. package/dist/domain/core/model/reflection.d.ts +114 -0
  949. package/dist/domain/core/model/reflection.js +1 -0
  950. package/dist/domain/core/recipe/index.d.ts +1 -0
  951. package/dist/domain/core/recipe/index.js +1 -0
  952. package/dist/domain/core/recipe/recipes.d.ts +23 -0
  953. package/dist/domain/core/recipe/recipes.js +1 -0
  954. package/dist/domain/core/relation/all-of-type-relation.d.ts +19 -0
  955. package/dist/domain/core/relation/all-of-type-relation.js +1 -0
  956. package/dist/domain/core/relation/component-factories.d.ts +14 -0
  957. package/dist/domain/core/relation/component-factories.js +1 -0
  958. package/dist/domain/core/relation/composed-of.d.ts +12 -0
  959. package/dist/domain/core/relation/composed-of.js +1 -0
  960. package/dist/domain/core/relation/direct-relation.d.ts +17 -0
  961. package/dist/domain/core/relation/index.d.ts +8 -0
  962. package/dist/domain/core/relation/index.js +1 -0
  963. package/dist/domain/core/relation/indirect-relation.d.ts +25 -0
  964. package/dist/domain/core/relation/indirect-relation.js +1 -0
  965. package/dist/domain/core/relation/reference-component.d.ts +17 -0
  966. package/dist/domain/core/relation/reference-component.js +1 -0
  967. package/dist/domain/core/relation/reference-field.d.ts +7 -0
  968. package/dist/domain/core/relation/reference-field.js +1 -0
  969. package/dist/domain/core/relation/relation-factory.d.ts +22 -0
  970. package/dist/domain/core/relation/relation-factory.js +1 -0
  971. package/dist/domain/core/schema/enhanced-json-schema.js +1 -0
  972. package/dist/domain/core/schema/extended-schema-validator.js +1 -0
  973. package/dist/domain/core/schema/index.d.ts +3 -0
  974. package/dist/domain/core/schema/index.js +1 -0
  975. package/dist/domain/core/schema/schema-validator.js +1 -0
  976. package/dist/domain/core/state/id-sequence.d.ts +15 -0
  977. package/dist/domain/core/state/id-sequence.js +1 -0
  978. package/dist/domain/core/state/index.d.ts +3 -0
  979. package/dist/domain/core/state/index.js +1 -0
  980. package/dist/domain/core/state/migrations.d.ts +67 -0
  981. package/dist/domain/core/state/migrations.js +1 -0
  982. package/dist/domain/core/state/state.d.ts +9 -0
  983. package/dist/domain/domain-builder.d.ts +17 -11
  984. package/dist/domain/domain-builder.js +1 -1
  985. package/dist/domain/domain-context/action-system/action-system.d.ts +2 -4
  986. package/dist/domain/domain-context/action-system/action-system.js +1 -1
  987. package/dist/domain/domain-context/action-system/index.d.ts +1 -0
  988. package/dist/domain/domain-context/action-system/index.js +1 -0
  989. package/dist/domain/domain-context/analytics-system/index.d.ts +2 -0
  990. package/dist/domain/domain-context/analytics-system/index.js +1 -0
  991. package/dist/domain/domain-context/create-transformer.d.ts +2 -2
  992. package/dist/domain/domain-context/dimension-system/dimension-state.js +1 -1
  993. package/dist/domain/domain-context/dimension-system/dimension-system.d.ts +3 -4
  994. package/dist/domain/domain-context/dimension-system/dimension-system.js +1 -1
  995. package/dist/domain/domain-context/dimension-system/index.d.ts +1 -0
  996. package/dist/domain/domain-context/dimension-system/index.js +1 -0
  997. package/dist/domain/domain-context/domain-context-systems.d.ts +8 -10
  998. package/dist/domain/domain-context/index.d.ts +8 -18
  999. package/dist/domain/domain-context/index.js +1 -1
  1000. package/dist/domain/domain-context/navigation-system/index.d.ts +3 -0
  1001. package/dist/domain/domain-context/navigation-system/index.js +1 -0
  1002. package/dist/domain/domain-context/navigation-system/navigation-system.d.ts +5 -8
  1003. package/dist/domain/domain-context/navigation-system/navigation-system.js +1 -1
  1004. package/dist/domain/domain-context/navigation-system/navigation-updates.d.ts +1 -12
  1005. package/dist/domain/domain-context/navigation-system/navigation-updates.js +1 -1
  1006. package/dist/domain/domain-context/navigation-system/selection-transformers.d.ts +2 -2
  1007. package/dist/domain/domain-context/navigation-system/selection-transformers.js +1 -1
  1008. package/dist/domain/domain-context/recipe-system/index.d.ts +1 -0
  1009. package/dist/domain/domain-context/recipe-system/index.js +1 -0
  1010. package/dist/domain/domain-context/recipe-system/recipe-cooker-system.d.ts +2 -4
  1011. package/dist/domain/domain-context/recipe-system/recipe-cooker-system.js +1 -1
  1012. package/dist/domain/domain-context/relation-transformers/cascade-deletes.d.ts +3 -3
  1013. package/dist/domain/domain-context/relation-transformers/cascade-deletes.js +1 -1
  1014. package/dist/domain/domain-context/relation-transformers/cascade-ref-pruning.d.ts +3 -3
  1015. package/dist/domain/domain-context/relation-transformers/cascade-ref-pruning.js +1 -1
  1016. package/dist/domain/domain-context/relation-transformers/create-entity-refs.d.ts +3 -3
  1017. package/dist/domain/domain-context/relation-transformers/create-entity-refs.js +2 -2
  1018. package/dist/domain/domain-context/relation-transformers/index.d.ts +4 -0
  1019. package/dist/domain/domain-context/relation-transformers/index.js +1 -0
  1020. package/dist/domain/domain-context/relation-transformers/replace-refs.d.ts +3 -3
  1021. package/dist/domain/domain-context/relation-transformers/replace-refs.js +1 -1
  1022. package/dist/domain/domain-context/store-system/apply-updates.d.ts +1 -3
  1023. package/dist/domain/domain-context/store-system/apply-updates.js +1 -1
  1024. package/dist/domain/domain-context/store-system/index.d.ts +4 -0
  1025. package/dist/domain/domain-context/store-system/index.js +1 -0
  1026. package/dist/domain/domain-context/store-system/next-domain-entity-id.d.ts +1 -13
  1027. package/dist/domain/domain-context/store-system/next-domain-entity-id.js +1 -1
  1028. package/dist/domain/domain-context/store-system/reconcile-projected-entities.d.ts +1 -2
  1029. package/dist/domain/domain-context/store-system/reconcile-projected-entities.js +1 -1
  1030. package/dist/domain/domain-context/store-system/store-system.d.ts +7 -39
  1031. package/dist/domain/domain-context/store-system/store-system.js +2 -2
  1032. package/dist/domain/domain-context/store-system/system-state.d.ts +2 -4
  1033. package/dist/domain/domain-context/store-system/system-state.js +1 -1
  1034. package/dist/domain/domain-context/transformers/actions-builder.d.ts +1 -2
  1035. package/dist/domain/domain-context/transformers/actions-builder.js +1 -1
  1036. package/dist/domain/domain-context/transformers/auto-snap-transformer.d.ts +6 -10
  1037. package/dist/domain/domain-context/transformers/auto-snap-transformer.js +1 -1
  1038. package/dist/domain/domain-context/transformers/chain-builder.d.ts +3 -3
  1039. package/dist/domain/domain-context/transformers/context.d.ts +2 -7
  1040. package/dist/domain/domain-context/transformers/context.js +1 -1
  1041. package/dist/domain/domain-context/transformers/entity-builder.d.ts +1 -5
  1042. package/dist/domain/domain-context/transformers/entity-builder.js +1 -1
  1043. package/dist/domain/domain-context/transformers/index.d.ts +1 -1
  1044. package/dist/domain/domain-context/transformers/index.js +1 -1
  1045. package/dist/domain/domain-context/transformers/then-builder.d.ts +1 -2
  1046. package/dist/domain/domain-context/transformers/then-builder.js +1 -1
  1047. package/dist/domain/domain-context/transformers/when-builder.d.ts +3 -9
  1048. package/dist/domain/domain-context/transformers/when-builder.js +1 -1
  1049. package/dist/domain/domain-context/undo-system.d.ts +29 -3
  1050. package/dist/domain/domain-context/undo-system.js +1 -1
  1051. package/dist/domain/domain-runtime/access/selectors.d.ts +9 -0
  1052. package/dist/domain/domain-runtime/access/selectors.js +1 -1
  1053. package/dist/domain/domain-runtime/access/types.d.ts +2 -0
  1054. package/dist/domain/domain-runtime/access/types.js +1 -1
  1055. package/dist/domain/domain-runtime/application.d.ts +39 -0
  1056. package/dist/domain/domain-runtime/application.js +1 -0
  1057. package/dist/domain/domain-runtime/domain-context/action-context.d.ts +11 -0
  1058. package/dist/domain/domain-runtime/domain-context/action-context.js +1 -0
  1059. package/dist/domain/domain-runtime/domain-context/component-reader.d.ts +1 -4
  1060. package/dist/domain/domain-runtime/domain-context/component-reader.js +1 -1
  1061. package/dist/domain/domain-runtime/domain-context/domain-context.js +1 -1
  1062. package/dist/domain/domain-runtime/domain-context/expression-context.d.ts +8 -0
  1063. package/dist/domain/domain-runtime/domain-context/expression-context.js +1 -0
  1064. package/dist/domain/domain-runtime/domain-context/index.d.ts +3 -0
  1065. package/dist/domain/domain-runtime/domain-context/runtime-expression-context.d.ts +18 -0
  1066. package/dist/domain/domain-runtime/domain-context/runtime-expression-context.js +1 -0
  1067. package/dist/domain/domain-runtime/domain-context/selectors.d.ts +20 -25
  1068. package/dist/domain/domain-runtime/domain-context/selectors.js +1 -1
  1069. package/dist/domain/domain-runtime/domain-context/types.d.ts +4 -1
  1070. package/dist/domain/domain-runtime/domain-runtime.d.ts +132 -76
  1071. package/dist/domain/domain-runtime/domain-runtime.js +1 -1
  1072. package/dist/domain/domain-runtime/environment/initialize.d.ts +1 -1
  1073. package/dist/domain/domain-runtime/environment/types.d.ts +1 -1
  1074. package/dist/domain/domain-runtime/errors/implementation-error-collector.d.ts +21 -0
  1075. package/dist/domain/domain-runtime/errors/implementation-error-collector.js +1 -0
  1076. package/dist/domain/domain-runtime/errors/implementation-error.d.ts +46 -0
  1077. package/dist/domain/domain-runtime/errors/implementation-error.js +1 -0
  1078. package/dist/domain/domain-runtime/errors/implementation-errors.d.ts +13 -0
  1079. package/dist/domain/domain-runtime/errors/implementation-errors.js +1 -0
  1080. package/dist/domain/domain-runtime/errors/index.d.ts +4 -0
  1081. package/dist/domain/domain-runtime/errors/index.js +1 -0
  1082. package/dist/domain/domain-runtime/errors/to-implementation-errors.d.ts +10 -0
  1083. package/dist/domain/domain-runtime/errors/to-implementation-errors.js +1 -0
  1084. package/dist/domain/domain-runtime/index.d.ts +2 -0
  1085. package/dist/domain/domain-runtime/index.js +1 -1
  1086. package/dist/domain/domain-runtime/spec/create-violation-expressions.d.ts +24 -0
  1087. package/dist/domain/domain-runtime/spec/create-violation-expressions.js +1 -0
  1088. package/dist/domain/domain-runtime/spec/index.d.ts +5 -0
  1089. package/dist/domain/domain-runtime/spec/index.js +1 -1
  1090. package/dist/domain/domain-runtime/spec/initialize.d.ts +11 -0
  1091. package/dist/domain/domain-runtime/spec/initialize.js +1 -1
  1092. package/dist/domain/domain-runtime/spec/memoize-expression.d.ts +16 -0
  1093. package/dist/domain/domain-runtime/spec/module-checks/element-registration.d.ts +125 -0
  1094. package/dist/domain/domain-runtime/spec/module-checks/element-registration.js +1 -0
  1095. package/dist/domain/domain-runtime/spec/module-checks/find-assistant-form-element-errors.d.ts +12 -0
  1096. package/dist/domain/domain-runtime/spec/module-checks/find-assistant-form-element-errors.js +1 -0
  1097. package/dist/domain/domain-runtime/spec/module-checks/handler-registration.d.ts +34 -0
  1098. package/dist/domain/domain-runtime/spec/module-checks/handler-registration.js +1 -0
  1099. package/dist/domain/domain-runtime/spec/module-checks/index.d.ts +10 -0
  1100. package/dist/domain/domain-runtime/spec/module-checks/index.js +1 -0
  1101. package/dist/domain/domain-runtime/spec/module-checks/merge-expression-modules.d.ts +23 -0
  1102. package/dist/domain/domain-runtime/spec/module-checks/merge-expression-modules.js +1 -0
  1103. package/dist/domain/domain-runtime/spec/module-checks/project-modules.d.ts +32 -0
  1104. package/dist/domain/domain-runtime/spec/module-checks/project-modules.js +1 -0
  1105. package/dist/domain/domain-runtime/spec/module-checks/resolve-action-modules.d.ts +4 -0
  1106. package/dist/domain/domain-runtime/spec/module-checks/resolve-action-modules.js +1 -0
  1107. package/dist/domain/domain-runtime/spec/module-checks/resolve-component-optic-modules.d.ts +4 -0
  1108. package/dist/domain/domain-runtime/spec/module-checks/resolve-component-optic-modules.js +1 -0
  1109. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.d.ts +14 -0
  1110. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.js +1 -0
  1111. package/dist/domain/domain-runtime/spec/module-checks/resolve-imported-transformers.d.ts +22 -0
  1112. package/dist/domain/domain-runtime/spec/module-checks/resolve-imported-transformers.js +1 -0
  1113. package/dist/domain/domain-runtime/spec/module-checks/resolve-invariant-modules.d.ts +6 -0
  1114. package/dist/domain/domain-runtime/spec/module-checks/resolve-invariant-modules.js +1 -0
  1115. package/dist/domain/domain-runtime/spec/prepare-action-implementations.d.ts +15 -0
  1116. package/dist/domain/domain-runtime/spec/prepare-action-implementations.js +5 -0
  1117. package/dist/domain/domain-runtime/spec/prepare-domain-expressions.d.ts +16 -0
  1118. package/dist/domain/domain-runtime/spec/selectors.d.ts +10 -9
  1119. package/dist/domain/domain-runtime/spec/selectors.js +1 -1
  1120. package/dist/domain/domain-runtime/spec/types.d.ts +8 -6
  1121. package/dist/domain/domain-runtime/web-component/actions.d.ts +3 -0
  1122. package/dist/domain/domain-runtime/web-component/actions.js +1 -1
  1123. package/dist/domain/domain-runtime/web-component/initialize.d.ts +1 -0
  1124. package/dist/domain/domain-runtime/web-component/initialize.js +1 -1
  1125. package/dist/domain/domain-runtime/web-component/selectors.d.ts +2 -0
  1126. package/dist/domain/domain-runtime/web-component/selectors.js +1 -1
  1127. package/dist/domain/domain-runtime/web-component/types.d.ts +6 -3
  1128. package/dist/domain/extensions/angle-indicator.d.ts +21 -0
  1129. package/dist/domain/extensions/angle-indicator.js +1 -0
  1130. package/dist/domain/extensions/attribute-switch.d.ts +8 -0
  1131. package/dist/domain/extensions/attribute-switch.js +1 -0
  1132. package/dist/domain/extensions/autorotate-camera-component.d.ts +19 -0
  1133. package/dist/domain/extensions/autorotate-camera-component.js +1 -0
  1134. package/dist/domain/extensions/basic-sidebar-footer.d.ts +8 -0
  1135. package/dist/domain/extensions/basic-sidebar-footer.js +1 -0
  1136. package/dist/domain/extensions/camera-based-hidden-entity-object.js +1 -0
  1137. package/dist/domain/extensions/camera-based-hidden-entity.js +1 -0
  1138. package/dist/domain/extensions/canvas-config.d.ts +87 -0
  1139. package/dist/domain/extensions/canvas-config.js +1 -0
  1140. package/dist/domain/extensions/canvas-custom-environment.js +1 -0
  1141. package/dist/domain/extensions/canvas-padding.d.ts +25 -0
  1142. package/dist/domain/extensions/canvas-padding.js +1 -0
  1143. package/dist/domain/extensions/canvas-preset-environment.d.ts +37 -0
  1144. package/dist/domain/extensions/canvas-preset-environment.js +1 -0
  1145. package/dist/domain/extensions/child-entity-recipe-hierarchy.d.ts +21 -0
  1146. package/dist/domain/extensions/child-entity-recipe-hierarchy.js +1 -0
  1147. package/dist/domain/extensions/color-value.js +1 -0
  1148. package/dist/domain/extensions/common/angle-indicator-schema.d.ts +292 -0
  1149. package/dist/domain/extensions/common/angle-indicator-schema.js +1 -0
  1150. package/dist/domain/extensions/common/dimension-indicator-schema.d.ts +607 -0
  1151. package/dist/domain/extensions/common/dimension-indicator-schema.js +1 -0
  1152. package/dist/domain/extensions/common/index.d.ts +4 -0
  1153. package/dist/domain/extensions/common/index.js +1 -0
  1154. package/dist/domain/extensions/custom-header.d.ts +11 -0
  1155. package/dist/domain/extensions/custom-header.js +1 -0
  1156. package/dist/domain/extensions/custom-price-footer.js +1 -0
  1157. package/dist/domain/extensions/custom-sidebar-footer.d.ts +11 -0
  1158. package/dist/domain/extensions/custom-sidebar-footer.js +1 -0
  1159. package/dist/domain/extensions/dimension-indicator.d.ts +31 -0
  1160. package/dist/domain/extensions/dimension-indicator.js +1 -0
  1161. package/dist/domain/extensions/editable-angle-indicator.d.ts +39 -0
  1162. package/dist/domain/extensions/editable-angle-indicator.js +1 -0
  1163. package/dist/domain/extensions/editable-distance-dimension-indicator.d.ts +43 -0
  1164. package/dist/domain/extensions/editable-distance-dimension-indicator.js +1 -0
  1165. package/dist/domain/extensions/editable-offset-indicator.d.ts +42 -0
  1166. package/dist/domain/extensions/editable-offset-indicator.js +1 -0
  1167. package/dist/domain/extensions/editable-size-indicator.d.ts +39 -0
  1168. package/dist/domain/extensions/editable-size-indicator.js +1 -0
  1169. package/dist/domain/extensions/entity-header.d.ts +22 -0
  1170. package/dist/domain/extensions/entity-header.js +1 -0
  1171. package/dist/domain/extensions/exit-tool-mode-fab.d.ts +25 -0
  1172. package/dist/domain/extensions/exit-tool-mode-fab.js +1 -0
  1173. package/dist/domain/extensions/export-images/agent-screenshot.d.ts +24 -0
  1174. package/dist/domain/extensions/export-images/agent-screenshot.js +1 -0
  1175. package/dist/domain/extensions/export-images/client-side-image.d.ts +14 -0
  1176. package/dist/domain/extensions/export-images/client-side-image.js +1 -0
  1177. package/dist/domain/extensions/export-images/index.d.ts +3 -0
  1178. package/dist/domain/extensions/export-images/index.js +1 -0
  1179. package/dist/domain/extensions/export-images/save-template-thumbnail.d.ts +14 -0
  1180. package/dist/domain/extensions/export-images/save-template-thumbnail.js +1 -0
  1181. package/dist/domain/extensions/finalize-action.d.ts +20 -0
  1182. package/dist/domain/extensions/finalize-action.js +1 -0
  1183. package/dist/domain/extensions/finalize-component.js +1 -0
  1184. package/dist/domain/extensions/fit-selection-orthographic-camera-component.js +1 -0
  1185. package/dist/domain/extensions/fit-selection-perspective-camera-component.js +1 -0
  1186. package/dist/domain/extensions/fixed-header.d.ts +10 -0
  1187. package/dist/domain/extensions/fixed-header.js +1 -0
  1188. package/dist/domain/extensions/floating-header.d.ts +10 -0
  1189. package/dist/domain/extensions/floating-header.js +1 -0
  1190. package/dist/domain/extensions/hidden-header.d.ts +8 -0
  1191. package/dist/domain/extensions/hidden-header.js +1 -0
  1192. package/dist/domain/extensions/hidden-sidebar-footer.d.ts +21 -0
  1193. package/dist/domain/extensions/hidden-sidebar-footer.js +1 -0
  1194. package/dist/domain/extensions/horizontal-tabs.d.ts +28 -0
  1195. package/dist/domain/extensions/horizontal-tabs.js +1 -0
  1196. package/dist/domain/extensions/index.d.ts +68 -0
  1197. package/dist/domain/extensions/index.js +1 -0
  1198. package/dist/domain/extensions/list-selector-dimension-indicator.d.ts +31 -0
  1199. package/dist/domain/extensions/list-selector-dimension-indicator.js +1 -0
  1200. package/dist/domain/extensions/multilingual-text-value.js +1 -0
  1201. package/dist/domain/extensions/navigation-steps.d.ts +19 -0
  1202. package/dist/domain/extensions/navigation-steps.js +1 -0
  1203. package/dist/domain/extensions/offset-anchors.d.ts +20 -0
  1204. package/dist/domain/extensions/offset-anchors.js +1 -0
  1205. package/dist/domain/extensions/offset-indicator.d.ts +83 -0
  1206. package/dist/domain/extensions/offset-indicator.js +1 -0
  1207. package/dist/domain/extensions/offset.d.ts +31 -0
  1208. package/dist/domain/extensions/offset.js +1 -0
  1209. package/dist/domain/extensions/other-action.d.ts +14 -0
  1210. package/dist/domain/extensions/other-action.js +1 -0
  1211. package/dist/domain/extensions/property-page.d.ts +16 -0
  1212. package/dist/domain/extensions/property-page.js +1 -0
  1213. package/dist/domain/extensions/read-sidebar-footer.d.ts +8 -0
  1214. package/dist/domain/extensions/read-sidebar-footer.js +1 -0
  1215. package/dist/domain/extensions/replace-entity-recipe-hierarchy.d.ts +21 -0
  1216. package/dist/domain/extensions/replace-entity-recipe-hierarchy.js +1 -0
  1217. package/dist/domain/extensions/rotatable.js +1 -0
  1218. package/dist/domain/extensions/rotation-handle.d.ts +53 -0
  1219. package/dist/domain/extensions/rotation-handle.js +1 -0
  1220. package/dist/domain/extensions/scene-entity-add-fab.d.ts +32 -0
  1221. package/dist/domain/extensions/scene-entity-add-fab.js +1 -0
  1222. package/dist/domain/extensions/scene-entity-animation.js +1 -0
  1223. package/dist/domain/extensions/scene-entity-control.js +1 -0
  1224. package/dist/domain/extensions/scene-entity-delete-fab.d.ts +19 -0
  1225. package/dist/domain/extensions/scene-entity-delete-fab.js +1 -0
  1226. package/dist/domain/extensions/scene-entity-floor-object.js +1 -0
  1227. package/dist/domain/extensions/scene-entity-html-hotspot.d.ts +27 -0
  1228. package/dist/domain/extensions/scene-entity-html-hotspot.js +1 -0
  1229. package/dist/domain/extensions/scene-entity-navigation-hotspot.d.ts +20 -0
  1230. package/dist/domain/extensions/scene-entity-navigation-hotspot.js +1 -0
  1231. package/dist/domain/extensions/scene-entity-object-html-hotspot.d.ts +31 -0
  1232. package/dist/domain/extensions/scene-entity-object-html-hotspot.js +1 -0
  1233. package/dist/domain/extensions/scene-entity-select-hotspot.d.ts +5 -0
  1234. package/dist/domain/extensions/scene-entity-select-hotspot.js +1 -0
  1235. package/dist/domain/extensions/scene-entity-wall-object.js +1 -0
  1236. package/dist/domain/extensions/selectable-component.js +1 -0
  1237. package/dist/domain/extensions/sidebar-tabs.d.ts +29 -0
  1238. package/dist/domain/extensions/sidebar-tabs.js +1 -0
  1239. package/dist/domain/extensions/simple-summary.js +1 -0
  1240. package/dist/domain/extensions/size.d.ts +21 -0
  1241. package/dist/domain/extensions/size.js +1 -0
  1242. package/dist/domain/extensions/sketching-draw.d.ts +17 -0
  1243. package/dist/domain/extensions/sketching-draw.js +1 -0
  1244. package/dist/domain/extensions/sketching-edit.d.ts +28 -0
  1245. package/dist/domain/extensions/sketching-edit.js +1 -0
  1246. package/dist/domain/extensions/summary-component.js +1 -0
  1247. package/dist/domain/extensions/text-value.js +1 -0
  1248. package/dist/domain/extensions/tool-controls.js +1 -0
  1249. package/dist/domain/extensions/tool-menu-fab.d.ts +40 -0
  1250. package/dist/domain/extensions/tool-menu-fab.js +1 -0
  1251. package/dist/domain/extensions/toolbar.d.ts +13 -0
  1252. package/dist/domain/extensions/toolbar.js +1 -0
  1253. package/dist/domain/extensions/universal-sidebar-footer.d.ts +12 -0
  1254. package/dist/domain/extensions/universal-sidebar-footer.js +1 -0
  1255. package/dist/domain/extensions/view-controls.js +1 -0
  1256. package/dist/domain/index.d.ts +2 -32
  1257. package/dist/domain/index.js +1 -1
  1258. package/dist/domain/mocks/create-mock-domain-context.d.ts +1 -1
  1259. package/dist/domain/mocks/create-mock-domain-runtime-services.d.ts +1 -1
  1260. package/dist/domain/mocks/create-mock-domain-runtime.d.ts +39 -21
  1261. package/dist/domain/mocks/create-mock-domain-runtime.js +1 -1
  1262. package/dist/domain/mocks/create-mock-domain.d.ts +1 -1
  1263. package/dist/domain/mocks/create-mock-domain.js +1 -1
  1264. package/dist/domain/mocks/create-mock-state.d.ts +2 -2
  1265. package/dist/domain/mocks/create-test-application-config.d.ts +59 -0
  1266. package/dist/domain/mocks/create-test-application-config.js +1 -0
  1267. package/dist/domain/mocks/index.d.ts +1 -0
  1268. package/dist/domain/mocks/index.js +1 -1
  1269. package/dist/domain/projections/blender-projections/blender-projections.d.ts +2 -3
  1270. package/dist/domain/projections/blender-projections/blender-projections.js +1 -1
  1271. package/dist/domain/projections/blender-projections/camera.d.ts +2 -2
  1272. package/dist/domain/projections/collision-projections.d.ts +1 -1
  1273. package/dist/domain/projections/composition-projections.d.ts +1 -1
  1274. package/dist/domain/projections/composition-projections.js +1 -1
  1275. package/dist/domain/projections/constraint-projections.d.ts +1 -1
  1276. package/dist/domain/projections/index.d.ts +1 -1
  1277. package/dist/domain/projections/position-projections.d.ts +1 -1
  1278. package/dist/domain/projections/projected-entities-projections.d.ts +2 -3
  1279. package/dist/domain/projections/snap-matching.d.ts +1 -2
  1280. package/dist/domain/projections/snap-utils.d.ts +1 -2
  1281. package/dist/domain/projections/snapping-projections.d.ts +1 -1
  1282. package/dist/domain/projections/validation-projections.d.ts +3 -20
  1283. package/dist/domain/projections/validation-projections.js +1 -1
  1284. package/dist/domain/sketching/sketching-projections.d.ts +1 -1
  1285. package/dist/domain/system-components/admin-sidebar.d.ts +1 -1
  1286. package/dist/domain/system-components/admin-sidebar.js +1 -1
  1287. package/dist/domain/system-components/angle-dimension.js +1 -1
  1288. package/dist/domain/system-components/application-config.d.ts +3 -3
  1289. package/dist/domain/system-components/application-config.js +1 -1
  1290. package/dist/domain/system-components/attribute-selection.js +1 -1
  1291. package/dist/domain/system-components/bounding-box-component.d.ts +1 -1
  1292. package/dist/domain/system-components/bounding-box-component.js +1 -1
  1293. package/dist/domain/system-components/bounding-sphere-component.d.ts +1 -1
  1294. package/dist/domain/system-components/bounding-sphere-component.js +1 -1
  1295. package/dist/domain/system-components/child-entity-recipes.d.ts +1 -1
  1296. package/dist/domain/system-components/child-entity-recipes.js +1 -1
  1297. package/dist/domain/system-components/child-entity-selection.d.ts +1 -2
  1298. package/dist/domain/system-components/child-entity-selection.js +1 -1
  1299. package/dist/domain/system-components/collision-box-geometry.d.ts +5 -3
  1300. package/dist/domain/system-components/collision-box-geometry.js +1 -1
  1301. package/dist/domain/system-components/collision-geometries.d.ts +1 -1
  1302. package/dist/domain/system-components/collision-geometry.d.ts +5 -3
  1303. package/dist/domain/system-components/collision-geometry.js +1 -1
  1304. package/dist/domain/system-components/collision-point-geometry.d.ts +5 -3
  1305. package/dist/domain/system-components/collision-point-geometry.js +1 -1
  1306. package/dist/domain/system-components/common/index.d.ts +0 -4
  1307. package/dist/domain/system-components/common/index.js +1 -1
  1308. package/dist/domain/system-components/common/material-override-schema.d.ts +2 -2
  1309. package/dist/domain/system-components/common/recipes.d.ts +21 -4
  1310. package/dist/domain/system-components/common/recipes.js +1 -1
  1311. package/dist/domain/system-components/common/scene-entity-control-schema.d.ts +3 -0
  1312. package/dist/domain/system-components/common/scene-entity-control-schema.js +1 -1
  1313. package/dist/domain/system-components/constraint.d.ts +11 -24
  1314. package/dist/domain/system-components/constraint.js +1 -1
  1315. package/dist/domain/system-components/create-blueprint.d.ts +1 -1
  1316. package/dist/domain/system-components/custom-scene-entity.d.ts +1 -1
  1317. package/dist/domain/system-components/custom-scene-entity.js +1 -1
  1318. package/dist/domain/system-components/detail.js +1 -1
  1319. package/dist/domain/system-components/distance-dimension-select.d.ts +1 -1
  1320. package/dist/domain/system-components/distance-dimension-select.js +1 -1
  1321. package/dist/domain/system-components/distance-dimension.d.ts +1 -1
  1322. package/dist/domain/system-components/distance-dimension.js +1 -1
  1323. package/dist/domain/system-components/drag-handle.d.ts +2 -2
  1324. package/dist/domain/system-components/drag-handle.js +1 -1
  1325. package/dist/domain/system-components/fit-entity-orthographic-camera-component.js +1 -1
  1326. package/dist/domain/system-components/fit-entity-perspective-camera-component.js +1 -1
  1327. package/dist/domain/system-components/fit-root-orthographic-camera-component.js +1 -1
  1328. package/dist/domain/system-components/fit-root-perspective-camera-component.js +1 -1
  1329. package/dist/domain/system-components/generic-dimension.d.ts +1 -1
  1330. package/dist/domain/system-components/generic-dimension.js +1 -1
  1331. package/dist/domain/system-components/hidden-entity.js +1 -1
  1332. package/dist/domain/system-components/hotspot-drag-handle.d.ts +2 -3
  1333. package/dist/domain/system-components/hotspot-drag-handle.js +1 -1
  1334. package/dist/domain/system-components/index.d.ts +0 -68
  1335. package/dist/domain/system-components/index.js +1 -1
  1336. package/dist/domain/system-components/material-override-property-transition.js +1 -1
  1337. package/dist/domain/system-components/material-override-transformer.js +1 -1
  1338. package/dist/domain/system-components/material-swatch.js +1 -1
  1339. package/dist/domain/system-components/navigation-page.js +1 -1
  1340. package/dist/domain/system-components/navigation-panel-list.js +1 -1
  1341. package/dist/domain/system-components/phoenix-entity-elements/admin-data-table-sidebar.d.ts +1 -1
  1342. package/dist/domain/system-components/phoenix-layout-elements/admin-connected-resource-page.d.ts +1 -1
  1343. package/dist/domain/system-components/phoenix-layout-elements/admin-data-table-actions.d.ts +1 -1
  1344. package/dist/domain/system-components/phoenix-layout-elements/admin-data-table-page.d.ts +1 -1
  1345. package/dist/domain/system-components/pivot-point.d.ts +1 -1
  1346. package/dist/domain/system-components/pivot-point.js +1 -1
  1347. package/dist/domain/system-components/price.js +1 -1
  1348. package/dist/domain/system-components/projected-entities.d.ts +1 -1
  1349. package/dist/domain/system-components/projected-entities.js +1 -1
  1350. package/dist/domain/system-components/replace-entity-recipes.d.ts +1 -1
  1351. package/dist/domain/system-components/replace-entity-recipes.js +1 -1
  1352. package/dist/domain/system-components/scene-entity-ambient-light.js +1 -1
  1353. package/dist/domain/system-components/scene-entity-box-object.js +1 -1
  1354. package/dist/domain/system-components/scene-entity-directional-light.js +1 -1
  1355. package/dist/domain/system-components/scene-entity-local-material-override.js +1 -1
  1356. package/dist/domain/system-components/scene-entity-material-override.d.ts +1 -1
  1357. package/dist/domain/system-components/scene-entity-material-override.js +1 -1
  1358. package/dist/domain/system-components/scene-entity-object-clip.js +1 -1
  1359. package/dist/domain/system-components/scene-entity-object-decal.js +1 -1
  1360. package/dist/domain/system-components/scene-entity-object-group.js +1 -1
  1361. package/dist/domain/system-components/scene-entity-object-local-material-override.js +1 -1
  1362. package/dist/domain/system-components/scene-entity-object-material-override.d.ts +1 -1
  1363. package/dist/domain/system-components/scene-entity-object-material-override.js +1 -1
  1364. package/dist/domain/system-components/scene-entity-object-properties.js +1 -1
  1365. package/dist/domain/system-components/scene-entity-object-remote-material-override.js +1 -1
  1366. package/dist/domain/system-components/scene-entity-object-text-decal.d.ts +1 -1
  1367. package/dist/domain/system-components/scene-entity-object-text-decal.js +1 -1
  1368. package/dist/domain/system-components/scene-entity-object-transformer.js +1 -1
  1369. package/dist/domain/system-components/scene-entity-object-transimissive-material-override.d.ts +1 -1
  1370. package/dist/domain/system-components/scene-entity-object-transimissive-material-override.js +1 -1
  1371. package/dist/domain/system-components/scene-entity-object.js +1 -1
  1372. package/dist/domain/system-components/scene-entity-point-light.js +1 -1
  1373. package/dist/domain/system-components/scene-entity-properties.js +1 -1
  1374. package/dist/domain/system-components/scene-entity-rect-area-light.js +1 -1
  1375. package/dist/domain/system-components/scene-entity-remote-material-override.js +1 -1
  1376. package/dist/domain/system-components/scene-entity-remote-object.js +1 -1
  1377. package/dist/domain/system-components/scene-entity-spot-light.js +1 -1
  1378. package/dist/domain/system-components/scene-entity-transimissive-material-override.d.ts +1 -1
  1379. package/dist/domain/system-components/scene-entity-transimissive-material-override.js +1 -1
  1380. package/dist/domain/system-components/sketching-line.d.ts +1 -1
  1381. package/dist/domain/system-components/sketching-line.js +1 -1
  1382. package/dist/domain/system-components/sketching-rectangle.d.ts +1 -1
  1383. package/dist/domain/system-components/sketching-rectangle.js +1 -1
  1384. package/dist/domain/system-components/sketching.d.ts +1 -1
  1385. package/dist/domain/system-components/sketching.js +1 -1
  1386. package/dist/domain/system-components/snap-axis.d.ts +1 -1
  1387. package/dist/domain/system-components/snap-axis.js +1 -1
  1388. package/dist/domain/system-components/snap-edge.d.ts +1 -1
  1389. package/dist/domain/system-components/snap-edge.js +1 -1
  1390. package/dist/domain/system-components/snap-plane.d.ts +1 -1
  1391. package/dist/domain/system-components/snap-plane.js +1 -1
  1392. package/dist/domain/system-components/snap-point.d.ts +1 -1
  1393. package/dist/domain/system-components/snap-point.js +1 -1
  1394. package/dist/domain/system-components/static-orthographic-camera-component.d.ts +1 -1
  1395. package/dist/domain/system-components/static-orthographic-camera-component.js +1 -1
  1396. package/dist/domain/system-components/static-perspective-camera-component.d.ts +1 -1
  1397. package/dist/domain/system-components/static-perspective-camera-component.js +1 -1
  1398. package/dist/domain/utils/eval-cache.d.ts +2 -3
  1399. package/dist/domain/utils/map-nested-object.d.ts +1 -1
  1400. package/dist/domain/utils/memo-eval.d.ts +2 -4
  1401. package/dist/editor/Editor.d.ts +7 -0
  1402. package/dist/editor/Editor.js +1 -1
  1403. package/dist/editor/domain-editors/DomainSpecContext.js +1 -1
  1404. package/dist/editor/domain-editors/apply-spec-update.d.ts +10 -2
  1405. package/dist/editor/domain-editors/apply-spec-update.js +1 -1
  1406. package/dist/editor/domain-editors/use-implementation-files.d.ts +8 -16
  1407. package/dist/editor/domain-editors/use-implementation-files.js +1 -1
  1408. package/dist/editor/mocks/CreateMockYaml.js +2 -2
  1409. package/dist/editor/mocks/EditorMockContext.d.ts +2 -0
  1410. package/dist/editor/mocks/EditorMockContext.js +1 -1
  1411. package/dist/editor/screenshot/ScreenshotHandler.js +1 -1
  1412. package/dist/globals/index.d.ts +2 -0
  1413. package/dist/i18n/locales/cs/messages.js +1 -1
  1414. package/dist/i18n/locales/da/messages.js +1 -1
  1415. package/dist/i18n/locales/de/messages.js +1 -1
  1416. package/dist/i18n/locales/de-AT/messages.js +1 -1
  1417. package/dist/i18n/locales/en/messages.js +1 -1
  1418. package/dist/i18n/locales/en-AU/messages.js +1 -1
  1419. package/dist/i18n/locales/en-GB/messages.js +1 -1
  1420. package/dist/i18n/locales/es/messages.js +1 -1
  1421. package/dist/i18n/locales/fr/messages.js +1 -1
  1422. package/dist/i18n/locales/hu/messages.js +1 -1
  1423. package/dist/i18n/locales/it/messages.js +1 -1
  1424. package/dist/i18n/locales/nl/messages.js +1 -1
  1425. package/dist/i18n/locales/pl/messages.js +1 -1
  1426. package/dist/i18n/locales/pt/messages.js +1 -1
  1427. package/dist/i18n/locales/ro/messages.js +1 -1
  1428. package/dist/i18n/locales/sk/messages.js +1 -1
  1429. package/dist/i18n/locales/tr/messages.js +1 -1
  1430. package/dist/legacy/domain-cli/gen/configurator-builder.js +30 -16
  1431. package/dist/legacy/domain-cli/gen/constant-expressions.js +1 -3
  1432. package/dist/legacy/domain-cli/gen/defaults.js +1 -7
  1433. package/dist/legacy/domain-cli/gen/implementation.js +7 -11
  1434. package/dist/legacy/domain-cli/gen/invariants.js +7 -6
  1435. package/dist/legacy/domain-cli/gen/relations.js +1 -1
  1436. package/dist/legacy/domain-cli/utils/cache.d.ts +1 -1
  1437. package/dist/legacy/domain-cli/utils/cache.js +1 -1
  1438. package/dist/legacy/domain-spec/__generated/domain-schema.d.ts +176 -148
  1439. package/dist/legacy/domain-spec/spec/domain-spec.js +1 -1
  1440. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/claude-md.d.ts +1 -1
  1441. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/cursor-rules.d.ts +1 -1
  1442. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.d.ts +1 -1
  1443. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.js +13 -0
  1444. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/domain-index.js +17 -15
  1445. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/env-example.d.ts +1 -1
  1446. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/env-example.js +4 -0
  1447. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-admin.js +18 -18
  1448. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-configurator.js +16 -15
  1449. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-admin.js +24 -24
  1450. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-configurator.js +16 -15
  1451. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/generator-shared.d.ts +7 -2
  1452. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/generator-shared.js +8 -12
  1453. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/index.d.ts +1 -1
  1454. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/index.js +1 -1
  1455. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/webhook-builders.js +7 -7
  1456. package/dist/phoenix/application-spec/application-spec-builder.d.ts +0 -2
  1457. package/dist/phoenix/application-spec/application-spec-builder.js +1 -1
  1458. package/dist/phoenix/application-spec/generate-application-spec-project.d.ts +0 -2
  1459. package/dist/phoenix/application-spec/generate-application-spec-project.js +2 -2
  1460. package/dist/phoenix/application-spec/generate-application-spec-story.js +2 -2
  1461. package/dist/phoenix/application-spec/generate-project-files.d.ts +0 -2
  1462. package/dist/phoenix/application-spec/project-files.js +1 -1
  1463. package/dist/phoenix/application-spec/resolve-deployment-data.d.ts +4 -3
  1464. package/dist/phoenix/application-spec/resolve-deployment-data.js +2 -2
  1465. package/dist/phoenix/bin.d.ts +2 -0
  1466. package/dist/phoenix/bin.js +2 -0
  1467. package/dist/phoenix/check-configs/built-in-eslint-config.d.ts +9 -0
  1468. package/dist/phoenix/check-configs/built-in-eslint-config.js +1 -0
  1469. package/dist/phoenix/check-configs/eslint-config.d.ts +10 -0
  1470. package/dist/phoenix/check-configs/eslint-config.js +1 -0
  1471. package/dist/phoenix/check-configs/index.d.ts +8 -0
  1472. package/dist/phoenix/check-configs/index.js +1 -0
  1473. package/dist/phoenix/check-configs/typescript-project.d.ts +5 -0
  1474. package/dist/phoenix/check-configs/typescript-project.js +1 -0
  1475. package/dist/phoenix/cli.d.ts +0 -1
  1476. package/dist/phoenix/cli.js +1 -2
  1477. package/dist/phoenix/commands/build.js +1 -1
  1478. package/dist/phoenix/commands/check.js +1 -1
  1479. package/dist/phoenix/commands/clean.js +1 -1
  1480. package/dist/phoenix/commands/deploy.js +2 -2
  1481. package/dist/phoenix/commands/deps/deps.d.ts +73 -0
  1482. package/dist/phoenix/commands/deps/deps.js +3 -0
  1483. package/dist/phoenix/commands/deps/index.d.ts +1 -0
  1484. package/dist/phoenix/commands/deps/index.js +1 -0
  1485. package/dist/phoenix/commands/deps/sdk-manifest.d.ts +12 -0
  1486. package/dist/phoenix/commands/deps/sdk-manifest.js +1 -0
  1487. package/dist/phoenix/commands/dev.js +5 -5
  1488. package/dist/phoenix/commands/fix.js +1 -1
  1489. package/dist/phoenix/commands/index.d.ts +1 -0
  1490. package/dist/phoenix/commands/index.js +1 -1
  1491. package/dist/phoenix/commands/init.d.ts +17 -5
  1492. package/dist/phoenix/commands/init.js +1 -1
  1493. package/dist/phoenix/commands/link.js +1 -1
  1494. package/dist/phoenix/commands/prepare-deployment-command.js +2 -2
  1495. package/dist/phoenix/commands/prepare-local-environment-command.js +1 -1
  1496. package/dist/phoenix/commands/prettier.js +1 -1
  1497. package/dist/phoenix/commands/sync.js +1 -1
  1498. package/dist/phoenix/commands/unlink.js +1 -1
  1499. package/dist/phoenix/scripts/build-admin.js +1 -1
  1500. package/dist/phoenix/services/application-spec-project-watcher.d.ts +2 -2
  1501. package/dist/phoenix/services/application-spec-project-watcher.js +3 -3
  1502. package/dist/phoenix/services/lingui.d.ts +8 -0
  1503. package/dist/phoenix/services/lingui.js +1 -1
  1504. package/dist/phoenix/services/prepare-development-environment.js +1 -1
  1505. package/dist/phoenix/services/source-archive.d.ts +1 -0
  1506. package/dist/phoenix/services/source-archive.js +1 -1
  1507. package/dist/phoenix/services/swc.js +1 -1
  1508. package/dist/phoenix/services/variant-file-session.js +1 -1
  1509. package/dist/phoenix/services/vite-config.js +1 -1
  1510. package/dist/phoenix/utils/git/index.d.ts +1 -0
  1511. package/dist/phoenix/utils/git/index.js +1 -0
  1512. package/dist/phoenix/utils/git/is-inside-git-repository.d.ts +6 -0
  1513. package/dist/phoenix/utils/git/is-inside-git-repository.js +1 -0
  1514. package/dist/phoenix/utils/index.d.ts +5 -2
  1515. package/dist/phoenix/utils/index.js +1 -1
  1516. package/dist/phoenix/utils/node-version/index.d.ts +1 -0
  1517. package/dist/phoenix/utils/node-version/index.js +1 -0
  1518. package/dist/phoenix/utils/node-version/supported-node-version.d.ts +12 -0
  1519. package/dist/phoenix/utils/node-version/supported-node-version.js +4 -0
  1520. package/dist/phoenix/utils/package-info.d.ts +0 -9
  1521. package/dist/phoenix/utils/package-info.js +1 -1
  1522. package/dist/phoenix/utils/package-manager/index.d.ts +2 -0
  1523. package/dist/phoenix/utils/package-manager/index.js +1 -0
  1524. package/dist/phoenix/utils/package-manager/package-manager-commands.d.ts +19 -0
  1525. package/dist/phoenix/utils/package-manager/package-manager-commands.js +1 -0
  1526. package/dist/phoenix/utils/package-manager/pnpm-project.d.ts +9 -0
  1527. package/dist/phoenix/utils/package-manager/pnpm-project.js +1 -0
  1528. package/dist/phoenix/utils/run-command.d.ts +11 -0
  1529. package/dist/phoenix/utils/run-command.js +1 -1
  1530. package/dist/phoenix/utils/sdk-tool/index.d.ts +1 -0
  1531. package/dist/phoenix/utils/sdk-tool/index.js +1 -0
  1532. package/dist/phoenix/utils/sdk-tool/resolve-sdk-tool-bin.d.ts +15 -0
  1533. package/dist/phoenix/utils/sdk-tool/resolve-sdk-tool-bin.js +1 -0
  1534. package/dist/react-sdk/application-runtime/common-services/analytics/analytics-service.d.ts +1 -1
  1535. package/dist/react-sdk/application-runtime/common-services/analytics/frontend-analytics.d.ts +52 -0
  1536. package/dist/react-sdk/application-runtime/common-services/analytics/frontend-analytics.js +1 -0
  1537. package/dist/react-sdk/application-runtime/common-services/analytics/index.d.ts +1 -0
  1538. package/dist/react-sdk/application-runtime/common-services/analytics/index.js +1 -1
  1539. package/dist/react-sdk/application-runtime/common-services/initialize.d.ts +2 -2
  1540. package/dist/react-sdk/application-runtime/hooks/index.d.ts +2 -0
  1541. package/dist/react-sdk/application-runtime/hooks/index.js +1 -1
  1542. package/dist/react-sdk/application-runtime/hooks/loading/index.d.ts +5 -0
  1543. package/dist/react-sdk/application-runtime/hooks/loading/index.js +1 -0
  1544. package/dist/react-sdk/application-runtime/hooks/loading/loader-host-context.d.ts +11 -0
  1545. package/dist/react-sdk/application-runtime/hooks/loading/loader-host-context.js +1 -0
  1546. package/dist/react-sdk/application-runtime/hooks/loading/use-is-awaiting-loading-phase.d.ts +8 -0
  1547. package/dist/react-sdk/application-runtime/hooks/loading/use-is-awaiting-loading-phase.js +1 -0
  1548. package/dist/react-sdk/application-runtime/hooks/loading/use-is-loader-hosted.d.ts +7 -0
  1549. package/dist/react-sdk/application-runtime/hooks/loading/use-is-loader-hosted.js +1 -0
  1550. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-actions.d.ts +9 -0
  1551. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-actions.js +1 -0
  1552. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-application.d.ts +24 -0
  1553. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-application.js +1 -0
  1554. package/dist/react-sdk/application-runtime/hooks/responsive/index.d.ts +3 -0
  1555. package/dist/react-sdk/application-runtime/hooks/responsive/index.js +1 -0
  1556. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-actions.d.ts +9 -0
  1557. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-actions.js +1 -0
  1558. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-application.d.ts +26 -0
  1559. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-application.js +1 -0
  1560. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-state.d.ts +10 -0
  1561. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-state.js +1 -0
  1562. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-store.d.ts +24 -0
  1563. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-store.js +1 -0
  1564. package/dist/react-sdk/application-runtime/hooks/use-access-service.d.ts +7 -0
  1565. package/dist/react-sdk/application-runtime/hooks/use-access-service.js +1 -1
  1566. package/dist/react-sdk/application-runtime/hooks/use-domain-application-props.d.ts +5 -2
  1567. package/dist/react-sdk/application-runtime/hooks/use-phoenix-element-slots.d.ts +2 -1
  1568. package/dist/react-sdk/application-runtime/hooks/use-spec.d.ts +1 -1
  1569. package/dist/react-sdk/application-runtime/hooks/use-web-component-readonly-sync.d.ts +4 -11
  1570. package/dist/react-sdk/application-runtime/hooks/use-web-component-readonly-sync.js +1 -1
  1571. package/dist/react-sdk/application-runtime/hooks/use-web-component.d.ts +5 -0
  1572. package/dist/react-sdk/application-runtime/hooks/use-web-component.js +1 -1
  1573. package/dist/react-sdk/application-runtime/host-properties/actions.d.ts +15 -0
  1574. package/dist/react-sdk/application-runtime/host-properties/actions.js +1 -0
  1575. package/dist/react-sdk/application-runtime/host-properties/connect-host-properties.d.ts +30 -0
  1576. package/dist/react-sdk/application-runtime/host-properties/connect-host-properties.js +1 -0
  1577. package/dist/react-sdk/application-runtime/host-properties/domain-host-properties.d.ts +7 -0
  1578. package/dist/react-sdk/application-runtime/host-properties/domain-host-properties.js +1 -0
  1579. package/dist/react-sdk/application-runtime/host-properties/host-property-descriptors.d.ts +21 -0
  1580. package/dist/react-sdk/application-runtime/host-properties/host-property-descriptors.js +1 -0
  1581. package/dist/react-sdk/application-runtime/host-properties/host-property-scopes.d.ts +42 -0
  1582. package/dist/react-sdk/application-runtime/host-properties/host-property-scopes.js +1 -0
  1583. package/dist/react-sdk/application-runtime/host-properties/index.d.ts +8 -0
  1584. package/dist/react-sdk/application-runtime/host-properties/index.js +1 -0
  1585. package/dist/react-sdk/application-runtime/host-properties/initialize.d.ts +7 -0
  1586. package/dist/react-sdk/application-runtime/host-properties/initialize.js +1 -0
  1587. package/dist/react-sdk/application-runtime/host-properties/selectors.d.ts +54 -0
  1588. package/dist/react-sdk/application-runtime/host-properties/selectors.js +1 -0
  1589. package/dist/react-sdk/application-runtime/host-properties/types.d.ts +18 -0
  1590. package/dist/react-sdk/application-runtime/host-properties/types.js +1 -0
  1591. package/dist/react-sdk/application-runtime/index.d.ts +3 -0
  1592. package/dist/react-sdk/application-runtime/integration/initialize.d.ts +7 -6
  1593. package/dist/react-sdk/application-runtime/integration/initialize.js +1 -1
  1594. package/dist/react-sdk/application-runtime/integration/selectors.d.ts +11 -2
  1595. package/dist/react-sdk/application-runtime/integration/selectors.js +1 -1
  1596. package/dist/react-sdk/application-runtime/integration/types.d.ts +5 -2
  1597. package/dist/react-sdk/application-runtime/loading/actions.d.ts +45 -0
  1598. package/dist/react-sdk/application-runtime/loading/actions.js +1 -0
  1599. package/dist/react-sdk/application-runtime/loading/index.d.ts +4 -0
  1600. package/dist/react-sdk/application-runtime/loading/index.js +1 -0
  1601. package/dist/react-sdk/application-runtime/loading/initialize.d.ts +3 -0
  1602. package/dist/react-sdk/application-runtime/loading/initialize.js +1 -0
  1603. package/dist/react-sdk/application-runtime/loading/selectors.d.ts +18 -0
  1604. package/dist/react-sdk/application-runtime/loading/selectors.js +1 -0
  1605. package/dist/react-sdk/application-runtime/loading/types.d.ts +59 -0
  1606. package/dist/react-sdk/application-runtime/loading/types.js +1 -0
  1607. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.d.ts +1 -1
  1608. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.js +1 -1
  1609. package/dist/react-sdk/application-runtime/provider/ApplicationRuntime.d.ts +6 -0
  1610. package/dist/react-sdk/application-runtime/provider/ApplicationRuntime.js +1 -1
  1611. package/dist/react-sdk/application-runtime/provider/ApplicationType.d.ts +7 -0
  1612. package/dist/react-sdk/application-runtime/provider/ApplicationType.js +1 -1
  1613. package/dist/react-sdk/application-runtime/responsive/actions.d.ts +47 -0
  1614. package/dist/react-sdk/application-runtime/responsive/actions.js +1 -0
  1615. package/dist/react-sdk/application-runtime/responsive/index.d.ts +4 -0
  1616. package/dist/react-sdk/application-runtime/responsive/index.js +1 -0
  1617. package/dist/react-sdk/application-runtime/responsive/initialize.d.ts +3 -0
  1618. package/dist/react-sdk/application-runtime/responsive/initialize.js +1 -0
  1619. package/dist/react-sdk/application-runtime/responsive/selectors.d.ts +20 -0
  1620. package/dist/react-sdk/application-runtime/responsive/selectors.js +1 -0
  1621. package/dist/react-sdk/application-runtime/responsive/types.d.ts +104 -0
  1622. package/dist/react-sdk/application-runtime/responsive/types.js +1 -0
  1623. package/dist/react-sdk/application-runtime/routing/access-service.d.ts +1 -0
  1624. package/dist/react-sdk/application-runtime/routing/routing-service.d.ts +34 -2
  1625. package/dist/react-sdk/application-runtime/routing/routing-service.js +1 -1
  1626. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.d.ts +370 -50
  1627. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.js +1 -1
  1628. package/dist/react-sdk/domain-application-context/BackendDataProvider.js +1 -1
  1629. package/dist/react-sdk/domain-application-context/DomainLifecycleBoundary.js +1 -1
  1630. package/dist/react-sdk/domain-application-context/FrontendDataProvider.js +1 -1
  1631. package/dist/react-sdk/domain-application-context/PublishedDataProvider.js +1 -1
  1632. package/dist/react-sdk/domain-context/common-hooks/index.d.ts +9 -0
  1633. package/dist/react-sdk/domain-context/common-hooks/index.js +1 -0
  1634. package/dist/react-sdk/domain-context/common-hooks/use-configuration-save-state.d.ts +23 -0
  1635. package/dist/react-sdk/domain-context/common-hooks/use-configuration-save-state.js +1 -0
  1636. package/dist/react-sdk/domain-context/common-hooks/use-configurator-messages.d.ts +41 -0
  1637. package/dist/react-sdk/domain-context/common-hooks/use-configurator-messages.js +1 -0
  1638. package/dist/react-sdk/domain-context/common-hooks/use-domain-context.d.ts +10 -9
  1639. package/dist/react-sdk/domain-context/component-hooks/index.d.ts +1 -0
  1640. package/dist/react-sdk/domain-context/component-hooks/index.js +1 -0
  1641. package/dist/react-sdk/domain-context/component-hooks/use-component.js +1 -1
  1642. package/dist/react-sdk/domain-context/entity-hooks/use-domain-entity-state.js +1 -1
  1643. package/dist/react-sdk/domain-context/entity-hooks/use-entity-price.js +1 -1
  1644. package/dist/react-sdk/domain-context/entity-hooks/use-root-entity-id.js +1 -1
  1645. package/dist/react-sdk/domain-context/entity-hooks/use-root-entity-state.js +1 -1
  1646. package/dist/react-sdk/domain-context/index.d.ts +9 -1
  1647. package/dist/react-sdk/domain-context/index.js +1 -1
  1648. package/dist/react-sdk/domain-context/system-hooks/composition-hooks.js +1 -1
  1649. package/dist/react-sdk/domain-context/system-hooks/dimension-hooks.js +1 -1
  1650. package/dist/react-sdk/domain-context/system-hooks/generate-share-link-hooks.d.ts +8 -0
  1651. package/dist/react-sdk/domain-context/system-hooks/generate-share-link-hooks.js +1 -0
  1652. package/dist/react-sdk/domain-context/system-hooks/hover-hooks.js +1 -1
  1653. package/dist/react-sdk/domain-context/system-hooks/locale-switch-hooks.d.ts +24 -0
  1654. package/dist/react-sdk/domain-context/system-hooks/locale-switch-hooks.js +1 -0
  1655. package/dist/react-sdk/domain-context/system-hooks/navigation-hooks.d.ts +11 -0
  1656. package/dist/react-sdk/domain-context/system-hooks/navigation-hooks.js +1 -1
  1657. package/dist/react-sdk/domain-context/system-hooks/selection-hooks.js +1 -1
  1658. package/dist/react-sdk/domain-context/system-hooks/share-links-hooks.d.ts +32 -0
  1659. package/dist/react-sdk/domain-context/system-hooks/share-links-hooks.js +1 -0
  1660. package/dist/react-sdk/domain-context/system-hooks/step-navigation-hooks.d.ts +57 -0
  1661. package/dist/react-sdk/domain-context/system-hooks/step-navigation-hooks.js +1 -0
  1662. package/dist/react-sdk/domain-context/system-hooks/tab-navigation-hooks.d.ts +61 -0
  1663. package/dist/react-sdk/domain-context/system-hooks/tab-navigation-hooks.js +1 -0
  1664. package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.d.ts +20 -0
  1665. package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.js +1 -0
  1666. package/dist/react-sdk/domain-controls/hooks/use-angle-dimension.d.ts +1 -1
  1667. package/dist/react-sdk/handlers/FinalizeActionRunner.d.ts +13 -0
  1668. package/dist/react-sdk/handlers/FinalizeActionRunner.js +1 -0
  1669. package/dist/react-sdk/handlers/FinalizeActionsHost.d.ts +10 -0
  1670. package/dist/react-sdk/handlers/FinalizeActionsHost.js +1 -0
  1671. package/dist/react-sdk/handlers/FinalizeActionsProvider.d.ts +11 -0
  1672. package/dist/react-sdk/handlers/FinalizeActionsProvider.js +1 -0
  1673. package/dist/react-sdk/handlers/finalize-actions-context.d.ts +6 -0
  1674. package/dist/react-sdk/handlers/finalize-actions-context.js +1 -0
  1675. package/dist/react-sdk/handlers/finalize-actions-store.d.ts +23 -0
  1676. package/dist/react-sdk/handlers/finalize-actions-store.js +1 -0
  1677. package/dist/react-sdk/handlers/index.d.ts +6 -0
  1678. package/dist/react-sdk/handlers/index.js +1 -1
  1679. package/dist/react-sdk/handlers/use-finalize-action.d.ts +32 -0
  1680. package/dist/react-sdk/handlers/use-finalize-action.js +1 -0
  1681. package/dist/react-sdk/handlers/use-finalize-actions.d.ts +53 -0
  1682. package/dist/react-sdk/handlers/use-finalize-actions.js +1 -0
  1683. package/dist/react-sdk/index.d.ts +2 -0
  1684. package/dist/react-sdk/index.js +1 -1
  1685. package/dist/react-sdk/loading-state/LoaderHost.d.ts +20 -0
  1686. package/dist/react-sdk/loading-state/LoaderHost.js +1 -0
  1687. package/dist/react-sdk/loading-state/built-in-loading-phase.d.ts +9 -0
  1688. package/dist/react-sdk/loading-state/built-in-loading-phase.js +1 -0
  1689. package/dist/react-sdk/loading-state/create-app-loader.d.ts +18 -0
  1690. package/dist/react-sdk/loading-state/create-app-loader.js +1 -0
  1691. package/dist/react-sdk/loading-state/index.d.ts +4 -2
  1692. package/dist/react-sdk/loading-state/index.js +1 -1
  1693. package/dist/react-sdk/loading-state/loading-state-hooks.d.ts +22 -0
  1694. package/dist/react-sdk/loading-state/loading-state-hooks.js +1 -0
  1695. package/dist/react-sdk/page-elements/ConfigurationNotFoundPagePropsProvider.d.ts +17 -0
  1696. package/dist/react-sdk/page-elements/ConfigurationNotFoundPagePropsProvider.js +1 -0
  1697. package/dist/react-sdk/page-elements/ConfiguratorErrorPagePropsProvider.d.ts +17 -0
  1698. package/dist/react-sdk/page-elements/ConfiguratorErrorPagePropsProvider.js +1 -0
  1699. package/dist/react-sdk/page-elements/configurator-error-page-props.d.ts +20 -0
  1700. package/dist/react-sdk/page-elements/configurator-error-page-props.js +1 -0
  1701. package/dist/react-sdk/page-elements/create-configuration-not-found-page.d.ts +15 -0
  1702. package/dist/react-sdk/page-elements/create-configuration-not-found-page.js +1 -0
  1703. package/dist/react-sdk/page-elements/create-configurator-error-page.d.ts +14 -0
  1704. package/dist/react-sdk/page-elements/create-configurator-error-page.js +1 -0
  1705. package/dist/react-sdk/page-elements/create-preset-ui.d.ts +9 -0
  1706. package/dist/react-sdk/page-elements/create-preset-ui.js +1 -0
  1707. package/dist/react-sdk/page-elements/index.d.ts +6 -0
  1708. package/dist/react-sdk/page-elements/index.js +1 -0
  1709. package/dist/react-sdk/scene-control-elements/AddEntityFabElement.d.ts +36 -0
  1710. package/dist/react-sdk/scene-control-elements/AddEntityFabElement.js +1 -0
  1711. package/dist/react-sdk/scene-control-elements/DeleteEntityFabElement.d.ts +44 -0
  1712. package/dist/react-sdk/scene-control-elements/DeleteEntityFabElement.js +1 -0
  1713. package/dist/react-sdk/scene-control-elements/NavigationHotspotElement.d.ts +38 -0
  1714. package/dist/react-sdk/scene-control-elements/NavigationHotspotElement.js +1 -0
  1715. package/dist/react-sdk/scene-control-elements/SelectionHotspotElement.d.ts +30 -0
  1716. package/dist/react-sdk/scene-control-elements/SelectionHotspotElement.js +1 -0
  1717. package/dist/react-sdk/scene-control-elements/ToolMenuFabElement.d.ts +30 -0
  1718. package/dist/react-sdk/scene-control-elements/ToolMenuFabElement.js +1 -0
  1719. package/dist/react-sdk/scene-control-elements/create-add-entity-fab.d.ts +9 -0
  1720. package/dist/react-sdk/scene-control-elements/create-add-entity-fab.js +1 -0
  1721. package/dist/react-sdk/scene-control-elements/create-delete-entity-fab.d.ts +9 -0
  1722. package/dist/react-sdk/scene-control-elements/create-delete-entity-fab.js +1 -0
  1723. package/dist/react-sdk/scene-control-elements/create-navigation-hotspot.d.ts +10 -0
  1724. package/dist/react-sdk/scene-control-elements/create-navigation-hotspot.js +1 -0
  1725. package/dist/react-sdk/scene-control-elements/create-selection-hotspot.d.ts +9 -0
  1726. package/dist/react-sdk/scene-control-elements/create-selection-hotspot.js +1 -0
  1727. package/dist/react-sdk/scene-control-elements/create-tool-menu-fab.d.ts +9 -0
  1728. package/dist/react-sdk/scene-control-elements/create-tool-menu-fab.js +1 -0
  1729. package/dist/react-sdk/scene-control-elements/index.d.ts +11 -0
  1730. package/dist/react-sdk/scene-control-elements/index.js +1 -0
  1731. package/dist/react-sdk/scene-control-elements/scene-control-tooltip-visibility.d.ts +5 -0
  1732. package/dist/react-sdk/scene-control-elements/scene-control-tooltip-visibility.js +1 -0
  1733. package/dist/react-sdk/session/NotAuthenticatedPage.d.ts +4 -0
  1734. package/dist/react-sdk/session/NotAuthenticatedPage.js +1 -1
  1735. package/dist/react-sdk/session/SessionServiceProvider.js +1 -1
  1736. package/dist/react-sdk/web-component/create-web-component.js +1 -1
  1737. package/dist/react-sdk/web-component/god-mode/god-mode-registry.d.ts +30 -0
  1738. package/dist/react-sdk/web-component/god-mode/god-mode-registry.js +1 -0
  1739. package/dist/react-sdk/web-component/god-mode/index.d.ts +1 -0
  1740. package/dist/react-sdk/web-component/god-mode/index.js +1 -0
  1741. package/dist/ui-sdk/icons/__generated/Lightbulb.d.ts +3 -0
  1742. package/dist/ui-sdk/icons/__generated/Lightbulb.js +1 -0
  1743. package/dist/ui-sdk/icons/__generated/XCircle.d.ts +3 -0
  1744. package/dist/ui-sdk/icons/__generated/XCircle.js +1 -0
  1745. package/dist/ui-sdk/icons/__generated/index.d.ts +4 -0
  1746. package/dist/ui-sdk/icons/__generated/index.js +1 -1
  1747. package/dist/ui-sdk/icons/icons-registry.js +1 -1
  1748. package/dist/ui-sdk/responsive-application/ResponsiveApplicationProvider.d.ts +9 -0
  1749. package/dist/ui-sdk/responsive-application/ResponsiveApplicationProvider.js +1 -1
  1750. package/dist/ui-sdk/responsive-application/index.d.ts +1 -0
  1751. package/dist/ui-sdk/responsive-application/responsive-state-store.d.ts +59 -0
  1752. package/dist/ui-sdk/responsive-application/responsive-state-store.js +1 -0
  1753. package/dist/ui-sdk/responsive-application/use-store-responsive-info.d.ts +7 -0
  1754. package/dist/ui-sdk/responsive-application/use-store-responsive-info.js +1 -0
  1755. package/dist/ui-sdk/theme/types.d.ts +5 -1
  1756. package/dist/webhook/builders/common.d.ts +8 -0
  1757. package/dist/webhook/builders/webhook-builder.d.ts +1 -1
  1758. package/dist/webhook/builders/webhook-builder.js +1 -1
  1759. package/package.json +58 -36
  1760. package/schema/domain-spec.json +1341 -217
  1761. package/dist/application-spec/core/eval-to-constant.d.ts +0 -14
  1762. package/dist/application-spec/generate-application/code/templates/env-ci.d.ts +0 -1
  1763. package/dist/application-spec/generate-application/code/templates/env-ci.js +0 -25
  1764. package/dist/application-spec/generate-application/code/templates/env-example.d.ts +0 -1
  1765. package/dist/application-spec/generate-application/code/templates/env-example.js +0 -90
  1766. package/dist/application-spec/generate-application/code/templates/nvmrc.d.ts +0 -1
  1767. package/dist/application-spec/generate-application/code/templates/nvmrc.js +0 -2
  1768. package/dist/application-spec/generate-application/code/templates/package-json.d.ts +0 -10
  1769. package/dist/application-spec/generate-application/code/templates/package-json.js +0 -1
  1770. package/dist/application-spec/generate-application/code/templates/prettier-ignore.d.ts +0 -1
  1771. package/dist/application-spec/generate-application/code/templates/prettier-ignore.js +0 -6
  1772. package/dist/application-spec/generate-application/code/templates/private-assets-readme.d.ts +0 -1
  1773. package/dist/application-spec/generate-application/code/templates/private-assets-readme.js +0 -24
  1774. package/dist/application-spec/generate-application/code/templates/public-assets-readme.d.ts +0 -1
  1775. package/dist/application-spec/generate-application/code/templates/public-assets-readme.js +0 -24
  1776. package/dist/application-spec/generate-application/code/templates/readme.d.ts +0 -1
  1777. package/dist/application-spec/generate-application/code/templates/readme.js +0 -23
  1778. package/dist/application-spec/generate-application/code/templates/skills/agents-md.d.ts +0 -1
  1779. package/dist/application-spec/generate-application/code/templates/skills/agents-md.js +0 -2
  1780. package/dist/application-spec/generate-application/code/templates/webhook-implementation.d.ts +0 -1
  1781. package/dist/application-spec/generate-application/code/templates/webhook-implementation.js +0 -7
  1782. package/dist/configurator/common/frontend-analytics.d.ts +0 -46
  1783. package/dist/configurator/common/frontend-analytics.js +0 -1
  1784. package/dist/configurator/ui/phoenix-layout-elements/language/use-locale-options.d.ts +0 -4
  1785. package/dist/configurator/ui/phoenix-layout-elements/language/use-locale-options.js +0 -1
  1786. package/dist/configurator/ui/phoenix-layout-elements/measurements/use-measurements-visibility.d.ts +0 -4
  1787. package/dist/configurator/ui/phoenix-layout-elements/measurements/use-measurements-visibility.js +0 -1
  1788. package/dist/domain/actions/action-factory.d.ts +0 -10
  1789. package/dist/domain/actions/prepare-action-implementations.d.ts +0 -15
  1790. package/dist/domain/actions/prepare-action-implementations.js +0 -5
  1791. package/dist/domain/application/element-registration.d.ts +0 -105
  1792. package/dist/domain/application/element-registration.js +0 -1
  1793. package/dist/domain/application/handler-registration.d.ts +0 -29
  1794. package/dist/domain/application/handler-registration.js +0 -1
  1795. package/dist/domain/application/resolve-imported-transformers.d.ts +0 -13
  1796. package/dist/domain/application/resolve-imported-transformers.js +0 -1
  1797. package/dist/domain/application/resource-builder.d.ts +0 -13
  1798. package/dist/domain/application/resource-builder.js +0 -1
  1799. package/dist/domain/components/component-reader-types.d.ts +0 -44
  1800. package/dist/domain/components/debug-state-component.d.ts +0 -14
  1801. package/dist/domain/components/debug-state-component.js +0 -1
  1802. package/dist/domain/components/domain-component-optic.d.ts +0 -76
  1803. package/dist/domain/components/domain-component-optic.js +0 -16
  1804. package/dist/domain/components/drag-state-component.d.ts +0 -16
  1805. package/dist/domain/components/drag-state-component.js +0 -1
  1806. package/dist/domain/components/export-state-component.d.ts +0 -15
  1807. package/dist/domain/components/export-state-component.js +0 -1
  1808. package/dist/domain/components/fullscreen-state-component.d.ts +0 -14
  1809. package/dist/domain/components/fullscreen-state-component.js +0 -1
  1810. package/dist/domain/components/group-components-by-entity-id-and-name.d.ts +0 -9
  1811. package/dist/domain/components/group-components-by-entity-id-and-name.js +0 -1
  1812. package/dist/domain/components/hover-state-component.d.ts +0 -14
  1813. package/dist/domain/components/hover-state-component.js +0 -1
  1814. package/dist/domain/components/index.d.ts +0 -2
  1815. package/dist/domain/components/index.js +0 -1
  1816. package/dist/domain/components/legacy-filter.d.ts +0 -513
  1817. package/dist/domain/components/navigation-state-component.d.ts +0 -15
  1818. package/dist/domain/components/navigation-state-component.js +0 -1
  1819. package/dist/domain/components/selection-state-component.d.ts +0 -14
  1820. package/dist/domain/components/selection-state-component.js +0 -1
  1821. package/dist/domain/components/system-component-builder.d.ts +0 -12
  1822. package/dist/domain/components/system-component-builder.js +0 -1
  1823. package/dist/domain/components/system-component-filter.d.ts +0 -793
  1824. package/dist/domain/components/system-virtual-entity.js +0 -1
  1825. package/dist/domain/components/tool-state-component.d.ts +0 -14
  1826. package/dist/domain/components/tool-state-component.js +0 -1
  1827. package/dist/domain/components/updates.d.ts +0 -124
  1828. package/dist/domain/components/view-state-component.d.ts +0 -14
  1829. package/dist/domain/components/view-state-component.js +0 -1
  1830. package/dist/domain/components/viewport-state-component.d.ts +0 -29
  1831. package/dist/domain/components/viewport-state-component.js +0 -1
  1832. package/dist/domain/core/action.d.ts +0 -67
  1833. package/dist/domain/core/component.d.ts +0 -46
  1834. package/dist/domain/core/expression.d.ts +0 -50
  1835. package/dist/domain/core/json-schema.js +0 -1
  1836. package/dist/domain/core/migrations.d.ts +0 -99
  1837. package/dist/domain/core/migrations.js +0 -1
  1838. package/dist/domain/core/model.d.ts +0 -127
  1839. package/dist/domain/core/reflection.d.ts +0 -114
  1840. package/dist/domain/core/reflection.js +0 -1
  1841. package/dist/domain/core/state.d.ts +0 -10
  1842. package/dist/domain/domain-context/recipe-system/recipes.d.ts +0 -57
  1843. package/dist/domain/domain-context/recipe-system/recipes.js +0 -1
  1844. package/dist/domain/expressions/constant-expressions.d.ts +0 -9
  1845. package/dist/domain/expressions/constant-expressions.js +0 -1
  1846. package/dist/domain/expressions/custom-expression.d.ts +0 -13
  1847. package/dist/domain/expressions/custom-expression.js +0 -1
  1848. package/dist/domain/expressions/index.d.ts +0 -1
  1849. package/dist/domain/expressions/index.js +0 -1
  1850. package/dist/domain/expressions/memoize-expression.d.ts +0 -17
  1851. package/dist/domain/expressions/prepare-domain-expressions.d.ts +0 -16
  1852. package/dist/domain/invariants/builtin-invariant.d.ts +0 -5
  1853. package/dist/domain/invariants/custom-invariants.d.ts +0 -22
  1854. package/dist/domain/invariants/custom-invariants.js +0 -1
  1855. package/dist/domain/invariants/invariants.d.ts +0 -68
  1856. package/dist/domain/invariants/invariants.js +0 -1
  1857. package/dist/domain/invariants/violation-component.js +0 -1
  1858. package/dist/domain/invariants/violation.d.ts +0 -85
  1859. package/dist/domain/invariants/violation.js +0 -1
  1860. package/dist/domain/relations/all-of-type-relation.d.ts +0 -33
  1861. package/dist/domain/relations/all-of-type-relation.js +0 -1
  1862. package/dist/domain/relations/component-factories.d.ts +0 -15
  1863. package/dist/domain/relations/component-factories.js +0 -1
  1864. package/dist/domain/relations/composed-of.d.ts +0 -12
  1865. package/dist/domain/relations/composed-of.js +0 -1
  1866. package/dist/domain/relations/direct-relation.d.ts +0 -29
  1867. package/dist/domain/relations/indirect-relation.d.ts +0 -81
  1868. package/dist/domain/relations/indirect-relation.js +0 -1
  1869. package/dist/domain/relations/reference-component.d.ts +0 -18
  1870. package/dist/domain/relations/reference-component.js +0 -1
  1871. package/dist/domain/relations/reference-field.d.ts +0 -7
  1872. package/dist/domain/relations/relation-factory.d.ts +0 -19
  1873. package/dist/domain/relations/relation-factory.js +0 -1
  1874. package/dist/domain/relations/relation-implementation.d.ts +0 -8
  1875. package/dist/domain/system-components/angle-indicator.d.ts +0 -21
  1876. package/dist/domain/system-components/angle-indicator.js +0 -1
  1877. package/dist/domain/system-components/attribute-switch.d.ts +0 -8
  1878. package/dist/domain/system-components/attribute-switch.js +0 -1
  1879. package/dist/domain/system-components/autorotate-camera-component.d.ts +0 -19
  1880. package/dist/domain/system-components/autorotate-camera-component.js +0 -1
  1881. package/dist/domain/system-components/basic-sidebar-footer.d.ts +0 -8
  1882. package/dist/domain/system-components/basic-sidebar-footer.js +0 -1
  1883. package/dist/domain/system-components/camera-based-hidden-entity-object.js +0 -1
  1884. package/dist/domain/system-components/camera-based-hidden-entity.js +0 -1
  1885. package/dist/domain/system-components/canvas-config.d.ts +0 -87
  1886. package/dist/domain/system-components/canvas-config.js +0 -1
  1887. package/dist/domain/system-components/canvas-custom-environment.js +0 -1
  1888. package/dist/domain/system-components/canvas-padding.d.ts +0 -25
  1889. package/dist/domain/system-components/canvas-padding.js +0 -1
  1890. package/dist/domain/system-components/canvas-preset-environment.d.ts +0 -37
  1891. package/dist/domain/system-components/canvas-preset-environment.js +0 -1
  1892. package/dist/domain/system-components/child-entity-recipe-hierarchy.d.ts +0 -21
  1893. package/dist/domain/system-components/child-entity-recipe-hierarchy.js +0 -1
  1894. package/dist/domain/system-components/client-side-image.d.ts +0 -14
  1895. package/dist/domain/system-components/client-side-image.js +0 -1
  1896. package/dist/domain/system-components/color-value.js +0 -1
  1897. package/dist/domain/system-components/common/angle-indicator-schema.d.ts +0 -292
  1898. package/dist/domain/system-components/common/angle-indicator-schema.js +0 -1
  1899. package/dist/domain/system-components/common/dimension-indicator-schema.d.ts +0 -607
  1900. package/dist/domain/system-components/common/dimension-indicator-schema.js +0 -1
  1901. package/dist/domain/system-components/custom-header.d.ts +0 -11
  1902. package/dist/domain/system-components/custom-header.js +0 -1
  1903. package/dist/domain/system-components/custom-price-footer.js +0 -1
  1904. package/dist/domain/system-components/custom-sidebar-footer.d.ts +0 -11
  1905. package/dist/domain/system-components/custom-sidebar-footer.js +0 -1
  1906. package/dist/domain/system-components/dimension-indicator.d.ts +0 -31
  1907. package/dist/domain/system-components/dimension-indicator.js +0 -1
  1908. package/dist/domain/system-components/editable-angle-indicator.d.ts +0 -38
  1909. package/dist/domain/system-components/editable-angle-indicator.js +0 -1
  1910. package/dist/domain/system-components/editable-distance-dimension-indicator.d.ts +0 -42
  1911. package/dist/domain/system-components/editable-distance-dimension-indicator.js +0 -1
  1912. package/dist/domain/system-components/editable-offset-indicator.d.ts +0 -41
  1913. package/dist/domain/system-components/editable-offset-indicator.js +0 -1
  1914. package/dist/domain/system-components/editable-size-indicator.d.ts +0 -38
  1915. package/dist/domain/system-components/editable-size-indicator.js +0 -1
  1916. package/dist/domain/system-components/entity-header.d.ts +0 -22
  1917. package/dist/domain/system-components/entity-header.js +0 -1
  1918. package/dist/domain/system-components/exit-tool-mode-fab.d.ts +0 -25
  1919. package/dist/domain/system-components/exit-tool-mode-fab.js +0 -1
  1920. package/dist/domain/system-components/finalize-action.d.ts +0 -20
  1921. package/dist/domain/system-components/finalize-action.js +0 -1
  1922. package/dist/domain/system-components/finalize-component.js +0 -1
  1923. package/dist/domain/system-components/fit-selection-orthographic-camera-component.js +0 -1
  1924. package/dist/domain/system-components/fit-selection-perspective-camera-component.js +0 -1
  1925. package/dist/domain/system-components/fixed-header.d.ts +0 -10
  1926. package/dist/domain/system-components/fixed-header.js +0 -1
  1927. package/dist/domain/system-components/floating-header.d.ts +0 -10
  1928. package/dist/domain/system-components/floating-header.js +0 -1
  1929. package/dist/domain/system-components/hidden-header.d.ts +0 -8
  1930. package/dist/domain/system-components/hidden-header.js +0 -1
  1931. package/dist/domain/system-components/hidden-sidebar-footer.d.ts +0 -21
  1932. package/dist/domain/system-components/hidden-sidebar-footer.js +0 -1
  1933. package/dist/domain/system-components/horizontal-tabs.d.ts +0 -28
  1934. package/dist/domain/system-components/horizontal-tabs.js +0 -1
  1935. package/dist/domain/system-components/list-selector-dimension-indicator.d.ts +0 -30
  1936. package/dist/domain/system-components/list-selector-dimension-indicator.js +0 -1
  1937. package/dist/domain/system-components/multilingual-text-value.js +0 -1
  1938. package/dist/domain/system-components/navigation-steps.d.ts +0 -19
  1939. package/dist/domain/system-components/navigation-steps.js +0 -1
  1940. package/dist/domain/system-components/offset-anchors.d.ts +0 -20
  1941. package/dist/domain/system-components/offset-anchors.js +0 -1
  1942. package/dist/domain/system-components/offset-indicator.d.ts +0 -84
  1943. package/dist/domain/system-components/offset-indicator.js +0 -1
  1944. package/dist/domain/system-components/offset.d.ts +0 -31
  1945. package/dist/domain/system-components/offset.js +0 -1
  1946. package/dist/domain/system-components/other-action.d.ts +0 -14
  1947. package/dist/domain/system-components/other-action.js +0 -1
  1948. package/dist/domain/system-components/property-page.d.ts +0 -16
  1949. package/dist/domain/system-components/property-page.js +0 -1
  1950. package/dist/domain/system-components/read-sidebar-footer.d.ts +0 -8
  1951. package/dist/domain/system-components/read-sidebar-footer.js +0 -1
  1952. package/dist/domain/system-components/replace-entity-recipe-hierarchy.d.ts +0 -21
  1953. package/dist/domain/system-components/replace-entity-recipe-hierarchy.js +0 -1
  1954. package/dist/domain/system-components/rotatable.js +0 -1
  1955. package/dist/domain/system-components/rotation-handle.d.ts +0 -53
  1956. package/dist/domain/system-components/rotation-handle.js +0 -1
  1957. package/dist/domain/system-components/save-template-thumbnail.d.ts +0 -14
  1958. package/dist/domain/system-components/save-template-thumbnail.js +0 -1
  1959. package/dist/domain/system-components/scene-entity-add-fab.d.ts +0 -32
  1960. package/dist/domain/system-components/scene-entity-add-fab.js +0 -1
  1961. package/dist/domain/system-components/scene-entity-animation.js +0 -1
  1962. package/dist/domain/system-components/scene-entity-control.js +0 -1
  1963. package/dist/domain/system-components/scene-entity-delete-fab.d.ts +0 -19
  1964. package/dist/domain/system-components/scene-entity-delete-fab.js +0 -1
  1965. package/dist/domain/system-components/scene-entity-floor-object.js +0 -1
  1966. package/dist/domain/system-components/scene-entity-html-hotspot.d.ts +0 -27
  1967. package/dist/domain/system-components/scene-entity-html-hotspot.js +0 -1
  1968. package/dist/domain/system-components/scene-entity-navigation-hotspot.d.ts +0 -20
  1969. package/dist/domain/system-components/scene-entity-navigation-hotspot.js +0 -1
  1970. package/dist/domain/system-components/scene-entity-object-html-hotspot.d.ts +0 -31
  1971. package/dist/domain/system-components/scene-entity-object-html-hotspot.js +0 -1
  1972. package/dist/domain/system-components/scene-entity-select-hotspot.d.ts +0 -5
  1973. package/dist/domain/system-components/scene-entity-select-hotspot.js +0 -1
  1974. package/dist/domain/system-components/scene-entity-wall-object.js +0 -1
  1975. package/dist/domain/system-components/selectable-component.js +0 -1
  1976. package/dist/domain/system-components/sidebar-tabs.d.ts +0 -29
  1977. package/dist/domain/system-components/sidebar-tabs.js +0 -1
  1978. package/dist/domain/system-components/simple-summary.js +0 -1
  1979. package/dist/domain/system-components/size.d.ts +0 -21
  1980. package/dist/domain/system-components/size.js +0 -1
  1981. package/dist/domain/system-components/sketching-draw.d.ts +0 -17
  1982. package/dist/domain/system-components/sketching-draw.js +0 -1
  1983. package/dist/domain/system-components/sketching-edit.d.ts +0 -28
  1984. package/dist/domain/system-components/sketching-edit.js +0 -1
  1985. package/dist/domain/system-components/summary-component.js +0 -1
  1986. package/dist/domain/system-components/text-value.js +0 -1
  1987. package/dist/domain/system-components/tool-controls.js +0 -1
  1988. package/dist/domain/system-components/tool-menu-fab.d.ts +0 -40
  1989. package/dist/domain/system-components/tool-menu-fab.js +0 -1
  1990. package/dist/domain/system-components/toolbar.d.ts +0 -13
  1991. package/dist/domain/system-components/toolbar.js +0 -1
  1992. package/dist/domain/system-components/universal-sidebar-footer.d.ts +0 -12
  1993. package/dist/domain/system-components/universal-sidebar-footer.js +0 -1
  1994. package/dist/domain/system-components/view-controls.js +0 -1
  1995. package/dist/phoenix/application-spec/generate-assistant-prompt.d.ts +0 -13
  1996. package/dist/phoenix/application-spec/generate-assistant-prompt.js +0 -1
  1997. package/dist/phoenix/commands/generate-project-files.d.ts +0 -6
  1998. package/dist/phoenix/commands/generate-project-files.js +0 -1
  1999. package/dist/react-sdk/application-runtime/runtime/god-mode.d.ts +0 -19
  2000. package/dist/react-sdk/application-runtime/runtime/god-mode.js +0 -1
  2001. package/dist/react-sdk/loading-state/LoadingStateProvider.d.ts +0 -31
  2002. package/dist/react-sdk/loading-state/LoadingStateProvider.js +0 -1
  2003. package/dist/react-sdk/loading-state/loading-state-manager.d.ts +0 -32
  2004. package/dist/react-sdk/loading-state/loading-state-manager.js +0 -1
  2005. /package/dist/{domain/components/component-reader-types.js → application-spec/core/expressions/relation-expression-params.js} +0 -0
  2006. /package/dist/application-spec/{core → enhanced-json}/eval-code-uses-self.d.ts +0 -0
  2007. /package/dist/application-spec/{core → enhanced-json}/eval-code-uses-self.js +0 -0
  2008. /package/dist/application-spec/{core → enhanced-json}/eval-to-constant.js +0 -0
  2009. /package/dist/{domain/core/action.js → application-spec/generate-application/runtime/spec-code/spec-code-module.js} +0 -0
  2010. /package/dist/{domain/core/enhanced-json-schema.js → application-spec/parse-application-files/spec/expressions/expression-read.js} +0 -0
  2011. /package/dist/{domain/core/schema-validator.js → configurator/ui/assistant/form/form-model.js} +0 -0
  2012. /package/dist/{domain/relations/reference-field.js → configurator/ui/assistant/form/form-state.js} +0 -0
  2013. /package/dist/{domain/core/expression.js → configurator/ui/assistant/form-elements/form-element-props.js} +0 -0
  2014. /package/dist/domain/{relations/relation-implementation.js → application/assistant/assistant-manifest.js} +0 -0
  2015. /package/dist/domain/{actions → core/action}/action-factory.js +0 -0
  2016. /package/dist/domain/{components → core/component}/legacy-filter.js +0 -0
  2017. /package/dist/domain/{components → core/component}/system-component-filter.js +0 -0
  2018. /package/dist/domain/{components → core/component}/system-virtual-entity.d.ts +0 -0
  2019. /package/dist/domain/{components → core/component}/updates.js +0 -0
  2020. /package/dist/domain/{invariants → core/invariant}/builtin-invariant.js +0 -0
  2021. /package/dist/domain/{invariants → core/invariant}/violation-component.d.ts +0 -0
  2022. /package/dist/domain/core/{alias.d.ts → model/alias.d.ts} +0 -0
  2023. /package/dist/domain/core/{alias.js → model/alias.js} +0 -0
  2024. /package/dist/domain/core/{common-definitions.d.ts → model/common-definitions.d.ts} +0 -0
  2025. /package/dist/domain/core/{common-definitions.js → model/common-definitions.js} +0 -0
  2026. /package/dist/domain/core/{component.js → model/component.js} +0 -0
  2027. /package/dist/domain/core/{model.js → model/model.js} +0 -0
  2028. /package/dist/domain/core/{preset.d.ts → model/preset.d.ts} +0 -0
  2029. /package/dist/domain/core/{preset.js → model/preset.js} +0 -0
  2030. /package/dist/domain/{relations → core/relation}/direct-relation.js +0 -0
  2031. /package/dist/domain/core/{schema-validator-ajv.d.ts → schema/create-ajv-schema-validator.d.ts} +0 -0
  2032. /package/dist/domain/core/{schema-validator-ajv.js → schema/create-ajv-schema-validator.js} +0 -0
  2033. /package/dist/domain/core/{schema-validator-csp.d.ts → schema/create-csp-schema-validator.d.ts} +0 -0
  2034. /package/dist/domain/core/{schema-validator-csp.js → schema/create-csp-schema-validator.js} +0 -0
  2035. /package/dist/domain/core/{enhanced-json-schema.d.ts → schema/enhanced-json-schema.d.ts} +0 -0
  2036. /package/dist/domain/core/{json-schema.d.ts → schema/extended-schema-validator.d.ts} +0 -0
  2037. /package/dist/domain/core/{schema-validator.d.ts → schema/schema-validator.d.ts} +0 -0
  2038. /package/dist/domain/core/{state.js → state/state.js} +0 -0
  2039. /package/dist/domain/{expressions → domain-runtime/spec}/memoize-expression.js +0 -0
  2040. /package/dist/domain/{expressions → domain-runtime/spec}/prepare-domain-expressions.js +0 -0
  2041. /package/dist/domain/{system-components → extensions}/camera-based-hidden-entity-object.d.ts +0 -0
  2042. /package/dist/domain/{system-components → extensions}/camera-based-hidden-entity.d.ts +0 -0
  2043. /package/dist/domain/{system-components → extensions}/canvas-custom-environment.d.ts +0 -0
  2044. /package/dist/domain/{system-components → extensions}/color-value.d.ts +0 -0
  2045. /package/dist/domain/{system-components → extensions}/common/dimension-indicators.d.ts +0 -0
  2046. /package/dist/domain/{system-components → extensions}/common/dimension-indicators.js +0 -0
  2047. /package/dist/domain/{system-components → extensions}/common/editable-indicator-button-variant.d.ts +0 -0
  2048. /package/dist/domain/{system-components → extensions}/common/editable-indicator-button-variant.js +0 -0
  2049. /package/dist/domain/{system-components → extensions}/custom-price-footer.d.ts +0 -0
  2050. /package/dist/domain/{system-components → extensions}/finalize-component.d.ts +0 -0
  2051. /package/dist/domain/{system-components → extensions}/fit-selection-orthographic-camera-component.d.ts +0 -0
  2052. /package/dist/domain/{system-components → extensions}/fit-selection-perspective-camera-component.d.ts +0 -0
  2053. /package/dist/domain/{system-components → extensions}/multilingual-text-value.d.ts +0 -0
  2054. /package/dist/domain/{system-components → extensions}/rotatable.d.ts +0 -0
  2055. /package/dist/domain/{system-components → extensions}/scene-entity-animation.d.ts +0 -0
  2056. /package/dist/domain/{system-components → extensions}/scene-entity-control.d.ts +0 -0
  2057. /package/dist/domain/{system-components → extensions}/scene-entity-floor-object.d.ts +0 -0
  2058. /package/dist/domain/{system-components → extensions}/scene-entity-wall-object.d.ts +0 -0
  2059. /package/dist/domain/{system-components → extensions}/selectable-component.d.ts +0 -0
  2060. /package/dist/domain/{system-components → extensions}/simple-summary.d.ts +0 -0
  2061. /package/dist/domain/{system-components → extensions}/summary-component.d.ts +0 -0
  2062. /package/dist/domain/{system-components → extensions}/text-value.d.ts +0 -0
  2063. /package/dist/domain/{system-components → extensions}/tool-controls.d.ts +0 -0
  2064. /package/dist/domain/{system-components → extensions}/view-controls.d.ts +0 -0
@@ -1 +1 @@
1
- import{existsSync as e}from"fs";import{mkdir as n,readFile as t,writeFile as i}from"fs/promises";import{basename as o,dirname as r,join as p}from"path";import{ensureWorkspaceInstallSettings as a}from"../utils/index.js";import{starterSpecFiles as s}from"./init-starter-spec.js";let c="@salsita-ai/sdk",l=async e=>{let n=`Install the SDK first (\`pnpm add ${c}\`), then rerun \`pnpm phoenix init\`.`,i=JSON.parse(await t(e,"utf-8"));if("object"!=typeof i||null===i||Array.isArray(i))throw Error(`phoenix init could not read package.json because it is not a JSON object. ${n}`);if(!["dependencies","devDependencies"].some(e=>{let n=Reflect.get(i,e);return"object"==typeof n&&null!==n&&c in n}))throw Error(`phoenix init found no ${c} dependency in package.json. ${n}`);return{...i}},d=async e=>{for(let t of s){let o=p(e,t.path);await n(r(o),{recursive:!0}),await i(o,t.content)}},m=async(e,n)=>{let t=n.phoenix;await i(e,JSON.stringify({...n,phoenix:{..."object"==typeof t&&null!==t?t:{},applicationFlow:!0}},null,2)+"\n")};export const runInitCommand=async(t,{logger:i})=>{var r,s;let f,u=t.projectRoot??process.cwd(),h=p(u,"package.json");if(e(p(u,"spec")))throw Error("phoenix init found an existing spec/ folder. init only starts new projects, and writing a starter spec would overwrite or mix with the existing one. To update an existing project, run `pnpm phoenix sync`; to start over, run init in an empty project folder.");let w=e(h)?await l(h):(r=u,s=t.sdkVersion,{name:(f=o(r).toLowerCase().replace(/[^a-z0-9._-]+/g,"-").replace(/^[._-]+|[-]+$/g,"")).length>0?f:"phoenix-configurator",private:!0,type:"module",dependencies:{[c]:s},devDependencies:{"@lingui/cli":"5.9.5","@lingui/swc-plugin":"5.11.0"}});i.step(`Writing the starter project to ${u}`),await n(u,{recursive:!0}),await d(u),await m(h,w),a(u),i.success(`Phoenix project created in ${u}.`),i.info("\nNext steps, in the project folder:\n pnpm install\n pnpm phoenix sync\n pnpm phoenix login <workspace>\n pnpm phoenix dev\n pnpm phoenix deploy\n\nDeveloping against a Studio development environment instead? Paste its .env block into .env before phoenix dev.")};
1
+ import{existsSync as e}from"fs";import{mkdir as t,readFile as i,writeFile as n}from"fs/promises";import{basename as o,dirname as r,join as a}from"path";import{findPackageManagerCommands as s}from"../utils/index.js";import{addMissingDependencies as p,addMissingSdkPeers as c}from"./deps/index.js";import{starterSpecFiles as d}from"./init-starter-spec.js";let l="@salsita-ai/sdk",h={dev:"phoenix dev",build:"phoenix build",deploy:"phoenix deploy",check:"phoenix check",fix:"phoenix fix"},f=(e,t)=>void 0===e?`\`phoenix ${t}\` through your package manager`:`\`${e.phoenix(t)}\``,u=async(e,t)=>{let n=void 0===t?`add ${l} with your package manager`:`\`${t.add(l)}\``,o=`Install the SDK first (${n}), then rerun ${f(t,"init")}.`,r=JSON.parse(await i(e,"utf-8"));if("object"!=typeof r||null===r||Array.isArray(r))throw Error(`phoenix init could not read package.json because it is not a JSON object. ${o}`);if(!["dependencies","devDependencies"].some(e=>{let t=Reflect.get(r,e);return"object"==typeof t&&null!==t&&l in t}))throw Error(`phoenix init found no ${l} dependency in package.json. ${o}`);return{...r}},m=async e=>{for(let i of d){let o=a(e,i.path);await t(r(o),{recursive:!0}),await n(o,i.content)}},x=async(e,t,i)=>{let o=t.phoenix,r=t.scripts,a="object"==typeof r&&null!==r?r:{},s=Object.fromEntries(Object.entries(h).filter(([e])=>!(e in a))),d=p(c({...t,scripts:{...a,...s}},{useClerk:!1}),Object.entries(i).map(([e,t])=>({name:e,version:t,field:"devDependencies"})));await n(e,JSON.stringify({...d,phoenix:{..."object"==typeof o&&null!==o?o:{},applicationFlow:!0}},null,2)+"\n")};export const runInitCommand=async(i,{logger:n})=>{var r,p;let c,d,h=i.projectRoot??process.cwd(),g=a(h,"package.json"),j=s(process.env.npm_config_user_agent);if(e(a(h,"spec")))throw Error(`phoenix init found an existing spec/ folder. init only starts new projects, and writing a starter spec would overwrite or mix with the existing one. To update an existing project, run ${f(j,"sync")}; to start over, run init in an empty project folder.`);let y=e(g)?await u(g,j):(r=h,p=i.sdkVersion,{name:(c=o(r).toLowerCase().replace(/[^a-z0-9._-]+/g,"-").replace(/^[._-]+|[-]+$/g,"")).length>0?c:"phoenix-configurator",private:!0,type:"module",scripts:{},dependencies:{[l]:p}});n.step(`Writing the starter project to ${h}`),await t(h,{recursive:!0}),await m(h),await x(g,y,i.editorToolVersions),n.success(`Phoenix project created in ${h}.`),n.info(["",...(d=["sync","login <workspace>","dev","deploy"],void 0===j?["Next steps, in the project folder, through your package manager:"," install the dependencies",...d.map(e=>` phoenix ${e}`)]:["Next steps, in the project folder:",` ${j.install}`,...d.map(e=>` ${j.phoenix(e)}`)]),"","Developing against a Studio development environment instead? Paste its .env block into .env before phoenix dev."].join("\n"))};
@@ -1 +1 @@
1
- import{relative as e,resolve as t}from"path";import{addWorkspaceOverrides as a,getSdkPackages as i,getWorkspaceDir as n,runCommand as o}from"../utils/index.js";export const runLinkCommand=async(s,r)=>{let{logger:c}=r,l=s.sdkPath??"../configurator-phoenix";try{c.step("Linking local SDK packages");let s=t(l);c.debug(`SDK path: ${s}`);let r=i(s);c.debug(`Found ${r.length} packages to link`);let p=n(),g={};r.forEach(({name:t,path:a})=>{let i=e(p,a);g[t]=`file:${i}`,c.debug(` ${t} -> ${i}`)}),a(g),c.success(`Linked ${r.length} SDK packages`),await o({command:"pnpm",args:["install","--config.optimistic-repeat-install=false"],description:"Installing packages",quiet:!0},{logger:c}),c.info("\nNext step:"),c.info(" Run: phoenix dev")}catch(e){throw c.error(`Failed to link SDK packages: ${e instanceof Error?e.message:String(e)}. The SDK path must contain a packages/libs directory. Use --sdk-path flag to specify correct SDK location.`,e),e}};
1
+ import{relative as e,resolve as t}from"path";import{addWorkspaceOverrides as o,assertPnpmProject as r,getSdkPackages as a,getWorkspaceDir as n}from"../utils/index.js";export const runLinkCommand=async(s,i)=>{let{logger:c}=i,l=s.sdkPath??"../configurator-phoenix";try{r({projectRoot:process.cwd(),command:"link"})}catch(e){throw c.error(e instanceof Error?e.message:String(e)),e}try{c.step("Linking local SDK packages");let r=t(l);c.debug(`SDK path: ${r}`);let s=a(r);c.debug(`Found ${s.length} packages to link`);let i=n(),p={};s.forEach(({name:t,path:o})=>{let r=e(i,o);p[t]=`file:${r}`,c.debug(` ${t} -> ${r}`)}),o(p),c.success(`Linked ${s.length} SDK packages`),c.info("\nNext steps:\n pnpm install --config.optimistic-repeat-install=false\n phoenix dev")}catch(e){throw c.error(`Failed to link SDK packages: ${e instanceof Error?e.message:String(e)}. The SDK path must contain a packages/libs directory. Use --sdk-path flag to specify correct SDK location.`,e),e}};
@@ -1,2 +1,2 @@
1
- import{writeFile as e}from"fs/promises";import{createApiBaseClient as a}from"#package/client";import{resolveApplicationSpecDeploymentData as r}from"../application-spec/index.js";import{formatEnvContent as t,formatEnvLine as i}from"../utils/index.js";export const runPrepareDeploymentCommand=async(s,n)=>{let{logger:o}=n;try{o.step("Preparing deployment");let{apiKey:n,projectKey:l,projectSlug:p,projectRef:c,projectSha:m,environmentSlug:d,outFile:h,skipUpload:u,overrideSchema:f,uploadLinksFile:g,serverUrl:v}=s;o.info(`Preparing deployment for project "${p}", environment "${d}"`);let b=a(v);o.debug(`Using server URL: ${v}`);let y=await r({skipUpload:u,logger:o});if(y.assistant){let{sdl:e,prompt:a,instructions:r}=y.assistant,t=a.length+e.length+(r?.length??0);o.info(`Assistant GraphQL schema:
2
- ${e}`),o.info(`Assistant prompt of this deployment (generated prompt, schema and instructions): ${t} characters`)}o.info("Preparing deployment on server...");let{data:w,error:F}=await b.POST("/environments/prepare",{body:{projectSlug:p,environmentSlug:d,applicationVersion:y.applicationVersion,projectRef:c,projectSha:m,publishedDataHash:y.publishedDataHash,useAuthHook:y.useAuthHook,overrideSchema:f,configurationSchema:{version:y.schemaVersion,schema:y.schema},adminConfigurationSchema:y.adminSchema?{schema:y.adminSchema,version:y.adminSchemaVersion}:void 0,chat:y.chat,embeddings:y.embeddings,assistant:y.assistant,acl:{canCreate:y.aclCanCreate},privateFiles:[...y.assets.privateFilePaths],publicFiles:[...y.assets.publicFilePaths]},headers:{"x-api-key":n,"x-project-key":l,"x-project-slug":p}});if(F)throw Error(`Failed to prepare deployment with server: ${F.message}`);if(!w)throw Error("No data returned from server");o.debug("Deployment prepared on server");let{baseDomain:S,isCustomDomain:P}=w,U=w.environmentVariables,k=w.privateUploadUrls,$=w.publicUploadUrls;if(!U||!k||!$)throw Error("Incomplete data returned from server");try{let a=[t(U),i("BASE_DOMAIN",String(S)),i("IS_CUSTOM_DOMAIN",String(P))].join("\n");await e(h,a+"\n"),o.debug(`Environment variables written to ${h}`)}catch(e){throw Error("Failed to write environment variables to file")}try{if(u)await e(g,JSON.stringify({privateFiles:[],publicFiles:[]},null,2)),o.debug("Upload links file cleared (upload was skipped)");else{let a={privateFiles:[...y.assets.privateFilesFullPaths].map(e=>({localPath:e,uploadUrl:k[e.replace(/^assets\/private\//,"")]})),publicFiles:[...y.assets.publicFilesFullPaths].map(e=>({localPath:e,uploadUrl:$[e.replace(/^assets\/public\//,"")]}))};await e(g,JSON.stringify(a,null,2)),o.debug(`Upload links written to ${g}`),o.info('Run "finish" command to upload files and activate the deployment')}}catch(e){throw Error("Failed to write upload links to file")}o.success("Deployment prepared successfully!")}catch(e){o.error(`Deployment preparation failed: ${e instanceof Error?e.message:String(e)}`,e),process.exit(1)}};
1
+ import{writeFile as e}from"fs/promises";import{createApiBaseClient as t}from"#package/client";import{resolveApplicationSpecDeploymentData as a}from"../application-spec/index.js";import{formatEnvContent as r,formatEnvLine as i}from"../utils/index.js";export const runPrepareDeploymentCommand=async(s,n)=>{let{logger:o}=n;try{o.step("Preparing deployment");let{apiKey:n,projectKey:l,projectSlug:p,projectRef:c,projectSha:m,environmentSlug:d,outFile:h,skipUpload:u,overrideSchema:f,uploadLinksFile:g,serverUrl:v}=s;o.info(`Preparing deployment for project "${p}", environment "${d}"`);let b=t(v);o.debug(`Using server URL: ${v}`);let y=await a({skipUpload:u,logger:o});if(y.assistantSetup){let{sdl:e,prompt:t,instructions:a}=y.assistantSetup,r=t.length+e.length+(a?.length??0);o.info(`Assistant GraphQL schema:
2
+ ${e}`),o.info(`Assistant prompt of this deployment (generated prompt, schema and instructions): ${r} characters`)}o.info("Preparing deployment on server...");let{data:w,error:S}=await b.POST("/environments/prepare",{body:{projectSlug:p,environmentSlug:d,applicationVersion:y.applicationVersion,projectRef:c,projectSha:m,publishedDataHash:y.publishedDataHash,useAuthHook:y.useAuthHook,overrideSchema:f,configurationSchema:{version:y.schemaVersion,schema:y.schema},adminConfigurationSchema:y.adminSchema?{schema:y.adminSchema,version:y.adminSchemaVersion}:void 0,chat:y.chat,embeddings:y.embeddings,...y.assistant?{assistant:!0}:{},acl:{canCreate:y.aclCanCreate},privateFiles:[...y.assets.privateFilePaths],publicFiles:[...y.assets.publicFilePaths]},headers:{"x-api-key":n,"x-project-key":l,"x-project-slug":p}});if(S)throw Error(`Failed to prepare deployment with server: ${S.message}`);if(!w)throw Error("No data returned from server");o.debug("Deployment prepared on server");let{baseDomain:F,isCustomDomain:P}=w,U=w.environmentVariables,k=w.privateUploadUrls,$=w.publicUploadUrls;if(!U||!k||!$)throw Error("Incomplete data returned from server");try{let t=[r(U),i("BASE_DOMAIN",String(F)),i("IS_CUSTOM_DOMAIN",String(P))].join("\n");await e(h,t+"\n"),o.debug(`Environment variables written to ${h}`)}catch(e){throw Error("Failed to write environment variables to file")}try{if(u)await e(g,JSON.stringify({privateFiles:[],publicFiles:[]},null,2)),o.debug("Upload links file cleared (upload was skipped)");else{let t={privateFiles:[...y.assets.privateFilesFullPaths].map(e=>({localPath:e,uploadUrl:k[e.replace(/^assets\/private\//,"")]})),publicFiles:[...y.assets.publicFilesFullPaths].map(e=>({localPath:e,uploadUrl:$[e.replace(/^assets\/public\//,"")]}))};await e(g,JSON.stringify(t,null,2)),o.debug(`Upload links written to ${g}`),o.info('Run "finish" command to upload files and activate the deployment')}}catch(e){throw Error("Failed to write upload links to file")}o.success("Deployment prepared successfully!")}catch(e){o.error(`Deployment preparation failed: ${e instanceof Error?e.message:String(e)}`,e),process.exit(1)}};
@@ -1 +1 @@
1
- import{writeFile as e}from"fs/promises";import{createApiBaseClient as r}from"#package/client";import{resolveApplicationSpecDeploymentData as t}from"../application-spec/index.js";import{formatEnvContent as i,uploadFilesWithPresignedUrls as a}from"../utils/index.js";export const prepareLocalEnvironment=async(o,s)=>{let{logger:n}=s;n.step("Preparing local environment");let{projectKey:l,projectSlug:p,outFile:c,skipUpload:d,overrideSchema:m,serverUrl:h,lambdaUrl:f,environmentSlug:v,apiKey:u}=o;n.info(`Preparing local environment for project "${p}", environment "${v}"`);let y=r(h);n.debug(`Using server URL: ${h}`);let b=await t({skipUpload:d,logger:n});n.info("Preparing a local environment and deployment on the server...");let{data:g,error:w}=await y.POST("/environments/prepare",{body:{projectSlug:p,environmentSlug:v,applicationVersion:b.applicationVersion,publishedDataHash:b.publishedDataHash,useAuthHook:b.useAuthHook,overrideSchema:m,configurationSchema:{version:b.schemaVersion,schema:b.schema},adminConfigurationSchema:b.adminSchema?{schema:b.adminSchema,version:b.adminSchemaVersion}:void 0,chat:b.chat,embeddings:b.embeddings,assistant:b.assistant,acl:{canCreate:b.aclCanCreate},privateFiles:[...b.assets.privateFilePaths],publicFiles:[...b.assets.publicFilePaths]},headers:{"x-api-key":u,"x-project-key":l,"x-project-slug":p}});if(w)throw Error(`Failed to prepare deployment with server: ${w.message}`);if(!g)throw Error("No data returned from server");n.debug("Deployment prepared on server");let E=g.environmentVariables,F=g.privateUploadUrls,P=g.publicUploadUrls,$=E?.DEPLOYMENT_ID;if(!E||!F||!P)throw Error("Incomplete data returned from server");if(!$)throw Error("No deployment ID returned from server");try{await e(c,i(E)+"\n"),n.debug(`Environment variables written to ${c}`)}catch(e){throw Error(`Failed to write environment variables to file at ${c}, please verify you have write permissions to this location.`)}if(d)n.debug("Skipping file upload");else{n.info("Uploading files to S3...");let e={privateFiles:[...b.assets.privateFilesFullPaths].map(e=>{let r=e.replace("assets/private/",""),t=F[r];if(!t)throw Error(`No upload URL provided for private file ${r}, the server did not return a presigned URL for this file, please verify the file exists in the assets/private directory.`);return{localPath:e,uploadUrl:t}}),publicFiles:[...b.assets.publicFilesFullPaths].map(e=>{let r=e.replace("assets/public/",""),t=P[r];if(!t)throw Error(`No upload URL provided for public file ${r}, the server did not return a presigned URL for this file, please verify the file exists in the assets/public directory.`);return{localPath:e,uploadUrl:t}})};await a(e,{logger:n})}n.info("Activating deployment...");let{error:U}=await y.POST("/deployments/{deploymentId}/activate",{params:{path:{deploymentId:$}},headers:{"x-project-key":l,"x-project-slug":p,"x-api-key":u},body:{lambdaUrl:f}});if(U)throw Error(`Failed to activate deployment with server: ${U.message}`);n.info(`Project: ${p}`),n.info(`Environment: ${v}`),n.info(`Deployment ID: ${$}`),n.info(`Lambda URL: ${f}`),n.success("Local environment prepared successfully!")};
1
+ import{writeFile as e}from"fs/promises";import{createApiBaseClient as r}from"#package/client";import{resolveApplicationSpecDeploymentData as t}from"../application-spec/index.js";import{formatEnvContent as i,uploadFilesWithPresignedUrls as a}from"../utils/index.js";export const prepareLocalEnvironment=async(o,s)=>{let{logger:n}=s;n.step("Preparing local environment");let{projectKey:l,projectSlug:p,outFile:c,skipUpload:d,overrideSchema:m,serverUrl:h,lambdaUrl:f,environmentSlug:v,apiKey:u}=o;n.info(`Preparing local environment for project "${p}", environment "${v}"`);let y=r(h);n.debug(`Using server URL: ${h}`);let b=await t({skipUpload:d,logger:n});n.info("Preparing a local environment and deployment on the server...");let{data:g,error:w}=await y.POST("/environments/prepare",{body:{projectSlug:p,environmentSlug:v,applicationVersion:b.applicationVersion,publishedDataHash:b.publishedDataHash,useAuthHook:b.useAuthHook,overrideSchema:m,configurationSchema:{version:b.schemaVersion,schema:b.schema},adminConfigurationSchema:b.adminSchema?{schema:b.adminSchema,version:b.adminSchemaVersion}:void 0,chat:b.chat,embeddings:b.embeddings,...b.assistant?{assistant:!0}:{},acl:{canCreate:b.aclCanCreate},privateFiles:[...b.assets.privateFilePaths],publicFiles:[...b.assets.publicFilePaths]},headers:{"x-api-key":u,"x-project-key":l,"x-project-slug":p}});if(w)throw Error(`Failed to prepare deployment with server: ${w.message}`);if(!g)throw Error("No data returned from server");n.debug("Deployment prepared on server");let E=g.environmentVariables,F=g.privateUploadUrls,P=g.publicUploadUrls,$=E?.DEPLOYMENT_ID;if(!E||!F||!P)throw Error("Incomplete data returned from server");if(!$)throw Error("No deployment ID returned from server");try{await e(c,i(E)+"\n"),n.debug(`Environment variables written to ${c}`)}catch(e){throw Error(`Failed to write environment variables to file at ${c}, please verify you have write permissions to this location.`)}if(d)n.debug("Skipping file upload");else{n.info("Uploading files to S3...");let e={privateFiles:[...b.assets.privateFilesFullPaths].map(e=>{let r=e.replace("assets/private/",""),t=F[r];if(!t)throw Error(`No upload URL provided for private file ${r}, the server did not return a presigned URL for this file, please verify the file exists in the assets/private directory.`);return{localPath:e,uploadUrl:t}}),publicFiles:[...b.assets.publicFilesFullPaths].map(e=>{let r=e.replace("assets/public/",""),t=P[r];if(!t)throw Error(`No upload URL provided for public file ${r}, the server did not return a presigned URL for this file, please verify the file exists in the assets/public directory.`);return{localPath:e,uploadUrl:t}})};await a(e,{logger:n})}n.info("Activating deployment...");let{error:U}=await y.POST("/deployments/{deploymentId}/activate",{params:{path:{deploymentId:$}},headers:{"x-project-key":l,"x-project-slug":p,"x-api-key":u},body:{lambdaUrl:f}});if(U)throw Error(`Failed to activate deployment with server: ${U.message}`);n.info(`Project: ${p}`),n.info(`Environment: ${v}`),n.info(`Deployment ID: ${$}`),n.info(`Lambda URL: ${f}`),n.success("Local environment prepared successfully!")};
@@ -1 +1 @@
1
- import{readFile as t,writeFile as e}from"fs/promises";import{globby as o}from"globby";import{resolve as r}from"path";import*as i from"prettier";let a=["**/node_modules/**","**/dist/**","**/.git/**","**/webhooks/index.ts`","**/frontend-configurator.ts`","**/frontend-admin.ts`","**/frontend-embedded-admin.ts`","pnpm-lock.yaml",".linguirc"];export const formatFiles=async(n,f)=>{let{logger:l}=f,s=await o("."===n?"**/*":n,{gitignore:!0,ignore:a}),c=0;for(let o of s)try{let a=r(o),n=await t(a,"utf-8"),f=await i.resolveConfig(a);if((await i.getFileInfo(a)).ignored)continue;let l=await i.format(n,{...f,filepath:a});l!==n&&(await e(a,l,"utf-8"),c++)}catch(t){}c>0&&l.info(`Formatted ${c} file${1!==c?"s":""}`)};export const checkFiles=async(e,n)=>{let{logger:f}=n,l=await o("."===e?"**/*":e,{gitignore:!0,ignore:a}),s=[];for(let e of l)try{let o=r(e),a=await t(o,"utf-8"),n=await i.resolveConfig(o);if((await i.getFileInfo(o)).ignored)continue;await i.check(a,{...n,filepath:o})||s.push(e)}catch(t){}return!(s.length>0)||(f.error(`Found ${s.length} unformatted file${1!==s.length?"s":""}:`),s.forEach(t=>{console.error(` - ${t}`)}),!1)};
1
+ import{readFile as t,writeFile as o}from"fs/promises";import{globby as e}from"globby";import{resolve as r}from"path";import*as i from"prettier";import{prettierrc as a}from"@salsita-ai/common/prettier";let n=["**/node_modules/**","**/dist/**","**/.git/**","**/.phoenix/**","**/locales/*/*.ts","pnpm-lock.yaml","pnpm-workspace.yaml","package-lock.json","npm-shrinkwrap.json","yarn.lock",".yarnrc.yml","bun.lock","bun.lockb",".linguirc"];export const formatFiles=async(l,f)=>{let{logger:c}=f,s=await e("."===l?"**/*":l,{gitignore:!0,ignore:n}),m=0;for(let e of s)try{let n=r(e),l=await t(n,"utf-8"),f=await i.resolveConfig(n)??a;if((await i.getFileInfo(n)).ignored)continue;let c=await i.format(l,{...f,filepath:n});c!==l&&(await o(n,c,"utf-8"),m++)}catch(t){}m>0&&c.info(`Formatted ${m} file${1!==m?"s":""}`)};export const checkFiles=async(o,l)=>{let{logger:f}=l,c=await e("."===o?"**/*":o,{gitignore:!0,ignore:n}),s=[];for(let o of c)try{let e=r(o),n=await t(e,"utf-8"),l=await i.resolveConfig(e)??a;if((await i.getFileInfo(e)).ignored)continue;await i.check(n,{...l,filepath:e})||s.push(o)}catch(t){}return!(s.length>0)||(f.error(`Found ${s.length} unformatted file${1!==s.length?"s":""}:`),s.forEach(t=>{console.error(` - ${t}`)}),!1)};
@@ -1 +1 @@
1
- import{ensureWorkspaceInstallSettings as e,runCommand as s}from"../utils/index.js";import{generateProjectFilesAndInstallDependencies as c}from"./generate-project-files.js";export const runSyncCommand=async(t,i)=>{let{logger:r}=i,{sdkVersion:n,projectSlug:o,environmentSlug:l,cliUseWorkspace:a,enableEditor:p,force:m=!1,analyze:u=!1}=t;try{r.step("Syncing Phoenix project files"),e(process.cwd()),await s({command:"pnpm",args:["install"],description:"Installing packages",quiet:!0},{logger:r}),r.step("Building project files"),await c({sdkVersion:n,projectSlug:o,environmentSlug:l,cliUseWorkspace:a,enableEditor:p,inlineTemplates:!0,force:m,analyze:u},i),r.success("Project files built successfully"),r.success("Sync completed successfully!")}catch(e){r.error(`Sync failed: ${e instanceof Error?e.message:String(e)}`,e),process.exit(1)}};
1
+ import{generateProjectFiles as e}from"../application-spec/index.js";export const runSyncCommand=async(s,c)=>{let{logger:i}=c,{sdkVersion:r,projectSlug:t,environmentSlug:n,cliUseWorkspace:o,enableEditor:l,force:p=!1,analyze:a=!1}=s;try{i.step("Syncing Phoenix project files"),i.step("Building project files"),await e({sdkVersion:r,projectSlug:t,environmentSlug:n,cliUseWorkspace:o,enableEditor:l,inlineTemplates:!0,force:p,analyze:a},c),i.success("Project files built successfully"),i.success("Sync completed successfully!")}catch(e){i.error(`Sync failed: ${e instanceof Error?e.message:String(e)}`,e),process.exit(1)}};
@@ -1 +1 @@
1
- import{getLocalOverrides as n,removeWorkspaceOverrides as e,runCommand as i}from"../utils/index.js";export const runUnlinkCommand=async a=>{let{logger:s}=a;try{s.step("Unlinking local SDK packages");let a=n();if(0===a.length)return void s.info("No linked SDK packages found");s.debug(`Found ${a.length} linked packages`),a.forEach(n=>{s.debug(` Unlinked ${n}`)}),e(a),s.success(`Unlinked ${a.length} SDK packages`),await i({command:"pnpm",args:["install","--config.optimistic-repeat-install=false"],description:"Installing packages",quiet:!0},{logger:s}),s.info("\nNext step:"),s.info(" Run: phoenix dev")}catch(n){throw s.error(`Failed to unlink SDK packages: ${n instanceof Error?n.message:String(n)}. pnpm-workspace.yaml may be missing or invalid. Check that an overrides section exists in pnpm-workspace.yaml.`),n}};
1
+ import{assertPnpmProject as n,getLocalOverrides as e,removeWorkspaceOverrides as r}from"../utils/index.js";export const runUnlinkCommand=async o=>{let{logger:i}=o;try{n({projectRoot:process.cwd(),command:"unlink"})}catch(n){throw i.error(n instanceof Error?n.message:String(n)),n}try{i.step("Unlinking local SDK packages");let n=e();if(0===n.length)return void i.info("No linked SDK packages found");i.debug(`Found ${n.length} linked packages`),n.forEach(n=>{i.debug(` Unlinked ${n}`)}),r(n),i.success(`Unlinked ${n.length} SDK packages`),i.info("\nNext steps:\n pnpm install --config.optimistic-repeat-install=false\n phoenix dev")}catch(n){throw i.error(`Failed to unlink SDK packages: ${n instanceof Error?n.message:String(n)}. pnpm-workspace.yaml may be missing or invalid. Check that an overrides section exists in pnpm-workspace.yaml.`),n}};
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node --stack-size=8192
2
- import{mkdir as e,readFile as o,rm as a,writeFile as r}from"node:fs/promises";import{dirname as t,join as i}from"node:path";import{format as s}from"prettier";import{prettierrc as n}from"@salsita-ai/common/prettier";import{buildPhoenixDefinitions as m,generateStandaloneCommonAdminFiles as c,parseCommonAdminSpec as p}from"#package/application-spec";import{getAllPhxDefinitions as l}from"#package/domain";import{swcEvalExpressionParser as d}from"../application-spec/swc-module-analyzer.js";let f=async e=>{try{return await o(e,"utf-8")}catch{return}},w=async(e,o)=>{let a=await s(o,{...n,filepath:e});await f(e)!==a&&await r(e,a)},v="./src/domain/admin-domain/__generated",h=m(l()),u=p(h,{evalExpressionParser:d});if(!u.ok)throw console.error(u.errors),Error("Common admin application spec contains errors");let j=c({enhancedModelImportPaths:{domainModel:"../../core/model.js",model:"./model/index.js",violation:"../../invariants/violation.js"},phxDefinitions:h,spec:u.value,versionImportPaths:{model:"../../../../core/model.js",reflection:"../../../../core/reflection.js"}});await e(v,{recursive:!0}),await Promise.all(j.map(async o=>{let a=i(v,o.path);await e(t(a),{recursive:!0}),await w(a,o.content)})),await a(i(v,"presets.ts"),{force:!0});
2
+ import{mkdir as e,readFile as r,rm as a,writeFile as o}from"node:fs/promises";import{dirname as i,join as t}from"node:path";import{format as n}from"prettier";import{prettierrc as s}from"@salsita-ai/common/prettier";import{buildPhoenixDefinitions as m,generateStandaloneCommonAdminFiles as c,parseCommonAdminSpec as p}from"#package/application-spec";import{getAllPhxDefinitions as l}from"#package/domain";import{swcEvalExpressionParser as d}from"../application-spec/swc-module-analyzer.js";let f=async e=>{try{return await r(e,"utf-8")}catch{return}},w=async(e,r)=>{let a=await n(r,{...s,filepath:e});await f(e)!==a&&await o(e,a)},h="./src/domain/admin-domain/__generated",u=m(l()),v=p(u,{evalExpressionParser:d});if(!v.ok)throw console.error(v.errors),Error("Common admin application spec contains errors");let j=c({enhancedModelImportPaths:{domainModel:"../../core/index.js",model:"./model/index.js",violation:"../../core/index.js"},phxDefinitions:u,spec:v.value,versionImportPaths:{model:"../../../../core/index.js",reflection:"../../../../core/index.js"}});await e(h,{recursive:!0}),await Promise.all(j.map(async r=>{let a=t(h,r.path);await e(i(a),{recursive:!0}),await w(a,r.content)})),await a(t(h,"presets.ts"),{force:!0});
@@ -2,6 +2,8 @@ import { type ViteDevServer } from 'vite';
2
2
  import type { Logger } from '../utils/index.js';
3
3
  import type { PhoenixPubSub } from './phoenix-pubsub.js';
4
4
  import type { VariantFileEdit } from './variant-file-session.js';
5
+ export declare const WATCH_PATTERNS: string[];
6
+ export declare const IGNORED_PATTERNS: string[];
5
7
  /** Configuration for {@link ApplicationSpecProjectWatcher}. */
6
8
  export interface ApplicationSpecProjectWatcherConfig {
7
9
  readonly pubsub: PhoenixPubSub;
@@ -12,8 +14,6 @@ export interface ApplicationSpecProjectWatcherConfig {
12
14
  readonly projectSlug: string;
13
15
  readonly environmentSlug: string;
14
16
  readonly cliUseWorkspace?: boolean;
15
- readonly name?: string;
16
- readonly description?: string;
17
17
  readonly enableEditor: boolean;
18
18
  readonly inlineTemplates: boolean;
19
19
  readonly useServer: boolean;
@@ -1,4 +1,4 @@
1
- import{resolve as e}from"path";import t from"promise-queue";import{Subject as i,buffer as s,debounceTime as r}from"rxjs";import{createServer as o,normalizePath as n}from"vite";import{watch as l}from"#package/watch";import{ApplicationSpecBuilder as h}from"../application-spec/application-spec-builder.js";import{logDiagnostics as a}from"../application-spec/metrics/index.js";import{syncTemplateFiles as c}from"../application-spec/template-files.js";import{buildWebhooks as u}from"../webhooks/index.js";import{getViteDevConfig as p}from"./vite-config.js";let g=["spec/**/*.{yaml,yml}","src/**/*.{ts,tsx,yaml,yml,json,html,css}","templates/*.html",".env",".env.generated"],d=["src/locales/**/*.{ts,tsx}",".phoenix/**"];export class ApplicationSpecProjectWatcher{watcher=null;subscription=null;rebuildQueue=new t(1,1/0);changeSubject$=new i;viteServer=null;pubsub;logger;onRebuilt;onViteServerChange;builder;useServer;isShuttingDown=!1;suspended=!1;heldChanges=new Set;constructor(e){this.pubsub=e.pubsub,this.logger=e.logger,this.onRebuilt=e.onRebuilt,this.onViteServerChange=e.onViteServerChange,this.builder=new h({logger:e.logger,sdkVersion:e.sdkVersion,projectSlug:e.projectSlug,environmentSlug:e.environmentSlug,cliUseWorkspace:e.cliUseWorkspace,name:e.name,description:e.description,enableEditor:e.enableEditor,inlineTemplates:e.inlineTemplates}),this.useServer=e.useServer}start(e){this.viteServer=e,this.setupFileWatcher(),this.setupRebuildSubscription()}applyVariantFiles(e){this.rebuildQueue.add(async()=>{this.isShuttingDown||await this.rebuild(new Set(e.map(e=>e.fileName)),!1,!0)})}suspend(){this.suspended=!0}resume(){for(let e of(this.suspended=!1,this.heldChanges))this.changeSubject$.next(e);this.heldChanges.clear()}async close(){this.isShuttingDown=!0,this.watcher&&(await this.watcher.close(),this.watcher=null),this.subscription?.unsubscribe(),this.changeSubject$.complete()}setupFileWatcher(){this.watcher=l(g,{ignored:d,cwd:process.cwd(),persistent:!0,ignoreInitial:!1}),this.watcher.on("all",(e,t)=>{if("change"===e||"add"===e||"unlink"===e){if(this.suspended)return void this.heldChanges.add(t);this.logger.info(`
2
- 📝 Detected ${e}: ${t}`),this.changeSubject$.next(t)}})}setupRebuildSubscription(){let e=this.changeSubject$.pipe(r(10));this.subscription=this.changeSubject$.pipe(s(e)).subscribe(e=>{let t=new Set(e),i=t.has(".env");this.rebuildQueue.add(async()=>{this.isShuttingDown||(this.logger.info(`
1
+ import{mkdirSync as e}from"fs";import{resolve as t}from"path";import i from"promise-queue";import{Subject as s,buffer as r,debounceTime as o}from"rxjs";import{createServer as n,normalizePath as l}from"vite";import{watch as h}from"#package/watch";import{ApplicationSpecBuilder as a}from"../application-spec/application-spec-builder.js";import{logDiagnostics as c}from"../application-spec/metrics/index.js";import{syncTemplateFiles as u}from"../application-spec/template-files.js";import{buildWebhooks as p}from"../webhooks/index.js";import{getViteDevConfig as g}from"./vite-config.js";export const WATCH_PATTERNS=["spec/**/*.{yaml,yml}","src/**/*.{ts,tsx,yaml,yml,json,html,css}","templates/*.html",".env",".env.generated",".phoenix/.env.generated"];export const IGNORED_PATTERNS=["src/locales/**/*.{ts,tsx}",".phoenix/!(.env.generated)/**"];export class ApplicationSpecProjectWatcher{watcher=null;subscription=null;rebuildQueue=new i(1,1/0);changeSubject$=new s;viteServer=null;pubsub;logger;onRebuilt;onViteServerChange;builder;useServer;isShuttingDown=!1;suspended=!1;heldChanges=new Set;constructor(e){this.pubsub=e.pubsub,this.logger=e.logger,this.onRebuilt=e.onRebuilt,this.onViteServerChange=e.onViteServerChange,this.builder=new a({logger:e.logger,sdkVersion:e.sdkVersion,projectSlug:e.projectSlug,environmentSlug:e.environmentSlug,cliUseWorkspace:e.cliUseWorkspace,enableEditor:e.enableEditor,inlineTemplates:e.inlineTemplates}),this.useServer=e.useServer}start(e){this.viteServer=e,this.setupFileWatcher(),this.setupRebuildSubscription()}applyVariantFiles(e){this.rebuildQueue.add(async()=>{this.isShuttingDown||await this.rebuild(new Set(e.map(e=>e.fileName)),!1,!0)})}suspend(){this.suspended=!0}resume(){for(let e of(this.suspended=!1,this.heldChanges))this.changeSubject$.next(e);this.heldChanges.clear()}async close(){this.isShuttingDown=!0,this.watcher&&(await this.watcher.close(),this.watcher=null),this.subscription?.unsubscribe(),this.changeSubject$.complete()}setupFileWatcher(){e(t(process.cwd(),"src"),{recursive:!0}),this.watcher=h(WATCH_PATTERNS,{ignored:IGNORED_PATTERNS,cwd:process.cwd(),persistent:!0,ignoreInitial:!1}),this.watcher.on("all",(e,t)=>{if("change"===e||"add"===e||"unlink"===e){if(this.suspended)return void this.heldChanges.add(t);this.logger.info(`
2
+ 📝 Detected ${e}: ${t}`),this.changeSubject$.next(t)}})}setupRebuildSubscription(){let e=this.changeSubject$.pipe(o(10));this.subscription=this.changeSubject$.pipe(r(e)).subscribe(e=>{let t=new Set(e),i=t.has(".env");this.rebuildQueue.add(async()=>{this.isShuttingDown||(this.logger.info(`
3
3
  🔨 Rebuilding spec files...
4
- `),await this.rebuild(t,i,!1))})})}async rebuild(t,i,s){try{let r=this.viteServer;if(!r)throw Error("Cannot rebuild the project: the watcher has no Vite server yet, because it was not started. Start the watcher before applying files");let l=await c();if(this.isShuttingDown)return;let h=await this.builder.build({compile:!s});if(this.isShuttingDown)return;if(a(h.diagnostics,this.logger),!h.ok){for(let e of h.errors)this.logger.error(`[${e.code}] ${e.message}${e.file?` (${e.file})`:""}`);this.pubsub.specFile$.next({rawProjectFiles:h.rawProjectFiles,projectRoot:process.cwd()});return}this.onRebuilt?.();let{application:g,changedFiles:d}=h,w=r.moduleGraph,b=Date.now(),f=new Set,m=process.cwd(),S=e=>{let t=w.getModulesByFile(n(e));if(t)for(let e of t)w.invalidateModule(e,f,b,!0)};for(let i of t)S(e(m,i));for(let t of d)S(e(m,`.phoenix/${t.path}`));if(this.pubsub.specFile$.next({rawProjectFiles:g.rawProjectFiles,projectRoot:process.cwd(),configurationSchemaHash:g.applicationSpec.configurator.configurationSchema.hash}),this.isShuttingDown)return;if(i){if(await r.close(),this.isShuttingDown)return;let e=await p({templateFiles:l});if(this.isShuttingDown)return;let t=await o(e);if(this.isShuttingDown||(await t.listen(),this.isShuttingDown))return void await t.close();this.viteServer=t,this.onViteServerChange?.(t),this.logger.success("Vite server restarted (env changed)")}if(this.useServer&&!s){if(this.logger.step("Building webhooks"),await u({experimental:!0,skipNodeEnvOverride:!0,webhookEntryPoint:"./.phoenix/.swc/.phoenix/webhook.js",preserveExistingOutput:!0}),this.isShuttingDown)return;this.logger.success("Webhooks rebuilt successfully")}this.logger.success("Project files rebuilt successfully")}catch(e){this.logger.error(`Build failed: ${e instanceof Error?e.message:String(e)}`,e)}}}
4
+ `),await this.rebuild(t,i,!1))})})}async rebuild(e,i,s){try{let r=this.viteServer;if(!r)throw Error("Cannot rebuild the project: the watcher has no Vite server yet, because it was not started. Start the watcher before applying files");let o=await u();if(this.isShuttingDown)return;let h=await this.builder.build({compile:!s});if(this.isShuttingDown)return;if(c(h.diagnostics,this.logger),!h.ok){for(let e of h.errors)this.logger.error(`[${e.code}] ${e.message}${e.file?` (${e.file})`:""}`);this.pubsub.specFile$.next({rawProjectFiles:h.rawProjectFiles,projectRoot:process.cwd()});return}this.onRebuilt?.();let{application:a,changedFiles:d}=h,w=r.moduleGraph,b=Date.now(),f=new Set,S=process.cwd(),m=e=>{let t=w.getModulesByFile(l(e));if(t)for(let e of t)w.invalidateModule(e,f,b,!0)};for(let i of e)m(t(S,i));for(let e of d)m(t(S,`.phoenix/${e.path}`));if(this.pubsub.specFile$.next({rawProjectFiles:a.rawProjectFiles,projectRoot:process.cwd(),configurationSchemaHash:a.applicationSpec.configurator.configurationSchema.hash}),this.isShuttingDown)return;if(i){if(await r.close(),this.isShuttingDown)return;let e=await g({templateFiles:o});if(this.isShuttingDown)return;let t=await n(e);if(this.isShuttingDown||(await t.listen(),this.isShuttingDown))return void await t.close();this.viteServer=t,this.onViteServerChange?.(t),this.logger.success("Vite server restarted (env changed)")}if(this.useServer&&!s){if(this.logger.step("Building webhooks"),await p({experimental:!0,skipNodeEnvOverride:!0,webhookEntryPoint:"./.phoenix/.swc/.phoenix/webhook.js",preserveExistingOutput:!0}),this.isShuttingDown)return;this.logger.success("Webhooks rebuilt successfully")}this.logger.success("Project files rebuilt successfully")}catch(e){this.logger.error(`Build failed: ${e instanceof Error?e.message:String(e)}`,e)}}}
@@ -1,4 +1,12 @@
1
1
  import { type Logger } from '../utils/index.js';
2
+ /**
3
+ * The project's Lingui configuration, which sync generates, relative to the project root. The Lingui
4
+ * CLI, the Lingui Vite plugin and the Lingui macros in the Vite builds are always given this path, so a
5
+ * `.linguirc` that earlier SDK versions left in the project root is not read. Lingui searches the
6
+ * working directory instead only when the named file is missing; generation writes it with the rest of
7
+ * `.phoenix/` before Phoenix runs Lingui or Vite.
8
+ */
9
+ export declare const LINGUI_CONFIG_PATH = ".phoenix/.linguirc";
2
10
  interface LinguiCommandContext {
3
11
  readonly logger: Logger;
4
12
  }
@@ -1 +1 @@
1
- import{runCommand as i}from"../utils/index.js";let n=async n=>{await i({command:"lingui",args:["extract"],description:"Extracting i18n messages",quiet:!0,extraEnv:{LC_ALL:"en_US.UTF-8"}},n)};export const compileLingui=async n=>{await i({command:"lingui",args:["compile"],description:"Compiling i18n messages",quiet:!0},n)};export const extractAndCompileLingui=async i=>{await n(i),await compileLingui(i)};
1
+ import{runSdkTool as i}from"../utils/index.js";export const LINGUI_CONFIG_PATH=".phoenix/.linguirc";let n=async n=>{await i({tool:{packageName:"@lingui/cli",binName:"lingui"},args:["extract","--config",LINGUI_CONFIG_PATH],description:"Extracting i18n messages",quiet:!0,extraEnv:{LC_ALL:"en_US.UTF-8"}},n)};export const compileLingui=async n=>{await i({tool:{packageName:"@lingui/cli",binName:"lingui"},args:["compile","--config",LINGUI_CONFIG_PATH],description:"Compiling i18n messages",quiet:!0},n)};export const extractAndCompileLingui=async i=>{await n(i),await compileLingui(i)};
@@ -1,2 +1,2 @@
1
- import{writeFile as e}from"node:fs/promises";import{createApiBaseClient as i}from"#package/client";import{resolveApplicationSpecDeploymentData as t}from"../application-spec/index.js";import{formatEnvContent as r,uploadFilesWithPresignedUrls as a}from"../utils/index.js";import{getDevelopmentCredentialHint as o,getDevelopmentHeaders as s}from"./development-credential.js";export const prepareDevelopmentEnvironment=async(n,l)=>{let{logger:p}=l,{projectSlug:d,environmentSlug:m,serverUrl:c,credential:h,outFile:v,skipUpload:f,overrideSchema:u,projectVersion:g}=n;p.step("Preparing development environment"),p.info(`Preparing development environment for project "${d}", environment "${m}"`);let E=i(c);p.debug(`Using server URL: ${c}`);let b=await t({skipUpload:f,logger:p});p.info("Preparing and activating the development deployment on the server...");let{data:P,error:$}=await E.POST("/environments/development/prepare",{body:{applicationVersion:b.applicationVersion,publishedDataHash:b.publishedDataHash,useAuthHook:b.useAuthHook,overrideSchema:u,configurationSchema:{version:b.schemaVersion,schema:b.schema},adminConfigurationSchema:b.adminSchema?{schema:b.adminSchema,version:b.adminSchemaVersion}:void 0,chat:b.chat,embeddings:b.embeddings,assistant:b.assistant,acl:{canCreate:b.aclCanCreate},privateFiles:[...b.assets.privateFilePaths],publicFiles:[...b.assets.publicFilePaths],sdkVersion:g},headers:s(h,{projectSlug:d,environmentSlug:m})});if($)throw Error(`Failed to prepare development deployment for ${d}/${m} on ${c}: ${$.message}. ${o(h,d)}`);if(!P)throw Error("No data returned from server while preparing the development deployment.");let{environmentVariables:y,privateUploadUrls:w,publicUploadUrls:F}=P;if(f)p.debug("Skipping file upload");else{p.info("Uploading files to S3...");let e={privateFiles:[...b.assets.privateFilesFullPaths].map(e=>{let i=e.replace("assets/private/",""),t=w[i];if(!t)throw Error(`No upload URL provided for private file ${i}, the server did not return a presigned URL for this file, please verify the file exists in the assets/private directory.`);return{localPath:e,uploadUrl:t}}),publicFiles:[...b.assets.publicFilesFullPaths].map(e=>{let i=e.replace("assets/public/",""),t=F[i];if(!t)throw Error(`No upload URL provided for public file ${i}, the server did not return a presigned URL for this file, please verify the file exists in the assets/public directory.`);return{localPath:e,uploadUrl:t}})};await a(e,{logger:p})}try{await e(v,`${r({...y,PHOENIX_PROJECT_SLUG:d,PHOENIX_ENVIRONMENT_SLUG:m,PHOENIX_SERVER_URL:c})}
1
+ import{writeFile as e}from"node:fs/promises";import{createApiBaseClient as i}from"#package/client";import{resolveApplicationSpecDeploymentData as t}from"../application-spec/index.js";import{formatEnvContent as r,uploadFilesWithPresignedUrls as a}from"../utils/index.js";import{getDevelopmentCredentialHint as o,getDevelopmentHeaders as s}from"./development-credential.js";export const prepareDevelopmentEnvironment=async(n,l)=>{let{logger:p}=l,{projectSlug:d,environmentSlug:m,serverUrl:c,credential:h,outFile:v,skipUpload:f,overrideSchema:u,projectVersion:g}=n;p.step("Preparing development environment"),p.info(`Preparing development environment for project "${d}", environment "${m}"`);let E=i(c);p.debug(`Using server URL: ${c}`);let b=await t({skipUpload:f,logger:p});p.info("Preparing and activating the development deployment on the server...");let{data:P,error:$}=await E.POST("/environments/development/prepare",{body:{applicationVersion:b.applicationVersion,publishedDataHash:b.publishedDataHash,useAuthHook:b.useAuthHook,overrideSchema:u,configurationSchema:{version:b.schemaVersion,schema:b.schema},adminConfigurationSchema:b.adminSchema?{schema:b.adminSchema,version:b.adminSchemaVersion}:void 0,chat:b.chat,embeddings:b.embeddings,...b.assistant?{assistant:!0}:{},acl:{canCreate:b.aclCanCreate},privateFiles:[...b.assets.privateFilePaths],publicFiles:[...b.assets.publicFilePaths],sdkVersion:g},headers:s(h,{projectSlug:d,environmentSlug:m})});if($)throw Error(`Failed to prepare development deployment for ${d}/${m} on ${c}: ${$.message}. ${o(h,d)}`);if(!P)throw Error("No data returned from server while preparing the development deployment.");let{environmentVariables:y,privateUploadUrls:w,publicUploadUrls:F}=P;if(f)p.debug("Skipping file upload");else{p.info("Uploading files to S3...");let e={privateFiles:[...b.assets.privateFilesFullPaths].map(e=>{let i=e.replace("assets/private/",""),t=w[i];if(!t)throw Error(`No upload URL provided for private file ${i}, the server did not return a presigned URL for this file, please verify the file exists in the assets/private directory.`);return{localPath:e,uploadUrl:t}}),publicFiles:[...b.assets.publicFilesFullPaths].map(e=>{let i=e.replace("assets/public/",""),t=F[i];if(!t)throw Error(`No upload URL provided for public file ${i}, the server did not return a presigned URL for this file, please verify the file exists in the assets/public directory.`);return{localPath:e,uploadUrl:t}})};await a(e,{logger:p})}try{await e(v,`${r({...y,PHOENIX_PROJECT_SLUG:d,PHOENIX_ENVIRONMENT_SLUG:m,PHOENIX_SERVER_URL:c})}
2
2
  `),p.debug(`Environment variables written to ${v}`)}catch{throw Error(`Failed to write environment variables to file at ${v}, please verify you have write permissions to this location.`)}p.info(`Project: ${d}`),p.info(`Environment: ${m}`),p.info(`Deployment ID: ${y.DEPLOYMENT_ID}`),p.success("Development environment prepared successfully!")};
@@ -3,6 +3,7 @@ export interface SourceArchive {
3
3
  readonly path: string;
4
4
  readonly fileCount: number;
5
5
  readonly size: number;
6
+ readonly hasConversationLog: boolean;
6
7
  readonly cleanup: () => Promise<void>;
7
8
  }
8
9
  /** What `extractSourceArchive` wrote and what it left out. */
@@ -1 +1 @@
1
- import{execFile as e}from"node:child_process";import{createReadStream as r,createWriteStream as t}from"node:fs";import{lstat as o,mkdir as i,mkdtemp as a,readdir as n,rm as s,stat as c,writeFile as l}from"node:fs/promises";import{tmpdir as h}from"node:os";import{dirname as p,join as f}from"node:path";import{Transform as d}from"node:stream";import{pipeline as w}from"node:stream/promises";import{promisify as m}from"node:util";import{createGunzip as u}from"node:zlib";import{extract as g}from"tar-stream";import{isProjectFile as y,listProjectEntries as v}from"../application-spec/project-files.js";let x=m(e);export const createSourceArchive=async e=>{let r=await Promise.all((await v(e)).map(async r=>({name:r,entry:await o(f(e,r))}))),t=r.filter(({entry:e})=>!e.isDirectory()&&(!e.isFile()||e.nlink>1)),i=r.filter(({entry:e})=>e.isFile()).map(({name:e})=>e);if(t.length>0)throw Error(`These project files are links or special files, which builds do not accept: ${t.map(({name:e})=>e).join(", ")}. Replace them with regular files and deploy again.`);if(0===i.length)throw Error(`No project files were found in ${e}, so there is nothing to deploy. Run phoenix deploy in the folder of an application-spec project.`);let n=await a(f(h(),"phoenix-deploy-")),p="sources.tgz",d=f(n,p),w=f(n,"files");try{await l(w,i.join("\0")),await x("tar",["-czf",p,"-C",e,"--null","-T",w],{cwd:n,env:{...process.env,COPYFILE_DISABLE:"1"}})}catch(r){await s(n,{recursive:!0,force:!0});let e=r instanceof Error?r.message:String(r);throw Error(`Packing the project with tar failed: ${e}. Check that tar is installed and on the PATH.`)}return{path:d,fileCount:i.length,size:(await c(d)).size,cleanup:()=>s(n,{recursive:!0,force:!0})}};let E=(e,...r)=>e instanceof Error&&"code"in e&&"string"==typeof e.code&&r.includes(e.code),j=async e=>{try{return 0===(await n(e)).length}catch(e){if(E(e,"ENOENT"))return!0;throw e}},T=class ArchiveRefusal extends Error{},b=e=>e.length>0&&!e.startsWith("/")&&!e.includes("\\")&&!/^[A-Za-z]:/.test(e)&&!/[\x00-\x1f\x7f]/.test(e)&&!e.split("/").includes("..");export const extractSourceArchive=async e=>{let o,a,{archivePath:n,targetDir:l}=e,h=(await c(n)).size;if(h>0xc800000)throw Error(`The source archive is ${h} bytes, over the 209715200 byte limit. Remove large files from the project and deploy again.`);if(!await j(l))throw Error(`The folder ${l} is not empty, and extracted sources must not mix with existing files. Extract into a new or empty folder.`);let m=g(),v=new AbortController,x=w(r(n),u(),(a=0,new d({transform(e,r,t){(a+=e.length)>0x40000000?t(new T("The source archive extracts to more than 1073741824 bytes. Remove large files from the project and deploy again.")):t(null,e)}})),m).catch(e=>{o??=e,v.abort()}),$=[],z=0,R=0;try{for await(let e of m){let{type:r}=e.header,o=e.header.name.replace(/^(\.\/)+/,""),a=JSON.stringify(o);if("directory"===r){e.resume();continue}if((R+=1)>1e5)throw new T("The source archive has more than 100000 files. Remove generated or unused files from the project and deploy again.");if(!b(o))throw new T(`The source archive contains ${a}, which is not a plain relative path inside the project. Pack the project with phoenix deploy.`);if("file"!==r)throw new T(`The source archive contains ${a}, which is a ${r??"special file"}. Builds accept only regular files; replace it with a regular file and deploy again.`);if(!y(o)){$.push(o),e.resume();continue}let n=f(l,...o.split("/"));try{await i(p(n),{recursive:!0}),await w(e,t(n,{flags:"wx"}),{signal:v.signal})}catch(e){if(E(e,"EEXIST","ENOTDIR","EISDIR"))throw new T(`The source archive contains ${a}, which repeats or collides with an earlier entry, so its content is ambiguous. Pack the project with phoenix deploy.`);throw e}z+=1}if(await x,void 0!==o)throw o}catch(t){let e=t instanceof T?t:o??t;if(m.destroy(),await x,await s(l,{recursive:!0,force:!0}),e instanceof T)throw e;let r=e instanceof Error?e.message:String(e);throw Error(`The source archive could not be read: ${r}. It is truncated or not a gzip tarball; pack the project with phoenix deploy.`)}return{fileCount:z,skipped:$}};
1
+ import{execFile as e}from"node:child_process";import{createReadStream as r,createWriteStream as t}from"node:fs";import{lstat as o,mkdir as i,mkdtemp as a,readdir as n,rm as s,stat as c,writeFile as l}from"node:fs/promises";import{tmpdir as h}from"node:os";import{dirname as p,join as f}from"node:path";import{Transform as d}from"node:stream";import{pipeline as w}from"node:stream/promises";import{promisify as m}from"node:util";import{createGunzip as u}from"node:zlib";import{extract as g}from"tar-stream";import{isProjectFile as y,listProjectEntries as v}from"../application-spec/project-files.js";let x=m(e);export const createSourceArchive=async e=>{let r=(await n(e)).includes("conversation.log"),t=[...await v(e),...r?["conversation.log"]:[]],i=await Promise.all(t.map(async r=>({name:r,entry:await o(f(e,r))})));if(i.some(({name:e,entry:r})=>"conversation.log"===e&&r.isDirectory()))throw Error("conversation.log is a directory. Replace it with a regular transcript file and deploy again.");let p=i.filter(({entry:e})=>!e.isDirectory()&&(!e.isFile()||e.nlink>1)),d=i.filter(({entry:e})=>e.isFile()).map(({name:e})=>e);if(p.length>0)throw Error(`These project files are links or special files, which builds do not accept: ${p.map(({name:e})=>e).join(", ")}. Replace them with regular files and deploy again.`);if(0===d.length)throw Error(`No project files were found in ${e}, so there is nothing to deploy. Run phoenix deploy in the folder of an application-spec project.`);let w=await a(f(h(),"phoenix-deploy-")),m="sources.tgz",u=f(w,m),g=f(w,"files");try{await l(g,d.join("\0")),await x("tar",["-czf",m,"-C",e,"--null","-T",g],{cwd:w,env:{...process.env,COPYFILE_DISABLE:"1"}})}catch(r){await s(w,{recursive:!0,force:!0});let e=r instanceof Error?r.message:String(r);throw Error(`Packing the project with tar failed: ${e}. Check that tar is installed and on the PATH.`)}return{path:u,fileCount:d.length,size:(await c(u)).size,hasConversationLog:r,cleanup:()=>s(w,{recursive:!0,force:!0})}};let E=(e,...r)=>e instanceof Error&&"code"in e&&"string"==typeof e.code&&r.includes(e.code),j=async e=>{try{return 0===(await n(e)).length}catch(e){if(E(e,"ENOENT"))return!0;throw e}},T=class ArchiveRefusal extends Error{},b=e=>e.length>0&&!e.startsWith("/")&&!e.includes("\\")&&!/^[A-Za-z]:/.test(e)&&!/[\x00-\x1f\x7f]/.test(e)&&!e.split("/").includes("..");export const extractSourceArchive=async e=>{let o,a,{archivePath:n,targetDir:l}=e,h=(await c(n)).size;if(h>0xc800000)throw Error(`The source archive is ${h} bytes, over the 209715200 byte limit. Remove large files from the project and deploy again.`);if(!await j(l))throw Error(`The folder ${l} is not empty, and extracted sources must not mix with existing files. Extract into a new or empty folder.`);let m=g(),v=new AbortController,x=w(r(n),u(),(a=0,new d({transform(e,r,t){(a+=e.length)>0x40000000?t(new T("The source archive extracts to more than 1073741824 bytes. Remove large files from the project and deploy again.")):t(null,e)}})),m).catch(e=>{o??=e,v.abort()}),$=[],R=0,z=0;try{for await(let e of m){let{type:r}=e.header,o=e.header.name.replace(/^(\.\/)+/,""),a=JSON.stringify(o);if("directory"===r){e.resume();continue}if((z+=1)>1e5)throw new T("The source archive has more than 100000 files. Remove generated or unused files from the project and deploy again.");if(!b(o))throw new T(`The source archive contains ${a}, which is not a plain relative path inside the project. Pack the project with phoenix deploy.`);if("file"!==r)throw new T(`The source archive contains ${a}, which is a ${r??"special file"}. Builds accept only regular files; replace it with a regular file and deploy again.`);if(!y(o)){$.push(o),e.resume();continue}let n=f(l,...o.split("/"));try{await i(p(n),{recursive:!0}),await w(e,t(n,{flags:"wx"}),{signal:v.signal})}catch(e){if(E(e,"EEXIST","ENOTDIR","EISDIR"))throw new T(`The source archive contains ${a}, which repeats or collides with an earlier entry, so its content is ambiguous. Pack the project with phoenix deploy.`);throw e}R+=1}if(await x,void 0!==o)throw o}catch(t){let e=t instanceof T?t:o??t;if(m.destroy(),await x,await s(l,{recursive:!0,force:!0}),e instanceof T)throw e;let r=e instanceof Error?e.message:String(e);throw Error(`The source archive could not be read: ${r}. It is truncated or not a gzip tarball; pack the project with phoenix deploy.`)}return{fileCount:R,skipped:$}};
@@ -1,3 +1,3 @@
1
- import{transform as e}from"@swc/core";import{remove as t}from"fs-extra";import{copyFile as s,mkdir as o,readFile as a,writeFile as i}from"fs/promises";import{globby as r}from"globby";import{dirname as c,relative as l,resolve as n}from"path";import{Subject as p}from"rxjs";import{watch as m}from"#package/watch";import{createLogger as w}from"../utils/index.js";let u=()=>({sourceMaps:!0,module:{type:"es6"},jsc:{target:"es2022",parser:{syntax:"typescript",tsx:!0},transform:{react:{runtime:"automatic"}},keepClassNames:!0,experimental:{plugins:[["@lingui/swc-plugin",{}]]}}}),d=async(e,t,a)=>{let i=process.cwd(),p=n(i,e),m=n(i,t),w=await r(["**/*.{html,css,json,txt,md}","**/.env*"],{cwd:p,ignore:["**/*.{spec,test}.{html,css,json,txt,md}","**/__tests__/**","**/__mocks__/**","**/tsconfig.json"],absolute:!1}),u=0,d=0;for(let e of w)try{let t=n(p,e),a=n(m,e);await o(c(a),{recursive:!0}),await s(t,a),u++}catch(t){d++,console.error(`Failed to copy ${l(i,n(p,e))}:`,t)}if(d>0)throw Error(`Failed to copy ${d} file(s)`);u>0&&a.debug(`Copied ${u} non-compilable file(s)`)};export const compileWithSwc=async(s,p)=>{let{sourceDir:m="src",outDir:f="./node_modules/.phoenix"}=s??{},g=p?.logger??w(),h=process.cwd(),x=n(h,m),_=n(h,f);await t(_);let y=await r(["**/*.{ts,tsx}"],{cwd:x,ignore:["**/*.{spec,test}.{ts,tsx}","**/__tests__/**","**/__mocks__/**"],absolute:!1}),b=u(),$=0,j=0;for(let t of y)try{let s=n(x,t),r=n(_,t.replace(/\.tsx?$/,".js")),l=await a(s,"utf-8"),p=await e(l,{...b,filename:s,sourceMaps:!0,outputPath:r});await o(c(r),{recursive:!0}),await i(r,p.code,"utf-8"),p.map&&await i(`${r}.map`,p.map,"utf-8"),$++}catch(e){j++,console.error(`Failed to compile ${l(h,n(x,t))}:`,e)}if(j>0)throw Error(`Failed to compile ${j} file(s)`);g.isDebug&&g.debug(`Compiled ${$} file(s) with swc`),await d(m,f,g)};let f=async(t,s,r)=>{let l=process.cwd(),p=n(l,s),m=n(l,r),w=u(),d=n(p,t),f=n(m,t.replace(/\.tsx?$/,".js")),g=await a(d,"utf-8"),h=await e(g,{...w,filename:d,sourceMaps:!0,outputPath:f});await o(c(f),{recursive:!0}),await i(f,h.code,"utf-8"),h.map&&await i(`${f}.map`,h.map,"utf-8")},g=async(e,t,a)=>{let i=process.cwd(),r=n(i,t),l=n(i,a),p=n(r,e),m=n(l,e);await o(c(m),{recursive:!0}),await s(p,m)};export const watchWithSwc=async(e,t)=>{let{sourceDir:s="src",outDir:o="./node_modules/.phoenix"}=e??{},a=t?.logger??w(),i=n(process.cwd(),s);a.isDebug&&a.step("Running initial SWC compilation"),await compileWithSwc({sourceDir:s,outDir:o},t),a.isDebug&&a.success("Initial compilation complete");let r=new p,c=m(["**/*.{ts,tsx,html,css,json,txt,md}","../.env*"],{cwd:i,ignored:["**/*.{spec,test}.{ts,tsx}","**/__tests__/**","**/cache.json"],persistent:!0,ignoreInitial:!0});return c.on("all",(e,t)=>{("change"===e||"add"===e)&&r.next({file:t,type:e})}),r.subscribe(async({file:e})=>{let t=l(i,n(i,e));try{e.match(/\.tsx?$/)?(await f(t,s,o),a.fileChanged(t)):(e.match(/\.(html|css|json|txt|md)$/)||e.match(/\.env/))&&(await g(t,s,o),a.fileChanged(t))}catch(e){a.error(`Failed to process ${t}`),a.isDebug&&console.error(e)}}),a.isDebug&&console.log(`
1
+ import{transform as e}from"@swc/core";import{remove as t}from"fs-extra";import{copyFile as s,mkdir as o,readFile as a,writeFile as r}from"fs/promises";import{globby as i}from"globby";import{createRequire as c}from"node:module";import{dirname as l,relative as n,resolve as p}from"path";import{Subject as m}from"rxjs";import{watch as w}from"#package/watch";import{createLogger as d}from"../utils/index.js";let u=()=>({sourceMaps:!0,module:{type:"es6"},jsc:{target:"es2022",parser:{syntax:"typescript",tsx:!0},transform:{react:{runtime:"automatic"}},keepClassNames:!0,experimental:{plugins:[[c(import.meta.url).resolve("@lingui/swc-plugin"),{}]],cacheRoot:"node_modules/.cache/swc"}}}),f=async(e,t,a)=>{let r=process.cwd(),c=p(r,e),m=p(r,t),w=await i(["**/*.{html,css,json,txt,md}","**/.env*"],{cwd:c,ignore:["**/*.{spec,test}.{html,css,json,txt,md}","**/__tests__/**","**/__mocks__/**","**/tsconfig.json",".env.generated"],absolute:!1}),d=0,u=0;for(let e of w)try{let t=p(c,e),a=p(m,e);await o(l(a),{recursive:!0}),await s(t,a),d++}catch(t){u++,console.error(`Failed to copy ${n(r,p(c,e))}:`,t)}if(u>0)throw Error(`Failed to copy ${u} file(s)`);d>0&&a.debug(`Copied ${d} non-compilable file(s)`)};export const compileWithSwc=async(s,c)=>{let{sourceDir:m="src",outDir:w="./node_modules/.phoenix"}=s??{},g=c?.logger??d(),h=process.cwd(),_=p(h,m),x=p(h,w);await t(x);let y=await i(["**/*.{ts,tsx}"],{cwd:_,ignore:["**/*.{spec,test}.{ts,tsx}","**/__tests__/**","**/__mocks__/**"],absolute:!1}),b=u(),$=0,j=0;for(let t of y)try{let s=p(_,t),i=p(x,t.replace(/\.tsx?$/,".js")),c=await a(s,"utf-8"),n=await e(c,{...b,filename:s,sourceMaps:!0,outputPath:i});await o(l(i),{recursive:!0}),await r(i,n.code,"utf-8"),n.map&&await r(`${i}.map`,n.map,"utf-8"),$++}catch(e){j++,console.error(`Failed to compile ${n(h,p(_,t))}:`,e)}if(j>0)throw Error(`Failed to compile ${j} file(s)`);g.isDebug&&g.debug(`Compiled ${$} file(s) with swc`),await f(m,w,g)};let g=async(t,s,i)=>{let c=process.cwd(),n=p(c,s),m=p(c,i),w=u(),d=p(n,t),f=p(m,t.replace(/\.tsx?$/,".js")),g=await a(d,"utf-8"),h=await e(g,{...w,filename:d,sourceMaps:!0,outputPath:f});await o(l(f),{recursive:!0}),await r(f,h.code,"utf-8"),h.map&&await r(`${f}.map`,h.map,"utf-8")},h=async(e,t,a)=>{let r=process.cwd(),i=p(r,t),c=p(r,a),n=p(i,e),m=p(c,e);await o(l(m),{recursive:!0}),await s(n,m)};export const watchWithSwc=async(e,t)=>{let{sourceDir:s="src",outDir:o="./node_modules/.phoenix"}=e??{},a=t?.logger??d(),r=p(process.cwd(),s);a.isDebug&&a.step("Running initial SWC compilation"),await compileWithSwc({sourceDir:s,outDir:o},t),a.isDebug&&a.success("Initial compilation complete");let i=new m,c=w(["**/*.{ts,tsx,html,css,json,txt,md}","../.env*"],{cwd:r,ignored:["**/*.{spec,test}.{ts,tsx}","**/__tests__/**","**/cache.json"],persistent:!0,ignoreInitial:!0});return c.on("all",(e,t)=>{("change"===e||"add"===e)&&i.next({file:t,type:e})}),i.subscribe(async({file:e})=>{let t=n(r,p(r,e));try{e.match(/\.tsx?$/)?(await g(t,s,o),a.fileChanged(t)):(e.match(/\.(html|css|json|txt|md)$/)||e.match(/\.env/))&&(await h(t,s,o),a.fileChanged(t))}catch(e){a.error(`Failed to process ${t}`),a.isDebug&&console.error(e)}}),a.isDebug&&console.log(`
2
2
  👀 Watching ${s} for changes...
3
3
  `),{stop:async()=>{await c.close(),a.isDebug&&a.info("SWC watcher stopped")}}};
@@ -1 +1 @@
1
- import{mkdir as e,readFile as t,realpath as i,rename as a,rm as r,writeFile as s}from"node:fs/promises";import{dirname as o,join as n,relative as l,resolve as p,sep as c}from"node:path";import h from"promise-queue";import{z as d}from"zod";import{RawProjectFiles as f,RuntimeReferenceStore as m,TextFile as w,buildPhoenixDefinitions as u,isTextFile as g,parseApplicationFiles as v}from"#package/application-spec";import{getAllPhxDefinitions as y}from"#package/domain";import{readApplicationFiles as b}from"../application-spec/application-spec-file-reader.js";import{generateAssistantPrompt as S}from"../application-spec/generate-assistant-prompt.js";import{swcEvalExpressionParser as F,swcModuleAnalyzer as N}from"../application-spec/swc-module-analyzer.js";let j=".phoenix/variant-recovery.json",k=d.array(d.object({fileName:d.string(),original:d.string().nullable(),applied:d.string().nullable(),previous:d.string().nullable().optional()})),E=e=>!e.includes("\\")&&!e.split("/").some(e=>".."===e||"."===e||""===e)&&(/^spec\/(?!admin\/).+\.yaml$/.test(e)||/^src\/(?:components|transformers|handlers|elements|_[^/]+)\/.+\.tsx?$/.test(e)),M=e=>`Left ${e} as it is: it was edited outside the variant comparison, so restoring the baseline would overwrite that edit. Review the file and remove what the option added to it`,$=async e=>{try{return await t(e,"utf8")}catch(e){if(e instanceof Error&&"code"in e&&"ENOENT"===e.code)return null;throw e}},C=async(t,i)=>{if(null===i)return void await r(t,{force:!0});await e(o(t),{recursive:!0});let n=`${t}.variant-${crypto.randomUUID()}`;try{await s(n,i),await a(n,t)}finally{await r(n,{force:!0})}},R=(e,t)=>{let i=v({rawProjectFiles:e,phxDefinitions:u(y())},{analyzer:N,evalExpressionParser:F,referenceStore:new m,logger:t});if(!i.ok)throw Error(`Cannot apply variant: ${i.errors.map(e=>`[${e.code}] ${e.message}`).join("\n")}`);let{configurator:a,admin:r,appMetadata:s,infra:o,dataSpec:n}=i.value.applicationSpec,l=i.value.categorizedFiles,p=new Set([...l.webhooks,...l.expressions,...l.actions,...l.invariants,...l.migrations,...l.adminMigrations,...l.adminExpressions,...l.adminInvariants,...l.handlers.filter(e=>"pinned"===e.webhookMembership||"named-handler"===e.webhookMembership),...l.components.filter(e=>"pinned"===e.webhookMembership),...l.adminComponents.filter(e=>"pinned"===e.webhookMembership)].flatMap(e=>[e.file.name,...e.deps]));return JSON.stringify({webhookFiles:e.files.filter(g).filter(e=>p.has(e.name)).sort((e,t)=>e.name.localeCompare(t.name)),appMetadata:s,infra:o,dataSpec:n,model:a.latestModel,schema:a.configurationSchema,dataSchemas:a.dataSchemas,adminModel:r.latestModel,adminSchema:r.configurationSchema,assistant:a.assistant?.sdl,assistantSettings:a.assistantServerSettings,assistantPrompt:a.assistant?S(a.assistant):null},(e,t)=>t instanceof Map?[...t.entries()]:t)};export class VariantFileSession{props;queue=new h(1,1/0);applied=new Map;baseline=new Map;contract;settled=!1;constructor(e){for(let t of(this.props=e,e.rawFiles.files))g(t)&&E(t.name)&&this.baseline.set(t.name,t.content);this.contract=R(e.rawFiles,e.logger)}static async create(e){await VariantFileSession.recover(e.projectRoot,e.logger);let t=await b({projectRoot:e.projectRoot,envs:{}});return new VariantFileSession({...e,rawFiles:t})}static async recover(e,t){let i=await $(n(e,j));if(null!==i){for(let a of k.parse(JSON.parse(i))){let i=await VariantFileSession.resolveFile(e,a.fileName),r=await $(i);if(r!==a.applied&&r!==a.original&&r!==a.previous){t.warn(M(a.fileName));continue}await C(i,a.original)}await r(n(e,j),{force:!0})}}static async resolveFile(e,t){if(!E(t))throw Error(`Cannot override ${t}: variants support frontend spec and TypeScript files only. Keep server code, dependencies, environment files and assets unchanged`);let a=await i(e),r=p(a,t),s=r;for(;;)try{let e=await i(s),r=l(a,e);if(".."===r||r.startsWith(`..${c}`))throw Error(`Cannot override ${t}: its symbolic link leaves the project`);if(e!==s)throw Error(`Cannot override ${t}: it uses a symbolic link. Variant edits require regular files so restoration preserves the original file`);break}catch(e){if(!(e instanceof Error&&"code"in e&&"ENOENT"===e.code))throw e;s=o(s)}return r}getFiles(){return[...this.baseline].map(([e,t])=>({fileName:e,content:t}))}apply(e){return this.queue.add(async()=>{if(this.settled)throw Error("This variant comparison has already ended");let t=new Map;for(let i of e){if(await VariantFileSession.resolveFile(this.props.projectRoot,i.fileName),t.has(i.fileName))throw Error(`Cannot apply variant: ${i.fileName} is specified twice`);t.set(i.fileName,i.content)}if(t.size>0){let e=this.props.rawFiles.files.filter(e=>!t.has(e.name));for(let[i,a]of t)null!==a&&e.push(w(i,a));if(R(f(e),this.props.logger)!==this.contract)throw Error("Cannot apply variant: it changes the model, schemas, data or deployment settings. Variants must need no server preparation")}await this.writeTarget(t,"refuse")})}finish(e){return this.queue.add(async()=>{this.settled||(e||await this.writeTarget(new Map,"keep"),await r(n(this.props.projectRoot,j),{force:!0}),this.settled=!0)})}async writeTarget(t,i){let a=new Set([...this.applied.keys(),...t.keys()]);if(0===a.size)return;let r=new Map;for(let e of a){let t=await VariantFileSession.resolveFile(this.props.projectRoot,e),a=this.applied.has(e)?this.applied.get(e):this.baseline.get(e)??null;if(await $(t)===a){r.set(e,t);continue}if("refuse"===i)throw Error(`Cannot switch variant: ${e} was edited outside the preview, and switching would overwrite that edit. Choose the option that is shown, or close the comparison with \`phoenix variants --close\`, which keeps the edit`);this.props.logger.warn(M(e))}let s=[...r.keys()].map(e=>({fileName:e,original:this.baseline.get(e)??null,previous:this.applied.has(e)?this.applied.get(e)??null:this.baseline.get(e)??null,applied:t.has(e)?t.get(e)??null:this.baseline.get(e)??null}));await e(n(this.props.projectRoot,".phoenix"),{recursive:!0}),await C(n(this.props.projectRoot,j),JSON.stringify(s));let o=new Map(this.applied);try{for(let e of s){let t=r.get(e.fileName);void 0!==t&&await C(t,e.applied)}}catch(e){for(let[e,t]of r)await C(t,o.has(e)?o.get(e)??null:this.baseline.get(e)??null);throw await C(n(this.props.projectRoot,j),JSON.stringify([...o].map(([e,t])=>({fileName:e,original:this.baseline.get(e)??null,applied:t})))),e}for(let[e,i]of(this.applied.clear(),t))this.applied.set(e,i);this.props.onFilesChanged(s.map(e=>({fileName:e.fileName,content:e.applied})))}}
1
+ import{mkdir as e,readFile as t,realpath as i,rename as a,rm as r,writeFile as s}from"node:fs/promises";import{dirname as o,join as n,relative as l,resolve as p,sep as c}from"node:path";import h from"promise-queue";import{z as d}from"zod";import{RawProjectFiles as f,RuntimeReferenceStore as m,TextFile as w,buildPhoenixDefinitions as u,isTextFile as g,parseApplicationFiles as v}from"#package/application-spec";import{generateAssistantPrompt as y,getAllPhxDefinitions as b}from"#package/domain";import{readApplicationFiles as S}from"../application-spec/application-spec-file-reader.js";import{swcEvalExpressionParser as F,swcModuleAnalyzer as N}from"../application-spec/swc-module-analyzer.js";let k=".phoenix/variant-recovery.json",j=d.array(d.object({fileName:d.string(),original:d.string().nullable(),applied:d.string().nullable(),previous:d.string().nullable().optional()})),E=e=>!e.includes("\\")&&!e.split("/").some(e=>".."===e||"."===e||""===e)&&(/^spec\/(?!admin\/).+\.yaml$/.test(e)||/^src\/(?:components|transformers|handlers|elements|_[^/]+)\/.+\.tsx?$/.test(e)),M=e=>`Left ${e} as it is: it was edited outside the variant comparison, so restoring the baseline would overwrite that edit. Review the file and remove what the option added to it`,$=async e=>{try{return await t(e,"utf8")}catch(e){if(e instanceof Error&&"code"in e&&"ENOENT"===e.code)return null;throw e}},C=async(t,i)=>{if(null===i)return void await r(t,{force:!0});await e(o(t),{recursive:!0});let n=`${t}.variant-${crypto.randomUUID()}`;try{await s(n,i),await a(n,t)}finally{await r(n,{force:!0})}},R=(e,t)=>{let i=v({rawProjectFiles:e,phxDefinitions:u(b())},{analyzer:N,evalExpressionParser:F,referenceStore:new m,logger:t});if(!i.ok)throw Error(`Cannot apply variant: ${i.errors.map(e=>`[${e.code}] ${e.message}`).join("\n")}`);let{configurator:a,admin:r,appMetadata:s,infra:o,dataSpec:n}=i.value.applicationSpec,l=i.value.categorizedFiles,p=new Set([...l.webhooks,...l.expressions,...l.actions,...l.invariants,...l.migrations,...l.adminMigrations,...l.adminExpressions,...l.adminInvariants,...l.handlers.filter(e=>"pinned"===e.webhookMembership||"named-handler"===e.webhookMembership),...l.components.filter(e=>"pinned"===e.webhookMembership),...l.adminComponents.filter(e=>"pinned"===e.webhookMembership)].flatMap(e=>[e.file.name,...e.deps]));return JSON.stringify({webhookFiles:e.files.filter(g).filter(e=>p.has(e.name)).sort((e,t)=>e.name.localeCompare(t.name)),appMetadata:s,infra:o,dataSpec:n,model:a.latestModel,schema:a.configurationSchema,dataSchemas:a.dataSchemas,adminModel:r.latestModel,adminSchema:r.configurationSchema,assistant:a.assistant?.sdl,assistantSettings:a.assistantServerSettings,assistantPrompt:a.assistant?y(a.assistant):null},(e,t)=>t instanceof Map?[...t.entries()]:t)};export class VariantFileSession{props;queue=new h(1,1/0);applied=new Map;baseline=new Map;contract;settled=!1;constructor(e){for(let t of(this.props=e,e.rawFiles.files))g(t)&&E(t.name)&&this.baseline.set(t.name,t.content);this.contract=R(e.rawFiles,e.logger)}static async create(e){await VariantFileSession.recover(e.projectRoot,e.logger);let t=await S({projectRoot:e.projectRoot,envs:{}});return new VariantFileSession({...e,rawFiles:t})}static async recover(e,t){let i=await $(n(e,k));if(null!==i){for(let a of j.parse(JSON.parse(i))){let i=await VariantFileSession.resolveFile(e,a.fileName),r=await $(i);if(r!==a.applied&&r!==a.original&&r!==a.previous){t.warn(M(a.fileName));continue}await C(i,a.original)}await r(n(e,k),{force:!0})}}static async resolveFile(e,t){if(!E(t))throw Error(`Cannot override ${t}: variants support frontend spec and TypeScript files only. Keep server code, dependencies, environment files and assets unchanged`);let a=await i(e),r=p(a,t),s=r;for(;;)try{let e=await i(s),r=l(a,e);if(".."===r||r.startsWith(`..${c}`))throw Error(`Cannot override ${t}: its symbolic link leaves the project`);if(e!==s)throw Error(`Cannot override ${t}: it uses a symbolic link. Variant edits require regular files so restoration preserves the original file`);break}catch(e){if(!(e instanceof Error&&"code"in e&&"ENOENT"===e.code))throw e;s=o(s)}return r}getFiles(){return[...this.baseline].map(([e,t])=>({fileName:e,content:t}))}apply(e){return this.queue.add(async()=>{if(this.settled)throw Error("This variant comparison has already ended");let t=new Map;for(let i of e){if(await VariantFileSession.resolveFile(this.props.projectRoot,i.fileName),t.has(i.fileName))throw Error(`Cannot apply variant: ${i.fileName} is specified twice`);t.set(i.fileName,i.content)}if(t.size>0){let e=this.props.rawFiles.files.filter(e=>!t.has(e.name));for(let[i,a]of t)null!==a&&e.push(w(i,a));if(R(f(e),this.props.logger)!==this.contract)throw Error("Cannot apply variant: it changes the model, schemas, data or deployment settings. Variants must need no server preparation")}await this.writeTarget(t,"refuse")})}finish(e){return this.queue.add(async()=>{this.settled||(e||await this.writeTarget(new Map,"keep"),await r(n(this.props.projectRoot,k),{force:!0}),this.settled=!0)})}async writeTarget(t,i){let a=new Set([...this.applied.keys(),...t.keys()]);if(0===a.size)return;let r=new Map;for(let e of a){let t=await VariantFileSession.resolveFile(this.props.projectRoot,e),a=this.applied.has(e)?this.applied.get(e):this.baseline.get(e)??null;if(await $(t)===a){r.set(e,t);continue}if("refuse"===i)throw Error(`Cannot switch variant: ${e} was edited outside the preview, and switching would overwrite that edit. Choose the option that is shown, or close the comparison with \`phoenix variants --close\`, which keeps the edit`);this.props.logger.warn(M(e))}let s=[...r.keys()].map(e=>({fileName:e,original:this.baseline.get(e)??null,previous:this.applied.has(e)?this.applied.get(e)??null:this.baseline.get(e)??null,applied:t.has(e)?t.get(e)??null:this.baseline.get(e)??null}));await e(n(this.props.projectRoot,".phoenix"),{recursive:!0}),await C(n(this.props.projectRoot,k),JSON.stringify(s));let o=new Map(this.applied);try{for(let e of s){let t=r.get(e.fileName);void 0!==t&&await C(t,e.applied)}}catch(e){for(let[e,t]of r)await C(t,o.has(e)?o.get(e)??null:this.baseline.get(e)??null);throw await C(n(this.props.projectRoot,k),JSON.stringify([...o].map(([e,t])=>({fileName:e,original:this.baseline.get(e)??null,applied:t})))),e}for(let[e,i]of(this.applied.clear(),t))this.applied.set(e,i);this.props.onFilesChanged(s.map(e=>({fileName:e.fileName,content:e.applied})))}}
@@ -1 +1 @@
1
- import{lingui as e}from"@lingui/vite-plugin";import i from"@vitejs/plugin-react";import{mkdir as t,readFile as n,writeFile as r}from"fs/promises";import o from"lodash-es/camelCase.js";import{createRequire as a}from"node:module";import{dirname as s,resolve as m}from"path";import{createLogger as l}from"vite";import p from"vite-plugin-css-injected-by-js";import{isUsingLocalSdk as d}from"../utils/package-info.js";import{loadFrontendConfigModule as f}from"./frontend-config.js";import{phxBannerPlugin as c}from"./phx-banner-plugin.js";import{phxCspNoncePlugin as g}from"./phx-csp-nonce-plugin.js";import{phxGlobalIsolationPlugin as u}from"./phx-global-isolation-plugin.js";import{phxLicensesPlugin as h}from"./phx-licenses-plugin.js";import{phxVariantPreviewsPlugin as S}from"./phx-variant-previews-plugin.js";let b=null;export const setViteLogSink=(e,i={})=>{b={sink:e,echo:i.echo??!1}};let y=["react","react-dom","three","@react-three/fiber","@react-three/drei","@react-three/postprocessing","its-fine","@emotion/react","@emotion/styled","@mui/material","@mui/system","@tanstack/react-query","rxjs"],O=e=>{let i=e.DEPLOYMENT_ID;if("string"!=typeof i)throw Error("DEPLOYMENT_ID is required in runtime config");return i};export const getViteDevConfig=async t=>{var n,r;let o,p,c=d(),g=f(),h=g.readRuntimeConfig(),x=g.frontendBuildConfig,D=Object.fromEntries((t?.templateFiles??[]).map(e=>[e,`.phoenix/${e}`]));return{...b&&{customLogger:(n=b.sink,r=b.echo,o=l(),{get hasWarned(){return o.hasWarned},info:(e,i)=>{n("info",e),r&&o.info(e,i)},warn:(e,i)=>{n("warn",e),r&&o.warn(e,i)},warnOnce:(e,i)=>{n("warn",e),r&&o.warnOnce(e,i)},error:(e,i)=>{n("error",e),r&&o.error(e,i)},clearScreen:e=>{r&&o.clearScreen(e)},hasErrorLogged:e=>o.hasErrorLogged(e)}),...b.echo?{}:{clearScreen:!1}},mode:"development",optimizeDeps:{exclude:["@swc/wasm-web"],...c&&{entries:["index.html","admin.html",...t?.templateFiles??[]],force:!0}},...c&&{resolve:{alias:(p=a(m(process.cwd(),"package.json")),y.flatMap(e=>{try{let i=s(p.resolve(`${e}/package.json`));return[{find:RegExp(`^${e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}(/|$)`),replacement:`${i}$1`}]}catch{return[]}}))}},plugins:[i({babel:{plugins:["macros"]}}),e(),{name:"vite:runtime-config",apply:(e,i)=>"build"===i.command||"development"===i.mode,config:e=>{let i=g.readRuntimeConfig(),t=g.frontendBuildConfig;return{...e,define:{...e.define,"phx.frontendEnv":JSON.stringify(i),"globalThis.PHX_SCHEMA_VALIDATOR":JSON.stringify(t.jsonSchemaValidator),"globalThis.PHX_GLTF_DECODER":JSON.stringify(t.gltfDecoder)}}}},u({getDeploymentId:()=>O(g.readRuntimeConfig())}),S()],define:{"process.env":{},"import.meta.env.DEV":!0,"import.meta.env.PROD":!1,"phx.frontendEnv":JSON.stringify(h),"globalThis.PHX_SCHEMA_VALIDATOR":JSON.stringify(x.jsonSchemaValidator),"globalThis.PHX_GLTF_DECODER":JSON.stringify(x.gltfDecoder)},build:{rollupOptions:{input:{index:".phoenix/index.html",admin:".phoenix/admin.html",...D}}},root:m(process.cwd(),"./.phoenix"),server:{watch:{ignored:["./**/*.{ts,tsx}","./.swc/**","../spec/**","../src/**"]}}}};export const getViteBuildConfigs=async a=>{let l=f(),d=l.readRuntimeConfig(),S=l.frontendBuildConfig,b=h(),y=c({sdkVersion:a.sdkVersion,banner:a.banner}),x=[{name:"salsita-configurator",entryFile:"./configurator.ts",mainScriptPath:"./configurator.ts",htmlFiles:["./index.html",...{templateFiles:a.templateFiles}.templateFiles],main:!0,format:"iife"},{name:"salsita-admin",entryFile:"./admin.ts",mainScriptPath:"./admin.ts",htmlFiles:["./admin.html"],main:!1,format:"iife"},{name:"salsita-embedded-admin",entryFile:"./embedded-admin.ts",mainScriptPath:"./embedded-admin.ts",htmlFiles:[],main:!1,format:"es"},{name:"salsita-embedded-configurator",entryFile:"./embedded-configurator.ts",mainScriptPath:"./embedded-configurator.ts",htmlFiles:[],main:!1,format:"es"}].map(f=>({plugins:[i({babel:{plugins:["macros"]}}),e(),p({useStrictCSP:!0}),g(),u({getDeploymentId:()=>O(l.readRuntimeConfig())}),{name:"vite:lib-index",writeBundle:async()=>{if(!f.htmlFiles.length)return;let e="iife"===f.format?`${f.name}.iife.js`:`${f.name}.js`;for(let i of f.htmlFiles){if(f.main&&a.enableEditor&&"./index.html"===i)continue;let o=m("./.phoenix",i),l=m("./.phoenix/dist/frontend",i);await t(s(l),{recursive:!0});let p=(await n(o,"utf-8")).replace(f.mainScriptPath,e);await r(l,p,"utf-8")}}},b,y],build:{outDir:"./dist/frontend",chunkSizeWarningLimit:4e3,lib:{entry:f.entryFile,name:o(f.name),formats:[f.format],fileName:()=>"iife"===f.format?`${f.name}.iife.js`:`${f.name}.js`},rollupOptions:{external:[],output:{assetFileNames:`${f.name}.[ext]`}},minify:!0,emptyOutDir:!1},root:m(process.cwd(),"./.phoenix"),define:{"process.env":{},"process.env.NODE_ENV":JSON.stringify("production"),"phx.frontendEnv":JSON.stringify(d),"globalThis.PHX_SCHEMA_VALIDATOR":JSON.stringify(S.jsonSchemaValidator),"globalThis.PHX_GLTF_DECODER":JSON.stringify(S.gltfDecoder)}}));return a.enableEditor?[...x,{plugins:[i({babel:{plugins:["macros"]}}),e(),p({useStrictCSP:!0}),g(),b,y],build:{outDir:"./dist/frontend",chunkSizeWarningLimit:4e3,rollupOptions:{external:[]},minify:!0,emptyOutDir:!1},root:m(process.cwd(),"./.phoenix"),define:{"process.env":{},"process.env.NODE_ENV":JSON.stringify("production"),"phx.frontendEnv":JSON.stringify(d),"globalThis.PHX_SCHEMA_VALIDATOR":JSON.stringify(S.jsonSchemaValidator),"globalThis.PHX_GLTF_DECODER":JSON.stringify(S.gltfDecoder)}}]:x};
1
+ import{getConfig as e}from"@lingui/conf";import{lingui as i}from"@lingui/vite-plugin";import t from"@vitejs/plugin-react";import{mkdir as n,readFile as r,writeFile as o}from"fs/promises";import a from"lodash-es/camelCase.js";import{createRequire as s}from"node:module";import{dirname as l,resolve as m}from"path";import{createLogger as f}from"vite";import p from"vite-plugin-css-injected-by-js";import{isUsingLocalSdk as d}from"../utils/package-info.js";import{loadFrontendConfigModule as c}from"./frontend-config.js";import{LINGUI_CONFIG_PATH as g}from"./lingui.js";import{phxBannerPlugin as u}from"./phx-banner-plugin.js";import{phxCspNoncePlugin as h}from"./phx-csp-nonce-plugin.js";import{phxGlobalIsolationPlugin as b}from"./phx-global-isolation-plugin.js";import{phxLicensesPlugin as S}from"./phx-licenses-plugin.js";import{phxVariantPreviewsPlugin as y}from"./phx-variant-previews-plugin.js";let O=null;export const setViteLogSink=(e,i={})=>{O={sink:e,echo:i.echo??!1}};let x=["react","react-dom","three","@react-three/fiber","@react-three/drei","@react-three/postprocessing","its-fine","@emotion/react","@emotion/styled","@mui/material","@mui/system","@tanstack/react-query","rxjs"],D=()=>[s(import.meta.url).resolve("@lingui/babel-plugin-lingui-macro"),{linguiConfig:e({configPath:g})}],E=e=>{let i=e.DEPLOYMENT_ID;if("string"!=typeof i)throw Error("DEPLOYMENT_ID is required in runtime config");return i};export const getViteDevConfig=async e=>{var n,r;let o,a,p=d(),u=c(),h=u.readRuntimeConfig(),S=u.frontendBuildConfig,v=D(),j=Object.fromEntries((e?.templateFiles??[]).map(e=>[e,`.phoenix/${e}`]));return{...O&&{customLogger:(n=O.sink,r=O.echo,o=f(),{get hasWarned(){return o.hasWarned},info:(e,i)=>{n("info",e),r&&o.info(e,i)},warn:(e,i)=>{n("warn",e),r&&o.warn(e,i)},warnOnce:(e,i)=>{n("warn",e),r&&o.warnOnce(e,i)},error:(e,i)=>{n("error",e),r&&o.error(e,i)},clearScreen:e=>{r&&o.clearScreen(e)},hasErrorLogged:e=>o.hasErrorLogged(e)}),...O.echo?{}:{clearScreen:!1}},mode:"development",optimizeDeps:{exclude:["@swc/wasm-web"],...p&&{entries:["index.html","admin.html",...e?.templateFiles??[]],force:!0}},...p&&{resolve:{alias:(a=s(m(process.cwd(),"package.json")),x.flatMap(e=>{try{let i=l(a.resolve(`${e}/package.json`));return[{find:RegExp(`^${e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}(/|$)`),replacement:`${i}$1`}]}catch{return[]}}))}},plugins:[t({babel:{plugins:[v]}}),i({configPath:g}),{name:"vite:runtime-config",apply:(e,i)=>"build"===i.command||"development"===i.mode,config:e=>{let i=u.readRuntimeConfig(),t=u.frontendBuildConfig;return{...e,define:{...e.define,"phx.frontendEnv":JSON.stringify(i),"globalThis.PHX_SCHEMA_VALIDATOR":JSON.stringify(t.jsonSchemaValidator),"globalThis.PHX_GLTF_DECODER":JSON.stringify(t.gltfDecoder)}}}},b({getDeploymentId:()=>E(u.readRuntimeConfig())}),y()],define:{"process.env":{},"import.meta.env.DEV":!0,"import.meta.env.PROD":!1,"phx.frontendEnv":JSON.stringify(h),"globalThis.PHX_SCHEMA_VALIDATOR":JSON.stringify(S.jsonSchemaValidator),"globalThis.PHX_GLTF_DECODER":JSON.stringify(S.gltfDecoder)},build:{rollupOptions:{input:{index:".phoenix/index.html",admin:".phoenix/admin.html",...j}}},root:m(process.cwd(),"./.phoenix"),server:{watch:{ignored:["./**/*.{ts,tsx}","./.swc/**","../spec/**","../src/**"]}}}};export const getViteBuildConfigs=async e=>{let s=c(),f=s.readRuntimeConfig(),d=s.frontendBuildConfig,y=D(),O=S(),x=u({sdkVersion:e.sdkVersion,banner:e.banner}),v=[{name:"salsita-configurator",entryFile:"./configurator.ts",mainScriptPath:"./configurator.ts",htmlFiles:["./index.html",...{templateFiles:e.templateFiles}.templateFiles],main:!0,format:"iife"},{name:"salsita-admin",entryFile:"./admin.ts",mainScriptPath:"./admin.ts",htmlFiles:["./admin.html"],main:!1,format:"iife"},{name:"salsita-embedded-admin",entryFile:"./embedded-admin.ts",mainScriptPath:"./embedded-admin.ts",htmlFiles:[],main:!1,format:"es"},{name:"salsita-embedded-configurator",entryFile:"./embedded-configurator.ts",mainScriptPath:"./embedded-configurator.ts",htmlFiles:[],main:!1,format:"es"}].map(c=>({plugins:[t({babel:{plugins:[y]}}),i({configPath:g}),p({useStrictCSP:!0}),h(),b({getDeploymentId:()=>E(s.readRuntimeConfig())}),{name:"vite:lib-index",writeBundle:async()=>{if(!c.htmlFiles.length)return;let i="iife"===c.format?`${c.name}.iife.js`:`${c.name}.js`;for(let t of c.htmlFiles){if(c.main&&e.enableEditor&&"./index.html"===t)continue;let a=m("./.phoenix",t),s=m("./.phoenix/dist/frontend",t);await n(l(s),{recursive:!0});let f=(await r(a,"utf-8")).replace(c.mainScriptPath,i);await o(s,f,"utf-8")}}},O,x],build:{outDir:"./dist/frontend",chunkSizeWarningLimit:4e3,lib:{entry:c.entryFile,name:a(c.name),formats:[c.format],fileName:()=>"iife"===c.format?`${c.name}.iife.js`:`${c.name}.js`},rollupOptions:{external:[],output:{assetFileNames:`${c.name}.[ext]`}},minify:!0,emptyOutDir:!1},root:m(process.cwd(),"./.phoenix"),define:{"process.env":{},"process.env.NODE_ENV":JSON.stringify("production"),"phx.frontendEnv":JSON.stringify(f),"globalThis.PHX_SCHEMA_VALIDATOR":JSON.stringify(d.jsonSchemaValidator),"globalThis.PHX_GLTF_DECODER":JSON.stringify(d.gltfDecoder)}}));return e.enableEditor?[...v,{plugins:[t({babel:{plugins:[y]}}),i({configPath:g}),p({useStrictCSP:!0}),h(),O,x],build:{outDir:"./dist/frontend",chunkSizeWarningLimit:4e3,rollupOptions:{external:[]},minify:!0,emptyOutDir:!1},root:m(process.cwd(),"./.phoenix"),define:{"process.env":{},"process.env.NODE_ENV":JSON.stringify("production"),"phx.frontendEnv":JSON.stringify(f),"globalThis.PHX_SCHEMA_VALIDATOR":JSON.stringify(d.jsonSchemaValidator),"globalThis.PHX_GLTF_DECODER":JSON.stringify(d.gltfDecoder)}}]:v};
@@ -0,0 +1 @@
1
+ export { isInsideGitRepository } from './is-inside-git-repository.js';
@@ -0,0 +1 @@
1
+ export{isInsideGitRepository}from"./is-inside-git-repository.js";
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Whether a folder is inside a git work tree: the folder or one of its parents, up to the file-system root, holds a
3
+ * `.git` entry. The entry is a directory in a plain checkout and a file in a linked worktree or a submodule; both
4
+ * count. Only the file system is read, so the answer does not depend on git being installed.
5
+ */
6
+ export declare const isInsideGitRepository: (folder: string) => boolean;
@@ -0,0 +1 @@
1
+ import{existsSync as t,realpathSync as r}from"fs";import{dirname as e,join as i,resolve as o}from"path";export const isInsideGitRepository=f=>{let n=(t=>{let e=o(t);try{return r(e)}catch{return e}})(f);for(;;){if(t(i(n,".git")))return!0;let r=e(n);if(r===n)return!1;n=r}};
@@ -4,9 +4,12 @@ export { formatEnvContent, formatEnvLine } from './env-file.js';
4
4
  export { parseChangelog, getLatestVersion, getVersion, paginateVersions, getVersionNumbers, type ChangelogVersion, type PaginatedVersions, } from './changelog-parser.js';
5
5
  export { createDirectoryFromYaml, exists, scanFolderForFiles, syncChangedFiles, syncExistingFolders, validateFolders, writeFileIfNotExists, writeFilesIfNotExists, writeRawFiles, } from './file-system.js';
6
6
  export { FileLogger } from './file-logger.js';
7
+ export { isInsideGitRepository } from './git/index.js';
7
8
  export { type Logger, type CreateLoggerOptions, createLogger } from './logger.js';
8
- export { addWorkspaceOverrides, ensureWorkspaceInstallSettings, getLocalOverrides, getSdkPackages, getWorkspaceDir, hasLocalOverrides, readPackageJson, removeWorkspaceOverrides, } from './package-info.js';
9
+ export { addWorkspaceOverrides, getLocalOverrides, getSdkPackages, getWorkspaceDir, hasLocalOverrides, readPackageJson, removeWorkspaceOverrides, } from './package-info.js';
10
+ export { naturalCompare } from './natural-compare.js';
11
+ export { type PackageManagerCommands, assertPnpmProject, findPackageManagerCommands } from './package-manager/index.js';
9
12
  export { toPascalCase } from './pascal-case.js';
10
13
  export { readGitCommit } from './read-git-commit.js';
11
- export { type RunCommandProps, runCommand } from './run-command.js';
14
+ export { type RunCommandProps, type RunSdkToolProps, runCommand, runSdkTool } from './run-command.js';
12
15
  export { type FileUploadInfo, type UploadLinksData, uploadFilesWithPresignedUrls, readUploadLinks, } from './upload-utils.js';
@@ -1 +1 @@
1
- export{askQuestion}from"./ask-question.js";export{checkBundleSizeBudgets}from"./check-bundle-size-budgets.js";export{formatEnvContent,formatEnvLine}from"./env-file.js";export{parseChangelog,getLatestVersion,getVersion,paginateVersions,getVersionNumbers}from"./changelog-parser.js";export{createDirectoryFromYaml,exists,scanFolderForFiles,syncChangedFiles,syncExistingFolders,validateFolders,writeFileIfNotExists,writeFilesIfNotExists,writeRawFiles}from"./file-system.js";export{FileLogger}from"./file-logger.js";export{createLogger}from"./logger.js";export{addWorkspaceOverrides,ensureWorkspaceInstallSettings,getLocalOverrides,getSdkPackages,getWorkspaceDir,hasLocalOverrides,readPackageJson,removeWorkspaceOverrides}from"./package-info.js";export{toPascalCase}from"./pascal-case.js";export{readGitCommit}from"./read-git-commit.js";export{runCommand}from"./run-command.js";export{uploadFilesWithPresignedUrls,readUploadLinks}from"./upload-utils.js";
1
+ export{askQuestion}from"./ask-question.js";export{checkBundleSizeBudgets}from"./check-bundle-size-budgets.js";export{formatEnvContent,formatEnvLine}from"./env-file.js";export{parseChangelog,getLatestVersion,getVersion,paginateVersions,getVersionNumbers}from"./changelog-parser.js";export{createDirectoryFromYaml,exists,scanFolderForFiles,syncChangedFiles,syncExistingFolders,validateFolders,writeFileIfNotExists,writeFilesIfNotExists,writeRawFiles}from"./file-system.js";export{FileLogger}from"./file-logger.js";export{isInsideGitRepository}from"./git/index.js";export{createLogger}from"./logger.js";export{addWorkspaceOverrides,getLocalOverrides,getSdkPackages,getWorkspaceDir,hasLocalOverrides,readPackageJson,removeWorkspaceOverrides}from"./package-info.js";export{naturalCompare}from"./natural-compare.js";export{assertPnpmProject,findPackageManagerCommands}from"./package-manager/index.js";export{toPascalCase}from"./pascal-case.js";export{readGitCommit}from"./read-git-commit.js";export{runCommand,runSdkTool}from"./run-command.js";export{uploadFilesWithPresignedUrls,readUploadLinks}from"./upload-utils.js";
@@ -0,0 +1 @@
1
+ export { assertSupportedNodeVersion, findUnsupportedNodeVersionMessage } from './supported-node-version.js';
@@ -0,0 +1 @@
1
+ export{assertSupportedNodeVersion,findUnsupportedNodeVersionMessage}from"./supported-node-version.js";
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Explains why the SDK cannot run on the given Node.js version, or returns `undefined` when the version satisfies the
3
+ * SDK's `engines.node` range.
4
+ */
5
+ export declare const findUnsupportedNodeVersionMessage: (version: string) => string | undefined;
6
+ /**
7
+ * Stops the process with a non-zero exit code when the running Node.js does not satisfy the SDK's `engines.node`
8
+ * range. The `phoenix` binary's entry module (`bin.ts`) calls it and only then loads `cli.ts` with a dynamic import:
9
+ * static imports are evaluated before the importing module's body, so on an older Node.js the CLI's own imports could
10
+ * fail with an unrelated error before a check in its body ran.
11
+ */
12
+ export declare const assertSupportedNodeVersion: () => void;
@@ -0,0 +1,4 @@
1
+ import{readFileSync as e}from"node:fs";import{satisfies as o}from"semver";import{z as s}from"zod";let r=s.object({name:s.string(),engines:s.object({node:s.string()})});export const findUnsupportedNodeVersionMessage=s=>{let{name:t,engines:n}=r.parse(JSON.parse(e(new URL("../../../../package.json",import.meta.url),"utf-8")));if(!o(s,n.node,{includePrerelease:!0}))return`${t} requires Node.js ${n.node}, but this is Node.js ${s}.
2
+ The SDK and the tools it runs use Node.js features that older versions do not have, so a command would fail part way through.
3
+ Switch to a Node.js version that satisfies ${n.node} and run the command again.`};export const assertSupportedNodeVersion=()=>{let e=findUnsupportedNodeVersionMessage(process.version);void 0!==e&&(process.stderr.write(`${e}
4
+ `),process.exit(1))};
@@ -10,15 +10,6 @@ export declare const readPackageJson: (path?: string) => PackageJson;
10
10
  export declare const getWorkspaceDir: () => string;
11
11
  export declare const addWorkspaceOverrides: (entries: Record<string, string>) => void;
12
12
  export declare const removeWorkspaceOverrides: (names: readonly string[]) => void;
13
- /**
14
- * Makes a standalone project installable with pnpm 11: its `pnpm-workspace.yaml` decides the build scripts of the
15
- * SDK's dependencies and exempts the SDK's own packages from the minimum release age. Only missing answers are
16
- * added, so a value the project set stays, and the file travels with a deploy so the server-side install follows it.
17
- *
18
- * A project inside a monorepo is left alone: the workspace root owns these settings, and a file in the project
19
- * folder would turn it into a workspace root of its own.
20
- */
21
- export declare const ensureWorkspaceInstallSettings: (projectRoot: string) => void;
22
13
  export declare const hasLocalOverrides: () => boolean;
23
14
  export declare const getLocalOverrides: () => string[];
24
15
  export declare const hasLocalSymlinks: () => boolean;
@@ -1 +1 @@
1
- import{existsSync as e,lstatSync as t,readFileSync as r,readdirSync as s,writeFileSync as o}from"fs";import{dirname as a,join as i,resolve as l}from"path";import{isMap as n,isScalar as c,isSeq as d,parse as p,parseDocument as m}from"yaml";let u="pnpm-workspace.yaml",f="@salsita-ai/";export const readPackageJson=(t=".")=>{let s=l(t,"package.json");if(!e(s))throw Error(`package.json not found at ${s}`);return JSON.parse(r(s,"utf8"))};let g=(t=process.cwd())=>{let r=l(t);for(;;){let t=i(r,u);if(e(t))return t;let s=a(r);if(s===r)return;r=s}},k=()=>g()??i(process.cwd(),u),h=()=>{try{let e=g();if(!e)return{};let t=p(r(e,"utf8"));return t?.overrides??{}}catch{return{}}};export const getWorkspaceDir=()=>a(k());export const addWorkspaceOverrides=t=>{let s=k(),a=m(e(s)?r(s,"utf8"):"");Object.entries(t).forEach(([e,t])=>{a.setIn(["overrides",e],t)}),a.setIn(["optimisticRepeatInstall"],!1),o(s,a.toString())};export const removeWorkspaceOverrides=e=>{let t=g();if(!t)return;let s=m(r(t,"utf8"));e.forEach(e=>{s.deleteIn(["overrides",e])});let a=s.getIn(["overrides"]);n(a)&&0===a.items.length&&s.delete("overrides"),s.delete("optimisticRepeatInstall"),o(t,s.toString())};let x={"@swc/core":!0,esbuild:!0,"es5-ext":!1},y=`${f}*`;export const ensureWorkspaceInstallSettings=t=>{let s=i(t,u);if(!e(s)&&g(t))return;let a=e(s)?r(s,"utf8"):"",l=m(a);n(l.get("allowBuilds"))||l.set("allowBuilds",l.createNode({})),Object.entries(x).forEach(([e,t])=>{"boolean"!=typeof l.getIn(["allowBuilds",e])&&l.setIn(["allowBuilds",e],t)});let p=l.getIn(["minimumReleaseAgeExclude"]);d(p)?p.items.some(e=>c(e)&&e.value===y)||p.add(y):l.setIn(["minimumReleaseAgeExclude"],l.createNode([y]));let f=l.toString();f!==a&&o(s,f)};export const hasLocalOverrides=()=>Object.keys(h()).some(e=>e.startsWith(f));export const getLocalOverrides=()=>Object.keys(h()).filter(e=>e.startsWith(f));let v=["@salsita-ai/common","@salsita-ai/contracts","@salsita-ai/sdk"];export const hasLocalSymlinks=()=>v.some(e=>{let r=l("node_modules",e);try{return t(r).isSymbolicLink()}catch{return!1}});export const isUsingLocalSdk=()=>hasLocalOverrides()||hasLocalSymlinks();export const getSdkPackages=t=>{let r=l(t,"packages/libs");if(!e(r))throw Error(`SDK libs directory not found at ${r}`);return s(r,{withFileTypes:!0}).filter(e=>e.isDirectory()).map(e=>e.name).map(e=>{let t=i(r,e),s=readPackageJson(t);if(!s.name)throw Error(`Package at ${t} has no name in package.json`);return{name:s.name,path:t}})};
1
+ import{existsSync as e,lstatSync as t,readFileSync as r,readdirSync as s,writeFileSync as o}from"fs";import{dirname as a,join as i,resolve as n}from"path";import{isMap as c,parse as l,parseDocument as p}from"yaml";let m="pnpm-workspace.yaml",d="@salsita-ai/";export const readPackageJson=(t=".")=>{let s=n(t,"package.json");if(!e(s))throw Error(`package.json not found at ${s}`);return JSON.parse(r(s,"utf8"))};let f=(t=process.cwd())=>{let r=n(t);for(;;){let t=i(r,m);if(e(t))return t;let s=a(r);if(s===r)return;r=s}},k=()=>f()??i(process.cwd(),m),h=()=>{try{let e=f();if(!e)return{};let t=l(r(e,"utf8"));return t?.overrides??{}}catch{return{}}};export const getWorkspaceDir=()=>a(k());export const addWorkspaceOverrides=t=>{let s=k(),a=p(e(s)?r(s,"utf8"):"");Object.entries(t).forEach(([e,t])=>{a.setIn(["overrides",e],t)}),a.setIn(["optimisticRepeatInstall"],!1),o(s,a.toString())};export const removeWorkspaceOverrides=e=>{let t=f();if(!t)return;let s=p(r(t,"utf8"));e.forEach(e=>{s.deleteIn(["overrides",e])});let a=s.getIn(["overrides"]);c(a)&&0===a.items.length&&s.delete("overrides"),s.delete("optimisticRepeatInstall"),o(t,s.toString())};export const hasLocalOverrides=()=>Object.keys(h()).some(e=>e.startsWith(d));export const getLocalOverrides=()=>Object.keys(h()).filter(e=>e.startsWith(d));let u=["@salsita-ai/common","@salsita-ai/contracts","@salsita-ai/sdk"];export const hasLocalSymlinks=()=>u.some(e=>{let r=n("node_modules",e);try{return t(r).isSymbolicLink()}catch{return!1}});export const isUsingLocalSdk=()=>hasLocalOverrides()||hasLocalSymlinks();export const getSdkPackages=t=>{let r=n(t,"packages/libs");if(!e(r))throw Error(`SDK libs directory not found at ${r}`);return s(r,{withFileTypes:!0}).filter(e=>e.isDirectory()).map(e=>e.name).map(e=>{let t=i(r,e),s=readPackageJson(t);if(!s.name)throw Error(`Package at ${t} has no name in package.json`);return{name:s.name,path:t}})};
@@ -0,0 +1,2 @@
1
+ export { type PackageManagerCommands, findPackageManagerCommands } from './package-manager-commands.js';
2
+ export { assertPnpmProject } from './pnpm-project.js';
@@ -0,0 +1 @@
1
+ export{findPackageManagerCommands}from"./package-manager-commands.js";export{assertPnpmProject}from"./pnpm-project.js";
@@ -0,0 +1,19 @@
1
+ /**
2
+ * The commands of a package manager the CLI names in the next steps it prints, so a developer can copy the one for
3
+ * the package manager they use. Phoenix works with any package manager; these only phrase the hints.
4
+ */
5
+ export interface PackageManagerCommands {
6
+ /** Installs the project's dependencies, such as `npm install`. */
7
+ readonly install: string;
8
+ /** Adds a package to the project's dependencies, such as `npm install @salsita-ai/sdk`. */
9
+ readonly add: (packageName: string) => string;
10
+ /** Runs a `phoenix` command from the project's install, such as `npx phoenix sync`. */
11
+ readonly phoenix: (args: string) => string;
12
+ }
13
+ /**
14
+ * The commands of the package manager that started the CLI, read from the `npm_config_user_agent` value npm, pnpm,
15
+ * Yarn and Bun set for the binaries they run (`pnpm/11.1.3 npm/? node/v22.13.0 linux x64`). `undefined` when the CLI
16
+ * was started some other way, such as straight from `node_modules/.bin`, or by a package manager it does not know;
17
+ * the hint then names no package manager.
18
+ */
19
+ export declare const findPackageManagerCommands: (userAgent: string | undefined) => PackageManagerCommands | undefined;
@@ -0,0 +1 @@
1
+ let n=new Map([["pnpm",{install:"pnpm install",add:n=>`pnpm add ${n}`,phoenix:n=>`pnpm phoenix ${n}`}],["npm",{install:"npm install",add:n=>`npm install ${n}`,phoenix:n=>`npx phoenix ${n}`}],["yarn",{install:"yarn install",add:n=>`yarn add ${n}`,phoenix:n=>`yarn phoenix ${n}`}],["bun",{install:"bun install",add:n=>`bun add ${n}`,phoenix:n=>`bunx phoenix ${n}`}]]);export const findPackageManagerCommands=a=>{let p=a?.split("/")[0]?.trim();return void 0===p?void 0:n.get(p)};
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Stops a pnpm-only command in a project that clearly installs with another package manager: one with another
3
+ * package manager's lockfile and no `pnpm-lock.yaml`. A project without any lockfile is let through, as it has not
4
+ * installed yet. Only the project folder is looked at.
5
+ */
6
+ export declare const assertPnpmProject: (props: {
7
+ readonly projectRoot: string;
8
+ readonly command: string;
9
+ }) => void;
@@ -0,0 +1 @@
1
+ import{existsSync as o}from"fs";import{join as t}from"path";let n=["package-lock.json","npm-shrinkwrap.json","yarn.lock","bun.lock","bun.lockb"];export const assertPnpmProject=r=>{if(o(t(r.projectRoot,"pnpm-lock.yaml")))return;let a=n.find(n=>o(t(r.projectRoot,n)));if(void 0!==a)throw Error(`phoenix ${r.command} works with pnpm only, and this project installs with another package manager: it has ${a} and no pnpm-lock.yaml. It is an internal tool for linking a local SDK checkout through the overrides in pnpm-workspace.yaml. Use it in a project that installs with pnpm.`)};
@@ -1,4 +1,5 @@
1
1
  import type { Logger } from './logger.js';
2
+ import { type SdkTool } from './sdk-tool/index.js';
2
3
  export interface RunCommandProps {
3
4
  readonly command: string;
4
5
  readonly args: readonly string[];
@@ -7,6 +8,16 @@ export interface RunCommandProps {
7
8
  readonly cwd?: string;
8
9
  readonly extraEnv?: Record<string, string>;
9
10
  }
11
+ export interface RunSdkToolProps extends Omit<RunCommandProps, 'command'> {
12
+ readonly tool: SdkTool;
13
+ }
10
14
  export declare const runCommand: (props: RunCommandProps, context?: {
11
15
  readonly logger: Logger;
12
16
  }) => Promise<void>;
17
+ /**
18
+ * Runs a tool from the SDK's own installation with the Node.js that runs the CLI. It starts no shell, so paths
19
+ * with spaces reach the tool unchanged.
20
+ */
21
+ export declare const runSdkTool: (props: RunSdkToolProps, context?: {
22
+ readonly logger: Logger;
23
+ }) => Promise<void>;
@@ -1 +1 @@
1
- import{spawn as e}from"node:child_process";import{createLogger as r}from"./logger.js";export const runCommand=async(o,t)=>{let n=t?.logger??r(),{command:s,args:i,description:a,quiet:l=!1,cwd:c,extraEnv:d}=o;l?n.isDebug&&n.debug(`Running: ${s} ${i.join(" ")}`):n.step(a);let u=n.isDebug?"inherit":l?"pipe":"inherit";await new Promise((r,o)=>{let t=e(s,i,{stdio:u,shell:!0,cwd:c,env:d?{...process.env,...d}:void 0}),l=[],f=[],m=!1;t.stdout?.on("data",e=>l.push(Buffer.from(e))),t.stderr?.on("data",e=>f.push(Buffer.from(e))),t.once("error",e=>{m=!0,n.error(`${a} failed to execute`),n.error(`Error: ${e.message}`),o(Error(`Failed to execute command '${s}': ${e.message}. Ensure the command is installed and available in PATH.`))}),t.once("close",(e,t)=>{if(!m){if(0!==e){let r=null!==e?`exit code ${e}`:"unknown error (process was terminated or failed to start)";n.error(`${a} failed with ${r}`),t&&n.error(`Process was killed with signal: ${t}`),l.length>0&&console.error(Buffer.concat(l).toString()),f.length>0&&console.error(Buffer.concat(f).toString()),o(Error(`${a} failed with ${r}`));return}r()}})}),(!l||n.isDebug)&&n.success(`${a} completed`)};
1
+ import{spawn as e}from"node:child_process";import{createLogger as r}from"./logger.js";import{resolveSdkToolBin as o}from"./sdk-tool/index.js";let t=async(o,t)=>{let s=t?.logger??r(),{command:n,file:i,shell:a,startFailureHint:l,args:c,description:d,quiet:m=!1,cwd:u,extraEnv:f}=o;m?s.isDebug&&s.debug(`Running: ${n} ${c.join(" ")}`):s.step(d);let g=s.isDebug?"inherit":m?"pipe":"inherit";await new Promise((r,o)=>{let t=e(i,c,{stdio:g,shell:a,cwd:u,env:f?{...process.env,...f}:void 0}),m=[],p=[],h=!1;t.stdout?.on("data",e=>m.push(Buffer.from(e))),t.stderr?.on("data",e=>p.push(Buffer.from(e))),t.once("error",e=>{h=!0,s.error(`${d} failed to execute`),s.error(`Error: ${e.message}`),o(Error(`Failed to execute command '${n}': ${e.message}. ${l}`))}),t.once("close",(e,t)=>{if(!h){if(0!==e){let r=null!==e?`exit code ${e}`:"unknown error (process was terminated or failed to start)";s.error(`${d} failed with ${r}`),t&&s.error(`Process was killed with signal: ${t}`),m.length>0&&console.error(Buffer.concat(m).toString()),p.length>0&&console.error(Buffer.concat(p).toString()),o(Error(`${d} failed with ${r}`));return}r()}})}),(!m||s.isDebug)&&s.success(`${d} completed`)};export const runCommand=async(e,r)=>{await t({...e,file:e.command,shell:!0,startFailureHint:"Ensure the command is installed and available in PATH."},r)};export const runSdkTool=async(e,r)=>{let{tool:s,args:n,...i}=e;await t({...i,command:s.binName,file:process.execPath,args:[o(s),...n],shell:!1,startFailureHint:"Ensure Node.js can start this process."},r)};
@@ -0,0 +1 @@
1
+ export { type SdkTool, resolveSdkToolBin } from './resolve-sdk-tool-bin.js';
@@ -0,0 +1 @@
1
+ export{resolveSdkToolBin}from"./resolve-sdk-tool-bin.js";
@@ -0,0 +1,15 @@
1
+ /**
2
+ * A command-line tool the CLI runs, such as `tsc` for `phoenix check`. The SDK installs every such tool as one of
3
+ * its own `dependencies` and runs that copy, so the versions a project installs do not decide them.
4
+ */
5
+ export interface SdkTool {
6
+ /** The name the SDK's `package.json` lists the package under, the alias where the SDK installs it under one */
7
+ readonly packageName: string;
8
+ /** The name of the binary in the package's `bin` field */
9
+ readonly binName: string;
10
+ }
11
+ /**
12
+ * Returns the absolute path of a tool's binary in the SDK's own installation. It never looks at `PATH` or the
13
+ * project's `node_modules`, so the CLI runs the same tool in every project.
14
+ */
15
+ export declare const resolveSdkToolBin: (tool: SdkTool) => string;
@@ -0,0 +1 @@
1
+ import{existsSync as e,readFileSync as o}from"node:fs";import{createRequire as t}from"node:module";import{join as n,resolve as i}from"node:path";import{z as a}from"zod";let r=a.object({name:a.string(),bin:a.union([a.string(),a.record(a.string())]).optional()}),s=t(import.meta.url);export const resolveSdkToolBin=t=>{var a,p;let d=(o=>{let t=(s.resolve.paths(o)??[]).map(e=>n(e,o)).find(o=>e(n(o,"package.json")));if(void 0===t)throw Error(`Cannot find the package '${o}' in the installation of @salsita-ai/sdk. The SDK runs its own copy of it, so it is one of the SDK's dependencies. Reinstall the project's dependencies.`);return t})(t.packageName),l=(a=r.parse(JSON.parse(o(n(d,"package.json"),"utf-8"))),p=t.binName,"string"==typeof a.bin?a.name.replace(/^@[^/]+\//,"")===p?a.bin:void 0:a.bin?.[p]);if(void 0===l)throw Error(`The package '${t.packageName}' in the installation of @salsita-ai/sdk has no binary '${t.binName}'. The SDK expects it there to run it. Reinstall the project's dependencies.`);return i(d,l)};
@@ -17,5 +17,5 @@ export declare const CommonAnalyticsFactory: {
17
17
  Initialized: typeof Initialized;
18
18
  ConfigurationLoaded: typeof ConfigurationLoaded;
19
19
  };
20
- export declare const initializeAnalyticsService: (config: AnyApplicationConfig, logger: Logger, isDev: boolean) => AnalyticsSystem;
20
+ export declare const initializeAnalyticsService: (config: Pick<AnyApplicationConfig, 'services' | 'defaultEnvs'>, logger: Logger, isDev: boolean) => AnalyticsSystem;
21
21
  export {};