@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
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ChangeDetectionStrategy, Component, computed, input, output, signal, viewChild } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
const _c0 = ["textareaEl"];
|
|
4
4
|
const _c1 = ["preEl"];
|
|
@@ -101,30 +101,10 @@ export class JsonControlComponent {
|
|
|
101
101
|
i0.ɵɵdomProperty("value", ctx.displayText());
|
|
102
102
|
i0.ɵɵadvance(2);
|
|
103
103
|
i0.ɵɵconditional(ctx.parseError() ? 7 : -1);
|
|
104
|
-
} }, styles: [".json-editor[_ngcontent-%COMP%] {
|
|
104
|
+
} }, styles: [".json-editor[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 0;\n}\n\n.json-overlay[_ngcontent-%COMP%] {\n position: relative;\n overflow: hidden;\n border: 1px solid var(--%NS%prism-border);\n border-radius: var(--%NS%radius-sm);\n transition: border-color var(--%NS%dur-fast);\n}\n\n.json-overlay[_ngcontent-%COMP%]:focus-within {\n border-color: var(--%NS%prism-primary);\n box-shadow: 0 0 0 2px color-mix(in srgb, var(--%NS%prism-primary) 30%, transparent);\n}\n\n.json-pre[_ngcontent-%COMP%], \n.json-input[_ngcontent-%COMP%] {\n padding: 4px 8px;\n margin: 0;\n font-family: var(--%NS%font-mono);\n font-size: 12px;\n line-height: 1.4;\n overflow-wrap: break-word;\n tab-size: 2;\n white-space: pre-wrap;\n}\n\n.json-pre[_ngcontent-%COMP%] {\n min-height: 56px;\n pointer-events: none;\n}\n\n.json-pre[_ngcontent-%COMP%] code[_ngcontent-%COMP%] {\n font-family: inherit;\n}\n\n[_nghost-%COMP%] .jh-key {\n color: var(--%NS%prism-code-attr);\n}\n\n[_nghost-%COMP%] .jh-string {\n color: var(--%NS%prism-code-str);\n}\n\n[_nghost-%COMP%] .jh-number {\n color: var(--%NS%prism-warn);\n}\n\n[_nghost-%COMP%] .jh-bool {\n color: var(--%NS%prism-primary);\n}\n\n[_nghost-%COMP%] .jh-null {\n color: var(--%NS%prism-text-ghost);\n}\n\n.json-input[_ngcontent-%COMP%] {\n position: absolute;\n inset: 0;\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n overflow: auto;\n color: transparent;\n caret-color: var(--%NS%prism-text);\n resize: none;\n background: transparent;\n border: none;\n}\n\n.json-input[_ngcontent-%COMP%]:focus {\n outline: none;\n}\n\n.json-input[_ngcontent-%COMP%]::selection {\n background: rgb(99 102 241 / 30%);\n}\n\n.json-error[_ngcontent-%COMP%] {\n display: block;\n margin-top: 2px;\n font-size: 11px;\n color: var(--%NS%prism-danger);\n}"] });
|
|
105
105
|
}
|
|
106
106
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(JsonControlComponent, [{
|
|
107
107
|
type: Component,
|
|
108
|
-
args: [{ selector: 'prism-json-control', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template:
|
|
109
|
-
<div class="json-editor">
|
|
110
|
-
<div class="json-overlay">
|
|
111
|
-
<pre
|
|
112
|
-
class="json-pre"
|
|
113
|
-
#preEl
|
|
114
|
-
><code [innerHTML]="highlightedHtml()"></code></pre>
|
|
115
|
-
<textarea
|
|
116
|
-
#textareaEl
|
|
117
|
-
class="json-input"
|
|
118
|
-
[value]="displayText()"
|
|
119
|
-
(input)="onInput($any($event.target).value)"
|
|
120
|
-
(scroll)="syncScroll()"
|
|
121
|
-
spellcheck="false"
|
|
122
|
-
></textarea>
|
|
123
|
-
</div>
|
|
124
|
-
@if (parseError()) {
|
|
125
|
-
<span class="json-error">Invalid JSON</span>
|
|
126
|
-
}
|
|
127
|
-
</div>
|
|
128
|
-
`, styles: ["\n .json-editor { flex: 1; min-width: 0; }\n\n .json-overlay {\n position: relative;\n border: 1px solid var(--prism-border);\n border-radius: var(--radius-sm);\n overflow: hidden;\n transition: border-color var(--dur-fast);\n }\n .json-overlay:focus-within {\n border-color: var(--prism-primary);\n box-shadow: 0 0 0 2px color-mix(in srgb, var(--prism-primary) 30%, transparent);\n }\n\n .json-pre, .json-input {\n margin: 0;\n padding: 4px 8px;\n font-family: var(--font-mono);\n font-size: 12px;\n line-height: 1.4;\n white-space: pre-wrap;\n word-wrap: break-word;\n tab-size: 2;\n }\n\n .json-pre {\n min-height: 56px;\n pointer-events: none;\n }\n .json-pre code { font-family: inherit; }\n\n :host ::ng-deep .jh-key { color: var(--prism-code-attr); }\n :host ::ng-deep .jh-string { color: var(--prism-code-str); }\n :host ::ng-deep .jh-number { color: var(--prism-warn); }\n :host ::ng-deep .jh-bool { color: var(--prism-primary); }\n :host ::ng-deep .jh-null { color: var(--prism-text-ghost); }\n\n .json-input {\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n background: transparent;\n color: transparent;\n caret-color: var(--prism-text);\n border: none;\n resize: none;\n overflow: auto;\n box-sizing: border-box;\n }\n .json-input:focus { outline: none; }\n .json-input::selection { background: rgba(99, 102, 241, 0.3); }\n\n .json-error {\n font-size: 11px;\n color: var(--prism-danger);\n display: block;\n margin-top: 2px;\n }\n "] }]
|
|
108
|
+
args: [{ selector: 'prism-json-control', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"json-editor\">\n <div class=\"json-overlay\">\n <pre\n class=\"json-pre\"\n #preEl><code [innerHTML]=\"highlightedHtml()\"></code></pre>\n <textarea\n #textareaEl\n class=\"json-input\"\n [value]=\"displayText()\"\n (input)=\"onInput($any($event.target).value)\"\n (scroll)=\"syncScroll()\"\n spellcheck=\"false\"></textarea>\n </div>\n @if (parseError()) {\n <span class=\"json-error\">Invalid JSON</span>\n }\n</div>\n", styles: [".json-editor {\n flex: 1;\n min-width: 0;\n}\n\n.json-overlay {\n position: relative;\n overflow: hidden;\n border: 1px solid var(--prism-border);\n border-radius: var(--radius-sm);\n transition: border-color var(--dur-fast);\n}\n\n.json-overlay:focus-within {\n border-color: var(--prism-primary);\n box-shadow: 0 0 0 2px color-mix(in srgb, var(--prism-primary) 30%, transparent);\n}\n\n.json-pre,\n.json-input {\n padding: 4px 8px;\n margin: 0;\n font-family: var(--font-mono);\n font-size: 12px;\n line-height: 1.4;\n overflow-wrap: break-word;\n tab-size: 2;\n white-space: pre-wrap;\n}\n\n.json-pre {\n min-height: 56px;\n pointer-events: none;\n}\n\n.json-pre code {\n font-family: inherit;\n}\n\n:host ::ng-deep .jh-key {\n color: var(--prism-code-attr);\n}\n\n:host ::ng-deep .jh-string {\n color: var(--prism-code-str);\n}\n\n:host ::ng-deep .jh-number {\n color: var(--prism-warn);\n}\n\n:host ::ng-deep .jh-bool {\n color: var(--prism-primary);\n}\n\n:host ::ng-deep .jh-null {\n color: var(--prism-text-ghost);\n}\n\n.json-input {\n position: absolute;\n inset: 0;\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n overflow: auto;\n color: transparent;\n caret-color: var(--prism-text);\n resize: none;\n background: transparent;\n border: none;\n}\n\n.json-input:focus {\n outline: none;\n}\n\n.json-input::selection {\n background: rgb(99 102 241 / 30%);\n}\n\n.json-error {\n display: block;\n margin-top: 2px;\n font-size: 11px;\n color: var(--prism-danger);\n}\n"] }]
|
|
129
109
|
}], null, { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], typeName: [{ type: i0.Input, args: [{ isSignal: true, alias: "typeName", required: false }] }], valueChange: [{ type: i0.Output, args: ["valueChange"] }], textareaEl: [{ type: i0.ViewChild, args: ['textareaEl', { isSignal: true }] }], preEl: [{ type: i0.ViewChild, args: ['preEl', { isSignal: true }] }] }); })();
|
|
130
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(JsonControlComponent, { className: "JsonControlComponent", filePath: "app/controls/json-control.component.ts", lineNumber:
|
|
110
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(JsonControlComponent, { className: "JsonControlComponent", filePath: "app/controls/json-control.component.ts", lineNumber: 38 }); })();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"number-control.component.d.ts","sourceRoot":"","sources":["../../../src/app/controls/number-control.component.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"number-control.component.d.ts","sourceRoot":"","sources":["../../../src/app/controls/number-control.component.ts"],"names":[],"mappings":";AAEA,qBAOa,sBAAsB;IAC/B,QAAQ,CAAC,KAAK,8CAAY;IAC1B,QAAQ,CAAC,KAAK,8CAAa;IAC3B,QAAQ,CAAC,QAAQ,8CAAa;IAC9B,QAAQ,CAAC,WAAW,mDAAoB;yCAJ/B,sBAAsB;2CAAtB,sBAAsB;CAKlC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ChangeDetectionStrategy, Component, input, output } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export class NumberControlComponent {
|
|
4
4
|
value = input(0, /* @ts-ignore */
|
|
@@ -15,17 +15,10 @@ export class NumberControlComponent {
|
|
|
15
15
|
i0.ɵɵdomElementEnd();
|
|
16
16
|
} if (rf & 2) {
|
|
17
17
|
i0.ɵɵdomProperty("value", ctx.value());
|
|
18
|
-
} }, styles: [".ctl-number[_ngcontent-%COMP%] {\n
|
|
18
|
+
} }, styles: [".ctl-number[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 0;\n height: 30px;\n padding: 0 10px;\n font-family: var(--%NS%font-sans);\n font-size: 13px;\n color: var(--%NS%prism-text);\n outline: none;\n background: var(--%NS%prism-input-bg);\n border: 1px solid var(--%NS%prism-border);\n border-radius: var(--%NS%radius-sm);\n transition:\n border-color var(--%NS%dur-fast),\n box-shadow var(--%NS%dur-fast);\n}\n\n.ctl-number[_ngcontent-%COMP%]:focus {\n border-color: var(--%NS%prism-primary);\n box-shadow: 0 0 0 2px color-mix(in srgb, var(--%NS%prism-primary) 30%, transparent);\n}"] });
|
|
19
19
|
}
|
|
20
20
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(NumberControlComponent, [{
|
|
21
21
|
type: Component,
|
|
22
|
-
args: [{ selector: 'prism-number-control', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template:
|
|
23
|
-
<input
|
|
24
|
-
type="number"
|
|
25
|
-
class="ctl-number"
|
|
26
|
-
[value]="value()"
|
|
27
|
-
(input)="valueChange.emit($any($event.target).valueAsNumber || 0)"
|
|
28
|
-
/>
|
|
29
|
-
`, styles: ["\n .ctl-number {\n height: 30px;\n padding: 0 10px;\n background: var(--prism-input-bg);\n border: 1px solid var(--prism-border);\n border-radius: var(--radius-sm);\n color: var(--prism-text);\n font-size: 13px;\n font-family: var(--font-sans);\n flex: 1;\n min-width: 0;\n outline: none;\n transition: border-color var(--dur-fast), box-shadow var(--dur-fast);\n }\n .ctl-number:focus {\n border-color: var(--prism-primary);\n box-shadow: 0 0 0 2px color-mix(in srgb, var(--prism-primary) 30%, transparent);\n }\n "] }]
|
|
22
|
+
args: [{ selector: 'prism-number-control', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<input\n type=\"number\"\n class=\"ctl-number\"\n [value]=\"value()\"\n (input)=\"valueChange.emit($any($event.target).valueAsNumber || 0)\" />\n", styles: [".ctl-number {\n flex: 1;\n min-width: 0;\n height: 30px;\n padding: 0 10px;\n font-family: var(--font-sans);\n font-size: 13px;\n color: var(--prism-text);\n outline: none;\n background: var(--prism-input-bg);\n border: 1px solid var(--prism-border);\n border-radius: var(--radius-sm);\n transition:\n border-color var(--dur-fast),\n box-shadow var(--dur-fast);\n}\n\n.ctl-number:focus {\n border-color: var(--prism-primary);\n box-shadow: 0 0 0 2px color-mix(in srgb, var(--prism-primary) 30%, transparent);\n}\n"] }]
|
|
30
23
|
}], null, { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], typeName: [{ type: i0.Input, args: [{ isSignal: true, alias: "typeName", required: false }] }], valueChange: [{ type: i0.Output, args: ["valueChange"] }] }); })();
|
|
31
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(NumberControlComponent, { className: "NumberControlComponent", filePath: "app/controls/number-control.component.ts", lineNumber:
|
|
24
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(NumberControlComponent, { className: "NumberControlComponent", filePath: "app/controls/number-control.component.ts", lineNumber: 10 }); })();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"string-control.component.d.ts","sourceRoot":"","sources":["../../../src/app/controls/string-control.component.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"string-control.component.d.ts","sourceRoot":"","sources":["../../../src/app/controls/string-control.component.ts"],"names":[],"mappings":";AAEA,qBAOa,sBAAsB;IAC/B,QAAQ,CAAC,KAAK,8CAAa;IAC3B,QAAQ,CAAC,KAAK,8CAAa;IAC3B,QAAQ,CAAC,QAAQ,8CAAa;IAC9B,QAAQ,CAAC,WAAW,mDAAoB;yCAJ/B,sBAAsB;2CAAtB,sBAAsB;CAKlC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ChangeDetectionStrategy, Component, input, output } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
export class StringControlComponent {
|
|
4
4
|
value = input('', /* @ts-ignore */
|
|
@@ -15,17 +15,10 @@ export class StringControlComponent {
|
|
|
15
15
|
i0.ɵɵdomElementEnd();
|
|
16
16
|
} if (rf & 2) {
|
|
17
17
|
i0.ɵɵdomProperty("value", ctx.value());
|
|
18
|
-
} }, styles: [".ctl-text[_ngcontent-%COMP%] {\n
|
|
18
|
+
} }, styles: [".ctl-text[_ngcontent-%COMP%] {\n flex: 1;\n min-width: 0;\n height: 30px;\n padding: 0 10px;\n font-family: var(--%NS%font-sans);\n font-size: 13px;\n color: var(--%NS%prism-text);\n outline: none;\n background: var(--%NS%prism-input-bg);\n border: 1px solid var(--%NS%prism-border);\n border-radius: var(--%NS%radius-sm);\n transition:\n border-color var(--%NS%dur-fast),\n box-shadow var(--%NS%dur-fast);\n}\n\n.ctl-text[_ngcontent-%COMP%]:focus {\n border-color: var(--%NS%prism-primary);\n box-shadow: 0 0 0 2px color-mix(in srgb, var(--%NS%prism-primary) 30%, transparent);\n}"] });
|
|
19
19
|
}
|
|
20
20
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(StringControlComponent, [{
|
|
21
21
|
type: Component,
|
|
22
|
-
args: [{ selector: 'prism-string-control', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template:
|
|
23
|
-
<input
|
|
24
|
-
type="text"
|
|
25
|
-
class="ctl-text"
|
|
26
|
-
[value]="value()"
|
|
27
|
-
(input)="valueChange.emit($any($event.target).value)"
|
|
28
|
-
/>
|
|
29
|
-
`, styles: ["\n .ctl-text {\n height: 30px;\n padding: 0 10px;\n background: var(--prism-input-bg);\n border: 1px solid var(--prism-border);\n border-radius: var(--radius-sm);\n color: var(--prism-text);\n font-size: 13px;\n font-family: var(--font-sans);\n flex: 1;\n min-width: 0;\n outline: none;\n transition: border-color var(--dur-fast), box-shadow var(--dur-fast);\n }\n .ctl-text:focus {\n border-color: var(--prism-primary);\n box-shadow: 0 0 0 2px color-mix(in srgb, var(--prism-primary) 30%, transparent);\n }\n "] }]
|
|
22
|
+
args: [{ selector: 'prism-string-control', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<input\n type=\"text\"\n class=\"ctl-text\"\n [value]=\"value()\"\n (input)=\"valueChange.emit($any($event.target).value)\" />\n", styles: [".ctl-text {\n flex: 1;\n min-width: 0;\n height: 30px;\n padding: 0 10px;\n font-family: var(--font-sans);\n font-size: 13px;\n color: var(--prism-text);\n outline: none;\n background: var(--prism-input-bg);\n border: 1px solid var(--prism-border);\n border-radius: var(--radius-sm);\n transition:\n border-color var(--dur-fast),\n box-shadow var(--dur-fast);\n}\n\n.ctl-text:focus {\n border-color: var(--prism-primary);\n box-shadow: 0 0 0 2px color-mix(in srgb, var(--prism-primary) 30%, transparent);\n}\n"] }]
|
|
30
23
|
}], null, { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], typeName: [{ type: i0.Input, args: [{ isSignal: true, alias: "typeName", required: false }] }], valueChange: [{ type: i0.Output, args: ["valueChange"] }] }); })();
|
|
31
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(StringControlComponent, { className: "StringControlComponent", filePath: "app/controls/string-control.component.ts", lineNumber:
|
|
24
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(StringControlComponent, { className: "StringControlComponent", filePath: "app/controls/string-control.component.ts", lineNumber: 10 }); })();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"union-control.component.d.ts","sourceRoot":"","sources":["../../../src/app/controls/union-control.component.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"union-control.component.d.ts","sourceRoot":"","sources":["../../../src/app/controls/union-control.component.ts"],"names":[],"mappings":";AAEA,qBAOa,qBAAqB;IAC9B,QAAQ,CAAC,KAAK,8CAAa;IAC3B,QAAQ,CAAC,KAAK,8CAAa;IAC3B,QAAQ,CAAC,QAAQ,8CAAa;IAC9B,QAAQ,CAAC,OAAO,gDAAuB;IACvC,QAAQ,CAAC,WAAW,mDAAoB;yCAL/B,qBAAqB;2CAArB,qBAAqB;CAMjC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ChangeDetectionStrategy, Component, input, output } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
function UnionControlComponent_For_2_Template(rf, ctx) { if (rf & 1) {
|
|
4
4
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
@@ -31,22 +31,10 @@ export class UnionControlComponent {
|
|
|
31
31
|
} if (rf & 2) {
|
|
32
32
|
i0.ɵɵadvance();
|
|
33
33
|
i0.ɵɵrepeater(ctx.options());
|
|
34
|
-
} }, styles: [".ctl-pills[_ngcontent-%COMP%] {\n
|
|
34
|
+
} }, styles: [".ctl-pills[_ngcontent-%COMP%] {\n display: flex;\n flex-wrap: wrap;\n gap: 4px;\n}\n\n.ctl-pill[_ngcontent-%COMP%] {\n height: 26px;\n padding: 0 10px;\n font-family: var(--%NS%font-sans);\n font-size: var(--%NS%fs-sm);\n font-weight: 500;\n color: var(--%NS%prism-text-muted);\n cursor: pointer;\n background: transparent;\n border: 1px solid var(--%NS%prism-border);\n border-radius: 4px;\n transition: all var(--%NS%dur-fast);\n}\n\n.ctl-pill[_ngcontent-%COMP%]:hover {\n color: var(--%NS%prism-text);\n border-color: var(--%NS%prism-border-strong);\n}\n\n.ctl-pill--active[_ngcontent-%COMP%] {\n font-weight: 600;\n color: var(--%NS%prism-primary);\n background: color-mix(in srgb, var(--%NS%prism-primary) 15%, transparent);\n border-color: color-mix(in srgb, var(--%NS%prism-primary) 40%, transparent);\n}"] });
|
|
35
35
|
}
|
|
36
36
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(UnionControlComponent, [{
|
|
37
37
|
type: Component,
|
|
38
|
-
args: [{ selector: 'prism-union-control', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template:
|
|
39
|
-
<div class="ctl-pills" role="group">
|
|
40
|
-
@for (option of options(); track option) {
|
|
41
|
-
<button
|
|
42
|
-
class="ctl-pill"
|
|
43
|
-
[class.ctl-pill--active]="option === value()"
|
|
44
|
-
(click)="valueChange.emit(option)"
|
|
45
|
-
>
|
|
46
|
-
{{ option }}
|
|
47
|
-
</button>
|
|
48
|
-
}
|
|
49
|
-
</div>
|
|
50
|
-
`, styles: ["\n .ctl-pills {\n display: flex;\n gap: 4px;\n flex-wrap: wrap;\n }\n .ctl-pill {\n height: 26px;\n padding: 0 10px;\n font-size: var(--fs-sm);\n font-weight: 500;\n border: 1px solid var(--prism-border);\n border-radius: 4px;\n color: var(--prism-text-muted);\n background: transparent;\n cursor: pointer;\n transition: all var(--dur-fast);\n font-family: var(--font-sans);\n }\n .ctl-pill:hover {\n color: var(--prism-text);\n border-color: var(--prism-border-strong);\n }\n .ctl-pill--active {\n background: color-mix(in srgb, var(--prism-primary) 15%, transparent);\n color: var(--prism-primary);\n border-color: color-mix(in srgb, var(--prism-primary) 40%, transparent);\n font-weight: 600;\n }\n "] }]
|
|
38
|
+
args: [{ selector: 'prism-union-control', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"ctl-pills\"\n role=\"group\">\n @for (option of options(); track option) {\n <button\n class=\"ctl-pill\"\n [class.ctl-pill--active]=\"option === value()\"\n (click)=\"valueChange.emit(option)\">\n {{ option }}\n </button>\n }\n</div>\n", styles: [".ctl-pills {\n display: flex;\n flex-wrap: wrap;\n gap: 4px;\n}\n\n.ctl-pill {\n height: 26px;\n padding: 0 10px;\n font-family: var(--font-sans);\n font-size: var(--fs-sm);\n font-weight: 500;\n color: var(--prism-text-muted);\n cursor: pointer;\n background: transparent;\n border: 1px solid var(--prism-border);\n border-radius: 4px;\n transition: all var(--dur-fast);\n}\n\n.ctl-pill:hover {\n color: var(--prism-text);\n border-color: var(--prism-border-strong);\n}\n\n.ctl-pill--active {\n font-weight: 600;\n color: var(--prism-primary);\n background: color-mix(in srgb, var(--prism-primary) 15%, transparent);\n border-color: color-mix(in srgb, var(--prism-primary) 40%, transparent);\n}\n"] }]
|
|
51
39
|
}], null, { value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], typeName: [{ type: i0.Input, args: [{ isSignal: true, alias: "typeName", required: false }] }], options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }], valueChange: [{ type: i0.Output, args: ["valueChange"] }] }); })();
|
|
52
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnionControlComponent, { className: "UnionControlComponent", filePath: "app/controls/union-control.component.ts", lineNumber:
|
|
40
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(UnionControlComponent, { className: "UnionControlComponent", filePath: "app/controls/union-control.component.ts", lineNumber: 10 }); })();
|
|
@@ -4,11 +4,34 @@ export declare class PrismResizerDirective {
|
|
|
4
4
|
readonly min: import("@angular/core").InputSignal<number>;
|
|
5
5
|
readonly max: import("@angular/core").InputSignal<number>;
|
|
6
6
|
readonly value: import("@angular/core").InputSignal<number>;
|
|
7
|
+
/**
|
|
8
|
+
* Pointer travel to value, as a multiplier.
|
|
9
|
+
*
|
|
10
|
+
* `1` (the default) is a panel or sidebar edge. The viewport grips pass
|
|
11
|
+
* `2 / zoom` and `-2 / zoom`: their box is centred, so holding one edge
|
|
12
|
+
* changes the width at both (the `2`), and the stage scales that box by
|
|
13
|
+
* `--zoom`, so the multiplier has to divide it back out to keep the grip
|
|
14
|
+
* under the cursor. Existing call sites do not pass it and are unaffected.
|
|
15
|
+
*/
|
|
16
|
+
readonly scale: import("@angular/core").InputSignal<number>;
|
|
7
17
|
readonly valueChange: import("@angular/core").OutputEmitterRef<number>;
|
|
8
18
|
private readonly el;
|
|
19
|
+
/** How far one arrow key moves the value. */
|
|
20
|
+
private static readonly STEP;
|
|
9
21
|
protected onMouseDown(e: MouseEvent): void;
|
|
22
|
+
/**
|
|
23
|
+
* Keyboard direction is independent of `scale`.
|
|
24
|
+
*
|
|
25
|
+
* `scale` inverts the *pointer* for a grip on the far edge of a centred box,
|
|
26
|
+
* and carrying that inversion into the keyboard was wrong: two separators
|
|
27
|
+
* that expose the same `aria-valuenow` answered the same key in opposite
|
|
28
|
+
* directions, so a screen-reader user heard the announced value travel one
|
|
29
|
+
* way on one edge and the other way on the other. WAI-ARIA's window-splitter
|
|
30
|
+
* pattern has ArrowRight and ArrowUp increase the value, whichever edge the
|
|
31
|
+
* separator sits on, and the value here is the width rather than a position.
|
|
32
|
+
*/
|
|
10
33
|
protected onKeyDown(e: KeyboardEvent): void;
|
|
11
34
|
static ɵfac: i0.ɵɵFactoryDeclaration<PrismResizerDirective, never>;
|
|
12
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<PrismResizerDirective, "[prismResizer]", never, { "axis": { "alias": "axis"; "required": true; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
|
|
35
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<PrismResizerDirective, "[prismResizer]", never, { "axis": { "alias": "axis"; "required": true; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "scale": { "alias": "scale"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
|
|
13
36
|
}
|
|
14
37
|
//# sourceMappingURL=prism-resizer.directive.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prism-resizer.directive.d.ts","sourceRoot":"","sources":["../../../src/app/directives/prism-resizer.directive.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"prism-resizer.directive.d.ts","sourceRoot":"","sources":["../../../src/app/directives/prism-resizer.directive.ts"],"names":[],"mappings":";AAGA,qBAYa,qBAAqB;IAC9B,QAAQ,CAAC,IAAI,iDAA+B;IAC5C,QAAQ,CAAC,GAAG,8CAAc;IAC1B,QAAQ,CAAC,GAAG,8CAAc;IAC1B,QAAQ,CAAC,KAAK,8CAAY;IAE1B;;;;;;;;OAQG;IACH,QAAQ,CAAC,KAAK,8CAAY;IAE1B,QAAQ,CAAC,WAAW,mDAAoB;IAExC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAmC;IAEtD,6CAA6C;IAC7C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAM;IAElC,SAAS,CAAC,WAAW,CAAC,CAAC,EAAE,UAAU,GAAG,IAAI;IA6B1C;;;;;;;;;;OAUG;IACH,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,aAAa,GAAG,IAAI;yCAhElC,qBAAqB;2CAArB,qBAAqB;CAsFjC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Directive, ElementRef, inject, input, output } from '@angular/core';
|
|
2
|
+
import { resizeValue } from './resize-value.js';
|
|
2
3
|
import * as i0 from "@angular/core";
|
|
3
4
|
export class PrismResizerDirective {
|
|
4
5
|
axis = input.required(/* @ts-ignore */
|
|
@@ -9,17 +10,36 @@ export class PrismResizerDirective {
|
|
|
9
10
|
...(ngDevMode ? [{ debugName: "max" }] : /* istanbul ignore next */ []));
|
|
10
11
|
value = input(0, /* @ts-ignore */
|
|
11
12
|
...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
|
|
13
|
+
/**
|
|
14
|
+
* Pointer travel to value, as a multiplier.
|
|
15
|
+
*
|
|
16
|
+
* `1` (the default) is a panel or sidebar edge. The viewport grips pass
|
|
17
|
+
* `2 / zoom` and `-2 / zoom`: their box is centred, so holding one edge
|
|
18
|
+
* changes the width at both (the `2`), and the stage scales that box by
|
|
19
|
+
* `--zoom`, so the multiplier has to divide it back out to keep the grip
|
|
20
|
+
* under the cursor. Existing call sites do not pass it and are unaffected.
|
|
21
|
+
*/
|
|
22
|
+
scale = input(1, /* @ts-ignore */
|
|
23
|
+
...(ngDevMode ? [{ debugName: "scale" }] : /* istanbul ignore next */ []));
|
|
12
24
|
valueChange = output();
|
|
13
25
|
el = inject((ElementRef));
|
|
26
|
+
/** How far one arrow key moves the value. */
|
|
27
|
+
static STEP = 10;
|
|
14
28
|
onMouseDown(e) {
|
|
29
|
+
// Primary button only. Without this a right-click arms the document-level
|
|
30
|
+
// listeners below, the context menu takes the pointer so the matching
|
|
31
|
+
// mouseup never arrives, and the drag stays live afterwards, so the value
|
|
32
|
+
// then follows the cursor with no button held. `preventDefault` does not
|
|
33
|
+
// suppress `contextmenu`, so the guard has to be here.
|
|
34
|
+
if (e.button !== 0)
|
|
35
|
+
return;
|
|
15
36
|
e.preventDefault();
|
|
16
37
|
const startPos = this.axis() === 'x' ? e.clientX : e.clientY;
|
|
17
38
|
const startVal = this.value();
|
|
18
39
|
this.el.nativeElement.classList.add('active');
|
|
19
40
|
const onMove = (ev) => {
|
|
20
41
|
const delta = this.axis() === 'x' ? ev.clientX - startPos : startPos - ev.clientY;
|
|
21
|
-
|
|
22
|
-
this.valueChange.emit(next);
|
|
42
|
+
this.valueChange.emit(resizeValue(startVal, delta, this.scale(), this.min(), this.max()));
|
|
23
43
|
};
|
|
24
44
|
const onUp = () => {
|
|
25
45
|
this.el.nativeElement.classList.remove('active');
|
|
@@ -29,8 +49,19 @@ export class PrismResizerDirective {
|
|
|
29
49
|
document.addEventListener('mousemove', onMove);
|
|
30
50
|
document.addEventListener('mouseup', onUp);
|
|
31
51
|
}
|
|
52
|
+
/**
|
|
53
|
+
* Keyboard direction is independent of `scale`.
|
|
54
|
+
*
|
|
55
|
+
* `scale` inverts the *pointer* for a grip on the far edge of a centred box,
|
|
56
|
+
* and carrying that inversion into the keyboard was wrong: two separators
|
|
57
|
+
* that expose the same `aria-valuenow` answered the same key in opposite
|
|
58
|
+
* directions, so a screen-reader user heard the announced value travel one
|
|
59
|
+
* way on one edge and the other way on the other. WAI-ARIA's window-splitter
|
|
60
|
+
* pattern has ArrowRight and ArrowUp increase the value, whichever edge the
|
|
61
|
+
* separator sits on, and the value here is the width rather than a position.
|
|
62
|
+
*/
|
|
32
63
|
onKeyDown(e) {
|
|
33
|
-
const step =
|
|
64
|
+
const step = PrismResizerDirective.STEP;
|
|
34
65
|
const current = this.value();
|
|
35
66
|
let next = null;
|
|
36
67
|
if (this.axis() === 'x') {
|
|
@@ -45,6 +76,12 @@ export class PrismResizerDirective {
|
|
|
45
76
|
if (e.key === 'ArrowDown')
|
|
46
77
|
next = current - step;
|
|
47
78
|
}
|
|
79
|
+
// Required of a focusable separator by the same pattern, and the only way
|
|
80
|
+
// to reach either end without holding an arrow key down.
|
|
81
|
+
if (e.key === 'Home')
|
|
82
|
+
next = this.min();
|
|
83
|
+
if (e.key === 'End')
|
|
84
|
+
next = this.max();
|
|
48
85
|
if (next !== null) {
|
|
49
86
|
e.preventDefault();
|
|
50
87
|
this.valueChange.emit(Math.max(this.min(), Math.min(this.max(), next)));
|
|
@@ -56,7 +93,7 @@ export class PrismResizerDirective {
|
|
|
56
93
|
} if (rf & 2) {
|
|
57
94
|
i0.ɵɵattribute("role", "separator")("aria-orientation", ctx.axis() === "x" ? "vertical" : "horizontal")("tabindex", "0");
|
|
58
95
|
i0.ɵɵstyleProp("cursor", ctx.axis() === "x" ? "col-resize" : "row-resize");
|
|
59
|
-
} }, inputs: { axis: [1, "axis"], min: [1, "min"], max: [1, "max"], value: [1, "value"] }, outputs: { valueChange: "valueChange" } });
|
|
96
|
+
} }, inputs: { axis: [1, "axis"], min: [1, "min"], max: [1, "max"], value: [1, "value"], scale: [1, "scale"] }, outputs: { valueChange: "valueChange" } });
|
|
60
97
|
}
|
|
61
98
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PrismResizerDirective, [{
|
|
62
99
|
type: Directive,
|
|
@@ -69,7 +106,7 @@ export class PrismResizerDirective {
|
|
|
69
106
|
'[attr.aria-orientation]': 'axis() === "x" ? "vertical" : "horizontal"',
|
|
70
107
|
'(mousedown)': 'onMouseDown($event)',
|
|
71
108
|
'(keydown)': 'onKeyDown($event)',
|
|
72
|
-
'[attr.tabindex]': '"0"'
|
|
73
|
-
}
|
|
109
|
+
'[attr.tabindex]': '"0"'
|
|
110
|
+
}
|
|
74
111
|
}]
|
|
75
|
-
}], null, { axis: [{ type: i0.Input, args: [{ isSignal: true, alias: "axis", required: true }] }], min: [{ type: i0.Input, args: [{ isSignal: true, alias: "min", required: false }] }], max: [{ type: i0.Input, args: [{ isSignal: true, alias: "max", required: false }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }], valueChange: [{ type: i0.Output, args: ["valueChange"] }] }); })();
|
|
112
|
+
}], null, { axis: [{ type: i0.Input, args: [{ isSignal: true, alias: "axis", required: true }] }], min: [{ type: i0.Input, args: [{ isSignal: true, alias: "min", required: false }] }], max: [{ type: i0.Input, args: [{ isSignal: true, alias: "max", required: false }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }], scale: [{ type: i0.Input, args: [{ isSignal: true, alias: "scale", required: false }] }], valueChange: [{ type: i0.Output, args: ["valueChange"] }] }); })();
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The arithmetic behind `prismResizer`, kept out of the directive.
|
|
3
|
+
*
|
|
4
|
+
* Not for tidiness: a directive whose inputs are `input()` signals has to be
|
|
5
|
+
* rendered inside a host component to be exercised, and this package's specs
|
|
6
|
+
* run under jsdom against SWC-compiled sources, where JIT cannot instantiate
|
|
7
|
+
* one. Extracted, the maths is ordinary and testable. It is the same reason
|
|
8
|
+
* `known-inputs.ts` and `overlay-resolver.ts` sit beside their components.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Where a drag lands.
|
|
12
|
+
*
|
|
13
|
+
* `scale` maps pointer movement onto the value. `1` is a panel edge, where a
|
|
14
|
+
* pixel of travel is a pixel of size. The viewport grips pass `2 / zoom` and
|
|
15
|
+
* `-2 / zoom`: the centred box contributes the `2`, since holding one edge
|
|
16
|
+
* changes the width at both, and the stage's `transform: scale(var(--zoom))`
|
|
17
|
+
* contributes the division, since a pointer moving `dx` across the *painted*
|
|
18
|
+
* box has to change the CSS width by `2·dx / zoom` to keep the grip under the
|
|
19
|
+
* cursor. The sign says which edge is being held.
|
|
20
|
+
*/
|
|
21
|
+
export declare function resizeValue(startValue: number, delta: number, scale: number, min: number, max: number): number;
|
|
22
|
+
//# sourceMappingURL=resize-value.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resize-value.d.ts","sourceRoot":"","sources":["../../../src/app/directives/resize-value.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAE9G"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The arithmetic behind `prismResizer`, kept out of the directive.
|
|
3
|
+
*
|
|
4
|
+
* Not for tidiness: a directive whose inputs are `input()` signals has to be
|
|
5
|
+
* rendered inside a host component to be exercised, and this package's specs
|
|
6
|
+
* run under jsdom against SWC-compiled sources, where JIT cannot instantiate
|
|
7
|
+
* one. Extracted, the maths is ordinary and testable. It is the same reason
|
|
8
|
+
* `known-inputs.ts` and `overlay-resolver.ts` sit beside their components.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Where a drag lands.
|
|
12
|
+
*
|
|
13
|
+
* `scale` maps pointer movement onto the value. `1` is a panel edge, where a
|
|
14
|
+
* pixel of travel is a pixel of size. The viewport grips pass `2 / zoom` and
|
|
15
|
+
* `-2 / zoom`: the centred box contributes the `2`, since holding one edge
|
|
16
|
+
* changes the width at both, and the stage's `transform: scale(var(--zoom))`
|
|
17
|
+
* contributes the division, since a pointer moving `dx` across the *painted*
|
|
18
|
+
* box has to change the CSS width by `2·dx / zoom` to keep the grip under the
|
|
19
|
+
* cursor. The sign says which edge is being held.
|
|
20
|
+
*/
|
|
21
|
+
export function resizeValue(startValue, delta, scale, min, max) {
|
|
22
|
+
return Math.max(min, Math.min(max, startValue + delta * scale));
|
|
23
|
+
}
|
|
@@ -2,9 +2,9 @@ import type { DiscoveryManifest, RuntimeManifest } from '../plugin/plugin.types.
|
|
|
2
2
|
/** Sanitised `meta`, or `undefined` when there is nothing worth exposing. */
|
|
3
3
|
export declare function serializableMeta(meta: Record<string, unknown> | undefined): Record<string, unknown> | undefined;
|
|
4
4
|
/**
|
|
5
|
-
* Builds the discovery view of the manifest
|
|
5
|
+
* Builds the discovery view of the manifest, i.e. what `__PRISM_MANIFEST__` exposes.
|
|
6
6
|
*
|
|
7
|
-
* It is
|
|
7
|
+
* It is not the runtime manifest: no Angular class references, no
|
|
8
8
|
* providers, no scanned input/output metadata. It carries what an external tool
|
|
9
9
|
* needs to enumerate and address variants, plus the `@Showcase` metadata that
|
|
10
10
|
* lets a tool decide how to treat one.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery-manifest.d.ts","sourceRoot":"","sources":["../../src/app/discovery-manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"discovery-manifest.d.ts","sourceRoot":"","sources":["../../src/app/discovery-manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAsB,iBAAiB,EAAoB,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAuD1H,6EAA6E;AAC7E,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAM/G;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,eAAe,GAAG,iBAAiB,CAsCnF"}
|
|
@@ -1,18 +1,14 @@
|
|
|
1
1
|
import { resolveVariantBg } from '../shared/variant-bg.js';
|
|
2
2
|
/**
|
|
3
3
|
* External tooling reads `__PRISM_MANIFEST__` through a structured-clone bridge
|
|
4
|
-
* (`page.evaluate()
|
|
5
|
-
* is
|
|
6
|
-
*
|
|
7
|
-
* that bridge throw or silently drop the whole payload.
|
|
4
|
+
* (Playwright's `page.evaluate()`, `postMessage`, devtools). `ShowcaseConfig.meta`
|
|
5
|
+
* is an open `Record<string, unknown>`, and a class, function or cyclic object
|
|
6
|
+
* in it makes that bridge throw or drop the whole payload.
|
|
8
7
|
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
* Array elements become `null` when they cannot be represented, matching
|
|
15
|
-
* `JSON.stringify` so indices stay stable.
|
|
8
|
+
* So only JSON-safe values cross: primitives, arrays and plain-prototype
|
|
9
|
+
* objects. Class instances, functions, symbols, Dates, Maps and DOM nodes are
|
|
10
|
+
* dropped and cycles are broken. Unrepresentable array elements become `null`,
|
|
11
|
+
* as in `JSON.stringify`, so indices stay stable.
|
|
16
12
|
*/
|
|
17
13
|
function toSerializable(value, seen) {
|
|
18
14
|
if (value === null)
|
|
@@ -59,9 +55,9 @@ export function serializableMeta(meta) {
|
|
|
59
55
|
return serialized;
|
|
60
56
|
}
|
|
61
57
|
/**
|
|
62
|
-
* Builds the discovery view of the manifest
|
|
58
|
+
* Builds the discovery view of the manifest, i.e. what `__PRISM_MANIFEST__` exposes.
|
|
63
59
|
*
|
|
64
|
-
* It is
|
|
60
|
+
* It is not the runtime manifest: no Angular class references, no
|
|
65
61
|
* providers, no scanned input/output metadata. It carries what an external tool
|
|
66
62
|
* needs to enumerate and address variants, plus the `@Showcase` metadata that
|
|
67
63
|
* lets a tool decide how to treat one.
|
|
@@ -73,34 +69,32 @@ export function buildDiscoveryManifest(manifest) {
|
|
|
73
69
|
// An empty `variants` array is not "no variants": the renderer still
|
|
74
70
|
// instantiates the component with its declared defaults at index 0 and
|
|
75
71
|
// marks it `data-prism-rendered="<class>:0"`. Reporting zero variants
|
|
76
|
-
// here would let a runner walk past a component the app happily renders
|
|
77
|
-
//
|
|
72
|
+
// here would let a runner walk past a component the app happily renders.
|
|
73
|
+
// That's the quiet coverage loss the `excluded` status exists to prevent.
|
|
78
74
|
const declared = showcaseConfig.variants ?? [];
|
|
79
75
|
const variants = declared.length
|
|
80
76
|
? declared.map((variant, index) => {
|
|
81
77
|
const meta = serializableMeta(variant.meta);
|
|
82
78
|
const bg = resolveVariantBg(showcaseConfig, index);
|
|
83
|
-
return meta
|
|
84
|
-
? { name: variant.name, index, bg, meta }
|
|
85
|
-
: { name: variant.name, index, bg };
|
|
79
|
+
return meta ? { name: variant.name, index, bg, meta } : { name: variant.name, index, bg };
|
|
86
80
|
})
|
|
87
81
|
: [
|
|
88
82
|
{
|
|
89
83
|
name: 'Default',
|
|
90
84
|
index: 0,
|
|
91
|
-
bg: resolveVariantBg(showcaseConfig, 0)
|
|
92
|
-
}
|
|
85
|
+
bg: resolveVariantBg(showcaseConfig, 0)
|
|
86
|
+
}
|
|
93
87
|
];
|
|
94
88
|
const meta = serializableMeta(showcaseConfig.meta);
|
|
95
89
|
const discovered = {
|
|
96
90
|
className,
|
|
97
91
|
title: showcaseConfig.title,
|
|
98
|
-
variants
|
|
92
|
+
variants
|
|
99
93
|
};
|
|
100
94
|
if (meta)
|
|
101
95
|
discovered.meta = meta;
|
|
102
96
|
return discovered;
|
|
103
97
|
}),
|
|
104
|
-
pages: (manifest.pages ?? []).map((page) => ({ title: page.title }))
|
|
98
|
+
pages: (manifest.pages ?? []).map((page) => ({ title: page.title }))
|
|
105
99
|
};
|
|
106
100
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prism-header-widget-host.component.d.ts","sourceRoot":"","sources":["../../../src/app/header/prism-header-widget-host.component.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"prism-header-widget-host.component.d.ts","sourceRoot":"","sources":["../../../src/app/header/prism-header-widget-host.component.ts"],"names":[],"mappings":"AACA,OAAO,EAA6D,KAAK,IAAI,EAAE,MAAM,eAAe,CAAC;AACrG,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;;AAI3E,qBAQa,8BAA8B;IACvC,QAAQ,CAAC,MAAM,8DAA4C;IAE3D,SAAS,CAAC,QAAQ,CAAC,QAAQ,+DAAsC;;yCAHxD,8BAA8B;2CAA9B,8BAA8B;CAgC1C"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { NgComponentOutlet } from '@angular/common';
|
|
2
|
-
import { ChangeDetectionStrategy, Component, effect, input, signal
|
|
2
|
+
import { ChangeDetectionStrategy, Component, effect, input, signal } from '@angular/core';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
function PrismHeaderWidgetHostComponent_Conditional_0_ng_container_0_Template(rf, ctx) { if (rf & 1) {
|
|
5
5
|
i0.ɵɵelementContainer(0);
|
|
@@ -46,14 +46,10 @@ export class PrismHeaderWidgetHostComponent {
|
|
|
46
46
|
} if (rf & 2) {
|
|
47
47
|
let tmp_0_0;
|
|
48
48
|
i0.ɵɵconditional((tmp_0_0 = ctx.resolved()) ? 0 : -1, tmp_0_0);
|
|
49
|
-
} }, dependencies: [NgComponentOutlet], styles: ["[_nghost-%COMP%] {
|
|
49
|
+
} }, dependencies: [NgComponentOutlet], styles: ["[_nghost-%COMP%] {\n display: contents;\n}"] });
|
|
50
50
|
}
|
|
51
51
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PrismHeaderWidgetHostComponent, [{
|
|
52
52
|
type: Component,
|
|
53
|
-
args: [{ selector: 'prism-header-widget-host', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [NgComponentOutlet], template:
|
|
54
|
-
@if (resolved(); as comp) {
|
|
55
|
-
<ng-container *ngComponentOutlet="comp" />
|
|
56
|
-
}
|
|
57
|
-
`, styles: ["\n :host { display: contents; }\n "] }]
|
|
53
|
+
args: [{ selector: 'prism-header-widget-host', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, imports: [NgComponentOutlet], template: "@if (resolved(); as comp) {\n <ng-container *ngComponentOutlet=\"comp\" />\n}\n", styles: [":host {\n display: contents;\n}\n"] }]
|
|
58
54
|
}], () => [], { widget: [{ type: i0.Input, args: [{ isSignal: true, alias: "widget", required: true }] }] }); })();
|
|
59
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PrismHeaderWidgetHostComponent, { className: "PrismHeaderWidgetHostComponent", filePath: "app/header/prism-header-widget-host.component.ts", lineNumber:
|
|
55
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PrismHeaderWidgetHostComponent, { className: "PrismHeaderWidgetHostComponent", filePath: "app/header/prism-header-widget-host.component.ts", lineNumber: 15 }); })();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prism-header.component.d.ts","sourceRoot":"","sources":["../../../src/app/header/prism-header.component.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"prism-header.component.d.ts","sourceRoot":"","sources":["../../../src/app/header/prism-header.component.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;;AAIvE,qBAQa,oBAAoB;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuC;IAC9D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA8B;IAC5D,SAAS,CAAC,QAAQ,CAAC,aAAa,qBAA8B;IAC9D,SAAS,CAAC,QAAQ,CAAC,YAAY,oBAA6B;IAE5D,SAAS,CAAC,QAAQ,CAAC,YAAY,kGAE7B;IAEF,SAAS,CAAC,QAAQ,CAAC,UAAU,kGAI3B;IAEF,SAAS,CAAC,QAAQ,CAAC,OAAO,gDAOvB;IAEH,SAAS,CAAC,QAAQ,CAAC,KAAK,yCAAmD;IAC3E,SAAS,CAAC,QAAQ,CAAC,QAAQ,gDAAgD;IAE3E,SAAS,CAAC,QAAQ,CAAC,cAAc,gDAS9B;IAGH,SAAS,CAAC,WAAW,CAAC,CAAC,EAAE,aAAa,GAAG,IAAI;IAO7C,SAAS,CAAC,aAAa,IAAI,IAAI;yCA/CtB,oBAAoB;2CAApB,oBAAoB;CAkDhC"}
|