@salsita-ai/sdk 0.50.0-develop.016963b09e → 0.50.0-develop.032de0e554

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 (1255) hide show
  1. package/README.md +20 -15
  2. package/dist/admin/default-admin-elements.d.ts +9 -0
  3. package/dist/admin/default-admin-elements.js +1 -0
  4. package/dist/admin/default-elements/built-in-entity-element.d.ts +10 -0
  5. package/dist/admin/default-elements/built-in-entity-element.js +1 -0
  6. package/dist/admin/default-elements/built-in-layout-element.d.ts +10 -0
  7. package/dist/admin/default-elements/built-in-layout-element.js +1 -0
  8. package/dist/admin/default-elements/index.d.ts +2 -0
  9. package/dist/admin/default-elements/index.js +1 -0
  10. package/dist/admin/index.d.ts +1 -0
  11. package/dist/admin/index.js +1 -1
  12. package/dist/application/index.d.ts +1 -0
  13. package/dist/application/index.js +1 -1
  14. package/dist/application/mount-application.d.ts +1 -1
  15. package/dist/application/mount-application.js +1 -1
  16. package/dist/application/mount-configurator.d.ts +19 -0
  17. package/dist/application/mount-configurator.js +1 -0
  18. package/dist/application/mounted-application-runtime.d.ts +4 -0
  19. package/dist/application/mounted-application-runtime.js +1 -0
  20. package/dist/application/register-web-component.d.ts +2 -0
  21. package/dist/application/register-web-component.js +1 -0
  22. package/dist/application-spec/caching/content-diff.js +1 -1
  23. package/dist/application-spec/core/application-file.d.ts +0 -2
  24. package/dist/application-spec/core/application-file.js +1 -1
  25. package/dist/application-spec/core/components/component-filter.d.ts +53 -0
  26. package/dist/application-spec/core/components/component-filter.js +1 -0
  27. package/dist/application-spec/core/components/index.d.ts +2 -0
  28. package/dist/application-spec/core/components/index.js +1 -0
  29. package/dist/application-spec/core/components/sdk-code-ref.d.ts +9 -0
  30. package/dist/application-spec/core/components/sdk-code-ref.js +1 -0
  31. package/dist/application-spec/core/enhanced-json-value.d.ts +0 -68
  32. package/dist/application-spec/core/enhanced-json-value.js +1 -1
  33. package/dist/application-spec/core/expressions/index.d.ts +2 -0
  34. package/dist/application-spec/core/expressions/index.js +1 -0
  35. package/dist/application-spec/core/expressions/relation-expression-params.d.ts +11 -0
  36. package/dist/application-spec/core/expressions/relation-expression-params.js +1 -0
  37. package/dist/application-spec/core/expressions/sdk-expression-implementation.d.ts +24 -0
  38. package/dist/application-spec/core/expressions/sdk-expression-implementation.js +1 -0
  39. package/dist/application-spec/core/index.d.ts +2 -0
  40. package/dist/application-spec/core/index.js +1 -1
  41. package/dist/application-spec/core/json-value.d.ts +1 -1
  42. package/dist/application-spec/{core → enhanced-json}/eval-to-constant.d.ts +1 -1
  43. package/dist/application-spec/enhanced-json/index.d.ts +4 -0
  44. package/dist/application-spec/enhanced-json/index.js +1 -0
  45. package/dist/application-spec/enhanced-json/is-enhanced-json-array.d.ts +2 -0
  46. package/dist/application-spec/enhanced-json/is-enhanced-json-array.js +1 -0
  47. package/dist/application-spec/enhanced-json/resolve-enhanced-json-value.d.ts +18 -0
  48. package/dist/application-spec/enhanced-json/resolve-enhanced-json-value.js +1 -0
  49. package/dist/application-spec/enhanced-json/schema-from-value.d.ts +24 -0
  50. package/dist/application-spec/enhanced-json/schema-from-value.js +1 -0
  51. package/dist/application-spec/enhanced-json/stringify-enhanced-json-value.d.ts +14 -0
  52. package/dist/application-spec/enhanced-json/stringify-enhanced-json-value.js +1 -0
  53. package/dist/application-spec/enhanced-json/validate-enhanced-json-value-caps.d.ts +12 -0
  54. package/dist/application-spec/enhanced-json/validate-enhanced-json-value-caps.js +1 -0
  55. package/dist/application-spec/enhanced-json/validate-no-legacy-code-ref.d.ts +13 -0
  56. package/dist/application-spec/enhanced-json/validate-no-legacy-code-ref.js +1 -0
  57. package/dist/application-spec/errors/diagnostic-codes.d.ts +19 -0
  58. package/dist/application-spec/errors/diagnostic-codes.js +1 -1
  59. package/dist/application-spec/errors/diagnostic-messages.d.ts +23 -1
  60. package/dist/application-spec/errors/diagnostic-messages.js +1 -1
  61. package/dist/application-spec/generate-application/code/common/code-imports.js +1 -1
  62. package/dist/application-spec/generate-application/code/common/env-reader.js +2 -2
  63. package/dist/application-spec/generate-application/code/common/index.d.ts +1 -0
  64. package/dist/application-spec/generate-application/code/common/index.js +1 -1
  65. package/dist/application-spec/generate-application/code/common/single-quoted-string.d.ts +6 -0
  66. package/dist/application-spec/generate-application/code/common/single-quoted-string.js +1 -0
  67. package/dist/application-spec/generate-application/code/domain-runtime-files.js +1 -1
  68. package/dist/application-spec/generate-application/code/generate-application-code.d.ts +3 -2
  69. package/dist/application-spec/generate-application/code/generate-application-code.js +1 -1
  70. package/dist/application-spec/generate-application/code/project-scaffolding.d.ts +15 -14
  71. package/dist/application-spec/generate-application/code/project-scaffolding.js +2 -2
  72. package/dist/application-spec/generate-application/code/standalone-app-files.d.ts +2 -2
  73. package/dist/application-spec/generate-application/code/standalone-app-files.js +1 -1
  74. package/dist/application-spec/generate-application/code/story-files.js +1 -1
  75. package/dist/application-spec/generate-application/code/templates/admin-config.js +3 -0
  76. package/dist/application-spec/generate-application/code/templates/application-types.js +6 -6
  77. package/dist/application-spec/generate-application/code/templates/common/doc-comment.d.ts +2 -0
  78. package/dist/application-spec/generate-application/code/templates/common/doc-comment.js +1 -0
  79. package/dist/application-spec/generate-application/code/templates/common/format-property-key.d.ts +7 -0
  80. package/dist/application-spec/generate-application/code/templates/common/format-property-key.js +1 -0
  81. package/dist/application-spec/generate-application/code/templates/common/schema-to-type-string.js +3 -3
  82. package/dist/application-spec/generate-application/code/templates/configurator-config.js +6 -4
  83. package/dist/application-spec/generate-application/code/templates/configurator-globals.d.ts +2 -1
  84. package/dist/application-spec/generate-application/code/templates/configurator-globals.js +19 -6
  85. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/domain-factory-types.d.ts +35 -0
  86. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/domain-factory-types.js +5 -0
  87. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/index.d.ts +1 -0
  88. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/index.js +1 -0
  89. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-component-optics.d.ts +1 -1
  90. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-component-optics.js +7 -7
  91. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-defaults.js +1 -1
  92. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-domain-block.js +67 -70
  93. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.d.ts +8 -0
  94. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.js +1 -1
  95. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-phx-globals.js +3 -0
  96. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-presets.js +1 -1
  97. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-resources.d.ts +6 -8
  98. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-resources.js +21 -21
  99. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-states.d.ts +1 -1
  100. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-states.js +2 -2
  101. package/dist/application-spec/generate-application/code/templates/domain-spec/index.d.ts +3 -2
  102. package/dist/application-spec/generate-application/code/templates/domain-spec/index.js +1 -1
  103. package/dist/application-spec/generate-application/code/templates/domain-spec.js +12 -12
  104. package/dist/application-spec/generate-application/code/templates/eslint-config.d.ts +5 -0
  105. package/dist/application-spec/generate-application/code/templates/eslint-config.js +4 -5
  106. package/dist/application-spec/generate-application/code/templates/frontend-config.js +3 -5
  107. package/dist/application-spec/generate-application/code/templates/gitignore.js +0 -3
  108. package/dist/application-spec/generate-application/code/templates/global-definition/generate-action-types.js +7 -7
  109. package/dist/application-spec/generate-application/code/templates/global-definition/generate-assistant-form-element-types.d.ts +12 -0
  110. package/dist/application-spec/generate-application/code/templates/global-definition/generate-assistant-form-element-types.js +7 -0
  111. package/dist/application-spec/generate-application/code/templates/global-definition/generate-phx-types.d.ts +43 -0
  112. package/dist/application-spec/generate-application/code/templates/global-definition/generate-phx-types.js +33 -0
  113. package/dist/application-spec/generate-application/code/templates/global-definition/index.d.ts +2 -0
  114. package/dist/application-spec/generate-application/code/templates/global-definition/index.js +1 -1
  115. package/dist/application-spec/generate-application/code/templates/globals.js +24 -43
  116. package/dist/application-spec/generate-application/code/templates/index.d.ts +5 -9
  117. package/dist/application-spec/generate-application/code/templates/index.js +1 -1
  118. package/dist/application-spec/generate-application/code/templates/lingui-rc.d.ts +5 -0
  119. package/dist/application-spec/generate-application/code/templates/lingui-rc.js +4 -4
  120. package/dist/application-spec/generate-application/code/templates/prettier-config.d.ts +5 -0
  121. package/dist/application-spec/generate-application/code/templates/prettier-config.js +4 -5
  122. package/dist/application-spec/generate-application/code/templates/root-tsconfig.d.ts +6 -0
  123. package/dist/application-spec/generate-application/code/templates/root-tsconfig.js +2 -0
  124. package/dist/application-spec/generate-application/code/templates/skills/phoenix-cli-skill.js +1 -1
  125. package/dist/application-spec/generate-application/code/templates/skills/phoenix-create-configurator-skill.js +1 -1
  126. package/dist/application-spec/generate-application/code/templates/skills/phoenix-feedback-skill.js +5 -5
  127. package/dist/application-spec/generate-application/code/templates/skills/phoenix-review-skill.js +9 -3
  128. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill-bundle.d.ts +10 -0
  129. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill-bundle.js +7 -0
  130. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill.js +1 -1
  131. package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.js +2 -2
  132. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.d.ts +33 -7
  133. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.js +2 -2
  134. package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.d.ts +58 -0
  135. package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.js +1 -0
  136. package/dist/application-spec/generate-application/code/templates/spec-code/index.d.ts +2 -0
  137. package/dist/application-spec/generate-application/code/templates/spec-code/index.js +1 -0
  138. package/dist/application-spec/generate-application/code/templates/spec-code/spec-code.d.ts +18 -0
  139. package/dist/application-spec/generate-application/code/templates/spec-code/spec-code.js +41 -0
  140. package/dist/application-spec/generate-application/code/templates/spec-messages/index.d.ts +1 -0
  141. package/dist/application-spec/generate-application/code/templates/spec-messages/index.js +1 -0
  142. package/dist/application-spec/generate-application/code/templates/spec-messages/spec-messages.d.ts +20 -0
  143. package/dist/application-spec/generate-application/code/templates/spec-messages/spec-messages.js +6 -0
  144. package/dist/application-spec/generate-application/code/templates/story/phx-module.d.ts +8 -2
  145. package/dist/application-spec/generate-application/code/templates/story/phx-module.js +15 -3
  146. package/dist/application-spec/generate-application/code/templates/story/wrapper.d.ts +3 -0
  147. package/dist/application-spec/generate-application/code/templates/story/wrapper.js +2 -1
  148. package/dist/application-spec/generate-application/code/templates/tsconfig.d.ts +5 -0
  149. package/dist/application-spec/generate-application/code/templates/tsconfig.js +1 -1
  150. package/dist/application-spec/generate-application/code/templates/webhook-index.d.ts +6 -1
  151. package/dist/application-spec/generate-application/code/templates/webhook-index.js +10 -1
  152. package/dist/application-spec/generate-application/code/templates/webhooks-config.js +2 -3
  153. package/dist/application-spec/generate-application/implementations/phx-application-types.d.ts +25 -0
  154. package/dist/application-spec/generate-application/implementations/phx-application-types.js +1 -0
  155. package/dist/application-spec/generate-application/implementations/phx-domain.d.ts +36 -0
  156. package/dist/application-spec/generate-application/implementations/phx-domain.js +1 -0
  157. package/dist/application-spec/generate-application/implementations/phx-model.d.ts +24 -0
  158. package/dist/application-spec/generate-application/implementations/phx-model.js +1 -0
  159. package/dist/application-spec/generate-application/implementations/phx.d.ts +22 -0
  160. package/dist/application-spec/generate-application/implementations/phx.js +1 -0
  161. package/dist/application-spec/generate-application/index.d.ts +4 -0
  162. package/dist/application-spec/generate-application/index.js +1 -1
  163. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.d.ts +6 -4
  164. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.js +1 -1
  165. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.d.ts +12 -4
  166. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.js +1 -1
  167. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-spec-runtime.d.ts +16 -0
  168. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-spec-runtime.js +1 -0
  169. package/dist/application-spec/generate-application/runtime/admin-runtime/states-runtime.d.ts +2 -2
  170. package/dist/application-spec/generate-application/runtime/application-runtime.d.ts +35 -8
  171. package/dist/application-spec/generate-application/runtime/application-runtime.js +1 -1
  172. package/dist/application-spec/generate-application/runtime/application-spec-slice.d.ts +71 -0
  173. package/dist/application-spec/generate-application/runtime/application-spec-slice.js +1 -0
  174. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.d.ts +7 -5
  175. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.js +1 -1
  176. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.d.ts +12 -5
  177. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.js +1 -1
  178. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-spec-runtime.d.ts +16 -0
  179. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-spec-runtime.js +1 -0
  180. package/dist/application-spec/generate-application/runtime/configurator-runtime/states-runtime.d.ts +2 -2
  181. package/dist/application-spec/generate-application/runtime/create-application.d.ts +57 -0
  182. package/dist/application-spec/generate-application/runtime/create-application.js +1 -0
  183. package/dist/application-spec/generate-application/runtime/factory-data/factory-data-runtime.d.ts +43 -0
  184. package/dist/application-spec/generate-application/runtime/factory-data/factory-data-runtime.js +1 -0
  185. package/dist/application-spec/generate-application/runtime/factory-data/index.d.ts +3 -0
  186. package/dist/application-spec/generate-application/runtime/factory-data/index.js +1 -0
  187. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.d.ts +13 -0
  188. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.js +1 -0
  189. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.d.ts +16 -0
  190. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.js +1 -0
  191. package/dist/application-spec/generate-application/runtime/index.d.ts +8 -0
  192. package/dist/application-spec/generate-application/runtime/index.js +1 -0
  193. package/dist/application-spec/generate-application/runtime/migrations/index.d.ts +1 -0
  194. package/dist/application-spec/generate-application/runtime/migrations/index.js +1 -0
  195. package/dist/application-spec/generate-application/runtime/migrations/migration-runtime.d.ts +53 -0
  196. package/dist/application-spec/generate-application/runtime/migrations/migration-runtime.js +1 -0
  197. package/dist/application-spec/generate-application/runtime/sections/assistant-runtime.d.ts +2 -2
  198. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.d.ts +3 -2
  199. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.js +1 -1
  200. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.d.ts +2 -1
  201. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.js +1 -1
  202. package/dist/application-spec/generate-application/runtime/sections/component-optic.d.ts +3 -0
  203. package/dist/application-spec/generate-application/runtime/sections/component-optic.js +1 -1
  204. package/dist/application-spec/generate-application/runtime/sections/data-runtime.d.ts +4 -4
  205. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.d.ts +15 -6
  206. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.js +1 -1
  207. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.d.ts +9 -5
  208. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.js +1 -1
  209. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.d.ts +3 -1
  210. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.js +1 -1
  211. package/dist/application-spec/generate-application/runtime/sections/theme-runtime.d.ts +2 -2
  212. package/dist/application-spec/generate-application/runtime/sections/transformers-runtime.d.ts +3 -3
  213. package/dist/application-spec/generate-application/runtime/spec-code/index.d.ts +2 -0
  214. package/dist/application-spec/generate-application/runtime/spec-code/index.js +1 -0
  215. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.d.ts +18 -0
  216. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.js +1 -0
  217. package/dist/application-spec/generate-application/runtime/spec-code/spec-code-module.d.ts +17 -0
  218. package/dist/application-spec/generate-application/runtime/spec-code/spec-code-module.js +1 -0
  219. package/dist/application-spec/generate-application/runtime/spec-runtime.d.ts +21 -0
  220. package/dist/application-spec/generate-application/runtime/spec-runtime.js +1 -0
  221. package/dist/application-spec/generate-application/runtime-spec/decode-runtime-spec.d.ts +9 -0
  222. package/dist/application-spec/generate-application/runtime-spec/decode-runtime-spec.js +1 -0
  223. package/dist/application-spec/generate-application/runtime-spec/encode-runtime-spec.d.ts +8 -0
  224. package/dist/application-spec/generate-application/runtime-spec/encode-runtime-spec.js +1 -0
  225. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.d.ts +28 -0
  226. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.js +1 -0
  227. package/dist/application-spec/generate-application/runtime-spec/index.d.ts +5 -0
  228. package/dist/application-spec/generate-application/runtime-spec/index.js +1 -0
  229. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.d.ts +103 -0
  230. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.js +1 -0
  231. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.d.ts +40 -0
  232. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.js +1 -0
  233. package/dist/application-spec/index.d.ts +1 -0
  234. package/dist/application-spec/index.js +1 -1
  235. package/dist/application-spec/parse-application-files/categorize/categorize-files.d.ts +34 -0
  236. package/dist/application-spec/parse-application-files/categorize/categorize-files.js +1 -1
  237. package/dist/application-spec/parse-application-files/categorize/earlier-generated-editor-configs.d.ts +16 -0
  238. package/dist/application-spec/parse-application-files/categorize/earlier-generated-editor-configs.js +9 -0
  239. package/dist/application-spec/parse-application-files/categorize/earlier-generated-tsconfig.d.ts +9 -0
  240. package/dist/application-spec/parse-application-files/categorize/earlier-generated-tsconfig.js +1 -0
  241. package/dist/application-spec/parse-application-files/categorize/module-analysis.d.ts +1 -1
  242. package/dist/application-spec/parse-application-files/categorize/module-analysis.js +1 -1
  243. package/dist/application-spec/parse-application-files/raw-spec/parse-yaml-spec-file.js +1 -1
  244. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.d.ts +47 -4
  245. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.js +1 -1
  246. package/dist/application-spec/parse-application-files/raw-spec/raw-spec-file.js +1 -1
  247. package/dist/application-spec/parse-application-files/spec/application/admin-spec/admin-spec.js +1 -1
  248. package/dist/application-spec/parse-application-files/spec/application/configurator-spec/configurator-spec.js +1 -1
  249. package/dist/application-spec/parse-application-files/spec/common/index.d.ts +1 -0
  250. package/dist/application-spec/parse-application-files/spec/common/index.js +1 -1
  251. package/dist/application-spec/parse-application-files/spec/common/value-type/format-value-type.d.ts +3 -0
  252. package/dist/application-spec/parse-application-files/spec/common/value-type/format-value-type.js +1 -0
  253. package/dist/application-spec/parse-application-files/spec/common/value-type/index.d.ts +5 -0
  254. package/dist/application-spec/parse-application-files/spec/common/value-type/index.js +1 -0
  255. package/dist/application-spec/parse-application-files/spec/common/value-type/intersect-value-types.d.ts +6 -0
  256. package/dist/application-spec/parse-application-files/spec/common/value-type/intersect-value-types.js +1 -0
  257. package/dist/application-spec/parse-application-files/spec/common/value-type/is-assignable-value-type.d.ts +8 -0
  258. package/dist/application-spec/parse-application-files/spec/common/value-type/is-assignable-value-type.js +1 -0
  259. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type-at.d.ts +10 -0
  260. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type-at.js +1 -0
  261. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type.d.ts +98 -0
  262. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type.js +1 -0
  263. package/dist/application-spec/parse-application-files/spec/components/bindings/component-path.d.ts +13 -0
  264. package/dist/application-spec/parse-application-files/spec/components/bindings/component-path.js +1 -0
  265. package/dist/application-spec/parse-application-files/spec/components/bindings/index.d.ts +2 -0
  266. package/dist/application-spec/parse-application-files/spec/components/bindings/index.js +1 -1
  267. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding-type.d.ts +24 -0
  268. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding-type.js +1 -0
  269. package/dist/application-spec/parse-application-files/spec/components/component-entry.d.ts +1 -9
  270. package/dist/application-spec/parse-application-files/spec/components/component-entry.js +1 -1
  271. package/dist/application-spec/parse-application-files/spec/components/component-filter.d.ts +1 -54
  272. package/dist/application-spec/parse-application-files/spec/components/component-filter.js +1 -1
  273. package/dist/application-spec/parse-application-files/spec/components/component-state-type.d.ts +8 -0
  274. package/dist/application-spec/parse-application-files/spec/components/component-state-type.js +1 -0
  275. package/dist/application-spec/parse-application-files/spec/components/filter-criterion-types.d.ts +13 -0
  276. package/dist/application-spec/parse-application-files/spec/components/filter-criterion-types.js +1 -0
  277. package/dist/application-spec/parse-application-files/spec/components/index.d.ts +1 -1
  278. package/dist/application-spec/parse-application-files/spec/components/index.js +1 -1
  279. package/dist/application-spec/parse-application-files/spec/components/static-entity-id.d.ts +14 -0
  280. package/dist/application-spec/parse-application-files/spec/components/static-entity-id.js +1 -0
  281. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.d.ts +6 -0
  282. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.js +1 -1
  283. package/dist/application-spec/parse-application-files/spec/components/user-components.d.ts +7 -4
  284. package/dist/application-spec/parse-application-files/spec/components/user-components.js +1 -1
  285. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.d.ts +24 -0
  286. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.js +1 -0
  287. package/dist/application-spec/parse-application-files/spec/expressions/expression-read.d.ts +13 -0
  288. package/dist/application-spec/parse-application-files/spec/expressions/expression-read.js +1 -0
  289. package/dist/application-spec/parse-application-files/spec/expressions/expression-value-type.d.ts +9 -0
  290. package/dist/application-spec/parse-application-files/spec/expressions/expression-value-type.js +1 -0
  291. package/dist/application-spec/parse-application-files/spec/expressions/expression.d.ts +1 -28
  292. package/dist/application-spec/parse-application-files/spec/expressions/expression.js +1 -1
  293. package/dist/application-spec/parse-application-files/spec/expressions/expressions.d.ts +7 -3
  294. package/dist/application-spec/parse-application-files/spec/expressions/expressions.js +1 -1
  295. package/dist/application-spec/parse-application-files/spec/expressions/index.d.ts +0 -1
  296. package/dist/application-spec/parse-application-files/spec/expressions/index.js +1 -1
  297. package/dist/application-spec/parse-application-files/spec/expressions/memo-eval-plan.js +1 -1
  298. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.d.ts +3 -1
  299. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.js +1 -1
  300. package/dist/application-spec/parse-application-files/spec/invariants/invariants.d.ts +2 -2
  301. package/dist/application-spec/parse-application-files/spec/invariants/invariants.js +1 -1
  302. package/dist/application-spec/parse-application-files/spec/model/defaults.js +1 -1
  303. package/dist/application-spec/parse-application-files/spec/model/index.d.ts +1 -0
  304. package/dist/application-spec/parse-application-files/spec/model/index.js +1 -1
  305. package/dist/application-spec/parse-application-files/spec/model/model-type-resolution.d.ts +10 -0
  306. package/dist/application-spec/parse-application-files/spec/model/model-type-resolution.js +1 -0
  307. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-form-elements.d.ts +9 -0
  308. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-form-elements.js +1 -0
  309. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.d.ts +4 -1
  310. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.js +1 -1
  311. package/dist/application-spec/parse-application-files/spec/sections/infra.d.ts +2 -0
  312. package/dist/application-spec/parse-application-files/spec/sections/infra.js +1 -1
  313. package/dist/client/authorized-client.d.ts +3 -1
  314. package/dist/client/authorized-client.js +1 -1
  315. package/dist/client/contract.d.ts +17 -0
  316. package/dist/client/index.d.ts +1 -1
  317. package/dist/client/local-authorized-client.d.ts +3 -1
  318. package/dist/client/local-authorized-client.js +1 -1
  319. package/dist/client/memory-authorized-client.d.ts +4 -1
  320. package/dist/client/memory-authorized-client.js +1 -1
  321. package/dist/client/phoenix-api.d.ts +809 -118
  322. package/dist/configurator/ConfiguratorApp.js +1 -1
  323. package/dist/configurator/app-loader-content/DefaultAppLoaderContent.d.ts +2 -0
  324. package/dist/configurator/app-loader-content/DefaultAppLoaderContent.js +5 -0
  325. package/dist/configurator/app-loader-content/index.d.ts +1 -0
  326. package/dist/configurator/app-loader-content/index.js +1 -0
  327. package/dist/configurator/application-runtime/extensions/create-configurator-extensions.js +1 -1
  328. package/dist/configurator/application-runtime/extensions/selectors.d.ts +3 -1
  329. package/dist/configurator/application-runtime/extensions/selectors.js +1 -1
  330. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.d.ts +54 -3
  331. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.js +1 -1
  332. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.d.ts +40 -7
  333. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.js +1 -1
  334. package/dist/configurator/application-runtime/extensions/systems/camera-control-system/camera-control-system.d.ts +1 -1
  335. package/dist/configurator/application-runtime/extensions/systems/canvas-system.d.ts +8 -0
  336. package/dist/configurator/application-runtime/extensions/systems/canvas-system.js +1 -1
  337. package/dist/configurator/application-runtime/extensions/systems/drag-and-drop-system/drag-and-drop-system.d.ts +3 -3
  338. package/dist/configurator/application-runtime/extensions/systems/export-system/export-busy-error.d.ts +8 -0
  339. package/dist/configurator/application-runtime/extensions/systems/export-system/export-busy-error.js +1 -0
  340. package/dist/configurator/application-runtime/extensions/systems/export-system/export-system.d.ts +23 -1
  341. package/dist/configurator/application-runtime/extensions/systems/export-system/export-system.js +1 -1
  342. package/dist/configurator/application-runtime/extensions/systems/graphql-system/close-unclosed-braces.d.ts +12 -0
  343. package/dist/configurator/application-runtime/extensions/systems/graphql-system/close-unclosed-braces.js +1 -0
  344. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.d.ts +14 -1
  345. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.js +1 -1
  346. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.d.ts +70 -7
  347. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.js +1 -1
  348. package/dist/configurator/application-runtime/extensions/systems/graphql-system/inject-assistant-lenses.d.ts +11 -0
  349. package/dist/configurator/application-runtime/extensions/systems/graphql-system/inject-assistant-lenses.js +1 -0
  350. package/dist/configurator/application-runtime/extensions/systems/image-rendering-system/image-rendering-system.d.ts +14 -5
  351. package/dist/configurator/application-runtime/extensions/systems/image-rendering-system/image-rendering-system.js +1 -1
  352. package/dist/configurator/application-runtime/extensions/systems/index.d.ts +1 -1
  353. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.d.ts +2 -2
  354. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.js +1 -1
  355. package/dist/configurator/common/configurator-interface.d.ts +145 -5
  356. package/dist/configurator/common/configurator-interface.js +1 -1
  357. package/dist/configurator/common/index.d.ts +3 -1
  358. package/dist/configurator/common/index.js +1 -1
  359. package/dist/configurator/common/use-reset-camera.d.ts +6 -0
  360. package/dist/configurator/common/use-reset-camera.js +1 -0
  361. package/dist/configurator/configuration-not-found-page/BuiltInConfigurationNotFoundPage.d.ts +5 -0
  362. package/dist/configurator/configuration-not-found-page/BuiltInConfigurationNotFoundPage.js +1 -0
  363. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.d.ts +6 -0
  364. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.js +1 -0
  365. package/dist/configurator/configuration-not-found-page/index.d.ts +2 -0
  366. package/dist/configurator/configuration-not-found-page/index.js +1 -0
  367. package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.d.ts +12 -0
  368. package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.js +1 -0
  369. package/dist/configurator/configurator-context/PresetSelectionProvider.js +1 -1
  370. package/dist/configurator/configurator-context/PreviewContextProvider.js +1 -1
  371. package/dist/configurator/configurator-context/ViewportStateSync.d.ts +2 -2
  372. package/dist/configurator/configurator-context/ViewportStateSync.js +1 -1
  373. package/dist/configurator/configurator-context/configurator-hooks/layout-hooks.d.ts +11 -1
  374. package/dist/configurator/configurator-context/configurator-routing/ConfiguratorRoutingProvider.js +1 -1
  375. package/dist/configurator/configurator-error-page/BuiltInConfiguratorErrorPage.d.ts +6 -0
  376. package/dist/configurator/configurator-error-page/BuiltInConfiguratorErrorPage.js +1 -0
  377. package/dist/configurator/configurator-error-page/ConfiguratorErrorPageElement.d.ts +7 -0
  378. package/dist/configurator/configurator-error-page/ConfiguratorErrorPageElement.js +1 -0
  379. package/dist/configurator/configurator-error-page/index.d.ts +2 -0
  380. package/dist/configurator/configurator-error-page/index.js +1 -0
  381. package/dist/configurator/index.d.ts +10 -0
  382. package/dist/configurator/index.js +1 -1
  383. package/dist/configurator/pages/ConfiguratorErrorPage.d.ts +0 -1
  384. package/dist/configurator/pages/ConfiguratorErrorPage.js +1 -1
  385. package/dist/configurator/pages/ConfiguratorNotFoundPage.js +1 -1
  386. package/dist/configurator/pages/DefaultConfiguratorLayout.d.ts +3 -2
  387. package/dist/configurator/pages/DefaultNotAuthenticatedPage.d.ts +8 -0
  388. package/dist/configurator/pages/DefaultNotAuthenticatedPage.js +1 -0
  389. package/dist/configurator/pages/DefaultPresetUi.d.ts +7 -0
  390. package/dist/configurator/pages/DefaultPresetUi.js +1 -0
  391. package/dist/configurator/pages/LoadedConfiguratorDetailPage.js +1 -1
  392. package/dist/configurator/pages/NewConfiguratorPage.js +1 -1
  393. package/dist/configurator/pages/PresetCreationErrorPage.d.ts +1 -1
  394. package/dist/configurator/pages/PresetCreationErrorPage.js +1 -1
  395. package/dist/configurator/pages/RootPage.js +1 -1
  396. package/dist/configurator/pages/configurator-layout-name.d.ts +2 -0
  397. package/dist/configurator/pages/configurator-layout-name.js +1 -0
  398. package/dist/configurator/pages/default-configurator-elements.d.ts +13 -0
  399. package/dist/configurator/pages/default-configurator-elements.js +1 -0
  400. package/dist/configurator/pages/default-elements/built-in-entity-element.d.ts +10 -0
  401. package/dist/configurator/pages/default-elements/built-in-entity-element.js +1 -0
  402. package/dist/configurator/pages/default-elements/built-in-layout-element.d.ts +10 -0
  403. package/dist/configurator/pages/default-elements/built-in-layout-element.js +1 -0
  404. package/dist/configurator/pages/default-elements/domain-control-elements.d.ts +6 -0
  405. package/dist/configurator/pages/default-elements/domain-control-elements.js +1 -0
  406. package/dist/configurator/pages/default-elements/index.d.ts +5 -0
  407. package/dist/configurator/pages/default-elements/index.js +1 -0
  408. package/dist/configurator/pages/default-elements/recipe-panel-elements.d.ts +3 -0
  409. package/dist/configurator/pages/default-elements/recipe-panel-elements.js +1 -0
  410. package/dist/configurator/pages/default-elements/scene-controls/BuiltInAddEntityFab.d.ts +3 -0
  411. package/dist/configurator/pages/default-elements/scene-controls/BuiltInAddEntityFab.js +1 -0
  412. package/dist/configurator/pages/default-elements/scene-controls/BuiltInDeleteEntityFab.d.ts +3 -0
  413. package/dist/configurator/pages/default-elements/scene-controls/BuiltInDeleteEntityFab.js +1 -0
  414. package/dist/configurator/pages/default-elements/scene-controls/BuiltInNavigationHotspot.d.ts +3 -0
  415. package/dist/configurator/pages/default-elements/scene-controls/BuiltInNavigationHotspot.js +1 -0
  416. package/dist/configurator/pages/default-elements/scene-controls/BuiltInSelectionHotspot.d.ts +3 -0
  417. package/dist/configurator/pages/default-elements/scene-controls/BuiltInSelectionHotspot.js +1 -0
  418. package/dist/configurator/pages/default-elements/scene-controls/BuiltInToolMenuFab.d.ts +3 -0
  419. package/dist/configurator/pages/default-elements/scene-controls/BuiltInToolMenuFab.js +1 -0
  420. package/dist/configurator/pages/default-elements/scene-controls/index.d.ts +6 -0
  421. package/dist/configurator/pages/default-elements/scene-controls/index.js +1 -0
  422. package/dist/configurator/pages/default-elements/scene-controls/scene-control-elements.d.ts +6 -0
  423. package/dist/configurator/pages/default-elements/scene-controls/scene-control-elements.js +1 -0
  424. package/dist/configurator/pages/default-elements/sidebar-footer-elements.d.ts +7 -0
  425. package/dist/configurator/pages/default-elements/sidebar-footer-elements.js +1 -0
  426. package/dist/configurator/pages/default-elements/toolbar-elements.d.ts +7 -0
  427. package/dist/configurator/pages/default-elements/toolbar-elements.js +1 -0
  428. package/dist/configurator/pages/error-boundaries/GeneralErrorBoundary.js +1 -1
  429. package/dist/configurator/pages/error-boundaries/LoadingErrorBoundary.js +1 -1
  430. package/dist/configurator/pages/index.d.ts +1 -0
  431. package/dist/configurator/pages/index.js +1 -1
  432. package/dist/configurator/preset-screen-elements/PresetDeviceNotSupportedElement.d.ts +4 -0
  433. package/dist/configurator/preset-screen-elements/PresetDeviceNotSupportedElement.js +1 -0
  434. package/dist/configurator/preset-screen-elements/PresetPageActionElement.d.ts +4 -0
  435. package/dist/configurator/preset-screen-elements/PresetPageActionElement.js +1 -0
  436. package/dist/configurator/preset-screen-elements/index.d.ts +2 -0
  437. package/dist/configurator/preset-screen-elements/index.js +1 -0
  438. package/dist/configurator/scene/index.d.ts +1 -0
  439. package/dist/configurator/scene/index.js +1 -1
  440. package/dist/configurator/scene/scene-controls/DeleteEntityFab.js +1 -1
  441. package/dist/configurator/scene/scene-controls/SelectionHotspot.js +1 -1
  442. package/dist/configurator/scene/scene-controls/ToolFab.d.ts +4 -0
  443. package/dist/configurator/scene/scene-controls/ToolFab.js +1 -1
  444. package/dist/configurator/scene/scene-controls/hotspot-drag-handle/HotspotDragHandle.d.ts +1 -1
  445. package/dist/configurator/scene/scene-controls/hotspot-drag-handle/HotspotDragSceneHandle.d.ts +1 -1
  446. package/dist/configurator/scene/scene-controls/use-scene-control-tooltip.d.ts +2 -1
  447. package/dist/configurator/scene/scene-entity/dimension-indicators/DimensionIndicator.d.ts +1 -1
  448. package/dist/configurator/scene/scene-entity/dimension-indicators/DimensionIndicatorInternal.d.ts +1 -1
  449. package/dist/configurator/scene/scene-entity/drag-and-drop/shared.d.ts +2 -2
  450. package/dist/configurator/scene/scene-entity/drag-and-drop/use-drag-object.d.ts +1 -1
  451. package/dist/configurator/scene/scene-entity/materials/RemoteReplacedMaterial.js +1 -1
  452. package/dist/configurator/scene/scene-entity/objects/SceneEntityObjectTextDecal.d.ts +1 -1
  453. package/dist/configurator/scene/scene-entity/scene-controls/SceneEntityHtmlHotspots.js +1 -1
  454. package/dist/configurator/toolbar-actions/index.d.ts +3 -0
  455. package/dist/configurator/toolbar-actions/index.js +1 -0
  456. package/dist/configurator/toolbar-actions/use-assistant-panel.d.ts +18 -0
  457. package/dist/configurator/toolbar-actions/use-assistant-panel.js +1 -0
  458. package/dist/configurator/toolbar-actions/use-measurements.d.ts +35 -0
  459. package/dist/configurator/toolbar-actions/use-measurements.js +1 -0
  460. package/dist/configurator/toolbar-actions/use-toolbar-actions.d.ts +100 -0
  461. package/dist/configurator/toolbar-actions/use-toolbar-actions.js +1 -0
  462. package/dist/configurator/toolbar-actions/use-toolbar-help.d.ts +7 -0
  463. package/dist/configurator/toolbar-actions/use-toolbar-help.js +1 -0
  464. package/dist/configurator/ui/assistant/AssistantChips.d.ts +10 -3
  465. package/dist/configurator/ui/assistant/AssistantChips.js +1 -1
  466. package/dist/configurator/ui/assistant/AssistantMarkdown.d.ts +7 -2
  467. package/dist/configurator/ui/assistant/AssistantMarkdown.js +1 -1
  468. package/dist/configurator/ui/assistant/AssistantPanel.js +1 -1
  469. package/dist/configurator/ui/assistant/AssistantThread.js +1 -1
  470. package/dist/configurator/ui/assistant/alert/AssistantAlert.d.ts +8 -0
  471. package/dist/configurator/ui/assistant/alert/AssistantAlert.js +1 -0
  472. package/dist/configurator/ui/assistant/alert/index.d.ts +2 -0
  473. package/dist/configurator/ui/assistant/alert/index.js +1 -0
  474. package/dist/configurator/ui/assistant/alert/remark-alerts.d.ts +10 -0
  475. package/dist/configurator/ui/assistant/alert/remark-alerts.js +1 -0
  476. package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.d.ts +13 -0
  477. package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.js +1 -0
  478. package/dist/configurator/ui/assistant/entity-link/entity-link-selection.d.ts +22 -0
  479. package/dist/configurator/ui/assistant/entity-link/entity-link-selection.js +1 -0
  480. package/dist/configurator/ui/assistant/entity-link/entity-link-state.d.ts +27 -0
  481. package/dist/configurator/ui/assistant/entity-link/entity-link-state.js +1 -0
  482. package/dist/configurator/ui/assistant/entity-link/index.d.ts +2 -0
  483. package/dist/configurator/ui/assistant/entity-link/index.js +1 -0
  484. package/dist/configurator/ui/assistant/form/AssistantForm.d.ts +19 -0
  485. package/dist/configurator/ui/assistant/form/AssistantForm.js +1 -0
  486. package/dist/configurator/ui/assistant/form/compose-answer.d.ts +11 -0
  487. package/dist/configurator/ui/assistant/form/compose-answer.js +1 -0
  488. package/dist/configurator/ui/assistant/form/describe-build-errors.d.ts +6 -0
  489. package/dist/configurator/ui/assistant/form/describe-build-errors.js +1 -0
  490. package/dist/configurator/ui/assistant/form/form-model.d.ts +37 -0
  491. package/dist/configurator/ui/assistant/form/form-model.js +1 -0
  492. package/dist/configurator/ui/assistant/form/form-state.d.ts +4 -0
  493. package/dist/configurator/ui/assistant/form/form-state.js +1 -0
  494. package/dist/configurator/ui/assistant/form/index.d.ts +4 -0
  495. package/dist/configurator/ui/assistant/form/index.js +1 -0
  496. package/dist/configurator/ui/assistant/form/parse-form-block.d.ts +10 -0
  497. package/dist/configurator/ui/assistant/form/parse-form-block.js +1 -0
  498. package/dist/configurator/ui/assistant/form/read-form-attributes.d.ts +13 -0
  499. package/dist/configurator/ui/assistant/form/read-form-attributes.js +1 -0
  500. package/dist/configurator/ui/assistant/form/registry/built-in-form-elements.d.ts +3 -0
  501. package/dist/configurator/ui/assistant/form/registry/built-in-form-elements.js +1 -0
  502. package/dist/configurator/ui/assistant/form/registry/create-assistant-form-element.d.ts +31 -0
  503. package/dist/configurator/ui/assistant/form/registry/create-assistant-form-element.js +1 -0
  504. package/dist/configurator/ui/assistant/form/registry/form-element-definition.d.ts +16 -0
  505. package/dist/configurator/ui/assistant/form/registry/form-element-definition.js +1 -0
  506. package/dist/configurator/ui/assistant/form/registry/form-registry.d.ts +31 -0
  507. package/dist/configurator/ui/assistant/form/registry/form-registry.js +1 -0
  508. package/dist/configurator/ui/assistant/form/registry/index.d.ts +6 -0
  509. package/dist/configurator/ui/assistant/form/registry/index.js +1 -0
  510. package/dist/configurator/ui/assistant/form/registry/use-form-registry.d.ts +8 -0
  511. package/dist/configurator/ui/assistant/form/registry/use-form-registry.js +1 -0
  512. package/dist/configurator/ui/assistant/form-elements/FormCard.d.ts +9 -0
  513. package/dist/configurator/ui/assistant/form-elements/FormCard.js +1 -0
  514. package/dist/configurator/ui/assistant/form-elements/FormConfirm.d.ts +9 -0
  515. package/dist/configurator/ui/assistant/form-elements/FormConfirm.js +1 -0
  516. package/dist/configurator/ui/assistant/form-elements/FormGroup.d.ts +6 -0
  517. package/dist/configurator/ui/assistant/form-elements/FormGroup.js +1 -0
  518. package/dist/configurator/ui/assistant/form-elements/FormNumber.d.ts +9 -0
  519. package/dist/configurator/ui/assistant/form-elements/FormNumber.js +1 -0
  520. package/dist/configurator/ui/assistant/form-elements/FormOptions.d.ts +6 -0
  521. package/dist/configurator/ui/assistant/form-elements/FormOptions.js +1 -0
  522. package/dist/configurator/ui/assistant/form-elements/FormReply.d.ts +6 -0
  523. package/dist/configurator/ui/assistant/form-elements/FormReply.js +1 -0
  524. package/dist/configurator/ui/assistant/form-elements/FormSwatch.d.ts +10 -0
  525. package/dist/configurator/ui/assistant/form-elements/FormSwatch.js +1 -0
  526. package/dist/configurator/ui/assistant/form-elements/FormText.d.ts +6 -0
  527. package/dist/configurator/ui/assistant/form-elements/FormText.js +1 -0
  528. package/dist/configurator/ui/assistant/form-elements/clamp-form-number.d.ts +10 -0
  529. package/dist/configurator/ui/assistant/form-elements/clamp-form-number.js +1 -0
  530. package/dist/configurator/ui/assistant/form-elements/form-element-props.d.ts +38 -0
  531. package/dist/configurator/ui/assistant/form-elements/form-element-props.js +1 -0
  532. package/dist/configurator/ui/assistant/form-elements/index.d.ts +9 -0
  533. package/dist/configurator/ui/assistant/form-elements/index.js +1 -0
  534. package/dist/configurator/ui/assistant/index.d.ts +3 -0
  535. package/dist/configurator/ui/assistant/index.js +1 -1
  536. package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.d.ts +16 -0
  537. package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.js +1 -0
  538. package/dist/configurator/ui/assistant/reference-link/assistant-link-target.d.ts +34 -0
  539. package/dist/configurator/ui/assistant/reference-link/assistant-link-target.js +1 -0
  540. package/dist/configurator/ui/assistant/reference-link/assistant-reference-details.d.ts +25 -0
  541. package/dist/configurator/ui/assistant/reference-link/assistant-reference-details.js +1 -0
  542. package/dist/configurator/ui/assistant/reference-link/index.d.ts +3 -0
  543. package/dist/configurator/ui/assistant/reference-link/index.js +1 -0
  544. package/dist/configurator/ui/assistant/reference-link/reference-styles.d.ts +12 -0
  545. package/dist/configurator/ui/assistant/reference-link/reference-styles.js +1 -0
  546. package/dist/configurator/ui/assistant/reference-link/use-assistant-reference-details.d.ts +8 -0
  547. package/dist/configurator/ui/assistant/reference-link/use-assistant-reference-details.js +1 -0
  548. package/dist/configurator/ui/assistant/resource-image/AssistantImage.d.ts +9 -0
  549. package/dist/configurator/ui/assistant/resource-image/AssistantImage.js +1 -0
  550. package/dist/configurator/ui/assistant/resource-image/index.d.ts +3 -0
  551. package/dist/configurator/ui/assistant/resource-image/index.js +1 -0
  552. package/dist/configurator/ui/assistant/resource-image/resource-path.d.ts +2 -0
  553. package/dist/configurator/ui/assistant/resource-image/resource-path.js +1 -0
  554. package/dist/configurator/ui/assistant/resource-image/use-resource-image-url.d.ts +5 -0
  555. package/dist/configurator/ui/assistant/resource-image/use-resource-image-url.js +1 -0
  556. package/dist/configurator/ui/assistant/screenshots/ScreenshotThumbnails.d.ts +9 -0
  557. package/dist/configurator/ui/assistant/screenshots/ScreenshotThumbnails.js +1 -0
  558. package/dist/configurator/ui/assistant/screenshots/index.d.ts +2 -0
  559. package/dist/configurator/ui/assistant/screenshots/index.js +1 -0
  560. package/dist/configurator/ui/assistant/screenshots/tool-screenshots.d.ts +22 -0
  561. package/dist/configurator/ui/assistant/screenshots/tool-screenshots.js +1 -0
  562. package/dist/configurator/ui/assistant/screenshots/use-screenshot-src.d.ts +8 -0
  563. package/dist/configurator/ui/assistant/screenshots/use-screenshot-src.js +1 -0
  564. package/dist/configurator/ui/assistant/streamed-markdown.d.ts +4 -2
  565. package/dist/configurator/ui/assistant/streamed-markdown.js +2 -2
  566. package/dist/configurator/ui/assistant/thread-items.d.ts +8 -1
  567. package/dist/configurator/ui/assistant/thread-items.js +1 -1
  568. package/dist/configurator/ui/assistant/tool-chip.js +1 -1
  569. package/dist/configurator/ui/assistant/use-follow-stream.js +1 -1
  570. package/dist/configurator/ui/configurator-layout/sidebar-keys/index.d.ts +1 -0
  571. package/dist/configurator/ui/configurator-layout/sidebar-keys/index.js +1 -0
  572. package/dist/configurator/ui/configurator-layout/sidebar-keys/sidebar-keys.d.ts +11 -0
  573. package/dist/configurator/ui/configurator-layout/sidebar-keys/sidebar-keys.js +1 -0
  574. package/dist/configurator/ui/configurator-layout/slots/canvas/LayoutCanvas.js +1 -1
  575. package/dist/configurator/ui/configurator-layout/slots/canvas/SharedCanvas.js +1 -1
  576. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/DesktopSidebar.d.ts +101 -0
  577. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/DesktopSidebar.js +16 -0
  578. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/index.d.ts +1 -0
  579. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/index.js +1 -0
  580. package/dist/configurator/ui/configurator-layout/slots/mobile-tabs/use-mobile-tabs.d.ts +1 -1
  581. package/dist/configurator/ui/configurator-layout/slots/mobile-tabs/use-mobile-tabs.js +1 -1
  582. package/dist/configurator/ui/configurator-layout/slots/services/InvariantViolations.d.ts +4 -4
  583. package/dist/configurator/ui/configurator-layout/slots/services/InvariantViolations.js +1 -1
  584. package/dist/configurator/ui/configurator-layout/slots/services/Services.js +1 -1
  585. package/dist/configurator/ui/configurator-layout/slots/services/SideEffects.d.ts +3 -6
  586. package/dist/configurator/ui/configurator-layout/slots/services/SideEffects.js +1 -1
  587. package/dist/configurator/ui/configurator-layout/slots/sidebar-tabs/use-sidebar-tabs.d.ts +1 -1
  588. package/dist/configurator/ui/configurator-layout/slots/sidebar-tabs/use-sidebar-tabs.js +1 -1
  589. package/dist/configurator/ui/configurator-layout/slots/slots.d.ts +1 -0
  590. package/dist/configurator/ui/configurator-layout/slots/slots.js +1 -1
  591. package/dist/configurator/ui/configurator-layout/universal/DesktopLayout.d.ts +0 -74
  592. package/dist/configurator/ui/configurator-layout/universal/DesktopLayout.js +5 -20
  593. package/dist/configurator/ui/configurator-layout/universal/ExportingOverlay.d.ts +5 -0
  594. package/dist/configurator/ui/configurator-layout/universal/ExportingOverlay.js +1 -0
  595. package/dist/configurator/ui/configurator-layout/universal/Layout.js +1 -1
  596. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.d.ts +1 -1
  597. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.js +1 -1
  598. package/dist/configurator/ui/configurator-layout/universal/use-scene-safe-area.d.ts +1 -1
  599. package/dist/configurator/ui/index.d.ts +1 -0
  600. package/dist/configurator/ui/index.js +1 -1
  601. package/dist/configurator/ui/legacy/layout/common/CommonFinalizeButton.js +1 -1
  602. package/dist/configurator/ui/legacy/layout/common/CommonSummaryButton.js +1 -1
  603. package/dist/configurator/ui/legacy/layout/common/CommonTopNavigation.js +1 -1
  604. package/dist/configurator/ui/legacy/layout/common/ReactiveInterfaceLayout.js +1 -1
  605. package/dist/configurator/ui/legacy/layout/common/ResponsiveFinalizeButton.js +1 -1
  606. package/dist/configurator/ui/legacy/layout/common/SummaryReadLayout.js +1 -1
  607. package/dist/configurator/ui/legacy/layout/simple/SimpleOwnerLayout.js +1 -1
  608. package/dist/configurator/ui/legacy/layout/simple/SimpleTopNavigation.js +1 -1
  609. package/dist/configurator/ui/legacy/layout/steps/StepsNavigation.d.ts +2 -2
  610. package/dist/configurator/ui/legacy/layout/steps/StepsNavigation.js +1 -1
  611. package/dist/configurator/ui/legacy/layout/steps/StepsOwnerLayout.js +1 -1
  612. package/dist/configurator/ui/legacy/layout/steps/StepsSidebarFooter.js +1 -1
  613. package/dist/configurator/ui/legacy/layout/tabs/TabsOwnerLayout.js +1 -1
  614. package/dist/configurator/ui/legacy/toolbar/common/DimensionUnitSelector.js +1 -1
  615. package/dist/configurator/ui/legacy/toolbar/common/MeasurementsIndicatorsSwitch.js +1 -1
  616. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/FullscreenToolbarAction.js +1 -1
  617. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/HelpToolbarAction.js +1 -1
  618. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/MeasurementsToolbarAction.js +1 -1
  619. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/UndoRedoToolbarGroup.js +1 -1
  620. package/dist/configurator/ui/phoenix-layout-elements/AppLoader.d.ts +0 -7
  621. package/dist/configurator/ui/phoenix-layout-elements/AppLoader.js +2 -6
  622. package/dist/configurator/ui/phoenix-layout-elements/AssistantToolbarButton.js +1 -1
  623. package/dist/configurator/ui/phoenix-layout-elements/EnterFullscreenToolbarButton.js +1 -1
  624. package/dist/configurator/ui/phoenix-layout-elements/ExitFullscreenToolbarButton.js +1 -1
  625. package/dist/configurator/ui/phoenix-layout-elements/HelpToolbarButton.js +1 -1
  626. package/dist/configurator/ui/phoenix-layout-elements/LanguageMenuAction.js +1 -1
  627. package/dist/configurator/ui/phoenix-layout-elements/LanguageToolbarButton.js +1 -1
  628. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomOwnerUi.d.ts +1 -0
  629. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomOwnerUi.js +1 -1
  630. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomReadUi.d.ts +1 -0
  631. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomReadUi.js +1 -1
  632. package/dist/configurator/ui/phoenix-layout-elements/MeasurementsMenuAction.js +1 -1
  633. package/dist/configurator/ui/phoenix-layout-elements/MeasurementsToolbarButton.js +1 -1
  634. package/dist/configurator/ui/phoenix-layout-elements/RedoToolbarButton.js +1 -1
  635. package/dist/configurator/ui/phoenix-layout-elements/ShareToolbarButton.js +1 -1
  636. package/dist/configurator/ui/phoenix-layout-elements/UndoToolbarButton.js +1 -1
  637. package/dist/configurator/ui/phoenix-layout-elements/header/common/back-button/use-go-back-action.js +1 -1
  638. package/dist/configurator/ui/phoenix-layout-elements/header/common/horizontal-tabs/DesktopHorizontalTabs.js +1 -1
  639. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/DesktopNavigationSteps.d.ts +1 -1
  640. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/DesktopNavigationSteps.js +1 -1
  641. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.d.ts +2 -8
  642. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.js +1 -1
  643. package/dist/configurator/ui/phoenix-layout-elements/index.d.ts +8 -1
  644. package/dist/configurator/ui/phoenix-layout-elements/index.js +1 -1
  645. package/dist/configurator/ui/phoenix-layout-elements/measurements/DimensionUnitSelector.js +1 -1
  646. package/dist/configurator/ui/phoenix-layout-elements/measurements/MeasurementsIndicatorsSwitch.js +1 -1
  647. package/dist/configurator/ui/phoenix-layout-elements/share/ShareModal.js +1 -1
  648. package/dist/configurator/ui/phoenix-layout-elements/share/use-share.d.ts +7 -8
  649. package/dist/configurator/ui/phoenix-layout-elements/share/use-share.js +1 -1
  650. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/basic/BasicFinalizeButton.js +1 -1
  651. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/CustomFinalizeButton.js +1 -1
  652. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/EnterSummaryButton.js +1 -1
  653. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/FinalizeActions.js +1 -1
  654. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/NextStepButton.js +1 -1
  655. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/PreviousStepButton.js +1 -1
  656. package/dist/configurator/ui/preset-layout/CategoryPresetUi.js +1 -1
  657. package/dist/configurator/ui/preset-layout/PresetUi.d.ts +4 -2
  658. package/dist/configurator/ui/preset-layout/PresetUi.js +1 -1
  659. package/dist/configurator/ui/preset-layout/index.d.ts +6 -1
  660. package/dist/configurator/ui/preset-layout/index.js +1 -1
  661. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.d.ts +10 -0
  662. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.js +1 -0
  663. package/dist/configurator/ui/save-message-snackbars/index.d.ts +1 -0
  664. package/dist/configurator/ui/save-message-snackbars/index.js +1 -0
  665. package/dist/docs/complex-use-cases/focus-mode.mdx +2 -0
  666. package/dist/docs/controls/select-child-entity/cardselect.mdx +1 -0
  667. package/dist/docs/dimensions/3d-scene-integration/dimension-indicators.mdx +2 -2
  668. package/dist/docs/dimensions/3d-scene-integration/editable-angle-indicator.mdx +1 -1
  669. package/dist/docs/dimensions/3d-scene-integration/editable-distance-dimension-indicator.mdx +1 -1
  670. package/dist/docs/dimensions/3d-scene-integration/list-selector-dimension-indicator.mdx +1 -1
  671. package/dist/docs/drag-and-drop/drag-handle.mdx +1 -1
  672. package/dist/docs/drag-and-drop/hotspot-handle.mdx +1 -1
  673. package/dist/docs/drag-and-drop/planes.mdx +1 -1
  674. package/dist/docs/drag-and-drop/rotatable.mdx +2 -2
  675. package/dist/docs/fabs/basic.mdx +6 -2
  676. package/dist/docs/index.json +136 -1
  677. package/dist/docs/integrations/webcomponent-api/basics.mdx +2 -0
  678. package/dist/docs/layouts/custom-layout.mdx +2597 -0
  679. package/dist/docs/layouts/gallery/ardent-compressor.mdx +3516 -0
  680. package/dist/docs/layouts/gallery/corvid-drone.mdx +3428 -0
  681. package/dist/docs/layouts/gallery/fenwick-window.mdx +2803 -0
  682. package/dist/docs/layouts/gallery/ferrule-bar-station.mdx +6567 -0
  683. package/dist/docs/layouts/gallery/kestrel-kettle.mdx +1858 -0
  684. package/dist/docs/layouts/gallery/nightjar-guitar.mdx +3698 -0
  685. package/dist/docs/layouts/gallery/sunfold-solar.mdx +2683 -0
  686. package/dist/docs/layouts/gallery/tidepool-aquascape.mdx +5203 -0
  687. package/dist/docs/layouts/header/fixed.mdx +2 -2
  688. package/dist/docs/layouts/header/floating.mdx +2 -2
  689. package/dist/docs/layouts/sidebar/in-a-custom-layout.mdx +380 -0
  690. package/dist/docs/layouts/sidebar-footer/basic.mdx +32 -77
  691. package/dist/docs/other-features/client-side-rendering/declarative.mdx +2 -2
  692. package/dist/docs/other-features/error-5xx.mdx +1 -1
  693. package/dist/docs/other-features/navigation-hotspot.mdx +2 -0
  694. package/dist/docs/other-features/not-found-404.mdx +1 -1
  695. package/dist/docs/other-features/transformers.mdx +4 -0
  696. package/dist/docs/phoenix/application-states.mdx +9 -7
  697. package/dist/docs/phoenix/clerk-sign-in.mdx +1 -1
  698. package/dist/docs/phoenix/components.mdx +6 -0
  699. package/dist/docs/phoenix/configurator-interface.mdx +309 -23
  700. package/dist/docs/phoenix/deployments.mdx +2 -6
  701. package/dist/docs/phoenix/domain-model.mdx +6 -1
  702. package/dist/docs/phoenix/finalization.mdx +1 -1
  703. package/dist/docs/phoenix/getting-started.mdx +6 -3
  704. package/dist/docs/phoenix/layout-slots.mdx +116 -0
  705. package/dist/docs/phoenix/localization.mdx +10 -6
  706. package/dist/docs/phoenix/migration-guide.mdx +24 -11
  707. package/dist/docs/phoenix/phoenix-cli.mdx +84 -25
  708. package/dist/docs/phoenix/project-structure.mdx +77 -35
  709. package/dist/docs/phoenix/quickstart.mdx +7 -7
  710. package/dist/docs/phoenix/sdk-builder-workflow.mdx +14 -12
  711. package/dist/docs/phoenix/sessions-and-access.mdx +2 -0
  712. package/dist/docs/phoenix/testing.mdx +148 -0
  713. package/dist/docs/phoenix/webhook-membership.mdx +10 -9
  714. package/dist/docs/phoenix/webhooks.mdx +22 -5
  715. package/dist/docs/selection-and-highlight/hotspots.mdx +2 -0
  716. package/dist/domain/application/application-config.d.ts +3 -1
  717. package/dist/domain/application/assistant/assistant-fields.d.ts +12 -0
  718. package/dist/domain/application/assistant/assistant-fields.js +1 -0
  719. package/dist/domain/application/assistant/assistant-manifest.d.ts +25 -2
  720. package/dist/domain/application/assistant/assistant-resolved-manifest.d.ts +46 -3
  721. package/dist/domain/application/assistant/assistant-resolved-manifest.js +1 -1
  722. package/dist/domain/application/assistant/build-assistant-lenses.d.ts +14 -0
  723. package/dist/domain/application/assistant/build-assistant-lenses.js +5 -0
  724. package/dist/domain/application/assistant/build-assistant-manifest.js +1 -1
  725. package/dist/domain/application/assistant/create-assistant-execution-schema.d.ts +32 -0
  726. package/dist/domain/application/assistant/create-assistant-execution-schema.js +1 -0
  727. package/dist/domain/application/assistant/form/assistant-form-element-name.d.ts +11 -0
  728. package/dist/domain/application/assistant/form/assistant-form-element-name.js +8 -0
  729. package/dist/domain/application/assistant/form/assistant-form-elements.d.ts +174 -0
  730. package/dist/domain/application/assistant/form/assistant-form-elements.js +1 -0
  731. package/dist/domain/application/assistant/form/assistant-resource-path.d.ts +10 -0
  732. package/dist/domain/application/assistant/form/assistant-resource-path.js +1 -0
  733. package/dist/domain/application/assistant/form/index.d.ts +4 -0
  734. package/dist/domain/application/assistant/form/index.js +1 -0
  735. package/dist/domain/application/assistant/generate-assistant-prompt.d.ts +3 -0
  736. package/dist/domain/application/assistant/generate-assistant-prompt.js +1 -1
  737. package/dist/domain/application/assistant/index.d.ts +8 -2
  738. package/dist/domain/application/assistant/index.js +1 -1
  739. package/dist/domain/application/assistant/session-setup/AssistantSetupHandler.d.ts +20 -0
  740. package/dist/domain/application/assistant/session-setup/AssistantSetupHandler.js +1 -0
  741. package/dist/domain/application/assistant/session-setup/apply-assistant-setup.d.ts +10 -0
  742. package/dist/domain/application/assistant/session-setup/apply-assistant-setup.js +1 -0
  743. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.d.ts +50 -0
  744. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.js +1 -0
  745. package/dist/domain/application/assistant/session-setup/create-session-assistant.d.ts +15 -0
  746. package/dist/domain/application/assistant/session-setup/create-session-assistant.js +1 -0
  747. package/dist/domain/application/assistant/session-setup/index.d.ts +4 -0
  748. package/dist/domain/application/assistant/session-setup/index.js +1 -0
  749. package/dist/domain/application/assistant-recipe-groups.d.ts +3 -1
  750. package/dist/domain/application/configurator-builder.d.ts +11 -2
  751. package/dist/domain/application/configurator-builder.js +1 -1
  752. package/dist/domain/application/index.d.ts +1 -2
  753. package/dist/domain/application/index.js +1 -1
  754. package/dist/domain/application/standard-properties.js +1 -1
  755. package/dist/domain/application/web-component-property.d.ts +3 -1
  756. package/dist/domain/application/web-component-property.js +1 -1
  757. package/dist/domain/available-system-components.d.ts +1 -1
  758. package/dist/domain/available-system-components.js +1 -1
  759. package/dist/domain/core/expression/constant-expressions.d.ts +16 -8
  760. package/dist/domain/core/invariant/violation.d.ts +50 -2
  761. package/dist/domain/core/invariant/violation.js +1 -1
  762. package/dist/domain/core/model/model.d.ts +1 -1
  763. package/dist/domain/core/schema/extended-schema-validator.js +1 -1
  764. package/dist/domain/domain-builder.d.ts +9 -3
  765. package/dist/domain/domain-builder.js +1 -1
  766. package/dist/domain/domain-context/index.d.ts +1 -1
  767. package/dist/domain/domain-context/store-system/store-system.d.ts +5 -0
  768. package/dist/domain/domain-context/store-system/store-system.js +1 -1
  769. package/dist/domain/domain-context/undo-system.d.ts +28 -1
  770. package/dist/domain/domain-context/undo-system.js +1 -1
  771. package/dist/domain/domain-runtime/access/selectors.d.ts +9 -0
  772. package/dist/domain/domain-runtime/access/selectors.js +1 -1
  773. package/dist/domain/domain-runtime/access/types.d.ts +2 -0
  774. package/dist/domain/domain-runtime/access/types.js +1 -1
  775. package/dist/domain/domain-runtime/application.d.ts +39 -0
  776. package/dist/domain/domain-runtime/application.js +1 -0
  777. package/dist/domain/domain-runtime/domain-context/selectors.d.ts +1 -0
  778. package/dist/domain/domain-runtime/domain-context/selectors.js +1 -1
  779. package/dist/domain/domain-runtime/domain-context/types.d.ts +4 -1
  780. package/dist/domain/domain-runtime/domain-runtime.d.ts +60 -4
  781. package/dist/domain/domain-runtime/domain-runtime.js +1 -1
  782. package/dist/domain/domain-runtime/environment/initialize.d.ts +1 -1
  783. package/dist/domain/domain-runtime/environment/types.d.ts +1 -1
  784. package/dist/domain/domain-runtime/errors/implementation-error-collector.d.ts +21 -0
  785. package/dist/domain/domain-runtime/errors/implementation-error-collector.js +1 -0
  786. package/dist/domain/domain-runtime/errors/implementation-error.d.ts +46 -0
  787. package/dist/domain/domain-runtime/errors/implementation-error.js +1 -0
  788. package/dist/domain/domain-runtime/errors/implementation-errors.d.ts +13 -0
  789. package/dist/domain/domain-runtime/errors/implementation-errors.js +1 -0
  790. package/dist/domain/domain-runtime/errors/index.d.ts +4 -0
  791. package/dist/domain/domain-runtime/errors/index.js +1 -0
  792. package/dist/domain/domain-runtime/errors/to-implementation-errors.d.ts +10 -0
  793. package/dist/domain/domain-runtime/errors/to-implementation-errors.js +1 -0
  794. package/dist/domain/domain-runtime/index.d.ts +2 -0
  795. package/dist/domain/domain-runtime/index.js +1 -1
  796. package/dist/domain/domain-runtime/spec/index.d.ts +1 -1
  797. package/dist/domain/domain-runtime/spec/index.js +1 -1
  798. package/dist/domain/domain-runtime/spec/initialize.d.ts +11 -0
  799. package/dist/domain/domain-runtime/spec/initialize.js +1 -1
  800. package/dist/domain/domain-runtime/spec/module-checks/element-registration.d.ts +27 -12
  801. package/dist/domain/domain-runtime/spec/module-checks/element-registration.js +1 -1
  802. package/dist/domain/domain-runtime/spec/module-checks/find-assistant-form-element-errors.d.ts +12 -0
  803. package/dist/domain/domain-runtime/spec/module-checks/find-assistant-form-element-errors.js +1 -0
  804. package/dist/domain/domain-runtime/spec/module-checks/index.d.ts +3 -1
  805. package/dist/domain/domain-runtime/spec/module-checks/index.js +1 -1
  806. package/dist/domain/domain-runtime/spec/module-checks/merge-expression-modules.d.ts +23 -0
  807. package/dist/domain/domain-runtime/spec/module-checks/merge-expression-modules.js +1 -0
  808. package/dist/domain/domain-runtime/spec/module-checks/project-modules.d.ts +8 -1
  809. package/dist/domain/domain-runtime/spec/module-checks/project-modules.js +1 -1
  810. package/dist/domain/domain-runtime/spec/module-checks/resolve-action-modules.js +1 -1
  811. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.d.ts +3 -4
  812. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.js +1 -1
  813. package/dist/domain/domain-runtime/spec/module-checks/resolve-imported-transformers.js +1 -1
  814. package/dist/domain/domain-runtime/spec/module-checks/resolve-invariant-modules.js +1 -1
  815. package/dist/domain/domain-runtime/spec/selectors.d.ts +3 -1
  816. package/dist/domain/domain-runtime/spec/selectors.js +1 -1
  817. package/dist/domain/domain-runtime/spec/types.d.ts +2 -0
  818. package/dist/domain/domain-runtime/web-component/actions.d.ts +3 -0
  819. package/dist/domain/domain-runtime/web-component/actions.js +1 -1
  820. package/dist/domain/domain-runtime/web-component/initialize.d.ts +1 -0
  821. package/dist/domain/domain-runtime/web-component/initialize.js +1 -1
  822. package/dist/domain/domain-runtime/web-component/selectors.d.ts +2 -0
  823. package/dist/domain/domain-runtime/web-component/selectors.js +1 -1
  824. package/dist/domain/domain-runtime/web-component/types.d.ts +6 -3
  825. package/dist/domain/extensions/attribute-switch.d.ts +1 -1
  826. package/dist/domain/extensions/attribute-switch.js +1 -1
  827. package/dist/domain/extensions/canvas-config.d.ts +1 -1
  828. package/dist/domain/extensions/common/angle-indicator-schema.d.ts +2 -2
  829. package/dist/domain/extensions/common/dimension-indicator-schema.d.ts +2 -2
  830. package/dist/domain/extensions/editable-angle-indicator.d.ts +1 -1
  831. package/dist/domain/extensions/editable-distance-dimension-indicator.d.ts +1 -1
  832. package/dist/domain/extensions/editable-offset-indicator.d.ts +1 -1
  833. package/dist/domain/extensions/editable-offset-indicator.js +1 -1
  834. package/dist/domain/extensions/export-images/agent-screenshot.d.ts +24 -0
  835. package/dist/domain/extensions/export-images/agent-screenshot.js +1 -0
  836. package/dist/domain/extensions/export-images/client-side-image.d.ts +14 -0
  837. package/dist/domain/extensions/export-images/client-side-image.js +1 -0
  838. package/dist/domain/extensions/export-images/index.d.ts +3 -0
  839. package/dist/domain/extensions/export-images/index.js +1 -0
  840. package/dist/domain/extensions/{save-template-thumbnail.d.ts → export-images/save-template-thumbnail.d.ts} +4 -4
  841. package/dist/domain/extensions/export-images/save-template-thumbnail.js +1 -0
  842. package/dist/domain/extensions/fit-selection-orthographic-camera-component.js +1 -1
  843. package/dist/domain/extensions/fit-selection-perspective-camera-component.js +1 -1
  844. package/dist/domain/extensions/horizontal-tabs.d.ts +2 -2
  845. package/dist/domain/extensions/index.d.ts +1 -2
  846. package/dist/domain/extensions/index.js +1 -1
  847. package/dist/domain/extensions/list-selector-dimension-indicator.d.ts +1 -1
  848. package/dist/domain/extensions/navigation-steps.d.ts +2 -2
  849. package/dist/domain/extensions/offset-indicator.js +1 -1
  850. package/dist/domain/extensions/rotation-handle.d.ts +2 -2
  851. package/dist/domain/extensions/scene-entity-animation.js +1 -1
  852. package/dist/domain/mocks/create-mock-domain-runtime.d.ts +18 -0
  853. package/dist/domain/mocks/create-mock-domain-runtime.js +1 -1
  854. package/dist/domain/mocks/create-mock-domain.js +1 -1
  855. package/dist/domain/mocks/create-test-application-config.d.ts +59 -0
  856. package/dist/domain/mocks/create-test-application-config.js +1 -0
  857. package/dist/domain/mocks/index.d.ts +1 -0
  858. package/dist/domain/mocks/index.js +1 -1
  859. package/dist/domain/system-components/application-config.d.ts +2 -2
  860. package/dist/domain/system-components/child-entity-selection.js +1 -1
  861. package/dist/domain/system-components/collision-box-geometry.d.ts +4 -2
  862. package/dist/domain/system-components/collision-geometry.d.ts +4 -2
  863. package/dist/domain/system-components/collision-point-geometry.d.ts +4 -2
  864. package/dist/domain/system-components/common/material-override-schema.d.ts +2 -2
  865. package/dist/domain/system-components/common/recipes.d.ts +21 -3
  866. package/dist/domain/system-components/common/recipes.js +1 -1
  867. package/dist/domain/system-components/common/scene-entity-control-schema.d.ts +3 -0
  868. package/dist/domain/system-components/common/scene-entity-control-schema.js +1 -1
  869. package/dist/domain/system-components/constraint.d.ts +10 -23
  870. package/dist/domain/system-components/drag-handle.d.ts +1 -1
  871. package/dist/domain/system-components/drag-handle.js +1 -1
  872. package/dist/domain/system-components/fit-entity-orthographic-camera-component.js +1 -1
  873. package/dist/domain/system-components/fit-entity-perspective-camera-component.js +1 -1
  874. package/dist/domain/system-components/fit-root-orthographic-camera-component.js +1 -1
  875. package/dist/domain/system-components/fit-root-perspective-camera-component.js +1 -1
  876. package/dist/domain/system-components/hotspot-drag-handle.d.ts +1 -1
  877. package/dist/domain/system-components/hotspot-drag-handle.js +1 -1
  878. package/dist/domain/system-components/material-swatch.js +1 -1
  879. package/dist/domain/system-components/scene-entity-material-override.d.ts +1 -1
  880. package/dist/domain/system-components/scene-entity-object-material-override.d.ts +1 -1
  881. package/dist/domain/system-components/scene-entity-object-text-decal.d.ts +1 -1
  882. package/dist/domain/system-components/scene-entity-object-transimissive-material-override.d.ts +1 -1
  883. package/dist/domain/system-components/scene-entity-transimissive-material-override.d.ts +1 -1
  884. package/dist/domain/system-components/static-orthographic-camera-component.js +1 -1
  885. package/dist/domain/system-components/static-perspective-camera-component.js +1 -1
  886. package/dist/editor/Editor.d.ts +7 -0
  887. package/dist/editor/Editor.js +1 -1
  888. package/dist/editor/domain-editors/DomainSpecContext.js +1 -1
  889. package/dist/editor/domain-editors/apply-spec-update.d.ts +10 -2
  890. package/dist/editor/domain-editors/apply-spec-update.js +1 -1
  891. package/dist/editor/domain-editors/use-implementation-files.d.ts +6 -14
  892. package/dist/editor/domain-editors/use-implementation-files.js +1 -1
  893. package/dist/editor/mocks/CreateMockYaml.js +2 -2
  894. package/dist/editor/mocks/EditorMockContext.d.ts +2 -0
  895. package/dist/editor/mocks/EditorMockContext.js +1 -1
  896. package/dist/editor/screenshot/ScreenshotHandler.js +1 -1
  897. package/dist/globals/index.d.ts +2 -0
  898. package/dist/i18n/locales/cs/messages.js +1 -1
  899. package/dist/i18n/locales/da/messages.js +1 -1
  900. package/dist/i18n/locales/de/messages.js +1 -1
  901. package/dist/i18n/locales/de-AT/messages.js +1 -1
  902. package/dist/i18n/locales/en/messages.js +1 -1
  903. package/dist/i18n/locales/en-AU/messages.js +1 -1
  904. package/dist/i18n/locales/en-GB/messages.js +1 -1
  905. package/dist/i18n/locales/es/messages.js +1 -1
  906. package/dist/i18n/locales/fr/messages.js +1 -1
  907. package/dist/i18n/locales/hu/messages.js +1 -1
  908. package/dist/i18n/locales/it/messages.js +1 -1
  909. package/dist/i18n/locales/nl/messages.js +1 -1
  910. package/dist/i18n/locales/pl/messages.js +1 -1
  911. package/dist/i18n/locales/pt/messages.js +1 -1
  912. package/dist/i18n/locales/ro/messages.js +1 -1
  913. package/dist/i18n/locales/sk/messages.js +1 -1
  914. package/dist/i18n/locales/tr/messages.js +1 -1
  915. package/dist/legacy/domain-cli/gen/configurator-builder.js +13 -12
  916. package/dist/legacy/domain-cli/gen/constant-expressions.js +1 -1
  917. package/dist/legacy/domain-cli/utils/cache.d.ts +1 -1
  918. package/dist/legacy/domain-cli/utils/cache.js +1 -1
  919. package/dist/legacy/domain-spec/__generated/domain-schema.d.ts +176 -148
  920. package/dist/legacy/domain-spec/spec/domain-spec.js +1 -1
  921. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/claude-md.d.ts +1 -1
  922. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/cursor-rules.d.ts +1 -1
  923. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.d.ts +1 -1
  924. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.js +13 -1
  925. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-admin.js +15 -14
  926. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-configurator.js +14 -12
  927. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-admin.js +14 -13
  928. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-configurator.js +13 -11
  929. package/dist/phoenix/application-spec/application-spec-builder.d.ts +0 -2
  930. package/dist/phoenix/application-spec/application-spec-builder.js +1 -1
  931. package/dist/phoenix/application-spec/generate-application-spec-project.d.ts +0 -2
  932. package/dist/phoenix/application-spec/generate-application-spec-project.js +2 -2
  933. package/dist/phoenix/application-spec/generate-application-spec-story.js +2 -2
  934. package/dist/phoenix/application-spec/generate-project-files.d.ts +0 -2
  935. package/dist/phoenix/application-spec/project-files.js +1 -1
  936. package/dist/phoenix/application-spec/resolve-deployment-data.d.ts +11 -0
  937. package/dist/phoenix/application-spec/resolve-deployment-data.js +2 -2
  938. package/dist/phoenix/bin.d.ts +2 -0
  939. package/dist/phoenix/bin.js +2 -0
  940. package/dist/phoenix/check-configs/built-in-eslint-config.d.ts +9 -0
  941. package/dist/phoenix/check-configs/built-in-eslint-config.js +1 -0
  942. package/dist/phoenix/check-configs/eslint-config.d.ts +10 -0
  943. package/dist/phoenix/check-configs/eslint-config.js +1 -0
  944. package/dist/phoenix/check-configs/index.d.ts +8 -0
  945. package/dist/phoenix/check-configs/index.js +1 -0
  946. package/dist/phoenix/check-configs/typescript-project.d.ts +5 -0
  947. package/dist/phoenix/check-configs/typescript-project.js +1 -0
  948. package/dist/phoenix/cli.d.ts +0 -1
  949. package/dist/phoenix/cli.js +1 -2
  950. package/dist/phoenix/commands/build.js +1 -1
  951. package/dist/phoenix/commands/check.js +1 -1
  952. package/dist/phoenix/commands/clean.js +1 -1
  953. package/dist/phoenix/commands/deploy.js +2 -2
  954. package/dist/phoenix/commands/deps/deps.d.ts +73 -0
  955. package/dist/phoenix/commands/deps/deps.js +3 -0
  956. package/dist/phoenix/commands/deps/index.d.ts +1 -0
  957. package/dist/phoenix/commands/deps/index.js +1 -0
  958. package/dist/phoenix/commands/deps/sdk-manifest.d.ts +12 -0
  959. package/dist/phoenix/commands/deps/sdk-manifest.js +1 -0
  960. package/dist/phoenix/commands/dev.js +5 -5
  961. package/dist/phoenix/commands/fix.js +1 -1
  962. package/dist/phoenix/commands/generated-env-markers.d.ts +1 -0
  963. package/dist/phoenix/commands/generated-env-markers.js +1 -1
  964. package/dist/phoenix/commands/index.d.ts +1 -0
  965. package/dist/phoenix/commands/index.js +1 -1
  966. package/dist/phoenix/commands/init.d.ts +17 -5
  967. package/dist/phoenix/commands/init.js +1 -1
  968. package/dist/phoenix/commands/link.js +1 -1
  969. package/dist/phoenix/commands/prettier.js +1 -1
  970. package/dist/phoenix/commands/sync.js +1 -1
  971. package/dist/phoenix/commands/unlink.js +1 -1
  972. package/dist/phoenix/lingui/index.d.ts +1 -0
  973. package/dist/phoenix/lingui/index.js +1 -0
  974. package/dist/phoenix/lingui/lingui.d.ts +18 -0
  975. package/dist/phoenix/lingui/lingui.js +1 -0
  976. package/dist/phoenix/services/application-spec-project-watcher.d.ts +5 -3
  977. package/dist/phoenix/services/application-spec-project-watcher.js +3 -3
  978. package/dist/phoenix/services/index.d.ts +1 -0
  979. package/dist/phoenix/services/index.js +1 -1
  980. package/dist/phoenix/services/lingui-watcher.js +1 -1
  981. package/dist/phoenix/services/prepare-development-environment.js +1 -1
  982. package/dist/phoenix/services/source-archive.d.ts +1 -0
  983. package/dist/phoenix/services/source-archive.js +1 -1
  984. package/dist/phoenix/services/swc.js +1 -1
  985. package/dist/phoenix/services/vite-config.js +1 -1
  986. package/dist/phoenix/utils/index.d.ts +4 -2
  987. package/dist/phoenix/utils/index.js +1 -1
  988. package/dist/phoenix/utils/node-version/index.d.ts +1 -0
  989. package/dist/phoenix/utils/node-version/index.js +1 -0
  990. package/dist/phoenix/utils/node-version/supported-node-version.d.ts +12 -0
  991. package/dist/phoenix/utils/node-version/supported-node-version.js +4 -0
  992. package/dist/phoenix/utils/package-info.d.ts +0 -9
  993. package/dist/phoenix/utils/package-info.js +1 -1
  994. package/dist/phoenix/utils/package-manager/index.d.ts +2 -0
  995. package/dist/phoenix/utils/package-manager/index.js +1 -0
  996. package/dist/phoenix/utils/package-manager/package-manager-commands.d.ts +19 -0
  997. package/dist/phoenix/utils/package-manager/package-manager-commands.js +1 -0
  998. package/dist/phoenix/utils/package-manager/pnpm-project.d.ts +9 -0
  999. package/dist/phoenix/utils/package-manager/pnpm-project.js +1 -0
  1000. package/dist/phoenix/utils/run-command.d.ts +11 -0
  1001. package/dist/phoenix/utils/run-command.js +1 -1
  1002. package/dist/phoenix/utils/sdk-tool/index.d.ts +1 -0
  1003. package/dist/phoenix/utils/sdk-tool/index.js +1 -0
  1004. package/dist/phoenix/utils/sdk-tool/resolve-sdk-tool-bin.d.ts +15 -0
  1005. package/dist/phoenix/utils/sdk-tool/resolve-sdk-tool-bin.js +1 -0
  1006. package/dist/react-sdk/application-runtime/common-services/analytics/analytics-service.d.ts +1 -1
  1007. package/dist/{configurator/common → react-sdk/application-runtime/common-services/analytics}/frontend-analytics.d.ts +6 -0
  1008. package/dist/react-sdk/application-runtime/common-services/analytics/frontend-analytics.js +1 -0
  1009. package/dist/react-sdk/application-runtime/common-services/analytics/index.d.ts +1 -0
  1010. package/dist/react-sdk/application-runtime/common-services/analytics/index.js +1 -1
  1011. package/dist/react-sdk/application-runtime/common-services/initialize.d.ts +2 -2
  1012. package/dist/react-sdk/application-runtime/hooks/index.d.ts +2 -0
  1013. package/dist/react-sdk/application-runtime/hooks/index.js +1 -1
  1014. package/dist/react-sdk/application-runtime/hooks/loading/index.d.ts +5 -0
  1015. package/dist/react-sdk/application-runtime/hooks/loading/index.js +1 -0
  1016. package/dist/react-sdk/application-runtime/hooks/loading/loader-host-context.d.ts +11 -0
  1017. package/dist/react-sdk/application-runtime/hooks/loading/loader-host-context.js +1 -0
  1018. package/dist/react-sdk/application-runtime/hooks/loading/use-is-awaiting-loading-phase.d.ts +8 -0
  1019. package/dist/react-sdk/application-runtime/hooks/loading/use-is-awaiting-loading-phase.js +1 -0
  1020. package/dist/react-sdk/application-runtime/hooks/loading/use-is-loader-hosted.d.ts +7 -0
  1021. package/dist/react-sdk/application-runtime/hooks/loading/use-is-loader-hosted.js +1 -0
  1022. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-actions.d.ts +9 -0
  1023. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-actions.js +1 -0
  1024. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-application.d.ts +24 -0
  1025. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-application.js +1 -0
  1026. package/dist/react-sdk/application-runtime/hooks/responsive/index.d.ts +3 -0
  1027. package/dist/react-sdk/application-runtime/hooks/responsive/index.js +1 -0
  1028. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-actions.d.ts +9 -0
  1029. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-actions.js +1 -0
  1030. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-application.d.ts +26 -0
  1031. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-application.js +1 -0
  1032. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-state.d.ts +10 -0
  1033. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-state.js +1 -0
  1034. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-store.d.ts +24 -0
  1035. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-store.js +1 -0
  1036. package/dist/react-sdk/application-runtime/hooks/use-access-service.d.ts +7 -0
  1037. package/dist/react-sdk/application-runtime/hooks/use-access-service.js +1 -1
  1038. package/dist/react-sdk/application-runtime/hooks/use-phoenix-element-slots.d.ts +2 -1
  1039. package/dist/react-sdk/application-runtime/hooks/use-web-component-readonly-sync.d.ts +4 -11
  1040. package/dist/react-sdk/application-runtime/hooks/use-web-component-readonly-sync.js +1 -1
  1041. package/dist/react-sdk/application-runtime/hooks/use-web-component.d.ts +5 -0
  1042. package/dist/react-sdk/application-runtime/hooks/use-web-component.js +1 -1
  1043. package/dist/react-sdk/application-runtime/host-properties/actions.d.ts +15 -0
  1044. package/dist/react-sdk/application-runtime/host-properties/actions.js +1 -0
  1045. package/dist/react-sdk/application-runtime/host-properties/connect-host-properties.d.ts +30 -0
  1046. package/dist/react-sdk/application-runtime/host-properties/connect-host-properties.js +1 -0
  1047. package/dist/react-sdk/application-runtime/host-properties/domain-host-properties.d.ts +7 -0
  1048. package/dist/react-sdk/application-runtime/host-properties/domain-host-properties.js +1 -0
  1049. package/dist/react-sdk/application-runtime/host-properties/host-property-descriptors.d.ts +21 -0
  1050. package/dist/react-sdk/application-runtime/host-properties/host-property-descriptors.js +1 -0
  1051. package/dist/react-sdk/application-runtime/host-properties/host-property-scopes.d.ts +42 -0
  1052. package/dist/react-sdk/application-runtime/host-properties/host-property-scopes.js +1 -0
  1053. package/dist/react-sdk/application-runtime/host-properties/index.d.ts +8 -0
  1054. package/dist/react-sdk/application-runtime/host-properties/index.js +1 -0
  1055. package/dist/react-sdk/application-runtime/host-properties/initialize.d.ts +7 -0
  1056. package/dist/react-sdk/application-runtime/host-properties/initialize.js +1 -0
  1057. package/dist/react-sdk/application-runtime/host-properties/selectors.d.ts +54 -0
  1058. package/dist/react-sdk/application-runtime/host-properties/selectors.js +1 -0
  1059. package/dist/react-sdk/application-runtime/host-properties/types.d.ts +18 -0
  1060. package/dist/react-sdk/application-runtime/host-properties/types.js +1 -0
  1061. package/dist/react-sdk/application-runtime/index.d.ts +3 -0
  1062. package/dist/react-sdk/application-runtime/integration/initialize.d.ts +7 -6
  1063. package/dist/react-sdk/application-runtime/integration/initialize.js +1 -1
  1064. package/dist/react-sdk/application-runtime/integration/selectors.d.ts +11 -2
  1065. package/dist/react-sdk/application-runtime/integration/selectors.js +1 -1
  1066. package/dist/react-sdk/application-runtime/integration/types.d.ts +5 -2
  1067. package/dist/react-sdk/application-runtime/loading/actions.d.ts +45 -0
  1068. package/dist/react-sdk/application-runtime/loading/actions.js +1 -0
  1069. package/dist/react-sdk/application-runtime/loading/index.d.ts +4 -0
  1070. package/dist/react-sdk/application-runtime/loading/index.js +1 -0
  1071. package/dist/react-sdk/application-runtime/loading/initialize.d.ts +3 -0
  1072. package/dist/react-sdk/application-runtime/loading/initialize.js +1 -0
  1073. package/dist/react-sdk/application-runtime/loading/selectors.d.ts +18 -0
  1074. package/dist/react-sdk/application-runtime/loading/selectors.js +1 -0
  1075. package/dist/react-sdk/application-runtime/loading/types.d.ts +59 -0
  1076. package/dist/react-sdk/application-runtime/loading/types.js +1 -0
  1077. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.js +1 -1
  1078. package/dist/react-sdk/application-runtime/provider/ApplicationRuntime.d.ts +6 -0
  1079. package/dist/react-sdk/application-runtime/provider/ApplicationRuntime.js +1 -1
  1080. package/dist/react-sdk/application-runtime/provider/ApplicationType.d.ts +7 -0
  1081. package/dist/react-sdk/application-runtime/provider/ApplicationType.js +1 -1
  1082. package/dist/react-sdk/application-runtime/responsive/actions.d.ts +47 -0
  1083. package/dist/react-sdk/application-runtime/responsive/actions.js +1 -0
  1084. package/dist/react-sdk/application-runtime/responsive/index.d.ts +4 -0
  1085. package/dist/react-sdk/application-runtime/responsive/index.js +1 -0
  1086. package/dist/react-sdk/application-runtime/responsive/initialize.d.ts +3 -0
  1087. package/dist/react-sdk/application-runtime/responsive/initialize.js +1 -0
  1088. package/dist/react-sdk/application-runtime/responsive/selectors.d.ts +20 -0
  1089. package/dist/react-sdk/application-runtime/responsive/selectors.js +1 -0
  1090. package/dist/react-sdk/application-runtime/responsive/types.d.ts +104 -0
  1091. package/dist/react-sdk/application-runtime/responsive/types.js +1 -0
  1092. package/dist/react-sdk/application-runtime/routing/access-service.d.ts +1 -0
  1093. package/dist/react-sdk/application-runtime/routing/routing-service.d.ts +34 -2
  1094. package/dist/react-sdk/application-runtime/routing/routing-service.js +1 -1
  1095. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.d.ts +330 -10
  1096. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.js +1 -1
  1097. package/dist/react-sdk/domain-application-context/BackendDataProvider.js +1 -1
  1098. package/dist/react-sdk/domain-application-context/DomainLifecycleBoundary.js +1 -1
  1099. package/dist/react-sdk/domain-application-context/FrontendDataProvider.js +1 -1
  1100. package/dist/react-sdk/domain-application-context/PublishedDataProvider.js +1 -1
  1101. package/dist/react-sdk/domain-context/common-hooks/index.d.ts +9 -0
  1102. package/dist/react-sdk/domain-context/common-hooks/index.js +1 -0
  1103. package/dist/react-sdk/domain-context/common-hooks/use-configuration-save-state.d.ts +23 -0
  1104. package/dist/react-sdk/domain-context/common-hooks/use-configuration-save-state.js +1 -0
  1105. package/dist/react-sdk/domain-context/common-hooks/use-configurator-messages.d.ts +41 -0
  1106. package/dist/react-sdk/domain-context/common-hooks/use-configurator-messages.js +1 -0
  1107. package/dist/react-sdk/domain-context/common-hooks/use-domain-context.d.ts +1 -0
  1108. package/dist/react-sdk/domain-context/component-hooks/index.d.ts +1 -0
  1109. package/dist/react-sdk/domain-context/component-hooks/index.js +1 -0
  1110. package/dist/react-sdk/domain-context/component-hooks/use-component.js +1 -1
  1111. package/dist/react-sdk/domain-context/entity-hooks/use-domain-entity-state.js +1 -1
  1112. package/dist/react-sdk/domain-context/entity-hooks/use-entity-price.js +1 -1
  1113. package/dist/react-sdk/domain-context/entity-hooks/use-root-entity-id.js +1 -1
  1114. package/dist/react-sdk/domain-context/entity-hooks/use-root-entity-state.js +1 -1
  1115. package/dist/react-sdk/domain-context/index.d.ts +9 -1
  1116. package/dist/react-sdk/domain-context/index.js +1 -1
  1117. package/dist/react-sdk/domain-context/system-hooks/composition-hooks.js +1 -1
  1118. package/dist/react-sdk/domain-context/system-hooks/dimension-hooks.js +1 -1
  1119. package/dist/react-sdk/domain-context/system-hooks/generate-share-link-hooks.d.ts +8 -0
  1120. package/dist/react-sdk/domain-context/system-hooks/generate-share-link-hooks.js +1 -0
  1121. package/dist/react-sdk/domain-context/system-hooks/hover-hooks.js +1 -1
  1122. package/dist/react-sdk/domain-context/system-hooks/locale-switch-hooks.d.ts +24 -0
  1123. package/dist/react-sdk/domain-context/system-hooks/locale-switch-hooks.js +1 -0
  1124. package/dist/react-sdk/domain-context/system-hooks/navigation-hooks.d.ts +11 -0
  1125. package/dist/react-sdk/domain-context/system-hooks/navigation-hooks.js +1 -1
  1126. package/dist/react-sdk/domain-context/system-hooks/selection-hooks.js +1 -1
  1127. package/dist/react-sdk/domain-context/system-hooks/share-links-hooks.d.ts +32 -0
  1128. package/dist/react-sdk/domain-context/system-hooks/share-links-hooks.js +1 -0
  1129. package/dist/react-sdk/domain-context/system-hooks/step-navigation-hooks.d.ts +57 -0
  1130. package/dist/react-sdk/domain-context/system-hooks/step-navigation-hooks.js +1 -0
  1131. package/dist/react-sdk/domain-context/system-hooks/tab-navigation-hooks.d.ts +61 -0
  1132. package/dist/react-sdk/domain-context/system-hooks/tab-navigation-hooks.js +1 -0
  1133. package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.d.ts +20 -0
  1134. package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.js +1 -0
  1135. package/dist/react-sdk/domain-controls/hooks/use-angle-dimension.d.ts +1 -1
  1136. package/dist/react-sdk/handlers/FinalizeActionRunner.d.ts +13 -0
  1137. package/dist/react-sdk/handlers/FinalizeActionRunner.js +1 -0
  1138. package/dist/react-sdk/handlers/FinalizeActionsHost.d.ts +10 -0
  1139. package/dist/react-sdk/handlers/FinalizeActionsHost.js +1 -0
  1140. package/dist/react-sdk/handlers/FinalizeActionsProvider.d.ts +11 -0
  1141. package/dist/react-sdk/handlers/FinalizeActionsProvider.js +1 -0
  1142. package/dist/react-sdk/handlers/finalize-actions-context.d.ts +6 -0
  1143. package/dist/react-sdk/handlers/finalize-actions-context.js +1 -0
  1144. package/dist/react-sdk/handlers/finalize-actions-store.d.ts +23 -0
  1145. package/dist/react-sdk/handlers/finalize-actions-store.js +1 -0
  1146. package/dist/react-sdk/handlers/index.d.ts +6 -0
  1147. package/dist/react-sdk/handlers/index.js +1 -1
  1148. package/dist/react-sdk/handlers/use-finalize-action.d.ts +32 -0
  1149. package/dist/react-sdk/handlers/use-finalize-action.js +1 -0
  1150. package/dist/react-sdk/handlers/use-finalize-actions.d.ts +53 -0
  1151. package/dist/react-sdk/handlers/use-finalize-actions.js +1 -0
  1152. package/dist/react-sdk/index.d.ts +2 -0
  1153. package/dist/react-sdk/index.js +1 -1
  1154. package/dist/react-sdk/loading-state/LoaderHost.d.ts +20 -0
  1155. package/dist/react-sdk/loading-state/LoaderHost.js +1 -0
  1156. package/dist/react-sdk/loading-state/built-in-loading-phase.d.ts +9 -0
  1157. package/dist/react-sdk/loading-state/built-in-loading-phase.js +1 -0
  1158. package/dist/react-sdk/loading-state/create-app-loader.d.ts +18 -0
  1159. package/dist/react-sdk/loading-state/create-app-loader.js +1 -0
  1160. package/dist/react-sdk/loading-state/index.d.ts +4 -2
  1161. package/dist/react-sdk/loading-state/index.js +1 -1
  1162. package/dist/react-sdk/loading-state/{LoadingStateProvider.d.ts → loading-state-hooks.d.ts} +3 -12
  1163. package/dist/react-sdk/loading-state/loading-state-hooks.js +1 -0
  1164. package/dist/react-sdk/page-elements/ConfigurationNotFoundPagePropsProvider.d.ts +17 -0
  1165. package/dist/react-sdk/page-elements/ConfigurationNotFoundPagePropsProvider.js +1 -0
  1166. package/dist/react-sdk/page-elements/ConfiguratorErrorPagePropsProvider.d.ts +17 -0
  1167. package/dist/react-sdk/page-elements/ConfiguratorErrorPagePropsProvider.js +1 -0
  1168. package/dist/react-sdk/page-elements/configurator-error-page-props.d.ts +20 -0
  1169. package/dist/react-sdk/page-elements/configurator-error-page-props.js +1 -0
  1170. package/dist/react-sdk/page-elements/create-configuration-not-found-page.d.ts +15 -0
  1171. package/dist/react-sdk/page-elements/create-configuration-not-found-page.js +1 -0
  1172. package/dist/react-sdk/page-elements/create-configurator-error-page.d.ts +14 -0
  1173. package/dist/react-sdk/page-elements/create-configurator-error-page.js +1 -0
  1174. package/dist/react-sdk/page-elements/create-preset-ui.d.ts +9 -0
  1175. package/dist/react-sdk/page-elements/create-preset-ui.js +1 -0
  1176. package/dist/react-sdk/page-elements/index.d.ts +6 -0
  1177. package/dist/react-sdk/page-elements/index.js +1 -0
  1178. package/dist/react-sdk/scene-control-elements/AddEntityFabElement.d.ts +36 -0
  1179. package/dist/react-sdk/scene-control-elements/AddEntityFabElement.js +1 -0
  1180. package/dist/react-sdk/scene-control-elements/DeleteEntityFabElement.d.ts +44 -0
  1181. package/dist/react-sdk/scene-control-elements/DeleteEntityFabElement.js +1 -0
  1182. package/dist/react-sdk/scene-control-elements/NavigationHotspotElement.d.ts +38 -0
  1183. package/dist/react-sdk/scene-control-elements/NavigationHotspotElement.js +1 -0
  1184. package/dist/react-sdk/scene-control-elements/SelectionHotspotElement.d.ts +30 -0
  1185. package/dist/react-sdk/scene-control-elements/SelectionHotspotElement.js +1 -0
  1186. package/dist/react-sdk/scene-control-elements/ToolMenuFabElement.d.ts +30 -0
  1187. package/dist/react-sdk/scene-control-elements/ToolMenuFabElement.js +1 -0
  1188. package/dist/react-sdk/scene-control-elements/create-add-entity-fab.d.ts +9 -0
  1189. package/dist/react-sdk/scene-control-elements/create-add-entity-fab.js +1 -0
  1190. package/dist/react-sdk/scene-control-elements/create-delete-entity-fab.d.ts +9 -0
  1191. package/dist/react-sdk/scene-control-elements/create-delete-entity-fab.js +1 -0
  1192. package/dist/react-sdk/scene-control-elements/create-navigation-hotspot.d.ts +10 -0
  1193. package/dist/react-sdk/scene-control-elements/create-navigation-hotspot.js +1 -0
  1194. package/dist/react-sdk/scene-control-elements/create-selection-hotspot.d.ts +9 -0
  1195. package/dist/react-sdk/scene-control-elements/create-selection-hotspot.js +1 -0
  1196. package/dist/react-sdk/scene-control-elements/create-tool-menu-fab.d.ts +9 -0
  1197. package/dist/react-sdk/scene-control-elements/create-tool-menu-fab.js +1 -0
  1198. package/dist/react-sdk/scene-control-elements/index.d.ts +11 -0
  1199. package/dist/react-sdk/scene-control-elements/index.js +1 -0
  1200. package/dist/react-sdk/scene-control-elements/scene-control-tooltip-visibility.d.ts +5 -0
  1201. package/dist/react-sdk/scene-control-elements/scene-control-tooltip-visibility.js +1 -0
  1202. package/dist/react-sdk/session/NotAuthenticatedPage.d.ts +4 -0
  1203. package/dist/react-sdk/session/NotAuthenticatedPage.js +1 -1
  1204. package/dist/react-sdk/session/SessionServiceProvider.js +1 -1
  1205. package/dist/react-sdk/web-component/create-web-component.js +1 -1
  1206. package/dist/react-sdk/web-component/god-mode/god-mode-registry.d.ts +30 -0
  1207. package/dist/react-sdk/web-component/god-mode/god-mode-registry.js +1 -0
  1208. package/dist/react-sdk/web-component/god-mode/index.d.ts +1 -0
  1209. package/dist/react-sdk/web-component/god-mode/index.js +1 -0
  1210. package/dist/ui-sdk/icons/__generated/Lightbulb.d.ts +3 -0
  1211. package/dist/ui-sdk/icons/__generated/Lightbulb.js +1 -0
  1212. package/dist/ui-sdk/icons/__generated/XCircle.d.ts +3 -0
  1213. package/dist/ui-sdk/icons/__generated/XCircle.js +1 -0
  1214. package/dist/ui-sdk/icons/__generated/index.d.ts +4 -0
  1215. package/dist/ui-sdk/icons/__generated/index.js +1 -1
  1216. package/dist/ui-sdk/icons/icons-registry.js +1 -1
  1217. package/dist/ui-sdk/responsive-application/ResponsiveApplicationProvider.d.ts +9 -0
  1218. package/dist/ui-sdk/responsive-application/ResponsiveApplicationProvider.js +1 -1
  1219. package/dist/ui-sdk/responsive-application/index.d.ts +1 -0
  1220. package/dist/ui-sdk/responsive-application/responsive-state-store.d.ts +59 -0
  1221. package/dist/ui-sdk/responsive-application/responsive-state-store.js +1 -0
  1222. package/dist/ui-sdk/responsive-application/use-store-responsive-info.d.ts +7 -0
  1223. package/dist/ui-sdk/responsive-application/use-store-responsive-info.js +1 -0
  1224. package/dist/ui-sdk/theme/types.d.ts +5 -1
  1225. package/dist/webhook/builders/webhook-builder.js +1 -1
  1226. package/package.json +58 -36
  1227. package/schema/domain-spec.json +1341 -217
  1228. package/dist/application-spec/generate-application/code/templates/nvmrc.d.ts +0 -1
  1229. package/dist/application-spec/generate-application/code/templates/nvmrc.js +0 -2
  1230. package/dist/application-spec/generate-application/code/templates/package-json.d.ts +0 -10
  1231. package/dist/application-spec/generate-application/code/templates/package-json.js +0 -1
  1232. package/dist/application-spec/generate-application/code/templates/webhook-implementation.d.ts +0 -1
  1233. package/dist/application-spec/generate-application/code/templates/webhook-implementation.js +0 -7
  1234. package/dist/configurator/common/frontend-analytics.js +0 -1
  1235. package/dist/configurator/ui/phoenix-layout-elements/language/use-locale-options.d.ts +0 -4
  1236. package/dist/configurator/ui/phoenix-layout-elements/language/use-locale-options.js +0 -1
  1237. package/dist/configurator/ui/phoenix-layout-elements/measurements/use-measurements-visibility.d.ts +0 -4
  1238. package/dist/configurator/ui/phoenix-layout-elements/measurements/use-measurements-visibility.js +0 -1
  1239. package/dist/domain/application/resource-builder.d.ts +0 -13
  1240. package/dist/domain/application/resource-builder.js +0 -1
  1241. package/dist/domain/extensions/client-side-image.d.ts +0 -14
  1242. package/dist/domain/extensions/client-side-image.js +0 -1
  1243. package/dist/domain/extensions/save-template-thumbnail.js +0 -1
  1244. package/dist/phoenix/commands/generate-project-files.d.ts +0 -6
  1245. package/dist/phoenix/commands/generate-project-files.js +0 -1
  1246. package/dist/phoenix/services/lingui.d.ts +0 -7
  1247. package/dist/phoenix/services/lingui.js +0 -1
  1248. package/dist/react-sdk/application-runtime/runtime/god-mode.d.ts +0 -19
  1249. package/dist/react-sdk/application-runtime/runtime/god-mode.js +0 -1
  1250. package/dist/react-sdk/loading-state/LoadingStateProvider.js +0 -1
  1251. package/dist/react-sdk/loading-state/loading-state-manager.d.ts +0 -32
  1252. package/dist/react-sdk/loading-state/loading-state-manager.js +0 -1
  1253. /package/dist/application-spec/{core → enhanced-json}/eval-code-uses-self.d.ts +0 -0
  1254. /package/dist/application-spec/{core → enhanced-json}/eval-code-uses-self.js +0 -0
  1255. /package/dist/application-spec/{core → enhanced-json}/eval-to-constant.js +0 -0
@@ -1 +1 @@
1
- import{initConsoleLogger as t}from"@salsita-ai/common/utils";import{defaultI18n as e}from"#package/i18n";import{extendedSchemaValidator as i}from"../core/index.js";import{NoopAnalyticsSystem as r}from"../domain-context/index.js";import{createDomainRuntime as n}from"../domain-runtime/index.js";import{isGetApplicationWrapperHandler as o}from"./GetApplicationWrapperHandler.js";import{isGetWebComponentOptionsHandler as a}from"./GetWebComponentOptions.js";import{createInitialPublishedData as s}from"./create-initial-published-data.js";import{isDataRowValidatorHandler as h}from"./published-data/DataRowValidatorHandler.js";import{isFilterPublishedChunksHandler as l}from"./published-data/FilterPublishedChunksHandler.js";import{isMapPublishedChunkedDataHandler as u}from"./published-data/MapPublishedChunkedDataHandler.js";import{isMapPublishedRevisionDataHandler as d}from"./published-data/MapPublishedRevisionDataHandler.js";import{isSheetValidatorHandler as c}from"./published-data/SheetValidatorHandler.js";export class ConfiguratorBuilder{_context;constructor(t){this._context=t}withDefaultEnvs(t){return new ConfiguratorBuilder({...this._context,defaultEnvs:t})}withVersion(t){return new ConfiguratorBuilder({...this._context,version:t})}withTextLanguages(t){return new ConfiguratorBuilder({...this._context,textLanguages:t})}withAcl(t){return new ConfiguratorBuilder({...this._context,acl:t})}withAdminRelease(t){return new ConfiguratorBuilder({...this._context,enableAdminRelease:t})}withUi(t){return new ConfiguratorBuilder({...this._context,ui:t})}withResourcesConfig(t){return new ConfiguratorBuilder({...this._context,resourcesConfig:t})}withChunks(t){return new ConfiguratorBuilder({...this._context,chunks:t})}withPublishedDataHash(t){return new ConfiguratorBuilder({...this._context,publishedDataHash:t})}withAssistant(t){return new ConfiguratorBuilder({...this._context,assistant:t})}withTheme(t){return new ConfiguratorBuilder({...this._context,theme:t})}withDomainFactory(t){return new ConfiguratorBuilder({...this._context,domainFactory:t})}withAdminDomainFactory(t){return new ConfiguratorBuilder({...this._context,adminDomainFactory:t})}withI18n=t=>new ConfiguratorBuilder({...this._context,i18n:t});withPrefetchedFinalizeData(t){return new ConfiguratorBuilder({...this._context,prefetchedFinalizeData:t})}withFinalizeData(t){return new ConfiguratorBuilder({...this._context,finalizeData:t})}withFinalizeResult(t){return new ConfiguratorBuilder({...this._context,finalizeResult:t})}withCallbackData(t){return new ConfiguratorBuilder({...this._context,callbackData:t})}withNavigationState(t){return new ConfiguratorBuilder({...this._context,navigationState:t})}withViewState(t){return new ConfiguratorBuilder({...this._context,viewState:t})}withToolState(t){return new ConfiguratorBuilder({...this._context,toolState:t})}withExportState(t){return new ConfiguratorBuilder({...this._context,exportState:t})}withAdminNavigationState(t){return new ConfiguratorBuilder({...this._context,adminNavigationState:t})}withAdminViewState(t){return new ConfiguratorBuilder({...this._context,adminViewState:t})}withPresets(t){return new ConfiguratorBuilder({...this._context,presets:t})}withAdminPresets(t){return new ConfiguratorBuilder({...this._context,adminPresets:t})}withComponentOptics(t){return new ConfiguratorBuilder({...this._context,componentOptics:[...this._context.componentOptics,...t]})}withAdminComponentOptics(t){return new ConfiguratorBuilder({...this._context,adminComponentOptics:[...this._context.adminComponentOptics??[],...t]})}withHandlers(t){return new ConfiguratorBuilder({...this._context,handlers:t})}withElements(t){return new ConfiguratorBuilder({...this._context,elements:t})}withResources(t){return new ConfiguratorBuilder({...this._context,resources:t})}withWebComponentTag(t){return new ConfiguratorBuilder({...this._context,tagName:t})}withTransformers(t,e){return new ConfiguratorBuilder({...this._context,transformers:{importedTransformers:t,specTransformers:e}})}withInterface(t){return this}withDataSpec=t=>new ConfiguratorBuilder({...this._context,dataSpec:t});_computeInitialPublishedData(t,e,i){if(!this._context.adminDomainFactory)throw Error("adminDomainFactory is required!");return s({adminDomainFactory:this._context.adminDomainFactory,domainRuntime:e,adminPresets:this._context.adminPresets??[],handlers:i,dataSpec:this._context.dataSpec,chunks:this._context.chunks,logger:t})}buildConfig(){return this._buildConfigWithHandlers().config}_buildConfigWithHandlers(){if(!this._context.domainFactory)throw Error("Can not create application config, domainFactory is required! Is it registered with the ConfiguratorBuilder?");if(!this._context.presets)throw Error("Can not create application config, presets are required! Is it registered with the ConfiguratorBuilder?");if(!this._context.adminDomainFactory)throw Error("Can not create application config, adminDomainFactory is required! Is it registered with the ConfiguratorBuilder?");if(!this._context.adminPresets)throw Error("Can not create application config, adminPresets are required! Is it registered with the ConfiguratorBuilder?");if(!this._context.version)throw Error("Can not create application config, version is required!");let i=this._context.tagName??"salsita-configurator",s={defaultEnvs:this._context.defaultEnvs,services:{i18n:this._context.i18n},version:this._context.version,initialPublishedData:{},domain:{textLanguages:this._context.textLanguages,componentOptics:this._context.componentOptics,presets:this._context.presets,domainFactory:this._context.domainFactory},navigation:{navigationStates:this._context.navigationState?.values(),viewStates:this._context.viewState?.values(),toolStates:this._context.toolState?.values(),exportStates:this._context.exportState?.values()},adminNavigation:{navigationStates:this._context.adminNavigationState?.values(),viewStates:this._context.adminViewState?.values()},adminDomain:{textLanguages:this._context.textLanguages,componentOptics:this._context.adminComponentOptics??[],presets:this._context.adminPresets,domainFactory:this._context.adminDomainFactory},mount:{tag:i,options:{}},handlers:this._context.handlers??[],elements:this._context.elements??[],transformers:this._context.transformers,features:{acl:this._context.acl,enableAdminRelease:this._context.enableAdminRelease},ui:{preview:this._context.ui?.preview,alwaysExpand:this._context.ui?.alwaysExpand,theme:this._context.theme},resources:this._context.resourcesConfig,chunks:this._context.chunks,publishedDataHash:this._context.publishedDataHash,assistant:this._context.assistant,dataSpec:this._context.dataSpec},u=t(),d=n({config:s,services:{analyticsService:new r,i18n:e,logger:u}}),f=d.getState().spec.configurator.handlers;if(f.filter(t=>l(t)).length>1)throw Error("Multiple createFilterPublishedChunksHandler handlers found. Only one handler is allowed.");if(f.filter(t=>h(t)).length>1)throw Error("Multiple createDataRowValidatorHandler handlers found. Only one handler is allowed.");if(f.filter(t=>c(t)).length>1)throw Error("Multiple createSheetValidatorHandler handlers found. Only one handler is allowed.");let m=f.find(o)?.handler().handler,x=f.find(a)?.handler().handler(void 0),w=this._computeInitialPublishedData(u,d,f);return{config:{...s,mount:{tag:i,options:x??{},Application:m},initialPublishedData:w},handlers:f}}buildWebhookContext(){if(!this._context.domainFactory)throw Error("domainFactory is required!");if(!this._context.adminDomainFactory)throw Error("adminDomainFactory is required!");if(!this._context.adminPresets)throw Error("adminPresets are required!");let{config:t,handlers:e}=this._buildConfigWithHandlers(),r=t=>{if(null==this._context.finalizeData)return{};let e=i.compile(this._context.finalizeData);if(!e(t))throw console.error("Finalize data validation errors:",e.errors),Error("Invalid finalize data!");return t},n=t=>{if(null==this._context.finalizeResult)return{};let e=i.compile(this._context.finalizeResult);if(!e(t))throw console.error("Finalize result validation errors:",e.errors),Error("Invalid finalize result!");return t},o=t=>{if(null==this._context.callbackData)return{};let e=i.compile(this._context.callbackData);if(!e(t))throw console.error("Callback data validation errors:",e.errors),Error("Invalid callback data!");return t},a=e.find(d)?.handler().handler,s=e.find(u)?.handler().handler,l=e.find(h)?.handler().handler,f=e.find(c)?.handler().handler;return{config:t,parseFinalizeData:r,parseFinalizeResult:n,resources:this._context.resources??[],parseCallbackData:o,mapPublishedRevisionData:a,mapPublishedChunkedData:s,dataRowValidator:l,sheetValidator:f}}}
1
+ import{initConsoleLogger as t}from"@salsita-ai/common/utils";import{defaultI18n as e}from"#package/i18n";import{extendedSchemaValidator as i}from"../core/index.js";import{NoopAnalyticsSystem as r}from"../domain-context/index.js";import{createDomainRuntime as n}from"../domain-runtime/index.js";import{isGetApplicationWrapperHandler as o}from"./GetApplicationWrapperHandler.js";import{isGetWebComponentOptionsHandler as a}from"./GetWebComponentOptions.js";import{isAssistantSetupHandler as s}from"./assistant/index.js";import{createInitialPublishedData as u}from"./create-initial-published-data.js";import{isDataRowValidatorHandler as h}from"./published-data/DataRowValidatorHandler.js";import{isFilterPublishedChunksHandler as l}from"./published-data/FilterPublishedChunksHandler.js";import{isMapPublishedChunkedDataHandler as c}from"./published-data/MapPublishedChunkedDataHandler.js";import{isMapPublishedRevisionDataHandler as d}from"./published-data/MapPublishedRevisionDataHandler.js";import{isSheetValidatorHandler as m}from"./published-data/SheetValidatorHandler.js";let f=[[s,"createAssistantSetupHandler"],[l,"createFilterPublishedChunksHandler"],[h,"createDataRowValidatorHandler"],[m,"createSheetValidatorHandler"]];export const checkSingleInstanceHandlers=t=>{for(let[e,i]of f)if(t.filter(t=>e(t)).length>1)throw Error(`Multiple ${i} handlers found. Only one handler is allowed.`)};export class ConfiguratorBuilder{_context;constructor(t){this._context=t}withDefaultEnvs(t){return new ConfiguratorBuilder({...this._context,defaultEnvs:t})}withVersion(t){return new ConfiguratorBuilder({...this._context,version:t})}withTextLanguages(t){return new ConfiguratorBuilder({...this._context,textLanguages:t})}withAcl(t){return new ConfiguratorBuilder({...this._context,acl:t})}withAdminRelease(t){return new ConfiguratorBuilder({...this._context,enableAdminRelease:t})}withUi(t){return new ConfiguratorBuilder({...this._context,ui:t})}withResourcesConfig(t){return new ConfiguratorBuilder({...this._context,resourcesConfig:t})}withChunks(t){return new ConfiguratorBuilder({...this._context,chunks:t})}withPublishedDataHash(t){return new ConfiguratorBuilder({...this._context,publishedDataHash:t})}withAssistant(t){return new ConfiguratorBuilder({...this._context,assistant:t})}withTheme(t){return new ConfiguratorBuilder({...this._context,theme:t})}withDomainFactory(t){return new ConfiguratorBuilder({...this._context,domainFactory:t})}withAdminDomainFactory(t){return new ConfiguratorBuilder({...this._context,adminDomainFactory:t})}withI18n=t=>new ConfiguratorBuilder({...this._context,i18n:t});withPrefetchedFinalizeData(t){return new ConfiguratorBuilder({...this._context,prefetchedFinalizeData:t})}withFinalizeData(t){return new ConfiguratorBuilder({...this._context,finalizeData:t})}withFinalizeResult(t){return new ConfiguratorBuilder({...this._context,finalizeResult:t})}withCallbackData(t){return new ConfiguratorBuilder({...this._context,callbackData:t})}withNavigationState(t){return new ConfiguratorBuilder({...this._context,navigationState:t})}withViewState(t){return new ConfiguratorBuilder({...this._context,viewState:t})}withToolState(t){return new ConfiguratorBuilder({...this._context,toolState:t})}withExportState(t){return new ConfiguratorBuilder({...this._context,exportState:t})}withAdminNavigationState(t){return new ConfiguratorBuilder({...this._context,adminNavigationState:t})}withAdminViewState(t){return new ConfiguratorBuilder({...this._context,adminViewState:t})}withPresets(t){return new ConfiguratorBuilder({...this._context,presets:t})}withAdminPresets(t){return new ConfiguratorBuilder({...this._context,adminPresets:t})}withComponentOptics(t){return new ConfiguratorBuilder({...this._context,componentOptics:[...this._context.componentOptics,...t]})}withAdminComponentOptics(t){return new ConfiguratorBuilder({...this._context,adminComponentOptics:[...this._context.adminComponentOptics??[],...t]})}withHandlers(t){return new ConfiguratorBuilder({...this._context,handlers:t})}withElements(t){return new ConfiguratorBuilder({...this._context,elements:t})}withDefaultElements(t){return new ConfiguratorBuilder({...this._context,defaultElements:t})}withResources(t){return new ConfiguratorBuilder({...this._context,resources:t})}withWebComponentTag(t){return new ConfiguratorBuilder({...this._context,tagName:t})}withTransformers(t,e){return new ConfiguratorBuilder({...this._context,transformers:{importedTransformers:t,specTransformers:e}})}withInterface(t){return this}withDataSpec=t=>new ConfiguratorBuilder({...this._context,dataSpec:t});_computeInitialPublishedData(t,e,i){if(!this._context.adminDomainFactory)throw Error("adminDomainFactory is required!");return u({adminDomainFactory:this._context.adminDomainFactory,domainRuntime:e,adminPresets:this._context.adminPresets??[],handlers:i,dataSpec:this._context.dataSpec,chunks:this._context.chunks,logger:t})}buildConfig(){return this._buildConfigWithHandlers().config}_buildConfigWithHandlers(){if(!this._context.domainFactory)throw Error("Can not create application config, domainFactory is required! Is it registered with the ConfiguratorBuilder?");if(!this._context.presets)throw Error("Can not create application config, presets are required! Is it registered with the ConfiguratorBuilder?");if(!this._context.adminDomainFactory)throw Error("Can not create application config, adminDomainFactory is required! Is it registered with the ConfiguratorBuilder?");if(!this._context.adminPresets)throw Error("Can not create application config, adminPresets are required! Is it registered with the ConfiguratorBuilder?");if(!this._context.version)throw Error("Can not create application config, version is required!");let i=this._context.tagName??"salsita-configurator",s={defaultEnvs:this._context.defaultEnvs,services:{i18n:this._context.i18n},version:this._context.version,initialPublishedData:{},domain:{textLanguages:this._context.textLanguages,componentOptics:this._context.componentOptics,presets:this._context.presets,domainFactory:this._context.domainFactory},navigation:{navigationStates:this._context.navigationState?.values(),viewStates:this._context.viewState?.values(),toolStates:this._context.toolState?.values(),exportStates:this._context.exportState?.values()},adminNavigation:{navigationStates:this._context.adminNavigationState?.values(),viewStates:this._context.adminViewState?.values()},adminDomain:{textLanguages:this._context.textLanguages,componentOptics:this._context.adminComponentOptics??[],presets:this._context.adminPresets,domainFactory:this._context.adminDomainFactory},mount:{tag:i,options:{}},handlers:this._context.handlers??[],elements:this._context.elements??[],defaultElements:this._context.defaultElements??[],transformers:this._context.transformers,features:{acl:this._context.acl,enableAdminRelease:this._context.enableAdminRelease},ui:{preview:this._context.ui?.preview,alwaysExpand:this._context.ui?.alwaysExpand,theme:this._context.theme},resources:this._context.resourcesConfig,chunks:this._context.chunks,publishedDataHash:this._context.publishedDataHash,assistant:this._context.assistant,dataSpec:this._context.dataSpec},u=t(),h=n({config:s,services:{analyticsService:new r,i18n:e,logger:u}}),l=h.getState().spec.configurator.handlers;checkSingleInstanceHandlers(l);let c=l.find(o)?.handler().handler,d=l.find(a)?.handler().handler(void 0),m=this._computeInitialPublishedData(u,h,l);return{config:{...s,mount:{tag:i,options:d??{},Application:c},initialPublishedData:m},handlers:l}}buildWebhookContext(){if(!this._context.domainFactory)throw Error("domainFactory is required!");if(!this._context.adminDomainFactory)throw Error("adminDomainFactory is required!");if(!this._context.adminPresets)throw Error("adminPresets are required!");let{config:t,handlers:e}=this._buildConfigWithHandlers(),r=t=>{if(null==this._context.finalizeData)return{};let e=i.compile(this._context.finalizeData);if(!e(t))throw console.error("Finalize data validation errors:",e.errors),Error("Invalid finalize data!");return t},n=t=>{if(null==this._context.finalizeResult)return{};let e=i.compile(this._context.finalizeResult);if(!e(t))throw console.error("Finalize result validation errors:",e.errors),Error("Invalid finalize result!");return t},o=t=>{if(null==this._context.callbackData)return{};let e=i.compile(this._context.callbackData);if(!e(t))throw console.error("Callback data validation errors:",e.errors),Error("Invalid callback data!");return t},a=e.find(d)?.handler().handler,s=e.find(c)?.handler().handler,u=e.find(h)?.handler().handler,l=e.find(m)?.handler().handler;return{config:t,parseFinalizeData:r,parseFinalizeResult:n,resources:this._context.resources??[],parseCallbackData:o,mapPublishedRevisionData:a,mapPublishedChunkedData:s,dataRowValidator:u,sheetValidator:l}}}
@@ -2,14 +2,13 @@ export { type DomainConfig, type NavigationConfig, type ISessionService, type Se
2
2
  export { type AssistantFieldOption, findAssistantFieldOptions, readAssistantFieldOptions, } from './assistant-field-options.js';
3
3
  export { deleteEntityUpdateTag, findAssistantMutation, modifyEntityUpdateTag } from './assistant-mutations.js';
4
4
  export { type AssistantRecipe, type AssistantRecipeContext, type AssistantRecipeGroupSnapshot, type AssistantRecipeKind, findAssistantRecipeGroups, prepareAssistantRecipeUpdates, readAssistantRecipeGroup, } from './assistant-recipe-groups.js';
5
- export { ConfiguratorBuilder } from './configurator-builder.js';
5
+ export { ConfiguratorBuilder, checkSingleInstanceHandlers } from './configurator-builder.js';
6
6
  export * from './admin-page-factories.js';
7
7
  export { createInitialPublishedData, type CreateInitialPublishedDataProps } from './create-initial-published-data.js';
8
8
  export { webComponentAttributeParsers, createWebComponentPropertyDescriptor, type AttributeParser, type WebComponentPropertyDescriptor, } from './web-component-property.js';
9
9
  export { createWebComponentEventDescriptor, type WebComponentEventDescriptor } from './web-component-event.js';
10
10
  export { standardWebComponentProperties, type StandardConfiguratorElement } from './standard-properties.js';
11
11
  export { standardWebComponentEvents } from './standard-events.js';
12
- export { ResourceBuilder } from './resource-builder.js';
13
12
  export { createGetApplicationWrapperHandler, isGetApplicationWrapperHandler, type CreateGetApplicationWrapperHandler, } from './GetApplicationWrapperHandler.js';
14
13
  export { createGetThemeHandler, GetThemeHandlerName, isGetThemeHandler, type CreateGetThemeHandler, } from './GetThemeHandler.js';
15
14
  export { createGetWebComponentOptionsHandler, isGetWebComponentOptionsHandler, type CreateGetWebComponentOptionsHandler, } from './GetWebComponentOptions.js';
@@ -1 +1 @@
1
- export{findAssistantFieldOptions,readAssistantFieldOptions}from"./assistant-field-options.js";export{deleteEntityUpdateTag,findAssistantMutation,modifyEntityUpdateTag}from"./assistant-mutations.js";export{findAssistantRecipeGroups,prepareAssistantRecipeUpdates,readAssistantRecipeGroup}from"./assistant-recipe-groups.js";export{ConfiguratorBuilder}from"./configurator-builder.js";export*from"./admin-page-factories.js";export{createInitialPublishedData}from"./create-initial-published-data.js";export{webComponentAttributeParsers,createWebComponentPropertyDescriptor}from"./web-component-property.js";export{createWebComponentEventDescriptor}from"./web-component-event.js";export{standardWebComponentProperties}from"./standard-properties.js";export{standardWebComponentEvents}from"./standard-events.js";export{ResourceBuilder}from"./resource-builder.js";export{createGetApplicationWrapperHandler,isGetApplicationWrapperHandler}from"./GetApplicationWrapperHandler.js";export{createGetThemeHandler,GetThemeHandlerName,isGetThemeHandler}from"./GetThemeHandler.js";export{createGetWebComponentOptionsHandler,isGetWebComponentOptionsHandler}from"./GetWebComponentOptions.js";export{createFinalizeAdminDomain}from"./published-data/create-finalize-admin-domain.js";export{FilterPublishedChunksHandlerName,isFilterPublishedChunksHandler}from"./published-data/FilterPublishedChunksHandler.js";export{mapPublishedData}from"./published-data/map-published-data.js";export{flattenTabData,mapDefaultValuesToRecords,mapPublishedChunkedData,SYSTEM_CHUNK_KEY,SYSTEM_CHUNK_SCOPE,SWATCH_DEFINITION}from"./published-data/map-published-chunked-data.js";export{buildLegendRows}from"./published-data/build-legend-data.js";export{formatFieldType,getFieldDescription}from"./published-data/format-field-type.js";export{mapDataToSheet}from"./published-data/map-data-to-sheet.js";export{validateRows}from"./published-data/validate-sheet-data.js";export{createDataRowValidatorHandler,DataRowValidatorHandlerName,isDataRowValidatorHandler}from"./published-data/DataRowValidatorHandler.js";export{createSheetValidatorHandler,SheetValidatorHandlerName,isSheetValidatorHandler}from"./published-data/SheetValidatorHandler.js";export{createMapPublishedRevisionDataHandler,createMapPublishedRevisionDataHandlerFactory,isMapPublishedRevisionDataHandler}from"./published-data/MapPublishedRevisionDataHandler.js";export{createMapPublishedChunkedDataHandler,createMapPublishedChunkedDataHandlerFactory,isMapPublishedChunkedDataHandler}from"./published-data/MapPublishedChunkedDataHandler.js";export*from"./assistant/index.js";
1
+ export{findAssistantFieldOptions,readAssistantFieldOptions}from"./assistant-field-options.js";export{deleteEntityUpdateTag,findAssistantMutation,modifyEntityUpdateTag}from"./assistant-mutations.js";export{findAssistantRecipeGroups,prepareAssistantRecipeUpdates,readAssistantRecipeGroup}from"./assistant-recipe-groups.js";export{ConfiguratorBuilder,checkSingleInstanceHandlers}from"./configurator-builder.js";export*from"./admin-page-factories.js";export{createInitialPublishedData}from"./create-initial-published-data.js";export{webComponentAttributeParsers,createWebComponentPropertyDescriptor}from"./web-component-property.js";export{createWebComponentEventDescriptor}from"./web-component-event.js";export{standardWebComponentProperties}from"./standard-properties.js";export{standardWebComponentEvents}from"./standard-events.js";export{createGetApplicationWrapperHandler,isGetApplicationWrapperHandler}from"./GetApplicationWrapperHandler.js";export{createGetThemeHandler,GetThemeHandlerName,isGetThemeHandler}from"./GetThemeHandler.js";export{createGetWebComponentOptionsHandler,isGetWebComponentOptionsHandler}from"./GetWebComponentOptions.js";export{createFinalizeAdminDomain}from"./published-data/create-finalize-admin-domain.js";export{FilterPublishedChunksHandlerName,isFilterPublishedChunksHandler}from"./published-data/FilterPublishedChunksHandler.js";export{mapPublishedData}from"./published-data/map-published-data.js";export{flattenTabData,mapDefaultValuesToRecords,mapPublishedChunkedData,SYSTEM_CHUNK_KEY,SYSTEM_CHUNK_SCOPE,SWATCH_DEFINITION}from"./published-data/map-published-chunked-data.js";export{buildLegendRows}from"./published-data/build-legend-data.js";export{formatFieldType,getFieldDescription}from"./published-data/format-field-type.js";export{mapDataToSheet}from"./published-data/map-data-to-sheet.js";export{validateRows}from"./published-data/validate-sheet-data.js";export{createDataRowValidatorHandler,DataRowValidatorHandlerName,isDataRowValidatorHandler}from"./published-data/DataRowValidatorHandler.js";export{createSheetValidatorHandler,SheetValidatorHandlerName,isSheetValidatorHandler}from"./published-data/SheetValidatorHandler.js";export{createMapPublishedRevisionDataHandler,createMapPublishedRevisionDataHandlerFactory,isMapPublishedRevisionDataHandler}from"./published-data/MapPublishedRevisionDataHandler.js";export{createMapPublishedChunkedDataHandler,createMapPublishedChunkedDataHandlerFactory,isMapPublishedChunkedDataHandler}from"./published-data/MapPublishedChunkedDataHandler.js";export*from"./assistant/index.js";
@@ -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,8 +1,16 @@
1
- import type { DomainEntity, ExpandAlias, TypeOrAlias } from '../model/index.js';
2
- import type { AnonymousExpression } from './expression.js';
3
- export type ConstantExpressions<ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, ALIASES extends Record<string, ENTITIES>, CONSTANTS extends Partial<Record<TypeOrAlias<ENTITIES, ALIASES>, Record<string, unknown>>>> = {
4
- readonly [TYPE_OR_ALIAS in keyof CONSTANTS & string]: {
5
- readonly [NAME in keyof CONSTANTS[TYPE_OR_ALIAS]]: AnonymousExpression<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ExpandAlias<ENTITIES, ALIASES, TYPE_OR_ALIAS>, CONSTANTS[TYPE_OR_ALIAS][NAME]>;
6
- };
7
- };
8
- export declare const createConstantExpressionFactory: <ENTITIES extends DomainEntity<string>, ALLOWED_ROOT_ENTITIES extends ENTITIES, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, ALIASES extends Record<string, ENTITIES>>() => <CONSTANTS extends Partial<Record<TypeOrAlias<ENTITIES, ALIASES>, Record<string, unknown>>>>(constants: CONSTANTS) => ConstantExpressions<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, ALIASES, CONSTANTS>;
1
+ import type { ExpressionMeta } from './expression.js';
2
+ /**
3
+ * The constant expressions of a domain, keyed by entity type or alias and then by the name of the
4
+ * constant. A constant expression takes no argument: it reads neither the entity nor the state, so
5
+ * the domain of any project accepts it.
6
+ */
7
+ export type ConstantExpressions = Readonly<Record<string, Readonly<Record<string, {
8
+ evaluate(): unknown;
9
+ readonly meta: ExpressionMeta;
10
+ }>>>>;
11
+ /**
12
+ * Makes the function that turns the constants of a spec into expressions: every constant becomes an
13
+ * expression that returns its value. The type a project reads from a constant is the one its
14
+ * generated model declares for the property, not the type of the expression.
15
+ */
16
+ export declare const createConstantExpressionFactory: () => (constants: Readonly<Record<string, Readonly<Record<string, unknown>>>>) => ConstantExpressions;
@@ -1,5 +1,5 @@
1
1
  import type { I18n } from '@lingui/core';
2
- import type { Localizable } from '@salsita-ai/common/utils';
2
+ import { type Localizable } from '@salsita-ai/common/utils';
3
3
  import type { StateEmission } from '../emission/index.js';
4
4
  import type { $DomainEntity, DomainEntity, EntityId } from '../model/index.js';
5
5
  /**
@@ -66,7 +66,55 @@ export declare const ViolationSchema: {
66
66
  readonly enum: ("fatal" | "fixable" | "notice" | "warning")[];
67
67
  };
68
68
  readonly message: {
69
- readonly type: 'string';
69
+ readonly anyOf: [{
70
+ readonly type: 'string';
71
+ }, {
72
+ readonly type: 'object';
73
+ readonly properties: {
74
+ readonly id: {
75
+ readonly type: 'string';
76
+ };
77
+ readonly comment: {
78
+ readonly type: 'string';
79
+ };
80
+ readonly message: {
81
+ readonly type: 'string';
82
+ };
83
+ readonly values: {
84
+ readonly type: 'object';
85
+ readonly additionalProperties: true;
86
+ };
87
+ };
88
+ readonly required: ["id"];
89
+ readonly additionalProperties: false;
90
+ readonly import: [{
91
+ readonly module: '@lingui/core';
92
+ readonly member: 'MessageDescriptor';
93
+ }];
94
+ readonly tsType: 'MessageDescriptor';
95
+ }, {
96
+ readonly import: [{
97
+ readonly module: '@salsita-ai/sdk/common/utils';
98
+ readonly member: 'MultilingualString';
99
+ }];
100
+ readonly tsType: 'MultilingualString';
101
+ readonly type: 'object';
102
+ readonly properties: {
103
+ readonly $lang: {
104
+ readonly type: 'object';
105
+ readonly additionalProperties: {
106
+ readonly type: 'string';
107
+ };
108
+ };
109
+ };
110
+ readonly required: ["$lang"];
111
+ readonly additionalProperties: false;
112
+ }];
113
+ readonly tsType: 'Localizable';
114
+ readonly import: [{
115
+ readonly module: '@salsita-ai/sdk/common/utils';
116
+ readonly member: 'Localizable';
117
+ }];
70
118
  };
71
119
  readonly controlViolationPriority: {
72
120
  readonly type: 'number';
@@ -1 +1 @@
1
- let e=["fatal","fixable","warning","notice"];export const compareSeverity=(t,i)=>e.indexOf(t)-e.indexOf(i);export const ViolationSchema={type:"object",properties:{type:{type:"string"},severity:{enum:e.slice()},message:{type:"string"},controlViolationPriority:{type:"number"}},required:["type","severity"],additionalProperties:!1};
1
+ import{MessageDescriptorSchema as e,MultilingualStringSchema as t}from"@salsita-ai/common/utils";let i=["fatal","fixable","warning","notice"];export const compareSeverity=(e,t)=>i.indexOf(e)-i.indexOf(t);export const ViolationSchema={type:"object",properties:{type:{type:"string"},severity:{enum:i.slice()},message:{anyOf:[{type:"string"},e,t],tsType:"Localizable",import:[{module:"@salsita-ai/sdk/common/utils",member:"Localizable"}]},controlViolationPriority:{type:"number"}},required:["type","severity"],additionalProperties:!1};
@@ -25,7 +25,7 @@ export declare const VirtualEntityIdSchema: {
25
25
  };
26
26
  export declare const createVirtualEntityId: (name: string) => VirtualEntityId;
27
27
  export declare const isVirtualEntityId: (value: EntityId<any>) => value is VirtualEntityId;
28
- export type DomainEntityId<TYPE extends string> = `${TYPE}-${number}` & {
28
+ export type DomainEntityId<TYPE extends string = string> = `${TYPE}-${number}` & {
29
29
  __brand: TYPE;
30
30
  };
31
31
  /**
@@ -1 +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})}}
@@ -2,7 +2,7 @@ export { type AnalyticsSystem, NoopAnalyticsSystem, type AnalyticsEvent, Analyti
2
2
  export { NavigationUpdateTag, isInitialNavigationUpdate, isNavigationUpdate, isInitialViewUpdate, isViewUpdate, isInitialSelectionUpdate, isSelectUpdate, isDeselectUpdate, isInitialFullscreenUpdate, isToggleFullscreenUpdate, isInitialDebugUpdate, isInitialViewportUpdate, isSetViewportUpdate, isInitialDragUpdate, isDragStartUpdate, isDragEndUpdate, isInitialToolUpdate, isToolUpdate, isExportUpdate, createAutoSelectionTransformer, NavigationSystem, type NavigationSystemContext, createResetSelectionOnNavigationTransformer, createNavigationOnSelectionTransformer, createNavigationOnDeselectTransformer, createSelectParentOnDeselectionTransformer, createNavigationOnSelectionChangeTransformer, type AnyNavigationSystem, } from './navigation-system/index.js';
3
3
  export { StoreSystem, type TransformerRegistration, type UpdateTransformer, type TransformerLogFunction, type Transformers, type StateSliceName, type StateEmissionKind, type CommitPreparedOutcome, nextDomainEntityId, getIdSequence, applyUpdates, SystemState, SystemStateInitialUpdateTag, SystemStateUpdateTag, type SystemStateContext, type AnyCreateTransformersFactory, type AnyStoreSystem, type Unregister, } from './store-system/index.js';
4
4
  export { createRefReplaceTransformer, createCascadeDeletesTransformer, createCascadeRefPruningTransformer, createCreateEntityRefsTransformer, } from './relation-transformers/index.js';
5
- export { type CanBeUndonePredicate, type CanBeUndoneContext, type UndoCapabilities, UndoSystem, UNDO_REDO_RESET_TAG, isUndoRedoReset, type AnyUndoSystem, } from './undo-system.js';
5
+ export { type CanBeUndonePredicate, type CanBeUndoneContext, type UndoCapabilities, type UndoStep, UndoSystem, UNDO_REDO_RESET_TAG, isUndoRedoReset, type AnyUndoSystem, } from './undo-system.js';
6
6
  export { DimensionSystem, type AnyDimensionSystem, type DimensionSystemContext, type AngleDimensionViolation, type DistanceDimensionViolation, type GenericDimensionViolation, } from './dimension-system/index.js';
7
7
  export { ActionSystem, type AnyActionSystem, type ActionSystemContext } from './action-system/index.js';
8
8
  export { RecipeCookerSystem, type AnyRecipeCookerSystem, type RecipeCookerSystemContext, ReplaceRecipeUpdateTag, isReplaceEntityUpdate, type IsReplaceRecipeUpdate, CreateRecipeUpdateTag, isCreateEntityUpdate, type IsCreateRecipeUpdate, } from './recipe-system/index.js';
@@ -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}}}}
@@ -1,10 +1,31 @@
1
1
  import type { ObservableWithLastValue } from '@salsita-ai/common/utils';
2
- import type { $DomainEntity, DomainEntity, ResetStateEmission, StateEmission } from '../core/index.js';
2
+ import type { $DomainEntity, DomainEntity, DomainState, ResetStateEmission, StateEmission } from '../core/index.js';
3
3
  import type { DomainContextSelectors } from '../domain-runtime/index.js';
4
4
  export interface UndoCapabilities {
5
5
  readonly canUndo: boolean;
6
6
  readonly canRedo: boolean;
7
7
  }
8
+ /**
9
+ * One step of the undo history: a state that undo and redo return to.
10
+ *
11
+ * A step is made by an undoable change. The non-undoable commits made on top of it afterwards, such
12
+ * as a selection or a navigation, do not make steps of their own; returning to the step keeps them,
13
+ * so undoing a later change does not also take back what the user selected since. A step therefore
14
+ * holds two states: the one that identifies it and the one it returns to.
15
+ */
16
+ export interface UndoStep<ENTITIES extends DomainEntity<string>> {
17
+ /**
18
+ * The state the undoable change committed. It identifies the step and never changes, so a caller
19
+ * that knows which state its own change committed can tell whether that change is the step the
20
+ * configuration is at.
21
+ */
22
+ readonly committedState: DomainState<ENTITIES>;
23
+ /**
24
+ * What undo or redo resets the store to: `committedState` plus the non-undoable commits made on
25
+ * top of it before the next undoable change.
26
+ */
27
+ readonly restoreState: DomainState<ENTITIES>;
28
+ }
8
29
  export interface CanBeUndoneContext<ENTITIES extends DomainEntity<string>, $MAP extends Record<ENTITIES['type'], $DomainEntity<ENTITIES>>> {
9
30
  oldEmission: StateEmission<ENTITIES, $MAP>;
10
31
  newEmission: StateEmission<ENTITIES, $MAP>;
@@ -39,6 +60,12 @@ export declare class UndoSystem<ENTITIES extends DomainEntity<string>, $MAP exte
39
60
  private _activeIsUndoable;
40
61
  private readonly _canSubject;
41
62
  readonly can$: ObservableWithLastValue<UndoCapabilities>;
63
+ private readonly _tipSubject;
64
+ /**
65
+ * The step the configuration is at: the top of the stack, or the step an undo or redo returned to.
66
+ * Nothing while the stack is empty, before the first undoable change and after a reset.
67
+ */
68
+ readonly tip$: ObservableWithLastValue<UndoStep<ENTITIES> | undefined>;
42
69
  constructor(_context: UndoSystemContext);
43
70
  initialize: () => void;
44
71
  /**
@@ -1 +1 @@
1
- import{BehaviorSubject as t,pairwise as e}from"rxjs";let s=t=>t.oldEmission.state.entities!==t.newEmission.state.entities;export const UNDO_REDO_RESET_TAG={};export const isUndoRedoReset=t=>"reset"===t.kind&&t.tag===UNDO_REDO_RESET_TAG;export class UndoSystem{_context;_stack=[];_currentIndex=-1;_activeIsUndoable;_canSubject=new t({canUndo:!1,canRedo:!1});can$=this._canSubject;constructor(t){this._context=t,this._context.selectors.getStoreSystem().stateSlices.committed.pipe(e()).subscribe(([t,e])=>{if("reset"===e.kind&&e.tag!==UNDO_REDO_RESET_TAG)return void this.resetStack();let n=this._activeIsUndoable?.handler??s;("reset"!==e.kind||e.tag!==UNDO_REDO_RESET_TAG)&&n({oldEmission:t,newEmission:e})&&(this._stack=[...this._stack.slice(0,this._currentIndex),t.state,e.state],this._currentIndex=this._stack.length-1,this._refresh())})}initialize=()=>{this.resetStack()};registerIsUndoable(t){let e={handler:t};return this._activeIsUndoable=e,()=>{this._activeIsUndoable===e&&(this._activeIsUndoable=void 0)}}resetStack(){this._stack=[],this._currentIndex=-1,this._refresh()}_refresh(){this._canSubject.next({canUndo:this.canUndo(),canRedo:this.canRedo()})}canUndo(){return this._currentIndex>0}canRedo(){return this._currentIndex<this._stack.length-1}undo(){let t=this._stack[this._currentIndex-1];void 0!==t&&(this._currentIndex--,this._context.selectors.getStoreSystem().reset(t,UNDO_REDO_RESET_TAG),this._refresh())}redo(){let t=this._stack[this._currentIndex+1];void 0!==t&&(this._currentIndex++,this._context.selectors.getStoreSystem().reset(t,UNDO_REDO_RESET_TAG),this._refresh())}}
1
+ import{BehaviorSubject as t,pairwise as e}from"rxjs";let s=t=>t.oldEmission.state.entities!==t.newEmission.state.entities;export const UNDO_REDO_RESET_TAG={};export const isUndoRedoReset=t=>"reset"===t.kind&&t.tag===UNDO_REDO_RESET_TAG;export class UndoSystem{_context;_stack=[];_currentIndex=-1;_activeIsUndoable;_canSubject=new t({canUndo:!1,canRedo:!1});can$=this._canSubject;_tipSubject=new t(void 0);tip$=this._tipSubject;constructor(t){this._context=t,this._context.selectors.getStoreSystem().stateSlices.committed.pipe(e()).subscribe(([t,e])=>{if("reset"===e.kind&&e.tag!==UNDO_REDO_RESET_TAG)return void this.resetStack();let i=this._activeIsUndoable?.handler??s;if("reset"===e.kind&&e.tag===UNDO_REDO_RESET_TAG||!i({oldEmission:t,newEmission:e}))return;let r=this._stack[this._currentIndex],n={committedState:r?.committedState??t.state,restoreState:t.state},c={committedState:e.state,restoreState:e.state};this._stack=[...this._stack.slice(0,this._currentIndex),n,c],this._currentIndex=this._stack.length-1,this._refresh()})}initialize=()=>{this.resetStack()};registerIsUndoable(t){let e={handler:t};return this._activeIsUndoable=e,()=>{this._activeIsUndoable===e&&(this._activeIsUndoable=void 0)}}resetStack(){this._stack=[],this._currentIndex=-1,this._refresh()}_refresh(){this._canSubject.next({canUndo:this.canUndo(),canRedo:this.canRedo()}),this._tipSubject.next(this._stack[this._currentIndex])}canUndo(){return this._currentIndex>0}canRedo(){return this._currentIndex<this._stack.length-1}undo(){let t=this._stack[this._currentIndex-1];void 0!==t&&(this._currentIndex--,this._context.selectors.getStoreSystem().reset(t.restoreState,UNDO_REDO_RESET_TAG),this._refresh())}redo(){let t=this._stack[this._currentIndex+1];void 0!==t&&(this._currentIndex++,this._context.selectors.getStoreSystem().reset(t.restoreState,UNDO_REDO_RESET_TAG),this._refresh())}}