@salsita-ai/sdk 0.50.0-develop.9ed52379e9 → 0.50.0-develop.9fe72d003e

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 (1567) hide show
  1. package/README.md +20 -15
  2. package/dist/admin/default-admin-elements.d.ts +9 -0
  3. package/dist/admin/default-admin-elements.js +1 -0
  4. package/dist/admin/default-elements/built-in-entity-element.d.ts +10 -0
  5. package/dist/admin/default-elements/built-in-entity-element.js +1 -0
  6. package/dist/admin/default-elements/built-in-layout-element.d.ts +10 -0
  7. package/dist/admin/default-elements/built-in-layout-element.js +1 -0
  8. package/dist/admin/default-elements/index.d.ts +2 -0
  9. package/dist/admin/default-elements/index.js +1 -0
  10. package/dist/admin/index.d.ts +1 -0
  11. package/dist/admin/index.js +1 -1
  12. package/dist/application/index.d.ts +1 -0
  13. package/dist/application/index.js +1 -1
  14. package/dist/application/mount-application.d.ts +1 -1
  15. package/dist/application/mount-application.js +1 -1
  16. package/dist/application/mount-configurator.d.ts +19 -0
  17. package/dist/application/mount-configurator.js +1 -0
  18. package/dist/application/mounted-application-runtime.d.ts +4 -0
  19. package/dist/application/mounted-application-runtime.js +1 -0
  20. package/dist/application/register-web-component.d.ts +2 -0
  21. package/dist/application/register-web-component.js +1 -0
  22. package/dist/application-spec/caching/content-diff.js +1 -1
  23. package/dist/application-spec/core/application-file.d.ts +0 -2
  24. package/dist/application-spec/core/application-file.js +1 -1
  25. package/dist/application-spec/core/enhanced-json-value.d.ts +2 -99
  26. package/dist/application-spec/core/enhanced-json-value.js +1 -1
  27. package/dist/application-spec/core/index.d.ts +1 -1
  28. package/dist/application-spec/core/index.js +1 -1
  29. package/dist/application-spec/core/json-schema.d.ts +2 -52
  30. package/dist/application-spec/core/json-value.d.ts +1 -1
  31. package/dist/application-spec/core/markers/index.d.ts +1 -1
  32. package/dist/application-spec/core/markers/index.js +1 -1
  33. package/dist/application-spec/core/markers/msg-marker.d.ts +2 -28
  34. package/dist/application-spec/core/markers/msg-marker.js +1 -1
  35. package/dist/application-spec/core/markers/raw-eval-write-marker.d.ts +1 -1
  36. package/dist/application-spec/core/markers/raw-eval-write-marker.js +1 -1
  37. package/dist/application-spec/core/markers/raw-read-write-marker.js +1 -1
  38. package/dist/application-spec/{core → enhanced-json}/eval-to-constant.d.ts +1 -1
  39. package/dist/application-spec/enhanced-json/index.d.ts +4 -0
  40. package/dist/application-spec/enhanced-json/index.js +1 -0
  41. package/dist/application-spec/enhanced-json/is-enhanced-json-array.d.ts +2 -0
  42. package/dist/application-spec/enhanced-json/is-enhanced-json-array.js +1 -0
  43. package/dist/application-spec/enhanced-json/resolve-enhanced-json-value.d.ts +18 -0
  44. package/dist/application-spec/enhanced-json/resolve-enhanced-json-value.js +1 -0
  45. package/dist/application-spec/enhanced-json/schema-from-value.d.ts +24 -0
  46. package/dist/application-spec/enhanced-json/schema-from-value.js +1 -0
  47. package/dist/application-spec/enhanced-json/stringify-enhanced-json-value.d.ts +14 -0
  48. package/dist/application-spec/enhanced-json/stringify-enhanced-json-value.js +1 -0
  49. package/dist/application-spec/enhanced-json/validate-enhanced-json-value-caps.d.ts +12 -0
  50. package/dist/application-spec/enhanced-json/validate-enhanced-json-value-caps.js +1 -0
  51. package/dist/application-spec/enhanced-json/validate-no-legacy-code-ref.d.ts +13 -0
  52. package/dist/application-spec/enhanced-json/validate-no-legacy-code-ref.js +1 -0
  53. package/dist/application-spec/errors/diagnostic-codes.d.ts +31 -1
  54. package/dist/application-spec/errors/diagnostic-codes.js +1 -1
  55. package/dist/application-spec/errors/diagnostic-messages.d.ts +42 -2
  56. package/dist/application-spec/errors/diagnostic-messages.js +1 -1
  57. package/dist/application-spec/generate-application/code/common/code-imports.js +1 -1
  58. package/dist/application-spec/generate-application/code/common/env-reader.js +2 -2
  59. package/dist/application-spec/generate-application/code/common/index.d.ts +1 -0
  60. package/dist/application-spec/generate-application/code/common/index.js +1 -1
  61. package/dist/application-spec/generate-application/code/common/single-quoted-string.d.ts +6 -0
  62. package/dist/application-spec/generate-application/code/common/single-quoted-string.js +1 -0
  63. package/dist/application-spec/generate-application/code/domain-runtime-files.js +1 -1
  64. package/dist/application-spec/generate-application/code/generate-application-code.d.ts +3 -2
  65. package/dist/application-spec/generate-application/code/generate-application-code.js +1 -1
  66. package/dist/application-spec/generate-application/code/project-scaffolding.d.ts +22 -14
  67. package/dist/application-spec/generate-application/code/project-scaffolding.js +2 -2
  68. package/dist/application-spec/generate-application/code/standalone-app-files.d.ts +2 -2
  69. package/dist/application-spec/generate-application/code/standalone-app-files.js +1 -1
  70. package/dist/application-spec/generate-application/code/story-files.js +1 -1
  71. package/dist/application-spec/generate-application/code/templates/admin-config.js +3 -0
  72. package/dist/application-spec/generate-application/code/templates/application-types.js +6 -6
  73. package/dist/application-spec/generate-application/code/templates/common/doc-comment.d.ts +2 -0
  74. package/dist/application-spec/generate-application/code/templates/common/doc-comment.js +1 -0
  75. package/dist/application-spec/generate-application/code/templates/common/format-property-key.d.ts +7 -0
  76. package/dist/application-spec/generate-application/code/templates/common/format-property-key.js +1 -0
  77. package/dist/application-spec/generate-application/code/templates/common/schema-to-type-string.js +3 -3
  78. package/dist/application-spec/generate-application/code/templates/configurator-config.js +6 -4
  79. package/dist/application-spec/generate-application/code/templates/configurator-globals.d.ts +2 -1
  80. package/dist/application-spec/generate-application/code/templates/configurator-globals.js +19 -6
  81. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/domain-factory-types.d.ts +35 -0
  82. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/domain-factory-types.js +5 -0
  83. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/index.d.ts +1 -0
  84. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/index.js +1 -0
  85. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-component-optics.d.ts +1 -1
  86. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-component-optics.js +7 -7
  87. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-defaults.d.ts +4 -2
  88. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-defaults.js +1 -1
  89. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-domain-block.js +69 -73
  90. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.d.ts +8 -0
  91. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.js +1 -1
  92. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-phx-globals.js +3 -0
  93. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-presets.js +1 -1
  94. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-relation-expressions.js +1 -1
  95. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-resources.d.ts +6 -8
  96. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-resources.js +21 -21
  97. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-states.d.ts +1 -1
  98. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-states.js +2 -2
  99. package/dist/application-spec/generate-application/code/templates/domain-spec/index.d.ts +3 -2
  100. package/dist/application-spec/generate-application/code/templates/domain-spec/index.js +1 -1
  101. package/dist/application-spec/generate-application/code/templates/domain-spec.js +12 -12
  102. package/dist/application-spec/generate-application/code/templates/domain.js +3 -3
  103. package/dist/application-spec/generate-application/code/templates/eslint-config.d.ts +5 -0
  104. package/dist/application-spec/generate-application/code/templates/eslint-config.js +4 -5
  105. package/dist/application-spec/generate-application/code/templates/frontend-config.js +3 -5
  106. package/dist/application-spec/generate-application/code/templates/gitignore.js +0 -3
  107. package/dist/application-spec/generate-application/code/templates/global-definition/generate-action-types.js +7 -7
  108. package/dist/application-spec/generate-application/code/templates/global-definition/generate-assistant-form-element-types.d.ts +12 -0
  109. package/dist/application-spec/generate-application/code/templates/global-definition/generate-assistant-form-element-types.js +7 -0
  110. package/dist/application-spec/generate-application/code/templates/global-definition/generate-phx-types.d.ts +43 -0
  111. package/dist/application-spec/generate-application/code/templates/global-definition/generate-phx-types.js +33 -0
  112. package/dist/application-spec/generate-application/code/templates/global-definition/index.d.ts +2 -0
  113. package/dist/application-spec/generate-application/code/templates/global-definition/index.js +1 -1
  114. package/dist/application-spec/generate-application/code/templates/globals.js +24 -43
  115. package/dist/application-spec/generate-application/code/templates/index.d.ts +5 -10
  116. package/dist/application-spec/generate-application/code/templates/index.js +1 -1
  117. package/dist/application-spec/generate-application/code/templates/lingui-rc.d.ts +5 -0
  118. package/dist/application-spec/generate-application/code/templates/lingui-rc.js +4 -4
  119. package/dist/application-spec/generate-application/code/templates/prettier-config.d.ts +5 -0
  120. package/dist/application-spec/generate-application/code/templates/prettier-config.js +4 -5
  121. package/dist/application-spec/generate-application/code/templates/root-tsconfig.d.ts +6 -0
  122. package/dist/application-spec/generate-application/code/templates/root-tsconfig.js +2 -0
  123. package/dist/application-spec/generate-application/code/templates/skills/phoenix-cli-skill.js +1 -1
  124. package/dist/application-spec/generate-application/code/templates/skills/phoenix-create-configurator-skill.js +1 -1
  125. package/dist/application-spec/generate-application/code/templates/skills/phoenix-feedback-skill.js +5 -5
  126. package/dist/application-spec/generate-application/code/templates/skills/phoenix-review-skill.js +9 -3
  127. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill-bundle.d.ts +10 -0
  128. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill-bundle.js +7 -0
  129. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill.js +1 -1
  130. package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.js +2 -2
  131. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.d.ts +33 -7
  132. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.js +2 -2
  133. package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.d.ts +58 -0
  134. package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.js +1 -0
  135. package/dist/application-spec/generate-application/code/templates/spec-code/index.d.ts +2 -0
  136. package/dist/application-spec/generate-application/code/templates/spec-code/index.js +1 -0
  137. package/dist/application-spec/generate-application/code/templates/spec-code/spec-code.d.ts +18 -0
  138. package/dist/application-spec/generate-application/code/templates/spec-code/spec-code.js +41 -0
  139. package/dist/application-spec/generate-application/code/templates/spec-messages/index.d.ts +1 -0
  140. package/dist/application-spec/generate-application/code/templates/spec-messages/index.js +1 -0
  141. package/dist/application-spec/generate-application/code/templates/spec-messages/spec-messages.d.ts +20 -0
  142. package/dist/application-spec/generate-application/code/templates/spec-messages/spec-messages.js +6 -0
  143. package/dist/application-spec/generate-application/code/templates/story/phx-module.d.ts +8 -2
  144. package/dist/application-spec/generate-application/code/templates/story/phx-module.js +15 -3
  145. package/dist/application-spec/generate-application/code/templates/story/wrapper.d.ts +3 -0
  146. package/dist/application-spec/generate-application/code/templates/story/wrapper.js +2 -1
  147. package/dist/application-spec/generate-application/code/templates/tsconfig.d.ts +5 -0
  148. package/dist/application-spec/generate-application/code/templates/tsconfig.js +1 -1
  149. package/dist/application-spec/generate-application/code/templates/webhook-index.d.ts +6 -1
  150. package/dist/application-spec/generate-application/code/templates/webhook-index.js +10 -1
  151. package/dist/application-spec/generate-application/code/templates/webhooks-config.js +2 -3
  152. package/dist/application-spec/generate-application/implementations/phx-application-types.d.ts +25 -0
  153. package/dist/application-spec/generate-application/implementations/phx-application-types.js +1 -0
  154. package/dist/application-spec/generate-application/implementations/phx-domain.d.ts +36 -0
  155. package/dist/application-spec/generate-application/implementations/phx-domain.js +1 -0
  156. package/dist/application-spec/generate-application/implementations/phx-model.d.ts +24 -0
  157. package/dist/application-spec/generate-application/implementations/phx-model.js +1 -0
  158. package/dist/application-spec/generate-application/implementations/phx.d.ts +22 -0
  159. package/dist/application-spec/generate-application/implementations/phx.js +1 -0
  160. package/dist/application-spec/generate-application/index.d.ts +4 -0
  161. package/dist/application-spec/generate-application/index.js +1 -1
  162. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.d.ts +6 -5
  163. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.js +1 -1
  164. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.d.ts +12 -4
  165. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.js +1 -1
  166. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-spec-runtime.d.ts +16 -0
  167. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-spec-runtime.js +1 -0
  168. package/dist/application-spec/generate-application/runtime/admin-runtime/states-runtime.d.ts +2 -2
  169. package/dist/application-spec/generate-application/runtime/application-runtime.d.ts +35 -10
  170. package/dist/application-spec/generate-application/runtime/application-runtime.js +1 -1
  171. package/dist/application-spec/generate-application/runtime/application-spec-slice.d.ts +71 -0
  172. package/dist/application-spec/generate-application/runtime/application-spec-slice.js +1 -0
  173. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.d.ts +7 -6
  174. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.js +1 -1
  175. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.d.ts +12 -7
  176. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.js +1 -1
  177. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-spec-runtime.d.ts +16 -0
  178. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-spec-runtime.js +1 -0
  179. package/dist/application-spec/generate-application/runtime/configurator-runtime/states-runtime.d.ts +2 -2
  180. package/dist/application-spec/generate-application/runtime/create-application.d.ts +57 -0
  181. package/dist/application-spec/generate-application/runtime/create-application.js +1 -0
  182. package/dist/application-spec/generate-application/runtime/factory-data/factory-data-runtime.d.ts +42 -0
  183. package/dist/application-spec/generate-application/runtime/factory-data/factory-data-runtime.js +1 -0
  184. package/dist/application-spec/generate-application/runtime/factory-data/index.d.ts +3 -0
  185. package/dist/application-spec/generate-application/runtime/factory-data/index.js +1 -0
  186. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.d.ts +13 -0
  187. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.js +1 -0
  188. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.d.ts +15 -0
  189. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.js +1 -0
  190. package/dist/application-spec/generate-application/runtime/generate-runtime-instance.d.ts +1 -1
  191. package/dist/application-spec/generate-application/runtime/generate-runtime-instance.js +1 -1
  192. package/dist/application-spec/generate-application/runtime/index.d.ts +8 -0
  193. package/dist/application-spec/generate-application/runtime/index.js +1 -0
  194. package/dist/application-spec/generate-application/runtime/migrations/index.d.ts +1 -0
  195. package/dist/application-spec/generate-application/runtime/migrations/index.js +1 -0
  196. package/dist/application-spec/generate-application/runtime/migrations/migration-runtime.d.ts +53 -0
  197. package/dist/application-spec/generate-application/runtime/migrations/migration-runtime.js +1 -0
  198. package/dist/application-spec/generate-application/runtime/sections/actions-runtime.d.ts +1 -2
  199. package/dist/application-spec/generate-application/runtime/sections/assistant-runtime.d.ts +2 -2
  200. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.d.ts +3 -2
  201. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.js +1 -1
  202. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.d.ts +3 -2
  203. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.js +1 -1
  204. package/dist/application-spec/generate-application/runtime/sections/component-optic.d.ts +6 -3
  205. package/dist/application-spec/generate-application/runtime/sections/component-optic.js +1 -1
  206. package/dist/application-spec/generate-application/runtime/sections/data-runtime.d.ts +4 -4
  207. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.d.ts +14 -6
  208. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.js +1 -1
  209. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.d.ts +10 -7
  210. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.js +1 -1
  211. package/dist/application-spec/generate-application/runtime/sections/preset-runtime.d.ts +2 -3
  212. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.d.ts +4 -2
  213. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.js +1 -1
  214. package/dist/application-spec/generate-application/runtime/sections/theme-runtime.d.ts +2 -2
  215. package/dist/application-spec/generate-application/runtime/sections/transformers-runtime.d.ts +4 -6
  216. package/dist/application-spec/generate-application/runtime/spec-code/index.d.ts +2 -0
  217. package/dist/application-spec/generate-application/runtime/spec-code/index.js +1 -0
  218. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.d.ts +18 -0
  219. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.js +1 -0
  220. package/dist/application-spec/generate-application/runtime/spec-code/spec-code-module.d.ts +17 -0
  221. package/dist/application-spec/generate-application/runtime/spec-runtime.d.ts +21 -0
  222. package/dist/application-spec/generate-application/runtime/spec-runtime.js +1 -0
  223. package/dist/application-spec/generate-application/runtime-spec/decode-runtime-spec.d.ts +9 -0
  224. package/dist/application-spec/generate-application/runtime-spec/decode-runtime-spec.js +1 -0
  225. package/dist/application-spec/generate-application/runtime-spec/encode-runtime-spec.d.ts +8 -0
  226. package/dist/application-spec/generate-application/runtime-spec/encode-runtime-spec.js +1 -0
  227. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.d.ts +28 -0
  228. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.js +1 -0
  229. package/dist/application-spec/generate-application/runtime-spec/index.d.ts +5 -0
  230. package/dist/application-spec/generate-application/runtime-spec/index.js +1 -0
  231. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.d.ts +168 -0
  232. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.js +1 -0
  233. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.d.ts +40 -0
  234. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.js +1 -0
  235. package/dist/application-spec/index.d.ts +1 -0
  236. package/dist/application-spec/index.js +1 -1
  237. package/dist/application-spec/parse-application-files/categorize/categorize-files.d.ts +34 -0
  238. package/dist/application-spec/parse-application-files/categorize/categorize-files.js +1 -1
  239. package/dist/application-spec/parse-application-files/categorize/earlier-generated-editor-configs.d.ts +16 -0
  240. package/dist/application-spec/parse-application-files/categorize/earlier-generated-editor-configs.js +9 -0
  241. package/dist/application-spec/parse-application-files/categorize/earlier-generated-tsconfig.d.ts +9 -0
  242. package/dist/application-spec/parse-application-files/categorize/earlier-generated-tsconfig.js +1 -0
  243. package/dist/application-spec/parse-application-files/categorize/module-analysis.d.ts +1 -1
  244. package/dist/application-spec/parse-application-files/categorize/module-analysis.js +1 -1
  245. package/dist/application-spec/parse-application-files/merge/merged-assistant.d.ts +13 -4
  246. package/dist/application-spec/parse-application-files/merge/merged-assistant.js +1 -1
  247. package/dist/application-spec/parse-application-files/merge/merged-infra.d.ts +4 -11
  248. package/dist/application-spec/parse-application-files/merge/merged-transformers.d.ts +2 -4
  249. package/dist/application-spec/parse-application-files/parse-application-files.js +1 -1
  250. package/dist/application-spec/parse-application-files/raw-spec/parse-yaml-spec-file.js +1 -1
  251. package/dist/application-spec/parse-application-files/raw-spec/raw-acl.d.ts +2 -2
  252. package/dist/application-spec/parse-application-files/raw-spec/raw-acl.js +1 -1
  253. package/dist/application-spec/parse-application-files/raw-spec/raw-admin-pages.d.ts +3 -24
  254. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.d.ts +72 -24
  255. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.js +1 -1
  256. package/dist/application-spec/parse-application-files/raw-spec/raw-expressions.d.ts +1 -1
  257. package/dist/application-spec/parse-application-files/raw-spec/raw-expressions.js +1 -1
  258. package/dist/application-spec/parse-application-files/raw-spec/raw-resources.d.ts +19 -64
  259. package/dist/application-spec/parse-application-files/raw-spec/raw-spec-file.js +1 -1
  260. package/dist/application-spec/parse-application-files/spec/application/admin-spec/admin-pages.d.ts +3 -20
  261. package/dist/application-spec/parse-application-files/spec/application/admin-spec/admin-spec.js +1 -1
  262. package/dist/application-spec/parse-application-files/spec/application/admin-spec/states.d.ts +3 -5
  263. package/dist/application-spec/parse-application-files/spec/application/configurator-spec/configurator-spec.js +1 -1
  264. package/dist/application-spec/parse-application-files/spec/application/configurator-spec/states.d.ts +3 -8
  265. package/dist/application-spec/parse-application-files/spec/common/index.d.ts +1 -0
  266. package/dist/application-spec/parse-application-files/spec/common/index.js +1 -1
  267. package/dist/application-spec/parse-application-files/spec/common/value-type/format-value-type.d.ts +3 -0
  268. package/dist/application-spec/parse-application-files/spec/common/value-type/format-value-type.js +1 -0
  269. package/dist/application-spec/parse-application-files/spec/common/value-type/index.d.ts +5 -0
  270. package/dist/application-spec/parse-application-files/spec/common/value-type/index.js +1 -0
  271. package/dist/application-spec/parse-application-files/spec/common/value-type/intersect-value-types.d.ts +6 -0
  272. package/dist/application-spec/parse-application-files/spec/common/value-type/intersect-value-types.js +1 -0
  273. package/dist/application-spec/parse-application-files/spec/common/value-type/is-assignable-value-type.d.ts +8 -0
  274. package/dist/application-spec/parse-application-files/spec/common/value-type/is-assignable-value-type.js +1 -0
  275. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type-at.d.ts +10 -0
  276. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type-at.js +1 -0
  277. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type.d.ts +98 -0
  278. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type.js +1 -0
  279. package/dist/application-spec/parse-application-files/spec/components/bindings/component-path.d.ts +13 -0
  280. package/dist/application-spec/parse-application-files/spec/components/bindings/component-path.js +1 -0
  281. package/dist/application-spec/parse-application-files/spec/components/bindings/index.d.ts +2 -0
  282. package/dist/application-spec/parse-application-files/spec/components/bindings/index.js +1 -1
  283. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding-type.d.ts +24 -0
  284. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding-type.js +1 -0
  285. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding.d.ts +3 -13
  286. package/dist/application-spec/parse-application-files/spec/components/bindings/write-binding.d.ts +4 -32
  287. package/dist/application-spec/parse-application-files/spec/components/component-filter.d.ts +3 -62
  288. package/dist/application-spec/parse-application-files/spec/components/component-filter.js +1 -1
  289. package/dist/application-spec/parse-application-files/spec/components/component-state-type.d.ts +8 -0
  290. package/dist/application-spec/parse-application-files/spec/components/component-state-type.js +1 -0
  291. package/dist/application-spec/parse-application-files/spec/components/components.d.ts +3 -4
  292. package/dist/application-spec/parse-application-files/spec/components/filter-criterion-types.d.ts +13 -0
  293. package/dist/application-spec/parse-application-files/spec/components/filter-criterion-types.js +1 -0
  294. package/dist/application-spec/parse-application-files/spec/components/index.d.ts +1 -2
  295. package/dist/application-spec/parse-application-files/spec/components/index.js +1 -1
  296. package/dist/application-spec/parse-application-files/spec/components/sdk-component-entry.d.ts +1 -1
  297. package/dist/application-spec/parse-application-files/spec/components/static-entity-id.d.ts +14 -0
  298. package/dist/application-spec/parse-application-files/spec/components/static-entity-id.js +1 -0
  299. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.d.ts +8 -3
  300. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.js +1 -1
  301. package/dist/application-spec/parse-application-files/spec/components/user-components.d.ts +9 -7
  302. package/dist/application-spec/parse-application-files/spec/components/user-components.js +1 -1
  303. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.d.ts +24 -0
  304. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.js +1 -0
  305. package/dist/application-spec/parse-application-files/spec/expressions/expression-read.d.ts +13 -0
  306. package/dist/application-spec/parse-application-files/spec/expressions/expression-read.js +1 -0
  307. package/dist/application-spec/parse-application-files/spec/expressions/expression-value-type.d.ts +9 -0
  308. package/dist/application-spec/parse-application-files/spec/expressions/expression-value-type.js +1 -0
  309. package/dist/application-spec/parse-application-files/spec/expressions/expressions.d.ts +12 -30
  310. package/dist/application-spec/parse-application-files/spec/expressions/expressions.js +1 -1
  311. package/dist/application-spec/parse-application-files/spec/expressions/index.d.ts +0 -2
  312. package/dist/application-spec/parse-application-files/spec/expressions/index.js +1 -1
  313. package/dist/application-spec/parse-application-files/spec/expressions/memo-eval-plan.d.ts +4 -71
  314. package/dist/application-spec/parse-application-files/spec/expressions/memo-eval-plan.js +1 -1
  315. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.d.ts +5 -3
  316. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.js +1 -1
  317. package/dist/application-spec/parse-application-files/spec/invariants/invariant.d.ts +5 -21
  318. package/dist/application-spec/parse-application-files/spec/invariants/invariants.d.ts +6 -16
  319. package/dist/application-spec/parse-application-files/spec/invariants/invariants.js +1 -1
  320. package/dist/application-spec/parse-application-files/spec/model/aliases.d.ts +3 -9
  321. package/dist/application-spec/parse-application-files/spec/model/common-types.d.ts +6 -14
  322. package/dist/application-spec/parse-application-files/spec/model/defaults.d.ts +6 -26
  323. package/dist/application-spec/parse-application-files/spec/model/defaults.js +1 -1
  324. package/dist/application-spec/parse-application-files/spec/model/entity-types.d.ts +3 -8
  325. package/dist/application-spec/parse-application-files/spec/model/index.d.ts +1 -0
  326. package/dist/application-spec/parse-application-files/spec/model/index.js +1 -1
  327. package/dist/application-spec/parse-application-files/spec/model/model-type-resolution.d.ts +10 -0
  328. package/dist/application-spec/parse-application-files/spec/model/model-type-resolution.js +1 -0
  329. package/dist/application-spec/parse-application-files/spec/model/model-version-key.d.ts +3 -3
  330. package/dist/application-spec/parse-application-files/spec/model/names/action-name.d.ts +3 -7
  331. package/dist/application-spec/parse-application-files/spec/model/names/alias-name.d.ts +3 -7
  332. package/dist/application-spec/parse-application-files/spec/model/names/entity-or-alias-name.d.ts +3 -8
  333. package/dist/application-spec/parse-application-files/spec/model/names/entity-type-name.d.ts +3 -8
  334. package/dist/application-spec/parse-application-files/spec/model/names/expression-name.d.ts +3 -6
  335. package/dist/application-spec/parse-application-files/spec/model/names/instance-name.d.ts +3 -7
  336. package/dist/application-spec/parse-application-files/spec/model/names/invariant-name.d.ts +3 -3
  337. package/dist/application-spec/parse-application-files/spec/model/names/shape-property-name.d.ts +3 -11
  338. package/dist/application-spec/parse-application-files/spec/model/names/violation-type-name.d.ts +3 -3
  339. package/dist/application-spec/parse-application-files/spec/model/presets.d.ts +6 -29
  340. package/dist/application-spec/parse-application-files/spec/relations/reference-field-type.d.ts +25 -0
  341. package/dist/application-spec/parse-application-files/spec/relations/reference-field-type.js +1 -0
  342. package/dist/application-spec/parse-application-files/spec/relations/relation-field-mismatch.d.ts +46 -0
  343. package/dist/application-spec/parse-application-files/spec/relations/relation-field-mismatch.js +1 -0
  344. package/dist/application-spec/parse-application-files/spec/relations/relations.d.ts +4 -3
  345. package/dist/application-spec/parse-application-files/spec/relations/relations.js +1 -1
  346. package/dist/application-spec/parse-application-files/spec/sections/actions.d.ts +6 -23
  347. package/dist/application-spec/parse-application-files/spec/sections/app-metadata.d.ts +3 -18
  348. package/dist/application-spec/parse-application-files/spec/sections/application-version.d.ts +3 -7
  349. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-form-elements.d.ts +9 -0
  350. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-form-elements.js +1 -0
  351. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.d.ts +4 -1
  352. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.js +1 -1
  353. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant.js +1 -1
  354. package/dist/application-spec/parse-application-files/spec/sections/data-spec/chunks.d.ts +6 -23
  355. package/dist/application-spec/parse-application-files/spec/sections/data-spec/custom-data-spec.d.ts +1 -16
  356. package/dist/application-spec/parse-application-files/spec/sections/data-spec/data-entry-key.d.ts +3 -9
  357. package/dist/application-spec/parse-application-files/spec/sections/data-spec/data-spec.d.ts +1 -10
  358. package/dist/application-spec/parse-application-files/spec/sections/data-spec/swatch-data-spec.d.ts +1 -14
  359. package/dist/application-spec/parse-application-files/spec/sections/infra.d.ts +2 -0
  360. package/dist/application-spec/parse-application-files/spec/sections/infra.js +1 -1
  361. package/dist/application-spec/parse-application-files/spec/sections/state-value.d.ts +3 -7
  362. package/dist/application-spec/parse-application-files/spec/sections/theme.d.ts +3 -10
  363. package/dist/application-spec/parse-application-files/spec/sections/transformers.d.ts +4 -11
  364. package/dist/application-spec/parse-application-files/spec/sections/ui.d.ts +3 -12
  365. package/dist/client/authorized-client.d.ts +3 -1
  366. package/dist/client/authorized-client.js +1 -1
  367. package/dist/client/contract.d.ts +17 -0
  368. package/dist/client/index.d.ts +1 -1
  369. package/dist/client/local-authorized-client.d.ts +3 -1
  370. package/dist/client/local-authorized-client.js +1 -1
  371. package/dist/client/memory-authorized-client.d.ts +4 -1
  372. package/dist/client/memory-authorized-client.js +1 -1
  373. package/dist/client/phoenix-api.d.ts +809 -118
  374. package/dist/configurator/ConfiguratorApp.js +1 -1
  375. package/dist/configurator/app-loader-content/DefaultAppLoaderContent.d.ts +2 -0
  376. package/dist/configurator/app-loader-content/DefaultAppLoaderContent.js +5 -0
  377. package/dist/configurator/app-loader-content/index.d.ts +1 -0
  378. package/dist/configurator/app-loader-content/index.js +1 -0
  379. package/dist/configurator/application-runtime/extensions/create-configurator-extensions.js +1 -1
  380. package/dist/configurator/application-runtime/extensions/selectors.d.ts +3 -1
  381. package/dist/configurator/application-runtime/extensions/selectors.js +1 -1
  382. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.d.ts +54 -3
  383. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.js +1 -1
  384. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.d.ts +58 -9
  385. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.js +1 -1
  386. package/dist/configurator/application-runtime/extensions/systems/camera-control-system/camera-control-system.d.ts +1 -1
  387. package/dist/configurator/application-runtime/extensions/systems/canvas-system.d.ts +8 -0
  388. package/dist/configurator/application-runtime/extensions/systems/canvas-system.js +1 -1
  389. package/dist/configurator/application-runtime/extensions/systems/drag-and-drop-system/drag-and-drop-system.d.ts +3 -3
  390. package/dist/configurator/application-runtime/extensions/systems/export-system/export-busy-error.d.ts +8 -0
  391. package/dist/configurator/application-runtime/extensions/systems/export-system/export-busy-error.js +1 -0
  392. package/dist/configurator/application-runtime/extensions/systems/export-system/export-system.d.ts +23 -1
  393. package/dist/configurator/application-runtime/extensions/systems/export-system/export-system.js +1 -1
  394. package/dist/configurator/application-runtime/extensions/systems/graphql-system/close-unclosed-braces.d.ts +12 -0
  395. package/dist/configurator/application-runtime/extensions/systems/graphql-system/close-unclosed-braces.js +1 -0
  396. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.d.ts +82 -55
  397. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.js +1 -1
  398. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.d.ts +85 -7
  399. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.js +1 -1
  400. package/dist/configurator/application-runtime/extensions/systems/graphql-system/inject-assistant-lenses.d.ts +11 -0
  401. package/dist/configurator/application-runtime/extensions/systems/graphql-system/inject-assistant-lenses.js +1 -0
  402. package/dist/configurator/application-runtime/extensions/systems/graphql-system/violations.d.ts +40 -0
  403. package/dist/configurator/application-runtime/extensions/systems/graphql-system/violations.js +1 -0
  404. package/dist/configurator/application-runtime/extensions/systems/image-rendering-system/image-rendering-system.d.ts +14 -5
  405. package/dist/configurator/application-runtime/extensions/systems/image-rendering-system/image-rendering-system.js +1 -1
  406. package/dist/configurator/application-runtime/extensions/systems/index.d.ts +1 -1
  407. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.d.ts +2 -2
  408. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.js +1 -1
  409. package/dist/configurator/common/configurator-interface.d.ts +145 -5
  410. package/dist/configurator/common/configurator-interface.js +1 -1
  411. package/dist/configurator/common/index.d.ts +3 -1
  412. package/dist/configurator/common/index.js +1 -1
  413. package/dist/configurator/common/use-reset-camera.d.ts +6 -0
  414. package/dist/configurator/common/use-reset-camera.js +1 -0
  415. package/dist/configurator/configuration-not-found-page/BuiltInConfigurationNotFoundPage.d.ts +5 -0
  416. package/dist/configurator/configuration-not-found-page/BuiltInConfigurationNotFoundPage.js +1 -0
  417. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.d.ts +6 -0
  418. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.js +1 -0
  419. package/dist/configurator/configuration-not-found-page/index.d.ts +2 -0
  420. package/dist/configurator/configuration-not-found-page/index.js +1 -0
  421. package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.d.ts +12 -0
  422. package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.js +1 -0
  423. package/dist/configurator/configurator-context/PresetSelectionProvider.js +1 -1
  424. package/dist/configurator/configurator-context/PreviewContextProvider.js +1 -1
  425. package/dist/configurator/configurator-context/ViewportStateSync.d.ts +2 -2
  426. package/dist/configurator/configurator-context/ViewportStateSync.js +1 -1
  427. package/dist/configurator/configurator-context/configurator-hooks/index.d.ts +0 -1
  428. package/dist/configurator/configurator-context/configurator-hooks/index.js +1 -1
  429. package/dist/configurator/configurator-context/configurator-hooks/layout-hooks.d.ts +11 -1
  430. package/dist/configurator/configurator-context/index.d.ts +0 -4
  431. package/dist/configurator/configurator-context/index.js +1 -1
  432. package/dist/configurator/configurator-error-page/BuiltInConfiguratorErrorPage.d.ts +6 -0
  433. package/dist/configurator/configurator-error-page/BuiltInConfiguratorErrorPage.js +1 -0
  434. package/dist/configurator/configurator-error-page/ConfiguratorErrorPageElement.d.ts +7 -0
  435. package/dist/configurator/configurator-error-page/ConfiguratorErrorPageElement.js +1 -0
  436. package/dist/configurator/configurator-error-page/index.d.ts +2 -0
  437. package/dist/configurator/configurator-error-page/index.js +1 -0
  438. package/dist/configurator/index.d.ts +10 -0
  439. package/dist/configurator/index.js +1 -1
  440. package/dist/configurator/pages/ConfiguratorErrorPage.d.ts +0 -1
  441. package/dist/configurator/pages/ConfiguratorErrorPage.js +1 -1
  442. package/dist/configurator/pages/ConfiguratorNotFoundPage.js +1 -1
  443. package/dist/configurator/pages/DefaultConfiguratorLayout.d.ts +3 -2
  444. package/dist/configurator/pages/DefaultNotAuthenticatedPage.d.ts +8 -0
  445. package/dist/configurator/pages/DefaultNotAuthenticatedPage.js +1 -0
  446. package/dist/configurator/pages/DefaultPresetUi.d.ts +7 -0
  447. package/dist/configurator/pages/DefaultPresetUi.js +1 -0
  448. package/dist/configurator/pages/LoadedConfiguratorDetailPage.js +1 -1
  449. package/dist/configurator/pages/NewConfiguratorPage.js +1 -1
  450. package/dist/configurator/pages/PresetCreationErrorPage.d.ts +1 -1
  451. package/dist/configurator/pages/PresetCreationErrorPage.js +1 -1
  452. package/dist/configurator/pages/RootPage.js +1 -1
  453. package/dist/configurator/pages/configurator-layout-name.d.ts +2 -0
  454. package/dist/configurator/pages/configurator-layout-name.js +1 -0
  455. package/dist/configurator/pages/default-configurator-elements.d.ts +13 -0
  456. package/dist/configurator/pages/default-configurator-elements.js +1 -0
  457. package/dist/configurator/pages/default-elements/built-in-entity-element.d.ts +10 -0
  458. package/dist/configurator/pages/default-elements/built-in-entity-element.js +1 -0
  459. package/dist/configurator/pages/default-elements/built-in-layout-element.d.ts +10 -0
  460. package/dist/configurator/pages/default-elements/built-in-layout-element.js +1 -0
  461. package/dist/configurator/pages/default-elements/domain-control-elements.d.ts +6 -0
  462. package/dist/configurator/pages/default-elements/domain-control-elements.js +1 -0
  463. package/dist/configurator/pages/default-elements/index.d.ts +5 -0
  464. package/dist/configurator/pages/default-elements/index.js +1 -0
  465. package/dist/configurator/pages/default-elements/recipe-panel-elements.d.ts +3 -0
  466. package/dist/configurator/pages/default-elements/recipe-panel-elements.js +1 -0
  467. package/dist/configurator/pages/default-elements/scene-controls/BuiltInAddEntityFab.d.ts +3 -0
  468. package/dist/configurator/pages/default-elements/scene-controls/BuiltInAddEntityFab.js +1 -0
  469. package/dist/configurator/pages/default-elements/scene-controls/BuiltInDeleteEntityFab.d.ts +3 -0
  470. package/dist/configurator/pages/default-elements/scene-controls/BuiltInDeleteEntityFab.js +1 -0
  471. package/dist/configurator/pages/default-elements/scene-controls/BuiltInNavigationHotspot.d.ts +3 -0
  472. package/dist/configurator/pages/default-elements/scene-controls/BuiltInNavigationHotspot.js +1 -0
  473. package/dist/configurator/pages/default-elements/scene-controls/BuiltInSelectionHotspot.d.ts +3 -0
  474. package/dist/configurator/pages/default-elements/scene-controls/BuiltInSelectionHotspot.js +1 -0
  475. package/dist/configurator/pages/default-elements/scene-controls/BuiltInToolMenuFab.d.ts +3 -0
  476. package/dist/configurator/pages/default-elements/scene-controls/BuiltInToolMenuFab.js +1 -0
  477. package/dist/configurator/pages/default-elements/scene-controls/index.d.ts +6 -0
  478. package/dist/configurator/pages/default-elements/scene-controls/index.js +1 -0
  479. package/dist/configurator/pages/default-elements/scene-controls/scene-control-elements.d.ts +6 -0
  480. package/dist/configurator/pages/default-elements/scene-controls/scene-control-elements.js +1 -0
  481. package/dist/configurator/pages/default-elements/sidebar-footer-elements.d.ts +7 -0
  482. package/dist/configurator/pages/default-elements/sidebar-footer-elements.js +1 -0
  483. package/dist/configurator/pages/default-elements/toolbar-elements.d.ts +7 -0
  484. package/dist/configurator/pages/default-elements/toolbar-elements.js +1 -0
  485. package/dist/configurator/pages/error-boundaries/DevContextFallback.js +1 -1
  486. package/dist/configurator/pages/error-boundaries/DevLoadingFallback.js +1 -1
  487. package/dist/configurator/pages/error-boundaries/GeneralErrorBoundary.js +1 -1
  488. package/dist/configurator/pages/error-boundaries/LoadingErrorBoundary.js +1 -1
  489. package/dist/configurator/pages/index.d.ts +1 -0
  490. package/dist/configurator/pages/index.js +1 -1
  491. package/dist/configurator/preset-screen-elements/PresetDeviceNotSupportedElement.d.ts +4 -0
  492. package/dist/configurator/preset-screen-elements/PresetDeviceNotSupportedElement.js +1 -0
  493. package/dist/configurator/preset-screen-elements/PresetPageActionElement.d.ts +4 -0
  494. package/dist/configurator/preset-screen-elements/PresetPageActionElement.js +1 -0
  495. package/dist/configurator/preset-screen-elements/index.d.ts +2 -0
  496. package/dist/configurator/preset-screen-elements/index.js +1 -0
  497. package/dist/configurator/scene/index.d.ts +1 -0
  498. package/dist/configurator/scene/index.js +1 -1
  499. package/dist/configurator/scene/scene-controls/DeleteEntityFab.js +1 -1
  500. package/dist/configurator/scene/scene-controls/SelectionHotspot.js +1 -1
  501. package/dist/configurator/scene/scene-controls/ToolFab.d.ts +4 -0
  502. package/dist/configurator/scene/scene-controls/ToolFab.js +1 -1
  503. package/dist/configurator/scene/scene-controls/hotspot-drag-handle/HotspotDragHandle.d.ts +1 -1
  504. package/dist/configurator/scene/scene-controls/hotspot-drag-handle/HotspotDragSceneHandle.d.ts +1 -1
  505. package/dist/configurator/scene/scene-controls/use-scene-control-tooltip.d.ts +2 -1
  506. package/dist/configurator/scene/scene-entity/dimension-indicators/DimensionIndicator.d.ts +1 -1
  507. package/dist/configurator/scene/scene-entity/dimension-indicators/DimensionIndicatorInternal.d.ts +1 -1
  508. package/dist/configurator/scene/scene-entity/drag-and-drop/shared.d.ts +2 -2
  509. package/dist/configurator/scene/scene-entity/drag-and-drop/use-drag-object.d.ts +1 -1
  510. package/dist/configurator/scene/scene-entity/materials/RemoteReplacedMaterial.js +1 -1
  511. package/dist/configurator/scene/scene-entity/objects/SceneEntityObjectTextDecal.d.ts +1 -1
  512. package/dist/configurator/scene/scene-entity/scene-controls/SceneEntityHtmlHotspots.js +1 -1
  513. package/dist/configurator/toolbar-actions/index.d.ts +3 -0
  514. package/dist/configurator/toolbar-actions/index.js +1 -0
  515. package/dist/configurator/toolbar-actions/use-assistant-panel.d.ts +18 -0
  516. package/dist/configurator/toolbar-actions/use-assistant-panel.js +1 -0
  517. package/dist/configurator/toolbar-actions/use-measurements.d.ts +35 -0
  518. package/dist/configurator/toolbar-actions/use-measurements.js +1 -0
  519. package/dist/configurator/toolbar-actions/use-toolbar-actions.d.ts +100 -0
  520. package/dist/configurator/toolbar-actions/use-toolbar-actions.js +1 -0
  521. package/dist/configurator/toolbar-actions/use-toolbar-help.d.ts +7 -0
  522. package/dist/configurator/toolbar-actions/use-toolbar-help.js +1 -0
  523. package/dist/configurator/ui/assistant/AssistantChips.d.ts +10 -3
  524. package/dist/configurator/ui/assistant/AssistantChips.js +1 -1
  525. package/dist/configurator/ui/assistant/AssistantMarkdown.d.ts +7 -2
  526. package/dist/configurator/ui/assistant/AssistantMarkdown.js +1 -1
  527. package/dist/configurator/ui/assistant/AssistantPanel.js +1 -1
  528. package/dist/configurator/ui/assistant/AssistantThread.js +1 -1
  529. package/dist/configurator/ui/assistant/alert/AssistantAlert.d.ts +8 -0
  530. package/dist/configurator/ui/assistant/alert/AssistantAlert.js +1 -0
  531. package/dist/configurator/ui/assistant/alert/index.d.ts +2 -0
  532. package/dist/configurator/ui/assistant/alert/index.js +1 -0
  533. package/dist/configurator/ui/assistant/alert/remark-alerts.d.ts +10 -0
  534. package/dist/configurator/ui/assistant/alert/remark-alerts.js +1 -0
  535. package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.d.ts +13 -0
  536. package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.js +1 -0
  537. package/dist/configurator/ui/assistant/entity-link/entity-link-selection.d.ts +22 -0
  538. package/dist/configurator/ui/assistant/entity-link/entity-link-selection.js +1 -0
  539. package/dist/configurator/ui/assistant/entity-link/entity-link-state.d.ts +27 -0
  540. package/dist/configurator/ui/assistant/entity-link/entity-link-state.js +1 -0
  541. package/dist/configurator/ui/assistant/entity-link/index.d.ts +2 -0
  542. package/dist/configurator/ui/assistant/entity-link/index.js +1 -0
  543. package/dist/configurator/ui/assistant/form/AssistantForm.d.ts +19 -0
  544. package/dist/configurator/ui/assistant/form/AssistantForm.js +1 -0
  545. package/dist/configurator/ui/assistant/form/compose-answer.d.ts +11 -0
  546. package/dist/configurator/ui/assistant/form/compose-answer.js +1 -0
  547. package/dist/configurator/ui/assistant/form/describe-build-errors.d.ts +6 -0
  548. package/dist/configurator/ui/assistant/form/describe-build-errors.js +1 -0
  549. package/dist/configurator/ui/assistant/form/form-model.d.ts +37 -0
  550. package/dist/configurator/ui/assistant/form/form-model.js +1 -0
  551. package/dist/configurator/ui/assistant/form/form-state.d.ts +4 -0
  552. package/dist/configurator/ui/assistant/form/form-state.js +1 -0
  553. package/dist/configurator/ui/assistant/form/index.d.ts +4 -0
  554. package/dist/configurator/ui/assistant/form/index.js +1 -0
  555. package/dist/configurator/ui/assistant/form/parse-form-block.d.ts +10 -0
  556. package/dist/configurator/ui/assistant/form/parse-form-block.js +1 -0
  557. package/dist/configurator/ui/assistant/form/read-form-attributes.d.ts +13 -0
  558. package/dist/configurator/ui/assistant/form/read-form-attributes.js +1 -0
  559. package/dist/configurator/ui/assistant/form/registry/built-in-form-elements.d.ts +3 -0
  560. package/dist/configurator/ui/assistant/form/registry/built-in-form-elements.js +1 -0
  561. package/dist/configurator/ui/assistant/form/registry/create-assistant-form-element.d.ts +31 -0
  562. package/dist/configurator/ui/assistant/form/registry/create-assistant-form-element.js +1 -0
  563. package/dist/configurator/ui/assistant/form/registry/form-element-definition.d.ts +16 -0
  564. package/dist/configurator/ui/assistant/form/registry/form-element-definition.js +1 -0
  565. package/dist/configurator/ui/assistant/form/registry/form-registry.d.ts +31 -0
  566. package/dist/configurator/ui/assistant/form/registry/form-registry.js +1 -0
  567. package/dist/configurator/ui/assistant/form/registry/index.d.ts +6 -0
  568. package/dist/configurator/ui/assistant/form/registry/index.js +1 -0
  569. package/dist/configurator/ui/assistant/form/registry/use-form-registry.d.ts +8 -0
  570. package/dist/configurator/ui/assistant/form/registry/use-form-registry.js +1 -0
  571. package/dist/configurator/ui/assistant/form-elements/FormCard.d.ts +9 -0
  572. package/dist/configurator/ui/assistant/form-elements/FormCard.js +1 -0
  573. package/dist/configurator/ui/assistant/form-elements/FormConfirm.d.ts +9 -0
  574. package/dist/configurator/ui/assistant/form-elements/FormConfirm.js +1 -0
  575. package/dist/configurator/ui/assistant/form-elements/FormGroup.d.ts +6 -0
  576. package/dist/configurator/ui/assistant/form-elements/FormGroup.js +1 -0
  577. package/dist/configurator/ui/assistant/form-elements/FormNumber.d.ts +9 -0
  578. package/dist/configurator/ui/assistant/form-elements/FormNumber.js +1 -0
  579. package/dist/configurator/ui/assistant/form-elements/FormOptions.d.ts +6 -0
  580. package/dist/configurator/ui/assistant/form-elements/FormOptions.js +1 -0
  581. package/dist/configurator/ui/assistant/form-elements/FormReply.d.ts +6 -0
  582. package/dist/configurator/ui/assistant/form-elements/FormReply.js +1 -0
  583. package/dist/configurator/ui/assistant/form-elements/FormSwatch.d.ts +10 -0
  584. package/dist/configurator/ui/assistant/form-elements/FormSwatch.js +1 -0
  585. package/dist/configurator/ui/assistant/form-elements/FormText.d.ts +6 -0
  586. package/dist/configurator/ui/assistant/form-elements/FormText.js +1 -0
  587. package/dist/configurator/ui/assistant/form-elements/clamp-form-number.d.ts +10 -0
  588. package/dist/configurator/ui/assistant/form-elements/clamp-form-number.js +1 -0
  589. package/dist/configurator/ui/assistant/form-elements/form-element-props.d.ts +38 -0
  590. package/dist/configurator/ui/assistant/form-elements/form-element-props.js +1 -0
  591. package/dist/configurator/ui/assistant/form-elements/index.d.ts +9 -0
  592. package/dist/configurator/ui/assistant/form-elements/index.js +1 -0
  593. package/dist/configurator/ui/assistant/index.d.ts +3 -0
  594. package/dist/configurator/ui/assistant/index.js +1 -1
  595. package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.d.ts +16 -0
  596. package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.js +1 -0
  597. package/dist/configurator/ui/assistant/reference-link/assistant-link-target.d.ts +34 -0
  598. package/dist/configurator/ui/assistant/reference-link/assistant-link-target.js +1 -0
  599. package/dist/configurator/ui/assistant/reference-link/assistant-reference-details.d.ts +25 -0
  600. package/dist/configurator/ui/assistant/reference-link/assistant-reference-details.js +1 -0
  601. package/dist/configurator/ui/assistant/reference-link/index.d.ts +3 -0
  602. package/dist/configurator/ui/assistant/reference-link/index.js +1 -0
  603. package/dist/configurator/ui/assistant/reference-link/reference-styles.d.ts +12 -0
  604. package/dist/configurator/ui/assistant/reference-link/reference-styles.js +1 -0
  605. package/dist/configurator/ui/assistant/reference-link/use-assistant-reference-details.d.ts +8 -0
  606. package/dist/configurator/ui/assistant/reference-link/use-assistant-reference-details.js +1 -0
  607. package/dist/configurator/ui/assistant/resource-image/AssistantImage.d.ts +9 -0
  608. package/dist/configurator/ui/assistant/resource-image/AssistantImage.js +1 -0
  609. package/dist/configurator/ui/assistant/resource-image/index.d.ts +3 -0
  610. package/dist/configurator/ui/assistant/resource-image/index.js +1 -0
  611. package/dist/configurator/ui/assistant/resource-image/resource-path.d.ts +2 -0
  612. package/dist/configurator/ui/assistant/resource-image/resource-path.js +1 -0
  613. package/dist/configurator/ui/assistant/resource-image/use-resource-image-url.d.ts +5 -0
  614. package/dist/configurator/ui/assistant/resource-image/use-resource-image-url.js +1 -0
  615. package/dist/configurator/ui/assistant/screenshots/ScreenshotThumbnails.d.ts +9 -0
  616. package/dist/configurator/ui/assistant/screenshots/ScreenshotThumbnails.js +1 -0
  617. package/dist/configurator/ui/assistant/screenshots/index.d.ts +2 -0
  618. package/dist/configurator/ui/assistant/screenshots/index.js +1 -0
  619. package/dist/configurator/ui/assistant/screenshots/tool-screenshots.d.ts +22 -0
  620. package/dist/configurator/ui/assistant/screenshots/tool-screenshots.js +1 -0
  621. package/dist/configurator/ui/assistant/screenshots/use-screenshot-src.d.ts +8 -0
  622. package/dist/configurator/ui/assistant/screenshots/use-screenshot-src.js +1 -0
  623. package/dist/configurator/ui/assistant/streamed-markdown.d.ts +4 -2
  624. package/dist/configurator/ui/assistant/streamed-markdown.js +2 -2
  625. package/dist/configurator/ui/assistant/thread-items.d.ts +8 -1
  626. package/dist/configurator/ui/assistant/thread-items.js +1 -1
  627. package/dist/configurator/ui/assistant/tool-chip.d.ts +19 -9
  628. package/dist/configurator/ui/assistant/tool-chip.js +1 -1
  629. package/dist/configurator/ui/assistant/use-follow-stream.js +1 -1
  630. package/dist/configurator/ui/configurator-layout/sidebar-keys/index.d.ts +1 -0
  631. package/dist/configurator/ui/configurator-layout/sidebar-keys/index.js +1 -0
  632. package/dist/configurator/ui/configurator-layout/sidebar-keys/sidebar-keys.d.ts +11 -0
  633. package/dist/configurator/ui/configurator-layout/sidebar-keys/sidebar-keys.js +1 -0
  634. package/dist/configurator/ui/configurator-layout/slots/canvas/GPUAccelerationDisabled.js +1 -1
  635. package/dist/configurator/ui/configurator-layout/slots/canvas/LayoutCanvas.js +1 -1
  636. package/dist/configurator/ui/configurator-layout/slots/canvas/SharedCanvas.js +1 -1
  637. package/dist/configurator/ui/configurator-layout/slots/canvas/WebGLNotSupported.js +1 -1
  638. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/DesktopSidebar.d.ts +101 -0
  639. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/DesktopSidebar.js +16 -0
  640. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/index.d.ts +1 -0
  641. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/index.js +1 -0
  642. package/dist/configurator/ui/configurator-layout/slots/mobile-tabs/use-mobile-tabs.d.ts +1 -1
  643. package/dist/configurator/ui/configurator-layout/slots/mobile-tabs/use-mobile-tabs.js +1 -1
  644. package/dist/configurator/ui/configurator-layout/slots/readonly-banner/CloneToEditDialog.js +1 -1
  645. package/dist/configurator/ui/configurator-layout/slots/services/InvariantViolations.d.ts +4 -4
  646. package/dist/configurator/ui/configurator-layout/slots/services/InvariantViolations.js +1 -1
  647. package/dist/configurator/ui/configurator-layout/slots/services/Services.js +1 -1
  648. package/dist/configurator/ui/configurator-layout/slots/services/SideEffects.d.ts +3 -6
  649. package/dist/configurator/ui/configurator-layout/slots/services/SideEffects.js +1 -1
  650. package/dist/configurator/ui/configurator-layout/slots/sidebar-tabs/use-sidebar-tabs.d.ts +1 -1
  651. package/dist/configurator/ui/configurator-layout/slots/sidebar-tabs/use-sidebar-tabs.js +1 -1
  652. package/dist/configurator/ui/configurator-layout/slots/slots.d.ts +1 -0
  653. package/dist/configurator/ui/configurator-layout/slots/slots.js +1 -1
  654. package/dist/configurator/ui/configurator-layout/universal/DesktopLayout.d.ts +0 -74
  655. package/dist/configurator/ui/configurator-layout/universal/DesktopLayout.js +5 -20
  656. package/dist/configurator/ui/configurator-layout/universal/DesktopPreview.js +1 -1
  657. package/dist/configurator/ui/configurator-layout/universal/ExportingOverlay.d.ts +5 -0
  658. package/dist/configurator/ui/configurator-layout/universal/ExportingOverlay.js +1 -0
  659. package/dist/configurator/ui/configurator-layout/universal/Layout.js +1 -1
  660. package/dist/configurator/ui/configurator-layout/universal/MobileLayout.js +4 -4
  661. package/dist/configurator/ui/configurator-layout/universal/MobilePreview.js +1 -1
  662. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.d.ts +47 -0
  663. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.js +1 -0
  664. package/dist/configurator/ui/configurator-layout/universal/use-scene-safe-area.d.ts +11 -26
  665. package/dist/configurator/ui/configurator-layout/universal/use-scene-safe-area.js +1 -1
  666. package/dist/configurator/ui/index.d.ts +1 -0
  667. package/dist/configurator/ui/index.js +1 -1
  668. package/dist/configurator/ui/legacy/chat/MobileChat.js +1 -1
  669. package/dist/configurator/ui/legacy/layout/common/CommonFinalizeButton.js +1 -1
  670. package/dist/configurator/ui/legacy/layout/common/CommonSummaryButton.js +1 -1
  671. package/dist/configurator/ui/legacy/layout/common/CommonTopNavigation.js +1 -1
  672. package/dist/configurator/ui/legacy/layout/common/ReactiveInterfaceLayout.js +1 -1
  673. package/dist/configurator/ui/legacy/layout/common/ResponsiveFinalizeButton.js +1 -1
  674. package/dist/configurator/ui/legacy/layout/common/SummaryReadLayout.js +1 -1
  675. package/dist/configurator/ui/legacy/layout/simple/SimpleOwnerLayout.js +1 -1
  676. package/dist/configurator/ui/legacy/layout/simple/SimpleSidebar.js +1 -1
  677. package/dist/configurator/ui/legacy/layout/simple/SimpleTopNavigation.js +1 -1
  678. package/dist/configurator/ui/legacy/layout/steps/StepsNavigation.d.ts +2 -2
  679. package/dist/configurator/ui/legacy/layout/steps/StepsNavigation.js +1 -1
  680. package/dist/configurator/ui/legacy/layout/steps/StepsOwnerLayout.js +1 -1
  681. package/dist/configurator/ui/legacy/layout/steps/StepsSideBar.js +1 -1
  682. package/dist/configurator/ui/legacy/layout/steps/StepsSidebarFooter.js +1 -1
  683. package/dist/configurator/ui/legacy/layout/tabs/TabsOwnerLayout.js +1 -1
  684. package/dist/configurator/ui/legacy/layout/tabs/TabsSidebar.js +1 -1
  685. package/dist/configurator/ui/legacy/toolbar/common/DimensionUnitSelector.js +1 -1
  686. package/dist/configurator/ui/legacy/toolbar/common/MeasurementsIndicatorsSwitch.js +1 -1
  687. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/FullscreenToolbarAction.js +1 -1
  688. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/HelpToolbarAction.js +1 -1
  689. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/MeasurementsToolbarAction.js +1 -1
  690. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/UndoRedoToolbarGroup.js +1 -1
  691. package/dist/configurator/ui/phoenix-layout-elements/AppLoader.d.ts +0 -7
  692. package/dist/configurator/ui/phoenix-layout-elements/AppLoader.js +2 -6
  693. package/dist/configurator/ui/phoenix-layout-elements/AssistantToolbarButton.js +1 -1
  694. package/dist/configurator/ui/phoenix-layout-elements/EnterFullscreenToolbarButton.js +1 -1
  695. package/dist/configurator/ui/phoenix-layout-elements/ExitFullscreenToolbarButton.js +1 -1
  696. package/dist/configurator/ui/phoenix-layout-elements/HelpToolbarButton.js +1 -1
  697. package/dist/configurator/ui/phoenix-layout-elements/LanguageMenuAction.js +1 -1
  698. package/dist/configurator/ui/phoenix-layout-elements/LanguageToolbarButton.js +1 -1
  699. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomOwnerUi.d.ts +1 -0
  700. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomOwnerUi.js +1 -1
  701. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomReadUi.d.ts +1 -0
  702. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomReadUi.js +1 -1
  703. package/dist/configurator/ui/phoenix-layout-elements/MeasurementsMenuAction.js +1 -1
  704. package/dist/configurator/ui/phoenix-layout-elements/MeasurementsToolbarButton.js +1 -1
  705. package/dist/configurator/ui/phoenix-layout-elements/RedoToolbarButton.js +1 -1
  706. package/dist/configurator/ui/phoenix-layout-elements/ShareToolbarButton.js +1 -1
  707. package/dist/configurator/ui/phoenix-layout-elements/UndoToolbarButton.js +1 -1
  708. package/dist/configurator/ui/phoenix-layout-elements/header/common/back-button/use-go-back-action.js +1 -1
  709. package/dist/configurator/ui/phoenix-layout-elements/header/common/horizontal-tabs/DesktopHorizontalTabs.js +1 -1
  710. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/DesktopNavigationSteps.d.ts +1 -1
  711. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/DesktopNavigationSteps.js +1 -1
  712. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.d.ts +2 -8
  713. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.js +1 -1
  714. package/dist/configurator/ui/phoenix-layout-elements/index.d.ts +8 -1
  715. package/dist/configurator/ui/phoenix-layout-elements/index.js +1 -1
  716. package/dist/configurator/ui/phoenix-layout-elements/measurements/DimensionUnitSelector.js +1 -1
  717. package/dist/configurator/ui/phoenix-layout-elements/measurements/MeasurementsIndicatorsSwitch.js +1 -1
  718. package/dist/configurator/ui/phoenix-layout-elements/share/ShareModal.js +1 -1
  719. package/dist/configurator/ui/phoenix-layout-elements/share/use-share.d.ts +7 -8
  720. package/dist/configurator/ui/phoenix-layout-elements/share/use-share.js +1 -1
  721. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/basic/BasicFinalizeButton.js +1 -1
  722. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/CustomFinalizeButton.js +1 -1
  723. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/EnterSummaryButton.js +1 -1
  724. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/FinalizeActions.js +1 -1
  725. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/NextStepButton.js +1 -1
  726. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/PreviousStepButton.js +1 -1
  727. package/dist/configurator/ui/preset-layout/CategoryPresetUi.js +1 -1
  728. package/dist/configurator/ui/preset-layout/PresetUi.d.ts +4 -2
  729. package/dist/configurator/ui/preset-layout/PresetUi.js +1 -1
  730. package/dist/configurator/ui/preset-layout/index.d.ts +6 -1
  731. package/dist/configurator/ui/preset-layout/index.js +1 -1
  732. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.d.ts +10 -0
  733. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.js +1 -0
  734. package/dist/configurator/ui/save-message-snackbars/index.d.ts +1 -0
  735. package/dist/configurator/ui/save-message-snackbars/index.js +1 -0
  736. package/dist/docs/3d-scene/cameras/custom.mdx +4 -2
  737. package/dist/docs/complex-use-cases/filtered-controls-with-fix-dialog.mdx +16 -19
  738. package/dist/docs/complex-use-cases/focus-mode.mdx +2 -0
  739. package/dist/docs/complex-use-cases/sketching.mdx +0 -38
  740. package/dist/docs/controls/select-attribute/cardselect.mdx +9 -13
  741. package/dist/docs/controls/select-child-entity/cardselect.mdx +1 -0
  742. package/dist/docs/dimensions/3d-scene-integration/dimension-indicators.mdx +2 -2
  743. package/dist/docs/dimensions/3d-scene-integration/editable-angle-indicator.mdx +1 -1
  744. package/dist/docs/dimensions/3d-scene-integration/editable-distance-dimension-indicator.mdx +1 -1
  745. package/dist/docs/dimensions/3d-scene-integration/list-selector-dimension-indicator.mdx +1 -1
  746. package/dist/docs/drag-and-drop/drag-handle.mdx +1 -1
  747. package/dist/docs/drag-and-drop/hotspot-handle.mdx +1 -1
  748. package/dist/docs/drag-and-drop/planes.mdx +1 -1
  749. package/dist/docs/drag-and-drop/room-planner.mdx +1 -1
  750. package/dist/docs/drag-and-drop/rotatable.mdx +2 -2
  751. package/dist/docs/fabs/basic.mdx +6 -2
  752. package/dist/docs/index.json +136 -1
  753. package/dist/docs/integrations/webcomponent-api/basics.mdx +2 -0
  754. package/dist/docs/integrations/woocommerce/local-development.mdx +1 -1
  755. package/dist/docs/layouts/custom-layout.mdx +2597 -0
  756. package/dist/docs/layouts/gallery/ardent-compressor.mdx +3516 -0
  757. package/dist/docs/layouts/gallery/corvid-drone.mdx +3428 -0
  758. package/dist/docs/layouts/gallery/fenwick-window.mdx +2803 -0
  759. package/dist/docs/layouts/gallery/ferrule-bar-station.mdx +6567 -0
  760. package/dist/docs/layouts/gallery/kestrel-kettle.mdx +1858 -0
  761. package/dist/docs/layouts/gallery/nightjar-guitar.mdx +3698 -0
  762. package/dist/docs/layouts/gallery/sunfold-solar.mdx +2683 -0
  763. package/dist/docs/layouts/gallery/tidepool-aquascape.mdx +5203 -0
  764. package/dist/docs/layouts/header/fixed.mdx +2 -2
  765. package/dist/docs/layouts/header/floating.mdx +2 -2
  766. package/dist/docs/layouts/sidebar/in-a-custom-layout.mdx +380 -0
  767. package/dist/docs/layouts/sidebar-footer/basic.mdx +32 -77
  768. package/dist/docs/other-features/client-side-rendering/declarative.mdx +2 -2
  769. package/dist/docs/other-features/error-5xx.mdx +1 -1
  770. package/dist/docs/other-features/navigation-hotspot.mdx +2 -0
  771. package/dist/docs/other-features/not-found-404.mdx +1 -1
  772. package/dist/docs/other-features/side-effects.mdx +8 -11
  773. package/dist/docs/other-features/transformers.mdx +4 -0
  774. package/dist/docs/other-features/violation-messages.mdx +52 -56
  775. package/dist/docs/phoenix/application-states.mdx +9 -7
  776. package/dist/docs/phoenix/clerk-sign-in.mdx +1 -1
  777. package/dist/docs/phoenix/components.mdx +6 -0
  778. package/dist/docs/phoenix/configurator-interface.mdx +377 -83
  779. package/dist/docs/phoenix/deployments.mdx +2 -6
  780. package/dist/docs/phoenix/domain-model.mdx +10 -1
  781. package/dist/docs/phoenix/finalization.mdx +1 -1
  782. package/dist/docs/phoenix/getting-started.mdx +6 -3
  783. package/dist/docs/phoenix/layout-slots.mdx +137 -0
  784. package/dist/docs/phoenix/localization.mdx +10 -6
  785. package/dist/docs/phoenix/migration-guide.mdx +24 -11
  786. package/dist/docs/phoenix/phoenix-cli.mdx +101 -48
  787. package/dist/docs/phoenix/project-structure.mdx +83 -37
  788. package/dist/docs/phoenix/quickstart.mdx +9 -9
  789. package/dist/docs/phoenix/sdk-builder-workflow.mdx +15 -13
  790. package/dist/docs/phoenix/sessions-and-access.mdx +2 -0
  791. package/dist/docs/phoenix/testing.mdx +148 -0
  792. package/dist/docs/phoenix/webhook-membership.mdx +10 -9
  793. package/dist/docs/phoenix/webhooks.mdx +27 -6
  794. package/dist/docs/selection-and-highlight/hotspots.mdx +2 -0
  795. package/dist/domain/admin-domain/implementation/common-admin-expressions.d.ts +26 -11
  796. package/dist/domain/admin-domain/implementation/common-admin-publish.d.ts +1 -2
  797. package/dist/domain/admin-domain/index.js +1 -1
  798. package/dist/domain/application/GetApplicationWrapperHandler.d.ts +1 -1
  799. package/dist/domain/application/application-config.d.ts +13 -27
  800. package/dist/domain/application/assistant/assistant-fields.d.ts +12 -0
  801. package/dist/domain/application/assistant/assistant-fields.js +1 -0
  802. package/dist/domain/application/assistant/assistant-manifest.d.ts +38 -5
  803. package/dist/domain/application/assistant/assistant-manifest.js +1 -1
  804. package/dist/domain/application/assistant/assistant-resolved-manifest.d.ts +48 -9
  805. package/dist/domain/application/assistant/build-assistant-lenses.d.ts +14 -0
  806. package/dist/domain/application/assistant/build-assistant-lenses.js +5 -0
  807. package/dist/domain/application/assistant/build-assistant-manifest.js +1 -1
  808. package/dist/domain/application/assistant/create-assistant-execution-schema.d.ts +32 -0
  809. package/dist/domain/application/assistant/create-assistant-execution-schema.js +1 -0
  810. package/dist/domain/application/assistant/form/assistant-form-element-name.d.ts +11 -0
  811. package/dist/domain/application/assistant/form/assistant-form-element-name.js +8 -0
  812. package/dist/domain/application/assistant/form/assistant-form-elements.d.ts +174 -0
  813. package/dist/domain/application/assistant/form/assistant-form-elements.js +1 -0
  814. package/dist/domain/application/assistant/form/assistant-resource-path.d.ts +10 -0
  815. package/dist/domain/application/assistant/form/assistant-resource-path.js +1 -0
  816. package/dist/domain/application/assistant/form/index.d.ts +4 -0
  817. package/dist/domain/application/assistant/form/index.js +1 -0
  818. package/dist/domain/application/assistant/generate-assistant-prompt.d.ts +3 -0
  819. package/dist/domain/application/assistant/generate-assistant-prompt.js +1 -1
  820. package/dist/domain/application/assistant/index.d.ts +8 -2
  821. package/dist/domain/application/assistant/index.js +1 -1
  822. package/dist/domain/application/assistant/session-setup/AssistantSetupHandler.d.ts +20 -0
  823. package/dist/domain/application/assistant/session-setup/AssistantSetupHandler.js +1 -0
  824. package/dist/domain/application/assistant/session-setup/apply-assistant-setup.d.ts +10 -0
  825. package/dist/domain/application/assistant/session-setup/apply-assistant-setup.js +1 -0
  826. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.d.ts +48 -0
  827. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.js +1 -0
  828. package/dist/domain/application/assistant/session-setup/create-session-assistant.d.ts +15 -0
  829. package/dist/domain/application/assistant/session-setup/create-session-assistant.js +1 -0
  830. package/dist/domain/application/assistant/session-setup/index.d.ts +4 -0
  831. package/dist/domain/application/assistant/session-setup/index.js +1 -0
  832. package/dist/domain/application/assistant-mutations.js +1 -1
  833. package/dist/domain/application/assistant-recipe-groups.d.ts +3 -1
  834. package/dist/domain/application/configurator-builder.d.ts +11 -2
  835. package/dist/domain/application/configurator-builder.js +1 -1
  836. package/dist/domain/application/create-initial-published-data.d.ts +5 -5
  837. package/dist/domain/application/index.d.ts +1 -2
  838. package/dist/domain/application/index.js +1 -1
  839. package/dist/domain/application/published-data/map-published-chunked-data.d.ts +1 -1
  840. package/dist/domain/application/published-data/map-published-data.d.ts +7 -3
  841. package/dist/domain/application/standard-properties.js +1 -1
  842. package/dist/domain/application/web-component-property.d.ts +3 -1
  843. package/dist/domain/application/web-component-property.js +1 -1
  844. package/dist/domain/available-system-components.d.ts +1 -1
  845. package/dist/domain/available-system-components.js +1 -1
  846. package/dist/domain/core/component/domain-component-optic.d.ts +1 -2
  847. package/dist/domain/core/component/domain-component-optic.js +2 -2
  848. package/dist/domain/core/component/system-component-filter.d.ts +15 -2
  849. package/dist/domain/core/expression/constant-expressions.d.ts +16 -8
  850. package/dist/domain/core/expression/custom-expression.d.ts +16 -3
  851. package/dist/domain/core/invariant/custom-invariants.d.ts +6 -14
  852. package/dist/domain/core/invariant/invariants.d.ts +1 -4
  853. package/dist/domain/core/invariant/violation.d.ts +50 -2
  854. package/dist/domain/core/invariant/violation.js +1 -1
  855. package/dist/domain/core/model/model.d.ts +1 -1
  856. package/dist/domain/core/recipe/recipes.d.ts +18 -50
  857. package/dist/domain/core/recipe/recipes.js +1 -1
  858. package/dist/domain/core/relation/all-of-type-relation.d.ts +8 -21
  859. package/dist/domain/core/relation/all-of-type-relation.js +1 -1
  860. package/dist/domain/core/relation/direct-relation.d.ts +13 -24
  861. package/dist/domain/core/relation/index.d.ts +0 -1
  862. package/dist/domain/core/relation/indirect-relation.d.ts +12 -67
  863. package/dist/domain/core/relation/indirect-relation.js +1 -1
  864. package/dist/domain/core/relation/relation-factory.d.ts +19 -15
  865. package/dist/domain/core/relation/relation-factory.js +1 -1
  866. package/dist/domain/core/schema/extended-schema-validator.js +1 -1
  867. package/dist/domain/core/state/state.d.ts +1 -1
  868. package/dist/domain/domain-builder.d.ts +9 -3
  869. package/dist/domain/domain-builder.js +1 -1
  870. package/dist/domain/domain-context/index.d.ts +1 -1
  871. package/dist/domain/domain-context/store-system/store-system.d.ts +5 -0
  872. package/dist/domain/domain-context/store-system/store-system.js +1 -1
  873. package/dist/domain/domain-context/undo-system.d.ts +28 -1
  874. package/dist/domain/domain-context/undo-system.js +1 -1
  875. package/dist/domain/domain-runtime/access/selectors.d.ts +9 -0
  876. package/dist/domain/domain-runtime/access/selectors.js +1 -1
  877. package/dist/domain/domain-runtime/access/types.d.ts +2 -0
  878. package/dist/domain/domain-runtime/access/types.js +1 -1
  879. package/dist/domain/domain-runtime/application.d.ts +39 -0
  880. package/dist/domain/domain-runtime/application.js +1 -0
  881. package/dist/domain/domain-runtime/domain-context/selectors.d.ts +15 -13
  882. package/dist/domain/domain-runtime/domain-context/selectors.js +1 -1
  883. package/dist/domain/domain-runtime/domain-context/types.d.ts +4 -1
  884. package/dist/domain/domain-runtime/domain-runtime.d.ts +76 -20
  885. package/dist/domain/domain-runtime/domain-runtime.js +1 -1
  886. package/dist/domain/domain-runtime/environment/initialize.d.ts +1 -1
  887. package/dist/domain/domain-runtime/environment/types.d.ts +1 -1
  888. package/dist/domain/domain-runtime/errors/implementation-error-collector.d.ts +21 -0
  889. package/dist/domain/domain-runtime/errors/implementation-error-collector.js +1 -0
  890. package/dist/domain/domain-runtime/errors/implementation-error.d.ts +46 -0
  891. package/dist/domain/domain-runtime/errors/implementation-error.js +1 -0
  892. package/dist/domain/domain-runtime/errors/implementation-errors.d.ts +13 -0
  893. package/dist/domain/domain-runtime/errors/implementation-errors.js +1 -0
  894. package/dist/domain/domain-runtime/errors/index.d.ts +4 -0
  895. package/dist/domain/domain-runtime/errors/index.js +1 -0
  896. package/dist/domain/domain-runtime/errors/to-implementation-errors.d.ts +10 -0
  897. package/dist/domain/domain-runtime/errors/to-implementation-errors.js +1 -0
  898. package/dist/domain/domain-runtime/index.d.ts +2 -0
  899. package/dist/domain/domain-runtime/index.js +1 -1
  900. package/dist/domain/domain-runtime/spec/create-violation-expressions.d.ts +24 -0
  901. package/dist/domain/domain-runtime/spec/create-violation-expressions.js +1 -0
  902. package/dist/domain/domain-runtime/spec/index.d.ts +2 -2
  903. package/dist/domain/domain-runtime/spec/index.js +1 -1
  904. package/dist/domain/domain-runtime/spec/initialize.d.ts +11 -0
  905. package/dist/domain/domain-runtime/spec/initialize.js +1 -1
  906. package/dist/domain/domain-runtime/spec/module-checks/element-registration.d.ts +27 -12
  907. package/dist/domain/domain-runtime/spec/module-checks/element-registration.js +1 -1
  908. package/dist/domain/domain-runtime/spec/module-checks/find-assistant-form-element-errors.d.ts +12 -0
  909. package/dist/domain/domain-runtime/spec/module-checks/find-assistant-form-element-errors.js +1 -0
  910. package/dist/domain/domain-runtime/spec/module-checks/index.d.ts +4 -2
  911. package/dist/domain/domain-runtime/spec/module-checks/index.js +1 -1
  912. package/dist/domain/domain-runtime/spec/module-checks/merge-expression-modules.d.ts +23 -0
  913. package/dist/domain/domain-runtime/spec/module-checks/merge-expression-modules.js +1 -0
  914. package/dist/domain/domain-runtime/spec/module-checks/project-modules.d.ts +8 -1
  915. package/dist/domain/domain-runtime/spec/module-checks/project-modules.js +1 -1
  916. package/dist/domain/domain-runtime/spec/module-checks/resolve-action-modules.js +1 -1
  917. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.d.ts +3 -4
  918. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.js +1 -1
  919. package/dist/domain/domain-runtime/spec/module-checks/resolve-imported-transformers.d.ts +7 -7
  920. package/dist/domain/domain-runtime/spec/module-checks/resolve-imported-transformers.js +1 -1
  921. package/dist/domain/domain-runtime/spec/module-checks/resolve-invariant-modules.d.ts +2 -2
  922. package/dist/domain/domain-runtime/spec/module-checks/resolve-invariant-modules.js +1 -1
  923. package/dist/domain/domain-runtime/spec/selectors.d.ts +3 -1
  924. package/dist/domain/domain-runtime/spec/selectors.js +1 -1
  925. package/dist/domain/domain-runtime/spec/types.d.ts +2 -0
  926. package/dist/domain/domain-runtime/web-component/actions.d.ts +3 -0
  927. package/dist/domain/domain-runtime/web-component/actions.js +1 -1
  928. package/dist/domain/domain-runtime/web-component/initialize.d.ts +1 -0
  929. package/dist/domain/domain-runtime/web-component/initialize.js +1 -1
  930. package/dist/domain/domain-runtime/web-component/selectors.d.ts +2 -0
  931. package/dist/domain/domain-runtime/web-component/selectors.js +1 -1
  932. package/dist/domain/domain-runtime/web-component/types.d.ts +6 -3
  933. package/dist/domain/extensions/attribute-switch.d.ts +1 -1
  934. package/dist/domain/extensions/attribute-switch.js +1 -1
  935. package/dist/domain/extensions/canvas-config.d.ts +1 -1
  936. package/dist/domain/extensions/common/angle-indicator-schema.d.ts +2 -2
  937. package/dist/domain/extensions/common/dimension-indicator-schema.d.ts +2 -2
  938. package/dist/domain/extensions/editable-angle-indicator.d.ts +1 -1
  939. package/dist/domain/extensions/editable-distance-dimension-indicator.d.ts +1 -1
  940. package/dist/domain/extensions/editable-offset-indicator.d.ts +1 -1
  941. package/dist/domain/extensions/editable-offset-indicator.js +1 -1
  942. package/dist/domain/extensions/export-images/agent-screenshot.d.ts +24 -0
  943. package/dist/domain/extensions/export-images/agent-screenshot.js +1 -0
  944. package/dist/domain/extensions/export-images/client-side-image.d.ts +14 -0
  945. package/dist/domain/extensions/export-images/client-side-image.js +1 -0
  946. package/dist/domain/extensions/export-images/index.d.ts +3 -0
  947. package/dist/domain/extensions/export-images/index.js +1 -0
  948. package/dist/domain/extensions/{save-template-thumbnail.d.ts → export-images/save-template-thumbnail.d.ts} +4 -4
  949. package/dist/domain/extensions/export-images/save-template-thumbnail.js +1 -0
  950. package/dist/domain/extensions/fit-selection-orthographic-camera-component.js +1 -1
  951. package/dist/domain/extensions/fit-selection-perspective-camera-component.js +1 -1
  952. package/dist/domain/extensions/horizontal-tabs.d.ts +2 -2
  953. package/dist/domain/extensions/index.d.ts +1 -2
  954. package/dist/domain/extensions/index.js +1 -1
  955. package/dist/domain/extensions/list-selector-dimension-indicator.d.ts +1 -1
  956. package/dist/domain/extensions/navigation-steps.d.ts +2 -2
  957. package/dist/domain/extensions/offset-indicator.js +1 -1
  958. package/dist/domain/extensions/rotation-handle.d.ts +2 -2
  959. package/dist/domain/extensions/scene-entity-animation.js +1 -1
  960. package/dist/domain/index.d.ts +1 -0
  961. package/dist/domain/index.js +1 -1
  962. package/dist/domain/mocks/create-mock-domain-context.d.ts +1 -1
  963. package/dist/domain/mocks/create-mock-domain-runtime.d.ts +27 -9
  964. package/dist/domain/mocks/create-mock-domain-runtime.js +1 -1
  965. package/dist/domain/mocks/create-mock-domain.d.ts +1 -1
  966. package/dist/domain/mocks/create-mock-domain.js +1 -1
  967. package/dist/domain/mocks/create-mock-state.d.ts +2 -2
  968. package/dist/domain/mocks/create-test-application-config.d.ts +59 -0
  969. package/dist/domain/mocks/create-test-application-config.js +1 -0
  970. package/dist/domain/mocks/index.d.ts +1 -0
  971. package/dist/domain/mocks/index.js +1 -1
  972. package/dist/domain/projections/blender-projections/camera.d.ts +1 -1
  973. package/dist/domain/spec/application/admin-pages-section.d.ts +29 -0
  974. package/dist/domain/spec/application/admin-pages-section.js +1 -0
  975. package/dist/domain/spec/application/admin-pages.d.ts +26 -0
  976. package/dist/domain/spec/application/admin-pages.js +1 -0
  977. package/dist/domain/spec/application/admin-states.d.ts +5 -0
  978. package/dist/domain/spec/application/admin-states.js +1 -0
  979. package/dist/domain/spec/application/configurator-states.d.ts +8 -0
  980. package/dist/domain/spec/application/configurator-states.js +1 -0
  981. package/dist/domain/spec/application/index.d.ts +5 -0
  982. package/dist/domain/spec/application/index.js +1 -0
  983. package/dist/domain/spec/components/bindings/index.d.ts +2 -0
  984. package/dist/domain/spec/components/bindings/index.js +1 -0
  985. package/dist/domain/spec/components/bindings/read-binding.d.ts +13 -0
  986. package/dist/domain/spec/components/bindings/read-binding.js +1 -0
  987. package/dist/domain/spec/components/bindings/write-binding.d.ts +32 -0
  988. package/dist/domain/spec/components/bindings/write-binding.js +1 -0
  989. package/dist/{application-spec/parse-application-files → domain}/spec/components/component-entry.d.ts +3 -11
  990. package/dist/domain/spec/components/component-entry.js +1 -0
  991. package/dist/domain/spec/components/component-filter.d.ts +54 -0
  992. package/dist/domain/spec/components/component-filter.js +1 -0
  993. package/dist/domain/spec/components/component-filters.d.ts +10 -0
  994. package/dist/domain/spec/components/component-filters.js +1 -0
  995. package/dist/domain/spec/components/components.d.ts +4 -0
  996. package/dist/domain/spec/components/components.js +1 -0
  997. package/dist/domain/spec/components/index.d.ts +6 -0
  998. package/dist/domain/spec/components/index.js +1 -0
  999. package/dist/domain/spec/components/sdk-code-ref.d.ts +9 -0
  1000. package/dist/domain/spec/enhanced-json-value.d.ts +30 -0
  1001. package/dist/domain/spec/enhanced-json-value.js +1 -0
  1002. package/dist/{application-spec/parse-application-files → domain}/spec/expressions/expression.d.ts +9 -30
  1003. package/dist/domain/spec/expressions/expression.js +1 -0
  1004. package/dist/domain/spec/expressions/expressions.d.ts +27 -0
  1005. package/dist/domain/spec/expressions/expressions.js +1 -0
  1006. package/dist/domain/spec/expressions/index.d.ts +5 -0
  1007. package/dist/domain/spec/expressions/index.js +1 -0
  1008. package/dist/domain/spec/expressions/memo-eval-plan.d.ts +70 -0
  1009. package/dist/domain/spec/expressions/memo-eval-plan.js +1 -0
  1010. package/dist/domain/spec/expressions/relation-expression-params.d.ts +11 -0
  1011. package/dist/domain/spec/expressions/relation-expression-params.js +1 -0
  1012. package/dist/domain/spec/expressions/sdk-expression-implementation.d.ts +24 -0
  1013. package/dist/domain/spec/index.d.ts +9 -0
  1014. package/dist/domain/spec/index.js +1 -0
  1015. package/dist/domain/spec/invariants/index.d.ts +2 -0
  1016. package/dist/domain/spec/invariants/index.js +1 -0
  1017. package/dist/domain/spec/invariants/invariant.d.ts +24 -0
  1018. package/dist/domain/spec/invariants/invariant.js +1 -0
  1019. package/dist/domain/spec/invariants/invariants.d.ts +14 -0
  1020. package/dist/domain/spec/invariants/invariants.js +1 -0
  1021. package/dist/domain/spec/json-schema.d.ts +52 -0
  1022. package/dist/domain/spec/json-schema.js +1 -0
  1023. package/dist/domain/spec/markers/index.d.ts +3 -0
  1024. package/dist/domain/spec/markers/index.js +1 -0
  1025. package/dist/domain/spec/markers/msg-marker.d.ts +28 -0
  1026. package/dist/domain/spec/markers/msg-marker.js +1 -0
  1027. package/dist/domain/spec/model/aliases.d.ts +9 -0
  1028. package/dist/domain/spec/model/aliases.js +1 -0
  1029. package/dist/domain/spec/model/common-types.d.ts +15 -0
  1030. package/dist/domain/spec/model/common-types.js +1 -0
  1031. package/dist/domain/spec/model/defaults.d.ts +33 -0
  1032. package/dist/domain/spec/model/defaults.js +1 -0
  1033. package/dist/domain/spec/model/entity-types.d.ts +8 -0
  1034. package/dist/domain/spec/model/entity-types.js +1 -0
  1035. package/dist/domain/spec/model/index.d.ts +7 -0
  1036. package/dist/domain/spec/model/index.js +1 -0
  1037. package/dist/domain/spec/model/model-version-key.d.ts +3 -0
  1038. package/dist/domain/spec/model/model-version-key.js +1 -0
  1039. package/dist/domain/spec/model/names/action-name.d.ts +7 -0
  1040. package/dist/domain/spec/model/names/action-name.js +1 -0
  1041. package/dist/domain/spec/model/names/alias-name.d.ts +7 -0
  1042. package/dist/domain/spec/model/names/alias-name.js +1 -0
  1043. package/dist/domain/spec/model/names/entity-or-alias-name.d.ts +8 -0
  1044. package/dist/domain/spec/model/names/entity-or-alias-name.js +1 -0
  1045. package/dist/domain/spec/model/names/entity-type-name.d.ts +8 -0
  1046. package/dist/domain/spec/model/names/entity-type-name.js +1 -0
  1047. package/dist/domain/spec/model/names/expression-name.d.ts +6 -0
  1048. package/dist/domain/spec/model/names/expression-name.js +1 -0
  1049. package/dist/domain/spec/model/names/index.d.ts +9 -0
  1050. package/dist/domain/spec/model/names/index.js +1 -0
  1051. package/dist/domain/spec/model/names/instance-name.d.ts +7 -0
  1052. package/dist/domain/spec/model/names/instance-name.js +1 -0
  1053. package/dist/domain/spec/model/names/invariant-name.d.ts +3 -0
  1054. package/dist/domain/spec/model/names/invariant-name.js +1 -0
  1055. package/dist/domain/spec/model/names/shape-property-name.d.ts +11 -0
  1056. package/dist/domain/spec/model/names/shape-property-name.js +1 -0
  1057. package/dist/domain/spec/model/names/violation-type-name.d.ts +3 -0
  1058. package/dist/domain/spec/model/names/violation-type-name.js +1 -0
  1059. package/dist/domain/spec/model/presets.d.ts +30 -0
  1060. package/dist/domain/spec/model/presets.js +1 -0
  1061. package/dist/domain/spec/sections/actions.d.ts +23 -0
  1062. package/dist/domain/spec/sections/actions.js +1 -0
  1063. package/dist/domain/spec/sections/app-metadata.d.ts +18 -0
  1064. package/dist/domain/spec/sections/app-metadata.js +1 -0
  1065. package/dist/domain/spec/sections/application-version.d.ts +7 -0
  1066. package/dist/domain/spec/sections/application-version.js +1 -0
  1067. package/dist/domain/spec/sections/data-spec/chunks.d.ts +23 -0
  1068. package/dist/domain/spec/sections/data-spec/chunks.js +1 -0
  1069. package/dist/domain/spec/sections/data-spec/custom-data-spec-entry.d.ts +16 -0
  1070. package/dist/domain/spec/sections/data-spec/custom-data-spec-entry.js +1 -0
  1071. package/dist/domain/spec/sections/data-spec/data-entry-key.d.ts +9 -0
  1072. package/dist/domain/spec/sections/data-spec/data-entry-key.js +1 -0
  1073. package/dist/domain/spec/sections/data-spec/index.d.ts +5 -0
  1074. package/dist/domain/spec/sections/data-spec/index.js +1 -0
  1075. package/dist/domain/spec/sections/data-spec/parsed-data-spec-entries.d.ts +10 -0
  1076. package/dist/domain/spec/sections/data-spec/parsed-data-spec-entries.js +1 -0
  1077. package/dist/domain/spec/sections/data-spec/swatch-data-spec-entry.d.ts +14 -0
  1078. package/dist/domain/spec/sections/data-spec/swatch-data-spec-entry.js +1 -0
  1079. package/dist/domain/spec/sections/index.d.ts +9 -0
  1080. package/dist/domain/spec/sections/index.js +1 -0
  1081. package/dist/domain/spec/sections/infra/acl.d.ts +12 -0
  1082. package/dist/domain/spec/sections/infra/acl.js +1 -0
  1083. package/dist/domain/spec/sections/infra/index.d.ts +3 -0
  1084. package/dist/domain/spec/sections/infra/index.js +1 -0
  1085. package/dist/domain/spec/sections/infra/resource-entry.d.ts +46 -0
  1086. package/dist/domain/spec/sections/infra/resource-entry.js +1 -0
  1087. package/dist/domain/spec/sections/infra/resources-config.d.ts +10 -0
  1088. package/dist/domain/spec/sections/infra/resources-config.js +1 -0
  1089. package/dist/domain/spec/sections/state-value.d.ts +7 -0
  1090. package/dist/domain/spec/sections/state-value.js +1 -0
  1091. package/dist/domain/spec/sections/theme.d.ts +10 -0
  1092. package/dist/domain/spec/sections/theme.js +1 -0
  1093. package/dist/domain/spec/sections/transformers.d.ts +15 -0
  1094. package/dist/domain/spec/sections/transformers.js +1 -0
  1095. package/dist/domain/spec/sections/ui.d.ts +12 -0
  1096. package/dist/domain/spec/sections/ui.js +1 -0
  1097. package/dist/domain/system-components/application-config.d.ts +2 -2
  1098. package/dist/domain/system-components/child-entity-selection.js +1 -1
  1099. package/dist/domain/system-components/collision-box-geometry.d.ts +4 -2
  1100. package/dist/domain/system-components/collision-geometry.d.ts +4 -2
  1101. package/dist/domain/system-components/collision-point-geometry.d.ts +4 -2
  1102. package/dist/domain/system-components/common/material-override-schema.d.ts +2 -2
  1103. package/dist/domain/system-components/common/recipes.d.ts +21 -3
  1104. package/dist/domain/system-components/common/recipes.js +1 -1
  1105. package/dist/domain/system-components/common/scene-entity-control-schema.d.ts +3 -0
  1106. package/dist/domain/system-components/common/scene-entity-control-schema.js +1 -1
  1107. package/dist/domain/system-components/constraint.d.ts +10 -23
  1108. package/dist/domain/system-components/drag-handle.d.ts +1 -1
  1109. package/dist/domain/system-components/drag-handle.js +1 -1
  1110. package/dist/domain/system-components/fit-entity-orthographic-camera-component.js +1 -1
  1111. package/dist/domain/system-components/fit-entity-perspective-camera-component.js +1 -1
  1112. package/dist/domain/system-components/fit-root-orthographic-camera-component.js +1 -1
  1113. package/dist/domain/system-components/fit-root-perspective-camera-component.js +1 -1
  1114. package/dist/domain/system-components/hotspot-drag-handle.d.ts +1 -1
  1115. package/dist/domain/system-components/hotspot-drag-handle.js +1 -1
  1116. package/dist/domain/system-components/material-swatch.js +1 -1
  1117. package/dist/domain/system-components/scene-entity-material-override.d.ts +1 -1
  1118. package/dist/domain/system-components/scene-entity-object-material-override.d.ts +1 -1
  1119. package/dist/domain/system-components/scene-entity-object-text-decal.d.ts +1 -1
  1120. package/dist/domain/system-components/scene-entity-object-transimissive-material-override.d.ts +1 -1
  1121. package/dist/domain/system-components/scene-entity-transimissive-material-override.d.ts +1 -1
  1122. package/dist/domain/system-components/static-orthographic-camera-component.js +1 -1
  1123. package/dist/domain/system-components/static-perspective-camera-component.js +1 -1
  1124. package/dist/domain/utils/eval-cache.d.ts +1 -1
  1125. package/dist/domain/utils/map-nested-object.d.ts +1 -1
  1126. package/dist/editor/Editor.d.ts +7 -0
  1127. package/dist/editor/Editor.js +1 -1
  1128. package/dist/editor/domain-editors/DomainSpecContext.js +1 -1
  1129. package/dist/editor/domain-editors/apply-spec-update.d.ts +10 -2
  1130. package/dist/editor/domain-editors/apply-spec-update.js +1 -1
  1131. package/dist/editor/domain-editors/use-implementation-files.d.ts +7 -16
  1132. package/dist/editor/domain-editors/use-implementation-files.js +1 -1
  1133. package/dist/editor/graphql/GraphQLPanel.js +1 -1
  1134. package/dist/editor/mocks/CreateMockYaml.js +2 -2
  1135. package/dist/editor/mocks/EditorMockContext.d.ts +2 -0
  1136. package/dist/editor/mocks/EditorMockContext.js +1 -1
  1137. package/dist/editor/screenshot/ScreenshotHandler.js +1 -1
  1138. package/dist/globals/index.d.ts +2 -0
  1139. package/dist/i18n/locales/cs/messages.js +1 -1
  1140. package/dist/i18n/locales/da/messages.js +1 -1
  1141. package/dist/i18n/locales/de/messages.js +1 -1
  1142. package/dist/i18n/locales/de-AT/messages.js +1 -1
  1143. package/dist/i18n/locales/en/messages.js +1 -1
  1144. package/dist/i18n/locales/en-AU/messages.js +1 -1
  1145. package/dist/i18n/locales/en-GB/messages.js +1 -1
  1146. package/dist/i18n/locales/es/messages.js +1 -1
  1147. package/dist/i18n/locales/fr/messages.js +1 -1
  1148. package/dist/i18n/locales/hu/messages.js +1 -1
  1149. package/dist/i18n/locales/it/messages.js +1 -1
  1150. package/dist/i18n/locales/nl/messages.js +1 -1
  1151. package/dist/i18n/locales/pl/messages.js +1 -1
  1152. package/dist/i18n/locales/pt/messages.js +1 -1
  1153. package/dist/i18n/locales/ro/messages.js +1 -1
  1154. package/dist/i18n/locales/sk/messages.js +1 -1
  1155. package/dist/i18n/locales/tr/messages.js +1 -1
  1156. package/dist/legacy/domain-cli/gen/configurator-builder.js +13 -12
  1157. package/dist/legacy/domain-cli/gen/constant-expressions.js +1 -1
  1158. package/dist/legacy/domain-cli/gen/defaults.js +1 -7
  1159. package/dist/legacy/domain-cli/gen/invariants.js +3 -4
  1160. package/dist/legacy/domain-cli/gen/relations.js +1 -1
  1161. package/dist/legacy/domain-cli/utils/cache.d.ts +1 -1
  1162. package/dist/legacy/domain-cli/utils/cache.js +1 -1
  1163. package/dist/legacy/domain-spec/__generated/domain-schema.d.ts +176 -148
  1164. package/dist/legacy/domain-spec/spec/domain-spec.js +1 -1
  1165. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/claude-md.d.ts +1 -1
  1166. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/cursor-rules.d.ts +1 -1
  1167. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.d.ts +1 -1
  1168. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.js +13 -1
  1169. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/domain-index.js +15 -13
  1170. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-admin.js +15 -14
  1171. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-configurator.js +14 -12
  1172. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-admin.js +14 -13
  1173. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-configurator.js +13 -11
  1174. package/dist/phoenix/application-spec/application-spec-builder.d.ts +0 -2
  1175. package/dist/phoenix/application-spec/application-spec-builder.js +1 -1
  1176. package/dist/phoenix/application-spec/generate-application-spec-project.d.ts +1 -2
  1177. package/dist/phoenix/application-spec/generate-application-spec-project.js +2 -2
  1178. package/dist/phoenix/application-spec/generate-application-spec-story.js +2 -2
  1179. package/dist/phoenix/application-spec/generate-project-files.d.ts +1 -2
  1180. package/dist/phoenix/application-spec/index.d.ts +1 -0
  1181. package/dist/phoenix/application-spec/index.js +1 -1
  1182. package/dist/phoenix/application-spec/project-files.js +1 -1
  1183. package/dist/phoenix/application-spec/resolve-deployment-data.d.ts +11 -0
  1184. package/dist/phoenix/application-spec/resolve-deployment-data.js +2 -2
  1185. package/dist/phoenix/bin.d.ts +2 -0
  1186. package/dist/phoenix/bin.js +2 -0
  1187. package/dist/phoenix/check-configs/built-in-eslint-config.d.ts +9 -0
  1188. package/dist/phoenix/check-configs/built-in-eslint-config.js +1 -0
  1189. package/dist/phoenix/check-configs/eslint-config.d.ts +10 -0
  1190. package/dist/phoenix/check-configs/eslint-config.js +1 -0
  1191. package/dist/phoenix/check-configs/index.d.ts +8 -0
  1192. package/dist/phoenix/check-configs/index.js +1 -0
  1193. package/dist/phoenix/check-configs/typescript-project.d.ts +5 -0
  1194. package/dist/phoenix/check-configs/typescript-project.js +1 -0
  1195. package/dist/phoenix/cli.d.ts +0 -1
  1196. package/dist/phoenix/cli.js +1 -2
  1197. package/dist/phoenix/commands/build.js +1 -1
  1198. package/dist/phoenix/commands/check.js +1 -1
  1199. package/dist/phoenix/commands/clean.js +1 -1
  1200. package/dist/phoenix/commands/deploy.js +2 -2
  1201. package/dist/phoenix/commands/deps/deps.d.ts +73 -0
  1202. package/dist/phoenix/commands/deps/deps.js +3 -0
  1203. package/dist/phoenix/commands/deps/index.d.ts +1 -0
  1204. package/dist/phoenix/commands/deps/index.js +1 -0
  1205. package/dist/phoenix/commands/deps/sdk-manifest.d.ts +12 -0
  1206. package/dist/phoenix/commands/deps/sdk-manifest.js +1 -0
  1207. package/dist/phoenix/commands/dev.js +5 -5
  1208. package/dist/phoenix/commands/fix.js +1 -1
  1209. package/dist/phoenix/commands/generated-env-markers.d.ts +1 -0
  1210. package/dist/phoenix/commands/generated-env-markers.js +1 -1
  1211. package/dist/phoenix/commands/index.d.ts +1 -0
  1212. package/dist/phoenix/commands/index.js +1 -1
  1213. package/dist/phoenix/commands/init.d.ts +17 -5
  1214. package/dist/phoenix/commands/init.js +1 -1
  1215. package/dist/phoenix/commands/link.js +1 -1
  1216. package/dist/phoenix/commands/prettier.js +1 -1
  1217. package/dist/phoenix/commands/sync.js +1 -1
  1218. package/dist/phoenix/commands/unlink.js +1 -1
  1219. package/dist/phoenix/lingui/index.d.ts +1 -0
  1220. package/dist/phoenix/lingui/index.js +1 -0
  1221. package/dist/phoenix/lingui/lingui.d.ts +18 -0
  1222. package/dist/phoenix/lingui/lingui.js +1 -0
  1223. package/dist/phoenix/services/application-spec-project-watcher.d.ts +5 -3
  1224. package/dist/phoenix/services/application-spec-project-watcher.js +3 -3
  1225. package/dist/phoenix/services/index.d.ts +1 -0
  1226. package/dist/phoenix/services/index.js +1 -1
  1227. package/dist/phoenix/services/lingui-watcher.js +1 -1
  1228. package/dist/phoenix/services/prepare-development-environment.js +1 -1
  1229. package/dist/phoenix/services/source-archive.d.ts +1 -0
  1230. package/dist/phoenix/services/source-archive.js +1 -1
  1231. package/dist/phoenix/services/swc.js +1 -1
  1232. package/dist/phoenix/services/vite-config.js +1 -1
  1233. package/dist/phoenix/utils/git/index.d.ts +1 -0
  1234. package/dist/phoenix/utils/git/index.js +1 -0
  1235. package/dist/phoenix/utils/git/is-inside-git-repository.d.ts +6 -0
  1236. package/dist/phoenix/utils/git/is-inside-git-repository.js +1 -0
  1237. package/dist/phoenix/utils/index.d.ts +5 -2
  1238. package/dist/phoenix/utils/index.js +1 -1
  1239. package/dist/phoenix/utils/node-version/index.d.ts +1 -0
  1240. package/dist/phoenix/utils/node-version/index.js +1 -0
  1241. package/dist/phoenix/utils/node-version/supported-node-version.d.ts +12 -0
  1242. package/dist/phoenix/utils/node-version/supported-node-version.js +4 -0
  1243. package/dist/phoenix/utils/package-info.d.ts +0 -9
  1244. package/dist/phoenix/utils/package-info.js +1 -1
  1245. package/dist/phoenix/utils/package-manager/index.d.ts +2 -0
  1246. package/dist/phoenix/utils/package-manager/index.js +1 -0
  1247. package/dist/phoenix/utils/package-manager/package-manager-commands.d.ts +19 -0
  1248. package/dist/phoenix/utils/package-manager/package-manager-commands.js +1 -0
  1249. package/dist/phoenix/utils/package-manager/pnpm-project.d.ts +9 -0
  1250. package/dist/phoenix/utils/package-manager/pnpm-project.js +1 -0
  1251. package/dist/phoenix/utils/run-command.d.ts +11 -0
  1252. package/dist/phoenix/utils/run-command.js +1 -1
  1253. package/dist/phoenix/utils/sdk-tool/index.d.ts +1 -0
  1254. package/dist/phoenix/utils/sdk-tool/index.js +1 -0
  1255. package/dist/phoenix/utils/sdk-tool/resolve-sdk-tool-bin.d.ts +15 -0
  1256. package/dist/phoenix/utils/sdk-tool/resolve-sdk-tool-bin.js +1 -0
  1257. package/dist/react-sdk/application-runtime/common-services/analytics/analytics-service.d.ts +1 -1
  1258. package/dist/{configurator/common → react-sdk/application-runtime/common-services/analytics}/frontend-analytics.d.ts +6 -0
  1259. package/dist/react-sdk/application-runtime/common-services/analytics/frontend-analytics.js +1 -0
  1260. package/dist/react-sdk/application-runtime/common-services/analytics/index.d.ts +1 -0
  1261. package/dist/react-sdk/application-runtime/common-services/analytics/index.js +1 -1
  1262. package/dist/react-sdk/application-runtime/common-services/initialize.d.ts +2 -2
  1263. package/dist/react-sdk/application-runtime/domain-application-context/chat-system.d.ts +1 -1
  1264. package/dist/react-sdk/application-runtime/hooks/index.d.ts +2 -0
  1265. package/dist/react-sdk/application-runtime/hooks/index.js +1 -1
  1266. package/dist/react-sdk/application-runtime/hooks/loading/index.d.ts +5 -0
  1267. package/dist/react-sdk/application-runtime/hooks/loading/index.js +1 -0
  1268. package/dist/react-sdk/application-runtime/hooks/loading/loader-host-context.d.ts +11 -0
  1269. package/dist/react-sdk/application-runtime/hooks/loading/loader-host-context.js +1 -0
  1270. package/dist/react-sdk/application-runtime/hooks/loading/use-is-awaiting-loading-phase.d.ts +8 -0
  1271. package/dist/react-sdk/application-runtime/hooks/loading/use-is-awaiting-loading-phase.js +1 -0
  1272. package/dist/react-sdk/application-runtime/hooks/loading/use-is-loader-hosted.d.ts +7 -0
  1273. package/dist/react-sdk/application-runtime/hooks/loading/use-is-loader-hosted.js +1 -0
  1274. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-actions.d.ts +9 -0
  1275. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-actions.js +1 -0
  1276. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-application.d.ts +24 -0
  1277. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-application.js +1 -0
  1278. package/dist/react-sdk/application-runtime/hooks/responsive/index.d.ts +3 -0
  1279. package/dist/react-sdk/application-runtime/hooks/responsive/index.js +1 -0
  1280. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-actions.d.ts +9 -0
  1281. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-actions.js +1 -0
  1282. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-application.d.ts +26 -0
  1283. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-application.js +1 -0
  1284. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-state.d.ts +10 -0
  1285. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-state.js +1 -0
  1286. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-store.d.ts +24 -0
  1287. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-store.js +1 -0
  1288. package/dist/react-sdk/application-runtime/hooks/use-access-service.d.ts +7 -0
  1289. package/dist/react-sdk/application-runtime/hooks/use-access-service.js +1 -1
  1290. package/dist/react-sdk/application-runtime/hooks/use-phoenix-element-slots.d.ts +2 -1
  1291. package/dist/react-sdk/application-runtime/hooks/use-web-component-readonly-sync.d.ts +4 -11
  1292. package/dist/react-sdk/application-runtime/hooks/use-web-component-readonly-sync.js +1 -1
  1293. package/dist/react-sdk/application-runtime/hooks/use-web-component.d.ts +5 -0
  1294. package/dist/react-sdk/application-runtime/hooks/use-web-component.js +1 -1
  1295. package/dist/react-sdk/application-runtime/host-properties/actions.d.ts +15 -0
  1296. package/dist/react-sdk/application-runtime/host-properties/actions.js +1 -0
  1297. package/dist/react-sdk/application-runtime/host-properties/connect-host-properties.d.ts +30 -0
  1298. package/dist/react-sdk/application-runtime/host-properties/connect-host-properties.js +1 -0
  1299. package/dist/react-sdk/application-runtime/host-properties/domain-host-properties.d.ts +7 -0
  1300. package/dist/react-sdk/application-runtime/host-properties/domain-host-properties.js +1 -0
  1301. package/dist/react-sdk/application-runtime/host-properties/host-property-descriptors.d.ts +21 -0
  1302. package/dist/react-sdk/application-runtime/host-properties/host-property-descriptors.js +1 -0
  1303. package/dist/react-sdk/application-runtime/host-properties/host-property-scopes.d.ts +42 -0
  1304. package/dist/react-sdk/application-runtime/host-properties/host-property-scopes.js +1 -0
  1305. package/dist/react-sdk/application-runtime/host-properties/index.d.ts +8 -0
  1306. package/dist/react-sdk/application-runtime/host-properties/index.js +1 -0
  1307. package/dist/react-sdk/application-runtime/host-properties/initialize.d.ts +7 -0
  1308. package/dist/react-sdk/application-runtime/host-properties/initialize.js +1 -0
  1309. package/dist/react-sdk/application-runtime/host-properties/selectors.d.ts +54 -0
  1310. package/dist/react-sdk/application-runtime/host-properties/selectors.js +1 -0
  1311. package/dist/react-sdk/application-runtime/host-properties/types.d.ts +18 -0
  1312. package/dist/react-sdk/application-runtime/host-properties/types.js +1 -0
  1313. package/dist/react-sdk/application-runtime/index.d.ts +3 -0
  1314. package/dist/react-sdk/application-runtime/integration/initialize.d.ts +7 -6
  1315. package/dist/react-sdk/application-runtime/integration/initialize.js +1 -1
  1316. package/dist/react-sdk/application-runtime/integration/selectors.d.ts +11 -2
  1317. package/dist/react-sdk/application-runtime/integration/selectors.js +1 -1
  1318. package/dist/react-sdk/application-runtime/integration/types.d.ts +5 -2
  1319. package/dist/react-sdk/application-runtime/loading/actions.d.ts +45 -0
  1320. package/dist/react-sdk/application-runtime/loading/actions.js +1 -0
  1321. package/dist/react-sdk/application-runtime/loading/index.d.ts +4 -0
  1322. package/dist/react-sdk/application-runtime/loading/index.js +1 -0
  1323. package/dist/react-sdk/application-runtime/loading/initialize.d.ts +3 -0
  1324. package/dist/react-sdk/application-runtime/loading/initialize.js +1 -0
  1325. package/dist/react-sdk/application-runtime/loading/selectors.d.ts +18 -0
  1326. package/dist/react-sdk/application-runtime/loading/selectors.js +1 -0
  1327. package/dist/react-sdk/application-runtime/loading/types.d.ts +59 -0
  1328. package/dist/react-sdk/application-runtime/loading/types.js +1 -0
  1329. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.js +1 -1
  1330. package/dist/react-sdk/application-runtime/provider/ApplicationRuntime.d.ts +6 -0
  1331. package/dist/react-sdk/application-runtime/provider/ApplicationRuntime.js +1 -1
  1332. package/dist/react-sdk/application-runtime/provider/ApplicationType.d.ts +7 -0
  1333. package/dist/react-sdk/application-runtime/provider/ApplicationType.js +1 -1
  1334. package/dist/react-sdk/application-runtime/responsive/actions.d.ts +47 -0
  1335. package/dist/react-sdk/application-runtime/responsive/actions.js +1 -0
  1336. package/dist/react-sdk/application-runtime/responsive/index.d.ts +4 -0
  1337. package/dist/react-sdk/application-runtime/responsive/index.js +1 -0
  1338. package/dist/react-sdk/application-runtime/responsive/initialize.d.ts +3 -0
  1339. package/dist/react-sdk/application-runtime/responsive/initialize.js +1 -0
  1340. package/dist/react-sdk/application-runtime/responsive/selectors.d.ts +20 -0
  1341. package/dist/react-sdk/application-runtime/responsive/selectors.js +1 -0
  1342. package/dist/react-sdk/application-runtime/responsive/types.d.ts +104 -0
  1343. package/dist/react-sdk/application-runtime/responsive/types.js +1 -0
  1344. package/dist/react-sdk/application-runtime/routing/access-service.d.ts +1 -0
  1345. package/dist/react-sdk/application-runtime/routing/routing-service.d.ts +34 -2
  1346. package/dist/react-sdk/application-runtime/routing/routing-service.js +1 -1
  1347. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.d.ts +346 -26
  1348. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.js +1 -1
  1349. package/dist/{configurator/configurator-context → react-sdk}/configurator-routing/ConfiguratorRoutingProvider.d.ts +1 -1
  1350. package/dist/react-sdk/configurator-routing/ConfiguratorRoutingProvider.js +1 -0
  1351. package/dist/{configurator/configurator-context → react-sdk}/configurator-routing/OnGoToIndexHandler.d.ts +1 -2
  1352. package/dist/react-sdk/configurator-routing/OnGoToIndexHandler.js +1 -0
  1353. package/dist/react-sdk/configurator-routing/index.d.ts +3 -0
  1354. package/dist/{configurator/configurator-context → react-sdk}/configurator-routing/index.js +1 -1
  1355. package/dist/{configurator/configurator-context → react-sdk}/configurator-routing/use-power-routing-lifecycle.d.ts +2 -0
  1356. package/dist/react-sdk/configurator-routing/use-power-routing-lifecycle.js +1 -0
  1357. package/dist/react-sdk/domain-application-context/BackendDataProvider.js +1 -1
  1358. package/dist/react-sdk/domain-application-context/ConfigurationPersistSystemFailureHandler.js +1 -1
  1359. package/dist/react-sdk/domain-application-context/DomainLifecycleBoundary.js +1 -1
  1360. package/dist/react-sdk/domain-application-context/FrontendDataProvider.js +1 -1
  1361. package/dist/react-sdk/domain-application-context/OnPresetLoadedHandler.js +1 -0
  1362. package/dist/react-sdk/domain-application-context/PublishedDataProvider.js +1 -1
  1363. package/dist/react-sdk/domain-application-context/chat-hooks.d.ts +4 -0
  1364. package/dist/react-sdk/domain-application-context/chat-hooks.js +1 -0
  1365. package/dist/react-sdk/domain-application-context/index.d.ts +2 -0
  1366. package/dist/react-sdk/domain-application-context/index.js +1 -1
  1367. package/dist/react-sdk/domain-context/common-hooks/index.d.ts +9 -0
  1368. package/dist/react-sdk/domain-context/common-hooks/index.js +1 -0
  1369. package/dist/react-sdk/domain-context/common-hooks/use-configuration-save-state.d.ts +23 -0
  1370. package/dist/react-sdk/domain-context/common-hooks/use-configuration-save-state.js +1 -0
  1371. package/dist/react-sdk/domain-context/common-hooks/use-configurator-messages.d.ts +41 -0
  1372. package/dist/react-sdk/domain-context/common-hooks/use-configurator-messages.js +1 -0
  1373. package/dist/react-sdk/domain-context/common-hooks/use-domain-context.d.ts +5 -4
  1374. package/dist/react-sdk/domain-context/component-hooks/index.d.ts +1 -0
  1375. package/dist/react-sdk/domain-context/component-hooks/index.js +1 -0
  1376. package/dist/react-sdk/domain-context/component-hooks/use-component.js +1 -1
  1377. package/dist/react-sdk/domain-context/entity-hooks/use-domain-entity-state.js +1 -1
  1378. package/dist/react-sdk/domain-context/entity-hooks/use-entity-price.js +1 -1
  1379. package/dist/react-sdk/domain-context/entity-hooks/use-root-entity-id.js +1 -1
  1380. package/dist/react-sdk/domain-context/entity-hooks/use-root-entity-state.js +1 -1
  1381. package/dist/react-sdk/domain-context/index.d.ts +9 -1
  1382. package/dist/react-sdk/domain-context/index.js +1 -1
  1383. package/dist/react-sdk/domain-context/system-hooks/composition-hooks.js +1 -1
  1384. package/dist/react-sdk/domain-context/system-hooks/dimension-hooks.js +1 -1
  1385. package/dist/react-sdk/domain-context/system-hooks/generate-share-link-hooks.d.ts +8 -0
  1386. package/dist/react-sdk/domain-context/system-hooks/generate-share-link-hooks.js +1 -0
  1387. package/dist/react-sdk/domain-context/system-hooks/hover-hooks.js +1 -1
  1388. package/dist/react-sdk/domain-context/system-hooks/locale-switch-hooks.d.ts +24 -0
  1389. package/dist/react-sdk/domain-context/system-hooks/locale-switch-hooks.js +1 -0
  1390. package/dist/react-sdk/domain-context/system-hooks/navigation-hooks.d.ts +11 -0
  1391. package/dist/react-sdk/domain-context/system-hooks/navigation-hooks.js +1 -1
  1392. package/dist/react-sdk/domain-context/system-hooks/selection-hooks.js +1 -1
  1393. package/dist/react-sdk/domain-context/system-hooks/share-links-hooks.d.ts +32 -0
  1394. package/dist/react-sdk/domain-context/system-hooks/share-links-hooks.js +1 -0
  1395. package/dist/react-sdk/domain-context/system-hooks/step-navigation-hooks.d.ts +57 -0
  1396. package/dist/react-sdk/domain-context/system-hooks/step-navigation-hooks.js +1 -0
  1397. package/dist/react-sdk/domain-context/system-hooks/tab-navigation-hooks.d.ts +61 -0
  1398. package/dist/react-sdk/domain-context/system-hooks/tab-navigation-hooks.js +1 -0
  1399. package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.d.ts +20 -0
  1400. package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.js +1 -0
  1401. package/dist/react-sdk/domain-controls/hooks/use-angle-dimension.d.ts +1 -1
  1402. package/dist/react-sdk/handlers/FinalizeActionRunner.d.ts +13 -0
  1403. package/dist/react-sdk/handlers/FinalizeActionRunner.js +1 -0
  1404. package/dist/react-sdk/handlers/FinalizeActionsHost.d.ts +10 -0
  1405. package/dist/react-sdk/handlers/FinalizeActionsHost.js +1 -0
  1406. package/dist/react-sdk/handlers/FinalizeActionsProvider.d.ts +11 -0
  1407. package/dist/react-sdk/handlers/FinalizeActionsProvider.js +1 -0
  1408. package/dist/react-sdk/handlers/finalize-actions-context.d.ts +6 -0
  1409. package/dist/react-sdk/handlers/finalize-actions-context.js +1 -0
  1410. package/dist/react-sdk/handlers/finalize-actions-store.d.ts +23 -0
  1411. package/dist/react-sdk/handlers/finalize-actions-store.js +1 -0
  1412. package/dist/react-sdk/handlers/index.d.ts +6 -0
  1413. package/dist/react-sdk/handlers/index.js +1 -1
  1414. package/dist/react-sdk/handlers/use-finalize-action.d.ts +32 -0
  1415. package/dist/react-sdk/handlers/use-finalize-action.js +1 -0
  1416. package/dist/react-sdk/handlers/use-finalize-actions.d.ts +53 -0
  1417. package/dist/react-sdk/handlers/use-finalize-actions.js +1 -0
  1418. package/dist/react-sdk/index.d.ts +6 -0
  1419. package/dist/react-sdk/index.js +1 -1
  1420. package/dist/react-sdk/integration/IntegrationSubscription.js +1 -0
  1421. package/dist/react-sdk/integration/index.d.ts +1 -0
  1422. package/dist/react-sdk/integration/index.js +1 -0
  1423. package/dist/react-sdk/lifecycle-providers/ConfiguratorDataProvider.d.ts +8 -0
  1424. package/dist/react-sdk/lifecycle-providers/ConfiguratorDataProvider.js +1 -0
  1425. package/dist/react-sdk/lifecycle-providers/LifecycleProviders.js +1 -0
  1426. package/dist/react-sdk/lifecycle-providers/index.d.ts +2 -0
  1427. package/dist/react-sdk/lifecycle-providers/index.js +1 -0
  1428. package/dist/react-sdk/loading-state/LoaderHost.d.ts +20 -0
  1429. package/dist/react-sdk/loading-state/LoaderHost.js +1 -0
  1430. package/dist/react-sdk/loading-state/built-in-loading-phase.d.ts +9 -0
  1431. package/dist/react-sdk/loading-state/built-in-loading-phase.js +1 -0
  1432. package/dist/react-sdk/loading-state/create-app-loader.d.ts +18 -0
  1433. package/dist/react-sdk/loading-state/create-app-loader.js +1 -0
  1434. package/dist/react-sdk/loading-state/index.d.ts +4 -2
  1435. package/dist/react-sdk/loading-state/index.js +1 -1
  1436. package/dist/react-sdk/loading-state/{LoadingStateProvider.d.ts → loading-state-hooks.d.ts} +3 -12
  1437. package/dist/react-sdk/loading-state/loading-state-hooks.js +1 -0
  1438. package/dist/react-sdk/notifications/index.d.ts +1 -0
  1439. package/dist/react-sdk/notifications/index.js +1 -0
  1440. package/dist/react-sdk/notifications/snackbar-action-button.d.ts +30 -0
  1441. package/dist/react-sdk/notifications/snackbar-action-button.js +1 -0
  1442. package/dist/react-sdk/page-elements/ConfigurationNotFoundPagePropsProvider.d.ts +17 -0
  1443. package/dist/react-sdk/page-elements/ConfigurationNotFoundPagePropsProvider.js +1 -0
  1444. package/dist/react-sdk/page-elements/ConfiguratorErrorPagePropsProvider.d.ts +17 -0
  1445. package/dist/react-sdk/page-elements/ConfiguratorErrorPagePropsProvider.js +1 -0
  1446. package/dist/react-sdk/page-elements/configurator-error-page-props.d.ts +20 -0
  1447. package/dist/react-sdk/page-elements/configurator-error-page-props.js +1 -0
  1448. package/dist/react-sdk/page-elements/create-configuration-not-found-page.d.ts +15 -0
  1449. package/dist/react-sdk/page-elements/create-configuration-not-found-page.js +1 -0
  1450. package/dist/react-sdk/page-elements/create-configurator-error-page.d.ts +14 -0
  1451. package/dist/react-sdk/page-elements/create-configurator-error-page.js +1 -0
  1452. package/dist/react-sdk/page-elements/create-preset-ui.d.ts +9 -0
  1453. package/dist/react-sdk/page-elements/create-preset-ui.js +1 -0
  1454. package/dist/react-sdk/page-elements/index.d.ts +6 -0
  1455. package/dist/react-sdk/page-elements/index.js +1 -0
  1456. package/dist/react-sdk/scene-control-elements/AddEntityFabElement.d.ts +36 -0
  1457. package/dist/react-sdk/scene-control-elements/AddEntityFabElement.js +1 -0
  1458. package/dist/react-sdk/scene-control-elements/DeleteEntityFabElement.d.ts +44 -0
  1459. package/dist/react-sdk/scene-control-elements/DeleteEntityFabElement.js +1 -0
  1460. package/dist/react-sdk/scene-control-elements/NavigationHotspotElement.d.ts +38 -0
  1461. package/dist/react-sdk/scene-control-elements/NavigationHotspotElement.js +1 -0
  1462. package/dist/react-sdk/scene-control-elements/SelectionHotspotElement.d.ts +30 -0
  1463. package/dist/react-sdk/scene-control-elements/SelectionHotspotElement.js +1 -0
  1464. package/dist/react-sdk/scene-control-elements/ToolMenuFabElement.d.ts +30 -0
  1465. package/dist/react-sdk/scene-control-elements/ToolMenuFabElement.js +1 -0
  1466. package/dist/react-sdk/scene-control-elements/create-add-entity-fab.d.ts +9 -0
  1467. package/dist/react-sdk/scene-control-elements/create-add-entity-fab.js +1 -0
  1468. package/dist/react-sdk/scene-control-elements/create-delete-entity-fab.d.ts +9 -0
  1469. package/dist/react-sdk/scene-control-elements/create-delete-entity-fab.js +1 -0
  1470. package/dist/react-sdk/scene-control-elements/create-navigation-hotspot.d.ts +10 -0
  1471. package/dist/react-sdk/scene-control-elements/create-navigation-hotspot.js +1 -0
  1472. package/dist/react-sdk/scene-control-elements/create-selection-hotspot.d.ts +9 -0
  1473. package/dist/react-sdk/scene-control-elements/create-selection-hotspot.js +1 -0
  1474. package/dist/react-sdk/scene-control-elements/create-tool-menu-fab.d.ts +9 -0
  1475. package/dist/react-sdk/scene-control-elements/create-tool-menu-fab.js +1 -0
  1476. package/dist/react-sdk/scene-control-elements/index.d.ts +11 -0
  1477. package/dist/react-sdk/scene-control-elements/index.js +1 -0
  1478. package/dist/react-sdk/scene-control-elements/scene-control-tooltip-visibility.d.ts +5 -0
  1479. package/dist/react-sdk/scene-control-elements/scene-control-tooltip-visibility.js +1 -0
  1480. package/dist/react-sdk/session/NotAuthenticatedPage.d.ts +4 -0
  1481. package/dist/react-sdk/session/NotAuthenticatedPage.js +1 -1
  1482. package/dist/react-sdk/session/SessionServiceProvider.js +1 -1
  1483. package/dist/react-sdk/web-component/create-web-component.js +1 -1
  1484. package/dist/react-sdk/web-component/god-mode/god-mode-registry.d.ts +30 -0
  1485. package/dist/react-sdk/web-component/god-mode/god-mode-registry.js +1 -0
  1486. package/dist/react-sdk/web-component/god-mode/index.d.ts +1 -0
  1487. package/dist/react-sdk/web-component/god-mode/index.js +1 -0
  1488. package/dist/ui-sdk/components/snackbar/Snackbar.d.ts +24 -3
  1489. package/dist/ui-sdk/components/snackbar/Snackbar.js +1 -1
  1490. package/dist/ui-sdk/icons/__generated/Lightbulb.d.ts +3 -0
  1491. package/dist/ui-sdk/icons/__generated/Lightbulb.js +1 -0
  1492. package/dist/ui-sdk/icons/__generated/XCircle.d.ts +3 -0
  1493. package/dist/ui-sdk/icons/__generated/XCircle.js +1 -0
  1494. package/dist/ui-sdk/icons/__generated/index.d.ts +4 -0
  1495. package/dist/ui-sdk/icons/__generated/index.js +1 -1
  1496. package/dist/ui-sdk/icons/icons-registry.js +1 -1
  1497. package/dist/ui-sdk/responsive-application/ResponsiveApplicationProvider.d.ts +9 -0
  1498. package/dist/ui-sdk/responsive-application/ResponsiveApplicationProvider.js +1 -1
  1499. package/dist/ui-sdk/responsive-application/index.d.ts +1 -0
  1500. package/dist/ui-sdk/responsive-application/responsive-state-store.d.ts +59 -0
  1501. package/dist/ui-sdk/responsive-application/responsive-state-store.js +1 -0
  1502. package/dist/ui-sdk/responsive-application/use-store-responsive-info.d.ts +7 -0
  1503. package/dist/ui-sdk/responsive-application/use-store-responsive-info.js +1 -0
  1504. package/dist/ui-sdk/theme/types.d.ts +5 -1
  1505. package/dist/watch/glob-matcher.d.ts +4 -4
  1506. package/dist/watch/glob-matcher.js +1 -1
  1507. package/dist/watch/watch.d.ts +4 -4
  1508. package/dist/watch/watch.js +1 -1
  1509. package/dist/webhook/builders/webhook-builder.js +1 -1
  1510. package/package.json +58 -36
  1511. package/schema/domain-spec.json +1341 -217
  1512. package/dist/application-spec/generate-application/code/templates/nvmrc.d.ts +0 -1
  1513. package/dist/application-spec/generate-application/code/templates/nvmrc.js +0 -2
  1514. package/dist/application-spec/generate-application/code/templates/package-json.d.ts +0 -10
  1515. package/dist/application-spec/generate-application/code/templates/package-json.js +0 -1
  1516. package/dist/application-spec/generate-application/code/templates/prettier-ignore.d.ts +0 -1
  1517. package/dist/application-spec/generate-application/code/templates/prettier-ignore.js +0 -6
  1518. package/dist/application-spec/generate-application/code/templates/webhook-implementation.d.ts +0 -1
  1519. package/dist/application-spec/generate-application/code/templates/webhook-implementation.js +0 -7
  1520. package/dist/configurator/common/frontend-analytics.js +0 -1
  1521. package/dist/configurator/configurator-context/ConfiguratorDataProvider.d.ts +0 -2
  1522. package/dist/configurator/configurator-context/ConfiguratorDataProvider.js +0 -1
  1523. package/dist/configurator/configurator-context/IntegrationSubscription.js +0 -1
  1524. package/dist/configurator/configurator-context/LifecycleProviders.js +0 -1
  1525. package/dist/configurator/configurator-context/OnPresetLoadedHandler.js +0 -1
  1526. package/dist/configurator/configurator-context/configurator-hooks/chat-hooks.d.ts +0 -1
  1527. package/dist/configurator/configurator-context/configurator-hooks/chat-hooks.js +0 -1
  1528. package/dist/configurator/configurator-context/configurator-routing/ConfiguratorRoutingProvider.js +0 -1
  1529. package/dist/configurator/configurator-context/configurator-routing/OnGoToIndexHandler.js +0 -1
  1530. package/dist/configurator/configurator-context/configurator-routing/index.d.ts +0 -2
  1531. package/dist/configurator/configurator-context/configurator-routing/use-power-routing-lifecycle.js +0 -1
  1532. package/dist/configurator/ui/phoenix-layout-elements/language/use-locale-options.d.ts +0 -4
  1533. package/dist/configurator/ui/phoenix-layout-elements/language/use-locale-options.js +0 -1
  1534. package/dist/configurator/ui/phoenix-layout-elements/measurements/use-measurements-visibility.d.ts +0 -4
  1535. package/dist/configurator/ui/phoenix-layout-elements/measurements/use-measurements-visibility.js +0 -1
  1536. package/dist/domain/application/resource-builder.d.ts +0 -13
  1537. package/dist/domain/application/resource-builder.js +0 -1
  1538. package/dist/domain/core/relation/relation-implementation.d.ts +0 -7
  1539. package/dist/domain/domain-runtime/spec/invariant-builder.d.ts +0 -26
  1540. package/dist/domain/domain-runtime/spec/invariant-builder.js +0 -1
  1541. package/dist/domain/extensions/client-side-image.d.ts +0 -14
  1542. package/dist/domain/extensions/client-side-image.js +0 -1
  1543. package/dist/domain/extensions/save-template-thumbnail.js +0 -1
  1544. package/dist/phoenix/commands/generate-project-files.d.ts +0 -6
  1545. package/dist/phoenix/commands/generate-project-files.js +0 -1
  1546. package/dist/phoenix/services/lingui.d.ts +0 -7
  1547. package/dist/phoenix/services/lingui.js +0 -1
  1548. package/dist/react-sdk/application-runtime/runtime/god-mode.d.ts +0 -19
  1549. package/dist/react-sdk/application-runtime/runtime/god-mode.js +0 -1
  1550. package/dist/react-sdk/loading-state/LoadingStateProvider.js +0 -1
  1551. package/dist/react-sdk/loading-state/loading-state-manager.d.ts +0 -32
  1552. package/dist/react-sdk/loading-state/loading-state-manager.js +0 -1
  1553. /package/dist/application-spec/{core → enhanced-json}/eval-code-uses-self.d.ts +0 -0
  1554. /package/dist/application-spec/{core → enhanced-json}/eval-code-uses-self.js +0 -0
  1555. /package/dist/application-spec/{core → enhanced-json}/eval-to-constant.js +0 -0
  1556. /package/dist/{domain/core/relation/relation-implementation.js → application-spec/generate-application/runtime/spec-code/spec-code-module.js} +0 -0
  1557. /package/dist/{application-spec/core → domain/spec/application}/application-instance.d.ts +0 -0
  1558. /package/dist/{application-spec/core → domain/spec/application}/application-instance.js +0 -0
  1559. /package/dist/{application-spec/parse-application-files/spec/components/component-entry.js → domain/spec/components/sdk-code-ref.js} +0 -0
  1560. /package/dist/{application-spec/parse-application-files/spec/expressions/expression.js → domain/spec/expressions/sdk-expression-implementation.js} +0 -0
  1561. /package/dist/{application-spec/parse-application-files/spec/components → domain/spec/markers}/component-prop-target.d.ts +0 -0
  1562. /package/dist/{application-spec/parse-application-files/spec/components → domain/spec/markers}/component-prop-target.js +0 -0
  1563. /package/dist/{application-spec/core → domain/spec}/markers/eval-marker.d.ts +0 -0
  1564. /package/dist/{application-spec/core → domain/spec}/markers/eval-marker.js +0 -0
  1565. /package/dist/{configurator/configurator-context → react-sdk/domain-application-context}/OnPresetLoadedHandler.d.ts +0 -0
  1566. /package/dist/{configurator/configurator-context → react-sdk/integration}/IntegrationSubscription.d.ts +0 -0
  1567. /package/dist/{configurator/configurator-context → react-sdk/lifecycle-providers}/LifecycleProviders.d.ts +0 -0
@@ -11,8 +11,7 @@ import type { ComponentSystemFilterProps, GradualComponentSystemFilter } from '.
11
11
  type FilterCriterion<KEY extends keyof ComponentSystemFilterProps> = [
12
12
  Required<ComponentSystemFilterProps>[KEY]
13
13
  ] extends [ReadonlyArray<infer ITEM>] ? readonly ITEM[] : Required<ComponentSystemFilterProps>[KEY];
14
- type CustomOpticRead<ENTITIES extends DomainEntity<string>, $ENTITY extends $DomainEntity<ENTITIES>, COMPONENT_STATE extends Record<string, unknown>, 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> = (self: $ENTITY, state: DomainState<ENTITIES>, ctx: OpenExpressionContext<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, CONTEXT_EXTENSION>) => COMPONENT_STATE;
15
- type CustomOpticAttach<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, $ENTITY extends $DomainEntity<ENTITIES>, COMPONENT_TYPE extends SystemComponentTypeConstraint, CONTEXT_EXTENSION> = (read: CustomOpticRead<ENTITIES, $ENTITY, StateOfComponent<COMPONENT_TYPE>, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, CONTEXT_EXTENSION>, write?: DomainComponentSimpleOptic<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ENTITY, COMPONENT_TYPE, CONTEXT_EXTENSION>['write']) => DomainComponentSimpleOptic<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ENTITY, COMPONENT_TYPE, CONTEXT_EXTENSION>;
14
+ type CustomOpticAttach<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, $ENTITY extends $DomainEntity<ENTITIES>, COMPONENT_TYPE extends SystemComponentTypeConstraint, CONTEXT_EXTENSION> = (read: CustomExpression<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, $ENTITY, StateOfComponent<COMPONENT_TYPE>, CONTEXT_EXTENSION>, write?: DomainComponentSimpleOptic<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ENTITY, COMPONENT_TYPE, CONTEXT_EXTENSION>['write']) => DomainComponentSimpleOptic<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ENTITY, COMPONENT_TYPE, CONTEXT_EXTENSION>;
16
15
  export interface DomainComponentSimpleOptic<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, COMPONENT_TYPE extends SystemComponentTypeConstraint, CONTEXT_EXTENSION = unknown> {
17
16
  readonly kind: 'simple';
18
17
  readonly instanceName: string;
@@ -1,4 +1,4 @@
1
- import{createCacheToken as t,getStickyCache as e}from"@salsita-ai/common/utils";import{withProfilerLabel as i}from"../../utils/profiler-label.js";import{createCustomExpression as n}from"../expression/index.js";let s={navigationStates:void 0,selectedEntityIds:void 0,hoveredEntityIds:void 0,draggedEntityIds:void 0,viewStates:void 0,toolStates:void 0,modes:void 0,roles:void 0,active:void 0,fullscreen:void 0,debug:void 0,viewports:void 0,exportedEntityIds:void 0,exportStates:void 0};export class DomainComponentOpticBuilder{aliasMap;entityTypes;componentType;instanceName;navigationFilters;generated;entityTypeOrAliasNames;constructor(t,e,i,n,s=[],a=!1,o=[]){this.aliasMap=t,this.entityTypes=e,this.componentType=i,this.instanceName=n,this.navigationFilters=s,this.generated=a,this.entityTypeOrAliasNames=o}static from(t){return new DomainComponentOpticBuilder(t,[])}withEntity(t){return new DomainComponentOpticBuilder(this.aliasMap,[...this.entityTypes,t],this.componentType,this.instanceName,this.navigationFilters,this.generated,[...this.entityTypeOrAliasNames,t])}withAlias(t){return new DomainComponentOpticBuilder(this.aliasMap,[...this.entityTypes,...this.aliasMap[t]],this.componentType,this.instanceName,this.navigationFilters,this.generated,[...this.entityTypeOrAliasNames,String(t)])}withComponent(t,e,i=!1){return new DomainComponentOpticBuilder(this.aliasMap,this.entityTypes,t,e,this.navigationFilters,i,this.entityTypeOrAliasNames)}withFilter(i){if(console.warn(`Component ${this.componentType?.name}#${this.instanceName} on entity ${this.entityTypes.join(", ")} uses a legacy filter with full filter evaluation. This is a suboptimal variant and is deprecated in favor of per-criterion evaluation.
1
+ import{createCacheToken as t,getStickyCache as e}from"@salsita-ai/common/utils";import{withProfilerLabel as i}from"../../utils/profiler-label.js";import{createCustomExpression as n}from"../expression/index.js";let s={navigationStates:void 0,selectedEntityIds:void 0,hoveredEntityIds:void 0,draggedEntityIds:void 0,viewStates:void 0,toolStates:void 0,modes:void 0,roles:void 0,active:void 0,fullscreen:void 0,debug:void 0,viewports:void 0,exportedEntityIds:void 0,exportStates:void 0},a=(n,s)=>{let a=t(),o=i(s,n.read);return{...n,read:(t,i,n)=>{let s=e(i,a),r=s.get(t);if(r)return r;let l=o(t,i,n);return s.put(t,l),l}}};export class DomainComponentOpticBuilder{aliasMap;entityTypes;componentType;instanceName;navigationFilters;generated;entityTypeOrAliasNames;constructor(t,e,i,n,s=[],a=!1,o=[]){this.aliasMap=t,this.entityTypes=e,this.componentType=i,this.instanceName=n,this.navigationFilters=s,this.generated=a,this.entityTypeOrAliasNames=o}static from(t){return new DomainComponentOpticBuilder(t,[])}withEntity(t){return new DomainComponentOpticBuilder(this.aliasMap,[...this.entityTypes,t],this.componentType,this.instanceName,this.navigationFilters,this.generated,[...this.entityTypeOrAliasNames,t])}withAlias(t){return new DomainComponentOpticBuilder(this.aliasMap,[...this.entityTypes,...this.aliasMap[t]],this.componentType,this.instanceName,this.navigationFilters,this.generated,[...this.entityTypeOrAliasNames,String(t)])}withComponent(t,e,i=!1){return new DomainComponentOpticBuilder(this.aliasMap,this.entityTypes,t,e,this.navigationFilters,i,this.entityTypeOrAliasNames)}withFilter(i){if(console.warn(`Component ${this.componentType?.name}#${this.instanceName} on entity ${this.entityTypes.join(", ")} uses a legacy filter with full filter evaluation. This is a suboptimal variant and is deprecated in favor of per-criterion evaluation.
2
2
 
3
3
  In your TS files, replace
4
4
  withFilter()
@@ -13,4 +13,4 @@ import{createCacheToken as t,getStickyCache as e}from"@salsita-ai/common/utils";
13
13
  active:
14
14
  $read: $trueOrFalseExpression
15
15
  # ... other eventual criteria
16
- `),"function"==typeof i){let n=t(),a=t=>({evaluate:(s,a,o)=>{let r=e(a,n),l=r.get(s);if(!l){if(void 0===(l=i(o.domain.get$Entity(s,a),a)))throw Error(`Dynamic filter on component ${this.componentType?.name}.${this.instanceName} on entity ${s} returned 'undefined'. This is likely a bug in the component definition, check whether you are referencing a correct expression or field!`);r.put(s,l)}return"boolean"==typeof l?"active"===t?l:void 0:l[t]},meta:{}});return new DomainComponentOpticBuilder(this.aliasMap,this.entityTypes,this.componentType,this.instanceName,[...this.navigationFilters,{...s,navigationStates:a("navigationStates"),selectedEntityIds:a("selectedEntityIds"),hoveredEntityIds:a("hoveredEntityIds"),draggedEntityIds:a("draggedEntityIds"),viewStates:a("viewStates"),toolStates:a("toolStates"),modes:a("modes"),roles:a("roles"),active:a("active"),fullscreen:a("fullscreen"),debug:a("debug"),viewports:a("viewports")}],this.generated,this.entityTypeOrAliasNames)}return"boolean"==typeof i?new DomainComponentOpticBuilder(this.aliasMap,this.entityTypes,this.componentType,this.instanceName,[...this.navigationFilters,{...s,active:i}],this.generated,this.entityTypeOrAliasNames):new DomainComponentOpticBuilder(this.aliasMap,this.entityTypes,this.componentType,this.instanceName,[...this.navigationFilters,{...s,...i}],this.generated,this.entityTypeOrAliasNames)}withGradualFilter(t){let e=t=>"function"==typeof t?n(t,{}):t,i={navigationStates:e(t.navigationStates),selectedEntityIds:e(t.selectedEntityIds),hoveredEntityIds:e(t.hoveredEntityIds),draggedEntityIds:e(t.draggedEntityIds),exportedEntityIds:e(t.exportedEntityIds),viewStates:e(t.viewStates),toolStates:e(t.toolStates),exportStates:e(t.exportStates),modes:e(t.modes),roles:e(t.roles),active:e(t.active),fullscreen:e(t.fullscreen),debug:e(t.debug),viewports:e(t.viewports)};return new DomainComponentOpticBuilder(this.aliasMap,this.entityTypes,this.componentType,this.instanceName,[...this.navigationFilters,i],this.generated,this.entityTypeOrAliasNames)}validate(){if(!this.componentType||!this.instanceName)throw Error("Use withComponent before attaching");if(!this.entityTypes.length)throw Error("Use withEntity and/or withAlias before attaching")}_getProfilerLabel(){return[...this.entityTypeOrAliasNames,this.componentType.name,this.instanceName].join("_")}attach=(n,s)=>{var a,o;let r,l;return this.validate(),a={kind:"simple",entityTypes:new Set(this.entityTypes),componentType:this.componentType,instanceName:this.instanceName,navigationFilters:this.navigationFilters,read:(t,e,i)=>n(i.domain.get$Entity(t,e),e,i),write:s??(()=>({})),generated:this.generated},o=this._getProfilerLabel(),r=t(),l=i(o,a.read),{...a,read:(t,i,n)=>{let s=e(i,r),a=s.get(t);if(a)return a;let o=l(t,i,n);return s.put(t,o),o}}};attachMany=n=>{var s,a;let o,r;return this.validate(),s={kind:"dynamic",entityTypes:new Set(this.entityTypes),componentType:this.componentType,instanceName:this.instanceName,navigationFilters:this.navigationFilters,read:(t,e,i)=>n(i.domain.get$Entity(t,e),e,i)},a=this._getProfilerLabel(),o=t(),r=i(a,s.read),{...s,read:(t,i,n)=>{let s=e(i,o),a=s.get(t);if(a)return a;let l=r(t,i,n);return s.put(t,l),l}}}}
16
+ `),"function"==typeof i){let n=t(),a=t=>({evaluate:(s,a,o)=>{let r=e(a,n),l=r.get(s);if(!l){if(void 0===(l=i(o.domain.get$Entity(s,a),a)))throw Error(`Dynamic filter on component ${this.componentType?.name}.${this.instanceName} on entity ${s} returned 'undefined'. This is likely a bug in the component definition, check whether you are referencing a correct expression or field!`);r.put(s,l)}return"boolean"==typeof l?"active"===t?l:void 0:l[t]},meta:{}});return new DomainComponentOpticBuilder(this.aliasMap,this.entityTypes,this.componentType,this.instanceName,[...this.navigationFilters,{...s,navigationStates:a("navigationStates"),selectedEntityIds:a("selectedEntityIds"),hoveredEntityIds:a("hoveredEntityIds"),draggedEntityIds:a("draggedEntityIds"),viewStates:a("viewStates"),toolStates:a("toolStates"),modes:a("modes"),roles:a("roles"),active:a("active"),fullscreen:a("fullscreen"),debug:a("debug"),viewports:a("viewports")}],this.generated,this.entityTypeOrAliasNames)}return"boolean"==typeof i?new DomainComponentOpticBuilder(this.aliasMap,this.entityTypes,this.componentType,this.instanceName,[...this.navigationFilters,{...s,active:i}],this.generated,this.entityTypeOrAliasNames):new DomainComponentOpticBuilder(this.aliasMap,this.entityTypes,this.componentType,this.instanceName,[...this.navigationFilters,{...s,...i}],this.generated,this.entityTypeOrAliasNames)}withGradualFilter(t){let e=t=>"function"==typeof t?n(t,{}):t,i={navigationStates:e(t.navigationStates),selectedEntityIds:e(t.selectedEntityIds),hoveredEntityIds:e(t.hoveredEntityIds),draggedEntityIds:e(t.draggedEntityIds),exportedEntityIds:e(t.exportedEntityIds),viewStates:e(t.viewStates),toolStates:e(t.toolStates),exportStates:e(t.exportStates),modes:e(t.modes),roles:e(t.roles),active:e(t.active),fullscreen:e(t.fullscreen),debug:e(t.debug),viewports:e(t.viewports)};return new DomainComponentOpticBuilder(this.aliasMap,this.entityTypes,this.componentType,this.instanceName,[...this.navigationFilters,i],this.generated,this.entityTypeOrAliasNames)}validate(){if(!this.componentType||!this.instanceName)throw Error("Use withComponent before attaching");if(!this.entityTypes.length)throw Error("Use withEntity and/or withAlias before attaching")}_getProfilerLabel(){return[...this.entityTypeOrAliasNames,this.componentType.name,this.instanceName].join("_")}attach=(t,e)=>(this.validate(),a({kind:"simple",entityTypes:new Set(this.entityTypes),componentType:this.componentType,instanceName:this.instanceName,navigationFilters:this.navigationFilters,read:(e,i,n)=>t(n.domain.get$Entity(e,i),i,n),write:e??(()=>({})),generated:this.generated},this._getProfilerLabel()));attachMany=t=>(this.validate(),a({kind:"dynamic",entityTypes:new Set(this.entityTypes),componentType:this.componentType,instanceName:this.instanceName,navigationFilters:this.navigationFilters,read:(e,i,n)=>t(n.domain.get$Entity(e,i),i,n)},this._getProfilerLabel()))}
@@ -1,5 +1,5 @@
1
1
  import type { SessionRole } from '@salsita-ai/contracts/api';
2
- import type { AnonymousExpression, OpenExpressionContext } from '../expression/index.js';
2
+ import type { AnonymousExpression } from '../expression/index.js';
3
3
  import type { DomainEntity, DomainEntityId } from '../model/index.js';
4
4
  import type { DomainState } from '../state/index.js';
5
5
  import { type Viewport } from './viewport-state-component.js';
@@ -75,7 +75,20 @@ export interface FilterMismatchReason {
75
75
  readonly draggedEntityIds?: readonly IdOrWithId[] | IdOrWithId;
76
76
  readonly active?: boolean;
77
77
  }
78
- export declare const isComponentActive: <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, CONTEXT_EXTENSION = unknown>(filterState: ComponentSystemFilterState, filters: ReadonlyArray<GradualComponentSystemFilter<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, CONTEXT_EXTENSION>>, id: SELF['id'], domainState: DomainState<ENTITIES>, context: OpenExpressionContext<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, CONTEXT_EXTENSION>, reportReason?: boolean) => boolean | readonly FilterMismatchReason[];
78
+ /**
79
+ * A filter as `isComponentActive` reads it: every criterion unset, a value, or an expression that
80
+ * is evaluated with the given id, state and context. A `GradualComponentSystemFilter` is one for
81
+ * the ids, the state and the expression context of its project.
82
+ */
83
+ type EvaluableComponentSystemFilter<ID, STATE, CONTEXT> = {
84
+ readonly [KEY in keyof Required<ComponentSystemFilterProps>]: undefined | FilterCriterion<KEY> | {
85
+ readonly evaluate: (id: ID, domainState: STATE, context: CONTEXT) => FilterCriterion<KEY> | undefined;
86
+ };
87
+ };
88
+ export declare const isComponentActive: <ID, STATE, CONTEXT extends {
89
+ readonly mode: 'owner' | 'read' | 'finalize';
90
+ readonly role: SessionRole;
91
+ }>(filterState: ComponentSystemFilterState, filters: ReadonlyArray<EvaluableComponentSystemFilter<ID, STATE, CONTEXT>>, id: ID, domainState: STATE, context: CONTEXT, reportReason?: boolean) => boolean | readonly FilterMismatchReason[];
79
92
  export declare const ComponentSystemFilterPropsSchema: {
80
93
  readonly tsType: 'ComponentSystemFilterProps';
81
94
  readonly import: [{
@@ -1,8 +1,16 @@
1
- import type { DomainEntity, ExpandAlias, TypeOrAlias } from '../model/index.js';
2
- import type { AnonymousExpression } from './expression.js';
3
- export type ConstantExpressions<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>, CONSTANTS extends Partial<Record<TypeOrAlias<ENTITIES, ALIASES>, Record<string, unknown>>>> = {
4
- readonly [TYPE_OR_ALIAS in keyof CONSTANTS & string]: {
5
- readonly [NAME in keyof CONSTANTS[TYPE_OR_ALIAS]]: AnonymousExpression<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ExpandAlias<ENTITIES, ALIASES, TYPE_OR_ALIAS>, CONSTANTS[TYPE_OR_ALIAS][NAME]>;
6
- };
7
- };
8
- export declare const createConstantExpressionFactory: <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>>() => <CONSTANTS extends Partial<Record<TypeOrAlias<ENTITIES, ALIASES>, Record<string, unknown>>>>(constants: CONSTANTS) => ConstantExpressions<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ALIASES, CONSTANTS>;
1
+ import type { ExpressionMeta } from './expression.js';
2
+ /**
3
+ * The constant expressions of a domain, keyed by entity type or alias and then by the name of the
4
+ * constant. A constant expression takes no argument: it reads neither the entity nor the state, so
5
+ * the domain of any project accepts it.
6
+ */
7
+ export type ConstantExpressions = Readonly<Record<string, Readonly<Record<string, {
8
+ evaluate(): unknown;
9
+ readonly meta: ExpressionMeta;
10
+ }>>>>;
11
+ /**
12
+ * Makes the function that turns the constants of a spec into expressions: every constant becomes an
13
+ * expression that returns its value. The type a project reads from a constant is the one its
14
+ * generated model declares for the property, not the type of the expression.
15
+ */
16
+ export declare const createConstantExpressionFactory: () => (constants: Readonly<Record<string, Readonly<Record<string, unknown>>>>) => ConstantExpressions;
@@ -1,7 +1,7 @@
1
- import type { $DomainEntity, DomainEntity, EntityByType, TypeOrAlias } from '../model/index.js';
1
+ import type { $DomainEntity, DomainEntity, DomainEntityId, TypeOrAlias } from '../model/index.js';
2
2
  import type { DomainState } from '../state/index.js';
3
3
  import type { AliasedExpressions } from './aliased-expressions.js';
4
- import type { AnonymousExpression, ExpressionMeta, OpenExpressionContext } from './expression.js';
4
+ import type { ExpressionMeta, OpenExpressionContext } from './expression.js';
5
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
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
7
  [TYPE_OR_ALIAS in keyof $MAP]?: {
@@ -9,4 +9,17 @@ export type PotentialCustomExpressions<ENTITIES extends DomainEntity<string>, AL
9
9
  };
10
10
  };
11
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
- export declare const createCustomExpression: <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>(evaluate: CustomExpression<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, $SELF, T, CONTEXT_EXTENSION>, meta: ExpressionMeta) => AnonymousExpression<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, EntityByType<ENTITIES, $SELF['type']>, T, 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
+ };
@@ -1,21 +1,13 @@
1
- import type { OmitEmpty, OmitNever } from '@salsita-ai/common/utils';
2
1
  import type { CustomExpression } from '../expression/index.js';
3
- import type { $DomainEntity, DomainEntity, ExpandAlias, TypeOrAlias } from '../model/index.js';
4
- import type { Invariant } from './invariants.js';
2
+ import type { $DomainEntity, DomainEntity, TypeOrAlias } from '../model/index.js';
3
+ import type { AliasedInvariants } from './invariants.js';
5
4
  import type { Violation } from './violation.js';
6
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> = {
7
6
  [TYPE_OR_ALIAS in keyof BLUEPRINTS]: {
8
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;
9
8
  };
10
9
  };
11
- export type StaticallyDefinedViolations<ENTITIES extends DomainEntity<string>, ALIASES extends Record<string, ENTITIES>, BLUEPRINTS extends Partial<Record<TypeOrAlias<ENTITIES, ALIASES>, Record<string, boolean | string>>>> = OmitEmpty<{
12
- [TYPE_OR_ALIAS in keyof BLUEPRINTS]: OmitNever<{
13
- [NAME in keyof BLUEPRINTS[TYPE_OR_ALIAS]]: BLUEPRINTS[TYPE_OR_ALIAS][NAME] extends boolean ? Violation<string> : never;
14
- }>;
15
- }>;
16
- export type InvariantsFromBlueprints<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>, BLUEPRINTS extends Partial<Record<TypeOrAlias<ENTITIES, ALIASES>, Record<string, boolean | string>>>, STATIC_VIOLATIONS extends StaticallyDefinedViolations<ENTITIES, ALIASES, BLUEPRINTS>, PICK extends keyof BLUEPRINTS = keyof BLUEPRINTS, CONTEXT_EXTENSION = unknown> = {
17
- readonly [TYPE_OR_ALIAS in keyof BLUEPRINTS & string & PICK]: ReadonlyArray<{
18
- [NAME in keyof BLUEPRINTS[TYPE_OR_ALIAS]]: Invariant<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ExpandAlias<ENTITIES, ALIASES, TYPE_OR_ALIAS>, BLUEPRINTS[TYPE_OR_ALIAS][NAME] extends boolean ? TYPE_OR_ALIAS extends keyof STATIC_VIOLATIONS ? NAME extends keyof STATIC_VIOLATIONS[TYPE_OR_ALIAS] ? STATIC_VIOLATIONS[TYPE_OR_ALIAS][NAME]['type'] : never : never : BLUEPRINTS[TYPE_OR_ALIAS][NAME] extends string ? BLUEPRINTS[TYPE_OR_ALIAS][NAME] : never, CONTEXT_EXTENSION>;
19
- }[keyof BLUEPRINTS[TYPE_OR_ALIAS]]>;
20
- };
21
- 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>() => <STATIC_VIOLATIONS extends StaticallyDefinedViolations<ENTITIES, ALIASES, BLUEPRINTS>>(staticViolations: STATIC_VIOLATIONS) => <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>) => InvariantsFromBlueprints<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ALIASES, BLUEPRINTS, STATIC_VIOLATIONS, TYPES_OR_ALIASES, CONTEXT_EXTENSION>;
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 {};
@@ -1,5 +1,5 @@
1
1
  import type { OpenExpressionContext } from '../expression/index.js';
2
- import type { $DomainEntity, DomainEntity, ExpandAlias, TypeOrAlias } from '../model/index.js';
2
+ import type { DomainEntity, ExpandAlias, TypeOrAlias } from '../model/index.js';
3
3
  import type { DomainState } from '../state/index.js';
4
4
  import { type Violation } from './violation.js';
5
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> {
@@ -8,6 +8,3 @@ export interface Invariant<ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_E
8
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
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
10
  };
11
- export type DeclaredInvariants<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>> = {
12
- readonly [TYPE in ENTITIES['type']]: '$violations' extends keyof $MAP[TYPE] ? $MAP[TYPE]['$violations'] extends () => ReadonlyArray<Violation<infer VIOLATION_TYPE>> ? ReadonlyArray<Invariant<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ENTITIES, VIOLATION_TYPE>> : never : never;
13
- };
@@ -1,5 +1,5 @@
1
1
  import type { I18n } from '@lingui/core';
2
- import type { Localizable } from '@salsita-ai/common/utils';
2
+ import { type Localizable } from '@salsita-ai/common/utils';
3
3
  import type { StateEmission } from '../emission/index.js';
4
4
  import type { $DomainEntity, DomainEntity, EntityId } from '../model/index.js';
5
5
  /**
@@ -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';
@@ -1 +1 @@
1
- let e=["fatal","fixable","warning","notice"];export const compareSeverity=(t,i)=>e.indexOf(t)-e.indexOf(i);export const ViolationSchema={type:"object",properties:{type:{type:"string"},severity:{enum:e.slice()},message:{type:"string"},controlViolationPriority:{type:"number"}},required:["type","severity"],additionalProperties:!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
  /**
@@ -1,55 +1,23 @@
1
- import type { OmitEmpty, OmitNever, UnionToIntersection } from '@salsita-ai/common/utils';
2
- import { type AliasMap, type DomainEntity, type DomainEntityId, type DomainEntityReflection, type EntityByType, type EventualAlias, type ExpandAlias, type ExtractFromAliasedRecord, type TypeOrAlias } from '../model/index.js';
3
- export type EntityDefaults<ENTITY extends DomainEntity<string>> = {
4
- [K in Exclude<keyof ENTITY, 'id' | 'type'>]: ENTITY[K] extends DomainEntityId<any> ? null : ENTITY[K];
5
- };
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. */
6
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. */
7
5
  export type EntityOverrides<ENTITIES extends DomainEntity<string>, TYPE extends ENTITIES['type']> = Partial<Omit<EntityByType<ENTITIES, TYPE>, 'type'>> & {
8
6
  type: TYPE;
9
7
  };
10
- export type DeclaredEntitiesDefaults<ENTITIES extends DomainEntity<string>> = {
11
- [K in ENTITIES['type']]: EntityDefaults<EntityByType<ENTITIES, K>>;
12
- };
13
- type ExpandDefaults<ENTITIES extends DomainEntity<string>, ALIASES extends Readonly<Record<string, ENTITIES>>, ALIASED_DEFAULTS extends Partial<Record<TypeOrAlias<ENTITIES, ALIASES>, Record<string, unknown>>>> = {
14
- [K in ENTITIES['type']]: ExtractFromAliasedRecord<ENTITIES, ALIASES, ALIASED_DEFAULTS, EventualAlias<ENTITIES, ALIASES, K> | K> extends infer DEFAULTS_FROM_ALIAS ? [
15
- DEFAULTS_FROM_ALIAS
16
- ] extends [never] ? Record<never, never> : unknown extends UnionToIntersection<DEFAULTS_FROM_ALIAS> ? never : UnionToIntersection<DEFAULTS_FROM_ALIAS> : never;
17
- };
18
- export type AliasedEntitiesDefaults<ENTITIES extends DomainEntity<string>, ALIASES extends Readonly<Record<string, ENTITIES>>> = {
19
- [K in TypeOrAlias<ENTITIES, ALIASES>]?: Partial<EntityDefaults<ExpandAlias<ENTITIES, ALIASES, K>>>;
20
- };
8
+ /** The function a project creates recipes with, `phx.domain.createRecipe`. */
21
9
  export type RecipeFactory<ENTITIES extends DomainEntity<string>> = <TYPE extends ENTITIES['type']>(overrides: EntityOverrides<ENTITIES, TYPE>) => EntityRecipe<EntityByType<ENTITIES, TYPE>>;
22
- type ConflictingDefaults<PROVIDED extends Record<string, Record<string, unknown>>, EXPECTED extends Record<string, Record<string, unknown>>> = OmitEmpty<OmitNever<{
23
- [TYPE in keyof PROVIDED | keyof EXPECTED]: TYPE extends keyof EXPECTED ? TYPE extends keyof PROVIDED ? PROVIDED[TYPE] extends EXPECTED[TYPE] ? never : OmitNever<Exclude<EXPECTED[TYPE], PROVIDED[TYPE]>> : EXPECTED[TYPE] : never;
24
- }>>;
25
- type Build<ENTITIES extends DomainEntity<string>, PROVIDED extends Record<string, Record<string, unknown>>, EXPECTED extends Record<string, Record<string, unknown>>> = Record<string, never> extends ConflictingDefaults<PROVIDED, EXPECTED> ? {
26
- build: () => RecipeFactory<ENTITIES>;
27
- } : {
28
- /**
29
- * DO NOT USE in runtime!
30
- *
31
- * This is just a dev-time tool to review which defaults you forgot to provide.
32
- * Use your IDEs code-completion to see which entities have missing expressions
33
- * and which expressions these are.
34
- *
35
- * Use the helper when you see the following error on the `.build()` method call:
36
- * ```
37
- * TS2349: This expression is not callable.
38
- * Type never has no call signatures.
39
- * ```
40
- * simply
41
- * ```ts
42
- * .withDefaults({...})
43
- * ._conflicts.Oven. // <- trigger code-completion here
44
- * ```
45
- */
46
- _conflicts: ConflictingDefaults<PROVIDED, EXPECTED>;
47
- };
48
- export declare const RecipeFactoryBuilder: {
49
- forAliases: <ENTITIES extends DomainEntity<string>, ALIASES extends Record<string, ENTITIES>>(aliasMap: AliasMap<ALIASES>) => {
50
- forEntities: (entityReflections: ReadonlyArray<ENTITIES extends any ? DomainEntityReflection<ENTITIES> : never>) => {
51
- withDefaults: <ALIASED_DEFAULTS extends AliasedEntitiesDefaults<ENTITIES, ALIASES>>(entitiesDefaults: ALIASED_DEFAULTS) => Build<ENTITIES, ExpandDefaults<ENTITIES, ALIASES, ALIASED_DEFAULTS>, DeclaredEntitiesDefaults<ENTITIES>>;
52
- };
53
- };
54
- };
55
- export {};
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>;
@@ -1 +1 @@
1
- import{_unsafeBuildDomainEntityId as e,expandAlias as r}from"../model/index.js";export const RecipeFactoryBuilder={forAliases:t=>({forEntities:o=>({withDefaults: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.`)}),{build:()=>r=>({id:e(r.type,1),...a[r.type],...r})}}})})};
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})};
@@ -1,32 +1,19 @@
1
1
  import type { ExpressionMeta } from '../expression/index.js';
2
- import { type AliasMap, type DomainEntity, type DomainEntityId, type TypeOrAlias } from '../model/index.js';
2
+ import { type AnyAliasMap, type DomainEntity, type DomainEntityId } from '../model/index.js';
3
3
  import type { DomainState } from '../state/index.js';
4
- interface AllOfType0Relation<ENTITIES extends DomainEntity<string>, ALIASES extends Record<string, ENTITIES>, TARGET extends TypeOrAlias<ENTITIES, ALIASES>> {
4
+ /** A relation whose related entities are all entities of the target type or alias. */
5
+ export interface AllOfTypeRelation {
5
6
  kind: 'allOfType';
6
- target: TARGET;
7
- cardinality: '0-1';
7
+ target: string;
8
+ cardinality: '0-1' | '1-1' | '0-N' | '1-N';
8
9
  meta?: ExpressionMeta;
9
10
  }
10
- interface AllOfType1Relation<ENTITIES extends DomainEntity<string>, ALIASES extends Record<string, ENTITIES>, TARGET extends TypeOrAlias<ENTITIES, ALIASES>> {
11
- kind: 'allOfType';
12
- target: TARGET;
13
- cardinality: '1-1';
14
- meta?: ExpressionMeta;
15
- }
16
- interface AllOfTypeNRelation<ENTITIES extends DomainEntity<string>, ALIASES extends Record<string, ENTITIES>, TARGET extends TypeOrAlias<ENTITIES, ALIASES>> {
17
- kind: 'allOfType';
18
- target: TARGET;
19
- cardinality: '0-N' | '1-N';
20
- meta?: ExpressionMeta;
21
- }
22
- export type AllOfTypeRelation<ENTITIES extends DomainEntity<string>, ALIASES extends Record<string, ENTITIES>, TARGET extends TypeOrAlias<ENTITIES, ALIASES>> = AllOfType0Relation<ENTITIES, ALIASES, TARGET> | AllOfType1Relation<ENTITIES, ALIASES, TARGET> | AllOfTypeNRelation<ENTITIES, ALIASES, TARGET>;
23
11
  /**
24
12
  * Resolves `allOfType` relations from a per-state index. Relations targeting the same set of types
25
13
  * share one bucket; the first resolution on a state walks the entities once to fill every bucket,
26
14
  * and every later resolution on that state is a lookup. Registration closes once the first state
27
15
  * has been indexed, so a bucket can never be missing from an index that was already built.
28
16
  */
29
- export declare const createAllOfTypeRelation: <ENTITIES extends DomainEntity<string>, ALIASES extends Record<string, ENTITIES>>(aliasMap: AliasMap<ALIASES>) => (relation: {
30
- readonly target: TypeOrAlias<ENTITIES, ALIASES>;
31
- }) => (_selfId: DomainEntityId<string>, state: DomainState<ENTITIES>) => DomainEntityId<string>[];
32
- export {};
17
+ export declare const createAllOfTypeRelation: (aliasMap: AnyAliasMap) => (relation: {
18
+ readonly target: string;
19
+ }) => (_selfId: DomainEntityId<string>, state: DomainState<DomainEntity<string>>) => DomainEntityId<string>[];
@@ -1 +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 ${String(o.target)} after evaluation started. Create all relation expressions before evaluating the domain state.`);let i=new Set(e(t,o.target)),l=[...i].sort().join("|");return r.set(l,i),(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(l)}};
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,28 +1,17 @@
1
+ import type { AnyDomain } from '../domain.js';
1
2
  import type { ExpressionMeta } from '../expression/index.js';
2
- import type { DomainEntity, ExpandAlias, TypeOrAlias } from '../model/index.js';
3
- import type { ArrayReferenceField, SingleReferenceField } from './reference-field.js';
4
- import type { RelationImplementation } from './relation-implementation.js';
5
- interface DirectArrayRelation<ENTITIES extends DomainEntity<string>, ALIASES extends Record<string, ENTITIES>, SELF extends TypeOrAlias<ENTITIES, ALIASES>, TARGET extends TypeOrAlias<ENTITIES, ALIASES>> {
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 {
6
11
  kind: 'direct';
7
- target: TARGET;
8
- field: ArrayReferenceField<ExpandAlias<ENTITIES, ALIASES, SELF>, ExpandAlias<ENTITIES, ALIASES, TARGET>>;
9
- cardinality: '0-N' | '1-N';
12
+ target: string;
13
+ field: string;
14
+ cardinality: '0-1' | '1-1' | '0-N' | '1-N';
10
15
  meta?: ExpressionMeta;
11
16
  }
12
- interface DirectSingle1Relation<ENTITIES extends DomainEntity<string>, ALIASES extends Record<string, ENTITIES>, SELF extends TypeOrAlias<ENTITIES, ALIASES>, TARGET extends TypeOrAlias<ENTITIES, ALIASES>> {
13
- kind: 'direct';
14
- target: TARGET;
15
- field: SingleReferenceField<ExpandAlias<ENTITIES, ALIASES, SELF>, ExpandAlias<ENTITIES, ALIASES, TARGET>, never>;
16
- cardinality: '1-1';
17
- meta?: ExpressionMeta;
18
- }
19
- interface DirectSingle0Relation<ENTITIES extends DomainEntity<string>, ALIASES extends Record<string, ENTITIES>, SELF extends TypeOrAlias<ENTITIES, ALIASES>, TARGET extends TypeOrAlias<ENTITIES, ALIASES>> {
20
- kind: 'direct';
21
- target: TARGET;
22
- field: SingleReferenceField<ExpandAlias<ENTITIES, ALIASES, SELF>, ExpandAlias<ENTITIES, ALIASES, TARGET>, null>;
23
- cardinality: '0-1';
24
- meta?: ExpressionMeta;
25
- }
26
- export type DirectRelation<ENTITIES extends DomainEntity<string>, ALIASES extends Record<string, ENTITIES>, SELF extends TypeOrAlias<ENTITIES, ALIASES>, TARGET extends TypeOrAlias<ENTITIES, ALIASES>> = DirectArrayRelation<ENTITIES, ALIASES, SELF, TARGET> | DirectSingle1Relation<ENTITIES, ALIASES, SELF, TARGET> | DirectSingle0Relation<ENTITIES, ALIASES, SELF, TARGET>;
27
- export declare const directRelation: RelationImplementation<'direct'>;
28
- export {};
17
+ export declare const directRelation: (relation: DirectRelation) => (selfId: DomainEntityId<string>, state: DomainState<DomainEntity<string>>, domain: AnyDomain) => Array<DomainEntityId<string>>;
@@ -6,4 +6,3 @@ export * from './indirect-relation.js';
6
6
  export * from './reference-component.js';
7
7
  export type * from './reference-field.js';
8
8
  export * from './relation-factory.js';
9
- export type * from './relation-implementation.js';
@@ -1,71 +1,17 @@
1
1
  import type { ExpressionMeta } from '../expression/index.js';
2
- import { type AliasMap, type DomainEntity, type DomainEntityId, type ExpandAlias, type TypeOrAlias } from '../model/index.js';
2
+ import { type AnyAliasMap, type DomainEntity, type DomainEntityId } from '../model/index.js';
3
3
  import type { DomainState } from '../state/index.js';
4
- import type { ArrayReferenceField, SingleReferenceField } from './reference-field.js';
5
- interface IndirectNullableSingle0Relation<ENTITIES extends DomainEntity<string>, ALIASES extends Record<string, ENTITIES>, SELF extends TypeOrAlias<ENTITIES, ALIASES>, TARGET extends TypeOrAlias<ENTITIES, ALIASES>> {
6
- kind: 'indirect';
7
- target: TARGET;
8
- field: SingleReferenceField<ExpandAlias<ENTITIES, ALIASES, TARGET>, ExpandAlias<ENTITIES, ALIASES, SELF>, null>;
9
- cardinality: '0-1';
10
- meta?: ExpressionMeta;
11
- }
12
- interface IndirectNonNullableSingle0Relation<ENTITIES extends DomainEntity<string>, ALIASES extends Record<string, ENTITIES>, SELF extends TypeOrAlias<ENTITIES, ALIASES>, TARGET extends TypeOrAlias<ENTITIES, ALIASES>> {
13
- kind: 'indirect';
14
- target: TARGET;
15
- field: SingleReferenceField<ExpandAlias<ENTITIES, ALIASES, TARGET>, ExpandAlias<ENTITIES, ALIASES, SELF>, never>;
16
- cardinality: '0-1';
17
- meta?: ExpressionMeta;
18
- }
19
- interface IndirectNullableSingle1Relation<ENTITIES extends DomainEntity<string>, ALIASES extends Record<string, ENTITIES>, SELF extends TypeOrAlias<ENTITIES, ALIASES>, TARGET extends TypeOrAlias<ENTITIES, ALIASES>> {
20
- kind: 'indirect';
21
- target: TARGET;
22
- field: SingleReferenceField<ExpandAlias<ENTITIES, ALIASES, TARGET>, ExpandAlias<ENTITIES, ALIASES, SELF>, null>;
23
- cardinality: '1-1';
24
- meta?: ExpressionMeta;
25
- }
26
- interface IndirectNonNullableSingle1Relation<ENTITIES extends DomainEntity<string>, ALIASES extends Record<string, ENTITIES>, SELF extends TypeOrAlias<ENTITIES, ALIASES>, TARGET extends TypeOrAlias<ENTITIES, ALIASES>> {
27
- kind: 'indirect';
28
- target: TARGET;
29
- field: SingleReferenceField<ExpandAlias<ENTITIES, ALIASES, TARGET>, ExpandAlias<ENTITIES, ALIASES, SELF>, never>;
30
- cardinality: '1-1';
31
- meta?: ExpressionMeta;
32
- }
33
- interface IndirectSingleNRelation<ENTITIES extends DomainEntity<string>, ALIASES extends Record<string, ENTITIES>, SELF extends TypeOrAlias<ENTITIES, ALIASES>, TARGET extends TypeOrAlias<ENTITIES, ALIASES>> {
34
- kind: 'indirect';
35
- target: TARGET;
36
- field: SingleReferenceField<ExpandAlias<ENTITIES, ALIASES, TARGET>, ExpandAlias<ENTITIES, ALIASES, SELF>, never>;
37
- cardinality: '0-N' | '1-N';
38
- meta?: ExpressionMeta;
39
- }
40
- interface IndirectNullableSingleNRelation<ENTITIES extends DomainEntity<string>, ALIASES extends Record<string, ENTITIES>, SELF extends TypeOrAlias<ENTITIES, ALIASES>, TARGET extends TypeOrAlias<ENTITIES, ALIASES>> {
41
- kind: 'indirect';
42
- target: TARGET;
43
- field: SingleReferenceField<ExpandAlias<ENTITIES, ALIASES, TARGET>, ExpandAlias<ENTITIES, ALIASES, SELF>, null>;
44
- cardinality: '0-N' | '1-N';
45
- meta?: ExpressionMeta;
46
- }
47
- interface IndirectArray0Relation<ENTITIES extends DomainEntity<string>, ALIASES extends Record<string, ENTITIES>, SELF extends TypeOrAlias<ENTITIES, ALIASES>, TARGET extends TypeOrAlias<ENTITIES, ALIASES>> {
48
- kind: 'indirect';
49
- target: TARGET;
50
- field: ArrayReferenceField<ExpandAlias<ENTITIES, ALIASES, TARGET>, ExpandAlias<ENTITIES, ALIASES, SELF>>;
51
- cardinality: '0-1';
52
- meta?: ExpressionMeta;
53
- }
54
- interface IndirectArray1Relation<ENTITIES extends DomainEntity<string>, ALIASES extends Record<string, ENTITIES>, SELF extends TypeOrAlias<ENTITIES, ALIASES>, TARGET extends TypeOrAlias<ENTITIES, ALIASES>> {
55
- kind: 'indirect';
56
- target: TARGET;
57
- field: ArrayReferenceField<ExpandAlias<ENTITIES, ALIASES, TARGET>, ExpandAlias<ENTITIES, ALIASES, SELF>>;
58
- cardinality: '1-1';
59
- meta?: ExpressionMeta;
60
- }
61
- interface IndirectArrayNRelation<ENTITIES extends DomainEntity<string>, ALIASES extends Record<string, ENTITIES>, SELF extends TypeOrAlias<ENTITIES, ALIASES>, TARGET extends TypeOrAlias<ENTITIES, ALIASES>> {
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 {
62
9
  kind: 'indirect';
63
- target: TARGET;
64
- field: ArrayReferenceField<ExpandAlias<ENTITIES, ALIASES, TARGET>, ExpandAlias<ENTITIES, ALIASES, SELF>>;
65
- cardinality: '0-N' | '1-N';
10
+ target: string;
11
+ field: string;
12
+ cardinality: '0-1' | '1-1' | '0-N' | '1-N';
66
13
  meta?: ExpressionMeta;
67
14
  }
68
- export type IndirectRelation<ENTITIES extends DomainEntity<string>, ALIASES extends Record<string, ENTITIES>, SELF extends TypeOrAlias<ENTITIES, ALIASES>, TARGET extends TypeOrAlias<ENTITIES, ALIASES>> = IndirectArray1Relation<ENTITIES, ALIASES, SELF, TARGET> | IndirectArray0Relation<ENTITIES, ALIASES, SELF, TARGET> | IndirectArrayNRelation<ENTITIES, ALIASES, SELF, TARGET> | IndirectNullableSingle0Relation<ENTITIES, ALIASES, SELF, TARGET> | IndirectNonNullableSingle0Relation<ENTITIES, ALIASES, SELF, TARGET> | IndirectNullableSingle1Relation<ENTITIES, ALIASES, SELF, TARGET> | IndirectNonNullableSingle1Relation<ENTITIES, ALIASES, SELF, TARGET> | IndirectSingleNRelation<ENTITIES, ALIASES, SELF, TARGET> | IndirectNullableSingleNRelation<ENTITIES, ALIASES, SELF, TARGET>;
69
15
  /**
70
16
  * Resolves `indirect` relations from a per-state reverse-reference index. Relations reading the
71
17
  * same field on the same set of target types share one index mapping each referenced id to the
@@ -73,8 +19,7 @@ export type IndirectRelation<ENTITIES extends DomainEntity<string>, ALIASES exte
73
19
  * every index, and every later resolution on that state is a lookup. Registration closes once the
74
20
  * first state has been indexed, so an index can never be missing from a state already walked.
75
21
  */
76
- export declare const createIndirectRelation: <ENTITIES extends DomainEntity<string>, ALIASES extends Record<string, ENTITIES>>(aliasMap: AliasMap<ALIASES>) => (relation: {
77
- readonly target: TypeOrAlias<ENTITIES, ALIASES>;
22
+ export declare const createIndirectRelation: (aliasMap: AnyAliasMap) => (relation: {
23
+ readonly target: string;
78
24
  readonly field: string;
79
- }) => (sourceId: DomainEntityId<string>, state: DomainState<ENTITIES>) => DomainEntityId<string>[];
80
- export {};
25
+ }) => (sourceId: DomainEntityId<string>, state: DomainState<DomainEntity<string>>) => DomainEntityId<string>[];
@@ -1 +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 ${String(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
+ 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)??[]}};