@nldd/design-system 0.8.49 → 0.8.51
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/dist/components/actions/button/button.styles.d.ts.map +1 -1
- package/dist/components/actions/button/button.styles.js +1 -0
- package/dist/components/actions/button/button.styles.js.map +1 -1
- package/dist/components/actions/icon-button/icon-button.styles.d.ts.map +1 -1
- package/dist/components/actions/icon-button/icon-button.styles.js +1 -0
- package/dist/components/actions/icon-button/icon-button.styles.js.map +1 -1
- package/dist/components/components.js +93 -86
- package/dist/components/content/code-viewer/code-viewer.d.ts +37 -0
- package/dist/components/content/code-viewer/code-viewer.d.ts.map +1 -1
- package/dist/components/content/code-viewer/code-viewer.i18n.d.ts +8 -0
- package/dist/components/content/code-viewer/code-viewer.i18n.d.ts.map +1 -0
- package/dist/components/content/code-viewer/code-viewer.i18n.js +7 -0
- package/dist/components/content/code-viewer/code-viewer.i18n.js.map +1 -0
- package/dist/components/content/code-viewer/code-viewer.js +104 -1
- package/dist/components/content/code-viewer/code-viewer.js.map +1 -1
- package/dist/components/content/code-viewer/code-viewer.styles.d.ts.map +1 -1
- package/dist/components/content/code-viewer/code-viewer.styles.js +112 -1
- package/dist/components/content/code-viewer/code-viewer.styles.js.map +1 -1
- package/dist/components/content/code-viewer/code-viewer.template.d.ts.map +1 -1
- package/dist/components/content/code-viewer/code-viewer.template.js +50 -3
- package/dist/components/content/code-viewer/code-viewer.template.js.map +1 -1
- package/dist/components/content/icon/icon-aliases.d.ts.map +1 -1
- package/dist/components/content/icon/icon-aliases.js +17 -0
- package/dist/components/content/icon/icon-aliases.js.map +1 -1
- package/dist/components/content/icon/icon-registry.d.ts.map +1 -1
- package/dist/components/content/icon/icon-registry.js +12 -0
- package/dist/components/content/icon/icon-registry.js.map +1 -1
- package/dist/components/content/image/image.d.ts +151 -0
- package/dist/components/content/image/image.d.ts.map +1 -0
- package/dist/components/content/image/image.i18n.d.ts +8 -0
- package/dist/components/content/image/image.i18n.d.ts.map +1 -0
- package/dist/components/content/image/image.i18n.js +7 -0
- package/dist/components/content/image/image.i18n.js.map +1 -0
- package/dist/components/content/image/image.js +320 -0
- package/dist/components/content/image/image.js.map +1 -0
- package/dist/components/content/image/image.styles.d.ts +2 -0
- package/dist/components/content/image/image.styles.d.ts.map +1 -0
- package/dist/components/content/image/image.styles.js +402 -0
- package/dist/components/content/image/image.styles.js.map +1 -0
- package/dist/components/content/image/image.template.d.ts +3 -0
- package/dist/components/content/image/image.template.d.ts.map +1 -0
- package/dist/components/content/image/image.template.js +109 -0
- package/dist/components/content/image/image.template.js.map +1 -0
- package/dist/components/content/image/lqip-encoder-element.d.ts +39 -0
- package/dist/components/content/image/lqip-encoder-element.d.ts.map +1 -0
- package/dist/components/content/image/lqip-encoder-element.js +240 -0
- package/dist/components/content/image/lqip-encoder-element.js.map +1 -0
- package/dist/components/content/image/lqip-encoder.d.ts +59 -0
- package/dist/components/content/image/lqip-encoder.d.ts.map +1 -0
- package/dist/components/content/image/lqip-encoder.js +279 -0
- package/dist/components/content/image/lqip-encoder.js.map +1 -0
- package/dist/components/content/rich-text/rich-text.d.ts +9 -0
- package/dist/components/content/rich-text/rich-text.d.ts.map +1 -1
- package/dist/components/content/rich-text/rich-text.i18n.d.ts +5 -0
- package/dist/components/content/rich-text/rich-text.i18n.d.ts.map +1 -0
- package/dist/components/content/rich-text/rich-text.i18n.js +4 -0
- package/dist/components/content/rich-text/rich-text.i18n.js.map +1 -0
- package/dist/components/content/rich-text/rich-text.js +61 -0
- package/dist/components/content/rich-text/rich-text.js.map +1 -1
- package/dist/components/content/tooltip/tooltip.d.ts +10 -0
- package/dist/components/content/tooltip/tooltip.d.ts.map +1 -1
- package/dist/components/content/tooltip/tooltip.js +74 -2
- package/dist/components/content/tooltip/tooltip.js.map +1 -1
- package/dist/components/{index-BVOcPb8I.js → index-DYnIl3ts.js} +5435 -2205
- package/dist/components/index.d.ts +5 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +5 -0
- package/dist/components/index.js.map +1 -1
- package/dist/components/inputs/checkbox/checkbox.styles.d.ts.map +1 -1
- package/dist/components/inputs/checkbox/checkbox.styles.js +1 -0
- package/dist/components/inputs/checkbox/checkbox.styles.js.map +1 -1
- package/dist/components/inputs/combo-box/combo-box.styles.d.ts.map +1 -1
- package/dist/components/inputs/combo-box/combo-box.styles.js +4 -1
- package/dist/components/inputs/combo-box/combo-box.styles.js.map +1 -1
- package/dist/components/inputs/dropdown/dropdown.styles.d.ts.map +1 -1
- package/dist/components/inputs/dropdown/dropdown.styles.js +1 -0
- package/dist/components/inputs/dropdown/dropdown.styles.js.map +1 -1
- package/dist/components/inputs/multi-line-text-field/multi-line-text-field.styles.d.ts.map +1 -1
- package/dist/components/inputs/multi-line-text-field/multi-line-text-field.styles.js +4 -1
- package/dist/components/inputs/multi-line-text-field/multi-line-text-field.styles.js.map +1 -1
- package/dist/components/inputs/password-field/password-field.styles.d.ts.map +1 -1
- package/dist/components/inputs/password-field/password-field.styles.js +4 -1
- package/dist/components/inputs/password-field/password-field.styles.js.map +1 -1
- package/dist/components/inputs/radio-button/radio-button.styles.d.ts.map +1 -1
- package/dist/components/inputs/radio-button/radio-button.styles.js +1 -0
- package/dist/components/inputs/radio-button/radio-button.styles.js.map +1 -1
- package/dist/components/inputs/search-field/search-field.styles.d.ts.map +1 -1
- package/dist/components/inputs/search-field/search-field.styles.js +4 -1
- package/dist/components/inputs/search-field/search-field.styles.js.map +1 -1
- package/dist/components/inputs/segmented-control/segmented-control.styles.d.ts.map +1 -1
- package/dist/components/inputs/segmented-control/segmented-control.styles.js +1 -0
- package/dist/components/inputs/segmented-control/segmented-control.styles.js.map +1 -1
- package/dist/components/inputs/stepper/stepper.styles.d.ts.map +1 -1
- package/dist/components/inputs/stepper/stepper.styles.js +1 -0
- package/dist/components/inputs/stepper/stepper.styles.js.map +1 -1
- package/dist/components/inputs/switch/switch.styles.d.ts.map +1 -1
- package/dist/components/inputs/switch/switch.styles.js +1 -0
- package/dist/components/inputs/switch/switch.styles.js.map +1 -1
- package/dist/components/inputs/text-field/text-field.styles.d.ts.map +1 -1
- package/dist/components/inputs/text-field/text-field.styles.js +4 -1
- package/dist/components/inputs/text-field/text-field.styles.js.map +1 -1
- package/dist/components/inputs/toggle-button/toggle-button.d.ts +1 -1
- package/dist/components/inputs/toggle-button/toggle-button.d.ts.map +1 -1
- package/dist/components/inputs/toggle-button/toggle-button.js +22 -14
- package/dist/components/inputs/toggle-button/toggle-button.js.map +1 -1
- package/dist/components/inputs/toggle-button/toggle-button.styles.d.ts.map +1 -1
- package/dist/components/inputs/toggle-button/toggle-button.styles.js +16 -11
- package/dist/components/inputs/toggle-button/toggle-button.styles.js.map +1 -1
- package/dist/components/inputs/toggle-button/toggle-button.template.d.ts.map +1 -1
- package/dist/components/inputs/toggle-button/toggle-button.template.js +32 -16
- package/dist/components/inputs/toggle-button/toggle-button.template.js.map +1 -1
- package/dist/components/inputs/token/token.styles.d.ts.map +1 -1
- package/dist/components/inputs/token/token.styles.js +1 -0
- package/dist/components/inputs/token/token.styles.js.map +1 -1
- package/dist/components/layout/box/box.d.ts +6 -0
- package/dist/components/layout/box/box.d.ts.map +1 -1
- package/dist/components/layout/box/box.js +12 -1
- package/dist/components/layout/box/box.js.map +1 -1
- package/dist/components/layout/box/box.styles.d.ts.map +1 -1
- package/dist/components/layout/box/box.styles.js +40 -1
- package/dist/components/layout/box/box.styles.js.map +1 -1
- package/dist/components/layout/collection/collection.d.ts +1 -0
- package/dist/components/layout/collection/collection.d.ts.map +1 -1
- package/dist/components/layout/collection/collection.i18n.d.ts +1 -0
- package/dist/components/layout/collection/collection.i18n.d.ts.map +1 -1
- package/dist/components/layout/collection/collection.i18n.js +1 -0
- package/dist/components/layout/collection/collection.i18n.js.map +1 -1
- package/dist/components/layout/collection/collection.js +14 -0
- package/dist/components/layout/collection/collection.js.map +1 -1
- package/dist/components/layout/collection/collection.styles.d.ts.map +1 -1
- package/dist/components/layout/collection/collection.styles.js +27 -0
- package/dist/components/layout/collection/collection.styles.js.map +1 -1
- package/dist/components/layout/collection/collection.template.d.ts.map +1 -1
- package/dist/components/layout/collection/collection.template.js +12 -4
- package/dist/components/layout/collection/collection.template.js.map +1 -1
- package/dist/components/lists-and-menus/list/list.d.ts +10 -3
- package/dist/components/lists-and-menus/list/list.d.ts.map +1 -1
- package/dist/components/lists-and-menus/list/list.js +8 -3
- package/dist/components/lists-and-menus/list/list.js.map +1 -1
- package/dist/components/lists-and-menus/list/list.styles.d.ts.map +1 -1
- package/dist/components/lists-and-menus/list/list.styles.js +33 -6
- package/dist/components/lists-and-menus/list/list.styles.js.map +1 -1
- package/dist/components/lists-and-menus/list-item/list-item.js +1 -1
- package/dist/components/lists-and-menus/list-item/list-item.js.map +1 -1
- package/dist/components/lists-and-menus/menu/menu.styles.d.ts.map +1 -1
- package/dist/components/lists-and-menus/menu/menu.styles.js +1 -0
- package/dist/components/lists-and-menus/menu/menu.styles.js.map +1 -1
- package/dist/components/navigation/document-tab-bar/document-tab-bar.styles.d.ts.map +1 -1
- package/dist/components/navigation/document-tab-bar/document-tab-bar.styles.js +1 -0
- package/dist/components/navigation/document-tab-bar/document-tab-bar.styles.js.map +1 -1
- package/dist/components/navigation/menu-bar/menu-bar.styles.d.ts.map +1 -1
- package/dist/components/navigation/menu-bar/menu-bar.styles.js +1 -0
- package/dist/components/navigation/menu-bar/menu-bar.styles.js.map +1 -1
- package/dist/components/navigation/menu-bar-item/menu-bar-item.styles.d.ts.map +1 -1
- package/dist/components/navigation/menu-bar-item/menu-bar-item.styles.js +1 -0
- package/dist/components/navigation/menu-bar-item/menu-bar-item.styles.js.map +1 -1
- package/dist/components/navigation/pagination/pagination.styles.d.ts.map +1 -1
- package/dist/components/navigation/pagination/pagination.styles.js +1 -0
- package/dist/components/navigation/pagination/pagination.styles.js.map +1 -1
- package/dist/components/navigation/tab-bar/tab-bar.styles.d.ts.map +1 -1
- package/dist/components/navigation/tab-bar/tab-bar.styles.js +1 -0
- package/dist/components/navigation/tab-bar/tab-bar.styles.js.map +1 -1
- package/dist/components/navigation/top-navigation-bar/top-navigation-bar.styles.d.ts.map +1 -1
- package/dist/components/navigation/top-navigation-bar/top-navigation-bar.styles.js +10 -1
- package/dist/components/navigation/top-navigation-bar/top-navigation-bar.styles.js.map +1 -1
- package/dist/components/{prism-python-C1D7CYBc.js → prism-python-C9GXiQLy.js} +1 -1
- package/dist/components/{prism-rust-DI5vrP6V.js → prism-rust-De_U8Otq.js} +1 -1
- package/dist/components/{prism-typescript-DBgOPJ4M.js → prism-typescript-BJbUDHsa.js} +1 -1
- package/dist/components/sample-images/butterfly-1200.jpg +0 -0
- package/dist/components/sample-images/butterfly-1600.jpg +0 -0
- package/dist/components/sample-images/butterfly-480.jpg +0 -0
- package/dist/components/sample-images/butterfly-960.jpg +0 -0
- package/dist/components/status-and-feedback/badge/badge.d.ts +2 -2
- package/dist/components/status-and-feedback/badge/badge.d.ts.map +1 -1
- package/dist/components/status-and-feedback/badge/badge.js +1 -1
- package/dist/components/status-and-feedback/badge/badge.js.map +1 -1
- package/dist/components/status-and-feedback/badge/badge.styles.d.ts.map +1 -1
- package/dist/components/status-and-feedback/badge/badge.styles.js +126 -1
- package/dist/components/status-and-feedback/badge/badge.styles.js.map +1 -1
- package/dist/components/status-and-feedback/banner/banner.d.ts +89 -0
- package/dist/components/status-and-feedback/banner/banner.d.ts.map +1 -0
- package/dist/components/status-and-feedback/banner/banner.i18n.d.ts +5 -0
- package/dist/components/status-and-feedback/banner/banner.i18n.d.ts.map +1 -0
- package/dist/components/status-and-feedback/banner/banner.i18n.js +4 -0
- package/dist/components/status-and-feedback/banner/banner.i18n.js.map +1 -0
- package/dist/components/status-and-feedback/banner/banner.js +206 -0
- package/dist/components/status-and-feedback/banner/banner.js.map +1 -0
- package/dist/components/status-and-feedback/banner/banner.styles.d.ts +2 -0
- package/dist/components/status-and-feedback/banner/banner.styles.d.ts.map +1 -0
- package/dist/components/status-and-feedback/banner/banner.styles.js +160 -0
- package/dist/components/status-and-feedback/banner/banner.styles.js.map +1 -0
- package/dist/components/status-and-feedback/banner/banner.template.d.ts +3 -0
- package/dist/components/status-and-feedback/banner/banner.template.d.ts.map +1 -0
- package/dist/components/status-and-feedback/banner/banner.template.js +51 -0
- package/dist/components/status-and-feedback/banner/banner.template.js.map +1 -0
- package/dist/components/status-and-feedback/progress/progress.d.ts +77 -0
- package/dist/components/status-and-feedback/progress/progress.d.ts.map +1 -0
- package/dist/components/status-and-feedback/progress/progress.i18n.d.ts +5 -0
- package/dist/components/status-and-feedback/progress/progress.i18n.d.ts.map +1 -0
- package/dist/components/status-and-feedback/progress/progress.i18n.js +4 -0
- package/dist/components/status-and-feedback/progress/progress.i18n.js.map +1 -0
- package/dist/components/status-and-feedback/progress/progress.js +137 -0
- package/dist/components/status-and-feedback/progress/progress.js.map +1 -0
- package/dist/components/status-and-feedback/progress/progress.styles.d.ts +2 -0
- package/dist/components/status-and-feedback/progress/progress.styles.d.ts.map +1 -0
- package/dist/components/status-and-feedback/progress/progress.styles.js +57 -0
- package/dist/components/status-and-feedback/progress/progress.styles.js.map +1 -0
- package/dist/components/status-and-feedback/progress/progress.template.d.ts +4 -0
- package/dist/components/status-and-feedback/progress/progress.template.d.ts.map +1 -0
- package/dist/components/status-and-feedback/progress/progress.template.js +26 -0
- package/dist/components/status-and-feedback/progress/progress.template.js.map +1 -0
- package/dist/components/status-and-feedback/progress-bar/progress-bar.d.ts +131 -0
- package/dist/components/status-and-feedback/progress-bar/progress-bar.d.ts.map +1 -0
- package/dist/components/status-and-feedback/progress-bar/progress-bar.i18n.d.ts +8 -0
- package/dist/components/status-and-feedback/progress-bar/progress-bar.i18n.d.ts.map +1 -0
- package/dist/components/status-and-feedback/progress-bar/progress-bar.i18n.js +7 -0
- package/dist/components/status-and-feedback/progress-bar/progress-bar.i18n.js.map +1 -0
- package/dist/components/status-and-feedback/progress-bar/progress-bar.js +426 -0
- package/dist/components/status-and-feedback/progress-bar/progress-bar.js.map +1 -0
- package/dist/components/status-and-feedback/progress-bar/progress-bar.styles.d.ts +3 -0
- package/dist/components/status-and-feedback/progress-bar/progress-bar.styles.d.ts.map +1 -0
- package/dist/components/status-and-feedback/progress-bar/progress-bar.styles.js +400 -0
- package/dist/components/status-and-feedback/progress-bar/progress-bar.styles.js.map +1 -0
- package/dist/components/status-and-feedback/progress-bar/progress-bar.template.d.ts +3 -0
- package/dist/components/status-and-feedback/progress-bar/progress-bar.template.d.ts.map +1 -0
- package/dist/components/status-and-feedback/progress-bar/progress-bar.template.js +60 -0
- package/dist/components/status-and-feedback/progress-bar/progress-bar.template.js.map +1 -0
- package/dist/components/status-and-feedback/progress-circle/progress-circle.d.ts +132 -0
- package/dist/components/status-and-feedback/progress-circle/progress-circle.d.ts.map +1 -0
- package/dist/components/status-and-feedback/progress-circle/progress-circle.i18n.d.ts +8 -0
- package/dist/components/status-and-feedback/progress-circle/progress-circle.i18n.d.ts.map +1 -0
- package/dist/components/status-and-feedback/progress-circle/progress-circle.i18n.js +7 -0
- package/dist/components/status-and-feedback/progress-circle/progress-circle.i18n.js.map +1 -0
- package/dist/components/status-and-feedback/progress-circle/progress-circle.js +437 -0
- package/dist/components/status-and-feedback/progress-circle/progress-circle.js.map +1 -0
- package/dist/components/status-and-feedback/progress-circle/progress-circle.styles.d.ts +3 -0
- package/dist/components/status-and-feedback/progress-circle/progress-circle.styles.d.ts.map +1 -0
- package/dist/components/status-and-feedback/progress-circle/progress-circle.styles.js +245 -0
- package/dist/components/status-and-feedback/progress-circle/progress-circle.styles.js.map +1 -0
- package/dist/components/status-and-feedback/progress-circle/progress-circle.template.d.ts +14 -0
- package/dist/components/status-and-feedback/progress-circle/progress-circle.template.d.ts.map +1 -0
- package/dist/components/status-and-feedback/progress-circle/progress-circle.template.js +115 -0
- package/dist/components/status-and-feedback/progress-circle/progress-circle.template.js.map +1 -0
- package/dist/css/settings.css +346 -18
- package/package.json +21 -1
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
import { css } from 'lit';
|
|
2
|
+
export const progressCircleStyles = css `
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
/* # Host */
|
|
6
|
+
|
|
7
|
+
:host {
|
|
8
|
+
--_size: var(--primitives-space-28);
|
|
9
|
+
/* SVG viewBox is 100×100 user units. To get a visual {N}px stroke at any
|
|
10
|
+
rendered size, the user-unit stroke-width must scale up by 100/size.
|
|
11
|
+
Per-size overrides below set the appropriate value. Stroke width
|
|
12
|
+
grows with circle size — must match getStrokeWidthPx() in the
|
|
13
|
+
template file. */
|
|
14
|
+
--_stroke-width: calc(4px * 100 / 28);
|
|
15
|
+
--_track-color: var(--components-progress-circle-track-color);
|
|
16
|
+
--_track-border-color: var(--components-progress-circle-track-border-color);
|
|
17
|
+
--_label-gap: var(--components-progress-circle-label-gap);
|
|
18
|
+
--_label-color: var(--components-progress-circle-label-color);
|
|
19
|
+
--_label-font: var(--components-progress-circle-label-font);
|
|
20
|
+
|
|
21
|
+
box-sizing: border-box;
|
|
22
|
+
display: inline-flex;
|
|
23
|
+
flex-direction: column;
|
|
24
|
+
align-items: center;
|
|
25
|
+
gap: var(--_label-gap);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
:host([hidden]) {
|
|
29
|
+
display: none;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
:host([size="16"]) { --_size: var(--primitives-space-16); --_stroke-width: calc(3px * 100 / 16); }
|
|
33
|
+
:host([size="20"]) { --_size: var(--primitives-space-20); --_stroke-width: calc(3px * 100 / 20); }
|
|
34
|
+
:host([size="24"]) { --_size: var(--primitives-space-24); --_stroke-width: calc(4px * 100 / 24); }
|
|
35
|
+
:host([size="28"]) { --_size: var(--primitives-space-28); --_stroke-width: calc(4px * 100 / 28); }
|
|
36
|
+
:host([size="32"]) { --_size: var(--primitives-space-32); --_stroke-width: calc(4px * 100 / 32); }
|
|
37
|
+
:host([size="40"]) { --_size: var(--primitives-space-40); --_stroke-width: calc(4px * 100 / 40); }
|
|
38
|
+
:host([size="44"]) { --_size: var(--primitives-space-44); --_stroke-width: calc(5px * 100 / 44); }
|
|
39
|
+
:host([size="48"]) { --_size: var(--primitives-space-48); --_stroke-width: calc(5px * 100 / 48); }
|
|
40
|
+
:host([size="56"]) { --_size: var(--primitives-space-56); --_stroke-width: calc(6px * 100 / 56); }
|
|
41
|
+
:host([size="64"]) { --_size: var(--primitives-space-64); --_stroke-width: calc(6px * 100 / 64); }
|
|
42
|
+
:host([size="80"]) { --_size: var(--primitives-space-80); --_stroke-width: calc(6px * 100 / 80); }
|
|
43
|
+
:host([size="96"]) { --_size: var(--primitives-space-96); --_stroke-width: calc(6px * 100 / 96); }
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
/* # SVG wrapper */
|
|
47
|
+
|
|
48
|
+
.progress-circle__circle {
|
|
49
|
+
display: block;
|
|
50
|
+
position: relative;
|
|
51
|
+
width: var(--_size);
|
|
52
|
+
height: var(--_size);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.progress-circle__svg {
|
|
56
|
+
display: block;
|
|
57
|
+
width: 100%;
|
|
58
|
+
height: 100%;
|
|
59
|
+
/* Start segments at 12 o'clock instead of the default 3 o'clock. */
|
|
60
|
+
transform: rotate(-90deg);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
/* # Track ring (background)
|
|
65
|
+
vector-effect: non-scaling-stroke keeps the stroke at its specified
|
|
66
|
+
CSS pixel width regardless of the viewBox-to-rendered-size ratio,
|
|
67
|
+
so a 4px stroke is always 4 actual pixels at any circle size. */
|
|
68
|
+
|
|
69
|
+
.progress-circle__track {
|
|
70
|
+
stroke: var(--_track-color);
|
|
71
|
+
stroke-width: var(--_stroke-width);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
/* # Arc segments
|
|
76
|
+
Animate value changes smoothly via stroke-dasharray transition.
|
|
77
|
+
Crossfade with the indeterminate indicator uses opacity on the SVG group. */
|
|
78
|
+
|
|
79
|
+
.progress-circle__segment {
|
|
80
|
+
stroke-width: var(--_stroke-width);
|
|
81
|
+
opacity: 1;
|
|
82
|
+
transition: stroke-dasharray var(--primitives-transition-duration-slow) ease-out, stroke-dashoffset var(--primitives-transition-duration-slow) ease-out, opacity var(--primitives-transition-duration-slow) ease-out;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
.progress-circle__segment[data-shrink] {
|
|
86
|
+
opacity: 0;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
/* Progress mode: rounded caps for friendly segment ends. The JS gap
|
|
90
|
+
calculation compensates for the half-stroke-width extension so the
|
|
91
|
+
visible gap between segments stays consistent.
|
|
92
|
+
Distribution mode: butt caps keep the segment boundaries crisp. */
|
|
93
|
+
|
|
94
|
+
.progress-circle__segment {
|
|
95
|
+
stroke-linecap: round;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
:host([mode="distribution"]) .progress-circle__segment {
|
|
99
|
+
stroke-linecap: butt;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
/* ## Arc color per variant */
|
|
104
|
+
|
|
105
|
+
.progress-circle__segment--neutral { stroke: var(--components-progress-circle-neutral-fill-color); }
|
|
106
|
+
.progress-circle__segment--accent { stroke: var(--components-progress-circle-accent-fill-color); }
|
|
107
|
+
.progress-circle__segment--success { stroke: var(--components-progress-circle-success-fill-color); }
|
|
108
|
+
.progress-circle__segment--warning { stroke: var(--components-progress-circle-warning-fill-color); }
|
|
109
|
+
.progress-circle__segment--critical { stroke: var(--components-progress-circle-critical-fill-color); }
|
|
110
|
+
.progress-circle__segment--coolgray { stroke: var(--components-progress-circle-coolgray-fill-color); }
|
|
111
|
+
.progress-circle__segment--lintblauw { stroke: var(--components-progress-circle-lintblauw-fill-color); }
|
|
112
|
+
.progress-circle__segment--donkerblauw { stroke: var(--components-progress-circle-donkerblauw-fill-color); }
|
|
113
|
+
.progress-circle__segment--hemelblauw { stroke: var(--components-progress-circle-hemelblauw-fill-color); }
|
|
114
|
+
.progress-circle__segment--lichtblauw { stroke: var(--components-progress-circle-lichtblauw-fill-color); }
|
|
115
|
+
.progress-circle__segment--paars { stroke: var(--components-progress-circle-paars-fill-color); }
|
|
116
|
+
.progress-circle__segment--violet { stroke: var(--components-progress-circle-violet-fill-color); }
|
|
117
|
+
.progress-circle__segment--robijnrood { stroke: var(--components-progress-circle-robijnrood-fill-color); }
|
|
118
|
+
.progress-circle__segment--roze { stroke: var(--components-progress-circle-roze-fill-color); }
|
|
119
|
+
.progress-circle__segment--rood { stroke: var(--components-progress-circle-rood-fill-color); }
|
|
120
|
+
.progress-circle__segment--oranje { stroke: var(--components-progress-circle-oranje-fill-color); }
|
|
121
|
+
.progress-circle__segment--donkergeel { stroke: var(--components-progress-circle-donkergeel-fill-color); }
|
|
122
|
+
.progress-circle__segment--geel { stroke: var(--components-progress-circle-geel-fill-color); }
|
|
123
|
+
.progress-circle__segment--donkerbruin { stroke: var(--components-progress-circle-donkerbruin-fill-color); }
|
|
124
|
+
.progress-circle__segment--bruin { stroke: var(--components-progress-circle-bruin-fill-color); }
|
|
125
|
+
.progress-circle__segment--donkergroen { stroke: var(--components-progress-circle-donkergroen-fill-color); }
|
|
126
|
+
.progress-circle__segment--groen { stroke: var(--components-progress-circle-groen-fill-color); }
|
|
127
|
+
.progress-circle__segment--mosgroen { stroke: var(--components-progress-circle-mosgroen-fill-color); }
|
|
128
|
+
.progress-circle__segment--mintgroen { stroke: var(--components-progress-circle-mintgroen-fill-color); }
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
/* # Spinner (indeterminate)
|
|
132
|
+
GitHub-style: a fixed-width arc (25 / 100 = quarter turn, 90°) that
|
|
133
|
+
simply rotates around the circle. Calmer than Material's elastic
|
|
134
|
+
grow + shrink, which at small sizes (default 28 px) reads as visually
|
|
135
|
+
busy. pathLength="100" on the indicator normalises the dash pattern
|
|
136
|
+
to percentages of the circumference so the same numbers stay correct
|
|
137
|
+
at every size. transform-origin centres the rotation. */
|
|
138
|
+
|
|
139
|
+
.progress-circle__indeterminate-indicator {
|
|
140
|
+
stroke-width: var(--_stroke-width);
|
|
141
|
+
stroke-dasharray: 25 100;
|
|
142
|
+
stroke-dashoffset: 0;
|
|
143
|
+
stroke: var(--_indeterminate-fill-color);
|
|
144
|
+
opacity: 1;
|
|
145
|
+
transform-origin: 50% 50%;
|
|
146
|
+
transition: opacity var(--primitives-transition-duration-slow) ease-out;
|
|
147
|
+
animation: progress-circle-indeterminate-indicator-rotate 1s linear infinite;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
.progress-circle__indeterminate-indicator[data-fade="out"] {
|
|
151
|
+
opacity: 0;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
@keyframes progress-circle-indeterminate-indicator-rotate {
|
|
155
|
+
100% { transform: rotate(360deg); }
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
|
|
159
|
+
/* # Indeterminate fill colour follows the color variant; default accent (blue) */
|
|
160
|
+
|
|
161
|
+
:host {
|
|
162
|
+
--_indeterminate-fill-color: var(--components-progress-circle-accent-fill-color);
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
:host([color="neutral"]) { --_indeterminate-fill-color: var(--components-progress-circle-neutral-fill-color); }
|
|
166
|
+
:host([color="accent"]) { --_indeterminate-fill-color: var(--components-progress-circle-accent-fill-color); }
|
|
167
|
+
:host([color="success"]) { --_indeterminate-fill-color: var(--components-progress-circle-success-fill-color); }
|
|
168
|
+
:host([color="warning"]) { --_indeterminate-fill-color: var(--components-progress-circle-warning-fill-color); }
|
|
169
|
+
:host([color="critical"]) { --_indeterminate-fill-color: var(--components-progress-circle-critical-fill-color); }
|
|
170
|
+
:host([color="coolgray"]) { --_indeterminate-fill-color: var(--components-progress-circle-coolgray-fill-color); }
|
|
171
|
+
:host([color="lintblauw"]) { --_indeterminate-fill-color: var(--components-progress-circle-lintblauw-fill-color); }
|
|
172
|
+
:host([color="donkerblauw"]) { --_indeterminate-fill-color: var(--components-progress-circle-donkerblauw-fill-color); }
|
|
173
|
+
:host([color="hemelblauw"]) { --_indeterminate-fill-color: var(--components-progress-circle-hemelblauw-fill-color); }
|
|
174
|
+
:host([color="lichtblauw"]) { --_indeterminate-fill-color: var(--components-progress-circle-lichtblauw-fill-color); }
|
|
175
|
+
:host([color="paars"]) { --_indeterminate-fill-color: var(--components-progress-circle-paars-fill-color); }
|
|
176
|
+
:host([color="violet"]) { --_indeterminate-fill-color: var(--components-progress-circle-violet-fill-color); }
|
|
177
|
+
:host([color="robijnrood"]) { --_indeterminate-fill-color: var(--components-progress-circle-robijnrood-fill-color); }
|
|
178
|
+
:host([color="roze"]) { --_indeterminate-fill-color: var(--components-progress-circle-roze-fill-color); }
|
|
179
|
+
:host([color="rood"]) { --_indeterminate-fill-color: var(--components-progress-circle-rood-fill-color); }
|
|
180
|
+
:host([color="oranje"]) { --_indeterminate-fill-color: var(--components-progress-circle-oranje-fill-color); }
|
|
181
|
+
:host([color="donkergeel"]) { --_indeterminate-fill-color: var(--components-progress-circle-donkergeel-fill-color); }
|
|
182
|
+
:host([color="geel"]) { --_indeterminate-fill-color: var(--components-progress-circle-geel-fill-color); }
|
|
183
|
+
:host([color="donkerbruin"]) { --_indeterminate-fill-color: var(--components-progress-circle-donkerbruin-fill-color); }
|
|
184
|
+
:host([color="bruin"]) { --_indeterminate-fill-color: var(--components-progress-circle-bruin-fill-color); }
|
|
185
|
+
:host([color="donkergroen"]) { --_indeterminate-fill-color: var(--components-progress-circle-donkergroen-fill-color); }
|
|
186
|
+
:host([color="groen"]) { --_indeterminate-fill-color: var(--components-progress-circle-groen-fill-color); }
|
|
187
|
+
:host([color="mosgroen"]) { --_indeterminate-fill-color: var(--components-progress-circle-mosgroen-fill-color); }
|
|
188
|
+
:host([color="mintgroen"]) { --_indeterminate-fill-color: var(--components-progress-circle-mintgroen-fill-color); }
|
|
189
|
+
|
|
190
|
+
|
|
191
|
+
/* # Label */
|
|
192
|
+
|
|
193
|
+
.progress-circle__text {
|
|
194
|
+
color: var(--_label-color);
|
|
195
|
+
font: var(--_label-font);
|
|
196
|
+
text-align: center;
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
/* # Slot
|
|
201
|
+
Segment children are data-only; hide them visually but keep them in
|
|
202
|
+
the DOM so consumers can mutate values. */
|
|
203
|
+
|
|
204
|
+
slot {
|
|
205
|
+
display: none;
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
/* # Accessibility */
|
|
210
|
+
|
|
211
|
+
@media (prefers-reduced-motion: reduce) {
|
|
212
|
+
.progress-circle__indeterminate-indicator {
|
|
213
|
+
/* Static arc with the same 25 / 100 dash pattern as the full-motion
|
|
214
|
+
spinner — only the rotation is removed and an opacity pulse
|
|
215
|
+
takes its place. Keeping the dasharray identical means the
|
|
216
|
+
placeholder shape doesn't visibly jump when a user toggles
|
|
217
|
+
reduce-motion at runtime. */
|
|
218
|
+
animation: progress-circle-indeterminate-indicator-pulse 2s ease-in-out infinite;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
@keyframes progress-circle-indeterminate-indicator-pulse {
|
|
222
|
+
0%, 100% { opacity: 0.3; }
|
|
223
|
+
50% { opacity: 0.7; }
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
.progress-circle__segment {
|
|
227
|
+
transition: none;
|
|
228
|
+
animation: none;
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
@media (forced-colors: active) {
|
|
233
|
+
.progress-circle__track,
|
|
234
|
+
.progress-circle__segment,
|
|
235
|
+
.progress-circle__indeterminate-indicator {
|
|
236
|
+
stroke: CanvasText;
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
`;
|
|
240
|
+
export const progressCircleSegmentStyles = css `
|
|
241
|
+
:host {
|
|
242
|
+
display: none;
|
|
243
|
+
}
|
|
244
|
+
`;
|
|
245
|
+
//# sourceMappingURL=progress-circle.styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progress-circle.styles.js","sourceRoot":"","sources":["../../../../src/components/status-and-feedback/progress-circle/progress-circle.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6OtC,CAAC;AAGF,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,CAAA;;;;CAI7C,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { NLDDProgressCircle } from './progress-circle.js';
|
|
2
|
+
export declare function getStrokeWidthPx(sizeInPixels: number): number;
|
|
3
|
+
export declare function getRadius(sizeInPixels: number): number;
|
|
4
|
+
export declare function getCircumference(sizeInPixels: number): number;
|
|
5
|
+
/**
|
|
6
|
+
* Lit template — renders the full SVG structure including one `<circle>` per
|
|
7
|
+
* segment and (when needed) an indeterminate indicator. The dynamic per-render
|
|
8
|
+
* attributes (stroke-dasharray, stroke-dashoffset, data-shrink, data-fade) are
|
|
9
|
+
* NOT set here — they're applied by the component's _syncDynamicAttributes()
|
|
10
|
+
* in the updated() lifecycle. Keeping them out of the Lit binding avoids the
|
|
11
|
+
* SVG attribute removal quirks that bit us earlier.
|
|
12
|
+
*/
|
|
13
|
+
export declare function progressCircleTemplate(component: NLDDProgressCircle, onSlotChange: () => void): import("lit-html").TemplateResult<1>;
|
|
14
|
+
//# sourceMappingURL=progress-circle.template.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progress-circle.template.d.ts","sourceRoot":"","sources":["../../../../src/components/status-and-feedback/progress-circle/progress-circle.template.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAW/D,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAK7D;AAED,wBAAgB,SAAS,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAGtD;AAED,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,IAAI,wCA8E7F"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { html, svg, nothing } from 'lit';
|
|
2
|
+
import { ifDefined } from 'lit/directives/if-defined.js';
|
|
3
|
+
// SVG geometry: viewBox 100×100, ring centred. The stroke would extend
|
|
4
|
+
// half-width past the path on each side; at small sizes that half-stroke is
|
|
5
|
+
// large in user units (size 16, stroke 2px → 12.5u, half = 6.25u) and could
|
|
6
|
+
// clip outside the viewBox. So radius shrinks with size so that the stroke's
|
|
7
|
+
// outer edge aligns with the viewBox edge (50u from centre).
|
|
8
|
+
//
|
|
9
|
+
// Stroke width scales with circle size for visual harmony — thin strokes look
|
|
10
|
+
// out of place on a huge ring and thick strokes overpower a tiny ring. Must
|
|
11
|
+
// stay in sync with the per-size --_stroke-width rules in the stylesheet.
|
|
12
|
+
export function getStrokeWidthPx(sizeInPixels) {
|
|
13
|
+
if (sizeInPixels <= 20)
|
|
14
|
+
return 3;
|
|
15
|
+
if (sizeInPixels <= 40)
|
|
16
|
+
return 4;
|
|
17
|
+
if (sizeInPixels <= 48)
|
|
18
|
+
return 5;
|
|
19
|
+
return 6;
|
|
20
|
+
}
|
|
21
|
+
export function getRadius(sizeInPixels) {
|
|
22
|
+
const strokeWidthUserUnits = getStrokeWidthPx(sizeInPixels) * 100 / sizeInPixels;
|
|
23
|
+
return 50 - strokeWidthUserUnits / 2;
|
|
24
|
+
}
|
|
25
|
+
export function getCircumference(sizeInPixels) {
|
|
26
|
+
return 2 * Math.PI * getRadius(sizeInPixels);
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Lit template — renders the full SVG structure including one `<circle>` per
|
|
30
|
+
* segment and (when needed) an indeterminate indicator. The dynamic per-render
|
|
31
|
+
* attributes (stroke-dasharray, stroke-dashoffset, data-shrink, data-fade) are
|
|
32
|
+
* NOT set here — they're applied by the component's _syncDynamicAttributes()
|
|
33
|
+
* in the updated() lifecycle. Keeping them out of the Lit binding avoids the
|
|
34
|
+
* SVG attribute removal quirks that bit us earlier.
|
|
35
|
+
*/
|
|
36
|
+
export function progressCircleTemplate(component, onSlotChange) {
|
|
37
|
+
const tooltipText = component._tooltipText;
|
|
38
|
+
const ariaText = component._ariaValueText;
|
|
39
|
+
// Round so aria-valuenow doesn't produce floats (some screenreaders
|
|
40
|
+
// read them out literally — "49 point 999 percent").
|
|
41
|
+
const ariaValueNow = component.indeterminate ? undefined : Math.round(component._totalValue);
|
|
42
|
+
const isExiting = component._indeterminateExiting;
|
|
43
|
+
const isIndeterminate = (component.indeterminate || isExiting) && !component._hasSegments;
|
|
44
|
+
const showArcs = !component.indeterminate || component._indeterminateEntering;
|
|
45
|
+
const arcs = showArcs ? component._buildArcs() : [];
|
|
46
|
+
const sizeInPixels = Number(component.size) || 28;
|
|
47
|
+
const radius = getRadius(sizeInPixels);
|
|
48
|
+
const circumference = getCircumference(sizeInPixels);
|
|
49
|
+
// Accessible name: use aria-label with the visible label text or a
|
|
50
|
+
// translated fallback. aria-labelledby would be cleaner but VoiceOver on
|
|
51
|
+
// Safari can't resolve IDREFs scoped to a shadow root, so we duplicate
|
|
52
|
+
// the string into aria-label for cross-browser screen-reader support.
|
|
53
|
+
const ariaLabel = component.text || component._t('components.progress-circle.label-text');
|
|
54
|
+
const circle = html `
|
|
55
|
+
<div class="progress-circle__circle"
|
|
56
|
+
role="progressbar"
|
|
57
|
+
aria-label=${ariaLabel}
|
|
58
|
+
aria-valuemin="0"
|
|
59
|
+
aria-valuemax=${component.max}
|
|
60
|
+
aria-valuenow=${ifDefined(ariaValueNow)}
|
|
61
|
+
aria-valuetext=${ariaText}
|
|
62
|
+
>
|
|
63
|
+
<svg class="progress-circle__svg"
|
|
64
|
+
viewBox="0 0 100 100"
|
|
65
|
+
aria-hidden="true"
|
|
66
|
+
>
|
|
67
|
+
<circle class="progress-circle__track"
|
|
68
|
+
cx="50"
|
|
69
|
+
cy="50"
|
|
70
|
+
r=${radius}
|
|
71
|
+
fill="none"
|
|
72
|
+
></circle>
|
|
73
|
+
<g class="progress-circle__segments">
|
|
74
|
+
${arcs.map(arc => svg `
|
|
75
|
+
<circle class="progress-circle__segment progress-circle__segment--${arc.color}"
|
|
76
|
+
cx="50"
|
|
77
|
+
cy="50"
|
|
78
|
+
r=${radius}
|
|
79
|
+
fill="none"
|
|
80
|
+
stroke-dasharray="${arc.length} ${circumference}"
|
|
81
|
+
stroke-dashoffset=${-arc.offset}
|
|
82
|
+
></circle>
|
|
83
|
+
`)}
|
|
84
|
+
</g>
|
|
85
|
+
${isIndeterminate ? svg `
|
|
86
|
+
<circle class="progress-circle__indeterminate-indicator"
|
|
87
|
+
cx="50"
|
|
88
|
+
cy="50"
|
|
89
|
+
r=${radius}
|
|
90
|
+
fill="none"
|
|
91
|
+
pathLength="100"
|
|
92
|
+
stroke-linecap="round"
|
|
93
|
+
></circle>
|
|
94
|
+
` : nothing}
|
|
95
|
+
</svg>
|
|
96
|
+
</div>
|
|
97
|
+
`;
|
|
98
|
+
// Skip the tooltip wrapper entirely when there's no text (value-format
|
|
99
|
+
// 'none' with no override) so consumers don't get an inert tooltip.
|
|
100
|
+
const wrappedCircle = tooltipText
|
|
101
|
+
? html `
|
|
102
|
+
<nldd-tooltip
|
|
103
|
+
text=${tooltipText}
|
|
104
|
+
placement="top"
|
|
105
|
+
timing="instant"
|
|
106
|
+
>${circle}</nldd-tooltip>
|
|
107
|
+
`
|
|
108
|
+
: circle;
|
|
109
|
+
return html `
|
|
110
|
+
${wrappedCircle}
|
|
111
|
+
<slot @slotchange=${onSlotChange}></slot>
|
|
112
|
+
${component.text ? html `<span class="progress-circle__text">${component.text}</span>` : nothing}
|
|
113
|
+
`;
|
|
114
|
+
}
|
|
115
|
+
//# sourceMappingURL=progress-circle.template.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progress-circle.template.js","sourceRoot":"","sources":["../../../../src/components/status-and-feedback/progress-circle/progress-circle.template.ts"],"names":[],"mappings":"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"}
|