@miragon/pulse-widget-shell 0.0.0-stage → 0.22.0

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 (831) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +164 -2
  3. package/dist/adapt-data-widget.d.ts +7 -0
  4. package/dist/adapt-data-widget.d.ts.map +1 -0
  5. package/dist/adapt-data-widget.js +7 -0
  6. package/dist/adapt-data-widget.js.map +1 -0
  7. package/dist/bpmn-names.d.ts +42 -0
  8. package/dist/bpmn-names.d.ts.map +1 -0
  9. package/dist/bpmn-names.js +151 -0
  10. package/dist/bpmn-names.js.map +1 -0
  11. package/dist/bpmn-names.test.d.ts +2 -0
  12. package/dist/bpmn-names.test.d.ts.map +1 -0
  13. package/dist/bpmn-names.test.js +143 -0
  14. package/dist/bpmn-names.test.js.map +1 -0
  15. package/dist/build-data-feed-result.test.d.ts +2 -0
  16. package/dist/build-data-feed-result.test.d.ts.map +1 -0
  17. package/dist/build-data-feed-result.test.js +28 -0
  18. package/dist/build-data-feed-result.test.js.map +1 -0
  19. package/dist/build-single-widget-view.test.d.ts +2 -0
  20. package/dist/build-single-widget-view.test.d.ts.map +1 -0
  21. package/dist/build-single-widget-view.test.js +136 -0
  22. package/dist/build-single-widget-view.test.js.map +1 -0
  23. package/dist/builder-texts.d.ts +27 -0
  24. package/dist/builder-texts.d.ts.map +1 -0
  25. package/dist/builder-texts.js +32 -0
  26. package/dist/builder-texts.js.map +1 -0
  27. package/dist/builder-texts.test.d.ts +2 -0
  28. package/dist/builder-texts.test.d.ts.map +1 -0
  29. package/dist/builder-texts.test.js +54 -0
  30. package/dist/builder-texts.test.js.map +1 -0
  31. package/dist/catalogue-sync.d.ts +18 -0
  32. package/dist/catalogue-sync.d.ts.map +1 -0
  33. package/dist/catalogue-sync.js +31 -0
  34. package/dist/catalogue-sync.js.map +1 -0
  35. package/dist/catalogue-sync.test.d.ts +2 -0
  36. package/dist/catalogue-sync.test.d.ts.map +1 -0
  37. package/dist/catalogue-sync.test.js +22 -0
  38. package/dist/catalogue-sync.test.js.map +1 -0
  39. package/dist/composed-server.d.ts +110 -0
  40. package/dist/composed-server.d.ts.map +1 -0
  41. package/dist/composed-server.edge.test.d.ts +2 -0
  42. package/dist/composed-server.edge.test.d.ts.map +1 -0
  43. package/dist/composed-server.edge.test.js +184 -0
  44. package/dist/composed-server.edge.test.js.map +1 -0
  45. package/dist/composed-server.fonts.test.d.ts +2 -0
  46. package/dist/composed-server.fonts.test.d.ts.map +1 -0
  47. package/dist/composed-server.fonts.test.js +186 -0
  48. package/dist/composed-server.fonts.test.js.map +1 -0
  49. package/dist/composed-server.js +260 -0
  50. package/dist/composed-server.js.map +1 -0
  51. package/dist/composed-server.test.d.ts +2 -0
  52. package/dist/composed-server.test.d.ts.map +1 -0
  53. package/dist/composed-server.test.js +332 -0
  54. package/dist/composed-server.test.js.map +1 -0
  55. package/dist/composition.d.ts +155 -0
  56. package/dist/composition.d.ts.map +1 -0
  57. package/dist/composition.js +163 -0
  58. package/dist/composition.js.map +1 -0
  59. package/dist/composition.test.d.ts +2 -0
  60. package/dist/composition.test.d.ts.map +1 -0
  61. package/dist/composition.test.js +275 -0
  62. package/dist/composition.test.js.map +1 -0
  63. package/dist/dashboard-store-postgres.d.ts +43 -0
  64. package/dist/dashboard-store-postgres.d.ts.map +1 -0
  65. package/dist/dashboard-store-postgres.js +225 -0
  66. package/dist/dashboard-store-postgres.js.map +1 -0
  67. package/dist/dashboard-store-postgres.test.d.ts +2 -0
  68. package/dist/dashboard-store-postgres.test.d.ts.map +1 -0
  69. package/dist/dashboard-store-postgres.test.js +272 -0
  70. package/dist/dashboard-store-postgres.test.js.map +1 -0
  71. package/dist/font-assets.d.ts +47 -0
  72. package/dist/font-assets.d.ts.map +1 -0
  73. package/dist/font-assets.js +93 -0
  74. package/dist/font-assets.js.map +1 -0
  75. package/dist/font-assets.test.d.ts +2 -0
  76. package/dist/font-assets.test.d.ts.map +1 -0
  77. package/dist/font-assets.test.js +123 -0
  78. package/dist/font-assets.test.js.map +1 -0
  79. package/dist/health.d.ts +59 -0
  80. package/dist/health.d.ts.map +1 -0
  81. package/dist/health.js +74 -0
  82. package/dist/health.js.map +1 -0
  83. package/dist/health.test.d.ts +2 -0
  84. package/dist/health.test.d.ts.map +1 -0
  85. package/dist/health.test.js +140 -0
  86. package/dist/health.test.js.map +1 -0
  87. package/dist/host-boot.d.ts +56 -0
  88. package/dist/host-boot.d.ts.map +1 -0
  89. package/dist/host-boot.js +64 -0
  90. package/dist/host-boot.js.map +1 -0
  91. package/dist/host-boot.test.d.ts +2 -0
  92. package/dist/host-boot.test.d.ts.map +1 -0
  93. package/dist/host-boot.test.js +59 -0
  94. package/dist/host-boot.test.js.map +1 -0
  95. package/dist/http-edge.d.ts +117 -0
  96. package/dist/http-edge.d.ts.map +1 -0
  97. package/dist/http-edge.js +219 -0
  98. package/dist/http-edge.js.map +1 -0
  99. package/dist/http-edge.test.d.ts +2 -0
  100. package/dist/http-edge.test.d.ts.map +1 -0
  101. package/dist/http-edge.test.js +255 -0
  102. package/dist/http-edge.test.js.map +1 -0
  103. package/dist/metrics.d.ts +48 -0
  104. package/dist/metrics.d.ts.map +1 -0
  105. package/dist/metrics.js +124 -0
  106. package/dist/metrics.js.map +1 -0
  107. package/dist/metrics.test.d.ts +2 -0
  108. package/dist/metrics.test.d.ts.map +1 -0
  109. package/dist/metrics.test.js +154 -0
  110. package/dist/metrics.test.js.map +1 -0
  111. package/dist/node-listener.d.ts +61 -0
  112. package/dist/node-listener.d.ts.map +1 -0
  113. package/dist/node-listener.js +165 -0
  114. package/dist/node-listener.js.map +1 -0
  115. package/dist/node-listener.test.d.ts +2 -0
  116. package/dist/node-listener.test.d.ts.map +1 -0
  117. package/dist/node-listener.test.js +331 -0
  118. package/dist/node-listener.test.js.map +1 -0
  119. package/dist/oauth-env.d.ts +42 -0
  120. package/dist/oauth-env.d.ts.map +1 -0
  121. package/dist/oauth-env.js +78 -0
  122. package/dist/oauth-env.js.map +1 -0
  123. package/dist/oauth-env.test.d.ts +2 -0
  124. package/dist/oauth-env.test.d.ts.map +1 -0
  125. package/dist/oauth-env.test.js +76 -0
  126. package/dist/oauth-env.test.js.map +1 -0
  127. package/dist/postgres.d.ts +59 -0
  128. package/dist/postgres.d.ts.map +1 -0
  129. package/dist/postgres.js +80 -0
  130. package/dist/postgres.js.map +1 -0
  131. package/dist/profile-advisory.d.ts +19 -0
  132. package/dist/profile-advisory.d.ts.map +1 -0
  133. package/dist/profile-advisory.js +48 -0
  134. package/dist/profile-advisory.js.map +1 -0
  135. package/dist/profile-advisory.test.d.ts +2 -0
  136. package/dist/profile-advisory.test.d.ts.map +1 -0
  137. package/dist/profile-advisory.test.js +53 -0
  138. package/dist/profile-advisory.test.js.map +1 -0
  139. package/dist/profile-constants.d.ts +37 -0
  140. package/dist/profile-constants.d.ts.map +1 -0
  141. package/dist/profile-constants.js +37 -0
  142. package/dist/profile-constants.js.map +1 -0
  143. package/dist/profile-migrations.d.ts +71 -0
  144. package/dist/profile-migrations.d.ts.map +1 -0
  145. package/dist/profile-migrations.js +88 -0
  146. package/dist/profile-migrations.js.map +1 -0
  147. package/dist/profile-migrations.test.d.ts +2 -0
  148. package/dist/profile-migrations.test.d.ts.map +1 -0
  149. package/dist/profile-migrations.test.js +200 -0
  150. package/dist/profile-migrations.test.js.map +1 -0
  151. package/dist/profile-record.d.ts +60 -0
  152. package/dist/profile-record.d.ts.map +1 -0
  153. package/dist/profile-record.js +78 -0
  154. package/dist/profile-record.js.map +1 -0
  155. package/dist/profile-slice.d.ts +53 -0
  156. package/dist/profile-slice.d.ts.map +1 -0
  157. package/dist/profile-slice.js +73 -0
  158. package/dist/profile-slice.js.map +1 -0
  159. package/dist/profile-slice.test.d.ts +2 -0
  160. package/dist/profile-slice.test.d.ts.map +1 -0
  161. package/dist/profile-slice.test.js +73 -0
  162. package/dist/profile-slice.test.js.map +1 -0
  163. package/dist/profile-store-env.d.ts +34 -0
  164. package/dist/profile-store-env.d.ts.map +1 -0
  165. package/dist/profile-store-env.js +44 -0
  166. package/dist/profile-store-env.js.map +1 -0
  167. package/dist/profile-store-env.test.d.ts +2 -0
  168. package/dist/profile-store-env.test.d.ts.map +1 -0
  169. package/dist/profile-store-env.test.js +69 -0
  170. package/dist/profile-store-env.test.js.map +1 -0
  171. package/dist/profile-store-postgres.d.ts +33 -0
  172. package/dist/profile-store-postgres.d.ts.map +1 -0
  173. package/dist/profile-store-postgres.js +87 -0
  174. package/dist/profile-store-postgres.js.map +1 -0
  175. package/dist/profile-store-raw.test.d.ts +2 -0
  176. package/dist/profile-store-raw.test.d.ts.map +1 -0
  177. package/dist/profile-store-raw.test.js +185 -0
  178. package/dist/profile-store-raw.test.js.map +1 -0
  179. package/dist/profile-store.d.ts +85 -0
  180. package/dist/profile-store.d.ts.map +1 -0
  181. package/dist/profile-store.js +182 -0
  182. package/dist/profile-store.js.map +1 -0
  183. package/dist/profile-store.test.d.ts +2 -0
  184. package/dist/profile-store.test.d.ts.map +1 -0
  185. package/dist/profile-store.test.js +353 -0
  186. package/dist/profile-store.test.js.map +1 -0
  187. package/dist/profile.d.ts +75 -0
  188. package/dist/profile.d.ts.map +1 -0
  189. package/dist/profile.js +85 -0
  190. package/dist/profile.js.map +1 -0
  191. package/dist/profile.test.d.ts +2 -0
  192. package/dist/profile.test.d.ts.map +1 -0
  193. package/dist/profile.test.js +71 -0
  194. package/dist/profile.test.js.map +1 -0
  195. package/dist/request-context.d.ts +47 -0
  196. package/dist/request-context.d.ts.map +1 -0
  197. package/dist/request-context.js +85 -0
  198. package/dist/request-context.js.map +1 -0
  199. package/dist/request-context.test.d.ts +2 -0
  200. package/dist/request-context.test.d.ts.map +1 -0
  201. package/dist/request-context.test.js +107 -0
  202. package/dist/request-context.test.js.map +1 -0
  203. package/dist/served-fonts.d.ts +38 -0
  204. package/dist/served-fonts.d.ts.map +1 -0
  205. package/dist/served-fonts.js +51 -0
  206. package/dist/served-fonts.js.map +1 -0
  207. package/dist/served-fonts.test.d.ts +2 -0
  208. package/dist/served-fonts.test.d.ts.map +1 -0
  209. package/dist/served-fonts.test.js +30 -0
  210. package/dist/served-fonts.test.js.map +1 -0
  211. package/dist/server-locale.d.ts +58 -0
  212. package/dist/server-locale.d.ts.map +1 -0
  213. package/dist/server-locale.js +64 -0
  214. package/dist/server-locale.js.map +1 -0
  215. package/dist/server-locale.test.d.ts +2 -0
  216. package/dist/server-locale.test.d.ts.map +1 -0
  217. package/dist/server-locale.test.js +90 -0
  218. package/dist/server-locale.test.js.map +1 -0
  219. package/dist/server.d.ts +43 -0
  220. package/dist/server.d.ts.map +1 -0
  221. package/dist/server.js +34 -0
  222. package/dist/server.js.map +1 -0
  223. package/dist/shell-catalogue.d.ts +12 -0
  224. package/dist/shell-catalogue.d.ts.map +1 -0
  225. package/dist/shell-catalogue.js +142 -0
  226. package/dist/shell-catalogue.js.map +1 -0
  227. package/dist/shell-settings-contract.d.ts +34 -0
  228. package/dist/shell-settings-contract.d.ts.map +1 -0
  229. package/dist/shell-settings-contract.js +21 -0
  230. package/dist/shell-settings-contract.js.map +1 -0
  231. package/dist/shell-settings.d.ts +24 -0
  232. package/dist/shell-settings.d.ts.map +1 -0
  233. package/dist/shell-settings.js +148 -0
  234. package/dist/shell-settings.js.map +1 -0
  235. package/dist/shell-settings.test.d.ts +2 -0
  236. package/dist/shell-settings.test.d.ts.map +1 -0
  237. package/dist/shell-settings.test.js +115 -0
  238. package/dist/shell-settings.test.js.map +1 -0
  239. package/dist/testing/catalog-text.d.ts +53 -0
  240. package/dist/testing/catalog-text.d.ts.map +1 -0
  241. package/dist/testing/catalog-text.js +146 -0
  242. package/dist/testing/catalog-text.js.map +1 -0
  243. package/dist/testing/catalog-text.test.d.ts +2 -0
  244. package/dist/testing/catalog-text.test.d.ts.map +1 -0
  245. package/dist/testing/catalog-text.test.js +137 -0
  246. package/dist/testing/catalog-text.test.js.map +1 -0
  247. package/dist/testing/colors.d.ts +34 -0
  248. package/dist/testing/colors.d.ts.map +1 -0
  249. package/dist/testing/colors.js +124 -0
  250. package/dist/testing/colors.js.map +1 -0
  251. package/dist/testing/colors.test.d.ts +2 -0
  252. package/dist/testing/colors.test.d.ts.map +1 -0
  253. package/dist/testing/colors.test.js +166 -0
  254. package/dist/testing/colors.test.js.map +1 -0
  255. package/dist/testing/contrast.d.ts +77 -0
  256. package/dist/testing/contrast.d.ts.map +1 -0
  257. package/dist/testing/contrast.js +382 -0
  258. package/dist/testing/contrast.js.map +1 -0
  259. package/dist/testing/contrast.test.d.ts +2 -0
  260. package/dist/testing/contrast.test.d.ts.map +1 -0
  261. package/dist/testing/contrast.test.js +230 -0
  262. package/dist/testing/contrast.test.js.map +1 -0
  263. package/dist/testing/display-texts.d.ts +23 -0
  264. package/dist/testing/display-texts.d.ts.map +1 -0
  265. package/dist/testing/display-texts.js +88 -0
  266. package/dist/testing/display-texts.js.map +1 -0
  267. package/dist/testing/display-texts.test.d.ts +2 -0
  268. package/dist/testing/display-texts.test.d.ts.map +1 -0
  269. package/dist/testing/display-texts.test.js +169 -0
  270. package/dist/testing/display-texts.test.js.map +1 -0
  271. package/dist/testing/glossary.d.ts +52 -0
  272. package/dist/testing/glossary.d.ts.map +1 -0
  273. package/dist/testing/glossary.js +135 -0
  274. package/dist/testing/glossary.js.map +1 -0
  275. package/dist/testing/glossary.test.d.ts +2 -0
  276. package/dist/testing/glossary.test.d.ts.map +1 -0
  277. package/dist/testing/glossary.test.js +78 -0
  278. package/dist/testing/glossary.test.js.map +1 -0
  279. package/dist/testing/glyphs.d.ts +27 -0
  280. package/dist/testing/glyphs.d.ts.map +1 -0
  281. package/dist/testing/glyphs.js +130 -0
  282. package/dist/testing/glyphs.js.map +1 -0
  283. package/dist/testing/glyphs.test.d.ts +2 -0
  284. package/dist/testing/glyphs.test.d.ts.map +1 -0
  285. package/dist/testing/glyphs.test.js +146 -0
  286. package/dist/testing/glyphs.test.js.map +1 -0
  287. package/dist/testing/icon-sizes.d.ts +22 -0
  288. package/dist/testing/icon-sizes.d.ts.map +1 -0
  289. package/dist/testing/icon-sizes.js +39 -0
  290. package/dist/testing/icon-sizes.js.map +1 -0
  291. package/dist/testing/icon-sizes.test.d.ts +2 -0
  292. package/dist/testing/icon-sizes.test.d.ts.map +1 -0
  293. package/dist/testing/icon-sizes.test.js +36 -0
  294. package/dist/testing/icon-sizes.test.js.map +1 -0
  295. package/dist/testing/index.d.ts +40 -0
  296. package/dist/testing/index.d.ts.map +1 -0
  297. package/dist/testing/index.js +40 -0
  298. package/dist/testing/index.js.map +1 -0
  299. package/dist/testing/source-scan.d.ts +16 -0
  300. package/dist/testing/source-scan.d.ts.map +1 -0
  301. package/dist/testing/source-scan.js +57 -0
  302. package/dist/testing/source-scan.js.map +1 -0
  303. package/dist/testing/tone-pairs.d.ts +20 -0
  304. package/dist/testing/tone-pairs.d.ts.map +1 -0
  305. package/dist/testing/tone-pairs.js +154 -0
  306. package/dist/testing/tone-pairs.js.map +1 -0
  307. package/dist/testing/type-scale.d.ts +40 -0
  308. package/dist/testing/type-scale.d.ts.map +1 -0
  309. package/dist/testing/type-scale.js +55 -0
  310. package/dist/testing/type-scale.js.map +1 -0
  311. package/dist/testing/type-scale.test.d.ts +2 -0
  312. package/dist/testing/type-scale.test.d.ts.map +1 -0
  313. package/dist/testing/type-scale.test.js +61 -0
  314. package/dist/testing/type-scale.test.js.map +1 -0
  315. package/dist/tool-schema-trim.d.ts +24 -0
  316. package/dist/tool-schema-trim.d.ts.map +1 -0
  317. package/dist/tool-schema-trim.js +49 -0
  318. package/dist/tool-schema-trim.js.map +1 -0
  319. package/dist/tool-schema-trim.test.d.ts +2 -0
  320. package/dist/tool-schema-trim.test.d.ts.map +1 -0
  321. package/dist/tool-schema-trim.test.js +53 -0
  322. package/dist/tool-schema-trim.test.js.map +1 -0
  323. package/dist/toolsets.d.ts +76 -0
  324. package/dist/toolsets.d.ts.map +1 -0
  325. package/dist/toolsets.js +41 -0
  326. package/dist/toolsets.js.map +1 -0
  327. package/dist/toolsets.test.d.ts +2 -0
  328. package/dist/toolsets.test.d.ts.map +1 -0
  329. package/dist/toolsets.test.js +86 -0
  330. package/dist/toolsets.test.js.map +1 -0
  331. package/dist/ui/action-feedback.d.ts +33 -0
  332. package/dist/ui/action-feedback.d.ts.map +1 -0
  333. package/dist/ui/action-feedback.js +51 -0
  334. package/dist/ui/action-feedback.js.map +1 -0
  335. package/dist/ui/action-feedback.test.d.ts +2 -0
  336. package/dist/ui/action-feedback.test.d.ts.map +1 -0
  337. package/dist/ui/action-feedback.test.js +77 -0
  338. package/dist/ui/action-feedback.test.js.map +1 -0
  339. package/dist/ui/app-shell-providers.d.ts +18 -0
  340. package/dist/ui/app-shell-providers.d.ts.map +1 -0
  341. package/dist/ui/app-shell-providers.js +19 -0
  342. package/dist/ui/app-shell-providers.js.map +1 -0
  343. package/dist/ui/app-shell-providers.test.d.ts +2 -0
  344. package/dist/ui/app-shell-providers.test.d.ts.map +1 -0
  345. package/dist/ui/app-shell-providers.test.js +249 -0
  346. package/dist/ui/app-shell-providers.test.js.map +1 -0
  347. package/dist/ui/ask-ai-button.d.ts +56 -0
  348. package/dist/ui/ask-ai-button.d.ts.map +1 -0
  349. package/dist/ui/ask-ai-button.js +36 -0
  350. package/dist/ui/ask-ai-button.js.map +1 -0
  351. package/dist/ui/ask-ai-button.test.d.ts +2 -0
  352. package/dist/ui/ask-ai-button.test.d.ts.map +1 -0
  353. package/dist/ui/ask-ai-button.test.js +103 -0
  354. package/dist/ui/ask-ai-button.test.js.map +1 -0
  355. package/dist/ui/ask-ai-prompt.d.ts +115 -0
  356. package/dist/ui/ask-ai-prompt.d.ts.map +1 -0
  357. package/dist/ui/ask-ai-prompt.js +174 -0
  358. package/dist/ui/ask-ai-prompt.js.map +1 -0
  359. package/dist/ui/ask-ai-prompt.test.d.ts +2 -0
  360. package/dist/ui/ask-ai-prompt.test.d.ts.map +1 -0
  361. package/dist/ui/ask-ai-prompt.test.js +240 -0
  362. package/dist/ui/ask-ai-prompt.test.js.map +1 -0
  363. package/dist/ui/bpmn-heatmap/heat-ramp.test.d.ts +2 -0
  364. package/dist/ui/bpmn-heatmap/heat-ramp.test.d.ts.map +1 -0
  365. package/dist/ui/bpmn-heatmap/heat-ramp.test.js +174 -0
  366. package/dist/ui/bpmn-heatmap/heat-ramp.test.js.map +1 -0
  367. package/dist/ui/bpmn-heatmap/heat-utils.d.ts +119 -0
  368. package/dist/ui/bpmn-heatmap/heat-utils.d.ts.map +1 -0
  369. package/dist/ui/bpmn-heatmap/heat-utils.js +231 -0
  370. package/dist/ui/bpmn-heatmap/heat-utils.js.map +1 -0
  371. package/dist/ui/bpmn-heatmap/heat-utils.test.d.ts +2 -0
  372. package/dist/ui/bpmn-heatmap/heat-utils.test.d.ts.map +1 -0
  373. package/dist/ui/bpmn-heatmap/heat-utils.test.js +59 -0
  374. package/dist/ui/bpmn-heatmap/heat-utils.test.js.map +1 -0
  375. package/dist/ui/bpmn-heatmap-labels.d.ts +46 -0
  376. package/dist/ui/bpmn-heatmap-labels.d.ts.map +1 -0
  377. package/dist/ui/bpmn-heatmap-labels.js +16 -0
  378. package/dist/ui/bpmn-heatmap-labels.js.map +1 -0
  379. package/dist/ui/bpmn-heatmap-widget.d.ts +38 -0
  380. package/dist/ui/bpmn-heatmap-widget.d.ts.map +1 -0
  381. package/dist/ui/bpmn-heatmap-widget.js +65 -0
  382. package/dist/ui/bpmn-heatmap-widget.js.map +1 -0
  383. package/dist/ui/bpmn-heatmap-widget.test.d.ts +2 -0
  384. package/dist/ui/bpmn-heatmap-widget.test.d.ts.map +1 -0
  385. package/dist/ui/bpmn-heatmap-widget.test.js +173 -0
  386. package/dist/ui/bpmn-heatmap-widget.test.js.map +1 -0
  387. package/dist/ui/bpmn-heatmap.d.ts +61 -0
  388. package/dist/ui/bpmn-heatmap.d.ts.map +1 -0
  389. package/dist/ui/bpmn-heatmap.js +119 -0
  390. package/dist/ui/bpmn-heatmap.js.map +1 -0
  391. package/dist/ui/bpmn-tokens.d.ts +81 -0
  392. package/dist/ui/bpmn-tokens.d.ts.map +1 -0
  393. package/dist/ui/bpmn-tokens.js +114 -0
  394. package/dist/ui/bpmn-tokens.js.map +1 -0
  395. package/dist/ui/bpmn-tokens.test.d.ts +2 -0
  396. package/dist/ui/bpmn-tokens.test.d.ts.map +1 -0
  397. package/dist/ui/bpmn-tokens.test.js +98 -0
  398. package/dist/ui/bpmn-tokens.test.js.map +1 -0
  399. package/dist/ui/bpmn-zoom-controls.d.ts +30 -0
  400. package/dist/ui/bpmn-zoom-controls.d.ts.map +1 -0
  401. package/dist/ui/bpmn-zoom-controls.js +29 -0
  402. package/dist/ui/bpmn-zoom-controls.js.map +1 -0
  403. package/dist/ui/brand-gates.test.d.ts +2 -0
  404. package/dist/ui/brand-gates.test.d.ts.map +1 -0
  405. package/dist/ui/brand-gates.test.js +131 -0
  406. package/dist/ui/brand-gates.test.js.map +1 -0
  407. package/dist/ui/brand-mark.d.ts +37 -0
  408. package/dist/ui/brand-mark.d.ts.map +1 -0
  409. package/dist/ui/brand-mark.js +33 -0
  410. package/dist/ui/brand-mark.js.map +1 -0
  411. package/dist/ui/brand-mark.test.d.ts +2 -0
  412. package/dist/ui/brand-mark.test.d.ts.map +1 -0
  413. package/dist/ui/brand-mark.test.js +111 -0
  414. package/dist/ui/brand-mark.test.js.map +1 -0
  415. package/dist/ui/confirm-dialog.d.ts +55 -0
  416. package/dist/ui/confirm-dialog.d.ts.map +1 -0
  417. package/dist/ui/confirm-dialog.js +59 -0
  418. package/dist/ui/confirm-dialog.js.map +1 -0
  419. package/dist/ui/confirm-dialog.test.d.ts +2 -0
  420. package/dist/ui/confirm-dialog.test.d.ts.map +1 -0
  421. package/dist/ui/confirm-dialog.test.js +115 -0
  422. package/dist/ui/confirm-dialog.test.js.map +1 -0
  423. package/dist/ui/count-tone.d.ts +20 -0
  424. package/dist/ui/count-tone.d.ts.map +1 -0
  425. package/dist/ui/count-tone.js +27 -0
  426. package/dist/ui/count-tone.js.map +1 -0
  427. package/dist/ui/count-tone.test.d.ts +2 -0
  428. package/dist/ui/count-tone.test.d.ts.map +1 -0
  429. package/dist/ui/count-tone.test.js +27 -0
  430. package/dist/ui/count-tone.test.js.map +1 -0
  431. package/dist/ui/create-use-t.d.ts +15 -0
  432. package/dist/ui/create-use-t.d.ts.map +1 -0
  433. package/dist/ui/create-use-t.js +17 -0
  434. package/dist/ui/create-use-t.js.map +1 -0
  435. package/dist/ui/declare-served-fonts.d.ts +14 -0
  436. package/dist/ui/declare-served-fonts.d.ts.map +1 -0
  437. package/dist/ui/declare-served-fonts.js +38 -0
  438. package/dist/ui/declare-served-fonts.js.map +1 -0
  439. package/dist/ui/declare-served-fonts.test.d.ts +2 -0
  440. package/dist/ui/declare-served-fonts.test.d.ts.map +1 -0
  441. package/dist/ui/declare-served-fonts.test.js +44 -0
  442. package/dist/ui/declare-served-fonts.test.js.map +1 -0
  443. package/dist/ui/describe-error.d.ts +71 -0
  444. package/dist/ui/describe-error.d.ts.map +1 -0
  445. package/dist/ui/describe-error.js +175 -0
  446. package/dist/ui/describe-error.js.map +1 -0
  447. package/dist/ui/describe-error.test.d.ts +2 -0
  448. package/dist/ui/describe-error.test.d.ts.map +1 -0
  449. package/dist/ui/describe-error.test.js +274 -0
  450. package/dist/ui/describe-error.test.js.map +1 -0
  451. package/dist/ui/display-mode-toggle.d.ts +32 -0
  452. package/dist/ui/display-mode-toggle.d.ts.map +1 -0
  453. package/dist/ui/display-mode-toggle.js +39 -0
  454. package/dist/ui/display-mode-toggle.js.map +1 -0
  455. package/dist/ui/error-labels.d.ts +65 -0
  456. package/dist/ui/error-labels.d.ts.map +1 -0
  457. package/dist/ui/error-labels.js +111 -0
  458. package/dist/ui/error-labels.js.map +1 -0
  459. package/dist/ui/format.d.ts +81 -0
  460. package/dist/ui/format.d.ts.map +1 -0
  461. package/dist/ui/format.js +189 -0
  462. package/dist/ui/format.js.map +1 -0
  463. package/dist/ui/format.test.d.ts +2 -0
  464. package/dist/ui/format.test.d.ts.map +1 -0
  465. package/dist/ui/format.test.js +181 -0
  466. package/dist/ui/format.test.js.map +1 -0
  467. package/dist/ui/generic-widgets.d.ts +15 -0
  468. package/dist/ui/generic-widgets.d.ts.map +1 -0
  469. package/dist/ui/generic-widgets.js +122 -0
  470. package/dist/ui/generic-widgets.js.map +1 -0
  471. package/dist/ui/generic-widgets.test.d.ts +2 -0
  472. package/dist/ui/generic-widgets.test.d.ts.map +1 -0
  473. package/dist/ui/generic-widgets.test.js +139 -0
  474. package/dist/ui/generic-widgets.test.js.map +1 -0
  475. package/dist/ui/hand-off-button.d.ts +45 -0
  476. package/dist/ui/hand-off-button.d.ts.map +1 -0
  477. package/dist/ui/hand-off-button.js +44 -0
  478. package/dist/ui/hand-off-button.js.map +1 -0
  479. package/dist/ui/hand-off-button.test.d.ts +2 -0
  480. package/dist/ui/hand-off-button.test.d.ts.map +1 -0
  481. package/dist/ui/hand-off-button.test.js +78 -0
  482. package/dist/ui/hand-off-button.test.js.map +1 -0
  483. package/dist/ui/host-context.d.ts +66 -0
  484. package/dist/ui/host-context.d.ts.map +1 -0
  485. package/dist/ui/host-context.js +122 -0
  486. package/dist/ui/host-context.js.map +1 -0
  487. package/dist/ui/host-context.test.d.ts +2 -0
  488. package/dist/ui/host-context.test.d.ts.map +1 -0
  489. package/dist/ui/host-context.test.js +160 -0
  490. package/dist/ui/host-context.test.js.map +1 -0
  491. package/dist/ui/host-document.d.ts +25 -0
  492. package/dist/ui/host-document.d.ts.map +1 -0
  493. package/dist/ui/host-document.js +93 -0
  494. package/dist/ui/host-document.js.map +1 -0
  495. package/dist/ui/host-document.test.d.ts +2 -0
  496. package/dist/ui/host-document.test.d.ts.map +1 -0
  497. package/dist/ui/host-document.test.js +112 -0
  498. package/dist/ui/host-document.test.js.map +1 -0
  499. package/dist/ui/host-widgets.d.ts +8 -0
  500. package/dist/ui/host-widgets.d.ts.map +1 -0
  501. package/dist/ui/host-widgets.js +18 -0
  502. package/dist/ui/host-widgets.js.map +1 -0
  503. package/dist/ui/humanize-key.d.ts +11 -0
  504. package/dist/ui/humanize-key.d.ts.map +1 -0
  505. package/dist/ui/humanize-key.js +26 -0
  506. package/dist/ui/humanize-key.js.map +1 -0
  507. package/dist/ui/humanize-key.test.d.ts +2 -0
  508. package/dist/ui/humanize-key.test.d.ts.map +1 -0
  509. package/dist/ui/humanize-key.test.js +42 -0
  510. package/dist/ui/humanize-key.test.js.map +1 -0
  511. package/dist/ui/icon.d.ts +37 -0
  512. package/dist/ui/icon.d.ts.map +1 -0
  513. package/dist/ui/icon.js +32 -0
  514. package/dist/ui/icon.js.map +1 -0
  515. package/dist/ui/id-breaks.d.ts +17 -0
  516. package/dist/ui/id-breaks.d.ts.map +1 -0
  517. package/dist/ui/id-breaks.js +36 -0
  518. package/dist/ui/id-breaks.js.map +1 -0
  519. package/dist/ui/id-breaks.test.d.ts +2 -0
  520. package/dist/ui/id-breaks.test.d.ts.map +1 -0
  521. package/dist/ui/id-breaks.test.js +37 -0
  522. package/dist/ui/id-breaks.test.js.map +1 -0
  523. package/dist/ui/id-text.d.ts +29 -0
  524. package/dist/ui/id-text.d.ts.map +1 -0
  525. package/dist/ui/id-text.js +103 -0
  526. package/dist/ui/id-text.js.map +1 -0
  527. package/dist/ui/id-text.test.d.ts +2 -0
  528. package/dist/ui/id-text.test.d.ts.map +1 -0
  529. package/dist/ui/id-text.test.js +122 -0
  530. package/dist/ui/id-text.test.js.map +1 -0
  531. package/dist/ui/index.d.ts +57 -0
  532. package/dist/ui/index.d.ts.map +1 -0
  533. package/dist/ui/index.js +65 -0
  534. package/dist/ui/index.js.map +1 -0
  535. package/dist/ui/index.test.d.ts +2 -0
  536. package/dist/ui/index.test.d.ts.map +1 -0
  537. package/dist/ui/index.test.js +34 -0
  538. package/dist/ui/index.test.js.map +1 -0
  539. package/dist/ui/inline-budget.d.ts +35 -0
  540. package/dist/ui/inline-budget.d.ts.map +1 -0
  541. package/dist/ui/inline-budget.js +27 -0
  542. package/dist/ui/inline-budget.js.map +1 -0
  543. package/dist/ui/inline-fit-registry.d.ts +56 -0
  544. package/dist/ui/inline-fit-registry.d.ts.map +1 -0
  545. package/dist/ui/inline-fit-registry.js +114 -0
  546. package/dist/ui/inline-fit-registry.js.map +1 -0
  547. package/dist/ui/inline-fit-solve.d.ts +50 -0
  548. package/dist/ui/inline-fit-solve.d.ts.map +1 -0
  549. package/dist/ui/inline-fit-solve.js +83 -0
  550. package/dist/ui/inline-fit-solve.js.map +1 -0
  551. package/dist/ui/inline-fit-solve.test.d.ts +2 -0
  552. package/dist/ui/inline-fit-solve.test.d.ts.map +1 -0
  553. package/dist/ui/inline-fit-solve.test.js +108 -0
  554. package/dist/ui/inline-fit-solve.test.js.map +1 -0
  555. package/dist/ui/inline-fit-time.test.d.ts +2 -0
  556. package/dist/ui/inline-fit-time.test.d.ts.map +1 -0
  557. package/dist/ui/inline-fit-time.test.js +110 -0
  558. package/dist/ui/inline-fit-time.test.js.map +1 -0
  559. package/dist/ui/inline-fit.d.ts +77 -0
  560. package/dist/ui/inline-fit.d.ts.map +1 -0
  561. package/dist/ui/inline-fit.js +242 -0
  562. package/dist/ui/inline-fit.js.map +1 -0
  563. package/dist/ui/inline-fit.test-support.d.ts +26 -0
  564. package/dist/ui/inline-fit.test-support.d.ts.map +1 -0
  565. package/dist/ui/inline-fit.test-support.js +34 -0
  566. package/dist/ui/inline-fit.test-support.js.map +1 -0
  567. package/dist/ui/inline-fit.test.d.ts +2 -0
  568. package/dist/ui/inline-fit.test.d.ts.map +1 -0
  569. package/dist/ui/inline-fit.test.js +159 -0
  570. package/dist/ui/inline-fit.test.js.map +1 -0
  571. package/dist/ui/kit-labels.d.ts +80 -0
  572. package/dist/ui/kit-labels.d.ts.map +1 -0
  573. package/dist/ui/kit-labels.js +110 -0
  574. package/dist/ui/kit-labels.js.map +1 -0
  575. package/dist/ui/kit-labels.test.d.ts +2 -0
  576. package/dist/ui/kit-labels.test.d.ts.map +1 -0
  577. package/dist/ui/kit-labels.test.js +98 -0
  578. package/dist/ui/kit-labels.test.js.map +1 -0
  579. package/dist/ui/kit-type-roles.test.d.ts +2 -0
  580. package/dist/ui/kit-type-roles.test.d.ts.map +1 -0
  581. package/dist/ui/kit-type-roles.test.js +122 -0
  582. package/dist/ui/kit-type-roles.test.js.map +1 -0
  583. package/dist/ui/komet-svg.d.ts +15 -0
  584. package/dist/ui/komet-svg.d.ts.map +1 -0
  585. package/dist/ui/komet-svg.js +21 -0
  586. package/dist/ui/komet-svg.js.map +1 -0
  587. package/dist/ui/list-table.d.ts +108 -0
  588. package/dist/ui/list-table.d.ts.map +1 -0
  589. package/dist/ui/list-table.js +161 -0
  590. package/dist/ui/list-table.js.map +1 -0
  591. package/dist/ui/list-table.test.d.ts +2 -0
  592. package/dist/ui/list-table.test.d.ts.map +1 -0
  593. package/dist/ui/list-table.test.js +169 -0
  594. package/dist/ui/list-table.test.js.map +1 -0
  595. package/dist/ui/localized-app-view.d.ts +40 -0
  596. package/dist/ui/localized-app-view.d.ts.map +1 -0
  597. package/dist/ui/localized-app-view.js +71 -0
  598. package/dist/ui/localized-app-view.js.map +1 -0
  599. package/dist/ui/log-text.d.ts +24 -0
  600. package/dist/ui/log-text.d.ts.map +1 -0
  601. package/dist/ui/log-text.js +31 -0
  602. package/dist/ui/log-text.js.map +1 -0
  603. package/dist/ui/menu-item.d.ts +12 -0
  604. package/dist/ui/menu-item.d.ts.map +1 -0
  605. package/dist/ui/menu-item.js +13 -0
  606. package/dist/ui/menu-item.js.map +1 -0
  607. package/dist/ui/named-id.d.ts +23 -0
  608. package/dist/ui/named-id.d.ts.map +1 -0
  609. package/dist/ui/named-id.js +21 -0
  610. package/dist/ui/named-id.js.map +1 -0
  611. package/dist/ui/named-id.test.d.ts +2 -0
  612. package/dist/ui/named-id.test.d.ts.map +1 -0
  613. package/dist/ui/named-id.test.js +57 -0
  614. package/dist/ui/named-id.test.js.map +1 -0
  615. package/dist/ui/native-select.d.ts +17 -0
  616. package/dist/ui/native-select.d.ts.map +1 -0
  617. package/dist/ui/native-select.js +20 -0
  618. package/dist/ui/native-select.js.map +1 -0
  619. package/dist/ui/navigation-focus.d.ts +20 -0
  620. package/dist/ui/navigation-focus.d.ts.map +1 -0
  621. package/dist/ui/navigation-focus.js +25 -0
  622. package/dist/ui/navigation-focus.js.map +1 -0
  623. package/dist/ui/navigation-focus.test.d.ts +2 -0
  624. package/dist/ui/navigation-focus.test.d.ts.map +1 -0
  625. package/dist/ui/navigation-focus.test.js +28 -0
  626. package/dist/ui/navigation-focus.test.js.map +1 -0
  627. package/dist/ui/open-in-cockpit-link.d.ts +28 -0
  628. package/dist/ui/open-in-cockpit-link.d.ts.map +1 -0
  629. package/dist/ui/open-in-cockpit-link.js +41 -0
  630. package/dist/ui/open-in-cockpit-link.js.map +1 -0
  631. package/dist/ui/paged-list-footer.test.d.ts +2 -0
  632. package/dist/ui/paged-list-footer.test.d.ts.map +1 -0
  633. package/dist/ui/paged-list-footer.test.js +128 -0
  634. package/dist/ui/paged-list-footer.test.js.map +1 -0
  635. package/dist/ui/paged-rows.d.ts +24 -0
  636. package/dist/ui/paged-rows.d.ts.map +1 -0
  637. package/dist/ui/paged-rows.js +25 -0
  638. package/dist/ui/paged-rows.js.map +1 -0
  639. package/dist/ui/parse-tool-result.test.d.ts +2 -0
  640. package/dist/ui/parse-tool-result.test.d.ts.map +1 -0
  641. package/dist/ui/parse-tool-result.test.js +88 -0
  642. package/dist/ui/parse-tool-result.test.js.map +1 -0
  643. package/dist/ui/profile-gate.d.ts +37 -0
  644. package/dist/ui/profile-gate.d.ts.map +1 -0
  645. package/dist/ui/profile-gate.js +126 -0
  646. package/dist/ui/profile-gate.js.map +1 -0
  647. package/dist/ui/profile-gate.test.d.ts +2 -0
  648. package/dist/ui/profile-gate.test.d.ts.map +1 -0
  649. package/dist/ui/profile-gate.test.js +246 -0
  650. package/dist/ui/profile-gate.test.js.map +1 -0
  651. package/dist/ui/query-fallback.d.ts +27 -0
  652. package/dist/ui/query-fallback.d.ts.map +1 -0
  653. package/dist/ui/query-fallback.js +30 -0
  654. package/dist/ui/query-fallback.js.map +1 -0
  655. package/dist/ui/query-fallback.test.d.ts +2 -0
  656. package/dist/ui/query-fallback.test.d.ts.map +1 -0
  657. package/dist/ui/query-fallback.test.js +49 -0
  658. package/dist/ui/query-fallback.test.js.map +1 -0
  659. package/dist/ui/row-card.d.ts +13 -0
  660. package/dist/ui/row-card.d.ts.map +1 -0
  661. package/dist/ui/row-card.js +11 -0
  662. package/dist/ui/row-card.js.map +1 -0
  663. package/dist/ui/section.d.ts +18 -0
  664. package/dist/ui/section.d.ts.map +1 -0
  665. package/dist/ui/section.js +14 -0
  666. package/dist/ui/section.js.map +1 -0
  667. package/dist/ui/segmented-control.d.ts +25 -0
  668. package/dist/ui/segmented-control.d.ts.map +1 -0
  669. package/dist/ui/segmented-control.js +22 -0
  670. package/dist/ui/segmented-control.js.map +1 -0
  671. package/dist/ui/settings-labels.d.ts +33 -0
  672. package/dist/ui/settings-labels.d.ts.map +1 -0
  673. package/dist/ui/settings-labels.js +50 -0
  674. package/dist/ui/settings-labels.js.map +1 -0
  675. package/dist/ui/settings-layout.d.ts +29 -0
  676. package/dist/ui/settings-layout.d.ts.map +1 -0
  677. package/dist/ui/settings-layout.js +49 -0
  678. package/dist/ui/settings-layout.js.map +1 -0
  679. package/dist/ui/settings-layout.test.d.ts +2 -0
  680. package/dist/ui/settings-layout.test.d.ts.map +1 -0
  681. package/dist/ui/settings-layout.test.js +73 -0
  682. package/dist/ui/settings-layout.test.js.map +1 -0
  683. package/dist/ui/settings.d.ts +47 -0
  684. package/dist/ui/settings.d.ts.map +1 -0
  685. package/dist/ui/settings.js +48 -0
  686. package/dist/ui/settings.js.map +1 -0
  687. package/dist/ui/settings.test.d.ts +2 -0
  688. package/dist/ui/settings.test.d.ts.map +1 -0
  689. package/dist/ui/settings.test.js +38 -0
  690. package/dist/ui/settings.test.js.map +1 -0
  691. package/dist/ui/shell-host.d.ts +46 -0
  692. package/dist/ui/shell-host.d.ts.map +1 -0
  693. package/dist/ui/shell-host.js +56 -0
  694. package/dist/ui/shell-host.js.map +1 -0
  695. package/dist/ui/shell-settings.d.ts +31 -0
  696. package/dist/ui/shell-settings.d.ts.map +1 -0
  697. package/dist/ui/shell-settings.js +97 -0
  698. package/dist/ui/shell-settings.js.map +1 -0
  699. package/dist/ui/shell-settings.test.d.ts +2 -0
  700. package/dist/ui/shell-settings.test.d.ts.map +1 -0
  701. package/dist/ui/shell-settings.test.js +108 -0
  702. package/dist/ui/shell-settings.test.js.map +1 -0
  703. package/dist/ui/shell-widgets.d.ts +14 -0
  704. package/dist/ui/shell-widgets.d.ts.map +1 -0
  705. package/dist/ui/shell-widgets.js +18 -0
  706. package/dist/ui/shell-widgets.js.map +1 -0
  707. package/dist/ui/table.d.ts +61 -0
  708. package/dist/ui/table.d.ts.map +1 -0
  709. package/dist/ui/table.js +43 -0
  710. package/dist/ui/table.js.map +1 -0
  711. package/dist/ui/tone-components.test.d.ts +2 -0
  712. package/dist/ui/tone-components.test.d.ts.map +1 -0
  713. package/dist/ui/tone-components.test.js +145 -0
  714. package/dist/ui/tone-components.test.js.map +1 -0
  715. package/dist/ui/tone-contrast.test.d.ts +2 -0
  716. package/dist/ui/tone-contrast.test.d.ts.map +1 -0
  717. package/dist/ui/tone-contrast.test.js +66 -0
  718. package/dist/ui/tone-contrast.test.js.map +1 -0
  719. package/dist/ui/toolkit-overlap.test.d.ts +2 -0
  720. package/dist/ui/toolkit-overlap.test.d.ts.map +1 -0
  721. package/dist/ui/toolkit-overlap.test.js +86 -0
  722. package/dist/ui/toolkit-overlap.test.js.map +1 -0
  723. package/dist/ui/use-apply-theme.d.ts +11 -0
  724. package/dist/ui/use-apply-theme.d.ts.map +1 -0
  725. package/dist/ui/use-apply-theme.js +37 -0
  726. package/dist/ui/use-apply-theme.js.map +1 -0
  727. package/dist/ui/use-apply-theme.test.d.ts +2 -0
  728. package/dist/ui/use-apply-theme.test.d.ts.map +1 -0
  729. package/dist/ui/use-apply-theme.test.js +102 -0
  730. package/dist/ui/use-apply-theme.test.js.map +1 -0
  731. package/dist/ui/use-bpmn-viewer.d.ts +135 -0
  732. package/dist/ui/use-bpmn-viewer.d.ts.map +1 -0
  733. package/dist/ui/use-bpmn-viewer.js +257 -0
  734. package/dist/ui/use-bpmn-viewer.js.map +1 -0
  735. package/dist/ui/use-bpmn-viewer.test.d.ts +2 -0
  736. package/dist/ui/use-bpmn-viewer.test.d.ts.map +1 -0
  737. package/dist/ui/use-bpmn-viewer.test.js +239 -0
  738. package/dist/ui/use-bpmn-viewer.test.js.map +1 -0
  739. package/dist/ui/use-detail-view.d.ts +49 -0
  740. package/dist/ui/use-detail-view.d.ts.map +1 -0
  741. package/dist/ui/use-detail-view.js +52 -0
  742. package/dist/ui/use-detail-view.js.map +1 -0
  743. package/dist/ui/use-detail-view.test.d.ts +2 -0
  744. package/dist/ui/use-detail-view.test.d.ts.map +1 -0
  745. package/dist/ui/use-detail-view.test.js +178 -0
  746. package/dist/ui/use-detail-view.test.js.map +1 -0
  747. package/dist/ui/use-paged-list-view.d.ts +48 -0
  748. package/dist/ui/use-paged-list-view.d.ts.map +1 -0
  749. package/dist/ui/use-paged-list-view.js +41 -0
  750. package/dist/ui/use-paged-list-view.js.map +1 -0
  751. package/dist/ui/use-paged-list-view.test.d.ts +2 -0
  752. package/dist/ui/use-paged-list-view.test.d.ts.map +1 -0
  753. package/dist/ui/use-paged-list-view.test.js +136 -0
  754. package/dist/ui/use-paged-list-view.test.js.map +1 -0
  755. package/dist/ui/use-paged-view-data.d.ts +103 -0
  756. package/dist/ui/use-paged-view-data.d.ts.map +1 -0
  757. package/dist/ui/use-paged-view-data.js +173 -0
  758. package/dist/ui/use-paged-view-data.js.map +1 -0
  759. package/dist/ui/use-paged-view-data.seeded.test.d.ts +2 -0
  760. package/dist/ui/use-paged-view-data.seeded.test.d.ts.map +1 -0
  761. package/dist/ui/use-paged-view-data.seeded.test.js +144 -0
  762. package/dist/ui/use-paged-view-data.seeded.test.js.map +1 -0
  763. package/dist/ui/use-paged-view-data.test.d.ts +2 -0
  764. package/dist/ui/use-paged-view-data.test.d.ts.map +1 -0
  765. package/dist/ui/use-paged-view-data.test.js +330 -0
  766. package/dist/ui/use-paged-view-data.test.js.map +1 -0
  767. package/dist/ui/use-reset-on-change.d.ts +22 -0
  768. package/dist/ui/use-reset-on-change.d.ts.map +1 -0
  769. package/dist/ui/use-reset-on-change.js +29 -0
  770. package/dist/ui/use-reset-on-change.js.map +1 -0
  771. package/dist/ui/use-reset-on-change.test.d.ts +2 -0
  772. package/dist/ui/use-reset-on-change.test.d.ts.map +1 -0
  773. package/dist/ui/use-reset-on-change.test.js +61 -0
  774. package/dist/ui/use-reset-on-change.test.js.map +1 -0
  775. package/dist/ui/use-view-data.seeded.test.d.ts +2 -0
  776. package/dist/ui/use-view-data.seeded.test.d.ts.map +1 -0
  777. package/dist/ui/use-view-data.seeded.test.js +168 -0
  778. package/dist/ui/use-view-data.seeded.test.js.map +1 -0
  779. package/dist/ui/view-data-state.d.ts +52 -0
  780. package/dist/ui/view-data-state.d.ts.map +1 -0
  781. package/dist/ui/view-data-state.js +54 -0
  782. package/dist/ui/view-data-state.js.map +1 -0
  783. package/dist/ui/view-data-state.test.d.ts +2 -0
  784. package/dist/ui/view-data-state.test.d.ts.map +1 -0
  785. package/dist/ui/view-data-state.test.js +62 -0
  786. package/dist/ui/view-data-state.test.js.map +1 -0
  787. package/dist/ui/view-meta.d.ts +70 -0
  788. package/dist/ui/view-meta.d.ts.map +1 -0
  789. package/dist/ui/view-meta.js +84 -0
  790. package/dist/ui/view-meta.js.map +1 -0
  791. package/dist/ui/view-meta.test.d.ts +2 -0
  792. package/dist/ui/view-meta.test.d.ts.map +1 -0
  793. package/dist/ui/view-meta.test.js +92 -0
  794. package/dist/ui/view-meta.test.js.map +1 -0
  795. package/dist/ui/view-refresh-state.d.ts +26 -0
  796. package/dist/ui/view-refresh-state.d.ts.map +1 -0
  797. package/dist/ui/view-refresh-state.js +15 -0
  798. package/dist/ui/view-refresh-state.js.map +1 -0
  799. package/dist/ui/widget-shell.d.ts +24 -0
  800. package/dist/ui/widget-shell.d.ts.map +1 -0
  801. package/dist/ui/widget-shell.js +50 -0
  802. package/dist/ui/widget-shell.js.map +1 -0
  803. package/dist/ui/widget-shell.test.d.ts +2 -0
  804. package/dist/ui/widget-shell.test.d.ts.map +1 -0
  805. package/dist/ui/widget-shell.test.js +41 -0
  806. package/dist/ui/widget-shell.test.js.map +1 -0
  807. package/dist/view-results.d.ts +42 -0
  808. package/dist/view-results.d.ts.map +1 -0
  809. package/dist/view-results.js +17 -0
  810. package/dist/view-results.js.map +1 -0
  811. package/dist/widget-meta-defaults.d.ts +48 -0
  812. package/dist/widget-meta-defaults.d.ts.map +1 -0
  813. package/dist/widget-meta-defaults.js +80 -0
  814. package/dist/widget-meta-defaults.js.map +1 -0
  815. package/dist/widget-meta-defaults.test.d.ts +2 -0
  816. package/dist/widget-meta-defaults.test.d.ts.map +1 -0
  817. package/dist/widget-meta-defaults.test.js +196 -0
  818. package/dist/widget-meta-defaults.test.js.map +1 -0
  819. package/dist/widget-tool-bindings.d.ts +71 -0
  820. package/dist/widget-tool-bindings.d.ts.map +1 -0
  821. package/dist/widget-tool-bindings.js +80 -0
  822. package/dist/widget-tool-bindings.js.map +1 -0
  823. package/dist/widget-tool-bindings.test.d.ts +2 -0
  824. package/dist/widget-tool-bindings.test.d.ts.map +1 -0
  825. package/dist/widget-tool-bindings.test.js +83 -0
  826. package/dist/widget-tool-bindings.test.js.map +1 -0
  827. package/dist/with-tool-errors.test.d.ts +2 -0
  828. package/dist/with-tool-errors.test.d.ts.map +1 -0
  829. package/dist/with-tool-errors.test.js +38 -0
  830. package/dist/with-tool-errors.test.js.map +1 -0
  831. package/package.json +113 -3
@@ -0,0 +1,92 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ // @vitest-environment happy-dom
3
+ import { afterEach, describe, expect, it } from "vitest";
4
+ import { cleanup, render } from "@testing-library/react";
5
+ import { catalogTextFindings } from "../testing/index.js";
6
+ import { setFormatLocale } from "./format.js";
7
+ import { VIEW_META_LABELS, ViewMeta, formatLookback, formatViewMeta } from "./view-meta.js";
8
+ afterEach(() => {
9
+ cleanup();
10
+ setFormatLocale(undefined);
11
+ });
12
+ const NOW = new Date("2026-10-10T12:40:00.000Z");
13
+ const AS_OF = "2026-10-10T12:32:00.000Z";
14
+ /** The formatters keep a number and its unit together with a non-breaking space. */
15
+ const plain = (s) => s.replace(/\u00a0/g, " ");
16
+ const german = () => setFormatLocale({ language: "de", locale: "de-DE", timeZone: "Europe/Berlin" });
17
+ const english = () => setFormatLocale({ language: "en", locale: "en-GB", timeZone: "Europe/Berlin" });
18
+ describe("formatLookback — a period token as the frame of a view", () => {
19
+ it("names the last n units in German and English", () => {
20
+ german();
21
+ expect(plain(formatLookback("7d"))).toBe("Letzte 7 Tage");
22
+ expect(plain(formatLookback("30d"))).toBe("Letzte 30 Tage");
23
+ expect(plain(formatLookback("2w"))).toBe("Letzte 2 Wochen");
24
+ english();
25
+ expect(plain(formatLookback("7d"))).toBe("Last 7 days");
26
+ expect(plain(formatLookback("14d"))).toBe("Last 14 days");
27
+ });
28
+ it("reads a single day or week as its length, never as yesterday or last week", () => {
29
+ german();
30
+ expect(plain(formatLookback("1d"))).toBe("Letzte 24 Stunden");
31
+ expect(plain(formatLookback("1w"))).toBe("Letzte 7 Tage");
32
+ expect(plain(formatLookback("1h"))).toBe("Letzte Stunde");
33
+ expect(plain(formatLookback("1m"))).toBe("Letzte Minute");
34
+ english();
35
+ expect(plain(formatLookback("1d"))).toBe("Last 24 hours");
36
+ expect(plain(formatLookback("1H"))).toBe("Last hour");
37
+ expect(plain(formatLookback("1m"))).toBe("Last minute");
38
+ });
39
+ it("passes a custom window through and renders nothing for no period", () => {
40
+ english();
41
+ expect(plain(formatLookback("since Monday"))).toBe("since Monday");
42
+ expect(plain(formatLookback(undefined))).toBe("");
43
+ expect(plain(formatLookback(""))).toBe("");
44
+ });
45
+ });
46
+ describe("formatViewMeta — period · engines · as-of", () => {
47
+ it("joins the known parts in German (the U7 reference line)", () => {
48
+ german();
49
+ expect(plain(formatViewMeta({ period: formatLookback("7d"), engines: { count: 6, silent: 3 }, asOf: AS_OF }, NOW))).toBe("Letzte 7 Tage · 6 Engines (3 ohne Metriken) · Stand 14:32");
50
+ });
51
+ it("joins the known parts in English, the subject first", () => {
52
+ english();
53
+ expect(plain(formatViewMeta({
54
+ subject: "order",
55
+ period: formatLookback("14d"),
56
+ engines: { count: 1 },
57
+ asOf: AS_OF,
58
+ }, NOW))).toBe("order · Last 14 days · 1 engine · As of 14:32");
59
+ });
60
+ it("leaves out what is unknown: no silent count, no period, a broken timestamp", () => {
61
+ german();
62
+ expect(formatViewMeta({ engines: { count: 2, silent: 0 }, asOf: "kaputt" }, NOW)).toBe("2 Engines");
63
+ expect(formatViewMeta({ engines: { count: 1, silent: null } }, NOW)).toBe("1 Engine");
64
+ expect(formatViewMeta({}, NOW)).toBe("");
65
+ });
66
+ it("dates an as-of time that is not from today", () => {
67
+ german();
68
+ expect(formatViewMeta({ asOf: "2026-10-08T07:05:00.000Z" }, NOW)).toBe("Stand 8.10.2026, 09:05");
69
+ });
70
+ });
71
+ describe("ViewMeta", () => {
72
+ it("renders the line as quiet text", () => {
73
+ english();
74
+ const { container } = render(_jsx(ViewMeta, { engines: { count: 3, silent: 1 } }));
75
+ const line = container.querySelector("[data-view-meta]");
76
+ expect(line?.textContent).toBe("3 engines (1 without metrics)");
77
+ expect(line?.className).toContain("text-muted-foreground");
78
+ });
79
+ it("renders nothing when no part is known", () => {
80
+ const { container } = render(_jsx(ViewMeta, { period: null }));
81
+ expect(container.innerHTML).toBe("");
82
+ });
83
+ });
84
+ describe("the meta line's words follow the voice rules", () => {
85
+ it.each([
86
+ ["de", VIEW_META_LABELS.de],
87
+ ["en", VIEW_META_LABELS.en],
88
+ ])("%s", (language, catalog) => {
89
+ expect(catalogTextFindings(catalog, { language })).toEqual([]);
90
+ });
91
+ });
92
+ //# sourceMappingURL=view-meta.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"view-meta.test.js","sourceRoot":"","sources":["../../src/ui/view-meta.test.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import type { ViewDataResult } from "@miragon/mcp-toolkit-ui/hooks";
2
+ /** What a seeded view knows about re-reading the data it shows. */
3
+ export interface ViewRefreshState {
4
+ /**
5
+ * A REFETCH of the data on screen failed: the view can no longer confirm it
6
+ * is current (an instance that ended answers 404 now). Set from the
7
+ * refetch's FIRST failed attempt — the toolkit's `failureReason`, while the
8
+ * client still retries (TanStack's default: 3 retries, ~7 s) — not only
9
+ * once `error` lands, so a view gating its writes on it never offers them
10
+ * on an unconfirmed state for the length of the backoff. Null while the
11
+ * data is the feed's latest answer, and null without data (that failure is
12
+ * the load error).
13
+ */
14
+ refreshError: Error | null;
15
+ /** A refetch of the data on screen is in flight. */
16
+ refreshing: boolean;
17
+ }
18
+ /**
19
+ * The refresh half of a view whose tool result SEEDS a live feed (the
20
+ * toolkit's `useViewData(…, { initialDataMode: "seed" })`): the toolkit hands
21
+ * out the raw query state (`error`, `failureReason`, `isFetching`), this is
22
+ * the house rule over it — the one place that decides when shown data counts
23
+ * as unconfirmed (`useDetailView`, the engine overview).
24
+ */
25
+ export declare function viewRefreshState(view: Pick<ViewDataResult<unknown>, "data" | "error" | "failureReason" | "isFetching">): ViewRefreshState;
26
+ //# sourceMappingURL=view-refresh-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"view-refresh-state.d.ts","sourceRoot":"","sources":["../../src/ui/view-refresh-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AAEnE,mEAAmE;AACnE,MAAM,WAAW,gBAAgB;IAC/B;;;;;;;;;OASG;IACH,YAAY,EAAE,KAAK,GAAG,IAAI,CAAA;IAC1B,oDAAoD;IACpD,UAAU,EAAE,OAAO,CAAA;CACpB;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,eAAe,GAAG,YAAY,CAAC,GACrF,gBAAgB,CAMlB"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * The refresh half of a view whose tool result SEEDS a live feed (the
3
+ * toolkit's `useViewData(…, { initialDataMode: "seed" })`): the toolkit hands
4
+ * out the raw query state (`error`, `failureReason`, `isFetching`), this is
5
+ * the house rule over it — the one place that decides when shown data counts
6
+ * as unconfirmed (`useDetailView`, the engine overview).
7
+ */
8
+ export function viewRefreshState(view) {
9
+ const shown = view.data !== null;
10
+ return {
11
+ refreshError: shown ? (view.error ?? view.failureReason) : null,
12
+ refreshing: shown && view.isFetching,
13
+ };
14
+ }
15
+ //# sourceMappingURL=view-refresh-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"view-refresh-state.js","sourceRoot":"","sources":["../../src/ui/view-refresh-state.ts"],"names":[],"mappings":"AAmBA;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAC9B,IAAsF;IAEtF,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,KAAK,IAAI,CAAA;IAChC,OAAO;QACL,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI;QAC/D,UAAU,EAAE,KAAK,IAAI,IAAI,CAAC,UAAU;KACrC,CAAA;AACH,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { type ReactNode } from "react";
2
+ /** Provide the host-reported display mode to the widget tree (bundle root only). */
3
+ export declare function DisplayModeProvider({ mode, children }: {
4
+ mode: string;
5
+ children: ReactNode;
6
+ }): import("react").JSX.Element;
7
+ /** The host-reported display mode for this subtree (`"inline"` outside a host). */
8
+ export declare function useHostDisplayMode(): string;
9
+ /**
10
+ * Top-level container for a Miragon-styled widget. Sets max-width, padding,
11
+ * background, and the default text/font conventions used by all dashboards.
12
+ * Nesting-aware: an inner WidgetShell keeps only the section stack (gap), so a
13
+ * widget that owns a shell can be embedded under an app-level shell unchanged.
14
+ *
15
+ * Padding on the CI grid: 24 px, 16 px below 640 px (an inline view on a
16
+ * phone or in a narrow chat column). Every child may shrink below its content
17
+ * (`min-w-0`), so a wide table scrolls inside its own region (`ListTable`)
18
+ * instead of widening the document.
19
+ */
20
+ export declare function WidgetShell({ children, className }: {
21
+ children: ReactNode;
22
+ className?: string;
23
+ }): import("react").JSX.Element;
24
+ //# sourceMappingURL=widget-shell.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"widget-shell.d.ts","sourceRoot":"","sources":["../../src/ui/widget-shell.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAoBjE,oFAAoF;AACpF,wBAAgB,mBAAmB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAE,+BAE5F;AAED,mFAAmF;AACnF,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,+BAsB/F"}
@@ -0,0 +1,50 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { createContext, useContext } from "react";
3
+ import { cn } from "@miragon/mcp-toolkit-ui";
4
+ /**
5
+ * True below an already-rendered WidgetShell. Widgets wrap themselves in a
6
+ * shell so they work standalone; composed hosts (the cockpit) also wrap the
7
+ * whole app in one — without this flag every embedded widget would stack a
8
+ * second layer of background, padding and max-width inside the first.
9
+ */
10
+ const InsideShellContext = createContext(false);
11
+ /**
12
+ * The host's display mode for the current render. mcp-use 2.x's
13
+ * `useDisplayMode` only works inside a `bootstrapView`-mounted view, so the
14
+ * value is provided from the bundle root (where that hook is legal) and
15
+ * defaults to `"inline"` everywhere else (unit renders, fixtures, standalone
16
+ * embeds) — exactly the pre-2.x fallback behaviour.
17
+ */
18
+ const DisplayModeContext = createContext("inline");
19
+ /** Provide the host-reported display mode to the widget tree (bundle root only). */
20
+ export function DisplayModeProvider({ mode, children }) {
21
+ return _jsx(DisplayModeContext.Provider, { value: mode, children: children });
22
+ }
23
+ /** The host-reported display mode for this subtree (`"inline"` outside a host). */
24
+ export function useHostDisplayMode() {
25
+ return useContext(DisplayModeContext);
26
+ }
27
+ /**
28
+ * Top-level container for a Miragon-styled widget. Sets max-width, padding,
29
+ * background, and the default text/font conventions used by all dashboards.
30
+ * Nesting-aware: an inner WidgetShell keeps only the section stack (gap), so a
31
+ * widget that owns a shell can be embedded under an app-level shell unchanged.
32
+ *
33
+ * Padding on the CI grid: 24 px, 16 px below 640 px (an inline view on a
34
+ * phone or in a narrow chat column). Every child may shrink below its content
35
+ * (`min-w-0`), so a wide table scrolls inside its own region (`ListTable`)
36
+ * instead of widening the document.
37
+ */
38
+ export function WidgetShell({ children, className }) {
39
+ const nested = useContext(InsideShellContext);
40
+ const displayMode = useContext(DisplayModeContext);
41
+ // Nested: drop background, padding, max-width and centering (the outer shell
42
+ // owns those), but keep the internal section stack — widgets rely on the
43
+ // shell's gap for the spacing between their own header/KPIs/tables.
44
+ if (nested) {
45
+ return _jsx("div", { className: cn("flex min-w-0 flex-col gap-6", className), children: children });
46
+ }
47
+ const isFullscreen = displayMode === "fullscreen";
48
+ return (_jsx(InsideShellContext.Provider, { value: true, children: _jsx("div", { className: cn("bg-card text-card-foreground min-h-full min-w-0", className), children: _jsx("div", { className: `mx-auto flex min-w-0 flex-col gap-6 p-4 sm:p-6 ${isFullscreen ? "max-w-full" : "max-w-7xl"}`, children: children }) }) }));
49
+ }
50
+ //# sourceMappingURL=widget-shell.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"widget-shell.js","sourceRoot":"","sources":["../../src/ui/widget-shell.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAkB,MAAM,OAAO,CAAA;AACjE,OAAO,EAAE,EAAE,EAAE,MAAM,yBAAyB,CAAA;AAE5C;;;;;GAKG;AACH,MAAM,kBAAkB,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;AAE/C;;;;;;GAMG;AACH,MAAM,kBAAkB,GAAG,aAAa,CAAS,QAAQ,CAAC,CAAA;AAE1D,oFAAoF;AACpF,MAAM,UAAU,mBAAmB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAyC;IAC3F,OAAO,KAAC,kBAAkB,CAAC,QAAQ,IAAC,KAAK,EAAE,IAAI,YAAG,QAAQ,GAA+B,CAAA;AAC3F,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,kBAAkB;IAChC,OAAO,UAAU,CAAC,kBAAkB,CAAC,CAAA;AACvC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CAAC,EAAE,QAAQ,EAAE,SAAS,EAA+C;IAC9F,MAAM,MAAM,GAAG,UAAU,CAAC,kBAAkB,CAAC,CAAA;IAC7C,MAAM,WAAW,GAAG,UAAU,CAAC,kBAAkB,CAAC,CAAA;IAClD,6EAA6E;IAC7E,yEAAyE;IACzE,oEAAoE;IACpE,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,cAAK,SAAS,EAAE,EAAE,CAAC,6BAA6B,EAAE,SAAS,CAAC,YAAG,QAAQ,GAAO,CAAA;IACvF,CAAC;IAED,MAAM,YAAY,GAAG,WAAW,KAAK,YAAY,CAAA;IACjD,OAAO,CACL,KAAC,kBAAkB,CAAC,QAAQ,IAAC,KAAK,EAAE,IAAI,YACtC,cAAK,SAAS,EAAE,EAAE,CAAC,iDAAiD,EAAE,SAAS,CAAC,YAC9E,cACE,SAAS,EAAE,kDAAkD,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,EAAE,YAEvG,QAAQ,GACL,GACF,GACsB,CAC/B,CAAA;AACH,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=widget-shell.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"widget-shell.test.d.ts","sourceRoot":"","sources":["../../src/ui/widget-shell.test.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,41 @@
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ // @vitest-environment happy-dom
3
+ import { afterEach, describe, expect, it } from "vitest";
4
+ import { cleanup, render, screen } from "@testing-library/react";
5
+ import { DisplayModeProvider, WidgetShell, useHostDisplayMode } from "./widget-shell.js";
6
+ afterEach(cleanup);
7
+ /** The frame div that carries the max-width — the content's direct parent. */
8
+ const frameOf = (testId) => screen.getByTestId(testId).parentElement;
9
+ describe("WidgetShell", () => {
10
+ it("caps the width inline and lets a fullscreen host have it all", () => {
11
+ render(_jsxs(_Fragment, { children: [_jsx(WidgetShell, { children: _jsx("p", { "data-testid": "inline", children: "a" }) }), _jsx(DisplayModeProvider, { mode: "fullscreen", children: _jsx(WidgetShell, { children: _jsx("p", { "data-testid": "fullscreen", children: "b" }) }) })] }));
12
+ expect(frameOf("inline").className).toContain("max-w-7xl");
13
+ expect(frameOf("fullscreen").className).toContain("max-w-full");
14
+ });
15
+ it("pads on the CI grid (24 px, 16 px below 640 px) and lets its content shrink", () => {
16
+ render(_jsx(WidgetShell, { children: _jsx("p", { "data-testid": "content", children: "a" }) }));
17
+ const frame = frameOf("content").className.split(" ");
18
+ expect(frame).toEqual(expect.arrayContaining(["p-4", "sm:p-6", "min-w-0"]));
19
+ expect(frame).not.toContain("px-9");
20
+ expect(frameOf("content").parentElement.className).toContain("min-w-0");
21
+ });
22
+ it("nested under another shell keeps only the section stack", () => {
23
+ render(_jsx(WidgetShell, { children: _jsx(WidgetShell, { className: "extra", children: _jsx("p", { "data-testid": "inner", children: "c" }) }) }));
24
+ const inner = frameOf("inner");
25
+ expect(inner.className).toBe("flex min-w-0 flex-col gap-6 extra");
26
+ // Exactly one card surface: the outer shell's.
27
+ expect(document.querySelectorAll(".bg-card")).toHaveLength(1);
28
+ });
29
+ });
30
+ describe("useHostDisplayMode", () => {
31
+ function Mode() {
32
+ return _jsx("span", { "data-testid": "mode", children: useHostDisplayMode() });
33
+ }
34
+ it('defaults to "inline" outside a host and reports the provided mode inside one', () => {
35
+ render(_jsxs(_Fragment, { children: [_jsx(Mode, {}), _jsx(DisplayModeProvider, { mode: "pip", children: _jsx(Mode, {}) })] }));
36
+ const [outside, inside] = screen.getAllByTestId("mode");
37
+ expect(outside.textContent).toBe("inline");
38
+ expect(inside.textContent).toBe("pip");
39
+ });
40
+ });
41
+ //# sourceMappingURL=widget-shell.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"widget-shell.test.js","sourceRoot":"","sources":["../../src/ui/widget-shell.test.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ import { type ComposedViewInput, type SingleWidgetViewInput } from "@miragon/mcp-toolkit-core";
2
+ /**
3
+ * The tool results every module returns, in one module of their own so the
4
+ * shell's own tools (`shell-settings.ts`) use them without importing the
5
+ * `/server` barrel that re-exports them.
6
+ */
7
+ /**
8
+ * mcp-use's raw `server.tool()` callback expects a result with an implicit
9
+ * string index signature, which TypeScript synthesizes for anonymous object
10
+ * types but NOT for the toolkit's named `ViewToolResult` interface. Re-annotate
11
+ * the builders' return as that anonymous shape (the runtime value is the
12
+ * toolkit's, unchanged) so the eager `*_show_*` handlers stay assignable.
13
+ */
14
+ type ViewResult = {
15
+ content: {
16
+ type: "text";
17
+ text: string;
18
+ }[];
19
+ structuredContent: Record<string, unknown>;
20
+ };
21
+ export declare const buildSingleWidgetView: (input: SingleWidgetViewInput) => ViewResult;
22
+ export declare const buildComposedView: (input: ComposedViewInput) => ViewResult;
23
+ /** An app-only feed's result: the payload once, as compact JSON text. */
24
+ type FeedResult = {
25
+ content: {
26
+ type: "text";
27
+ text: string;
28
+ }[];
29
+ };
30
+ /**
31
+ * Plain (no-UI) tool result for an app-only `*_data` feed: the JSON payload
32
+ * ONCE, as compact text, deliberately free of widget `_meta` keys — a
33
+ * widget-tool result (`ui.resourceUri`) would be rendered by the host instead
34
+ * of being returned to the in-widget `callTool()` (architecture invariant 5).
35
+ * Text, not `structuredContent`: the widgets read either (the toolkit's
36
+ * `parseToolResult` falls back to the JSON text), a host that strips
37
+ * `structuredContent` keeps text, and sending both doubled every feed.
38
+ * The single shared implementation for every module's data feeds.
39
+ */
40
+ export declare const buildDataFeedResult: (data: Record<string, unknown>) => FeedResult;
41
+ export {};
42
+ //# sourceMappingURL=view-results.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"view-results.d.ts","sourceRoot":"","sources":["../src/view-results.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC3B,MAAM,2BAA2B,CAAA;AAElC;;;;GAIG;AAEH;;;;;;GAMG;AACH,KAAK,UAAU,GAAG;IAChB,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IACzC,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC3C,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAI,OAAO,qBAAqB,KAAG,UACnC,CAAA;AAElC,eAAO,MAAM,iBAAiB,GAAI,OAAO,iBAAiB,KAAG,UAC/B,CAAA;AAE9B,yEAAyE;AACzE,KAAK,UAAU,GAAG;IAAE,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAAE,CAAA;AAE/D;;;;;;;;;GASG;AACH,eAAO,MAAM,mBAAmB,GAAI,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,UAElE,CAAA"}
@@ -0,0 +1,17 @@
1
+ import { buildComposedView as buildComposedViewCore, buildSingleWidgetView as buildSingleWidgetViewCore, } from "@miragon/mcp-toolkit-core";
2
+ export const buildSingleWidgetView = (input) => buildSingleWidgetViewCore(input);
3
+ export const buildComposedView = (input) => buildComposedViewCore(input);
4
+ /**
5
+ * Plain (no-UI) tool result for an app-only `*_data` feed: the JSON payload
6
+ * ONCE, as compact text, deliberately free of widget `_meta` keys — a
7
+ * widget-tool result (`ui.resourceUri`) would be rendered by the host instead
8
+ * of being returned to the in-widget `callTool()` (architecture invariant 5).
9
+ * Text, not `structuredContent`: the widgets read either (the toolkit's
10
+ * `parseToolResult` falls back to the JSON text), a host that strips
11
+ * `structuredContent` keeps text, and sending both doubled every feed.
12
+ * The single shared implementation for every module's data feeds.
13
+ */
14
+ export const buildDataFeedResult = (data) => ({
15
+ content: [{ type: "text", text: JSON.stringify(data) }],
16
+ });
17
+ //# sourceMappingURL=view-results.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"view-results.js","sourceRoot":"","sources":["../src/view-results.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,IAAI,qBAAqB,EAC1C,qBAAqB,IAAI,yBAAyB,GAGnD,MAAM,2BAA2B,CAAA;AAoBlC,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,KAA4B,EAAc,EAAE,CAChF,yBAAyB,CAAC,KAAK,CAAC,CAAA;AAElC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAwB,EAAc,EAAE,CACxE,qBAAqB,CAAC,KAAK,CAAC,CAAA;AAK9B;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,IAA6B,EAAc,EAAE,CAAC,CAAC;IACjF,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;CACxD,CAAC,CAAA"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * The app-level widget defaults (`createFrameworkApp`'s `app.csp`) on EVERY
3
+ * view-bound tool, not only on the framework's own `render-view`.
4
+ *
5
+ * The toolkit threads them into each plugin's `registerWidgetTools(server,
6
+ * metaDefaults)` and leaves it to the plugin to forward them; the modules
7
+ * here register their `*_show_*` tools through `showToolBinding`, which knows
8
+ * nothing about the app. Instead of threading the defaults through every
9
+ * module and call site, `createComposedServer` wraps each plugin once
10
+ * ({@link honorWidgetMetaDefaults}, a Proxy that keeps the plugin as each
11
+ * hook's `this`): the server its hook receives merges the
12
+ * view CSP into each `view` binding (`_meta.ui.csp` on the view resource,
13
+ * `resources/list` included) and the Apps SDK CSP into each widget tool's
14
+ * `openai/widgetCSP` — so a custom module in a composed server advertises
15
+ * the same contract without an edit. What the tool states itself comes
16
+ * first; the defaults are appended, each origin once.
17
+ */
18
+ import type { AppPlugin } from "@miragon/mcp-toolkit-core";
19
+ import type { MCPServer } from "mcp-use";
20
+ /** The defaults the toolkit hands to `registerWidgetTools` (not exported by the toolkit). */
21
+ export type WidgetMetaDefaults = NonNullable<Parameters<NonNullable<AppPlugin["registerWidgetTools"]>>[1]>;
22
+ /** A CSP shape: lists of origins by directive (`AppResourceCsp`, the Apps SDK `WidgetCspMeta`). */
23
+ type DomainLists = object;
24
+ /** Each list of `defaults` appended to the same list of `own`, each entry once. */
25
+ export declare function mergeDomainLists<T extends DomainLists>(own: T | undefined, defaults: T): T;
26
+ /**
27
+ * A view of `server` whose `tool()` registrations carry `defaults` (see the
28
+ * module comment). Without defaults it is `server` itself. A Proxy, not a
29
+ * copy: every other member is the real server's, bound to it, so mcp-use's
30
+ * internals and the toolkit's per-module tool owner keep working.
31
+ */
32
+ export declare function withWidgetMetaDefaults(server: MCPServer, defaults: WidgetMetaDefaults | undefined): MCPServer;
33
+ /**
34
+ * `plugin`, its `registerWidgetTools` handed a server that applies the
35
+ * defaults the toolkit passes it ({@link withWidgetMetaDefaults}).
36
+ *
37
+ * A Proxy, not a copy: a spread keeps only own enumerable properties, so a
38
+ * class-based module would lose its prototype hooks (`registerTools`) without
39
+ * a warning. Every hook, the wrapped one included, runs with the plugin
40
+ * itself as `this` — as when the toolkit calls it on the original object —
41
+ * so `this` reads and writes, private fields and method shorthand keep
42
+ * working. The Proxy's target is a child of the plugin, not the plugin, so
43
+ * a frozen plugin can still be wrapped (a Proxy over it could not report a
44
+ * different `registerWidgetTools`).
45
+ */
46
+ export declare function honorWidgetMetaDefaults(plugin: AppPlugin<MCPServer>): AppPlugin<MCPServer>;
47
+ export {};
48
+ //# sourceMappingURL=widget-meta-defaults.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"widget-meta-defaults.d.ts","sourceRoot":"","sources":["../src/widget-meta-defaults.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,KAAK,EAAE,SAAS,EAAkB,MAAM,2BAA2B,CAAA;AAC1E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAExC,6FAA6F;AAC7F,MAAM,MAAM,kBAAkB,GAAG,WAAW,CAC1C,UAAU,CAAC,WAAW,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAC7D,CAAA;AAID,mGAAmG;AACnG,KAAK,WAAW,GAAG,MAAM,CAAA;AAOzB,mFAAmF;AACnF,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,WAAW,EAAE,GAAG,EAAE,CAAC,GAAG,SAAS,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC,CAQ1F;AA0BD;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,kBAAkB,GAAG,SAAS,GACvC,SAAS,CAcX;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,SAAS,CAAC,CAa1F"}
@@ -0,0 +1,80 @@
1
+ /** The Apps SDK key a widget-rendering tool carries (`appsSdkMeta`) — feeds never do. */
2
+ const OUTPUT_TEMPLATE = "openai/outputTemplate";
3
+ const WIDGET_CSP = "openai/widgetCSP";
4
+ /** Each list of `defaults` appended to the same list of `own`, each entry once. */
5
+ export function mergeDomainLists(own, defaults) {
6
+ const mine = (own ?? {});
7
+ const merged = { ...mine };
8
+ for (const [key, domains] of Object.entries(defaults)) {
9
+ if (!domains?.length)
10
+ continue;
11
+ merged[key] = [...new Set([...(mine[key] ?? []), ...domains])];
12
+ }
13
+ return merged;
14
+ }
15
+ const hasDomains = (lists) => lists !== undefined && Object.values(lists).some((domains) => (domains?.length ?? 0) > 0);
16
+ /** `definition` with the defaults merged in — a copy; the caller's object stays as it was. */
17
+ function withDefaults(definition, defaults) {
18
+ const { view, _meta: meta } = definition;
19
+ const next = { ...definition };
20
+ if (view && defaults.viewCsp && hasDomains(defaults.viewCsp)) {
21
+ next.view = { ...view, csp: mergeDomainLists(view.csp, defaults.viewCsp) };
22
+ }
23
+ if (meta?.[OUTPUT_TEMPLATE] !== undefined &&
24
+ defaults.widgetCSP &&
25
+ hasDomains(defaults.widgetCSP)) {
26
+ const own = meta[WIDGET_CSP];
27
+ next._meta = { ...meta, [WIDGET_CSP]: mergeDomainLists(own, defaults.widgetCSP) };
28
+ }
29
+ return next;
30
+ }
31
+ /**
32
+ * A view of `server` whose `tool()` registrations carry `defaults` (see the
33
+ * module comment). Without defaults it is `server` itself. A Proxy, not a
34
+ * copy: every other member is the real server's, bound to it, so mcp-use's
35
+ * internals and the toolkit's per-module tool owner keep working.
36
+ */
37
+ export function withWidgetMetaDefaults(server, defaults) {
38
+ if (!defaults || (!hasDomains(defaults.viewCsp) && !hasDomains(defaults.widgetCSP))) {
39
+ return server;
40
+ }
41
+ return new Proxy(server, {
42
+ get(target, property) {
43
+ if (property === "tool") {
44
+ return (definition, callback) => target.tool(withDefaults(definition, defaults), callback);
45
+ }
46
+ const value = Reflect.get(target, property, target);
47
+ return typeof value === "function" ? value.bind(target) : value;
48
+ },
49
+ });
50
+ }
51
+ /**
52
+ * `plugin`, its `registerWidgetTools` handed a server that applies the
53
+ * defaults the toolkit passes it ({@link withWidgetMetaDefaults}).
54
+ *
55
+ * A Proxy, not a copy: a spread keeps only own enumerable properties, so a
56
+ * class-based module would lose its prototype hooks (`registerTools`) without
57
+ * a warning. Every hook, the wrapped one included, runs with the plugin
58
+ * itself as `this` — as when the toolkit calls it on the original object —
59
+ * so `this` reads and writes, private fields and method shorthand keep
60
+ * working. The Proxy's target is a child of the plugin, not the plugin, so
61
+ * a frozen plugin can still be wrapped (a Proxy over it could not report a
62
+ * different `registerWidgetTools`).
63
+ */
64
+ export function honorWidgetMetaDefaults(plugin) {
65
+ const register = plugin.registerWidgetTools;
66
+ if (!register)
67
+ return plugin;
68
+ const registerWidgetTools = (server, defaults) => {
69
+ register.call(plugin, withWidgetMetaDefaults(server, defaults), defaults);
70
+ };
71
+ return new Proxy(Object.create(plugin), {
72
+ get(_child, property) {
73
+ if (property === "registerWidgetTools")
74
+ return registerWidgetTools;
75
+ const value = Reflect.get(plugin, property, plugin);
76
+ return typeof value === "function" ? value.bind(plugin) : value;
77
+ },
78
+ });
79
+ }
80
+ //# sourceMappingURL=widget-meta-defaults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"widget-meta-defaults.js","sourceRoot":"","sources":["../src/widget-meta-defaults.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=widget-meta-defaults.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"widget-meta-defaults.test.d.ts","sourceRoot":"","sources":["../src/widget-meta-defaults.test.ts"],"names":[],"mappings":""}