@salsita-ai/sdk 0.50.0-develop.bb1eefaada → 0.50.0-develop.bb71259564

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 (1033) hide show
  1. package/README.md +1 -1
  2. package/dist/application/index.d.ts +1 -0
  3. package/dist/application/index.js +1 -1
  4. package/dist/application/mount-application.d.ts +1 -1
  5. package/dist/application/mount-application.js +1 -1
  6. package/dist/application/mount-configurator.d.ts +19 -0
  7. package/dist/application/mount-configurator.js +1 -0
  8. package/dist/application/mounted-application-runtime.d.ts +4 -0
  9. package/dist/application/mounted-application-runtime.js +1 -0
  10. package/dist/application/register-web-component.d.ts +2 -0
  11. package/dist/application/register-web-component.js +1 -0
  12. package/dist/application-spec/core/enhanced-json-value.d.ts +2 -31
  13. package/dist/application-spec/core/enhanced-json-value.js +1 -1
  14. package/dist/application-spec/core/index.d.ts +1 -3
  15. package/dist/application-spec/core/index.js +1 -1
  16. package/dist/application-spec/core/json-schema.d.ts +2 -52
  17. package/dist/application-spec/core/markers/index.d.ts +1 -1
  18. package/dist/application-spec/core/markers/index.js +1 -1
  19. package/dist/application-spec/core/markers/msg-marker.d.ts +2 -28
  20. package/dist/application-spec/core/markers/msg-marker.js +1 -1
  21. package/dist/application-spec/core/markers/raw-eval-write-marker.d.ts +1 -1
  22. package/dist/application-spec/core/markers/raw-eval-write-marker.js +1 -1
  23. package/dist/application-spec/core/markers/raw-read-write-marker.js +1 -1
  24. package/dist/application-spec/errors/diagnostic-codes.d.ts +15 -1
  25. package/dist/application-spec/errors/diagnostic-codes.js +1 -1
  26. package/dist/application-spec/errors/diagnostic-messages.d.ts +19 -2
  27. package/dist/application-spec/errors/diagnostic-messages.js +1 -1
  28. package/dist/application-spec/generate-application/code/domain-runtime-files.js +1 -1
  29. package/dist/application-spec/generate-application/code/project-scaffolding.js +2 -2
  30. package/dist/application-spec/generate-application/code/story-files.js +1 -1
  31. package/dist/application-spec/generate-application/code/templates/application-types.js +6 -6
  32. package/dist/application-spec/generate-application/code/templates/common/doc-comment.d.ts +2 -0
  33. package/dist/application-spec/generate-application/code/templates/common/doc-comment.js +1 -0
  34. package/dist/application-spec/generate-application/code/templates/configurator-globals.d.ts +2 -1
  35. package/dist/application-spec/generate-application/code/templates/configurator-globals.js +19 -6
  36. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/domain-factory-types.d.ts +35 -0
  37. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/domain-factory-types.js +5 -0
  38. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/index.d.ts +1 -0
  39. package/dist/application-spec/generate-application/code/templates/domain-spec/factory-types/index.js +1 -0
  40. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-domain-block.js +59 -63
  41. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.d.ts +8 -0
  42. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-invariants.js +1 -1
  43. package/dist/application-spec/generate-application/code/templates/domain-spec/index.d.ts +2 -1
  44. package/dist/application-spec/generate-application/code/templates/domain-spec/index.js +1 -1
  45. package/dist/application-spec/generate-application/code/templates/global-definition/generate-action-types.js +7 -7
  46. package/dist/application-spec/generate-application/code/templates/global-definition/generate-assistant-form-element-types.d.ts +12 -0
  47. package/dist/application-spec/generate-application/code/templates/global-definition/generate-assistant-form-element-types.js +7 -0
  48. package/dist/application-spec/generate-application/code/templates/global-definition/generate-phx-types.d.ts +43 -0
  49. package/dist/application-spec/generate-application/code/templates/global-definition/generate-phx-types.js +33 -0
  50. package/dist/application-spec/generate-application/code/templates/global-definition/index.d.ts +2 -0
  51. package/dist/application-spec/generate-application/code/templates/global-definition/index.js +1 -1
  52. package/dist/application-spec/generate-application/code/templates/globals.js +22 -44
  53. package/dist/application-spec/generate-application/code/templates/index.d.ts +2 -6
  54. package/dist/application-spec/generate-application/code/templates/index.js +1 -1
  55. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill-bundle.d.ts +10 -0
  56. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill-bundle.js +7 -0
  57. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill.js +1 -1
  58. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.d.ts +14 -7
  59. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.js +2 -2
  60. package/dist/application-spec/generate-application/code/templates/story/phx-module.d.ts +8 -2
  61. package/dist/application-spec/generate-application/code/templates/story/phx-module.js +15 -3
  62. package/dist/application-spec/generate-application/code/templates/story/wrapper.d.ts +3 -0
  63. package/dist/application-spec/generate-application/code/templates/story/wrapper.js +2 -1
  64. package/dist/application-spec/generate-application/implementations/phx-application-types.d.ts +25 -0
  65. package/dist/application-spec/generate-application/implementations/phx-application-types.js +1 -0
  66. package/dist/application-spec/generate-application/implementations/phx-domain.d.ts +36 -0
  67. package/dist/application-spec/generate-application/implementations/phx-domain.js +1 -0
  68. package/dist/application-spec/generate-application/implementations/phx-model.d.ts +24 -0
  69. package/dist/application-spec/generate-application/implementations/phx-model.js +1 -0
  70. package/dist/application-spec/generate-application/implementations/phx.d.ts +22 -0
  71. package/dist/application-spec/generate-application/implementations/phx.js +1 -0
  72. package/dist/application-spec/generate-application/index.d.ts +2 -0
  73. package/dist/application-spec/generate-application/index.js +1 -1
  74. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.d.ts +3 -4
  75. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.d.ts +7 -4
  76. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.js +1 -1
  77. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-spec-runtime.d.ts +16 -0
  78. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-spec-runtime.js +1 -0
  79. package/dist/application-spec/generate-application/runtime/application-runtime.d.ts +17 -4
  80. package/dist/application-spec/generate-application/runtime/application-runtime.js +1 -1
  81. package/dist/application-spec/generate-application/runtime/application-spec-slice.d.ts +71 -0
  82. package/dist/application-spec/generate-application/runtime/application-spec-slice.js +1 -0
  83. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.d.ts +3 -4
  84. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.d.ts +7 -5
  85. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.js +1 -1
  86. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-spec-runtime.d.ts +16 -0
  87. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-spec-runtime.js +1 -0
  88. package/dist/application-spec/generate-application/runtime/create-application.d.ts +57 -0
  89. package/dist/application-spec/generate-application/runtime/create-application.js +1 -0
  90. package/dist/application-spec/generate-application/runtime/factory-data/factory-data-runtime.d.ts +1 -2
  91. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.d.ts +1 -1
  92. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.js +1 -1
  93. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.d.ts +1 -2
  94. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.js +1 -1
  95. package/dist/application-spec/generate-application/runtime/generate-runtime-instance.d.ts +1 -1
  96. package/dist/application-spec/generate-application/runtime/generate-runtime-instance.js +1 -1
  97. package/dist/application-spec/generate-application/runtime/index.d.ts +8 -0
  98. package/dist/application-spec/generate-application/runtime/index.js +1 -0
  99. package/dist/application-spec/generate-application/runtime/sections/actions-runtime.d.ts +1 -2
  100. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.d.ts +1 -1
  101. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.js +1 -1
  102. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.d.ts +1 -1
  103. package/dist/application-spec/generate-application/runtime/sections/component-optic.d.ts +1 -2
  104. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.d.ts +9 -4
  105. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.js +1 -1
  106. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.d.ts +1 -2
  107. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.js +1 -1
  108. package/dist/application-spec/generate-application/runtime/sections/preset-runtime.d.ts +2 -3
  109. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.d.ts +1 -1
  110. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.d.ts +1 -1
  111. package/dist/application-spec/generate-application/runtime/spec-runtime.d.ts +21 -0
  112. package/dist/application-spec/generate-application/runtime/spec-runtime.js +1 -0
  113. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.d.ts +3 -2
  114. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.d.ts +124 -24
  115. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.js +1 -1
  116. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.d.ts +1 -1
  117. package/dist/application-spec/parse-application-files/merge/merged-assistant.d.ts +13 -4
  118. package/dist/application-spec/parse-application-files/merge/merged-assistant.js +1 -1
  119. package/dist/application-spec/parse-application-files/merge/merged-infra.d.ts +4 -11
  120. package/dist/application-spec/parse-application-files/merge/merged-transformers.d.ts +2 -4
  121. package/dist/application-spec/parse-application-files/parse-application-files.js +1 -1
  122. package/dist/application-spec/parse-application-files/raw-spec/raw-acl.d.ts +2 -2
  123. package/dist/application-spec/parse-application-files/raw-spec/raw-acl.js +1 -1
  124. package/dist/application-spec/parse-application-files/raw-spec/raw-admin-pages.d.ts +3 -24
  125. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.d.ts +48 -10
  126. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.js +1 -1
  127. package/dist/application-spec/parse-application-files/raw-spec/raw-expressions.d.ts +1 -1
  128. package/dist/application-spec/parse-application-files/raw-spec/raw-expressions.js +1 -1
  129. package/dist/application-spec/parse-application-files/raw-spec/raw-resources.d.ts +19 -64
  130. package/dist/application-spec/parse-application-files/spec/application/admin-spec/admin-pages.d.ts +3 -20
  131. package/dist/application-spec/parse-application-files/spec/application/admin-spec/states.d.ts +3 -5
  132. package/dist/application-spec/parse-application-files/spec/application/configurator-spec/states.d.ts +3 -8
  133. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding.d.ts +3 -13
  134. package/dist/application-spec/parse-application-files/spec/components/bindings/write-binding.d.ts +4 -32
  135. package/dist/application-spec/parse-application-files/spec/components/component-filter.d.ts +4 -10
  136. package/dist/application-spec/parse-application-files/spec/components/components.d.ts +3 -4
  137. package/dist/application-spec/parse-application-files/spec/components/index.d.ts +1 -2
  138. package/dist/application-spec/parse-application-files/spec/components/index.js +1 -1
  139. package/dist/application-spec/parse-application-files/spec/components/sdk-component-entry.d.ts +1 -1
  140. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.d.ts +2 -3
  141. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.js +1 -1
  142. package/dist/application-spec/parse-application-files/spec/components/user-components.d.ts +2 -3
  143. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.d.ts +2 -2
  144. package/dist/application-spec/parse-application-files/spec/expressions/expressions.d.ts +7 -29
  145. package/dist/application-spec/parse-application-files/spec/expressions/index.d.ts +0 -1
  146. package/dist/application-spec/parse-application-files/spec/expressions/memo-eval-plan.d.ts +4 -71
  147. package/dist/application-spec/parse-application-files/spec/expressions/memo-eval-plan.js +1 -1
  148. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.d.ts +2 -2
  149. package/dist/application-spec/parse-application-files/spec/invariants/invariant.d.ts +5 -21
  150. package/dist/application-spec/parse-application-files/spec/invariants/invariants.d.ts +4 -14
  151. package/dist/application-spec/parse-application-files/spec/model/aliases.d.ts +3 -9
  152. package/dist/application-spec/parse-application-files/spec/model/common-types.d.ts +6 -14
  153. package/dist/application-spec/parse-application-files/spec/model/defaults.d.ts +6 -31
  154. package/dist/application-spec/parse-application-files/spec/model/entity-types.d.ts +3 -8
  155. package/dist/application-spec/parse-application-files/spec/model/model-version-key.d.ts +3 -3
  156. package/dist/application-spec/parse-application-files/spec/model/names/action-name.d.ts +3 -7
  157. package/dist/application-spec/parse-application-files/spec/model/names/alias-name.d.ts +3 -7
  158. package/dist/application-spec/parse-application-files/spec/model/names/entity-or-alias-name.d.ts +3 -8
  159. package/dist/application-spec/parse-application-files/spec/model/names/entity-type-name.d.ts +3 -8
  160. package/dist/application-spec/parse-application-files/spec/model/names/expression-name.d.ts +3 -6
  161. package/dist/application-spec/parse-application-files/spec/model/names/instance-name.d.ts +3 -7
  162. package/dist/application-spec/parse-application-files/spec/model/names/invariant-name.d.ts +3 -3
  163. package/dist/application-spec/parse-application-files/spec/model/names/shape-property-name.d.ts +3 -11
  164. package/dist/application-spec/parse-application-files/spec/model/names/violation-type-name.d.ts +3 -3
  165. package/dist/application-spec/parse-application-files/spec/model/presets.d.ts +6 -29
  166. package/dist/application-spec/parse-application-files/spec/sections/actions.d.ts +6 -23
  167. package/dist/application-spec/parse-application-files/spec/sections/app-metadata.d.ts +3 -18
  168. package/dist/application-spec/parse-application-files/spec/sections/application-version.d.ts +3 -7
  169. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-form-elements.d.ts +9 -0
  170. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-form-elements.js +1 -0
  171. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.d.ts +4 -1
  172. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.js +1 -1
  173. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant.js +1 -1
  174. package/dist/application-spec/parse-application-files/spec/sections/data-spec/chunks.d.ts +6 -23
  175. package/dist/application-spec/parse-application-files/spec/sections/data-spec/custom-data-spec.d.ts +1 -16
  176. package/dist/application-spec/parse-application-files/spec/sections/data-spec/data-entry-key.d.ts +3 -9
  177. package/dist/application-spec/parse-application-files/spec/sections/data-spec/data-spec.d.ts +1 -10
  178. package/dist/application-spec/parse-application-files/spec/sections/data-spec/swatch-data-spec.d.ts +1 -14
  179. package/dist/application-spec/parse-application-files/spec/sections/state-value.d.ts +3 -7
  180. package/dist/application-spec/parse-application-files/spec/sections/theme.d.ts +3 -10
  181. package/dist/application-spec/parse-application-files/spec/sections/transformers.d.ts +4 -11
  182. package/dist/application-spec/parse-application-files/spec/sections/ui.d.ts +3 -12
  183. package/dist/client/authorized-client.d.ts +3 -1
  184. package/dist/client/authorized-client.js +1 -1
  185. package/dist/client/contract.d.ts +17 -0
  186. package/dist/client/index.d.ts +1 -1
  187. package/dist/client/local-authorized-client.d.ts +3 -1
  188. package/dist/client/local-authorized-client.js +1 -1
  189. package/dist/client/memory-authorized-client.d.ts +4 -1
  190. package/dist/client/memory-authorized-client.js +1 -1
  191. package/dist/client/phoenix-api.d.ts +228 -0
  192. package/dist/configurator/ConfiguratorApp.js +1 -1
  193. package/dist/configurator/app-loader-content/DefaultAppLoaderContent.d.ts +2 -0
  194. package/dist/configurator/app-loader-content/DefaultAppLoaderContent.js +5 -0
  195. package/dist/configurator/app-loader-content/index.d.ts +1 -0
  196. package/dist/configurator/app-loader-content/index.js +1 -0
  197. package/dist/configurator/application-runtime/extensions/selectors.js +1 -1
  198. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.d.ts +17 -3
  199. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.js +1 -1
  200. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.d.ts +52 -9
  201. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.js +1 -1
  202. package/dist/configurator/application-runtime/extensions/systems/camera-control-system/camera-control-system.d.ts +1 -1
  203. package/dist/configurator/application-runtime/extensions/systems/canvas-system.d.ts +8 -0
  204. package/dist/configurator/application-runtime/extensions/systems/canvas-system.js +1 -1
  205. package/dist/configurator/application-runtime/extensions/systems/export-system/export-busy-error.d.ts +8 -0
  206. package/dist/configurator/application-runtime/extensions/systems/export-system/export-busy-error.js +1 -0
  207. package/dist/configurator/application-runtime/extensions/systems/export-system/export-system.d.ts +23 -1
  208. package/dist/configurator/application-runtime/extensions/systems/export-system/export-system.js +1 -1
  209. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.d.ts +28 -10
  210. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.js +1 -1
  211. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.d.ts +66 -4
  212. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.js +1 -1
  213. package/dist/configurator/application-runtime/extensions/systems/graphql-system/violations.d.ts +40 -0
  214. package/dist/configurator/application-runtime/extensions/systems/graphql-system/violations.js +1 -0
  215. package/dist/configurator/application-runtime/extensions/systems/image-rendering-system/image-rendering-system.d.ts +14 -5
  216. package/dist/configurator/application-runtime/extensions/systems/image-rendering-system/image-rendering-system.js +1 -1
  217. package/dist/configurator/application-runtime/extensions/systems/index.d.ts +1 -1
  218. package/dist/configurator/common/configurator-interface.d.ts +121 -6
  219. package/dist/configurator/common/configurator-interface.js +1 -1
  220. package/dist/configurator/common/index.d.ts +2 -2
  221. package/dist/configurator/common/index.js +1 -1
  222. package/dist/configurator/configuration-not-found-page/BuiltInConfigurationNotFoundPage.d.ts +5 -0
  223. package/dist/configurator/configuration-not-found-page/BuiltInConfigurationNotFoundPage.js +1 -0
  224. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.d.ts +0 -6
  225. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.js +1 -1
  226. package/dist/configurator/configuration-not-found-page/index.d.ts +2 -1
  227. package/dist/configurator/configuration-not-found-page/index.js +1 -1
  228. package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.d.ts +12 -0
  229. package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.js +1 -0
  230. package/dist/configurator/configurator-context/PresetSelectionProvider.js +1 -1
  231. package/dist/configurator/configurator-context/PreviewContextProvider.js +1 -1
  232. package/dist/configurator/configurator-context/ViewportStateSync.d.ts +2 -2
  233. package/dist/configurator/configurator-context/ViewportStateSync.js +1 -1
  234. package/dist/configurator/configurator-context/configurator-hooks/index.d.ts +0 -1
  235. package/dist/configurator/configurator-context/configurator-hooks/index.js +1 -1
  236. package/dist/configurator/configurator-context/configurator-hooks/layout-hooks.d.ts +10 -0
  237. package/dist/configurator/configurator-context/index.d.ts +0 -4
  238. package/dist/configurator/configurator-context/index.js +1 -1
  239. package/dist/configurator/configurator-error-page/BuiltInConfiguratorErrorPage.d.ts +6 -0
  240. package/dist/configurator/configurator-error-page/BuiltInConfiguratorErrorPage.js +1 -0
  241. package/dist/configurator/configurator-error-page/ConfiguratorErrorPageElement.d.ts +7 -0
  242. package/dist/configurator/configurator-error-page/ConfiguratorErrorPageElement.js +1 -0
  243. package/dist/configurator/configurator-error-page/index.d.ts +2 -0
  244. package/dist/configurator/configurator-error-page/index.js +1 -0
  245. package/dist/configurator/index.d.ts +10 -0
  246. package/dist/configurator/index.js +1 -1
  247. package/dist/configurator/pages/ConfiguratorErrorPage.d.ts +0 -1
  248. package/dist/configurator/pages/ConfiguratorErrorPage.js +1 -1
  249. package/dist/configurator/pages/ConfiguratorNotFoundPage.js +1 -1
  250. package/dist/configurator/pages/DefaultNotAuthenticatedPage.d.ts +8 -0
  251. package/dist/configurator/pages/DefaultNotAuthenticatedPage.js +1 -0
  252. package/dist/configurator/pages/DefaultPresetUi.d.ts +7 -0
  253. package/dist/configurator/pages/DefaultPresetUi.js +1 -0
  254. package/dist/configurator/pages/LoadedConfiguratorDetailPage.js +1 -1
  255. package/dist/configurator/pages/NewConfiguratorPage.js +1 -1
  256. package/dist/configurator/pages/PresetCreationErrorPage.d.ts +1 -1
  257. package/dist/configurator/pages/PresetCreationErrorPage.js +1 -1
  258. package/dist/configurator/pages/default-configurator-elements.d.ts +6 -2
  259. package/dist/configurator/pages/default-configurator-elements.js +1 -1
  260. package/dist/configurator/pages/default-elements/index.d.ts +1 -0
  261. package/dist/configurator/pages/default-elements/index.js +1 -1
  262. package/dist/configurator/pages/default-elements/scene-controls/BuiltInAddEntityFab.d.ts +3 -0
  263. package/dist/configurator/pages/default-elements/scene-controls/BuiltInAddEntityFab.js +1 -0
  264. package/dist/configurator/pages/default-elements/scene-controls/BuiltInDeleteEntityFab.d.ts +3 -0
  265. package/dist/configurator/pages/default-elements/scene-controls/BuiltInDeleteEntityFab.js +1 -0
  266. package/dist/configurator/pages/default-elements/scene-controls/BuiltInNavigationHotspot.d.ts +3 -0
  267. package/dist/configurator/pages/default-elements/scene-controls/BuiltInNavigationHotspot.js +1 -0
  268. package/dist/configurator/pages/default-elements/scene-controls/BuiltInSelectionHotspot.d.ts +3 -0
  269. package/dist/configurator/pages/default-elements/scene-controls/BuiltInSelectionHotspot.js +1 -0
  270. package/dist/configurator/pages/default-elements/scene-controls/BuiltInToolMenuFab.d.ts +3 -0
  271. package/dist/configurator/pages/default-elements/scene-controls/BuiltInToolMenuFab.js +1 -0
  272. package/dist/configurator/pages/default-elements/scene-controls/index.d.ts +6 -0
  273. package/dist/configurator/pages/default-elements/scene-controls/index.js +1 -0
  274. package/dist/configurator/pages/default-elements/scene-controls/scene-control-elements.d.ts +6 -0
  275. package/dist/configurator/pages/default-elements/scene-controls/scene-control-elements.js +1 -0
  276. package/dist/configurator/pages/error-boundaries/DevContextFallback.js +1 -1
  277. package/dist/configurator/pages/error-boundaries/DevLoadingFallback.js +1 -1
  278. package/dist/configurator/pages/error-boundaries/GeneralErrorBoundary.js +1 -1
  279. package/dist/configurator/pages/error-boundaries/LoadingErrorBoundary.js +1 -1
  280. package/dist/configurator/preset-screen-elements/PresetDeviceNotSupportedElement.d.ts +4 -0
  281. package/dist/configurator/preset-screen-elements/PresetDeviceNotSupportedElement.js +1 -0
  282. package/dist/configurator/preset-screen-elements/PresetPageActionElement.d.ts +4 -0
  283. package/dist/configurator/preset-screen-elements/PresetPageActionElement.js +1 -0
  284. package/dist/configurator/preset-screen-elements/index.d.ts +2 -0
  285. package/dist/configurator/preset-screen-elements/index.js +1 -0
  286. package/dist/configurator/scene/index.d.ts +1 -0
  287. package/dist/configurator/scene/index.js +1 -1
  288. package/dist/configurator/scene/scene-controls/DeleteEntityFab.js +1 -1
  289. package/dist/configurator/scene/scene-controls/SelectionHotspot.js +1 -1
  290. package/dist/configurator/scene/scene-controls/ToolFab.d.ts +4 -0
  291. package/dist/configurator/scene/scene-controls/ToolFab.js +1 -1
  292. package/dist/configurator/scene/scene-controls/use-scene-control-tooltip.d.ts +2 -1
  293. package/dist/configurator/scene/scene-entity/scene-controls/SceneEntityHtmlHotspots.js +1 -1
  294. package/dist/configurator/toolbar-actions/index.d.ts +3 -0
  295. package/dist/configurator/toolbar-actions/index.js +1 -0
  296. package/dist/configurator/toolbar-actions/use-assistant-panel.d.ts +18 -0
  297. package/dist/configurator/toolbar-actions/use-assistant-panel.js +1 -0
  298. package/dist/configurator/toolbar-actions/use-measurements.d.ts +35 -0
  299. package/dist/configurator/toolbar-actions/use-measurements.js +1 -0
  300. package/dist/configurator/toolbar-actions/use-toolbar-actions.d.ts +100 -0
  301. package/dist/configurator/toolbar-actions/use-toolbar-actions.js +1 -0
  302. package/dist/configurator/toolbar-actions/use-toolbar-help.d.ts +7 -0
  303. package/dist/configurator/toolbar-actions/use-toolbar-help.js +1 -0
  304. package/dist/configurator/ui/assistant/AssistantChips.d.ts +3 -2
  305. package/dist/configurator/ui/assistant/AssistantChips.js +1 -1
  306. package/dist/configurator/ui/assistant/AssistantMarkdown.d.ts +1 -1
  307. package/dist/configurator/ui/assistant/AssistantMarkdown.js +1 -1
  308. package/dist/configurator/ui/assistant/alert/AssistantAlert.d.ts +8 -0
  309. package/dist/configurator/ui/assistant/alert/AssistantAlert.js +1 -0
  310. package/dist/configurator/ui/assistant/alert/index.d.ts +2 -0
  311. package/dist/configurator/ui/assistant/alert/index.js +1 -0
  312. package/dist/configurator/ui/assistant/alert/remark-alerts.d.ts +10 -0
  313. package/dist/configurator/ui/assistant/alert/remark-alerts.js +1 -0
  314. package/dist/configurator/ui/assistant/entity-link/AssistantEntityLink.js +1 -1
  315. package/dist/configurator/ui/assistant/form/AssistantForm.js +1 -1
  316. package/dist/configurator/ui/assistant/form/compose-answer.d.ts +1 -1
  317. package/dist/configurator/ui/assistant/form/compose-answer.js +1 -1
  318. package/dist/configurator/ui/assistant/form/form-model.d.ts +3 -4
  319. package/dist/configurator/ui/assistant/form/form-state.d.ts +1 -1
  320. package/dist/configurator/ui/assistant/form/index.d.ts +2 -0
  321. package/dist/configurator/ui/assistant/form/index.js +1 -1
  322. package/dist/configurator/ui/assistant/form/parse-form-block.d.ts +3 -2
  323. package/dist/configurator/ui/assistant/form/parse-form-block.js +1 -1
  324. package/dist/configurator/ui/assistant/form/read-form-attributes.d.ts +1 -1
  325. package/dist/configurator/ui/assistant/form/read-form-attributes.js +1 -1
  326. package/dist/configurator/ui/assistant/form/registry/built-in-form-elements.d.ts +3 -0
  327. package/dist/configurator/ui/assistant/form/registry/built-in-form-elements.js +1 -0
  328. package/dist/configurator/ui/assistant/form/registry/create-assistant-form-element.d.ts +31 -0
  329. package/dist/configurator/ui/assistant/form/registry/create-assistant-form-element.js +1 -0
  330. package/dist/configurator/ui/assistant/form/{form-element-definition.d.ts → registry/form-element-definition.d.ts} +3 -1
  331. package/dist/configurator/ui/assistant/form/registry/form-element-definition.js +1 -0
  332. package/dist/configurator/ui/assistant/form/{form-registry.d.ts → registry/form-registry.d.ts} +2 -2
  333. package/dist/configurator/ui/assistant/form/registry/form-registry.js +1 -0
  334. package/dist/configurator/ui/assistant/form/registry/index.d.ts +6 -0
  335. package/dist/configurator/ui/assistant/form/registry/index.js +1 -0
  336. package/dist/configurator/ui/assistant/form/registry/use-form-registry.d.ts +8 -0
  337. package/dist/configurator/ui/assistant/form/registry/use-form-registry.js +1 -0
  338. package/dist/configurator/ui/assistant/form-elements/FormCard.d.ts +9 -0
  339. package/dist/configurator/ui/assistant/form-elements/FormCard.js +1 -0
  340. package/dist/configurator/ui/assistant/form-elements/FormConfirm.d.ts +9 -0
  341. package/dist/configurator/ui/assistant/form-elements/FormConfirm.js +1 -0
  342. package/dist/configurator/ui/assistant/form-elements/FormGroup.d.ts +4 -1
  343. package/dist/configurator/ui/assistant/form-elements/FormNumber.d.ts +9 -0
  344. package/dist/configurator/ui/assistant/form-elements/FormNumber.js +1 -0
  345. package/dist/configurator/ui/assistant/form-elements/FormOptions.d.ts +4 -1
  346. package/dist/configurator/ui/assistant/form-elements/FormReply.d.ts +4 -1
  347. package/dist/configurator/ui/assistant/form-elements/FormReply.js +1 -1
  348. package/dist/configurator/ui/assistant/form-elements/FormSwatch.d.ts +10 -0
  349. package/dist/configurator/ui/assistant/form-elements/FormSwatch.js +1 -0
  350. package/dist/configurator/ui/assistant/form-elements/FormText.d.ts +4 -1
  351. package/dist/configurator/ui/assistant/form-elements/FormText.js +1 -1
  352. package/dist/configurator/ui/assistant/form-elements/clamp-form-number.d.ts +10 -0
  353. package/dist/configurator/ui/assistant/form-elements/clamp-form-number.js +1 -0
  354. package/dist/configurator/ui/assistant/form-elements/form-element-props.d.ts +20 -16
  355. package/dist/configurator/ui/assistant/form-elements/index.d.ts +4 -0
  356. package/dist/configurator/ui/assistant/form-elements/index.js +1 -1
  357. package/dist/configurator/ui/assistant/index.d.ts +3 -0
  358. package/dist/configurator/ui/assistant/index.js +1 -1
  359. package/dist/configurator/ui/assistant/resource-image/index.d.ts +1 -1
  360. package/dist/configurator/ui/assistant/resource-image/index.js +1 -1
  361. package/dist/configurator/ui/assistant/resource-image/resource-path.d.ts +0 -9
  362. package/dist/configurator/ui/assistant/resource-image/resource-path.js +1 -1
  363. package/dist/configurator/ui/assistant/screenshots/ScreenshotThumbnails.d.ts +9 -0
  364. package/dist/configurator/ui/assistant/screenshots/ScreenshotThumbnails.js +1 -0
  365. package/dist/configurator/ui/assistant/screenshots/index.d.ts +2 -0
  366. package/dist/configurator/ui/assistant/screenshots/index.js +1 -0
  367. package/dist/configurator/ui/assistant/screenshots/tool-screenshots.d.ts +22 -0
  368. package/dist/configurator/ui/assistant/screenshots/tool-screenshots.js +1 -0
  369. package/dist/configurator/ui/assistant/screenshots/use-screenshot-src.d.ts +8 -0
  370. package/dist/configurator/ui/assistant/screenshots/use-screenshot-src.js +1 -0
  371. package/dist/configurator/ui/assistant/streamed-markdown.d.ts +2 -2
  372. package/dist/configurator/ui/assistant/streamed-markdown.js +2 -2
  373. package/dist/configurator/ui/assistant/tool-chip.d.ts +19 -9
  374. package/dist/configurator/ui/assistant/tool-chip.js +1 -1
  375. package/dist/configurator/ui/configurator-layout/slots/canvas/GPUAccelerationDisabled.js +1 -1
  376. package/dist/configurator/ui/configurator-layout/slots/canvas/LayoutCanvas.js +1 -1
  377. package/dist/configurator/ui/configurator-layout/slots/canvas/SharedCanvas.js +1 -1
  378. package/dist/configurator/ui/configurator-layout/slots/canvas/WebGLNotSupported.js +1 -1
  379. package/dist/configurator/ui/configurator-layout/slots/mobile-tabs/use-mobile-tabs.d.ts +1 -1
  380. package/dist/configurator/ui/configurator-layout/slots/mobile-tabs/use-mobile-tabs.js +1 -1
  381. package/dist/configurator/ui/configurator-layout/slots/readonly-banner/CloneToEditDialog.js +1 -1
  382. package/dist/configurator/ui/configurator-layout/slots/sidebar-tabs/use-sidebar-tabs.d.ts +1 -1
  383. package/dist/configurator/ui/configurator-layout/slots/sidebar-tabs/use-sidebar-tabs.js +1 -1
  384. package/dist/configurator/ui/configurator-layout/universal/ExportingOverlay.d.ts +5 -0
  385. package/dist/configurator/ui/configurator-layout/universal/ExportingOverlay.js +1 -0
  386. package/dist/configurator/ui/configurator-layout/universal/Layout.js +1 -1
  387. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.d.ts +1 -1
  388. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.js +1 -1
  389. package/dist/configurator/ui/configurator-layout/universal/use-scene-safe-area.d.ts +1 -1
  390. package/dist/configurator/ui/index.d.ts +1 -0
  391. package/dist/configurator/ui/index.js +1 -1
  392. package/dist/configurator/ui/legacy/chat/MobileChat.js +1 -1
  393. package/dist/configurator/ui/legacy/layout/common/CommonFinalizeButton.js +1 -1
  394. package/dist/configurator/ui/legacy/layout/common/CommonSummaryButton.js +1 -1
  395. package/dist/configurator/ui/legacy/layout/common/CommonTopNavigation.js +1 -1
  396. package/dist/configurator/ui/legacy/layout/common/ReactiveInterfaceLayout.js +1 -1
  397. package/dist/configurator/ui/legacy/layout/common/ResponsiveFinalizeButton.js +1 -1
  398. package/dist/configurator/ui/legacy/layout/simple/SimpleSidebar.js +1 -1
  399. package/dist/configurator/ui/legacy/layout/simple/SimpleTopNavigation.js +1 -1
  400. package/dist/configurator/ui/legacy/layout/steps/StepsNavigation.js +1 -1
  401. package/dist/configurator/ui/legacy/layout/steps/StepsOwnerLayout.js +1 -1
  402. package/dist/configurator/ui/legacy/layout/steps/StepsSideBar.js +1 -1
  403. package/dist/configurator/ui/legacy/layout/steps/StepsSidebarFooter.js +1 -1
  404. package/dist/configurator/ui/legacy/layout/tabs/TabsSidebar.js +1 -1
  405. package/dist/configurator/ui/legacy/toolbar/common/DimensionUnitSelector.js +1 -1
  406. package/dist/configurator/ui/legacy/toolbar/common/MeasurementsIndicatorsSwitch.js +1 -1
  407. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/FullscreenToolbarAction.js +1 -1
  408. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/HelpToolbarAction.js +1 -1
  409. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/MeasurementsToolbarAction.js +1 -1
  410. package/dist/configurator/ui/legacy/toolbar/desktop-toolbar/UndoRedoToolbarGroup.js +1 -1
  411. package/dist/configurator/ui/phoenix-layout-elements/AppLoader.d.ts +0 -7
  412. package/dist/configurator/ui/phoenix-layout-elements/AppLoader.js +2 -6
  413. package/dist/configurator/ui/phoenix-layout-elements/AssistantToolbarButton.js +1 -1
  414. package/dist/configurator/ui/phoenix-layout-elements/EnterFullscreenToolbarButton.js +1 -1
  415. package/dist/configurator/ui/phoenix-layout-elements/ExitFullscreenToolbarButton.js +1 -1
  416. package/dist/configurator/ui/phoenix-layout-elements/HelpToolbarButton.js +1 -1
  417. package/dist/configurator/ui/phoenix-layout-elements/LanguageMenuAction.js +1 -1
  418. package/dist/configurator/ui/phoenix-layout-elements/LanguageToolbarButton.js +1 -1
  419. package/dist/configurator/ui/phoenix-layout-elements/MeasurementsMenuAction.js +1 -1
  420. package/dist/configurator/ui/phoenix-layout-elements/MeasurementsToolbarButton.js +1 -1
  421. package/dist/configurator/ui/phoenix-layout-elements/RedoToolbarButton.js +1 -1
  422. package/dist/configurator/ui/phoenix-layout-elements/ShareToolbarButton.js +1 -1
  423. package/dist/configurator/ui/phoenix-layout-elements/UndoToolbarButton.js +1 -1
  424. package/dist/configurator/ui/phoenix-layout-elements/header/common/back-button/use-go-back-action.js +1 -1
  425. package/dist/configurator/ui/phoenix-layout-elements/header/common/horizontal-tabs/DesktopHorizontalTabs.js +1 -1
  426. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/DesktopNavigationSteps.d.ts +1 -1
  427. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/DesktopNavigationSteps.js +1 -1
  428. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.d.ts +2 -8
  429. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.js +1 -1
  430. package/dist/configurator/ui/phoenix-layout-elements/index.d.ts +8 -1
  431. package/dist/configurator/ui/phoenix-layout-elements/index.js +1 -1
  432. package/dist/configurator/ui/phoenix-layout-elements/measurements/DimensionUnitSelector.js +1 -1
  433. package/dist/configurator/ui/phoenix-layout-elements/measurements/MeasurementsIndicatorsSwitch.js +1 -1
  434. package/dist/configurator/ui/phoenix-layout-elements/share/ShareModal.js +1 -1
  435. package/dist/configurator/ui/phoenix-layout-elements/share/use-share.d.ts +7 -8
  436. package/dist/configurator/ui/phoenix-layout-elements/share/use-share.js +1 -1
  437. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/basic/BasicFinalizeButton.js +1 -1
  438. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/CustomFinalizeButton.js +1 -1
  439. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/EnterSummaryButton.js +1 -1
  440. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/FinalizeActions.js +1 -1
  441. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/NextStepButton.js +1 -1
  442. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/PreviousStepButton.js +1 -1
  443. package/dist/configurator/ui/preset-layout/PresetUi.d.ts +4 -2
  444. package/dist/configurator/ui/preset-layout/PresetUi.js +1 -1
  445. package/dist/configurator/ui/preset-layout/index.d.ts +6 -1
  446. package/dist/configurator/ui/preset-layout/index.js +1 -1
  447. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.js +1 -1
  448. package/dist/docs/3d-scene/cameras/custom.mdx +4 -2
  449. package/dist/docs/complex-use-cases/focus-mode.mdx +2 -0
  450. package/dist/docs/drag-and-drop/room-planner.mdx +1 -1
  451. package/dist/docs/fabs/basic.mdx +4 -0
  452. package/dist/docs/index.json +95 -1
  453. package/dist/docs/integrations/webcomponent-api/basics.mdx +2 -0
  454. package/dist/docs/layouts/custom-layout.mdx +321 -158
  455. package/dist/docs/layouts/gallery/ardent-compressor.mdx +3516 -0
  456. package/dist/docs/layouts/gallery/corvid-drone.mdx +3428 -0
  457. package/dist/docs/layouts/gallery/fenwick-window.mdx +2803 -0
  458. package/dist/docs/layouts/gallery/ferrule-bar-station.mdx +6567 -0
  459. package/dist/docs/layouts/gallery/kestrel-kettle.mdx +1858 -0
  460. package/dist/docs/layouts/gallery/nightjar-guitar.mdx +3698 -0
  461. package/dist/docs/layouts/gallery/sunfold-solar.mdx +2683 -0
  462. package/dist/docs/layouts/gallery/tidepool-aquascape.mdx +5203 -0
  463. package/dist/docs/other-features/client-side-rendering/declarative.mdx +1 -1
  464. package/dist/docs/other-features/error-5xx.mdx +1 -1
  465. package/dist/docs/other-features/navigation-hotspot.mdx +2 -0
  466. package/dist/docs/other-features/not-found-404.mdx +1 -1
  467. package/dist/docs/phoenix/configurator-interface.mdx +205 -65
  468. package/dist/docs/phoenix/domain-model.mdx +4 -1
  469. package/dist/docs/phoenix/finalization.mdx +1 -1
  470. package/dist/docs/phoenix/layout-slots.mdx +36 -15
  471. package/dist/docs/phoenix/phoenix-cli.mdx +14 -6
  472. package/dist/docs/phoenix/project-structure.mdx +21 -17
  473. package/dist/docs/phoenix/sdk-builder-workflow.mdx +7 -5
  474. package/dist/docs/phoenix/sessions-and-access.mdx +2 -0
  475. package/dist/docs/phoenix/testing.mdx +2 -2
  476. package/dist/docs/phoenix/webhooks.mdx +5 -1
  477. package/dist/docs/selection-and-highlight/hotspots.mdx +2 -0
  478. package/dist/domain/application/application-config.d.ts +6 -24
  479. package/dist/domain/application/assistant/assistant-manifest.d.ts +16 -1
  480. package/dist/domain/application/assistant/assistant-resolved-manifest.d.ts +10 -1
  481. package/dist/domain/application/assistant/build-assistant-lenses.js +1 -1
  482. package/dist/domain/application/assistant/build-assistant-manifest.js +1 -1
  483. package/dist/domain/application/assistant/form/assistant-form-element-name.d.ts +11 -0
  484. package/dist/domain/application/assistant/form/assistant-form-element-name.js +8 -0
  485. package/dist/domain/application/assistant/form/assistant-form-elements.d.ts +174 -0
  486. package/dist/domain/application/assistant/form/assistant-form-elements.js +1 -0
  487. package/dist/domain/application/assistant/form/assistant-resource-path.d.ts +10 -0
  488. package/dist/domain/application/assistant/form/assistant-resource-path.js +1 -0
  489. package/dist/domain/application/assistant/form/index.d.ts +4 -0
  490. package/dist/domain/application/assistant/form/index.js +1 -0
  491. package/dist/domain/application/assistant/generate-assistant-prompt.d.ts +3 -0
  492. package/dist/domain/application/assistant/generate-assistant-prompt.js +1 -1
  493. package/dist/domain/application/assistant/index.d.ts +2 -3
  494. package/dist/domain/application/assistant/index.js +1 -1
  495. package/dist/domain/application/assistant/session-setup/apply-assistant-setup.js +1 -1
  496. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.d.ts +2 -0
  497. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.js +1 -1
  498. package/dist/domain/application/configurator-builder.d.ts +7 -1
  499. package/dist/domain/application/configurator-builder.js +1 -1
  500. package/dist/domain/application/index.d.ts +1 -1
  501. package/dist/domain/application/index.js +1 -1
  502. package/dist/domain/application/standard-properties.js +1 -1
  503. package/dist/domain/application/web-component-property.d.ts +3 -1
  504. package/dist/domain/application/web-component-property.js +1 -1
  505. package/dist/domain/available-system-components.d.ts +1 -1
  506. package/dist/domain/available-system-components.js +1 -1
  507. package/dist/domain/domain-builder.d.ts +9 -3
  508. package/dist/domain/domain-builder.js +1 -1
  509. package/dist/domain/domain-context/store-system/store-system.d.ts +5 -0
  510. package/dist/domain/domain-context/store-system/store-system.js +1 -1
  511. package/dist/domain/domain-runtime/application.d.ts +39 -0
  512. package/dist/domain/domain-runtime/application.js +1 -0
  513. package/dist/domain/domain-runtime/domain-context/selectors.d.ts +1 -0
  514. package/dist/domain/domain-runtime/domain-context/selectors.js +1 -1
  515. package/dist/domain/domain-runtime/domain-runtime.d.ts +44 -4
  516. package/dist/domain/domain-runtime/domain-runtime.js +1 -1
  517. package/dist/domain/domain-runtime/environment/initialize.d.ts +1 -1
  518. package/dist/domain/domain-runtime/environment/types.d.ts +1 -1
  519. package/dist/domain/domain-runtime/errors/implementation-error-collector.d.ts +2 -0
  520. package/dist/domain/domain-runtime/errors/implementation-error-collector.js +1 -1
  521. package/dist/domain/domain-runtime/index.d.ts +2 -1
  522. package/dist/domain/domain-runtime/index.js +1 -1
  523. package/dist/domain/domain-runtime/spec/index.d.ts +1 -1
  524. package/dist/domain/domain-runtime/spec/index.js +1 -1
  525. package/dist/domain/domain-runtime/spec/initialize.js +1 -1
  526. package/dist/domain/domain-runtime/spec/module-checks/element-registration.d.ts +15 -1
  527. package/dist/domain/domain-runtime/spec/module-checks/element-registration.js +1 -1
  528. package/dist/domain/domain-runtime/spec/module-checks/find-assistant-form-element-errors.d.ts +12 -0
  529. package/dist/domain/domain-runtime/spec/module-checks/find-assistant-form-element-errors.js +1 -0
  530. package/dist/domain/domain-runtime/spec/module-checks/index.d.ts +3 -1
  531. package/dist/domain/domain-runtime/spec/module-checks/index.js +1 -1
  532. package/dist/domain/domain-runtime/spec/module-checks/merge-expression-modules.d.ts +23 -0
  533. package/dist/domain/domain-runtime/spec/module-checks/merge-expression-modules.js +1 -0
  534. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.d.ts +3 -4
  535. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.js +1 -1
  536. package/dist/domain/domain-runtime/spec/selectors.d.ts +3 -1
  537. package/dist/domain/domain-runtime/spec/selectors.js +1 -1
  538. package/dist/domain/domain-runtime/web-component/actions.d.ts +3 -0
  539. package/dist/domain/domain-runtime/web-component/actions.js +1 -1
  540. package/dist/domain/domain-runtime/web-component/initialize.d.ts +1 -0
  541. package/dist/domain/domain-runtime/web-component/initialize.js +1 -1
  542. package/dist/domain/domain-runtime/web-component/selectors.d.ts +2 -0
  543. package/dist/domain/domain-runtime/web-component/selectors.js +1 -1
  544. package/dist/domain/domain-runtime/web-component/types.d.ts +6 -3
  545. package/dist/domain/extensions/export-images/agent-screenshot.d.ts +24 -0
  546. package/dist/domain/extensions/export-images/agent-screenshot.js +1 -0
  547. package/dist/domain/extensions/{client-side-image.d.ts → export-images/client-side-image.d.ts} +2 -2
  548. package/dist/domain/extensions/export-images/client-side-image.js +1 -0
  549. package/dist/domain/extensions/export-images/index.d.ts +3 -0
  550. package/dist/domain/extensions/export-images/index.js +1 -0
  551. package/dist/domain/extensions/{save-template-thumbnail.d.ts → export-images/save-template-thumbnail.d.ts} +2 -2
  552. package/dist/domain/extensions/export-images/save-template-thumbnail.js +1 -0
  553. package/dist/domain/extensions/index.d.ts +1 -2
  554. package/dist/domain/extensions/index.js +1 -1
  555. package/dist/domain/index.d.ts +1 -0
  556. package/dist/domain/index.js +1 -1
  557. package/dist/domain/mocks/create-mock-domain-runtime.d.ts +9 -0
  558. package/dist/domain/spec/application/admin-pages-section.d.ts +29 -0
  559. package/dist/domain/spec/application/admin-pages.d.ts +26 -0
  560. package/dist/domain/spec/application/admin-states.d.ts +5 -0
  561. package/dist/domain/spec/application/configurator-states.d.ts +8 -0
  562. package/dist/domain/spec/application/index.d.ts +5 -0
  563. package/dist/domain/spec/application/index.js +1 -0
  564. package/dist/domain/spec/components/bindings/index.d.ts +2 -0
  565. package/dist/domain/spec/components/bindings/index.js +1 -0
  566. package/dist/domain/spec/components/bindings/read-binding.d.ts +13 -0
  567. package/dist/domain/spec/components/bindings/read-binding.js +1 -0
  568. package/dist/domain/spec/components/bindings/write-binding.d.ts +32 -0
  569. package/dist/domain/spec/components/bindings/write-binding.js +1 -0
  570. package/dist/{application-spec/parse-application-files → domain}/spec/components/component-entry.d.ts +3 -3
  571. package/dist/domain/spec/components/component-entry.js +1 -0
  572. package/dist/{application-spec/core → domain/spec}/components/component-filter.d.ts +3 -2
  573. package/dist/domain/spec/components/component-filters.d.ts +10 -0
  574. package/dist/domain/spec/components/component-filters.js +1 -0
  575. package/dist/domain/spec/components/components.d.ts +4 -0
  576. package/dist/domain/spec/components/components.js +1 -0
  577. package/dist/domain/spec/components/index.d.ts +6 -0
  578. package/dist/domain/spec/enhanced-json-value.d.ts +30 -0
  579. package/dist/domain/spec/enhanced-json-value.js +1 -0
  580. package/dist/{application-spec/parse-application-files → domain}/spec/expressions/expression.d.ts +9 -3
  581. package/dist/domain/spec/expressions/expression.js +1 -0
  582. package/dist/domain/spec/expressions/expressions.d.ts +27 -0
  583. package/dist/domain/spec/expressions/expressions.js +1 -0
  584. package/dist/domain/spec/expressions/index.d.ts +5 -0
  585. package/dist/domain/spec/expressions/memo-eval-plan.d.ts +70 -0
  586. package/dist/domain/spec/expressions/memo-eval-plan.js +1 -0
  587. package/dist/domain/spec/expressions/relation-expression-params.js +1 -0
  588. package/dist/domain/spec/index.d.ts +9 -0
  589. package/dist/domain/spec/index.js +1 -0
  590. package/dist/domain/spec/invariants/index.d.ts +2 -0
  591. package/dist/domain/spec/invariants/index.js +1 -0
  592. package/dist/domain/spec/invariants/invariant.d.ts +24 -0
  593. package/dist/domain/spec/invariants/invariant.js +1 -0
  594. package/dist/domain/spec/invariants/invariants.d.ts +14 -0
  595. package/dist/domain/spec/invariants/invariants.js +1 -0
  596. package/dist/domain/spec/json-schema.d.ts +52 -0
  597. package/dist/domain/spec/json-schema.js +1 -0
  598. package/dist/domain/spec/markers/index.d.ts +3 -0
  599. package/dist/domain/spec/markers/index.js +1 -0
  600. package/dist/domain/spec/markers/msg-marker.d.ts +28 -0
  601. package/dist/domain/spec/markers/msg-marker.js +1 -0
  602. package/dist/domain/spec/model/aliases.d.ts +9 -0
  603. package/dist/domain/spec/model/aliases.js +1 -0
  604. package/dist/domain/spec/model/common-types.d.ts +15 -0
  605. package/dist/domain/spec/model/common-types.js +1 -0
  606. package/dist/domain/spec/model/defaults.d.ts +33 -0
  607. package/dist/domain/spec/model/defaults.js +1 -0
  608. package/dist/domain/spec/model/entity-types.d.ts +8 -0
  609. package/dist/domain/spec/model/entity-types.js +1 -0
  610. package/dist/domain/spec/model/index.d.ts +7 -0
  611. package/dist/domain/spec/model/index.js +1 -0
  612. package/dist/domain/spec/model/model-version-key.d.ts +3 -0
  613. package/dist/domain/spec/model/model-version-key.js +1 -0
  614. package/dist/domain/spec/model/names/action-name.d.ts +7 -0
  615. package/dist/domain/spec/model/names/action-name.js +1 -0
  616. package/dist/domain/spec/model/names/alias-name.d.ts +7 -0
  617. package/dist/domain/spec/model/names/alias-name.js +1 -0
  618. package/dist/domain/spec/model/names/entity-or-alias-name.d.ts +8 -0
  619. package/dist/domain/spec/model/names/entity-or-alias-name.js +1 -0
  620. package/dist/domain/spec/model/names/entity-type-name.d.ts +8 -0
  621. package/dist/domain/spec/model/names/entity-type-name.js +1 -0
  622. package/dist/domain/spec/model/names/expression-name.d.ts +6 -0
  623. package/dist/domain/spec/model/names/expression-name.js +1 -0
  624. package/dist/domain/spec/model/names/index.d.ts +9 -0
  625. package/dist/domain/spec/model/names/index.js +1 -0
  626. package/dist/domain/spec/model/names/instance-name.d.ts +7 -0
  627. package/dist/domain/spec/model/names/instance-name.js +1 -0
  628. package/dist/domain/spec/model/names/invariant-name.d.ts +3 -0
  629. package/dist/domain/spec/model/names/invariant-name.js +1 -0
  630. package/dist/domain/spec/model/names/shape-property-name.d.ts +11 -0
  631. package/dist/domain/spec/model/names/shape-property-name.js +1 -0
  632. package/dist/domain/spec/model/names/violation-type-name.d.ts +3 -0
  633. package/dist/domain/spec/model/names/violation-type-name.js +1 -0
  634. package/dist/domain/spec/model/presets.d.ts +30 -0
  635. package/dist/domain/spec/model/presets.js +1 -0
  636. package/dist/domain/spec/sections/actions.d.ts +23 -0
  637. package/dist/domain/spec/sections/actions.js +1 -0
  638. package/dist/domain/spec/sections/app-metadata.d.ts +18 -0
  639. package/dist/domain/spec/sections/app-metadata.js +1 -0
  640. package/dist/domain/spec/sections/application-version.d.ts +7 -0
  641. package/dist/domain/spec/sections/application-version.js +1 -0
  642. package/dist/domain/spec/sections/data-spec/chunks.d.ts +23 -0
  643. package/dist/domain/spec/sections/data-spec/chunks.js +1 -0
  644. package/dist/domain/spec/sections/data-spec/custom-data-spec-entry.d.ts +16 -0
  645. package/dist/domain/spec/sections/data-spec/custom-data-spec-entry.js +1 -0
  646. package/dist/domain/spec/sections/data-spec/data-entry-key.d.ts +9 -0
  647. package/dist/domain/spec/sections/data-spec/data-entry-key.js +1 -0
  648. package/dist/domain/spec/sections/data-spec/index.d.ts +5 -0
  649. package/dist/domain/spec/sections/data-spec/index.js +1 -0
  650. package/dist/domain/spec/sections/data-spec/parsed-data-spec-entries.d.ts +10 -0
  651. package/dist/domain/spec/sections/data-spec/parsed-data-spec-entries.js +1 -0
  652. package/dist/domain/spec/sections/data-spec/swatch-data-spec-entry.d.ts +14 -0
  653. package/dist/domain/spec/sections/data-spec/swatch-data-spec-entry.js +1 -0
  654. package/dist/domain/spec/sections/index.d.ts +9 -0
  655. package/dist/domain/spec/sections/index.js +1 -0
  656. package/dist/domain/spec/sections/infra/acl.d.ts +12 -0
  657. package/dist/domain/spec/sections/infra/acl.js +1 -0
  658. package/dist/domain/spec/sections/infra/index.d.ts +3 -0
  659. package/dist/domain/spec/sections/infra/index.js +1 -0
  660. package/dist/domain/spec/sections/infra/resource-entry.d.ts +46 -0
  661. package/dist/domain/spec/sections/infra/resource-entry.js +1 -0
  662. package/dist/domain/spec/sections/infra/resources-config.d.ts +10 -0
  663. package/dist/domain/spec/sections/infra/resources-config.js +1 -0
  664. package/dist/domain/spec/sections/state-value.d.ts +7 -0
  665. package/dist/domain/spec/sections/state-value.js +1 -0
  666. package/dist/domain/spec/sections/theme.d.ts +10 -0
  667. package/dist/domain/spec/sections/theme.js +1 -0
  668. package/dist/domain/spec/sections/transformers.d.ts +15 -0
  669. package/dist/domain/spec/sections/transformers.js +1 -0
  670. package/dist/domain/spec/sections/ui.d.ts +12 -0
  671. package/dist/domain/spec/sections/ui.js +1 -0
  672. package/dist/editor/Editor.d.ts +7 -0
  673. package/dist/editor/Editor.js +1 -1
  674. package/dist/editor/domain-editors/DomainSpecContext.js +1 -1
  675. package/dist/editor/domain-editors/apply-spec-update.d.ts +10 -2
  676. package/dist/editor/domain-editors/apply-spec-update.js +1 -1
  677. package/dist/editor/domain-editors/use-implementation-files.d.ts +6 -14
  678. package/dist/editor/domain-editors/use-implementation-files.js +1 -1
  679. package/dist/editor/graphql/GraphQLPanel.js +1 -1
  680. package/dist/editor/mocks/EditorMockContext.d.ts +2 -0
  681. package/dist/editor/mocks/EditorMockContext.js +1 -1
  682. package/dist/editor/screenshot/ScreenshotHandler.js +1 -1
  683. package/dist/i18n/locales/cs/messages.js +1 -1
  684. package/dist/i18n/locales/da/messages.js +1 -1
  685. package/dist/i18n/locales/de/messages.js +1 -1
  686. package/dist/i18n/locales/de-AT/messages.js +1 -1
  687. package/dist/i18n/locales/en/messages.js +1 -1
  688. package/dist/i18n/locales/en-AU/messages.js +1 -1
  689. package/dist/i18n/locales/en-GB/messages.js +1 -1
  690. package/dist/i18n/locales/es/messages.js +1 -1
  691. package/dist/i18n/locales/fr/messages.js +1 -1
  692. package/dist/i18n/locales/hu/messages.js +1 -1
  693. package/dist/i18n/locales/it/messages.js +1 -1
  694. package/dist/i18n/locales/nl/messages.js +1 -1
  695. package/dist/i18n/locales/pl/messages.js +1 -1
  696. package/dist/i18n/locales/pt/messages.js +1 -1
  697. package/dist/i18n/locales/ro/messages.js +1 -1
  698. package/dist/i18n/locales/sk/messages.js +1 -1
  699. package/dist/i18n/locales/tr/messages.js +1 -1
  700. package/dist/legacy/domain-cli/utils/cache.d.ts +1 -1
  701. package/dist/legacy/domain-cli/utils/cache.js +1 -1
  702. package/dist/legacy/domain-spec/__generated/domain-schema.d.ts +16 -0
  703. package/dist/legacy/domain-spec/spec/domain-spec.js +1 -1
  704. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/claude-md.d.ts +1 -1
  705. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/cursor-rules.d.ts +1 -1
  706. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.d.ts +1 -1
  707. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.js +11 -5
  708. package/dist/phoenix/application-spec/generate-application-spec-project.d.ts +1 -0
  709. package/dist/phoenix/application-spec/generate-application-spec-project.js +2 -2
  710. package/dist/phoenix/application-spec/generate-project-files.d.ts +1 -0
  711. package/dist/phoenix/application-spec/index.d.ts +1 -0
  712. package/dist/phoenix/application-spec/index.js +1 -1
  713. package/dist/phoenix/application-spec/resolve-deployment-data.d.ts +11 -0
  714. package/dist/phoenix/application-spec/resolve-deployment-data.js +2 -2
  715. package/dist/phoenix/bin.js +1 -1
  716. package/dist/phoenix/cli.js +1 -1
  717. package/dist/phoenix/commands/build.js +1 -1
  718. package/dist/phoenix/commands/clean.js +1 -1
  719. package/dist/phoenix/commands/deploy.js +1 -1
  720. package/dist/phoenix/commands/dev.js +5 -5
  721. package/dist/phoenix/commands/generated-env-markers.d.ts +1 -0
  722. package/dist/phoenix/commands/generated-env-markers.js +1 -1
  723. package/dist/phoenix/commands/index.d.ts +1 -1
  724. package/dist/phoenix/commands/index.js +1 -1
  725. package/dist/phoenix/commands/sync.js +1 -1
  726. package/dist/phoenix/lingui/index.d.ts +1 -0
  727. package/dist/phoenix/lingui/index.js +1 -0
  728. package/dist/phoenix/{services → lingui}/lingui.d.ts +5 -2
  729. package/dist/phoenix/lingui/lingui.js +1 -0
  730. package/dist/phoenix/services/application-spec-project-watcher.d.ts +3 -1
  731. package/dist/phoenix/services/application-spec-project-watcher.js +2 -2
  732. package/dist/phoenix/services/index.d.ts +1 -0
  733. package/dist/phoenix/services/index.js +1 -1
  734. package/dist/phoenix/services/lingui-watcher.js +1 -1
  735. package/dist/phoenix/services/prepare-development-environment.js +1 -1
  736. package/dist/phoenix/services/swc.js +1 -1
  737. package/dist/phoenix/services/vite-config.js +1 -1
  738. package/dist/react-sdk/application-runtime/common-services/analytics/analytics-service.d.ts +1 -1
  739. package/dist/{configurator/common → react-sdk/application-runtime/common-services/analytics}/frontend-analytics.d.ts +4 -0
  740. package/dist/react-sdk/application-runtime/common-services/analytics/index.d.ts +1 -0
  741. package/dist/react-sdk/application-runtime/common-services/analytics/index.js +1 -1
  742. package/dist/react-sdk/application-runtime/common-services/initialize.d.ts +2 -2
  743. package/dist/react-sdk/application-runtime/domain-application-context/chat-system.d.ts +1 -1
  744. package/dist/react-sdk/application-runtime/hooks/index.d.ts +2 -0
  745. package/dist/react-sdk/application-runtime/hooks/index.js +1 -1
  746. package/dist/react-sdk/application-runtime/hooks/loading/index.d.ts +5 -0
  747. package/dist/react-sdk/application-runtime/hooks/loading/index.js +1 -0
  748. package/dist/react-sdk/application-runtime/hooks/loading/loader-host-context.d.ts +11 -0
  749. package/dist/react-sdk/application-runtime/hooks/loading/loader-host-context.js +1 -0
  750. package/dist/react-sdk/application-runtime/hooks/loading/use-is-awaiting-loading-phase.d.ts +8 -0
  751. package/dist/react-sdk/application-runtime/hooks/loading/use-is-awaiting-loading-phase.js +1 -0
  752. package/dist/react-sdk/application-runtime/hooks/loading/use-is-loader-hosted.d.ts +7 -0
  753. package/dist/react-sdk/application-runtime/hooks/loading/use-is-loader-hosted.js +1 -0
  754. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-actions.d.ts +9 -0
  755. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-actions.js +1 -0
  756. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-application.d.ts +24 -0
  757. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-application.js +1 -0
  758. package/dist/react-sdk/application-runtime/hooks/responsive/index.d.ts +3 -0
  759. package/dist/react-sdk/application-runtime/hooks/responsive/index.js +1 -0
  760. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-actions.d.ts +9 -0
  761. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-actions.js +1 -0
  762. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-application.d.ts +26 -0
  763. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-application.js +1 -0
  764. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-state.d.ts +10 -0
  765. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-state.js +1 -0
  766. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-store.d.ts +24 -0
  767. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-store.js +1 -0
  768. package/dist/react-sdk/application-runtime/hooks/use-access-service.d.ts +5 -0
  769. package/dist/react-sdk/application-runtime/hooks/use-access-service.js +1 -1
  770. package/dist/react-sdk/application-runtime/hooks/use-phoenix-element-slots.d.ts +2 -1
  771. package/dist/react-sdk/application-runtime/hooks/use-web-component-readonly-sync.d.ts +4 -11
  772. package/dist/react-sdk/application-runtime/hooks/use-web-component-readonly-sync.js +1 -1
  773. package/dist/react-sdk/application-runtime/hooks/use-web-component.d.ts +5 -0
  774. package/dist/react-sdk/application-runtime/hooks/use-web-component.js +1 -1
  775. package/dist/react-sdk/application-runtime/host-properties/actions.d.ts +15 -0
  776. package/dist/react-sdk/application-runtime/host-properties/actions.js +1 -0
  777. package/dist/react-sdk/application-runtime/host-properties/connect-host-properties.d.ts +30 -0
  778. package/dist/react-sdk/application-runtime/host-properties/connect-host-properties.js +1 -0
  779. package/dist/react-sdk/application-runtime/host-properties/domain-host-properties.d.ts +7 -0
  780. package/dist/react-sdk/application-runtime/host-properties/domain-host-properties.js +1 -0
  781. package/dist/react-sdk/application-runtime/host-properties/host-property-descriptors.d.ts +21 -0
  782. package/dist/react-sdk/application-runtime/host-properties/host-property-descriptors.js +1 -0
  783. package/dist/react-sdk/application-runtime/host-properties/host-property-scopes.d.ts +42 -0
  784. package/dist/react-sdk/application-runtime/host-properties/host-property-scopes.js +1 -0
  785. package/dist/react-sdk/application-runtime/host-properties/index.d.ts +8 -0
  786. package/dist/react-sdk/application-runtime/host-properties/index.js +1 -0
  787. package/dist/react-sdk/application-runtime/host-properties/initialize.d.ts +7 -0
  788. package/dist/react-sdk/application-runtime/host-properties/initialize.js +1 -0
  789. package/dist/react-sdk/application-runtime/host-properties/selectors.d.ts +54 -0
  790. package/dist/react-sdk/application-runtime/host-properties/selectors.js +1 -0
  791. package/dist/react-sdk/application-runtime/host-properties/types.d.ts +18 -0
  792. package/dist/react-sdk/application-runtime/host-properties/types.js +1 -0
  793. package/dist/react-sdk/application-runtime/index.d.ts +3 -0
  794. package/dist/react-sdk/application-runtime/integration/initialize.d.ts +7 -6
  795. package/dist/react-sdk/application-runtime/integration/initialize.js +1 -1
  796. package/dist/react-sdk/application-runtime/integration/selectors.d.ts +11 -2
  797. package/dist/react-sdk/application-runtime/integration/selectors.js +1 -1
  798. package/dist/react-sdk/application-runtime/integration/types.d.ts +5 -2
  799. package/dist/react-sdk/application-runtime/loading/actions.d.ts +45 -0
  800. package/dist/react-sdk/application-runtime/loading/actions.js +1 -0
  801. package/dist/react-sdk/application-runtime/loading/index.d.ts +4 -0
  802. package/dist/react-sdk/application-runtime/loading/index.js +1 -0
  803. package/dist/react-sdk/application-runtime/loading/initialize.d.ts +3 -0
  804. package/dist/react-sdk/application-runtime/loading/initialize.js +1 -0
  805. package/dist/react-sdk/application-runtime/loading/selectors.d.ts +18 -0
  806. package/dist/react-sdk/application-runtime/loading/selectors.js +1 -0
  807. package/dist/react-sdk/application-runtime/loading/types.d.ts +59 -0
  808. package/dist/react-sdk/application-runtime/loading/types.js +1 -0
  809. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.js +1 -1
  810. package/dist/react-sdk/application-runtime/provider/ApplicationRuntime.d.ts +6 -0
  811. package/dist/react-sdk/application-runtime/provider/ApplicationRuntime.js +1 -1
  812. package/dist/react-sdk/application-runtime/provider/ApplicationType.d.ts +7 -0
  813. package/dist/react-sdk/application-runtime/provider/ApplicationType.js +1 -1
  814. package/dist/react-sdk/application-runtime/responsive/actions.d.ts +47 -0
  815. package/dist/react-sdk/application-runtime/responsive/actions.js +1 -0
  816. package/dist/react-sdk/application-runtime/responsive/index.d.ts +4 -0
  817. package/dist/react-sdk/application-runtime/responsive/index.js +1 -0
  818. package/dist/react-sdk/application-runtime/responsive/initialize.d.ts +3 -0
  819. package/dist/react-sdk/application-runtime/responsive/initialize.js +1 -0
  820. package/dist/react-sdk/application-runtime/responsive/selectors.d.ts +20 -0
  821. package/dist/react-sdk/application-runtime/responsive/selectors.js +1 -0
  822. package/dist/react-sdk/application-runtime/responsive/types.d.ts +104 -0
  823. package/dist/react-sdk/application-runtime/responsive/types.js +1 -0
  824. package/dist/react-sdk/application-runtime/routing/routing-service.d.ts +34 -2
  825. package/dist/react-sdk/application-runtime/routing/routing-service.js +1 -1
  826. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.d.ts +313 -10
  827. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.js +1 -1
  828. package/dist/{configurator/configurator-context → react-sdk}/configurator-routing/ConfiguratorRoutingProvider.d.ts +1 -1
  829. package/dist/react-sdk/configurator-routing/ConfiguratorRoutingProvider.js +1 -0
  830. package/dist/{configurator/configurator-context → react-sdk}/configurator-routing/OnGoToIndexHandler.d.ts +1 -2
  831. package/dist/react-sdk/configurator-routing/OnGoToIndexHandler.js +1 -0
  832. package/dist/react-sdk/configurator-routing/index.d.ts +3 -0
  833. package/dist/{configurator/configurator-context → react-sdk}/configurator-routing/index.js +1 -1
  834. package/dist/{configurator/configurator-context → react-sdk}/configurator-routing/use-power-routing-lifecycle.d.ts +2 -0
  835. package/dist/react-sdk/configurator-routing/use-power-routing-lifecycle.js +1 -0
  836. package/dist/react-sdk/domain-application-context/BackendDataProvider.js +1 -1
  837. package/dist/react-sdk/domain-application-context/ConfigurationPersistSystemFailureHandler.js +1 -1
  838. package/dist/react-sdk/domain-application-context/FrontendDataProvider.js +1 -1
  839. package/dist/react-sdk/domain-application-context/OnPresetLoadedHandler.js +1 -0
  840. package/dist/react-sdk/domain-application-context/PublishedDataProvider.js +1 -1
  841. package/dist/react-sdk/domain-application-context/chat-hooks.d.ts +4 -0
  842. package/dist/react-sdk/domain-application-context/chat-hooks.js +1 -0
  843. package/dist/react-sdk/domain-application-context/index.d.ts +2 -0
  844. package/dist/react-sdk/domain-application-context/index.js +1 -1
  845. package/dist/react-sdk/domain-context/common-hooks/index.d.ts +9 -0
  846. package/dist/react-sdk/domain-context/common-hooks/index.js +1 -0
  847. package/dist/react-sdk/domain-context/common-hooks/use-configuration-save-state.d.ts +23 -0
  848. package/dist/react-sdk/domain-context/common-hooks/use-configuration-save-state.js +1 -0
  849. package/dist/react-sdk/domain-context/common-hooks/use-domain-context.d.ts +1 -0
  850. package/dist/react-sdk/domain-context/component-hooks/index.d.ts +1 -0
  851. package/dist/react-sdk/domain-context/component-hooks/index.js +1 -0
  852. package/dist/react-sdk/domain-context/component-hooks/use-component.js +1 -1
  853. package/dist/react-sdk/domain-context/entity-hooks/use-domain-entity-state.js +1 -1
  854. package/dist/react-sdk/domain-context/entity-hooks/use-entity-price.js +1 -1
  855. package/dist/react-sdk/domain-context/entity-hooks/use-root-entity-id.js +1 -1
  856. package/dist/react-sdk/domain-context/entity-hooks/use-root-entity-state.js +1 -1
  857. package/dist/react-sdk/domain-context/index.d.ts +7 -0
  858. package/dist/react-sdk/domain-context/index.js +1 -1
  859. package/dist/react-sdk/domain-context/system-hooks/composition-hooks.js +1 -1
  860. package/dist/react-sdk/domain-context/system-hooks/dimension-hooks.js +1 -1
  861. package/dist/react-sdk/domain-context/system-hooks/generate-share-link-hooks.d.ts +8 -0
  862. package/dist/react-sdk/domain-context/system-hooks/generate-share-link-hooks.js +1 -0
  863. package/dist/react-sdk/domain-context/system-hooks/hover-hooks.js +1 -1
  864. package/dist/react-sdk/domain-context/system-hooks/locale-switch-hooks.d.ts +24 -0
  865. package/dist/react-sdk/domain-context/system-hooks/locale-switch-hooks.js +1 -0
  866. package/dist/react-sdk/domain-context/system-hooks/navigation-hooks.js +1 -1
  867. package/dist/react-sdk/domain-context/system-hooks/selection-hooks.js +1 -1
  868. package/dist/react-sdk/domain-context/system-hooks/share-links-hooks.d.ts +32 -0
  869. package/dist/react-sdk/domain-context/system-hooks/share-links-hooks.js +1 -0
  870. package/dist/react-sdk/domain-context/system-hooks/step-navigation-hooks.d.ts +57 -0
  871. package/dist/react-sdk/domain-context/system-hooks/step-navigation-hooks.js +1 -0
  872. package/dist/react-sdk/domain-context/system-hooks/tab-navigation-hooks.d.ts +61 -0
  873. package/dist/react-sdk/domain-context/system-hooks/tab-navigation-hooks.js +1 -0
  874. package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.d.ts +20 -0
  875. package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.js +1 -0
  876. package/dist/react-sdk/handlers/FinalizeActionRunner.d.ts +13 -0
  877. package/dist/react-sdk/handlers/FinalizeActionRunner.js +1 -0
  878. package/dist/react-sdk/handlers/FinalizeActionsHost.d.ts +10 -0
  879. package/dist/react-sdk/handlers/FinalizeActionsHost.js +1 -0
  880. package/dist/react-sdk/handlers/FinalizeActionsProvider.d.ts +11 -0
  881. package/dist/react-sdk/handlers/FinalizeActionsProvider.js +1 -0
  882. package/dist/react-sdk/handlers/finalize-actions-context.d.ts +6 -0
  883. package/dist/react-sdk/handlers/finalize-actions-context.js +1 -0
  884. package/dist/react-sdk/handlers/finalize-actions-store.d.ts +23 -0
  885. package/dist/react-sdk/handlers/finalize-actions-store.js +1 -0
  886. package/dist/react-sdk/handlers/index.d.ts +6 -0
  887. package/dist/react-sdk/handlers/index.js +1 -1
  888. package/dist/{configurator/common → react-sdk/handlers}/use-finalize-action.d.ts +3 -2
  889. package/dist/react-sdk/handlers/use-finalize-action.js +1 -0
  890. package/dist/react-sdk/handlers/use-finalize-actions.d.ts +53 -0
  891. package/dist/react-sdk/handlers/use-finalize-actions.js +1 -0
  892. package/dist/react-sdk/index.d.ts +6 -0
  893. package/dist/react-sdk/index.js +1 -1
  894. package/dist/react-sdk/integration/IntegrationSubscription.js +1 -0
  895. package/dist/react-sdk/integration/index.d.ts +1 -0
  896. package/dist/react-sdk/integration/index.js +1 -0
  897. package/dist/react-sdk/lifecycle-providers/ConfiguratorDataProvider.d.ts +8 -0
  898. package/dist/react-sdk/lifecycle-providers/ConfiguratorDataProvider.js +1 -0
  899. package/dist/react-sdk/lifecycle-providers/LifecycleProviders.js +1 -0
  900. package/dist/react-sdk/lifecycle-providers/index.d.ts +2 -0
  901. package/dist/react-sdk/lifecycle-providers/index.js +1 -0
  902. package/dist/react-sdk/loading-state/LoaderHost.d.ts +20 -0
  903. package/dist/react-sdk/loading-state/LoaderHost.js +1 -0
  904. package/dist/react-sdk/loading-state/built-in-loading-phase.d.ts +9 -0
  905. package/dist/react-sdk/loading-state/built-in-loading-phase.js +1 -0
  906. package/dist/react-sdk/loading-state/create-app-loader.d.ts +18 -0
  907. package/dist/react-sdk/loading-state/create-app-loader.js +1 -0
  908. package/dist/react-sdk/loading-state/index.d.ts +4 -2
  909. package/dist/react-sdk/loading-state/index.js +1 -1
  910. package/dist/react-sdk/loading-state/{LoadingStateProvider.d.ts → loading-state-hooks.d.ts} +3 -12
  911. package/dist/react-sdk/loading-state/loading-state-hooks.js +1 -0
  912. package/dist/react-sdk/notifications/index.d.ts +1 -0
  913. package/dist/react-sdk/notifications/index.js +1 -0
  914. package/dist/react-sdk/notifications/snackbar-action-button.d.ts +30 -0
  915. package/dist/react-sdk/notifications/snackbar-action-button.js +1 -0
  916. package/dist/react-sdk/page-elements/ConfigurationNotFoundPagePropsProvider.d.ts +17 -0
  917. package/dist/react-sdk/page-elements/ConfigurationNotFoundPagePropsProvider.js +1 -0
  918. package/dist/react-sdk/page-elements/ConfiguratorErrorPagePropsProvider.d.ts +17 -0
  919. package/dist/react-sdk/page-elements/ConfiguratorErrorPagePropsProvider.js +1 -0
  920. package/dist/react-sdk/page-elements/configurator-error-page-props.d.ts +20 -0
  921. package/dist/react-sdk/page-elements/configurator-error-page-props.js +1 -0
  922. package/dist/react-sdk/page-elements/create-configuration-not-found-page.d.ts +15 -0
  923. package/dist/react-sdk/page-elements/create-configuration-not-found-page.js +1 -0
  924. package/dist/react-sdk/page-elements/create-configurator-error-page.d.ts +14 -0
  925. package/dist/react-sdk/page-elements/create-configurator-error-page.js +1 -0
  926. package/dist/react-sdk/page-elements/create-preset-ui.d.ts +9 -0
  927. package/dist/react-sdk/page-elements/create-preset-ui.js +1 -0
  928. package/dist/react-sdk/page-elements/index.d.ts +6 -0
  929. package/dist/react-sdk/page-elements/index.js +1 -0
  930. package/dist/react-sdk/scene-control-elements/AddEntityFabElement.d.ts +36 -0
  931. package/dist/react-sdk/scene-control-elements/AddEntityFabElement.js +1 -0
  932. package/dist/react-sdk/scene-control-elements/DeleteEntityFabElement.d.ts +44 -0
  933. package/dist/react-sdk/scene-control-elements/DeleteEntityFabElement.js +1 -0
  934. package/dist/react-sdk/scene-control-elements/NavigationHotspotElement.d.ts +38 -0
  935. package/dist/react-sdk/scene-control-elements/NavigationHotspotElement.js +1 -0
  936. package/dist/react-sdk/scene-control-elements/SelectionHotspotElement.d.ts +30 -0
  937. package/dist/react-sdk/scene-control-elements/SelectionHotspotElement.js +1 -0
  938. package/dist/react-sdk/scene-control-elements/ToolMenuFabElement.d.ts +30 -0
  939. package/dist/react-sdk/scene-control-elements/ToolMenuFabElement.js +1 -0
  940. package/dist/react-sdk/scene-control-elements/create-add-entity-fab.d.ts +9 -0
  941. package/dist/react-sdk/scene-control-elements/create-add-entity-fab.js +1 -0
  942. package/dist/react-sdk/scene-control-elements/create-delete-entity-fab.d.ts +9 -0
  943. package/dist/react-sdk/scene-control-elements/create-delete-entity-fab.js +1 -0
  944. package/dist/react-sdk/scene-control-elements/create-navigation-hotspot.d.ts +10 -0
  945. package/dist/react-sdk/scene-control-elements/create-navigation-hotspot.js +1 -0
  946. package/dist/react-sdk/scene-control-elements/create-selection-hotspot.d.ts +9 -0
  947. package/dist/react-sdk/scene-control-elements/create-selection-hotspot.js +1 -0
  948. package/dist/react-sdk/scene-control-elements/create-tool-menu-fab.d.ts +9 -0
  949. package/dist/react-sdk/scene-control-elements/create-tool-menu-fab.js +1 -0
  950. package/dist/react-sdk/scene-control-elements/index.d.ts +11 -0
  951. package/dist/react-sdk/scene-control-elements/index.js +1 -0
  952. package/dist/react-sdk/scene-control-elements/scene-control-tooltip-visibility.d.ts +5 -0
  953. package/dist/react-sdk/scene-control-elements/scene-control-tooltip-visibility.js +1 -0
  954. package/dist/react-sdk/session/NotAuthenticatedPage.d.ts +4 -0
  955. package/dist/react-sdk/session/NotAuthenticatedPage.js +1 -1
  956. package/dist/react-sdk/session/SessionServiceProvider.js +1 -1
  957. package/dist/react-sdk/web-component/create-web-component.js +1 -1
  958. package/dist/react-sdk/web-component/god-mode/god-mode-registry.d.ts +30 -0
  959. package/dist/react-sdk/web-component/god-mode/god-mode-registry.js +1 -0
  960. package/dist/react-sdk/web-component/god-mode/index.d.ts +1 -0
  961. package/dist/react-sdk/web-component/god-mode/index.js +1 -0
  962. package/dist/ui-sdk/components/snackbar/Snackbar.d.ts +24 -3
  963. package/dist/ui-sdk/components/snackbar/Snackbar.js +1 -1
  964. package/dist/ui-sdk/icons/__generated/Lightbulb.d.ts +3 -0
  965. package/dist/ui-sdk/icons/__generated/Lightbulb.js +1 -0
  966. package/dist/ui-sdk/icons/__generated/XCircle.d.ts +3 -0
  967. package/dist/ui-sdk/icons/__generated/XCircle.js +1 -0
  968. package/dist/ui-sdk/icons/__generated/index.d.ts +4 -0
  969. package/dist/ui-sdk/icons/__generated/index.js +1 -1
  970. package/dist/ui-sdk/icons/icons-registry.js +1 -1
  971. package/dist/ui-sdk/responsive-application/ResponsiveApplicationProvider.d.ts +9 -0
  972. package/dist/ui-sdk/responsive-application/ResponsiveApplicationProvider.js +1 -1
  973. package/dist/ui-sdk/responsive-application/index.d.ts +1 -0
  974. package/dist/ui-sdk/responsive-application/responsive-state-store.d.ts +59 -0
  975. package/dist/ui-sdk/responsive-application/responsive-state-store.js +1 -0
  976. package/dist/ui-sdk/responsive-application/use-store-responsive-info.d.ts +7 -0
  977. package/dist/ui-sdk/responsive-application/use-store-responsive-info.js +1 -0
  978. package/dist/ui-sdk/theme/types.d.ts +5 -1
  979. package/package.json +17 -6
  980. package/schema/domain-spec.json +140 -0
  981. package/dist/application-spec/core/components/index.d.ts +0 -2
  982. package/dist/application-spec/core/expressions/index.d.ts +0 -2
  983. package/dist/configurator/common/use-finalize-action.js +0 -1
  984. package/dist/configurator/configurator-context/ConfiguratorDataProvider.d.ts +0 -2
  985. package/dist/configurator/configurator-context/ConfiguratorDataProvider.js +0 -1
  986. package/dist/configurator/configurator-context/IntegrationSubscription.js +0 -1
  987. package/dist/configurator/configurator-context/LifecycleProviders.js +0 -1
  988. package/dist/configurator/configurator-context/OnPresetLoadedHandler.js +0 -1
  989. package/dist/configurator/configurator-context/configurator-hooks/chat-hooks.d.ts +0 -1
  990. package/dist/configurator/configurator-context/configurator-hooks/chat-hooks.js +0 -1
  991. package/dist/configurator/configurator-context/configurator-routing/ConfiguratorRoutingProvider.js +0 -1
  992. package/dist/configurator/configurator-context/configurator-routing/OnGoToIndexHandler.js +0 -1
  993. package/dist/configurator/configurator-context/configurator-routing/index.d.ts +0 -2
  994. package/dist/configurator/configurator-context/configurator-routing/use-power-routing-lifecycle.js +0 -1
  995. package/dist/configurator/ui/assistant/form/built-in-form-registry.d.ts +0 -10
  996. package/dist/configurator/ui/assistant/form/built-in-form-registry.js +0 -1
  997. package/dist/configurator/ui/assistant/form/form-registry.js +0 -8
  998. package/dist/configurator/ui/phoenix-layout-elements/language/use-locale-options.d.ts +0 -4
  999. package/dist/configurator/ui/phoenix-layout-elements/language/use-locale-options.js +0 -1
  1000. package/dist/configurator/ui/phoenix-layout-elements/measurements/use-measurements-visibility.d.ts +0 -4
  1001. package/dist/configurator/ui/phoenix-layout-elements/measurements/use-measurements-visibility.js +0 -1
  1002. package/dist/domain/application/assistant/assistant-form-elements.d.ts +0 -28
  1003. package/dist/domain/application/assistant/assistant-form-elements.js +0 -1
  1004. package/dist/domain/extensions/client-side-image.js +0 -1
  1005. package/dist/domain/extensions/save-template-thumbnail.js +0 -1
  1006. package/dist/phoenix/services/lingui.js +0 -1
  1007. package/dist/react-sdk/application-runtime/runtime/god-mode.d.ts +0 -19
  1008. package/dist/react-sdk/application-runtime/runtime/god-mode.js +0 -1
  1009. package/dist/react-sdk/loading-state/LoadingStateProvider.js +0 -1
  1010. package/dist/react-sdk/loading-state/loading-state-manager.d.ts +0 -32
  1011. package/dist/react-sdk/loading-state/loading-state-manager.js +0 -1
  1012. /package/dist/{application-spec/core/expressions/relation-expression-params.js → domain/spec/application/admin-pages-section.js} +0 -0
  1013. /package/dist/{application-spec/parse-application-files/spec/components/component-entry.js → domain/spec/application/admin-pages.js} +0 -0
  1014. /package/dist/{application-spec/parse-application-files/spec/expressions/expression.js → domain/spec/application/admin-states.js} +0 -0
  1015. /package/dist/{application-spec/core → domain/spec/application}/application-instance.d.ts +0 -0
  1016. /package/dist/{application-spec/core → domain/spec/application}/application-instance.js +0 -0
  1017. /package/dist/{configurator/ui/assistant/form/form-element-definition.js → domain/spec/application/configurator-states.js} +0 -0
  1018. /package/dist/{application-spec/core → domain/spec}/components/component-filter.js +0 -0
  1019. /package/dist/{application-spec/core → domain/spec}/components/index.js +0 -0
  1020. /package/dist/{application-spec/core → domain/spec}/components/sdk-code-ref.d.ts +0 -0
  1021. /package/dist/{application-spec/core → domain/spec}/components/sdk-code-ref.js +0 -0
  1022. /package/dist/{application-spec/core → domain/spec}/expressions/index.js +0 -0
  1023. /package/dist/{application-spec/core → domain/spec}/expressions/relation-expression-params.d.ts +0 -0
  1024. /package/dist/{application-spec/core → domain/spec}/expressions/sdk-expression-implementation.d.ts +0 -0
  1025. /package/dist/{application-spec/core → domain/spec}/expressions/sdk-expression-implementation.js +0 -0
  1026. /package/dist/{application-spec/parse-application-files/spec/components → domain/spec/markers}/component-prop-target.d.ts +0 -0
  1027. /package/dist/{application-spec/parse-application-files/spec/components → domain/spec/markers}/component-prop-target.js +0 -0
  1028. /package/dist/{application-spec/core → domain/spec}/markers/eval-marker.d.ts +0 -0
  1029. /package/dist/{application-spec/core → domain/spec}/markers/eval-marker.js +0 -0
  1030. /package/dist/{configurator/common → react-sdk/application-runtime/common-services/analytics}/frontend-analytics.js +0 -0
  1031. /package/dist/{configurator/configurator-context → react-sdk/domain-application-context}/OnPresetLoadedHandler.d.ts +0 -0
  1032. /package/dist/{configurator/configurator-context → react-sdk/integration}/IntegrationSubscription.d.ts +0 -0
  1033. /package/dist/{configurator/configurator-context → react-sdk/lifecycle-providers}/LifecycleProviders.d.ts +0 -0
@@ -1,3 +1,6 @@
1
+ import type { AssistantBuiltInFormElementAttributes } from '#package/domain';
1
2
  import type { FormContainerProps } from './form-element-props.js';
3
+ type FormOptionsProps = FormContainerProps<AssistantBuiltInFormElementAttributes<'choice' | 'choices'>>;
2
4
  /** A `choice` or `choices`: its options in a wrapping row under its label. */
3
- export declare const FormOptions: ({ label, children }: FormContainerProps) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const FormOptions: ({ label, children }: FormOptionsProps) => import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -1,3 +1,6 @@
1
+ import type { AssistantBuiltInFormElementAttributes } from '#package/domain';
1
2
  import type { FormOptionProps } from './form-element-props.js';
3
+ type FormReplyProps = FormOptionProps<AssistantBuiltInFormElementAttributes<'reply'>>;
2
4
  /** A `reply`: a short answer as a small pill, marked while it is picked. */
3
- export declare const FormReply: ({ label, disabled, selected, onSelect }: FormOptionProps) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const FormReply: ({ attributes, label, disabled, selected, onSelect }: FormReplyProps) => import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -1 +1 @@
1
- import{jsx as r}from"react/jsx-runtime";import{alpha as e,styled as i}from"@mui/material";import{AssistantPanelName as o}from"../theme.js";let t=i("button",{name:o,slot:"formReply"})(({theme:{palette:r,spacing:i,typography:o}})=>({...o.body2,background:r.background.paper,border:`1px solid ${r.divider}`,borderRadius:"calc(infinity * 1px)",color:r.text.primary,cursor:"pointer",margin:0,paddingBlock:i(.25),paddingInline:i(1.25),textAlign:"start","&:hover:not(:disabled)":{background:r.action.hover},"&:focus-visible":{outline:`2px solid ${r.primary.main}`,outlineOffset:1},"&:disabled":{color:r.text.disabled,cursor:"default"},'&[aria-pressed="true"]':{background:e(r.primary.main,r.action.selectedOpacity),borderColor:r.primary.main}}));export const FormReply=({label:e,disabled:i,selected:o,onSelect:a})=>r(t,{type:"button",disabled:i,"aria-pressed":o,onClick:a,children:e});
1
+ import{jsx as r}from"react/jsx-runtime";import{alpha as e,styled as o}from"@mui/material";import{AssistantPanelName as i}from"../theme.js";let a=o("button",{name:i,slot:"formReply"})(({theme:{palette:r,spacing:o,typography:i}})=>({...i.body2,background:r.background.paper,border:`1px solid ${r.divider}`,borderRadius:"calc(infinity * 1px)",color:r.text.primary,cursor:"pointer",margin:0,paddingBlock:o(.25),paddingInline:o(1.25),textAlign:"start","&:hover:not(:disabled)":{background:r.action.hover},"&:focus-visible":{outline:`2px solid ${r.primary.main}`,outlineOffset:1},"&:disabled":{color:r.text.disabled,cursor:"default"},'&[aria-pressed="true"]':{background:e(r.primary.main,r.action.selectedOpacity),borderColor:r.primary.main}}));export const FormReply=({attributes:e,label:o,disabled:i,selected:t,onSelect:d})=>r(a,{type:"button",disabled:i,"aria-pressed":t,onClick:()=>d([e.value,o].find(Boolean)??""),children:o});
@@ -0,0 +1,10 @@
1
+ import type { AssistantBuiltInFormElementAttributes } from '#package/domain';
2
+ import type { FormOptionProps } from './form-element-props.js';
3
+ type FormSwatchProps = FormOptionProps<AssistantBuiltInFormElementAttributes<'swatch'>>;
4
+ /**
5
+ * A `swatch`: a small square filled with its color or covered by its picture, its label in a
6
+ * tooltip, ringed and checked while it is picked. A picture that is not a resource path or fails to
7
+ * load leaves the color, or a neutral tile.
8
+ */
9
+ export declare const FormSwatch: ({ attributes, label, disabled, selected, onSelect }: FormSwatchProps) => import("react/jsx-runtime").JSX.Element;
10
+ export {};
@@ -0,0 +1 @@
1
+ import{jsx as e,jsxs as i}from"react/jsx-runtime";import{Tooltip as r,styled as o}from"@mui/material";import{useCallback as a,useState as t}from"react";import{PhxIcon as n}from"#package/ui-sdk";import{useResourceImageUrl as l}from"../resource-image/index.js";import{AssistantPanelName as s}from"../theme.js";let d=o("button",{name:s,slot:"formSwatch"})(({theme:{palette:e,shape:i}})=>({background:e.action.hover,blockSize:36,border:`1px solid ${e.divider}`,borderRadius:i.borderRadius,cursor:"pointer",flex:"none",inlineSize:36,margin:0,overflow:"hidden",padding:0,position:"relative","&:focus-visible":{outline:`2px solid ${e.primary.main}`,outlineOffset:3},"&:disabled":{cursor:"default",opacity:e.action.disabledOpacity},'&[aria-pressed="true"]':{boxShadow:`0 0 0 2px ${e.background.paper}, 0 0 0 4px ${e.primary.main}`}})),m=o("img",{name:s,slot:"formSwatchImage"})({blockSize:"100%",display:"block",inlineSize:"100%",objectFit:"cover"}),c=o("span",{name:s,slot:"formSwatchCheck"})(({theme:{palette:e}})=>({alignItems:"center",background:e.primary.main,borderRadius:"50%",color:e.primary.contrastText,display:"flex",fontSize:14,inset:"50% auto auto 50%",justifyContent:"center",padding:2,position:"absolute",transform:"translate(-50%, -50%)"})),p=o("span")({display:"inline-flex"});export const FormSwatch=({attributes:o,label:s,disabled:u,selected:f,onSelect:b})=>{let{value:h,color:x,image:g}=o,y=l()(g),[k,S]=t(),j=[s,h,x,g].find(Boolean),v=a(()=>{S(y)},[y]);return e(r,{title:j??"",placement:"top",children:e(p,{children:i(d,{type:"button","aria-label":j,disabled:u,"aria-pressed":f,onClick:()=>b([h,s,x,g].find(Boolean)??""),style:null==x?void 0:{background:x},children:[null!=y&&y!==k&&e(m,{src:y,alt:"",loading:"lazy",onError:v}),f&&e(c,{"aria-hidden":!0,children:e(n,{name:"Check",fontSize:"inherit"})})]})})})};
@@ -1,3 +1,6 @@
1
+ import type { AssistantBuiltInFormElementAttributes } from '#package/domain';
1
2
  import type { FormInputProps } from './form-element-props.js';
3
+ type FormTextProps = FormInputProps<string, AssistantBuiltInFormElementAttributes<'text'>>;
2
4
  /** A `text`: a single line the user types, with its label above it. */
3
- export declare const FormText: ({ attributes, label, value, disabled, state, onChange }: FormInputProps) => import("react/jsx-runtime").JSX.Element;
5
+ export declare const FormText: ({ attributes: { value, placeholder }, label, disabled, state, onChange }: FormTextProps) => import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -1 +1 @@
1
- import{jsx as e,jsxs as r}from"react/jsx-runtime";import{InputBase as t,styled as o}from"@mui/material";import{useCallback as i}from"react";import{AssistantPanelName as a}from"../theme.js";let d=o("label",{name:a,slot:"formText"})(({theme:{palette:e,spacing:r,typography:t}})=>({alignSelf:"stretch",color:e.text.secondary,display:"grid",gap:r(.5),...t.caption})),m=o(t,{name:a,slot:"formTextInput"})(({theme:{palette:e,spacing:r,typography:t}})=>({...t.body2,border:`1px solid ${e.divider}`,borderRadius:12,color:e.text.primary,paddingBlock:r(.75),paddingInline:r(1.5),"&.Mui-focused":{borderColor:e.primary.main},"& .MuiInputBase-input":{padding:0}}));export const FormText=({attributes:t,label:o,value:a,disabled:l,state:n,onChange:p})=>{let{placeholder:s}=t;return r(d,{children:[o,e(m,{value:"string"==typeof n?n:a??"",placeholder:"string"==typeof s?s:void 0,disabled:l,onChange:i(e=>{let r=e.target.value;p(r,""===r.trim()?void 0:r.trim())},[p])})]})};
1
+ import{jsx as e,jsxs as r}from"react/jsx-runtime";import{InputBase as t,styled as o}from"@mui/material";import{useCallback as i,useEffect as a}from"react";import{AssistantPanelName as d}from"../theme.js";let m=o("label",{name:d,slot:"formText"})(({theme:{palette:e,spacing:r,typography:t}})=>({alignSelf:"stretch",color:e.text.secondary,display:"grid",gap:r(.5),...t.caption})),l=e=>""===e.trim()?void 0:e.trim(),n=o(t,{name:d,slot:"formTextInput"})(({theme:{palette:e,spacing:r,typography:t}})=>({...t.body2,border:`1px solid ${e.divider}`,borderRadius:12,color:e.text.primary,paddingBlock:r(.75),paddingInline:r(1.5),"&.Mui-focused":{borderColor:e.primary.main},"& .MuiInputBase-input":{padding:0}}));export const FormText=({attributes:{value:t,placeholder:o},label:d,disabled:s,state:p,onChange:c})=>(a(()=>{void 0===p&&void 0!==t&&""!==t&&c(t,l(t))},[p,t,c]),r(m,{children:[d,e(n,{value:p??t??"",placeholder:o,disabled:s,onChange:i(e=>{let r=e.target.value;c(r,l(r))},[c])})]}));
@@ -0,0 +1,10 @@
1
+ /** The limits a `number` keeps its value within, from its attributes. */
2
+ export interface FormNumberLimits {
3
+ readonly min?: number;
4
+ readonly max?: number;
5
+ }
6
+ /**
7
+ * The value a `number` settles on once the user leaves the field: within `min` and `max`. The
8
+ * `step` is left out: it moves the slider, and a typed value between steps stays as typed.
9
+ */
10
+ export declare const clampFormNumber: (value: number, { min, max }: FormNumberLimits) => number;
@@ -0,0 +1 @@
1
+ export const clampFormNumber=(m,{min:a,max:t})=>Math.min(t??1/0,Math.max(a??-1/0,m));
@@ -1,34 +1,38 @@
1
1
  import type { ReactNode } from 'react';
2
- /** Validated and coerced attributes of an element, without the built-in `label` and `value`. */
2
+ /** Validated and coerced attributes of an element, without the built-in `label`: what any element gets. */
3
3
  export type FormElementAttributes = Readonly<Record<string, unknown>>;
4
4
  /** Props of a `group`, `choice` or `choices` element: it lays out the children the form renders for it. */
5
- export interface FormContainerProps {
6
- readonly attributes: FormElementAttributes;
5
+ export interface FormContainerProps<ATTRIBUTES = FormElementAttributes> {
6
+ readonly attributes: ATTRIBUTES;
7
7
  readonly label?: string;
8
8
  readonly disabled: boolean;
9
9
  readonly children: ReactNode;
10
10
  }
11
11
  /**
12
- * Props of an option. Its container decides what a pick does: in a `choice` it replaces the
13
- * previous pick, in a `choices` it toggles, and in a form that asks one question it sends at once.
12
+ * Props of an option. It reports what it answers with when the user picks it, as an input reports
13
+ * its answer: by convention its `value` attribute, or else its label. Its container decides what a
14
+ * pick does: in a `choice` it replaces the previous pick, in a `choices` it toggles, and in a form
15
+ * that asks one question it sends at once. An empty answer counts as unanswered.
14
16
  */
15
- export interface FormOptionProps {
16
- readonly attributes: FormElementAttributes;
17
+ export interface FormOptionProps<ATTRIBUTES = FormElementAttributes> {
18
+ readonly attributes: ATTRIBUTES;
17
19
  readonly label?: string;
18
20
  readonly disabled: boolean;
19
21
  readonly selected: boolean;
20
- onSelect(): void;
22
+ onSelect(answer: string): void;
21
23
  }
22
24
  /**
23
- * Props of an input. Its state is its own: the form stores it and hands it back. `answer` is the
24
- * text the answer shows for it, or `undefined` while there is none.
25
+ * Props of an input. Its state is its own: the form stores what it reports and hands it back.
26
+ * `answer` is the text the answer shows for it, or `undefined` while there is none. An input that
27
+ * starts with a `value` attribute reports its starting answer when it mounts, since an input that
28
+ * never reports is unanswered and only the input knows how its value reads in the answer, such as
29
+ * a number with its unit. A quick input, which a lone form sends on its first report, reports only
30
+ * what the user did.
25
31
  */
26
- export interface FormInputProps {
27
- readonly attributes: FormElementAttributes;
32
+ export interface FormInputProps<STATE = unknown, ATTRIBUTES = FormElementAttributes> {
33
+ readonly attributes: ATTRIBUTES;
28
34
  readonly label?: string;
29
- /** What the field starts with. */
30
- readonly value?: string;
31
35
  readonly disabled: boolean;
32
- readonly state: unknown;
33
- onChange(state: unknown, answer: string | undefined): void;
36
+ readonly state: STATE | undefined;
37
+ onChange(state: STATE, answer: string | undefined): void;
34
38
  }
@@ -1,5 +1,9 @@
1
1
  export type { FormContainerProps, FormElementAttributes, FormInputProps, FormOptionProps, } from './form-element-props.js';
2
+ export { FormCard } from './FormCard.js';
3
+ export { FormConfirm } from './FormConfirm.js';
2
4
  export { FormGroup } from './FormGroup.js';
3
5
  export { FormOptions } from './FormOptions.js';
6
+ export { FormNumber } from './FormNumber.js';
4
7
  export { FormReply } from './FormReply.js';
8
+ export { FormSwatch } from './FormSwatch.js';
5
9
  export { FormText } from './FormText.js';
@@ -1 +1 @@
1
- export{FormGroup}from"./FormGroup.js";export{FormOptions}from"./FormOptions.js";export{FormReply}from"./FormReply.js";export{FormText}from"./FormText.js";
1
+ export{FormCard}from"./FormCard.js";export{FormConfirm}from"./FormConfirm.js";export{FormGroup}from"./FormGroup.js";export{FormOptions}from"./FormOptions.js";export{FormNumber}from"./FormNumber.js";export{FormReply}from"./FormReply.js";export{FormSwatch}from"./FormSwatch.js";export{FormText}from"./FormText.js";
@@ -1,2 +1,5 @@
1
1
  export { AssistantPanel, ASSISTANT_PANEL_SLOT } from './AssistantPanel.js';
2
2
  export { useIsAssistantPanelOpen } from './use-is-assistant-panel-open.js';
3
+ export type { AssistantFormElementRoleProps, AssistantFormElementType, CreateAssistantFormElement, } from './form/index.js';
4
+ export { createAssistantFormElementFactory } from './form/index.js';
5
+ export type { FormContainerProps, FormInputProps, FormOptionProps } from './form-elements/index.js';
@@ -1 +1 @@
1
- export{AssistantPanel,ASSISTANT_PANEL_SLOT}from"./AssistantPanel.js";export{useIsAssistantPanelOpen}from"./use-is-assistant-panel-open.js";
1
+ export{AssistantPanel,ASSISTANT_PANEL_SLOT}from"./AssistantPanel.js";export{useIsAssistantPanelOpen}from"./use-is-assistant-panel-open.js";export{createAssistantFormElementFactory}from"./form/index.js";
@@ -1,3 +1,3 @@
1
1
  export { AssistantImage } from './AssistantImage.js';
2
- export { RESOURCE_PATH_PATTERN, isResourcePath } from './resource-path.js';
2
+ export { isResourcePath } from './resource-path.js';
3
3
  export { useResourceImageUrl } from './use-resource-image-url.js';
@@ -1 +1 @@
1
- export{AssistantImage}from"./AssistantImage.js";export{RESOURCE_PATH_PATTERN,isResourcePath}from"./resource-path.js";export{useResourceImageUrl}from"./use-resource-image-url.js";
1
+ export{AssistantImage}from"./AssistantImage.js";export{isResourcePath}from"./resource-path.js";export{useResourceImageUrl}from"./use-resource-image-url.js";
@@ -1,11 +1,2 @@
1
- /**
2
- * A path into the project's resources, the kind stored on `imageUrl` fields: no scheme and no host,
3
- * so resolving it never leaves the resources origin. A backslash, a control character or leading
4
- * whitespace is refused too, because the URL parser reads a backslash as a slash and strips the
5
- * others, which would turn `\\host` or ` //host` into an address on another host.
6
- *
7
- * Written as a JSON Schema `pattern`, so attribute schemas can apply the same rule.
8
- */
9
- export declare const RESOURCE_PATH_PATTERN: string;
10
1
  /** True when the image source the model wrote may be requested: a path into the project's resources. */
11
2
  export declare const isResourcePath: (src: string | undefined) => src is string;
@@ -1 +1 @@
1
- export const RESOURCE_PATH_PATTERN=String.raw`^(?![a-zA-Z][a-zA-Z0-9+.-]*:)(?!//)[^\s\\\x00-\x1f][^\\\x00-\x1f]*$`;let t=RegExp(RESOURCE_PATH_PATTERN,"u");export const isResourcePath=R=>null!=R&&t.test(R);
1
+ import{ASSISTANT_RESOURCE_PATH_PATTERN as e}from"#package/domain";let t=RegExp(e,"u");export const isResourcePath=e=>null!=e&&t.test(e);
@@ -0,0 +1,9 @@
1
+ import type { AssistantToolScreenshot } from './tool-screenshots.js';
2
+ interface ScreenshotThumbnailsProps {
3
+ readonly screenshots: readonly AssistantToolScreenshot[];
4
+ /** Called once a picture has loaded, which changes the size of the popover. */
5
+ readonly onImageLoad: () => void;
6
+ }
7
+ /** The pictures of a tool call's screenshots. */
8
+ export declare const ScreenshotThumbnails: ({ screenshots, onImageLoad }: ScreenshotThumbnailsProps) => import("react/jsx-runtime").JSX.Element;
9
+ export {};
@@ -0,0 +1 @@
1
+ import{jsx as e}from"react/jsx-runtime";import{styled as o}from"@mui/material";import{AssistantPanelName as r}from"../theme.js";import{useScreenshotSrc as a}from"./use-screenshot-src.js";let i=o("span",{name:r,slot:"screenshots",shouldForwardProp:e=>"columns"!==e})(({columns:e,theme:{palette:o,shape:r,shadows:a,spacing:i}})=>({background:o.background.paper,borderRadius:r.borderRadius,boxShadow:a[4],display:"grid",gap:i(1.5),gridTemplateColumns:`repeat(${e}, minmax(0, 200px))`,maxInlineSize:"80vw",padding:i(1.5)})),s=o("img")(({theme:{palette:e,shape:o}})=>({blockSize:"auto",borderRadius:o.borderRadius/2,boxShadow:`inset 0 0 0 1px ${e.divider}`,display:"block",inlineSize:"100%"})),d=o("span")(({theme:{palette:e,shape:o}})=>({aspectRatio:"4 / 3",background:e.action.hover,borderRadius:o.borderRadius/2,display:"block"})),t=({picture:o,onImageLoad:r})=>{let i=a(o);return void 0===i?e(d,{}):e(s,{src:i,alt:"",onLoad:r})};export const ScreenshotThumbnails=({screenshots:o,onImageLoad:r})=>e(i,{columns:Math.min(o.length,2),children:o.map(({label:o,picture:a})=>e(t,{picture:a,onImageLoad:r},o))});
@@ -0,0 +1,2 @@
1
+ export { ScreenshotThumbnails } from './ScreenshotThumbnails.js';
2
+ export { type AssistantToolScreenshot, readToolScreenshots } from './tool-screenshots.js';
@@ -0,0 +1 @@
1
+ export{ScreenshotThumbnails}from"./ScreenshotThumbnails.js";export{readToolScreenshots}from"./tool-screenshots.js";
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Where the panel gets a screenshot's picture from: the server, by the id the browser uploaded it
3
+ * under, or the data URL of a picture a thread from before the upload carries inline.
4
+ */
5
+ export type AssistantScreenshotPicture = {
6
+ readonly kind: 'stored';
7
+ readonly imageId: string;
8
+ } | {
9
+ readonly kind: 'inline';
10
+ readonly src: string;
11
+ };
12
+ /** A screenshot a `query` or `apply` call took, as the panel shows it. */
13
+ export interface AssistantToolScreenshot {
14
+ /** The label the call's `image` field returned, such as `Cabinet-2/doorLayout#2`. */
15
+ readonly label: string;
16
+ readonly picture: AssistantScreenshotPicture;
17
+ }
18
+ /**
19
+ * The screenshots of a tool result: the image parts that follow the result's JSON, each after the
20
+ * text part with its label. A result without them, such as plain JSON or an error, has none.
21
+ */
22
+ export declare const readToolScreenshots: (result: unknown) => readonly AssistantToolScreenshot[];
@@ -0,0 +1 @@
1
+ import{z as t}from"zod";import{readAssistantImageReference as e}from"@salsita-ai/contracts/assistant";let a=t.object({type:t.literal("text"),content:t.string()}),r=t.object({type:t.literal("image"),source:t.discriminatedUnion("type",[t.object({type:t.literal("url"),value:t.string()}),t.object({type:t.literal("data"),value:t.string(),mimeType:t.string()})])}),s=/^[^/]+\/[^#]+(?:#\d+)?$/;export const readToolScreenshots=t=>Array.isArray(t)?t.slice(1).flatMap((t,l,i)=>{let n=r.safeParse(t),o=a.safeParse(i[l-1]),c=n.success?(({source:t})=>{if("data"===t.type)return{kind:"inline",src:`data:${t.mimeType};base64,${t.value}`};let a=e(t.value);return null===a?null:{kind:"stored",imageId:a}})(n.data):null;return c&&o.success&&s.test(o.data.content)?[{label:o.data.content,picture:c}]:[]}):[];
@@ -0,0 +1,8 @@
1
+ import type { AssistantScreenshotPicture } from './tool-screenshots.js';
2
+ /**
3
+ * The `src` of a screenshot's picture: the data URL of an inline one at once, and for an uploaded
4
+ * one the object URL the assistant system reads it into, once it has been read; `undefined` until
5
+ * then and when the read fails. Only the open popover of a call's screenshots calls it, so nothing
6
+ * is read while the popover is closed.
7
+ */
8
+ export declare const useScreenshotSrc: (picture: AssistantScreenshotPicture) => string | undefined;
@@ -0,0 +1 @@
1
+ import{useEffect as r,useState as e}from"react";import{useConfigurator as n}from"../../../application-runtime/index.js";export const useScreenshotSrc=t=>{let{assistantSystem:i}=n(),o="stored"===t.kind?t.imageId:null,[l,d]=e();return(r(()=>{if(null===o)return;let r=!0;return i.loadScreenshotUrl(o).then(e=>{r&&d({imageId:o,src:e})},()=>void 0),()=>{r=!1}},[i,o]),"inline"===t.kind)?t.src:l?.imageId===o?l.src:void 0};
@@ -2,7 +2,7 @@
2
2
  export declare const hasOpenFence: (text: string) => boolean;
3
3
  /**
4
4
  * Makes the Markdown of a reply that is still streaming renderable as it stands, so half-written
5
- * markup does not flash as raw characters: an open code fence is closed, an inline code span, a link
6
- * or a table header the model has not finished is held back, and open bold text is closed.
5
+ * markup does not flash as raw characters: an open code fence is closed, an inline code span, a link,
6
+ * an alert marker or a table header the model has not finished is held back, and open bold text is closed.
7
7
  */
8
8
  export declare const completeStreamedMarkdown: (text: string) => string;
@@ -1,2 +1,2 @@
1
- let e=(e,t)=>e.split(t).length-1,t=/^\|?\s*:?-+:?\s*(\|\s*:?-+:?\s*)*\|?\s*$/;export const hasOpenFence=t=>e(t,"```")%2==1;export const completeStreamedMarkdown=n=>{if(hasOpenFence(n))return`${n}
2
- \`\`\``;let l=n.lastIndexOf("```"),s=-1===l?"":n.slice(0,l+3),r=n.slice(s.length),c=(e=>{let n=e.split("\n"),l=n.length;for(;l>0&&n[l-1]?.trimStart().startsWith("|");)l-=1;let s=n.slice(l),r=s[1],c=null!=r&&s.length>2&&t.test(r);return 0===s.length||c?e:n.slice(0,l).join("\n")})((e(r,"`")%2==1?r.slice(0,r.lastIndexOf("`")):r).replace(/!?\[([^\]\n]*)\](?:\([^)\n]*)?$/,"$1").replace(/!?\[[^\]\n]*$/,"")),i=e(c,"**")%2==1?`${c}**`:c;return`${s}${i}`};
1
+ let e=(e,t)=>e.split(t).length-1,t=/^\|?\s*:?-+:?\s*(\|\s*:?-+:?\s*)*\|?\s*$/,l=/(^|\n) {0,3}>[ \t]*\[![a-z]*$/i,n=/(^|\n) {0,3}>[ \t]*\[![a-z]+\][ \t]*$/i;export const hasOpenFence=t=>e(t,"```")%2==1;export const completeStreamedMarkdown=s=>{var r;let a;if(hasOpenFence(s))return`${s}
2
+ \`\`\``;let i=s.lastIndexOf("```"),c=-1===i?"":s.slice(0,i+3),{head:$,marker:h}=(r=s.slice(c.length),null==(a=n.exec(r))?{head:r.replace(l,"$1"),marker:""}:{head:r.slice(0,a.index),marker:r.slice(a.index)}),p=(e=>{let l=e.split("\n"),n=l.length;for(;n>0&&l[n-1]?.trimStart().startsWith("|");)n-=1;let s=l.slice(n),r=s[1],a=null!=r&&s.length>2&&t.test(r);return 0===s.length||a?e:l.slice(0,n).join("\n")})((e($,"`")%2==1?$.slice(0,$.lastIndexOf("`")):$).replace(/!?\[([^\]\n]*)\](?:\([^)\n]*)?$/,"$1").replace(/!?\[[^\]\n]*$/,"")),d=e(p,"**")%2==1?`${p}**`:p;return`${c}${d}${h}`};
@@ -1,11 +1,14 @@
1
1
  import { type AssistantToolErrorCode } from '@salsita-ai/contracts/assistant';
2
2
  /**
3
- * How a tool call of the assistant looks in the thread: still running, finished, a change that was
4
- * not kept (`failed`), or a read that answered with errors (`flawed`), which matters less because
5
- * the assistant usually just asks again.
3
+ * How a tool call of the assistant looks in the thread: still running, finished, or gone wrong
4
+ * (`failed`): a change that was not kept, or a read that answered with errors. Both look the same,
5
+ * since the reply says what came of them.
6
+ */
7
+ export type AssistantToolChipState = 'running' | 'done' | 'failed';
8
+ /**
9
+ * What a tool chip is called: the title or the operation names the model gave, a fixed text, or the
10
+ * tool's name.
6
11
  */
7
- export type AssistantToolChipState = 'running' | 'done' | 'failed' | 'flawed';
8
- /** What a tool chip is called: the operation names the model gave, a fixed text, or the tool's name. */
9
12
  export type AssistantToolChipLabel = {
10
13
  readonly kind: 'text';
11
14
  readonly text: string;
@@ -22,6 +25,12 @@ export interface AssistantToolChip {
22
25
  * panel knows. Nothing for a call that went wrong for any other reason.
23
26
  */
24
27
  readonly errorCode: AssistantToolErrorCode | undefined;
28
+ /**
29
+ * The messages of the violations a failed call failed on, written for the user, in result order.
30
+ * Empty for a call that did not fail, that failed for any other reason, or whose violations have
31
+ * no message.
32
+ */
33
+ readonly violations: readonly string[];
25
34
  }
26
35
  /** A tool call of a message as the chip reads it. */
27
36
  export interface AssistantToolCall {
@@ -36,9 +45,10 @@ export interface AssistantToolCall {
36
45
  readonly isReplyRunning: boolean;
37
46
  }
38
47
  /**
39
- * Describes one tool call for its chip: the label in the order operation names, fixed text for the
40
- * `apply` and `query` tools, tool name; and whether the call runs, finished, or went wrong. Why it
41
- * went wrong is part of it only as the code of an error the server recorded: the text of a tool
42
- * result is worded for the model, not for the user.
48
+ * Describes one tool call for its chip: the label in the order title, operation names, fixed text
49
+ * for the `apply` and `query` tools, tool name; and whether the call runs, finished, or went wrong.
50
+ * Why it went wrong is part of it only as the code of an error the server recorded, or as the
51
+ * messages of the violations it failed on, which are written for the user: the rest of a tool result
52
+ * is worded for the model.
43
53
  */
44
54
  export declare const describeToolCall: (call: AssistantToolCall) => AssistantToolChip;
@@ -1 +1 @@
1
- import{Kind as e,parse as t}from"graphql";import{z as n}from"zod";import{ASSISTANT_TOOL_ERROR_CODES as r,AssistantToolError as a,applyTool as i,queryTool as o}from"@salsita-ai/contracts/assistant";let l=n.object({operations:n.array(n.object({query:n.string(),operationName:n.string().nullish()}))}),s=n.object({results:n.array(n.object({errors:n.array(n.unknown()).optional()})),committed:n.boolean()});export const describeToolCall=n=>{let d=(({name:n,input:r})=>{let a,s=(a=l.safeParse(r)).success?a.data.operations.flatMap(({query:n,operationName:r})=>r??(n=>{try{let r=t(n).definitions.find(t=>t.kind===e.OPERATION_DEFINITION);return r?.kind===e.OPERATION_DEFINITION?r.name?.value:void 0}catch{return}})(n)??[]):[];return s.length>0?{kind:"text",text:s.join(", ")}:n===i.name?{kind:"updateDesign"}:n===o.name?{kind:"readDesign"}:{kind:"text",text:n}})(n);if(null==n.result&&null==n.error)return{label:d,state:n.isReplyRunning?"running":"done",errorCode:void 0};let u=(e=>{let t=a.safeParse(e);if(t.success)return r.find(e=>e===t.data.code)})(n.result);return{label:d,state:(({name:e,result:t,error:n},r)=>{if(null!=n||null!=r)return e===o.name?"flawed":"failed";if(e!==i.name&&e!==o.name)return"done";let a=s.safeParse(t);if(!a.success)return e===o.name?"flawed":"failed";let{results:l,committed:d}=a.data;return e===i.name?d?"done":"failed":l.some(({errors:e})=>(e?.length??0)>0)||0===l.length?"flawed":"done"})(n,u),errorCode:u}};
1
+ import{Kind as e,parse as t}from"graphql";import{z as r}from"zod";import{ASSISTANT_TOOL_ERROR_CODES as a,AssistantToolError as n,applyTool as s,queryTool as i}from"@salsita-ai/contracts/assistant";let l=r.object({title:r.string().nullish().catch(void 0),operations:r.array(r.object({query:r.string(),operationName:r.string().nullish()}))}),o=r.object({results:r.array(r.object({errors:r.array(r.unknown()).optional()})),committed:r.boolean()}),u=r.tuple([r.object({type:r.literal("text"),content:r.string()})]).rest(r.unknown()),d=e=>{let t=u.safeParse(e);if(!t.success)return e;try{return JSON.parse(t.data[0].content)}catch{return e}},c=r.object({message:r.string(),extensions:r.object({code:r.literal("VIOLATION"),type:r.string()})});export const describeToolCall=r=>{var u;let f,m=(({name:r,input:a})=>{let n,o,u=(n=l.safeParse(a)).success&&n.data.title?.trim()||void 0;if(null!=u)return{kind:"text",text:u};let d=(o=l.safeParse(a)).success?o.data.operations.flatMap(({query:r,operationName:a})=>a??(r=>{try{let a=t(r).definitions.find(t=>t.kind===e.OPERATION_DEFINITION);return a?.kind===e.OPERATION_DEFINITION?a.name?.value:void 0}catch{return}})(r)??[]):[];return d.length>0?{kind:"text",text:d.join(", ")}:r===s.name?{kind:"updateDesign"}:r===i.name?{kind:"readDesign"}:{kind:"text",text:r}})(r);if(null==r.result&&null==r.error)return{label:m,state:r.isReplyRunning?"running":"done",errorCode:void 0,violations:[]};let p=(e=>{let t=n.safeParse(e);if(t.success)return a.find(e=>e===t.data.code)})(r.result),g=(({name:e,result:t,error:r},a)=>{if(null!=r||null!=a)return"failed";if(e!==s.name&&e!==i.name)return"done";let n=o.safeParse(d(t));if(!n.success)return"failed";let{results:l,committed:u}=n.data;return e===s.name?u?"done":"failed":l.some(({errors:e})=>(e?.length??0)>0)||0===l.length?"failed":"done"})(r,p);return{label:m,state:g,errorCode:p,violations:"failed"===g?(u=r.result,(f=o.safeParse(d(u))).success?f.data.results.flatMap(({errors:e})=>(e??[]).flatMap(e=>{let t=c.safeParse(e);return t.success&&t.data.message!==t.data.extensions.type?[t.data.message]:[]})):[]):[]}};
@@ -1 +1 @@
1
- import{jsx as e,jsxs as r}from"react/jsx-runtime";import{Trans as i}from"@lingui/react";import{Button as t,Typography as o,styled as s}from"@mui/material";import{PhxIcon as a}from"#package/ui-sdk";import{useConfiguratorRouting as n}from"../../../../configurator-context/index.js";let c=s("div")(({theme:{spacing:e}})=>({display:"grid",minBlockSize:"100cqb",padding:e(2),placeItems:"center",position:"relative"})),m=s("div")({maxInlineSize:"80ch",textAlign:"center",textWrap:"pretty"});export const GPUAccelerationDisabled=()=>{let{goToIndex:s}=n();return e(c,{children:r(m,{children:[e(a,{name:"CubeDuotone",sx:{fontSize:48}}),e(o,{component:"h1",variant:"h4",sx:{my:4},children:e(i,{id:"sdk.messages.error.gpuDisabled.title",message:"GPU acceleration disabled"})}),e(o,{color:"text.secondary",children:e(i,{id:"sdk.messages.error.gpuDisabled.message",message:"Your browser has GPU acceleration disabled, which prevents the configurator from working correctly. 3D performance is severely impacted. Enabled this option in your browser settings to use the configurator."})}),e(t,{variant:"text",color:"primary",size:"large",sx:{mt:6.5},onClick:s,children:e(i,{id:"sdk.messages.navigation.goToHomepage.label",message:"Go To Homepage"})})]})})};
1
+ import{jsx as e,jsxs as r}from"react/jsx-runtime";import{Trans as i}from"@lingui/react";import{Button as a,Typography as t,styled as s}from"@mui/material";import{useConfiguratorRouting as o}from"#package/react-sdk";import{PhxIcon as n}from"#package/ui-sdk";let c=s("div")(({theme:{spacing:e}})=>({display:"grid",minBlockSize:"100cqb",padding:e(2),placeItems:"center",position:"relative"})),m=s("div")({maxInlineSize:"80ch",textAlign:"center",textWrap:"pretty"});export const GPUAccelerationDisabled=()=>{let{goToIndex:s}=o();return e(c,{children:r(m,{children:[e(n,{name:"CubeDuotone",sx:{fontSize:48}}),e(t,{component:"h1",variant:"h4",sx:{my:4},children:e(i,{id:"sdk.messages.error.gpuDisabled.title",message:"GPU acceleration disabled"})}),e(t,{color:"text.secondary",children:e(i,{id:"sdk.messages.error.gpuDisabled.message",message:"Your browser has GPU acceleration disabled, which prevents the configurator from working correctly. 3D performance is severely impacted. Enabled this option in your browser settings to use the configurator."})}),e(a,{variant:"text",color:"primary",size:"large",sx:{mt:6.5},onClick:s,children:e(i,{id:"sdk.messages.navigation.goToHomepage.label",message:"Go To Homepage"})})]})})};
@@ -1 +1 @@
1
- import{jsx as e,jsxs as t,Fragment as r}from"react/jsx-runtime";import{Box as a}from"@mui/material";import{useDetectGPU as i}from"@react-three/drei";import{Canvas as o,useThree as n}from"@react-three/fiber";import{memo as s,useCallback as l,useEffect as p,useMemo as c,useState as f}from"react";import{BuiltInLoadingPhase as m,useLoadingPhase as d,useLoadingStateManager as h,useStoreSelector as u}from"#package/react-sdk";import{useResponsive as g}from"#package/ui-sdk";import{useConfigurator as x}from"../../../../application-runtime/index.js";import{Scene as v,SceneEnvironment as C}from"../../../../scene/index.js";import{CanvasLoader as P}from"../../../phoenix-layout-elements/index.js";import{GPUIssuePage as w}from"./GPUIssuePage.js";let j=e=>{let{onCanNotLoad:t}=e,r=n(e=>e.gl);return p(()=>{let e=r.getContext(),a=e.getExtension("WEBGL_debug_renderer_info");a?e.getParameter(a.UNMASKED_RENDERER_WEBGL).toLocaleLowerCase().includes("swiftshader")&&t?.("no-acceleration"):t?.("no-acceleration")},[r,t]),null};export const Canvas=s(()=>{let[n,s]=f(null),[D,E]=f(!0),{canvasSystem:B}=x(),L=u(e=>B.getCanvasConfig(e.state),[B]),y=i(),{canvasPadding:k}=g(),M=null!==h();d({id:m.SceneAssets,label:"Loading 3D scene…"},D);let $=l(()=>{E(!1),B.reportFirstLoadFinished()},[B]),_=l(e=>{B.onCanvasClick$.next(e)},[B]),b=l(e=>{B.onCanvasPointerMove$.next(e)},[B]),A=c(()=>{let e={};return L?.precision&&(e.precision=L.precision),L?.alpha&&(e.alpha=L.alpha),L?.premultipliedAlpha&&(e.premultipliedAlpha=L.premultipliedAlpha),L?.antialias&&(e.antialias=L.antialias),L?.stencil&&(e.stencil=L.stencil),L?.preserveDrawingBuffer&&(e.preserveDrawingBuffer=L.preserveDrawingBuffer),L?.powerPreference&&(e.powerPreference=L.powerPreference),L?.depth&&(e.depth=L.depth),L?.logarithmicDepthBuffer&&(e.logarithmicDepthBuffer=L.logarithmicDepthBuffer),L?.failIfMajorPerformanceCaveat&&(e.failIfMajorPerformanceCaveat=L.failIfMajorPerformanceCaveat),e},[L]);return(p(()=>{"WEBGL_UNSUPPORTED"===y.type&&s("no-gpu")},[y,s]),n)?e(w,{issue:n}):t(r,{children:[e(a,{component:"div",sx:{transition:"opacity 0.3s ease-in",opacity:+!D,width:"100%",height:"100%"},children:t(o,{gl:A,onClick:_,onPointerMove:b,frameloop:L?.frameloop,shadows:L?.shadows,children:[e(v,{onFirstLoad:$}),e(j,{onCanNotLoad:s}),e(C,{})]})}),!M&&e(a,{component:"div",sx:{position:"absolute",top:k.top,left:k.left,width:`calc(100% - ${k.left}px - ${k.right}px)`,height:`calc(100% - ${k.top}px - ${k.bottom}px)`,display:"flex",justifyContent:"center",alignItems:"center",transition:"opacity 0.3s ease-in",opacity:+!!D,pointerEvents:"none"},children:e(P,{})})]})});
1
+ import{jsx as e,jsxs as t,Fragment as r}from"react/jsx-runtime";import{Box as a}from"@mui/material";import{useDetectGPU as i}from"@react-three/drei";import{Canvas as o,useThree as n}from"@react-three/fiber";import{memo as s,useCallback as p,useEffect as l,useMemo as c,useState as f}from"react";import{BuiltInLoadingPhase as m,useExpectPhase as d,useIsLoaderHosted as h,useLoadingPhase as u,useStoreSelector as g}from"#package/react-sdk";import{useResponsive as x}from"#package/ui-sdk";import{useConfigurator as v}from"../../../../application-runtime/index.js";import{Scene as C,SceneEnvironment as P}from"../../../../scene/index.js";import{CanvasLoader as w}from"../../../phoenix-layout-elements/index.js";import{GPUIssuePage as j}from"./GPUIssuePage.js";let D=e=>{let{onCanNotLoad:t}=e,r=n(e=>e.gl);return l(()=>{let e=r.getContext(),a=e.getExtension("WEBGL_debug_renderer_info");a?e.getParameter(a.UNMASKED_RENDERER_WEBGL).toLocaleLowerCase().includes("swiftshader")&&t?.("no-acceleration"):t?.("no-acceleration")},[r,t]),null};export const Canvas=s(()=>{let[n,s]=f(null),[E,B]=f(!0),{canvasSystem:L}=v(),y=g(e=>L.getCanvasConfig(e.state),[L]),k=i(),{canvasPadding:A}=x(),M=h();d(m.SceneAssets),u({id:m.SceneAssets,label:"Loading 3D scene…"},E);let $=p(()=>{B(!1),L.reportFirstLoadFinished()},[L]),_=p(e=>{L.onCanvasClick$.next(e)},[L]),b=p(e=>{L.onCanvasPointerMove$.next(e)},[L]),I=c(()=>{let e={};return y?.precision&&(e.precision=y.precision),y?.alpha&&(e.alpha=y.alpha),y?.premultipliedAlpha&&(e.premultipliedAlpha=y.premultipliedAlpha),y?.antialias&&(e.antialias=y.antialias),y?.stencil&&(e.stencil=y.stencil),y?.preserveDrawingBuffer&&(e.preserveDrawingBuffer=y.preserveDrawingBuffer),y?.powerPreference&&(e.powerPreference=y.powerPreference),y?.depth&&(e.depth=y.depth),y?.logarithmicDepthBuffer&&(e.logarithmicDepthBuffer=y.logarithmicDepthBuffer),y?.failIfMajorPerformanceCaveat&&(e.failIfMajorPerformanceCaveat=y.failIfMajorPerformanceCaveat),e},[y]);return(l(()=>{"WEBGL_UNSUPPORTED"===k.type&&s("no-gpu")},[k,s]),n)?e(j,{issue:n}):t(r,{children:[e(a,{component:"div",sx:{transition:"opacity 0.3s ease-in",opacity:+!E,width:"100%",height:"100%"},children:t(o,{gl:I,onClick:_,onPointerMove:b,frameloop:y?.frameloop,shadows:y?.shadows,children:[e(C,{onFirstLoad:$}),e(D,{onCanNotLoad:s}),e(P,{})]})}),!M&&e(a,{component:"div",sx:{position:"absolute",top:A.top,left:A.left,width:`calc(100% - ${A.left}px - ${A.right}px)`,height:`calc(100% - ${A.top}px - ${A.bottom}px)`,display:"flex",justifyContent:"center",alignItems:"center",transition:"opacity 0.3s ease-in",opacity:+!!E,pointerEvents:"none"},children:e(w,{})})]})});
@@ -1 +1 @@
1
- import{jsx as t}from"react/jsx-runtime";import{styled as e}from"@mui/material";import{Suspense as o,memo as r,useEffect as i,useRef as n,useState as a}from"react";import{useLoadingStateManager as s}from"#package/react-sdk";import{usePreview as l}from"../../../../configurator-context/index.js";import{CanvasLoader as m}from"../../../phoenix-layout-elements/index.js";import{Canvas as c}from"./LayoutCanvas.js";let p=e("div",{shouldForwardProp:t=>"masked"!==t})(({masked:t,theme:{palette:e}})=>({backgroundColor:e.background.scene,inset:0,position:"absolute",isolation:"isolate",maxBlockSize:"var(--phx-app-height)","&::after":{backgroundColor:"inherit",content:'""',display:"block",inset:"inherit",opacity:+!!t,pointerEvents:"none",position:"absolute",transitionDuration:t?"0ms":"100ms",transitionProperty:"opacity",transitionTimingFunction:"linear"}})),u=e("div")({display:"grid",inset:0,placeItems:"center",pointerEvents:"none",position:"absolute"}),d=()=>null!==s()?null:t(u,{children:t(m,{})});export const SharedCanvas=r(()=>{let{isExpanded:e}=l(),[r,s]=a(!1),m=n(e);return i(()=>{if(e===m.current)return;m.current=e,s(!0);let t=setTimeout(()=>s(!1),600);return()=>clearTimeout(t)},[e]),t(p,{masked:r,children:t(o,{fallback:t(d,{}),children:t(c,{})})})});
1
+ import{jsx as t}from"react/jsx-runtime";import{styled as e}from"@mui/material";import{Suspense as o,memo as r,useEffect as i,useRef as n,useState as a}from"react";import{BuiltInLoadingPhase as s,useExpectPhase as l,useIsLoaderHosted as m}from"#package/react-sdk";import{usePreview as c}from"../../../../configurator-context/index.js";import{CanvasLoader as p}from"../../../phoenix-layout-elements/index.js";import{Canvas as u}from"./LayoutCanvas.js";let d=e("div",{shouldForwardProp:t=>"masked"!==t})(({masked:t,theme:{palette:e}})=>({backgroundColor:e.background.scene,inset:0,position:"absolute",isolation:"isolate",maxBlockSize:"var(--phx-app-height)","&::after":{backgroundColor:"inherit",content:'""',display:"block",inset:"inherit",opacity:+!!t,pointerEvents:"none",position:"absolute",transitionDuration:t?"0ms":"100ms",transitionProperty:"opacity",transitionTimingFunction:"linear"}})),h=e("div")({display:"grid",inset:0,placeItems:"center",pointerEvents:"none",position:"absolute"}),f=()=>m()?null:t(h,{children:t(p,{})});export const SharedCanvas=r(()=>{l(s.SceneAssets);let{isExpanded:e}=c(),[r,m]=a(!1),p=n(e);return i(()=>{if(e===p.current)return;p.current=e,m(!0);let t=setTimeout(()=>m(!1),600);return()=>clearTimeout(t)},[e]),t(d,{masked:r,children:t(o,{fallback:t(f,{}),children:t(u,{})})})});
@@ -1 +1 @@
1
- import{jsx as e,jsxs as r}from"react/jsx-runtime";import{Trans as o}from"@lingui/react";import{Button as t,Typography as i,styled as s}from"@mui/material";import{PhxIcon as a}from"#package/ui-sdk";import{useConfiguratorRouting as n}from"../../../../configurator-context/index.js";let m=s("div")(({theme:{spacing:e}})=>({display:"grid",minBlockSize:"100cqb",padding:e(2),placeItems:"center",position:"relative"})),d=s("div")({maxInlineSize:"80ch",textAlign:"center",textWrap:"pretty"});export const WebGLNotSupported=()=>{let{goToIndex:s}=n();return e(m,{children:r(d,{children:[e(a,{name:"CubeDuotone",sx:{fontSize:48}}),e(i,{component:"h1",variant:"h4",sx:{my:4},children:e(o,{id:"sdk.messages.error.webglNotSupported.title",message:"WebGL is not supported or cannot be initialized"})}),e(i,{color:"text.secondary",children:e(o,{id:"sdk.messages.error.webglNotSupported.message",message:"Your device or browser does not support WebGL, which is required for the configurator to function. Try a different browser or device that supports WebGL"})}),e(t,{variant:"text",color:"primary",size:"large",sx:{mt:6.5},onClick:s,children:e(o,{id:"sdk.messages.navigation.goToHomepage.label",message:"Go To Homepage"})})]})})};
1
+ import{jsx as e,jsxs as r}from"react/jsx-runtime";import{Trans as t}from"@lingui/react";import{Button as o,Typography as i,styled as s}from"@mui/material";import{useConfiguratorRouting as a}from"#package/react-sdk";import{PhxIcon as n}from"#package/ui-sdk";let m=s("div")(({theme:{spacing:e}})=>({display:"grid",minBlockSize:"100cqb",padding:e(2),placeItems:"center",position:"relative"})),d=s("div")({maxInlineSize:"80ch",textAlign:"center",textWrap:"pretty"});export const WebGLNotSupported=()=>{let{goToIndex:s}=a();return e(m,{children:r(d,{children:[e(n,{name:"CubeDuotone",sx:{fontSize:48}}),e(i,{component:"h1",variant:"h4",sx:{my:4},children:e(t,{id:"sdk.messages.error.webglNotSupported.title",message:"WebGL is not supported or cannot be initialized"})}),e(i,{color:"text.secondary",children:e(t,{id:"sdk.messages.error.webglNotSupported.message",message:"Your device or browser does not support WebGL, which is required for the configurator to function. Try a different browser or device that supports WebGL"})}),e(o,{variant:"text",color:"primary",size:"large",sx:{mt:6.5},onClick:s,children:e(t,{id:"sdk.messages.navigation.goToHomepage.label",message:"Go To Homepage"})})]})})};
@@ -1,7 +1,7 @@
1
1
  export declare const useMobileTabs: () => {
2
2
  tabs: {
3
3
  label: string;
4
- icon: import("react").ReactNode;
4
+ icon: string | number | boolean | Iterable<import("react").ReactNode> | import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | undefined;
5
5
  value: string;
6
6
  isActive: boolean;
7
7
  }[];
@@ -1 +1 @@
1
- import{useCallback as e,useMemo as t}from"react";import{horizontalTabsComponent as o,sidebarTabsComponent as n}from"#package/domain";import{useActiveNavigationState as a,useComponents as i,useDomain as r,useResolveLocalizable as s,useSelectedDomainEntityId as c}from"#package/react-sdk";import{useIsSidebarSummaryActive as l}from"../../../../configurator-context/index.js";export const useMobileTabs=()=>{let m=a(),b=i({componentTypes:[n],entityIds:[c()]}),d=i({componentTypes:[o]}),p=t(()=>{if(b.length>0&&d.length>0)throw Error("Both sidebar tabs and horizontal tabs are configured, only one tabs component type can be used at a time, remove either sidebarTabs or horizontalTabs from your domain configuration");if(b.length>1)throw Error("Multiple sidebar tab components are active, only one sidebar tabs component can be active at a time, check your domain configuration to ensure only one sidebarTabs component is defined");if(d.length>1)throw Error("Multiple horizontal tab components are active, only one horizontal tabs component can be active at a time, check your domain configuration to ensure only one horizontalTabs component is defined");return b.length>0?b.at(0):d.at(0)},[b,d]),h=s(),u=l(),g=t(()=>p?p.state.tabs.map(e=>{let t=e.navigationStates[0];if(!t)throw Error(`Tab ${h(e.label)} has no navigation states!`);return{label:h(e.label),icon:e.icon,value:t,isActive:e.navigationStates.includes(m)}}):[],[p,m,h]),{navigationSystem:f,storeSystem:v}=r(),y=e(e=>{v.stageAndCommit([f.getNavigationUpdate(e)])},[f,v]),T=t(()=>{let e=g.find(e=>e.isActive);return e?.value??"none"},[g]);return u?{tabs:[],activeTab:"none",onChange:()=>{}}:{tabs:g,activeTab:T,onChange:y}};
1
+ import{useCallback as t,useMemo as e}from"react";import{horizontalTabsComponent as o,sidebarTabsComponent as a}from"#package/domain";import{useComponents as n,useDomain as i,useResolveLocalizable as r,useSelectedDomainEntityId as s,useTabNavigation as c}from"#package/react-sdk";import{useIsSidebarSummaryActive as b}from"../../../../configurator-context/index.js";export const useMobileTabs=()=>{let{tabs:l,activeTab:m}=c(),{navigationSystem:p,storeSystem:d}=i(),h=n({componentTypes:[a],entityIds:[s()]}),f=n({componentTypes:[o]}),g=r(),u=b(),v=e(()=>l.map(t=>({label:t.label,icon:t.iconNode??t.icon,value:t.state,isActive:t.isActive})),[l]),y=t(t=>{d.stageAndCommit([p.getNavigationUpdate(t)])},[p,d]),T=m?.state??"none";if(h.length>0&&f.length>0)throw Error("Both sidebar tabs and horizontal tabs are configured, only one tabs component type can be used at a time, remove either sidebarTabs or horizontalTabs from your domain configuration");if(h.length>1)throw Error("Multiple sidebar tab components are active, only one sidebar tabs component can be active at a time, check your domain configuration to ensure only one sidebarTabs component is defined");if(f.length>1)throw Error("Multiple horizontal tab components are active, only one horizontal tabs component can be active at a time, check your domain configuration to ensure only one horizontalTabs component is defined");let k=[...h.flatMap(t=>t.state.tabs),...f.flatMap(t=>t.state.tabs)].find(t=>0===t.navigationStates.length);if(k)throw Error(`Tab ${g(k.label)} has no navigation states!`);return u?{tabs:[],activeTab:"none",onChange:()=>{}}:{tabs:v,activeTab:T,onChange:y}};
@@ -1 +1 @@
1
- import{jsx as e,jsxs as a}from"react/jsx-runtime";import{Trans as o}from"@lingui/react";import{Button as n,DialogActions as r,DialogContent as i,DialogContentText as t,DialogTitle as l,Dialog as c,dialogClasses as s,styled as d}from"@mui/material";import{useMutation as m}from"@tanstack/react-query";import{useCallback as u}from"react";import{useAuthorizedClient as p,useConfigurationId as g,useDomainApplication as f}from"#package/react-sdk";import{LoadingButton as k}from"#package/ui-sdk";import{useConfiguratorRouting as y}from"../../../../configurator-context/index.js";let h=d(c)(()=>({[`.${s.paper}`]:{inlineSize:"min(480px, 100%)",maxWidth:"unset"}}));export const CloneToEditDialog=c=>{let{onClose:s,open:d}=c,{goToConfigurationDetail:b}=y(),x=p(),C=g(),{configurationPersistSystem:j}=f(),{mutate:v,isPending:T}=m({mutationFn:()=>x.cloneConfiguration(C,j.revisionId$.value),onSuccess:e=>{s(),b(e.configurationId,e.accessToken)}}),D=u(()=>{v()},[v]);return a(h,{open:d,onClose:s,children:[e(l,{children:e(o,{id:"sdk.layout.banner.readonly.clone.title",message:"Edit configuration"})}),e(i,{children:e(t,{children:e(o,{id:"sdk.layout.banner.readonly.clone.message",message:"You're about to create an editable copy of this setup. Changes you make won't affect the original shared link."})})}),a(r,{children:[e(n,{variant:"text",color:"inherit",onClick:s,children:e(o,{id:"sdk.layout.banner.readonly.cancel.label",message:"Cancel"})}),e(k,{variant:"contained",color:"primary",busy:T,onClick:D,children:e(o,{id:"sdk.layout.banner.readonly.clone.label",message:"Create editable copy"})})]})]})};
1
+ import{jsx as e,jsxs as a}from"react/jsx-runtime";import{Trans as n}from"@lingui/react";import{Button as o,DialogActions as r,DialogContent as i,DialogContentText as t,DialogTitle as l,Dialog as s,dialogClasses as c,styled as d}from"@mui/material";import{useMutation as m}from"@tanstack/react-query";import{useCallback as u}from"react";import{useAuthorizedClient as p,useConfigurationId as g,useConfiguratorRouting as k,useDomainApplication as y}from"#package/react-sdk";import{LoadingButton as f}from"#package/ui-sdk";let h=d(s)(()=>({[`.${c.paper}`]:{inlineSize:"min(480px, 100%)",maxWidth:"unset"}}));export const CloneToEditDialog=s=>{let{onClose:c,open:d}=s,{goToConfigurationDetail:b}=k(),C=p(),x=g(),{configurationPersistSystem:v}=y(),{mutate:j,isPending:T}=m({mutationFn:()=>C.cloneConfiguration(x,v.revisionId$.value),onSuccess:e=>{c(),b(e.configurationId,e.accessToken)}}),D=u(()=>{j()},[j]);return a(h,{open:d,onClose:c,children:[e(l,{children:e(n,{id:"sdk.layout.banner.readonly.clone.title",message:"Edit configuration"})}),e(i,{children:e(t,{children:e(n,{id:"sdk.layout.banner.readonly.clone.message",message:"You're about to create an editable copy of this setup. Changes you make won't affect the original shared link."})})}),a(r,{children:[e(o,{variant:"text",color:"inherit",onClick:c,children:e(n,{id:"sdk.layout.banner.readonly.cancel.label",message:"Cancel"})}),e(f,{variant:"contained",color:"primary",busy:T,onClick:D,children:e(n,{id:"sdk.layout.banner.readonly.clone.label",message:"Create editable copy"})})]})]})};
@@ -1,7 +1,7 @@
1
1
  export declare const useSidebarTabs: () => {
2
2
  tabs: {
3
3
  label: string;
4
- icon: import("react").ReactNode;
4
+ icon: string | number | boolean | Iterable<import("react").ReactNode> | import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | undefined;
5
5
  value: string;
6
6
  isActive: boolean;
7
7
  }[];
@@ -1 +1 @@
1
- import{useCallback as t,useMemo as a}from"react";import{sidebarTabsComponent as e}from"#package/domain";import{useActiveNavigationState as n,useComponents as o,useDomain as i,useResolveLocalizable as r,useSelectedDomainEntityId as s}from"#package/react-sdk";import{useIsSidebarSummaryActive as c}from"../../../../configurator-context/index.js";export const useSidebarTabs=()=>{let m=n(),p=o({componentTypes:[e],entityIds:[s()]}),g=r(),l=c(),d=a(()=>(p??[]).flatMap(t=>t.state.tabs).map(t=>{let a=t.navigationStates[0];if(!a)throw Error(`Tab ${a} has no navigation states!`);return{label:g(t.label),icon:t.icon,value:a,isActive:t.navigationStates.includes(m)}}),[p,m,g]),{navigationSystem:b,storeSystem:f}=i(),v=t(t=>{f.stageAndCommit([b.getNavigationUpdate(t)])},[b,f]),u=a(()=>{let t=d.find(t=>t.isActive);return t?.value??"none"},[d]);return l?{tabs:[],activeTab:"none",onChange:()=>{}}:{tabs:d,activeTab:u,onChange:v}};
1
+ import{useCallback as t,useMemo as a}from"react";import{sidebarTabsComponent as e}from"#package/domain";import{useComponents as o,useResolveLocalizable as n,useSelectedDomainEntityId as i,useTabNavigation as s}from"#package/react-sdk";import{useIsSidebarSummaryActive as r}from"../../../../configurator-context/index.js";export const useSidebarTabs=()=>{let{tabs:c,activeTab:b,select:m}=s({source:"sidebarTabs"}),p=o({componentTypes:[e],entityIds:[i()]}),d=n(),l=r(),f=a(()=>c.map(t=>({label:t.label,icon:t.iconNode??t.icon,value:t.state,isActive:t.isActive})),[c]),g=t(t=>{m(c.findIndex(a=>a.state===t))},[m,c]),v=b?.state??"none",T=p.flatMap(t=>t.state.tabs).find(t=>0===t.navigationStates.length);if(T)throw Error(`Tab ${d(T.label)} has no navigation states!`);return l?{tabs:[],activeTab:"none",onChange:()=>{}}:{tabs:f,activeTab:v,onChange:g}};
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Covers the configurator while an export runs, which keeps it inert: a press anywhere shows for a
3
+ * moment why nothing responds, instead of a configurator that silently ignores the user.
4
+ */
5
+ export declare const ExportingOverlay: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ import{jsx as e}from"react/jsx-runtime";import{Trans as r}from"@lingui/react";import{styled as t}from"@mui/material";import{useCallback as o,useEffect as i,useState as a}from"react";let n=t("div",{name:"PhxExportingOverlay",slot:"root"})(({theme:{zIndex:e}})=>({alignItems:"center",cursor:"wait",display:"flex",inset:0,justifyContent:"center",position:"absolute",zIndex:e.modal+1})),l=t("div",{name:"PhxExportingOverlay",slot:"message"})(({theme:{palette:e,shape:r,shadows:t,spacing:o,typography:i}})=>({...i.body2,background:e.background.paper,borderRadius:r.borderRadius,boxShadow:t[4],color:e.text.primary,padding:o(1,2)}));export const ExportingOverlay=()=>{let[t,s]=a(null),m=o(()=>s(Date.now()),[]);return i(()=>{if(null===t)return;let e=setTimeout(()=>s(null),2e3);return()=>clearTimeout(e)},[t]),e(n,{onPointerDown:m,children:null!==t&&e(l,{role:"status",children:e(r,{id:"sdk.layout.exporting.message",message:"Configurator is exporting… please wait"})})})};
@@ -1 +1 @@
1
- import{jsx as r,jsxs as o,Fragment as s}from"react/jsx-runtime";import{useResponsive as t}from"#package/ui-sdk";import{LayoutSlots as e}from"../slots/index.js";import{DesktopLayout as a}from"./DesktopLayout.js";import{MobileLayout as m}from"./MobileLayout.js";export const Layout=()=>{let{isDesktop:i}=t();return o(s,{children:[r(e.Services,{}),r(e.SharedCanvas,{}),i?r(a,{}):r(m,{})]})};
1
+ import{jsx as t,jsxs as e,Fragment as r}from"react/jsx-runtime";import{styled as o}from"@mui/material";import{useEffect as i}from"react";import{useEagerObservableValue as m}from"#package/react-sdk";import{useResponsive as n}from"#package/ui-sdk";import{useConfigurator as a}from"../../../application-runtime/index.js";import{LayoutSlots as s}from"../slots/index.js";import{DesktopLayout as c}from"./DesktopLayout.js";import{ExportingOverlay as p}from"./ExportingOverlay.js";import{MobileLayout as d}from"./MobileLayout.js";let l=o("div")({display:"contents"});export const Layout=()=>{let{isDesktop:o}=n(),{exportSystem:u}=a(),f=m(u.exporting$);return i(()=>{if(!f)return;let t=document.activeElement;return()=>{t instanceof HTMLElement&&t.isConnected&&document.activeElement===document.body&&t.focus()}},[f]),e(r,{children:[e(l,{...{inert:f?"":void 0},children:[t(s.Services,{}),t(s.SharedCanvas,{}),o?t(c,{}):t(d,{})]}),f&&t(p,{})]})};
@@ -7,7 +7,7 @@ export interface LayoutSceneSafeAreaOptions {
7
7
  }
8
8
  /**
9
9
  * Measures the gap between a full-area container and an inner "safe area" element,
10
- * and writes the resulting gaps to the responsive context as canvas padding — letting the
10
+ * and writes the resulting gaps to the responsive state as canvas padding — letting the
11
11
  * 3D scene render only in the region not covered by overlay UI (preview body, sidebar, etc.).
12
12
  *
13
13
  * The implementation behind `useSceneSafeArea`, with the two things only the built-in
@@ -1 +1 @@
1
- import{useCallback as t,useEffect as e,useRef as r}from"react";import{canvasPaddingComponent as n}from"#package/domain";import{useFirstComponent as o}from"#package/react-sdk";import{useResponsive as a}from"#package/ui-sdk";export const useLayoutSceneSafeArea=c=>{let{enabled:u,hasMiniSidebar:i}=c,{setCanvasPadding:m}=a(),l=r(null),s=r(null),f=r(null),h=r(null),p=r(0),g=r(()=>{}),b=o({componentTypes:[n]}),d=t(()=>{let t=s.current,e=f.current;if(!u||!t||!e)return;let r=t.getBoundingClientRect(),n=e.getBoundingClientRect();if(Math.abs(r.width-t.offsetWidth)>1||Math.abs(r.height-t.offsetHeight)>1){if(p.current+=1,p.current>60){p.current=0;return}l.current&&cancelAnimationFrame(l.current),l.current=requestAnimationFrame(()=>g.current());return}p.current=0;let o={bottom:Math.max(0,r.bottom-n.bottom),left:Math.max(0,n.left-r.left),right:Math.max(0,r.right-n.right),top:Math.max(0,n.top-r.top)},a=i?.3:1,c=b?.state.bottom??1,h=b?.state.left??1,d=b?.state.right??a,A=b?.state.top??1;m({bottom:o.bottom*c,left:o.left*h,right:o.right*d,top:o.top*A})},[u,i,b?.state.bottom,b?.state.left,b?.state.right,b?.state.top,m]);g.current=d;let A=t(()=>{l.current&&cancelAnimationFrame(l.current),l.current=requestAnimationFrame(d)},[d]),M=t(()=>{h.current?.disconnect(),h.current=null},[]),k=t(()=>{let t=s.current,e=f.current;if(!u||!t||!e)return void M();M();let r=new ResizeObserver(A);r.observe(t),r.observe(e),h.current=r},[M,u,A]),x=t(t=>{s.current=t,k()},[k]),F=t(t=>{f.current=t,k()},[k]);return e(()=>(k(),()=>{M(),l.current&&cancelAnimationFrame(l.current)}),[k,M]),{containerRef:x,safeAreaRef:F,update:A}};
1
+ import{useCallback as t,useEffect as e,useRef as r}from"react";import{canvasPaddingComponent as n}from"#package/domain";import{useFirstComponent as o,useResponsiveActions as a}from"#package/react-sdk";export const useLayoutSceneSafeArea=c=>{let{enabled:u,hasMiniSidebar:i}=c,{setCanvasPadding:l}=a(),m=r(null),s=r(null),f=r(null),h=r(null),g=r(0),p=r(()=>{}),b=o({componentTypes:[n]}),d=t(()=>{let t=s.current,e=f.current;if(!u||!t||!e)return;let r=t.getBoundingClientRect(),n=e.getBoundingClientRect();if(Math.abs(r.width-t.offsetWidth)>1||Math.abs(r.height-t.offsetHeight)>1){if(g.current+=1,g.current>60){g.current=0;return}m.current&&cancelAnimationFrame(m.current),m.current=requestAnimationFrame(()=>p.current());return}g.current=0;let o={bottom:Math.max(0,r.bottom-n.bottom),left:Math.max(0,n.left-r.left),right:Math.max(0,r.right-n.right),top:Math.max(0,n.top-r.top)},a=i?.3:1,c=b?.state.bottom??1,h=b?.state.left??1,d=b?.state.right??a,A=b?.state.top??1;l({bottom:o.bottom*c,left:o.left*h,right:o.right*d,top:o.top*A})},[u,i,b?.state.bottom,b?.state.left,b?.state.right,b?.state.top,l]);p.current=d;let A=t(()=>{m.current&&cancelAnimationFrame(m.current),m.current=requestAnimationFrame(d)},[d]),M=t(()=>{h.current?.disconnect(),h.current=null},[]),x=t(()=>{let t=s.current,e=f.current;if(!u||!t||!e)return void M();M();let r=new ResizeObserver(A);r.observe(t),r.observe(e),h.current=r},[M,u,A]),F=t(t=>{s.current=t,x()},[x]),v=t(t=>{f.current=t,x()},[x]);return e(()=>(x(),()=>{M(),m.current&&cancelAnimationFrame(m.current)}),[x,M]),{containerRef:F,safeAreaRef:v,update:A}};
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * A layout attaches `containerRef` to the element that covers the whole canvas and `safeAreaRef`
5
5
  * to the region the scene should stay visible in. The hook measures the gap between the two,
6
- * again whenever either element resizes, and writes it to the responsive context as the canvas
6
+ * again whenever either element resizes, and writes it to the responsive state as the canvas
7
7
  * padding the camera frames the scene with.
8
8
  *
9
9
  * Returns:
@@ -4,3 +4,4 @@ export * from './phoenix-layout-elements/index.js';
4
4
  export * from './preset-layout/index.js';
5
5
  export * as Legacy from './legacy/index.js';
6
6
  export * from './ConfiguratorEncapsulatedTheme.js';
7
+ export { type AssistantFormElementRoleProps, type AssistantFormElementType, type CreateAssistantFormElement, type FormContainerProps, type FormInputProps, type FormOptionProps, createAssistantFormElementFactory, } from './assistant/index.js';
@@ -1 +1 @@
1
- export*from"./configurator-layout/index.js";export*from"./phoenix-entity-elements/index.js";export*from"./phoenix-layout-elements/index.js";export*from"./preset-layout/index.js";export*as Legacy from"./legacy/index.js";export*from"./ConfiguratorEncapsulatedTheme.js";
1
+ export*from"./configurator-layout/index.js";export*from"./phoenix-entity-elements/index.js";export*from"./phoenix-layout-elements/index.js";export*from"./preset-layout/index.js";export*as Legacy from"./legacy/index.js";export*from"./ConfiguratorEncapsulatedTheme.js";export{createAssistantFormElementFactory}from"./assistant/index.js";
@@ -1 +1 @@
1
- import{jsx as a,jsxs as r,Fragment as o}from"react/jsx-runtime";import{useCallback as t,useState as e}from"react";import{useLocalizable as i}from"#package/react-sdk";import{ExperimentalChatUi as n,MobileChat as m}from"#package/ui-sdk";import{useChatEnabled as l}from"../../../configurator-context/index.js";import{Chat as s}from"./Chat.js";export const MobileChat=c=>{let{icon:p,label:h,heading:d}=c,[f,g]=e(!1),u=l(),x=i(h),b=t(()=>{g(!0)},[]),j=t(()=>{g(!1)},[]);return u?r(o,{children:[a(m.Button,{icon:p,ariaLabel:x,handleOpen:b}),a(m.Dialog,{isOpen:f,handleClose:j,heading:d,children:a(n.ChatRoot,{variant:"mobile",children:a(s,{variant:"mobile"})})})]}):null};
1
+ import{jsx as a,jsxs as e,Fragment as r}from"react/jsx-runtime";import{useCallback as t,useState as o}from"react";import{useChatEnabled as i,useLocalizable as n}from"#package/react-sdk";import{ExperimentalChatUi as l,MobileChat as m}from"#package/ui-sdk";import{Chat as s}from"./Chat.js";export const MobileChat=c=>{let{icon:h,label:p,heading:d}=c,[b,f]=o(!1),g=i(),u=n(p),C=t(()=>{f(!0)},[]),j=t(()=>{f(!1)},[]);return g?e(r,{children:[a(m.Button,{icon:h,ariaLabel:u,handleOpen:C}),a(m.Dialog,{isOpen:b,handleClose:j,heading:d,children:a(l.ChatRoot,{variant:"mobile",children:a(s,{variant:"mobile"})})})]}):null};
@@ -1 +1 @@
1
- import{jsx as t}from"react/jsx-runtime";import{Trans as e}from"@lingui/react";import{useCallback as i}from"react";import{finalizeButtonComponent as a,finalizePageComponent as o}from"#package/domain";import{useAnalyticsService as n,useDomain as r,useFinalizeViolations as s,useFirstRootComponent as l,useLocalizable as m}from"#package/react-sdk";import{TooltipWithArrow as d,useResponsive as c}from"#package/ui-sdk";import{FrontendAnalyticsFactory as p}from"../../../../common/index.js";import{ResponsiveFinalizeButton as u}from"./ResponsiveFinalizeButton.js";import{MobileThemeableFinalizeButton as f,ThemeableFinalizeButton as g}from"./ThemeableFinalizeButton.js";let h={id:"sdk.finalize.notConfigured.tooltip",message:"Finalize feature is not configured."},k=()=>{let{isMobile:i}=c(),a=m(h);return i?t(d,{title:a,children:t("span",{children:t(f,{disabled:!0})})}):t(d,{title:a,children:t("span",{children:t(g,{disabled:!0,children:t(e,{id:"sdk.layout.sidebar.finalize.label",message:"Add to cart"})})})})},z=e=>{let{finalizeNavigationStates:a}=e,{navigationSystem:o,storeSystem:l}=r(),m=n(),d=i(async()=>{let t=a[0];t&&(m.push(p.FinalizeButtonClicked()),l.stageAndCommit([o.getPushNavigationUpdate(t,l.stateSlices.committed.value.state)]))},[a,o,m,l]),{disabled:c,hints:f}=s();return t(u,{onClick:d,disabled:c,hints:f})};export const CommonFinalizeButton=()=>{let e=l(a),i=l(o);return e?e?.state.button:i?t(z,{finalizeNavigationStates:i.state.finalizeNavigationStates}):t(k,{})};
1
+ import{jsx as t}from"react/jsx-runtime";import{Trans as e}from"@lingui/react";import{useCallback as i}from"react";import{finalizeButtonComponent as a,finalizePageComponent as n}from"#package/domain";import{FrontendAnalyticsFactory as o,useAnalyticsService as r,useDomain as s,useFinalizeViolations as l,useFirstRootComponent as d,useLocalizable as m}from"#package/react-sdk";import{TooltipWithArrow as c,useResponsive as p}from"#package/ui-sdk";import{ResponsiveFinalizeButton as u}from"./ResponsiveFinalizeButton.js";import{MobileThemeableFinalizeButton as f,ThemeableFinalizeButton as g}from"./ThemeableFinalizeButton.js";let h={id:"sdk.finalize.notConfigured.tooltip",message:"Finalize feature is not configured."},k=()=>{let{isMobile:i}=p(),a=m(h);return i?t(c,{title:a,children:t("span",{children:t(f,{disabled:!0})})}):t(c,{title:a,children:t("span",{children:t(g,{disabled:!0,children:t(e,{id:"sdk.layout.sidebar.finalize.label",message:"Add to cart"})})})})},z=e=>{let{finalizeNavigationStates:a}=e,{navigationSystem:n,storeSystem:d}=s(),m=r(),c=i(async()=>{let t=a[0];t&&(m.push(o.FinalizeButtonClicked()),d.stageAndCommit([n.getPushNavigationUpdate(t,d.stateSlices.committed.value.state)]))},[a,n,m,d]),{disabled:p,hints:f}=l();return t(u,{onClick:c,disabled:p,hints:f})};export const CommonFinalizeButton=()=>{let e=d(a),i=d(n);return e?e?.state.button:i?t(z,{finalizeNavigationStates:i.state.finalizeNavigationStates}):t(k,{})};
@@ -1 +1 @@
1
- import{jsx as r}from"react/jsx-runtime";import{Trans as t}from"@lingui/react";import{Button as m,Fab as o,styled as a}from"@mui/material";import{useCallback as e}from"react";import{useAnalyticsService as i}from"#package/react-sdk";import{PhxIcon as n,useResponsive as l}from"#package/ui-sdk";import{FrontendAnalyticsFactory as c}from"../../../../common/index.js";let p=a(o)(({theme:r})=>({backgroundColor:r.palette.primary.main,color:r.palette.getContrastText(r.palette.primary.main)}));export const CommonSummaryButton=o=>{let{onEnterSummary:a}=o,{isMobile:s}=l(),u=i(),d=e(()=>{u.push(c.SummaryButtonClicked()),a()},[u,a]);return s?r(p,{onClick:d,children:r(n,{name:"List"})}):r(m,{color:"primary",variant:"contained",size:"large",fullWidth:!0,endIcon:r(n,{name:"ArrowRight"}),onClick:d,children:r(t,{id:"sdk.layout.summary.button.label",message:"Summary"})})};
1
+ import{jsx as r}from"react/jsx-runtime";import{Trans as t}from"@lingui/react";import{Button as a,Fab as m,styled as o}from"@mui/material";import{useCallback as e}from"react";import{FrontendAnalyticsFactory as i,useAnalyticsService as n}from"#package/react-sdk";import{PhxIcon as l,useResponsive as c}from"#package/ui-sdk";let p=o(m)(({theme:r})=>({backgroundColor:r.palette.primary.main,color:r.palette.getContrastText(r.palette.primary.main)}));export const CommonSummaryButton=m=>{let{onEnterSummary:o}=m,{isMobile:s}=c(),u=n(),d=e(()=>{u.push(i.SummaryButtonClicked()),o()},[u,o]);return s?r(p,{onClick:d,children:r(l,{name:"List"})}):r(a,{color:"primary",variant:"contained",size:"large",fullWidth:!0,endIcon:r(l,{name:"ArrowRight"}),onClick:d,children:r(t,{id:"sdk.layout.summary.button.label",message:"Summary"})})};
@@ -1 +1 @@
1
- import{jsx as o}from"react/jsx-runtime";import{Trans as r}from"@lingui/react";import{Button as t}from"@mui/material";import{memo as e,useCallback as i}from"react";import{useAnalyticsService as m,useIntegrationState as a}from"#package/react-sdk";import{PhxIcon as n}from"#package/ui-sdk";import{FrontendAnalyticsFactory as s}from"../../../../common/index.js";import{useConfiguratorRouting as c,usePresetSelection as p,usePreview as l}from"../../../../configurator-context/index.js";import{CloseConfiguratorButton as d}from"./CloseConfiguratorButton.js";export const CommonTopNavigation=e(()=>{let e=m(),f=c(),{presetCategories:u}=p(),{isPreview:g,isPreviewEnabled:k}=l(),x=u.flatMap(o=>o.presets).length>1,j=a(),C=i(()=>{e.push(s.GoToProductsClicked()),f.goToIndex()},[e,f]);if(!j.embeddedView)return x||!k||g?x?o(t,{size:"small",startIcon:o(n,{name:"ArrowLeft"}),onClick:C,children:o(r,{id:"sdk.layout.navigation.common.product.label",message:"Website"})}):null:o(d,{})});
1
+ import{jsx as o}from"react/jsx-runtime";import{Trans as r}from"@lingui/react";import{Button as t}from"@mui/material";import{memo as e,useCallback as i}from"react";import{FrontendAnalyticsFactory as a,useAnalyticsService as m,useConfiguratorRouting as n,useIntegrationState as s}from"#package/react-sdk";import{PhxIcon as c}from"#package/ui-sdk";import{usePresetSelection as l,usePreview as p}from"../../../../configurator-context/index.js";import{CloseConfiguratorButton as d}from"./CloseConfiguratorButton.js";export const CommonTopNavigation=e(()=>{let e=m(),f=n(),{presetCategories:u}=l(),{isPreview:g,isPreviewEnabled:k}=p(),x=u.flatMap(o=>o.presets).length>1,C=s(),j=i(()=>{e.push(a.GoToProductsClicked()),f.goToIndex()},[e,f]);if(!C.embeddedView)return x||!k||g?x?o(t,{size:"small",startIcon:o(c,{name:"ArrowLeft"}),onClick:j,children:o(r,{id:"sdk.layout.navigation.common.product.label",message:"Website"})}):null:o(d,{})});