@salsita-ai/sdk 0.50.0-develop.d6ed5efd42 → 0.50.0-develop.d815756961

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 (1437) hide show
  1. package/README.md +20 -15
  2. package/dist/admin/create-admin-pages-from-spec.d.ts +1 -1
  3. package/dist/admin/default-admin-elements.d.ts +9 -0
  4. package/dist/admin/default-admin-elements.js +1 -0
  5. package/dist/admin/default-elements/built-in-entity-element.d.ts +10 -0
  6. package/dist/admin/default-elements/built-in-entity-element.js +1 -0
  7. package/dist/admin/default-elements/built-in-layout-element.d.ts +10 -0
  8. package/dist/admin/default-elements/built-in-layout-element.js +1 -0
  9. package/dist/admin/default-elements/index.d.ts +2 -0
  10. package/dist/admin/default-elements/index.js +1 -0
  11. package/dist/admin/index.d.ts +1 -0
  12. package/dist/admin/index.js +1 -1
  13. package/dist/application-spec/caching/content-diff.js +1 -1
  14. package/dist/application-spec/core/application-file.d.ts +0 -2
  15. package/dist/application-spec/core/application-file.js +1 -1
  16. package/dist/application-spec/core/components/component-filter.d.ts +53 -0
  17. package/dist/application-spec/core/components/component-filter.js +1 -0
  18. package/dist/application-spec/core/components/index.d.ts +2 -0
  19. package/dist/application-spec/core/components/index.js +1 -0
  20. package/dist/application-spec/core/components/sdk-code-ref.d.ts +9 -0
  21. package/dist/application-spec/core/components/sdk-code-ref.js +1 -0
  22. package/dist/application-spec/core/enhanced-json-value.d.ts +0 -68
  23. package/dist/application-spec/core/enhanced-json-value.js +1 -1
  24. package/dist/application-spec/core/expressions/index.d.ts +2 -0
  25. package/dist/application-spec/core/expressions/index.js +1 -0
  26. package/dist/application-spec/core/expressions/relation-expression-params.d.ts +11 -0
  27. package/dist/application-spec/core/expressions/sdk-expression-implementation.d.ts +24 -0
  28. package/dist/application-spec/core/expressions/sdk-expression-implementation.js +1 -0
  29. package/dist/application-spec/core/index.d.ts +2 -0
  30. package/dist/application-spec/core/index.js +1 -1
  31. package/dist/application-spec/core/json-value.d.ts +1 -1
  32. package/dist/application-spec/{core → enhanced-json}/eval-to-constant.d.ts +1 -1
  33. package/dist/application-spec/enhanced-json/index.d.ts +4 -0
  34. package/dist/application-spec/enhanced-json/index.js +1 -0
  35. package/dist/application-spec/enhanced-json/is-enhanced-json-array.d.ts +2 -0
  36. package/dist/application-spec/enhanced-json/is-enhanced-json-array.js +1 -0
  37. package/dist/application-spec/enhanced-json/resolve-enhanced-json-value.d.ts +18 -0
  38. package/dist/application-spec/enhanced-json/resolve-enhanced-json-value.js +1 -0
  39. package/dist/application-spec/enhanced-json/schema-from-value.d.ts +24 -0
  40. package/dist/application-spec/enhanced-json/schema-from-value.js +1 -0
  41. package/dist/application-spec/enhanced-json/stringify-enhanced-json-value.d.ts +14 -0
  42. package/dist/application-spec/enhanced-json/stringify-enhanced-json-value.js +1 -0
  43. package/dist/application-spec/enhanced-json/validate-enhanced-json-value-caps.d.ts +12 -0
  44. package/dist/application-spec/enhanced-json/validate-enhanced-json-value-caps.js +1 -0
  45. package/dist/application-spec/enhanced-json/validate-no-legacy-code-ref.d.ts +13 -0
  46. package/dist/application-spec/enhanced-json/validate-no-legacy-code-ref.js +1 -0
  47. package/dist/application-spec/errors/diagnostic-codes.d.ts +14 -0
  48. package/dist/application-spec/errors/diagnostic-codes.js +1 -1
  49. package/dist/application-spec/errors/diagnostic-messages.d.ts +17 -0
  50. package/dist/application-spec/errors/diagnostic-messages.js +1 -1
  51. package/dist/application-spec/generate-application/code/common/code-imports.js +1 -1
  52. package/dist/application-spec/generate-application/code/common/env-reader.js +2 -2
  53. package/dist/application-spec/generate-application/code/common/index.d.ts +1 -0
  54. package/dist/application-spec/generate-application/code/common/index.js +1 -1
  55. package/dist/application-spec/generate-application/code/common/single-quoted-string.d.ts +6 -0
  56. package/dist/application-spec/generate-application/code/common/single-quoted-string.js +1 -0
  57. package/dist/application-spec/generate-application/code/domain-runtime-files.js +1 -1
  58. package/dist/application-spec/generate-application/code/generate-application-code.d.ts +3 -2
  59. package/dist/application-spec/generate-application/code/generate-application-code.js +1 -1
  60. package/dist/application-spec/generate-application/code/project-scaffolding.d.ts +22 -14
  61. package/dist/application-spec/generate-application/code/project-scaffolding.js +2 -2
  62. package/dist/application-spec/generate-application/code/standalone-app-files.d.ts +2 -2
  63. package/dist/application-spec/generate-application/code/standalone-app-files.js +1 -1
  64. package/dist/application-spec/generate-application/code/story-files.js +1 -1
  65. package/dist/application-spec/generate-application/code/templates/admin-config.js +3 -0
  66. package/dist/application-spec/generate-application/code/templates/common/format-property-key.d.ts +7 -0
  67. package/dist/application-spec/generate-application/code/templates/common/format-property-key.js +1 -0
  68. package/dist/application-spec/generate-application/code/templates/common/schema-to-type-string.js +3 -3
  69. package/dist/application-spec/generate-application/code/templates/configurator-config.js +6 -4
  70. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/domain-factory-types.d.ts +35 -0
  71. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/domain-factory-types.js +5 -0
  72. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/index.d.ts +1 -0
  73. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/index.js +1 -0
  74. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-component-optics.d.ts +1 -1
  75. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-component-optics.js +7 -7
  76. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-defaults.d.ts +4 -2
  77. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-defaults.js +1 -1
  78. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-domain-block.js +72 -76
  79. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.d.ts +9 -1
  80. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.js +1 -1
  81. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-phx-globals.js +3 -0
  82. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-presets.js +1 -1
  83. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-relation-expressions.js +1 -1
  84. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-resources.d.ts +6 -8
  85. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-resources.js +21 -21
  86. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-states.d.ts +1 -1
  87. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-states.js +2 -2
  88. package/dist/application-spec/generate-application/code/templates/domain-spec/index.d.ts +3 -2
  89. package/dist/application-spec/generate-application/code/templates/domain-spec/index.js +1 -1
  90. package/dist/application-spec/generate-application/code/templates/domain-spec.js +12 -12
  91. package/dist/application-spec/generate-application/code/templates/domain.js +3 -3
  92. package/dist/application-spec/generate-application/code/templates/eslint-config.d.ts +5 -0
  93. package/dist/application-spec/generate-application/code/templates/eslint-config.js +4 -5
  94. package/dist/application-spec/generate-application/code/templates/frontend-config.js +3 -5
  95. package/dist/application-spec/generate-application/code/templates/gitignore.js +0 -3
  96. package/dist/application-spec/generate-application/code/templates/global-definition/generate-phx-types.d.ts +43 -0
  97. package/dist/application-spec/generate-application/code/templates/global-definition/generate-phx-types.js +31 -0
  98. package/dist/application-spec/generate-application/code/templates/global-definition/index.d.ts +1 -0
  99. package/dist/application-spec/generate-application/code/templates/global-definition/index.js +1 -1
  100. package/dist/application-spec/generate-application/code/templates/globals.js +24 -43
  101. package/dist/application-spec/generate-application/code/templates/index.d.ts +3 -10
  102. package/dist/application-spec/generate-application/code/templates/index.js +1 -1
  103. package/dist/application-spec/generate-application/code/templates/lingui-rc.d.ts +5 -0
  104. package/dist/application-spec/generate-application/code/templates/lingui-rc.js +4 -4
  105. package/dist/application-spec/generate-application/code/templates/prettier-config.d.ts +5 -0
  106. package/dist/application-spec/generate-application/code/templates/prettier-config.js +4 -5
  107. package/dist/application-spec/generate-application/code/templates/root-tsconfig.d.ts +6 -0
  108. package/dist/application-spec/generate-application/code/templates/root-tsconfig.js +2 -0
  109. package/dist/application-spec/generate-application/code/templates/skills/phoenix-cli-skill.js +1 -1
  110. package/dist/application-spec/generate-application/code/templates/skills/phoenix-create-configurator-skill.js +66 -42
  111. package/dist/application-spec/generate-application/code/templates/skills/phoenix-feedback-skill.js +5 -5
  112. package/dist/application-spec/generate-application/code/templates/skills/phoenix-review-skill.js +9 -3
  113. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill.js +1 -1
  114. package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.js +2 -2
  115. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.d.ts +35 -18
  116. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.js +6 -8
  117. package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.d.ts +58 -0
  118. package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.js +1 -0
  119. package/dist/application-spec/generate-application/code/templates/spec-code/index.d.ts +2 -0
  120. package/dist/application-spec/generate-application/code/templates/spec-code/index.js +1 -0
  121. package/dist/application-spec/generate-application/code/templates/spec-code/spec-code.d.ts +18 -0
  122. package/dist/application-spec/generate-application/code/templates/spec-code/spec-code.js +41 -0
  123. package/dist/application-spec/generate-application/code/templates/spec-messages/index.d.ts +1 -0
  124. package/dist/application-spec/generate-application/code/templates/spec-messages/index.js +1 -0
  125. package/dist/application-spec/generate-application/code/templates/spec-messages/spec-messages.d.ts +20 -0
  126. package/dist/application-spec/generate-application/code/templates/spec-messages/spec-messages.js +6 -0
  127. package/dist/application-spec/generate-application/code/templates/story/phx-module.d.ts +8 -2
  128. package/dist/application-spec/generate-application/code/templates/story/phx-module.js +15 -3
  129. package/dist/application-spec/generate-application/code/templates/story/wrapper.d.ts +3 -0
  130. package/dist/application-spec/generate-application/code/templates/story/wrapper.js +2 -1
  131. package/dist/application-spec/generate-application/code/templates/tsconfig.d.ts +5 -0
  132. package/dist/application-spec/generate-application/code/templates/tsconfig.js +1 -1
  133. package/dist/application-spec/generate-application/code/templates/webhook-builders.js +4 -3
  134. package/dist/application-spec/generate-application/code/templates/webhook-index.d.ts +6 -1
  135. package/dist/application-spec/generate-application/code/templates/webhook-index.js +10 -1
  136. package/dist/application-spec/generate-application/code/templates/webhooks-config.js +2 -3
  137. package/dist/application-spec/generate-application/index.d.ts +2 -0
  138. package/dist/application-spec/generate-application/index.js +1 -1
  139. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.d.ts +6 -4
  140. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.js +1 -1
  141. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.d.ts +8 -3
  142. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.js +1 -1
  143. package/dist/application-spec/generate-application/runtime/admin-runtime/states-runtime.d.ts +2 -2
  144. package/dist/application-spec/generate-application/runtime/application-runtime.d.ts +19 -7
  145. package/dist/application-spec/generate-application/runtime/application-runtime.js +1 -1
  146. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.d.ts +6 -4
  147. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.js +1 -1
  148. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.d.ts +7 -4
  149. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.js +1 -1
  150. package/dist/application-spec/generate-application/runtime/configurator-runtime/states-runtime.d.ts +2 -2
  151. package/dist/application-spec/generate-application/runtime/factory-data/factory-data-runtime.d.ts +43 -0
  152. package/dist/application-spec/generate-application/runtime/factory-data/factory-data-runtime.js +1 -0
  153. package/dist/application-spec/generate-application/runtime/factory-data/index.d.ts +3 -0
  154. package/dist/application-spec/generate-application/runtime/factory-data/index.js +1 -0
  155. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.d.ts +13 -0
  156. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.js +1 -0
  157. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.d.ts +16 -0
  158. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.js +1 -0
  159. package/dist/application-spec/generate-application/runtime/migrations/index.d.ts +1 -0
  160. package/dist/application-spec/generate-application/runtime/migrations/index.js +1 -0
  161. package/dist/application-spec/generate-application/runtime/migrations/migration-runtime.d.ts +53 -0
  162. package/dist/application-spec/generate-application/runtime/migrations/migration-runtime.js +1 -0
  163. package/dist/application-spec/generate-application/runtime/sections/assistant-runtime.d.ts +2 -2
  164. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.d.ts +3 -2
  165. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.js +1 -1
  166. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.d.ts +2 -1
  167. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.js +1 -1
  168. package/dist/application-spec/generate-application/runtime/sections/component-optic.d.ts +5 -1
  169. package/dist/application-spec/generate-application/runtime/sections/component-optic.js +1 -1
  170. package/dist/application-spec/generate-application/runtime/sections/data-runtime.d.ts +4 -4
  171. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.d.ts +7 -4
  172. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.js +1 -1
  173. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.d.ts +9 -5
  174. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.js +1 -1
  175. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.d.ts +3 -1
  176. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.js +1 -1
  177. package/dist/application-spec/generate-application/runtime/sections/theme-runtime.d.ts +2 -2
  178. package/dist/application-spec/generate-application/runtime/sections/transformers-runtime.d.ts +4 -6
  179. package/dist/application-spec/generate-application/runtime/spec-code/index.d.ts +2 -0
  180. package/dist/application-spec/generate-application/runtime/spec-code/index.js +1 -0
  181. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.d.ts +18 -0
  182. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.js +1 -0
  183. package/dist/application-spec/generate-application/runtime/spec-code/spec-code-module.d.ts +17 -0
  184. package/dist/application-spec/generate-application/runtime-spec/decode-runtime-spec.d.ts +9 -0
  185. package/dist/application-spec/generate-application/runtime-spec/decode-runtime-spec.js +1 -0
  186. package/dist/application-spec/generate-application/runtime-spec/encode-runtime-spec.d.ts +8 -0
  187. package/dist/application-spec/generate-application/runtime-spec/encode-runtime-spec.js +1 -0
  188. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.d.ts +27 -0
  189. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.js +1 -0
  190. package/dist/application-spec/generate-application/runtime-spec/index.d.ts +5 -0
  191. package/dist/application-spec/generate-application/runtime-spec/index.js +1 -0
  192. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.d.ts +68 -0
  193. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.js +1 -0
  194. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.d.ts +40 -0
  195. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.js +1 -0
  196. package/dist/application-spec/index.d.ts +1 -0
  197. package/dist/application-spec/index.js +1 -1
  198. package/dist/application-spec/parse-application-files/categorize/categorize-files.d.ts +34 -0
  199. package/dist/application-spec/parse-application-files/categorize/categorize-files.js +1 -1
  200. package/dist/application-spec/parse-application-files/categorize/earlier-generated-editor-configs.d.ts +16 -0
  201. package/dist/application-spec/parse-application-files/categorize/earlier-generated-editor-configs.js +9 -0
  202. package/dist/application-spec/parse-application-files/categorize/earlier-generated-tsconfig.d.ts +9 -0
  203. package/dist/application-spec/parse-application-files/categorize/earlier-generated-tsconfig.js +1 -0
  204. package/dist/application-spec/parse-application-files/categorize/module-analysis.d.ts +1 -1
  205. package/dist/application-spec/parse-application-files/categorize/module-analysis.js +1 -1
  206. package/dist/application-spec/parse-application-files/raw-spec/parse-yaml-spec-file.js +1 -1
  207. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.d.ts +16 -3
  208. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.js +1 -1
  209. package/dist/application-spec/parse-application-files/raw-spec/raw-spec-file.js +1 -1
  210. package/dist/application-spec/parse-application-files/spec/application/admin-spec/admin-spec.js +1 -1
  211. package/dist/application-spec/parse-application-files/spec/application/configurator-spec/configurator-spec.js +1 -1
  212. package/dist/application-spec/parse-application-files/spec/common/index.d.ts +1 -0
  213. package/dist/application-spec/parse-application-files/spec/common/index.js +1 -1
  214. package/dist/application-spec/parse-application-files/spec/common/value-type/format-value-type.d.ts +3 -0
  215. package/dist/application-spec/parse-application-files/spec/common/value-type/format-value-type.js +1 -0
  216. package/dist/application-spec/parse-application-files/spec/common/value-type/index.d.ts +5 -0
  217. package/dist/application-spec/parse-application-files/spec/common/value-type/index.js +1 -0
  218. package/dist/application-spec/parse-application-files/spec/common/value-type/intersect-value-types.d.ts +6 -0
  219. package/dist/application-spec/parse-application-files/spec/common/value-type/intersect-value-types.js +1 -0
  220. package/dist/application-spec/parse-application-files/spec/common/value-type/is-assignable-value-type.d.ts +8 -0
  221. package/dist/application-spec/parse-application-files/spec/common/value-type/is-assignable-value-type.js +1 -0
  222. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type-at.d.ts +10 -0
  223. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type-at.js +1 -0
  224. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type.d.ts +98 -0
  225. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type.js +1 -0
  226. package/dist/application-spec/parse-application-files/spec/components/bindings/component-path.d.ts +13 -0
  227. package/dist/application-spec/parse-application-files/spec/components/bindings/component-path.js +1 -0
  228. package/dist/application-spec/parse-application-files/spec/components/bindings/index.d.ts +2 -0
  229. package/dist/application-spec/parse-application-files/spec/components/bindings/index.js +1 -1
  230. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding-type.d.ts +24 -0
  231. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding-type.js +1 -0
  232. package/dist/application-spec/parse-application-files/spec/components/component-entry.d.ts +1 -9
  233. package/dist/application-spec/parse-application-files/spec/components/component-entry.js +1 -1
  234. package/dist/application-spec/parse-application-files/spec/components/component-filter.d.ts +1 -54
  235. package/dist/application-spec/parse-application-files/spec/components/component-filter.js +1 -1
  236. package/dist/application-spec/parse-application-files/spec/components/component-state-type.d.ts +8 -0
  237. package/dist/application-spec/parse-application-files/spec/components/component-state-type.js +1 -0
  238. package/dist/application-spec/parse-application-files/spec/components/filter-criterion-types.d.ts +13 -0
  239. package/dist/application-spec/parse-application-files/spec/components/filter-criterion-types.js +1 -0
  240. package/dist/application-spec/parse-application-files/spec/components/index.d.ts +1 -1
  241. package/dist/application-spec/parse-application-files/spec/components/index.js +1 -1
  242. package/dist/application-spec/parse-application-files/spec/components/static-entity-id.d.ts +14 -0
  243. package/dist/application-spec/parse-application-files/spec/components/static-entity-id.js +1 -0
  244. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.d.ts +6 -0
  245. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.js +1 -1
  246. package/dist/application-spec/parse-application-files/spec/components/user-components.d.ts +7 -4
  247. package/dist/application-spec/parse-application-files/spec/components/user-components.js +1 -1
  248. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.d.ts +24 -0
  249. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.js +1 -0
  250. package/dist/application-spec/parse-application-files/spec/expressions/expression-read.d.ts +13 -0
  251. package/dist/application-spec/parse-application-files/spec/expressions/expression-value-type.d.ts +9 -0
  252. package/dist/application-spec/parse-application-files/spec/expressions/expression-value-type.js +1 -0
  253. package/dist/application-spec/parse-application-files/spec/expressions/expression.d.ts +1 -28
  254. package/dist/application-spec/parse-application-files/spec/expressions/expression.js +1 -1
  255. package/dist/application-spec/parse-application-files/spec/expressions/expressions.d.ts +7 -3
  256. package/dist/application-spec/parse-application-files/spec/expressions/expressions.js +1 -1
  257. package/dist/application-spec/parse-application-files/spec/expressions/index.d.ts +0 -1
  258. package/dist/application-spec/parse-application-files/spec/expressions/index.js +1 -1
  259. package/dist/application-spec/parse-application-files/spec/expressions/memo-eval-plan.js +1 -1
  260. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.d.ts +3 -1
  261. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.js +1 -1
  262. package/dist/application-spec/parse-application-files/spec/invariants/invariants.d.ts +2 -2
  263. package/dist/application-spec/parse-application-files/spec/invariants/invariants.js +1 -1
  264. package/dist/application-spec/parse-application-files/spec/model/defaults.d.ts +7 -2
  265. package/dist/application-spec/parse-application-files/spec/model/defaults.js +1 -1
  266. package/dist/application-spec/parse-application-files/spec/model/index.d.ts +1 -0
  267. package/dist/application-spec/parse-application-files/spec/model/index.js +1 -1
  268. package/dist/application-spec/parse-application-files/spec/model/model-type-resolution.d.ts +10 -0
  269. package/dist/application-spec/parse-application-files/spec/model/model-type-resolution.js +1 -0
  270. package/dist/application-spec/parse-application-files/spec/relations/reference-field-type.d.ts +25 -0
  271. package/dist/application-spec/parse-application-files/spec/relations/reference-field-type.js +1 -0
  272. package/dist/application-spec/parse-application-files/spec/relations/relation-field-mismatch.d.ts +46 -0
  273. package/dist/application-spec/parse-application-files/spec/relations/relation-field-mismatch.js +1 -0
  274. package/dist/application-spec/parse-application-files/spec/relations/relations.d.ts +4 -3
  275. package/dist/application-spec/parse-application-files/spec/relations/relations.js +1 -1
  276. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.js +1 -1
  277. package/dist/application-spec/parse-application-files/spec/sections/infra.d.ts +2 -0
  278. package/dist/application-spec/parse-application-files/spec/sections/infra.js +1 -1
  279. package/dist/client/authorized-client.d.ts +3 -1
  280. package/dist/client/authorized-client.js +1 -1
  281. package/dist/client/contract.d.ts +34 -0
  282. package/dist/client/contract.js +1 -1
  283. package/dist/client/index.d.ts +2 -2
  284. package/dist/client/index.js +1 -1
  285. package/dist/client/local-authorized-client.d.ts +3 -1
  286. package/dist/client/local-authorized-client.js +1 -1
  287. package/dist/client/memory-authorized-client.d.ts +3 -1
  288. package/dist/client/memory-authorized-client.js +1 -1
  289. package/dist/client/phoenix-api.d.ts +797 -121
  290. package/dist/configurator/application-runtime/extensions/create-configurator-extensions.js +1 -1
  291. package/dist/configurator/application-runtime/extensions/selectors.d.ts +3 -1
  292. package/dist/configurator/application-runtime/extensions/selectors.js +1 -1
  293. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.d.ts +127 -3
  294. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.js +1 -1
  295. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.d.ts +7 -1
  296. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.js +1 -1
  297. package/dist/configurator/application-runtime/extensions/systems/drag-and-drop-system/drag-and-drop-system.d.ts +3 -3
  298. package/dist/configurator/application-runtime/extensions/systems/graphql-system/close-unclosed-braces.d.ts +12 -0
  299. package/dist/configurator/application-runtime/extensions/systems/graphql-system/close-unclosed-braces.js +1 -0
  300. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.js +1 -1
  301. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.d.ts +20 -4
  302. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.js +1 -1
  303. package/dist/configurator/application-runtime/extensions/systems/graphql-system/inject-assistant-lenses.d.ts +11 -0
  304. package/dist/configurator/application-runtime/extensions/systems/graphql-system/inject-assistant-lenses.js +1 -0
  305. package/dist/configurator/application-runtime/extensions/systems/index.d.ts +1 -1
  306. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.d.ts +2 -2
  307. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.js +1 -1
  308. package/dist/configurator/common/configurator-interface.d.ts +30 -1
  309. package/dist/configurator/common/configurator-interface.js +1 -1
  310. package/dist/configurator/common/index.d.ts +3 -1
  311. package/dist/configurator/common/index.js +1 -1
  312. package/dist/configurator/common/use-reset-camera.d.ts +6 -0
  313. package/dist/configurator/common/use-reset-camera.js +1 -0
  314. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.d.ts +12 -0
  315. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.js +1 -0
  316. package/dist/configurator/configuration-not-found-page/index.d.ts +1 -0
  317. package/dist/configurator/configuration-not-found-page/index.js +1 -0
  318. package/dist/configurator/configurator-context/PresetSelectionProvider.js +1 -1
  319. package/dist/configurator/configurator-context/configurator-hooks/layout-hooks.d.ts +1 -1
  320. package/dist/configurator/pages/ConfiguratorNotFoundPage.js +1 -1
  321. package/dist/configurator/pages/DefaultConfiguratorLayout.d.ts +7 -0
  322. package/dist/configurator/pages/DefaultConfiguratorLayout.js +1 -0
  323. package/dist/configurator/pages/DefaultNotAuthenticatedPage.d.ts +8 -0
  324. package/dist/configurator/pages/DefaultNotAuthenticatedPage.js +1 -0
  325. package/dist/configurator/pages/DefaultPresetUi.d.ts +7 -0
  326. package/dist/configurator/pages/DefaultPresetUi.js +1 -0
  327. package/dist/configurator/pages/LoadedConfiguratorDetailPage.js +1 -1
  328. package/dist/configurator/pages/NewConfiguratorPage.js +1 -1
  329. package/dist/configurator/pages/RootPage.js +1 -1
  330. package/dist/configurator/pages/configurator-layout-name.d.ts +2 -0
  331. package/dist/configurator/pages/configurator-layout-name.js +1 -0
  332. package/dist/configurator/pages/default-configurator-elements.d.ts +11 -0
  333. package/dist/configurator/pages/default-configurator-elements.js +1 -0
  334. package/dist/configurator/pages/default-elements/built-in-entity-element.d.ts +10 -0
  335. package/dist/configurator/pages/default-elements/built-in-entity-element.js +1 -0
  336. package/dist/configurator/pages/default-elements/built-in-layout-element.d.ts +10 -0
  337. package/dist/configurator/pages/default-elements/built-in-layout-element.js +1 -0
  338. package/dist/configurator/pages/default-elements/domain-control-elements.d.ts +6 -0
  339. package/dist/configurator/pages/default-elements/domain-control-elements.js +1 -0
  340. package/dist/configurator/pages/default-elements/index.d.ts +4 -0
  341. package/dist/configurator/pages/default-elements/index.js +1 -0
  342. package/dist/configurator/pages/default-elements/recipe-panel-elements.d.ts +3 -0
  343. package/dist/configurator/pages/default-elements/recipe-panel-elements.js +1 -0
  344. package/dist/configurator/pages/default-elements/sidebar-footer-elements.d.ts +7 -0
  345. package/dist/configurator/pages/default-elements/sidebar-footer-elements.js +1 -0
  346. package/dist/configurator/pages/default-elements/toolbar-elements.d.ts +7 -0
  347. package/dist/configurator/pages/default-elements/toolbar-elements.js +1 -0
  348. package/dist/configurator/pages/index.d.ts +1 -0
  349. package/dist/configurator/pages/index.js +1 -1
  350. package/dist/configurator/preset-screen-elements/PresetDeviceNotSupportedElement.d.ts +4 -0
  351. package/dist/configurator/preset-screen-elements/PresetDeviceNotSupportedElement.js +1 -0
  352. package/dist/configurator/preset-screen-elements/PresetPageActionElement.d.ts +4 -0
  353. package/dist/configurator/preset-screen-elements/PresetPageActionElement.js +1 -0
  354. package/dist/configurator/preset-screen-elements/index.d.ts +2 -0
  355. package/dist/configurator/preset-screen-elements/index.js +1 -0
  356. package/dist/configurator/scene/scene-controls/DeleteEntityFab.js +1 -1
  357. package/dist/configurator/scene/scene-controls/SelectionHotspot.js +1 -1
  358. package/dist/configurator/scene/scene-controls/hotspot-drag-handle/HotspotDragHandle.d.ts +1 -1
  359. package/dist/configurator/scene/scene-controls/hotspot-drag-handle/HotspotDragSceneHandle.d.ts +1 -1
  360. package/dist/configurator/scene/scene-entity/dimension-indicators/DimensionIndicator.d.ts +1 -1
  361. package/dist/configurator/scene/scene-entity/dimension-indicators/DimensionIndicatorInternal.d.ts +1 -1
  362. package/dist/configurator/scene/scene-entity/drag-and-drop/shared.d.ts +2 -2
  363. package/dist/configurator/scene/scene-entity/drag-and-drop/use-drag-object.d.ts +1 -1
  364. package/dist/configurator/scene/scene-entity/materials/RemoteReplacedMaterial.js +1 -1
  365. package/dist/configurator/scene/scene-entity/objects/SceneEntityObjectTextDecal.d.ts +1 -1
  366. package/dist/configurator/ui/assistant/AssistantChips.d.ts +8 -2
  367. package/dist/configurator/ui/assistant/AssistantChips.js +1 -1
  368. package/dist/configurator/ui/assistant/AssistantComposer.d.ts +2 -1
  369. package/dist/configurator/ui/assistant/AssistantComposer.js +1 -1
  370. package/dist/configurator/ui/assistant/AssistantMarkdown.d.ts +7 -2
  371. package/dist/configurator/ui/assistant/AssistantMarkdown.js +1 -1
  372. package/dist/configurator/ui/assistant/AssistantPanel.js +1 -1
  373. package/dist/configurator/ui/assistant/AssistantThread.d.ts +6 -2
  374. package/dist/configurator/ui/assistant/AssistantThread.js +1 -1
  375. package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.d.ts +13 -0
  376. package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.js +1 -0
  377. package/dist/configurator/ui/assistant/entity-link/entity-link-selection.d.ts +22 -0
  378. package/dist/configurator/ui/assistant/entity-link/entity-link-selection.js +1 -0
  379. package/dist/configurator/ui/assistant/entity-link/entity-link-state.d.ts +27 -0
  380. package/dist/configurator/ui/assistant/entity-link/entity-link-state.js +1 -0
  381. package/dist/configurator/ui/assistant/entity-link/index.d.ts +2 -0
  382. package/dist/configurator/ui/assistant/entity-link/index.js +1 -0
  383. package/dist/configurator/ui/assistant/form/AssistantForm.d.ts +19 -0
  384. package/dist/configurator/ui/assistant/form/AssistantForm.js +1 -0
  385. package/dist/configurator/ui/assistant/form/built-in-form-registry.d.ts +10 -0
  386. package/dist/configurator/ui/assistant/form/built-in-form-registry.js +1 -0
  387. package/dist/configurator/ui/assistant/form/compose-answer.d.ts +11 -0
  388. package/dist/configurator/ui/assistant/form/compose-answer.js +1 -0
  389. package/dist/configurator/ui/assistant/form/describe-build-errors.d.ts +6 -0
  390. package/dist/configurator/ui/assistant/form/describe-build-errors.js +1 -0
  391. package/dist/configurator/ui/assistant/form/form-element-definition.d.ts +14 -0
  392. package/dist/configurator/ui/assistant/form/form-element-definition.js +1 -0
  393. package/dist/configurator/ui/assistant/form/form-model.d.ts +38 -0
  394. package/dist/configurator/ui/assistant/form/form-model.js +1 -0
  395. package/dist/configurator/ui/assistant/form/form-registry.d.ts +31 -0
  396. package/dist/configurator/ui/assistant/form/form-registry.js +8 -0
  397. package/dist/configurator/ui/assistant/form/form-state.d.ts +4 -0
  398. package/dist/configurator/ui/assistant/form/form-state.js +1 -0
  399. package/dist/configurator/ui/assistant/form/index.d.ts +2 -0
  400. package/dist/configurator/ui/assistant/form/index.js +1 -0
  401. package/dist/configurator/ui/assistant/form/parse-form-block.d.ts +9 -0
  402. package/dist/configurator/ui/assistant/form/parse-form-block.js +1 -0
  403. package/dist/configurator/ui/assistant/form/read-form-attributes.d.ts +13 -0
  404. package/dist/configurator/ui/assistant/form/read-form-attributes.js +1 -0
  405. package/dist/configurator/ui/assistant/form-elements/FormGroup.d.ts +3 -0
  406. package/dist/configurator/ui/assistant/form-elements/FormGroup.js +1 -0
  407. package/dist/configurator/ui/assistant/form-elements/FormOptions.d.ts +3 -0
  408. package/dist/configurator/ui/assistant/form-elements/FormOptions.js +1 -0
  409. package/dist/configurator/ui/assistant/form-elements/FormReply.d.ts +3 -0
  410. package/dist/configurator/ui/assistant/form-elements/FormReply.js +1 -0
  411. package/dist/configurator/ui/assistant/form-elements/FormText.d.ts +3 -0
  412. package/dist/configurator/ui/assistant/form-elements/FormText.js +1 -0
  413. package/dist/configurator/ui/assistant/form-elements/form-element-props.d.ts +34 -0
  414. package/dist/configurator/ui/assistant/form-elements/index.d.ts +5 -0
  415. package/dist/configurator/ui/assistant/form-elements/index.js +1 -0
  416. package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.d.ts +16 -0
  417. package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.js +1 -0
  418. package/dist/configurator/ui/assistant/reference-link/assistant-link-target.d.ts +34 -0
  419. package/dist/configurator/ui/assistant/reference-link/assistant-link-target.js +1 -0
  420. package/dist/configurator/ui/assistant/reference-link/assistant-reference-details.d.ts +25 -0
  421. package/dist/configurator/ui/assistant/reference-link/assistant-reference-details.js +1 -0
  422. package/dist/configurator/ui/assistant/reference-link/index.d.ts +3 -0
  423. package/dist/configurator/ui/assistant/reference-link/index.js +1 -0
  424. package/dist/configurator/ui/assistant/reference-link/reference-styles.d.ts +12 -0
  425. package/dist/configurator/ui/assistant/reference-link/reference-styles.js +1 -0
  426. package/dist/configurator/ui/assistant/reference-link/use-assistant-reference-details.d.ts +8 -0
  427. package/dist/configurator/ui/assistant/reference-link/use-assistant-reference-details.js +1 -0
  428. package/dist/configurator/ui/assistant/resource-image/AssistantImage.d.ts +9 -0
  429. package/dist/configurator/ui/assistant/resource-image/AssistantImage.js +1 -0
  430. package/dist/configurator/ui/assistant/resource-image/index.d.ts +3 -0
  431. package/dist/configurator/ui/assistant/resource-image/index.js +1 -0
  432. package/dist/configurator/ui/assistant/resource-image/resource-path.d.ts +11 -0
  433. package/dist/configurator/ui/assistant/resource-image/resource-path.js +1 -0
  434. package/dist/configurator/ui/assistant/resource-image/use-resource-image-url.d.ts +5 -0
  435. package/dist/configurator/ui/assistant/resource-image/use-resource-image-url.js +1 -0
  436. package/dist/configurator/ui/assistant/streamed-markdown.d.ts +2 -0
  437. package/dist/configurator/ui/assistant/streamed-markdown.js +2 -2
  438. package/dist/configurator/ui/assistant/thread-items.d.ts +21 -3
  439. package/dist/configurator/ui/assistant/thread-items.js +1 -1
  440. package/dist/configurator/ui/assistant/use-follow-stream.js +1 -1
  441. package/dist/configurator/ui/configurator-layout/sidebar-keys/index.d.ts +1 -0
  442. package/dist/configurator/ui/configurator-layout/sidebar-keys/index.js +1 -0
  443. package/dist/configurator/ui/configurator-layout/sidebar-keys/sidebar-keys.d.ts +11 -0
  444. package/dist/configurator/ui/configurator-layout/sidebar-keys/sidebar-keys.js +1 -0
  445. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/DesktopSidebar.d.ts +101 -0
  446. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/DesktopSidebar.js +16 -0
  447. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/index.d.ts +1 -0
  448. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/index.js +1 -0
  449. package/dist/configurator/ui/configurator-layout/slots/services/InvariantViolations.d.ts +4 -4
  450. package/dist/configurator/ui/configurator-layout/slots/services/InvariantViolations.js +1 -1
  451. package/dist/configurator/ui/configurator-layout/slots/services/Services.js +1 -1
  452. package/dist/configurator/ui/configurator-layout/slots/services/SideEffects.d.ts +3 -6
  453. package/dist/configurator/ui/configurator-layout/slots/services/SideEffects.js +1 -1
  454. package/dist/configurator/ui/configurator-layout/slots/slots.d.ts +1 -0
  455. package/dist/configurator/ui/configurator-layout/slots/slots.js +1 -1
  456. package/dist/configurator/ui/configurator-layout/universal/DesktopLayout.d.ts +0 -74
  457. package/dist/configurator/ui/configurator-layout/universal/DesktopLayout.js +5 -20
  458. package/dist/configurator/ui/configurator-layout/universal/DesktopPreview.js +1 -1
  459. package/dist/configurator/ui/configurator-layout/universal/MobileLayout.js +4 -4
  460. package/dist/configurator/ui/configurator-layout/universal/MobilePreview.js +1 -1
  461. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.d.ts +47 -0
  462. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.js +1 -0
  463. package/dist/configurator/ui/configurator-layout/universal/use-scene-safe-area.d.ts +11 -26
  464. package/dist/configurator/ui/configurator-layout/universal/use-scene-safe-area.js +1 -1
  465. package/dist/configurator/ui/legacy/layout/common/CommonFinalizeButton.js +1 -1
  466. package/dist/configurator/ui/legacy/layout/common/CommonSummaryButton.js +1 -1
  467. package/dist/configurator/ui/legacy/layout/common/CommonTopNavigation.js +1 -1
  468. package/dist/configurator/ui/legacy/layout/common/ResponsiveFinalizeButton.js +1 -1
  469. package/dist/configurator/ui/legacy/layout/common/SummaryReadLayout.js +1 -1
  470. package/dist/configurator/ui/legacy/layout/simple/SimpleOwnerLayout.js +1 -1
  471. package/dist/configurator/ui/legacy/layout/simple/SimpleTopNavigation.js +1 -1
  472. package/dist/configurator/ui/legacy/layout/steps/StepsNavigation.d.ts +2 -2
  473. package/dist/configurator/ui/legacy/layout/steps/StepsNavigation.js +1 -1
  474. package/dist/configurator/ui/legacy/layout/steps/StepsOwnerLayout.js +1 -1
  475. package/dist/configurator/ui/legacy/layout/steps/StepsSidebarFooter.js +1 -1
  476. package/dist/configurator/ui/legacy/layout/tabs/TabsOwnerLayout.js +1 -1
  477. package/dist/configurator/ui/legacy/toolbar/common/DimensionUnitSelector.js +1 -1
  478. package/dist/configurator/ui/legacy/toolbar/common/MeasurementsIndicatorsSwitch.js +1 -1
  479. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/FullscreenToolbarAction.js +1 -1
  480. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/HelpToolbarAction.js +1 -1
  481. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/MeasurementsToolbarAction.js +1 -1
  482. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/UndoRedoToolbarGroup.js +1 -1
  483. package/dist/configurator/ui/phoenix-layout-elements/EnterFullscreenToolbarButton.js +1 -1
  484. package/dist/configurator/ui/phoenix-layout-elements/ExitFullscreenToolbarButton.js +1 -1
  485. package/dist/configurator/ui/phoenix-layout-elements/HelpToolbarButton.js +1 -1
  486. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomOwnerUi.d.ts +1 -0
  487. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomOwnerUi.js +1 -1
  488. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomReadUi.d.ts +1 -0
  489. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomReadUi.js +1 -1
  490. package/dist/configurator/ui/phoenix-layout-elements/MeasurementsToolbarButton.js +1 -1
  491. package/dist/configurator/ui/phoenix-layout-elements/RedoToolbarButton.js +1 -1
  492. package/dist/configurator/ui/phoenix-layout-elements/UndoToolbarButton.js +1 -1
  493. package/dist/configurator/ui/phoenix-layout-elements/header/common/back-button/use-go-back-action.js +1 -1
  494. package/dist/configurator/ui/phoenix-layout-elements/header/common/horizontal-tabs/DesktopHorizontalTabs.js +1 -1
  495. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.d.ts +2 -2
  496. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.js +1 -1
  497. package/dist/configurator/ui/phoenix-layout-elements/measurements/DimensionUnitSelector.js +1 -1
  498. package/dist/configurator/ui/phoenix-layout-elements/measurements/MeasurementsIndicatorsSwitch.js +1 -1
  499. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/basic/BasicFinalizeButton.js +1 -1
  500. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/CustomFinalizeButton.js +1 -1
  501. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/EnterSummaryButton.js +1 -1
  502. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/NextStepButton.js +1 -1
  503. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/PreviousStepButton.js +1 -1
  504. package/dist/configurator/ui/preset-layout/CategoryPresetUi.js +1 -1
  505. package/dist/configurator/ui/preset-layout/PresetUi.d.ts +4 -0
  506. package/dist/configurator/ui/preset-layout/PresetUi.js +1 -1
  507. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.d.ts +10 -0
  508. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.js +1 -0
  509. package/dist/configurator/ui/save-message-snackbars/index.d.ts +1 -0
  510. package/dist/configurator/ui/save-message-snackbars/index.js +1 -0
  511. package/dist/docs/complex-use-cases/filtered-controls-with-fix-dialog.mdx +16 -19
  512. package/dist/docs/complex-use-cases/sketching.mdx +0 -38
  513. package/dist/docs/controls/select-attribute/cardselect.mdx +9 -13
  514. package/dist/docs/controls/select-child-entity/cardselect.mdx +1 -0
  515. package/dist/docs/dimensions/3d-scene-integration/dimension-indicators.mdx +2 -2
  516. package/dist/docs/dimensions/3d-scene-integration/editable-angle-indicator.mdx +1 -1
  517. package/dist/docs/dimensions/3d-scene-integration/editable-distance-dimension-indicator.mdx +1 -1
  518. package/dist/docs/dimensions/3d-scene-integration/list-selector-dimension-indicator.mdx +1 -1
  519. package/dist/docs/drag-and-drop/drag-handle.mdx +1 -1
  520. package/dist/docs/drag-and-drop/hotspot-handle.mdx +1 -1
  521. package/dist/docs/drag-and-drop/planes.mdx +1 -1
  522. package/dist/docs/drag-and-drop/rotatable.mdx +2 -2
  523. package/dist/docs/fabs/basic.mdx +2 -2
  524. package/dist/docs/index.json +42 -1
  525. package/dist/docs/integrations/woocommerce/local-development.mdx +1 -1
  526. package/dist/docs/layouts/custom-layout.mdx +2435 -0
  527. package/dist/docs/layouts/header/fixed.mdx +2 -2
  528. package/dist/docs/layouts/header/floating.mdx +2 -2
  529. package/dist/docs/layouts/sidebar/in-a-custom-layout.mdx +380 -0
  530. package/dist/docs/layouts/sidebar-footer/basic.mdx +32 -77
  531. package/dist/docs/other-features/client-side-rendering/declarative.mdx +1 -1
  532. package/dist/docs/other-features/not-found-404.mdx +1 -1
  533. package/dist/docs/other-features/side-effects.mdx +8 -11
  534. package/dist/docs/other-features/transformers.mdx +4 -0
  535. package/dist/docs/other-features/violation-messages.mdx +52 -56
  536. package/dist/docs/phoenix/application-states.mdx +9 -7
  537. package/dist/docs/phoenix/clerk-sign-in.mdx +1 -1
  538. package/dist/docs/phoenix/components.mdx +6 -0
  539. package/dist/docs/phoenix/configurator-interface.mdx +266 -81
  540. package/dist/docs/phoenix/deployments.mdx +3 -7
  541. package/dist/docs/phoenix/domain-model.mdx +6 -0
  542. package/dist/docs/phoenix/expression-context.mdx +11 -3
  543. package/dist/docs/phoenix/finalization.mdx +1 -1
  544. package/dist/docs/phoenix/getting-started.mdx +7 -4
  545. package/dist/docs/phoenix/layout-slots.mdx +116 -0
  546. package/dist/docs/phoenix/localization.mdx +10 -6
  547. package/dist/docs/phoenix/migration-guide.mdx +24 -11
  548. package/dist/docs/phoenix/phoenix-cli.mdx +112 -65
  549. package/dist/docs/phoenix/project-structure.mdx +80 -36
  550. package/dist/docs/phoenix/quickstart.mdx +9 -9
  551. package/dist/docs/phoenix/sdk-builder-workflow.mdx +14 -14
  552. package/dist/docs/phoenix/testing.mdx +148 -0
  553. package/dist/docs/phoenix/webhook-membership.mdx +10 -9
  554. package/dist/docs/phoenix/webhooks.mdx +23 -6
  555. package/dist/docs/ux-guidelines/choosing-a-control.mdx +11 -0
  556. package/dist/domain/admin-domain/__generated/enhanced-model.d.ts +1 -2
  557. package/dist/domain/admin-domain/implementation/common-admin-expressions.d.ts +26 -12
  558. package/dist/domain/admin-domain/implementation/common-admin-publish.d.ts +1 -2
  559. package/dist/domain/admin-domain/index.d.ts +9 -5
  560. package/dist/domain/admin-domain/index.js +1 -1
  561. package/dist/domain/application/GetApplicationWrapperHandler.d.ts +2 -2
  562. package/dist/domain/application/GetThemeHandler.d.ts +1 -1
  563. package/dist/domain/application/GetWebComponentOptions.d.ts +1 -1
  564. package/dist/domain/application/admin-page-factories.d.ts +1 -2
  565. package/dist/domain/application/application-config.d.ts +9 -26
  566. package/dist/domain/application/assistant/assistant-fields.d.ts +12 -0
  567. package/dist/domain/application/assistant/assistant-fields.js +1 -0
  568. package/dist/domain/application/assistant/assistant-form-elements.d.ts +28 -0
  569. package/dist/domain/application/assistant/assistant-form-elements.js +1 -0
  570. package/dist/domain/application/assistant/assistant-manifest.d.ts +11 -1
  571. package/dist/domain/application/assistant/assistant-resolved-manifest.d.ts +38 -2
  572. package/dist/domain/application/assistant/assistant-resolved-manifest.js +1 -1
  573. package/dist/domain/application/assistant/assistant-value-type.js +1 -1
  574. package/dist/domain/application/assistant/build-assistant-lenses.d.ts +14 -0
  575. package/dist/domain/application/assistant/build-assistant-lenses.js +5 -0
  576. package/dist/domain/application/assistant/build-assistant-manifest.js +1 -1
  577. package/dist/domain/application/assistant/create-assistant-execution-schema.d.ts +32 -0
  578. package/dist/domain/application/assistant/create-assistant-execution-schema.js +1 -0
  579. package/dist/domain/application/assistant/generate-assistant-prompt.d.ts +1 -11
  580. package/dist/domain/application/assistant/generate-assistant-prompt.js +1 -1
  581. package/dist/domain/application/assistant/index.d.ts +8 -1
  582. package/dist/domain/application/assistant/index.js +1 -1
  583. package/dist/domain/application/assistant/session-setup/AssistantSetupHandler.d.ts +20 -0
  584. package/dist/domain/application/assistant/session-setup/AssistantSetupHandler.js +1 -0
  585. package/dist/domain/application/assistant/session-setup/apply-assistant-setup.d.ts +10 -0
  586. package/dist/domain/application/assistant/session-setup/apply-assistant-setup.js +1 -0
  587. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.d.ts +48 -0
  588. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.js +1 -0
  589. package/dist/domain/application/assistant/session-setup/create-session-assistant.d.ts +15 -0
  590. package/dist/domain/application/assistant/session-setup/create-session-assistant.js +1 -0
  591. package/dist/domain/application/assistant/session-setup/index.d.ts +4 -0
  592. package/dist/domain/application/assistant/session-setup/index.js +1 -0
  593. package/dist/domain/application/assistant-mutations.d.ts +2 -2
  594. package/dist/domain/application/assistant-mutations.js +1 -1
  595. package/dist/domain/application/assistant-recipe-groups.d.ts +5 -5
  596. package/dist/domain/application/configurator-builder.d.ts +5 -2
  597. package/dist/domain/application/configurator-builder.js +1 -1
  598. package/dist/domain/application/create-initial-published-data.d.ts +6 -7
  599. package/dist/domain/application/index.d.ts +2 -6
  600. package/dist/domain/application/index.js +1 -1
  601. package/dist/domain/application/published-data/DataRowValidatorHandler.d.ts +1 -1
  602. package/dist/domain/application/published-data/FilterPublishedChunksHandler.d.ts +1 -1
  603. package/dist/domain/application/published-data/MapPublishedChunkedDataHandler.d.ts +1 -1
  604. package/dist/domain/application/published-data/MapPublishedRevisionDataHandler.d.ts +1 -1
  605. package/dist/domain/application/published-data/SheetValidatorHandler.d.ts +1 -1
  606. package/dist/domain/application/published-data/build-legend-data.d.ts +1 -1
  607. package/dist/domain/application/published-data/format-field-type.d.ts +1 -1
  608. package/dist/domain/application/published-data/map-data-to-sheet.d.ts +1 -1
  609. package/dist/domain/application/published-data/map-published-chunked-data.d.ts +3 -3
  610. package/dist/domain/application/published-data/map-published-data.d.ts +7 -3
  611. package/dist/domain/application/published-data/validate-sheet-data.d.ts +1 -1
  612. package/dist/domain/available-system-components.js +1 -1
  613. package/dist/domain/core/action/action-factory.d.ts +11 -0
  614. package/dist/domain/core/{action.d.ts → action/action.d.ts} +21 -16
  615. package/dist/domain/core/action/action.js +1 -0
  616. package/dist/domain/core/action/index.d.ts +2 -0
  617. package/dist/domain/core/action/index.js +1 -0
  618. package/dist/domain/{components → core/component}/component-reader-types.d.ts +1 -1
  619. package/dist/domain/core/component/component-reader-types.js +1 -0
  620. package/dist/domain/{components → core/component}/debug-state-component.d.ts +1 -1
  621. package/dist/domain/core/component/debug-state-component.js +1 -0
  622. package/dist/domain/core/component/domain-component-optic.d.ts +65 -0
  623. package/dist/domain/core/component/domain-component-optic.js +16 -0
  624. package/dist/domain/{components → core/component}/drag-state-component.d.ts +1 -1
  625. package/dist/domain/core/component/drag-state-component.js +1 -0
  626. package/dist/domain/{components → core/component}/export-state-component.d.ts +1 -1
  627. package/dist/domain/core/component/export-state-component.js +1 -0
  628. package/dist/domain/{components → core/component}/fullscreen-state-component.d.ts +1 -1
  629. package/dist/domain/core/component/fullscreen-state-component.js +1 -0
  630. package/dist/domain/{components → core/component}/group-components-by-entity-id-and-name.d.ts +1 -1
  631. package/dist/domain/core/component/group-components-by-entity-id-and-name.js +1 -0
  632. package/dist/domain/{components → core/component}/hover-state-component.d.ts +1 -1
  633. package/dist/domain/core/component/hover-state-component.js +1 -0
  634. package/dist/domain/core/component/index.d.ts +18 -0
  635. package/dist/domain/core/component/index.js +1 -0
  636. package/dist/domain/{components → core/component}/legacy-filter.d.ts +4 -18
  637. package/dist/domain/{components → core/component}/navigation-state-component.d.ts +1 -1
  638. package/dist/domain/core/component/navigation-state-component.js +1 -0
  639. package/dist/domain/{components → core/component}/selection-state-component.d.ts +1 -1
  640. package/dist/domain/core/component/selection-state-component.js +1 -0
  641. package/dist/domain/{components → core/component}/system-component-builder.d.ts +1 -1
  642. package/dist/domain/core/component/system-component-builder.js +1 -0
  643. package/dist/domain/{components → core/component}/system-component-filter.d.ts +38 -18
  644. package/dist/domain/core/component/system-virtual-entity.js +1 -0
  645. package/dist/domain/{components → core/component}/tool-state-component.d.ts +1 -1
  646. package/dist/domain/core/component/tool-state-component.js +1 -0
  647. package/dist/domain/{components → core/component}/updates.d.ts +1 -1
  648. package/dist/domain/{components → core/component}/view-state-component.d.ts +1 -1
  649. package/dist/domain/core/component/view-state-component.js +1 -0
  650. package/dist/domain/{components → core/component}/viewport-state-component.d.ts +1 -1
  651. package/dist/domain/core/component/viewport-state-component.js +1 -0
  652. package/dist/domain/core/data-schema/data-cell-value.d.ts +4 -0
  653. package/dist/domain/core/data-schema/data-cell-value.js +1 -0
  654. package/dist/domain/core/data-schema/data-schema-array-field.d.ts +5 -0
  655. package/dist/domain/core/data-schema/data-schema-array-field.js +1 -0
  656. package/dist/domain/core/data-schema/data-schema-field-object.d.ts +4 -0
  657. package/dist/domain/core/data-schema/data-schema-field-object.js +1 -0
  658. package/dist/domain/core/data-schema/data-schema-field.d.ts +2 -0
  659. package/dist/domain/core/data-schema/data-schema-field.js +1 -0
  660. package/dist/domain/core/data-schema/data-schema-localized-field.d.ts +4 -0
  661. package/dist/domain/core/data-schema/data-schema-localized-field.js +1 -0
  662. package/dist/domain/core/data-schema/data-schema-primitive-field.d.ts +5 -0
  663. package/dist/domain/core/data-schema/data-schema-primitive-field.js +1 -0
  664. package/dist/domain/core/data-schema/data-schema.d.ts +2 -0
  665. package/dist/domain/core/data-schema/data-schema.js +1 -0
  666. package/dist/domain/core/data-schema/index.d.ts +7 -0
  667. package/dist/domain/core/data-schema/index.js +1 -0
  668. package/dist/domain/core/domain-factory.d.ts +1 -1
  669. package/dist/domain/core/domain.d.ts +2 -2
  670. package/dist/domain/core/emission/index.d.ts +8 -0
  671. package/dist/domain/core/emission/index.js +1 -0
  672. package/dist/domain/core/emission/reset-state-emission.d.ts +12 -0
  673. package/dist/domain/core/emission/reset-state-emission.js +1 -0
  674. package/dist/domain/core/emission/state-emission.d.ts +4 -0
  675. package/dist/domain/core/emission/state-emission.js +1 -0
  676. package/dist/domain/core/emission/state-update-emission.d.ts +14 -0
  677. package/dist/domain/core/emission/state-update-emission.js +1 -0
  678. package/dist/domain/core/emission/state-validation-result.d.ts +18 -0
  679. package/dist/domain/core/emission/state-validation-result.js +1 -0
  680. package/dist/domain/core/emission/transformation-log.d.ts +2 -0
  681. package/dist/domain/core/emission/transformation-log.js +1 -0
  682. package/dist/domain/core/emission/transformer-log-entry.d.ts +6 -0
  683. package/dist/domain/core/emission/transformer-log-entry.js +1 -0
  684. package/dist/domain/core/emission/transformer-log.d.ts +11 -0
  685. package/dist/domain/core/emission/transformer-log.js +1 -0
  686. package/dist/domain/core/emission/transformer-phase.d.ts +1 -0
  687. package/dist/domain/core/emission/transformer-phase.js +1 -0
  688. package/dist/domain/core/expression/aliased-expressions.d.ts +10 -0
  689. package/dist/domain/core/expression/aliased-expressions.js +1 -0
  690. package/dist/domain/core/expression/constant-expressions.d.ts +16 -8
  691. package/dist/domain/core/expression/constant-expressions.js +1 -1
  692. package/dist/domain/core/expression/custom-expression.d.ts +21 -8
  693. package/dist/domain/core/expression/custom-expression.js +1 -1
  694. package/dist/domain/core/expression/expression.d.ts +15 -17
  695. package/dist/domain/core/expression/index.d.ts +1 -2
  696. package/dist/domain/core/expression/index.js +1 -1
  697. package/dist/domain/core/index.d.ts +7 -1
  698. package/dist/domain/core/index.js +1 -1
  699. package/dist/domain/{invariants → core/invariant}/builtin-invariant.d.ts +2 -1
  700. package/dist/domain/core/invariant/custom-invariants.d.ts +13 -0
  701. package/dist/domain/core/invariant/custom-invariants.js +1 -0
  702. package/dist/domain/core/invariant/index.d.ts +5 -0
  703. package/dist/domain/core/invariant/index.js +1 -0
  704. package/dist/domain/core/invariant/invariants.d.ts +10 -0
  705. package/dist/domain/core/invariant/invariants.js +1 -0
  706. package/dist/domain/core/invariant/violation-component.js +1 -0
  707. package/dist/domain/{invariants → core/invariant}/violation.d.ts +52 -4
  708. package/dist/domain/core/invariant/violation.js +1 -0
  709. package/dist/domain/core/model/model.d.ts +1 -1
  710. package/dist/domain/core/recipe/index.d.ts +1 -0
  711. package/dist/domain/core/recipe/index.js +1 -0
  712. package/dist/domain/core/recipe/recipes.d.ts +23 -0
  713. package/dist/domain/core/recipe/recipes.js +1 -0
  714. package/dist/domain/core/relation/all-of-type-relation.d.ts +19 -0
  715. package/dist/domain/core/relation/all-of-type-relation.js +1 -0
  716. package/dist/domain/{relations → core/relation}/component-factories.d.ts +1 -1
  717. package/dist/domain/core/relation/component-factories.js +1 -0
  718. package/dist/domain/{relations → core/relation}/composed-of.d.ts +1 -1
  719. package/dist/domain/core/relation/composed-of.js +1 -0
  720. package/dist/domain/core/relation/direct-relation.d.ts +17 -0
  721. package/dist/domain/core/relation/index.d.ts +8 -0
  722. package/dist/domain/core/relation/index.js +1 -0
  723. package/dist/domain/core/relation/indirect-relation.d.ts +25 -0
  724. package/dist/domain/core/relation/indirect-relation.js +1 -0
  725. package/dist/domain/{relations → core/relation}/reference-component.d.ts +4 -4
  726. package/dist/domain/core/relation/reference-component.js +1 -0
  727. package/dist/domain/{relations → core/relation}/reference-field.d.ts +1 -1
  728. package/dist/domain/core/relation/reference-field.js +1 -0
  729. package/dist/domain/core/relation/relation-factory.d.ts +22 -0
  730. package/dist/domain/core/relation/relation-factory.js +1 -0
  731. package/dist/domain/core/schema/extended-schema-validator.js +1 -1
  732. package/dist/domain/core/state/migrations.d.ts +14 -45
  733. package/dist/domain/core/state/migrations.js +1 -1
  734. package/dist/domain/core/state/state.d.ts +1 -1
  735. package/dist/domain/domain-builder.d.ts +2 -5
  736. package/dist/domain/domain-builder.js +1 -1
  737. package/dist/domain/domain-context/action-system/action-system.d.ts +2 -2
  738. package/dist/domain/domain-context/action-system/action-system.js +1 -1
  739. package/dist/domain/domain-context/action-system/index.d.ts +1 -0
  740. package/dist/domain/domain-context/action-system/index.js +1 -0
  741. package/dist/domain/domain-context/analytics-system/index.d.ts +2 -0
  742. package/dist/domain/domain-context/analytics-system/index.js +1 -0
  743. package/dist/domain/domain-context/create-transformer.d.ts +1 -1
  744. package/dist/domain/domain-context/dimension-system/dimension-state.js +1 -1
  745. package/dist/domain/domain-context/dimension-system/dimension-system.d.ts +3 -4
  746. package/dist/domain/domain-context/dimension-system/dimension-system.js +1 -1
  747. package/dist/domain/domain-context/dimension-system/index.d.ts +1 -0
  748. package/dist/domain/domain-context/dimension-system/index.js +1 -0
  749. package/dist/domain/domain-context/domain-context-systems.d.ts +7 -7
  750. package/dist/domain/domain-context/index.d.ts +8 -18
  751. package/dist/domain/domain-context/index.js +1 -1
  752. package/dist/domain/domain-context/navigation-system/index.d.ts +3 -0
  753. package/dist/domain/domain-context/navigation-system/index.js +1 -0
  754. package/dist/domain/domain-context/navigation-system/navigation-system.d.ts +5 -7
  755. package/dist/domain/domain-context/navigation-system/navigation-system.js +1 -1
  756. package/dist/domain/domain-context/navigation-system/navigation-updates.d.ts +1 -12
  757. package/dist/domain/domain-context/navigation-system/navigation-updates.js +1 -1
  758. package/dist/domain/domain-context/navigation-system/selection-transformers.d.ts +1 -1
  759. package/dist/domain/domain-context/recipe-system/index.d.ts +1 -0
  760. package/dist/domain/domain-context/recipe-system/index.js +1 -0
  761. package/dist/domain/domain-context/recipe-system/recipe-cooker-system.d.ts +2 -4
  762. package/dist/domain/domain-context/recipe-system/recipe-cooker-system.js +1 -1
  763. package/dist/domain/domain-context/relation-transformers/cascade-deletes.d.ts +2 -2
  764. package/dist/domain/domain-context/relation-transformers/cascade-deletes.js +1 -1
  765. package/dist/domain/domain-context/relation-transformers/cascade-ref-pruning.d.ts +3 -3
  766. package/dist/domain/domain-context/relation-transformers/cascade-ref-pruning.js +1 -1
  767. package/dist/domain/domain-context/relation-transformers/create-entity-refs.d.ts +3 -3
  768. package/dist/domain/domain-context/relation-transformers/create-entity-refs.js +2 -2
  769. package/dist/domain/domain-context/relation-transformers/index.d.ts +4 -0
  770. package/dist/domain/domain-context/relation-transformers/index.js +1 -0
  771. package/dist/domain/domain-context/relation-transformers/replace-refs.d.ts +3 -3
  772. package/dist/domain/domain-context/relation-transformers/replace-refs.js +1 -1
  773. package/dist/domain/domain-context/store-system/apply-updates.d.ts +1 -2
  774. package/dist/domain/domain-context/store-system/index.d.ts +4 -0
  775. package/dist/domain/domain-context/store-system/index.js +1 -0
  776. package/dist/domain/domain-context/store-system/next-domain-entity-id.d.ts +1 -2
  777. package/dist/domain/domain-context/store-system/reconcile-projected-entities.d.ts +1 -2
  778. package/dist/domain/domain-context/store-system/reconcile-projected-entities.js +1 -1
  779. package/dist/domain/domain-context/store-system/store-system.d.ts +2 -37
  780. package/dist/domain/domain-context/store-system/store-system.js +2 -2
  781. package/dist/domain/domain-context/store-system/system-state.d.ts +2 -2
  782. package/dist/domain/domain-context/store-system/system-state.js +1 -1
  783. package/dist/domain/domain-context/transformers/actions-builder.d.ts +1 -2
  784. package/dist/domain/domain-context/transformers/actions-builder.js +1 -1
  785. package/dist/domain/domain-context/transformers/auto-snap-transformer.d.ts +6 -9
  786. package/dist/domain/domain-context/transformers/auto-snap-transformer.js +1 -1
  787. package/dist/domain/domain-context/transformers/chain-builder.d.ts +1 -1
  788. package/dist/domain/domain-context/transformers/context.d.ts +2 -5
  789. package/dist/domain/domain-context/transformers/context.js +1 -1
  790. package/dist/domain/domain-context/transformers/entity-builder.d.ts +1 -5
  791. package/dist/domain/domain-context/transformers/entity-builder.js +1 -1
  792. package/dist/domain/domain-context/transformers/index.d.ts +1 -1
  793. package/dist/domain/domain-context/transformers/index.js +1 -1
  794. package/dist/domain/domain-context/transformers/then-builder.d.ts +1 -2
  795. package/dist/domain/domain-context/transformers/when-builder.d.ts +3 -8
  796. package/dist/domain/domain-context/transformers/when-builder.js +1 -1
  797. package/dist/domain/domain-context/undo-system.d.ts +29 -3
  798. package/dist/domain/domain-context/undo-system.js +1 -1
  799. package/dist/domain/domain-runtime/access/selectors.d.ts +9 -0
  800. package/dist/domain/domain-runtime/access/selectors.js +1 -1
  801. package/dist/domain/domain-runtime/access/types.d.ts +2 -0
  802. package/dist/domain/domain-runtime/access/types.js +1 -1
  803. package/dist/domain/domain-runtime/domain-context/action-context.d.ts +11 -0
  804. package/dist/domain/domain-runtime/domain-context/action-context.js +1 -0
  805. package/dist/domain/domain-runtime/domain-context/component-reader.d.ts +1 -2
  806. package/dist/domain/domain-runtime/domain-context/component-reader.js +1 -1
  807. package/dist/domain/domain-runtime/domain-context/domain-context.js +1 -1
  808. package/dist/domain/domain-runtime/domain-context/expression-context.d.ts +8 -0
  809. package/dist/domain/domain-runtime/domain-context/expression-context.js +1 -0
  810. package/dist/domain/domain-runtime/domain-context/index.d.ts +3 -0
  811. package/dist/domain/domain-runtime/domain-context/runtime-expression-context.d.ts +18 -0
  812. package/dist/domain/domain-runtime/domain-context/runtime-expression-context.js +1 -0
  813. package/dist/domain/domain-runtime/domain-context/selectors.d.ts +19 -24
  814. package/dist/domain/domain-runtime/domain-context/selectors.js +1 -1
  815. package/dist/domain/domain-runtime/domain-context/types.d.ts +4 -1
  816. package/dist/domain/domain-runtime/domain-runtime.d.ts +84 -68
  817. package/dist/domain/domain-runtime/errors/implementation-error-collector.d.ts +19 -0
  818. package/dist/domain/domain-runtime/errors/implementation-error-collector.js +1 -0
  819. package/dist/domain/domain-runtime/errors/implementation-error.d.ts +46 -0
  820. package/dist/domain/domain-runtime/errors/implementation-error.js +1 -0
  821. package/dist/domain/domain-runtime/errors/implementation-errors.d.ts +13 -0
  822. package/dist/domain/domain-runtime/errors/implementation-errors.js +1 -0
  823. package/dist/domain/domain-runtime/errors/index.d.ts +4 -0
  824. package/dist/domain/domain-runtime/errors/index.js +1 -0
  825. package/dist/domain/domain-runtime/errors/to-implementation-errors.d.ts +10 -0
  826. package/dist/domain/domain-runtime/errors/to-implementation-errors.js +1 -0
  827. package/dist/domain/domain-runtime/index.d.ts +1 -0
  828. package/dist/domain/domain-runtime/index.js +1 -1
  829. package/dist/domain/domain-runtime/spec/create-violation-expressions.d.ts +24 -0
  830. package/dist/domain/domain-runtime/spec/create-violation-expressions.js +1 -0
  831. package/dist/domain/domain-runtime/spec/index.d.ts +5 -0
  832. package/dist/domain/domain-runtime/spec/index.js +1 -1
  833. package/dist/domain/domain-runtime/spec/initialize.d.ts +11 -0
  834. package/dist/domain/domain-runtime/spec/initialize.js +1 -1
  835. package/dist/domain/{core/expression → domain-runtime/spec}/memoize-expression.d.ts +1 -2
  836. package/dist/domain/{application → domain-runtime/spec/module-checks}/element-registration.d.ts +14 -13
  837. package/dist/domain/domain-runtime/spec/module-checks/element-registration.js +1 -0
  838. package/dist/domain/{application → domain-runtime/spec/module-checks}/handler-registration.d.ts +1 -1
  839. package/dist/domain/domain-runtime/spec/module-checks/handler-registration.js +1 -0
  840. package/dist/domain/domain-runtime/spec/module-checks/index.d.ts +8 -0
  841. package/dist/domain/domain-runtime/spec/module-checks/index.js +1 -0
  842. package/dist/domain/{project-modules → domain-runtime/spec/module-checks}/project-modules.d.ts +8 -17
  843. package/dist/domain/domain-runtime/spec/module-checks/project-modules.js +1 -0
  844. package/dist/domain/domain-runtime/spec/module-checks/resolve-action-modules.d.ts +4 -0
  845. package/dist/domain/domain-runtime/spec/module-checks/resolve-action-modules.js +1 -0
  846. package/dist/domain/domain-runtime/spec/module-checks/resolve-component-optic-modules.d.ts +4 -0
  847. package/dist/domain/domain-runtime/spec/module-checks/resolve-component-optic-modules.js +1 -0
  848. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.d.ts +15 -0
  849. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.js +1 -0
  850. package/dist/domain/domain-runtime/spec/module-checks/resolve-imported-transformers.d.ts +22 -0
  851. package/dist/domain/domain-runtime/spec/module-checks/resolve-imported-transformers.js +1 -0
  852. package/dist/domain/domain-runtime/spec/module-checks/resolve-invariant-modules.d.ts +6 -0
  853. package/dist/domain/domain-runtime/spec/module-checks/resolve-invariant-modules.js +1 -0
  854. package/dist/domain/{actions → domain-runtime/spec}/prepare-action-implementations.d.ts +1 -1
  855. package/dist/domain/domain-runtime/spec/prepare-action-implementations.js +5 -0
  856. package/dist/domain/{core/expression → domain-runtime/spec}/prepare-domain-expressions.d.ts +1 -1
  857. package/dist/domain/domain-runtime/spec/selectors.d.ts +5 -6
  858. package/dist/domain/domain-runtime/spec/selectors.js +1 -1
  859. package/dist/domain/domain-runtime/spec/types.d.ts +6 -4
  860. package/dist/domain/extensions/angle-indicator.js +1 -0
  861. package/dist/domain/{system-components → extensions}/attribute-switch.d.ts +1 -1
  862. package/dist/domain/extensions/attribute-switch.js +1 -0
  863. package/dist/domain/{system-components → extensions}/autorotate-camera-component.d.ts +1 -1
  864. package/dist/domain/extensions/autorotate-camera-component.js +1 -0
  865. package/dist/domain/extensions/basic-sidebar-footer.js +1 -0
  866. package/dist/domain/extensions/camera-based-hidden-entity-object.js +1 -0
  867. package/dist/domain/extensions/camera-based-hidden-entity.js +1 -0
  868. package/dist/domain/{system-components → extensions}/canvas-config.d.ts +1 -1
  869. package/dist/domain/extensions/canvas-config.js +1 -0
  870. package/dist/domain/extensions/canvas-custom-environment.js +1 -0
  871. package/dist/domain/extensions/canvas-padding.js +1 -0
  872. package/dist/domain/extensions/canvas-preset-environment.js +1 -0
  873. package/dist/domain/{system-components → extensions}/child-entity-recipe-hierarchy.d.ts +2 -2
  874. package/dist/domain/extensions/child-entity-recipe-hierarchy.js +1 -0
  875. package/dist/domain/{system-components → extensions}/client-side-image.d.ts +2 -2
  876. package/dist/domain/extensions/client-side-image.js +1 -0
  877. package/dist/domain/extensions/color-value.js +1 -0
  878. package/dist/domain/{system-components → extensions}/common/angle-indicator-schema.d.ts +3 -3
  879. package/dist/domain/extensions/common/angle-indicator-schema.js +1 -0
  880. package/dist/domain/{system-components → extensions}/common/dimension-indicator-schema.d.ts +2 -2
  881. package/dist/domain/extensions/common/index.d.ts +4 -0
  882. package/dist/domain/extensions/common/index.js +1 -0
  883. package/dist/domain/{system-components → extensions}/custom-header.d.ts +1 -1
  884. package/dist/domain/extensions/custom-header.js +1 -0
  885. package/dist/domain/extensions/custom-price-footer.js +1 -0
  886. package/dist/domain/{system-components → extensions}/custom-sidebar-footer.d.ts +1 -1
  887. package/dist/domain/extensions/custom-sidebar-footer.js +1 -0
  888. package/dist/domain/extensions/dimension-indicator.js +1 -0
  889. package/dist/domain/{system-components → extensions}/editable-angle-indicator.d.ts +3 -2
  890. package/dist/domain/extensions/editable-angle-indicator.js +1 -0
  891. package/dist/domain/{system-components → extensions}/editable-distance-dimension-indicator.d.ts +3 -2
  892. package/dist/domain/extensions/editable-distance-dimension-indicator.js +1 -0
  893. package/dist/domain/{system-components → extensions}/editable-offset-indicator.d.ts +3 -2
  894. package/dist/domain/extensions/editable-offset-indicator.js +1 -0
  895. package/dist/domain/{system-components → extensions}/editable-size-indicator.d.ts +2 -1
  896. package/dist/domain/extensions/editable-size-indicator.js +1 -0
  897. package/dist/domain/{system-components → extensions}/entity-header.d.ts +1 -1
  898. package/dist/domain/extensions/entity-header.js +1 -0
  899. package/dist/domain/extensions/exit-tool-mode-fab.js +1 -0
  900. package/dist/domain/extensions/finalize-action.js +1 -0
  901. package/dist/domain/extensions/finalize-component.js +1 -0
  902. package/dist/domain/extensions/fit-selection-orthographic-camera-component.js +1 -0
  903. package/dist/domain/extensions/fit-selection-perspective-camera-component.js +1 -0
  904. package/dist/domain/extensions/fixed-header.js +1 -0
  905. package/dist/domain/extensions/floating-header.js +1 -0
  906. package/dist/domain/extensions/hidden-header.js +1 -0
  907. package/dist/domain/extensions/hidden-sidebar-footer.js +1 -0
  908. package/dist/domain/{system-components → extensions}/horizontal-tabs.d.ts +2 -2
  909. package/dist/domain/extensions/horizontal-tabs.js +1 -0
  910. package/dist/domain/extensions/index.d.ts +69 -0
  911. package/dist/domain/extensions/index.js +1 -0
  912. package/dist/domain/{system-components → extensions}/list-selector-dimension-indicator.d.ts +3 -2
  913. package/dist/domain/extensions/list-selector-dimension-indicator.js +1 -0
  914. package/dist/domain/extensions/multilingual-text-value.js +1 -0
  915. package/dist/domain/{system-components → extensions}/navigation-steps.d.ts +2 -2
  916. package/dist/domain/extensions/navigation-steps.js +1 -0
  917. package/dist/domain/extensions/offset-anchors.js +1 -0
  918. package/dist/domain/extensions/offset-indicator.js +1 -0
  919. package/dist/domain/extensions/offset.js +1 -0
  920. package/dist/domain/extensions/other-action.js +1 -0
  921. package/dist/domain/{system-components → extensions}/property-page.d.ts +1 -1
  922. package/dist/domain/extensions/property-page.js +1 -0
  923. package/dist/domain/extensions/read-sidebar-footer.js +1 -0
  924. package/dist/domain/{system-components → extensions}/replace-entity-recipe-hierarchy.d.ts +2 -2
  925. package/dist/domain/extensions/replace-entity-recipe-hierarchy.js +1 -0
  926. package/dist/domain/extensions/rotatable.js +1 -0
  927. package/dist/domain/{system-components → extensions}/rotation-handle.d.ts +2 -2
  928. package/dist/domain/extensions/rotation-handle.js +1 -0
  929. package/dist/domain/{system-components → extensions}/save-template-thumbnail.d.ts +2 -2
  930. package/dist/domain/extensions/save-template-thumbnail.js +1 -0
  931. package/dist/domain/{system-components → extensions}/scene-entity-add-fab.d.ts +1 -1
  932. package/dist/domain/extensions/scene-entity-add-fab.js +1 -0
  933. package/dist/domain/extensions/scene-entity-animation.js +1 -0
  934. package/dist/domain/extensions/scene-entity-control.js +1 -0
  935. package/dist/domain/{system-components → extensions}/scene-entity-delete-fab.d.ts +1 -1
  936. package/dist/domain/extensions/scene-entity-delete-fab.js +1 -0
  937. package/dist/domain/extensions/scene-entity-floor-object.js +1 -0
  938. package/dist/domain/{system-components → extensions}/scene-entity-html-hotspot.d.ts +1 -1
  939. package/dist/domain/extensions/scene-entity-html-hotspot.js +1 -0
  940. package/dist/domain/{system-components → extensions}/scene-entity-navigation-hotspot.d.ts +1 -1
  941. package/dist/domain/extensions/scene-entity-navigation-hotspot.js +1 -0
  942. package/dist/domain/{system-components → extensions}/scene-entity-object-html-hotspot.d.ts +1 -1
  943. package/dist/domain/extensions/scene-entity-object-html-hotspot.js +1 -0
  944. package/dist/domain/{system-components → extensions}/scene-entity-select-hotspot.d.ts +1 -1
  945. package/dist/domain/extensions/scene-entity-select-hotspot.js +1 -0
  946. package/dist/domain/extensions/scene-entity-wall-object.js +1 -0
  947. package/dist/domain/extensions/selectable-component.js +1 -0
  948. package/dist/domain/extensions/sidebar-tabs.js +1 -0
  949. package/dist/domain/extensions/simple-summary.js +1 -0
  950. package/dist/domain/extensions/size.js +1 -0
  951. package/dist/domain/extensions/sketching-draw.js +1 -0
  952. package/dist/domain/{system-components → extensions}/sketching-edit.d.ts +1 -1
  953. package/dist/domain/extensions/sketching-edit.js +1 -0
  954. package/dist/domain/extensions/summary-component.js +1 -0
  955. package/dist/domain/extensions/text-value.js +1 -0
  956. package/dist/domain/extensions/tool-controls.js +1 -0
  957. package/dist/domain/{system-components → extensions}/tool-menu-fab.d.ts +1 -1
  958. package/dist/domain/extensions/tool-menu-fab.js +1 -0
  959. package/dist/domain/{system-components → extensions}/toolbar.d.ts +1 -1
  960. package/dist/domain/extensions/toolbar.js +1 -0
  961. package/dist/domain/extensions/universal-sidebar-footer.js +1 -0
  962. package/dist/domain/extensions/view-controls.js +1 -0
  963. package/dist/domain/index.d.ts +2 -31
  964. package/dist/domain/index.js +1 -1
  965. package/dist/domain/mocks/create-mock-domain-context.d.ts +1 -1
  966. package/dist/domain/mocks/create-mock-domain-runtime-services.d.ts +1 -1
  967. package/dist/domain/mocks/create-mock-domain-runtime.d.ts +28 -19
  968. package/dist/domain/mocks/create-mock-domain-runtime.js +1 -1
  969. package/dist/domain/mocks/create-mock-domain.d.ts +1 -1
  970. package/dist/domain/mocks/create-mock-domain.js +1 -1
  971. package/dist/domain/mocks/create-mock-state.d.ts +2 -2
  972. package/dist/domain/mocks/create-test-application-config.d.ts +59 -0
  973. package/dist/domain/mocks/create-test-application-config.js +1 -0
  974. package/dist/domain/mocks/index.d.ts +1 -0
  975. package/dist/domain/mocks/index.js +1 -1
  976. package/dist/domain/projections/blender-projections/blender-projections.d.ts +2 -3
  977. package/dist/domain/projections/blender-projections/blender-projections.js +1 -1
  978. package/dist/domain/projections/blender-projections/camera.d.ts +2 -2
  979. package/dist/domain/projections/collision-projections.d.ts +1 -1
  980. package/dist/domain/projections/composition-projections.d.ts +1 -1
  981. package/dist/domain/projections/composition-projections.js +1 -1
  982. package/dist/domain/projections/constraint-projections.d.ts +1 -1
  983. package/dist/domain/projections/index.d.ts +1 -1
  984. package/dist/domain/projections/position-projections.d.ts +1 -1
  985. package/dist/domain/projections/projected-entities-projections.d.ts +1 -1
  986. package/dist/domain/projections/snapping-projections.d.ts +1 -1
  987. package/dist/domain/projections/validation-projections.d.ts +3 -20
  988. package/dist/domain/projections/validation-projections.js +1 -1
  989. package/dist/domain/sketching/sketching-projections.d.ts +1 -1
  990. package/dist/domain/system-components/admin-sidebar.js +1 -1
  991. package/dist/domain/system-components/angle-dimension.js +1 -1
  992. package/dist/domain/system-components/application-config.d.ts +2 -2
  993. package/dist/domain/system-components/application-config.js +1 -1
  994. package/dist/domain/system-components/attribute-selection.js +1 -1
  995. package/dist/domain/system-components/bounding-box-component.d.ts +1 -1
  996. package/dist/domain/system-components/bounding-box-component.js +1 -1
  997. package/dist/domain/system-components/bounding-sphere-component.d.ts +1 -1
  998. package/dist/domain/system-components/bounding-sphere-component.js +1 -1
  999. package/dist/domain/system-components/child-entity-recipes.d.ts +1 -1
  1000. package/dist/domain/system-components/child-entity-recipes.js +1 -1
  1001. package/dist/domain/system-components/child-entity-selection.d.ts +1 -2
  1002. package/dist/domain/system-components/child-entity-selection.js +1 -1
  1003. package/dist/domain/system-components/collision-box-geometry.d.ts +5 -3
  1004. package/dist/domain/system-components/collision-box-geometry.js +1 -1
  1005. package/dist/domain/system-components/collision-geometry.d.ts +5 -3
  1006. package/dist/domain/system-components/collision-geometry.js +1 -1
  1007. package/dist/domain/system-components/collision-point-geometry.d.ts +5 -3
  1008. package/dist/domain/system-components/collision-point-geometry.js +1 -1
  1009. package/dist/domain/system-components/common/index.d.ts +0 -4
  1010. package/dist/domain/system-components/common/index.js +1 -1
  1011. package/dist/domain/system-components/common/material-override-schema.d.ts +2 -2
  1012. package/dist/domain/system-components/common/recipes.d.ts +21 -4
  1013. package/dist/domain/system-components/common/recipes.js +1 -1
  1014. package/dist/domain/system-components/common/scene-entity-control-schema.d.ts +3 -0
  1015. package/dist/domain/system-components/common/scene-entity-control-schema.js +1 -1
  1016. package/dist/domain/system-components/constraint.d.ts +11 -24
  1017. package/dist/domain/system-components/constraint.js +1 -1
  1018. package/dist/domain/system-components/custom-scene-entity.js +1 -1
  1019. package/dist/domain/system-components/detail.js +1 -1
  1020. package/dist/domain/system-components/distance-dimension-select.js +1 -1
  1021. package/dist/domain/system-components/distance-dimension.js +1 -1
  1022. package/dist/domain/system-components/drag-handle.d.ts +1 -1
  1023. package/dist/domain/system-components/drag-handle.js +1 -1
  1024. package/dist/domain/system-components/fit-entity-orthographic-camera-component.js +1 -1
  1025. package/dist/domain/system-components/fit-entity-perspective-camera-component.js +1 -1
  1026. package/dist/domain/system-components/fit-root-orthographic-camera-component.js +1 -1
  1027. package/dist/domain/system-components/fit-root-perspective-camera-component.js +1 -1
  1028. package/dist/domain/system-components/generic-dimension.js +1 -1
  1029. package/dist/domain/system-components/hidden-entity.js +1 -1
  1030. package/dist/domain/system-components/hotspot-drag-handle.d.ts +2 -3
  1031. package/dist/domain/system-components/hotspot-drag-handle.js +1 -1
  1032. package/dist/domain/system-components/index.d.ts +0 -68
  1033. package/dist/domain/system-components/index.js +1 -1
  1034. package/dist/domain/system-components/material-override-property-transition.js +1 -1
  1035. package/dist/domain/system-components/material-override-transformer.js +1 -1
  1036. package/dist/domain/system-components/material-swatch.js +1 -1
  1037. package/dist/domain/system-components/navigation-page.js +1 -1
  1038. package/dist/domain/system-components/navigation-panel-list.js +1 -1
  1039. package/dist/domain/system-components/phoenix-entity-elements/admin-data-table-sidebar.d.ts +1 -1
  1040. package/dist/domain/system-components/phoenix-layout-elements/admin-connected-resource-page.d.ts +1 -1
  1041. package/dist/domain/system-components/phoenix-layout-elements/admin-data-table-actions.d.ts +1 -1
  1042. package/dist/domain/system-components/phoenix-layout-elements/admin-data-table-page.d.ts +1 -1
  1043. package/dist/domain/system-components/pivot-point.js +1 -1
  1044. package/dist/domain/system-components/price.js +1 -1
  1045. package/dist/domain/system-components/projected-entities.js +1 -1
  1046. package/dist/domain/system-components/replace-entity-recipes.d.ts +1 -1
  1047. package/dist/domain/system-components/replace-entity-recipes.js +1 -1
  1048. package/dist/domain/system-components/scene-entity-ambient-light.js +1 -1
  1049. package/dist/domain/system-components/scene-entity-box-object.js +1 -1
  1050. package/dist/domain/system-components/scene-entity-directional-light.js +1 -1
  1051. package/dist/domain/system-components/scene-entity-local-material-override.js +1 -1
  1052. package/dist/domain/system-components/scene-entity-material-override.d.ts +1 -1
  1053. package/dist/domain/system-components/scene-entity-material-override.js +1 -1
  1054. package/dist/domain/system-components/scene-entity-object-clip.js +1 -1
  1055. package/dist/domain/system-components/scene-entity-object-decal.js +1 -1
  1056. package/dist/domain/system-components/scene-entity-object-group.js +1 -1
  1057. package/dist/domain/system-components/scene-entity-object-local-material-override.js +1 -1
  1058. package/dist/domain/system-components/scene-entity-object-material-override.d.ts +1 -1
  1059. package/dist/domain/system-components/scene-entity-object-material-override.js +1 -1
  1060. package/dist/domain/system-components/scene-entity-object-properties.js +1 -1
  1061. package/dist/domain/system-components/scene-entity-object-remote-material-override.js +1 -1
  1062. package/dist/domain/system-components/scene-entity-object-text-decal.d.ts +1 -1
  1063. package/dist/domain/system-components/scene-entity-object-text-decal.js +1 -1
  1064. package/dist/domain/system-components/scene-entity-object-transformer.js +1 -1
  1065. package/dist/domain/system-components/scene-entity-object-transimissive-material-override.d.ts +1 -1
  1066. package/dist/domain/system-components/scene-entity-object-transimissive-material-override.js +1 -1
  1067. package/dist/domain/system-components/scene-entity-object.js +1 -1
  1068. package/dist/domain/system-components/scene-entity-point-light.js +1 -1
  1069. package/dist/domain/system-components/scene-entity-properties.js +1 -1
  1070. package/dist/domain/system-components/scene-entity-rect-area-light.js +1 -1
  1071. package/dist/domain/system-components/scene-entity-remote-material-override.js +1 -1
  1072. package/dist/domain/system-components/scene-entity-remote-object.js +1 -1
  1073. package/dist/domain/system-components/scene-entity-spot-light.js +1 -1
  1074. package/dist/domain/system-components/scene-entity-transimissive-material-override.d.ts +1 -1
  1075. package/dist/domain/system-components/scene-entity-transimissive-material-override.js +1 -1
  1076. package/dist/domain/system-components/sketching-line.js +1 -1
  1077. package/dist/domain/system-components/sketching-rectangle.js +1 -1
  1078. package/dist/domain/system-components/sketching.js +1 -1
  1079. package/dist/domain/system-components/snap-axis.js +1 -1
  1080. package/dist/domain/system-components/snap-edge.js +1 -1
  1081. package/dist/domain/system-components/snap-plane.js +1 -1
  1082. package/dist/domain/system-components/snap-point.js +1 -1
  1083. package/dist/domain/system-components/static-orthographic-camera-component.d.ts +1 -1
  1084. package/dist/domain/system-components/static-orthographic-camera-component.js +1 -1
  1085. package/dist/domain/system-components/static-perspective-camera-component.d.ts +1 -1
  1086. package/dist/domain/system-components/static-perspective-camera-component.js +1 -1
  1087. package/dist/domain/utils/eval-cache.d.ts +1 -1
  1088. package/dist/domain/utils/map-nested-object.d.ts +1 -1
  1089. package/dist/domain/utils/memo-eval.d.ts +2 -2
  1090. package/dist/editor/Editor.d.ts +7 -0
  1091. package/dist/editor/Editor.js +1 -1
  1092. package/dist/editor/domain-editors/use-implementation-files.d.ts +1 -2
  1093. package/dist/editor/mocks/CreateMockYaml.js +2 -2
  1094. package/dist/editor/mocks/EditorMockContext.d.ts +2 -0
  1095. package/dist/editor/mocks/EditorMockContext.js +1 -1
  1096. package/dist/globals/index.d.ts +2 -0
  1097. package/dist/i18n/locales/cs/messages.js +1 -1
  1098. package/dist/i18n/locales/da/messages.js +1 -1
  1099. package/dist/i18n/locales/de/messages.js +1 -1
  1100. package/dist/i18n/locales/de-AT/messages.js +1 -1
  1101. package/dist/i18n/locales/en/messages.js +1 -1
  1102. package/dist/i18n/locales/en-AU/messages.js +1 -1
  1103. package/dist/i18n/locales/en-GB/messages.js +1 -1
  1104. package/dist/i18n/locales/es/messages.js +1 -1
  1105. package/dist/i18n/locales/fr/messages.js +1 -1
  1106. package/dist/i18n/locales/hu/messages.js +1 -1
  1107. package/dist/i18n/locales/it/messages.js +1 -1
  1108. package/dist/i18n/locales/nl/messages.js +1 -1
  1109. package/dist/i18n/locales/pl/messages.js +1 -1
  1110. package/dist/i18n/locales/pt/messages.js +1 -1
  1111. package/dist/i18n/locales/ro/messages.js +1 -1
  1112. package/dist/i18n/locales/sk/messages.js +1 -1
  1113. package/dist/i18n/locales/tr/messages.js +1 -1
  1114. package/dist/legacy/domain-cli/gen/configurator-builder.js +13 -12
  1115. package/dist/legacy/domain-cli/gen/constant-expressions.js +1 -3
  1116. package/dist/legacy/domain-cli/gen/defaults.js +1 -7
  1117. package/dist/legacy/domain-cli/gen/implementation.js +7 -11
  1118. package/dist/legacy/domain-cli/gen/invariants.js +7 -6
  1119. package/dist/legacy/domain-cli/gen/relations.js +1 -1
  1120. package/dist/legacy/domain-cli/utils/cache.d.ts +1 -1
  1121. package/dist/legacy/domain-cli/utils/cache.js +1 -1
  1122. package/dist/legacy/domain-spec/__generated/domain-schema.d.ts +160 -148
  1123. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/claude-md.d.ts +1 -1
  1124. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/cursor-rules.d.ts +1 -1
  1125. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.d.ts +1 -1
  1126. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.js +7 -0
  1127. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/domain-index.js +17 -15
  1128. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/env-example.d.ts +1 -1
  1129. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/env-example.js +4 -0
  1130. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-admin.js +15 -14
  1131. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-configurator.js +14 -12
  1132. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-admin.js +14 -13
  1133. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-configurator.js +13 -11
  1134. package/dist/phoenix/application-spec/application-spec-builder.d.ts +0 -2
  1135. package/dist/phoenix/application-spec/application-spec-builder.js +1 -1
  1136. package/dist/phoenix/application-spec/generate-application-spec-project.d.ts +0 -2
  1137. package/dist/phoenix/application-spec/generate-application-spec-project.js +2 -2
  1138. package/dist/phoenix/application-spec/generate-application-spec-story.js +2 -2
  1139. package/dist/phoenix/application-spec/generate-project-files.d.ts +0 -2
  1140. package/dist/phoenix/application-spec/project-files.js +1 -1
  1141. package/dist/phoenix/bin.d.ts +2 -0
  1142. package/dist/phoenix/bin.js +2 -0
  1143. package/dist/phoenix/check-configs/built-in-eslint-config.d.ts +9 -0
  1144. package/dist/phoenix/check-configs/built-in-eslint-config.js +1 -0
  1145. package/dist/phoenix/check-configs/eslint-config.d.ts +10 -0
  1146. package/dist/phoenix/check-configs/eslint-config.js +1 -0
  1147. package/dist/phoenix/check-configs/index.d.ts +8 -0
  1148. package/dist/phoenix/check-configs/index.js +1 -0
  1149. package/dist/phoenix/check-configs/typescript-project.d.ts +5 -0
  1150. package/dist/phoenix/check-configs/typescript-project.js +1 -0
  1151. package/dist/phoenix/cli.d.ts +0 -1
  1152. package/dist/phoenix/cli.js +1 -2
  1153. package/dist/phoenix/commands/build.js +1 -1
  1154. package/dist/phoenix/commands/check.js +1 -1
  1155. package/dist/phoenix/commands/clean.js +1 -1
  1156. package/dist/phoenix/commands/deploy.js +2 -2
  1157. package/dist/phoenix/commands/deps/deps.d.ts +73 -0
  1158. package/dist/phoenix/commands/deps/deps.js +3 -0
  1159. package/dist/phoenix/commands/deps/index.d.ts +1 -0
  1160. package/dist/phoenix/commands/deps/index.js +1 -0
  1161. package/dist/phoenix/commands/deps/sdk-manifest.d.ts +12 -0
  1162. package/dist/phoenix/commands/deps/sdk-manifest.js +1 -0
  1163. package/dist/phoenix/commands/dev.js +5 -5
  1164. package/dist/phoenix/commands/fix.js +1 -1
  1165. package/dist/phoenix/commands/index.d.ts +1 -0
  1166. package/dist/phoenix/commands/index.js +1 -1
  1167. package/dist/phoenix/commands/init.d.ts +17 -5
  1168. package/dist/phoenix/commands/init.js +1 -1
  1169. package/dist/phoenix/commands/link.js +1 -1
  1170. package/dist/phoenix/commands/prettier.js +1 -1
  1171. package/dist/phoenix/commands/sync.js +1 -1
  1172. package/dist/phoenix/commands/unlink.js +1 -1
  1173. package/dist/phoenix/scripts/build-admin.js +1 -1
  1174. package/dist/phoenix/services/application-spec-project-watcher.d.ts +2 -2
  1175. package/dist/phoenix/services/application-spec-project-watcher.js +3 -3
  1176. package/dist/phoenix/services/lingui.d.ts +8 -0
  1177. package/dist/phoenix/services/lingui.js +1 -1
  1178. package/dist/phoenix/services/source-archive.d.ts +1 -0
  1179. package/dist/phoenix/services/source-archive.js +1 -1
  1180. package/dist/phoenix/services/swc.js +1 -1
  1181. package/dist/phoenix/services/vite-config.js +1 -1
  1182. package/dist/phoenix/utils/git/index.d.ts +1 -0
  1183. package/dist/phoenix/utils/git/index.js +1 -0
  1184. package/dist/phoenix/utils/git/is-inside-git-repository.d.ts +6 -0
  1185. package/dist/phoenix/utils/git/is-inside-git-repository.js +1 -0
  1186. package/dist/phoenix/utils/index.d.ts +5 -2
  1187. package/dist/phoenix/utils/index.js +1 -1
  1188. package/dist/phoenix/utils/node-version/index.d.ts +1 -0
  1189. package/dist/phoenix/utils/node-version/index.js +1 -0
  1190. package/dist/phoenix/utils/node-version/supported-node-version.d.ts +12 -0
  1191. package/dist/phoenix/utils/node-version/supported-node-version.js +4 -0
  1192. package/dist/phoenix/utils/package-info.d.ts +0 -9
  1193. package/dist/phoenix/utils/package-info.js +1 -1
  1194. package/dist/phoenix/utils/package-manager/index.d.ts +2 -0
  1195. package/dist/phoenix/utils/package-manager/index.js +1 -0
  1196. package/dist/phoenix/utils/package-manager/package-manager-commands.d.ts +19 -0
  1197. package/dist/phoenix/utils/package-manager/package-manager-commands.js +1 -0
  1198. package/dist/phoenix/utils/package-manager/pnpm-project.d.ts +9 -0
  1199. package/dist/phoenix/utils/package-manager/pnpm-project.js +1 -0
  1200. package/dist/phoenix/utils/run-command.d.ts +11 -0
  1201. package/dist/phoenix/utils/run-command.js +1 -1
  1202. package/dist/phoenix/utils/sdk-tool/index.d.ts +1 -0
  1203. package/dist/phoenix/utils/sdk-tool/index.js +1 -0
  1204. package/dist/phoenix/utils/sdk-tool/resolve-sdk-tool-bin.d.ts +15 -0
  1205. package/dist/phoenix/utils/sdk-tool/resolve-sdk-tool-bin.js +1 -0
  1206. package/dist/{configurator/common → react-sdk/application-runtime/common-services/analytics}/frontend-analytics.d.ts +2 -0
  1207. package/dist/react-sdk/application-runtime/common-services/analytics/frontend-analytics.js +1 -0
  1208. package/dist/react-sdk/application-runtime/common-services/analytics/index.d.ts +1 -0
  1209. package/dist/react-sdk/application-runtime/common-services/analytics/index.js +1 -1
  1210. package/dist/react-sdk/application-runtime/hooks/use-access-service.d.ts +2 -0
  1211. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.js +1 -1
  1212. package/dist/react-sdk/application-runtime/routing/access-service.d.ts +1 -0
  1213. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.d.ts +53 -36
  1214. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.js +1 -1
  1215. package/dist/react-sdk/domain-application-context/DomainLifecycleBoundary.js +1 -1
  1216. package/dist/react-sdk/domain-context/common-hooks/use-configurator-messages.d.ts +41 -0
  1217. package/dist/react-sdk/domain-context/common-hooks/use-configurator-messages.js +1 -0
  1218. package/dist/react-sdk/domain-context/common-hooks/use-domain-context.d.ts +9 -9
  1219. package/dist/react-sdk/domain-context/index.d.ts +3 -1
  1220. package/dist/react-sdk/domain-context/index.js +1 -1
  1221. package/dist/react-sdk/domain-context/system-hooks/navigation-hooks.d.ts +11 -0
  1222. package/dist/react-sdk/domain-context/system-hooks/navigation-hooks.js +1 -1
  1223. package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.d.ts +20 -0
  1224. package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.js +1 -0
  1225. package/dist/react-sdk/domain-controls/hooks/use-angle-dimension.d.ts +1 -1
  1226. package/dist/react-sdk/handlers/index.d.ts +1 -0
  1227. package/dist/react-sdk/handlers/index.js +1 -1
  1228. package/dist/react-sdk/handlers/use-finalize-action.d.ts +31 -0
  1229. package/dist/react-sdk/handlers/use-finalize-action.js +1 -0
  1230. package/dist/react-sdk/session/NotAuthenticatedPage.d.ts +4 -0
  1231. package/dist/react-sdk/session/NotAuthenticatedPage.js +1 -1
  1232. package/dist/ui-sdk/theme/types.d.ts +1 -1
  1233. package/dist/webhook/builders/common.d.ts +5 -0
  1234. package/dist/webhook/builders/webhook-builder.js +1 -1
  1235. package/package.json +46 -35
  1236. package/schema/domain-spec.json +1201 -217
  1237. package/dist/application-spec/generate-application/code/templates/env-ci.d.ts +0 -1
  1238. package/dist/application-spec/generate-application/code/templates/env-ci.js +0 -25
  1239. package/dist/application-spec/generate-application/code/templates/env-example.d.ts +0 -1
  1240. package/dist/application-spec/generate-application/code/templates/env-example.js +0 -90
  1241. package/dist/application-spec/generate-application/code/templates/nvmrc.d.ts +0 -1
  1242. package/dist/application-spec/generate-application/code/templates/nvmrc.js +0 -2
  1243. package/dist/application-spec/generate-application/code/templates/package-json.d.ts +0 -10
  1244. package/dist/application-spec/generate-application/code/templates/package-json.js +0 -1
  1245. package/dist/application-spec/generate-application/code/templates/prettier-ignore.d.ts +0 -1
  1246. package/dist/application-spec/generate-application/code/templates/prettier-ignore.js +0 -6
  1247. package/dist/application-spec/generate-application/code/templates/private-assets-readme.d.ts +0 -1
  1248. package/dist/application-spec/generate-application/code/templates/private-assets-readme.js +0 -24
  1249. package/dist/application-spec/generate-application/code/templates/public-assets-readme.d.ts +0 -1
  1250. package/dist/application-spec/generate-application/code/templates/public-assets-readme.js +0 -24
  1251. package/dist/application-spec/generate-application/code/templates/readme.d.ts +0 -1
  1252. package/dist/application-spec/generate-application/code/templates/readme.js +0 -23
  1253. package/dist/application-spec/generate-application/code/templates/skills/agents-md.d.ts +0 -1
  1254. package/dist/application-spec/generate-application/code/templates/skills/agents-md.js +0 -2
  1255. package/dist/application-spec/generate-application/code/templates/webhook-implementation.d.ts +0 -1
  1256. package/dist/application-spec/generate-application/code/templates/webhook-implementation.js +0 -7
  1257. package/dist/configurator/common/frontend-analytics.js +0 -1
  1258. package/dist/domain/actions/action-factory.d.ts +0 -10
  1259. package/dist/domain/actions/prepare-action-implementations.js +0 -5
  1260. package/dist/domain/application/element-registration.js +0 -1
  1261. package/dist/domain/application/handler-registration.js +0 -1
  1262. package/dist/domain/application/resolve-imported-transformers.d.ts +0 -23
  1263. package/dist/domain/application/resolve-imported-transformers.js +0 -1
  1264. package/dist/domain/application/resource-builder.d.ts +0 -13
  1265. package/dist/domain/application/resource-builder.js +0 -1
  1266. package/dist/domain/components/debug-state-component.js +0 -1
  1267. package/dist/domain/components/domain-component-optic.d.ts +0 -74
  1268. package/dist/domain/components/domain-component-optic.js +0 -16
  1269. package/dist/domain/components/drag-state-component.js +0 -1
  1270. package/dist/domain/components/export-state-component.js +0 -1
  1271. package/dist/domain/components/fullscreen-state-component.js +0 -1
  1272. package/dist/domain/components/group-components-by-entity-id-and-name.js +0 -1
  1273. package/dist/domain/components/hover-state-component.js +0 -1
  1274. package/dist/domain/components/index.d.ts +0 -2
  1275. package/dist/domain/components/index.js +0 -1
  1276. package/dist/domain/components/navigation-state-component.js +0 -1
  1277. package/dist/domain/components/selection-state-component.js +0 -1
  1278. package/dist/domain/components/system-component-builder.js +0 -1
  1279. package/dist/domain/components/system-virtual-entity.js +0 -1
  1280. package/dist/domain/components/tool-state-component.js +0 -1
  1281. package/dist/domain/components/view-state-component.js +0 -1
  1282. package/dist/domain/components/viewport-state-component.js +0 -1
  1283. package/dist/domain/domain-context/recipe-system/recipes.d.ts +0 -55
  1284. package/dist/domain/domain-context/recipe-system/recipes.js +0 -1
  1285. package/dist/domain/invariants/custom-invariants.d.ts +0 -20
  1286. package/dist/domain/invariants/custom-invariants.js +0 -1
  1287. package/dist/domain/invariants/invariants.d.ts +0 -74
  1288. package/dist/domain/invariants/invariants.js +0 -1
  1289. package/dist/domain/invariants/violation-component.js +0 -1
  1290. package/dist/domain/invariants/violation.js +0 -1
  1291. package/dist/domain/project-modules/index.d.ts +0 -1
  1292. package/dist/domain/project-modules/index.js +0 -1
  1293. package/dist/domain/project-modules/project-modules.js +0 -1
  1294. package/dist/domain/relations/all-of-type-relation.d.ts +0 -30
  1295. package/dist/domain/relations/all-of-type-relation.js +0 -1
  1296. package/dist/domain/relations/component-factories.js +0 -1
  1297. package/dist/domain/relations/composed-of.js +0 -1
  1298. package/dist/domain/relations/direct-relation.d.ts +0 -27
  1299. package/dist/domain/relations/indirect-relation.d.ts +0 -78
  1300. package/dist/domain/relations/indirect-relation.js +0 -1
  1301. package/dist/domain/relations/reference-component.js +0 -1
  1302. package/dist/domain/relations/relation-factory.d.ts +0 -17
  1303. package/dist/domain/relations/relation-factory.js +0 -1
  1304. package/dist/domain/relations/relation-implementation.d.ts +0 -5
  1305. package/dist/domain/system-components/angle-indicator.js +0 -1
  1306. package/dist/domain/system-components/attribute-switch.js +0 -1
  1307. package/dist/domain/system-components/autorotate-camera-component.js +0 -1
  1308. package/dist/domain/system-components/basic-sidebar-footer.js +0 -1
  1309. package/dist/domain/system-components/camera-based-hidden-entity-object.js +0 -1
  1310. package/dist/domain/system-components/camera-based-hidden-entity.js +0 -1
  1311. package/dist/domain/system-components/canvas-config.js +0 -1
  1312. package/dist/domain/system-components/canvas-custom-environment.js +0 -1
  1313. package/dist/domain/system-components/canvas-padding.js +0 -1
  1314. package/dist/domain/system-components/canvas-preset-environment.js +0 -1
  1315. package/dist/domain/system-components/child-entity-recipe-hierarchy.js +0 -1
  1316. package/dist/domain/system-components/client-side-image.js +0 -1
  1317. package/dist/domain/system-components/color-value.js +0 -1
  1318. package/dist/domain/system-components/common/angle-indicator-schema.js +0 -1
  1319. package/dist/domain/system-components/custom-header.js +0 -1
  1320. package/dist/domain/system-components/custom-price-footer.js +0 -1
  1321. package/dist/domain/system-components/custom-sidebar-footer.js +0 -1
  1322. package/dist/domain/system-components/dimension-indicator.js +0 -1
  1323. package/dist/domain/system-components/editable-angle-indicator.js +0 -1
  1324. package/dist/domain/system-components/editable-distance-dimension-indicator.js +0 -1
  1325. package/dist/domain/system-components/editable-offset-indicator.js +0 -1
  1326. package/dist/domain/system-components/editable-size-indicator.js +0 -1
  1327. package/dist/domain/system-components/entity-header.js +0 -1
  1328. package/dist/domain/system-components/exit-tool-mode-fab.js +0 -1
  1329. package/dist/domain/system-components/finalize-action.js +0 -1
  1330. package/dist/domain/system-components/finalize-component.js +0 -1
  1331. package/dist/domain/system-components/fit-selection-orthographic-camera-component.js +0 -1
  1332. package/dist/domain/system-components/fit-selection-perspective-camera-component.js +0 -1
  1333. package/dist/domain/system-components/fixed-header.js +0 -1
  1334. package/dist/domain/system-components/floating-header.js +0 -1
  1335. package/dist/domain/system-components/hidden-header.js +0 -1
  1336. package/dist/domain/system-components/hidden-sidebar-footer.js +0 -1
  1337. package/dist/domain/system-components/horizontal-tabs.js +0 -1
  1338. package/dist/domain/system-components/list-selector-dimension-indicator.js +0 -1
  1339. package/dist/domain/system-components/multilingual-text-value.js +0 -1
  1340. package/dist/domain/system-components/navigation-steps.js +0 -1
  1341. package/dist/domain/system-components/offset-anchors.js +0 -1
  1342. package/dist/domain/system-components/offset-indicator.js +0 -1
  1343. package/dist/domain/system-components/offset.js +0 -1
  1344. package/dist/domain/system-components/other-action.js +0 -1
  1345. package/dist/domain/system-components/property-page.js +0 -1
  1346. package/dist/domain/system-components/read-sidebar-footer.js +0 -1
  1347. package/dist/domain/system-components/replace-entity-recipe-hierarchy.js +0 -1
  1348. package/dist/domain/system-components/rotatable.js +0 -1
  1349. package/dist/domain/system-components/rotation-handle.js +0 -1
  1350. package/dist/domain/system-components/save-template-thumbnail.js +0 -1
  1351. package/dist/domain/system-components/scene-entity-add-fab.js +0 -1
  1352. package/dist/domain/system-components/scene-entity-animation.js +0 -1
  1353. package/dist/domain/system-components/scene-entity-control.js +0 -1
  1354. package/dist/domain/system-components/scene-entity-delete-fab.js +0 -1
  1355. package/dist/domain/system-components/scene-entity-floor-object.js +0 -1
  1356. package/dist/domain/system-components/scene-entity-html-hotspot.js +0 -1
  1357. package/dist/domain/system-components/scene-entity-navigation-hotspot.js +0 -1
  1358. package/dist/domain/system-components/scene-entity-object-html-hotspot.js +0 -1
  1359. package/dist/domain/system-components/scene-entity-select-hotspot.js +0 -1
  1360. package/dist/domain/system-components/scene-entity-wall-object.js +0 -1
  1361. package/dist/domain/system-components/selectable-component.js +0 -1
  1362. package/dist/domain/system-components/sidebar-tabs.js +0 -1
  1363. package/dist/domain/system-components/simple-summary.js +0 -1
  1364. package/dist/domain/system-components/size.js +0 -1
  1365. package/dist/domain/system-components/sketching-draw.js +0 -1
  1366. package/dist/domain/system-components/sketching-edit.js +0 -1
  1367. package/dist/domain/system-components/summary-component.js +0 -1
  1368. package/dist/domain/system-components/text-value.js +0 -1
  1369. package/dist/domain/system-components/tool-controls.js +0 -1
  1370. package/dist/domain/system-components/tool-menu-fab.js +0 -1
  1371. package/dist/domain/system-components/toolbar.js +0 -1
  1372. package/dist/domain/system-components/universal-sidebar-footer.js +0 -1
  1373. package/dist/domain/system-components/view-controls.js +0 -1
  1374. package/dist/phoenix/commands/generate-project-files.d.ts +0 -6
  1375. package/dist/phoenix/commands/generate-project-files.js +0 -1
  1376. /package/dist/{domain/components/component-reader-types.js → application-spec/core/expressions/relation-expression-params.js} +0 -0
  1377. /package/dist/application-spec/{core → enhanced-json}/eval-code-uses-self.d.ts +0 -0
  1378. /package/dist/application-spec/{core → enhanced-json}/eval-code-uses-self.js +0 -0
  1379. /package/dist/application-spec/{core → enhanced-json}/eval-to-constant.js +0 -0
  1380. /package/dist/{domain/core/action.js → application-spec/generate-application/runtime/spec-code/spec-code-module.js} +0 -0
  1381. /package/dist/{domain/relations/reference-field.js → application-spec/parse-application-files/spec/expressions/expression-read.js} +0 -0
  1382. /package/dist/{domain/relations/relation-implementation.js → configurator/ui/assistant/form-elements/form-element-props.js} +0 -0
  1383. /package/dist/domain/{actions → core/action}/action-factory.js +0 -0
  1384. /package/dist/domain/{components → core/component}/legacy-filter.js +0 -0
  1385. /package/dist/domain/{components → core/component}/system-component-filter.js +0 -0
  1386. /package/dist/domain/{components → core/component}/system-virtual-entity.d.ts +0 -0
  1387. /package/dist/domain/{components → core/component}/updates.js +0 -0
  1388. /package/dist/domain/{invariants → core/invariant}/builtin-invariant.js +0 -0
  1389. /package/dist/domain/{invariants → core/invariant}/violation-component.d.ts +0 -0
  1390. /package/dist/domain/{relations → core/relation}/direct-relation.js +0 -0
  1391. /package/dist/domain/{core/expression → domain-runtime/spec}/memoize-expression.js +0 -0
  1392. /package/dist/domain/{core/expression → domain-runtime/spec}/prepare-domain-expressions.js +0 -0
  1393. /package/dist/domain/{system-components → extensions}/angle-indicator.d.ts +0 -0
  1394. /package/dist/domain/{system-components → extensions}/basic-sidebar-footer.d.ts +0 -0
  1395. /package/dist/domain/{system-components → extensions}/camera-based-hidden-entity-object.d.ts +0 -0
  1396. /package/dist/domain/{system-components → extensions}/camera-based-hidden-entity.d.ts +0 -0
  1397. /package/dist/domain/{system-components → extensions}/canvas-custom-environment.d.ts +0 -0
  1398. /package/dist/domain/{system-components → extensions}/canvas-padding.d.ts +0 -0
  1399. /package/dist/domain/{system-components → extensions}/canvas-preset-environment.d.ts +0 -0
  1400. /package/dist/domain/{system-components → extensions}/color-value.d.ts +0 -0
  1401. /package/dist/domain/{system-components → extensions}/common/dimension-indicator-schema.js +0 -0
  1402. /package/dist/domain/{system-components → extensions}/common/dimension-indicators.d.ts +0 -0
  1403. /package/dist/domain/{system-components → extensions}/common/dimension-indicators.js +0 -0
  1404. /package/dist/domain/{system-components → extensions}/common/editable-indicator-button-variant.d.ts +0 -0
  1405. /package/dist/domain/{system-components → extensions}/common/editable-indicator-button-variant.js +0 -0
  1406. /package/dist/domain/{system-components → extensions}/custom-price-footer.d.ts +0 -0
  1407. /package/dist/domain/{system-components → extensions}/dimension-indicator.d.ts +0 -0
  1408. /package/dist/domain/{system-components → extensions}/exit-tool-mode-fab.d.ts +0 -0
  1409. /package/dist/domain/{system-components → extensions}/finalize-action.d.ts +0 -0
  1410. /package/dist/domain/{system-components → extensions}/finalize-component.d.ts +0 -0
  1411. /package/dist/domain/{system-components → extensions}/fit-selection-orthographic-camera-component.d.ts +0 -0
  1412. /package/dist/domain/{system-components → extensions}/fit-selection-perspective-camera-component.d.ts +0 -0
  1413. /package/dist/domain/{system-components → extensions}/fixed-header.d.ts +0 -0
  1414. /package/dist/domain/{system-components → extensions}/floating-header.d.ts +0 -0
  1415. /package/dist/domain/{system-components → extensions}/hidden-header.d.ts +0 -0
  1416. /package/dist/domain/{system-components → extensions}/hidden-sidebar-footer.d.ts +0 -0
  1417. /package/dist/domain/{system-components → extensions}/multilingual-text-value.d.ts +0 -0
  1418. /package/dist/domain/{system-components → extensions}/offset-anchors.d.ts +0 -0
  1419. /package/dist/domain/{system-components → extensions}/offset-indicator.d.ts +0 -0
  1420. /package/dist/domain/{system-components → extensions}/offset.d.ts +0 -0
  1421. /package/dist/domain/{system-components → extensions}/other-action.d.ts +0 -0
  1422. /package/dist/domain/{system-components → extensions}/read-sidebar-footer.d.ts +0 -0
  1423. /package/dist/domain/{system-components → extensions}/rotatable.d.ts +0 -0
  1424. /package/dist/domain/{system-components → extensions}/scene-entity-animation.d.ts +0 -0
  1425. /package/dist/domain/{system-components → extensions}/scene-entity-control.d.ts +0 -0
  1426. /package/dist/domain/{system-components → extensions}/scene-entity-floor-object.d.ts +0 -0
  1427. /package/dist/domain/{system-components → extensions}/scene-entity-wall-object.d.ts +0 -0
  1428. /package/dist/domain/{system-components → extensions}/selectable-component.d.ts +0 -0
  1429. /package/dist/domain/{system-components → extensions}/sidebar-tabs.d.ts +0 -0
  1430. /package/dist/domain/{system-components → extensions}/simple-summary.d.ts +0 -0
  1431. /package/dist/domain/{system-components → extensions}/size.d.ts +0 -0
  1432. /package/dist/domain/{system-components → extensions}/sketching-draw.d.ts +0 -0
  1433. /package/dist/domain/{system-components → extensions}/summary-component.d.ts +0 -0
  1434. /package/dist/domain/{system-components → extensions}/text-value.d.ts +0 -0
  1435. /package/dist/domain/{system-components → extensions}/tool-controls.d.ts +0 -0
  1436. /package/dist/domain/{system-components → extensions}/universal-sidebar-footer.d.ts +0 -0
  1437. /package/dist/domain/{system-components → extensions}/view-controls.d.ts +0 -0
@@ -0,0 +1,5 @@
1
+ export * from './runtime-spec.js';
2
+ export * from './encoded-runtime-spec.js';
3
+ export * from './encode-runtime-spec.js';
4
+ export * from './decode-runtime-spec.js';
5
+ export * from './spec-code-id.js';
@@ -0,0 +1 @@
1
+ export*from"./runtime-spec.js";export*from"./encoded-runtime-spec.js";export*from"./encode-runtime-spec.js";export*from"./decode-runtime-spec.js";export*from"./spec-code-id.js";
@@ -0,0 +1,68 @@
1
+ import type { AdminSpec, ApplicationSpec, ConfiguratorSpec, EntitySchema, Infra, ModelVersion, ResolvedModelVersion, ResolvedVersions } from '../../parse-application-files/index.js';
2
+ /**
3
+ * The part of a parsed entity schema the runtime reads: the entity type and the schema of its
4
+ * shape, from which it builds the entity's reflection. The full schema with `id` and `type` is
5
+ * only registered with a deployment, and the compiled shape validators only check presets and
6
+ * defaults while parsing.
7
+ */
8
+ export type RuntimeEntitySchema = Pick<EntitySchema, 'entityType' | 'shapeSchema'>;
9
+ /**
10
+ * The part of a parsed model version the runtime reads: the entity types, the aliases, the common
11
+ * types and the schema of every entity's shape. The raw shapes and resolved shapes only serve the
12
+ * parser and the type generator.
13
+ */
14
+ export type RuntimeModelVersion = Pick<ModelVersion, 'versionKey' | 'entityTypes' | 'rootEntityTypes' | 'aliases' | 'commonTypes'> & {
15
+ readonly entitySchemas: readonly RuntimeEntitySchema[];
16
+ };
17
+ /** One model version of a domain as the runtime reads it, with the migration file that leads to it. */
18
+ export type RuntimeResolvedModelVersion = Omit<ResolvedModelVersion, 'modelVersion'> & {
19
+ readonly modelVersion: RuntimeModelVersion;
20
+ };
21
+ /** Every model version of a domain as the runtime reads it; it builds the domain's migrations from them. */
22
+ export type RuntimeResolvedVersions = Pick<ResolvedVersions, 'latestVersion'> & {
23
+ readonly versionedModels: readonly RuntimeResolvedModelVersion[];
24
+ };
25
+ /** The model of a domain as the runtime reads it: the latest version and every earlier one. */
26
+ interface RuntimeDomainModel {
27
+ readonly latestModel: RuntimeModelVersion;
28
+ readonly resolvedVersions: RuntimeResolvedVersions;
29
+ }
30
+ /**
31
+ * The configurator part of the runtime spec. It leaves out the configuration schema and its
32
+ * version, which only a deployment registers, and the assistant's server settings (instructions
33
+ * and AI settings), which must never reach the browser of a customer.
34
+ */
35
+ export type RuntimeConfiguratorSpec = Pick<ConfiguratorSpec, 'components' | 'presets' | 'expressions' | 'actions' | 'invariants' | 'dataSchemas' | 'defaults' | 'states' | 'theme' | 'ui' | 'transformers' | 'assistant'> & RuntimeDomainModel;
36
+ /**
37
+ * The admin part of the runtime spec. It leaves out the configuration schema and its version, which
38
+ * only a deployment registers.
39
+ */
40
+ export type RuntimeAdminSpec = Pick<AdminSpec, 'components' | 'presets' | 'expressions' | 'invariants' | 'defaults' | 'states' | 'adminPages'> & RuntimeDomainModel;
41
+ /**
42
+ * The infrastructure settings the runtime reads: access control and resources. The environment
43
+ * variable declarations only drive the generated environment readers.
44
+ */
45
+ export type RuntimeInfra = Pick<Infra, 'acl' | 'resources' | 'resourcesConfig'>;
46
+ /**
47
+ * The parsed application spec as the runtime reads it: what `ApplicationRuntime` builds the
48
+ * configurator and admin runtimes from, and the sections an application needs besides its domains
49
+ * (data spec, app metadata, resources, access control, user interface settings, webhook data
50
+ * schemas, admin pages). `phoenix sync` and `phoenix build` write it to
51
+ * `.phoenix/application-spec.json` with `encodeRuntimeSpec`.
52
+ *
53
+ * It is derived from the parsed types, so a section the runtime reads keeps the parser's type. It
54
+ * leaves out what only the parser, the type generator or a deployment use, and holds plain data,
55
+ * Maps and Sets only, so it can be encoded as JSON.
56
+ */
57
+ export interface RuntimeSpec extends Pick<ApplicationSpec, 'appMetadata' | 'dataSpec'> {
58
+ readonly configurator: RuntimeConfiguratorSpec;
59
+ readonly admin: RuntimeAdminSpec;
60
+ readonly infra: RuntimeInfra;
61
+ }
62
+ /**
63
+ * Takes from a parsed application spec the part the runtime reads. The sections it keeps are the
64
+ * parsed values themselves, not copies; only the model versions are rebuilt without what the
65
+ * runtime does not read.
66
+ */
67
+ export declare const toRuntimeSpec: (spec: ApplicationSpec) => RuntimeSpec;
68
+ export {};
@@ -0,0 +1 @@
1
+ let e=e=>({versionKey:e.versionKey,entityTypes:e.entityTypes,rootEntityTypes:e.rootEntityTypes,aliases:e.aliases,commonTypes:e.commonTypes,entitySchemas:e.entitySchemas.map(e=>({entityType:e.entityType,shapeSchema:e.shapeSchema}))}),s=s=>({latestModel:e(s.latestModel),resolvedVersions:{latestVersion:s.resolvedVersions.latestVersion,versionedModels:s.resolvedVersions.versionedModels.map(s=>({version:s.version,key:s.key,isLatest:s.isLatest,migrationFile:s.migrationFile,modelVersion:e(s.modelVersion)}))}});export const toRuntimeSpec=e=>{let{configurator:t,admin:a,infra:n}=e;return{configurator:{components:t.components,presets:t.presets,expressions:t.expressions,actions:t.actions,invariants:t.invariants,dataSchemas:t.dataSchemas,defaults:t.defaults,states:t.states,theme:t.theme,ui:t.ui,transformers:t.transformers,assistant:t.assistant,...s(t)},admin:{components:a.components,presets:a.presets,expressions:a.expressions,invariants:a.invariants,defaults:a.defaults,states:a.states,adminPages:a.adminPages,...s(a)},appMetadata:e.appMetadata,infra:{acl:n.acl,resources:n.resources,resourcesConfig:n.resourcesConfig},dataSpec:e.dataSpec}};
@@ -0,0 +1,40 @@
1
+ import type { MemoEvalPlan } from '../../parse-application-files/index.js';
2
+ /**
3
+ * The id under which the generated `.phoenix/spec-code.ts` holds one piece of code written in YAML,
4
+ * and under which the runtime looks it up. Ids are unique within one domain; the configurator and
5
+ * the admin domain each have their own map.
6
+ *
7
+ * An id is computed from what the runtime spec already carries, by the functions of this file, on
8
+ * both sides: the generator that writes the closures and the runtime that reads them. It names the
9
+ * entity or alias that owns the code, the expression or the component instance, the position of the
10
+ * code inside that one value, and a hash of the code's text. So it stays the same when anything
11
+ * else in the spec changes, and it changes whenever the code itself changes: a module generated from
12
+ * another version of the spec does not hold it, and the runtime compiles the text instead of running
13
+ * the wrong closure.
14
+ */
15
+ export type SpecCodeId = string;
16
+ /**
17
+ * The part of an id that names a value expression: `KitchenRange.$maxWidth`. Its constant, when it
18
+ * is one, shares the plan and so the ids.
19
+ */
20
+ export declare const specCodeExpressionKey: (typeOrAlias: string, expressionName: string) => string;
21
+ /**
22
+ * The part of an id that names a component instance: `KitchenRange.main:detail`. The component
23
+ * belongs to it because an instance name is unique per component, not per entity: one entity can
24
+ * attach `main` of several components.
25
+ */
26
+ export declare const specCodeComponentKey: (typeOrAlias: string, instanceName: string, componentName: string) => string;
27
+ /**
28
+ * The id of each dependency of a plan, by dependency index: `<key>#<n>@<hash>` for the `n`-th
29
+ * `$eval` dependency, `undefined` for a read. `key` is the expression or component key of the value
30
+ * the plan builds. The ordinal counts the plan's `$eval` dependencies only, so a `$read` added to
31
+ * the same value does not renumber them.
32
+ */
33
+ export declare const specCodeEvalIds: (plan: MemoEvalPlan, key: string) => ReadonlyArray<SpecCodeId | undefined>;
34
+ /**
35
+ * Id of the `$eval` of one filter criterion of a component instance:
36
+ * `KitchenRange.label:textValue#filter0.active@<hash>`. `componentKey` comes from
37
+ * {@link specCodeComponentKey}; `branch` is the index of the filter among the `$or` alternatives,
38
+ * 0 when the filter has none; `code` is the criterion's code.
39
+ */
40
+ export declare const specCodeFilterId: (componentKey: string, branch: number, criterion: string, code: string) => SpecCodeId;
@@ -0,0 +1 @@
1
+ let e=e=>{let t=e.trim(),o=0x811c9dc5;for(let e=0;e<t.length;e++)o^=t.charCodeAt(e),o=Math.imul(o,0x1000193)>>>0;return o.toString(16).padStart(8,"0")};export const specCodeExpressionKey=(e,t)=>`${e}.${t}`;export const specCodeComponentKey=(e,t,o)=>`${e}.${t}:${o}`;export const specCodeEvalIds=(t,o)=>{let r=0;return t.deps.map(t=>"eval"===t.kind?`${o}#${r++}@${e(t.code)}`:void 0)};export const specCodeFilterId=(t,o,r,d)=>`${t}#filter${o}.${r}@${e(d)}`;
@@ -1,4 +1,5 @@
1
1
  export * from './core/index.js';
2
+ export * from './enhanced-json/index.js';
2
3
  export * from './caching/index.js';
3
4
  export * from './errors/index.js';
4
5
  export * from './generate-application/index.js';
@@ -1 +1 @@
1
- export*from"./core/index.js";export*from"./caching/index.js";export*from"./errors/index.js";export*from"./generate-application/index.js";export*from"./parse-application-files/index.js";export*from"./webhook-boundary.js";
1
+ export*from"./core/index.js";export*from"./enhanced-json/index.js";export*from"./caching/index.js";export*from"./errors/index.js";export*from"./generate-application/index.js";export*from"./parse-application-files/index.js";export*from"./webhook-boundary.js";
@@ -58,12 +58,46 @@ export type CategorizedFiles = Branded<'CategorizedFiles', {
58
58
  readonly adminElementsChanged: boolean;
59
59
  readonly webhooks: readonly CategorizedFile[];
60
60
  readonly webhooksChanged: boolean;
61
+ /**
62
+ * Whether the project has its webhook entry, `src/webhooks/index.ts`, whose default export is the
63
+ * project's webhook. Generation reads it to decide the generated webhook entry: without it the
64
+ * entry holds the built-in inert webhook.
65
+ */
66
+ readonly hasWebhookEntry: boolean;
61
67
  readonly locales: readonly CategorizedFile[];
62
68
  readonly localesChanged: boolean;
63
69
  readonly mockTemplates: readonly CategorizedFile[];
64
70
  readonly mockTemplatesChanged: boolean;
65
71
  readonly projectFiles: readonly CategorizedFile[];
66
72
  readonly projectFilesChanged: boolean;
73
+ /**
74
+ * One-time migration: true only on a checkout's first sync with an SDK that contains this field;
75
+ * delete it once projects have synced with such an SDK.
76
+ *
77
+ * Whether the project's root `tsconfig.json` is the full file earlier SDK versions generated on
78
+ * every sync, before the TypeScript settings moved to `.phoenix/tsconfig.json`. Generation reads
79
+ * it to replace that file with the one-line `tsconfig.json` that extends `.phoenix/tsconfig.json`;
80
+ * any other root `tsconfig.json` is the project's own and is left as it is.
81
+ */
82
+ readonly hasEarlierGeneratedTsconfig: boolean;
83
+ /**
84
+ * One-time migration: true only on a checkout's first sync with an SDK that contains this field;
85
+ * delete it once projects have synced with such an SDK.
86
+ *
87
+ * Whether the project's root `eslint.config.js` is the file earlier SDK versions generated on
88
+ * every sync, before it became the project's. Generation reads it to replace that file once with
89
+ * the current one; any other root `eslint.config.js` is the project's own and is left as it is.
90
+ */
91
+ readonly hasEarlierGeneratedEslintConfig: boolean;
92
+ /**
93
+ * One-time migration: true only on a checkout's first sync with an SDK that contains this field;
94
+ * delete it once projects have synced with such an SDK.
95
+ *
96
+ * Whether the project's root `prettier.config.js` is the file earlier SDK versions generated on
97
+ * every sync, before it became the project's. Generation reads it to replace that file once with
98
+ * the current one; any other root `prettier.config.js` is the project's own and is left as it is.
99
+ */
100
+ readonly hasEarlierGeneratedPrettierConfig: boolean;
67
101
  readonly customCode: readonly CategorizedFile[];
68
102
  readonly customCodeChanged: boolean;
69
103
  readonly envs: Record<string, unknown>;
@@ -1 +1 @@
1
- import e from"lodash-es/isEqual.js";import{Branded as n}from"@salsita-ai/common/utils";import{computeFileDepHashes as s}from"../../caching/index.js";import{DiagnosticCode as o,diagnosticMessages as a}from"../../errors/index.js";import{findWebhookHandlerRegistration as i}from"./module-analysis.js";import{findWebhookSafetyViolation as t}from"./webhook-safety.js";export const buildProjectFileIndex=e=>new Map([...e.spec,...e.expressions,...e.actions,...e.handlers,...e.elements,...e.transformers,...e.components,...e.invariants,...e.migrations,...e.adminMigrations,...e.adminExpressions,...e.adminInvariants,...e.adminComponents,...e.adminElements,...e.webhooks,...e.locales,...e.mockTemplates,...e.projectFiles,...e.customCode].map(e=>[e.file.name,e]));let r=e=>/\/_[^/]+\//.test(e),m=[{path:"spec/",key:"spec"},{path:"src/admin/expressions/",key:"adminExpressions"},{path:"src/admin/invariants/",key:"adminInvariants"},{path:"src/admin/components/",key:"adminComponents"},{path:"src/admin/elements/",key:"adminElements"},{path:"src/admin/migrations/",key:"adminMigrations"},{path:"src/expressions/",key:"expressions"},{path:"src/actions/",key:"actions"},{path:"src/handlers/",key:"handlers"},{path:"src/elements/",key:"elements"},{path:"src/transformers/",key:"transformers"},{path:"src/components/",key:"components"},{path:"src/invariants/",key:"invariants"},{path:"src/migrations/",key:"migrations"},{path:"src/webhooks/",key:"webhooks"},{path:"src/locales/",key:"locales"},{path:"mocks/",key:"mockTemplates"}],l=new Set(["package.json",".gitignore","CLAUDE.md",".cursor/rules/phoenix.mdc"]),d=new Set(["migrations","adminMigrations"]),c=m.filter(({path:e,key:n})=>e.startsWith("src/")&&d.has(n)),p=(e,n)=>{let s=e.slice(n.length).split("/");return!(s.length<=1)&&s.slice(0,-1).some(e=>!e.startsWith("_"))},h=/\.(ts|tsx|js|jsx)$/,f=(e,n)=>{if("components"===e||"adminComponents"===e)return n.hasUseWebhookDirective?{membership:"pinned",logSuffix:"webhook ('use webhook' directive)"}:{membership:"frontend",logSuffix:"frontend only (no 'use webhook' directive)"};if("handlers"===e){let e=i(n);return void 0!==e?{membership:"named-handler",logSuffix:`webhook (the ${e} registration)`}:n.hasUseWebhookDirective?{membership:"pinned",logSuffix:"webhook ('use webhook' directive)"}:{membership:"frontend",logSuffix:"frontend only (not a named handler or pin)"}}};export const CategorizedFiles=(i,d,g,u)=>{let k={spec:[],expressions:[],actions:[],handlers:[],elements:[],transformers:[],components:[],invariants:[],migrations:[],adminMigrations:[],adminExpressions:[],adminInvariants:[],adminComponents:[],adminElements:[],webhooks:[],locales:[],mockTemplates:[],projectFiles:[],customCode:[]},b=[];for(let e of i.files){if("text"!==e.kind)continue;if(r(e.name)){k.customCode.push({file:e,category:"customCode"});continue}if(l.has(e.name)){k.projectFiles.push({file:e,category:"projectFiles"});continue}let n=!1;for(let{path:s,key:o}of m)if(e.name.startsWith(s)){k[o].push({file:e,category:o}),n=!0;break}n||b.push(e.name)}for(let e of b)e.startsWith("src/")&&g.error(o.UNKNOWN_SRC_PATH,a.UNKNOWN_SRC_PATH(e));for(let{path:e,key:n}of c)for(let s of k[n])p(s.file.name,e)&&g.error(o.INVALID_SUBDIRECTORY,a.INVALID_SUBDIRECTORY(s.file.name,e));if(k.webhooks.length>0&&!k.webhooks.some(e=>"src/webhooks/index.ts"===e.file.name)&&g.error(o.MISSING_WEBHOOK_INDEX,a.MISSING_WEBHOOK_INDEX()),g.hasErrors)return;let C=[];for(let e of Object.values(k))for(let n of e)C.push(n.file.name);let v=s(i,C),{analyzer:x,logger:y}=u,E=d.createBuilder("categorizedFiles/moduleAnalysis",{build:e=>{try{return{analysis:x(e.name,e.content)}}catch(e){return{error:e instanceof Error?e.message:String(e)}}},getKey:e=>e.name,compare:(e,n)=>e.content===n.content}),I=new Set,w=e=>{if(!h.test(e.name))return;I.add(e.name);let n=E.build({name:e.name,content:e.content}).output;return void 0!==n.error?void g.error(o.MODULE_ANALYSIS_FAILED,a[o.MODULE_ANALYSIS_FAILED](e.name,n.error)):n.analysis},S={},j={};for(let[e,s]of Object.entries(k)){let o=d.createBuilder(`categorizedFiles/${e}`,{build:e=>e,getKey:e=>e.name,compare:(e,n)=>e.depHash===n.depHash}),a=new Set;S[e]=s.map(e=>{let s=v[e.file.name]??{deps:[],hash:""},{changed:i}=o.build({name:e.file.name,depHash:s.hash});a.add(e.file.name);let t=w(e.file),r=void 0===t?void 0:f(e.category,t);return void 0!==r&&y.debug(`Webhook membership: ${e.file.name} -> ${r.logSuffix}`),n({file:e.file,category:e.category,deps:s.deps,depHash:s.hash,changed:i,analysis:t,webhookMembership:r?.membership})}),j[e]=o.cleanup(a)}E.cleanup(I);let _=(e,n)=>n.some(e=>e.changed)||!0===j[e],F=d.createBuilder("categorizedFiles/envs",{build:e=>e.envs,getKey:()=>"singleton",compare:(n,s)=>e(n.envs,s.envs)}).build({envs:i.envs}),M=n({spec:S.spec,specChanged:_("spec",S.spec),expressions:S.expressions,expressionsChanged:_("expressions",S.expressions),actions:S.actions,actionsChanged:_("actions",S.actions),handlers:S.handlers,handlersChanged:_("handlers",S.handlers),elements:S.elements,elementsChanged:_("elements",S.elements),transformers:S.transformers,transformersChanged:_("transformers",S.transformers),components:S.components,componentsChanged:_("components",S.components),invariants:S.invariants,invariantsChanged:_("invariants",S.invariants),migrations:S.migrations,migrationsChanged:_("migrations",S.migrations),adminMigrations:S.adminMigrations,adminMigrationsChanged:_("adminMigrations",S.adminMigrations),adminExpressions:S.adminExpressions,adminExpressionsChanged:_("adminExpressions",S.adminExpressions),adminInvariants:S.adminInvariants,adminInvariantsChanged:_("adminInvariants",S.adminInvariants),adminComponents:S.adminComponents,adminComponentsChanged:_("adminComponents",S.adminComponents),adminElements:S.adminElements,adminElementsChanged:_("adminElements",S.adminElements),webhooks:S.webhooks,webhooksChanged:_("webhooks",S.webhooks),locales:S.locales,localesChanged:_("locales",S.locales),mockTemplates:S.mockTemplates,mockTemplatesChanged:_("mockTemplates",S.mockTemplates),projectFiles:S.projectFiles,projectFilesChanged:_("projectFiles",S.projectFiles),customCode:S.customCode,customCodeChanged:_("customCode",S.customCode),envs:F.output,envsChanged:F.changed}),O=buildProjectFileIndex(M);for(let e of O.values()){if("pinned"!==e.webhookMembership&&"named-handler"!==e.webhookMembership)continue;let n=t(e,O);void 0!==n&&g.error(o.WEBHOOK_UNSAFE_IMPORT,a[o.WEBHOOK_UNSAFE_IMPORT](n.fileName,n.inclusionReason,n.importer,n.specifier))}return M};
1
+ import e from"lodash-es/isEqual.js";import{Branded as n}from"@salsita-ai/common/utils";import{computeFileDepHashes as s}from"../../caching/index.js";import{DiagnosticCode as o,diagnosticMessages as i}from"../../errors/index.js";import{isEarlierGeneratedEslintConfig as t,isEarlierGeneratedPrettierConfig as a}from"./earlier-generated-editor-configs.js";import{isEarlierGeneratedTsconfig as r}from"./earlier-generated-tsconfig.js";import{findWebhookHandlerRegistration as m}from"./module-analysis.js";import{findWebhookSafetyViolation as l}from"./webhook-safety.js";export const buildProjectFileIndex=e=>new Map([...e.spec,...e.expressions,...e.actions,...e.handlers,...e.elements,...e.transformers,...e.components,...e.invariants,...e.migrations,...e.adminMigrations,...e.adminExpressions,...e.adminInvariants,...e.adminComponents,...e.adminElements,...e.webhooks,...e.locales,...e.mockTemplates,...e.projectFiles,...e.customCode].map(e=>[e.file.name,e]));let d=e=>/\/_[^/]+\//.test(e),c=[{path:"spec/",key:"spec"},{path:"src/admin/expressions/",key:"adminExpressions"},{path:"src/admin/invariants/",key:"adminInvariants"},{path:"src/admin/components/",key:"adminComponents"},{path:"src/admin/elements/",key:"adminElements"},{path:"src/admin/migrations/",key:"adminMigrations"},{path:"src/expressions/",key:"expressions"},{path:"src/actions/",key:"actions"},{path:"src/handlers/",key:"handlers"},{path:"src/elements/",key:"elements"},{path:"src/transformers/",key:"transformers"},{path:"src/components/",key:"components"},{path:"src/invariants/",key:"invariants"},{path:"src/migrations/",key:"migrations"},{path:"src/webhooks/",key:"webhooks"},{path:"src/locales/",key:"locales"},{path:"mocks/",key:"mockTemplates"}],p="tsconfig.json",h="eslint.config.js",f="prettier.config.js",g=new Set([".gitignore",p,h,f,"CLAUDE.md",".cursor/rules/phoenix.mdc"]),u=new Set(["migrations","adminMigrations"]),k=c.filter(({path:e,key:n})=>e.startsWith("src/")&&u.has(n)),b=(e,n)=>{let s=e.slice(n.length).split("/");return!(s.length<=1)&&s.slice(0,-1).some(e=>!e.startsWith("_"))},C=/\.(ts|tsx|js|jsx)$/,v=(e,n)=>{if("components"===e||"adminComponents"===e)return n.hasUseWebhookDirective?{membership:"pinned",logSuffix:"webhook ('use webhook' directive)"}:{membership:"frontend",logSuffix:"frontend only (no 'use webhook' directive)"};if("handlers"===e){let e=m(n);return void 0!==e?{membership:"named-handler",logSuffix:`webhook (the ${e} registration)`}:n.hasUseWebhookDirective?{membership:"pinned",logSuffix:"webhook ('use webhook' directive)"}:{membership:"frontend",logSuffix:"frontend only (not a named handler or pin)"}}};export const CategorizedFiles=(m,u,x,y)=>{let E={spec:[],expressions:[],actions:[],handlers:[],elements:[],transformers:[],components:[],invariants:[],migrations:[],adminMigrations:[],adminExpressions:[],adminInvariants:[],adminComponents:[],adminElements:[],webhooks:[],locales:[],mockTemplates:[],projectFiles:[],customCode:[]},j=[];for(let e of m.files){if("text"!==e.kind)continue;if(d(e.name)){E.customCode.push({file:e,category:"customCode"});continue}if(g.has(e.name)){E.projectFiles.push({file:e,category:"projectFiles"});continue}let n=!1;for(let{path:s,key:o}of c)if(e.name.startsWith(s)){E[o].push({file:e,category:o}),n=!0;break}n||j.push(e.name)}for(let e of j)e.startsWith("src/")&&x.error(o.UNKNOWN_SRC_PATH,i.UNKNOWN_SRC_PATH(e));for(let{path:e,key:n}of k)for(let s of E[n])b(s.file.name,e)&&x.error(o.INVALID_SUBDIRECTORY,i.INVALID_SUBDIRECTORY(s.file.name,e));let I=E.webhooks.some(e=>"src/webhooks/index.ts"===e.file.name);if(E.webhooks.length>0&&!I&&x.error(o.MISSING_WEBHOOK_INDEX,i.MISSING_WEBHOOK_INDEX()),x.hasErrors)return;let w=E.projectFiles.find(e=>e.file.name===p),S=void 0!==w&&r(w.file.content),F=E.projectFiles.find(e=>e.file.name===h),_=void 0!==F&&t(F.file.content),M=E.projectFiles.find(e=>e.file.name===f),O=void 0!==M&&a(M.file.content),N=[];for(let e of Object.values(E))for(let n of e)N.push(n.file.name);let A=s(m,N),{analyzer:T,logger:D}=y,W=u.createBuilder("categorizedFiles/moduleAnalysis",{build:e=>{try{return{analysis:T(e.name,e.content)}}catch(e){return{error:e instanceof Error?e.message:String(e)}}},getKey:e=>e.name,compare:(e,n)=>e.content===n.content}),U=new Set,H=e=>{if(!C.test(e.name))return;U.add(e.name);let n=W.build({name:e.name,content:e.content}).output;return void 0!==n.error?void x.error(o.MODULE_ANALYSIS_FAILED,i[o.MODULE_ANALYSIS_FAILED](e.name,n.error)):n.analysis},B={},K={};for(let[e,s]of Object.entries(E)){let o=u.createBuilder(`categorizedFiles/${e}`,{build:e=>e,getKey:e=>e.name,compare:(e,n)=>e.depHash===n.depHash}),i=new Set;B[e]=s.map(e=>{let s=A[e.file.name]??{deps:[],hash:""},{changed:t}=o.build({name:e.file.name,depHash:s.hash});i.add(e.file.name);let a=H(e.file),r=void 0===a?void 0:v(e.category,a);return void 0!==r&&D.debug(`Webhook membership: ${e.file.name} -> ${r.logSuffix}`),n({file:e.file,category:e.category,deps:s.deps,depHash:s.hash,changed:t,analysis:a,webhookMembership:r?.membership})}),K[e]=o.cleanup(i)}W.cleanup(U);let L=(e,n)=>n.some(e=>e.changed)||!0===K[e],R=u.createBuilder("categorizedFiles/envs",{build:e=>e.envs,getKey:()=>"singleton",compare:(n,s)=>e(n.envs,s.envs)}).build({envs:m.envs}),P=n({spec:B.spec,specChanged:L("spec",B.spec),expressions:B.expressions,expressionsChanged:L("expressions",B.expressions),actions:B.actions,actionsChanged:L("actions",B.actions),handlers:B.handlers,handlersChanged:L("handlers",B.handlers),elements:B.elements,elementsChanged:L("elements",B.elements),transformers:B.transformers,transformersChanged:L("transformers",B.transformers),components:B.components,componentsChanged:L("components",B.components),invariants:B.invariants,invariantsChanged:L("invariants",B.invariants),migrations:B.migrations,migrationsChanged:L("migrations",B.migrations),adminMigrations:B.adminMigrations,adminMigrationsChanged:L("adminMigrations",B.adminMigrations),adminExpressions:B.adminExpressions,adminExpressionsChanged:L("adminExpressions",B.adminExpressions),adminInvariants:B.adminInvariants,adminInvariantsChanged:L("adminInvariants",B.adminInvariants),adminComponents:B.adminComponents,adminComponentsChanged:L("adminComponents",B.adminComponents),adminElements:B.adminElements,adminElementsChanged:L("adminElements",B.adminElements),webhooks:B.webhooks,webhooksChanged:L("webhooks",B.webhooks),hasWebhookEntry:I,locales:B.locales,localesChanged:L("locales",B.locales),mockTemplates:B.mockTemplates,mockTemplatesChanged:L("mockTemplates",B.mockTemplates),projectFiles:B.projectFiles,projectFilesChanged:L("projectFiles",B.projectFiles),hasEarlierGeneratedTsconfig:S,hasEarlierGeneratedEslintConfig:_,hasEarlierGeneratedPrettierConfig:O,customCode:B.customCode,customCodeChanged:L("customCode",B.customCode),envs:R.output,envsChanged:R.changed}),$=buildProjectFileIndex(P);for(let e of $.values()){if("pinned"!==e.webhookMembership&&"named-handler"!==e.webhookMembership)continue;let n=l(e,$);void 0!==n&&x.error(o.WEBHOOK_UNSAFE_IMPORT,i[o.WEBHOOK_UNSAFE_IMPORT](n.fileName,n.inclusionReason,n.importer,n.specifier))}return P};
@@ -0,0 +1,16 @@
1
+ /**
2
+ * One-time migration, see the top of this module: true only before a checkout's first sync with this SDK.
3
+ *
4
+ * Whether the content of a project's root `eslint.config.js` is the file earlier SDK versions
5
+ * generated. Whitespace, semicolons and the quote style do not count; any other difference makes the
6
+ * file the project's own.
7
+ */
8
+ export declare const isEarlierGeneratedEslintConfig: (content: string) => boolean;
9
+ /**
10
+ * One-time migration, see the top of this module: true only before a checkout's first sync with this SDK.
11
+ *
12
+ * Whether the content of a project's root `prettier.config.js` is the file earlier SDK versions
13
+ * generated. Whitespace, semicolons and the quote style do not count; any other difference makes the
14
+ * file the project's own.
15
+ */
16
+ export declare const isEarlierGeneratedPrettierConfig: (content: string) => boolean;
@@ -0,0 +1,9 @@
1
+ let e=`/**
2
+ * Auto-generated file.
3
+ * Do not modify this file manually.
4
+ * Version: 1
5
+ */`,t=["@salsita-ai/sdk/common","@salsita-ai/platform-common","@salsita-ai/common"],a=(a,r)=>t.map(t=>`${e}
6
+ import { ${a} } from '${t}/${r}'
7
+
8
+ export default ${a}
9
+ `),r=e=>e.replace(/\s+/g,"").replace(/;/g,"").replace(/"/g,"'"),i=new Set(a("eslintrc","eslint").map(r)),o=new Set(a("prettierrc","prettier").map(r));export const isEarlierGeneratedEslintConfig=e=>i.has(r(e));export const isEarlierGeneratedPrettierConfig=e=>o.has(r(e));
@@ -0,0 +1,9 @@
1
+ /**
2
+ * One-time migration, see the top of this module: true only before a checkout's first sync with this SDK.
3
+ *
4
+ * Whether the content of a project's root `tsconfig.json` is the file earlier SDK versions generated.
5
+ * The comparison is by meaning: comments, formatting and key order do not count, so a generated
6
+ * file that an editor or formatter rewrote is still recognised. Content that does not parse, or that
7
+ * differs in any setting, is the project's own.
8
+ */
9
+ export declare const isEarlierGeneratedTsconfig: (content: string) => boolean;
@@ -0,0 +1 @@
1
+ import e from"lodash-es/isEqual.js";let l={compilerOptions:{noEmit:!0,module:"ESNext",moduleResolution:"Bundler",lib:["ES2022","DOM"],esModuleInterop:!0,isolatedModules:!0,resolveJsonModule:!0,allowJs:!1,skipLibCheck:!0,strict:!0,noImplicitOverride:!0,noImplicitReturns:!0,noPropertyAccessFromIndexSignature:!0,noUncheckedIndexedAccess:!0,allowUnreachableCode:!1,allowUnusedLabels:!1,noFallthroughCasesInSwitch:!0,noUnusedLocals:!0,noUnusedParameters:!0,useDefineForClassFields:!0,jsx:"react-jsx",paths:{}},include:["src",".phoenix","prettier.config.js","eslint.config.js","./.phoenix/globals.d.ts"]},s=(e,l)=>{let s=l+1;for(;s<e.length&&'"'!==e[s];)s+="\\"===e[s]?2:1;return s+1};export const isEarlierGeneratedTsconfig=t=>e((e=>{try{return JSON.parse((e=>{let l="",t=0;for(;t<e.length;){let n=e[t];if('"'===n){let n=s(e,t);l+=e.slice(t,n),t=n;continue}","===n&&/^\s*[}\]]/.test(e.slice(t+1))||(l+=n),t++}return l})((e=>{let l="",t=0;for(;t<e.length;){let n=e[t],o=e[t+1];if('"'===n){let n=s(e,t);l+=e.slice(t,n),t=n}else if("/"===n&&"/"===o){let l=e.indexOf("\n",t);t=-1===l?e.length:l}else if("/"===n&&"*"===o){let l=e.indexOf("*/",t+2);t=-1===l?e.length:l+2}else l+=n,t++}return l})(e)))}catch{return}})(t),l);
@@ -43,6 +43,6 @@ export declare const analyzeParsedModule: (module: Module) => ModuleAnalysis;
43
43
  /** The explicit webhook classification of one authored file. */
44
44
  export type WebhookMembership = 'pinned' | 'named-handler' | 'frontend';
45
45
  /** Handler registrations that keep implicit webhook membership for legacy-CLI parity. */
46
- export declare const WEBHOOK_HANDLER_REGISTRATIONS: readonly ['createMapPublishedRevisionDataHandler', 'createMapPublishedChunkedDataHandler', 'createDataRowValidatorHandler', 'createSheetValidatorHandler'];
46
+ export declare const WEBHOOK_HANDLER_REGISTRATIONS: readonly ['phx.domain.createAssistantSetupHandler', 'phx.domain.admin.createMapPublishedRevisionDataHandler', 'phx.domain.admin.createMapPublishedChunkedDataHandler', 'phx.domain.admin.createDataRowValidatorHandler', 'phx.domain.admin.createSheetValidatorHandler'];
47
47
  /** Returns the named webhook handler registration a handler module calls, if any. */
48
48
  export declare const findWebhookHandlerRegistration: (analysis: ModuleAnalysis) => string | undefined;
@@ -1 +1 @@
1
- import{Visitor as e}from"@swc/core/Visitor.js";export const getModuleParseOptions=()=>({syntax:"typescript",tsx:!0,target:"es2022"});let t=e=>{if("Identifier"===e.type)return e.value;if("ParenthesisExpression"===e.type)return t(e.expression);if("MemberExpression"!==e.type||"Identifier"!==e.property.type)return;let r=t(e.object);return void 0===r?void 0:`${r}.${e.property.value}`},r=e=>e.length>0&&e.every(e=>"isTypeOnly"in e&&!0===e.isTypeOnly),i=class ProjectSourceVisitor extends e{imports=[];calledMemberPaths=new Set;visitTsType(e){return e}visitImportDeclaration(e){return this.imports.push({specifier:e.source.value,typeOnly:e.typeOnly||r(e.specifiers)}),e}visitExportNamedDeclaration(e){return null!=e.source&&this.imports.push({specifier:e.source.value,typeOnly:e.typeOnly||r(e.specifiers)}),super.visitExportNamedDeclaration(e)}visitExportAllDeclaration(e){return this.imports.push({specifier:e.source.value,typeOnly:"typeOnly"in e&&!0===e.typeOnly}),e}visitCallExpression(e){var r;let i=(r=e.arguments[0]?.expression,r?.type==="StringLiteral"?r.value:r?.type==="TemplateLiteral"&&0===r.expressions.length?r.quasis[0]?.cooked??r.quasis[0]?.raw:void 0);if("Import"===e.callee.type&&void 0!==i)this.imports.push({specifier:i,typeOnly:!1});else if("Super"!==e.callee.type&&"Import"!==e.callee.type){let r=t(e.callee);void 0!==r&&this.calledMemberPaths.add(r),"require"===r&&void 0!==i&&this.imports.push({specifier:i,typeOnly:!1})}return super.visitCallExpression(e)}};export const analyzeParsedModule=e=>{let t=new i;t.visitModule(e);let r=e.body[0];return{imports:t.imports,calledMemberPaths:[...t.calledMemberPaths].sort(),hasUseWebhookDirective:r?.type==="ExpressionStatement"&&"StringLiteral"===r.expression.type&&"use webhook"===r.expression.value}};export const WEBHOOK_HANDLER_REGISTRATIONS=["createMapPublishedRevisionDataHandler","createMapPublishedChunkedDataHandler","createDataRowValidatorHandler","createSheetValidatorHandler"];export const findWebhookHandlerRegistration=e=>WEBHOOK_HANDLER_REGISTRATIONS.find(t=>e.calledMemberPaths.includes(`phx.domain.admin.${t}`));
1
+ import{Visitor as e}from"@swc/core/Visitor.js";export const getModuleParseOptions=()=>({syntax:"typescript",tsx:!0,target:"es2022"});let t=e=>{if("Identifier"===e.type)return e.value;if("ParenthesisExpression"===e.type)return t(e.expression);if("MemberExpression"!==e.type||"Identifier"!==e.property.type)return;let r=t(e.object);return void 0===r?void 0:`${r}.${e.property.value}`},r=e=>e.length>0&&e.every(e=>"isTypeOnly"in e&&!0===e.isTypeOnly),i=class ProjectSourceVisitor extends e{imports=[];calledMemberPaths=new Set;visitTsType(e){return e}visitImportDeclaration(e){return this.imports.push({specifier:e.source.value,typeOnly:e.typeOnly||r(e.specifiers)}),e}visitExportNamedDeclaration(e){return null!=e.source&&this.imports.push({specifier:e.source.value,typeOnly:e.typeOnly||r(e.specifiers)}),super.visitExportNamedDeclaration(e)}visitExportAllDeclaration(e){return this.imports.push({specifier:e.source.value,typeOnly:"typeOnly"in e&&!0===e.typeOnly}),e}visitCallExpression(e){var r;let i=(r=e.arguments[0]?.expression,r?.type==="StringLiteral"?r.value:r?.type==="TemplateLiteral"&&0===r.expressions.length?r.quasis[0]?.cooked??r.quasis[0]?.raw:void 0);if("Import"===e.callee.type&&void 0!==i)this.imports.push({specifier:i,typeOnly:!1});else if("Super"!==e.callee.type&&"Import"!==e.callee.type){let r=t(e.callee);void 0!==r&&this.calledMemberPaths.add(r),"require"===r&&void 0!==i&&this.imports.push({specifier:i,typeOnly:!1})}return super.visitCallExpression(e)}};export const analyzeParsedModule=e=>{let t=new i;t.visitModule(e);let r=e.body[0];return{imports:t.imports,calledMemberPaths:[...t.calledMemberPaths].sort(),hasUseWebhookDirective:r?.type==="ExpressionStatement"&&"StringLiteral"===r.expression.type&&"use webhook"===r.expression.value}};export const WEBHOOK_HANDLER_REGISTRATIONS=["phx.domain.createAssistantSetupHandler","phx.domain.admin.createMapPublishedRevisionDataHandler","phx.domain.admin.createMapPublishedChunkedDataHandler","phx.domain.admin.createDataRowValidatorHandler","phx.domain.admin.createSheetValidatorHandler"];export const findWebhookHandlerRegistration=e=>WEBHOOK_HANDLER_REGISTRATIONS.find(t=>e.calledMemberPaths.includes(t));
@@ -1 +1 @@
1
- import{parse as r}from"yaml";import{Branded as e}from"@salsita-ai/common/utils";import{DiagnosticCode as t,diagnosticMessages as n}from"../../errors/index.js";export const parseYamlSpecFile=(o,a)=>{try{let i=r(o.file.content,{merge:!0});if(null===i)return a.warning(t.EMPTY_SPEC_FILE,n.EMPTY_SPEC_FILE()),e({name:o.file.name,content:{}});if("object"!=typeof i||Array.isArray(i))return void a.error(t.YAML_PARSE_ERROR,n.YAML_PARSE_ERROR("File did not parse to an object"));return e({name:o.file.name,content:i})}catch(r){a.error(t.YAML_PARSE_ERROR,n.YAML_PARSE_ERROR(r instanceof Error?r.message:String(r)));return}};
1
+ import{parse as r}from"yaml";import{Branded as e}from"@salsita-ai/common/utils";import{DiagnosticCode as t,diagnosticMessages as n}from"../../errors/index.js";let o=(r,e,i)=>{if("number"==typeof r)return!Number.isFinite(r)&&(i.at(...e).error(t.NON_FINITE_NUMBER,n.NON_FINITE_NUMBER(e.join("."),String(r))),!0);if("object"!=typeof r||null===r)return!1;let a=!1;for(let[t,n]of Object.entries(r))a=o(n,[...e,t],i)||a;return a};export const parseYamlSpecFile=(i,a)=>{try{let E=r(i.file.content,{merge:!0});if(null===E)return a.warning(t.EMPTY_SPEC_FILE,n.EMPTY_SPEC_FILE()),e({name:i.file.name,content:{}});if("object"!=typeof E||Array.isArray(E))return void a.error(t.YAML_PARSE_ERROR,n.YAML_PARSE_ERROR("File did not parse to an object"));if(o(E,[],a))return;return e({name:i.file.name,content:E})}catch(r){a.error(t.YAML_PARSE_ERROR,n.YAML_PARSE_ERROR(r instanceof Error?r.message:String(r)));return}};
@@ -1,13 +1,26 @@
1
1
  import { z } from 'zod';
2
2
  import { type AssistantAiSettings } from '@salsita-ai/contracts/assistant';
3
+ import { ASSISTANT_HINTS } from '#package/domain';
3
4
  /**
4
5
  * One whitelisted field in the assistant manifest. `description` overrides the JSON Schema
5
- * description of the shape property; `as` exposes the field under a different GraphQL name. An empty
6
+ * description of the shape property; `as` exposes the field under a different GraphQL name; `lenses`
7
+ * names the lenses declared under `assistant.lenses` whose selection includes the field. An empty
6
8
  * entry (`length:` in YAML) whitelists the field with its defaults.
7
9
  */
8
10
  export interface RawAssistantField {
9
11
  readonly description?: string;
10
12
  readonly as?: string;
13
+ readonly lenses?: readonly string[];
14
+ }
15
+ /**
16
+ * One lens of the assistant `lenses` map, keyed by the name the agent spreads it by: a named
17
+ * selection made of the `entities` entries tagged with that name. `description` tells the agent when
18
+ * to use the lens; `maxDepth` is how many levels of tagged relations carry the same selection before
19
+ * they reduce to `id`, 1 by default.
20
+ */
21
+ export interface RawAssistantLens {
22
+ readonly description: string;
23
+ readonly maxDepth?: number;
11
24
  }
12
25
  /**
13
26
  * One entry of the assistant `deletable` map. It takes no options yet; an empty entry (`Cabinet:` in
@@ -23,7 +36,6 @@ export type AssistantOptionComponentType = (typeof ASSISTANT_OPTION_COMPONENT_TY
23
36
  * does not change during a session. A hint only adds a sentence to a generated description; nothing
24
37
  * verifies it.
25
38
  */
26
- export declare const ASSISTANT_HINTS: readonly ['sameForAllInstances', 'constantDuringSession'];
27
39
  export type AssistantHint = (typeof ASSISTANT_HINTS)[number];
28
40
  /**
29
41
  * The component that holds the choices of a writable field: the instance `instanceName` of the
@@ -89,7 +101,7 @@ export interface RawAssistantAction {
89
101
  * with `addChild`. `replaceRecipes` names, per entity type or alias, the `replaceEntityRecipes`
90
102
  * groups whose recipes the agent may list and replace the entity by with `replaceEntity`. `actions`
91
103
  * names the declared actions the agent may run as custom mutations. Nothing is exposed without an
92
- * entry.
104
+ * entry. `lenses` declares the named selections that `entities` entries are tagged with.
93
105
  *
94
106
  * `ai` and `instructions` are for the server only: the provider, model tier and reasoning level the
95
107
  * deployment's assistant runs with, and the integrator's own guidance for it, appended to the system
@@ -102,6 +114,7 @@ export interface RawAssistant {
102
114
  readonly childRecipes?: Readonly<Record<string, RawAssistantRecipes>>;
103
115
  readonly replaceRecipes?: Readonly<Record<string, RawAssistantRecipes>>;
104
116
  readonly actions?: Readonly<Record<string, RawAssistantAction | null>>;
117
+ readonly lenses?: Readonly<Record<string, RawAssistantLens>>;
105
118
  readonly instructions?: string;
106
119
  readonly ai: AssistantAiSettings;
107
120
  }
@@ -1 +1 @@
1
- import{z as t}from"zod";import{ASSISTANT_AI_PROVIDERS as e,ASSISTANT_MODEL_TIERS as o,ASSISTANT_REASONING_LEVELS as i}from"@salsita-ai/contracts/assistant";export const ASSISTANT_OPTION_COMPONENT_TYPES=["materialSwatch","attributeSelection","distanceDimensionSelect"];export const ASSISTANT_HINTS=["sameForAllInstances","constantDuringSession"];let n=t.string().regex(/^(?!__)[_A-Za-z][_0-9A-Za-z]*$/,'must be a GraphQL name: letters, digits and "_", not starting with a digit or "__"'),r=e=>t.enum(e,{errorMap:()=>({message:`must be one of: ${e.join(", ")}`})}),s=t.object({description:t.string().optional(),as:n.optional()}).strict(),a=t.array(r(ASSISTANT_HINTS)),c=t.object({options:t.object({componentType:r(ASSISTANT_OPTION_COMPONENT_TYPES),instanceName:t.string().min(1,"must not be empty; name the component instance that holds the choices"),as:n.optional(),validate:t.boolean().optional(),allowDryRuns:t.boolean().optional(),hints:a.optional()}).strict().optional()}).strict(),l=t.object({as:t.string().trim().min(1,"must not be empty; remove the key to use the instance name").optional(),description:t.string().optional(),allowDryRuns:t.boolean().optional()}).strict(),p=e=>t.object({hints:a.optional(),groups:t.record(t.string(),l.nullable(),{required_error:`is required: the recipe groups of the type go under "groups", keyed by the instance name of a "${e}" component`})}).strict(),d=t.object({description:t.string().optional(),as:n.optional()}).strict(),m=`is required: declare provider (${e.join(", ")}), model (${o.join(", ")}) and reasoning (${i.join(", ")})`,g=t.object({provider:r(e),model:r(o),reasoning:r(i)},{required_error:m,invalid_type_error:m}).strict();export const rawAssistantSchema=t.object({entities:t.record(t.string(),t.record(t.string(),s.nullable())).optional(),deletable:t.record(t.string(),t.object({}).strict().nullable()).optional(),writable:t.record(t.string(),t.record(t.string(),c.nullable())).optional(),childRecipes:t.record(t.string(),p("childEntityRecipes")).optional(),replaceRecipes:t.record(t.string(),p("replaceEntityRecipes")).optional(),actions:t.record(t.string(),d.nullable()).optional(),instructions:t.string().trim().min(1,"must not be empty; remove the key when there are no instructions").optional(),ai:g}).strict();
1
+ import{z as e}from"zod";import{ASSISTANT_AI_PROVIDERS as t,ASSISTANT_MODEL_TIERS as o,ASSISTANT_REASONING_LEVELS as i}from"@salsita-ai/contracts/assistant";import{ASSISTANT_HINTS as n}from"#package/domain";export const ASSISTANT_OPTION_COMPONENT_TYPES=["materialSwatch","attributeSelection","distanceDimensionSelect"];let r=e.string().regex(/^(?!__)[_A-Za-z][_0-9A-Za-z]*$/,'must be a GraphQL name: letters, digits and "_", not starting with a digit or "__"'),s=t=>e.enum(t,{errorMap:()=>({message:`must be one of: ${t.join(", ")}`})}),a=e.object({description:e.string().optional(),as:r.optional(),lenses:e.array(e.string()).optional()}).strict(),l="must be a whole number of at least 1; remove the key to nest tagged relations one level",c=e.object({description:e.string().trim().min(1,"must not be empty; say when the agent should use the lens"),maxDepth:e.number({invalid_type_error:l}).int(l).min(1,l).optional()}).strict(),p=r.refine(e=>!e.includes("__"),'must not contain "__", which names the generated copies of a lens'),m=e.array(s(n)),d=e.object({options:e.object({componentType:s(ASSISTANT_OPTION_COMPONENT_TYPES),instanceName:e.string().min(1,"must not be empty; name the component instance that holds the choices"),as:r.optional(),validate:e.boolean().optional(),allowDryRuns:e.boolean().optional(),hints:m.optional()}).strict().optional()}).strict(),u=e.object({as:e.string().trim().min(1,"must not be empty; remove the key to use the instance name").optional(),description:e.string().optional(),allowDryRuns:e.boolean().optional()}).strict(),h=t=>e.object({hints:m.optional(),groups:e.record(e.string(),u.nullable(),{required_error:`is required: the recipe groups of the type go under "groups", keyed by the instance name of a "${t}" component`})}).strict(),b=e.object({description:e.string().optional(),as:r.optional()}).strict(),g=`is required: declare provider (${t.join(", ")}), model (${o.join(", ")}) and reasoning (${i.join(", ")})`,_="must be a positive whole number of input tokens; remove the key to use the default of the server",y=e.object({provider:s(t),model:s(o),reasoning:s(i),maxThreadSize:e.number({invalid_type_error:_}).int(_).positive(_).optional()},{required_error:g,invalid_type_error:g}).strict();export const rawAssistantSchema=e.object({entities:e.record(e.string(),e.record(e.string(),a.nullable())).optional(),deletable:e.record(e.string(),e.object({}).strict().nullable()).optional(),writable:e.record(e.string(),e.record(e.string(),d.nullable())).optional(),childRecipes:e.record(e.string(),h("childEntityRecipes")).optional(),replaceRecipes:e.record(e.string(),h("replaceEntityRecipes")).optional(),actions:e.record(e.string(),b.nullable()).optional(),lenses:e.record(p,c).optional(),instructions:e.string().trim().min(1,"must not be empty; remove the key when there are no instructions").optional(),ai:y}).strict();
@@ -1 +1 @@
1
- import{z as o}from"zod";import{Branded as a}from"@salsita-ai/common/utils";import{enhancedJsonObjectSchema as t,validateNoLegacyCodeRef as e}from"../../core/index.js";import{DiagnosticCode as n,diagnosticMessages as i}from"../../errors/index.js";import{rawAclSchema as r}from"./raw-acl.js";import{rawActionsSchema as s}from"./raw-actions.js";import{rawAdminPagesSchema as l}from"./raw-admin-pages.js";import{rawAssistantSchema as p}from"./raw-assistant.js";import{rawBudgetsSchema as m}from"./raw-budgets.js";import{rawChunksSchema as c}from"./raw-chunks.js";import{rawComponentsSchema as f}from"./raw-components.js";import{rawConstantsSchema as d}from"./raw-constants.js";import{rawDataSpecSchema as u}from"./raw-data.js";import{rawDefaultsSchema as j}from"./raw-defaults.js";import{rawEnvSchema as w}from"./raw-env.js";import{rawExpressionsSchema as b}from"./raw-expressions.js";import{rawInvariantsSchema as g}from"./raw-invariants.js";import{rawModelSchema as S}from"./raw-model.js";import{rawPresetsSchema as D}from"./raw-presets.js";import{rawRelationsSchema as h}from"./raw-relations.js";import{rawResourcesConfigSchema as v,rawResourcesSchema as O}from"./raw-resources.js";import{rawStateValuesSchema as E}from"./raw-states.js";import{rawTransformersSchema as R}from"./raw-transformers.js";export const DATA_SCHEMA_KEYS=["publishedData","sessionData","frontendData","backendData","finalizeData","prefetchedFinalizeData","finalizeResult","callbackData"];let k=o.object({$admin:o.boolean().optional(),model:S.optional(),components:f.optional(),presets:D.optional(),$data:u.optional(),expressions:b.optional(),actions:s.optional(),invariants:g.optional(),constants:d.optional(),relations:h.optional(),defaults:j.optional(),publishedData:t.optional(),sessionData:t.optional(),frontendData:t.optional(),backendData:t.optional(),finalizeData:t.optional(),prefetchedFinalizeData:t.optional(),finalizeResult:t.optional(),callbackData:t.optional(),navigationStates:E.optional(),viewStates:E.optional(),toolStates:E.optional(),exportStates:E.optional(),themePreset:o.string().optional(),themeOptions:o.record(o.unknown()).optional(),preview:o.enum(["always","never","auto","hide"]).optional(),alwaysExpand:o.boolean().optional(),availableLocales:o.array(o.string()).optional(),textLanguages:o.array(o.string()).optional(),transformers:R.optional(),project:o.string().regex(/^[a-z0-9-]{3,}$/,"must be a project slug (lowercase letters, digits and dashes, at least 3) or `default`").optional(),applicationVersion:o.string().optional(),workspace:o.boolean().optional(),webComponentTag:o.string().optional(),pageTitle:o.string().optional(),useAuthHook:o.boolean().optional(),useClerk:o.boolean().optional(),enableAdminRelease:o.boolean().optional(),jsonSchemaValidator:o.enum(["ajv","csp-compatible"]).optional(),gltfDecoder:o.enum(["js","wasm"]).optional(),appLoader:o.enum(["legacy","universal"]).optional(),collectFinalizeData:o.boolean().optional(),env:w.optional(),acl:r.optional(),resources:O.optional(),resourcesConfig:v.optional(),budgets:m.optional(),chunks:c.optional(),assistant:p.optional(),$adminPages:l.optional()}).strict();export const parseRawSpecFile=(o,t)=>{e(o.content,t);let r=k.safeParse(o.content);if(!r.success){for(let o of r.error.issues)t.error(n.SCHEMA_PARSE_ERROR,i.SCHEMA_PARSE_ERROR(o.path.join("."),o.message));return}let{constants:s,...l}=r.data,p=((o,a)=>{let t=Object.fromEntries(Object.entries(o.expressions??{}).map(([o,a])=>[o,{...a}]));if(void 0===o.constants)return Object.keys(t).length>0?t:void 0;for(let[e,r]of Object.entries(o.constants))for(let[o,s]of(t[e]||(t[e]={}),Object.entries(r))){if(void 0!==t[e][o]){a.at("constants",e,o).error(n.CONSTANTS_EXPRESSION_CONFLICT,i[n.CONSTANTS_EXPRESSION_CONFLICT](e,o));continue}t[e][o]={kind:"value",constant:!0,value:s,schema:{}}}return Object.keys(t).length>0?t:void 0})(r.data,t);return a({name:o.name,content:{...l,expressions:p}})};
1
+ import{z as o}from"zod";import{Branded as a}from"@salsita-ai/common/utils";import{enhancedJsonObjectSchema as t}from"../../core/index.js";import{validateNoLegacyCodeRef as e}from"../../enhanced-json/index.js";import{DiagnosticCode as n,diagnosticMessages as i}from"../../errors/index.js";import{rawAclSchema as r}from"./raw-acl.js";import{rawActionsSchema as s}from"./raw-actions.js";import{rawAdminPagesSchema as l}from"./raw-admin-pages.js";import{rawAssistantSchema as p}from"./raw-assistant.js";import{rawBudgetsSchema as m}from"./raw-budgets.js";import{rawChunksSchema as c}from"./raw-chunks.js";import{rawComponentsSchema as f}from"./raw-components.js";import{rawConstantsSchema as d}from"./raw-constants.js";import{rawDataSpecSchema as j}from"./raw-data.js";import{rawDefaultsSchema as u}from"./raw-defaults.js";import{rawEnvSchema as w}from"./raw-env.js";import{rawExpressionsSchema as b}from"./raw-expressions.js";import{rawInvariantsSchema as g}from"./raw-invariants.js";import{rawModelSchema as S}from"./raw-model.js";import{rawPresetsSchema as h}from"./raw-presets.js";import{rawRelationsSchema as D}from"./raw-relations.js";import{rawResourcesConfigSchema as v,rawResourcesSchema as O}from"./raw-resources.js";import{rawStateValuesSchema as E}from"./raw-states.js";import{rawTransformersSchema as R}from"./raw-transformers.js";export const DATA_SCHEMA_KEYS=["publishedData","sessionData","frontendData","backendData","finalizeData","prefetchedFinalizeData","finalizeResult","callbackData"];let k=o.object({$admin:o.boolean().optional(),model:S.optional(),components:f.optional(),presets:h.optional(),$data:j.optional(),expressions:b.optional(),actions:s.optional(),invariants:g.optional(),constants:d.optional(),relations:D.optional(),defaults:u.optional(),publishedData:t.optional(),sessionData:t.optional(),frontendData:t.optional(),backendData:t.optional(),finalizeData:t.optional(),prefetchedFinalizeData:t.optional(),finalizeResult:t.optional(),callbackData:t.optional(),navigationStates:E.optional(),viewStates:E.optional(),toolStates:E.optional(),exportStates:E.optional(),themePreset:o.string().optional(),themeOptions:o.record(o.unknown()).optional(),preview:o.enum(["always","never","auto","hide"]).optional(),alwaysExpand:o.boolean().optional(),availableLocales:o.array(o.string()).optional(),textLanguages:o.array(o.string()).optional(),transformers:R.optional(),project:o.string().regex(/^[a-z0-9-]{3,}$/,"must be a project slug (lowercase letters, digits and dashes, at least 3) or `default`").optional(),applicationVersion:o.string().optional(),workspace:o.boolean().optional(),webComponentTag:o.string().optional(),pageTitle:o.string().optional(),useAuthHook:o.boolean().optional(),useClerk:o.boolean().optional(),enableAdminRelease:o.boolean().optional(),jsonSchemaValidator:o.enum(["ajv","csp-compatible"]).optional(),gltfDecoder:o.enum(["js","wasm"]).optional(),appLoader:o.enum(["legacy","universal"]).optional(),collectFinalizeData:o.boolean().optional(),env:w.optional(),acl:r.optional(),resources:O.optional(),resourcesConfig:v.optional(),budgets:m.optional(),chunks:c.optional(),assistant:p.optional(),$adminPages:l.optional()}).strict();export const parseRawSpecFile=(o,t)=>{e(o.content,t);let r=k.safeParse(o.content);if(!r.success){for(let o of r.error.issues)t.error(n.SCHEMA_PARSE_ERROR,i.SCHEMA_PARSE_ERROR(o.path.join("."),o.message));return}let{constants:s,...l}=r.data,p=((o,a)=>{let t=Object.fromEntries(Object.entries(o.expressions??{}).map(([o,a])=>[o,{...a}]));if(void 0===o.constants)return Object.keys(t).length>0?t:void 0;for(let[e,r]of Object.entries(o.constants))for(let[o,s]of(t[e]||(t[e]={}),Object.entries(r))){if(void 0!==t[e][o]){a.at("constants",e,o).error(n.CONSTANTS_EXPRESSION_CONFLICT,i[n.CONSTANTS_EXPRESSION_CONFLICT](e,o));continue}t[e][o]={kind:"value",constant:!0,value:s,schema:{}}}return Object.keys(t).length>0?t:void 0})(r.data,t);return a({name:o.name,content:{...l,expressions:p}})};
@@ -1 +1 @@
1
- import{Branded as e}from"@salsita-ai/common/utils";import{DiagnosticCode as t,diagnosticMessages as s}from"../../../../errors/index.js";import{Components as n,UserComponents as r}from"../../components/index.js";import{Expressions as o}from"../../expressions/index.js";import{Invariants as i}from"../../invariants/index.js";import{ConfigurationSchema as a,Defaults as m,ModelVersion as l,Presets as p}from"../../model/index.js";import{Relations as d}from"../../relations/index.js";import{ResolvedVersions as f}from"../resolved-versions.js";import{AdminPages as S}from"./admin-pages.js";import{AdminStates as v}from"./states.js";export const AdminSpec=(g,x)=>{let{rawModel:u,rawPresets:I,rawExpressions:N,rawInvariants:T,rawRelations:_,rawDefaults:c,migrationFiles:j,rawComponents:A,rawAdminPages:C,dataSpec:E,phxDefinitions:M,evalExpressionParser:h,label:L,requireMigrationFiles:y}=g;if(0===Object.keys(u).length)return void x.at(L).error(t.MISSING_MODEL,s.MISSING_MODEL(L));u.latest||x.at(L).error(t.MISSING_LATEST,s.MISSING_LATEST(L));let G=new Map;for(let[e,t]of Object.entries(u)){let s=l(e,t,M,x.at(L,e));s&&G.set(s.versionKey,s)}if(x.hasErrors)return;let O=f(G,j,x,{requireMigrationFiles:y});if(!O)return;let D=O.versionedModels.find(e=>e.isLatest)?.modelVersion;if(!D)return;let V=O.latestVersion,P=a(D,V),b=d(_,D,x),w=i({rawInvariants:T,rawExpressions:N,rawRelations:_,rawComponents:A},D,x),F=p(I,D,b,x),k=S(C,{latestModel:D,parsingContext:x.at(L,"$adminPages")},E);if(!k)return;let K=r(A,{allNames:D.allNames,resolvedShapes:D.resolvedShapes,parsingContext:x}),$=m(c,D,x.at(L,"defaults")),q=o({rawExpressions:N,inferredExpressions:[...b.expressions,...w.expressions,...K.expressions]},{latestModel:D,aliases:D.aliases,entityTypes:D.entityTypes,evalExpressionParser:h,parsingContext:x}),z=n({userComponents:K.components,generatedComponents:[...b.components,...k.components],invariantComponents:w.components},{aliases:D.aliases,parsingContext:x});if(void 0!==$&&void 0!==q&&void 0!==z)return e({latestModel:D,schemaVersion:V,resolvedVersions:O,components:z,configurationSchema:P,presets:F,expressions:q,invariants:w,defaults:$,states:v(((n,r,o)=>{if(0===r.length)return n;let i=1===n.navigationStates.length&&"Default"===n.navigationStates[0]?[]:n.navigationStates,a=i.filter(e=>r.includes(e));return a.length>0&&o.error(t.ADMIN_PAGES_NAV_STATE_CONFLICT,s.ADMIN_PAGES_NAV_STATE_CONFLICT(a)),e({...n,navigationStates:[...i,...r]})})(g.rawStates,k.navigationStates,x),x),adminPages:k})};
1
+ import{Branded as e}from"@salsita-ai/common/utils";import{DiagnosticCode as t,diagnosticMessages as s}from"../../../../errors/index.js";import{Components as n,UserComponents as r}from"../../components/index.js";import{Expressions as o}from"../../expressions/index.js";import{Invariants as i}from"../../invariants/index.js";import{ConfigurationSchema as a,Defaults as m,ModelVersion as p,Presets as l}from"../../model/index.js";import{Relations as d}from"../../relations/index.js";import{ResolvedVersions as f}from"../resolved-versions.js";import{AdminPages as S}from"./admin-pages.js";import{AdminStates as x}from"./states.js";export const AdminSpec=(g,v)=>{let{rawModel:u,rawPresets:I,rawExpressions:T,rawInvariants:_,rawRelations:c,rawDefaults:j,migrationFiles:A,rawComponents:C,rawAdminPages:E,dataSpec:M,phxDefinitions:N,evalExpressionParser:L,label:y,requireMigrationFiles:G}=g;if(0===Object.keys(u).length)return void v.at(y).error(t.MISSING_MODEL,s.MISSING_MODEL(y));u.latest||v.at(y).error(t.MISSING_LATEST,s.MISSING_LATEST(y));let O=new Map;for(let[e,t]of Object.entries(u)){let s=p(e,t,N,v.at(y,e));s&&O.set(s.versionKey,s)}if(v.hasErrors)return;let h=f(O,A,v,{requireMigrationFiles:G});if(!h)return;let D=h.versionedModels.find(e=>e.isLatest)?.modelVersion;if(!D)return;let V=h.latestVersion,P=a(D,V),b=d(c,D,N,v),w=i({rawInvariants:_,rawExpressions:T,rawRelations:c,rawComponents:C},D,N,v),F=l(I,D,b,v),R=S(E,{latestModel:D,parsingContext:v.at(y,"$adminPages")},M);if(!R)return;let k=r(C,{latestModel:D,phxDefinitions:N,parsingContext:v}),K=m(j,D,v.at(y,"defaults")),$=o({rawExpressions:T,inferredExpressions:[...b.expressions,...w.expressions,...k.expressions],expressionReads:k.expressionReads},{latestModel:D,aliases:D.aliases,entityTypes:D.entityTypes,evalExpressionParser:L,phxDefinitions:N,parsingContext:v}),q=n({userComponents:k.components,generatedComponents:[...b.components,...R.components],invariantComponents:w.components},{aliases:D.aliases,parsingContext:v});if(void 0!==K&&void 0!==$&&void 0!==q)return e({latestModel:D,schemaVersion:V,resolvedVersions:h,components:q,configurationSchema:P,presets:F,expressions:$,invariants:w,defaults:K,states:x(((n,r,o)=>{if(0===r.length)return n;let i=1===n.navigationStates.length&&"Default"===n.navigationStates[0]?[]:n.navigationStates,a=i.filter(e=>r.includes(e));return a.length>0&&o.error(t.ADMIN_PAGES_NAV_STATE_CONFLICT,s.ADMIN_PAGES_NAV_STATE_CONFLICT(a)),e({...n,navigationStates:[...i,...r]})})(g.rawStates,R.navigationStates,v),v),adminPages:R})};
@@ -1 +1 @@
1
- import{Branded as e}from"@salsita-ai/common/utils";import{DiagnosticCode as s,diagnosticMessages as t}from"../../../../errors/index.js";import{Components as o,UserComponents as r}from"../../components/index.js";import{Expressions as i}from"../../expressions/index.js";import{Invariants as n}from"../../invariants/index.js";import{ConfigurationSchema as a,DataSchemas as m,Defaults as p,ModelVersion as l,Presets as d}from"../../model/index.js";import{Relations as f}from"../../relations/index.js";import{Actions as x,AssistantServerSettings as S,AssistantSpec as v,Theme as c,Transformers as j,Ui as u}from"../../sections/index.js";import{ResolvedVersions as g}from"../resolved-versions.js";import{ConfiguratorStates as C}from"./states.js";export const ConfiguratorSpec=(I,M)=>{let{rawModel:h,rawPresets:y,rawExpressions:E,rawActions:N,rawInvariants:T,rawRelations:L,rawDefaults:G,dataSchemas:O,dataSpec:_,appMetadata:b,rawTheme:w,rawUi:A,rawTransformers:D,rawAssistant:V,migrationFiles:k,transformerFiles:K,rawComponents:q,phxDefinitions:z,evalExpressionParser:B,label:F}=I;if(0===Object.keys(h).length)return void M.at(F).error(s.MISSING_MODEL,t.MISSING_MODEL(F));h.latest||M.at(F).error(s.MISSING_LATEST,t.MISSING_LATEST(F));let H=new Map;for(let[e,s]of Object.entries(h)){let t=l(e,s,z,M.at(F,e));t&&H.set(t.versionKey,t)}if(M.hasErrors)return;let J=g(H,k,M);if(!J)return;let P=J.versionedModels.find(e=>e.isLatest)?.modelVersion;if(!P)return;let Q=J.latestVersion,R=a(P,Q),U=f(L,P,M),W=n({rawInvariants:T,rawExpressions:E,rawRelations:L,rawComponents:q},P,M),X=d(y,P,U,M),Y=r(q,{allNames:P.allNames,resolvedShapes:P.resolvedShapes,parsingContext:M}),Z=p(G,P,M.at(F,"defaults")),$=j(D,K,M),ee=i({rawExpressions:E,inferredExpressions:[...U.expressions,...W.expressions,...Y.expressions]},{latestModel:P,aliases:P.aliases,entityTypes:P.entityTypes,evalExpressionParser:B,parsingContext:M}),es=o({userComponents:Y.components,generatedComponents:U.components,invariantComponents:W.components},{aliases:P.aliases,parsingContext:M}),et=m({merged:O,dataSpec:_,appMetadata:b,phxDefinitions:z,parsingContext:M}),eo=C(I.rawStates,M.at("states")),er=x(N,{latestModel:P,phxDefinitions:z},M.at("actions"));if(void 0!==Z&&void 0!==ee&&void 0!==er&&void 0!==es&&void 0!==et)return e({latestModel:P,schemaVersion:Q,dataSchemas:et,resolvedVersions:J,components:es,configurationSchema:R,presets:X,expressions:ee,actions:er,invariants:W,defaults:Z,states:eo,theme:c(w),ui:u(A),transformers:$,assistant:v(V,{model:P,states:eo,phxDefinitions:z,expressions:ee,components:es,actions:er},M),assistantServerSettings:S(V)})};
1
+ import{Branded as e}from"@salsita-ai/common/utils";import{DiagnosticCode as s,diagnosticMessages as t}from"../../../../errors/index.js";import{Components as o,UserComponents as r}from"../../components/index.js";import{Expressions as i}from"../../expressions/index.js";import{Invariants as n}from"../../invariants/index.js";import{ConfigurationSchema as a,DataSchemas as m,Defaults as p,ModelVersion as d,Presets as l}from"../../model/index.js";import{Relations as f}from"../../relations/index.js";import{Actions as x,AssistantServerSettings as S,AssistantSpec as v,Theme as c,Transformers as j,Ui as u}from"../../sections/index.js";import{ResolvedVersions as g}from"../resolved-versions.js";import{ConfiguratorStates as C}from"./states.js";export const ConfiguratorSpec=(I,M)=>{let{rawModel:y,rawPresets:E,rawExpressions:T,rawActions:L,rawInvariants:h,rawRelations:G,rawDefaults:N,dataSchemas:O,dataSpec:_,appMetadata:b,rawTheme:w,rawUi:A,rawTransformers:D,rawAssistant:R,migrationFiles:V,transformerFiles:k,rawComponents:K,phxDefinitions:q,evalExpressionParser:z,label:B}=I;if(0===Object.keys(y).length)return void M.at(B).error(s.MISSING_MODEL,t.MISSING_MODEL(B));y.latest||M.at(B).error(s.MISSING_LATEST,t.MISSING_LATEST(B));let F=new Map;for(let[e,s]of Object.entries(y)){let t=d(e,s,q,M.at(B,e));t&&F.set(t.versionKey,t)}if(M.hasErrors)return;let H=g(F,V,M);if(!H)return;let J=H.versionedModels.find(e=>e.isLatest)?.modelVersion;if(!J)return;let P=H.latestVersion,Q=a(J,P),U=f(G,J,q,M),W=n({rawInvariants:h,rawExpressions:T,rawRelations:G,rawComponents:K},J,q,M),X=l(E,J,U,M),Y=r(K,{latestModel:J,phxDefinitions:q,parsingContext:M}),Z=p(N,J,M.at(B,"defaults")),$=j(D,k,M),ee=i({rawExpressions:T,inferredExpressions:[...U.expressions,...W.expressions,...Y.expressions],expressionReads:Y.expressionReads},{latestModel:J,aliases:J.aliases,entityTypes:J.entityTypes,evalExpressionParser:z,phxDefinitions:q,parsingContext:M}),es=o({userComponents:Y.components,generatedComponents:U.components,invariantComponents:W.components},{aliases:J.aliases,parsingContext:M}),et=m({merged:O,dataSpec:_,appMetadata:b,phxDefinitions:q,parsingContext:M}),eo=C(I.rawStates,M.at("states")),er=x(L,{latestModel:J,phxDefinitions:q},M.at("actions"));if(void 0!==Z&&void 0!==ee&&void 0!==er&&void 0!==es&&void 0!==et)return e({latestModel:J,schemaVersion:P,dataSchemas:et,resolvedVersions:H,components:es,configurationSchema:Q,presets:X,expressions:ee,actions:er,invariants:W,defaults:Z,states:eo,theme:c(w),ui:u(A),transformers:$,assistant:v(R,{model:J,states:eo,phxDefinitions:q,expressions:ee,components:es,actions:er},M),assistantServerSettings:S(R)})};
@@ -1,2 +1,3 @@
1
1
  export * from './schema-ref-resolver.js';
2
2
  export * from './validate-schema-refs.js';
3
+ export * from './value-type/index.js';
@@ -1 +1 @@
1
- export*from"./schema-ref-resolver.js";export*from"./validate-schema-refs.js";
1
+ export*from"./schema-ref-resolver.js";export*from"./validate-schema-refs.js";export*from"./value-type/index.js";
@@ -0,0 +1,3 @@
1
+ import type { ValueType } from './value-type.js';
2
+ /** Writes a type the way TypeScript would, for diagnostics. Deeply nested objects read `object`. */
3
+ export declare const formatValueType: (type: ValueType) => string;
@@ -0,0 +1 @@
1
+ let e=(n,r)=>0===n.length?"never":[...new Set(n.map(n=>((n,r)=>{switch(n.kind){case"unknown":return"unknown";case"string":if(n.named){let e=n.named.entityTypes;return void 0===e?n.named.name:`${n.named.name}<${[...e].map(e=>`'${e}'`).join(" | ")}>`}return void 0===n.literal?"string":`'${n.literal}'`;case"number":case"boolean":return void 0===n.literal?n.kind:String(n.literal);case"null":return"null";case"array":{let t=e(n.element,r+1);return n.element.length>1?`readonly (${t})[]`:`readonly ${t}[]`}case"object":{if(r>=2)return"object";if(n.index)return`Record<string, ${e(n.index,r+1)}>`;if(!n.properties)return"Record<string, unknown>";let t=[...n.properties].map(([n,t])=>`${n}${t.required?"":"?"}: ${e(t.type,r+1)}`);return`{ ${t.join("; ")} }`}}})(n,r)))].join(" | ");export const formatValueType=n=>e(n,0);
@@ -0,0 +1,5 @@
1
+ export * from './format-value-type.js';
2
+ export * from './intersect-value-types.js';
3
+ export * from './is-assignable-value-type.js';
4
+ export * from './value-type-at.js';
5
+ export * from './value-type.js';
@@ -0,0 +1 @@
1
+ export*from"./format-value-type.js";export*from"./intersect-value-types.js";export*from"./is-assignable-value-type.js";export*from"./value-type-at.js";export*from"./value-type.js";
@@ -0,0 +1,6 @@
1
+ import type { ValueType } from './value-type.js';
2
+ /**
3
+ * The values two types have in common, as a union: an empty union when no value is of both. A
4
+ * member the schemas do not describe (`unknown`) is assumed to share values with any other.
5
+ */
6
+ export declare const intersectValueTypes: (left: ValueType, right: ValueType) => ValueType;
@@ -0,0 +1 @@
1
+ let e=[{kind:"unknown"}],n="DomainEntityId",i=(e,n)=>void 0!==n.literal?n.literal===e.literal?[e]:[]:!n.named||n.named.acceptsLiteral?.(e.literal)?[e]:[],t=e=>"object"===e.kind&&void 0===e.index&&void 0!==e.properties&&e.properties.size>0&&[...e.properties.values()].every(e=>!e.required);export const intersectValueTypes=(r,l)=>r.flatMap(r=>l.flatMap(l=>((r,l)=>{if("unknown"===r.kind||"unknown"===l.kind)return e;if("string"===r.kind&&"string"===l.kind)return((t,r)=>{let{literal:l}=t;return void 0!==l?i({...t,literal:l},r):void 0!==r.literal?i({...r,literal:r.literal},t):t.named&&r.named?((i,t)=>{let r,l;if(i.name!==t.name)return i.name===n||t.name===n?[]:e;if(void 0===i.entityTypes||void 0===t.entityTypes)return[{kind:"string",named:void 0===i.entityTypes?t:i}];let d=(r=i.entityTypes,l=t.entityTypes,new Set([...r].filter(e=>l.has(e))));return 0===d.size?[]:[{kind:"string",named:{...i,entityTypes:d}}]})(t.named,r.named):[t.named?t:r]})(r,l);if("number"===r.kind&&"number"===l.kind||"boolean"===r.kind&&"boolean"===l.kind){let e,n;return e=r,n=l,void 0===e.literal?[n]:void 0===n.literal||n.literal===e.literal?[e]:[]}if("null"===r.kind&&"null"===l.kind)return[r];if("array"===r.kind&&"array"===l.kind)return[{kind:"array",element:intersectValueTypes(r.element,l.element)}];if("object"===r.kind&&"object"===l.kind){let e=new Map(r.properties??[]);for(let[n,i]of l.properties??[]){let t=e.get(n);if(!t){e.set(n,i);continue}let r=intersectValueTypes(t.type,i.type),l=t.required||i.required;if(0===r.length&&l)return[];e.set(n,{type:r,required:l})}return r.properties||l.properties?[{kind:"object",properties:e}]:[r.index?r:l]}return t(r)&&"null"!==l.kind?[l]:t(l)&&"null"!==r.kind?[r]:[]})(r,l)));
@@ -0,0 +1,8 @@
1
+ import type { ValueType } from './value-type.js';
2
+ /**
3
+ * Whether TypeScript accepts a value of the source type where the target type is expected: every
4
+ * member of the source union fits some member of the target union. A member the schemas do not
5
+ * describe (`unknown`) on either side fits, so the answer is `false` only when the types are known
6
+ * to disagree.
7
+ */
8
+ export declare const isAssignableValueType: (source: ValueType, target: ValueType) => boolean;
@@ -0,0 +1 @@
1
+ let e=(e,r)=>e.filter(e=>e.kind===r),r=(r,i)=>e(i,"boolean").some(e=>void 0===e.literal||e.literal===r),i=e=>"null"===e.kind?[e]:"boolean"===e.kind?void 0===e.literal?[{kind:"boolean",literal:!0},{kind:"boolean",literal:!1}]:[e]:("string"===e.kind||"number"===e.kind)&&void 0!==e.literal?[e]:void 0,t=(r,n)=>{if(e(n,"object").some(e=>{if(void 0!==e.index){var i;return i=e.index,r.properties||r.index?[...r.properties?.values()??[]].every(e=>isAssignableValueType(e.type,i))&&(void 0===r.index||isAssignableValueType(r.index,i)):i.some(e=>"unknown"===e.kind)}return void 0===e.properties||(0===e.properties.size?void 0!==r.properties&&0===r.properties.size&&void 0===r.index:((e,r,i)=>{let t=e.properties;if(!t)return[...r.values()].every(e=>!e.required);for(let[e,i]of r){let r=t.get(e);if(!r){if(i.required)return!1;continue}if(i.required&&!r.required||!isAssignableValueType(r.type,i.type))return!1}let n=!i&&r.size>0&&[...r.values()].every(e=>!e.required),l=[...t.keys()].some(e=>r.has(e));return!n||0===t.size||l})(r,e.properties,e.open??!1))}))return!0;let l=(e=>{for(let[r,t]of e.properties??[]){let n=t.type.map(i);if(!(0===n.length||n.some(e=>void 0===e))&&!(n.flat().length<2))return n.flatMap(e=>e??[]).map(i=>({...e,properties:new Map([...e.properties??[],[r,{...t,type:[i]}]])}))}})(r);return void 0!==l&&l.every(e=>t(e,n))};export const isAssignableValueType=(i,n)=>n.some(e=>"unknown"===e.kind)||i.every(i=>((i,n)=>{switch(i.kind){case"unknown":return!0;case"string":return e(n,"string").some(e=>{if(i.named){var r,t;let n,l;return e.named?(r=i.named,t=e.named,r.name===t.name&&(void 0===t.entityTypes||void 0!==r.entityTypes&&(n=r.entityTypes,l=t.entityTypes,[...n].every(e=>l.has(e))))):void 0===e.literal}return void 0!==i.literal?e.named?e.named.acceptsLiteral?.(i.literal)??!1:void 0===e.literal||e.literal===i.literal:void 0===e.literal&&void 0===e.named});case"number":return e(n,"number").some(e=>void 0===e.literal||e.literal===i.literal);case"boolean":return void 0===i.literal?r(!0,n)&&r(!1,n):r(i.literal,n);case"null":return e(n,"null").length>0;case"array":return e(n,"array").some(e=>isAssignableValueType(i.element,e.element));case"object":return t(i,n)}})(i,n));
@@ -0,0 +1,10 @@
1
+ import type { SchemaPathSegment } from '../../../../core/index.js';
2
+ import type { ValueType } from './value-type.js';
3
+ /**
4
+ * The type expected at a path inside a value of `type`: a number segment indexes an array, a string
5
+ * segment names an object property. Through a union, the path is followed into every member that
6
+ * has it, and the result is the union of what they expect. A value written there must fit one of
7
+ * them; which member the rest of the value selects is not considered, so the answer is never
8
+ * narrower than what TypeScript expects. A path that no member has yields `unknown`.
9
+ */
10
+ export declare const valueTypeAt: (type: ValueType, path: readonly SchemaPathSegment[]) => ValueType;
@@ -0,0 +1 @@
1
+ let e=[{kind:"unknown"}],n=(n,t)=>"unknown"===n.kind?e:"number"==typeof t?"array"===n.kind?n.element:[]:"object"!==n.kind?[]:n.index?n.index:n.properties?n.properties.get(t)?.type??[]:e;export const valueTypeAt=(t,r)=>{let o=t;for(let t of r){let r=o.flatMap(e=>n(e,t));if(0===r.length)return e;o=r}return o};