@salsita-ai/sdk 0.50.0-develop.b5468d6828 → 0.50.0-develop.b7caacb493

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 (963) hide show
  1. package/README.md +8 -4
  2. package/dist/admin/default-admin-elements.d.ts +9 -0
  3. package/dist/admin/default-admin-elements.js +1 -0
  4. package/dist/admin/default-elements/built-in-entity-element.d.ts +10 -0
  5. package/dist/admin/default-elements/built-in-entity-element.js +1 -0
  6. package/dist/admin/default-elements/built-in-layout-element.d.ts +10 -0
  7. package/dist/admin/default-elements/built-in-layout-element.js +1 -0
  8. package/dist/admin/default-elements/index.d.ts +2 -0
  9. package/dist/admin/default-elements/index.js +1 -0
  10. package/dist/admin/index.d.ts +1 -0
  11. package/dist/admin/index.js +1 -1
  12. package/dist/application-spec/caching/content-diff.js +1 -1
  13. package/dist/application-spec/core/application-file.d.ts +0 -2
  14. package/dist/application-spec/core/application-file.js +1 -1
  15. package/dist/application-spec/errors/diagnostic-codes.d.ts +14 -0
  16. package/dist/application-spec/errors/diagnostic-codes.js +1 -1
  17. package/dist/application-spec/errors/diagnostic-messages.d.ts +15 -1
  18. package/dist/application-spec/errors/diagnostic-messages.js +1 -1
  19. package/dist/application-spec/generate-application/code/common/code-imports.js +1 -1
  20. package/dist/application-spec/generate-application/code/common/env-reader.js +2 -2
  21. package/dist/application-spec/generate-application/code/common/index.d.ts +1 -0
  22. package/dist/application-spec/generate-application/code/common/index.js +1 -1
  23. package/dist/application-spec/generate-application/code/common/single-quoted-string.d.ts +6 -0
  24. package/dist/application-spec/generate-application/code/common/single-quoted-string.js +1 -0
  25. package/dist/application-spec/generate-application/code/domain-runtime-files.js +1 -1
  26. package/dist/application-spec/generate-application/code/project-scaffolding.d.ts +10 -14
  27. package/dist/application-spec/generate-application/code/project-scaffolding.js +2 -2
  28. package/dist/application-spec/generate-application/code/story-files.js +1 -1
  29. package/dist/application-spec/generate-application/code/templates/admin-config.js +3 -0
  30. package/dist/application-spec/generate-application/code/templates/application-types.js +6 -6
  31. package/dist/application-spec/generate-application/code/templates/common/doc-comment.d.ts +2 -0
  32. package/dist/application-spec/generate-application/code/templates/common/doc-comment.js +1 -0
  33. package/dist/application-spec/generate-application/code/templates/common/format-property-key.d.ts +7 -0
  34. package/dist/application-spec/generate-application/code/templates/common/format-property-key.js +1 -0
  35. package/dist/application-spec/generate-application/code/templates/common/schema-to-type-string.js +3 -3
  36. package/dist/application-spec/generate-application/code/templates/configurator-globals.d.ts +2 -1
  37. package/dist/application-spec/generate-application/code/templates/configurator-globals.js +19 -6
  38. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/domain-factory-types.d.ts +35 -0
  39. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/domain-factory-types.js +5 -0
  40. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/index.d.ts +1 -0
  41. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/index.js +1 -0
  42. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-component-optics.d.ts +1 -1
  43. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-component-optics.js +6 -6
  44. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-domain-block.js +59 -63
  45. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.d.ts +8 -0
  46. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.js +1 -1
  47. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-presets.js +1 -1
  48. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-resources.js +13 -13
  49. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-states.d.ts +1 -1
  50. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-states.js +2 -2
  51. package/dist/application-spec/generate-application/code/templates/domain-spec/index.d.ts +2 -1
  52. package/dist/application-spec/generate-application/code/templates/domain-spec/index.js +1 -1
  53. package/dist/application-spec/generate-application/code/templates/eslint-config.d.ts +5 -0
  54. package/dist/application-spec/generate-application/code/templates/eslint-config.js +4 -5
  55. package/dist/application-spec/generate-application/code/templates/gitignore.js +1 -3
  56. package/dist/application-spec/generate-application/code/templates/global-definition/generate-action-types.js +7 -7
  57. package/dist/application-spec/generate-application/code/templates/global-definition/generate-assistant-form-element-types.d.ts +12 -0
  58. package/dist/application-spec/generate-application/code/templates/global-definition/generate-assistant-form-element-types.js +7 -0
  59. package/dist/application-spec/generate-application/code/templates/global-definition/generate-phx-types.d.ts +43 -0
  60. package/dist/application-spec/generate-application/code/templates/global-definition/generate-phx-types.js +33 -0
  61. package/dist/application-spec/generate-application/code/templates/global-definition/index.d.ts +2 -0
  62. package/dist/application-spec/generate-application/code/templates/global-definition/index.js +1 -1
  63. package/dist/application-spec/generate-application/code/templates/globals.js +24 -43
  64. package/dist/application-spec/generate-application/code/templates/index.d.ts +2 -2
  65. package/dist/application-spec/generate-application/code/templates/index.js +1 -1
  66. package/dist/application-spec/generate-application/code/templates/lingui-rc.d.ts +5 -0
  67. package/dist/application-spec/generate-application/code/templates/lingui-rc.js +4 -4
  68. package/dist/application-spec/generate-application/code/templates/prettier-config.d.ts +5 -0
  69. package/dist/application-spec/generate-application/code/templates/prettier-config.js +4 -5
  70. package/dist/application-spec/generate-application/code/templates/skills/phoenix-cli-skill.js +1 -1
  71. package/dist/application-spec/generate-application/code/templates/skills/phoenix-create-configurator-skill.js +1 -1
  72. package/dist/application-spec/generate-application/code/templates/skills/phoenix-feedback-skill.js +5 -5
  73. package/dist/application-spec/generate-application/code/templates/skills/phoenix-review-skill.js +3 -3
  74. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill.js +1 -1
  75. package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.js +2 -2
  76. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.d.ts +26 -8
  77. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.js +2 -2
  78. package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.d.ts +58 -0
  79. package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.js +1 -0
  80. package/dist/application-spec/generate-application/code/templates/spec-code/index.d.ts +2 -0
  81. package/dist/application-spec/generate-application/code/templates/spec-code/index.js +1 -0
  82. package/dist/application-spec/generate-application/code/templates/spec-code/spec-code.d.ts +18 -0
  83. package/dist/application-spec/generate-application/code/templates/spec-code/spec-code.js +41 -0
  84. package/dist/application-spec/generate-application/code/templates/spec-messages/index.d.ts +1 -0
  85. package/dist/application-spec/generate-application/code/templates/spec-messages/index.js +1 -0
  86. package/dist/application-spec/generate-application/code/templates/spec-messages/spec-messages.d.ts +20 -0
  87. package/dist/application-spec/generate-application/code/templates/spec-messages/spec-messages.js +6 -0
  88. package/dist/application-spec/generate-application/code/templates/story/phx-module.d.ts +8 -2
  89. package/dist/application-spec/generate-application/code/templates/story/phx-module.js +15 -3
  90. package/dist/application-spec/generate-application/code/templates/story/wrapper.d.ts +3 -0
  91. package/dist/application-spec/generate-application/code/templates/story/wrapper.js +2 -1
  92. package/dist/application-spec/generate-application/implementations/phx-application-types.d.ts +25 -0
  93. package/dist/application-spec/generate-application/implementations/phx-application-types.js +1 -0
  94. package/dist/application-spec/generate-application/implementations/phx-domain.d.ts +36 -0
  95. package/dist/application-spec/generate-application/implementations/phx-domain.js +1 -0
  96. package/dist/application-spec/generate-application/implementations/phx-model.d.ts +24 -0
  97. package/dist/application-spec/generate-application/implementations/phx-model.js +1 -0
  98. package/dist/application-spec/generate-application/implementations/phx.d.ts +22 -0
  99. package/dist/application-spec/generate-application/implementations/phx.js +1 -0
  100. package/dist/application-spec/generate-application/index.d.ts +1 -0
  101. package/dist/application-spec/generate-application/index.js +1 -1
  102. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.d.ts +6 -4
  103. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.js +1 -1
  104. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.d.ts +7 -5
  105. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.js +1 -1
  106. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-spec-runtime.d.ts +16 -0
  107. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-spec-runtime.js +1 -0
  108. package/dist/application-spec/generate-application/runtime/admin-runtime/states-runtime.d.ts +2 -2
  109. package/dist/application-spec/generate-application/runtime/application-runtime.d.ts +24 -9
  110. package/dist/application-spec/generate-application/runtime/application-runtime.js +1 -1
  111. package/dist/application-spec/generate-application/runtime/application-spec-slice.d.ts +70 -0
  112. package/dist/application-spec/generate-application/runtime/application-spec-slice.js +1 -0
  113. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.d.ts +7 -5
  114. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.js +1 -1
  115. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.d.ts +7 -6
  116. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.js +1 -1
  117. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-spec-runtime.d.ts +16 -0
  118. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-spec-runtime.js +1 -0
  119. package/dist/application-spec/generate-application/runtime/configurator-runtime/states-runtime.d.ts +2 -2
  120. package/dist/application-spec/generate-application/runtime/index.d.ts +8 -0
  121. package/dist/application-spec/generate-application/runtime/index.js +1 -0
  122. package/dist/application-spec/generate-application/runtime/migrations/migration-runtime.d.ts +2 -2
  123. package/dist/application-spec/generate-application/runtime/sections/assistant-runtime.d.ts +2 -2
  124. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.d.ts +2 -1
  125. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.js +1 -1
  126. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.d.ts +2 -1
  127. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.js +1 -1
  128. package/dist/application-spec/generate-application/runtime/sections/component-optic.d.ts +3 -0
  129. package/dist/application-spec/generate-application/runtime/sections/component-optic.js +1 -1
  130. package/dist/application-spec/generate-application/runtime/sections/data-runtime.d.ts +4 -4
  131. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.d.ts +15 -6
  132. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.js +1 -1
  133. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.d.ts +9 -5
  134. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.js +1 -1
  135. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.d.ts +3 -1
  136. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.js +1 -1
  137. package/dist/application-spec/generate-application/runtime/sections/theme-runtime.d.ts +2 -2
  138. package/dist/application-spec/generate-application/runtime/sections/transformers-runtime.d.ts +3 -3
  139. package/dist/application-spec/generate-application/runtime/spec-code/index.d.ts +2 -0
  140. package/dist/application-spec/generate-application/runtime/spec-code/index.js +1 -0
  141. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.d.ts +18 -0
  142. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.js +1 -0
  143. package/dist/application-spec/generate-application/runtime/spec-code/spec-code-module.d.ts +17 -0
  144. package/dist/application-spec/generate-application/runtime/spec-code/spec-code-module.js +1 -0
  145. package/dist/application-spec/generate-application/runtime/spec-runtime.d.ts +21 -0
  146. package/dist/application-spec/generate-application/runtime/spec-runtime.js +1 -0
  147. package/dist/application-spec/generate-application/runtime-spec/decode-runtime-spec.d.ts +9 -0
  148. package/dist/application-spec/generate-application/runtime-spec/decode-runtime-spec.js +1 -0
  149. package/dist/application-spec/generate-application/runtime-spec/encode-runtime-spec.d.ts +8 -0
  150. package/dist/application-spec/generate-application/runtime-spec/encode-runtime-spec.js +1 -0
  151. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.d.ts +28 -0
  152. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.js +1 -0
  153. package/dist/application-spec/generate-application/runtime-spec/index.d.ts +5 -0
  154. package/dist/application-spec/generate-application/runtime-spec/index.js +1 -0
  155. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.d.ts +103 -0
  156. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.js +1 -0
  157. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.d.ts +40 -0
  158. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.js +1 -0
  159. package/dist/application-spec/parse-application-files/categorize/categorize-files.d.ts +18 -0
  160. package/dist/application-spec/parse-application-files/categorize/categorize-files.js +1 -1
  161. package/dist/application-spec/parse-application-files/categorize/earlier-generated-editor-configs.d.ts +16 -0
  162. package/dist/application-spec/parse-application-files/categorize/earlier-generated-editor-configs.js +9 -0
  163. package/dist/application-spec/parse-application-files/raw-spec/parse-yaml-spec-file.js +1 -1
  164. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.d.ts +33 -3
  165. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.js +1 -1
  166. package/dist/application-spec/parse-application-files/spec/application/admin-spec/admin-spec.js +1 -1
  167. package/dist/application-spec/parse-application-files/spec/application/configurator-spec/configurator-spec.js +1 -1
  168. package/dist/application-spec/parse-application-files/spec/common/index.d.ts +1 -0
  169. package/dist/application-spec/parse-application-files/spec/common/index.js +1 -1
  170. package/dist/application-spec/parse-application-files/spec/common/value-type/format-value-type.d.ts +3 -0
  171. package/dist/application-spec/parse-application-files/spec/common/value-type/format-value-type.js +1 -0
  172. package/dist/application-spec/parse-application-files/spec/common/value-type/index.d.ts +5 -0
  173. package/dist/application-spec/parse-application-files/spec/common/value-type/index.js +1 -0
  174. package/dist/application-spec/parse-application-files/spec/common/value-type/intersect-value-types.d.ts +6 -0
  175. package/dist/application-spec/parse-application-files/spec/common/value-type/intersect-value-types.js +1 -0
  176. package/dist/application-spec/parse-application-files/spec/common/value-type/is-assignable-value-type.d.ts +8 -0
  177. package/dist/application-spec/parse-application-files/spec/common/value-type/is-assignable-value-type.js +1 -0
  178. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type-at.d.ts +10 -0
  179. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type-at.js +1 -0
  180. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type.d.ts +98 -0
  181. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type.js +1 -0
  182. package/dist/application-spec/parse-application-files/spec/components/bindings/component-path.d.ts +13 -0
  183. package/dist/application-spec/parse-application-files/spec/components/bindings/component-path.js +1 -0
  184. package/dist/application-spec/parse-application-files/spec/components/bindings/index.d.ts +2 -0
  185. package/dist/application-spec/parse-application-files/spec/components/bindings/index.js +1 -1
  186. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding-type.d.ts +24 -0
  187. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding-type.js +1 -0
  188. package/dist/application-spec/parse-application-files/spec/components/component-state-type.d.ts +8 -0
  189. package/dist/application-spec/parse-application-files/spec/components/component-state-type.js +1 -0
  190. package/dist/application-spec/parse-application-files/spec/components/filter-criterion-types.d.ts +13 -0
  191. package/dist/application-spec/parse-application-files/spec/components/filter-criterion-types.js +1 -0
  192. package/dist/application-spec/parse-application-files/spec/components/static-entity-id.d.ts +14 -0
  193. package/dist/application-spec/parse-application-files/spec/components/static-entity-id.js +1 -0
  194. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.d.ts +6 -0
  195. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.js +1 -1
  196. package/dist/application-spec/parse-application-files/spec/components/user-components.d.ts +7 -4
  197. package/dist/application-spec/parse-application-files/spec/components/user-components.js +1 -1
  198. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.d.ts +24 -0
  199. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.js +1 -0
  200. package/dist/application-spec/parse-application-files/spec/expressions/expression-read.d.ts +13 -0
  201. package/dist/application-spec/parse-application-files/spec/expressions/expression-read.js +1 -0
  202. package/dist/application-spec/parse-application-files/spec/expressions/expression-value-type.d.ts +9 -0
  203. package/dist/application-spec/parse-application-files/spec/expressions/expression-value-type.js +1 -0
  204. package/dist/application-spec/parse-application-files/spec/expressions/expressions.d.ts +6 -2
  205. package/dist/application-spec/parse-application-files/spec/expressions/expressions.js +1 -1
  206. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.d.ts +3 -1
  207. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.js +1 -1
  208. package/dist/application-spec/parse-application-files/spec/invariants/invariants.d.ts +2 -2
  209. package/dist/application-spec/parse-application-files/spec/invariants/invariants.js +1 -1
  210. package/dist/application-spec/parse-application-files/spec/model/index.d.ts +1 -0
  211. package/dist/application-spec/parse-application-files/spec/model/index.js +1 -1
  212. package/dist/application-spec/parse-application-files/spec/model/model-type-resolution.d.ts +10 -0
  213. package/dist/application-spec/parse-application-files/spec/model/model-type-resolution.js +1 -0
  214. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-form-elements.d.ts +9 -0
  215. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-form-elements.js +1 -0
  216. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.d.ts +4 -1
  217. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.js +1 -1
  218. package/dist/client/phoenix-api.d.ts +367 -0
  219. package/dist/configurator/ConfiguratorApp.js +1 -1
  220. package/dist/configurator/app-loader-content/DefaultAppLoaderContent.d.ts +2 -0
  221. package/dist/configurator/app-loader-content/DefaultAppLoaderContent.js +5 -0
  222. package/dist/configurator/app-loader-content/index.d.ts +1 -0
  223. package/dist/configurator/app-loader-content/index.js +1 -0
  224. package/dist/configurator/application-runtime/extensions/selectors.js +1 -1
  225. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.d.ts +11 -4
  226. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.js +1 -1
  227. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.d.ts +33 -7
  228. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.js +1 -1
  229. package/dist/configurator/application-runtime/extensions/systems/camera-control-system/camera-control-system.d.ts +1 -1
  230. package/dist/configurator/application-runtime/extensions/systems/canvas-system.d.ts +8 -0
  231. package/dist/configurator/application-runtime/extensions/systems/canvas-system.js +1 -1
  232. package/dist/configurator/application-runtime/extensions/systems/export-system/export-busy-error.d.ts +8 -0
  233. package/dist/configurator/application-runtime/extensions/systems/export-system/export-busy-error.js +1 -0
  234. package/dist/configurator/application-runtime/extensions/systems/export-system/export-system.d.ts +23 -1
  235. package/dist/configurator/application-runtime/extensions/systems/export-system/export-system.js +1 -1
  236. package/dist/configurator/application-runtime/extensions/systems/graphql-system/close-unclosed-braces.d.ts +12 -0
  237. package/dist/configurator/application-runtime/extensions/systems/graphql-system/close-unclosed-braces.js +1 -0
  238. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.d.ts +14 -1
  239. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.js +1 -1
  240. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.d.ts +46 -5
  241. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.js +1 -1
  242. package/dist/configurator/application-runtime/extensions/systems/image-rendering-system/image-rendering-system.d.ts +14 -5
  243. package/dist/configurator/application-runtime/extensions/systems/image-rendering-system/image-rendering-system.js +1 -1
  244. package/dist/configurator/application-runtime/extensions/systems/index.d.ts +1 -1
  245. package/dist/configurator/common/configurator-interface.d.ts +121 -6
  246. package/dist/configurator/common/configurator-interface.js +1 -1
  247. package/dist/configurator/common/index.d.ts +2 -2
  248. package/dist/configurator/common/index.js +1 -1
  249. package/dist/configurator/configuration-not-found-page/BuiltInConfigurationNotFoundPage.d.ts +5 -0
  250. package/dist/configurator/configuration-not-found-page/BuiltInConfigurationNotFoundPage.js +1 -0
  251. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.d.ts +6 -0
  252. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.js +1 -0
  253. package/dist/configurator/configuration-not-found-page/index.d.ts +2 -0
  254. package/dist/configurator/configuration-not-found-page/index.js +1 -0
  255. package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.d.ts +12 -0
  256. package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.js +1 -0
  257. package/dist/configurator/configurator-context/PresetSelectionProvider.js +1 -1
  258. package/dist/configurator/configurator-context/PreviewContextProvider.js +1 -1
  259. package/dist/configurator/configurator-context/ViewportStateSync.d.ts +2 -2
  260. package/dist/configurator/configurator-context/ViewportStateSync.js +1 -1
  261. package/dist/configurator/configurator-context/configurator-hooks/layout-hooks.d.ts +10 -0
  262. package/dist/configurator/configurator-context/configurator-routing/ConfiguratorRoutingProvider.js +1 -1
  263. package/dist/configurator/configurator-error-page/BuiltInConfiguratorErrorPage.d.ts +6 -0
  264. package/dist/configurator/configurator-error-page/BuiltInConfiguratorErrorPage.js +1 -0
  265. package/dist/configurator/configurator-error-page/ConfiguratorErrorPageElement.d.ts +7 -0
  266. package/dist/configurator/configurator-error-page/ConfiguratorErrorPageElement.js +1 -0
  267. package/dist/configurator/configurator-error-page/index.d.ts +2 -0
  268. package/dist/configurator/configurator-error-page/index.js +1 -0
  269. package/dist/configurator/index.d.ts +10 -0
  270. package/dist/configurator/index.js +1 -1
  271. package/dist/configurator/pages/ConfiguratorErrorPage.d.ts +0 -1
  272. package/dist/configurator/pages/ConfiguratorErrorPage.js +1 -1
  273. package/dist/configurator/pages/ConfiguratorNotFoundPage.js +1 -1
  274. package/dist/configurator/pages/DefaultConfiguratorLayout.d.ts +3 -2
  275. package/dist/configurator/pages/DefaultNotAuthenticatedPage.d.ts +8 -0
  276. package/dist/configurator/pages/DefaultNotAuthenticatedPage.js +1 -0
  277. package/dist/configurator/pages/DefaultPresetUi.d.ts +7 -0
  278. package/dist/configurator/pages/DefaultPresetUi.js +1 -0
  279. package/dist/configurator/pages/LoadedConfiguratorDetailPage.js +1 -1
  280. package/dist/configurator/pages/NewConfiguratorPage.js +1 -1
  281. package/dist/configurator/pages/PresetCreationErrorPage.d.ts +1 -1
  282. package/dist/configurator/pages/PresetCreationErrorPage.js +1 -1
  283. package/dist/configurator/pages/RootPage.js +1 -1
  284. package/dist/configurator/pages/default-configurator-elements.d.ts +7 -1
  285. package/dist/configurator/pages/default-configurator-elements.js +1 -1
  286. package/dist/configurator/pages/default-elements/built-in-entity-element.d.ts +10 -0
  287. package/dist/configurator/pages/default-elements/built-in-entity-element.js +1 -0
  288. package/dist/configurator/pages/default-elements/built-in-layout-element.d.ts +10 -0
  289. package/dist/configurator/pages/default-elements/built-in-layout-element.js +1 -0
  290. package/dist/configurator/pages/default-elements/domain-control-elements.d.ts +6 -0
  291. package/dist/configurator/pages/default-elements/domain-control-elements.js +1 -0
  292. package/dist/configurator/pages/default-elements/index.d.ts +5 -0
  293. package/dist/configurator/pages/default-elements/index.js +1 -0
  294. package/dist/configurator/pages/default-elements/recipe-panel-elements.d.ts +3 -0
  295. package/dist/configurator/pages/default-elements/recipe-panel-elements.js +1 -0
  296. package/dist/configurator/pages/default-elements/scene-controls/BuiltInAddEntityFab.d.ts +3 -0
  297. package/dist/configurator/pages/default-elements/scene-controls/BuiltInAddEntityFab.js +1 -0
  298. package/dist/configurator/pages/default-elements/scene-controls/BuiltInDeleteEntityFab.d.ts +3 -0
  299. package/dist/configurator/pages/default-elements/scene-controls/BuiltInDeleteEntityFab.js +1 -0
  300. package/dist/configurator/pages/default-elements/scene-controls/BuiltInNavigationHotspot.d.ts +3 -0
  301. package/dist/configurator/pages/default-elements/scene-controls/BuiltInNavigationHotspot.js +1 -0
  302. package/dist/configurator/pages/default-elements/scene-controls/BuiltInSelectionHotspot.d.ts +3 -0
  303. package/dist/configurator/pages/default-elements/scene-controls/BuiltInSelectionHotspot.js +1 -0
  304. package/dist/configurator/pages/default-elements/scene-controls/BuiltInToolMenuFab.d.ts +3 -0
  305. package/dist/configurator/pages/default-elements/scene-controls/BuiltInToolMenuFab.js +1 -0
  306. package/dist/configurator/pages/default-elements/scene-controls/index.d.ts +6 -0
  307. package/dist/configurator/pages/default-elements/scene-controls/index.js +1 -0
  308. package/dist/configurator/pages/default-elements/scene-controls/scene-control-elements.d.ts +6 -0
  309. package/dist/configurator/pages/default-elements/scene-controls/scene-control-elements.js +1 -0
  310. package/dist/configurator/pages/default-elements/sidebar-footer-elements.d.ts +7 -0
  311. package/dist/configurator/pages/default-elements/sidebar-footer-elements.js +1 -0
  312. package/dist/configurator/pages/default-elements/toolbar-elements.d.ts +7 -0
  313. package/dist/configurator/pages/default-elements/toolbar-elements.js +1 -0
  314. package/dist/configurator/pages/error-boundaries/GeneralErrorBoundary.js +1 -1
  315. package/dist/configurator/pages/error-boundaries/LoadingErrorBoundary.js +1 -1
  316. package/dist/configurator/preset-screen-elements/PresetDeviceNotSupportedElement.d.ts +4 -0
  317. package/dist/configurator/preset-screen-elements/PresetDeviceNotSupportedElement.js +1 -0
  318. package/dist/configurator/preset-screen-elements/PresetPageActionElement.d.ts +4 -0
  319. package/dist/configurator/preset-screen-elements/PresetPageActionElement.js +1 -0
  320. package/dist/configurator/preset-screen-elements/index.d.ts +2 -0
  321. package/dist/configurator/preset-screen-elements/index.js +1 -0
  322. package/dist/configurator/scene/index.d.ts +1 -0
  323. package/dist/configurator/scene/index.js +1 -1
  324. package/dist/configurator/scene/scene-controls/DeleteEntityFab.js +1 -1
  325. package/dist/configurator/scene/scene-controls/SelectionHotspot.js +1 -1
  326. package/dist/configurator/scene/scene-controls/ToolFab.d.ts +4 -0
  327. package/dist/configurator/scene/scene-controls/ToolFab.js +1 -1
  328. package/dist/configurator/scene/scene-controls/use-scene-control-tooltip.d.ts +2 -1
  329. package/dist/configurator/scene/scene-entity/scene-controls/SceneEntityHtmlHotspots.js +1 -1
  330. package/dist/configurator/toolbar-actions/index.d.ts +3 -0
  331. package/dist/configurator/toolbar-actions/index.js +1 -0
  332. package/dist/configurator/toolbar-actions/use-assistant-panel.d.ts +18 -0
  333. package/dist/configurator/toolbar-actions/use-assistant-panel.js +1 -0
  334. package/dist/configurator/toolbar-actions/use-measurements.d.ts +35 -0
  335. package/dist/configurator/toolbar-actions/use-measurements.js +1 -0
  336. package/dist/configurator/toolbar-actions/use-toolbar-actions.d.ts +100 -0
  337. package/dist/configurator/toolbar-actions/use-toolbar-actions.js +1 -0
  338. package/dist/configurator/toolbar-actions/use-toolbar-help.d.ts +7 -0
  339. package/dist/configurator/toolbar-actions/use-toolbar-help.js +1 -0
  340. package/dist/configurator/ui/assistant/AssistantChips.d.ts +3 -2
  341. package/dist/configurator/ui/assistant/AssistantChips.js +1 -1
  342. package/dist/configurator/ui/assistant/AssistantMarkdown.d.ts +7 -2
  343. package/dist/configurator/ui/assistant/AssistantMarkdown.js +1 -1
  344. package/dist/configurator/ui/assistant/AssistantPanel.js +1 -1
  345. package/dist/configurator/ui/assistant/AssistantThread.js +1 -1
  346. package/dist/configurator/ui/assistant/alert/AssistantAlert.d.ts +8 -0
  347. package/dist/configurator/ui/assistant/alert/AssistantAlert.js +1 -0
  348. package/dist/configurator/ui/assistant/alert/index.d.ts +2 -0
  349. package/dist/configurator/ui/assistant/alert/index.js +1 -0
  350. package/dist/configurator/ui/assistant/alert/remark-alerts.d.ts +10 -0
  351. package/dist/configurator/ui/assistant/alert/remark-alerts.js +1 -0
  352. package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.d.ts +1 -1
  353. package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.js +1 -1
  354. package/dist/configurator/ui/assistant/entity-link/entity-link-state.d.ts +1 -1
  355. package/dist/configurator/ui/assistant/entity-link/index.d.ts +0 -1
  356. package/dist/configurator/ui/assistant/entity-link/index.js +1 -1
  357. package/dist/configurator/ui/assistant/form/AssistantForm.d.ts +19 -0
  358. package/dist/configurator/ui/assistant/form/AssistantForm.js +1 -0
  359. package/dist/configurator/ui/assistant/form/compose-answer.d.ts +11 -0
  360. package/dist/configurator/ui/assistant/form/compose-answer.js +1 -0
  361. package/dist/configurator/ui/assistant/form/describe-build-errors.d.ts +6 -0
  362. package/dist/configurator/ui/assistant/form/describe-build-errors.js +1 -0
  363. package/dist/configurator/ui/assistant/form/form-model.d.ts +37 -0
  364. package/dist/configurator/ui/assistant/form/form-model.js +1 -0
  365. package/dist/configurator/ui/assistant/form/form-state.d.ts +4 -0
  366. package/dist/configurator/ui/assistant/form/form-state.js +1 -0
  367. package/dist/configurator/ui/assistant/form/index.d.ts +4 -0
  368. package/dist/configurator/ui/assistant/form/index.js +1 -0
  369. package/dist/configurator/ui/assistant/form/parse-form-block.d.ts +10 -0
  370. package/dist/configurator/ui/assistant/form/parse-form-block.js +1 -0
  371. package/dist/configurator/ui/assistant/form/read-form-attributes.d.ts +13 -0
  372. package/dist/configurator/ui/assistant/form/read-form-attributes.js +1 -0
  373. package/dist/configurator/ui/assistant/form/registry/built-in-form-elements.d.ts +3 -0
  374. package/dist/configurator/ui/assistant/form/registry/built-in-form-elements.js +1 -0
  375. package/dist/configurator/ui/assistant/form/registry/create-assistant-form-element.d.ts +31 -0
  376. package/dist/configurator/ui/assistant/form/registry/create-assistant-form-element.js +1 -0
  377. package/dist/configurator/ui/assistant/form/registry/form-element-definition.d.ts +16 -0
  378. package/dist/configurator/ui/assistant/form/registry/form-element-definition.js +1 -0
  379. package/dist/configurator/ui/assistant/form/registry/form-registry.d.ts +31 -0
  380. package/dist/configurator/ui/assistant/form/registry/form-registry.js +1 -0
  381. package/dist/configurator/ui/assistant/form/registry/index.d.ts +6 -0
  382. package/dist/configurator/ui/assistant/form/registry/index.js +1 -0
  383. package/dist/configurator/ui/assistant/form/registry/use-form-registry.d.ts +8 -0
  384. package/dist/configurator/ui/assistant/form/registry/use-form-registry.js +1 -0
  385. package/dist/configurator/ui/assistant/form-elements/FormCard.d.ts +9 -0
  386. package/dist/configurator/ui/assistant/form-elements/FormCard.js +1 -0
  387. package/dist/configurator/ui/assistant/form-elements/FormConfirm.d.ts +9 -0
  388. package/dist/configurator/ui/assistant/form-elements/FormConfirm.js +1 -0
  389. package/dist/configurator/ui/assistant/form-elements/FormGroup.d.ts +6 -0
  390. package/dist/configurator/ui/assistant/form-elements/FormGroup.js +1 -0
  391. package/dist/configurator/ui/assistant/form-elements/FormNumber.d.ts +9 -0
  392. package/dist/configurator/ui/assistant/form-elements/FormNumber.js +1 -0
  393. package/dist/configurator/ui/assistant/form-elements/FormOptions.d.ts +6 -0
  394. package/dist/configurator/ui/assistant/form-elements/FormOptions.js +1 -0
  395. package/dist/configurator/ui/assistant/form-elements/FormReply.d.ts +6 -0
  396. package/dist/configurator/ui/assistant/form-elements/FormReply.js +1 -0
  397. package/dist/configurator/ui/assistant/form-elements/FormSwatch.d.ts +10 -0
  398. package/dist/configurator/ui/assistant/form-elements/FormSwatch.js +1 -0
  399. package/dist/configurator/ui/assistant/form-elements/FormText.d.ts +6 -0
  400. package/dist/configurator/ui/assistant/form-elements/FormText.js +1 -0
  401. package/dist/configurator/ui/assistant/form-elements/clamp-form-number.d.ts +10 -0
  402. package/dist/configurator/ui/assistant/form-elements/clamp-form-number.js +1 -0
  403. package/dist/configurator/ui/assistant/form-elements/form-element-props.d.ts +38 -0
  404. package/dist/configurator/ui/assistant/form-elements/form-element-props.js +1 -0
  405. package/dist/configurator/ui/assistant/form-elements/index.d.ts +9 -0
  406. package/dist/configurator/ui/assistant/form-elements/index.js +1 -0
  407. package/dist/configurator/ui/assistant/index.d.ts +3 -0
  408. package/dist/configurator/ui/assistant/index.js +1 -1
  409. package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.d.ts +16 -0
  410. package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.js +1 -0
  411. package/dist/configurator/ui/assistant/reference-link/assistant-link-target.d.ts +34 -0
  412. package/dist/configurator/ui/assistant/reference-link/assistant-link-target.js +1 -0
  413. package/dist/configurator/ui/assistant/reference-link/assistant-reference-details.d.ts +25 -0
  414. package/dist/configurator/ui/assistant/reference-link/assistant-reference-details.js +1 -0
  415. package/dist/configurator/ui/assistant/reference-link/index.d.ts +3 -0
  416. package/dist/configurator/ui/assistant/reference-link/index.js +1 -0
  417. package/dist/configurator/ui/assistant/reference-link/reference-styles.d.ts +12 -0
  418. package/dist/configurator/ui/assistant/reference-link/reference-styles.js +1 -0
  419. package/dist/configurator/ui/assistant/reference-link/use-assistant-reference-details.d.ts +8 -0
  420. package/dist/configurator/ui/assistant/reference-link/use-assistant-reference-details.js +1 -0
  421. package/dist/configurator/ui/assistant/resource-image/AssistantImage.d.ts +9 -0
  422. package/dist/configurator/ui/assistant/resource-image/AssistantImage.js +1 -0
  423. package/dist/configurator/ui/assistant/resource-image/index.d.ts +3 -0
  424. package/dist/configurator/ui/assistant/resource-image/index.js +1 -0
  425. package/dist/configurator/ui/assistant/resource-image/resource-path.d.ts +2 -0
  426. package/dist/configurator/ui/assistant/resource-image/resource-path.js +1 -0
  427. package/dist/configurator/ui/assistant/resource-image/use-resource-image-url.d.ts +5 -0
  428. package/dist/configurator/ui/assistant/resource-image/use-resource-image-url.js +1 -0
  429. package/dist/configurator/ui/assistant/screenshots/ScreenshotThumbnails.d.ts +9 -0
  430. package/dist/configurator/ui/assistant/screenshots/ScreenshotThumbnails.js +1 -0
  431. package/dist/configurator/ui/assistant/screenshots/index.d.ts +2 -0
  432. package/dist/configurator/ui/assistant/screenshots/index.js +1 -0
  433. package/dist/configurator/ui/assistant/screenshots/tool-screenshots.d.ts +14 -0
  434. package/dist/configurator/ui/assistant/screenshots/tool-screenshots.js +1 -0
  435. package/dist/configurator/ui/assistant/streamed-markdown.d.ts +4 -2
  436. package/dist/configurator/ui/assistant/streamed-markdown.js +2 -2
  437. package/dist/configurator/ui/assistant/thread-items.d.ts +8 -1
  438. package/dist/configurator/ui/assistant/thread-items.js +1 -1
  439. package/dist/configurator/ui/assistant/tool-chip.js +1 -1
  440. package/dist/configurator/ui/assistant/use-follow-stream.js +1 -1
  441. package/dist/configurator/ui/configurator-layout/slots/canvas/LayoutCanvas.js +1 -1
  442. package/dist/configurator/ui/configurator-layout/slots/canvas/SharedCanvas.js +1 -1
  443. package/dist/configurator/ui/configurator-layout/slots/mobile-tabs/use-mobile-tabs.d.ts +1 -1
  444. package/dist/configurator/ui/configurator-layout/slots/mobile-tabs/use-mobile-tabs.js +1 -1
  445. package/dist/configurator/ui/configurator-layout/slots/services/InvariantViolations.js +1 -1
  446. package/dist/configurator/ui/configurator-layout/slots/services/Services.js +1 -1
  447. package/dist/configurator/ui/configurator-layout/slots/sidebar-tabs/use-sidebar-tabs.d.ts +1 -1
  448. package/dist/configurator/ui/configurator-layout/slots/sidebar-tabs/use-sidebar-tabs.js +1 -1
  449. package/dist/configurator/ui/configurator-layout/universal/ExportingOverlay.d.ts +5 -0
  450. package/dist/configurator/ui/configurator-layout/universal/ExportingOverlay.js +1 -0
  451. package/dist/configurator/ui/configurator-layout/universal/Layout.js +1 -1
  452. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.d.ts +1 -1
  453. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.js +1 -1
  454. package/dist/configurator/ui/configurator-layout/universal/use-scene-safe-area.d.ts +1 -1
  455. package/dist/configurator/ui/index.d.ts +1 -0
  456. package/dist/configurator/ui/index.js +1 -1
  457. package/dist/configurator/ui/legacy/layout/common/CommonFinalizeButton.js +1 -1
  458. package/dist/configurator/ui/legacy/layout/common/CommonSummaryButton.js +1 -1
  459. package/dist/configurator/ui/legacy/layout/common/CommonTopNavigation.js +1 -1
  460. package/dist/configurator/ui/legacy/layout/common/ReactiveInterfaceLayout.js +1 -1
  461. package/dist/configurator/ui/legacy/layout/common/ResponsiveFinalizeButton.js +1 -1
  462. package/dist/configurator/ui/legacy/layout/common/SummaryReadLayout.js +1 -1
  463. package/dist/configurator/ui/legacy/layout/simple/SimpleOwnerLayout.js +1 -1
  464. package/dist/configurator/ui/legacy/layout/simple/SimpleTopNavigation.js +1 -1
  465. package/dist/configurator/ui/legacy/layout/steps/StepsNavigation.js +1 -1
  466. package/dist/configurator/ui/legacy/layout/steps/StepsOwnerLayout.js +1 -1
  467. package/dist/configurator/ui/legacy/layout/steps/StepsSidebarFooter.js +1 -1
  468. package/dist/configurator/ui/legacy/layout/tabs/TabsOwnerLayout.js +1 -1
  469. package/dist/configurator/ui/legacy/toolbar/common/DimensionUnitSelector.js +1 -1
  470. package/dist/configurator/ui/legacy/toolbar/common/MeasurementsIndicatorsSwitch.js +1 -1
  471. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/FullscreenToolbarAction.js +1 -1
  472. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/HelpToolbarAction.js +1 -1
  473. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/MeasurementsToolbarAction.js +1 -1
  474. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/UndoRedoToolbarGroup.js +1 -1
  475. package/dist/configurator/ui/phoenix-layout-elements/AppLoader.d.ts +0 -7
  476. package/dist/configurator/ui/phoenix-layout-elements/AppLoader.js +2 -6
  477. package/dist/configurator/ui/phoenix-layout-elements/AssistantToolbarButton.js +1 -1
  478. package/dist/configurator/ui/phoenix-layout-elements/EnterFullscreenToolbarButton.js +1 -1
  479. package/dist/configurator/ui/phoenix-layout-elements/ExitFullscreenToolbarButton.js +1 -1
  480. package/dist/configurator/ui/phoenix-layout-elements/HelpToolbarButton.js +1 -1
  481. package/dist/configurator/ui/phoenix-layout-elements/LanguageMenuAction.js +1 -1
  482. package/dist/configurator/ui/phoenix-layout-elements/LanguageToolbarButton.js +1 -1
  483. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomOwnerUi.d.ts +1 -0
  484. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomOwnerUi.js +1 -1
  485. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomReadUi.d.ts +1 -0
  486. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomReadUi.js +1 -1
  487. package/dist/configurator/ui/phoenix-layout-elements/MeasurementsMenuAction.js +1 -1
  488. package/dist/configurator/ui/phoenix-layout-elements/MeasurementsToolbarButton.js +1 -1
  489. package/dist/configurator/ui/phoenix-layout-elements/RedoToolbarButton.js +1 -1
  490. package/dist/configurator/ui/phoenix-layout-elements/ShareToolbarButton.js +1 -1
  491. package/dist/configurator/ui/phoenix-layout-elements/UndoToolbarButton.js +1 -1
  492. package/dist/configurator/ui/phoenix-layout-elements/header/common/back-button/use-go-back-action.js +1 -1
  493. package/dist/configurator/ui/phoenix-layout-elements/header/common/horizontal-tabs/DesktopHorizontalTabs.js +1 -1
  494. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/DesktopNavigationSteps.d.ts +1 -1
  495. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/DesktopNavigationSteps.js +1 -1
  496. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.d.ts +2 -8
  497. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.js +1 -1
  498. package/dist/configurator/ui/phoenix-layout-elements/index.d.ts +8 -1
  499. package/dist/configurator/ui/phoenix-layout-elements/index.js +1 -1
  500. package/dist/configurator/ui/phoenix-layout-elements/measurements/DimensionUnitSelector.js +1 -1
  501. package/dist/configurator/ui/phoenix-layout-elements/measurements/MeasurementsIndicatorsSwitch.js +1 -1
  502. package/dist/configurator/ui/phoenix-layout-elements/share/ShareModal.js +1 -1
  503. package/dist/configurator/ui/phoenix-layout-elements/share/use-share.d.ts +7 -8
  504. package/dist/configurator/ui/phoenix-layout-elements/share/use-share.js +1 -1
  505. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/basic/BasicFinalizeButton.js +1 -1
  506. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/CustomFinalizeButton.js +1 -1
  507. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/EnterSummaryButton.js +1 -1
  508. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/FinalizeActions.js +1 -1
  509. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/NextStepButton.js +1 -1
  510. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/PreviousStepButton.js +1 -1
  511. package/dist/configurator/ui/preset-layout/CategoryPresetUi.js +1 -1
  512. package/dist/configurator/ui/preset-layout/PresetUi.d.ts +4 -2
  513. package/dist/configurator/ui/preset-layout/PresetUi.js +1 -1
  514. package/dist/configurator/ui/preset-layout/index.d.ts +6 -1
  515. package/dist/configurator/ui/preset-layout/index.js +1 -1
  516. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.d.ts +10 -0
  517. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.js +1 -0
  518. package/dist/configurator/ui/save-message-snackbars/index.d.ts +1 -0
  519. package/dist/configurator/ui/save-message-snackbars/index.js +1 -0
  520. package/dist/docs/complex-use-cases/focus-mode.mdx +2 -0
  521. package/dist/docs/controls/select-child-entity/cardselect.mdx +1 -0
  522. package/dist/docs/fabs/basic.mdx +6 -2
  523. package/dist/docs/index.json +95 -1
  524. package/dist/docs/integrations/webcomponent-api/basics.mdx +2 -0
  525. package/dist/docs/layouts/custom-layout.mdx +637 -165
  526. package/dist/docs/layouts/gallery/ardent-compressor.mdx +3516 -0
  527. package/dist/docs/layouts/gallery/corvid-drone.mdx +3428 -0
  528. package/dist/docs/layouts/gallery/fenwick-window.mdx +2803 -0
  529. package/dist/docs/layouts/gallery/ferrule-bar-station.mdx +6567 -0
  530. package/dist/docs/layouts/gallery/kestrel-kettle.mdx +1858 -0
  531. package/dist/docs/layouts/gallery/nightjar-guitar.mdx +3698 -0
  532. package/dist/docs/layouts/gallery/sunfold-solar.mdx +2683 -0
  533. package/dist/docs/layouts/gallery/tidepool-aquascape.mdx +5203 -0
  534. package/dist/docs/other-features/client-side-rendering/declarative.mdx +1 -1
  535. package/dist/docs/other-features/error-5xx.mdx +1 -1
  536. package/dist/docs/other-features/navigation-hotspot.mdx +2 -0
  537. package/dist/docs/other-features/not-found-404.mdx +1 -1
  538. package/dist/docs/phoenix/clerk-sign-in.mdx +1 -1
  539. package/dist/docs/phoenix/components.mdx +6 -0
  540. package/dist/docs/phoenix/configurator-interface.mdx +223 -59
  541. package/dist/docs/phoenix/domain-model.mdx +2 -0
  542. package/dist/docs/phoenix/finalization.mdx +1 -1
  543. package/dist/docs/phoenix/getting-started.mdx +5 -3
  544. package/dist/docs/phoenix/layout-slots.mdx +23 -23
  545. package/dist/docs/phoenix/localization.mdx +6 -2
  546. package/dist/docs/phoenix/migration-guide.mdx +12 -10
  547. package/dist/docs/phoenix/phoenix-cli.mdx +31 -16
  548. package/dist/docs/phoenix/project-structure.mdx +52 -30
  549. package/dist/docs/phoenix/quickstart.mdx +7 -7
  550. package/dist/docs/phoenix/sdk-builder-workflow.mdx +7 -7
  551. package/dist/docs/phoenix/sessions-and-access.mdx +2 -0
  552. package/dist/docs/phoenix/testing.mdx +8 -0
  553. package/dist/docs/selection-and-highlight/hotspots.mdx +2 -0
  554. package/dist/domain/application/assistant/assistant-manifest.d.ts +16 -1
  555. package/dist/domain/application/assistant/assistant-resolved-manifest.d.ts +8 -1
  556. package/dist/domain/application/assistant/build-assistant-manifest.js +1 -1
  557. package/dist/domain/application/assistant/form/assistant-form-element-name.d.ts +11 -0
  558. package/dist/domain/application/assistant/form/assistant-form-element-name.js +8 -0
  559. package/dist/domain/application/assistant/form/assistant-form-elements.d.ts +174 -0
  560. package/dist/domain/application/assistant/form/assistant-form-elements.js +1 -0
  561. package/dist/domain/application/assistant/form/assistant-resource-path.d.ts +10 -0
  562. package/dist/domain/application/assistant/form/assistant-resource-path.js +1 -0
  563. package/dist/domain/application/assistant/form/index.d.ts +4 -0
  564. package/dist/domain/application/assistant/form/index.js +1 -0
  565. package/dist/domain/application/assistant/generate-assistant-prompt.d.ts +3 -0
  566. package/dist/domain/application/assistant/generate-assistant-prompt.js +1 -1
  567. package/dist/domain/application/assistant/index.d.ts +2 -1
  568. package/dist/domain/application/assistant/index.js +1 -1
  569. package/dist/domain/application/assistant/session-setup/apply-assistant-setup.js +1 -1
  570. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.d.ts +2 -0
  571. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.js +1 -1
  572. package/dist/domain/application/assistant-recipe-groups.d.ts +3 -1
  573. package/dist/domain/application/standard-properties.js +1 -1
  574. package/dist/domain/application/web-component-property.d.ts +3 -1
  575. package/dist/domain/application/web-component-property.js +1 -1
  576. package/dist/domain/available-system-components.d.ts +1 -1
  577. package/dist/domain/available-system-components.js +1 -1
  578. package/dist/domain/core/schema/extended-schema-validator.js +1 -1
  579. package/dist/domain/domain-builder.d.ts +9 -3
  580. package/dist/domain/domain-builder.js +1 -1
  581. package/dist/domain/domain-context/store-system/store-system.d.ts +5 -0
  582. package/dist/domain/domain-context/store-system/store-system.js +1 -1
  583. package/dist/domain/domain-runtime/domain-context/selectors.d.ts +1 -0
  584. package/dist/domain/domain-runtime/domain-context/selectors.js +1 -1
  585. package/dist/domain/domain-runtime/domain-runtime.d.ts +26 -0
  586. package/dist/domain/domain-runtime/domain-runtime.js +1 -1
  587. package/dist/domain/domain-runtime/environment/types.d.ts +1 -1
  588. package/dist/domain/domain-runtime/errors/implementation-error-collector.d.ts +2 -0
  589. package/dist/domain/domain-runtime/errors/implementation-error-collector.js +1 -1
  590. package/dist/domain/domain-runtime/index.d.ts +1 -1
  591. package/dist/domain/domain-runtime/index.js +1 -1
  592. package/dist/domain/domain-runtime/spec/index.d.ts +1 -1
  593. package/dist/domain/domain-runtime/spec/index.js +1 -1
  594. package/dist/domain/domain-runtime/spec/initialize.js +1 -1
  595. package/dist/domain/domain-runtime/spec/module-checks/element-registration.d.ts +27 -12
  596. package/dist/domain/domain-runtime/spec/module-checks/element-registration.js +1 -1
  597. package/dist/domain/domain-runtime/spec/module-checks/find-assistant-form-element-errors.d.ts +12 -0
  598. package/dist/domain/domain-runtime/spec/module-checks/find-assistant-form-element-errors.js +1 -0
  599. package/dist/domain/domain-runtime/spec/module-checks/index.d.ts +3 -1
  600. package/dist/domain/domain-runtime/spec/module-checks/index.js +1 -1
  601. package/dist/domain/domain-runtime/spec/module-checks/merge-expression-modules.d.ts +23 -0
  602. package/dist/domain/domain-runtime/spec/module-checks/merge-expression-modules.js +1 -0
  603. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.d.ts +3 -4
  604. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.js +1 -1
  605. package/dist/domain/domain-runtime/spec/selectors.d.ts +3 -1
  606. package/dist/domain/domain-runtime/spec/selectors.js +1 -1
  607. package/dist/domain/domain-runtime/web-component/actions.d.ts +3 -0
  608. package/dist/domain/domain-runtime/web-component/actions.js +1 -1
  609. package/dist/domain/domain-runtime/web-component/initialize.d.ts +1 -0
  610. package/dist/domain/domain-runtime/web-component/initialize.js +1 -1
  611. package/dist/domain/domain-runtime/web-component/selectors.d.ts +2 -0
  612. package/dist/domain/domain-runtime/web-component/selectors.js +1 -1
  613. package/dist/domain/domain-runtime/web-component/types.d.ts +6 -3
  614. package/dist/domain/extensions/export-images/agent-screenshot.d.ts +24 -0
  615. package/dist/domain/extensions/export-images/agent-screenshot.js +1 -0
  616. package/dist/domain/extensions/{client-side-image.d.ts → export-images/client-side-image.d.ts} +2 -2
  617. package/dist/domain/extensions/export-images/client-side-image.js +1 -0
  618. package/dist/domain/extensions/export-images/index.d.ts +3 -0
  619. package/dist/domain/extensions/export-images/index.js +1 -0
  620. package/dist/domain/extensions/{save-template-thumbnail.d.ts → export-images/save-template-thumbnail.d.ts} +2 -2
  621. package/dist/domain/extensions/export-images/save-template-thumbnail.js +1 -0
  622. package/dist/domain/extensions/index.d.ts +1 -2
  623. package/dist/domain/extensions/index.js +1 -1
  624. package/dist/domain/mocks/create-mock-domain-runtime.d.ts +9 -0
  625. package/dist/domain/system-components/child-entity-selection.js +1 -1
  626. package/dist/domain/system-components/common/scene-entity-control-schema.d.ts +3 -0
  627. package/dist/domain/system-components/common/scene-entity-control-schema.js +1 -1
  628. package/dist/editor/Editor.d.ts +7 -0
  629. package/dist/editor/Editor.js +1 -1
  630. package/dist/editor/domain-editors/DomainSpecContext.js +1 -1
  631. package/dist/editor/domain-editors/apply-spec-update.d.ts +10 -2
  632. package/dist/editor/domain-editors/apply-spec-update.js +1 -1
  633. package/dist/editor/domain-editors/use-implementation-files.d.ts +6 -14
  634. package/dist/editor/domain-editors/use-implementation-files.js +1 -1
  635. package/dist/editor/mocks/CreateMockYaml.js +2 -2
  636. package/dist/editor/mocks/EditorMockContext.d.ts +2 -0
  637. package/dist/editor/mocks/EditorMockContext.js +1 -1
  638. package/dist/editor/screenshot/ScreenshotHandler.js +1 -1
  639. package/dist/i18n/locales/cs/messages.js +1 -1
  640. package/dist/i18n/locales/da/messages.js +1 -1
  641. package/dist/i18n/locales/de/messages.js +1 -1
  642. package/dist/i18n/locales/de-AT/messages.js +1 -1
  643. package/dist/i18n/locales/en/messages.js +1 -1
  644. package/dist/i18n/locales/en-AU/messages.js +1 -1
  645. package/dist/i18n/locales/en-GB/messages.js +1 -1
  646. package/dist/i18n/locales/es/messages.js +1 -1
  647. package/dist/i18n/locales/fr/messages.js +1 -1
  648. package/dist/i18n/locales/hu/messages.js +1 -1
  649. package/dist/i18n/locales/it/messages.js +1 -1
  650. package/dist/i18n/locales/nl/messages.js +1 -1
  651. package/dist/i18n/locales/pl/messages.js +1 -1
  652. package/dist/i18n/locales/pt/messages.js +1 -1
  653. package/dist/i18n/locales/ro/messages.js +1 -1
  654. package/dist/i18n/locales/sk/messages.js +1 -1
  655. package/dist/i18n/locales/tr/messages.js +1 -1
  656. package/dist/legacy/domain-cli/utils/cache.d.ts +1 -1
  657. package/dist/legacy/domain-cli/utils/cache.js +1 -1
  658. package/dist/legacy/domain-spec/__generated/domain-schema.d.ts +95 -80
  659. package/dist/legacy/domain-spec/spec/domain-spec.js +1 -1
  660. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/claude-md.d.ts +1 -1
  661. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/cursor-rules.d.ts +1 -1
  662. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.d.ts +1 -1
  663. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.js +11 -5
  664. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-admin.js +10 -11
  665. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-admin.js +9 -10
  666. package/dist/phoenix/application-spec/application-spec-builder.d.ts +0 -2
  667. package/dist/phoenix/application-spec/application-spec-builder.js +1 -1
  668. package/dist/phoenix/application-spec/generate-application-spec-project.d.ts +0 -2
  669. package/dist/phoenix/application-spec/generate-application-spec-project.js +2 -2
  670. package/dist/phoenix/application-spec/generate-application-spec-story.js +2 -2
  671. package/dist/phoenix/application-spec/generate-project-files.d.ts +0 -2
  672. package/dist/phoenix/application-spec/project-files.js +1 -1
  673. package/dist/phoenix/bin.d.ts +2 -0
  674. package/dist/phoenix/bin.js +2 -0
  675. package/dist/phoenix/check-configs/built-in-eslint-config.d.ts +9 -0
  676. package/dist/phoenix/check-configs/built-in-eslint-config.js +1 -0
  677. package/dist/phoenix/check-configs/eslint-config.d.ts +10 -0
  678. package/dist/phoenix/check-configs/eslint-config.js +1 -0
  679. package/dist/phoenix/check-configs/index.d.ts +8 -0
  680. package/dist/phoenix/check-configs/index.js +1 -0
  681. package/dist/phoenix/check-configs/typescript-project.d.ts +5 -0
  682. package/dist/phoenix/check-configs/typescript-project.js +1 -0
  683. package/dist/phoenix/cli.d.ts +0 -1
  684. package/dist/phoenix/cli.js +1 -2
  685. package/dist/phoenix/commands/build.js +1 -1
  686. package/dist/phoenix/commands/check.js +1 -1
  687. package/dist/phoenix/commands/clean.js +1 -1
  688. package/dist/phoenix/commands/deploy.js +2 -2
  689. package/dist/phoenix/commands/deps/deps.d.ts +22 -1
  690. package/dist/phoenix/commands/deps/deps.js +2 -2
  691. package/dist/phoenix/commands/deps/index.d.ts +1 -1
  692. package/dist/phoenix/commands/deps/index.js +1 -1
  693. package/dist/phoenix/commands/deps/sdk-manifest.js +1 -1
  694. package/dist/phoenix/commands/dev.js +4 -4
  695. package/dist/phoenix/commands/fix.js +1 -1
  696. package/dist/phoenix/commands/init.d.ts +17 -5
  697. package/dist/phoenix/commands/init.js +1 -1
  698. package/dist/phoenix/commands/link.js +1 -1
  699. package/dist/phoenix/commands/prettier.js +1 -1
  700. package/dist/phoenix/commands/sync.js +1 -1
  701. package/dist/phoenix/commands/unlink.js +1 -1
  702. package/dist/phoenix/services/application-spec-project-watcher.d.ts +0 -2
  703. package/dist/phoenix/services/application-spec-project-watcher.js +2 -2
  704. package/dist/phoenix/services/lingui.d.ts +8 -0
  705. package/dist/phoenix/services/lingui.js +1 -1
  706. package/dist/phoenix/services/swc.js +1 -1
  707. package/dist/phoenix/services/vite-config.js +1 -1
  708. package/dist/phoenix/utils/index.d.ts +3 -2
  709. package/dist/phoenix/utils/index.js +1 -1
  710. package/dist/phoenix/utils/node-version/index.d.ts +1 -0
  711. package/dist/phoenix/utils/node-version/index.js +1 -0
  712. package/dist/phoenix/utils/node-version/supported-node-version.d.ts +12 -0
  713. package/dist/phoenix/utils/node-version/supported-node-version.js +4 -0
  714. package/dist/phoenix/utils/package-info.d.ts +0 -9
  715. package/dist/phoenix/utils/package-info.js +1 -1
  716. package/dist/phoenix/utils/package-manager/index.d.ts +2 -0
  717. package/dist/phoenix/utils/package-manager/index.js +1 -0
  718. package/dist/phoenix/utils/package-manager/package-manager-commands.d.ts +19 -0
  719. package/dist/phoenix/utils/package-manager/package-manager-commands.js +1 -0
  720. package/dist/phoenix/utils/package-manager/pnpm-project.d.ts +9 -0
  721. package/dist/phoenix/utils/package-manager/pnpm-project.js +1 -0
  722. package/dist/phoenix/utils/run-command.d.ts +11 -0
  723. package/dist/phoenix/utils/run-command.js +1 -1
  724. package/dist/phoenix/utils/sdk-tool/index.d.ts +1 -0
  725. package/dist/phoenix/utils/sdk-tool/index.js +1 -0
  726. package/dist/phoenix/utils/sdk-tool/resolve-sdk-tool-bin.d.ts +15 -0
  727. package/dist/phoenix/utils/sdk-tool/resolve-sdk-tool-bin.js +1 -0
  728. package/dist/{configurator/common → react-sdk/application-runtime/common-services/analytics}/frontend-analytics.d.ts +4 -0
  729. package/dist/react-sdk/application-runtime/common-services/analytics/index.d.ts +1 -0
  730. package/dist/react-sdk/application-runtime/common-services/analytics/index.js +1 -1
  731. package/dist/react-sdk/application-runtime/hooks/index.d.ts +2 -0
  732. package/dist/react-sdk/application-runtime/hooks/index.js +1 -1
  733. package/dist/react-sdk/application-runtime/hooks/loading/index.d.ts +5 -0
  734. package/dist/react-sdk/application-runtime/hooks/loading/index.js +1 -0
  735. package/dist/react-sdk/application-runtime/hooks/loading/loader-host-context.d.ts +11 -0
  736. package/dist/react-sdk/application-runtime/hooks/loading/loader-host-context.js +1 -0
  737. package/dist/react-sdk/application-runtime/hooks/loading/use-is-awaiting-loading-phase.d.ts +8 -0
  738. package/dist/react-sdk/application-runtime/hooks/loading/use-is-awaiting-loading-phase.js +1 -0
  739. package/dist/react-sdk/application-runtime/hooks/loading/use-is-loader-hosted.d.ts +7 -0
  740. package/dist/react-sdk/application-runtime/hooks/loading/use-is-loader-hosted.js +1 -0
  741. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-actions.d.ts +9 -0
  742. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-actions.js +1 -0
  743. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-application.d.ts +24 -0
  744. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-application.js +1 -0
  745. package/dist/react-sdk/application-runtime/hooks/responsive/index.d.ts +3 -0
  746. package/dist/react-sdk/application-runtime/hooks/responsive/index.js +1 -0
  747. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-actions.d.ts +9 -0
  748. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-actions.js +1 -0
  749. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-application.d.ts +26 -0
  750. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-application.js +1 -0
  751. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-state.d.ts +10 -0
  752. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-state.js +1 -0
  753. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-store.d.ts +24 -0
  754. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-store.js +1 -0
  755. package/dist/react-sdk/application-runtime/hooks/use-access-service.d.ts +5 -0
  756. package/dist/react-sdk/application-runtime/hooks/use-access-service.js +1 -1
  757. package/dist/react-sdk/application-runtime/hooks/use-phoenix-element-slots.d.ts +2 -1
  758. package/dist/react-sdk/application-runtime/hooks/use-web-component-readonly-sync.d.ts +4 -11
  759. package/dist/react-sdk/application-runtime/hooks/use-web-component-readonly-sync.js +1 -1
  760. package/dist/react-sdk/application-runtime/hooks/use-web-component.d.ts +5 -0
  761. package/dist/react-sdk/application-runtime/hooks/use-web-component.js +1 -1
  762. package/dist/react-sdk/application-runtime/host-properties/actions.d.ts +15 -0
  763. package/dist/react-sdk/application-runtime/host-properties/actions.js +1 -0
  764. package/dist/react-sdk/application-runtime/host-properties/connect-host-properties.d.ts +30 -0
  765. package/dist/react-sdk/application-runtime/host-properties/connect-host-properties.js +1 -0
  766. package/dist/react-sdk/application-runtime/host-properties/domain-host-properties.d.ts +7 -0
  767. package/dist/react-sdk/application-runtime/host-properties/domain-host-properties.js +1 -0
  768. package/dist/react-sdk/application-runtime/host-properties/host-property-descriptors.d.ts +21 -0
  769. package/dist/react-sdk/application-runtime/host-properties/host-property-descriptors.js +1 -0
  770. package/dist/react-sdk/application-runtime/host-properties/host-property-scopes.d.ts +42 -0
  771. package/dist/react-sdk/application-runtime/host-properties/host-property-scopes.js +1 -0
  772. package/dist/react-sdk/application-runtime/host-properties/index.d.ts +8 -0
  773. package/dist/react-sdk/application-runtime/host-properties/index.js +1 -0
  774. package/dist/react-sdk/application-runtime/host-properties/initialize.d.ts +7 -0
  775. package/dist/react-sdk/application-runtime/host-properties/initialize.js +1 -0
  776. package/dist/react-sdk/application-runtime/host-properties/selectors.d.ts +54 -0
  777. package/dist/react-sdk/application-runtime/host-properties/selectors.js +1 -0
  778. package/dist/react-sdk/application-runtime/host-properties/types.d.ts +18 -0
  779. package/dist/react-sdk/application-runtime/host-properties/types.js +1 -0
  780. package/dist/react-sdk/application-runtime/index.d.ts +3 -0
  781. package/dist/react-sdk/application-runtime/integration/initialize.d.ts +7 -6
  782. package/dist/react-sdk/application-runtime/integration/initialize.js +1 -1
  783. package/dist/react-sdk/application-runtime/integration/selectors.d.ts +11 -2
  784. package/dist/react-sdk/application-runtime/integration/selectors.js +1 -1
  785. package/dist/react-sdk/application-runtime/integration/types.d.ts +5 -2
  786. package/dist/react-sdk/application-runtime/loading/actions.d.ts +45 -0
  787. package/dist/react-sdk/application-runtime/loading/actions.js +1 -0
  788. package/dist/react-sdk/application-runtime/loading/index.d.ts +4 -0
  789. package/dist/react-sdk/application-runtime/loading/index.js +1 -0
  790. package/dist/react-sdk/application-runtime/loading/initialize.d.ts +3 -0
  791. package/dist/react-sdk/application-runtime/loading/initialize.js +1 -0
  792. package/dist/react-sdk/application-runtime/loading/selectors.d.ts +18 -0
  793. package/dist/react-sdk/application-runtime/loading/selectors.js +1 -0
  794. package/dist/react-sdk/application-runtime/loading/types.d.ts +59 -0
  795. package/dist/react-sdk/application-runtime/loading/types.js +1 -0
  796. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.js +1 -1
  797. package/dist/react-sdk/application-runtime/provider/ApplicationRuntime.d.ts +6 -0
  798. package/dist/react-sdk/application-runtime/provider/ApplicationRuntime.js +1 -1
  799. package/dist/react-sdk/application-runtime/provider/ApplicationType.d.ts +7 -0
  800. package/dist/react-sdk/application-runtime/provider/ApplicationType.js +1 -1
  801. package/dist/react-sdk/application-runtime/responsive/actions.d.ts +47 -0
  802. package/dist/react-sdk/application-runtime/responsive/actions.js +1 -0
  803. package/dist/react-sdk/application-runtime/responsive/index.d.ts +4 -0
  804. package/dist/react-sdk/application-runtime/responsive/index.js +1 -0
  805. package/dist/react-sdk/application-runtime/responsive/initialize.d.ts +3 -0
  806. package/dist/react-sdk/application-runtime/responsive/initialize.js +1 -0
  807. package/dist/react-sdk/application-runtime/responsive/selectors.d.ts +20 -0
  808. package/dist/react-sdk/application-runtime/responsive/selectors.js +1 -0
  809. package/dist/react-sdk/application-runtime/responsive/types.d.ts +104 -0
  810. package/dist/react-sdk/application-runtime/responsive/types.js +1 -0
  811. package/dist/react-sdk/application-runtime/routing/routing-service.d.ts +34 -2
  812. package/dist/react-sdk/application-runtime/routing/routing-service.js +1 -1
  813. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.d.ts +296 -4
  814. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.js +1 -1
  815. package/dist/react-sdk/domain-application-context/BackendDataProvider.js +1 -1
  816. package/dist/react-sdk/domain-application-context/DomainLifecycleBoundary.js +1 -1
  817. package/dist/react-sdk/domain-application-context/FrontendDataProvider.js +1 -1
  818. package/dist/react-sdk/domain-application-context/PublishedDataProvider.js +1 -1
  819. package/dist/react-sdk/domain-context/common-hooks/index.d.ts +9 -0
  820. package/dist/react-sdk/domain-context/common-hooks/index.js +1 -0
  821. package/dist/react-sdk/domain-context/common-hooks/use-configuration-save-state.d.ts +23 -0
  822. package/dist/react-sdk/domain-context/common-hooks/use-configuration-save-state.js +1 -0
  823. package/dist/react-sdk/domain-context/common-hooks/use-configurator-messages.d.ts +15 -4
  824. package/dist/react-sdk/domain-context/common-hooks/use-configurator-messages.js +1 -1
  825. package/dist/react-sdk/domain-context/common-hooks/use-domain-context.d.ts +1 -0
  826. package/dist/react-sdk/domain-context/component-hooks/index.d.ts +1 -0
  827. package/dist/react-sdk/domain-context/component-hooks/index.js +1 -0
  828. package/dist/react-sdk/domain-context/component-hooks/use-component.js +1 -1
  829. package/dist/react-sdk/domain-context/entity-hooks/use-domain-entity-state.js +1 -1
  830. package/dist/react-sdk/domain-context/entity-hooks/use-entity-price.js +1 -1
  831. package/dist/react-sdk/domain-context/entity-hooks/use-root-entity-id.js +1 -1
  832. package/dist/react-sdk/domain-context/entity-hooks/use-root-entity-state.js +1 -1
  833. package/dist/react-sdk/domain-context/index.d.ts +7 -0
  834. package/dist/react-sdk/domain-context/index.js +1 -1
  835. package/dist/react-sdk/domain-context/system-hooks/composition-hooks.js +1 -1
  836. package/dist/react-sdk/domain-context/system-hooks/dimension-hooks.js +1 -1
  837. package/dist/react-sdk/domain-context/system-hooks/generate-share-link-hooks.d.ts +8 -0
  838. package/dist/react-sdk/domain-context/system-hooks/generate-share-link-hooks.js +1 -0
  839. package/dist/react-sdk/domain-context/system-hooks/hover-hooks.js +1 -1
  840. package/dist/react-sdk/domain-context/system-hooks/locale-switch-hooks.d.ts +24 -0
  841. package/dist/react-sdk/domain-context/system-hooks/locale-switch-hooks.js +1 -0
  842. package/dist/react-sdk/domain-context/system-hooks/navigation-hooks.js +1 -1
  843. package/dist/react-sdk/domain-context/system-hooks/selection-hooks.js +1 -1
  844. package/dist/react-sdk/domain-context/system-hooks/share-links-hooks.d.ts +32 -0
  845. package/dist/react-sdk/domain-context/system-hooks/share-links-hooks.js +1 -0
  846. package/dist/react-sdk/domain-context/system-hooks/step-navigation-hooks.d.ts +57 -0
  847. package/dist/react-sdk/domain-context/system-hooks/step-navigation-hooks.js +1 -0
  848. package/dist/react-sdk/domain-context/system-hooks/tab-navigation-hooks.d.ts +61 -0
  849. package/dist/react-sdk/domain-context/system-hooks/tab-navigation-hooks.js +1 -0
  850. package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.d.ts +20 -0
  851. package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.js +1 -0
  852. package/dist/react-sdk/handlers/FinalizeActionRunner.d.ts +13 -0
  853. package/dist/react-sdk/handlers/FinalizeActionRunner.js +1 -0
  854. package/dist/react-sdk/handlers/FinalizeActionsHost.d.ts +10 -0
  855. package/dist/react-sdk/handlers/FinalizeActionsHost.js +1 -0
  856. package/dist/react-sdk/handlers/FinalizeActionsProvider.d.ts +11 -0
  857. package/dist/react-sdk/handlers/FinalizeActionsProvider.js +1 -0
  858. package/dist/react-sdk/handlers/finalize-actions-context.d.ts +6 -0
  859. package/dist/react-sdk/handlers/finalize-actions-context.js +1 -0
  860. package/dist/react-sdk/handlers/finalize-actions-store.d.ts +23 -0
  861. package/dist/react-sdk/handlers/finalize-actions-store.js +1 -0
  862. package/dist/react-sdk/handlers/index.d.ts +6 -0
  863. package/dist/react-sdk/handlers/index.js +1 -1
  864. package/dist/{configurator/common → react-sdk/handlers}/use-finalize-action.d.ts +3 -2
  865. package/dist/react-sdk/handlers/use-finalize-action.js +1 -0
  866. package/dist/react-sdk/handlers/use-finalize-actions.d.ts +53 -0
  867. package/dist/react-sdk/handlers/use-finalize-actions.js +1 -0
  868. package/dist/react-sdk/index.d.ts +2 -0
  869. package/dist/react-sdk/index.js +1 -1
  870. package/dist/react-sdk/loading-state/LoaderHost.d.ts +20 -0
  871. package/dist/react-sdk/loading-state/LoaderHost.js +1 -0
  872. package/dist/react-sdk/loading-state/built-in-loading-phase.d.ts +9 -0
  873. package/dist/react-sdk/loading-state/built-in-loading-phase.js +1 -0
  874. package/dist/react-sdk/loading-state/create-app-loader.d.ts +18 -0
  875. package/dist/react-sdk/loading-state/create-app-loader.js +1 -0
  876. package/dist/react-sdk/loading-state/index.d.ts +4 -2
  877. package/dist/react-sdk/loading-state/index.js +1 -1
  878. package/dist/react-sdk/loading-state/{LoadingStateProvider.d.ts → loading-state-hooks.d.ts} +3 -12
  879. package/dist/react-sdk/loading-state/loading-state-hooks.js +1 -0
  880. package/dist/react-sdk/page-elements/ConfigurationNotFoundPagePropsProvider.d.ts +17 -0
  881. package/dist/react-sdk/page-elements/ConfigurationNotFoundPagePropsProvider.js +1 -0
  882. package/dist/react-sdk/page-elements/ConfiguratorErrorPagePropsProvider.d.ts +17 -0
  883. package/dist/react-sdk/page-elements/ConfiguratorErrorPagePropsProvider.js +1 -0
  884. package/dist/react-sdk/page-elements/configurator-error-page-props.d.ts +20 -0
  885. package/dist/react-sdk/page-elements/configurator-error-page-props.js +1 -0
  886. package/dist/react-sdk/page-elements/create-configuration-not-found-page.d.ts +15 -0
  887. package/dist/react-sdk/page-elements/create-configuration-not-found-page.js +1 -0
  888. package/dist/react-sdk/page-elements/create-configurator-error-page.d.ts +14 -0
  889. package/dist/react-sdk/page-elements/create-configurator-error-page.js +1 -0
  890. package/dist/react-sdk/page-elements/create-preset-ui.d.ts +9 -0
  891. package/dist/react-sdk/page-elements/create-preset-ui.js +1 -0
  892. package/dist/react-sdk/page-elements/index.d.ts +6 -0
  893. package/dist/react-sdk/page-elements/index.js +1 -0
  894. package/dist/react-sdk/scene-control-elements/AddEntityFabElement.d.ts +36 -0
  895. package/dist/react-sdk/scene-control-elements/AddEntityFabElement.js +1 -0
  896. package/dist/react-sdk/scene-control-elements/DeleteEntityFabElement.d.ts +44 -0
  897. package/dist/react-sdk/scene-control-elements/DeleteEntityFabElement.js +1 -0
  898. package/dist/react-sdk/scene-control-elements/NavigationHotspotElement.d.ts +38 -0
  899. package/dist/react-sdk/scene-control-elements/NavigationHotspotElement.js +1 -0
  900. package/dist/react-sdk/scene-control-elements/SelectionHotspotElement.d.ts +30 -0
  901. package/dist/react-sdk/scene-control-elements/SelectionHotspotElement.js +1 -0
  902. package/dist/react-sdk/scene-control-elements/ToolMenuFabElement.d.ts +30 -0
  903. package/dist/react-sdk/scene-control-elements/ToolMenuFabElement.js +1 -0
  904. package/dist/react-sdk/scene-control-elements/create-add-entity-fab.d.ts +9 -0
  905. package/dist/react-sdk/scene-control-elements/create-add-entity-fab.js +1 -0
  906. package/dist/react-sdk/scene-control-elements/create-delete-entity-fab.d.ts +9 -0
  907. package/dist/react-sdk/scene-control-elements/create-delete-entity-fab.js +1 -0
  908. package/dist/react-sdk/scene-control-elements/create-navigation-hotspot.d.ts +10 -0
  909. package/dist/react-sdk/scene-control-elements/create-navigation-hotspot.js +1 -0
  910. package/dist/react-sdk/scene-control-elements/create-selection-hotspot.d.ts +9 -0
  911. package/dist/react-sdk/scene-control-elements/create-selection-hotspot.js +1 -0
  912. package/dist/react-sdk/scene-control-elements/create-tool-menu-fab.d.ts +9 -0
  913. package/dist/react-sdk/scene-control-elements/create-tool-menu-fab.js +1 -0
  914. package/dist/react-sdk/scene-control-elements/index.d.ts +11 -0
  915. package/dist/react-sdk/scene-control-elements/index.js +1 -0
  916. package/dist/react-sdk/scene-control-elements/scene-control-tooltip-visibility.d.ts +5 -0
  917. package/dist/react-sdk/scene-control-elements/scene-control-tooltip-visibility.js +1 -0
  918. package/dist/react-sdk/session/NotAuthenticatedPage.d.ts +4 -0
  919. package/dist/react-sdk/session/NotAuthenticatedPage.js +1 -1
  920. package/dist/react-sdk/session/SessionServiceProvider.js +1 -1
  921. package/dist/react-sdk/web-component/create-web-component.js +1 -1
  922. package/dist/react-sdk/web-component/god-mode/god-mode-registry.d.ts +30 -0
  923. package/dist/react-sdk/web-component/god-mode/god-mode-registry.js +1 -0
  924. package/dist/react-sdk/web-component/god-mode/index.d.ts +1 -0
  925. package/dist/react-sdk/web-component/god-mode/index.js +1 -0
  926. package/dist/ui-sdk/icons/__generated/Lightbulb.d.ts +3 -0
  927. package/dist/ui-sdk/icons/__generated/Lightbulb.js +1 -0
  928. package/dist/ui-sdk/icons/__generated/XCircle.d.ts +3 -0
  929. package/dist/ui-sdk/icons/__generated/XCircle.js +1 -0
  930. package/dist/ui-sdk/icons/__generated/index.d.ts +4 -0
  931. package/dist/ui-sdk/icons/__generated/index.js +1 -1
  932. package/dist/ui-sdk/icons/icons-registry.js +1 -1
  933. package/dist/ui-sdk/responsive-application/ResponsiveApplicationProvider.d.ts +9 -0
  934. package/dist/ui-sdk/responsive-application/ResponsiveApplicationProvider.js +1 -1
  935. package/dist/ui-sdk/responsive-application/index.d.ts +1 -0
  936. package/dist/ui-sdk/responsive-application/responsive-state-store.d.ts +59 -0
  937. package/dist/ui-sdk/responsive-application/responsive-state-store.js +1 -0
  938. package/dist/ui-sdk/responsive-application/use-store-responsive-info.d.ts +7 -0
  939. package/dist/ui-sdk/responsive-application/use-store-responsive-info.js +1 -0
  940. package/dist/ui-sdk/theme/types.d.ts +5 -1
  941. package/package.json +29 -11
  942. package/schema/domain-spec.json +226 -8
  943. package/dist/application-spec/generate-application/code/templates/nvmrc.d.ts +0 -1
  944. package/dist/application-spec/generate-application/code/templates/nvmrc.js +0 -2
  945. package/dist/application-spec/generate-application/code/templates/package-json.d.ts +0 -10
  946. package/dist/application-spec/generate-application/code/templates/package-json.js +0 -1
  947. package/dist/configurator/common/use-finalize-action.js +0 -1
  948. package/dist/configurator/ui/assistant/entity-link/entity-link-target.d.ts +0 -5
  949. package/dist/configurator/ui/assistant/entity-link/entity-link-target.js +0 -1
  950. package/dist/configurator/ui/phoenix-layout-elements/language/use-locale-options.d.ts +0 -4
  951. package/dist/configurator/ui/phoenix-layout-elements/language/use-locale-options.js +0 -1
  952. package/dist/configurator/ui/phoenix-layout-elements/measurements/use-measurements-visibility.d.ts +0 -4
  953. package/dist/configurator/ui/phoenix-layout-elements/measurements/use-measurements-visibility.js +0 -1
  954. package/dist/domain/extensions/client-side-image.js +0 -1
  955. package/dist/domain/extensions/save-template-thumbnail.js +0 -1
  956. package/dist/phoenix/commands/generate-project-files.d.ts +0 -6
  957. package/dist/phoenix/commands/generate-project-files.js +0 -1
  958. package/dist/react-sdk/application-runtime/runtime/god-mode.d.ts +0 -19
  959. package/dist/react-sdk/application-runtime/runtime/god-mode.js +0 -1
  960. package/dist/react-sdk/loading-state/LoadingStateProvider.js +0 -1
  961. package/dist/react-sdk/loading-state/loading-state-manager.d.ts +0 -32
  962. package/dist/react-sdk/loading-state/loading-state-manager.js +0 -1
  963. /package/dist/{configurator/common → react-sdk/application-runtime/common-services/analytics}/frontend-analytics.js +0 -0
@@ -1 +1 @@
1
- import{ASSISTANT_AI_PROVIDERS as e,ASSISTANT_MODEL_TIERS as t,ASSISTANT_REASONING_LEVELS as i}from"@salsita-ai/contracts/assistant";import{describeAssistantValues as s,mergeAssistantFields as n,resolveAssistantField as o}from"../assistant-fields.js";import{ASSISTANT_HINTS as a}from"../assistant-resolved-manifest.js";import{projectAssistantSetupManifest as r}from"./assistant-setup-manifest.js";export class AssistantSetupError extends Error{constructor(e,t){super(`${e}: ${t}`),this.name="AssistantSetupError"}}let l=(e,t)=>{throw new AssistantSetupError(e,t)},p=(e,t,i)=>{for(let s of((null===t||"object"!=typeof t||Array.isArray(t))&&l(i,"expected an object; omit an entry to remove it"),Object.keys(t)))Object.hasOwn(e,s)||l(`${i}.${s}`,"not declared in the spec; remove this key")},d=(e,t)=>Object.hasOwn(e,t)?e[t]:void 0,c=(e,t,i)=>(void 0!==e&&"string"!=typeof e&&l(`${i}.description`,"expected a string"),e??t),u=(e,t,i)=>(void 0!==e&&!1!==e&&l(`${i}.allowDryRuns`,"can only disable dry-runs; omit this flag or set false"),!1!==e&&t);export const applyAssistantSetup=(f,m,b)=>{if(null===b)return null;let y=r(f,m),g=f.declarations;p({entities:{},deletable:{},writable:{},childRecipes:{},replaceRecipes:{},actions:{},instructions:"",ai:{}},b,"assistant"),p(y.entities,b.entities,"assistant.entities"),p(y.deletable,b.deletable,"assistant.deletable"),p(y.writable,b.writable,"assistant.writable"),p(y.actions,b.actions,"assistant.actions");let v=Object.fromEntries(Object.entries(b.entities).map(([e,t])=>{let i=`assistant.entities.${e}`;p(y.entities[e],t,i);let n=g.entities[e];return[e,Object.entries(t).map(([e,t])=>{p({description:""},t,`${i}.${e}`);let o=n.find(t=>t.source===e),a=c(t.description,o.valueDescription,`${i}.${e}`);return{...o,valueDescription:a,description:s(a,o.enumValues),describedByManifest:void 0!==t.description||o.describedByManifest}})]})),w=(e,t,i)=>l(`assistant.entities.${e}`,`conflicting sources ${t} and ${i}`),$=n([],d(v,"AnyDomainEntity")??[],()=>void 0,w),h=new Map([["AnyDomainEntity",$]]);for(let e of Object.keys(f.aliases))"AnyDomainEntity"!==e&&h.set(e,n([$],d(v,e)??[],()=>void 0,w));for(let e of f.entityTypes){let t=Object.entries(f.aliases).filter(([t,i])=>"AnyDomainEntity"!==t&&i.includes(e));h.set(e,n([$,...t.map(([e])=>h.get(e)??[])],d(v,e)??[],t=>g.enumValues[e]?.[t],w))}let j=Object.fromEntries([...h].map(([e,t])=>[e,t.map(t=>o(t,d(v,e)??[]))])),O=new Map,x=new Map;for(let[e,t]of Object.entries(b.writable)){let i=`assistant.writable.${e}`;for(let[s,n]of(p(y.writable[e],t,i),Object.entries(t))){let t=`${i}.${s}`,o=g.writable[e][s];for(let[e,{field:i,options:a,exposedDescription:r}]of(p(Object.values(o.members).some(e=>e.options)?{options:{}}:{},n,t),void 0!==n.options&&(p({validate:!0,allowDryRuns:!1},n.options,`${t}.options`),void 0!==n.options.validate&&!0!==n.options.validate&&l(`${t}.options.validate`,"can only enable validation; omit this flag or set true"),u(n.options.allowDryRuns,!0,`${t}.options`)),Object.entries(o.members))){let p=d(v,e)?.find(e=>e.source===s)?.name??h.get(e)?.find(e=>e.source===s)?.name,c=p??s;void 0===p&&h.get(e)?.some(e=>e.name===s&&e.source!==s)&&l(t,`narrowing leaves ${e}.${s} bound to another read field; retain its original exposure or remove this writable property`);let f=O.get(e)??new Map;if([...f.values()].some(e=>e.name===c&&e.property!==s)&&l(t,`narrowing maps multiple writable properties to ${e}.${c}; retain their original exposures or remove the conflicting property`),f.has(s)||f.set(s,{...i,name:c,...void 0===p?{}:{description:r}}),O.set(e,f),a){let i=o.defaultOptionsName?`${c}Options`:a.options.edgeName;x.get(e)?.some(e=>e.options.edgeName===i||e.options.field===c)&&l(`${t}.options`,`narrowing duplicates options edge ${e}.${i}; retain the original field exposures or remove the conflicting writable declaration`),x.set(e,[...x.get(e)??[],{hints:a.hints,options:{...a.options,field:c,edgeName:i,validate:n.options?.validate??a.options.validate,dryRuns:u(n.options?.allowDryRuns,a.options.dryRuns,`${t}.options`)}}])}}}}for(let[e,t]of Object.entries(f.optionsEdges))for(let i of t){let t=f.writableTypes.find(t=>t.entityType===e)?.fields.find(e=>e.name===i.options.field)?.property;if(i.options.validate&&t&&O.get(e)?.has(t)&&!x.get(e)?.some(i=>i.options.field===O.get(e)?.get(t)?.name&&i.options.validate)){let i=Object.keys(b.writable).find(i=>Object.hasOwn(b.writable[i],t)&&g.writable[i]?.[t]?.members[e]);l(`assistant.writable.${i}.${t}`,`cannot remove declared validation while another declaration keeps ${e}.${t} writable; remove all writable declarations for it`)}}let R=e=>{p(y[e],b[e],`assistant.${e}`);let t=new Map;for(let[i,s]of Object.entries(b[e])){let n=`assistant.${e}.${i}`;p({groups:{}},s,n),p(y[e][i].groups,s.groups,`${n}.groups`);let o=g[e][i],r=Object.entries(s.groups).map(([e,t])=>{let i=`${n}.groups.${e}`;p({description:"",allowDryRuns:!1},t,i);let s=o.groups.find(t=>t.instanceName===e);return{...s,description:c(t.description,s.description,i),dryRuns:u(t.allowDryRuns,s.dryRuns,i)}});for(let e of f.entityTypes.includes(i)?[i]:f.aliases[i]??[]){let i=t.get(e);t.set(e,{groups:[...i?.groups??[],...r],hints:a.filter(e=>o.hints.includes(e)||i?.hints.includes(e))})}}return Object.fromEntries(f.entityTypes.flatMap(e=>{let i=t.get(e);return i?.groups.length?[[e,i]]:[]}))};for(let[e,t]of Object.entries(b.deletable))p({},t,`assistant.deletable.${e}`);let E=new Set(Object.keys(b.deletable).flatMap(e=>f.entityTypes.includes(e)?[e]:f.aliases[e]??[])),T=f.actionFields.flatMap(e=>{let t=d(b.actions,e.actionName);if(void 0===t)return[];let i=`assistant.actions.${e.actionName}`;return p({description:""},t,i),[{...e,description:c(t.description,e.description,i)}]}),D=m;if(m){void 0!==b.ai&&p({...m.ai,maxThreadSize:void 0},b.ai,"assistant.ai");let s={...m.ai,...Object.fromEntries(Object.entries(b.ai??{}).filter(([,e])=>void 0!==e))};e.includes(s.provider)&&t.includes(s.model)&&i.includes(s.reasoning)||l("assistant.ai","expected a supported provider, model and reasoning level"),void 0!==s.maxThreadSize&&(!Number.isInteger(s.maxThreadSize)||s.maxThreadSize<=0)&&l("assistant.ai.maxThreadSize","expected a positive whole number of input tokens"),void 0!==b.instructions&&"string"!=typeof b.instructions&&l("assistant.instructions","expected a string"),D={instructions:""===b.instructions?null:b.instructions??m.instructions,ai:s}}return{resolved:{...f,fields:j,deletableTypes:f.entityTypes.filter(e=>E.has(e)),writableTypes:f.entityTypes.flatMap(e=>{let t=[...O.get(e)?.values()??[]];return t.length?[{entityType:e,fields:t}]:[]}),optionsEdges:Object.fromEntries(x),childRecipes:R("childRecipes"),replaceRecipes:R("replaceRecipes"),actionFields:T},settings:D}};
1
+ import{ASSISTANT_AI_PROVIDERS as e,ASSISTANT_MODEL_TIERS as t,ASSISTANT_REASONING_LEVELS as s}from"@salsita-ai/contracts/assistant";import{describeAssistantValues as i,mergeAssistantFields as n,resolveAssistantField as o}from"../assistant-fields.js";import{ASSISTANT_HINTS as r}from"../assistant-resolved-manifest.js";import{projectAssistantSetupManifest as a}from"./assistant-setup-manifest.js";export class AssistantSetupError extends Error{constructor(e,t){super(`${e}: ${t}`),this.name="AssistantSetupError"}}let l=(e,t)=>{throw new AssistantSetupError(e,t)},p=(e,t,s)=>{for(let i of((null===t||"object"!=typeof t||Array.isArray(t))&&l(s,"expected an object; omit an entry to remove it"),Object.keys(t)))Object.hasOwn(e,i)||l(`${s}.${i}`,"not declared in the spec; remove this key")},c=(e,t)=>Object.hasOwn(e,t)?e[t]:void 0,d=(e,t,s)=>(void 0!==e&&"string"!=typeof e&&l(`${s}.description`,"expected a string"),e??t),u=(e,t,s)=>(void 0!==e&&!1!==e&&l(`${s}.allowDryRuns`,"can only disable dry-runs; omit this flag or set false"),!1!==e&&t);export const applyAssistantSetup=(f,m,b)=>{if(null===b)return null;let y=a(f,m),g=f.declarations;p({entities:{},deletable:{},writable:{},childRecipes:{},replaceRecipes:{},screenshots:{},actions:{},instructions:"",ai:{}},b,"assistant"),p(y.entities,b.entities,"assistant.entities"),p(y.deletable,b.deletable,"assistant.deletable"),p(y.writable,b.writable,"assistant.writable"),p(y.actions,b.actions,"assistant.actions"),p(y.screenshots,b.screenshots,"assistant.screenshots");let h=Object.fromEntries(Object.entries(b.entities).map(([e,t])=>{let s=`assistant.entities.${e}`;p(y.entities[e],t,s);let n=g.entities[e];return[e,Object.entries(t).map(([e,t])=>{p({description:""},t,`${s}.${e}`);let o=n.find(t=>t.source===e),r=d(t.description,o.valueDescription,`${s}.${e}`);return{...o,valueDescription:r,description:i(r,o.enumValues),describedByManifest:void 0!==t.description||o.describedByManifest}})]})),v=(e,t,s)=>l(`assistant.entities.${e}`,`conflicting sources ${t} and ${s}`),$=n([],c(h,"AnyDomainEntity")??[],()=>void 0,v),w=new Map([["AnyDomainEntity",$]]);for(let e of Object.keys(f.aliases))"AnyDomainEntity"!==e&&w.set(e,n([$],c(h,e)??[],()=>void 0,v));for(let e of f.entityTypes){let t=Object.entries(f.aliases).filter(([t,s])=>"AnyDomainEntity"!==t&&s.includes(e));w.set(e,n([$,...t.map(([e])=>w.get(e)??[])],c(h,e)??[],t=>g.enumValues[e]?.[t],v))}let j=Object.fromEntries([...w].map(([e,t])=>[e,t.map(t=>o(t,c(h,e)??[]))])),O=new Map,T=new Map;for(let[e,t]of Object.entries(b.writable)){let s=`assistant.writable.${e}`;for(let[i,n]of(p(y.writable[e],t,s),Object.entries(t))){let t=`${s}.${i}`,o=g.writable[e][i];for(let[e,{field:s,options:r,exposedDescription:a}]of(p(Object.values(o.members).some(e=>e.options)?{options:{}}:{},n,t),void 0!==n.options&&(p({validate:!0,allowDryRuns:!1},n.options,`${t}.options`),void 0!==n.options.validate&&!0!==n.options.validate&&l(`${t}.options.validate`,"can only enable validation; omit this flag or set true"),u(n.options.allowDryRuns,!0,`${t}.options`)),Object.entries(o.members))){let p=c(h,e)?.find(e=>e.source===i)?.name??w.get(e)?.find(e=>e.source===i)?.name,d=p??i;void 0===p&&w.get(e)?.some(e=>e.name===i&&e.source!==i)&&l(t,`narrowing leaves ${e}.${i} bound to another read field; retain its original exposure or remove this writable property`);let f=O.get(e)??new Map;if([...f.values()].some(e=>e.name===d&&e.property!==i)&&l(t,`narrowing maps multiple writable properties to ${e}.${d}; retain their original exposures or remove the conflicting property`),f.has(i)||f.set(i,{...s,name:d,...void 0===p?{}:{description:a}}),O.set(e,f),r){let s=o.defaultOptionsName?`${d}Options`:r.options.edgeName;T.get(e)?.some(e=>e.options.edgeName===s||e.options.field===d)&&l(`${t}.options`,`narrowing duplicates options edge ${e}.${s}; retain the original field exposures or remove the conflicting writable declaration`),T.set(e,[...T.get(e)??[],{hints:r.hints,options:{...r.options,field:d,edgeName:s,validate:n.options?.validate??r.options.validate,dryRuns:u(n.options?.allowDryRuns,r.options.dryRuns,`${t}.options`)}}])}}}}for(let[e,t]of Object.entries(f.optionsEdges))for(let s of t){let t=f.writableTypes.find(t=>t.entityType===e)?.fields.find(e=>e.name===s.options.field)?.property;if(s.options.validate&&t&&O.get(e)?.has(t)&&!T.get(e)?.some(s=>s.options.field===O.get(e)?.get(t)?.name&&s.options.validate)){let s=Object.keys(b.writable).find(s=>Object.hasOwn(b.writable[s],t)&&g.writable[s]?.[t]?.members[e]);l(`assistant.writable.${s}.${t}`,`cannot remove declared validation while another declaration keeps ${e}.${t} writable; remove all writable declarations for it`)}}let x=e=>{p(y[e],b[e],`assistant.${e}`);let t=new Map;for(let[s,i]of Object.entries(b[e])){let n=`assistant.${e}.${s}`;p({groups:{}},i,n),p(y[e][s].groups,i.groups,`${n}.groups`);let o=g[e][s],a=Object.entries(i.groups).map(([e,t])=>{let s=`${n}.groups.${e}`;p({description:"",allowDryRuns:!1},t,s);let i=o.groups.find(t=>t.instanceName===e);return{...i,description:d(t.description,i.description,s),dryRuns:u(t.allowDryRuns,i.dryRuns,s)}});for(let e of f.entityTypes.includes(s)?[s]:f.aliases[s]??[]){let s=t.get(e);t.set(e,{groups:[...s?.groups??[],...a],hints:r.filter(e=>o.hints.includes(e)||s?.hints.includes(e))})}}return Object.fromEntries(f.entityTypes.flatMap(e=>{let s=t.get(e);return s?.groups.length?[[e,s]]:[]}))},E=new Map;for(let[e,t]of Object.entries(b.screenshots)){let s=`assistant.screenshots.${e}`;p(y.screenshots[e],t,s);let i=f.entityTypes.includes(e)?[e]:f.aliases[e]??[];for(let[n,o]of Object.entries(t)){let t=`${s}.${n}`;p({description:""},o,t);let r=g.screenshots[e].find(e=>e.instanceName===n),a={...r,description:d(o.description,r.description,t)??r.description};for(let e of i)E.set(e,[...E.get(e)??[],a])}}for(let[e,t]of Object.entries(b.deletable))p({},t,`assistant.deletable.${e}`);let R=new Set(Object.keys(b.deletable).flatMap(e=>f.entityTypes.includes(e)?[e]:f.aliases[e]??[])),M=f.actionFields.flatMap(e=>{let t=c(b.actions,e.actionName);if(void 0===t)return[];let s=`assistant.actions.${e.actionName}`;return p({description:""},t,s),[{...e,description:d(t.description,e.description,s)}]}),D=m;if(m){void 0!==b.ai&&p({...m.ai,maxThreadSize:void 0},b.ai,"assistant.ai");let i={...m.ai,...Object.fromEntries(Object.entries(b.ai??{}).filter(([,e])=>void 0!==e))};e.includes(i.provider)&&t.includes(i.model)&&s.includes(i.reasoning)||l("assistant.ai","expected a supported provider, model and reasoning level"),void 0!==i.maxThreadSize&&(!Number.isInteger(i.maxThreadSize)||i.maxThreadSize<=0)&&l("assistant.ai.maxThreadSize","expected a positive whole number of input tokens"),void 0!==b.instructions&&"string"!=typeof b.instructions&&l("assistant.instructions","expected a string"),D={instructions:""===b.instructions?null:b.instructions??m.instructions,ai:i}}return{resolved:{...f,fields:j,deletableTypes:f.entityTypes.filter(e=>R.has(e)),writableTypes:f.entityTypes.flatMap(e=>{let t=[...O.get(e)?.values()??[]];return t.length?[{entityType:e,fields:t}]:[]}),optionsEdges:Object.fromEntries(T),childRecipes:x("childRecipes"),replaceRecipes:x("replaceRecipes"),screenshots:Object.fromEntries(f.entityTypes.flatMap(e=>{let t=E.get(e);return t?[[e,t]]:[]})),actionFields:M},settings:D}};
@@ -12,6 +12,8 @@ export interface AssistantSetupManifest<ENTITIES extends DomainEntity<string> =
12
12
  };
13
13
  readonly childRecipes: Readonly<Record<string, AssistantSetupRecipes>>;
14
14
  readonly replaceRecipes: Readonly<Record<string, AssistantSetupRecipes>>;
15
+ /** The screenshot views under their original entity or alias key, keyed by `agentScreenshot` instance name. */
16
+ readonly screenshots: Readonly<Record<string, Readonly<Record<string, AssistantSetupField>>>>;
15
17
  readonly actions: {
16
18
  readonly [ACTION in keyof ACTIONS]?: AssistantSetupField;
17
19
  };
@@ -1 +1 @@
1
- export const projectAssistantSetupManifest=(e,i)=>{let t=e=>Object.fromEntries(Object.entries(e).map(([e,i])=>[e,{groups:Object.fromEntries(i.groups.map(e=>[e.instanceName,{...void 0===e.description?{}:{description:e.description},...!e.dryRuns?{allowDryRuns:!1}:{}}]))}])),s=e.declarations;return{entities:Object.fromEntries(Object.entries(s.entities).map(([e,i])=>[e,Object.fromEntries(i.map(e=>[e.source,{...!e.describedByManifest||void 0===e.valueDescription?{}:{description:e.valueDescription}}]))])),deletable:Object.fromEntries(s.deletable.map(e=>[e,{}])),writable:Object.fromEntries(Object.entries(s.writable).map(([e,i])=>[e,Object.fromEntries(Object.entries(i).map(([e,i])=>{let t=Object.values(i.members).find(e=>e.options)?.options?.options;return[e,t?{options:{...t.validate?{validate:!0}:{},...!t.dryRuns?{allowDryRuns:!1}:{}}}:{}]}))])),childRecipes:t(s.childRecipes),replaceRecipes:t(s.replaceRecipes),actions:Object.fromEntries(e.actionFields.map(e=>[e.actionName,void 0===e.description?{}:{description:e.description}])),...i?{instructions:i.instructions??void 0,ai:{...i.ai}}:{}}};
1
+ export const projectAssistantSetupManifest=(e,t)=>{let i=e=>Object.fromEntries(Object.entries(e).map(([e,t])=>[e,{groups:Object.fromEntries(t.groups.map(e=>[e.instanceName,{...void 0===e.description?{}:{description:e.description},...!e.dryRuns?{allowDryRuns:!1}:{}}]))}])),s=e.declarations;return{entities:Object.fromEntries(Object.entries(s.entities).map(([e,t])=>[e,Object.fromEntries(t.map(e=>[e.source,{...!e.describedByManifest||void 0===e.valueDescription?{}:{description:e.valueDescription}}]))])),deletable:Object.fromEntries(s.deletable.map(e=>[e,{}])),writable:Object.fromEntries(Object.entries(s.writable).map(([e,t])=>[e,Object.fromEntries(Object.entries(t).map(([e,t])=>{let i=Object.values(t.members).find(e=>e.options)?.options?.options;return[e,i?{options:{...i.validate?{validate:!0}:{},...!i.dryRuns?{allowDryRuns:!1}:{}}}:{}]}))])),childRecipes:i(s.childRecipes),replaceRecipes:i(s.replaceRecipes),screenshots:Object.fromEntries(Object.entries(s.screenshots).map(([e,t])=>[e,Object.fromEntries(t.map(({instanceName:e,description:t})=>[e,{description:t}]))])),actions:Object.fromEntries(e.actionFields.map(e=>[e.actionName,void 0===e.description?{}:{description:e.description}])),...t?{instructions:t.instructions??void 0,ai:{...t.ai}}:{}}};
@@ -41,6 +41,8 @@ export interface AssistantRecipeContext {
41
41
  /** Resolves a title in the current language, for the key of a recipe that declares none. */
42
42
  readonly resolveLocalizable: (message: Localizable) => string;
43
43
  }
44
+ /** What reading a recipe group needs: listing never cooks, so the panel can read a group without a cooker. */
45
+ type AssistantRecipeReadContext = Pick<AssistantRecipeContext, 'componentReader' | 'resolveLocalizable'>;
44
46
  /** One recipe of a group as the assistant addresses it: the list item and its key, unique within the group. */
45
47
  export interface AssistantRecipe {
46
48
  readonly key: string;
@@ -73,7 +75,7 @@ export declare const findAssistantRecipeGroups: (manifest: AssistantManifest, ki
73
75
  * assistant sees the groups the configurator's own controls would offer. A list item without recipes
74
76
  * adds nothing and is left out.
75
77
  */
76
- export declare const readAssistantRecipeGroup: (kind: AssistantRecipeKind, group: AssistantRecipeGroup, entityId: DomainEntityId<string>, state: AnyDomainState, context: AssistantRecipeContext) => AssistantRecipeGroupSnapshot | null;
78
+ export declare const readAssistantRecipeGroup: (kind: AssistantRecipeKind, group: AssistantRecipeGroup, entityId: DomainEntityId<string>, state: AnyDomainState, context: AssistantRecipeReadContext) => AssistantRecipeGroupSnapshot | null;
77
79
  /**
78
80
  * The updates of one recipe of a group for the entity `entityId`, computed from `state`: the same
79
81
  * updates, with the same tag, the configurator's own controls make. A recipe of a child group is
@@ -1 +1 @@
1
- import{z as e}from"zod";import{RoutingStateSchema as t,parseRouteAttribute as a}from"./route-property.js";import{createWebComponentPropertyDescriptor as r,webComponentAttributeParsers as n}from"./web-component-property.js";export const standardWebComponentProperties={onEvent:r({schema:e.function().args(e.object({type:e.string(),payload:e.unknown()})).returns(e.unknown()),defaultValue:void 0,attributeParser:n.globalVariable,attributeNames:["on-event","onevent"]}),onAttached:r({schema:e.function().args(e.unknown().describe("The web component instance")).returns(e.unknown().describe("Nothing should be returned, but validation will not fail if something is (important for async handlers)")),defaultValue:void 0,attributeParser:n.globalVariable,attributeNames:["on-attached","onattached"]}),locale:r({schema:e.string(),defaultValue:"en",attributeParser:n.string,attributeNames:["locale"]}),nonce:r({schema:e.string(),defaultValue:void 0,attributeParser:n.string,attributeNames:["nonce"]}),modalZIndex:r({schema:e.number().int(),defaultValue:9910,attributeParser:n.number,attributeNames:["modal-zindex","modalzindex","modal-z-index"]}),expanded:r({schema:e.boolean(),defaultValue:!1,attributeParser:n.boolean,attributeNames:["expanded"]}),mode:r({schema:e.enum(["configurator","admin","standalone-admin"]),defaultValue:"configurator",attributeParser:n.string,attributeNames:["mode"]}),presetTags:r({schema:e.array(e.string()).nullable(),defaultValue:null,attributeParser:n.commaSeparatedStrings,attributeNames:["preset-tags"]}),route:r({schema:t,defaultValue:{route:"Index"},attributeParser:a,attributeNames:["route"]}),sessionToken:r({schema:e.string(),defaultValue:void 0,attributeParser:n.string,attributeNames:["session-token","sessiontoken"]}),adminSessionToken:r({schema:e.string(),defaultValue:void 0,attributeParser:n.string,attributeNames:["admin-session-token","adminsessiontoken"]}),refreshToken:r({schema:e.string(),defaultValue:void 0,attributeParser:n.string,attributeNames:["refresh-token","refreshtoken"]}),authorizationCode:r({schema:e.string(),defaultValue:void 0,attributeParser:n.string,attributeNames:["authorization-code","authorizationcode"]}),containerZIndex:r({schema:e.number().int(),defaultValue:9900,attributeParser:n.number,attributeNames:["container-zindex","containerzindex","container-z-index"]}),htmlFontSize:r({schema:e.number().int(),defaultValue:16,attributeParser:n.number,attributeNames:["html-font-size","htmlfontsize"]}),integrationMode:r({schema:e.enum(["page","handoff","widget","headless"]),defaultValue:"page",attributeParser:n.string,attributeNames:["integration-mode","integrationmode"]}),power:r({schema:e.enum(["on","standby","off"]),defaultValue:"on",attributeParser:n.string,attributeNames:["power"]}),readonly:r({schema:e.boolean(),defaultValue:!1,attributeParser:n.boolean,attributeNames:["readonly"]})};
1
+ import{z as e}from"zod";import{DEFAULT_FALLBACK_LOCALE as t}from"#package/i18n";import{RoutingStateSchema as a,parseRouteAttribute as r}from"./route-property.js";import{createWebComponentPropertyDescriptor as n,webComponentAttributeParsers as i}from"./web-component-property.js";export const standardWebComponentProperties={onEvent:n({schema:e.function().args(e.object({type:e.string(),payload:e.unknown()})).returns(e.unknown()),defaultValue:void 0,attributeParser:i.globalVariable,attributeNames:["on-event","onevent"]}),onAttached:n({schema:e.function().args(e.unknown().describe("The web component instance")).returns(e.unknown().describe("Nothing should be returned, but validation will not fail if something is (important for async handlers)")),defaultValue:void 0,attributeParser:i.globalVariable,attributeNames:["on-attached","onattached"]}),locale:n({schema:e.string(),defaultValue:t,attributeParser:i.string,attributeNames:["locale"]}),nonce:n({schema:e.string(),defaultValue:void 0,attributeParser:i.string,attributeNames:["nonce"]}),modalZIndex:n({schema:e.number().int(),defaultValue:9910,attributeParser:i.number,attributeNames:["modal-zindex","modalzindex","modal-z-index"]}),expanded:n({schema:e.boolean(),defaultValue:!1,attributeParser:i.boolean,attributeNames:["expanded"]}),mode:n({schema:e.enum(["configurator","admin","standalone-admin"]),defaultValue:"configurator",attributeParser:i.string,attributeNames:["mode"]}),presetTags:n({schema:e.array(e.string()).nullable(),defaultValue:null,attributeParser:i.commaSeparatedStrings,attributeNames:["preset-tags"]}),route:n({schema:a,defaultValue:{route:"Index"},attributeParser:r,attributeNames:["route"]}),sessionToken:n({schema:e.string(),defaultValue:void 0,attributeParser:i.string,attributeNames:["session-token","sessiontoken"]}),adminSessionToken:n({schema:e.string(),defaultValue:void 0,attributeParser:i.string,attributeNames:["admin-session-token","adminsessiontoken"]}),refreshToken:n({schema:e.string(),defaultValue:void 0,attributeParser:i.string,attributeNames:["refresh-token","refreshtoken"]}),authorizationCode:n({schema:e.string(),defaultValue:void 0,attributeParser:i.string,attributeNames:["authorization-code","authorizationcode"]}),containerZIndex:n({schema:e.number().int(),defaultValue:9900,attributeParser:i.number,attributeNames:["container-zindex","containerzindex","container-z-index"]}),htmlFontSize:n({schema:e.number().int(),defaultValue:16,attributeParser:i.number,attributeNames:["html-font-size","htmlfontsize"]}),integrationMode:n({schema:e.enum(["page","handoff","widget","headless"]),defaultValue:"page",attributeParser:i.string,attributeNames:["integration-mode","integrationmode"]}),power:n({schema:e.enum(["on","standby","off"]),defaultValue:"on",attributeParser:i.string,attributeNames:["power"]}),readonly:n({schema:e.boolean(),defaultValue:!1,attributeParser:i.boolean,attributeNames:["readonly"]})};
@@ -23,10 +23,12 @@ export declare const webComponentAttributeParsers: {
23
23
  readonly commaSeparatedStrings: (value: string) => string[];
24
24
  /**
25
25
  * Parses a string into a boolean.
26
+ * - `""`, a bare attribute such as `<salsita-configurator readonly>` -> `true`
26
27
  * - `"true"` -> `true`
27
28
  * - `"false"` -> `false`
28
29
  *
29
- * All other values are considered invalid.
30
+ * The web component also reads the attribute's own name as its value (`readonly="readonly"`) as `true`,
31
+ * as HTML does for boolean attributes. All other values are considered invalid.
30
32
  */
31
33
  readonly boolean: (value: string) => boolean;
32
34
  /**
@@ -1,2 +1,2 @@
1
- import{match as r}from"ts-pattern";export const EmptyProperty=Symbol("emptyProperty");export const webComponentAttributeParsers={globalVariable:r=>{if(!Object.hasOwn(window,r))throw Error(`Global variable ${r} not found`);return window[r]},string:String,number:r=>{let t=Number(r);if(isNaN(t))throw Error(`Invalid number: ${r}`);return t},commaSeparatedStrings:r=>r.split(",").map(r=>r.trim()).filter(r=>""!==r),boolean:t=>r(t).with("true",()=>!0).with("false",()=>!1).otherwise(()=>{throw Error(`Invalid boolean: ${t}`)}),json:r=>{try{return JSON.parse(r)}catch(t){throw Error(`Invalid JSON: ${r}`)}},shareUrl:r=>{let t=new URL(r);return{ca:t.searchParams.get("ca"),cid:t.searchParams.get("cid")}}};export function createWebComponentPropertyDescriptor(r){if(void 0!==r.attributeParser&&void 0!==r.attributeNames&&(void 0===r.attributeParser||void 0===r.attributeNames))throw Error(`When exposing WebComponent properties as attributes, both 'attributeParser' and 'attributeNames' must be specified.
1
+ import{match as r}from"ts-pattern";export const EmptyProperty=Symbol("emptyProperty");export const webComponentAttributeParsers={globalVariable:r=>{if(!Object.hasOwn(window,r))throw Error(`Global variable ${r} not found`);return window[r]},string:String,number:r=>{let t=Number(r);if(isNaN(t))throw Error(`Invalid number: ${r}`);return t},commaSeparatedStrings:r=>r.split(",").map(r=>r.trim()).filter(r=>""!==r),boolean:t=>r(t).with("","true",()=>!0).with("false",()=>!1).otherwise(()=>{throw Error(`Invalid boolean: ${t}`)}),json:r=>{try{return JSON.parse(r)}catch(t){throw Error(`Invalid JSON: ${r}`)}},shareUrl:r=>{let t=new URL(r);return{ca:t.searchParams.get("ca"),cid:t.searchParams.get("cid")}}};export function createWebComponentPropertyDescriptor(r){if(void 0!==r.attributeParser&&void 0!==r.attributeNames&&(void 0===r.attributeParser||void 0===r.attributeNames))throw Error(`When exposing WebComponent properties as attributes, both 'attributeParser' and 'attributeNames' must be specified.
2
2
  To migrate from previous versions of the SDK, add 'attributeNames: [<property-name-in-lowercase>]'.`);return"required"in r?{attributeParser:void 0,attributeNames:void 0,defaultValue:r.mockValue,...r}:{attributeNames:void 0,attributeParser:void 0,required:!1,...r}}
@@ -4,7 +4,7 @@ import { type SystemComponentTypeConstraint } from './core/index.js';
4
4
  *
5
5
  * To add a new component the domain spec, add it to this array
6
6
  */
7
- export declare const availableSystemComponents: [import("./index.js").SystemComponentType<"applicationConfig", import("./index.js").ApplicationConfigComponentState, never>, import("./index.js").SystemComponentType<"price", import("./index.js").PriceComponentState, never>, import("./index.js").SystemComponentType<"detail", import("./index.js").DetailComponentState, never>, import("./index.js").SystemComponentType<"canvasConfig", import("./index.js").CanvasConfigComponentState, never>, import("./index.js").SystemComponentType<"canvasCustomEnvironment", import("./index.js").CanvasCustomEnvironmentComponentState, never>, import("./index.js").SystemComponentType<"canvasPresetEnvironment", import("./index.js").CanvasPresetEnvironmentComponentState, never>, import("./index.js").SystemComponentType<"dimensionIndicator", import("./index.js").DimensionIndicatorComponentState, never>, import("./index.js").SystemComponentType<"angleIndicator", import("./index.js").AngleIndicatorComponentState, never>, import("./index.js").SystemComponentType<"dragHandle", import("./index.js").DragHandleComponentState, "draggableRotationY" | "draggableX" | "draggableY" | "draggableZ">, import("./index.js").SystemComponentType<"rotationHandle", import("./index.js").RotationHandleComponentState, never>, import("./index.js").SystemComponentType<"rotatable", import("./index.js").RotatableComponentState, "rotation">, import("./index.js").SystemComponentType<"sketching", import("./index.js").SketchingComponentState, never>, import("./index.js").SystemComponentType<"sketchingDraw", import("./index.js").SketchingDrawComponentState, never>, import("./index.js").SystemComponentType<"sketchingEdit", import("./index.js").SketchingEditComponentState, never>, import("./index.js").SystemComponentType<"sketchingLine", import("./index.js").SketchingLineComponentState, "angle" | "length" | "x" | "y">, import("./index.js").SystemComponentType<"sketchingRectangle", import("./index.js").SketchingRectangleComponentState, "angle" | "depth" | "width" | "x" | "y">, import("./index.js").SystemComponentType<"sceneEntityRemoteObject", import("./index.js").SceneEntityRemoteObjectComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityObject", import("./index.js").SceneEntityObjectComponentState, never>, import("./index.js").SystemComponentType<"customSceneEntity", import("./index.js").CustomSceneEntityComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityWallObject", import("./index.js").SceneEntityWallObjectComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityFloorObject", import("./index.js").SceneEntityFloorObjectComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityBoxObject", import("./index.js").SceneEntityBoxObjectComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityAmbientLight", import("./index.js").SceneEntityAmbientLightComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityDirectionalLight", import("./index.js").SceneEntityDirectionalLightComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityPointLight", import("./index.js").SceneEntityPointLightComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityRectAreaLight", import("./index.js").SceneEntityRectAreaLightComponentState, never>, import("./index.js").SystemComponentType<"sceneEntitySpotLight", import("./index.js").SceneEntitySpotLightComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityProperties", import("./index.js").SceneEntityPropertiesComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityObjectProperties", import("./index.js").SceneEntityObjectPropertiesComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityObjectGroup", import("./index.js").SceneEntityObjectGroupComponentState, never>, import("./index.js").SystemComponentType<"hiddenEntity", import("./index.js").HiddenEntityComponentState, never>, import("./index.js").SystemComponentType<"cameraBasedHiddenEntity", import("./index.js").CameraBasedHiddenEntityComponentState, never>, import("./index.js").SystemComponentType<"cameraBasedHiddenEntityObject", import("./index.js").CameraBasedHiddenEntityObjectComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityRemoteMaterialOverride", import("./index.js").SceneEntityRemoteMaterialOverrideComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityLocalMaterialOverride", import("./index.js").SceneEntityLocalMaterialOverrideComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityObjectRemoteMaterialOverride", import("./index.js").SceneEntityObjectRemoteMaterialOverrideComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityObjectLocalMaterialOverride", import("./index.js").SceneEntityObjectLocalMaterialOverrideComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityObjectTransmissiveMaterialOverride", import("./index.js").SceneEntityObjectTransmissiveMaterialOverrideComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityTransmissiveMaterialOverride", import("./index.js").SceneEntityTransmissiveMaterialOverrideComponentState, never>, import("./index.js").SystemComponentType<"materialOverridePropertyTransition", import("./index.js").MaterialOverridePropertyTransitionComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityAnimation", import("./index.js").SceneEntityAnimationComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityObjectClip", import("./index.js").SceneEntityObjectClipComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityObjectTextDecal", import("./index.js").SceneEntityObjectTextDecalComponentState, never>, import("./index.js").SystemComponentType<"fitRootPerspectiveCamera", import("./index.js").FitRootPerspectiveCameraComponentState, never>, import("./index.js").SystemComponentType<"fitRootOrthographicCamera", import("./index.js").FitRootOrthographicCameraComponentState, never>, import("./index.js").SystemComponentType<"fitEntityPerspectiveCamera", import("./index.js").FitEntityPerspectiveCameraComponentState, never>, import("./index.js").SystemComponentType<"fitEntityOrthographicCamera", import("./index.js").FitEntityOrthographicCameraComponentState, never>, import("./index.js").SystemComponentType<"fitSelectionPerspectiveCamera", import("./index.js").FitSelectionPerspectiveCameraComponentState, never>, import("./index.js").SystemComponentType<"fitSelectionOrthographicCamera", import("./index.js").FitSelectionOrthographicCameraComponentState, never>, import("./index.js").SystemComponentType<"staticPerspectiveCamera", import("./index.js").StaticPerspectiveCameraComponentState, never>, import("./index.js").SystemComponentType<"staticOrthographicCamera", import("./index.js").StaticOrthographicCameraComponentState, never>, import("./index.js").SystemComponentType<"autorotateCamera", import("./index.js").AutorotateCameraComponentState, never>, import("./index.js").SystemComponentType<"boundingBox", import("./index.js").BoundingBoxComponentState, never>, import("./index.js").SystemComponentType<"boundingSphere", import("./index.js").BoundingSphereComponentState, never>, import("./index.js").SystemComponentType<"pivotPoint", import("./index.js").PivotPointComponentState, never>, import("./index.js").SystemComponentType<"snapPoint", import("./index.js").SnapPointComponentState, never>, import("./index.js").SystemComponentType<"snapEdge", import("./index.js").SnapEdgeComponentState, never>, import("./index.js").SystemComponentType<"snapPlane", import("./index.js").SnapPlaneComponentState, never>, import("./index.js").SystemComponentType<"snapAxis", import("./index.js").SnapAxisComponentState, never>, import("./index.js").SystemComponentType<"collisionBoxGeometry", import("./index.js").CollisionBoxGeometryComponentState, never>, import("./index.js").SystemComponentType<"collisionGeometry", import("./index.js").CollisionGeometryComponentState, never>, import("./index.js").SystemComponentType<"collisionPointGeometry", import("./index.js").CollisionPointGeometryComponentState, never>, import("./index.js").SystemComponentType<"constraint", import("./index.js").ConstraintComponentState, never>, import("./index.js").SystemComponentType<"selectable", import("./index.js").SelectableComponentState, never>, import("./index.js").SystemComponentType<"htmlHotspot", import("./index.js").HtmlHotspotComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityObjectHtmlHotspot", import("./index.js").SceneEntityObjectHtmlHotspotComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityControl", import("./index.js").SceneEntityControlComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityAddFab", import("./index.js").SceneEntityAddFabComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityDeleteFab", import("./index.js").SceneEntityDeleteFabComponentState, never>, import("./index.js").SystemComponentType<"sceneEntitySelectHotspot", import("./index.js").SceneEntitySelectHotspotComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityNavigationHotspot", import("./index.js").SceneEntityNavigationHotspotComponentState, never>, import("./index.js").SystemComponentType<"toolMenuFab", import("./index.js").ToolMenuFabComponentState, never>, import("./index.js").SystemComponentType<"exitToolModeFab", import("./index.js").ExitToolModeFabComponentState, never>, import("./index.js").SystemComponentType<"entityHeader", import("./index.js").EntityHeaderComponentState, never>, import("./index.js").SystemComponentType<"propertyPage", import("./index.js").PropertyPageComponentState, never>, import("./index.js").SystemComponentType<"toolbar", import("./index.js").ToolbarComponentState, never>, import("./index.js").SystemComponentType<"viewControls", import("./index.js").ViewControlsComponentState, never>, import("./index.js").SystemComponentType<"toolControls", import("./index.js").ToolControlsComponentState, never>, import("./index.js").SystemComponentType<"sidebarTabs", import("./index.js").SidebarTabsComponentState, never>, import("./index.js").SystemComponentType<"horizontalTabs", import("./index.js").HorizontalTabsComponentState, never>, import("./index.js").SystemComponentType<"navigationSteps", import("./index.js").NavigationStepsComponentState, never>, import("./index.js").SystemComponentType<"finalizeAction", import("./index.js").FinalizeActionComponentState, never>, import("./index.js").SystemComponentType<"otherAction", import("./index.js").OtherActionComponentState, never>, import("./index.js").SystemComponentType<"basicSidebarFooter", import("./index.js").BasicSidebarFooterComponentState, never>, import("./index.js").SystemComponentType<"universalSidebarFooter", import("./index.js").UniversalSidebarFooterComponentState, never>, import("./index.js").SystemComponentType<"readSidebarFooter", import("./index.js").ReadSidebarFooterComponentState, never>, import("./index.js").SystemComponentType<"customSidebarFooter", import("./index.js").CustomSidebarFooterComponentState, never>, import("./index.js").SystemComponentType<"hiddenSidebarFooter", import("./index.js").HiddenSidebarFooterComponentState, never>, import("./index.js").SystemComponentType<"canvasPadding", import("./index.js").CanvasPaddingComponentState, never>, import("./index.js").SystemComponentType<"floatingHeader", import("./index.js").FloatingHeaderComponentState, never>, import("./index.js").SystemComponentType<"customHeader", import("./index.js").CustomHeaderComponentState, never>, import("./index.js").SystemComponentType<"fixedHeader", import("./index.js").FixedHeaderComponentState, never>, import("./index.js").SystemComponentType<"hiddenHeader", import("./index.js").HiddenHeaderComponentState, never>, import("./index.js").SystemComponentType<"replaceEntityRecipes", import("./index.js").ReplaceEntityRecipesComponentState, never>, import("./index.js").SystemComponentType<"replaceEntityRecipeHierarchy", import("./index.js").ReplaceEntityRecipeHierarchyComponentState, never>, import("./index.js").SystemComponentType<"childEntityRecipes", import("./index.js").ChildEntityRecipesComponentState, never>, import("./index.js").SystemComponentType<"childEntityRecipeHierarchy", import("./index.js").ChildEntityRecipeHierarchyComponentState, never>, import("./index.js").SystemComponentType<"materialSwatch", import("./index.js").MaterialSwatchComponentState, "selectedSwatchKey">, import("./index.js").SystemComponentType<"offsetAnchors", import("./index.js").OffsetAnchorsComponentState, never>, import("./index.js").SystemComponentType<"offsetIndicator", import("./index.js").OffsetIndicatorComponentState, never>, import("./index.js").SystemComponentType<"distanceDimension", import("./index.js").DistanceDimensionComponentState, "value">, import("./index.js").SystemComponentType<"angleDimension", import("./index.js").AngleValue, "value">, import("./index.js").SystemComponentType<"genericDimension", import("./index.js").GenericValue, "value">, import("./index.js").SystemComponentType<"distanceDimensionSelect", import("./index.js").DistanceDimensionSelectComponentState, "value">, import("./index.js").SystemComponentType<"colorValue", import("./index.js").ColorValueComponentState, "value">, import("./index.js").SystemComponentType<"textValue", import("./index.js").TextValueComponentState, "value">, import("./index.js").SystemComponentType<"multilingualTextValue", import("./index.js").MultilingualTextValueComponentState, "value">, import("./index.js").SystemComponentType<"attributeSelection", import("./index.js").AttributeSelectionComponentState, "value">, import("./index.js").SystemComponentType<"attributeSwitch", import("./index.js").AttributeSwitchComponentState, "value">, import("./index.js").SystemComponentType<"childEntitySelection", import("./index.js").ChildEntitySelectionComponentState, never>, import("./index.js").SystemComponentType<"size", import("./index.js").SizeComponentState, "sizeX" | "sizeY" | "sizeZ">, import("./index.js").SystemComponentType<"offset", import("./index.js").OffsetComponentState, "offsetX" | "offsetY" | "offsetZ">, import("./index.js").SystemComponentType<"editableAngleIndicator", import("./index.js").EditableAngleIndicatorComponentState, never>, import("./index.js").SystemComponentType<"editableDistanceDimensionIndicator", import("./index.js").EditableDistanceDimensionIndicatorComponentState, never>, import("./index.js").SystemComponentType<"editableOffsetIndicator", import("./index.js").EditableOffsetIndicatorComponentState, never>, import("./index.js").SystemComponentType<"editableSizeIndicator", import("./index.js").EditableSizeIndicatorComponentState, never>, import("./index.js").SystemComponentType<"listSelectorDimensionIndicator", import("./index.js").ListSelectorDimensionIndicatorComponentState, never>, import("./index.js").SystemComponentType<"hotspotDragHandle", import("./index.js").HotspotDragHandleComponentState, "draggableX" | "draggableY" | "draggableZ">, import("./index.js").SystemComponentType<"simpleSummary", import("./index.js").SimpleSummaryComponentState, never>, import("./index.js").SystemComponentType<"clientSideImage", import("./index.js").ClientSideImageComponentState, never>, import("./index.js").SystemComponentType<"saveTemplateThumbnail", import("./index.js").SaveTemplateThumbnailComponentState, never>, import("./index.js").SystemComponentType<"projectedEntities", import("./index.js").ProjectedEntitiesComponentState, never>, import("./index.js").SystemComponentType<"violations", import("./index.js").ViolationComponentState, never>];
7
+ export declare const availableSystemComponents: [import("./index.js").SystemComponentType<"applicationConfig", import("./index.js").ApplicationConfigComponentState, never>, import("./index.js").SystemComponentType<"price", import("./index.js").PriceComponentState, never>, import("./index.js").SystemComponentType<"detail", import("./index.js").DetailComponentState, never>, import("./index.js").SystemComponentType<"canvasConfig", import("./index.js").CanvasConfigComponentState, never>, import("./index.js").SystemComponentType<"canvasCustomEnvironment", import("./index.js").CanvasCustomEnvironmentComponentState, never>, import("./index.js").SystemComponentType<"canvasPresetEnvironment", import("./index.js").CanvasPresetEnvironmentComponentState, never>, import("./index.js").SystemComponentType<"dimensionIndicator", import("./index.js").DimensionIndicatorComponentState, never>, import("./index.js").SystemComponentType<"angleIndicator", import("./index.js").AngleIndicatorComponentState, never>, import("./index.js").SystemComponentType<"dragHandle", import("./index.js").DragHandleComponentState, "draggableRotationY" | "draggableX" | "draggableY" | "draggableZ">, import("./index.js").SystemComponentType<"rotationHandle", import("./index.js").RotationHandleComponentState, never>, import("./index.js").SystemComponentType<"rotatable", import("./index.js").RotatableComponentState, "rotation">, import("./index.js").SystemComponentType<"sketching", import("./index.js").SketchingComponentState, never>, import("./index.js").SystemComponentType<"sketchingDraw", import("./index.js").SketchingDrawComponentState, never>, import("./index.js").SystemComponentType<"sketchingEdit", import("./index.js").SketchingEditComponentState, never>, import("./index.js").SystemComponentType<"sketchingLine", import("./index.js").SketchingLineComponentState, "angle" | "length" | "x" | "y">, import("./index.js").SystemComponentType<"sketchingRectangle", import("./index.js").SketchingRectangleComponentState, "angle" | "depth" | "width" | "x" | "y">, import("./index.js").SystemComponentType<"sceneEntityRemoteObject", import("./index.js").SceneEntityRemoteObjectComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityObject", import("./index.js").SceneEntityObjectComponentState, never>, import("./index.js").SystemComponentType<"customSceneEntity", import("./index.js").CustomSceneEntityComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityWallObject", import("./index.js").SceneEntityWallObjectComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityFloorObject", import("./index.js").SceneEntityFloorObjectComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityBoxObject", import("./index.js").SceneEntityBoxObjectComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityAmbientLight", import("./index.js").SceneEntityAmbientLightComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityDirectionalLight", import("./index.js").SceneEntityDirectionalLightComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityPointLight", import("./index.js").SceneEntityPointLightComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityRectAreaLight", import("./index.js").SceneEntityRectAreaLightComponentState, never>, import("./index.js").SystemComponentType<"sceneEntitySpotLight", import("./index.js").SceneEntitySpotLightComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityProperties", import("./index.js").SceneEntityPropertiesComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityObjectProperties", import("./index.js").SceneEntityObjectPropertiesComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityObjectGroup", import("./index.js").SceneEntityObjectGroupComponentState, never>, import("./index.js").SystemComponentType<"hiddenEntity", import("./index.js").HiddenEntityComponentState, never>, import("./index.js").SystemComponentType<"cameraBasedHiddenEntity", import("./index.js").CameraBasedHiddenEntityComponentState, never>, import("./index.js").SystemComponentType<"cameraBasedHiddenEntityObject", import("./index.js").CameraBasedHiddenEntityObjectComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityRemoteMaterialOverride", import("./index.js").SceneEntityRemoteMaterialOverrideComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityLocalMaterialOverride", import("./index.js").SceneEntityLocalMaterialOverrideComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityObjectRemoteMaterialOverride", import("./index.js").SceneEntityObjectRemoteMaterialOverrideComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityObjectLocalMaterialOverride", import("./index.js").SceneEntityObjectLocalMaterialOverrideComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityObjectTransmissiveMaterialOverride", import("./index.js").SceneEntityObjectTransmissiveMaterialOverrideComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityTransmissiveMaterialOverride", import("./index.js").SceneEntityTransmissiveMaterialOverrideComponentState, never>, import("./index.js").SystemComponentType<"materialOverridePropertyTransition", import("./index.js").MaterialOverridePropertyTransitionComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityAnimation", import("./index.js").SceneEntityAnimationComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityObjectClip", import("./index.js").SceneEntityObjectClipComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityObjectTextDecal", import("./index.js").SceneEntityObjectTextDecalComponentState, never>, import("./index.js").SystemComponentType<"fitRootPerspectiveCamera", import("./index.js").FitRootPerspectiveCameraComponentState, never>, import("./index.js").SystemComponentType<"fitRootOrthographicCamera", import("./index.js").FitRootOrthographicCameraComponentState, never>, import("./index.js").SystemComponentType<"fitEntityPerspectiveCamera", import("./index.js").FitEntityPerspectiveCameraComponentState, never>, import("./index.js").SystemComponentType<"fitEntityOrthographicCamera", import("./index.js").FitEntityOrthographicCameraComponentState, never>, import("./index.js").SystemComponentType<"fitSelectionPerspectiveCamera", import("./index.js").FitSelectionPerspectiveCameraComponentState, never>, import("./index.js").SystemComponentType<"fitSelectionOrthographicCamera", import("./index.js").FitSelectionOrthographicCameraComponentState, never>, import("./index.js").SystemComponentType<"staticPerspectiveCamera", import("./index.js").StaticPerspectiveCameraComponentState, never>, import("./index.js").SystemComponentType<"staticOrthographicCamera", import("./index.js").StaticOrthographicCameraComponentState, never>, import("./index.js").SystemComponentType<"autorotateCamera", import("./index.js").AutorotateCameraComponentState, never>, import("./index.js").SystemComponentType<"boundingBox", import("./index.js").BoundingBoxComponentState, never>, import("./index.js").SystemComponentType<"boundingSphere", import("./index.js").BoundingSphereComponentState, never>, import("./index.js").SystemComponentType<"pivotPoint", import("./index.js").PivotPointComponentState, never>, import("./index.js").SystemComponentType<"snapPoint", import("./index.js").SnapPointComponentState, never>, import("./index.js").SystemComponentType<"snapEdge", import("./index.js").SnapEdgeComponentState, never>, import("./index.js").SystemComponentType<"snapPlane", import("./index.js").SnapPlaneComponentState, never>, import("./index.js").SystemComponentType<"snapAxis", import("./index.js").SnapAxisComponentState, never>, import("./index.js").SystemComponentType<"collisionBoxGeometry", import("./index.js").CollisionBoxGeometryComponentState, never>, import("./index.js").SystemComponentType<"collisionGeometry", import("./index.js").CollisionGeometryComponentState, never>, import("./index.js").SystemComponentType<"collisionPointGeometry", import("./index.js").CollisionPointGeometryComponentState, never>, import("./index.js").SystemComponentType<"constraint", import("./index.js").ConstraintComponentState, never>, import("./index.js").SystemComponentType<"selectable", import("./index.js").SelectableComponentState, never>, import("./index.js").SystemComponentType<"htmlHotspot", import("./index.js").HtmlHotspotComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityObjectHtmlHotspot", import("./index.js").SceneEntityObjectHtmlHotspotComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityControl", import("./index.js").SceneEntityControlComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityAddFab", import("./index.js").SceneEntityAddFabComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityDeleteFab", import("./index.js").SceneEntityDeleteFabComponentState, never>, import("./index.js").SystemComponentType<"sceneEntitySelectHotspot", import("./index.js").SceneEntitySelectHotspotComponentState, never>, import("./index.js").SystemComponentType<"sceneEntityNavigationHotspot", import("./index.js").SceneEntityNavigationHotspotComponentState, never>, import("./index.js").SystemComponentType<"toolMenuFab", import("./index.js").ToolMenuFabComponentState, never>, import("./index.js").SystemComponentType<"exitToolModeFab", import("./index.js").ExitToolModeFabComponentState, never>, import("./index.js").SystemComponentType<"entityHeader", import("./index.js").EntityHeaderComponentState, never>, import("./index.js").SystemComponentType<"propertyPage", import("./index.js").PropertyPageComponentState, never>, import("./index.js").SystemComponentType<"toolbar", import("./index.js").ToolbarComponentState, never>, import("./index.js").SystemComponentType<"viewControls", import("./index.js").ViewControlsComponentState, never>, import("./index.js").SystemComponentType<"toolControls", import("./index.js").ToolControlsComponentState, never>, import("./index.js").SystemComponentType<"sidebarTabs", import("./index.js").SidebarTabsComponentState, never>, import("./index.js").SystemComponentType<"horizontalTabs", import("./index.js").HorizontalTabsComponentState, never>, import("./index.js").SystemComponentType<"navigationSteps", import("./index.js").NavigationStepsComponentState, never>, import("./index.js").SystemComponentType<"finalizeAction", import("./index.js").FinalizeActionComponentState, never>, import("./index.js").SystemComponentType<"otherAction", import("./index.js").OtherActionComponentState, never>, import("./index.js").SystemComponentType<"basicSidebarFooter", import("./index.js").BasicSidebarFooterComponentState, never>, import("./index.js").SystemComponentType<"universalSidebarFooter", import("./index.js").UniversalSidebarFooterComponentState, never>, import("./index.js").SystemComponentType<"readSidebarFooter", import("./index.js").ReadSidebarFooterComponentState, never>, import("./index.js").SystemComponentType<"customSidebarFooter", import("./index.js").CustomSidebarFooterComponentState, never>, import("./index.js").SystemComponentType<"hiddenSidebarFooter", import("./index.js").HiddenSidebarFooterComponentState, never>, import("./index.js").SystemComponentType<"canvasPadding", import("./index.js").CanvasPaddingComponentState, never>, import("./index.js").SystemComponentType<"floatingHeader", import("./index.js").FloatingHeaderComponentState, never>, import("./index.js").SystemComponentType<"customHeader", import("./index.js").CustomHeaderComponentState, never>, import("./index.js").SystemComponentType<"fixedHeader", import("./index.js").FixedHeaderComponentState, never>, import("./index.js").SystemComponentType<"hiddenHeader", import("./index.js").HiddenHeaderComponentState, never>, import("./index.js").SystemComponentType<"replaceEntityRecipes", import("./index.js").ReplaceEntityRecipesComponentState, never>, import("./index.js").SystemComponentType<"replaceEntityRecipeHierarchy", import("./index.js").ReplaceEntityRecipeHierarchyComponentState, never>, import("./index.js").SystemComponentType<"childEntityRecipes", import("./index.js").ChildEntityRecipesComponentState, never>, import("./index.js").SystemComponentType<"childEntityRecipeHierarchy", import("./index.js").ChildEntityRecipeHierarchyComponentState, never>, import("./index.js").SystemComponentType<"materialSwatch", import("./index.js").MaterialSwatchComponentState, "selectedSwatchKey">, import("./index.js").SystemComponentType<"offsetAnchors", import("./index.js").OffsetAnchorsComponentState, never>, import("./index.js").SystemComponentType<"offsetIndicator", import("./index.js").OffsetIndicatorComponentState, never>, import("./index.js").SystemComponentType<"distanceDimension", import("./index.js").DistanceDimensionComponentState, "value">, import("./index.js").SystemComponentType<"angleDimension", import("./index.js").AngleValue, "value">, import("./index.js").SystemComponentType<"genericDimension", import("./index.js").GenericValue, "value">, import("./index.js").SystemComponentType<"distanceDimensionSelect", import("./index.js").DistanceDimensionSelectComponentState, "value">, import("./index.js").SystemComponentType<"colorValue", import("./index.js").ColorValueComponentState, "value">, import("./index.js").SystemComponentType<"textValue", import("./index.js").TextValueComponentState, "value">, import("./index.js").SystemComponentType<"multilingualTextValue", import("./index.js").MultilingualTextValueComponentState, "value">, import("./index.js").SystemComponentType<"attributeSelection", import("./index.js").AttributeSelectionComponentState, "value">, import("./index.js").SystemComponentType<"attributeSwitch", import("./index.js").AttributeSwitchComponentState, "value">, import("./index.js").SystemComponentType<"childEntitySelection", import("./index.js").ChildEntitySelectionComponentState, never>, import("./index.js").SystemComponentType<"size", import("./index.js").SizeComponentState, "sizeX" | "sizeY" | "sizeZ">, import("./index.js").SystemComponentType<"offset", import("./index.js").OffsetComponentState, "offsetX" | "offsetY" | "offsetZ">, import("./index.js").SystemComponentType<"editableAngleIndicator", import("./index.js").EditableAngleIndicatorComponentState, never>, import("./index.js").SystemComponentType<"editableDistanceDimensionIndicator", import("./index.js").EditableDistanceDimensionIndicatorComponentState, never>, import("./index.js").SystemComponentType<"editableOffsetIndicator", import("./index.js").EditableOffsetIndicatorComponentState, never>, import("./index.js").SystemComponentType<"editableSizeIndicator", import("./index.js").EditableSizeIndicatorComponentState, never>, import("./index.js").SystemComponentType<"listSelectorDimensionIndicator", import("./index.js").ListSelectorDimensionIndicatorComponentState, never>, import("./index.js").SystemComponentType<"hotspotDragHandle", import("./index.js").HotspotDragHandleComponentState, "draggableX" | "draggableY" | "draggableZ">, import("./index.js").SystemComponentType<"simpleSummary", import("./index.js").SimpleSummaryComponentState, never>, import("./index.js").SystemComponentType<"clientSideImage", import("./index.js").ClientSideImageComponentState, never>, import("./index.js").SystemComponentType<"saveTemplateThumbnail", import("./index.js").SaveTemplateThumbnailComponentState, never>, import("./index.js").SystemComponentType<"agentScreenshot", import("./index.js").AgentScreenshotComponentState, never>, import("./index.js").SystemComponentType<"projectedEntities", import("./index.js").ProjectedEntitiesComponentState, never>, import("./index.js").SystemComponentType<"violations", import("./index.js").ViolationComponentState, never>];
8
8
  /**
9
9
  * Get component by name from all domain spec available components
10
10
  */
@@ -1 +1 @@
1
- import{violationsComponent as e}from"./core/index.js";import{angleIndicatorComponent as o,attributeSwitchComponent as n,autorotateCameraComponent as m,basicSidebarFooterComponent as s,cameraBasedHiddenEntityComponent as t,cameraBasedHiddenEntityObjectComponent as p,canvasConfigComponent as a,canvasCustomEnvironmentComponent as i,canvasPaddingComponent as r,canvasPresetEnvironmentComponent as x,childEntityRecipeHierarchyComponent as c,clientSideImageComponent as l,colorValueComponent as y,customHeaderComponent as d,customSidebarFooterComponent as f,dimensionIndicatorComponent as j,editableAngleIndicatorComponent as b,editableDistanceDimensionIndicatorComponent as v,editableOffsetIndicatorComponent as C,editableSizeIndicatorComponent as S,entityHeaderComponent as w,exitToolModeFabComponent as B,finalizeActionComponent as M,fitSelectionOrthographicCameraComponent as N,fitSelectionPerspectiveCameraComponent as g,fixedHeaderComponent as h,floatingHeaderComponent as k,hiddenHeaderComponent as q,hiddenSidebarFooterComponent as u,horizontalTabsComponent as z,htmlHotspotComponent as A,listSelectorDimensionIndicatorComponent as D,multilingualTextValueComponent as E,navigationStepsComponent as F,offsetAnchorsComponent as G,offsetComponent as H,offsetIndicatorComponent as I,otherActionComponent as J,propertyPageComponent as K,readSidebarFooterComponent as L,replaceEntityRecipeHierarchyComponent as O,rotatableComponent as P,rotationHandleComponent as Q,saveTemplateThumbnailComponent as R,sceneEntityAddFabComponent as T,sceneEntityAnimationComponent as U,sceneEntityControlComponent as V,sceneEntityDeleteFabComponent as W,sceneEntityFloorObjectComponent as X,sceneEntityNavigationHotspotComponent as Y,sceneEntityObjectHtmlHotspotComponent as Z,sceneEntitySelectHotspotComponent as $,sceneEntityWallObjectComponent as _,selectableComponent as ee,sidebarTabsComponent as eo,simpleSummaryComponent as en,sizeComponent as em,sketchingDrawComponent as es,sketchingEditComponent as et,textValueComponent as ep,toolControlsComponent as ea,toolMenuFabComponent as ei,toolbarComponent as er,universalSidebarFooterComponent as ex,viewControlsComponent as ec}from"./extensions/index.js";import{angleDimensionComponent as el,applicationConfigComponent as ey,attributeSelectionComponent as ed,boundingBoxComponent as ef,boundingSphereComponent as ej,childEntityRecipesComponent as eb,childEntitySelectionComponent as ev,collisionBoxGeometryComponent as eC,collisionGeometryComponent as eS,collisionPointGeometryComponent as ew,constraintComponent as eB,customSceneEntityComponent as eM,detailComponent as eN,distanceDimensionComponent as eg,distanceDimensionSelectComponent as eh,dragHandleComponent as ek,fitEntityOrthographicCameraComponent as eq,fitEntityPerspectiveCameraComponent as eu,fitRootOrthographicCameraComponent as ez,fitRootPerspectiveCameraComponent as eA,genericDimensionComponent as eD,hiddenEntityComponent as eE,hotspotDragHandleComponent as eF,materialOverridePropertyTransitionComponent as eG,materialSwatchComponent as eH,pivotPointComponent as eI,priceComponent as eJ,projectedEntitiesComponent as eK,replaceEntityRecipesComponent as eL,sceneEntityAmbientLightComponent as eO,sceneEntityBoxObjectComponent as eP,sceneEntityDirectionalLightComponent as eQ,sceneEntityLocalMaterialOverrideComponent as eR,sceneEntityObjectClipComponent as eT,sceneEntityObjectComponent as eU,sceneEntityObjectGroupComponent as eV,sceneEntityObjectLocalMaterialOverrideComponent as eW,sceneEntityObjectPropertiesComponent as eX,sceneEntityObjectRemoteMaterialOverrideComponent as eY,sceneEntityObjectTextDecalComponent as eZ,sceneEntityObjectTransmissiveMaterialOverrideComponent as e$,sceneEntityPointLightComponent as e_,sceneEntityPropertiesComponent as e0,sceneEntityRectAreaLightComponent as e1,sceneEntityRemoteMaterialOverrideComponent as e2,sceneEntityRemoteObjectComponent as e3,sceneEntitySpotLightComponent as e4,sceneEntityTransmissiveMaterialOverrideComponent as e5,sketchingComponent as e6,sketchingLineComponent as e7,sketchingRectangleComponent as e8,snapAxisComponent as e9,snapEdgeComponent as oe,snapPlaneComponent as oo,snapPointComponent as on,staticOrthographicCameraComponent as om,staticPerspectiveCameraComponent as os}from"./system-components/index.js";export const availableSystemComponents=[ey,eJ,eN,a,i,x,j,o,ek,Q,P,e6,es,et,e7,e8,e3,eU,eM,_,X,eP,eO,eQ,e_,e1,e4,e0,eX,eV,eE,t,p,e2,eR,eY,eW,e$,e5,eG,U,eT,eZ,eA,ez,eu,eq,g,N,os,om,m,ef,ej,eI,on,oe,oo,e9,eC,eS,ew,eB,ee,A,Z,V,T,W,$,Y,ei,B,w,K,er,ec,ea,eo,z,F,M,J,s,ex,L,f,u,r,k,d,h,q,eL,O,eb,c,eH,G,I,eg,el,eD,eh,y,ep,E,ed,n,ev,em,H,b,v,C,S,D,eF,en,l,R,eK,e];export const componentsByName=new Map(availableSystemComponents.map(e=>[e.name,e]));
1
+ import{violationsComponent as e}from"./core/index.js";import{agentScreenshotComponent as o,angleIndicatorComponent as n,attributeSwitchComponent as m,autorotateCameraComponent as s,basicSidebarFooterComponent as t,cameraBasedHiddenEntityComponent as p,cameraBasedHiddenEntityObjectComponent as a,canvasConfigComponent as i,canvasCustomEnvironmentComponent as r,canvasPaddingComponent as x,canvasPresetEnvironmentComponent as c,childEntityRecipeHierarchyComponent as l,clientSideImageComponent as y,colorValueComponent as d,customHeaderComponent as f,customSidebarFooterComponent as j,dimensionIndicatorComponent as b,editableAngleIndicatorComponent as v,editableDistanceDimensionIndicatorComponent as C,editableOffsetIndicatorComponent as S,editableSizeIndicatorComponent as w,entityHeaderComponent as B,exitToolModeFabComponent as M,finalizeActionComponent as N,fitSelectionOrthographicCameraComponent as g,fitSelectionPerspectiveCameraComponent as h,fixedHeaderComponent as k,floatingHeaderComponent as q,hiddenHeaderComponent as u,hiddenSidebarFooterComponent as z,horizontalTabsComponent as A,htmlHotspotComponent as D,listSelectorDimensionIndicatorComponent as E,multilingualTextValueComponent as F,navigationStepsComponent as G,offsetAnchorsComponent as H,offsetComponent as I,offsetIndicatorComponent as J,otherActionComponent as K,propertyPageComponent as L,readSidebarFooterComponent as O,replaceEntityRecipeHierarchyComponent as P,rotatableComponent as Q,rotationHandleComponent as R,saveTemplateThumbnailComponent as T,sceneEntityAddFabComponent as U,sceneEntityAnimationComponent as V,sceneEntityControlComponent as W,sceneEntityDeleteFabComponent as X,sceneEntityFloorObjectComponent as Y,sceneEntityNavigationHotspotComponent as Z,sceneEntityObjectHtmlHotspotComponent as $,sceneEntitySelectHotspotComponent as _,sceneEntityWallObjectComponent as ee,selectableComponent as eo,sidebarTabsComponent as en,simpleSummaryComponent as em,sizeComponent as es,sketchingDrawComponent as et,sketchingEditComponent as ep,textValueComponent as ea,toolControlsComponent as ei,toolMenuFabComponent as er,toolbarComponent as ex,universalSidebarFooterComponent as ec,viewControlsComponent as el}from"./extensions/index.js";import{angleDimensionComponent as ey,applicationConfigComponent as ed,attributeSelectionComponent as ef,boundingBoxComponent as ej,boundingSphereComponent as eb,childEntityRecipesComponent as ev,childEntitySelectionComponent as eC,collisionBoxGeometryComponent as eS,collisionGeometryComponent as ew,collisionPointGeometryComponent as eB,constraintComponent as eM,customSceneEntityComponent as eN,detailComponent as eg,distanceDimensionComponent as eh,distanceDimensionSelectComponent as ek,dragHandleComponent as eq,fitEntityOrthographicCameraComponent as eu,fitEntityPerspectiveCameraComponent as ez,fitRootOrthographicCameraComponent as eA,fitRootPerspectiveCameraComponent as eD,genericDimensionComponent as eE,hiddenEntityComponent as eF,hotspotDragHandleComponent as eG,materialOverridePropertyTransitionComponent as eH,materialSwatchComponent as eI,pivotPointComponent as eJ,priceComponent as eK,projectedEntitiesComponent as eL,replaceEntityRecipesComponent as eO,sceneEntityAmbientLightComponent as eP,sceneEntityBoxObjectComponent as eQ,sceneEntityDirectionalLightComponent as eR,sceneEntityLocalMaterialOverrideComponent as eT,sceneEntityObjectClipComponent as eU,sceneEntityObjectComponent as eV,sceneEntityObjectGroupComponent as eW,sceneEntityObjectLocalMaterialOverrideComponent as eX,sceneEntityObjectPropertiesComponent as eY,sceneEntityObjectRemoteMaterialOverrideComponent as eZ,sceneEntityObjectTextDecalComponent as e$,sceneEntityObjectTransmissiveMaterialOverrideComponent as e_,sceneEntityPointLightComponent as e0,sceneEntityPropertiesComponent as e1,sceneEntityRectAreaLightComponent as e2,sceneEntityRemoteMaterialOverrideComponent as e3,sceneEntityRemoteObjectComponent as e4,sceneEntitySpotLightComponent as e5,sceneEntityTransmissiveMaterialOverrideComponent as e6,sketchingComponent as e7,sketchingLineComponent as e8,sketchingRectangleComponent as e9,snapAxisComponent as oe,snapEdgeComponent as oo,snapPlaneComponent as on,snapPointComponent as om,staticOrthographicCameraComponent as os,staticPerspectiveCameraComponent as ot}from"./system-components/index.js";export const availableSystemComponents=[ed,eK,eg,i,r,c,b,n,eq,R,Q,e7,et,ep,e8,e9,e4,eV,eN,ee,Y,eQ,eP,eR,e0,e2,e5,e1,eY,eW,eF,p,a,e3,eT,eZ,eX,e_,e6,eH,V,eU,e$,eD,eA,ez,eu,h,g,ot,os,s,ej,eb,eJ,om,oo,on,oe,eS,ew,eB,eM,eo,D,$,W,U,X,_,Z,er,M,B,L,ex,el,ei,en,A,G,N,K,t,ec,O,j,z,x,q,f,k,u,eO,P,ev,l,eI,H,J,eh,ey,eE,ek,d,ea,F,ef,m,eC,es,I,v,C,S,w,E,eG,em,y,T,o,eL,e];export const componentsByName=new Map(availableSystemComponents.map(e=>[e.name,e]));
@@ -1 +1 @@
1
- import{createAjvSchemaValidator as e}from"./create-ajv-schema-validator.js";import{createCspSchemaValidator as a}from"./create-csp-schema-validator.js";let t="csp-compatible"===globalThis.PHX_SCHEMA_VALIDATOR?a:e;export const getExtendedSchemaValidator=()=>{let e=t();return e.addKeyword("tsType"),e.addKeyword("import"),e.addKeyword("declared"),e};export const extendedSchemaValidator=getExtendedSchemaValidator();
1
+ import{createAjvSchemaValidator as e}from"./create-ajv-schema-validator.js";import{createCspSchemaValidator as a}from"./create-csp-schema-validator.js";export const getExtendedSchemaValidator=()=>{let t="csp-compatible"===globalThis.PHX_SCHEMA_VALIDATOR?a():e();return t.addKeyword("tsType"),t.addKeyword("import"),t.addKeyword("declared"),t};export const extendedSchemaValidator=getExtendedSchemaValidator();
@@ -24,11 +24,17 @@ export declare class DomainBuilder<ENTITIES extends DomainEntity<string>, ALLOWE
24
24
  withMigrate(migration: MigrateFunction<ENTITIES>): DomainBuilder<ENTITIES, ALLOWED_ROOT_ENTITIES, ALIASES, $MAP, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA>;
25
25
  withExpressions(implementation: AliasedExpressions<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ALIASES>): DomainBuilder<ENTITIES, ALLOWED_ROOT_ENTITIES, ALIASES, $MAP, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA>;
26
26
  /**
27
- * Adds the expressions of the `src/expressions/` files, as the generated barrel lists them. Each file
28
- * is checked against the folder's contract and added on its own, so an expression defined twice is
29
- * reported with both files instead of being overwritten by file order.
27
+ * Adds the expressions of the `src/expressions/` files, as the generated barrel lists them. The
28
+ * files are merged by `mergeExpressionModules`, which checks each one and throws every wrong file,
29
+ * every expression defined twice and every expression the domain already has, such as a generated
30
+ * one, together as one `ImplementationErrors` of `DUPLICATE_DEFINITION`s.
30
31
  */
31
32
  withExpressionModules(modules: readonly ProjectModule[]): DomainBuilder<ENTITIES, ALLOWED_ROOT_ENTITIES, ALIASES, $MAP, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA>;
33
+ /**
34
+ * Adds expressions already expanded to entity types, each with its origin. An expression that the
35
+ * domain, or an earlier one of the list, defines for the same entity type is an error.
36
+ */
37
+ private withEntityExpressions;
32
38
  /** Declares the actions of the domain, as the generated `domain-spec.ts` reads them from the spec's `actions` section. */
33
39
  withActions(actions: readonly ActionDefinition[]): DomainBuilder<ENTITIES, ALLOWED_ROOT_ENTITIES, ALIASES, $MAP, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA>;
34
40
  /** Adds the action implementations of the `src/actions/` files, as the generated barrel lists them, after checking each file against the folder's contract. */
@@ -1 +1 @@
1
- import{DomainFactory as t,createMigrateFunction as i,expandAlias as e}from"./core/index.js";import{resolveActionModules as s,resolveExpressionModules as n}from"./domain-runtime/index.js";import{withProfilerLabel as a}from"./utils/profiler-label.js";export class DomainBuilder{entities;aliasMap;$entityReflections;allowedRootEntityTypes;implemented;modelVersion;publishedData;sessionData;frontendData;backendData;migrate;isAdminDomain;actions;actionImplementations;constructor(t,i,e,s,n,a,o,h,l,m,r,d,p,c){this.entities=t,this.aliasMap=i,this.$entityReflections=e,this.allowedRootEntityTypes=s,this.implemented=n,this.modelVersion=a,this.publishedData=o,this.sessionData=h,this.frontendData=l,this.backendData=m,this.migrate=r,this.isAdminDomain=d,this.actions=p,this.actionImplementations=c}static from(t,e,s,n,a,o,h,l,m,r){let d=i({1:t},1,{});return new DomainBuilder(t,e,s,n,{},a,o,h,l,m,d,r,{},{})}withMigrate(t){return new DomainBuilder(this.entities,this.aliasMap,this.$entityReflections,this.allowedRootEntityTypes,this.implemented,this.modelVersion,this.publishedData,this.sessionData,this.frontendData,this.backendData,t,this.isAdminDomain,this.actions,this.actionImplementations)}withExpressions(t){let i={...this.implemented};return Object.entries(t).forEach(([t,s])=>{e(this.aliasMap,t).forEach(e=>{let n={...i[e]};i[e]=n,Object.entries(s).forEach(([i,s])=>{let o=n[i];if(o)throw Error(`Duplicate expression ${e}.${i}: The expression is defined on both ${t} and ${o.origin.typeOrAlias}, which would lead to ambiguous usage. Please ensure that expressions are only defined once.`);n[i]={...s,evaluate:a(`${e}_${i}`,s.evaluate),origin:{name:i,typeOrAlias:t}}})})}),new DomainBuilder(this.entities,this.aliasMap,this.$entityReflections,this.allowedRootEntityTypes,i,this.modelVersion,this.publishedData,this.sessionData,this.frontendData,this.backendData,this.migrate,this.isAdminDomain,this.actions,this.actionImplementations)}withExpressionModules(t){return n(t,this.aliasMap).reduce((t,i)=>t.withExpressions(i.expressions),this)}withActions(t){return new DomainBuilder(this.entities,this.aliasMap,this.$entityReflections,this.allowedRootEntityTypes,this.implemented,this.modelVersion,this.publishedData,this.sessionData,this.frontendData,this.backendData,this.migrate,this.isAdminDomain,Object.fromEntries(t.map(t=>[t.name,t])),this.actionImplementations)}withActionModules(t){return this.withActionImplementations(s(t))}withActionImplementations(t){return new DomainBuilder(this.entities,this.aliasMap,this.$entityReflections,this.allowedRootEntityTypes,this.implemented,this.modelVersion,this.publishedData,this.sessionData,this.frontendData,this.backendData,this.migrate,this.isAdminDomain,this.actions,{...this.actionImplementations,...t})}build=()=>{let e=this.implemented,s=this.migrate??i({1:this.entities},1,{});return new t({aliasMap:this.aliasMap,entityReflections:this.entities,$entityReflections:this.$entityReflections,expressions:e,allowedRootEntityTypes:this.allowedRootEntityTypes,modelVersion:this.modelVersion,migrate:s,publishedData:this.publishedData,sessionData:this.sessionData,frontendData:this.frontendData,backendData:this.backendData,isAdminDomain:this.isAdminDomain,actions:this.actions,actionImplementations:this.actionImplementations})}}
1
+ import{DomainFactory as t,createMigrateFunction as i,expandAlias as e}from"./core/index.js";import{mergeExpressionModules as s,resolveActionModules as n}from"./domain-runtime/index.js";import{withProfilerLabel as a}from"./utils/profiler-label.js";export class DomainBuilder{entities;aliasMap;$entityReflections;allowedRootEntityTypes;implemented;modelVersion;publishedData;sessionData;frontendData;backendData;migrate;isAdminDomain;actions;actionImplementations;constructor(t,i,e,s,n,a,o,h,l,m,r,d,p,c){this.entities=t,this.aliasMap=i,this.$entityReflections=e,this.allowedRootEntityTypes=s,this.implemented=n,this.modelVersion=a,this.publishedData=o,this.sessionData=h,this.frontendData=l,this.backendData=m,this.migrate=r,this.isAdminDomain=d,this.actions=p,this.actionImplementations=c}static from(t,e,s,n,a,o,h,l,m,r){let d=i({1:t},1,{});return new DomainBuilder(t,e,s,n,{},a,o,h,l,m,d,r,{},{})}withMigrate(t){return new DomainBuilder(this.entities,this.aliasMap,this.$entityReflections,this.allowedRootEntityTypes,this.implemented,this.modelVersion,this.publishedData,this.sessionData,this.frontendData,this.backendData,t,this.isAdminDomain,this.actions,this.actionImplementations)}withExpressions(t){let i=Object.entries(t);return this.withEntityExpressions(i.flatMap(([t,i])=>e(this.aliasMap,t).flatMap(e=>Object.entries(i).map(([i,s])=>({type:e,expression:{...s,origin:{name:i,typeOrAlias:t}}})))))}withExpressionModules(t){let i=new Map(Object.entries(this.implemented).map(([t,i])=>[t,new Set(Object.keys(i))]));return this.withEntityExpressions(Object.entries(s(t,this.aliasMap,void 0,i)).flatMap(([t,i])=>Object.values(i).map(i=>({type:t,expression:i}))))}withEntityExpressions(t){let i={...this.implemented};return t.forEach(({type:t,expression:e})=>{let{name:s,typeOrAlias:n}=e.origin,o={...i[t]},h=o[s];if(h)throw Error(`Duplicate expression ${t}.${s}: The expression is defined on both ${n} and ${h.origin.typeOrAlias}, which would lead to ambiguous usage. Please ensure that expressions are only defined once.`);o[s]={...e,evaluate:a(`${t}_${s}`,e.evaluate)},i[t]=o}),new DomainBuilder(this.entities,this.aliasMap,this.$entityReflections,this.allowedRootEntityTypes,i,this.modelVersion,this.publishedData,this.sessionData,this.frontendData,this.backendData,this.migrate,this.isAdminDomain,this.actions,this.actionImplementations)}withActions(t){return new DomainBuilder(this.entities,this.aliasMap,this.$entityReflections,this.allowedRootEntityTypes,this.implemented,this.modelVersion,this.publishedData,this.sessionData,this.frontendData,this.backendData,this.migrate,this.isAdminDomain,Object.fromEntries(t.map(t=>[t.name,t])),this.actionImplementations)}withActionModules(t){return this.withActionImplementations(n(t))}withActionImplementations(t){return new DomainBuilder(this.entities,this.aliasMap,this.$entityReflections,this.allowedRootEntityTypes,this.implemented,this.modelVersion,this.publishedData,this.sessionData,this.frontendData,this.backendData,this.migrate,this.isAdminDomain,this.actions,{...this.actionImplementations,...t})}build=()=>{let e=this.implemented,s=this.migrate??i({1:this.entities},1,{});return new t({aliasMap:this.aliasMap,entityReflections:this.entities,$entityReflections:this.$entityReflections,expressions:e,allowedRootEntityTypes:this.allowedRootEntityTypes,modelVersion:this.modelVersion,migrate:s,publishedData:this.publishedData,sessionData:this.sessionData,frontendData:this.frontendData,backendData:this.backendData,isAdminDomain:this.isAdminDomain,actions:this.actions,actionImplementations:this.actionImplementations})}}
@@ -53,6 +53,11 @@ export declare class StoreSystem<ENTITIES extends DomainEntity<string>, $MAP ext
53
53
  private readonly _context;
54
54
  readonly stateSlices: Readonly<Record<StateSliceName, ObservableWithLastValue<StateEmission<ENTITIES, $MAP>>>>;
55
55
  get isInitialized(): boolean;
56
+ /**
57
+ * True while a change the user is making, such as a drag, is staged and neither committed nor
58
+ * rolled back. A hover is shown through a staged emission too, but stages no updates.
59
+ */
60
+ get hasStagedUpdates(): boolean;
56
61
  private _onBeforeCommitHooks;
57
62
  private readonly committed;
58
63
  private readonly potentiallyInvalid;
@@ -1,2 +1,2 @@
1
- import{CompositeKeyMap as e,assertExistence as t,isEqualArray as i}from"@salsita-ai/common/utils";import{domainEntityTypeFromId as r,dragStateComponent as o,getComponentSystemFilterState as s,hoverStateComponent as n,isEqualComponentInstance as a,isSystemViewportStateComponentSnapshot as d,isVirtualEntityId as m,selectionStateComponent as l,systemUpdateFactory as c,systemVirtualEntityId as p}from"../../core/index.js";import{projectedEntitiesComponent as h}from"../../system-components/index.js";import{cloneEvalCache as v,createEvalCacheToken as f,getEvalCache as g,setEvalCache as u}from"../../utils/eval-cache.js";import{createCascadeDeletesTransformer as y,createCascadeRefPruningTransformer as S}from"../relation-transformers/index.js";import{applyUpdates as I}from"./apply-updates.js";import{LifecycleStateSlice as _}from"./lifecycle-state-slice.js";import{mergeReconciliationsUpdates as x,reconcileProjectedEntities as T}from"./reconcile-projected-entities.js";let E={uninitializedError:"StoreSystem is not initialized."},k=f({clone:e=>e}),w=class InvalidInitialStateError extends Error{emission;childError;constructor(e,t,i){let r="";"uncaught"===e.validity.severity&&(r=`: ${e.validity.error.message}`),("fatal"===e.validity.severity||"fixable"===e.validity.severity)&&(r=`: ${e.validity.entityViolations.map(e=>{let i=e.violation.message;return null!=i?t(i):e.violation.type}).join(", ")}`),super(`Initial state is not valid! Severity: ${e.validity.severity}, Cause: ${r}`),this.emission=e,this.childError=i,this.name="InvalidInitialStateError"}},b=(e,t)=>{try{return e()}catch(e){throw t(e),e}};export class StoreSystem{_context;stateSlices;get isInitialized(){return this.committed.isInitialized}_onBeforeCommitHooks=[];committed=new _(E);potentiallyInvalid=new _(E);rendered=new _(E);stagedUpdates=void 0;transformToDataUpdates=(e,t)=>{let i=!1,r=e.map(e=>"modifyComponent"===e.kind?(i=!0,this.componentModificationToDataUpdate(e,t)):e);return i?r:e};createInitialTransformPipe=()=>[{transformer:this.transformToDataUpdates,priority:1/0,registrationToken:{},name:"TransformToDataUpdates"}];transformPipe=this.createInitialTransformPipe();_cascadeDeletesTransformer=(...e)=>(this._cascadeDeletesTransformerMemo??=y(this._context.selectors.getCompositionProjections()))(...e);_cascadeDeletesTransformerMemo;_refPruningTransformer=(...e)=>(this._refPruningTransformerMemo??=S(this._context.selectors.getComponentReader()))(...e);_refPruningTransformerMemo;_deselectOnDeleteTransformer=(e,t)=>{let i=new Set(e.filter(e=>"deleteEntity"===e.kind).map(e=>e.entityId));if(0===i.size)return e;let r=s(t).selectedEntityId;return r&&i.has(r)?[...e,c.EphemeralRecordModification({componentInstance:{entityId:p,componentType:l},updateTag:"AutoDeselectRemovedProjectedEntity",writableState:{selectedEntityId:t.rootEntityId}})]:e};constructor(e){this._context=e,this.stateSlices={committed:this.committed.observable,rendered:this.rendered.observable,potentiallyInvalid:this.potentiallyInvalid.observable}}_validateState=e=>this._context.selectors.getValidationProjections().validateState(e);initialize=()=>{let e=this._context.selectors.getInitialDomainState();this.stagedUpdates=void 0;let t=this._validateState(e),i={kind:"reset",state:e,validity:t,tag:void 0,transformationLog:void 0},r=i;if(!r.validity.valid&&"fatal"===r.validity.severity||"fixable"===r.validity.severity){this._context.domainServicesSelectors.getLogger().debug("Trying to fix initial emission:",r);let e=r.state,{transformedUpdates:t,transformationLog:i}=this.applyTransformers([],e,"committed"),o=I(this.transformToDataUpdates(t,e),e);v(e,o),r={kind:"reset",state:o,validity:this._validateState(o),tag:"fixed",transformationLog:i}}if(!r.validity.valid){if(this._context.domainServicesSelectors.getLogger().error("Invalid initial emission:",{initialEmission:i,fixedEmission:r}),"uncaught"===r.validity.severity)throw new w(r,this._context.domainServicesSelectors.getResolveLocalizable(),r.validity.error??void 0);throw new w(r,this._context.domainServicesSelectors.getResolveLocalizable())}this.committed.next(r),this.rendered.next(r),this.potentiallyInvalid.next(r)};registerTransformer(e,i,r){let o={};return((e,i,r)=>{let o=0;for(;o<e.length&&0>=r(t(e[o]),i);)o++;e.splice(o,0,i)})(this.transformPipe,{registrationToken:o,transformer:i,priority:e,name:r},(e,t)=>e.priority===t.priority?0:e.priority<t.priority?-1:1),()=>{let e=this.transformPipe.findIndex(e=>e.registrationToken===o);-1!==e&&this.transformPipe.splice(e,1)}}onBeforeCommit(e){return this._onBeforeCommitHooks.push(e),()=>{this._onBeforeCommitHooks=this._onBeforeCommitHooks.filter(t=>t!==e)}}componentModificationToDataUpdate=(e,t)=>{let i=e.entityId;if(!m(i)){let t=this._context.selectors.getComponentReaderIndexes().opticMap.get(r(i))?.get(e.componentInstance.componentType)?.get(e.componentInstance.instanceName);if(t?.kind==="simple"){let r=t.write(e.writableState);return{kind:"modifyDomainEntity",entityId:i,updateTag:e.updateTag,stateDelta:r,hint:e.hint,agentHint:e.agentHint,origin:e}}}let o=t.ephemeralRecords.find(t=>a(t.componentInstance,e.componentInstance));if(o)return{kind:"modifyEphemeralRecord",entityId:e.entityId,updateTag:e.updateTag,componentInstance:o.componentInstance,writableState:e.writableState,hint:e.hint,agentHint:e.agentHint};throw Error(`Component ${e.componentInstance.componentType.name} is not attached on entity #${e.entityId}`)};getNewState=(e,t)=>{let i=I(this.transformToDataUpdates(e,t),t);return v(this.rendered.isInitialized?this.rendered.value.state:t,i),i};applyTransformers(e,t,i){let r=this._context.environmentSelectors.getEnvironmentIsDev()?[]:void 0;return{transformedUpdates:this.transformPipe.reduce((e,{transformer:o,name:s})=>{let n,a=r?[]:void 0,d=a?(e,t,i)=>{n=e,a.push({phase:e,message:t,data:i})}:void 0,m=b(()=>o(e,t,i,d),o=>{this._context.domainServicesSelectors.getLogger().error("Error while applying transformer!",{name:s,updates:e,previousState:t,kind:i,transformationLog:r},o instanceof Error?o:Error(String(o)))});return a&&r&&r.push({name:s,status:n??(m===e?"no-event":"apply"),entries:a,updatesIn:e,updatesOut:m}),m},e),transformationLog:r}}_updateProjectedEntities(e,t,r){if(!e.validity.valid)return e;let o=this._context.selectors.getComponentReader().readManyComponents({componentTypes:[h]},e.state),s=g(e.previousState,k);if(s&&i(s,o))return e;let n=0,a=e,d=[];for(;a.validity.valid;){n++;let i=T(a.state.entities,o,t);if(0===i.length)break;if(n>10)throw Error(`Maximum number of reconciliation rounds reached: 10. Projected entities seem to be recursively depending on themselves.
1
+ import{CompositeKeyMap as e,assertExistence as t,isEqualArray as i}from"@salsita-ai/common/utils";import{domainEntityTypeFromId as r,dragStateComponent as o,getComponentSystemFilterState as s,hoverStateComponent as n,isEqualComponentInstance as a,isSystemViewportStateComponentSnapshot as d,isVirtualEntityId as m,selectionStateComponent as l,systemUpdateFactory as c,systemVirtualEntityId as p}from"../../core/index.js";import{projectedEntitiesComponent as h}from"../../system-components/index.js";import{cloneEvalCache as v,createEvalCacheToken as f,getEvalCache as g,setEvalCache as u}from"../../utils/eval-cache.js";import{createCascadeDeletesTransformer as y,createCascadeRefPruningTransformer as S}from"../relation-transformers/index.js";import{applyUpdates as I}from"./apply-updates.js";import{LifecycleStateSlice as _}from"./lifecycle-state-slice.js";import{mergeReconciliationsUpdates as x,reconcileProjectedEntities as T}from"./reconcile-projected-entities.js";let E={uninitializedError:"StoreSystem is not initialized."},k=f({clone:e=>e}),w=class InvalidInitialStateError extends Error{emission;childError;constructor(e,t,i){let r="";"uncaught"===e.validity.severity&&(r=`: ${e.validity.error.message}`),("fatal"===e.validity.severity||"fixable"===e.validity.severity)&&(r=`: ${e.validity.entityViolations.map(e=>{let i=e.violation.message;return null!=i?t(i):e.violation.type}).join(", ")}`),super(`Initial state is not valid! Severity: ${e.validity.severity}, Cause: ${r}`),this.emission=e,this.childError=i,this.name="InvalidInitialStateError"}},b=(e,t)=>{try{return e()}catch(e){throw t(e),e}};export class StoreSystem{_context;stateSlices;get isInitialized(){return this.committed.isInitialized}get hasStagedUpdates(){return void 0!==this.stagedUpdates}_onBeforeCommitHooks=[];committed=new _(E);potentiallyInvalid=new _(E);rendered=new _(E);stagedUpdates=void 0;transformToDataUpdates=(e,t)=>{let i=!1,r=e.map(e=>"modifyComponent"===e.kind?(i=!0,this.componentModificationToDataUpdate(e,t)):e);return i?r:e};createInitialTransformPipe=()=>[{transformer:this.transformToDataUpdates,priority:1/0,registrationToken:{},name:"TransformToDataUpdates"}];transformPipe=this.createInitialTransformPipe();_cascadeDeletesTransformer=(...e)=>(this._cascadeDeletesTransformerMemo??=y(this._context.selectors.getCompositionProjections()))(...e);_cascadeDeletesTransformerMemo;_refPruningTransformer=(...e)=>(this._refPruningTransformerMemo??=S(this._context.selectors.getComponentReader()))(...e);_refPruningTransformerMemo;_deselectOnDeleteTransformer=(e,t)=>{let i=new Set(e.filter(e=>"deleteEntity"===e.kind).map(e=>e.entityId));if(0===i.size)return e;let r=s(t).selectedEntityId;return r&&i.has(r)?[...e,c.EphemeralRecordModification({componentInstance:{entityId:p,componentType:l},updateTag:"AutoDeselectRemovedProjectedEntity",writableState:{selectedEntityId:t.rootEntityId}})]:e};constructor(e){this._context=e,this.stateSlices={committed:this.committed.observable,rendered:this.rendered.observable,potentiallyInvalid:this.potentiallyInvalid.observable}}_validateState=e=>this._context.selectors.getValidationProjections().validateState(e);initialize=()=>{let e=this._context.selectors.getInitialDomainState();this.stagedUpdates=void 0;let t=this._validateState(e),i={kind:"reset",state:e,validity:t,tag:void 0,transformationLog:void 0},r=i;if(!r.validity.valid&&"fatal"===r.validity.severity||"fixable"===r.validity.severity){this._context.domainServicesSelectors.getLogger().debug("Trying to fix initial emission:",r);let e=r.state,{transformedUpdates:t,transformationLog:i}=this.applyTransformers([],e,"committed"),o=I(this.transformToDataUpdates(t,e),e);v(e,o),r={kind:"reset",state:o,validity:this._validateState(o),tag:"fixed",transformationLog:i}}if(!r.validity.valid){if(this._context.domainServicesSelectors.getLogger().error("Invalid initial emission:",{initialEmission:i,fixedEmission:r}),"uncaught"===r.validity.severity)throw new w(r,this._context.domainServicesSelectors.getResolveLocalizable(),r.validity.error??void 0);throw new w(r,this._context.domainServicesSelectors.getResolveLocalizable())}this.committed.next(r),this.rendered.next(r),this.potentiallyInvalid.next(r)};registerTransformer(e,i,r){let o={};return((e,i,r)=>{let o=0;for(;o<e.length&&0>=r(t(e[o]),i);)o++;e.splice(o,0,i)})(this.transformPipe,{registrationToken:o,transformer:i,priority:e,name:r},(e,t)=>e.priority===t.priority?0:e.priority<t.priority?-1:1),()=>{let e=this.transformPipe.findIndex(e=>e.registrationToken===o);-1!==e&&this.transformPipe.splice(e,1)}}onBeforeCommit(e){return this._onBeforeCommitHooks.push(e),()=>{this._onBeforeCommitHooks=this._onBeforeCommitHooks.filter(t=>t!==e)}}componentModificationToDataUpdate=(e,t)=>{let i=e.entityId;if(!m(i)){let t=this._context.selectors.getComponentReaderIndexes().opticMap.get(r(i))?.get(e.componentInstance.componentType)?.get(e.componentInstance.instanceName);if(t?.kind==="simple"){let r=t.write(e.writableState);return{kind:"modifyDomainEntity",entityId:i,updateTag:e.updateTag,stateDelta:r,hint:e.hint,agentHint:e.agentHint,origin:e}}}let o=t.ephemeralRecords.find(t=>a(t.componentInstance,e.componentInstance));if(o)return{kind:"modifyEphemeralRecord",entityId:e.entityId,updateTag:e.updateTag,componentInstance:o.componentInstance,writableState:e.writableState,hint:e.hint,agentHint:e.agentHint};throw Error(`Component ${e.componentInstance.componentType.name} is not attached on entity #${e.entityId}`)};getNewState=(e,t)=>{let i=I(this.transformToDataUpdates(e,t),t);return v(this.rendered.isInitialized?this.rendered.value.state:t,i),i};applyTransformers(e,t,i){let r=this._context.environmentSelectors.getEnvironmentIsDev()?[]:void 0;return{transformedUpdates:this.transformPipe.reduce((e,{transformer:o,name:s})=>{let n,a=r?[]:void 0,d=a?(e,t,i)=>{n=e,a.push({phase:e,message:t,data:i})}:void 0,m=b(()=>o(e,t,i,d),o=>{this._context.domainServicesSelectors.getLogger().error("Error while applying transformer!",{name:s,updates:e,previousState:t,kind:i,transformationLog:r},o instanceof Error?o:Error(String(o)))});return a&&r&&r.push({name:s,status:n??(m===e?"no-event":"apply"),entries:a,updatesIn:e,updatesOut:m}),m},e),transformationLog:r}}_updateProjectedEntities(e,t,r){if(!e.validity.valid)return e;let o=this._context.selectors.getComponentReader().readManyComponents({componentTypes:[h]},e.state),s=g(e.previousState,k);if(s&&i(s,o))return e;let n=0,a=e,d=[];for(;a.validity.valid;){n++;let i=T(a.state.entities,o,t);if(0===i.length)break;if(n>10)throw Error(`Maximum number of reconciliation rounds reached: 10. Projected entities seem to be recursively depending on themselves.
2
2
  If expressions populating 'projectedEntities' components rely on other projected entities, make sure that the dependencies do not have cycles.`);let s=(d=x(d,i)).map(e=>e.dataUpdate),m=this._cascadeDeletesTransformer(s,e.previousState,r,void 0,t),l=this._refPruningTransformer(m,e.previousState,r,void 0,t),c=this._deselectOnDeleteTransformer(l,e.previousState,r,void 0,t);if(!(a=this.prepareStateEmissionWithoutTransformation([...t,...c],e.previousState,r)).validity.valid)return this._context.domainServicesSelectors.getLogger().error("Reconciliation of projected entities led to an invalid state! Reconciliation skipped.",{emission:a}),e;o=this._context.selectors.getComponentReader().readManyComponents({componentTypes:[h]},a.state)}return u(a.state,k,o),a}prepareStateEmission(e,t,i){let{transformedUpdates:r,transformationLog:o}=this.applyTransformers(e,t,i),s=this.prepareStateEmissionWithoutTransformation(r,t,i);return{...this._updateProjectedEntities(s,r,i),transformationLog:o}}emissionCache=new e([Map,WeakMap,WeakMap,WeakMap,WeakMap]);getEmissionCacheKey=(e,t,i)=>[e,t,i,this._context.selectors.getStoreRuntimeDependencies(),this._context.selectors.getExpressionContext()];prepareStateEmissionWithoutTransformation=(e,t,i)=>{let r=this.getEmissionCacheKey(i,t,e),o=this.emissionCache.get(r);if(o)return o;let s=b(()=>this.transformToDataUpdates(e,t),r=>{this._context.domainServicesSelectors.getLogger().error("Error while transforming updates to data updates!",{updates:e,previousState:t,kind:i},r instanceof Error?r:Error(String(r)))}),n=b(()=>I(s,t),r=>{this._context.domainServicesSelectors.getLogger().error("Error while applying updates!",{updates:e,previousState:t,kind:i,dataUpdates:s},r instanceof Error?r:Error(String(r)))});v(this.rendered.isInitialized?this.rendered.value.state:t,n);let a=this._validateState(n);"uncaught"===a.severity&&this._context.domainServicesSelectors.getLogger().error("There was an uncaught validation error:",{updates:e,dataUpdates:s,previousState:t,newState:n,kind:i},a.error);let d={kind:i,previousState:t,state:n,updates:s,validity:a,transformationLog:void 0};return this.emissionCache.set(r,d),d};stage(e,t=!0){this.stagedUpdates=e;let i=this.prepareStateEmission(e,this.committed.value.state,"staged");return t&&this.emit(i),i}emit(e){"staged"===e.kind?e.validity.valid&&this.rendered.nextIfDifferent(e):(e.validity.valid?(this.committed.nextIfDifferent(e),this.rendered.nextIfDifferent(e)):this.rendered.nextIfDifferent(this.committed.value),this.potentiallyInvalid.nextIfDifferent(e))}commit=()=>{if(void 0===this.stagedUpdates)return;let e=this.prepareStateEmission(this.stagedUpdates,this.committed.value.state,"committed"),t=()=>{if(this._onBeforeCommitHooks.some(i=>!1===i(e,t))){this._context.domainServicesSelectors.getLogger().debug("Commit was canceled by one of the onBeforeCommit hooks! Resetting rendered state.",e),this.rollback();return}this.stagedUpdates=void 0,this._context.domainServicesSelectors.getLogger().debug("commit",e),this.emit(e)};t()};commitPrepared=e=>{if("committed"!==e.kind||!e.validity.valid)throw Error(`commitPrepared received a ${e.validity.valid?e.kind:"invalid"} emission, but only a valid committed emission can become the committed state. Prepare the emission with kind "committed" and check its validity before committing it.`);let t=()=>e.previousState===this.committed.value.state;if(!t())return"conflict";let i=()=>{t()?r():this._context.domainServicesSelectors.getLogger().warn("A held commit was dropped, because the committed state changed since it was prepared.",e)},r=()=>this._onBeforeCommitHooks.some(t=>!1===t(e,i))?(this._context.domainServicesSelectors.getLogger().debug("A prepared commit was held by one of the onBeforeCommit hooks.",e),!1):(this._context.domainServicesSelectors.getLogger().debug("commitPrepared",e),this.stagedUpdates=void 0,this.emit(e),!0);return r()?"committed":"held"};rollback=()=>{void 0!==this.stagedUpdates&&(this.stagedUpdates=void 0,this.emit(this.committed.value))};_resetInteractionState(e){return e.ephemeralRecords.some(e=>{let t;return(t=e.componentInstance.componentType)===n||t===o})?{...e,ephemeralRecords:e.ephemeralRecords.map(e=>e.componentInstance.componentType===n?{...e,state:{hoveredEntityId:null}}:e.componentInstance.componentType===o?{...e,state:{draggedEntityId:null}}:e)}:e}_preserveViewportState(e,t){let i=t.ephemeralRecords.find(d),r=e.ephemeralRecords.filter(e=>!d(e));return{...e,ephemeralRecords:i?[...r,i]:r}}reset(e,t){let i=this.committed.value.state,r=this._preserveViewportState(e,i),o=this._resetInteractionState(r),s=this._validateState(o);if(!s.valid)throw Error("Cannot reset to an invalid state");this.stagedUpdates=void 0,this.emit({kind:"reset",state:o,validity:s,tag:t,transformationLog:void 0})}stageAndCommit(e){if(0!==e.length){this.stagedUpdates=e;try{this.commit()}finally{this.stagedUpdates=void 0}}}}
@@ -124,6 +124,7 @@ export declare const createDomainContextSelectors: (context: Context) => {
124
124
  getMigrate: () => import("../../index.js").MigrateFunction<import("../../index.js").DomainEntity<string>>;
125
125
  getActiveMode: () => DomainMode;
126
126
  getIsInitialized: () => boolean;
127
+ getIsViewMode: () => boolean;
127
128
  getComponentReaderIndexes: () => ComponentReaderIndexes;
128
129
  getStoreRuntimeDependencies: () => {
129
130
  componentReaderIndexes: ComponentReaderIndexes;
@@ -1 +1 @@
1
- import{createSelector as e}from"@salsita-ai/common/utils";import{Domain as t,createInitialDomainState as n}from"../../core/index.js";import{ActionSystem as o,DimensionSystem as i,NavigationSystem as a,RecipeCookerSystem as s,StoreSystem as r,UndoSystem as c}from"../../domain-context/index.js";import{BlenderProjections as l,CollisionProjections as m,CompositionProjections as d,ConstraintProjections as g,PositionProjections as f,ProjectedEntitiesProjections as u,SnappingProjections as p,ValidationProjections as y}from"../../projections/index.js";import{SketchingProjections as w}from"../../sketching/sketching-projections.js";import{requireAccessService as h}from"../access/index.js";import{prepareActionImplementations as S,prepareDomainExpressions as x}from"../spec/index.js";import{ComponentReader as C}from"./component-reader.js";import{DomainContext as D}from"./domain-context.js";let j=e.withTypes(),I=[],v={},P={role:"admin",data:v},M=e=>{if(null!==e)return e;throw Error("Cannot read the session role and data because the domain session context is not set. The session context is written into the domain runtime by the session lifecycle after authentication. Move this read into the loaded session lifecycle.")};export const createDomainContextSelectors=e=>{let{applicationType:A,getState:R,actions:E,specSelectors:T,accessSelectors:b,webComponentSelectors:$,domainDataSelectors:k,sessionContextSelectors:N,domainServicesSelectors:z,environmentSelectors:L,getExtensionSystems:V}=e,B="configurator"===A?T.selectConfiguratorSpec:T.selectAdminSpec,F="configurator"===A?b.selectConfiguratorRawAccessService:b.selectAdminRawAccessService,W=j.leaf(e=>e.domainContext[A]),_=j([W],e=>e.initializationContext),q=j([_],e=>{if(null===e)throw Error(`Domain lifecycle context is not available for ${A}! Read it from an active domain lifecycle.`);return e}),O=j([W],e=>e.executionMode),U=j([W],e=>e.isInitialized),G=j([B],e=>e.factory),H=j([B],e=>e.expressions),J=j([B],e=>e.actions),K=j([B],e=>e.actionImplementations),Q=j([J,K],S),X=j([B],e=>e.$entityReflections),Y=j([H,X],(e,t)=>x({expressions:e,$entityReflections:t})),Z=j([B],e=>e.modelVersion),ee=j([B],e=>e.aliasMap),et=j([B],e=>e.allowedRootEntityTypes),en=j([B],e=>e.entityReflections),eo=j([B],e=>e.migrate),ei=j([O,$.selectReadonly,F],(e,t,n)=>"finalize"===e?"finalize":h(A,n).accessInfo.viewMode||t?"read":"owner"),ea=j([F],e=>e?.configurationId??null),es="configurator"===A?N.selectSessionContext:j([],()=>P),er=j([es],e=>e?.role??null),ec=j([es],e=>e?.data??null),el=j([j.leaf(e=>e.loadedData)],e=>"configurator"===A?e.configuratorLoadedData:e.adminLoadedData),em=j([el],e=>e?.schemaIdentity??null),ed=j([el,G],(e,t)=>{if(null===e)return"coherent";let n=e.schemaIdentity;return void 0===n?"missing-stamp":n===t?"coherent":"schema-mismatch"}),eg=j([ea,er,ec,em,ed,F],(e,t,n,o,i,a)=>null===e||null===a||null===t||null===n||null===o||"coherent"!==i?null:{access:a.accessInfo.access,configurationId:e,role:t,schemaIdentity:o,sessionData:n}),ef=j([F,$.selectReadonly],(e,t)=>e?.accessInfo.viewMode===!0||t),eu=j([eg,_,U,ef],(e,t,n,o)=>{let i=null!==e&&null!==t&&n&&t.access===e.access&&t.configurationId===e.configurationId&&t.role===e.role&&t.schemaIdentity===e.schemaIdentity&&t.sessionData===e.sessionData;return{identity:e,isCurrent:i,isViewMode:o}}),ep=j([B],e=>e.componentOptics),ey=j([ep],e=>(e=>{let t=new Map,n=new Map,o=new Map,i=new Map;for(let n of e)for(let e of n.entityTypes){let o=t.get(e);o||(o=new Map,t.set(e,o));let a=o.get(n.componentType);if(a||(a=new Map,o.set(n.componentType,a)),a.has(n.instanceName))throw Error(`Component instance ${n.instanceName} already exists for type ${n.componentType.name} in entity ${e}. This is likely a bug in the component definition! InstanceNames must be unique within an entity and component.`);if(a.set(n.instanceName,n),"dynamic"===n.kind){let t=i.get(e);t||(t=new Map,i.set(e,t));let o=t.get(n.componentType)??[],a=o.find(e=>{var t;return t=n.instanceName,e.startsWith(`${t}_`)||t.startsWith(`${e}_`)});if(a)throw Error(`Cannot register dynamic component instance ${n.instanceName} for component ${n.componentType.name} on entity ${e} because it overlaps with dynamic instance ${a}. Rename one dynamic instance so compound names cannot be ambiguous.`);t.set(n.componentType,[...o,n.instanceName])}}for(let[e,i]of t.entries()){n.set(e,new Set(i.keys()));let t=new Map;for(let[n,a]of(o.set(e,t),i.entries()))t.set(n,new Set(a.keys()))}return{opticMap:t,allComponentTypes:n,allComponentInstanceNames:o,dynamicInstanceNames:i}})(e)),ew=j([ey,Y,et],(e,t,n)=>({componentReaderIndexes:e,domainExpressions:t,allowedRootEntityTypes:n})),eh=j([B],e=>e.navigationStates),eS=j([B],e=>e.viewStates),ex="configurator"===A?j([T.selectConfiguratorSpec],e=>e.toolStates):j([],()=>I),eC="configurator"===A?j([T.selectConfiguratorSpec],e=>e.exportStates):j([],()=>I),eD="configurator"===A?j([T.selectConfiguratorSpec],e=>e.createTransformers):j([],()=>void 0),ej=j([el],e=>{if(null===e)throw Error(`Loaded data is not available for ${A}! Loaded data is written after the configuration fetch succeeds and before the domain context initialization starts.`);return e}),eI=j([ej,G],(e,t)=>n(t.validateAndMigrateState(e.initialEntities,e.modelVersion),e.rootEntityType)),ev="configurator"===A?k.selectConfiguratorFrontendData:k.selectAdminFrontendData,eP="configurator"===A?k.selectConfiguratorBackendData:k.selectAdminBackendData,eM="configurator"===A?k.selectConfiguratorPublishedData:k.selectAdminPublishedData,eA="configurator"===A?j([N.selectSessionContext],e=>M(e).role):j([],()=>"admin"),eR="configurator"===A?j([N.selectSessionContext],e=>M(e).data):j([],()=>v),eE=j([ea,ei,eA,eR,ej,F],(e,t,n,o,i,a)=>({access:a?.accessInfo.access??null,configurationId:e,mode:t,role:n,schemaIdentity:i.schemaIdentity,sessionData:o})),eT=j([q],e=>e.mode),eb=j([q],e=>{let t=e.configurationId;if(null===t)throw Error(`Configuration id is not available for ${A}! Read it from an active interactive domain lifecycle.`);return t}),e$=j([q],e=>e.role),ek=j([q],e=>e.sessionData),eN=j([eT,e$,ek,ev,eP,eM,eo],(e,t,n,o,i,a,s)=>({mode:e,role:t,sessionData:n,frontendData:o,backendData:i,publishedData:a,migrate:s,domain:eL,componentReader:eV,positionProjections:eq,sketchingProjections:e_,collisionProjections:eO,constraintProjections:eG,snappingProjections:eU,projectedEntitiesProjections:eH})),ez={selectApplicationSpec:B,selectRawAccessService:F,selectDomainContextState:W,selectInitializationContext:_,selectActiveInitializationContext:q,selectExecutionMode:O,selectIsInitialized:U,selectFactory:G,selectSpecExpressions:H,select$SpecEntityReflections:X,selectDomainExpressions:Y,selectModelVersion:Z,selectAliasMap:ee,selectAllowedRootEntityTypes:et,selectEntityReflections:en,selectMigrate:eo,selectLatestMode:ei,selectLatestConfigurationId:ea,selectLatestSessionContext:es,selectLatestRoleOrNull:er,selectLatestSessionDataOrNull:ec,selectLatestSchemaIdentity:em,selectSchemaCoherence:ed,selectInitializationIdentity:eg,selectIsViewMode:ef,selectInitializationState:eu,selectComponentOptics:ep,selectComponentReaderIndexes:ey,selectStoreRuntimeDependencies:ew,selectNavigationStates:eh,selectViewStates:eS,selectToolStates:ex,selectExportStates:eC,selectCreateTransformers:eD,selectLatestLoadedData:el,selectLoadedData:ej,selectInitialDomainState:eI,selectFrontendData:ev,selectBackendData:eP,selectPublishedData:eM,selectLatestRole:eA,selectLatestSessionData:eR,selectNextInitializationContext:eE,selectActiveMode:eT,selectActiveConfigurationId:eb,selectActiveRole:e$,selectActiveSessionData:ek,selectExpressionContext:eN,getInitializationContext:()=>_(R()),getInitializationState:()=>eu(R()),getNextInitializationContext:()=>eE(R()),getLatestLoadedData:()=>el(R()),getSchemaCoherence:()=>ed(R()),getActiveConfigurationId:()=>eb(R()),getFactory:()=>G(R()),getDomainExpressions:()=>Y(R()),getActionDefinitions:()=>J(R()),getActionImplementations:()=>Q(R()),getModelVersion:()=>Z(R()),getAliasMap:()=>ee(R()),getAllowedRootEntityTypes:()=>et(R()),getEntityReflections:()=>en(R()),getMigrate:()=>eo(R()),getActiveMode:()=>eT(R()),getIsInitialized:()=>U(R()),getComponentReaderIndexes:()=>ey(R()),getStoreRuntimeDependencies:()=>ew(R()),getNavigationStates:()=>eh(R()),getViewStates:()=>eS(R()),getToolStates:()=>ex(R()),getExportStates:()=>eC(R()),getCreateTransformers:()=>eD(R()),getLoadedData:()=>ej(R()),getInitialDomainState:()=>eI(R()),getFrontendData:()=>ev(R()),getBackendData:()=>eP(R()),getPublishedData:()=>eM(R()),getActiveRole:()=>e$(R()),getActiveSessionData:()=>ek(R()),getDomain:()=>eL,getComponentReader:()=>eV,getCompositionProjections:()=>eB,getDimensionSystem:()=>eF,getValidationProjections:()=>eW,getSketchingProjections:()=>e_,getPositionProjections:()=>eq,getCollisionProjections:()=>eO,getSnappingProjections:()=>eU,getConstraintProjections:()=>eG,getProjectedEntitiesProjections:()=>eH,getStoreSystem:()=>eJ,getNavigationSystem:()=>eK,getUndoSystem:()=>eQ,getRecipeCookerSystem:()=>eX,getActionSystem:()=>eY,getBlenderProjections:()=>eZ,getExpressionContext:()=>eN(R()),getDomainSystems:function(){return e0},getDomainContext:function(){return e1}},eL=new t({selectors:ez}),eV=new C({selectors:ez}),eB=new d({selectors:ez}),eF=new i({selectors:ez}),eW=new y({selectors:ez}),e_=new w({selectors:ez}),eq=new f({selectors:ez}),eO=new m({selectors:ez}),eU=new p({selectors:ez}),eG=new g({selectors:ez}),eH=new u({selectors:ez}),eJ=new r({selectors:ez,domainServicesSelectors:z,environmentSelectors:L}),eK=new a({selectors:ez,domainServicesSelectors:z}),eQ=new c({selectors:ez}),eX=new s({selectors:ez}),eY=new o({selectors:ez}),eZ=new l({selectors:ez,domainServicesSelectors:z}),e0={domainContextSelectors:ez,domain:eL,componentReader:eV,compositionProjections:eB,blenderProjections:eZ,validationProjections:eW,storeSystem:eJ,navigationSystem:eK,dimensionSystem:eF,undoSystem:eQ,recipeCooker:eX,actionSystem:eY,sketchingProjections:e_,collisionProjections:eO,positionProjections:eq,snappingProjections:eU,projectedEntitiesProjections:eH,constraintProjections:eG},e1=new D({selectors:ez,actions:E,getExtensionSystems:V});return ez};
1
+ import{createSelector as e}from"@salsita-ai/common/utils";import{Domain as t,createInitialDomainState as n}from"../../core/index.js";import{ActionSystem as o,DimensionSystem as i,NavigationSystem as a,RecipeCookerSystem as s,StoreSystem as r,UndoSystem as c}from"../../domain-context/index.js";import{BlenderProjections as l,CollisionProjections as d,CompositionProjections as m,ConstraintProjections as g,PositionProjections as f,ProjectedEntitiesProjections as u,SnappingProjections as p,ValidationProjections as y}from"../../projections/index.js";import{SketchingProjections as w}from"../../sketching/sketching-projections.js";import{requireAccessService as h}from"../access/index.js";import{prepareActionImplementations as S,prepareDomainExpressions as x}from"../spec/index.js";import{ComponentReader as C}from"./component-reader.js";import{DomainContext as D}from"./domain-context.js";let j=e.withTypes(),I=[],v={},P={role:"admin",data:v},M=e=>{if(null!==e)return e;throw Error("Cannot read the session role and data because the domain session context is not set. The session context is written into the domain runtime by the session lifecycle after authentication. Move this read into the loaded session lifecycle.")};export const createDomainContextSelectors=e=>{let{applicationType:A,getState:R,actions:E,specSelectors:T,accessSelectors:b,webComponentSelectors:$,domainDataSelectors:k,sessionContextSelectors:N,domainServicesSelectors:z,environmentSelectors:L,getExtensionSystems:V}=e,B="configurator"===A?T.selectConfiguratorSpec:T.selectAdminSpec,F="configurator"===A?b.selectConfiguratorRawAccessService:b.selectAdminRawAccessService,W=j.leaf(e=>e.domainContext[A]),_=j([W],e=>e.initializationContext),q=j([_],e=>{if(null===e)throw Error(`Domain lifecycle context is not available for ${A}! Read it from an active domain lifecycle.`);return e}),O=j([W],e=>e.executionMode),U=j([W],e=>e.isInitialized),G=j([B],e=>e.factory),H=j([B],e=>e.expressions),J=j([B],e=>e.actions),K=j([B],e=>e.actionImplementations),Q=j([J,K],S),X=j([B],e=>e.$entityReflections),Y=j([H,X],(e,t)=>x({expressions:e,$entityReflections:t})),Z=j([B],e=>e.modelVersion),ee=j([B],e=>e.aliasMap),et=j([B],e=>e.allowedRootEntityTypes),en=j([B],e=>e.entityReflections),eo=j([B],e=>e.migrate),ei=j([O,$.selectReadonly,F],(e,t,n)=>"finalize"===e?"finalize":h(A,n).accessInfo.viewMode||t?"read":"owner"),ea=j([F],e=>e?.configurationId??null),es="configurator"===A?N.selectSessionContext:j([],()=>P),er=j([es],e=>e?.role??null),ec=j([es],e=>e?.data??null),el=j([j.leaf(e=>e.loadedData)],e=>"configurator"===A?e.configuratorLoadedData:e.adminLoadedData),ed=j([el],e=>e?.schemaIdentity??null),em=j([el,G],(e,t)=>{if(null===e)return"coherent";let n=e.schemaIdentity;return void 0===n?"missing-stamp":n===t?"coherent":"schema-mismatch"}),eg=j([ea,er,ec,ed,em,F],(e,t,n,o,i,a)=>null===e||null===a||null===t||null===n||null===o||"coherent"!==i?null:{access:a.accessInfo.access,configurationId:e,role:t,schemaIdentity:o,sessionData:n}),ef=j([F,$.selectReadonly],(e,t)=>e?.accessInfo.viewMode===!0||t),eu=j([eg,_,U,ef],(e,t,n,o)=>{let i=null!==e&&null!==t&&n&&t.access===e.access&&t.configurationId===e.configurationId&&t.role===e.role&&t.schemaIdentity===e.schemaIdentity&&t.sessionData===e.sessionData;return{identity:e,isCurrent:i,isViewMode:o}}),ep=j([B],e=>e.componentOptics),ey=j([ep],e=>(e=>{let t=new Map,n=new Map,o=new Map,i=new Map;for(let n of e)for(let e of n.entityTypes){let o=t.get(e);o||(o=new Map,t.set(e,o));let a=o.get(n.componentType);if(a||(a=new Map,o.set(n.componentType,a)),a.has(n.instanceName))throw Error(`Component instance ${n.instanceName} already exists for type ${n.componentType.name} in entity ${e}. This is likely a bug in the component definition! InstanceNames must be unique within an entity and component.`);if(a.set(n.instanceName,n),"dynamic"===n.kind){let t=i.get(e);t||(t=new Map,i.set(e,t));let o=t.get(n.componentType)??[],a=o.find(e=>{var t;return t=n.instanceName,e.startsWith(`${t}_`)||t.startsWith(`${e}_`)});if(a)throw Error(`Cannot register dynamic component instance ${n.instanceName} for component ${n.componentType.name} on entity ${e} because it overlaps with dynamic instance ${a}. Rename one dynamic instance so compound names cannot be ambiguous.`);t.set(n.componentType,[...o,n.instanceName])}}for(let[e,i]of t.entries()){n.set(e,new Set(i.keys()));let t=new Map;for(let[n,a]of(o.set(e,t),i.entries()))t.set(n,new Set(a.keys()))}return{opticMap:t,allComponentTypes:n,allComponentInstanceNames:o,dynamicInstanceNames:i}})(e)),ew=j([ey,Y,et],(e,t,n)=>({componentReaderIndexes:e,domainExpressions:t,allowedRootEntityTypes:n})),eh=j([B],e=>e.navigationStates),eS=j([B],e=>e.viewStates),ex="configurator"===A?j([T.selectConfiguratorSpec],e=>e.toolStates):j([],()=>I),eC="configurator"===A?j([T.selectConfiguratorSpec],e=>e.exportStates):j([],()=>I),eD="configurator"===A?j([T.selectConfiguratorSpec],e=>e.createTransformers):j([],()=>void 0),ej=j([el],e=>{if(null===e)throw Error(`Loaded data is not available for ${A}! Loaded data is written after the configuration fetch succeeds and before the domain context initialization starts.`);return e}),eI=j([ej,G],(e,t)=>n(t.validateAndMigrateState(e.initialEntities,e.modelVersion),e.rootEntityType)),ev="configurator"===A?k.selectConfiguratorFrontendData:k.selectAdminFrontendData,eP="configurator"===A?k.selectConfiguratorBackendData:k.selectAdminBackendData,eM="configurator"===A?k.selectConfiguratorPublishedData:k.selectAdminPublishedData,eA="configurator"===A?j([N.selectSessionContext],e=>M(e).role):j([],()=>"admin"),eR="configurator"===A?j([N.selectSessionContext],e=>M(e).data):j([],()=>v),eE=j([ea,ei,eA,eR,ej,F],(e,t,n,o,i,a)=>({access:a?.accessInfo.access??null,configurationId:e,mode:t,role:n,schemaIdentity:i.schemaIdentity,sessionData:o})),eT=j([q],e=>e.mode),eb=j([q],e=>{let t=e.configurationId;if(null===t)throw Error(`Configuration id is not available for ${A}! Read it from an active interactive domain lifecycle.`);return t}),e$=j([q],e=>e.role),ek=j([q],e=>e.sessionData),eN=j([eT,e$,ek,ev,eP,eM,eo],(e,t,n,o,i,a,s)=>({mode:e,role:t,sessionData:n,frontendData:o,backendData:i,publishedData:a,migrate:s,domain:eL,componentReader:eV,positionProjections:eq,sketchingProjections:e_,collisionProjections:eO,constraintProjections:eG,snappingProjections:eU,projectedEntitiesProjections:eH})),ez={selectApplicationSpec:B,selectRawAccessService:F,selectDomainContextState:W,selectInitializationContext:_,selectActiveInitializationContext:q,selectExecutionMode:O,selectIsInitialized:U,selectFactory:G,selectSpecExpressions:H,select$SpecEntityReflections:X,selectDomainExpressions:Y,selectModelVersion:Z,selectAliasMap:ee,selectAllowedRootEntityTypes:et,selectEntityReflections:en,selectMigrate:eo,selectLatestMode:ei,selectLatestConfigurationId:ea,selectLatestSessionContext:es,selectLatestRoleOrNull:er,selectLatestSessionDataOrNull:ec,selectLatestSchemaIdentity:ed,selectSchemaCoherence:em,selectInitializationIdentity:eg,selectIsViewMode:ef,selectInitializationState:eu,selectComponentOptics:ep,selectComponentReaderIndexes:ey,selectStoreRuntimeDependencies:ew,selectNavigationStates:eh,selectViewStates:eS,selectToolStates:ex,selectExportStates:eC,selectCreateTransformers:eD,selectLatestLoadedData:el,selectLoadedData:ej,selectInitialDomainState:eI,selectFrontendData:ev,selectBackendData:eP,selectPublishedData:eM,selectLatestRole:eA,selectLatestSessionData:eR,selectNextInitializationContext:eE,selectActiveMode:eT,selectActiveConfigurationId:eb,selectActiveRole:e$,selectActiveSessionData:ek,selectExpressionContext:eN,getInitializationContext:()=>_(R()),getInitializationState:()=>eu(R()),getNextInitializationContext:()=>eE(R()),getLatestLoadedData:()=>el(R()),getSchemaCoherence:()=>em(R()),getActiveConfigurationId:()=>eb(R()),getFactory:()=>G(R()),getDomainExpressions:()=>Y(R()),getActionDefinitions:()=>J(R()),getActionImplementations:()=>Q(R()),getModelVersion:()=>Z(R()),getAliasMap:()=>ee(R()),getAllowedRootEntityTypes:()=>et(R()),getEntityReflections:()=>en(R()),getMigrate:()=>eo(R()),getActiveMode:()=>eT(R()),getIsInitialized:()=>U(R()),getIsViewMode:()=>ef(R()),getComponentReaderIndexes:()=>ey(R()),getStoreRuntimeDependencies:()=>ew(R()),getNavigationStates:()=>eh(R()),getViewStates:()=>eS(R()),getToolStates:()=>ex(R()),getExportStates:()=>eC(R()),getCreateTransformers:()=>eD(R()),getLoadedData:()=>ej(R()),getInitialDomainState:()=>eI(R()),getFrontendData:()=>ev(R()),getBackendData:()=>eP(R()),getPublishedData:()=>eM(R()),getActiveRole:()=>e$(R()),getActiveSessionData:()=>ek(R()),getDomain:()=>eL,getComponentReader:()=>eV,getCompositionProjections:()=>eB,getDimensionSystem:()=>eF,getValidationProjections:()=>eW,getSketchingProjections:()=>e_,getPositionProjections:()=>eq,getCollisionProjections:()=>eO,getSnappingProjections:()=>eU,getConstraintProjections:()=>eG,getProjectedEntitiesProjections:()=>eH,getStoreSystem:()=>eJ,getNavigationSystem:()=>eK,getUndoSystem:()=>eQ,getRecipeCookerSystem:()=>eX,getActionSystem:()=>eY,getBlenderProjections:()=>eZ,getExpressionContext:()=>eN(R()),getDomainSystems:function(){return e0},getDomainContext:function(){return e1}},eL=new t({selectors:ez}),eV=new C({selectors:ez}),eB=new m({selectors:ez}),eF=new i({selectors:ez}),eW=new y({selectors:ez}),e_=new w({selectors:ez}),eq=new f({selectors:ez}),eO=new d({selectors:ez}),eU=new p({selectors:ez}),eG=new g({selectors:ez}),eH=new u({selectors:ez}),eJ=new r({selectors:ez,domainServicesSelectors:z,environmentSelectors:L}),eK=new a({selectors:ez,domainServicesSelectors:z}),eQ=new c({selectors:ez}),eX=new s({selectors:ez}),eY=new o({selectors:ez}),eZ=new l({selectors:ez,domainServicesSelectors:z}),e0={domainContextSelectors:ez,domain:eL,componentReader:eV,compositionProjections:eB,blenderProjections:eZ,validationProjections:eW,storeSystem:eJ,navigationSystem:eK,dimensionSystem:eF,undoSystem:eQ,recipeCooker:eX,actionSystem:eY,sketchingProjections:e_,collisionProjections:eO,positionProjections:eq,snappingProjections:eU,projectedEntitiesProjections:eH,constraintProjections:eG},e1=new D({selectors:ez,actions:E,getExtensionSystems:V});return ez};
@@ -86,6 +86,7 @@ export declare function createDomainRuntimeSlices<State extends DomainRuntimeSta
86
86
  selectElementSlots: import("@salsita-ai/common/utils").Selector<import("./index.js").SpecSelectorState, {
87
87
  entityElements: Record<string, (props: import("./index.js").CustomPhoenixEntityElementProps) => JSX.Element>;
88
88
  layoutElements: Record<string, (props: import("react").PropsWithChildren) => JSX.Element>;
89
+ assistantFormElements: Record<string, import("react").ComponentType<never>>;
89
90
  hashes: Record<string, string>;
90
91
  }>;
91
92
  selectDataConfig: import("@salsita-ai/common/utils").Selector<import("./index.js").SpecSelectorState, import("../index.js").DataSpec | null>;
@@ -129,6 +130,7 @@ export declare function createDomainRuntimeSlices<State extends DomainRuntimeSta
129
130
  getElementSlots: () => {
130
131
  entityElements: Record<string, (props: import("./index.js").CustomPhoenixEntityElementProps) => JSX.Element>;
131
132
  layoutElements: Record<string, (props: import("react").PropsWithChildren) => JSX.Element>;
133
+ assistantFormElements: Record<string, import("react").ComponentType<never>>;
132
134
  hashes: Record<string, string>;
133
135
  };
134
136
  getDataConfig: () => import("../index.js").DataSpec | null;
@@ -342,6 +344,8 @@ export declare function createDomainRuntimeSlices<State extends DomainRuntimeSta
342
344
  webComponent: {
343
345
  selectReadonly: import("@salsita-ai/common/utils").Selector<import("./index.js").WebComponentSelectorState, boolean>;
344
346
  getReadonly: () => boolean;
347
+ selectLocale: import("@salsita-ai/common/utils").Selector<import("./index.js").WebComponentSelectorState, string>;
348
+ getLocale: () => string;
345
349
  getWebcomponentGeneration: () => number;
346
350
  };
347
351
  domainContext: {
@@ -415,6 +419,7 @@ export declare function createDomainRuntimeSlices<State extends DomainRuntimeSta
415
419
  getMigrate: () => import("../index.js").MigrateFunction<import("../index.js").DomainEntity<string>>;
416
420
  getActiveMode: () => import("../index.js").DomainMode;
417
421
  getIsInitialized: () => boolean;
422
+ getIsViewMode: () => boolean;
418
423
  getComponentReaderIndexes: () => import("./index.js").ComponentReaderIndexes;
419
424
  getStoreRuntimeDependencies: () => {
420
425
  componentReaderIndexes: import("./index.js").ComponentReaderIndexes;
@@ -524,6 +529,7 @@ export declare function createDomainRuntimeSlices<State extends DomainRuntimeSta
524
529
  getMigrate: () => import("../index.js").MigrateFunction<import("../index.js").DomainEntity<string>>;
525
530
  getActiveMode: () => import("../index.js").DomainMode;
526
531
  getIsInitialized: () => boolean;
532
+ getIsViewMode: () => boolean;
527
533
  getComponentReaderIndexes: () => import("./index.js").ComponentReaderIndexes;
528
534
  getStoreRuntimeDependencies: () => {
529
535
  componentReaderIndexes: import("./index.js").ComponentReaderIndexes;
@@ -628,6 +634,13 @@ export declare function createDomainRuntimeSlices<State extends DomainRuntimeSta
628
634
  };
629
635
  };
630
636
  };
637
+ /**
638
+ * Writers only the runtime that owns the host-property mirror may call, kept off the public
639
+ * `actions`: the host sets `locale` on the element, and the mirror copies it here.
640
+ */
641
+ hostMirrorActions: {
642
+ setLocale: (locale: string) => void;
643
+ };
631
644
  };
632
645
  export type DomainRuntimeSlices = ReturnType<typeof createDomainRuntimeSlices>;
633
646
  export declare const createDomainRuntime: (props: Omit<Props<DomainRuntimeState>, 'getSubject'>) => {
@@ -684,6 +697,7 @@ export declare const createDomainRuntime: (props: Omit<Props<DomainRuntimeState>
684
697
  selectElementSlots: import("@salsita-ai/common/utils").Selector<import("./index.js").SpecSelectorState, {
685
698
  entityElements: Record<string, (props: import("./index.js").CustomPhoenixEntityElementProps) => JSX.Element>;
686
699
  layoutElements: Record<string, (props: import("react").PropsWithChildren) => JSX.Element>;
700
+ assistantFormElements: Record<string, import("react").ComponentType<never>>;
687
701
  hashes: Record<string, string>;
688
702
  }>;
689
703
  selectDataConfig: import("@salsita-ai/common/utils").Selector<import("./index.js").SpecSelectorState, import("../index.js").DataSpec | null>;
@@ -727,6 +741,7 @@ export declare const createDomainRuntime: (props: Omit<Props<DomainRuntimeState>
727
741
  getElementSlots: () => {
728
742
  entityElements: Record<string, (props: import("./index.js").CustomPhoenixEntityElementProps) => JSX.Element>;
729
743
  layoutElements: Record<string, (props: import("react").PropsWithChildren) => JSX.Element>;
744
+ assistantFormElements: Record<string, import("react").ComponentType<never>>;
730
745
  hashes: Record<string, string>;
731
746
  };
732
747
  getDataConfig: () => import("../index.js").DataSpec | null;
@@ -940,6 +955,8 @@ export declare const createDomainRuntime: (props: Omit<Props<DomainRuntimeState>
940
955
  webComponent: {
941
956
  selectReadonly: import("@salsita-ai/common/utils").Selector<import("./index.js").WebComponentSelectorState, boolean>;
942
957
  getReadonly: () => boolean;
958
+ selectLocale: import("@salsita-ai/common/utils").Selector<import("./index.js").WebComponentSelectorState, string>;
959
+ getLocale: () => string;
943
960
  getWebcomponentGeneration: () => number;
944
961
  };
945
962
  domainContext: {
@@ -1013,6 +1030,7 @@ export declare const createDomainRuntime: (props: Omit<Props<DomainRuntimeState>
1013
1030
  getMigrate: () => import("../index.js").MigrateFunction<import("../index.js").DomainEntity<string>>;
1014
1031
  getActiveMode: () => import("../index.js").DomainMode;
1015
1032
  getIsInitialized: () => boolean;
1033
+ getIsViewMode: () => boolean;
1016
1034
  getComponentReaderIndexes: () => import("./index.js").ComponentReaderIndexes;
1017
1035
  getStoreRuntimeDependencies: () => {
1018
1036
  componentReaderIndexes: import("./index.js").ComponentReaderIndexes;
@@ -1122,6 +1140,7 @@ export declare const createDomainRuntime: (props: Omit<Props<DomainRuntimeState>
1122
1140
  getMigrate: () => import("../index.js").MigrateFunction<import("../index.js").DomainEntity<string>>;
1123
1141
  getActiveMode: () => import("../index.js").DomainMode;
1124
1142
  getIsInitialized: () => boolean;
1143
+ getIsViewMode: () => boolean;
1125
1144
  getComponentReaderIndexes: () => import("./index.js").ComponentReaderIndexes;
1126
1145
  getStoreRuntimeDependencies: () => {
1127
1146
  componentReaderIndexes: import("./index.js").ComponentReaderIndexes;
@@ -1226,6 +1245,13 @@ export declare const createDomainRuntime: (props: Omit<Props<DomainRuntimeState>
1226
1245
  };
1227
1246
  };
1228
1247
  };
1248
+ /**
1249
+ * Writers only the runtime that owns the host-property mirror may call, kept off the public
1250
+ * `actions`: the host sets `locale` on the element, and the mirror copies it here.
1251
+ */
1252
+ hostMirrorActions: {
1253
+ setLocale: (locale: string) => void;
1254
+ };
1229
1255
  getState: () => DomainRuntimeState;
1230
1256
  subscribe: (callback: () => void) => () => void;
1231
1257
  };
@@ -1 +1 @@
1
- import{BehaviorSubject as e}from"rxjs";import{createAccessInfoActions as t,createAccessInfoSelectors as n,initializeAccessInfo as a}from"./access/index.js";import{createDomainContextActions as o,createDomainContextSelectors as i,initializeDomainContext as s}from"./domain-context/index.js";import{createDomainDataActions as r,createDomainDataSelectors as m,initializeDomainData as l}from"./domain-data/index.js";import{createDomainServicesSelectors as d}from"./domain-services/index.js";import{createEnvironmentActions as c,createEnvironmentSelectors as u,initializeEnvironment as v}from"./environment/index.js";import{createLoadedDataActions as x,createLoadedDataSelectors as p,initializeLoadedData as S}from"./loaded-data/index.js";import{createOverridesActions as f,createOverridesSelectors as g,initializeOverrides as C}from"./overrides/index.js";import{createSessionContextActions as D,createSessionContextSelectors as b,initializeSessionContext as j}from"./session-context/index.js";import{createSpecActions as w,createSpecSelectors as y,initializeSpec as E}from"./spec/index.js";import{createWebComponentActions as z,createWebComponentSelectors as R,initializeWebComponent as T}from"./web-component/index.js";export function createDomainRuntimeSlices(e){let{config:h,getSubject:A,services:I,getExtensionSystems:L}=e,O=w({setSpec:e=>{let t=A(),n=e(t.value.spec);t.next({...t.value,spec:n})}}),W=y({getState:()=>A().value}),k=d({services:I,specSelectors:W}),q=f({setOverrides:e=>{let t=A(),n=e(t.value.overrides);t.next({...t.value,overrides:n})}}),B=g({getState:()=>A().value}),F=u({getState:()=>A().value,overridesSelectors:B}),G=c({setEnvironment:e=>{let t=A(),n=e(t.value.environment);t.next({...t.value,environment:n})}}),H=x({setLoadedData:e=>{let t=A(),n=e(t.value.loadedData);t.next({...t.value,loadedData:n})}}),J=p({getState:()=>A().value}),K=r({setDomainDataState:e=>{let t=A(),n=e(t.value.domainData);t.next({...t.value,domainData:n})}}),M=m({getState:()=>A().value,overridesSelectors:B}),N=D({setSessionContextState:e=>{let t=A(),n=e(t.value.sessionContext);t.next({...t.value,sessionContext:n})}}),P=b({getState:()=>A().value,overridesSelectors:B}),Q=t({setAccessInfoState:e=>{let t=A(),n=e(t.value.access);t.next({...t.value,access:n})}}),U=n({getState:()=>A().value,overridesSelectors:B}),V=z({setWebComponentState:e=>{let t=A(),n=e(t.value.webComponent);t.next({...t.value,webComponent:n})}}),X=R({getState:()=>A().value}),Y=o({setDomainContextState:e=>{let t=A(),n=e(t.value.domainContext);t.next({...t.value,domainContext:n})}}),Z={configurator:i({applicationType:"configurator",getState:()=>A().value,actions:Y.configurator,getExtensionSystems:()=>L?.("configurator")??[],specSelectors:W,accessSelectors:U,webComponentSelectors:X,domainDataSelectors:M,sessionContextSelectors:P,domainServicesSelectors:k,environmentSelectors:F}),admin:i({applicationType:"admin",getState:()=>A().value,actions:Y.admin,getExtensionSystems:()=>L?.("admin")??[],specSelectors:W,accessSelectors:U,webComponentSelectors:X,domainDataSelectors:M,sessionContextSelectors:P,domainServicesSelectors:k,environmentSelectors:F})};return{initialize:()=>({spec:E(h),overrides:C(),environment:v(h),loadedData:S(),domainData:l(),sessionContext:j(),access:a(),webComponent:T(),domainContext:s()}),selectors:{domainServices:k,spec:W,overrides:B,environment:F,loadedData:J,domainData:M,sessionContext:P,access:U,webComponent:X,domainContext:Z},actions:{spec:O,overrides:q,environment:G,loadedData:H,domainData:K,sessionContext:N,access:Q,webComponent:V,domainContext:Y}}}export const createDomainRuntime=t=>{let{config:n,services:a,getExtensionSystems:o}=t,i=null,s=createDomainRuntimeSlices({config:n,getSubject:()=>{if(!i)throw Error("Subject not yet initialized!");return i},services:a,getExtensionSystems:o});return i=new e(s.initialize()),{...s,getState:()=>i.value,subscribe:e=>{let t=i.subscribe(()=>e());return()=>t.unsubscribe()}}};
1
+ import{BehaviorSubject as e}from"rxjs";import{createAccessInfoActions as t,createAccessInfoSelectors as n,initializeAccessInfo as a}from"./access/index.js";import{createDomainContextActions as o,createDomainContextSelectors as i,initializeDomainContext as s}from"./domain-context/index.js";import{createDomainDataActions as r,createDomainDataSelectors as m,initializeDomainData as l}from"./domain-data/index.js";import{createDomainServicesSelectors as d}from"./domain-services/index.js";import{createEnvironmentActions as c,createEnvironmentSelectors as u,initializeEnvironment as v}from"./environment/index.js";import{createLoadedDataActions as x,createLoadedDataSelectors as p,initializeLoadedData as S}from"./loaded-data/index.js";import{createOverridesActions as f,createOverridesSelectors as g,initializeOverrides as C}from"./overrides/index.js";import{createSessionContextActions as D,createSessionContextSelectors as b,initializeSessionContext as j}from"./session-context/index.js";import{createSpecActions as w,createSpecSelectors as y,initializeSpec as E}from"./spec/index.js";import{createWebComponentActions as z,createWebComponentSelectors as R,initializeWebComponent as h}from"./web-component/index.js";export function createDomainRuntimeSlices(e){let{config:A,getSubject:T,services:I,getExtensionSystems:L}=e,M=w({setSpec:e=>{let t=T(),n=e(t.value.spec);t.next({...t.value,spec:n})}}),O=y({getState:()=>T().value}),W=d({services:I,specSelectors:O}),k=f({setOverrides:e=>{let t=T(),n=e(t.value.overrides);t.next({...t.value,overrides:n})}}),q=g({getState:()=>T().value}),B=u({getState:()=>T().value,overridesSelectors:q}),F=c({setEnvironment:e=>{let t=T(),n=e(t.value.environment);t.next({...t.value,environment:n})}}),G=x({setLoadedData:e=>{let t=T(),n=e(t.value.loadedData);t.next({...t.value,loadedData:n})}}),H=p({getState:()=>T().value}),J=r({setDomainDataState:e=>{let t=T(),n=e(t.value.domainData);t.next({...t.value,domainData:n})}}),K=m({getState:()=>T().value,overridesSelectors:q}),N=D({setSessionContextState:e=>{let t=T(),n=e(t.value.sessionContext);t.next({...t.value,sessionContext:n})}}),P=b({getState:()=>T().value,overridesSelectors:q}),Q=t({setAccessInfoState:e=>{let t=T(),n=e(t.value.access);t.next({...t.value,access:n})}}),U=n({getState:()=>T().value,overridesSelectors:q}),{setLocale:V,...X}=z({setWebComponentState:e=>{let t=T(),n=e(t.value.webComponent);t.next({...t.value,webComponent:n})}}),Y=R({getState:()=>T().value}),Z=o({setDomainContextState:e=>{let t=T(),n=e(t.value.domainContext);t.next({...t.value,domainContext:n})}}),$={configurator:i({applicationType:"configurator",getState:()=>T().value,actions:Z.configurator,getExtensionSystems:()=>L?.("configurator")??[],specSelectors:O,accessSelectors:U,webComponentSelectors:Y,domainDataSelectors:K,sessionContextSelectors:P,domainServicesSelectors:W,environmentSelectors:B}),admin:i({applicationType:"admin",getState:()=>T().value,actions:Z.admin,getExtensionSystems:()=>L?.("admin")??[],specSelectors:O,accessSelectors:U,webComponentSelectors:Y,domainDataSelectors:K,sessionContextSelectors:P,domainServicesSelectors:W,environmentSelectors:B})};return{initialize:()=>({spec:E(A),overrides:C(),environment:v(A),loadedData:S(),domainData:l(),sessionContext:j(),access:a(),webComponent:h(),domainContext:s()}),selectors:{domainServices:W,spec:O,overrides:q,environment:B,loadedData:H,domainData:K,sessionContext:P,access:U,webComponent:Y,domainContext:$},actions:{spec:M,overrides:k,environment:F,loadedData:G,domainData:J,sessionContext:N,access:Q,webComponent:X,domainContext:Z},hostMirrorActions:{setLocale:V}}}export const createDomainRuntime=t=>{let{config:n,services:a,getExtensionSystems:o}=t,i=null,s=createDomainRuntimeSlices({config:n,getSubject:()=>{if(!i)throw Error("Subject not yet initialized!");return i},services:a,getExtensionSystems:o});return i=new e(s.initialize()),{...s,getState:()=>i.value,subscribe:e=>{let t=i.subscribe(()=>e());return()=>t.unsubscribe()}}};