@salsita-ai/sdk 0.50.0-develop.da56a0c6c3 → 0.50.0-develop.db8514eccf

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 (283) hide show
  1. package/README.md +19 -11
  2. package/dist/application-spec/errors/diagnostic-codes.d.ts +6 -0
  3. package/dist/application-spec/errors/diagnostic-codes.js +1 -1
  4. package/dist/application-spec/errors/diagnostic-messages.d.ts +6 -0
  5. package/dist/application-spec/errors/diagnostic-messages.js +1 -1
  6. package/dist/application-spec/generate-application/code/domain-runtime-files.js +1 -1
  7. package/dist/application-spec/generate-application/code/project-scaffolding.js +2 -2
  8. package/dist/application-spec/generate-application/code/templates/application-types.js +6 -6
  9. package/dist/application-spec/generate-application/code/templates/configurator-domain-code.d.ts +1 -0
  10. package/dist/application-spec/generate-application/code/templates/configurator-domain-code.js +11 -8
  11. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-domain-block.d.ts +3 -1
  12. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-domain-block.js +70 -66
  13. package/dist/application-spec/generate-application/code/templates/domain-spec/generate-phx-globals.js +3 -0
  14. package/dist/application-spec/generate-application/code/templates/domain-spec.js +5 -5
  15. package/dist/application-spec/generate-application/code/templates/domain.js +2 -2
  16. package/dist/application-spec/generate-application/code/templates/global-definition/generate-action-types.d.ts +11 -0
  17. package/dist/application-spec/generate-application/code/templates/global-definition/generate-action-types.js +8 -0
  18. package/dist/application-spec/generate-application/code/templates/global-definition/index.d.ts +1 -0
  19. package/dist/application-spec/generate-application/code/templates/global-definition/index.js +1 -1
  20. package/dist/application-spec/generate-application/code/templates/globals.js +1 -0
  21. package/dist/application-spec/generate-application/code/templates/index.d.ts +1 -0
  22. package/dist/application-spec/generate-application/code/templates/index.js +1 -1
  23. package/dist/application-spec/generate-application/code/templates/skills/agents-md.js +1 -1
  24. package/dist/application-spec/generate-application/code/templates/skills/phoenix-cli-skill.js +1 -1
  25. package/dist/application-spec/generate-application/code/templates/skills/phoenix-create-configurator-skill.js +43 -13
  26. package/dist/application-spec/generate-application/code/templates/skills/phoenix-feedback-skill.js +39 -16
  27. package/dist/application-spec/generate-application/code/templates/skills/phoenix-review-skill.js +5 -3
  28. package/dist/application-spec/generate-application/code/templates/skills/phoenix-skill.js +1 -1
  29. package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.d.ts +1 -0
  30. package/dist/application-spec/generate-application/code/templates/skills/phoenix-variants-skill.js +6 -0
  31. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.d.ts +31 -3
  32. package/dist/application-spec/generate-application/code/templates/skills/sdk-content.js +19 -4
  33. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.d.ts +2 -0
  34. package/dist/application-spec/generate-application/runtime/configurator-runtime/configurator-runtime.js +1 -1
  35. package/dist/application-spec/generate-application/runtime/sections/actions-runtime.d.ts +14 -0
  36. package/dist/application-spec/generate-application/runtime/sections/actions-runtime.js +1 -0
  37. package/dist/application-spec/generate-application/runtime/sections/index.d.ts +1 -0
  38. package/dist/application-spec/generate-application/runtime/sections/index.js +1 -1
  39. package/dist/application-spec/parse-application-files/categorize/categorize-files.d.ts +3 -1
  40. package/dist/application-spec/parse-application-files/categorize/categorize-files.js +1 -1
  41. package/dist/application-spec/parse-application-files/merge/index.d.ts +1 -0
  42. package/dist/application-spec/parse-application-files/merge/index.js +1 -1
  43. package/dist/application-spec/parse-application-files/merge/merged-actions.d.ts +11 -0
  44. package/dist/application-spec/parse-application-files/merge/merged-actions.js +1 -0
  45. package/dist/application-spec/parse-application-files/merge/merged-spec.d.ts +2 -0
  46. package/dist/application-spec/parse-application-files/merge/merged-spec.js +1 -1
  47. package/dist/application-spec/parse-application-files/raw-spec/index.d.ts +1 -0
  48. package/dist/application-spec/parse-application-files/raw-spec/index.js +1 -1
  49. package/dist/application-spec/parse-application-files/raw-spec/raw-actions.d.ts +18 -0
  50. package/dist/application-spec/parse-application-files/raw-spec/raw-actions.js +1 -0
  51. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.d.ts +14 -2
  52. package/dist/application-spec/parse-application-files/raw-spec/raw-assistant.js +1 -1
  53. package/dist/application-spec/parse-application-files/raw-spec/raw-spec-file.d.ts +2 -0
  54. package/dist/application-spec/parse-application-files/raw-spec/raw-spec-file.js +1 -1
  55. package/dist/application-spec/parse-application-files/resolve/resolve-import-modules.js +1 -1
  56. package/dist/application-spec/parse-application-files/spec/application/application-spec.js +1 -1
  57. package/dist/application-spec/parse-application-files/spec/application/configurator-spec/configurator-spec.d.ts +4 -2
  58. package/dist/application-spec/parse-application-files/spec/application/configurator-spec/configurator-spec.js +1 -1
  59. package/dist/application-spec/parse-application-files/spec/common/index.d.ts +1 -0
  60. package/dist/application-spec/parse-application-files/spec/common/index.js +1 -1
  61. package/dist/application-spec/parse-application-files/spec/common/schema-ref-resolver.d.ts +23 -0
  62. package/dist/application-spec/parse-application-files/spec/common/schema-ref-resolver.js +1 -0
  63. package/dist/application-spec/parse-application-files/spec/model/names/action-name.d.ts +10 -0
  64. package/dist/application-spec/parse-application-files/spec/model/names/action-name.js +1 -0
  65. package/dist/application-spec/parse-application-files/spec/model/names/index.d.ts +1 -0
  66. package/dist/application-spec/parse-application-files/spec/model/names/index.js +1 -1
  67. package/dist/application-spec/parse-application-files/spec/sections/actions.d.ts +35 -0
  68. package/dist/application-spec/parse-application-files/spec/sections/actions.js +1 -0
  69. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-field-type.d.ts +3 -14
  70. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-field-type.js +1 -1
  71. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.d.ts +12 -3
  72. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant-schema.js +1 -1
  73. package/dist/application-spec/parse-application-files/spec/sections/assistant/assistant.d.ts +5 -3
  74. package/dist/application-spec/parse-application-files/spec/sections/index.d.ts +1 -0
  75. package/dist/application-spec/parse-application-files/spec/sections/index.js +1 -1
  76. package/dist/configurator/application-runtime/extensions/configurator-extension-systems.d.ts +2 -1
  77. package/dist/configurator/application-runtime/extensions/configurator-extension-systems.js +1 -1
  78. package/dist/configurator/application-runtime/extensions/selectors.d.ts +2 -1
  79. package/dist/configurator/application-runtime/extensions/selectors.js +1 -1
  80. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.d.ts +168 -0
  81. package/dist/configurator/application-runtime/extensions/systems/assistant-system/assistant-system.js +1 -0
  82. package/dist/configurator/{assistant → application-runtime/extensions/systems/assistant-system}/browser-details.d.ts +1 -1
  83. package/dist/configurator/application-runtime/extensions/systems/assistant-system/browser-details.js +1 -0
  84. package/dist/configurator/application-runtime/extensions/systems/assistant-system/change-recorder.d.ts +85 -0
  85. package/dist/configurator/application-runtime/extensions/systems/assistant-system/change-recorder.js +1 -0
  86. package/dist/configurator/{assistant → application-runtime/extensions/systems/assistant-system}/graphql-tools.d.ts +20 -16
  87. package/dist/configurator/application-runtime/extensions/systems/assistant-system/graphql-tools.js +1 -0
  88. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.d.ts +4 -0
  89. package/dist/configurator/application-runtime/extensions/systems/graphql-system/entity-meta.js +1 -1
  90. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.d.ts +16 -1
  91. package/dist/configurator/application-runtime/extensions/systems/graphql-system/graphql-system.js +1 -1
  92. package/dist/configurator/application-runtime/extensions/systems/graphql-system/side-effects.d.ts +9 -0
  93. package/dist/configurator/application-runtime/extensions/systems/graphql-system/side-effects.js +1 -0
  94. package/dist/configurator/application-runtime/extensions/systems/index.d.ts +1 -0
  95. package/dist/configurator/application-runtime/extensions/systems/index.js +1 -1
  96. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.d.ts +2 -0
  97. package/dist/configurator/application-runtime/extensions/systems/layout-system/layout-system.js +1 -1
  98. package/dist/configurator/common/frontend-analytics.d.ts +21 -21
  99. package/dist/configurator/index.d.ts +0 -1
  100. package/dist/configurator/index.js +1 -1
  101. package/dist/configurator/pages/LoadedConfiguratorDetailPage.js +1 -1
  102. package/dist/configurator/scene/scene-analytics/scene-analytics.d.ts +2 -2
  103. package/dist/configurator/ui/assistant/AssistantChips.d.ts +11 -0
  104. package/dist/configurator/ui/assistant/AssistantChips.js +1 -0
  105. package/dist/configurator/ui/assistant/AssistantComposer.d.ts +6 -0
  106. package/dist/configurator/ui/assistant/AssistantComposer.js +1 -0
  107. package/dist/configurator/ui/assistant/AssistantMarkdown.d.ts +7 -0
  108. package/dist/configurator/ui/assistant/AssistantMarkdown.js +1 -0
  109. package/dist/configurator/ui/assistant/AssistantPanel.d.ts +11 -0
  110. package/dist/configurator/ui/assistant/AssistantPanel.js +1 -0
  111. package/dist/configurator/ui/assistant/AssistantThread.d.ts +6 -0
  112. package/dist/configurator/ui/assistant/AssistantThread.js +1 -0
  113. package/dist/configurator/ui/assistant/assistant-failure.d.ts +18 -0
  114. package/dist/configurator/ui/assistant/assistant-failure.js +1 -0
  115. package/dist/configurator/ui/assistant/index.d.ts +2 -0
  116. package/dist/configurator/ui/assistant/index.js +1 -0
  117. package/dist/configurator/ui/assistant/streamed-markdown.d.ts +6 -0
  118. package/dist/configurator/ui/assistant/streamed-markdown.js +2 -0
  119. package/dist/configurator/ui/assistant/theme.d.ts +2 -0
  120. package/dist/configurator/ui/assistant/theme.js +1 -0
  121. package/dist/configurator/ui/assistant/thread-items.d.ts +37 -0
  122. package/dist/configurator/ui/assistant/thread-items.js +1 -0
  123. package/dist/configurator/ui/assistant/tool-chip.d.ts +37 -0
  124. package/dist/configurator/ui/assistant/tool-chip.js +1 -0
  125. package/dist/configurator/ui/assistant/use-follow-stream.d.ts +17 -0
  126. package/dist/configurator/ui/assistant/use-follow-stream.js +1 -0
  127. package/dist/configurator/ui/assistant/use-is-assistant-panel-open.d.ts +5 -0
  128. package/dist/configurator/ui/assistant/use-is-assistant-panel-open.js +1 -0
  129. package/dist/configurator/ui/configurator-layout/universal/DesktopLayout.js +5 -5
  130. package/dist/configurator/ui/configurator-layout/universal/MobileLayout.d.ts +2 -0
  131. package/dist/configurator/ui/configurator-layout/universal/MobileLayout.js +4 -4
  132. package/dist/configurator/ui/legacy/mobile-controls/MobileControls.d.ts +1 -1
  133. package/dist/configurator/ui/phoenix-layout-elements/AssistantToolbarButton.d.ts +10 -0
  134. package/dist/configurator/ui/phoenix-layout-elements/AssistantToolbarButton.js +1 -0
  135. package/dist/configurator/ui/phoenix-layout-elements/index.d.ts +1 -0
  136. package/dist/configurator/ui/phoenix-layout-elements/index.js +1 -1
  137. package/dist/docs/index.json +12 -2
  138. package/dist/docs/layouts/toolbar.mdx +6 -0
  139. package/dist/docs/other-features/domain-actions.mdx +418 -0
  140. package/dist/docs/other-features/side-effects.mdx +26 -0
  141. package/dist/docs/phoenix/admin.mdx +2 -2
  142. package/dist/docs/phoenix/best-practices.mdx +1 -0
  143. package/dist/docs/phoenix/finalization.mdx +1 -1
  144. package/dist/docs/phoenix/integration/headless-mode-external.mdx +5 -5
  145. package/dist/docs/phoenix/integration/widget-mode-external.mdx +5 -5
  146. package/dist/docs/phoenix/phoenix-cli.mdx +139 -20
  147. package/dist/docs/phoenix/project-structure.mdx +7 -3
  148. package/dist/docs/phoenix/sdk-builder-workflow.mdx +8 -6
  149. package/dist/domain/actions/action-factory.d.ts +10 -0
  150. package/dist/domain/actions/action-factory.js +1 -0
  151. package/dist/domain/actions/prepare-action-implementations.d.ts +15 -0
  152. package/dist/domain/actions/prepare-action-implementations.js +5 -0
  153. package/dist/domain/application/application-config.d.ts +3 -1
  154. package/dist/domain/application/assistant-mutations.d.ts +15 -14
  155. package/dist/domain/application/assistant-mutations.js +1 -1
  156. package/dist/domain/components/updates.d.ts +16 -0
  157. package/dist/domain/core/action.d.ts +67 -0
  158. package/dist/domain/core/action.js +1 -0
  159. package/dist/domain/core/domain-factory.d.ts +4 -0
  160. package/dist/domain/core/index.d.ts +1 -0
  161. package/dist/domain/domain-builder.d.ts +7 -0
  162. package/dist/domain/domain-builder.js +1 -1
  163. package/dist/domain/domain-context/action-system/action-system.d.ts +40 -0
  164. package/dist/domain/domain-context/action-system/action-system.js +1 -0
  165. package/dist/domain/domain-context/domain-context-systems.d.ts +5 -2
  166. package/dist/domain/domain-context/index.d.ts +2 -1
  167. package/dist/domain/domain-context/index.js +1 -1
  168. package/dist/domain/domain-context/store-system/store-system.js +1 -1
  169. package/dist/domain/domain-runtime/domain-context/domain-context.js +1 -1
  170. package/dist/domain/domain-runtime/domain-context/selectors.d.ts +4 -0
  171. package/dist/domain/domain-runtime/domain-context/selectors.js +1 -1
  172. package/dist/domain/domain-runtime/domain-runtime.d.ts +12 -0
  173. package/dist/domain/domain-runtime/spec/initialize.js +1 -1
  174. package/dist/domain/domain-runtime/spec/types.d.ts +15 -1
  175. package/dist/domain/index.d.ts +2 -0
  176. package/dist/domain/index.js +1 -1
  177. package/dist/domain/mocks/create-mock-domain-runtime.d.ts +6 -0
  178. package/dist/domain/system-components/phoenix-layout-elements/assistant-toolbar-button.d.ts +44 -0
  179. package/dist/domain/system-components/phoenix-layout-elements/assistant-toolbar-button.js +1 -0
  180. package/dist/domain/system-components/phoenix-layout-elements/index.d.ts +1 -0
  181. package/dist/domain/system-components/phoenix-layout-elements/index.js +1 -1
  182. package/dist/domain/system-components/phoenix-layout-elements/phoenix-layout-element.d.ts +2 -1
  183. package/dist/domain/system-components/phoenix-layout-elements/phoenix-layout-element.js +1 -1
  184. package/dist/editor/Editor.js +1 -1
  185. package/dist/editor/domain-editors/DomainSpecContext.js +1 -1
  186. package/dist/editor/domain-editors/apply-spec-update.js +1 -1
  187. package/dist/editor/domain-editors/use-implementation-files.d.ts +7 -3
  188. package/dist/editor/domain-editors/use-implementation-files.js +1 -1
  189. package/dist/editor/graphql/GraphQLPanel.js +1 -1
  190. package/dist/editor/variants/VariantAnswerFooter.d.ts +17 -0
  191. package/dist/editor/variants/VariantAnswerFooter.js +1 -0
  192. package/dist/editor/variants/VariantPreviewHandler.d.ts +6 -0
  193. package/dist/editor/variants/VariantPreviewHandler.js +1 -0
  194. package/dist/editor/variants/variant-preview-styles.d.ts +49 -0
  195. package/dist/editor/variants/variant-preview-styles.js +1 -0
  196. package/dist/i18n/locales/cs/messages.js +1 -1
  197. package/dist/i18n/locales/da/messages.js +1 -1
  198. package/dist/i18n/locales/de/messages.js +1 -1
  199. package/dist/i18n/locales/de-AT/messages.js +1 -1
  200. package/dist/i18n/locales/en/messages.js +1 -1
  201. package/dist/i18n/locales/en-AU/messages.js +1 -1
  202. package/dist/i18n/locales/en-GB/messages.js +1 -1
  203. package/dist/i18n/locales/es/messages.js +1 -1
  204. package/dist/i18n/locales/fr/messages.js +1 -1
  205. package/dist/i18n/locales/hu/messages.js +1 -1
  206. package/dist/i18n/locales/it/messages.js +1 -1
  207. package/dist/i18n/locales/nl/messages.js +1 -1
  208. package/dist/i18n/locales/pl/messages.js +1 -1
  209. package/dist/i18n/locales/pt/messages.js +1 -1
  210. package/dist/i18n/locales/ro/messages.js +1 -1
  211. package/dist/i18n/locales/sk/messages.js +1 -1
  212. package/dist/i18n/locales/tr/messages.js +1 -1
  213. package/dist/legacy/domain-spec/__generated/domain-schema.d.ts +6 -0
  214. package/dist/phoenix/application-spec/application-spec-builder.js +1 -1
  215. package/dist/phoenix/application-spec/generate-assistant-prompt.d.ts +4 -3
  216. package/dist/phoenix/application-spec/generate-assistant-prompt.js +1 -1
  217. package/dist/phoenix/cli.js +1 -1
  218. package/dist/phoenix/commands/build.d.ts +5 -0
  219. package/dist/phoenix/commands/build.js +1 -1
  220. package/dist/phoenix/commands/deploy.js +2 -2
  221. package/dist/phoenix/commands/dev.js +5 -5
  222. package/dist/phoenix/commands/feedback.d.ts +2 -1
  223. package/dist/phoenix/commands/feedback.js +1 -1
  224. package/dist/phoenix/commands/index.d.ts +1 -0
  225. package/dist/phoenix/commands/index.js +1 -1
  226. package/dist/phoenix/commands/login.d.ts +24 -6
  227. package/dist/phoenix/commands/login.js +2 -2
  228. package/dist/phoenix/commands/story-dev.js +2 -2
  229. package/dist/phoenix/commands/variants.d.ts +35 -0
  230. package/dist/phoenix/commands/variants.js +1 -0
  231. package/dist/phoenix/editor-server/commands-router.d.ts +68 -1
  232. package/dist/phoenix/editor-server/commands-router.js +1 -1
  233. package/dist/phoenix/editor-server/editor-router.d.ts +65 -0
  234. package/dist/phoenix/editor-server/editor-server.d.ts +3 -3
  235. package/dist/phoenix/editor-server/editor-server.js +1 -1
  236. package/dist/phoenix/editor-server/protocol.d.ts +1 -0
  237. package/dist/phoenix/editor-server/spec-router.js +1 -1
  238. package/dist/phoenix/editor-server/trpc.d.ts +3 -0
  239. package/dist/phoenix/services/application-spec-project-watcher.d.ts +13 -2
  240. package/dist/phoenix/services/application-spec-project-watcher.js +3 -3
  241. package/dist/phoenix/services/index.d.ts +5 -0
  242. package/dist/phoenix/services/index.js +1 -1
  243. package/dist/phoenix/services/phoenix-application.d.ts +21 -0
  244. package/dist/phoenix/services/phoenix-application.js +1 -0
  245. package/dist/phoenix/services/phoenix-store.d.ts +48 -0
  246. package/dist/phoenix/services/phoenix-store.js +1 -0
  247. package/dist/phoenix/services/phx-banner-plugin.d.ts +32 -0
  248. package/dist/phoenix/services/phx-banner-plugin.js +1 -0
  249. package/dist/phoenix/services/phx-licenses-plugin.d.ts +55 -0
  250. package/dist/phoenix/services/phx-licenses-plugin.js +8 -0
  251. package/dist/phoenix/services/phx-variant-previews-plugin.d.ts +9 -0
  252. package/dist/phoenix/services/phx-variant-previews-plugin.js +1 -0
  253. package/dist/phoenix/services/variant-file-session.d.ts +36 -0
  254. package/dist/phoenix/services/variant-file-session.js +1 -0
  255. package/dist/phoenix/services/variant-preview-service.d.ts +80 -0
  256. package/dist/phoenix/services/variant-preview-service.js +1 -0
  257. package/dist/phoenix/services/vite-config.d.ts +2 -0
  258. package/dist/phoenix/services/vite-config.js +1 -1
  259. package/dist/phoenix/utils/index.d.ts +1 -0
  260. package/dist/phoenix/utils/index.js +1 -1
  261. package/dist/phoenix/utils/read-git-commit.d.ts +14 -0
  262. package/dist/phoenix/utils/read-git-commit.js +1 -0
  263. package/dist/react-sdk/application-runtime/common-services/analytics/analytics-service.d.ts +2 -2
  264. package/dist/react-sdk/application-runtime/common-services/analytics/domain-controls-analytics.d.ts +21 -21
  265. package/dist/react-sdk/application-runtime/hooks/data/use-published-data.d.ts +1 -1
  266. package/dist/react-sdk/application-runtime/runtime/create-application-runtime.d.ts +12 -0
  267. package/dist/react-sdk/domain-context/common-hooks/use-domain-context.d.ts +3 -0
  268. package/dist/ui-sdk/common/use-viewport-size.d.ts +4 -1
  269. package/dist/ui-sdk/common/use-viewport-size.js +1 -1
  270. package/dist/ui-sdk/components/mobile-controls/index.d.ts +1 -1
  271. package/dist/ui-sdk/theme/types.d.ts +4 -0
  272. package/package.json +5 -8
  273. package/schema/domain-spec.json +24 -0
  274. package/dist/configurator/assistant/browser-details.js +0 -1
  275. package/dist/configurator/assistant/graphql-tools.js +0 -1
  276. package/dist/configurator/assistant/index.d.ts +0 -1
  277. package/dist/configurator/assistant/index.js +0 -1
  278. package/dist/configurator/assistant/use-assistant-chat.d.ts +0 -20
  279. package/dist/configurator/assistant/use-assistant-chat.js +0 -1
  280. package/dist/extras/assistant/AssistantChat.d.ts +0 -6
  281. package/dist/extras/assistant/AssistantChat.js +0 -1
  282. package/dist/extras/assistant/index.d.ts +0 -1
  283. package/dist/extras/assistant/index.js +0 -1
@@ -44,6 +44,7 @@ declare module '@mui/material/styles' {
44
44
  PhxChat: 'root';
45
45
  PhxChatFooter: 'root' | 'formLayout' | 'input';
46
46
  PhxChatMessage: 'base' | 'assistant' | 'user' | 'widget' | 'error' | 'helper';
47
+ PhxAssistantPanel: 'root' | 'header' | 'title' | 'closeButton' | 'thread' | 'greeting' | 'messages' | 'userMessage' | 'assistantMessage' | 'chips' | 'activity' | 'activityIcon' | 'chip' | 'status' | 'notice' | 'newReplyButton' | 'composer' | 'inputFrame' | 'input' | 'sendButton' | 'stopButton' | 'hint';
47
48
  PhxTopNavigation: 'root' | 'stepper' | 'step';
48
49
  PhxListSelector: 'root';
49
50
  PhxListSelectorItem: 'root' | 'radio' | 'title' | 'description' | 'formControlLabel';
@@ -109,6 +110,9 @@ declare module '@mui/material/styles' {
109
110
  PhxChatMessage?: {
110
111
  styleOverrides?: ComponentsOverrides<Theme>['PhxChatMessage'];
111
112
  };
113
+ PhxAssistantPanel?: {
114
+ styleOverrides?: ComponentsOverrides<Theme>['PhxAssistantPanel'];
115
+ };
112
116
  PhxPreviewLayout?: {
113
117
  styleOverrides?: ComponentsOverrides<Theme>['PhxPreviewLayout'];
114
118
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salsita-ai/sdk",
3
- "version": "0.50.0-develop.da56a0c6c3",
3
+ "version": "0.50.0-develop.db8514eccf",
4
4
  "description": "TypeScript SDK and CLI for building, running, and deploying Phoenix configurator applications.",
5
5
  "keywords": [
6
6
  "salsita",
@@ -149,10 +149,6 @@
149
149
  "import": "./dist/extras/ai-preview/index.js",
150
150
  "types": "./dist/extras/ai-preview/index.d.ts"
151
151
  },
152
- "./extras/assistant": {
153
- "import": "./dist/extras/assistant/index.js",
154
- "types": "./dist/extras/assistant/index.d.ts"
155
- },
156
152
  "./common/utils": {
157
153
  "import": "./dist/common/utils.js",
158
154
  "types": "./dist/common/utils.d.ts"
@@ -225,7 +221,7 @@
225
221
  "@swc/core": "1.15.40",
226
222
  "@swc/wasm-web": "1.15.40",
227
223
  "@tanstack/ai": "0.64.0",
228
- "@tanstack/ai-react": "0.29.4",
224
+ "@tanstack/ai-client": "0.36.1",
229
225
  "@trpc/client": "11.17.0",
230
226
  "@trpc/react-query": "11.17.0",
231
227
  "@trpc/server": "11.17.0",
@@ -275,6 +271,7 @@
275
271
  "react-json-tree": "0.20.0",
276
272
  "react-markdown": "9.0.1",
277
273
  "remark": "15.0.1",
274
+ "remark-gfm": "4.0.0",
278
275
  "rxjs": "7.8.2",
279
276
  "semver": "7.6.3",
280
277
  "spark-md5": "3.0.2",
@@ -295,8 +292,8 @@
295
292
  "yaml": "2.9.0",
296
293
  "yargs": "17.7.2",
297
294
  "zod": "3.25.76",
298
- "@salsita-ai/common": "0.50.0-develop.da56a0c6c3",
299
- "@salsita-ai/contracts": "0.50.0-develop.da56a0c6c3"
295
+ "@salsita-ai/common": "0.50.0-develop.db8514eccf",
296
+ "@salsita-ai/contracts": "0.50.0-develop.db8514eccf"
300
297
  },
301
298
  "devDependencies": {
302
299
  "@clerk/clerk-react": "5.61.8",
@@ -18586,6 +18586,30 @@
18586
18586
  "required": ["kind"],
18587
18587
  "additionalProperties": false
18588
18588
  },
18589
+ {
18590
+ "type": "object",
18591
+ "properties": {
18592
+ "kind": {
18593
+ "type": "string",
18594
+ "enum": ["assistantToolbarButton"]
18595
+ },
18596
+ "props": {
18597
+ "type": "object",
18598
+ "properties": {
18599
+ "showTitle": {
18600
+ "type": "boolean"
18601
+ },
18602
+ "icon": {
18603
+ "type": "string"
18604
+ }
18605
+ },
18606
+ "required": [],
18607
+ "additionalProperties": false
18608
+ }
18609
+ },
18610
+ "required": ["kind"],
18611
+ "additionalProperties": false
18612
+ },
18589
18613
  {
18590
18614
  "type": "object",
18591
18615
  "properties": {
@@ -1 +0,0 @@
1
- import{browserDetailsTool as e}from"@salsita-ai/contracts/assistant";let t=e=>{let t=[];for(let i=0;i<e.length;i+=64)t.push(e.slice(i,i+64));return t};export const browserDetailsClientTool=e.client(()=>{let e=(()=>{let e=[`User agent: ${navigator.userAgent}`,`Viewport: ${window.innerWidth} x ${window.innerHeight} px`,`Screen: ${window.screen.width} x ${window.screen.height} px`,`Device pixel ratio: ${window.devicePixelRatio}`,`Language: ${navigator.language}`,`Time zone: ${Intl.DateTimeFormat().resolvedOptions().timeZone}`].flatMap(t),i=document.createElement("canvas");i.width=720,i.height=48+26*e.length;let n=i.getContext("2d");if(!n)throw Error("The browser details capture failed because the canvas has no 2D context. Retry in another browser.");return n.fillStyle="#ffffff",n.fillRect(0,0,i.width,i.height),n.fillStyle="#111111",n.font="16px monospace",n.textBaseline="top",e.forEach((e,t)=>n.fillText(e,24,24+26*t)),i.toDataURL("image/png")})();return[{type:"image",source:{type:"data",value:e.slice(e.indexOf(",")+1),mimeType:"image/png"}}]});
@@ -1 +0,0 @@
1
- import{AssistantGraphQLToolInput as e,applyTool as t,queryTool as o}from"@salsita-ai/contracts/assistant";let a=e=>({results:[],committed:!1,message:e}),s=e=>JSON.parse(JSON.stringify(e)),i=t=>{let o=e.safeParse(t);if(!o.success){let e=o.error.issues.map(e=>`${e.path.join(".")}: ${e.message}`).join("; ");return{ok:!1,refusal:a(`Nothing was run, because the tool input is not a list of operations (${e}). Send { "operations": [{ "query": "<one GraphQL operation>" }] } with at least one item.`)}}return{ok:!0,operations:o.data.operations.map(({query:e,variables:t,operationName:o})=>({document:e,variables:t??void 0,operationName:o??void 0}))}};export const queryClientTool=o.client(async(e,{context:t})=>{let o=i(e);return o.ok?t.storeSystem.isInitialized?s({results:(await t.graphQLSystem.prepare(t.storeSystem.stateSlices.committed.value.state,o.operations)).map(({result:e})=>e),committed:!1}):a("Nothing was run, because the configuration is not loaded yet, so there is no state to query. Call the tool again once the configurator has finished loading."):o.refusal});export const applyClientTool=t.client(async(e,{context:t})=>{if("owner"!==t.getActiveMode())return a("Nothing was run, because changes cannot be applied in this session: the user may view this configuration but not change it. The query tool still works here, including mutations, to show what a change would do without keeping it.");let o=i(e);return o.ok?s(await t.graphQLSystem.execute(o.operations)):o.refusal});
@@ -1 +0,0 @@
1
- export { useAssistantChat, type AssistantChatState } from './use-assistant-chat.js';
@@ -1 +0,0 @@
1
- export{useAssistantChat}from"./use-assistant-chat.js";
@@ -1,20 +0,0 @@
1
- import { type UIMessage } from '@tanstack/ai-react';
2
- /** Experimental assistant chat state and actions of the current configuration. */
3
- export interface AssistantChatState {
4
- /** The thread as painted: hydrated from the server, then streamed. */
5
- readonly messages: ReadonlyArray<UIMessage>;
6
- /** True while a reply streams or a browser tool runs. */
7
- readonly isLoading: boolean;
8
- readonly error: Error | undefined;
9
- /** Sends a user message stamped with its send time. */
10
- readonly send: (content: string) => Promise<void>;
11
- /** Stops the current reply in the browser and on the server. */
12
- readonly stop: () => Promise<void>;
13
- }
14
- /**
15
- * Experimental: the conversational assistant of the current configuration. The server owns the
16
- * thread — the chat hydrates from it on mount and rejoins a reply still streaming — so the hook
17
- * keeps nothing in browser storage. Each message carries its send time for the model. The model's
18
- * `query` and `apply` calls run here, in the browser, against the configurator this hook is rendered in.
19
- */
20
- export declare const useAssistantChat: () => AssistantChatState;
@@ -1 +0,0 @@
1
- import{fetchServerSentEvents as t,useChat as e}from"@tanstack/ai-react";import{useCallback as a,useMemo as r}from"react";import{useAuthorizedClient as s,useConfigurationId as n,useDomain as o}from"#package/react-sdk";import{useConfigurator as i}from"../application-runtime/index.js";import{browserDetailsClientTool as c}from"./browser-details.js";import{applyClientTool as p,queryClientTool as l}from"./graphql-tools.js";let m=[c,l,p];export const useAssistantChat=()=>{let c=n(),p=s(),l=r(()=>p.getAssistantChatConnection(c),[p,c]),d=r(()=>{let e=async()=>({headers:await l.headers()}),a=t(l.url,e),r=t(`${l.url}/runs`,e);return{...a,joinRun:r.joinRun}},[l]),{graphQLSystem:u}=i(),{storeSystem:h,domainContextSelectors:f}=o(),{getActiveMode:w}=f,{messages:g,isLoading:j,error:y,sendMessage:C,stop:S,runId:$}=e({threadId:`assistant:${c}`,connection:d,persistence:!0,history:{pageSize:50},tools:m,context:r(()=>({graphQLSystem:u,storeSystem:h,getActiveMode:w}),[u,h,w])});return{messages:g,isLoading:j,error:y,send:a(async t=>{let e={sentAt:new Date().toISOString()};await C({content:t,metadata:e})},[C]),stop:a(async()=>{S(),null!=$&&await fetch(`${l.url}/runs/${encodeURIComponent($)}/cancel`,{method:"POST",headers:await l.headers()})},[l,$,S])}};
@@ -1,6 +0,0 @@
1
- /**
2
- * Experimental, unstyled assistant chat for the current configuration: streamed replies, reasoning
3
- * summaries, tool calls with their payloads, a pending indicator and a stop button. It renders
4
- * nothing, and contacts no server, when the application spec has no `assistant` section.
5
- */
6
- export declare const AssistantChat: () => import("react/jsx-runtime").JSX.Element | null;
@@ -1 +0,0 @@
1
- import{jsx as e,jsxs as t}from"react/jsx-runtime";import{Alert as r,Box as a,Button as i,LinearProgress as n,Stack as o,TextField as l,Typography as s}from"@mui/material";import{useState as c}from"react";import{useAssistantChat as p}from"#package/configurator";import{useSpecAssistant as m}from"#package/react-sdk";let d=({part:t})=>{switch(t.type){case"text":return e(s,{sx:{whiteSpace:"pre-wrap"},children:t.content});case"thinking":return e(s,{variant:"body2",color:"text.secondary",sx:{fontStyle:"italic",whiteSpace:"pre-wrap"},children:t.content});case"tool-call":return e(s,{variant:"caption",component:"pre",sx:{m:0,whiteSpace:"pre-wrap"},children:`${t.name}(${JSON.stringify(t.input??t.arguments)}) \xb7 ${t.state}`});case"tool-result":{let r=(e=>{if("string"!=typeof e){for(let t of e)if("image"===t.type&&"data"===t.source.type)return`data:${t.source.mimeType};base64,${t.source.value}`}})(t.content);return r?e(a,{component:"img",src:r,alt:"Tool result",sx:{maxWidth:"100%",border:1}}):e(s,{variant:"caption",children:`Tool result \xb7 ${t.state}`})}default:return null}},u=()=>{let{messages:m,send:u,stop:h,isLoading:f,error:x}=p(),[g,v]=c("");return t(o,{spacing:1.5,sx:{p:2},children:[m.map(r=>t(a,{component:"div",sx:{alignSelf:"user"===r.role?"flex-end":"flex-start",maxWidth:"85%"},children:[e(s,{variant:"overline",children:r.role}),r.parts.map((t,r)=>e(d,{part:t},r))]},r.id)),f&&e(n,{"aria-label":"Assistant is responding"}),x&&e(r,{severity:"warning",children:x.message}),e("form",{onSubmit:e=>{e.preventDefault();let t=g.trim();t&&(v(""),u(t))},children:t(o,{direction:"row",spacing:1,children:[e(l,{size:"small",fullWidth:!0,placeholder:"Ask the assistant…",value:g,onChange:e=>v(e.target.value)}),f?e(i,{onClick:()=>void h(),children:"Stop"}):e(i,{type:"submit",variant:"contained",disabled:!g.trim(),children:"Send"})]})})]})};export const AssistantChat=()=>m()?e(u,{}):null;
@@ -1 +0,0 @@
1
- export { AssistantChat } from './AssistantChat.js';
@@ -1 +0,0 @@
1
- export{AssistantChat}from"./AssistantChat.js";