@teseor/css 1.8.0 → 1.9.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 +115 -115
- package/package.json +1 -1
- package/src/components/actions/button/button.api.json +29 -32
- package/src/components/actions/button/index.scss +36 -11
- package/src/components/actions/button-group/button-group.api.json +3 -1
- package/src/components/actions/button-group/index.scss +4 -0
- package/src/components/actions/close-button/close-button.api.json +31 -18
- package/src/components/actions/close-button/index.scss +26 -6
- package/src/components/content/divider/divider.api.json +12 -7
- package/src/components/content/divider/index.scss +11 -4
- package/src/components/content/scroll-area/index.scss +15 -1
- package/src/components/content/scroll-area/scroll-area-visual.png +0 -0
- package/src/components/content/scroll-area/scroll-area.api.json +33 -22
- package/src/components/content/scroll-area/scroll-area.docs.json +70 -1
- package/src/components/content/spacer/index.scss +6 -1
- package/src/components/content/spacer/spacer.api.json +8 -1
- package/src/components/data-display/avatar/avatar.api.json +36 -17
- package/src/components/data-display/avatar/index.scss +20 -2
- package/src/components/data-display/badge/badge.api.json +30 -48
- package/src/components/data-display/badge/index.scss +13 -0
- package/src/components/data-display/card/card.api.json +21 -23
- package/src/components/data-display/card/index.scss +19 -4
- package/src/components/data-display/data-list/data-list.api.json +9 -4
- package/src/components/data-display/data-list/index.scss +28 -11
- package/src/components/data-display/icon/icon.api.json +11 -22
- package/src/components/data-display/icon/index.scss +9 -4
- package/src/components/data-display/image/image.api.json +40 -26
- package/src/components/data-display/image/image.docs.json +1 -1
- package/src/components/data-display/image/index.scss +15 -1
- package/src/components/data-display/stat/index.scss +13 -1
- package/src/components/data-display/stat/stat.api.json +45 -7
- package/src/components/data-display/status/index.scss +8 -0
- package/src/components/data-display/status/status.api.json +10 -6
- package/src/components/data-display/table/index.scss +20 -6
- package/src/components/data-display/table/table.api.json +11 -5
- package/src/components/data-display/tag/index.scss +28 -3
- package/src/components/data-display/tag/tag.api.json +48 -22
- package/src/components/disclosure/accordion/accordion.api.json +7 -3
- package/src/components/disclosure/accordion/index.scss +8 -2
- package/src/components/disclosure/disclosure/disclosure.api.json +15 -8
- package/src/components/disclosure/disclosure/index.scss +21 -6
- package/src/components/feedback/alert/alert.api.json +40 -65
- package/src/components/feedback/alert/index.scss +26 -7
- package/src/components/feedback/progress/index.scss +16 -3
- package/src/components/feedback/progress/progress.api.json +13 -8
- package/src/components/feedback/progress-circle/index.scss +15 -2
- package/src/components/feedback/progress-circle/progress-circle.api.json +17 -8
- package/src/components/feedback/skeleton/index.scss +9 -2
- package/src/components/feedback/skeleton/skeleton.api.json +8 -4
- package/src/components/feedback/spinner/index.scss +14 -1
- package/src/components/feedback/spinner/spinner.api.json +27 -13
- package/src/components/feedback/toast/index.scss +39 -15
- package/src/components/feedback/toast/toast.api.json +39 -13
- package/src/components/forms/checkbox/checkbox.api.json +22 -11
- package/src/components/forms/checkbox/index.scss +27 -9
- package/src/components/forms/checkbox-group/checkbox-group.api.json +33 -14
- package/src/components/forms/checkbox-group/index.scss +22 -5
- package/src/components/forms/field/field.api.json +5 -3
- package/src/components/forms/field/index.scss +4 -0
- package/src/components/forms/fieldset/fieldset.api.json +29 -10
- package/src/components/forms/fieldset/index.scss +21 -4
- package/src/components/forms/form/form.api.json +15 -11
- package/src/components/forms/form/index.scss +10 -0
- package/src/components/forms/form-error/form-error.api.json +7 -3
- package/src/components/forms/form-error/index.scss +7 -1
- package/src/components/forms/form-helper/form-helper.api.json +7 -3
- package/src/components/forms/form-helper/index.scss +7 -1
- package/src/components/forms/input/index.scss +43 -12
- package/src/components/forms/input/input.api.json +36 -38
- package/src/components/forms/label/index.scss +14 -5
- package/src/components/forms/label/label.api.json +9 -4
- package/src/components/forms/number-input/index.scss +40 -15
- package/src/components/forms/number-input/number-input-visual.png +0 -0
- package/src/components/forms/number-input/number-input.api.json +48 -19
- package/src/components/forms/number-input/number-input.docs.json +49 -0
- package/src/components/forms/password-input/index.scss +44 -13
- package/src/components/forms/password-input/password-input-visual.png +0 -0
- package/src/components/forms/password-input/password-input.api.json +56 -25
- package/src/components/forms/password-input/password-input.docs.json +40 -0
- package/src/components/forms/radio/index.scss +27 -10
- package/src/components/forms/radio/radio.api.json +20 -10
- package/src/components/forms/radio-group/index.scss +22 -5
- package/src/components/forms/radio-group/radio-group.api.json +33 -14
- package/src/components/forms/search-input/index.scss +42 -11
- package/src/components/forms/search-input/search-input-visual.png +0 -0
- package/src/components/forms/search-input/search-input.api.json +66 -25
- package/src/components/forms/search-input/search-input.docs.json +36 -0
- package/src/components/forms/select/index.scss +40 -11
- package/src/components/forms/select/select.api.json +35 -17
- package/src/components/forms/slider/index.scss +28 -10
- package/src/components/forms/slider/slider.api.json +35 -20
- package/src/components/forms/textarea/index.scss +40 -9
- package/src/components/forms/textarea/textarea.api.json +40 -20
- package/src/components/forms/toggle/index.scss +18 -6
- package/src/components/forms/toggle/toggle.api.json +17 -8
- package/src/components/navigation/breadcrumb/breadcrumb.api.json +25 -11
- package/src/components/navigation/breadcrumb/index.scss +17 -4
- package/src/components/navigation/dropdown-menu/dropdown-menu-visual.png +0 -0
- package/src/components/navigation/dropdown-menu/dropdown-menu.api.json +7 -3
- package/src/components/navigation/dropdown-menu/dropdown-menu.docs.json +18 -0
- package/src/components/navigation/dropdown-menu/index.scss +15 -5
- package/src/components/navigation/menu/index.scss +41 -17
- package/src/components/navigation/menu/menu.api.json +24 -13
- package/src/components/navigation/nav/index.scss +30 -11
- package/src/components/navigation/nav/nav.api.json +42 -18
- package/src/components/navigation/pagination/index.scss +21 -5
- package/src/components/navigation/pagination/pagination.api.json +21 -12
- package/src/components/navigation/tabs/index.scss +43 -15
- package/src/components/navigation/tabs/tabs.api.json +49 -22
- package/src/components/overlays/dialog/dialog.api.json +9 -4
- package/src/components/overlays/dialog/index.scss +12 -3
- package/src/components/overlays/drawer/drawer-visual.png +0 -0
- package/src/components/overlays/drawer/drawer.api.json +26 -13
- package/src/components/overlays/drawer/index.scss +51 -26
- package/src/components/overlays/modal/index.scss +18 -3
- package/src/components/overlays/modal/modal.api.json +22 -12
- package/src/components/overlays/overlay/index.scss +17 -5
- package/src/components/overlays/overlay/overlay.api.json +11 -6
- package/src/components/overlays/popover/index.scss +26 -9
- package/src/components/overlays/popover/popover.api.json +18 -9
- package/src/components/overlays/tooltip/index.scss +17 -2
- package/src/components/overlays/tooltip/tooltip.api.json +19 -10
- package/src/components/typography/blockquote/blockquote.api.json +34 -7
- package/src/components/typography/blockquote/index.scss +17 -4
- package/src/components/typography/code/code.api.json +26 -11
- package/src/components/typography/code/index.scss +23 -6
- package/src/components/typography/code-block/code-block-visual.png +0 -0
- package/src/components/typography/code-block/code-block.api.json +31 -12
- package/src/components/typography/code-block/code-block.docs.json +18 -0
- package/src/components/typography/code-block/index.scss +26 -7
- package/src/components/typography/heading/heading.api.json +37 -18
- package/src/components/typography/heading/index.scss +18 -0
- package/src/components/typography/kbd/index.scss +14 -2
- package/src/components/typography/kbd/kbd.api.json +41 -8
- package/src/components/typography/link/index.scss +16 -3
- package/src/components/typography/link/link.api.json +17 -9
- package/src/components/typography/list/index.scss +7 -0
- package/src/components/typography/list/list.api.json +12 -7
- package/src/components/typography/list/list.docs.json +3 -0
- package/src/components/typography/mark/index.scss +7 -0
- package/src/components/typography/mark/mark.api.json +26 -5
- package/src/config/tokens/_variables.scss +44 -0
- package/src/config/tokens/motion/index.scss +2 -0
- package/src/config/tokens/zindex/index.scss +1 -0
- package/src/debug/grid-overlay.scss +4 -3
- package/src/layout/app-shell/app-shell-visual.png +0 -0
- package/src/layout/app-shell/app-shell.api.json +6 -26
- package/src/layout/app-shell/app-shell.docs.json +18 -0
- package/src/layout/app-shell/index.scss +4 -0
- package/src/layout/aspect-ratio/aspect-ratio.api.json +2 -7
- package/src/layout/aspect-ratio/index.scss +4 -0
- package/src/layout/box/box.api.json +25 -8
- package/src/layout/box/index.scss +26 -8
- package/src/layout/center/center.api.json +1 -0
- package/src/layout/center/index.scss +3 -0
- package/src/layout/column/column.api.json +2 -1
- package/src/layout/column/index.scss +15 -6
- package/src/layout/container/container.api.json +4 -3
- package/src/layout/container/index.scss +13 -6
- package/src/layout/content/content.api.json +7 -3
- package/src/layout/content/index.scss +10 -1
- package/src/layout/footer/footer-visual.png +0 -0
- package/src/layout/footer/footer.api.json +11 -5
- package/src/layout/footer/footer.docs.json +9 -0
- package/src/layout/footer/index.scss +21 -5
- package/src/layout/grid/grid.api.json +2 -1
- package/src/layout/grid/index.scss +6 -1
- package/src/layout/main/index.scss +8 -2
- package/src/layout/main/main.api.json +1 -0
- package/src/layout/nav-rail/index.scss +14 -3
- package/src/layout/nav-rail/nav-rail.api.json +11 -5
- package/src/layout/page-header/index.scss +21 -6
- package/src/layout/page-header/page-header.api.json +9 -4
- package/src/layout/row/index.scss +13 -5
- package/src/layout/row/row.api.json +2 -1
- package/src/layout/sidebar/index.scss +18 -8
- package/src/layout/sidebar/sidebar.api.json +1 -0
- package/src/layout/sidebar/sidebar.docs.json +2 -1
- package/src/layout/sidebar-nav/index.scss +56 -18
- package/src/layout/sidebar-nav/sidebar-nav.api.json +90 -11
- package/src/layout/topbar/index.scss +20 -5
- package/src/layout/topbar/topbar.api.json +11 -5
package/package.json
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
+
"$schema": "Auto-generated from index.scss annotations. Do not edit manually — run: pnpm generate:api",
|
|
2
3
|
"name": "button",
|
|
3
4
|
"element": "button",
|
|
4
5
|
"modifiers": {
|
|
@@ -36,77 +37,73 @@
|
|
|
36
37
|
"cssVars": [
|
|
37
38
|
{
|
|
38
39
|
"name": "--ui-button-accent",
|
|
39
|
-
"
|
|
40
|
-
"
|
|
40
|
+
"default": "var(--ui-color-primary)",
|
|
41
|
+
"description": "Primary accent color. All shades auto-generated via color-mix."
|
|
41
42
|
},
|
|
42
43
|
{
|
|
43
44
|
"name": "--ui-button-height",
|
|
44
|
-
"default": "var(--ui-row-2)"
|
|
45
|
+
"default": "var(--ui-row-2)",
|
|
46
|
+
"description": "Overall height"
|
|
45
47
|
},
|
|
46
48
|
{
|
|
47
49
|
"name": "--ui-button-padding-x",
|
|
48
|
-
"default": "var(--ui-space-2)"
|
|
50
|
+
"default": "var(--ui-space-2)",
|
|
51
|
+
"description": "Horizontal padding"
|
|
49
52
|
},
|
|
50
53
|
{
|
|
51
54
|
"name": "--ui-button-font-size",
|
|
52
|
-
"default": "var(--ui-font-size-sm)"
|
|
55
|
+
"default": "var(--ui-font-size-sm)",
|
|
56
|
+
"description": "Font size"
|
|
53
57
|
},
|
|
54
58
|
{
|
|
55
59
|
"name": "--ui-button-font-weight",
|
|
56
|
-
"default": "var(--ui-weight-medium)"
|
|
60
|
+
"default": "var(--ui-weight-medium)",
|
|
61
|
+
"description": "Font weight"
|
|
57
62
|
},
|
|
58
63
|
{
|
|
59
64
|
"name": "--ui-button-radius",
|
|
60
|
-
"default": "var(--ui-radius-md)"
|
|
65
|
+
"default": "var(--ui-radius-md)",
|
|
66
|
+
"description": "Corner radius"
|
|
61
67
|
},
|
|
62
68
|
{
|
|
63
69
|
"name": "--ui-button-color",
|
|
64
|
-
"default": "var(--ui-color-text-inverse)"
|
|
70
|
+
"default": "var(--ui-color-text-inverse)",
|
|
71
|
+
"description": "Text color"
|
|
65
72
|
},
|
|
66
73
|
{
|
|
67
74
|
"name": "--ui-button-height-sm",
|
|
68
|
-
"default": "calc(var(--ui-row) * 1.5)"
|
|
75
|
+
"default": "calc(var(--ui-row) * 1.5)",
|
|
76
|
+
"description": "Overall height at small size"
|
|
69
77
|
},
|
|
70
78
|
{
|
|
71
79
|
"name": "--ui-button-font-size-sm",
|
|
72
|
-
"default": "var(--ui-font-size-xs)"
|
|
80
|
+
"default": "var(--ui-font-size-xs)",
|
|
81
|
+
"description": "Font size at small size"
|
|
73
82
|
},
|
|
74
83
|
{
|
|
75
84
|
"name": "--ui-button-height-md",
|
|
76
|
-
"default": "var(--ui-row-2)"
|
|
85
|
+
"default": "var(--ui-row-2)",
|
|
86
|
+
"description": "Overall height at medium size"
|
|
77
87
|
},
|
|
78
88
|
{
|
|
79
89
|
"name": "--ui-button-font-size-md",
|
|
80
|
-
"default": "var(--ui-font-size-sm)"
|
|
90
|
+
"default": "var(--ui-font-size-sm)",
|
|
91
|
+
"description": "Font size at medium size"
|
|
81
92
|
},
|
|
82
93
|
{
|
|
83
94
|
"name": "--ui-button-height-lg",
|
|
84
|
-
"default": "calc(var(--ui-row) * 2.5)"
|
|
95
|
+
"default": "calc(var(--ui-row) * 2.5)",
|
|
96
|
+
"description": "Overall height at large size"
|
|
85
97
|
},
|
|
86
98
|
{
|
|
87
99
|
"name": "--ui-button-padding-x-lg",
|
|
88
|
-
"default": "var(--ui-space-3)"
|
|
100
|
+
"default": "var(--ui-space-3)",
|
|
101
|
+
"description": "Horizontal padding at large size"
|
|
89
102
|
},
|
|
90
103
|
{
|
|
91
104
|
"name": "--ui-button-font-size-lg",
|
|
92
|
-
"default": "var(--ui-font-size-md)"
|
|
93
|
-
|
|
94
|
-
{
|
|
95
|
-
"name": "--ui-button-secondary-bg",
|
|
96
|
-
"default": "var(--ui-color-bg-muted)"
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
"name": "--ui-button-secondary-bg-hover",
|
|
100
|
-
"default": "var(--ui-color-border-strong)"
|
|
101
|
-
},
|
|
102
|
-
{
|
|
103
|
-
"name": "--ui-button-secondary-color",
|
|
104
|
-
"default": "var(--ui-color-text)"
|
|
105
|
-
},
|
|
106
|
-
{
|
|
107
|
-
"name": "--ui-color-danger",
|
|
108
|
-
"description": "Used by --danger variant as accent color",
|
|
109
|
-
"default": "var(--ui-color-danger)"
|
|
105
|
+
"default": "var(--ui-font-size-md)",
|
|
106
|
+
"description": "Font size at large size"
|
|
110
107
|
}
|
|
111
108
|
]
|
|
112
109
|
}
|
|
@@ -6,36 +6,60 @@
|
|
|
6
6
|
// Token definitions - what makes each variant
|
|
7
7
|
@layer components.tokens {
|
|
8
8
|
.button {
|
|
9
|
+
--_space-1: var(--ui-space-1, #{t.$space-1});
|
|
10
|
+
--_font-sans: var(--ui-font-sans, #{t.$font-sans});
|
|
11
|
+
--_duration-base: var(--ui-duration-base);
|
|
12
|
+
--_ease-default: var(--ui-ease-default);
|
|
13
|
+
--_duration-fast: var(--ui-duration-fast);
|
|
14
|
+
--_border-width-md: var(--ui-border-width-md, #{t.$border-width-md});
|
|
15
|
+
--_color-focus: var(--ui-color-focus, #{t.$color-focus});
|
|
16
|
+
--_opacity-disabled: var(--ui-opacity-disabled, #{t.$opacity-disabled});
|
|
17
|
+
--_space-quarter: var(--ui-space-quarter);
|
|
18
|
+
--_opacity-loading: var(--ui-opacity-loading, #{t.$opacity-loading});
|
|
9
19
|
// Single accent color - all shades derived via color-mix
|
|
20
|
+
// @desc Primary accent color. All shades auto-generated via color-mix.
|
|
10
21
|
--_accent: var(--ui-button-accent, var(--ui-color-primary, #{t.$color-primary}));
|
|
11
22
|
|
|
23
|
+
// @desc Overall height
|
|
12
24
|
--_height: var(--ui-button-height, var(--ui-row-2, #{t.$row-2}));
|
|
25
|
+
// @desc Horizontal padding
|
|
13
26
|
--_padding-x: var(--ui-button-padding-x, var(--ui-space-2, #{t.$space-2}));
|
|
27
|
+
// @desc Font size
|
|
14
28
|
--_font-size: var(--ui-button-font-size, var(--ui-font-size-sm, #{t.$font-size-sm}));
|
|
29
|
+
// @desc Font weight
|
|
15
30
|
--_font-weight: var(--ui-button-font-weight, var(--ui-weight-medium, #{t.$weight-medium}));
|
|
31
|
+
// @desc Corner radius
|
|
16
32
|
--_radius: var(--ui-button-radius, var(--ui-radius-md, #{t.$radius-md}));
|
|
17
33
|
--_bg: var(--_accent);
|
|
18
34
|
--_bg-hover: color-mix(in oklch, var(--_accent) 80%, black);
|
|
35
|
+
// @desc Text color
|
|
19
36
|
--_color: var(--ui-button-color, var(--ui-color-text-inverse, #{t.$color-text-inverse}));
|
|
20
37
|
}
|
|
21
38
|
|
|
22
39
|
// @modifier size
|
|
23
40
|
.button--sm {
|
|
24
41
|
--ui-ctx-size: var(--ui-size-sm, #{t.size(sm)});
|
|
42
|
+
// @desc Overall height at small size
|
|
25
43
|
--_height: var(--ui-button-height-sm, calc(var(--ui-row, #{t.$row}) * 1.5));
|
|
44
|
+
// @desc Font size at small size
|
|
26
45
|
--_font-size: var(--ui-button-font-size-sm, var(--ui-font-size-xs, #{t.$font-size-xs}));
|
|
27
46
|
}
|
|
28
47
|
|
|
29
48
|
.button--md {
|
|
30
49
|
--ui-ctx-size: var(--ui-size-md, #{t.size(md)});
|
|
50
|
+
// @desc Overall height at medium size
|
|
31
51
|
--_height: var(--ui-button-height-md, var(--ui-row-2, #{t.$row-2}));
|
|
52
|
+
// @desc Font size at medium size
|
|
32
53
|
--_font-size: var(--ui-button-font-size-md, var(--ui-font-size-sm, #{t.$font-size-sm}));
|
|
33
54
|
}
|
|
34
55
|
|
|
35
56
|
.button--lg {
|
|
36
57
|
--ui-ctx-size: var(--ui-size-lg, #{t.size(lg)});
|
|
58
|
+
// @desc Overall height at large size
|
|
37
59
|
--_height: var(--ui-button-height-lg, calc(var(--ui-row, #{t.$row}) * 2.5));
|
|
60
|
+
// @desc Horizontal padding at large size
|
|
38
61
|
--_padding-x: var(--ui-button-padding-x-lg, var(--ui-space-3, #{t.$space-3}));
|
|
62
|
+
// @desc Font size at large size
|
|
39
63
|
--_font-size: var(--ui-button-font-size-lg, var(--ui-font-size-md, #{t.$font-size-md}));
|
|
40
64
|
}
|
|
41
65
|
|
|
@@ -61,6 +85,7 @@
|
|
|
61
85
|
}
|
|
62
86
|
|
|
63
87
|
.button--danger {
|
|
88
|
+
// @desc Used by --danger variant as accent color
|
|
64
89
|
--_accent: var(--ui-color-danger, #{t.$color-danger});
|
|
65
90
|
}
|
|
66
91
|
|
|
@@ -107,7 +132,7 @@
|
|
|
107
132
|
display: inline-flex;
|
|
108
133
|
align-items: center;
|
|
109
134
|
justify-content: center;
|
|
110
|
-
gap: var(--
|
|
135
|
+
gap: var(--_space-1);
|
|
111
136
|
|
|
112
137
|
// Size
|
|
113
138
|
block-size: var(--_height);
|
|
@@ -117,7 +142,7 @@
|
|
|
117
142
|
margin: 0;
|
|
118
143
|
|
|
119
144
|
// Typography
|
|
120
|
-
font-family: var(--
|
|
145
|
+
font-family: var(--_font-sans);
|
|
121
146
|
font-size: var(--_font-size);
|
|
122
147
|
font-weight: var(--_font-weight);
|
|
123
148
|
line-height: 1;
|
|
@@ -132,9 +157,9 @@
|
|
|
132
157
|
|
|
133
158
|
// Transitions
|
|
134
159
|
transition:
|
|
135
|
-
background-color var(--
|
|
136
|
-
color var(--
|
|
137
|
-
transform var(--
|
|
160
|
+
background-color var(--_duration-base) var(--_ease-default),
|
|
161
|
+
color var(--_duration-base) var(--_ease-default),
|
|
162
|
+
transform var(--_duration-fast) var(--_ease-default);
|
|
138
163
|
|
|
139
164
|
// States - modifiers mirror pseudo-classes for testing/docs
|
|
140
165
|
&:hover,
|
|
@@ -146,8 +171,8 @@
|
|
|
146
171
|
|
|
147
172
|
&:focus-visible,
|
|
148
173
|
&--focus {
|
|
149
|
-
outline: var(--
|
|
150
|
-
outline-offset: var(--
|
|
174
|
+
outline: var(--_border-width-md) solid var(--_color-focus);
|
|
175
|
+
outline-offset: var(--_border-width-md);
|
|
151
176
|
}
|
|
152
177
|
|
|
153
178
|
&:active,
|
|
@@ -156,7 +181,7 @@
|
|
|
156
181
|
}
|
|
157
182
|
|
|
158
183
|
&:disabled {
|
|
159
|
-
opacity: var(--
|
|
184
|
+
opacity: var(--_opacity-disabled);
|
|
160
185
|
cursor: not-allowed;
|
|
161
186
|
|
|
162
187
|
&:hover {
|
|
@@ -178,10 +203,10 @@
|
|
|
178
203
|
// Link variant underline
|
|
179
204
|
&--link {
|
|
180
205
|
text-decoration: underline;
|
|
181
|
-
text-underline-offset: var(--
|
|
206
|
+
text-underline-offset: var(--_space-quarter);
|
|
182
207
|
|
|
183
208
|
&:hover {
|
|
184
|
-
text-decoration-thickness: var(--
|
|
209
|
+
text-decoration-thickness: var(--_space-quarter);
|
|
185
210
|
}
|
|
186
211
|
}
|
|
187
212
|
|
|
@@ -205,7 +230,7 @@
|
|
|
205
230
|
&--loading {
|
|
206
231
|
position: relative;
|
|
207
232
|
|
|
208
|
-
opacity: var(--
|
|
233
|
+
opacity: var(--_opacity-loading);
|
|
209
234
|
pointer-events: none;
|
|
210
235
|
|
|
211
236
|
&::after {
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
+
"$schema": "Auto-generated from index.scss annotations. Do not edit manually — run: pnpm generate:api",
|
|
2
3
|
"name": "button-group",
|
|
3
4
|
"element": "div",
|
|
4
5
|
"modifiers": {
|
|
@@ -9,7 +10,8 @@
|
|
|
9
10
|
"cssVars": [
|
|
10
11
|
{
|
|
11
12
|
"name": "--ui-button-group-radius",
|
|
12
|
-
"default": "var(--ui-radius-md)"
|
|
13
|
+
"default": "var(--ui-radius-md)",
|
|
14
|
+
"description": "Corner radius"
|
|
13
15
|
}
|
|
14
16
|
]
|
|
15
17
|
}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
@use '../../../config/tokens/variables' as t;
|
|
2
|
+
// @component button-group
|
|
3
|
+
// @element div
|
|
2
4
|
|
|
3
5
|
// Button Group - container for grouped buttons
|
|
4
6
|
// Joins buttons together with shared borders
|
|
5
7
|
|
|
6
8
|
@layer components.tokens {
|
|
7
9
|
.button-group {
|
|
10
|
+
// @desc Corner radius
|
|
8
11
|
--_radius: var(--ui-button-group-radius, var(--ui-radius-md, calc(#{t.$unit} / 2)));
|
|
9
12
|
}
|
|
10
13
|
}
|
|
@@ -40,6 +43,7 @@
|
|
|
40
43
|
}
|
|
41
44
|
|
|
42
45
|
// Vertical orientation
|
|
46
|
+
// @modifier boolean vertical
|
|
43
47
|
.button-group--vertical {
|
|
44
48
|
flex-direction: column;
|
|
45
49
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
+
"$schema": "Auto-generated from index.scss annotations. Do not edit manually — run: pnpm generate:api",
|
|
2
3
|
"name": "close-button",
|
|
3
4
|
"element": "button",
|
|
4
5
|
"modifiers": {
|
|
@@ -7,6 +8,12 @@
|
|
|
7
8
|
},
|
|
8
9
|
"subtle": {
|
|
9
10
|
"type": "boolean"
|
|
11
|
+
},
|
|
12
|
+
"hover": {
|
|
13
|
+
"type": "boolean"
|
|
14
|
+
},
|
|
15
|
+
"focus": {
|
|
16
|
+
"type": "boolean"
|
|
10
17
|
}
|
|
11
18
|
},
|
|
12
19
|
"elements": {
|
|
@@ -15,57 +22,63 @@
|
|
|
15
22
|
"cssVars": [
|
|
16
23
|
{
|
|
17
24
|
"name": "--ui-close-button-size",
|
|
18
|
-
"
|
|
19
|
-
"
|
|
25
|
+
"default": "var(--ui-row-2)",
|
|
26
|
+
"description": "Overall button size (width and height)"
|
|
20
27
|
},
|
|
21
28
|
{
|
|
22
29
|
"name": "--ui-close-button-icon-size",
|
|
23
|
-
"
|
|
24
|
-
"
|
|
30
|
+
"default": "var(--ui-size-md)",
|
|
31
|
+
"description": "Size of the X icon"
|
|
25
32
|
},
|
|
26
33
|
{
|
|
27
34
|
"name": "--ui-close-button-color",
|
|
28
|
-
"
|
|
29
|
-
"
|
|
35
|
+
"default": "var(--ui-color-text-muted)",
|
|
36
|
+
"description": "Icon color"
|
|
30
37
|
},
|
|
31
38
|
{
|
|
32
39
|
"name": "--ui-close-button-bg",
|
|
33
|
-
"
|
|
34
|
-
"
|
|
40
|
+
"default": "transparent",
|
|
41
|
+
"description": "Background color"
|
|
35
42
|
},
|
|
36
43
|
{
|
|
37
44
|
"name": "--ui-close-button-hover-bg",
|
|
38
|
-
"
|
|
39
|
-
"
|
|
45
|
+
"default": "var(--ui-color-bg-muted)",
|
|
46
|
+
"description": "Background color on hover"
|
|
40
47
|
},
|
|
41
48
|
{
|
|
42
49
|
"name": "--ui-close-button-radius",
|
|
43
|
-
"
|
|
44
|
-
"
|
|
50
|
+
"default": "var(--ui-radius-md)",
|
|
51
|
+
"description": "Border radius"
|
|
45
52
|
},
|
|
46
53
|
{
|
|
47
54
|
"name": "--ui-close-button-size-sm",
|
|
48
|
-
"default": "calc(var(--ui-unit) * 3)"
|
|
55
|
+
"default": "calc(var(--ui-unit) * 3)",
|
|
56
|
+
"description": "Overall size at small size"
|
|
49
57
|
},
|
|
50
58
|
{
|
|
51
59
|
"name": "--ui-close-button-icon-size-sm",
|
|
52
|
-
"default": "var(--ui-size-sm)"
|
|
60
|
+
"default": "var(--ui-size-sm)",
|
|
61
|
+
"description": "Icon dimensions at small size"
|
|
53
62
|
},
|
|
54
63
|
{
|
|
55
64
|
"name": "--ui-close-button-size-lg",
|
|
56
|
-
"default": "var(--ui-row-3)"
|
|
65
|
+
"default": "var(--ui-row-3)",
|
|
66
|
+
"description": "Overall size at large size"
|
|
57
67
|
},
|
|
58
68
|
{
|
|
59
69
|
"name": "--ui-close-button-icon-size-lg",
|
|
60
|
-
"default": "var(--ui-size-lg)"
|
|
70
|
+
"default": "var(--ui-size-lg)",
|
|
71
|
+
"description": "Icon dimensions at large size"
|
|
61
72
|
},
|
|
62
73
|
{
|
|
63
74
|
"name": "--ui-close-button-subtle-color",
|
|
64
|
-
"default": "var(--ui-color-border-strong)"
|
|
75
|
+
"default": "var(--ui-color-border-strong)",
|
|
76
|
+
"description": "Subtle color"
|
|
65
77
|
},
|
|
66
78
|
{
|
|
67
79
|
"name": "--ui-close-button-subtle-hover-bg",
|
|
68
|
-
"default": "var(--ui-color-bg-subtle)"
|
|
80
|
+
"default": "var(--ui-color-bg-subtle)",
|
|
81
|
+
"description": "Subtle hover bg"
|
|
69
82
|
}
|
|
70
83
|
]
|
|
71
84
|
}
|
|
@@ -5,28 +5,46 @@
|
|
|
5
5
|
|
|
6
6
|
@layer components.tokens {
|
|
7
7
|
.close-button {
|
|
8
|
+
--_duration-base: var(--ui-duration-base, #{t.$duration-base});
|
|
9
|
+
--_ease-default: var(--ui-ease-default, ease);
|
|
10
|
+
--_color-text: var(--ui-color-text, #{t.$color-text});
|
|
11
|
+
--_border-width-md: var(--ui-border-width-md, #{t.$border-width-md});
|
|
12
|
+
--_color-focus: var(--ui-color-focus, #{t.$color-focus});
|
|
13
|
+
--_opacity-disabled: var(--ui-opacity-disabled, #{t.$opacity-disabled});
|
|
14
|
+
// @desc Overall button size (width and height)
|
|
8
15
|
--_size: var(--ui-close-button-size, var(--ui-row-2, #{t.$row-2}));
|
|
16
|
+
// @desc Size of the X icon
|
|
9
17
|
--_icon-size: var(--ui-close-button-icon-size, var(--ui-size-md, #{t.size(md)}));
|
|
18
|
+
// @desc Icon color
|
|
10
19
|
--_color: var(--ui-close-button-color, var(--ui-color-text-muted, #{t.$color-text-muted}));
|
|
20
|
+
// @desc Background color
|
|
11
21
|
--_bg: var(--ui-close-button-bg, transparent);
|
|
22
|
+
// @desc Background color on hover
|
|
12
23
|
--_hover-bg: var(--ui-close-button-hover-bg, var(--ui-color-bg-muted, #{t.$color-bg-muted}));
|
|
24
|
+
// @desc Border radius
|
|
13
25
|
--_radius: var(--ui-close-button-radius, var(--ui-radius-md, #{t.$radius-md}));
|
|
14
26
|
}
|
|
15
27
|
|
|
16
28
|
// @modifier size
|
|
17
29
|
.close-button--sm {
|
|
30
|
+
// @desc Overall size at small size
|
|
18
31
|
--_size: var(--ui-close-button-size-sm, calc(#{t.$unit} * 3));
|
|
32
|
+
// @desc Icon dimensions at small size
|
|
19
33
|
--_icon-size: var(--ui-close-button-icon-size-sm, var(--ui-size-sm, #{t.size(sm)}));
|
|
20
34
|
}
|
|
21
35
|
|
|
22
36
|
.close-button--lg {
|
|
37
|
+
// @desc Overall size at large size
|
|
23
38
|
--_size: var(--ui-close-button-size-lg, var(--ui-row-3, #{t.$row-3}));
|
|
39
|
+
// @desc Icon dimensions at large size
|
|
24
40
|
--_icon-size: var(--ui-close-button-icon-size-lg, var(--ui-size-lg, #{t.size(lg)}));
|
|
25
41
|
}
|
|
26
42
|
|
|
27
43
|
// @modifier boolean subtle
|
|
28
44
|
.close-button--subtle {
|
|
45
|
+
// @desc Subtle color
|
|
29
46
|
--_color: var(--ui-close-button-subtle-color, var(--ui-color-border-strong, #{t.$color-border-strong}));
|
|
47
|
+
// @desc Subtle hover bg
|
|
30
48
|
--_hover-bg: var(--ui-close-button-subtle-hover-bg, var(--ui-color-bg-subtle, #{t.$color-bg-subtle}));
|
|
31
49
|
}
|
|
32
50
|
}
|
|
@@ -52,20 +70,22 @@
|
|
|
52
70
|
appearance: none;
|
|
53
71
|
|
|
54
72
|
transition:
|
|
55
|
-
background-color var(--
|
|
56
|
-
color var(--
|
|
73
|
+
background-color var(--_duration-base) var(--_ease-default),
|
|
74
|
+
color var(--_duration-base) var(--_ease-default);
|
|
57
75
|
|
|
58
76
|
&:hover,
|
|
77
|
+
// @modifier boolean hover
|
|
59
78
|
&--hover {
|
|
60
|
-
color: var(--
|
|
79
|
+
color: var(--_color-text);
|
|
61
80
|
|
|
62
81
|
background: var(--_hover-bg);
|
|
63
82
|
}
|
|
64
83
|
|
|
65
84
|
&:focus-visible,
|
|
85
|
+
// @modifier boolean focus
|
|
66
86
|
&--focus {
|
|
67
|
-
outline: var(--
|
|
68
|
-
outline-offset: var(--
|
|
87
|
+
outline: var(--_border-width-md) solid var(--_color-focus);
|
|
88
|
+
outline-offset: var(--_border-width-md);
|
|
69
89
|
}
|
|
70
90
|
|
|
71
91
|
&:active,
|
|
@@ -74,7 +94,7 @@
|
|
|
74
94
|
}
|
|
75
95
|
|
|
76
96
|
&:disabled {
|
|
77
|
-
opacity: var(--
|
|
97
|
+
opacity: var(--_opacity-disabled);
|
|
78
98
|
cursor: not-allowed;
|
|
79
99
|
|
|
80
100
|
&:hover {
|
|
@@ -1,33 +1,38 @@
|
|
|
1
1
|
{
|
|
2
|
+
"$schema": "Auto-generated from index.scss annotations. Do not edit manually — run: pnpm generate:api",
|
|
2
3
|
"name": "divider",
|
|
3
4
|
"element": "div",
|
|
4
5
|
"modifiers": {
|
|
5
6
|
"vertical": {
|
|
6
7
|
"type": "boolean"
|
|
7
8
|
},
|
|
8
|
-
"dashed": {
|
|
9
|
-
"type": "boolean"
|
|
10
|
-
},
|
|
11
9
|
"position": {
|
|
12
10
|
"values": ["start", "end"]
|
|
11
|
+
},
|
|
12
|
+
"dashed": {
|
|
13
|
+
"type": "boolean"
|
|
13
14
|
}
|
|
14
15
|
},
|
|
15
16
|
"cssVars": [
|
|
16
17
|
{
|
|
17
18
|
"name": "--ui-divider-color",
|
|
18
|
-
"default": "var(--ui-color-border)"
|
|
19
|
+
"default": "var(--ui-color-border)",
|
|
20
|
+
"description": "Text color"
|
|
19
21
|
},
|
|
20
22
|
{
|
|
21
23
|
"name": "--ui-divider-line-size",
|
|
22
|
-
"default": "
|
|
24
|
+
"default": "var(--ui-border-width-sm)",
|
|
25
|
+
"description": "Line size"
|
|
23
26
|
},
|
|
24
27
|
{
|
|
25
28
|
"name": "--ui-divider-height",
|
|
26
|
-
"default": "var(--ui-unit)"
|
|
29
|
+
"default": "var(--ui-unit)",
|
|
30
|
+
"description": "Overall height"
|
|
27
31
|
},
|
|
28
32
|
{
|
|
29
33
|
"name": "--ui-divider-gap",
|
|
30
|
-
"default": "calc(var(--ui-unit) * 2"
|
|
34
|
+
"default": "calc(var(--ui-unit) * 2)",
|
|
35
|
+
"description": "Gap between children"
|
|
31
36
|
}
|
|
32
37
|
]
|
|
33
38
|
}
|
|
@@ -5,9 +5,15 @@
|
|
|
5
5
|
|
|
6
6
|
@layer components.tokens {
|
|
7
7
|
.divider {
|
|
8
|
-
--
|
|
9
|
-
--
|
|
8
|
+
--_font-size-sm: var(--ui-font-size-sm, #{t.$font-size-sm});
|
|
9
|
+
--_color-text-muted: var(--ui-color-text-muted);
|
|
10
|
+
// @desc Text color
|
|
11
|
+
--_color: var(--ui-divider-color, var(--ui-color-border, #{t.$color-border}));
|
|
12
|
+
// @desc Line size
|
|
13
|
+
--_line-size: var(--ui-divider-line-size, #{t.$border-width-sm});
|
|
14
|
+
// @desc Overall height
|
|
10
15
|
--_height: var(--ui-divider-height, #{t.$unit});
|
|
16
|
+
// @desc Gap between children
|
|
11
17
|
--_gap: var(--ui-divider-gap, calc(#{t.$unit} * 2));
|
|
12
18
|
}
|
|
13
19
|
}
|
|
@@ -20,9 +26,9 @@
|
|
|
20
26
|
block-size: var(--_height);
|
|
21
27
|
margin: var(--_gap) 0;
|
|
22
28
|
|
|
23
|
-
font-size: var(--
|
|
29
|
+
font-size: var(--_font-size-sm);
|
|
24
30
|
line-height: 1;
|
|
25
|
-
color: var(--
|
|
31
|
+
color: var(--_color-text-muted);
|
|
26
32
|
}
|
|
27
33
|
|
|
28
34
|
// Horizontal line (default)
|
|
@@ -74,6 +80,7 @@
|
|
|
74
80
|
}
|
|
75
81
|
|
|
76
82
|
// @modifier align
|
|
83
|
+
// @modifier position
|
|
77
84
|
.divider--start::before {
|
|
78
85
|
display: none;
|
|
79
86
|
}
|
|
@@ -5,29 +5,41 @@
|
|
|
5
5
|
|
|
6
6
|
@layer components.tokens {
|
|
7
7
|
.scroll-area {
|
|
8
|
+
--_duration-fast: var(--ui-duration-fast, #{t.$duration-fast});
|
|
9
|
+
--_ease-default: var(--ui-ease-default, ease);
|
|
10
|
+
// @desc Maximum height
|
|
8
11
|
--_max-height: var(--ui-scroll-area-max-height, calc(#{t.$row} * 10));
|
|
12
|
+
// @desc Scrollbar size
|
|
9
13
|
--_scrollbar-size: var(--ui-scroll-area-scrollbar-size, calc(#{t.$unit} * 1));
|
|
14
|
+
// @desc Thumb control text color
|
|
10
15
|
--_thumb-color: var(--ui-scroll-area-thumb-color, var(--ui-color-border-strong, #{t.$color-border-strong}));
|
|
16
|
+
// @desc Thumb hover color
|
|
11
17
|
--_thumb-hover-color: var(--ui-scroll-area-thumb-hover-color, var(--ui-color-neutral-400, #{t.$color-neutral-400}));
|
|
18
|
+
// @desc Track text color
|
|
12
19
|
--_track-color: var(--ui-scroll-area-track-color, transparent);
|
|
20
|
+
// @desc Thumb corner radius
|
|
13
21
|
--_thumb-radius: var(--ui-scroll-area-thumb-radius, var(--ui-radius-full, #{t.$radius-full}));
|
|
14
22
|
}
|
|
15
23
|
|
|
16
24
|
// @modifier size
|
|
17
25
|
.scroll-area--sm {
|
|
26
|
+
// @desc Maximum height at small size
|
|
18
27
|
--_max-height: var(--ui-scroll-area-max-height-sm, calc(#{t.$row} * 5));
|
|
19
28
|
}
|
|
20
29
|
|
|
21
30
|
.scroll-area--lg {
|
|
31
|
+
// @desc Maximum height at large size
|
|
22
32
|
--_max-height: var(--ui-scroll-area-max-height-lg, calc(#{t.$row} * 15));
|
|
23
33
|
}
|
|
24
34
|
|
|
25
35
|
.scroll-area--xl {
|
|
36
|
+
// @desc Maximum height at extra-large size
|
|
26
37
|
--_max-height: var(--ui-scroll-area-max-height-xl, calc(#{t.$row} * 20));
|
|
27
38
|
}
|
|
28
39
|
|
|
29
40
|
// @modifier thin scrollbar
|
|
30
41
|
.scroll-area--thin {
|
|
42
|
+
// @desc Scrollbar size thin
|
|
31
43
|
--_scrollbar-size: var(--ui-scroll-area-scrollbar-size-thin, calc(#{t.$unit} * 0.5));
|
|
32
44
|
}
|
|
33
45
|
}
|
|
@@ -67,6 +79,7 @@
|
|
|
67
79
|
}
|
|
68
80
|
|
|
69
81
|
// Horizontal scrolling
|
|
82
|
+
// @modifier direction
|
|
70
83
|
.scroll-area--horizontal > .scroll-area__viewport {
|
|
71
84
|
max-block-size: none;
|
|
72
85
|
overflow-x: auto;
|
|
@@ -80,10 +93,11 @@
|
|
|
80
93
|
}
|
|
81
94
|
|
|
82
95
|
// Auto-hide: fade scrollbar until hover
|
|
96
|
+
// @modifier boolean auto-hide
|
|
83
97
|
.scroll-area--auto-hide > .scroll-area__viewport::-webkit-scrollbar-thumb {
|
|
84
98
|
background: transparent;
|
|
85
99
|
|
|
86
|
-
transition: background var(--
|
|
100
|
+
transition: background var(--_duration-fast) var(--_ease-default);
|
|
87
101
|
}
|
|
88
102
|
|
|
89
103
|
.scroll-area--auto-hide > .scroll-area__viewport:hover::-webkit-scrollbar-thumb {
|
|
Binary file
|