@happyvertical/smrt-svelte 0.53.1 → 0.53.3

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 (254) hide show
  1. package/package.json +15 -15
  2. package/dist/__tests__/app-state.test.js +0 -156
  3. package/dist/__tests__/data-surface-bridge.test.js +0 -351
  4. package/dist/__tests__/provider-mode-harness.svelte +0 -14
  5. package/dist/__tests__/provider-mode-harness.svelte.d.ts +0 -11
  6. package/dist/__tests__/provider-mode-harness.svelte.d.ts.map +0 -1
  7. package/dist/__tests__/provider-mode-probe.svelte +0 -13
  8. package/dist/__tests__/provider-mode-probe.svelte.d.ts +0 -8
  9. package/dist/__tests__/provider-mode-probe.svelte.d.ts.map +0 -1
  10. package/dist/__tests__/provider-webmcp-harness.svelte +0 -14
  11. package/dist/__tests__/provider-webmcp-harness.svelte.d.ts +0 -8
  12. package/dist/__tests__/provider-webmcp-harness.svelte.d.ts.map +0 -1
  13. package/dist/__tests__/success-never-text.test.js +0 -100
  14. package/dist/__tests__/warm-clients.test.js +0 -186
  15. package/dist/browser-ai/adapters/llm/bitgpu-inference-backend.test.js +0 -464
  16. package/dist/browser-ai/adapters/llm/webllm-inference-backend.test.js +0 -646
  17. package/dist/browser-ai/adapters/stt/browser-speech.test.js +0 -113
  18. package/dist/browser-ai/adapters/stt/dictation-source.test.js +0 -52
  19. package/dist/browser-ai/svelte/components/__tests__/ModelStatusControl.test.js +0 -172
  20. package/dist/components/board/__tests__/Board.test.js +0 -498
  21. package/dist/components/board/__tests__/BoardSsrHarness.svelte +0 -30
  22. package/dist/components/board/__tests__/BoardSsrHarness.svelte.d.ts +0 -19
  23. package/dist/components/board/__tests__/BoardSsrHarness.svelte.d.ts.map +0 -1
  24. package/dist/components/forms/__tests__/AddressInput.behavior.test.js +0 -216
  25. package/dist/components/forms/__tests__/CheckboxInput.test.js +0 -92
  26. package/dist/components/forms/__tests__/DateRangeInput.behavior.test.js +0 -135
  27. package/dist/components/forms/__tests__/DateTimeInput.behavior.test.js +0 -113
  28. package/dist/components/forms/__tests__/FileUpload.error-alert.test.js +0 -37
  29. package/dist/components/forms/__tests__/FileUpload.native-form.test.js +0 -249
  30. package/dist/components/forms/__tests__/FileUpload.test.js +0 -90
  31. package/dist/components/forms/__tests__/FileUploadReset.fixture.svelte +0 -24
  32. package/dist/components/forms/__tests__/FileUploadReset.fixture.svelte.d.ts +0 -10
  33. package/dist/components/forms/__tests__/FileUploadReset.fixture.svelte.d.ts.map +0 -1
  34. package/dist/components/forms/__tests__/Form.behavior.test.js +0 -137
  35. package/dist/components/forms/__tests__/Form.extraction.test.js +0 -68
  36. package/dist/components/forms/__tests__/Form.stt-error.test.js +0 -57
  37. package/dist/components/forms/__tests__/Form.test.js +0 -86
  38. package/dist/components/forms/__tests__/Form.ui-controls.test.js +0 -119
  39. package/dist/components/forms/__tests__/Form.webmcp.test.js +0 -2336
  40. package/dist/components/forms/__tests__/FormMicButton.test.js +0 -92
  41. package/dist/components/forms/__tests__/FormScope.test.js +0 -39
  42. package/dist/components/forms/__tests__/MeasurementInput.behavior.test.js +0 -129
  43. package/dist/components/forms/__tests__/MoneyInput.behavior.test.js +0 -124
  44. package/dist/components/forms/__tests__/NumberInput.behavior.test.js +0 -151
  45. package/dist/components/forms/__tests__/PhoneInput.behavior.test.js +0 -96
  46. package/dist/components/forms/__tests__/SearchInput.test.js +0 -79
  47. package/dist/components/forms/__tests__/SelectInput.behavior.test.js +0 -132
  48. package/dist/components/forms/__tests__/TextInput.behavior.test.js +0 -131
  49. package/dist/components/forms/__tests__/TextareaInput.behavior.test.js +0 -96
  50. package/dist/components/forms/__tests__/async-invalid-field.fixture.svelte +0 -30
  51. package/dist/components/forms/__tests__/async-invalid-field.fixture.svelte.d.ts +0 -7
  52. package/dist/components/forms/__tests__/async-invalid-field.fixture.svelte.d.ts.map +0 -1
  53. package/dist/components/forms/__tests__/async-validation-form.fixture.svelte +0 -19
  54. package/dist/components/forms/__tests__/async-validation-form.fixture.svelte.d.ts +0 -9
  55. package/dist/components/forms/__tests__/async-validation-form.fixture.svelte.d.ts.map +0 -1
  56. package/dist/components/forms/__tests__/async-validation-snapshot-form.fixture.svelte +0 -21
  57. package/dist/components/forms/__tests__/async-validation-snapshot-form.fixture.svelte.d.ts +0 -8
  58. package/dist/components/forms/__tests__/async-validation-snapshot-form.fixture.svelte.d.ts.map +0 -1
  59. package/dist/components/forms/__tests__/composite-inputs-a11y.test.js +0 -69
  60. package/dist/components/forms/__tests__/compound-registration-wrapper.fixture.svelte +0 -27
  61. package/dist/components/forms/__tests__/compound-registration-wrapper.fixture.svelte.d.ts +0 -9
  62. package/dist/components/forms/__tests__/compound-registration-wrapper.fixture.svelte.d.ts.map +0 -1
  63. package/dist/components/forms/__tests__/custom-registration-field.fixture.svelte +0 -48
  64. package/dist/components/forms/__tests__/custom-registration-field.fixture.svelte.d.ts +0 -10
  65. package/dist/components/forms/__tests__/custom-registration-field.fixture.svelte.d.ts.map +0 -1
  66. package/dist/components/forms/__tests__/form-extraction-values.fixture.svelte +0 -26
  67. package/dist/components/forms/__tests__/form-extraction-values.fixture.svelte.d.ts +0 -13
  68. package/dist/components/forms/__tests__/form-extraction-values.fixture.svelte.d.ts.map +0 -1
  69. package/dist/components/forms/__tests__/form-registration-lifecycle.fixture.svelte +0 -52
  70. package/dist/components/forms/__tests__/form-registration-lifecycle.fixture.svelte.d.ts +0 -16
  71. package/dist/components/forms/__tests__/form-registration-lifecycle.fixture.svelte.d.ts.map +0 -1
  72. package/dist/components/forms/__tests__/form-scope.fixture.svelte +0 -30
  73. package/dist/components/forms/__tests__/form-scope.fixture.svelte.d.ts +0 -10
  74. package/dist/components/forms/__tests__/form-scope.fixture.svelte.d.ts.map +0 -1
  75. package/dist/components/forms/__tests__/form-with-fields.fixture.svelte +0 -158
  76. package/dist/components/forms/__tests__/form-with-fields.fixture.svelte.d.ts +0 -51
  77. package/dist/components/forms/__tests__/form-with-fields.fixture.svelte.d.ts.map +0 -1
  78. package/dist/components/forms/__tests__/form-with-policy-field.fixture.svelte +0 -24
  79. package/dist/components/forms/__tests__/form-with-policy-field.fixture.svelte.d.ts +0 -11
  80. package/dist/components/forms/__tests__/form-with-policy-field.fixture.svelte.d.ts.map +0 -1
  81. package/dist/components/forms/__tests__/form-with-structured-fields.fixture.svelte +0 -105
  82. package/dist/components/forms/__tests__/form-with-structured-fields.fixture.svelte.d.ts +0 -42
  83. package/dist/components/forms/__tests__/form-with-structured-fields.fixture.svelte.d.ts.map +0 -1
  84. package/dist/components/forms/__tests__/form-with-ui-controls.fixture.svelte +0 -84
  85. package/dist/components/forms/__tests__/form-with-ui-controls.fixture.svelte.d.ts +0 -14
  86. package/dist/components/forms/__tests__/form-with-ui-controls.fixture.svelte.d.ts.map +0 -1
  87. package/dist/components/forms/__tests__/legacy-form-context.fixture.svelte +0 -44
  88. package/dist/components/forms/__tests__/legacy-form-context.fixture.svelte.d.ts +0 -9
  89. package/dist/components/forms/__tests__/legacy-form-context.fixture.svelte.d.ts.map +0 -1
  90. package/dist/components/forms/__tests__/mic-keyboard-a11y.test.js +0 -74
  91. package/dist/components/forms/__tests__/policy-field.fixture.svelte +0 -35
  92. package/dist/components/forms/__tests__/policy-field.fixture.svelte.d.ts +0 -8
  93. package/dist/components/forms/__tests__/policy-field.fixture.svelte.d.ts.map +0 -1
  94. package/dist/components/forms/__tests__/rich-inputs-a11y.test.js +0 -87
  95. package/dist/components/settings/__tests__/SettingsCatalog.test.js +0 -69
  96. package/dist/components/settings/__tests__/catalog.test.js +0 -46
  97. package/dist/components/workspace/__tests__/AdminShell.responsive.test.js +0 -597
  98. package/dist/components/workspace/__tests__/AdminShell.test.js +0 -572
  99. package/dist/components/workspace/__tests__/RoleShell.test.js +0 -772
  100. package/dist/components/workspace/__tests__/TenantNav.test.js +0 -208
  101. package/dist/components/workspace/__tests__/WorkspaceAccountMenu.test.js +0 -79
  102. package/dist/components/workspace/__tests__/WorkspaceShell.test.js +0 -630
  103. package/dist/components/workspace/__tests__/admin-shell-header-overflow.test.js +0 -25
  104. package/dist/components/workspace/__tests__/admin-shell-hotkeys.test.js +0 -34
  105. package/dist/components/workspace/__tests__/admin-shell-mobile.test.js +0 -217
  106. package/dist/components/workspace/__tests__/admin-shell-mutation-effect-harness.svelte +0 -52
  107. package/dist/components/workspace/__tests__/admin-shell-mutation-effect-harness.svelte.d.ts +0 -23
  108. package/dist/components/workspace/__tests__/admin-shell-mutation-effect-harness.svelte.d.ts.map +0 -1
  109. package/dist/components/workspace/__tests__/admin-shell-page-contracts.test.js +0 -30
  110. package/dist/components/workspace/__tests__/admin-shell-responsive-state.test.js +0 -184
  111. package/dist/components/workspace/__tests__/admin-shell-settings.test.js +0 -25
  112. package/dist/components/workspace/__tests__/admin-shell-state.test.js +0 -286
  113. package/dist/components/workspace/__tests__/admin-shell-theme-hooks.test.js +0 -36
  114. package/dist/components/workspace/__tests__/breadcrumbs-helpers.test.js +0 -141
  115. package/dist/components/workspace/__tests__/context-forwarding-harness.svelte +0 -45
  116. package/dist/components/workspace/__tests__/context-forwarding-harness.svelte.d.ts +0 -21
  117. package/dist/components/workspace/__tests__/context-forwarding-harness.svelte.d.ts.map +0 -1
  118. package/dist/components/workspace/__tests__/define-tools-dock.test.js +0 -1188
  119. package/dist/components/workspace/__tests__/harness.svelte +0 -25
  120. package/dist/components/workspace/__tests__/harness.svelte.d.ts +0 -14
  121. package/dist/components/workspace/__tests__/harness.svelte.d.ts.map +0 -1
  122. package/dist/components/workspace/__tests__/index.test.js +0 -28
  123. package/dist/components/workspace/__tests__/legacy-index.test.js +0 -9
  124. package/dist/components/workspace/__tests__/manifest-nav-helpers.test.js +0 -24
  125. package/dist/components/workspace/__tests__/manifest-nav.test.js +0 -599
  126. package/dist/components/workspace/__tests__/nav-helpers.test.js +0 -95
  127. package/dist/components/workspace/__tests__/render-harness.svelte +0 -66
  128. package/dist/components/workspace/__tests__/render-harness.svelte.d.ts +0 -32
  129. package/dist/components/workspace/__tests__/render-harness.svelte.d.ts.map +0 -1
  130. package/dist/components/workspace/__tests__/render-tools-dock.test.js +0 -260
  131. package/dist/components/workspace/__tests__/role-shell-bind-harness.svelte +0 -58
  132. package/dist/components/workspace/__tests__/role-shell-bind-harness.svelte.d.ts +0 -16
  133. package/dist/components/workspace/__tests__/role-shell-bind-harness.svelte.d.ts.map +0 -1
  134. package/dist/components/workspace/__tests__/role-shell-switch-harness.svelte +0 -41
  135. package/dist/components/workspace/__tests__/role-shell-switch-harness.svelte.d.ts +0 -13
  136. package/dist/components/workspace/__tests__/role-shell-switch-harness.svelte.d.ts.map +0 -1
  137. package/dist/components/workspace/__tests__/shell-chrome-components.test.js +0 -108
  138. package/dist/components/workspace/__tests__/system-feed.test.js +0 -327
  139. package/dist/components/workspace/__tests__/test-icon.svelte +0 -17
  140. package/dist/components/workspace/__tests__/test-icon.svelte.d.ts +0 -19
  141. package/dist/components/workspace/__tests__/test-icon.svelte.d.ts.map +0 -1
  142. package/dist/components/workspace/__tests__/typed-tool-fixture/TypedTool.svelte +0 -38
  143. package/dist/components/workspace/__tests__/typed-tool-fixture/TypedTool.svelte.d.ts +0 -22
  144. package/dist/components/workspace/__tests__/typed-tool-fixture/TypedTool.svelte.d.ts.map +0 -1
  145. package/dist/components/workspace/__tests__/typed-tool-fixture/register-typed-tool.d.ts +0 -66
  146. package/dist/components/workspace/__tests__/typed-tool-fixture/register-typed-tool.d.ts.map +0 -1
  147. package/dist/components/workspace/__tests__/typed-tool-fixture/register-typed-tool.js +0 -115
  148. package/dist/components/workspace/__tests__/typed-tool-fixture/typed-tool-types.d.ts +0 -15
  149. package/dist/components/workspace/__tests__/typed-tool-fixture/typed-tool-types.d.ts.map +0 -1
  150. package/dist/components/workspace/__tests__/typed-tool-fixture/typed-tool-types.js +0 -7
  151. package/dist/components/workspace/__tests__/typed-tool-fixture.test.js +0 -115
  152. package/dist/components/workspace/__tests__/use-harness-orphan.svelte +0 -9
  153. package/dist/components/workspace/__tests__/use-harness-orphan.svelte.d.ts +0 -19
  154. package/dist/components/workspace/__tests__/use-harness-orphan.svelte.d.ts.map +0 -1
  155. package/dist/components/workspace/__tests__/use-harness.svelte +0 -23
  156. package/dist/components/workspace/__tests__/use-harness.svelte.d.ts +0 -8
  157. package/dist/components/workspace/__tests__/use-harness.svelte.d.ts.map +0 -1
  158. package/dist/components/workspace/__tests__/use-tools-dock.test.js +0 -33
  159. package/dist/components/workspace/__tests__/workspace-shell-bind-harness.svelte +0 -43
  160. package/dist/components/workspace/__tests__/workspace-shell-bind-harness.svelte.d.ts +0 -11
  161. package/dist/components/workspace/__tests__/workspace-shell-bind-harness.svelte.d.ts.map +0 -1
  162. package/dist/components/workspace/server/__tests__/compose-availability.test.js +0 -383
  163. package/dist/components/workspace/server/__tests__/typed-context-fixture.d.ts +0 -78
  164. package/dist/components/workspace/server/__tests__/typed-context-fixture.d.ts.map +0 -1
  165. package/dist/components/workspace/server/__tests__/typed-context-fixture.js +0 -104
  166. package/dist/hooks/__tests__/stt-consumer.fixture.svelte +0 -25
  167. package/dist/hooks/__tests__/stt-consumer.fixture.svelte.d.ts +0 -15
  168. package/dist/hooks/__tests__/stt-consumer.fixture.svelte.d.ts.map +0 -1
  169. package/dist/hooks/__tests__/stt-ownership-harness.svelte +0 -42
  170. package/dist/hooks/__tests__/stt-ownership-harness.svelte.d.ts +0 -20
  171. package/dist/hooks/__tests__/stt-ownership-harness.svelte.d.ts.map +0 -1
  172. package/dist/hooks/__tests__/useSTT-ownership.test.js +0 -102
  173. package/dist/i18n/__tests__/server.spec.js +0 -57
  174. package/dist/internal/logger.test.js +0 -54
  175. package/dist/provider-mode.test.js +0 -86
  176. package/dist/provider-webmcp.test.js +0 -244
  177. package/dist/state/__tests__/app-state-ai-lifecycle.test.js +0 -240
  178. package/dist/state/__tests__/warm-clients.test.js +0 -40
  179. package/dist/web/__tests__/activity-feed-harness.svelte +0 -32
  180. package/dist/web/__tests__/activity-feed-harness.svelte.d.ts +0 -18
  181. package/dist/web/__tests__/activity-feed-harness.svelte.d.ts.map +0 -1
  182. package/dist/web/__tests__/activity-feed.integration.svelte.test.js +0 -190
  183. package/dist/web/__tests__/activity-feed.svelte.test.js +0 -235
  184. package/dist/web/__tests__/assistant-dock.integration.svelte.test.js +0 -204
  185. package/dist/web/__tests__/data-surface-conformance.integration.svelte.test.js +0 -1392
  186. package/dist/web/__tests__/harness.svelte +0 -25
  187. package/dist/web/__tests__/harness.svelte.d.ts +0 -15
  188. package/dist/web/__tests__/harness.svelte.d.ts.map +0 -1
  189. package/dist/web/__tests__/list-data-surface.fixture.svelte +0 -59
  190. package/dist/web/__tests__/list-data-surface.fixture.svelte.d.ts +0 -14
  191. package/dist/web/__tests__/list-data-surface.fixture.svelte.d.ts.map +0 -1
  192. package/dist/web/__tests__/list-data-surface.svelte.test.js +0 -106
  193. package/dist/web/__tests__/list-data-surface.test.js +0 -651
  194. package/dist/web/__tests__/list-sort-surface.fixture.svelte +0 -41
  195. package/dist/web/__tests__/list-sort-surface.fixture.svelte.d.ts +0 -15
  196. package/dist/web/__tests__/list-sort-surface.fixture.svelte.d.ts.map +0 -1
  197. package/dist/web/__tests__/list-sort-surface.svelte.test.js +0 -59
  198. package/dist/web/__tests__/live-collection.svelte.test.js +0 -185
  199. package/dist/web/__tests__/provider-ui-registry.fixture.svelte +0 -43
  200. package/dist/web/__tests__/provider-ui-registry.fixture.svelte.d.ts +0 -13
  201. package/dist/web/__tests__/provider-ui-registry.fixture.svelte.d.ts.map +0 -1
  202. package/dist/web/__tests__/provider-ui-registry.test.js +0 -235
  203. package/dist/web/__tests__/remote-query-harness.svelte +0 -27
  204. package/dist/web/__tests__/remote-query-harness.svelte.d.ts +0 -11
  205. package/dist/web/__tests__/remote-query-harness.svelte.d.ts.map +0 -1
  206. package/dist/web/__tests__/remote-query.svelte.test.js +0 -101
  207. package/dist/web/__tests__/surfaces.child.fixture.svelte +0 -69
  208. package/dist/web/__tests__/surfaces.child.fixture.svelte.d.ts +0 -16
  209. package/dist/web/__tests__/surfaces.child.fixture.svelte.d.ts.map +0 -1
  210. package/dist/web/__tests__/surfaces.fixture.svelte +0 -26
  211. package/dist/web/__tests__/surfaces.fixture.svelte.d.ts +0 -18
  212. package/dist/web/__tests__/surfaces.fixture.svelte.d.ts.map +0 -1
  213. package/dist/web/__tests__/surfaces.svelte.test.js +0 -140
  214. package/dist/web/__tests__/update-available-harness.svelte +0 -46
  215. package/dist/web/__tests__/update-available-harness.svelte.d.ts +0 -22
  216. package/dist/web/__tests__/update-available-harness.svelte.d.ts.map +0 -1
  217. package/dist/web/__tests__/update-available.svelte.test.js +0 -137
  218. package/dist/web/__tests__/view-intent-provider.fixture.svelte +0 -28
  219. package/dist/web/__tests__/view-intent-provider.fixture.svelte.d.ts +0 -13
  220. package/dist/web/__tests__/view-intent-provider.fixture.svelte.d.ts.map +0 -1
  221. package/dist/web/__tests__/view-intent.fixture.svelte +0 -33
  222. package/dist/web/__tests__/view-intent.fixture.svelte.d.ts +0 -15
  223. package/dist/web/__tests__/view-intent.fixture.svelte.d.ts.map +0 -1
  224. package/dist/web/__tests__/view-intent.intents.d.ts +0 -14
  225. package/dist/web/__tests__/view-intent.intents.d.ts.map +0 -1
  226. package/dist/web/__tests__/view-intent.intents.js +0 -38
  227. package/dist/web/__tests__/view-intent.svelte.test.js +0 -244
  228. package/dist/web/__tests__/webmcp-composed.child.fixture.svelte +0 -73
  229. package/dist/web/__tests__/webmcp-composed.child.fixture.svelte.d.ts +0 -8
  230. package/dist/web/__tests__/webmcp-composed.child.fixture.svelte.d.ts.map +0 -1
  231. package/dist/web/__tests__/webmcp-composed.fixture.svelte +0 -52
  232. package/dist/web/__tests__/webmcp-composed.fixture.svelte.d.ts +0 -12
  233. package/dist/web/__tests__/webmcp-composed.fixture.svelte.d.ts.map +0 -1
  234. package/dist/web/__tests__/webmcp-composed.integration.svelte.test.js +0 -251
  235. package/dist/web/__tests__/webmcp-effects-reactivity.child.fixture.svelte +0 -16
  236. package/dist/web/__tests__/webmcp-effects-reactivity.child.fixture.svelte.d.ts +0 -19
  237. package/dist/web/__tests__/webmcp-effects-reactivity.child.fixture.svelte.d.ts.map +0 -1
  238. package/dist/web/__tests__/webmcp-effects-reactivity.fixture.svelte +0 -11
  239. package/dist/web/__tests__/webmcp-effects-reactivity.fixture.svelte.d.ts +0 -8
  240. package/dist/web/__tests__/webmcp-effects-reactivity.fixture.svelte.d.ts.map +0 -1
  241. package/dist/web/__tests__/webmcp-harness-reactive-samename.svelte +0 -20
  242. package/dist/web/__tests__/webmcp-harness-reactive-samename.svelte.d.ts +0 -7
  243. package/dist/web/__tests__/webmcp-harness-reactive-samename.svelte.d.ts.map +0 -1
  244. package/dist/web/__tests__/webmcp-harness-unannotated.svelte +0 -14
  245. package/dist/web/__tests__/webmcp-harness-unannotated.svelte.d.ts +0 -19
  246. package/dist/web/__tests__/webmcp-harness-unannotated.svelte.d.ts.map +0 -1
  247. package/dist/web/__tests__/webmcp-harness.svelte +0 -18
  248. package/dist/web/__tests__/webmcp-harness.svelte.d.ts +0 -7
  249. package/dist/web/__tests__/webmcp-harness.svelte.d.ts.map +0 -1
  250. package/dist/web/__tests__/webmcp-ssr.fixture.svelte +0 -13
  251. package/dist/web/__tests__/webmcp-ssr.fixture.svelte.d.ts +0 -19
  252. package/dist/web/__tests__/webmcp-ssr.fixture.svelte.d.ts.map +0 -1
  253. package/dist/web/__tests__/webmcp-ui.test.js +0 -723
  254. package/dist/web/__tests__/webmcp.test.js +0 -234
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@happyvertical/smrt-svelte",
3
- "version": "0.53.1",
3
+ "version": "0.53.3",
4
4
  "smrtJsdoc": "strict",
5
5
  "description": "Svelte 5 components for SMRT user management - auth, users, tenants, roles, permissions, groups",
6
6
  "type": "module",
@@ -127,11 +127,11 @@
127
127
  },
128
128
  "dependencies": {
129
129
  "@happyvertical/logger": "^0.98.0",
130
- "@happyvertical/smrt-languages": "0.53.1",
131
- "@happyvertical/smrt-mcp-apps": "0.53.1",
132
- "@happyvertical/smrt-types": "0.53.1",
133
- "@happyvertical/smrt-ui": "0.53.1",
134
- "@happyvertical/smrt-web": "0.53.1",
130
+ "@happyvertical/smrt-languages": "0.53.3",
131
+ "@happyvertical/smrt-mcp-apps": "0.53.3",
132
+ "@happyvertical/smrt-types": "0.53.3",
133
+ "@happyvertical/smrt-ui": "0.53.3",
134
+ "@happyvertical/smrt-web": "0.53.3",
135
135
  "@tanstack/db": "^0.6.14",
136
136
  "@tanstack/svelte-db": "^0.1.91",
137
137
  "esm-env": "^1.2.2"
@@ -166,14 +166,14 @@
166
166
  }
167
167
  },
168
168
  "devDependencies": {
169
- "@happyvertical/smrt-agents": "0.53.1",
170
- "@happyvertical/smrt-chat": "0.53.1",
171
- "@happyvertical/smrt-content": "0.53.1",
172
- "@happyvertical/smrt-core": "0.53.1",
173
- "@happyvertical/smrt-reports": "0.53.1",
174
- "@happyvertical/smrt-scanner": "0.53.1",
175
- "@happyvertical/smrt-tenancy": "0.53.1",
176
- "@happyvertical/smrt-users": "0.53.1",
169
+ "@happyvertical/smrt-agents": "0.53.3",
170
+ "@happyvertical/smrt-chat": "0.53.3",
171
+ "@happyvertical/smrt-content": "0.53.3",
172
+ "@happyvertical/smrt-core": "0.53.3",
173
+ "@happyvertical/smrt-reports": "0.53.3",
174
+ "@happyvertical/smrt-scanner": "0.53.3",
175
+ "@happyvertical/smrt-tenancy": "0.53.3",
176
+ "@happyvertical/smrt-users": "0.53.3",
177
177
  "@sveltejs/package": "^2.5.8",
178
178
  "@sveltejs/vite-plugin-svelte": "^7.3.0",
179
179
  "@testing-library/jest-dom": "^7.0.1",
@@ -188,7 +188,7 @@
188
188
  "vitest": "4.1.10"
189
189
  },
190
190
  "scripts": {
191
- "build": "svelte-package -i src --tsconfig tsconfig.svelte.json",
191
+ "build": "svelte-package -i src --tsconfig tsconfig.svelte.json && node ../../scripts/prune-svelte-package-artifacts.js dist",
192
192
  "dev": "svelte-package -i src --watch",
193
193
  "check": "pnpm exec svelte-check --tsconfig ./tsconfig.svelte.json",
194
194
  "test": "pnpm run test:unit && pnpm run test:conformance",
@@ -1,156 +0,0 @@
1
- /**
2
- * Tests for app state types and initial state
3
- */
4
- import { describe, expect, it } from 'vitest';
5
- import { createInitialState, } from '../state/app-state.js';
6
- describe('createInitialState', () => {
7
- it('creates initial state with correct defaults', () => {
8
- const state = createInitialState();
9
- expect(state.mode).toBe('default');
10
- expect(state.modeSource).toBe('auto');
11
- expect(state.initialized).toBe(false);
12
- expect(state.error).toBeNull();
13
- });
14
- it('creates initial session with null user', () => {
15
- const state = createInitialState();
16
- expect(state.session.user).toBeNull();
17
- expect(state.session.isAuthenticated).toBe(false);
18
- expect(state.session.permissions).toEqual([]);
19
- expect(state.session.preferences).toEqual({});
20
- });
21
- it('creates initial socket state as disconnected', () => {
22
- const state = createInitialState();
23
- expect(state.socket.status).toBe('disconnected');
24
- expect(state.socket.reconnectAttempts).toBe(0);
25
- expect(state.socket.lastError).toBeNull();
26
- });
27
- it('creates initial AI state as uninitialized', () => {
28
- const state = createInitialState();
29
- expect(state.ai.stt.initState).toBe('uninitialized');
30
- expect(state.ai.tts.initState).toBe('uninitialized');
31
- expect(state.ai.llm.initState).toBe('uninitialized');
32
- });
33
- });
34
- describe('UserSession type', () => {
35
- it('allows null user', () => {
36
- const session = {
37
- user: null,
38
- isAuthenticated: false,
39
- permissions: [],
40
- preferences: {},
41
- };
42
- expect(session.user).toBeNull();
43
- expect(session.isAuthenticated).toBe(false);
44
- });
45
- it('allows user with permissions', () => {
46
- const session = {
47
- user: {
48
- id: 'user-123',
49
- profileId: 'profile-456',
50
- email: 'test@example.com',
51
- status: 'active',
52
- lastLoginAt: null,
53
- },
54
- isAuthenticated: true,
55
- permissions: ['articles.create', 'articles.read'],
56
- preferences: {
57
- preferredSTT: 'whisper-cpp',
58
- autoEnableSmrt: true,
59
- },
60
- };
61
- expect(session.user?.email).toBe('test@example.com');
62
- expect(session.isAuthenticated).toBe(true);
63
- expect(session.permissions).toContain('articles.create');
64
- });
65
- });
66
- describe('SocketState type', () => {
67
- it('allows all socket statuses', () => {
68
- const statuses = [
69
- 'disconnected',
70
- 'connecting',
71
- 'connected',
72
- 'reconnecting',
73
- ];
74
- statuses.forEach((status) => {
75
- const state = {
76
- status,
77
- reconnectAttempts: 0,
78
- lastError: null,
79
- };
80
- expect(state.status).toBe(status);
81
- });
82
- });
83
- });
84
- describe('SocketConfig type', () => {
85
- it('allows minimal config with just url', () => {
86
- const config = {
87
- url: 'wss://example.com/ws',
88
- };
89
- expect(config.url).toBe('wss://example.com/ws');
90
- expect(config.reconnect).toBeUndefined();
91
- expect(config.onMessage).toBeUndefined();
92
- });
93
- it('allows full config with all options', () => {
94
- const config = {
95
- url: 'wss://example.com/ws',
96
- reconnect: {
97
- enabled: true,
98
- maxAttempts: 10,
99
- baseDelay: 2000,
100
- },
101
- onOpen: () => { },
102
- onMessage: (data) => console.log(data),
103
- onClose: (event) => console.log(event),
104
- onError: (event) => console.log(event),
105
- };
106
- expect(config.url).toBe('wss://example.com/ws');
107
- expect(config.reconnect?.enabled).toBe(true);
108
- expect(config.reconnect?.maxAttempts).toBe(10);
109
- });
110
- });
111
- describe('AIConfig type', () => {
112
- it('creates initial AI loading state', () => {
113
- const state = createInitialState();
114
- expect(state.aiLoading.phase).toBe('idle');
115
- expect(state.aiLoading.currentAdapter).toBeNull();
116
- expect(state.aiLoading.overallProgress).toBe(0);
117
- expect(state.aiLoading.message).toBe('');
118
- expect(state.aiLoading.loaded).toEqual([]);
119
- expect(state.aiLoading.failed).toEqual([]);
120
- expect(state.aiLoading.error).toBeNull();
121
- });
122
- });
123
- describe('AIConfig types', () => {
124
- it('allows preload strategies', () => {
125
- const strategies = ['none', 'eager', 'idle', 'on-visible'];
126
- strategies.forEach((strategy) => {
127
- expect(strategy).toBeDefined();
128
- });
129
- });
130
- it('allows STT config', () => {
131
- const sttConfig = {
132
- type: 'whisper-cpp',
133
- model: 'tiny.en',
134
- enabled: true,
135
- };
136
- expect(sttConfig.type).toBe('whisper-cpp');
137
- expect(sttConfig.model).toBe('tiny.en');
138
- });
139
- it('allows TTS config', () => {
140
- const ttsConfig = {
141
- type: 'browser-synthesis',
142
- voice: 'Google UK English Female',
143
- enabled: true,
144
- };
145
- expect(ttsConfig.type).toBe('browser-synthesis');
146
- });
147
- it('allows LLM config', () => {
148
- const llmConfig = {
149
- type: 'webllm',
150
- model: 'Llama-3.1-8B-Instruct',
151
- enabled: true,
152
- };
153
- expect(llmConfig.type).toBe('webllm');
154
- expect(llmConfig.model).toBe('Llama-3.1-8B-Instruct');
155
- });
156
- });
@@ -1,351 +0,0 @@
1
- import { createDataSurfaceRegistry, } from '@happyvertical/smrt-ui/data';
2
- import { describe, expect, it, vi } from 'vitest';
3
- import { createDataSurfaceBrowserBridge, DATA_SURFACE_IDENTIFIER_MAX_LENGTH, } from '../data-surface.js';
4
- const identity = { surfaceId: 'orders', kind: 'table' };
5
- const descriptor = {
6
- version: 1,
7
- identity,
8
- schemaVersion: 1,
9
- label: 'Orders',
10
- rowKey: 'id',
11
- columns: [{ id: 'id', label: 'ID', capabilities: ['read'] }],
12
- query: { modes: ['rows'], projectableColumnIds: ['id'] },
13
- controls: [{ id: 'refresh', label: 'Refresh' }],
14
- actions: [],
15
- limits: { maxQueryRows: 10, maxQueryBytes: 1000, maxSelectionSize: 10 },
16
- };
17
- function request(overrides = {}) {
18
- return {
19
- type: 'data-surface.command',
20
- version: 1,
21
- commandId: 'command-1',
22
- sessionId: 'session-1',
23
- source: 'server-1',
24
- expiresAt: 10_000,
25
- identity,
26
- expectedRevision: 1,
27
- controlId: 'refresh',
28
- ...overrides,
29
- };
30
- }
31
- function transport() {
32
- const messages = [];
33
- const listeners = new Set();
34
- return {
35
- messages,
36
- send: vi.fn((message) => {
37
- messages.push(message);
38
- }),
39
- subscribe(listener) {
40
- listeners.add(listener);
41
- return () => listeners.delete(listener);
42
- },
43
- receive(message, peer = {
44
- sessionId: 'session-1',
45
- source: 'server-1',
46
- }) {
47
- for (const listener of listeners)
48
- listener(message, peer);
49
- },
50
- };
51
- }
52
- function fixture() {
53
- let revision = 1;
54
- const execute = vi.fn(() => {
55
- revision += 1;
56
- });
57
- const registry = createDataSurfaceRegistry();
58
- registry.register({
59
- descriptor,
60
- getSnapshot: () => ({ revision, state: { refreshed: revision > 1 } }),
61
- execute,
62
- });
63
- return { registry, execute };
64
- }
65
- const drain = () => new Promise((resolve) => setTimeout(resolve, 0));
66
- describe('data-surface browser bridge', () => {
67
- it('requires the bound session/source and acknowledges a successful command', async () => {
68
- const { registry, execute } = fixture();
69
- const link = transport();
70
- createDataSurfaceBrowserBridge({
71
- registry,
72
- transport: link,
73
- sessionId: 'session-1',
74
- source: 'browser-1',
75
- peerSource: 'server-1',
76
- now: () => 1_000,
77
- });
78
- await link.receive(request({ expiresAt: 2_000 }));
79
- await drain();
80
- expect(execute).toHaveBeenCalledTimes(1);
81
- expect(link.messages.at(-1)).toMatchObject({
82
- type: 'data-surface.ack',
83
- commandId: 'command-1',
84
- sessionId: 'session-1',
85
- source: 'browser-1',
86
- ok: true,
87
- });
88
- await link.receive(request({ expiresAt: 5_000 }));
89
- await drain();
90
- expect(execute).toHaveBeenCalledTimes(1);
91
- expect(link.messages.at(-1)).toMatchObject({ expiresAt: 5_000 });
92
- });
93
- it('does not execute stale, expired, or cross-session/source commands', async () => {
94
- const { registry, execute } = fixture();
95
- const link = transport();
96
- createDataSurfaceBrowserBridge({
97
- registry,
98
- transport: link,
99
- sessionId: 'session-1',
100
- source: 'browser-1',
101
- peerSource: 'server-1',
102
- now: () => 1_000,
103
- });
104
- await link.receive(request({ commandId: 'stale', expectedRevision: 99 }));
105
- await link.receive(request({ commandId: 'expired', expiresAt: 500 }));
106
- await link.receive(request({ commandId: 'session', sessionId: 'other' }));
107
- await link.receive(request({ commandId: 'source', source: 'other' }));
108
- await drain();
109
- expect(execute).not.toHaveBeenCalled();
110
- expect(link.messages
111
- .filter((message) => message.type === 'data-surface.ack')
112
- .map((message) => message.reason)).toEqual(expect.arrayContaining([
113
- 'stale_revision',
114
- 'expired',
115
- 'session_mismatch',
116
- 'source_mismatch',
117
- ]));
118
- });
119
- it('rejects a command whose wire identity is accompanied by an unauthenticated peer', async () => {
120
- const { registry, execute } = fixture();
121
- const link = transport();
122
- createDataSurfaceBrowserBridge({
123
- registry,
124
- transport: link,
125
- sessionId: 'session-1',
126
- source: 'browser-1',
127
- peerSource: 'server-1',
128
- now: () => 1_000,
129
- });
130
- await link.receive(request(), {
131
- sessionId: 'session-1',
132
- source: 'attacker',
133
- });
134
- await link.receive(request({ commandId: 'session-spoof' }), {
135
- sessionId: 'attacker',
136
- source: 'server-1',
137
- });
138
- expect(execute).not.toHaveBeenCalled();
139
- expect(link.messages).toHaveLength(0);
140
- });
141
- it('rejects identifiers longer than the shared bridge contract', async () => {
142
- const { registry, execute } = fixture();
143
- const link = transport();
144
- createDataSurfaceBrowserBridge({
145
- registry,
146
- transport: link,
147
- sessionId: 'session-1',
148
- source: 'browser-1',
149
- peerSource: 'server-1',
150
- now: () => 1_000,
151
- });
152
- const tooLong = 'x'.repeat(DATA_SURFACE_IDENTIFIER_MAX_LENGTH + 1);
153
- await link.receive(request({ commandId: tooLong }));
154
- await link.receive(request({ controlId: tooLong }));
155
- await link.receive(request({ identity: { surfaceId: tooLong, kind: 'table' } }));
156
- await link.receive(request({
157
- identity: {
158
- surfaceId: 'orders',
159
- kind: 'table',
160
- subject: { type: tooLong, id: 'docs' },
161
- },
162
- }));
163
- await link.receive(request({
164
- identity: {
165
- surfaceId: 'orders',
166
- kind: 'table',
167
- subject: { type: 'site', id: tooLong },
168
- },
169
- }));
170
- expect(execute).not.toHaveBeenCalled();
171
- expect(link.messages).toHaveLength(0);
172
- });
173
- it('retains every unexpired replay outcome and refuses new commands at capacity', async () => {
174
- const { registry, execute } = fixture();
175
- const link = transport();
176
- createDataSurfaceBrowserBridge({
177
- registry,
178
- transport: link,
179
- sessionId: 'session-1',
180
- source: 'browser-1',
181
- peerSource: 'server-1',
182
- now: () => 1_000,
183
- maxReplayEntries: 2,
184
- });
185
- await link.receive(request({ commandId: 'one', expiresAt: 5_000 }));
186
- await drain();
187
- await link.receive(request({ commandId: 'two', expectedRevision: 2, expiresAt: 5_000 }));
188
- await drain();
189
- await link.receive(request({ commandId: 'three', expectedRevision: 3, expiresAt: 5_000 }));
190
- await drain();
191
- expect(execute).toHaveBeenCalledTimes(2);
192
- expect(link.messages.at(-1)).toMatchObject({
193
- commandId: 'three',
194
- reason: 'replay_capacity_exceeded',
195
- });
196
- await link.receive(request({ commandId: 'one', expiresAt: 5_000 }));
197
- await drain();
198
- expect(execute).toHaveBeenCalledTimes(2);
199
- });
200
- it('atomically reserves replay capacity while concurrent executions are held', async () => {
201
- const registry = createDataSurfaceRegistry();
202
- const releases = [];
203
- const execute = vi.fn(() => new Promise((resolve) => releases.push(resolve)));
204
- registry.register({
205
- descriptor,
206
- getSnapshot: () => ({ revision: 1, state: {} }),
207
- execute,
208
- });
209
- const link = transport();
210
- createDataSurfaceBrowserBridge({
211
- registry,
212
- transport: link,
213
- sessionId: 'session-1',
214
- source: 'browser-1',
215
- peerSource: 'server-1',
216
- now: () => 1_000,
217
- maxReplayEntries: 2,
218
- });
219
- void link.receive(request({ commandId: 'held-one', expiresAt: 5_000 }));
220
- void link.receive(request({ commandId: 'held-two', expiresAt: 5_000 }));
221
- void link.receive(request({ commandId: 'held-three', expiresAt: 5_000 }));
222
- for (let attempt = 0; attempt < 5 && execute.mock.calls.length < 1; attempt++) {
223
- await drain();
224
- }
225
- expect(execute).toHaveBeenCalledTimes(1);
226
- expect(link.messages).toContainEqual(expect.objectContaining({
227
- type: 'data-surface.ack',
228
- commandId: 'held-three',
229
- reason: 'replay_capacity_exceeded',
230
- }));
231
- releases[0]?.();
232
- for (let attempt = 0; attempt < 5 && execute.mock.calls.length < 2; attempt++) {
233
- await drain();
234
- }
235
- releases[1]?.();
236
- await drain();
237
- await drain();
238
- expect(link.messages.filter((message) => message.type === 'data-surface.ack' && message.ok === true)).toHaveLength(2);
239
- });
240
- it('releases replay reservations when execution errors after expiry', async () => {
241
- let current = 1_000;
242
- const registry = createDataSurfaceRegistry();
243
- const execute = vi
244
- .fn()
245
- .mockImplementationOnce(() => {
246
- throw new Error('boom');
247
- })
248
- .mockImplementationOnce(() => undefined);
249
- registry.register({
250
- descriptor,
251
- getSnapshot: () => ({ revision: 1, state: {} }),
252
- execute,
253
- });
254
- const link = transport();
255
- createDataSurfaceBrowserBridge({
256
- registry,
257
- transport: link,
258
- sessionId: 'session-1',
259
- source: 'browser-1',
260
- peerSource: 'server-1',
261
- now: () => current,
262
- maxReplayEntries: 1,
263
- });
264
- await link.receive(request({ commandId: 'expired-error', expiresAt: 1_100 }));
265
- await drain();
266
- current = 1_200;
267
- await link.receive(request({ commandId: 'after-error', expiresAt: 5_000 }));
268
- await drain();
269
- expect(execute).toHaveBeenCalledTimes(2);
270
- expect(link.messages.at(-1)).toMatchObject({
271
- commandId: 'after-error',
272
- ok: true,
273
- });
274
- });
275
- it('releases replay capacity when execution never settles before expiry', async () => {
276
- vi.useFakeTimers();
277
- try {
278
- vi.setSystemTime(1_000);
279
- const registry = createDataSurfaceRegistry();
280
- let finishHung;
281
- const execute = vi
282
- .fn()
283
- .mockImplementationOnce(() => new Promise((resolve) => {
284
- finishHung = resolve;
285
- }))
286
- .mockImplementationOnce(() => undefined);
287
- registry.register({
288
- descriptor,
289
- getSnapshot: () => ({ revision: 1, state: {} }),
290
- execute,
291
- });
292
- registry.register({
293
- descriptor: {
294
- ...descriptor,
295
- identity: { surfaceId: 'invoices', kind: 'table' },
296
- },
297
- getSnapshot: () => ({ revision: 1, state: {} }),
298
- execute,
299
- });
300
- const link = transport();
301
- createDataSurfaceBrowserBridge({
302
- registry,
303
- transport: link,
304
- sessionId: 'session-1',
305
- source: 'browser-1',
306
- peerSource: 'server-1',
307
- maxReplayEntries: 1,
308
- });
309
- const first = link.receive(request({ commandId: 'hung', expiresAt: 1_100 }));
310
- await vi.advanceTimersByTimeAsync(100);
311
- await first;
312
- expect(link.messages.at(-1)).toMatchObject({
313
- commandId: 'hung',
314
- reason: 'expired',
315
- });
316
- finishHung();
317
- await vi.runOnlyPendingTimersAsync();
318
- expect(link.messages.filter((message) => message.type === 'data-surface.ack' && message.commandId === 'hung')).toHaveLength(1);
319
- await link.receive(request({
320
- commandId: 'after-hung',
321
- expiresAt: 5_000,
322
- identity: { surfaceId: 'invoices', kind: 'table' },
323
- }));
324
- await vi.runOnlyPendingTimersAsync();
325
- expect(execute).toHaveBeenCalledTimes(2);
326
- expect(link.messages.at(-1)).toMatchObject({
327
- commandId: 'after-hung',
328
- ok: true,
329
- });
330
- }
331
- finally {
332
- vi.useRealTimers();
333
- }
334
- });
335
- it('forwards only monotonic registry events', async () => {
336
- const { registry } = fixture();
337
- const link = transport();
338
- createDataSurfaceBrowserBridge({
339
- registry,
340
- transport: link,
341
- sessionId: 'session-1',
342
- source: 'browser-1',
343
- peerSource: 'server-1',
344
- });
345
- await link.receive(request({ commandId: 'event-command', expiresAt: Date.now() + 1000 }));
346
- await drain();
347
- const events = link.messages.filter((message) => message.type === 'data-surface.event');
348
- expect(events.length).toBeGreaterThan(0);
349
- expect(events.map((event) => event.sequence)).toEqual([...events].map((event) => event.sequence).sort((a, b) => a - b));
350
- });
351
- });
@@ -1,14 +0,0 @@
1
- <script lang="ts">
2
- import Provider from '../Provider.svelte';
3
- import type { AppMode } from '../state/app-state.js';
4
- import type { SmrtAppStateManager } from '../state/app-state.svelte.js';
5
- import Probe from './provider-mode-probe.svelte';
6
-
7
- interface Props {
8
- mode?: AppMode;
9
- autoEnableSmrt?: boolean;
10
- capture: (state: SmrtAppStateManager) => void;
11
- }
12
- const { mode, autoEnableSmrt, capture }: Props = $props();
13
- </script>
14
- <Provider {mode} {autoEnableSmrt}><Probe {capture} /></Provider>
@@ -1,11 +0,0 @@
1
- import type { AppMode } from '../state/app-state.js';
2
- import type { SmrtAppStateManager } from '../state/app-state.svelte.js';
3
- interface Props {
4
- mode?: AppMode;
5
- autoEnableSmrt?: boolean;
6
- capture: (state: SmrtAppStateManager) => void;
7
- }
8
- declare const ProviderModeHarness: import("svelte").Component<Props, {}, "">;
9
- type ProviderModeHarness = ReturnType<typeof ProviderModeHarness>;
10
- export default ProviderModeHarness;
11
- //# sourceMappingURL=provider-mode-harness.svelte.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"provider-mode-harness.svelte.d.ts","sourceRoot":"","sources":["../../src/__tests__/provider-mode-harness.svelte.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAIxE,UAAU,KAAK;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;CAC/C;AAaD,QAAA,MAAM,mBAAmB,2CAAwC,CAAC;AAClE,KAAK,mBAAmB,GAAG,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAClE,eAAe,mBAAmB,CAAC"}
@@ -1,13 +0,0 @@
1
- <script lang="ts">
2
- import { untrack } from 'svelte';
3
- import type { SmrtAppStateManager } from '../state/app-state.svelte.js';
4
- import { getAppStateContext } from '../state/context.js';
5
-
6
- interface Props {
7
- capture: (state: SmrtAppStateManager) => void;
8
- }
9
- const { capture }: Props = $props();
10
- const appState = getAppStateContext();
11
- untrack(() => capture(appState));
12
- </script>
13
- <output aria-label="App mode">{appState.state.mode}</output>
@@ -1,8 +0,0 @@
1
- import type { SmrtAppStateManager } from '../state/app-state.svelte.js';
2
- interface Props {
3
- capture: (state: SmrtAppStateManager) => void;
4
- }
5
- declare const ProviderModeProbe: import("svelte").Component<Props, {}, "">;
6
- type ProviderModeProbe = ReturnType<typeof ProviderModeProbe>;
7
- export default ProviderModeProbe;
8
- //# sourceMappingURL=provider-mode-probe.svelte.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"provider-mode-probe.svelte.d.ts","sourceRoot":"","sources":["../../src/__tests__/provider-mode-probe.svelte.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAIxE,UAAU,KAAK;IACb,OAAO,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;CAC/C;AAcD,QAAA,MAAM,iBAAiB,2CAAwC,CAAC;AAChE,KAAK,iBAAiB,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC9D,eAAe,iBAAiB,CAAC"}
@@ -1,14 +0,0 @@
1
- <script lang="ts">
2
- import Provider from '../Provider.svelte';
3
- import type { WebMcpProviderConfig } from '../web/webmcp-provider.js';
4
-
5
- interface Props {
6
- webmcp: WebMcpProviderConfig;
7
- }
8
-
9
- const { webmcp }: Props = $props();
10
- </script>
11
-
12
- <Provider {webmcp}>
13
- <span></span>
14
- </Provider>
@@ -1,8 +0,0 @@
1
- import type { WebMcpProviderConfig } from '../web/webmcp-provider.js';
2
- interface Props {
3
- webmcp: WebMcpProviderConfig;
4
- }
5
- declare const ProviderWebmcpHarness: import("svelte").Component<Props, {}, "">;
6
- type ProviderWebmcpHarness = ReturnType<typeof ProviderWebmcpHarness>;
7
- export default ProviderWebmcpHarness;
8
- //# sourceMappingURL=provider-webmcp-harness.svelte.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"provider-webmcp-harness.svelte.d.ts","sourceRoot":"","sources":["../../src/__tests__/provider-webmcp-harness.svelte.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAGtE,UAAU,KAAK;IACb,MAAM,EAAE,oBAAoB,CAAC;CAC9B;AAeD,QAAA,MAAM,qBAAqB,2CAAwC,CAAC;AACpE,KAAK,qBAAqB,GAAG,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACtE,eAAe,qBAAqB,CAAC"}