@ng-prism/core 22.2.1 → 22.4.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 +34 -36
- package/builders.json +11 -11
- package/dist/app/canvas/canvas-bg.styles.d.ts +7 -12
- package/dist/app/canvas/canvas-bg.styles.d.ts.map +1 -1
- package/dist/app/canvas/canvas-bg.styles.js +37 -22
- package/dist/app/canvas/measure-geometry.d.ts +140 -0
- package/dist/app/canvas/measure-geometry.d.ts.map +1 -0
- package/dist/app/canvas/measure-geometry.js +217 -0
- package/dist/app/canvas/measure-keyboard.d.ts +20 -0
- package/dist/app/canvas/measure-keyboard.d.ts.map +1 -0
- package/dist/app/canvas/measure-keyboard.js +34 -0
- package/dist/app/canvas/measure-quad.d.ts +114 -0
- package/dist/app/canvas/measure-quad.d.ts.map +1 -0
- package/dist/app/canvas/measure-quad.js +173 -0
- package/dist/app/canvas/measure-snap.d.ts +35 -0
- package/dist/app/canvas/measure-snap.d.ts.map +1 -0
- package/dist/app/canvas/measure-snap.js +63 -0
- package/dist/app/canvas/prism-canvas-bg-pill.component.d.ts.map +1 -1
- package/dist/app/canvas/prism-canvas-bg-pill.component.js +3 -18
- package/dist/app/canvas/prism-canvas-measure.component.d.ts +142 -0
- package/dist/app/canvas/prism-canvas-measure.component.d.ts.map +1 -0
- package/dist/app/canvas/prism-canvas-measure.component.js +554 -0
- package/dist/app/canvas/prism-canvas-pin-row.component.d.ts +23 -0
- package/dist/app/canvas/prism-canvas-pin-row.component.d.ts.map +1 -0
- package/dist/app/canvas/prism-canvas-pin-row.component.js +64 -0
- package/dist/app/canvas/prism-canvas-rulers.component.d.ts +1 -0
- package/dist/app/canvas/prism-canvas-rulers.component.d.ts.map +1 -1
- package/dist/app/canvas/prism-canvas-rulers.component.js +9 -14
- package/dist/app/canvas/prism-canvas-toolbar.component.d.ts +28 -28
- package/dist/app/canvas/prism-canvas-toolbar.component.d.ts.map +1 -1
- package/dist/app/canvas/prism-canvas-toolbar.component.js +124 -162
- package/dist/app/canvas/prism-template-popover.component.d.ts.map +1 -1
- package/dist/app/canvas/prism-template-popover.component.js +8 -49
- package/dist/app/canvas/viewport-snap.d.ts +12 -0
- package/dist/app/canvas/viewport-snap.d.ts.map +1 -0
- package/dist/app/canvas/viewport-snap.js +23 -0
- package/dist/app/component-head/head-metrics.d.ts +2 -2
- package/dist/app/component-head/head-metrics.d.ts.map +1 -1
- package/dist/app/component-head/head-metrics.js +3 -3
- package/dist/app/component-head/prism-component-head.component.d.ts +3 -3
- package/dist/app/component-head/prism-component-head.component.d.ts.map +1 -1
- package/dist/app/component-head/prism-component-head.component.js +24 -64
- package/dist/app/component-head/prism-head-gauge.component.d.ts.map +1 -1
- package/dist/app/component-head/prism-head-gauge.component.js +4 -36
- package/dist/app/component-head/prism-head-info.component.d.ts +1 -1
- package/dist/app/component-head/prism-head-info.component.d.ts.map +1 -1
- package/dist/app/component-head/prism-head-info.component.js +4 -37
- package/dist/app/component-head/prism-stat.component.d.ts +1 -1
- package/dist/app/component-head/prism-stat.component.d.ts.map +1 -1
- package/dist/app/component-head/prism-stat.component.js +4 -15
- package/dist/app/controls/boolean-control.component.d.ts.map +1 -1
- package/dist/app/controls/boolean-control.component.js +4 -12
- package/dist/app/controls/json-control.component.d.ts.map +1 -1
- package/dist/app/controls/json-control.component.js +4 -24
- package/dist/app/controls/number-control.component.d.ts.map +1 -1
- package/dist/app/controls/number-control.component.js +4 -11
- package/dist/app/controls/string-control.component.d.ts.map +1 -1
- package/dist/app/controls/string-control.component.js +4 -11
- package/dist/app/controls/union-control.component.d.ts.map +1 -1
- package/dist/app/controls/union-control.component.js +4 -16
- package/dist/app/directives/prism-resizer.directive.d.ts +24 -1
- package/dist/app/directives/prism-resizer.directive.d.ts.map +1 -1
- package/dist/app/directives/prism-resizer.directive.js +44 -7
- package/dist/app/directives/resize-value.d.ts +22 -0
- package/dist/app/directives/resize-value.d.ts.map +1 -0
- package/dist/app/directives/resize-value.js +23 -0
- 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 +16 -22
- package/dist/app/header/prism-header-widget-host.component.d.ts.map +1 -1
- package/dist/app/header/prism-header-widget-host.component.js +4 -8
- package/dist/app/header/prism-header.component.d.ts.map +1 -1
- package/dist/app/header/prism-header.component.js +9 -78
- package/dist/app/hmr.d.ts.map +1 -1
- package/dist/app/icons/icon-registry.d.ts +2 -2
- package/dist/app/icons/icon-registry.d.ts.map +1 -1
- package/dist/app/icons/icon-registry.js +5 -3
- package/dist/app/icons/prism-icon.component.d.ts +2 -2
- package/dist/app/icons/prism-icon.component.d.ts.map +1 -1
- package/dist/app/icons/prism-icon.component.js +9 -9
- package/dist/app/index.d.ts +3 -3
- package/dist/app/index.d.ts.map +1 -1
- package/dist/app/index.js +17 -24
- package/dist/app/layout-menu/prism-layout-menu.component.d.ts.map +1 -1
- package/dist/app/layout-menu/prism-layout-menu.component.js +3 -77
- package/dist/app/overview/overview-panel.js +1 -1
- package/dist/app/overview/overview-visibility.d.ts +1 -1
- package/dist/app/overview/overview-visibility.d.ts.map +1 -1
- package/dist/app/overview/overview-visibility.js +1 -1
- package/dist/app/overview/prism-overview-cell.component.d.ts +2 -2
- package/dist/app/overview/prism-overview-cell.component.d.ts.map +1 -1
- package/dist/app/overview/prism-overview-cell.component.js +17 -25
- package/dist/app/overview/prism-overview.component.d.ts +2 -2
- package/dist/app/overview/prism-overview.component.d.ts.map +1 -1
- package/dist/app/overview/prism-overview.component.js +6 -14
- package/dist/app/page-renderer/prism-page-renderer.component.d.ts.map +1 -1
- package/dist/app/page-renderer/prism-page-renderer.component.js +4 -17
- package/dist/app/panels/a11y/a11y-audit.service.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-audit.service.js +14 -2
- package/dist/app/panels/a11y/a11y-core.plugin.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-core.plugin.js +1 -1
- package/dist/app/panels/a11y/a11y-dom-utils.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-dom-utils.js +9 -6
- package/dist/app/panels/a11y/a11y-header-badge.component.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-header-badge.component.js +6 -22
- package/dist/app/panels/a11y/a11y-keyboard-overlay.component.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-keyboard-overlay.component.js +6 -25
- package/dist/app/panels/a11y/a11y-keyboard.component.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-keyboard.component.js +5 -36
- package/dist/app/panels/a11y/a11y-keyboard.service.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-keyboard.service.js +2 -2
- package/dist/app/panels/a11y/a11y-overlay-host.component.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-overlay-host.component.js +5 -32
- package/dist/app/panels/a11y/a11y-panel-state.service.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-panel.component.d.ts +1 -1
- package/dist/app/panels/a11y/a11y-panel.component.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-panel.component.js +7 -69
- package/dist/app/panels/a11y/a11y-perspective.service.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-score.component.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-score.component.js +4 -31
- package/dist/app/panels/a11y/a11y-sr-overlay.component.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-sr-overlay.component.js +8 -28
- package/dist/app/panels/a11y/a11y-sr.component.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-sr.component.js +5 -28
- package/dist/app/panels/a11y/a11y-sr.service.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-sr.service.js +4 -7
- package/dist/app/panels/a11y/a11y-summary.d.ts +3 -4
- package/dist/app/panels/a11y/a11y-summary.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-summary.js +5 -9
- package/dist/app/panels/a11y/a11y-thresholds.d.ts +1 -1
- package/dist/app/panels/a11y/a11y-thresholds.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-thresholds.js +2 -2
- package/dist/app/panels/a11y/a11y-tree.component.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-tree.component.js +9 -46
- package/dist/app/panels/a11y/a11y-tree.service.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-tree.service.js +3 -5
- package/dist/app/panels/a11y/a11y-violations.component.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-violations.component.js +7 -58
- package/dist/app/panels/a11y/a11y.types.d.ts +1 -1
- package/dist/app/panels/a11y/a11y.types.d.ts.map +1 -1
- package/dist/app/panels/builtin-header-widgets.js +2 -2
- package/dist/app/panels/builtin-navigation-decorations.d.ts +1 -1
- package/dist/app/panels/builtin-navigation-decorations.d.ts.map +1 -1
- package/dist/app/panels/builtin-navigation-decorations.js +3 -3
- package/dist/app/panels/builtin-panels.d.ts.map +1 -1
- package/dist/app/panels/builtin-panels.js +2 -7
- package/dist/app/panels/controls/controls-plugin.js +3 -3
- package/dist/app/panels/controls/non-editable-input-types.d.ts.map +1 -1
- package/dist/app/panels/controls/non-editable-input-types.js +2 -6
- package/dist/app/panels/controls/prism-controls-panel.component.d.ts.map +1 -1
- package/dist/app/panels/controls/prism-controls-panel.component.js +5 -95
- package/dist/app/panels/events/events-plugin.js +3 -3
- package/dist/app/panels/events/prism-events-panel.component.d.ts.map +1 -1
- package/dist/app/panels/events/prism-events-panel.component.js +5 -23
- package/dist/app/panels/events/prism-json-node.component.d.ts.map +1 -1
- package/dist/app/panels/events/prism-json-node.component.js +4 -86
- package/dist/app/panels/events/prism-json-node.utils.d.ts.map +1 -1
- package/dist/app/panels/panel-host/panel-badge.d.ts +1 -1
- package/dist/app/panels/panel-host/panel-badge.d.ts.map +1 -1
- package/dist/app/panels/panel-host/panel-badge.js +2 -4
- package/dist/app/panels/panel-host/prism-panel-host.component.d.ts +1 -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 +12 -67
- package/dist/app/provide-prism.d.ts +1 -1
- package/dist/app/provide-prism.d.ts.map +1 -1
- package/dist/app/provide-prism.js +8 -12
- package/dist/app/renderer/known-inputs.d.ts +1 -1
- package/dist/app/renderer/known-inputs.d.ts.map +1 -1
- package/dist/app/renderer/known-inputs.js +1 -1
- package/dist/app/renderer/overlay-resolver.d.ts +17 -3
- package/dist/app/renderer/overlay-resolver.d.ts.map +1 -1
- package/dist/app/renderer/overlay-resolver.js +10 -5
- package/dist/app/renderer/prism-renderer.component.d.ts +28 -3
- package/dist/app/renderer/prism-renderer.component.d.ts.map +1 -1
- package/dist/app/renderer/prism-renderer.component.js +107 -80
- package/dist/app/renderer/projectable-content.d.ts.map +1 -1
- package/dist/app/renderer/projectable-content.js +4 -6
- package/dist/app/renderer/snippet-generator.d.ts +1 -1
- package/dist/app/renderer/snippet-generator.d.ts.map +1 -1
- package/dist/app/renderer/snippet-generator.js +7 -22
- package/dist/app/services/navigation-item.types.d.ts +1 -1
- package/dist/app/services/navigation-item.types.d.ts.map +1 -1
- package/dist/app/services/prism-canvas.service.d.ts +33 -0
- package/dist/app/services/prism-canvas.service.d.ts.map +1 -1
- package/dist/app/services/prism-canvas.service.js +71 -6
- package/dist/app/services/prism-capture.service.d.ts +24 -50
- package/dist/app/services/prism-capture.service.d.ts.map +1 -1
- package/dist/app/services/prism-capture.service.js +62 -146
- package/dist/app/services/prism-event-log.service.d.ts.map +1 -1
- package/dist/app/services/prism-event-log.service.js +1 -4
- package/dist/app/services/prism-layout.service.d.ts.map +1 -1
- package/dist/app/services/prism-layout.service.js +5 -4
- package/dist/app/services/prism-manifest.service.d.ts +1 -1
- package/dist/app/services/prism-manifest.service.d.ts.map +1 -1
- package/dist/app/services/prism-manifest.service.js +1 -1
- package/dist/app/services/prism-measure.service.d.ts +44 -0
- package/dist/app/services/prism-measure.service.d.ts.map +1 -0
- package/dist/app/services/prism-measure.service.js +91 -0
- package/dist/app/services/prism-navigation.service.d.ts +1 -1
- package/dist/app/services/prism-navigation.service.d.ts.map +1 -1
- package/dist/app/services/prism-navigation.service.js +5 -13
- package/dist/app/services/prism-panel.service.d.ts +2 -2
- package/dist/app/services/prism-panel.service.d.ts.map +1 -1
- package/dist/app/services/prism-panel.service.js +4 -7
- package/dist/app/services/prism-persistence.service.d.ts.map +1 -1
- package/dist/app/services/prism-persistence.service.js +9 -11
- package/dist/app/services/prism-plugin.service.d.ts.map +1 -1
- package/dist/app/services/prism-renderer.service.d.ts.map +1 -1
- package/dist/app/services/prism-renderer.service.js +5 -9
- package/dist/app/services/prism-search.service.d.ts.map +1 -1
- package/dist/app/services/prism-search.service.js +1 -2
- package/dist/app/services/prism-theme.service.d.ts.map +1 -1
- package/dist/app/services/prism-theme.service.js +6 -4
- package/dist/app/services/prism-url-state.service.d.ts.map +1 -1
- package/dist/app/services/prism-url-state.service.js +4 -10
- package/dist/app/services/prism-variant-bg.service.d.ts +10 -24
- package/dist/app/services/prism-variant-bg.service.d.ts.map +1 -1
- package/dist/app/services/prism-variant-bg.service.js +13 -29
- package/dist/app/shared/prism-metric-badge.component.d.ts +9 -15
- package/dist/app/shared/prism-metric-badge.component.d.ts.map +1 -1
- package/dist/app/shared/prism-metric-badge.component.js +13 -32
- package/dist/app/shell/prism-shell.component.d.ts.map +1 -1
- package/dist/app/shell/prism-shell.component.js +26 -125
- package/dist/app/sidebar/navigation-decorations.d.ts +4 -4
- package/dist/app/sidebar/navigation-decorations.d.ts.map +1 -1
- package/dist/app/sidebar/navigation-decorations.js +3 -3
- package/dist/app/sidebar/prism-sidebar.component.d.ts +3 -3
- package/dist/app/sidebar/prism-sidebar.component.d.ts.map +1 -1
- package/dist/app/sidebar/prism-sidebar.component.js +21 -156
- package/dist/app/theme/prism-default-theme.d.ts.map +1 -1
- package/dist/app/theme/prism-default-theme.js +6 -6
- package/dist/app/tokens/prism-tokens.d.ts.map +1 -1
- package/dist/app/tokens/prism-tokens.js +1 -1
- package/dist/app/variant-ribbon/prism-variant-ribbon.component.d.ts.map +1 -1
- package/dist/app/variant-ribbon/prism-variant-ribbon.component.js +4 -49
- package/dist/app/variant-ribbon/spectrum.d.ts +1 -1
- package/dist/app/variant-ribbon/spectrum.d.ts.map +1 -1
- package/dist/app/variant-ribbon/spectrum.js +1 -1
- package/dist/app/view-tab-bar/next-view-id.d.ts +1 -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 +2 -4
- 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 +5 -17
- 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 +4 -27
- package/dist/builder/a11y/a11y-report-reader.d.ts +2 -2
- package/dist/builder/a11y/a11y-report-reader.d.ts.map +1 -1
- package/dist/builder/a11y/a11y-report-reader.js +8 -8
- package/dist/builder/build/index.d.ts.map +1 -1
- package/dist/builder/build/index.js +5 -9
- package/dist/builder/build/schema.d.ts.map +1 -1
- package/dist/builder/config-loader/config-loader.d.ts.map +1 -1
- package/dist/builder/config-loader/config-loader.js +4 -5
- package/dist/builder/manifest/host-parser.d.ts.map +1 -1
- package/dist/builder/manifest/host-parser.js +1 -1
- package/dist/builder/manifest/runtime-manifest.generator.d.ts +1 -1
- package/dist/builder/manifest/runtime-manifest.generator.d.ts.map +1 -1
- package/dist/builder/manifest/runtime-manifest.generator.js +14 -35
- package/dist/builder/plugin-runner/plugin-runner.d.ts.map +1 -1
- package/dist/builder/plugin-runner/plugin-runner.js +2 -4
- package/dist/builder/scanner/ast-utils.d.ts +46 -2
- package/dist/builder/scanner/ast-utils.d.ts.map +1 -1
- package/dist/builder/scanner/ast-utils.js +338 -38
- package/dist/builder/scanner/class-hierarchy.d.ts +33 -0
- package/dist/builder/scanner/class-hierarchy.d.ts.map +1 -0
- package/dist/builder/scanner/class-hierarchy.js +87 -0
- package/dist/builder/scanner/component.scanner.d.ts +7 -1
- package/dist/builder/scanner/component.scanner.d.ts.map +1 -1
- package/dist/builder/scanner/component.scanner.js +113 -72
- package/dist/builder/scanner/entry-point-discovery.d.ts.map +1 -1
- package/dist/builder/scanner/entry-point-discovery.js +3 -5
- package/dist/builder/scanner/entry-point.scanner.d.ts.map +1 -1
- package/dist/builder/scanner/entry-point.scanner.js +1 -3
- package/dist/builder/scanner/index.d.ts +1 -1
- package/dist/builder/scanner/index.d.ts.map +1 -1
- package/dist/builder/scanner/input.extractor.d.ts +7 -4
- package/dist/builder/scanner/input.extractor.d.ts.map +1 -1
- package/dist/builder/scanner/input.extractor.js +157 -76
- package/dist/builder/scanner/manifest.generator.d.ts.map +1 -1
- package/dist/builder/scanner/manifest.generator.js +8 -6
- package/dist/builder/scanner/scanner.d.ts +3 -1
- package/dist/builder/scanner/scanner.d.ts.map +1 -1
- package/dist/builder/scanner/scanner.js +10 -8
- package/dist/builder/scanner/showcase-diagnostics.d.ts +25 -0
- package/dist/builder/scanner/showcase-diagnostics.d.ts.map +1 -0
- package/dist/builder/scanner/showcase-diagnostics.js +96 -0
- package/dist/builder/serve/index.d.ts.map +1 -1
- package/dist/builder/serve/index.js +8 -10
- package/dist/builder/serve/schema.d.ts.map +1 -1
- package/dist/builder/shared/index.d.ts +1 -1
- package/dist/builder/shared/index.d.ts.map +1 -1
- package/dist/builder/shared/index.js +1 -1
- package/dist/builder/shared/prism-pipeline.d.ts +1 -1
- package/dist/builder/shared/prism-pipeline.d.ts.map +1 -1
- package/dist/builder/shared/prism-pipeline.js +29 -38
- package/dist/builder/shared/resolve-cache-dir.d.ts.map +1 -1
- package/dist/builder/shared/resolve-cache-dir.js +1 -1
- package/dist/builder/watcher/index.d.ts +1 -1
- package/dist/builder/watcher/index.d.ts.map +1 -1
- package/dist/builder/watcher/prism-watcher.d.ts.map +1 -1
- package/dist/builder/watcher/prism-watcher.js +14 -12
- package/dist/config/index.d.ts +2 -2
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +1 -1
- package/dist/decorator/index.d.ts +1 -1
- package/dist/decorator/index.d.ts.map +1 -1
- package/dist/decorator/showcase.decorator.d.ts.map +1 -1
- package/dist/decorator/showcase.types.d.ts +11 -9
- package/dist/decorator/showcase.types.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/plugin/define-config.js +1 -1
- package/dist/plugin/index.d.ts +4 -4
- package/dist/plugin/index.d.ts.map +1 -1
- package/dist/plugin/index.js +7 -11
- package/dist/plugin/page-helpers.d.ts +1 -1
- package/dist/plugin/page-helpers.d.ts.map +1 -1
- package/dist/plugin/page-helpers.js +2 -2
- package/dist/plugin/page.types.d.ts.map +1 -1
- package/dist/plugin/plugin.types.d.ts +31 -14
- package/dist/plugin/plugin.types.d.ts.map +1 -1
- package/dist/schematics/migrations/v21-13-manifest-cache/index.d.ts.map +1 -1
- package/dist/schematics/migrations/v21-13-manifest-cache/index.js +4 -10
- package/dist/schematics/migrations/v22-0-cache-dir-rename/index.d.ts.map +1 -1
- package/dist/schematics/migrations/v22-0-cache-dir-rename/index.js +6 -10
- package/dist/schematics/ng-add/index.d.ts.map +1 -1
- package/dist/schematics/ng-add/index.js +122 -56
- package/dist/schematics/ng-add/schema.d.ts.map +1 -1
- package/dist/schematics/utils/config-ast.d.ts.map +1 -1
- package/dist/schematics/utils/config-ast.js +8 -15
- package/dist/schematics/utils/tsconfig-paths.d.ts.map +1 -1
- package/dist/schematics/utils/tsconfig-paths.js +1 -1
- package/dist/shared/canvas-bg.type.d.ts +5 -6
- package/dist/shared/canvas-bg.type.d.ts.map +1 -1
- package/dist/shared/canvas-bg.type.js +5 -13
- package/dist/shared/canvas-layout.type.d.ts.map +1 -1
- package/dist/shared/canvas-layout.type.js +1 -4
- package/dist/shared/measure.type.d.ts +52 -0
- package/dist/shared/measure.type.d.ts.map +1 -0
- package/dist/shared/measure.type.js +21 -0
- package/dist/shared/variant-bg.d.ts +20 -31
- package/dist/shared/variant-bg.d.ts.map +1 -1
- package/dist/shared/variant-bg.js +20 -31
- package/dist/shared/viewport.type.d.ts +43 -0
- package/dist/shared/viewport.type.d.ts.map +1 -0
- package/dist/shared/viewport.type.js +44 -0
- package/dist/transformer/cli.js +0 -0
- package/dist/transformer/index.d.ts +2 -2
- package/dist/transformer/index.d.ts.map +1 -1
- package/dist/transformer/index.js +2 -2
- package/dist/transformer/showcase-strip.transformer.d.ts.map +1 -1
- package/dist/transformer/showcase-strip.transformer.js +7 -16
- package/dist/transformer/strip-directory.d.ts.map +1 -1
- package/dist/transformer/strip-directory.js +2 -4
- package/package.json +5 -2
- package/schematics/collection.json +7 -7
- package/schematics/migrations.json +12 -12
- package/schematics/ng-add/schema.json +22 -22
- package/src/builder/build/schema.json +36 -36
- package/src/builder/serve/schema.json +37 -37
|
@@ -2,21 +2,15 @@ import * as i0 from "@angular/core";
|
|
|
2
2
|
/**
|
|
3
3
|
* Library-wide metric badge for the header.
|
|
4
4
|
*
|
|
5
|
-
* Presentational only
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* regression in their plugins) owning their own data logic while sharing one
|
|
9
|
-
* appearance.
|
|
5
|
+
* Presentational only: it takes a formatted value and a variant, so each badge
|
|
6
|
+
* (a11y in core, coverage and visual regression in their plugins) keeps its own
|
|
7
|
+
* data logic while sharing one appearance.
|
|
10
8
|
*
|
|
11
|
-
* It
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
* name is composed here as "label: value" (e.g. "Library coverage: 23%"), so
|
|
17
|
-
* the figure that is the whole point of the badge cannot be dropped by a
|
|
18
|
-
* consumer that only passes `label`. `title` stays the full text the
|
|
19
|
-
* consumer passes, for the hover tooltip.
|
|
9
|
+
* It shows an icon instead of a text label: the same glyph the source uses for
|
|
10
|
+
* its navigation marks and panel tab, and narrow enough to fit three badges in
|
|
11
|
+
* the 40px header. The icon is `aria-hidden`; the accessible name is built here
|
|
12
|
+
* as "label: value" (e.g. "Library coverage: 23%") so a consumer cannot drop
|
|
13
|
+
* the figure. `title` is the consumer's full text for the hover tooltip.
|
|
20
14
|
*/
|
|
21
15
|
export declare class PrismMetricBadgeComponent {
|
|
22
16
|
readonly icon: import("@angular/core").InputSignal<string>;
|
|
@@ -24,7 +18,7 @@ export declare class PrismMetricBadgeComponent {
|
|
|
24
18
|
readonly label: import("@angular/core").InputSignal<string>;
|
|
25
19
|
readonly title: import("@angular/core").InputSignal<string>;
|
|
26
20
|
readonly variant: import("@angular/core").InputSignal<"ok" | "warn" | "danger">;
|
|
27
|
-
/** "label: value"
|
|
21
|
+
/** "label: value" is the accessible name, so the figure is never dropped. */
|
|
28
22
|
readonly accessibleName: import("@angular/core").Signal<string>;
|
|
29
23
|
static ɵfac: i0.ɵɵFactoryDeclaration<PrismMetricBadgeComponent, never>;
|
|
30
24
|
static ɵcmp: i0.ɵɵComponentDeclaration<PrismMetricBadgeComponent, "prism-metric-badge", never, { "icon": { "alias": "icon"; "required": true; "isSignal": true; }; "value": { "alias": "value"; "required": true; "isSignal": true; }; "label": { "alias": "label"; "required": true; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prism-metric-badge.component.d.ts","sourceRoot":"","sources":["../../../src/app/shared/prism-metric-badge.component.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"prism-metric-badge.component.d.ts","sourceRoot":"","sources":["../../../src/app/shared/prism-metric-badge.component.ts"],"names":[],"mappings":";AAGA;;;;;;;;;;;;GAYG;AACH,qBAQa,yBAAyB;IAClC,QAAQ,CAAC,IAAI,8CAA4B;IACzC,QAAQ,CAAC,KAAK,8CAA4B;IAC1C,QAAQ,CAAC,KAAK,8CAA4B;IAC1C,QAAQ,CAAC,KAAK,8CAAqB;IACnC,QAAQ,CAAC,OAAO,gEAAyC;IAEzD,6EAA6E;IAC7E,QAAQ,CAAC,cAAc,yCAAsD;yCARpE,yBAAyB;2CAAzB,yBAAyB;CASrC"}
|
|
@@ -1,24 +1,18 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, computed, input
|
|
1
|
+
import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
|
|
2
2
|
import { PrismIconComponent } from '../icons/prism-icon.component.js';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
/**
|
|
5
5
|
* Library-wide metric badge for the header.
|
|
6
6
|
*
|
|
7
|
-
* Presentational only
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
* regression in their plugins) owning their own data logic while sharing one
|
|
11
|
-
* appearance.
|
|
7
|
+
* Presentational only: it takes a formatted value and a variant, so each badge
|
|
8
|
+
* (a11y in core, coverage and visual regression in their plugins) keeps its own
|
|
9
|
+
* data logic while sharing one appearance.
|
|
12
10
|
*
|
|
13
|
-
* It
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
* name is composed here as "label: value" (e.g. "Library coverage: 23%"), so
|
|
19
|
-
* the figure that is the whole point of the badge cannot be dropped by a
|
|
20
|
-
* consumer that only passes `label`. `title` stays the full text the
|
|
21
|
-
* consumer passes, for the hover tooltip.
|
|
11
|
+
* It shows an icon instead of a text label: the same glyph the source uses for
|
|
12
|
+
* its navigation marks and panel tab, and narrow enough to fit three badges in
|
|
13
|
+
* the 40px header. The icon is `aria-hidden`; the accessible name is built here
|
|
14
|
+
* as "label: value" (e.g. "Library coverage: 23%") so a consumer cannot drop
|
|
15
|
+
* the figure. `title` is the consumer's full text for the hover tooltip.
|
|
22
16
|
*/
|
|
23
17
|
export class PrismMetricBadgeComponent {
|
|
24
18
|
icon = input.required(/* @ts-ignore */
|
|
@@ -31,7 +25,7 @@ export class PrismMetricBadgeComponent {
|
|
|
31
25
|
...(ngDevMode ? [{ debugName: "title" }] : /* istanbul ignore next */ []));
|
|
32
26
|
variant = input('ok', /* @ts-ignore */
|
|
33
27
|
...(ngDevMode ? [{ debugName: "variant" }] : /* istanbul ignore next */ []));
|
|
34
|
-
/** "label: value"
|
|
28
|
+
/** "label: value" is the accessible name, so the figure is never dropped. */
|
|
35
29
|
accessibleName = computed(() => `${this.label()}: ${this.value()}`, /* @ts-ignore */
|
|
36
30
|
...(ngDevMode ? [{ debugName: "accessibleName" }] : /* istanbul ignore next */ []));
|
|
37
31
|
static ɵfac = function PrismMetricBadgeComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || PrismMetricBadgeComponent)(); };
|
|
@@ -48,23 +42,10 @@ export class PrismMetricBadgeComponent {
|
|
|
48
42
|
i0.ɵɵproperty("name", ctx.icon())("size", 12);
|
|
49
43
|
i0.ɵɵadvance(2);
|
|
50
44
|
i0.ɵɵtextInterpolate(ctx.value());
|
|
51
|
-
} }, dependencies: [PrismIconComponent], styles: ["[_nghost-%COMP%] {
|
|
45
|
+
} }, dependencies: [PrismIconComponent], styles: ["[_nghost-%COMP%] {\n display: inline-flex;\n align-items: center;\n}\n\n.metric-badge[_ngcontent-%COMP%] {\n display: inline-flex;\n gap: var(--%NS%sp-2);\n align-items: center;\n height: 20px;\n padding: 0 var(--%NS%sp-3) 0 var(--%NS%sp-2);\n font-family: var(--%NS%font-mono);\n font-size: var(--%NS%fs-xs);\n font-variant-numeric: tabular-nums;\n color: var(--%NS%prism-text-muted);\n white-space: nowrap;\n background: var(--%NS%prism-input-bg);\n border: 1px solid var(--%NS%prism-border);\n border-radius: var(--%NS%radius-sm);\n}\n\n.metric-badge__value[_ngcontent-%COMP%] {\n font-weight: 600;\n color: var(--%NS%prism-text);\n}\n\n.metric-badge--ok[_ngcontent-%COMP%] {\n color: var(--%NS%prism-mark-nominal);\n background: color-mix(in srgb, var(--%NS%prism-mark-nominal) 10%, transparent);\n border-color: color-mix(in srgb, var(--%NS%prism-mark-nominal) 35%, transparent);\n}\n\n.metric-badge--ok[_ngcontent-%COMP%] .metric-badge__value[_ngcontent-%COMP%] {\n color: var(--%NS%prism-mark-nominal);\n}\n\n.metric-badge--warn[_ngcontent-%COMP%] {\n color: var(--%NS%prism-mark-attention);\n background: color-mix(in srgb, var(--%NS%prism-mark-attention) 10%, transparent);\n border-color: color-mix(in srgb, var(--%NS%prism-mark-attention) 35%, transparent);\n}\n\n.metric-badge--warn[_ngcontent-%COMP%] .metric-badge__value[_ngcontent-%COMP%] {\n color: var(--%NS%prism-mark-attention);\n}\n\n.metric-badge--danger[_ngcontent-%COMP%] {\n color: var(--%NS%prism-mark-critical);\n background: color-mix(in srgb, var(--%NS%prism-mark-critical) 10%, transparent);\n border-color: color-mix(in srgb, var(--%NS%prism-mark-critical) 40%, transparent);\n}\n\n.metric-badge--danger[_ngcontent-%COMP%] .metric-badge__value[_ngcontent-%COMP%] {\n color: var(--%NS%prism-mark-critical);\n}"] });
|
|
52
46
|
}
|
|
53
47
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PrismMetricBadgeComponent, [{
|
|
54
48
|
type: Component,
|
|
55
|
-
args: [{ selector: 'prism-metric-badge', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [PrismIconComponent], template:
|
|
56
|
-
<span
|
|
57
|
-
class="metric-badge"
|
|
58
|
-
role="img"
|
|
59
|
-
[class.metric-badge--ok]="variant() === 'ok'"
|
|
60
|
-
[class.metric-badge--warn]="variant() === 'warn'"
|
|
61
|
-
[class.metric-badge--danger]="variant() === 'danger'"
|
|
62
|
-
[attr.title]="title() || label()"
|
|
63
|
-
[attr.aria-label]="accessibleName()"
|
|
64
|
-
>
|
|
65
|
-
<prism-icon [name]="icon()" [size]="12" aria-hidden="true" />
|
|
66
|
-
<span class="metric-badge__value">{{ value() }}</span>
|
|
67
|
-
</span>
|
|
68
|
-
`, styles: ["\n :host { display: inline-flex; align-items: center; }\n\n .metric-badge {\n display: inline-flex;\n align-items: center;\n gap: var(--sp-2);\n height: 20px;\n padding: 0 var(--sp-3) 0 var(--sp-2);\n border-radius: var(--radius-sm);\n border: 1px solid var(--prism-border);\n background: var(--prism-input-bg);\n color: var(--prism-text-muted);\n font-family: var(--font-mono);\n font-size: var(--fs-xs);\n font-variant-numeric: tabular-nums;\n white-space: nowrap;\n }\n .metric-badge__value { color: var(--prism-text); font-weight: 600; }\n\n .metric-badge--ok {\n color: var(--prism-mark-nominal);\n border-color: color-mix(in srgb, var(--prism-mark-nominal) 35%, transparent);\n background: color-mix(in srgb, var(--prism-mark-nominal) 10%, transparent);\n }\n .metric-badge--ok .metric-badge__value { color: var(--prism-mark-nominal); }\n\n .metric-badge--warn {\n color: var(--prism-mark-attention);\n border-color: color-mix(in srgb, var(--prism-mark-attention) 35%, transparent);\n background: color-mix(in srgb, var(--prism-mark-attention) 10%, transparent);\n }\n .metric-badge--warn .metric-badge__value { color: var(--prism-mark-attention); }\n\n .metric-badge--danger {\n color: var(--prism-mark-critical);\n border-color: color-mix(in srgb, var(--prism-mark-critical) 40%, transparent);\n background: color-mix(in srgb, var(--prism-mark-critical) 10%, transparent);\n }\n .metric-badge--danger .metric-badge__value { color: var(--prism-mark-critical); }\n "] }]
|
|
49
|
+
args: [{ selector: 'prism-metric-badge', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [PrismIconComponent], template: "<span\n class=\"metric-badge\"\n role=\"img\"\n [class.metric-badge--ok]=\"variant() === 'ok'\"\n [class.metric-badge--warn]=\"variant() === 'warn'\"\n [class.metric-badge--danger]=\"variant() === 'danger'\"\n [attr.title]=\"title() || label()\"\n [attr.aria-label]=\"accessibleName()\">\n <prism-icon\n [name]=\"icon()\"\n [size]=\"12\"\n aria-hidden=\"true\" />\n <span class=\"metric-badge__value\">{{ value() }}</span>\n</span>\n", styles: [":host {\n display: inline-flex;\n align-items: center;\n}\n\n.metric-badge {\n display: inline-flex;\n gap: var(--sp-2);\n align-items: center;\n height: 20px;\n padding: 0 var(--sp-3) 0 var(--sp-2);\n font-family: var(--font-mono);\n font-size: var(--fs-xs);\n font-variant-numeric: tabular-nums;\n color: var(--prism-text-muted);\n white-space: nowrap;\n background: var(--prism-input-bg);\n border: 1px solid var(--prism-border);\n border-radius: var(--radius-sm);\n}\n\n.metric-badge__value {\n font-weight: 600;\n color: var(--prism-text);\n}\n\n.metric-badge--ok {\n color: var(--prism-mark-nominal);\n background: color-mix(in srgb, var(--prism-mark-nominal) 10%, transparent);\n border-color: color-mix(in srgb, var(--prism-mark-nominal) 35%, transparent);\n}\n\n.metric-badge--ok .metric-badge__value {\n color: var(--prism-mark-nominal);\n}\n\n.metric-badge--warn {\n color: var(--prism-mark-attention);\n background: color-mix(in srgb, var(--prism-mark-attention) 10%, transparent);\n border-color: color-mix(in srgb, var(--prism-mark-attention) 35%, transparent);\n}\n\n.metric-badge--warn .metric-badge__value {\n color: var(--prism-mark-attention);\n}\n\n.metric-badge--danger {\n color: var(--prism-mark-critical);\n background: color-mix(in srgb, var(--prism-mark-critical) 10%, transparent);\n border-color: color-mix(in srgb, var(--prism-mark-critical) 40%, transparent);\n}\n\n.metric-badge--danger .metric-badge__value {\n color: var(--prism-mark-critical);\n}\n"] }]
|
|
69
50
|
}], null, { icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: true }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: true }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: true }] }], title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }] }); })();
|
|
70
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PrismMetricBadgeComponent, { className: "PrismMetricBadgeComponent", filePath: "app/shared/prism-metric-badge.component.ts", lineNumber:
|
|
51
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PrismMetricBadgeComponent, { className: "PrismMetricBadgeComponent", filePath: "app/shared/prism-metric-badge.component.ts", lineNumber: 25 }); })();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prism-shell.component.d.ts","sourceRoot":"","sources":["../../../src/app/shell/prism-shell.component.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"prism-shell.component.d.ts","sourceRoot":"","sources":["../../../src/app/shell/prism-shell.component.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;;AAWvE,qBAsBa,mBAAmB;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuC;IAC9D,SAAS,CAAC,QAAQ,CAAC,iBAAiB,yBAAkC;IACtE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA6B;IAC1D,SAAS,CAAC,QAAQ,CAAC,MAAM,qBAA8B;IACvD,SAAS,CAAC,QAAQ,CAAC,YAAY,oBAA6B;IAC5D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAgC;IAChE,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAmC;IAEtE,SAAS,CAAC,QAAQ,CAAC,UAAU,2FAAuC;IAEpE,SAAS,CAAC,QAAQ,CAAC,SAAS,0CAA0I;IAEtK,SAAS,CAAC,QAAQ,CAAC,UAAU,yCAI1B;;IAmCH,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,aAAa,GAAG,IAAI;yCApDlC,mBAAmB;2CAAnB,mBAAmB;CAwE/B"}
|
|
@@ -1,24 +1,25 @@
|
|
|
1
|
-
import { Component, computed, effect, inject, untracked
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { PrismNavigationService } from '../services/prism-navigation.service.js';
|
|
6
|
-
import { PrismPanelService } from '../services/prism-panel.service.js';
|
|
1
|
+
import { ChangeDetectionStrategy, Component, computed, effect, HostListener, inject, untracked } from '@angular/core';
|
|
2
|
+
import { PrismCanvasPinRowComponent } from '../canvas/prism-canvas-pin-row.component.js';
|
|
3
|
+
import { PrismCanvasToolbarComponent } from '../canvas/prism-canvas-toolbar.component.js';
|
|
4
|
+
import { PrismTemplatePopoverComponent } from '../canvas/prism-template-popover.component.js';
|
|
7
5
|
import { PrismComponentHeadComponent } from '../component-head/prism-component-head.component.js';
|
|
8
|
-
import {
|
|
6
|
+
import { PrismResizerDirective } from '../directives/prism-resizer.directive.js';
|
|
9
7
|
import { PrismHeaderComponent } from '../header/prism-header.component.js';
|
|
8
|
+
import { PrismPageRendererComponent } from '../page-renderer/prism-page-renderer.component.js';
|
|
10
9
|
import { PrismPanelHostComponent } from '../panels/panel-host/prism-panel-host.component.js';
|
|
11
10
|
import { PrismRendererComponent } from '../renderer/prism-renderer.component.js';
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
11
|
+
import { PrismLayoutService } from '../services/prism-layout.service.js';
|
|
12
|
+
import { PrismNavigationService } from '../services/prism-navigation.service.js';
|
|
13
|
+
import { PrismPanelService } from '../services/prism-panel.service.js';
|
|
15
14
|
import { PrismPersistenceService } from '../services/prism-persistence.service.js';
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
15
|
+
import { PrismThemeService } from '../services/prism-theme.service.js';
|
|
16
|
+
import { PrismUrlStateService } from '../services/prism-url-state.service.js';
|
|
17
|
+
import { PrismSidebarComponent } from '../sidebar/prism-sidebar.component.js';
|
|
18
|
+
import { PRISM_CONFIG } from '../tokens/prism-tokens.js';
|
|
19
|
+
import { PrismVariantRibbonComponent } from '../variant-ribbon/prism-variant-ribbon.component.js';
|
|
21
20
|
import { nextViewId } from '../view-tab-bar/next-view-id.js';
|
|
21
|
+
import { PrismViewPanelHostComponent } from '../view-tab-bar/prism-view-panel-host.component.js';
|
|
22
|
+
import { PrismViewTabBarComponent } from '../view-tab-bar/prism-view-tab-bar.component.js';
|
|
22
23
|
import * as i0 from "@angular/core";
|
|
23
24
|
function PrismShellComponent_Conditional_3_Template(rf, ctx) { if (rf & 1) {
|
|
24
25
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
@@ -49,7 +50,7 @@ function PrismShellComponent_Conditional_5_Conditional_0_Template(rf, ctx) { if
|
|
|
49
50
|
i0.ɵɵelementEnd();
|
|
50
51
|
i0.ɵɵconditionalCreate(2, PrismShellComponent_Conditional_5_Conditional_0_Conditional_2_Template, 1, 0, "prism-variant-ribbon");
|
|
51
52
|
i0.ɵɵelementStart(3, "div", 12);
|
|
52
|
-
i0.ɵɵelement(4, "prism-canvas-toolbar")(5, "prism-renderer")(6, "prism-template-popover");
|
|
53
|
+
i0.ɵɵelement(4, "prism-canvas-toolbar")(5, "prism-renderer")(6, "prism-template-popover")(7, "prism-canvas-pin-row");
|
|
53
54
|
i0.ɵɵelementEnd();
|
|
54
55
|
} if (rf & 2) {
|
|
55
56
|
const ctx_r1 = i0.ɵɵnextContext(2);
|
|
@@ -77,7 +78,7 @@ function PrismShellComponent_Conditional_5_Conditional_2_Template(rf, ctx) { if
|
|
|
77
78
|
i0.ɵɵproperty("min", 200)("max", 560)("value", ctx_r1.layout.panelHeight());
|
|
78
79
|
} }
|
|
79
80
|
function PrismShellComponent_Conditional_5_Template(rf, ctx) { if (rf & 1) {
|
|
80
|
-
i0.ɵɵconditionalCreate(0, PrismShellComponent_Conditional_5_Conditional_0_Template,
|
|
81
|
+
i0.ɵɵconditionalCreate(0, PrismShellComponent_Conditional_5_Conditional_0_Template, 8, 2)(1, PrismShellComponent_Conditional_5_Conditional_1_Template, 3, 0);
|
|
81
82
|
i0.ɵɵconditionalCreate(2, PrismShellComponent_Conditional_5_Conditional_2_Template, 3, 3);
|
|
82
83
|
} if (rf & 2) {
|
|
83
84
|
const ctx_r1 = i0.ɵɵnextContext();
|
|
@@ -111,9 +112,7 @@ export class PrismShellComponent {
|
|
|
111
112
|
urlStateService = inject(PrismUrlStateService);
|
|
112
113
|
persistenceService = inject(PrismPersistenceService);
|
|
113
114
|
viewPanels = this.panelService.visibleViewPanels;
|
|
114
|
-
showPanel = computed(() => this.layout.addonsVisible() &&
|
|
115
|
-
this.panelService.activeViewId() === 'renderer' &&
|
|
116
|
-
!this.navigationService.activePage(), /* @ts-ignore */
|
|
115
|
+
showPanel = computed(() => this.layout.addonsVisible() && this.panelService.activeViewId() === 'renderer' && !this.navigationService.activePage(), /* @ts-ignore */
|
|
117
116
|
...(ngDevMode ? [{ debugName: "showPanel" }] : /* istanbul ignore next */ []));
|
|
118
117
|
shellStyle = computed(() => {
|
|
119
118
|
const sw = this.layout.sidebarVisible() ? this.layout.sidebarWidth() : 0;
|
|
@@ -126,11 +125,11 @@ export class PrismShellComponent {
|
|
|
126
125
|
this.urlStateService.init();
|
|
127
126
|
this.persistenceService.init();
|
|
128
127
|
// A view survives a component switch as long as the new component still
|
|
129
|
-
// offers it
|
|
128
|
+
// offers it. Browsing a library variant-sheet by variant-sheet was
|
|
130
129
|
// impossible while every navigation dropped back to the Playground. The
|
|
131
130
|
// old rule watched for the *event* of switching and needed a key to
|
|
132
131
|
// remember; this one states the invariant and needs nothing. The rule
|
|
133
|
-
// itself lives in `nextViewId`, a pure function with its own tests
|
|
132
|
+
// itself lives in `nextViewId`, a pure function with its own tests; this
|
|
134
133
|
// effect only reads the two signals it needs and applies the result.
|
|
135
134
|
effect(() => {
|
|
136
135
|
const next = nextViewId(this.panelService.activeViewId(), this.panelService.visibleViewPanels());
|
|
@@ -200,7 +199,8 @@ export class PrismShellComponent {
|
|
|
200
199
|
PrismViewPanelHostComponent,
|
|
201
200
|
PrismResizerDirective,
|
|
202
201
|
PrismCanvasToolbarComponent,
|
|
203
|
-
PrismTemplatePopoverComponent
|
|
202
|
+
PrismTemplatePopoverComponent,
|
|
203
|
+
PrismCanvasPinRowComponent], styles: ["[_nghost-%COMP%] {\n display: block;\n height: 100%;\n}\n\n.prism-shell[_ngcontent-%COMP%] {\n display: grid;\n grid-template-rows: var(--%NS%band-header) 1fr;\n\n \n\n\n\n\n\n\n\n\n\n\n\n\n grid-template-columns: minmax(0, 1fr);\n height: 100vh;\n overflow: hidden;\n font-family: var(--%NS%font-sans, var(--%NS%prism-font-sans));\n color: var(--%NS%prism-text);\n background: var(--%NS%prism-void);\n}\n\n.prism-body[_ngcontent-%COMP%] {\n display: grid;\n grid-template-columns: var(--%NS%sw, 264px) 4px 1fr;\n min-height: 0;\n}\n\n.prism-body--no-sidebar[_ngcontent-%COMP%] {\n grid-template-columns: 1fr;\n}\n\n.prism-sidebar-wrap[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n min-height: 0;\n overflow: hidden;\n background: var(--%NS%prism-bg);\n border-right: 1px solid var(--%NS%prism-border);\n}\n\n.prism-sidebar-wrap[_ngcontent-%COMP%] prism-sidebar[_ngcontent-%COMP%] {\n flex: 1;\n min-height: 0;\n}\n\n.prism-sidebar-foot[_ngcontent-%COMP%] {\n display: flex;\n gap: 8px;\n align-items: center;\n padding: 10px 14px;\n font-size: 11px;\n color: var(--%NS%prism-text-ghost);\n border-top: 1px solid var(--%NS%prism-border);\n}\n\n.prism-sidebar-foot__logo[_ngcontent-%COMP%] {\n flex-shrink: 0;\n width: 16px;\n}\n\n.prism-sidebar-foot__link[_ngcontent-%COMP%] {\n color: var(--%NS%prism-text-ghost);\n text-decoration: none;\n transition: color var(--%NS%dur-fast);\n}\n\n.prism-sidebar-foot__link[_ngcontent-%COMP%]:hover {\n color: var(--%NS%prism-text-2);\n}\n\n.prism-resizer-col[_ngcontent-%COMP%] {\n position: relative;\n z-index: 5;\n width: 4px;\n background: transparent;\n transition: background var(--%NS%dur-fast) var(--%NS%ease-default);\n}\n\n.prism-resizer-col[_ngcontent-%COMP%]:hover, \n.prism-resizer-col.active[_ngcontent-%COMP%] {\n background: var(--%NS%prism-primary);\n}\n\n.prism-main[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n min-height: 0;\n overflow: hidden;\n background: var(--%NS%prism-void);\n}\n\n.prism-resizer-row[_ngcontent-%COMP%] {\n position: relative;\n z-index: 5;\n flex-shrink: 0;\n height: 4px;\n background: transparent;\n transition: background var(--%NS%dur-fast) var(--%NS%ease-default);\n}\n\n.prism-resizer-row[_ngcontent-%COMP%]:hover, \n.prism-resizer-row.active[_ngcontent-%COMP%] {\n background: var(--%NS%prism-primary);\n}\n\n\n\n\n.prism-canvas-wrap[_ngcontent-%COMP%] {\n position: relative;\n display: grid;\n flex: 1;\n grid-template-rows: minmax(0, 1fr);\n min-height: 0;\n overflow: hidden;\n background: var(--%NS%prism-bg-surface);\n}\n\n.prism-main__canvas[_ngcontent-%COMP%] {\n flex: 1;\n min-height: 0;\n overflow: auto;\n}\n\n.prism-main__panel[_ngcontent-%COMP%] {\n flex-shrink: 0;\n height: var(--%NS%ph, 260px);\n min-height: 0;\n overflow: hidden;\n}\n\n.prism-shell__empty[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n grid-row: 1 / -1;\n gap: 8px;\n align-items: center;\n justify-content: center;\n}\n\n.prism-shell__empty-icon[_ngcontent-%COMP%] {\n width: 48px;\n height: 48px;\n margin-bottom: 8px;\n color: var(--%NS%prism-text-ghost);\n}\n\n.prism-shell__empty-text[_ngcontent-%COMP%] {\n margin: 0;\n font-size: var(--%NS%fs-xl);\n font-weight: 500;\n color: var(--%NS%prism-text-muted);\n}\n\n.prism-shell__empty-hint[_ngcontent-%COMP%] {\n margin: 0;\n font-size: var(--%NS%fs-lg);\n color: var(--%NS%prism-text-ghost);\n}"] });
|
|
204
204
|
}
|
|
205
205
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PrismShellComponent, [{
|
|
206
206
|
type: Component,
|
|
@@ -217,109 +217,10 @@ export class PrismShellComponent {
|
|
|
217
217
|
PrismResizerDirective,
|
|
218
218
|
PrismCanvasToolbarComponent,
|
|
219
219
|
PrismTemplatePopoverComponent,
|
|
220
|
-
|
|
221
|
-
<div class="prism-shell" [style]="shellStyle()">
|
|
222
|
-
<prism-header class="prism-shell__header" />
|
|
223
|
-
|
|
224
|
-
<div
|
|
225
|
-
class="prism-body"
|
|
226
|
-
[class.prism-body--no-sidebar]="!layout.sidebarVisible()"
|
|
227
|
-
>
|
|
228
|
-
@if (layout.sidebarVisible()) {
|
|
229
|
-
<aside class="prism-sidebar-wrap">
|
|
230
|
-
<prism-sidebar />
|
|
231
|
-
<div class="prism-sidebar-foot">
|
|
232
|
-
<img
|
|
233
|
-
class="prism-sidebar-foot__logo"
|
|
234
|
-
alt="ng-prism logo"
|
|
235
|
-
src="data:image/png;base64,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"
|
|
236
|
-
/>
|
|
237
|
-
<a
|
|
238
|
-
class="prism-sidebar-foot__link"
|
|
239
|
-
href="https://dyingangel666.github.io/ng-prism/#/"
|
|
240
|
-
target="_blank"
|
|
241
|
-
rel="noopener"
|
|
242
|
-
>
|
|
243
|
-
Powered by ng-prism
|
|
244
|
-
</a>
|
|
245
|
-
</div>
|
|
246
|
-
</aside>
|
|
247
|
-
<div
|
|
248
|
-
class="prism-resizer-col"
|
|
249
|
-
prismResizer
|
|
250
|
-
axis="x"
|
|
251
|
-
[min]="200"
|
|
252
|
-
[max]="360"
|
|
253
|
-
[value]="layout.sidebarWidth()"
|
|
254
|
-
(valueChange)="layout.setSidebarWidth($event)"
|
|
255
|
-
></div>
|
|
256
|
-
}
|
|
257
|
-
|
|
258
|
-
<main
|
|
259
|
-
class="prism-main"
|
|
260
|
-
[style.--ph.px]="showPanel() ? layout.panelHeight() : 0"
|
|
261
|
-
>
|
|
262
|
-
@if (navigationService.activeComponent()) { @if
|
|
263
|
-
(panelService.activeViewId() === 'renderer') {
|
|
264
|
-
<prism-component-head>
|
|
265
|
-
@if (viewPanels().length > 0) {
|
|
266
|
-
<prism-view-tab-bar headEnd />
|
|
267
|
-
}
|
|
268
|
-
</prism-component-head>
|
|
269
|
-
@if (layout.toolbarVisible()) {
|
|
270
|
-
<prism-variant-ribbon />
|
|
271
|
-
}
|
|
272
|
-
<div class="prism-canvas-wrap">
|
|
273
|
-
<prism-canvas-toolbar />
|
|
274
|
-
<prism-renderer />
|
|
275
|
-
<prism-template-popover />
|
|
276
|
-
</div>
|
|
277
|
-
} @else {
|
|
278
|
-
<prism-component-head>
|
|
279
|
-
<prism-view-tab-bar headEnd />
|
|
280
|
-
</prism-component-head>
|
|
281
|
-
<prism-view-panel-host class="prism-main__canvas" />
|
|
282
|
-
} @if (showPanel()) {
|
|
283
|
-
<div
|
|
284
|
-
class="prism-resizer-row"
|
|
285
|
-
prismResizer
|
|
286
|
-
axis="y"
|
|
287
|
-
[min]="200"
|
|
288
|
-
[max]="560"
|
|
289
|
-
[value]="layout.panelHeight()"
|
|
290
|
-
(valueChange)="layout.setPanelHeight($event)"
|
|
291
|
-
></div>
|
|
292
|
-
<div class="prism-main__panel">
|
|
293
|
-
<prism-panel-host />
|
|
294
|
-
</div>
|
|
295
|
-
} } @else if (navigationService.activePage()) {
|
|
296
|
-
<prism-page-renderer class="prism-main__canvas" />
|
|
297
|
-
} @else {
|
|
298
|
-
<div class="prism-shell__empty">
|
|
299
|
-
<svg
|
|
300
|
-
class="prism-shell__empty-icon"
|
|
301
|
-
viewBox="0 0 24 24"
|
|
302
|
-
fill="none"
|
|
303
|
-
stroke="currentColor"
|
|
304
|
-
stroke-width="1.5"
|
|
305
|
-
stroke-linecap="round"
|
|
306
|
-
stroke-linejoin="round"
|
|
307
|
-
>
|
|
308
|
-
<path d="M12 2L4 14h16L12 2z" />
|
|
309
|
-
<path d="M4 14l4 8h8l4-8" />
|
|
310
|
-
</svg>
|
|
311
|
-
<p class="prism-shell__empty-text">Select a component</p>
|
|
312
|
-
<p class="prism-shell__empty-hint">
|
|
313
|
-
from the sidebar to preview it here
|
|
314
|
-
</p>
|
|
315
|
-
</div>
|
|
316
|
-
}
|
|
317
|
-
</main>
|
|
318
|
-
</div>
|
|
319
|
-
</div>
|
|
320
|
-
`, styles: ["\n :host { display: block; height: 100%; }\n\n .prism-shell {\n height: 100vh;\n display: grid;\n grid-template-rows: var(--band-header) 1fr;\n background: var(--prism-void);\n font-family: var(--font-sans, var(--prism-font-sans));\n color: var(--prism-text);\n overflow: hidden;\n }\n\n .prism-body {\n display: grid;\n grid-template-columns: var(--sw, 264px) 4px 1fr;\n min-height: 0;\n }\n .prism-body--no-sidebar {\n grid-template-columns: 1fr;\n }\n\n .prism-sidebar-wrap {\n background: var(--prism-bg);\n border-right: 1px solid var(--prism-border);\n display: flex;\n flex-direction: column;\n min-height: 0;\n overflow: hidden;\n }\n\n .prism-sidebar-wrap prism-sidebar {\n flex: 1;\n min-height: 0;\n }\n\n .prism-sidebar-foot {\n border-top: 1px solid var(--prism-border);\n padding: 10px 14px;\n font-size: 11px;\n color: var(--prism-text-ghost);\n display: flex;\n align-items: center;\n gap: 8px;\n }\n .prism-sidebar-foot__logo {\n width: 16px;\n flex-shrink: 0;\n }\n .prism-sidebar-foot__link {\n color: var(--prism-text-ghost);\n text-decoration: none;\n transition: color var(--dur-fast);\n }\n .prism-sidebar-foot__link:hover {\n color: var(--prism-text-2);\n }\n\n .prism-resizer-col {\n width: 4px;\n background: transparent;\n transition: background var(--dur-fast) var(--ease-default);\n position: relative;\n z-index: 5;\n }\n .prism-resizer-col:hover,\n .prism-resizer-col.active {\n background: var(--prism-primary);\n }\n\n .prism-main {\n display: flex;\n flex-direction: column;\n min-height: 0;\n background: var(--prism-void);\n overflow: hidden;\n }\n\n .prism-resizer-row {\n flex-shrink: 0;\n height: 4px;\n background: transparent;\n transition: background var(--dur-fast) var(--ease-default);\n position: relative;\n z-index: 5;\n }\n .prism-resizer-row:hover,\n .prism-resizer-row.active {\n background: var(--prism-primary);\n }\n\n /* One row, not two: the canvas tools no longer occupy a band above the\n stage, they float over it from a rail absolutely positioned against\n this element. The position: relative below is what anchors it. */\n .prism-canvas-wrap {\n flex: 1;\n min-height: 0;\n display: grid;\n grid-template-rows: minmax(0, 1fr);\n background: var(--prism-bg-surface);\n overflow: hidden;\n position: relative;\n }\n .prism-main__canvas { flex: 1; min-height: 0; overflow: auto; }\n\n .prism-main__panel {\n height: var(--ph, 260px);\n flex-shrink: 0;\n overflow: hidden;\n min-height: 0;\n }\n\n .prism-shell__empty {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 8px;\n grid-row: 1 / -1;\n }\n .prism-shell__empty-icon {\n width: 48px;\n height: 48px;\n color: var(--prism-text-ghost);\n margin-bottom: 8px;\n }\n .prism-shell__empty-text {\n margin: 0;\n font-size: var(--fs-xl);\n font-weight: 500;\n color: var(--prism-text-muted);\n }\n .prism-shell__empty-hint {\n margin: 0;\n font-size: var(--fs-lg);\n color: var(--prism-text-ghost);\n }\n "] }]
|
|
220
|
+
PrismCanvasPinRowComponent
|
|
221
|
+
], template: "<div\n class=\"prism-shell\"\n [style]=\"shellStyle()\">\n <prism-header class=\"prism-shell__header\" />\n\n <div\n class=\"prism-body\"\n [class.prism-body--no-sidebar]=\"!layout.sidebarVisible()\">\n @if (layout.sidebarVisible()) {\n <aside class=\"prism-sidebar-wrap\">\n <prism-sidebar />\n <div class=\"prism-sidebar-foot\">\n <img\n class=\"prism-sidebar-foot__logo\"\n alt=\"ng-prism logo\"\n src=\"data:image/png;base64,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\" />\n <a\n class=\"prism-sidebar-foot__link\"\n href=\"https://dyingangel666.github.io/ng-prism/#/\"\n target=\"_blank\"\n rel=\"noopener\">\n Powered by ng-prism\n </a>\n </div>\n </aside>\n <div\n class=\"prism-resizer-col\"\n prismResizer\n axis=\"x\"\n [min]=\"200\"\n [max]=\"360\"\n [value]=\"layout.sidebarWidth()\"\n (valueChange)=\"layout.setSidebarWidth($event)\"></div>\n }\n\n <main\n class=\"prism-main\"\n [style.--ph.px]=\"showPanel() ? layout.panelHeight() : 0\">\n @if (navigationService.activeComponent()) {\n @if (panelService.activeViewId() === 'renderer') {\n <prism-component-head>\n @if (viewPanels().length > 0) {\n <prism-view-tab-bar headEnd />\n }\n </prism-component-head>\n @if (layout.toolbarVisible()) {\n <prism-variant-ribbon />\n }\n <div class=\"prism-canvas-wrap\">\n <prism-canvas-toolbar />\n <prism-renderer />\n <prism-template-popover />\n <prism-canvas-pin-row />\n </div>\n } @else {\n <prism-component-head>\n <prism-view-tab-bar headEnd />\n </prism-component-head>\n <prism-view-panel-host class=\"prism-main__canvas\" />\n }\n @if (showPanel()) {\n <div\n class=\"prism-resizer-row\"\n prismResizer\n axis=\"y\"\n [min]=\"200\"\n [max]=\"560\"\n [value]=\"layout.panelHeight()\"\n (valueChange)=\"layout.setPanelHeight($event)\"></div>\n <div class=\"prism-main__panel\">\n <prism-panel-host />\n </div>\n }\n } @else if (navigationService.activePage()) {\n <prism-page-renderer class=\"prism-main__canvas\" />\n } @else {\n <div class=\"prism-shell__empty\">\n <svg\n class=\"prism-shell__empty-icon\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"1.5\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\">\n <path d=\"M12 2L4 14h16L12 2z\" />\n <path d=\"M4 14l4 8h8l4-8\" />\n </svg>\n <p class=\"prism-shell__empty-text\">Select a component</p>\n <p class=\"prism-shell__empty-hint\"> from the sidebar to preview it here </p>\n </div>\n }\n </main>\n </div>\n</div>\n", styles: [":host {\n display: block;\n height: 100%;\n}\n\n.prism-shell {\n display: grid;\n grid-template-rows: var(--band-header) 1fr;\n\n /* Declared for its minimum, not for its size. An implicit grid track is\n auto, and an auto track's minimum is the min-content width of what sits\n in it -- here the whole body, sidebar and resizer and main together. The\n track therefore grows to whatever the widest panel demands and the\n overflow: hidden below clips the remainder, instead of the viewport ever\n getting a chance to reflow. Measured at a 500px viewport the track stood\n at 763px and held the canvas at 415px however far the window was dragged\n in, so responsive behaviour inside a showcased component was impossible\n to reach.\n The rows stay bare because min-height: 0 is already spelled out on every\n level below them. The inline axis had no such counterpart anywhere, and\n the levels below zero their own minimum through overflow: hidden, which\n is why this one track is the only place that needs saying. */\n grid-template-columns: minmax(0, 1fr);\n height: 100vh;\n overflow: hidden;\n font-family: var(--font-sans, var(--prism-font-sans));\n color: var(--prism-text);\n background: var(--prism-void);\n}\n\n.prism-body {\n display: grid;\n grid-template-columns: var(--sw, 264px) 4px 1fr;\n min-height: 0;\n}\n\n.prism-body--no-sidebar {\n grid-template-columns: 1fr;\n}\n\n.prism-sidebar-wrap {\n display: flex;\n flex-direction: column;\n min-height: 0;\n overflow: hidden;\n background: var(--prism-bg);\n border-right: 1px solid var(--prism-border);\n}\n\n.prism-sidebar-wrap prism-sidebar {\n flex: 1;\n min-height: 0;\n}\n\n.prism-sidebar-foot {\n display: flex;\n gap: 8px;\n align-items: center;\n padding: 10px 14px;\n font-size: 11px;\n color: var(--prism-text-ghost);\n border-top: 1px solid var(--prism-border);\n}\n\n.prism-sidebar-foot__logo {\n flex-shrink: 0;\n width: 16px;\n}\n\n.prism-sidebar-foot__link {\n color: var(--prism-text-ghost);\n text-decoration: none;\n transition: color var(--dur-fast);\n}\n\n.prism-sidebar-foot__link:hover {\n color: var(--prism-text-2);\n}\n\n.prism-resizer-col {\n position: relative;\n z-index: 5;\n width: 4px;\n background: transparent;\n transition: background var(--dur-fast) var(--ease-default);\n}\n\n.prism-resizer-col:hover,\n.prism-resizer-col.active {\n background: var(--prism-primary);\n}\n\n.prism-main {\n display: flex;\n flex-direction: column;\n min-height: 0;\n overflow: hidden;\n background: var(--prism-void);\n}\n\n.prism-resizer-row {\n position: relative;\n z-index: 5;\n flex-shrink: 0;\n height: 4px;\n background: transparent;\n transition: background var(--dur-fast) var(--ease-default);\n}\n\n.prism-resizer-row:hover,\n.prism-resizer-row.active {\n background: var(--prism-primary);\n}\n\n/* One row, not two: the canvas tools no longer occupy a band above the\n stage, they float over it from a rail absolutely positioned against\n this element. The position: relative below is what anchors it. */\n.prism-canvas-wrap {\n position: relative;\n display: grid;\n flex: 1;\n grid-template-rows: minmax(0, 1fr);\n min-height: 0;\n overflow: hidden;\n background: var(--prism-bg-surface);\n}\n\n.prism-main__canvas {\n flex: 1;\n min-height: 0;\n overflow: auto;\n}\n\n.prism-main__panel {\n flex-shrink: 0;\n height: var(--ph, 260px);\n min-height: 0;\n overflow: hidden;\n}\n\n.prism-shell__empty {\n display: flex;\n flex-direction: column;\n grid-row: 1 / -1;\n gap: 8px;\n align-items: center;\n justify-content: center;\n}\n\n.prism-shell__empty-icon {\n width: 48px;\n height: 48px;\n margin-bottom: 8px;\n color: var(--prism-text-ghost);\n}\n\n.prism-shell__empty-text {\n margin: 0;\n font-size: var(--fs-xl);\n font-weight: 500;\n color: var(--prism-text-muted);\n}\n\n.prism-shell__empty-hint {\n margin: 0;\n font-size: var(--fs-lg);\n color: var(--prism-text-ghost);\n}\n"] }]
|
|
321
222
|
}], () => [], { onKeyDown: [{
|
|
322
223
|
type: HostListener,
|
|
323
224
|
args: ['document:keydown', ['$event']]
|
|
324
225
|
}] }); })();
|
|
325
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PrismShellComponent, { className: "PrismShellComponent", filePath: "app/shell/prism-shell.component.ts", lineNumber:
|
|
226
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PrismShellComponent, { className: "PrismShellComponent", filePath: "app/shell/prism-shell.component.ts", lineNumber: 47 }); })();
|
|
@@ -5,7 +5,7 @@ import type { NavigationItem } from '../services/navigation-item.types.js';
|
|
|
5
5
|
export interface ItemMark {
|
|
6
6
|
/**
|
|
7
7
|
* The definition's id. `resolveNavigationDecorations` guarantees these are
|
|
8
|
-
* unique, so this is the only field safe to `@for track` by
|
|
8
|
+
* unique, so this is the only field safe to `@for track` by. `icon` is a
|
|
9
9
|
* free-form string on a public extension point and two sources can pick the
|
|
10
10
|
* same one.
|
|
11
11
|
*/
|
|
@@ -15,7 +15,7 @@ export interface ItemMark {
|
|
|
15
15
|
label: string;
|
|
16
16
|
}
|
|
17
17
|
export interface ItemDecorations {
|
|
18
|
-
/** Ordered marks
|
|
18
|
+
/** Ordered marks, never empty (`decorateItem` returns null instead). */
|
|
19
19
|
marks: ItemMark[];
|
|
20
20
|
/** Worst variant across `marks`. Drives the group roll-up. */
|
|
21
21
|
worst: 'warn' | 'danger';
|
|
@@ -33,7 +33,7 @@ export interface CategoryRollup {
|
|
|
33
33
|
* by `order`.
|
|
34
34
|
*
|
|
35
35
|
* Built-ins win a collision: a plugin must not be able to silence or restyle a
|
|
36
|
-
* core source by claiming its id. Sorting is by `order` alone
|
|
36
|
+
* core source by claiming its id. Sorting is by `order` alone because the reading
|
|
37
37
|
* contract says position names the source, so registration order must not leak
|
|
38
38
|
* into the result.
|
|
39
39
|
*/
|
|
@@ -53,7 +53,7 @@ export declare function decorateItem(item: NavigationItem, defs: readonly Naviga
|
|
|
53
53
|
* the work.
|
|
54
54
|
*
|
|
55
55
|
* Takes each item's already-resolved `ItemDecorations` rather than the raw
|
|
56
|
-
* items
|
|
56
|
+
* items. Callers already run `decorateItem` once per item to render its
|
|
57
57
|
* marks, and recomputing it here would both waste the work and let the
|
|
58
58
|
* roll-up drift from what actually renders.
|
|
59
59
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation-decorations.d.ts","sourceRoot":"","sources":["../../../src/app/sidebar/navigation-decorations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AACnF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAE3E,qEAAqE;AACrE,MAAM,WAAW,QAAQ;
|
|
1
|
+
{"version":3,"file":"navigation-decorations.d.ts","sourceRoot":"","sources":["../../../src/app/sidebar/navigation-decorations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AACnF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAE3E,qEAAqE;AACrE,MAAM,WAAW,QAAQ;IACrB;;;;;OAKG;IACH,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC5B,wEAAwE;IACxE,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,8DAA8D;IAC9D,KAAK,EAAE,MAAM,GAAG,QAAQ,CAAC;IACzB,8DAA8D;IAC9D,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC3B,kEAAkE;IAClE,QAAQ,EAAE,MAAM,CAAC;IACjB,8DAA8D;IAC9D,OAAO,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAAC;CACrC;AAID;;;;;;;;GAQG;AACH,wBAAgB,4BAA4B,CACxC,OAAO,EAAE,SAAS,8BAA8B,EAAE,EAClD,WAAW,EAAE,SAAS,8BAA8B,EAAE,GACvD,8BAA8B,EAAE,CAWlC;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,8BAA8B,EAAE,GAAG,eAAe,GAAG,IAAI,CA0B1H;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,SAAS,CAAC,eAAe,GAAG,IAAI,CAAC,EAAE,GAAG,cAAc,CAa/F;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,GAAG,MAAM,CAEzE"}
|
|
@@ -4,7 +4,7 @@ const SEVERITY = { warn: 1, danger: 2 };
|
|
|
4
4
|
* by `order`.
|
|
5
5
|
*
|
|
6
6
|
* Built-ins win a collision: a plugin must not be able to silence or restyle a
|
|
7
|
-
* core source by claiming its id. Sorting is by `order` alone
|
|
7
|
+
* core source by claiming its id. Sorting is by `order` alone because the reading
|
|
8
8
|
* contract says position names the source, so registration order must not leak
|
|
9
9
|
* into the result.
|
|
10
10
|
*/
|
|
@@ -37,7 +37,7 @@ export function decorateItem(item, defs) {
|
|
|
37
37
|
id: def.id,
|
|
38
38
|
icon: def.icon,
|
|
39
39
|
variant: badge.variant,
|
|
40
|
-
label: badge.label
|
|
40
|
+
label: badge.label
|
|
41
41
|
});
|
|
42
42
|
}
|
|
43
43
|
if (marks.length === 0)
|
|
@@ -57,7 +57,7 @@ export function decorateItem(item, defs) {
|
|
|
57
57
|
* the work.
|
|
58
58
|
*
|
|
59
59
|
* Takes each item's already-resolved `ItemDecorations` rather than the raw
|
|
60
|
-
* items
|
|
60
|
+
* items. Callers already run `decorateItem` once per item to render its
|
|
61
61
|
* marks, and recomputing it here would both waste the work and let the
|
|
62
62
|
* roll-up drift from what actually renders.
|
|
63
63
|
*/
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import type { ComponentStatus } from '../../decorator/showcase.types.js';
|
|
1
2
|
import type { NavigationItem } from '../services/navigation-item.types.js';
|
|
2
3
|
import { PrismNavigationService } from '../services/prism-navigation.service.js';
|
|
3
4
|
import { PrismSearchService } from '../services/prism-search.service.js';
|
|
4
|
-
import type { ComponentStatus } from '../../decorator/showcase.types.js';
|
|
5
5
|
import { type CategoryRollup, type ItemDecorations } from './navigation-decorations.js';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
interface SidebarCategory {
|
|
@@ -41,12 +41,12 @@ export declare class PrismSidebarComponent {
|
|
|
41
41
|
protected itemStatus(item: NavigationItem): ComponentStatus | undefined;
|
|
42
42
|
/**
|
|
43
43
|
* Accessible name for the roll-up pill, for the deviating case only. The
|
|
44
|
-
* pill otherwise renders a bare number distinguished only by colour
|
|
44
|
+
* pill otherwise renders a bare number distinguished only by colour. A
|
|
45
45
|
* screen reader would read the group head as "Feedback 3 12" with nothing
|
|
46
46
|
* naming what either number means, and a colour-blind reader can't tell
|
|
47
47
|
* them apart at all.
|
|
48
48
|
*
|
|
49
|
-
* There is
|
|
49
|
+
* There is no zero branch: a clean category renders its plain
|
|
50
50
|
* item count and the template leaves both attributes off, because
|
|
51
51
|
* `aria-label` on a descendant feeds the group button's name-from-content
|
|
52
52
|
* and "Buttons 0 components need review" is a claim about a group that has
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prism-sidebar.component.d.ts","sourceRoot":"","sources":["../../../src/app/sidebar/prism-sidebar.component.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"prism-sidebar.component.d.ts","sourceRoot":"","sources":["../../../src/app/sidebar/prism-sidebar.component.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAGzE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAEjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,KAAK,cAAc,EAAgB,KAAK,eAAe,EAA+D,MAAM,6BAA6B,CAAC;;AAcnK,UAAU,eAAe;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,cAAc,EAAE,CAAC;CAC3B;AAED,UAAU,WAAW;IACjB,IAAI,EAAE,cAAc,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,eAAe,GAAG,IAAI,CAAC;CACvC;AAED,UAAU,iBAAiB;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,MAAM,EAAE,cAAc,CAAC;CAC1B;AAED,qBAQa,qBAAqB;IAC9B,SAAS,CAAC,QAAQ,CAAC,iBAAiB,yBAAkC;IACtE,SAAS,CAAC,QAAQ,CAAC,aAAa,qBAA8B;IAC9D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA8B;IAC5D,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA0D;IAEtF,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA4H;IAGxJ,SAAS,CAAC,WAAW,CAAC,CAAC,EAAE,aAAa,GAAG,IAAI;IAS7C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA6C;IAE1E,SAAS,CAAC,QAAQ,CAAC,UAAU,yCAE1B;IAEH,SAAS,CAAC,QAAQ,CAAC,cAAc,oDAe9B;IAEH,SAAS,CAAC,QAAQ,CAAC,iBAAiB;;;;;SAqBjC;IAEH,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAI3C,SAAS,CAAC,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAW3C,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM;IAI/C,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM;IAIjD,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,eAAe,GAAG,SAAS;IAIvE;;;;;;;;;;;;OAYG;IACH,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM;IAMvD,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,cAAc,EAAE,WAAW,EAAE,eAAe,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI;IAU/F,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO;IAUjD,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI;IAQ9C,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,aAAa;yCApJZ,qBAAqB;2CAArB,qBAAqB;CA4JjC"}
|