@ng-prism/core 22.5.0 → 22.7.0-beta.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 +13 -9
- package/dist/app/canvas/canvas-bg.styles.d.ts +1 -1
- package/dist/app/canvas/canvas-bg.styles.d.ts.map +1 -1
- package/dist/app/canvas/canvas-bg.styles.js +1 -1
- package/dist/app/canvas/canvas-overlay-tokens.d.ts +12 -0
- package/dist/app/canvas/canvas-overlay-tokens.d.ts.map +1 -0
- package/dist/app/canvas/canvas-overlay-tokens.js +52 -0
- package/dist/app/canvas/prism-canvas-bg-pill.component.js +2 -2
- package/dist/app/canvas/prism-canvas-pin-row.component.js +2 -2
- package/dist/app/canvas/prism-canvas-rulers.component.d.ts +2 -0
- package/dist/app/canvas/prism-canvas-rulers.component.d.ts.map +1 -1
- package/dist/app/canvas/prism-canvas-rulers.component.js +17 -12
- package/dist/app/canvas/prism-canvas-toolbar.component.d.ts +25 -3
- package/dist/app/canvas/prism-canvas-toolbar.component.d.ts.map +1 -1
- package/dist/app/canvas/prism-canvas-toolbar.component.js +154 -89
- package/dist/app/canvas/prism-template-popover.component.d.ts.map +1 -1
- package/dist/app/canvas/prism-template-popover.component.js +16 -7
- package/dist/app/canvas/state-chips.d.ts +50 -0
- package/dist/app/canvas/state-chips.d.ts.map +1 -0
- package/dist/app/canvas/state-chips.js +40 -0
- package/dist/app/component-head/head-metrics.d.ts +35 -19
- package/dist/app/component-head/head-metrics.d.ts.map +1 -1
- package/dist/app/component-head/head-metrics.js +57 -27
- package/dist/app/component-head/pipe-facts.d.ts +9 -0
- package/dist/app/component-head/pipe-facts.d.ts.map +1 -0
- package/dist/app/component-head/pipe-facts.js +15 -0
- package/dist/app/component-head/prism-component-head.component.d.ts +20 -22
- package/dist/app/component-head/prism-component-head.component.d.ts.map +1 -1
- package/dist/app/component-head/prism-component-head.component.js +85 -96
- package/dist/app/component-head/prism-head-gauge.component.d.ts +8 -12
- package/dist/app/component-head/prism-head-gauge.component.d.ts.map +1 -1
- package/dist/app/component-head/prism-head-gauge.component.js +51 -67
- package/dist/app/component-head/prism-head-info.component.d.ts +14 -2
- package/dist/app/component-head/prism-head-info.component.d.ts.map +1 -1
- package/dist/app/component-head/prism-head-info.component.js +84 -20
- package/dist/app/component-head/prism-stat.component.d.ts +4 -5
- package/dist/app/component-head/prism-stat.component.d.ts.map +1 -1
- package/dist/app/component-head/prism-stat.component.js +16 -12
- package/dist/app/component-head/service-facts.d.ts +8 -0
- package/dist/app/component-head/service-facts.d.ts.map +1 -0
- package/dist/app/component-head/service-facts.js +11 -0
- package/dist/app/controls/boolean-control.component.js +2 -2
- package/dist/app/controls/json-control.component.js +2 -2
- package/dist/app/controls/union-control.component.js +4 -3
- package/dist/app/directives/resize-value.d.ts +1 -1
- package/dist/app/directives/resize-value.js +1 -1
- package/dist/app/discovery-manifest.d.ts +2 -2
- package/dist/app/discovery-manifest.d.ts.map +1 -1
- package/dist/app/discovery-manifest.js +15 -3
- package/dist/app/header/header-brand.d.ts +25 -0
- package/dist/app/header/header-brand.d.ts.map +1 -0
- package/dist/app/header/header-brand.js +10 -0
- package/dist/app/header/prism-header.component.d.ts +2 -2
- package/dist/app/header/prism-header.component.d.ts.map +1 -1
- package/dist/app/header/prism-header.component.js +73 -57
- package/dist/app/icons/icon-registry.d.ts.map +1 -1
- package/dist/app/icons/icon-registry.js +4 -1
- package/dist/app/index.d.ts +12 -0
- package/dist/app/index.d.ts.map +1 -1
- package/dist/app/index.js +12 -1
- package/dist/app/layout-menu/prism-layout-menu.component.d.ts +3 -0
- package/dist/app/layout-menu/prism-layout-menu.component.d.ts.map +1 -1
- package/dist/app/layout-menu/prism-layout-menu.component.js +72 -58
- package/dist/app/overview/open-in-playground.d.ts +19 -0
- package/dist/app/overview/open-in-playground.d.ts.map +1 -0
- package/dist/app/overview/open-in-playground.js +25 -0
- package/dist/app/overview/overview-matrix.d.ts +85 -0
- package/dist/app/overview/overview-matrix.d.ts.map +1 -0
- package/dist/app/overview/overview-matrix.js +98 -0
- package/dist/app/overview/overview-visibility.d.ts +10 -2
- package/dist/app/overview/overview-visibility.d.ts.map +1 -1
- package/dist/app/overview/overview-visibility.js +14 -3
- package/dist/app/overview/prism-overview-cell.component.d.ts +27 -2
- package/dist/app/overview/prism-overview-cell.component.d.ts.map +1 -1
- package/dist/app/overview/prism-overview-cell.component.js +145 -28
- package/dist/app/overview/prism-overview-matrix.component.d.ts +29 -0
- package/dist/app/overview/prism-overview-matrix.component.d.ts.map +1 -0
- package/dist/app/overview/prism-overview-matrix.component.js +155 -0
- package/dist/app/overview/prism-overview.component.d.ts +4 -0
- package/dist/app/overview/prism-overview.component.d.ts.map +1 -1
- package/dist/app/overview/prism-overview.component.js +37 -14
- package/dist/app/page-renderer/prism-page-renderer.component.js +2 -2
- package/dist/app/panels/a11y/a11y-core.plugin.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-core.plugin.js +0 -1
- package/dist/app/panels/a11y/a11y-header-badge.component.d.ts +1 -4
- package/dist/app/panels/a11y/a11y-header-badge.component.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-header-badge.component.js +8 -19
- package/dist/app/panels/a11y/a11y-keyboard-overlay.component.js +2 -2
- package/dist/app/panels/a11y/a11y-overlay-host.component.d.ts +1 -0
- package/dist/app/panels/a11y/a11y-overlay-host.component.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-overlay-host.component.js +4 -3
- package/dist/app/panels/a11y/a11y-panel.component.d.ts +4 -1
- package/dist/app/panels/a11y/a11y-panel.component.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-panel.component.js +32 -54
- package/dist/app/panels/a11y/a11y-score.component.d.ts +8 -3
- package/dist/app/panels/a11y/a11y-score.component.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-score.component.js +19 -35
- package/dist/app/panels/a11y/a11y-sr-overlay.component.js +2 -2
- package/dist/app/panels/a11y/a11y-sr.component.js +2 -2
- package/dist/app/panels/a11y/a11y-summary.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-summary.js +8 -1
- package/dist/app/panels/a11y/a11y-tree.component.js +2 -2
- package/dist/app/panels/a11y/a11y-violations.component.d.ts +23 -2
- package/dist/app/panels/a11y/a11y-violations.component.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-violations.component.js +104 -89
- package/dist/app/panels/a11y/severity.d.ts +9 -0
- package/dist/app/panels/a11y/severity.d.ts.map +1 -0
- package/dist/app/panels/a11y/severity.js +12 -0
- package/dist/app/panels/controls/controls-plugin.d.ts.map +1 -1
- package/dist/app/panels/controls/controls-plugin.js +1 -2
- package/dist/app/panels/controls/non-editable-input-types.d.ts +9 -1
- package/dist/app/panels/controls/non-editable-input-types.d.ts.map +1 -1
- package/dist/app/panels/controls/non-editable-input-types.js +18 -0
- package/dist/app/panels/controls/prism-controls-panel.component.d.ts +2 -1
- package/dist/app/panels/controls/prism-controls-panel.component.d.ts.map +1 -1
- package/dist/app/panels/controls/prism-controls-panel.component.js +77 -59
- package/dist/app/panels/events/events-plugin.d.ts.map +1 -1
- package/dist/app/panels/events/events-plugin.js +1 -2
- package/dist/app/panels/events/prism-events-panel.component.d.ts +2 -0
- package/dist/app/panels/events/prism-events-panel.component.d.ts.map +1 -1
- package/dist/app/panels/events/prism-events-panel.component.js +20 -7
- package/dist/app/panels/events/prism-json-node.utils.d.ts +6 -0
- package/dist/app/panels/events/prism-json-node.utils.d.ts.map +1 -1
- package/dist/app/panels/events/prism-json-node.utils.js +8 -0
- package/dist/app/panels/panel-host/addon-panels.d.ts +11 -0
- package/dist/app/panels/panel-host/addon-panels.d.ts.map +1 -0
- package/dist/app/panels/panel-host/addon-panels.js +12 -0
- package/dist/app/panels/panel-host/panel-badge.d.ts +22 -0
- package/dist/app/panels/panel-host/panel-badge.d.ts.map +1 -1
- package/dist/app/panels/panel-host/panel-badge.js +56 -11
- package/dist/app/panels/panel-host/prism-panel-host.component.d.ts +4 -1
- package/dist/app/panels/panel-host/prism-panel-host.component.d.ts.map +1 -1
- package/dist/app/panels/panel-host/prism-panel-host.component.js +36 -70
- package/dist/app/pseudo/pseudo-state-marker.d.ts +32 -10
- package/dist/app/pseudo/pseudo-state-marker.d.ts.map +1 -1
- package/dist/app/pseudo/pseudo-state-marker.js +83 -67
- package/dist/app/pseudo/pseudo-targets.d.ts +11 -0
- package/dist/app/pseudo/pseudo-targets.d.ts.map +1 -0
- package/dist/app/pseudo/pseudo-targets.js +46 -0
- package/dist/app/pseudo/state-fit.d.ts +28 -0
- package/dist/app/pseudo/state-fit.d.ts.map +1 -0
- package/dist/app/pseudo/state-fit.js +97 -0
- package/dist/app/renderer/composition.d.ts +20 -0
- package/dist/app/renderer/composition.d.ts.map +1 -0
- package/dist/app/renderer/composition.js +26 -0
- package/dist/app/renderer/input-bindings.d.ts +28 -0
- package/dist/app/renderer/input-bindings.d.ts.map +1 -0
- package/dist/app/renderer/input-bindings.js +42 -0
- package/dist/app/renderer/known-inputs.d.ts +8 -1
- package/dist/app/renderer/known-inputs.d.ts.map +1 -1
- package/dist/app/renderer/known-inputs.js +13 -5
- package/dist/app/renderer/prism-renderer.component.d.ts +18 -4
- package/dist/app/renderer/prism-renderer.component.d.ts.map +1 -1
- package/dist/app/renderer/prism-renderer.component.js +78 -44
- package/dist/app/renderer/projectable-content.d.ts +8 -1
- package/dist/app/renderer/projectable-content.d.ts.map +1 -1
- package/dist/app/renderer/projectable-content.js +40 -29
- package/dist/app/renderer/rendered-key.d.ts +20 -6
- package/dist/app/renderer/rendered-key.d.ts.map +1 -1
- package/dist/app/renderer/rendered-key.js +25 -8
- package/dist/app/renderer/snippet-generator.d.ts +14 -2
- package/dist/app/renderer/snippet-generator.d.ts.map +1 -1
- package/dist/app/renderer/snippet-generator.js +138 -81
- package/dist/app/services/navigation-item.d.ts +10 -0
- package/dist/app/services/navigation-item.d.ts.map +1 -0
- package/dist/app/services/navigation-item.js +20 -0
- package/dist/app/services/navigation-item.types.d.ts +8 -0
- package/dist/app/services/navigation-item.types.d.ts.map +1 -1
- package/dist/app/services/prism-layout.service.d.ts +12 -0
- package/dist/app/services/prism-layout.service.d.ts.map +1 -1
- package/dist/app/services/prism-layout.service.js +17 -7
- package/dist/app/services/prism-manifest.service.d.ts +4 -0
- package/dist/app/services/prism-manifest.service.d.ts.map +1 -1
- package/dist/app/services/prism-manifest.service.js +4 -0
- package/dist/app/services/prism-navigation.service.d.ts +12 -0
- package/dist/app/services/prism-navigation.service.d.ts.map +1 -1
- package/dist/app/services/prism-navigation.service.js +85 -19
- package/dist/app/services/prism-panel.service.d.ts +7 -3
- package/dist/app/services/prism-panel.service.d.ts.map +1 -1
- package/dist/app/services/prism-panel.service.js +13 -4
- package/dist/app/services/prism-pseudo-state.service.d.ts +59 -14
- package/dist/app/services/prism-pseudo-state.service.d.ts.map +1 -1
- package/dist/app/services/prism-pseudo-state.service.js +86 -29
- package/dist/app/services/prism-renderer.service.d.ts +23 -0
- package/dist/app/services/prism-renderer.service.d.ts.map +1 -1
- package/dist/app/services/prism-renderer.service.js +77 -8
- package/dist/app/services/prism-search.service.d.ts +4 -0
- package/dist/app/services/prism-search.service.d.ts.map +1 -1
- package/dist/app/services/prism-search.service.js +29 -6
- package/dist/app/services/prism-theme.service.d.ts +11 -3
- package/dist/app/services/prism-theme.service.d.ts.map +1 -1
- package/dist/app/services/prism-theme.service.js +27 -19
- package/dist/app/services/prism-url-state.service.d.ts.map +1 -1
- package/dist/app/services/prism-url-state.service.js +81 -12
- package/dist/app/shared/badge.types.d.ts +7 -0
- package/dist/app/shared/badge.types.d.ts.map +1 -0
- package/dist/app/shared/badge.types.js +9 -0
- package/dist/app/shared/brand-mark.d.ts +35 -0
- package/dist/app/shared/brand-mark.d.ts.map +1 -0
- package/dist/app/shared/brand-mark.js +52 -0
- package/dist/app/shared/metric-bar.d.ts +6 -0
- package/dist/app/shared/metric-bar.d.ts.map +1 -0
- package/dist/app/shared/metric-bar.js +7 -0
- package/dist/app/shared/prism-badge.component.d.ts +21 -0
- package/dist/app/shared/prism-badge.component.d.ts.map +1 -0
- package/dist/app/shared/prism-badge.component.js +68 -0
- package/dist/app/shared/prism-button.component.d.ts +12 -0
- package/dist/app/shared/prism-button.component.d.ts.map +1 -0
- package/dist/app/shared/prism-button.component.js +28 -0
- package/dist/app/shared/prism-icon-button.component.d.ts +17 -0
- package/dist/app/shared/prism-icon-button.component.d.ts.map +1 -0
- package/dist/app/shared/prism-icon-button.component.js +37 -0
- package/dist/app/shared/prism-list-row.component.d.ts +17 -0
- package/dist/app/shared/prism-list-row.component.d.ts.map +1 -0
- package/dist/app/shared/prism-list-row.component.js +57 -0
- package/dist/app/shared/prism-logo.component.d.ts +24 -0
- package/dist/app/shared/prism-logo.component.d.ts.map +1 -0
- package/dist/app/shared/prism-logo.component.js +77 -0
- package/dist/app/shared/prism-metric-badge.component.d.ts +9 -4
- package/dist/app/shared/prism-metric-badge.component.d.ts.map +1 -1
- package/dist/app/shared/prism-metric-badge.component.js +33 -12
- package/dist/app/shared/prism-metric-card.component.d.ts +30 -0
- package/dist/app/shared/prism-metric-card.component.d.ts.map +1 -0
- package/dist/app/shared/prism-metric-card.component.js +111 -0
- package/dist/app/shared/prism-panel-toolbar.component.d.ts +13 -0
- package/dist/app/shared/prism-panel-toolbar.component.d.ts.map +1 -0
- package/dist/app/shared/prism-panel-toolbar.component.js +28 -0
- package/dist/app/shared/prism-segmented.component.d.ts +25 -0
- package/dist/app/shared/prism-segmented.component.d.ts.map +1 -0
- package/dist/app/shared/prism-segmented.component.js +77 -0
- package/dist/app/shared/prism-tabs.component.d.ts +44 -0
- package/dist/app/shared/prism-tabs.component.d.ts.map +1 -0
- package/dist/app/shared/prism-tabs.component.js +134 -0
- package/dist/app/shared/roving-focus.d.ts +13 -0
- package/dist/app/shared/roving-focus.d.ts.map +1 -0
- package/dist/app/shared/roving-focus.js +34 -0
- package/dist/app/shell/prism-shell.component.d.ts +13 -0
- package/dist/app/shell/prism-shell.component.d.ts.map +1 -1
- package/dist/app/shell/prism-shell.component.js +57 -28
- package/dist/app/shell/should-select-first.d.ts +17 -0
- package/dist/app/shell/should-select-first.d.ts.map +1 -0
- package/dist/app/shell/should-select-first.js +13 -0
- package/dist/app/sidebar/navigation-decorations.d.ts +23 -1
- package/dist/app/sidebar/navigation-decorations.d.ts.map +1 -1
- package/dist/app/sidebar/navigation-decorations.js +33 -2
- package/dist/app/sidebar/prism-sidebar.component.d.ts +5 -15
- package/dist/app/sidebar/prism-sidebar.component.d.ts.map +1 -1
- package/dist/app/sidebar/prism-sidebar.component.js +89 -77
- package/dist/app/theme/deprecated-tokens.d.ts +15 -0
- package/dist/app/theme/deprecated-tokens.d.ts.map +1 -0
- package/dist/app/theme/deprecated-tokens.js +22 -0
- package/dist/app/theme/favicon.d.ts +3 -0
- package/dist/app/theme/favicon.d.ts.map +1 -0
- package/dist/app/theme/favicon.js +3 -0
- package/dist/app/theme/prism-default-theme.d.ts.map +1 -1
- package/dist/app/theme/prism-default-theme.js +122 -66
- package/dist/app/theme/resolve-theme-tokens.d.ts +29 -0
- package/dist/app/theme/resolve-theme-tokens.d.ts.map +1 -0
- package/dist/app/theme/resolve-theme-tokens.js +43 -0
- package/dist/app/variant-ribbon/prism-variant-ribbon.component.d.ts +4 -7
- package/dist/app/variant-ribbon/prism-variant-ribbon.component.d.ts.map +1 -1
- package/dist/app/variant-ribbon/prism-variant-ribbon.component.js +31 -69
- package/dist/app/view-tab-bar/next-view-id.d.ts +7 -1
- package/dist/app/view-tab-bar/next-view-id.d.ts.map +1 -1
- package/dist/app/view-tab-bar/next-view-id.js +9 -1
- package/dist/app/view-tab-bar/panel-inputs.d.ts +28 -0
- package/dist/app/view-tab-bar/panel-inputs.d.ts.map +1 -0
- package/dist/app/view-tab-bar/panel-inputs.js +41 -0
- package/dist/app/view-tab-bar/prism-view-panel-host.component.d.ts +2 -3
- package/dist/app/view-tab-bar/prism-view-panel-host.component.d.ts.map +1 -1
- package/dist/app/view-tab-bar/prism-view-panel-host.component.js +9 -9
- package/dist/app/view-tab-bar/prism-view-tab-bar.component.d.ts +6 -0
- package/dist/app/view-tab-bar/prism-view-tab-bar.component.d.ts.map +1 -1
- package/dist/app/view-tab-bar/prism-view-tab-bar.component.js +22 -29
- package/dist/builder/config-loader/deprecated-options.d.ts +9 -0
- package/dist/builder/config-loader/deprecated-options.d.ts.map +1 -0
- package/dist/builder/config-loader/deprecated-options.js +34 -0
- package/dist/builder/manifest/composition-wrapper.generator.d.ts +14 -0
- package/dist/builder/manifest/composition-wrapper.generator.d.ts.map +1 -0
- package/dist/builder/manifest/composition-wrapper.generator.js +66 -0
- package/dist/builder/manifest/host-parser.d.ts +2 -0
- package/dist/builder/manifest/host-parser.d.ts.map +1 -1
- package/dist/builder/manifest/host-parser.js +9 -4
- package/dist/builder/manifest/manifest-imports.d.ts +34 -0
- package/dist/builder/manifest/manifest-imports.d.ts.map +1 -0
- package/dist/builder/manifest/manifest-imports.js +91 -0
- package/dist/builder/manifest/runtime-manifest.generator.d.ts +13 -0
- package/dist/builder/manifest/runtime-manifest.generator.d.ts.map +1 -1
- package/dist/builder/manifest/runtime-manifest.generator.js +137 -65
- package/dist/builder/manifest/selector-element.d.ts +16 -0
- package/dist/builder/manifest/selector-element.d.ts.map +1 -0
- package/dist/builder/manifest/selector-element.js +46 -0
- package/dist/builder/manifest/template-literal.d.ts +3 -0
- package/dist/builder/manifest/template-literal.d.ts.map +1 -0
- package/dist/builder/manifest/template-literal.js +4 -0
- package/dist/builder/plugin-runner/plugin-runner.d.ts.map +1 -1
- package/dist/builder/plugin-runner/plugin-runner.js +29 -26
- package/dist/builder/scanner/api/angular-decorators.d.ts +84 -0
- package/dist/builder/scanner/api/angular-decorators.d.ts.map +1 -0
- package/dist/builder/scanner/api/angular-decorators.js +157 -0
- package/dist/builder/scanner/api/component-api.extractor.d.ts +13 -0
- package/dist/builder/scanner/api/component-api.extractor.d.ts.map +1 -0
- package/dist/builder/scanner/api/component-api.extractor.js +104 -0
- package/dist/builder/scanner/api/doc-tags.d.ts +13 -0
- package/dist/builder/scanner/api/doc-tags.d.ts.map +1 -0
- package/dist/builder/scanner/api/doc-tags.js +101 -0
- package/dist/builder/scanner/api/export-index.d.ts +18 -0
- package/dist/builder/scanner/api/export-index.d.ts.map +1 -0
- package/dist/builder/scanner/api/export-index.js +22 -0
- package/dist/builder/scanner/api/member.extractor.d.ts +90 -0
- package/dist/builder/scanner/api/member.extractor.d.ts.map +1 -0
- package/dist/builder/scanner/api/member.extractor.js +270 -0
- package/dist/builder/scanner/api/pipe-api.extractor.d.ts +12 -0
- package/dist/builder/scanner/api/pipe-api.extractor.d.ts.map +1 -0
- package/dist/builder/scanner/api/pipe-api.extractor.js +52 -0
- package/dist/builder/scanner/api/service-api.extractor.d.ts +14 -0
- package/dist/builder/scanner/api/service-api.extractor.d.ts.map +1 -0
- package/dist/builder/scanner/api/service-api.extractor.js +119 -0
- package/dist/builder/scanner/api/setup.reader.d.ts +26 -0
- package/dist/builder/scanner/api/setup.reader.d.ts.map +1 -0
- package/dist/builder/scanner/api/setup.reader.js +89 -0
- package/dist/builder/scanner/api/type-collector.d.ts +24 -0
- package/dist/builder/scanner/api/type-collector.d.ts.map +1 -0
- package/dist/builder/scanner/api/type-collector.js +211 -0
- package/dist/builder/scanner/ast-utils.d.ts +8 -0
- package/dist/builder/scanner/ast-utils.d.ts.map +1 -1
- package/dist/builder/scanner/ast-utils.js +37 -1
- package/dist/builder/scanner/class-hierarchy.d.ts +5 -3
- package/dist/builder/scanner/class-hierarchy.d.ts.map +1 -1
- package/dist/builder/scanner/class-hierarchy.js +12 -6
- package/dist/builder/scanner/component.scanner.d.ts +60 -6
- package/dist/builder/scanner/component.scanner.d.ts.map +1 -1
- package/dist/builder/scanner/component.scanner.js +229 -58
- package/dist/builder/scanner/composition/compose-template.d.ts +36 -0
- package/dist/builder/scanner/composition/compose-template.d.ts.map +1 -0
- package/dist/builder/scanner/composition/compose-template.js +187 -0
- package/dist/builder/scanner/composition/declarables.d.ts +54 -0
- package/dist/builder/scanner/composition/declarables.d.ts.map +1 -0
- package/dist/builder/scanner/composition/declarables.js +182 -0
- package/dist/builder/scanner/composition/match-declarables.d.ts +43 -0
- package/dist/builder/scanner/composition/match-declarables.d.ts.map +1 -0
- package/dist/builder/scanner/composition/match-declarables.js +131 -0
- package/dist/builder/scanner/composition/read-composition.d.ts +77 -0
- package/dist/builder/scanner/composition/read-composition.d.ts.map +1 -0
- package/dist/builder/scanner/composition/read-composition.js +302 -0
- package/dist/builder/scanner/composition/template-elements.d.ts +12 -0
- package/dist/builder/scanner/composition/template-elements.d.ts.map +1 -0
- package/dist/builder/scanner/composition/template-elements.js +41 -0
- package/dist/builder/scanner/entry-point-discovery.d.ts +5 -0
- package/dist/builder/scanner/entry-point-discovery.d.ts.map +1 -1
- package/dist/builder/scanner/entry-point-discovery.js +14 -0
- package/dist/builder/scanner/entry-point.scanner.d.ts +3 -1
- package/dist/builder/scanner/entry-point.scanner.d.ts.map +1 -1
- package/dist/builder/scanner/entry-point.scanner.js +7 -6
- package/dist/builder/scanner/index.d.ts +4 -0
- package/dist/builder/scanner/index.d.ts.map +1 -1
- package/dist/builder/scanner/index.js +2 -0
- package/dist/builder/scanner/input.extractor.d.ts +31 -2
- package/dist/builder/scanner/input.extractor.d.ts.map +1 -1
- package/dist/builder/scanner/input.extractor.js +73 -17
- package/dist/builder/scanner/pipe.scanner.d.ts +29 -0
- package/dist/builder/scanner/pipe.scanner.d.ts.map +1 -0
- package/dist/builder/scanner/pipe.scanner.js +65 -0
- package/dist/builder/scanner/pseudo-states.d.ts +1 -0
- package/dist/builder/scanner/pseudo-states.d.ts.map +1 -1
- package/dist/builder/scanner/pseudo-states.js +1 -1
- package/dist/builder/scanner/scanner.d.ts +27 -3
- package/dist/builder/scanner/scanner.d.ts.map +1 -1
- package/dist/builder/scanner/scanner.js +68 -24
- package/dist/builder/scanner/service/angular-decorators.d.ts +80 -0
- package/dist/builder/scanner/service/angular-decorators.d.ts.map +1 -0
- package/dist/builder/scanner/service/angular-decorators.js +154 -0
- package/dist/builder/scanner/service/doc-tags.d.ts +13 -0
- package/dist/builder/scanner/service/doc-tags.d.ts.map +1 -0
- package/dist/builder/scanner/service/doc-tags.js +97 -0
- package/dist/builder/scanner/service/export-index.d.ts +18 -0
- package/dist/builder/scanner/service/export-index.d.ts.map +1 -0
- package/dist/builder/scanner/service/export-index.js +22 -0
- package/dist/builder/scanner/service/member.extractor.d.ts +65 -0
- package/dist/builder/scanner/service/member.extractor.d.ts.map +1 -0
- package/dist/builder/scanner/service/member.extractor.js +216 -0
- package/dist/builder/scanner/service/pipe-api.extractor.d.ts +12 -0
- package/dist/builder/scanner/service/pipe-api.extractor.d.ts.map +1 -0
- package/dist/builder/scanner/service/pipe-api.extractor.js +72 -0
- package/dist/builder/scanner/service/service-api.extractor.d.ts +14 -0
- package/dist/builder/scanner/service/service-api.extractor.d.ts.map +1 -0
- package/dist/builder/scanner/service/service-api.extractor.js +119 -0
- package/dist/builder/scanner/service/setup.reader.d.ts +26 -0
- package/dist/builder/scanner/service/setup.reader.d.ts.map +1 -0
- package/dist/builder/scanner/service/setup.reader.js +89 -0
- package/dist/builder/scanner/service/type-collector.d.ts +23 -0
- package/dist/builder/scanner/service/type-collector.d.ts.map +1 -0
- package/dist/builder/scanner/service/type-collector.js +210 -0
- package/dist/builder/scanner/service.scanner.d.ts +26 -0
- package/dist/builder/scanner/service.scanner.d.ts.map +1 -0
- package/dist/builder/scanner/service.scanner.js +61 -0
- package/dist/builder/scanner/showcase-diagnostics.d.ts +60 -1
- package/dist/builder/scanner/showcase-diagnostics.d.ts.map +1 -1
- package/dist/builder/scanner/showcase-diagnostics.js +123 -10
- package/dist/builder/scanner/showcase-states.d.ts +17 -0
- package/dist/builder/scanner/showcase-states.d.ts.map +1 -0
- package/dist/builder/scanner/showcase-states.js +58 -0
- package/dist/builder/scanner/source-file-cache.d.ts +26 -0
- package/dist/builder/scanner/source-file-cache.d.ts.map +1 -0
- package/dist/builder/scanner/source-file-cache.js +60 -0
- package/dist/builder/shared/prism-pipeline.d.ts +6 -0
- package/dist/builder/shared/prism-pipeline.d.ts.map +1 -1
- package/dist/builder/shared/prism-pipeline.js +71 -18
- package/dist/decorator/index.d.ts +1 -1
- package/dist/decorator/index.d.ts.map +1 -1
- package/dist/decorator/showcase.types.d.ts +102 -9
- package/dist/decorator/showcase.types.d.ts.map +1 -1
- package/dist/plugin/index.d.ts +6 -1
- package/dist/plugin/index.d.ts.map +1 -1
- package/dist/plugin/index.js +4 -0
- package/dist/plugin/pipe.types.d.ts +36 -0
- package/dist/plugin/pipe.types.d.ts.map +1 -0
- package/dist/plugin/pipe.types.js +1 -0
- package/dist/plugin/plugin.types.d.ts +184 -8
- package/dist/plugin/plugin.types.d.ts.map +1 -1
- package/dist/plugin/service.types.d.ts +124 -0
- package/dist/plugin/service.types.d.ts.map +1 -0
- package/dist/plugin/service.types.js +1 -0
- package/dist/plugin/status.d.ts +27 -0
- package/dist/plugin/status.d.ts.map +1 -0
- package/dist/plugin/status.js +26 -0
- package/dist/shared/composition.d.ts +30 -0
- package/dist/shared/composition.d.ts.map +1 -0
- package/dist/shared/composition.js +29 -0
- package/dist/shared/pseudo-state.type.d.ts +2 -1
- package/dist/shared/pseudo-state.type.d.ts.map +1 -1
- package/dist/shared/void-elements.d.ts +3 -0
- package/dist/shared/void-elements.d.ts.map +1 -0
- package/dist/shared/void-elements.js +2 -0
- package/package.json +1 -1
- package/src/builder/build/schema.json +6 -6
- package/src/builder/serve/schema.json +6 -6
|
@@ -1,70 +1,125 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* The brand gradient from the 22.7 logo. One value in both themes: the
|
|
3
|
+
* wordmark sits on the navy header band in either, and the brand guide asks for
|
|
4
|
+
* an identical gradient across themes.
|
|
5
|
+
*/
|
|
6
|
+
const BRAND_GRADIENT = 'linear-gradient(90deg, #00CFEA 0%, #078BFA 38%, #244BFF 68%, #A20CF0 100%)';
|
|
7
|
+
/*
|
|
8
|
+
* Deprecated since 22.7.0, removed in 23.0.0: `--prism-spectrum`,
|
|
9
|
+
* `--prism-primary-from`, `--prism-primary-to` and the three `--prism-mark-*`
|
|
10
|
+
* roles. Core no longer reads them; they stay defined (the marks as aliases of
|
|
11
|
+
* the status colours) so a consuming stylesheet that does keeps working.
|
|
12
|
+
*/
|
|
13
|
+
const DEPRECATED_ALIASES = {
|
|
14
|
+
'--prism-mark-nominal': 'var(--prism-success)',
|
|
15
|
+
'--prism-mark-attention': 'var(--prism-warn)',
|
|
16
|
+
'--prism-mark-critical': 'var(--prism-danger)',
|
|
17
|
+
'--prism-spectrum': 'var(--prism-brand-gradient)',
|
|
18
|
+
'--prism-primary-from': '#2563eb',
|
|
19
|
+
'--prism-primary-to': '#00cfea'
|
|
20
|
+
};
|
|
1
21
|
export const PRISM_DARK_THEME = {
|
|
2
|
-
'--prism-code-tag': '#
|
|
3
|
-
'--prism-code-attr': '#
|
|
22
|
+
'--prism-code-tag': '#e879f9',
|
|
23
|
+
'--prism-code-attr': '#67e8f9',
|
|
4
24
|
'--prism-code-str': '#86efac',
|
|
5
|
-
'--prism-code-com': '#
|
|
6
|
-
'--prism-void': '#
|
|
7
|
-
'--prism-bg': '#
|
|
8
|
-
'--prism-bg-surface': '#
|
|
9
|
-
'--prism-bg-elevated': '#
|
|
10
|
-
'--prism-stage': '#
|
|
11
|
-
'--prism-stage-edge': 'rgba(255, 255, 255, 0.
|
|
12
|
-
'--prism-text': '#
|
|
13
|
-
'--prism-text-2': '#
|
|
14
|
-
'--prism-text-muted': '#
|
|
15
|
-
'--prism-text-ghost': '#
|
|
16
|
-
|
|
17
|
-
'--prism-primary
|
|
18
|
-
'--prism-primary-
|
|
19
|
-
'--prism-
|
|
20
|
-
'--prism-
|
|
21
|
-
|
|
22
|
-
'--prism-
|
|
23
|
-
'--prism-
|
|
24
|
-
'--prism-
|
|
25
|
-
'--prism-
|
|
26
|
-
'--prism-
|
|
27
|
-
'--prism-
|
|
28
|
-
'--prism-
|
|
29
|
-
'--prism-
|
|
30
|
-
'--prism-
|
|
31
|
-
'--prism-
|
|
25
|
+
'--prism-code-com': '#7c8ba1',
|
|
26
|
+
'--prism-void': '#050911',
|
|
27
|
+
'--prism-bg': '#080d19',
|
|
28
|
+
'--prism-bg-surface': '#111827',
|
|
29
|
+
'--prism-bg-elevated': '#1a2335',
|
|
30
|
+
'--prism-stage': '#0e1524',
|
|
31
|
+
'--prism-stage-edge': 'rgba(255, 255, 255, 0.08)',
|
|
32
|
+
'--prism-text': '#f1f5f9',
|
|
33
|
+
'--prism-text-2': '#cbd5e1',
|
|
34
|
+
'--prism-text-muted': '#94a3b8',
|
|
35
|
+
'--prism-text-ghost': '#64748b',
|
|
36
|
+
/* Text and indicator blue; brand blue #2563eb only reaches 3–3.9:1 as text here. */
|
|
37
|
+
'--prism-primary': '#60a5fa',
|
|
38
|
+
'--prism-primary-fill': '#2563eb',
|
|
39
|
+
'--prism-primary-fill-hover': '#1d4ed8',
|
|
40
|
+
'--prism-on-primary': '#ffffff',
|
|
41
|
+
/* The active switch track: the blue half of the brand light, ending on the fill blue so it holds 3:1 on these surfaces. */
|
|
42
|
+
'--prism-toggle-on': 'linear-gradient(90deg, #078bfa, #2563eb)',
|
|
43
|
+
'--prism-link': 'var(--prism-primary)',
|
|
44
|
+
'--prism-accent': '#a78bfa',
|
|
45
|
+
'--prism-border': '#1f2b3e',
|
|
46
|
+
'--prism-border-strong': '#64748b',
|
|
47
|
+
'--prism-glow': 'rgba(37, 99, 235, 0.18)',
|
|
48
|
+
'--prism-glow-strong': 'rgba(37, 99, 235, 0.35)',
|
|
49
|
+
'--prism-input-bg': 'rgba(148, 163, 184, 0.08)',
|
|
50
|
+
'--prism-dot': 'rgba(96, 165, 250, 0.16)',
|
|
51
|
+
'--prism-success': '#0ae2cb',
|
|
52
|
+
'--prism-warn': '#ffb984',
|
|
53
|
+
'--prism-danger': '#fe6ba6',
|
|
54
|
+
'--prism-success-bg': 'color-mix(in srgb, var(--prism-success) 16%, transparent)',
|
|
55
|
+
'--prism-warn-bg': 'color-mix(in srgb, var(--prism-warn) 16%, transparent)',
|
|
56
|
+
'--prism-danger-bg': 'color-mix(in srgb, var(--prism-danger) 16%, transparent)',
|
|
57
|
+
'--prism-primary-bg': 'color-mix(in srgb, var(--prism-primary) 16%, transparent)',
|
|
58
|
+
'--prism-brand-gradient': BRAND_GRADIENT,
|
|
59
|
+
'--prism-brand-ink': 'var(--prism-brand-gradient)',
|
|
60
|
+
'--prism-brand-glow': 'radial-gradient(closest-side at 22% 55%, rgba(0, 207, 234, 0.22), transparent), radial-gradient(closest-side at 55% 50%, rgba(36, 75, 255, 0.2), transparent), radial-gradient(closest-side at 85% 50%, rgba(162, 12, 240, 0.18), transparent)',
|
|
61
|
+
'--prism-facet-cyan': '#22d3ee',
|
|
62
|
+
'--prism-facet-blue': '#60a5fa',
|
|
63
|
+
'--prism-facet-violet': '#a78bfa',
|
|
64
|
+
'--prism-facet-magenta': '#e879f9',
|
|
65
|
+
'--prism-shadow-sm': '0 1px 2px rgb(0 0 0 / 35%)',
|
|
66
|
+
'--prism-shadow-md': '0 8px 28px -10px rgb(0 0 0 / 65%)',
|
|
32
67
|
'--prism-measure': '#f632ff',
|
|
33
|
-
|
|
68
|
+
...DEPRECATED_ALIASES
|
|
34
69
|
};
|
|
35
70
|
export const PRISM_LIGHT_THEME = {
|
|
36
|
-
'--prism-code-tag': '#
|
|
37
|
-
'--prism-code-attr': '#
|
|
38
|
-
'--prism-code-str': '#
|
|
39
|
-
'--prism-code-com': '#
|
|
40
|
-
'--prism-void': '#
|
|
41
|
-
'--prism-bg': '#
|
|
42
|
-
'--prism-bg-surface': '#
|
|
71
|
+
'--prism-code-tag': '#a21caf',
|
|
72
|
+
'--prism-code-attr': '#0e7490',
|
|
73
|
+
'--prism-code-str': '#127a3a',
|
|
74
|
+
'--prism-code-com': '#5b6b80',
|
|
75
|
+
'--prism-void': '#eef2f7',
|
|
76
|
+
'--prism-bg': '#f1f5f9',
|
|
77
|
+
'--prism-bg-surface': '#ffffff',
|
|
43
78
|
'--prism-bg-elevated': '#ffffff',
|
|
44
|
-
'--prism-stage': '#
|
|
45
|
-
'--prism-stage-edge': 'rgba(
|
|
46
|
-
'--prism-text': '#
|
|
47
|
-
'--prism-text-2': '#
|
|
48
|
-
'--prism-text-muted': '#
|
|
49
|
-
'--prism-text-ghost': '#
|
|
50
|
-
|
|
51
|
-
'--prism-primary
|
|
52
|
-
'--prism-primary-
|
|
53
|
-
'--prism-
|
|
54
|
-
'--prism-
|
|
55
|
-
|
|
56
|
-
'--prism-
|
|
57
|
-
'--prism-
|
|
58
|
-
'--prism-
|
|
59
|
-
'--prism-
|
|
60
|
-
'--prism-
|
|
61
|
-
'--prism-
|
|
62
|
-
'--prism-
|
|
63
|
-
'--prism-
|
|
64
|
-
'--prism-
|
|
65
|
-
|
|
79
|
+
'--prism-stage': '#fafbfd',
|
|
80
|
+
'--prism-stage-edge': 'rgba(15, 23, 42, 0.10)',
|
|
81
|
+
'--prism-text': '#0f172a',
|
|
82
|
+
'--prism-text-2': '#334155',
|
|
83
|
+
'--prism-text-muted': '#5b6b80',
|
|
84
|
+
'--prism-text-ghost': '#94a3b8',
|
|
85
|
+
/* Brand blue as fill; the text role takes its hover shade, which holds on tints too. */
|
|
86
|
+
'--prism-primary': '#1d4ed8',
|
|
87
|
+
'--prism-primary-fill': '#2563eb',
|
|
88
|
+
'--prism-primary-fill-hover': '#1d4ed8',
|
|
89
|
+
'--prism-on-primary': '#ffffff',
|
|
90
|
+
/* The active switch track: the blue half of the brand light. */
|
|
91
|
+
'--prism-toggle-on': 'linear-gradient(90deg, #078bfa, #244bff)',
|
|
92
|
+
'--prism-link': 'var(--prism-primary)',
|
|
93
|
+
'--prism-accent': '#7c3aed',
|
|
94
|
+
'--prism-border': '#e2e8f0',
|
|
95
|
+
'--prism-border-strong': '#7b8aa0',
|
|
96
|
+
'--prism-glow': 'rgba(37, 99, 235, 0.12)',
|
|
97
|
+
'--prism-glow-strong': 'rgba(37, 99, 235, 0.25)',
|
|
98
|
+
'--prism-input-bg': 'rgba(15, 23, 42, 0.04)',
|
|
99
|
+
'--prism-dot': 'rgba(37, 99, 235, 0.14)',
|
|
100
|
+
/*
|
|
101
|
+
* Dark text on a tint taken from a vivid shade of the same hue: tinting the
|
|
102
|
+
* dark text colour itself reads olive and wine-red.
|
|
103
|
+
*/
|
|
104
|
+
'--prism-success': '#06776a',
|
|
105
|
+
'--prism-warn': '#a05602',
|
|
106
|
+
'--prism-danger': '#8e024d',
|
|
107
|
+
'--prism-success-bg': 'color-mix(in srgb, #0edbc5 14%, transparent)',
|
|
108
|
+
'--prism-warn-bg': 'color-mix(in srgb, #ffa65f 14%, transparent)',
|
|
109
|
+
'--prism-danger-bg': 'color-mix(in srgb, #ff7cad 14%, transparent)',
|
|
110
|
+
'--prism-primary-bg': 'color-mix(in srgb, var(--prism-primary-fill) 10%, transparent)',
|
|
111
|
+
'--prism-brand-gradient': BRAND_GRADIENT,
|
|
112
|
+
/* The same sequence in deeper steps: #00cfea is 1.8:1 on this chrome, an indicator needs 3:1. */
|
|
113
|
+
'--prism-brand-ink': 'linear-gradient(90deg, #0891b2 0%, #2563eb 38%, #6d28d9 68%, #a20cf0 100%)',
|
|
114
|
+
'--prism-brand-glow': 'radial-gradient(closest-side at 22% 55%, rgba(0, 207, 234, 0.2), transparent), radial-gradient(closest-side at 55% 50%, rgba(36, 75, 255, 0.14), transparent), radial-gradient(closest-side at 85% 50%, rgba(162, 12, 240, 0.14), transparent)',
|
|
115
|
+
'--prism-facet-cyan': '#0891b2',
|
|
116
|
+
'--prism-facet-blue': '#2563eb',
|
|
117
|
+
'--prism-facet-violet': '#7c3aed',
|
|
118
|
+
'--prism-facet-magenta': '#c026d3',
|
|
119
|
+
'--prism-shadow-sm': '0 1px 2px rgb(15 23 42 / 12%)',
|
|
120
|
+
'--prism-shadow-md': '0 10px 30px -12px rgb(15 23 42 / 28%), 0 2px 6px -2px rgb(15 23 42 / 10%)',
|
|
66
121
|
'--prism-measure': '#ca00c1',
|
|
67
|
-
|
|
122
|
+
...DEPRECATED_ALIASES
|
|
68
123
|
};
|
|
69
124
|
export const PRISM_BASE_TOKENS = {
|
|
70
125
|
'--font-sans': "'Inter', system-ui, sans-serif",
|
|
@@ -91,13 +146,14 @@ export const PRISM_BASE_TOKENS = {
|
|
|
91
146
|
'--dur-base': '0.2s',
|
|
92
147
|
'--dur-slow': '0.3s',
|
|
93
148
|
/**
|
|
94
|
-
* Chrome density.
|
|
95
|
-
*
|
|
149
|
+
* Chrome density. A consuming app compacts or loosens the entire interface
|
|
150
|
+
* with one token in ng-prism.config.ts:
|
|
96
151
|
*
|
|
97
|
-
*
|
|
152
|
+
* theme: { '--density': '0.8' }
|
|
98
153
|
*
|
|
99
|
-
*
|
|
100
|
-
*
|
|
154
|
+
* The band heights below resolve it on <html>, where every token is set,
|
|
155
|
+
* so a --density on a descendant such as prism-shell doesn't reach them.
|
|
156
|
+
* There is no signal, service or menu behind this.
|
|
101
157
|
*/
|
|
102
158
|
'--density': '1',
|
|
103
159
|
'--band-header': 'calc(40px * var(--density))',
|
|
@@ -106,7 +162,7 @@ export const PRISM_BASE_TOKENS = {
|
|
|
106
162
|
'--band-tabs': 'calc(34px * var(--density))',
|
|
107
163
|
'--prism-void-light': '#f7f5fc',
|
|
108
164
|
'--prism-void-dark': '#07050f',
|
|
109
|
-
'--prism-text-light': '#
|
|
165
|
+
'--prism-text-light': '#f1f5f9',
|
|
110
166
|
/**
|
|
111
167
|
* Kept as an alias rather than removed: it is exported through
|
|
112
168
|
* PRISM_BASE_TOKENS, so a consuming stylesheet may reference it even though
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/** The three theme options of `NgPrismConfig`, as the theme service receives them. */
|
|
2
|
+
export interface ThemeOverrides {
|
|
3
|
+
theme?: Record<string, string>;
|
|
4
|
+
darkTheme?: Record<string, string>;
|
|
5
|
+
lightTheme?: Record<string, string>;
|
|
6
|
+
}
|
|
7
|
+
export interface ResolvedTheme {
|
|
8
|
+
/** Every token for one mode, ready to be set as custom properties. */
|
|
9
|
+
tokens: Record<string, string>;
|
|
10
|
+
/** Deprecated tokens the user overrode, so the caller can warn once about each. */
|
|
11
|
+
deprecatedOverrides: string[];
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* All tokens for one mode: base tokens, the mode's theme, the user's
|
|
15
|
+
* mode-specific overrides, then the user's `theme` overrides, which win.
|
|
16
|
+
*
|
|
17
|
+
* Some overrides are carried further than the key they name. A `--prism-mark-*`
|
|
18
|
+
* override lands on its successor unless that one is overridden too. An
|
|
19
|
+
* override of `--prism-primary` pulls `--prism-primary-fill`, its hover and the
|
|
20
|
+
* indicator ink (`--prism-brand-ink`, the tab and sidebar strokes) along: since
|
|
21
|
+
* 22.7 those read their own tokens, and a user who recolours the primary would
|
|
22
|
+
* otherwise get blue buttons and gradient tabs next to links in their colour.
|
|
23
|
+
* The active toggle track follows the fill, whether the fill was overridden
|
|
24
|
+
* itself or came along with the primary. Whatever the user sets explicitly wins.
|
|
25
|
+
*
|
|
26
|
+
* Pure, so the header can ask for the dark set while the app runs light.
|
|
27
|
+
*/
|
|
28
|
+
export declare function resolveThemeTokens(mode: 'dark' | 'light', overrides: ThemeOverrides): ResolvedTheme;
|
|
29
|
+
//# sourceMappingURL=resolve-theme-tokens.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolve-theme-tokens.d.ts","sourceRoot":"","sources":["../../../src/app/theme/resolve-theme-tokens.ts"],"names":[],"mappings":"AAGA,sFAAsF;AACtF,MAAM,WAAW,cAAc;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACvC;AAED,MAAM,WAAW,aAAa;IAC1B,sEAAsE;IACtE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,mFAAmF;IACnF,mBAAmB,EAAE,MAAM,EAAE,CAAC;CACjC;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,EAAE,SAAS,EAAE,cAAc,GAAG,aAAa,CAyBnG"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { DEPRECATED_THEME_TOKENS } from './deprecated-tokens.js';
|
|
2
|
+
import { PRISM_BASE_TOKENS, PRISM_DARK_THEME, PRISM_LIGHT_THEME } from './prism-default-theme.js';
|
|
3
|
+
/**
|
|
4
|
+
* All tokens for one mode: base tokens, the mode's theme, the user's
|
|
5
|
+
* mode-specific overrides, then the user's `theme` overrides, which win.
|
|
6
|
+
*
|
|
7
|
+
* Some overrides are carried further than the key they name. A `--prism-mark-*`
|
|
8
|
+
* override lands on its successor unless that one is overridden too. An
|
|
9
|
+
* override of `--prism-primary` pulls `--prism-primary-fill`, its hover and the
|
|
10
|
+
* indicator ink (`--prism-brand-ink`, the tab and sidebar strokes) along: since
|
|
11
|
+
* 22.7 those read their own tokens, and a user who recolours the primary would
|
|
12
|
+
* otherwise get blue buttons and gradient tabs next to links in their colour.
|
|
13
|
+
* The active toggle track follows the fill, whether the fill was overridden
|
|
14
|
+
* itself or came along with the primary. Whatever the user sets explicitly wins.
|
|
15
|
+
*
|
|
16
|
+
* Pure, so the header can ask for the dark set while the app runs light.
|
|
17
|
+
*/
|
|
18
|
+
export function resolveThemeTokens(mode, overrides) {
|
|
19
|
+
const modeTheme = mode === 'dark' ? PRISM_DARK_THEME : PRISM_LIGHT_THEME;
|
|
20
|
+
const modeOverrides = (mode === 'dark' ? overrides.darkTheme : overrides.lightTheme) ?? {};
|
|
21
|
+
const user = { ...modeOverrides, ...overrides.theme };
|
|
22
|
+
const tokens = { ...PRISM_BASE_TOKENS, ...modeTheme, ...user };
|
|
23
|
+
const deprecatedOverrides = [];
|
|
24
|
+
// Core reads only the successors, so a carried token's override lands on its
|
|
25
|
+
// successor to keep working until the token is removed.
|
|
26
|
+
for (const [token, { successor, carried }] of Object.entries(DEPRECATED_THEME_TOKENS)) {
|
|
27
|
+
if (!(token in user))
|
|
28
|
+
continue;
|
|
29
|
+
deprecatedOverrides.push(token);
|
|
30
|
+
if (carried && !(successor in user))
|
|
31
|
+
tokens[successor] = user[token];
|
|
32
|
+
}
|
|
33
|
+
if ('--prism-primary' in user) {
|
|
34
|
+
for (const role of ['--prism-primary-fill', '--prism-primary-fill-hover', '--prism-brand-ink']) {
|
|
35
|
+
if (!(role in user))
|
|
36
|
+
tokens[role] = user['--prism-primary'];
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
if (('--prism-primary' in user || '--prism-primary-fill' in user) && !('--prism-toggle-on' in user)) {
|
|
40
|
+
tokens['--prism-toggle-on'] = tokens['--prism-primary-fill'];
|
|
41
|
+
}
|
|
42
|
+
return { tokens, deprecatedOverrides };
|
|
43
|
+
}
|
|
@@ -1,16 +1,13 @@
|
|
|
1
1
|
import { PrismRendererService } from '../services/prism-renderer.service.js';
|
|
2
|
+
import { type PrismTabItem } from '../shared/prism-tabs.component.js';
|
|
2
3
|
import * as i0 from "@angular/core";
|
|
3
4
|
export declare class PrismVariantRibbonComponent {
|
|
4
5
|
private readonly navigationService;
|
|
5
6
|
protected readonly rendererService: PrismRendererService;
|
|
6
|
-
private readonly tabsContainer;
|
|
7
|
-
private readonly tabButtons;
|
|
8
7
|
protected readonly variants: import("@angular/core").Signal<import("../../index.js").Variant<unknown>[]>;
|
|
9
|
-
|
|
10
|
-
protected
|
|
11
|
-
|
|
12
|
-
n: number;
|
|
13
|
-
};
|
|
8
|
+
/** One tab per variant, keyed by index: names need not be unique. */
|
|
9
|
+
protected readonly tabItems: import("@angular/core").Signal<PrismTabItem[]>;
|
|
10
|
+
protected select(id: string | null): void;
|
|
14
11
|
protected prev(): void;
|
|
15
12
|
protected next(): void;
|
|
16
13
|
static ɵfac: i0.ɵɵFactoryDeclaration<PrismVariantRibbonComponent, never>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prism-variant-ribbon.component.d.ts","sourceRoot":"","sources":["../../../src/app/variant-ribbon/prism-variant-ribbon.component.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;;
|
|
1
|
+
{"version":3,"file":"prism-variant-ribbon.component.d.ts","sourceRoot":"","sources":["../../../src/app/variant-ribbon/prism-variant-ribbon.component.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAE7E,OAAO,EAAE,KAAK,YAAY,EAAsB,MAAM,mCAAmC,CAAC;;AAE1F,qBAQa,2BAA2B;IACpC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAkC;IACpE,SAAS,CAAC,QAAQ,CAAC,eAAe,uBAAgC;IAElE,SAAS,CAAC,QAAQ,CAAC,QAAQ,8EAIxB;IAEH,qEAAqE;IACrE,SAAS,CAAC,QAAQ,CAAC,QAAQ,iDAAqG;IAEhI,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAIzC,SAAS,CAAC,IAAI,IAAI,IAAI;IAMtB,SAAS,CAAC,IAAI,IAAI,IAAI;yCAvBb,2BAA2B;2CAA3B,2BAA2B;CA4BvC"}
|
|
@@ -1,86 +1,52 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, computed,
|
|
1
|
+
import { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';
|
|
2
2
|
import { PrismIconComponent } from '../icons/prism-icon.component.js';
|
|
3
3
|
import { PrismNavigationService } from '../services/prism-navigation.service.js';
|
|
4
4
|
import { PrismRendererService } from '../services/prism-renderer.service.js';
|
|
5
|
-
import {
|
|
5
|
+
import { PrismIconButtonComponent } from '../shared/prism-icon-button.component.js';
|
|
6
|
+
import { PrismTabsComponent } from '../shared/prism-tabs.component.js';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
7
|
-
const _c0 = ["tabsContainer"];
|
|
8
|
-
const _c1 = ["tabButton"];
|
|
9
|
-
const _forTrack0 = ($index, $item) => $item.name;
|
|
10
|
-
function PrismVariantRibbonComponent_Conditional_0_For_4_Template(rf, ctx) { if (rf & 1) {
|
|
11
|
-
const _r2 = i0.ɵɵgetCurrentView();
|
|
12
|
-
i0.ɵɵelementStart(0, "button", 10, 1);
|
|
13
|
-
i0.ɵɵlistener("click", function PrismVariantRibbonComponent_Conditional_0_For_4_Template_button_click_0_listener() { const ɵ$index_6_r3 = i0.ɵɵrestoreView(_r2).$index; const ctx_r3 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r3.rendererService.selectVariant(ɵ$index_6_r3)); });
|
|
14
|
-
i0.ɵɵtext(2);
|
|
15
|
-
i0.ɵɵelementEnd();
|
|
16
|
-
} if (rf & 2) {
|
|
17
|
-
const v_r5 = ctx.$implicit;
|
|
18
|
-
const ɵ$index_6_r3 = ctx.$index;
|
|
19
|
-
const ctx_r3 = i0.ɵɵnextContext(2);
|
|
20
|
-
i0.ɵɵstyleProp("--%NS%i", ctx_r3.slot(ɵ$index_6_r3).i)("--%NS%n", ctx_r3.slot(ɵ$index_6_r3).n);
|
|
21
|
-
i0.ɵɵclassProp("v-tab--active", ctx_r3.rendererService.activeVariantIndex() === ɵ$index_6_r3);
|
|
22
|
-
i0.ɵɵadvance(2);
|
|
23
|
-
i0.ɵɵtextInterpolate1(" ", v_r5.name, " ");
|
|
24
|
-
} }
|
|
25
8
|
function PrismVariantRibbonComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
|
|
26
9
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
27
|
-
i0.ɵɵelementStart(0, "nav",
|
|
28
|
-
i0.ɵɵ
|
|
10
|
+
i0.ɵɵelementStart(0, "nav", 0)(1, "prism-tabs", 1);
|
|
11
|
+
i0.ɵɵlistener("activeChange", function PrismVariantRibbonComponent_Conditional_0_Template_prism_tabs_activeChange_1_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.select($event)); });
|
|
29
12
|
i0.ɵɵelementEnd();
|
|
30
|
-
i0.ɵɵelementStart(
|
|
31
|
-
i0.ɵɵlistener("click", function
|
|
32
|
-
i0.ɵɵelement(
|
|
13
|
+
i0.ɵɵelementStart(2, "div", 2)(3, "button", 3);
|
|
14
|
+
i0.ɵɵlistener("click", function PrismVariantRibbonComponent_Conditional_0_Template_button_click_3_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.prev()); });
|
|
15
|
+
i0.ɵɵelement(4, "prism-icon", 4);
|
|
33
16
|
i0.ɵɵelementEnd();
|
|
34
|
-
i0.ɵɵelementStart(
|
|
35
|
-
i0.ɵɵlistener("click", function
|
|
36
|
-
i0.ɵɵelement(
|
|
17
|
+
i0.ɵɵelementStart(5, "button", 5);
|
|
18
|
+
i0.ɵɵlistener("click", function PrismVariantRibbonComponent_Conditional_0_Template_button_click_5_listener() { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.next()); });
|
|
19
|
+
i0.ɵɵelement(6, "prism-icon", 6);
|
|
37
20
|
i0.ɵɵelementEnd()()();
|
|
38
21
|
} if (rf & 2) {
|
|
39
|
-
const
|
|
40
|
-
i0.ɵɵadvance(
|
|
41
|
-
i0.ɵɵ
|
|
42
|
-
i0.ɵɵadvance(
|
|
43
|
-
i0.ɵɵproperty("disabled",
|
|
22
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
23
|
+
i0.ɵɵadvance();
|
|
24
|
+
i0.ɵɵproperty("items", ctx_r1.tabItems())("active", "" + ctx_r1.rendererService.activeVariantIndex());
|
|
25
|
+
i0.ɵɵadvance(2);
|
|
26
|
+
i0.ɵɵproperty("disabled", ctx_r1.rendererService.activeVariantIndex() === 0);
|
|
27
|
+
i0.ɵɵattribute("aria-disabled", ctx_r1.rendererService.activeVariantIndex() === 0);
|
|
44
28
|
i0.ɵɵadvance();
|
|
45
29
|
i0.ɵɵproperty("size", 14);
|
|
46
30
|
i0.ɵɵadvance();
|
|
47
|
-
i0.ɵɵproperty("disabled",
|
|
31
|
+
i0.ɵɵproperty("disabled", ctx_r1.rendererService.activeVariantIndex() >= ctx_r1.variants().length - 1);
|
|
32
|
+
i0.ɵɵattribute("aria-disabled", ctx_r1.rendererService.activeVariantIndex() >= ctx_r1.variants().length - 1);
|
|
48
33
|
i0.ɵɵadvance();
|
|
49
34
|
i0.ɵɵproperty("size", 14);
|
|
50
35
|
} }
|
|
51
36
|
export class PrismVariantRibbonComponent {
|
|
52
37
|
navigationService = inject(PrismNavigationService);
|
|
53
38
|
rendererService = inject(PrismRendererService);
|
|
54
|
-
tabsContainer = viewChild('tabsContainer', /* @ts-ignore */
|
|
55
|
-
...(ngDevMode ? [{ debugName: "tabsContainer" }] : /* istanbul ignore next */ []));
|
|
56
|
-
tabButtons = viewChildren('tabButton', /* @ts-ignore */
|
|
57
|
-
...(ngDevMode ? [{ debugName: "tabButtons" }] : /* istanbul ignore next */ []));
|
|
58
39
|
variants = computed(() => {
|
|
59
40
|
const comp = this.navigationService.activeComponent();
|
|
60
41
|
return comp?.meta.showcaseConfig.variants ?? [];
|
|
61
42
|
}, /* @ts-ignore */
|
|
62
43
|
...(ngDevMode ? [{ debugName: "variants" }] : /* istanbul ignore next */ []));
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
return;
|
|
70
|
-
const buttonLeft = button.offsetLeft;
|
|
71
|
-
const buttonRight = buttonLeft + button.offsetWidth;
|
|
72
|
-
const viewLeft = container.scrollLeft;
|
|
73
|
-
const viewRight = viewLeft + container.clientWidth;
|
|
74
|
-
if (buttonLeft < viewLeft) {
|
|
75
|
-
container.scrollLeft = buttonLeft;
|
|
76
|
-
}
|
|
77
|
-
else if (buttonRight > viewRight) {
|
|
78
|
-
container.scrollLeft = buttonRight - container.clientWidth;
|
|
79
|
-
}
|
|
80
|
-
});
|
|
81
|
-
}
|
|
82
|
-
slot(index) {
|
|
83
|
-
return spectrumSlot(index, this.variants().length);
|
|
44
|
+
/** One tab per variant, keyed by index: names need not be unique. */
|
|
45
|
+
tabItems = computed(() => this.variants().map((v, i) => ({ id: String(i), label: v.name })), /* @ts-ignore */
|
|
46
|
+
...(ngDevMode ? [{ debugName: "tabItems" }] : /* istanbul ignore next */ []));
|
|
47
|
+
select(id) {
|
|
48
|
+
if (id !== null)
|
|
49
|
+
this.rendererService.selectVariant(Number(id));
|
|
84
50
|
}
|
|
85
51
|
prev() {
|
|
86
52
|
const idx = this.rendererService.activeVariantIndex();
|
|
@@ -93,18 +59,14 @@ export class PrismVariantRibbonComponent {
|
|
|
93
59
|
this.rendererService.selectVariant(idx + 1);
|
|
94
60
|
}
|
|
95
61
|
static ɵfac = function PrismVariantRibbonComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || PrismVariantRibbonComponent)(); };
|
|
96
|
-
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PrismVariantRibbonComponent, selectors: [["prism-variant-ribbon"]],
|
|
97
|
-
i0.ɵɵ
|
|
98
|
-
} if (rf & 2) {
|
|
99
|
-
i0.ɵɵqueryAdvance(2);
|
|
100
|
-
} }, decls: 1, vars: 1, consts: [["tabsContainer", ""], ["tabButton", ""], [1, "variant-ribbon"], [1, "variant-ribbon-tabs"], [1, "v-tab", 3, "v-tab--active", "--%NS%i", "--%NS%n"], [1, "variant-ribbon-right"], ["title", "Previous variant", "aria-label", "Previous variant", 1, "tool-btn", 3, "click", "disabled"], ["name", "chevron-right", 2, "transform", "rotate(180deg)", 3, "size"], ["title", "Next variant", "aria-label", "Next variant", 1, "tool-btn", 3, "click", "disabled"], ["name", "chevron-right", 3, "size"], [1, "v-tab", 3, "click"]], template: function PrismVariantRibbonComponent_Template(rf, ctx) { if (rf & 1) {
|
|
101
|
-
i0.ɵɵconditionalCreate(0, PrismVariantRibbonComponent_Conditional_0_Template, 10, 4, "nav", 2);
|
|
62
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PrismVariantRibbonComponent, selectors: [["prism-variant-ribbon"]], decls: 1, vars: 1, consts: [["aria-label", "Variants", 1, "variant-ribbon"], ["ariaLabel", "Variants", 1, "variant-ribbon-tabs", 3, "activeChange", "items", "active"], [1, "variant-ribbon-right"], ["prismIconButton", "", "size", "xs", "title", "Previous variant", "aria-label", "Previous variant", 3, "click", "disabled"], ["name", "chevron-right", 2, "transform", "rotate(180deg)", 3, "size"], ["prismIconButton", "", "size", "xs", "title", "Next variant", "aria-label", "Next variant", 3, "click", "disabled"], ["name", "chevron-right", 3, "size"]], template: function PrismVariantRibbonComponent_Template(rf, ctx) { if (rf & 1) {
|
|
63
|
+
i0.ɵɵconditionalCreate(0, PrismVariantRibbonComponent_Conditional_0_Template, 7, 8, "nav", 0);
|
|
102
64
|
} if (rf & 2) {
|
|
103
65
|
i0.ɵɵconditional(ctx.variants().length > 0 ? 0 : -1);
|
|
104
|
-
} }, dependencies: [PrismIconComponent], styles: ["[_nghost-%COMP%] {\n display: block;\n flex-shrink: 0;\n}\n\n.variant-ribbon[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n height: var(--%NS%band-rail);\n padding: 0 var(--%NS%sp-5);\n background: var(--%NS%prism-bg);\n border-bottom: 1px solid var(--%NS%prism-border);\n}\n\n.variant-ribbon-tabs[_ngcontent-%COMP%] {\n
|
|
66
|
+
} }, dependencies: [PrismIconComponent, PrismTabsComponent, PrismIconButtonComponent], styles: ["[_nghost-%COMP%] {\n display: block;\n flex-shrink: 0;\n}\n\n.variant-ribbon[_ngcontent-%COMP%] {\n display: flex;\n align-items: center;\n height: var(--%NS%band-rail);\n padding: 0 var(--%NS%sp-5);\n background: var(--%NS%prism-bg);\n border-bottom: 1px solid var(--%NS%prism-border);\n}\n\n.variant-ribbon-tabs[_ngcontent-%COMP%] {\n flex: 1;\n align-self: stretch;\n min-width: 0;\n margin-left: -8px;\n}\n\n.variant-ribbon-right[_ngcontent-%COMP%] {\n display: flex;\n flex-shrink: 0;\n gap: 8px;\n align-items: center;\n height: 24px;\n padding-left: 12px;\n margin-left: 12px;\n border-left: 1px solid var(--%NS%prism-border);\n}\n\n[_ngcontent-%COMP%]:focus-visible {\n outline: 2px solid var(--%NS%prism-primary);\n outline-offset: 2px;\n}"] });
|
|
105
67
|
}
|
|
106
68
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PrismVariantRibbonComponent, [{
|
|
107
69
|
type: Component,
|
|
108
|
-
args: [{ selector: 'prism-variant-ribbon', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [PrismIconComponent], template: "@if (variants().length > 0) {\n <nav
|
|
109
|
-
}],
|
|
110
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PrismVariantRibbonComponent, { className: "PrismVariantRibbonComponent", filePath: "app/variant-ribbon/prism-variant-ribbon.component.ts", lineNumber:
|
|
70
|
+
args: [{ selector: 'prism-variant-ribbon', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [PrismIconComponent, PrismTabsComponent, PrismIconButtonComponent], template: "@if (variants().length > 0) {\n <nav\n class=\"variant-ribbon\"\n aria-label=\"Variants\">\n <prism-tabs\n class=\"variant-ribbon-tabs\"\n ariaLabel=\"Variants\"\n [items]=\"tabItems()\"\n [active]=\"'' + rendererService.activeVariantIndex()\"\n (activeChange)=\"select($event)\" />\n <div class=\"variant-ribbon-right\">\n <button\n prismIconButton\n size=\"xs\"\n title=\"Previous variant\"\n aria-label=\"Previous variant\"\n [disabled]=\"rendererService.activeVariantIndex() === 0\"\n [attr.aria-disabled]=\"rendererService.activeVariantIndex() === 0\"\n (click)=\"prev()\">\n <prism-icon\n name=\"chevron-right\"\n [size]=\"14\"\n style=\"transform: rotate(180deg)\" />\n </button>\n <button\n prismIconButton\n size=\"xs\"\n title=\"Next variant\"\n aria-label=\"Next variant\"\n [disabled]=\"rendererService.activeVariantIndex() >= variants().length - 1\"\n [attr.aria-disabled]=\"rendererService.activeVariantIndex() >= variants().length - 1\"\n (click)=\"next()\">\n <prism-icon\n name=\"chevron-right\"\n [size]=\"14\" />\n </button>\n </div>\n </nav>\n}\n", styles: [":host {\n display: block;\n flex-shrink: 0;\n}\n\n.variant-ribbon {\n display: flex;\n align-items: center;\n height: var(--band-rail);\n padding: 0 var(--sp-5);\n background: var(--prism-bg);\n border-bottom: 1px solid var(--prism-border);\n}\n\n.variant-ribbon-tabs {\n flex: 1;\n align-self: stretch;\n min-width: 0;\n margin-left: -8px;\n}\n\n.variant-ribbon-right {\n display: flex;\n flex-shrink: 0;\n gap: 8px;\n align-items: center;\n height: 24px;\n padding-left: 12px;\n margin-left: 12px;\n border-left: 1px solid var(--prism-border);\n}\n\n:focus-visible {\n outline: 2px solid var(--prism-primary);\n outline-offset: 2px;\n}\n"] }]
|
|
71
|
+
}], null, null); })();
|
|
72
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PrismVariantRibbonComponent, { className: "PrismVariantRibbonComponent", filePath: "app/variant-ribbon/prism-variant-ribbon.component.ts", lineNumber: 16 }); })();
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { PanelDefinition } from '../../plugin/plugin.types.js';
|
|
2
|
+
import type { PanelTarget } from '../../plugin/service.types.js';
|
|
2
3
|
/**
|
|
3
4
|
* The view to switch to, or `null` when the active one still stands.
|
|
4
5
|
*
|
|
@@ -7,6 +8,11 @@ import type { PanelDefinition } from '../../plugin/plugin.types.js';
|
|
|
7
8
|
* because it is the one view every component has: there is no `isVisible` for
|
|
8
9
|
* the Playground, so it can never drop out of the visible list and never
|
|
9
10
|
* needs a fallback away from itself.
|
|
11
|
+
*
|
|
12
|
+
* A service or a pipe has no Playground, so on those pages the rule has no
|
|
13
|
+
* `renderer` to fall back to: an active view that is not offered, `renderer`
|
|
14
|
+
* included, gives way to the first panel the page does offer, or to nothing
|
|
15
|
+
* when it offers none.
|
|
10
16
|
*/
|
|
11
|
-
export declare function nextViewId(activeViewId: string, visibleViewPanels: readonly PanelDefinition[]): string | null;
|
|
17
|
+
export declare function nextViewId(activeViewId: string, visibleViewPanels: readonly PanelDefinition[], target?: PanelTarget): string | null;
|
|
12
18
|
//# sourceMappingURL=next-view-id.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"next-view-id.d.ts","sourceRoot":"","sources":["../../../src/app/view-tab-bar/next-view-id.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"next-view-id.d.ts","sourceRoot":"","sources":["../../../src/app/view-tab-bar/next-view-id.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAEjE;;;;;;;;;;;;;GAaG;AACH,wBAAgB,UAAU,CAAC,YAAY,EAAE,MAAM,EAAE,iBAAiB,EAAE,SAAS,eAAe,EAAE,EAAE,MAAM,GAAE,WAAyB,GAAG,MAAM,GAAG,IAAI,CAMhJ"}
|
|
@@ -6,8 +6,16 @@
|
|
|
6
6
|
* because it is the one view every component has: there is no `isVisible` for
|
|
7
7
|
* the Playground, so it can never drop out of the visible list and never
|
|
8
8
|
* needs a fallback away from itself.
|
|
9
|
+
*
|
|
10
|
+
* A service or a pipe has no Playground, so on those pages the rule has no
|
|
11
|
+
* `renderer` to fall back to: an active view that is not offered, `renderer`
|
|
12
|
+
* included, gives way to the first panel the page does offer, or to nothing
|
|
13
|
+
* when it offers none.
|
|
9
14
|
*/
|
|
10
|
-
export function nextViewId(activeViewId, visibleViewPanels) {
|
|
15
|
+
export function nextViewId(activeViewId, visibleViewPanels, target = 'component') {
|
|
16
|
+
if (target !== 'component') {
|
|
17
|
+
return visibleViewPanels.some((p) => p.id === activeViewId) ? null : (visibleViewPanels[0]?.id ?? null);
|
|
18
|
+
}
|
|
11
19
|
if (activeViewId === 'renderer')
|
|
12
20
|
return null;
|
|
13
21
|
return visibleViewPanels.some((p) => p.id === activeViewId) ? null : 'renderer';
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { RuntimePipe } from '../../plugin/pipe.types.js';
|
|
2
|
+
import type { PanelDefinition, RuntimeComponent } from '../../plugin/plugin.types.js';
|
|
3
|
+
import type { PanelTarget, RuntimeService } from '../../plugin/service.types.js';
|
|
4
|
+
/** The page kinds a panel appears on. A panel that does not say is a component panel. */
|
|
5
|
+
export declare function panelTargets(panel: PanelDefinition): readonly PanelTarget[];
|
|
6
|
+
/**
|
|
7
|
+
* The view panel to render for the active view id, or `undefined` when the page
|
|
8
|
+
* kind is not one the panel applies to.
|
|
9
|
+
*
|
|
10
|
+
* The id can outlive the page it was chosen on: a component's Overview is still
|
|
11
|
+
* the active view for a moment after the reader opens a service or a pipe, until
|
|
12
|
+
* the shell picks one the page offers, and it stays when the page offers none.
|
|
13
|
+
* Rendering it there would hand a component panel a service or pipe page.
|
|
14
|
+
*/
|
|
15
|
+
export declare function activeViewPanel(viewPanels: readonly PanelDefinition[], activeViewId: string, target: PanelTarget): PanelDefinition | undefined;
|
|
16
|
+
/**
|
|
17
|
+
* The inputs a view panel is rendered with: `activeComponent` for a panel that
|
|
18
|
+
* applies to components, `activeService` for one that applies to services,
|
|
19
|
+
* `activePipe` for one that applies to pipes, one input per kind it applies to,
|
|
20
|
+
* and nothing else.
|
|
21
|
+
*
|
|
22
|
+
* The restriction is the point. `NgComponentOutlet` logs NG0303 for an input the
|
|
23
|
+
* component does not declare, so a panel written before services or pipes
|
|
24
|
+
* existed would start logging if it were handed `activeService` or `activePipe`
|
|
25
|
+
* too.
|
|
26
|
+
*/
|
|
27
|
+
export declare function panelInputsFor(panel: PanelDefinition | undefined, component: RuntimeComponent | null, service: RuntimeService | null, pipe: RuntimePipe | null): Record<string, unknown>;
|
|
28
|
+
//# sourceMappingURL=panel-inputs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"panel-inputs.d.ts","sourceRoot":"","sources":["../../../src/app/view-tab-bar/panel-inputs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACtF,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAEjF,yFAAyF;AACzF,wBAAgB,YAAY,CAAC,KAAK,EAAE,eAAe,GAAG,SAAS,WAAW,EAAE,CAE3E;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,SAAS,eAAe,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,eAAe,GAAG,SAAS,CAI9I;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAC1B,KAAK,EAAE,eAAe,GAAG,SAAS,EAClC,SAAS,EAAE,gBAAgB,GAAG,IAAI,EAClC,OAAO,EAAE,cAAc,GAAG,IAAI,EAC9B,IAAI,EAAE,WAAW,GAAG,IAAI,GACzB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAUzB"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/** The page kinds a panel appears on. A panel that does not say is a component panel. */
|
|
2
|
+
export function panelTargets(panel) {
|
|
3
|
+
return panel.appliesTo ?? ['component'];
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* The view panel to render for the active view id, or `undefined` when the page
|
|
7
|
+
* kind is not one the panel applies to.
|
|
8
|
+
*
|
|
9
|
+
* The id can outlive the page it was chosen on: a component's Overview is still
|
|
10
|
+
* the active view for a moment after the reader opens a service or a pipe, until
|
|
11
|
+
* the shell picks one the page offers, and it stays when the page offers none.
|
|
12
|
+
* Rendering it there would hand a component panel a service or pipe page.
|
|
13
|
+
*/
|
|
14
|
+
export function activeViewPanel(viewPanels, activeViewId, target) {
|
|
15
|
+
const panel = viewPanels.find((p) => p.id === activeViewId);
|
|
16
|
+
return panel && panelTargets(panel).includes(target) ? panel : undefined;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* The inputs a view panel is rendered with: `activeComponent` for a panel that
|
|
20
|
+
* applies to components, `activeService` for one that applies to services,
|
|
21
|
+
* `activePipe` for one that applies to pipes, one input per kind it applies to,
|
|
22
|
+
* and nothing else.
|
|
23
|
+
*
|
|
24
|
+
* The restriction is the point. `NgComponentOutlet` logs NG0303 for an input the
|
|
25
|
+
* component does not declare, so a panel written before services or pipes
|
|
26
|
+
* existed would start logging if it were handed `activeService` or `activePipe`
|
|
27
|
+
* too.
|
|
28
|
+
*/
|
|
29
|
+
export function panelInputsFor(panel, component, service, pipe) {
|
|
30
|
+
if (!panel)
|
|
31
|
+
return { activeComponent: component };
|
|
32
|
+
const targets = panelTargets(panel);
|
|
33
|
+
const inputs = {};
|
|
34
|
+
if (targets.includes('component'))
|
|
35
|
+
inputs['activeComponent'] = component;
|
|
36
|
+
if (targets.includes('service'))
|
|
37
|
+
inputs['activeService'] = service;
|
|
38
|
+
if (targets.includes('pipe'))
|
|
39
|
+
inputs['activePipe'] = pipe;
|
|
40
|
+
return inputs;
|
|
41
|
+
}
|