@ng-prism/core 22.5.0 → 22.7.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +13 -9
- package/dist/app/canvas/canvas-bg.styles.d.ts +1 -1
- package/dist/app/canvas/canvas-bg.styles.d.ts.map +1 -1
- package/dist/app/canvas/canvas-bg.styles.js +1 -1
- package/dist/app/canvas/canvas-overlay-tokens.d.ts +12 -0
- package/dist/app/canvas/canvas-overlay-tokens.d.ts.map +1 -0
- package/dist/app/canvas/canvas-overlay-tokens.js +52 -0
- package/dist/app/canvas/prism-canvas-bg-pill.component.js +2 -2
- package/dist/app/canvas/prism-canvas-pin-row.component.js +2 -2
- package/dist/app/canvas/prism-canvas-rulers.component.d.ts +2 -0
- package/dist/app/canvas/prism-canvas-rulers.component.d.ts.map +1 -1
- package/dist/app/canvas/prism-canvas-rulers.component.js +17 -12
- package/dist/app/canvas/prism-canvas-toolbar.component.d.ts +25 -3
- package/dist/app/canvas/prism-canvas-toolbar.component.d.ts.map +1 -1
- package/dist/app/canvas/prism-canvas-toolbar.component.js +154 -89
- package/dist/app/canvas/prism-template-popover.component.d.ts.map +1 -1
- package/dist/app/canvas/prism-template-popover.component.js +16 -7
- package/dist/app/canvas/state-chips.d.ts +50 -0
- package/dist/app/canvas/state-chips.d.ts.map +1 -0
- package/dist/app/canvas/state-chips.js +40 -0
- package/dist/app/component-head/head-metrics.d.ts +35 -19
- package/dist/app/component-head/head-metrics.d.ts.map +1 -1
- package/dist/app/component-head/head-metrics.js +57 -27
- package/dist/app/component-head/pipe-facts.d.ts +9 -0
- package/dist/app/component-head/pipe-facts.d.ts.map +1 -0
- package/dist/app/component-head/pipe-facts.js +15 -0
- package/dist/app/component-head/prism-component-head.component.d.ts +20 -22
- package/dist/app/component-head/prism-component-head.component.d.ts.map +1 -1
- package/dist/app/component-head/prism-component-head.component.js +85 -96
- package/dist/app/component-head/prism-head-gauge.component.d.ts +8 -12
- package/dist/app/component-head/prism-head-gauge.component.d.ts.map +1 -1
- package/dist/app/component-head/prism-head-gauge.component.js +51 -67
- package/dist/app/component-head/prism-head-info.component.d.ts +14 -2
- package/dist/app/component-head/prism-head-info.component.d.ts.map +1 -1
- package/dist/app/component-head/prism-head-info.component.js +84 -20
- package/dist/app/component-head/prism-stat.component.d.ts +4 -5
- package/dist/app/component-head/prism-stat.component.d.ts.map +1 -1
- package/dist/app/component-head/prism-stat.component.js +16 -12
- package/dist/app/component-head/service-facts.d.ts +8 -0
- package/dist/app/component-head/service-facts.d.ts.map +1 -0
- package/dist/app/component-head/service-facts.js +11 -0
- package/dist/app/controls/boolean-control.component.js +2 -2
- package/dist/app/controls/json-control.component.js +2 -2
- package/dist/app/controls/union-control.component.js +4 -3
- package/dist/app/directives/resize-value.d.ts +1 -1
- package/dist/app/directives/resize-value.js +1 -1
- package/dist/app/discovery-manifest.d.ts +2 -2
- package/dist/app/discovery-manifest.d.ts.map +1 -1
- package/dist/app/discovery-manifest.js +15 -3
- package/dist/app/header/header-brand.d.ts +25 -0
- package/dist/app/header/header-brand.d.ts.map +1 -0
- package/dist/app/header/header-brand.js +10 -0
- package/dist/app/header/prism-header.component.d.ts +2 -2
- package/dist/app/header/prism-header.component.d.ts.map +1 -1
- package/dist/app/header/prism-header.component.js +73 -57
- package/dist/app/icons/icon-registry.d.ts.map +1 -1
- package/dist/app/icons/icon-registry.js +4 -1
- package/dist/app/index.d.ts +12 -0
- package/dist/app/index.d.ts.map +1 -1
- package/dist/app/index.js +12 -1
- package/dist/app/layout-menu/prism-layout-menu.component.d.ts +3 -0
- package/dist/app/layout-menu/prism-layout-menu.component.d.ts.map +1 -1
- package/dist/app/layout-menu/prism-layout-menu.component.js +72 -58
- package/dist/app/overview/open-in-playground.d.ts +19 -0
- package/dist/app/overview/open-in-playground.d.ts.map +1 -0
- package/dist/app/overview/open-in-playground.js +25 -0
- package/dist/app/overview/overview-matrix.d.ts +85 -0
- package/dist/app/overview/overview-matrix.d.ts.map +1 -0
- package/dist/app/overview/overview-matrix.js +98 -0
- package/dist/app/overview/overview-visibility.d.ts +10 -2
- package/dist/app/overview/overview-visibility.d.ts.map +1 -1
- package/dist/app/overview/overview-visibility.js +14 -3
- package/dist/app/overview/prism-overview-cell.component.d.ts +27 -2
- package/dist/app/overview/prism-overview-cell.component.d.ts.map +1 -1
- package/dist/app/overview/prism-overview-cell.component.js +145 -28
- package/dist/app/overview/prism-overview-matrix.component.d.ts +29 -0
- package/dist/app/overview/prism-overview-matrix.component.d.ts.map +1 -0
- package/dist/app/overview/prism-overview-matrix.component.js +155 -0
- package/dist/app/overview/prism-overview.component.d.ts +4 -0
- package/dist/app/overview/prism-overview.component.d.ts.map +1 -1
- package/dist/app/overview/prism-overview.component.js +37 -14
- package/dist/app/page-renderer/prism-page-renderer.component.js +2 -2
- package/dist/app/panels/a11y/a11y-core.plugin.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-core.plugin.js +0 -1
- package/dist/app/panels/a11y/a11y-header-badge.component.d.ts +1 -4
- package/dist/app/panels/a11y/a11y-header-badge.component.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-header-badge.component.js +8 -19
- package/dist/app/panels/a11y/a11y-keyboard-overlay.component.js +2 -2
- package/dist/app/panels/a11y/a11y-overlay-host.component.d.ts +1 -0
- package/dist/app/panels/a11y/a11y-overlay-host.component.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-overlay-host.component.js +4 -3
- package/dist/app/panels/a11y/a11y-panel.component.d.ts +4 -1
- package/dist/app/panels/a11y/a11y-panel.component.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-panel.component.js +32 -54
- package/dist/app/panels/a11y/a11y-score.component.d.ts +8 -3
- package/dist/app/panels/a11y/a11y-score.component.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-score.component.js +19 -35
- package/dist/app/panels/a11y/a11y-sr-overlay.component.js +2 -2
- package/dist/app/panels/a11y/a11y-sr.component.js +2 -2
- package/dist/app/panels/a11y/a11y-summary.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-summary.js +8 -1
- package/dist/app/panels/a11y/a11y-tree.component.js +2 -2
- package/dist/app/panels/a11y/a11y-violations.component.d.ts +23 -2
- package/dist/app/panels/a11y/a11y-violations.component.d.ts.map +1 -1
- package/dist/app/panels/a11y/a11y-violations.component.js +104 -89
- package/dist/app/panels/a11y/severity.d.ts +9 -0
- package/dist/app/panels/a11y/severity.d.ts.map +1 -0
- package/dist/app/panels/a11y/severity.js +12 -0
- package/dist/app/panels/controls/controls-plugin.d.ts.map +1 -1
- package/dist/app/panels/controls/controls-plugin.js +1 -2
- package/dist/app/panels/controls/non-editable-input-types.d.ts +9 -1
- package/dist/app/panels/controls/non-editable-input-types.d.ts.map +1 -1
- package/dist/app/panels/controls/non-editable-input-types.js +18 -0
- package/dist/app/panels/controls/prism-controls-panel.component.d.ts +2 -1
- package/dist/app/panels/controls/prism-controls-panel.component.d.ts.map +1 -1
- package/dist/app/panels/controls/prism-controls-panel.component.js +77 -59
- package/dist/app/panels/events/events-plugin.d.ts.map +1 -1
- package/dist/app/panels/events/events-plugin.js +1 -2
- package/dist/app/panels/events/prism-events-panel.component.d.ts +2 -0
- package/dist/app/panels/events/prism-events-panel.component.d.ts.map +1 -1
- package/dist/app/panels/events/prism-events-panel.component.js +20 -7
- package/dist/app/panels/events/prism-json-node.utils.d.ts +6 -0
- package/dist/app/panels/events/prism-json-node.utils.d.ts.map +1 -1
- package/dist/app/panels/events/prism-json-node.utils.js +8 -0
- package/dist/app/panels/panel-host/addon-panels.d.ts +11 -0
- package/dist/app/panels/panel-host/addon-panels.d.ts.map +1 -0
- package/dist/app/panels/panel-host/addon-panels.js +12 -0
- package/dist/app/panels/panel-host/panel-badge.d.ts +22 -0
- package/dist/app/panels/panel-host/panel-badge.d.ts.map +1 -1
- package/dist/app/panels/panel-host/panel-badge.js +56 -11
- package/dist/app/panels/panel-host/prism-panel-host.component.d.ts +4 -1
- package/dist/app/panels/panel-host/prism-panel-host.component.d.ts.map +1 -1
- package/dist/app/panels/panel-host/prism-panel-host.component.js +36 -70
- package/dist/app/pseudo/pseudo-state-marker.d.ts +32 -10
- package/dist/app/pseudo/pseudo-state-marker.d.ts.map +1 -1
- package/dist/app/pseudo/pseudo-state-marker.js +83 -67
- package/dist/app/pseudo/pseudo-targets.d.ts +11 -0
- package/dist/app/pseudo/pseudo-targets.d.ts.map +1 -0
- package/dist/app/pseudo/pseudo-targets.js +46 -0
- package/dist/app/pseudo/state-fit.d.ts +28 -0
- package/dist/app/pseudo/state-fit.d.ts.map +1 -0
- package/dist/app/pseudo/state-fit.js +97 -0
- package/dist/app/renderer/composition.d.ts +20 -0
- package/dist/app/renderer/composition.d.ts.map +1 -0
- package/dist/app/renderer/composition.js +26 -0
- package/dist/app/renderer/input-bindings.d.ts +28 -0
- package/dist/app/renderer/input-bindings.d.ts.map +1 -0
- package/dist/app/renderer/input-bindings.js +42 -0
- package/dist/app/renderer/known-inputs.d.ts +8 -1
- package/dist/app/renderer/known-inputs.d.ts.map +1 -1
- package/dist/app/renderer/known-inputs.js +13 -5
- package/dist/app/renderer/prism-renderer.component.d.ts +18 -4
- package/dist/app/renderer/prism-renderer.component.d.ts.map +1 -1
- package/dist/app/renderer/prism-renderer.component.js +78 -44
- package/dist/app/renderer/projectable-content.d.ts +8 -1
- package/dist/app/renderer/projectable-content.d.ts.map +1 -1
- package/dist/app/renderer/projectable-content.js +40 -29
- package/dist/app/renderer/rendered-key.d.ts +20 -6
- package/dist/app/renderer/rendered-key.d.ts.map +1 -1
- package/dist/app/renderer/rendered-key.js +25 -8
- package/dist/app/renderer/snippet-generator.d.ts +14 -2
- package/dist/app/renderer/snippet-generator.d.ts.map +1 -1
- package/dist/app/renderer/snippet-generator.js +138 -81
- package/dist/app/services/navigation-item.d.ts +10 -0
- package/dist/app/services/navigation-item.d.ts.map +1 -0
- package/dist/app/services/navigation-item.js +20 -0
- package/dist/app/services/navigation-item.types.d.ts +8 -0
- package/dist/app/services/navigation-item.types.d.ts.map +1 -1
- package/dist/app/services/prism-layout.service.d.ts +12 -0
- package/dist/app/services/prism-layout.service.d.ts.map +1 -1
- package/dist/app/services/prism-layout.service.js +17 -7
- package/dist/app/services/prism-manifest.service.d.ts +4 -0
- package/dist/app/services/prism-manifest.service.d.ts.map +1 -1
- package/dist/app/services/prism-manifest.service.js +4 -0
- package/dist/app/services/prism-navigation.service.d.ts +12 -0
- package/dist/app/services/prism-navigation.service.d.ts.map +1 -1
- package/dist/app/services/prism-navigation.service.js +85 -19
- package/dist/app/services/prism-panel.service.d.ts +7 -3
- package/dist/app/services/prism-panel.service.d.ts.map +1 -1
- package/dist/app/services/prism-panel.service.js +13 -4
- package/dist/app/services/prism-pseudo-state.service.d.ts +59 -14
- package/dist/app/services/prism-pseudo-state.service.d.ts.map +1 -1
- package/dist/app/services/prism-pseudo-state.service.js +86 -29
- package/dist/app/services/prism-renderer.service.d.ts +23 -0
- package/dist/app/services/prism-renderer.service.d.ts.map +1 -1
- package/dist/app/services/prism-renderer.service.js +77 -8
- package/dist/app/services/prism-search.service.d.ts +4 -0
- package/dist/app/services/prism-search.service.d.ts.map +1 -1
- package/dist/app/services/prism-search.service.js +29 -6
- package/dist/app/services/prism-theme.service.d.ts +11 -3
- package/dist/app/services/prism-theme.service.d.ts.map +1 -1
- package/dist/app/services/prism-theme.service.js +27 -19
- package/dist/app/services/prism-url-state.service.d.ts.map +1 -1
- package/dist/app/services/prism-url-state.service.js +81 -12
- package/dist/app/shared/badge.types.d.ts +7 -0
- package/dist/app/shared/badge.types.d.ts.map +1 -0
- package/dist/app/shared/badge.types.js +9 -0
- package/dist/app/shared/brand-mark.d.ts +35 -0
- package/dist/app/shared/brand-mark.d.ts.map +1 -0
- package/dist/app/shared/brand-mark.js +52 -0
- package/dist/app/shared/metric-bar.d.ts +6 -0
- package/dist/app/shared/metric-bar.d.ts.map +1 -0
- package/dist/app/shared/metric-bar.js +7 -0
- package/dist/app/shared/prism-badge.component.d.ts +21 -0
- package/dist/app/shared/prism-badge.component.d.ts.map +1 -0
- package/dist/app/shared/prism-badge.component.js +68 -0
- package/dist/app/shared/prism-button.component.d.ts +12 -0
- package/dist/app/shared/prism-button.component.d.ts.map +1 -0
- package/dist/app/shared/prism-button.component.js +28 -0
- package/dist/app/shared/prism-icon-button.component.d.ts +17 -0
- package/dist/app/shared/prism-icon-button.component.d.ts.map +1 -0
- package/dist/app/shared/prism-icon-button.component.js +37 -0
- package/dist/app/shared/prism-list-row.component.d.ts +17 -0
- package/dist/app/shared/prism-list-row.component.d.ts.map +1 -0
- package/dist/app/shared/prism-list-row.component.js +57 -0
- package/dist/app/shared/prism-logo.component.d.ts +24 -0
- package/dist/app/shared/prism-logo.component.d.ts.map +1 -0
- package/dist/app/shared/prism-logo.component.js +77 -0
- package/dist/app/shared/prism-metric-badge.component.d.ts +9 -4
- package/dist/app/shared/prism-metric-badge.component.d.ts.map +1 -1
- package/dist/app/shared/prism-metric-badge.component.js +33 -12
- package/dist/app/shared/prism-metric-card.component.d.ts +30 -0
- package/dist/app/shared/prism-metric-card.component.d.ts.map +1 -0
- package/dist/app/shared/prism-metric-card.component.js +111 -0
- package/dist/app/shared/prism-panel-toolbar.component.d.ts +13 -0
- package/dist/app/shared/prism-panel-toolbar.component.d.ts.map +1 -0
- package/dist/app/shared/prism-panel-toolbar.component.js +28 -0
- package/dist/app/shared/prism-segmented.component.d.ts +25 -0
- package/dist/app/shared/prism-segmented.component.d.ts.map +1 -0
- package/dist/app/shared/prism-segmented.component.js +77 -0
- package/dist/app/shared/prism-tabs.component.d.ts +44 -0
- package/dist/app/shared/prism-tabs.component.d.ts.map +1 -0
- package/dist/app/shared/prism-tabs.component.js +134 -0
- package/dist/app/shared/roving-focus.d.ts +13 -0
- package/dist/app/shared/roving-focus.d.ts.map +1 -0
- package/dist/app/shared/roving-focus.js +34 -0
- package/dist/app/shell/prism-shell.component.d.ts +13 -0
- package/dist/app/shell/prism-shell.component.d.ts.map +1 -1
- package/dist/app/shell/prism-shell.component.js +57 -28
- package/dist/app/shell/should-select-first.d.ts +17 -0
- package/dist/app/shell/should-select-first.d.ts.map +1 -0
- package/dist/app/shell/should-select-first.js +13 -0
- package/dist/app/sidebar/navigation-decorations.d.ts +23 -1
- package/dist/app/sidebar/navigation-decorations.d.ts.map +1 -1
- package/dist/app/sidebar/navigation-decorations.js +33 -2
- package/dist/app/sidebar/prism-sidebar.component.d.ts +5 -15
- package/dist/app/sidebar/prism-sidebar.component.d.ts.map +1 -1
- package/dist/app/sidebar/prism-sidebar.component.js +89 -77
- package/dist/app/theme/deprecated-tokens.d.ts +15 -0
- package/dist/app/theme/deprecated-tokens.d.ts.map +1 -0
- package/dist/app/theme/deprecated-tokens.js +22 -0
- package/dist/app/theme/favicon.d.ts +3 -0
- package/dist/app/theme/favicon.d.ts.map +1 -0
- package/dist/app/theme/favicon.js +3 -0
- package/dist/app/theme/prism-default-theme.d.ts.map +1 -1
- package/dist/app/theme/prism-default-theme.js +122 -66
- package/dist/app/theme/resolve-theme-tokens.d.ts +29 -0
- package/dist/app/theme/resolve-theme-tokens.d.ts.map +1 -0
- package/dist/app/theme/resolve-theme-tokens.js +43 -0
- package/dist/app/variant-ribbon/prism-variant-ribbon.component.d.ts +4 -7
- package/dist/app/variant-ribbon/prism-variant-ribbon.component.d.ts.map +1 -1
- package/dist/app/variant-ribbon/prism-variant-ribbon.component.js +31 -69
- package/dist/app/view-tab-bar/next-view-id.d.ts +7 -1
- package/dist/app/view-tab-bar/next-view-id.d.ts.map +1 -1
- package/dist/app/view-tab-bar/next-view-id.js +9 -1
- package/dist/app/view-tab-bar/panel-inputs.d.ts +28 -0
- package/dist/app/view-tab-bar/panel-inputs.d.ts.map +1 -0
- package/dist/app/view-tab-bar/panel-inputs.js +41 -0
- package/dist/app/view-tab-bar/prism-view-panel-host.component.d.ts +2 -3
- package/dist/app/view-tab-bar/prism-view-panel-host.component.d.ts.map +1 -1
- package/dist/app/view-tab-bar/prism-view-panel-host.component.js +9 -9
- package/dist/app/view-tab-bar/prism-view-tab-bar.component.d.ts +6 -0
- package/dist/app/view-tab-bar/prism-view-tab-bar.component.d.ts.map +1 -1
- package/dist/app/view-tab-bar/prism-view-tab-bar.component.js +22 -29
- package/dist/builder/config-loader/deprecated-options.d.ts +9 -0
- package/dist/builder/config-loader/deprecated-options.d.ts.map +1 -0
- package/dist/builder/config-loader/deprecated-options.js +34 -0
- package/dist/builder/manifest/composition-wrapper.generator.d.ts +14 -0
- package/dist/builder/manifest/composition-wrapper.generator.d.ts.map +1 -0
- package/dist/builder/manifest/composition-wrapper.generator.js +66 -0
- package/dist/builder/manifest/host-parser.d.ts +2 -0
- package/dist/builder/manifest/host-parser.d.ts.map +1 -1
- package/dist/builder/manifest/host-parser.js +9 -4
- package/dist/builder/manifest/manifest-imports.d.ts +34 -0
- package/dist/builder/manifest/manifest-imports.d.ts.map +1 -0
- package/dist/builder/manifest/manifest-imports.js +91 -0
- package/dist/builder/manifest/runtime-manifest.generator.d.ts +13 -0
- package/dist/builder/manifest/runtime-manifest.generator.d.ts.map +1 -1
- package/dist/builder/manifest/runtime-manifest.generator.js +137 -65
- package/dist/builder/manifest/selector-element.d.ts +16 -0
- package/dist/builder/manifest/selector-element.d.ts.map +1 -0
- package/dist/builder/manifest/selector-element.js +46 -0
- package/dist/builder/manifest/template-literal.d.ts +3 -0
- package/dist/builder/manifest/template-literal.d.ts.map +1 -0
- package/dist/builder/manifest/template-literal.js +4 -0
- package/dist/builder/plugin-runner/plugin-runner.d.ts.map +1 -1
- package/dist/builder/plugin-runner/plugin-runner.js +29 -26
- package/dist/builder/scanner/api/angular-decorators.d.ts +84 -0
- package/dist/builder/scanner/api/angular-decorators.d.ts.map +1 -0
- package/dist/builder/scanner/api/angular-decorators.js +157 -0
- package/dist/builder/scanner/api/component-api.extractor.d.ts +13 -0
- package/dist/builder/scanner/api/component-api.extractor.d.ts.map +1 -0
- package/dist/builder/scanner/api/component-api.extractor.js +104 -0
- package/dist/builder/scanner/api/doc-tags.d.ts +13 -0
- package/dist/builder/scanner/api/doc-tags.d.ts.map +1 -0
- package/dist/builder/scanner/api/doc-tags.js +101 -0
- package/dist/builder/scanner/api/export-index.d.ts +18 -0
- package/dist/builder/scanner/api/export-index.d.ts.map +1 -0
- package/dist/builder/scanner/api/export-index.js +22 -0
- package/dist/builder/scanner/api/member.extractor.d.ts +90 -0
- package/dist/builder/scanner/api/member.extractor.d.ts.map +1 -0
- package/dist/builder/scanner/api/member.extractor.js +270 -0
- package/dist/builder/scanner/api/pipe-api.extractor.d.ts +12 -0
- package/dist/builder/scanner/api/pipe-api.extractor.d.ts.map +1 -0
- package/dist/builder/scanner/api/pipe-api.extractor.js +52 -0
- package/dist/builder/scanner/api/service-api.extractor.d.ts +14 -0
- package/dist/builder/scanner/api/service-api.extractor.d.ts.map +1 -0
- package/dist/builder/scanner/api/service-api.extractor.js +119 -0
- package/dist/builder/scanner/api/setup.reader.d.ts +26 -0
- package/dist/builder/scanner/api/setup.reader.d.ts.map +1 -0
- package/dist/builder/scanner/api/setup.reader.js +89 -0
- package/dist/builder/scanner/api/type-collector.d.ts +24 -0
- package/dist/builder/scanner/api/type-collector.d.ts.map +1 -0
- package/dist/builder/scanner/api/type-collector.js +211 -0
- package/dist/builder/scanner/ast-utils.d.ts +8 -0
- package/dist/builder/scanner/ast-utils.d.ts.map +1 -1
- package/dist/builder/scanner/ast-utils.js +37 -1
- package/dist/builder/scanner/class-hierarchy.d.ts +5 -3
- package/dist/builder/scanner/class-hierarchy.d.ts.map +1 -1
- package/dist/builder/scanner/class-hierarchy.js +12 -6
- package/dist/builder/scanner/component.scanner.d.ts +60 -6
- package/dist/builder/scanner/component.scanner.d.ts.map +1 -1
- package/dist/builder/scanner/component.scanner.js +229 -58
- package/dist/builder/scanner/composition/compose-template.d.ts +36 -0
- package/dist/builder/scanner/composition/compose-template.d.ts.map +1 -0
- package/dist/builder/scanner/composition/compose-template.js +187 -0
- package/dist/builder/scanner/composition/declarables.d.ts +54 -0
- package/dist/builder/scanner/composition/declarables.d.ts.map +1 -0
- package/dist/builder/scanner/composition/declarables.js +182 -0
- package/dist/builder/scanner/composition/match-declarables.d.ts +43 -0
- package/dist/builder/scanner/composition/match-declarables.d.ts.map +1 -0
- package/dist/builder/scanner/composition/match-declarables.js +131 -0
- package/dist/builder/scanner/composition/read-composition.d.ts +77 -0
- package/dist/builder/scanner/composition/read-composition.d.ts.map +1 -0
- package/dist/builder/scanner/composition/read-composition.js +302 -0
- package/dist/builder/scanner/composition/template-elements.d.ts +12 -0
- package/dist/builder/scanner/composition/template-elements.d.ts.map +1 -0
- package/dist/builder/scanner/composition/template-elements.js +41 -0
- package/dist/builder/scanner/entry-point-discovery.d.ts +5 -0
- package/dist/builder/scanner/entry-point-discovery.d.ts.map +1 -1
- package/dist/builder/scanner/entry-point-discovery.js +14 -0
- package/dist/builder/scanner/entry-point.scanner.d.ts +3 -1
- package/dist/builder/scanner/entry-point.scanner.d.ts.map +1 -1
- package/dist/builder/scanner/entry-point.scanner.js +7 -6
- package/dist/builder/scanner/index.d.ts +4 -0
- package/dist/builder/scanner/index.d.ts.map +1 -1
- package/dist/builder/scanner/index.js +2 -0
- package/dist/builder/scanner/input.extractor.d.ts +31 -2
- package/dist/builder/scanner/input.extractor.d.ts.map +1 -1
- package/dist/builder/scanner/input.extractor.js +73 -17
- package/dist/builder/scanner/pipe.scanner.d.ts +29 -0
- package/dist/builder/scanner/pipe.scanner.d.ts.map +1 -0
- package/dist/builder/scanner/pipe.scanner.js +65 -0
- package/dist/builder/scanner/pseudo-states.d.ts +1 -0
- package/dist/builder/scanner/pseudo-states.d.ts.map +1 -1
- package/dist/builder/scanner/pseudo-states.js +1 -1
- package/dist/builder/scanner/scanner.d.ts +27 -3
- package/dist/builder/scanner/scanner.d.ts.map +1 -1
- package/dist/builder/scanner/scanner.js +68 -24
- package/dist/builder/scanner/service/angular-decorators.d.ts +80 -0
- package/dist/builder/scanner/service/angular-decorators.d.ts.map +1 -0
- package/dist/builder/scanner/service/angular-decorators.js +154 -0
- package/dist/builder/scanner/service/doc-tags.d.ts +13 -0
- package/dist/builder/scanner/service/doc-tags.d.ts.map +1 -0
- package/dist/builder/scanner/service/doc-tags.js +97 -0
- package/dist/builder/scanner/service/export-index.d.ts +18 -0
- package/dist/builder/scanner/service/export-index.d.ts.map +1 -0
- package/dist/builder/scanner/service/export-index.js +22 -0
- package/dist/builder/scanner/service/member.extractor.d.ts +65 -0
- package/dist/builder/scanner/service/member.extractor.d.ts.map +1 -0
- package/dist/builder/scanner/service/member.extractor.js +216 -0
- package/dist/builder/scanner/service/pipe-api.extractor.d.ts +12 -0
- package/dist/builder/scanner/service/pipe-api.extractor.d.ts.map +1 -0
- package/dist/builder/scanner/service/pipe-api.extractor.js +72 -0
- package/dist/builder/scanner/service/service-api.extractor.d.ts +14 -0
- package/dist/builder/scanner/service/service-api.extractor.d.ts.map +1 -0
- package/dist/builder/scanner/service/service-api.extractor.js +119 -0
- package/dist/builder/scanner/service/setup.reader.d.ts +26 -0
- package/dist/builder/scanner/service/setup.reader.d.ts.map +1 -0
- package/dist/builder/scanner/service/setup.reader.js +89 -0
- package/dist/builder/scanner/service/type-collector.d.ts +23 -0
- package/dist/builder/scanner/service/type-collector.d.ts.map +1 -0
- package/dist/builder/scanner/service/type-collector.js +210 -0
- package/dist/builder/scanner/service.scanner.d.ts +26 -0
- package/dist/builder/scanner/service.scanner.d.ts.map +1 -0
- package/dist/builder/scanner/service.scanner.js +61 -0
- package/dist/builder/scanner/showcase-diagnostics.d.ts +60 -1
- package/dist/builder/scanner/showcase-diagnostics.d.ts.map +1 -1
- package/dist/builder/scanner/showcase-diagnostics.js +123 -10
- package/dist/builder/scanner/showcase-states.d.ts +17 -0
- package/dist/builder/scanner/showcase-states.d.ts.map +1 -0
- package/dist/builder/scanner/showcase-states.js +58 -0
- package/dist/builder/scanner/source-file-cache.d.ts +26 -0
- package/dist/builder/scanner/source-file-cache.d.ts.map +1 -0
- package/dist/builder/scanner/source-file-cache.js +60 -0
- package/dist/builder/shared/prism-pipeline.d.ts +6 -0
- package/dist/builder/shared/prism-pipeline.d.ts.map +1 -1
- package/dist/builder/shared/prism-pipeline.js +71 -18
- package/dist/decorator/index.d.ts +1 -1
- package/dist/decorator/index.d.ts.map +1 -1
- package/dist/decorator/showcase.types.d.ts +102 -9
- package/dist/decorator/showcase.types.d.ts.map +1 -1
- package/dist/plugin/index.d.ts +6 -1
- package/dist/plugin/index.d.ts.map +1 -1
- package/dist/plugin/index.js +4 -0
- package/dist/plugin/pipe.types.d.ts +36 -0
- package/dist/plugin/pipe.types.d.ts.map +1 -0
- package/dist/plugin/pipe.types.js +1 -0
- package/dist/plugin/plugin.types.d.ts +184 -8
- package/dist/plugin/plugin.types.d.ts.map +1 -1
- package/dist/plugin/service.types.d.ts +124 -0
- package/dist/plugin/service.types.d.ts.map +1 -0
- package/dist/plugin/service.types.js +1 -0
- package/dist/plugin/status.d.ts +27 -0
- package/dist/plugin/status.d.ts.map +1 -0
- package/dist/plugin/status.js +26 -0
- package/dist/shared/composition.d.ts +30 -0
- package/dist/shared/composition.d.ts.map +1 -0
- package/dist/shared/composition.js +29 -0
- package/dist/shared/pseudo-state.type.d.ts +2 -1
- package/dist/shared/pseudo-state.type.d.ts.map +1 -1
- package/dist/shared/void-elements.d.ts +3 -0
- package/dist/shared/void-elements.d.ts.map +1 -0
- package/dist/shared/void-elements.js +2 -0
- package/package.json +1 -1
- package/src/builder/build/schema.json +6 -6
- package/src/builder/serve/schema.json +6 -6
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import { computed, inject, Injectable, signal } from '@angular/core';
|
|
1
|
+
import { computed, effect, inject, Injectable, signal, untracked } from '@angular/core';
|
|
2
|
+
import { COMPOSITION_SUBJECT_ATTR } from '../../shared/composition.js';
|
|
3
|
+
import { activeCase } from '../renderer/composition.js';
|
|
2
4
|
import { PrismNavigationService } from './prism-navigation.service.js';
|
|
3
5
|
import * as i0 from "@angular/core";
|
|
4
6
|
export function computeVariantState(comp, index, options = {}) {
|
|
@@ -31,14 +33,32 @@ export function computeVariantState(comp, index, options = {}) {
|
|
|
31
33
|
...defaults,
|
|
32
34
|
...filteredVariantInputs
|
|
33
35
|
};
|
|
34
|
-
|
|
35
|
-
|
|
36
|
+
const hostContent = directiveHostContent(comp, index);
|
|
37
|
+
if (hostContent !== undefined) {
|
|
38
|
+
values['__prismContent__'] = hostContent;
|
|
36
39
|
}
|
|
37
40
|
return {
|
|
38
41
|
values,
|
|
39
|
-
activeContent: comp
|
|
42
|
+
activeContent: projectedContent(comp, index)
|
|
40
43
|
};
|
|
41
44
|
}
|
|
45
|
+
/**
|
|
46
|
+
* The text `content` the `__PrismHost` of a directive renders through `__prismContent__`, `undefined` for a variant
|
|
47
|
+
* without content, a component, or a composed variant, whose template holds the content and whose wrapper does not
|
|
48
|
+
* declare `__prismContent__`.
|
|
49
|
+
*/
|
|
50
|
+
function directiveHostContent(comp, index) {
|
|
51
|
+
const content = comp.meta.showcaseConfig.variants?.[index]?.content;
|
|
52
|
+
if (!comp.meta.componentMeta.isDirective || !content || activeCase(comp, index))
|
|
53
|
+
return undefined;
|
|
54
|
+
return typeof content === 'string' ? content : '';
|
|
55
|
+
}
|
|
56
|
+
/** The `content` the renderer projects into a component, `undefined` for a directive and for a composed variant. */
|
|
57
|
+
function projectedContent(comp, index) {
|
|
58
|
+
if (comp.meta.componentMeta.isDirective || activeCase(comp, index))
|
|
59
|
+
return undefined;
|
|
60
|
+
return comp.meta.showcaseConfig.variants?.[index]?.content;
|
|
61
|
+
}
|
|
42
62
|
function valuesEqual(a, b) {
|
|
43
63
|
if (a === b)
|
|
44
64
|
return true;
|
|
@@ -57,12 +77,32 @@ export class PrismRendererService {
|
|
|
57
77
|
navigationService = inject(PrismNavigationService);
|
|
58
78
|
activeVariantIndex = signal(0, /* @ts-ignore */
|
|
59
79
|
...(ngDevMode ? [{ debugName: "activeVariantIndex" }] : /* istanbul ignore next */ []));
|
|
80
|
+
/**
|
|
81
|
+
* Position in `ShowcaseConfig.states` of the component-level state on the
|
|
82
|
+
* canvas, `null` for none. Part of the addressed cell next to the variant:
|
|
83
|
+
* it survives a variant change and goes with the component.
|
|
84
|
+
*/
|
|
85
|
+
activeStateIndex = signal(null, /* @ts-ignore */
|
|
86
|
+
...(ngDevMode ? [{ debugName: "activeStateIndex" }] : /* istanbul ignore next */ []));
|
|
60
87
|
inputValues = signal({}, /* @ts-ignore */
|
|
61
88
|
...(ngDevMode ? [{ debugName: "inputValues" }] : /* istanbul ignore next */ []));
|
|
62
89
|
activeContent = signal(undefined, /* @ts-ignore */
|
|
63
90
|
...(ngDevMode ? [{ debugName: "activeContent" }] : /* istanbul ignore next */ []));
|
|
64
91
|
renderedElement = signal(null, /* @ts-ignore */
|
|
65
92
|
...(ngDevMode ? [{ debugName: "renderedElement" }] : /* istanbul ignore next */ []));
|
|
93
|
+
/**
|
|
94
|
+
* The element of the showcased component or directive in what the canvas
|
|
95
|
+
* renders: in a composition the one the wrapper marks, else the rendered
|
|
96
|
+
* element itself. `null` while nothing is rendered. Since 22.7.0.
|
|
97
|
+
*/
|
|
98
|
+
subjectElement = computed(() => {
|
|
99
|
+
const root = this.renderedElement();
|
|
100
|
+
if (!root)
|
|
101
|
+
return null;
|
|
102
|
+
const selector = `[${COMPOSITION_SUBJECT_ATTR}]`;
|
|
103
|
+
return root.matches(selector) ? root : (root.querySelector(selector) ?? root);
|
|
104
|
+
}, /* @ts-ignore */
|
|
105
|
+
...(ngDevMode ? [{ debugName: "subjectElement" }] : /* istanbul ignore next */ []));
|
|
66
106
|
dirtyInputCount = computed(() => {
|
|
67
107
|
const comp = this.navigationService.activeComponent();
|
|
68
108
|
if (!comp)
|
|
@@ -78,20 +118,45 @@ export class PrismRendererService {
|
|
|
78
118
|
return count;
|
|
79
119
|
}, /* @ts-ignore */
|
|
80
120
|
...(ngDevMode ? [{ debugName: "dirtyInputCount" }] : /* istanbul ignore next */ []));
|
|
121
|
+
/** The component the variant, the state and the inputs belong to, `null` before the first. */
|
|
81
122
|
_lastClassName = null;
|
|
123
|
+
constructor() {
|
|
124
|
+
// The variant and the state go with the component in every view, so the reset on a switch follows
|
|
125
|
+
// navigation, not the renderer: the shell mounts `<prism-renderer>` in the Playground only, and the Overview
|
|
126
|
+
// keeps its view when the sidebar picks another component. A root effect, created before the URL service's,
|
|
127
|
+
// so it runs first in the same flush and the URL never sees the previous component's cell on the new one.
|
|
128
|
+
effect(() => {
|
|
129
|
+
const comp = this.navigationService.activeComponent();
|
|
130
|
+
if (comp)
|
|
131
|
+
untracked(() => this.reconcileForComponent(comp));
|
|
132
|
+
});
|
|
133
|
+
}
|
|
82
134
|
resetForComponent(comp) {
|
|
83
135
|
this._lastClassName = comp.meta.className;
|
|
84
136
|
this.activeVariantIndex.set(0);
|
|
137
|
+
this.activeStateIndex.set(null);
|
|
85
138
|
this.applyVariant(0, comp);
|
|
86
139
|
}
|
|
140
|
+
/**
|
|
141
|
+
* Brings the variant, the state and the inputs in line with `comp`: a full
|
|
142
|
+
* reset when it is another component than the last one, else the variant
|
|
143
|
+
* and the state clamped to what it still declares and the inputs kept.
|
|
144
|
+
* Runs on every navigation and again when the renderer mounts, which then
|
|
145
|
+
* finds the component current and keeps what an Overview cell or a restore
|
|
146
|
+
* selected.
|
|
147
|
+
*/
|
|
87
148
|
reconcileForComponent(comp) {
|
|
88
149
|
const prev = this._lastClassName;
|
|
89
150
|
this._lastClassName = comp.meta.className;
|
|
90
151
|
if (prev !== null && prev !== comp.meta.className) {
|
|
91
152
|
this.activeVariantIndex.set(0);
|
|
153
|
+
this.activeStateIndex.set(null);
|
|
92
154
|
this.applyVariant(0, comp);
|
|
93
155
|
return;
|
|
94
156
|
}
|
|
157
|
+
const stateIndex = this.activeStateIndex();
|
|
158
|
+
if (stateIndex !== null && stateIndex >= (comp.meta.showcaseConfig.states?.length ?? 0))
|
|
159
|
+
this.activeStateIndex.set(null);
|
|
95
160
|
const variants = comp.meta.showcaseConfig.variants ?? [];
|
|
96
161
|
const maxIndex = Math.max(0, variants.length - 1);
|
|
97
162
|
const preservedIndex = Math.min(this.activeVariantIndex(), maxIndex);
|
|
@@ -113,11 +178,12 @@ export class PrismRendererService {
|
|
|
113
178
|
const variant = variants[preservedIndex];
|
|
114
179
|
const variantInputs = variant?.inputs ?? {};
|
|
115
180
|
const merged = { ...defaults, ...variantInputs, ...preserved };
|
|
116
|
-
|
|
117
|
-
|
|
181
|
+
const hostContent = directiveHostContent(comp, preservedIndex);
|
|
182
|
+
if (hostContent !== undefined && preserved['__prismContent__'] === undefined) {
|
|
183
|
+
merged['__prismContent__'] = hostContent;
|
|
118
184
|
}
|
|
119
185
|
this.inputValues.set(merged);
|
|
120
|
-
this.activeContent.set(comp
|
|
186
|
+
this.activeContent.set(projectedContent(comp, preservedIndex));
|
|
121
187
|
}
|
|
122
188
|
selectVariant(index) {
|
|
123
189
|
this.activeVariantIndex.set(index);
|
|
@@ -125,6 +191,9 @@ export class PrismRendererService {
|
|
|
125
191
|
if (comp)
|
|
126
192
|
this.applyVariant(index, comp);
|
|
127
193
|
}
|
|
194
|
+
selectState(index) {
|
|
195
|
+
this.activeStateIndex.set(index);
|
|
196
|
+
}
|
|
128
197
|
updateInput(name, value) {
|
|
129
198
|
this.inputValues.update((prev) => ({ ...prev, [name]: value }));
|
|
130
199
|
}
|
|
@@ -147,4 +216,4 @@ export class PrismRendererService {
|
|
|
147
216
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PrismRendererService, [{
|
|
148
217
|
type: Injectable,
|
|
149
218
|
args: [{ providedIn: 'root' }]
|
|
150
|
-
}],
|
|
219
|
+
}], () => [], null); })();
|
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
import type { StyleguidePage } from '../../plugin/page.types.js';
|
|
2
|
+
import type { RuntimePipe } from '../../plugin/pipe.types.js';
|
|
3
|
+
import type { RuntimeService } from '../../plugin/service.types.js';
|
|
2
4
|
import * as i0 from "@angular/core";
|
|
3
5
|
export declare class PrismSearchService {
|
|
4
6
|
private readonly manifestService;
|
|
5
7
|
readonly query: import("@angular/core").WritableSignal<string>;
|
|
6
8
|
readonly filteredComponents: import("@angular/core").Signal<import("../../index.js").RuntimeComponent[]>;
|
|
9
|
+
readonly filteredServices: import("@angular/core").Signal<RuntimeService[]>;
|
|
10
|
+
readonly filteredPipes: import("@angular/core").Signal<RuntimePipe[]>;
|
|
7
11
|
readonly filteredPages: import("@angular/core").Signal<StyleguidePage[]>;
|
|
8
12
|
search(q: string): void;
|
|
9
13
|
clear(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prism-search.service.d.ts","sourceRoot":"","sources":["../../../src/app/services/prism-search.service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"prism-search.service.d.ts","sourceRoot":"","sources":["../../../src/app/services/prism-search.service.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;;AAkBpE,qBACa,kBAAkB;IAC3B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAgC;IAEhE,QAAQ,CAAC,KAAK,iDAAc;IAE5B,QAAQ,CAAC,kBAAkB,8EAMxB;IAEH,QAAQ,CAAC,gBAAgB,mDAMtB;IAEH,QAAQ,CAAC,aAAa,gDAMnB;IAEH,QAAQ,CAAC,aAAa,mDAMnB;IAEH,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAIvB,KAAK,IAAI,IAAI;yCAzCJ,kBAAkB;;CA4C9B"}
|
|
@@ -1,6 +1,18 @@
|
|
|
1
1
|
import { computed, inject, Injectable, signal } from '@angular/core';
|
|
2
2
|
import { PrismManifestService } from './prism-manifest.service.js';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* Whether a showcased item matches a query that is already lowercased and
|
|
6
|
+
* trimmed: its title, category or tags, or one of `names`, the identifiers
|
|
7
|
+
* that only some kinds have (a service's class name, a pipe's class name and
|
|
8
|
+
* template name).
|
|
9
|
+
*/
|
|
10
|
+
function matchesQuery(q, config, names = []) {
|
|
11
|
+
return (config.title.toLowerCase().includes(q) ||
|
|
12
|
+
names.some((name) => name.toLowerCase().includes(q)) ||
|
|
13
|
+
(config.category?.toLowerCase().includes(q) ?? false) ||
|
|
14
|
+
(config.tags?.some((t) => t.toLowerCase().includes(q)) ?? false));
|
|
15
|
+
}
|
|
4
16
|
export class PrismSearchService {
|
|
5
17
|
manifestService = inject(PrismManifestService);
|
|
6
18
|
query = signal('', /* @ts-ignore */
|
|
@@ -10,14 +22,25 @@ export class PrismSearchService {
|
|
|
10
22
|
const all = this.manifestService.components();
|
|
11
23
|
if (!q)
|
|
12
24
|
return all;
|
|
13
|
-
return all.filter((comp) =>
|
|
14
|
-
const config = comp.meta.showcaseConfig;
|
|
15
|
-
return (config.title.toLowerCase().includes(q) ||
|
|
16
|
-
(config.category?.toLowerCase().includes(q) ?? false) ||
|
|
17
|
-
(config.tags?.some((t) => t.toLowerCase().includes(q)) ?? false));
|
|
18
|
-
});
|
|
25
|
+
return all.filter((comp) => matchesQuery(q, comp.meta.showcaseConfig));
|
|
19
26
|
}, /* @ts-ignore */
|
|
20
27
|
...(ngDevMode ? [{ debugName: "filteredComponents" }] : /* istanbul ignore next */ []));
|
|
28
|
+
filteredServices = computed(() => {
|
|
29
|
+
const q = this.query().toLowerCase().trim();
|
|
30
|
+
const all = this.manifestService.services();
|
|
31
|
+
if (!q)
|
|
32
|
+
return all;
|
|
33
|
+
return all.filter((service) => matchesQuery(q, service.meta.showcaseConfig, [service.meta.className]));
|
|
34
|
+
}, /* @ts-ignore */
|
|
35
|
+
...(ngDevMode ? [{ debugName: "filteredServices" }] : /* istanbul ignore next */ []));
|
|
36
|
+
filteredPipes = computed(() => {
|
|
37
|
+
const q = this.query().toLowerCase().trim();
|
|
38
|
+
const all = this.manifestService.pipes();
|
|
39
|
+
if (!q)
|
|
40
|
+
return all;
|
|
41
|
+
return all.filter((pipe) => matchesQuery(q, pipe.meta.showcaseConfig, [pipe.meta.className, pipe.meta.pipeName]));
|
|
42
|
+
}, /* @ts-ignore */
|
|
43
|
+
...(ngDevMode ? [{ debugName: "filteredPipes" }] : /* istanbul ignore next */ []));
|
|
21
44
|
filteredPages = computed(() => {
|
|
22
45
|
const q = this.query().toLowerCase().trim();
|
|
23
46
|
const all = this.manifestService.pages();
|
|
@@ -2,9 +2,17 @@ import * as i0 from "@angular/core";
|
|
|
2
2
|
export declare class PrismThemeService {
|
|
3
3
|
readonly theme: import("@angular/core").WritableSignal<"light" | "dark">;
|
|
4
4
|
readonly isDark: import("@angular/core").Signal<boolean>;
|
|
5
|
-
private
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
private readonly overrides;
|
|
6
|
+
/** Every token of the active mode, including the user's overrides. */
|
|
7
|
+
readonly appTokens: import("@angular/core").Signal<Record<string, string>>;
|
|
8
|
+
/**
|
|
9
|
+
* The dark set, for the header: since 22.7 it is a navy brand band in both
|
|
10
|
+
* themes. Bound as an inline style on the header host, so tokens composed
|
|
11
|
+
* from others (tints, status surfaces) are evaluated there again rather than
|
|
12
|
+
* inherited already resolved against the light theme.
|
|
13
|
+
*/
|
|
14
|
+
readonly headerTokens: import("@angular/core").Signal<Record<string, string>>;
|
|
15
|
+
private readonly warnedDeprecations;
|
|
8
16
|
constructor();
|
|
9
17
|
toggle(): void;
|
|
10
18
|
applyConfigOverrides(config: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prism-theme.service.d.ts","sourceRoot":"","sources":["../../../src/app/services/prism-theme.service.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"prism-theme.service.d.ts","sourceRoot":"","sources":["../../../src/app/services/prism-theme.service.ts"],"names":[],"mappings":";AAOA,qBACa,iBAAiB;IAC1B,QAAQ,CAAC,KAAK,2DAAoD;IAClE,QAAQ,CAAC,MAAM,0CAA2C;IAE1D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA8B;IAExD,sEAAsE;IACtE,QAAQ,CAAC,SAAS,yDAA6E;IAE/F;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,yDAAuE;IAE5F,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAqB;;IAaxD,MAAM,IAAI,IAAI;IAId,oBAAoB,CAAC,MAAM,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,IAAI;IAK/I,OAAO,CAAC,WAAW;IAcnB,OAAO,CAAC,YAAY;IAYpB,OAAO,CAAC,eAAe;yCAjEd,iBAAiB;;CA2E7B"}
|
|
@@ -1,16 +1,28 @@
|
|
|
1
1
|
import { computed, effect, Injectable, signal } from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { deprecatedTokenNotice } from '../theme/deprecated-tokens.js';
|
|
3
|
+
import { FAVICON_SVG_DATA_URI } from '../theme/favicon.js';
|
|
4
|
+
import { resolveThemeTokens } from '../theme/resolve-theme-tokens.js';
|
|
3
5
|
import * as i0 from "@angular/core";
|
|
4
6
|
const STORAGE_KEY = 'ng-prism-theme';
|
|
5
|
-
const FAVICON_DATA_URI = `data:image/x-icon;base64,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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///////wAA////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAQAAgAAAAAABAADAAAAAAAMAAMAAAAAAAwAA4AAAAAAHAADgAAAAAAcAAPAAAAAADwAA8AAAAAAPAAD4AAAAAB8AAPwAAAAAPwAA/AAAAAA/AAD+AAAAAH8AAP4AAAAAfwAA/wAAAAD/AAD/AAAAAP8AAP+AAAAB/wAA/8AAAAP/AAD/wAAAA/8AAP/gAAAH/wAA/+AAAAf/AAD/8AAAD/8AAP/wAAAP/wAA//gAAB//AAD//AAAP/8AAP/8AAA//wAA//4AAH//AAD//gAAf/8AAP//AAD//wAA//8AAP//AAD//4AB//8AAP//wAP//wAA///AA///AAD//+AH//8AAP//4Af//wAA///wD///AAD///AP//8AAP//+B///wAA///8P///AAD///w///8AAP///n///wAA////////AAD///////8AACgAAAAgAAAAQAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGYzzAWAAKoGgACqBoAAqgaAAKoGgACqBoAAqgaAAKoGgACqBqoA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`;
|
|
6
7
|
export class PrismThemeService {
|
|
7
8
|
theme = signal(this.readStoredTheme(), /* @ts-ignore */
|
|
8
9
|
...(ngDevMode ? [{ debugName: "theme" }] : /* istanbul ignore next */ []));
|
|
9
10
|
isDark = computed(() => this.theme() === 'dark', /* @ts-ignore */
|
|
10
11
|
...(ngDevMode ? [{ debugName: "isDark" }] : /* istanbul ignore next */ []));
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
overrides = signal({}, /* @ts-ignore */
|
|
13
|
+
...(ngDevMode ? [{ debugName: "overrides" }] : /* istanbul ignore next */ []));
|
|
14
|
+
/** Every token of the active mode, including the user's overrides. */
|
|
15
|
+
appTokens = computed(() => resolveThemeTokens(this.theme(), this.overrides()).tokens, /* @ts-ignore */
|
|
16
|
+
...(ngDevMode ? [{ debugName: "appTokens" }] : /* istanbul ignore next */ []));
|
|
17
|
+
/**
|
|
18
|
+
* The dark set, for the header: since 22.7 it is a navy brand band in both
|
|
19
|
+
* themes. Bound as an inline style on the header host, so tokens composed
|
|
20
|
+
* from others (tints, status surfaces) are evaluated there again rather than
|
|
21
|
+
* inherited already resolved against the light theme.
|
|
22
|
+
*/
|
|
23
|
+
headerTokens = computed(() => resolveThemeTokens('dark', this.overrides()).tokens, /* @ts-ignore */
|
|
24
|
+
...(ngDevMode ? [{ debugName: "headerTokens" }] : /* istanbul ignore next */ []));
|
|
25
|
+
warnedDeprecations = new Set();
|
|
14
26
|
constructor() {
|
|
15
27
|
this.applyFavicon();
|
|
16
28
|
effect(() => {
|
|
@@ -24,25 +36,21 @@ export class PrismThemeService {
|
|
|
24
36
|
this.theme.update((t) => (t === 'dark' ? 'light' : 'dark'));
|
|
25
37
|
}
|
|
26
38
|
applyConfigOverrides(config) {
|
|
27
|
-
this.
|
|
28
|
-
this.darkOverrides = config.darkTheme ?? {};
|
|
29
|
-
this.lightOverrides = config.lightTheme ?? {};
|
|
39
|
+
this.overrides.set({ theme: config.theme, darkTheme: config.darkTheme, lightTheme: config.lightTheme });
|
|
30
40
|
this.applyTokens();
|
|
31
41
|
}
|
|
32
42
|
applyTokens() {
|
|
33
|
-
const
|
|
34
|
-
const base = isDark ? PRISM_DARK_THEME : PRISM_LIGHT_THEME;
|
|
35
|
-
const specific = isDark ? this.darkOverrides : this.lightOverrides;
|
|
36
|
-
const merged = {
|
|
37
|
-
...PRISM_BASE_TOKENS,
|
|
38
|
-
...base,
|
|
39
|
-
...specific,
|
|
40
|
-
...this.configOverrides
|
|
41
|
-
};
|
|
43
|
+
const { tokens, deprecatedOverrides } = resolveThemeTokens(this.theme(), this.overrides());
|
|
42
44
|
const style = document.documentElement.style;
|
|
43
|
-
for (const [key, value] of Object.entries(
|
|
45
|
+
for (const [key, value] of Object.entries(tokens)) {
|
|
44
46
|
style.setProperty(key, value);
|
|
45
47
|
}
|
|
48
|
+
for (const token of deprecatedOverrides) {
|
|
49
|
+
if (this.warnedDeprecations.has(token))
|
|
50
|
+
continue;
|
|
51
|
+
this.warnedDeprecations.add(token);
|
|
52
|
+
console.warn(`[ng-prism] ${deprecatedTokenNotice(token)}`);
|
|
53
|
+
}
|
|
46
54
|
}
|
|
47
55
|
applyFavicon() {
|
|
48
56
|
let link = document.querySelector('link[rel="icon"]');
|
|
@@ -52,7 +60,7 @@ export class PrismThemeService {
|
|
|
52
60
|
document.head.appendChild(link);
|
|
53
61
|
}
|
|
54
62
|
link.type = 'image/svg+xml';
|
|
55
|
-
link.href =
|
|
63
|
+
link.href = FAVICON_SVG_DATA_URI;
|
|
56
64
|
}
|
|
57
65
|
readStoredTheme() {
|
|
58
66
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prism-url-state.service.d.ts","sourceRoot":"","sources":["../../../src/app/services/prism-url-state.service.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"prism-url-state.service.d.ts","sourceRoot":"","sources":["../../../src/app/services/prism-url-state.service.ts"],"names":[],"mappings":";AAoDA,qBACa,oBAAoB;IAC7B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAgC;IAChE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAkC;IACpE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAgC;IAChE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA6B;IAC1D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwB;IAC/C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoB;IAE7C,OAAO,CAAC,YAAY,CAAS;IAE7B,IAAI,IAAI,IAAI;IAsBZ,OAAO,CAAC,cAAc;IAyEtB,OAAO,CAAC,UAAU;yCAzGT,oBAAoB;;CAiJhC"}
|
|
@@ -6,12 +6,48 @@ import { PrismPanelService } from './prism-panel.service.js';
|
|
|
6
6
|
import { PrismRendererService } from './prism-renderer.service.js';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
const PARAM_COMPONENT = 'component';
|
|
9
|
+
const PARAM_SERVICE = 'service';
|
|
10
|
+
const PARAM_PIPE = 'pipe';
|
|
9
11
|
const PARAM_PAGE = 'page';
|
|
10
12
|
const PARAM_VARIANT = 'variant';
|
|
13
|
+
const PARAM_STATE = 'state';
|
|
11
14
|
const PARAM_VIEW = 'view';
|
|
12
15
|
const DEFAULT_VIEW = 'renderer';
|
|
13
16
|
const PARAM_PANEL = 'panel';
|
|
14
17
|
const DEFAULT_PANEL = 'controls';
|
|
18
|
+
/** The index a `variant` parameter addresses in a list of `count` variants, `0` for anything that is not one. */
|
|
19
|
+
function parseVariantIndex(param, count) {
|
|
20
|
+
if (param === null)
|
|
21
|
+
return 0;
|
|
22
|
+
const index = parseInt(param, 10);
|
|
23
|
+
return !Number.isNaN(index) && index >= 0 && index < count ? index : 0;
|
|
24
|
+
}
|
|
25
|
+
/** The index a `state` parameter addresses in a list of `count` states, `null` for anything that is not one. */
|
|
26
|
+
function parseStateIndex(param, count) {
|
|
27
|
+
if (param === null || !/^\d+$/.test(param))
|
|
28
|
+
return null;
|
|
29
|
+
const index = Number(param);
|
|
30
|
+
return index < count ? index : null;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* What a URL addresses, `null` for nothing. The same precedence as the restore,
|
|
34
|
+
* prefixed per kind so a component, a service and a pipe of one name still differ.
|
|
35
|
+
*/
|
|
36
|
+
function navKey(params) {
|
|
37
|
+
const component = params.get(PARAM_COMPONENT);
|
|
38
|
+
const service = params.get(PARAM_SERVICE);
|
|
39
|
+
const pipe = params.get(PARAM_PIPE);
|
|
40
|
+
const page = params.get(PARAM_PAGE);
|
|
41
|
+
if (component !== null)
|
|
42
|
+
return `${PARAM_COMPONENT}:${component}`;
|
|
43
|
+
if (service !== null)
|
|
44
|
+
return `${PARAM_SERVICE}:${service}`;
|
|
45
|
+
if (pipe !== null)
|
|
46
|
+
return `${PARAM_PIPE}:${pipe}`;
|
|
47
|
+
if (page !== null)
|
|
48
|
+
return `${PARAM_PAGE}:${page}`;
|
|
49
|
+
return null;
|
|
50
|
+
}
|
|
15
51
|
export class PrismUrlStateService {
|
|
16
52
|
manifestService = inject(PrismManifestService);
|
|
17
53
|
navigationService = inject(PrismNavigationService);
|
|
@@ -27,34 +63,60 @@ export class PrismUrlStateService {
|
|
|
27
63
|
effect(() => {
|
|
28
64
|
const item = this.navigationService.activeItem();
|
|
29
65
|
const variantIndex = this.rendererService.activeVariantIndex();
|
|
66
|
+
const stateIndex = this.rendererService.activeStateIndex();
|
|
30
67
|
const viewId = this.panelService.activeViewId();
|
|
31
68
|
const panelId = this.panelService.activePanelId();
|
|
32
69
|
if (this.suppressSync)
|
|
33
70
|
return;
|
|
34
|
-
this.writeToUrl(item, variantIndex, viewId, panelId);
|
|
71
|
+
this.writeToUrl(item, variantIndex, stateIndex, viewId, panelId);
|
|
35
72
|
}, { injector: this.injector });
|
|
36
73
|
window.addEventListener('popstate', () => this.restoreFromUrl());
|
|
37
74
|
}
|
|
38
75
|
restoreFromUrl() {
|
|
39
76
|
const params = new URLSearchParams(window.location.search);
|
|
40
77
|
const componentClassName = params.get(PARAM_COMPONENT);
|
|
78
|
+
const serviceClassName = params.get(PARAM_SERVICE);
|
|
79
|
+
const pipeClassName = params.get(PARAM_PIPE);
|
|
41
80
|
const pageTitle = params.get(PARAM_PAGE);
|
|
42
81
|
const variantParam = params.get(PARAM_VARIANT);
|
|
82
|
+
const stateParam = params.get(PARAM_STATE);
|
|
43
83
|
const viewId = params.get(PARAM_VIEW);
|
|
44
84
|
const panelId = params.get(PARAM_PANEL);
|
|
85
|
+
let stateIndex = null;
|
|
45
86
|
this.suppressSync = true;
|
|
46
87
|
try {
|
|
47
88
|
if (componentClassName) {
|
|
48
89
|
const comp = this.manifestService.components().find((c) => c.meta.className === componentClassName);
|
|
49
90
|
if (comp) {
|
|
91
|
+
const previousClassName = this.navigationService.activeComponent()?.meta.className;
|
|
50
92
|
this.navigationService.select(comp);
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
93
|
+
// Switching to another component resets the variant and the state
|
|
94
|
+
// once `PrismRendererService` follows the navigation, after this
|
|
95
|
+
// restore. Starting the component here makes it the current one
|
|
96
|
+
// before the indexes below are set, so that reset, and the renderer
|
|
97
|
+
// mounting it, keep them (a popstate between components). Not for
|
|
98
|
+
// the component already on screen: a popstate that addresses it (a
|
|
99
|
+
// hash link inside it fires one) must keep the control overrides.
|
|
100
|
+
if (previousClassName !== comp.meta.className) {
|
|
101
|
+
this.rendererService.resetForComponent(comp);
|
|
57
102
|
}
|
|
103
|
+
const variantIndex = parseVariantIndex(variantParam, comp.meta.showcaseConfig.variants?.length ?? 1);
|
|
104
|
+
if (variantIndex !== this.rendererService.activeVariantIndex()) {
|
|
105
|
+
this.rendererService.selectVariant(variantIndex);
|
|
106
|
+
}
|
|
107
|
+
stateIndex = parseStateIndex(stateParam, comp.meta.showcaseConfig.states?.length ?? 0);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
else if (serviceClassName) {
|
|
111
|
+
const service = this.manifestService.services().find((s) => s.meta.className === serviceClassName);
|
|
112
|
+
if (service) {
|
|
113
|
+
this.navigationService.selectService(service);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
else if (pipeClassName) {
|
|
117
|
+
const pipe = this.manifestService.pipes().find((p) => p.meta.className === pipeClassName);
|
|
118
|
+
if (pipe) {
|
|
119
|
+
this.navigationService.selectPipe(pipe);
|
|
58
120
|
}
|
|
59
121
|
}
|
|
60
122
|
else if (pageTitle) {
|
|
@@ -63,6 +125,7 @@ export class PrismUrlStateService {
|
|
|
63
125
|
this.navigationService.selectPage(page);
|
|
64
126
|
}
|
|
65
127
|
}
|
|
128
|
+
this.rendererService.selectState(stateIndex);
|
|
66
129
|
if (viewId) {
|
|
67
130
|
this.panelService.activeViewId.set(viewId);
|
|
68
131
|
}
|
|
@@ -74,7 +137,7 @@ export class PrismUrlStateService {
|
|
|
74
137
|
this.suppressSync = false;
|
|
75
138
|
}
|
|
76
139
|
}
|
|
77
|
-
writeToUrl(item, variantIndex, viewId, panelId) {
|
|
140
|
+
writeToUrl(item, variantIndex, stateIndex, viewId, panelId) {
|
|
78
141
|
// Built from scratch, never from the current search string: parameters the
|
|
79
142
|
// app does not own must not survive a navigation. `?capture=1` relies on
|
|
80
143
|
// this; the "capture flag" specs pin the guarantee.
|
|
@@ -84,6 +147,15 @@ export class PrismUrlStateService {
|
|
|
84
147
|
if (variantIndex > 0) {
|
|
85
148
|
params.set(PARAM_VARIANT, String(variantIndex));
|
|
86
149
|
}
|
|
150
|
+
if (stateIndex !== null) {
|
|
151
|
+
params.set(PARAM_STATE, String(stateIndex));
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
else if (item?.kind === 'service') {
|
|
155
|
+
params.set(PARAM_SERVICE, item.data.meta.className);
|
|
156
|
+
}
|
|
157
|
+
else if (item?.kind === 'pipe') {
|
|
158
|
+
params.set(PARAM_PIPE, item.data.meta.className);
|
|
87
159
|
}
|
|
88
160
|
else if (item?.kind === 'page') {
|
|
89
161
|
params.set(PARAM_PAGE, item.data.title);
|
|
@@ -98,10 +170,7 @@ export class PrismUrlStateService {
|
|
|
98
170
|
const newUrl = queryString ? `${window.location.pathname}?${queryString}` : window.location.pathname;
|
|
99
171
|
if (newUrl === window.location.pathname + window.location.search)
|
|
100
172
|
return;
|
|
101
|
-
|
|
102
|
-
const prevNavKey = currentParams.get(PARAM_COMPONENT) ?? currentParams.get(PARAM_PAGE);
|
|
103
|
-
const newNavKey = params.get(PARAM_COMPONENT) ?? params.get(PARAM_PAGE);
|
|
104
|
-
if (prevNavKey !== newNavKey) {
|
|
173
|
+
if (navKey(new URLSearchParams(window.location.search)) !== navKey(params)) {
|
|
105
174
|
window.history.pushState(null, '', newUrl);
|
|
106
175
|
}
|
|
107
176
|
else {
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { StatusTone } from '../../plugin/status.js';
|
|
2
|
+
/** Colour roles of `prism-badge`. */
|
|
3
|
+
export type BadgeTone = 'neutral' | 'primary' | 'success' | 'warn' | 'danger';
|
|
4
|
+
export type { StatusTone };
|
|
5
|
+
/** The badge tone that shows a status verdict. */
|
|
6
|
+
export declare function toneForStatus(status: StatusTone): BadgeTone;
|
|
7
|
+
//# sourceMappingURL=badge.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"badge.types.d.ts","sourceRoot":"","sources":["../../../src/app/shared/badge.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,qCAAqC;AACrC,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,QAAQ,CAAC;AAE9E,YAAY,EAAE,UAAU,EAAE,CAAC;AAQ3B,kDAAkD;AAClD,wBAAgB,aAAa,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,CAE3D"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The ng-prism symbol, the mark without the wordmark, as data.
|
|
3
|
+
*
|
|
4
|
+
* Kept as data rather than an SVG file because two consumers draw it with
|
|
5
|
+
* different gradient ids: the logo component renders one instance per place it
|
|
6
|
+
* appears (header and sidebar footer at the same time), and SVG gradient ids are
|
|
7
|
+
* document-global; the favicon serialises it once into a data URI. The geometry
|
|
8
|
+
* is copied verbatim from `docs/assets/brand/ng-prism-symbol.svg` (2048 × 1608
|
|
9
|
+
* canvas), which `brand-mark.spec.ts` checks, and must not be edited: the brand
|
|
10
|
+
* guide forbids reshaping the mark.
|
|
11
|
+
*/
|
|
12
|
+
export interface BrandMarkGradient {
|
|
13
|
+
id: string;
|
|
14
|
+
/** End points on the mark's canvas (`gradientUnits="userSpaceOnUse"`). */
|
|
15
|
+
x1: number;
|
|
16
|
+
y1: number;
|
|
17
|
+
x2: number;
|
|
18
|
+
y2: number;
|
|
19
|
+
stops: ReadonlyArray<readonly [offset: string, colour: string]>;
|
|
20
|
+
}
|
|
21
|
+
export interface BrandMarkFacet {
|
|
22
|
+
d: string;
|
|
23
|
+
/** A gradient id from {@link BRAND_MARK_GRADIENTS}, or a solid colour. */
|
|
24
|
+
gradient?: string;
|
|
25
|
+
colour?: string;
|
|
26
|
+
}
|
|
27
|
+
export declare const BRAND_MARK_GRADIENTS: readonly BrandMarkGradient[];
|
|
28
|
+
export declare const BRAND_MARK_FACETS: readonly BrandMarkFacet[];
|
|
29
|
+
/** The mark's bounding box on the kit canvas, trimmed to the facets. */
|
|
30
|
+
export declare const BRAND_MARK_VIEWBOX = "4 31 2036 1561";
|
|
31
|
+
/** The same box padded to a square, for icons the browser would otherwise letterbox. */
|
|
32
|
+
export declare const BRAND_MARK_SQUARE_VIEWBOX = "4 -206.5 2036 2036";
|
|
33
|
+
/** The mark as a standalone SVG document, with every gradient id prefixed. */
|
|
34
|
+
export declare function brandMarkSvg(idPrefix: string, viewBox: string): string;
|
|
35
|
+
//# sourceMappingURL=brand-mark.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brand-mark.d.ts","sourceRoot":"","sources":["../../../src/app/shared/brand-mark.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,MAAM,WAAW,iBAAiB;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,0EAA0E;IAC1E,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,aAAa,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACnE;AAED,MAAM,WAAW,cAAc;IAC3B,CAAC,EAAE,MAAM,CAAC;IACV,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,oBAAoB,EAAE,SAAS,iBAAiB,EAa5D,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,SAAS,cAAc,EAyBtD,CAAC;AAEF,wEAAwE;AACxE,eAAO,MAAM,kBAAkB,mBAAmB,CAAC;AAEnD,wFAAwF;AACxF,eAAO,MAAM,yBAAyB,uBAAuB,CAAC;AAE9D,8EAA8E;AAC9E,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAUtE"}
|