@salsita-ai/sdk 0.50.0-develop.eb204e0da4 → 0.50.0-develop.f0150c4c2f

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 (1984) hide show
  1. package/README.md +28 -15
  2. package/dist/admin/create-admin-pages-from-spec.d.ts +1 -1
  3. package/dist/admin/default-admin-elements.d.ts +9 -0
  4. package/dist/admin/default-admin-elements.js +1 -0
  5. package/dist/admin/default-elements/built-in-entity-element.d.ts +10 -0
  6. package/dist/admin/default-elements/built-in-entity-element.js +1 -0
  7. package/dist/admin/default-elements/built-in-layout-element.d.ts +10 -0
  8. package/dist/admin/default-elements/built-in-layout-element.js +1 -0
  9. package/dist/admin/default-elements/index.d.ts +2 -0
  10. package/dist/admin/default-elements/index.js +1 -0
  11. package/dist/admin/index.d.ts +1 -0
  12. package/dist/admin/index.js +1 -1
  13. package/dist/application-spec/caching/content-diff.js +1 -1
  14. package/dist/application-spec/core/application-file.d.ts +0 -2
  15. package/dist/application-spec/core/application-file.js +1 -1
  16. package/dist/application-spec/core/components/component-filter.d.ts +53 -0
  17. package/dist/application-spec/core/components/component-filter.js +1 -0
  18. package/dist/application-spec/core/components/index.d.ts +2 -0
  19. package/dist/application-spec/core/components/index.js +1 -0
  20. package/dist/application-spec/core/components/sdk-code-ref.d.ts +9 -0
  21. package/dist/application-spec/core/components/sdk-code-ref.js +1 -0
  22. package/dist/application-spec/core/enhanced-json-value.d.ts +0 -68
  23. package/dist/application-spec/core/enhanced-json-value.js +1 -1
  24. package/dist/application-spec/core/expressions/index.d.ts +2 -0
  25. package/dist/application-spec/core/expressions/index.js +1 -0
  26. package/dist/application-spec/core/expressions/relation-expression-params.d.ts +11 -0
  27. package/dist/application-spec/core/expressions/sdk-expression-implementation.d.ts +24 -0
  28. package/dist/application-spec/core/expressions/sdk-expression-implementation.js +1 -0
  29. package/dist/application-spec/core/index.d.ts +2 -0
  30. package/dist/application-spec/core/index.js +1 -1
  31. package/dist/application-spec/core/json-value.d.ts +1 -1
  32. package/dist/application-spec/enhanced-json/eval-to-constant.d.ts +14 -0
  33. package/dist/application-spec/enhanced-json/index.d.ts +4 -0
  34. package/dist/application-spec/enhanced-json/index.js +1 -0
  35. package/dist/application-spec/enhanced-json/is-enhanced-json-array.d.ts +2 -0
  36. package/dist/application-spec/enhanced-json/is-enhanced-json-array.js +1 -0
  37. package/dist/application-spec/enhanced-json/resolve-enhanced-json-value.d.ts +18 -0
  38. package/dist/application-spec/enhanced-json/resolve-enhanced-json-value.js +1 -0
  39. package/dist/application-spec/enhanced-json/schema-from-value.d.ts +24 -0
  40. package/dist/application-spec/enhanced-json/schema-from-value.js +1 -0
  41. package/dist/application-spec/enhanced-json/stringify-enhanced-json-value.d.ts +14 -0
  42. package/dist/application-spec/enhanced-json/stringify-enhanced-json-value.js +1 -0
  43. package/dist/application-spec/enhanced-json/validate-enhanced-json-value-caps.d.ts +12 -0
  44. package/dist/application-spec/enhanced-json/validate-enhanced-json-value-caps.js +1 -0
  45. package/dist/application-spec/enhanced-json/validate-no-legacy-code-ref.d.ts +13 -0
  46. package/dist/application-spec/enhanced-json/validate-no-legacy-code-ref.js +1 -0
  47. package/dist/application-spec/errors/diagnostic-codes.d.ts +20 -0
  48. package/dist/application-spec/errors/diagnostic-codes.js +1 -1
  49. package/dist/application-spec/errors/diagnostic-messages.d.ts +23 -0
  50. package/dist/application-spec/errors/diagnostic-messages.js +1 -1
  51. package/dist/application-spec/generate-application/code/common/code-imports.js +1 -1
  52. package/dist/application-spec/generate-application/code/common/env-reader.js +2 -2
  53. package/dist/application-spec/generate-application/code/common/index.d.ts +2 -0
  54. package/dist/application-spec/generate-application/code/common/index.js +1 -1
  55. package/dist/application-spec/generate-application/code/common/project-module-list.d.ts +8 -0
  56. package/dist/application-spec/generate-application/code/common/project-module-list.js +3 -0
  57. package/dist/application-spec/generate-application/code/common/single-quoted-string.d.ts +6 -0
  58. package/dist/application-spec/generate-application/code/common/single-quoted-string.js +1 -0
  59. package/dist/application-spec/generate-application/code/domain-runtime-files.js +1 -1
  60. package/dist/application-spec/generate-application/code/generate-application-code.d.ts +3 -2
  61. package/dist/application-spec/generate-application/code/generate-application-code.js +1 -1
  62. package/dist/application-spec/generate-application/code/project-scaffolding.d.ts +22 -14
  63. package/dist/application-spec/generate-application/code/project-scaffolding.js +2 -2
  64. package/dist/application-spec/generate-application/code/standalone-app-files.d.ts +2 -2
  65. package/dist/application-spec/generate-application/code/standalone-app-files.js +1 -1
  66. package/dist/application-spec/generate-application/code/story-files.js +1 -1
  67. package/dist/application-spec/generate-application/code/templates/admin-config.js +3 -0
  68. package/dist/application-spec/generate-application/code/templates/admin-domain-code.d.ts +1 -2
  69. package/dist/application-spec/generate-application/code/templates/admin-domain-code.js +6 -14
  70. package/dist/application-spec/generate-application/code/templates/admin-frontend-code.d.ts +1 -2
  71. package/dist/application-spec/generate-application/code/templates/admin-frontend-code.js +4 -4
  72. package/dist/application-spec/generate-application/code/templates/application-types.js +6 -6
  73. package/dist/application-spec/generate-application/code/templates/common/format-property-key.d.ts +7 -0
  74. package/dist/application-spec/generate-application/code/templates/common/format-property-key.js +1 -0
  75. package/dist/application-spec/generate-application/code/templates/common/schema-to-type-string.js +3 -3
  76. package/dist/application-spec/generate-application/code/templates/configurator-config.js +6 -4
  77. package/dist/application-spec/generate-application/code/templates/configurator-domain-code.d.ts +2 -2
  78. package/dist/application-spec/generate-application/code/templates/configurator-domain-code.js +7 -13
  79. package/dist/application-spec/generate-application/code/templates/configurator-frontend-code.d.ts +1 -2
  80. package/dist/application-spec/generate-application/code/templates/configurator-frontend-code.js +7 -9
  81. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/domain-factory-types.d.ts +35 -0
  82. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/domain-factory-types.js +5 -0
  83. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/index.d.ts +1 -0
  84. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/index.js +1 -0
  85. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-assistant.d.ts +2 -2
  86. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-assistant.js +1 -1
  87. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-component-optics.d.ts +1 -1
  88. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-component-optics.js +7 -7
  89. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-defaults.d.ts +4 -2
  90. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-defaults.js +1 -1
  91. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-domain-block.d.ts +3 -1
  92. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-domain-block.js +73 -73
  93. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.d.ts +9 -1
  94. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.js +1 -1
  95. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-phx-globals.js +6 -0
  96. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-presets.js +1 -1
  97. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-relation-expressions.js +1 -1
  98. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-resources.d.ts +6 -8
  99. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-resources.js +21 -21
  100. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-states.d.ts +1 -1
  101. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-states.js +2 -2
  102. package/dist/application-spec/generate-application/code/templates/domain-spec/index.d.ts +3 -2
  103. package/dist/application-spec/generate-application/code/templates/domain-spec/index.js +1 -1
  104. package/dist/application-spec/generate-application/code/templates/domain-spec.js +11 -11
  105. package/dist/application-spec/generate-application/code/templates/domain.js +4 -4
  106. package/dist/application-spec/generate-application/code/templates/eslint-config.d.ts +5 -0
  107. package/dist/application-spec/generate-application/code/templates/eslint-config.js +4 -5
  108. package/dist/application-spec/generate-application/code/templates/frontend-config.js +3 -5
  109. package/dist/application-spec/generate-application/code/templates/gitignore.js +0 -3
  110. package/dist/application-spec/generate-application/code/templates/global-definition/generate-action-types.d.ts +11 -0
  111. package/dist/application-spec/generate-application/code/templates/global-definition/generate-action-types.js +8 -0
  112. package/dist/application-spec/generate-application/code/templates/global-definition/generate-phx-types.d.ts +43 -0
  113. package/dist/application-spec/generate-application/code/templates/global-definition/generate-phx-types.js +31 -0
  114. package/dist/application-spec/generate-application/code/templates/global-definition/index.d.ts +2 -0
  115. package/dist/application-spec/generate-application/code/templates/global-definition/index.js +1 -1
  116. package/dist/application-spec/generate-application/code/templates/globals.js +24 -42
  117. package/dist/application-spec/generate-application/code/templates/index.d.ts +4 -10
  118. package/dist/application-spec/generate-application/code/templates/index.js +1 -1
  119. package/dist/application-spec/generate-application/code/templates/lingui-rc.d.ts +5 -0
  120. package/dist/application-spec/generate-application/code/templates/lingui-rc.js +4 -4
  121. package/dist/application-spec/generate-application/code/templates/prettier-config.d.ts +5 -0
  122. package/dist/application-spec/generate-application/code/templates/prettier-config.js +4 -5
  123. package/dist/application-spec/generate-application/code/templates/root-tsconfig.d.ts +6 -0
  124. package/dist/application-spec/generate-application/code/templates/root-tsconfig.js +2 -0
  125. package/dist/application-spec/generate-application/code/templates/skills/phoenix-cli-skill.js +1 -1
  126. package/dist/application-spec/generate-application/code/templates/skills/phoenix-create-configurator-skill.js +95 -41
  127. package/dist/application-spec/generate-application/code/templates/skills/phoenix-feedback-skill.js +40 -17
  128. package/dist/application-spec/generate-application/code/templates/skills/phoenix-review-skill.js +13 -5
  129. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill.js +1 -1
  130. package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.d.ts +1 -0
  131. package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.js +6 -0
  132. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.d.ts +62 -16
  133. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.js +19 -7
  134. package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.d.ts +58 -0
  135. package/dist/application-spec/generate-application/code/templates/spec-code/collect-spec-code.js +1 -0
  136. package/dist/application-spec/generate-application/code/templates/spec-code/index.d.ts +2 -0
  137. package/dist/application-spec/generate-application/code/templates/spec-code/index.js +1 -0
  138. package/dist/application-spec/generate-application/code/templates/spec-code/spec-code.d.ts +18 -0
  139. package/dist/application-spec/generate-application/code/templates/spec-code/spec-code.js +41 -0
  140. package/dist/application-spec/generate-application/code/templates/spec-messages/index.d.ts +1 -0
  141. package/dist/application-spec/generate-application/code/templates/spec-messages/index.js +1 -0
  142. package/dist/application-spec/generate-application/code/templates/spec-messages/spec-messages.d.ts +20 -0
  143. package/dist/application-spec/generate-application/code/templates/spec-messages/spec-messages.js +6 -0
  144. package/dist/application-spec/generate-application/code/templates/story/phx-module.d.ts +8 -2
  145. package/dist/application-spec/generate-application/code/templates/story/phx-module.js +15 -3
  146. package/dist/application-spec/generate-application/code/templates/story/wrapper.d.ts +3 -0
  147. package/dist/application-spec/generate-application/code/templates/story/wrapper.js +2 -1
  148. package/dist/application-spec/generate-application/code/templates/tsconfig.d.ts +5 -0
  149. package/dist/application-spec/generate-application/code/templates/tsconfig.js +1 -1
  150. package/dist/application-spec/generate-application/code/templates/webhook-builders.js +9 -4
  151. package/dist/application-spec/generate-application/code/templates/webhook-index.d.ts +6 -1
  152. package/dist/application-spec/generate-application/code/templates/webhook-index.js +10 -1
  153. package/dist/application-spec/generate-application/code/templates/webhooks-config.js +2 -3
  154. package/dist/application-spec/generate-application/index.d.ts +2 -0
  155. package/dist/application-spec/generate-application/index.js +1 -1
  156. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.d.ts +6 -4
  157. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.js +1 -1
  158. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.d.ts +8 -3
  159. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.js +1 -1
  160. package/dist/application-spec/generate-application/runtime/admin-runtime/states-runtime.d.ts +2 -2
  161. package/dist/application-spec/generate-application/runtime/application-runtime.d.ts +19 -7
  162. package/dist/application-spec/generate-application/runtime/application-runtime.js +1 -1
  163. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.d.ts +6 -4
  164. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.js +1 -1
  165. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.d.ts +9 -4
  166. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.js +1 -1
  167. package/dist/application-spec/generate-application/runtime/configurator-runtime/states-runtime.d.ts +2 -2
  168. package/dist/application-spec/generate-application/runtime/factory-data/factory-data-runtime.d.ts +43 -0
  169. package/dist/application-spec/generate-application/runtime/factory-data/factory-data-runtime.js +1 -0
  170. package/dist/application-spec/generate-application/runtime/factory-data/index.d.ts +3 -0
  171. package/dist/application-spec/generate-application/runtime/factory-data/index.js +1 -0
  172. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.d.ts +13 -0
  173. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.js +1 -0
  174. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.d.ts +16 -0
  175. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.js +1 -0
  176. package/dist/application-spec/generate-application/runtime/migrations/index.d.ts +1 -0
  177. package/dist/application-spec/generate-application/runtime/migrations/index.js +1 -0
  178. package/dist/application-spec/generate-application/runtime/migrations/migration-runtime.d.ts +53 -0
  179. package/dist/application-spec/generate-application/runtime/migrations/migration-runtime.js +1 -0
  180. package/dist/application-spec/generate-application/runtime/sections/actions-runtime.d.ts +14 -0
  181. package/dist/application-spec/generate-application/runtime/sections/actions-runtime.js +1 -0
  182. package/dist/application-spec/generate-application/runtime/sections/assistant-runtime.d.ts +5 -4
  183. package/dist/application-spec/generate-application/runtime/sections/assistant-runtime.js +1 -1
  184. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.d.ts +3 -2
  185. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.js +1 -1
  186. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.d.ts +2 -1
  187. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.js +1 -1
  188. package/dist/application-spec/generate-application/runtime/sections/component-optic.d.ts +5 -1
  189. package/dist/application-spec/generate-application/runtime/sections/component-optic.js +1 -1
  190. package/dist/application-spec/generate-application/runtime/sections/data-runtime.d.ts +4 -4
  191. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.d.ts +7 -4
  192. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.js +1 -1
  193. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.d.ts +9 -5
  194. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.js +1 -1
  195. package/dist/application-spec/generate-application/runtime/sections/index.d.ts +1 -0
  196. package/dist/application-spec/generate-application/runtime/sections/index.js +1 -1
  197. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.d.ts +3 -1
  198. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.js +1 -1
  199. package/dist/application-spec/generate-application/runtime/sections/theme-runtime.d.ts +2 -2
  200. package/dist/application-spec/generate-application/runtime/sections/transformers-runtime.d.ts +4 -6
  201. package/dist/application-spec/generate-application/runtime/spec-code/index.d.ts +2 -0
  202. package/dist/application-spec/generate-application/runtime/spec-code/index.js +1 -0
  203. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.d.ts +18 -0
  204. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.js +1 -0
  205. package/dist/application-spec/generate-application/runtime/spec-code/spec-code-module.d.ts +17 -0
  206. package/dist/application-spec/generate-application/runtime-spec/decode-runtime-spec.d.ts +9 -0
  207. package/dist/application-spec/generate-application/runtime-spec/decode-runtime-spec.js +1 -0
  208. package/dist/application-spec/generate-application/runtime-spec/encode-runtime-spec.d.ts +8 -0
  209. package/dist/application-spec/generate-application/runtime-spec/encode-runtime-spec.js +1 -0
  210. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.d.ts +27 -0
  211. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.js +1 -0
  212. package/dist/application-spec/generate-application/runtime-spec/index.d.ts +5 -0
  213. package/dist/application-spec/generate-application/runtime-spec/index.js +1 -0
  214. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.d.ts +68 -0
  215. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.js +1 -0
  216. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.d.ts +40 -0
  217. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.js +1 -0
  218. package/dist/application-spec/index.d.ts +1 -0
  219. package/dist/application-spec/index.js +1 -1
  220. package/dist/application-spec/parse-application-files/categorize/categorize-files.d.ts +37 -1
  221. package/dist/application-spec/parse-application-files/categorize/categorize-files.js +1 -1
  222. package/dist/application-spec/parse-application-files/categorize/earlier-generated-editor-configs.d.ts +16 -0
  223. package/dist/application-spec/parse-application-files/categorize/earlier-generated-editor-configs.js +9 -0
  224. package/dist/application-spec/parse-application-files/categorize/earlier-generated-tsconfig.d.ts +9 -0
  225. package/dist/application-spec/parse-application-files/categorize/earlier-generated-tsconfig.js +1 -0
  226. package/dist/application-spec/parse-application-files/categorize/module-analysis.d.ts +1 -1
  227. package/dist/application-spec/parse-application-files/categorize/module-analysis.js +1 -1
  228. package/dist/application-spec/parse-application-files/merge/index.d.ts +1 -0
  229. package/dist/application-spec/parse-application-files/merge/index.js +1 -1
  230. package/dist/application-spec/parse-application-files/merge/merged-actions.d.ts +11 -0
  231. package/dist/application-spec/parse-application-files/merge/merged-actions.js +1 -0
  232. package/dist/application-spec/parse-application-files/merge/merged-spec.d.ts +2 -0
  233. package/dist/application-spec/parse-application-files/merge/merged-spec.js +1 -1
  234. package/dist/application-spec/parse-application-files/raw-spec/index.d.ts +1 -0
  235. package/dist/application-spec/parse-application-files/raw-spec/index.js +1 -1
  236. package/dist/application-spec/parse-application-files/raw-spec/parse-yaml-spec-file.js +1 -1
  237. package/dist/application-spec/parse-application-files/raw-spec/raw-actions.d.ts +18 -0
  238. package/dist/application-spec/parse-application-files/raw-spec/raw-actions.js +1 -0
  239. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.d.ts +29 -4
  240. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.js +1 -1
  241. package/dist/application-spec/parse-application-files/raw-spec/raw-spec-file.d.ts +2 -0
  242. package/dist/application-spec/parse-application-files/raw-spec/raw-spec-file.js +1 -1
  243. package/dist/application-spec/parse-application-files/resolve/resolve-import-modules.js +1 -1
  244. package/dist/application-spec/parse-application-files/spec/application/admin-spec/admin-spec.js +1 -1
  245. package/dist/application-spec/parse-application-files/spec/application/application-spec.js +1 -1
  246. package/dist/application-spec/parse-application-files/spec/application/configurator-spec/configurator-spec.d.ts +4 -2
  247. package/dist/application-spec/parse-application-files/spec/application/configurator-spec/configurator-spec.js +1 -1
  248. package/dist/application-spec/parse-application-files/spec/common/index.d.ts +2 -0
  249. package/dist/application-spec/parse-application-files/spec/common/index.js +1 -1
  250. package/dist/application-spec/parse-application-files/spec/common/schema-ref-resolver.d.ts +23 -0
  251. package/dist/application-spec/parse-application-files/spec/common/schema-ref-resolver.js +1 -0
  252. package/dist/application-spec/parse-application-files/spec/common/value-type/format-value-type.d.ts +3 -0
  253. package/dist/application-spec/parse-application-files/spec/common/value-type/format-value-type.js +1 -0
  254. package/dist/application-spec/parse-application-files/spec/common/value-type/index.d.ts +5 -0
  255. package/dist/application-spec/parse-application-files/spec/common/value-type/index.js +1 -0
  256. package/dist/application-spec/parse-application-files/spec/common/value-type/intersect-value-types.d.ts +6 -0
  257. package/dist/application-spec/parse-application-files/spec/common/value-type/intersect-value-types.js +1 -0
  258. package/dist/application-spec/parse-application-files/spec/common/value-type/is-assignable-value-type.d.ts +8 -0
  259. package/dist/application-spec/parse-application-files/spec/common/value-type/is-assignable-value-type.js +1 -0
  260. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type-at.d.ts +10 -0
  261. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type-at.js +1 -0
  262. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type.d.ts +98 -0
  263. package/dist/application-spec/parse-application-files/spec/common/value-type/value-type.js +1 -0
  264. package/dist/application-spec/parse-application-files/spec/components/bindings/component-path.d.ts +13 -0
  265. package/dist/application-spec/parse-application-files/spec/components/bindings/component-path.js +1 -0
  266. package/dist/application-spec/parse-application-files/spec/components/bindings/index.d.ts +2 -0
  267. package/dist/application-spec/parse-application-files/spec/components/bindings/index.js +1 -1
  268. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding-type.d.ts +24 -0
  269. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding-type.js +1 -0
  270. package/dist/application-spec/parse-application-files/spec/components/component-entry.d.ts +1 -9
  271. package/dist/application-spec/parse-application-files/spec/components/component-entry.js +1 -1
  272. package/dist/application-spec/parse-application-files/spec/components/component-filter.d.ts +1 -54
  273. package/dist/application-spec/parse-application-files/spec/components/component-filter.js +1 -1
  274. package/dist/application-spec/parse-application-files/spec/components/component-state-type.d.ts +8 -0
  275. package/dist/application-spec/parse-application-files/spec/components/component-state-type.js +1 -0
  276. package/dist/application-spec/parse-application-files/spec/components/filter-criterion-types.d.ts +13 -0
  277. package/dist/application-spec/parse-application-files/spec/components/filter-criterion-types.js +1 -0
  278. package/dist/application-spec/parse-application-files/spec/components/index.d.ts +1 -1
  279. package/dist/application-spec/parse-application-files/spec/components/index.js +1 -1
  280. package/dist/application-spec/parse-application-files/spec/components/static-entity-id.d.ts +14 -0
  281. package/dist/application-spec/parse-application-files/spec/components/static-entity-id.js +1 -0
  282. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.d.ts +6 -0
  283. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.js +1 -1
  284. package/dist/application-spec/parse-application-files/spec/components/user-components.d.ts +7 -4
  285. package/dist/application-spec/parse-application-files/spec/components/user-components.js +1 -1
  286. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.d.ts +24 -0
  287. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.js +1 -0
  288. package/dist/application-spec/parse-application-files/spec/expressions/expression-read.d.ts +13 -0
  289. package/dist/application-spec/parse-application-files/spec/expressions/expression-value-type.d.ts +9 -0
  290. package/dist/application-spec/parse-application-files/spec/expressions/expression-value-type.js +1 -0
  291. package/dist/application-spec/parse-application-files/spec/expressions/expression.d.ts +1 -28
  292. package/dist/application-spec/parse-application-files/spec/expressions/expression.js +1 -1
  293. package/dist/application-spec/parse-application-files/spec/expressions/expressions.d.ts +7 -3
  294. package/dist/application-spec/parse-application-files/spec/expressions/expressions.js +1 -1
  295. package/dist/application-spec/parse-application-files/spec/expressions/index.d.ts +0 -1
  296. package/dist/application-spec/parse-application-files/spec/expressions/index.js +1 -1
  297. package/dist/application-spec/parse-application-files/spec/expressions/memo-eval-plan.js +1 -1
  298. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.d.ts +3 -1
  299. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.js +1 -1
  300. package/dist/application-spec/parse-application-files/spec/invariants/invariants.d.ts +2 -2
  301. package/dist/application-spec/parse-application-files/spec/invariants/invariants.js +1 -1
  302. package/dist/application-spec/parse-application-files/spec/model/defaults.d.ts +7 -2
  303. package/dist/application-spec/parse-application-files/spec/model/defaults.js +1 -1
  304. package/dist/application-spec/parse-application-files/spec/model/index.d.ts +1 -0
  305. package/dist/application-spec/parse-application-files/spec/model/index.js +1 -1
  306. package/dist/application-spec/parse-application-files/spec/model/model-type-resolution.d.ts +10 -0
  307. package/dist/application-spec/parse-application-files/spec/model/model-type-resolution.js +1 -0
  308. package/dist/application-spec/parse-application-files/spec/model/names/action-name.d.ts +10 -0
  309. package/dist/application-spec/parse-application-files/spec/model/names/action-name.js +1 -0
  310. package/dist/application-spec/parse-application-files/spec/model/names/index.d.ts +1 -0
  311. package/dist/application-spec/parse-application-files/spec/model/names/index.js +1 -1
  312. package/dist/application-spec/parse-application-files/spec/relations/reference-field-type.d.ts +25 -0
  313. package/dist/application-spec/parse-application-files/spec/relations/reference-field-type.js +1 -0
  314. package/dist/application-spec/parse-application-files/spec/relations/relation-field-mismatch.d.ts +46 -0
  315. package/dist/application-spec/parse-application-files/spec/relations/relation-field-mismatch.js +1 -0
  316. package/dist/application-spec/parse-application-files/spec/relations/relations.d.ts +4 -3
  317. package/dist/application-spec/parse-application-files/spec/relations/relations.js +1 -1
  318. package/dist/application-spec/parse-application-files/spec/sections/actions.d.ts +35 -0
  319. package/dist/application-spec/parse-application-files/spec/sections/actions.js +1 -0
  320. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-field-type.d.ts +5 -21
  321. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-field-type.js +1 -1
  322. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.d.ts +14 -39
  323. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.js +1 -1
  324. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-server-settings.d.ts +2 -2
  325. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant.d.ts +5 -19
  326. package/dist/application-spec/parse-application-files/spec/sections/index.d.ts +1 -0
  327. package/dist/application-spec/parse-application-files/spec/sections/index.js +1 -1
  328. package/dist/application-spec/parse-application-files/spec/sections/infra.d.ts +2 -0
  329. package/dist/application-spec/parse-application-files/spec/sections/infra.js +1 -1
  330. package/dist/client/authorized-client.d.ts +3 -1
  331. package/dist/client/authorized-client.js +1 -1
  332. package/dist/client/contract.d.ts +34 -0
  333. package/dist/client/contract.js +1 -1
  334. package/dist/client/index.d.ts +2 -2
  335. package/dist/client/index.js +1 -1
  336. package/dist/client/local-authorized-client.d.ts +3 -1
  337. package/dist/client/local-authorized-client.js +1 -1
  338. package/dist/client/memory-authorized-client.d.ts +3 -1
  339. package/dist/client/memory-authorized-client.js +1 -1
  340. package/dist/client/phoenix-api.d.ts +761 -57
  341. package/dist/configurator/ConfiguratorApp.js +1 -1
  342. package/dist/configurator/app-loader-content/DefaultAppLoaderContent.d.ts +2 -0
  343. package/dist/configurator/app-loader-content/DefaultAppLoaderContent.js +5 -0
  344. package/dist/configurator/app-loader-content/app-loader-content-name.d.ts +5 -0
  345. package/dist/configurator/app-loader-content/app-loader-content-name.js +1 -0
  346. package/dist/configurator/app-loader-content/index.d.ts +2 -0
  347. package/dist/configurator/app-loader-content/index.js +1 -0
  348. package/dist/configurator/application-runtime/extensions/configurator-extension-systems.d.ts +2 -1
  349. package/dist/configurator/application-runtime/extensions/configurator-extension-systems.js +1 -1
  350. package/dist/configurator/application-runtime/extensions/create-configurator-extensions.js +1 -1
  351. package/dist/configurator/application-runtime/extensions/selectors.d.ts +5 -2
  352. package/dist/configurator/application-runtime/extensions/selectors.js +1 -1
  353. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.d.ts +304 -0
  354. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.js +1 -0
  355. package/dist/configurator/application-runtime/extensions/systems/assistant-system/browser-details.d.ts +17 -0
  356. package/dist/configurator/application-runtime/extensions/systems/assistant-system/browser-details.js +1 -0
  357. package/dist/configurator/application-runtime/extensions/systems/assistant-system/change-recorder.d.ts +85 -0
  358. package/dist/configurator/application-runtime/extensions/systems/assistant-system/change-recorder.js +1 -0
  359. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.d.ts +166 -0
  360. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.js +1 -0
  361. package/dist/configurator/application-runtime/extensions/systems/camera-control-system/camera-control-system.d.ts +1 -1
  362. package/dist/configurator/application-runtime/extensions/systems/drag-and-drop-system/drag-and-drop-system.d.ts +3 -3
  363. package/dist/configurator/application-runtime/extensions/systems/graphql-system/close-unclosed-braces.d.ts +12 -0
  364. package/dist/configurator/application-runtime/extensions/systems/graphql-system/close-unclosed-braces.js +1 -0
  365. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.d.ts +4 -0
  366. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.js +1 -1
  367. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.d.ts +36 -5
  368. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.js +1 -1
  369. package/dist/configurator/application-runtime/extensions/systems/graphql-system/inject-assistant-lenses.d.ts +11 -0
  370. package/dist/configurator/application-runtime/extensions/systems/graphql-system/inject-assistant-lenses.js +1 -0
  371. package/dist/configurator/application-runtime/extensions/systems/graphql-system/side-effects.d.ts +9 -0
  372. package/dist/configurator/application-runtime/extensions/systems/graphql-system/side-effects.js +1 -0
  373. package/dist/configurator/application-runtime/extensions/systems/index.d.ts +1 -0
  374. package/dist/configurator/application-runtime/extensions/systems/index.js +1 -1
  375. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.d.ts +4 -2
  376. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.js +1 -1
  377. package/dist/configurator/common/configurator-interface.d.ts +141 -4
  378. package/dist/configurator/common/configurator-interface.js +1 -1
  379. package/dist/configurator/common/index.d.ts +3 -1
  380. package/dist/configurator/common/index.js +1 -1
  381. package/dist/configurator/common/use-reset-camera.d.ts +6 -0
  382. package/dist/configurator/common/use-reset-camera.js +1 -0
  383. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.d.ts +12 -0
  384. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.js +1 -0
  385. package/dist/configurator/configuration-not-found-page/create-configuration-not-found-page.d.ts +9 -0
  386. package/dist/configurator/configuration-not-found-page/create-configuration-not-found-page.js +1 -0
  387. package/dist/configurator/configuration-not-found-page/index.d.ts +2 -0
  388. package/dist/configurator/configuration-not-found-page/index.js +1 -0
  389. package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.d.ts +12 -0
  390. package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.js +1 -0
  391. package/dist/configurator/configurator-context/PresetSelectionProvider.js +1 -1
  392. package/dist/configurator/configurator-context/PreviewContextProvider.js +1 -1
  393. package/dist/configurator/configurator-context/ViewportStateSync.d.ts +2 -2
  394. package/dist/configurator/configurator-context/ViewportStateSync.js +1 -1
  395. package/dist/configurator/configurator-context/configurator-hooks/layout-hooks.d.ts +11 -1
  396. package/dist/configurator/configurator-error-page/BuiltInConfiguratorErrorPage.d.ts +6 -0
  397. package/dist/configurator/configurator-error-page/BuiltInConfiguratorErrorPage.js +1 -0
  398. package/dist/configurator/configurator-error-page/ConfiguratorErrorPageElement.d.ts +12 -0
  399. package/dist/configurator/configurator-error-page/ConfiguratorErrorPageElement.js +1 -0
  400. package/dist/configurator/configurator-error-page/create-configurator-error-page.d.ts +9 -0
  401. package/dist/configurator/configurator-error-page/create-configurator-error-page.js +1 -0
  402. package/dist/configurator/configurator-error-page/index.d.ts +3 -0
  403. package/dist/configurator/configurator-error-page/index.js +1 -0
  404. package/dist/configurator/index.d.ts +3 -1
  405. package/dist/configurator/index.js +1 -1
  406. package/dist/configurator/pages/ConfiguratorErrorPage.d.ts +0 -1
  407. package/dist/configurator/pages/ConfiguratorErrorPage.js +1 -1
  408. package/dist/configurator/pages/ConfiguratorNotFoundPage.js +1 -1
  409. package/dist/configurator/pages/DefaultConfiguratorLayout.d.ts +7 -0
  410. package/dist/configurator/pages/DefaultConfiguratorLayout.js +1 -0
  411. package/dist/configurator/pages/DefaultNotAuthenticatedPage.d.ts +8 -0
  412. package/dist/configurator/pages/DefaultNotAuthenticatedPage.js +1 -0
  413. package/dist/configurator/pages/DefaultPresetUi.d.ts +7 -0
  414. package/dist/configurator/pages/DefaultPresetUi.js +1 -0
  415. package/dist/configurator/pages/LoadedConfiguratorDetailPage.js +1 -1
  416. package/dist/configurator/pages/NewConfiguratorPage.js +1 -1
  417. package/dist/configurator/pages/PresetCreationErrorPage.d.ts +1 -1
  418. package/dist/configurator/pages/PresetCreationErrorPage.js +1 -1
  419. package/dist/configurator/pages/RootPage.js +1 -1
  420. package/dist/configurator/pages/configurator-layout-name.d.ts +2 -0
  421. package/dist/configurator/pages/configurator-layout-name.js +1 -0
  422. package/dist/configurator/pages/default-configurator-elements.d.ts +13 -0
  423. package/dist/configurator/pages/default-configurator-elements.js +1 -0
  424. package/dist/configurator/pages/default-elements/built-in-entity-element.d.ts +10 -0
  425. package/dist/configurator/pages/default-elements/built-in-entity-element.js +1 -0
  426. package/dist/configurator/pages/default-elements/built-in-layout-element.d.ts +10 -0
  427. package/dist/configurator/pages/default-elements/built-in-layout-element.js +1 -0
  428. package/dist/configurator/pages/default-elements/domain-control-elements.d.ts +6 -0
  429. package/dist/configurator/pages/default-elements/domain-control-elements.js +1 -0
  430. package/dist/configurator/pages/default-elements/index.d.ts +5 -0
  431. package/dist/configurator/pages/default-elements/index.js +1 -0
  432. package/dist/configurator/pages/default-elements/recipe-panel-elements.d.ts +3 -0
  433. package/dist/configurator/pages/default-elements/recipe-panel-elements.js +1 -0
  434. package/dist/configurator/pages/default-elements/scene-controls/BuiltInAddEntityFab.d.ts +3 -0
  435. package/dist/configurator/pages/default-elements/scene-controls/BuiltInAddEntityFab.js +1 -0
  436. package/dist/configurator/pages/default-elements/scene-controls/BuiltInDeleteEntityFab.d.ts +3 -0
  437. package/dist/configurator/pages/default-elements/scene-controls/BuiltInDeleteEntityFab.js +1 -0
  438. package/dist/configurator/pages/default-elements/scene-controls/BuiltInNavigationHotspot.d.ts +3 -0
  439. package/dist/configurator/pages/default-elements/scene-controls/BuiltInNavigationHotspot.js +1 -0
  440. package/dist/configurator/pages/default-elements/scene-controls/BuiltInSelectionHotspot.d.ts +3 -0
  441. package/dist/configurator/pages/default-elements/scene-controls/BuiltInSelectionHotspot.js +1 -0
  442. package/dist/configurator/pages/default-elements/scene-controls/BuiltInToolMenuFab.d.ts +3 -0
  443. package/dist/configurator/pages/default-elements/scene-controls/BuiltInToolMenuFab.js +1 -0
  444. package/dist/configurator/pages/default-elements/scene-controls/index.d.ts +6 -0
  445. package/dist/configurator/pages/default-elements/scene-controls/index.js +1 -0
  446. package/dist/configurator/pages/default-elements/scene-controls/scene-control-elements.d.ts +6 -0
  447. package/dist/configurator/pages/default-elements/scene-controls/scene-control-elements.js +1 -0
  448. package/dist/configurator/pages/default-elements/sidebar-footer-elements.d.ts +7 -0
  449. package/dist/configurator/pages/default-elements/sidebar-footer-elements.js +1 -0
  450. package/dist/configurator/pages/default-elements/toolbar-elements.d.ts +7 -0
  451. package/dist/configurator/pages/default-elements/toolbar-elements.js +1 -0
  452. package/dist/configurator/pages/error-boundaries/GeneralErrorBoundary.js +1 -1
  453. package/dist/configurator/pages/index.d.ts +1 -0
  454. package/dist/configurator/pages/index.js +1 -1
  455. package/dist/configurator/preset-screen-elements/PresetDeviceNotSupportedElement.d.ts +4 -0
  456. package/dist/configurator/preset-screen-elements/PresetDeviceNotSupportedElement.js +1 -0
  457. package/dist/configurator/preset-screen-elements/PresetPageActionElement.d.ts +4 -0
  458. package/dist/configurator/preset-screen-elements/PresetPageActionElement.js +1 -0
  459. package/dist/configurator/preset-screen-elements/index.d.ts +2 -0
  460. package/dist/configurator/preset-screen-elements/index.js +1 -0
  461. package/dist/configurator/scene/index.d.ts +1 -0
  462. package/dist/configurator/scene/index.js +1 -1
  463. package/dist/configurator/scene/scene-analytics/scene-analytics.d.ts +2 -2
  464. package/dist/configurator/scene/scene-controls/DeleteEntityFab.js +1 -1
  465. package/dist/configurator/scene/scene-controls/SelectionHotspot.js +1 -1
  466. package/dist/configurator/scene/scene-controls/ToolFab.d.ts +4 -0
  467. package/dist/configurator/scene/scene-controls/ToolFab.js +1 -1
  468. package/dist/configurator/scene/scene-controls/hotspot-drag-handle/HotspotDragHandle.d.ts +1 -1
  469. package/dist/configurator/scene/scene-controls/hotspot-drag-handle/HotspotDragSceneHandle.d.ts +1 -1
  470. package/dist/configurator/scene/scene-controls/use-scene-control-tooltip.d.ts +2 -1
  471. package/dist/configurator/scene/scene-entity/dimension-indicators/DimensionIndicator.d.ts +1 -1
  472. package/dist/configurator/scene/scene-entity/dimension-indicators/DimensionIndicatorInternal.d.ts +1 -1
  473. package/dist/configurator/scene/scene-entity/drag-and-drop/shared.d.ts +2 -2
  474. package/dist/configurator/scene/scene-entity/drag-and-drop/use-drag-object.d.ts +1 -1
  475. package/dist/configurator/scene/scene-entity/materials/RemoteReplacedMaterial.js +1 -1
  476. package/dist/configurator/scene/scene-entity/objects/SceneEntityObjectTextDecal.d.ts +1 -1
  477. package/dist/configurator/scene/scene-entity/scene-controls/SceneEntityHtmlHotspots.js +1 -1
  478. package/dist/configurator/toolbar-actions/index.d.ts +3 -0
  479. package/dist/configurator/toolbar-actions/index.js +1 -0
  480. package/dist/configurator/toolbar-actions/use-assistant-panel.d.ts +18 -0
  481. package/dist/configurator/toolbar-actions/use-assistant-panel.js +1 -0
  482. package/dist/configurator/toolbar-actions/use-measurements.d.ts +35 -0
  483. package/dist/configurator/toolbar-actions/use-measurements.js +1 -0
  484. package/dist/configurator/toolbar-actions/use-toolbar-actions.d.ts +100 -0
  485. package/dist/configurator/toolbar-actions/use-toolbar-actions.js +1 -0
  486. package/dist/configurator/toolbar-actions/use-toolbar-help.d.ts +7 -0
  487. package/dist/configurator/toolbar-actions/use-toolbar-help.js +1 -0
  488. package/dist/configurator/ui/assistant/AssistantChips.d.ts +17 -0
  489. package/dist/configurator/ui/assistant/AssistantChips.js +1 -0
  490. package/dist/configurator/ui/assistant/AssistantComposer.d.ts +7 -0
  491. package/dist/configurator/ui/assistant/AssistantComposer.js +1 -0
  492. package/dist/configurator/ui/assistant/AssistantMarkdown.d.ts +12 -0
  493. package/dist/configurator/ui/assistant/AssistantMarkdown.js +1 -0
  494. package/dist/configurator/ui/assistant/AssistantPanel.d.ts +11 -0
  495. package/dist/configurator/ui/assistant/AssistantPanel.js +1 -0
  496. package/dist/configurator/ui/assistant/AssistantThread.d.ts +10 -0
  497. package/dist/configurator/ui/assistant/AssistantThread.js +1 -0
  498. package/dist/configurator/ui/assistant/alert/AssistantAlert.d.ts +8 -0
  499. package/dist/configurator/ui/assistant/alert/AssistantAlert.js +1 -0
  500. package/dist/configurator/ui/assistant/alert/index.d.ts +2 -0
  501. package/dist/configurator/ui/assistant/alert/index.js +1 -0
  502. package/dist/configurator/ui/assistant/alert/remark-alerts.d.ts +10 -0
  503. package/dist/configurator/ui/assistant/alert/remark-alerts.js +1 -0
  504. package/dist/configurator/ui/assistant/assistant-failure.d.ts +18 -0
  505. package/dist/configurator/ui/assistant/assistant-failure.js +1 -0
  506. package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.d.ts +13 -0
  507. package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.js +1 -0
  508. package/dist/configurator/ui/assistant/entity-link/entity-link-selection.d.ts +22 -0
  509. package/dist/configurator/ui/assistant/entity-link/entity-link-selection.js +1 -0
  510. package/dist/configurator/ui/assistant/entity-link/entity-link-state.d.ts +27 -0
  511. package/dist/configurator/ui/assistant/entity-link/entity-link-state.js +1 -0
  512. package/dist/configurator/ui/assistant/entity-link/index.d.ts +2 -0
  513. package/dist/configurator/ui/assistant/entity-link/index.js +1 -0
  514. package/dist/configurator/ui/assistant/form/AssistantForm.d.ts +19 -0
  515. package/dist/configurator/ui/assistant/form/AssistantForm.js +1 -0
  516. package/dist/configurator/ui/assistant/form/built-in-form-registry.d.ts +10 -0
  517. package/dist/configurator/ui/assistant/form/built-in-form-registry.js +1 -0
  518. package/dist/configurator/ui/assistant/form/compose-answer.d.ts +12 -0
  519. package/dist/configurator/ui/assistant/form/compose-answer.js +1 -0
  520. package/dist/configurator/ui/assistant/form/describe-build-errors.d.ts +6 -0
  521. package/dist/configurator/ui/assistant/form/describe-build-errors.js +1 -0
  522. package/dist/configurator/ui/assistant/form/form-element-definition.d.ts +14 -0
  523. package/dist/configurator/ui/assistant/form/form-model.d.ts +39 -0
  524. package/dist/configurator/ui/assistant/form/form-registry.d.ts +31 -0
  525. package/dist/configurator/ui/assistant/form/form-registry.js +8 -0
  526. package/dist/configurator/ui/assistant/form/form-state.d.ts +4 -0
  527. package/dist/configurator/ui/assistant/form/form-state.js +1 -0
  528. package/dist/configurator/ui/assistant/form/index.d.ts +2 -0
  529. package/dist/configurator/ui/assistant/form/index.js +1 -0
  530. package/dist/configurator/ui/assistant/form/parse-form-block.d.ts +10 -0
  531. package/dist/configurator/ui/assistant/form/parse-form-block.js +1 -0
  532. package/dist/configurator/ui/assistant/form/read-form-attributes.d.ts +13 -0
  533. package/dist/configurator/ui/assistant/form/read-form-attributes.js +1 -0
  534. package/dist/configurator/ui/assistant/form-elements/FormCard.d.ts +9 -0
  535. package/dist/configurator/ui/assistant/form-elements/FormCard.js +1 -0
  536. package/dist/configurator/ui/assistant/form-elements/FormConfirm.d.ts +9 -0
  537. package/dist/configurator/ui/assistant/form-elements/FormConfirm.js +1 -0
  538. package/dist/configurator/ui/assistant/form-elements/FormGroup.d.ts +6 -0
  539. package/dist/configurator/ui/assistant/form-elements/FormGroup.js +1 -0
  540. package/dist/configurator/ui/assistant/form-elements/FormNumber.d.ts +9 -0
  541. package/dist/configurator/ui/assistant/form-elements/FormNumber.js +1 -0
  542. package/dist/configurator/ui/assistant/form-elements/FormOptions.d.ts +6 -0
  543. package/dist/configurator/ui/assistant/form-elements/FormOptions.js +1 -0
  544. package/dist/configurator/ui/assistant/form-elements/FormReply.d.ts +6 -0
  545. package/dist/configurator/ui/assistant/form-elements/FormReply.js +1 -0
  546. package/dist/configurator/ui/assistant/form-elements/FormSwatch.d.ts +10 -0
  547. package/dist/configurator/ui/assistant/form-elements/FormSwatch.js +1 -0
  548. package/dist/configurator/ui/assistant/form-elements/FormText.d.ts +6 -0
  549. package/dist/configurator/ui/assistant/form-elements/FormText.js +1 -0
  550. package/dist/configurator/ui/assistant/form-elements/clamp-form-number.d.ts +10 -0
  551. package/dist/configurator/ui/assistant/form-elements/clamp-form-number.js +1 -0
  552. package/dist/configurator/ui/assistant/form-elements/form-element-props.d.ts +38 -0
  553. package/dist/configurator/ui/assistant/form-elements/index.d.ts +9 -0
  554. package/dist/configurator/ui/assistant/form-elements/index.js +1 -0
  555. package/dist/configurator/ui/assistant/index.d.ts +2 -0
  556. package/dist/configurator/ui/assistant/index.js +1 -0
  557. package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.d.ts +16 -0
  558. package/dist/configurator/ui/assistant/reference-link/AssistantReferenceLink.js +1 -0
  559. package/dist/configurator/ui/assistant/reference-link/assistant-link-target.d.ts +34 -0
  560. package/dist/configurator/ui/assistant/reference-link/assistant-link-target.js +1 -0
  561. package/dist/configurator/ui/assistant/reference-link/assistant-reference-details.d.ts +25 -0
  562. package/dist/configurator/ui/assistant/reference-link/assistant-reference-details.js +1 -0
  563. package/dist/configurator/ui/assistant/reference-link/index.d.ts +3 -0
  564. package/dist/configurator/ui/assistant/reference-link/index.js +1 -0
  565. package/dist/configurator/ui/assistant/reference-link/reference-styles.d.ts +12 -0
  566. package/dist/configurator/ui/assistant/reference-link/reference-styles.js +1 -0
  567. package/dist/configurator/ui/assistant/reference-link/use-assistant-reference-details.d.ts +8 -0
  568. package/dist/configurator/ui/assistant/reference-link/use-assistant-reference-details.js +1 -0
  569. package/dist/configurator/ui/assistant/resource-image/AssistantImage.d.ts +9 -0
  570. package/dist/configurator/ui/assistant/resource-image/AssistantImage.js +1 -0
  571. package/dist/configurator/ui/assistant/resource-image/index.d.ts +3 -0
  572. package/dist/configurator/ui/assistant/resource-image/index.js +1 -0
  573. package/dist/configurator/ui/assistant/resource-image/resource-path.d.ts +2 -0
  574. package/dist/configurator/ui/assistant/resource-image/resource-path.js +1 -0
  575. package/dist/configurator/ui/assistant/resource-image/use-resource-image-url.d.ts +5 -0
  576. package/dist/configurator/ui/assistant/resource-image/use-resource-image-url.js +1 -0
  577. package/dist/configurator/ui/assistant/streamed-markdown.d.ts +8 -0
  578. package/dist/configurator/ui/assistant/streamed-markdown.js +2 -0
  579. package/dist/configurator/ui/assistant/theme.d.ts +2 -0
  580. package/dist/configurator/ui/assistant/theme.js +1 -0
  581. package/dist/configurator/ui/assistant/thread-items.d.ts +55 -0
  582. package/dist/configurator/ui/assistant/thread-items.js +1 -0
  583. package/dist/configurator/ui/assistant/tool-chip.d.ts +44 -0
  584. package/dist/configurator/ui/assistant/tool-chip.js +1 -0
  585. package/dist/configurator/ui/assistant/use-follow-stream.d.ts +17 -0
  586. package/dist/configurator/ui/assistant/use-follow-stream.js +1 -0
  587. package/dist/configurator/ui/assistant/use-is-assistant-panel-open.d.ts +5 -0
  588. package/dist/configurator/ui/assistant/use-is-assistant-panel-open.js +1 -0
  589. package/dist/configurator/ui/configurator-layout/sidebar-keys/index.d.ts +1 -0
  590. package/dist/configurator/ui/configurator-layout/sidebar-keys/index.js +1 -0
  591. package/dist/configurator/ui/configurator-layout/sidebar-keys/sidebar-keys.d.ts +11 -0
  592. package/dist/configurator/ui/configurator-layout/sidebar-keys/sidebar-keys.js +1 -0
  593. package/dist/configurator/ui/configurator-layout/slots/canvas/LayoutCanvas.js +1 -1
  594. package/dist/configurator/ui/configurator-layout/slots/canvas/SharedCanvas.js +1 -1
  595. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/DesktopSidebar.d.ts +101 -0
  596. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/DesktopSidebar.js +16 -0
  597. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/index.d.ts +1 -0
  598. package/dist/configurator/ui/configurator-layout/slots/desktop-sidebar/index.js +1 -0
  599. package/dist/configurator/ui/configurator-layout/slots/mobile-tabs/use-mobile-tabs.d.ts +1 -1
  600. package/dist/configurator/ui/configurator-layout/slots/mobile-tabs/use-mobile-tabs.js +1 -1
  601. package/dist/configurator/ui/configurator-layout/slots/services/InvariantViolations.d.ts +4 -4
  602. package/dist/configurator/ui/configurator-layout/slots/services/InvariantViolations.js +1 -1
  603. package/dist/configurator/ui/configurator-layout/slots/services/Services.js +1 -1
  604. package/dist/configurator/ui/configurator-layout/slots/services/SideEffects.d.ts +3 -6
  605. package/dist/configurator/ui/configurator-layout/slots/services/SideEffects.js +1 -1
  606. package/dist/configurator/ui/configurator-layout/slots/sidebar-tabs/use-sidebar-tabs.d.ts +1 -1
  607. package/dist/configurator/ui/configurator-layout/slots/sidebar-tabs/use-sidebar-tabs.js +1 -1
  608. package/dist/configurator/ui/configurator-layout/slots/slots.d.ts +1 -0
  609. package/dist/configurator/ui/configurator-layout/slots/slots.js +1 -1
  610. package/dist/configurator/ui/configurator-layout/universal/DesktopLayout.d.ts +0 -74
  611. package/dist/configurator/ui/configurator-layout/universal/DesktopLayout.js +5 -20
  612. package/dist/configurator/ui/configurator-layout/universal/DesktopPreview.js +1 -1
  613. package/dist/configurator/ui/configurator-layout/universal/MobileLayout.d.ts +2 -0
  614. package/dist/configurator/ui/configurator-layout/universal/MobileLayout.js +3 -3
  615. package/dist/configurator/ui/configurator-layout/universal/MobilePreview.js +1 -1
  616. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.d.ts +47 -0
  617. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.js +1 -0
  618. package/dist/configurator/ui/configurator-layout/universal/use-scene-safe-area.d.ts +11 -26
  619. package/dist/configurator/ui/configurator-layout/universal/use-scene-safe-area.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/mobile-controls/MobileControls.d.ts +1 -1
  634. package/dist/configurator/ui/legacy/toolbar/common/DimensionUnitSelector.js +1 -1
  635. package/dist/configurator/ui/legacy/toolbar/common/MeasurementsIndicatorsSwitch.js +1 -1
  636. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/FullscreenToolbarAction.js +1 -1
  637. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/HelpToolbarAction.js +1 -1
  638. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/MeasurementsToolbarAction.js +1 -1
  639. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/UndoRedoToolbarGroup.js +1 -1
  640. package/dist/configurator/ui/phoenix-layout-elements/AppLoader.js +2 -6
  641. package/dist/configurator/ui/phoenix-layout-elements/AssistantToolbarButton.d.ts +10 -0
  642. package/dist/configurator/ui/phoenix-layout-elements/AssistantToolbarButton.js +1 -0
  643. package/dist/configurator/ui/phoenix-layout-elements/EnterFullscreenToolbarButton.js +1 -1
  644. package/dist/configurator/ui/phoenix-layout-elements/ExitFullscreenToolbarButton.js +1 -1
  645. package/dist/configurator/ui/phoenix-layout-elements/HelpToolbarButton.js +1 -1
  646. package/dist/configurator/ui/phoenix-layout-elements/LanguageMenuAction.js +1 -1
  647. package/dist/configurator/ui/phoenix-layout-elements/LanguageToolbarButton.js +1 -1
  648. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomOwnerUi.d.ts +1 -0
  649. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomOwnerUi.js +1 -1
  650. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomReadUi.d.ts +1 -0
  651. package/dist/configurator/ui/phoenix-layout-elements/LayoutCustomReadUi.js +1 -1
  652. package/dist/configurator/ui/phoenix-layout-elements/MeasurementsMenuAction.js +1 -1
  653. package/dist/configurator/ui/phoenix-layout-elements/MeasurementsToolbarButton.js +1 -1
  654. package/dist/configurator/ui/phoenix-layout-elements/RedoToolbarButton.js +1 -1
  655. package/dist/configurator/ui/phoenix-layout-elements/ShareToolbarButton.js +1 -1
  656. package/dist/configurator/ui/phoenix-layout-elements/UndoToolbarButton.js +1 -1
  657. package/dist/configurator/ui/phoenix-layout-elements/header/common/back-button/use-go-back-action.js +1 -1
  658. package/dist/configurator/ui/phoenix-layout-elements/header/common/horizontal-tabs/DesktopHorizontalTabs.js +1 -1
  659. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/DesktopNavigationSteps.d.ts +1 -1
  660. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/DesktopNavigationSteps.js +1 -1
  661. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.d.ts +2 -8
  662. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.js +1 -1
  663. package/dist/configurator/ui/phoenix-layout-elements/index.d.ts +1 -0
  664. package/dist/configurator/ui/phoenix-layout-elements/index.js +1 -1
  665. package/dist/configurator/ui/phoenix-layout-elements/measurements/DimensionUnitSelector.js +1 -1
  666. package/dist/configurator/ui/phoenix-layout-elements/measurements/MeasurementsIndicatorsSwitch.js +1 -1
  667. package/dist/configurator/ui/phoenix-layout-elements/share/ShareModal.js +1 -1
  668. package/dist/configurator/ui/phoenix-layout-elements/share/use-share.d.ts +7 -8
  669. package/dist/configurator/ui/phoenix-layout-elements/share/use-share.js +1 -1
  670. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/basic/BasicFinalizeButton.js +1 -1
  671. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/CustomFinalizeButton.js +1 -1
  672. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/EnterSummaryButton.js +1 -1
  673. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/FinalizeActions.js +1 -1
  674. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/NextStepButton.js +1 -1
  675. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/PreviousStepButton.js +1 -1
  676. package/dist/configurator/ui/preset-layout/CategoryPresetUi.js +1 -1
  677. package/dist/configurator/ui/preset-layout/PresetUi.d.ts +4 -0
  678. package/dist/configurator/ui/preset-layout/PresetUi.js +1 -1
  679. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.d.ts +10 -0
  680. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.js +1 -0
  681. package/dist/configurator/ui/save-message-snackbars/index.d.ts +1 -0
  682. package/dist/configurator/ui/save-message-snackbars/index.js +1 -0
  683. package/dist/docs/complex-use-cases/filtered-controls-with-fix-dialog.mdx +100 -117
  684. package/dist/docs/complex-use-cases/focus-mode.mdx +2 -0
  685. package/dist/docs/complex-use-cases/navigation-reset-selection.mdx +18 -12
  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 +70 -2
  699. package/dist/docs/integrations/woocommerce/local-development.mdx +1 -1
  700. package/dist/docs/layouts/custom-layout.mdx +2437 -0
  701. package/dist/docs/layouts/custom-price.mdx +14 -16
  702. package/dist/docs/layouts/gallery/kestrel-kettle.mdx +1858 -0
  703. package/dist/docs/layouts/header/fixed.mdx +2 -2
  704. package/dist/docs/layouts/header/floating.mdx +2 -2
  705. package/dist/docs/layouts/sidebar/in-a-custom-layout.mdx +380 -0
  706. package/dist/docs/layouts/sidebar/tabs.mdx +24 -21
  707. package/dist/docs/layouts/sidebar-footer/basic.mdx +32 -77
  708. package/dist/docs/layouts/toolbar.mdx +6 -0
  709. package/dist/docs/other-features/client-side-rendering/declarative.mdx +1 -1
  710. package/dist/docs/other-features/domain-actions.mdx +418 -0
  711. package/dist/docs/other-features/error-5xx.mdx +1 -1
  712. package/dist/docs/other-features/navigation-hotspot.mdx +2 -0
  713. package/dist/docs/other-features/not-found-404.mdx +1 -1
  714. package/dist/docs/other-features/side-effects.mdx +76 -45
  715. package/dist/docs/other-features/transformers.mdx +5 -1
  716. package/dist/docs/other-features/violation-messages.mdx +52 -56
  717. package/dist/docs/phoenix/admin.mdx +11 -26
  718. package/dist/docs/phoenix/application-states.mdx +9 -7
  719. package/dist/docs/phoenix/best-practices.mdx +1 -0
  720. package/dist/docs/phoenix/clerk-sign-in.mdx +1 -1
  721. package/dist/docs/phoenix/components.mdx +6 -0
  722. package/dist/docs/phoenix/configurator-interface.mdx +400 -81
  723. package/dist/docs/phoenix/deployments.mdx +3 -7
  724. package/dist/docs/phoenix/domain-model.mdx +6 -0
  725. package/dist/docs/phoenix/expression-context.mdx +11 -3
  726. package/dist/docs/phoenix/finalization.mdx +2 -2
  727. package/dist/docs/phoenix/getting-started.mdx +7 -4
  728. package/dist/docs/phoenix/integration/headless-mode-external.mdx +5 -5
  729. package/dist/docs/phoenix/integration/widget-mode-external.mdx +5 -5
  730. package/dist/docs/phoenix/layout-slots.mdx +116 -0
  731. package/dist/docs/phoenix/localization.mdx +13 -28
  732. package/dist/docs/phoenix/migration-guide.mdx +24 -11
  733. package/dist/docs/phoenix/phoenix-cli.mdx +249 -83
  734. package/dist/docs/phoenix/project-structure.mdx +90 -36
  735. package/dist/docs/phoenix/quickstart.mdx +9 -9
  736. package/dist/docs/phoenix/sdk-builder-workflow.mdx +22 -20
  737. package/dist/docs/phoenix/testing.mdx +148 -0
  738. package/dist/docs/phoenix/webhook-membership.mdx +10 -9
  739. package/dist/docs/phoenix/webhooks.mdx +23 -6
  740. package/dist/docs/recipes-and-delete/recipe-hierarchy-selection.mdx +15 -13
  741. package/dist/docs/relations/hierarchy.mdx +13 -2
  742. package/dist/docs/selection-and-highlight/hotspots.mdx +2 -0
  743. package/dist/docs/ux-guidelines/choosing-a-control.mdx +11 -0
  744. package/dist/domain/admin-domain/__generated/enhanced-model.d.ts +1 -2
  745. package/dist/domain/admin-domain/__generated/model/versions/v1.d.ts +1 -1
  746. package/dist/domain/admin-domain/__generated/model/versions/v2.d.ts +1 -1
  747. package/dist/domain/admin-domain/__generated/model/versions/v3.d.ts +1 -1
  748. package/dist/domain/admin-domain/__generated/model/versions/v4.d.ts +1 -1
  749. package/dist/domain/admin-domain/__generated/model/versions/v5.d.ts +1 -1
  750. package/dist/domain/admin-domain/__generated/model/versions/v6.d.ts +2 -2
  751. package/dist/domain/admin-domain/__generated/model/versions/v6.js +1 -1
  752. package/dist/domain/admin-domain/implementation/common-admin-expressions.d.ts +26 -14
  753. package/dist/domain/admin-domain/implementation/common-admin-migrations.d.ts +1 -1
  754. package/dist/domain/admin-domain/implementation/common-admin-publish.d.ts +1 -2
  755. package/dist/domain/admin-domain/index.d.ts +9 -5
  756. package/dist/domain/admin-domain/index.js +1 -1
  757. package/dist/domain/application/GetApplicationWrapperHandler.d.ts +2 -2
  758. package/dist/domain/application/GetThemeHandler.d.ts +1 -1
  759. package/dist/domain/application/GetWebComponentOptions.d.ts +1 -1
  760. package/dist/domain/application/admin-page-factories.d.ts +1 -2
  761. package/dist/domain/application/application-config.d.ts +30 -95
  762. package/dist/domain/application/assistant/assistant-fields.d.ts +12 -0
  763. package/dist/domain/application/assistant/assistant-fields.js +1 -0
  764. package/dist/domain/application/assistant/assistant-manifest.d.ts +71 -0
  765. package/dist/domain/application/assistant/assistant-manifest.js +1 -0
  766. package/dist/domain/application/assistant/assistant-resolved-manifest.d.ts +131 -0
  767. package/dist/domain/application/assistant/assistant-resolved-manifest.js +1 -0
  768. package/dist/domain/application/assistant/assistant-value-type.d.ts +9 -0
  769. package/dist/domain/application/assistant/assistant-value-type.js +1 -0
  770. package/dist/domain/application/assistant/build-assistant-lenses.d.ts +14 -0
  771. package/dist/domain/application/assistant/build-assistant-lenses.js +5 -0
  772. package/dist/domain/application/assistant/build-assistant-manifest.d.ts +4 -0
  773. package/dist/domain/application/assistant/build-assistant-manifest.js +1 -0
  774. package/dist/domain/application/assistant/create-assistant-execution-schema.d.ts +32 -0
  775. package/dist/domain/application/assistant/create-assistant-execution-schema.js +1 -0
  776. package/dist/domain/application/assistant/form/assistant-form-elements.d.ts +163 -0
  777. package/dist/domain/application/assistant/form/assistant-form-elements.js +1 -0
  778. package/dist/domain/application/assistant/form/assistant-resource-path.d.ts +10 -0
  779. package/dist/domain/application/assistant/form/assistant-resource-path.js +1 -0
  780. package/dist/domain/application/assistant/form/get-assistant-form-value-attribute.d.ts +6 -0
  781. package/dist/domain/application/assistant/form/get-assistant-form-value-attribute.js +1 -0
  782. package/dist/domain/application/assistant/form/index.d.ts +4 -0
  783. package/dist/domain/application/assistant/form/index.js +1 -0
  784. package/dist/domain/application/assistant/generate-assistant-prompt.d.ts +6 -0
  785. package/dist/domain/application/assistant/generate-assistant-prompt.js +1 -0
  786. package/dist/domain/application/assistant/index.d.ts +10 -0
  787. package/dist/domain/application/assistant/index.js +1 -0
  788. package/dist/domain/application/assistant/session-setup/AssistantSetupHandler.d.ts +20 -0
  789. package/dist/domain/application/assistant/session-setup/AssistantSetupHandler.js +1 -0
  790. package/dist/domain/application/assistant/session-setup/apply-assistant-setup.d.ts +10 -0
  791. package/dist/domain/application/assistant/session-setup/apply-assistant-setup.js +1 -0
  792. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.d.ts +48 -0
  793. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.js +1 -0
  794. package/dist/domain/application/assistant/session-setup/create-session-assistant.d.ts +15 -0
  795. package/dist/domain/application/assistant/session-setup/create-session-assistant.js +1 -0
  796. package/dist/domain/application/assistant/session-setup/index.d.ts +4 -0
  797. package/dist/domain/application/assistant/session-setup/index.js +1 -0
  798. package/dist/domain/application/assistant-field-options.d.ts +2 -3
  799. package/dist/domain/application/assistant-mutations.d.ts +16 -17
  800. package/dist/domain/application/assistant-mutations.js +1 -1
  801. package/dist/domain/application/assistant-recipe-groups.d.ts +6 -8
  802. package/dist/domain/application/configurator-builder.d.ts +36 -18
  803. package/dist/domain/application/configurator-builder.js +1 -1
  804. package/dist/domain/application/create-initial-published-data.d.ts +6 -7
  805. package/dist/domain/application/index.d.ts +3 -6
  806. package/dist/domain/application/index.js +1 -1
  807. package/dist/domain/application/published-data/DataRowValidatorHandler.d.ts +1 -1
  808. package/dist/domain/application/published-data/FilterPublishedChunksHandler.d.ts +1 -1
  809. package/dist/domain/application/published-data/MapPublishedChunkedDataHandler.d.ts +1 -1
  810. package/dist/domain/application/published-data/MapPublishedRevisionDataHandler.d.ts +1 -1
  811. package/dist/domain/application/published-data/SheetValidatorHandler.d.ts +1 -1
  812. package/dist/domain/application/published-data/build-legend-data.d.ts +1 -1
  813. package/dist/domain/application/published-data/create-finalize-admin-domain.d.ts +1 -2
  814. package/dist/domain/application/published-data/format-field-type.d.ts +1 -1
  815. package/dist/domain/application/published-data/map-data-to-sheet.d.ts +1 -1
  816. package/dist/domain/application/published-data/map-published-chunked-data.d.ts +3 -3
  817. package/dist/domain/application/published-data/map-published-data.d.ts +7 -4
  818. package/dist/domain/application/published-data/validate-sheet-data.d.ts +1 -1
  819. package/dist/domain/available-system-components.js +1 -1
  820. package/dist/domain/core/action/action-factory.d.ts +11 -0
  821. package/dist/domain/core/action/action-factory.js +1 -0
  822. package/dist/domain/core/action/action.d.ts +71 -0
  823. package/dist/domain/core/action/action.js +1 -0
  824. package/dist/domain/core/action/index.d.ts +2 -0
  825. package/dist/domain/core/action/index.js +1 -0
  826. package/dist/domain/core/component/component-reader-types.d.ts +43 -0
  827. package/dist/domain/core/component/component-reader-types.js +1 -0
  828. package/dist/domain/core/component/debug-state-component.d.ts +14 -0
  829. package/dist/domain/core/component/debug-state-component.js +1 -0
  830. package/dist/domain/core/component/domain-component-optic.d.ts +65 -0
  831. package/dist/domain/core/component/domain-component-optic.js +16 -0
  832. package/dist/domain/core/component/drag-state-component.d.ts +16 -0
  833. package/dist/domain/core/component/drag-state-component.js +1 -0
  834. package/dist/domain/core/component/export-state-component.d.ts +15 -0
  835. package/dist/domain/core/component/export-state-component.js +1 -0
  836. package/dist/domain/core/component/fullscreen-state-component.d.ts +14 -0
  837. package/dist/domain/core/component/fullscreen-state-component.js +1 -0
  838. package/dist/domain/core/component/group-components-by-entity-id-and-name.d.ts +8 -0
  839. package/dist/domain/core/component/group-components-by-entity-id-and-name.js +1 -0
  840. package/dist/domain/core/component/hover-state-component.d.ts +14 -0
  841. package/dist/domain/core/component/hover-state-component.js +1 -0
  842. package/dist/domain/core/component/index.d.ts +18 -0
  843. package/dist/domain/core/component/index.js +1 -0
  844. package/dist/domain/core/component/legacy-filter.d.ts +498 -0
  845. package/dist/domain/core/component/navigation-state-component.d.ts +15 -0
  846. package/dist/domain/core/component/navigation-state-component.js +1 -0
  847. package/dist/domain/core/component/selection-state-component.d.ts +14 -0
  848. package/dist/domain/core/component/selection-state-component.js +1 -0
  849. package/dist/domain/core/component/system-component-builder.d.ts +11 -0
  850. package/dist/domain/core/component/system-component-builder.js +1 -0
  851. package/dist/domain/core/component/system-component-filter.d.ts +811 -0
  852. package/dist/domain/core/component/system-virtual-entity.js +1 -0
  853. package/dist/domain/core/component/tool-state-component.d.ts +14 -0
  854. package/dist/domain/core/component/tool-state-component.js +1 -0
  855. package/dist/domain/core/component/updates.d.ts +123 -0
  856. package/dist/domain/core/component/view-state-component.d.ts +14 -0
  857. package/dist/domain/core/component/view-state-component.js +1 -0
  858. package/dist/domain/core/component/viewport-state-component.d.ts +29 -0
  859. package/dist/domain/core/component/viewport-state-component.js +1 -0
  860. package/dist/domain/core/data-schema/data-cell-value.d.ts +4 -0
  861. package/dist/domain/core/data-schema/data-cell-value.js +1 -0
  862. package/dist/domain/core/data-schema/data-schema-array-field.d.ts +5 -0
  863. package/dist/domain/core/data-schema/data-schema-array-field.js +1 -0
  864. package/dist/domain/core/data-schema/data-schema-field-object.d.ts +4 -0
  865. package/dist/domain/core/data-schema/data-schema-field-object.js +1 -0
  866. package/dist/domain/core/data-schema/data-schema-field.d.ts +2 -0
  867. package/dist/domain/core/data-schema/data-schema-field.js +1 -0
  868. package/dist/domain/core/data-schema/data-schema-localized-field.d.ts +4 -0
  869. package/dist/domain/core/data-schema/data-schema-localized-field.js +1 -0
  870. package/dist/domain/core/data-schema/data-schema-primitive-field.d.ts +5 -0
  871. package/dist/domain/core/data-schema/data-schema-primitive-field.js +1 -0
  872. package/dist/domain/core/data-schema/data-schema.d.ts +2 -0
  873. package/dist/domain/core/data-schema/data-schema.js +1 -0
  874. package/dist/domain/core/data-schema/index.d.ts +7 -0
  875. package/dist/domain/core/data-schema/index.js +1 -0
  876. package/dist/domain/core/decoder/create-decoder.d.ts +6 -0
  877. package/dist/domain/core/decoder/create-decoder.js +1 -0
  878. package/dist/domain/core/decoder/decoder.d.ts +6 -0
  879. package/dist/domain/core/decoder/decoder.js +1 -0
  880. package/dist/domain/core/decoder/index.d.ts +2 -0
  881. package/dist/domain/core/decoder/index.js +1 -0
  882. package/dist/domain/core/domain-factory.d.ts +7 -4
  883. package/dist/domain/core/domain-factory.js +1 -1
  884. package/dist/domain/core/domain.d.ts +4 -5
  885. package/dist/domain/core/domain.js +1 -1
  886. package/dist/domain/core/emission/index.d.ts +8 -0
  887. package/dist/domain/core/emission/index.js +1 -0
  888. package/dist/domain/core/emission/reset-state-emission.d.ts +12 -0
  889. package/dist/domain/core/emission/reset-state-emission.js +1 -0
  890. package/dist/domain/core/emission/state-emission.d.ts +4 -0
  891. package/dist/domain/core/emission/state-emission.js +1 -0
  892. package/dist/domain/core/emission/state-update-emission.d.ts +14 -0
  893. package/dist/domain/core/emission/state-update-emission.js +1 -0
  894. package/dist/domain/core/emission/state-validation-result.d.ts +18 -0
  895. package/dist/domain/core/emission/state-validation-result.js +1 -0
  896. package/dist/domain/core/emission/transformation-log.d.ts +2 -0
  897. package/dist/domain/core/emission/transformation-log.js +1 -0
  898. package/dist/domain/core/emission/transformer-log-entry.d.ts +6 -0
  899. package/dist/domain/core/emission/transformer-log-entry.js +1 -0
  900. package/dist/domain/core/emission/transformer-log.d.ts +11 -0
  901. package/dist/domain/core/emission/transformer-log.js +1 -0
  902. package/dist/domain/core/emission/transformer-phase.d.ts +1 -0
  903. package/dist/domain/core/emission/transformer-phase.js +1 -0
  904. package/dist/domain/core/expression/aliased-expressions.d.ts +10 -0
  905. package/dist/domain/core/expression/aliased-expressions.js +1 -0
  906. package/dist/domain/core/expression/constant-expressions.d.ts +16 -0
  907. package/dist/domain/core/expression/constant-expressions.js +1 -0
  908. package/dist/domain/core/expression/custom-expression.d.ts +25 -0
  909. package/dist/domain/core/expression/custom-expression.js +1 -0
  910. package/dist/domain/core/expression/expression.d.ts +46 -0
  911. package/dist/domain/core/expression/expression.js +1 -0
  912. package/dist/domain/core/expression/index.d.ts +4 -0
  913. package/dist/domain/core/expression/index.js +1 -0
  914. package/dist/domain/core/index.d.ts +13 -16
  915. package/dist/domain/core/index.js +1 -1
  916. package/dist/domain/core/invariant/builtin-invariant.d.ts +5 -0
  917. package/dist/domain/core/invariant/custom-invariants.d.ts +13 -0
  918. package/dist/domain/core/invariant/custom-invariants.js +1 -0
  919. package/dist/domain/core/invariant/index.d.ts +5 -0
  920. package/dist/domain/core/invariant/index.js +1 -0
  921. package/dist/domain/core/invariant/invariants.d.ts +10 -0
  922. package/dist/domain/core/invariant/invariants.js +1 -0
  923. package/dist/domain/core/invariant/violation-component.js +1 -0
  924. package/dist/domain/core/invariant/violation.d.ts +133 -0
  925. package/dist/domain/core/invariant/violation.js +1 -0
  926. package/dist/domain/core/model/component.d.ts +46 -0
  927. package/dist/domain/core/model/index.d.ts +6 -0
  928. package/dist/domain/core/model/index.js +1 -0
  929. package/dist/domain/core/model/model.d.ts +127 -0
  930. package/dist/domain/core/model/reflection.d.ts +114 -0
  931. package/dist/domain/core/model/reflection.js +1 -0
  932. package/dist/domain/core/recipe/index.d.ts +1 -0
  933. package/dist/domain/core/recipe/index.js +1 -0
  934. package/dist/domain/core/recipe/recipes.d.ts +23 -0
  935. package/dist/domain/core/recipe/recipes.js +1 -0
  936. package/dist/domain/core/relation/all-of-type-relation.d.ts +19 -0
  937. package/dist/domain/core/relation/all-of-type-relation.js +1 -0
  938. package/dist/domain/core/relation/component-factories.d.ts +14 -0
  939. package/dist/domain/core/relation/component-factories.js +1 -0
  940. package/dist/domain/core/relation/composed-of.d.ts +12 -0
  941. package/dist/domain/core/relation/composed-of.js +1 -0
  942. package/dist/domain/core/relation/direct-relation.d.ts +17 -0
  943. package/dist/domain/core/relation/index.d.ts +8 -0
  944. package/dist/domain/core/relation/index.js +1 -0
  945. package/dist/domain/core/relation/indirect-relation.d.ts +25 -0
  946. package/dist/domain/core/relation/indirect-relation.js +1 -0
  947. package/dist/domain/core/relation/reference-component.d.ts +17 -0
  948. package/dist/domain/core/relation/reference-component.js +1 -0
  949. package/dist/domain/core/relation/reference-field.d.ts +7 -0
  950. package/dist/domain/core/relation/reference-field.js +1 -0
  951. package/dist/domain/core/relation/relation-factory.d.ts +22 -0
  952. package/dist/domain/core/relation/relation-factory.js +1 -0
  953. package/dist/domain/core/schema/enhanced-json-schema.js +1 -0
  954. package/dist/domain/core/schema/extended-schema-validator.js +1 -0
  955. package/dist/domain/core/schema/index.d.ts +3 -0
  956. package/dist/domain/core/schema/index.js +1 -0
  957. package/dist/domain/core/schema/schema-validator.js +1 -0
  958. package/dist/domain/core/state/id-sequence.d.ts +15 -0
  959. package/dist/domain/core/state/id-sequence.js +1 -0
  960. package/dist/domain/core/state/index.d.ts +3 -0
  961. package/dist/domain/core/state/index.js +1 -0
  962. package/dist/domain/core/state/migrations.d.ts +67 -0
  963. package/dist/domain/core/state/migrations.js +1 -0
  964. package/dist/domain/core/state/state.d.ts +9 -0
  965. package/dist/domain/domain-builder.d.ts +16 -9
  966. package/dist/domain/domain-builder.js +1 -1
  967. package/dist/domain/domain-context/action-system/action-system.d.ts +38 -0
  968. package/dist/domain/domain-context/action-system/action-system.js +1 -0
  969. package/dist/domain/domain-context/action-system/index.d.ts +1 -0
  970. package/dist/domain/domain-context/action-system/index.js +1 -0
  971. package/dist/domain/domain-context/analytics-system/index.d.ts +2 -0
  972. package/dist/domain/domain-context/analytics-system/index.js +1 -0
  973. package/dist/domain/domain-context/create-transformer.d.ts +2 -2
  974. package/dist/domain/domain-context/dimension-system/dimension-state.js +1 -1
  975. package/dist/domain/domain-context/dimension-system/dimension-system.d.ts +3 -4
  976. package/dist/domain/domain-context/dimension-system/dimension-system.js +1 -1
  977. package/dist/domain/domain-context/dimension-system/index.d.ts +1 -0
  978. package/dist/domain/domain-context/dimension-system/index.js +1 -0
  979. package/dist/domain/domain-context/domain-context-systems.d.ts +11 -10
  980. package/dist/domain/domain-context/index.d.ts +8 -17
  981. package/dist/domain/domain-context/index.js +1 -1
  982. package/dist/domain/domain-context/navigation-system/index.d.ts +3 -0
  983. package/dist/domain/domain-context/navigation-system/index.js +1 -0
  984. package/dist/domain/domain-context/navigation-system/navigation-system.d.ts +5 -8
  985. package/dist/domain/domain-context/navigation-system/navigation-system.js +1 -1
  986. package/dist/domain/domain-context/navigation-system/navigation-updates.d.ts +1 -12
  987. package/dist/domain/domain-context/navigation-system/navigation-updates.js +1 -1
  988. package/dist/domain/domain-context/navigation-system/selection-transformers.d.ts +2 -2
  989. package/dist/domain/domain-context/navigation-system/selection-transformers.js +1 -1
  990. package/dist/domain/domain-context/recipe-system/index.d.ts +1 -0
  991. package/dist/domain/domain-context/recipe-system/index.js +1 -0
  992. package/dist/domain/domain-context/recipe-system/recipe-cooker-system.d.ts +2 -4
  993. package/dist/domain/domain-context/recipe-system/recipe-cooker-system.js +1 -1
  994. package/dist/domain/domain-context/relation-transformers/cascade-deletes.d.ts +3 -3
  995. package/dist/domain/domain-context/relation-transformers/cascade-deletes.js +1 -1
  996. package/dist/domain/domain-context/relation-transformers/cascade-ref-pruning.d.ts +3 -3
  997. package/dist/domain/domain-context/relation-transformers/cascade-ref-pruning.js +1 -1
  998. package/dist/domain/domain-context/relation-transformers/create-entity-refs.d.ts +3 -3
  999. package/dist/domain/domain-context/relation-transformers/create-entity-refs.js +2 -2
  1000. package/dist/domain/domain-context/relation-transformers/index.d.ts +4 -0
  1001. package/dist/domain/domain-context/relation-transformers/index.js +1 -0
  1002. package/dist/domain/domain-context/relation-transformers/replace-refs.d.ts +3 -3
  1003. package/dist/domain/domain-context/relation-transformers/replace-refs.js +1 -1
  1004. package/dist/domain/domain-context/store-system/apply-updates.d.ts +1 -3
  1005. package/dist/domain/domain-context/store-system/apply-updates.js +1 -1
  1006. package/dist/domain/domain-context/store-system/index.d.ts +4 -0
  1007. package/dist/domain/domain-context/store-system/index.js +1 -0
  1008. package/dist/domain/domain-context/store-system/next-domain-entity-id.d.ts +1 -13
  1009. package/dist/domain/domain-context/store-system/next-domain-entity-id.js +1 -1
  1010. package/dist/domain/domain-context/store-system/reconcile-projected-entities.d.ts +1 -2
  1011. package/dist/domain/domain-context/store-system/reconcile-projected-entities.js +1 -1
  1012. package/dist/domain/domain-context/store-system/store-system.d.ts +2 -39
  1013. package/dist/domain/domain-context/store-system/store-system.js +2 -2
  1014. package/dist/domain/domain-context/store-system/system-state.d.ts +2 -4
  1015. package/dist/domain/domain-context/store-system/system-state.js +1 -1
  1016. package/dist/domain/domain-context/transformers/actions-builder.d.ts +1 -2
  1017. package/dist/domain/domain-context/transformers/actions-builder.js +1 -1
  1018. package/dist/domain/domain-context/transformers/auto-snap-transformer.d.ts +6 -10
  1019. package/dist/domain/domain-context/transformers/auto-snap-transformer.js +1 -1
  1020. package/dist/domain/domain-context/transformers/chain-builder.d.ts +3 -3
  1021. package/dist/domain/domain-context/transformers/context.d.ts +2 -7
  1022. package/dist/domain/domain-context/transformers/context.js +1 -1
  1023. package/dist/domain/domain-context/transformers/entity-builder.d.ts +1 -5
  1024. package/dist/domain/domain-context/transformers/entity-builder.js +1 -1
  1025. package/dist/domain/domain-context/transformers/index.d.ts +1 -1
  1026. package/dist/domain/domain-context/transformers/index.js +1 -1
  1027. package/dist/domain/domain-context/transformers/then-builder.d.ts +1 -2
  1028. package/dist/domain/domain-context/transformers/then-builder.js +1 -1
  1029. package/dist/domain/domain-context/transformers/when-builder.d.ts +3 -9
  1030. package/dist/domain/domain-context/transformers/when-builder.js +1 -1
  1031. package/dist/domain/domain-context/undo-system.d.ts +29 -3
  1032. package/dist/domain/domain-context/undo-system.js +1 -1
  1033. package/dist/domain/domain-runtime/access/selectors.d.ts +9 -0
  1034. package/dist/domain/domain-runtime/access/selectors.js +1 -1
  1035. package/dist/domain/domain-runtime/access/types.d.ts +2 -0
  1036. package/dist/domain/domain-runtime/access/types.js +1 -1
  1037. package/dist/domain/domain-runtime/domain-context/action-context.d.ts +11 -0
  1038. package/dist/domain/domain-runtime/domain-context/action-context.js +1 -0
  1039. package/dist/domain/domain-runtime/domain-context/component-reader.d.ts +1 -4
  1040. package/dist/domain/domain-runtime/domain-context/component-reader.js +1 -1
  1041. package/dist/domain/domain-runtime/domain-context/domain-context.js +1 -1
  1042. package/dist/domain/domain-runtime/domain-context/expression-context.d.ts +8 -0
  1043. package/dist/domain/domain-runtime/domain-context/expression-context.js +1 -0
  1044. package/dist/domain/domain-runtime/domain-context/index.d.ts +3 -0
  1045. package/dist/domain/domain-runtime/domain-context/runtime-expression-context.d.ts +18 -0
  1046. package/dist/domain/domain-runtime/domain-context/runtime-expression-context.js +1 -0
  1047. package/dist/domain/domain-runtime/domain-context/selectors.d.ts +22 -24
  1048. package/dist/domain/domain-runtime/domain-context/selectors.js +1 -1
  1049. package/dist/domain/domain-runtime/domain-context/types.d.ts +4 -1
  1050. package/dist/domain/domain-runtime/domain-runtime.d.ts +100 -72
  1051. package/dist/domain/domain-runtime/environment/types.d.ts +1 -1
  1052. package/dist/domain/domain-runtime/errors/implementation-error-collector.d.ts +19 -0
  1053. package/dist/domain/domain-runtime/errors/implementation-error-collector.js +1 -0
  1054. package/dist/domain/domain-runtime/errors/implementation-error.d.ts +46 -0
  1055. package/dist/domain/domain-runtime/errors/implementation-error.js +1 -0
  1056. package/dist/domain/domain-runtime/errors/implementation-errors.d.ts +13 -0
  1057. package/dist/domain/domain-runtime/errors/implementation-errors.js +1 -0
  1058. package/dist/domain/domain-runtime/errors/index.d.ts +4 -0
  1059. package/dist/domain/domain-runtime/errors/index.js +1 -0
  1060. package/dist/domain/domain-runtime/errors/to-implementation-errors.d.ts +10 -0
  1061. package/dist/domain/domain-runtime/errors/to-implementation-errors.js +1 -0
  1062. package/dist/domain/domain-runtime/index.d.ts +1 -0
  1063. package/dist/domain/domain-runtime/index.js +1 -1
  1064. package/dist/domain/domain-runtime/spec/create-violation-expressions.d.ts +24 -0
  1065. package/dist/domain/domain-runtime/spec/create-violation-expressions.js +1 -0
  1066. package/dist/domain/domain-runtime/spec/index.d.ts +5 -0
  1067. package/dist/domain/domain-runtime/spec/index.js +1 -1
  1068. package/dist/domain/domain-runtime/spec/initialize.d.ts +11 -0
  1069. package/dist/domain/domain-runtime/spec/initialize.js +1 -1
  1070. package/dist/domain/domain-runtime/spec/memoize-expression.d.ts +16 -0
  1071. package/dist/domain/domain-runtime/spec/module-checks/element-registration.d.ts +111 -0
  1072. package/dist/domain/domain-runtime/spec/module-checks/element-registration.js +1 -0
  1073. package/dist/domain/domain-runtime/spec/module-checks/handler-registration.d.ts +34 -0
  1074. package/dist/domain/domain-runtime/spec/module-checks/handler-registration.js +1 -0
  1075. package/dist/domain/domain-runtime/spec/module-checks/index.d.ts +8 -0
  1076. package/dist/domain/domain-runtime/spec/module-checks/index.js +1 -0
  1077. package/dist/domain/domain-runtime/spec/module-checks/project-modules.d.ts +32 -0
  1078. package/dist/domain/domain-runtime/spec/module-checks/project-modules.js +1 -0
  1079. package/dist/domain/domain-runtime/spec/module-checks/resolve-action-modules.d.ts +4 -0
  1080. package/dist/domain/domain-runtime/spec/module-checks/resolve-action-modules.js +1 -0
  1081. package/dist/domain/domain-runtime/spec/module-checks/resolve-component-optic-modules.d.ts +4 -0
  1082. package/dist/domain/domain-runtime/spec/module-checks/resolve-component-optic-modules.js +1 -0
  1083. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.d.ts +15 -0
  1084. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.js +1 -0
  1085. package/dist/domain/domain-runtime/spec/module-checks/resolve-imported-transformers.d.ts +22 -0
  1086. package/dist/domain/domain-runtime/spec/module-checks/resolve-imported-transformers.js +1 -0
  1087. package/dist/domain/domain-runtime/spec/module-checks/resolve-invariant-modules.d.ts +6 -0
  1088. package/dist/domain/domain-runtime/spec/module-checks/resolve-invariant-modules.js +1 -0
  1089. package/dist/domain/domain-runtime/spec/prepare-action-implementations.d.ts +15 -0
  1090. package/dist/domain/domain-runtime/spec/prepare-action-implementations.js +5 -0
  1091. package/dist/domain/domain-runtime/spec/prepare-domain-expressions.d.ts +16 -0
  1092. package/dist/domain/domain-runtime/spec/selectors.d.ts +7 -8
  1093. package/dist/domain/domain-runtime/spec/selectors.js +1 -1
  1094. package/dist/domain/domain-runtime/spec/types.d.ts +22 -6
  1095. package/dist/domain/extensions/angle-indicator.d.ts +21 -0
  1096. package/dist/domain/extensions/angle-indicator.js +1 -0
  1097. package/dist/domain/extensions/attribute-switch.d.ts +8 -0
  1098. package/dist/domain/extensions/attribute-switch.js +1 -0
  1099. package/dist/domain/extensions/autorotate-camera-component.d.ts +19 -0
  1100. package/dist/domain/extensions/autorotate-camera-component.js +1 -0
  1101. package/dist/domain/extensions/basic-sidebar-footer.d.ts +8 -0
  1102. package/dist/domain/extensions/basic-sidebar-footer.js +1 -0
  1103. package/dist/domain/extensions/camera-based-hidden-entity-object.js +1 -0
  1104. package/dist/domain/extensions/camera-based-hidden-entity.js +1 -0
  1105. package/dist/domain/extensions/canvas-config.d.ts +87 -0
  1106. package/dist/domain/extensions/canvas-config.js +1 -0
  1107. package/dist/domain/extensions/canvas-custom-environment.js +1 -0
  1108. package/dist/domain/extensions/canvas-padding.d.ts +25 -0
  1109. package/dist/domain/extensions/canvas-padding.js +1 -0
  1110. package/dist/domain/extensions/canvas-preset-environment.d.ts +37 -0
  1111. package/dist/domain/extensions/canvas-preset-environment.js +1 -0
  1112. package/dist/domain/extensions/child-entity-recipe-hierarchy.d.ts +21 -0
  1113. package/dist/domain/extensions/child-entity-recipe-hierarchy.js +1 -0
  1114. package/dist/domain/extensions/client-side-image.d.ts +14 -0
  1115. package/dist/domain/extensions/client-side-image.js +1 -0
  1116. package/dist/domain/extensions/color-value.js +1 -0
  1117. package/dist/domain/extensions/common/angle-indicator-schema.d.ts +292 -0
  1118. package/dist/domain/extensions/common/angle-indicator-schema.js +1 -0
  1119. package/dist/domain/extensions/common/dimension-indicator-schema.d.ts +607 -0
  1120. package/dist/domain/extensions/common/dimension-indicator-schema.js +1 -0
  1121. package/dist/domain/extensions/common/index.d.ts +4 -0
  1122. package/dist/domain/extensions/common/index.js +1 -0
  1123. package/dist/domain/extensions/custom-header.d.ts +11 -0
  1124. package/dist/domain/extensions/custom-header.js +1 -0
  1125. package/dist/domain/extensions/custom-price-footer.js +1 -0
  1126. package/dist/domain/extensions/custom-sidebar-footer.d.ts +11 -0
  1127. package/dist/domain/extensions/custom-sidebar-footer.js +1 -0
  1128. package/dist/domain/extensions/dimension-indicator.d.ts +31 -0
  1129. package/dist/domain/extensions/dimension-indicator.js +1 -0
  1130. package/dist/domain/extensions/editable-angle-indicator.d.ts +39 -0
  1131. package/dist/domain/extensions/editable-angle-indicator.js +1 -0
  1132. package/dist/domain/extensions/editable-distance-dimension-indicator.d.ts +43 -0
  1133. package/dist/domain/extensions/editable-distance-dimension-indicator.js +1 -0
  1134. package/dist/domain/extensions/editable-offset-indicator.d.ts +42 -0
  1135. package/dist/domain/extensions/editable-offset-indicator.js +1 -0
  1136. package/dist/domain/extensions/editable-size-indicator.d.ts +39 -0
  1137. package/dist/domain/extensions/editable-size-indicator.js +1 -0
  1138. package/dist/domain/extensions/entity-header.d.ts +22 -0
  1139. package/dist/domain/extensions/entity-header.js +1 -0
  1140. package/dist/domain/extensions/exit-tool-mode-fab.d.ts +25 -0
  1141. package/dist/domain/extensions/exit-tool-mode-fab.js +1 -0
  1142. package/dist/domain/extensions/finalize-action.d.ts +20 -0
  1143. package/dist/domain/extensions/finalize-action.js +1 -0
  1144. package/dist/domain/extensions/finalize-component.js +1 -0
  1145. package/dist/domain/extensions/fit-selection-orthographic-camera-component.js +1 -0
  1146. package/dist/domain/extensions/fit-selection-perspective-camera-component.js +1 -0
  1147. package/dist/domain/extensions/fixed-header.d.ts +10 -0
  1148. package/dist/domain/extensions/fixed-header.js +1 -0
  1149. package/dist/domain/extensions/floating-header.d.ts +10 -0
  1150. package/dist/domain/extensions/floating-header.js +1 -0
  1151. package/dist/domain/extensions/hidden-header.d.ts +8 -0
  1152. package/dist/domain/extensions/hidden-header.js +1 -0
  1153. package/dist/domain/extensions/hidden-sidebar-footer.d.ts +21 -0
  1154. package/dist/domain/extensions/hidden-sidebar-footer.js +1 -0
  1155. package/dist/domain/extensions/horizontal-tabs.d.ts +28 -0
  1156. package/dist/domain/extensions/horizontal-tabs.js +1 -0
  1157. package/dist/domain/extensions/index.d.ts +69 -0
  1158. package/dist/domain/extensions/index.js +1 -0
  1159. package/dist/domain/extensions/list-selector-dimension-indicator.d.ts +31 -0
  1160. package/dist/domain/extensions/list-selector-dimension-indicator.js +1 -0
  1161. package/dist/domain/extensions/multilingual-text-value.js +1 -0
  1162. package/dist/domain/extensions/navigation-steps.d.ts +19 -0
  1163. package/dist/domain/extensions/navigation-steps.js +1 -0
  1164. package/dist/domain/extensions/offset-anchors.d.ts +20 -0
  1165. package/dist/domain/extensions/offset-anchors.js +1 -0
  1166. package/dist/domain/extensions/offset-indicator.d.ts +83 -0
  1167. package/dist/domain/extensions/offset-indicator.js +1 -0
  1168. package/dist/domain/extensions/offset.d.ts +31 -0
  1169. package/dist/domain/extensions/offset.js +1 -0
  1170. package/dist/domain/extensions/other-action.d.ts +14 -0
  1171. package/dist/domain/extensions/other-action.js +1 -0
  1172. package/dist/domain/extensions/property-page.d.ts +16 -0
  1173. package/dist/domain/extensions/property-page.js +1 -0
  1174. package/dist/domain/extensions/read-sidebar-footer.d.ts +8 -0
  1175. package/dist/domain/extensions/read-sidebar-footer.js +1 -0
  1176. package/dist/domain/extensions/replace-entity-recipe-hierarchy.d.ts +21 -0
  1177. package/dist/domain/extensions/replace-entity-recipe-hierarchy.js +1 -0
  1178. package/dist/domain/extensions/rotatable.js +1 -0
  1179. package/dist/domain/extensions/rotation-handle.d.ts +53 -0
  1180. package/dist/domain/extensions/rotation-handle.js +1 -0
  1181. package/dist/domain/extensions/save-template-thumbnail.d.ts +14 -0
  1182. package/dist/domain/extensions/save-template-thumbnail.js +1 -0
  1183. package/dist/domain/extensions/scene-entity-add-fab.d.ts +32 -0
  1184. package/dist/domain/extensions/scene-entity-add-fab.js +1 -0
  1185. package/dist/domain/extensions/scene-entity-animation.js +1 -0
  1186. package/dist/domain/extensions/scene-entity-control.js +1 -0
  1187. package/dist/domain/extensions/scene-entity-delete-fab.d.ts +19 -0
  1188. package/dist/domain/extensions/scene-entity-delete-fab.js +1 -0
  1189. package/dist/domain/extensions/scene-entity-floor-object.js +1 -0
  1190. package/dist/domain/extensions/scene-entity-html-hotspot.d.ts +27 -0
  1191. package/dist/domain/extensions/scene-entity-html-hotspot.js +1 -0
  1192. package/dist/domain/extensions/scene-entity-navigation-hotspot.d.ts +20 -0
  1193. package/dist/domain/extensions/scene-entity-navigation-hotspot.js +1 -0
  1194. package/dist/domain/extensions/scene-entity-object-html-hotspot.d.ts +31 -0
  1195. package/dist/domain/extensions/scene-entity-object-html-hotspot.js +1 -0
  1196. package/dist/domain/extensions/scene-entity-select-hotspot.d.ts +5 -0
  1197. package/dist/domain/extensions/scene-entity-select-hotspot.js +1 -0
  1198. package/dist/domain/extensions/scene-entity-wall-object.js +1 -0
  1199. package/dist/domain/extensions/selectable-component.js +1 -0
  1200. package/dist/domain/extensions/sidebar-tabs.d.ts +29 -0
  1201. package/dist/domain/extensions/sidebar-tabs.js +1 -0
  1202. package/dist/domain/extensions/simple-summary.js +1 -0
  1203. package/dist/domain/extensions/size.d.ts +21 -0
  1204. package/dist/domain/extensions/size.js +1 -0
  1205. package/dist/domain/extensions/sketching-draw.d.ts +17 -0
  1206. package/dist/domain/extensions/sketching-draw.js +1 -0
  1207. package/dist/domain/extensions/sketching-edit.d.ts +28 -0
  1208. package/dist/domain/extensions/sketching-edit.js +1 -0
  1209. package/dist/domain/extensions/summary-component.js +1 -0
  1210. package/dist/domain/extensions/text-value.js +1 -0
  1211. package/dist/domain/extensions/tool-controls.js +1 -0
  1212. package/dist/domain/extensions/tool-menu-fab.d.ts +40 -0
  1213. package/dist/domain/extensions/tool-menu-fab.js +1 -0
  1214. package/dist/domain/extensions/toolbar.d.ts +13 -0
  1215. package/dist/domain/extensions/toolbar.js +1 -0
  1216. package/dist/domain/extensions/universal-sidebar-footer.d.ts +12 -0
  1217. package/dist/domain/extensions/universal-sidebar-footer.js +1 -0
  1218. package/dist/domain/extensions/view-controls.js +1 -0
  1219. package/dist/domain/index.d.ts +2 -30
  1220. package/dist/domain/index.js +1 -1
  1221. package/dist/domain/mocks/create-mock-domain-context.d.ts +1 -1
  1222. package/dist/domain/mocks/create-mock-domain-runtime-services.d.ts +1 -1
  1223. package/dist/domain/mocks/create-mock-domain-runtime.d.ts +36 -21
  1224. package/dist/domain/mocks/create-mock-domain-runtime.js +1 -1
  1225. package/dist/domain/mocks/create-mock-domain.d.ts +1 -1
  1226. package/dist/domain/mocks/create-mock-domain.js +1 -1
  1227. package/dist/domain/mocks/create-mock-state.d.ts +2 -2
  1228. package/dist/domain/mocks/create-test-application-config.d.ts +59 -0
  1229. package/dist/domain/mocks/create-test-application-config.js +1 -0
  1230. package/dist/domain/mocks/index.d.ts +1 -0
  1231. package/dist/domain/mocks/index.js +1 -1
  1232. package/dist/domain/projections/blender-projections/blender-projections.d.ts +2 -3
  1233. package/dist/domain/projections/blender-projections/blender-projections.js +1 -1
  1234. package/dist/domain/projections/blender-projections/camera.d.ts +2 -2
  1235. package/dist/domain/projections/collision-projections.d.ts +1 -1
  1236. package/dist/domain/projections/composition-projections.d.ts +1 -1
  1237. package/dist/domain/projections/composition-projections.js +1 -1
  1238. package/dist/domain/projections/constraint-projections.d.ts +1 -1
  1239. package/dist/domain/projections/index.d.ts +1 -1
  1240. package/dist/domain/projections/position-projections.d.ts +1 -1
  1241. package/dist/domain/projections/projected-entities-projections.d.ts +2 -3
  1242. package/dist/domain/projections/snap-matching.d.ts +1 -2
  1243. package/dist/domain/projections/snap-utils.d.ts +1 -2
  1244. package/dist/domain/projections/snapping-projections.d.ts +1 -1
  1245. package/dist/domain/projections/validation-projections.d.ts +3 -20
  1246. package/dist/domain/projections/validation-projections.js +1 -1
  1247. package/dist/domain/sketching/sketching-projections.d.ts +1 -1
  1248. package/dist/domain/system-components/admin-sidebar.d.ts +1 -1
  1249. package/dist/domain/system-components/admin-sidebar.js +1 -1
  1250. package/dist/domain/system-components/angle-dimension.js +1 -1
  1251. package/dist/domain/system-components/application-config.d.ts +3 -3
  1252. package/dist/domain/system-components/application-config.js +1 -1
  1253. package/dist/domain/system-components/attribute-selection.js +1 -1
  1254. package/dist/domain/system-components/bounding-box-component.d.ts +1 -1
  1255. package/dist/domain/system-components/bounding-box-component.js +1 -1
  1256. package/dist/domain/system-components/bounding-sphere-component.d.ts +1 -1
  1257. package/dist/domain/system-components/bounding-sphere-component.js +1 -1
  1258. package/dist/domain/system-components/child-entity-recipes.d.ts +1 -1
  1259. package/dist/domain/system-components/child-entity-recipes.js +1 -1
  1260. package/dist/domain/system-components/child-entity-selection.d.ts +1 -2
  1261. package/dist/domain/system-components/child-entity-selection.js +1 -1
  1262. package/dist/domain/system-components/collision-box-geometry.d.ts +5 -3
  1263. package/dist/domain/system-components/collision-box-geometry.js +1 -1
  1264. package/dist/domain/system-components/collision-geometries.d.ts +1 -1
  1265. package/dist/domain/system-components/collision-geometry.d.ts +5 -3
  1266. package/dist/domain/system-components/collision-geometry.js +1 -1
  1267. package/dist/domain/system-components/collision-point-geometry.d.ts +5 -3
  1268. package/dist/domain/system-components/collision-point-geometry.js +1 -1
  1269. package/dist/domain/system-components/common/index.d.ts +0 -4
  1270. package/dist/domain/system-components/common/index.js +1 -1
  1271. package/dist/domain/system-components/common/material-override-schema.d.ts +2 -2
  1272. package/dist/domain/system-components/common/recipes.d.ts +21 -4
  1273. package/dist/domain/system-components/common/recipes.js +1 -1
  1274. package/dist/domain/system-components/common/scene-entity-control-schema.d.ts +3 -0
  1275. package/dist/domain/system-components/common/scene-entity-control-schema.js +1 -1
  1276. package/dist/domain/system-components/constraint.d.ts +11 -24
  1277. package/dist/domain/system-components/constraint.js +1 -1
  1278. package/dist/domain/system-components/create-blueprint.d.ts +1 -1
  1279. package/dist/domain/system-components/custom-scene-entity.d.ts +1 -1
  1280. package/dist/domain/system-components/custom-scene-entity.js +1 -1
  1281. package/dist/domain/system-components/detail.js +1 -1
  1282. package/dist/domain/system-components/distance-dimension-select.d.ts +1 -1
  1283. package/dist/domain/system-components/distance-dimension-select.js +1 -1
  1284. package/dist/domain/system-components/distance-dimension.d.ts +1 -1
  1285. package/dist/domain/system-components/distance-dimension.js +1 -1
  1286. package/dist/domain/system-components/drag-handle.d.ts +2 -2
  1287. package/dist/domain/system-components/drag-handle.js +1 -1
  1288. package/dist/domain/system-components/fit-entity-orthographic-camera-component.js +1 -1
  1289. package/dist/domain/system-components/fit-entity-perspective-camera-component.js +1 -1
  1290. package/dist/domain/system-components/fit-root-orthographic-camera-component.js +1 -1
  1291. package/dist/domain/system-components/fit-root-perspective-camera-component.js +1 -1
  1292. package/dist/domain/system-components/generic-dimension.d.ts +1 -1
  1293. package/dist/domain/system-components/generic-dimension.js +1 -1
  1294. package/dist/domain/system-components/hidden-entity.js +1 -1
  1295. package/dist/domain/system-components/hotspot-drag-handle.d.ts +2 -3
  1296. package/dist/domain/system-components/hotspot-drag-handle.js +1 -1
  1297. package/dist/domain/system-components/index.d.ts +0 -68
  1298. package/dist/domain/system-components/index.js +1 -1
  1299. package/dist/domain/system-components/material-override-property-transition.js +1 -1
  1300. package/dist/domain/system-components/material-override-transformer.js +1 -1
  1301. package/dist/domain/system-components/material-swatch.js +1 -1
  1302. package/dist/domain/system-components/navigation-page.js +1 -1
  1303. package/dist/domain/system-components/navigation-panel-list.js +1 -1
  1304. package/dist/domain/system-components/phoenix-entity-elements/admin-data-table-sidebar.d.ts +1 -1
  1305. package/dist/domain/system-components/phoenix-layout-elements/admin-connected-resource-page.d.ts +1 -1
  1306. package/dist/domain/system-components/phoenix-layout-elements/admin-data-table-actions.d.ts +1 -1
  1307. package/dist/domain/system-components/phoenix-layout-elements/admin-data-table-page.d.ts +1 -1
  1308. package/dist/domain/system-components/phoenix-layout-elements/assistant-toolbar-button.d.ts +44 -0
  1309. package/dist/domain/system-components/phoenix-layout-elements/assistant-toolbar-button.js +1 -0
  1310. package/dist/domain/system-components/phoenix-layout-elements/index.d.ts +1 -0
  1311. package/dist/domain/system-components/phoenix-layout-elements/index.js +1 -1
  1312. package/dist/domain/system-components/phoenix-layout-elements/phoenix-layout-element.d.ts +2 -1
  1313. package/dist/domain/system-components/phoenix-layout-elements/phoenix-layout-element.js +1 -1
  1314. package/dist/domain/system-components/pivot-point.d.ts +1 -1
  1315. package/dist/domain/system-components/pivot-point.js +1 -1
  1316. package/dist/domain/system-components/price.js +1 -1
  1317. package/dist/domain/system-components/projected-entities.d.ts +1 -1
  1318. package/dist/domain/system-components/projected-entities.js +1 -1
  1319. package/dist/domain/system-components/replace-entity-recipes.d.ts +1 -1
  1320. package/dist/domain/system-components/replace-entity-recipes.js +1 -1
  1321. package/dist/domain/system-components/scene-entity-ambient-light.js +1 -1
  1322. package/dist/domain/system-components/scene-entity-box-object.js +1 -1
  1323. package/dist/domain/system-components/scene-entity-directional-light.js +1 -1
  1324. package/dist/domain/system-components/scene-entity-local-material-override.js +1 -1
  1325. package/dist/domain/system-components/scene-entity-material-override.d.ts +1 -1
  1326. package/dist/domain/system-components/scene-entity-material-override.js +1 -1
  1327. package/dist/domain/system-components/scene-entity-object-clip.js +1 -1
  1328. package/dist/domain/system-components/scene-entity-object-decal.js +1 -1
  1329. package/dist/domain/system-components/scene-entity-object-group.js +1 -1
  1330. package/dist/domain/system-components/scene-entity-object-local-material-override.js +1 -1
  1331. package/dist/domain/system-components/scene-entity-object-material-override.d.ts +1 -1
  1332. package/dist/domain/system-components/scene-entity-object-material-override.js +1 -1
  1333. package/dist/domain/system-components/scene-entity-object-properties.js +1 -1
  1334. package/dist/domain/system-components/scene-entity-object-remote-material-override.js +1 -1
  1335. package/dist/domain/system-components/scene-entity-object-text-decal.d.ts +1 -1
  1336. package/dist/domain/system-components/scene-entity-object-text-decal.js +1 -1
  1337. package/dist/domain/system-components/scene-entity-object-transformer.js +1 -1
  1338. package/dist/domain/system-components/scene-entity-object-transimissive-material-override.d.ts +1 -1
  1339. package/dist/domain/system-components/scene-entity-object-transimissive-material-override.js +1 -1
  1340. package/dist/domain/system-components/scene-entity-object.js +1 -1
  1341. package/dist/domain/system-components/scene-entity-point-light.js +1 -1
  1342. package/dist/domain/system-components/scene-entity-properties.js +1 -1
  1343. package/dist/domain/system-components/scene-entity-rect-area-light.js +1 -1
  1344. package/dist/domain/system-components/scene-entity-remote-material-override.js +1 -1
  1345. package/dist/domain/system-components/scene-entity-remote-object.js +1 -1
  1346. package/dist/domain/system-components/scene-entity-spot-light.js +1 -1
  1347. package/dist/domain/system-components/scene-entity-transimissive-material-override.d.ts +1 -1
  1348. package/dist/domain/system-components/scene-entity-transimissive-material-override.js +1 -1
  1349. package/dist/domain/system-components/sketching-line.d.ts +1 -1
  1350. package/dist/domain/system-components/sketching-line.js +1 -1
  1351. package/dist/domain/system-components/sketching-rectangle.d.ts +1 -1
  1352. package/dist/domain/system-components/sketching-rectangle.js +1 -1
  1353. package/dist/domain/system-components/sketching.d.ts +1 -1
  1354. package/dist/domain/system-components/sketching.js +1 -1
  1355. package/dist/domain/system-components/snap-axis.d.ts +1 -1
  1356. package/dist/domain/system-components/snap-axis.js +1 -1
  1357. package/dist/domain/system-components/snap-edge.d.ts +1 -1
  1358. package/dist/domain/system-components/snap-edge.js +1 -1
  1359. package/dist/domain/system-components/snap-plane.d.ts +1 -1
  1360. package/dist/domain/system-components/snap-plane.js +1 -1
  1361. package/dist/domain/system-components/snap-point.d.ts +1 -1
  1362. package/dist/domain/system-components/snap-point.js +1 -1
  1363. package/dist/domain/system-components/static-orthographic-camera-component.d.ts +1 -1
  1364. package/dist/domain/system-components/static-orthographic-camera-component.js +1 -1
  1365. package/dist/domain/system-components/static-perspective-camera-component.d.ts +1 -1
  1366. package/dist/domain/system-components/static-perspective-camera-component.js +1 -1
  1367. package/dist/domain/utils/eval-cache.d.ts +2 -3
  1368. package/dist/domain/utils/map-nested-object.d.ts +1 -1
  1369. package/dist/domain/utils/memo-eval.d.ts +2 -4
  1370. package/dist/editor/Editor.d.ts +7 -0
  1371. package/dist/editor/Editor.js +1 -1
  1372. package/dist/editor/domain-editors/DomainSpecContext.js +1 -1
  1373. package/dist/editor/domain-editors/apply-spec-update.js +1 -1
  1374. package/dist/editor/domain-editors/use-implementation-files.d.ts +12 -8
  1375. package/dist/editor/domain-editors/use-implementation-files.js +1 -1
  1376. package/dist/editor/graphql/GraphQLPanel.js +1 -1
  1377. package/dist/editor/mocks/CreateMockYaml.js +2 -2
  1378. package/dist/editor/mocks/EditorMockContext.d.ts +2 -0
  1379. package/dist/editor/mocks/EditorMockContext.js +1 -1
  1380. package/dist/editor/variants/VariantAnswerFooter.d.ts +17 -0
  1381. package/dist/editor/variants/VariantAnswerFooter.js +1 -0
  1382. package/dist/editor/variants/VariantPreviewHandler.d.ts +6 -0
  1383. package/dist/editor/variants/VariantPreviewHandler.js +1 -0
  1384. package/dist/editor/variants/variant-preview-styles.d.ts +49 -0
  1385. package/dist/editor/variants/variant-preview-styles.js +1 -0
  1386. package/dist/globals/index.d.ts +2 -0
  1387. package/dist/i18n/locales/cs/messages.js +1 -1
  1388. package/dist/i18n/locales/da/messages.js +1 -1
  1389. package/dist/i18n/locales/de/messages.js +1 -1
  1390. package/dist/i18n/locales/de-AT/messages.js +1 -1
  1391. package/dist/i18n/locales/en/messages.js +1 -1
  1392. package/dist/i18n/locales/en-AU/messages.js +1 -1
  1393. package/dist/i18n/locales/en-GB/messages.js +1 -1
  1394. package/dist/i18n/locales/es/messages.js +1 -1
  1395. package/dist/i18n/locales/fr/messages.js +1 -1
  1396. package/dist/i18n/locales/hu/messages.js +1 -1
  1397. package/dist/i18n/locales/it/messages.js +1 -1
  1398. package/dist/i18n/locales/nl/messages.js +1 -1
  1399. package/dist/i18n/locales/pl/messages.js +1 -1
  1400. package/dist/i18n/locales/pt/messages.js +1 -1
  1401. package/dist/i18n/locales/ro/messages.js +1 -1
  1402. package/dist/i18n/locales/sk/messages.js +1 -1
  1403. package/dist/i18n/locales/tr/messages.js +1 -1
  1404. package/dist/legacy/domain-cli/gen/configurator-builder.js +30 -16
  1405. package/dist/legacy/domain-cli/gen/constant-expressions.js +1 -3
  1406. package/dist/legacy/domain-cli/gen/defaults.js +1 -7
  1407. package/dist/legacy/domain-cli/gen/implementation.js +7 -11
  1408. package/dist/legacy/domain-cli/gen/invariants.js +7 -6
  1409. package/dist/legacy/domain-cli/gen/relations.js +1 -1
  1410. package/dist/legacy/domain-cli/utils/cache.d.ts +1 -1
  1411. package/dist/legacy/domain-cli/utils/cache.js +1 -1
  1412. package/dist/legacy/domain-spec/__generated/domain-schema.d.ts +166 -148
  1413. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/claude-md.d.ts +1 -1
  1414. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/cursor-rules.d.ts +1 -1
  1415. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.d.ts +1 -1
  1416. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.js +7 -0
  1417. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/domain-index.js +17 -15
  1418. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/env-example.d.ts +1 -1
  1419. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/env-example.js +4 -0
  1420. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-admin.js +18 -18
  1421. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-configurator.js +16 -15
  1422. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-admin.js +24 -24
  1423. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/frontend-embedded-configurator.js +16 -15
  1424. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/generator-shared.d.ts +7 -2
  1425. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/generator-shared.js +8 -12
  1426. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/index.d.ts +1 -1
  1427. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/index.js +1 -1
  1428. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/webhook-builders.js +7 -7
  1429. package/dist/phoenix/application-spec/application-spec-builder.d.ts +0 -2
  1430. package/dist/phoenix/application-spec/application-spec-builder.js +1 -1
  1431. package/dist/phoenix/application-spec/generate-application-spec-project.d.ts +0 -2
  1432. package/dist/phoenix/application-spec/generate-application-spec-project.js +2 -2
  1433. package/dist/phoenix/application-spec/generate-application-spec-story.js +2 -2
  1434. package/dist/phoenix/application-spec/generate-project-files.d.ts +0 -2
  1435. package/dist/phoenix/application-spec/project-files.js +1 -1
  1436. package/dist/phoenix/application-spec/resolve-deployment-data.d.ts +4 -3
  1437. package/dist/phoenix/application-spec/resolve-deployment-data.js +2 -2
  1438. package/dist/phoenix/bin.d.ts +2 -0
  1439. package/dist/phoenix/bin.js +2 -0
  1440. package/dist/phoenix/check-configs/built-in-eslint-config.d.ts +9 -0
  1441. package/dist/phoenix/check-configs/built-in-eslint-config.js +1 -0
  1442. package/dist/phoenix/check-configs/eslint-config.d.ts +10 -0
  1443. package/dist/phoenix/check-configs/eslint-config.js +1 -0
  1444. package/dist/phoenix/check-configs/index.d.ts +8 -0
  1445. package/dist/phoenix/check-configs/index.js +1 -0
  1446. package/dist/phoenix/check-configs/typescript-project.d.ts +5 -0
  1447. package/dist/phoenix/check-configs/typescript-project.js +1 -0
  1448. package/dist/phoenix/cli.d.ts +0 -1
  1449. package/dist/phoenix/cli.js +1 -2
  1450. package/dist/phoenix/commands/build.d.ts +5 -0
  1451. package/dist/phoenix/commands/build.js +1 -1
  1452. package/dist/phoenix/commands/check.js +1 -1
  1453. package/dist/phoenix/commands/clean.js +1 -1
  1454. package/dist/phoenix/commands/deploy.js +2 -2
  1455. package/dist/phoenix/commands/deps/deps.d.ts +73 -0
  1456. package/dist/phoenix/commands/deps/deps.js +3 -0
  1457. package/dist/phoenix/commands/deps/index.d.ts +1 -0
  1458. package/dist/phoenix/commands/deps/index.js +1 -0
  1459. package/dist/phoenix/commands/deps/sdk-manifest.d.ts +12 -0
  1460. package/dist/phoenix/commands/deps/sdk-manifest.js +1 -0
  1461. package/dist/phoenix/commands/dev.js +5 -5
  1462. package/dist/phoenix/commands/feedback.d.ts +2 -1
  1463. package/dist/phoenix/commands/feedback.js +1 -1
  1464. package/dist/phoenix/commands/fix.js +1 -1
  1465. package/dist/phoenix/commands/index.d.ts +2 -0
  1466. package/dist/phoenix/commands/index.js +1 -1
  1467. package/dist/phoenix/commands/init.d.ts +17 -5
  1468. package/dist/phoenix/commands/init.js +1 -1
  1469. package/dist/phoenix/commands/link.js +1 -1
  1470. package/dist/phoenix/commands/login.d.ts +24 -6
  1471. package/dist/phoenix/commands/login.js +2 -2
  1472. package/dist/phoenix/commands/prepare-deployment-command.js +2 -2
  1473. package/dist/phoenix/commands/prepare-local-environment-command.js +1 -1
  1474. package/dist/phoenix/commands/prettier.js +1 -1
  1475. package/dist/phoenix/commands/story-dev.js +2 -2
  1476. package/dist/phoenix/commands/sync.js +1 -1
  1477. package/dist/phoenix/commands/unlink.js +1 -1
  1478. package/dist/phoenix/commands/variants.d.ts +35 -0
  1479. package/dist/phoenix/commands/variants.js +1 -0
  1480. package/dist/phoenix/editor-server/commands-router.d.ts +68 -1
  1481. package/dist/phoenix/editor-server/commands-router.js +1 -1
  1482. package/dist/phoenix/editor-server/editor-router.d.ts +65 -0
  1483. package/dist/phoenix/editor-server/editor-server.d.ts +3 -3
  1484. package/dist/phoenix/editor-server/editor-server.js +1 -1
  1485. package/dist/phoenix/editor-server/protocol.d.ts +1 -0
  1486. package/dist/phoenix/editor-server/spec-router.js +1 -1
  1487. package/dist/phoenix/editor-server/trpc.d.ts +3 -0
  1488. package/dist/phoenix/scripts/build-admin.js +1 -1
  1489. package/dist/phoenix/services/application-spec-project-watcher.d.ts +15 -4
  1490. package/dist/phoenix/services/application-spec-project-watcher.js +3 -3
  1491. package/dist/phoenix/services/index.d.ts +5 -0
  1492. package/dist/phoenix/services/index.js +1 -1
  1493. package/dist/phoenix/services/lingui.d.ts +8 -0
  1494. package/dist/phoenix/services/lingui.js +1 -1
  1495. package/dist/phoenix/services/phoenix-application.d.ts +21 -0
  1496. package/dist/phoenix/services/phoenix-application.js +1 -0
  1497. package/dist/phoenix/services/phoenix-store.d.ts +48 -0
  1498. package/dist/phoenix/services/phoenix-store.js +1 -0
  1499. package/dist/phoenix/services/phx-banner-plugin.d.ts +32 -0
  1500. package/dist/phoenix/services/phx-banner-plugin.js +1 -0
  1501. package/dist/phoenix/services/phx-licenses-plugin.d.ts +55 -0
  1502. package/dist/phoenix/services/phx-licenses-plugin.js +8 -0
  1503. package/dist/phoenix/services/phx-variant-previews-plugin.d.ts +9 -0
  1504. package/dist/phoenix/services/phx-variant-previews-plugin.js +1 -0
  1505. package/dist/phoenix/services/prepare-development-environment.js +1 -1
  1506. package/dist/phoenix/services/source-archive.d.ts +1 -0
  1507. package/dist/phoenix/services/source-archive.js +1 -1
  1508. package/dist/phoenix/services/swc.js +1 -1
  1509. package/dist/phoenix/services/variant-file-session.d.ts +36 -0
  1510. package/dist/phoenix/services/variant-file-session.js +1 -0
  1511. package/dist/phoenix/services/variant-preview-service.d.ts +80 -0
  1512. package/dist/phoenix/services/variant-preview-service.js +1 -0
  1513. package/dist/phoenix/services/vite-config.d.ts +2 -0
  1514. package/dist/phoenix/services/vite-config.js +1 -1
  1515. package/dist/phoenix/utils/git/index.d.ts +1 -0
  1516. package/dist/phoenix/utils/git/index.js +1 -0
  1517. package/dist/phoenix/utils/git/is-inside-git-repository.d.ts +6 -0
  1518. package/dist/phoenix/utils/git/is-inside-git-repository.js +1 -0
  1519. package/dist/phoenix/utils/index.d.ts +6 -2
  1520. package/dist/phoenix/utils/index.js +1 -1
  1521. package/dist/phoenix/utils/node-version/index.d.ts +1 -0
  1522. package/dist/phoenix/utils/node-version/index.js +1 -0
  1523. package/dist/phoenix/utils/node-version/supported-node-version.d.ts +12 -0
  1524. package/dist/phoenix/utils/node-version/supported-node-version.js +4 -0
  1525. package/dist/phoenix/utils/package-info.d.ts +0 -9
  1526. package/dist/phoenix/utils/package-info.js +1 -1
  1527. package/dist/phoenix/utils/package-manager/index.d.ts +2 -0
  1528. package/dist/phoenix/utils/package-manager/index.js +1 -0
  1529. package/dist/phoenix/utils/package-manager/package-manager-commands.d.ts +19 -0
  1530. package/dist/phoenix/utils/package-manager/package-manager-commands.js +1 -0
  1531. package/dist/phoenix/utils/package-manager/pnpm-project.d.ts +9 -0
  1532. package/dist/phoenix/utils/package-manager/pnpm-project.js +1 -0
  1533. package/dist/phoenix/utils/read-git-commit.d.ts +14 -0
  1534. package/dist/phoenix/utils/read-git-commit.js +1 -0
  1535. package/dist/phoenix/utils/run-command.d.ts +11 -0
  1536. package/dist/phoenix/utils/run-command.js +1 -1
  1537. package/dist/phoenix/utils/sdk-tool/index.d.ts +1 -0
  1538. package/dist/phoenix/utils/sdk-tool/index.js +1 -0
  1539. package/dist/phoenix/utils/sdk-tool/resolve-sdk-tool-bin.d.ts +15 -0
  1540. package/dist/phoenix/utils/sdk-tool/resolve-sdk-tool-bin.js +1 -0
  1541. package/dist/react-sdk/application-runtime/common-services/analytics/analytics-service.d.ts +2 -2
  1542. package/dist/react-sdk/application-runtime/common-services/analytics/domain-controls-analytics.d.ts +21 -21
  1543. package/dist/react-sdk/application-runtime/common-services/analytics/frontend-analytics.d.ts +52 -0
  1544. package/dist/react-sdk/application-runtime/common-services/analytics/frontend-analytics.js +1 -0
  1545. package/dist/react-sdk/application-runtime/common-services/analytics/index.d.ts +1 -0
  1546. package/dist/react-sdk/application-runtime/common-services/analytics/index.js +1 -1
  1547. package/dist/react-sdk/application-runtime/hooks/data/use-published-data.d.ts +1 -1
  1548. package/dist/react-sdk/application-runtime/hooks/use-access-service.d.ts +2 -0
  1549. package/dist/react-sdk/application-runtime/hooks/use-domain-application-props.d.ts +5 -2
  1550. package/dist/react-sdk/application-runtime/hooks/use-spec.d.ts +1 -1
  1551. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.d.ts +1 -1
  1552. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.js +1 -1
  1553. package/dist/react-sdk/application-runtime/routing/access-service.d.ts +1 -0
  1554. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.d.ts +69 -40
  1555. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.js +1 -1
  1556. package/dist/react-sdk/domain-application-context/DomainLifecycleBoundary.js +1 -1
  1557. package/dist/react-sdk/domain-context/common-hooks/index.d.ts +8 -0
  1558. package/dist/react-sdk/domain-context/common-hooks/index.js +1 -0
  1559. package/dist/react-sdk/domain-context/common-hooks/use-configurator-messages.d.ts +41 -0
  1560. package/dist/react-sdk/domain-context/common-hooks/use-configurator-messages.js +1 -0
  1561. package/dist/react-sdk/domain-context/common-hooks/use-domain-context.d.ts +12 -9
  1562. package/dist/react-sdk/domain-context/component-hooks/index.d.ts +1 -0
  1563. package/dist/react-sdk/domain-context/component-hooks/index.js +1 -0
  1564. package/dist/react-sdk/domain-context/component-hooks/use-component.js +1 -1
  1565. package/dist/react-sdk/domain-context/entity-hooks/use-domain-entity-state.js +1 -1
  1566. package/dist/react-sdk/domain-context/entity-hooks/use-entity-price.js +1 -1
  1567. package/dist/react-sdk/domain-context/entity-hooks/use-root-entity-id.js +1 -1
  1568. package/dist/react-sdk/domain-context/entity-hooks/use-root-entity-state.js +1 -1
  1569. package/dist/react-sdk/domain-context/index.d.ts +8 -1
  1570. package/dist/react-sdk/domain-context/index.js +1 -1
  1571. package/dist/react-sdk/domain-context/system-hooks/composition-hooks.js +1 -1
  1572. package/dist/react-sdk/domain-context/system-hooks/dimension-hooks.js +1 -1
  1573. package/dist/react-sdk/domain-context/system-hooks/generate-share-link-hooks.d.ts +8 -0
  1574. package/dist/react-sdk/domain-context/system-hooks/generate-share-link-hooks.js +1 -0
  1575. package/dist/react-sdk/domain-context/system-hooks/hover-hooks.js +1 -1
  1576. package/dist/react-sdk/domain-context/system-hooks/locale-switch-hooks.d.ts +24 -0
  1577. package/dist/react-sdk/domain-context/system-hooks/locale-switch-hooks.js +1 -0
  1578. package/dist/react-sdk/domain-context/system-hooks/navigation-hooks.d.ts +11 -0
  1579. package/dist/react-sdk/domain-context/system-hooks/navigation-hooks.js +1 -1
  1580. package/dist/react-sdk/domain-context/system-hooks/selection-hooks.js +1 -1
  1581. package/dist/react-sdk/domain-context/system-hooks/share-links-hooks.d.ts +32 -0
  1582. package/dist/react-sdk/domain-context/system-hooks/share-links-hooks.js +1 -0
  1583. package/dist/react-sdk/domain-context/system-hooks/step-navigation-hooks.d.ts +57 -0
  1584. package/dist/react-sdk/domain-context/system-hooks/step-navigation-hooks.js +1 -0
  1585. package/dist/react-sdk/domain-context/system-hooks/tab-navigation-hooks.d.ts +61 -0
  1586. package/dist/react-sdk/domain-context/system-hooks/tab-navigation-hooks.js +1 -0
  1587. package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.d.ts +20 -0
  1588. package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.js +1 -0
  1589. package/dist/react-sdk/domain-controls/hooks/use-angle-dimension.d.ts +1 -1
  1590. package/dist/react-sdk/elements/configurator-error-page-props.d.ts +20 -0
  1591. package/dist/react-sdk/elements/configurator-error-page-props.js +1 -0
  1592. package/dist/react-sdk/elements/index.d.ts +1 -0
  1593. package/dist/react-sdk/handlers/FinalizeActionRunner.d.ts +13 -0
  1594. package/dist/react-sdk/handlers/FinalizeActionRunner.js +1 -0
  1595. package/dist/react-sdk/handlers/FinalizeActionsHost.d.ts +10 -0
  1596. package/dist/react-sdk/handlers/FinalizeActionsHost.js +1 -0
  1597. package/dist/react-sdk/handlers/FinalizeActionsProvider.d.ts +11 -0
  1598. package/dist/react-sdk/handlers/FinalizeActionsProvider.js +1 -0
  1599. package/dist/react-sdk/handlers/finalize-actions-context.d.ts +6 -0
  1600. package/dist/react-sdk/handlers/finalize-actions-context.js +1 -0
  1601. package/dist/react-sdk/handlers/finalize-actions-store.d.ts +23 -0
  1602. package/dist/react-sdk/handlers/finalize-actions-store.js +1 -0
  1603. package/dist/react-sdk/handlers/index.d.ts +6 -0
  1604. package/dist/react-sdk/handlers/index.js +1 -1
  1605. package/dist/react-sdk/handlers/use-finalize-action.d.ts +32 -0
  1606. package/dist/react-sdk/handlers/use-finalize-action.js +1 -0
  1607. package/dist/react-sdk/handlers/use-finalize-actions.d.ts +53 -0
  1608. package/dist/react-sdk/handlers/use-finalize-actions.js +1 -0
  1609. package/dist/react-sdk/index.d.ts +2 -0
  1610. package/dist/react-sdk/index.js +1 -1
  1611. package/dist/react-sdk/loading-state/loading-state-manager.d.ts +5 -0
  1612. package/dist/react-sdk/loading-state/loading-state-manager.js +1 -1
  1613. package/dist/react-sdk/responsive-state/ResponsiveStateProvider.d.ts +25 -0
  1614. package/dist/react-sdk/responsive-state/ResponsiveStateProvider.js +1 -0
  1615. package/dist/react-sdk/responsive-state/canvas-padding.d.ts +14 -0
  1616. package/dist/react-sdk/responsive-state/canvas-padding.js +1 -0
  1617. package/dist/react-sdk/responsive-state/index.d.ts +5 -0
  1618. package/dist/react-sdk/responsive-state/index.js +1 -0
  1619. package/dist/react-sdk/responsive-state/responsive-state-manager.d.ts +111 -0
  1620. package/dist/react-sdk/responsive-state/responsive-state-manager.js +1 -0
  1621. package/dist/react-sdk/responsive-state/use-responsive-state-manager.d.ts +10 -0
  1622. package/dist/react-sdk/responsive-state/use-responsive-state-manager.js +1 -0
  1623. package/dist/react-sdk/responsive-state/use-responsive-state.d.ts +11 -0
  1624. package/dist/react-sdk/responsive-state/use-responsive-state.js +1 -0
  1625. package/dist/react-sdk/scene-control-elements/AddEntityFabElement.d.ts +36 -0
  1626. package/dist/react-sdk/scene-control-elements/AddEntityFabElement.js +1 -0
  1627. package/dist/react-sdk/scene-control-elements/DeleteEntityFabElement.d.ts +44 -0
  1628. package/dist/react-sdk/scene-control-elements/DeleteEntityFabElement.js +1 -0
  1629. package/dist/react-sdk/scene-control-elements/NavigationHotspotElement.d.ts +38 -0
  1630. package/dist/react-sdk/scene-control-elements/NavigationHotspotElement.js +1 -0
  1631. package/dist/react-sdk/scene-control-elements/SelectionHotspotElement.d.ts +30 -0
  1632. package/dist/react-sdk/scene-control-elements/SelectionHotspotElement.js +1 -0
  1633. package/dist/react-sdk/scene-control-elements/ToolMenuFabElement.d.ts +30 -0
  1634. package/dist/react-sdk/scene-control-elements/ToolMenuFabElement.js +1 -0
  1635. package/dist/react-sdk/scene-control-elements/create-add-entity-fab.d.ts +9 -0
  1636. package/dist/react-sdk/scene-control-elements/create-add-entity-fab.js +1 -0
  1637. package/dist/react-sdk/scene-control-elements/create-delete-entity-fab.d.ts +9 -0
  1638. package/dist/react-sdk/scene-control-elements/create-delete-entity-fab.js +1 -0
  1639. package/dist/react-sdk/scene-control-elements/create-navigation-hotspot.d.ts +10 -0
  1640. package/dist/react-sdk/scene-control-elements/create-navigation-hotspot.js +1 -0
  1641. package/dist/react-sdk/scene-control-elements/create-selection-hotspot.d.ts +9 -0
  1642. package/dist/react-sdk/scene-control-elements/create-selection-hotspot.js +1 -0
  1643. package/dist/react-sdk/scene-control-elements/create-tool-menu-fab.d.ts +9 -0
  1644. package/dist/react-sdk/scene-control-elements/create-tool-menu-fab.js +1 -0
  1645. package/dist/react-sdk/scene-control-elements/index.d.ts +11 -0
  1646. package/dist/react-sdk/scene-control-elements/index.js +1 -0
  1647. package/dist/react-sdk/scene-control-elements/scene-control-tooltip-visibility.d.ts +5 -0
  1648. package/dist/react-sdk/scene-control-elements/scene-control-tooltip-visibility.js +1 -0
  1649. package/dist/react-sdk/session/NotAuthenticatedPage.d.ts +4 -0
  1650. package/dist/react-sdk/session/NotAuthenticatedPage.js +1 -1
  1651. package/dist/react-sdk/web-component/create-web-component.js +1 -1
  1652. package/dist/react-sdk/web-component/god-mode/god-mode-registry.d.ts +30 -0
  1653. package/dist/react-sdk/web-component/god-mode/god-mode-registry.js +1 -0
  1654. package/dist/react-sdk/web-component/god-mode/index.d.ts +1 -0
  1655. package/dist/react-sdk/web-component/god-mode/index.js +1 -0
  1656. package/dist/ui-sdk/common/use-viewport-size.d.ts +4 -1
  1657. package/dist/ui-sdk/common/use-viewport-size.js +1 -1
  1658. package/dist/ui-sdk/components/mobile-controls/index.d.ts +1 -1
  1659. package/dist/ui-sdk/icons/__generated/Lightbulb.d.ts +3 -0
  1660. package/dist/ui-sdk/icons/__generated/Lightbulb.js +1 -0
  1661. package/dist/ui-sdk/icons/__generated/XCircle.d.ts +3 -0
  1662. package/dist/ui-sdk/icons/__generated/XCircle.js +1 -0
  1663. package/dist/ui-sdk/icons/__generated/index.d.ts +4 -0
  1664. package/dist/ui-sdk/icons/__generated/index.js +1 -1
  1665. package/dist/ui-sdk/icons/icons-registry.js +1 -1
  1666. package/dist/ui-sdk/responsive-application/ResponsiveApplicationProvider.d.ts +9 -0
  1667. package/dist/ui-sdk/responsive-application/ResponsiveApplicationProvider.js +1 -1
  1668. package/dist/ui-sdk/responsive-application/index.d.ts +1 -0
  1669. package/dist/ui-sdk/responsive-application/responsive-state-store.d.ts +57 -0
  1670. package/dist/ui-sdk/responsive-application/responsive-state-store.js +1 -0
  1671. package/dist/ui-sdk/responsive-application/use-store-responsive-info.d.ts +7 -0
  1672. package/dist/ui-sdk/responsive-application/use-store-responsive-info.js +1 -0
  1673. package/dist/ui-sdk/theme/types.d.ts +4 -0
  1674. package/dist/webhook/builders/common.d.ts +8 -0
  1675. package/dist/webhook/builders/webhook-builder.d.ts +1 -1
  1676. package/dist/webhook/builders/webhook-builder.js +1 -1
  1677. package/package.json +50 -41
  1678. package/schema/domain-spec.json +1225 -217
  1679. package/dist/application-spec/core/eval-to-constant.d.ts +0 -14
  1680. package/dist/application-spec/generate-application/code/templates/env-ci.d.ts +0 -1
  1681. package/dist/application-spec/generate-application/code/templates/env-ci.js +0 -25
  1682. package/dist/application-spec/generate-application/code/templates/env-example.d.ts +0 -1
  1683. package/dist/application-spec/generate-application/code/templates/env-example.js +0 -90
  1684. package/dist/application-spec/generate-application/code/templates/nvmrc.d.ts +0 -1
  1685. package/dist/application-spec/generate-application/code/templates/nvmrc.js +0 -2
  1686. package/dist/application-spec/generate-application/code/templates/package-json.d.ts +0 -10
  1687. package/dist/application-spec/generate-application/code/templates/package-json.js +0 -1
  1688. package/dist/application-spec/generate-application/code/templates/prettier-ignore.d.ts +0 -1
  1689. package/dist/application-spec/generate-application/code/templates/prettier-ignore.js +0 -6
  1690. package/dist/application-spec/generate-application/code/templates/private-assets-readme.d.ts +0 -1
  1691. package/dist/application-spec/generate-application/code/templates/private-assets-readme.js +0 -24
  1692. package/dist/application-spec/generate-application/code/templates/public-assets-readme.d.ts +0 -1
  1693. package/dist/application-spec/generate-application/code/templates/public-assets-readme.js +0 -24
  1694. package/dist/application-spec/generate-application/code/templates/readme.d.ts +0 -1
  1695. package/dist/application-spec/generate-application/code/templates/readme.js +0 -23
  1696. package/dist/application-spec/generate-application/code/templates/skills/agents-md.d.ts +0 -1
  1697. package/dist/application-spec/generate-application/code/templates/skills/agents-md.js +0 -2
  1698. package/dist/application-spec/generate-application/code/templates/webhook-implementation.d.ts +0 -1
  1699. package/dist/application-spec/generate-application/code/templates/webhook-implementation.js +0 -7
  1700. package/dist/configurator/assistant/browser-details.d.ts +0 -17
  1701. package/dist/configurator/assistant/browser-details.js +0 -1
  1702. package/dist/configurator/assistant/graphql-tools.d.ts +0 -156
  1703. package/dist/configurator/assistant/graphql-tools.js +0 -1
  1704. package/dist/configurator/assistant/index.d.ts +0 -1
  1705. package/dist/configurator/assistant/index.js +0 -1
  1706. package/dist/configurator/assistant/use-assistant-chat.d.ts +0 -20
  1707. package/dist/configurator/assistant/use-assistant-chat.js +0 -1
  1708. package/dist/configurator/common/frontend-analytics.d.ts +0 -46
  1709. package/dist/configurator/common/frontend-analytics.js +0 -1
  1710. package/dist/configurator/ui/phoenix-layout-elements/language/use-locale-options.d.ts +0 -4
  1711. package/dist/configurator/ui/phoenix-layout-elements/language/use-locale-options.js +0 -1
  1712. package/dist/configurator/ui/phoenix-layout-elements/measurements/use-measurements-visibility.d.ts +0 -4
  1713. package/dist/configurator/ui/phoenix-layout-elements/measurements/use-measurements-visibility.js +0 -1
  1714. package/dist/domain/application/element-registration.d.ts +0 -105
  1715. package/dist/domain/application/element-registration.js +0 -1
  1716. package/dist/domain/application/handler-registration.d.ts +0 -29
  1717. package/dist/domain/application/handler-registration.js +0 -1
  1718. package/dist/domain/application/resolve-imported-transformers.d.ts +0 -13
  1719. package/dist/domain/application/resolve-imported-transformers.js +0 -1
  1720. package/dist/domain/application/resource-builder.d.ts +0 -13
  1721. package/dist/domain/application/resource-builder.js +0 -1
  1722. package/dist/domain/components/component-reader-types.d.ts +0 -44
  1723. package/dist/domain/components/debug-state-component.d.ts +0 -14
  1724. package/dist/domain/components/debug-state-component.js +0 -1
  1725. package/dist/domain/components/domain-component-optic.d.ts +0 -76
  1726. package/dist/domain/components/domain-component-optic.js +0 -16
  1727. package/dist/domain/components/drag-state-component.d.ts +0 -16
  1728. package/dist/domain/components/drag-state-component.js +0 -1
  1729. package/dist/domain/components/export-state-component.d.ts +0 -15
  1730. package/dist/domain/components/export-state-component.js +0 -1
  1731. package/dist/domain/components/fullscreen-state-component.d.ts +0 -14
  1732. package/dist/domain/components/fullscreen-state-component.js +0 -1
  1733. package/dist/domain/components/group-components-by-entity-id-and-name.d.ts +0 -9
  1734. package/dist/domain/components/group-components-by-entity-id-and-name.js +0 -1
  1735. package/dist/domain/components/hover-state-component.d.ts +0 -14
  1736. package/dist/domain/components/hover-state-component.js +0 -1
  1737. package/dist/domain/components/index.d.ts +0 -2
  1738. package/dist/domain/components/index.js +0 -1
  1739. package/dist/domain/components/legacy-filter.d.ts +0 -513
  1740. package/dist/domain/components/navigation-state-component.d.ts +0 -15
  1741. package/dist/domain/components/navigation-state-component.js +0 -1
  1742. package/dist/domain/components/selection-state-component.d.ts +0 -14
  1743. package/dist/domain/components/selection-state-component.js +0 -1
  1744. package/dist/domain/components/system-component-builder.d.ts +0 -12
  1745. package/dist/domain/components/system-component-builder.js +0 -1
  1746. package/dist/domain/components/system-component-filter.d.ts +0 -793
  1747. package/dist/domain/components/system-virtual-entity.js +0 -1
  1748. package/dist/domain/components/tool-state-component.d.ts +0 -14
  1749. package/dist/domain/components/tool-state-component.js +0 -1
  1750. package/dist/domain/components/updates.d.ts +0 -108
  1751. package/dist/domain/components/view-state-component.d.ts +0 -14
  1752. package/dist/domain/components/view-state-component.js +0 -1
  1753. package/dist/domain/components/viewport-state-component.d.ts +0 -29
  1754. package/dist/domain/components/viewport-state-component.js +0 -1
  1755. package/dist/domain/core/component.d.ts +0 -46
  1756. package/dist/domain/core/expression.d.ts +0 -50
  1757. package/dist/domain/core/json-schema.js +0 -1
  1758. package/dist/domain/core/migrations.d.ts +0 -99
  1759. package/dist/domain/core/migrations.js +0 -1
  1760. package/dist/domain/core/model.d.ts +0 -127
  1761. package/dist/domain/core/reflection.d.ts +0 -114
  1762. package/dist/domain/core/reflection.js +0 -1
  1763. package/dist/domain/core/state.d.ts +0 -10
  1764. package/dist/domain/domain-context/recipe-system/recipes.d.ts +0 -57
  1765. package/dist/domain/domain-context/recipe-system/recipes.js +0 -1
  1766. package/dist/domain/expressions/constant-expressions.d.ts +0 -9
  1767. package/dist/domain/expressions/constant-expressions.js +0 -1
  1768. package/dist/domain/expressions/custom-expression.d.ts +0 -13
  1769. package/dist/domain/expressions/custom-expression.js +0 -1
  1770. package/dist/domain/expressions/index.d.ts +0 -1
  1771. package/dist/domain/expressions/index.js +0 -1
  1772. package/dist/domain/expressions/memoize-expression.d.ts +0 -17
  1773. package/dist/domain/expressions/prepare-domain-expressions.d.ts +0 -16
  1774. package/dist/domain/invariants/builtin-invariant.d.ts +0 -5
  1775. package/dist/domain/invariants/custom-invariants.d.ts +0 -22
  1776. package/dist/domain/invariants/custom-invariants.js +0 -1
  1777. package/dist/domain/invariants/invariants.d.ts +0 -68
  1778. package/dist/domain/invariants/invariants.js +0 -1
  1779. package/dist/domain/invariants/violation-component.js +0 -1
  1780. package/dist/domain/invariants/violation.d.ts +0 -85
  1781. package/dist/domain/invariants/violation.js +0 -1
  1782. package/dist/domain/relations/all-of-type-relation.d.ts +0 -33
  1783. package/dist/domain/relations/all-of-type-relation.js +0 -1
  1784. package/dist/domain/relations/component-factories.d.ts +0 -15
  1785. package/dist/domain/relations/component-factories.js +0 -1
  1786. package/dist/domain/relations/composed-of.d.ts +0 -12
  1787. package/dist/domain/relations/composed-of.js +0 -1
  1788. package/dist/domain/relations/direct-relation.d.ts +0 -29
  1789. package/dist/domain/relations/indirect-relation.d.ts +0 -81
  1790. package/dist/domain/relations/indirect-relation.js +0 -1
  1791. package/dist/domain/relations/reference-component.d.ts +0 -18
  1792. package/dist/domain/relations/reference-component.js +0 -1
  1793. package/dist/domain/relations/reference-field.d.ts +0 -7
  1794. package/dist/domain/relations/relation-factory.d.ts +0 -19
  1795. package/dist/domain/relations/relation-factory.js +0 -1
  1796. package/dist/domain/relations/relation-implementation.d.ts +0 -8
  1797. package/dist/domain/system-components/angle-indicator.d.ts +0 -21
  1798. package/dist/domain/system-components/angle-indicator.js +0 -1
  1799. package/dist/domain/system-components/attribute-switch.d.ts +0 -8
  1800. package/dist/domain/system-components/attribute-switch.js +0 -1
  1801. package/dist/domain/system-components/autorotate-camera-component.d.ts +0 -19
  1802. package/dist/domain/system-components/autorotate-camera-component.js +0 -1
  1803. package/dist/domain/system-components/basic-sidebar-footer.d.ts +0 -8
  1804. package/dist/domain/system-components/basic-sidebar-footer.js +0 -1
  1805. package/dist/domain/system-components/camera-based-hidden-entity-object.js +0 -1
  1806. package/dist/domain/system-components/camera-based-hidden-entity.js +0 -1
  1807. package/dist/domain/system-components/canvas-config.d.ts +0 -87
  1808. package/dist/domain/system-components/canvas-config.js +0 -1
  1809. package/dist/domain/system-components/canvas-custom-environment.js +0 -1
  1810. package/dist/domain/system-components/canvas-padding.d.ts +0 -25
  1811. package/dist/domain/system-components/canvas-padding.js +0 -1
  1812. package/dist/domain/system-components/canvas-preset-environment.d.ts +0 -37
  1813. package/dist/domain/system-components/canvas-preset-environment.js +0 -1
  1814. package/dist/domain/system-components/child-entity-recipe-hierarchy.d.ts +0 -21
  1815. package/dist/domain/system-components/child-entity-recipe-hierarchy.js +0 -1
  1816. package/dist/domain/system-components/client-side-image.d.ts +0 -14
  1817. package/dist/domain/system-components/client-side-image.js +0 -1
  1818. package/dist/domain/system-components/color-value.js +0 -1
  1819. package/dist/domain/system-components/common/angle-indicator-schema.d.ts +0 -292
  1820. package/dist/domain/system-components/common/angle-indicator-schema.js +0 -1
  1821. package/dist/domain/system-components/common/dimension-indicator-schema.d.ts +0 -607
  1822. package/dist/domain/system-components/common/dimension-indicator-schema.js +0 -1
  1823. package/dist/domain/system-components/custom-header.d.ts +0 -11
  1824. package/dist/domain/system-components/custom-header.js +0 -1
  1825. package/dist/domain/system-components/custom-price-footer.js +0 -1
  1826. package/dist/domain/system-components/custom-sidebar-footer.d.ts +0 -11
  1827. package/dist/domain/system-components/custom-sidebar-footer.js +0 -1
  1828. package/dist/domain/system-components/dimension-indicator.d.ts +0 -31
  1829. package/dist/domain/system-components/dimension-indicator.js +0 -1
  1830. package/dist/domain/system-components/editable-angle-indicator.d.ts +0 -38
  1831. package/dist/domain/system-components/editable-angle-indicator.js +0 -1
  1832. package/dist/domain/system-components/editable-distance-dimension-indicator.d.ts +0 -42
  1833. package/dist/domain/system-components/editable-distance-dimension-indicator.js +0 -1
  1834. package/dist/domain/system-components/editable-offset-indicator.d.ts +0 -41
  1835. package/dist/domain/system-components/editable-offset-indicator.js +0 -1
  1836. package/dist/domain/system-components/editable-size-indicator.d.ts +0 -38
  1837. package/dist/domain/system-components/editable-size-indicator.js +0 -1
  1838. package/dist/domain/system-components/entity-header.d.ts +0 -22
  1839. package/dist/domain/system-components/entity-header.js +0 -1
  1840. package/dist/domain/system-components/exit-tool-mode-fab.d.ts +0 -25
  1841. package/dist/domain/system-components/exit-tool-mode-fab.js +0 -1
  1842. package/dist/domain/system-components/finalize-action.d.ts +0 -20
  1843. package/dist/domain/system-components/finalize-action.js +0 -1
  1844. package/dist/domain/system-components/finalize-component.js +0 -1
  1845. package/dist/domain/system-components/fit-selection-orthographic-camera-component.js +0 -1
  1846. package/dist/domain/system-components/fit-selection-perspective-camera-component.js +0 -1
  1847. package/dist/domain/system-components/fixed-header.d.ts +0 -10
  1848. package/dist/domain/system-components/fixed-header.js +0 -1
  1849. package/dist/domain/system-components/floating-header.d.ts +0 -10
  1850. package/dist/domain/system-components/floating-header.js +0 -1
  1851. package/dist/domain/system-components/hidden-header.d.ts +0 -8
  1852. package/dist/domain/system-components/hidden-header.js +0 -1
  1853. package/dist/domain/system-components/hidden-sidebar-footer.d.ts +0 -21
  1854. package/dist/domain/system-components/hidden-sidebar-footer.js +0 -1
  1855. package/dist/domain/system-components/horizontal-tabs.d.ts +0 -28
  1856. package/dist/domain/system-components/horizontal-tabs.js +0 -1
  1857. package/dist/domain/system-components/list-selector-dimension-indicator.d.ts +0 -30
  1858. package/dist/domain/system-components/list-selector-dimension-indicator.js +0 -1
  1859. package/dist/domain/system-components/multilingual-text-value.js +0 -1
  1860. package/dist/domain/system-components/navigation-steps.d.ts +0 -19
  1861. package/dist/domain/system-components/navigation-steps.js +0 -1
  1862. package/dist/domain/system-components/offset-anchors.d.ts +0 -20
  1863. package/dist/domain/system-components/offset-anchors.js +0 -1
  1864. package/dist/domain/system-components/offset-indicator.d.ts +0 -84
  1865. package/dist/domain/system-components/offset-indicator.js +0 -1
  1866. package/dist/domain/system-components/offset.d.ts +0 -31
  1867. package/dist/domain/system-components/offset.js +0 -1
  1868. package/dist/domain/system-components/other-action.d.ts +0 -14
  1869. package/dist/domain/system-components/other-action.js +0 -1
  1870. package/dist/domain/system-components/property-page.d.ts +0 -16
  1871. package/dist/domain/system-components/property-page.js +0 -1
  1872. package/dist/domain/system-components/read-sidebar-footer.d.ts +0 -8
  1873. package/dist/domain/system-components/read-sidebar-footer.js +0 -1
  1874. package/dist/domain/system-components/replace-entity-recipe-hierarchy.d.ts +0 -21
  1875. package/dist/domain/system-components/replace-entity-recipe-hierarchy.js +0 -1
  1876. package/dist/domain/system-components/rotatable.js +0 -1
  1877. package/dist/domain/system-components/rotation-handle.d.ts +0 -53
  1878. package/dist/domain/system-components/rotation-handle.js +0 -1
  1879. package/dist/domain/system-components/save-template-thumbnail.d.ts +0 -14
  1880. package/dist/domain/system-components/save-template-thumbnail.js +0 -1
  1881. package/dist/domain/system-components/scene-entity-add-fab.d.ts +0 -32
  1882. package/dist/domain/system-components/scene-entity-add-fab.js +0 -1
  1883. package/dist/domain/system-components/scene-entity-animation.js +0 -1
  1884. package/dist/domain/system-components/scene-entity-control.js +0 -1
  1885. package/dist/domain/system-components/scene-entity-delete-fab.d.ts +0 -19
  1886. package/dist/domain/system-components/scene-entity-delete-fab.js +0 -1
  1887. package/dist/domain/system-components/scene-entity-floor-object.js +0 -1
  1888. package/dist/domain/system-components/scene-entity-html-hotspot.d.ts +0 -27
  1889. package/dist/domain/system-components/scene-entity-html-hotspot.js +0 -1
  1890. package/dist/domain/system-components/scene-entity-navigation-hotspot.d.ts +0 -20
  1891. package/dist/domain/system-components/scene-entity-navigation-hotspot.js +0 -1
  1892. package/dist/domain/system-components/scene-entity-object-html-hotspot.d.ts +0 -31
  1893. package/dist/domain/system-components/scene-entity-object-html-hotspot.js +0 -1
  1894. package/dist/domain/system-components/scene-entity-select-hotspot.d.ts +0 -5
  1895. package/dist/domain/system-components/scene-entity-select-hotspot.js +0 -1
  1896. package/dist/domain/system-components/scene-entity-wall-object.js +0 -1
  1897. package/dist/domain/system-components/selectable-component.js +0 -1
  1898. package/dist/domain/system-components/sidebar-tabs.d.ts +0 -29
  1899. package/dist/domain/system-components/sidebar-tabs.js +0 -1
  1900. package/dist/domain/system-components/simple-summary.js +0 -1
  1901. package/dist/domain/system-components/size.d.ts +0 -21
  1902. package/dist/domain/system-components/size.js +0 -1
  1903. package/dist/domain/system-components/sketching-draw.d.ts +0 -17
  1904. package/dist/domain/system-components/sketching-draw.js +0 -1
  1905. package/dist/domain/system-components/sketching-edit.d.ts +0 -28
  1906. package/dist/domain/system-components/sketching-edit.js +0 -1
  1907. package/dist/domain/system-components/summary-component.js +0 -1
  1908. package/dist/domain/system-components/text-value.js +0 -1
  1909. package/dist/domain/system-components/tool-controls.js +0 -1
  1910. package/dist/domain/system-components/tool-menu-fab.d.ts +0 -40
  1911. package/dist/domain/system-components/tool-menu-fab.js +0 -1
  1912. package/dist/domain/system-components/toolbar.d.ts +0 -13
  1913. package/dist/domain/system-components/toolbar.js +0 -1
  1914. package/dist/domain/system-components/universal-sidebar-footer.d.ts +0 -12
  1915. package/dist/domain/system-components/universal-sidebar-footer.js +0 -1
  1916. package/dist/domain/system-components/view-controls.js +0 -1
  1917. package/dist/extras/assistant/AssistantChat.d.ts +0 -6
  1918. package/dist/extras/assistant/AssistantChat.js +0 -1
  1919. package/dist/extras/assistant/index.d.ts +0 -1
  1920. package/dist/extras/assistant/index.js +0 -1
  1921. package/dist/phoenix/application-spec/generate-assistant-prompt.d.ts +0 -12
  1922. package/dist/phoenix/application-spec/generate-assistant-prompt.js +0 -1
  1923. package/dist/phoenix/commands/generate-project-files.d.ts +0 -6
  1924. package/dist/phoenix/commands/generate-project-files.js +0 -1
  1925. package/dist/react-sdk/application-runtime/runtime/god-mode.d.ts +0 -19
  1926. package/dist/react-sdk/application-runtime/runtime/god-mode.js +0 -1
  1927. /package/dist/{domain/components/component-reader-types.js → application-spec/core/expressions/relation-expression-params.js} +0 -0
  1928. /package/dist/application-spec/{core → enhanced-json}/eval-code-uses-self.d.ts +0 -0
  1929. /package/dist/application-spec/{core → enhanced-json}/eval-code-uses-self.js +0 -0
  1930. /package/dist/application-spec/{core → enhanced-json}/eval-to-constant.js +0 -0
  1931. /package/dist/{domain/core/enhanced-json-schema.js → application-spec/generate-application/runtime/spec-code/spec-code-module.js} +0 -0
  1932. /package/dist/{domain/core/expression.js → application-spec/parse-application-files/spec/expressions/expression-read.js} +0 -0
  1933. /package/dist/{domain/relations/reference-field.js → configurator/ui/assistant/form/form-element-definition.js} +0 -0
  1934. /package/dist/{domain/relations/relation-implementation.js → configurator/ui/assistant/form/form-model.js} +0 -0
  1935. /package/dist/{domain/core/schema-validator.js → configurator/ui/assistant/form-elements/form-element-props.js} +0 -0
  1936. /package/dist/domain/{components → core/component}/legacy-filter.js +0 -0
  1937. /package/dist/domain/{components → core/component}/system-component-filter.js +0 -0
  1938. /package/dist/domain/{components → core/component}/system-virtual-entity.d.ts +0 -0
  1939. /package/dist/domain/{components → core/component}/updates.js +0 -0
  1940. /package/dist/domain/{invariants → core/invariant}/builtin-invariant.js +0 -0
  1941. /package/dist/domain/{invariants → core/invariant}/violation-component.d.ts +0 -0
  1942. /package/dist/domain/core/{alias.d.ts → model/alias.d.ts} +0 -0
  1943. /package/dist/domain/core/{alias.js → model/alias.js} +0 -0
  1944. /package/dist/domain/core/{common-definitions.d.ts → model/common-definitions.d.ts} +0 -0
  1945. /package/dist/domain/core/{common-definitions.js → model/common-definitions.js} +0 -0
  1946. /package/dist/domain/core/{component.js → model/component.js} +0 -0
  1947. /package/dist/domain/core/{model.js → model/model.js} +0 -0
  1948. /package/dist/domain/core/{preset.d.ts → model/preset.d.ts} +0 -0
  1949. /package/dist/domain/core/{preset.js → model/preset.js} +0 -0
  1950. /package/dist/domain/{relations → core/relation}/direct-relation.js +0 -0
  1951. /package/dist/domain/core/{schema-validator-ajv.d.ts → schema/create-ajv-schema-validator.d.ts} +0 -0
  1952. /package/dist/domain/core/{schema-validator-ajv.js → schema/create-ajv-schema-validator.js} +0 -0
  1953. /package/dist/domain/core/{schema-validator-csp.d.ts → schema/create-csp-schema-validator.d.ts} +0 -0
  1954. /package/dist/domain/core/{schema-validator-csp.js → schema/create-csp-schema-validator.js} +0 -0
  1955. /package/dist/domain/core/{enhanced-json-schema.d.ts → schema/enhanced-json-schema.d.ts} +0 -0
  1956. /package/dist/domain/core/{json-schema.d.ts → schema/extended-schema-validator.d.ts} +0 -0
  1957. /package/dist/domain/core/{schema-validator.d.ts → schema/schema-validator.d.ts} +0 -0
  1958. /package/dist/domain/core/{state.js → state/state.js} +0 -0
  1959. /package/dist/domain/{expressions → domain-runtime/spec}/memoize-expression.js +0 -0
  1960. /package/dist/domain/{expressions → domain-runtime/spec}/prepare-domain-expressions.js +0 -0
  1961. /package/dist/domain/{system-components → extensions}/camera-based-hidden-entity-object.d.ts +0 -0
  1962. /package/dist/domain/{system-components → extensions}/camera-based-hidden-entity.d.ts +0 -0
  1963. /package/dist/domain/{system-components → extensions}/canvas-custom-environment.d.ts +0 -0
  1964. /package/dist/domain/{system-components → extensions}/color-value.d.ts +0 -0
  1965. /package/dist/domain/{system-components → extensions}/common/dimension-indicators.d.ts +0 -0
  1966. /package/dist/domain/{system-components → extensions}/common/dimension-indicators.js +0 -0
  1967. /package/dist/domain/{system-components → extensions}/common/editable-indicator-button-variant.d.ts +0 -0
  1968. /package/dist/domain/{system-components → extensions}/common/editable-indicator-button-variant.js +0 -0
  1969. /package/dist/domain/{system-components → extensions}/custom-price-footer.d.ts +0 -0
  1970. /package/dist/domain/{system-components → extensions}/finalize-component.d.ts +0 -0
  1971. /package/dist/domain/{system-components → extensions}/fit-selection-orthographic-camera-component.d.ts +0 -0
  1972. /package/dist/domain/{system-components → extensions}/fit-selection-perspective-camera-component.d.ts +0 -0
  1973. /package/dist/domain/{system-components → extensions}/multilingual-text-value.d.ts +0 -0
  1974. /package/dist/domain/{system-components → extensions}/rotatable.d.ts +0 -0
  1975. /package/dist/domain/{system-components → extensions}/scene-entity-animation.d.ts +0 -0
  1976. /package/dist/domain/{system-components → extensions}/scene-entity-control.d.ts +0 -0
  1977. /package/dist/domain/{system-components → extensions}/scene-entity-floor-object.d.ts +0 -0
  1978. /package/dist/domain/{system-components → extensions}/scene-entity-wall-object.d.ts +0 -0
  1979. /package/dist/domain/{system-components → extensions}/selectable-component.d.ts +0 -0
  1980. /package/dist/domain/{system-components → extensions}/simple-summary.d.ts +0 -0
  1981. /package/dist/domain/{system-components → extensions}/summary-component.d.ts +0 -0
  1982. /package/dist/domain/{system-components → extensions}/text-value.d.ts +0 -0
  1983. /package/dist/domain/{system-components → extensions}/tool-controls.d.ts +0 -0
  1984. /package/dist/domain/{system-components → extensions}/view-controls.d.ts +0 -0
@@ -1 +1 @@
1
- import{SystemComponentBuilder as e}from"../components/index.js";export const StaticPerspectiveCameraComponentName="staticPerspectiveCamera";export const staticPerspectiveCameraComponent=e.component(StaticPerspectiveCameraComponentName).withState({type:"object",tsType:"StaticPerspectiveCameraComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"StaticPerspectiveCameraComponentState"}],properties:{priority:{type:"number"},animateOnLoad:{type:"boolean"},animateTransition:{type:"boolean"},distanceLockGroup:{type:["string","null"]},rotationLockGroup:{type:["string","null"]},fov:{type:"number"},far:{type:"number"},near:{type:"number"},focus:{type:"number"},distance:{type:"number"},minDistance:{type:"number"},maxDistance:{type:"number"},polarAngle:{type:"number"},minPolarAngle:{type:"number"},maxPolarAngle:{type:"number"},azimuthAngle:{type:"number"},minAzimuthAngle:{type:"number"},maxAzimuthAngle:{type:"number"},smoothTime:{type:"number"},draggingSmoothTime:{type:"number"},maxSpeed:{type:"number"},azimuthRotateSpeed:{type:"number"},polarRotateSpeed:{type:"number"},dollySpeed:{type:"number"},dollyDragInverted:{type:"boolean"},truckSpeed:{type:"number"},mouseButtons:{type:"object",properties:{left:{type:"number"},middle:{type:"number"},right:{type:"number"},wheel:{type:"number"}},required:["left","middle","right"],additionalProperties:!1},touches:{type:"object",properties:{one:{type:"number"},two:{type:"number"},three:{type:"number"}},required:["one","two"],additionalProperties:!1},boundaryEnclosesCamera:{type:"boolean"},dollyToCursor:{type:"boolean"},dragToOffset:{type:"boolean"},verticalDragToForward:{type:"boolean"},boundary:{type:"object"},lookAtX:{type:"number"},lookAtY:{type:"number"},lookAtZ:{type:"number"},relative:{type:"boolean"}},required:[],additionalProperties:!1}).build();export const isStaticPerspectiveCameraComponent=e=>e.componentInstance.componentType.name===StaticPerspectiveCameraComponentName;
1
+ import{SystemComponentBuilder as e}from"../core/index.js";export const StaticPerspectiveCameraComponentName="staticPerspectiveCamera";export const staticPerspectiveCameraComponent=e.component(StaticPerspectiveCameraComponentName).withState({type:"object",tsType:"StaticPerspectiveCameraComponentState",import:[{module:"@salsita-ai/sdk/domain",member:"StaticPerspectiveCameraComponentState"}],properties:{priority:{type:"number"},animateOnLoad:{type:"boolean"},animateTransition:{type:"boolean"},distanceLockGroup:{type:["string","null"]},rotationLockGroup:{type:["string","null"]},fov:{type:"number"},far:{type:"number"},near:{type:"number"},focus:{type:"number"},distance:{type:"number"},minDistance:{type:"number"},maxDistance:{type:"number"},polarAngle:{type:"number"},minPolarAngle:{type:"number"},maxPolarAngle:{type:"number"},azimuthAngle:{type:"number"},minAzimuthAngle:{type:"number"},maxAzimuthAngle:{type:"number"},smoothTime:{type:"number"},draggingSmoothTime:{type:"number"},maxSpeed:{type:"number"},azimuthRotateSpeed:{type:"number"},polarRotateSpeed:{type:"number"},dollySpeed:{type:"number"},dollyDragInverted:{type:"boolean"},truckSpeed:{type:"number"},mouseButtons:{type:"object",properties:{left:{type:"number",enum:[0,1,2,4,8,16]},middle:{type:"number",enum:[0,1,2,4,8,16]},right:{type:"number",enum:[0,1,2,4,8,16]},wheel:{type:"number",enum:[0,1,2,4,8,16]}},required:["left","middle","right","wheel"],additionalProperties:!1},touches:{type:"object",properties:{one:{type:"number",enum:[0,8,16,32,64,128]},two:{type:"number",enum:[0,32,64,128,256,512,1024,2048,4096,8192,16384,32768]},three:{type:"number",enum:[0,32,64,128,256,512,1024,2048,4096,8192,16384,32768]}},required:["one","two","three"],additionalProperties:!1},boundaryEnclosesCamera:{type:"boolean"},dollyToCursor:{type:"boolean"},dragToOffset:{type:"boolean"},verticalDragToForward:{type:"boolean"},boundary:{type:"object"},lookAtX:{type:"number"},lookAtY:{type:"number"},lookAtZ:{type:"number"},relative:{type:"boolean"}},required:[],additionalProperties:!1}).build();export const isStaticPerspectiveCameraComponent=e=>e.componentInstance.componentType.name===StaticPerspectiveCameraComponentName;
@@ -1,10 +1,9 @@
1
- import type { DomainEntity } from '../core/model.js';
2
- import type { DomainState } from '../core/state.js';
1
+ import type { DomainEntity, DomainState } from '../core/index.js';
3
2
  /**
4
3
  * Clone the evaluation cache from one state to another.
5
4
  * You should not need to use this function manually as it is used internally by the framework.
6
5
  */
7
- export declare const cloneEvalCache: <ENTITIES extends DomainEntity<string>>(originalState: DomainState<ENTITIES>, newState: DomainState<ENTITIES>) => void;
6
+ export declare const cloneEvalCache: (originalState: DomainState<DomainEntity<string>>, newState: DomainState<DomainEntity<string>>) => void;
8
7
  /**
9
8
  * A unique token that can be used to retrieve an evaluation cache from a state.
10
9
  * The token carries type information about the cache's key and value types.
@@ -1 +1 @@
1
- export declare const mapNestedObject: <TI, TO, KI extends string, KO extends string = KI>() => <REC extends Partial<Record<KI, Record<string, TI>>>>(record: REC, map: (entry: [key1: KI, key2: string, value: TI]) => Array<[key1: KO, key2: string, value: TO]>, onDuplicate?: (previousValue: TO, newValue: TO, key1: KO, key2: string) => void) => Record<KO, Record<string, TO>>;
1
+ export declare const mapNestedObject: <TI, TO, KI extends string, KO extends string = KI>() => (record: Partial<Record<KI, Record<string, TI>>>, map: (entry: [key1: KI, key2: string, value: TI]) => Array<[key1: KO, key2: string, value: TO]>, onDuplicate?: (previousValue: TO, newValue: TO, key1: KO, key2: string) => void) => Record<KO, Record<string, TO>>;
@@ -1,6 +1,4 @@
1
- import type { ExpressionContext } from '../core/expression.js';
2
- import type { $DomainEntity, DomainEntity } from '../core/model.js';
3
- import type { DomainState } from '../core/state.js';
1
+ import type { $DomainEntity, DomainEntity, DomainState, OpenExpressionContext } from '../core/index.js';
4
2
  declare const MemoizedValueSymbol: unique symbol;
5
3
  export type MemoizedArray<T extends readonly unknown[]> = {
6
4
  readonly [MemoizedValueSymbol]: 'array';
@@ -21,7 +19,7 @@ export interface MemoEval {
21
19
  * In addition to performance optimizations, this helper is useful for custom expressions that produce non-primitive
22
20
  * results and therefore break any downstream memoization.
23
21
  */
24
- <ENTITIES extends DomainEntity<string>, $ENTITY extends $DomainEntity<ENTITIES>, ALLOWED_ROOT_ENTITIES extends ENTITIES, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, const DEPS extends any[], RES>(calculateDeps: (self: $ENTITY, state: DomainState<ENTITIES>, ctx: ExpressionContext<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA>) => DEPS, evaluate: (...deps: DEPS) => RES): (self: $ENTITY, state: DomainState<ENTITIES>, ctx: ExpressionContext<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA>) => RES;
22
+ <ENTITIES extends DomainEntity<string>, $ENTITY extends $DomainEntity<ENTITIES>, ALLOWED_ROOT_ENTITIES extends ENTITIES, PUBLISHED_DATA extends Record<string, unknown>, SESSION_DATA extends Record<string, unknown>, FRONTEND_DATA extends Record<string, unknown>, const DEPS extends any[], RES, CONTEXT_EXTENSION = unknown>(calculateDeps: (self: $ENTITY, state: DomainState<ENTITIES>, ctx: OpenExpressionContext<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, CONTEXT_EXTENSION>) => DEPS, evaluate: (...deps: DEPS) => RES): (self: $ENTITY, state: DomainState<ENTITIES>, ctx: OpenExpressionContext<ENTITIES, ALLOWED_ROOT_ENTITIES, PUBLISHED_DATA, SESSION_DATA, FRONTEND_DATA, CONTEXT_EXTENSION>) => RES;
25
23
  /**
26
24
  * Tags an array so that it is compared by contents rather than reference.
27
25
  * Use in the deps collection phase.
@@ -32,6 +32,13 @@ export interface EditorProps {
32
32
  readonly mockTemplates?: MockTemplateDefinition[];
33
33
  /** If true, automatically apply the first template when templates are initialized */
34
34
  readonly autoApplyTemplate?: boolean;
35
+ /**
36
+ * Key of the mock template to apply on mount, in place of the template stored for this page.
37
+ * Applying it does not store it, so it never changes what an editor without this prop opens.
38
+ * An unknown key logs a warning and falls back to the stored template, or to the first template
39
+ * when `autoApplyTemplate` is set.
40
+ */
41
+ readonly initialTemplateKey?: string;
35
42
  /** Key used to scope localStorage template persistence (e.g. environment slug) */
36
43
  readonly environmentKey?: string;
37
44
  /** Web component tag name for creating and discovering reflection systems. */
@@ -1 +1 @@
1
- import{jsx as e,jsxs as i,Fragment as t}from"react/jsx-runtime";import{Box as o,Chip as n,CssBaseline as r,IconButton as s,ThemeProvider as l,Tooltip as a,Typography as d,createTheme as c,useMediaQuery as m,useTheme as p}from"@mui/material";import{ModalProvider as f}from"mui-modal-provider";import{memo as h,useCallback as u,useEffect as g,useRef as w,useState as k}from"react";import{match as x}from"ts-pattern";import{useLocalStorage as y}from"usehooks-ts";import{PhxIcon as b,SnackbarProvider as v,createThemeWithPhoenixIcons as S}from"#package/ui-sdk";import{EditorMode as P}from"./EditorMode.js";import{EditorRuntimeProvider as j,useWebComponent as V}from"./EditorRuntimeProvider.js";import{EditorAdminContextProvider as E}from"./admin/EditorAdminContext.js";import{EditorAdminMainContent as D}from"./admin/EditorAdminMainContent.js";import{EditorAdminSidebar as C}from"./admin/EditorAdminSidebar.js";import{useEditorAdminState as T}from"./admin/use-editor-admin-state.js";import{Analytics as A}from"./analytics/Analytics.js";import{AnalyticsProvider as L}from"./analytics/AnalyticsContext.js";import{Logotype as M}from"./common/Logotype.js";import{PanelIconButton as W}from"./common/PanelIconButton.js";import{BrowserConsoleReporter as R}from"./console-reporter/BrowserConsoleReporter.js";import{DataHandler as I}from"./data/DataHandler.js";import{DebugFlags as F}from"./debug-flags/DebugFlags.js";import{DiagnosticsPanel as G}from"./diagnostics/DiagnosticsPanel.js";import{DomainEditors as z}from"./domain-editors/DomainEditors.js";import{DomainSpecProvider as B,useDomainSpecContext as Q}from"./domain-editors/DomainSpecContext.js";import{DomainReflection as H}from"./domain-reflection/DomainReflection.js";import{GraphQLPanel as U}from"./graphql/GraphQLPanel.js";import{LogsPanel as q}from"./logs/LogsPanel.js";import{EditorMockProvider as O}from"./mocks/EditorMockContext.js";import{Mocks as K}from"./mocks/Mocks.js";import{ProfilerPanel as N}from"./profiler/ProfilerPanel.js";import{RemoteFilesList as X}from"./remote-files/RemoteFilesList.js";import{SceneHandler as Y}from"./scene/SceneHandler.js";import{ScreenshotHandler as $}from"./screenshot/ScreenshotHandler.js";import{EditorConnectionProvider as J}from"./services/EditorConnectionContext.js";import{EditorActionButtons as Z}from"./sidebar/EditorActionButtons.js";import{StateInspector as _}from"./state-inspector/index.js";import{StateHandler as ee}from"./state/StateHandler.js";import{SpaTemplate as ei}from"./templates/SpaTemplate.js";import{Templates as et}from"./templates/Templates.js";import{TemplatesList as eo}from"./templates/TemplatesList.js";import{TunnelProvider as en,useTunnel as er}from"./tunnel/TunnelContext.js";import{TunnelPanel as es}from"./tunnel/TunnelPanel.js";import{hasTunnelProblem as el}from"./tunnel/tunnel-view-model.js";import{VideoStudio as ea}from"./video-studio/VideoStudio.js";import{WebSocketStatus as ed}from"./websocket-status/WebSocketStatus.js";let ec=h(()=>{let i=w(null),t=V();return g(()=>{let e=i.current;if(e&&t)return e.appendChild(t),()=>{e.contains(t)&&e.removeChild(t)}},[t]),e("div",{ref:i,style:{width:"100%",height:"100%"}})}),em=S(c());export const EditorPanelView={Files:"Files",Reflections:"Reflections",Domain:"Domain",Templates:"Templates",Mocks:"Mocks",Inspector:"Inspector",Debug:"Debug",Profiler:"Profiler",GraphQL:"GraphQL",VideoStudio:"VideoStudio",Analytics:"Analytics",Diagnostics:"Diagnostics",Logs:"Logs",Tunnel:"Tunnel",WebSocketStatus:"WebSocketStatus",Admin:"Admin"};let ep=[{key:EditorPanelView.Templates,icon:"GridFour",title:"Templates"},{key:EditorPanelView.Reflections,icon:"House",title:"Reflections"},{key:EditorPanelView.Files,icon:"List",title:"Files"},{key:EditorPanelView.Domain,icon:"Gear",title:"Domain"},{key:EditorPanelView.Mocks,icon:"TagBold",title:"Mocks"},{key:EditorPanelView.Inspector,icon:"CurrencyDollar",title:"Inspector"},{key:EditorPanelView.Debug,icon:"EyeBold",title:"Debug"},{key:EditorPanelView.Profiler,icon:"Alarm",title:"Profiler"},{key:EditorPanelView.GraphQL,icon:"MagnifyingGlassBold",title:"GraphQL"},{key:EditorPanelView.VideoStudio,icon:"CameraRotate",title:"Video Studio"},{key:EditorPanelView.Analytics,icon:"Flame",title:"Analytics"},{key:EditorPanelView.Diagnostics,icon:"WarningCircle",title:"Diagnostics"},{key:EditorPanelView.Logs,icon:"BracketsCurly",title:"Logs"},{key:EditorPanelView.Tunnel,icon:"ArrowsHorizontal",title:"Webhook Tunnel"}],ef=h(r=>{let{panelView:l,setPanelView:c,width:m,setWidth:p,selectedTemplate:f,setSelectedTemplate:h,isResizing:w,setIsResizing:y,onExit:v,enableAdmin:S}=r,P=T(S),{unreadDiagnosticCount:j,markDiagnosticsRead:V}=Q(),{state:E}=er(),L=l?Math.max(m,240):38,[R,I]=k(0),B=u(()=>I(e=>e+1),[]);return g(()=>{l===EditorPanelView.Diagnostics&&V()},[V,l]),i(o,{component:"div",sx:{display:"grid",gridTemplateColumns:`${L}px min-content auto`,gridTemplateRows:"minmax(0, 1fr)",width:"100vw",height:"100vh",backgroundColor:"#ffffff",overflow:"hidden"},onMouseMove:e=>{w&&p(e.clientX)},onMouseUp:()=>{y(!1)},children:[i(o,{component:"div",sx:{display:"grid",gridTemplateColumns:"36px auto",backgroundColor:"#f8f9fa",borderRight:"1px solid #dee2e6",boxShadow:"2px 0 8px rgba(0, 0, 0, 0.06)",overflow:"hidden",height:"100%"},children:[i("div",{style:{backgroundColor:"#f8f9fa",height:"100%",display:"flex",flexDirection:"column",alignItems:"center",padding:"4px 0"},children:[e("div",{style:{marginBottom:"8px"},children:e(M,{variant:"icon-only"})}),i("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:"2px"},children:[S&&i(t,{children:[e(W,{icon:"SlidersHorizontal",title:"Admin",active:l===EditorPanelView.Admin,onClick:()=>{l===EditorPanelView.Admin?c(null):c(EditorPanelView.Admin)}}),e("div",{style:{borderBottom:"1px solid #dee2e6",margin:"2px 0"}})]}),ep.map(i=>e(W,{icon:i.icon,title:i.title,active:l===i.key,badgeCount:i.key===EditorPanelView.Tunnel?+!!el(E):i.key===EditorPanelView.Diagnostics?j:0,onClick:()=>{l===i.key?c(null):c(i.key)}},i.key))]}),e(Z,{reload:B}),e("div",{style:{padding:"0 2px",paddingBottom:"4px"},children:e(W,{icon:"CloudArrowUp",title:"WebSocket Status",active:l===EditorPanelView.WebSocketStatus,onClick:()=>{l===EditorPanelView.WebSocketStatus?c(null):c(EditorPanelView.WebSocketStatus)}})}),v&&e("div",{style:{padding:"0 2px",paddingBottom:"8px"},children:e(W,{icon:"SignOut",title:"Exit Editor",variant:"danger",onClick:v})})]}),l&&i(o,{component:"div",sx:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden",backgroundColor:"#ffffff"},children:[e(o,{component:"div",sx:{p:1.5,borderBottom:"1px solid #e9ecef",backgroundColor:"#ffffff"},children:i(o,{component:"div",sx:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[i(o,{component:"div",sx:{display:"flex",flexDirection:"row",alignItems:"center"},children:[e(d,{variant:"h6",sx:{fontSize:16,fontWeight:600,color:"#212529"},children:x(l).with("Files",()=>"Files").with("Reflections",()=>"Reflections").with("Domain",()=>"Domain").with("Templates",()=>"Templates").with("Mocks",()=>"Mocks").with("Inspector",()=>"State Inspector").with("Debug",()=>"Debug").with("Profiler",()=>"Profiler").with("GraphQL",()=>"GraphQL").with("VideoStudio",()=>"Video Studio").with("Analytics",()=>"Analytics").with("Diagnostics",()=>"Diagnostics").with("Logs",()=>"Dev Server Logs").with("Tunnel",()=>"Webhook Tunnel").with("WebSocketStatus",()=>"WebSocket Status").with("Admin",()=>"Admin").otherwise(e=>e)}),e(a,{title:x(l).with("Files",()=>"Browse and inspect loaded GLTF files and their contents").with("Reflections",()=>"Inspect internal Phoenix systems state and configuration").with("Domain",()=>"Edit YAML domain specifications and component configurations").with("Templates",()=>"Select different layout templates for the configurator interface").with("Mocks",()=>"Create and manage mock data for testing session and access configurations").with("Inspector",()=>"Walk the entity tree: fields, expressions, and children").with("Debug",()=>"Toggle scene debug visuals like offset anchors, snapping, and collision meshes").with("Profiler",()=>"Make domain expressions show up as named frames in browser CPU profiles").with("GraphQL",()=>"Run GraphQL queries against the schema generated from the assistant manifest").with("VideoStudio",()=>"Create video sequences by capturing keyframes and exporting as video").with("Analytics",()=>"View parse pipeline metrics, domain stats, and diagnostics").with("Diagnostics",()=>"View latest editor warnings and errors").with("Logs",()=>"View dev server logs: spec builds, webhooks, vite, and browser console").with("Tunnel",()=>"View webhook tunnel status and the requests routed through it").with("WebSocketStatus",()=>"View WebSocket connection status and editor mode information").with("Admin",()=>"Manage admin panel, publish data, and configure settings").otherwise(()=>"Panel information"),placement:"left",arrow:!0,children:e(s,{size:"small",sx:{ml:1,color:"#6c757d",fontSize:14,p:.25,"&:hover":{backgroundColor:"#f8f9fa",color:"#495057"}},children:e(b,{name:"Info",style:{fontSize:14}})})})]}),e(o,{component:"div",sx:{display:"flex",alignItems:"center",gap:1},children:"Templates"===l&&e(n,{label:f.charAt(0).toUpperCase()+f.slice(1),variant:"outlined",size:"small",sx:{backgroundColor:"#f8f9fa",borderColor:"#dee2e6",color:"#495057",fontWeight:500,fontSize:"0.75rem"}})})]})}),i(o,{component:"div",sx:{flex:1,backgroundColor:"#ffffff",overflow:"auto"},children:["Files"===l&&e(X,{}),"Reflections"===l&&e(H,{}),"Domain"===l&&e(z,{}),"Templates"===l&&e(eo,{selectedTemplate:f,onTemplateSelect:h}),"Mocks"===l&&e(K,{}),"Inspector"===l&&e(_,{}),"Debug"===l&&e(F,{}),"Profiler"===l&&e(N,{}),"GraphQL"===l&&e(U,{}),"VideoStudio"===l&&e(ea,{}),"Analytics"===l&&e(A,{}),"Diagnostics"===l&&e(G,{}),"Logs"===l&&e(q,{}),"Tunnel"===l&&e(es,{}),"WebSocketStatus"===l&&e(ed,{}),S&&"Admin"===l&&e(C,{...P})]})]})]}),e("div",{style:{width:"2px",backgroundColor:"#dee2e6",cursor:"ew-resize",boxShadow:"1px 0 3px rgba(0, 0, 0, 0.05)"},onMouseDown:()=>{y(!0)}}),i("div",{style:{position:"relative",overflow:"hidden"},children:[e("div",{style:{position:"absolute",inset:0,zIndex:+("Admin"!==l)},children:e(et,{selectedTemplate:f,children:e(ec,{},R)})}),S&&e("div",{style:{position:"absolute",inset:0,zIndex:+("Admin"===l)},children:e(D,{})})]})]})}),eh=h(()=>e(ei,{children:e(ec,{})})),eu=h(o=>{let{wsUrl:n="ws://localhost:3020",localMode:r=!1,domainSpec:s,initialRawProjectFiles:l,onExit:a,mockTemplates:d,autoApplyTemplate:c,environmentKey:h,tagName:u,enableAdmin:w=!0}=o,x=m(p().breakpoints.up("md")),[b,S]=y("editor-width",350),[V,D]=y("editor-view",null),[C,T]=y("editor-template","spa"),[A,M]=k(!1);return g(()=>{null===V||Object.values(EditorPanelView).some(e=>e===V)&&(w||V!==EditorPanelView.Admin)||D(null)},[w,V,D]),e(f,{children:e(v,{maxSnack:5,children:e(E,{children:e(j,{tagName:u,children:e(J,{initialWsUrl:n,localMode:r,children:e(en,{children:e(P,{children:e(L,{children:e(B,{domainSpec:s,initialRawProjectFiles:l,children:i(O,{mockTemplates:d,autoApplyTemplate:c,environmentKey:h,children:[!r&&i(t,{children:[e($,{}),e(ee,{}),e(I,{}),e(Y,{}),e(R,{})]}),x?e(ef,{panelView:V,setPanelView:D,width:b,setWidth:S,selectedTemplate:C,setSelectedTemplate:T,isResizing:A,setIsResizing:M,onExit:a,enableAdmin:w}):e(eh,{})]})})})})})})})})})})});export const Editor=h(t=>i(l,{theme:em,children:[e(r,{}),e(eu,{...t})]}));
1
+ import{jsx as e,jsxs as i,Fragment as t}from"react/jsx-runtime";import{Box as o,Chip as n,CssBaseline as r,IconButton as s,ThemeProvider as a,Tooltip as l,Typography as d,createTheme as m,useMediaQuery as c,useTheme as p}from"@mui/material";import{ModalProvider as f}from"mui-modal-provider";import{memo as h,useCallback as u,useEffect as g,useState as w}from"react";import{match as k}from"ts-pattern";import{useLocalStorage as y}from"usehooks-ts";import{PhxIcon as x,SnackbarProvider as b,createThemeWithPhoenixIcons as v}from"#package/ui-sdk";import{EditorMode as S}from"./EditorMode.js";import{EditorRuntimeProvider as P}from"./EditorRuntimeProvider.js";import{EditorAdminContextProvider as j}from"./admin/EditorAdminContext.js";import{EditorAdminMainContent as V}from"./admin/EditorAdminMainContent.js";import{EditorAdminSidebar as E}from"./admin/EditorAdminSidebar.js";import{useEditorAdminState as D}from"./admin/use-editor-admin-state.js";import{Analytics as T}from"./analytics/Analytics.js";import{AnalyticsProvider as A}from"./analytics/AnalyticsContext.js";import{Logotype as C}from"./common/Logotype.js";import{PanelIconButton as L}from"./common/PanelIconButton.js";import{BrowserConsoleReporter as M}from"./console-reporter/BrowserConsoleReporter.js";import{DataHandler as W}from"./data/DataHandler.js";import{DebugFlags as R}from"./debug-flags/DebugFlags.js";import{DiagnosticsPanel as I}from"./diagnostics/DiagnosticsPanel.js";import{DomainEditors as F}from"./domain-editors/DomainEditors.js";import{DomainSpecProvider as G,useDomainSpecContext as z}from"./domain-editors/DomainSpecContext.js";import{DomainReflection as B}from"./domain-reflection/DomainReflection.js";import{GraphQLPanel as Q}from"./graphql/GraphQLPanel.js";import{LogsPanel as H}from"./logs/LogsPanel.js";import{EditorMockProvider as U}from"./mocks/EditorMockContext.js";import{Mocks as q}from"./mocks/Mocks.js";import{ProfilerPanel as K}from"./profiler/ProfilerPanel.js";import{RemoteFilesList as O}from"./remote-files/RemoteFilesList.js";import{SceneHandler as N}from"./scene/SceneHandler.js";import{ScreenshotHandler as X}from"./screenshot/ScreenshotHandler.js";import{EditorConnectionProvider as Y}from"./services/EditorConnectionContext.js";import{EditorActionButtons as $}from"./sidebar/EditorActionButtons.js";import{StateInspector as J}from"./state-inspector/index.js";import{StateHandler as Z}from"./state/StateHandler.js";import{SpaTemplate as _}from"./templates/SpaTemplate.js";import{Templates as ee}from"./templates/Templates.js";import{TemplatesList as ei}from"./templates/TemplatesList.js";import{TunnelProvider as et,useTunnel as eo}from"./tunnel/TunnelContext.js";import{TunnelPanel as en}from"./tunnel/TunnelPanel.js";import{hasTunnelProblem as er}from"./tunnel/tunnel-view-model.js";import{HTML_VARIANT_FRAME_ATTRIBUTE as es,VariantPreviewHandler as ea,useConfiguratorContainerRef as el}from"./variants/VariantPreviewHandler.js";import{VideoStudio as ed}from"./video-studio/VideoStudio.js";import{WebSocketStatus as em}from"./websocket-status/WebSocketStatus.js";let ec=h(()=>e("div",{ref:el(),style:{width:"100%",height:"100%"}})),ep=v(m());export const EditorPanelView={Files:"Files",Reflections:"Reflections",Domain:"Domain",Templates:"Templates",Mocks:"Mocks",Inspector:"Inspector",Debug:"Debug",Profiler:"Profiler",GraphQL:"GraphQL",VideoStudio:"VideoStudio",Analytics:"Analytics",Diagnostics:"Diagnostics",Logs:"Logs",Tunnel:"Tunnel",WebSocketStatus:"WebSocketStatus",Admin:"Admin"};let ef=[{key:EditorPanelView.Templates,icon:"GridFour",title:"Templates"},{key:EditorPanelView.Reflections,icon:"House",title:"Reflections"},{key:EditorPanelView.Files,icon:"List",title:"Files"},{key:EditorPanelView.Domain,icon:"Gear",title:"Domain"},{key:EditorPanelView.Mocks,icon:"TagBold",title:"Mocks"},{key:EditorPanelView.Inspector,icon:"CurrencyDollar",title:"Inspector"},{key:EditorPanelView.Debug,icon:"EyeBold",title:"Debug"},{key:EditorPanelView.Profiler,icon:"Alarm",title:"Profiler"},{key:EditorPanelView.GraphQL,icon:"MagnifyingGlassBold",title:"GraphQL"},{key:EditorPanelView.VideoStudio,icon:"CameraRotate",title:"Video Studio"},{key:EditorPanelView.Analytics,icon:"Flame",title:"Analytics"},{key:EditorPanelView.Diagnostics,icon:"WarningCircle",title:"Diagnostics"},{key:EditorPanelView.Logs,icon:"BracketsCurly",title:"Logs"},{key:EditorPanelView.Tunnel,icon:"ArrowsHorizontal",title:"Webhook Tunnel"}],eh=h(r=>{let{panelView:a,setPanelView:m,width:c,setWidth:p,selectedTemplate:f,setSelectedTemplate:h,isResizing:y,setIsResizing:b,onExit:v,enableAdmin:S}=r,P=D(S),{unreadDiagnosticCount:j,markDiagnosticsRead:A}=z(),{state:M}=eo(),W=a?Math.max(c,240):38,[G,U]=w(0),N=u(()=>U(e=>e+1),[]);return g(()=>{a===EditorPanelView.Diagnostics&&A()},[A,a]),i(o,{component:"div",sx:{display:"grid",gridTemplateColumns:`${W}px min-content auto`,gridTemplateRows:"minmax(0, 1fr)",width:"100vw",height:"100vh",backgroundColor:"#ffffff",overflow:"hidden"},onMouseMove:e=>{y&&p(e.clientX)},onMouseUp:()=>{b(!1)},children:[i(o,{component:"div",sx:{display:"grid",gridTemplateColumns:"36px auto",backgroundColor:"#f8f9fa",borderRight:"1px solid #dee2e6",boxShadow:"2px 0 8px rgba(0, 0, 0, 0.06)",overflow:"hidden",height:"100%"},children:[i("div",{style:{backgroundColor:"#f8f9fa",height:"100%",display:"flex",flexDirection:"column",alignItems:"center",padding:"4px 0"},children:[e("div",{style:{marginBottom:"8px"},children:e(C,{variant:"icon-only"})}),i("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:"2px"},children:[S&&i(t,{children:[e(L,{icon:"SlidersHorizontal",title:"Admin",active:a===EditorPanelView.Admin,onClick:()=>{a===EditorPanelView.Admin?m(null):m(EditorPanelView.Admin)}}),e("div",{style:{borderBottom:"1px solid #dee2e6",margin:"2px 0"}})]}),ef.map(i=>e(L,{icon:i.icon,title:i.title,active:a===i.key,badgeCount:i.key===EditorPanelView.Tunnel?+!!er(M):i.key===EditorPanelView.Diagnostics?j:0,onClick:()=>{a===i.key?m(null):m(i.key)}},i.key))]}),e($,{reload:N}),e("div",{style:{padding:"0 2px",paddingBottom:"4px"},children:e(L,{icon:"CloudArrowUp",title:"WebSocket Status",active:a===EditorPanelView.WebSocketStatus,onClick:()=>{a===EditorPanelView.WebSocketStatus?m(null):m(EditorPanelView.WebSocketStatus)}})}),v&&e("div",{style:{padding:"0 2px",paddingBottom:"8px"},children:e(L,{icon:"SignOut",title:"Exit Editor",variant:"danger",onClick:v})})]}),a&&i(o,{component:"div",sx:{display:"flex",flexDirection:"column",height:"100%",overflow:"hidden",backgroundColor:"#ffffff"},children:[e(o,{component:"div",sx:{p:1.5,borderBottom:"1px solid #e9ecef",backgroundColor:"#ffffff"},children:i(o,{component:"div",sx:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[i(o,{component:"div",sx:{display:"flex",flexDirection:"row",alignItems:"center"},children:[e(d,{variant:"h6",sx:{fontSize:16,fontWeight:600,color:"#212529"},children:k(a).with("Files",()=>"Files").with("Reflections",()=>"Reflections").with("Domain",()=>"Domain").with("Templates",()=>"Templates").with("Mocks",()=>"Mocks").with("Inspector",()=>"State Inspector").with("Debug",()=>"Debug").with("Profiler",()=>"Profiler").with("GraphQL",()=>"GraphQL").with("VideoStudio",()=>"Video Studio").with("Analytics",()=>"Analytics").with("Diagnostics",()=>"Diagnostics").with("Logs",()=>"Dev Server Logs").with("Tunnel",()=>"Webhook Tunnel").with("WebSocketStatus",()=>"WebSocket Status").with("Admin",()=>"Admin").otherwise(e=>e)}),e(l,{title:k(a).with("Files",()=>"Browse and inspect loaded GLTF files and their contents").with("Reflections",()=>"Inspect internal Phoenix systems state and configuration").with("Domain",()=>"Edit YAML domain specifications and component configurations").with("Templates",()=>"Select different layout templates for the configurator interface").with("Mocks",()=>"Create and manage mock data for testing session and access configurations").with("Inspector",()=>"Walk the entity tree: fields, expressions, and children").with("Debug",()=>"Toggle scene debug visuals like offset anchors, snapping, and collision meshes").with("Profiler",()=>"Make domain expressions show up as named frames in browser CPU profiles").with("GraphQL",()=>"Run GraphQL queries against the schema generated from the assistant manifest").with("VideoStudio",()=>"Create video sequences by capturing keyframes and exporting as video").with("Analytics",()=>"View parse pipeline metrics, domain stats, and diagnostics").with("Diagnostics",()=>"View latest editor warnings and errors").with("Logs",()=>"View dev server logs: spec builds, webhooks, vite, and browser console").with("Tunnel",()=>"View webhook tunnel status and the requests routed through it").with("WebSocketStatus",()=>"View WebSocket connection status and editor mode information").with("Admin",()=>"Manage admin panel, publish data, and configure settings").otherwise(()=>"Panel information"),placement:"left",arrow:!0,children:e(s,{size:"small",sx:{ml:1,color:"#6c757d",fontSize:14,p:.25,"&:hover":{backgroundColor:"#f8f9fa",color:"#495057"}},children:e(x,{name:"Info",style:{fontSize:14}})})})]}),e(o,{component:"div",sx:{display:"flex",alignItems:"center",gap:1},children:"Templates"===a&&e(n,{label:f.charAt(0).toUpperCase()+f.slice(1),variant:"outlined",size:"small",sx:{backgroundColor:"#f8f9fa",borderColor:"#dee2e6",color:"#495057",fontWeight:500,fontSize:"0.75rem"}})})]})}),i(o,{component:"div",sx:{flex:1,backgroundColor:"#ffffff",overflow:"auto"},children:["Files"===a&&e(O,{}),"Reflections"===a&&e(B,{}),"Domain"===a&&e(F,{}),"Templates"===a&&e(ei,{selectedTemplate:f,onTemplateSelect:h}),"Mocks"===a&&e(q,{}),"Inspector"===a&&e(J,{}),"Debug"===a&&e(R,{}),"Profiler"===a&&e(K,{}),"GraphQL"===a&&e(Q,{}),"VideoStudio"===a&&e(ed,{}),"Analytics"===a&&e(T,{}),"Diagnostics"===a&&e(I,{}),"Logs"===a&&e(H,{}),"Tunnel"===a&&e(en,{}),"WebSocketStatus"===a&&e(em,{}),S&&"Admin"===a&&e(E,{...P})]})]})]}),e("div",{style:{width:"2px",backgroundColor:"#dee2e6",cursor:"ew-resize",boxShadow:"1px 0 3px rgba(0, 0, 0, 0.05)"},onMouseDown:()=>{b(!0)}}),i("div",{style:{position:"relative",overflow:"hidden"},children:[e("div",{style:{position:"absolute",inset:0,zIndex:+("Admin"!==a)},children:e(ee,{selectedTemplate:f,children:e(ec,{},G)})}),S&&e("div",{style:{position:"absolute",inset:0,zIndex:+("Admin"===a)},children:e(V,{})})]})]})}),eu=h(()=>e(_,{children:e(ec,{})})),eg=h(o=>{let{wsUrl:n="ws://localhost:3020",localMode:r=!1,domainSpec:s,initialRawProjectFiles:a,onExit:l,mockTemplates:d,autoApplyTemplate:m,initialTemplateKey:h,environmentKey:u,tagName:k,enableAdmin:x=!0}=o,v=c(p().breakpoints.up("md")),[V,E]=y("editor-width",350),[D,T]=y("editor-view",null),[C,L]=y("editor-template","spa"),[R,I]=w(!1);return g(()=>{null===D||Object.values(EditorPanelView).some(e=>e===D)&&(x||D!==EditorPanelView.Admin)||T(null)},[x,D,T]),e(f,{children:e(b,{maxSnack:5,children:e(j,{children:e(P,{tagName:k,children:e(Y,{initialWsUrl:n,localMode:r,children:e(et,{children:e(S,{children:e(A,{children:e(G,{domainSpec:s,initialRawProjectFiles:a,children:i(U,{mockTemplates:d,autoApplyTemplate:m,initialTemplateKey:h,environmentKey:u,children:[!r&&i(t,{children:[e(X,{}),e(Z,{}),e(W,{}),e(N,{}),e(M,{})]}),e(ea,{children:v?e(eh,{panelView:D,setPanelView:T,width:V,setWidth:E,selectedTemplate:C,setSelectedTemplate:L,isResizing:R,setIsResizing:I,onExit:l,enableAdmin:x}):e(eu,{})})]})})})})})})})})})})});export const Editor=h(t=>{try{if(window.frameElement?.hasAttribute(es))return e("div",{role:"alert","data-testid":"variant-page-unavailable",style:{padding:24,fontFamily:"sans-serif"},children:"This preview page is unavailable. Ask the agent to recreate it or close the comparison."})}catch{}return i(a,{theme:ep,children:[e(r,{}),e(eg,{...t})]})});
@@ -1 +1 @@
1
- import{jsx as e}from"react/jsx-runtime";import r from"lodash-es/debounce.js";import t from"promise-queue";import{createContext as o,useCallback as n,useContext as i,useEffect as s,useMemo as a,useRef as c,useState as l}from"react";import{match as m}from"ts-pattern";import{ApplicationRuntime as p,BinaryFile as u,RawProjectFiles as d,RuntimeReferenceStore as f,TextFile as g,buildPhoenixDefinitions as v,isConfiguratorModelSchemaCompatible as S,isTextFile as y,parseApplicationFiles as E}from"#package/application-spec";import{getAllPhxDefinitions as h}from"#package/domain";import{useApplicationRuntime as x,useMountGuard as D}from"#package/react-sdk";import{useEditorConnection as A}from"../services/EditorConnectionContext.js";import{trpc as C}from"../services/trpc.js";import{applyRuntimeReset as w,applySpecUpdate as N,prepareRuntimeRefresh as P,prepareRuntimeReset as R}from"./apply-spec-update.js";import{useDiagnostics as _}from"./use-diagnostics.js";import{useImplementationFiles as L}from"./use-implementation-files.js";import{getWasmSwcParsers as j}from"./wasm-swc-parsers.js";let k=o(null),I={debug:e=>console.debug(e)},b=e=>e instanceof Error?e.message:String(e);export const DomainSpecProvider=o=>{let{children:i,domainSpec:O,initialRawProjectFiles:T}=o,[M,$]=l(a(()=>O?[{fileName:"domain.yaml",content:O}]:T?T.files.filter(y).map(e=>({fileName:e.name,content:e.content})):[],[O,T])),[F,z]=l(null),H=a(()=>new f,[]),q=a(()=>v(h()),[]),U=c(null),G=x(),{getImplementationFiles:Q}=L(),{diagnostics:B,unreadDiagnosticCount:V,setDiagnostics:X,pushDiagnostic:Y,clearDiagnostics:Z,markDiagnosticsRead:J}=_(),K=a(()=>new t(1,1/0),[]),W=c(0),ee=c(null),{mutateAsync:er}=C.requestSpecFiles.useMutation(),{mutateAsync:et}=C.save.useMutation(),eo=D(),{localMode:en,connectionStatus:ei}=A(),{data:es}=C.getEditorConfig.useQuery(void 0,{enabled:!en&&"connected"===ei}),ea=en||es?.specSync===!0,ec=M.length>0?M:void 0,el=a(()=>M.map(e=>e.fileName),[M]),em=a(()=>r(async e=>{if(!en&&"connected"===ei&&0!==e.length)try{await et(e.map(e=>({fileName:e.fileName,content:e.content})))}catch(e){console.error("[DomainSpecContext] Failed to save files to disk:",e)}},1e3),[en,ei,et]);s(()=>()=>{em.cancel()},[em]);let ep=n(()=>{z(null)},[]),eu=n(async(e,r)=>{$(t=>{let o=t.find(r=>r.fileName===e)?t.map(t=>t.fileName===e?{...t,content:r}:t):[...t,{fileName:e,content:r}];return em(o),o})},[em]),ed=n(async(e,r)=>{let t,o,n=()=>eo()&&W.current===r;if(!n())return;let i=d(e.rawProjectFiles.files.map(e=>m(e).with({kind:"text"},e=>g(e.name,e.content)).with({kind:"binary"},e=>u(e.name)).exhaustive()));$(i.files.filter(y).map(e=>({fileName:e.name,content:e.content})));try{t=await j()}catch(e){if(!n())return;X([{code:"MODULE_ANALYZER_UNAVAILABLE",message:`The editor's module analyzer failed to load: ${e instanceof Error?e.message:String(e)}`,severity:"error",source:"spec",path:[]}]);return}if(!n())return;let s=E({rawProjectFiles:i,phxDefinitions:q},{analyzer:t.analyzer,evalExpressionParser:t.evalExpressionParser,referenceStore:H,logger:I});if(console.info(`[DomainSpecContext] Spec parsed: ${s.ok?"ok":"error"}, ${s.diagnostics.length} diagnostics`),!s.ok)return void X([...s.errors,...s.diagnostics].map(e=>({...e,source:"spec"})));Z();let{applicationSpec:a}=s.value,c=await Q({application:s.value,projectRoot:e.projectRoot});if(!n())return;if(c.errors.length>0)return void X(c.errors.map(e=>({code:e.code,message:e.message,severity:"error",source:"reload",path:[]})));let l=p(a,H,c.implementations,c.importedTransformers,c.invariantImplementations,c.adminImplementations);if(!l.ok){let e=`Missing expression implementations: ${l.missingExpressions.map(e=>`${e.entityType}.${e.exprName}`).join(", ")}`;console.error(`[DomainSpecContext] ${e}`),Y({code:"MISSING_EXPRESSION_IMPLEMENTATIONS",message:e,severity:"error",source:"runtime"});return}let{runtime:f}=l,v=null===U.current||S(U.current.configurator,a.configurator),h=G.selectors.environment.getPersistenceConfig();if(!v){let e;if("server"===h.type)return void Y({code:"HOT_RELOAD_MODEL_CHANGE_REQUIRES_RESTART",message:"Domain model changes require an application restart and were not applied.",severity:"error",source:"runtime"});if(!G.selectors.domainContext.configurator.getInitializationState().isCurrent)return void G.selectors.domainServices.getLogger().debug("[DomainSpecContext] Skipping the model reset because no configurator session is initialized; the change applies once a session loads under the new spec.");try{e=R({runtime:f,implementationFiles:c,previousSpec:G.getState().spec})}catch(e){Y({code:"HOT_RELOAD_PREPARE_FAILED",message:b(e),severity:"error",source:"runtime"});return}return G.selectors.domainServices.getLogger().debug("[DomainSpecContext] Reseeding the reset session directly from the spec preset; onPresetLoadedHandler and ProductSelected analytics are intentionally skipped."),w(G,e,G.selectors.domainApplicationContext.configurator.getConfigurationPersistSystem().revisionId$.value),void(U.current=a)}try{o=P({runtime:f,implementationFiles:c,previousSpec:G.getState().spec})}catch(e){Y({code:"HOT_RELOAD_PREPARE_FAILED",message:b(e),severity:"error",source:"runtime"});return}n()&&(N(G,o),U.current=a)},[G,Q,eo,q,Y,H,X,Z]),ef=c(null),eg=n(e=>{let r=W.current+1;W.current=r,ee.current={data:e,generation:r},K.add(async()=>{let e=ee.current;e&&e.data!==ef.current&&(ee.current=null,ef.current=e.data,await ed(e.data,e.generation))})},[ed,K]);C.onSpecChange.useSubscription(void 0,{enabled:!en&&ea,onData:eg}),s(()=>{!en&&ea&&er().catch(()=>{console.warn("[DomainSpecContext] Failed to request spec files")})},[er,en,ea]);let ev=a(()=>({files:ec,fileNames:el,updateFile:eu,parsing:!1,parseError:F,clearParseError:ep,diagnostics:B,clearDiagnostics:Z,unreadDiagnosticCount:V,markDiagnosticsRead:J}),[ec,el,eu,F,ep,B,Z,V,J]);return e(k.Provider,{value:ev,children:i})};export const useDomainSpecContext=()=>{let e=i(k);if(null===e)throw Error("useDomainSpecContext must be used within DomainSpecProvider");return e};
1
+ import{jsx as e}from"react/jsx-runtime";import t from"lodash-es/debounce.js";import r from"promise-queue";import{createContext as o,useCallback as n,useContext as i,useEffect as a,useMemo as s,useRef as c,useState as m}from"react";import{match as l}from"ts-pattern";import{ApplicationRuntime as p,BinaryFile as u,RawProjectFiles as d,RuntimeReferenceStore as g,TextFile as f,buildPhoenixDefinitions as S,isConfiguratorModelSchemaCompatible as v,isTextFile as h,parseApplicationFiles as y}from"#package/application-spec";import{findActionImplementationConflicts as E,getAllPhxDefinitions as x}from"#package/domain";import{useApplicationRuntime as A,useMountGuard as C}from"#package/react-sdk";import{useEditorConnection as D}from"../services/EditorConnectionContext.js";import{trpc as I}from"../services/trpc.js";import{applyRuntimeReset as N,applySpecUpdate as w,prepareRuntimeRefresh as P,prepareRuntimeReset as _}from"./apply-spec-update.js";import{useDiagnostics as R}from"./use-diagnostics.js";import{useImplementationFiles as j}from"./use-implementation-files.js";import{getWasmSwcParsers as L}from"./wasm-swc-parsers.js";let k=o(null),T={debug:e=>console.debug(e)},M=e=>e instanceof Error?e.message:String(e);export const DomainSpecProvider=o=>{let{children:i,domainSpec:O,initialRawProjectFiles:b}=o,[$,F]=m(s(()=>O?[{fileName:"domain.yaml",content:O}]:b?b.files.filter(h).map(e=>({fileName:e.name,content:e.content})):[],[O,b])),[z,H]=m(null),q=s(()=>new g,[]),G=s(()=>S(x()),[]),U=c(null),Q=A(),{getImplementationFiles:B}=j(),{diagnostics:V,unreadDiagnosticCount:X,setDiagnostics:Y,pushDiagnostic:Z,clearDiagnostics:J,markDiagnosticsRead:K}=R(),W=s(()=>new r(1,1/0),[]),ee=c(0),et=c(null),{mutateAsync:er}=I.requestSpecFiles.useMutation(),{mutateAsync:eo}=I.save.useMutation(),en=C(),{localMode:ei,connectionStatus:ea}=D(),{data:es}=I.getEditorConfig.useQuery(void 0,{enabled:!ei&&"connected"===ea}),ec=ei||es?.specSync===!0,em=$.length>0?$:void 0,el=s(()=>$.map(e=>e.fileName),[$]),ep=s(()=>t(async e=>{if(!ei&&"connected"===ea&&0!==e.length)try{await eo(e.map(e=>({fileName:e.fileName,content:e.content})))}catch(e){console.error("[DomainSpecContext] Failed to save files to disk:",e)}},1e3),[ei,ea,eo]);a(()=>()=>{ep.cancel()},[ep]);let eu=n(()=>{H(null)},[]),ed=n(async(e,t)=>{F(r=>{let o=r.find(t=>t.fileName===e)?r.map(r=>r.fileName===e?{...r,content:t}:r):[...r,{fileName:e,content:t}];return ep(o),o})},[ep]),eg=n(async(e,t)=>{let r,o,n=()=>en()&&ee.current===t;if(!n())return;let i=d(e.rawProjectFiles.files.map(e=>l(e).with({kind:"text"},e=>f(e.name,e.content)).with({kind:"binary"},e=>u(e.name)).exhaustive()));F(i.files.filter(h).map(e=>({fileName:e.name,content:e.content})));try{r=await L()}catch(e){if(!n())return;Y([{code:"MODULE_ANALYZER_UNAVAILABLE",message:`The editor's module analyzer failed to load: ${e instanceof Error?e.message:String(e)}`,severity:"error",source:"spec",path:[]}]);return}if(!n())return;let a=y({rawProjectFiles:i,phxDefinitions:G},{analyzer:r.analyzer,evalExpressionParser:r.evalExpressionParser,referenceStore:q,logger:T});if(console.info(`[DomainSpecContext] Spec parsed: ${a.ok?"ok":"error"}, ${a.diagnostics.length} diagnostics`),!a.ok)return void Y([...a.errors,...a.diagnostics].map(e=>({...e,source:"spec"})));J();let{applicationSpec:s}=a.value,c=await B({application:a.value,projectRoot:e.projectRoot});if(!n())return;if(c.errors.length>0)return void Y(c.errors.map(e=>({code:e.code,message:e.message,severity:"error",source:"reload",path:[]})));let m=E([...s.configurator.actions.values()].map(e=>String(e.name)),c.actionImplementations??Q.getState().spec.configurator.actionImplementations);if(m.extra.length>0&&console.error(`[DomainSpecContext] Action implementations without a declaration: ${m.extra.join(", ")}`),m.missing.length>0){let e=`Missing action implementations: ${m.missing.join(", ")}. Add each to a default export of phx.domain.implementActions({ ... }) in src/actions/.`;console.error(`[DomainSpecContext] ${e}`),Z({code:"MISSING_ACTION_IMPLEMENTATIONS",message:e,severity:"error",source:"runtime"});return}let g=p(s,q,c.implementations,c.importedTransformers,c.invariantImplementations,c.adminImplementations);if(!g.ok){let e=`Missing expression implementations: ${g.missingExpressions.map(e=>`${e.entityType}.${e.exprName}`).join(", ")}`;console.error(`[DomainSpecContext] ${e}`),Z({code:"MISSING_EXPRESSION_IMPLEMENTATIONS",message:e,severity:"error",source:"runtime"});return}let{runtime:S}=g,x=null===U.current||v(U.current.configurator,s.configurator),A=Q.selectors.environment.getPersistenceConfig();if(!x){let e;if("server"===A.type)return void Z({code:"HOT_RELOAD_MODEL_CHANGE_REQUIRES_RESTART",message:"Domain model changes require an application restart and were not applied.",severity:"error",source:"runtime"});if(!Q.selectors.domainContext.configurator.getInitializationState().isCurrent)return void Q.selectors.domainServices.getLogger().debug("[DomainSpecContext] Skipping the model reset because no configurator session is initialized; the change applies once a session loads under the new spec.");try{e=_({runtime:S,implementationFiles:c,previousSpec:Q.getState().spec})}catch(e){Z({code:"HOT_RELOAD_PREPARE_FAILED",message:M(e),severity:"error",source:"runtime"});return}return Q.selectors.domainServices.getLogger().debug("[DomainSpecContext] Reseeding the reset session directly from the spec preset; onPresetLoadedHandler and ProductSelected analytics are intentionally skipped."),N(Q,e,Q.selectors.domainApplicationContext.configurator.getConfigurationPersistSystem().revisionId$.value),void(U.current=s)}try{o=P({runtime:S,implementationFiles:c,previousSpec:Q.getState().spec})}catch(e){Z({code:"HOT_RELOAD_PREPARE_FAILED",message:M(e),severity:"error",source:"runtime"});return}n()&&(w(Q,o),U.current=s)},[Q,B,en,G,Z,q,Y,J]),ef=c(null),eS=n(e=>{let t=ee.current+1;ee.current=t,et.current={data:e,generation:t},W.add(async()=>{let e=et.current;e&&e.data!==ef.current&&(et.current=null,ef.current=e.data,await eg(e.data,e.generation))})},[eg,W]);I.onSpecChange.useSubscription(void 0,{enabled:!ei&&ec,onData:eS}),a(()=>{!ei&&ec&&er().catch(()=>{console.warn("[DomainSpecContext] Failed to request spec files")})},[er,ei,ec]);let ev=s(()=>({files:em,fileNames:el,updateFile:ed,parsing:!1,parseError:z,clearParseError:eu,diagnostics:V,clearDiagnostics:J,unreadDiagnosticCount:X,markDiagnosticsRead:K}),[em,el,ed,z,eu,V,J,X,K]);return e(k.Provider,{value:ev,children:i})};export const useDomainSpecContext=()=>{let e=i(k);if(null===e)throw Error("useDomainSpecContext must be used within DomainSpecProvider");return e};
@@ -1 +1 @@
1
- import{resolveImportedTransformers as e}from"#package/domain";import{getPhoenixThemes as t}from"#package/ui-sdk";import{getCustomComponentOptics as n}from"./use-implementation-files.js";let s=s=>{var o;let a,i,{runtime:r,implementationFiles:m,previousSpec:p}=s,c=r.configurator,l=p.configurator,u=m.handlers?.handlers??l.handlers,d=m.handlers?((e,t,n)=>{let s={};for(let o of e)s[o.name]=t?.[o.name]??n?.[o.name]??o.name;return s})(u,m.handlers.nameHashes,l.handlerHashes):l.handlerHashes,f=m.elements?.elements??l.elements,h=m.elements?((e,t,n)=>{let s={},o=0;for(let a of e)if("entity"===a.type||"layout"===a.type)s[a.name]=t?.[a.name]??n?.[a.name]??a.name;else{let e=`icon:${o}`;s[e]=t?.[e]??n?.[e]??`${e}:${a.elements.length}`,o+=1}return s})(f,m.elements.nameHashes,l.elementHashes):l.elementHashes,g=null!==m.customComponentOptics,R=c.componentOptics.changed||g?[...c.componentOptics.optics.map(e=>e.optic),...m.customComponentOptics??n(l.componentOptics)]:l.componentOptics,x=c.transformersRuntime.changed?t=>e(c.transformersRuntime.importedTransformers,c.transformersRuntime.specTransformers,t):l.createTransformers;return{presets:c.presetRuntime.changed?c.presetRuntime.presets:l.presets,theme:c.themeRuntime.changed?(o=c.themeRuntime,a=t(),i=Object.entries(a).find(([e])=>e===o.preset)?.[1]??{},Object.keys(o.options).length>0?{...i,...o.options}:i):l.theme,assistant:c.assistantRuntime.changed?c.assistantRuntime.assistant:l.assistant,navigationStates:c.statesRuntime.changed?c.statesRuntime.navigationStates:l.navigationStates,viewStates:c.statesRuntime.changed?c.statesRuntime.viewStates:l.viewStates,toolStates:c.statesRuntime.changed?c.statesRuntime.toolStates:l.toolStates,exportStates:c.statesRuntime.changed?c.statesRuntime.exportStates:l.exportStates,componentOptics:R,createTransformers:x,handlers:u,handlerHashes:d,elements:f,elementHashes:h}};export const prepareRuntimeRefresh=e=>{let{runtime:t,previousSpec:n}=e,o=n.configurator,a=s(e),i=t.configurator.expressionRuntime.changed?t.configurator.expressionRuntime.merged:o.expressions;return{nextSpec:{...n,configurator:{...o,...a,expressions:i}}}};export const prepareRuntimeReset=e=>{let{runtime:t,previousSpec:n}=e,o=n.configurator,a=s(e),i=t.configurator.expressionRuntime.merged,r=t.configurator.modelRuntime.domainBuilder.withExpressions(i).build(),m=a.presets[0];if(void 0===m)throw Error("Cannot reset the configurator after a model change because the application spec has no presets.");return{firstPreset:m,nextSpec:{...n,configurator:{...o,...a,modelVersion:r.context.modelVersion,factory:r,aliasMap:r.context.aliasMap,entityReflections:r.context.entityReflections,$entityReflections:r.context.$entityReflections,expressions:i,allowedRootEntityTypes:r.context.allowedRootEntityTypes,migrate:r.context.migrate}}}};let o=(e,t)=>{e.actions.spec.updateSpec(t)};export const applyRuntimeRefresh=(e,t)=>o(e,t.nextSpec);export const applyRuntimeReset=(e,t,n)=>{o(e,t.nextSpec),e.actions.loadedData.completeConfiguratorLoad({initialRevisionId:n,initialEntities:t.firstPreset.initialDomainEntities,modelVersion:t.nextSpec.configurator.modelVersion,rootEntityType:t.firstPreset.rootEntityType,schemaIdentity:t.nextSpec.configurator.factory})};export const applySpecUpdate=(e,t)=>o(e,t.nextSpec);
1
+ import{resolveImportedTransformers as e}from"#package/domain";import{getPhoenixThemes as t}from"#package/ui-sdk";import{getCustomComponentOptics as n}from"./use-implementation-files.js";let s=s=>{var o;let i,a,{runtime:r,implementationFiles:m,previousSpec:c}=s,p=r.configurator,l=c.configurator,u=m.handlers?.handlers??l.handlers,f=m.handlers?((e,t,n)=>{let s={};for(let o of e)s[o.name]=t?.[o.name]??n?.[o.name]??o.name;return s})(u,m.handlers.nameHashes,l.handlerHashes):l.handlerHashes,d=m.elements?.elements??l.elements,h=m.elements?((e,t,n)=>{let s={},o=0;for(let i of e)if("entity"===i.type||"layout"===i.type)s[i.name]=t?.[i.name]??n?.[i.name]??i.name;else{let e=`icon:${o}`;s[e]=t?.[e]??n?.[e]??`${e}:${i.elements.length}`,o+=1}return s})(d,m.elements.nameHashes,l.elementHashes):l.elementHashes,g=null!==m.customComponentOptics,R=p.componentOptics.changed||g?[...p.componentOptics.optics.map(e=>e.optic),...m.customComponentOptics??n(l.componentOptics)]:l.componentOptics,x=p.transformersRuntime.changed?t=>e(p.transformersRuntime.importedTransformers,p.transformersRuntime.specTransformers,t):l.createTransformers;return{presets:p.presetRuntime.changed?p.presetRuntime.presets:l.presets,theme:p.themeRuntime.changed?(o=p.themeRuntime,i=t(),a=Object.entries(i).find(([e])=>e===o.preset)?.[1]??{},Object.keys(o.options).length>0?{...a,...o.options}:a):l.theme,assistant:p.assistantRuntime.changed?p.assistantRuntime.assistant:l.assistant,navigationStates:p.statesRuntime.changed?p.statesRuntime.navigationStates:l.navigationStates,viewStates:p.statesRuntime.changed?p.statesRuntime.viewStates:l.viewStates,toolStates:p.statesRuntime.changed?p.statesRuntime.toolStates:l.toolStates,exportStates:p.statesRuntime.changed?p.statesRuntime.exportStates:l.exportStates,componentOptics:R,createTransformers:x,handlers:u,handlerHashes:f,elements:d,elementHashes:h}};export const prepareRuntimeRefresh=e=>{let{runtime:t,previousSpec:n}=e,o=n.configurator,i=s(e),a=t.configurator.expressionRuntime.changed?t.configurator.expressionRuntime.merged:o.expressions,r=t.configurator.actionsRuntime.changed?t.configurator.actionsRuntime.definitions:o.actions,m=e.implementationFiles.actionImplementations??o.actionImplementations;return{nextSpec:{...n,configurator:{...o,...i,expressions:a,actions:r,actionImplementations:m}}}};export const prepareRuntimeReset=e=>{let{runtime:t,previousSpec:n}=e,o=n.configurator,i=s(e),a=t.configurator.expressionRuntime.merged,r=t.configurator.actionsRuntime.definitions,m=e.implementationFiles.actionImplementations??o.actionImplementations,c=t.configurator.modelRuntime.domainBuilder.withExpressions(a).withActions(Object.values(r)).withActionImplementations(m).build(),p=i.presets[0];if(void 0===p)throw Error("Cannot reset the configurator after a model change because the application spec has no presets.");return{firstPreset:p,nextSpec:{...n,configurator:{...o,...i,modelVersion:c.context.modelVersion,factory:c,aliasMap:c.context.aliasMap,entityReflections:c.context.entityReflections,$entityReflections:c.context.$entityReflections,expressions:a,actions:r,actionImplementations:m,allowedRootEntityTypes:c.context.allowedRootEntityTypes,migrate:c.context.migrate}}}};let o=(e,t)=>{e.actions.spec.updateSpec(t)};export const applyRuntimeRefresh=(e,t)=>o(e,t.nextSpec);export const applyRuntimeReset=(e,t,n)=>{o(e,t.nextSpec),e.actions.loadedData.completeConfiguratorLoad({initialRevisionId:n,initialEntities:t.firstPreset.initialDomainEntities,modelVersion:t.nextSpec.configurator.modelVersion,rootEntityType:t.firstPreset.rootEntityType,schemaIdentity:t.nextSpec.configurator.factory})};export const applySpecUpdate=(e,t)=>o(e,t.nextSpec);
@@ -1,6 +1,5 @@
1
1
  import type { Application, ExpressionImplementations, InvariantImplementations } from '#package/application-spec';
2
- import { type DomainComponentOptic, type DomainEntity, type ElementRegistration, type HandlerRegistration, type ImportedTransformer, type SystemComponentTypeConstraint } from '#package/domain';
3
- type AnyImportedTransformer = ImportedTransformer<any, any, any, any, any, any, any>;
2
+ import { type AnyActionImplementations, type DomainComponentOptic, type DomainEntity, type ElementRegistration, type HandlerRegistration, type ImportedTransformer, type ProjectModule, type SystemComponentTypeConstraint } from '#package/domain';
4
3
  type RuntimeData = Record<string, unknown>;
5
4
  type RuntimeEntity = DomainEntity<string>;
6
5
  export type ReloadedComponentOptic = DomainComponentOptic<RuntimeEntity, RuntimeEntity, RuntimeData, RuntimeData, RuntimeData, RuntimeEntity, SystemComponentTypeConstraint>;
@@ -23,14 +22,16 @@ export interface ReloadError {
23
22
  * The freshly reloaded (or cached) implementation files needed to build an `ApplicationRuntime`.
24
23
  *
25
24
  * `implementations`, `adminImplementations`, `invariantImplementations`, `importedTransformers` and `customComponentOptics` always contain the latest
26
- * successfully loaded values.
25
+ * successfully loaded values. So does `actionImplementations`, which is `null` only until the first successful load: a round
26
+ * that loaded them may be dropped before it is applied, and the next round must still carry them.
27
27
  * `handlers`/`elements` are `null` when their category did not change this round.
28
28
  */
29
29
  export interface ImplementationFiles {
30
30
  readonly implementations: ExpressionImplementations;
31
+ readonly actionImplementations: AnyActionImplementations | null;
31
32
  readonly adminImplementations?: ExpressionImplementations;
32
33
  readonly invariantImplementations: InvariantImplementations;
33
- readonly importedTransformers: readonly AnyImportedTransformer[];
34
+ readonly importedTransformers: readonly ImportedTransformer[];
34
35
  readonly customComponentOptics: readonly ReloadedComponentOptic[] | null;
35
36
  readonly handlers: HandlerRegistryUpdate | null;
36
37
  readonly elements: ElementRegistryUpdate | null;
@@ -40,17 +41,20 @@ export interface GetImplementationFilesProps {
40
41
  readonly application: Application;
41
42
  readonly projectRoot: string;
42
43
  }
43
- type ExpressionModules = ReadonlyArray<Record<string, Record<string, unknown>>>;
44
44
  type ResolvedExpressions = ExpressionImplementations;
45
- export declare const resolveExpressionModules: (modules: ExpressionModules, aliasMap: Record<string, readonly string[]>) => ResolvedExpressions;
46
- export declare const resolveComponentModules: <ComponentOptic>(modules: ReadonlyArray<ComponentOptic | readonly ComponentOptic[]>) => readonly ComponentOptic[];
45
+ /**
46
+ * Validates the expression modules through the resolver the domain builder uses, then expands their
47
+ * aliases. The expansion stays here because the editor rebuilds expressions against the alias map of
48
+ * the spec being edited, where the built app's domain builder holds its own.
49
+ */
50
+ export declare const mergeExpressionModules: (modules: readonly ProjectModule[], aliasMap: Record<string, readonly string[]>) => ResolvedExpressions;
47
51
  export declare const mergeComponentOptics: <ComponentOptic>(generatedComponentOptics: readonly ComponentOptic[], customComponentOptics: readonly ComponentOptic[]) => readonly ComponentOptic[];
48
52
  export declare const getCustomComponentOptics: <ComponentOptic extends {
49
53
  readonly generated?: boolean;
50
54
  }>(componentOptics: readonly ComponentOptic[]) => readonly ComponentOptic[];
51
55
  /**
52
56
  * Owns the should-reload gating and cross-update caching for project implementation files
53
- * (expressions, invariants, components, transformers, handlers, elements). Returns `getImplementationFiles`,
57
+ * (expressions, actions, invariants, components, transformers, handlers, elements). Returns `getImplementationFiles`,
54
58
  * which reloads changed categories and returns the merged set with per-category reload errors.
55
59
  * Invariants also retry failed imports and refresh when their generated declarations change.
56
60
  */
@@ -1 +1 @@
1
- import{useCallback as e,useRef as n}from"react";import{expandAlias as t}from"#package/domain";import{importImplementationFile as r}from"./import-implementation-file.js";let a=e=>e instanceof Error?e.message:String(e),o=async(e,n)=>{let t=Date.now();return Promise.all(e.map(async e=>{let a=await r(`/@fs/${n}/${e}?t=${t}`);return{filePath:e,module:a}}))};export const resolveExpressionModules=(e,n)=>{let r={};for(let n of e)for(let[e,t]of Object.entries(n))r[e]={...r[e],...t};let a={};for(let[e,o]of Object.entries(r))for(let r of t(n,e)){let n=a[r]??{};for(let[t,r]of Object.entries(o))n[t]={...r,origin:{name:t,typeOrAlias:e}};a[r]=n}return a};export const resolveComponentModules=e=>e.flatMap(e=>Array.isArray(e)?e:[e]);export const mergeComponentOptics=(e,n)=>e.concat(n);export const getCustomComponentOptics=e=>e.filter(e=>!0!==e.generated);let s=async(e,n,t)=>{let r=await o(e,t);return resolveExpressionModules(r.map(e=>e.module),n)},i=async(e,n)=>{let t=await o(e,n);return resolveComponentModules(t.map(e=>e.module))},l=async(e,n)=>{let t=await o(e,n),r={};for(let{module:e}of t)for(let[n,t]of Object.entries(e))r[n]=[...r[n]??[],...t];return r},m=async(e,n)=>(await o(e,n)).map(({filePath:e,module:n})=>({name:e.replace(/^.*\//,"").replace(/\.tsx?$/,""),transformer:n})),p=async(e,n)=>(await o(e,n)).map(({filePath:e,module:n})=>({filePath:e,registrations:Array.isArray(n)?n:[n]})),c=async(e,n)=>(await o(e,n)).map(({filePath:e,module:n})=>({filePath:e,registrations:Array.isArray(n)?n:[n]}));export const useImplementationFiles=()=>{let t=n({}),r=n({}),o=n(0),f=n(null),u=n({}),d=n(null),h=n(null),g=n(null),E=n([]),w=n(null),y=n(null),F=n(new Map),I=n(new Map);return{getImplementationFiles:e(async e=>{let{application:n,projectRoot:O}=e,A=++o.current,{applicationSpec:M,categorizedFiles:R}=n,x=[],C=t.current,v=r.current,D=u.current,S=g.current,L=E.current,$=R.expressionsChanged,_=R.componentsChanged,b=R.transformersChanged,N=R.handlersChanged,j=R.elementsChanged,P=Object.fromEntries(R.invariants.map(e=>[e.file.name,e.depHash])),H=d.current,k=JSON.stringify(M.configurator.invariants.entries),T=null===H||h.current!==k||Object.keys(H).length!==R.invariants.length||R.invariants.some(e=>H[e.file.name]!==e.depHash);if(console.info(`[useImplementationFiles] Changed: spec=${R.specChanged}, expressions=${R.expressionsChanged}, adminExpressions=${R.adminExpressionsChanged}, transformers=${R.transformersChanged}, handlers=${R.handlersChanged}, elements=${R.elementsChanged}`),$){console.info("[useImplementationFiles] Reloading expression implementations");try{let e=Object.fromEntries(M.configurator.latestModel.aliases);t.current=C=await s(R.expressions.map(e=>e.file.name),e,O)}catch(e){console.warn("[useImplementationFiles] Failed to reload expressions:",e),x.push({code:"RELOAD_EXPRESSIONS_FAILED",message:a(e)})}}let J=JSON.stringify({projectRoot:O,files:R.adminExpressions.map(e=>[e.file.name,e.depHash]),aliases:[...M.admin.latestModel.aliases]});if(A===o.current&&f.current!==J)try{v=await s(R.adminExpressions.map(e=>e.file.name),Object.fromEntries(M.admin.latestModel.aliases),O),A===o.current&&(r.current=v,f.current=J)}catch(e){x.push({code:"RELOAD_ADMIN_EXPRESSIONS_FAILED",message:a(e)})}if(_){console.info("[useImplementationFiles] Reloading component optics");try{g.current=S=await i(R.components.map(e=>e.file.name),O)}catch(e){console.warn("[useImplementationFiles] Failed to reload components:",e),x.push({code:"RELOAD_COMPONENTS_FAILED",message:a(e)})}}if(T){console.info("[useImplementationFiles] Reloading invariant implementations");try{u.current=D=await l(R.invariants.map(e=>e.file.name),O),d.current=P,h.current=k}catch(e){console.warn("[useImplementationFiles] Failed to reload invariants:",e),x.push({code:"RELOAD_INVARIANTS_FAILED",message:a(e)})}}if(b){console.info("[useImplementationFiles] Reloading transformer implementations");try{E.current=L=await m(R.transformers.map(e=>e.file.name),O)}catch(e){console.warn("[useImplementationFiles] Failed to reload transformers:",e),x.push({code:"RELOAD_TRANSFORMERS_FAILED",message:a(e)})}}let X=null;if(N){console.info("[useImplementationFiles] Reloading handler implementations");try{let e=Object.fromEntries(R.handlers.map(e=>[e.file.name,e.depHash])),n=w.current,t=t=>null===n||n[t]!==e[t],r=I.current,a=R.handlers.map(e=>e.file.name),o=a.filter(e=>t(e)||!r.has(e)),s=await p(o,O),i=new Map(s.map(e=>[e.filePath,e])),l=a.map(e=>{let n=i.get(e)??r.get(e);if(!n)throw Error(`Handler file "${e}" was neither re-imported nor cached from a previous round. This is a hot-reload bookkeeping bug — reload the editor page to recover.`);return n}),m=l.flatMap(e=>e.registrations),c={};for(let{filePath:n,registrations:r}of l){let a=t(n)?e[n]:void 0;if(a)for(let e of r)c[e.name]=a}console.info(`[useImplementationFiles] Staged handlers for registry (${m.length} total)`),X={handlers:m,nameHashes:c},I.current=new Map(l.map(e=>[e.filePath,e])),w.current=e}catch(e){console.warn("[useImplementationFiles] Failed to reload handlers:",e),x.push({code:"RELOAD_HANDLERS_FAILED",message:a(e)})}}let V=null;if(j){console.info("[useImplementationFiles] Reloading element implementations");try{let e=Object.fromEntries(R.elements.map(e=>[e.file.name,e.depHash])),n=y.current,t=t=>null===n||n[t]!==e[t],r=F.current,a=R.elements.map(e=>e.file.name),o=a.filter(e=>t(e)||!r.has(e)),s=await c(o,O),i=new Map(s.map(e=>[e.filePath,e])),l=a.map(e=>{let n=i.get(e)??r.get(e);if(!n)throw Error(`Element file "${e}" was neither re-imported nor cached from a previous round. This is a hot-reload bookkeeping bug — reload the editor page to recover.`);return n}),m=l.flatMap(e=>e.registrations),p={},f=0;for(let{filePath:n,registrations:r}of l){let a=t(n)?e[n]:void 0;for(let e of r){if("entity"===e.type||"layout"===e.type){a&&(p[e.name]=a);continue}a&&(p[`icon:${f}`]=a),f+=1}}console.info(`[useImplementationFiles] Staged elements for registry (${m.length} total)`),V={elements:m,nameHashes:p},F.current=new Map(l.map(e=>[e.filePath,e])),y.current=e}catch(e){console.warn("[useImplementationFiles] Failed to reload elements:",e),x.push({code:"RELOAD_ELEMENTS_FAILED",message:a(e)})}}return{implementations:C,adminImplementations:v,invariantImplementations:D,importedTransformers:L,customComponentOptics:S,handlers:X,elements:V,errors:x}},[])}};
1
+ import{useCallback as e,useRef as n}from"react";import{expandAlias as t,resolveActionModules as a,resolveComponentOpticModules as r,resolveElementModule as o,resolveExpressionModules as s,resolveHandlerModule as i,resolveInvariantModules as l,resolveTransformerModule as m}from"#package/domain";import{importImplementationFile as c}from"./import-implementation-file.js";let p=e=>e instanceof Error?e.message:String(e),f=async(e,n)=>{let t=Date.now();return Promise.all(e.map(async e=>({origin:e,exports:await c(`/@fs/${n}/${e}?t=${t}`)})))},d=async(e,n)=>a(await f(e,n));export const mergeExpressionModules=(e,n)=>{let a={};for(let{expressions:t}of s(e,n))for(let[e,n]of Object.entries(t))a[e]={...a[e],...n};let r={};for(let[e,o]of Object.entries(a))for(let a of t(n,e)){let n=r[a]??{};for(let[t,a]of Object.entries(o))n[t]={...a,origin:{name:t,typeOrAlias:e}};r[a]=n}return r};export const mergeComponentOptics=(e,n)=>e.concat(n);export const getCustomComponentOptics=e=>e.filter(e=>!0!==e.generated);let u=async(e,n,t)=>mergeExpressionModules(await f(e,t),n),g=async(e,n)=>r(await f(e,n)),h=async(e,n)=>l(await f(e,n)),E=async(e,n)=>(await f(e,n)).map(m),F=async(e,n)=>(await f(e,n)).map(e=>({filePath:e.origin,registrations:i(e)})),w=async(e,n)=>(await f(e,n)).map(e=>({filePath:e.origin,registrations:o(e)}));export const useImplementationFiles=()=>{let t=n({}),a=n(null),r=n({}),o=n(0),s=n(null),i=n({}),l=n(null),m=n(null),c=n(null),f=n([]),I=n(null),y=n(null),O=n(new Map),A=n(new Map);return{getImplementationFiles:e(async e=>{let{application:n,projectRoot:R}=e,C=++o.current,{applicationSpec:D,categorizedFiles:L}=n,S=[],x=t.current,M=r.current,_=i.current,$=c.current,b=f.current,v=L.expressionsChanged,N=L.actionsChanged,j=L.componentsChanged,P=L.transformersChanged,H=L.handlersChanged,T=L.elementsChanged,k=Object.fromEntries(L.invariants.map(e=>[e.file.name,e.depHash])),J=l.current,X=JSON.stringify(D.configurator.invariants.entries),V=null===J||m.current!==X||Object.keys(J).length!==L.invariants.length||L.invariants.some(e=>J[e.file.name]!==e.depHash);if(console.info(`[useImplementationFiles] Changed: spec=${L.specChanged}, expressions=${L.expressionsChanged}, actions=${L.actionsChanged}, adminExpressions=${L.adminExpressionsChanged}, transformers=${L.transformersChanged}, handlers=${L.handlersChanged}, elements=${L.elementsChanged}`),v){console.info("[useImplementationFiles] Reloading expression implementations");try{let e=Object.fromEntries(D.configurator.latestModel.aliases);t.current=x=await u(L.expressions.map(e=>e.file.name),e,R)}catch(e){console.warn("[useImplementationFiles] Failed to reload expressions:",e),S.push({code:"RELOAD_EXPRESSIONS_FAILED",message:p(e)})}}let q=a.current;if(N){console.info("[useImplementationFiles] Reloading action implementations");try{a.current=q=await d(L.actions.map(e=>e.file.name),R)}catch(e){console.warn("[useImplementationFiles] Failed to reload actions:",e),S.push({code:"RELOAD_ACTIONS_FAILED",message:p(e)})}}let z=JSON.stringify({projectRoot:R,files:L.adminExpressions.map(e=>[e.file.name,e.depHash]),aliases:[...D.admin.latestModel.aliases]});if(C===o.current&&s.current!==z)try{M=await u(L.adminExpressions.map(e=>e.file.name),Object.fromEntries(D.admin.latestModel.aliases),R),C===o.current&&(r.current=M,s.current=z)}catch(e){S.push({code:"RELOAD_ADMIN_EXPRESSIONS_FAILED",message:p(e)})}if(j){console.info("[useImplementationFiles] Reloading component optics");try{c.current=$=await g(L.components.map(e=>e.file.name),R)}catch(e){console.warn("[useImplementationFiles] Failed to reload components:",e),S.push({code:"RELOAD_COMPONENTS_FAILED",message:p(e)})}}if(V){console.info("[useImplementationFiles] Reloading invariant implementations");try{i.current=_=await h(L.invariants.map(e=>e.file.name),R),l.current=k,m.current=X}catch(e){console.warn("[useImplementationFiles] Failed to reload invariants:",e),S.push({code:"RELOAD_INVARIANTS_FAILED",message:p(e)})}}if(P){console.info("[useImplementationFiles] Reloading transformer implementations");try{f.current=b=await E(L.transformers.map(e=>e.file.name),R)}catch(e){console.warn("[useImplementationFiles] Failed to reload transformers:",e),S.push({code:"RELOAD_TRANSFORMERS_FAILED",message:p(e)})}}let B=null;if(H){console.info("[useImplementationFiles] Reloading handler implementations");try{let e=Object.fromEntries(L.handlers.map(e=>[e.file.name,e.depHash])),n=I.current,t=t=>null===n||n[t]!==e[t],a=A.current,r=L.handlers.map(e=>e.file.name),o=r.filter(e=>t(e)||!a.has(e)),s=await F(o,R),i=new Map(s.map(e=>[e.filePath,e])),l=r.map(e=>{let n=i.get(e)??a.get(e);if(!n)throw Error(`Handler file "${e}" was neither re-imported nor cached from a previous round. This is a hot-reload bookkeeping bug — reload the editor page to recover.`);return n}),m=l.flatMap(e=>e.registrations),c={};for(let{filePath:n,registrations:a}of l){let r=t(n)?e[n]:void 0;if(r)for(let e of a)c[e.name]=r}console.info(`[useImplementationFiles] Staged handlers for registry (${m.length} total)`),B={handlers:m,nameHashes:c},A.current=new Map(l.map(e=>[e.filePath,e])),I.current=e}catch(e){console.warn("[useImplementationFiles] Failed to reload handlers:",e),S.push({code:"RELOAD_HANDLERS_FAILED",message:p(e)})}}let G=null;if(T){console.info("[useImplementationFiles] Reloading element implementations");try{let e=Object.fromEntries(L.elements.map(e=>[e.file.name,e.depHash])),n=y.current,t=t=>null===n||n[t]!==e[t],a=O.current,r=L.elements.map(e=>e.file.name),o=r.filter(e=>t(e)||!a.has(e)),s=await w(o,R),i=new Map(s.map(e=>[e.filePath,e])),l=r.map(e=>{let n=i.get(e)??a.get(e);if(!n)throw Error(`Element file "${e}" was neither re-imported nor cached from a previous round. This is a hot-reload bookkeeping bug — reload the editor page to recover.`);return n}),m=l.flatMap(e=>e.registrations),c={},p=0;for(let{filePath:n,registrations:a}of l){let r=t(n)?e[n]:void 0;for(let e of a){if("entity"===e.type||"layout"===e.type){r&&(c[e.name]=r);continue}r&&(c[`icon:${p}`]=r),p+=1}}console.info(`[useImplementationFiles] Staged elements for registry (${m.length} total)`),G={elements:m,nameHashes:c},O.current=new Map(l.map(e=>[e.filePath,e])),y.current=e}catch(e){console.warn("[useImplementationFiles] Failed to reload elements:",e),S.push({code:"RELOAD_ELEMENTS_FAILED",message:p(e)})}}return{implementations:x,actionImplementations:q,adminImplementations:M,invariantImplementations:_,importedTransformers:b,customComponentOptics:$,handlers:B,elements:G,errors:S}},[])}};
@@ -1 +1 @@
1
- import{jsx as e,jsxs as o}from"react/jsx-runtime";import t from"@monaco-editor/react";import{Box as r,Checkbox as a,FormControlLabel as i,Stack as n,Typography as s}from"@mui/material";import{useState as l}from"react";import{EditorButton as m}from"../common/EditorButton.js";import{jsonEditorOptions as c}from"../common/monaco-config.js";import{useOptionalConfigurator as d,useOptionalDomain as p}from"../hooks/use-optional-runtime.js";import{splitOperations as u}from"./split-operations.js";let h={fontSize:"12px",fontWeight:600,color:"text.secondary"};export const GraphQLPanel=()=>{let f=d()?.graphQLSystem,g=p()?.storeSystem,[x,y]=l("query { root { id type } }"),[b,v]=l(""),[S,k]=l(!1),[j,N]=l(null),[C,w]=l(null),[z,J]=l(!1),O=async()=>{let e=u(x),o=(e=>{if(""===e.trim())return{ok:!0,variables:void 0};try{let o=JSON.parse(e);return"object"!=typeof o||null===o||Array.isArray(o)?{ok:!1,message:"Variables must be a JSON object. Wrap them in {} or clear the field."}:{ok:!0,variables:o}}catch(e){return{ok:!1,message:`Variables are not valid JSON: ${e instanceof Error?e.message:String(e)}. Fix the JSON or clear the field.`}}})(b);if(f){if(w(null),!e.ok)return void N(e.message);if(!o.ok)return void N(o.message);if(S&&!g?.isInitialized)return void N("The configuration is not loaded yet, so there is no state to run against. Run again once the configurator has finished loading.");J(!0);try{let t=e.operations.map(e=>({...e,variables:o.variables})),{results:r,committed:a,message:i}=S&&g?{results:(await f.prepare(g.stateSlices.committed.value.state,t)).map(({result:e})=>e),committed:!1,message:"Dry run: nothing was committed."}:await f.execute(t),n=r.map((o,t)=>({operationName:e.operations[t]?.operationName??null,...o}));N(JSON.stringify(n,null,2)),w(a?"Committed as one undo step.":i??"Nothing was committed.")}finally{J(!1)}}};return o(n,{direction:"column",spacing:1.5,sx:{px:1.5,py:1},children:[e(s,{variant:"subtitle2",sx:h,children:"Query"}),e(r,{component:"div",sx:{height:160,border:"1px solid #dee2e6"},children:e(t,{language:"graphql",value:x,onChange:e=>y(e??""),options:c})}),e(s,{variant:"subtitle2",sx:h,children:"Variables (JSON)"}),e(r,{component:"div",sx:{height:80,border:"1px solid #dee2e6"},children:e(t,{language:"json",value:b,onChange:e=>v(e??""),options:c})}),e(i,{control:e(a,{size:"small",checked:S,onChange:e=>{k(e.target.checked)},sx:{p:.5}}),label:"Dry run",sx:{ml:-.5,mr:0,"& .MuiFormControlLabel-label":{fontSize:"12px",color:"#212529"}}}),e(m,{fullWidth:!0,disabled:!f||z,onClick:()=>void O(),children:f?"Run":"Configurator is not ready"}),null!==C&&e(s,{"data-testid":"graphql-status",sx:{fontSize:"12px",color:"text.secondary"},children:C}),null!==j&&e(r,{component:"pre","data-testid":"graphql-result",sx:{m:0,p:1,fontSize:"12px",backgroundColor:"#f8f9fa",overflow:"auto",whiteSpace:"pre-wrap"},children:j})]})};
1
+ import{jsx as e,jsxs as t}from"react/jsx-runtime";import o from"@monaco-editor/react";import{Box as r,Checkbox as i,FormControlLabel as a,Stack as n,Typography as s}from"@mui/material";import{useState as l}from"react";import{EditorButton as m}from"../common/EditorButton.js";import{jsonEditorOptions as d}from"../common/monaco-config.js";import{useOptionalConfigurator as c,useOptionalDomain as p}from"../hooks/use-optional-runtime.js";import{splitOperations as u}from"./split-operations.js";let h={fontSize:"12px",fontWeight:600,color:"text.secondary"};export const GraphQLPanel=()=>{let f=c()?.graphQLSystem,g=p()?.storeSystem,[x,y]=l("query { root { id type } }"),[b,v]=l(""),[S,k]=l(!1),[j,N]=l(null),[C,w]=l(null),[z,J]=l(!1),O=async()=>{let e=u(x),t=(e=>{if(""===e.trim())return{ok:!0,variables:void 0};try{let t=JSON.parse(e);return"object"!=typeof t||null===t||Array.isArray(t)?{ok:!1,message:"Variables must be a JSON object. Wrap them in {} or clear the field."}:{ok:!0,variables:t}}catch(e){return{ok:!1,message:`Variables are not valid JSON: ${e instanceof Error?e.message:String(e)}. Fix the JSON or clear the field.`}}})(b);if(f){if(w(null),!e.ok)return void N(e.message);if(!t.ok)return void N(t.message);if(S&&!g?.isInitialized)return void N("The configuration is not loaded yet, so there is no state to run against. Run again once the configurator has finished loading.");J(!0);try{let o=e.operations.map(e=>({...e,variables:t.variables})),r=S&&g?await f.prepare(g.stateSlices.committed.value.state,o):void 0,{results:i,committed:a,message:n,sideEffects:s}=r?{results:r.map(({result:e})=>e),committed:!1,message:"Dry run: nothing was committed.",sideEffects:f.readSideEffects(r)}:await f.execute(o),l=i.map((t,o)=>({operationName:e.operations[o]?.operationName??null,...t}));N(JSON.stringify(s.length>0?{results:l,sideEffects:s}:l,null,2)),w(a?"Committed as one undo step.":n??"Nothing was committed.")}finally{J(!1)}}};return t(n,{direction:"column",spacing:1.5,sx:{px:1.5,py:1},children:[e(s,{variant:"subtitle2",sx:h,children:"Query"}),e(r,{component:"div",sx:{height:160,border:"1px solid #dee2e6"},children:e(o,{language:"graphql",value:x,onChange:e=>y(e??""),options:d})}),e(s,{variant:"subtitle2",sx:h,children:"Variables (JSON)"}),e(r,{component:"div",sx:{height:80,border:"1px solid #dee2e6"},children:e(o,{language:"json",value:b,onChange:e=>v(e??""),options:d})}),e(a,{control:e(i,{size:"small",checked:S,onChange:e=>{k(e.target.checked)},sx:{p:.5}}),label:"Dry run",sx:{ml:-.5,mr:0,"& .MuiFormControlLabel-label":{fontSize:"12px",color:"#212529"}}}),e(m,{fullWidth:!0,disabled:!f||z,onClick:()=>void O(),children:f?"Run":"Configurator is not ready"}),null!==C&&e(s,{"data-testid":"graphql-status",sx:{fontSize:"12px",color:"text.secondary"},children:C}),null!==j&&e(r,{component:"pre","data-testid":"graphql-result",sx:{m:0,p:1,fontSize:"12px",backgroundColor:"#f8f9fa",overflow:"auto",whiteSpace:"pre-wrap"},children:j})]})};
@@ -1,7 +1,7 @@
1
- import{jsx as e,jsxs as t,Fragment as o}from"react/jsx-runtime";import{Box as a,Checkbox as n,Dialog as i,DialogActions as r,DialogContent as l,DialogTitle as s,Divider as c,FormControlLabel as d,Stack as p,TextField as f,Tooltip as u,Typography as m}from"@mui/material";import{jwtDecode as h}from"jwt-decode";import{useSnackbar as g}from"notistack";import{useEffect as b,useState as v}from"react";import{stringify as x}from"yaml";import{validateMockTemplateContent as k}from"#package/application-spec";import{useAccessServiceOverride as y,useBackendDataOverride as C,useConfiguratorModelVersion as D,useConfiguratorRawAccessInfo as w,useConfiguratorRawBackendData as S,useConfiguratorRawFrontendData as j,useConfiguratorRawPublishedData as M,useFrontendDataOverride as W,usePublishedDataOverride as z,useSessionContextOverride as E,useSessionService as I}from"#package/react-sdk";import{CollapsibleSection as A}from"../common/CollapsibleSection.js";import{EditorButton as F}from"../common/EditorButton.js";import{useOptionalDomain as P}from"../hooks/use-optional-runtime.js";import{useEditorConnection as T}from"../services/EditorConnectionContext.js";import{trpc as $}from"../services/trpc.js";import{useEditorMockContext as B}from"./EditorMockContext.js";import{ValidationErrorModal as O}from"./ValidationErrorModal.js";let R=({title:o,value:n,setValue:i,placeholder:r})=>t(a,{component:"div",sx:{display:"flex",alignItems:"center",gap:1},children:[e(m,{variant:"subtitle2",sx:{fontSize:"11px",fontWeight:600,color:"#495057",minWidth:"80px"},children:o}),e(f,{value:n,onChange:e=>{i(e.target.value)},fullWidth:!0,size:"small",placeholder:r,InputProps:{sx:{fontSize:"12px",fontFamily:"monospace",backgroundColor:"#fff",height:"32px","& input":{padding:"6px 12px"}}},sx:{"& .MuiOutlinedInput-root":{"&:hover fieldset":{borderColor:"#90caf9"},"&.Mui-focused fieldset":{borderColor:"#1976d2"}}}})]}),V={fontFamily:"monospace",fontSize:"12px",whiteSpace:"pre-wrap",wordBreak:"break-word",margin:0,padding:1,backgroundColor:"#f8f9fa",border:"1px solid #e9ecef",borderRadius:"4px"},N={fontSize:"10px",py:.25,px:1,fontWeight:600,minWidth:"auto"},U=({onClick:t})=>e(F,{variant:"secondary",sx:N,onClick:e=>{e.stopPropagation(),t()},children:"Copy"}),q=({label:t,checked:o,onChange:a})=>e(d,{control:e(n,{size:"small",checked:o,onChange:e=>{a(e.target.checked)},sx:{p:.5}}),label:t,sx:{ml:-.5,mr:0,"& .MuiFormControlLabel-label":{fontSize:"12px",color:"#212529"}}}),H=({title:t,original:o,edited:n,onChange:i,onCopy:r})=>{let[l,s]=v(!1),c=n??o;return e(A,{title:t,subtitle:void 0!==n?"edited":void 0,defaultExpanded:!0,actions:[e(F,{variant:"secondary",sx:N,onClick:e=>{e.stopPropagation(),s(!l)},children:l?"Done":"Edit"},"edit"),e(F,{variant:"secondary",sx:N,disabled:void 0===n,onClick:e=>{e.stopPropagation(),i(void 0)},children:"Reset"},"reset"),e(U,{onClick:()=>r(c)},"copy")],children:l?e(f,{value:c,onChange:e=>{i(e.target.value)},fullWidth:!0,multiline:!0,minRows:4,InputProps:{sx:{fontSize:"12px",fontFamily:"monospace",backgroundColor:"#fff",padding:1}},inputProps:{spellCheck:!1},sx:{"& .MuiOutlinedInput-root":{"&:hover fieldset":{borderColor:"#90caf9"},"&.Mui-focused fieldset":{borderColor:"#1976d2"}}}}):e(a,{component:"pre",sx:V,children:c})})},K=({yaml:o,open:n,onClose:d})=>{let{enqueueSnackbar:f}=g(),{effectiveMockTemplates:u}=B(),{localMode:h,connectionStatus:x}=T(),y=$.saveMock.useMutation(),[C,D]=v(""),[w,S]=v(""),[j,M]=v(""),[W,z]=v(!0),[E,I]=v(!0),[A,P]=v(!0),[V,N]=v(""!==o.frontendData),[U,K]=v(""!==o.backendData),[L,Y]=v({}),[G,J]=v(null);b(()=>{Y({})},[o]);let Q=e=>t=>{Y(o=>{let a={...o};return void 0===t?delete a[e]:a[e]=t,a})},X={sessionAccess:L.sessionAccess??o.session+"\n"+o.access,configuration:L.configuration??o.configuration,publishedData:L.publishedData??o.publishedData,frontendData:L.frontendData??o.frontendData,backendData:L.backendData??o.backendData},Z=async e=>{try{await navigator.clipboard.writeText(e),f("Copied to clipboard!",{variant:"success"})}catch(e){f("Failed to copy to clipboard",{variant:"error"})}},_=()=>{let e,t=(e=`key: '${C}'
1
+ import{jsx as e,jsxs as t,Fragment as o}from"react/jsx-runtime";import{Box as a,Checkbox as n,Dialog as i,DialogActions as r,DialogContent as l,DialogTitle as s,Divider as c,FormControlLabel as d,Stack as p,TextField as f,Tooltip as u,Typography as m}from"@mui/material";import{useSnackbar as h}from"notistack";import{useEffect as g,useMemo as b,useState as v}from"react";import{stringify as x}from"yaml";import{validateMockTemplateContent as k}from"#package/application-spec";import{useAccessServiceOverride as C,useBackendDataOverride as y,useConfiguratorModelVersion as D,useConfiguratorRawAccessInfo as w,useConfiguratorRawBackendData as S,useConfiguratorRawFrontendData as j,useConfiguratorRawPublishedData as M,useFrontendDataOverride as W,usePublishedDataOverride as z,useRawSession as E,useSessionContextOverride as I}from"#package/react-sdk";import{CollapsibleSection as A}from"../common/CollapsibleSection.js";import{EditorButton as F}from"../common/EditorButton.js";import{useOptionalDomain as P}from"../hooks/use-optional-runtime.js";import{useEditorConnection as $}from"../services/EditorConnectionContext.js";import{trpc as B}from"../services/trpc.js";import{useEditorMockContext as O}from"./EditorMockContext.js";import{ValidationErrorModal as T}from"./ValidationErrorModal.js";let R=({title:o,value:n,setValue:i,placeholder:r})=>t(a,{component:"div",sx:{display:"flex",alignItems:"center",gap:1},children:[e(m,{variant:"subtitle2",sx:{fontSize:"11px",fontWeight:600,color:"#495057",minWidth:"80px"},children:o}),e(f,{value:n,onChange:e=>{i(e.target.value)},fullWidth:!0,size:"small",placeholder:r,InputProps:{sx:{fontSize:"12px",fontFamily:"monospace",backgroundColor:"#fff",height:"32px","& input":{padding:"6px 12px"}}},sx:{"& .MuiOutlinedInput-root":{"&:hover fieldset":{borderColor:"#90caf9"},"&.Mui-focused fieldset":{borderColor:"#1976d2"}}}})]}),V={fontFamily:"monospace",fontSize:"12px",whiteSpace:"pre-wrap",wordBreak:"break-word",margin:0,padding:1,backgroundColor:"#f8f9fa",border:"1px solid #e9ecef",borderRadius:"4px"},N={fontSize:"10px",py:.25,px:1,fontWeight:600,minWidth:"auto"},U=({onClick:t})=>e(F,{variant:"secondary",sx:N,onClick:e=>{e.stopPropagation(),t()},children:"Copy"}),H=({label:t,checked:o,onChange:a})=>e(d,{control:e(n,{size:"small",checked:o,onChange:e=>{a(e.target.checked)},sx:{p:.5}}),label:t,sx:{ml:-.5,mr:0,"& .MuiFormControlLabel-label":{fontSize:"12px",color:"#212529"}}}),K=({title:t,original:o,edited:n,onChange:i,onCopy:r})=>{let[l,s]=v(!1),c=n??o;return e(A,{title:t,subtitle:void 0!==n?"edited":void 0,defaultExpanded:!0,actions:[e(F,{variant:"secondary",sx:N,onClick:e=>{e.stopPropagation(),s(!l)},children:l?"Done":"Edit"},"edit"),e(F,{variant:"secondary",sx:N,disabled:void 0===n,onClick:e=>{e.stopPropagation(),i(void 0)},children:"Reset"},"reset"),e(U,{onClick:()=>r(c)},"copy")],children:l?e(f,{value:c,onChange:e=>{i(e.target.value)},fullWidth:!0,multiline:!0,minRows:4,InputProps:{sx:{fontSize:"12px",fontFamily:"monospace",backgroundColor:"#fff",padding:1}},inputProps:{spellCheck:!1},sx:{"& .MuiOutlinedInput-root":{"&:hover fieldset":{borderColor:"#90caf9"},"&.Mui-focused fieldset":{borderColor:"#1976d2"}}}}):e(a,{component:"pre",sx:V,children:c})})},L=({yaml:o,open:n,onClose:d})=>{let{enqueueSnackbar:f}=h(),{effectiveMockTemplates:u}=O(),{localMode:b,connectionStatus:x}=$(),C=B.saveMock.useMutation(),[y,D]=v(""),[w,S]=v(""),[j,M]=v(""),[W,z]=v(!0),[E,I]=v(!0),[A,P]=v(!0),[V,N]=v(""!==o.frontendData),[U,L]=v(""!==o.backendData),[Y,q]=v({}),[G,J]=v(null);g(()=>{q({})},[o]);let Q=e=>t=>{q(o=>{let a={...o};return void 0===t?delete a[e]:a[e]=t,a})},X={sessionAccess:Y.sessionAccess??o.session+"\n"+o.access,configuration:Y.configuration??o.configuration,publishedData:Y.publishedData??o.publishedData,frontendData:Y.frontendData??o.frontendData,backendData:Y.backendData??o.backendData},Z=async e=>{try{await navigator.clipboard.writeText(e),f("Copied to clipboard!",{variant:"success"})}catch(e){f("Failed to copy to clipboard",{variant:"error"})}},_=()=>{let e,t=(e=`key: '${y}'
2
2
  title: '${w}'
3
3
  description: '${j}'
4
4
  order: ${o.order.toString()}
5
5
  `,W&&(e+="\n"+X.sessionAccess+"\n"),E&&(e+="\n"+X.configuration),A&&(e+="\n"+X.publishedData),V&&(e+="\n"+X.frontendData),U&&(e+="\n"+X.backendData),e),a=k(t);return a.valid?t:(J(`The assembled mock template is not valid:
6
6
 
7
- ${a.errors.join("\n")}`),null)},ee=async()=>{let e=_();null!==e&&await Z(e)},et=async()=>{if(""===C)return void f("Enter a key for the mock file",{variant:"error"});let e=C+".yaml";if(u.find(e=>e.key===C))return void f(`A mock template '${e}' already exists`,{variant:"error"});if(h)return void f("Cannot save files in local mode",{variant:"error"});if("connected"!==x)return void f("Not connected to server. Cannot save file.",{variant:"error"});let t=_();if(null!==t)try{await y.mutateAsync({fileName:e,content:t}),f(`Mock file ${e} saved successfully!`,{variant:"success"})}catch(e){f(e instanceof Error?e.message:"Failed to save mock file",{variant:"error"})}};return t(i,{open:n,onClose:d,maxWidth:"md",fullWidth:!0,children:[e(s,{sx:{fontSize:"14px",fontWeight:600,py:1.5,px:2,borderBottom:"1px solid #e9ecef"},children:"Created Mock Data"}),e(l,{sx:{p:2},children:t(a,{component:"div",sx:{display:"flex",flexDirection:"column",gap:2,pt:1},children:[t(a,{component:"div",sx:{display:"flex",flexDirection:"column",gap:1},children:[e(R,{title:"Key",value:C,setValue:D,placeholder:"e.g. 'regularUser', also in the filename"}),e(R,{title:"Title",value:w,setValue:S,placeholder:"e.g. 'Regular User'"}),e(R,{title:"Description",value:j,setValue:M,placeholder:"Human readable description of the mock data"}),t(a,{component:"div",sx:{display:"flex",alignItems:"center",gap:1,flexWrap:"wrap"},children:[e(m,{variant:"subtitle2",sx:{fontSize:"11px",fontWeight:600,color:"#495057",minWidth:"80px"},children:"Include"}),e(q,{label:"Session & Access",checked:W,onChange:z}),e(q,{label:"Configuration",checked:E,onChange:I}),e(q,{label:"Published data",checked:A,onChange:P}),e(q,{label:"Frontend data",checked:V,onChange:N}),e(q,{label:"Backend data",checked:U,onChange:K})]})]}),e(c,{}),t(p,{direction:"column",spacing:1,children:[e(H,{title:"Session & Access",original:o.session+"\n"+o.access,edited:L.sessionAccess,onChange:Q("sessionAccess"),onCopy:e=>void Z(e)}),e(H,{title:"Configuration (entities)",original:o.configuration,edited:L.configuration,onChange:Q("configuration"),onCopy:e=>void Z(e)}),e(H,{title:"Published Data",original:o.publishedData,edited:L.publishedData,onChange:Q("publishedData"),onCopy:e=>void Z(e)}),""!==o.frontendData&&e(H,{title:"Frontend Data",original:o.frontendData,edited:L.frontendData,onChange:Q("frontendData"),onCopy:e=>void Z(e)}),""!==o.backendData&&e(H,{title:"Backend Data",original:o.backendData,edited:L.backendData,onChange:Q("backendData"),onCopy:e=>void Z(e)})]})]})}),t(r,{sx:{p:2,borderTop:"1px solid #e9ecef"},children:[e(F,{onClick:et,children:"Save to file"}),e(F,{onClick:ee,children:"Copy to clipboard"}),e(F,{onClick:d,children:"Close"})]}),e(O,{open:null!==G,error:G,onClose:()=>{J(null)}})]})};export const CreateMockYaml=()=>{let n=P(),i=D(),{effectiveMockTemplates:r}=B(),l=I(),s=w(),c=z(),d=W(),p=C(),f=M(),g=j(),k=S(),A=c??f,T=d??g,$=p??k,[O,R]=v([]),V=n?i:-1,[U,q]=v(""),[H,L]=v(),[Y,G]=v(),[J,Q]=v();b(()=>{(async()=>{var e;let t;G(((e=h(await l.requestSessionToken())).data&&"object"==typeof e.data&&("object"==typeof e.data.tags&&0===Object.keys(e.data.tags).length&&delete e.data.tags,t=e.data),{role:e.role,data:t}))})()},[l]);let X=E();b(()=>{Q(X??void 0)},[X]);let[Z,_]=v(),[ee,et]=v();b(()=>{_(s?.viewMode?"read-revision":"owner")},[s]);let eo=y();b(()=>{eo?et(eo.accessInfo.viewMode?"read-revision":"owner"):et(void 0)},[eo,eo?.accessInfo.viewMode]),b(()=>{if(!n)return void R([]);let e=n.storeSystem.stateSlices.committed.value.state;R([...e.entities]),q(e.rootEntityType);let t=n.storeSystem.stateSlices.committed.subscribe(e=>{R([...e.state.entities]),q(e.state.rootEntityType)});return()=>{t.unsubscribe()}},[n]);let[ea,en]=v(!1);return t(o,{children:[e(a,{component:"div",sx:{borderBottom:"1px solid #e9ecef",backgroundColor:"#f8f9fa",px:1.5,py:1,display:"flex",flexDirection:"column",gap:1.5,mb:0},children:t(a,{component:"div",sx:{display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between"},children:[e(m,{variant:"subtitle2",sx:{fontWeight:600,color:"#495057",fontSize:"12px"},children:"Create mock yaml from current state"}),e(u,{title:-1===V?"No configuration is loaded yet — load a configuration to capture its state":"Capture the current session, access, configuration and data as a mock template",placement:"left",arrow:!0,enterDelay:300,children:e("span",{children:e(F,{variant:"secondary",onClick:e=>{let t,o,a,n,i,l;e.stopPropagation(),t=x({session:{role:(J??Y)?.role??"anonymous",data:(J??Y)?.data??{}}}),o=x({access:{access:ee??Z??"owner"}}),a=x({configuration:{entities:O,modelVersion:V,rootEntityType:U}}),n=A&&Object.keys(A).length>=1?x({publishedData:{data:A}}):"",i=T&&Object.keys(T).length>=1?x({frontendData:{data:T}}):"",l=$&&Object.keys($).length>=1?x({backendData:{data:$}}):"",L({order:(r.length??0)+1,configuration:a,session:t,access:o,publishedData:n,frontendData:i,backendData:l}),en(!0)},sx:N,disabled:-1===V,children:"Create Mock"})})})]})}),H&&e(K,{yaml:H,open:ea,onClose:()=>{en(!1)}})]})};
7
+ ${a.errors.join("\n")}`),null)},ee=async()=>{let e=_();null!==e&&await Z(e)},et=async()=>{if(""===y)return void f("Enter a key for the mock file",{variant:"error"});let e=y+".yaml";if(u.find(e=>e.key===y))return void f(`A mock template '${e}' already exists`,{variant:"error"});if(b)return void f("Cannot save files in local mode",{variant:"error"});if("connected"!==x)return void f("Not connected to server. Cannot save file.",{variant:"error"});let t=_();if(null!==t)try{await C.mutateAsync({fileName:e,content:t}),f(`Mock file ${e} saved successfully!`,{variant:"success"})}catch(e){f(e instanceof Error?e.message:"Failed to save mock file",{variant:"error"})}};return t(i,{open:n,onClose:d,maxWidth:"md",fullWidth:!0,children:[e(s,{sx:{fontSize:"14px",fontWeight:600,py:1.5,px:2,borderBottom:"1px solid #e9ecef"},children:"Created Mock Data"}),e(l,{sx:{p:2},children:t(a,{component:"div",sx:{display:"flex",flexDirection:"column",gap:2,pt:1},children:[t(a,{component:"div",sx:{display:"flex",flexDirection:"column",gap:1},children:[e(R,{title:"Key",value:y,setValue:D,placeholder:"e.g. 'regularUser', also in the filename"}),e(R,{title:"Title",value:w,setValue:S,placeholder:"e.g. 'Regular User'"}),e(R,{title:"Description",value:j,setValue:M,placeholder:"Human readable description of the mock data"}),t(a,{component:"div",sx:{display:"flex",alignItems:"center",gap:1,flexWrap:"wrap"},children:[e(m,{variant:"subtitle2",sx:{fontSize:"11px",fontWeight:600,color:"#495057",minWidth:"80px"},children:"Include"}),e(H,{label:"Session & Access",checked:W,onChange:z}),e(H,{label:"Configuration",checked:E,onChange:I}),e(H,{label:"Published data",checked:A,onChange:P}),e(H,{label:"Frontend data",checked:V,onChange:N}),e(H,{label:"Backend data",checked:U,onChange:L})]})]}),e(c,{}),t(p,{direction:"column",spacing:1,children:[e(K,{title:"Session & Access",original:o.session+"\n"+o.access,edited:Y.sessionAccess,onChange:Q("sessionAccess"),onCopy:e=>void Z(e)}),e(K,{title:"Configuration (entities)",original:o.configuration,edited:Y.configuration,onChange:Q("configuration"),onCopy:e=>void Z(e)}),e(K,{title:"Published Data",original:o.publishedData,edited:Y.publishedData,onChange:Q("publishedData"),onCopy:e=>void Z(e)}),""!==o.frontendData&&e(K,{title:"Frontend Data",original:o.frontendData,edited:Y.frontendData,onChange:Q("frontendData"),onCopy:e=>void Z(e)}),""!==o.backendData&&e(K,{title:"Backend Data",original:o.backendData,edited:Y.backendData,onChange:Q("backendData"),onCopy:e=>void Z(e)})]})]})}),t(r,{sx:{p:2,borderTop:"1px solid #e9ecef"},children:[e(F,{onClick:et,children:"Save to file"}),e(F,{onClick:ee,children:"Copy to clipboard"}),e(F,{onClick:d,children:"Close"})]}),e(T,{open:null!==G,error:G,onClose:()=>{J(null)}})]})};export const CreateMockYaml=()=>{let n=P(),i=D(),{effectiveMockTemplates:r}=O(),{sessionPayload:l}=E(),s=w(),c=z(),d=W(),p=y(),f=M(),h=j(),k=S(),A=c??f,$=d??h,B=p??k,[T,R]=v([]),V=n?i:-1,[U,H]=v(""),[K,Y]=v(),q=b(()=>null===l?void 0:(e=>{let{tags:t,...o}=e.data,a="object"==typeof t&&null!==t&&0===Object.keys(t).length;return{role:e.role,data:a?o:e.data}})(l),[l]),[G,J]=v(),Q=I();g(()=>{J(Q??void 0)},[Q]);let[X,Z]=v(),[_,ee]=v();g(()=>{Z(s?.viewMode?"read-revision":"owner")},[s]);let et=C();g(()=>{et?ee(et.accessInfo.viewMode?"read-revision":"owner"):ee(void 0)},[et,et?.accessInfo.viewMode]),g(()=>{if(!n)return void R([]);let e=n.storeSystem.stateSlices.committed.value.state;R([...e.entities]),H(e.rootEntityType);let t=n.storeSystem.stateSlices.committed.subscribe(e=>{R([...e.state.entities]),H(e.state.rootEntityType)});return()=>{t.unsubscribe()}},[n]);let[eo,ea]=v(!1);return t(o,{children:[e(a,{component:"div",sx:{borderBottom:"1px solid #e9ecef",backgroundColor:"#f8f9fa",px:1.5,py:1,display:"flex",flexDirection:"column",gap:1.5,mb:0},children:t(a,{component:"div",sx:{display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between"},children:[e(m,{variant:"subtitle2",sx:{fontWeight:600,color:"#495057",fontSize:"12px"},children:"Create mock yaml from current state"}),e(u,{title:-1===V?"No configuration is loaded yet — load a configuration to capture its state":"Capture the current session, access, configuration and data as a mock template",placement:"left",arrow:!0,enterDelay:300,children:e("span",{children:e(F,{variant:"secondary",onClick:e=>{let t,o,a,n,i,l;e.stopPropagation(),t=x({session:{role:(G??q)?.role??"anonymous",data:(G??q)?.data??{}}}),o=x({access:{access:_??X??"owner"}}),a=x({configuration:{entities:T,modelVersion:V,rootEntityType:U}}),n=A&&Object.keys(A).length>=1?x({publishedData:{data:A}}):"",i=$&&Object.keys($).length>=1?x({frontendData:{data:$}}):"",l=B&&Object.keys(B).length>=1?x({backendData:{data:B}}):"",Y({order:(r.length??0)+1,configuration:a,session:t,access:o,publishedData:n,frontendData:i,backendData:l}),ea(!0)},sx:N,disabled:-1===V,children:"Create Mock"})})})]})}),K&&e(L,{yaml:K,open:eo,onClose:()=>{ea(!1)}})]})};
@@ -18,6 +18,8 @@ export interface EditorMockProviderProps {
18
18
  readonly children: React.ReactNode;
19
19
  readonly mockTemplates?: MockTemplateDefinition[];
20
20
  readonly autoApplyTemplate?: boolean;
21
+ /** Applied on mount in place of the stored template, without being stored. */
22
+ readonly initialTemplateKey?: string;
21
23
  readonly environmentKey?: string;
22
24
  }
23
25
  export declare const EditorMockProvider: (props: EditorMockProviderProps) => import("react/jsx-runtime").JSX.Element;
@@ -1 +1 @@
1
- import{jsx as e}from"react/jsx-runtime";import{createContext as t,useCallback as r,useContext as o,useEffect as n,useMemo as a,useRef as s,useState as c}from"react";import{createUnsignedJWT as i,memoryStorage as l}from"#package/client";import{createInitialDomainState as d}from"#package/domain";import{useApplicationRuntime as u,useIntegrationService as m,useModal as p,useMountGuard as f}from"#package/react-sdk";import{useEditorConnection as w}from"../services/EditorConnectionContext.js";import{trpc as g}from"../services/trpc.js";import{ConfirmMemoryModeModal as y}from"./ConfirmMemoryModeModal.js";import{ValidationErrorModal as b}from"./ValidationErrorModal.js";let h=e=>{let t=e??("u">typeof window?window.location.pathname:"default");return`phx-editor-template:${t}`},k=e=>`template-configuration-${e}`,v=t(null);export const EditorMockProvider=t=>{let{children:o,mockTemplates:E,autoApplyTemplate:I,environmentKey:C}=t,V=s(!1),P=s(0),S=s(null),[M,x]=c(null),[D,A]=c([]),[R,T]=c(null),[j,$]=c({session:null,access:null,embeddedView:null}),B=f(),F=u(),L=F.actions.overrides,O=m(),{showModal:_}=p(),{localMode:q}=w(),z=a(()=>[...E&&E.length>0?E:D].sort((e,t)=>(e.order??1/0)-(t.order??1/0)),[E,D]),G=r(()=>F.selectors.spec.getConfiguratorFactory(),[F]),H=r(e=>(G().parseSessionData(e.data),{role:e.role,data:e.data}),[G]),J=r(e=>G().parsePublishedData(e.data),[G]),K=r(e=>G().parseFrontendData(e.data),[G]),N=r(e=>{let t=G();if(!t.hasBackendData)throw Error("Backend data mock could not be applied, because backend data is not supported by the current domain configuration. Please use a domain that supports backend data.");return t.parseBackendData(e.data)},[G]),Q=r(e=>{if("recipe"===e.type){if(!e.collection)throw Error("Embedded view mock could not be applied, because a collection is required for recipe type embedded views. Please specify a collection for this mock.");return{type:"recipe",recipeId:`Recipe_${Math.floor(1e6*Math.random())}`,collection:e.collection,...e.rootRecipeId?{rootRecipeId:e.rootRecipeId}:{}}}return{type:"preset",presetId:`Preset_${Math.floor(1e6*Math.random())}`}},[]),U=r((e,t)=>{if(l.has(e))return null;let r=F.selectors.loadedData.getConfiguratorRawLoadedData();if(null===r)return null;let o=F.selectors.domainContext.configurator,n=o.getInitializationState().isCurrent?o.getStoreSystem().stateSlices.committed.value.state.entities:r.initialEntities;return{configurationId:e,revisionId:t??r.initialRevisionId,modelVersion:r.modelVersion,rootEntityType:r.rootEntityType,data:n}},[F]),W=r((e,t)=>{let r=U(e,t);null!==r&&l.set(e,[r])},[U]),X=r(async()=>!!("server"!==F.selectors.environment.getBasePersistenceConfig().type||F.selectors.overrides.getActive())||new Promise(e=>{_(y,{onConfirm:()=>e(!0),onCancel:()=>e(!1)})}),[F,_]),Y=s(null),Z=r((e,t)=>{let r=e instanceof Error?e.message:t;Y.current?.destroy(),Y.current=_(b,{error:r})},[_]),ee=r(async e=>{try{if(!await X())return;let t=H(e),r=F.selectors.access.getConfiguratorRawAccessService();null!==r&&W(r.configurationId,r.accessInfo.revisionId),L.setSessionContext(t),$(t=>({...t,session:e}))}catch(e){Z(e,"Session mock could not be applied, because an unknown error has occurred. Please check the mock data and try again.")}},[X,H,F,W,L,Z]),et=r(async e=>{try{if(!await X())return;let t=F.selectors.access.getConfiguratorRawAccessInfo();null!==t&&W(t.configurationId,t.revisionId),L.setAccessLevel(e.access),$(t=>({...t,access:e}))}catch(e){Z(e,"Access mock could not be applied, because an unknown error has occurred. Please check the mock data and try again.")}},[X,F,W,L,Z]),er=r(async e=>{try{if(!await X())return;let t=Q(e),r=F.selectors.access.getConfiguratorRawAccessInfo();null!==r&&W(r.configurationId,r.revisionId),O.enterEmbeddedView(t),L.setEmbeddedViewActive(!0),$(t=>({...t,embeddedView:e}))}catch(e){Z(e,"Embedded view mock could not be applied, because an unknown error has occurred. Please check the mock data and try again.")}},[X,Q,F,W,O,L,Z]),eo=r(async()=>{try{let e=R?H(R.session):null;L.setSessionContext(e),$(e=>({...e,session:null}))}catch(e){Z(e,"Session mock could not be reset, because an unknown error has occurred. Please check the active template and try again.")}},[L,R,H,Z]),en=r(async()=>{L.setAccessLevel(R?.access.access??null),$(e=>({...e,access:null}))},[L,R]),ea=r(async()=>{try{let e=R?.embeddedView?Q(R.embeddedView):null;null!==e?O.enterEmbeddedView(e):O.exitEmbeddedView(),L.setEmbeddedViewActive(null!==e),$(e=>({...e,embeddedView:null}))}catch(e){Z(e,"Embedded view mock could not be reset, because an unknown error has occurred. Please check the active template and try again.")}},[O,L,R,Q,Z]),es=r(e=>{null!==e&&l.delete(k(e))},[]),ec=r(async()=>{P.current+=1,es(S.current),S.current=null,x(null),T(null),$({session:null,access:null,embeddedView:null}),O.exitEmbeddedView(),L.clearMockOverrides();try{localStorage.removeItem(h(C))}catch{console.warn("[Editor] Failed to clear template key from localStorage")}},[O,L,C,es]),ei=r(async(e,t)=>{let r=t?.generation??++P.current;try{let t=e.embeddedView?Q(e.embeddedView):null,n=H(e.session),a=e.publishedData?J(e.publishedData):null,s=e.frontendData?K(e.frontendData):null,c=e.backendData?N(e.backendData):null,u=null,m=null,p=F.selectors.access.getConfiguratorRawAccessInfo(),f=null===p?null:U(p.configurationId,p.revisionId);if(e.configuration){let t=k(e.key),r="latest",o=e.configuration,n=G(),a=n.validateAndMigrateState(o.entities,o.modelVersion);d(a,o.rootEntityType),u={configurationId:t,revisionId:r,modelVersion:n.modelVersion,rootEntityType:o.rootEntityType,data:a};let s=Math.floor(Date.now()/1e3),c=i({configurationId:t,revisionId:r,access:e.access.access,iat:s,exp:s+3600});m={configurationId:t,accessInfo:{raw:c,viewMode:"read-revision"===e.access.access,revisionId:r,configurationId:t}}}else null!==p&&(u=U(p.configurationId,p.revisionId));if(r!==P.current)return;null!==f&&l.set(f.configurationId,[f]),null!==u&&l.set(u.configurationId,[u]),null!==t?O.enterEmbeddedView(t):O.exitEmbeddedView(),L.updateOverrides({accessService:m,accessLevel:null===m?e.access.access:null,sessionContext:n,publishedData:a,frontendData:s,backendData:c,webComponentProperties:e.webComponentProperties??null,embeddedViewActive:null!==t,persistenceConfig:F.selectors.overrides.getPersistenceConfig()}),S.current!==e.key&&es(S.current),S.current=e.key,x(e.key),T(e),$({session:null,access:null,embeddedView:null});var o=e.key;try{localStorage.setItem(h(C),o)}catch{console.warn("[Editor] Failed to store template key to localStorage")}}catch(o){let r="Template could not be applied, because an unknown error has occurred. Please check the template configuration and try again.";if(t?.errorPresentation==="console")return void console.warn(`[Editor] Template "${e.title}" could not be applied:`,o instanceof Error?o.message:r);Z(o,r)}},[H,G,J,K,N,Q,O,L,Z,C,F,es,U]),el=r(async e=>{let t=++P.current;await X()&&t===P.current&&await ei(e,{generation:t})},[X,ei]);g.onMockTemplateChange.useSubscription(void 0,{enabled:!q,onData:e=>{B()&&A(e.templates)}}),n(()=>{if(z&&z.length>0&&!V.current){V.current=!0;let e=(e=>{try{return localStorage.getItem(h(e))}catch{return null}})(C);if(e){let t=z.find(t=>t.key===e);if(t)return void ei(t,{errorPresentation:"console"});console.warn(`[Editor] Stored template "${e}" not found in available templates`)}if(I){let e=z[0];e&&ei(e,{errorPresentation:"console"})}}},[I,z,ei,C]);let ed=a(()=>({activeTemplateKey:M,activeCustomizations:j,effectiveMockTemplates:z,applySessionMock:ee,applyAccessMock:et,resetSessionOverride:eo,resetAccessOverride:en,applyEmbeddedViewMock:er,resetEmbeddedViewOverride:ea,applyTemplate:el,resetAllMocks:ec}),[M,j,z,ee,et,eo,en,er,ea,el,ec]);return e(v.Provider,{value:ed,children:o})};export const useEditorMockContext=()=>{let e=o(v);if(null===e)throw Error("useEditorMockContext must be used within EditorMockProvider");return e};
1
+ import{jsx as e}from"react/jsx-runtime";import{createContext as t,useCallback as r,useContext as o,useEffect as n,useMemo as a,useRef as s,useState as i}from"react";import{AccessLevel as c}from"@salsita-ai/contracts/api";import{createUnsignedJWT as l,memoryStorage as d}from"#package/client";import{createInitialDomainState as u}from"#package/domain";import{useApplicationRuntime as m,useIntegrationService as p,useModal as f,useMountGuard as w}from"#package/react-sdk";import{useEditorConnection as y}from"../services/EditorConnectionContext.js";import{trpc as g}from"../services/trpc.js";import{ConfirmMemoryModeModal as b}from"./ConfirmMemoryModeModal.js";import{ValidationErrorModal as h}from"./ValidationErrorModal.js";let k=e=>{let t=e??("u">typeof window?window.location.pathname:"default");return`phx-editor-template:${t}`},v=e=>`template-configuration-${e}`,E=t(null);export const EditorMockProvider=t=>{let{children:o,mockTemplates:I,autoApplyTemplate:C,initialTemplateKey:V,environmentKey:P}=t,S=s(!1),M=s(0),x=s(null),[D,R]=i(null),[A,T]=i([]),[$,j]=i(null),[B,F]=i({session:null,access:null,embeddedView:null}),L=w(),O=m(),_=O.actions.overrides,q=p(),{showModal:z}=f(),{localMode:G}=y(),H=a(()=>[...I&&I.length>0?I:A].sort((e,t)=>(e.order??1/0)-(t.order??1/0)),[I,A]),J=r(()=>O.selectors.spec.getConfiguratorFactory(),[O]),K=r(e=>(J().parseSessionData(e.data),{role:e.role,data:e.data}),[J]),N=r(e=>J().parsePublishedData(e.data),[J]),Q=r(e=>J().parseFrontendData(e.data),[J]),U=r(e=>{let t=J();if(!t.hasBackendData)throw Error("Backend data mock could not be applied, because backend data is not supported by the current domain configuration. Please use a domain that supports backend data.");return t.parseBackendData(e.data)},[J]),W=r(e=>{if("recipe"===e.type){if(!e.collection)throw Error("Embedded view mock could not be applied, because a collection is required for recipe type embedded views. Please specify a collection for this mock.");return{type:"recipe",recipeId:`Recipe_${Math.floor(1e6*Math.random())}`,collection:e.collection,...e.rootRecipeId?{rootRecipeId:e.rootRecipeId}:{}}}return{type:"preset",presetId:`Preset_${Math.floor(1e6*Math.random())}`}},[]),X=r((e,t)=>{if(d.has(e))return null;let r=O.selectors.loadedData.getConfiguratorRawLoadedData();if(null===r)return null;let o=O.selectors.domainContext.configurator,n=o.getInitializationState().isCurrent?o.getStoreSystem().stateSlices.committed.value.state.entities:r.initialEntities;return{configurationId:e,revisionId:t??r.initialRevisionId,modelVersion:r.modelVersion,rootEntityType:r.rootEntityType,data:n}},[O]),Y=r((e,t)=>{let r=X(e,t);null!==r&&d.set(e,[r])},[X]),Z=r(async()=>!!("server"!==O.selectors.environment.getBasePersistenceConfig().type||O.selectors.overrides.getActive())||new Promise(e=>{z(b,{onConfirm:()=>e(!0),onCancel:()=>e(!1)})}),[O,z]),ee=s(null),et=r((e,t)=>{let r=e instanceof Error?e.message:t;ee.current?.destroy(),ee.current=z(h,{error:r})},[z]),er=r(async e=>{try{if(!await Z())return;let t=K(e),r=O.selectors.access.getConfiguratorRawAccessService();null!==r&&Y(r.configurationId,r.accessInfo.revisionId),_.setSessionContext(t),F(t=>({...t,session:e}))}catch(e){et(e,"Session mock could not be applied, because an unknown error has occurred. Please check the mock data and try again.")}},[Z,K,O,Y,_,et]),eo=r(async e=>{try{if(!await Z())return;let t=O.selectors.access.getConfiguratorRawAccessInfo();null!==t&&Y(t.configurationId,t.revisionId),_.setAccessLevel(e.access),F(t=>({...t,access:e}))}catch(e){et(e,"Access mock could not be applied, because an unknown error has occurred. Please check the mock data and try again.")}},[Z,O,Y,_,et]),en=r(async e=>{try{if(!await Z())return;let t=W(e),r=O.selectors.access.getConfiguratorRawAccessInfo();null!==r&&Y(r.configurationId,r.revisionId),q.enterEmbeddedView(t),_.setEmbeddedViewActive(!0),F(t=>({...t,embeddedView:e}))}catch(e){et(e,"Embedded view mock could not be applied, because an unknown error has occurred. Please check the mock data and try again.")}},[Z,W,O,Y,q,_,et]),ea=r(async()=>{try{let e=$?K($.session):null;_.setSessionContext(e),F(e=>({...e,session:null}))}catch(e){et(e,"Session mock could not be reset, because an unknown error has occurred. Please check the active template and try again.")}},[_,$,K,et]),es=r(async()=>{_.setAccessLevel($?.access.access??null),F(e=>({...e,access:null}))},[_,$]),ei=r(async()=>{try{let e=$?.embeddedView?W($.embeddedView):null;null!==e?q.enterEmbeddedView(e):q.exitEmbeddedView(),_.setEmbeddedViewActive(null!==e),F(e=>({...e,embeddedView:null}))}catch(e){et(e,"Embedded view mock could not be reset, because an unknown error has occurred. Please check the active template and try again.")}},[q,_,$,W,et]),ec=r(e=>{null!==e&&d.delete(v(e))},[]),el=r(async()=>{M.current+=1,ec(x.current),x.current=null,R(null),j(null),F({session:null,access:null,embeddedView:null}),q.exitEmbeddedView(),_.clearMockOverrides();try{localStorage.removeItem(k(P))}catch{console.warn("[Editor] Failed to clear template key from localStorage")}},[q,_,P,ec]),ed=r(async(e,t)=>{let r=t.generation??++M.current;try{let o=e.embeddedView?W(e.embeddedView):null,n=K(e.session),a=e.publishedData?N(e.publishedData):null,s=e.frontendData?Q(e.frontendData):null,i=e.backendData?U(e.backendData):null,m=null,p=null,f=O.selectors.access.getConfiguratorRawAccessInfo(),w=null===f?null:X(f.configurationId,f.revisionId);if(e.configuration){let t=v(e.key),r="latest",o=e.configuration,n=J(),a=n.validateAndMigrateState(o.entities,o.modelVersion);u(a,o.rootEntityType),m={configurationId:t,revisionId:r,modelVersion:n.modelVersion,rootEntityType:o.rootEntityType,data:a};let s=Math.floor(Date.now()/1e3),i=l({configurationId:t,revisionId:r,access:e.access.access,iat:s,exp:s+3600});p={configurationId:t,accessInfo:{raw:i,access:"owner"===e.access.access?c.Owner:"read-revision"===e.access.access?c.ReadRevision:c.Read,viewMode:"read-revision"===e.access.access,revisionId:r,configurationId:t}}}else null!==f&&(m=X(f.configurationId,f.revisionId));if(r!==M.current)return;null!==w&&d.set(w.configurationId,[w]),null!==m&&d.set(m.configurationId,[m]),null!==o?q.enterEmbeddedView(o):q.exitEmbeddedView(),_.updateOverrides({accessService:p,accessLevel:null===p?e.access.access:null,sessionContext:n,publishedData:a,frontendData:s,backendData:i,webComponentProperties:e.webComponentProperties??null,embeddedViewActive:null!==o,persistenceConfig:O.selectors.overrides.getPersistenceConfig()}),x.current!==e.key&&ec(x.current),x.current=e.key,R(e.key),j(e),F({session:null,access:null,embeddedView:null}),t.persist&&((e,t)=>{try{localStorage.setItem(k(t),e)}catch{console.warn("[Editor] Failed to store template key to localStorage")}})(e.key,P)}catch(o){let r="Template could not be applied, because an unknown error has occurred. Please check the template configuration and try again.";if("console"===t.errorPresentation)return void console.warn(`[Editor] Template "${e.title}" could not be applied:`,o instanceof Error?o.message:r);et(o,r)}},[K,J,N,Q,U,W,q,_,et,P,O,ec,X]),eu=r(async e=>{let t=++M.current;await Z()&&t===M.current&&await ed(e,{generation:t,persist:!0})},[Z,ed]);g.onMockTemplateChange.useSubscription(void 0,{enabled:!G,onData:e=>{L()&&T(e.templates)}}),n(()=>{if(H&&H.length>0&&!S.current){if(S.current=!0,V){let e=H.find(e=>e.key===V);if(e)return void ed(e,{errorPresentation:"console",persist:!1});console.warn(`[Editor] Initial template "${V}" not found in available templates`)}let e=(e=>{try{return localStorage.getItem(k(e))}catch{return null}})(P);if(e){let t=H.find(t=>t.key===e);if(t)return void ed(t,{errorPresentation:"console",persist:!0});console.warn(`[Editor] Stored template "${e}" not found in available templates`)}if(C){let e=H[0];e&&ed(e,{errorPresentation:"console",persist:!0})}}},[C,V,H,ed,P]);let em=a(()=>({activeTemplateKey:D,activeCustomizations:B,effectiveMockTemplates:H,applySessionMock:er,applyAccessMock:eo,resetSessionOverride:ea,resetAccessOverride:es,applyEmbeddedViewMock:en,resetEmbeddedViewOverride:ei,applyTemplate:eu,resetAllMocks:el}),[D,B,H,er,eo,ea,es,en,ei,eu,el]);return e(E.Provider,{value:em,children:o})};export const useEditorMockContext=()=>{let e=o(E);if(null===e)throw Error("useEditorMockContext must be used within EditorMockProvider");return e};
@@ -0,0 +1,17 @@
1
+ /** An answer the builder gave, held back for a moment so that a slip can be undone. */
2
+ export interface HeldAnswer {
3
+ readonly secondsLeft: number;
4
+ readonly sending: boolean;
5
+ }
6
+ interface VariantAnswerFooterProps {
7
+ readonly label: string;
8
+ readonly canUse: boolean;
9
+ readonly held: HeldAnswer | null;
10
+ readonly sendError: string | null;
11
+ readonly onUse: () => void;
12
+ readonly onUndo: () => void;
13
+ readonly onSendNow: () => void;
14
+ }
15
+ /** Confirms the displayed option, with a short hold that lets an accidental answer be undone. */
16
+ export declare const VariantAnswerFooter: import("react").MemoExoticComponent<(props: VariantAnswerFooterProps) => import("react/jsx-runtime").JSX.Element>;
17
+ export {};
@@ -0,0 +1 @@
1
+ import{jsx as o,jsxs as e}from"react/jsx-runtime";import{CircularProgress as r,Typography as n}from"@mui/material";import{memo as f}from"react";import{EditorButton as i}from"../common/EditorButton.js";import{INK as t,actionButton as d,ellipsis as l,primaryButton as s}from"./variant-preview-styles.js";export const VariantAnswerFooter=f(f=>{let{label:a,canUse:c,held:x,sendError:p}=f;if(x){let l,s;return e("div",{role:"status",style:{display:"flex",flexWrap:"wrap",alignItems:"center",gap:12,boxSizing:"border-box",minHeight:40,padding:"0 12px",borderRadius:6,backgroundColor:t,color:"#ffffff"},children:[x.sending&&o(r,{size:16,"aria-label":"Sending",sx:{color:"#ffffff"}}),o(n,{sx:{flex:"1 1 200px",fontSize:"13px",fontWeight:600},children:(l=`“${a}” goes to the agent`,s=x.sending?" now…":` in ${x.secondsLeft} s.`,`${l}${s}`)}),!x.sending&&o(i,{autoFocus:!0,"data-testid":"variant-undo",onClick:f.onUndo,sx:{...d,backgroundColor:"transparent",border:"2px solid #ffffff",color:"#ffffff","&:hover":{backgroundColor:"rgba(255, 255, 255, 0.12)",borderColor:"#ffffff",color:"#ffffff"}},children:"Undo"}),!x.sending&&o(i,{"data-testid":"variant-send-now",onClick:f.onSendNow,sx:{...d,backgroundColor:"#ffffff",border:"2px solid #ffffff",color:t,"&:hover":{backgroundColor:"#e9ecef",borderColor:"#e9ecef",color:t}},children:"Send now"})]})}return e("div",{children:[o("div",{style:{display:"flex",justifyContent:"flex-end"},children:o(i,{"data-testid":"variant-use",disabled:!c,onClick:f.onUse,sx:{...d,...s,minWidth:0,maxWidth:"100%"},children:e("span",{style:{minWidth:0,...l},children:["Use ",a]})})}),null!==p&&o(n,{role:"alert",sx:{mt:.75,px:.5,fontSize:"13px",color:"#b02a37"},children:p})]})});
@@ -0,0 +1,6 @@
1
+ import { type ReactNode, type RefCallback } from 'react';
2
+ export declare const HTML_VARIANT_FRAME_ATTRIBUTE = "data-phx-html-variant";
3
+ export declare const useConfiguratorContainerRef: () => RefCallback<HTMLDivElement>;
4
+ export declare const VariantPreviewHandler: (props: {
5
+ readonly children: ReactNode;
6
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ import{jsx as e,jsxs as t}from"react/jsx-runtime";import{Box as r,Modal as i,Paper as n,Typography as o,useMediaQuery as a}from"@mui/material";import{createContext as l,useCallback as d,useContext as s,useEffect as p,useRef as c,useState as u}from"react";import{useWebComponent as f}from"../EditorRuntimeProvider.js";import{EditorButton as m}from"../common/EditorButton.js";import{importImplementationFile as h}from"../domain-editors/import-implementation-file.js";import{useEditorConnection as v}from"../services/EditorConnectionContext.js";import{trpc as x}from"../services/trpc.js";import{VariantAnswerFooter as g}from"./VariantAnswerFooter.js";import{INK as b,MUTED as w,variantDialogGeometry as y}from"./variant-preview-styles.js";export const HTML_VARIANT_FRAME_ATTRIBUTE="data-phx-html-variant";let E=l(null);export const useConfiguratorContainerRef=()=>{let e=s(E);if(!e)throw Error("The configurator container must be inside VariantPreviewHandler");return e};let I=l=>{let{request:d}=l,s=a("(max-width:899px)"),f=s?y.compact:y.regular,v=x.getVariantBaseline.useQuery({requestId:d.requestId},{refetchOnWindowFocus:!1}),E=x.applyVariantFiles.useMutation(),I=x.submitVariantChoice.useMutation(),[T,C]=u(null),[S,j]=u(!1),[z,R]=u(null),[V,k]=u(null),q=c(!1),A=d.variants.find(e=>e.id===T),H=A?.kind==="page"?A:null,W=A?.label??"Original";p(()=>{v.data&&C(v.data.choice)},[v.data]);let M=async e=>{if(!q.current&&v.data&&!V){q.current=!0,j(!0),R(null);try{let t=new Map,r=d.variants.find(t=>t.id===e);if(r?.kind==="script"){let e=await h(r.url);if("function"!=typeof e)throw Error("Export the variant script as the default function");let i=new Map(v.data.files.map(e=>[e.fileName,e.content]));await e({read:e=>{let t=i.get(e);if(null==t)throw Error(`The baseline has no file named ${e}`);return t},write:(e,r)=>{t.set(e,r)},remove:e=>{t.set(e,null)}})}await E.mutateAsync({requestId:d.requestId,choice:e,files:[...t].map(([e,t])=>({fileName:e,content:t}))}),C(e)}catch(e){R(e instanceof Error?e.message:String(e))}finally{q.current=!1,j(!1)}}},P=async()=>{if(V&&!V.sending){k({...V,sending:!0});try{await I.mutateAsync({requestId:d.requestId,choice:T})}catch(e){R(e instanceof Error?e.message:String(e)),k(null)}}};p(()=>{if(!V||V.sending)return;if(0===V.secondsLeft)return void P();let e=window.setTimeout(()=>{k(e=>e?{...e,secondsLeft:e.secondsLeft-1}:null)},1e3);return()=>window.clearTimeout(e)});let B=[{id:null,label:"Original",description:"The project before these changes."},...d.variants];return e(i,{open:!0,disableEscapeKeyDown:!0,BackdropProps:{sx:{bgcolor:"rgba(33, 37, 41, 0.55)"}},sx:{zIndex:1400},children:t(n,{role:"dialog","aria-labelledby":"variant-preview-title","aria-describedby":"variant-preview-description","aria-modal":"true","data-testid":"variant-preview",elevation:16,sx:{position:"fixed",inset:f.inset,zIndex:1400,borderRadius:"12px",overflow:"hidden",border:"1px solid #dee2e6",display:"grid",gridTemplateRows:`${f.header}px minmax(0, 1fr) ${f.footer}px`,bgcolor:"#fff",pointerEvents:"none"},children:[e(r,{component:"div",sx:{display:"flex",alignItems:"center",gap:2,px:s?2:3,borderBottom:"1px solid #dee2e6",bgcolor:"#fff",pointerEvents:"auto",zIndex:2},children:t(r,{component:"div",sx:{flex:1,minWidth:0},children:[e(o,{id:"variant-preview-title",component:"h2",sx:{fontSize:19,fontWeight:600,color:b,lineHeight:1.35},children:d.title}),e(o,{id:"variant-preview-description",sx:{mt:.5,fontSize:13,color:w},children:d.description})]})}),t(r,{component:"div",sx:{display:"grid",gridTemplateColumns:`${f.choices}px minmax(0, 1fr)`,minHeight:0},children:[t(r,{component:"div",role:"group","aria-label":"Variant options",sx:{p:s?1:2,minHeight:0,overflowY:"auto",borderRight:"1px solid #dee2e6",bgcolor:"#f8f9fa",pointerEvents:"auto",zIndex:2},children:[e(o,{sx:{fontSize:11,fontWeight:600,letterSpacing:"0.06em",color:w,textTransform:"uppercase",mb:1,px:.5},children:"Compare options"}),B.map(r=>{let i=T===r.id;return t(m,{"data-testid":null===r.id?"variant-baseline":"variant-tab","aria-pressed":i,disabled:S||null!==V||!v.data,fullWidth:!0,onClick:()=>{M(r.id)},sx:{display:"block",textAlign:"left",mb:.5,p:s?.875:1.125,whiteSpace:"normal",bgcolor:i?"#e9eef5":"transparent",borderColor:"transparent",boxShadow:i?"inset 2px 0 #495057":"none","&:hover":{bgcolor:i?"#e9eef5":"#eef1f4",borderColor:"#adb5bd"}},children:[e(o,{component:"span",sx:{display:"block",fontSize:13,fontWeight:600,color:b},children:r.label}),e(o,{component:"span",sx:{display:"block",mt:.375,fontSize:11.5,lineHeight:1.35,color:w},children:r.description})]},null===r.id?"original":`variant:${r.id}`)})]}),t("div",{style:{position:"relative",minWidth:0,minHeight:0,zIndex:1},children:[e("div",{ref:H?null:l.previewContainerRef,"data-testid":"variant-configurator",style:{display:H?"none":"block",width:"100%",height:"100%",pointerEvents:"auto"}}),H&&e("iframe",{title:H.label,src:H.url,"data-testid":"variant-html","data-phx-html-variant":"",style:{position:"absolute",inset:0,width:"100%",height:"100%",border:0,pointerEvents:"auto"}},H.id)]})]}),e(r,{component:"div",sx:{px:s?1.5:2,py:1.5,borderTop:"1px solid #dee2e6",bgcolor:"#fff",pointerEvents:"auto",zIndex:2,overflowY:"auto"},children:e(g,{label:W,canUse:void 0!==v.data&&!S&&null===z,held:V,sendError:z??v.error?.message??null,onUse:()=>{R(null),k({secondsLeft:4,sending:!1})},onUndo:()=>k(null),onSendNow:()=>{P()}})})]})})};export const VariantPreviewHandler=r=>{let{localMode:i}=v(),n=f(),[o,a]=u(null),l=c(null),s=c(null),p=d(()=>{let e=s.current??l.current;e&&n&&n.parentNode!==e&&e.appendChild(n)},[n]),m=d(e=>{l.current=e,p()},[p]),h=d(e=>{s.current=e,p()},[p]);return x.onVariantPreview.useSubscription(void 0,{enabled:!i,onData:a}),t(E.Provider,{value:m,children:[r.children,o&&e(I,{request:o,previewContainerRef:h},o.requestId)]})};
@@ -0,0 +1,49 @@
1
+ export declare const INK = "#212529";
2
+ export declare const MUTED = "#5c636a";
3
+ export declare const actionButton: {
4
+ height: number;
5
+ px: number;
6
+ borderRadius: string;
7
+ fontSize: string;
8
+ fontWeight: number;
9
+ whiteSpace: string;
10
+ };
11
+ export declare const primaryButton: {
12
+ backgroundColor: string;
13
+ border: string;
14
+ color: string;
15
+ '&:hover': {
16
+ backgroundColor: string;
17
+ borderColor: string;
18
+ color: string;
19
+ };
20
+ '&:active': {
21
+ backgroundColor: string;
22
+ borderColor: string;
23
+ color: string;
24
+ };
25
+ '&.Mui-disabled': {
26
+ backgroundColor: string;
27
+ borderColor: string;
28
+ color: string;
29
+ };
30
+ };
31
+ export declare const ellipsis: {
32
+ readonly overflow: 'hidden';
33
+ readonly textOverflow: 'ellipsis';
34
+ readonly whiteSpace: 'nowrap';
35
+ };
36
+ export declare const variantDialogGeometry: {
37
+ readonly regular: {
38
+ readonly inset: 24;
39
+ readonly header: 80;
40
+ readonly footer: 68;
41
+ readonly choices: 240;
42
+ };
43
+ readonly compact: {
44
+ readonly inset: 8;
45
+ readonly header: 96;
46
+ readonly footer: 112;
47
+ readonly choices: 156;
48
+ };
49
+ };
@@ -0,0 +1 @@
1
+ export const INK="#212529";export const MUTED="#5c636a";export const actionButton={height:40,px:2,borderRadius:"6px",fontSize:"13px",fontWeight:500,whiteSpace:"nowrap"};export const primaryButton={backgroundColor:INK,border:`1px solid ${INK}`,color:"#ffffff","&:hover":{backgroundColor:"#343a40",borderColor:"#343a40",color:"#ffffff"},"&:active":{backgroundColor:"#495057",borderColor:"#495057",color:"#ffffff"},"&.Mui-disabled":{backgroundColor:"#adb5bd",borderColor:"#adb5bd",color:"#ffffff"}};export const ellipsis={overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"};export const variantDialogGeometry={regular:{inset:24,header:80,footer:68,choices:240},compact:{inset:8,header:96,footer:112,choices:156}};
@@ -1,4 +1,6 @@
1
1
  /* eslint-disable @typescript-eslint/triple-slash-reference */
2
+ // Resolved from the SDK's own `vite`, so a project's `import.meta.env` and asset imports type-check without a `vite` of its own
3
+ /// <reference types="vite/client" />
2
4
  /// <reference path="./asset-modules.d.ts" />
3
5
 
4
6
  export {}