@teseor/css 1.15.7 → 2.0.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/dist/compiled.css +1 -1
- package/dist/index.css +51 -52
- package/package.json +1 -1
- package/src/base/docs.html +1 -1
- package/src/base/root.scss +1 -1
- package/src/base/typography/typography.scss +6 -6
- package/src/components/actions/button/api.json +1 -1
- package/src/components/actions/button/index.scss +1 -1
- package/src/components/content/divider/docs.html +1 -1
- package/src/components/content/scroll-area/docs.html +2 -2
- package/src/components/data-display/avatar/index.scss +1 -1
- package/src/components/data-display/badge/api.json +1 -1
- package/src/components/data-display/badge/index.scss +1 -1
- package/src/components/data-display/data-list/index.scss +1 -1
- package/src/components/data-display/stat/api.json +3 -3
- package/src/components/data-display/stat/index.scss +5 -5
- package/src/components/data-display/status/docs.html +2 -2
- package/src/components/data-display/table/index.scss +1 -1
- package/src/components/data-display/tag/index.scss +1 -1
- package/src/components/disclosure/disclosure/index.scss +1 -1
- package/src/components/feedback/alert/index.scss +1 -1
- package/src/components/feedback/skeleton/docs.html +2 -2
- package/src/components/feedback/toast/docs.html +12 -12
- package/src/components/feedback/toast/index.scss +2 -2
- package/src/components/forms/checkbox/docs.html +1 -1
- package/src/components/forms/checkbox-group/api.json +1 -1
- package/src/components/forms/checkbox-group/index.scss +2 -2
- package/src/components/forms/fieldset/api.json +1 -1
- package/src/components/forms/fieldset/index.scss +2 -2
- package/src/components/forms/form-error/index.scss +1 -1
- package/src/components/forms/form-helper/index.scss +1 -1
- package/src/components/forms/label/index.scss +3 -3
- package/src/components/forms/radio/docs.html +5 -5
- package/src/components/forms/radio-group/api.json +1 -1
- package/src/components/forms/radio-group/index.scss +2 -2
- package/src/components/forms/toggle/docs.html +3 -3
- package/src/components/navigation/dropdown-menu/api.json +1 -1
- package/src/components/navigation/dropdown-menu/docs.html +1 -1
- package/src/components/navigation/dropdown-menu/index.scss +1 -1
- package/src/components/navigation/menu/index.scss +2 -2
- package/src/components/navigation/nav/api.json +1 -1
- package/src/components/navigation/nav/index.scss +1 -1
- package/src/components/navigation/tabs/index.scss +1 -1
- package/src/components/overlays/dialog/docs.html +6 -6
- package/src/components/overlays/dialog/index.scss +1 -1
- package/src/components/overlays/drawer/docs.html +17 -17
- package/src/components/overlays/drawer/index.scss +2 -2
- package/src/components/overlays/modal/api.json +1 -1
- package/src/components/overlays/modal/docs.html +12 -12
- package/src/components/overlays/modal/index.scss +1 -1
- package/src/components/overlays/overlay/api.json +1 -1
- package/src/components/overlays/overlay/docs.html +8 -8
- package/src/components/overlays/overlay/index.scss +1 -1
- package/src/components/overlays/popover/api.json +1 -1
- package/src/components/overlays/popover/docs.html +6 -6
- package/src/components/overlays/popover/index.scss +2 -2
- package/src/components/overlays/tooltip/api.json +1 -1
- package/src/components/overlays/tooltip/docs.html +10 -10
- package/src/components/overlays/tooltip/index.scss +1 -1
- package/src/components/typography/blockquote/api.json +1 -1
- package/src/components/typography/blockquote/index.scss +2 -2
- package/src/components/typography/code/index.scss +1 -1
- package/src/components/typography/code-block/api.json +1 -1
- package/src/components/typography/code-block/index.scss +1 -1
- package/src/components/typography/heading/api.json +9 -9
- package/src/components/typography/heading/index.scss +9 -9
- package/src/components/typography/list/api.json +1 -1
- package/src/components/typography/list/index.scss +1 -1
- package/src/config/guides/accessibility.docs.html +1 -1
- package/src/config/guides/getting-started.docs.html +1 -1
- package/src/config/guides/theming.docs.html +53 -20
- package/src/config/guides/token-architecture.docs.html +87 -0
- package/src/config/tokens/_variables.scss +60 -53
- package/src/config/tokens/colors/index.scss +18 -0
- package/src/config/tokens/docs.html +10 -21
- package/src/config/tokens/index.scss +0 -1
- package/src/config/tokens/radius.scss +5 -4
- package/src/config/tokens/shadows.scss +4 -3
- package/src/config/tokens/typography.scss +47 -47
- package/src/config/tokens/zindex.scss +10 -10
- package/src/debug/docs.html +3 -3
- package/src/debug/index.scss +7 -8
- package/src/layout/aspect-ratio/docs.html +7 -7
- package/src/layout/center/docs.html +3 -3
- package/src/layout/footer/api.json +1 -1
- package/src/layout/footer/index.scss +3 -3
- package/src/layout/main/docs.html +3 -3
- package/src/layout/nav-rail/api.json +1 -1
- package/src/layout/nav-rail/docs.html +1 -1
- package/src/layout/nav-rail/index.scss +1 -1
- package/src/layout/page-header/index.scss +1 -1
- package/src/layout/sidebar/docs.html +3 -3
- package/src/layout/sidebar/index.scss +1 -1
- package/src/layout/sidebar-nav/api.json +2 -2
- package/src/layout/sidebar-nav/docs.html +6 -6
- package/src/layout/sidebar-nav/index.scss +4 -4
- package/src/layout/topbar/api.json +1 -1
- package/src/layout/topbar/index.scss +1 -1
- package/src/utilities/position/api.json +6 -0
- package/src/utilities/position/docs.html +29 -0
- package/src/utilities/position/position.scss +74 -0
- package/src/utilities/scroll-animation/docs.html +1 -1
- package/src/utilities/scroll-animation/index.scss +1 -1
- package/src/utilities/scroll-snap/docs.html +33 -33
- package/src/utilities/text/docs.html +5 -5
- package/src/utilities/text/text.scss +15 -15
- package/src/config/tokens/semantic-spacing.scss +0 -12
|
@@ -23,35 +23,35 @@
|
|
|
23
23
|
// ==========================================================================
|
|
24
24
|
|
|
25
25
|
// Tight line-heights for compact UI elements
|
|
26
|
-
--ui-
|
|
27
|
-
--ui-
|
|
28
|
-
--ui-
|
|
29
|
-
--ui-
|
|
26
|
+
--ui-line-height-tight-xs: var(--ui-row-1);
|
|
27
|
+
--ui-line-height-tight-sm: var(--ui-row-1);
|
|
28
|
+
--ui-line-height-tight-md: calc(var(--ui-unit) * 3);
|
|
29
|
+
--ui-line-height-tight-lg: calc(var(--ui-unit) * 3);
|
|
30
30
|
|
|
31
31
|
// Normal line-heights for readable body text
|
|
32
|
-
--ui-
|
|
33
|
-
--ui-
|
|
34
|
-
--ui-
|
|
35
|
-
--ui-
|
|
36
|
-
--ui-
|
|
37
|
-
--ui-
|
|
38
|
-
--ui-
|
|
39
|
-
--ui-
|
|
32
|
+
--ui-line-height-xs: var(--ui-row-1);
|
|
33
|
+
--ui-line-height-sm: calc(var(--ui-unit) * 3);
|
|
34
|
+
--ui-line-height-md: calc(var(--ui-unit) * 3);
|
|
35
|
+
--ui-line-height-lg: var(--ui-row-2);
|
|
36
|
+
--ui-line-height-xl: var(--ui-row-2);
|
|
37
|
+
--ui-line-height-2xl: var(--ui-row-2);
|
|
38
|
+
--ui-line-height-3xl: calc(var(--ui-unit) * 5);
|
|
39
|
+
--ui-line-height-4xl: calc(var(--ui-unit) * 6);
|
|
40
40
|
|
|
41
41
|
// ==========================================================================
|
|
42
42
|
// PRIMITIVE TOKENS - Font Weights
|
|
43
43
|
// ==========================================================================
|
|
44
|
-
--ui-weight-normal: 400;
|
|
45
|
-
--ui-weight-medium: 500;
|
|
46
|
-
--ui-weight-semibold: 600;
|
|
47
|
-
--ui-weight-bold: 700;
|
|
44
|
+
--ui-font-weight-normal: 400;
|
|
45
|
+
--ui-font-weight-medium: 500;
|
|
46
|
+
--ui-font-weight-semibold: 600;
|
|
47
|
+
--ui-font-weight-bold: 700;
|
|
48
48
|
|
|
49
49
|
// ==========================================================================
|
|
50
50
|
// PRIMITIVE TOKENS - Letter Spacing
|
|
51
51
|
// ==========================================================================
|
|
52
|
-
--ui-
|
|
53
|
-
--ui-
|
|
54
|
-
--ui-
|
|
52
|
+
--ui-letter-spacing-display: -0.02em;
|
|
53
|
+
--ui-letter-spacing-body: 0;
|
|
54
|
+
--ui-letter-spacing-caps: 0.08em;
|
|
55
55
|
|
|
56
56
|
// ==========================================================================
|
|
57
57
|
// SEMANTIC TOKENS - Text Roles
|
|
@@ -59,62 +59,62 @@
|
|
|
59
59
|
|
|
60
60
|
// Heading 1
|
|
61
61
|
--ui-heading-1-size: var(--ui-font-size-4xl);
|
|
62
|
-
--ui-heading-1-line-height: var(--ui-
|
|
63
|
-
--ui-heading-1-weight: var(--ui-weight-bold);
|
|
64
|
-
--ui-heading-1-tracking: var(--ui-
|
|
62
|
+
--ui-heading-1-line-height: var(--ui-line-height-4xl);
|
|
63
|
+
--ui-heading-1-weight: var(--ui-font-weight-bold);
|
|
64
|
+
--ui-heading-1-tracking: var(--ui-letter-spacing-display);
|
|
65
65
|
|
|
66
66
|
// Heading 2
|
|
67
67
|
--ui-heading-2-size: var(--ui-font-size-3xl);
|
|
68
|
-
--ui-heading-2-line-height: var(--ui-
|
|
69
|
-
--ui-heading-2-weight: var(--ui-weight-bold);
|
|
68
|
+
--ui-heading-2-line-height: var(--ui-line-height-3xl);
|
|
69
|
+
--ui-heading-2-weight: var(--ui-font-weight-bold);
|
|
70
70
|
--ui-heading-2-tracking: -0.01em;
|
|
71
71
|
|
|
72
72
|
// Heading 3
|
|
73
73
|
--ui-heading-3-size: var(--ui-font-size-2xl);
|
|
74
|
-
--ui-heading-3-line-height: var(--ui-
|
|
75
|
-
--ui-heading-3-weight: var(--ui-weight-semibold);
|
|
76
|
-
--ui-heading-3-tracking: var(--ui-
|
|
74
|
+
--ui-heading-3-line-height: var(--ui-line-height-2xl);
|
|
75
|
+
--ui-heading-3-weight: var(--ui-font-weight-semibold);
|
|
76
|
+
--ui-heading-3-tracking: var(--ui-letter-spacing-body);
|
|
77
77
|
|
|
78
78
|
// Heading 4
|
|
79
79
|
--ui-heading-4-size: var(--ui-font-size-xl);
|
|
80
|
-
--ui-heading-4-line-height: var(--ui-
|
|
81
|
-
--ui-heading-4-weight: var(--ui-weight-semibold);
|
|
82
|
-
--ui-heading-4-tracking: var(--ui-
|
|
80
|
+
--ui-heading-4-line-height: var(--ui-line-height-xl);
|
|
81
|
+
--ui-heading-4-weight: var(--ui-font-weight-semibold);
|
|
82
|
+
--ui-heading-4-tracking: var(--ui-letter-spacing-body);
|
|
83
83
|
|
|
84
84
|
// Heading 5
|
|
85
85
|
--ui-heading-5-size: var(--ui-font-size-lg);
|
|
86
|
-
--ui-heading-5-line-height: var(--ui-
|
|
87
|
-
--ui-heading-5-weight: var(--ui-weight-medium);
|
|
88
|
-
--ui-heading-5-tracking: var(--ui-
|
|
86
|
+
--ui-heading-5-line-height: var(--ui-line-height-sm);
|
|
87
|
+
--ui-heading-5-weight: var(--ui-font-weight-medium);
|
|
88
|
+
--ui-heading-5-tracking: var(--ui-letter-spacing-body);
|
|
89
89
|
|
|
90
90
|
// Body
|
|
91
91
|
--ui-body-size: var(--ui-font-size-md);
|
|
92
|
-
--ui-body-line-height: var(--ui-
|
|
93
|
-
--ui-body-weight: var(--ui-weight-normal);
|
|
94
|
-
--ui-body-tracking: var(--ui-
|
|
92
|
+
--ui-body-line-height: var(--ui-line-height-md);
|
|
93
|
+
--ui-body-weight: var(--ui-font-weight-normal);
|
|
94
|
+
--ui-body-tracking: var(--ui-letter-spacing-body);
|
|
95
95
|
|
|
96
96
|
// Body Small
|
|
97
97
|
--ui-body-sm-size: var(--ui-font-size-sm);
|
|
98
|
-
--ui-body-sm-line-height: var(--ui-
|
|
99
|
-
--ui-body-sm-weight: var(--ui-weight-normal);
|
|
100
|
-
--ui-body-sm-tracking: var(--ui-
|
|
98
|
+
--ui-body-sm-line-height: var(--ui-line-height-sm);
|
|
99
|
+
--ui-body-sm-weight: var(--ui-font-weight-normal);
|
|
100
|
+
--ui-body-sm-tracking: var(--ui-letter-spacing-body);
|
|
101
101
|
|
|
102
102
|
// Caption
|
|
103
103
|
--ui-caption-size: var(--ui-font-size-xs);
|
|
104
|
-
--ui-caption-line-height: var(--ui-
|
|
105
|
-
--ui-caption-weight: var(--ui-weight-normal);
|
|
104
|
+
--ui-caption-line-height: var(--ui-line-height-xs);
|
|
105
|
+
--ui-caption-weight: var(--ui-font-weight-normal);
|
|
106
106
|
--ui-caption-tracking: 0.01em;
|
|
107
107
|
|
|
108
108
|
// Lead
|
|
109
109
|
--ui-lead-size: var(--ui-font-size-lg);
|
|
110
|
-
--ui-lead-line-height: var(--ui-
|
|
111
|
-
--ui-lead-weight: var(--ui-weight-normal);
|
|
112
|
-
--ui-lead-tracking: var(--ui-
|
|
110
|
+
--ui-lead-line-height: var(--ui-line-height-lg);
|
|
111
|
+
--ui-lead-weight: var(--ui-font-weight-normal);
|
|
112
|
+
--ui-lead-tracking: var(--ui-letter-spacing-body);
|
|
113
113
|
|
|
114
114
|
// Eyebrow
|
|
115
115
|
--ui-eyebrow-size: var(--ui-font-size-xs);
|
|
116
|
-
--ui-eyebrow-line-height: var(--ui-
|
|
117
|
-
--ui-eyebrow-weight: var(--ui-weight-semibold);
|
|
118
|
-
--ui-eyebrow-tracking: var(--ui-
|
|
116
|
+
--ui-eyebrow-line-height: var(--ui-line-height-xs);
|
|
117
|
+
--ui-eyebrow-weight: var(--ui-font-weight-semibold);
|
|
118
|
+
--ui-eyebrow-tracking: var(--ui-letter-spacing-caps);
|
|
119
119
|
}
|
|
120
120
|
}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
@layer tokens {
|
|
2
2
|
:root {
|
|
3
3
|
// Z-index scale (gaps allow insertion)
|
|
4
|
-
--ui-z-base: 0;
|
|
5
|
-
--ui-z-sticky: 100;
|
|
6
|
-
--ui-z-dropdown: 200;
|
|
7
|
-
--ui-z-overlay: 300;
|
|
8
|
-
--ui-z-modal: 400;
|
|
9
|
-
--ui-z-popover: 500;
|
|
10
|
-
--ui-z-tooltip: 600;
|
|
11
|
-
--ui-z-toast: 700;
|
|
12
|
-
--ui-z-drawer: 800;
|
|
13
|
-
--ui-z-debug: 9999;
|
|
4
|
+
--ui-z-index-base: 0;
|
|
5
|
+
--ui-z-index-sticky: 100;
|
|
6
|
+
--ui-z-index-dropdown: 200;
|
|
7
|
+
--ui-z-index-overlay: 300;
|
|
8
|
+
--ui-z-index-modal: 400;
|
|
9
|
+
--ui-z-index-popover: 500;
|
|
10
|
+
--ui-z-index-tooltip: 600;
|
|
11
|
+
--ui-z-index-toast: 700;
|
|
12
|
+
--ui-z-index-drawer: 800;
|
|
13
|
+
--ui-z-index-debug: 9999;
|
|
14
14
|
}
|
|
15
15
|
}
|
package/src/debug/docs.html
CHANGED
|
@@ -6,15 +6,15 @@ skipValidation: true
|
|
|
6
6
|
|
|
7
7
|
<!-- @grid_overlay -->
|
|
8
8
|
<!-- Shows the 8px unit grid. Add the class to any container. -->
|
|
9
|
-
<div class="ui-debug-grid" style="
|
|
9
|
+
<div class="ui-debug-grid demo-box" style="--demo-h: var(--ui-row-6)"></div>
|
|
10
10
|
|
|
11
11
|
<!-- @row_grid -->
|
|
12
12
|
<!-- Shows both 8px unit lines and stronger row (16px) lines. -->
|
|
13
|
-
<div class="ui-debug-grid-rows" style="
|
|
13
|
+
<div class="ui-debug-grid-rows demo-box" style="--demo-h: var(--ui-row-6)"></div>
|
|
14
14
|
|
|
15
15
|
<!-- @baseline -->
|
|
16
16
|
<!-- Horizontal baseline grid for verifying text alignment. -->
|
|
17
|
-
<div class="ui-debug-baseline" style="
|
|
17
|
+
<div class="ui-debug-baseline demo-box" style="--demo-h: var(--ui-row-6)"></div>
|
|
18
18
|
|
|
19
19
|
<!-- @outline -->
|
|
20
20
|
<!-- Outlines all child elements to reveal layout boundaries. -->
|
package/src/debug/index.scss
CHANGED
|
@@ -7,8 +7,7 @@
|
|
|
7
7
|
}
|
|
8
8
|
|
|
9
9
|
.debug-grid {
|
|
10
|
-
|
|
11
|
-
--debug-color: hsl(var(--ui-hue-primary, #{t.$hue-primary}) 80% 50% / 0.15);
|
|
10
|
+
--debug-color: color-mix(in oklch, var(--ui-color-primary, #{t.$color-primary}) 15%, transparent);
|
|
12
11
|
}
|
|
13
12
|
|
|
14
13
|
.debug-grid::after {
|
|
@@ -16,7 +15,7 @@
|
|
|
16
15
|
position: absolute;
|
|
17
16
|
inset-block-start: 0;
|
|
18
17
|
inset-inline-start: 0;
|
|
19
|
-
z-index: var(--ui-z-debug);
|
|
18
|
+
z-index: var(--ui-z-index-debug);
|
|
20
19
|
|
|
21
20
|
block-size: 100%;
|
|
22
21
|
inline-size: 100%;
|
|
@@ -31,8 +30,8 @@
|
|
|
31
30
|
|
|
32
31
|
// Stronger grid at row intervals
|
|
33
32
|
.debug-grid-rows {
|
|
34
|
-
--debug-color:
|
|
35
|
-
--debug-color-strong:
|
|
33
|
+
--debug-color: color-mix(in oklch, var(--ui-color-primary, #{t.$color-primary}) 10%, transparent);
|
|
34
|
+
--debug-color-strong: color-mix(in oklch, var(--ui-color-primary, #{t.$color-primary}) 25%, transparent);
|
|
36
35
|
}
|
|
37
36
|
|
|
38
37
|
.debug-grid-rows::after {
|
|
@@ -40,7 +39,7 @@
|
|
|
40
39
|
position: absolute;
|
|
41
40
|
inset-block-start: 0;
|
|
42
41
|
inset-inline-start: 0;
|
|
43
|
-
z-index: var(--ui-z-debug);
|
|
42
|
+
z-index: var(--ui-z-index-debug);
|
|
44
43
|
|
|
45
44
|
block-size: 100%;
|
|
46
45
|
inline-size: 100%;
|
|
@@ -56,7 +55,7 @@
|
|
|
56
55
|
|
|
57
56
|
// Baseline grid only (horizontal lines)
|
|
58
57
|
.debug-baseline {
|
|
59
|
-
--debug-color:
|
|
58
|
+
--debug-color: color-mix(in oklch, var(--ui-color-danger, #{t.$color-danger}) 20%, transparent);
|
|
60
59
|
}
|
|
61
60
|
|
|
62
61
|
.debug-baseline::after {
|
|
@@ -64,7 +63,7 @@
|
|
|
64
63
|
position: absolute;
|
|
65
64
|
inset-block-start: 0;
|
|
66
65
|
inset-inline-start: 0;
|
|
67
|
-
z-index: var(--ui-z-debug);
|
|
66
|
+
z-index: var(--ui-z-index-debug);
|
|
68
67
|
|
|
69
68
|
block-size: 100%;
|
|
70
69
|
inline-size: 100%;
|
|
@@ -5,29 +5,29 @@ description: Constrains a container to a specific aspect ratio. Media children f
|
|
|
5
5
|
|
|
6
6
|
<!-- @presets -->
|
|
7
7
|
<div class="ui-row ui-row--md">
|
|
8
|
-
<div class="ui-aspect-ratio ui-aspect-ratio--square
|
|
8
|
+
<div class="ui-aspect-ratio ui-aspect-ratio--square demo-swatch">
|
|
9
9
|
<span class="ui-p-2">{{ t('square', 'square') }}</span>
|
|
10
10
|
</div>
|
|
11
|
-
<div class="ui-aspect-ratio ui-aspect-ratio--video
|
|
11
|
+
<div class="ui-aspect-ratio ui-aspect-ratio--video demo-swatch">
|
|
12
12
|
<span class="ui-p-2">{{ t('video', 'video') }}</span>
|
|
13
13
|
</div>
|
|
14
|
-
<div class="ui-aspect-ratio ui-aspect-ratio--photo
|
|
14
|
+
<div class="ui-aspect-ratio ui-aspect-ratio--photo demo-swatch">
|
|
15
15
|
<span class="ui-p-2">{{ t('photo', 'photo') }}</span>
|
|
16
16
|
</div>
|
|
17
|
-
<div class="ui-aspect-ratio ui-aspect-ratio--wide
|
|
17
|
+
<div class="ui-aspect-ratio ui-aspect-ratio--wide demo-swatch">
|
|
18
18
|
<span class="ui-p-2">{{ t('wide', 'wide') }}</span>
|
|
19
19
|
</div>
|
|
20
|
-
<div class="ui-aspect-ratio ui-aspect-ratio--portrait
|
|
20
|
+
<div class="ui-aspect-ratio ui-aspect-ratio--portrait demo-swatch">
|
|
21
21
|
<span class="ui-p-2">{{ t('portrait', 'portrait') }}</span>
|
|
22
22
|
</div>
|
|
23
23
|
</div>
|
|
24
24
|
|
|
25
25
|
<!-- @with_media -->
|
|
26
26
|
<div class="ui-row ui-row--md">
|
|
27
|
-
<div class="ui-aspect-ratio ui-aspect-ratio--video" style="
|
|
27
|
+
<div class="ui-aspect-ratio ui-aspect-ratio--video demo-swatch" style="--demo-w: 240px">
|
|
28
28
|
<div style="inline-size: 100%; block-size: 100%; background: var(--ui-color-primary); color: var(--ui-color-on-primary); display: grid; place-items: center">{{ t('img_video', 'img (video)') }}</div>
|
|
29
29
|
</div>
|
|
30
|
-
<div class="ui-aspect-ratio ui-aspect-ratio--square" style="
|
|
30
|
+
<div class="ui-aspect-ratio ui-aspect-ratio--square demo-swatch" style="--demo-w: 240px">
|
|
31
31
|
<div style="inline-size: 100%; block-size: 100%; background: var(--ui-color-primary); color: var(--ui-color-on-primary); display: grid; place-items: center">{{ t('img_square', 'img (square)') }}</div>
|
|
32
32
|
</div>
|
|
33
33
|
</div>
|
|
@@ -5,19 +5,19 @@ description: Centers content horizontally and vertically.
|
|
|
5
5
|
|
|
6
6
|
<!-- @basic -->
|
|
7
7
|
<!-- Centers children both horizontally and vertically using flexbox. -->
|
|
8
|
-
<div class="ui-center" style="
|
|
8
|
+
<div class="ui-center demo-box ui-bg-muted" style="--demo-h: var(--ui-row-4)">
|
|
9
9
|
<span>{{ t('centered_content', 'Centered content') }}</span>
|
|
10
10
|
</div>
|
|
11
11
|
|
|
12
12
|
<!-- @column_direction -->
|
|
13
13
|
<!-- Stack centered children vertically. -->
|
|
14
|
-
<div class="ui-center ui-center--column" style="
|
|
14
|
+
<div class="ui-center ui-center--column demo-box ui-bg-muted" style="--demo-h: var(--ui-row-6)">
|
|
15
15
|
<span>{{ t('first_line', 'First line') }}</span>
|
|
16
16
|
<span>{{ t('second_line', 'Second line') }}</span>
|
|
17
17
|
</div>
|
|
18
18
|
|
|
19
19
|
<!-- @full_page_center -->
|
|
20
20
|
<!-- Center content within a full viewport area, useful for loading or empty states. -->
|
|
21
|
-
<div class="ui-center" style="
|
|
21
|
+
<div class="ui-center demo-box ui-bg-muted" style="--demo-h: var(--ui-row-8)">
|
|
22
22
|
<p>{{ t('no_results_found', 'No results found') }}</p>
|
|
23
23
|
</div>
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
.footer {
|
|
7
7
|
--_space-2: var(--ui-space-2);
|
|
8
8
|
--_border-width-sm: var(--ui-border-width-sm);
|
|
9
|
-
--
|
|
9
|
+
--_shadow-color: color-mix(in oklch, var(--ui-color-neutral, #{t.$color-neutral}) 8%, transparent);
|
|
10
10
|
// @desc Overall height
|
|
11
11
|
--_height: var(--ui-footer-height, var(--ui-row-3));
|
|
12
12
|
// @desc Background color
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
// @desc Border color
|
|
17
17
|
--_border-color: var(--ui-footer-border-color, var(--ui-color-border));
|
|
18
18
|
// @desc Z-index stacking order
|
|
19
|
-
--_z: var(--ui-footer-z, var(--ui-z-sticky));
|
|
19
|
+
--_z: var(--ui-footer-z, var(--ui-z-index-sticky));
|
|
20
20
|
|
|
21
21
|
display: flex;
|
|
22
22
|
align-items: center;
|
|
@@ -73,6 +73,6 @@
|
|
|
73
73
|
|
|
74
74
|
// @modifier boolean raised
|
|
75
75
|
.footer--raised {
|
|
76
|
-
box-shadow: 0 calc(var(--_border-width-sm) * -1) 6px
|
|
76
|
+
box-shadow: 0 calc(var(--_border-width-sm) * -1) 6px var(--_shadow-color);
|
|
77
77
|
}
|
|
78
78
|
}
|
|
@@ -5,7 +5,7 @@ description: Main content area that accounts for sidebar and topbar offsets in a
|
|
|
5
5
|
|
|
6
6
|
<!-- @default -->
|
|
7
7
|
<!-- Offsets content for a start-side sidebar and optional topbar. -->
|
|
8
|
-
<div style="
|
|
8
|
+
<div class="demo-box" style="--demo-h: var(--ui-row-4)">
|
|
9
9
|
<main class="ui-main ui-bg-muted ui-p-2">
|
|
10
10
|
<p>{{ t('main_content_area', 'Main content area') }}</p>
|
|
11
11
|
</main>
|
|
@@ -13,7 +13,7 @@ description: Main content area that accounts for sidebar and topbar offsets in a
|
|
|
13
13
|
|
|
14
14
|
<!-- @sidebar_end -->
|
|
15
15
|
<!-- Offsets content for an end-side sidebar instead of start. -->
|
|
16
|
-
<div style="
|
|
16
|
+
<div class="demo-box" style="--demo-h: var(--ui-row-4)">
|
|
17
17
|
<main class="ui-main ui-main--sidebar-end ui-bg-muted ui-p-2">
|
|
18
18
|
<p>{{ t('content_with_end_sidebar', 'Content with end sidebar') }}</p>
|
|
19
19
|
</main>
|
|
@@ -21,7 +21,7 @@ description: Main content area that accounts for sidebar and topbar offsets in a
|
|
|
21
21
|
|
|
22
22
|
<!-- @full_width -->
|
|
23
23
|
<!-- No sidebar offset. Use when there is no sidebar. -->
|
|
24
|
-
<div style="
|
|
24
|
+
<div class="demo-box" style="--demo-h: var(--ui-row-4)">
|
|
25
25
|
<main class="ui-main ui-main--full ui-bg-muted ui-p-2">
|
|
26
26
|
<p>{{ t('full_width_content', 'Full width content') }}</p>
|
|
27
27
|
</main>
|
|
@@ -5,7 +5,7 @@ description: Narrow fixed vertical navigation rail for icon-based navigation wit
|
|
|
5
5
|
|
|
6
6
|
<!-- @default -->
|
|
7
7
|
<!-- Fixed narrow rail with icon items and bottom actions. -->
|
|
8
|
-
<nav class="ui-nav-rail" style="
|
|
8
|
+
<nav class="ui-nav-rail demo-box" style="--demo-h: 320px">
|
|
9
9
|
<div class="ui-nav-rail__items">
|
|
10
10
|
<button class="ui-button ui-button--ghost ui-button--icon">{{ t('h', 'H') }}</button>
|
|
11
11
|
<button class="ui-button ui-button--ghost ui-button--icon">{{ t('s', 'S') }}</button>
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
// @desc Gap between children
|
|
15
15
|
--_gap: var(--ui-nav-rail-gap, var(--ui-space-1));
|
|
16
16
|
// @desc Z-index stacking order
|
|
17
|
-
--_z: var(--ui-nav-rail-z, var(--ui-z-sticky));
|
|
17
|
+
--_z: var(--ui-nav-rail-z, var(--ui-z-index-sticky));
|
|
18
18
|
|
|
19
19
|
display: flex;
|
|
20
20
|
flex-direction: column;
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
--_space-1: var(--ui-space-1);
|
|
8
8
|
--_space-2: var(--ui-space-2);
|
|
9
9
|
--_border-width-sm: var(--ui-border-width-sm);
|
|
10
|
-
--_z-sticky: var(--ui-z-sticky);
|
|
10
|
+
--_z-sticky: var(--ui-z-index-sticky);
|
|
11
11
|
--_color-bg: var(--ui-color-bg);
|
|
12
12
|
// @desc Vertical padding
|
|
13
13
|
--_padding-block: var(--ui-page-header-padding-block, var(--ui-space-3));
|
|
@@ -10,13 +10,13 @@ description: Fixed-position sidebar for app layouts with adjustable widths and p
|
|
|
10
10
|
</aside>
|
|
11
11
|
|
|
12
12
|
<!-- @widths | column -->
|
|
13
|
-
<aside class="ui-sidebar ui-sidebar--sm
|
|
13
|
+
<aside class="ui-sidebar ui-sidebar--sm ui-relative">
|
|
14
14
|
<p>{{ t('small_192px', 'Small (192px)') }}</p>
|
|
15
15
|
</aside>
|
|
16
|
-
<aside class="ui-sidebar ui-sidebar--md
|
|
16
|
+
<aside class="ui-sidebar ui-sidebar--md ui-relative">
|
|
17
17
|
<p>{{ t('medium_240px_default', 'Medium (240px, default)') }}</p>
|
|
18
18
|
</aside>
|
|
19
|
-
<aside class="ui-sidebar ui-sidebar--lg
|
|
19
|
+
<aside class="ui-sidebar ui-sidebar--lg ui-relative">
|
|
20
20
|
<p>{{ t('large_320px', 'Large (320px)') }}</p>
|
|
21
21
|
</aside>
|
|
22
22
|
|
|
@@ -76,7 +76,7 @@
|
|
|
76
76
|
},
|
|
77
77
|
{
|
|
78
78
|
"name": "--ui-sidebar-nav-group-label-weight",
|
|
79
|
-
"default": "var(--ui-weight-bold)",
|
|
79
|
+
"default": "var(--ui-font-weight-bold)",
|
|
80
80
|
"description": "Group label weight"
|
|
81
81
|
},
|
|
82
82
|
{
|
|
@@ -126,7 +126,7 @@
|
|
|
126
126
|
},
|
|
127
127
|
{
|
|
128
128
|
"name": "--ui-sidebar-nav-item-active-weight",
|
|
129
|
-
"default": "var(--ui-weight-medium)",
|
|
129
|
+
"default": "var(--ui-font-weight-medium)",
|
|
130
130
|
"description": "Item active weight"
|
|
131
131
|
},
|
|
132
132
|
{
|
|
@@ -5,7 +5,7 @@ description: Navigation component for sidebars with support for groups, nested i
|
|
|
5
5
|
|
|
6
6
|
<!-- @basic -->
|
|
7
7
|
<!-- Simple navigation with grouped items. -->
|
|
8
|
-
<nav class="ui-sidebar-nav" aria-label="{{ t('main_navigation', 'Main navigation') }}" style="
|
|
8
|
+
<nav class="ui-sidebar-nav" aria-label="{{ t('main_navigation', 'Main navigation') }}" class="demo-box" style="--demo-h: 400px">
|
|
9
9
|
<div class="ui-sidebar-nav__header">
|
|
10
10
|
<strong>{{ t('app_name', 'App Name') }}</strong>
|
|
11
11
|
</div>
|
|
@@ -55,7 +55,7 @@ description: Navigation component for sidebars with support for groups, nested i
|
|
|
55
55
|
|
|
56
56
|
<!-- @with_icons -->
|
|
57
57
|
<!-- Navigation items with icons for visual clarity. -->
|
|
58
|
-
<nav class="ui-sidebar-nav" aria-label="{{ t('navigation', 'Navigation') }}" style="
|
|
58
|
+
<nav class="ui-sidebar-nav" aria-label="{{ t('navigation', 'Navigation') }}" class="demo-box" style="--demo-h: 300px">
|
|
59
59
|
<div class="ui-sidebar-nav__content">
|
|
60
60
|
<ul class="ui-sidebar-nav__group-items">
|
|
61
61
|
<li>
|
|
@@ -96,7 +96,7 @@ description: Navigation component for sidebars with support for groups, nested i
|
|
|
96
96
|
|
|
97
97
|
<!-- @with_badges -->
|
|
98
98
|
<!-- Navigation items with badges for counts or status indicators. -->
|
|
99
|
-
<nav class="ui-sidebar-nav" aria-label="{{ t('navigation', 'Navigation') }}" style="
|
|
99
|
+
<nav class="ui-sidebar-nav" aria-label="{{ t('navigation', 'Navigation') }}" class="demo-box" style="--demo-h: 200px">
|
|
100
100
|
<div class="ui-sidebar-nav__content">
|
|
101
101
|
<ul class="ui-sidebar-nav__group-items">
|
|
102
102
|
<li>
|
|
@@ -129,7 +129,7 @@ description: Navigation component for sidebars with support for groups, nested i
|
|
|
129
129
|
|
|
130
130
|
<!-- @nested_items -->
|
|
131
131
|
<!-- Navigation with nested/indented items for sub-sections. -->
|
|
132
|
-
<nav class="ui-sidebar-nav" aria-label="{{ t('navigation', 'Navigation') }}" style="
|
|
132
|
+
<nav class="ui-sidebar-nav" aria-label="{{ t('navigation', 'Navigation') }}" class="demo-box" style="--demo-h: 280px">
|
|
133
133
|
<div class="ui-sidebar-nav__content">
|
|
134
134
|
<div class="ui-sidebar-nav__group">
|
|
135
135
|
<span class="ui-sidebar-nav__group-label">{{ t('components', 'Components') }}</span>
|
|
@@ -169,7 +169,7 @@ description: Navigation component for sidebars with support for groups, nested i
|
|
|
169
169
|
|
|
170
170
|
<!-- @collapsed -->
|
|
171
171
|
<!-- Icon-only mode for compact sidebars. -->
|
|
172
|
-
<nav class="ui-sidebar-nav ui-sidebar-nav--collapsed" aria-label="{{ t('navigation', 'Navigation') }}" style="
|
|
172
|
+
<nav class="ui-sidebar-nav ui-sidebar-nav--collapsed" aria-label="{{ t('navigation', 'Navigation') }}" class="demo-box" style="--demo-h: 200px">
|
|
173
173
|
<div class="ui-sidebar-nav__content">
|
|
174
174
|
<ul class="ui-sidebar-nav__group-items">
|
|
175
175
|
<li>
|
|
@@ -209,7 +209,7 @@ description: Navigation component for sidebars with support for groups, nested i
|
|
|
209
209
|
|
|
210
210
|
<!-- @disabled_items -->
|
|
211
211
|
<!-- Non-interactive navigation items. -->
|
|
212
|
-
<nav class="ui-sidebar-nav" aria-label="{{ t('navigation', 'Navigation') }}" style="
|
|
212
|
+
<nav class="ui-sidebar-nav" aria-label="{{ t('navigation', 'Navigation') }}" class="demo-box" style="--demo-h: 180px">
|
|
213
213
|
<div class="ui-sidebar-nav__content">
|
|
214
214
|
<ul class="ui-sidebar-nav__group-items">
|
|
215
215
|
<li>
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
--_space-1: var(--ui-space-1);
|
|
13
13
|
--_space-half: var(--ui-space-half);
|
|
14
14
|
--_size-xs: var(--ui-size-xs);
|
|
15
|
-
--_weight-medium: var(--ui-weight-medium);
|
|
15
|
+
--_weight-medium: var(--ui-font-weight-medium);
|
|
16
16
|
--_color-text-muted: var(--ui-color-text-muted);
|
|
17
17
|
--_duration-fast: var(--ui-duration-fast);
|
|
18
18
|
--_easing-default: var(--ui-easing-default);
|
|
@@ -83,7 +83,7 @@
|
|
|
83
83
|
// @desc Group label color
|
|
84
84
|
--_color: var(--ui-sidebar-nav-group-label-color, var(--ui-color-text-muted));
|
|
85
85
|
// @desc Group label weight
|
|
86
|
-
--_weight: var(--ui-sidebar-nav-group-label-weight, var(--ui-weight-bold));
|
|
86
|
+
--_weight: var(--ui-sidebar-nav-group-label-weight, var(--ui-font-weight-bold));
|
|
87
87
|
|
|
88
88
|
display: block;
|
|
89
89
|
|
|
@@ -92,7 +92,7 @@
|
|
|
92
92
|
|
|
93
93
|
font-size: var(--_font-size);
|
|
94
94
|
font-weight: var(--_weight);
|
|
95
|
-
letter-spacing: #{t.$
|
|
95
|
+
letter-spacing: #{t.$letter-spacing-wide};
|
|
96
96
|
text-transform: uppercase;
|
|
97
97
|
color: var(--_color);
|
|
98
98
|
}
|
|
@@ -191,7 +191,7 @@
|
|
|
191
191
|
// @desc Item active color
|
|
192
192
|
--_color: var(--ui-sidebar-nav-item-active-color, var(--ui-color-primary-hover));
|
|
193
193
|
// @desc Item active weight
|
|
194
|
-
--_weight: var(--ui-sidebar-nav-item-active-weight, var(--ui-weight-medium));
|
|
194
|
+
--_weight: var(--ui-sidebar-nav-item-active-weight, var(--ui-font-weight-medium));
|
|
195
195
|
}
|
|
196
196
|
|
|
197
197
|
// Nested item indent
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
// @desc Border color
|
|
16
16
|
--_border-color: var(--ui-topbar-border-color, var(--ui-color-border));
|
|
17
17
|
// @desc Z-index stacking order
|
|
18
|
-
--_z: var(--ui-topbar-z, var(--ui-z-sticky));
|
|
18
|
+
--_z: var(--ui-topbar-z, var(--ui-z-index-sticky));
|
|
19
19
|
|
|
20
20
|
display: flex;
|
|
21
21
|
align-items: center;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Position
|
|
3
|
+
description: Position, overflow, and inset utilities for controlling element placement.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
<!-- @position -->
|
|
7
|
+
<!-- Set position type on any element. -->
|
|
8
|
+
<div class="ui-relative ui-bg-muted ui-p-2" style="block-size: var(--ui-row-4)">
|
|
9
|
+
<div class="ui-absolute ui-top-0 ui-end-0 ui-bg-subtle ui-p-1">{{ t('absolute_top_end', 'Absolute top-end') }}</div>
|
|
10
|
+
<div class="ui-absolute ui-bottom-0 ui-start-0 ui-bg-subtle ui-p-1">{{ t('absolute_bottom_start', 'Absolute bottom-start') }}</div>
|
|
11
|
+
</div>
|
|
12
|
+
|
|
13
|
+
<!-- @inset | row -->
|
|
14
|
+
<!-- Pin element to all edges or specific sides. -->
|
|
15
|
+
<div class="ui-relative ui-bg-muted" style="block-size: var(--ui-row-4)">
|
|
16
|
+
<div class="ui-absolute ui-inset-0 ui-bg-subtle ui-p-2">{{ t('inset_0_fills_parent', 'inset-0 fills parent') }}</div>
|
|
17
|
+
</div>
|
|
18
|
+
<div class="ui-relative ui-bg-muted" style="block-size: var(--ui-row-4)">
|
|
19
|
+
<div class="ui-absolute ui-inset-block-0 ui-start-0 ui-bg-subtle ui-p-2">{{ t('inset_block_0_start_0', 'inset-block-0 + start-0') }}</div>
|
|
20
|
+
</div>
|
|
21
|
+
|
|
22
|
+
<!-- @overflow | row -->
|
|
23
|
+
<!-- Control overflow behavior. -->
|
|
24
|
+
<div class="ui-overflow-hidden ui-bg-muted ui-p-2" style="block-size: var(--ui-row-3)">
|
|
25
|
+
<p>{{ t('overflow_hidden_long_content', 'This content is clipped when it overflows the container boundary. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt.') }}</p>
|
|
26
|
+
</div>
|
|
27
|
+
<div class="ui-overflow-auto ui-bg-muted ui-p-2" style="block-size: var(--ui-row-3)">
|
|
28
|
+
<p>{{ t('overflow_auto_long_content', 'This content gets a scrollbar when it overflows. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore.') }}</p>
|
|
29
|
+
</div>
|