@salsita-ai/sdk 0.50.0-develop.85e8f9df39 → 0.50.0-develop.8876e19a19

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 (962) 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 +17 -1
  25. package/dist/application-spec/errors/diagnostic-codes.js +1 -1
  26. package/dist/application-spec/errors/diagnostic-messages.d.ts +25 -2
  27. package/dist/application-spec/errors/diagnostic-messages.js +1 -1
  28. package/dist/application-spec/generate-application/code/domain-runtime-files.js +1 -1
  29. package/dist/application-spec/generate-application/code/project-scaffolding.js +2 -2
  30. package/dist/application-spec/generate-application/code/templates/application-types.js +6 -6
  31. package/dist/application-spec/generate-application/code/templates/common/doc-comment.d.ts +2 -0
  32. package/dist/application-spec/generate-application/code/templates/common/doc-comment.js +1 -0
  33. package/dist/application-spec/generate-application/code/templates/configurator-globals.d.ts +2 -1
  34. package/dist/application-spec/generate-application/code/templates/configurator-globals.js +19 -6
  35. package/dist/application-spec/generate-application/code/templates/global-definition/generate-action-types.js +7 -7
  36. package/dist/application-spec/generate-application/code/templates/global-definition/generate-assistant-form-element-types.d.ts +12 -0
  37. package/dist/application-spec/generate-application/code/templates/global-definition/generate-assistant-form-element-types.js +7 -0
  38. package/dist/application-spec/generate-application/code/templates/global-definition/generate-phx-types.js +24 -22
  39. package/dist/application-spec/generate-application/code/templates/global-definition/index.d.ts +1 -0
  40. package/dist/application-spec/generate-application/code/templates/global-definition/index.js +1 -1
  41. package/dist/application-spec/generate-application/code/templates/index.d.ts +2 -6
  42. package/dist/application-spec/generate-application/code/templates/index.js +1 -1
  43. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill-bundle.d.ts +10 -0
  44. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill-bundle.js +7 -0
  45. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill.js +1 -1
  46. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.d.ts +14 -7
  47. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.js +2 -2
  48. package/dist/application-spec/generate-application/implementations/phx-application-types.d.ts +25 -0
  49. package/dist/application-spec/generate-application/implementations/phx-application-types.js +1 -0
  50. package/dist/application-spec/generate-application/implementations/phx-domain.d.ts +36 -0
  51. package/dist/application-spec/generate-application/implementations/phx-domain.js +1 -0
  52. package/dist/application-spec/generate-application/implementations/phx-model.d.ts +24 -0
  53. package/dist/application-spec/generate-application/implementations/phx-model.js +1 -0
  54. package/dist/application-spec/generate-application/implementations/phx.d.ts +22 -0
  55. package/dist/application-spec/generate-application/implementations/phx.js +1 -0
  56. package/dist/application-spec/generate-application/index.d.ts +2 -0
  57. package/dist/application-spec/generate-application/index.js +1 -1
  58. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-model-runtime.d.ts +3 -4
  59. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.d.ts +7 -4
  60. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-runtime.js +1 -1
  61. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-spec-runtime.d.ts +16 -0
  62. package/dist/application-spec/generate-application/runtime/admin-runtime/admin-spec-runtime.js +1 -0
  63. package/dist/application-spec/generate-application/runtime/application-runtime.d.ts +17 -4
  64. package/dist/application-spec/generate-application/runtime/application-runtime.js +1 -1
  65. package/dist/application-spec/generate-application/runtime/application-spec-slice.d.ts +71 -0
  66. package/dist/application-spec/generate-application/runtime/application-spec-slice.js +1 -0
  67. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-model-runtime.d.ts +3 -4
  68. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.d.ts +7 -5
  69. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.js +1 -1
  70. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-spec-runtime.d.ts +16 -0
  71. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-spec-runtime.js +1 -0
  72. package/dist/application-spec/generate-application/runtime/create-application.d.ts +57 -0
  73. package/dist/application-spec/generate-application/runtime/create-application.js +1 -0
  74. package/dist/application-spec/generate-application/runtime/factory-data/factory-data-runtime.d.ts +1 -2
  75. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.d.ts +1 -1
  76. package/dist/application-spec/generate-application/runtime/factory-data/recipe-defaults.js +1 -1
  77. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.d.ts +1 -2
  78. package/dist/application-spec/generate-application/runtime/factory-data/static-violations.js +1 -1
  79. package/dist/application-spec/generate-application/runtime/generate-runtime-instance.d.ts +1 -1
  80. package/dist/application-spec/generate-application/runtime/generate-runtime-instance.js +1 -1
  81. package/dist/application-spec/generate-application/runtime/index.d.ts +8 -0
  82. package/dist/application-spec/generate-application/runtime/index.js +1 -0
  83. package/dist/application-spec/generate-application/runtime/sections/actions-runtime.d.ts +1 -2
  84. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.d.ts +1 -1
  85. package/dist/application-spec/generate-application/runtime/sections/build-sdk-optic.js +1 -1
  86. package/dist/application-spec/generate-application/runtime/sections/build-user-bound-optic.d.ts +1 -1
  87. package/dist/application-spec/generate-application/runtime/sections/component-optic.d.ts +1 -2
  88. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.d.ts +9 -4
  89. package/dist/application-spec/generate-application/runtime/sections/expression-runtime.js +1 -1
  90. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.d.ts +1 -2
  91. package/dist/application-spec/generate-application/runtime/sections/generate-memo-eval-plan-runtime.js +1 -1
  92. package/dist/application-spec/generate-application/runtime/sections/preset-runtime.d.ts +2 -3
  93. package/dist/application-spec/generate-application/runtime/sections/reflection-constants-runtime.d.ts +1 -1
  94. package/dist/application-spec/generate-application/runtime/spec-code/resolve-spec-code.d.ts +1 -1
  95. package/dist/application-spec/generate-application/runtime/spec-runtime.d.ts +21 -0
  96. package/dist/application-spec/generate-application/runtime/spec-runtime.js +1 -0
  97. package/dist/application-spec/generate-application/runtime-spec/encoded-runtime-spec.d.ts +3 -2
  98. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.d.ts +124 -24
  99. package/dist/application-spec/generate-application/runtime-spec/runtime-spec.js +1 -1
  100. package/dist/application-spec/generate-application/runtime-spec/spec-code-id.d.ts +1 -1
  101. package/dist/application-spec/parse-application-files/merge/merged-assistant.d.ts +13 -4
  102. package/dist/application-spec/parse-application-files/merge/merged-assistant.js +1 -1
  103. package/dist/application-spec/parse-application-files/merge/merged-infra.d.ts +4 -11
  104. package/dist/application-spec/parse-application-files/merge/merged-transformers.d.ts +2 -4
  105. package/dist/application-spec/parse-application-files/parse-application-files.js +1 -1
  106. package/dist/application-spec/parse-application-files/raw-spec/raw-acl.d.ts +2 -2
  107. package/dist/application-spec/parse-application-files/raw-spec/raw-acl.js +1 -1
  108. package/dist/application-spec/parse-application-files/raw-spec/raw-admin-pages.d.ts +3 -24
  109. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.d.ts +58 -23
  110. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.js +1 -1
  111. package/dist/application-spec/parse-application-files/raw-spec/raw-expressions.d.ts +1 -1
  112. package/dist/application-spec/parse-application-files/raw-spec/raw-expressions.js +1 -1
  113. package/dist/application-spec/parse-application-files/raw-spec/raw-resources.d.ts +19 -64
  114. package/dist/application-spec/parse-application-files/spec/application/admin-spec/admin-pages.d.ts +3 -20
  115. package/dist/application-spec/parse-application-files/spec/application/admin-spec/states.d.ts +3 -5
  116. package/dist/application-spec/parse-application-files/spec/application/configurator-spec/states.d.ts +3 -8
  117. package/dist/application-spec/parse-application-files/spec/components/bindings/read-binding.d.ts +3 -13
  118. package/dist/application-spec/parse-application-files/spec/components/bindings/write-binding.d.ts +4 -32
  119. package/dist/application-spec/parse-application-files/spec/components/component-filter.d.ts +4 -10
  120. package/dist/application-spec/parse-application-files/spec/components/components.d.ts +3 -4
  121. package/dist/application-spec/parse-application-files/spec/components/index.d.ts +1 -2
  122. package/dist/application-spec/parse-application-files/spec/components/index.js +1 -1
  123. package/dist/application-spec/parse-application-files/spec/components/sdk-component-entry.d.ts +1 -1
  124. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.d.ts +2 -3
  125. package/dist/application-spec/parse-application-files/spec/components/user-component-entry.js +1 -1
  126. package/dist/application-spec/parse-application-files/spec/components/user-components.d.ts +2 -3
  127. package/dist/application-spec/parse-application-files/spec/expressions/expression-read-types.d.ts +2 -2
  128. package/dist/application-spec/parse-application-files/spec/expressions/expressions.d.ts +7 -29
  129. package/dist/application-spec/parse-application-files/spec/expressions/index.d.ts +0 -1
  130. package/dist/application-spec/parse-application-files/spec/expressions/memo-eval-plan.d.ts +4 -71
  131. package/dist/application-spec/parse-application-files/spec/expressions/memo-eval-plan.js +1 -1
  132. package/dist/application-spec/parse-application-files/spec/expressions/user-expressions.d.ts +2 -2
  133. package/dist/application-spec/parse-application-files/spec/invariants/invariant.d.ts +5 -21
  134. package/dist/application-spec/parse-application-files/spec/invariants/invariants.d.ts +4 -14
  135. package/dist/application-spec/parse-application-files/spec/model/aliases.d.ts +3 -9
  136. package/dist/application-spec/parse-application-files/spec/model/common-types.d.ts +6 -14
  137. package/dist/application-spec/parse-application-files/spec/model/defaults.d.ts +6 -31
  138. package/dist/application-spec/parse-application-files/spec/model/entity-types.d.ts +3 -8
  139. package/dist/application-spec/parse-application-files/spec/model/model-version-key.d.ts +3 -3
  140. package/dist/application-spec/parse-application-files/spec/model/names/action-name.d.ts +3 -7
  141. package/dist/application-spec/parse-application-files/spec/model/names/alias-name.d.ts +3 -7
  142. package/dist/application-spec/parse-application-files/spec/model/names/entity-or-alias-name.d.ts +3 -8
  143. package/dist/application-spec/parse-application-files/spec/model/names/entity-type-name.d.ts +3 -8
  144. package/dist/application-spec/parse-application-files/spec/model/names/expression-name.d.ts +3 -6
  145. package/dist/application-spec/parse-application-files/spec/model/names/instance-name.d.ts +3 -7
  146. package/dist/application-spec/parse-application-files/spec/model/names/invariant-name.d.ts +3 -3
  147. package/dist/application-spec/parse-application-files/spec/model/names/shape-property-name.d.ts +3 -11
  148. package/dist/application-spec/parse-application-files/spec/model/names/violation-type-name.d.ts +3 -3
  149. package/dist/application-spec/parse-application-files/spec/model/presets.d.ts +6 -29
  150. package/dist/application-spec/parse-application-files/spec/sections/actions.d.ts +6 -23
  151. package/dist/application-spec/parse-application-files/spec/sections/app-metadata.d.ts +3 -18
  152. package/dist/application-spec/parse-application-files/spec/sections/application-version.d.ts +3 -7
  153. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-form-elements.d.ts +9 -0
  154. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-form-elements.js +1 -0
  155. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.d.ts +4 -1
  156. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.js +1 -1
  157. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant.js +1 -1
  158. package/dist/application-spec/parse-application-files/spec/sections/data-spec/chunks.d.ts +6 -23
  159. package/dist/application-spec/parse-application-files/spec/sections/data-spec/custom-data-spec.d.ts +1 -16
  160. package/dist/application-spec/parse-application-files/spec/sections/data-spec/data-entry-key.d.ts +3 -9
  161. package/dist/application-spec/parse-application-files/spec/sections/data-spec/data-spec.d.ts +1 -10
  162. package/dist/application-spec/parse-application-files/spec/sections/data-spec/swatch-data-spec.d.ts +1 -14
  163. package/dist/application-spec/parse-application-files/spec/sections/state-value.d.ts +3 -7
  164. package/dist/application-spec/parse-application-files/spec/sections/theme.d.ts +3 -10
  165. package/dist/application-spec/parse-application-files/spec/sections/transformers.d.ts +4 -11
  166. package/dist/application-spec/parse-application-files/spec/sections/ui.d.ts +3 -12
  167. package/dist/client/authorized-client.d.ts +3 -1
  168. package/dist/client/authorized-client.js +1 -1
  169. package/dist/client/contract.d.ts +17 -0
  170. package/dist/client/index.d.ts +1 -1
  171. package/dist/client/local-authorized-client.d.ts +3 -1
  172. package/dist/client/local-authorized-client.js +1 -1
  173. package/dist/client/memory-authorized-client.d.ts +4 -1
  174. package/dist/client/memory-authorized-client.js +1 -1
  175. package/dist/client/phoenix-api.d.ts +228 -0
  176. package/dist/configurator/ConfiguratorApp.js +1 -1
  177. package/dist/configurator/app-loader-content/DefaultAppLoaderContent.d.ts +2 -0
  178. package/dist/configurator/app-loader-content/DefaultAppLoaderContent.js +5 -0
  179. package/dist/configurator/app-loader-content/index.d.ts +1 -0
  180. package/dist/configurator/app-loader-content/index.js +1 -0
  181. package/dist/configurator/application-runtime/extensions/selectors.js +1 -1
  182. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.d.ts +17 -3
  183. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.js +1 -1
  184. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.d.ts +52 -9
  185. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.js +1 -1
  186. package/dist/configurator/application-runtime/extensions/systems/canvas-system.d.ts +8 -0
  187. package/dist/configurator/application-runtime/extensions/systems/canvas-system.js +1 -1
  188. package/dist/configurator/application-runtime/extensions/systems/export-system/export-busy-error.d.ts +8 -0
  189. package/dist/configurator/application-runtime/extensions/systems/export-system/export-busy-error.js +1 -0
  190. package/dist/configurator/application-runtime/extensions/systems/export-system/export-system.d.ts +23 -1
  191. package/dist/configurator/application-runtime/extensions/systems/export-system/export-system.js +1 -1
  192. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.d.ts +82 -55
  193. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.js +1 -1
  194. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.d.ts +66 -4
  195. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.js +1 -1
  196. package/dist/configurator/application-runtime/extensions/systems/graphql-system/violations.d.ts +40 -0
  197. package/dist/configurator/application-runtime/extensions/systems/graphql-system/violations.js +1 -0
  198. package/dist/configurator/application-runtime/extensions/systems/image-rendering-system/image-rendering-system.d.ts +14 -5
  199. package/dist/configurator/application-runtime/extensions/systems/image-rendering-system/image-rendering-system.js +1 -1
  200. package/dist/configurator/application-runtime/extensions/systems/index.d.ts +1 -1
  201. package/dist/configurator/common/configurator-interface.d.ts +101 -5
  202. package/dist/configurator/common/configurator-interface.js +1 -1
  203. package/dist/configurator/configuration-not-found-page/BuiltInConfigurationNotFoundPage.d.ts +5 -0
  204. package/dist/configurator/configuration-not-found-page/BuiltInConfigurationNotFoundPage.js +1 -0
  205. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.d.ts +0 -6
  206. package/dist/configurator/configuration-not-found-page/ConfigurationNotFoundPageElement.js +1 -1
  207. package/dist/configurator/configuration-not-found-page/index.d.ts +2 -1
  208. package/dist/configurator/configuration-not-found-page/index.js +1 -1
  209. package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.d.ts +3 -3
  210. package/dist/configurator/configurator-context/ConfiguratorResponsiveProvider.js +1 -1
  211. package/dist/configurator/configurator-context/PresetSelectionProvider.js +1 -1
  212. package/dist/configurator/configurator-context/PreviewContextProvider.js +1 -1
  213. package/dist/configurator/configurator-context/configurator-hooks/index.d.ts +0 -1
  214. package/dist/configurator/configurator-context/configurator-hooks/index.js +1 -1
  215. package/dist/configurator/configurator-context/configurator-hooks/layout-hooks.d.ts +4 -0
  216. package/dist/configurator/configurator-context/index.d.ts +0 -4
  217. package/dist/configurator/configurator-context/index.js +1 -1
  218. package/dist/configurator/configurator-error-page/BuiltInConfiguratorErrorPage.d.ts +6 -0
  219. package/dist/configurator/configurator-error-page/BuiltInConfiguratorErrorPage.js +1 -0
  220. package/dist/configurator/configurator-error-page/ConfiguratorErrorPageElement.d.ts +7 -0
  221. package/dist/configurator/configurator-error-page/ConfiguratorErrorPageElement.js +1 -0
  222. package/dist/configurator/configurator-error-page/index.d.ts +2 -0
  223. package/dist/configurator/configurator-error-page/index.js +1 -0
  224. package/dist/configurator/index.d.ts +10 -0
  225. package/dist/configurator/index.js +1 -1
  226. package/dist/configurator/pages/ConfiguratorErrorPage.d.ts +0 -1
  227. package/dist/configurator/pages/ConfiguratorErrorPage.js +1 -1
  228. package/dist/configurator/pages/ConfiguratorNotFoundPage.js +1 -1
  229. package/dist/configurator/pages/LoadedConfiguratorDetailPage.js +1 -1
  230. package/dist/configurator/pages/PresetCreationErrorPage.d.ts +1 -1
  231. package/dist/configurator/pages/PresetCreationErrorPage.js +1 -1
  232. package/dist/configurator/pages/default-configurator-elements.d.ts +4 -2
  233. package/dist/configurator/pages/default-configurator-elements.js +1 -1
  234. package/dist/configurator/pages/default-elements/index.d.ts +1 -0
  235. package/dist/configurator/pages/default-elements/index.js +1 -1
  236. package/dist/configurator/pages/default-elements/scene-controls/BuiltInAddEntityFab.d.ts +3 -0
  237. package/dist/configurator/pages/default-elements/scene-controls/BuiltInAddEntityFab.js +1 -0
  238. package/dist/configurator/pages/default-elements/scene-controls/BuiltInDeleteEntityFab.d.ts +3 -0
  239. package/dist/configurator/pages/default-elements/scene-controls/BuiltInDeleteEntityFab.js +1 -0
  240. package/dist/configurator/pages/default-elements/scene-controls/BuiltInNavigationHotspot.d.ts +3 -0
  241. package/dist/configurator/pages/default-elements/scene-controls/BuiltInNavigationHotspot.js +1 -0
  242. package/dist/configurator/pages/default-elements/scene-controls/BuiltInSelectionHotspot.d.ts +3 -0
  243. package/dist/configurator/pages/default-elements/scene-controls/BuiltInSelectionHotspot.js +1 -0
  244. package/dist/configurator/pages/default-elements/scene-controls/BuiltInToolMenuFab.d.ts +3 -0
  245. package/dist/configurator/pages/default-elements/scene-controls/BuiltInToolMenuFab.js +1 -0
  246. package/dist/configurator/pages/default-elements/scene-controls/index.d.ts +6 -0
  247. package/dist/configurator/pages/default-elements/scene-controls/index.js +1 -0
  248. package/dist/configurator/pages/default-elements/scene-controls/scene-control-elements.d.ts +6 -0
  249. package/dist/configurator/pages/default-elements/scene-controls/scene-control-elements.js +1 -0
  250. package/dist/configurator/pages/error-boundaries/DevContextFallback.js +1 -1
  251. package/dist/configurator/pages/error-boundaries/DevLoadingFallback.js +1 -1
  252. package/dist/configurator/pages/error-boundaries/GeneralErrorBoundary.js +1 -1
  253. package/dist/configurator/pages/error-boundaries/LoadingErrorBoundary.js +1 -1
  254. package/dist/configurator/scene/index.d.ts +1 -0
  255. package/dist/configurator/scene/index.js +1 -1
  256. package/dist/configurator/scene/scene-controls/ToolFab.d.ts +4 -0
  257. package/dist/configurator/scene/scene-controls/ToolFab.js +1 -1
  258. package/dist/configurator/scene/scene-controls/use-scene-control-tooltip.d.ts +2 -1
  259. package/dist/configurator/scene/scene-entity/scene-controls/SceneEntityHtmlHotspots.js +1 -1
  260. package/dist/configurator/toolbar-actions/index.d.ts +3 -0
  261. package/dist/configurator/toolbar-actions/index.js +1 -0
  262. package/dist/configurator/toolbar-actions/use-assistant-panel.d.ts +18 -0
  263. package/dist/configurator/toolbar-actions/use-assistant-panel.js +1 -0
  264. package/dist/configurator/toolbar-actions/use-measurements.d.ts +35 -0
  265. package/dist/configurator/toolbar-actions/use-measurements.js +1 -0
  266. package/dist/configurator/toolbar-actions/use-toolbar-actions.d.ts +100 -0
  267. package/dist/configurator/toolbar-actions/use-toolbar-actions.js +1 -0
  268. package/dist/configurator/toolbar-actions/use-toolbar-help.d.ts +7 -0
  269. package/dist/configurator/toolbar-actions/use-toolbar-help.js +1 -0
  270. package/dist/configurator/ui/assistant/AssistantChips.d.ts +3 -2
  271. package/dist/configurator/ui/assistant/AssistantChips.js +1 -1
  272. package/dist/configurator/ui/assistant/AssistantMarkdown.d.ts +1 -1
  273. package/dist/configurator/ui/assistant/AssistantMarkdown.js +1 -1
  274. package/dist/configurator/ui/assistant/alert/AssistantAlert.d.ts +8 -0
  275. package/dist/configurator/ui/assistant/alert/AssistantAlert.js +1 -0
  276. package/dist/configurator/ui/assistant/alert/index.d.ts +2 -0
  277. package/dist/configurator/ui/assistant/alert/index.js +1 -0
  278. package/dist/configurator/ui/assistant/alert/remark-alerts.d.ts +10 -0
  279. package/dist/configurator/ui/assistant/alert/remark-alerts.js +1 -0
  280. package/dist/configurator/ui/assistant/form/AssistantForm.js +1 -1
  281. package/dist/configurator/ui/assistant/form/compose-answer.d.ts +1 -1
  282. package/dist/configurator/ui/assistant/form/compose-answer.js +1 -1
  283. package/dist/configurator/ui/assistant/form/form-model.d.ts +3 -4
  284. package/dist/configurator/ui/assistant/form/form-state.d.ts +1 -1
  285. package/dist/configurator/ui/assistant/form/index.d.ts +2 -0
  286. package/dist/configurator/ui/assistant/form/index.js +1 -1
  287. package/dist/configurator/ui/assistant/form/parse-form-block.d.ts +3 -2
  288. package/dist/configurator/ui/assistant/form/parse-form-block.js +1 -1
  289. package/dist/configurator/ui/assistant/form/read-form-attributes.d.ts +1 -1
  290. package/dist/configurator/ui/assistant/form/read-form-attributes.js +1 -1
  291. package/dist/configurator/ui/assistant/form/registry/built-in-form-elements.d.ts +3 -0
  292. package/dist/configurator/ui/assistant/form/registry/built-in-form-elements.js +1 -0
  293. package/dist/configurator/ui/assistant/form/registry/create-assistant-form-element.d.ts +31 -0
  294. package/dist/configurator/ui/assistant/form/registry/create-assistant-form-element.js +1 -0
  295. package/dist/configurator/ui/assistant/form/{form-element-definition.d.ts → registry/form-element-definition.d.ts} +3 -1
  296. package/dist/configurator/ui/assistant/form/registry/form-element-definition.js +1 -0
  297. package/dist/configurator/ui/assistant/form/{form-registry.d.ts → registry/form-registry.d.ts} +2 -2
  298. package/dist/configurator/ui/assistant/form/registry/form-registry.js +1 -0
  299. package/dist/configurator/ui/assistant/form/registry/index.d.ts +6 -0
  300. package/dist/configurator/ui/assistant/form/registry/index.js +1 -0
  301. package/dist/configurator/ui/assistant/form/registry/use-form-registry.d.ts +8 -0
  302. package/dist/configurator/ui/assistant/form/registry/use-form-registry.js +1 -0
  303. package/dist/configurator/ui/assistant/form-elements/FormCard.d.ts +9 -0
  304. package/dist/configurator/ui/assistant/form-elements/FormCard.js +1 -0
  305. package/dist/configurator/ui/assistant/form-elements/FormConfirm.d.ts +9 -0
  306. package/dist/configurator/ui/assistant/form-elements/FormConfirm.js +1 -0
  307. package/dist/configurator/ui/assistant/form-elements/FormGroup.d.ts +4 -1
  308. package/dist/configurator/ui/assistant/form-elements/FormNumber.d.ts +9 -0
  309. package/dist/configurator/ui/assistant/form-elements/FormNumber.js +1 -0
  310. package/dist/configurator/ui/assistant/form-elements/FormOptions.d.ts +4 -1
  311. package/dist/configurator/ui/assistant/form-elements/FormReply.d.ts +4 -1
  312. package/dist/configurator/ui/assistant/form-elements/FormReply.js +1 -1
  313. package/dist/configurator/ui/assistant/form-elements/FormSwatch.d.ts +10 -0
  314. package/dist/configurator/ui/assistant/form-elements/FormSwatch.js +1 -0
  315. package/dist/configurator/ui/assistant/form-elements/FormText.d.ts +4 -1
  316. package/dist/configurator/ui/assistant/form-elements/FormText.js +1 -1
  317. package/dist/configurator/ui/assistant/form-elements/clamp-form-number.d.ts +10 -0
  318. package/dist/configurator/ui/assistant/form-elements/clamp-form-number.js +1 -0
  319. package/dist/configurator/ui/assistant/form-elements/form-element-props.d.ts +20 -16
  320. package/dist/configurator/ui/assistant/form-elements/index.d.ts +4 -0
  321. package/dist/configurator/ui/assistant/form-elements/index.js +1 -1
  322. package/dist/configurator/ui/assistant/index.d.ts +3 -0
  323. package/dist/configurator/ui/assistant/index.js +1 -1
  324. package/dist/configurator/ui/assistant/resource-image/index.d.ts +1 -1
  325. package/dist/configurator/ui/assistant/resource-image/index.js +1 -1
  326. package/dist/configurator/ui/assistant/resource-image/resource-path.d.ts +0 -9
  327. package/dist/configurator/ui/assistant/resource-image/resource-path.js +1 -1
  328. package/dist/configurator/ui/assistant/screenshots/ScreenshotThumbnails.d.ts +9 -0
  329. package/dist/configurator/ui/assistant/screenshots/ScreenshotThumbnails.js +1 -0
  330. package/dist/configurator/ui/assistant/screenshots/index.d.ts +2 -0
  331. package/dist/configurator/ui/assistant/screenshots/index.js +1 -0
  332. package/dist/configurator/ui/assistant/screenshots/tool-screenshots.d.ts +22 -0
  333. package/dist/configurator/ui/assistant/screenshots/tool-screenshots.js +1 -0
  334. package/dist/configurator/ui/assistant/screenshots/use-screenshot-src.d.ts +8 -0
  335. package/dist/configurator/ui/assistant/screenshots/use-screenshot-src.js +1 -0
  336. package/dist/configurator/ui/assistant/streamed-markdown.d.ts +2 -2
  337. package/dist/configurator/ui/assistant/streamed-markdown.js +2 -2
  338. package/dist/configurator/ui/assistant/tool-chip.d.ts +19 -9
  339. package/dist/configurator/ui/assistant/tool-chip.js +1 -1
  340. package/dist/configurator/ui/configurator-layout/slots/canvas/GPUAccelerationDisabled.js +1 -1
  341. package/dist/configurator/ui/configurator-layout/slots/canvas/LayoutCanvas.js +1 -1
  342. package/dist/configurator/ui/configurator-layout/slots/canvas/SharedCanvas.js +1 -1
  343. package/dist/configurator/ui/configurator-layout/slots/canvas/WebGLNotSupported.js +1 -1
  344. package/dist/configurator/ui/configurator-layout/slots/readonly-banner/CloneToEditDialog.js +1 -1
  345. package/dist/configurator/ui/configurator-layout/universal/ExportingOverlay.d.ts +5 -0
  346. package/dist/configurator/ui/configurator-layout/universal/ExportingOverlay.js +1 -0
  347. package/dist/configurator/ui/configurator-layout/universal/Layout.js +1 -1
  348. package/dist/configurator/ui/configurator-layout/universal/use-layout-scene-safe-area.js +1 -1
  349. package/dist/configurator/ui/index.d.ts +1 -0
  350. package/dist/configurator/ui/index.js +1 -1
  351. package/dist/configurator/ui/legacy/chat/MobileChat.js +1 -1
  352. package/dist/configurator/ui/legacy/layout/common/CommonTopNavigation.js +1 -1
  353. package/dist/configurator/ui/legacy/layout/common/ReactiveInterfaceLayout.js +1 -1
  354. package/dist/configurator/ui/legacy/layout/simple/SimpleSidebar.js +1 -1
  355. package/dist/configurator/ui/legacy/layout/simple/SimpleTopNavigation.js +1 -1
  356. package/dist/configurator/ui/legacy/layout/steps/StepsNavigation.js +1 -1
  357. package/dist/configurator/ui/legacy/layout/steps/StepsOwnerLayout.js +1 -1
  358. package/dist/configurator/ui/legacy/layout/steps/StepsSideBar.js +1 -1
  359. package/dist/configurator/ui/legacy/layout/tabs/TabsSidebar.js +1 -1
  360. package/dist/configurator/ui/phoenix-layout-elements/AppLoader.d.ts +0 -7
  361. package/dist/configurator/ui/phoenix-layout-elements/AppLoader.js +2 -6
  362. package/dist/configurator/ui/phoenix-layout-elements/AssistantToolbarButton.js +1 -1
  363. package/dist/configurator/ui/phoenix-layout-elements/LanguageMenuAction.js +1 -1
  364. package/dist/configurator/ui/phoenix-layout-elements/LanguageToolbarButton.js +1 -1
  365. package/dist/configurator/ui/phoenix-layout-elements/MeasurementsMenuAction.js +1 -1
  366. package/dist/configurator/ui/phoenix-layout-elements/MeasurementsToolbarButton.js +1 -1
  367. package/dist/configurator/ui/phoenix-layout-elements/ShareToolbarButton.js +1 -1
  368. package/dist/configurator/ui/phoenix-layout-elements/header/common/back-button/use-go-back-action.js +1 -1
  369. package/dist/configurator/ui/phoenix-layout-elements/header/common/step-navigation/StepsNavigation.js +1 -1
  370. package/dist/configurator/ui/phoenix-layout-elements/index.d.ts +8 -1
  371. package/dist/configurator/ui/phoenix-layout-elements/index.js +1 -1
  372. package/dist/configurator/ui/phoenix-layout-elements/measurements/DimensionUnitSelector.js +1 -1
  373. package/dist/configurator/ui/phoenix-layout-elements/measurements/MeasurementsIndicatorsSwitch.js +1 -1
  374. package/dist/configurator/ui/phoenix-layout-elements/share/ShareModal.js +1 -1
  375. package/dist/configurator/ui/phoenix-layout-elements/share/use-share.d.ts +7 -8
  376. package/dist/configurator/ui/phoenix-layout-elements/share/use-share.js +1 -1
  377. package/dist/configurator/ui/phoenix-layout-elements/sidebar-footer/common/PreviousStepButton.js +1 -1
  378. package/dist/configurator/ui/preset-layout/PresetUi.d.ts +0 -2
  379. package/dist/configurator/ui/preset-layout/PresetUi.js +1 -1
  380. package/dist/configurator/ui/preset-layout/index.d.ts +6 -1
  381. package/dist/configurator/ui/preset-layout/index.js +1 -1
  382. package/dist/configurator/ui/save-message-snackbars/SaveMessageSnackbars.js +1 -1
  383. package/dist/docs/3d-scene/cameras/custom.mdx +4 -2
  384. package/dist/docs/complex-use-cases/focus-mode.mdx +2 -0
  385. package/dist/docs/drag-and-drop/room-planner.mdx +1 -1
  386. package/dist/docs/fabs/basic.mdx +4 -0
  387. package/dist/docs/index.json +95 -1
  388. package/dist/docs/integrations/webcomponent-api/basics.mdx +2 -0
  389. package/dist/docs/layouts/custom-layout.mdx +321 -159
  390. package/dist/docs/layouts/gallery/ardent-compressor.mdx +3516 -0
  391. package/dist/docs/layouts/gallery/corvid-drone.mdx +3428 -0
  392. package/dist/docs/layouts/gallery/fenwick-window.mdx +2803 -0
  393. package/dist/docs/layouts/gallery/ferrule-bar-station.mdx +6567 -0
  394. package/dist/docs/layouts/gallery/kestrel-kettle.mdx +1858 -0
  395. package/dist/docs/layouts/gallery/nightjar-guitar.mdx +3698 -0
  396. package/dist/docs/layouts/gallery/sunfold-solar.mdx +2683 -0
  397. package/dist/docs/layouts/gallery/tidepool-aquascape.mdx +5203 -0
  398. package/dist/docs/other-features/client-side-rendering/declarative.mdx +1 -1
  399. package/dist/docs/other-features/error-5xx.mdx +1 -1
  400. package/dist/docs/other-features/navigation-hotspot.mdx +2 -0
  401. package/dist/docs/other-features/not-found-404.mdx +1 -1
  402. package/dist/docs/phoenix/configurator-interface.mdx +129 -28
  403. package/dist/docs/phoenix/domain-model.mdx +4 -1
  404. package/dist/docs/phoenix/layout-slots.mdx +25 -4
  405. package/dist/docs/phoenix/phoenix-cli.mdx +15 -6
  406. package/dist/docs/phoenix/project-structure.mdx +21 -17
  407. package/dist/docs/phoenix/sdk-builder-workflow.mdx +7 -5
  408. package/dist/docs/phoenix/sessions-and-access.mdx +2 -0
  409. package/dist/docs/phoenix/testing.mdx +2 -2
  410. package/dist/docs/phoenix/webhooks.mdx +5 -1
  411. package/dist/docs/selection-and-highlight/hotspots.mdx +2 -0
  412. package/dist/domain/application/application-config.d.ts +6 -24
  413. package/dist/domain/application/assistant/assistant-manifest.d.ts +29 -4
  414. package/dist/domain/application/assistant/assistant-manifest.js +1 -1
  415. package/dist/domain/application/assistant/assistant-resolved-manifest.d.ts +12 -9
  416. package/dist/domain/application/assistant/assistant-resolved-manifest.js +1 -1
  417. package/dist/domain/application/assistant/build-assistant-lenses.js +1 -1
  418. package/dist/domain/application/assistant/build-assistant-manifest.js +1 -1
  419. package/dist/domain/application/assistant/form/assistant-form-element-name.d.ts +11 -0
  420. package/dist/domain/application/assistant/form/assistant-form-element-name.js +8 -0
  421. package/dist/domain/application/assistant/form/assistant-form-elements.d.ts +174 -0
  422. package/dist/domain/application/assistant/form/assistant-form-elements.js +1 -0
  423. package/dist/domain/application/assistant/form/assistant-resource-path.d.ts +10 -0
  424. package/dist/domain/application/assistant/form/assistant-resource-path.js +1 -0
  425. package/dist/domain/application/assistant/form/index.d.ts +4 -0
  426. package/dist/domain/application/assistant/form/index.js +1 -0
  427. package/dist/domain/application/assistant/generate-assistant-prompt.d.ts +3 -0
  428. package/dist/domain/application/assistant/generate-assistant-prompt.js +1 -1
  429. package/dist/domain/application/assistant/index.d.ts +4 -5
  430. package/dist/domain/application/assistant/index.js +1 -1
  431. package/dist/domain/application/assistant/session-setup/apply-assistant-setup.js +1 -1
  432. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.d.ts +4 -4
  433. package/dist/domain/application/assistant/session-setup/assistant-setup-manifest.js +1 -1
  434. package/dist/domain/application/assistant-mutations.js +1 -1
  435. package/dist/domain/application/configurator-builder.d.ts +7 -1
  436. package/dist/domain/application/configurator-builder.js +1 -1
  437. package/dist/domain/application/index.d.ts +1 -1
  438. package/dist/domain/application/index.js +1 -1
  439. package/dist/domain/application/standard-properties.js +1 -1
  440. package/dist/domain/application/web-component-property.d.ts +3 -1
  441. package/dist/domain/application/web-component-property.js +1 -1
  442. package/dist/domain/available-system-components/available-system-components.d.ts +11 -0
  443. package/dist/domain/available-system-components/available-system-components.js +1 -0
  444. package/dist/domain/available-system-components/index.d.ts +1 -0
  445. package/dist/domain/available-system-components/index.js +1 -0
  446. package/dist/domain/{domain-builder.d.ts → domain-builder/domain-builder.d.ts} +11 -5
  447. package/dist/domain/domain-builder/domain-builder.js +1 -0
  448. package/dist/domain/domain-builder/index.d.ts +1 -0
  449. package/dist/domain/domain-builder/index.js +1 -0
  450. package/dist/domain/domain-context/store-system/store-system.d.ts +5 -0
  451. package/dist/domain/domain-context/store-system/store-system.js +1 -1
  452. package/dist/domain/domain-runtime/application.d.ts +39 -0
  453. package/dist/domain/domain-runtime/application.js +1 -0
  454. package/dist/domain/domain-runtime/domain-context/selectors.d.ts +1 -0
  455. package/dist/domain/domain-runtime/domain-context/selectors.js +1 -1
  456. package/dist/domain/domain-runtime/domain-runtime.d.ts +44 -4
  457. package/dist/domain/domain-runtime/domain-runtime.js +1 -1
  458. package/dist/domain/domain-runtime/environment/initialize.d.ts +1 -1
  459. package/dist/domain/domain-runtime/environment/types.d.ts +1 -1
  460. package/dist/domain/domain-runtime/errors/implementation-error-collector.d.ts +2 -0
  461. package/dist/domain/domain-runtime/errors/implementation-error-collector.js +1 -1
  462. package/dist/domain/domain-runtime/index.d.ts +2 -1
  463. package/dist/domain/domain-runtime/index.js +1 -1
  464. package/dist/domain/domain-runtime/spec/index.d.ts +1 -1
  465. package/dist/domain/domain-runtime/spec/index.js +1 -1
  466. package/dist/domain/domain-runtime/spec/initialize.js +1 -1
  467. package/dist/domain/domain-runtime/spec/module-checks/element-registration.d.ts +15 -1
  468. package/dist/domain/domain-runtime/spec/module-checks/element-registration.js +1 -1
  469. package/dist/domain/domain-runtime/spec/module-checks/find-assistant-form-element-errors.d.ts +12 -0
  470. package/dist/domain/domain-runtime/spec/module-checks/find-assistant-form-element-errors.js +1 -0
  471. package/dist/domain/domain-runtime/spec/module-checks/index.d.ts +3 -1
  472. package/dist/domain/domain-runtime/spec/module-checks/index.js +1 -1
  473. package/dist/domain/domain-runtime/spec/module-checks/merge-expression-modules.d.ts +23 -0
  474. package/dist/domain/domain-runtime/spec/module-checks/merge-expression-modules.js +1 -0
  475. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.d.ts +3 -4
  476. package/dist/domain/domain-runtime/spec/module-checks/resolve-expression-modules.js +1 -1
  477. package/dist/domain/domain-runtime/spec/selectors.d.ts +3 -1
  478. package/dist/domain/domain-runtime/spec/selectors.js +1 -1
  479. package/dist/domain/domain-runtime/web-component/actions.d.ts +3 -0
  480. package/dist/domain/domain-runtime/web-component/actions.js +1 -1
  481. package/dist/domain/domain-runtime/web-component/initialize.d.ts +1 -0
  482. package/dist/domain/domain-runtime/web-component/initialize.js +1 -1
  483. package/dist/domain/domain-runtime/web-component/selectors.d.ts +2 -0
  484. package/dist/domain/domain-runtime/web-component/selectors.js +1 -1
  485. package/dist/domain/domain-runtime/web-component/types.d.ts +6 -3
  486. package/dist/domain/extensions/export-images/agent-screenshot.d.ts +24 -0
  487. package/dist/domain/extensions/export-images/agent-screenshot.js +1 -0
  488. package/dist/domain/extensions/{client-side-image.d.ts → export-images/client-side-image.d.ts} +2 -2
  489. package/dist/domain/extensions/export-images/client-side-image.js +1 -0
  490. package/dist/domain/extensions/export-images/index.d.ts +3 -0
  491. package/dist/domain/extensions/export-images/index.js +1 -0
  492. package/dist/domain/extensions/{save-template-thumbnail.d.ts → export-images/save-template-thumbnail.d.ts} +2 -2
  493. package/dist/domain/extensions/export-images/save-template-thumbnail.js +1 -0
  494. package/dist/domain/extensions/index.d.ts +1 -2
  495. package/dist/domain/extensions/index.js +1 -1
  496. package/dist/domain/index.d.ts +3 -2
  497. package/dist/domain/index.js +1 -1
  498. package/dist/domain/mocks/create-mock-domain-runtime.d.ts +9 -0
  499. package/dist/domain/spec/application/admin-pages-section.d.ts +29 -0
  500. package/dist/domain/spec/application/admin-pages.d.ts +26 -0
  501. package/dist/domain/spec/application/admin-states.d.ts +5 -0
  502. package/dist/domain/spec/application/configurator-states.d.ts +8 -0
  503. package/dist/domain/spec/application/index.d.ts +5 -0
  504. package/dist/domain/spec/application/index.js +1 -0
  505. package/dist/domain/spec/components/bindings/index.d.ts +2 -0
  506. package/dist/domain/spec/components/bindings/read-binding.d.ts +13 -0
  507. package/dist/domain/spec/components/bindings/read-binding.js +1 -0
  508. package/dist/domain/spec/components/bindings/write-binding.d.ts +32 -0
  509. package/dist/domain/spec/components/bindings/write-binding.js +1 -0
  510. package/dist/{application-spec/parse-application-files → domain}/spec/components/component-entry.d.ts +3 -3
  511. package/dist/domain/spec/components/component-entry.js +1 -0
  512. package/dist/{application-spec/core → domain/spec}/components/component-filter.d.ts +3 -2
  513. package/dist/domain/spec/components/component-filters.d.ts +10 -0
  514. package/dist/domain/spec/components/component-filters.js +1 -0
  515. package/dist/domain/spec/components/components.d.ts +4 -0
  516. package/dist/domain/spec/components/components.js +1 -0
  517. package/dist/domain/spec/components/index.d.ts +6 -0
  518. package/dist/domain/spec/enhanced-json/enhanced-json-value.d.ts +30 -0
  519. package/dist/domain/spec/enhanced-json/enhanced-json-value.js +1 -0
  520. package/dist/domain/spec/enhanced-json/index.d.ts +1 -0
  521. package/dist/domain/spec/enhanced-json/index.js +1 -0
  522. package/dist/{application-spec/parse-application-files → domain}/spec/expressions/expression.d.ts +9 -3
  523. package/dist/domain/spec/expressions/expression.js +1 -0
  524. package/dist/domain/spec/expressions/expressions.d.ts +27 -0
  525. package/dist/domain/spec/expressions/expressions.js +1 -0
  526. package/dist/domain/spec/expressions/index.d.ts +5 -0
  527. package/dist/domain/spec/expressions/memo-eval-plan.d.ts +70 -0
  528. package/dist/domain/spec/expressions/memo-eval-plan.js +1 -0
  529. package/dist/domain/spec/expressions/relation-expression-params.js +1 -0
  530. package/dist/domain/spec/index.d.ts +9 -0
  531. package/dist/domain/spec/index.js +1 -0
  532. package/dist/domain/spec/invariants/index.d.ts +2 -0
  533. package/dist/domain/spec/invariants/index.js +1 -0
  534. package/dist/domain/spec/invariants/invariant.d.ts +24 -0
  535. package/dist/domain/spec/invariants/invariant.js +1 -0
  536. package/dist/domain/spec/invariants/invariants.d.ts +14 -0
  537. package/dist/domain/spec/invariants/invariants.js +1 -0
  538. package/dist/domain/spec/json-schema.d.ts +52 -0
  539. package/dist/domain/spec/json-schema.js +1 -0
  540. package/dist/domain/spec/markers/index.d.ts +3 -0
  541. package/dist/domain/spec/markers/index.js +1 -0
  542. package/dist/domain/spec/markers/msg-marker.d.ts +28 -0
  543. package/dist/domain/spec/markers/msg-marker.js +1 -0
  544. package/dist/domain/spec/model/aliases.d.ts +9 -0
  545. package/dist/domain/spec/model/aliases.js +1 -0
  546. package/dist/domain/spec/model/common-types.d.ts +15 -0
  547. package/dist/domain/spec/model/common-types.js +1 -0
  548. package/dist/domain/spec/model/defaults.d.ts +33 -0
  549. package/dist/domain/spec/model/defaults.js +1 -0
  550. package/dist/domain/spec/model/entity-types.d.ts +8 -0
  551. package/dist/domain/spec/model/entity-types.js +1 -0
  552. package/dist/domain/spec/model/index.d.ts +7 -0
  553. package/dist/domain/spec/model/index.js +1 -0
  554. package/dist/domain/spec/model/model-version-key.d.ts +3 -0
  555. package/dist/domain/spec/model/model-version-key.js +1 -0
  556. package/dist/domain/spec/model/names/action-name.d.ts +7 -0
  557. package/dist/domain/spec/model/names/action-name.js +1 -0
  558. package/dist/domain/spec/model/names/alias-name.d.ts +7 -0
  559. package/dist/domain/spec/model/names/alias-name.js +1 -0
  560. package/dist/domain/spec/model/names/entity-or-alias-name.d.ts +8 -0
  561. package/dist/domain/spec/model/names/entity-or-alias-name.js +1 -0
  562. package/dist/domain/spec/model/names/entity-type-name.d.ts +8 -0
  563. package/dist/domain/spec/model/names/entity-type-name.js +1 -0
  564. package/dist/domain/spec/model/names/expression-name.d.ts +6 -0
  565. package/dist/domain/spec/model/names/expression-name.js +1 -0
  566. package/dist/domain/spec/model/names/index.d.ts +9 -0
  567. package/dist/domain/spec/model/names/index.js +1 -0
  568. package/dist/domain/spec/model/names/instance-name.d.ts +7 -0
  569. package/dist/domain/spec/model/names/instance-name.js +1 -0
  570. package/dist/domain/spec/model/names/invariant-name.d.ts +3 -0
  571. package/dist/domain/spec/model/names/invariant-name.js +1 -0
  572. package/dist/domain/spec/model/names/shape-property-name.d.ts +11 -0
  573. package/dist/domain/spec/model/names/shape-property-name.js +1 -0
  574. package/dist/domain/spec/model/names/violation-type-name.d.ts +3 -0
  575. package/dist/domain/spec/model/names/violation-type-name.js +1 -0
  576. package/dist/domain/spec/model/presets.d.ts +30 -0
  577. package/dist/domain/spec/model/presets.js +1 -0
  578. package/dist/domain/spec/sections/actions.d.ts +23 -0
  579. package/dist/domain/spec/sections/actions.js +1 -0
  580. package/dist/domain/spec/sections/app-metadata.d.ts +18 -0
  581. package/dist/domain/spec/sections/app-metadata.js +1 -0
  582. package/dist/domain/spec/sections/application-version.d.ts +7 -0
  583. package/dist/domain/spec/sections/application-version.js +1 -0
  584. package/dist/domain/spec/sections/data-spec/chunks.d.ts +23 -0
  585. package/dist/domain/spec/sections/data-spec/chunks.js +1 -0
  586. package/dist/domain/spec/sections/data-spec/custom-data-spec-entry.d.ts +16 -0
  587. package/dist/domain/spec/sections/data-spec/custom-data-spec-entry.js +1 -0
  588. package/dist/domain/spec/sections/data-spec/data-entry-key.d.ts +9 -0
  589. package/dist/domain/spec/sections/data-spec/data-entry-key.js +1 -0
  590. package/dist/domain/spec/sections/data-spec/index.d.ts +5 -0
  591. package/dist/domain/spec/sections/data-spec/index.js +1 -0
  592. package/dist/domain/spec/sections/data-spec/parsed-data-spec-entries.d.ts +10 -0
  593. package/dist/domain/spec/sections/data-spec/parsed-data-spec-entries.js +1 -0
  594. package/dist/domain/spec/sections/data-spec/swatch-data-spec-entry.d.ts +14 -0
  595. package/dist/domain/spec/sections/data-spec/swatch-data-spec-entry.js +1 -0
  596. package/dist/domain/spec/sections/index.d.ts +9 -0
  597. package/dist/domain/spec/sections/index.js +1 -0
  598. package/dist/domain/spec/sections/infra/acl.d.ts +12 -0
  599. package/dist/domain/spec/sections/infra/acl.js +1 -0
  600. package/dist/domain/spec/sections/infra/index.d.ts +3 -0
  601. package/dist/domain/spec/sections/infra/index.js +1 -0
  602. package/dist/domain/spec/sections/infra/resource-entry.d.ts +46 -0
  603. package/dist/domain/spec/sections/infra/resource-entry.js +1 -0
  604. package/dist/domain/spec/sections/infra/resources-config.d.ts +10 -0
  605. package/dist/domain/spec/sections/infra/resources-config.js +1 -0
  606. package/dist/domain/spec/sections/state-value.d.ts +7 -0
  607. package/dist/domain/spec/sections/state-value.js +1 -0
  608. package/dist/domain/spec/sections/theme.d.ts +10 -0
  609. package/dist/domain/spec/sections/theme.js +1 -0
  610. package/dist/domain/spec/sections/transformers.d.ts +15 -0
  611. package/dist/domain/spec/sections/transformers.js +1 -0
  612. package/dist/domain/spec/sections/ui.d.ts +12 -0
  613. package/dist/domain/spec/sections/ui.js +1 -0
  614. package/dist/domain/system-definitions.js +1 -1
  615. package/dist/domain/utils/index.d.ts +2 -0
  616. package/dist/domain/utils/index.js +1 -0
  617. package/dist/editor/domain-editors/DomainSpecContext.js +1 -1
  618. package/dist/editor/domain-editors/apply-spec-update.d.ts +10 -2
  619. package/dist/editor/domain-editors/apply-spec-update.js +1 -1
  620. package/dist/editor/domain-editors/use-implementation-files.d.ts +6 -14
  621. package/dist/editor/domain-editors/use-implementation-files.js +1 -1
  622. package/dist/editor/graphql/GraphQLPanel.js +1 -1
  623. package/dist/editor/screenshot/ScreenshotHandler.js +1 -1
  624. package/dist/i18n/locales/cs/messages.js +1 -1
  625. package/dist/i18n/locales/da/messages.js +1 -1
  626. package/dist/i18n/locales/de/messages.js +1 -1
  627. package/dist/i18n/locales/de-AT/messages.js +1 -1
  628. package/dist/i18n/locales/en/messages.js +1 -1
  629. package/dist/i18n/locales/en-AU/messages.js +1 -1
  630. package/dist/i18n/locales/en-GB/messages.js +1 -1
  631. package/dist/i18n/locales/es/messages.js +1 -1
  632. package/dist/i18n/locales/fr/messages.js +1 -1
  633. package/dist/i18n/locales/hu/messages.js +1 -1
  634. package/dist/i18n/locales/it/messages.js +1 -1
  635. package/dist/i18n/locales/nl/messages.js +1 -1
  636. package/dist/i18n/locales/pl/messages.js +1 -1
  637. package/dist/i18n/locales/pt/messages.js +1 -1
  638. package/dist/i18n/locales/ro/messages.js +1 -1
  639. package/dist/i18n/locales/sk/messages.js +1 -1
  640. package/dist/i18n/locales/tr/messages.js +1 -1
  641. package/dist/legacy/domain-cli/utils/cache.d.ts +1 -1
  642. package/dist/legacy/domain-cli/utils/cache.js +1 -1
  643. package/dist/legacy/domain-spec/__generated/domain-schema.d.ts +16 -0
  644. package/dist/legacy/domain-spec/spec/domain-spec.js +1 -1
  645. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/claude-md.d.ts +1 -1
  646. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/cursor-rules.d.ts +1 -1
  647. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.d.ts +1 -1
  648. package/dist/legacy/phoenix-cli/project-gen/generators/file-templates/agents/shared-sdk-content.js +11 -5
  649. package/dist/phoenix/application-spec/generate-application-spec-project.d.ts +1 -0
  650. package/dist/phoenix/application-spec/generate-application-spec-project.js +2 -2
  651. package/dist/phoenix/application-spec/generate-project-files.d.ts +1 -0
  652. package/dist/phoenix/application-spec/index.d.ts +1 -0
  653. package/dist/phoenix/application-spec/index.js +1 -1
  654. package/dist/phoenix/application-spec/resolve-deployment-data.d.ts +11 -0
  655. package/dist/phoenix/application-spec/resolve-deployment-data.js +2 -2
  656. package/dist/phoenix/bin.js +1 -1
  657. package/dist/phoenix/cli.js +1 -1
  658. package/dist/phoenix/commands/build.js +1 -1
  659. package/dist/phoenix/commands/clean.js +1 -1
  660. package/dist/phoenix/commands/deploy.js +1 -1
  661. package/dist/phoenix/commands/dev.js +5 -5
  662. package/dist/phoenix/commands/generated-env-markers.d.ts +1 -0
  663. package/dist/phoenix/commands/generated-env-markers.js +1 -1
  664. package/dist/phoenix/commands/index.d.ts +1 -1
  665. package/dist/phoenix/commands/index.js +1 -1
  666. package/dist/phoenix/commands/sync.js +1 -1
  667. package/dist/phoenix/lingui/index.d.ts +1 -0
  668. package/dist/phoenix/lingui/index.js +1 -0
  669. package/dist/phoenix/{services → lingui}/lingui.d.ts +5 -2
  670. package/dist/phoenix/lingui/lingui.js +1 -0
  671. package/dist/phoenix/services/application-spec-project-watcher.d.ts +3 -1
  672. package/dist/phoenix/services/application-spec-project-watcher.js +2 -2
  673. package/dist/phoenix/services/index.d.ts +1 -0
  674. package/dist/phoenix/services/index.js +1 -1
  675. package/dist/phoenix/services/lingui-watcher.js +1 -1
  676. package/dist/phoenix/services/prepare-development-environment.js +1 -1
  677. package/dist/phoenix/services/vite-config.js +1 -1
  678. package/dist/react-sdk/application-runtime/common-services/analytics/analytics-service.d.ts +1 -1
  679. package/dist/react-sdk/application-runtime/common-services/analytics/frontend-analytics.d.ts +4 -0
  680. package/dist/react-sdk/application-runtime/common-services/initialize.d.ts +2 -2
  681. package/dist/react-sdk/application-runtime/domain-application-context/chat-system.d.ts +1 -1
  682. package/dist/react-sdk/application-runtime/hooks/index.d.ts +2 -0
  683. package/dist/react-sdk/application-runtime/hooks/index.js +1 -1
  684. package/dist/react-sdk/application-runtime/hooks/loading/index.d.ts +5 -0
  685. package/dist/react-sdk/application-runtime/hooks/loading/index.js +1 -0
  686. package/dist/react-sdk/application-runtime/hooks/loading/loader-host-context.d.ts +11 -0
  687. package/dist/react-sdk/application-runtime/hooks/loading/loader-host-context.js +1 -0
  688. package/dist/react-sdk/application-runtime/hooks/loading/use-is-awaiting-loading-phase.d.ts +8 -0
  689. package/dist/react-sdk/application-runtime/hooks/loading/use-is-awaiting-loading-phase.js +1 -0
  690. package/dist/react-sdk/application-runtime/hooks/loading/use-is-loader-hosted.d.ts +7 -0
  691. package/dist/react-sdk/application-runtime/hooks/loading/use-is-loader-hosted.js +1 -0
  692. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-actions.d.ts +9 -0
  693. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-actions.js +1 -0
  694. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-application.d.ts +24 -0
  695. package/dist/react-sdk/application-runtime/hooks/loading/use-loading-application.js +1 -0
  696. package/dist/react-sdk/application-runtime/hooks/responsive/index.d.ts +3 -0
  697. package/dist/react-sdk/application-runtime/hooks/responsive/index.js +1 -0
  698. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-actions.d.ts +9 -0
  699. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-actions.js +1 -0
  700. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-application.d.ts +26 -0
  701. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-application.js +1 -0
  702. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-state.d.ts +10 -0
  703. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-state.js +1 -0
  704. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-store.d.ts +24 -0
  705. package/dist/react-sdk/application-runtime/hooks/responsive/use-responsive-store.js +1 -0
  706. package/dist/react-sdk/application-runtime/hooks/use-access-service.d.ts +5 -0
  707. package/dist/react-sdk/application-runtime/hooks/use-access-service.js +1 -1
  708. package/dist/react-sdk/application-runtime/hooks/use-phoenix-element-slots.d.ts +2 -1
  709. package/dist/react-sdk/application-runtime/hooks/use-web-component-readonly-sync.d.ts +4 -11
  710. package/dist/react-sdk/application-runtime/hooks/use-web-component-readonly-sync.js +1 -1
  711. package/dist/react-sdk/application-runtime/hooks/use-web-component.d.ts +5 -0
  712. package/dist/react-sdk/application-runtime/hooks/use-web-component.js +1 -1
  713. package/dist/react-sdk/application-runtime/host-properties/actions.d.ts +15 -0
  714. package/dist/react-sdk/application-runtime/host-properties/actions.js +1 -0
  715. package/dist/react-sdk/application-runtime/host-properties/connect-host-properties.d.ts +30 -0
  716. package/dist/react-sdk/application-runtime/host-properties/connect-host-properties.js +1 -0
  717. package/dist/react-sdk/application-runtime/host-properties/domain-host-properties.d.ts +7 -0
  718. package/dist/react-sdk/application-runtime/host-properties/domain-host-properties.js +1 -0
  719. package/dist/react-sdk/application-runtime/host-properties/host-property-descriptors.d.ts +21 -0
  720. package/dist/react-sdk/application-runtime/host-properties/host-property-descriptors.js +1 -0
  721. package/dist/react-sdk/application-runtime/host-properties/host-property-scopes.d.ts +42 -0
  722. package/dist/react-sdk/application-runtime/host-properties/host-property-scopes.js +1 -0
  723. package/dist/react-sdk/application-runtime/host-properties/index.d.ts +8 -0
  724. package/dist/react-sdk/application-runtime/host-properties/index.js +1 -0
  725. package/dist/react-sdk/application-runtime/host-properties/initialize.d.ts +7 -0
  726. package/dist/react-sdk/application-runtime/host-properties/initialize.js +1 -0
  727. package/dist/react-sdk/application-runtime/host-properties/selectors.d.ts +54 -0
  728. package/dist/react-sdk/application-runtime/host-properties/selectors.js +1 -0
  729. package/dist/react-sdk/application-runtime/host-properties/types.d.ts +18 -0
  730. package/dist/react-sdk/application-runtime/host-properties/types.js +1 -0
  731. package/dist/react-sdk/application-runtime/index.d.ts +3 -0
  732. package/dist/react-sdk/application-runtime/integration/initialize.d.ts +7 -6
  733. package/dist/react-sdk/application-runtime/integration/initialize.js +1 -1
  734. package/dist/react-sdk/application-runtime/integration/selectors.d.ts +11 -2
  735. package/dist/react-sdk/application-runtime/integration/selectors.js +1 -1
  736. package/dist/react-sdk/application-runtime/integration/types.d.ts +5 -2
  737. package/dist/react-sdk/application-runtime/loading/actions.d.ts +45 -0
  738. package/dist/react-sdk/application-runtime/loading/actions.js +1 -0
  739. package/dist/react-sdk/application-runtime/loading/index.d.ts +4 -0
  740. package/dist/react-sdk/application-runtime/loading/index.js +1 -0
  741. package/dist/react-sdk/application-runtime/loading/initialize.d.ts +3 -0
  742. package/dist/react-sdk/application-runtime/loading/initialize.js +1 -0
  743. package/dist/react-sdk/application-runtime/loading/selectors.d.ts +18 -0
  744. package/dist/react-sdk/application-runtime/loading/selectors.js +1 -0
  745. package/dist/react-sdk/application-runtime/loading/types.d.ts +59 -0
  746. package/dist/react-sdk/application-runtime/loading/types.js +1 -0
  747. package/dist/react-sdk/application-runtime/mocks/create-mock-application-runtime.js +1 -1
  748. package/dist/react-sdk/application-runtime/provider/ApplicationRuntime.d.ts +6 -0
  749. package/dist/react-sdk/application-runtime/provider/ApplicationRuntime.js +1 -1
  750. package/dist/react-sdk/application-runtime/provider/ApplicationType.d.ts +7 -0
  751. package/dist/react-sdk/application-runtime/provider/ApplicationType.js +1 -1
  752. package/dist/react-sdk/application-runtime/responsive/actions.d.ts +47 -0
  753. package/dist/react-sdk/application-runtime/responsive/actions.js +1 -0
  754. package/dist/react-sdk/application-runtime/responsive/index.d.ts +4 -0
  755. package/dist/react-sdk/application-runtime/responsive/index.js +1 -0
  756. package/dist/react-sdk/application-runtime/responsive/initialize.d.ts +3 -0
  757. package/dist/react-sdk/application-runtime/responsive/initialize.js +1 -0
  758. package/dist/react-sdk/application-runtime/responsive/selectors.d.ts +20 -0
  759. package/dist/react-sdk/application-runtime/responsive/selectors.js +1 -0
  760. package/dist/react-sdk/application-runtime/responsive/types.d.ts +104 -0
  761. package/dist/react-sdk/application-runtime/responsive/types.js +1 -0
  762. package/dist/react-sdk/application-runtime/routing/routing-service.d.ts +34 -2
  763. package/dist/react-sdk/application-runtime/routing/routing-service.js +1 -1
  764. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.d.ts +313 -10
  765. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.js +1 -1
  766. package/dist/{configurator/configurator-context → react-sdk}/configurator-routing/ConfiguratorRoutingProvider.d.ts +1 -1
  767. package/dist/react-sdk/configurator-routing/ConfiguratorRoutingProvider.js +1 -0
  768. package/dist/{configurator/configurator-context → react-sdk}/configurator-routing/OnGoToIndexHandler.d.ts +1 -2
  769. package/dist/react-sdk/configurator-routing/OnGoToIndexHandler.js +1 -0
  770. package/dist/react-sdk/configurator-routing/index.d.ts +3 -0
  771. package/dist/{configurator/configurator-context → react-sdk}/configurator-routing/index.js +1 -1
  772. package/dist/{configurator/configurator-context → react-sdk}/configurator-routing/use-power-routing-lifecycle.d.ts +2 -0
  773. package/dist/react-sdk/configurator-routing/use-power-routing-lifecycle.js +1 -0
  774. package/dist/react-sdk/domain-application-context/BackendDataProvider.js +1 -1
  775. package/dist/react-sdk/domain-application-context/ConfigurationPersistSystemFailureHandler.js +1 -1
  776. package/dist/react-sdk/domain-application-context/FrontendDataProvider.js +1 -1
  777. package/dist/react-sdk/domain-application-context/OnPresetLoadedHandler.js +1 -0
  778. package/dist/react-sdk/domain-application-context/PublishedDataProvider.js +1 -1
  779. package/dist/react-sdk/domain-application-context/chat-hooks.d.ts +4 -0
  780. package/dist/react-sdk/domain-application-context/chat-hooks.js +1 -0
  781. package/dist/react-sdk/domain-application-context/index.d.ts +2 -0
  782. package/dist/react-sdk/domain-application-context/index.js +1 -1
  783. package/dist/react-sdk/domain-context/common-hooks/index.d.ts +9 -0
  784. package/dist/react-sdk/domain-context/common-hooks/index.js +1 -0
  785. package/dist/react-sdk/domain-context/common-hooks/use-configuration-save-state.d.ts +23 -0
  786. package/dist/react-sdk/domain-context/common-hooks/use-configuration-save-state.js +1 -0
  787. package/dist/react-sdk/domain-context/common-hooks/use-domain-context.d.ts +1 -0
  788. package/dist/react-sdk/domain-context/component-hooks/index.d.ts +1 -0
  789. package/dist/react-sdk/domain-context/component-hooks/index.js +1 -0
  790. package/dist/react-sdk/domain-context/component-hooks/use-component.js +1 -1
  791. package/dist/react-sdk/domain-context/entity-hooks/use-domain-entity-state.js +1 -1
  792. package/dist/react-sdk/domain-context/entity-hooks/use-entity-price.js +1 -1
  793. package/dist/react-sdk/domain-context/entity-hooks/use-root-entity-id.js +1 -1
  794. package/dist/react-sdk/domain-context/entity-hooks/use-root-entity-state.js +1 -1
  795. package/dist/react-sdk/domain-context/index.d.ts +4 -0
  796. package/dist/react-sdk/domain-context/index.js +1 -1
  797. package/dist/react-sdk/domain-context/system-hooks/composition-hooks.js +1 -1
  798. package/dist/react-sdk/domain-context/system-hooks/dimension-hooks.js +1 -1
  799. package/dist/react-sdk/domain-context/system-hooks/generate-share-link-hooks.d.ts +8 -0
  800. package/dist/react-sdk/domain-context/system-hooks/generate-share-link-hooks.js +1 -0
  801. package/dist/react-sdk/domain-context/system-hooks/hover-hooks.js +1 -1
  802. package/dist/react-sdk/domain-context/system-hooks/locale-switch-hooks.d.ts +24 -0
  803. package/dist/react-sdk/domain-context/system-hooks/locale-switch-hooks.js +1 -0
  804. package/dist/react-sdk/domain-context/system-hooks/navigation-hooks.js +1 -1
  805. package/dist/react-sdk/domain-context/system-hooks/selection-hooks.js +1 -1
  806. package/dist/react-sdk/domain-context/system-hooks/share-links-hooks.d.ts +32 -0
  807. package/dist/react-sdk/domain-context/system-hooks/share-links-hooks.js +1 -0
  808. package/dist/react-sdk/domain-context/system-hooks/tab-navigation-hooks.js +1 -1
  809. package/dist/react-sdk/domain-context/system-hooks/undo-redo-hooks.js +1 -1
  810. package/dist/react-sdk/index.d.ts +6 -1
  811. package/dist/react-sdk/index.js +1 -1
  812. package/dist/react-sdk/integration/IntegrationSubscription.js +1 -0
  813. package/dist/react-sdk/integration/index.d.ts +1 -0
  814. package/dist/react-sdk/integration/index.js +1 -0
  815. package/dist/react-sdk/lifecycle-providers/ConfiguratorDataProvider.d.ts +8 -0
  816. package/dist/react-sdk/lifecycle-providers/ConfiguratorDataProvider.js +1 -0
  817. package/dist/react-sdk/lifecycle-providers/LifecycleProviders.js +1 -0
  818. package/dist/react-sdk/lifecycle-providers/index.d.ts +2 -0
  819. package/dist/react-sdk/lifecycle-providers/index.js +1 -0
  820. package/dist/react-sdk/loading-state/LoaderHost.d.ts +20 -0
  821. package/dist/react-sdk/loading-state/LoaderHost.js +1 -0
  822. package/dist/react-sdk/loading-state/built-in-loading-phase.d.ts +9 -0
  823. package/dist/react-sdk/loading-state/built-in-loading-phase.js +1 -0
  824. package/dist/react-sdk/loading-state/create-app-loader.d.ts +18 -0
  825. package/dist/react-sdk/loading-state/create-app-loader.js +1 -0
  826. package/dist/react-sdk/loading-state/index.d.ts +4 -2
  827. package/dist/react-sdk/loading-state/index.js +1 -1
  828. package/dist/react-sdk/loading-state/{LoadingStateProvider.d.ts → loading-state-hooks.d.ts} +3 -12
  829. package/dist/react-sdk/loading-state/loading-state-hooks.js +1 -0
  830. package/dist/react-sdk/notifications/index.d.ts +1 -0
  831. package/dist/react-sdk/notifications/index.js +1 -0
  832. package/dist/react-sdk/notifications/snackbar-action-button.d.ts +30 -0
  833. package/dist/react-sdk/notifications/snackbar-action-button.js +1 -0
  834. package/dist/react-sdk/page-elements/ConfigurationNotFoundPagePropsProvider.d.ts +17 -0
  835. package/dist/react-sdk/page-elements/ConfigurationNotFoundPagePropsProvider.js +1 -0
  836. package/dist/react-sdk/page-elements/ConfiguratorErrorPagePropsProvider.d.ts +17 -0
  837. package/dist/react-sdk/page-elements/ConfiguratorErrorPagePropsProvider.js +1 -0
  838. package/dist/react-sdk/page-elements/configurator-error-page-props.d.ts +20 -0
  839. package/dist/react-sdk/page-elements/configurator-error-page-props.js +1 -0
  840. package/dist/react-sdk/page-elements/create-configuration-not-found-page.d.ts +15 -0
  841. package/dist/react-sdk/page-elements/create-configuration-not-found-page.js +1 -0
  842. package/dist/react-sdk/page-elements/create-configurator-error-page.d.ts +14 -0
  843. package/dist/react-sdk/page-elements/create-configurator-error-page.js +1 -0
  844. package/dist/react-sdk/page-elements/create-preset-ui.d.ts +9 -0
  845. package/dist/react-sdk/page-elements/create-preset-ui.js +1 -0
  846. package/dist/react-sdk/page-elements/index.d.ts +6 -0
  847. package/dist/react-sdk/page-elements/index.js +1 -0
  848. package/dist/react-sdk/scene-control-elements/AddEntityFabElement.d.ts +36 -0
  849. package/dist/react-sdk/scene-control-elements/AddEntityFabElement.js +1 -0
  850. package/dist/react-sdk/scene-control-elements/DeleteEntityFabElement.d.ts +44 -0
  851. package/dist/react-sdk/scene-control-elements/DeleteEntityFabElement.js +1 -0
  852. package/dist/react-sdk/scene-control-elements/NavigationHotspotElement.d.ts +38 -0
  853. package/dist/react-sdk/scene-control-elements/NavigationHotspotElement.js +1 -0
  854. package/dist/react-sdk/scene-control-elements/SelectionHotspotElement.d.ts +30 -0
  855. package/dist/react-sdk/scene-control-elements/SelectionHotspotElement.js +1 -0
  856. package/dist/react-sdk/scene-control-elements/ToolMenuFabElement.d.ts +30 -0
  857. package/dist/react-sdk/scene-control-elements/ToolMenuFabElement.js +1 -0
  858. package/dist/react-sdk/scene-control-elements/create-add-entity-fab.d.ts +9 -0
  859. package/dist/react-sdk/scene-control-elements/create-add-entity-fab.js +1 -0
  860. package/dist/react-sdk/scene-control-elements/create-delete-entity-fab.d.ts +9 -0
  861. package/dist/react-sdk/scene-control-elements/create-delete-entity-fab.js +1 -0
  862. package/dist/react-sdk/scene-control-elements/create-navigation-hotspot.d.ts +10 -0
  863. package/dist/react-sdk/scene-control-elements/create-navigation-hotspot.js +1 -0
  864. package/dist/react-sdk/scene-control-elements/create-selection-hotspot.d.ts +9 -0
  865. package/dist/react-sdk/scene-control-elements/create-selection-hotspot.js +1 -0
  866. package/dist/react-sdk/scene-control-elements/create-tool-menu-fab.d.ts +9 -0
  867. package/dist/react-sdk/scene-control-elements/create-tool-menu-fab.js +1 -0
  868. package/dist/react-sdk/scene-control-elements/index.d.ts +11 -0
  869. package/dist/react-sdk/scene-control-elements/index.js +1 -0
  870. package/dist/react-sdk/scene-control-elements/scene-control-tooltip-visibility.d.ts +5 -0
  871. package/dist/react-sdk/scene-control-elements/scene-control-tooltip-visibility.js +1 -0
  872. package/dist/react-sdk/session/SessionServiceProvider.js +1 -1
  873. package/dist/react-sdk/web-component/create-web-component.js +1 -1
  874. package/dist/react-sdk/web-component/god-mode/god-mode-registry.d.ts +30 -0
  875. package/dist/react-sdk/web-component/god-mode/god-mode-registry.js +1 -0
  876. package/dist/react-sdk/web-component/god-mode/index.d.ts +1 -0
  877. package/dist/react-sdk/web-component/god-mode/index.js +1 -0
  878. package/dist/ui-sdk/components/snackbar/Snackbar.d.ts +24 -3
  879. package/dist/ui-sdk/components/snackbar/Snackbar.js +1 -1
  880. package/dist/ui-sdk/icons/__generated/Lightbulb.d.ts +3 -0
  881. package/dist/ui-sdk/icons/__generated/Lightbulb.js +1 -0
  882. package/dist/ui-sdk/icons/__generated/XCircle.d.ts +3 -0
  883. package/dist/ui-sdk/icons/__generated/XCircle.js +1 -0
  884. package/dist/ui-sdk/icons/__generated/index.d.ts +4 -0
  885. package/dist/ui-sdk/icons/__generated/index.js +1 -1
  886. package/dist/ui-sdk/icons/icons-registry.js +1 -1
  887. package/dist/ui-sdk/responsive-application/ResponsiveApplicationProvider.d.ts +2 -2
  888. package/dist/ui-sdk/responsive-application/responsive-state-store.d.ts +11 -9
  889. package/dist/ui-sdk/responsive-application/use-store-responsive-info.js +1 -1
  890. package/dist/ui-sdk/theme/types.d.ts +5 -1
  891. package/dist/watch/glob-matcher.d.ts +4 -4
  892. package/dist/watch/glob-matcher.js +1 -1
  893. package/dist/watch/watch.d.ts +4 -4
  894. package/dist/watch/watch.js +1 -1
  895. package/package.json +13 -3
  896. package/schema/domain-spec.json +140 -0
  897. package/dist/application-spec/core/components/index.d.ts +0 -2
  898. package/dist/application-spec/core/expressions/index.d.ts +0 -2
  899. package/dist/configurator/configurator-context/ConfiguratorDataProvider.d.ts +0 -2
  900. package/dist/configurator/configurator-context/ConfiguratorDataProvider.js +0 -1
  901. package/dist/configurator/configurator-context/IntegrationSubscription.js +0 -1
  902. package/dist/configurator/configurator-context/LifecycleProviders.js +0 -1
  903. package/dist/configurator/configurator-context/OnPresetLoadedHandler.js +0 -1
  904. package/dist/configurator/configurator-context/configurator-hooks/chat-hooks.d.ts +0 -1
  905. package/dist/configurator/configurator-context/configurator-hooks/chat-hooks.js +0 -1
  906. package/dist/configurator/configurator-context/configurator-routing/ConfiguratorRoutingProvider.js +0 -1
  907. package/dist/configurator/configurator-context/configurator-routing/OnGoToIndexHandler.js +0 -1
  908. package/dist/configurator/configurator-context/configurator-routing/index.d.ts +0 -2
  909. package/dist/configurator/configurator-context/configurator-routing/use-power-routing-lifecycle.js +0 -1
  910. package/dist/configurator/ui/assistant/form/built-in-form-registry.d.ts +0 -10
  911. package/dist/configurator/ui/assistant/form/built-in-form-registry.js +0 -1
  912. package/dist/configurator/ui/assistant/form/form-registry.js +0 -8
  913. package/dist/configurator/ui/phoenix-layout-elements/language/use-locale-options.d.ts +0 -4
  914. package/dist/configurator/ui/phoenix-layout-elements/language/use-locale-options.js +0 -1
  915. package/dist/configurator/ui/phoenix-layout-elements/measurements/use-measurements-visibility.d.ts +0 -4
  916. package/dist/configurator/ui/phoenix-layout-elements/measurements/use-measurements-visibility.js +0 -1
  917. package/dist/domain/application/assistant/assistant-form-elements.d.ts +0 -28
  918. package/dist/domain/application/assistant/assistant-form-elements.js +0 -1
  919. package/dist/domain/available-system-components.d.ts +0 -11
  920. package/dist/domain/available-system-components.js +0 -1
  921. package/dist/domain/domain-builder.js +0 -1
  922. package/dist/domain/extensions/client-side-image.js +0 -1
  923. package/dist/domain/extensions/save-template-thumbnail.js +0 -1
  924. package/dist/phoenix/services/lingui.js +0 -1
  925. package/dist/react-sdk/application-runtime/runtime/god-mode.d.ts +0 -19
  926. package/dist/react-sdk/application-runtime/runtime/god-mode.js +0 -1
  927. package/dist/react-sdk/loading-state/LoadingStateProvider.js +0 -1
  928. package/dist/react-sdk/loading-state/loading-state-manager.d.ts +0 -32
  929. package/dist/react-sdk/loading-state/loading-state-manager.js +0 -1
  930. package/dist/react-sdk/responsive-state/ResponsiveStateProvider.d.ts +0 -25
  931. package/dist/react-sdk/responsive-state/ResponsiveStateProvider.js +0 -1
  932. package/dist/react-sdk/responsive-state/canvas-padding.d.ts +0 -14
  933. package/dist/react-sdk/responsive-state/index.d.ts +0 -5
  934. package/dist/react-sdk/responsive-state/index.js +0 -1
  935. package/dist/react-sdk/responsive-state/responsive-state-manager.d.ts +0 -111
  936. package/dist/react-sdk/responsive-state/responsive-state-manager.js +0 -1
  937. package/dist/react-sdk/responsive-state/use-responsive-state-manager.d.ts +0 -10
  938. package/dist/react-sdk/responsive-state/use-responsive-state-manager.js +0 -1
  939. package/dist/react-sdk/responsive-state/use-responsive-state.d.ts +0 -11
  940. package/dist/react-sdk/responsive-state/use-responsive-state.js +0 -1
  941. /package/dist/{application-spec/core/expressions/relation-expression-params.js → domain/spec/application/admin-pages-section.js} +0 -0
  942. /package/dist/{application-spec/parse-application-files/spec/components/component-entry.js → domain/spec/application/admin-pages.js} +0 -0
  943. /package/dist/{application-spec/parse-application-files/spec/expressions/expression.js → domain/spec/application/admin-states.js} +0 -0
  944. /package/dist/{application-spec/core → domain/spec/application}/application-instance.d.ts +0 -0
  945. /package/dist/{application-spec/core → domain/spec/application}/application-instance.js +0 -0
  946. /package/dist/{configurator/ui/assistant/form/form-element-definition.js → domain/spec/application/configurator-states.js} +0 -0
  947. /package/dist/{react-sdk/responsive-state/canvas-padding.js → domain/spec/components/bindings/index.js} +0 -0
  948. /package/dist/{application-spec/core → domain/spec}/components/component-filter.js +0 -0
  949. /package/dist/{application-spec/core → domain/spec}/components/index.js +0 -0
  950. /package/dist/{application-spec/core → domain/spec}/components/sdk-code-ref.d.ts +0 -0
  951. /package/dist/{application-spec/core → domain/spec}/components/sdk-code-ref.js +0 -0
  952. /package/dist/{application-spec/core → domain/spec}/expressions/index.js +0 -0
  953. /package/dist/{application-spec/core → domain/spec}/expressions/relation-expression-params.d.ts +0 -0
  954. /package/dist/{application-spec/core → domain/spec}/expressions/sdk-expression-implementation.d.ts +0 -0
  955. /package/dist/{application-spec/core → domain/spec}/expressions/sdk-expression-implementation.js +0 -0
  956. /package/dist/{application-spec/parse-application-files/spec/components → domain/spec/markers}/component-prop-target.d.ts +0 -0
  957. /package/dist/{application-spec/parse-application-files/spec/components → domain/spec/markers}/component-prop-target.js +0 -0
  958. /package/dist/{application-spec/core → domain/spec}/markers/eval-marker.d.ts +0 -0
  959. /package/dist/{application-spec/core → domain/spec}/markers/eval-marker.js +0 -0
  960. /package/dist/{configurator/configurator-context → react-sdk/domain-application-context}/OnPresetLoadedHandler.d.ts +0 -0
  961. /package/dist/{configurator/configurator-context → react-sdk/integration}/IntegrationSubscription.d.ts +0 -0
  962. /package/dist/{configurator/configurator-context → react-sdk/lifecycle-providers}/LifecycleProviders.d.ts +0 -0
@@ -1,5 +1,5 @@
1
- import{mkdir as e}from"node:fs/promises";import{dirname as r}from"node:path";import{format as t}from"node:util";import{createServer as o}from"vite";import{resolveGeneratedEnvFile as s}from"@salsita-ai/common/env";import{generateProjectFiles as n}from"../application-spec/index.js";import{startEditorServer as i}from"../editor-server/index.js";import{getDevelopmentCredentialHint as a}from"../services/development-credential.js";import{ApplicationSpecProjectWatcher as l,LinguiWatcher as c,LogBus as p,MockTemplateWatcher as d,PhoenixApplication as u,PhoenixPubSub as m,PhoenixStore as w,VariantPreviewService as v,WebhookTunnelMonitor as g,createBusLogger as h,getViteDevConfig as f,patchConsole as E,setViteLogSink as b}from"../services/index.js";import{prepareDevelopmentEnvironment as S}from"../services/prepare-development-environment.js";import{createWebhookTunnelTransport as k,readOrCreateTunnelSessionId as I,startWebhookService as $}from"../services/webhook-service/index.js";import{startTui as x}from"../tui/index.js";import{FileLogger as j,createLogger as P,exists as R}from"../utils/index.js";import{buildWebhooks as T,setLogger as N,webhookLogContext as y}from"../webhooks/index.js";import{readGeneratedEnvMarkers as D}from"./generated-env-markers.js";export const runDevCommand=async(_,U)=>{let{logger:O}=U,{sdkVersion:L,projectSlug:M,environmentSlug:V,cliUseWorkspace:W,enableEditor:G,editorWsPort:Y,debug:C=!1,withLingui:H=!1,persistenceMode:B,force:X=!1,tui:q=!1,serverUrl:J,credential:Q,skipUpload:z}=_,A=null,F=null,K=null,Z=null,ee=null,er=null,et=null,eo=new j,es=new m,en=new p,ei=q&&!!process.stdout.isTTY&&!!process.stdin.isTTY,ea=!ei,el=null;q&&!ei&&O.warn("TUI requested but stdin/stdout is not an interactive terminal — falling back to plain log output. Run phoenix dev --tui directly in a terminal to use the TUI.");let ec=null,ep=O,ed=null,eu=async(t,o)=>{let n=s(".");await e(r(n),{recursive:!0}),await S({serverUrl:t.serverUrl,projectSlug:M,environmentSlug:V,credential:t.credential,outFile:n,skipUpload:o.skipUpload,overrideSchema:!0,debug:o.debug,projectVersion:L},{logger:ep})},em=()=>{el&&(el(),el=null),ec&&(ec.unmount(),ec=null,ep=P({debug:C,fileLogger:eo}))},ew=(e=0)=>ed||(ed=(async()=>{process.off("SIGINT",ev),process.off("SIGTERM",ev),process.off("uncaughtException",eg),em(),ep.debug("Shutting down...");let r=[];for(let e of[{name:"lingui watcher",close:()=>Z?.close()},{name:"project watcher",close:()=>er?.close()},{name:"mock template watcher",close:()=>ee?.close()},{name:"editor server",close:()=>K?.close()},{name:"variant previews",close:()=>et?.close()},{name:"vite server",close:()=>A?.close()},{name:"webhook tunnel",close:()=>F?.stop()}])try{ep.debug(`Shutting down ${e.name}`),await e.close()}catch(t){r.push(`${e.name}: ${t instanceof Error?t.message:String(t)}`)}r.length>0&&ep.warn(`Cleanup warnings:
2
- ${r.join("\n ")}`),ep.debug("Shutdown complete"),await eo.close(),process.exit(e)})()),ev=()=>{ew(0)},eg=e=>{em(),ep.error(`Uncaught exception: ${e.message}`),ew(1)};process.once("SIGINT",ev),process.once("SIGTERM",ev),process.once("uncaughtException",eg);try{await eo.init(".phoenix"),ep=h({bus:en,stream:"spec",debug:C,fileLogger:eo,echo:!0}),b((e,r)=>en.push("vite",e,r),{echo:ea}),N({transports:[],log:(e,...r)=>{en.push("webhook","warn"===e||"error"===e?e:"info",t(...r)),ea&&process.stdout.write(`${t(e,...r)}
3
- `)}}),es.browserConsole$.subscribe(e=>{en.push("browser",e.level,e.source?`[${e.source}] ${e.message}`:e.message);let r=`[${e.source?`browser:${e.source}`:"browser"}] ${e.message}`;eo.write("warn",r),ea&&process.stderr.write(`⚠️ ${r}
4
- `)}),ea&&(el=E(en,{echo:!0})),process.env.NODE_ENV="development",B&&(process.env.PERSISTENCE_MODE=B);let e=!B||"server"===B;e&&J&&(process.env.SERVER_URL=J);let r=e&&J?new g(J):void 0;if(ep.step("Starting development mode"),!await R("spec")){ep.error('Spec folder not found. Run "phoenix init" first.'),await ew(1);return}if(e){if(!J||!Q)throw Error("Server persistence needs a server and a credential. Run `phoenix login <workspace>`, or create a development environment in Studio and paste its .env block into .env.");let e=s("."),r=await D(e);r?.PHOENIX_PROJECT_SLUG!==M||r.PHOENIX_ENVIRONMENT_SLUG!==V||r.PHOENIX_SERVER_URL!==J?(ep.step("Preparing development deployment"),await eu({serverUrl:J,credential:Q},{skipUpload:z,debug:C})):ep.debug(`${e} matches the current development environment, skipping prepare`)}ep.step("Building project files");let{templateFiles:p}=await n({sdkVersion:L,projectSlug:M,environmentSlug:V,cliUseWorkspace:W,enableEditor:G,withLingui:H,force:X},{logger:ep});if(ep.success("Project files built successfully"),ei&&(ep=h({bus:en,stream:"spec",debug:C,fileLogger:eo}),el=E(en),ec=x(en,{onQuit:()=>void ew(0)})),H?(Z=new c({logger:ep})).start():ep.warn("Lingui is disabled: i18n messages are not extracted or compiled during dev. Pass --withLingui or set WITH_LINGUI=true to enable."),e&&(ep.step("Building webhooks"),await y.run("webhook",async()=>{await T({experimental:!0,skipNodeEnvOverride:!0,webhookEntryPoint:"./.phoenix/.swc/.phoenix/webhook.js"})})),e&&J&&Q){let e=s("."),t=await D(e);if(!t?.DEPLOYMENT_ID)throw Error(`Webhook tunnel cannot start because ${e} has no DEPLOYMENT_ID. Rerun phoenix dev to prepare the development deployment.`);let o=await I();F=await $({experimental:!0,transport:k({serverUrl:J,credential:Q,projectSlug:M,environmentSlug:V}),rejectionHint:a(Q,M),environmentSlug:V,deploymentId:t.DEPLOYMENT_ID,sessionId:o,onStatus:(e,s)=>{r?.setStatus(e,{deploymentId:t.DEPLOYMENT_ID,sessionId:o,message:s??null})},onRequest:e=>r?.record(e)}),r?.setStatus("waiting",{deploymentId:t.DEPLOYMENT_ID,sessionId:o}),F.stopped.catch(e=>{em(),ep.error(`Webhook tunnel failed: ${e instanceof Error?e.message:String(e)}`),ew(1)}),ep.success("Webhook tunnel started")}er=new l({pubsub:es,logger:ep,onRebuilt:()=>Z?.trigger(),onViteServerChange:e=>{A=e},sdkVersion:L,projectSlug:M,environmentSlug:V,cliUseWorkspace:W,enableEditor:G??!0,inlineTemplates:!1,useServer:e});let m=new w;if(et=new u({store:m,pubsub:es,variantPreviews:new v({projectRoot:process.cwd()},{store:m,logger:ep,projectWatcher:er})}),G&&Y){ep.step("Starting editor WebSocket server");let t=parseInt(Y,10);K=i({port:t,projectRoot:process.cwd(),application:et,logger:ep,logBus:en,tunnelMonitor:r,debug:C,prepareDeployment:e&&J&&Q?()=>eu({serverUrl:J,credential:Q},{skipUpload:!0,debug:!1}):void 0}),await K.ready,ep.debug(`Editor WebSocket server started on port ${t}`),(ee=new d({projectRoot:process.cwd(),pubsub:es,logger:ep})).start()}let S=await f({templateFiles:p});A=await o(S),await A.listen(),ep.step("Starting Vite dev server"),er.start(A);let j=A.resolvedUrls?.local[0];if(ei)ep.success("Vite dev server started — watching for changes"),j&&ep.info(`Preview: ${j}`),G&&Y&&ep.info(`Editor WebSocket: ws://localhost:${Y}`);else if(C)ep.success("Vite dev server started"),j&&ep.info(`Preview: ${j}`);else{let e=e=>{en.push("spec","info",e),process.stdout.write(`${e}
5
- `)};e("\n\uD83D\uDE80 Phoenix Dev Server\n"),j&&(e(`Preview: ${j}`),eo.write("info",`Preview: ${j}`)),G&&Y&&e(`Editor WebSocket: ws://localhost:${Y}`),e("\n\uD83D\uDC40 Watching for changes...\n")}}catch(e){em(),ep.error(`Dev mode failed: ${e instanceof Error?e.message:String(e)}`,e),await ew(1)}};
1
+ import{mkdir as e}from"node:fs/promises";import{dirname as t}from"node:path";import{format as r}from"node:util";import{createServer as o}from"vite";import{resolveGeneratedEnvFile as n}from"@salsita-ai/common/env";import{generateProjectFiles as s,getDeploymentFingerprint as i}from"../application-spec/index.js";import{startEditorServer as a}from"../editor-server/index.js";import{getDevelopmentCredentialHint as l}from"../services/development-credential.js";import{ApplicationSpecProjectWatcher as c,LinguiWatcher as p,LogBus as d,MockTemplateWatcher as u,PhoenixApplication as m,PhoenixPubSub as w,PhoenixStore as h,VariantPreviewService as g,WebhookTunnelMonitor as v,createBusLogger as f,getViteDevConfig as E,patchConsole as b,setViteLogSink as S}from"../services/index.js";import{prepareDevelopmentEnvironment as I}from"../services/prepare-development-environment.js";import{createWebhookTunnelTransport as P,readOrCreateTunnelSessionId as k,startWebhookService as N}from"../services/webhook-service/index.js";import{startTui as $}from"../tui/index.js";import{FileLogger as x,createLogger as y,exists as R}from"../utils/index.js";import{buildWebhooks as T,setLogger as j,webhookLogContext as _}from"../webhooks/index.js";import{readGeneratedEnvMarkers as D}from"./generated-env-markers.js";export const runDevCommand=async(O,L)=>{let{logger:U}=L,{sdkVersion:M,projectSlug:G,environmentSlug:V,cliUseWorkspace:W,enableEditor:Y,editorWsPort:C,debug:H=!1,withLingui:X=!1,persistenceMode:B,force:q=!1,tui:F=!1,serverUrl:A,credential:J,skipUpload:Q}=O,z=null,K=null,Z=null,ee=null,et=null,er=null,eo=null,en=new x,es=new w,ei=new d,ea=F&&!!process.stdout.isTTY&&!!process.stdin.isTTY,el=!ea,ec=null;F&&!ea&&U.warn("TUI requested but stdin/stdout is not an interactive terminal — falling back to plain log output. Run phoenix dev --tui directly in a terminal to use the TUI.");let ep=null,ed=U,eu=null,em=async(r,o)=>{let s=n(".");await e(t(s),{recursive:!0}),await I({serverUrl:r.serverUrl,projectSlug:G,environmentSlug:V,credential:r.credential,outFile:s,skipUpload:o.skipUpload,overrideSchema:!0,debug:o.debug,projectVersion:M},{logger:ed})},ew=null,eh=async e=>{try{let t=i(e),r=await D(n("."));if(!r||r.PHOENIX_DEPLOYMENT_FINGERPRINT===t){ew=null;return}if(ew===t)return;ew=t,ed.error("The development deployment on the server still has the domain model and deployment settings it was prepared with, not the ones the spec now declares: a running phoenix dev cannot register a change, because its webhook tunnel and the preview stay bound to the deployment they started with. Restart phoenix dev to prepare the deployment again, then open the Preview address it prints rather than reloading a tab whose address has ?cid=, which loads a configuration saved with the earlier model.")}catch(e){ed.warn(`Could not compare the spec with the development deployment: ${e instanceof Error?e.message:String(e)}. After a domain model change, restart phoenix dev to register it.`)}},eg=()=>{ec&&(ec(),ec=null),ep&&(ep.unmount(),ep=null,ed=y({debug:H,fileLogger:en}))},ev=(e=0)=>eu||(eu=(async()=>{process.off("SIGINT",ef),process.off("SIGTERM",ef),process.off("uncaughtException",eE),eg(),ed.debug("Shutting down...");let t=[];for(let e of[{name:"lingui watcher",close:()=>ee?.close()},{name:"project watcher",close:()=>er?.close()},{name:"mock template watcher",close:()=>et?.close()},{name:"editor server",close:()=>Z?.close()},{name:"variant previews",close:()=>eo?.close()},{name:"vite server",close:()=>z?.close()},{name:"webhook tunnel",close:()=>K?.stop()}])try{ed.debug(`Shutting down ${e.name}`),await e.close()}catch(r){t.push(`${e.name}: ${r instanceof Error?r.message:String(r)}`)}t.length>0&&ed.warn(`Cleanup warnings:
2
+ ${t.join("\n ")}`),ed.debug("Shutdown complete"),await en.close(),process.exit(e)})()),ef=()=>{ev(0)},eE=e=>{eg(),ed.error(`Uncaught exception: ${e.message}`),ev(1)};process.once("SIGINT",ef),process.once("SIGTERM",ef),process.once("uncaughtException",eE);try{await en.init(".phoenix"),ed=f({bus:ei,stream:"spec",debug:H,fileLogger:en,echo:!0}),S((e,t)=>ei.push("vite",e,t),{echo:el}),j({transports:[],log:(e,...t)=>{ei.push("webhook","warn"===e||"error"===e?e:"info",r(...t)),el&&process.stdout.write(`${r(e,...t)}
3
+ `)}}),es.browserConsole$.subscribe(e=>{ei.push("browser",e.level,e.source?`[${e.source}] ${e.message}`:e.message);let t=`[${e.source?`browser:${e.source}`:"browser"}] ${e.message}`;en.write("error"===e.level?"error":"warn",t),el&&process.stderr.write(`⚠️ ${t}
4
+ `)}),el&&(ec=b(ei,{echo:!0})),process.env.NODE_ENV="development",B&&(process.env.PERSISTENCE_MODE=B);let e=!B||"server"===B;e&&A&&(process.env.SERVER_URL=A);let t=e&&A?new v(A):void 0;if(ed.step("Starting development mode"),!await R("spec")){ed.error('Spec folder not found. Run "phoenix init" first.'),await ev(1);return}if(e&&(!A||!J))throw Error("Server persistence needs a server and a credential. Run `phoenix login <workspace>`, or create a development environment in Studio and paste its .env block into .env.");ed.step("Building project files");let{templateFiles:d,applicationSpec:w}=await s({sdkVersion:M,projectSlug:G,environmentSlug:V,cliUseWorkspace:W,enableEditor:Y,withLingui:X,force:q},{logger:ed});if(ed.success("Project files built successfully"),e&&A&&J){let e=n("."),t=await D(e);q||t?.PHOENIX_PROJECT_SLUG!==G||t.PHOENIX_ENVIRONMENT_SLUG!==V||t.PHOENIX_SERVER_URL!==A||t.PHOENIX_DEPLOYMENT_FINGERPRINT!==i(w)?(ed.step("Preparing development deployment"),await em({serverUrl:A,credential:J},{skipUpload:Q,debug:H})):ed.debug(`${e} matches the current development environment, skipping prepare`)}if(ea&&(ed=f({bus:ei,stream:"spec",debug:H,fileLogger:en}),ec=b(ei),ep=$(ei,{onQuit:()=>void ev(0)})),X?(ee=new p({logger:ed})).start():ed.warn("Continuous Lingui updates are disabled; missing catalogs were bootstrapped at startup. Pass --withLingui or set WITH_LINGUI=true to enable."),e&&(ed.step("Building webhooks"),await _.run("webhook",async()=>{await T({experimental:!0,skipNodeEnvOverride:!0,webhookEntryPoint:"./.phoenix/.swc/.phoenix/webhook.js"})})),e&&A&&J){let e=n("."),r=await D(e);if(!r?.DEPLOYMENT_ID)throw Error(`Webhook tunnel cannot start because ${e} has no DEPLOYMENT_ID. Rerun phoenix dev to prepare the development deployment.`);let o=await k();K=await N({experimental:!0,transport:P({serverUrl:A,credential:J,projectSlug:G,environmentSlug:V}),rejectionHint:l(J,G),environmentSlug:V,deploymentId:r.DEPLOYMENT_ID,sessionId:o,onStatus:(e,n)=>{t?.setStatus(e,{deploymentId:r.DEPLOYMENT_ID,sessionId:o,message:n??null})},onRequest:e=>t?.record(e)}),t?.setStatus("waiting",{deploymentId:r.DEPLOYMENT_ID,sessionId:o}),K.stopped.catch(e=>{eg(),ed.error(`Webhook tunnel failed: ${e instanceof Error?e.message:String(e)}`),ev(1)}),ed.success("Webhook tunnel started")}er=new c({pubsub:es,logger:ed,onRebuilt:t=>{ee?.trigger(),e&&eh(t)},onViteServerChange:e=>{z=e},sdkVersion:M,projectSlug:G,environmentSlug:V,cliUseWorkspace:W,enableEditor:Y??!0,inlineTemplates:!1,useServer:e});let I=new h;if(eo=new m({store:I,pubsub:es,variantPreviews:new g({projectRoot:process.cwd()},{store:I,logger:ed,projectWatcher:er})}),Y&&C){ed.step("Starting editor WebSocket server");let r=parseInt(C,10);Z=a({port:r,projectRoot:process.cwd(),application:eo,logger:ed,logBus:ei,tunnelMonitor:t,debug:H,prepareDeployment:e&&A&&J?()=>em({serverUrl:A,credential:J},{skipUpload:!0,debug:!1}):void 0}),await Z.ready,ed.debug(`Editor WebSocket server started on port ${r}`),(et=new u({projectRoot:process.cwd(),pubsub:es,logger:ed})).start()}let x=await E({templateFiles:d});z=await o(x),await z.listen(),ed.step("Starting Vite dev server"),er.start(z);let y=z.resolvedUrls?.local[0];if(ea)ed.success("Vite dev server started — watching for changes"),y&&ed.info(`Preview: ${y}`),Y&&C&&ed.info(`Editor WebSocket: ws://localhost:${C}`);else if(H)ed.success("Vite dev server started"),y&&ed.info(`Preview: ${y}`);else{let e=e=>{ei.push("spec","info",e),process.stdout.write(`${e}
5
+ `)};e("\n\uD83D\uDE80 Phoenix Dev Server\n"),y&&(e(`Preview: ${y}`),en.write("info",`Preview: ${y}`)),Y&&C&&e(`Editor WebSocket: ws://localhost:${C}`),e("\n\uD83D\uDC40 Watching for changes...\n")}}catch(e){eg(),ed.error(`Dev mode failed: ${e instanceof Error?e.message:String(e)}`,e),await ev(1)}};
@@ -3,5 +3,6 @@ export interface GeneratedEnvMarkers {
3
3
  readonly PHOENIX_PROJECT_SLUG?: string;
4
4
  readonly PHOENIX_ENVIRONMENT_SLUG?: string;
5
5
  readonly PHOENIX_SERVER_URL?: string;
6
+ readonly PHOENIX_DEPLOYMENT_FINGERPRINT?: string;
6
7
  }
7
8
  export declare const readGeneratedEnvMarkers: (outFile: string) => Promise<GeneratedEnvMarkers | null>;
@@ -1 +1 @@
1
- import{parse as E}from"dotenv";import{readFile as r}from"node:fs/promises";export const readGeneratedEnvMarkers=async e=>{try{let N=E(await r(e));return{DEPLOYMENT_ID:N.DEPLOYMENT_ID,PHOENIX_PROJECT_SLUG:N.PHOENIX_PROJECT_SLUG,PHOENIX_ENVIRONMENT_SLUG:N.PHOENIX_ENVIRONMENT_SLUG,PHOENIX_SERVER_URL:N.PHOENIX_SERVER_URL}}catch(E){if(E instanceof Error&&"code"in E&&"ENOENT"===E.code)return null;throw E}};
1
+ import{parse as E}from"dotenv";import{readFile as N}from"node:fs/promises";export const readGeneratedEnvMarkers=async r=>{try{let _=E(await N(r));return{DEPLOYMENT_ID:_.DEPLOYMENT_ID,PHOENIX_PROJECT_SLUG:_.PHOENIX_PROJECT_SLUG,PHOENIX_ENVIRONMENT_SLUG:_.PHOENIX_ENVIRONMENT_SLUG,PHOENIX_SERVER_URL:_.PHOENIX_SERVER_URL,PHOENIX_DEPLOYMENT_FINGERPRINT:_.PHOENIX_DEPLOYMENT_FINGERPRINT}}catch(E){if(E instanceof Error&&"code"in E&&"ENOENT"===E.code)return null;throw E}};
@@ -12,7 +12,7 @@ export { prepareDevelopmentEnvironment } from '../services/prepare-development-e
12
12
  export { prepareLocalEnvironment } from './prepare-local-environment-command.js';
13
13
  export { runFinishDeploymentCommand } from './finish-deployment-command.js';
14
14
  export { runDeploymentBuildEnvsCommand } from './deployment-build-envs-command.js';
15
- export { runDepsCommand } from './deps/index.js';
15
+ export { findSdkPeerMismatches, runDepsCommand } from './deps/index.js';
16
16
  export { runDevCommand } from './dev.js';
17
17
  export { runFixCommand } from './fix.js';
18
18
  export { runLinkCommand } from './link.js';
@@ -1 +1 @@
1
- export{runBuildCommand}from"./build.js";export{runCheckCommand}from"./check.js";export{runCleanCommand}from"./clean.js";export{runActivateDeploymentCommand}from"./activate-deployment.js";export{runCreateEnvironmentCommand}from"./create-environment.js";export{runCleanupEnvironmentCommand}from"./cleanup-environment.js";export{runListEnvironmentsCommand}from"./list-environments.js";export{runRegisterDeploymentCommand}from"./register-deployment.js";export{runPrepareDeploymentCommand}from"./prepare-deployment-command.js";export{prepareDevelopmentEnvironment}from"../services/prepare-development-environment.js";export{prepareLocalEnvironment}from"./prepare-local-environment-command.js";export{runFinishDeploymentCommand}from"./finish-deployment-command.js";export{runDeploymentBuildEnvsCommand}from"./deployment-build-envs-command.js";export{runDepsCommand}from"./deps/index.js";export{runDevCommand}from"./dev.js";export{runFixCommand}from"./fix.js";export{runLinkCommand}from"./link.js";export{runUnlinkCommand}from"./unlink.js";export{runPrepareCiCommand}from"./prepare-ci.js";export{runStoryCommand}from"./story.js";export{runStoryBuildCommand}from"./story-build.js";export{runStoryCreateCommand}from"./story-create.js";export{runStoryDevCommand}from"./story-dev.js";export{runInitCommand}from"./init.js";export{runSyncCommand}from"./sync.js";export{runChangelogCommand}from"./changelog.js";export{runDocsCommand}from"./docs.js";export{runInspectAssetsCommand}from"./inspect-assets.js";export{runScreenshotCommand}from"./screenshot.js";export{runStateCommand}from"./state.js";export{runDataCommand}from"./data.js";export{runSceneCommand}from"./scene.js";export{runVariantsCommand}from"./variants.js";export{runLoginCommand}from"./login.js";export{runLogoutCommand}from"./logout.js";export{runDeployCommand}from"./deploy.js";export{runFeedbackCommand}from"./feedback.js";export{runExtractSourcesCommand}from"./extract-sources-command.js";
1
+ export{runBuildCommand}from"./build.js";export{runCheckCommand}from"./check.js";export{runCleanCommand}from"./clean.js";export{runActivateDeploymentCommand}from"./activate-deployment.js";export{runCreateEnvironmentCommand}from"./create-environment.js";export{runCleanupEnvironmentCommand}from"./cleanup-environment.js";export{runListEnvironmentsCommand}from"./list-environments.js";export{runRegisterDeploymentCommand}from"./register-deployment.js";export{runPrepareDeploymentCommand}from"./prepare-deployment-command.js";export{prepareDevelopmentEnvironment}from"../services/prepare-development-environment.js";export{prepareLocalEnvironment}from"./prepare-local-environment-command.js";export{runFinishDeploymentCommand}from"./finish-deployment-command.js";export{runDeploymentBuildEnvsCommand}from"./deployment-build-envs-command.js";export{findSdkPeerMismatches,runDepsCommand}from"./deps/index.js";export{runDevCommand}from"./dev.js";export{runFixCommand}from"./fix.js";export{runLinkCommand}from"./link.js";export{runUnlinkCommand}from"./unlink.js";export{runPrepareCiCommand}from"./prepare-ci.js";export{runStoryCommand}from"./story.js";export{runStoryBuildCommand}from"./story-build.js";export{runStoryCreateCommand}from"./story-create.js";export{runStoryDevCommand}from"./story-dev.js";export{runInitCommand}from"./init.js";export{runSyncCommand}from"./sync.js";export{runChangelogCommand}from"./changelog.js";export{runDocsCommand}from"./docs.js";export{runInspectAssetsCommand}from"./inspect-assets.js";export{runScreenshotCommand}from"./screenshot.js";export{runStateCommand}from"./state.js";export{runDataCommand}from"./data.js";export{runSceneCommand}from"./scene.js";export{runVariantsCommand}from"./variants.js";export{runLoginCommand}from"./login.js";export{runLogoutCommand}from"./logout.js";export{runDeployCommand}from"./deploy.js";export{runFeedbackCommand}from"./feedback.js";export{runExtractSourcesCommand}from"./extract-sources-command.js";
@@ -1 +1 @@
1
- import{generateProjectFiles as e}from"../application-spec/index.js";export const runSyncCommand=async(s,c)=>{let{logger:i}=c,{sdkVersion:r,projectSlug:t,environmentSlug:n,cliUseWorkspace:o,enableEditor:l,force:p=!1,analyze:a=!1}=s;try{i.step("Syncing Phoenix project files"),i.step("Building project files"),await e({sdkVersion:r,projectSlug:t,environmentSlug:n,cliUseWorkspace:o,enableEditor:l,inlineTemplates:!0,force:p,analyze:a},c),i.success("Project files built successfully"),i.success("Sync completed successfully!")}catch(e){i.error(`Sync failed: ${e instanceof Error?e.message:String(e)}`,e),process.exit(1)}};
1
+ import{generateProjectFiles as e,logDiagnostics as s}from"../application-spec/index.js";export const runSyncCommand=async(c,t)=>{let{logger:i}=t,{sdkVersion:r,projectSlug:n,environmentSlug:l,cliUseWorkspace:o,enableEditor:p,force:a=!1,analyze:u=!1}=c;try{i.step("Syncing Phoenix project files"),i.step("Building project files");let{diagnostics:c}=await e({sdkVersion:r,projectSlug:n,environmentSlug:l,cliUseWorkspace:o,enableEditor:p,inlineTemplates:!0,force:a,analyze:u},t);s(c,i),i.success("Project files built successfully"),i.success("Sync completed successfully!")}catch(e){i.error(`Sync failed: ${e instanceof Error?e.message:String(e)}`,e),process.exit(1)}};
@@ -0,0 +1 @@
1
+ export { LINGUI_CONFIG_PATH, bootstrapLinguiCatalogs, compileLingui, extractAndCompileLingui } from './lingui.js';
@@ -0,0 +1 @@
1
+ export{LINGUI_CONFIG_PATH,bootstrapLinguiCatalogs,compileLingui,extractAndCompileLingui}from"./lingui.js";
@@ -1,10 +1,11 @@
1
1
  import { type Logger } from '../utils/index.js';
2
2
  /**
3
3
  * The project's Lingui configuration, which sync generates, relative to the project root. The Lingui
4
- * CLI, the Lingui Vite plugin and the Lingui macros in the Vite builds are always given this path, so a
4
+ * CLI, the Lingui Vite plugin and the Lingui macros in the Vite builds are given this path, so a
5
5
  * `.linguirc` that earlier SDK versions left in the project root is not read. Lingui searches the
6
6
  * working directory instead only when the named file is missing; generation writes it with the rest of
7
- * `.phoenix/` before Phoenix runs Lingui or Vite.
7
+ * `.phoenix/` before Phoenix runs Lingui or Vite. Missing-catalog bootstrap compiles with a temporary
8
+ * copy that stages output while keeping every locale available for fallback reads.
8
9
  */
9
10
  export declare const LINGUI_CONFIG_PATH = ".phoenix/.linguirc";
10
11
  interface LinguiCommandContext {
@@ -12,4 +13,6 @@ interface LinguiCommandContext {
12
13
  }
13
14
  export declare const compileLingui: (context: LinguiCommandContext) => Promise<void>;
14
15
  export declare const extractAndCompileLingui: (context: LinguiCommandContext) => Promise<void>;
16
+ /** Creates only catalogs missing from a project's generated domain imports; continuous updates stay opt-in. */
17
+ export declare const bootstrapLinguiCatalogs: (locales: readonly string[], context: LinguiCommandContext) => Promise<void>;
15
18
  export {};
@@ -0,0 +1 @@
1
+ import{constants as i}from"node:fs";import{copyFile as a,mkdir as t,mkdtemp as e,readFile as o,rm as n,writeFile as s}from"node:fs/promises";import{dirname as r,join as l}from"node:path";import{exists as c,runSdkTool as g}from"../utils/index.js";export const LINGUI_CONFIG_PATH=".phoenix/.linguirc";let p=async i=>{await g({tool:{packageName:"@lingui/cli",binName:"lingui"},args:["extract","--config",LINGUI_CONFIG_PATH],description:"Extracting i18n messages",quiet:!0,extraEnv:{LC_ALL:"en_US.UTF-8"}},i)};export const compileLingui=async i=>{await g({tool:{packageName:"@lingui/cli",binName:"lingui"},args:["compile","--config",LINGUI_CONFIG_PATH],description:"Compiling i18n messages",quiet:!0},i)};export const extractAndCompileLingui=async i=>{await p(i),await compileLingui(i)};export const bootstrapLinguiCatalogs=async(p,m)=>{let u,f=(await Promise.all(p.map(async i=>await c(`src/locales/${i}/messages.ts`)?[]:[i]))).flat();if(0!==f.length)try{m.logger.info(`Bootstrapping missing i18n catalogs: ${f.join(", ")}`);let n=(await Promise.all(f.map(async i=>await c(`src/locales/${i}/messages.po`)?[]:[i]))).flat();n.length>0&&await g({tool:{packageName:"@lingui/cli",binName:"lingui"},args:["extract","--config",LINGUI_CONFIG_PATH,"--locale",n.join(",")],description:"Extracting missing i18n catalogs",quiet:!0,extraEnv:{LC_ALL:"en_US.UTF-8"}},m);let p=JSON.parse(await o(LINGUI_CONFIG_PATH,"utf-8"));if("object"!=typeof p||null===p||Array.isArray(p))throw Error(`${LINGUI_CONFIG_PATH} is not a configuration object`);u=await e(".phoenix/lingui-bootstrap-");let N=l(u,".linguirc");for(let e of(await s(N,JSON.stringify({...p,catalogsMergePath:l(u,"compiled","{locale}","messages").replaceAll("\\","/")})),await g({tool:{packageName:"@lingui/cli",binName:"lingui"},args:["compile","--config",N],description:"Compiling missing i18n catalogs",quiet:!0},m),f)){let o=l("src","locales",e,"messages.ts");await t(r(o),{recursive:!0}),await a(l(u,"compiled",e,"messages.ts"),o,i.COPYFILE_EXCL)}}catch(i){throw Error(`Cannot bootstrap i18n catalogs for ${f.join(", ")}: ${i instanceof Error?i.message:String(i)}. Fix the reported Lingui error and restart phoenix dev, or run phoenix sync to update all catalogs.`,{cause:i})}finally{void 0!==u&&await n(u,{recursive:!0,force:!0})}};
@@ -1,4 +1,5 @@
1
1
  import { type ViteDevServer } from 'vite';
2
+ import type { ApplicationSpec } from '#package/application-spec';
2
3
  import type { Logger } from '../utils/index.js';
3
4
  import type { PhoenixPubSub } from './phoenix-pubsub.js';
4
5
  import type { VariantFileEdit } from './variant-file-session.js';
@@ -8,7 +9,8 @@ export declare const IGNORED_PATTERNS: string[];
8
9
  export interface ApplicationSpecProjectWatcherConfig {
9
10
  readonly pubsub: PhoenixPubSub;
10
11
  readonly logger: Logger;
11
- readonly onRebuilt?: () => void;
12
+ /** Called with the application spec of every rebuild that succeeded. */
13
+ readonly onRebuilt?: (applicationSpec: ApplicationSpec) => void;
12
14
  readonly onViteServerChange?: (viteServer: ViteDevServer) => void;
13
15
  readonly sdkVersion: string;
14
16
  readonly projectSlug: string;
@@ -1,4 +1,4 @@
1
- import{mkdirSync as e}from"fs";import{resolve as t}from"path";import i from"promise-queue";import{Subject as s,buffer as r,debounceTime as o}from"rxjs";import{createServer as n,normalizePath as l}from"vite";import{watch as h}from"#package/watch";import{ApplicationSpecBuilder as a}from"../application-spec/application-spec-builder.js";import{logDiagnostics as c}from"../application-spec/metrics/index.js";import{syncTemplateFiles as u}from"../application-spec/template-files.js";import{buildWebhooks as p}from"../webhooks/index.js";import{getViteDevConfig as g}from"./vite-config.js";export const WATCH_PATTERNS=["spec/**/*.{yaml,yml}","src/**/*.{ts,tsx,yaml,yml,json,html,css}","templates/*.html",".env",".env.generated",".phoenix/.env.generated"];export const IGNORED_PATTERNS=["src/locales/**/*.{ts,tsx}",".phoenix/!(.env.generated)/**"];export class ApplicationSpecProjectWatcher{watcher=null;subscription=null;rebuildQueue=new i(1,1/0);changeSubject$=new s;viteServer=null;pubsub;logger;onRebuilt;onViteServerChange;builder;useServer;isShuttingDown=!1;suspended=!1;heldChanges=new Set;constructor(e){this.pubsub=e.pubsub,this.logger=e.logger,this.onRebuilt=e.onRebuilt,this.onViteServerChange=e.onViteServerChange,this.builder=new a({logger:e.logger,sdkVersion:e.sdkVersion,projectSlug:e.projectSlug,environmentSlug:e.environmentSlug,cliUseWorkspace:e.cliUseWorkspace,enableEditor:e.enableEditor,inlineTemplates:e.inlineTemplates}),this.useServer=e.useServer}start(e){this.viteServer=e,this.setupFileWatcher(),this.setupRebuildSubscription()}applyVariantFiles(e){this.rebuildQueue.add(async()=>{this.isShuttingDown||await this.rebuild(new Set(e.map(e=>e.fileName)),!1,!0)})}suspend(){this.suspended=!0}resume(){for(let e of(this.suspended=!1,this.heldChanges))this.changeSubject$.next(e);this.heldChanges.clear()}async close(){this.isShuttingDown=!0,this.watcher&&(await this.watcher.close(),this.watcher=null),this.subscription?.unsubscribe(),this.changeSubject$.complete()}setupFileWatcher(){e(t(process.cwd(),"src"),{recursive:!0}),this.watcher=h(WATCH_PATTERNS,{ignored:IGNORED_PATTERNS,cwd:process.cwd(),persistent:!0,ignoreInitial:!1}),this.watcher.on("all",(e,t)=>{if("change"===e||"add"===e||"unlink"===e){if(this.suspended)return void this.heldChanges.add(t);this.logger.info(`
1
+ import{mkdirSync as e}from"fs";import{resolve as t}from"path";import i from"promise-queue";import{Subject as s,buffer as r,debounceTime as o}from"rxjs";import{createServer as n,normalizePath as l}from"vite";import{watch as a}from"#package/watch";import{ApplicationSpecBuilder as h}from"../application-spec/application-spec-builder.js";import{logDiagnostics as c}from"../application-spec/metrics/index.js";import{syncTemplateFiles as u}from"../application-spec/template-files.js";import{buildWebhooks as p}from"../webhooks/index.js";import{getViteDevConfig as g}from"./vite-config.js";export const WATCH_PATTERNS=["package.json","spec/**/*.{yaml,yml}","src/**/*.{ts,tsx,yaml,yml,json,html,css}","templates/*.html",".env",".env.generated",".phoenix/.env.generated"];export const IGNORED_PATTERNS=["src/locales/**/*.{ts,tsx}",".phoenix/!(.env.generated)/**"];export class ApplicationSpecProjectWatcher{watcher=null;subscription=null;rebuildQueue=new i(1,1/0);changeSubject$=new s;viteServer=null;pubsub;logger;onRebuilt;onViteServerChange;builder;useServer;isShuttingDown=!1;suspended=!1;heldChanges=new Set;constructor(e){this.pubsub=e.pubsub,this.logger=e.logger,this.onRebuilt=e.onRebuilt,this.onViteServerChange=e.onViteServerChange,this.builder=new h({logger:e.logger,sdkVersion:e.sdkVersion,projectSlug:e.projectSlug,environmentSlug:e.environmentSlug,cliUseWorkspace:e.cliUseWorkspace,enableEditor:e.enableEditor,inlineTemplates:e.inlineTemplates}),this.useServer=e.useServer}start(e){this.viteServer=e,this.setupFileWatcher(),this.setupRebuildSubscription()}applyVariantFiles(e){this.rebuildQueue.add(async()=>{this.isShuttingDown||await this.rebuild(new Set(e.map(e=>e.fileName)),!1,!0)})}suspend(){this.suspended=!0}resume(){for(let e of(this.suspended=!1,this.heldChanges))this.changeSubject$.next(e);this.heldChanges.clear()}async close(){this.isShuttingDown=!0,this.watcher&&(await this.watcher.close(),this.watcher=null),this.subscription?.unsubscribe(),this.changeSubject$.complete()}setupFileWatcher(){e(t(process.cwd(),"src"),{recursive:!0}),this.watcher=a(WATCH_PATTERNS,{ignored:IGNORED_PATTERNS,cwd:process.cwd(),persistent:!0,ignoreInitial:!1}),this.watcher.on("all",(e,t)=>{if("change"===e||"add"===e||"unlink"===e){if(this.suspended)return void this.heldChanges.add(t);this.logger.info(`
2
2
  📝 Detected ${e}: ${t}`),this.changeSubject$.next(t)}})}setupRebuildSubscription(){let e=this.changeSubject$.pipe(o(10));this.subscription=this.changeSubject$.pipe(r(e)).subscribe(e=>{let t=new Set(e),i=t.has(".env");this.rebuildQueue.add(async()=>{this.isShuttingDown||(this.logger.info(`
3
3
  🔨 Rebuilding spec files...
4
- `),await this.rebuild(t,i,!1))})})}async rebuild(e,i,s){try{let r=this.viteServer;if(!r)throw Error("Cannot rebuild the project: the watcher has no Vite server yet, because it was not started. Start the watcher before applying files");let o=await u();if(this.isShuttingDown)return;let h=await this.builder.build({compile:!s});if(this.isShuttingDown)return;if(c(h.diagnostics,this.logger),!h.ok){for(let e of h.errors)this.logger.error(`[${e.code}] ${e.message}${e.file?` (${e.file})`:""}`);this.pubsub.specFile$.next({rawProjectFiles:h.rawProjectFiles,projectRoot:process.cwd()});return}this.onRebuilt?.();let{application:a,changedFiles:d}=h,w=r.moduleGraph,b=Date.now(),f=new Set,S=process.cwd(),m=e=>{let t=w.getModulesByFile(l(e));if(t)for(let e of t)w.invalidateModule(e,f,b,!0)};for(let i of e)m(t(S,i));for(let e of d)m(t(S,`.phoenix/${e.path}`));if(this.pubsub.specFile$.next({rawProjectFiles:a.rawProjectFiles,projectRoot:process.cwd(),configurationSchemaHash:a.applicationSpec.configurator.configurationSchema.hash}),this.isShuttingDown)return;if(i){if(await r.close(),this.isShuttingDown)return;let e=await g({templateFiles:o});if(this.isShuttingDown)return;let t=await n(e);if(this.isShuttingDown||(await t.listen(),this.isShuttingDown))return void await t.close();this.viteServer=t,this.onViteServerChange?.(t),this.logger.success("Vite server restarted (env changed)")}if(this.useServer&&!s){if(this.logger.step("Building webhooks"),await p({experimental:!0,skipNodeEnvOverride:!0,webhookEntryPoint:"./.phoenix/.swc/.phoenix/webhook.js",preserveExistingOutput:!0}),this.isShuttingDown)return;this.logger.success("Webhooks rebuilt successfully")}this.logger.success("Project files rebuilt successfully")}catch(e){this.logger.error(`Build failed: ${e instanceof Error?e.message:String(e)}`,e)}}}
4
+ `),await this.rebuild(t,i,!1))})})}async rebuild(e,i,s){try{let r=this.viteServer;if(!r)throw Error("Cannot rebuild the project: the watcher has no Vite server yet, because it was not started. Start the watcher before applying files");let o=await u();if(this.isShuttingDown)return;let a=await this.builder.build({compile:!s});if(this.isShuttingDown)return;if(c(a.diagnostics,this.logger),!a.ok){for(let e of a.errors)this.logger.error(`[${e.code}] ${e.message}${e.file?` (${e.file})`:""}`);this.pubsub.specFile$.next({rawProjectFiles:a.rawProjectFiles,projectRoot:process.cwd()});return}let{application:h,changedFiles:d}=a;this.onRebuilt?.(h.applicationSpec);let w=r.moduleGraph,b=Date.now(),f=new Set,S=process.cwd(),m=e=>{let t=w.getModulesByFile(l(e));if(t)for(let e of t)w.invalidateModule(e,f,b,!0)};for(let i of e)m(t(S,i));for(let e of d)m(t(S,`.phoenix/${e.path}`));if(this.pubsub.specFile$.next({rawProjectFiles:h.rawProjectFiles,projectRoot:process.cwd(),configurationSchemaHash:h.applicationSpec.configurator.configurationSchema.hash}),this.isShuttingDown)return;if(i){if(await r.close(),this.isShuttingDown)return;let e=await g({templateFiles:o});if(this.isShuttingDown)return;let t=await n(e);if(this.isShuttingDown||(await t.listen(),this.isShuttingDown))return void await t.close();this.viteServer=t,this.onViteServerChange?.(t),this.logger.success("Vite server restarted (env changed)")}if(this.useServer&&!s){if(this.logger.step("Building webhooks"),await p({experimental:!0,skipNodeEnvOverride:!0,webhookEntryPoint:"./.phoenix/.swc/.phoenix/webhook.js",preserveExistingOutput:!0}),this.isShuttingDown)return;this.logger.success("Webhooks rebuilt successfully")}this.logger.success("Project files rebuilt successfully")}catch(e){this.logger.error(`Build failed: ${e instanceof Error?e.message:String(e)}`,e)}}}
@@ -8,6 +8,7 @@ export { MockTemplateWatcher, type MockTemplateWatcherConfig } from './mock-temp
8
8
  export { ApplicationSpecProjectWatcher, type ApplicationSpecProjectWatcherConfig, } from './application-spec-project-watcher.js';
9
9
  export { ApplicationSpecStoryWatcher, type ApplicationSpecStoryWatcherConfig, } from './application-spec-story-watcher.js';
10
10
  export { LinguiWatcher, type LinguiWatcherConfig } from './lingui-watcher.js';
11
+ export { bootstrapLinguiCatalogs, extractAndCompileLingui } from '../lingui/index.js';
11
12
  export { loadMockTemplates, parseMockTemplateYaml, type LoadMockTemplatesResult, type ParsedMockTemplate, } from './spec-files.js';
12
13
  export { LOG_STREAMS, LogBus, type LogEntry, type LogLevel, type LogPage, type LogQuery, type LogStream, } from './log-bus.js';
13
14
  export { createBusLogger, type CreateBusLoggerOptions } from './bus-logger.js';
@@ -1 +1 @@
1
- export{PhoenixPubSub}from"./phoenix-pubsub.js";export{PhoenixStore}from"./phoenix-store.js";export{PhoenixApplication}from"./phoenix-application.js";export{VariantFileSession}from"./variant-file-session.js";export{VariantPreviewService}from"./variant-preview-service.js";export{MockTemplateWatcher}from"./mock-template-watcher.js";export{ApplicationSpecProjectWatcher}from"./application-spec-project-watcher.js";export{ApplicationSpecStoryWatcher}from"./application-spec-story-watcher.js";export{LinguiWatcher}from"./lingui-watcher.js";export{loadMockTemplates,parseMockTemplateYaml}from"./spec-files.js";export{LOG_STREAMS,LogBus}from"./log-bus.js";export{createBusLogger}from"./bus-logger.js";export{patchConsole}from"./console-capture.js";export{WebhookTunnelMonitor}from"./webhook-tunnel-monitor.js";export{compileWithSwc,watchWithSwc}from"./swc.js";export{STORY_DEV_MARKER_PATH,readActiveStoryDevMarker}from"./story-dev-marker.js";export{composeDefaultBanner}from"./phx-banner-plugin.js";export{getViteBuildConfigs,getViteDevConfig,setViteLogSink}from"./vite-config.js";export{getServerCredentials,removeServerCredentials,saveServerCredentials}from"./cli-credentials.js";export{createSourceArchive,extractSourceArchive}from"./source-archive.js";export{resolveSignedInDevelopmentEnvironment}from"./signed-in-development-environment.js";export{DEFAULT_PHOENIX_REGION,PHOENIX_REGIONS,PUBLIC_PHOENIX_REGIONS,getRegionServerUrl,getRegionStudioUrl}from"./phoenix-regions.js";
1
+ export{PhoenixPubSub}from"./phoenix-pubsub.js";export{PhoenixStore}from"./phoenix-store.js";export{PhoenixApplication}from"./phoenix-application.js";export{VariantFileSession}from"./variant-file-session.js";export{VariantPreviewService}from"./variant-preview-service.js";export{MockTemplateWatcher}from"./mock-template-watcher.js";export{ApplicationSpecProjectWatcher}from"./application-spec-project-watcher.js";export{ApplicationSpecStoryWatcher}from"./application-spec-story-watcher.js";export{LinguiWatcher}from"./lingui-watcher.js";export{bootstrapLinguiCatalogs,extractAndCompileLingui}from"../lingui/index.js";export{loadMockTemplates,parseMockTemplateYaml}from"./spec-files.js";export{LOG_STREAMS,LogBus}from"./log-bus.js";export{createBusLogger}from"./bus-logger.js";export{patchConsole}from"./console-capture.js";export{WebhookTunnelMonitor}from"./webhook-tunnel-monitor.js";export{compileWithSwc,watchWithSwc}from"./swc.js";export{STORY_DEV_MARKER_PATH,readActiveStoryDevMarker}from"./story-dev-marker.js";export{composeDefaultBanner}from"./phx-banner-plugin.js";export{getViteBuildConfigs,getViteDevConfig,setViteLogSink}from"./vite-config.js";export{getServerCredentials,removeServerCredentials,saveServerCredentials}from"./cli-credentials.js";export{createSourceArchive,extractSourceArchive}from"./source-archive.js";export{resolveSignedInDevelopmentEnvironment}from"./signed-in-development-environment.js";export{DEFAULT_PHOENIX_REGION,PHOENIX_REGIONS,PUBLIC_PHOENIX_REGIONS,getRegionServerUrl,getRegionStudioUrl}from"./phoenix-regions.js";
@@ -1 +1 @@
1
- import e from"promise-queue";import{Subject as t,buffer as i,debounceTime as s}from"rxjs";import{watch as r}from"#package/watch";import{compileLingui as n,extractAndCompileLingui as o}from"./lingui.js";let c=["src/**/*.{ts,tsx}","src/locales/**/*.po"],g=["src/locales/**/*.{ts,tsx}"];export class LinguiWatcher{watcher=null;subscription=null;runQueue=new e(1,1/0);changeSubject$=new t;logger;isShuttingDown=!1;constructor(e){this.logger=e.logger}start(){this.setupFileWatcher(),this.setupRunSubscription()}trigger(){this.changeSubject$.next("<codegen-rebuild>")}async close(){this.isShuttingDown=!0,this.watcher&&(await this.watcher.close(),this.watcher=null),this.subscription?.unsubscribe(),this.changeSubject$.complete()}setupFileWatcher(){this.watcher=r(c,{ignored:g,cwd:process.cwd(),ignoreInitial:!0,persistent:!0}),this.watcher.on("all",(e,t)=>{("change"===e||"add"===e||"unlink"===e)&&(this.logger.debug(`Lingui source ${e}: ${t}`),this.changeSubject$.next(t))}).on("error",e=>{this.logger.error(`Lingui watcher error: ${e instanceof Error?e.message:String(e)}`,e)})}setupRunSubscription(){let e=this.changeSubject$.pipe(s(200));this.subscription=this.changeSubject$.pipe(i(e)).subscribe(e=>{let t=e.some(e=>!e.endsWith(".po"));this.runQueue.add(async()=>{if(!this.isShuttingDown)try{t?(this.logger.info("Lingui sources changed, extracting and compiling i18n messages..."),await o({logger:this.logger})):(this.logger.info("Lingui catalogs changed, compiling i18n messages..."),await n({logger:this.logger}))}catch(e){this.logger.error(`Lingui update failed: ${e instanceof Error?e.message:String(e)}`,e)}})})}}
1
+ import e from"promise-queue";import{Subject as i,buffer as t,debounceTime as s}from"rxjs";import{watch as r}from"#package/watch";import{compileLingui as n,extractAndCompileLingui as o}from"../lingui/index.js";let c=["src/**/*.{ts,tsx}","src/locales/**/*.po"],g=["src/locales/**/*.{ts,tsx}"];export class LinguiWatcher{watcher=null;subscription=null;runQueue=new e(1,1/0);changeSubject$=new i;logger;isShuttingDown=!1;constructor(e){this.logger=e.logger}start(){this.setupFileWatcher(),this.setupRunSubscription()}trigger(){this.changeSubject$.next("<codegen-rebuild>")}async close(){this.isShuttingDown=!0,this.watcher&&(await this.watcher.close(),this.watcher=null),this.subscription?.unsubscribe(),this.changeSubject$.complete()}setupFileWatcher(){this.watcher=r(c,{ignored:g,cwd:process.cwd(),ignoreInitial:!0,persistent:!0}),this.watcher.on("all",(e,i)=>{("change"===e||"add"===e||"unlink"===e)&&(this.logger.debug(`Lingui source ${e}: ${i}`),this.changeSubject$.next(i))}).on("error",e=>{this.logger.error(`Lingui watcher error: ${e instanceof Error?e.message:String(e)}`,e)})}setupRunSubscription(){let e=this.changeSubject$.pipe(s(200));this.subscription=this.changeSubject$.pipe(t(e)).subscribe(e=>{let i=e.some(e=>!e.endsWith(".po"));this.runQueue.add(async()=>{if(!this.isShuttingDown)try{i?(this.logger.info("Lingui sources changed, extracting and compiling i18n messages..."),await o({logger:this.logger})):(this.logger.info("Lingui catalogs changed, compiling i18n messages..."),await n({logger:this.logger}))}catch(e){this.logger.error(`Lingui update failed: ${e instanceof Error?e.message:String(e)}`,e)}})})}}
@@ -1,2 +1,2 @@
1
- import{writeFile as e}from"node:fs/promises";import{createApiBaseClient as i}from"#package/client";import{resolveApplicationSpecDeploymentData as t}from"../application-spec/index.js";import{formatEnvContent as r,uploadFilesWithPresignedUrls as a}from"../utils/index.js";import{getDevelopmentCredentialHint as o,getDevelopmentHeaders as s}from"./development-credential.js";export const prepareDevelopmentEnvironment=async(n,l)=>{let{logger:p}=l,{projectSlug:d,environmentSlug:m,serverUrl:c,credential:h,outFile:v,skipUpload:f,overrideSchema:u,projectVersion:g}=n;p.step("Preparing development environment"),p.info(`Preparing development environment for project "${d}", environment "${m}"`);let E=i(c);p.debug(`Using server URL: ${c}`);let b=await t({skipUpload:f,logger:p});p.info("Preparing and activating the development deployment on the server...");let{data:P,error:$}=await E.POST("/environments/development/prepare",{body:{applicationVersion:b.applicationVersion,publishedDataHash:b.publishedDataHash,useAuthHook:b.useAuthHook,overrideSchema:u,configurationSchema:{version:b.schemaVersion,schema:b.schema},adminConfigurationSchema:b.adminSchema?{schema:b.adminSchema,version:b.adminSchemaVersion}:void 0,chat:b.chat,embeddings:b.embeddings,...b.assistant?{assistant:!0}:{},acl:{canCreate:b.aclCanCreate},privateFiles:[...b.assets.privateFilePaths],publicFiles:[...b.assets.publicFilePaths],sdkVersion:g},headers:s(h,{projectSlug:d,environmentSlug:m})});if($)throw Error(`Failed to prepare development deployment for ${d}/${m} on ${c}: ${$.message}. ${o(h,d)}`);if(!P)throw Error("No data returned from server while preparing the development deployment.");let{environmentVariables:y,privateUploadUrls:w,publicUploadUrls:F}=P;if(f)p.debug("Skipping file upload");else{p.info("Uploading files to S3...");let e={privateFiles:[...b.assets.privateFilesFullPaths].map(e=>{let i=e.replace("assets/private/",""),t=w[i];if(!t)throw Error(`No upload URL provided for private file ${i}, the server did not return a presigned URL for this file, please verify the file exists in the assets/private directory.`);return{localPath:e,uploadUrl:t}}),publicFiles:[...b.assets.publicFilesFullPaths].map(e=>{let i=e.replace("assets/public/",""),t=F[i];if(!t)throw Error(`No upload URL provided for public file ${i}, the server did not return a presigned URL for this file, please verify the file exists in the assets/public directory.`);return{localPath:e,uploadUrl:t}})};await a(e,{logger:p})}try{await e(v,`${r({...y,PHOENIX_PROJECT_SLUG:d,PHOENIX_ENVIRONMENT_SLUG:m,PHOENIX_SERVER_URL:c})}
1
+ import{writeFile as e}from"node:fs/promises";import{createApiBaseClient as i}from"#package/client";import{resolveApplicationSpecDeploymentData as t}from"../application-spec/index.js";import{formatEnvContent as r,uploadFilesWithPresignedUrls as a}from"../utils/index.js";import{getDevelopmentCredentialHint as o,getDevelopmentHeaders as s}from"./development-credential.js";export const prepareDevelopmentEnvironment=async(n,l)=>{let{logger:p}=l,{projectSlug:d,environmentSlug:m,serverUrl:c,credential:h,outFile:v,skipUpload:f,overrideSchema:u,projectVersion:E}=n;p.step("Preparing development environment"),p.info(`Preparing development environment for project "${d}", environment "${m}"`);let g=i(c);p.debug(`Using server URL: ${c}`);let P=await t({skipUpload:f,logger:p});p.info("Preparing and activating the development deployment on the server...");let{data:b,error:$}=await g.POST("/environments/development/prepare",{body:{applicationVersion:P.applicationVersion,publishedDataHash:P.publishedDataHash,useAuthHook:P.useAuthHook,overrideSchema:u,configurationSchema:{version:P.schemaVersion,schema:P.schema},adminConfigurationSchema:P.adminSchema?{schema:P.adminSchema,version:P.adminSchemaVersion}:void 0,chat:P.chat,embeddings:P.embeddings,...P.assistant?{assistant:!0}:{},acl:{canCreate:P.aclCanCreate},privateFiles:[...P.assets.privateFilePaths],publicFiles:[...P.assets.publicFilePaths],sdkVersion:E},headers:s(h,{projectSlug:d,environmentSlug:m})});if($)throw Error(`Failed to prepare development deployment for ${d}/${m} on ${c}: ${$.message}. ${o(h,d)}`);if(!b)throw Error("No data returned from server while preparing the development deployment.");let{environmentVariables:y,privateUploadUrls:N,publicUploadUrls:w}=b;if(f)p.debug("Skipping file upload");else{p.info("Uploading files to S3...");let e={privateFiles:[...P.assets.privateFilesFullPaths].map(e=>{let i=e.replace("assets/private/",""),t=N[i];if(!t)throw Error(`No upload URL provided for private file ${i}, the server did not return a presigned URL for this file, please verify the file exists in the assets/private directory.`);return{localPath:e,uploadUrl:t}}),publicFiles:[...P.assets.publicFilesFullPaths].map(e=>{let i=e.replace("assets/public/",""),t=w[i];if(!t)throw Error(`No upload URL provided for public file ${i}, the server did not return a presigned URL for this file, please verify the file exists in the assets/public directory.`);return{localPath:e,uploadUrl:t}})};await a(e,{logger:p})}try{await e(v,`${r({...y,PHOENIX_PROJECT_SLUG:d,PHOENIX_ENVIRONMENT_SLUG:m,PHOENIX_SERVER_URL:c,PHOENIX_DEPLOYMENT_FINGERPRINT:P.fingerprint})}
2
2
  `),p.debug(`Environment variables written to ${v}`)}catch{throw Error(`Failed to write environment variables to file at ${v}, please verify you have write permissions to this location.`)}p.info(`Project: ${d}`),p.info(`Environment: ${m}`),p.info(`Deployment ID: ${y.DEPLOYMENT_ID}`),p.success("Development environment prepared successfully!")};
@@ -1 +1 @@
1
- import{getConfig as e}from"@lingui/conf";import{lingui as i}from"@lingui/vite-plugin";import t from"@vitejs/plugin-react";import{mkdir as n,readFile as r,writeFile as o}from"fs/promises";import a from"lodash-es/camelCase.js";import{createRequire as s}from"node:module";import{dirname as l,resolve as m}from"path";import{createLogger as f}from"vite";import p from"vite-plugin-css-injected-by-js";import{isUsingLocalSdk as d}from"../utils/package-info.js";import{loadFrontendConfigModule as c}from"./frontend-config.js";import{LINGUI_CONFIG_PATH as g}from"./lingui.js";import{phxBannerPlugin as u}from"./phx-banner-plugin.js";import{phxCspNoncePlugin as h}from"./phx-csp-nonce-plugin.js";import{phxGlobalIsolationPlugin as b}from"./phx-global-isolation-plugin.js";import{phxLicensesPlugin as S}from"./phx-licenses-plugin.js";import{phxVariantPreviewsPlugin as y}from"./phx-variant-previews-plugin.js";let O=null;export const setViteLogSink=(e,i={})=>{O={sink:e,echo:i.echo??!1}};let x=["react","react-dom","three","@react-three/fiber","@react-three/drei","@react-three/postprocessing","its-fine","@emotion/react","@emotion/styled","@mui/material","@mui/system","@tanstack/react-query","rxjs"],D=()=>[s(import.meta.url).resolve("@lingui/babel-plugin-lingui-macro"),{linguiConfig:e({configPath:g})}],E=e=>{let i=e.DEPLOYMENT_ID;if("string"!=typeof i)throw Error("DEPLOYMENT_ID is required in runtime config");return i};export const getViteDevConfig=async e=>{var n,r;let o,a,p=d(),u=c(),h=u.readRuntimeConfig(),S=u.frontendBuildConfig,v=D(),j=Object.fromEntries((e?.templateFiles??[]).map(e=>[e,`.phoenix/${e}`]));return{...O&&{customLogger:(n=O.sink,r=O.echo,o=f(),{get hasWarned(){return o.hasWarned},info:(e,i)=>{n("info",e),r&&o.info(e,i)},warn:(e,i)=>{n("warn",e),r&&o.warn(e,i)},warnOnce:(e,i)=>{n("warn",e),r&&o.warnOnce(e,i)},error:(e,i)=>{n("error",e),r&&o.error(e,i)},clearScreen:e=>{r&&o.clearScreen(e)},hasErrorLogged:e=>o.hasErrorLogged(e)}),...O.echo?{}:{clearScreen:!1}},mode:"development",optimizeDeps:{exclude:["@swc/wasm-web"],...p&&{entries:["index.html","admin.html",...e?.templateFiles??[]],force:!0}},...p&&{resolve:{alias:(a=s(m(process.cwd(),"package.json")),x.flatMap(e=>{try{let i=l(a.resolve(`${e}/package.json`));return[{find:RegExp(`^${e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}(/|$)`),replacement:`${i}$1`}]}catch{return[]}}))}},plugins:[t({babel:{plugins:[v]}}),i({configPath:g}),{name:"vite:runtime-config",apply:(e,i)=>"build"===i.command||"development"===i.mode,config:e=>{let i=u.readRuntimeConfig(),t=u.frontendBuildConfig;return{...e,define:{...e.define,"phx.frontendEnv":JSON.stringify(i),"globalThis.PHX_SCHEMA_VALIDATOR":JSON.stringify(t.jsonSchemaValidator),"globalThis.PHX_GLTF_DECODER":JSON.stringify(t.gltfDecoder)}}}},b({getDeploymentId:()=>E(u.readRuntimeConfig())}),y()],define:{"process.env":{},"import.meta.env.DEV":!0,"import.meta.env.PROD":!1,"phx.frontendEnv":JSON.stringify(h),"globalThis.PHX_SCHEMA_VALIDATOR":JSON.stringify(S.jsonSchemaValidator),"globalThis.PHX_GLTF_DECODER":JSON.stringify(S.gltfDecoder)},build:{rollupOptions:{input:{index:".phoenix/index.html",admin:".phoenix/admin.html",...j}}},root:m(process.cwd(),"./.phoenix"),server:{watch:{ignored:["./**/*.{ts,tsx}","./.swc/**","../spec/**","../src/**"]}}}};export const getViteBuildConfigs=async e=>{let s=c(),f=s.readRuntimeConfig(),d=s.frontendBuildConfig,y=D(),O=S(),x=u({sdkVersion:e.sdkVersion,banner:e.banner}),v=[{name:"salsita-configurator",entryFile:"./configurator.ts",mainScriptPath:"./configurator.ts",htmlFiles:["./index.html",...{templateFiles:e.templateFiles}.templateFiles],main:!0,format:"iife"},{name:"salsita-admin",entryFile:"./admin.ts",mainScriptPath:"./admin.ts",htmlFiles:["./admin.html"],main:!1,format:"iife"},{name:"salsita-embedded-admin",entryFile:"./embedded-admin.ts",mainScriptPath:"./embedded-admin.ts",htmlFiles:[],main:!1,format:"es"},{name:"salsita-embedded-configurator",entryFile:"./embedded-configurator.ts",mainScriptPath:"./embedded-configurator.ts",htmlFiles:[],main:!1,format:"es"}].map(c=>({plugins:[t({babel:{plugins:[y]}}),i({configPath:g}),p({useStrictCSP:!0}),h(),b({getDeploymentId:()=>E(s.readRuntimeConfig())}),{name:"vite:lib-index",writeBundle:async()=>{if(!c.htmlFiles.length)return;let i="iife"===c.format?`${c.name}.iife.js`:`${c.name}.js`;for(let t of c.htmlFiles){if(c.main&&e.enableEditor&&"./index.html"===t)continue;let a=m("./.phoenix",t),s=m("./.phoenix/dist/frontend",t);await n(l(s),{recursive:!0});let f=(await r(a,"utf-8")).replace(c.mainScriptPath,i);await o(s,f,"utf-8")}}},O,x],build:{outDir:"./dist/frontend",chunkSizeWarningLimit:4e3,lib:{entry:c.entryFile,name:a(c.name),formats:[c.format],fileName:()=>"iife"===c.format?`${c.name}.iife.js`:`${c.name}.js`},rollupOptions:{external:[],output:{assetFileNames:`${c.name}.[ext]`}},minify:!0,emptyOutDir:!1},root:m(process.cwd(),"./.phoenix"),define:{"process.env":{},"process.env.NODE_ENV":JSON.stringify("production"),"phx.frontendEnv":JSON.stringify(f),"globalThis.PHX_SCHEMA_VALIDATOR":JSON.stringify(d.jsonSchemaValidator),"globalThis.PHX_GLTF_DECODER":JSON.stringify(d.gltfDecoder)}}));return e.enableEditor?[...v,{plugins:[t({babel:{plugins:[y]}}),i({configPath:g}),p({useStrictCSP:!0}),h(),O,x],build:{outDir:"./dist/frontend",chunkSizeWarningLimit:4e3,rollupOptions:{external:[]},minify:!0,emptyOutDir:!1},root:m(process.cwd(),"./.phoenix"),define:{"process.env":{},"process.env.NODE_ENV":JSON.stringify("production"),"phx.frontendEnv":JSON.stringify(f),"globalThis.PHX_SCHEMA_VALIDATOR":JSON.stringify(d.jsonSchemaValidator),"globalThis.PHX_GLTF_DECODER":JSON.stringify(d.gltfDecoder)}}]:v};
1
+ import{getConfig as e}from"@lingui/conf";import{lingui as i}from"@lingui/vite-plugin";import t from"@vitejs/plugin-react";import{mkdir as n,readFile as r,writeFile as o}from"fs/promises";import a from"lodash-es/camelCase.js";import{createRequire as s}from"node:module";import{dirname as l,resolve as m}from"path";import{createLogger as f}from"vite";import p from"vite-plugin-css-injected-by-js";import{LINGUI_CONFIG_PATH as d}from"../lingui/index.js";import{isUsingLocalSdk as c}from"../utils/package-info.js";import{loadFrontendConfigModule as g}from"./frontend-config.js";import{phxBannerPlugin as u}from"./phx-banner-plugin.js";import{phxCspNoncePlugin as h}from"./phx-csp-nonce-plugin.js";import{phxGlobalIsolationPlugin as b}from"./phx-global-isolation-plugin.js";import{phxLicensesPlugin as S}from"./phx-licenses-plugin.js";import{phxVariantPreviewsPlugin as y}from"./phx-variant-previews-plugin.js";let O=null;export const setViteLogSink=(e,i={})=>{O={sink:e,echo:i.echo??!1}};let x=["react","react-dom","three","@react-three/fiber","@react-three/drei","@react-three/postprocessing","its-fine","@emotion/react","@emotion/styled","@mui/material","@mui/system","@tanstack/react-query","rxjs"],D=()=>[s(import.meta.url).resolve("@lingui/babel-plugin-lingui-macro"),{linguiConfig:e({configPath:d})}],E=e=>{let i=e.DEPLOYMENT_ID;if("string"!=typeof i)throw Error("DEPLOYMENT_ID is required in runtime config");return i};export const getViteDevConfig=async e=>{var n,r;let o,a,p=c(),u=g(),h=u.readRuntimeConfig(),S=u.frontendBuildConfig,v=D(),j=Object.fromEntries((e?.templateFiles??[]).map(e=>[e,`.phoenix/${e}`]));return{...O&&{customLogger:(n=O.sink,r=O.echo,o=f(),{get hasWarned(){return o.hasWarned},info:(e,i)=>{n("info",e),r&&o.info(e,i)},warn:(e,i)=>{n("warn",e),r&&o.warn(e,i)},warnOnce:(e,i)=>{n("warn",e),r&&o.warnOnce(e,i)},error:(e,i)=>{n("error",e),r&&o.error(e,i)},clearScreen:e=>{r&&o.clearScreen(e)},hasErrorLogged:e=>o.hasErrorLogged(e)}),...O.echo?{}:{clearScreen:!1}},mode:"development",optimizeDeps:{exclude:["@swc/wasm-web"],...p&&{entries:["index.html","admin.html",...e?.templateFiles??[]],force:!0}},...p&&{resolve:{alias:(a=s(m(process.cwd(),"package.json")),x.flatMap(e=>{try{let i=l(a.resolve(`${e}/package.json`));return[{find:RegExp(`^${e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}(/|$)`),replacement:`${i}$1`}]}catch{return[]}}))}},plugins:[t({babel:{plugins:[v]}}),i({configPath:d}),{name:"vite:runtime-config",apply:(e,i)=>"build"===i.command||"development"===i.mode,config:e=>{let i=u.readRuntimeConfig(),t=u.frontendBuildConfig;return{...e,define:{...e.define,"phx.frontendEnv":JSON.stringify(i),"globalThis.PHX_SCHEMA_VALIDATOR":JSON.stringify(t.jsonSchemaValidator),"globalThis.PHX_GLTF_DECODER":JSON.stringify(t.gltfDecoder)}}}},b({getDeploymentId:()=>E(u.readRuntimeConfig())}),y()],define:{"process.env":{},"import.meta.env.DEV":!0,"import.meta.env.PROD":!1,"phx.frontendEnv":JSON.stringify(h),"globalThis.PHX_SCHEMA_VALIDATOR":JSON.stringify(S.jsonSchemaValidator),"globalThis.PHX_GLTF_DECODER":JSON.stringify(S.gltfDecoder)},build:{rollupOptions:{input:{index:".phoenix/index.html",admin:".phoenix/admin.html",...j}}},root:m(process.cwd(),"./.phoenix"),server:{watch:{ignored:["./**/*.{ts,tsx}","./.swc/**","../spec/**","../src/**"]}}}};export const getViteBuildConfigs=async e=>{let s=g(),f=s.readRuntimeConfig(),c=s.frontendBuildConfig,y=D(),O=S(),x=u({sdkVersion:e.sdkVersion,banner:e.banner}),v=[{name:"salsita-configurator",entryFile:"./configurator.ts",mainScriptPath:"./configurator.ts",htmlFiles:["./index.html",...{templateFiles:e.templateFiles}.templateFiles],main:!0,format:"iife"},{name:"salsita-admin",entryFile:"./admin.ts",mainScriptPath:"./admin.ts",htmlFiles:["./admin.html"],main:!1,format:"iife"},{name:"salsita-embedded-admin",entryFile:"./embedded-admin.ts",mainScriptPath:"./embedded-admin.ts",htmlFiles:[],main:!1,format:"es"},{name:"salsita-embedded-configurator",entryFile:"./embedded-configurator.ts",mainScriptPath:"./embedded-configurator.ts",htmlFiles:[],main:!1,format:"es"}].map(g=>({plugins:[t({babel:{plugins:[y]}}),i({configPath:d}),p({useStrictCSP:!0}),h(),b({getDeploymentId:()=>E(s.readRuntimeConfig())}),{name:"vite:lib-index",writeBundle:async()=>{if(!g.htmlFiles.length)return;let i="iife"===g.format?`${g.name}.iife.js`:`${g.name}.js`;for(let t of g.htmlFiles){if(g.main&&e.enableEditor&&"./index.html"===t)continue;let a=m("./.phoenix",t),s=m("./.phoenix/dist/frontend",t);await n(l(s),{recursive:!0});let f=(await r(a,"utf-8")).replace(g.mainScriptPath,i);await o(s,f,"utf-8")}}},O,x],build:{outDir:"./dist/frontend",chunkSizeWarningLimit:4e3,lib:{entry:g.entryFile,name:a(g.name),formats:[g.format],fileName:()=>"iife"===g.format?`${g.name}.iife.js`:`${g.name}.js`},rollupOptions:{external:[],output:{assetFileNames:`${g.name}.[ext]`}},minify:!0,emptyOutDir:!1},root:m(process.cwd(),"./.phoenix"),define:{"process.env":{},"process.env.NODE_ENV":JSON.stringify("production"),"phx.frontendEnv":JSON.stringify(f),"globalThis.PHX_SCHEMA_VALIDATOR":JSON.stringify(c.jsonSchemaValidator),"globalThis.PHX_GLTF_DECODER":JSON.stringify(c.gltfDecoder)}}));return e.enableEditor?[...v,{plugins:[t({babel:{plugins:[y]}}),i({configPath:d}),p({useStrictCSP:!0}),h(),O,x],build:{outDir:"./dist/frontend",chunkSizeWarningLimit:4e3,rollupOptions:{external:[]},minify:!0,emptyOutDir:!1},root:m(process.cwd(),"./.phoenix"),define:{"process.env":{},"process.env.NODE_ENV":JSON.stringify("production"),"phx.frontendEnv":JSON.stringify(f),"globalThis.PHX_SCHEMA_VALIDATOR":JSON.stringify(c.jsonSchemaValidator),"globalThis.PHX_GLTF_DECODER":JSON.stringify(c.gltfDecoder)}}]:v};
@@ -17,5 +17,5 @@ export declare const CommonAnalyticsFactory: {
17
17
  Initialized: typeof Initialized;
18
18
  ConfigurationLoaded: typeof ConfigurationLoaded;
19
19
  };
20
- export declare const initializeAnalyticsService: (config: AnyApplicationConfig, logger: Logger, isDev: boolean) => AnalyticsSystem;
20
+ export declare const initializeAnalyticsService: (config: Pick<AnyApplicationConfig, 'services' | 'defaultEnvs'>, logger: Logger, isDev: boolean) => AnalyticsSystem;
21
21
  export {};
@@ -28,6 +28,10 @@ export declare const FrontendAnalyticsFactory: {
28
28
  FinalizeButtonClicked: typeof FinalizeButtonClicked;
29
29
  SummaryButtonClicked: typeof SummaryButtonClicked;
30
30
  TopNavigationStepClicked: typeof TopNavigationStepClicked;
31
+ /**
32
+ * @deprecated The SDK never pushes this event: a click on a horizontal tab pushes `TopNavigationStepClicked`.
33
+ * Use `TopNavigationStepClicked` instead. This API will be removed in the breaking release before v1.
34
+ */
31
35
  HorizontalTabClicked: typeof HorizontalTabClicked;
32
36
  GoToProductsClicked: typeof GoToProductsClicked;
33
37
  ProductSelected: typeof ProductSelected;
@@ -2,6 +2,6 @@ import type { I18n } from '@lingui/core';
2
2
  import { QueryClient } from '@tanstack/react-query';
3
3
  import { type Logger } from '@salsita-ai/common/utils';
4
4
  import type { AnyApplicationConfig } from '#package/domain';
5
- export declare const initializeLogger: (config: AnyApplicationConfig, isDev: boolean) => Logger;
6
- export declare const initializeI18n: (config: AnyApplicationConfig) => I18n;
5
+ export declare const initializeLogger: (config: Pick<AnyApplicationConfig, 'services' | 'defaultEnvs' | 'version'>, isDev: boolean) => Logger;
6
+ export declare const initializeI18n: (config: Pick<AnyApplicationConfig, 'services'>) => I18n;
7
7
  export declare const createQueryClient: (logger: Logger) => QueryClient;
@@ -29,7 +29,7 @@ export interface SendVoiceMessageParams<CHAT_CONTEXT extends Record<string, unkn
29
29
  * Runtime chat service consumed only by the legacy configurator chat UI. Its user-facing consumers
30
30
  * live under `configurator/ui/legacy/`: `Chat` is reached through `MobileChat`, `TabsSidebar`,
31
31
  * `StepsSideBar`, and `SimpleSidebar`, with availability gated by
32
- * `configurator/configurator-context/configurator-hooks/chat-hooks.ts`.
32
+ * `react-sdk/domain-application-context/chat-hooks.ts`.
33
33
  *
34
34
  * `sendMessage` deliberately retains a known reinitialization race. Its `ChunkType.calls`
35
35
  * continuation does not recheck the captured generation after `processToolCalls` before publishing
@@ -22,3 +22,5 @@ export * from './use-domain-application.js';
22
22
  export * from './use-web-component.js';
23
23
  export * from './use-web-component-readonly-sync.js';
24
24
  export * from './data/index.js';
25
+ export * from './loading/index.js';
26
+ export * from './responsive/index.js';
@@ -1 +1 @@
1
- export*from"./use-application-runtime-selector.js";export{AccessServiceProvider,useAccessInfoActions,useAccessService,useAdminRawAccessService,useAdminRawAccessInfo,useConfigurationId,useConfiguratorRawAccessService,useConfiguratorRawAccessInfo,useProvidedAccessService}from"./use-access-service.js";export*from"./use-logger.js";export*from"./use-analytics-service.js";export*from"./use-application-query-client.js";export*from"./use-i18n.js";export*from"./use-spec.js";export*from"./use-environment.js";export*from"./use-overrides.js";export*from"./use-domain-application-props.js";export*from"./use-resource-url.js";export*from"./use-integration.js";export*from"./use-routing.js";export*from"./use-loaded-data.js";export*from"./use-domain-data.js";export*from"./use-session.js";export*from"./use-authorized-client.js";export*from"./use-authenticated-client.js";export*from"./use-phoenix-element-slots.js";export*from"./use-phoenix-handler-slots.js";export*from"./use-domain-application.js";export*from"./use-web-component.js";export*from"./use-web-component-readonly-sync.js";export*from"./data/index.js";
1
+ export*from"./use-application-runtime-selector.js";export{AccessServiceProvider,useAccessInfoActions,useAccessService,useAdminRawAccessService,useAdminRawAccessInfo,useConfigurationId,useConfiguratorRawAccessService,useConfiguratorRawAccessInfo,useProvidedAccessService}from"./use-access-service.js";export*from"./use-logger.js";export*from"./use-analytics-service.js";export*from"./use-application-query-client.js";export*from"./use-i18n.js";export*from"./use-spec.js";export*from"./use-environment.js";export*from"./use-overrides.js";export*from"./use-domain-application-props.js";export*from"./use-resource-url.js";export*from"./use-integration.js";export*from"./use-routing.js";export*from"./use-loaded-data.js";export*from"./use-domain-data.js";export*from"./use-session.js";export*from"./use-authorized-client.js";export*from"./use-authenticated-client.js";export*from"./use-phoenix-element-slots.js";export*from"./use-phoenix-handler-slots.js";export*from"./use-domain-application.js";export*from"./use-web-component.js";export*from"./use-web-component-readonly-sync.js";export*from"./data/index.js";export*from"./loading/index.js";export*from"./responsive/index.js";
@@ -0,0 +1,5 @@
1
+ export { LoaderHostContext } from './loader-host-context.js';
2
+ export { useIsAwaitingLoadingPhase } from './use-is-awaiting-loading-phase.js';
3
+ export { useIsLoaderHosted } from './use-is-loader-hosted.js';
4
+ export { useLoadingActions } from './use-loading-actions.js';
5
+ export { useLoadingApplication } from './use-loading-application.js';
@@ -0,0 +1 @@
1
+ export{LoaderHostContext}from"./loader-host-context.js";export{useIsAwaitingLoadingPhase}from"./use-is-awaiting-loading-phase.js";export{useIsLoaderHosted}from"./use-is-loader-hosted.js";export{useLoadingActions}from"./use-loading-actions.js";export{useLoadingApplication}from"./use-loading-application.js";
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Whether a component is mounted below the application's `LoaderHost`, which provides `true`. It is
3
+ * `false` everywhere else, as in the admin, which hosts no loader.
4
+ *
5
+ * It is a fact about the React tree, so it is a context and not part of the runtime's `loading`
6
+ * slice. It lives beside the hooks that read it rather than beside `LoaderHost`, because
7
+ * `loading-state/` imports from this folder and never the other way.
8
+ *
9
+ * @internal Runtime plumbing for the SDK's own UI.
10
+ */
11
+ export declare const LoaderHostContext: import("react").Context<boolean>;
@@ -0,0 +1 @@
1
+ import{createContext as o}from"react";export const LoaderHostContext=o(!1);
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Whether the application this component is mounted in expects the loading phase `id` and that
3
+ * phase has not started since its loader host mounted. The loader stays up across that gap.
4
+ * `false` outside a loader host.
5
+ *
6
+ * @internal Runtime plumbing for the SDK's own UI.
7
+ */
8
+ export declare const useIsAwaitingLoadingPhase: (id: string) => boolean;
@@ -0,0 +1 @@
1
+ import{useCallback as e}from"react";import{useApplicationRuntimeSelector as o}from"../use-application-runtime-selector.js";import{useIsLoaderHosted as t}from"./use-is-loader-hosted.js";import{useLoadingApplication as s}from"./use-loading-application.js";export const useIsAwaitingLoadingPhase=i=>{let r=s(),a=t(),m=o(e(()=>r?.selectors.getIsAwaitingPhase(i)??!1,[r,i]));return a&&m};
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Whether this component is mounted below the application's `LoaderHost`. Without one, the SDK's
3
+ * own UI shows its inline loaders, as the admin does.
4
+ *
5
+ * @internal Runtime plumbing for the SDK's own UI.
6
+ */
7
+ export declare const useIsLoaderHosted: () => boolean;
@@ -0,0 +1 @@
1
+ import{useContext as o}from"react";import{LoaderHostContext as t}from"./loader-host-context.js";export const useIsLoaderHosted=()=>o(t);
@@ -0,0 +1,9 @@
1
+ import type { LoadingActions } from '../../loading/index.js';
2
+ /**
3
+ * The loading actions of the application this component is mounted in, or `null` outside its
4
+ * loader host, so that nothing reports phases no loader shows. Stable while the host stays mounted.
5
+ *
6
+ * @internal Runtime plumbing for the SDK's own UI. A project reports a phase with
7
+ * `phx.frontend.useLoadingState()`.
8
+ */
9
+ export declare const useLoadingActions: () => LoadingActions | null;
@@ -0,0 +1 @@
1
+ import{useIsLoaderHosted as o}from"./use-is-loader-hosted.js";import{useLoadingApplication as s}from"./use-loading-application.js";export const useLoadingActions=()=>{let t=s(),i=o();return null!==t&&i?t.actions:null};
@@ -0,0 +1,24 @@
1
+ /**
2
+ * The selectors and actions of the loading state of the application this component is mounted in,
3
+ * chosen by its `ApplicationTypeProvider` as the domain context hooks choose theirs. `null` outside
4
+ * an `ApplicationRuntimeProvider` or an `ApplicationTypeProvider`: the session and data providers also run in trees without one, where
5
+ * no loader is hosted.
6
+ *
7
+ * @internal Runtime plumbing for the SDK's own UI.
8
+ */
9
+ export declare const useLoadingApplication: () => {
10
+ selectors: {
11
+ selectLoadingState: import("@salsita-ai/common/utils").Selector<import("../../loading/selectors.js").LoadingSelectorState, import("../../index.js").LoadingState>;
12
+ getLoadingState: () => import("../../index.js").LoadingState;
13
+ getIsAwaitingPhase: (id: string) => boolean;
14
+ };
15
+ actions: {
16
+ startPhase: (phase: import("../../index.js").LoadingPhase) => void;
17
+ endPhase: (id: string) => void;
18
+ reportError: () => void;
19
+ clearError: () => void;
20
+ expectPhase: (id: string) => void;
21
+ dropExpectation: (id: string) => void;
22
+ resetSlot: () => void;
23
+ };
24
+ } | null;
@@ -0,0 +1 @@
1
+ import{useMemo as o}from"react";import{useOptionalApplicationRuntime as i,useOptionalApplicationType as n}from"../../provider/index.js";import{ApplicationType as r}from"../../runtime/index.js";export const useLoadingApplication=()=>{let t=i(),e=n();return o(()=>null===t||null===e?null:e===r.Admin?{selectors:t.selectors.loading.admin,actions:t.actions.loading.admin}:{selectors:t.selectors.loading.configurator,actions:t.actions.loading.configurator},[t,e])};
@@ -0,0 +1,3 @@
1
+ export { useResponsiveActions } from './use-responsive-actions.js';
2
+ export { useResponsiveState } from './use-responsive-state.js';
3
+ export { type ResponsiveStore, useResponsiveStore } from './use-responsive-store.js';
@@ -0,0 +1 @@
1
+ export{useResponsiveActions}from"./use-responsive-actions.js";export{useResponsiveState}from"./use-responsive-state.js";export{useResponsiveStore}from"./use-responsive-store.js";
@@ -0,0 +1,9 @@
1
+ import type { ResponsiveActions } from '../../responsive/index.js';
2
+ /**
3
+ * The actions of the responsive state of the application this component is mounted in: set the canvas padding, expand, collapse, hide or
4
+ * show the root container. Stable for the runtime's lifetime.
5
+ *
6
+ * @internal Runtime plumbing for the SDK's own UI. A project layout uses `useActiveViewports()`
7
+ * from `@salsita-ai/sdk/react` and `useSceneSafeArea()` from `@salsita-ai/sdk/configurator`.
8
+ */
9
+ export declare const useResponsiveActions: () => ResponsiveActions;
@@ -0,0 +1 @@
1
+ import{useResponsiveApplication as e}from"./use-responsive-application.js";export const useResponsiveActions=()=>{let{actions:s}=e();return s};
@@ -0,0 +1,26 @@
1
+ /**
2
+ * The selectors and actions of the responsive state of the application this component is mounted
3
+ * in, chosen by its `ApplicationTypeProvider` as the domain context hooks choose theirs.
4
+ */
5
+ export declare const useResponsiveApplication: () => {
6
+ runtime: import("../../index.js").ApplicationRuntime;
7
+ selectors: {
8
+ selectResponsiveState: import("@salsita-ai/common/utils").Selector<import("../../responsive/selectors.js").ResponsiveSelectorState, import("../../index.js").ResponsiveState>;
9
+ selectViewportSize: import("@salsita-ai/common/utils").Selector<import("../../responsive/selectors.js").ResponsiveSelectorState, import("../../index.js").ResponsiveViewportSize>;
10
+ selectCanvasPadding: import("@salsita-ai/common/utils").Selector<import("../../responsive/selectors.js").ResponsiveSelectorState, import("../../index.js").CanvasPadding>;
11
+ getResponsiveState: () => import("../../index.js").ResponsiveState;
12
+ getViewportSize: () => import("../../index.js").ResponsiveViewportSize;
13
+ getCanvasPadding: () => import("../../index.js").CanvasPadding;
14
+ };
15
+ actions: {
16
+ setViewport: (viewport: import("../../index.js").ResponsiveViewport) => void;
17
+ setBreakpoints: (breakpoints: import("../../index.js").ResponsiveBreakpoints) => void;
18
+ setCanvasPadding: (canvasPadding: import("../../index.js").CanvasPadding) => void;
19
+ expand: () => void;
20
+ collapse: () => void;
21
+ hide: () => void;
22
+ show: () => void;
23
+ setAnimating: (isAnimating: boolean) => void;
24
+ reset: () => void;
25
+ };
26
+ };
@@ -0,0 +1 @@
1
+ import{useApplicationRuntime as e,useApplicationType as s}from"../../provider/index.js";import{ApplicationType as o}from"../../runtime/index.js";export const useResponsiveApplication=()=>{let i=e();return s()===o.Admin?{runtime:i,selectors:i.selectors.responsive.admin,actions:i.actions.responsive.admin}:{runtime:i,selectors:i.selectors.responsive.configurator,actions:i.actions.responsive.configurator}};
@@ -0,0 +1,10 @@
1
+ import type { ResponsiveState } from '../../responsive/index.js';
2
+ /**
3
+ * The responsive state of the application this component is mounted in: the size classes of its root container, the
4
+ * canvas padding, and whether the container is expanded, hidden or animating. Re-renders when any
5
+ * of them changes, not on a resize within one size class.
6
+ *
7
+ * @internal Runtime plumbing for the SDK's own UI. A project layout uses `useActiveViewports()`
8
+ * from `@salsita-ai/sdk/react` and `useSceneSafeArea()` from `@salsita-ai/sdk/configurator`.
9
+ */
10
+ export declare const useResponsiveState: () => ResponsiveState;
@@ -0,0 +1 @@
1
+ import{useApplicationRuntimeSelector as e}from"../use-application-runtime-selector.js";import{useResponsiveApplication as t}from"./use-responsive-application.js";export const useResponsiveState=()=>{let{selectors:s}=t();return e(s.getResponsiveState)};
@@ -0,0 +1,24 @@
1
+ import type { CanvasPadding, ResponsiveActions, ResponsiveState, ResponsiveViewportSize } from '../../responsive/index.js';
2
+ /**
3
+ * The runtime's responsive state in the shape `ResponsiveApplicationProvider` of
4
+ * `@salsita-ai/sdk/ui` takes as its `store`, which that package declares by shape because it imports
5
+ * no other SDK package.
6
+ *
7
+ * @internal Runtime plumbing for the SDK's own UI. A project layout uses `useActiveViewports()`
8
+ * from `@salsita-ai/sdk/react` and `useSceneSafeArea()` from `@salsita-ai/sdk/configurator`.
9
+ */
10
+ export interface ResponsiveStore extends Omit<ResponsiveActions, 'reset'> {
11
+ /** Calls `onChange` after every change of the runtime; returns the unsubscribe. */
12
+ readonly subscribe: (onChange: () => void) => () => void;
13
+ readonly getState: () => ResponsiveState;
14
+ readonly getViewportSize: () => ResponsiveViewportSize;
15
+ readonly getCanvasPadding: () => CanvasPadding;
16
+ }
17
+ /**
18
+ * The responsive state of the application this component is mounted in, as the store its root
19
+ * container measures into and `useResponsive()` reads from. Stable for the runtime's lifetime.
20
+ *
21
+ * @internal Runtime plumbing for the SDK's own UI. A project layout uses `useActiveViewports()`
22
+ * from `@salsita-ai/sdk/react` and `useSceneSafeArea()` from `@salsita-ai/sdk/configurator`.
23
+ */
24
+ export declare const useResponsiveStore: () => ResponsiveStore;
@@ -0,0 +1 @@
1
+ import{useMemo as e}from"react";import{useResponsiveApplication as t}from"./use-responsive-application.js";export const useResponsiveStore=()=>{let{runtime:s,selectors:i,actions:a}=t();return e(()=>({setViewport:a.setViewport,setBreakpoints:a.setBreakpoints,setCanvasPadding:a.setCanvasPadding,expand:a.expand,collapse:a.collapse,hide:a.hide,show:a.show,setAnimating:a.setAnimating,subscribe:s.subscribe,getState:i.getResponsiveState,getViewportSize:i.getViewportSize,getCanvasPadding:i.getCanvasPadding}),[s,i,a])};
@@ -6,6 +6,11 @@ interface AccessServiceProviderProps {
6
6
  }
7
7
  export declare const AccessServiceProvider: (props: AccessServiceProviderProps) => import("react/jsx-runtime").JSX.Element;
8
8
  export declare const useProvidedAccessService: () => AccessService;
9
+ /**
10
+ * The provided access service with `accessInfo.viewMode` set by the application's read-only rule,
11
+ * the domain-context selector `getIsViewMode`: the access opens the configuration for viewing only,
12
+ * or the host element is `readonly`. The assistant's `apply` follows the same selector.
13
+ */
9
14
  export declare const useAccessService: () => AccessService;
10
15
  export declare const useConfigurationId: () => string;
11
16
  export declare const useConfiguratorRawAccessService: () => AccessService | null;
@@ -1 +1 @@
1
- import{jsx as e}from"react/jsx-runtime";import{createContext as s,useContext as c,useMemo as o}from"react";import{standardWebComponentProperties as r}from"#package/domain";import{useApplicationRuntime as t}from"../provider/index.js";import{useApplicationRuntimeSelector as i}from"./use-application-runtime-selector.js";import{useWebComponentPropertyValue as n}from"./use-web-component.js";let a=s(null);export const AccessServiceProvider=s=>e(a.Provider,{value:s.value,children:s.children});export const useProvidedAccessService=()=>{let e=c(a);if(null===e)throw Error("Access service not found! Render access-dependent hooks inside AccessServiceProvider.");return e};export const useAccessService=()=>{let e=n(r.readonly),s=useProvidedAccessService();return o(()=>({...s,accessInfo:{...s.accessInfo,viewMode:s.accessInfo.viewMode||e}}),[s,e])};export const useConfigurationId=()=>useProvidedAccessService().configurationId;export const useConfiguratorRawAccessService=()=>i(t().selectors.access.getConfiguratorRawAccessService);export const useAdminRawAccessService=()=>i(t().selectors.access.getAdminRawAccessService);export const useConfiguratorRawAccessInfo=()=>i(t().selectors.access.getConfiguratorRawAccessInfo);export const useAdminRawAccessInfo=()=>i(t().selectors.access.getAdminRawAccessInfo);export const useAccessInfoActions=()=>t().actions.access;
1
+ import{jsx as e}from"react/jsx-runtime";import{createContext as s,useContext as c,useMemo as o}from"react";import{useApplicationRuntime as r,useApplicationType as t}from"../provider/index.js";import{ApplicationType as i}from"../runtime/index.js";import{useApplicationRuntimeSelector as n}from"./use-application-runtime-selector.js";let a=s(null);export const AccessServiceProvider=s=>e(a.Provider,{value:s.value,children:s.children});export const useProvidedAccessService=()=>{let e=c(a);if(null===e)throw Error("Access service not found! Render access-dependent hooks inside AccessServiceProvider.");return e};export const useAccessService=()=>{let e=t(),s=r(),c=useProvidedAccessService(),a=n(e===i.Admin?s.selectors.domainContext.admin.getIsViewMode:s.selectors.domainContext.configurator.getIsViewMode);return o(()=>({...c,accessInfo:{...c.accessInfo,viewMode:a}}),[c,a])};export const useConfigurationId=()=>useProvidedAccessService().configurationId;export const useConfiguratorRawAccessService=()=>n(r().selectors.access.getConfiguratorRawAccessService);export const useAdminRawAccessService=()=>n(r().selectors.access.getAdminRawAccessService);export const useConfiguratorRawAccessInfo=()=>n(r().selectors.access.getConfiguratorRawAccessInfo);export const useAdminRawAccessInfo=()=>n(r().selectors.access.getAdminRawAccessInfo);export const useAccessInfoActions=()=>r().actions.access;
@@ -1,8 +1,9 @@
1
- import type { PropsWithChildren } from 'react';
1
+ import type { ComponentType, PropsWithChildren } from 'react';
2
2
  import type { CustomPhoenixEntityElementProps } from '#package/domain';
3
3
  export interface PhoenixElementSlots {
4
4
  readonly entityElements: Record<string, (props: CustomPhoenixEntityElementProps) => JSX.Element>;
5
5
  readonly layoutElements: Record<string, (props: PropsWithChildren) => JSX.Element>;
6
+ readonly assistantFormElements: Record<string, ComponentType<never>>;
6
7
  readonly hashes: Record<string, string>;
7
8
  }
8
9
  export declare const usePhoenixElementSlots: () => PhoenixElementSlots;