@salsita-ai/sdk 0.50.0-develop.b9eb39baf0 → 0.50.0-develop.bb1eefaada

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 (1381) 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-spec/caching/content-diff.js +1 -1
  14. package/dist/application-spec/core/application-file.d.ts +0 -2
  15. package/dist/application-spec/core/application-file.js +1 -1
  16. package/dist/application-spec/core/components/component-filter.d.ts +53 -0
  17. package/dist/application-spec/core/components/component-filter.js +1 -0
  18. package/dist/application-spec/core/components/index.d.ts +2 -0
  19. package/dist/application-spec/core/components/index.js +1 -0
  20. package/dist/application-spec/core/components/sdk-code-ref.d.ts +9 -0
  21. package/dist/application-spec/core/components/sdk-code-ref.js +1 -0
  22. package/dist/application-spec/core/enhanced-json-value.d.ts +0 -68
  23. package/dist/application-spec/core/enhanced-json-value.js +1 -1
  24. package/dist/application-spec/core/expressions/index.d.ts +2 -0
  25. package/dist/application-spec/core/expressions/index.js +1 -0
  26. package/dist/application-spec/core/expressions/relation-expression-params.d.ts +11 -0
  27. package/dist/application-spec/core/expressions/sdk-expression-implementation.d.ts +24 -0
  28. package/dist/application-spec/core/expressions/sdk-expression-implementation.js +1 -0
  29. package/dist/application-spec/core/index.d.ts +2 -0
  30. package/dist/application-spec/core/index.js +1 -1
  31. package/dist/application-spec/core/json-value.d.ts +1 -1
  32. package/dist/application-spec/{core → enhanced-json}/eval-to-constant.d.ts +1 -1
  33. package/dist/application-spec/enhanced-json/index.d.ts +4 -0
  34. package/dist/application-spec/enhanced-json/index.js +1 -0
  35. package/dist/application-spec/enhanced-json/is-enhanced-json-array.d.ts +2 -0
  36. package/dist/application-spec/enhanced-json/is-enhanced-json-array.js +1 -0
  37. package/dist/application-spec/enhanced-json/resolve-enhanced-json-value.d.ts +18 -0
  38. package/dist/application-spec/enhanced-json/resolve-enhanced-json-value.js +1 -0
  39. package/dist/application-spec/enhanced-json/schema-from-value.d.ts +24 -0
  40. package/dist/application-spec/enhanced-json/schema-from-value.js +1 -0
  41. package/dist/application-spec/enhanced-json/stringify-enhanced-json-value.d.ts +14 -0
  42. package/dist/application-spec/enhanced-json/stringify-enhanced-json-value.js +1 -0
  43. package/dist/application-spec/enhanced-json/validate-enhanced-json-value-caps.d.ts +12 -0
  44. package/dist/application-spec/enhanced-json/validate-enhanced-json-value-caps.js +1 -0
  45. package/dist/application-spec/enhanced-json/validate-no-legacy-code-ref.d.ts +13 -0
  46. package/dist/application-spec/enhanced-json/validate-no-legacy-code-ref.js +1 -0
  47. package/dist/application-spec/errors/diagnostic-codes.d.ts +14 -0
  48. package/dist/application-spec/errors/diagnostic-codes.js +1 -1
  49. package/dist/application-spec/errors/diagnostic-messages.d.ts +17 -0
  50. package/dist/application-spec/errors/diagnostic-messages.js +1 -1
  51. package/dist/application-spec/generate-application/code/common/code-imports.js +1 -1
  52. package/dist/application-spec/generate-application/code/common/env-reader.js +2 -2
  53. package/dist/application-spec/generate-application/code/common/index.d.ts +1 -0
  54. package/dist/application-spec/generate-application/code/common/index.js +1 -1
  55. package/dist/application-spec/generate-application/code/common/single-quoted-string.d.ts +6 -0
  56. package/dist/application-spec/generate-application/code/common/single-quoted-string.js +1 -0
  57. package/dist/application-spec/generate-application/code/domain-runtime-files.js +1 -1
  58. package/dist/application-spec/generate-application/code/generate-application-code.d.ts +3 -2
  59. package/dist/application-spec/generate-application/code/generate-application-code.js +1 -1
  60. package/dist/application-spec/generate-application/code/project-scaffolding.d.ts +22 -14
  61. package/dist/application-spec/generate-application/code/project-scaffolding.js +2 -2
  62. package/dist/application-spec/generate-application/code/standalone-app-files.d.ts +2 -2
  63. package/dist/application-spec/generate-application/code/standalone-app-files.js +1 -1
  64. package/dist/application-spec/generate-application/code/templates/admin-config.js +3 -0
  65. package/dist/application-spec/generate-application/code/templates/common/format-property-key.d.ts +7 -0
  66. package/dist/application-spec/generate-application/code/templates/common/format-property-key.js +1 -0
  67. package/dist/application-spec/generate-application/code/templates/common/schema-to-type-string.js +3 -3
  68. package/dist/application-spec/generate-application/code/templates/configurator-config.js +6 -4
  69. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-component-optics.d.ts +1 -1
  70. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-component-optics.js +7 -7
  71. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-defaults.d.ts +4 -2
  72. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-defaults.js +1 -1
  73. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-domain-block.js +56 -56
  74. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.d.ts +1 -1
  75. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.js +1 -1
  76. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-phx-globals.js +3 -0
  77. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-presets.js +1 -1
  78. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-relation-expressions.js +1 -1
  79. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-resources.d.ts +6 -8
  80. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-resources.js +21 -21
  81. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-states.d.ts +1 -1
  82. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-states.js +2 -2
  83. package/dist/application-spec/generate-application/code/templates/domain-spec/index.d.ts +1 -1
  84. package/dist/application-spec/generate-application/code/templates/domain-spec/index.js +1 -1
  85. package/dist/application-spec/generate-application/code/templates/domain-spec.js +12 -12
  86. package/dist/application-spec/generate-application/code/templates/domain.js +3 -3
  87. package/dist/application-spec/generate-application/code/templates/eslint-config.d.ts +5 -0
  88. package/dist/application-spec/generate-application/code/templates/eslint-config.js +4 -5
  89. package/dist/application-spec/generate-application/code/templates/frontend-config.js +3 -5
  90. package/dist/application-spec/generate-application/code/templates/gitignore.js +0 -3
  91. package/dist/application-spec/generate-application/code/templates/globals.js +7 -4
  92. package/dist/application-spec/generate-application/code/templates/index.d.ts +3 -10
  93. package/dist/application-spec/generate-application/code/templates/index.js +1 -1
  94. package/dist/application-spec/generate-application/code/templates/lingui-rc.d.ts +5 -0
  95. package/dist/application-spec/generate-application/code/templates/lingui-rc.js +4 -4
  96. package/dist/application-spec/generate-application/code/templates/prettier-config.d.ts +5 -0
  97. package/dist/application-spec/generate-application/code/templates/prettier-config.js +4 -5
  98. package/dist/application-spec/generate-application/code/templates/root-tsconfig.d.ts +6 -0
  99. package/dist/application-spec/generate-application/code/templates/root-tsconfig.js +2 -0
  100. package/dist/application-spec/generate-application/code/templates/skills/phoenix-cli-skill.js +1 -1
  101. package/dist/application-spec/generate-application/code/templates/skills/phoenix-create-configurator-skill.js +66 -42
  102. package/dist/application-spec/generate-application/code/templates/skills/phoenix-feedback-skill.js +5 -5
  103. package/dist/application-spec/generate-application/code/templates/skills/phoenix-review-skill.js +9 -3
  104. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill.js +1 -1
  105. package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.js +2 -2
  106. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.d.ts +35 -18
  107. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.js +6 -8
  108. package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.d.ts +58 -0
  109. package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.js +1 -0
  110. package/dist/application-spec/generate-application/code/templates/spec-code/index.d.ts +2 -0
  111. package/dist/application-spec/generate-application/code/templates/spec-code/index.js +1 -0
  112. package/dist/application-spec/generate-application/code/templates/spec-code/spec-code.d.ts +18 -0
  113. package/dist/application-spec/generate-application/code/templates/spec-code/spec-code.js +41 -0
  114. package/dist/application-spec/generate-application/code/templates/spec-messages/index.d.ts +1 -0
  115. package/dist/application-spec/generate-application/code/templates/spec-messages/index.js +1 -0
  116. package/dist/application-spec/generate-application/code/templates/spec-messages/spec-messages.d.ts +20 -0
  117. package/dist/application-spec/generate-application/code/templates/spec-messages/spec-messages.js +6 -0
  118. package/dist/application-spec/generate-application/code/templates/tsconfig.d.ts +5 -0
  119. package/dist/application-spec/generate-application/code/templates/tsconfig.js +1 -1
  120. package/dist/application-spec/generate-application/code/templates/webhook-builders.js +4 -3
  121. package/dist/application-spec/generate-application/code/templates/webhook-index.d.ts +6 -1
  122. package/dist/application-spec/generate-application/code/templates/webhook-index.js +10 -1
  123. package/dist/application-spec/generate-application/code/templates/webhooks-config.js +2 -3
  124. package/dist/application-spec/generate-application/index.d.ts +2 -0
  125. package/dist/application-spec/generate-application/index.js +1 -1
  126. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.d.ts +6 -4
  127. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.js +1 -1
  128. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.d.ts +8 -3
  129. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.js +1 -1
  130. package/dist/application-spec/generate-application/runtime/admin-runtime/states-runtime.d.ts +2 -2
  131. package/dist/application-spec/generate-application/runtime/application-runtime.d.ts +19 -7
  132. package/dist/application-spec/generate-application/runtime/application-runtime.js +1 -1
  133. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.d.ts +6 -4
  134. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.js +1 -1
  135. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.d.ts +7 -4
  136. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.js +1 -1
  137. package/dist/application-spec/generate-application/runtime/configurator-runtime/states-runtime.d.ts +2 -2
  138. package/dist/application-spec/generate-application/runtime/factory-data/factory-data-runtime.d.ts +43 -0
  139. package/dist/application-spec/generate-application/runtime/factory-data/factory-data-runtime.js +1 -0
  140. package/dist/application-spec/generate-application/runtime/factory-data/index.d.ts +3 -0
  141. package/dist/application-spec/generate-application/runtime/factory-data/index.js +1 -0
  142. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.d.ts +13 -0
  143. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.js +1 -0
  144. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.d.ts +16 -0
  145. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.js +1 -0
  146. package/dist/application-spec/generate-application/runtime/migrations/index.d.ts +1 -0
  147. package/dist/application-spec/generate-application/runtime/migrations/index.js +1 -0
  148. package/dist/application-spec/generate-application/runtime/migrations/migration-runtime.d.ts +53 -0
  149. package/dist/application-spec/generate-application/runtime/migrations/migration-runtime.js +1 -0
  150. package/dist/application-spec/generate-application/runtime/sections/assistant-runtime.d.ts +2 -2
  151. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.d.ts +3 -2
  152. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.js +1 -1
  153. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.d.ts +2 -1
  154. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.js +1 -1
  155. package/dist/application-spec/generate-application/runtime/sections/component-optic.d.ts +5 -1
  156. package/dist/application-spec/generate-application/runtime/sections/component-optic.js +1 -1
  157. package/dist/application-spec/generate-application/runtime/sections/data-runtime.d.ts +4 -4
  158. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.d.ts +7 -4
  159. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.js +1 -1
  160. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.d.ts +9 -5
  161. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.js +1 -1
  162. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.d.ts +3 -1
  163. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.js +1 -1
  164. package/dist/application-spec/generate-application/runtime/sections/theme-runtime.d.ts +2 -2
  165. package/dist/application-spec/generate-application/runtime/sections/transformers-runtime.d.ts +4 -6
  166. package/dist/application-spec/generate-application/runtime/spec-code/index.d.ts +2 -0
  167. package/dist/application-spec/generate-application/runtime/spec-code/index.js +1 -0
  168. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.d.ts +18 -0
  169. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.js +1 -0
  170. package/dist/application-spec/generate-application/runtime/spec-code/spec-code-module.d.ts +17 -0
  171. package/dist/application-spec/generate-application/runtime-spec/decode-runtime-spec.d.ts +9 -0
  172. package/dist/application-spec/generate-application/runtime-spec/decode-runtime-spec.js +1 -0
  173. package/dist/application-spec/generate-application/runtime-spec/encode-runtime-spec.d.ts +8 -0
  174. package/dist/application-spec/generate-application/runtime-spec/encode-runtime-spec.js +1 -0
  175. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.d.ts +27 -0
  176. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.js +1 -0
  177. package/dist/application-spec/generate-application/runtime-spec/index.d.ts +5 -0
  178. package/dist/application-spec/generate-application/runtime-spec/index.js +1 -0
  179. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.d.ts +68 -0
  180. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.js +1 -0
  181. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.d.ts +40 -0
  182. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.js +1 -0
  183. package/dist/application-spec/index.d.ts +1 -0
  184. package/dist/application-spec/index.js +1 -1
  185. package/dist/application-spec/parse-application-files/categorize/categorize-files.d.ts +34 -0
  186. package/dist/application-spec/parse-application-files/categorize/categorize-files.js +1 -1
  187. package/dist/application-spec/parse-application-files/categorize/earlier-generated-editor-configs.d.ts +16 -0
  188. package/dist/application-spec/parse-application-files/categorize/earlier-generated-editor-configs.js +9 -0
  189. package/dist/application-spec/parse-application-files/categorize/earlier-generated-tsconfig.d.ts +9 -0
  190. package/dist/application-spec/parse-application-files/categorize/earlier-generated-tsconfig.js +1 -0
  191. package/dist/application-spec/parse-application-files/categorize/module-analysis.d.ts +1 -1
  192. package/dist/application-spec/parse-application-files/categorize/module-analysis.js +1 -1
  193. package/dist/application-spec/parse-application-files/raw-spec/parse-yaml-spec-file.js +1 -1
  194. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.d.ts +16 -3
  195. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.js +1 -1
  196. package/dist/application-spec/parse-application-files/raw-spec/raw-spec-file.js +1 -1
  197. package/dist/application-spec/parse-application-files/spec/application/admin-spec/admin-spec.js +1 -1
  198. package/dist/application-spec/parse-application-files/spec/application/configurator-spec/configurator-spec.js +1 -1
  199. package/dist/application-spec/parse-application-files/spec/common/index.d.ts +1 -0
  200. package/dist/application-spec/parse-application-files/spec/common/index.js +1 -1
  201. package/dist/application-spec/parse-application-files/spec/common/value-type/format-value-type.d.ts +3 -0
  202. package/dist/application-spec/parse-application-files/spec/common/value-type/format-value-type.js +1 -0
  203. package/dist/application-spec/parse-application-files/spec/common/value-type/index.d.ts +5 -0
  204. package/dist/application-spec/parse-application-files/spec/common/value-type/index.js +1 -0
  205. package/dist/application-spec/parse-application-files/spec/common/value-type/intersect-value-types.d.ts +6 -0
  206. package/dist/application-spec/parse-application-files/spec/common/value-type/intersect-value-types.js +1 -0
  207. package/dist/application-spec/parse-application-files/spec/common/value-type/is-assignable-value-type.d.ts +8 -0
  208. package/dist/application-spec/parse-application-files/spec/common/value-type/is-assignable-value-type.js +1 -0
  209. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type-at.d.ts +10 -0
  210. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type-at.js +1 -0
  211. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type.d.ts +98 -0
  212. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type.js +1 -0
  213. package/dist/application-spec/parse-application-files/spec/components/bindings/component-path.d.ts +13 -0
  214. package/dist/application-spec/parse-application-files/spec/components/bindings/component-path.js +1 -0
  215. package/dist/application-spec/parse-application-files/spec/components/bindings/index.d.ts +2 -0
  216. package/dist/application-spec/parse-application-files/spec/components/bindings/index.js +1 -1
  217. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding-type.d.ts +24 -0
  218. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding-type.js +1 -0
  219. package/dist/application-spec/parse-application-files/spec/components/component-entry.d.ts +1 -9
  220. package/dist/application-spec/parse-application-files/spec/components/component-entry.js +1 -1
  221. package/dist/application-spec/parse-application-files/spec/components/component-filter.d.ts +1 -54
  222. package/dist/application-spec/parse-application-files/spec/components/component-filter.js +1 -1
  223. package/dist/application-spec/parse-application-files/spec/components/component-state-type.d.ts +8 -0
  224. package/dist/application-spec/parse-application-files/spec/components/component-state-type.js +1 -0
  225. package/dist/application-spec/parse-application-files/spec/components/filter-criterion-types.d.ts +13 -0
  226. package/dist/application-spec/parse-application-files/spec/components/filter-criterion-types.js +1 -0
  227. package/dist/application-spec/parse-application-files/spec/components/index.d.ts +1 -1
  228. package/dist/application-spec/parse-application-files/spec/components/index.js +1 -1
  229. package/dist/application-spec/parse-application-files/spec/components/static-entity-id.d.ts +14 -0
  230. package/dist/application-spec/parse-application-files/spec/components/static-entity-id.js +1 -0
  231. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.d.ts +6 -0
  232. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.js +1 -1
  233. package/dist/application-spec/parse-application-files/spec/components/user-components.d.ts +7 -4
  234. package/dist/application-spec/parse-application-files/spec/components/user-components.js +1 -1
  235. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.d.ts +24 -0
  236. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.js +1 -0
  237. package/dist/application-spec/parse-application-files/spec/expressions/expression-read.d.ts +13 -0
  238. package/dist/application-spec/parse-application-files/spec/expressions/expression-value-type.d.ts +9 -0
  239. package/dist/application-spec/parse-application-files/spec/expressions/expression-value-type.js +1 -0
  240. package/dist/application-spec/parse-application-files/spec/expressions/expression.d.ts +1 -28
  241. package/dist/application-spec/parse-application-files/spec/expressions/expression.js +1 -1
  242. package/dist/application-spec/parse-application-files/spec/expressions/expressions.d.ts +7 -3
  243. package/dist/application-spec/parse-application-files/spec/expressions/expressions.js +1 -1
  244. package/dist/application-spec/parse-application-files/spec/expressions/index.d.ts +0 -1
  245. package/dist/application-spec/parse-application-files/spec/expressions/index.js +1 -1
  246. package/dist/application-spec/parse-application-files/spec/expressions/memo-eval-plan.js +1 -1
  247. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.d.ts +3 -1
  248. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.js +1 -1
  249. package/dist/application-spec/parse-application-files/spec/invariants/invariants.d.ts +2 -2
  250. package/dist/application-spec/parse-application-files/spec/invariants/invariants.js +1 -1
  251. package/dist/application-spec/parse-application-files/spec/model/defaults.d.ts +7 -2
  252. package/dist/application-spec/parse-application-files/spec/model/defaults.js +1 -1
  253. package/dist/application-spec/parse-application-files/spec/model/index.d.ts +1 -0
  254. package/dist/application-spec/parse-application-files/spec/model/index.js +1 -1
  255. package/dist/application-spec/parse-application-files/spec/model/model-type-resolution.d.ts +10 -0
  256. package/dist/application-spec/parse-application-files/spec/model/model-type-resolution.js +1 -0
  257. package/dist/application-spec/parse-application-files/spec/relations/reference-field-type.d.ts +25 -0
  258. package/dist/application-spec/parse-application-files/spec/relations/reference-field-type.js +1 -0
  259. package/dist/application-spec/parse-application-files/spec/relations/relation-field-mismatch.d.ts +46 -0
  260. package/dist/application-spec/parse-application-files/spec/relations/relation-field-mismatch.js +1 -0
  261. package/dist/application-spec/parse-application-files/spec/relations/relations.d.ts +4 -3
  262. package/dist/application-spec/parse-application-files/spec/relations/relations.js +1 -1
  263. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.js +1 -1
  264. package/dist/application-spec/parse-application-files/spec/sections/infra.d.ts +2 -0
  265. package/dist/application-spec/parse-application-files/spec/sections/infra.js +1 -1
  266. package/dist/client/authorized-client.d.ts +3 -1
  267. package/dist/client/authorized-client.js +1 -1
  268. package/dist/client/contract.d.ts +34 -0
  269. package/dist/client/contract.js +1 -1
  270. package/dist/client/index.d.ts +2 -2
  271. package/dist/client/index.js +1 -1
  272. package/dist/client/local-authorized-client.d.ts +3 -1
  273. package/dist/client/local-authorized-client.js +1 -1
  274. package/dist/client/memory-authorized-client.d.ts +3 -1
  275. package/dist/client/memory-authorized-client.js +1 -1
  276. package/dist/client/phoenix-api.d.ts +797 -121
  277. package/dist/configurator/application-runtime/extensions/create-configurator-extensions.js +1 -1
  278. package/dist/configurator/application-runtime/extensions/selectors.d.ts +3 -1
  279. package/dist/configurator/application-runtime/extensions/selectors.js +1 -1
  280. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.d.ts +127 -3
  281. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.js +1 -1
  282. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.d.ts +7 -1
  283. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.js +1 -1
  284. package/dist/configurator/application-runtime/extensions/systems/drag-and-drop-system/drag-and-drop-system.d.ts +3 -3
  285. package/dist/configurator/application-runtime/extensions/systems/graphql-system/close-unclosed-braces.d.ts +12 -0
  286. package/dist/configurator/application-runtime/extensions/systems/graphql-system/close-unclosed-braces.js +1 -0
  287. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.js +1 -1
  288. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.d.ts +20 -4
  289. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.js +1 -1
  290. package/dist/configurator/application-runtime/extensions/systems/graphql-system/inject-assistant-lenses.d.ts +11 -0
  291. package/dist/configurator/application-runtime/extensions/systems/graphql-system/inject-assistant-lenses.js +1 -0
  292. package/dist/configurator/application-runtime/extensions/systems/index.d.ts +1 -1
  293. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.d.ts +2 -2
  294. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.js +1 -1
  295. package/dist/configurator/common/configurator-interface.d.ts +26 -1
  296. package/dist/configurator/common/configurator-interface.js +1 -1
  297. package/dist/configurator/common/frontend-analytics.d.ts +2 -0
  298. package/dist/configurator/common/frontend-analytics.js +1 -1
  299. package/dist/configurator/common/index.d.ts +2 -0
  300. package/dist/configurator/common/index.js +1 -1
  301. package/dist/configurator/common/use-finalize-action.d.ts +31 -0
  302. package/dist/configurator/common/use-finalize-action.js +1 -0
  303. package/dist/configurator/common/use-reset-camera.d.ts +6 -0
  304. package/dist/configurator/common/use-reset-camera.js +1 -0
  305. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.d.ts +12 -0
  306. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.js +1 -0
  307. package/dist/configurator/configuration-not-found-page/index.d.ts +1 -0
  308. package/dist/configurator/configuration-not-found-page/index.js +1 -0
  309. package/dist/configurator/configurator-context/configurator-hooks/layout-hooks.d.ts +1 -1
  310. package/dist/configurator/pages/ConfiguratorNotFoundPage.js +1 -1
  311. package/dist/configurator/pages/DefaultConfiguratorLayout.d.ts +7 -0
  312. package/dist/configurator/pages/DefaultConfiguratorLayout.js +1 -0
  313. package/dist/configurator/pages/LoadedConfiguratorDetailPage.js +1 -1
  314. package/dist/configurator/pages/RootPage.js +1 -1
  315. package/dist/configurator/pages/configurator-layout-name.d.ts +2 -0
  316. package/dist/configurator/pages/configurator-layout-name.js +1 -0
  317. package/dist/configurator/pages/default-configurator-elements.d.ts +9 -0
  318. package/dist/configurator/pages/default-configurator-elements.js +1 -0
  319. package/dist/configurator/pages/default-elements/built-in-entity-element.d.ts +10 -0
  320. package/dist/configurator/pages/default-elements/built-in-entity-element.js +1 -0
  321. package/dist/configurator/pages/default-elements/built-in-layout-element.d.ts +10 -0
  322. package/dist/configurator/pages/default-elements/built-in-layout-element.js +1 -0
  323. package/dist/configurator/pages/default-elements/domain-control-elements.d.ts +6 -0
  324. package/dist/configurator/pages/default-elements/domain-control-elements.js +1 -0
  325. package/dist/configurator/pages/default-elements/index.d.ts +4 -0
  326. package/dist/configurator/pages/default-elements/index.js +1 -0
  327. package/dist/configurator/pages/default-elements/recipe-panel-elements.d.ts +3 -0
  328. package/dist/configurator/pages/default-elements/recipe-panel-elements.js +1 -0
  329. package/dist/configurator/pages/default-elements/sidebar-footer-elements.d.ts +7 -0
  330. package/dist/configurator/pages/default-elements/sidebar-footer-elements.js +1 -0
  331. package/dist/configurator/pages/default-elements/toolbar-elements.d.ts +7 -0
  332. package/dist/configurator/pages/default-elements/toolbar-elements.js +1 -0
  333. package/dist/configurator/pages/index.d.ts +1 -0
  334. package/dist/configurator/pages/index.js +1 -1
  335. package/dist/configurator/scene/scene-controls/hotspot-drag-handle/HotspotDragHandle.d.ts +1 -1
  336. package/dist/configurator/scene/scene-controls/hotspot-drag-handle/HotspotDragSceneHandle.d.ts +1 -1
  337. package/dist/configurator/scene/scene-entity/dimension-indicators/DimensionIndicator.d.ts +1 -1
  338. package/dist/configurator/scene/scene-entity/dimension-indicators/DimensionIndicatorInternal.d.ts +1 -1
  339. package/dist/configurator/scene/scene-entity/drag-and-drop/shared.d.ts +2 -2
  340. package/dist/configurator/scene/scene-entity/drag-and-drop/use-drag-object.d.ts +1 -1
  341. package/dist/configurator/scene/scene-entity/materials/RemoteReplacedMaterial.js +1 -1
  342. package/dist/configurator/scene/scene-entity/objects/SceneEntityObjectTextDecal.d.ts +1 -1
  343. package/dist/configurator/ui/assistant/AssistantChips.d.ts +8 -2
  344. package/dist/configurator/ui/assistant/AssistantChips.js +1 -1
  345. package/dist/configurator/ui/assistant/AssistantComposer.d.ts +2 -1
  346. package/dist/configurator/ui/assistant/AssistantComposer.js +1 -1
  347. package/dist/configurator/ui/assistant/AssistantMarkdown.d.ts +7 -2
  348. package/dist/configurator/ui/assistant/AssistantMarkdown.js +1 -1
  349. package/dist/configurator/ui/assistant/AssistantPanel.js +1 -1
  350. package/dist/configurator/ui/assistant/AssistantThread.d.ts +6 -2
  351. package/dist/configurator/ui/assistant/AssistantThread.js +1 -1
  352. package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.d.ts +13 -0
  353. package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.js +1 -0
  354. package/dist/configurator/ui/assistant/entity-link/entity-link-selection.d.ts +22 -0
  355. package/dist/configurator/ui/assistant/entity-link/entity-link-selection.js +1 -0
  356. package/dist/configurator/ui/assistant/entity-link/entity-link-state.d.ts +27 -0
  357. package/dist/configurator/ui/assistant/entity-link/entity-link-state.js +1 -0
  358. package/dist/configurator/ui/assistant/entity-link/index.d.ts +2 -0
  359. package/dist/configurator/ui/assistant/entity-link/index.js +1 -0
  360. package/dist/configurator/ui/assistant/form/AssistantForm.d.ts +19 -0
  361. package/dist/configurator/ui/assistant/form/AssistantForm.js +1 -0
  362. package/dist/configurator/ui/assistant/form/built-in-form-registry.d.ts +10 -0
  363. package/dist/configurator/ui/assistant/form/built-in-form-registry.js +1 -0
  364. package/dist/configurator/ui/assistant/form/compose-answer.d.ts +11 -0
  365. package/dist/configurator/ui/assistant/form/compose-answer.js +1 -0
  366. package/dist/configurator/ui/assistant/form/describe-build-errors.d.ts +6 -0
  367. package/dist/configurator/ui/assistant/form/describe-build-errors.js +1 -0
  368. package/dist/configurator/ui/assistant/form/form-element-definition.d.ts +14 -0
  369. package/dist/configurator/ui/assistant/form/form-model.d.ts +38 -0
  370. package/dist/configurator/ui/assistant/form/form-model.js +1 -0
  371. package/dist/configurator/ui/assistant/form/form-registry.d.ts +31 -0
  372. package/dist/configurator/ui/assistant/form/form-registry.js +8 -0
  373. package/dist/configurator/ui/assistant/form/form-state.d.ts +4 -0
  374. package/dist/configurator/ui/assistant/form/form-state.js +1 -0
  375. package/dist/configurator/ui/assistant/form/index.d.ts +2 -0
  376. package/dist/configurator/ui/assistant/form/index.js +1 -0
  377. package/dist/configurator/ui/assistant/form/parse-form-block.d.ts +9 -0
  378. package/dist/configurator/ui/assistant/form/parse-form-block.js +1 -0
  379. package/dist/configurator/ui/assistant/form/read-form-attributes.d.ts +13 -0
  380. package/dist/configurator/ui/assistant/form/read-form-attributes.js +1 -0
  381. package/dist/configurator/ui/assistant/form-elements/FormGroup.d.ts +3 -0
  382. package/dist/configurator/ui/assistant/form-elements/FormGroup.js +1 -0
  383. package/dist/configurator/ui/assistant/form-elements/FormOptions.d.ts +3 -0
  384. package/dist/configurator/ui/assistant/form-elements/FormOptions.js +1 -0
  385. package/dist/configurator/ui/assistant/form-elements/FormReply.d.ts +3 -0
  386. package/dist/configurator/ui/assistant/form-elements/FormReply.js +1 -0
  387. package/dist/configurator/ui/assistant/form-elements/FormText.d.ts +3 -0
  388. package/dist/configurator/ui/assistant/form-elements/FormText.js +1 -0
  389. package/dist/configurator/ui/assistant/form-elements/form-element-props.d.ts +34 -0
  390. package/dist/configurator/ui/assistant/form-elements/index.d.ts +5 -0
  391. package/dist/configurator/ui/assistant/form-elements/index.js +1 -0
  392. package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.d.ts +16 -0
  393. package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.js +1 -0
  394. package/dist/configurator/ui/assistant/reference-link/assistant-link-target.d.ts +34 -0
  395. package/dist/configurator/ui/assistant/reference-link/assistant-link-target.js +1 -0
  396. package/dist/configurator/ui/assistant/reference-link/assistant-reference-details.d.ts +25 -0
  397. package/dist/configurator/ui/assistant/reference-link/assistant-reference-details.js +1 -0
  398. package/dist/configurator/ui/assistant/reference-link/index.d.ts +3 -0
  399. package/dist/configurator/ui/assistant/reference-link/index.js +1 -0
  400. package/dist/configurator/ui/assistant/reference-link/reference-styles.d.ts +12 -0
  401. package/dist/configurator/ui/assistant/reference-link/reference-styles.js +1 -0
  402. package/dist/configurator/ui/assistant/reference-link/use-assistant-reference-details.d.ts +8 -0
  403. package/dist/configurator/ui/assistant/reference-link/use-assistant-reference-details.js +1 -0
  404. package/dist/configurator/ui/assistant/resource-image/AssistantImage.d.ts +9 -0
  405. package/dist/configurator/ui/assistant/resource-image/AssistantImage.js +1 -0
  406. package/dist/configurator/ui/assistant/resource-image/index.d.ts +3 -0
  407. package/dist/configurator/ui/assistant/resource-image/index.js +1 -0
  408. package/dist/configurator/ui/assistant/resource-image/resource-path.d.ts +11 -0
  409. package/dist/configurator/ui/assistant/resource-image/resource-path.js +1 -0
  410. package/dist/configurator/ui/assistant/resource-image/use-resource-image-url.d.ts +5 -0
  411. package/dist/configurator/ui/assistant/resource-image/use-resource-image-url.js +1 -0
  412. package/dist/configurator/ui/assistant/streamed-markdown.d.ts +2 -0
  413. package/dist/configurator/ui/assistant/streamed-markdown.js +2 -2
  414. package/dist/configurator/ui/assistant/thread-items.d.ts +21 -3
  415. package/dist/configurator/ui/assistant/thread-items.js +1 -1
  416. package/dist/configurator/ui/assistant/use-follow-stream.js +1 -1
  417. package/dist/configurator/ui/configurator-layout/sidebar-keys/index.d.ts +1 -0
  418. package/dist/configurator/ui/configurator-layout/sidebar-keys/index.js +1 -0
  419. package/dist/configurator/ui/configurator-layout/sidebar-keys/sidebar-keys.d.ts +11 -0
  420. package/dist/configurator/ui/configurator-layout/sidebar-keys/sidebar-keys.js +1 -0
  421. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/DesktopSidebar.d.ts +101 -0
  422. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/DesktopSidebar.js +16 -0
  423. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/index.d.ts +1 -0
  424. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/index.js +1 -0
  425. package/dist/configurator/ui/configurator-layout/slots/services/InvariantViolations.d.ts +4 -4
  426. package/dist/configurator/ui/configurator-layout/slots/services/InvariantViolations.js +1 -1
  427. package/dist/configurator/ui/configurator-layout/slots/services/Services.js +1 -1
  428. package/dist/configurator/ui/configurator-layout/slots/services/SideEffects.d.ts +3 -6
  429. package/dist/configurator/ui/configurator-layout/slots/services/SideEffects.js +1 -1
  430. package/dist/configurator/ui/configurator-layout/slots/slots.d.ts +1 -0
  431. package/dist/configurator/ui/configurator-layout/slots/slots.js +1 -1
  432. package/dist/configurator/ui/configurator-layout/universal/DesktopLayout.d.ts +0 -74
  433. package/dist/configurator/ui/configurator-layout/universal/DesktopLayout.js +5 -20
  434. package/dist/configurator/ui/configurator-layout/universal/DesktopPreview.js +1 -1
  435. package/dist/configurator/ui/configurator-layout/universal/MobileLayout.js +4 -4
  436. package/dist/configurator/ui/configurator-layout/universal/MobilePreview.js +1 -1
  437. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.d.ts +47 -0
  438. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.js +1 -0
  439. package/dist/configurator/ui/configurator-layout/universal/use-scene-safe-area.d.ts +11 -26
  440. package/dist/configurator/ui/configurator-layout/universal/use-scene-safe-area.js +1 -1
  441. package/dist/configurator/ui/legacy/layout/common/SummaryReadLayout.js +1 -1
  442. package/dist/configurator/ui/legacy/layout/simple/SimpleOwnerLayout.js +1 -1
  443. package/dist/configurator/ui/legacy/layout/steps/StepsNavigation.d.ts +2 -2
  444. package/dist/configurator/ui/legacy/layout/steps/StepsOwnerLayout.js +1 -1
  445. package/dist/configurator/ui/legacy/layout/tabs/TabsOwnerLayout.js +1 -1
  446. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomOwnerUi.d.ts +1 -0
  447. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomOwnerUi.js +1 -1
  448. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomReadUi.d.ts +1 -0
  449. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomReadUi.js +1 -1
  450. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.d.ts +2 -2
  451. package/dist/configurator/ui/preset-layout/CategoryPresetUi.js +1 -1
  452. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.d.ts +10 -0
  453. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.js +1 -0
  454. package/dist/configurator/ui/save-message-snackbars/index.d.ts +1 -0
  455. package/dist/configurator/ui/save-message-snackbars/index.js +1 -0
  456. package/dist/docs/complex-use-cases/filtered-controls-with-fix-dialog.mdx +16 -19
  457. package/dist/docs/complex-use-cases/sketching.mdx +0 -38
  458. package/dist/docs/controls/select-attribute/cardselect.mdx +9 -13
  459. package/dist/docs/controls/select-child-entity/cardselect.mdx +1 -0
  460. package/dist/docs/dimensions/3d-scene-integration/dimension-indicators.mdx +2 -2
  461. package/dist/docs/dimensions/3d-scene-integration/editable-angle-indicator.mdx +1 -1
  462. package/dist/docs/dimensions/3d-scene-integration/editable-distance-dimension-indicator.mdx +1 -1
  463. package/dist/docs/dimensions/3d-scene-integration/list-selector-dimension-indicator.mdx +1 -1
  464. package/dist/docs/drag-and-drop/drag-handle.mdx +1 -1
  465. package/dist/docs/drag-and-drop/hotspot-handle.mdx +1 -1
  466. package/dist/docs/drag-and-drop/planes.mdx +1 -1
  467. package/dist/docs/drag-and-drop/rotatable.mdx +2 -2
  468. package/dist/docs/fabs/basic.mdx +2 -2
  469. package/dist/docs/index.json +42 -1
  470. package/dist/docs/integrations/woocommerce/local-development.mdx +1 -1
  471. package/dist/docs/layouts/custom-layout.mdx +2434 -0
  472. package/dist/docs/layouts/header/fixed.mdx +2 -2
  473. package/dist/docs/layouts/header/floating.mdx +2 -2
  474. package/dist/docs/layouts/sidebar/in-a-custom-layout.mdx +380 -0
  475. package/dist/docs/layouts/sidebar-footer/basic.mdx +32 -77
  476. package/dist/docs/other-features/client-side-rendering/declarative.mdx +1 -1
  477. package/dist/docs/other-features/not-found-404.mdx +1 -1
  478. package/dist/docs/other-features/side-effects.mdx +8 -11
  479. package/dist/docs/other-features/transformers.mdx +4 -0
  480. package/dist/docs/other-features/violation-messages.mdx +52 -56
  481. package/dist/docs/phoenix/application-states.mdx +9 -7
  482. package/dist/docs/phoenix/clerk-sign-in.mdx +1 -1
  483. package/dist/docs/phoenix/components.mdx +6 -0
  484. package/dist/docs/phoenix/configurator-interface.mdx +262 -81
  485. package/dist/docs/phoenix/deployments.mdx +3 -7
  486. package/dist/docs/phoenix/domain-model.mdx +6 -0
  487. package/dist/docs/phoenix/expression-context.mdx +11 -3
  488. package/dist/docs/phoenix/finalization.mdx +1 -1
  489. package/dist/docs/phoenix/getting-started.mdx +7 -4
  490. package/dist/docs/phoenix/layout-slots.mdx +116 -0
  491. package/dist/docs/phoenix/localization.mdx +10 -6
  492. package/dist/docs/phoenix/migration-guide.mdx +24 -11
  493. package/dist/docs/phoenix/phoenix-cli.mdx +112 -65
  494. package/dist/docs/phoenix/project-structure.mdx +80 -36
  495. package/dist/docs/phoenix/quickstart.mdx +9 -9
  496. package/dist/docs/phoenix/sdk-builder-workflow.mdx +14 -14
  497. package/dist/docs/phoenix/testing.mdx +148 -0
  498. package/dist/docs/phoenix/webhook-membership.mdx +10 -9
  499. package/dist/docs/phoenix/webhooks.mdx +23 -6
  500. package/dist/docs/ux-guidelines/choosing-a-control.mdx +11 -0
  501. package/dist/domain/admin-domain/__generated/enhanced-model.d.ts +1 -2
  502. package/dist/domain/admin-domain/implementation/common-admin-expressions.d.ts +26 -12
  503. package/dist/domain/admin-domain/implementation/common-admin-publish.d.ts +1 -2
  504. package/dist/domain/admin-domain/index.d.ts +9 -5
  505. package/dist/domain/admin-domain/index.js +1 -1
  506. package/dist/domain/application/GetApplicationWrapperHandler.d.ts +2 -2
  507. package/dist/domain/application/GetThemeHandler.d.ts +1 -1
  508. package/dist/domain/application/GetWebComponentOptions.d.ts +1 -1
  509. package/dist/domain/application/admin-page-factories.d.ts +1 -2
  510. package/dist/domain/application/application-config.d.ts +9 -26
  511. package/dist/domain/application/assistant/assistant-fields.d.ts +12 -0
  512. package/dist/domain/application/assistant/assistant-fields.js +1 -0
  513. package/dist/domain/application/assistant/assistant-form-elements.d.ts +28 -0
  514. package/dist/domain/application/assistant/assistant-form-elements.js +1 -0
  515. package/dist/domain/application/assistant/assistant-manifest.d.ts +11 -1
  516. package/dist/domain/application/assistant/assistant-resolved-manifest.d.ts +38 -2
  517. package/dist/domain/application/assistant/assistant-resolved-manifest.js +1 -1
  518. package/dist/domain/application/assistant/assistant-value-type.js +1 -1
  519. package/dist/domain/application/assistant/build-assistant-lenses.d.ts +14 -0
  520. package/dist/domain/application/assistant/build-assistant-lenses.js +5 -0
  521. package/dist/domain/application/assistant/build-assistant-manifest.js +1 -1
  522. package/dist/domain/application/assistant/create-assistant-execution-schema.d.ts +32 -0
  523. package/dist/domain/application/assistant/create-assistant-execution-schema.js +1 -0
  524. package/dist/domain/application/assistant/generate-assistant-prompt.d.ts +1 -11
  525. package/dist/domain/application/assistant/generate-assistant-prompt.js +1 -1
  526. package/dist/domain/application/assistant/index.d.ts +8 -1
  527. package/dist/domain/application/assistant/index.js +1 -1
  528. package/dist/domain/application/assistant/session-setup/AssistantSetupHandler.d.ts +20 -0
  529. package/dist/domain/application/assistant/session-setup/AssistantSetupHandler.js +1 -0
  530. package/dist/domain/application/assistant/session-setup/apply-assistant-setup.d.ts +10 -0
  531. package/dist/domain/application/assistant/session-setup/apply-assistant-setup.js +1 -0
  532. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.d.ts +48 -0
  533. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.js +1 -0
  534. package/dist/domain/application/assistant/session-setup/create-session-assistant.d.ts +15 -0
  535. package/dist/domain/application/assistant/session-setup/create-session-assistant.js +1 -0
  536. package/dist/domain/application/assistant/session-setup/index.d.ts +4 -0
  537. package/dist/domain/application/assistant/session-setup/index.js +1 -0
  538. package/dist/domain/application/assistant-mutations.d.ts +2 -2
  539. package/dist/domain/application/assistant-mutations.js +1 -1
  540. package/dist/domain/application/assistant-recipe-groups.d.ts +5 -5
  541. package/dist/domain/application/configurator-builder.d.ts +5 -2
  542. package/dist/domain/application/configurator-builder.js +1 -1
  543. package/dist/domain/application/create-initial-published-data.d.ts +6 -7
  544. package/dist/domain/application/index.d.ts +2 -6
  545. package/dist/domain/application/index.js +1 -1
  546. package/dist/domain/application/published-data/DataRowValidatorHandler.d.ts +1 -1
  547. package/dist/domain/application/published-data/FilterPublishedChunksHandler.d.ts +1 -1
  548. package/dist/domain/application/published-data/MapPublishedChunkedDataHandler.d.ts +1 -1
  549. package/dist/domain/application/published-data/MapPublishedRevisionDataHandler.d.ts +1 -1
  550. package/dist/domain/application/published-data/SheetValidatorHandler.d.ts +1 -1
  551. package/dist/domain/application/published-data/build-legend-data.d.ts +1 -1
  552. package/dist/domain/application/published-data/format-field-type.d.ts +1 -1
  553. package/dist/domain/application/published-data/map-data-to-sheet.d.ts +1 -1
  554. package/dist/domain/application/published-data/map-published-chunked-data.d.ts +3 -3
  555. package/dist/domain/application/published-data/map-published-data.d.ts +7 -3
  556. package/dist/domain/application/published-data/validate-sheet-data.d.ts +1 -1
  557. package/dist/domain/available-system-components.js +1 -1
  558. package/dist/domain/core/action/action-factory.d.ts +11 -0
  559. package/dist/domain/core/{action.d.ts → action/action.d.ts} +21 -17
  560. package/dist/domain/core/action/action.js +1 -0
  561. package/dist/domain/core/action/index.d.ts +2 -0
  562. package/dist/domain/core/action/index.js +1 -0
  563. package/dist/domain/{components → core/component}/component-reader-types.d.ts +1 -1
  564. package/dist/domain/core/component/component-reader-types.js +1 -0
  565. package/dist/domain/{components → core/component}/debug-state-component.d.ts +1 -1
  566. package/dist/domain/core/component/debug-state-component.js +1 -0
  567. package/dist/domain/core/component/domain-component-optic.d.ts +65 -0
  568. package/dist/domain/core/component/domain-component-optic.js +16 -0
  569. package/dist/domain/{components → core/component}/drag-state-component.d.ts +1 -1
  570. package/dist/domain/core/component/drag-state-component.js +1 -0
  571. package/dist/domain/{components → core/component}/export-state-component.d.ts +1 -1
  572. package/dist/domain/core/component/export-state-component.js +1 -0
  573. package/dist/domain/{components → core/component}/fullscreen-state-component.d.ts +1 -1
  574. package/dist/domain/core/component/fullscreen-state-component.js +1 -0
  575. package/dist/domain/{components → core/component}/group-components-by-entity-id-and-name.d.ts +1 -1
  576. package/dist/domain/core/component/group-components-by-entity-id-and-name.js +1 -0
  577. package/dist/domain/{components → core/component}/hover-state-component.d.ts +1 -1
  578. package/dist/domain/core/component/hover-state-component.js +1 -0
  579. package/dist/domain/core/component/index.d.ts +18 -0
  580. package/dist/domain/core/component/index.js +1 -0
  581. package/dist/domain/{components → core/component}/legacy-filter.d.ts +4 -18
  582. package/dist/domain/{components → core/component}/navigation-state-component.d.ts +1 -1
  583. package/dist/domain/core/component/navigation-state-component.js +1 -0
  584. package/dist/domain/{components → core/component}/selection-state-component.d.ts +1 -1
  585. package/dist/domain/core/component/selection-state-component.js +1 -0
  586. package/dist/domain/{components → core/component}/system-component-builder.d.ts +1 -1
  587. package/dist/domain/core/component/system-component-builder.js +1 -0
  588. package/dist/domain/{components → core/component}/system-component-filter.d.ts +38 -18
  589. package/dist/domain/core/component/system-virtual-entity.js +1 -0
  590. package/dist/domain/{components → core/component}/tool-state-component.d.ts +1 -1
  591. package/dist/domain/core/component/tool-state-component.js +1 -0
  592. package/dist/domain/{components → core/component}/updates.d.ts +1 -1
  593. package/dist/domain/{components → core/component}/view-state-component.d.ts +1 -1
  594. package/dist/domain/core/component/view-state-component.js +1 -0
  595. package/dist/domain/{components → core/component}/viewport-state-component.d.ts +1 -1
  596. package/dist/domain/core/component/viewport-state-component.js +1 -0
  597. package/dist/domain/core/data-schema/data-cell-value.d.ts +4 -0
  598. package/dist/domain/core/data-schema/data-cell-value.js +1 -0
  599. package/dist/domain/core/data-schema/data-schema-array-field.d.ts +5 -0
  600. package/dist/domain/core/data-schema/data-schema-array-field.js +1 -0
  601. package/dist/domain/core/data-schema/data-schema-field-object.d.ts +4 -0
  602. package/dist/domain/core/data-schema/data-schema-field-object.js +1 -0
  603. package/dist/domain/core/data-schema/data-schema-field.d.ts +2 -0
  604. package/dist/domain/core/data-schema/data-schema-field.js +1 -0
  605. package/dist/domain/core/data-schema/data-schema-localized-field.d.ts +4 -0
  606. package/dist/domain/core/data-schema/data-schema-localized-field.js +1 -0
  607. package/dist/domain/core/data-schema/data-schema-primitive-field.d.ts +5 -0
  608. package/dist/domain/core/data-schema/data-schema-primitive-field.js +1 -0
  609. package/dist/domain/core/data-schema/data-schema.d.ts +2 -0
  610. package/dist/domain/core/data-schema/data-schema.js +1 -0
  611. package/dist/domain/core/data-schema/index.d.ts +7 -0
  612. package/dist/domain/core/data-schema/index.js +1 -0
  613. package/dist/domain/core/domain-factory.d.ts +3 -3
  614. package/dist/domain/core/domain.d.ts +3 -3
  615. package/dist/domain/core/emission/index.d.ts +8 -0
  616. package/dist/domain/core/emission/index.js +1 -0
  617. package/dist/domain/core/emission/reset-state-emission.d.ts +12 -0
  618. package/dist/domain/core/emission/reset-state-emission.js +1 -0
  619. package/dist/domain/core/emission/state-emission.d.ts +4 -0
  620. package/dist/domain/core/emission/state-emission.js +1 -0
  621. package/dist/domain/core/emission/state-update-emission.d.ts +14 -0
  622. package/dist/domain/core/emission/state-update-emission.js +1 -0
  623. package/dist/domain/core/emission/state-validation-result.d.ts +18 -0
  624. package/dist/domain/core/emission/state-validation-result.js +1 -0
  625. package/dist/domain/core/emission/transformation-log.d.ts +2 -0
  626. package/dist/domain/core/emission/transformation-log.js +1 -0
  627. package/dist/domain/core/emission/transformer-log-entry.d.ts +6 -0
  628. package/dist/domain/core/emission/transformer-log-entry.js +1 -0
  629. package/dist/domain/core/emission/transformer-log.d.ts +11 -0
  630. package/dist/domain/core/emission/transformer-log.js +1 -0
  631. package/dist/domain/core/emission/transformer-phase.d.ts +1 -0
  632. package/dist/domain/core/emission/transformer-phase.js +1 -0
  633. package/dist/domain/core/expression/aliased-expressions.d.ts +10 -0
  634. package/dist/domain/core/expression/aliased-expressions.js +1 -0
  635. package/dist/domain/core/expression/constant-expressions.d.ts +16 -0
  636. package/dist/domain/core/expression/constant-expressions.js +1 -0
  637. package/dist/domain/core/expression/custom-expression.d.ts +25 -0
  638. package/dist/domain/core/expression/custom-expression.js +1 -0
  639. package/dist/domain/core/expression/expression.d.ts +46 -0
  640. package/dist/domain/core/expression/expression.js +1 -0
  641. package/dist/domain/core/expression/index.d.ts +4 -0
  642. package/dist/domain/core/expression/index.js +1 -0
  643. package/dist/domain/core/index.d.ts +9 -4
  644. package/dist/domain/core/index.js +1 -1
  645. package/dist/domain/{invariants → core/invariant}/builtin-invariant.d.ts +2 -1
  646. package/dist/domain/core/invariant/custom-invariants.d.ts +13 -0
  647. package/dist/domain/core/invariant/custom-invariants.js +1 -0
  648. package/dist/domain/core/invariant/index.d.ts +5 -0
  649. package/dist/domain/core/invariant/index.js +1 -0
  650. package/dist/domain/core/invariant/invariants.d.ts +10 -0
  651. package/dist/domain/core/invariant/invariants.js +1 -0
  652. package/dist/domain/core/invariant/violation-component.js +1 -0
  653. package/dist/domain/{invariants → core/invariant}/violation.d.ts +52 -4
  654. package/dist/domain/core/invariant/violation.js +1 -0
  655. package/dist/domain/core/model/model.d.ts +1 -1
  656. package/dist/domain/core/recipe/index.d.ts +1 -0
  657. package/dist/domain/core/recipe/index.js +1 -0
  658. package/dist/domain/core/recipe/recipes.d.ts +23 -0
  659. package/dist/domain/core/recipe/recipes.js +1 -0
  660. package/dist/domain/core/relation/all-of-type-relation.d.ts +19 -0
  661. package/dist/domain/core/relation/all-of-type-relation.js +1 -0
  662. package/dist/domain/{relations → core/relation}/component-factories.d.ts +1 -1
  663. package/dist/domain/core/relation/component-factories.js +1 -0
  664. package/dist/domain/{relations → core/relation}/composed-of.d.ts +1 -1
  665. package/dist/domain/core/relation/composed-of.js +1 -0
  666. package/dist/domain/core/relation/direct-relation.d.ts +17 -0
  667. package/dist/domain/core/relation/index.d.ts +8 -0
  668. package/dist/domain/core/relation/index.js +1 -0
  669. package/dist/domain/core/relation/indirect-relation.d.ts +25 -0
  670. package/dist/domain/core/relation/indirect-relation.js +1 -0
  671. package/dist/domain/{relations → core/relation}/reference-component.d.ts +4 -4
  672. package/dist/domain/core/relation/reference-component.js +1 -0
  673. package/dist/domain/{relations → core/relation}/reference-field.d.ts +1 -1
  674. package/dist/domain/core/relation/reference-field.js +1 -0
  675. package/dist/domain/core/relation/relation-factory.d.ts +22 -0
  676. package/dist/domain/core/relation/relation-factory.js +1 -0
  677. package/dist/domain/core/schema/extended-schema-validator.js +1 -1
  678. package/dist/domain/core/state/id-sequence.d.ts +15 -0
  679. package/dist/domain/core/state/id-sequence.js +1 -0
  680. package/dist/domain/core/state/index.d.ts +3 -0
  681. package/dist/domain/core/state/index.js +1 -0
  682. package/dist/domain/core/{migrations.d.ts → state/migrations.d.ts} +15 -46
  683. package/dist/domain/core/state/migrations.js +1 -0
  684. package/dist/domain/core/{state.d.ts → state/state.d.ts} +2 -2
  685. package/dist/domain/domain-builder.d.ts +2 -5
  686. package/dist/domain/domain-builder.js +1 -1
  687. package/dist/domain/domain-context/action-system/action-system.d.ts +2 -2
  688. package/dist/domain/domain-context/action-system/action-system.js +1 -1
  689. package/dist/domain/domain-context/action-system/index.d.ts +1 -0
  690. package/dist/domain/domain-context/action-system/index.js +1 -0
  691. package/dist/domain/domain-context/analytics-system/index.d.ts +2 -0
  692. package/dist/domain/domain-context/analytics-system/index.js +1 -0
  693. package/dist/domain/domain-context/create-transformer.d.ts +1 -1
  694. package/dist/domain/domain-context/dimension-system/dimension-state.js +1 -1
  695. package/dist/domain/domain-context/dimension-system/dimension-system.d.ts +3 -4
  696. package/dist/domain/domain-context/dimension-system/dimension-system.js +1 -1
  697. package/dist/domain/domain-context/dimension-system/index.d.ts +1 -0
  698. package/dist/domain/domain-context/dimension-system/index.js +1 -0
  699. package/dist/domain/domain-context/domain-context-systems.d.ts +7 -7
  700. package/dist/domain/domain-context/index.d.ts +8 -18
  701. package/dist/domain/domain-context/index.js +1 -1
  702. package/dist/domain/domain-context/navigation-system/index.d.ts +3 -0
  703. package/dist/domain/domain-context/navigation-system/index.js +1 -0
  704. package/dist/domain/domain-context/navigation-system/navigation-system.d.ts +5 -7
  705. package/dist/domain/domain-context/navigation-system/navigation-system.js +1 -1
  706. package/dist/domain/domain-context/navigation-system/navigation-updates.d.ts +1 -12
  707. package/dist/domain/domain-context/navigation-system/navigation-updates.js +1 -1
  708. package/dist/domain/domain-context/navigation-system/selection-transformers.d.ts +1 -1
  709. package/dist/domain/domain-context/recipe-system/index.d.ts +1 -0
  710. package/dist/domain/domain-context/recipe-system/index.js +1 -0
  711. package/dist/domain/domain-context/recipe-system/recipe-cooker-system.d.ts +2 -4
  712. package/dist/domain/domain-context/recipe-system/recipe-cooker-system.js +1 -1
  713. package/dist/domain/domain-context/relation-transformers/cascade-deletes.d.ts +2 -2
  714. package/dist/domain/domain-context/relation-transformers/cascade-deletes.js +1 -1
  715. package/dist/domain/domain-context/relation-transformers/cascade-ref-pruning.d.ts +3 -3
  716. package/dist/domain/domain-context/relation-transformers/cascade-ref-pruning.js +1 -1
  717. package/dist/domain/domain-context/relation-transformers/create-entity-refs.d.ts +3 -3
  718. package/dist/domain/domain-context/relation-transformers/create-entity-refs.js +2 -2
  719. package/dist/domain/domain-context/relation-transformers/index.d.ts +4 -0
  720. package/dist/domain/domain-context/relation-transformers/index.js +1 -0
  721. package/dist/domain/domain-context/relation-transformers/replace-refs.d.ts +3 -3
  722. package/dist/domain/domain-context/relation-transformers/replace-refs.js +1 -1
  723. package/dist/domain/domain-context/store-system/apply-updates.d.ts +1 -2
  724. package/dist/domain/domain-context/store-system/index.d.ts +4 -0
  725. package/dist/domain/domain-context/store-system/index.js +1 -0
  726. package/dist/domain/domain-context/store-system/next-domain-entity-id.d.ts +1 -12
  727. package/dist/domain/domain-context/store-system/reconcile-projected-entities.d.ts +1 -2
  728. package/dist/domain/domain-context/store-system/reconcile-projected-entities.js +1 -1
  729. package/dist/domain/domain-context/store-system/store-system.d.ts +2 -37
  730. package/dist/domain/domain-context/store-system/store-system.js +2 -2
  731. package/dist/domain/domain-context/store-system/system-state.d.ts +2 -2
  732. package/dist/domain/domain-context/store-system/system-state.js +1 -1
  733. package/dist/domain/domain-context/transformers/actions-builder.d.ts +1 -2
  734. package/dist/domain/domain-context/transformers/actions-builder.js +1 -1
  735. package/dist/domain/domain-context/transformers/auto-snap-transformer.d.ts +6 -9
  736. package/dist/domain/domain-context/transformers/auto-snap-transformer.js +1 -1
  737. package/dist/domain/domain-context/transformers/chain-builder.d.ts +1 -1
  738. package/dist/domain/domain-context/transformers/context.d.ts +2 -6
  739. package/dist/domain/domain-context/transformers/context.js +1 -1
  740. package/dist/domain/domain-context/transformers/entity-builder.d.ts +1 -5
  741. package/dist/domain/domain-context/transformers/entity-builder.js +1 -1
  742. package/dist/domain/domain-context/transformers/index.d.ts +1 -1
  743. package/dist/domain/domain-context/transformers/index.js +1 -1
  744. package/dist/domain/domain-context/transformers/then-builder.d.ts +1 -2
  745. package/dist/domain/domain-context/transformers/when-builder.d.ts +3 -8
  746. package/dist/domain/domain-context/transformers/when-builder.js +1 -1
  747. package/dist/domain/domain-context/undo-system.d.ts +29 -3
  748. package/dist/domain/domain-context/undo-system.js +1 -1
  749. package/dist/domain/domain-runtime/access/selectors.d.ts +9 -0
  750. package/dist/domain/domain-runtime/access/selectors.js +1 -1
  751. package/dist/domain/domain-runtime/access/types.d.ts +2 -0
  752. package/dist/domain/domain-runtime/access/types.js +1 -1
  753. package/dist/domain/domain-runtime/domain-context/action-context.d.ts +11 -0
  754. package/dist/domain/domain-runtime/domain-context/action-context.js +1 -0
  755. package/dist/domain/domain-runtime/domain-context/component-reader.d.ts +1 -2
  756. package/dist/domain/domain-runtime/domain-context/component-reader.js +1 -1
  757. package/dist/domain/domain-runtime/domain-context/domain-context.js +1 -1
  758. package/dist/domain/domain-runtime/domain-context/expression-context.d.ts +8 -0
  759. package/dist/domain/domain-runtime/domain-context/expression-context.js +1 -0
  760. package/dist/domain/domain-runtime/domain-context/index.d.ts +3 -0
  761. package/dist/domain/domain-runtime/domain-context/runtime-expression-context.d.ts +18 -0
  762. package/dist/domain/domain-runtime/domain-context/runtime-expression-context.js +1 -0
  763. package/dist/domain/domain-runtime/domain-context/selectors.d.ts +19 -24
  764. package/dist/domain/domain-runtime/domain-context/selectors.js +1 -1
  765. package/dist/domain/domain-runtime/domain-context/types.d.ts +4 -1
  766. package/dist/domain/domain-runtime/domain-runtime.d.ts +84 -68
  767. package/dist/domain/domain-runtime/errors/implementation-error-collector.d.ts +19 -0
  768. package/dist/domain/domain-runtime/errors/implementation-error-collector.js +1 -0
  769. package/dist/domain/domain-runtime/errors/implementation-error.d.ts +46 -0
  770. package/dist/domain/domain-runtime/errors/implementation-error.js +1 -0
  771. package/dist/domain/domain-runtime/errors/implementation-errors.d.ts +13 -0
  772. package/dist/domain/domain-runtime/errors/implementation-errors.js +1 -0
  773. package/dist/domain/domain-runtime/errors/index.d.ts +4 -0
  774. package/dist/domain/domain-runtime/errors/index.js +1 -0
  775. package/dist/domain/domain-runtime/errors/to-implementation-errors.d.ts +10 -0
  776. package/dist/domain/domain-runtime/errors/to-implementation-errors.js +1 -0
  777. package/dist/domain/domain-runtime/index.d.ts +1 -0
  778. package/dist/domain/domain-runtime/index.js +1 -1
  779. package/dist/domain/domain-runtime/spec/create-violation-expressions.d.ts +24 -0
  780. package/dist/domain/domain-runtime/spec/create-violation-expressions.js +1 -0
  781. package/dist/domain/domain-runtime/spec/index.d.ts +5 -0
  782. package/dist/domain/domain-runtime/spec/index.js +1 -1
  783. package/dist/domain/domain-runtime/spec/initialize.d.ts +11 -0
  784. package/dist/domain/domain-runtime/spec/initialize.js +1 -1
  785. package/dist/domain/{expressions → domain-runtime/spec}/memoize-expression.d.ts +1 -1
  786. package/dist/domain/{application → domain-runtime/spec/module-checks}/element-registration.d.ts +14 -13
  787. package/dist/domain/domain-runtime/spec/module-checks/element-registration.js +1 -0
  788. package/dist/domain/{application → domain-runtime/spec/module-checks}/handler-registration.d.ts +1 -1
  789. package/dist/domain/domain-runtime/spec/module-checks/handler-registration.js +1 -0
  790. package/dist/domain/domain-runtime/spec/module-checks/index.d.ts +8 -0
  791. package/dist/domain/domain-runtime/spec/module-checks/index.js +1 -0
  792. package/dist/domain/{project-modules → domain-runtime/spec/module-checks}/project-modules.d.ts +8 -17
  793. package/dist/domain/domain-runtime/spec/module-checks/project-modules.js +1 -0
  794. package/dist/domain/domain-runtime/spec/module-checks/resolve-action-modules.d.ts +4 -0
  795. package/dist/domain/domain-runtime/spec/module-checks/resolve-action-modules.js +1 -0
  796. package/dist/domain/domain-runtime/spec/module-checks/resolve-component-optic-modules.d.ts +4 -0
  797. package/dist/domain/domain-runtime/spec/module-checks/resolve-component-optic-modules.js +1 -0
  798. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.d.ts +15 -0
  799. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.js +1 -0
  800. package/dist/domain/domain-runtime/spec/module-checks/resolve-imported-transformers.d.ts +22 -0
  801. package/dist/domain/domain-runtime/spec/module-checks/resolve-imported-transformers.js +1 -0
  802. package/dist/domain/domain-runtime/spec/module-checks/resolve-invariant-modules.d.ts +6 -0
  803. package/dist/domain/domain-runtime/spec/module-checks/resolve-invariant-modules.js +1 -0
  804. package/dist/domain/{actions → domain-runtime/spec}/prepare-action-implementations.d.ts +1 -1
  805. package/dist/domain/domain-runtime/spec/prepare-action-implementations.js +5 -0
  806. package/dist/domain/{expressions → domain-runtime/spec}/prepare-domain-expressions.d.ts +1 -1
  807. package/dist/domain/domain-runtime/spec/selectors.d.ts +5 -6
  808. package/dist/domain/domain-runtime/spec/selectors.js +1 -1
  809. package/dist/domain/domain-runtime/spec/types.d.ts +6 -4
  810. package/dist/domain/extensions/angle-indicator.js +1 -0
  811. package/dist/domain/{system-components → extensions}/attribute-switch.d.ts +1 -1
  812. package/dist/domain/extensions/attribute-switch.js +1 -0
  813. package/dist/domain/{system-components → extensions}/autorotate-camera-component.d.ts +1 -1
  814. package/dist/domain/extensions/autorotate-camera-component.js +1 -0
  815. package/dist/domain/extensions/basic-sidebar-footer.js +1 -0
  816. package/dist/domain/extensions/camera-based-hidden-entity-object.js +1 -0
  817. package/dist/domain/extensions/camera-based-hidden-entity.js +1 -0
  818. package/dist/domain/{system-components → extensions}/canvas-config.d.ts +1 -1
  819. package/dist/domain/extensions/canvas-config.js +1 -0
  820. package/dist/domain/extensions/canvas-custom-environment.js +1 -0
  821. package/dist/domain/extensions/canvas-padding.js +1 -0
  822. package/dist/domain/extensions/canvas-preset-environment.js +1 -0
  823. package/dist/domain/{system-components → extensions}/child-entity-recipe-hierarchy.d.ts +2 -2
  824. package/dist/domain/extensions/child-entity-recipe-hierarchy.js +1 -0
  825. package/dist/domain/{system-components → extensions}/client-side-image.d.ts +2 -2
  826. package/dist/domain/extensions/client-side-image.js +1 -0
  827. package/dist/domain/extensions/color-value.js +1 -0
  828. package/dist/domain/{system-components → extensions}/common/angle-indicator-schema.d.ts +3 -3
  829. package/dist/domain/extensions/common/angle-indicator-schema.js +1 -0
  830. package/dist/domain/{system-components → extensions}/common/dimension-indicator-schema.d.ts +2 -2
  831. package/dist/domain/extensions/common/index.d.ts +4 -0
  832. package/dist/domain/extensions/common/index.js +1 -0
  833. package/dist/domain/{system-components → extensions}/custom-header.d.ts +1 -1
  834. package/dist/domain/extensions/custom-header.js +1 -0
  835. package/dist/domain/extensions/custom-price-footer.js +1 -0
  836. package/dist/domain/{system-components → extensions}/custom-sidebar-footer.d.ts +1 -1
  837. package/dist/domain/extensions/custom-sidebar-footer.js +1 -0
  838. package/dist/domain/extensions/dimension-indicator.js +1 -0
  839. package/dist/domain/{system-components → extensions}/editable-angle-indicator.d.ts +3 -2
  840. package/dist/domain/extensions/editable-angle-indicator.js +1 -0
  841. package/dist/domain/{system-components → extensions}/editable-distance-dimension-indicator.d.ts +3 -2
  842. package/dist/domain/extensions/editable-distance-dimension-indicator.js +1 -0
  843. package/dist/domain/{system-components → extensions}/editable-offset-indicator.d.ts +3 -2
  844. package/dist/domain/extensions/editable-offset-indicator.js +1 -0
  845. package/dist/domain/{system-components → extensions}/editable-size-indicator.d.ts +2 -1
  846. package/dist/domain/extensions/editable-size-indicator.js +1 -0
  847. package/dist/domain/{system-components → extensions}/entity-header.d.ts +1 -1
  848. package/dist/domain/extensions/entity-header.js +1 -0
  849. package/dist/domain/extensions/exit-tool-mode-fab.js +1 -0
  850. package/dist/domain/extensions/finalize-action.js +1 -0
  851. package/dist/domain/extensions/finalize-component.js +1 -0
  852. package/dist/domain/extensions/fit-selection-orthographic-camera-component.js +1 -0
  853. package/dist/domain/extensions/fit-selection-perspective-camera-component.js +1 -0
  854. package/dist/domain/extensions/fixed-header.js +1 -0
  855. package/dist/domain/extensions/floating-header.js +1 -0
  856. package/dist/domain/extensions/hidden-header.js +1 -0
  857. package/dist/domain/extensions/hidden-sidebar-footer.js +1 -0
  858. package/dist/domain/{system-components → extensions}/horizontal-tabs.d.ts +2 -2
  859. package/dist/domain/extensions/horizontal-tabs.js +1 -0
  860. package/dist/domain/extensions/index.d.ts +69 -0
  861. package/dist/domain/extensions/index.js +1 -0
  862. package/dist/domain/{system-components → extensions}/list-selector-dimension-indicator.d.ts +3 -2
  863. package/dist/domain/extensions/list-selector-dimension-indicator.js +1 -0
  864. package/dist/domain/extensions/multilingual-text-value.js +1 -0
  865. package/dist/domain/{system-components → extensions}/navigation-steps.d.ts +2 -2
  866. package/dist/domain/extensions/navigation-steps.js +1 -0
  867. package/dist/domain/extensions/offset-anchors.js +1 -0
  868. package/dist/domain/extensions/offset-indicator.js +1 -0
  869. package/dist/domain/extensions/offset.js +1 -0
  870. package/dist/domain/extensions/other-action.js +1 -0
  871. package/dist/domain/{system-components → extensions}/property-page.d.ts +1 -1
  872. package/dist/domain/extensions/property-page.js +1 -0
  873. package/dist/domain/extensions/read-sidebar-footer.js +1 -0
  874. package/dist/domain/{system-components → extensions}/replace-entity-recipe-hierarchy.d.ts +2 -2
  875. package/dist/domain/extensions/replace-entity-recipe-hierarchy.js +1 -0
  876. package/dist/domain/extensions/rotatable.js +1 -0
  877. package/dist/domain/{system-components → extensions}/rotation-handle.d.ts +2 -2
  878. package/dist/domain/extensions/rotation-handle.js +1 -0
  879. package/dist/domain/{system-components → extensions}/save-template-thumbnail.d.ts +2 -2
  880. package/dist/domain/extensions/save-template-thumbnail.js +1 -0
  881. package/dist/domain/{system-components → extensions}/scene-entity-add-fab.d.ts +1 -1
  882. package/dist/domain/extensions/scene-entity-add-fab.js +1 -0
  883. package/dist/domain/extensions/scene-entity-animation.js +1 -0
  884. package/dist/domain/extensions/scene-entity-control.js +1 -0
  885. package/dist/domain/{system-components → extensions}/scene-entity-delete-fab.d.ts +1 -1
  886. package/dist/domain/extensions/scene-entity-delete-fab.js +1 -0
  887. package/dist/domain/extensions/scene-entity-floor-object.js +1 -0
  888. package/dist/domain/{system-components → extensions}/scene-entity-html-hotspot.d.ts +1 -1
  889. package/dist/domain/extensions/scene-entity-html-hotspot.js +1 -0
  890. package/dist/domain/{system-components → extensions}/scene-entity-navigation-hotspot.d.ts +1 -1
  891. package/dist/domain/extensions/scene-entity-navigation-hotspot.js +1 -0
  892. package/dist/domain/{system-components → extensions}/scene-entity-object-html-hotspot.d.ts +1 -1
  893. package/dist/domain/extensions/scene-entity-object-html-hotspot.js +1 -0
  894. package/dist/domain/{system-components → extensions}/scene-entity-select-hotspot.d.ts +1 -1
  895. package/dist/domain/extensions/scene-entity-select-hotspot.js +1 -0
  896. package/dist/domain/extensions/scene-entity-wall-object.js +1 -0
  897. package/dist/domain/extensions/selectable-component.js +1 -0
  898. package/dist/domain/extensions/sidebar-tabs.js +1 -0
  899. package/dist/domain/extensions/simple-summary.js +1 -0
  900. package/dist/domain/extensions/size.js +1 -0
  901. package/dist/domain/extensions/sketching-draw.js +1 -0
  902. package/dist/domain/{system-components → extensions}/sketching-edit.d.ts +1 -1
  903. package/dist/domain/extensions/sketching-edit.js +1 -0
  904. package/dist/domain/extensions/summary-component.js +1 -0
  905. package/dist/domain/extensions/text-value.js +1 -0
  906. package/dist/domain/extensions/tool-controls.js +1 -0
  907. package/dist/domain/{system-components → extensions}/tool-menu-fab.d.ts +1 -1
  908. package/dist/domain/extensions/tool-menu-fab.js +1 -0
  909. package/dist/domain/{system-components → extensions}/toolbar.d.ts +1 -1
  910. package/dist/domain/extensions/toolbar.js +1 -0
  911. package/dist/domain/extensions/universal-sidebar-footer.js +1 -0
  912. package/dist/domain/extensions/view-controls.js +1 -0
  913. package/dist/domain/index.d.ts +2 -33
  914. package/dist/domain/index.js +1 -1
  915. package/dist/domain/mocks/create-mock-domain-context.d.ts +1 -1
  916. package/dist/domain/mocks/create-mock-domain-runtime-services.d.ts +1 -1
  917. package/dist/domain/mocks/create-mock-domain-runtime.d.ts +28 -19
  918. package/dist/domain/mocks/create-mock-domain-runtime.js +1 -1
  919. package/dist/domain/mocks/create-mock-domain.d.ts +1 -1
  920. package/dist/domain/mocks/create-mock-domain.js +1 -1
  921. package/dist/domain/mocks/create-mock-state.d.ts +2 -2
  922. package/dist/domain/mocks/create-test-application-config.d.ts +59 -0
  923. package/dist/domain/mocks/create-test-application-config.js +1 -0
  924. package/dist/domain/mocks/index.d.ts +1 -0
  925. package/dist/domain/mocks/index.js +1 -1
  926. package/dist/domain/projections/blender-projections/blender-projections.d.ts +2 -3
  927. package/dist/domain/projections/blender-projections/blender-projections.js +1 -1
  928. package/dist/domain/projections/blender-projections/camera.d.ts +2 -2
  929. package/dist/domain/projections/collision-projections.d.ts +1 -1
  930. package/dist/domain/projections/composition-projections.d.ts +1 -1
  931. package/dist/domain/projections/composition-projections.js +1 -1
  932. package/dist/domain/projections/constraint-projections.d.ts +1 -1
  933. package/dist/domain/projections/index.d.ts +1 -1
  934. package/dist/domain/projections/position-projections.d.ts +1 -1
  935. package/dist/domain/projections/projected-entities-projections.d.ts +1 -1
  936. package/dist/domain/projections/snapping-projections.d.ts +1 -1
  937. package/dist/domain/projections/validation-projections.d.ts +3 -20
  938. package/dist/domain/projections/validation-projections.js +1 -1
  939. package/dist/domain/sketching/sketching-projections.d.ts +1 -1
  940. package/dist/domain/system-components/admin-sidebar.js +1 -1
  941. package/dist/domain/system-components/angle-dimension.js +1 -1
  942. package/dist/domain/system-components/application-config.d.ts +2 -2
  943. package/dist/domain/system-components/application-config.js +1 -1
  944. package/dist/domain/system-components/attribute-selection.js +1 -1
  945. package/dist/domain/system-components/bounding-box-component.d.ts +1 -1
  946. package/dist/domain/system-components/bounding-box-component.js +1 -1
  947. package/dist/domain/system-components/bounding-sphere-component.d.ts +1 -1
  948. package/dist/domain/system-components/bounding-sphere-component.js +1 -1
  949. package/dist/domain/system-components/child-entity-recipes.d.ts +1 -1
  950. package/dist/domain/system-components/child-entity-recipes.js +1 -1
  951. package/dist/domain/system-components/child-entity-selection.d.ts +1 -2
  952. package/dist/domain/system-components/child-entity-selection.js +1 -1
  953. package/dist/domain/system-components/collision-box-geometry.d.ts +5 -3
  954. package/dist/domain/system-components/collision-box-geometry.js +1 -1
  955. package/dist/domain/system-components/collision-geometry.d.ts +5 -3
  956. package/dist/domain/system-components/collision-geometry.js +1 -1
  957. package/dist/domain/system-components/collision-point-geometry.d.ts +5 -3
  958. package/dist/domain/system-components/collision-point-geometry.js +1 -1
  959. package/dist/domain/system-components/common/index.d.ts +0 -4
  960. package/dist/domain/system-components/common/index.js +1 -1
  961. package/dist/domain/system-components/common/material-override-schema.d.ts +2 -2
  962. package/dist/domain/system-components/common/recipes.d.ts +21 -4
  963. package/dist/domain/system-components/common/recipes.js +1 -1
  964. package/dist/domain/system-components/common/scene-entity-control-schema.d.ts +3 -0
  965. package/dist/domain/system-components/common/scene-entity-control-schema.js +1 -1
  966. package/dist/domain/system-components/constraint.d.ts +11 -24
  967. package/dist/domain/system-components/constraint.js +1 -1
  968. package/dist/domain/system-components/custom-scene-entity.js +1 -1
  969. package/dist/domain/system-components/detail.js +1 -1
  970. package/dist/domain/system-components/distance-dimension-select.js +1 -1
  971. package/dist/domain/system-components/distance-dimension.js +1 -1
  972. package/dist/domain/system-components/drag-handle.d.ts +1 -1
  973. package/dist/domain/system-components/drag-handle.js +1 -1
  974. package/dist/domain/system-components/fit-entity-orthographic-camera-component.js +1 -1
  975. package/dist/domain/system-components/fit-entity-perspective-camera-component.js +1 -1
  976. package/dist/domain/system-components/fit-root-orthographic-camera-component.js +1 -1
  977. package/dist/domain/system-components/fit-root-perspective-camera-component.js +1 -1
  978. package/dist/domain/system-components/generic-dimension.js +1 -1
  979. package/dist/domain/system-components/hidden-entity.js +1 -1
  980. package/dist/domain/system-components/hotspot-drag-handle.d.ts +2 -3
  981. package/dist/domain/system-components/hotspot-drag-handle.js +1 -1
  982. package/dist/domain/system-components/index.d.ts +0 -68
  983. package/dist/domain/system-components/index.js +1 -1
  984. package/dist/domain/system-components/material-override-property-transition.js +1 -1
  985. package/dist/domain/system-components/material-override-transformer.js +1 -1
  986. package/dist/domain/system-components/material-swatch.js +1 -1
  987. package/dist/domain/system-components/navigation-page.js +1 -1
  988. package/dist/domain/system-components/navigation-panel-list.js +1 -1
  989. package/dist/domain/system-components/phoenix-entity-elements/admin-data-table-sidebar.d.ts +1 -1
  990. package/dist/domain/system-components/phoenix-layout-elements/admin-connected-resource-page.d.ts +1 -1
  991. package/dist/domain/system-components/phoenix-layout-elements/admin-data-table-actions.d.ts +1 -1
  992. package/dist/domain/system-components/phoenix-layout-elements/admin-data-table-page.d.ts +1 -1
  993. package/dist/domain/system-components/pivot-point.js +1 -1
  994. package/dist/domain/system-components/price.js +1 -1
  995. package/dist/domain/system-components/projected-entities.js +1 -1
  996. package/dist/domain/system-components/replace-entity-recipes.d.ts +1 -1
  997. package/dist/domain/system-components/replace-entity-recipes.js +1 -1
  998. package/dist/domain/system-components/scene-entity-ambient-light.js +1 -1
  999. package/dist/domain/system-components/scene-entity-box-object.js +1 -1
  1000. package/dist/domain/system-components/scene-entity-directional-light.js +1 -1
  1001. package/dist/domain/system-components/scene-entity-local-material-override.js +1 -1
  1002. package/dist/domain/system-components/scene-entity-material-override.d.ts +1 -1
  1003. package/dist/domain/system-components/scene-entity-material-override.js +1 -1
  1004. package/dist/domain/system-components/scene-entity-object-clip.js +1 -1
  1005. package/dist/domain/system-components/scene-entity-object-decal.js +1 -1
  1006. package/dist/domain/system-components/scene-entity-object-group.js +1 -1
  1007. package/dist/domain/system-components/scene-entity-object-local-material-override.js +1 -1
  1008. package/dist/domain/system-components/scene-entity-object-material-override.d.ts +1 -1
  1009. package/dist/domain/system-components/scene-entity-object-material-override.js +1 -1
  1010. package/dist/domain/system-components/scene-entity-object-properties.js +1 -1
  1011. package/dist/domain/system-components/scene-entity-object-remote-material-override.js +1 -1
  1012. package/dist/domain/system-components/scene-entity-object-text-decal.d.ts +1 -1
  1013. package/dist/domain/system-components/scene-entity-object-text-decal.js +1 -1
  1014. package/dist/domain/system-components/scene-entity-object-transformer.js +1 -1
  1015. package/dist/domain/system-components/scene-entity-object-transimissive-material-override.d.ts +1 -1
  1016. package/dist/domain/system-components/scene-entity-object-transimissive-material-override.js +1 -1
  1017. package/dist/domain/system-components/scene-entity-object.js +1 -1
  1018. package/dist/domain/system-components/scene-entity-point-light.js +1 -1
  1019. package/dist/domain/system-components/scene-entity-properties.js +1 -1
  1020. package/dist/domain/system-components/scene-entity-rect-area-light.js +1 -1
  1021. package/dist/domain/system-components/scene-entity-remote-material-override.js +1 -1
  1022. package/dist/domain/system-components/scene-entity-remote-object.js +1 -1
  1023. package/dist/domain/system-components/scene-entity-spot-light.js +1 -1
  1024. package/dist/domain/system-components/scene-entity-transimissive-material-override.d.ts +1 -1
  1025. package/dist/domain/system-components/scene-entity-transimissive-material-override.js +1 -1
  1026. package/dist/domain/system-components/sketching-line.js +1 -1
  1027. package/dist/domain/system-components/sketching-rectangle.js +1 -1
  1028. package/dist/domain/system-components/sketching.js +1 -1
  1029. package/dist/domain/system-components/snap-axis.js +1 -1
  1030. package/dist/domain/system-components/snap-edge.js +1 -1
  1031. package/dist/domain/system-components/snap-plane.js +1 -1
  1032. package/dist/domain/system-components/snap-point.js +1 -1
  1033. package/dist/domain/system-components/static-orthographic-camera-component.d.ts +1 -1
  1034. package/dist/domain/system-components/static-orthographic-camera-component.js +1 -1
  1035. package/dist/domain/system-components/static-perspective-camera-component.d.ts +1 -1
  1036. package/dist/domain/system-components/static-perspective-camera-component.js +1 -1
  1037. package/dist/domain/utils/eval-cache.d.ts +1 -1
  1038. package/dist/domain/utils/map-nested-object.d.ts +1 -1
  1039. package/dist/domain/utils/memo-eval.d.ts +2 -2
  1040. package/dist/editor/domain-editors/use-implementation-files.d.ts +1 -2
  1041. package/dist/editor/mocks/CreateMockYaml.js +2 -2
  1042. package/dist/editor/mocks/EditorMockContext.js +1 -1
  1043. package/dist/globals/index.d.ts +2 -0
  1044. package/dist/i18n/locales/cs/messages.js +1 -1
  1045. package/dist/i18n/locales/da/messages.js +1 -1
  1046. package/dist/i18n/locales/de/messages.js +1 -1
  1047. package/dist/i18n/locales/de-AT/messages.js +1 -1
  1048. package/dist/i18n/locales/en/messages.js +1 -1
  1049. package/dist/i18n/locales/en-AU/messages.js +1 -1
  1050. package/dist/i18n/locales/en-GB/messages.js +1 -1
  1051. package/dist/i18n/locales/es/messages.js +1 -1
  1052. package/dist/i18n/locales/fr/messages.js +1 -1
  1053. package/dist/i18n/locales/hu/messages.js +1 -1
  1054. package/dist/i18n/locales/it/messages.js +1 -1
  1055. package/dist/i18n/locales/nl/messages.js +1 -1
  1056. package/dist/i18n/locales/pl/messages.js +1 -1
  1057. package/dist/i18n/locales/pt/messages.js +1 -1
  1058. package/dist/i18n/locales/ro/messages.js +1 -1
  1059. package/dist/i18n/locales/sk/messages.js +1 -1
  1060. package/dist/i18n/locales/tr/messages.js +1 -1
  1061. package/dist/legacy/domain-cli/gen/configurator-builder.js +13 -12
  1062. package/dist/legacy/domain-cli/gen/constant-expressions.js +1 -3
  1063. package/dist/legacy/domain-cli/gen/defaults.js +1 -7
  1064. package/dist/legacy/domain-cli/gen/implementation.js +7 -11
  1065. package/dist/legacy/domain-cli/gen/invariants.js +7 -6
  1066. package/dist/legacy/domain-cli/gen/relations.js +1 -1
  1067. package/dist/legacy/domain-cli/utils/cache.d.ts +1 -1
  1068. package/dist/legacy/domain-cli/utils/cache.js +1 -1
  1069. package/dist/legacy/domain-spec/__generated/domain-schema.d.ts +160 -148
  1070. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/claude-md.d.ts +1 -1
  1071. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/cursor-rules.d.ts +1 -1
  1072. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.d.ts +1 -1
  1073. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.js +7 -0
  1074. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/domain-index.js +17 -15
  1075. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/env-example.d.ts +1 -1
  1076. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/env-example.js +4 -0
  1077. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-admin.js +15 -14
  1078. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-configurator.js +14 -12
  1079. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-admin.js +14 -13
  1080. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-configurator.js +13 -11
  1081. package/dist/phoenix/application-spec/application-spec-builder.d.ts +0 -2
  1082. package/dist/phoenix/application-spec/application-spec-builder.js +1 -1
  1083. package/dist/phoenix/application-spec/generate-application-spec-project.d.ts +0 -2
  1084. package/dist/phoenix/application-spec/generate-application-spec-project.js +2 -2
  1085. package/dist/phoenix/application-spec/generate-application-spec-story.js +2 -2
  1086. package/dist/phoenix/application-spec/generate-project-files.d.ts +0 -2
  1087. package/dist/phoenix/application-spec/project-files.js +1 -1
  1088. package/dist/phoenix/bin.d.ts +2 -0
  1089. package/dist/phoenix/bin.js +2 -0
  1090. package/dist/phoenix/check-configs/built-in-eslint-config.d.ts +9 -0
  1091. package/dist/phoenix/check-configs/built-in-eslint-config.js +1 -0
  1092. package/dist/phoenix/check-configs/eslint-config.d.ts +10 -0
  1093. package/dist/phoenix/check-configs/eslint-config.js +1 -0
  1094. package/dist/phoenix/check-configs/index.d.ts +8 -0
  1095. package/dist/phoenix/check-configs/index.js +1 -0
  1096. package/dist/phoenix/check-configs/typescript-project.d.ts +5 -0
  1097. package/dist/phoenix/check-configs/typescript-project.js +1 -0
  1098. package/dist/phoenix/cli.d.ts +0 -1
  1099. package/dist/phoenix/cli.js +1 -2
  1100. package/dist/phoenix/commands/build.js +1 -1
  1101. package/dist/phoenix/commands/check.js +1 -1
  1102. package/dist/phoenix/commands/clean.js +1 -1
  1103. package/dist/phoenix/commands/deploy.js +2 -2
  1104. package/dist/phoenix/commands/deps/deps.d.ts +73 -0
  1105. package/dist/phoenix/commands/deps/deps.js +3 -0
  1106. package/dist/phoenix/commands/deps/index.d.ts +1 -0
  1107. package/dist/phoenix/commands/deps/index.js +1 -0
  1108. package/dist/phoenix/commands/deps/sdk-manifest.d.ts +12 -0
  1109. package/dist/phoenix/commands/deps/sdk-manifest.js +1 -0
  1110. package/dist/phoenix/commands/dev.js +5 -5
  1111. package/dist/phoenix/commands/fix.js +1 -1
  1112. package/dist/phoenix/commands/index.d.ts +1 -0
  1113. package/dist/phoenix/commands/index.js +1 -1
  1114. package/dist/phoenix/commands/init.d.ts +17 -5
  1115. package/dist/phoenix/commands/init.js +1 -1
  1116. package/dist/phoenix/commands/link.js +1 -1
  1117. package/dist/phoenix/commands/prettier.js +1 -1
  1118. package/dist/phoenix/commands/sync.js +1 -1
  1119. package/dist/phoenix/commands/unlink.js +1 -1
  1120. package/dist/phoenix/scripts/build-admin.js +1 -1
  1121. package/dist/phoenix/services/application-spec-project-watcher.d.ts +2 -2
  1122. package/dist/phoenix/services/application-spec-project-watcher.js +3 -3
  1123. package/dist/phoenix/services/lingui.d.ts +8 -0
  1124. package/dist/phoenix/services/lingui.js +1 -1
  1125. package/dist/phoenix/services/source-archive.d.ts +1 -0
  1126. package/dist/phoenix/services/source-archive.js +1 -1
  1127. package/dist/phoenix/services/swc.js +1 -1
  1128. package/dist/phoenix/services/vite-config.js +1 -1
  1129. package/dist/phoenix/utils/git/index.d.ts +1 -0
  1130. package/dist/phoenix/utils/git/index.js +1 -0
  1131. package/dist/phoenix/utils/git/is-inside-git-repository.d.ts +6 -0
  1132. package/dist/phoenix/utils/git/is-inside-git-repository.js +1 -0
  1133. package/dist/phoenix/utils/index.d.ts +5 -2
  1134. package/dist/phoenix/utils/index.js +1 -1
  1135. package/dist/phoenix/utils/node-version/index.d.ts +1 -0
  1136. package/dist/phoenix/utils/node-version/index.js +1 -0
  1137. package/dist/phoenix/utils/node-version/supported-node-version.d.ts +12 -0
  1138. package/dist/phoenix/utils/node-version/supported-node-version.js +4 -0
  1139. package/dist/phoenix/utils/package-info.d.ts +0 -9
  1140. package/dist/phoenix/utils/package-info.js +1 -1
  1141. package/dist/phoenix/utils/package-manager/index.d.ts +2 -0
  1142. package/dist/phoenix/utils/package-manager/index.js +1 -0
  1143. package/dist/phoenix/utils/package-manager/package-manager-commands.d.ts +19 -0
  1144. package/dist/phoenix/utils/package-manager/package-manager-commands.js +1 -0
  1145. package/dist/phoenix/utils/package-manager/pnpm-project.d.ts +9 -0
  1146. package/dist/phoenix/utils/package-manager/pnpm-project.js +1 -0
  1147. package/dist/phoenix/utils/run-command.d.ts +11 -0
  1148. package/dist/phoenix/utils/run-command.js +1 -1
  1149. package/dist/phoenix/utils/sdk-tool/index.d.ts +1 -0
  1150. package/dist/phoenix/utils/sdk-tool/index.js +1 -0
  1151. package/dist/phoenix/utils/sdk-tool/resolve-sdk-tool-bin.d.ts +15 -0
  1152. package/dist/phoenix/utils/sdk-tool/resolve-sdk-tool-bin.js +1 -0
  1153. package/dist/react-sdk/application-runtime/hooks/use-access-service.d.ts +2 -0
  1154. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.js +1 -1
  1155. package/dist/react-sdk/application-runtime/routing/access-service.d.ts +1 -0
  1156. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.d.ts +53 -36
  1157. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.js +1 -1
  1158. package/dist/react-sdk/domain-application-context/DomainLifecycleBoundary.js +1 -1
  1159. package/dist/react-sdk/domain-context/common-hooks/use-configurator-messages.d.ts +41 -0
  1160. package/dist/react-sdk/domain-context/common-hooks/use-configurator-messages.js +1 -0
  1161. package/dist/react-sdk/domain-context/common-hooks/use-domain-context.d.ts +9 -9
  1162. package/dist/react-sdk/domain-context/index.d.ts +2 -1
  1163. package/dist/react-sdk/domain-context/index.js +1 -1
  1164. package/dist/react-sdk/domain-context/system-hooks/navigation-hooks.d.ts +11 -0
  1165. package/dist/react-sdk/domain-context/system-hooks/navigation-hooks.js +1 -1
  1166. package/dist/react-sdk/domain-controls/hooks/use-angle-dimension.d.ts +1 -1
  1167. package/dist/ui-sdk/theme/types.d.ts +1 -1
  1168. package/dist/webhook/builders/common.d.ts +5 -0
  1169. package/dist/webhook/builders/webhook-builder.js +1 -1
  1170. package/package.json +46 -35
  1171. package/schema/domain-spec.json +1201 -217
  1172. package/dist/application-spec/generate-application/code/templates/env-ci.d.ts +0 -1
  1173. package/dist/application-spec/generate-application/code/templates/env-ci.js +0 -25
  1174. package/dist/application-spec/generate-application/code/templates/env-example.d.ts +0 -1
  1175. package/dist/application-spec/generate-application/code/templates/env-example.js +0 -90
  1176. package/dist/application-spec/generate-application/code/templates/nvmrc.d.ts +0 -1
  1177. package/dist/application-spec/generate-application/code/templates/nvmrc.js +0 -2
  1178. package/dist/application-spec/generate-application/code/templates/package-json.d.ts +0 -10
  1179. package/dist/application-spec/generate-application/code/templates/package-json.js +0 -1
  1180. package/dist/application-spec/generate-application/code/templates/prettier-ignore.d.ts +0 -1
  1181. package/dist/application-spec/generate-application/code/templates/prettier-ignore.js +0 -6
  1182. package/dist/application-spec/generate-application/code/templates/private-assets-readme.d.ts +0 -1
  1183. package/dist/application-spec/generate-application/code/templates/private-assets-readme.js +0 -24
  1184. package/dist/application-spec/generate-application/code/templates/public-assets-readme.d.ts +0 -1
  1185. package/dist/application-spec/generate-application/code/templates/public-assets-readme.js +0 -24
  1186. package/dist/application-spec/generate-application/code/templates/readme.d.ts +0 -1
  1187. package/dist/application-spec/generate-application/code/templates/readme.js +0 -23
  1188. package/dist/application-spec/generate-application/code/templates/skills/agents-md.d.ts +0 -1
  1189. package/dist/application-spec/generate-application/code/templates/skills/agents-md.js +0 -2
  1190. package/dist/application-spec/generate-application/code/templates/webhook-implementation.d.ts +0 -1
  1191. package/dist/application-spec/generate-application/code/templates/webhook-implementation.js +0 -7
  1192. package/dist/domain/actions/action-factory.d.ts +0 -10
  1193. package/dist/domain/actions/prepare-action-implementations.js +0 -5
  1194. package/dist/domain/application/element-registration.js +0 -1
  1195. package/dist/domain/application/handler-registration.js +0 -1
  1196. package/dist/domain/application/resolve-imported-transformers.d.ts +0 -23
  1197. package/dist/domain/application/resolve-imported-transformers.js +0 -1
  1198. package/dist/domain/application/resource-builder.d.ts +0 -13
  1199. package/dist/domain/application/resource-builder.js +0 -1
  1200. package/dist/domain/components/debug-state-component.js +0 -1
  1201. package/dist/domain/components/domain-component-optic.d.ts +0 -75
  1202. package/dist/domain/components/domain-component-optic.js +0 -16
  1203. package/dist/domain/components/drag-state-component.js +0 -1
  1204. package/dist/domain/components/export-state-component.js +0 -1
  1205. package/dist/domain/components/fullscreen-state-component.js +0 -1
  1206. package/dist/domain/components/group-components-by-entity-id-and-name.js +0 -1
  1207. package/dist/domain/components/hover-state-component.js +0 -1
  1208. package/dist/domain/components/index.d.ts +0 -2
  1209. package/dist/domain/components/index.js +0 -1
  1210. package/dist/domain/components/navigation-state-component.js +0 -1
  1211. package/dist/domain/components/selection-state-component.js +0 -1
  1212. package/dist/domain/components/system-component-builder.js +0 -1
  1213. package/dist/domain/components/system-virtual-entity.js +0 -1
  1214. package/dist/domain/components/tool-state-component.js +0 -1
  1215. package/dist/domain/components/view-state-component.js +0 -1
  1216. package/dist/domain/components/viewport-state-component.js +0 -1
  1217. package/dist/domain/core/expression.d.ts +0 -49
  1218. package/dist/domain/core/migrations.js +0 -1
  1219. package/dist/domain/domain-context/recipe-system/recipes.d.ts +0 -55
  1220. package/dist/domain/domain-context/recipe-system/recipes.js +0 -1
  1221. package/dist/domain/expressions/constant-expressions.d.ts +0 -7
  1222. package/dist/domain/expressions/constant-expressions.js +0 -1
  1223. package/dist/domain/expressions/custom-expression.d.ts +0 -10
  1224. package/dist/domain/expressions/custom-expression.js +0 -1
  1225. package/dist/domain/expressions/index.d.ts +0 -1
  1226. package/dist/domain/expressions/index.js +0 -1
  1227. package/dist/domain/invariants/custom-invariants.d.ts +0 -21
  1228. package/dist/domain/invariants/custom-invariants.js +0 -1
  1229. package/dist/domain/invariants/invariants.d.ts +0 -74
  1230. package/dist/domain/invariants/invariants.js +0 -1
  1231. package/dist/domain/invariants/violation-component.js +0 -1
  1232. package/dist/domain/invariants/violation.js +0 -1
  1233. package/dist/domain/project-modules/index.d.ts +0 -1
  1234. package/dist/domain/project-modules/index.js +0 -1
  1235. package/dist/domain/project-modules/project-modules.js +0 -1
  1236. package/dist/domain/relations/all-of-type-relation.d.ts +0 -30
  1237. package/dist/domain/relations/all-of-type-relation.js +0 -1
  1238. package/dist/domain/relations/component-factories.js +0 -1
  1239. package/dist/domain/relations/composed-of.js +0 -1
  1240. package/dist/domain/relations/direct-relation.d.ts +0 -27
  1241. package/dist/domain/relations/indirect-relation.d.ts +0 -78
  1242. package/dist/domain/relations/indirect-relation.js +0 -1
  1243. package/dist/domain/relations/reference-component.js +0 -1
  1244. package/dist/domain/relations/relation-factory.d.ts +0 -17
  1245. package/dist/domain/relations/relation-factory.js +0 -1
  1246. package/dist/domain/relations/relation-implementation.d.ts +0 -5
  1247. package/dist/domain/system-components/angle-indicator.js +0 -1
  1248. package/dist/domain/system-components/attribute-switch.js +0 -1
  1249. package/dist/domain/system-components/autorotate-camera-component.js +0 -1
  1250. package/dist/domain/system-components/basic-sidebar-footer.js +0 -1
  1251. package/dist/domain/system-components/camera-based-hidden-entity-object.js +0 -1
  1252. package/dist/domain/system-components/camera-based-hidden-entity.js +0 -1
  1253. package/dist/domain/system-components/canvas-config.js +0 -1
  1254. package/dist/domain/system-components/canvas-custom-environment.js +0 -1
  1255. package/dist/domain/system-components/canvas-padding.js +0 -1
  1256. package/dist/domain/system-components/canvas-preset-environment.js +0 -1
  1257. package/dist/domain/system-components/child-entity-recipe-hierarchy.js +0 -1
  1258. package/dist/domain/system-components/client-side-image.js +0 -1
  1259. package/dist/domain/system-components/color-value.js +0 -1
  1260. package/dist/domain/system-components/common/angle-indicator-schema.js +0 -1
  1261. package/dist/domain/system-components/custom-header.js +0 -1
  1262. package/dist/domain/system-components/custom-price-footer.js +0 -1
  1263. package/dist/domain/system-components/custom-sidebar-footer.js +0 -1
  1264. package/dist/domain/system-components/dimension-indicator.js +0 -1
  1265. package/dist/domain/system-components/editable-angle-indicator.js +0 -1
  1266. package/dist/domain/system-components/editable-distance-dimension-indicator.js +0 -1
  1267. package/dist/domain/system-components/editable-offset-indicator.js +0 -1
  1268. package/dist/domain/system-components/editable-size-indicator.js +0 -1
  1269. package/dist/domain/system-components/entity-header.js +0 -1
  1270. package/dist/domain/system-components/exit-tool-mode-fab.js +0 -1
  1271. package/dist/domain/system-components/finalize-action.js +0 -1
  1272. package/dist/domain/system-components/finalize-component.js +0 -1
  1273. package/dist/domain/system-components/fit-selection-orthographic-camera-component.js +0 -1
  1274. package/dist/domain/system-components/fit-selection-perspective-camera-component.js +0 -1
  1275. package/dist/domain/system-components/fixed-header.js +0 -1
  1276. package/dist/domain/system-components/floating-header.js +0 -1
  1277. package/dist/domain/system-components/hidden-header.js +0 -1
  1278. package/dist/domain/system-components/hidden-sidebar-footer.js +0 -1
  1279. package/dist/domain/system-components/horizontal-tabs.js +0 -1
  1280. package/dist/domain/system-components/list-selector-dimension-indicator.js +0 -1
  1281. package/dist/domain/system-components/multilingual-text-value.js +0 -1
  1282. package/dist/domain/system-components/navigation-steps.js +0 -1
  1283. package/dist/domain/system-components/offset-anchors.js +0 -1
  1284. package/dist/domain/system-components/offset-indicator.js +0 -1
  1285. package/dist/domain/system-components/offset.js +0 -1
  1286. package/dist/domain/system-components/other-action.js +0 -1
  1287. package/dist/domain/system-components/property-page.js +0 -1
  1288. package/dist/domain/system-components/read-sidebar-footer.js +0 -1
  1289. package/dist/domain/system-components/replace-entity-recipe-hierarchy.js +0 -1
  1290. package/dist/domain/system-components/rotatable.js +0 -1
  1291. package/dist/domain/system-components/rotation-handle.js +0 -1
  1292. package/dist/domain/system-components/save-template-thumbnail.js +0 -1
  1293. package/dist/domain/system-components/scene-entity-add-fab.js +0 -1
  1294. package/dist/domain/system-components/scene-entity-animation.js +0 -1
  1295. package/dist/domain/system-components/scene-entity-control.js +0 -1
  1296. package/dist/domain/system-components/scene-entity-delete-fab.js +0 -1
  1297. package/dist/domain/system-components/scene-entity-floor-object.js +0 -1
  1298. package/dist/domain/system-components/scene-entity-html-hotspot.js +0 -1
  1299. package/dist/domain/system-components/scene-entity-navigation-hotspot.js +0 -1
  1300. package/dist/domain/system-components/scene-entity-object-html-hotspot.js +0 -1
  1301. package/dist/domain/system-components/scene-entity-select-hotspot.js +0 -1
  1302. package/dist/domain/system-components/scene-entity-wall-object.js +0 -1
  1303. package/dist/domain/system-components/selectable-component.js +0 -1
  1304. package/dist/domain/system-components/sidebar-tabs.js +0 -1
  1305. package/dist/domain/system-components/simple-summary.js +0 -1
  1306. package/dist/domain/system-components/size.js +0 -1
  1307. package/dist/domain/system-components/sketching-draw.js +0 -1
  1308. package/dist/domain/system-components/sketching-edit.js +0 -1
  1309. package/dist/domain/system-components/summary-component.js +0 -1
  1310. package/dist/domain/system-components/text-value.js +0 -1
  1311. package/dist/domain/system-components/tool-controls.js +0 -1
  1312. package/dist/domain/system-components/tool-menu-fab.js +0 -1
  1313. package/dist/domain/system-components/toolbar.js +0 -1
  1314. package/dist/domain/system-components/universal-sidebar-footer.js +0 -1
  1315. package/dist/domain/system-components/view-controls.js +0 -1
  1316. package/dist/phoenix/commands/generate-project-files.d.ts +0 -6
  1317. package/dist/phoenix/commands/generate-project-files.js +0 -1
  1318. /package/dist/{domain/components/component-reader-types.js → application-spec/core/expressions/relation-expression-params.js} +0 -0
  1319. /package/dist/application-spec/{core → enhanced-json}/eval-code-uses-self.d.ts +0 -0
  1320. /package/dist/application-spec/{core → enhanced-json}/eval-code-uses-self.js +0 -0
  1321. /package/dist/application-spec/{core → enhanced-json}/eval-to-constant.js +0 -0
  1322. /package/dist/{domain/core/action.js → application-spec/generate-application/runtime/spec-code/spec-code-module.js} +0 -0
  1323. /package/dist/{domain/core/expression.js → application-spec/parse-application-files/spec/expressions/expression-read.js} +0 -0
  1324. /package/dist/{domain/relations/relation-implementation.js → configurator/ui/assistant/form/form-element-definition.js} +0 -0
  1325. /package/dist/{domain/relations/reference-field.js → configurator/ui/assistant/form-elements/form-element-props.js} +0 -0
  1326. /package/dist/domain/{actions → core/action}/action-factory.js +0 -0
  1327. /package/dist/domain/{components → core/component}/legacy-filter.js +0 -0
  1328. /package/dist/domain/{components → core/component}/system-component-filter.js +0 -0
  1329. /package/dist/domain/{components → core/component}/system-virtual-entity.d.ts +0 -0
  1330. /package/dist/domain/{components → core/component}/updates.js +0 -0
  1331. /package/dist/domain/{invariants → core/invariant}/builtin-invariant.js +0 -0
  1332. /package/dist/domain/{invariants → core/invariant}/violation-component.d.ts +0 -0
  1333. /package/dist/domain/{relations → core/relation}/direct-relation.js +0 -0
  1334. /package/dist/domain/core/{state.js → state/state.js} +0 -0
  1335. /package/dist/domain/{expressions → domain-runtime/spec}/memoize-expression.js +0 -0
  1336. /package/dist/domain/{expressions → domain-runtime/spec}/prepare-domain-expressions.js +0 -0
  1337. /package/dist/domain/{system-components → extensions}/angle-indicator.d.ts +0 -0
  1338. /package/dist/domain/{system-components → extensions}/basic-sidebar-footer.d.ts +0 -0
  1339. /package/dist/domain/{system-components → extensions}/camera-based-hidden-entity-object.d.ts +0 -0
  1340. /package/dist/domain/{system-components → extensions}/camera-based-hidden-entity.d.ts +0 -0
  1341. /package/dist/domain/{system-components → extensions}/canvas-custom-environment.d.ts +0 -0
  1342. /package/dist/domain/{system-components → extensions}/canvas-padding.d.ts +0 -0
  1343. /package/dist/domain/{system-components → extensions}/canvas-preset-environment.d.ts +0 -0
  1344. /package/dist/domain/{system-components → extensions}/color-value.d.ts +0 -0
  1345. /package/dist/domain/{system-components → extensions}/common/dimension-indicator-schema.js +0 -0
  1346. /package/dist/domain/{system-components → extensions}/common/dimension-indicators.d.ts +0 -0
  1347. /package/dist/domain/{system-components → extensions}/common/dimension-indicators.js +0 -0
  1348. /package/dist/domain/{system-components → extensions}/common/editable-indicator-button-variant.d.ts +0 -0
  1349. /package/dist/domain/{system-components → extensions}/common/editable-indicator-button-variant.js +0 -0
  1350. /package/dist/domain/{system-components → extensions}/custom-price-footer.d.ts +0 -0
  1351. /package/dist/domain/{system-components → extensions}/dimension-indicator.d.ts +0 -0
  1352. /package/dist/domain/{system-components → extensions}/exit-tool-mode-fab.d.ts +0 -0
  1353. /package/dist/domain/{system-components → extensions}/finalize-action.d.ts +0 -0
  1354. /package/dist/domain/{system-components → extensions}/finalize-component.d.ts +0 -0
  1355. /package/dist/domain/{system-components → extensions}/fit-selection-orthographic-camera-component.d.ts +0 -0
  1356. /package/dist/domain/{system-components → extensions}/fit-selection-perspective-camera-component.d.ts +0 -0
  1357. /package/dist/domain/{system-components → extensions}/fixed-header.d.ts +0 -0
  1358. /package/dist/domain/{system-components → extensions}/floating-header.d.ts +0 -0
  1359. /package/dist/domain/{system-components → extensions}/hidden-header.d.ts +0 -0
  1360. /package/dist/domain/{system-components → extensions}/hidden-sidebar-footer.d.ts +0 -0
  1361. /package/dist/domain/{system-components → extensions}/multilingual-text-value.d.ts +0 -0
  1362. /package/dist/domain/{system-components → extensions}/offset-anchors.d.ts +0 -0
  1363. /package/dist/domain/{system-components → extensions}/offset-indicator.d.ts +0 -0
  1364. /package/dist/domain/{system-components → extensions}/offset.d.ts +0 -0
  1365. /package/dist/domain/{system-components → extensions}/other-action.d.ts +0 -0
  1366. /package/dist/domain/{system-components → extensions}/read-sidebar-footer.d.ts +0 -0
  1367. /package/dist/domain/{system-components → extensions}/rotatable.d.ts +0 -0
  1368. /package/dist/domain/{system-components → extensions}/scene-entity-animation.d.ts +0 -0
  1369. /package/dist/domain/{system-components → extensions}/scene-entity-control.d.ts +0 -0
  1370. /package/dist/domain/{system-components → extensions}/scene-entity-floor-object.d.ts +0 -0
  1371. /package/dist/domain/{system-components → extensions}/scene-entity-wall-object.d.ts +0 -0
  1372. /package/dist/domain/{system-components → extensions}/selectable-component.d.ts +0 -0
  1373. /package/dist/domain/{system-components → extensions}/sidebar-tabs.d.ts +0 -0
  1374. /package/dist/domain/{system-components → extensions}/simple-summary.d.ts +0 -0
  1375. /package/dist/domain/{system-components → extensions}/size.d.ts +0 -0
  1376. /package/dist/domain/{system-components → extensions}/sketching-draw.d.ts +0 -0
  1377. /package/dist/domain/{system-components → extensions}/summary-component.d.ts +0 -0
  1378. /package/dist/domain/{system-components → extensions}/text-value.d.ts +0 -0
  1379. /package/dist/domain/{system-components → extensions}/tool-controls.d.ts +0 -0
  1380. /package/dist/domain/{system-components → extensions}/universal-sidebar-footer.d.ts +0 -0
  1381. /package/dist/domain/{system-components → extensions}/view-controls.d.ts +0 -0
@@ -0,0 +1,25 @@
1
+ import type { $DomainEntity, DomainEntity, DomainEntityId, TypeOrAlias } from '../model/index.js';
2
+ import type { DomainState } from '../state/index.js';
3
+ import type { AliasedExpressions } from './aliased-expressions.js';
4
+ import type { ExpressionMeta, OpenExpressionContext } from './expression.js';
5
+ export type CustomExpression<ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, SELF extends $DomainEntity<ENTITIES>, T, CONTEXT_EXTENSION = unknown> = (self: SELF, state: DomainState<ENTITIES>, ctx: OpenExpressionContext<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, CONTEXT_EXTENSION>) => T;
6
+ export type PotentialCustomExpressions<ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, $MAP extends Record<ENTITIES['type'], $DomainEntity<ENTITIES>>, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, CONTEXT_EXTENSION = unknown> = {
7
+ [TYPE_OR_ALIAS in keyof $MAP]?: {
8
+ [NAME in Extract<keyof $MAP[TYPE_OR_ALIAS], `$${string}`>]?: CustomExpression<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, $MAP[TYPE_OR_ALIAS], $MAP[TYPE_OR_ALIAS][NAME], CONTEXT_EXTENSION>;
9
+ };
10
+ };
11
+ export declare const createCustomExpressionFactory: <ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, $MAP extends Record<TypeOrAlias<ENTITIES, ALIASES>, $DomainEntity<ENTITIES>>, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, ALIASES extends Record<string, ENTITIES>, CONTEXT_EXTENSION = unknown>() => (implementations: PotentialCustomExpressions<ENTITIES, ALLOWED_ROOT_ENTITIES, $MAP, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, CONTEXT_EXTENSION>) => AliasedExpressions<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ALIASES, CONTEXT_EXTENSION>;
12
+ /**
13
+ * Wraps the function a project writes for an expression or for a filter criterion into an
14
+ * expression: the function receives the entity view of `selfId` instead of the id. It takes the
15
+ * types of the function as they are, so the expression it returns has the state and the context of
16
+ * the function, and it asks of the context only the entity view it reads itself.
17
+ */
18
+ export declare const createCustomExpression: <SELF, STATE, CONTEXT extends {
19
+ readonly domain: {
20
+ get$Entity(id: DomainEntityId<string>, state: STATE): unknown;
21
+ };
22
+ }, T>(evaluate: (self: SELF, state: STATE, ctx: CONTEXT) => T, meta: ExpressionMeta) => {
23
+ evaluate(selfId: DomainEntityId<string>, state: STATE, ctx: CONTEXT): T;
24
+ readonly meta: ExpressionMeta;
25
+ };
@@ -0,0 +1 @@
1
+ import{mapNestedObject as e}from"../../utils/map-nested-object.js";export const createCustomExpressionFactory=()=>t=>e()(t,([e,t,o])=>{if(!o)throw Error(`Custom expression for ${e}.${t} is of type undefined`);return[[e,t,createCustomExpression(o,{})]]});export const createCustomExpression=(e,t)=>({evaluate:(t,o,r)=>e(r.domain.get$Entity(t,o),o,r),meta:t});
@@ -0,0 +1,46 @@
1
+ import type { SessionRole } from '@salsita-ai/contracts/api';
2
+ import type { Domain } from '../domain.js';
3
+ import type { $DomainEntity, DomainEntity } from '../model/index.js';
4
+ import type { DomainState, MigrateFunction } from '../state/index.js';
5
+ /**
6
+ * The part of the expression context that core declares: the mode and role of the session, the data
7
+ * of the application, the entity view and the migration of the model.
8
+ */
9
+ export interface CoreExpressionContext<ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>> {
10
+ readonly mode: 'owner' | 'read' | 'finalize';
11
+ readonly role: SessionRole;
12
+ readonly publishedData: PUBLISHED_DATA;
13
+ readonly frontendData: FRONTEND_DATA;
14
+ readonly backendData: Record<string, unknown> | undefined;
15
+ readonly sessionData: SESSION_DATA;
16
+ readonly domain: Domain<ENTITIES, ALLOWED_ROOT_ENTITIES, Record<ENTITIES['type'], $DomainEntity<ENTITIES>>>;
17
+ readonly migrate: MigrateFunction<ENTITIES>;
18
+ }
19
+ /**
20
+ * The context an expression is evaluated in. Core declares its own part; `CONTEXT_EXTENSION` is
21
+ * what whoever evaluates the expression adds to it, such as the component reader and the
22
+ * projections of the domain runtime. An expression that reads only core's part leaves it out.
23
+ */
24
+ export type OpenExpressionContext<ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, CONTEXT_EXTENSION = unknown> = CoreExpressionContext<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA> & CONTEXT_EXTENSION;
25
+ export interface ExpressionMeta {
26
+ /**
27
+ * By enabling this flag, expression will be run during validation. It is primarily used to check validity of relations.
28
+ */
29
+ readonly alwaysEvaluate?: boolean;
30
+ }
31
+ /**
32
+ * Metadata used for debugging of expression exceptions.
33
+ */
34
+ export interface ExpressionOrigin {
35
+ readonly typeOrAlias: string;
36
+ readonly name: string;
37
+ }
38
+ export interface AnonymousExpression<ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, SELF extends ENTITIES, T, CONTEXT_EXTENSION = unknown> {
39
+ evaluate(selfId: SELF['id'], state: DomainState<ENTITIES>, ctx: OpenExpressionContext<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, CONTEXT_EXTENSION>): T;
40
+ readonly meta: ExpressionMeta;
41
+ }
42
+ export interface Expression<ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, SELF extends ENTITIES, T, CONTEXT_EXTENSION = unknown> extends AnonymousExpression<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, SELF, T, CONTEXT_EXTENSION> {
43
+ readonly origin: ExpressionOrigin;
44
+ }
45
+ export type AnyExpression = Expression<any, any, any, any, any, any, any>;
46
+ export type AnyExpressions = Record<string, Record<string, AnyExpression>>;
@@ -0,0 +1 @@
1
+ export{};
@@ -0,0 +1,4 @@
1
+ export type * from './aliased-expressions.js';
2
+ export * from './constant-expressions.js';
3
+ export * from './custom-expression.js';
4
+ export type * from './expression.js';
@@ -0,0 +1 @@
1
+ export*from"./constant-expressions.js";export*from"./custom-expression.js";
@@ -1,9 +1,14 @@
1
- export type * from './action.js';
1
+ export * from './action/index.js';
2
+ export * from './component/index.js';
3
+ export type * from './data-schema/index.js';
2
4
  export * from './decoder/index.js';
3
5
  export * from './domain-factory.js';
4
6
  export * from './domain.js';
5
- export type * from './expression.js';
6
- export * from './migrations.js';
7
+ export type * from './emission/index.js';
8
+ export * from './expression/index.js';
9
+ export * from './invariant/index.js';
7
10
  export * from './model/index.js';
11
+ export * from './recipe/index.js';
12
+ export * from './relation/index.js';
8
13
  export * from './schema/index.js';
9
- export * from './state.js';
14
+ export * from './state/index.js';
@@ -1 +1 @@
1
- export*from"./decoder/index.js";export*from"./domain-factory.js";export*from"./domain.js";export*from"./migrations.js";export*from"./model/index.js";export*from"./schema/index.js";export*from"./state.js";
1
+ export*from"./action/index.js";export*from"./component/index.js";export*from"./decoder/index.js";export*from"./domain-factory.js";export*from"./domain.js";export*from"./expression/index.js";export*from"./invariant/index.js";export*from"./model/index.js";export*from"./recipe/index.js";export*from"./relation/index.js";export*from"./schema/index.js";export*from"./state/index.js";
@@ -1,4 +1,5 @@
1
- import type { DomainEntity, DomainEntityId, DomainState } from '../core/index.js';
1
+ import type { DomainEntity, DomainEntityId } from '../model/index.js';
2
+ import type { DomainState } from '../state/index.js';
2
3
  import type { Invariant } from './invariants.js';
3
4
  import type { Violation } from './violation.js';
4
5
  export declare const createInvariant: <VIOLATION_TYPE extends string>(evaluate: (selfId: DomainEntityId<string>, state: DomainState<DomainEntity<string>>) => ReadonlyArray<Violation<VIOLATION_TYPE>>) => Invariant<DomainEntity<string>, DomainEntity<string>, Record<string, unknown>, Record<string, unknown>, Record<string, unknown>, DomainEntity<string>, VIOLATION_TYPE>;
@@ -0,0 +1,13 @@
1
+ import type { CustomExpression } from '../expression/index.js';
2
+ import type { $DomainEntity, DomainEntity, TypeOrAlias } from '../model/index.js';
3
+ import type { AliasedInvariants } from './invariants.js';
4
+ import type { Violation } from './violation.js';
5
+ export type CustomInvariantsFromBlueprints<ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, $MAP extends Record<ENTITIES['type'], $DomainEntity<ENTITIES>>, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, BLUEPRINTS extends Partial<Record<keyof $MAP & string, Record<string, boolean | string>>>, CONTEXT_EXTENSION = unknown> = {
6
+ [TYPE_OR_ALIAS in keyof BLUEPRINTS]: {
7
+ [NAME in keyof BLUEPRINTS[TYPE_OR_ALIAS]]: TYPE_OR_ALIAS extends keyof $MAP ? CustomExpression<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, $MAP[TYPE_OR_ALIAS], BLUEPRINTS[TYPE_OR_ALIAS][NAME] extends string ? ReadonlyArray<Violation<BLUEPRINTS[TYPE_OR_ALIAS][NAME]>> : BLUEPRINTS[TYPE_OR_ALIAS][NAME], CONTEXT_EXTENSION> : never;
8
+ };
9
+ };
10
+ /** The violation a static invariant reports when it does not hold, by entity type or alias and by invariant name. */
11
+ type StaticViolations = Readonly<Record<string, Readonly<Record<string, Violation<string>>>>>;
12
+ export declare const createCustomInvariantFactory: <ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, $MAP extends Record<TypeOrAlias<ENTITIES, ALIASES>, $DomainEntity<ENTITIES>>, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, ALIASES extends Record<string, ENTITIES>, BLUEPRINTS extends Partial<Record<TypeOrAlias<ENTITIES, ALIASES>, Record<string, boolean | string>>>, CONTEXT_EXTENSION = unknown>() => (staticViolations: StaticViolations) => <TYPES_OR_ALIASES extends keyof BLUEPRINTS & string>(implementations: Pick<CustomInvariantsFromBlueprints<ENTITIES, ALLOWED_ROOT_ENTITIES, $MAP, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, BLUEPRINTS, CONTEXT_EXTENSION>, TYPES_OR_ALIASES>) => AliasedInvariants<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ALIASES, string>;
13
+ export {};
@@ -0,0 +1 @@
1
+ import{withProfilerLabel as t}from"../../utils/profiler-label.js";export const createCustomInvariantFactory=()=>e=>r=>{let n={};return Object.entries(r).forEach(([r,o])=>{let a=Object.entries(o).map(([n,o])=>({evaluate:t(`${r}_invariant_${n}`,(t,a,i)=>{let l=o(i.domain.get$Entity(t,a),a,i);if("boolean"==typeof l){let t=e[r]?.[n];if(!t)throw Error(`Cannot find statically defined violation for ${r}.${n}`);return l?[]:[t]}return l})}));n[r]=a}),n};
@@ -0,0 +1,5 @@
1
+ export * from './builtin-invariant.js';
2
+ export * from './custom-invariants.js';
3
+ export type * from './invariants.js';
4
+ export * from './violation-component.js';
5
+ export * from './violation.js';
@@ -0,0 +1 @@
1
+ export*from"./builtin-invariant.js";export*from"./custom-invariants.js";export*from"./violation-component.js";export*from"./violation.js";
@@ -0,0 +1,10 @@
1
+ import type { OpenExpressionContext } from '../expression/index.js';
2
+ import type { DomainEntity, ExpandAlias, TypeOrAlias } from '../model/index.js';
3
+ import type { DomainState } from '../state/index.js';
4
+ import { type Violation } from './violation.js';
5
+ export interface Invariant<ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, ENTITY extends ENTITIES, VIOLATION_TYPE extends string, CONTEXT_EXTENSION = unknown> {
6
+ evaluate(selfId: ENTITY['id'], state: DomainState<ENTITIES>, ctx: OpenExpressionContext<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, CONTEXT_EXTENSION>): ReadonlyArray<Violation<VIOLATION_TYPE>>;
7
+ }
8
+ export type AliasedInvariants<ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, ALIASES extends Record<string, ENTITIES>, VIOLATION_TYPES extends string> = {
9
+ [K in TypeOrAlias<ENTITIES, ALIASES>]?: ReadonlyArray<Invariant<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ExpandAlias<ENTITIES, ALIASES, K>, VIOLATION_TYPES>>;
10
+ };
@@ -0,0 +1 @@
1
+ export{};
@@ -0,0 +1 @@
1
+ import{SystemComponentBuilder as o}from"../component/index.js";import{ViolationSchema as t}from"./violation.js";export const violationsComponent=o.component("violations").withState({tsType:"ViolationComponentState",type:"object",properties:{violations:{type:"array",items:t}},required:["violations"],additionalProperties:!1}).build();
@@ -1,7 +1,7 @@
1
1
  import type { I18n } from '@lingui/core';
2
- import type { Localizable } from '@salsita-ai/common/utils';
3
- import type { $DomainEntity, DomainEntity, EntityId } from '../core/index.js';
4
- import type { StateEmission } from '../domain-context/store-system/store-system.js';
2
+ import { type Localizable } from '@salsita-ai/common/utils';
3
+ import type { StateEmission } from '../emission/index.js';
4
+ import type { $DomainEntity, DomainEntity, EntityId } from '../model/index.js';
5
5
  /**
6
6
  * An **ORDERED** list of violation severities.
7
7
  * Do not change the order of the items in this list.
@@ -66,7 +66,55 @@ export declare const ViolationSchema: {
66
66
  readonly enum: ("fatal" | "fixable" | "notice" | "warning")[];
67
67
  };
68
68
  readonly message: {
69
- readonly type: 'string';
69
+ readonly anyOf: [{
70
+ readonly type: 'string';
71
+ }, {
72
+ readonly type: 'object';
73
+ readonly properties: {
74
+ readonly id: {
75
+ readonly type: 'string';
76
+ };
77
+ readonly comment: {
78
+ readonly type: 'string';
79
+ };
80
+ readonly message: {
81
+ readonly type: 'string';
82
+ };
83
+ readonly values: {
84
+ readonly type: 'object';
85
+ readonly additionalProperties: true;
86
+ };
87
+ };
88
+ readonly required: ["id"];
89
+ readonly additionalProperties: false;
90
+ readonly import: [{
91
+ readonly module: '@lingui/core';
92
+ readonly member: 'MessageDescriptor';
93
+ }];
94
+ readonly tsType: 'MessageDescriptor';
95
+ }, {
96
+ readonly import: [{
97
+ readonly module: '@salsita-ai/sdk/common/utils';
98
+ readonly member: 'MultilingualString';
99
+ }];
100
+ readonly tsType: 'MultilingualString';
101
+ readonly type: 'object';
102
+ readonly properties: {
103
+ readonly $lang: {
104
+ readonly type: 'object';
105
+ readonly additionalProperties: {
106
+ readonly type: 'string';
107
+ };
108
+ };
109
+ };
110
+ readonly required: ["$lang"];
111
+ readonly additionalProperties: false;
112
+ }];
113
+ readonly tsType: 'Localizable';
114
+ readonly import: [{
115
+ readonly module: '@salsita-ai/sdk/common/utils';
116
+ readonly member: 'Localizable';
117
+ }];
70
118
  };
71
119
  readonly controlViolationPriority: {
72
120
  readonly type: 'number';
@@ -0,0 +1 @@
1
+ import{MessageDescriptorSchema as e,MultilingualStringSchema as t}from"@salsita-ai/common/utils";let i=["fatal","fixable","warning","notice"];export const compareSeverity=(e,t)=>i.indexOf(e)-i.indexOf(t);export const ViolationSchema={type:"object",properties:{type:{type:"string"},severity:{enum:i.slice()},message:{anyOf:[{type:"string"},e,t],tsType:"Localizable",import:[{module:"@salsita-ai/sdk/common/utils",member:"Localizable"}]},controlViolationPriority:{type:"number"}},required:["type","severity"],additionalProperties:!1};
@@ -25,7 +25,7 @@ export declare const VirtualEntityIdSchema: {
25
25
  };
26
26
  export declare const createVirtualEntityId: (name: string) => VirtualEntityId;
27
27
  export declare const isVirtualEntityId: (value: EntityId<any>) => value is VirtualEntityId;
28
- export type DomainEntityId<TYPE extends string> = `${TYPE}-${number}` & {
28
+ export type DomainEntityId<TYPE extends string = string> = `${TYPE}-${number}` & {
29
29
  __brand: TYPE;
30
30
  };
31
31
  /**
@@ -0,0 +1 @@
1
+ export * from './recipes.js';
@@ -0,0 +1 @@
1
+ export*from"./recipes.js";
@@ -0,0 +1,23 @@
1
+ import { type AnyAliasMap, type DomainEntity, type DomainEntityReflection, type EntityByType } from '../model/index.js';
2
+ /** The entity a recipe yields: a whole entity, which the recipe system gives a new id when it cooks the recipe. */
3
+ export type EntityRecipe<ENTITY extends DomainEntity<string>> = ENTITY;
4
+ /** What a project passes to its recipe factory: the entity type, and the properties that differ from the defaults. */
5
+ export type EntityOverrides<ENTITIES extends DomainEntity<string>, TYPE extends ENTITIES['type']> = Partial<Omit<EntityByType<ENTITIES, TYPE>, 'type'>> & {
6
+ type: TYPE;
7
+ };
8
+ /** The function a project creates recipes with, `phx.domain.createRecipe`. */
9
+ export type RecipeFactory<ENTITIES extends DomainEntity<string>> = <TYPE extends ENTITIES['type']>(overrides: EntityOverrides<ENTITIES, TYPE>) => EntityRecipe<EntityByType<ENTITIES, TYPE>>;
10
+ /**
11
+ * Creates the recipe factory of a domain from the `defaults` of its spec.
12
+ *
13
+ * Defaults declared for an alias apply to every entity type of the alias, and a later key overrides
14
+ * an earlier one. The defaults of an entity type must be a whole entity of that type: they are
15
+ * validated here against the entity's schema, so a domain with invalid defaults fails when its
16
+ * module loads. An entity type without defaults is not checked.
17
+ *
18
+ * `ENTITIES` is the only type the result depends on, and no argument determines it, so the caller
19
+ * states it.
20
+ *
21
+ * @param defaults Property values by entity type or alias.
22
+ */
23
+ export declare const createRecipeFactory: <ENTITIES extends DomainEntity<string>>(aliasMap: AnyAliasMap, entityReflections: ReadonlyArray<ENTITIES extends unknown ? DomainEntityReflection<ENTITIES> : never>, defaults: Readonly<Record<string, Readonly<Record<string, unknown>>>>) => RecipeFactory<ENTITIES>;
@@ -0,0 +1 @@
1
+ import{_unsafeBuildDomainEntityId as e,expandAlias as r}from"../model/index.js";export const createRecipeFactory=(t,o,i)=>{let a={};Object.entries(i).forEach(([e,o])=>{r(t,e).forEach(e=>{a[e]={...a[e],...o}})});let n=new Map(o.map(e=>[e.type,e._meta.validator]));return Object.entries(a).forEach(([r,t])=>{let o=n.get(r);if(!o)throw Error(`Defaults provided for unknown entity ${r}`);if(!o({id:e(r,1),type:r,...t}))throw console.error(o.errors,t),Error(`Invalid defaults for ${r} entity.`)}),r=>({id:e(r.type,1),...a[r.type],...r})};
@@ -0,0 +1,19 @@
1
+ import type { ExpressionMeta } from '../expression/index.js';
2
+ import { type AnyAliasMap, type DomainEntity, type DomainEntityId } from '../model/index.js';
3
+ import type { DomainState } from '../state/index.js';
4
+ /** A relation whose related entities are all entities of the target type or alias. */
5
+ export interface AllOfTypeRelation {
6
+ kind: 'allOfType';
7
+ target: string;
8
+ cardinality: '0-1' | '1-1' | '0-N' | '1-N';
9
+ meta?: ExpressionMeta;
10
+ }
11
+ /**
12
+ * Resolves `allOfType` relations from a per-state index. Relations targeting the same set of types
13
+ * share one bucket; the first resolution on a state walks the entities once to fill every bucket,
14
+ * and every later resolution on that state is a lookup. Registration closes once the first state
15
+ * has been indexed, so a bucket can never be missing from an index that was already built.
16
+ */
17
+ export declare const createAllOfTypeRelation: (aliasMap: AnyAliasMap) => (relation: {
18
+ readonly target: string;
19
+ }) => (_selfId: DomainEntityId<string>, state: DomainState<DomainEntity<string>>) => DomainEntityId<string>[];
@@ -0,0 +1 @@
1
+ import{expandAlias as e}from"../model/index.js";export const createAllOfTypeRelation=t=>{let r=new Map,a=new WeakMap,n=!1;return o=>{if(n)throw Error(`Cannot register all-of-type relation targeting ${o.target} after evaluation started. Create all relation expressions before evaluating the domain state.`);let l=new Set(e(t,o.target)),i=[...l].sort().join("|");return r.set(i,l),(e,t)=>(e=>{let t=a.get(e);if(t)return t;n=!0;let o=new Map([...r.keys()].map(e=>[e,[]]));for(let t of e.entities)for(let[e,a]of r)a.has(t.type)&&o.get(e).push(t.id);return a.set(e,o),o})(t).get(i)}};
@@ -1,4 +1,4 @@
1
- import type { DomainEntity, DomainEntityId, DomainEntityReflection, RawAliasReflection } from '../core/index.js';
1
+ import type { DomainEntity, DomainEntityId, DomainEntityReflection, RawAliasReflection } from '../model/index.js';
2
2
  import type { ComposedOfComponentState } from './composed-of.js';
3
3
  import type { ReferenceComponentState } from './reference-component.js';
4
4
  export declare const createSingleReferenceRead: <TARGET extends DomainEntity<string>>(_targetReflection: DomainEntityReflection<TARGET> | RawAliasReflection<TARGET>, field: string) => (self: object, state: unknown, ctx: unknown) => ReferenceComponentState;
@@ -0,0 +1 @@
1
+ import{memoEval as e}from"../../utils/memo-eval.js";export const createSingleReferenceRead=(t,r)=>e(e=>[e[r]],e=>({referencedEntityIds:null===e?[]:[e]}));export const createSingleReferenceWrite=(e,t)=>r=>{let n=r.referencedEntityIds[0];return n&&e.assertId(n),{[t]:n??null}};export const createMultipleReferenceRead=(t,r)=>e(e=>[e[r]],e=>({referencedEntityIds:e}));export const createMultipleReferenceWrite=(e,t)=>r=>(e.assertIds(r.referencedEntityIds),{[t]:r.referencedEntityIds});export const createSingleCompositionRead=t=>e(e=>[e[t]?.id??null],e=>({childEntityIds:null===e?[]:[e]}));export const createMultipleCompositionRead=t=>e(e=>e[t].map(e=>e.id),(...e)=>({childEntityIds:e}));export const createEmptyWrite=()=>()=>({});
@@ -1,4 +1,4 @@
1
- import { type DomainEntityId } from '../core/index.js';
1
+ import { type DomainEntityId } from '../model/index.js';
2
2
  export type ComposedOfComponentState = {
3
3
  /**
4
4
  * List of entity IDs that the parent entity is composed of
@@ -0,0 +1 @@
1
+ import{SystemComponentBuilder as o}from"../component/index.js";import{EntityIdSchema as t}from"../model/index.js";export const composedOfComponent=o.component("composedOf").withState({type:"object",properties:{childEntityIds:{type:"array",items:t}},required:["childEntityIds"],additionalProperties:!1}).build();
@@ -0,0 +1,17 @@
1
+ import type { AnyDomain } from '../domain.js';
2
+ import type { ExpressionMeta } from '../expression/index.js';
3
+ import type { DomainEntity, DomainEntityId } from '../model/index.js';
4
+ import type { DomainState } from '../state/index.js';
5
+ /**
6
+ * A relation whose related entities are the ones a field of the entity itself references. The
7
+ * application-spec parser checks that `field` is a reference field of the entity that fits the
8
+ * target and the cardinality.
9
+ */
10
+ export interface DirectRelation {
11
+ kind: 'direct';
12
+ target: string;
13
+ field: string;
14
+ cardinality: '0-1' | '1-1' | '0-N' | '1-N';
15
+ meta?: ExpressionMeta;
16
+ }
17
+ export declare const directRelation: (relation: DirectRelation) => (selfId: DomainEntityId<string>, state: DomainState<DomainEntity<string>>, domain: AnyDomain) => Array<DomainEntityId<string>>;
@@ -0,0 +1,8 @@
1
+ export * from './all-of-type-relation.js';
2
+ export * from './component-factories.js';
3
+ export * from './composed-of.js';
4
+ export * from './direct-relation.js';
5
+ export * from './indirect-relation.js';
6
+ export * from './reference-component.js';
7
+ export type * from './reference-field.js';
8
+ export * from './relation-factory.js';
@@ -0,0 +1 @@
1
+ export*from"./all-of-type-relation.js";export*from"./component-factories.js";export*from"./composed-of.js";export*from"./direct-relation.js";export*from"./indirect-relation.js";export*from"./reference-component.js";export*from"./relation-factory.js";
@@ -0,0 +1,25 @@
1
+ import type { ExpressionMeta } from '../expression/index.js';
2
+ import { type AnyAliasMap, type DomainEntity, type DomainEntityId } from '../model/index.js';
3
+ import type { DomainState } from '../state/index.js';
4
+ /**
5
+ * A relation whose related entities are the ones that reference the entity in their `field`. The
6
+ * application-spec parser checks that `field` is a reference field of the target that points back.
7
+ */
8
+ export interface IndirectRelation {
9
+ kind: 'indirect';
10
+ target: string;
11
+ field: string;
12
+ cardinality: '0-1' | '1-1' | '0-N' | '1-N';
13
+ meta?: ExpressionMeta;
14
+ }
15
+ /**
16
+ * Resolves `indirect` relations from a per-state reverse-reference index. Relations reading the
17
+ * same field on the same set of target types share one index mapping each referenced id to the
18
+ * entities that reference it; the first resolution on a state walks the entities once to fill
19
+ * every index, and every later resolution on that state is a lookup. Registration closes once the
20
+ * first state has been indexed, so an index can never be missing from a state already walked.
21
+ */
22
+ export declare const createIndirectRelation: (aliasMap: AnyAliasMap) => (relation: {
23
+ readonly target: string;
24
+ readonly field: string;
25
+ }) => (sourceId: DomainEntityId<string>, state: DomainState<DomainEntity<string>>) => DomainEntityId<string>[];
@@ -0,0 +1 @@
1
+ import{isArray as e}from"@salsita-ai/common/utils";import{expandAlias as t}from"../model/index.js";let r=e=>"string"==typeof e;export const createIndirectRelation=i=>{let n=new Map,o=new WeakMap,a=!1;return l=>{if(a)throw Error(`Cannot register indirect relation ${l.target}#${l.field} after evaluation started. Create all relation expressions before evaluating the domain state.`);let s=new Set(t(i,l.target)),f=`${l.field}|${[...s].sort().join("|")}`;return n.set(f,{field:l.field,targetTypes:s}),(t,i)=>(t=>{let i=o.get(t);if(i)return i;a=!0;let l=new Map([...n.keys()].map(e=>[e,new Map]));for(let i of t.entities)for(let[t,{field:o,targetTypes:a}]of n){if(!a.has(i.type))continue;let n=i[o],s=e(n)?new Set(n.filter(r)):r(n)?[n]:[],f=l.get(t);for(let e of s){let t=f.get(e);t||(t=[],f.set(e,t)),t.push(i.id)}}return o.set(t,l),l})(i).get(f).get(t)??[]}};
@@ -1,5 +1,5 @@
1
- import type { DomainComponentOpticBuilder } from '../components/domain-component-optic.js';
2
- import { type $DomainEntity, type DomainEntity, type DomainEntityId, type DomainEntityReflection, type RawAliasReflection } from '../core/index.js';
1
+ import { type DomainComponentOpticBuilder } from '../component/index.js';
2
+ import { type $DomainEntity, type DomainEntity, type DomainEntityId, type DomainEntityReflection, type RawAliasReflection } from '../model/index.js';
3
3
  import type { ArrayReferenceField, SingleReferenceField } from './reference-field.js';
4
4
  export type ReferenceComponentState = {
5
5
  /**
@@ -13,5 +13,5 @@ export type ReferenceComponentState = {
13
13
  */
14
14
  export declare const referenceComponent: import("../index.js").SystemComponentType<"reference", ReferenceComponentState, "referencedEntityIds">;
15
15
  export type ReferenceComponent = typeof referenceComponent;
16
- export declare const attachSingleReferenceComponent: <ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, $MAP extends Record<ENTITIES['type'], $DomainEntity<ENTITIES>>, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, ALIASES extends Record<string, ENTITIES>, ENTITY extends ENTITIES, $ENTITY extends $DomainEntity<ENTITY>, TARGET_ENTITY extends ENTITIES>(attachComponent: DomainComponentOpticBuilder<ENTITIES, ALLOWED_ROOT_ENTITIES, $MAP, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ALIASES, ENTITY, $ENTITY, typeof referenceComponent>, targetReflection: DomainEntityReflection<TARGET_ENTITY> | RawAliasReflection<TARGET_ENTITY>, field: SingleReferenceField<ENTITY, TARGET_ENTITY, any>) => import("../components/domain-component-optic.js").DomainComponentSimpleOptic<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ENTITY, import("../index.js").SystemComponentType<"reference", ReferenceComponentState, "referencedEntityIds">>;
17
- export declare const attachMultipleReferenceComponent: <ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, $MAP extends Record<ENTITIES['type'], $DomainEntity<ENTITIES>>, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, ALIASES extends Record<string, ENTITIES>, ENTITY extends ENTITIES, $ENTITY extends $DomainEntity<ENTITY>, TARGET_ENTITY extends ENTITIES>(attachComponent: DomainComponentOpticBuilder<ENTITIES, ALLOWED_ROOT_ENTITIES, $MAP, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ALIASES, ENTITY, $ENTITY, typeof referenceComponent>, targetReflection: DomainEntityReflection<TARGET_ENTITY> | RawAliasReflection<TARGET_ENTITY>, field: ArrayReferenceField<ENTITY, TARGET_ENTITY>) => import("../components/domain-component-optic.js").DomainComponentSimpleOptic<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ENTITY, import("../index.js").SystemComponentType<"reference", ReferenceComponentState, "referencedEntityIds">>;
16
+ export declare const attachSingleReferenceComponent: <ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, $MAP extends Record<ENTITIES['type'], $DomainEntity<ENTITIES>>, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, ALIASES extends Record<string, ENTITIES>, ENTITY extends ENTITIES, $ENTITY extends $DomainEntity<ENTITY>, TARGET_ENTITY extends ENTITIES, CONTEXT_EXTENSION = unknown>(attachComponent: DomainComponentOpticBuilder<ENTITIES, ALLOWED_ROOT_ENTITIES, $MAP, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ALIASES, ENTITY, $ENTITY, typeof referenceComponent, CONTEXT_EXTENSION>, targetReflection: DomainEntityReflection<TARGET_ENTITY> | RawAliasReflection<TARGET_ENTITY>, field: SingleReferenceField<ENTITY, TARGET_ENTITY, any>) => import("../index.js").DomainComponentSimpleOptic<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ENTITY, import("../index.js").SystemComponentType<"reference", ReferenceComponentState, "referencedEntityIds">, CONTEXT_EXTENSION>;
17
+ export declare const attachMultipleReferenceComponent: <ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, $MAP extends Record<ENTITIES['type'], $DomainEntity<ENTITIES>>, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, ALIASES extends Record<string, ENTITIES>, ENTITY extends ENTITIES, $ENTITY extends $DomainEntity<ENTITY>, TARGET_ENTITY extends ENTITIES, CONTEXT_EXTENSION = unknown>(attachComponent: DomainComponentOpticBuilder<ENTITIES, ALLOWED_ROOT_ENTITIES, $MAP, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ALIASES, ENTITY, $ENTITY, typeof referenceComponent, CONTEXT_EXTENSION>, targetReflection: DomainEntityReflection<TARGET_ENTITY> | RawAliasReflection<TARGET_ENTITY>, field: ArrayReferenceField<ENTITY, TARGET_ENTITY>) => import("../index.js").DomainComponentSimpleOptic<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ENTITY, import("../index.js").SystemComponentType<"reference", ReferenceComponentState, "referencedEntityIds">, CONTEXT_EXTENSION>;
@@ -0,0 +1 @@
1
+ import{memoEval as e}from"../../utils/memo-eval.js";import{SystemComponentBuilder as t}from"../component/index.js";import{EntityIdSchema as r}from"../model/index.js";export const referenceComponent=t.component("reference").withState({type:"object",properties:{referencedEntityIds:{type:"array",items:r}},required:["referencedEntityIds"],additionalProperties:!1}).withWritableKeys(["referencedEntityIds"]).build();export const attachSingleReferenceComponent=(t,r,n)=>t.attach(e(e=>[e[n]],e=>({referencedEntityIds:null===e?[]:[e]})),e=>{let t=e.referencedEntityIds[0];return t&&r.assertId(t),{[n]:t??null}});export const attachMultipleReferenceComponent=(t,r,n)=>t.attach(e(e=>[e[n]],e=>({referencedEntityIds:e})),e=>(r.assertIds(e.referencedEntityIds),{[n]:e.referencedEntityIds}));
@@ -1,4 +1,4 @@
1
- import type { DomainEntity } from '../core/index.js';
1
+ import type { DomainEntity } from '../model/index.js';
2
2
  export type SingleReferenceField<FROM extends DomainEntity<string>, TO extends DomainEntity<string>, OPTIONALITY extends null | never> = {
3
3
  [K in keyof FROM]: TO['id'] | OPTIONALITY extends FROM[K] ? FROM[K] extends TO['id'] | OPTIONALITY ? K & string : never : never;
4
4
  }[keyof FROM];
@@ -0,0 +1 @@
1
+ export{};
@@ -0,0 +1,22 @@
1
+ import type { AnonymousExpression } from '../expression/index.js';
2
+ import { type $DomainEntity, type AnyAliasMap, type DomainEntity } from '../model/index.js';
3
+ import { type AllOfTypeRelation } from './all-of-type-relation.js';
4
+ import { type DirectRelation } from './direct-relation.js';
5
+ import { type IndirectRelation } from './indirect-relation.js';
6
+ /** A relation as a spec declares it: where the related entities are found and how many there may be. */
7
+ export type Relation = DirectRelation | AllOfTypeRelation | IndirectRelation;
8
+ type RelatedEntity = $DomainEntity<DomainEntity<string>>;
9
+ /**
10
+ * The expression of a relation as a domain takes it. The entity and data types are erased, so that
11
+ * the domain of any project accepts it: an expression typed with the base entity type is not
12
+ * assignable to one typed with a project's entities. The type a project reads from a relation is
13
+ * the one its generated model declares for the relation's property.
14
+ */
15
+ type RelationExpression = AnonymousExpression<any, any, any, any, any, any, RelatedEntity | null | ReadonlyArray<RelatedEntity>>;
16
+ /**
17
+ * Makes the expression of one relation: it collects the related entities of an entity and returns
18
+ * them as the cardinality says, one entity, one entity or `null`, or an array.
19
+ */
20
+ export type RelationFactory = (relation: Relation) => RelationExpression;
21
+ export declare const createRelationFactory: (aliasMap: AnyAliasMap) => RelationFactory;
22
+ export {};
@@ -0,0 +1 @@
1
+ import{match as t}from"ts-pattern";import{expandAlias as e}from"../model/index.js";import{createAllOfTypeRelation as r}from"./all-of-type-relation.js";import{directRelation as i}from"./direct-relation.js";import{createIndirectRelation as n}from"./indirect-relation.js";export const createRelationFactory=o=>{let a=r(o),l=n(o);return r=>{let n=t(r).with({kind:"direct"},t=>i(t)).with({kind:"indirect"},t=>l(t)).with({kind:"allOfType"},t=>a(t)).exhaustive(),d=t(r).with({cardinality:"0-1"},()=>t=>{if(t.length>1)throw Error(`Expected at most one entity, but got ${t.length}`);return t[0]??null}).with({cardinality:"1-1"},()=>t=>{let[e,...r]=t;if(void 0===e||r.length>0)throw Error(`Expected exactly one entity, but got ${t.length}`);return e}).with({cardinality:"0-N"},()=>t=>t).with({cardinality:"1-N"},()=>t=>{if(0===t.length)throw Error("Expected at least one entity, but got none");return t}).exhaustive(),c=e(o,r.target);return{meta:{alwaysEvaluate:!0,...r.meta},evaluate:(t,e,i)=>{let o=n(t,e,i.domain),a=i.domain.get$Entities(o,e);if(!a.every(t=>c.includes(t.type))){let t=a.map(t=>t.type).filter(t=>!c.includes(t));throw Error(`Expected ${r.target} entities, but got ${t.join(", ")}`)}return d(a)}}}};
@@ -1 +1 @@
1
- import{createAjvSchemaValidator as e}from"./create-ajv-schema-validator.js";import{createCspSchemaValidator as a}from"./create-csp-schema-validator.js";let t="csp-compatible"===globalThis.PHX_SCHEMA_VALIDATOR?a:e;export const getExtendedSchemaValidator=()=>{let e=t();return e.addKeyword("tsType"),e.addKeyword("import"),e.addKeyword("declared"),e};export const extendedSchemaValidator=getExtendedSchemaValidator();
1
+ import{createAjvSchemaValidator as e}from"./create-ajv-schema-validator.js";import{createCspSchemaValidator as a}from"./create-csp-schema-validator.js";export const getExtendedSchemaValidator=()=>{let t="csp-compatible"===globalThis.PHX_SCHEMA_VALIDATOR?a():e();return t.addKeyword("tsType"),t.addKeyword("import"),t.addKeyword("declared"),t};export const extendedSchemaValidator=getExtendedSchemaValidator();
@@ -0,0 +1,15 @@
1
+ import type { DomainEntity, DomainEntityId } from '../model/index.js';
2
+ /**
3
+ * Hands out the ids of entities that are about to be created, one sequence per entity type. An
4
+ * action or a transformer asks it for an id instead of computing one from the state.
5
+ */
6
+ export type IdSequence<ENTITIES extends DomainEntity<string>> = {
7
+ /**
8
+ * Returns the next available entity ID for the given type.
9
+ * This automatically increments the sequence number for the given type, so that the next call will return a new ID.
10
+ *
11
+ * @param type the entity type
12
+ * @returns a new domain entity ID for the given type
13
+ */
14
+ nextId: <TYPE extends ENTITIES['type']>(type: TYPE) => DomainEntityId<TYPE>;
15
+ };
@@ -0,0 +1 @@
1
+ export{};
@@ -0,0 +1,3 @@
1
+ export type * from './id-sequence.js';
2
+ export * from './migrations.js';
3
+ export * from './state.js';
@@ -0,0 +1 @@
1
+ export*from"./migrations.js";export*from"./state.js";
@@ -1,5 +1,5 @@
1
1
  import { type Logger } from '@salsita-ai/common/utils';
2
- import type { DomainEntity, EntityReflections } from './model/index.js';
2
+ import type { DomainEntity, EntityReflections } from '../model/index.js';
3
3
  /**
4
4
  * Thrown when domain state cannot be validated/migrated to the latest model
5
5
  * version: an entity is invalid against its schema, an entity type or model
@@ -48,51 +48,20 @@ export type MigrateFunction<LATEST_ENTITIES extends DomainEntity<string>> = (ver
48
48
  state: ReadonlyArray<DomainEntity<string>>;
49
49
  }, options: MigrateFunctionOptions) => readonly LATEST_ENTITIES[];
50
50
  /**
51
- * Builder for the state migration function.
51
+ * Creates the function that migrates a state of any registered version of the model to the latest
52
+ * one. The state is validated against the reflections of its own version, and again after every
53
+ * migration against the reflections of the version that migration yields.
54
+ *
55
+ * @param modelVersions the entity reflections of every version of the model, keyed by version
56
+ * @param latestVersion the version the state is migrated to
57
+ * @param migrations the migration to each version above the first: the one under key `n` takes a
58
+ * state of version `n - 1` to version `n`
52
59
  * @example
53
-
54
- export const migrateState = MigrateFunctionBuilder
55
-
56
- // the reflections are used for validation and sanitization
57
- .fromVersions({
58
- 1: v1Reflections,
59
- 2: v2Reflections,
60
- 3: v3Reflections,
61
- })
62
-
63
- // the latest version of the model
64
- .to(2)
65
-
66
- // the migrations between the versions
67
- .using({
68
- 2: migrationToV2,
69
- 3: migrationToV3,
70
- })
71
-
72
- .build()
73
-
60
+ * export const migrate = createMigrateFunction(
61
+ * { 1: v1Reflections, 2: v2Reflections, 3: v3Reflections },
62
+ * 3,
63
+ * { 2: migrationToV2, 3: migrationToV3 }
64
+ * )
74
65
  */
75
- export declare const MigrateFunctionBuilder: {
76
- /**
77
- * Provide the entity reflections for all versions of the model.
78
- */
79
- fromVersions: <VERSIONS extends Record<number, EntityReflections<any>>>(modelVersions: VERSIONS) => {
80
- /**
81
- * Specify the latest version of the model. I.e. the version to which the state will be migrated.
82
- */
83
- to: <LATEST extends keyof VERSIONS & number>(latestVersion: LATEST) => {
84
- /**
85
- * Provide the migrations between each consecutive version of the model.
86
- *
87
- * Migration with index `i` should migrate the state from version `i - 1` to version `i`.
88
- */
89
- using: (migrations: Record<Exclude<keyof VERSIONS, 1>, Migration<any, any>>) => {
90
- /**
91
- * Finally, build the migration function.
92
- */
93
- build: () => MigrateFunction<EntitiesOfReflections<VERSIONS[LATEST]>>;
94
- };
95
- };
96
- };
97
- };
66
+ export declare const createMigrateFunction: <VERSIONS extends Record<number, EntityReflections<any>>, LATEST extends keyof VERSIONS & number>(modelVersions: VERSIONS, latestVersion: LATEST, migrations: Record<Exclude<keyof VERSIONS, 1>, Migration<any, any>>) => MigrateFunction<EntitiesOfReflections<VERSIONS[LATEST]>>;
98
67
  export {};
@@ -0,0 +1 @@
1
+ import t from"lodash-es/pick.js";export class StateMigrationError extends Error{constructor(t){super(t),this.name="StateMigrationError"}}export const isStateMigrationError=t=>t instanceof StateMigrationError;let e=(e,r,i,o)=>e.map(e=>{let n=r[e.type];if(!n)throw new StateMigrationError(`Unknown entity type "${e.type}". The state contains an entity whose type is not registered in the domain model for this version. Fix: register the entity type in the domain spec, or remove/migrate the stale entity from the preset or configuration data.`);if(n._meta.validator(e))return e;if(i){let r=t(e,Object.keys(n._meta.schema.properties));if(n._meta.validator(e))return o?.error(`Entity ${e.type}#${e.id} had extra fields that had to be trimmed: ${Object.keys(r)}`),r}throw new StateMigrationError(`Entity "${e.type}#${e.id}" does not match its schema in the current domain model. Validation errors: ${JSON.stringify(n._meta.validator.errors)}. Fix: update the entity data to match the schema, add a migration that transforms older data into the current shape, or re-register the schema if it changed.`)});export const createMigrateFunction=(t,r,i)=>(o,{logger:n,trimExtraProperties:a})=>{let s=t[o.version];if(!s)throw new StateMigrationError(`Unknown model version ${o.version}. The state declares a version that has no registered reflections. Fix: register the version in the model versions passed to createMigrateFunction, or correct the version stored on the state.`);let d=e(o.state,s,a,n);o.version===r?n?.debug(`State is already in the latest version ${r}`):n?.debug(`Migrating state from version ${o.version} to ${r}`);for(let s=o.version;s<r;s++){n?.debug(`Applying intermediate migration to version ${s+1}`);let h=t[s+1];if(!h)throw new StateMigrationError(`Unknown model version ${s+1} while migrating from ${o.version} to ${r}. An intermediate version has no registered reflections. Fix: register version ${s+1} in the model versions passed to createMigrateFunction.`);let g=i[s+1];if(!g)throw new StateMigrationError(`Missing migration from version ${s} to ${s+1}. No migration is registered for this step while migrating to ${r}. Fix: add the migration under key ${s+1} in the migrations passed to createMigrateFunction.`);d=e(g(d),h,a,n)}return d};