@miragon/pulse-widget-shell 0.24.2 → 0.25.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/README.md +134 -127
- package/dist/caller.d.ts +3 -0
- package/dist/caller.d.ts.map +1 -0
- package/dist/caller.js +18 -0
- package/dist/caller.js.map +1 -0
- package/dist/composed-server.d.ts +34 -66
- package/dist/composed-server.d.ts.map +1 -1
- package/dist/composed-server.js +130 -137
- package/dist/composed-server.js.map +1 -1
- package/dist/composition.d.ts +61 -111
- package/dist/composition.d.ts.map +1 -1
- package/dist/composition.js +120 -54
- package/dist/composition.js.map +1 -1
- package/dist/font-assets.d.ts +7 -28
- package/dist/font-assets.d.ts.map +1 -1
- package/dist/font-assets.js +11 -43
- package/dist/font-assets.js.map +1 -1
- package/dist/health.d.ts +9 -45
- package/dist/health.d.ts.map +1 -1
- package/dist/health.js +6 -24
- package/dist/health.js.map +1 -1
- package/dist/host-boot.d.ts +8 -38
- package/dist/host-boot.d.ts.map +1 -1
- package/dist/host-boot.js +10 -32
- package/dist/host-boot.js.map +1 -1
- package/dist/http-edge.d.ts +20 -76
- package/dist/http-edge.d.ts.map +1 -1
- package/dist/http-edge.js +17 -60
- package/dist/http-edge.js.map +1 -1
- package/dist/metrics.d.ts +6 -21
- package/dist/metrics.d.ts.map +1 -1
- package/dist/metrics.js +8 -36
- package/dist/metrics.js.map +1 -1
- package/dist/node-listener.d.ts +7 -39
- package/dist/node-listener.d.ts.map +1 -1
- package/dist/node-listener.js +6 -18
- package/dist/node-listener.js.map +1 -1
- package/dist/oauth-env.d.ts +15 -35
- package/dist/oauth-env.d.ts.map +1 -1
- package/dist/oauth-env.js +122 -62
- package/dist/oauth-env.js.map +1 -1
- package/dist/protocol/bpmn-names.d.ts +19 -0
- package/dist/protocol/bpmn-names.d.ts.map +1 -0
- package/dist/{bpmn-names.js → protocol/bpmn-names.js} +9 -38
- package/dist/protocol/bpmn-names.js.map +1 -0
- package/dist/protocol/served-fonts.d.ts +17 -0
- package/dist/protocol/served-fonts.d.ts.map +1 -0
- package/dist/protocol/served-fonts.js +30 -0
- package/dist/protocol/served-fonts.js.map +1 -0
- package/dist/protocol/tool-result.d.ts +24 -0
- package/dist/protocol/tool-result.d.ts.map +1 -0
- package/dist/protocol/tool-result.js +37 -0
- package/dist/protocol/tool-result.js.map +1 -0
- package/dist/protocol/translator.d.ts +14 -0
- package/dist/protocol/translator.d.ts.map +1 -0
- package/dist/protocol/translator.js +18 -0
- package/dist/protocol/translator.js.map +1 -0
- package/dist/protocol/view-name.d.ts +11 -0
- package/dist/protocol/view-name.d.ts.map +1 -0
- package/dist/protocol/view-name.js +23 -0
- package/dist/protocol/view-name.js.map +1 -0
- package/dist/request-context.d.ts +4 -33
- package/dist/request-context.d.ts.map +1 -1
- package/dist/request-context.js +11 -43
- package/dist/request-context.js.map +1 -1
- package/dist/server.d.ts +19 -39
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +28 -32
- package/dist/server.js.map +1 -1
- package/dist/testing/glossary.d.ts +4 -32
- package/dist/testing/glossary.d.ts.map +1 -1
- package/dist/testing/glossary.js +6 -30
- package/dist/testing/glossary.js.map +1 -1
- package/dist/testing/index.d.ts +1 -38
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +1 -38
- package/dist/testing/index.js.map +1 -1
- package/dist/tool-errors.d.ts +16 -0
- package/dist/tool-errors.d.ts.map +1 -0
- package/dist/tool-errors.js +23 -0
- package/dist/tool-errors.js.map +1 -0
- package/dist/tool-registrar.d.ts +29 -0
- package/dist/tool-registrar.d.ts.map +1 -0
- package/dist/tool-registrar.js +47 -0
- package/dist/tool-registrar.js.map +1 -0
- package/dist/tool-registration.d.ts +35 -0
- package/dist/tool-registration.d.ts.map +1 -0
- package/dist/tool-registration.js +80 -0
- package/dist/tool-registration.js.map +1 -0
- package/dist/tool-schema-trim.d.ts +1 -15
- package/dist/tool-schema-trim.d.ts.map +1 -1
- package/dist/tool-schema-trim.js +1 -16
- package/dist/tool-schema-trim.js.map +1 -1
- package/dist/toolsets.d.ts +10 -56
- package/dist/toolsets.d.ts.map +1 -1
- package/dist/toolsets.js +2 -10
- package/dist/toolsets.js.map +1 -1
- package/dist/ui/action-feedback.d.ts +4 -26
- package/dist/ui/action-feedback.d.ts.map +1 -1
- package/dist/ui/action-feedback.js +5 -19
- package/dist/ui/action-feedback.js.map +1 -1
- package/dist/ui/ask-ai-button.d.ts +6 -43
- package/dist/ui/ask-ai-button.d.ts.map +1 -1
- package/dist/ui/ask-ai-button.js +6 -18
- package/dist/ui/ask-ai-button.js.map +1 -1
- package/dist/ui/ask-ai-prompt.d.ts +6 -82
- package/dist/ui/ask-ai-prompt.d.ts.map +1 -1
- package/dist/ui/ask-ai-prompt.js +10 -77
- package/dist/ui/ask-ai-prompt.js.map +1 -1
- package/dist/ui/bpmn-tokens.d.ts +3 -48
- package/dist/ui/bpmn-tokens.d.ts.map +1 -1
- package/dist/ui/bpmn-tokens.js +3 -46
- package/dist/ui/bpmn-tokens.js.map +1 -1
- package/dist/ui/bpmn-zoom-controls.d.ts +4 -17
- package/dist/ui/bpmn-zoom-controls.d.ts.map +1 -1
- package/dist/ui/bpmn-zoom-controls.js +2 -16
- package/dist/ui/bpmn-zoom-controls.js.map +1 -1
- package/dist/ui/call-observer.d.ts +35 -0
- package/dist/ui/call-observer.d.ts.map +1 -0
- package/dist/ui/call-observer.js +86 -0
- package/dist/ui/call-observer.js.map +1 -0
- package/dist/ui/confirm-dialog.d.ts +4 -31
- package/dist/ui/confirm-dialog.d.ts.map +1 -1
- package/dist/ui/confirm-dialog.js +4 -27
- package/dist/ui/confirm-dialog.js.map +1 -1
- package/dist/ui/count-tone.d.ts +3 -17
- package/dist/ui/count-tone.d.ts.map +1 -1
- package/dist/ui/count-tone.js +2 -16
- package/dist/ui/count-tone.js.map +1 -1
- package/dist/ui/declare-served-fonts.d.ts +4 -10
- package/dist/ui/declare-served-fonts.d.ts.map +1 -1
- package/dist/ui/declare-served-fonts.js +6 -13
- package/dist/ui/declare-served-fonts.js.map +1 -1
- package/dist/ui/describe-error.d.ts +5 -47
- package/dist/ui/describe-error.d.ts.map +1 -1
- package/dist/ui/describe-error.js +8 -45
- package/dist/ui/describe-error.js.map +1 -1
- package/dist/ui/display-mode-toggle.d.ts +3 -16
- package/dist/ui/display-mode-toggle.d.ts.map +1 -1
- package/dist/ui/display-mode-toggle.js +6 -15
- package/dist/ui/display-mode-toggle.js.map +1 -1
- package/dist/ui/error-labels.d.ts +3 -19
- package/dist/ui/error-labels.d.ts.map +1 -1
- package/dist/ui/error-labels.js +0 -1
- package/dist/ui/error-labels.js.map +1 -1
- package/dist/ui/hand-off-button.d.ts +3 -18
- package/dist/ui/hand-off-button.d.ts.map +1 -1
- package/dist/ui/hand-off-button.js +3 -18
- package/dist/ui/hand-off-button.js.map +1 -1
- package/dist/ui/host-context.d.ts +13 -50
- package/dist/ui/host-context.d.ts.map +1 -1
- package/dist/ui/host-context.js +20 -51
- package/dist/ui/host-context.js.map +1 -1
- package/dist/ui/host-contexts.d.ts +19 -0
- package/dist/ui/host-contexts.d.ts.map +1 -0
- package/dist/ui/host-contexts.js +31 -0
- package/dist/ui/host-contexts.js.map +1 -0
- package/dist/ui/host-document.d.ts +3 -18
- package/dist/ui/host-document.d.ts.map +1 -1
- package/dist/ui/host-document.js +7 -25
- package/dist/ui/host-document.js.map +1 -1
- package/dist/ui/host-widgets.d.ts +21 -4
- package/dist/ui/host-widgets.d.ts.map +1 -1
- package/dist/ui/host-widgets.js +19 -11
- package/dist/ui/host-widgets.js.map +1 -1
- package/dist/ui/id-text.d.ts +1 -17
- package/dist/ui/id-text.d.ts.map +1 -1
- package/dist/ui/id-text.js +5 -26
- package/dist/ui/id-text.js.map +1 -1
- package/dist/ui/index.d.ts +24 -43
- package/dist/ui/index.d.ts.map +1 -1
- package/dist/ui/index.js +36 -51
- package/dist/ui/index.js.map +1 -1
- package/dist/ui/inline-budget.d.ts +2 -16
- package/dist/ui/inline-budget.d.ts.map +1 -1
- package/dist/ui/inline-budget.js +1 -8
- package/dist/ui/inline-budget.js.map +1 -1
- package/dist/ui/inline-fit-registry.d.ts +4 -31
- package/dist/ui/inline-fit-registry.d.ts.map +1 -1
- package/dist/ui/inline-fit-registry.js +9 -27
- package/dist/ui/inline-fit-registry.js.map +1 -1
- package/dist/ui/inline-fit-solve.d.ts +5 -27
- package/dist/ui/inline-fit-solve.d.ts.map +1 -1
- package/dist/ui/inline-fit-solve.js +4 -23
- package/dist/ui/inline-fit-solve.js.map +1 -1
- package/dist/ui/inline-fit.d.ts +4 -53
- package/dist/ui/inline-fit.d.ts.map +1 -1
- package/dist/ui/inline-fit.js +16 -62
- package/dist/ui/inline-fit.js.map +1 -1
- package/dist/ui/kit-labels.d.ts +12 -51
- package/dist/ui/kit-labels.d.ts.map +1 -1
- package/dist/ui/kit-labels.js +18 -28
- package/dist/ui/kit-labels.js.map +1 -1
- package/dist/ui/list-table.d.ts +15 -69
- package/dist/ui/list-table.d.ts.map +1 -1
- package/dist/ui/list-table.js +11 -69
- package/dist/ui/list-table.js.map +1 -1
- package/dist/ui/locale-gate.d.ts +11 -0
- package/dist/ui/locale-gate.d.ts.map +1 -0
- package/dist/ui/locale-gate.js +53 -0
- package/dist/ui/locale-gate.js.map +1 -0
- package/dist/ui/mcp-use-host.d.ts +20 -0
- package/dist/ui/mcp-use-host.d.ts.map +1 -0
- package/dist/ui/mcp-use-host.js +162 -0
- package/dist/ui/mcp-use-host.js.map +1 -0
- package/dist/ui/open-in-cockpit-link.d.ts +2 -21
- package/dist/ui/open-in-cockpit-link.d.ts.map +1 -1
- package/dist/ui/open-in-cockpit-link.js +5 -20
- package/dist/ui/open-in-cockpit-link.js.map +1 -1
- package/dist/ui/paged-rows.d.ts +3 -14
- package/dist/ui/paged-rows.d.ts.map +1 -1
- package/dist/ui/paged-rows.js +4 -14
- package/dist/ui/paged-rows.js.map +1 -1
- package/dist/ui/query-fallback.d.ts +2 -16
- package/dist/ui/query-fallback.d.ts.map +1 -1
- package/dist/ui/query-fallback.js +2 -14
- package/dist/ui/query-fallback.js.map +1 -1
- package/dist/ui/shell-host.d.ts +13 -23
- package/dist/ui/shell-host.d.ts.map +1 -1
- package/dist/ui/shell-host.js +1 -46
- package/dist/ui/shell-host.js.map +1 -1
- package/dist/ui/test-view-host.d.ts +51 -0
- package/dist/ui/test-view-host.d.ts.map +1 -0
- package/dist/ui/test-view-host.js +72 -0
- package/dist/ui/test-view-host.js.map +1 -0
- package/dist/ui/tool-query.d.ts +41 -0
- package/dist/ui/tool-query.d.ts.map +1 -0
- package/dist/ui/tool-query.js +128 -0
- package/dist/ui/tool-query.js.map +1 -0
- package/dist/ui/use-apply-theme.d.ts +1 -8
- package/dist/ui/use-apply-theme.d.ts.map +1 -1
- package/dist/ui/use-apply-theme.js +1 -8
- package/dist/ui/use-apply-theme.js.map +1 -1
- package/dist/ui/use-bpmn-viewer.d.ts +39 -73
- package/dist/ui/use-bpmn-viewer.d.ts.map +1 -1
- package/dist/ui/use-bpmn-viewer.js +18 -66
- package/dist/ui/use-bpmn-viewer.js.map +1 -1
- package/dist/ui/use-detail-view.d.ts +4 -26
- package/dist/ui/use-detail-view.d.ts.map +1 -1
- package/dist/ui/use-detail-view.js +7 -28
- package/dist/ui/use-detail-view.js.map +1 -1
- package/dist/ui/use-paged-list-view.d.ts +5 -25
- package/dist/ui/use-paged-list-view.d.ts.map +1 -1
- package/dist/ui/use-paged-list-view.js +5 -14
- package/dist/ui/use-paged-list-view.js.map +1 -1
- package/dist/ui/use-paged-view-data.d.ts +11 -66
- package/dist/ui/use-paged-view-data.d.ts.map +1 -1
- package/dist/ui/use-paged-view-data.js +20 -53
- package/dist/ui/use-paged-view-data.js.map +1 -1
- package/dist/ui/view-call.d.ts +66 -0
- package/dist/ui/view-call.d.ts.map +1 -0
- package/dist/ui/view-call.js +63 -0
- package/dist/ui/view-call.js.map +1 -0
- package/dist/ui/view-data-state.d.ts +1 -31
- package/dist/ui/view-data-state.d.ts.map +1 -1
- package/dist/ui/view-data-state.js +3 -32
- package/dist/ui/view-data-state.js.map +1 -1
- package/dist/ui/view-error-boundary.d.ts +24 -0
- package/dist/ui/view-error-boundary.d.ts.map +1 -0
- package/dist/ui/view-error-boundary.js +33 -0
- package/dist/ui/view-error-boundary.js.map +1 -0
- package/dist/ui/view-frame.d.ts +15 -0
- package/dist/ui/view-frame.d.ts.map +1 -0
- package/dist/ui/view-frame.js +72 -0
- package/dist/ui/view-frame.js.map +1 -0
- package/dist/ui/view-host.d.ts +35 -0
- package/dist/ui/view-host.d.ts.map +1 -0
- package/dist/ui/view-host.js +18 -0
- package/dist/ui/view-host.js.map +1 -0
- package/dist/ui/view-meta.d.ts +6 -29
- package/dist/ui/view-meta.d.ts.map +1 -1
- package/dist/ui/view-meta.js +2 -13
- package/dist/ui/view-meta.js.map +1 -1
- package/dist/ui/view-refresh-state.d.ts +4 -18
- package/dist/ui/view-refresh-state.d.ts.map +1 -1
- package/dist/ui/view-refresh-state.js +1 -7
- package/dist/ui/view-refresh-state.js.map +1 -1
- package/dist/ui/view-root.d.ts +26 -0
- package/dist/ui/view-root.d.ts.map +1 -0
- package/dist/ui/view-root.js +48 -0
- package/dist/ui/view-root.js.map +1 -0
- package/dist/ui/views.d.ts +17 -0
- package/dist/ui/views.d.ts.map +1 -0
- package/dist/ui/views.js +11 -0
- package/dist/ui/views.js.map +1 -0
- package/dist/ui/widget-shell.d.ts +1 -13
- package/dist/ui/widget-shell.d.ts.map +1 -1
- package/dist/ui/widget-shell.js +5 -30
- package/dist/ui/widget-shell.js.map +1 -1
- package/dist/view-bundle.d.ts +15 -0
- package/dist/view-bundle.d.ts.map +1 -0
- package/dist/view-bundle.js +23 -0
- package/dist/view-bundle.js.map +1 -0
- package/dist/view-results.d.ts +12 -23
- package/dist/view-results.d.ts.map +1 -1
- package/dist/view-results.js +14 -11
- package/dist/view-results.js.map +1 -1
- package/dist/widget-tool-bindings.d.ts +19 -48
- package/dist/widget-tool-bindings.d.ts.map +1 -1
- package/dist/widget-tool-bindings.js +21 -49
- package/dist/widget-tool-bindings.js.map +1 -1
- package/package.json +24 -36
- package/dist/adapt-data-widget.d.ts +0 -7
- package/dist/adapt-data-widget.d.ts.map +0 -1
- package/dist/adapt-data-widget.js +0 -7
- package/dist/adapt-data-widget.js.map +0 -1
- package/dist/bpmn-names.d.ts +0 -42
- package/dist/bpmn-names.d.ts.map +0 -1
- package/dist/bpmn-names.js.map +0 -1
- package/dist/bpmn-names.test.d.ts +0 -2
- package/dist/bpmn-names.test.d.ts.map +0 -1
- package/dist/bpmn-names.test.js +0 -143
- package/dist/bpmn-names.test.js.map +0 -1
- package/dist/build-data-feed-result.test.d.ts +0 -2
- package/dist/build-data-feed-result.test.d.ts.map +0 -1
- package/dist/build-data-feed-result.test.js +0 -28
- package/dist/build-data-feed-result.test.js.map +0 -1
- package/dist/build-single-widget-view.test.d.ts +0 -2
- package/dist/build-single-widget-view.test.d.ts.map +0 -1
- package/dist/build-single-widget-view.test.js +0 -136
- package/dist/build-single-widget-view.test.js.map +0 -1
- package/dist/builder-texts.d.ts +0 -27
- package/dist/builder-texts.d.ts.map +0 -1
- package/dist/builder-texts.js +0 -32
- package/dist/builder-texts.js.map +0 -1
- package/dist/builder-texts.test.d.ts +0 -2
- package/dist/builder-texts.test.d.ts.map +0 -1
- package/dist/builder-texts.test.js +0 -54
- package/dist/builder-texts.test.js.map +0 -1
- package/dist/catalogue-sync.d.ts +0 -18
- package/dist/catalogue-sync.d.ts.map +0 -1
- package/dist/catalogue-sync.js +0 -31
- package/dist/catalogue-sync.js.map +0 -1
- package/dist/catalogue-sync.test.d.ts +0 -2
- package/dist/catalogue-sync.test.d.ts.map +0 -1
- package/dist/catalogue-sync.test.js +0 -22
- package/dist/catalogue-sync.test.js.map +0 -1
- package/dist/composed-server.edge.test.d.ts +0 -2
- package/dist/composed-server.edge.test.d.ts.map +0 -1
- package/dist/composed-server.edge.test.js +0 -184
- package/dist/composed-server.edge.test.js.map +0 -1
- package/dist/composed-server.fonts.test.d.ts +0 -2
- package/dist/composed-server.fonts.test.d.ts.map +0 -1
- package/dist/composed-server.fonts.test.js +0 -186
- package/dist/composed-server.fonts.test.js.map +0 -1
- package/dist/composed-server.test.d.ts +0 -2
- package/dist/composed-server.test.d.ts.map +0 -1
- package/dist/composed-server.test.js +0 -332
- package/dist/composed-server.test.js.map +0 -1
- package/dist/composition.test.d.ts +0 -2
- package/dist/composition.test.d.ts.map +0 -1
- package/dist/composition.test.js +0 -275
- package/dist/composition.test.js.map +0 -1
- package/dist/dashboard-store-postgres.d.ts +0 -43
- package/dist/dashboard-store-postgres.d.ts.map +0 -1
- package/dist/dashboard-store-postgres.js +0 -225
- package/dist/dashboard-store-postgres.js.map +0 -1
- package/dist/dashboard-store-postgres.test.d.ts +0 -2
- package/dist/dashboard-store-postgres.test.d.ts.map +0 -1
- package/dist/dashboard-store-postgres.test.js +0 -272
- package/dist/dashboard-store-postgres.test.js.map +0 -1
- package/dist/font-assets.test.d.ts +0 -2
- package/dist/font-assets.test.d.ts.map +0 -1
- package/dist/font-assets.test.js +0 -123
- package/dist/font-assets.test.js.map +0 -1
- package/dist/health.test.d.ts +0 -2
- package/dist/health.test.d.ts.map +0 -1
- package/dist/health.test.js +0 -140
- package/dist/health.test.js.map +0 -1
- package/dist/host-boot.test.d.ts +0 -2
- package/dist/host-boot.test.d.ts.map +0 -1
- package/dist/host-boot.test.js +0 -59
- package/dist/host-boot.test.js.map +0 -1
- package/dist/http-edge.test.d.ts +0 -2
- package/dist/http-edge.test.d.ts.map +0 -1
- package/dist/http-edge.test.js +0 -255
- package/dist/http-edge.test.js.map +0 -1
- package/dist/metrics.test.d.ts +0 -2
- package/dist/metrics.test.d.ts.map +0 -1
- package/dist/metrics.test.js +0 -154
- package/dist/metrics.test.js.map +0 -1
- package/dist/node-listener.test.d.ts +0 -2
- package/dist/node-listener.test.d.ts.map +0 -1
- package/dist/node-listener.test.js +0 -331
- package/dist/node-listener.test.js.map +0 -1
- package/dist/oauth-env.test.d.ts +0 -2
- package/dist/oauth-env.test.d.ts.map +0 -1
- package/dist/oauth-env.test.js +0 -76
- package/dist/oauth-env.test.js.map +0 -1
- package/dist/postgres.d.ts +0 -59
- package/dist/postgres.d.ts.map +0 -1
- package/dist/postgres.js +0 -80
- package/dist/postgres.js.map +0 -1
- package/dist/profile-advisory.d.ts +0 -19
- package/dist/profile-advisory.d.ts.map +0 -1
- package/dist/profile-advisory.js +0 -48
- package/dist/profile-advisory.js.map +0 -1
- package/dist/profile-advisory.test.d.ts +0 -2
- package/dist/profile-advisory.test.d.ts.map +0 -1
- package/dist/profile-advisory.test.js +0 -53
- package/dist/profile-advisory.test.js.map +0 -1
- package/dist/profile-constants.d.ts +0 -37
- package/dist/profile-constants.d.ts.map +0 -1
- package/dist/profile-constants.js +0 -37
- package/dist/profile-constants.js.map +0 -1
- package/dist/profile-migrations.d.ts +0 -71
- package/dist/profile-migrations.d.ts.map +0 -1
- package/dist/profile-migrations.js +0 -88
- package/dist/profile-migrations.js.map +0 -1
- package/dist/profile-migrations.test.d.ts +0 -2
- package/dist/profile-migrations.test.d.ts.map +0 -1
- package/dist/profile-migrations.test.js +0 -200
- package/dist/profile-migrations.test.js.map +0 -1
- package/dist/profile-record.d.ts +0 -60
- package/dist/profile-record.d.ts.map +0 -1
- package/dist/profile-record.js +0 -78
- package/dist/profile-record.js.map +0 -1
- package/dist/profile-slice.d.ts +0 -53
- package/dist/profile-slice.d.ts.map +0 -1
- package/dist/profile-slice.js +0 -73
- package/dist/profile-slice.js.map +0 -1
- package/dist/profile-slice.test.d.ts +0 -2
- package/dist/profile-slice.test.d.ts.map +0 -1
- package/dist/profile-slice.test.js +0 -73
- package/dist/profile-slice.test.js.map +0 -1
- package/dist/profile-store-env.d.ts +0 -34
- package/dist/profile-store-env.d.ts.map +0 -1
- package/dist/profile-store-env.js +0 -44
- package/dist/profile-store-env.js.map +0 -1
- package/dist/profile-store-env.test.d.ts +0 -2
- package/dist/profile-store-env.test.d.ts.map +0 -1
- package/dist/profile-store-env.test.js +0 -69
- package/dist/profile-store-env.test.js.map +0 -1
- package/dist/profile-store-postgres.d.ts +0 -33
- package/dist/profile-store-postgres.d.ts.map +0 -1
- package/dist/profile-store-postgres.js +0 -87
- package/dist/profile-store-postgres.js.map +0 -1
- package/dist/profile-store-raw.test.d.ts +0 -2
- package/dist/profile-store-raw.test.d.ts.map +0 -1
- package/dist/profile-store-raw.test.js +0 -185
- package/dist/profile-store-raw.test.js.map +0 -1
- package/dist/profile-store.d.ts +0 -85
- package/dist/profile-store.d.ts.map +0 -1
- package/dist/profile-store.js +0 -182
- package/dist/profile-store.js.map +0 -1
- package/dist/profile-store.test.d.ts +0 -2
- package/dist/profile-store.test.d.ts.map +0 -1
- package/dist/profile-store.test.js +0 -353
- package/dist/profile-store.test.js.map +0 -1
- package/dist/profile.d.ts +0 -75
- package/dist/profile.d.ts.map +0 -1
- package/dist/profile.js +0 -85
- package/dist/profile.js.map +0 -1
- package/dist/profile.test.d.ts +0 -2
- package/dist/profile.test.d.ts.map +0 -1
- package/dist/profile.test.js +0 -71
- package/dist/profile.test.js.map +0 -1
- package/dist/request-context.test.d.ts +0 -2
- package/dist/request-context.test.d.ts.map +0 -1
- package/dist/request-context.test.js +0 -107
- package/dist/request-context.test.js.map +0 -1
- package/dist/served-fonts.d.ts +0 -38
- package/dist/served-fonts.d.ts.map +0 -1
- package/dist/served-fonts.js +0 -51
- package/dist/served-fonts.js.map +0 -1
- package/dist/served-fonts.test.d.ts +0 -2
- package/dist/served-fonts.test.d.ts.map +0 -1
- package/dist/served-fonts.test.js +0 -30
- package/dist/served-fonts.test.js.map +0 -1
- package/dist/server-locale.d.ts +0 -58
- package/dist/server-locale.d.ts.map +0 -1
- package/dist/server-locale.js +0 -64
- package/dist/server-locale.js.map +0 -1
- package/dist/server-locale.test.d.ts +0 -2
- package/dist/server-locale.test.d.ts.map +0 -1
- package/dist/server-locale.test.js +0 -90
- package/dist/server-locale.test.js.map +0 -1
- package/dist/shell-catalogue.d.ts +0 -12
- package/dist/shell-catalogue.d.ts.map +0 -1
- package/dist/shell-catalogue.js +0 -142
- package/dist/shell-catalogue.js.map +0 -1
- package/dist/shell-settings-contract.d.ts +0 -34
- package/dist/shell-settings-contract.d.ts.map +0 -1
- package/dist/shell-settings-contract.js +0 -21
- package/dist/shell-settings-contract.js.map +0 -1
- package/dist/shell-settings.d.ts +0 -24
- package/dist/shell-settings.d.ts.map +0 -1
- package/dist/shell-settings.js +0 -148
- package/dist/shell-settings.js.map +0 -1
- package/dist/shell-settings.test.d.ts +0 -2
- package/dist/shell-settings.test.d.ts.map +0 -1
- package/dist/shell-settings.test.js +0 -115
- package/dist/shell-settings.test.js.map +0 -1
- package/dist/testing/catalog-text.d.ts +0 -53
- package/dist/testing/catalog-text.d.ts.map +0 -1
- package/dist/testing/catalog-text.js +0 -146
- package/dist/testing/catalog-text.js.map +0 -1
- package/dist/testing/catalog-text.test.d.ts +0 -2
- package/dist/testing/catalog-text.test.d.ts.map +0 -1
- package/dist/testing/catalog-text.test.js +0 -137
- package/dist/testing/catalog-text.test.js.map +0 -1
- package/dist/testing/colors.d.ts +0 -34
- package/dist/testing/colors.d.ts.map +0 -1
- package/dist/testing/colors.js +0 -124
- package/dist/testing/colors.js.map +0 -1
- package/dist/testing/colors.test.d.ts +0 -2
- package/dist/testing/colors.test.d.ts.map +0 -1
- package/dist/testing/colors.test.js +0 -166
- package/dist/testing/colors.test.js.map +0 -1
- package/dist/testing/contrast.d.ts +0 -77
- package/dist/testing/contrast.d.ts.map +0 -1
- package/dist/testing/contrast.js +0 -382
- package/dist/testing/contrast.js.map +0 -1
- package/dist/testing/contrast.test.d.ts +0 -2
- package/dist/testing/contrast.test.d.ts.map +0 -1
- package/dist/testing/contrast.test.js +0 -230
- package/dist/testing/contrast.test.js.map +0 -1
- package/dist/testing/display-texts.d.ts +0 -23
- package/dist/testing/display-texts.d.ts.map +0 -1
- package/dist/testing/display-texts.js +0 -88
- package/dist/testing/display-texts.js.map +0 -1
- package/dist/testing/display-texts.test.d.ts +0 -2
- package/dist/testing/display-texts.test.d.ts.map +0 -1
- package/dist/testing/display-texts.test.js +0 -169
- package/dist/testing/display-texts.test.js.map +0 -1
- package/dist/testing/glossary.test.d.ts +0 -2
- package/dist/testing/glossary.test.d.ts.map +0 -1
- package/dist/testing/glossary.test.js +0 -78
- package/dist/testing/glossary.test.js.map +0 -1
- package/dist/testing/glyphs.d.ts +0 -27
- package/dist/testing/glyphs.d.ts.map +0 -1
- package/dist/testing/glyphs.js +0 -130
- package/dist/testing/glyphs.js.map +0 -1
- package/dist/testing/glyphs.test.d.ts +0 -2
- package/dist/testing/glyphs.test.d.ts.map +0 -1
- package/dist/testing/glyphs.test.js +0 -146
- package/dist/testing/glyphs.test.js.map +0 -1
- package/dist/testing/icon-sizes.d.ts +0 -22
- package/dist/testing/icon-sizes.d.ts.map +0 -1
- package/dist/testing/icon-sizes.js +0 -39
- package/dist/testing/icon-sizes.js.map +0 -1
- package/dist/testing/icon-sizes.test.d.ts +0 -2
- package/dist/testing/icon-sizes.test.d.ts.map +0 -1
- package/dist/testing/icon-sizes.test.js +0 -36
- package/dist/testing/icon-sizes.test.js.map +0 -1
- package/dist/testing/source-scan.d.ts +0 -16
- package/dist/testing/source-scan.d.ts.map +0 -1
- package/dist/testing/source-scan.js +0 -57
- package/dist/testing/source-scan.js.map +0 -1
- package/dist/testing/tone-pairs.d.ts +0 -20
- package/dist/testing/tone-pairs.d.ts.map +0 -1
- package/dist/testing/tone-pairs.js +0 -154
- package/dist/testing/tone-pairs.js.map +0 -1
- package/dist/testing/type-scale.d.ts +0 -40
- package/dist/testing/type-scale.d.ts.map +0 -1
- package/dist/testing/type-scale.js +0 -55
- package/dist/testing/type-scale.js.map +0 -1
- package/dist/testing/type-scale.test.d.ts +0 -2
- package/dist/testing/type-scale.test.d.ts.map +0 -1
- package/dist/testing/type-scale.test.js +0 -61
- package/dist/testing/type-scale.test.js.map +0 -1
- package/dist/tool-schema-trim.test.d.ts +0 -2
- package/dist/tool-schema-trim.test.d.ts.map +0 -1
- package/dist/tool-schema-trim.test.js +0 -53
- package/dist/tool-schema-trim.test.js.map +0 -1
- package/dist/toolsets.test.d.ts +0 -2
- package/dist/toolsets.test.d.ts.map +0 -1
- package/dist/toolsets.test.js +0 -86
- package/dist/toolsets.test.js.map +0 -1
- package/dist/ui/action-feedback.test.d.ts +0 -2
- package/dist/ui/action-feedback.test.d.ts.map +0 -1
- package/dist/ui/action-feedback.test.js +0 -77
- package/dist/ui/action-feedback.test.js.map +0 -1
- package/dist/ui/app-shell-providers.d.ts +0 -18
- package/dist/ui/app-shell-providers.d.ts.map +0 -1
- package/dist/ui/app-shell-providers.js +0 -19
- package/dist/ui/app-shell-providers.js.map +0 -1
- package/dist/ui/app-shell-providers.test.d.ts +0 -2
- package/dist/ui/app-shell-providers.test.d.ts.map +0 -1
- package/dist/ui/app-shell-providers.test.js +0 -249
- package/dist/ui/app-shell-providers.test.js.map +0 -1
- package/dist/ui/ask-ai-button.test.d.ts +0 -2
- package/dist/ui/ask-ai-button.test.d.ts.map +0 -1
- package/dist/ui/ask-ai-button.test.js +0 -103
- package/dist/ui/ask-ai-button.test.js.map +0 -1
- package/dist/ui/ask-ai-prompt.test.d.ts +0 -2
- package/dist/ui/ask-ai-prompt.test.d.ts.map +0 -1
- package/dist/ui/ask-ai-prompt.test.js +0 -240
- package/dist/ui/ask-ai-prompt.test.js.map +0 -1
- package/dist/ui/bpmn-heatmap/heat-ramp.test.d.ts +0 -2
- package/dist/ui/bpmn-heatmap/heat-ramp.test.d.ts.map +0 -1
- package/dist/ui/bpmn-heatmap/heat-ramp.test.js +0 -174
- package/dist/ui/bpmn-heatmap/heat-ramp.test.js.map +0 -1
- package/dist/ui/bpmn-heatmap/heat-utils.d.ts +0 -119
- package/dist/ui/bpmn-heatmap/heat-utils.d.ts.map +0 -1
- package/dist/ui/bpmn-heatmap/heat-utils.js +0 -231
- package/dist/ui/bpmn-heatmap/heat-utils.js.map +0 -1
- package/dist/ui/bpmn-heatmap/heat-utils.test.d.ts +0 -2
- package/dist/ui/bpmn-heatmap/heat-utils.test.d.ts.map +0 -1
- package/dist/ui/bpmn-heatmap/heat-utils.test.js +0 -59
- package/dist/ui/bpmn-heatmap/heat-utils.test.js.map +0 -1
- package/dist/ui/bpmn-heatmap-labels.d.ts +0 -46
- package/dist/ui/bpmn-heatmap-labels.d.ts.map +0 -1
- package/dist/ui/bpmn-heatmap-labels.js +0 -16
- package/dist/ui/bpmn-heatmap-labels.js.map +0 -1
- package/dist/ui/bpmn-heatmap-widget.d.ts +0 -38
- package/dist/ui/bpmn-heatmap-widget.d.ts.map +0 -1
- package/dist/ui/bpmn-heatmap-widget.js +0 -65
- package/dist/ui/bpmn-heatmap-widget.js.map +0 -1
- package/dist/ui/bpmn-heatmap-widget.test.d.ts +0 -2
- package/dist/ui/bpmn-heatmap-widget.test.d.ts.map +0 -1
- package/dist/ui/bpmn-heatmap-widget.test.js +0 -173
- package/dist/ui/bpmn-heatmap-widget.test.js.map +0 -1
- package/dist/ui/bpmn-heatmap.d.ts +0 -61
- package/dist/ui/bpmn-heatmap.d.ts.map +0 -1
- package/dist/ui/bpmn-heatmap.js +0 -119
- package/dist/ui/bpmn-heatmap.js.map +0 -1
- package/dist/ui/bpmn-tokens.test.d.ts +0 -2
- package/dist/ui/bpmn-tokens.test.d.ts.map +0 -1
- package/dist/ui/bpmn-tokens.test.js +0 -98
- package/dist/ui/bpmn-tokens.test.js.map +0 -1
- package/dist/ui/brand-gates.test.d.ts +0 -2
- package/dist/ui/brand-gates.test.d.ts.map +0 -1
- package/dist/ui/brand-gates.test.js +0 -131
- package/dist/ui/brand-gates.test.js.map +0 -1
- package/dist/ui/brand-mark.d.ts +0 -37
- package/dist/ui/brand-mark.d.ts.map +0 -1
- package/dist/ui/brand-mark.js +0 -33
- package/dist/ui/brand-mark.js.map +0 -1
- package/dist/ui/brand-mark.test.d.ts +0 -2
- package/dist/ui/brand-mark.test.d.ts.map +0 -1
- package/dist/ui/brand-mark.test.js +0 -111
- package/dist/ui/brand-mark.test.js.map +0 -1
- package/dist/ui/confirm-dialog.test.d.ts +0 -2
- package/dist/ui/confirm-dialog.test.d.ts.map +0 -1
- package/dist/ui/confirm-dialog.test.js +0 -115
- package/dist/ui/confirm-dialog.test.js.map +0 -1
- package/dist/ui/count-tone.test.d.ts +0 -2
- package/dist/ui/count-tone.test.d.ts.map +0 -1
- package/dist/ui/count-tone.test.js +0 -27
- package/dist/ui/count-tone.test.js.map +0 -1
- package/dist/ui/create-use-t.d.ts +0 -15
- package/dist/ui/create-use-t.d.ts.map +0 -1
- package/dist/ui/create-use-t.js +0 -17
- package/dist/ui/create-use-t.js.map +0 -1
- package/dist/ui/declare-served-fonts.test.d.ts +0 -2
- package/dist/ui/declare-served-fonts.test.d.ts.map +0 -1
- package/dist/ui/declare-served-fonts.test.js +0 -44
- package/dist/ui/declare-served-fonts.test.js.map +0 -1
- package/dist/ui/describe-error.test.d.ts +0 -2
- package/dist/ui/describe-error.test.d.ts.map +0 -1
- package/dist/ui/describe-error.test.js +0 -274
- package/dist/ui/describe-error.test.js.map +0 -1
- package/dist/ui/format.d.ts +0 -81
- package/dist/ui/format.d.ts.map +0 -1
- package/dist/ui/format.js +0 -189
- package/dist/ui/format.js.map +0 -1
- package/dist/ui/format.test.d.ts +0 -2
- package/dist/ui/format.test.d.ts.map +0 -1
- package/dist/ui/format.test.js +0 -181
- package/dist/ui/format.test.js.map +0 -1
- package/dist/ui/generic-widgets.d.ts +0 -15
- package/dist/ui/generic-widgets.d.ts.map +0 -1
- package/dist/ui/generic-widgets.js +0 -122
- package/dist/ui/generic-widgets.js.map +0 -1
- package/dist/ui/generic-widgets.test.d.ts +0 -2
- package/dist/ui/generic-widgets.test.d.ts.map +0 -1
- package/dist/ui/generic-widgets.test.js +0 -139
- package/dist/ui/generic-widgets.test.js.map +0 -1
- package/dist/ui/hand-off-button.test.d.ts +0 -2
- package/dist/ui/hand-off-button.test.d.ts.map +0 -1
- package/dist/ui/hand-off-button.test.js +0 -78
- package/dist/ui/hand-off-button.test.js.map +0 -1
- package/dist/ui/host-context.test.d.ts +0 -2
- package/dist/ui/host-context.test.d.ts.map +0 -1
- package/dist/ui/host-context.test.js +0 -160
- package/dist/ui/host-context.test.js.map +0 -1
- package/dist/ui/host-document.test.d.ts +0 -2
- package/dist/ui/host-document.test.d.ts.map +0 -1
- package/dist/ui/host-document.test.js +0 -112
- package/dist/ui/host-document.test.js.map +0 -1
- package/dist/ui/humanize-key.d.ts +0 -11
- package/dist/ui/humanize-key.d.ts.map +0 -1
- package/dist/ui/humanize-key.js +0 -26
- package/dist/ui/humanize-key.js.map +0 -1
- package/dist/ui/humanize-key.test.d.ts +0 -2
- package/dist/ui/humanize-key.test.d.ts.map +0 -1
- package/dist/ui/humanize-key.test.js +0 -42
- package/dist/ui/humanize-key.test.js.map +0 -1
- package/dist/ui/icon.d.ts +0 -37
- package/dist/ui/icon.d.ts.map +0 -1
- package/dist/ui/icon.js +0 -32
- package/dist/ui/icon.js.map +0 -1
- package/dist/ui/id-breaks.d.ts +0 -17
- package/dist/ui/id-breaks.d.ts.map +0 -1
- package/dist/ui/id-breaks.js +0 -36
- package/dist/ui/id-breaks.js.map +0 -1
- package/dist/ui/id-breaks.test.d.ts +0 -2
- package/dist/ui/id-breaks.test.d.ts.map +0 -1
- package/dist/ui/id-breaks.test.js +0 -37
- package/dist/ui/id-breaks.test.js.map +0 -1
- package/dist/ui/id-text.test.d.ts +0 -2
- package/dist/ui/id-text.test.d.ts.map +0 -1
- package/dist/ui/id-text.test.js +0 -122
- package/dist/ui/id-text.test.js.map +0 -1
- package/dist/ui/index.test.d.ts +0 -2
- package/dist/ui/index.test.d.ts.map +0 -1
- package/dist/ui/index.test.js +0 -34
- package/dist/ui/index.test.js.map +0 -1
- package/dist/ui/inline-fit-solve.test.d.ts +0 -2
- package/dist/ui/inline-fit-solve.test.d.ts.map +0 -1
- package/dist/ui/inline-fit-solve.test.js +0 -108
- package/dist/ui/inline-fit-solve.test.js.map +0 -1
- package/dist/ui/inline-fit-time.test.d.ts +0 -2
- package/dist/ui/inline-fit-time.test.d.ts.map +0 -1
- package/dist/ui/inline-fit-time.test.js +0 -110
- package/dist/ui/inline-fit-time.test.js.map +0 -1
- package/dist/ui/inline-fit.test-support.d.ts +0 -26
- package/dist/ui/inline-fit.test-support.d.ts.map +0 -1
- package/dist/ui/inline-fit.test-support.js +0 -34
- package/dist/ui/inline-fit.test-support.js.map +0 -1
- package/dist/ui/inline-fit.test.d.ts +0 -2
- package/dist/ui/inline-fit.test.d.ts.map +0 -1
- package/dist/ui/inline-fit.test.js +0 -159
- package/dist/ui/inline-fit.test.js.map +0 -1
- package/dist/ui/kit-labels.test.d.ts +0 -2
- package/dist/ui/kit-labels.test.d.ts.map +0 -1
- package/dist/ui/kit-labels.test.js +0 -98
- package/dist/ui/kit-labels.test.js.map +0 -1
- package/dist/ui/kit-type-roles.test.d.ts +0 -2
- package/dist/ui/kit-type-roles.test.d.ts.map +0 -1
- package/dist/ui/kit-type-roles.test.js +0 -122
- package/dist/ui/kit-type-roles.test.js.map +0 -1
- package/dist/ui/komet-svg.d.ts +0 -15
- package/dist/ui/komet-svg.d.ts.map +0 -1
- package/dist/ui/komet-svg.js +0 -21
- package/dist/ui/komet-svg.js.map +0 -1
- package/dist/ui/list-table.test.d.ts +0 -2
- package/dist/ui/list-table.test.d.ts.map +0 -1
- package/dist/ui/list-table.test.js +0 -169
- package/dist/ui/list-table.test.js.map +0 -1
- package/dist/ui/localized-app-view.d.ts +0 -40
- package/dist/ui/localized-app-view.d.ts.map +0 -1
- package/dist/ui/localized-app-view.js +0 -71
- package/dist/ui/localized-app-view.js.map +0 -1
- package/dist/ui/log-text.d.ts +0 -24
- package/dist/ui/log-text.d.ts.map +0 -1
- package/dist/ui/log-text.js +0 -31
- package/dist/ui/log-text.js.map +0 -1
- package/dist/ui/menu-item.d.ts +0 -12
- package/dist/ui/menu-item.d.ts.map +0 -1
- package/dist/ui/menu-item.js +0 -13
- package/dist/ui/menu-item.js.map +0 -1
- package/dist/ui/named-id.d.ts +0 -23
- package/dist/ui/named-id.d.ts.map +0 -1
- package/dist/ui/named-id.js +0 -21
- package/dist/ui/named-id.js.map +0 -1
- package/dist/ui/named-id.test.d.ts +0 -2
- package/dist/ui/named-id.test.d.ts.map +0 -1
- package/dist/ui/named-id.test.js +0 -57
- package/dist/ui/named-id.test.js.map +0 -1
- package/dist/ui/native-select.d.ts +0 -17
- package/dist/ui/native-select.d.ts.map +0 -1
- package/dist/ui/native-select.js +0 -20
- package/dist/ui/native-select.js.map +0 -1
- package/dist/ui/navigation-focus.d.ts +0 -20
- package/dist/ui/navigation-focus.d.ts.map +0 -1
- package/dist/ui/navigation-focus.js +0 -25
- package/dist/ui/navigation-focus.js.map +0 -1
- package/dist/ui/navigation-focus.test.d.ts +0 -2
- package/dist/ui/navigation-focus.test.d.ts.map +0 -1
- package/dist/ui/navigation-focus.test.js +0 -28
- package/dist/ui/navigation-focus.test.js.map +0 -1
- package/dist/ui/paged-list-footer.test.d.ts +0 -2
- package/dist/ui/paged-list-footer.test.d.ts.map +0 -1
- package/dist/ui/paged-list-footer.test.js +0 -128
- package/dist/ui/paged-list-footer.test.js.map +0 -1
- package/dist/ui/parse-tool-result.test.d.ts +0 -2
- package/dist/ui/parse-tool-result.test.d.ts.map +0 -1
- package/dist/ui/parse-tool-result.test.js +0 -88
- package/dist/ui/parse-tool-result.test.js.map +0 -1
- package/dist/ui/profile-gate.d.ts +0 -37
- package/dist/ui/profile-gate.d.ts.map +0 -1
- package/dist/ui/profile-gate.js +0 -126
- package/dist/ui/profile-gate.js.map +0 -1
- package/dist/ui/profile-gate.test.d.ts +0 -2
- package/dist/ui/profile-gate.test.d.ts.map +0 -1
- package/dist/ui/profile-gate.test.js +0 -246
- package/dist/ui/profile-gate.test.js.map +0 -1
- package/dist/ui/query-fallback.test.d.ts +0 -2
- package/dist/ui/query-fallback.test.d.ts.map +0 -1
- package/dist/ui/query-fallback.test.js +0 -49
- package/dist/ui/query-fallback.test.js.map +0 -1
- package/dist/ui/row-card.d.ts +0 -13
- package/dist/ui/row-card.d.ts.map +0 -1
- package/dist/ui/row-card.js +0 -11
- package/dist/ui/row-card.js.map +0 -1
- package/dist/ui/section.d.ts +0 -18
- package/dist/ui/section.d.ts.map +0 -1
- package/dist/ui/section.js +0 -14
- package/dist/ui/section.js.map +0 -1
- package/dist/ui/segmented-control.d.ts +0 -25
- package/dist/ui/segmented-control.d.ts.map +0 -1
- package/dist/ui/segmented-control.js +0 -22
- package/dist/ui/segmented-control.js.map +0 -1
- package/dist/ui/settings-labels.d.ts +0 -33
- package/dist/ui/settings-labels.d.ts.map +0 -1
- package/dist/ui/settings-labels.js +0 -50
- package/dist/ui/settings-labels.js.map +0 -1
- package/dist/ui/settings-layout.d.ts +0 -29
- package/dist/ui/settings-layout.d.ts.map +0 -1
- package/dist/ui/settings-layout.js +0 -49
- package/dist/ui/settings-layout.js.map +0 -1
- package/dist/ui/settings-layout.test.d.ts +0 -2
- package/dist/ui/settings-layout.test.d.ts.map +0 -1
- package/dist/ui/settings-layout.test.js +0 -73
- package/dist/ui/settings-layout.test.js.map +0 -1
- package/dist/ui/settings.d.ts +0 -47
- package/dist/ui/settings.d.ts.map +0 -1
- package/dist/ui/settings.js +0 -48
- package/dist/ui/settings.js.map +0 -1
- package/dist/ui/settings.test.d.ts +0 -2
- package/dist/ui/settings.test.d.ts.map +0 -1
- package/dist/ui/settings.test.js +0 -38
- package/dist/ui/settings.test.js.map +0 -1
- package/dist/ui/shell-settings.d.ts +0 -31
- package/dist/ui/shell-settings.d.ts.map +0 -1
- package/dist/ui/shell-settings.js +0 -97
- package/dist/ui/shell-settings.js.map +0 -1
- package/dist/ui/shell-settings.test.d.ts +0 -2
- package/dist/ui/shell-settings.test.d.ts.map +0 -1
- package/dist/ui/shell-settings.test.js +0 -108
- package/dist/ui/shell-settings.test.js.map +0 -1
- package/dist/ui/shell-widgets.d.ts +0 -14
- package/dist/ui/shell-widgets.d.ts.map +0 -1
- package/dist/ui/shell-widgets.js +0 -18
- package/dist/ui/shell-widgets.js.map +0 -1
- package/dist/ui/table.d.ts +0 -61
- package/dist/ui/table.d.ts.map +0 -1
- package/dist/ui/table.js +0 -43
- package/dist/ui/table.js.map +0 -1
- package/dist/ui/tone-components.test.d.ts +0 -2
- package/dist/ui/tone-components.test.d.ts.map +0 -1
- package/dist/ui/tone-components.test.js +0 -145
- package/dist/ui/tone-components.test.js.map +0 -1
- package/dist/ui/tone-contrast.test.d.ts +0 -2
- package/dist/ui/tone-contrast.test.d.ts.map +0 -1
- package/dist/ui/tone-contrast.test.js +0 -66
- package/dist/ui/tone-contrast.test.js.map +0 -1
- package/dist/ui/toolkit-overlap.test.d.ts +0 -2
- package/dist/ui/toolkit-overlap.test.d.ts.map +0 -1
- package/dist/ui/toolkit-overlap.test.js +0 -86
- package/dist/ui/toolkit-overlap.test.js.map +0 -1
- package/dist/ui/use-apply-theme.test.d.ts +0 -2
- package/dist/ui/use-apply-theme.test.d.ts.map +0 -1
- package/dist/ui/use-apply-theme.test.js +0 -102
- package/dist/ui/use-apply-theme.test.js.map +0 -1
- package/dist/ui/use-bpmn-viewer.test.d.ts +0 -2
- package/dist/ui/use-bpmn-viewer.test.d.ts.map +0 -1
- package/dist/ui/use-bpmn-viewer.test.js +0 -239
- package/dist/ui/use-bpmn-viewer.test.js.map +0 -1
- package/dist/ui/use-detail-view.test.d.ts +0 -2
- package/dist/ui/use-detail-view.test.d.ts.map +0 -1
- package/dist/ui/use-detail-view.test.js +0 -178
- package/dist/ui/use-detail-view.test.js.map +0 -1
- package/dist/ui/use-paged-list-view.test.d.ts +0 -2
- package/dist/ui/use-paged-list-view.test.d.ts.map +0 -1
- package/dist/ui/use-paged-list-view.test.js +0 -136
- package/dist/ui/use-paged-list-view.test.js.map +0 -1
- package/dist/ui/use-paged-view-data.seeded.test.d.ts +0 -2
- package/dist/ui/use-paged-view-data.seeded.test.d.ts.map +0 -1
- package/dist/ui/use-paged-view-data.seeded.test.js +0 -144
- package/dist/ui/use-paged-view-data.seeded.test.js.map +0 -1
- package/dist/ui/use-paged-view-data.test.d.ts +0 -2
- package/dist/ui/use-paged-view-data.test.d.ts.map +0 -1
- package/dist/ui/use-paged-view-data.test.js +0 -330
- package/dist/ui/use-paged-view-data.test.js.map +0 -1
- package/dist/ui/use-reset-on-change.d.ts +0 -22
- package/dist/ui/use-reset-on-change.d.ts.map +0 -1
- package/dist/ui/use-reset-on-change.js +0 -29
- package/dist/ui/use-reset-on-change.js.map +0 -1
- package/dist/ui/use-reset-on-change.test.d.ts +0 -2
- package/dist/ui/use-reset-on-change.test.d.ts.map +0 -1
- package/dist/ui/use-reset-on-change.test.js +0 -61
- package/dist/ui/use-reset-on-change.test.js.map +0 -1
- package/dist/ui/use-view-data.seeded.test.d.ts +0 -2
- package/dist/ui/use-view-data.seeded.test.d.ts.map +0 -1
- package/dist/ui/use-view-data.seeded.test.js +0 -168
- package/dist/ui/use-view-data.seeded.test.js.map +0 -1
- package/dist/ui/view-data-state.test.d.ts +0 -2
- package/dist/ui/view-data-state.test.d.ts.map +0 -1
- package/dist/ui/view-data-state.test.js +0 -62
- package/dist/ui/view-data-state.test.js.map +0 -1
- package/dist/ui/view-meta.test.d.ts +0 -2
- package/dist/ui/view-meta.test.d.ts.map +0 -1
- package/dist/ui/view-meta.test.js +0 -92
- package/dist/ui/view-meta.test.js.map +0 -1
- package/dist/ui/widget-shell.test.d.ts +0 -2
- package/dist/ui/widget-shell.test.d.ts.map +0 -1
- package/dist/ui/widget-shell.test.js +0 -41
- package/dist/ui/widget-shell.test.js.map +0 -1
- package/dist/widget-meta-defaults.d.ts +0 -48
- package/dist/widget-meta-defaults.d.ts.map +0 -1
- package/dist/widget-meta-defaults.js +0 -80
- package/dist/widget-meta-defaults.js.map +0 -1
- package/dist/widget-meta-defaults.test.d.ts +0 -2
- package/dist/widget-meta-defaults.test.d.ts.map +0 -1
- package/dist/widget-meta-defaults.test.js +0 -196
- package/dist/widget-meta-defaults.test.js.map +0 -1
- package/dist/widget-tool-bindings.test.d.ts +0 -2
- package/dist/widget-tool-bindings.test.d.ts.map +0 -1
- package/dist/widget-tool-bindings.test.js +0 -83
- package/dist/widget-tool-bindings.test.js.map +0 -1
- package/dist/with-tool-errors.test.d.ts +0 -2
- package/dist/with-tool-errors.test.d.ts.map +0 -1
- package/dist/with-tool-errors.test.js +0 -38
- package/dist/with-tool-errors.test.js.map +0 -1
package/dist/ui/bpmn-heatmap.js
DELETED
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { useEffect, useRef } from "react";
|
|
3
|
-
import { ErrorState, useLocale } from "@miragon/mcp-toolkit-ui";
|
|
4
|
-
import { buildGradientLut, buildHeatPoints, drawHeatLayer, HEAT_GRADIENT_CSS, HEAT_PEAK_ALPHA, weightRange, } from "./bpmn-heatmap/heat-utils.js";
|
|
5
|
-
import { DEFAULT_HEATMAP_LABELS } from "./bpmn-heatmap-labels.js";
|
|
6
|
-
import { BpmnZoomControls } from "./bpmn-zoom-controls.js";
|
|
7
|
-
import { kitLabels } from "./kit-labels.js";
|
|
8
|
-
import { useBpmnViewer } from "./use-bpmn-viewer.js";
|
|
9
|
-
// Stable default for the omitted-edges case: a `= {}` parameter default would
|
|
10
|
-
// be a fresh identity per render and re-trigger the repaint effect every time.
|
|
11
|
-
const EMPTY_EDGES = {};
|
|
12
|
-
/**
|
|
13
|
-
* Renders a BPMN diagram (bpmn-js NavigatedViewer) with a Cockpit-style heat
|
|
14
|
-
* overlay on a canvas synced to the viewbox. The viewer mounts once per diagram
|
|
15
|
-
* (`bpmnXml`); changing `nodeFrequencies` (e.g. the frequency↔duration toggle)
|
|
16
|
-
* only repaints the overlay — no re-import / refit.
|
|
17
|
-
*
|
|
18
|
-
* The heat is ONE hue (`--cd-info-soft` → `--cd-blau`, never red: red is for
|
|
19
|
-
* incidents), every element with a value above zero at a visible minimum.
|
|
20
|
-
* The whole frame is a forced-light island: the paper, the zoom bar and the
|
|
21
|
-
* "no values" chip stay light in a dark host. Pair it with
|
|
22
|
-
* {@link HeatmapLegend} and the values as a table ({@link HeatValuesTable}).
|
|
23
|
-
*/
|
|
24
|
-
export function BpmnHeatmap({ bpmnXml, nodeFrequencies, edgeFrequencies = EMPTY_EDGES, height, diagramRadius = 55, diagramAriaLabel = DEFAULT_HEATMAP_LABELS.diagramAriaLabel, errorTitle = DEFAULT_HEATMAP_LABELS.errorTitle, errorHint, noHeatLabel = DEFAULT_HEATMAP_LABELS.noHeat, }) {
|
|
25
|
-
const heatCanvasRef = useRef(null);
|
|
26
|
-
const redrawRef = useRef(null);
|
|
27
|
-
// Latest heat inputs, read by redraw() so we can repaint without re-importing.
|
|
28
|
-
// Synced in an effect (not during render) so a discarded render can't leak
|
|
29
|
-
// into the ref; declared before the repaint effect below, so redraw() always
|
|
30
|
-
// sees the values of the commit that triggered it.
|
|
31
|
-
const dataRef = useRef({ nodeFrequencies, edgeFrequencies, diagramRadius });
|
|
32
|
-
useEffect(() => {
|
|
33
|
-
dataRef.current = { nodeFrequencies, edgeFrequencies, diagramRadius };
|
|
34
|
-
});
|
|
35
|
-
const { containerRef, height: autoHeight, importError, zoomIn, zoomOut, fit, } = useBpmnViewer({
|
|
36
|
-
bpmnXml,
|
|
37
|
-
onImported: (imported) => {
|
|
38
|
-
const gradientLut = buildGradientLut();
|
|
39
|
-
const canvas = imported.get("canvas");
|
|
40
|
-
const elementRegistry = imported.get("elementRegistry");
|
|
41
|
-
const eventBus = imported.get("eventBus");
|
|
42
|
-
const redraw = () => {
|
|
43
|
-
const heatCanvas = heatCanvasRef.current;
|
|
44
|
-
const container = containerRef.current;
|
|
45
|
-
if (!heatCanvas || !container)
|
|
46
|
-
return;
|
|
47
|
-
const rect = container.getBoundingClientRect();
|
|
48
|
-
const dpr = window.devicePixelRatio || 1;
|
|
49
|
-
if (heatCanvas.width !== Math.round(rect.width * dpr) ||
|
|
50
|
-
heatCanvas.height !== Math.round(rect.height * dpr)) {
|
|
51
|
-
heatCanvas.width = Math.round(rect.width * dpr);
|
|
52
|
-
heatCanvas.height = Math.round(rect.height * dpr);
|
|
53
|
-
heatCanvas.style.width = `${rect.width}px`;
|
|
54
|
-
heatCanvas.style.height = `${rect.height}px`;
|
|
55
|
-
}
|
|
56
|
-
const ctx = heatCanvas.getContext("2d");
|
|
57
|
-
if (!ctx)
|
|
58
|
-
return;
|
|
59
|
-
ctx.setTransform(dpr, 0, 0, dpr, 0, 0);
|
|
60
|
-
const { nodeFrequencies: nf, edgeFrequencies: ef, diagramRadius: dr } = dataRef.current;
|
|
61
|
-
const heatPoints = buildHeatPoints(elementRegistry.getAll(), nf, ef);
|
|
62
|
-
const range = weightRange(heatPoints.map((p) => p.weight)) ?? { min: 0, max: 0 };
|
|
63
|
-
const vb = canvas.viewbox();
|
|
64
|
-
const scale = vb.scale;
|
|
65
|
-
// Project diagram coordinates → screen pixels (CSS px).
|
|
66
|
-
const screenPoints = heatPoints.map((p) => ({
|
|
67
|
-
x: (p.x - vb.x) * scale,
|
|
68
|
-
y: (p.y - vb.y) * scale,
|
|
69
|
-
weight: p.weight,
|
|
70
|
-
}));
|
|
71
|
-
const radiusPx = Math.max(20, dr * scale);
|
|
72
|
-
drawHeatLayer(ctx, rect.width, rect.height, heatCanvas.width, heatCanvas.height, screenPoints, range, radiusPx, gradientLut);
|
|
73
|
-
};
|
|
74
|
-
redrawRef.current = redraw;
|
|
75
|
-
redraw();
|
|
76
|
-
const onChange = () => redraw();
|
|
77
|
-
eventBus.on("canvas.viewbox.changed", onChange);
|
|
78
|
-
eventBus.on("canvas.resized", onChange);
|
|
79
|
-
// Resize only repaints the overlay — the operator's pan/zoom is kept.
|
|
80
|
-
const ro = new ResizeObserver(() => redraw());
|
|
81
|
-
if (containerRef.current)
|
|
82
|
-
ro.observe(containerRef.current);
|
|
83
|
-
return () => {
|
|
84
|
-
eventBus.off("canvas.viewbox.changed", onChange);
|
|
85
|
-
eventBus.off("canvas.resized", onChange);
|
|
86
|
-
ro.disconnect();
|
|
87
|
-
redrawRef.current = null;
|
|
88
|
-
};
|
|
89
|
-
},
|
|
90
|
-
});
|
|
91
|
-
// Repaint the overlay when the heat values change (toggle) — viewer stays mounted.
|
|
92
|
-
useEffect(() => {
|
|
93
|
-
redrawRef.current?.();
|
|
94
|
-
}, [nodeFrequencies, edgeFrequencies, diagramRadius]);
|
|
95
|
-
// Mirrors the `weight > 0` filter in buildHeatPoints: a map of zeros paints
|
|
96
|
-
// nothing, so it must read as "no data" too.
|
|
97
|
-
const hasHeat = Object.values(nodeFrequencies).some((v) => v > 0) ||
|
|
98
|
-
Object.values(edgeFrequencies).some((v) => v > 0);
|
|
99
|
-
return (_jsxs("div", { "data-theme-mode": "light", className: "relative w-full", style: { height: `${height ?? autoHeight}px` }, children: [_jsx("div", { ref: containerRef, role: "img", "aria-label": diagramAriaLabel, className: "border-border absolute inset-0 size-full rounded-md border" }), _jsx("canvas", { ref: heatCanvasRef, "aria-hidden": "true", className: "pointer-events-none absolute inset-0 size-full rounded-md", style: { mixBlendMode: "multiply" } }), importError ? (_jsx("div", { className: "absolute inset-x-3 top-3", children: _jsx(ErrorState, { variant: "inline", title: errorTitle, description: errorHint, details: importError }) })) : (_jsxs(_Fragment, { children: [hasHeat ? null : (_jsx("div", { role: "status", className: "border-border bg-card text-muted-foreground text-small shadow-1 pointer-events-none absolute top-3 left-3 rounded-sm border px-2 py-1", children: noHeatLabel })), _jsx(BpmnZoomControls, { onZoomIn: zoomIn, onZoomOut: zoomOut, onFit: fit })] }))] }));
|
|
100
|
-
}
|
|
101
|
-
/**
|
|
102
|
-
* The heat ramp's legend: the swatch (on the light paper, at the layer's
|
|
103
|
-
* opacity, so it matches the diagram) between the smallest value above zero
|
|
104
|
-
* and the largest (`min`/`max`, formatted by the caller) — or "Less"/"More"
|
|
105
|
-
* where the values are not at hand. The ends are the values they encode:
|
|
106
|
-
* the layer maps that range linearly onto the swatch (`heatIntensity`), so
|
|
107
|
-
* its middle is the middle value. One value for every element paints at the
|
|
108
|
-
* full end, so it shows once, there. Screen readers hear the range as one
|
|
109
|
-
* sentence ("1 to 1,234").
|
|
110
|
-
*/
|
|
111
|
-
export function HeatmapLegend({ min, max, lessLabel = DEFAULT_HEATMAP_LABELS.less, moreLabel = DEFAULT_HEATMAP_LABELS.more, }) {
|
|
112
|
-
const labels = kitLabels(useLocale());
|
|
113
|
-
const range = min !== undefined && max !== undefined;
|
|
114
|
-
const single = range && min === max;
|
|
115
|
-
const start = range ? (single ? null : min) : lessLabel;
|
|
116
|
-
const end = range ? max : moreLabel;
|
|
117
|
-
return (_jsxs("div", { className: "text-small flex items-center gap-2", children: [range && _jsx("span", { className: "sr-only", children: single ? max : labels.heatmapRange({ min, max }) }), start !== null && (_jsx("span", { "aria-hidden": range || undefined, className: "text-muted-foreground tabular-nums", children: start })), _jsx("span", { "aria-hidden": "true", "data-theme-mode": "light", className: "bg-background border-border inline-flex h-3 w-32 overflow-hidden rounded-sm border", children: _jsx("span", { className: "size-full", style: { background: HEAT_GRADIENT_CSS, opacity: HEAT_PEAK_ALPHA } }) }), _jsx("span", { "aria-hidden": range || undefined, className: "text-muted-foreground tabular-nums", children: end })] }));
|
|
118
|
-
}
|
|
119
|
-
//# sourceMappingURL=bpmn-heatmap.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bpmn-heatmap.js","sourceRoot":"","sources":["../../src/ui/bpmn-heatmap.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bpmn-tokens.test.d.ts","sourceRoot":"","sources":["../../src/ui/bpmn-tokens.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
import { readFileSync } from "node:fs";
|
|
2
|
-
import { createRequire } from "node:module";
|
|
3
|
-
import { describe, expect, it } from "vitest";
|
|
4
|
-
import { CD_TOKENS } from "@miragon/mcp-toolkit-ui";
|
|
5
|
-
import { contrastRatio, parseThemeVariables, resolveColor, toolkitThemeStylesheets, } from "../testing/index.js";
|
|
6
|
-
import { BPMN_OVERLAY_CSS, BPMN_TOKENS, badgeSwatch, cdValue, cdVar, markerSwatch, } from "./bpmn-tokens.js";
|
|
7
|
-
/** Every `--cd-*` token name the module uses. */
|
|
8
|
-
function tokenNames(value) {
|
|
9
|
-
if (typeof value === "string")
|
|
10
|
-
return [value];
|
|
11
|
-
return Object.values(value).flatMap(tokenNames);
|
|
12
|
-
}
|
|
13
|
-
const USED = [...new Set(tokenNames(BPMN_TOKENS))];
|
|
14
|
-
/** The vendored corporate-design stylesheet, as the toolkit ships it. */
|
|
15
|
-
function vendoredTokens() {
|
|
16
|
-
const require = createRequire(import.meta.url);
|
|
17
|
-
const css = readFileSync(require.resolve("@miragon/mcp-toolkit-ui/cd-tokens.generated.css"), "utf8");
|
|
18
|
-
return new Map([...css.matchAll(/--cd-([\w-]+):\s*([^;]+);/g)].map(([, name, value]) => [name, value.trim()]));
|
|
19
|
-
}
|
|
20
|
-
/** A token on the light paper (the canvas is light in every theme). */
|
|
21
|
-
const light = parseThemeVariables(...toolkitThemeStylesheets()).light;
|
|
22
|
-
const color = (name) => resolveColor(cdVar(name), light);
|
|
23
|
-
const ratio = (a, b) => contrastRatio(color(a), color(b));
|
|
24
|
-
describe("BPMN token module ↔ the vendored CSS (modeler-tool-design §13 drift test)", () => {
|
|
25
|
-
it("names only tokens the vendored stylesheet defines, with the same value as CD_TOKENS", () => {
|
|
26
|
-
const css = vendoredTokens();
|
|
27
|
-
expect(USED.length).toBeGreaterThan(0);
|
|
28
|
-
for (const name of USED) {
|
|
29
|
-
expect(css.get(name), `--cd-${name}`).toBeDefined();
|
|
30
|
-
expect(cdValue(name).toLowerCase(), `--cd-${name}`).toBe(css.get(name)?.toLowerCase());
|
|
31
|
-
expect(CD_TOKENS[name]).toBe(cdValue(name));
|
|
32
|
-
}
|
|
33
|
-
});
|
|
34
|
-
it("the overlay CSS refers to the tokens by variable — no raw colour", () => {
|
|
35
|
-
expect(BPMN_OVERLAY_CSS).not.toMatch(/#[0-9a-f]{3,8}\b|rgba?\(/i);
|
|
36
|
-
const referenced = [...BPMN_OVERLAY_CSS.matchAll(/var\(--cd-([\w-]+)\)/g)].map((m) => m[1]);
|
|
37
|
-
const css = vendoredTokens();
|
|
38
|
-
for (const name of referenced)
|
|
39
|
-
expect(css.has(name), `--cd-${name}`).toBe(true);
|
|
40
|
-
for (const marker of [BPMN_TOKENS.incident, BPMN_TOKENS.running, BPMN_TOKENS.openTask]) {
|
|
41
|
-
expect(BPMN_OVERLAY_CSS).toContain(`stroke: ${cdVar(marker.stroke)} !important`);
|
|
42
|
-
expect(BPMN_OVERLAY_CSS).toContain(`fill: ${cdVar(marker.fill)} !important`);
|
|
43
|
-
}
|
|
44
|
-
});
|
|
45
|
-
it("red only for incidents; running and active blue on the info tint", () => {
|
|
46
|
-
expect(BPMN_TOKENS.incident).toEqual({ stroke: "danger", fill: "danger-soft" });
|
|
47
|
-
expect(BPMN_TOKENS.incidentBadge.fill).toBe("danger");
|
|
48
|
-
expect(BPMN_TOKENS.running).toEqual({ stroke: "blau", fill: "info-soft" });
|
|
49
|
-
expect(BPMN_TOKENS.openTask).toEqual({ stroke: "blau", fill: "info-soft" });
|
|
50
|
-
expect(BPMN_TOKENS.instanceBadge.fill).toBe("blau");
|
|
51
|
-
expect(BPMN_TOKENS.heat).toEqual({ from: "info-soft", to: "blau" });
|
|
52
|
-
const danger = new Set(["danger", "danger-soft", "danger-hell"]);
|
|
53
|
-
const nonIncident = [
|
|
54
|
-
BPMN_TOKENS.running,
|
|
55
|
-
BPMN_TOKENS.openTask,
|
|
56
|
-
BPMN_TOKENS.instanceBadge,
|
|
57
|
-
BPMN_TOKENS.heat,
|
|
58
|
-
];
|
|
59
|
-
for (const name of tokenNames(nonIncident))
|
|
60
|
-
expect(danger.has(name)).toBe(false);
|
|
61
|
-
});
|
|
62
|
-
it("an open task stands still: a dashed stroke, no animation (prefers-reduced-motion)", () => {
|
|
63
|
-
expect(BPMN_OVERLAY_CSS).not.toMatch(/animation|@keyframes|transition/);
|
|
64
|
-
expect(BPMN_OVERLAY_CSS).toMatch(/highlight-open-user-task[^}]*stroke-dasharray/);
|
|
65
|
-
});
|
|
66
|
-
it("the legend swatches paint what the diagram paints", () => {
|
|
67
|
-
expect(markerSwatch(BPMN_TOKENS.incident)).toEqual({
|
|
68
|
-
borderColor: "var(--cd-danger)",
|
|
69
|
-
background: "var(--cd-danger-soft)",
|
|
70
|
-
});
|
|
71
|
-
expect(badgeSwatch(BPMN_TOKENS.instanceBadge)).toEqual({
|
|
72
|
-
background: "var(--cd-blau)",
|
|
73
|
-
color: "var(--cd-weiss)",
|
|
74
|
-
});
|
|
75
|
-
});
|
|
76
|
-
});
|
|
77
|
-
describe("BPMN palette contrast (CI §3.6: strokes ≥ 3:1, text ≥ 4.5:1)", () => {
|
|
78
|
-
it.each([
|
|
79
|
-
["incident", BPMN_TOKENS.incident],
|
|
80
|
-
["running", BPMN_TOKENS.running],
|
|
81
|
-
["open task", BPMN_TOKENS.openTask],
|
|
82
|
-
])("%s: the stroke reads against the paper and against its own tint", (_, marker) => {
|
|
83
|
-
expect(ratio(marker.stroke, BPMN_TOKENS.paper)).toBeGreaterThanOrEqual(3);
|
|
84
|
-
expect(ratio(marker.stroke, marker.fill)).toBeGreaterThanOrEqual(3);
|
|
85
|
-
});
|
|
86
|
-
it.each([
|
|
87
|
-
["instance count", BPMN_TOKENS.instanceBadge],
|
|
88
|
-
["incident count", BPMN_TOKENS.incidentBadge],
|
|
89
|
-
])("%s: the badge text reaches 4.5:1 on its fill", (_, badge) => {
|
|
90
|
-
expect(ratio(badge.text, badge.fill)).toBeGreaterThanOrEqual(4.5);
|
|
91
|
-
});
|
|
92
|
-
it("a badge stands off the paper (3:1)", () => {
|
|
93
|
-
for (const badge of [BPMN_TOKENS.instanceBadge, BPMN_TOKENS.incidentBadge]) {
|
|
94
|
-
expect(ratio(badge.fill, BPMN_TOKENS.paper)).toBeGreaterThanOrEqual(3);
|
|
95
|
-
}
|
|
96
|
-
});
|
|
97
|
-
});
|
|
98
|
-
//# sourceMappingURL=bpmn-tokens.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bpmn-tokens.test.js","sourceRoot":"","sources":["../../src/ui/bpmn-tokens.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"brand-gates.test.d.ts","sourceRoot":"","sources":["../../src/ui/brand-gates.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
import { fileURLToPath } from "node:url";
|
|
2
|
-
import { describe, expect, it } from "vitest";
|
|
3
|
-
import { TOOLKIT_MESSAGES } from "@miragon/mcp-toolkit-ui";
|
|
4
|
-
import { catalogTextFindings, glossaryFindings, PRODUCT_GLOSSARY, scanColors, scanGlyphs, scanIconSizes, scanTypeScale, } from "../testing/index.js";
|
|
5
|
-
import { ASK_AI_PROMPT_LABELS } from "./ask-ai-prompt.js";
|
|
6
|
-
import { DEFAULT_HEATMAP_LABELS } from "./bpmn-heatmap-labels.js";
|
|
7
|
-
import { ERROR_KINDS } from "./describe-error.js";
|
|
8
|
-
import { ERROR_LABELS } from "./error-labels.js";
|
|
9
|
-
import { KIT_LABELS } from "./kit-labels.js";
|
|
10
|
-
import { SETTINGS_LABELS } from "./settings-labels.js";
|
|
11
|
-
import { SHELL_SETTINGS_CATALOGS } from "../shell-settings.js";
|
|
12
|
-
/** Every source the words branch on, with a key for the rendered entry. */
|
|
13
|
-
const ERROR_SOURCES = [
|
|
14
|
-
["engineWithId", { type: "engine", id: "prod" }],
|
|
15
|
-
["engine", { type: "engine" }],
|
|
16
|
-
["prometheus", { type: "prometheus" }],
|
|
17
|
-
["unknown", { type: "unknown" }],
|
|
18
|
-
];
|
|
19
|
-
/**
|
|
20
|
-
* describeError's words with EVERY branch rendered as plain text: each
|
|
21
|
-
* title for each source (with and without an engine id), each hint for each
|
|
22
|
-
* source type, and the toast's lines. The gates' own sample parameters (every
|
|
23
|
-
* property the number 1) would only ever take the fallback branch.
|
|
24
|
-
*/
|
|
25
|
-
function renderedErrorWords(labels) {
|
|
26
|
-
const status = labels.status({ status: 503 });
|
|
27
|
-
const words = { status };
|
|
28
|
-
for (const [key, source] of ERROR_SOURCES) {
|
|
29
|
-
const subject = labels.source({ source });
|
|
30
|
-
words[`source.${key}`] = subject;
|
|
31
|
-
for (const kind of ERROR_KINDS) {
|
|
32
|
-
words[`${kind}.title.${key}`] = labels[kind].title({ source: subject, status });
|
|
33
|
-
words[`${kind}.hint.${source.type}`] = labels[kind].hint({ source: source.type });
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
const title = labels.failed.title({
|
|
37
|
-
source: labels.source({ source: ERROR_SOURCES[0][1] }),
|
|
38
|
-
status,
|
|
39
|
-
});
|
|
40
|
-
words["toast.reason"] = labels.toast.reason({ title, reason: "Cannot resolve incident." });
|
|
41
|
-
words["toast.failedHint"] = labels.toast.failedHint();
|
|
42
|
-
words["toast.mayHaveApplied"] = labels.toast.mayHaveApplied();
|
|
43
|
-
return words;
|
|
44
|
-
}
|
|
45
|
-
const ERROR_WORDS = {
|
|
46
|
-
de: renderedErrorWords(ERROR_LABELS.de),
|
|
47
|
-
en: renderedErrorWords(ERROR_LABELS.en),
|
|
48
|
-
};
|
|
49
|
-
describe("the error words are rendered branch by branch", () => {
|
|
50
|
-
it.each(["de", "en"])("%s: the engine, Prometheus and fallback branches differ", (l) => {
|
|
51
|
-
const words = ERROR_WORDS[l];
|
|
52
|
-
const hints = ["engine", "prometheus", "unknown"].map((s) => words[`unreachable.hint.${s}`]);
|
|
53
|
-
expect(new Set(hints).size).toBe(3);
|
|
54
|
-
const subjects = ERROR_SOURCES.map(([key]) => words[`source.${key}`]);
|
|
55
|
-
expect(new Set(subjects).size).toBe(4);
|
|
56
|
-
expect(words["source.engineWithId"]).toContain("prod");
|
|
57
|
-
});
|
|
58
|
-
});
|
|
59
|
-
/**
|
|
60
|
-
* The kit's own copy and icons under the brand gates every widget package
|
|
61
|
-
* runs (`@miragon/pulse-widget-shell/testing`): the catalog text test over
|
|
62
|
-
* every string the kit renders or posts to the chat, and the glyph gate
|
|
63
|
-
* over the kit's widget code. brand-lint cannot see either (it reads
|
|
64
|
-
* Markdown, not strings in `.ts`/`.tsx`).
|
|
65
|
-
*/
|
|
66
|
-
describe("kit copy follows the voice rules", () => {
|
|
67
|
-
it.each([
|
|
68
|
-
["kit labels (de)", KIT_LABELS.de, "de"],
|
|
69
|
-
["kit labels (en)", KIT_LABELS.en, "en"],
|
|
70
|
-
// The view chrome every view shows is the toolkit's own catalog now.
|
|
71
|
-
["view chrome (toolkit, de)", TOOLKIT_MESSAGES.de.view, "de"],
|
|
72
|
-
["view chrome (toolkit, en)", TOOLKIT_MESSAGES.en.view, "en"],
|
|
73
|
-
["hand-off fence (de)", ASK_AI_PROMPT_LABELS.de, "de"],
|
|
74
|
-
["hand-off fence (en)", ASK_AI_PROMPT_LABELS.en, "en"],
|
|
75
|
-
["heatmap defaults (en)", DEFAULT_HEATMAP_LABELS, "en"],
|
|
76
|
-
// describeError's words (U1): what happened, what you can do — every branch.
|
|
77
|
-
["error words (de)", ERROR_WORDS.de, "de"],
|
|
78
|
-
["error words (en)", ERROR_WORDS.en, "en"],
|
|
79
|
-
// The settings page and the shell's language section, and what the
|
|
80
|
-
// shell's settings tools tell the model.
|
|
81
|
-
["settings page (de)", SETTINGS_LABELS.de, "de"],
|
|
82
|
-
["settings page (en)", SETTINGS_LABELS.en, "en"],
|
|
83
|
-
["settings summaries (de)", SHELL_SETTINGS_CATALOGS.de, "de"],
|
|
84
|
-
["settings summaries (en)", SHELL_SETTINGS_CATALOGS.en, "en"],
|
|
85
|
-
])("%s", (_, catalog, language) => {
|
|
86
|
-
expect(catalogTextFindings(catalog, { language })).toEqual([]);
|
|
87
|
-
});
|
|
88
|
-
});
|
|
89
|
-
const UI_DIR = fileURLToPath(new URL(".", import.meta.url));
|
|
90
|
-
describe("kit widget code draws icons with Lucide, never glyphs or emoji", () => {
|
|
91
|
-
it("src/ui has no forbidden glyph in JSX or strings", () => {
|
|
92
|
-
expect(scanGlyphs(UI_DIR)).toEqual([]);
|
|
93
|
-
});
|
|
94
|
-
});
|
|
95
|
-
describe("kit widget code draws icons at the CI sizes", () => {
|
|
96
|
-
// 16 px in chrome (the Icon default, `dense` for tight rows), 24 px previews.
|
|
97
|
-
it("src/ui has no icon at a size other than 16 or 24 px", () => {
|
|
98
|
-
expect(scanIconSizes(UI_DIR)).toEqual([]);
|
|
99
|
-
});
|
|
100
|
-
});
|
|
101
|
-
describe("kit widget code sets text on the type scale", () => {
|
|
102
|
-
// CI §4 as the toolkit's TYPE_SCALE: title 28, section 21, body 16, dense
|
|
103
|
-
// 14 (tables, controls), small 13 — the floor. No Tailwind sizes.
|
|
104
|
-
it("src/ui has no text size off the five steps and nothing below 13 px", () => {
|
|
105
|
-
expect(scanTypeScale(UI_DIR)).toEqual([]);
|
|
106
|
-
});
|
|
107
|
-
});
|
|
108
|
-
describe("kit copy uses the product glossary", () => {
|
|
109
|
-
// The kit's labels sit in every module's views (hand-offs, list chrome).
|
|
110
|
-
it.each(["de", "en"])("kit labels (%s)", (language) => {
|
|
111
|
-
expect(glossaryFindings(KIT_LABELS[language], PRODUCT_GLOSSARY[language])).toEqual([]);
|
|
112
|
-
});
|
|
113
|
-
it.each(["de", "en"])("error words (%s)", (language) => {
|
|
114
|
-
expect(glossaryFindings(ERROR_WORDS[language], PRODUCT_GLOSSARY[language])).toEqual([]);
|
|
115
|
-
});
|
|
116
|
-
it.each(["de", "en"])("settings page (%s)", (language) => {
|
|
117
|
-
expect(glossaryFindings(SETTINGS_LABELS[language], PRODUCT_GLOSSARY[language])).toEqual([]);
|
|
118
|
-
});
|
|
119
|
-
});
|
|
120
|
-
describe("kit widget code colours through role names only", () => {
|
|
121
|
-
it("src/ui has no palette class or raw colour outside the reasoned allowances", () => {
|
|
122
|
-
// Shrink-only: a file that loses its raw colours fails here until its
|
|
123
|
-
// entry is deleted.
|
|
124
|
-
expect(scanColors(UI_DIR, {
|
|
125
|
-
allow: {
|
|
126
|
-
"komet-svg.ts": "the CI's Komet icon, vendored byte for byte (modeler-tool-design §11), sha-pinned in brand-mark.test.tsx",
|
|
127
|
-
},
|
|
128
|
-
})).toEqual([]);
|
|
129
|
-
});
|
|
130
|
-
});
|
|
131
|
-
//# sourceMappingURL=brand-gates.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"brand-gates.test.js","sourceRoot":"","sources":["../../src/ui/brand-gates.test.ts"],"names":[],"mappings":"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"}
|
package/dist/ui/brand-mark.d.ts
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import type { ReactNode } from "react";
|
|
2
|
-
import { type StateHeadingLevel } from "@miragon/mcp-toolkit-ui";
|
|
3
|
-
/** The Komet never renders smaller than this (CI: legible as the Miragon icon). */
|
|
4
|
-
export declare const KOMET_MIN_SIZE = 24;
|
|
5
|
-
/**
|
|
6
|
-
* The Miragon signature for APP-LEVEL surfaces only — the landing, the first
|
|
7
|
-
* start, "no engines" (owner decision; never in every widget): the official
|
|
8
|
-
* Komet icon, inlined unchanged ({@link KOMET_SVG}), at `size` px (at least
|
|
9
|
-
* {@link KOMET_MIN_SIZE}).
|
|
10
|
-
*
|
|
11
|
-
* A theme slot hides it: a customer brand sets
|
|
12
|
-
* `--brand-mark-display: none` in its stylesheet (`brand.css`) and every
|
|
13
|
-
* Miragon mark disappears, without a code change. Decorative by default
|
|
14
|
-
* (the words next to it carry the meaning); pass `label` for a mark that
|
|
15
|
-
* stands alone.
|
|
16
|
-
*/
|
|
17
|
-
export declare function KometMark({ size, label, className, }: {
|
|
18
|
-
size?: number;
|
|
19
|
-
label?: string;
|
|
20
|
-
className?: string;
|
|
21
|
-
}): import("react").JSX.Element;
|
|
22
|
-
/**
|
|
23
|
-
* The empty state of an APP-LEVEL surface (CI §8 "Empty State / Landing"):
|
|
24
|
-
* the Komet over a 600 title, one help line and up to two actions — the
|
|
25
|
-
* primary one a blue `Button`. Widgets use `TableEmptyState` instead; the
|
|
26
|
-
* Komet belongs to the app, not to every list.
|
|
27
|
-
*/
|
|
28
|
-
export declare function AppEmptyState({ title, description, action, secondaryAction, titleAs, className, }: {
|
|
29
|
-
title: ReactNode;
|
|
30
|
-
description?: ReactNode;
|
|
31
|
-
action?: ReactNode;
|
|
32
|
-
secondaryAction?: ReactNode;
|
|
33
|
-
/** Default `"h2"`: it is the surface's heading. */
|
|
34
|
-
titleAs?: StateHeadingLevel;
|
|
35
|
-
className?: string;
|
|
36
|
-
}): import("react").JSX.Element;
|
|
37
|
-
//# sourceMappingURL=brand-mark.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"brand-mark.d.ts","sourceRoot":"","sources":["../../src/ui/brand-mark.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,EAAkB,KAAK,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAGhF,mFAAmF;AACnF,eAAO,MAAM,cAAc,KAAK,CAAA;AAEhC;;;;;;;;;;;GAWG;AACH,wBAAgB,SAAS,CAAC,EACxB,IAAS,EACT,KAAK,EACL,SAAS,GACV,EAAE;IACD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,+BAcA;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,WAAW,EACX,MAAM,EACN,eAAe,EACf,OAAc,EACd,SAAS,GACV,EAAE;IACD,KAAK,EAAE,SAAS,CAAA;IAChB,WAAW,CAAC,EAAE,SAAS,CAAA;IACvB,MAAM,CAAC,EAAE,SAAS,CAAA;IAClB,eAAe,CAAC,EAAE,SAAS,CAAA;IAC3B,mDAAmD;IACnD,OAAO,CAAC,EAAE,iBAAiB,CAAA;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,+BAYA"}
|
package/dist/ui/brand-mark.js
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { cn, EmptyState } from "@miragon/mcp-toolkit-ui";
|
|
3
|
-
import { KOMET_SVG } from "./komet-svg.js";
|
|
4
|
-
/** The Komet never renders smaller than this (CI: legible as the Miragon icon). */
|
|
5
|
-
export const KOMET_MIN_SIZE = 24;
|
|
6
|
-
/**
|
|
7
|
-
* The Miragon signature for APP-LEVEL surfaces only — the landing, the first
|
|
8
|
-
* start, "no engines" (owner decision; never in every widget): the official
|
|
9
|
-
* Komet icon, inlined unchanged ({@link KOMET_SVG}), at `size` px (at least
|
|
10
|
-
* {@link KOMET_MIN_SIZE}).
|
|
11
|
-
*
|
|
12
|
-
* A theme slot hides it: a customer brand sets
|
|
13
|
-
* `--brand-mark-display: none` in its stylesheet (`brand.css`) and every
|
|
14
|
-
* Miragon mark disappears, without a code change. Decorative by default
|
|
15
|
-
* (the words next to it carry the meaning); pass `label` for a mark that
|
|
16
|
-
* stands alone.
|
|
17
|
-
*/
|
|
18
|
-
export function KometMark({ size = 48, label, className, }) {
|
|
19
|
-
const px = Math.max(KOMET_MIN_SIZE, size);
|
|
20
|
-
return (_jsx("span", { "data-brand-mark": "komet", role: label ? "img" : undefined, "aria-label": label, "aria-hidden": label ? undefined : true, className: cn("shrink-0 items-center justify-center [&>svg]:size-full!", className), style: { display: "var(--brand-mark-display, inline-flex)", width: px, height: px },
|
|
21
|
-
// The CI's file, byte for byte — no JSX re-drawing of the mark.
|
|
22
|
-
dangerouslySetInnerHTML: { __html: KOMET_SVG } }));
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* The empty state of an APP-LEVEL surface (CI §8 "Empty State / Landing"):
|
|
26
|
-
* the Komet over a 600 title, one help line and up to two actions — the
|
|
27
|
-
* primary one a blue `Button`. Widgets use `TableEmptyState` instead; the
|
|
28
|
-
* Komet belongs to the app, not to every list.
|
|
29
|
-
*/
|
|
30
|
-
export function AppEmptyState({ title, description, action, secondaryAction, titleAs = "h2", className, }) {
|
|
31
|
-
return (_jsx(EmptyState, { icon: _jsx(KometMark, {}), title: title, description: description, action: action, secondaryAction: secondaryAction, titleAs: titleAs, className: cn("py-12", className) }));
|
|
32
|
-
}
|
|
33
|
-
//# sourceMappingURL=brand-mark.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"brand-mark.js","sourceRoot":"","sources":["../../src/ui/brand-mark.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,EAAE,EAAE,UAAU,EAA0B,MAAM,yBAAyB,CAAA;AAChF,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C,mFAAmF;AACnF,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAA;AAEhC;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,SAAS,CAAC,EACxB,IAAI,GAAG,EAAE,EACT,KAAK,EACL,SAAS,GAKV;IACC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,CAAA;IACzC,OAAO,CACL,kCACkB,OAAO,EACvB,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,gBACnB,KAAK,iBACJ,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EACrC,SAAS,EAAE,EAAE,CAAC,yDAAyD,EAAE,SAAS,CAAC,EACnF,KAAK,EAAE,EAAE,OAAO,EAAE,wCAAwC,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;QACnF,gEAAgE;QAChE,uBAAuB,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,GAC9C,CACH,CAAA;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,EAC5B,KAAK,EACL,WAAW,EACX,MAAM,EACN,eAAe,EACf,OAAO,GAAG,IAAI,EACd,SAAS,GASV;IACC,OAAO,CACL,KAAC,UAAU,IACT,IAAI,EAAE,KAAC,SAAS,KAAG,EACnB,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC,GACjC,CACH,CAAA;AACH,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"brand-mark.test.d.ts","sourceRoot":"","sources":["../../src/ui/brand-mark.test.tsx"],"names":[],"mappings":""}
|
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
// @vitest-environment happy-dom
|
|
3
|
-
import { createHash } from "node:crypto";
|
|
4
|
-
import { existsSync, readdirSync, readFileSync } from "node:fs";
|
|
5
|
-
import { homedir } from "node:os";
|
|
6
|
-
import { join } from "node:path";
|
|
7
|
-
import { afterEach, describe, expect, it } from "vitest";
|
|
8
|
-
import { cleanup, render, screen } from "@testing-library/react";
|
|
9
|
-
import { AppEmptyState, KOMET_MIN_SIZE, KometMark } from "./brand-mark.js";
|
|
10
|
-
import { KOMET_SVG, KOMET_SVG_SHA256, KOMET_SVG_VERSION } from "./komet-svg.js";
|
|
11
|
-
import { TableEmptyState } from "./table.js";
|
|
12
|
-
afterEach(cleanup);
|
|
13
|
-
const UPSTREAM_REL = join("skills", "corporate-design", "assets", "logo", "miragon-komet-blau.svg");
|
|
14
|
-
/** A reachable miragon-brand checkout of this version (a Claude plugin cache), or null (CI). */
|
|
15
|
-
function findUpstream() {
|
|
16
|
-
const explicit = process.env.MIRAGON_BRAND_DIR;
|
|
17
|
-
if (explicit) {
|
|
18
|
-
const file = join(explicit, UPSTREAM_REL);
|
|
19
|
-
return existsSync(file) ? file : null;
|
|
20
|
-
}
|
|
21
|
-
let homes;
|
|
22
|
-
try {
|
|
23
|
-
homes = readdirSync(homedir()).filter((name) => name.startsWith(".claude"));
|
|
24
|
-
}
|
|
25
|
-
catch {
|
|
26
|
-
return null;
|
|
27
|
-
}
|
|
28
|
-
for (const dir of homes) {
|
|
29
|
-
const cache = join(homedir(), dir, "plugins", "cache");
|
|
30
|
-
if (!existsSync(cache))
|
|
31
|
-
continue;
|
|
32
|
-
for (const marketplace of readdirSync(cache)) {
|
|
33
|
-
const file = join(cache, marketplace, "miragon-brand", KOMET_SVG_VERSION, UPSTREAM_REL);
|
|
34
|
-
if (existsSync(file))
|
|
35
|
-
return file;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
return null;
|
|
39
|
-
}
|
|
40
|
-
describe("the Komet is the CI's file, unchanged (modeler-tool-design §11)", () => {
|
|
41
|
-
it("matches the pinned SHA-256 of miragon-brand's miragon-komet-blau.svg", () => {
|
|
42
|
-
expect(createHash("sha256").update(KOMET_SVG).digest("hex")).toBe(KOMET_SVG_SHA256);
|
|
43
|
-
});
|
|
44
|
-
it("is byte-equal to the plugin's file where a checkout is reachable", () => {
|
|
45
|
-
const upstream = findUpstream();
|
|
46
|
-
if (!upstream)
|
|
47
|
-
return;
|
|
48
|
-
expect(KOMET_SVG).toBe(readFileSync(upstream, "utf8"));
|
|
49
|
-
});
|
|
50
|
-
});
|
|
51
|
-
describe("KometMark (app-level signature only)", () => {
|
|
52
|
-
it("inlines the unchanged mark, decorative, at 48 px by default", () => {
|
|
53
|
-
const { container } = render(_jsx(KometMark, {}));
|
|
54
|
-
const mark = container.querySelector('[data-brand-mark="komet"]');
|
|
55
|
-
// The DOM re-serialises the markup; the parsed tree is the CI file's.
|
|
56
|
-
const parsed = new DOMParser().parseFromString(KOMET_SVG, "image/svg+xml").documentElement;
|
|
57
|
-
const svg = mark.querySelector("svg");
|
|
58
|
-
expect(svg.getAttribute("viewBox")).toBe(parsed.getAttribute("viewBox"));
|
|
59
|
-
expect(svg.querySelector("rect")?.getAttribute("fill")).toBe("#335de5");
|
|
60
|
-
expect(svg.querySelector("path")?.getAttribute("d")).toBe(parsed.querySelector("path")?.getAttribute("d"));
|
|
61
|
-
expect(mark.getAttribute("aria-hidden")).toBe("true");
|
|
62
|
-
expect(mark.style.width).toBe("48px");
|
|
63
|
-
expect(mark.style.height).toBe("48px");
|
|
64
|
-
});
|
|
65
|
-
it("never renders below 24 px", () => {
|
|
66
|
-
const { container } = render(_jsx(KometMark, { size: 12 }));
|
|
67
|
-
const mark = container.querySelector('[data-brand-mark="komet"]');
|
|
68
|
-
expect(KOMET_MIN_SIZE).toBe(24);
|
|
69
|
-
expect(mark.style.width).toBe("24px");
|
|
70
|
-
});
|
|
71
|
-
it("hangs on the theme slot a customer brand empties (--brand-mark-display)", () => {
|
|
72
|
-
const { container } = render(_jsx(KometMark, {}));
|
|
73
|
-
const mark = container.querySelector('[data-brand-mark="komet"]');
|
|
74
|
-
expect(mark.getAttribute("style")).toContain("display: var(--brand-mark-display, inline-flex)");
|
|
75
|
-
});
|
|
76
|
-
it("stands alone as an image when labelled", () => {
|
|
77
|
-
render(_jsx(KometMark, { label: "Miragon" }));
|
|
78
|
-
expect(screen.getByRole("img", { name: "Miragon" })).toBeTruthy();
|
|
79
|
-
});
|
|
80
|
-
});
|
|
81
|
-
describe("empty states (U10)", () => {
|
|
82
|
-
it("AppEmptyState: the Komet over a 600 heading, a help line and two actions", () => {
|
|
83
|
-
const { container } = render(_jsx(AppEmptyState, { title: "No engines yet", description: "Add an engine to start.", action: _jsx("button", { type: "button", children: "Add engine" }), secondaryAction: _jsx("button", { type: "button", children: "Show example" }) }));
|
|
84
|
-
expect(container.querySelector('[data-brand-mark="komet"]')).toBeTruthy();
|
|
85
|
-
const heading = screen.getByRole("heading", { level: 2, name: "No engines yet" });
|
|
86
|
-
expect(heading.className).toContain("font-semibold");
|
|
87
|
-
expect(screen.getByText("Add an engine to start.")).toBeTruthy();
|
|
88
|
-
expect(screen.getAllByRole("button")).toHaveLength(2);
|
|
89
|
-
});
|
|
90
|
-
it("TableEmptyState: 'no data' is a quiet Inbox, 'all done' a success CircleCheck", () => {
|
|
91
|
-
const { container } = render(_jsxs(_Fragment, { children: [_jsx(TableEmptyState, { children: "No jobs found" }), _jsx(TableEmptyState, { variant: "done", description: "Nothing is failing right now.", children: "No open incidents" })] }));
|
|
92
|
-
const [empty, done] = container.querySelectorAll("[data-empty-variant]");
|
|
93
|
-
expect(empty.getAttribute("data-empty-variant")).toBe("empty");
|
|
94
|
-
expect(empty.querySelector("svg")?.getAttribute("class")).toContain("lucide-inbox");
|
|
95
|
-
expect(empty.querySelector('[aria-hidden="true"]')?.className).toContain("text-muted-foreground");
|
|
96
|
-
expect(done.getAttribute("data-empty-variant")).toBe("done");
|
|
97
|
-
expect(done.querySelector("svg")?.getAttribute("class")).toContain("lucide-circle-check");
|
|
98
|
-
expect(done.querySelector('[aria-hidden="true"]')?.className).toContain("text-success");
|
|
99
|
-
expect(screen.getByText("Nothing is failing right now.")).toBeTruthy();
|
|
100
|
-
// It stands in for a table: its title is no heading.
|
|
101
|
-
expect(screen.queryByRole("heading")).toBeNull();
|
|
102
|
-
expect(screen.getByText("No open incidents").tagName).toBe("P");
|
|
103
|
-
});
|
|
104
|
-
it("TableEmptyState: a concrete icon and actions where the caller has them", () => {
|
|
105
|
-
render(_jsx(TableEmptyState, { icon: _jsx("svg", { "data-testid": "search-x" }), action: _jsx("button", { type: "button", children: "Clear search" }), titleAs: "h3", children: "No matches" }));
|
|
106
|
-
expect(screen.getByTestId("search-x")).toBeTruthy();
|
|
107
|
-
expect(screen.getByRole("heading", { level: 3, name: "No matches" })).toBeTruthy();
|
|
108
|
-
expect(screen.getByRole("button", { name: "Clear search" })).toBeTruthy();
|
|
109
|
-
});
|
|
110
|
-
});
|
|
111
|
-
//# sourceMappingURL=brand-mark.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"brand-mark.test.js","sourceRoot":"","sources":["../../src/ui/brand-mark.test.tsx"],"names":[],"mappings":"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"}
|