@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.
- package/LICENSE +21 -0
- package/README.md +164 -2
- package/dist/adapt-data-widget.d.ts +7 -0
- package/dist/adapt-data-widget.d.ts.map +1 -0
- package/dist/adapt-data-widget.js +7 -0
- package/dist/adapt-data-widget.js.map +1 -0
- package/dist/bpmn-names.d.ts +42 -0
- package/dist/bpmn-names.d.ts.map +1 -0
- package/dist/bpmn-names.js +151 -0
- package/dist/bpmn-names.js.map +1 -0
- package/dist/bpmn-names.test.d.ts +2 -0
- package/dist/bpmn-names.test.d.ts.map +1 -0
- package/dist/bpmn-names.test.js +143 -0
- package/dist/bpmn-names.test.js.map +1 -0
- package/dist/build-data-feed-result.test.d.ts +2 -0
- package/dist/build-data-feed-result.test.d.ts.map +1 -0
- package/dist/build-data-feed-result.test.js +28 -0
- package/dist/build-data-feed-result.test.js.map +1 -0
- package/dist/build-single-widget-view.test.d.ts +2 -0
- package/dist/build-single-widget-view.test.d.ts.map +1 -0
- package/dist/build-single-widget-view.test.js +136 -0
- package/dist/build-single-widget-view.test.js.map +1 -0
- package/dist/builder-texts.d.ts +27 -0
- package/dist/builder-texts.d.ts.map +1 -0
- package/dist/builder-texts.js +32 -0
- package/dist/builder-texts.js.map +1 -0
- package/dist/builder-texts.test.d.ts +2 -0
- package/dist/builder-texts.test.d.ts.map +1 -0
- package/dist/builder-texts.test.js +54 -0
- package/dist/builder-texts.test.js.map +1 -0
- package/dist/catalogue-sync.d.ts +18 -0
- package/dist/catalogue-sync.d.ts.map +1 -0
- package/dist/catalogue-sync.js +31 -0
- package/dist/catalogue-sync.js.map +1 -0
- package/dist/catalogue-sync.test.d.ts +2 -0
- package/dist/catalogue-sync.test.d.ts.map +1 -0
- package/dist/catalogue-sync.test.js +22 -0
- package/dist/catalogue-sync.test.js.map +1 -0
- package/dist/composed-server.d.ts +110 -0
- package/dist/composed-server.d.ts.map +1 -0
- package/dist/composed-server.edge.test.d.ts +2 -0
- package/dist/composed-server.edge.test.d.ts.map +1 -0
- package/dist/composed-server.edge.test.js +184 -0
- package/dist/composed-server.edge.test.js.map +1 -0
- package/dist/composed-server.fonts.test.d.ts +2 -0
- package/dist/composed-server.fonts.test.d.ts.map +1 -0
- package/dist/composed-server.fonts.test.js +186 -0
- package/dist/composed-server.fonts.test.js.map +1 -0
- package/dist/composed-server.js +260 -0
- package/dist/composed-server.js.map +1 -0
- package/dist/composed-server.test.d.ts +2 -0
- package/dist/composed-server.test.d.ts.map +1 -0
- package/dist/composed-server.test.js +332 -0
- package/dist/composed-server.test.js.map +1 -0
- package/dist/composition.d.ts +155 -0
- package/dist/composition.d.ts.map +1 -0
- package/dist/composition.js +163 -0
- package/dist/composition.js.map +1 -0
- package/dist/composition.test.d.ts +2 -0
- package/dist/composition.test.d.ts.map +1 -0
- package/dist/composition.test.js +275 -0
- package/dist/composition.test.js.map +1 -0
- package/dist/dashboard-store-postgres.d.ts +43 -0
- package/dist/dashboard-store-postgres.d.ts.map +1 -0
- package/dist/dashboard-store-postgres.js +225 -0
- package/dist/dashboard-store-postgres.js.map +1 -0
- package/dist/dashboard-store-postgres.test.d.ts +2 -0
- package/dist/dashboard-store-postgres.test.d.ts.map +1 -0
- package/dist/dashboard-store-postgres.test.js +272 -0
- package/dist/dashboard-store-postgres.test.js.map +1 -0
- package/dist/font-assets.d.ts +47 -0
- package/dist/font-assets.d.ts.map +1 -0
- package/dist/font-assets.js +93 -0
- package/dist/font-assets.js.map +1 -0
- package/dist/font-assets.test.d.ts +2 -0
- package/dist/font-assets.test.d.ts.map +1 -0
- package/dist/font-assets.test.js +123 -0
- package/dist/font-assets.test.js.map +1 -0
- package/dist/health.d.ts +59 -0
- package/dist/health.d.ts.map +1 -0
- package/dist/health.js +74 -0
- package/dist/health.js.map +1 -0
- package/dist/health.test.d.ts +2 -0
- package/dist/health.test.d.ts.map +1 -0
- package/dist/health.test.js +140 -0
- package/dist/health.test.js.map +1 -0
- package/dist/host-boot.d.ts +56 -0
- package/dist/host-boot.d.ts.map +1 -0
- package/dist/host-boot.js +64 -0
- package/dist/host-boot.js.map +1 -0
- package/dist/host-boot.test.d.ts +2 -0
- package/dist/host-boot.test.d.ts.map +1 -0
- package/dist/host-boot.test.js +59 -0
- package/dist/host-boot.test.js.map +1 -0
- package/dist/http-edge.d.ts +117 -0
- package/dist/http-edge.d.ts.map +1 -0
- package/dist/http-edge.js +219 -0
- package/dist/http-edge.js.map +1 -0
- package/dist/http-edge.test.d.ts +2 -0
- package/dist/http-edge.test.d.ts.map +1 -0
- package/dist/http-edge.test.js +255 -0
- package/dist/http-edge.test.js.map +1 -0
- package/dist/metrics.d.ts +48 -0
- package/dist/metrics.d.ts.map +1 -0
- package/dist/metrics.js +124 -0
- package/dist/metrics.js.map +1 -0
- package/dist/metrics.test.d.ts +2 -0
- package/dist/metrics.test.d.ts.map +1 -0
- package/dist/metrics.test.js +154 -0
- package/dist/metrics.test.js.map +1 -0
- package/dist/node-listener.d.ts +61 -0
- package/dist/node-listener.d.ts.map +1 -0
- package/dist/node-listener.js +165 -0
- package/dist/node-listener.js.map +1 -0
- package/dist/node-listener.test.d.ts +2 -0
- package/dist/node-listener.test.d.ts.map +1 -0
- package/dist/node-listener.test.js +331 -0
- package/dist/node-listener.test.js.map +1 -0
- package/dist/oauth-env.d.ts +42 -0
- package/dist/oauth-env.d.ts.map +1 -0
- package/dist/oauth-env.js +78 -0
- package/dist/oauth-env.js.map +1 -0
- package/dist/oauth-env.test.d.ts +2 -0
- package/dist/oauth-env.test.d.ts.map +1 -0
- package/dist/oauth-env.test.js +76 -0
- package/dist/oauth-env.test.js.map +1 -0
- package/dist/postgres.d.ts +59 -0
- package/dist/postgres.d.ts.map +1 -0
- package/dist/postgres.js +80 -0
- package/dist/postgres.js.map +1 -0
- package/dist/profile-advisory.d.ts +19 -0
- package/dist/profile-advisory.d.ts.map +1 -0
- package/dist/profile-advisory.js +48 -0
- package/dist/profile-advisory.js.map +1 -0
- package/dist/profile-advisory.test.d.ts +2 -0
- package/dist/profile-advisory.test.d.ts.map +1 -0
- package/dist/profile-advisory.test.js +53 -0
- package/dist/profile-advisory.test.js.map +1 -0
- package/dist/profile-constants.d.ts +37 -0
- package/dist/profile-constants.d.ts.map +1 -0
- package/dist/profile-constants.js +37 -0
- package/dist/profile-constants.js.map +1 -0
- package/dist/profile-migrations.d.ts +71 -0
- package/dist/profile-migrations.d.ts.map +1 -0
- package/dist/profile-migrations.js +88 -0
- package/dist/profile-migrations.js.map +1 -0
- package/dist/profile-migrations.test.d.ts +2 -0
- package/dist/profile-migrations.test.d.ts.map +1 -0
- package/dist/profile-migrations.test.js +200 -0
- package/dist/profile-migrations.test.js.map +1 -0
- package/dist/profile-record.d.ts +60 -0
- package/dist/profile-record.d.ts.map +1 -0
- package/dist/profile-record.js +78 -0
- package/dist/profile-record.js.map +1 -0
- package/dist/profile-slice.d.ts +53 -0
- package/dist/profile-slice.d.ts.map +1 -0
- package/dist/profile-slice.js +73 -0
- package/dist/profile-slice.js.map +1 -0
- package/dist/profile-slice.test.d.ts +2 -0
- package/dist/profile-slice.test.d.ts.map +1 -0
- package/dist/profile-slice.test.js +73 -0
- package/dist/profile-slice.test.js.map +1 -0
- package/dist/profile-store-env.d.ts +34 -0
- package/dist/profile-store-env.d.ts.map +1 -0
- package/dist/profile-store-env.js +44 -0
- package/dist/profile-store-env.js.map +1 -0
- package/dist/profile-store-env.test.d.ts +2 -0
- package/dist/profile-store-env.test.d.ts.map +1 -0
- package/dist/profile-store-env.test.js +69 -0
- package/dist/profile-store-env.test.js.map +1 -0
- package/dist/profile-store-postgres.d.ts +33 -0
- package/dist/profile-store-postgres.d.ts.map +1 -0
- package/dist/profile-store-postgres.js +87 -0
- package/dist/profile-store-postgres.js.map +1 -0
- package/dist/profile-store-raw.test.d.ts +2 -0
- package/dist/profile-store-raw.test.d.ts.map +1 -0
- package/dist/profile-store-raw.test.js +185 -0
- package/dist/profile-store-raw.test.js.map +1 -0
- package/dist/profile-store.d.ts +85 -0
- package/dist/profile-store.d.ts.map +1 -0
- package/dist/profile-store.js +182 -0
- package/dist/profile-store.js.map +1 -0
- package/dist/profile-store.test.d.ts +2 -0
- package/dist/profile-store.test.d.ts.map +1 -0
- package/dist/profile-store.test.js +353 -0
- package/dist/profile-store.test.js.map +1 -0
- package/dist/profile.d.ts +75 -0
- package/dist/profile.d.ts.map +1 -0
- package/dist/profile.js +85 -0
- package/dist/profile.js.map +1 -0
- package/dist/profile.test.d.ts +2 -0
- package/dist/profile.test.d.ts.map +1 -0
- package/dist/profile.test.js +71 -0
- package/dist/profile.test.js.map +1 -0
- package/dist/request-context.d.ts +47 -0
- package/dist/request-context.d.ts.map +1 -0
- package/dist/request-context.js +85 -0
- package/dist/request-context.js.map +1 -0
- package/dist/request-context.test.d.ts +2 -0
- package/dist/request-context.test.d.ts.map +1 -0
- package/dist/request-context.test.js +107 -0
- package/dist/request-context.test.js.map +1 -0
- package/dist/served-fonts.d.ts +38 -0
- package/dist/served-fonts.d.ts.map +1 -0
- package/dist/served-fonts.js +51 -0
- package/dist/served-fonts.js.map +1 -0
- package/dist/served-fonts.test.d.ts +2 -0
- package/dist/served-fonts.test.d.ts.map +1 -0
- package/dist/served-fonts.test.js +30 -0
- package/dist/served-fonts.test.js.map +1 -0
- package/dist/server-locale.d.ts +58 -0
- package/dist/server-locale.d.ts.map +1 -0
- package/dist/server-locale.js +64 -0
- package/dist/server-locale.js.map +1 -0
- package/dist/server-locale.test.d.ts +2 -0
- package/dist/server-locale.test.d.ts.map +1 -0
- package/dist/server-locale.test.js +90 -0
- package/dist/server-locale.test.js.map +1 -0
- package/dist/server.d.ts +43 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +34 -0
- package/dist/server.js.map +1 -0
- package/dist/shell-catalogue.d.ts +12 -0
- package/dist/shell-catalogue.d.ts.map +1 -0
- package/dist/shell-catalogue.js +142 -0
- package/dist/shell-catalogue.js.map +1 -0
- package/dist/shell-settings-contract.d.ts +34 -0
- package/dist/shell-settings-contract.d.ts.map +1 -0
- package/dist/shell-settings-contract.js +21 -0
- package/dist/shell-settings-contract.js.map +1 -0
- package/dist/shell-settings.d.ts +24 -0
- package/dist/shell-settings.d.ts.map +1 -0
- package/dist/shell-settings.js +148 -0
- package/dist/shell-settings.js.map +1 -0
- package/dist/shell-settings.test.d.ts +2 -0
- package/dist/shell-settings.test.d.ts.map +1 -0
- package/dist/shell-settings.test.js +115 -0
- package/dist/shell-settings.test.js.map +1 -0
- package/dist/testing/catalog-text.d.ts +53 -0
- package/dist/testing/catalog-text.d.ts.map +1 -0
- package/dist/testing/catalog-text.js +146 -0
- package/dist/testing/catalog-text.js.map +1 -0
- package/dist/testing/catalog-text.test.d.ts +2 -0
- package/dist/testing/catalog-text.test.d.ts.map +1 -0
- package/dist/testing/catalog-text.test.js +137 -0
- package/dist/testing/catalog-text.test.js.map +1 -0
- package/dist/testing/colors.d.ts +34 -0
- package/dist/testing/colors.d.ts.map +1 -0
- package/dist/testing/colors.js +124 -0
- package/dist/testing/colors.js.map +1 -0
- package/dist/testing/colors.test.d.ts +2 -0
- package/dist/testing/colors.test.d.ts.map +1 -0
- package/dist/testing/colors.test.js +166 -0
- package/dist/testing/colors.test.js.map +1 -0
- package/dist/testing/contrast.d.ts +77 -0
- package/dist/testing/contrast.d.ts.map +1 -0
- package/dist/testing/contrast.js +382 -0
- package/dist/testing/contrast.js.map +1 -0
- package/dist/testing/contrast.test.d.ts +2 -0
- package/dist/testing/contrast.test.d.ts.map +1 -0
- package/dist/testing/contrast.test.js +230 -0
- package/dist/testing/contrast.test.js.map +1 -0
- package/dist/testing/display-texts.d.ts +23 -0
- package/dist/testing/display-texts.d.ts.map +1 -0
- package/dist/testing/display-texts.js +88 -0
- package/dist/testing/display-texts.js.map +1 -0
- package/dist/testing/display-texts.test.d.ts +2 -0
- package/dist/testing/display-texts.test.d.ts.map +1 -0
- package/dist/testing/display-texts.test.js +169 -0
- package/dist/testing/display-texts.test.js.map +1 -0
- package/dist/testing/glossary.d.ts +52 -0
- package/dist/testing/glossary.d.ts.map +1 -0
- package/dist/testing/glossary.js +135 -0
- package/dist/testing/glossary.js.map +1 -0
- package/dist/testing/glossary.test.d.ts +2 -0
- package/dist/testing/glossary.test.d.ts.map +1 -0
- package/dist/testing/glossary.test.js +78 -0
- package/dist/testing/glossary.test.js.map +1 -0
- package/dist/testing/glyphs.d.ts +27 -0
- package/dist/testing/glyphs.d.ts.map +1 -0
- package/dist/testing/glyphs.js +130 -0
- package/dist/testing/glyphs.js.map +1 -0
- package/dist/testing/glyphs.test.d.ts +2 -0
- package/dist/testing/glyphs.test.d.ts.map +1 -0
- package/dist/testing/glyphs.test.js +146 -0
- package/dist/testing/glyphs.test.js.map +1 -0
- package/dist/testing/icon-sizes.d.ts +22 -0
- package/dist/testing/icon-sizes.d.ts.map +1 -0
- package/dist/testing/icon-sizes.js +39 -0
- package/dist/testing/icon-sizes.js.map +1 -0
- package/dist/testing/icon-sizes.test.d.ts +2 -0
- package/dist/testing/icon-sizes.test.d.ts.map +1 -0
- package/dist/testing/icon-sizes.test.js +36 -0
- package/dist/testing/icon-sizes.test.js.map +1 -0
- package/dist/testing/index.d.ts +40 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +40 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/source-scan.d.ts +16 -0
- package/dist/testing/source-scan.d.ts.map +1 -0
- package/dist/testing/source-scan.js +57 -0
- package/dist/testing/source-scan.js.map +1 -0
- package/dist/testing/tone-pairs.d.ts +20 -0
- package/dist/testing/tone-pairs.d.ts.map +1 -0
- package/dist/testing/tone-pairs.js +154 -0
- package/dist/testing/tone-pairs.js.map +1 -0
- package/dist/testing/type-scale.d.ts +40 -0
- package/dist/testing/type-scale.d.ts.map +1 -0
- package/dist/testing/type-scale.js +55 -0
- package/dist/testing/type-scale.js.map +1 -0
- package/dist/testing/type-scale.test.d.ts +2 -0
- package/dist/testing/type-scale.test.d.ts.map +1 -0
- package/dist/testing/type-scale.test.js +61 -0
- package/dist/testing/type-scale.test.js.map +1 -0
- package/dist/tool-schema-trim.d.ts +24 -0
- package/dist/tool-schema-trim.d.ts.map +1 -0
- package/dist/tool-schema-trim.js +49 -0
- package/dist/tool-schema-trim.js.map +1 -0
- package/dist/tool-schema-trim.test.d.ts +2 -0
- package/dist/tool-schema-trim.test.d.ts.map +1 -0
- package/dist/tool-schema-trim.test.js +53 -0
- package/dist/tool-schema-trim.test.js.map +1 -0
- package/dist/toolsets.d.ts +76 -0
- package/dist/toolsets.d.ts.map +1 -0
- package/dist/toolsets.js +41 -0
- package/dist/toolsets.js.map +1 -0
- package/dist/toolsets.test.d.ts +2 -0
- package/dist/toolsets.test.d.ts.map +1 -0
- package/dist/toolsets.test.js +86 -0
- package/dist/toolsets.test.js.map +1 -0
- package/dist/ui/action-feedback.d.ts +33 -0
- package/dist/ui/action-feedback.d.ts.map +1 -0
- package/dist/ui/action-feedback.js +51 -0
- package/dist/ui/action-feedback.js.map +1 -0
- package/dist/ui/action-feedback.test.d.ts +2 -0
- package/dist/ui/action-feedback.test.d.ts.map +1 -0
- package/dist/ui/action-feedback.test.js +77 -0
- package/dist/ui/action-feedback.test.js.map +1 -0
- package/dist/ui/app-shell-providers.d.ts +18 -0
- package/dist/ui/app-shell-providers.d.ts.map +1 -0
- package/dist/ui/app-shell-providers.js +19 -0
- package/dist/ui/app-shell-providers.js.map +1 -0
- package/dist/ui/app-shell-providers.test.d.ts +2 -0
- package/dist/ui/app-shell-providers.test.d.ts.map +1 -0
- package/dist/ui/app-shell-providers.test.js +249 -0
- package/dist/ui/app-shell-providers.test.js.map +1 -0
- package/dist/ui/ask-ai-button.d.ts +56 -0
- package/dist/ui/ask-ai-button.d.ts.map +1 -0
- package/dist/ui/ask-ai-button.js +36 -0
- package/dist/ui/ask-ai-button.js.map +1 -0
- package/dist/ui/ask-ai-button.test.d.ts +2 -0
- package/dist/ui/ask-ai-button.test.d.ts.map +1 -0
- package/dist/ui/ask-ai-button.test.js +103 -0
- package/dist/ui/ask-ai-button.test.js.map +1 -0
- package/dist/ui/ask-ai-prompt.d.ts +115 -0
- package/dist/ui/ask-ai-prompt.d.ts.map +1 -0
- package/dist/ui/ask-ai-prompt.js +174 -0
- package/dist/ui/ask-ai-prompt.js.map +1 -0
- package/dist/ui/ask-ai-prompt.test.d.ts +2 -0
- package/dist/ui/ask-ai-prompt.test.d.ts.map +1 -0
- package/dist/ui/ask-ai-prompt.test.js +240 -0
- package/dist/ui/ask-ai-prompt.test.js.map +1 -0
- package/dist/ui/bpmn-heatmap/heat-ramp.test.d.ts +2 -0
- package/dist/ui/bpmn-heatmap/heat-ramp.test.d.ts.map +1 -0
- package/dist/ui/bpmn-heatmap/heat-ramp.test.js +174 -0
- package/dist/ui/bpmn-heatmap/heat-ramp.test.js.map +1 -0
- package/dist/ui/bpmn-heatmap/heat-utils.d.ts +119 -0
- package/dist/ui/bpmn-heatmap/heat-utils.d.ts.map +1 -0
- package/dist/ui/bpmn-heatmap/heat-utils.js +231 -0
- package/dist/ui/bpmn-heatmap/heat-utils.js.map +1 -0
- package/dist/ui/bpmn-heatmap/heat-utils.test.d.ts +2 -0
- package/dist/ui/bpmn-heatmap/heat-utils.test.d.ts.map +1 -0
- package/dist/ui/bpmn-heatmap/heat-utils.test.js +59 -0
- package/dist/ui/bpmn-heatmap/heat-utils.test.js.map +1 -0
- package/dist/ui/bpmn-heatmap-labels.d.ts +46 -0
- package/dist/ui/bpmn-heatmap-labels.d.ts.map +1 -0
- package/dist/ui/bpmn-heatmap-labels.js +16 -0
- package/dist/ui/bpmn-heatmap-labels.js.map +1 -0
- package/dist/ui/bpmn-heatmap-widget.d.ts +38 -0
- package/dist/ui/bpmn-heatmap-widget.d.ts.map +1 -0
- package/dist/ui/bpmn-heatmap-widget.js +65 -0
- package/dist/ui/bpmn-heatmap-widget.js.map +1 -0
- package/dist/ui/bpmn-heatmap-widget.test.d.ts +2 -0
- package/dist/ui/bpmn-heatmap-widget.test.d.ts.map +1 -0
- package/dist/ui/bpmn-heatmap-widget.test.js +173 -0
- package/dist/ui/bpmn-heatmap-widget.test.js.map +1 -0
- package/dist/ui/bpmn-heatmap.d.ts +61 -0
- package/dist/ui/bpmn-heatmap.d.ts.map +1 -0
- package/dist/ui/bpmn-heatmap.js +119 -0
- package/dist/ui/bpmn-heatmap.js.map +1 -0
- package/dist/ui/bpmn-tokens.d.ts +81 -0
- package/dist/ui/bpmn-tokens.d.ts.map +1 -0
- package/dist/ui/bpmn-tokens.js +114 -0
- package/dist/ui/bpmn-tokens.js.map +1 -0
- package/dist/ui/bpmn-tokens.test.d.ts +2 -0
- package/dist/ui/bpmn-tokens.test.d.ts.map +1 -0
- package/dist/ui/bpmn-tokens.test.js +98 -0
- package/dist/ui/bpmn-tokens.test.js.map +1 -0
- package/dist/ui/bpmn-zoom-controls.d.ts +30 -0
- package/dist/ui/bpmn-zoom-controls.d.ts.map +1 -0
- package/dist/ui/bpmn-zoom-controls.js +29 -0
- package/dist/ui/bpmn-zoom-controls.js.map +1 -0
- package/dist/ui/brand-gates.test.d.ts +2 -0
- package/dist/ui/brand-gates.test.d.ts.map +1 -0
- package/dist/ui/brand-gates.test.js +131 -0
- package/dist/ui/brand-gates.test.js.map +1 -0
- package/dist/ui/brand-mark.d.ts +37 -0
- package/dist/ui/brand-mark.d.ts.map +1 -0
- package/dist/ui/brand-mark.js +33 -0
- package/dist/ui/brand-mark.js.map +1 -0
- package/dist/ui/brand-mark.test.d.ts +2 -0
- package/dist/ui/brand-mark.test.d.ts.map +1 -0
- package/dist/ui/brand-mark.test.js +111 -0
- package/dist/ui/brand-mark.test.js.map +1 -0
- package/dist/ui/confirm-dialog.d.ts +55 -0
- package/dist/ui/confirm-dialog.d.ts.map +1 -0
- package/dist/ui/confirm-dialog.js +59 -0
- package/dist/ui/confirm-dialog.js.map +1 -0
- package/dist/ui/confirm-dialog.test.d.ts +2 -0
- package/dist/ui/confirm-dialog.test.d.ts.map +1 -0
- package/dist/ui/confirm-dialog.test.js +115 -0
- package/dist/ui/confirm-dialog.test.js.map +1 -0
- package/dist/ui/count-tone.d.ts +20 -0
- package/dist/ui/count-tone.d.ts.map +1 -0
- package/dist/ui/count-tone.js +27 -0
- package/dist/ui/count-tone.js.map +1 -0
- package/dist/ui/count-tone.test.d.ts +2 -0
- package/dist/ui/count-tone.test.d.ts.map +1 -0
- package/dist/ui/count-tone.test.js +27 -0
- package/dist/ui/count-tone.test.js.map +1 -0
- package/dist/ui/create-use-t.d.ts +15 -0
- package/dist/ui/create-use-t.d.ts.map +1 -0
- package/dist/ui/create-use-t.js +17 -0
- package/dist/ui/create-use-t.js.map +1 -0
- package/dist/ui/declare-served-fonts.d.ts +14 -0
- package/dist/ui/declare-served-fonts.d.ts.map +1 -0
- package/dist/ui/declare-served-fonts.js +38 -0
- package/dist/ui/declare-served-fonts.js.map +1 -0
- package/dist/ui/declare-served-fonts.test.d.ts +2 -0
- package/dist/ui/declare-served-fonts.test.d.ts.map +1 -0
- package/dist/ui/declare-served-fonts.test.js +44 -0
- package/dist/ui/declare-served-fonts.test.js.map +1 -0
- package/dist/ui/describe-error.d.ts +71 -0
- package/dist/ui/describe-error.d.ts.map +1 -0
- package/dist/ui/describe-error.js +175 -0
- package/dist/ui/describe-error.js.map +1 -0
- package/dist/ui/describe-error.test.d.ts +2 -0
- package/dist/ui/describe-error.test.d.ts.map +1 -0
- package/dist/ui/describe-error.test.js +274 -0
- package/dist/ui/describe-error.test.js.map +1 -0
- package/dist/ui/display-mode-toggle.d.ts +32 -0
- package/dist/ui/display-mode-toggle.d.ts.map +1 -0
- package/dist/ui/display-mode-toggle.js +39 -0
- package/dist/ui/display-mode-toggle.js.map +1 -0
- package/dist/ui/error-labels.d.ts +65 -0
- package/dist/ui/error-labels.d.ts.map +1 -0
- package/dist/ui/error-labels.js +111 -0
- package/dist/ui/error-labels.js.map +1 -0
- package/dist/ui/format.d.ts +81 -0
- package/dist/ui/format.d.ts.map +1 -0
- package/dist/ui/format.js +189 -0
- package/dist/ui/format.js.map +1 -0
- package/dist/ui/format.test.d.ts +2 -0
- package/dist/ui/format.test.d.ts.map +1 -0
- package/dist/ui/format.test.js +181 -0
- package/dist/ui/format.test.js.map +1 -0
- package/dist/ui/generic-widgets.d.ts +15 -0
- package/dist/ui/generic-widgets.d.ts.map +1 -0
- package/dist/ui/generic-widgets.js +122 -0
- package/dist/ui/generic-widgets.js.map +1 -0
- package/dist/ui/generic-widgets.test.d.ts +2 -0
- package/dist/ui/generic-widgets.test.d.ts.map +1 -0
- package/dist/ui/generic-widgets.test.js +139 -0
- package/dist/ui/generic-widgets.test.js.map +1 -0
- package/dist/ui/hand-off-button.d.ts +45 -0
- package/dist/ui/hand-off-button.d.ts.map +1 -0
- package/dist/ui/hand-off-button.js +44 -0
- package/dist/ui/hand-off-button.js.map +1 -0
- package/dist/ui/hand-off-button.test.d.ts +2 -0
- package/dist/ui/hand-off-button.test.d.ts.map +1 -0
- package/dist/ui/hand-off-button.test.js +78 -0
- package/dist/ui/hand-off-button.test.js.map +1 -0
- package/dist/ui/host-context.d.ts +66 -0
- package/dist/ui/host-context.d.ts.map +1 -0
- package/dist/ui/host-context.js +122 -0
- package/dist/ui/host-context.js.map +1 -0
- package/dist/ui/host-context.test.d.ts +2 -0
- package/dist/ui/host-context.test.d.ts.map +1 -0
- package/dist/ui/host-context.test.js +160 -0
- package/dist/ui/host-context.test.js.map +1 -0
- package/dist/ui/host-document.d.ts +25 -0
- package/dist/ui/host-document.d.ts.map +1 -0
- package/dist/ui/host-document.js +93 -0
- package/dist/ui/host-document.js.map +1 -0
- package/dist/ui/host-document.test.d.ts +2 -0
- package/dist/ui/host-document.test.d.ts.map +1 -0
- package/dist/ui/host-document.test.js +112 -0
- package/dist/ui/host-document.test.js.map +1 -0
- package/dist/ui/host-widgets.d.ts +8 -0
- package/dist/ui/host-widgets.d.ts.map +1 -0
- package/dist/ui/host-widgets.js +18 -0
- package/dist/ui/host-widgets.js.map +1 -0
- package/dist/ui/humanize-key.d.ts +11 -0
- package/dist/ui/humanize-key.d.ts.map +1 -0
- package/dist/ui/humanize-key.js +26 -0
- package/dist/ui/humanize-key.js.map +1 -0
- package/dist/ui/humanize-key.test.d.ts +2 -0
- package/dist/ui/humanize-key.test.d.ts.map +1 -0
- package/dist/ui/humanize-key.test.js +42 -0
- package/dist/ui/humanize-key.test.js.map +1 -0
- package/dist/ui/icon.d.ts +37 -0
- package/dist/ui/icon.d.ts.map +1 -0
- package/dist/ui/icon.js +32 -0
- package/dist/ui/icon.js.map +1 -0
- package/dist/ui/id-breaks.d.ts +17 -0
- package/dist/ui/id-breaks.d.ts.map +1 -0
- package/dist/ui/id-breaks.js +36 -0
- package/dist/ui/id-breaks.js.map +1 -0
- package/dist/ui/id-breaks.test.d.ts +2 -0
- package/dist/ui/id-breaks.test.d.ts.map +1 -0
- package/dist/ui/id-breaks.test.js +37 -0
- package/dist/ui/id-breaks.test.js.map +1 -0
- package/dist/ui/id-text.d.ts +29 -0
- package/dist/ui/id-text.d.ts.map +1 -0
- package/dist/ui/id-text.js +103 -0
- package/dist/ui/id-text.js.map +1 -0
- package/dist/ui/id-text.test.d.ts +2 -0
- package/dist/ui/id-text.test.d.ts.map +1 -0
- package/dist/ui/id-text.test.js +122 -0
- package/dist/ui/id-text.test.js.map +1 -0
- package/dist/ui/index.d.ts +57 -0
- package/dist/ui/index.d.ts.map +1 -0
- package/dist/ui/index.js +65 -0
- package/dist/ui/index.js.map +1 -0
- package/dist/ui/index.test.d.ts +2 -0
- package/dist/ui/index.test.d.ts.map +1 -0
- package/dist/ui/index.test.js +34 -0
- package/dist/ui/index.test.js.map +1 -0
- package/dist/ui/inline-budget.d.ts +35 -0
- package/dist/ui/inline-budget.d.ts.map +1 -0
- package/dist/ui/inline-budget.js +27 -0
- package/dist/ui/inline-budget.js.map +1 -0
- package/dist/ui/inline-fit-registry.d.ts +56 -0
- package/dist/ui/inline-fit-registry.d.ts.map +1 -0
- package/dist/ui/inline-fit-registry.js +114 -0
- package/dist/ui/inline-fit-registry.js.map +1 -0
- package/dist/ui/inline-fit-solve.d.ts +50 -0
- package/dist/ui/inline-fit-solve.d.ts.map +1 -0
- package/dist/ui/inline-fit-solve.js +83 -0
- package/dist/ui/inline-fit-solve.js.map +1 -0
- package/dist/ui/inline-fit-solve.test.d.ts +2 -0
- package/dist/ui/inline-fit-solve.test.d.ts.map +1 -0
- package/dist/ui/inline-fit-solve.test.js +108 -0
- package/dist/ui/inline-fit-solve.test.js.map +1 -0
- package/dist/ui/inline-fit-time.test.d.ts +2 -0
- package/dist/ui/inline-fit-time.test.d.ts.map +1 -0
- package/dist/ui/inline-fit-time.test.js +110 -0
- package/dist/ui/inline-fit-time.test.js.map +1 -0
- package/dist/ui/inline-fit.d.ts +77 -0
- package/dist/ui/inline-fit.d.ts.map +1 -0
- package/dist/ui/inline-fit.js +242 -0
- package/dist/ui/inline-fit.js.map +1 -0
- package/dist/ui/inline-fit.test-support.d.ts +26 -0
- package/dist/ui/inline-fit.test-support.d.ts.map +1 -0
- package/dist/ui/inline-fit.test-support.js +34 -0
- package/dist/ui/inline-fit.test-support.js.map +1 -0
- package/dist/ui/inline-fit.test.d.ts +2 -0
- package/dist/ui/inline-fit.test.d.ts.map +1 -0
- package/dist/ui/inline-fit.test.js +159 -0
- package/dist/ui/inline-fit.test.js.map +1 -0
- package/dist/ui/kit-labels.d.ts +80 -0
- package/dist/ui/kit-labels.d.ts.map +1 -0
- package/dist/ui/kit-labels.js +110 -0
- package/dist/ui/kit-labels.js.map +1 -0
- package/dist/ui/kit-labels.test.d.ts +2 -0
- package/dist/ui/kit-labels.test.d.ts.map +1 -0
- package/dist/ui/kit-labels.test.js +98 -0
- package/dist/ui/kit-labels.test.js.map +1 -0
- package/dist/ui/kit-type-roles.test.d.ts +2 -0
- package/dist/ui/kit-type-roles.test.d.ts.map +1 -0
- package/dist/ui/kit-type-roles.test.js +122 -0
- package/dist/ui/kit-type-roles.test.js.map +1 -0
- package/dist/ui/komet-svg.d.ts +15 -0
- package/dist/ui/komet-svg.d.ts.map +1 -0
- package/dist/ui/komet-svg.js +21 -0
- package/dist/ui/komet-svg.js.map +1 -0
- package/dist/ui/list-table.d.ts +108 -0
- package/dist/ui/list-table.d.ts.map +1 -0
- package/dist/ui/list-table.js +161 -0
- package/dist/ui/list-table.js.map +1 -0
- package/dist/ui/list-table.test.d.ts +2 -0
- package/dist/ui/list-table.test.d.ts.map +1 -0
- package/dist/ui/list-table.test.js +169 -0
- package/dist/ui/list-table.test.js.map +1 -0
- package/dist/ui/localized-app-view.d.ts +40 -0
- package/dist/ui/localized-app-view.d.ts.map +1 -0
- package/dist/ui/localized-app-view.js +71 -0
- package/dist/ui/localized-app-view.js.map +1 -0
- package/dist/ui/log-text.d.ts +24 -0
- package/dist/ui/log-text.d.ts.map +1 -0
- package/dist/ui/log-text.js +31 -0
- package/dist/ui/log-text.js.map +1 -0
- package/dist/ui/menu-item.d.ts +12 -0
- package/dist/ui/menu-item.d.ts.map +1 -0
- package/dist/ui/menu-item.js +13 -0
- package/dist/ui/menu-item.js.map +1 -0
- package/dist/ui/named-id.d.ts +23 -0
- package/dist/ui/named-id.d.ts.map +1 -0
- package/dist/ui/named-id.js +21 -0
- package/dist/ui/named-id.js.map +1 -0
- package/dist/ui/named-id.test.d.ts +2 -0
- package/dist/ui/named-id.test.d.ts.map +1 -0
- package/dist/ui/named-id.test.js +57 -0
- package/dist/ui/named-id.test.js.map +1 -0
- package/dist/ui/native-select.d.ts +17 -0
- package/dist/ui/native-select.d.ts.map +1 -0
- package/dist/ui/native-select.js +20 -0
- package/dist/ui/native-select.js.map +1 -0
- package/dist/ui/navigation-focus.d.ts +20 -0
- package/dist/ui/navigation-focus.d.ts.map +1 -0
- package/dist/ui/navigation-focus.js +25 -0
- package/dist/ui/navigation-focus.js.map +1 -0
- package/dist/ui/navigation-focus.test.d.ts +2 -0
- package/dist/ui/navigation-focus.test.d.ts.map +1 -0
- package/dist/ui/navigation-focus.test.js +28 -0
- package/dist/ui/navigation-focus.test.js.map +1 -0
- package/dist/ui/open-in-cockpit-link.d.ts +28 -0
- package/dist/ui/open-in-cockpit-link.d.ts.map +1 -0
- package/dist/ui/open-in-cockpit-link.js +41 -0
- package/dist/ui/open-in-cockpit-link.js.map +1 -0
- package/dist/ui/paged-list-footer.test.d.ts +2 -0
- package/dist/ui/paged-list-footer.test.d.ts.map +1 -0
- package/dist/ui/paged-list-footer.test.js +128 -0
- package/dist/ui/paged-list-footer.test.js.map +1 -0
- package/dist/ui/paged-rows.d.ts +24 -0
- package/dist/ui/paged-rows.d.ts.map +1 -0
- package/dist/ui/paged-rows.js +25 -0
- package/dist/ui/paged-rows.js.map +1 -0
- package/dist/ui/parse-tool-result.test.d.ts +2 -0
- package/dist/ui/parse-tool-result.test.d.ts.map +1 -0
- package/dist/ui/parse-tool-result.test.js +88 -0
- package/dist/ui/parse-tool-result.test.js.map +1 -0
- package/dist/ui/profile-gate.d.ts +37 -0
- package/dist/ui/profile-gate.d.ts.map +1 -0
- package/dist/ui/profile-gate.js +126 -0
- package/dist/ui/profile-gate.js.map +1 -0
- package/dist/ui/profile-gate.test.d.ts +2 -0
- package/dist/ui/profile-gate.test.d.ts.map +1 -0
- package/dist/ui/profile-gate.test.js +246 -0
- package/dist/ui/profile-gate.test.js.map +1 -0
- package/dist/ui/query-fallback.d.ts +27 -0
- package/dist/ui/query-fallback.d.ts.map +1 -0
- package/dist/ui/query-fallback.js +30 -0
- package/dist/ui/query-fallback.js.map +1 -0
- package/dist/ui/query-fallback.test.d.ts +2 -0
- package/dist/ui/query-fallback.test.d.ts.map +1 -0
- package/dist/ui/query-fallback.test.js +49 -0
- package/dist/ui/query-fallback.test.js.map +1 -0
- package/dist/ui/row-card.d.ts +13 -0
- package/dist/ui/row-card.d.ts.map +1 -0
- package/dist/ui/row-card.js +11 -0
- package/dist/ui/row-card.js.map +1 -0
- package/dist/ui/section.d.ts +18 -0
- package/dist/ui/section.d.ts.map +1 -0
- package/dist/ui/section.js +14 -0
- package/dist/ui/section.js.map +1 -0
- package/dist/ui/segmented-control.d.ts +25 -0
- package/dist/ui/segmented-control.d.ts.map +1 -0
- package/dist/ui/segmented-control.js +22 -0
- package/dist/ui/segmented-control.js.map +1 -0
- package/dist/ui/settings-labels.d.ts +33 -0
- package/dist/ui/settings-labels.d.ts.map +1 -0
- package/dist/ui/settings-labels.js +50 -0
- package/dist/ui/settings-labels.js.map +1 -0
- package/dist/ui/settings-layout.d.ts +29 -0
- package/dist/ui/settings-layout.d.ts.map +1 -0
- package/dist/ui/settings-layout.js +49 -0
- package/dist/ui/settings-layout.js.map +1 -0
- package/dist/ui/settings-layout.test.d.ts +2 -0
- package/dist/ui/settings-layout.test.d.ts.map +1 -0
- package/dist/ui/settings-layout.test.js +73 -0
- package/dist/ui/settings-layout.test.js.map +1 -0
- package/dist/ui/settings.d.ts +47 -0
- package/dist/ui/settings.d.ts.map +1 -0
- package/dist/ui/settings.js +48 -0
- package/dist/ui/settings.js.map +1 -0
- package/dist/ui/settings.test.d.ts +2 -0
- package/dist/ui/settings.test.d.ts.map +1 -0
- package/dist/ui/settings.test.js +38 -0
- package/dist/ui/settings.test.js.map +1 -0
- package/dist/ui/shell-host.d.ts +46 -0
- package/dist/ui/shell-host.d.ts.map +1 -0
- package/dist/ui/shell-host.js +56 -0
- package/dist/ui/shell-host.js.map +1 -0
- package/dist/ui/shell-settings.d.ts +31 -0
- package/dist/ui/shell-settings.d.ts.map +1 -0
- package/dist/ui/shell-settings.js +97 -0
- package/dist/ui/shell-settings.js.map +1 -0
- package/dist/ui/shell-settings.test.d.ts +2 -0
- package/dist/ui/shell-settings.test.d.ts.map +1 -0
- package/dist/ui/shell-settings.test.js +108 -0
- package/dist/ui/shell-settings.test.js.map +1 -0
- package/dist/ui/shell-widgets.d.ts +14 -0
- package/dist/ui/shell-widgets.d.ts.map +1 -0
- package/dist/ui/shell-widgets.js +18 -0
- package/dist/ui/shell-widgets.js.map +1 -0
- package/dist/ui/table.d.ts +61 -0
- package/dist/ui/table.d.ts.map +1 -0
- package/dist/ui/table.js +43 -0
- package/dist/ui/table.js.map +1 -0
- package/dist/ui/tone-components.test.d.ts +2 -0
- package/dist/ui/tone-components.test.d.ts.map +1 -0
- package/dist/ui/tone-components.test.js +145 -0
- package/dist/ui/tone-components.test.js.map +1 -0
- package/dist/ui/tone-contrast.test.d.ts +2 -0
- package/dist/ui/tone-contrast.test.d.ts.map +1 -0
- package/dist/ui/tone-contrast.test.js +66 -0
- package/dist/ui/tone-contrast.test.js.map +1 -0
- package/dist/ui/toolkit-overlap.test.d.ts +2 -0
- package/dist/ui/toolkit-overlap.test.d.ts.map +1 -0
- package/dist/ui/toolkit-overlap.test.js +86 -0
- package/dist/ui/toolkit-overlap.test.js.map +1 -0
- package/dist/ui/use-apply-theme.d.ts +11 -0
- package/dist/ui/use-apply-theme.d.ts.map +1 -0
- package/dist/ui/use-apply-theme.js +37 -0
- package/dist/ui/use-apply-theme.js.map +1 -0
- package/dist/ui/use-apply-theme.test.d.ts +2 -0
- package/dist/ui/use-apply-theme.test.d.ts.map +1 -0
- package/dist/ui/use-apply-theme.test.js +102 -0
- package/dist/ui/use-apply-theme.test.js.map +1 -0
- package/dist/ui/use-bpmn-viewer.d.ts +135 -0
- package/dist/ui/use-bpmn-viewer.d.ts.map +1 -0
- package/dist/ui/use-bpmn-viewer.js +257 -0
- package/dist/ui/use-bpmn-viewer.js.map +1 -0
- package/dist/ui/use-bpmn-viewer.test.d.ts +2 -0
- package/dist/ui/use-bpmn-viewer.test.d.ts.map +1 -0
- package/dist/ui/use-bpmn-viewer.test.js +239 -0
- package/dist/ui/use-bpmn-viewer.test.js.map +1 -0
- package/dist/ui/use-detail-view.d.ts +49 -0
- package/dist/ui/use-detail-view.d.ts.map +1 -0
- package/dist/ui/use-detail-view.js +52 -0
- package/dist/ui/use-detail-view.js.map +1 -0
- package/dist/ui/use-detail-view.test.d.ts +2 -0
- package/dist/ui/use-detail-view.test.d.ts.map +1 -0
- package/dist/ui/use-detail-view.test.js +178 -0
- package/dist/ui/use-detail-view.test.js.map +1 -0
- package/dist/ui/use-paged-list-view.d.ts +48 -0
- package/dist/ui/use-paged-list-view.d.ts.map +1 -0
- package/dist/ui/use-paged-list-view.js +41 -0
- package/dist/ui/use-paged-list-view.js.map +1 -0
- package/dist/ui/use-paged-list-view.test.d.ts +2 -0
- package/dist/ui/use-paged-list-view.test.d.ts.map +1 -0
- package/dist/ui/use-paged-list-view.test.js +136 -0
- package/dist/ui/use-paged-list-view.test.js.map +1 -0
- package/dist/ui/use-paged-view-data.d.ts +103 -0
- package/dist/ui/use-paged-view-data.d.ts.map +1 -0
- package/dist/ui/use-paged-view-data.js +173 -0
- package/dist/ui/use-paged-view-data.js.map +1 -0
- package/dist/ui/use-paged-view-data.seeded.test.d.ts +2 -0
- package/dist/ui/use-paged-view-data.seeded.test.d.ts.map +1 -0
- package/dist/ui/use-paged-view-data.seeded.test.js +144 -0
- package/dist/ui/use-paged-view-data.seeded.test.js.map +1 -0
- package/dist/ui/use-paged-view-data.test.d.ts +2 -0
- package/dist/ui/use-paged-view-data.test.d.ts.map +1 -0
- package/dist/ui/use-paged-view-data.test.js +330 -0
- package/dist/ui/use-paged-view-data.test.js.map +1 -0
- package/dist/ui/use-reset-on-change.d.ts +22 -0
- package/dist/ui/use-reset-on-change.d.ts.map +1 -0
- package/dist/ui/use-reset-on-change.js +29 -0
- package/dist/ui/use-reset-on-change.js.map +1 -0
- package/dist/ui/use-reset-on-change.test.d.ts +2 -0
- package/dist/ui/use-reset-on-change.test.d.ts.map +1 -0
- package/dist/ui/use-reset-on-change.test.js +61 -0
- package/dist/ui/use-reset-on-change.test.js.map +1 -0
- package/dist/ui/use-view-data.seeded.test.d.ts +2 -0
- package/dist/ui/use-view-data.seeded.test.d.ts.map +1 -0
- package/dist/ui/use-view-data.seeded.test.js +168 -0
- package/dist/ui/use-view-data.seeded.test.js.map +1 -0
- package/dist/ui/view-data-state.d.ts +52 -0
- package/dist/ui/view-data-state.d.ts.map +1 -0
- package/dist/ui/view-data-state.js +54 -0
- package/dist/ui/view-data-state.js.map +1 -0
- package/dist/ui/view-data-state.test.d.ts +2 -0
- package/dist/ui/view-data-state.test.d.ts.map +1 -0
- package/dist/ui/view-data-state.test.js +62 -0
- package/dist/ui/view-data-state.test.js.map +1 -0
- package/dist/ui/view-meta.d.ts +70 -0
- package/dist/ui/view-meta.d.ts.map +1 -0
- package/dist/ui/view-meta.js +84 -0
- package/dist/ui/view-meta.js.map +1 -0
- package/dist/ui/view-meta.test.d.ts +2 -0
- package/dist/ui/view-meta.test.d.ts.map +1 -0
- package/dist/ui/view-meta.test.js +92 -0
- package/dist/ui/view-meta.test.js.map +1 -0
- package/dist/ui/view-refresh-state.d.ts +26 -0
- package/dist/ui/view-refresh-state.d.ts.map +1 -0
- package/dist/ui/view-refresh-state.js +15 -0
- package/dist/ui/view-refresh-state.js.map +1 -0
- package/dist/ui/widget-shell.d.ts +24 -0
- package/dist/ui/widget-shell.d.ts.map +1 -0
- package/dist/ui/widget-shell.js +50 -0
- package/dist/ui/widget-shell.js.map +1 -0
- package/dist/ui/widget-shell.test.d.ts +2 -0
- package/dist/ui/widget-shell.test.d.ts.map +1 -0
- package/dist/ui/widget-shell.test.js +41 -0
- package/dist/ui/widget-shell.test.js.map +1 -0
- package/dist/view-results.d.ts +42 -0
- package/dist/view-results.d.ts.map +1 -0
- package/dist/view-results.js +17 -0
- package/dist/view-results.js.map +1 -0
- package/dist/widget-meta-defaults.d.ts +48 -0
- package/dist/widget-meta-defaults.d.ts.map +1 -0
- package/dist/widget-meta-defaults.js +80 -0
- package/dist/widget-meta-defaults.js.map +1 -0
- package/dist/widget-meta-defaults.test.d.ts +2 -0
- package/dist/widget-meta-defaults.test.d.ts.map +1 -0
- package/dist/widget-meta-defaults.test.js +196 -0
- package/dist/widget-meta-defaults.test.js.map +1 -0
- package/dist/widget-tool-bindings.d.ts +71 -0
- package/dist/widget-tool-bindings.d.ts.map +1 -0
- package/dist/widget-tool-bindings.js +80 -0
- package/dist/widget-tool-bindings.js.map +1 -0
- package/dist/widget-tool-bindings.test.d.ts +2 -0
- package/dist/widget-tool-bindings.test.d.ts.map +1 -0
- package/dist/widget-tool-bindings.test.js +83 -0
- package/dist/widget-tool-bindings.test.js.map +1 -0
- package/dist/with-tool-errors.test.d.ts +2 -0
- package/dist/with-tool-errors.test.d.ts.map +1 -0
- package/dist/with-tool-errors.test.js +38 -0
- package/dist/with-tool-errors.test.js.map +1 -0
- package/package.json +113 -3
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { createContext, useCallback, useContext, useEffect, useId, useInsertionEffect, useLayoutEffect, useMemo, useRef, useState, } from "react";
|
|
3
|
+
import { FIT_LIMITS, solveInlineFit } from "./inline-fit-solve.js";
|
|
4
|
+
import { DOM_MEASURE, LIST_SELECTOR, SlotRegistry } from "./inline-fit-registry.js";
|
|
5
|
+
export { CONTINUES_ATTRIBUTE, DOM_MEASURE, FIT_CONTINUES_ROW, } from "./inline-fit-registry.js";
|
|
6
|
+
/**
|
|
7
|
+
* The measured inline fit (#396): an inline view is a card in a chat, and a
|
|
8
|
+
* card taller than the host's height budget turns into one scroll box. So
|
|
9
|
+
* inline, every list of the view shows only as many rows as fit, measured on
|
|
10
|
+
* the rendered view: its real chrome and its real rows (a two-line row with a
|
|
11
|
+
* name and an id is not a one-line row, and a view's header, filters and
|
|
12
|
+
* footer differ per view). The rest is one "Show all" away (fullscreen, or
|
|
13
|
+
* the next rows in place where the host offers no fullscreen).
|
|
14
|
+
*
|
|
15
|
+
* - The fit runs before the first paint (each list's layout effect), so the
|
|
16
|
+
* host's first size report already has the fitted height; a footer that
|
|
17
|
+
* appears because of a cap ("3 of 160") is absorbed by the next pass.
|
|
18
|
+
* - Within an EPOCH (the budget, the frame's width, inline vs. fullscreen) a
|
|
19
|
+
* cap only shrinks; a new epoch starts every list at {@link START_ROWS}
|
|
20
|
+
* again. Without a stated budget the view is fitted to
|
|
21
|
+
* {@link UNSTATED_BUDGET} and never capped.
|
|
22
|
+
* - Until the user first touches the view (pointer or key), content that
|
|
23
|
+
* grows late (a font swap, a diagram, an error line) refits; after that,
|
|
24
|
+
* only a list's own placement does (mounted, shown from a hidden tab, a new
|
|
25
|
+
* search or filter), so rows never vanish under the pointer.
|
|
26
|
+
* - Revealing rows in place freezes a list until its search or filter
|
|
27
|
+
* changes.
|
|
28
|
+
*
|
|
29
|
+
* Outside a host (unit renders, fixtures) and in fullscreen there is no fit:
|
|
30
|
+
* every row shows.
|
|
31
|
+
*/
|
|
32
|
+
/** Rows a list starts with in an epoch, before the fit takes some away. */
|
|
33
|
+
export const START_ROWS = 10;
|
|
34
|
+
/** The height an inline view is fitted to when the host states no budget. */
|
|
35
|
+
export const UNSTATED_BUDGET = 600;
|
|
36
|
+
/** A width change smaller than this is the same epoch (scrollbars, rounding). */
|
|
37
|
+
const WIDTH_EPSILON = 8;
|
|
38
|
+
const RESIZE_DEBOUNCE_MS = 150;
|
|
39
|
+
const FitApiContext = createContext(null);
|
|
40
|
+
const FitCapsContext = createContext(null);
|
|
41
|
+
const capsOf = (state, id) => state?.caps[id] ?? { fitted: START_ROWS, revealed: 0 };
|
|
42
|
+
/** Applies the solver's cuts; a cap only ever shrinks here. */
|
|
43
|
+
function applyCuts(state, cuts) {
|
|
44
|
+
const entries = Object.entries(cuts).filter(([id, rows]) => rows < capsOf(state, id).fitted);
|
|
45
|
+
if (entries.length === 0)
|
|
46
|
+
return state;
|
|
47
|
+
const caps = { ...state.caps };
|
|
48
|
+
for (const [id, rows] of entries)
|
|
49
|
+
caps[id] = { fitted: rows, revealed: 0 };
|
|
50
|
+
return { ...state, caps };
|
|
51
|
+
}
|
|
52
|
+
function withRevealed(state, id, revealed) {
|
|
53
|
+
const caps = capsOf(state, id);
|
|
54
|
+
const next = revealed(caps.revealed);
|
|
55
|
+
if (next === caps.revealed)
|
|
56
|
+
return state;
|
|
57
|
+
return { ...state, caps: { ...state.caps, [id]: { ...caps, revealed: next } } };
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* The view's document box with its fit: `HostDocument` renders the view in
|
|
61
|
+
* it in every display mode (the tree never changes with the mode; only
|
|
62
|
+
* `active` and the style do). `data-inline-fit` on the box says whether the
|
|
63
|
+
* last fit made the view fit ("fits") or not ("overflow": it then scrolls
|
|
64
|
+
* inside the budget).
|
|
65
|
+
*/
|
|
66
|
+
export function InlineFitBox({ active, budget, style, measure = DOM_MEASURE, children, }) {
|
|
67
|
+
const box = useRef(null);
|
|
68
|
+
const width = useFrameWidth(active);
|
|
69
|
+
const epoch = `${active}|${budget}|${width}`;
|
|
70
|
+
const [state, setState] = useState({ epoch, caps: {} });
|
|
71
|
+
// A new epoch starts every list at START_ROWS again (render-phase reset).
|
|
72
|
+
if (state.epoch !== epoch)
|
|
73
|
+
setState({ epoch, caps: {} });
|
|
74
|
+
const [registry] = useState(() => new SlotRegistry());
|
|
75
|
+
const latched = useRef(false);
|
|
76
|
+
/** A list asked for a fit before the box's ref was attached (a parent's ref attaches after its children's effects). */
|
|
77
|
+
const pending = useRef(false);
|
|
78
|
+
const current = useRef({ active, budget, measure });
|
|
79
|
+
// Before any layout effect of the lists (a parent's layout effects run after
|
|
80
|
+
// its children's): a list that refits on a new budget reads the new one.
|
|
81
|
+
useInsertionEffect(() => {
|
|
82
|
+
current.current = { active, budget, measure };
|
|
83
|
+
}, [active, budget, measure]);
|
|
84
|
+
const fit = useCallback(() => {
|
|
85
|
+
const element = box.current;
|
|
86
|
+
if (!element) {
|
|
87
|
+
pending.current = true;
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
pending.current = false;
|
|
91
|
+
const { active: on, budget: limit, measure: m } = current.current;
|
|
92
|
+
if (!on) {
|
|
93
|
+
element.removeAttribute("data-inline-fit");
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
const { slots, fresh } = registry.measure(element, m);
|
|
97
|
+
// A list placed for the first time (a drill, a tab, a new search) is a
|
|
98
|
+
// new view: what loads late in it refits until the user touches it.
|
|
99
|
+
if (fresh)
|
|
100
|
+
latched.current = false;
|
|
101
|
+
const { cuts, fits } = solveInlineFit({ budget: limit, content: m.content(element), slots });
|
|
102
|
+
element.setAttribute("data-inline-fit", fits ? "fits" : "overflow");
|
|
103
|
+
setState((previous) => applyCuts(previous, cuts));
|
|
104
|
+
}, [registry]);
|
|
105
|
+
const api = useMemo(() => ({
|
|
106
|
+
register: (id) => registry.register(id),
|
|
107
|
+
setRows: (id, element, kind) => registry.setRows(id, element, kind),
|
|
108
|
+
fit,
|
|
109
|
+
reveal(id, rows) {
|
|
110
|
+
registry.setFrozen(id, true);
|
|
111
|
+
setState((previous) => withRevealed(previous, id, (revealed) => revealed + rows));
|
|
112
|
+
},
|
|
113
|
+
reset(id) {
|
|
114
|
+
registry.setFrozen(id, false);
|
|
115
|
+
registry.unplace(id);
|
|
116
|
+
setState((previous) => withRevealed(previous, id, () => 0));
|
|
117
|
+
},
|
|
118
|
+
}), [registry, fit]);
|
|
119
|
+
// The fits the lists asked for while mounting, now that the box is attached.
|
|
120
|
+
useLayoutEffect(() => {
|
|
121
|
+
if (pending.current)
|
|
122
|
+
fit();
|
|
123
|
+
});
|
|
124
|
+
// A new epoch is a fresh start for the latch, for rows revealed in place and
|
|
125
|
+
// for the lists' placement: before the lists' own fits of the epoch run (an
|
|
126
|
+
// insertion effect precedes every layout effect).
|
|
127
|
+
useInsertionEffect(() => {
|
|
128
|
+
latched.current = false;
|
|
129
|
+
registry.restart();
|
|
130
|
+
}, [epoch, registry]);
|
|
131
|
+
// The first pointer or key the user gives the view.
|
|
132
|
+
useEffect(() => {
|
|
133
|
+
if (!active)
|
|
134
|
+
return;
|
|
135
|
+
const latch = () => {
|
|
136
|
+
latched.current = true;
|
|
137
|
+
};
|
|
138
|
+
window.addEventListener("pointerdown", latch, true);
|
|
139
|
+
window.addEventListener("keydown", latch, true);
|
|
140
|
+
return () => {
|
|
141
|
+
window.removeEventListener("pointerdown", latch, true);
|
|
142
|
+
window.removeEventListener("keydown", latch, true);
|
|
143
|
+
};
|
|
144
|
+
}, [active]);
|
|
145
|
+
// Content that changes size after the fit: before the latch everything
|
|
146
|
+
// refits (fonts, diagrams, late sections); after it only a list that has
|
|
147
|
+
// not been placed yet (it was hidden, e.g. in another tab, and shows now).
|
|
148
|
+
useEffect(() => {
|
|
149
|
+
const element = box.current;
|
|
150
|
+
if (!active || !element || typeof ResizeObserver === "undefined")
|
|
151
|
+
return;
|
|
152
|
+
const observer = new ResizeObserver(() => {
|
|
153
|
+
if (!latched.current || registry.hasUnplacedVisible(current.current.measure))
|
|
154
|
+
fit();
|
|
155
|
+
});
|
|
156
|
+
const observeAll = () => {
|
|
157
|
+
for (const child of Array.from(element.children))
|
|
158
|
+
observer.observe(child);
|
|
159
|
+
element.querySelectorAll(LIST_SELECTOR).forEach((rows) => observer.observe(rows));
|
|
160
|
+
};
|
|
161
|
+
observeAll();
|
|
162
|
+
// Lists mount later (a drill, a tab): observe what appears.
|
|
163
|
+
const mutations = new MutationObserver(observeAll);
|
|
164
|
+
mutations.observe(element, { childList: true, subtree: true });
|
|
165
|
+
return () => {
|
|
166
|
+
observer.disconnect();
|
|
167
|
+
mutations.disconnect();
|
|
168
|
+
};
|
|
169
|
+
}, [active, registry, fit]);
|
|
170
|
+
return (_jsx("div", { ref: box, style: style, children: _jsx(FitApiContext.Provider, { value: api, children: _jsx(FitCapsContext.Provider, { value: active ? state : null, children: children }) }) }));
|
|
171
|
+
}
|
|
172
|
+
/** The frame's width, settled (debounced) and only when it changed by more than rounding. */
|
|
173
|
+
function useFrameWidth(active) {
|
|
174
|
+
const [width, setWidth] = useState(() => typeof document === "undefined" ? 0 : document.documentElement.clientWidth);
|
|
175
|
+
useEffect(() => {
|
|
176
|
+
if (!active)
|
|
177
|
+
return;
|
|
178
|
+
let timer;
|
|
179
|
+
const onResize = () => {
|
|
180
|
+
clearTimeout(timer);
|
|
181
|
+
timer = setTimeout(() => {
|
|
182
|
+
const next = document.documentElement.clientWidth;
|
|
183
|
+
setWidth((w) => (Math.abs(next - w) >= WIDTH_EPSILON ? next : w));
|
|
184
|
+
}, RESIZE_DEBOUNCE_MS);
|
|
185
|
+
};
|
|
186
|
+
window.addEventListener("resize", onResize);
|
|
187
|
+
return () => {
|
|
188
|
+
clearTimeout(timer);
|
|
189
|
+
window.removeEventListener("resize", onResize);
|
|
190
|
+
};
|
|
191
|
+
}, [active]);
|
|
192
|
+
return width;
|
|
193
|
+
}
|
|
194
|
+
/** A list outside the fit: every row, nothing to register. */
|
|
195
|
+
export const NO_FIT_ROWS = {
|
|
196
|
+
cap: null,
|
|
197
|
+
step: 0,
|
|
198
|
+
attachRows: () => undefined,
|
|
199
|
+
attachFallback: () => undefined,
|
|
200
|
+
reveal: () => undefined,
|
|
201
|
+
};
|
|
202
|
+
/**
|
|
203
|
+
* Registers a list with the view's fit. `available` is how many rows it has
|
|
204
|
+
* (loaded); `resetKey` names its search or filter (a new one drops the rows
|
|
205
|
+
* revealed in place and refits the list's placement). `enabled: false` (a
|
|
206
|
+
* table inside a paged list, which fits as one) registers nothing.
|
|
207
|
+
*/
|
|
208
|
+
export function useInlineRows(available, { resetKey = "", contentKey, enabled = true, } = {}) {
|
|
209
|
+
const api = useContext(FitApiContext);
|
|
210
|
+
const state = useContext(FitCapsContext);
|
|
211
|
+
const id = useId();
|
|
212
|
+
const on = enabled && api !== null && state !== null;
|
|
213
|
+
const caps = capsOf(state, id);
|
|
214
|
+
const cap = on ? caps.fitted + caps.revealed : null;
|
|
215
|
+
const shown = cap === null ? available : Math.min(cap, available);
|
|
216
|
+
useLayoutEffect(() => {
|
|
217
|
+
if (!api || !enabled)
|
|
218
|
+
return;
|
|
219
|
+
return api.register(id);
|
|
220
|
+
}, [api, id, enabled]);
|
|
221
|
+
// A new search or filter drops the rows revealed in place (before the fit below runs).
|
|
222
|
+
const fittedKey = useRef(resetKey);
|
|
223
|
+
useLayoutEffect(() => {
|
|
224
|
+
if (fittedKey.current === resetKey)
|
|
225
|
+
return;
|
|
226
|
+
fittedKey.current = resetKey;
|
|
227
|
+
if (on)
|
|
228
|
+
api?.reset(id);
|
|
229
|
+
}, [on, api, id, resetKey]);
|
|
230
|
+
const epoch = state?.epoch;
|
|
231
|
+
useLayoutEffect(() => {
|
|
232
|
+
if (on)
|
|
233
|
+
api?.fit();
|
|
234
|
+
}, [on, api, shown, available, resetKey, contentKey, epoch]);
|
|
235
|
+
const attachRows = useCallback((element) => api?.setRows(id, element, "rows"), [api, id]);
|
|
236
|
+
const attachFallback = useCallback((element) => api?.setRows(id, element, "fallback"), [api, id]);
|
|
237
|
+
const reveal = useCallback((rows) => api?.reveal(id, rows), [api, id]);
|
|
238
|
+
// Revealing in place shows at least a soft floor of rows per click.
|
|
239
|
+
const step = Math.max(caps.fitted, FIT_LIMITS.softMin);
|
|
240
|
+
return on ? { cap, step, attachRows, attachFallback, reveal } : NO_FIT_ROWS;
|
|
241
|
+
}
|
|
242
|
+
//# sourceMappingURL=inline-fit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inline-fit.js","sourceRoot":"","sources":["../../src/ui/inline-fit.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
import { type FitMeasure } from "./inline-fit.js";
|
|
3
|
+
/**
|
|
4
|
+
* Shared by the inline fit's tests (`inline-fit*.test.tsx`). happy-dom has no
|
|
5
|
+
* layout, so the tests inject one: `chrome` px around the lists, `row` px per
|
|
6
|
+
* row, `footer` px per "k of N" line.
|
|
7
|
+
*/
|
|
8
|
+
/** A fake layout: the view is its chrome, its rendered rows and its "more" lines. */
|
|
9
|
+
export declare function layout({ chrome, row, footer, }: {
|
|
10
|
+
chrome: number;
|
|
11
|
+
row: number;
|
|
12
|
+
footer?: number;
|
|
13
|
+
}): FitMeasure;
|
|
14
|
+
export declare const ROWS: string[];
|
|
15
|
+
export declare function Table({ rows }: {
|
|
16
|
+
rows?: string[];
|
|
17
|
+
}): import("react").JSX.Element;
|
|
18
|
+
export declare const shownRows: () => string[];
|
|
19
|
+
export declare function Host({ budget, active, expand, measure, children, }: {
|
|
20
|
+
budget?: number;
|
|
21
|
+
active?: boolean;
|
|
22
|
+
expand?: (() => void) | null;
|
|
23
|
+
measure: FitMeasure;
|
|
24
|
+
children: ReactNode;
|
|
25
|
+
}): import("react").JSX.Element;
|
|
26
|
+
//# sourceMappingURL=inline-fit.test-support.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inline-fit.test-support.d.ts","sourceRoot":"","sources":["../../src/ui/inline-fit.test-support.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAItC,OAAO,EAAgB,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAG/D;;;;GAIG;AAEH,qFAAqF;AACrF,wBAAgB,MAAM,CAAC,EACrB,MAAM,EACN,GAAG,EACH,MAAW,GACZ,EAAE;IACD,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,cASA;AAED,eAAO,MAAM,IAAI,UAAuD,CAAA;AAExE,wBAAgB,KAAK,CAAC,EAAE,IAAW,EAAE,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,+BAUzD;AAED,eAAO,MAAM,SAAS,gBAIwB,CAAA;AAE9C,wBAAgB,IAAI,CAAC,EACnB,MAAY,EACZ,MAAa,EACb,MAAa,EACb,OAAO,EACP,QAAQ,GACT,EAAE;IACD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,MAAM,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAA;IAC5B,OAAO,EAAE,UAAU,CAAA;IACnB,QAAQ,EAAE,SAAS,CAAA;CACpB,+BAWA"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { screen } from "@testing-library/react";
|
|
3
|
+
import { LocaleProvider } from "@miragon/mcp-toolkit-ui";
|
|
4
|
+
import { InlineBudgetProvider } from "./inline-budget.js";
|
|
5
|
+
import { InlineFitBox } from "./inline-fit.js";
|
|
6
|
+
import { ListTable } from "./list-table.js";
|
|
7
|
+
/**
|
|
8
|
+
* Shared by the inline fit's tests (`inline-fit*.test.tsx`). happy-dom has no
|
|
9
|
+
* layout, so the tests inject one: `chrome` px around the lists, `row` px per
|
|
10
|
+
* row, `footer` px per "k of N" line.
|
|
11
|
+
*/
|
|
12
|
+
/** A fake layout: the view is its chrome, its rendered rows and its "more" lines. */
|
|
13
|
+
export function layout({ chrome, row, footer = 40, }) {
|
|
14
|
+
const measure = {
|
|
15
|
+
rows: (element) => Array.from(element.children).map((_, i) => chrome + (i + 1) * row),
|
|
16
|
+
content: (box) => chrome +
|
|
17
|
+
box.querySelectorAll("[data-inline-fit-rows] > *").length * row +
|
|
18
|
+
box.querySelectorAll("tfoot, [data-slot='list-footer']").length * footer,
|
|
19
|
+
};
|
|
20
|
+
return measure;
|
|
21
|
+
}
|
|
22
|
+
export const ROWS = Array.from({ length: 12 }, (_, i) => `row ${i + 1}`);
|
|
23
|
+
export function Table({ rows = ROWS }) {
|
|
24
|
+
return (_jsx(ListTable, { ariaLabel: "Things", columns: [{ label: "Name" }], children: rows.map((row) => (_jsx("tr", { children: _jsx("td", { children: row }) }, row))) }));
|
|
25
|
+
}
|
|
26
|
+
export const shownRows = () => screen
|
|
27
|
+
.queryAllByRole("cell")
|
|
28
|
+
.map((cell) => cell.textContent ?? "")
|
|
29
|
+
.filter((text) => text.startsWith("row "));
|
|
30
|
+
export function Host({ budget = 600, active = true, expand = null, measure, children, }) {
|
|
31
|
+
const inline = { diagramMaxHeight: null, expand };
|
|
32
|
+
return (_jsx(LocaleProvider, { locale: "en", children: _jsx(InlineBudgetProvider, { budget: inline, children: _jsx(InlineFitBox, { active: active, budget: budget, measure: measure, children: children }) }) }));
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=inline-fit.test-support.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inline-fit.test-support.js","sourceRoot":"","sources":["../../src/ui/inline-fit.test-support.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACxD,OAAO,EAAE,oBAAoB,EAAqB,MAAM,oBAAoB,CAAA;AAC5E,OAAO,EAAE,YAAY,EAAmB,MAAM,iBAAiB,CAAA;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C;;;;GAIG;AAEH,qFAAqF;AACrF,MAAM,UAAU,MAAM,CAAC,EACrB,MAAM,EACN,GAAG,EACH,MAAM,GAAG,EAAE,GAKZ;IACC,MAAM,OAAO,GAAe;QAC1B,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;QACrF,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CACf,MAAM;YACN,GAAG,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,CAAC,MAAM,GAAG,GAAG;YAC/D,GAAG,CAAC,gBAAgB,CAAC,kCAAkC,CAAC,CAAC,MAAM,GAAG,MAAM;KAC3E,CAAA;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;AAExE,MAAM,UAAU,KAAK,CAAC,EAAE,IAAI,GAAG,IAAI,EAAuB;IACxD,OAAO,CACL,KAAC,SAAS,IAAC,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,YACvD,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACjB,uBACE,uBAAK,GAAG,GAAM,IADP,GAAG,CAEP,CACN,CAAC,GACQ,CACb,CAAA;AACH,CAAC;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,EAAE,CAC5B,MAAM;KACH,cAAc,CAAC,MAAM,CAAC;KACtB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC;KACrC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAA;AAE9C,MAAM,UAAU,IAAI,CAAC,EACnB,MAAM,GAAG,GAAG,EACZ,MAAM,GAAG,IAAI,EACb,MAAM,GAAG,IAAI,EACb,OAAO,EACP,QAAQ,GAOT;IACC,MAAM,MAAM,GAAiB,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;IAC/D,OAAO,CACL,KAAC,cAAc,IAAC,MAAM,EAAC,IAAI,YACzB,KAAC,oBAAoB,IAAC,MAAM,EAAE,MAAM,YAClC,KAAC,YAAY,IAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,YAC3D,QAAQ,GACI,GACM,GACR,CAClB,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inline-fit.test.d.ts","sourceRoot":"","sources":["../../src/ui/inline-fit.test.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
// @vitest-environment happy-dom
|
|
3
|
+
import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
|
|
4
|
+
import { useState } from "react";
|
|
5
|
+
import { act, cleanup, fireEvent, render, renderHook, screen } from "@testing-library/react";
|
|
6
|
+
import { AppQueryProvider, LocaleProvider, PagedListFooter, queryClient, } from "@miragon/mcp-toolkit-ui";
|
|
7
|
+
import { PagedRows } from "./paged-rows.js";
|
|
8
|
+
import { Host, ROWS, Table, layout, shownRows } from "./inline-fit.test-support.js";
|
|
9
|
+
import { usePagedViewData } from "./use-paged-view-data.js";
|
|
10
|
+
/**
|
|
11
|
+
* Inline in a chat a view is a card, not a page (#396): each list shows the
|
|
12
|
+
* rows that FIT the host's height budget, measured on the rendered view,
|
|
13
|
+
* says how many there are, and offers the rest (fullscreen where the host
|
|
14
|
+
* offers it, else the next rows in place). happy-dom has no layout, so these
|
|
15
|
+
* tests inject one: `chrome` px around the lists, `row` px per row, `footer`
|
|
16
|
+
* px per "k of N" line. The host simulation measures the real thing.
|
|
17
|
+
*/
|
|
18
|
+
afterEach(() => {
|
|
19
|
+
cleanup();
|
|
20
|
+
queryClient.clear();
|
|
21
|
+
});
|
|
22
|
+
describe("a table inline", () => {
|
|
23
|
+
it("shows the rows that fit, says how many there are, and opens fullscreen", () => {
|
|
24
|
+
const expand = vi.fn();
|
|
25
|
+
// 300 px chrome, 60 px rows, a 40 px "more" line: 4 rows are 580 px.
|
|
26
|
+
render(_jsx(Host, { expand: expand, measure: layout({ chrome: 300, row: 60 }), children: _jsx(Table, {}) }));
|
|
27
|
+
expect(shownRows()).toEqual(ROWS.slice(0, 4));
|
|
28
|
+
expect(screen.getByText("4 of 12 shown")).toBeTruthy();
|
|
29
|
+
fireEvent.click(screen.getByRole("button", { name: "Show all" }));
|
|
30
|
+
expect(expand).toHaveBeenCalledTimes(1);
|
|
31
|
+
});
|
|
32
|
+
it("fits more rows into a larger budget", () => {
|
|
33
|
+
render(_jsx(Host, { budget: 800, measure: layout({ chrome: 300, row: 60 }), children: _jsx(Table, {}) }));
|
|
34
|
+
expect(shownRows()).toHaveLength(7);
|
|
35
|
+
});
|
|
36
|
+
it("leaves a table that fits as it is", () => {
|
|
37
|
+
render(_jsx(Host, { measure: layout({ chrome: 300, row: 60 }), children: _jsx(Table, { rows: ROWS.slice(0, 3) }) }));
|
|
38
|
+
expect(shownRows()).toEqual(ROWS.slice(0, 3));
|
|
39
|
+
expect(screen.queryByText(/shown$/)).toBeNull();
|
|
40
|
+
});
|
|
41
|
+
it("without fullscreen, shows the next rows in place and keeps them", () => {
|
|
42
|
+
render(_jsx(Host, { measure: layout({ chrome: 300, row: 60 }), children: _jsx(Table, {}) }));
|
|
43
|
+
fireEvent.click(screen.getByRole("button", { name: "Show more" }));
|
|
44
|
+
// The view is taller than the budget now; the rows the user asked for stay.
|
|
45
|
+
expect(shownRows()).toEqual(ROWS.slice(0, 8));
|
|
46
|
+
fireEvent.click(screen.getByRole("button", { name: "Show more" }));
|
|
47
|
+
expect(shownRows()).toEqual(ROWS);
|
|
48
|
+
expect(screen.queryByRole("button", { name: "Show more" })).toBeNull();
|
|
49
|
+
});
|
|
50
|
+
it("goes down to 1 row where that fits, and keeps 3 where nothing would", () => {
|
|
51
|
+
// 470 px chrome, 87 px rows (the job panel): 1 row is 597 px.
|
|
52
|
+
render(_jsx(Host, { measure: layout({ chrome: 470, row: 87 }), children: _jsx(Table, {}) }));
|
|
53
|
+
expect(shownRows()).toHaveLength(1);
|
|
54
|
+
cleanup();
|
|
55
|
+
// 1000 px around the rows: nothing fits, 3 rows and the view scrolls inside.
|
|
56
|
+
const { container } = render(_jsx(Host, { measure: layout({ chrome: 1000, row: 66 }), children: _jsx(Table, {}) }));
|
|
57
|
+
expect(shownRows()).toHaveLength(3);
|
|
58
|
+
expect(container.querySelector("[data-inline-fit]")?.getAttribute("data-inline-fit")).toBe("overflow");
|
|
59
|
+
});
|
|
60
|
+
it("starts over when the budget changes", () => {
|
|
61
|
+
const measure = layout({ chrome: 300, row: 60 });
|
|
62
|
+
const { rerender } = render(_jsx(Host, { measure: measure, children: _jsx(Table, {}) }));
|
|
63
|
+
expect(shownRows()).toHaveLength(4);
|
|
64
|
+
rerender(_jsx(Host, { budget: 800, measure: measure, children: _jsx(Table, {}) }));
|
|
65
|
+
expect(shownRows()).toHaveLength(7);
|
|
66
|
+
rerender(_jsx(Host, { budget: 400, measure: measure, children: _jsx(Table, {}) }));
|
|
67
|
+
expect(shownRows()).toHaveLength(1);
|
|
68
|
+
});
|
|
69
|
+
it("shows every row in fullscreen and outside a host", () => {
|
|
70
|
+
render(_jsx(Host, { active: false, measure: layout({ chrome: 300, row: 60 }), children: _jsx(Table, {}) }));
|
|
71
|
+
expect(shownRows()).toEqual(ROWS);
|
|
72
|
+
cleanup();
|
|
73
|
+
render(_jsx(LocaleProvider, { locale: "en", children: _jsx(Table, {}) }));
|
|
74
|
+
expect(shownRows()).toEqual(ROWS);
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
describe("a paged list inline", () => {
|
|
78
|
+
const callTool = vi.fn();
|
|
79
|
+
const toolkitDefaults = queryClient.getDefaultOptions();
|
|
80
|
+
beforeEach(() => {
|
|
81
|
+
callTool.mockReset();
|
|
82
|
+
queryClient.setDefaultOptions({
|
|
83
|
+
...toolkitDefaults,
|
|
84
|
+
queries: { ...toolkitDefaults.queries, retry: false },
|
|
85
|
+
});
|
|
86
|
+
});
|
|
87
|
+
afterEach(() => queryClient.setDefaultOptions(toolkitDefaults));
|
|
88
|
+
const seed = { items: ROWS.slice(0, 10), total: 40 };
|
|
89
|
+
/** A paged list as the widgets compose it: `PagedRows` around a `ListTable`, then the footer. */
|
|
90
|
+
function List({ search = "" }) {
|
|
91
|
+
const paged = usePagedViewData({
|
|
92
|
+
initialData: seed,
|
|
93
|
+
key: ["test:inline"],
|
|
94
|
+
tool: "test_list_data",
|
|
95
|
+
args: search ? { search } : {},
|
|
96
|
+
pageSize: 10,
|
|
97
|
+
ready: true,
|
|
98
|
+
selectItems: (data) => data.items,
|
|
99
|
+
selectTotal: (data) => data.total,
|
|
100
|
+
});
|
|
101
|
+
return (_jsxs(_Fragment, { children: [_jsx(PagedRows, { paged: paged, children: _jsx(Table, { rows: paged.items }) }), _jsx(PagedListFooter, { paged: paged, noun: "things", labels: paged.footerLabels })] }));
|
|
102
|
+
}
|
|
103
|
+
function renderList(expand) {
|
|
104
|
+
return render(_jsx(AppQueryProvider, { callTool: callTool, children: _jsx(Host, { expand: expand, measure: layout({ chrome: 300, row: 60 }), children: _jsx(List, {}) }) }));
|
|
105
|
+
}
|
|
106
|
+
it("fits its rows as ONE list, says how many it shows of all, and opens fullscreen", () => {
|
|
107
|
+
const expand = vi.fn();
|
|
108
|
+
renderList(expand);
|
|
109
|
+
expect(shownRows()).toEqual(ROWS.slice(0, 4));
|
|
110
|
+
// The table inside does not cap the rows a second time.
|
|
111
|
+
expect(screen.queryByText(/shown$/)).toBeNull();
|
|
112
|
+
expect(screen.getByText("Showing 4 of 40 things")).toBeTruthy();
|
|
113
|
+
fireEvent.click(screen.getByRole("button", { name: "Show all" }));
|
|
114
|
+
expect(expand).toHaveBeenCalledTimes(1);
|
|
115
|
+
expect(callTool).not.toHaveBeenCalledWith("test_list_data", expect.anything());
|
|
116
|
+
});
|
|
117
|
+
it("without fullscreen, reveals the next rows in place, then fetches the next page", async () => {
|
|
118
|
+
callTool.mockResolvedValue({
|
|
119
|
+
structuredContent: { items: ROWS.slice(10, 12), total: 40 },
|
|
120
|
+
});
|
|
121
|
+
renderList(null);
|
|
122
|
+
fireEvent.click(screen.getByRole("button", { name: "Load more" }));
|
|
123
|
+
expect(shownRows()).toEqual(ROWS.slice(0, 8));
|
|
124
|
+
fireEvent.click(screen.getByRole("button", { name: "Load more" }));
|
|
125
|
+
expect(shownRows()).toEqual(ROWS.slice(0, 10));
|
|
126
|
+
// Every loaded row shows: the next click fetches, and shows what it fetched.
|
|
127
|
+
await act(async () => fireEvent.click(screen.getByRole("button", { name: "Load more" })));
|
|
128
|
+
expect(callTool).toHaveBeenCalledWith("test_list_data", { firstResult: 10, maxResults: 10 });
|
|
129
|
+
expect(shownRows()).toEqual(ROWS);
|
|
130
|
+
});
|
|
131
|
+
it("a new search starts at the fitted head again", () => {
|
|
132
|
+
function Searchable() {
|
|
133
|
+
const [search, setSearch] = useState("");
|
|
134
|
+
return (_jsxs(_Fragment, { children: [_jsx("button", { type: "button", onClick: () => setSearch("x"), children: "search" }), _jsx(List, { search: search })] }));
|
|
135
|
+
}
|
|
136
|
+
callTool.mockReturnValue(new Promise(() => undefined));
|
|
137
|
+
render(_jsx(AppQueryProvider, { callTool: callTool, children: _jsx(Host, { measure: layout({ chrome: 300, row: 60 }), children: _jsx(Searchable, {}) }) }));
|
|
138
|
+
fireEvent.click(screen.getByRole("button", { name: "Load more" }));
|
|
139
|
+
expect(shownRows()).toHaveLength(8);
|
|
140
|
+
fireEvent.click(screen.getByRole("button", { name: "search" }));
|
|
141
|
+
expect(shownRows().length).toBeLessThanOrEqual(4);
|
|
142
|
+
});
|
|
143
|
+
it("shows every row outside a host", () => {
|
|
144
|
+
const wrapper = ({ children }) => (_jsx(AppQueryProvider, { callTool: callTool, children: children }));
|
|
145
|
+
const { result } = renderHook(() => usePagedViewData({
|
|
146
|
+
initialData: seed,
|
|
147
|
+
key: ["test:outside"],
|
|
148
|
+
tool: "test_list_data",
|
|
149
|
+
args: {},
|
|
150
|
+
pageSize: 10,
|
|
151
|
+
ready: true,
|
|
152
|
+
selectItems: (data) => data.items,
|
|
153
|
+
selectTotal: (data) => data.total,
|
|
154
|
+
}), { wrapper });
|
|
155
|
+
expect(result.current.items).toEqual(seed.items);
|
|
156
|
+
expect(result.current.footerLabels).toBeUndefined();
|
|
157
|
+
});
|
|
158
|
+
});
|
|
159
|
+
//# sourceMappingURL=inline-fit.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inline-fit.test.js","sourceRoot":"","sources":["../../src/ui/inline-fit.test.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import type { Locale } from "../profile-constants.js";
|
|
2
|
+
import type { HandOffAction } from "./hand-off-button.js";
|
|
3
|
+
/**
|
|
4
|
+
* The kit's own strings. The kit ships no catalog — modules localize through
|
|
5
|
+
* theirs — so the few defaults its components render follow the active
|
|
6
|
+
* locale through this map. Every component still takes a prop override. The
|
|
7
|
+
* toolkit's components (list footer, filter bar, …) speak through the
|
|
8
|
+
* toolkit's own en/de catalog, never through this map.
|
|
9
|
+
*
|
|
10
|
+
* Voice (brand-tone): German addresses you with "du", errors say what
|
|
11
|
+
* happened and what you can do, no dash as a connector; English takes the
|
|
12
|
+
* same rules in sentence case. `kit-labels.test.ts` runs the catalog text
|
|
13
|
+
* test over both sets.
|
|
14
|
+
*/
|
|
15
|
+
export interface KitLabels {
|
|
16
|
+
loading: string;
|
|
17
|
+
/** The loading status of a whole view or widget body (`ViewDataState`'s default). */
|
|
18
|
+
loadingView: string;
|
|
19
|
+
zoomIn: string;
|
|
20
|
+
zoomOut: string;
|
|
21
|
+
fitViewport: string;
|
|
22
|
+
retry: string;
|
|
23
|
+
/** A refetch failed over data still shown (`useDetailView`'s stale notice). */
|
|
24
|
+
refreshFailed: string;
|
|
25
|
+
/** The second half of the stale-data notice: the data on screen stays. */
|
|
26
|
+
refreshStale: string;
|
|
27
|
+
/** `AskAiButton` without a `label`: a verb that says the work happens in the chat. */
|
|
28
|
+
askAiDefault: string;
|
|
29
|
+
/** `OpenInCockpitLink`: the vendor's web app, named after the vendor. */
|
|
30
|
+
openInVendor: (vendor: string | undefined) => string;
|
|
31
|
+
/** Accessible name of a link that leaves the app in a new tab. */
|
|
32
|
+
opensInNewTab: (label: string) => string;
|
|
33
|
+
/**
|
|
34
|
+
* `HandOffButton`: per function, a verb that says the work happens in the
|
|
35
|
+
* chat, the same in every module (`HAND_OFF_ACTIONS` holds the icons).
|
|
36
|
+
*/
|
|
37
|
+
handOff: Readonly<Record<HandOffAction, string>>;
|
|
38
|
+
/** `IdText`: the copy button's accessible name, and the toasts after a copy. */
|
|
39
|
+
copyId: (id: string) => string;
|
|
40
|
+
idCopied: string;
|
|
41
|
+
copyFailed: string;
|
|
42
|
+
copyFailedHint: string;
|
|
43
|
+
/** `IdText` after a failed copy: the field showing the whole id, selected. */
|
|
44
|
+
fullId: string;
|
|
45
|
+
/** `ConfirmDialog`'s confirm button while the write runs. */
|
|
46
|
+
working: string;
|
|
47
|
+
/** `shell:data-table`'s table name (it has no caption of its own). */
|
|
48
|
+
dataTable: string;
|
|
49
|
+
/** A boolean cell of `shell:data-table`. */
|
|
50
|
+
yes: string;
|
|
51
|
+
no: string;
|
|
52
|
+
/** The generic `shell:*` widgets with nothing under their `dataKey`. */
|
|
53
|
+
noFiguresYet: string;
|
|
54
|
+
noRowsYet: string;
|
|
55
|
+
noDataHint: string;
|
|
56
|
+
/** `BpmnHeatmap`: the values behind the colours, as a table under the diagram. */
|
|
57
|
+
heatmapValues: string;
|
|
58
|
+
/** An inline table with more rows than its budget (#396): how many it shows. */
|
|
59
|
+
rowsShown: (p: {
|
|
60
|
+
shown: string;
|
|
61
|
+
total: string;
|
|
62
|
+
}) => string;
|
|
63
|
+
/** …and the way to the rest: fullscreen where the host offers it, else the next rows. */
|
|
64
|
+
showAll: string;
|
|
65
|
+
showMore: string;
|
|
66
|
+
/** The frequency/duration switch's group name. */
|
|
67
|
+
heatmapMetric: string;
|
|
68
|
+
heatmapElement: string;
|
|
69
|
+
heatmapValue: string;
|
|
70
|
+
/** The legend's range ("1 to 1,234"). */
|
|
71
|
+
heatmapRange: (p: {
|
|
72
|
+
min: string;
|
|
73
|
+
max: string;
|
|
74
|
+
}) => string;
|
|
75
|
+
}
|
|
76
|
+
/** The kit strings for a locale tag (`de-AT` → German); English for anything unsupported. */
|
|
77
|
+
export declare function kitLabels(locale: string | undefined): KitLabels;
|
|
78
|
+
/** Both label sets, for the catalog text test. */
|
|
79
|
+
export declare const KIT_LABELS: Readonly<Record<Locale, KitLabels>>;
|
|
80
|
+
//# sourceMappingURL=kit-labels.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kit-labels.d.ts","sourceRoot":"","sources":["../../src/ui/kit-labels.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAGzD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,qFAAqF;IACrF,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,+EAA+E;IAC/E,aAAa,EAAE,MAAM,CAAA;IACrB,0EAA0E;IAC1E,YAAY,EAAE,MAAM,CAAA;IACpB,sFAAsF;IACtF,YAAY,EAAE,MAAM,CAAA;IACpB,yEAAyE;IACzE,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,KAAK,MAAM,CAAA;IACpD,kEAAkE;IAClE,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;IACxC;;;OAGG;IACH,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAA;IAChD,gFAAgF;IAChF,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,CAAA;IAC9B,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,cAAc,EAAE,MAAM,CAAA;IACtB,8EAA8E;IAC9E,MAAM,EAAE,MAAM,CAAA;IACd,6DAA6D;IAC7D,OAAO,EAAE,MAAM,CAAA;IACf,sEAAsE;IACtE,SAAS,EAAE,MAAM,CAAA;IACjB,4CAA4C;IAC5C,GAAG,EAAE,MAAM,CAAA;IACX,EAAE,EAAE,MAAM,CAAA;IACV,wEAAwE;IACxE,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,kFAAkF;IAClF,aAAa,EAAE,MAAM,CAAA;IACrB,gFAAgF;IAChF,SAAS,EAAE,CAAC,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,CAAA;IAC1D,yFAAyF;IACzF,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,kDAAkD;IAClD,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAA;IACtB,YAAY,EAAE,MAAM,CAAA;IACpB,yCAAyC;IACzC,YAAY,EAAE,CAAC,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,CAAA;CAC1D;AAyGD,6FAA6F;AAC7F,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAE/D;AAED,kDAAkD;AAClD,eAAO,MAAM,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAU,CAAA"}
|