@salsita-ai/sdk 0.50.0-develop.6d8967bc99 → 0.50.0-develop.6e9e536d77

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 (1737) hide show
  1. package/README.md +21 -16
  2. package/dist/admin/create-admin-pages-from-spec.d.ts +1 -1
  3. package/dist/admin/default-admin-elements.d.ts +9 -0
  4. package/dist/admin/default-admin-elements.js +1 -0
  5. package/dist/admin/default-elements/built-in-entity-element.d.ts +10 -0
  6. package/dist/admin/default-elements/built-in-entity-element.js +1 -0
  7. package/dist/admin/default-elements/built-in-layout-element.d.ts +10 -0
  8. package/dist/admin/default-elements/built-in-layout-element.js +1 -0
  9. package/dist/admin/default-elements/index.d.ts +2 -0
  10. package/dist/admin/default-elements/index.js +1 -0
  11. package/dist/admin/index.d.ts +1 -0
  12. package/dist/admin/index.js +1 -1
  13. package/dist/application/index.d.ts +1 -0
  14. package/dist/application/index.js +1 -1
  15. package/dist/application/mount-application.d.ts +1 -1
  16. package/dist/application/mount-application.js +1 -1
  17. package/dist/application/mount-configurator.d.ts +19 -0
  18. package/dist/application/mount-configurator.js +1 -0
  19. package/dist/application/mounted-application-runtime.d.ts +4 -0
  20. package/dist/application/mounted-application-runtime.js +1 -0
  21. package/dist/application/register-web-component.d.ts +2 -0
  22. package/dist/application/register-web-component.js +1 -0
  23. package/dist/application-spec/caching/content-diff.js +1 -1
  24. package/dist/application-spec/core/application-file.d.ts +0 -2
  25. package/dist/application-spec/core/application-file.js +1 -1
  26. package/dist/application-spec/core/components/component-filter.d.ts +53 -0
  27. package/dist/application-spec/core/components/component-filter.js +1 -0
  28. package/dist/application-spec/core/components/index.d.ts +2 -0
  29. package/dist/application-spec/core/components/index.js +1 -0
  30. package/dist/application-spec/core/components/sdk-code-ref.d.ts +9 -0
  31. package/dist/application-spec/core/components/sdk-code-ref.js +1 -0
  32. package/dist/application-spec/core/enhanced-json-value.d.ts +0 -68
  33. package/dist/application-spec/core/enhanced-json-value.js +1 -1
  34. package/dist/application-spec/core/expressions/index.d.ts +2 -0
  35. package/dist/application-spec/core/expressions/index.js +1 -0
  36. package/dist/application-spec/core/expressions/relation-expression-params.d.ts +11 -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/enhanced-json/eval-to-constant.d.ts +14 -0
  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 +23 -0
  58. package/dist/application-spec/errors/diagnostic-codes.js +1 -1
  59. package/dist/application-spec/errors/diagnostic-messages.d.ts +27 -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 +22 -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.d.ts +4 -2
  92. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-defaults.js +1 -1
  93. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-domain-block.js +72 -76
  94. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.d.ts +9 -1
  95. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.js +1 -1
  96. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-phx-globals.js +3 -0
  97. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-presets.js +1 -1
  98. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-relation-expressions.js +1 -1
  99. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-resources.d.ts +6 -8
  100. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-resources.js +21 -21
  101. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-states.d.ts +1 -1
  102. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-states.js +2 -2
  103. package/dist/application-spec/generate-application/code/templates/domain-spec/index.d.ts +3 -2
  104. package/dist/application-spec/generate-application/code/templates/domain-spec/index.js +1 -1
  105. package/dist/application-spec/generate-application/code/templates/domain-spec.js +12 -12
  106. package/dist/application-spec/generate-application/code/templates/domain.js +3 -3
  107. package/dist/application-spec/generate-application/code/templates/eslint-config.d.ts +5 -0
  108. package/dist/application-spec/generate-application/code/templates/eslint-config.js +4 -5
  109. package/dist/application-spec/generate-application/code/templates/frontend-config.js +3 -5
  110. package/dist/application-spec/generate-application/code/templates/gitignore.js +0 -3
  111. package/dist/application-spec/generate-application/code/templates/global-definition/generate-action-types.js +7 -7
  112. package/dist/application-spec/generate-application/code/templates/global-definition/generate-assistant-form-element-types.d.ts +12 -0
  113. package/dist/application-spec/generate-application/code/templates/global-definition/generate-assistant-form-element-types.js +7 -0
  114. package/dist/application-spec/generate-application/code/templates/global-definition/generate-phx-types.d.ts +43 -0
  115. package/dist/application-spec/generate-application/code/templates/global-definition/generate-phx-types.js +33 -0
  116. package/dist/application-spec/generate-application/code/templates/global-definition/index.d.ts +2 -0
  117. package/dist/application-spec/generate-application/code/templates/global-definition/index.js +1 -1
  118. package/dist/application-spec/generate-application/code/templates/globals.js +24 -43
  119. package/dist/application-spec/generate-application/code/templates/index.d.ts +5 -16
  120. package/dist/application-spec/generate-application/code/templates/index.js +1 -1
  121. package/dist/application-spec/generate-application/code/templates/lingui-rc.d.ts +5 -0
  122. package/dist/application-spec/generate-application/code/templates/lingui-rc.js +4 -4
  123. package/dist/application-spec/generate-application/code/templates/prettier-config.d.ts +5 -0
  124. package/dist/application-spec/generate-application/code/templates/prettier-config.js +4 -5
  125. package/dist/application-spec/generate-application/code/templates/root-tsconfig.d.ts +6 -0
  126. package/dist/application-spec/generate-application/code/templates/root-tsconfig.js +2 -0
  127. package/dist/application-spec/generate-application/code/templates/skills/phoenix-cli-skill.js +1 -1
  128. package/dist/application-spec/generate-application/code/templates/skills/phoenix-create-configurator-skill.js +66 -42
  129. package/dist/application-spec/generate-application/code/templates/skills/phoenix-feedback-skill.js +5 -5
  130. package/dist/application-spec/generate-application/code/templates/skills/phoenix-review-skill.js +9 -3
  131. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill-bundle.d.ts +10 -0
  132. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill-bundle.js +7 -0
  133. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill.js +1 -1
  134. package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.js +2 -2
  135. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.d.ts +42 -18
  136. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.js +6 -8
  137. package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.d.ts +58 -0
  138. package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.js +1 -0
  139. package/dist/application-spec/generate-application/code/templates/spec-code/index.d.ts +2 -0
  140. package/dist/application-spec/generate-application/code/templates/spec-code/index.js +1 -0
  141. package/dist/application-spec/generate-application/code/templates/spec-code/spec-code.d.ts +18 -0
  142. package/dist/application-spec/generate-application/code/templates/spec-code/spec-code.js +41 -0
  143. package/dist/application-spec/generate-application/code/templates/spec-messages/index.d.ts +1 -0
  144. package/dist/application-spec/generate-application/code/templates/spec-messages/index.js +1 -0
  145. package/dist/application-spec/generate-application/code/templates/spec-messages/spec-messages.d.ts +20 -0
  146. package/dist/application-spec/generate-application/code/templates/spec-messages/spec-messages.js +6 -0
  147. package/dist/application-spec/generate-application/code/templates/story/phx-module.d.ts +8 -2
  148. package/dist/application-spec/generate-application/code/templates/story/phx-module.js +15 -3
  149. package/dist/application-spec/generate-application/code/templates/story/wrapper.d.ts +3 -0
  150. package/dist/application-spec/generate-application/code/templates/story/wrapper.js +2 -1
  151. package/dist/application-spec/generate-application/code/templates/tsconfig.d.ts +5 -0
  152. package/dist/application-spec/generate-application/code/templates/tsconfig.js +1 -1
  153. package/dist/application-spec/generate-application/code/templates/webhook-builders.js +4 -3
  154. package/dist/application-spec/generate-application/code/templates/webhook-index.d.ts +6 -1
  155. package/dist/application-spec/generate-application/code/templates/webhook-index.js +10 -1
  156. package/dist/application-spec/generate-application/code/templates/webhooks-config.js +2 -3
  157. package/dist/application-spec/generate-application/implementations/phx-application-types.d.ts +25 -0
  158. package/dist/application-spec/generate-application/implementations/phx-application-types.js +1 -0
  159. package/dist/application-spec/generate-application/implementations/phx-domain.d.ts +36 -0
  160. package/dist/application-spec/generate-application/implementations/phx-domain.js +1 -0
  161. package/dist/application-spec/generate-application/implementations/phx-model.d.ts +24 -0
  162. package/dist/application-spec/generate-application/implementations/phx-model.js +1 -0
  163. package/dist/application-spec/generate-application/implementations/phx.d.ts +22 -0
  164. package/dist/application-spec/generate-application/implementations/phx.js +1 -0
  165. package/dist/application-spec/generate-application/index.d.ts +4 -0
  166. package/dist/application-spec/generate-application/index.js +1 -1
  167. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.d.ts +6 -4
  168. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.js +1 -1
  169. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.d.ts +12 -4
  170. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.js +1 -1
  171. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-spec-runtime.d.ts +16 -0
  172. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-spec-runtime.js +1 -0
  173. package/dist/application-spec/generate-application/runtime/admin-runtime/states-runtime.d.ts +2 -2
  174. package/dist/application-spec/generate-application/runtime/application-runtime.d.ts +35 -10
  175. package/dist/application-spec/generate-application/runtime/application-runtime.js +1 -1
  176. package/dist/application-spec/generate-application/runtime/application-spec-slice.d.ts +71 -0
  177. package/dist/application-spec/generate-application/runtime/application-spec-slice.js +1 -0
  178. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.d.ts +7 -5
  179. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.js +1 -1
  180. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.d.ts +12 -7
  181. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.js +1 -1
  182. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-spec-runtime.d.ts +16 -0
  183. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-spec-runtime.js +1 -0
  184. package/dist/application-spec/generate-application/runtime/configurator-runtime/states-runtime.d.ts +2 -2
  185. package/dist/application-spec/generate-application/runtime/create-application.d.ts +57 -0
  186. package/dist/application-spec/generate-application/runtime/create-application.js +1 -0
  187. package/dist/application-spec/generate-application/runtime/factory-data/factory-data-runtime.d.ts +43 -0
  188. package/dist/application-spec/generate-application/runtime/factory-data/factory-data-runtime.js +1 -0
  189. package/dist/application-spec/generate-application/runtime/factory-data/index.d.ts +3 -0
  190. package/dist/application-spec/generate-application/runtime/factory-data/index.js +1 -0
  191. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.d.ts +13 -0
  192. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.js +1 -0
  193. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.d.ts +16 -0
  194. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.js +1 -0
  195. package/dist/application-spec/generate-application/runtime/index.d.ts +8 -0
  196. package/dist/application-spec/generate-application/runtime/index.js +1 -0
  197. package/dist/application-spec/generate-application/runtime/migrations/index.d.ts +1 -0
  198. package/dist/application-spec/generate-application/runtime/migrations/index.js +1 -0
  199. package/dist/application-spec/generate-application/runtime/migrations/migration-runtime.d.ts +53 -0
  200. package/dist/application-spec/generate-application/runtime/migrations/migration-runtime.js +1 -0
  201. package/dist/application-spec/generate-application/runtime/sections/assistant-runtime.d.ts +2 -2
  202. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.d.ts +3 -2
  203. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.js +1 -1
  204. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.d.ts +2 -1
  205. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.js +1 -1
  206. package/dist/application-spec/generate-application/runtime/sections/component-optic.d.ts +5 -1
  207. package/dist/application-spec/generate-application/runtime/sections/component-optic.js +1 -1
  208. package/dist/application-spec/generate-application/runtime/sections/data-runtime.d.ts +4 -4
  209. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.d.ts +15 -6
  210. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.js +1 -1
  211. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.d.ts +9 -5
  212. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.js +1 -1
  213. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.d.ts +3 -1
  214. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.js +1 -1
  215. package/dist/application-spec/generate-application/runtime/sections/theme-runtime.d.ts +2 -2
  216. package/dist/application-spec/generate-application/runtime/sections/transformers-runtime.d.ts +4 -6
  217. package/dist/application-spec/generate-application/runtime/spec-code/index.d.ts +2 -0
  218. package/dist/application-spec/generate-application/runtime/spec-code/index.js +1 -0
  219. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.d.ts +18 -0
  220. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.js +1 -0
  221. package/dist/application-spec/generate-application/runtime/spec-code/spec-code-module.d.ts +17 -0
  222. package/dist/application-spec/generate-application/runtime/spec-runtime.d.ts +21 -0
  223. package/dist/application-spec/generate-application/runtime/spec-runtime.js +1 -0
  224. package/dist/application-spec/generate-application/runtime-spec/decode-runtime-spec.d.ts +9 -0
  225. package/dist/application-spec/generate-application/runtime-spec/decode-runtime-spec.js +1 -0
  226. package/dist/application-spec/generate-application/runtime-spec/encode-runtime-spec.d.ts +8 -0
  227. package/dist/application-spec/generate-application/runtime-spec/encode-runtime-spec.js +1 -0
  228. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.d.ts +28 -0
  229. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.js +1 -0
  230. package/dist/application-spec/generate-application/runtime-spec/index.d.ts +5 -0
  231. package/dist/application-spec/generate-application/runtime-spec/index.js +1 -0
  232. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.d.ts +103 -0
  233. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.js +1 -0
  234. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.d.ts +40 -0
  235. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.js +1 -0
  236. package/dist/application-spec/index.d.ts +1 -0
  237. package/dist/application-spec/index.js +1 -1
  238. package/dist/application-spec/parse-application-files/categorize/categorize-files.d.ts +34 -0
  239. package/dist/application-spec/parse-application-files/categorize/categorize-files.js +1 -1
  240. package/dist/application-spec/parse-application-files/categorize/earlier-generated-editor-configs.d.ts +16 -0
  241. package/dist/application-spec/parse-application-files/categorize/earlier-generated-editor-configs.js +9 -0
  242. package/dist/application-spec/parse-application-files/categorize/earlier-generated-tsconfig.d.ts +9 -0
  243. package/dist/application-spec/parse-application-files/categorize/earlier-generated-tsconfig.js +1 -0
  244. package/dist/application-spec/parse-application-files/categorize/module-analysis.d.ts +1 -1
  245. package/dist/application-spec/parse-application-files/categorize/module-analysis.js +1 -1
  246. package/dist/application-spec/parse-application-files/raw-spec/parse-yaml-spec-file.js +1 -1
  247. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.d.ts +47 -4
  248. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.js +1 -1
  249. package/dist/application-spec/parse-application-files/raw-spec/raw-spec-file.js +1 -1
  250. package/dist/application-spec/parse-application-files/spec/application/admin-spec/admin-spec.js +1 -1
  251. package/dist/application-spec/parse-application-files/spec/application/configurator-spec/configurator-spec.js +1 -1
  252. package/dist/application-spec/parse-application-files/spec/common/index.d.ts +1 -0
  253. package/dist/application-spec/parse-application-files/spec/common/index.js +1 -1
  254. package/dist/application-spec/parse-application-files/spec/common/value-type/format-value-type.d.ts +3 -0
  255. package/dist/application-spec/parse-application-files/spec/common/value-type/format-value-type.js +1 -0
  256. package/dist/application-spec/parse-application-files/spec/common/value-type/index.d.ts +5 -0
  257. package/dist/application-spec/parse-application-files/spec/common/value-type/index.js +1 -0
  258. package/dist/application-spec/parse-application-files/spec/common/value-type/intersect-value-types.d.ts +6 -0
  259. package/dist/application-spec/parse-application-files/spec/common/value-type/intersect-value-types.js +1 -0
  260. package/dist/application-spec/parse-application-files/spec/common/value-type/is-assignable-value-type.d.ts +8 -0
  261. package/dist/application-spec/parse-application-files/spec/common/value-type/is-assignable-value-type.js +1 -0
  262. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type-at.d.ts +10 -0
  263. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type-at.js +1 -0
  264. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type.d.ts +98 -0
  265. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type.js +1 -0
  266. package/dist/application-spec/parse-application-files/spec/components/bindings/component-path.d.ts +13 -0
  267. package/dist/application-spec/parse-application-files/spec/components/bindings/component-path.js +1 -0
  268. package/dist/application-spec/parse-application-files/spec/components/bindings/index.d.ts +2 -0
  269. package/dist/application-spec/parse-application-files/spec/components/bindings/index.js +1 -1
  270. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding-type.d.ts +24 -0
  271. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding-type.js +1 -0
  272. package/dist/application-spec/parse-application-files/spec/components/component-entry.d.ts +1 -9
  273. package/dist/application-spec/parse-application-files/spec/components/component-entry.js +1 -1
  274. package/dist/application-spec/parse-application-files/spec/components/component-filter.d.ts +1 -54
  275. package/dist/application-spec/parse-application-files/spec/components/component-filter.js +1 -1
  276. package/dist/application-spec/parse-application-files/spec/components/component-state-type.d.ts +8 -0
  277. package/dist/application-spec/parse-application-files/spec/components/component-state-type.js +1 -0
  278. package/dist/application-spec/parse-application-files/spec/components/filter-criterion-types.d.ts +13 -0
  279. package/dist/application-spec/parse-application-files/spec/components/filter-criterion-types.js +1 -0
  280. package/dist/application-spec/parse-application-files/spec/components/index.d.ts +1 -1
  281. package/dist/application-spec/parse-application-files/spec/components/index.js +1 -1
  282. package/dist/application-spec/parse-application-files/spec/components/static-entity-id.d.ts +14 -0
  283. package/dist/application-spec/parse-application-files/spec/components/static-entity-id.js +1 -0
  284. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.d.ts +6 -0
  285. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.js +1 -1
  286. package/dist/application-spec/parse-application-files/spec/components/user-components.d.ts +7 -4
  287. package/dist/application-spec/parse-application-files/spec/components/user-components.js +1 -1
  288. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.d.ts +24 -0
  289. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.js +1 -0
  290. package/dist/application-spec/parse-application-files/spec/expressions/expression-read.d.ts +13 -0
  291. package/dist/application-spec/parse-application-files/spec/expressions/expression-value-type.d.ts +9 -0
  292. package/dist/application-spec/parse-application-files/spec/expressions/expression-value-type.js +1 -0
  293. package/dist/application-spec/parse-application-files/spec/expressions/expression.d.ts +1 -28
  294. package/dist/application-spec/parse-application-files/spec/expressions/expression.js +1 -1
  295. package/dist/application-spec/parse-application-files/spec/expressions/expressions.d.ts +7 -3
  296. package/dist/application-spec/parse-application-files/spec/expressions/expressions.js +1 -1
  297. package/dist/application-spec/parse-application-files/spec/expressions/index.d.ts +0 -1
  298. package/dist/application-spec/parse-application-files/spec/expressions/index.js +1 -1
  299. package/dist/application-spec/parse-application-files/spec/expressions/memo-eval-plan.js +1 -1
  300. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.d.ts +3 -1
  301. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.js +1 -1
  302. package/dist/application-spec/parse-application-files/spec/invariants/invariants.d.ts +2 -2
  303. package/dist/application-spec/parse-application-files/spec/invariants/invariants.js +1 -1
  304. package/dist/application-spec/parse-application-files/spec/model/defaults.d.ts +7 -2
  305. package/dist/application-spec/parse-application-files/spec/model/defaults.js +1 -1
  306. package/dist/application-spec/parse-application-files/spec/model/index.d.ts +1 -0
  307. package/dist/application-spec/parse-application-files/spec/model/index.js +1 -1
  308. package/dist/application-spec/parse-application-files/spec/model/model-type-resolution.d.ts +10 -0
  309. package/dist/application-spec/parse-application-files/spec/model/model-type-resolution.js +1 -0
  310. package/dist/application-spec/parse-application-files/spec/relations/reference-field-type.d.ts +25 -0
  311. package/dist/application-spec/parse-application-files/spec/relations/reference-field-type.js +1 -0
  312. package/dist/application-spec/parse-application-files/spec/relations/relation-field-mismatch.d.ts +46 -0
  313. package/dist/application-spec/parse-application-files/spec/relations/relation-field-mismatch.js +1 -0
  314. package/dist/application-spec/parse-application-files/spec/relations/relations.d.ts +4 -3
  315. package/dist/application-spec/parse-application-files/spec/relations/relations.js +1 -1
  316. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-form-elements.d.ts +9 -0
  317. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-form-elements.js +1 -0
  318. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.d.ts +4 -1
  319. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.js +1 -1
  320. package/dist/application-spec/parse-application-files/spec/sections/infra.d.ts +2 -0
  321. package/dist/application-spec/parse-application-files/spec/sections/infra.js +1 -1
  322. package/dist/client/authorized-client.d.ts +5 -1
  323. package/dist/client/authorized-client.js +1 -1
  324. package/dist/client/contract.d.ts +51 -0
  325. package/dist/client/contract.js +1 -1
  326. package/dist/client/index.d.ts +2 -2
  327. package/dist/client/index.js +1 -1
  328. package/dist/client/local-authorized-client.d.ts +5 -1
  329. package/dist/client/local-authorized-client.js +1 -1
  330. package/dist/client/memory-authorized-client.d.ts +6 -1
  331. package/dist/client/memory-authorized-client.js +1 -1
  332. package/dist/client/phoenix-api.d.ts +1178 -274
  333. package/dist/configurator/ConfiguratorApp.js +1 -1
  334. package/dist/configurator/app-loader-content/DefaultAppLoaderContent.d.ts +2 -0
  335. package/dist/configurator/app-loader-content/DefaultAppLoaderContent.js +5 -0
  336. package/dist/configurator/app-loader-content/index.d.ts +1 -0
  337. package/dist/configurator/app-loader-content/index.js +1 -0
  338. package/dist/configurator/application-runtime/extensions/create-configurator-extensions.js +1 -1
  339. package/dist/configurator/application-runtime/extensions/selectors.d.ts +3 -1
  340. package/dist/configurator/application-runtime/extensions/selectors.js +1 -1
  341. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.d.ts +143 -5
  342. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.js +1 -1
  343. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.d.ts +40 -7
  344. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.js +1 -1
  345. package/dist/configurator/application-runtime/extensions/systems/camera-control-system/camera-control-system.d.ts +1 -1
  346. package/dist/configurator/application-runtime/extensions/systems/canvas-system.d.ts +8 -0
  347. package/dist/configurator/application-runtime/extensions/systems/canvas-system.js +1 -1
  348. package/dist/configurator/application-runtime/extensions/systems/drag-and-drop-system/drag-and-drop-system.d.ts +3 -3
  349. package/dist/configurator/application-runtime/extensions/systems/export-system/export-busy-error.d.ts +8 -0
  350. package/dist/configurator/application-runtime/extensions/systems/export-system/export-busy-error.js +1 -0
  351. package/dist/configurator/application-runtime/extensions/systems/export-system/export-system.d.ts +23 -1
  352. package/dist/configurator/application-runtime/extensions/systems/export-system/export-system.js +1 -1
  353. package/dist/configurator/application-runtime/extensions/systems/graphql-system/close-unclosed-braces.d.ts +12 -0
  354. package/dist/configurator/application-runtime/extensions/systems/graphql-system/close-unclosed-braces.js +1 -0
  355. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.d.ts +14 -1
  356. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.js +1 -1
  357. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.d.ts +70 -7
  358. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.js +1 -1
  359. package/dist/configurator/application-runtime/extensions/systems/graphql-system/inject-assistant-lenses.d.ts +11 -0
  360. package/dist/configurator/application-runtime/extensions/systems/graphql-system/inject-assistant-lenses.js +1 -0
  361. package/dist/configurator/application-runtime/extensions/systems/image-rendering-system/image-rendering-system.d.ts +14 -5
  362. package/dist/configurator/application-runtime/extensions/systems/image-rendering-system/image-rendering-system.js +1 -1
  363. package/dist/configurator/application-runtime/extensions/systems/index.d.ts +2 -2
  364. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.d.ts +2 -2
  365. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.js +1 -1
  366. package/dist/configurator/common/configurator-interface.d.ts +145 -5
  367. package/dist/configurator/common/configurator-interface.js +1 -1
  368. package/dist/configurator/common/index.d.ts +3 -1
  369. package/dist/configurator/common/index.js +1 -1
  370. package/dist/configurator/common/use-reset-camera.d.ts +6 -0
  371. package/dist/configurator/common/use-reset-camera.js +1 -0
  372. package/dist/configurator/configuration-not-found-page/BuiltInConfigurationNotFoundPage.d.ts +5 -0
  373. package/dist/configurator/configuration-not-found-page/BuiltInConfigurationNotFoundPage.js +1 -0
  374. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.d.ts +6 -0
  375. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.js +1 -0
  376. package/dist/configurator/configuration-not-found-page/index.d.ts +2 -0
  377. package/dist/configurator/configuration-not-found-page/index.js +1 -0
  378. package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.d.ts +12 -0
  379. package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.js +1 -0
  380. package/dist/configurator/configurator-context/PresetSelectionProvider.js +1 -1
  381. package/dist/configurator/configurator-context/PreviewContextProvider.js +1 -1
  382. package/dist/configurator/configurator-context/ViewportStateSync.d.ts +2 -2
  383. package/dist/configurator/configurator-context/ViewportStateSync.js +1 -1
  384. package/dist/configurator/configurator-context/configurator-hooks/layout-hooks.d.ts +11 -1
  385. package/dist/configurator/configurator-context/configurator-routing/ConfiguratorRoutingProvider.js +1 -1
  386. package/dist/configurator/configurator-error-page/BuiltInConfiguratorErrorPage.d.ts +6 -0
  387. package/dist/configurator/configurator-error-page/BuiltInConfiguratorErrorPage.js +1 -0
  388. package/dist/configurator/configurator-error-page/ConfiguratorErrorPageElement.d.ts +7 -0
  389. package/dist/configurator/configurator-error-page/ConfiguratorErrorPageElement.js +1 -0
  390. package/dist/configurator/configurator-error-page/index.d.ts +2 -0
  391. package/dist/configurator/configurator-error-page/index.js +1 -0
  392. package/dist/configurator/index.d.ts +10 -0
  393. package/dist/configurator/index.js +1 -1
  394. package/dist/configurator/pages/ConfiguratorErrorPage.d.ts +0 -1
  395. package/dist/configurator/pages/ConfiguratorErrorPage.js +1 -1
  396. package/dist/configurator/pages/ConfiguratorNotFoundPage.js +1 -1
  397. package/dist/configurator/pages/DefaultConfiguratorLayout.d.ts +7 -0
  398. package/dist/configurator/pages/DefaultConfiguratorLayout.js +1 -0
  399. package/dist/configurator/pages/DefaultNotAuthenticatedPage.d.ts +8 -0
  400. package/dist/configurator/pages/DefaultNotAuthenticatedPage.js +1 -0
  401. package/dist/configurator/pages/DefaultPresetUi.d.ts +7 -0
  402. package/dist/configurator/pages/DefaultPresetUi.js +1 -0
  403. package/dist/configurator/pages/LoadedConfiguratorDetailPage.js +1 -1
  404. package/dist/configurator/pages/NewConfiguratorPage.js +1 -1
  405. package/dist/configurator/pages/PresetCreationErrorPage.d.ts +1 -1
  406. package/dist/configurator/pages/PresetCreationErrorPage.js +1 -1
  407. package/dist/configurator/pages/RootPage.js +1 -1
  408. package/dist/configurator/pages/configurator-layout-name.d.ts +2 -0
  409. package/dist/configurator/pages/configurator-layout-name.js +1 -0
  410. package/dist/configurator/pages/default-configurator-elements.d.ts +13 -0
  411. package/dist/configurator/pages/default-configurator-elements.js +1 -0
  412. package/dist/configurator/pages/default-elements/built-in-entity-element.d.ts +10 -0
  413. package/dist/configurator/pages/default-elements/built-in-entity-element.js +1 -0
  414. package/dist/configurator/pages/default-elements/built-in-layout-element.d.ts +10 -0
  415. package/dist/configurator/pages/default-elements/built-in-layout-element.js +1 -0
  416. package/dist/configurator/pages/default-elements/domain-control-elements.d.ts +6 -0
  417. package/dist/configurator/pages/default-elements/domain-control-elements.js +1 -0
  418. package/dist/configurator/pages/default-elements/index.d.ts +5 -0
  419. package/dist/configurator/pages/default-elements/index.js +1 -0
  420. package/dist/configurator/pages/default-elements/recipe-panel-elements.d.ts +3 -0
  421. package/dist/configurator/pages/default-elements/recipe-panel-elements.js +1 -0
  422. package/dist/configurator/pages/default-elements/scene-controls/BuiltInAddEntityFab.d.ts +3 -0
  423. package/dist/configurator/pages/default-elements/scene-controls/BuiltInAddEntityFab.js +1 -0
  424. package/dist/configurator/pages/default-elements/scene-controls/BuiltInDeleteEntityFab.d.ts +3 -0
  425. package/dist/configurator/pages/default-elements/scene-controls/BuiltInDeleteEntityFab.js +1 -0
  426. package/dist/configurator/pages/default-elements/scene-controls/BuiltInNavigationHotspot.d.ts +3 -0
  427. package/dist/configurator/pages/default-elements/scene-controls/BuiltInNavigationHotspot.js +1 -0
  428. package/dist/configurator/pages/default-elements/scene-controls/BuiltInSelectionHotspot.d.ts +3 -0
  429. package/dist/configurator/pages/default-elements/scene-controls/BuiltInSelectionHotspot.js +1 -0
  430. package/dist/configurator/pages/default-elements/scene-controls/BuiltInToolMenuFab.d.ts +3 -0
  431. package/dist/configurator/pages/default-elements/scene-controls/BuiltInToolMenuFab.js +1 -0
  432. package/dist/configurator/pages/default-elements/scene-controls/index.d.ts +6 -0
  433. package/dist/configurator/pages/default-elements/scene-controls/index.js +1 -0
  434. package/dist/configurator/pages/default-elements/scene-controls/scene-control-elements.d.ts +6 -0
  435. package/dist/configurator/pages/default-elements/scene-controls/scene-control-elements.js +1 -0
  436. package/dist/configurator/pages/default-elements/sidebar-footer-elements.d.ts +7 -0
  437. package/dist/configurator/pages/default-elements/sidebar-footer-elements.js +1 -0
  438. package/dist/configurator/pages/default-elements/toolbar-elements.d.ts +7 -0
  439. package/dist/configurator/pages/default-elements/toolbar-elements.js +1 -0
  440. package/dist/configurator/pages/error-boundaries/GeneralErrorBoundary.js +1 -1
  441. package/dist/configurator/pages/error-boundaries/LoadingErrorBoundary.js +1 -1
  442. package/dist/configurator/pages/index.d.ts +1 -0
  443. package/dist/configurator/pages/index.js +1 -1
  444. package/dist/configurator/preset-screen-elements/PresetDeviceNotSupportedElement.d.ts +4 -0
  445. package/dist/configurator/preset-screen-elements/PresetDeviceNotSupportedElement.js +1 -0
  446. package/dist/configurator/preset-screen-elements/PresetPageActionElement.d.ts +4 -0
  447. package/dist/configurator/preset-screen-elements/PresetPageActionElement.js +1 -0
  448. package/dist/configurator/preset-screen-elements/index.d.ts +2 -0
  449. package/dist/configurator/preset-screen-elements/index.js +1 -0
  450. package/dist/configurator/scene/index.d.ts +1 -0
  451. package/dist/configurator/scene/index.js +1 -1
  452. package/dist/configurator/scene/scene-controls/DeleteEntityFab.js +1 -1
  453. package/dist/configurator/scene/scene-controls/SelectionHotspot.js +1 -1
  454. package/dist/configurator/scene/scene-controls/ToolFab.d.ts +4 -0
  455. package/dist/configurator/scene/scene-controls/ToolFab.js +1 -1
  456. package/dist/configurator/scene/scene-controls/hotspot-drag-handle/HotspotDragHandle.d.ts +1 -1
  457. package/dist/configurator/scene/scene-controls/hotspot-drag-handle/HotspotDragSceneHandle.d.ts +1 -1
  458. package/dist/configurator/scene/scene-controls/use-scene-control-tooltip.d.ts +2 -1
  459. package/dist/configurator/scene/scene-entity/dimension-indicators/DimensionIndicator.d.ts +1 -1
  460. package/dist/configurator/scene/scene-entity/dimension-indicators/DimensionIndicatorInternal.d.ts +1 -1
  461. package/dist/configurator/scene/scene-entity/drag-and-drop/shared.d.ts +2 -2
  462. package/dist/configurator/scene/scene-entity/drag-and-drop/use-drag-object.d.ts +1 -1
  463. package/dist/configurator/scene/scene-entity/materials/RemoteReplacedMaterial.js +1 -1
  464. package/dist/configurator/scene/scene-entity/objects/SceneEntityObjectTextDecal.d.ts +1 -1
  465. package/dist/configurator/scene/scene-entity/scene-controls/SceneEntityHtmlHotspots.js +1 -1
  466. package/dist/configurator/toolbar-actions/index.d.ts +3 -0
  467. package/dist/configurator/toolbar-actions/index.js +1 -0
  468. package/dist/configurator/toolbar-actions/use-assistant-panel.d.ts +18 -0
  469. package/dist/configurator/toolbar-actions/use-assistant-panel.js +1 -0
  470. package/dist/configurator/toolbar-actions/use-measurements.d.ts +35 -0
  471. package/dist/configurator/toolbar-actions/use-measurements.js +1 -0
  472. package/dist/configurator/toolbar-actions/use-toolbar-actions.d.ts +100 -0
  473. package/dist/configurator/toolbar-actions/use-toolbar-actions.js +1 -0
  474. package/dist/configurator/toolbar-actions/use-toolbar-help.d.ts +7 -0
  475. package/dist/configurator/toolbar-actions/use-toolbar-help.js +1 -0
  476. package/dist/configurator/ui/assistant/AssistantChips.d.ts +10 -3
  477. package/dist/configurator/ui/assistant/AssistantChips.js +1 -1
  478. package/dist/configurator/ui/assistant/AssistantComposer.d.ts +2 -1
  479. package/dist/configurator/ui/assistant/AssistantComposer.js +1 -1
  480. package/dist/configurator/ui/assistant/AssistantMarkdown.d.ts +7 -2
  481. package/dist/configurator/ui/assistant/AssistantMarkdown.js +1 -1
  482. package/dist/configurator/ui/assistant/AssistantPanel.js +1 -1
  483. package/dist/configurator/ui/assistant/AssistantThread.d.ts +6 -2
  484. package/dist/configurator/ui/assistant/AssistantThread.js +1 -1
  485. package/dist/configurator/ui/assistant/alert/AssistantAlert.d.ts +8 -0
  486. package/dist/configurator/ui/assistant/alert/AssistantAlert.js +1 -0
  487. package/dist/configurator/ui/assistant/alert/index.d.ts +2 -0
  488. package/dist/configurator/ui/assistant/alert/index.js +1 -0
  489. package/dist/configurator/ui/assistant/alert/remark-alerts.d.ts +10 -0
  490. package/dist/configurator/ui/assistant/alert/remark-alerts.js +1 -0
  491. package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.d.ts +13 -0
  492. package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.js +1 -0
  493. package/dist/configurator/ui/assistant/entity-link/entity-link-selection.d.ts +22 -0
  494. package/dist/configurator/ui/assistant/entity-link/entity-link-selection.js +1 -0
  495. package/dist/configurator/ui/assistant/entity-link/entity-link-state.d.ts +27 -0
  496. package/dist/configurator/ui/assistant/entity-link/entity-link-state.js +1 -0
  497. package/dist/configurator/ui/assistant/entity-link/index.d.ts +2 -0
  498. package/dist/configurator/ui/assistant/entity-link/index.js +1 -0
  499. package/dist/configurator/ui/assistant/form/AssistantForm.d.ts +19 -0
  500. package/dist/configurator/ui/assistant/form/AssistantForm.js +1 -0
  501. package/dist/configurator/ui/assistant/form/compose-answer.d.ts +11 -0
  502. package/dist/configurator/ui/assistant/form/compose-answer.js +1 -0
  503. package/dist/configurator/ui/assistant/form/describe-build-errors.d.ts +6 -0
  504. package/dist/configurator/ui/assistant/form/describe-build-errors.js +1 -0
  505. package/dist/configurator/ui/assistant/form/form-model.d.ts +37 -0
  506. package/dist/configurator/ui/assistant/form/form-model.js +1 -0
  507. package/dist/configurator/ui/assistant/form/form-state.d.ts +4 -0
  508. package/dist/configurator/ui/assistant/form/form-state.js +1 -0
  509. package/dist/configurator/ui/assistant/form/index.d.ts +4 -0
  510. package/dist/configurator/ui/assistant/form/index.js +1 -0
  511. package/dist/configurator/ui/assistant/form/parse-form-block.d.ts +10 -0
  512. package/dist/configurator/ui/assistant/form/parse-form-block.js +1 -0
  513. package/dist/configurator/ui/assistant/form/read-form-attributes.d.ts +13 -0
  514. package/dist/configurator/ui/assistant/form/read-form-attributes.js +1 -0
  515. package/dist/configurator/ui/assistant/form/registry/built-in-form-elements.d.ts +3 -0
  516. package/dist/configurator/ui/assistant/form/registry/built-in-form-elements.js +1 -0
  517. package/dist/configurator/ui/assistant/form/registry/create-assistant-form-element.d.ts +31 -0
  518. package/dist/configurator/ui/assistant/form/registry/create-assistant-form-element.js +1 -0
  519. package/dist/configurator/ui/assistant/form/registry/form-element-definition.d.ts +16 -0
  520. package/dist/configurator/ui/assistant/form/registry/form-element-definition.js +1 -0
  521. package/dist/configurator/ui/assistant/form/registry/form-registry.d.ts +31 -0
  522. package/dist/configurator/ui/assistant/form/registry/form-registry.js +1 -0
  523. package/dist/configurator/ui/assistant/form/registry/index.d.ts +6 -0
  524. package/dist/configurator/ui/assistant/form/registry/index.js +1 -0
  525. package/dist/configurator/ui/assistant/form/registry/use-form-registry.d.ts +8 -0
  526. package/dist/configurator/ui/assistant/form/registry/use-form-registry.js +1 -0
  527. package/dist/configurator/ui/assistant/form-elements/FormCard.d.ts +9 -0
  528. package/dist/configurator/ui/assistant/form-elements/FormCard.js +1 -0
  529. package/dist/configurator/ui/assistant/form-elements/FormConfirm.d.ts +9 -0
  530. package/dist/configurator/ui/assistant/form-elements/FormConfirm.js +1 -0
  531. package/dist/configurator/ui/assistant/form-elements/FormGroup.d.ts +6 -0
  532. package/dist/configurator/ui/assistant/form-elements/FormGroup.js +1 -0
  533. package/dist/configurator/ui/assistant/form-elements/FormNumber.d.ts +9 -0
  534. package/dist/configurator/ui/assistant/form-elements/FormNumber.js +1 -0
  535. package/dist/configurator/ui/assistant/form-elements/FormOptions.d.ts +6 -0
  536. package/dist/configurator/ui/assistant/form-elements/FormOptions.js +1 -0
  537. package/dist/configurator/ui/assistant/form-elements/FormReply.d.ts +6 -0
  538. package/dist/configurator/ui/assistant/form-elements/FormReply.js +1 -0
  539. package/dist/configurator/ui/assistant/form-elements/FormSwatch.d.ts +10 -0
  540. package/dist/configurator/ui/assistant/form-elements/FormSwatch.js +1 -0
  541. package/dist/configurator/ui/assistant/form-elements/FormText.d.ts +6 -0
  542. package/dist/configurator/ui/assistant/form-elements/FormText.js +1 -0
  543. package/dist/configurator/ui/assistant/form-elements/clamp-form-number.d.ts +10 -0
  544. package/dist/configurator/ui/assistant/form-elements/clamp-form-number.js +1 -0
  545. package/dist/configurator/ui/assistant/form-elements/form-element-props.d.ts +38 -0
  546. package/dist/configurator/ui/assistant/form-elements/form-element-props.js +1 -0
  547. package/dist/configurator/ui/assistant/form-elements/index.d.ts +9 -0
  548. package/dist/configurator/ui/assistant/form-elements/index.js +1 -0
  549. package/dist/configurator/ui/assistant/index.d.ts +3 -0
  550. package/dist/configurator/ui/assistant/index.js +1 -1
  551. package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.d.ts +16 -0
  552. package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.js +1 -0
  553. package/dist/configurator/ui/assistant/reference-link/assistant-link-target.d.ts +34 -0
  554. package/dist/configurator/ui/assistant/reference-link/assistant-link-target.js +1 -0
  555. package/dist/configurator/ui/assistant/reference-link/assistant-reference-details.d.ts +25 -0
  556. package/dist/configurator/ui/assistant/reference-link/assistant-reference-details.js +1 -0
  557. package/dist/configurator/ui/assistant/reference-link/index.d.ts +3 -0
  558. package/dist/configurator/ui/assistant/reference-link/index.js +1 -0
  559. package/dist/configurator/ui/assistant/reference-link/reference-styles.d.ts +12 -0
  560. package/dist/configurator/ui/assistant/reference-link/reference-styles.js +1 -0
  561. package/dist/configurator/ui/assistant/reference-link/use-assistant-reference-details.d.ts +8 -0
  562. package/dist/configurator/ui/assistant/reference-link/use-assistant-reference-details.js +1 -0
  563. package/dist/configurator/ui/assistant/resource-image/AssistantImage.d.ts +9 -0
  564. package/dist/configurator/ui/assistant/resource-image/AssistantImage.js +1 -0
  565. package/dist/configurator/ui/assistant/resource-image/index.d.ts +3 -0
  566. package/dist/configurator/ui/assistant/resource-image/index.js +1 -0
  567. package/dist/configurator/ui/assistant/resource-image/resource-path.d.ts +2 -0
  568. package/dist/configurator/ui/assistant/resource-image/resource-path.js +1 -0
  569. package/dist/configurator/ui/assistant/resource-image/use-resource-image-url.d.ts +5 -0
  570. package/dist/configurator/ui/assistant/resource-image/use-resource-image-url.js +1 -0
  571. package/dist/configurator/ui/assistant/screenshots/ScreenshotThumbnails.d.ts +9 -0
  572. package/dist/configurator/ui/assistant/screenshots/ScreenshotThumbnails.js +1 -0
  573. package/dist/configurator/ui/assistant/screenshots/index.d.ts +2 -0
  574. package/dist/configurator/ui/assistant/screenshots/index.js +1 -0
  575. package/dist/configurator/ui/assistant/screenshots/tool-screenshots.d.ts +22 -0
  576. package/dist/configurator/ui/assistant/screenshots/tool-screenshots.js +1 -0
  577. package/dist/configurator/ui/assistant/screenshots/use-screenshot-src.d.ts +8 -0
  578. package/dist/configurator/ui/assistant/screenshots/use-screenshot-src.js +1 -0
  579. package/dist/configurator/ui/assistant/streamed-markdown.d.ts +4 -2
  580. package/dist/configurator/ui/assistant/streamed-markdown.js +2 -2
  581. package/dist/configurator/ui/assistant/thread-items.d.ts +21 -3
  582. package/dist/configurator/ui/assistant/thread-items.js +1 -1
  583. package/dist/configurator/ui/assistant/tool-chip.js +1 -1
  584. package/dist/configurator/ui/assistant/use-follow-stream.js +1 -1
  585. package/dist/configurator/ui/configurator-layout/sidebar-keys/index.d.ts +1 -0
  586. package/dist/configurator/ui/configurator-layout/sidebar-keys/index.js +1 -0
  587. package/dist/configurator/ui/configurator-layout/sidebar-keys/sidebar-keys.d.ts +11 -0
  588. package/dist/configurator/ui/configurator-layout/sidebar-keys/sidebar-keys.js +1 -0
  589. package/dist/configurator/ui/configurator-layout/slots/canvas/LayoutCanvas.js +1 -1
  590. package/dist/configurator/ui/configurator-layout/slots/canvas/SharedCanvas.js +1 -1
  591. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/DesktopSidebar.d.ts +101 -0
  592. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/DesktopSidebar.js +16 -0
  593. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/index.d.ts +1 -0
  594. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/index.js +1 -0
  595. package/dist/configurator/ui/configurator-layout/slots/mobile-tabs/use-mobile-tabs.d.ts +1 -1
  596. package/dist/configurator/ui/configurator-layout/slots/mobile-tabs/use-mobile-tabs.js +1 -1
  597. package/dist/configurator/ui/configurator-layout/slots/services/InvariantViolations.d.ts +4 -4
  598. package/dist/configurator/ui/configurator-layout/slots/services/InvariantViolations.js +1 -1
  599. package/dist/configurator/ui/configurator-layout/slots/services/Services.js +1 -1
  600. package/dist/configurator/ui/configurator-layout/slots/services/SideEffects.d.ts +3 -6
  601. package/dist/configurator/ui/configurator-layout/slots/services/SideEffects.js +1 -1
  602. package/dist/configurator/ui/configurator-layout/slots/sidebar-tabs/use-sidebar-tabs.d.ts +1 -1
  603. package/dist/configurator/ui/configurator-layout/slots/sidebar-tabs/use-sidebar-tabs.js +1 -1
  604. package/dist/configurator/ui/configurator-layout/slots/slots.d.ts +1 -0
  605. package/dist/configurator/ui/configurator-layout/slots/slots.js +1 -1
  606. package/dist/configurator/ui/configurator-layout/universal/DesktopLayout.d.ts +0 -74
  607. package/dist/configurator/ui/configurator-layout/universal/DesktopLayout.js +5 -20
  608. package/dist/configurator/ui/configurator-layout/universal/DesktopPreview.js +1 -1
  609. package/dist/configurator/ui/configurator-layout/universal/ExportingOverlay.d.ts +5 -0
  610. package/dist/configurator/ui/configurator-layout/universal/ExportingOverlay.js +1 -0
  611. package/dist/configurator/ui/configurator-layout/universal/Layout.js +1 -1
  612. package/dist/configurator/ui/configurator-layout/universal/MobileLayout.js +4 -4
  613. package/dist/configurator/ui/configurator-layout/universal/MobilePreview.js +1 -1
  614. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.d.ts +47 -0
  615. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.js +1 -0
  616. package/dist/configurator/ui/configurator-layout/universal/use-scene-safe-area.d.ts +11 -26
  617. package/dist/configurator/ui/configurator-layout/universal/use-scene-safe-area.js +1 -1
  618. package/dist/configurator/ui/index.d.ts +1 -0
  619. package/dist/configurator/ui/index.js +1 -1
  620. package/dist/configurator/ui/legacy/layout/common/CommonFinalizeButton.js +1 -1
  621. package/dist/configurator/ui/legacy/layout/common/CommonSummaryButton.js +1 -1
  622. package/dist/configurator/ui/legacy/layout/common/CommonTopNavigation.js +1 -1
  623. package/dist/configurator/ui/legacy/layout/common/ReactiveInterfaceLayout.js +1 -1
  624. package/dist/configurator/ui/legacy/layout/common/ResponsiveFinalizeButton.js +1 -1
  625. package/dist/configurator/ui/legacy/layout/common/SummaryReadLayout.js +1 -1
  626. package/dist/configurator/ui/legacy/layout/simple/SimpleOwnerLayout.js +1 -1
  627. package/dist/configurator/ui/legacy/layout/simple/SimpleTopNavigation.js +1 -1
  628. package/dist/configurator/ui/legacy/layout/steps/StepsNavigation.d.ts +2 -2
  629. package/dist/configurator/ui/legacy/layout/steps/StepsNavigation.js +1 -1
  630. package/dist/configurator/ui/legacy/layout/steps/StepsOwnerLayout.js +1 -1
  631. package/dist/configurator/ui/legacy/layout/steps/StepsSidebarFooter.js +1 -1
  632. package/dist/configurator/ui/legacy/layout/tabs/TabsOwnerLayout.js +1 -1
  633. package/dist/configurator/ui/legacy/toolbar/common/DimensionUnitSelector.js +1 -1
  634. package/dist/configurator/ui/legacy/toolbar/common/MeasurementsIndicatorsSwitch.js +1 -1
  635. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/FullscreenToolbarAction.js +1 -1
  636. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/HelpToolbarAction.js +1 -1
  637. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/MeasurementsToolbarAction.js +1 -1
  638. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/UndoRedoToolbarGroup.js +1 -1
  639. package/dist/configurator/ui/phoenix-layout-elements/AppLoader.d.ts +0 -7
  640. package/dist/configurator/ui/phoenix-layout-elements/AppLoader.js +2 -6
  641. package/dist/configurator/ui/phoenix-layout-elements/AssistantToolbarButton.js +1 -1
  642. package/dist/configurator/ui/phoenix-layout-elements/EnterFullscreenToolbarButton.js +1 -1
  643. package/dist/configurator/ui/phoenix-layout-elements/ExitFullscreenToolbarButton.js +1 -1
  644. package/dist/configurator/ui/phoenix-layout-elements/HelpToolbarButton.js +1 -1
  645. package/dist/configurator/ui/phoenix-layout-elements/LanguageMenuAction.js +1 -1
  646. package/dist/configurator/ui/phoenix-layout-elements/LanguageToolbarButton.js +1 -1
  647. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomOwnerUi.d.ts +1 -0
  648. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomOwnerUi.js +1 -1
  649. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomReadUi.d.ts +1 -0
  650. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomReadUi.js +1 -1
  651. package/dist/configurator/ui/phoenix-layout-elements/MeasurementsMenuAction.js +1 -1
  652. package/dist/configurator/ui/phoenix-layout-elements/MeasurementsToolbarButton.js +1 -1
  653. package/dist/configurator/ui/phoenix-layout-elements/RedoToolbarButton.js +1 -1
  654. package/dist/configurator/ui/phoenix-layout-elements/ShareToolbarButton.js +1 -1
  655. package/dist/configurator/ui/phoenix-layout-elements/UndoToolbarButton.js +1 -1
  656. package/dist/configurator/ui/phoenix-layout-elements/header/common/back-button/use-go-back-action.js +1 -1
  657. package/dist/configurator/ui/phoenix-layout-elements/header/common/horizontal-tabs/DesktopHorizontalTabs.js +1 -1
  658. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/DesktopNavigationSteps.d.ts +1 -1
  659. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/DesktopNavigationSteps.js +1 -1
  660. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.d.ts +2 -8
  661. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.js +1 -1
  662. package/dist/configurator/ui/phoenix-layout-elements/index.d.ts +8 -1
  663. package/dist/configurator/ui/phoenix-layout-elements/index.js +1 -1
  664. package/dist/configurator/ui/phoenix-layout-elements/measurements/DimensionUnitSelector.js +1 -1
  665. package/dist/configurator/ui/phoenix-layout-elements/measurements/MeasurementsIndicatorsSwitch.js +1 -1
  666. package/dist/configurator/ui/phoenix-layout-elements/share/ShareModal.js +1 -1
  667. package/dist/configurator/ui/phoenix-layout-elements/share/use-share.d.ts +7 -8
  668. package/dist/configurator/ui/phoenix-layout-elements/share/use-share.js +1 -1
  669. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/basic/BasicFinalizeButton.js +1 -1
  670. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/CustomFinalizeButton.js +1 -1
  671. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/EnterSummaryButton.js +1 -1
  672. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/FinalizeActions.js +1 -1
  673. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/NextStepButton.js +1 -1
  674. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/PreviousStepButton.js +1 -1
  675. package/dist/configurator/ui/preset-layout/CategoryPresetUi.js +1 -1
  676. package/dist/configurator/ui/preset-layout/PresetUi.d.ts +4 -2
  677. package/dist/configurator/ui/preset-layout/PresetUi.js +1 -1
  678. package/dist/configurator/ui/preset-layout/index.d.ts +6 -1
  679. package/dist/configurator/ui/preset-layout/index.js +1 -1
  680. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.d.ts +10 -0
  681. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.js +1 -0
  682. package/dist/configurator/ui/save-message-snackbars/index.d.ts +1 -0
  683. package/dist/configurator/ui/save-message-snackbars/index.js +1 -0
  684. package/dist/docs/complex-use-cases/filtered-controls-with-fix-dialog.mdx +16 -19
  685. package/dist/docs/complex-use-cases/focus-mode.mdx +2 -0
  686. package/dist/docs/complex-use-cases/sketching.mdx +0 -38
  687. package/dist/docs/controls/select-attribute/cardselect.mdx +9 -13
  688. package/dist/docs/controls/select-child-entity/cardselect.mdx +1 -0
  689. package/dist/docs/dimensions/3d-scene-integration/dimension-indicators.mdx +2 -2
  690. package/dist/docs/dimensions/3d-scene-integration/editable-angle-indicator.mdx +1 -1
  691. package/dist/docs/dimensions/3d-scene-integration/editable-distance-dimension-indicator.mdx +1 -1
  692. package/dist/docs/dimensions/3d-scene-integration/list-selector-dimension-indicator.mdx +1 -1
  693. package/dist/docs/drag-and-drop/drag-handle.mdx +1 -1
  694. package/dist/docs/drag-and-drop/hotspot-handle.mdx +1 -1
  695. package/dist/docs/drag-and-drop/planes.mdx +1 -1
  696. package/dist/docs/drag-and-drop/rotatable.mdx +2 -2
  697. package/dist/docs/fabs/basic.mdx +6 -2
  698. package/dist/docs/index.json +136 -1
  699. package/dist/docs/integrations/webcomponent-api/basics.mdx +2 -0
  700. package/dist/docs/integrations/woocommerce/local-development.mdx +1 -1
  701. package/dist/docs/layouts/custom-layout.mdx +2597 -0
  702. package/dist/docs/layouts/gallery/ardent-compressor.mdx +3516 -0
  703. package/dist/docs/layouts/gallery/corvid-drone.mdx +3428 -0
  704. package/dist/docs/layouts/gallery/fenwick-window.mdx +2803 -0
  705. package/dist/docs/layouts/gallery/ferrule-bar-station.mdx +6567 -0
  706. package/dist/docs/layouts/gallery/kestrel-kettle.mdx +1858 -0
  707. package/dist/docs/layouts/gallery/nightjar-guitar.mdx +3698 -0
  708. package/dist/docs/layouts/gallery/sunfold-solar.mdx +2683 -0
  709. package/dist/docs/layouts/gallery/tidepool-aquascape.mdx +5203 -0
  710. package/dist/docs/layouts/header/fixed.mdx +2 -2
  711. package/dist/docs/layouts/header/floating.mdx +2 -2
  712. package/dist/docs/layouts/sidebar/in-a-custom-layout.mdx +380 -0
  713. package/dist/docs/layouts/sidebar-footer/basic.mdx +32 -77
  714. package/dist/docs/other-features/client-side-rendering/declarative.mdx +2 -2
  715. package/dist/docs/other-features/error-5xx.mdx +1 -1
  716. package/dist/docs/other-features/navigation-hotspot.mdx +2 -0
  717. package/dist/docs/other-features/not-found-404.mdx +1 -1
  718. package/dist/docs/other-features/side-effects.mdx +8 -11
  719. package/dist/docs/other-features/transformers.mdx +4 -0
  720. package/dist/docs/other-features/violation-messages.mdx +52 -56
  721. package/dist/docs/phoenix/application-states.mdx +9 -7
  722. package/dist/docs/phoenix/clerk-sign-in.mdx +1 -1
  723. package/dist/docs/phoenix/components.mdx +6 -0
  724. package/dist/docs/phoenix/configurator-interface.mdx +402 -81
  725. package/dist/docs/phoenix/deployments.mdx +3 -7
  726. package/dist/docs/phoenix/domain-model.mdx +10 -1
  727. package/dist/docs/phoenix/expression-context.mdx +11 -3
  728. package/dist/docs/phoenix/finalization.mdx +1 -1
  729. package/dist/docs/phoenix/getting-started.mdx +7 -4
  730. package/dist/docs/phoenix/layout-slots.mdx +116 -0
  731. package/dist/docs/phoenix/localization.mdx +10 -6
  732. package/dist/docs/phoenix/migration-guide.mdx +24 -11
  733. package/dist/docs/phoenix/phoenix-cli.mdx +123 -68
  734. package/dist/docs/phoenix/project-structure.mdx +85 -37
  735. package/dist/docs/phoenix/quickstart.mdx +9 -9
  736. package/dist/docs/phoenix/sdk-builder-workflow.mdx +21 -19
  737. package/dist/docs/phoenix/sessions-and-access.mdx +2 -0
  738. package/dist/docs/phoenix/testing.mdx +148 -0
  739. package/dist/docs/phoenix/webhook-membership.mdx +10 -9
  740. package/dist/docs/phoenix/webhooks.mdx +23 -6
  741. package/dist/docs/selection-and-highlight/hotspots.mdx +2 -0
  742. package/dist/docs/ux-guidelines/choosing-a-control.mdx +11 -0
  743. package/dist/domain/admin-domain/implementation/common-admin-expressions.d.ts +26 -11
  744. package/dist/domain/admin-domain/implementation/common-admin-publish.d.ts +1 -2
  745. package/dist/domain/admin-domain/index.d.ts +8 -3
  746. package/dist/domain/admin-domain/index.js +1 -1
  747. package/dist/domain/application/GetApplicationWrapperHandler.d.ts +2 -2
  748. package/dist/domain/application/GetThemeHandler.d.ts +1 -1
  749. package/dist/domain/application/GetWebComponentOptions.d.ts +1 -1
  750. package/dist/domain/application/admin-page-factories.d.ts +1 -2
  751. package/dist/domain/application/application-config.d.ts +9 -26
  752. package/dist/domain/application/assistant/assistant-fields.d.ts +12 -0
  753. package/dist/domain/application/assistant/assistant-fields.js +1 -0
  754. package/dist/domain/application/assistant/assistant-manifest.d.ts +27 -2
  755. package/dist/domain/application/assistant/assistant-resolved-manifest.d.ts +46 -3
  756. package/dist/domain/application/assistant/assistant-resolved-manifest.js +1 -1
  757. package/dist/domain/application/assistant/assistant-value-type.js +1 -1
  758. package/dist/domain/application/assistant/build-assistant-lenses.d.ts +14 -0
  759. package/dist/domain/application/assistant/build-assistant-lenses.js +5 -0
  760. package/dist/domain/application/assistant/build-assistant-manifest.js +1 -1
  761. package/dist/domain/application/assistant/create-assistant-execution-schema.d.ts +32 -0
  762. package/dist/domain/application/assistant/create-assistant-execution-schema.js +1 -0
  763. package/dist/domain/application/assistant/form/assistant-form-element-name.d.ts +11 -0
  764. package/dist/domain/application/assistant/form/assistant-form-element-name.js +8 -0
  765. package/dist/domain/application/assistant/form/assistant-form-elements.d.ts +174 -0
  766. package/dist/domain/application/assistant/form/assistant-form-elements.js +1 -0
  767. package/dist/domain/application/assistant/form/assistant-resource-path.d.ts +10 -0
  768. package/dist/domain/application/assistant/form/assistant-resource-path.js +1 -0
  769. package/dist/domain/application/assistant/form/index.d.ts +4 -0
  770. package/dist/domain/application/assistant/form/index.js +1 -0
  771. package/dist/domain/application/assistant/generate-assistant-prompt.d.ts +4 -11
  772. package/dist/domain/application/assistant/generate-assistant-prompt.js +1 -1
  773. package/dist/domain/application/assistant/index.d.ts +8 -2
  774. package/dist/domain/application/assistant/index.js +1 -1
  775. package/dist/domain/application/assistant/session-setup/AssistantSetupHandler.d.ts +20 -0
  776. package/dist/domain/application/assistant/session-setup/AssistantSetupHandler.js +1 -0
  777. package/dist/domain/application/assistant/session-setup/apply-assistant-setup.d.ts +10 -0
  778. package/dist/domain/application/assistant/session-setup/apply-assistant-setup.js +1 -0
  779. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.d.ts +50 -0
  780. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.js +1 -0
  781. package/dist/domain/application/assistant/session-setup/create-session-assistant.d.ts +15 -0
  782. package/dist/domain/application/assistant/session-setup/create-session-assistant.js +1 -0
  783. package/dist/domain/application/assistant/session-setup/index.d.ts +4 -0
  784. package/dist/domain/application/assistant/session-setup/index.js +1 -0
  785. package/dist/domain/application/assistant-mutations.d.ts +2 -1
  786. package/dist/domain/application/assistant-mutations.js +1 -1
  787. package/dist/domain/application/assistant-recipe-groups.d.ts +4 -2
  788. package/dist/domain/application/configurator-builder.d.ts +11 -2
  789. package/dist/domain/application/configurator-builder.js +1 -1
  790. package/dist/domain/application/create-initial-published-data.d.ts +6 -7
  791. package/dist/domain/application/index.d.ts +3 -7
  792. package/dist/domain/application/index.js +1 -1
  793. package/dist/domain/application/published-data/DataRowValidatorHandler.d.ts +1 -1
  794. package/dist/domain/application/published-data/FilterPublishedChunksHandler.d.ts +1 -1
  795. package/dist/domain/application/published-data/MapPublishedChunkedDataHandler.d.ts +1 -1
  796. package/dist/domain/application/published-data/MapPublishedRevisionDataHandler.d.ts +1 -1
  797. package/dist/domain/application/published-data/SheetValidatorHandler.d.ts +1 -1
  798. package/dist/domain/application/published-data/build-legend-data.d.ts +1 -1
  799. package/dist/domain/application/published-data/format-field-type.d.ts +1 -1
  800. package/dist/domain/application/published-data/map-data-to-sheet.d.ts +1 -1
  801. package/dist/domain/application/published-data/map-published-chunked-data.d.ts +3 -3
  802. package/dist/domain/application/published-data/map-published-data.d.ts +7 -3
  803. package/dist/domain/application/published-data/validate-sheet-data.d.ts +1 -1
  804. package/dist/domain/application/standard-properties.js +1 -1
  805. package/dist/domain/application/web-component-property.d.ts +3 -1
  806. package/dist/domain/application/web-component-property.js +1 -1
  807. package/dist/domain/available-system-components.d.ts +1 -1
  808. package/dist/domain/available-system-components.js +1 -1
  809. package/dist/domain/core/action/action-factory.d.ts +11 -0
  810. package/dist/domain/core/action/action.d.ts +71 -0
  811. package/dist/domain/core/action/action.js +1 -0
  812. package/dist/domain/core/action/index.d.ts +2 -0
  813. package/dist/domain/core/action/index.js +1 -0
  814. package/dist/domain/core/component/domain-component-optic.d.ts +29 -40
  815. package/dist/domain/core/component/domain-component-optic.js +2 -2
  816. package/dist/domain/core/component/legacy-filter.d.ts +2 -17
  817. package/dist/domain/core/component/system-component-filter.d.ts +36 -18
  818. package/dist/domain/core/data-schema/data-cell-value.d.ts +4 -0
  819. package/dist/domain/core/data-schema/data-cell-value.js +1 -0
  820. package/dist/domain/core/data-schema/data-schema-array-field.d.ts +5 -0
  821. package/dist/domain/core/data-schema/data-schema-array-field.js +1 -0
  822. package/dist/domain/core/data-schema/data-schema-field-object.d.ts +4 -0
  823. package/dist/domain/core/data-schema/data-schema-field-object.js +1 -0
  824. package/dist/domain/core/data-schema/data-schema-field.d.ts +2 -0
  825. package/dist/domain/core/data-schema/data-schema-field.js +1 -0
  826. package/dist/domain/core/data-schema/data-schema-localized-field.d.ts +4 -0
  827. package/dist/domain/core/data-schema/data-schema-localized-field.js +1 -0
  828. package/dist/domain/core/data-schema/data-schema-primitive-field.d.ts +5 -0
  829. package/dist/domain/core/data-schema/data-schema-primitive-field.js +1 -0
  830. package/dist/domain/core/data-schema/data-schema.d.ts +2 -0
  831. package/dist/domain/core/data-schema/data-schema.js +1 -0
  832. package/dist/domain/core/data-schema/index.d.ts +7 -0
  833. package/dist/domain/core/data-schema/index.js +1 -0
  834. package/dist/domain/core/domain-factory.d.ts +1 -1
  835. package/dist/domain/core/domain.d.ts +2 -2
  836. package/dist/domain/core/emission/index.d.ts +8 -0
  837. package/dist/domain/core/emission/index.js +1 -0
  838. package/dist/domain/core/emission/reset-state-emission.d.ts +12 -0
  839. package/dist/domain/core/emission/reset-state-emission.js +1 -0
  840. package/dist/domain/core/emission/state-emission.d.ts +4 -0
  841. package/dist/domain/core/emission/state-emission.js +1 -0
  842. package/dist/domain/core/emission/state-update-emission.d.ts +14 -0
  843. package/dist/domain/core/emission/state-update-emission.js +1 -0
  844. package/dist/domain/core/emission/state-validation-result.d.ts +18 -0
  845. package/dist/domain/core/emission/state-validation-result.js +1 -0
  846. package/dist/domain/core/emission/transformation-log.d.ts +2 -0
  847. package/dist/domain/core/emission/transformation-log.js +1 -0
  848. package/dist/domain/core/emission/transformer-log-entry.d.ts +6 -0
  849. package/dist/domain/core/emission/transformer-log-entry.js +1 -0
  850. package/dist/domain/core/emission/transformer-log.d.ts +11 -0
  851. package/dist/domain/core/emission/transformer-log.js +1 -0
  852. package/dist/domain/core/emission/transformer-phase.d.ts +1 -0
  853. package/dist/domain/core/emission/transformer-phase.js +1 -0
  854. package/dist/domain/core/expression/aliased-expressions.d.ts +10 -0
  855. package/dist/domain/core/expression/aliased-expressions.js +1 -0
  856. package/dist/domain/core/expression/constant-expressions.d.ts +16 -8
  857. package/dist/domain/core/expression/constant-expressions.js +1 -1
  858. package/dist/domain/core/expression/custom-expression.d.ts +21 -8
  859. package/dist/domain/core/expression/custom-expression.js +1 -1
  860. package/dist/domain/core/expression/expression.d.ts +15 -17
  861. package/dist/domain/core/expression/index.d.ts +1 -2
  862. package/dist/domain/core/expression/index.js +1 -1
  863. package/dist/domain/core/index.d.ts +5 -1
  864. package/dist/domain/core/index.js +1 -1
  865. package/dist/domain/core/invariant/custom-invariants.d.ts +8 -16
  866. package/dist/domain/core/invariant/index.d.ts +1 -1
  867. package/dist/domain/core/invariant/index.js +1 -1
  868. package/dist/domain/core/invariant/invariants.d.ts +4 -70
  869. package/dist/domain/core/invariant/invariants.js +1 -1
  870. package/dist/domain/core/invariant/violation.d.ts +51 -3
  871. package/dist/domain/core/invariant/violation.js +1 -1
  872. package/dist/domain/core/model/model.d.ts +1 -1
  873. package/dist/domain/core/recipe/index.d.ts +1 -0
  874. package/dist/domain/core/recipe/index.js +1 -0
  875. package/dist/domain/core/recipe/recipes.d.ts +23 -0
  876. package/dist/domain/core/recipe/recipes.js +1 -0
  877. package/dist/domain/core/relation/all-of-type-relation.d.ts +19 -0
  878. package/dist/domain/core/relation/all-of-type-relation.js +1 -0
  879. package/dist/domain/core/relation/component-factories.d.ts +14 -0
  880. package/dist/domain/core/relation/component-factories.js +1 -0
  881. package/dist/domain/core/relation/composed-of.d.ts +12 -0
  882. package/dist/domain/core/relation/composed-of.js +1 -0
  883. package/dist/domain/core/relation/direct-relation.d.ts +17 -0
  884. package/dist/domain/core/relation/index.d.ts +8 -0
  885. package/dist/domain/core/relation/index.js +1 -0
  886. package/dist/domain/core/relation/indirect-relation.d.ts +25 -0
  887. package/dist/domain/core/relation/indirect-relation.js +1 -0
  888. package/dist/domain/core/relation/reference-component.d.ts +17 -0
  889. package/dist/domain/core/relation/reference-component.js +1 -0
  890. package/dist/domain/core/relation/reference-field.d.ts +7 -0
  891. package/dist/domain/core/relation/reference-field.js +1 -0
  892. package/dist/domain/core/relation/relation-factory.d.ts +22 -0
  893. package/dist/domain/core/relation/relation-factory.js +1 -0
  894. package/dist/domain/core/schema/extended-schema-validator.js +1 -1
  895. package/dist/domain/core/state/migrations.d.ts +14 -45
  896. package/dist/domain/core/state/migrations.js +1 -1
  897. package/dist/domain/core/state/state.d.ts +1 -1
  898. package/dist/domain/domain-builder.d.ts +11 -8
  899. package/dist/domain/domain-builder.js +1 -1
  900. package/dist/domain/domain-context/action-system/action-system.d.ts +2 -2
  901. package/dist/domain/domain-context/action-system/action-system.js +1 -1
  902. package/dist/domain/domain-context/action-system/index.d.ts +1 -0
  903. package/dist/domain/domain-context/action-system/index.js +1 -0
  904. package/dist/domain/domain-context/analytics-system/index.d.ts +2 -0
  905. package/dist/domain/domain-context/analytics-system/index.js +1 -0
  906. package/dist/domain/domain-context/create-transformer.d.ts +1 -1
  907. package/dist/domain/domain-context/dimension-system/dimension-system.d.ts +2 -2
  908. package/dist/domain/domain-context/dimension-system/dimension-system.js +1 -1
  909. package/dist/domain/domain-context/dimension-system/index.d.ts +1 -0
  910. package/dist/domain/domain-context/dimension-system/index.js +1 -0
  911. package/dist/domain/domain-context/domain-context-systems.d.ts +7 -7
  912. package/dist/domain/domain-context/index.d.ts +8 -18
  913. package/dist/domain/domain-context/index.js +1 -1
  914. package/dist/domain/domain-context/navigation-system/index.d.ts +3 -0
  915. package/dist/domain/domain-context/navigation-system/index.js +1 -0
  916. package/dist/domain/domain-context/navigation-system/navigation-system.d.ts +2 -3
  917. package/dist/domain/domain-context/navigation-system/navigation-system.js +1 -1
  918. package/dist/domain/domain-context/navigation-system/selection-transformers.d.ts +1 -1
  919. package/dist/domain/domain-context/recipe-system/index.d.ts +1 -0
  920. package/dist/domain/domain-context/recipe-system/index.js +1 -0
  921. package/dist/domain/domain-context/recipe-system/recipe-cooker-system.d.ts +2 -3
  922. package/dist/domain/domain-context/recipe-system/recipe-cooker-system.js +1 -1
  923. package/dist/domain/domain-context/relation-transformers/cascade-deletes.d.ts +2 -2
  924. package/dist/domain/domain-context/relation-transformers/cascade-ref-pruning.d.ts +2 -2
  925. package/dist/domain/domain-context/relation-transformers/cascade-ref-pruning.js +1 -1
  926. package/dist/domain/domain-context/relation-transformers/create-entity-refs.d.ts +2 -2
  927. package/dist/domain/domain-context/relation-transformers/create-entity-refs.js +2 -2
  928. package/dist/domain/domain-context/relation-transformers/index.d.ts +4 -0
  929. package/dist/domain/domain-context/relation-transformers/index.js +1 -0
  930. package/dist/domain/domain-context/relation-transformers/replace-refs.d.ts +2 -2
  931. package/dist/domain/domain-context/relation-transformers/replace-refs.js +1 -1
  932. package/dist/domain/domain-context/store-system/index.d.ts +4 -0
  933. package/dist/domain/domain-context/store-system/index.js +1 -0
  934. package/dist/domain/domain-context/store-system/reconcile-projected-entities.js +1 -1
  935. package/dist/domain/domain-context/store-system/store-system.d.ts +7 -35
  936. package/dist/domain/domain-context/store-system/store-system.js +2 -2
  937. package/dist/domain/domain-context/store-system/system-state.d.ts +1 -1
  938. package/dist/domain/domain-context/transformers/actions-builder.js +1 -1
  939. package/dist/domain/domain-context/transformers/auto-snap-transformer.d.ts +5 -7
  940. package/dist/domain/domain-context/transformers/auto-snap-transformer.js +1 -1
  941. package/dist/domain/domain-context/transformers/chain-builder.d.ts +1 -1
  942. package/dist/domain/domain-context/transformers/context.d.ts +2 -3
  943. package/dist/domain/domain-context/transformers/context.js +1 -1
  944. package/dist/domain/domain-context/transformers/entity-builder.js +1 -1
  945. package/dist/domain/domain-context/transformers/index.d.ts +1 -1
  946. package/dist/domain/domain-context/transformers/index.js +1 -1
  947. package/dist/domain/domain-context/transformers/when-builder.d.ts +2 -3
  948. package/dist/domain/domain-context/transformers/when-builder.js +1 -1
  949. package/dist/domain/domain-context/undo-system.d.ts +29 -3
  950. package/dist/domain/domain-context/undo-system.js +1 -1
  951. package/dist/domain/domain-runtime/access/selectors.d.ts +9 -0
  952. package/dist/domain/domain-runtime/access/selectors.js +1 -1
  953. package/dist/domain/domain-runtime/access/types.d.ts +2 -0
  954. package/dist/domain/domain-runtime/access/types.js +1 -1
  955. package/dist/domain/domain-runtime/application.d.ts +39 -0
  956. package/dist/domain/domain-runtime/application.js +1 -0
  957. package/dist/domain/domain-runtime/domain-context/action-context.d.ts +11 -0
  958. package/dist/domain/domain-runtime/domain-context/action-context.js +1 -0
  959. package/dist/domain/domain-runtime/domain-context/domain-context.js +1 -1
  960. package/dist/domain/domain-runtime/domain-context/expression-context.d.ts +8 -0
  961. package/dist/domain/domain-runtime/domain-context/expression-context.js +1 -0
  962. package/dist/domain/domain-runtime/domain-context/index.d.ts +3 -0
  963. package/dist/domain/domain-runtime/domain-context/runtime-expression-context.d.ts +18 -0
  964. package/dist/domain/domain-runtime/domain-context/runtime-expression-context.js +1 -0
  965. package/dist/domain/domain-runtime/domain-context/selectors.d.ts +20 -23
  966. package/dist/domain/domain-runtime/domain-context/selectors.js +1 -1
  967. package/dist/domain/domain-runtime/domain-context/types.d.ts +4 -1
  968. package/dist/domain/domain-runtime/domain-runtime.d.ts +128 -72
  969. package/dist/domain/domain-runtime/domain-runtime.js +1 -1
  970. package/dist/domain/domain-runtime/environment/initialize.d.ts +1 -1
  971. package/dist/domain/domain-runtime/environment/types.d.ts +1 -1
  972. package/dist/domain/domain-runtime/errors/implementation-error-collector.d.ts +21 -0
  973. package/dist/domain/domain-runtime/errors/implementation-error-collector.js +1 -0
  974. package/dist/domain/domain-runtime/errors/implementation-error.d.ts +46 -0
  975. package/dist/domain/domain-runtime/errors/implementation-error.js +1 -0
  976. package/dist/domain/domain-runtime/errors/implementation-errors.d.ts +13 -0
  977. package/dist/domain/domain-runtime/errors/implementation-errors.js +1 -0
  978. package/dist/domain/domain-runtime/errors/index.d.ts +4 -0
  979. package/dist/domain/domain-runtime/errors/index.js +1 -0
  980. package/dist/domain/domain-runtime/errors/to-implementation-errors.d.ts +10 -0
  981. package/dist/domain/domain-runtime/errors/to-implementation-errors.js +1 -0
  982. package/dist/domain/domain-runtime/index.d.ts +2 -0
  983. package/dist/domain/domain-runtime/index.js +1 -1
  984. package/dist/domain/domain-runtime/spec/create-violation-expressions.d.ts +24 -0
  985. package/dist/domain/domain-runtime/spec/create-violation-expressions.js +1 -0
  986. package/dist/domain/domain-runtime/spec/index.d.ts +5 -0
  987. package/dist/domain/domain-runtime/spec/index.js +1 -1
  988. package/dist/domain/domain-runtime/spec/initialize.d.ts +11 -0
  989. package/dist/domain/domain-runtime/spec/initialize.js +1 -1
  990. package/dist/domain/domain-runtime/spec/memoize-expression.d.ts +16 -0
  991. package/dist/domain/domain-runtime/spec/module-checks/element-registration.d.ts +125 -0
  992. package/dist/domain/domain-runtime/spec/module-checks/element-registration.js +1 -0
  993. package/dist/domain/domain-runtime/spec/module-checks/find-assistant-form-element-errors.d.ts +12 -0
  994. package/dist/domain/domain-runtime/spec/module-checks/find-assistant-form-element-errors.js +1 -0
  995. package/dist/domain/domain-runtime/spec/module-checks/handler-registration.d.ts +34 -0
  996. package/dist/domain/domain-runtime/spec/module-checks/handler-registration.js +1 -0
  997. package/dist/domain/domain-runtime/spec/module-checks/index.d.ts +10 -0
  998. package/dist/domain/domain-runtime/spec/module-checks/index.js +1 -0
  999. package/dist/domain/domain-runtime/spec/module-checks/merge-expression-modules.d.ts +23 -0
  1000. package/dist/domain/domain-runtime/spec/module-checks/merge-expression-modules.js +1 -0
  1001. package/dist/domain/domain-runtime/spec/module-checks/project-modules.d.ts +32 -0
  1002. package/dist/domain/domain-runtime/spec/module-checks/project-modules.js +1 -0
  1003. package/dist/domain/domain-runtime/spec/module-checks/resolve-action-modules.d.ts +4 -0
  1004. package/dist/domain/domain-runtime/spec/module-checks/resolve-action-modules.js +1 -0
  1005. package/dist/domain/domain-runtime/spec/module-checks/resolve-component-optic-modules.d.ts +4 -0
  1006. package/dist/domain/domain-runtime/spec/module-checks/resolve-component-optic-modules.js +1 -0
  1007. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.d.ts +14 -0
  1008. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.js +1 -0
  1009. package/dist/domain/domain-runtime/spec/module-checks/resolve-imported-transformers.d.ts +22 -0
  1010. package/dist/domain/domain-runtime/spec/module-checks/resolve-imported-transformers.js +1 -0
  1011. package/dist/domain/domain-runtime/spec/module-checks/resolve-invariant-modules.d.ts +6 -0
  1012. package/dist/domain/domain-runtime/spec/module-checks/resolve-invariant-modules.js +1 -0
  1013. package/dist/domain/domain-runtime/spec/prepare-action-implementations.d.ts +15 -0
  1014. package/dist/domain/domain-runtime/spec/prepare-action-implementations.js +5 -0
  1015. package/dist/domain/domain-runtime/spec/prepare-domain-expressions.d.ts +16 -0
  1016. package/dist/domain/domain-runtime/spec/selectors.d.ts +8 -7
  1017. package/dist/domain/domain-runtime/spec/selectors.js +1 -1
  1018. package/dist/domain/domain-runtime/spec/types.d.ts +5 -2
  1019. package/dist/domain/domain-runtime/web-component/actions.d.ts +3 -0
  1020. package/dist/domain/domain-runtime/web-component/actions.js +1 -1
  1021. package/dist/domain/domain-runtime/web-component/initialize.d.ts +1 -0
  1022. package/dist/domain/domain-runtime/web-component/initialize.js +1 -1
  1023. package/dist/domain/domain-runtime/web-component/selectors.d.ts +2 -0
  1024. package/dist/domain/domain-runtime/web-component/selectors.js +1 -1
  1025. package/dist/domain/domain-runtime/web-component/types.d.ts +6 -3
  1026. package/dist/domain/extensions/attribute-switch.d.ts +8 -0
  1027. package/dist/domain/extensions/attribute-switch.js +1 -0
  1028. package/dist/domain/extensions/canvas-config.d.ts +87 -0
  1029. package/dist/domain/extensions/child-entity-recipe-hierarchy.d.ts +21 -0
  1030. package/dist/domain/extensions/child-entity-recipe-hierarchy.js +1 -0
  1031. package/dist/domain/extensions/common/angle-indicator-schema.d.ts +292 -0
  1032. package/dist/domain/extensions/common/angle-indicator-schema.js +1 -0
  1033. package/dist/domain/extensions/common/dimension-indicator-schema.d.ts +607 -0
  1034. package/dist/domain/extensions/common/index.d.ts +4 -0
  1035. package/dist/domain/extensions/common/index.js +1 -0
  1036. package/dist/domain/extensions/custom-header.d.ts +11 -0
  1037. package/dist/domain/extensions/custom-header.js +1 -0
  1038. package/dist/domain/extensions/custom-price-footer.js +1 -0
  1039. package/dist/domain/extensions/custom-sidebar-footer.d.ts +11 -0
  1040. package/dist/domain/extensions/custom-sidebar-footer.js +1 -0
  1041. package/dist/domain/extensions/editable-angle-indicator.d.ts +39 -0
  1042. package/dist/domain/extensions/editable-angle-indicator.js +1 -0
  1043. package/dist/domain/extensions/editable-distance-dimension-indicator.d.ts +43 -0
  1044. package/dist/domain/extensions/editable-distance-dimension-indicator.js +1 -0
  1045. package/dist/domain/extensions/editable-offset-indicator.d.ts +42 -0
  1046. package/dist/domain/extensions/editable-offset-indicator.js +1 -0
  1047. package/dist/domain/extensions/editable-size-indicator.d.ts +39 -0
  1048. package/dist/domain/extensions/editable-size-indicator.js +1 -0
  1049. package/dist/domain/extensions/entity-header.d.ts +22 -0
  1050. package/dist/domain/extensions/entity-header.js +1 -0
  1051. package/dist/domain/extensions/export-images/agent-screenshot.d.ts +24 -0
  1052. package/dist/domain/extensions/export-images/agent-screenshot.js +1 -0
  1053. package/dist/domain/extensions/export-images/client-side-image.d.ts +14 -0
  1054. package/dist/domain/extensions/export-images/client-side-image.js +1 -0
  1055. package/dist/domain/extensions/export-images/index.d.ts +3 -0
  1056. package/dist/domain/extensions/export-images/index.js +1 -0
  1057. package/dist/domain/extensions/export-images/save-template-thumbnail.d.ts +14 -0
  1058. package/dist/domain/extensions/export-images/save-template-thumbnail.js +1 -0
  1059. package/dist/domain/extensions/finalize-component.js +1 -0
  1060. package/dist/domain/extensions/fit-selection-orthographic-camera-component.js +1 -0
  1061. package/dist/domain/extensions/fit-selection-perspective-camera-component.js +1 -0
  1062. package/dist/domain/extensions/horizontal-tabs.d.ts +28 -0
  1063. package/dist/domain/extensions/index.d.ts +68 -0
  1064. package/dist/domain/extensions/index.js +1 -0
  1065. package/dist/domain/extensions/list-selector-dimension-indicator.d.ts +31 -0
  1066. package/dist/domain/extensions/list-selector-dimension-indicator.js +1 -0
  1067. package/dist/domain/extensions/navigation-steps.d.ts +19 -0
  1068. package/dist/domain/extensions/offset-indicator.js +1 -0
  1069. package/dist/domain/extensions/property-page.d.ts +16 -0
  1070. package/dist/domain/extensions/property-page.js +1 -0
  1071. package/dist/domain/extensions/replace-entity-recipe-hierarchy.d.ts +21 -0
  1072. package/dist/domain/extensions/replace-entity-recipe-hierarchy.js +1 -0
  1073. package/dist/domain/extensions/rotation-handle.d.ts +53 -0
  1074. package/dist/domain/extensions/scene-entity-add-fab.d.ts +32 -0
  1075. package/dist/domain/extensions/scene-entity-add-fab.js +1 -0
  1076. package/dist/domain/extensions/scene-entity-animation.js +1 -0
  1077. package/dist/domain/extensions/scene-entity-delete-fab.d.ts +19 -0
  1078. package/dist/domain/extensions/scene-entity-delete-fab.js +1 -0
  1079. package/dist/domain/extensions/scene-entity-html-hotspot.d.ts +27 -0
  1080. package/dist/domain/extensions/scene-entity-html-hotspot.js +1 -0
  1081. package/dist/domain/extensions/scene-entity-navigation-hotspot.d.ts +20 -0
  1082. package/dist/domain/extensions/scene-entity-navigation-hotspot.js +1 -0
  1083. package/dist/domain/extensions/scene-entity-object-html-hotspot.d.ts +31 -0
  1084. package/dist/domain/extensions/scene-entity-object-html-hotspot.js +1 -0
  1085. package/dist/domain/extensions/scene-entity-select-hotspot.d.ts +5 -0
  1086. package/dist/domain/extensions/scene-entity-select-hotspot.js +1 -0
  1087. package/dist/domain/extensions/sketching-edit.d.ts +28 -0
  1088. package/dist/domain/extensions/sketching-edit.js +1 -0
  1089. package/dist/domain/extensions/summary-component.js +1 -0
  1090. package/dist/domain/extensions/tool-menu-fab.d.ts +40 -0
  1091. package/dist/domain/extensions/tool-menu-fab.js +1 -0
  1092. package/dist/domain/extensions/toolbar.d.ts +13 -0
  1093. package/dist/domain/extensions/toolbar.js +1 -0
  1094. package/dist/domain/index.d.ts +2 -8
  1095. package/dist/domain/index.js +1 -1
  1096. package/dist/domain/mocks/create-mock-domain-context.d.ts +1 -1
  1097. package/dist/domain/mocks/create-mock-domain-runtime-services.d.ts +1 -1
  1098. package/dist/domain/mocks/create-mock-domain-runtime.d.ts +37 -19
  1099. package/dist/domain/mocks/create-mock-domain-runtime.js +1 -1
  1100. package/dist/domain/mocks/create-mock-domain.d.ts +1 -1
  1101. package/dist/domain/mocks/create-mock-domain.js +1 -1
  1102. package/dist/domain/mocks/create-mock-state.d.ts +2 -2
  1103. package/dist/domain/mocks/create-test-application-config.d.ts +59 -0
  1104. package/dist/domain/mocks/create-test-application-config.js +1 -0
  1105. package/dist/domain/mocks/index.d.ts +1 -0
  1106. package/dist/domain/mocks/index.js +1 -1
  1107. package/dist/domain/projections/blender-projections/blender-projections.d.ts +1 -2
  1108. package/dist/domain/projections/blender-projections/camera.d.ts +2 -2
  1109. package/dist/domain/projections/collision-projections.d.ts +1 -1
  1110. package/dist/domain/projections/composition-projections.d.ts +1 -1
  1111. package/dist/domain/projections/composition-projections.js +1 -1
  1112. package/dist/domain/projections/constraint-projections.d.ts +1 -1
  1113. package/dist/domain/projections/index.d.ts +1 -1
  1114. package/dist/domain/projections/position-projections.d.ts +1 -1
  1115. package/dist/domain/projections/projected-entities-projections.d.ts +1 -1
  1116. package/dist/domain/projections/snapping-projections.d.ts +1 -1
  1117. package/dist/domain/projections/validation-projections.d.ts +3 -19
  1118. package/dist/domain/sketching/sketching-projections.d.ts +1 -1
  1119. package/dist/domain/system-components/application-config.d.ts +2 -2
  1120. package/dist/domain/system-components/child-entity-selection.d.ts +1 -2
  1121. package/dist/domain/system-components/child-entity-selection.js +1 -1
  1122. package/dist/domain/system-components/collision-box-geometry.d.ts +4 -2
  1123. package/dist/domain/system-components/collision-geometry.d.ts +4 -2
  1124. package/dist/domain/system-components/collision-point-geometry.d.ts +4 -2
  1125. package/dist/domain/system-components/common/index.d.ts +0 -4
  1126. package/dist/domain/system-components/common/index.js +1 -1
  1127. package/dist/domain/system-components/common/material-override-schema.d.ts +2 -2
  1128. package/dist/domain/system-components/common/recipes.d.ts +21 -4
  1129. package/dist/domain/system-components/common/recipes.js +1 -1
  1130. package/dist/domain/system-components/common/scene-entity-control-schema.d.ts +3 -0
  1131. package/dist/domain/system-components/common/scene-entity-control-schema.js +1 -1
  1132. package/dist/domain/system-components/constraint.d.ts +10 -23
  1133. package/dist/domain/system-components/drag-handle.d.ts +1 -1
  1134. package/dist/domain/system-components/drag-handle.js +1 -1
  1135. package/dist/domain/system-components/fit-entity-orthographic-camera-component.js +1 -1
  1136. package/dist/domain/system-components/fit-entity-perspective-camera-component.js +1 -1
  1137. package/dist/domain/system-components/fit-root-orthographic-camera-component.js +1 -1
  1138. package/dist/domain/system-components/fit-root-perspective-camera-component.js +1 -1
  1139. package/dist/domain/system-components/hotspot-drag-handle.d.ts +1 -1
  1140. package/dist/domain/system-components/hotspot-drag-handle.js +1 -1
  1141. package/dist/domain/system-components/index.d.ts +0 -68
  1142. package/dist/domain/system-components/index.js +1 -1
  1143. package/dist/domain/system-components/material-swatch.js +1 -1
  1144. package/dist/domain/system-components/phoenix-entity-elements/admin-data-table-sidebar.d.ts +1 -1
  1145. package/dist/domain/system-components/phoenix-layout-elements/admin-connected-resource-page.d.ts +1 -1
  1146. package/dist/domain/system-components/phoenix-layout-elements/admin-data-table-actions.d.ts +1 -1
  1147. package/dist/domain/system-components/phoenix-layout-elements/admin-data-table-page.d.ts +1 -1
  1148. package/dist/domain/system-components/scene-entity-material-override.d.ts +1 -1
  1149. package/dist/domain/system-components/scene-entity-object-material-override.d.ts +1 -1
  1150. package/dist/domain/system-components/scene-entity-object-text-decal.d.ts +1 -1
  1151. package/dist/domain/system-components/scene-entity-object-transimissive-material-override.d.ts +1 -1
  1152. package/dist/domain/system-components/scene-entity-transimissive-material-override.d.ts +1 -1
  1153. package/dist/domain/system-components/static-orthographic-camera-component.js +1 -1
  1154. package/dist/domain/system-components/static-perspective-camera-component.js +1 -1
  1155. package/dist/domain/utils/eval-cache.d.ts +1 -1
  1156. package/dist/domain/utils/map-nested-object.d.ts +1 -1
  1157. package/dist/domain/utils/memo-eval.d.ts +2 -2
  1158. package/dist/editor/Editor.d.ts +7 -0
  1159. package/dist/editor/Editor.js +1 -1
  1160. package/dist/editor/domain-editors/DomainSpecContext.js +1 -1
  1161. package/dist/editor/domain-editors/apply-spec-update.d.ts +10 -2
  1162. package/dist/editor/domain-editors/apply-spec-update.js +1 -1
  1163. package/dist/editor/domain-editors/use-implementation-files.d.ts +7 -16
  1164. package/dist/editor/domain-editors/use-implementation-files.js +1 -1
  1165. package/dist/editor/mocks/CreateMockYaml.js +2 -2
  1166. package/dist/editor/mocks/EditorMockContext.d.ts +2 -0
  1167. package/dist/editor/mocks/EditorMockContext.js +1 -1
  1168. package/dist/editor/screenshot/ScreenshotHandler.js +1 -1
  1169. package/dist/globals/index.d.ts +2 -0
  1170. package/dist/i18n/locales/cs/messages.js +1 -1
  1171. package/dist/i18n/locales/da/messages.js +1 -1
  1172. package/dist/i18n/locales/de/messages.js +1 -1
  1173. package/dist/i18n/locales/de-AT/messages.js +1 -1
  1174. package/dist/i18n/locales/en/messages.js +1 -1
  1175. package/dist/i18n/locales/en-AU/messages.js +1 -1
  1176. package/dist/i18n/locales/en-GB/messages.js +1 -1
  1177. package/dist/i18n/locales/es/messages.js +1 -1
  1178. package/dist/i18n/locales/fr/messages.js +1 -1
  1179. package/dist/i18n/locales/hu/messages.js +1 -1
  1180. package/dist/i18n/locales/it/messages.js +1 -1
  1181. package/dist/i18n/locales/nl/messages.js +1 -1
  1182. package/dist/i18n/locales/pl/messages.js +1 -1
  1183. package/dist/i18n/locales/pt/messages.js +1 -1
  1184. package/dist/i18n/locales/ro/messages.js +1 -1
  1185. package/dist/i18n/locales/sk/messages.js +1 -1
  1186. package/dist/i18n/locales/tr/messages.js +1 -1
  1187. package/dist/legacy/domain-cli/gen/configurator-builder.js +13 -12
  1188. package/dist/legacy/domain-cli/gen/constant-expressions.js +1 -3
  1189. package/dist/legacy/domain-cli/gen/defaults.js +1 -7
  1190. package/dist/legacy/domain-cli/gen/implementation.js +7 -11
  1191. package/dist/legacy/domain-cli/gen/invariants.js +7 -6
  1192. package/dist/legacy/domain-cli/gen/relations.js +1 -1
  1193. package/dist/legacy/domain-cli/utils/cache.d.ts +1 -1
  1194. package/dist/legacy/domain-cli/utils/cache.js +1 -1
  1195. package/dist/legacy/domain-spec/__generated/domain-schema.d.ts +176 -148
  1196. package/dist/legacy/domain-spec/spec/domain-spec.js +1 -1
  1197. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/claude-md.d.ts +1 -1
  1198. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/cursor-rules.d.ts +1 -1
  1199. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.d.ts +1 -1
  1200. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.js +13 -0
  1201. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/domain-index.js +17 -15
  1202. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/env-example.d.ts +1 -1
  1203. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/env-example.js +4 -0
  1204. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-admin.js +15 -14
  1205. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-configurator.js +14 -12
  1206. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-admin.js +14 -13
  1207. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-configurator.js +13 -11
  1208. package/dist/phoenix/application-spec/application-spec-builder.d.ts +0 -2
  1209. package/dist/phoenix/application-spec/application-spec-builder.js +1 -1
  1210. package/dist/phoenix/application-spec/generate-application-spec-project.d.ts +0 -2
  1211. package/dist/phoenix/application-spec/generate-application-spec-project.js +2 -2
  1212. package/dist/phoenix/application-spec/generate-application-spec-story.js +2 -2
  1213. package/dist/phoenix/application-spec/generate-project-files.d.ts +0 -2
  1214. package/dist/phoenix/application-spec/project-files.js +1 -1
  1215. package/dist/phoenix/application-spec/resolve-deployment-data.d.ts +11 -0
  1216. package/dist/phoenix/application-spec/resolve-deployment-data.js +2 -2
  1217. package/dist/phoenix/bin.d.ts +2 -0
  1218. package/dist/phoenix/bin.js +2 -0
  1219. package/dist/phoenix/check-configs/built-in-eslint-config.d.ts +9 -0
  1220. package/dist/phoenix/check-configs/built-in-eslint-config.js +1 -0
  1221. package/dist/phoenix/check-configs/eslint-config.d.ts +10 -0
  1222. package/dist/phoenix/check-configs/eslint-config.js +1 -0
  1223. package/dist/phoenix/check-configs/index.d.ts +8 -0
  1224. package/dist/phoenix/check-configs/index.js +1 -0
  1225. package/dist/phoenix/check-configs/typescript-project.d.ts +5 -0
  1226. package/dist/phoenix/check-configs/typescript-project.js +1 -0
  1227. package/dist/phoenix/cli.d.ts +0 -1
  1228. package/dist/phoenix/cli.js +1 -2
  1229. package/dist/phoenix/commands/build.js +1 -1
  1230. package/dist/phoenix/commands/check.js +1 -1
  1231. package/dist/phoenix/commands/clean.js +1 -1
  1232. package/dist/phoenix/commands/deploy.js +2 -2
  1233. package/dist/phoenix/commands/deps/deps.d.ts +73 -0
  1234. package/dist/phoenix/commands/deps/deps.js +3 -0
  1235. package/dist/phoenix/commands/deps/index.d.ts +1 -0
  1236. package/dist/phoenix/commands/deps/index.js +1 -0
  1237. package/dist/phoenix/commands/deps/sdk-manifest.d.ts +12 -0
  1238. package/dist/phoenix/commands/deps/sdk-manifest.js +1 -0
  1239. package/dist/phoenix/commands/dev.js +5 -5
  1240. package/dist/phoenix/commands/fix.js +1 -1
  1241. package/dist/phoenix/commands/generated-env-markers.d.ts +1 -0
  1242. package/dist/phoenix/commands/generated-env-markers.js +1 -1
  1243. package/dist/phoenix/commands/index.d.ts +1 -0
  1244. package/dist/phoenix/commands/index.js +1 -1
  1245. package/dist/phoenix/commands/init.d.ts +17 -5
  1246. package/dist/phoenix/commands/init.js +1 -1
  1247. package/dist/phoenix/commands/link.js +1 -1
  1248. package/dist/phoenix/commands/prettier.js +1 -1
  1249. package/dist/phoenix/commands/sync.js +1 -1
  1250. package/dist/phoenix/commands/unlink.js +1 -1
  1251. package/dist/phoenix/lingui/index.d.ts +1 -0
  1252. package/dist/phoenix/lingui/index.js +1 -0
  1253. package/dist/phoenix/lingui/lingui.d.ts +18 -0
  1254. package/dist/phoenix/lingui/lingui.js +1 -0
  1255. package/dist/phoenix/services/application-spec-project-watcher.d.ts +5 -3
  1256. package/dist/phoenix/services/application-spec-project-watcher.js +3 -3
  1257. package/dist/phoenix/services/index.d.ts +1 -0
  1258. package/dist/phoenix/services/index.js +1 -1
  1259. package/dist/phoenix/services/lingui-watcher.js +1 -1
  1260. package/dist/phoenix/services/prepare-development-environment.js +1 -1
  1261. package/dist/phoenix/services/source-archive.d.ts +1 -0
  1262. package/dist/phoenix/services/source-archive.js +1 -1
  1263. package/dist/phoenix/services/swc.js +1 -1
  1264. package/dist/phoenix/services/vite-config.js +1 -1
  1265. package/dist/phoenix/utils/git/index.d.ts +1 -0
  1266. package/dist/phoenix/utils/git/index.js +1 -0
  1267. package/dist/phoenix/utils/git/is-inside-git-repository.d.ts +6 -0
  1268. package/dist/phoenix/utils/git/is-inside-git-repository.js +1 -0
  1269. package/dist/phoenix/utils/index.d.ts +5 -2
  1270. package/dist/phoenix/utils/index.js +1 -1
  1271. package/dist/phoenix/utils/node-version/index.d.ts +1 -0
  1272. package/dist/phoenix/utils/node-version/index.js +1 -0
  1273. package/dist/phoenix/utils/node-version/supported-node-version.d.ts +12 -0
  1274. package/dist/phoenix/utils/node-version/supported-node-version.js +4 -0
  1275. package/dist/phoenix/utils/package-info.d.ts +0 -9
  1276. package/dist/phoenix/utils/package-info.js +1 -1
  1277. package/dist/phoenix/utils/package-manager/index.d.ts +2 -0
  1278. package/dist/phoenix/utils/package-manager/index.js +1 -0
  1279. package/dist/phoenix/utils/package-manager/package-manager-commands.d.ts +19 -0
  1280. package/dist/phoenix/utils/package-manager/package-manager-commands.js +1 -0
  1281. package/dist/phoenix/utils/package-manager/pnpm-project.d.ts +9 -0
  1282. package/dist/phoenix/utils/package-manager/pnpm-project.js +1 -0
  1283. package/dist/phoenix/utils/run-command.d.ts +11 -0
  1284. package/dist/phoenix/utils/run-command.js +1 -1
  1285. package/dist/phoenix/utils/sdk-tool/index.d.ts +1 -0
  1286. package/dist/phoenix/utils/sdk-tool/index.js +1 -0
  1287. package/dist/phoenix/utils/sdk-tool/resolve-sdk-tool-bin.d.ts +15 -0
  1288. package/dist/phoenix/utils/sdk-tool/resolve-sdk-tool-bin.js +1 -0
  1289. package/dist/react-sdk/application-runtime/common-services/analytics/analytics-service.d.ts +1 -1
  1290. package/dist/react-sdk/application-runtime/common-services/analytics/frontend-analytics.d.ts +52 -0
  1291. package/dist/react-sdk/application-runtime/common-services/analytics/frontend-analytics.js +1 -0
  1292. package/dist/react-sdk/application-runtime/common-services/analytics/index.d.ts +1 -0
  1293. package/dist/react-sdk/application-runtime/common-services/analytics/index.js +1 -1
  1294. package/dist/react-sdk/application-runtime/common-services/initialize.d.ts +2 -2
  1295. package/dist/react-sdk/application-runtime/hooks/index.d.ts +2 -0
  1296. package/dist/react-sdk/application-runtime/hooks/index.js +1 -1
  1297. package/dist/react-sdk/application-runtime/hooks/loading/index.d.ts +5 -0
  1298. package/dist/react-sdk/application-runtime/hooks/loading/index.js +1 -0
  1299. package/dist/react-sdk/application-runtime/hooks/loading/loader-host-context.d.ts +11 -0
  1300. package/dist/react-sdk/application-runtime/hooks/loading/loader-host-context.js +1 -0
  1301. package/dist/react-sdk/application-runtime/hooks/loading/use-is-awaiting-loading-phase.d.ts +8 -0
  1302. package/dist/react-sdk/application-runtime/hooks/loading/use-is-awaiting-loading-phase.js +1 -0
  1303. package/dist/react-sdk/application-runtime/hooks/loading/use-is-loader-hosted.d.ts +7 -0
  1304. package/dist/react-sdk/application-runtime/hooks/loading/use-is-loader-hosted.js +1 -0
  1305. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-actions.d.ts +9 -0
  1306. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-actions.js +1 -0
  1307. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-application.d.ts +24 -0
  1308. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-application.js +1 -0
  1309. package/dist/react-sdk/application-runtime/hooks/responsive/index.d.ts +3 -0
  1310. package/dist/react-sdk/application-runtime/hooks/responsive/index.js +1 -0
  1311. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-actions.d.ts +9 -0
  1312. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-actions.js +1 -0
  1313. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-application.d.ts +26 -0
  1314. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-application.js +1 -0
  1315. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-state.d.ts +10 -0
  1316. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-state.js +1 -0
  1317. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-store.d.ts +24 -0
  1318. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-store.js +1 -0
  1319. package/dist/react-sdk/application-runtime/hooks/use-access-service.d.ts +7 -0
  1320. package/dist/react-sdk/application-runtime/hooks/use-access-service.js +1 -1
  1321. package/dist/react-sdk/application-runtime/hooks/use-phoenix-element-slots.d.ts +2 -1
  1322. package/dist/react-sdk/application-runtime/hooks/use-web-component-readonly-sync.d.ts +4 -11
  1323. package/dist/react-sdk/application-runtime/hooks/use-web-component-readonly-sync.js +1 -1
  1324. package/dist/react-sdk/application-runtime/hooks/use-web-component.d.ts +5 -0
  1325. package/dist/react-sdk/application-runtime/hooks/use-web-component.js +1 -1
  1326. package/dist/react-sdk/application-runtime/host-properties/actions.d.ts +15 -0
  1327. package/dist/react-sdk/application-runtime/host-properties/actions.js +1 -0
  1328. package/dist/react-sdk/application-runtime/host-properties/connect-host-properties.d.ts +30 -0
  1329. package/dist/react-sdk/application-runtime/host-properties/connect-host-properties.js +1 -0
  1330. package/dist/react-sdk/application-runtime/host-properties/domain-host-properties.d.ts +7 -0
  1331. package/dist/react-sdk/application-runtime/host-properties/domain-host-properties.js +1 -0
  1332. package/dist/react-sdk/application-runtime/host-properties/host-property-descriptors.d.ts +21 -0
  1333. package/dist/react-sdk/application-runtime/host-properties/host-property-descriptors.js +1 -0
  1334. package/dist/react-sdk/application-runtime/host-properties/host-property-scopes.d.ts +42 -0
  1335. package/dist/react-sdk/application-runtime/host-properties/host-property-scopes.js +1 -0
  1336. package/dist/react-sdk/application-runtime/host-properties/index.d.ts +8 -0
  1337. package/dist/react-sdk/application-runtime/host-properties/index.js +1 -0
  1338. package/dist/react-sdk/application-runtime/host-properties/initialize.d.ts +7 -0
  1339. package/dist/react-sdk/application-runtime/host-properties/initialize.js +1 -0
  1340. package/dist/react-sdk/application-runtime/host-properties/selectors.d.ts +54 -0
  1341. package/dist/react-sdk/application-runtime/host-properties/selectors.js +1 -0
  1342. package/dist/react-sdk/application-runtime/host-properties/types.d.ts +18 -0
  1343. package/dist/react-sdk/application-runtime/host-properties/types.js +1 -0
  1344. package/dist/react-sdk/application-runtime/index.d.ts +3 -0
  1345. package/dist/react-sdk/application-runtime/integration/initialize.d.ts +7 -6
  1346. package/dist/react-sdk/application-runtime/integration/initialize.js +1 -1
  1347. package/dist/react-sdk/application-runtime/integration/selectors.d.ts +11 -2
  1348. package/dist/react-sdk/application-runtime/integration/selectors.js +1 -1
  1349. package/dist/react-sdk/application-runtime/integration/types.d.ts +5 -2
  1350. package/dist/react-sdk/application-runtime/loading/actions.d.ts +45 -0
  1351. package/dist/react-sdk/application-runtime/loading/actions.js +1 -0
  1352. package/dist/react-sdk/application-runtime/loading/index.d.ts +4 -0
  1353. package/dist/react-sdk/application-runtime/loading/index.js +1 -0
  1354. package/dist/react-sdk/application-runtime/loading/initialize.d.ts +3 -0
  1355. package/dist/react-sdk/application-runtime/loading/initialize.js +1 -0
  1356. package/dist/react-sdk/application-runtime/loading/selectors.d.ts +18 -0
  1357. package/dist/react-sdk/application-runtime/loading/selectors.js +1 -0
  1358. package/dist/react-sdk/application-runtime/loading/types.d.ts +59 -0
  1359. package/dist/react-sdk/application-runtime/loading/types.js +1 -0
  1360. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.js +1 -1
  1361. package/dist/react-sdk/application-runtime/provider/ApplicationRuntime.d.ts +6 -0
  1362. package/dist/react-sdk/application-runtime/provider/ApplicationRuntime.js +1 -1
  1363. package/dist/react-sdk/application-runtime/provider/ApplicationType.d.ts +7 -0
  1364. package/dist/react-sdk/application-runtime/provider/ApplicationType.js +1 -1
  1365. package/dist/react-sdk/application-runtime/responsive/actions.d.ts +47 -0
  1366. package/dist/react-sdk/application-runtime/responsive/actions.js +1 -0
  1367. package/dist/react-sdk/application-runtime/responsive/index.d.ts +4 -0
  1368. package/dist/react-sdk/application-runtime/responsive/index.js +1 -0
  1369. package/dist/react-sdk/application-runtime/responsive/initialize.d.ts +3 -0
  1370. package/dist/react-sdk/application-runtime/responsive/initialize.js +1 -0
  1371. package/dist/react-sdk/application-runtime/responsive/selectors.d.ts +20 -0
  1372. package/dist/react-sdk/application-runtime/responsive/selectors.js +1 -0
  1373. package/dist/react-sdk/application-runtime/responsive/types.d.ts +104 -0
  1374. package/dist/react-sdk/application-runtime/responsive/types.js +1 -0
  1375. package/dist/react-sdk/application-runtime/routing/access-service.d.ts +1 -0
  1376. package/dist/react-sdk/application-runtime/routing/routing-service.d.ts +34 -2
  1377. package/dist/react-sdk/application-runtime/routing/routing-service.js +1 -1
  1378. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.d.ts +366 -46
  1379. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.js +1 -1
  1380. package/dist/react-sdk/domain-application-context/BackendDataProvider.js +1 -1
  1381. package/dist/react-sdk/domain-application-context/DomainLifecycleBoundary.js +1 -1
  1382. package/dist/react-sdk/domain-application-context/FrontendDataProvider.js +1 -1
  1383. package/dist/react-sdk/domain-application-context/PublishedDataProvider.js +1 -1
  1384. package/dist/react-sdk/domain-context/common-hooks/index.d.ts +9 -0
  1385. package/dist/react-sdk/domain-context/common-hooks/index.js +1 -0
  1386. package/dist/react-sdk/domain-context/common-hooks/use-configuration-save-state.d.ts +23 -0
  1387. package/dist/react-sdk/domain-context/common-hooks/use-configuration-save-state.js +1 -0
  1388. package/dist/react-sdk/domain-context/common-hooks/use-configurator-messages.d.ts +41 -0
  1389. package/dist/react-sdk/domain-context/common-hooks/use-configurator-messages.js +1 -0
  1390. package/dist/react-sdk/domain-context/common-hooks/use-domain-context.d.ts +10 -9
  1391. package/dist/react-sdk/domain-context/component-hooks/index.d.ts +1 -0
  1392. package/dist/react-sdk/domain-context/component-hooks/index.js +1 -0
  1393. package/dist/react-sdk/domain-context/component-hooks/use-component.js +1 -1
  1394. package/dist/react-sdk/domain-context/entity-hooks/use-domain-entity-state.js +1 -1
  1395. package/dist/react-sdk/domain-context/entity-hooks/use-entity-price.js +1 -1
  1396. package/dist/react-sdk/domain-context/entity-hooks/use-root-entity-id.js +1 -1
  1397. package/dist/react-sdk/domain-context/entity-hooks/use-root-entity-state.js +1 -1
  1398. package/dist/react-sdk/domain-context/index.d.ts +9 -1
  1399. package/dist/react-sdk/domain-context/index.js +1 -1
  1400. package/dist/react-sdk/domain-context/system-hooks/composition-hooks.js +1 -1
  1401. package/dist/react-sdk/domain-context/system-hooks/dimension-hooks.js +1 -1
  1402. package/dist/react-sdk/domain-context/system-hooks/generate-share-link-hooks.d.ts +8 -0
  1403. package/dist/react-sdk/domain-context/system-hooks/generate-share-link-hooks.js +1 -0
  1404. package/dist/react-sdk/domain-context/system-hooks/hover-hooks.js +1 -1
  1405. package/dist/react-sdk/domain-context/system-hooks/locale-switch-hooks.d.ts +24 -0
  1406. package/dist/react-sdk/domain-context/system-hooks/locale-switch-hooks.js +1 -0
  1407. package/dist/react-sdk/domain-context/system-hooks/navigation-hooks.d.ts +11 -0
  1408. package/dist/react-sdk/domain-context/system-hooks/navigation-hooks.js +1 -1
  1409. package/dist/react-sdk/domain-context/system-hooks/selection-hooks.js +1 -1
  1410. package/dist/react-sdk/domain-context/system-hooks/share-links-hooks.d.ts +32 -0
  1411. package/dist/react-sdk/domain-context/system-hooks/share-links-hooks.js +1 -0
  1412. package/dist/react-sdk/domain-context/system-hooks/step-navigation-hooks.d.ts +57 -0
  1413. package/dist/react-sdk/domain-context/system-hooks/step-navigation-hooks.js +1 -0
  1414. package/dist/react-sdk/domain-context/system-hooks/tab-navigation-hooks.d.ts +61 -0
  1415. package/dist/react-sdk/domain-context/system-hooks/tab-navigation-hooks.js +1 -0
  1416. package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.d.ts +20 -0
  1417. package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.js +1 -0
  1418. package/dist/react-sdk/domain-controls/hooks/use-angle-dimension.d.ts +1 -1
  1419. package/dist/react-sdk/handlers/FinalizeActionRunner.d.ts +13 -0
  1420. package/dist/react-sdk/handlers/FinalizeActionRunner.js +1 -0
  1421. package/dist/react-sdk/handlers/FinalizeActionsHost.d.ts +10 -0
  1422. package/dist/react-sdk/handlers/FinalizeActionsHost.js +1 -0
  1423. package/dist/react-sdk/handlers/FinalizeActionsProvider.d.ts +11 -0
  1424. package/dist/react-sdk/handlers/FinalizeActionsProvider.js +1 -0
  1425. package/dist/react-sdk/handlers/finalize-actions-context.d.ts +6 -0
  1426. package/dist/react-sdk/handlers/finalize-actions-context.js +1 -0
  1427. package/dist/react-sdk/handlers/finalize-actions-store.d.ts +23 -0
  1428. package/dist/react-sdk/handlers/finalize-actions-store.js +1 -0
  1429. package/dist/react-sdk/handlers/index.d.ts +6 -0
  1430. package/dist/react-sdk/handlers/index.js +1 -1
  1431. package/dist/react-sdk/handlers/use-finalize-action.d.ts +32 -0
  1432. package/dist/react-sdk/handlers/use-finalize-action.js +1 -0
  1433. package/dist/react-sdk/handlers/use-finalize-actions.d.ts +53 -0
  1434. package/dist/react-sdk/handlers/use-finalize-actions.js +1 -0
  1435. package/dist/react-sdk/index.d.ts +2 -0
  1436. package/dist/react-sdk/index.js +1 -1
  1437. package/dist/react-sdk/loading-state/LoaderHost.d.ts +20 -0
  1438. package/dist/react-sdk/loading-state/LoaderHost.js +1 -0
  1439. package/dist/react-sdk/loading-state/built-in-loading-phase.d.ts +9 -0
  1440. package/dist/react-sdk/loading-state/built-in-loading-phase.js +1 -0
  1441. package/dist/react-sdk/loading-state/create-app-loader.d.ts +18 -0
  1442. package/dist/react-sdk/loading-state/create-app-loader.js +1 -0
  1443. package/dist/react-sdk/loading-state/index.d.ts +4 -2
  1444. package/dist/react-sdk/loading-state/index.js +1 -1
  1445. package/dist/react-sdk/loading-state/loading-state-hooks.d.ts +22 -0
  1446. package/dist/react-sdk/loading-state/loading-state-hooks.js +1 -0
  1447. package/dist/react-sdk/page-elements/ConfigurationNotFoundPagePropsProvider.d.ts +17 -0
  1448. package/dist/react-sdk/page-elements/ConfigurationNotFoundPagePropsProvider.js +1 -0
  1449. package/dist/react-sdk/page-elements/ConfiguratorErrorPagePropsProvider.d.ts +17 -0
  1450. package/dist/react-sdk/page-elements/ConfiguratorErrorPagePropsProvider.js +1 -0
  1451. package/dist/react-sdk/page-elements/configurator-error-page-props.d.ts +20 -0
  1452. package/dist/react-sdk/page-elements/configurator-error-page-props.js +1 -0
  1453. package/dist/react-sdk/page-elements/create-configuration-not-found-page.d.ts +15 -0
  1454. package/dist/react-sdk/page-elements/create-configuration-not-found-page.js +1 -0
  1455. package/dist/react-sdk/page-elements/create-configurator-error-page.d.ts +14 -0
  1456. package/dist/react-sdk/page-elements/create-configurator-error-page.js +1 -0
  1457. package/dist/react-sdk/page-elements/create-preset-ui.d.ts +9 -0
  1458. package/dist/react-sdk/page-elements/create-preset-ui.js +1 -0
  1459. package/dist/react-sdk/page-elements/index.d.ts +6 -0
  1460. package/dist/react-sdk/page-elements/index.js +1 -0
  1461. package/dist/react-sdk/scene-control-elements/AddEntityFabElement.d.ts +36 -0
  1462. package/dist/react-sdk/scene-control-elements/AddEntityFabElement.js +1 -0
  1463. package/dist/react-sdk/scene-control-elements/DeleteEntityFabElement.d.ts +44 -0
  1464. package/dist/react-sdk/scene-control-elements/DeleteEntityFabElement.js +1 -0
  1465. package/dist/react-sdk/scene-control-elements/NavigationHotspotElement.d.ts +38 -0
  1466. package/dist/react-sdk/scene-control-elements/NavigationHotspotElement.js +1 -0
  1467. package/dist/react-sdk/scene-control-elements/SelectionHotspotElement.d.ts +30 -0
  1468. package/dist/react-sdk/scene-control-elements/SelectionHotspotElement.js +1 -0
  1469. package/dist/react-sdk/scene-control-elements/ToolMenuFabElement.d.ts +30 -0
  1470. package/dist/react-sdk/scene-control-elements/ToolMenuFabElement.js +1 -0
  1471. package/dist/react-sdk/scene-control-elements/create-add-entity-fab.d.ts +9 -0
  1472. package/dist/react-sdk/scene-control-elements/create-add-entity-fab.js +1 -0
  1473. package/dist/react-sdk/scene-control-elements/create-delete-entity-fab.d.ts +9 -0
  1474. package/dist/react-sdk/scene-control-elements/create-delete-entity-fab.js +1 -0
  1475. package/dist/react-sdk/scene-control-elements/create-navigation-hotspot.d.ts +10 -0
  1476. package/dist/react-sdk/scene-control-elements/create-navigation-hotspot.js +1 -0
  1477. package/dist/react-sdk/scene-control-elements/create-selection-hotspot.d.ts +9 -0
  1478. package/dist/react-sdk/scene-control-elements/create-selection-hotspot.js +1 -0
  1479. package/dist/react-sdk/scene-control-elements/create-tool-menu-fab.d.ts +9 -0
  1480. package/dist/react-sdk/scene-control-elements/create-tool-menu-fab.js +1 -0
  1481. package/dist/react-sdk/scene-control-elements/index.d.ts +11 -0
  1482. package/dist/react-sdk/scene-control-elements/index.js +1 -0
  1483. package/dist/react-sdk/scene-control-elements/scene-control-tooltip-visibility.d.ts +5 -0
  1484. package/dist/react-sdk/scene-control-elements/scene-control-tooltip-visibility.js +1 -0
  1485. package/dist/react-sdk/session/NotAuthenticatedPage.d.ts +4 -0
  1486. package/dist/react-sdk/session/NotAuthenticatedPage.js +1 -1
  1487. package/dist/react-sdk/session/SessionServiceProvider.js +1 -1
  1488. package/dist/react-sdk/web-component/create-web-component.js +1 -1
  1489. package/dist/react-sdk/web-component/god-mode/god-mode-registry.d.ts +30 -0
  1490. package/dist/react-sdk/web-component/god-mode/god-mode-registry.js +1 -0
  1491. package/dist/react-sdk/web-component/god-mode/index.d.ts +1 -0
  1492. package/dist/react-sdk/web-component/god-mode/index.js +1 -0
  1493. package/dist/ui-sdk/icons/__generated/Lightbulb.d.ts +3 -0
  1494. package/dist/ui-sdk/icons/__generated/Lightbulb.js +1 -0
  1495. package/dist/ui-sdk/icons/__generated/XCircle.d.ts +3 -0
  1496. package/dist/ui-sdk/icons/__generated/XCircle.js +1 -0
  1497. package/dist/ui-sdk/icons/__generated/index.d.ts +4 -0
  1498. package/dist/ui-sdk/icons/__generated/index.js +1 -1
  1499. package/dist/ui-sdk/icons/icons-registry.js +1 -1
  1500. package/dist/ui-sdk/responsive-application/ResponsiveApplicationProvider.d.ts +9 -0
  1501. package/dist/ui-sdk/responsive-application/ResponsiveApplicationProvider.js +1 -1
  1502. package/dist/ui-sdk/responsive-application/index.d.ts +1 -0
  1503. package/dist/ui-sdk/responsive-application/responsive-state-store.d.ts +59 -0
  1504. package/dist/ui-sdk/responsive-application/responsive-state-store.js +1 -0
  1505. package/dist/ui-sdk/responsive-application/use-store-responsive-info.d.ts +7 -0
  1506. package/dist/ui-sdk/responsive-application/use-store-responsive-info.js +1 -0
  1507. package/dist/ui-sdk/theme/types.d.ts +5 -1
  1508. package/dist/webhook/builders/common.d.ts +5 -0
  1509. package/dist/webhook/builders/webhook-builder.js +1 -1
  1510. package/package.json +58 -36
  1511. package/schema/domain-spec.json +1341 -217
  1512. package/dist/application-spec/core/eval-to-constant.d.ts +0 -14
  1513. package/dist/application-spec/generate-application/code/templates/env-ci.d.ts +0 -1
  1514. package/dist/application-spec/generate-application/code/templates/env-ci.js +0 -25
  1515. package/dist/application-spec/generate-application/code/templates/env-example.d.ts +0 -1
  1516. package/dist/application-spec/generate-application/code/templates/env-example.js +0 -90
  1517. package/dist/application-spec/generate-application/code/templates/nvmrc.d.ts +0 -1
  1518. package/dist/application-spec/generate-application/code/templates/nvmrc.js +0 -2
  1519. package/dist/application-spec/generate-application/code/templates/package-json.d.ts +0 -10
  1520. package/dist/application-spec/generate-application/code/templates/package-json.js +0 -1
  1521. package/dist/application-spec/generate-application/code/templates/prettier-ignore.d.ts +0 -1
  1522. package/dist/application-spec/generate-application/code/templates/prettier-ignore.js +0 -6
  1523. package/dist/application-spec/generate-application/code/templates/private-assets-readme.d.ts +0 -1
  1524. package/dist/application-spec/generate-application/code/templates/private-assets-readme.js +0 -24
  1525. package/dist/application-spec/generate-application/code/templates/public-assets-readme.d.ts +0 -1
  1526. package/dist/application-spec/generate-application/code/templates/public-assets-readme.js +0 -24
  1527. package/dist/application-spec/generate-application/code/templates/readme.d.ts +0 -1
  1528. package/dist/application-spec/generate-application/code/templates/readme.js +0 -23
  1529. package/dist/application-spec/generate-application/code/templates/skills/agents-md.d.ts +0 -1
  1530. package/dist/application-spec/generate-application/code/templates/skills/agents-md.js +0 -2
  1531. package/dist/application-spec/generate-application/code/templates/webhook-implementation.d.ts +0 -1
  1532. package/dist/application-spec/generate-application/code/templates/webhook-implementation.js +0 -7
  1533. package/dist/configurator/common/frontend-analytics.d.ts +0 -46
  1534. package/dist/configurator/common/frontend-analytics.js +0 -1
  1535. package/dist/configurator/ui/phoenix-layout-elements/language/use-locale-options.d.ts +0 -4
  1536. package/dist/configurator/ui/phoenix-layout-elements/language/use-locale-options.js +0 -1
  1537. package/dist/configurator/ui/phoenix-layout-elements/measurements/use-measurements-visibility.d.ts +0 -4
  1538. package/dist/configurator/ui/phoenix-layout-elements/measurements/use-measurements-visibility.js +0 -1
  1539. package/dist/domain/actions/action-factory.d.ts +0 -10
  1540. package/dist/domain/actions/prepare-action-implementations.d.ts +0 -15
  1541. package/dist/domain/actions/prepare-action-implementations.js +0 -5
  1542. package/dist/domain/application/element-registration.d.ts +0 -110
  1543. package/dist/domain/application/element-registration.js +0 -1
  1544. package/dist/domain/application/handler-registration.d.ts +0 -34
  1545. package/dist/domain/application/handler-registration.js +0 -1
  1546. package/dist/domain/application/resolve-imported-transformers.d.ts +0 -23
  1547. package/dist/domain/application/resolve-imported-transformers.js +0 -1
  1548. package/dist/domain/application/resource-builder.d.ts +0 -13
  1549. package/dist/domain/application/resource-builder.js +0 -1
  1550. package/dist/domain/core/action.d.ts +0 -66
  1551. package/dist/domain/core/expression/memoize-expression.d.ts +0 -17
  1552. package/dist/domain/core/expression/prepare-domain-expressions.d.ts +0 -16
  1553. package/dist/domain/domain-context/recipe-system/recipes.d.ts +0 -55
  1554. package/dist/domain/domain-context/recipe-system/recipes.js +0 -1
  1555. package/dist/domain/project-modules/index.d.ts +0 -1
  1556. package/dist/domain/project-modules/index.js +0 -1
  1557. package/dist/domain/project-modules/project-modules.d.ts +0 -41
  1558. package/dist/domain/project-modules/project-modules.js +0 -1
  1559. package/dist/domain/relations/all-of-type-relation.d.ts +0 -30
  1560. package/dist/domain/relations/all-of-type-relation.js +0 -1
  1561. package/dist/domain/relations/component-factories.d.ts +0 -14
  1562. package/dist/domain/relations/component-factories.js +0 -1
  1563. package/dist/domain/relations/composed-of.d.ts +0 -12
  1564. package/dist/domain/relations/composed-of.js +0 -1
  1565. package/dist/domain/relations/direct-relation.d.ts +0 -27
  1566. package/dist/domain/relations/indirect-relation.d.ts +0 -78
  1567. package/dist/domain/relations/indirect-relation.js +0 -1
  1568. package/dist/domain/relations/reference-component.d.ts +0 -16
  1569. package/dist/domain/relations/reference-component.js +0 -1
  1570. package/dist/domain/relations/reference-field.d.ts +0 -7
  1571. package/dist/domain/relations/relation-factory.d.ts +0 -17
  1572. package/dist/domain/relations/relation-factory.js +0 -1
  1573. package/dist/domain/relations/relation-implementation.d.ts +0 -5
  1574. package/dist/domain/system-components/attribute-switch.d.ts +0 -8
  1575. package/dist/domain/system-components/attribute-switch.js +0 -1
  1576. package/dist/domain/system-components/canvas-config.d.ts +0 -87
  1577. package/dist/domain/system-components/child-entity-recipe-hierarchy.d.ts +0 -21
  1578. package/dist/domain/system-components/child-entity-recipe-hierarchy.js +0 -1
  1579. package/dist/domain/system-components/client-side-image.d.ts +0 -14
  1580. package/dist/domain/system-components/client-side-image.js +0 -1
  1581. package/dist/domain/system-components/common/angle-indicator-schema.d.ts +0 -292
  1582. package/dist/domain/system-components/common/angle-indicator-schema.js +0 -1
  1583. package/dist/domain/system-components/common/dimension-indicator-schema.d.ts +0 -607
  1584. package/dist/domain/system-components/custom-header.d.ts +0 -11
  1585. package/dist/domain/system-components/custom-header.js +0 -1
  1586. package/dist/domain/system-components/custom-price-footer.js +0 -1
  1587. package/dist/domain/system-components/custom-sidebar-footer.d.ts +0 -11
  1588. package/dist/domain/system-components/custom-sidebar-footer.js +0 -1
  1589. package/dist/domain/system-components/editable-angle-indicator.d.ts +0 -38
  1590. package/dist/domain/system-components/editable-angle-indicator.js +0 -1
  1591. package/dist/domain/system-components/editable-distance-dimension-indicator.d.ts +0 -42
  1592. package/dist/domain/system-components/editable-distance-dimension-indicator.js +0 -1
  1593. package/dist/domain/system-components/editable-offset-indicator.d.ts +0 -41
  1594. package/dist/domain/system-components/editable-offset-indicator.js +0 -1
  1595. package/dist/domain/system-components/editable-size-indicator.d.ts +0 -38
  1596. package/dist/domain/system-components/editable-size-indicator.js +0 -1
  1597. package/dist/domain/system-components/entity-header.d.ts +0 -22
  1598. package/dist/domain/system-components/entity-header.js +0 -1
  1599. package/dist/domain/system-components/finalize-component.js +0 -1
  1600. package/dist/domain/system-components/fit-selection-orthographic-camera-component.js +0 -1
  1601. package/dist/domain/system-components/fit-selection-perspective-camera-component.js +0 -1
  1602. package/dist/domain/system-components/horizontal-tabs.d.ts +0 -28
  1603. package/dist/domain/system-components/list-selector-dimension-indicator.d.ts +0 -30
  1604. package/dist/domain/system-components/list-selector-dimension-indicator.js +0 -1
  1605. package/dist/domain/system-components/navigation-steps.d.ts +0 -19
  1606. package/dist/domain/system-components/offset-indicator.js +0 -1
  1607. package/dist/domain/system-components/property-page.d.ts +0 -16
  1608. package/dist/domain/system-components/property-page.js +0 -1
  1609. package/dist/domain/system-components/replace-entity-recipe-hierarchy.d.ts +0 -21
  1610. package/dist/domain/system-components/replace-entity-recipe-hierarchy.js +0 -1
  1611. package/dist/domain/system-components/rotation-handle.d.ts +0 -53
  1612. package/dist/domain/system-components/save-template-thumbnail.d.ts +0 -14
  1613. package/dist/domain/system-components/save-template-thumbnail.js +0 -1
  1614. package/dist/domain/system-components/scene-entity-add-fab.d.ts +0 -32
  1615. package/dist/domain/system-components/scene-entity-add-fab.js +0 -1
  1616. package/dist/domain/system-components/scene-entity-animation.js +0 -1
  1617. package/dist/domain/system-components/scene-entity-delete-fab.d.ts +0 -19
  1618. package/dist/domain/system-components/scene-entity-delete-fab.js +0 -1
  1619. package/dist/domain/system-components/scene-entity-html-hotspot.d.ts +0 -27
  1620. package/dist/domain/system-components/scene-entity-html-hotspot.js +0 -1
  1621. package/dist/domain/system-components/scene-entity-navigation-hotspot.d.ts +0 -20
  1622. package/dist/domain/system-components/scene-entity-navigation-hotspot.js +0 -1
  1623. package/dist/domain/system-components/scene-entity-object-html-hotspot.d.ts +0 -31
  1624. package/dist/domain/system-components/scene-entity-object-html-hotspot.js +0 -1
  1625. package/dist/domain/system-components/scene-entity-select-hotspot.d.ts +0 -5
  1626. package/dist/domain/system-components/scene-entity-select-hotspot.js +0 -1
  1627. package/dist/domain/system-components/sketching-edit.d.ts +0 -28
  1628. package/dist/domain/system-components/sketching-edit.js +0 -1
  1629. package/dist/domain/system-components/summary-component.js +0 -1
  1630. package/dist/domain/system-components/tool-menu-fab.d.ts +0 -40
  1631. package/dist/domain/system-components/tool-menu-fab.js +0 -1
  1632. package/dist/domain/system-components/toolbar.d.ts +0 -13
  1633. package/dist/domain/system-components/toolbar.js +0 -1
  1634. package/dist/phoenix/commands/generate-project-files.d.ts +0 -6
  1635. package/dist/phoenix/commands/generate-project-files.js +0 -1
  1636. package/dist/phoenix/services/lingui.d.ts +0 -7
  1637. package/dist/phoenix/services/lingui.js +0 -1
  1638. package/dist/react-sdk/application-runtime/runtime/god-mode.d.ts +0 -19
  1639. package/dist/react-sdk/application-runtime/runtime/god-mode.js +0 -1
  1640. package/dist/react-sdk/loading-state/LoadingStateProvider.d.ts +0 -31
  1641. package/dist/react-sdk/loading-state/LoadingStateProvider.js +0 -1
  1642. package/dist/react-sdk/loading-state/loading-state-manager.d.ts +0 -32
  1643. package/dist/react-sdk/loading-state/loading-state-manager.js +0 -1
  1644. /package/dist/{domain/core/action.js → application-spec/core/expressions/relation-expression-params.js} +0 -0
  1645. /package/dist/application-spec/{core → enhanced-json}/eval-code-uses-self.d.ts +0 -0
  1646. /package/dist/application-spec/{core → enhanced-json}/eval-code-uses-self.js +0 -0
  1647. /package/dist/application-spec/{core → enhanced-json}/eval-to-constant.js +0 -0
  1648. /package/dist/{domain/relations/reference-field.js → application-spec/generate-application/runtime/spec-code/spec-code-module.js} +0 -0
  1649. /package/dist/{domain/relations/relation-implementation.js → application-spec/parse-application-files/spec/expressions/expression-read.js} +0 -0
  1650. /package/dist/domain/{actions → core/action}/action-factory.js +0 -0
  1651. /package/dist/domain/{relations → core/relation}/direct-relation.js +0 -0
  1652. /package/dist/domain/{core/expression → domain-runtime/spec}/memoize-expression.js +0 -0
  1653. /package/dist/domain/{core/expression → domain-runtime/spec}/prepare-domain-expressions.js +0 -0
  1654. /package/dist/domain/{system-components → extensions}/angle-indicator.d.ts +0 -0
  1655. /package/dist/domain/{system-components → extensions}/angle-indicator.js +0 -0
  1656. /package/dist/domain/{system-components → extensions}/autorotate-camera-component.d.ts +0 -0
  1657. /package/dist/domain/{system-components → extensions}/autorotate-camera-component.js +0 -0
  1658. /package/dist/domain/{system-components → extensions}/basic-sidebar-footer.d.ts +0 -0
  1659. /package/dist/domain/{system-components → extensions}/basic-sidebar-footer.js +0 -0
  1660. /package/dist/domain/{system-components → extensions}/camera-based-hidden-entity-object.d.ts +0 -0
  1661. /package/dist/domain/{system-components → extensions}/camera-based-hidden-entity-object.js +0 -0
  1662. /package/dist/domain/{system-components → extensions}/camera-based-hidden-entity.d.ts +0 -0
  1663. /package/dist/domain/{system-components → extensions}/camera-based-hidden-entity.js +0 -0
  1664. /package/dist/domain/{system-components → extensions}/canvas-config.js +0 -0
  1665. /package/dist/domain/{system-components → extensions}/canvas-custom-environment.d.ts +0 -0
  1666. /package/dist/domain/{system-components → extensions}/canvas-custom-environment.js +0 -0
  1667. /package/dist/domain/{system-components → extensions}/canvas-padding.d.ts +0 -0
  1668. /package/dist/domain/{system-components → extensions}/canvas-padding.js +0 -0
  1669. /package/dist/domain/{system-components → extensions}/canvas-preset-environment.d.ts +0 -0
  1670. /package/dist/domain/{system-components → extensions}/canvas-preset-environment.js +0 -0
  1671. /package/dist/domain/{system-components → extensions}/color-value.d.ts +0 -0
  1672. /package/dist/domain/{system-components → extensions}/color-value.js +0 -0
  1673. /package/dist/domain/{system-components → extensions}/common/dimension-indicator-schema.js +0 -0
  1674. /package/dist/domain/{system-components → extensions}/common/dimension-indicators.d.ts +0 -0
  1675. /package/dist/domain/{system-components → extensions}/common/dimension-indicators.js +0 -0
  1676. /package/dist/domain/{system-components → extensions}/common/editable-indicator-button-variant.d.ts +0 -0
  1677. /package/dist/domain/{system-components → extensions}/common/editable-indicator-button-variant.js +0 -0
  1678. /package/dist/domain/{system-components → extensions}/custom-price-footer.d.ts +0 -0
  1679. /package/dist/domain/{system-components → extensions}/dimension-indicator.d.ts +0 -0
  1680. /package/dist/domain/{system-components → extensions}/dimension-indicator.js +0 -0
  1681. /package/dist/domain/{system-components → extensions}/exit-tool-mode-fab.d.ts +0 -0
  1682. /package/dist/domain/{system-components → extensions}/exit-tool-mode-fab.js +0 -0
  1683. /package/dist/domain/{system-components → extensions}/finalize-action.d.ts +0 -0
  1684. /package/dist/domain/{system-components → extensions}/finalize-action.js +0 -0
  1685. /package/dist/domain/{system-components → extensions}/finalize-component.d.ts +0 -0
  1686. /package/dist/domain/{system-components → extensions}/fit-selection-orthographic-camera-component.d.ts +0 -0
  1687. /package/dist/domain/{system-components → extensions}/fit-selection-perspective-camera-component.d.ts +0 -0
  1688. /package/dist/domain/{system-components → extensions}/fixed-header.d.ts +0 -0
  1689. /package/dist/domain/{system-components → extensions}/fixed-header.js +0 -0
  1690. /package/dist/domain/{system-components → extensions}/floating-header.d.ts +0 -0
  1691. /package/dist/domain/{system-components → extensions}/floating-header.js +0 -0
  1692. /package/dist/domain/{system-components → extensions}/hidden-header.d.ts +0 -0
  1693. /package/dist/domain/{system-components → extensions}/hidden-header.js +0 -0
  1694. /package/dist/domain/{system-components → extensions}/hidden-sidebar-footer.d.ts +0 -0
  1695. /package/dist/domain/{system-components → extensions}/hidden-sidebar-footer.js +0 -0
  1696. /package/dist/domain/{system-components → extensions}/horizontal-tabs.js +0 -0
  1697. /package/dist/domain/{system-components → extensions}/multilingual-text-value.d.ts +0 -0
  1698. /package/dist/domain/{system-components → extensions}/multilingual-text-value.js +0 -0
  1699. /package/dist/domain/{system-components → extensions}/navigation-steps.js +0 -0
  1700. /package/dist/domain/{system-components → extensions}/offset-anchors.d.ts +0 -0
  1701. /package/dist/domain/{system-components → extensions}/offset-anchors.js +0 -0
  1702. /package/dist/domain/{system-components → extensions}/offset-indicator.d.ts +0 -0
  1703. /package/dist/domain/{system-components → extensions}/offset.d.ts +0 -0
  1704. /package/dist/domain/{system-components → extensions}/offset.js +0 -0
  1705. /package/dist/domain/{system-components → extensions}/other-action.d.ts +0 -0
  1706. /package/dist/domain/{system-components → extensions}/other-action.js +0 -0
  1707. /package/dist/domain/{system-components → extensions}/read-sidebar-footer.d.ts +0 -0
  1708. /package/dist/domain/{system-components → extensions}/read-sidebar-footer.js +0 -0
  1709. /package/dist/domain/{system-components → extensions}/rotatable.d.ts +0 -0
  1710. /package/dist/domain/{system-components → extensions}/rotatable.js +0 -0
  1711. /package/dist/domain/{system-components → extensions}/rotation-handle.js +0 -0
  1712. /package/dist/domain/{system-components → extensions}/scene-entity-animation.d.ts +0 -0
  1713. /package/dist/domain/{system-components → extensions}/scene-entity-control.d.ts +0 -0
  1714. /package/dist/domain/{system-components → extensions}/scene-entity-control.js +0 -0
  1715. /package/dist/domain/{system-components → extensions}/scene-entity-floor-object.d.ts +0 -0
  1716. /package/dist/domain/{system-components → extensions}/scene-entity-floor-object.js +0 -0
  1717. /package/dist/domain/{system-components → extensions}/scene-entity-wall-object.d.ts +0 -0
  1718. /package/dist/domain/{system-components → extensions}/scene-entity-wall-object.js +0 -0
  1719. /package/dist/domain/{system-components → extensions}/selectable-component.d.ts +0 -0
  1720. /package/dist/domain/{system-components → extensions}/selectable-component.js +0 -0
  1721. /package/dist/domain/{system-components → extensions}/sidebar-tabs.d.ts +0 -0
  1722. /package/dist/domain/{system-components → extensions}/sidebar-tabs.js +0 -0
  1723. /package/dist/domain/{system-components → extensions}/simple-summary.d.ts +0 -0
  1724. /package/dist/domain/{system-components → extensions}/simple-summary.js +0 -0
  1725. /package/dist/domain/{system-components → extensions}/size.d.ts +0 -0
  1726. /package/dist/domain/{system-components → extensions}/size.js +0 -0
  1727. /package/dist/domain/{system-components → extensions}/sketching-draw.d.ts +0 -0
  1728. /package/dist/domain/{system-components → extensions}/sketching-draw.js +0 -0
  1729. /package/dist/domain/{system-components → extensions}/summary-component.d.ts +0 -0
  1730. /package/dist/domain/{system-components → extensions}/text-value.d.ts +0 -0
  1731. /package/dist/domain/{system-components → extensions}/text-value.js +0 -0
  1732. /package/dist/domain/{system-components → extensions}/tool-controls.d.ts +0 -0
  1733. /package/dist/domain/{system-components → extensions}/tool-controls.js +0 -0
  1734. /package/dist/domain/{system-components → extensions}/universal-sidebar-footer.d.ts +0 -0
  1735. /package/dist/domain/{system-components → extensions}/universal-sidebar-footer.js +0 -0
  1736. /package/dist/domain/{system-components → extensions}/view-controls.d.ts +0 -0
  1737. /package/dist/domain/{system-components → extensions}/view-controls.js +0 -0
@@ -20,6 +20,13 @@ export interface EntityMetaContext {
20
20
  readonly success: false;
21
21
  readonly errors: readonly string[];
22
22
  };
23
+ /**
24
+ * Takes a screenshot of the entity from one of its views on the state it was read on and returns
25
+ * the label of the image; `null` when the view does not apply to the entity there.
26
+ */
27
+ readonly takeScreenshot: (source: EntityMetaSource, view: string) => Promise<{
28
+ readonly image: string;
29
+ } | null>;
23
30
  }
24
31
  /** One reason a dry-run reports for a change that cannot be made; a violation can sit on a virtual entity. */
25
32
  interface DryRunError {
@@ -30,7 +37,8 @@ interface DryRunError {
30
37
  /**
31
38
  * The value of an entity's `meta` field: its built-ins, resolved lazily against the state the entity
32
39
  * was read on. `childRecipes` and `replaceRecipes` list the manifest's recipe groups of their kind
33
- * that are active on the entity there; each options edge lists the choices of its field there, or `null` when its component is not active.
40
+ * that are active on the entity there; each options edge lists the choices of its field there, or `null` when its component is not active;
41
+ * `screenshot` renders the entity there.
34
42
  */
35
43
  export declare const createEntityMeta: (source: EntityMetaSource, context: EntityMetaContext) => {
36
44
  childRecipes: () => {
@@ -85,5 +93,10 @@ export declare const createEntityMeta: (source: EntityMetaSource, context: Entit
85
93
  } | null;
86
94
  }[];
87
95
  }[];
96
+ screenshot: ({ view }: {
97
+ readonly view: string;
98
+ }) => Promise<{
99
+ readonly image: string;
100
+ } | null>;
88
101
  };
89
102
  export {};
@@ -1 +1 @@
1
- import{findAssistantFieldOptions as e,findAssistantRecipeGroups as t,modifyEntityUpdateTag as i,prepareAssistantRecipeUpdates as r,readAssistantFieldOptions as n,readAssistantRecipeGroup as s,systemUpdateFactory as a}from"#package/domain";import{readSideEffects as o}from"./side-effects.js";let d=e=>({ok:!1,root:null,changedEntities:[],deletedEntityIds:[],sideEffects:[],errors:e}),l=(e,{state:t},{recipes:i,prepareStateEmission:r,find$Entity:n})=>{let{validity:s,state:a,updates:l}=r(e,t,"committed");if(s.valid){let e=new Map(t.entities.map(e=>[e.id,e])),r=new Set(a.entities.map(e=>e.id));return{ok:!0,root:n(a.rootEntityId,a),changedEntities:a.entities.filter(t=>e.get(t.id)!==t).flatMap(e=>n(e.id,a)??[]),deletedEntityIds:t.entities.map(e=>e.id).filter(e=>!r.has(e)),sideEffects:o(l,i.resolveLocalizable),errors:[]}}return d("uncaught"===s.severity?[{type:"uncaught",entityId:null,message:s.error.message}]:s.entityViolations.filter(({violation:e})=>e.severity===s.severity).map(({entityId:e,violation:t})=>({type:t.type,entityId:e,message:void 0===t.message?null:i.resolveLocalizable(t.message)})))};export const createEntityMeta=(o,c)=>{let p=e=>()=>t(c.manifest,e,o.entity.type).flatMap(t=>{let i=s(e,t,o.entity.id,o.state,c.recipes);return i?[((e,t,i)=>{let{group:n,label:s,description:a,recipes:o}=e,{resolveLocalizable:c}=i.recipes;return{groupId:n.groupId,name:void 0===s?n.instanceName:c(s),description:n.description??(void 0===a?null:c(a)),recipes:o.map(n=>((e,t,i,n)=>{let{key:s,item:a}=e,{resolveLocalizable:o}=n.recipes;return{key:s,name:o(a.title),description:void 0===a.description?null:o(a.description),imageUrl:void 0===a.thumbnailUrl?null:o(a.thumbnailUrl),dryRun:()=>t.group.dryRuns?((e,t,i,n)=>{let{updates:s,error:a}=((e,t,{entity:i,state:n},{recipes:s})=>{try{return{updates:r(e,t,i.id,n,s),error:void 0}}catch(e){if("child"===t.target.kind)throw e;return{updates:void 0,error:e instanceof Error?e.message:String(e)}}})(e,t,i,n);return void 0===s?d([{type:"uncaught",entityId:null,message:a}]):l(s,i,n)})(e,t,i,n):null}})(n,e,t,i))}})(i,o,c)]:[]});return{...Object.fromEntries(e(c.manifest,o.entity.type).map(e=>[e.edgeName,()=>n(e,o.entity.id,o.state,c.recipes)?.map(t=>({...t,dryRun:()=>e.dryRuns?(({field:e},{value:t},r,n)=>{let{entity:s}=r,o=Object.entries(Object.entries(n.manifest.writableFields??{}).find(([e])=>e===s.type)?.[1]??{}).find(([t])=>t===e)?.[1];if(void 0===o)throw Error(`The options of "${e}" on "${s.id}" cannot be dry-run: the schema lists them, but the configurator has no writable field "${e}" on ${s.type}. Regenerate the application so the schema matches the configurator.`);let c=r.state.entities.find(e=>e.id===s.id),p={[o]:t},u=c?n.validateEntity({...c,...p}):{success:!0};return u.success?l([a.DomainEntityModification({entityId:s.id,stateDelta:p,updateTag:i})],r,n):d([{type:"uncaught",entityId:s.id,message:`Writing ${JSON.stringify(t)} to "${e}" would make "${s.id}" an invalid ${s.type}: ${u.errors.join("; ")}.${e===o?"":` The message names the stored property: ${e} is stored as ${o}.`} The option comes from the configurator and cannot be corrected from here, so do not write it.`}])})(e,t,o,c):null}))??null])),childRecipes:p("child"),replaceRecipes:p("replace")}};
1
+ import{findAssistantFieldOptions as e,findAssistantRecipeGroups as t,modifyEntityUpdateTag as i,prepareAssistantRecipeUpdates as r,readAssistantFieldOptions as n,readAssistantRecipeGroup as o,systemUpdateFactory as s}from"#package/domain";import{readSideEffects as a}from"./side-effects.js";let d=e=>({ok:!1,root:null,changedEntities:[],deletedEntityIds:[],sideEffects:[],errors:e}),l=(e,{state:t},{recipes:i,prepareStateEmission:r,find$Entity:n})=>{let{validity:o,state:s,updates:l}=r(e,t,"committed");if(o.valid){let e=new Map(t.entities.map(e=>[e.id,e])),r=new Set(s.entities.map(e=>e.id));return{ok:!0,root:n(s.rootEntityId,s),changedEntities:s.entities.filter(t=>e.get(t.id)!==t).flatMap(e=>n(e.id,s)??[]),deletedEntityIds:t.entities.map(e=>e.id).filter(e=>!r.has(e)),sideEffects:a(l,i.resolveLocalizable),errors:[]}}return d("uncaught"===o.severity?[{type:"uncaught",entityId:null,message:o.error.message}]:o.entityViolations.filter(({violation:e})=>e.severity===o.severity).map(({entityId:e,violation:t})=>({type:t.type,entityId:e,message:void 0===t.message?null:i.resolveLocalizable(t.message)})))};export const createEntityMeta=(a,u)=>{let c=e=>()=>t(u.manifest,e,a.entity.type).flatMap(t=>{let i=o(e,t,a.entity.id,a.state,u.recipes);return i?[((e,t,i)=>{let{group:n,label:o,description:s,recipes:a}=e,{resolveLocalizable:u}=i.recipes;return{groupId:n.groupId,name:void 0===o?n.instanceName:u(o),description:n.description??(void 0===s?null:u(s)),recipes:a.map(n=>((e,t,i,n)=>{let{key:o,item:s}=e,{resolveLocalizable:a}=n.recipes;return{key:o,name:a(s.title),description:void 0===s.description?null:a(s.description),imageUrl:void 0===s.thumbnailUrl?null:a(s.thumbnailUrl),dryRun:()=>t.group.dryRuns?((e,t,i,n)=>{let{updates:o,error:s}=((e,t,{entity:i,state:n},{recipes:o})=>{try{return{updates:r(e,t,i.id,n,o),error:void 0}}catch(e){if("child"===t.target.kind)throw e;return{updates:void 0,error:e instanceof Error?e.message:String(e)}}})(e,t,i,n);return void 0===o?d([{type:"uncaught",entityId:null,message:s}]):l(o,i,n)})(e,t,i,n):null}})(n,e,t,i))}})(i,a,u)]:[]});return{...Object.fromEntries(e(u.manifest,a.entity.type).map(e=>[e.edgeName,()=>n(e,a.entity.id,a.state,u.recipes)?.map(t=>({...t,dryRun:()=>e.dryRuns?(({field:e},{value:t},r,n)=>{let{entity:o}=r,a=Object.entries(Object.entries(n.manifest.writableFields??{}).find(([e])=>e===o.type)?.[1]??{}).find(([t])=>t===e)?.[1];if(void 0===a)throw Error(`The options of "${e}" on "${o.id}" cannot be dry-run: the schema lists them, but the configurator has no writable field "${e}" on ${o.type}. This is a fault in the configurator, not in your request. Tell the user this is not available.`);let u=r.state.entities.find(e=>e.id===o.id);if(!u)throw Error(`The options of "${e}" on "${o.id}" cannot be dry-run: entity "${o.id}" does not exist. It may have been deleted by an earlier operation or field. Query the current entities and use an id they return.`);let c={[a]:t},p=n.validateEntity({...u,...c});return p.success?l([s.DomainEntityModification({entityId:o.id,stateDelta:c,updateTag:i})],r,n):d([{type:"uncaught",entityId:o.id,message:`Writing ${JSON.stringify(t)} to "${e}" would make "${o.id}" an invalid ${o.type}: ${p.errors.join("; ")}. The option comes from the configurator and cannot be corrected from here, so do not write it.`}])})(e,t,a,u):null}))??null])),childRecipes:c("child"),replaceRecipes:c("replace"),screenshot:({view:e})=>u.takeScreenshot(a,e)}};
@@ -1,13 +1,35 @@
1
1
  import { type ExecutionResult } from 'graphql';
2
2
  import { type Localizable } from '@salsita-ai/common/utils';
3
- import { type $DomainEntity, type DomainContextSelectors, type DomainEntity, type DomainServicesSelectors, type DomainState, type SpecSelectors, type StateUpdateEmission } from '#package/domain';
3
+ import { type $DomainEntity, type AgentScreenshotComponent, type ComponentSnapshot, type DomainContextSelectors, type DomainEntity, type DomainServicesSelectors, type DomainState, type InitializationGeneration, type SessionAssistantSetup, type SpecSelectors, type StateUpdateEmission } from '#package/domain';
4
4
  /** One single-operation GraphQL document with its own variables, as executed by {@link GraphQLSystem}. */
5
5
  export interface GraphQLOperation {
6
6
  readonly document: string;
7
7
  readonly variables?: Readonly<Record<string, unknown>>;
8
8
  readonly operationName?: string;
9
9
  }
10
+ /** A screenshot an operation took, under the label its `image` field returned. */
11
+ export interface GraphQLScreenshot {
12
+ readonly entityId: string;
13
+ readonly view: string;
14
+ /** The id the server stored the picture under, which the tool result references it by. */
15
+ readonly imageId: string;
16
+ }
10
17
  export interface GraphQLSystemContext {
18
+ /** The assistant the initialized session runs: the operations are validated and executed against its schema. */
19
+ readonly getAssistantSetup: () => SessionAssistantSetup;
20
+ /**
21
+ * Renders the picture an `agentScreenshot` component of a state declares, behind every export
22
+ * already queued, as a JPEG or PNG blob; `null` from an executor that renders no pictures. One of
23
+ * the two async steps of an execution, and the only one that needs a canvas.
24
+ */
25
+ readonly renderScreenshot: (component: ComponentSnapshot<AgentScreenshotComponent>, state: AnyDomainState) => Promise<Blob | null>;
26
+ /**
27
+ * Stores a rendered screenshot in the assistant thread on the server and resolves with the id the
28
+ * tool result references it by. The other async step of an execution, run right after each render.
29
+ */
30
+ readonly uploadScreenshot: (image: Blob) => Promise<{
31
+ readonly imageId: string;
32
+ }>;
11
33
  readonly specSelectors: SpecSelectors;
12
34
  readonly domainContextSelectors: DomainContextSelectors;
13
35
  readonly domainServicesSelectors: DomainServicesSelectors;
@@ -23,6 +45,8 @@ type AnyStateUpdateEmission = StateUpdateEmission<DomainEntity<string>, Record<s
23
45
  export interface PreparedOperation {
24
46
  readonly result: ExecutionResult;
25
47
  readonly emissions: readonly AnyStateUpdateEmission[];
48
+ /** The screenshots the operation took, by label, in the order they were taken. */
49
+ readonly screenshots: ReadonlyMap<string, GraphQLScreenshot>;
26
50
  }
27
51
  /**
28
52
  * What {@link GraphQLSystem.execute} returns: the results of the operations as prepared from the
@@ -37,6 +61,14 @@ export interface GraphQLExecution {
37
61
  readonly message?: string;
38
62
  /** What the configurator did, or would do, beyond what the operations asked for, in applied order. */
39
63
  readonly sideEffects: readonly string[];
64
+ /**
65
+ * The state the operations prepared, when it was committed or held for the user's approval; a
66
+ * held state is the one committed if the user approves. A caller can recognize its own change in
67
+ * the undo history by it. It stays in the browser: nothing that leaves it may carry the state.
68
+ */
69
+ readonly preparedState?: AnyDomainState;
70
+ /** The screenshots the operations took, by the label their `image` field returned, in the order they were taken. */
71
+ readonly screenshots: ReadonlyMap<string, GraphQLScreenshot>;
40
72
  }
41
73
  /**
42
74
  * Resolves a localizable value, or each item of a list of them, to a string in the current locale.
@@ -51,10 +83,12 @@ export declare const localize: (value: unknown, resolveLocalizable: (message: Lo
51
83
  export declare class GraphQLSystem {
52
84
  private readonly _context;
53
85
  /**
54
- * Compiles the manifest's SDL and checks the schema's semantic rules, once per SDL text, so a schema
55
- * that parses but is not valid GraphQL fails every operation with an error result.
86
+ * Compiles the execution schema of the manifest's SDL and checks its semantic rules, once per SDL
87
+ * text, so a schema that parses but is not valid GraphQL fails every operation with an error result.
56
88
  */
57
89
  private readonly _selectSchema;
90
+ /** Parses the manifest's lens definitions, which the builder has validated, once per text. */
91
+ private readonly _selectLenses;
58
92
  /**
59
93
  * Query fields call the root resolvers; entity fields read the stored field or expression their
60
94
  * GraphQL name maps to. Rebuilt only when the manifest's field sources change.
@@ -67,6 +101,17 @@ export declare class GraphQLSystem {
67
101
  /** Root field resolvers, called by the executor with the field arguments and the operation context. */
68
102
  private readonly _rootValue;
69
103
  private readonly _resolveType;
104
+ private _generation;
105
+ /**
106
+ * The picture of an entity of a state from one `agentScreenshot` view, as a blob of the view's
107
+ * file format; `null` when the view is not attached to the entity there or nothing renders it.
108
+ */
109
+ private readonly _renderScreenshot;
110
+ /**
111
+ * Starts a new generation for a new configuration load. Screenshots wait on renders that take
112
+ * seconds, so an execution can outlive its configuration: one started under the ended generation
113
+ * renders no more screenshots and commits nothing, not even on a conflict retry.
114
+ */
70
115
  initialize: () => void;
71
116
  /**
72
117
  * Runs one mutation field against the working state: its implementation computes updates from the
@@ -77,26 +122,44 @@ export declare class GraphQLSystem {
77
122
  */
78
123
  private readonly _resolveMutation;
79
124
  private readonly _runMutation;
125
+ /**
126
+ * Takes a screenshot once every one asked for before it in the execution has been taken, so they
127
+ * render in document order, and uploads it as soon as it has rendered. A failure nulls only its
128
+ * own field and fails nothing else: the user kept changing the configuration, rendering failed,
129
+ * or the server did not store the picture.
130
+ */
131
+ private readonly _takeScreenshot;
80
132
  private readonly _setup;
133
+ /**
134
+ * Parses, validates and executes one operation document. Validation adds the rule against
135
+ * introspection to the standard ones: the agent reads the schema from its prompt, and the schema
136
+ * operations run against is the widened execution schema, which is not the one to describe.
137
+ */
138
+ private readonly _run;
81
139
  /**
82
140
  * Runs the operations in order through one working state that starts at `originalState`: a query
83
141
  * reads the current working state, and each mutation field advances it with its own emission.
84
- * Nothing is committed. The first operation that fails stops the list; every later one gets a
85
- * "not run" error instead.
142
+ * The closing braces an operation's document left off are added, then the lenses it spreads are injected into it. Nothing is committed. The first operation that fails stops the list; every later one gets a
143
+ * "not run" error instead. Screenshots render only while `generation`, the current one by
144
+ * default, is active.
86
145
  */
87
- prepare: (originalState: AnyDomainState, operations: readonly GraphQLOperation[]) => Promise<readonly PreparedOperation[]>;
146
+ prepare: (originalState: AnyDomainState, operations: readonly GraphQLOperation[], generation?: InitializationGeneration) => Promise<readonly PreparedOperation[]>;
88
147
  /**
89
148
  * The side effects of prepared operations: the hints of every update of their emissions, as the
90
149
  * agent is told them, in applied order.
91
150
  */
92
151
  readSideEffects: (prepared: readonly PreparedOperation[]) => readonly string[];
152
+ /** The screenshots of prepared operations, by label, in the order they were taken. */
153
+ readScreenshots: (prepared: readonly PreparedOperation[]) => ReadonlyMap<string, GraphQLScreenshot>;
93
154
  private readonly _prepareAndCommit;
94
155
  /**
95
156
  * Prepares the operations from the committed state and commits their changes as one emission,
96
157
  * synthesized from every field emission of the list: one undo step, `onBeforeCommit` hooks run once. Nothing is committed when an operation fails or
97
158
  * none changes anything. When the committed state changed meanwhile, the operations are prepared
98
159
  * once more from the new committed state; their earlier updates are never replayed, since they
99
- * were computed from a state that is gone.
160
+ * were computed from a state that is gone. When another configuration was loaded meanwhile,
161
+ * nothing is committed or prepared again: the operations were written for the configuration
162
+ * that was left.
100
163
  */
101
164
  execute: (operations: readonly GraphQLOperation[]) => Promise<GraphQLExecution>;
102
165
  }
@@ -1 +1 @@
1
- import{GraphQLError as e,buildSchema as t,defaultFieldResolver as i,getNamedType as o,graphql as a,validateSchema as n}from"graphql";import{assertExistence as r,createSelector as s,isMessageDescriptor as l,isMultilingualString as c}from"@salsita-ai/common/utils";import{DomainEntityIdSchema as h,findAssistantMutation as d}from"#package/domain";import{createEntityMeta as m}from"./entity-meta.js";import{readSideEffects as p}from"./side-effects.js";let f={errors:[new e('No assistant manifest in the application spec. The GraphQL schema is generated from the "assistant" section. Add an "assistant" section to a spec file to expose a schema.')]},u={errors:[new e("The configuration is not loaded yet, so there is no state to query. Run the query again once the configurator has finished loading.")]},y=new RegExp(h.pattern),g=e=>"object"==typeof e&&null!==e&&"type"in e&&"string"==typeof e.type&&"id"in e&&"string"==typeof e.id,v=(e,t)=>"object"==typeof e&&null!==e?Reflect.get(e,t):void 0,S=e=>e instanceof Error?e.message:String(e),x=e=>/[.!?]$/.test(e)?e:`${e}.`,_=e=>"object"==typeof e&&null!==e&&Object.getPrototypeOf(e)===Object.prototype,w=(e,t)=>{let i=_(e)?e._raw:void 0;if(g(i))return i;if(!Array.isArray(e)&&!_(e))return e;if(t.has(e))throw Error("The value contains itself. Return ids or copies of the values instead of objects that reference each other.");let o=new Set([...t,e]);return Array.isArray(e)?e.map(e=>w(e,o)):Object.fromEntries(Object.entries(e).map(([e,t])=>[e,w(t,o)]))};export const localize=(e,t)=>Array.isArray(e)?e.map(e=>localize(e,t)):"string"==typeof e||l(e)||c(e)?t(e):e;let E=t=>new e(`The GraphQL schema generated from the "assistant" manifest is invalid: ${x(t)} Regenerate the application so the schema is rebuilt from the current spec.`),$=e=>(e.errors?.length??0)>0,b=t=>({errors:[new e(`Not run: operation ${t+1} failed, so the operations after it were skipped and no change of the list takes effect. Fix the failing operation and send the whole list again.`)]});export class GraphQLSystem{_context;_selectSchema=s([s.leaf(e=>e)],e=>{try{let i=t(e),o=n(i);return o.length>0?E(o.map(e=>e.message).join(" ")):i}catch(e){return E(S(e))}});_selectFieldResolver=s([s.leaf(e=>e)],t=>(a,n,r,s)=>{if(s.parentType===s.schema.getQueryType())return i(a,n,r,s);if(s.parentType===s.schema.getMutationType())return this._resolveMutation(s.fieldName,String(s.path.key),n,r);if(!g(a))return i(a,n,r,s);if("meta"===s.fieldName){let e;return m({entity:a,state:("object"==typeof(e=v(a,"_state"))&&null!==e&&"entities"in e&&"rootEntityId"in e?e:void 0)??r.state},{manifest:r.manifest,recipes:this._recipeContext(),prepareStateEmission:(e,t,i)=>this._context.domainContextSelectors.getStoreSystem().prepareStateEmission(e,t,i),find$Entity:(e,t)=>this._find$Entity(e,t),validateEntity:e=>this._context.domainContextSelectors.getDomain().validateEntity(e)})}let{source:l,localized:c}=t[s.parentType.name]?.[s.fieldName]??{source:s.fieldName},h=((t,i)=>{try{return v(t,i)}catch(o){throw new e(`Expression "${i}" failed on ${g(t)?t.id:"an entity"}: ${x(S(o))} The expression threw while the query read it; fix the expression or the configuration state it reads.`,{originalError:o instanceof Error?o:void 0})}})(a,l);return c?localize(h,this._context.domainServicesSelectors.getResolveLocalizable()):l.startsWith("$")&&"JSON"===o(s.returnType).name?((t,i,o)=>{try{return w(o,new Set)}catch(o){throw new e(`Expression "${i}" returned a value that is not plain serializable data on ${g(t)?t.id:"an entity"}: ${x(S(o))} A JSON field can only return data that serializes to JSON.`,{originalError:o instanceof Error?o:void 0})}})(a,l,h):h});constructor(e){this._context=e}_get$Entity=(e,t)=>this._context.domainContextSelectors.getDomain().get$Entity(e,t);_find$Entity=(e,t)=>this._context.domainContextSelectors.getDomain().getEntity(e,t)?this._get$Entity(e,t):null;_recipeContext=()=>({componentReader:this._context.domainContextSelectors.getComponentReader(),recipeCooker:this._context.domainContextSelectors.getRecipeCookerSystem(),resolveLocalizable:this._context.domainServicesSelectors.getResolveLocalizable()});_rootValue={root:(e,{state:t})=>this._get$Entity(t.rootEntityId,t),entities:({ids:t},{state:i})=>{if(null==t)return i.entities.map(e=>this._get$Entity(e.id,i));var o=i.rootEntityId;let a=t.filter(e=>!y.test(e));if(a.length>0)throw new e(`${a.map(e=>`"${e}"`).join(", ")} ${1===a.length?"is not an entity id":"are not entity ids"}. Entity ids have the form "<Type>-<number>", e.g. "${o}". Use ids as returned by the "id" field.`);return t.map(e=>y.test(e)?this._find$Entity(e,i):null)},selectedEntity:(e,{state:t})=>this._find$Entity(this._context.domainContextSelectors.getNavigationSystem().getActiveSelectionState(t),t),navigation:(e,{state:t})=>{let i=this._context.domainContextSelectors.getNavigationSystem();return{navigationState:i.getActiveNavigationState(t),viewState:i.getActiveViewState(t),toolState:i.getActiveToolState(t)}}};_resolveType=e=>g(e)?e.type:void 0;initialize=()=>{};_resolveMutation=(t,i,o,a)=>{if(void 0!==a.failedMutationField)throw new e(`Not run: the earlier field "${a.failedMutationField}" of this operation failed, so "${i}" was skipped and no change of the operation takes effect. Fix the failing field and send the operation again.`);try{return this._runMutation(t,o,a)}catch(e){throw a.failedMutationField=i,e}};_runMutation=(t,i,o)=>{let a=d(t,o.manifest);if(!a)throw new e(`The schema declares the mutation "${t}", but the configurator has no implementation for it. Regenerate the application so the schema matches the configurator.`);let n=o.state,r=a.implementation(i,n,{manifest:o.manifest,action:this._context.domainContextSelectors.getActionSystem().createContext(n),resolveLocalizable:this._context.domainServicesSelectors.getResolveLocalizable()});if(r.updates.length>0){let i=this._context.domainContextSelectors.getStoreSystem().prepareStateEmission(r.updates,n,"committed");if(!i.validity.valid)throw new e(`The changes of "${t}" were not applied, because the resulting configuration is invalid: ${(e=>{if("uncaught"===e.severity)return`validating it threw: ${x(S(e.error))}`;let t=[...new Set(e.entityViolations.filter(({violation:t})=>t.severity===e.severity).map(({entityId:e})=>e))];return`it has ${e.severity} violations on ${t.join(", ")}.`})(i.validity)} Change the request so the configuration stays valid.`);o.emissions.push(i),o.state=i.state}return r.readResult({previousState:n,state:o.state})};_setup=()=>{let t=this._context.specSelectors.getAssistant();if(!t)return{ready:!1,result:f};let i=this._selectSchema(t.sdl);return i instanceof e?{ready:!1,result:{errors:[i]}}:{ready:!0,assistant:t,schema:i,fieldResolver:this._selectFieldResolver(t.fields)}};prepare=async(e,t)=>{let i,o=this._setup();if(!o.ready)return t.map(()=>({result:o.result,emissions:[]}));let n={manifest:o.assistant,state:e,emissions:[],failedMutationField:void 0},r=[];for(let[e,s]of t.entries())if(void 0===i){let t=n.emissions.length;n.failedMutationField=void 0;let l=await a({schema:o.schema,source:s.document,rootValue:this._rootValue,contextValue:n,variableValues:s.variables,operationName:s.operationName,fieldResolver:o.fieldResolver,typeResolver:this._resolveType});r.push({result:l,emissions:n.emissions.slice(t)}),$(l)&&(i=e)}else r.push({result:b(i),emissions:[]});return r};readSideEffects=e=>{let t=this._context.domainServicesSelectors.getResolveLocalizable();return e.flatMap(({emissions:e})=>e.flatMap(e=>p(e.updates,t)))};_prepareAndCommit=async e=>{let t,i,o,a=this._context.domainContextSelectors.getStoreSystem(),n=await this.prepare(a.stateSlices.committed.value.state,e),s=n.map(({result:e})=>e),l=this.readSideEffects(n),c=n.flatMap(e=>e.emissions);return s.some($)||0===c.length?{results:s,sideEffects:l,outcome:"none"}:{results:s,sideEffects:l,outcome:a.commitPrepared((t=r(c[0]),i=r(c[c.length-1]),o=c.some(e=>void 0!==e.transformationLog),{kind:"committed",previousState:t.previousState,state:i.state,updates:c.flatMap(e=>e.updates),validity:i.validity,transformationLog:o?c.flatMap(e=>e.transformationLog??[]):void 0}))}};execute=async e=>{if(!this._context.domainContextSelectors.getStoreSystem().isInitialized)return{results:e.map(()=>u),committed:!1,sideEffects:[]};let t=await this._prepareAndCommit(e),{results:i,sideEffects:o,outcome:a}="conflict"===t.outcome?await this._prepareAndCommit(e):t;return"committed"===a?{results:i,committed:!0,sideEffects:o}:"held"===a?{results:i,committed:!1,message:"The changes were not committed yet: the application held them, usually to ask the user for approval. They may still be applied once the user approves, and the next turn shows whether they were. Do not send the operations again.",sideEffects:o}:"conflict"===a?{results:i,committed:!1,message:"The changes were not committed, because the configuration changed while they were being applied. The results describe a state that was discarded. Query the current configuration and send the operations again if they still make sense.",sideEffects:o}:{results:i,committed:!1,sideEffects:o}}}
1
+ import{GraphQLError as e,NoSchemaIntrospectionCustomRule as t,defaultFieldResolver as i,execute as n,getNamedType as o,parse as r,specifiedRules as s,validate as a,validateSchema as l}from"graphql";import{assertExistence as c,createSelector as h,isMessageDescriptor as d,isMultilingualString as u}from"@salsita-ai/common/utils";import{DomainEntityIdSchema as f,agentScreenshotComponent as m,createAssistantExecutionSchema as p,findAssistantMutation as g}from"#package/domain";import{ExportBusyError as y}from"../export-system/export-busy-error.js";import{closeUnclosedBraces as v}from"./close-unclosed-braces.js";import{createEntityMeta as S}from"./entity-meta.js";import{injectAssistantLenses as _}from"./inject-assistant-lenses.js";import{readSideEffects as w}from"./side-effects.js";let x={errors:[new e("The configurator does not provide this request. This is a fault in the configurator, not in your request. Tell the user this is not available.")]},$={errors:[new e("The configuration is not loaded yet, so there is no state to query. Run the query again once the configurator has finished loading.")]},b="Not taken: another configuration was loaded while this request ran. Query the current configuration before asking for screenshots again.",E=new RegExp(f.pattern),T=[...s,t],C=e=>"object"==typeof e&&null!==e&&"type"in e&&"string"==typeof e.type&&"id"in e&&"string"==typeof e.id,M=(e,t)=>"object"==typeof e&&null!==e?Reflect.get(e,t):void 0,j=e=>e instanceof Error?e.message:String(e),k=e=>/[.!?]$/.test(e)?e:`${e}.`,R=e=>"object"==typeof e&&null!==e&&Object.getPrototypeOf(e)===Object.prototype,N=(e,t)=>{let i=R(e)?e._raw:void 0;if(C(i))return i;if(!Array.isArray(e)&&!R(e))return e;if(t.has(e))throw Error("The value contains itself.");let n=new Set([...t,e]);return Array.isArray(e)?e.map(e=>N(e,n)):Object.fromEntries(Object.entries(e).map(([e,t])=>[e,N(t,n)]))};export const localize=(e,t)=>Array.isArray(e)?e.map(e=>localize(e,t)):"string"==typeof e||d(e)||u(e)?t(e):e;let A=t=>new e(`The configurator cannot handle this request: ${k(t)} This is a fault in the configurator, not in your request. Tell the user this is not available.`),q="SCREENSHOT_NOT_TAKEN",z=(t,i)=>new e(t,{originalError:i,extensions:{code:q}}),L=e=>(e.errors??[]).some(e=>e.extensions.code!==q),F=t=>({errors:[new e(`Not run: operation ${t+1} failed, so the operations after it were skipped and no change of the list takes effect. Fix the failing operation and send the whole list again.`)]});export class GraphQLSystem{_context;_selectSchema=h([h.leaf(e=>e)],e=>{try{let t=p(e),i=l(t);return i.length>0?A(i.map(e=>e.message).join(" ")):t}catch(e){return A(j(e))}});_selectLenses=h([h.leaf(e=>e)],e=>r(e));_selectFieldResolver=h([h.leaf(e=>e)],t=>(n,r,s,a)=>{if(a.parentType===a.schema.getQueryType())return i(n,r,s,a);if(a.parentType===a.schema.getMutationType())return this._resolveMutation(a.fieldName,String(a.path.key),r,s);if(!C(n))return i(n,r,s,a);if("meta"===a.fieldName){let e;return S({entity:n,state:("object"==typeof(e=M(n,"_state"))&&null!==e&&"entities"in e&&"rootEntityId"in e?e:void 0)??s.state},{manifest:s.manifest,recipes:this._recipeContext(),prepareStateEmission:(e,t,i)=>this._context.domainContextSelectors.getStoreSystem().prepareStateEmission(e,t,i),find$Entity:(e,t)=>this._find$Entity(e,t),validateEntity:e=>this._context.domainContextSelectors.getDomain().validateEntity(e),takeScreenshot:(e,t)=>this._takeScreenshot(e,t,s)})}let{source:l,localized:c}=t[a.parentType.name]?.[a.fieldName]??{source:a.fieldName},h=((t,i)=>{try{return M(t,i)}catch(n){throw new e(`Expression "${i}" failed on ${C(t)?t.id:"an entity"}: ${k(j(n))} This is a fault in the configurator, not in your request. Tell the user this is not available.`,{originalError:n instanceof Error?n:void 0})}})(n,l);return c?localize(h,this._context.domainServicesSelectors.getResolveLocalizable()):l.startsWith("$")&&"JSON"===o(a.returnType).name?((t,i,n)=>{try{return N(n,new Set)}catch(n){throw new e(`Expression "${i}" returned a value that is not plain serializable data on ${C(t)?t.id:"an entity"}: ${k(j(n))} This is a fault in the configurator, not in your request. Tell the user this is not available.`,{originalError:n instanceof Error?n:void 0})}})(n,l,h):h});constructor(e){this._context=e}_get$Entity=(e,t)=>this._context.domainContextSelectors.getDomain().get$Entity(e,t);_find$Entity=(e,t)=>this._context.domainContextSelectors.getDomain().getEntity(e,t)?this._get$Entity(e,t):null;_recipeContext=()=>({componentReader:this._context.domainContextSelectors.getComponentReader(),recipeCooker:this._context.domainContextSelectors.getRecipeCookerSystem(),resolveLocalizable:this._context.domainServicesSelectors.getResolveLocalizable()});_rootValue={root:(e,{state:t})=>this._get$Entity(t.rootEntityId,t),entities:({ids:t},{state:i})=>{if(null==t)return i.entities.map(e=>this._get$Entity(e.id,i));var n=i.rootEntityId;let o=t.filter(e=>!E.test(e));if(o.length>0)throw new e(`${o.map(e=>`"${e}"`).join(", ")} ${1===o.length?"is not an entity id":"are not entity ids"}. Entity ids have the form "<Type>-<number>", e.g. "${n}". Use ids as returned by the "id" field.`);return t.map(e=>E.test(e)?this._find$Entity(e,i):null)},selectedEntity:(e,{state:t})=>this._find$Entity(this._context.domainContextSelectors.getNavigationSystem().getActiveSelectionState(t),t),navigation:(e,{state:t})=>{let i=this._context.domainContextSelectors.getNavigationSystem();return{navigationState:i.getActiveNavigationState(t),viewState:i.getActiveViewState(t),toolState:i.getActiveToolState(t)}}};_resolveType=e=>C(e)?e.type:void 0;_generation={active:!0};_renderScreenshot=async(e,t,i)=>{let n=this._context.domainContextSelectors.getComponentReader().readOneComponent({entityId:e,componentType:m,instanceName:t},i);if(!n)return null;let o=await this._context.renderScreenshot(n,i);return null===o?null:new Blob([o],{type:"JPEG"===n.state.fileFormat?"image/jpeg":"image/png"})};initialize=()=>{this._generation.active=!1,this._generation={active:!0}};_resolveMutation=(t,i,n,o)=>{if(void 0!==o.failedMutationField)throw new e(`Not run: the earlier field "${o.failedMutationField}" of this operation failed, so "${i}" was skipped and no change of the operation takes effect. Fix the failing field and send the operation again.`);try{return this._runMutation(t,n,o)}catch(e){throw o.failedMutationField=i,e}};_runMutation=(t,i,n)=>{let o=g(t,n.manifest);if(!o)throw new e(`The schema declares the mutation "${t}", but the configurator has no implementation for it. This is a fault in the configurator, not in your request. Tell the user this is not available.`);let r=n.state,s=o.implementation(i,r,{manifest:n.manifest,action:this._context.domainContextSelectors.getActionSystem().createContext(r),resolveLocalizable:this._context.domainServicesSelectors.getResolveLocalizable()});if(s.updates.length>0){let i=this._context.domainContextSelectors.getStoreSystem().prepareStateEmission(s.updates,r,"committed");if(!i.validity.valid)throw new e(`The changes of "${t}" were not applied, because the resulting configuration is invalid: ${(e=>{if("uncaught"===e.severity)return`validating it threw: ${k(j(e.error))}`;let t=[...new Set(e.entityViolations.filter(({violation:t})=>t.severity===e.severity).map(({entityId:e})=>e))];return`it has ${e.severity} violations on ${t.join(", ")}.`})(i.validity)} Change the request so the configuration stays valid.`);n.emissions.push(i),n.state=i.state}return s.readResult({previousState:r,state:n.state})};_takeScreenshot=({entity:t,state:i},n,o)=>{let r=o.manifest.screenshots?.[t.type]?.find(e=>e.view===n);if(!r)return Promise.reject(new e(`The schema declares the screenshot view "${n}" on ${t.type}, but the configurator has no view of that name. This is a fault in the configurator, not in your request. Tell the user this is not available.`));let s=o.lastScreenshot.then(async()=>{if(!o.generation.active)throw z(b);let e=await this._renderScreenshot(t.id,r.instanceName,i).catch(e=>{throw z(e instanceof y?"User made concurrent actions that prevented the screenshot from being taken, try again":`The screenshot of ${t.id} from "${n}" could not be taken: ${k(j(e))} Try again; if it fails again, tell the user the screenshot is not available.`,e instanceof Error?e:void 0)});if(!o.generation.active)throw z(b);if(null===e)return null;let{imageId:s}=await this._context.uploadScreenshot(e).catch(e=>{throw z(`The screenshot of ${t.id} from "${n}" was taken but could not be stored: ${k(j(e))} Try again; if it fails again, tell the user the screenshot is not available.`,e instanceof Error?e:void 0)}),a=`${t.id}/${n}`,l=[...o.screenshots.values()].filter(e=>e.entityId===t.id&&e.view===n).length,c=0===l?a:`${a}#${l+1}`;return o.screenshots.set(c,{entityId:t.id,view:n,imageId:s}),{image:c}});return o.lastScreenshot=s.catch(()=>void 0),s};_setup=()=>{let{manifest:t,error:i}=this._context.getAssistantSetup();if(i)return{ready:!1,result:{errors:[new e(i.message,{originalError:i})]}};if(!t)return{ready:!1,result:x};let n=this._selectSchema(t.sdl);return n instanceof e?{ready:!1,result:{errors:[n]}}:{ready:!0,assistant:t,schema:n,lenses:t.lenses?.definitions?this._selectLenses(t.lenses.definitions):void 0,fieldResolver:this._selectFieldResolver(t.fields)}};_run=(t,i,o,s)=>{let l;try{l=r(t)}catch(t){return{errors:[t instanceof e?t:new e(j(t))]}}let c=a(o.schema,l,T);return c.length>0?{errors:c}:n({schema:o.schema,document:l,rootValue:this._rootValue,contextValue:s,variableValues:i.variables,operationName:i.operationName,fieldResolver:o.fieldResolver,typeResolver:this._resolveType})};prepare=async(t,i,n=this._generation)=>{let o,r=this._setup();if(!r.ready)return i.map(()=>({result:r.result,emissions:[],screenshots:new Map}));let s={manifest:r.assistant,state:t,emissions:[],failedMutationField:void 0,screenshots:new Map,lastScreenshot:Promise.resolve(),generation:n},a=[];for(let[t,n]of i.entries())if(void 0===o){let i=s.emissions.length,l=s.screenshots.size;s.failedMutationField=void 0;let c=v(n.document),h=r.lenses?_(c,r.lenses):c,d=h instanceof e?{errors:[h]}:await this._run(h,n,r,s);await s.lastScreenshot,a.push({result:d,emissions:s.emissions.slice(i),screenshots:new Map([...s.screenshots].slice(l))}),L(d)&&(o=t)}else a.push({result:F(o),emissions:[],screenshots:new Map});return a};readSideEffects=e=>{let t=this._context.domainServicesSelectors.getResolveLocalizable();return e.flatMap(({emissions:e})=>e.flatMap(e=>w(e.updates,t)))};readScreenshots=e=>new Map(e.flatMap(({screenshots:e})=>[...e]));_prepareAndCommit=async(e,t)=>{let i,n,o,r=this._context.domainContextSelectors.getStoreSystem(),s=await this.prepare(r.stateSlices.committed.value.state,e,t),a=s.map(({result:e})=>e),l=this.readSideEffects(s),h=this.readScreenshots(s),d=s.flatMap(e=>e.emissions);if(!t.active)return{results:a,sideEffects:l,screenshots:h,outcome:"conflict"};if(a.some(L)||0===d.length)return{results:a,sideEffects:l,screenshots:h,outcome:"none"};let u=(i=c(d[0]),n=c(d[d.length-1]),o=d.some(e=>void 0!==e.transformationLog),{kind:"committed",previousState:i.previousState,state:n.state,updates:d.flatMap(e=>e.updates),validity:n.validity,transformationLog:o?d.flatMap(e=>e.transformationLog??[]):void 0});return{results:a,sideEffects:l,screenshots:h,outcome:r.commitPrepared(u),preparedState:u.state}};execute=async e=>{let t=this._generation;if(!this._context.domainContextSelectors.getStoreSystem().isInitialized)return{results:e.map(()=>$),committed:!1,sideEffects:[],screenshots:new Map};let i=await this._prepareAndCommit(e,t),{results:n,sideEffects:o,screenshots:r,outcome:s,preparedState:a}="conflict"===i.outcome&&t.active?await this._prepareAndCommit(e,t):i;return"committed"===s?{results:n,committed:!0,sideEffects:o,screenshots:r,preparedState:a}:"held"===s?{results:n,committed:!1,message:"The changes wait for the user's approval and are not applied yet. Do not send them again; the next `[changes]` block lists them once approved.",sideEffects:o,screenshots:r,preparedState:a}:"conflict"===s?{results:n,committed:!1,message:"The changes were not committed, because the configuration changed while they were being applied. The results describe a state that was discarded. Query the current configuration and send the operations again if they still make sense.",sideEffects:o,screenshots:r}:{results:n,committed:!1,sideEffects:o,screenshots:r}}}
@@ -0,0 +1,11 @@
1
+ import { type DocumentNode, GraphQLError } from 'graphql';
2
+ /**
3
+ * Makes the lenses an operation document spreads available to it: appends the definition of every
4
+ * lens the document spreads, with the copies that definition spreads in turn, taken from the
5
+ * manifest's lens `definitions`. Appending keeps the positions GraphQL reports for the caller's own
6
+ * text. A document that defines a fragment under the name of a lens, or of a copy of one, is
7
+ * rejected, since the caller would silently read its own selection instead of the lens. A document
8
+ * that does not parse is returned as it is, so GraphQL reports the syntax error; a spread that names
9
+ * no lens is left for GraphQL to report as an unknown fragment.
10
+ */
11
+ export declare const injectAssistantLenses: (document: string, definitions: DocumentNode) => string | GraphQLError;
@@ -0,0 +1 @@
1
+ import{GraphQLError as e,Kind as n,parse as t,print as a,visit as i}from"graphql";let r=e=>{let n=[];return i(e,{FragmentSpread:e=>{n.push(e.name.value)}}),n};export const injectAssistantLenses=(i,o)=>{let l,s=new Map;for(let e of o.definitions)e.kind===n.FRAGMENT_DEFINITION&&s.set(e.name.value,e);try{l=t(i)}catch{return i}for(let t of l.definitions)if(t.kind===n.FRAGMENT_DEFINITION&&s.has(t.name.value)){let n=t.name.value.split("__")[0];return new e(`A built-in fragment named "${n}" already exists, so "${t.name.value}" cannot be defined. Remove the definition and spread "...${n}", or give your fragment another name.`)}let m=new Map,u=[...r(l)];for(;u.length>0;){let e=u.pop(),n=void 0===e?void 0:s.get(e);n&&!m.has(n.name.value)&&(m.set(n.name.value,n),u.push(...r(n)))}return 0===m.size?i:[i,...[...m.values()].map(a)].join("\n\n")};
@@ -1,8 +1,9 @@
1
1
  import type { EffectComposer } from 'postprocessing';
2
2
  import { Color, OrthographicCamera, PerspectiveCamera } from 'three';
3
3
  import type { AuthorizedPhoenixApiClient } from '#package/client';
4
- import type { ClientSideImageComponent, ComponentSnapshot, DomainContextSelectors, DomainEntity, DomainServicesSelectors, DomainState, SaveTemplateThumbnailComponent } from '#package/domain';
4
+ import type { AgentScreenshotComponent, ClientSideImageComponent, ComponentSnapshot, DomainContextSelectors, DomainEntity, DomainServicesSelectors, DomainState, SaveTemplateThumbnailComponent } from '#package/domain';
5
5
  import type { ConfiguratorExtensionSelectors } from '../../selectors.js';
6
+ import type { ExportRunOptions } from '../export-system/export-system.js';
6
7
  import type { ImageRenderConfig, ImageRenderer, RenderConfig } from './image-renderer.js';
7
8
  /**
8
9
  * Constructor context of an `ImageRenderingSystem`. Same-layer configurator peers are reached
@@ -20,6 +21,8 @@ export interface ClientSideImageRenderingOptions {
20
21
  /** Opens rendered images in new browser tabs instead of uploading them. */
21
22
  readonly debug?: boolean;
22
23
  }
24
+ /** A component that declares an image the export renders: its state says how, its entity what. */
25
+ type ImageComponentSnapshot = ComponentSnapshot<ClientSideImageComponent> | ComponentSnapshot<SaveTemplateThumbnailComponent> | ComponentSnapshot<AgentScreenshotComponent>;
23
26
  /** ImageRenderingSystem with its entity types erased — how the runtime selectors expose the instance. */
24
27
  export type AnyImageRenderingSystem = ImageRenderingSystem<any>;
25
28
  export declare class ImageRenderingSystem<ENTITIES extends DomainEntity<string>> {
@@ -94,7 +97,7 @@ export declare class ImageRenderingSystem<ENTITIES extends DomainEntity<string>>
94
97
  generateAndUploadDeclaredClientSideImages(state: DomainState<ENTITIES>, finalizationUuid: string, options?: ClientSideImageRenderingOptions): Promise<readonly {
95
98
  name: string;
96
99
  blob: Blob;
97
- imageComponent: ComponentSnapshot<ClientSideImageComponent> | ComponentSnapshot<SaveTemplateThumbnailComponent>;
100
+ imageComponent: ImageComponentSnapshot;
98
101
  }[]>;
99
102
  /**
100
103
  * Generates client side images from declarative clientSideImage components without uploading them.
@@ -102,12 +105,18 @@ export declare class ImageRenderingSystem<ENTITIES extends DomainEntity<string>>
102
105
  generateDeclaredClientSideImages(state: DomainState<ENTITIES>, options?: ClientSideImageRenderingOptions): Promise<readonly {
103
106
  name: string;
104
107
  blob: Blob;
105
- imageComponent: ComponentSnapshot<ClientSideImageComponent> | ComponentSnapshot<SaveTemplateThumbnailComponent>;
108
+ imageComponent: ImageComponentSnapshot;
106
109
  }[]>;
107
- generateImagesFromComponents(imageComponents: ReadonlyArray<ComponentSnapshot<ClientSideImageComponent> | ComponentSnapshot<SaveTemplateThumbnailComponent>>, sourceState: DomainState<ENTITIES>, options?: ClientSideImageRenderingOptions): Promise<ReadonlyArray<{
110
+ /**
111
+ * Renders the image components from the given state in one export run. With `awaitSettledState`,
112
+ * the run waits until the user is not in the middle of a change, as the assistant's screenshots do.
113
+ */
114
+ generateImagesFromComponents(imageComponents: ReadonlyArray<ImageComponentSnapshot>, sourceState: DomainState<ENTITIES>, options?: ClientSideImageRenderingOptions, runOptions?: ExportRunOptions): Promise<ReadonlyArray<{
108
115
  name: string;
109
116
  blob: Blob;
110
- imageComponent: ComponentSnapshot<ClientSideImageComponent> | ComponentSnapshot<SaveTemplateThumbnailComponent>;
117
+ imageComponent: ImageComponentSnapshot;
111
118
  }>>;
119
+ private _generateImagesFromComponents;
112
120
  initialize: () => void;
113
121
  }
122
+ export {};
@@ -1 +1 @@
1
- import{Color as e,HalfFloatType as t,NoToneMapping as r,OrthographicCamera as a,PerspectiveCamera as n,WebGLRenderTarget as o}from"three";import{preloadFont as i}from"troika-three-text";import{match as s}from"ts-pattern";import{clientSideImageComponent as l,dimensionIndicatorComponent as c,domainEntityTypeFromId as m,editableDistanceDimensionIndicatorComponent as g,isDomainEntityId as d,isVirtualEntityId as h,sketchingEditComponent as u}from"#package/domain";import{createCameraControls as f}from"../camera-control-system/create-camera-controls.js";import{createCanvasFreezeFrame as p}from"./canvas-freeze-frame.js";import{ExportCapturePass as w,readTargetToBlob as C,resolveExportBackground as _}from"./export-image-capture.js";export class ImageRenderingSystem{_context;_renderer=null;_effectComposer=null;_generation=null;_debugObjectUrls=new Set;_canvasFreeze=null;constructor(e){this._context=e}_captureGenerationAssertion=()=>{let e=this._generation,t=()=>{if(!e?.active)throw Error("Image rendering generation ended while images were being rendered! The configurator context was reinitialized before the renderer finished, so the results belong to a configuration that is no longer active. Await the render before leaving the configuration, or discard the rejection.")};return t(),t};_captureGenerationGuard=()=>{let e=this._captureGenerationAssertion();return{assertActive:e,waitFor:async t=>{let r=await t;return e(),r},runEffect:t=>(e(),t())}};register(e){return this._renderer=e,()=>{this._renderer===e&&(this._renderer=null)}}registerEffectComposer(e){return this._effectComposer=e,()=>{this._effectComposer===e&&(this._effectComposer=null)}}_openDebugImage=e=>{let t=URL.createObjectURL(e);this._debugObjectUrls.add(t),window.open(t,"_blank")};_getRenderer=async()=>{let e=this._generation,t=Date.now(),r=()=>{if(!e?.active)throw Error("Image rendering generation ended while waiting for the renderer! The configurator context was reinitialized before the renderer arrived, so the render would target a scene that is gone. Await the render before leaving the configuration, or discard the rejection.")};r();let a=this._renderer;for(;null===a;){if(await new Promise(e=>setTimeout(e,50)),r(),Date.now()-t>1e4)throw Error("Renderer could not be retrieved! Reached timeout.");a=this._renderer}return a};generateImageUsingOriginalCanvas=async(e,t,r=!1)=>{let a=this._captureGenerationGuard(),n=await a.waitFor(this._getRenderer());if(r){let{blob:e}=await a.waitFor(a.runEffect(()=>n.renderUsingOriginalCanvas(t)));a.runEffect(()=>this._openDebugImage(e));return}let o=await Promise.all([t].map(async e=>{let{blob:t}=await a.waitFor(a.runEffect(()=>n.renderUsingOriginalCanvas(e)));return{blob:t,name:e.name}})),i=await a.waitFor(a.runEffect(()=>this._context.getAuthorizedClient().generateUploadLinks(this._context.getConfigurationId(),e,[t.name])));await Promise.all(i.map(async e=>{let t=o.find(t=>t.name===e.name);if(null==t)throw Error("Blob not found!");await Promise.all(i.map(async e=>{await a.waitFor(a.runEffect(()=>fetch(e.url,{method:"PUT",body:t.blob,headers:{"Content-Type":"image/png","Content-Length":t.blob.size.toString()}})))}))}))};async generateImagesUsingOriginalCanvas(e,t,r=!1){let a=this._captureGenerationGuard(),n=await a.waitFor(this._getRenderer()),o=Array.isArray(t)?t:[t],i=await o.reduce(async(e,t)=>[...await e,await a.waitFor(a.runEffect(()=>n.renderUsingOriginalCanvas(t)))],Promise.resolve([]));if(r){for(let e of i)a.runEffect(()=>this._openDebugImage(e.blob)),await a.waitFor(new Promise(e=>setTimeout(e,100)));return}let s=o.map(e=>e.name),l=await a.waitFor(a.runEffect(()=>this._context.getAuthorizedClient().generateUploadLinks(this._context.getConfigurationId(),e,s)));await Promise.all(l.map(async e=>{let t=i.find(t=>t.name===e.name);if(null==t)throw Error("Blob not found!");await Promise.all(l.map(async e=>{await a.waitFor(a.runEffect(()=>fetch(e.url,{method:"PUT",body:t.blob,headers:{"Content-Type":"image/png","Content-Length":t.blob.size.toString()}})))}))}))}async generateImages(e,t,r=!1){let a=this._captureGenerationGuard(),n=await a.waitFor(this._getRenderer()),o=t.map(e=>e.name);if(r)return void await Promise.all(t.map(async e=>{let t=await a.waitFor(a.runEffect(()=>n.renderImage(e)));a.runEffect(()=>this._openDebugImage(t))}));let i=await Promise.all(t.map(async e=>({blob:await a.waitFor(a.runEffect(()=>n.renderImage(e))),name:e.name}))),s=await a.waitFor(a.runEffect(()=>this._context.getAuthorizedClient().generateUploadLinks(this._context.getConfigurationId(),e,o)));await Promise.all(s.map(async e=>{let t=i.find(t=>t.name===e.name);if(null==t)throw Error("Blob not found!");await Promise.all(s.map(async e=>{await a.waitFor(a.runEffect(()=>fetch(e.url,{method:"PUT",body:t.blob,headers:{"Content-Type":"image/png","Content-Length":t.blob.size.toString()}})))}))}))}async getGeneratedImages(e,t=!1){let r=this._captureGenerationAssertion(),a=await this._getRenderer();return(r(),t)?(await Promise.all(e.map(async e=>{let t=await a.renderImage(e);r(),this._openDebugImage(t)})),[]):Promise.all(e.map(async e=>{let t=await a.renderImage(e);return r(),{blob:t,name:e.name}}))}_renderCurrentView=e=>{let{gl:t,scene:r,camera:a}=e.get();null!==this._effectComposer?this._effectComposer.render():t.render(r,a)};_freezeCanvas=e=>{this._canvasFreeze?.handle===e?this._canvasFreeze.holders+=1:(this._canvasFreeze?.remove(),this._canvasFreeze={handle:e,remove:p(e.get().gl.domElement,()=>this._renderCurrentView(e)),resumeFrameloop:this._context.configuratorExtensionSelectors.getExportSystem().pauseFrameloop(e),holders:1});let t=this._canvasFreeze,r=!1;return async()=>{if(!r&&(r=!0,t.holders-=1,!(t.holders>0)))try{let r=this._context.configuratorExtensionSelectors.getCanvasSystem();r.r3fHandle$.value===e&&await r.waitForFlush(),r.r3fHandle$.value===e&&0===t.holders&&this._renderCurrentView(e)}catch{}finally{0===t.holders&&(t.remove(),t.resumeFrameloop(),this._canvasFreeze===t&&(this._canvasFreeze=null))}}};async renderImage(a){let n=this._context.configuratorExtensionSelectors.getCanvasSystem().r3fHandle$.value;if(null===n)throw Error("R3F state not ready");let{gl:i,scene:s,camera:l,size:c,advance:m}=n.get(),g=i.getRenderTarget(),d=i.getClearColor(new e),h=i.getClearAlpha(),u=i.autoClearColor,f=e=>new w(a.width,a.height,e,i.outputColorSpace),p={composer:null,pass:null},y=null,b=null,x=e=>{let t=p.pass??f(r);return p.pass=t,p.composer===e&&e.passes.at(-1)===t||(p.composer?.removePass(t),e.addPass(t),p.composer=e),t},v=async()=>{if(await this._context.configuratorExtensionSelectors.getCanvasSystem().waitForFlush(),this._context.configuratorExtensionSelectors.getCanvasSystem().r3fHandle$.value!==n)throw Error("Canvas was remounted while an image was being rendered! The export borrowed a canvas that is gone, so it cannot capture the image. Retry the export once the configurator has settled.")},E=this._freezeCanvas(n);try{n.set({size:{height:a.height,width:a.width,top:0,left:0,updateStyle:!1}}),n.set({camera:a.camera}),await v(),null!==this._effectComposer&&x(this._effectComposer),m(void 0),await v();let r="JPEG"===a.fileFormat?"image/jpeg":"image/png",l=_({sceneBackground:s.background,backgroundColor:a.backgroundColor,fileFormat:a.fileFormat,outputColorSpace:i.outputColorSpace});if(null!==this._effectComposer){i.setRenderTarget(null),"JPEG"===a.fileFormat?i.setClearColor(a.backgroundColor??0xffffff):a.backgroundColor?i.setClearColor(a.backgroundColor):i.setClearAlpha(0),i.autoClearColor=!0;let e=x(this._effectComposer);return this._effectComposer.render(),await C(i,e.renderTarget,l,r)}y=f(i.toneMapping),b=new o(a.width,a.height,{samples:4,type:t,stencilBuffer:i.getContextAttributes().stencil??!1});let c=s.background;c instanceof e&&(s.background=null);try{i.setClearColor(0,0),i.setRenderTarget(b),i.clear(),i.render(s,a.camera)}finally{s.background=c}return y.render(i,b),await C(i,y.renderTarget,l,r)}finally{null!==p.pass&&(p.composer?.removePass(p.pass),p.pass.dispose()),y?.dispose(),b?.dispose(),this._context.configuratorExtensionSelectors.getCanvasSystem().r3fHandle$.value===n&&(i.setClearColor(d,h),i.autoClearColor=u,i.setRenderTarget(g),n.set({camera:l,size:{...c,updateStyle:!1}})),await E()}}async generateAndUploadDeclaredClientSideImages(e,t,r={}){let a=this._captureGenerationGuard(),n=await a.waitFor(this.generateDeclaredClientSideImages(e,r));if(r.debug)return n;let o=new Map((await a.waitFor(a.runEffect(()=>this._context.getAuthorizedClient().generateUploadLinks(this._context.getConfigurationId(),t,n.map(e=>e.name))))).map(e=>[e.name,e.url]));return await Promise.all(n.map(async e=>{let t=o.get(e.name);if(!t)throw Error(`Presigned link for image ${e.name} not found!`);await a.waitFor(a.runEffect(()=>fetch(t,{method:"PUT",body:e.blob})))})),n}generateDeclaredClientSideImages(e,t={}){let r=this._context.domainContextSelectors.getComponentReader().readManyComponents({componentTypes:[l]},e);return this.generateImagesFromComponents(r,e,t)}async generateImagesFromComponents(t,r,o={}){let l=this._captureGenerationGuard(),p=this._context.configuratorExtensionSelectors.getCanvasSystem().r3fHandle$.value;if(null===p)throw Error("R3F state not ready");let w=!1,C=this._context.domainContextSelectors.getExportStates(),_=t.map(t=>{if(!C.includes(t.state.exportState)){let e=d(t.componentInstance.entityId)?m(t.componentInstance.entityId):"unknown entity",r=t.componentInstance.componentType.name,a=t.componentInstance.instanceName;throw Error(`Export state ${t.state.exportState} declared in component ${r}/${a} on ${e} is not a valid export state. Expected one of: ${C.join(", ")}`)}let p=t.componentInstance.entityId;if(h(p))throw Error("Virtual entities cannot be used for export");return this._context.configuratorExtensionSelectors.getExportSystem().createExportJob(r,{exportState:t.state.exportState,exportedEntityId:p,toolState:t.state.toolState,viewState:t.state.viewState,navigationState:t.state.navigationState,selectedEntityId:r.rootEntityId},async r=>{let m=this._context.domainContextSelectors.getComponentReader().readManyComponents({componentTypes:[c,g,u]},r.state);!w&&m.length>0&&(await new Promise(e=>{i({font:void 0,characters:void 0},e)}),w=!0,await this._context.configuratorExtensionSelectors.getCanvasSystem().waitForFlush());let d=this._context.configuratorExtensionSelectors.getCameraSystem().getActiveCameraConfig(r.state);if(null==d)throw Error(`No camera config is attached for export state ${t.state.exportState} and exported entity ${p}. Whenever using a client-side image component, you need to attach a camera configuration to the export state defined on that componentin the domain spec. This camera will be used to render the image.`);let h=s(d.typeSpecificConfig.cameraType).with("perspective",()=>new n(45,t.state.width/t.state.height,1,1e4)).with("orthographic",()=>new a(0,0,1e4,0,1,1e4)).exhaustive(),C=f(h);await this._context.configuratorExtensionSelectors.getCameraSystem().applyConfig(d,C,!1,{width:t.state.width,height:t.state.height,padding:{top:0,right:0,bottom:0,left:0}}),C.update(1e6),await new Promise(e=>setTimeout(e,100));let _=await l.waitFor(l.runEffect(()=>this.renderImage({width:t.state.width,height:t.state.height,fileFormat:t.state.fileFormat,backgroundColor:t.state.backgroundColor?new e(t.state.backgroundColor):void 0,camera:h})));return o.debug&&l.runEffect(()=>this._openDebugImage(_)),{blob:_,imageComponent:t,name:`${t.componentInstance.componentType.name}-${t.componentInstance.entityId}-${t.componentInstance.instanceName}`}})});if(0===_.length)return this._context.configuratorExtensionSelectors.getExportSystem().runExportJobs(_);let y=this._freezeCanvas(p);try{return await this._context.configuratorExtensionSelectors.getExportSystem().runExportJobs(_)}finally{await y()}}initialize=()=>{for(let e of(null!==this._generation&&(this._generation.active=!1),this._debugObjectUrls))URL.revokeObjectURL(e);this._debugObjectUrls.clear(),this._generation={active:!0}}}
1
+ import{Color as e,HalfFloatType as t,NoToneMapping as a,OrthographicCamera as r,PerspectiveCamera as n,WebGLRenderTarget as o}from"three";import{preloadFont as i}from"troika-three-text";import{match as s}from"ts-pattern";import{clientSideImageComponent as l,dimensionIndicatorComponent as c,domainEntityTypeFromId as m,editableDistanceDimensionIndicatorComponent as g,isDomainEntityId as d,isVirtualEntityId as h,sketchingEditComponent as u}from"#package/domain";import{createCameraControls as f}from"../camera-control-system/create-camera-controls.js";import{createCanvasFreezeFrame as p}from"./canvas-freeze-frame.js";import{ExportCapturePass as w,readTargetToBlob as C,resolveExportBackground as _}from"./export-image-capture.js";export class ImageRenderingSystem{_context;_renderer=null;_effectComposer=null;_generation=null;_debugObjectUrls=new Set;_canvasFreeze=null;constructor(e){this._context=e}_captureGenerationAssertion=()=>{let e=this._generation,t=()=>{if(!e?.active)throw Error("Image rendering generation ended while images were being rendered! The configurator context was reinitialized before the renderer finished, so the results belong to a configuration that is no longer active. Await the render before leaving the configuration, or discard the rejection.")};return t(),t};_captureGenerationGuard=()=>{let e=this._captureGenerationAssertion();return{assertActive:e,waitFor:async t=>{let a=await t;return e(),a},runEffect:t=>(e(),t())}};register(e){return this._renderer=e,()=>{this._renderer===e&&(this._renderer=null)}}registerEffectComposer(e){return this._effectComposer=e,()=>{this._effectComposer===e&&(this._effectComposer=null)}}_openDebugImage=e=>{let t=URL.createObjectURL(e);this._debugObjectUrls.add(t),window.open(t,"_blank")};_getRenderer=async()=>{let e=this._generation,t=Date.now(),a=()=>{if(!e?.active)throw Error("Image rendering generation ended while waiting for the renderer! The configurator context was reinitialized before the renderer arrived, so the render would target a scene that is gone. Await the render before leaving the configuration, or discard the rejection.")};a();let r=this._renderer;for(;null===r;){if(await new Promise(e=>setTimeout(e,50)),a(),Date.now()-t>1e4)throw Error("Renderer could not be retrieved! Reached timeout.");r=this._renderer}return r};generateImageUsingOriginalCanvas=async(e,t,a=!1)=>{let r=this._captureGenerationGuard(),n=await r.waitFor(this._getRenderer());if(a){let{blob:e}=await r.waitFor(r.runEffect(()=>n.renderUsingOriginalCanvas(t)));r.runEffect(()=>this._openDebugImage(e));return}let o=await Promise.all([t].map(async e=>{let{blob:t}=await r.waitFor(r.runEffect(()=>n.renderUsingOriginalCanvas(e)));return{blob:t,name:e.name}})),i=await r.waitFor(r.runEffect(()=>this._context.getAuthorizedClient().generateUploadLinks(this._context.getConfigurationId(),e,[t.name])));await Promise.all(i.map(async e=>{let t=o.find(t=>t.name===e.name);if(null==t)throw Error("Blob not found!");await Promise.all(i.map(async e=>{await r.waitFor(r.runEffect(()=>fetch(e.url,{method:"PUT",body:t.blob,headers:{"Content-Type":"image/png","Content-Length":t.blob.size.toString()}})))}))}))};async generateImagesUsingOriginalCanvas(e,t,a=!1){let r=this._captureGenerationGuard(),n=await r.waitFor(this._getRenderer()),o=Array.isArray(t)?t:[t],i=await o.reduce(async(e,t)=>[...await e,await r.waitFor(r.runEffect(()=>n.renderUsingOriginalCanvas(t)))],Promise.resolve([]));if(a){for(let e of i)r.runEffect(()=>this._openDebugImage(e.blob)),await r.waitFor(new Promise(e=>setTimeout(e,100)));return}let s=o.map(e=>e.name),l=await r.waitFor(r.runEffect(()=>this._context.getAuthorizedClient().generateUploadLinks(this._context.getConfigurationId(),e,s)));await Promise.all(l.map(async e=>{let t=i.find(t=>t.name===e.name);if(null==t)throw Error("Blob not found!");await Promise.all(l.map(async e=>{await r.waitFor(r.runEffect(()=>fetch(e.url,{method:"PUT",body:t.blob,headers:{"Content-Type":"image/png","Content-Length":t.blob.size.toString()}})))}))}))}async generateImages(e,t,a=!1){let r=this._captureGenerationGuard(),n=await r.waitFor(this._getRenderer()),o=t.map(e=>e.name);if(a)return void await Promise.all(t.map(async e=>{let t=await r.waitFor(r.runEffect(()=>n.renderImage(e)));r.runEffect(()=>this._openDebugImage(t))}));let i=await Promise.all(t.map(async e=>({blob:await r.waitFor(r.runEffect(()=>n.renderImage(e))),name:e.name}))),s=await r.waitFor(r.runEffect(()=>this._context.getAuthorizedClient().generateUploadLinks(this._context.getConfigurationId(),e,o)));await Promise.all(s.map(async e=>{let t=i.find(t=>t.name===e.name);if(null==t)throw Error("Blob not found!");await Promise.all(s.map(async e=>{await r.waitFor(r.runEffect(()=>fetch(e.url,{method:"PUT",body:t.blob,headers:{"Content-Type":"image/png","Content-Length":t.blob.size.toString()}})))}))}))}async getGeneratedImages(e,t=!1){let a=this._captureGenerationAssertion(),r=await this._getRenderer();return(a(),t)?(await Promise.all(e.map(async e=>{let t=await r.renderImage(e);a(),this._openDebugImage(t)})),[]):Promise.all(e.map(async e=>{let t=await r.renderImage(e);return a(),{blob:t,name:e.name}}))}_renderCurrentView=e=>{let{gl:t,scene:a,camera:r}=e.get();null!==this._effectComposer?this._effectComposer.render():t.render(a,r)};_freezeCanvas=e=>{this._canvasFreeze?.handle===e?this._canvasFreeze.holders+=1:(this._canvasFreeze?.remove(),this._canvasFreeze={handle:e,remove:p(e.get().gl.domElement,()=>this._renderCurrentView(e)),resumeFrameloop:this._context.configuratorExtensionSelectors.getExportSystem().pauseFrameloop(e),holders:1});let t=this._canvasFreeze,a=!1;return async()=>{if(!a&&(a=!0,t.holders-=1,!(t.holders>0)))try{let a=this._context.configuratorExtensionSelectors.getCanvasSystem();a.r3fHandle$.value===e&&await a.waitForFlush(),a.r3fHandle$.value===e&&0===t.holders&&this._renderCurrentView(e)}catch{}finally{0===t.holders&&(t.remove(),t.resumeFrameloop(),this._canvasFreeze===t&&(this._canvasFreeze=null))}}};async renderImage(r){let n=this._context.configuratorExtensionSelectors.getCanvasSystem(),i=n.r3fHandle$.value??await n.waitForCanvas(),{gl:s,scene:l,camera:c,size:m,advance:g}=i.get(),d=s.getRenderTarget(),h=s.getClearColor(new e),u=s.getClearAlpha(),f=s.autoClearColor,p=e=>new w(r.width,r.height,e,s.outputColorSpace),y={composer:null,pass:null},b=null,x=null,v=e=>{let t=y.pass??p(a);return y.pass=t,y.composer===e&&e.passes.at(-1)===t||(y.composer?.removePass(t),e.addPass(t),y.composer=e),t},E=async()=>{if(await this._context.configuratorExtensionSelectors.getCanvasSystem().waitForFlush(),this._context.configuratorExtensionSelectors.getCanvasSystem().r3fHandle$.value!==i)throw Error("Canvas was remounted while an image was being rendered! The export borrowed a canvas that is gone, so it cannot capture the image. Retry the export once the configurator has settled.")},S=this._freezeCanvas(i);try{i.set({size:{height:r.height,width:r.width,top:0,left:0,updateStyle:!1}}),i.set({camera:r.camera}),await E(),null!==this._effectComposer&&v(this._effectComposer),g(void 0),await E();let a="JPEG"===r.fileFormat?"image/jpeg":"image/png",n=_({sceneBackground:l.background,backgroundColor:r.backgroundColor,fileFormat:r.fileFormat,outputColorSpace:s.outputColorSpace});if(null!==this._effectComposer){s.setRenderTarget(null),"JPEG"===r.fileFormat?s.setClearColor(r.backgroundColor??0xffffff):r.backgroundColor?s.setClearColor(r.backgroundColor):s.setClearAlpha(0),s.autoClearColor=!0;let e=v(this._effectComposer);return this._effectComposer.render(),await C(s,e.renderTarget,n,a)}b=p(s.toneMapping),x=new o(r.width,r.height,{samples:4,type:t,stencilBuffer:s.getContextAttributes().stencil??!1});let c=l.background;c instanceof e&&(l.background=null);try{s.setClearColor(0,0),s.setRenderTarget(x),s.clear(),s.render(l,r.camera)}finally{l.background=c}return b.render(s,x),await C(s,b.renderTarget,n,a)}finally{null!==y.pass&&(y.composer?.removePass(y.pass),y.pass.dispose()),b?.dispose(),x?.dispose(),this._context.configuratorExtensionSelectors.getCanvasSystem().r3fHandle$.value===i&&(s.setClearColor(h,u),s.autoClearColor=f,s.setRenderTarget(d),i.set({camera:c,size:{...m,updateStyle:!1}})),await S()}}async generateAndUploadDeclaredClientSideImages(e,t,a={}){let r=this._captureGenerationGuard(),n=await r.waitFor(this.generateDeclaredClientSideImages(e,a));if(a.debug)return n;let o=new Map((await r.waitFor(r.runEffect(()=>this._context.getAuthorizedClient().generateUploadLinks(this._context.getConfigurationId(),t,n.map(e=>e.name))))).map(e=>[e.name,e.url]));return await Promise.all(n.map(async e=>{let t=o.get(e.name);if(!t)throw Error(`Presigned link for image ${e.name} not found!`);await r.waitFor(r.runEffect(()=>fetch(t,{method:"PUT",body:e.blob})))})),n}generateDeclaredClientSideImages(e,t={}){let a=this._context.domainContextSelectors.getComponentReader().readManyComponents({componentTypes:[l]},e);return this.generateImagesFromComponents(a,e,t)}generateImagesFromComponents(e,t,a={},r={}){return this._generateImagesFromComponents(e,t,a,r)}async _generateImagesFromComponents(t,a,o,l){let p=this._captureGenerationGuard(),w=!1,C=this._context.domainContextSelectors.getExportStates(),_=t.map(t=>{if(!C.includes(t.state.exportState)){let e=d(t.componentInstance.entityId)?m(t.componentInstance.entityId):"unknown entity",a=t.componentInstance.componentType.name,r=t.componentInstance.instanceName;throw Error(`Export state ${t.state.exportState} declared in component ${a}/${r} on ${e} is not a valid export state. Expected one of: ${C.join(", ")}`)}let l=t.componentInstance.entityId;if(h(l))throw Error("Virtual entities cannot be used for export");return this._context.configuratorExtensionSelectors.getExportSystem().createExportJob(a,{exportState:t.state.exportState,exportedEntityId:l,toolState:t.state.toolState,viewState:t.state.viewState,navigationState:t.state.navigationState,selectedEntityId:a.rootEntityId},async a=>{let m=this._context.domainContextSelectors.getComponentReader().readManyComponents({componentTypes:[c,g,u]},a.state);!w&&m.length>0&&(await new Promise(e=>{i({font:void 0,characters:void 0},e)}),w=!0,await this._context.configuratorExtensionSelectors.getCanvasSystem().waitForFlush());let d=this._context.configuratorExtensionSelectors.getCameraSystem().getActiveCameraConfig(a.state);if(null==d)throw Error(`No camera config is attached for export state ${t.state.exportState} and exported entity ${l}. Whenever using a client-side image component, you need to attach a camera configuration to the export state defined on that componentin the domain spec. This camera will be used to render the image.`);let h=s(d.typeSpecificConfig.cameraType).with("perspective",()=>new n(45,t.state.width/t.state.height,1,1e4)).with("orthographic",()=>new r(0,0,1e4,0,1,1e4)).exhaustive(),C=f(h);await this._context.configuratorExtensionSelectors.getCameraSystem().applyConfig(d,C,!1,{width:t.state.width,height:t.state.height,padding:{top:0,right:0,bottom:0,left:0}}),C.update(1e6),await new Promise(e=>setTimeout(e,100));let _=await p.waitFor(p.runEffect(()=>this.renderImage({width:t.state.width,height:t.state.height,fileFormat:t.state.fileFormat,backgroundColor:t.state.backgroundColor?new e(t.state.backgroundColor):void 0,camera:h})));return o.debug&&p.runEffect(()=>this._openDebugImage(_)),{blob:_,imageComponent:t,name:`${t.componentInstance.componentType.name}-${t.componentInstance.entityId}-${t.componentInstance.instanceName}`}})});if(0===_.length)return this._context.configuratorExtensionSelectors.getExportSystem().runExportJobs(_,l);let y=this._context.configuratorExtensionSelectors.getCanvasSystem(),b=y.r3fHandle$.value??await p.waitFor(y.waitForCanvas().catch(e=>{throw p.assertActive(),e})),x=this._freezeCanvas(b);try{return await this._context.configuratorExtensionSelectors.getExportSystem().runExportJobs(_,l)}finally{await x()}}initialize=()=>{for(let e of(null!==this._generation&&(this._generation.active=!1),this._debugObjectUrls))URL.revokeObjectURL(e);this._debugObjectUrls.clear(),this._generation={active:!0}}}
@@ -1,12 +1,12 @@
1
1
  export { AnimationSystem, type AnimationSystemContext } from './animation-system.js';
2
- export { type AssistantChatSnapshot, type AssistantClientTool, type AssistantPanelSnapshot, AssistantSystem, type AssistantSystemContext, } from './assistant-system/assistant-system.js';
2
+ export { type AssistantChatSnapshot, type AssistantEarlierThreadSnapshot, type AssistantClientTool, type AssistantPanelSnapshot, AssistantSystem, type AssistantSystemContext, } from './assistant-system/assistant-system.js';
3
3
  export { CameraControlSystem, CameraControlType } from './camera-control-system/camera-control-system.js';
4
4
  export { type AnyCameraSystem, CameraSystem, type CameraSystemContext } from './camera-control-system/camera-system.js';
5
5
  export { createCameraControls } from './camera-control-system/create-camera-controls.js';
6
6
  export { type AnyCanvasSystem, CanvasSystem, type EntityObjectFilter, type FlushToken } from './canvas-system.js';
7
7
  export { type AnyDragAndDropSystem, DragAndDropSystem, type DragAndDropSystemContext, type DraggableState, type DraggingState, type RotationDraggingState, } from './drag-and-drop-system/drag-and-drop-system.js';
8
8
  export { type AnyExportSystem, ExportSystem, type ExportSystemContext } from './export-system/export-system.js';
9
- export { type GraphQLExecution, type GraphQLOperation, GraphQLSystem, type GraphQLSystemContext, type PreparedOperation, } from './graphql-system/graphql-system.js';
9
+ export { type GraphQLExecution, type GraphQLScreenshot, type GraphQLOperation, GraphQLSystem, type GraphQLSystemContext, type PreparedOperation, } from './graphql-system/graphql-system.js';
10
10
  export type * from './image-rendering-system/image-renderer.js';
11
11
  export { type AnyImageRenderingSystem, ImageRenderingSystem, type ImageRenderingSystemContext, } from './image-rendering-system/image-rendering-system.js';
12
12
  export { type AnyLayoutSystem, LayoutSystem, type LayoutSystemContext } from './layout-system/layout-system.js';
@@ -36,7 +36,7 @@ export declare class LayoutSystem<ENTITIES extends DomainEntity<string>> {
36
36
  splitSidebar: boolean;
37
37
  showSelectionBackButton: boolean;
38
38
  shareDisabled: boolean;
39
- availableLocales: string[];
39
+ availableLocales: readonly string[];
40
40
  indicatorSwitch: boolean;
41
41
  };
42
42
  getSidebarSummaryPage: (state: DomainState<ENTITIES>) => {
@@ -71,5 +71,5 @@ export declare class LayoutSystem<ENTITIES extends DomainEntity<string>> {
71
71
  hasSplitSidebar: boolean;
72
72
  };
73
73
  getToolbarState: (state: DomainState<ENTITIES>) => ToolbarComponentState;
74
- getNavigationSteps: (state: DomainState<ENTITIES>) => import("#package/domain").NavigationStep[];
74
+ getNavigationSteps: (state: DomainState<ENTITIES>) => readonly import("#package/domain").NavigationStep[];
75
75
  }
@@ -1 +1 @@
1
- import{P as t,match as e}from"ts-pattern";import{SystemState as o,applicationConfigComponent as n,customSummaryPageComponent as a,entityHeaderComponent as i,navigationStepsComponent as r,propertyPageComponent as s,sidebarTabsComponent as l,simpleSummaryComponent as d,toolbarComponent as c}from"#package/domain";import{layoutStateComponent as g}from"./layout-state.js";import{toolbarHelpElementName as u}from"./toolbar-help-element.js";export class LayoutSystem{_context;_toolbarCache=new WeakMap;state;constructor(t){this._context=t,this.state=new o({...this._context,selectors:this._context.domainContextSelectors,componentType:g,getInitialState:()=>({propertyPageStates:{}})})}get _toolbarHelpExists(){return void 0!==this._context.specSelectors.getElementSlots().layoutElements[u]}get _hasAssistant(){return void 0!==this._context.specSelectors.getAssistant()}initialize=()=>{this.state.initialize()};getCleanUpPropertyPageStateUpdates=(t,e)=>this.state.getUpdates(e=>{if(!e.propertyPageStates[t])return null;let o={...e.propertyPageStates};return delete o[t],{...e,propertyPageStates:o}},e);getLayoutConfig=t=>{let e=this._context.domainContextSelectors.getComponentReader().readFirstRootComponent({componentTypes:[n]},t),o=e?.state.shareDisabled??!1,a=o||(e?.state.shareOwnerLinkDisabled??!1),i=o||(e?.state.shareReadRevisionLinkDisabled??!1);return{layout:e?.state.layout??"universal",ignoreSelectionInSidebar:e?.state.ignoreSelectionInSidebar??!1,miniSidebar:e?.state.miniSidebar??!1,splitSidebar:e?.state.splitSidebar??!1,showSelectionBackButton:e?.state.showSelectionBackButton??!0,shareDisabled:a&&i,availableLocales:e?.state.availableLocales??["en"],indicatorSwitch:e?.state.indicatorSwitch??!0}};getSidebarSummaryPage=t=>{let e=this._context.domainContextSelectors.getNavigationSystem().getActiveNavigationState(t),o=this._context.domainContextSelectors.getComponentReader().readFirstRootComponent({componentTypes:[a,d]},t),n=e===o?.state.summaryNavigationState,i=o?.state.summaryNavigationState;return{page:o,isSummaryActive:n,summaryNavigationState:i}};getEnterSidebarSummaryUpdates=t=>{let{summaryNavigationState:e}=this.getSidebarSummaryPage(t);return e?[this._context.domainContextSelectors.getNavigationSystem().getPushNavigationUpdate(e,t)]:[]};getLeaveSidebarSummaryUpdates=t=>{let e=this._context.domainContextSelectors.getNavigationSystem().getPopNavigationUpdate(t);if(e)return[e];let o=this._context.domainContextSelectors.getNavigationStates().at(0);return o?(this._context.domainServicesSelectors.getLogger().error("There is no navigation state to pop, falling back to the initial navigation state. Check whether the history stack is not broken by some custom navigation logic."),[this._context.domainContextSelectors.getNavigationSystem().getNavigationUpdate(o)]):(this._context.domainServicesSelectors.getLogger().error("There is no navigation state to pop and no initial navigation state to fallback to, this should not happen"),[])};getPushSidebarStackPageUpdates=(t,e,o,n)=>this.state.getUpdates(n=>{let a=n.propertyPageStates[t]??{customState:{},stackPages:[]};return{...n,propertyPageStates:{...n.propertyPageStates,[t]:{...a,stackPages:[...a.stackPages,{props:o,component:e}]}}}},n);getPopSidebarStackPageUpdates=(t,e)=>this.state.getUpdates(e=>{let o=e.propertyPageStates[t]??{customState:{},stackPages:[]};return{...e,propertyPageStates:{...e.propertyPageStates,[t]:{...o,stackPages:o.stackPages.slice(0,-1)}}}},e);getSidebarBackUpdates=t=>{let e=this._context.domainContextSelectors.getNavigationSystem().getHasStackToPop(t),o=this._context.domainContextSelectors.getNavigationSystem().getIsRootSelected(t),{renderedStackedPage:n,summaryPage:a,activePropertyPageId:i}=this.getSidebarContent(t);if(a)return this.getLeaveSidebarSummaryUpdates(t);if(n&&i)return this.getPopSidebarStackPageUpdates(i,t);if(e){let e=this._context.domainContextSelectors.getNavigationSystem().getPopNavigationUpdate(t);return e?[e]:[]}return o?[]:[this._context.domainContextSelectors.getNavigationSystem().getDeselectUpdate()]};getSidebarContent=t=>{let e=this._context.domainContextSelectors.getNavigationSystem().getActiveSelectionState(t),o=this.state.get(t),n=this.getLayoutConfig(t),a=this._context.domainContextSelectors.getComponentReader().readManyComponents({componentTypes:[l],entityIds:[e]},t).some(t=>t.state.tabs.length>0),r=n.miniSidebar&&!a;r&&a&&this._context.domainServicesSelectors.getLogger().warn("Mini sidebar is not active because the layout contains tabs. Only layouts without tabs can have mini sidebar.");let d=this._context.domainContextSelectors.getComponentReader().readManyComponents({componentTypes:[s]},t),{isSummaryActive:c,page:g}=this.getSidebarSummaryPage(t),u=this._context.domainContextSelectors.getComponentReader().readManyComponents({componentTypes:[i]},t),p=this._context.domainContextSelectors.getCompositionProjections().getTree(t).map.get(e);if(!p)throw Error(`Selected entity ${e} not found in composition tree`);let m=this._context.domainContextSelectors.getCompositionProjections().getTree(t).map.get(t.rootEntityId);if(!m)throw Error(`Root entity ${t.rootEntityId} not found in composition tree`);let h=(n.ignoreSelectionInSidebar?[m]:[p,...p.ancestors()]).map(t=>{let e=n.ignoreSelectionInSidebar?d:d.filter(e=>e.componentInstance.entityId===t.id),o=u.filter(e=>e.componentInstance.entityId===t.id);return{id:t.id,propertyPages:e,header:o[0]??null}}),S=h[0]?.id,b=(S?o.propertyPageStates[S]?.stackPages??[]:[]).at(-1)??null,k=this._context.domainContextSelectors.getNavigationSystem().getHasStackToPop(t),x=this._context.domainContextSelectors.getNavigationSystem().getIsRootSelected(t),y=c&&k||k||!!b||!x&&n.showSelectionBackButton&&!n.ignoreSelectionInSidebar;return c?{summaryPage:g,propertyPages:[],isBackAvailable:y,hasMiniSidebar:r,hasSplitSidebar:n.splitSidebar}:{summaryPage:null,propertyPages:h,renderedStackedPage:b,activePropertyPageId:S,isBackAvailable:y,hasMiniSidebar:r,hasSplitSidebar:n.splitSidebar}};getToolbarState=o=>{let n=this._toolbarHelpExists,a=this._hasAssistant,i=this._toolbarCache.get(o);if(i&&i.toolbarHelpExists===n&&i.hasAssistant===a)return i.result;let r=this._context.domainContextSelectors.getExpressionContext(),s=this._context.domainContextSelectors.getNavigationSystem().getActiveFullscreenState(o),l="read"===r.mode,d=this._context.domainContextSelectors.getComponentReader().readFirstRootComponent({componentTypes:[c]},o),g=this._context.domainContextSelectors.getDimensionSystem().getDimensionConfig(o),u=this.getLayoutConfig(o),p="read"===this._context.domainContextSelectors.getExpressionContext().mode,m=u.availableLocales.length>1,h=!p&&!u.shareDisabled,S=u.indicatorSwitch,b=g.availableDimensions.length>1||S,k=a?[{kind:"toolbarButtonGroup",children:[{kind:"assistantToolbarButton"}]}]:[],x=e(d).returnType().with(t.nonNullable,t=>t.state).with(t.nullish,()=>e([s,l]).returnType().with([!1,!1],()=>({desktop:[{kind:"toolbarButtonGroup",children:[{kind:"enterFullscreenToolbarButton"}]},{kind:"toolbarButtonGroup",children:[{kind:"resetCameraToolbarButton"}]},...m?[{kind:"toolbarButtonGroup",children:[{kind:"languageToolbarButton"}]}]:[],...h||b?[{kind:"toolbarButtonGroup",children:[...h?[{kind:"shareToolbarButton"}]:[],...b?[{kind:"measurementsToolbarButton"}]:[],...n?[{kind:"helpToolbarButton"}]:[]]}]:[],{kind:"toolbarButtonGroup",children:[{kind:"undoToolbarButton"},{kind:"redoToolbarButton"}]},...k],mobile:[{kind:"toolbarButtonGroup",children:[{kind:"undoToolbarButton"},{kind:"redoToolbarButton"}]},{kind:"toolbarButtonGroup",children:[{kind:"resetCameraToolbarButton"}]},{kind:"toolbarButtonGroup",children:[{kind:"enterFullscreenToolbarButton"}]},...k],mobileMenu:[...h?[{kind:"shareMenuAction"}]:[],...b?[{kind:"measurementsMenuAction"}]:[],...m?[{kind:"languageMenuAction"}]:[],...n?[{kind:"helpMenuAction"}]:[]]})).with([!0,!1],()=>({desktop:[{kind:"toolbarButtonGroup",children:[{kind:"exitFullscreenToolbarButton"}]}],mobile:[{kind:"toolbarButtonGroup",children:[{kind:"exitFullscreenToolbarButton"}]}],mobileMenu:[]})).with([!1,!0],()=>({desktop:[{kind:"toolbarButtonGroup",children:[{kind:"enterFullscreenToolbarButton"}]},{kind:"toolbarButtonGroup",children:[{kind:"resetCameraToolbarButton"}]},...m?[{kind:"toolbarButtonGroup",children:[{kind:"languageToolbarButton"}]}]:[],...b?[{kind:"toolbarButtonGroup",children:[...b?[{kind:"measurementsToolbarButton"}]:[]]}]:[],...n?[{kind:"helpToolbarButton"}]:[],...k],mobile:[{kind:"toolbarButtonGroup",children:[{kind:"resetCameraToolbarButton"}]},{kind:"toolbarButtonGroup",children:[{kind:"enterFullscreenToolbarButton"}]},...k],mobileMenu:[...b?[{kind:"measurementsMenuAction"}]:[],...m?[{kind:"languageMenuAction"}]:[],...n?[{kind:"helpMenuAction"}]:[]]})).with([!0,!0],()=>({desktop:[{kind:"toolbarButtonGroup",children:[{kind:"exitFullscreenToolbarButton"}]}],mobile:[{kind:"toolbarButtonGroup",children:[{kind:"exitFullscreenToolbarButton"}]}],mobileMenu:[]})).exhaustive()).exhaustive();return this._toolbarCache.set(o,{toolbarHelpExists:n,hasAssistant:a,result:x}),x};getNavigationSteps=t=>{let e=this._context.domainContextSelectors.getComponentReader().readFirstRootComponent({componentTypes:[r]},t);return e?.state.steps??[]}}
1
+ import{P as t,match as e}from"ts-pattern";import{SystemState as o,applicationConfigComponent as n,customSummaryPageComponent as a,entityHeaderComponent as i,navigationStepsComponent as r,propertyPageComponent as s,sidebarTabsComponent as l,simpleSummaryComponent as d,toolbarComponent as c}from"#package/domain";import{layoutStateComponent as g}from"./layout-state.js";import{toolbarHelpElementName as u}from"./toolbar-help-element.js";export class LayoutSystem{_context;_toolbarCache=new WeakMap;state;constructor(t){this._context=t,this.state=new o({...this._context,selectors:this._context.domainContextSelectors,componentType:g,getInitialState:()=>({propertyPageStates:{}})})}get _toolbarHelpExists(){return void 0!==this._context.specSelectors.getElementSlots().layoutElements[u]}get _hasAssistant(){return null!=this._context.specSelectors.getAssistant()}initialize=()=>{this.state.initialize()};getCleanUpPropertyPageStateUpdates=(t,e)=>this.state.getUpdates(e=>{if(!e.propertyPageStates[t])return null;let o={...e.propertyPageStates};return delete o[t],{...e,propertyPageStates:o}},e);getLayoutConfig=t=>{let e=this._context.domainContextSelectors.getComponentReader().readFirstRootComponent({componentTypes:[n]},t),o=e?.state.shareDisabled??!1,a=o||(e?.state.shareOwnerLinkDisabled??!1),i=o||(e?.state.shareReadRevisionLinkDisabled??!1);return{layout:e?.state.layout??"universal",ignoreSelectionInSidebar:e?.state.ignoreSelectionInSidebar??!1,miniSidebar:e?.state.miniSidebar??!1,splitSidebar:e?.state.splitSidebar??!1,showSelectionBackButton:e?.state.showSelectionBackButton??!0,shareDisabled:a&&i,availableLocales:e?.state.availableLocales??["en"],indicatorSwitch:e?.state.indicatorSwitch??!0}};getSidebarSummaryPage=t=>{let e=this._context.domainContextSelectors.getNavigationSystem().getActiveNavigationState(t),o=this._context.domainContextSelectors.getComponentReader().readFirstRootComponent({componentTypes:[a,d]},t),n=e===o?.state.summaryNavigationState,i=o?.state.summaryNavigationState;return{page:o,isSummaryActive:n,summaryNavigationState:i}};getEnterSidebarSummaryUpdates=t=>{let{summaryNavigationState:e}=this.getSidebarSummaryPage(t);return e?[this._context.domainContextSelectors.getNavigationSystem().getPushNavigationUpdate(e,t)]:[]};getLeaveSidebarSummaryUpdates=t=>{let e=this._context.domainContextSelectors.getNavigationSystem().getPopNavigationUpdate(t);if(e)return[e];let o=this._context.domainContextSelectors.getNavigationStates().at(0);return o?(this._context.domainServicesSelectors.getLogger().error("There is no navigation state to pop, falling back to the initial navigation state. Check whether the history stack is not broken by some custom navigation logic."),[this._context.domainContextSelectors.getNavigationSystem().getNavigationUpdate(o)]):(this._context.domainServicesSelectors.getLogger().error("There is no navigation state to pop and no initial navigation state to fallback to, this should not happen"),[])};getPushSidebarStackPageUpdates=(t,e,o,n)=>this.state.getUpdates(n=>{let a=n.propertyPageStates[t]??{customState:{},stackPages:[]};return{...n,propertyPageStates:{...n.propertyPageStates,[t]:{...a,stackPages:[...a.stackPages,{props:o,component:e}]}}}},n);getPopSidebarStackPageUpdates=(t,e)=>this.state.getUpdates(e=>{let o=e.propertyPageStates[t]??{customState:{},stackPages:[]};return{...e,propertyPageStates:{...e.propertyPageStates,[t]:{...o,stackPages:o.stackPages.slice(0,-1)}}}},e);getSidebarBackUpdates=t=>{let e=this._context.domainContextSelectors.getNavigationSystem().getHasStackToPop(t),o=this._context.domainContextSelectors.getNavigationSystem().getIsRootSelected(t),{renderedStackedPage:n,summaryPage:a,activePropertyPageId:i}=this.getSidebarContent(t);if(a)return this.getLeaveSidebarSummaryUpdates(t);if(n&&i)return this.getPopSidebarStackPageUpdates(i,t);if(e){let e=this._context.domainContextSelectors.getNavigationSystem().getPopNavigationUpdate(t);return e?[e]:[]}return o?[]:[this._context.domainContextSelectors.getNavigationSystem().getDeselectUpdate()]};getSidebarContent=t=>{let e=this._context.domainContextSelectors.getNavigationSystem().getActiveSelectionState(t),o=this.state.get(t),n=this.getLayoutConfig(t),a=this._context.domainContextSelectors.getComponentReader().readManyComponents({componentTypes:[l],entityIds:[e]},t).some(t=>t.state.tabs.length>0),r=n.miniSidebar&&!a;r&&a&&this._context.domainServicesSelectors.getLogger().warn("Mini sidebar is not active because the layout contains tabs. Only layouts without tabs can have mini sidebar.");let d=this._context.domainContextSelectors.getComponentReader().readManyComponents({componentTypes:[s]},t),{isSummaryActive:c,page:g}=this.getSidebarSummaryPage(t),u=this._context.domainContextSelectors.getComponentReader().readManyComponents({componentTypes:[i]},t),p=this._context.domainContextSelectors.getCompositionProjections().getTree(t).map.get(e);if(!p)throw Error(`Selected entity ${e} not found in composition tree`);let m=this._context.domainContextSelectors.getCompositionProjections().getTree(t).map.get(t.rootEntityId);if(!m)throw Error(`Root entity ${t.rootEntityId} not found in composition tree`);let h=(n.ignoreSelectionInSidebar?[m]:[p,...p.ancestors()]).map(t=>{let e=n.ignoreSelectionInSidebar?d:d.filter(e=>e.componentInstance.entityId===t.id),o=u.filter(e=>e.componentInstance.entityId===t.id);return{id:t.id,propertyPages:e,header:o[0]??null}}),S=h[0]?.id,b=(S?o.propertyPageStates[S]?.stackPages??[]:[]).at(-1)??null,k=this._context.domainContextSelectors.getNavigationSystem().getHasStackToPop(t),x=this._context.domainContextSelectors.getNavigationSystem().getIsRootSelected(t),y=c&&k||k||!!b||!x&&n.showSelectionBackButton&&!n.ignoreSelectionInSidebar;return c?{summaryPage:g,propertyPages:[],isBackAvailable:y,hasMiniSidebar:r,hasSplitSidebar:n.splitSidebar}:{summaryPage:null,propertyPages:h,renderedStackedPage:b,activePropertyPageId:S,isBackAvailable:y,hasMiniSidebar:r,hasSplitSidebar:n.splitSidebar}};getToolbarState=o=>{let n=this._toolbarHelpExists,a=this._hasAssistant,i=this._toolbarCache.get(o);if(i&&i.toolbarHelpExists===n&&i.hasAssistant===a)return i.result;let r=this._context.domainContextSelectors.getExpressionContext(),s=this._context.domainContextSelectors.getNavigationSystem().getActiveFullscreenState(o),l="read"===r.mode,d=this._context.domainContextSelectors.getComponentReader().readFirstRootComponent({componentTypes:[c]},o),g=this._context.domainContextSelectors.getDimensionSystem().getDimensionConfig(o),u=this.getLayoutConfig(o),p="read"===this._context.domainContextSelectors.getExpressionContext().mode,m=u.availableLocales.length>1,h=!p&&!u.shareDisabled,S=u.indicatorSwitch,b=g.availableDimensions.length>1||S,k=a?[{kind:"toolbarButtonGroup",children:[{kind:"assistantToolbarButton"}]}]:[],x=e(d).returnType().with(t.nonNullable,t=>t.state).with(t.nullish,()=>e([s,l]).returnType().with([!1,!1],()=>({desktop:[{kind:"toolbarButtonGroup",children:[{kind:"enterFullscreenToolbarButton"}]},{kind:"toolbarButtonGroup",children:[{kind:"resetCameraToolbarButton"}]},...m?[{kind:"toolbarButtonGroup",children:[{kind:"languageToolbarButton"}]}]:[],...h||b?[{kind:"toolbarButtonGroup",children:[...h?[{kind:"shareToolbarButton"}]:[],...b?[{kind:"measurementsToolbarButton"}]:[],...n?[{kind:"helpToolbarButton"}]:[]]}]:[],{kind:"toolbarButtonGroup",children:[{kind:"undoToolbarButton"},{kind:"redoToolbarButton"}]},...k],mobile:[{kind:"toolbarButtonGroup",children:[{kind:"undoToolbarButton"},{kind:"redoToolbarButton"}]},{kind:"toolbarButtonGroup",children:[{kind:"resetCameraToolbarButton"}]},{kind:"toolbarButtonGroup",children:[{kind:"enterFullscreenToolbarButton"}]},...k],mobileMenu:[...h?[{kind:"shareMenuAction"}]:[],...b?[{kind:"measurementsMenuAction"}]:[],...m?[{kind:"languageMenuAction"}]:[],...n?[{kind:"helpMenuAction"}]:[]]})).with([!0,!1],()=>({desktop:[{kind:"toolbarButtonGroup",children:[{kind:"exitFullscreenToolbarButton"}]}],mobile:[{kind:"toolbarButtonGroup",children:[{kind:"exitFullscreenToolbarButton"}]}],mobileMenu:[]})).with([!1,!0],()=>({desktop:[{kind:"toolbarButtonGroup",children:[{kind:"enterFullscreenToolbarButton"}]},{kind:"toolbarButtonGroup",children:[{kind:"resetCameraToolbarButton"}]},...m?[{kind:"toolbarButtonGroup",children:[{kind:"languageToolbarButton"}]}]:[],...b?[{kind:"toolbarButtonGroup",children:[...b?[{kind:"measurementsToolbarButton"}]:[]]}]:[],...n?[{kind:"helpToolbarButton"}]:[],...k],mobile:[{kind:"toolbarButtonGroup",children:[{kind:"resetCameraToolbarButton"}]},{kind:"toolbarButtonGroup",children:[{kind:"enterFullscreenToolbarButton"}]},...k],mobileMenu:[...b?[{kind:"measurementsMenuAction"}]:[],...m?[{kind:"languageMenuAction"}]:[],...n?[{kind:"helpMenuAction"}]:[]]})).with([!0,!0],()=>({desktop:[{kind:"toolbarButtonGroup",children:[{kind:"exitFullscreenToolbarButton"}]}],mobile:[{kind:"toolbarButtonGroup",children:[{kind:"exitFullscreenToolbarButton"}]}],mobileMenu:[]})).exhaustive()).exhaustive();return this._toolbarCache.set(o,{toolbarHelpExists:n,hasAssistant:a,result:x}),x};getNavigationSteps=t=>{let e=this._context.domainContextSelectors.getComponentReader().readFirstRootComponent({componentTypes:[r]},t);return e?.state.steps??[]}}