@salsita-ai/sdk 0.50.0-develop.9440e83ee3 → 0.50.0-develop.95b896fd8c

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 (573) 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 +1 -0
  25. package/dist/application-spec/errors/diagnostic-codes.js +1 -1
  26. package/dist/application-spec/errors/diagnostic-messages.d.ts +1 -0
  27. package/dist/application-spec/errors/diagnostic-messages.js +1 -1
  28. package/dist/application-spec/generate-application/code/project-scaffolding.js +2 -2
  29. package/dist/application-spec/generate-application/code/templates/index.d.ts +2 -6
  30. package/dist/application-spec/generate-application/code/templates/index.js +1 -1
  31. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill-bundle.d.ts +10 -0
  32. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill-bundle.js +7 -0
  33. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill.js +1 -1
  34. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.d.ts +12 -6
  35. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.js +1 -1
  36. package/dist/application-spec/generate-application/implementations/phx-application-types.d.ts +25 -0
  37. package/dist/application-spec/generate-application/implementations/phx-application-types.js +1 -0
  38. package/dist/application-spec/generate-application/implementations/phx-domain.d.ts +36 -0
  39. package/dist/application-spec/generate-application/implementations/phx-domain.js +1 -0
  40. package/dist/application-spec/generate-application/implementations/phx-model.d.ts +24 -0
  41. package/dist/application-spec/generate-application/implementations/phx-model.js +1 -0
  42. package/dist/application-spec/generate-application/implementations/phx.d.ts +22 -0
  43. package/dist/application-spec/generate-application/implementations/phx.js +1 -0
  44. package/dist/application-spec/generate-application/index.d.ts +2 -0
  45. package/dist/application-spec/generate-application/index.js +1 -1
  46. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.d.ts +3 -4
  47. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.d.ts +7 -4
  48. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.js +1 -1
  49. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-spec-runtime.d.ts +16 -0
  50. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-spec-runtime.js +1 -0
  51. package/dist/application-spec/generate-application/runtime/application-runtime.d.ts +17 -4
  52. package/dist/application-spec/generate-application/runtime/application-runtime.js +1 -1
  53. package/dist/application-spec/generate-application/runtime/application-spec-slice.d.ts +71 -0
  54. package/dist/application-spec/generate-application/runtime/application-spec-slice.js +1 -0
  55. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.d.ts +3 -4
  56. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.d.ts +7 -5
  57. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.js +1 -1
  58. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-spec-runtime.d.ts +16 -0
  59. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-spec-runtime.js +1 -0
  60. package/dist/application-spec/generate-application/runtime/create-application.d.ts +57 -0
  61. package/dist/application-spec/generate-application/runtime/create-application.js +1 -0
  62. package/dist/application-spec/generate-application/runtime/factory-data/factory-data-runtime.d.ts +2 -2
  63. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.d.ts +1 -1
  64. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.js +1 -1
  65. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.d.ts +1 -1
  66. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.js +1 -1
  67. package/dist/application-spec/generate-application/runtime/generate-runtime-instance.d.ts +1 -1
  68. package/dist/application-spec/generate-application/runtime/generate-runtime-instance.js +1 -1
  69. package/dist/application-spec/generate-application/runtime/index.d.ts +8 -0
  70. package/dist/application-spec/generate-application/runtime/index.js +1 -0
  71. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.d.ts +1 -1
  72. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.js +1 -1
  73. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.d.ts +1 -1
  74. package/dist/application-spec/generate-application/runtime/sections/component-optic.d.ts +1 -2
  75. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.d.ts +9 -4
  76. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.js +1 -1
  77. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.d.ts +1 -2
  78. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.js +1 -1
  79. package/dist/application-spec/generate-application/runtime/sections/preset-runtime.d.ts +2 -3
  80. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.d.ts +1 -1
  81. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.d.ts +1 -1
  82. package/dist/application-spec/generate-application/runtime/spec-runtime.d.ts +21 -0
  83. package/dist/application-spec/generate-application/runtime/spec-runtime.js +1 -0
  84. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.d.ts +3 -2
  85. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.d.ts +44 -9
  86. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.js +1 -1
  87. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.d.ts +1 -1
  88. package/dist/application-spec/parse-application-files/parse-application-files.js +1 -1
  89. package/dist/application-spec/parse-application-files/raw-spec/raw-expressions.d.ts +1 -1
  90. package/dist/application-spec/parse-application-files/raw-spec/raw-expressions.js +1 -1
  91. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding.d.ts +3 -13
  92. package/dist/application-spec/parse-application-files/spec/components/bindings/write-binding.d.ts +4 -32
  93. package/dist/application-spec/parse-application-files/spec/components/component-filter.d.ts +4 -10
  94. package/dist/application-spec/parse-application-files/spec/components/components.d.ts +3 -4
  95. package/dist/application-spec/parse-application-files/spec/components/index.d.ts +1 -2
  96. package/dist/application-spec/parse-application-files/spec/components/index.js +1 -1
  97. package/dist/application-spec/parse-application-files/spec/components/sdk-component-entry.d.ts +1 -1
  98. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.d.ts +2 -3
  99. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.js +1 -1
  100. package/dist/application-spec/parse-application-files/spec/components/user-components.d.ts +2 -3
  101. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.d.ts +2 -2
  102. package/dist/application-spec/parse-application-files/spec/expressions/expressions.d.ts +7 -29
  103. package/dist/application-spec/parse-application-files/spec/expressions/index.d.ts +0 -1
  104. package/dist/application-spec/parse-application-files/spec/expressions/memo-eval-plan.d.ts +4 -71
  105. package/dist/application-spec/parse-application-files/spec/expressions/memo-eval-plan.js +1 -1
  106. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.d.ts +2 -2
  107. package/dist/application-spec/parse-application-files/spec/model/aliases.d.ts +3 -9
  108. package/dist/application-spec/parse-application-files/spec/model/common-types.d.ts +6 -14
  109. package/dist/application-spec/parse-application-files/spec/model/defaults.d.ts +6 -31
  110. package/dist/application-spec/parse-application-files/spec/model/entity-types.d.ts +3 -8
  111. package/dist/application-spec/parse-application-files/spec/model/model-version-key.d.ts +3 -3
  112. package/dist/application-spec/parse-application-files/spec/model/names/action-name.d.ts +3 -7
  113. package/dist/application-spec/parse-application-files/spec/model/names/alias-name.d.ts +3 -7
  114. package/dist/application-spec/parse-application-files/spec/model/names/entity-or-alias-name.d.ts +3 -8
  115. package/dist/application-spec/parse-application-files/spec/model/names/entity-type-name.d.ts +3 -8
  116. package/dist/application-spec/parse-application-files/spec/model/names/expression-name.d.ts +3 -6
  117. package/dist/application-spec/parse-application-files/spec/model/names/instance-name.d.ts +3 -7
  118. package/dist/application-spec/parse-application-files/spec/model/names/invariant-name.d.ts +3 -3
  119. package/dist/application-spec/parse-application-files/spec/model/names/shape-property-name.d.ts +3 -11
  120. package/dist/application-spec/parse-application-files/spec/model/names/violation-type-name.d.ts +3 -3
  121. package/dist/application-spec/parse-application-files/spec/model/presets.d.ts +6 -29
  122. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.js +1 -1
  123. package/dist/client/authorized-client.d.ts +3 -1
  124. package/dist/client/authorized-client.js +1 -1
  125. package/dist/client/contract.d.ts +17 -0
  126. package/dist/client/index.d.ts +1 -1
  127. package/dist/client/local-authorized-client.d.ts +3 -1
  128. package/dist/client/local-authorized-client.js +1 -1
  129. package/dist/client/memory-authorized-client.d.ts +4 -1
  130. package/dist/client/memory-authorized-client.js +1 -1
  131. package/dist/client/phoenix-api.d.ts +228 -0
  132. package/dist/configurator/ConfiguratorApp.js +1 -1
  133. package/dist/configurator/app-loader-content/index.d.ts +0 -1
  134. package/dist/configurator/app-loader-content/index.js +1 -1
  135. package/dist/configurator/application-runtime/extensions/selectors.js +1 -1
  136. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.d.ts +17 -3
  137. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.js +1 -1
  138. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.d.ts +42 -9
  139. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.js +1 -1
  140. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.d.ts +15 -10
  141. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.js +1 -1
  142. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.d.ts +30 -9
  143. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.js +1 -1
  144. package/dist/configurator/application-runtime/extensions/systems/graphql-system/violations.d.ts +40 -0
  145. package/dist/configurator/application-runtime/extensions/systems/graphql-system/violations.js +1 -0
  146. package/dist/configurator/common/configurator-interface.d.ts +9 -6
  147. package/dist/configurator/common/configurator-interface.js +1 -1
  148. package/dist/configurator/configuration-not-found-page/BuiltInConfigurationNotFoundPage.d.ts +5 -0
  149. package/dist/configurator/configuration-not-found-page/BuiltInConfigurationNotFoundPage.js +1 -0
  150. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.d.ts +0 -6
  151. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.js +1 -1
  152. package/dist/configurator/configuration-not-found-page/index.d.ts +2 -2
  153. package/dist/configurator/configuration-not-found-page/index.js +1 -1
  154. package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.d.ts +3 -3
  155. package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.js +1 -1
  156. package/dist/configurator/configurator-context/PresetSelectionProvider.js +1 -1
  157. package/dist/configurator/configurator-context/PreviewContextProvider.js +1 -1
  158. package/dist/configurator/configurator-context/configurator-hooks/index.d.ts +0 -1
  159. package/dist/configurator/configurator-context/configurator-hooks/index.js +1 -1
  160. package/dist/configurator/configurator-context/index.d.ts +0 -4
  161. package/dist/configurator/configurator-context/index.js +1 -1
  162. package/dist/configurator/configurator-error-page/BuiltInConfiguratorErrorPage.d.ts +3 -3
  163. package/dist/configurator/configurator-error-page/BuiltInConfiguratorErrorPage.js +1 -1
  164. package/dist/configurator/configurator-error-page/ConfiguratorErrorPageElement.d.ts +0 -5
  165. package/dist/configurator/configurator-error-page/ConfiguratorErrorPageElement.js +1 -1
  166. package/dist/configurator/configurator-error-page/index.d.ts +1 -2
  167. package/dist/configurator/configurator-error-page/index.js +1 -1
  168. package/dist/configurator/index.d.ts +9 -2
  169. package/dist/configurator/index.js +1 -1
  170. package/dist/configurator/pages/ConfiguratorNotFoundPage.js +1 -1
  171. package/dist/configurator/pages/LoadedConfiguratorDetailPage.js +1 -1
  172. package/dist/configurator/pages/default-configurator-elements.js +1 -1
  173. package/dist/configurator/pages/error-boundaries/DevContextFallback.js +1 -1
  174. package/dist/configurator/pages/error-boundaries/DevLoadingFallback.js +1 -1
  175. package/dist/configurator/pages/error-boundaries/LoadingErrorBoundary.js +1 -1
  176. package/dist/configurator/ui/assistant/AssistantChips.js +1 -1
  177. package/dist/configurator/ui/assistant/screenshots/ScreenshotThumbnails.d.ts +1 -1
  178. package/dist/configurator/ui/assistant/screenshots/ScreenshotThumbnails.js +1 -1
  179. package/dist/configurator/ui/assistant/screenshots/tool-screenshots.d.ts +12 -4
  180. package/dist/configurator/ui/assistant/screenshots/tool-screenshots.js +1 -1
  181. package/dist/configurator/ui/assistant/screenshots/use-screenshot-src.d.ts +8 -0
  182. package/dist/configurator/ui/assistant/screenshots/use-screenshot-src.js +1 -0
  183. package/dist/configurator/ui/assistant/tool-chip.d.ts +15 -5
  184. package/dist/configurator/ui/assistant/tool-chip.js +1 -1
  185. package/dist/configurator/ui/configurator-layout/slots/canvas/GPUAccelerationDisabled.js +1 -1
  186. package/dist/configurator/ui/configurator-layout/slots/canvas/LayoutCanvas.js +1 -1
  187. package/dist/configurator/ui/configurator-layout/slots/canvas/SharedCanvas.js +1 -1
  188. package/dist/configurator/ui/configurator-layout/slots/canvas/WebGLNotSupported.js +1 -1
  189. package/dist/configurator/ui/configurator-layout/slots/readonly-banner/CloneToEditDialog.js +1 -1
  190. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.js +1 -1
  191. package/dist/configurator/ui/legacy/chat/MobileChat.js +1 -1
  192. package/dist/configurator/ui/legacy/layout/common/CommonTopNavigation.js +1 -1
  193. package/dist/configurator/ui/legacy/layout/common/ReactiveInterfaceLayout.js +1 -1
  194. package/dist/configurator/ui/legacy/layout/simple/SimpleSidebar.js +1 -1
  195. package/dist/configurator/ui/legacy/layout/simple/SimpleTopNavigation.js +1 -1
  196. package/dist/configurator/ui/legacy/layout/steps/StepsNavigation.js +1 -1
  197. package/dist/configurator/ui/legacy/layout/steps/StepsOwnerLayout.js +1 -1
  198. package/dist/configurator/ui/legacy/layout/steps/StepsSideBar.js +1 -1
  199. package/dist/configurator/ui/legacy/layout/tabs/TabsSidebar.js +1 -1
  200. package/dist/configurator/ui/phoenix-layout-elements/AppLoader.d.ts +0 -7
  201. package/dist/configurator/ui/phoenix-layout-elements/AppLoader.js +2 -2
  202. package/dist/configurator/ui/phoenix-layout-elements/header/common/back-button/use-go-back-action.js +1 -1
  203. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.js +1 -1
  204. package/dist/configurator/ui/phoenix-layout-elements/index.d.ts +8 -1
  205. package/dist/configurator/ui/phoenix-layout-elements/index.js +1 -1
  206. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/PreviousStepButton.js +1 -1
  207. package/dist/configurator/ui/preset-layout/PresetUi.d.ts +0 -2
  208. package/dist/configurator/ui/preset-layout/PresetUi.js +1 -1
  209. package/dist/configurator/ui/preset-layout/index.d.ts +6 -1
  210. package/dist/configurator/ui/preset-layout/index.js +1 -1
  211. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.js +1 -1
  212. package/dist/docs/3d-scene/cameras/custom.mdx +4 -2
  213. package/dist/docs/index.json +78 -1
  214. package/dist/docs/integrations/webcomponent-api/basics.mdx +2 -0
  215. package/dist/docs/layouts/custom-layout.mdx +318 -158
  216. package/dist/docs/layouts/gallery/ardent-compressor.mdx +3516 -0
  217. package/dist/docs/layouts/gallery/corvid-drone.mdx +3428 -0
  218. package/dist/docs/layouts/gallery/fenwick-window.mdx +2803 -0
  219. package/dist/docs/layouts/gallery/ferrule-bar-station.mdx +6567 -0
  220. package/dist/docs/layouts/gallery/nightjar-guitar.mdx +3698 -0
  221. package/dist/docs/layouts/gallery/sunfold-solar.mdx +2683 -0
  222. package/dist/docs/layouts/gallery/tidepool-aquascape.mdx +5203 -0
  223. package/dist/docs/phoenix/configurator-interface.mdx +8 -6
  224. package/dist/docs/phoenix/domain-model.mdx +4 -1
  225. package/dist/docs/phoenix/phoenix-cli.mdx +14 -6
  226. package/dist/docs/phoenix/project-structure.mdx +21 -17
  227. package/dist/docs/phoenix/sdk-builder-workflow.mdx +6 -4
  228. package/dist/docs/phoenix/sessions-and-access.mdx +2 -0
  229. package/dist/docs/phoenix/webhooks.mdx +5 -1
  230. package/dist/domain/application/assistant/assistant-resolved-manifest.d.ts +2 -0
  231. package/dist/domain/application/assistant/build-assistant-lenses.js +3 -3
  232. package/dist/domain/application/assistant/build-assistant-manifest.js +1 -1
  233. package/dist/domain/application/assistant/generate-assistant-prompt.js +1 -1
  234. package/dist/domain/application/configurator-builder.d.ts +7 -1
  235. package/dist/domain/application/configurator-builder.js +1 -1
  236. package/dist/domain/application/index.d.ts +1 -1
  237. package/dist/domain/application/index.js +1 -1
  238. package/dist/domain/application/standard-properties.js +1 -1
  239. package/dist/domain/application/web-component-property.d.ts +3 -1
  240. package/dist/domain/application/web-component-property.js +1 -1
  241. package/dist/domain/domain-builder.d.ts +9 -3
  242. package/dist/domain/domain-builder.js +1 -1
  243. package/dist/domain/domain-runtime/application.d.ts +39 -0
  244. package/dist/domain/domain-runtime/application.js +1 -0
  245. package/dist/domain/domain-runtime/domain-context/selectors.d.ts +1 -0
  246. package/dist/domain/domain-runtime/domain-context/selectors.js +1 -1
  247. package/dist/domain/domain-runtime/domain-runtime.d.ts +40 -4
  248. package/dist/domain/domain-runtime/domain-runtime.js +1 -1
  249. package/dist/domain/domain-runtime/environment/initialize.d.ts +1 -1
  250. package/dist/domain/domain-runtime/errors/implementation-error-collector.d.ts +2 -0
  251. package/dist/domain/domain-runtime/errors/implementation-error-collector.js +1 -1
  252. package/dist/domain/domain-runtime/index.d.ts +2 -1
  253. package/dist/domain/domain-runtime/index.js +1 -1
  254. package/dist/domain/domain-runtime/spec/index.d.ts +1 -1
  255. package/dist/domain/domain-runtime/spec/index.js +1 -1
  256. package/dist/domain/domain-runtime/spec/module-checks/index.d.ts +1 -0
  257. package/dist/domain/domain-runtime/spec/module-checks/index.js +1 -1
  258. package/dist/domain/domain-runtime/spec/module-checks/merge-expression-modules.d.ts +23 -0
  259. package/dist/domain/domain-runtime/spec/module-checks/merge-expression-modules.js +1 -0
  260. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.d.ts +3 -4
  261. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.js +1 -1
  262. package/dist/domain/domain-runtime/web-component/actions.d.ts +3 -0
  263. package/dist/domain/domain-runtime/web-component/actions.js +1 -1
  264. package/dist/domain/domain-runtime/web-component/initialize.d.ts +1 -0
  265. package/dist/domain/domain-runtime/web-component/initialize.js +1 -1
  266. package/dist/domain/domain-runtime/web-component/selectors.d.ts +2 -0
  267. package/dist/domain/domain-runtime/web-component/selectors.js +1 -1
  268. package/dist/domain/domain-runtime/web-component/types.d.ts +6 -3
  269. package/dist/domain/index.d.ts +1 -0
  270. package/dist/domain/index.js +1 -1
  271. package/dist/domain/mocks/create-mock-domain-runtime.d.ts +7 -0
  272. package/dist/domain/spec/application/index.d.ts +1 -0
  273. package/dist/domain/spec/application/index.js +1 -0
  274. package/dist/domain/spec/components/bindings/index.d.ts +2 -0
  275. package/dist/domain/spec/components/bindings/read-binding.d.ts +13 -0
  276. package/dist/domain/spec/components/bindings/write-binding.d.ts +32 -0
  277. package/dist/{application-spec/parse-application-files → domain}/spec/components/component-entry.d.ts +3 -3
  278. package/dist/{application-spec/core → domain/spec}/components/component-filter.d.ts +3 -2
  279. package/dist/domain/spec/components/component-filters.d.ts +10 -0
  280. package/dist/domain/spec/components/components.d.ts +4 -0
  281. package/dist/domain/spec/components/components.js +1 -0
  282. package/dist/domain/spec/components/index.d.ts +6 -0
  283. package/dist/domain/spec/enhanced-json-value.d.ts +30 -0
  284. package/dist/domain/spec/enhanced-json-value.js +1 -0
  285. package/dist/{application-spec/parse-application-files → domain}/spec/expressions/expression.d.ts +9 -3
  286. package/dist/domain/spec/expressions/expression.js +1 -0
  287. package/dist/domain/spec/expressions/expressions.d.ts +27 -0
  288. package/dist/domain/spec/expressions/expressions.js +1 -0
  289. package/dist/domain/spec/expressions/index.d.ts +5 -0
  290. package/dist/domain/spec/expressions/memo-eval-plan.d.ts +70 -0
  291. package/dist/domain/spec/expressions/memo-eval-plan.js +1 -0
  292. package/dist/domain/spec/expressions/relation-expression-params.js +1 -0
  293. package/dist/domain/spec/index.d.ts +7 -0
  294. package/dist/domain/spec/index.js +1 -0
  295. package/dist/domain/spec/json-schema.d.ts +52 -0
  296. package/dist/domain/spec/json-schema.js +1 -0
  297. package/dist/domain/spec/markers/index.d.ts +3 -0
  298. package/dist/domain/spec/markers/index.js +1 -0
  299. package/dist/domain/spec/markers/msg-marker.d.ts +28 -0
  300. package/dist/domain/spec/markers/msg-marker.js +1 -0
  301. package/dist/domain/spec/model/aliases.d.ts +9 -0
  302. package/dist/domain/spec/model/aliases.js +1 -0
  303. package/dist/domain/spec/model/common-types.d.ts +15 -0
  304. package/dist/domain/spec/model/common-types.js +1 -0
  305. package/dist/domain/spec/model/defaults.d.ts +33 -0
  306. package/dist/domain/spec/model/defaults.js +1 -0
  307. package/dist/domain/spec/model/entity-types.d.ts +8 -0
  308. package/dist/domain/spec/model/entity-types.js +1 -0
  309. package/dist/domain/spec/model/index.d.ts +7 -0
  310. package/dist/domain/spec/model/index.js +1 -0
  311. package/dist/domain/spec/model/model-version-key.d.ts +3 -0
  312. package/dist/domain/spec/model/model-version-key.js +1 -0
  313. package/dist/domain/spec/model/names/action-name.d.ts +7 -0
  314. package/dist/domain/spec/model/names/action-name.js +1 -0
  315. package/dist/domain/spec/model/names/alias-name.d.ts +7 -0
  316. package/dist/domain/spec/model/names/alias-name.js +1 -0
  317. package/dist/domain/spec/model/names/entity-or-alias-name.d.ts +8 -0
  318. package/dist/domain/spec/model/names/entity-or-alias-name.js +1 -0
  319. package/dist/domain/spec/model/names/entity-type-name.d.ts +8 -0
  320. package/dist/domain/spec/model/names/entity-type-name.js +1 -0
  321. package/dist/domain/spec/model/names/expression-name.d.ts +6 -0
  322. package/dist/domain/spec/model/names/expression-name.js +1 -0
  323. package/dist/domain/spec/model/names/index.d.ts +9 -0
  324. package/dist/domain/spec/model/names/index.js +1 -0
  325. package/dist/domain/spec/model/names/instance-name.d.ts +7 -0
  326. package/dist/domain/spec/model/names/instance-name.js +1 -0
  327. package/dist/domain/spec/model/names/invariant-name.d.ts +3 -0
  328. package/dist/domain/spec/model/names/invariant-name.js +1 -0
  329. package/dist/domain/spec/model/names/shape-property-name.d.ts +11 -0
  330. package/dist/domain/spec/model/names/shape-property-name.js +1 -0
  331. package/dist/domain/spec/model/names/violation-type-name.d.ts +3 -0
  332. package/dist/domain/spec/model/names/violation-type-name.js +1 -0
  333. package/dist/domain/spec/model/presets.d.ts +30 -0
  334. package/dist/domain/spec/model/presets.js +1 -0
  335. package/dist/editor/domain-editors/DomainSpecContext.js +1 -1
  336. package/dist/editor/domain-editors/apply-spec-update.d.ts +2 -1
  337. package/dist/editor/domain-editors/apply-spec-update.js +1 -1
  338. package/dist/editor/domain-editors/use-implementation-files.d.ts +6 -14
  339. package/dist/editor/domain-editors/use-implementation-files.js +1 -1
  340. package/dist/editor/graphql/GraphQLPanel.js +1 -1
  341. package/dist/legacy/domain-cli/utils/cache.d.ts +1 -1
  342. package/dist/legacy/domain-cli/utils/cache.js +1 -1
  343. package/dist/legacy/domain-spec/spec/domain-spec.js +1 -1
  344. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/claude-md.d.ts +1 -1
  345. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/cursor-rules.d.ts +1 -1
  346. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.d.ts +1 -1
  347. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.js +11 -5
  348. package/dist/phoenix/application-spec/generate-application-spec-project.d.ts +1 -0
  349. package/dist/phoenix/application-spec/generate-application-spec-project.js +2 -2
  350. package/dist/phoenix/application-spec/generate-project-files.d.ts +1 -0
  351. package/dist/phoenix/application-spec/index.d.ts +1 -0
  352. package/dist/phoenix/application-spec/index.js +1 -1
  353. package/dist/phoenix/application-spec/resolve-deployment-data.d.ts +11 -0
  354. package/dist/phoenix/application-spec/resolve-deployment-data.js +2 -2
  355. package/dist/phoenix/bin.js +1 -1
  356. package/dist/phoenix/cli.js +1 -1
  357. package/dist/phoenix/commands/build.js +1 -1
  358. package/dist/phoenix/commands/clean.js +1 -1
  359. package/dist/phoenix/commands/deploy.js +1 -1
  360. package/dist/phoenix/commands/dev.js +5 -5
  361. package/dist/phoenix/commands/generated-env-markers.d.ts +1 -0
  362. package/dist/phoenix/commands/generated-env-markers.js +1 -1
  363. package/dist/phoenix/commands/index.d.ts +1 -1
  364. package/dist/phoenix/commands/index.js +1 -1
  365. package/dist/phoenix/commands/sync.js +1 -1
  366. package/dist/phoenix/lingui/index.d.ts +1 -0
  367. package/dist/phoenix/lingui/index.js +1 -0
  368. package/dist/phoenix/{services → lingui}/lingui.d.ts +5 -2
  369. package/dist/phoenix/lingui/lingui.js +1 -0
  370. package/dist/phoenix/services/application-spec-project-watcher.d.ts +3 -1
  371. package/dist/phoenix/services/application-spec-project-watcher.js +2 -2
  372. package/dist/phoenix/services/index.d.ts +1 -0
  373. package/dist/phoenix/services/index.js +1 -1
  374. package/dist/phoenix/services/lingui-watcher.js +1 -1
  375. package/dist/phoenix/services/prepare-development-environment.js +1 -1
  376. package/dist/phoenix/services/vite-config.js +1 -1
  377. package/dist/react-sdk/application-runtime/common-services/analytics/analytics-service.d.ts +1 -1
  378. package/dist/react-sdk/application-runtime/common-services/initialize.d.ts +2 -2
  379. package/dist/react-sdk/application-runtime/domain-application-context/chat-system.d.ts +1 -1
  380. package/dist/react-sdk/application-runtime/hooks/index.d.ts +2 -0
  381. package/dist/react-sdk/application-runtime/hooks/index.js +1 -1
  382. package/dist/react-sdk/application-runtime/hooks/loading/index.d.ts +5 -0
  383. package/dist/react-sdk/application-runtime/hooks/loading/index.js +1 -0
  384. package/dist/react-sdk/application-runtime/hooks/loading/loader-host-context.d.ts +11 -0
  385. package/dist/react-sdk/application-runtime/hooks/loading/loader-host-context.js +1 -0
  386. package/dist/react-sdk/application-runtime/hooks/loading/use-is-awaiting-loading-phase.d.ts +8 -0
  387. package/dist/react-sdk/application-runtime/hooks/loading/use-is-awaiting-loading-phase.js +1 -0
  388. package/dist/react-sdk/application-runtime/hooks/loading/use-is-loader-hosted.d.ts +7 -0
  389. package/dist/react-sdk/application-runtime/hooks/loading/use-is-loader-hosted.js +1 -0
  390. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-actions.d.ts +9 -0
  391. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-actions.js +1 -0
  392. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-application.d.ts +24 -0
  393. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-application.js +1 -0
  394. package/dist/react-sdk/application-runtime/hooks/responsive/index.d.ts +3 -0
  395. package/dist/react-sdk/application-runtime/hooks/responsive/index.js +1 -0
  396. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-actions.d.ts +9 -0
  397. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-actions.js +1 -0
  398. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-application.d.ts +26 -0
  399. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-application.js +1 -0
  400. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-state.d.ts +10 -0
  401. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-state.js +1 -0
  402. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-store.d.ts +24 -0
  403. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-store.js +1 -0
  404. package/dist/react-sdk/application-runtime/hooks/use-access-service.d.ts +5 -0
  405. package/dist/react-sdk/application-runtime/hooks/use-access-service.js +1 -1
  406. package/dist/react-sdk/application-runtime/hooks/use-web-component-readonly-sync.d.ts +4 -11
  407. package/dist/react-sdk/application-runtime/hooks/use-web-component-readonly-sync.js +1 -1
  408. package/dist/react-sdk/application-runtime/hooks/use-web-component.d.ts +5 -0
  409. package/dist/react-sdk/application-runtime/hooks/use-web-component.js +1 -1
  410. package/dist/react-sdk/application-runtime/host-properties/actions.d.ts +15 -0
  411. package/dist/react-sdk/application-runtime/host-properties/actions.js +1 -0
  412. package/dist/react-sdk/application-runtime/host-properties/connect-host-properties.d.ts +30 -0
  413. package/dist/react-sdk/application-runtime/host-properties/connect-host-properties.js +1 -0
  414. package/dist/react-sdk/application-runtime/host-properties/domain-host-properties.d.ts +7 -0
  415. package/dist/react-sdk/application-runtime/host-properties/domain-host-properties.js +1 -0
  416. package/dist/react-sdk/application-runtime/host-properties/host-property-descriptors.d.ts +21 -0
  417. package/dist/react-sdk/application-runtime/host-properties/host-property-descriptors.js +1 -0
  418. package/dist/react-sdk/application-runtime/host-properties/host-property-scopes.d.ts +42 -0
  419. package/dist/react-sdk/application-runtime/host-properties/host-property-scopes.js +1 -0
  420. package/dist/react-sdk/application-runtime/host-properties/index.d.ts +8 -0
  421. package/dist/react-sdk/application-runtime/host-properties/index.js +1 -0
  422. package/dist/react-sdk/application-runtime/host-properties/initialize.d.ts +7 -0
  423. package/dist/react-sdk/application-runtime/host-properties/initialize.js +1 -0
  424. package/dist/react-sdk/application-runtime/host-properties/selectors.d.ts +54 -0
  425. package/dist/react-sdk/application-runtime/host-properties/selectors.js +1 -0
  426. package/dist/react-sdk/application-runtime/host-properties/types.d.ts +18 -0
  427. package/dist/react-sdk/application-runtime/host-properties/types.js +1 -0
  428. package/dist/react-sdk/application-runtime/index.d.ts +3 -0
  429. package/dist/react-sdk/application-runtime/loading/actions.d.ts +45 -0
  430. package/dist/react-sdk/application-runtime/loading/actions.js +1 -0
  431. package/dist/react-sdk/application-runtime/loading/index.d.ts +4 -0
  432. package/dist/react-sdk/application-runtime/loading/index.js +1 -0
  433. package/dist/react-sdk/application-runtime/loading/initialize.d.ts +3 -0
  434. package/dist/react-sdk/application-runtime/loading/initialize.js +1 -0
  435. package/dist/react-sdk/application-runtime/loading/selectors.d.ts +18 -0
  436. package/dist/react-sdk/application-runtime/loading/selectors.js +1 -0
  437. package/dist/react-sdk/application-runtime/loading/types.d.ts +59 -0
  438. package/dist/react-sdk/application-runtime/loading/types.js +1 -0
  439. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.js +1 -1
  440. package/dist/react-sdk/application-runtime/provider/ApplicationRuntime.d.ts +6 -0
  441. package/dist/react-sdk/application-runtime/provider/ApplicationRuntime.js +1 -1
  442. package/dist/react-sdk/application-runtime/provider/ApplicationType.d.ts +7 -0
  443. package/dist/react-sdk/application-runtime/provider/ApplicationType.js +1 -1
  444. package/dist/react-sdk/application-runtime/responsive/actions.d.ts +47 -0
  445. package/dist/react-sdk/application-runtime/responsive/actions.js +1 -0
  446. package/dist/react-sdk/application-runtime/responsive/index.d.ts +4 -0
  447. package/dist/react-sdk/application-runtime/responsive/index.js +1 -0
  448. package/dist/react-sdk/application-runtime/responsive/initialize.d.ts +3 -0
  449. package/dist/react-sdk/application-runtime/responsive/initialize.js +1 -0
  450. package/dist/react-sdk/application-runtime/responsive/selectors.d.ts +20 -0
  451. package/dist/react-sdk/application-runtime/responsive/selectors.js +1 -0
  452. package/dist/react-sdk/application-runtime/responsive/types.d.ts +104 -0
  453. package/dist/react-sdk/application-runtime/responsive/types.js +1 -0
  454. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.d.ts +309 -8
  455. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.js +1 -1
  456. package/dist/{configurator/configurator-context → react-sdk}/configurator-routing/ConfiguratorRoutingProvider.d.ts +1 -1
  457. package/dist/react-sdk/configurator-routing/ConfiguratorRoutingProvider.js +1 -0
  458. package/dist/{configurator/configurator-context → react-sdk}/configurator-routing/OnGoToIndexHandler.d.ts +1 -2
  459. package/dist/react-sdk/configurator-routing/OnGoToIndexHandler.js +1 -0
  460. package/dist/react-sdk/configurator-routing/index.d.ts +3 -0
  461. package/dist/{configurator/configurator-context → react-sdk}/configurator-routing/index.js +1 -1
  462. package/dist/{configurator/configurator-context → react-sdk}/configurator-routing/use-power-routing-lifecycle.d.ts +2 -0
  463. package/dist/react-sdk/configurator-routing/use-power-routing-lifecycle.js +1 -0
  464. package/dist/react-sdk/domain-application-context/BackendDataProvider.js +1 -1
  465. package/dist/react-sdk/domain-application-context/FrontendDataProvider.js +1 -1
  466. package/dist/react-sdk/domain-application-context/OnPresetLoadedHandler.js +1 -0
  467. package/dist/react-sdk/domain-application-context/PublishedDataProvider.js +1 -1
  468. package/dist/react-sdk/domain-application-context/chat-hooks.d.ts +4 -0
  469. package/dist/react-sdk/domain-application-context/chat-hooks.js +1 -0
  470. package/dist/react-sdk/domain-application-context/index.d.ts +2 -0
  471. package/dist/react-sdk/domain-application-context/index.js +1 -1
  472. package/dist/react-sdk/domain-context/common-hooks/index.d.ts +1 -0
  473. package/dist/react-sdk/domain-context/common-hooks/index.js +1 -1
  474. package/dist/react-sdk/domain-context/common-hooks/use-configuration-save-state.d.ts +23 -0
  475. package/dist/react-sdk/domain-context/common-hooks/use-configuration-save-state.js +1 -0
  476. package/dist/react-sdk/domain-context/common-hooks/use-domain-context.d.ts +1 -0
  477. package/dist/react-sdk/domain-context/index.d.ts +1 -0
  478. package/dist/react-sdk/domain-context/index.js +1 -1
  479. package/dist/react-sdk/elements/index.d.ts +0 -1
  480. package/dist/react-sdk/index.d.ts +4 -1
  481. package/dist/react-sdk/index.js +1 -1
  482. package/dist/react-sdk/integration/IntegrationSubscription.js +1 -0
  483. package/dist/react-sdk/integration/index.d.ts +1 -0
  484. package/dist/react-sdk/integration/index.js +1 -0
  485. package/dist/react-sdk/lifecycle-providers/ConfiguratorDataProvider.d.ts +8 -0
  486. package/dist/react-sdk/lifecycle-providers/ConfiguratorDataProvider.js +1 -0
  487. package/dist/react-sdk/lifecycle-providers/LifecycleProviders.js +1 -0
  488. package/dist/react-sdk/lifecycle-providers/index.d.ts +2 -0
  489. package/dist/react-sdk/lifecycle-providers/index.js +1 -0
  490. package/dist/react-sdk/loading-state/LoaderHost.d.ts +20 -0
  491. package/dist/react-sdk/loading-state/LoaderHost.js +1 -0
  492. package/dist/react-sdk/loading-state/built-in-loading-phase.d.ts +9 -0
  493. package/dist/react-sdk/loading-state/built-in-loading-phase.js +1 -0
  494. package/dist/react-sdk/loading-state/create-app-loader.d.ts +18 -0
  495. package/dist/react-sdk/loading-state/create-app-loader.js +1 -0
  496. package/dist/react-sdk/loading-state/index.d.ts +4 -2
  497. package/dist/react-sdk/loading-state/index.js +1 -1
  498. package/dist/react-sdk/loading-state/{LoadingStateProvider.d.ts → loading-state-hooks.d.ts} +3 -12
  499. package/dist/react-sdk/loading-state/loading-state-hooks.js +1 -0
  500. package/dist/react-sdk/page-elements/ConfigurationNotFoundPagePropsProvider.d.ts +17 -0
  501. package/dist/react-sdk/page-elements/ConfigurationNotFoundPagePropsProvider.js +1 -0
  502. package/dist/react-sdk/page-elements/ConfiguratorErrorPagePropsProvider.d.ts +17 -0
  503. package/dist/react-sdk/page-elements/ConfiguratorErrorPagePropsProvider.js +1 -0
  504. package/dist/react-sdk/page-elements/configurator-error-page-props.js +1 -0
  505. package/dist/{configurator/configuration-not-found-page → react-sdk/page-elements}/create-configuration-not-found-page.d.ts +7 -1
  506. package/dist/react-sdk/page-elements/create-configuration-not-found-page.js +1 -0
  507. package/dist/{configurator/configurator-error-page → react-sdk/page-elements}/create-configurator-error-page.d.ts +6 -1
  508. package/dist/react-sdk/page-elements/create-configurator-error-page.js +1 -0
  509. package/dist/react-sdk/page-elements/create-preset-ui.d.ts +9 -0
  510. package/dist/react-sdk/page-elements/create-preset-ui.js +1 -0
  511. package/dist/react-sdk/page-elements/index.d.ts +6 -0
  512. package/dist/react-sdk/page-elements/index.js +1 -0
  513. package/dist/react-sdk/session/SessionServiceProvider.js +1 -1
  514. package/dist/react-sdk/web-component/create-web-component.js +1 -1
  515. package/dist/ui-sdk/responsive-application/ResponsiveApplicationProvider.d.ts +2 -2
  516. package/dist/ui-sdk/responsive-application/responsive-state-store.d.ts +11 -9
  517. package/dist/ui-sdk/responsive-application/use-store-responsive-info.js +1 -1
  518. package/package.json +3 -3
  519. package/dist/application-spec/core/components/index.d.ts +0 -2
  520. package/dist/application-spec/core/expressions/index.d.ts +0 -2
  521. package/dist/configurator/app-loader-content/app-loader-content-name.d.ts +0 -5
  522. package/dist/configurator/app-loader-content/app-loader-content-name.js +0 -1
  523. package/dist/configurator/configuration-not-found-page/create-configuration-not-found-page.js +0 -1
  524. package/dist/configurator/configurator-context/ConfiguratorDataProvider.d.ts +0 -2
  525. package/dist/configurator/configurator-context/ConfiguratorDataProvider.js +0 -1
  526. package/dist/configurator/configurator-context/IntegrationSubscription.js +0 -1
  527. package/dist/configurator/configurator-context/LifecycleProviders.js +0 -1
  528. package/dist/configurator/configurator-context/OnPresetLoadedHandler.js +0 -1
  529. package/dist/configurator/configurator-context/configurator-hooks/chat-hooks.d.ts +0 -1
  530. package/dist/configurator/configurator-context/configurator-hooks/chat-hooks.js +0 -1
  531. package/dist/configurator/configurator-context/configurator-routing/ConfiguratorRoutingProvider.js +0 -1
  532. package/dist/configurator/configurator-context/configurator-routing/OnGoToIndexHandler.js +0 -1
  533. package/dist/configurator/configurator-context/configurator-routing/index.d.ts +0 -2
  534. package/dist/configurator/configurator-context/configurator-routing/use-power-routing-lifecycle.js +0 -1
  535. package/dist/configurator/configurator-error-page/create-configurator-error-page.js +0 -1
  536. package/dist/phoenix/services/lingui.js +0 -1
  537. package/dist/react-sdk/loading-state/LoadingStateProvider.js +0 -1
  538. package/dist/react-sdk/loading-state/loading-state-manager.d.ts +0 -37
  539. package/dist/react-sdk/loading-state/loading-state-manager.js +0 -1
  540. package/dist/react-sdk/responsive-state/ResponsiveStateProvider.d.ts +0 -25
  541. package/dist/react-sdk/responsive-state/ResponsiveStateProvider.js +0 -1
  542. package/dist/react-sdk/responsive-state/canvas-padding.d.ts +0 -14
  543. package/dist/react-sdk/responsive-state/index.d.ts +0 -5
  544. package/dist/react-sdk/responsive-state/index.js +0 -1
  545. package/dist/react-sdk/responsive-state/responsive-state-manager.d.ts +0 -111
  546. package/dist/react-sdk/responsive-state/responsive-state-manager.js +0 -1
  547. package/dist/react-sdk/responsive-state/use-responsive-state-manager.d.ts +0 -10
  548. package/dist/react-sdk/responsive-state/use-responsive-state-manager.js +0 -1
  549. package/dist/react-sdk/responsive-state/use-responsive-state.d.ts +0 -11
  550. package/dist/react-sdk/responsive-state/use-responsive-state.js +0 -1
  551. /package/dist/{application-spec/core → domain/spec/application}/application-instance.d.ts +0 -0
  552. /package/dist/{application-spec/core → domain/spec/application}/application-instance.js +0 -0
  553. /package/dist/{application-spec/core/expressions/relation-expression-params.js → domain/spec/components/bindings/index.js} +0 -0
  554. /package/dist/{application-spec/parse-application-files/spec/components/component-entry.js → domain/spec/components/bindings/read-binding.js} +0 -0
  555. /package/dist/{application-spec/parse-application-files/spec/expressions/expression.js → domain/spec/components/bindings/write-binding.js} +0 -0
  556. /package/dist/{react-sdk/elements/configurator-error-page-props.js → domain/spec/components/component-entry.js} +0 -0
  557. /package/dist/{application-spec/core → domain/spec}/components/component-filter.js +0 -0
  558. /package/dist/{react-sdk/responsive-state/canvas-padding.js → domain/spec/components/component-filters.js} +0 -0
  559. /package/dist/{application-spec/core → domain/spec}/components/index.js +0 -0
  560. /package/dist/{application-spec/core → domain/spec}/components/sdk-code-ref.d.ts +0 -0
  561. /package/dist/{application-spec/core → domain/spec}/components/sdk-code-ref.js +0 -0
  562. /package/dist/{application-spec/core → domain/spec}/expressions/index.js +0 -0
  563. /package/dist/{application-spec/core → domain/spec}/expressions/relation-expression-params.d.ts +0 -0
  564. /package/dist/{application-spec/core → domain/spec}/expressions/sdk-expression-implementation.d.ts +0 -0
  565. /package/dist/{application-spec/core → domain/spec}/expressions/sdk-expression-implementation.js +0 -0
  566. /package/dist/{application-spec/parse-application-files/spec/components → domain/spec/markers}/component-prop-target.d.ts +0 -0
  567. /package/dist/{application-spec/parse-application-files/spec/components → domain/spec/markers}/component-prop-target.js +0 -0
  568. /package/dist/{application-spec/core → domain/spec}/markers/eval-marker.d.ts +0 -0
  569. /package/dist/{application-spec/core → domain/spec}/markers/eval-marker.js +0 -0
  570. /package/dist/{configurator/configurator-context → react-sdk/domain-application-context}/OnPresetLoadedHandler.d.ts +0 -0
  571. /package/dist/{configurator/configurator-context → react-sdk/integration}/IntegrationSubscription.d.ts +0 -0
  572. /package/dist/{configurator/configurator-context → react-sdk/lifecycle-providers}/LifecycleProviders.d.ts +0 -0
  573. /package/dist/react-sdk/{elements → page-elements}/configurator-error-page-props.d.ts +0 -0
@@ -0,0 +1 @@
1
+ import{useMemo as t}from"react";import{applicationConfigComponent as n}from"#package/domain";import{useLogger as o}from"../application-runtime/index.js";import{useComponents as e}from"../domain-context/index.js";export const useChatEnabled=()=>{let i=o(),a=e({componentTypes:[n]});return t(()=>(a.length>1&&i.warn("Multiple application configs found, using the first one!",{applicationConfigs:a}),a[0]?.state.chatEnabled??!0),[a,i])};
@@ -5,3 +5,5 @@ export { BackendDataProvider, type BackendDataProviderProps } from './BackendDat
5
5
  export { createCollectFrontendDataHandler, useCollectFrontendDataHandler, CollectFrontendDataHandlerBoundary, type CollectFrontendDataContext, type CreateCollectFrontendDataHandler, } from './CollectFrontendDataHandler.js';
6
6
  export { createFilterPublishedChunksHandler, useFilterPublishedChunksHandler, FilterPublishedChunksHandlerBoundary, type CreateFilterPublishedChunksHandler, } from './FilterPublishedChunksHandler.js';
7
7
  export { createIsUndoableHandler, type CreateIsUndoableHandler } from './IsUndoableHandler.js';
8
+ export { useOnPresetLoadedHandler, createOnPresetLoadedHandler, type CreateOnPresetLoadedHandler, } from './OnPresetLoadedHandler.js';
9
+ export { useChatEnabled } from './chat-hooks.js';
@@ -1 +1 @@
1
- export{DomainLifecycleBoundary}from"./DomainLifecycleBoundary.js";export{PublishedDataProvider}from"./PublishedDataProvider.js";export{FrontendDataProvider}from"./FrontendDataProvider.js";export{BackendDataProvider}from"./BackendDataProvider.js";export{createCollectFrontendDataHandler,useCollectFrontendDataHandler,CollectFrontendDataHandlerBoundary}from"./CollectFrontendDataHandler.js";export{createFilterPublishedChunksHandler,useFilterPublishedChunksHandler,FilterPublishedChunksHandlerBoundary}from"./FilterPublishedChunksHandler.js";export{createIsUndoableHandler}from"./IsUndoableHandler.js";
1
+ export{DomainLifecycleBoundary}from"./DomainLifecycleBoundary.js";export{PublishedDataProvider}from"./PublishedDataProvider.js";export{FrontendDataProvider}from"./FrontendDataProvider.js";export{BackendDataProvider}from"./BackendDataProvider.js";export{createCollectFrontendDataHandler,useCollectFrontendDataHandler,CollectFrontendDataHandlerBoundary}from"./CollectFrontendDataHandler.js";export{createFilterPublishedChunksHandler,useFilterPublishedChunksHandler,FilterPublishedChunksHandlerBoundary}from"./FilterPublishedChunksHandler.js";export{createIsUndoableHandler}from"./IsUndoableHandler.js";export{useOnPresetLoadedHandler,createOnPresetLoadedHandler}from"./OnPresetLoadedHandler.js";export{useChatEnabled}from"./chat-hooks.js";
@@ -1,3 +1,4 @@
1
+ export * from './use-configuration-save-state.js';
1
2
  export * from './use-configurator-messages.js';
2
3
  export * from './use-domain-context.js';
3
4
  export * from './use-entity-selector.js';
@@ -1 +1 @@
1
- export*from"./use-configurator-messages.js";export*from"./use-domain-context.js";export*from"./use-entity-selector.js";export*from"./use-observable-selector.js";export*from"./use-slices.js";export*from"./use-state-slice.js";export*from"./use-state-validity.js";export*from"./use-store-selector.js";
1
+ export*from"./use-configuration-save-state.js";export*from"./use-configurator-messages.js";export*from"./use-domain-context.js";export*from"./use-entity-selector.js";export*from"./use-observable-selector.js";export*from"./use-slices.js";export*from"./use-state-slice.js";export*from"./use-state-validity.js";export*from"./use-store-selector.js";
@@ -0,0 +1,23 @@
1
+ import { type ConfigurationPersistSystemFailure } from '../../application-runtime/index.js';
2
+ /**
3
+ * The save status of the configuration, as `useConfigurationSaveState()` returns it.
4
+ */
5
+ export interface ConfigurationSaveState {
6
+ /** The revision the configuration is at: the loaded one, then the one the latest save created. */
7
+ readonly revisionId: string;
8
+ /** Whether a save is running. */
9
+ readonly isSaving: boolean;
10
+ /**
11
+ * The latest failed save, `{ error, timestamp }` with `timestamp` in milliseconds since the epoch, or `null` once a
12
+ * later save succeeds or another configuration loads.
13
+ */
14
+ readonly failure: ConfigurationPersistSystemFailure | null;
15
+ }
16
+ export type UseConfigurationSaveState = () => ConfigurationSaveState;
17
+ /**
18
+ * The save status of the configuration of the application this component is mounted in, read from its persist system:
19
+ * `revisionId`, `isSaving` and `failure`. An editable configuration saves committed changes on its own, three seconds
20
+ * after the last one; a read-only one never saves. Loading a configuration resets the status. Re-renders when any of
21
+ * the three changes; the returned object keeps its identity otherwise.
22
+ */
23
+ export declare const useConfigurationSaveState: UseConfigurationSaveState;
@@ -0,0 +1 @@
1
+ import{useMemo as e}from"react";import{useDomainApplication as r}from"../../application-runtime/index.js";import{useEagerObservableValue as o}from"./use-observable-selector.js";export const useConfigurationSaveState=()=>{let{configurationPersistSystem:t}=r(),i=o(t.revisionId$),a=o(t.saving$),n=o(t.failure$);return e(()=>({revisionId:i,isSaving:a,failure:n}),[i,a,n])};
@@ -69,6 +69,7 @@ export declare const useDomainContextSelectors: () => {
69
69
  getMigrate: () => import("#package/domain").MigrateFunction<DomainEntity<string>>;
70
70
  getActiveMode: () => import("#package/domain").DomainMode;
71
71
  getIsInitialized: () => boolean;
72
+ getIsViewMode: () => boolean;
72
73
  getComponentReaderIndexes: () => import("#package/domain").ComponentReaderIndexes;
73
74
  getStoreRuntimeDependencies: () => {
74
75
  componentReaderIndexes: import("#package/domain").ComponentReaderIndexes;
@@ -2,6 +2,7 @@ export { useDomain, type UseDomainContext } from './common-hooks/use-domain-cont
2
2
  export { useStoreSelector, useRenderedSelector, useRenderedSelector$, useStoreSelector$, type UseSynchronizedSelector, type UseSynchronizedSelector$, } from './common-hooks/use-store-selector.js';
3
3
  export { useEagerObservableSelector, usePatientObservableSelector, usePatientObservableValue, useEagerObservableValue, } from './common-hooks/use-observable-selector.js';
4
4
  export { useStateValidity, type UseStateValidity, useMapViolationHints, type UseMapViolationHints, useControlViolations, type UseControlViolations, useFinalizeViolations, type UseFinalizeViolations, } from './common-hooks/use-state-validity.js';
5
+ export { useConfigurationSaveState, type UseConfigurationSaveState, type ConfigurationSaveState, } from './common-hooks/use-configuration-save-state.js';
5
6
  export { useConfiguratorMessages, type UseConfiguratorMessages, type ConfiguratorMessage, } from './common-hooks/use-configurator-messages.js';
6
7
  export { useComponent, useRenderedComponent, type UseComponent, useComponents, useDynamicComponents, useRenderedComponents, type UseComponents, useRootComponents, useRootRenderedComponents, type UseRootComponents, useFirstComponent, useFirstRenderedComponent, type UseFirstComponent, useFirstRootComponent, useFirstRootRenderedComponent, type UseFirstRootComponent, } from './component-hooks/use-component.js';
7
8
  export { useCommittedState, useCommittedSlice, useRenderedSlice, useRenderedState, type UseSlice, type UseState, } from './common-hooks/use-slices.js';
@@ -1 +1 @@
1
- export{useDomain}from"./common-hooks/use-domain-context.js";export{useStoreSelector,useRenderedSelector,useRenderedSelector$,useStoreSelector$}from"./common-hooks/use-store-selector.js";export{useEagerObservableSelector,usePatientObservableSelector,usePatientObservableValue,useEagerObservableValue}from"./common-hooks/use-observable-selector.js";export{useStateValidity,useMapViolationHints,useControlViolations,useFinalizeViolations}from"./common-hooks/use-state-validity.js";export{useConfiguratorMessages}from"./common-hooks/use-configurator-messages.js";export{useComponent,useRenderedComponent,useComponents,useDynamicComponents,useRenderedComponents,useRootComponents,useRootRenderedComponents,useFirstComponent,useFirstRenderedComponent,useFirstRootComponent,useFirstRootRenderedComponent}from"./component-hooks/use-component.js";export{useCommittedState,useCommittedSlice,useRenderedSlice,useRenderedState}from"./common-hooks/use-slices.js";export{useDomainEntityState,useDomainEntityRenderedState}from"./entity-hooks/use-domain-entity-state.js";export{useEntityPrice,useRootEntityPrice}from"./entity-hooks/use-entity-price.js";export{useSelectEntity,useSelectedEntity,useSelectedEntityId,useSelectedDomainEntityId,useDeselect,useSelectParent}from"./system-hooks/selection-hooks.js";export{useActiveNavigationState,useActiveViewState,useSetViewState,useActiveToolState,useIsFullscreenActive,useSetFullscreen,useActiveViewports,useDraggedDomainEntityId,useNavigate,usePushNavigate,usePopNavigate}from"./system-hooks/navigation-hooks.js";export{useComposition}from"./system-hooks/composition-hooks.js";export{useUndoRedo}from"./system-hooks/undo-redo-hooks.js";export{useTabNavigation}from"./system-hooks/tab-navigation-hooks.js";export{useStepNavigation}from"./system-hooks/step-navigation-hooks.js";export{useLocaleSwitch}from"./system-hooks/locale-switch-hooks.js";export{useGenerateShareLink}from"./system-hooks/generate-share-link-hooks.js";export{useShareLinks}from"./system-hooks/share-links-hooks.js";export{useHoveredDomainEntityId,useHoveredEntity,useHoveredEntityId}from"./system-hooks/hover-hooks.js";export{useRootEntityState,useRootEntityRenderedState}from"./entity-hooks/use-root-entity-state.js";export{useRootEntityId,useRootEntityRenderedId}from"./entity-hooks/use-root-entity-id.js";export{useEntitySelector,useRootEntitySelector,useRenderedEntitySelector,useRenderedRootEntitySelector}from"./common-hooks/use-entity-selector.js";export{useDimensionState,useDimensions,useDimensionConfig}from"./system-hooks/dimension-hooks.js";
1
+ export{useDomain}from"./common-hooks/use-domain-context.js";export{useStoreSelector,useRenderedSelector,useRenderedSelector$,useStoreSelector$}from"./common-hooks/use-store-selector.js";export{useEagerObservableSelector,usePatientObservableSelector,usePatientObservableValue,useEagerObservableValue}from"./common-hooks/use-observable-selector.js";export{useStateValidity,useMapViolationHints,useControlViolations,useFinalizeViolations}from"./common-hooks/use-state-validity.js";export{useConfigurationSaveState}from"./common-hooks/use-configuration-save-state.js";export{useConfiguratorMessages}from"./common-hooks/use-configurator-messages.js";export{useComponent,useRenderedComponent,useComponents,useDynamicComponents,useRenderedComponents,useRootComponents,useRootRenderedComponents,useFirstComponent,useFirstRenderedComponent,useFirstRootComponent,useFirstRootRenderedComponent}from"./component-hooks/use-component.js";export{useCommittedState,useCommittedSlice,useRenderedSlice,useRenderedState}from"./common-hooks/use-slices.js";export{useDomainEntityState,useDomainEntityRenderedState}from"./entity-hooks/use-domain-entity-state.js";export{useEntityPrice,useRootEntityPrice}from"./entity-hooks/use-entity-price.js";export{useSelectEntity,useSelectedEntity,useSelectedEntityId,useSelectedDomainEntityId,useDeselect,useSelectParent}from"./system-hooks/selection-hooks.js";export{useActiveNavigationState,useActiveViewState,useSetViewState,useActiveToolState,useIsFullscreenActive,useSetFullscreen,useActiveViewports,useDraggedDomainEntityId,useNavigate,usePushNavigate,usePopNavigate}from"./system-hooks/navigation-hooks.js";export{useComposition}from"./system-hooks/composition-hooks.js";export{useUndoRedo}from"./system-hooks/undo-redo-hooks.js";export{useTabNavigation}from"./system-hooks/tab-navigation-hooks.js";export{useStepNavigation}from"./system-hooks/step-navigation-hooks.js";export{useLocaleSwitch}from"./system-hooks/locale-switch-hooks.js";export{useGenerateShareLink}from"./system-hooks/generate-share-link-hooks.js";export{useShareLinks}from"./system-hooks/share-links-hooks.js";export{useHoveredDomainEntityId,useHoveredEntity,useHoveredEntityId}from"./system-hooks/hover-hooks.js";export{useRootEntityState,useRootEntityRenderedState}from"./entity-hooks/use-root-entity-state.js";export{useRootEntityId,useRootEntityRenderedId}from"./entity-hooks/use-root-entity-id.js";export{useEntitySelector,useRootEntitySelector,useRenderedEntitySelector,useRenderedRootEntitySelector}from"./common-hooks/use-entity-selector.js";export{useDimensionState,useDimensions,useDimensionConfig}from"./system-hooks/dimension-hooks.js";
@@ -1,3 +1,2 @@
1
- export type { ConfiguratorErrorPageProps, ConfiguratorErrorReason } from './configurator-error-page-props.js';
2
1
  export { PhoenixEntityElement, PhoenixEntityElements, PhoenixEntityElementWithChildren, type PhoenixEntityElementProps, type PhoenixEntityElementsProps, type PhoenixEntityElementWithChildrenProps, } from './PhoenixEntityElement.js';
3
2
  export { PhoenixLayoutElement, PhoenixLayoutElements, PhoenixLayoutElementWithChildren, usePhoenixLayoutElementExists, type PhoenixLayoutElementProps, type PhoenixLayoutElementsProps, type PhoenixLayoutElementWithChildrenProps, } from './PhoenixLayoutElement.js';
@@ -8,8 +8,11 @@ export * from './invalid-deployment/index.js';
8
8
  export * from './web-component/index.js';
9
9
  export * from './localizable/index.js';
10
10
  export * from './loading-state/index.js';
11
- export * from './responsive-state/index.js';
11
+ export * from './configurator-routing/index.js';
12
+ export * from './integration/index.js';
12
13
  export * from './elements/index.js';
13
14
  export * from './scene-control-elements/index.js';
15
+ export * from './page-elements/index.js';
16
+ export * from './lifecycle-providers/index.js';
14
17
  export * from './handlers/index.js';
15
18
  export * from './application-runtime/index.js';
@@ -1 +1 @@
1
- export*from"./theme/index.js";export*from"./utils/index.js";export*from"./session/index.js";export*from"./domain-context/index.js";export*from"./domain-application-context/index.js";export*from"./domain-controls/index.js";export*from"./invalid-deployment/index.js";export*from"./web-component/index.js";export*from"./localizable/index.js";export*from"./loading-state/index.js";export*from"./responsive-state/index.js";export*from"./elements/index.js";export*from"./scene-control-elements/index.js";export*from"./handlers/index.js";export*from"./application-runtime/index.js";
1
+ export*from"./theme/index.js";export*from"./utils/index.js";export*from"./session/index.js";export*from"./domain-context/index.js";export*from"./domain-application-context/index.js";export*from"./domain-controls/index.js";export*from"./invalid-deployment/index.js";export*from"./web-component/index.js";export*from"./localizable/index.js";export*from"./loading-state/index.js";export*from"./configurator-routing/index.js";export*from"./integration/index.js";export*from"./elements/index.js";export*from"./scene-control-elements/index.js";export*from"./page-elements/index.js";export*from"./lifecycle-providers/index.js";export*from"./handlers/index.js";export*from"./application-runtime/index.js";
@@ -0,0 +1 @@
1
+ import{jsx as r}from"react/jsx-runtime";import{useEffect as t}from"react";import{useRecipeEmbeddedState as i}from"../application-runtime/index.js";import{useSelectEntity as o}from"../domain-context/index.js";export const IntegrationSubscription=e=>{let{children:n}=e,m=i()?.rootRecipeId,p=o();return t(()=>{m&&p(m)},[m,p]),r("div",{children:n})};
@@ -0,0 +1 @@
1
+ export { IntegrationSubscription, type IntegrationSubscriptionProps } from './IntegrationSubscription.js';
@@ -0,0 +1 @@
1
+ export{IntegrationSubscription}from"./IntegrationSubscription.js";
@@ -0,0 +1,8 @@
1
+ import type { PropsWithChildren } from 'react';
2
+ /**
3
+ * Runs the configurator's data stages in order, published, frontend and backend data, each
4
+ * followed by its `On*DataReady` provider.
5
+ *
6
+ * @internal Runtime plumbing for the SDK's own configurator application, which runs it at its root.
7
+ */
8
+ export declare const ConfiguratorDataProvider: ({ children }: PropsWithChildren) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ import{jsx as r}from"react/jsx-runtime";import{BackendDataProvider as i,FrontendDataProvider as e,PublishedDataProvider as o}from"../domain-application-context/index.js";import{OnBackendDataReadyProvider as n,OnFrontendDataReadyProvider as c,OnPublishedDataReadyProvider as t}from"./LifecycleProviders.js";export const ConfiguratorDataProvider=({children:d})=>r(o,{children:r(t,{children:r(e,{children:r(c,{children:r(i,{children:r(n,{children:d})})})})})});
@@ -0,0 +1 @@
1
+ import{jsx as e,Fragment as r}from"react/jsx-runtime";import{createCustomPhoenixLayoutElement as t}from"#package/domain";import{PhoenixLayoutElement as o}from"../elements/index.js";let n={},a="OnConfiguratorReadyProvider";export const createOnConfiguratorReadyProvider=e=>t(a,e);export const OnConfiguratorReadyProvider=({children:t})=>e(o,{name:a,elementProps:n,defaultSlot:r,children:t});let d="OnSessionReadyProvider";export const createOnSessionReadyProvider=e=>t(d,e);export const OnSessionReadyProvider=({children:t})=>e(o,{name:d,elementProps:n,defaultSlot:r,children:t});let i="OnPublishedDataReadyProvider";export const createOnPublishedDataReadyProvider=e=>t(i,e);export const OnPublishedDataReadyProvider=({children:t})=>e(o,{name:i,elementProps:n,defaultSlot:r,children:t});let l="OnApplicationStartProvider";export const createOnApplicationStartProvider=e=>t(l,e);export const OnApplicationStartProvider=({children:t})=>e(o,{name:l,elementProps:n,defaultSlot:r,children:t});let c="OnRoutingReadyProvider";export const createOnRoutingReadyProvider=e=>t(c,e);export const OnRoutingReadyProvider=({children:t})=>e(o,{name:c,elementProps:n,defaultSlot:r,children:t});let s="OnFrontendDataReadyProvider";export const createOnFrontendDataReadyProvider=e=>t(s,e);export const OnFrontendDataReadyProvider=({children:t})=>e(o,{name:s,elementProps:n,defaultSlot:r,children:t});let p="OnBackendDataReadyProvider";export const createOnBackendDataReadyProvider=e=>t(p,e);export const OnBackendDataReadyProvider=({children:t})=>e(o,{name:p,elementProps:n,defaultSlot:r,children:t});
@@ -0,0 +1,2 @@
1
+ export * from './LifecycleProviders.js';
2
+ export { ConfiguratorDataProvider } from './ConfiguratorDataProvider.js';
@@ -0,0 +1 @@
1
+ export*from"./LifecycleProviders.js";export{ConfiguratorDataProvider}from"./ConfiguratorDataProvider.js";
@@ -0,0 +1,20 @@
1
+ import type { ReactNode } from 'react';
2
+ /**
3
+ * Hosts the application's loader: the loading hooks below it report to the runtime's `loading`
4
+ * slice, and the SDK's own UI below it leaves its inline loaders out (`useIsLoaderHosted()`). The
5
+ * configurator mounts the one host, inside its `ApplicationTypeProvider`, while it is powered on.
6
+ *
7
+ * It resets the slice when it mounts and not again while it stays mounted, so the loading state
8
+ * starts over at power-on and on remount, and only there.
9
+ *
10
+ * Its children mount once the reset is done, so their first render and their first phases already
11
+ * see the host, and the reset cannot wipe phases they started. The host resets in a layout effect
12
+ * and then sets local state, which React renders synchronously before the browser paints, whatever
13
+ * the lane of the first render. StrictMode repeats that layout effect before the children mount, so
14
+ * the second reset wipes nothing either.
15
+ *
16
+ * @internal Runtime plumbing for the SDK's own UI.
17
+ */
18
+ export declare const LoaderHost: ({ children }: {
19
+ readonly children: ReactNode;
20
+ }) => import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1 @@
1
+ import{jsx as o}from"react/jsx-runtime";import{useLayoutEffect as r,useState as i}from"react";import{LoaderHostContext as t,useLoadingApplication as e}from"../application-runtime/index.js";export const LoaderHost=({children:n})=>{let a=e(),[p,d]=i(!1);if(null===a)throw Error("LoaderHost has no application whose loader it could host: it is mounted outside an ApplicationRuntimeProvider or an ApplicationTypeProvider. Render LoaderHost inside both an ApplicationRuntimeProvider and an ApplicationTypeProvider, as ConfiguratorApp does.");return(r(()=>{a.actions.resetSlot(),d(!0)},[a]),p)?o(t.Provider,{value:!0,children:n}):null};
@@ -0,0 +1,9 @@
1
+ /** The ids of the loading phases the SDK reports itself. A project reports its own under other ids. */
2
+ export declare enum BuiltInLoadingPhase {
3
+ SessionAuth = "session-auth",
4
+ PublishedData = "published-data",
5
+ FrontendData = "frontend-data",
6
+ BackendData = "backend-data",
7
+ DataFetch = "data-fetch",
8
+ SceneAssets = "scene-assets"
9
+ }
@@ -0,0 +1 @@
1
+ var a;export var BuiltInLoadingPhase=((a={}).SessionAuth="session-auth",a.PublishedData="published-data",a.FrontendData="frontend-data",a.BackendData="backend-data",a.DataFetch="data-fetch",a.SceneAssets="scene-assets",a);
@@ -0,0 +1,18 @@
1
+ import { type PhoenixLayoutElementRegistration } from '#package/domain';
2
+ import type { LoadingPhase } from '../application-runtime/index.js';
3
+ /**
4
+ * The name a project registers a layout element under to replace what the app loader overlay shows.
5
+ * Its default, the built-in loader content, is registered in `defaultConfiguratorElements`.
6
+ */
7
+ export declare const AppLoaderContentName = "AppLoaderContent";
8
+ /** The props of the content a project registers with `createAppLoader`. */
9
+ export interface AppLoaderContentProps {
10
+ /** The loading phases running now; empty while the loader waits for the scene to start loading. */
11
+ readonly phases: readonly LoadingPhase[];
12
+ }
13
+ /**
14
+ * Registers a project's app loader content as the `AppLoaderContent` element. The SDK keeps the
15
+ * overlay, its place over the scene's safe area and its fade-in; the component is only what it shows.
16
+ */
17
+ export declare const createAppLoader: (Element: (props: AppLoaderContentProps) => JSX.Element) => readonly PhoenixLayoutElementRegistration[];
18
+ export type CreateAppLoader = (Element: (props: AppLoaderContentProps) => JSX.Element) => readonly PhoenixLayoutElementRegistration[];
@@ -0,0 +1 @@
1
+ import{jsx as o}from"react/jsx-runtime";import{createCustomPhoenixLayoutElement as t}from"#package/domain";import{useLoadingStateValue as e}from"./loading-state-hooks.js";export const AppLoaderContentName="AppLoaderContent";export const createAppLoader=r=>[t("AppLoaderContent",()=>{let{phases:t}=e();return o(r,{phases:t})})];
@@ -1,2 +1,4 @@
1
- export { BuiltInLoadingPhase, type LoadingPhase, type LoadingState, LoadingStateManager, } from './loading-state-manager.js';
2
- export { LoadingStateProvider, useLoadingState, type UseLoadingState, useLoadingStateManager, useLoadingStateValue, useLoadingPhase, useExpectPhase, useLoadingError, } from './LoadingStateProvider.js';
1
+ export { BuiltInLoadingPhase } from './built-in-loading-phase.js';
2
+ export { LoaderHost } from './LoaderHost.js';
3
+ export { useLoadingState, type UseLoadingState, useLoadingStateValue, useLoadingPhase, useExpectPhase, useLoadingError, } from './loading-state-hooks.js';
4
+ export { AppLoaderContentName, type AppLoaderContentProps, createAppLoader, type CreateAppLoader, } from './create-app-loader.js';
@@ -1 +1 @@
1
- export{BuiltInLoadingPhase,LoadingStateManager}from"./loading-state-manager.js";export{LoadingStateProvider,useLoadingState,useLoadingStateManager,useLoadingStateValue,useLoadingPhase,useExpectPhase,useLoadingError}from"./LoadingStateProvider.js";
1
+ export{BuiltInLoadingPhase}from"./built-in-loading-phase.js";export{LoaderHost}from"./LoaderHost.js";export{useLoadingState,useLoadingStateValue,useLoadingPhase,useExpectPhase,useLoadingError}from"./loading-state-hooks.js";export{AppLoaderContentName,createAppLoader}from"./create-app-loader.js";
@@ -1,22 +1,13 @@
1
- import type { ReactNode } from 'react';
2
- import { type LoadingPhase, type LoadingState, LoadingStateManager } from './loading-state-manager.js';
3
- export declare const LoadingStateProvider: ({ children }: {
4
- readonly children: ReactNode;
5
- }) => import("react/jsx-runtime").JSX.Element;
6
- /**
7
- * Returns the loading state manager if available.
8
- * Returns `null` when used outside of `LoadingStateProvider` (e.g. in admin app).
9
- */
10
- export declare const useLoadingStateManager: () => LoadingStateManager | null;
1
+ import { type LoadingPhase, type LoadingState } from '../application-runtime/index.js';
11
2
  /**
12
3
  * Subscribe to the current aggregated loading state.
13
- * Returns the default (not loading) state when used outside of `LoadingStateProvider`.
4
+ * Returns the default (not loading) state outside the application's loader host.
14
5
  */
15
6
  export declare const useLoadingStateValue: () => LoadingState;
16
7
  export type UseLoadingState = typeof useLoadingState;
17
8
  /**
18
9
  * Returns loading phase control functions.
19
- * Returns `null` when used outside of `LoadingStateProvider`.
10
+ * Returns `null` outside the application's loader host.
20
11
  */
21
12
  export declare const useLoadingState: () => {
22
13
  startPhase: (phase: LoadingPhase) => void;
@@ -0,0 +1 @@
1
+ import{useEffect as e,useMemo as t,useRef as r,useSyncExternalStore as n}from"react";import{useIsLoaderHosted as s,useLoadingActions as a,useLoadingApplication as o,useOptionalApplicationRuntime as u}from"../application-runtime/index.js";let c={isLoading:!1,hasError:!1,phases:[],expectedPhaseIds:new Set},l=()=>c,i=()=>()=>{};export const useLoadingStateValue=()=>{let e=o(),t=s(),r=u(),a=n(r?.subscribe??i,e?.selectors.getLoadingState??l);return t?a:c};export const useLoadingState=()=>{let e=a();return t(()=>e?{startPhase:e.startPhase,endPhase:e.endPhase}:null,[e])};export const useLoadingPhase=(t,n)=>{let s=a(),o=r(t);o.current=t;let u=r(null);e(()=>{if(s)return n?(u.current=o.current.id,s.startPhase(o.current)):null!==u.current&&(s.endPhase(u.current),u.current=null),()=>{null!==u.current&&(s.endPhase(u.current),u.current=null)}},[s,n,t.id])};export const useExpectPhase=t=>{let r=a();e(()=>{if(r)return r.expectPhase(t),()=>{r.dropExpectation(t)}},[r,t])};export const useLoadingError=t=>{let r=a();e(()=>{r&&t&&r.reportError()},[r,t])};
@@ -0,0 +1,17 @@
1
+ import { type PropsWithChildren } from 'react';
2
+ import type { ConfigurationNotFoundPageProps } from '../session/index.js';
3
+ interface ConfigurationNotFoundPagePropsProviderProps extends PropsWithChildren {
4
+ readonly value: ConfigurationNotFoundPageProps;
5
+ }
6
+ /**
7
+ * @internal Runtime plumbing behind `createConfigurationNotFoundPage`, for the SDK's own UI. The
8
+ * configurator's renderer of the `ConfigurationNotFoundPage` element provides the page's props through
9
+ * it, because an element slot is typed as taking only `children`.
10
+ */
11
+ export declare const ConfigurationNotFoundPagePropsProvider: (props: ConfigurationNotFoundPagePropsProviderProps) => import("react/jsx-runtime").JSX.Element;
12
+ /**
13
+ * @internal Exists for the SDK's own UI and for `createConfigurationNotFoundPage`, which read the
14
+ * props of the `ConfigurationNotFoundPage` element through it.
15
+ */
16
+ export declare const useConfigurationNotFoundPageProps: () => ConfigurationNotFoundPageProps;
17
+ export {};
@@ -0,0 +1 @@
1
+ import{jsx as o}from"react/jsx-runtime";import{createContext as r,useContext as t}from"react";let e=r({});export const ConfigurationNotFoundPagePropsProvider=r=>{let{value:t,children:n}=r;return o(e.Provider,{value:t,children:n})};export const useConfigurationNotFoundPageProps=()=>t(e);
@@ -0,0 +1,17 @@
1
+ import { type PropsWithChildren } from 'react';
2
+ import type { ConfiguratorErrorPageProps } from './configurator-error-page-props.js';
3
+ interface ConfiguratorErrorPagePropsProviderProps extends PropsWithChildren {
4
+ readonly value: ConfiguratorErrorPageProps;
5
+ }
6
+ /**
7
+ * @internal Runtime plumbing behind `createConfiguratorErrorPage`, for the SDK's own UI. The
8
+ * configurator's renderer of the `ConfiguratorErrorPage` element provides the page's props through it,
9
+ * because an element slot is typed as taking only `children`.
10
+ */
11
+ export declare const ConfiguratorErrorPagePropsProvider: (props: ConfiguratorErrorPagePropsProviderProps) => import("react/jsx-runtime").JSX.Element;
12
+ /**
13
+ * @internal Exists for the SDK's own UI and for `createConfiguratorErrorPage`, which read the props
14
+ * of the `ConfiguratorErrorPage` element through it.
15
+ */
16
+ export declare const useConfiguratorErrorPageProps: () => ConfiguratorErrorPageProps;
17
+ export {};
@@ -0,0 +1 @@
1
+ import{jsx as r}from"react/jsx-runtime";import{createContext as e,useContext as o}from"react";let t=e(void 0);export const ConfiguratorErrorPagePropsProvider=e=>{let{value:o,children:i}=e;return r(t.Provider,{value:o,children:i})};export const useConfiguratorErrorPageProps=()=>{let r=o(t);if(void 0===r)throw Error("The ConfiguratorErrorPage element was rendered without its props. Only the configurator renders this element, inside ConfiguratorErrorPagePropsProvider; render the element through the configurator instead of mounting it directly.");return r};
@@ -1,5 +1,11 @@
1
1
  import { type PhoenixLayoutElementRegistration } from '#package/domain';
2
- import type { ConfigurationNotFoundPageProps } from '#package/react-sdk';
2
+ import type { ConfigurationNotFoundPageProps } from '../session/index.js';
3
+ /**
4
+ * The name a project registers a layout element under to replace the page shown when a configuration
5
+ * cannot be loaded or opened. Its default, the built-in `ConfigurationNotFoundPage`, is registered in
6
+ * `defaultConfiguratorElements`.
7
+ */
8
+ export declare const ConfigurationNotFoundPageName = "ConfigurationNotFoundPage";
3
9
  /**
4
10
  * Registers a project's "configuration not accessible" page as the `ConfigurationNotFoundPage`
5
11
  * element, with its props typed. Registering a layout element under that name with
@@ -0,0 +1 @@
1
+ import{jsx as o}from"react/jsx-runtime";import{createCustomPhoenixLayoutElement as t}from"#package/domain";import{useConfigurationNotFoundPageProps as n}from"./ConfigurationNotFoundPagePropsProvider.js";export const ConfigurationNotFoundPageName="ConfigurationNotFoundPage";export const createConfigurationNotFoundPage=r=>t("ConfigurationNotFoundPage",()=>o(r,{...n()}));
@@ -1,5 +1,10 @@
1
1
  import { type PhoenixLayoutElementRegistration } from '#package/domain';
2
- import type { ConfiguratorErrorPageProps } from '#package/react-sdk';
2
+ import type { ConfiguratorErrorPageProps } from './configurator-error-page-props.js';
3
+ /**
4
+ * The name a project registers a layout element under to replace the configurator's production error
5
+ * page. Its default, the built-in error page, is registered in `defaultConfiguratorElements`.
6
+ */
7
+ export declare const ConfiguratorErrorPageName = "ConfiguratorErrorPage";
3
8
  /**
4
9
  * Registers a project's production error page as the `ConfiguratorErrorPage` element, with its props
5
10
  * typed. Registering a layout element under that name with `createCustomPhoenixLayoutElement` works
@@ -0,0 +1 @@
1
+ import{jsx as r}from"react/jsx-runtime";import{createCustomPhoenixLayoutElement as o}from"#package/domain";import{useConfiguratorErrorPageProps as a}from"./ConfiguratorErrorPagePropsProvider.js";export const ConfiguratorErrorPageName="ConfiguratorErrorPage";export const createConfiguratorErrorPage=t=>o("ConfiguratorErrorPage",()=>r(t,{...a()}));
@@ -0,0 +1,9 @@
1
+ import { type PhoenixLayoutElementRegistration } from '#package/domain';
2
+ /**
3
+ * The name a project registers a layout element under to replace the whole preset screen. Its
4
+ * default, the built-in preset screen, is registered in `defaultConfiguratorElements`.
5
+ */
6
+ export declare const PresetUiName = "PresetUi";
7
+ /** Registers a project's preset screen as the `PresetUi` element. */
8
+ export declare const createPresetUi: (Element: () => JSX.Element) => PhoenixLayoutElementRegistration;
9
+ export type CreatePresetUi = (Element: () => JSX.Element) => PhoenixLayoutElementRegistration;
@@ -0,0 +1 @@
1
+ import{createCustomPhoenixLayoutElement as e}from"#package/domain";export const PresetUiName="PresetUi";export const createPresetUi=t=>e("PresetUi",t);
@@ -0,0 +1,6 @@
1
+ export type { ConfiguratorErrorPageProps, ConfiguratorErrorReason } from './configurator-error-page-props.js';
2
+ export { ConfiguratorErrorPagePropsProvider, useConfiguratorErrorPageProps, } from './ConfiguratorErrorPagePropsProvider.js';
3
+ export { ConfiguratorErrorPageName, createConfiguratorErrorPage, type CreateConfiguratorErrorPage, } from './create-configurator-error-page.js';
4
+ export { ConfigurationNotFoundPagePropsProvider, useConfigurationNotFoundPageProps, } from './ConfigurationNotFoundPagePropsProvider.js';
5
+ export { ConfigurationNotFoundPageName, createConfigurationNotFoundPage, type CreateConfigurationNotFoundPage, } from './create-configuration-not-found-page.js';
6
+ export { PresetUiName, createPresetUi, type CreatePresetUi } from './create-preset-ui.js';
@@ -0,0 +1 @@
1
+ export{ConfiguratorErrorPagePropsProvider,useConfiguratorErrorPageProps}from"./ConfiguratorErrorPagePropsProvider.js";export{ConfiguratorErrorPageName,createConfiguratorErrorPage}from"./create-configurator-error-page.js";export{ConfigurationNotFoundPagePropsProvider,useConfigurationNotFoundPageProps}from"./ConfigurationNotFoundPagePropsProvider.js";export{ConfigurationNotFoundPageName,createConfigurationNotFoundPage}from"./create-configuration-not-found-page.js";export{PresetUiName,createPresetUi}from"./create-preset-ui.js";
@@ -1 +1 @@
1
- import{jsx as e}from"react/jsx-runtime";import{useCallback as t,useEffect as o,useMemo as i}from"react";import{distinctUntilChanged as n,filter as a,skip as r}from"rxjs";import{match as s}from"ts-pattern";import{standardWebComponentEvents as l,standardWebComponentProperties as d}from"#package/domain";import{Loader as c}from"#package/ui-sdk";import{DomainSessionProvider as u,INTEGRATION_MODE_SETTINGS as h,SessionProvider as m,useApplicationRuntime as g,useApplicationRuntimeSelector as p,useDispatchWebComponentEvent as f,useLogger as S,useRawSession as k,useSessionService as v,useWebComponentProperty$ as x,useWebComponentPropertyValue as w}from"../application-runtime/index.js";import{usePatientObservableValue as T}from"../domain-context/index.js";import{BuiltInLoadingPhase as j,useLoadingPhase as b,useLoadingStateManager as C}from"../loading-state/index.js";import{NotAuthenticatedPage as A}from"./NotAuthenticatedPage.js";let U="code";export const SessionServiceProvider=E=>{let{children:P,notAuthenticatedFallback:z=A}=E,F=g(),$=S(),q=v(),M=k(),N=p(F.selectors.session.getSession),R=p(F.selectors.sessionContext.getSessionContext),y=w(d.sessionToken),L=w(d.adminSessionToken),W=w(d.refreshToken),B=x(d.integrationMode),D=x(d.authorizationCode),G=t(()=>{if(D.value){let e=B.value;"local-storage"===h[e].authenticationStorage&&$.warn(`authorizationCode WC prop used in '${e}' mode. This is discouraged — tokens stored in localStorage leak across tabs. Use 'handoff' or 'headless' mode instead.`);let t=D.value;return D.next(void 0),t}if(h[B.value].consumeCodeFromUrl){let e=new URL(window.location.href),t=e.searchParams.get(U);return e.searchParams.delete(U),history.replaceState(null,"",e),t??void 0}},[D,B,$]),H=T(i(()=>D.pipe(r(1),a(e=>void 0!==e),n()),[D]),void 0),I=h[w(d.integrationMode)].authenticationStorage,J=f(l.authenticationFailed),K=i(()=>s(I).with("local-storage",()=>localStorage).with("session-storage",()=>sessionStorage).exhaustive(),[I]);o(()=>{q.configure({initialSessionToken:y,initialAdminSessionToken:L,initialRefreshToken:W,retrieveAuthorizationCode:G,dispatchAuthenticationFailed:J,storage:K})},[q,y,L,W,G,J,K]),o(()=>{"loading"===M.authenticated&&q.requestSessionToken().catch(e=>{let t=e instanceof Error?e:Error(`Unknown error ${e}`);$.warn("Session could not be authenticated",{},t)})},[q,M.authenticated,$]),o(()=>{H&&($.debug("New authorization code received, re-authenticating session"),q.requestSessionToken().catch(e=>{let t=e instanceof Error?e:Error(`Unknown error ${e}`);$.warn("Session could not be authenticated",{},t)}))},[H,q,$]);let O=null!==C();return(b({id:j.SessionAuth,label:"Authenticating session…"},"loading"===M.authenticated),"loading"===M.authenticated)?O?null:e(c,{}):"error"===M.authenticated?e(m,{value:M,children:e(z,{})}):null===R?null:e(m,{value:N,children:e(u,{value:R,children:P})})};
1
+ import{jsx as e}from"react/jsx-runtime";import{useCallback as t,useEffect as o,useMemo as i}from"react";import{distinctUntilChanged as n,filter as a,skip as r}from"rxjs";import{match as s}from"ts-pattern";import{standardWebComponentEvents as l,standardWebComponentProperties as d}from"#package/domain";import{Loader as c}from"#package/ui-sdk";import{DomainSessionProvider as u,INTEGRATION_MODE_SETTINGS as h,SessionProvider as m,useApplicationRuntime as g,useApplicationRuntimeSelector as p,useDispatchWebComponentEvent as f,useIsLoaderHosted as S,useLogger as k,useRawSession as v,useSessionService as x,useWebComponentProperty$ as w,useWebComponentPropertyValue as T}from"../application-runtime/index.js";import{usePatientObservableValue as j}from"../domain-context/index.js";import{BuiltInLoadingPhase as b,useLoadingPhase as C}from"../loading-state/index.js";import{NotAuthenticatedPage as A}from"./NotAuthenticatedPage.js";let U="code";export const SessionServiceProvider=E=>{let{children:P,notAuthenticatedFallback:z=A}=E,F=g(),$=k(),q=x(),M=v(),N=p(F.selectors.session.getSession),R=p(F.selectors.sessionContext.getSessionContext),y=T(d.sessionToken),L=T(d.adminSessionToken),W=T(d.refreshToken),B=w(d.integrationMode),D=w(d.authorizationCode),G=t(()=>{if(D.value){let e=B.value;"local-storage"===h[e].authenticationStorage&&$.warn(`authorizationCode WC prop used in '${e}' mode. This is discouraged — tokens stored in localStorage leak across tabs. Use 'handoff' or 'headless' mode instead.`);let t=D.value;return D.next(void 0),t}if(h[B.value].consumeCodeFromUrl){let e=new URL(window.location.href),t=e.searchParams.get(U);return e.searchParams.delete(U),history.replaceState(null,"",e),t??void 0}},[D,B,$]),H=j(i(()=>D.pipe(r(1),a(e=>void 0!==e),n()),[D]),void 0),I=h[T(d.integrationMode)].authenticationStorage,J=f(l.authenticationFailed),K=i(()=>s(I).with("local-storage",()=>localStorage).with("session-storage",()=>sessionStorage).exhaustive(),[I]);o(()=>{q.configure({initialSessionToken:y,initialAdminSessionToken:L,initialRefreshToken:W,retrieveAuthorizationCode:G,dispatchAuthenticationFailed:J,storage:K})},[q,y,L,W,G,J,K]),o(()=>{"loading"===M.authenticated&&q.requestSessionToken().catch(e=>{let t=e instanceof Error?e:Error(`Unknown error ${e}`);$.warn("Session could not be authenticated",{},t)})},[q,M.authenticated,$]),o(()=>{H&&($.debug("New authorization code received, re-authenticating session"),q.requestSessionToken().catch(e=>{let t=e instanceof Error?e:Error(`Unknown error ${e}`);$.warn("Session could not be authenticated",{},t)}))},[H,q,$]);let O=S();return(C({id:b.SessionAuth,label:"Authenticating session…"},"loading"===M.authenticated),"loading"===M.authenticated)?O?null:e(c,{}):"error"===M.authenticated?e(m,{value:M,children:e(z,{})}):null===R?null:e(m,{value:N,children:e(u,{value:R,children:P})})};
@@ -1 +1 @@
1
- import{jsx as e}from"react/jsx-runtime";import{createRoot as t}from"react-dom/client";import{Subject as r,Subscription as o,filter as s,scan as i}from"rxjs";import{v4 as n}from"uuid";import{standardWebComponentEvents as a,standardWebComponentProperties as l}from"#package/domain";import{WebComponentApp as c}from"./WebComponentApp.js";import{createEventDispatcher as u,createStorage as p,createWebComponentApi as h}from"./create-web-component-api.js";import{registerGodModeTarget as b}from"./god-mode/index.js";import{createAttributeNameToPropertyMap as d,createEventTypeByDescriptorMap as m,deriveWebComponentContract as f}from"./web-component-contract.js";let y=Symbol("storagesByPropertyDescriptor"),g=Symbol("reactRoot"),v=Symbol("pendingDisconnection"),j=Symbol("setProperty"),S=Symbol("activeSubscriptions"),P=Symbol("propertiesWithStorages"),w=Symbol("container"),C=Symbol("applicationRuntime"),x=Symbol("webComponentApi"),A=Symbol("PreviousPropertyValues"),E=Symbol("Events"),O=Symbol("Uuid"),$=(e,t,r)=>{let o=t?.attributeParser;if(!o)throw Error("Attribute parser is not defined");try{let e=o(r);return{success:!0,data:e}}catch(t){return console.error(`Failed to parse attribute ${e}, ignoring`,t),{success:!1}}};export const createWebComponent=k=>{let{RootComponent:D,webComponentOptions:B,embeddedIntegration:M,applicationRuntimeFactory:W}=k,F=f(B),{properties:V,events:q}=F,N=d(V),R=m(q),T=class Salsita3dConfigurator extends HTMLElement{[y];[g];[v]=null;[S]=[];[P];[w];[C];[x];[A]=new Map;[E]=new r;[O]=n();get applicationRuntime(){return this[C]}static observedAttributes=Array.from(N.keys());[j](e,t,r){let o=t.schema.safeParse(r);if(!o.success)return void console.error(`Invalid value provided for property ${e}, ignoring`,o.error);let s=this[y].get(t);if(!s)return void console.error(`Subject not found for property descriptor of ${e}`);let i=s.isSet;s.isSet=!0,i&&s.subject.value===o.data||s.subject.next(o.data)}constructor(){super(),this[w]=this.attachShadow({mode:"closed"}),this[P]=Object.entries(V).map(([e,t])=>{if(Object.prototype.hasOwnProperty.call(this,e)){let r=t.schema.safeParse(this[e]);if(delete this[e],r.success)return{name:e,propertyDescriptor:t,storage:p(t,r.data)};console.error(`Failed to validate property ${e}, ignoring`,r.error)}if(t.attributeParser&&t.attributeNames){let r=t.attributeNames.map(e=>this.getAttribute(e)).find(e=>null!==e)??null;if(null!==r){let o=$(e,t,r);if(o.success){let r=t.schema.safeParse(o.data);if(r.success)return{name:e,propertyDescriptor:t,storage:p(t,r.data)};console.error(`Failed to validate attribute ${e}, ignoring`,r.error)}}}return{name:e,propertyDescriptor:t,storage:p(t,t.defaultValue)}}),this[y]=new Map(this[P].map(({propertyDescriptor:e,storage:t})=>[e,t])),this[x]=h({element:this,eventTypeByDescriptor:R,events:this[E],propertiesWithStorages:this[P],storagesByPropertyDescriptor:this[y]}),this[C]=W({webComponentOptions:F,webComponentApi:this[x]})}connectedCallback(){let r;if(null!==this[v]){this[v]=null,this[C].actions.webComponent.startNewGeneration();return}let n=this[C],p=this[x],h=u({element:this,eventTypeByDescriptor:R,storagesByPropertyDescriptor:this[y]},!0),d=this[P].map(({name:e,storage:t})=>t.subject.pipe(i((e,t)=>[e[1],t],[t.subject.value,t.subject.value]),s(([e,t])=>e!==t)).subscribe(([t,r])=>{h(a.propertyChanged,{name:e,oldValue:t,newValue:r})})),m=e=>{if(e)for(let[t,r]of Object.entries(e)){let e=this[P].find(({name:e})=>e===t);if(e){let{storage:o,propertyDescriptor:s}=e;this[A].has(t)||this[A].set(t,o.subject.value);let i=s.schema.safeParse(r);i.success?(o.subject.next(i.data),o.isSet=!0):console.error(`Failed to apply web component property override for "${t}":`,i.error)}}else{for(let[e,t]of this[A]){let r=this[P].find(({name:t})=>t===e);if(r){let{storage:e}=r;e.subject.next(t)}}this[A].clear()}},f=new o(n.subscribe(()=>{let e=n.selectors.overrides.getWebComponentProperties();e!==r&&(r=e,m(e))})),j=new o(b(this,n.actions.environment.setGodMode));this[S]=[...d,f,j],this[g]=t(this[w]),this[g].render(e(c,{runtime:n,container:this[w],children:e(D,{})}));let E=p.getPropertyValue(l.onAttached);if(E)try{E(this)}catch(e){console.error("Error in onAttached handler",e)}this.dispatchEvent(new CustomEvent("attached",{bubbles:!0}))}disconnectedCallback(){let e={};this[v]=e,queueMicrotask(()=>{this[v]===e&&(this[v]=null,this[S].forEach(e=>{e.unsubscribe()}),this[g]?.unmount(),this[g]=void 0)})}attributeChangedCallback(e,t,r){let o=N.get(e);if(!o)throw Error(`Property descriptor not found for attribute: ${e}, despite the attribute being observed`);if(null===r)return o.required?void console.error(`Cannot unset a required attribute ${e}, ignoring`):void this[j](e,o,o.defaultValue);let s=$(e,o,r);s.success&&this[j](e,o,s.data)}};return Object.entries(V).forEach(([e,t])=>{Object.defineProperty(T.prototype,e,{enumerable:!0,configurable:!1,get(){return this[y].get(t).subject.value},set(r){this[j](e,t,r)}})}),M&&(Object.defineProperty(T.prototype,"$events",{enumerable:!1,configurable:!1,get(){return this[E]}}),Object.defineProperty(T.prototype,"uuid",{enumerable:!1,configurable:!1,get(){return this[O]}})),T};
1
+ import{jsx as e}from"react/jsx-runtime";import{createRoot as t}from"react-dom/client";import{Subject as r,Subscription as o,filter as s,scan as i}from"rxjs";import{v4 as n}from"uuid";import{standardWebComponentEvents as a,standardWebComponentProperties as l,webComponentAttributeParsers as c}from"#package/domain";import{WebComponentApp as u}from"./WebComponentApp.js";import{createEventDispatcher as p,createStorage as h,createWebComponentApi as b}from"./create-web-component-api.js";import{registerGodModeTarget as d}from"./god-mode/index.js";import{createAttributeNameToPropertyMap as m,createEventTypeByDescriptorMap as f,deriveWebComponentContract as y}from"./web-component-contract.js";let g=Symbol("storagesByPropertyDescriptor"),v=Symbol("reactRoot"),j=Symbol("pendingDisconnection"),S=Symbol("setProperty"),P=Symbol("activeSubscriptions"),w=Symbol("propertiesWithStorages"),C=Symbol("container"),A=Symbol("applicationRuntime"),x=Symbol("webComponentApi"),E=Symbol("PreviousPropertyValues"),O=Symbol("Events"),$=Symbol("Uuid"),k=(e,t,r)=>{let o=t?.attributeParser;if(!o)throw Error("Attribute parser is not defined");let s=o===c.boolean&&r===e?"":r;try{let e=o(s);return{success:!0,data:e}}catch(t){return console.error(`Failed to parse attribute ${e}, ignoring`,t),{success:!1}}};export const createWebComponent=c=>{let{RootComponent:D,webComponentOptions:B,embeddedIntegration:M,applicationRuntimeFactory:W}=c,F=y(B),{properties:V,events:q}=F,N=m(V),R=f(q),T=class Salsita3dConfigurator extends HTMLElement{[g];[v];[j]=null;[P]=[];[w];[C];[A];[x];[E]=new Map;[O]=new r;[$]=n();get applicationRuntime(){return this[A]}static observedAttributes=Array.from(N.keys());[S](e,t,r){let o=t.schema.safeParse(r);if(!o.success)return void console.error(`Invalid value provided for property ${e}, ignoring`,o.error);let s=this[g].get(t);if(!s)return void console.error(`Subject not found for property descriptor of ${e}`);let i=s.isSet;s.isSet=!0,i&&s.subject.value===o.data||s.subject.next(o.data)}constructor(){super(),this[C]=this.attachShadow({mode:"closed"}),this[w]=Object.entries(V).map(([e,t])=>{if(Object.prototype.hasOwnProperty.call(this,e)){let r=t.schema.safeParse(this[e]);if(delete this[e],r.success)return{name:e,propertyDescriptor:t,storage:h(t,r.data)};console.error(`Failed to validate property ${e}, ignoring`,r.error)}if(t.attributeParser&&t.attributeNames){let r=t.attributeNames.find(e=>this.hasAttribute(e)),o=void 0===r?null:this.getAttribute(r);if(void 0!==r&&null!==o){let s=k(r,t,o);if(s.success){let o=t.schema.safeParse(s.data);if(o.success)return{name:e,propertyDescriptor:t,storage:h(t,o.data)};console.error(`Failed to validate attribute ${r}, ignoring`,o.error)}}}return{name:e,propertyDescriptor:t,storage:h(t,t.defaultValue)}}),this[g]=new Map(this[w].map(({propertyDescriptor:e,storage:t})=>[e,t])),this[x]=b({element:this,eventTypeByDescriptor:R,events:this[O],propertiesWithStorages:this[w],storagesByPropertyDescriptor:this[g]}),this[A]=W({webComponentOptions:F,webComponentApi:this[x]})}connectedCallback(){let r;if(null!==this[j]){this[j]=null,this[A].actions.webComponent.startNewGeneration();return}let n=this[A],c=this[x],h=p({element:this,eventTypeByDescriptor:R,storagesByPropertyDescriptor:this[g]},!0),b=this[w].map(({name:e,storage:t})=>t.subject.pipe(i((e,t)=>[e[1],t],[t.subject.value,t.subject.value]),s(([e,t])=>e!==t)).subscribe(([t,r])=>{h(a.propertyChanged,{name:e,oldValue:t,newValue:r})})),m=e=>{if(e)for(let[t,r]of Object.entries(e)){let e=this[w].find(({name:e})=>e===t);if(e){let{storage:o,propertyDescriptor:s}=e;this[E].has(t)||this[E].set(t,o.subject.value);let i=s.schema.safeParse(r);i.success?(o.subject.next(i.data),o.isSet=!0):console.error(`Failed to apply web component property override for "${t}":`,i.error)}}else{for(let[e,t]of this[E]){let r=this[w].find(({name:t})=>t===e);if(r){let{storage:e}=r;e.subject.next(t)}}this[E].clear()}},f=new o(n.subscribe(()=>{let e=n.selectors.overrides.getWebComponentProperties();e!==r&&(r=e,m(e))})),y=new o(d(this,n.actions.environment.setGodMode));this[P]=[...b,f,y],this[v]=t(this[C]),this[v].render(e(u,{runtime:n,container:this[C],children:e(D,{})}));let S=c.getPropertyValue(l.onAttached);if(S)try{S(this)}catch(e){console.error("Error in onAttached handler",e)}this.dispatchEvent(new CustomEvent("attached",{bubbles:!0}))}disconnectedCallback(){let e={};this[j]=e,queueMicrotask(()=>{this[j]===e&&(this[j]=null,this[P].forEach(e=>{e.unsubscribe()}),this[v]?.unmount(),this[v]=void 0)})}attributeChangedCallback(e,t,r){let o=N.get(e);if(!o)throw Error(`Property descriptor not found for attribute: ${e}, despite the attribute being observed`);if(null===r)return o.required?void console.error(`Cannot unset a required attribute ${e}, ignoring`):void this[S](e,o,o.defaultValue);let s=k(e,o,r);s.success&&this[S](e,o,s.data)}};return Object.entries(V).forEach(([e,t])=>{Object.defineProperty(T.prototype,e,{enumerable:!0,configurable:!1,get(){return this[g].get(t).subject.value},set(r){this[S](e,t,r)}})}),M&&(Object.defineProperty(T.prototype,"$events",{enumerable:!1,configurable:!1,get(){return this[O]}}),Object.defineProperty(T.prototype,"uuid",{enumerable:!1,configurable:!1,get(){return this[$]}})),T};
@@ -6,8 +6,8 @@ export interface ResponsiveApplicationProviderProps extends PropsWithChildren {
6
6
  * Responsive state owned outside the UI. When given, the provider measures its container into
7
7
  * it and `useResponsive()` reads from it; otherwise the provider keeps the state itself.
8
8
  *
9
- * @internal Runtime plumbing for the SDK's own configurator, which passes its runtime
10
- * `ResponsiveStateManager`. A project mounting this provider leaves it out.
9
+ * @internal Runtime plumbing for the SDK's own configurator, which passes its application
10
+ * runtime's responsive state. A project mounting this provider leaves it out.
11
11
  */
12
12
  store?: ResponsiveStateStore;
13
13
  }
@@ -1,4 +1,3 @@
1
- import type { BehaviorSubject, Observable } from 'rxjs';
2
1
  import type { CanvasPadding } from './ResponsiveProvider.js';
3
2
  /**
4
3
  * The responsive state a `ResponsiveStateStore` holds.
@@ -20,9 +19,9 @@ export interface ResponsiveStateSnapshot {
20
19
  }
21
20
  /**
22
21
  * Responsive state owned outside the UI, which `ResponsiveApplicationProvider` measures its root
23
- * container into and provides to `useResponsive()`. A mounted Phoenix application passes the
24
- * `ResponsiveStateManager` of `@salsita-ai/sdk/react`, so its lifecycle reads the same state
25
- * without the UI.
22
+ * container into and provides to `useResponsive()`. A mounted Phoenix configurator passes its
23
+ * application runtime's responsive state (`useResponsiveStore()` of `@salsita-ai/sdk/react`), so
24
+ * its lifecycle reads the same state without the UI.
26
25
  *
27
26
  * Declared here by shape rather than imported, because `ui-sdk` depends on no other SDK package.
28
27
  *
@@ -30,12 +29,15 @@ export interface ResponsiveStateSnapshot {
30
29
  * `ResponsiveApplicationProvider` leaves `store` out.
31
30
  */
32
31
  export interface ResponsiveStateStore {
33
- readonly state$: Observable<ResponsiveStateSnapshot>;
34
- readonly viewport$: BehaviorSubject<{
35
- width: number;
36
- height: number;
37
- }>;
32
+ /** Calls `onChange` after every change of the store; returns the unsubscribe. */
33
+ readonly subscribe: (onChange: () => void) => () => void;
34
+ /** The same object until a value in it changes. */
38
35
  readonly getState: () => ResponsiveStateSnapshot;
36
+ /** The container's size rounded up to whole pixels; the same object until it changes. */
37
+ readonly getViewportSize: () => {
38
+ readonly width: number;
39
+ readonly height: number;
40
+ };
39
41
  readonly setViewport: (viewport: {
40
42
  readonly width: number;
41
43
  readonly height: number;
@@ -1 +1 @@
1
- import{useTheme as e}from"@mui/material";import{useCallback as t,useLayoutEffect as i,useMemo as a,useSyncExternalStore as s}from"react";import{isMobileOnly as n}from"react-device-detect";import{useResizeObserver as o}from"usehooks-ts";export const useStoreResponsiveInfo=(r,c)=>{let{sm:d,md:p,lg:l}=e().breakpoints.values,u=s(t(e=>{let t=c.state$.subscribe(e);return()=>{t.unsubscribe()}},[c]),c.getState);i(()=>{c.setBreakpoints({sm:d,md:p,lg:l})},[c,d,p,l]);let m=t(e=>{let{width:t,height:i}=e.getBoundingClientRect();c.setViewport({width:t,height:i,isLandscape:window.matchMedia("(orientation: landscape)").matches,isPortrait:window.matchMedia("(orientation: portrait)").matches})},[c]),b=t(e=>{c.setCanvasPadding("function"==typeof e?e(c.getCanvasPadding()):e)},[c]),g=t(()=>{r.current&&m(r.current)},[r,m]);return o({ref:r,onResize:()=>{null!=r.current&&m(r.current)}}),i(()=>{null!=r.current&&m(r.current)},[r,m]),a(()=>({...u,expand:c.expand,collapse:c.collapse,hide:c.hide,show:c.show,isMobileAndMobileLandscape:u.isMobile||u.isLandscape&&u.isTablet&&n,isDesktopExceptMobileLandscape:u.isDesktop&&!(u.isLandscape&&u.isTablet&&n),viewport$:c.viewport$,getCanvasPadding:c.getCanvasPadding,setCanvasPadding:b,update:g,setAnimating:c.setAnimating}),[u,c,b,g])};
1
+ import{useTheme as e}from"@mui/material";import{useCallback as t,useLayoutEffect as i,useMemo as a,useState as n,useSyncExternalStore as s}from"react";import{isMobileOnly as r}from"react-device-detect";import{BehaviorSubject as o}from"rxjs";import{useResizeObserver as c}from"usehooks-ts";export const useStoreResponsiveInfo=(p,d)=>{let{sm:l,md:u,lg:m}=e().breakpoints.values,g=s(d.subscribe,d.getState),[b]=n(()=>new o(d.getViewportSize()));i(()=>{let e=()=>{let e=d.getViewportSize();e!==b.value&&b.next(e)};return e(),d.subscribe(e)},[d,b]),i(()=>{d.setBreakpoints({sm:l,md:u,lg:m})},[d,l,u,m]);let w=t(e=>{let{width:t,height:i}=e.getBoundingClientRect();d.setViewport({width:t,height:i,isLandscape:window.matchMedia("(orientation: landscape)").matches,isPortrait:window.matchMedia("(orientation: portrait)").matches})},[d]),f=t(e=>{d.setCanvasPadding("function"==typeof e?e(d.getCanvasPadding()):e)},[d]),h=t(()=>{p.current&&w(p.current)},[p,w]);return c({ref:p,onResize:()=>{null!=p.current&&w(p.current)}}),i(()=>{null!=p.current&&w(p.current)},[p,w]),a(()=>({...g,expand:d.expand,collapse:d.collapse,hide:d.hide,show:d.show,isMobileAndMobileLandscape:g.isMobile||g.isLandscape&&g.isTablet&&r,isDesktopExceptMobileLandscape:g.isDesktop&&!(g.isLandscape&&g.isTablet&&r),viewport$:b,getCanvasPadding:d.getCanvasPadding,setCanvasPadding:f,update:h,setAnimating:d.setAnimating}),[g,d,b,f,h])};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salsita-ai/sdk",
3
- "version": "0.50.0-develop.9440e83ee3",
3
+ "version": "0.50.0-develop.95b896fd8c",
4
4
  "description": "TypeScript SDK and CLI for building, running, and deploying Phoenix configurator applications.",
5
5
  "keywords": [
6
6
  "salsita",
@@ -308,8 +308,8 @@
308
308
  "yaml": "2.9.0",
309
309
  "yargs": "17.7.2",
310
310
  "zod": "3.25.76",
311
- "@salsita-ai/common": "0.50.0-develop.9440e83ee3",
312
- "@salsita-ai/contracts": "0.50.0-develop.9440e83ee3"
311
+ "@salsita-ai/common": "0.50.0-develop.95b896fd8c",
312
+ "@salsita-ai/contracts": "0.50.0-develop.95b896fd8c"
313
313
  },
314
314
  "devDependencies": {
315
315
  "@clerk/clerk-react": "5.61.8",
@@ -1,2 +0,0 @@
1
- export * from './component-filter.js';
2
- export * from './sdk-code-ref.js';
@@ -1,2 +0,0 @@
1
- export type * from './relation-expression-params.js';
2
- export * from './sdk-expression-implementation.js';
@@ -1,5 +0,0 @@
1
- /**
2
- * The name a project registers a layout element under to replace what the app loader overlay shows.
3
- * Its default, `DefaultAppLoaderContent`, is registered in `defaultConfiguratorElements`.
4
- */
5
- export declare const AppLoaderContentName = "AppLoaderContent";
@@ -1 +0,0 @@
1
- export const AppLoaderContentName="AppLoaderContent";
@@ -1 +0,0 @@
1
- import{createCustomPhoenixLayoutElement as o}from"#package/domain";import{ConfigurationNotFoundPageName as t}from"./ConfigurationNotFoundPageElement.js";export const createConfigurationNotFoundPage=n=>o(t,n);
@@ -1,2 +0,0 @@
1
- import type { PropsWithChildren } from 'react';
2
- export declare const ConfiguratorDataProvider: ({ children }: PropsWithChildren) => import("react/jsx-runtime").JSX.Element;
@@ -1 +0,0 @@
1
- import{jsx as r}from"react/jsx-runtime";import{BackendDataProvider as e,FrontendDataProvider as i,PublishedDataProvider as c}from"#package/react-sdk";import{OnBackendDataReadyProvider as o,OnFrontendDataReadyProvider as t,OnPublishedDataReadyProvider as d}from"./LifecycleProviders.js";export const ConfiguratorDataProvider=({children:n})=>r(c,{children:r(d,{children:r(i,{children:r(t,{children:r(e,{children:r(o,{children:n})})})})})});
@@ -1 +0,0 @@
1
- import{jsx as r}from"react/jsx-runtime";import{useEffect as t}from"react";import{useRecipeEmbeddedState as e,useSelectEntity as o}from"#package/react-sdk";export const IntegrationSubscription=i=>{let{children:c}=i,a=e()?.rootRecipeId,m=o();return t(()=>{a&&m(a)},[a,m]),r("div",{children:c})};
@@ -1 +0,0 @@
1
- import{jsx as e,Fragment as r}from"react/jsx-runtime";import{createCustomPhoenixLayoutElement as t}from"#package/domain";import{PhoenixLayoutElement as o}from"#package/react-sdk";let n={},a="OnConfiguratorReadyProvider";export const createOnConfiguratorReadyProvider=e=>t(a,e);export const OnConfiguratorReadyProvider=({children:t})=>e(o,{name:a,elementProps:n,defaultSlot:r,children:t});let d="OnSessionReadyProvider";export const createOnSessionReadyProvider=e=>t(d,e);export const OnSessionReadyProvider=({children:t})=>e(o,{name:d,elementProps:n,defaultSlot:r,children:t});let i="OnPublishedDataReadyProvider";export const createOnPublishedDataReadyProvider=e=>t(i,e);export const OnPublishedDataReadyProvider=({children:t})=>e(o,{name:i,elementProps:n,defaultSlot:r,children:t});let l="OnApplicationStartProvider";export const createOnApplicationStartProvider=e=>t(l,e);export const OnApplicationStartProvider=({children:t})=>e(o,{name:l,elementProps:n,defaultSlot:r,children:t});let c="OnRoutingReadyProvider";export const createOnRoutingReadyProvider=e=>t(c,e);export const OnRoutingReadyProvider=({children:t})=>e(o,{name:c,elementProps:n,defaultSlot:r,children:t});let s="OnFrontendDataReadyProvider";export const createOnFrontendDataReadyProvider=e=>t(s,e);export const OnFrontendDataReadyProvider=({children:t})=>e(o,{name:s,elementProps:n,defaultSlot:r,children:t});let p="OnBackendDataReadyProvider";export const createOnBackendDataReadyProvider=e=>t(p,e);export const OnBackendDataReadyProvider=({children:t})=>e(o,{name:p,elementProps:n,defaultSlot:r,children:t});
@@ -1 +0,0 @@
1
- import{createSystemPhoenixAsyncHandler as e}from"#package/domain";import{useSystemPhoenixAsyncHandler as r}from"#package/react-sdk";let a="OnPresetLoadedHandler";export const createOnPresetLoadedHandler=r=>e(a,r);export const useOnPresetLoadedHandler=()=>r(a)?.handler;
@@ -1 +0,0 @@
1
- export declare const useChatEnabled: () => boolean;
@@ -1 +0,0 @@
1
- import{useMemo as t}from"react";import{applicationConfigComponent as e}from"#package/domain";import{useComponents as a,useLogger as o}from"#package/react-sdk";export const useChatEnabled=()=>{let n=o(),r=a({componentTypes:[e]});return t(()=>(r.length>1&&n.warn("Multiple application configs found, using the first one!",{applicationConfigs:r}),r[0]?.state.chatEnabled??!0),[r,n])};
@@ -1 +0,0 @@
1
- import{jsx as r,Fragment as t}from"react/jsx-runtime";import{useCallback as e,useEffect as o,useLayoutEffect as n,useState as i}from"react";import{standardWebComponentEvents as a,standardWebComponentProperties as u}from"#package/domain";import{ApplicationRoutes as g,INTEGRATION_MODE_SETTINGS as s,setConfigurationIdQuery as d,useDispatchWebComponentEvent as m,useRoutingSelectors as c,useRoutingService as l,useWebComponentProperty$ as f,useWebComponentPropertyValue as p}from"#package/react-sdk";import{useOnGoToIndexHandler as x}from"./OnGoToIndexHandler.js";export const useConfiguratorRouting=()=>l();export const ConfiguratorRoutingProvider=T=>{let{children:b}=T,v=l(),C=c(),j=x(),k=p(u.integrationMode),I=f(u.route),O=m(a.navigated),R=e(r=>{I.next(r),s[k].writeCidToUrl&&(r.route===g.Configuration?d(r.configurationId):d(null)),O(r)},[O,k,I]),[h,G]=i(!1),w=j?.handler;return(o(()=>{if(w)return v.registerOnGoToIndex(w)},[v,w]),o(()=>v.registerOnNavigated(R),[v,R]),n(()=>{v.routeTo(I.value),G(!0)},[v,I,k]),o(()=>{let r=I.subscribe(r=>{C.getRoutingState()!==r&&v.routeTo(r)});return()=>{r.unsubscribe()}},[v,C,I]),h)?r(t,{children:b}):null};
@@ -1 +0,0 @@
1
- import{createSystemPhoenixHandler as o}from"#package/domain";import{useSystemPhoenixHandler as e}from"#package/react-sdk";let n="OnGoToIndex";export const createOnGoToIndexHandler=e=>o(n,e);export const useOnGoToIndexHandler=()=>e(n);