@esportsplus/ui 0.53.0 → 0.54.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +51 -6
- package/build/components/accordion/index.d.ts +2 -19
- package/build/components/accordion/index.js +7 -7
- package/build/components/anchor/scss/index.scss +1 -1
- package/build/components/button/scss/index.scss +1 -1
- package/build/components/card/scss/index.scss +1 -1
- package/build/components/checkbox/index.d.ts +12 -12
- package/build/components/checkbox/index.js +64 -36
- package/build/components/checkbox/scss/index.scss +1 -1
- package/build/components/checkbox/svg/check.svg +1 -0
- package/build/components/clipboard/copy.d.ts +11 -0
- package/build/components/clipboard/copy.js +49 -0
- package/build/components/clipboard/index.d.ts +1435 -1229
- package/build/components/clipboard/index.js +3 -2
- package/build/components/clipboard/onclick.d.ts +4 -38
- package/build/components/clipboard/onclick.js +7 -7
- package/build/components/counter/index.js +58 -66
- package/build/components/counter/scss/index.scss +1 -1
- package/build/components/form/action.js +8 -8
- package/build/components/form/index.d.ts +4 -4
- package/build/components/form/input.d.ts +4 -4
- package/build/components/grid/scss/index.scss +1 -1
- package/build/components/icon/index.d.ts +2 -19
- package/build/components/icon/index.js +6 -6
- package/build/components/icon/scss/index.scss +1 -1
- package/build/components/index.d.ts +0 -7
- package/build/components/index.js +0 -7
- package/build/components/input/index.d.ts +1 -1
- package/build/components/input/index.js +11 -11
- package/build/components/input/scss/index.scss +1 -1
- package/build/components/link/scss/index.scss +1 -1
- package/build/components/loading/index.js +5 -5
- package/build/components/modal/scss/index.scss +1 -1
- package/build/components/normalize/scss/index.scss +1 -1
- package/build/components/overlay/index.d.ts +2 -19
- package/build/components/overlay/index.js +7 -7
- package/build/components/page/scss/index.scss +1 -1
- package/build/components/radio/index.d.ts +1436 -4
- package/build/components/radio/index.js +0 -1
- package/build/components/range/index.d.ts +1 -1
- package/build/components/range/index.js +13 -13
- package/build/components/range/scss/index.scss +1 -1
- package/build/components/root/scss/index.scss +1 -1
- package/build/components/select/index.d.ts +5 -48
- package/build/components/select/index.js +41 -53
- package/build/components/select/scss/index.scss +1 -1
- package/build/components/sidebar/index.d.ts +2 -19
- package/build/components/sidebar/index.js +7 -7
- package/build/components/sidebar/scss/index.scss +1 -1
- package/build/components/switch/index.d.ts +1436 -4
- package/build/components/switch/index.js +0 -1
- package/build/components/tabs/scss/index.scss +2 -0
- package/build/components/text/scss/index.scss +1 -1
- package/build/components/textarea/index.d.ts +719 -6
- package/build/components/textarea/index.js +37 -15
- package/build/components/textarea/scss/index.scss +1 -1
- package/build/components/toast/index.js +43 -43
- package/build/components/toast/scss/index.scss +1 -1
- package/build/components/tooltip/index.d.ts +2151 -2544
- package/build/components/tooltip/menu.d.ts +2 -18
- package/build/components/tooltip/menu.js +21 -21
- package/build/components/tooltip/onclick.d.ts +717 -1229
- package/build/components/tooltip/onclick.js +16 -52
- package/build/components/tooltip/onhover.d.ts +713 -20
- package/build/components/tooltip/onhover.js +9 -9
- package/build/components/tooltip/scss/index.scss +1 -1
- package/build/components/typewriter/index.d.ts +2 -19
- package/build/components/typewriter/index.js +8 -8
- package/build/css-utilities/background/scss/index.scss +1 -1
- package/build/css-utilities/border/scss/index.scss +1 -1
- package/build/css-utilities/color/scss/index.scss +1 -1
- package/build/css-utilities/font/geist/scss/Geist-Italic-Variable.woff2 +0 -0
- package/build/css-utilities/font/geist/scss/Geist-Variable.woff2 +0 -0
- package/build/css-utilities/font/geist/scss/GeistMono-Italic-Variable.woff2 +0 -0
- package/build/css-utilities/font/geist/scss/GeistMono-Variable.woff2 +0 -0
- package/build/css-utilities/font/geist/scss/index.scss +2 -0
- package/build/css-utilities/font/montserrat/index.d.ts +1 -0
- package/build/css-utilities/font/montserrat/index.js +1 -0
- package/build/css-utilities/font/montserrat/scss/index.scss +2 -0
- package/build/css-utilities/index.scss +1 -1
- package/build/css-utilities/inline/scss/index.scss +1 -1
- package/build/css-utilities/scrollbar/scss/index.scss +1 -1
- package/build/css-utilities/tabular/scss/index.scss +2 -0
- package/build/css-utilities/text/scss/index.scss +1 -1
- package/build/themes/dark/index.d.ts +0 -1
- package/build/themes/dark/index.js +0 -1
- package/build/themes/dark/input.d.ts +708 -114
- package/build/themes/dark/select.d.ts +732 -1406
- package/build/themes/dark/select.js +7 -5
- package/build/themes/dark/textarea.d.ts +716 -119
- package/package.json +12 -12
- package/pnpm-workspace.yaml +4 -3
- package/scripts/css-variables.test.mjs +50 -0
- package/scripts/sort-scss.md +57 -0
- package/scripts/sort-scss.mjs +233 -0
- package/scripts/sort-scss.test.mjs +217 -0
- package/src/components/anchor/scss/index.scss +2 -2
- package/src/components/button/scss/index.scss +23 -57
- package/src/components/button/scss/variables.scss +1 -19
- package/src/components/card/scss/index.scss +11 -46
- package/src/components/card/scss/variables.scss +1 -2
- package/src/components/checkbox/index.ts +27 -31
- package/src/components/checkbox/scss/index.scss +86 -28
- package/src/components/checkbox/scss/variables.scss +71 -30
- package/src/components/checkbox/svg/check.svg +1 -0
- package/src/components/clipboard/copy.ts +60 -0
- package/src/components/clipboard/index.ts +3 -2
- package/src/components/counter/index.ts +57 -57
- package/src/components/counter/scss/index.scss +4 -5
- package/src/components/counter/scss/variables.scss +0 -1
- package/src/components/form/input.ts +4 -3
- package/src/components/grid/scss/index.scss +1 -1
- package/src/components/icon/scss/variables.scss +0 -1
- package/src/components/index.ts +1 -8
- package/src/components/input/index.ts +1 -1
- package/src/components/input/scss/index.scss +8 -7
- package/src/components/input/scss/variables.scss +0 -1
- package/src/components/link/scss/index.scss +9 -34
- package/src/components/link/scss/variables.scss +0 -12
- package/src/components/modal/scss/index.scss +4 -4
- package/src/components/normalize/scss/index.scss +0 -1
- package/src/components/page/scss/index.scss +0 -6
- package/src/components/page/scss/variables.scss +0 -2
- package/src/components/radio/index.ts +0 -1
- package/src/components/range/index.ts +1 -1
- package/src/components/range/scss/index.scss +5 -5
- package/src/components/root/scss/index.scss +37 -63
- package/src/components/root/scss/variables.scss +37 -67
- package/src/components/select/index.ts +16 -33
- package/src/components/select/scss/index.scss +10 -7
- package/src/components/select/scss/variables.scss +0 -1
- package/src/components/sidebar/scss/index.scss +3 -3
- package/src/components/switch/index.ts +1 -2
- package/src/components/tabs/scss/index.scss +62 -0
- package/src/components/tabs/scss/variables.scss +4 -0
- package/src/components/text/scss/index.scss +8 -1
- package/src/components/text/scss/variables.scss +5 -3
- package/src/components/textarea/index.ts +38 -5
- package/src/components/textarea/scss/index.scss +24 -13
- package/src/components/textarea/scss/variables.scss +0 -1
- package/src/components/toast/scss/index.scss +1 -1
- package/src/components/tooltip/onclick.ts +11 -67
- package/src/components/tooltip/scss/index.scss +2 -3
- package/src/css-utilities/background/scss/variables.scss +2 -2
- package/src/css-utilities/border/scss/index.scss +1 -27
- package/src/css-utilities/border/scss/variables.scss +3 -34
- package/src/css-utilities/color/scss/variables.scss +2 -6
- package/src/css-utilities/font/geist/scss/Geist-Italic-Variable.woff2 +0 -0
- package/src/css-utilities/font/geist/scss/Geist-Variable.woff2 +0 -0
- package/src/css-utilities/font/geist/scss/GeistMono-Italic-Variable.woff2 +0 -0
- package/src/css-utilities/font/geist/scss/GeistMono-Variable.woff2 +0 -0
- package/src/css-utilities/font/geist/scss/index.scss +55 -0
- package/src/css-utilities/font/montserrat/index.ts +1 -0
- package/src/{fonts → css-utilities/font}/montserrat/scss/index.scss +15 -0
- package/src/css-utilities/index.scss +6 -12
- package/src/css-utilities/inline/scss/index.scss +0 -1
- package/src/css-utilities/scrollbar/scss/index.scss +42 -0
- package/src/css-utilities/tabular/scss/index.scss +3 -0
- package/src/css-utilities/text/scss/index.scss +30 -71
- package/src/lib/scss/css-variables.scss +29 -5
- package/src/themes/dark/index.ts +0 -1
- package/src/themes/dark/select.ts +7 -5
- package/src/tokens/index.scss +1 -3
- package/src/tokens/scss/border-radius.scss +1 -6
- package/src/tokens/scss/color.scss +3 -3
- package/src/tokens/scss/scale.scss +1 -1
- package/src/tokens/scss/size.scss +7 -0
- package/src/tokens/scss/transition.scss +4 -0
- package/storage/svg/arrow-left.svg +1 -0
- package/storage/svg/arrow-right.svg +1 -0
- package/storage/svg/book.svg +1 -0
- package/storage/svg/cube.svg +1 -0
- package/storage/svg/github.svg +1 -0
- package/storage/svg/info.svg +1 -0
- package/storage/svg/palette.svg +1 -0
- package/storage/svg/search.svg +2 -0
- package/storage/svg/type.svg +1 -0
- package/vite.config.ts +8 -3
- package/build/components/back/index.d.ts +0 -21
- package/build/components/back/index.js +0 -16
- package/build/components/back/scss/index.scss +0 -2
- package/build/components/back/svg/arrow.svg +0 -15
- package/build/components/bubble/scss/index.scss +0 -2
- package/build/components/button/index.d.ts +0 -103
- package/build/components/button/index.js +0 -60
- package/build/components/ellipsis/index.d.ts +0 -4
- package/build/components/ellipsis/index.js +0 -8
- package/build/components/ellipsis/scss/index.scss +0 -2
- package/build/components/frame/index.d.ts +0 -21
- package/build/components/frame/index.js +0 -13
- package/build/components/frame/scss/index.scss +0 -2
- package/build/components/highlight/index.d.ts +0 -22
- package/build/components/highlight/index.js +0 -56
- package/build/components/highlight/scss/index.scss +0 -2
- package/build/components/loader/index.d.ts +0 -22
- package/build/components/loader/index.js +0 -78
- package/build/components/loader/scss/index.scss +0 -2
- package/build/components/radio/scss/index.scss +0 -2
- package/build/components/root/index.d.ts +0 -7
- package/build/components/root/index.js +0 -4
- package/build/components/root/onclick.d.ts +0 -5
- package/build/components/root/onclick.js +0 -12
- package/build/components/switch/scss/index.scss +0 -2
- package/build/css-utilities/[margin,padding]/scss/index.scss +0 -2
- package/build/css-utilities/error/scss/index.scss +0 -2
- package/build/css-utilities/flicker/scss/index.scss +0 -2
- package/build/css-utilities/focus/scss/index.scss +0 -2
- package/build/css-utilities/gap/scss/index.scss +0 -2
- package/build/css-utilities/line-height/scss/index.scss +0 -2
- package/build/css-utilities/pointer/scss/index.scss +0 -2
- package/build/css-utilities/scroll-fade/scss/index.scss +0 -2
- package/build/css-utilities/size/scss/index.scss +0 -2
- package/build/css-utilities/viewport/scss/index.scss +0 -2
- package/build/css-utilities/width/scss/index.scss +0 -2
- package/build/fonts/index.d.ts +0 -1
- package/build/fonts/index.js +0 -1
- package/build/fonts/montserrat/scss/index.scss +0 -2
- package/build/themes/dark/back.d.ts +0 -19
- package/build/themes/dark/back.js +0 -7
- package/build/themes/dark/button/scss/index.scss +0 -2
- package/build/themes/dark/link/scss/index.scss +0 -2
- package/src/components/back/index.ts +0 -20
- package/src/components/back/scss/index.scss +0 -17
- package/src/components/back/svg/arrow.svg +0 -15
- package/src/components/bubble/scss/index.scss +0 -32
- package/src/components/bubble/scss/variables.scss +0 -20
- package/src/components/button/index.ts +0 -53
- package/src/components/ellipsis/index.ts +0 -11
- package/src/components/ellipsis/scss/index.scss +0 -30
- package/src/components/ellipsis/scss/variables.scss +0 -5
- package/src/components/frame/index.ts +0 -13
- package/src/components/frame/scss/index.scss +0 -39
- package/src/components/frame/scss/variables.scss +0 -4
- package/src/components/highlight/index.ts +0 -66
- package/src/components/highlight/scss/index.scss +0 -7
- package/src/components/highlight/scss/variables.scss +0 -4
- package/src/components/loader/index.ts +0 -80
- package/src/components/loader/scss/index.scss +0 -71
- package/src/components/loader/scss/variables.scss +0 -6
- package/src/components/radio/scss/index.scss +0 -50
- package/src/components/radio/scss/variables.scss +0 -67
- package/src/components/root/index.ts +0 -6
- package/src/components/root/onclick.ts +0 -20
- package/src/components/switch/scss/index.scss +0 -48
- package/src/components/switch/scss/variables.scss +0 -74
- package/src/css-utilities/[margin,padding]/scss/index.scss +0 -43
- package/src/css-utilities/[margin,padding]/scss/variables.scss +0 -54
- package/src/css-utilities/error/scss/index.scss +0 -24
- package/src/css-utilities/error/scss/variables.scss +0 -3
- package/src/css-utilities/flicker/scss/index.scss +0 -15
- package/src/css-utilities/flicker/scss/variables.scss +0 -5
- package/src/css-utilities/focus/scss/index.scss +0 -7
- package/src/css-utilities/focus/scss/variables.scss +0 -5
- package/src/css-utilities/gap/scss/index.scss +0 -13
- package/src/css-utilities/gap/scss/variables.scss +0 -39
- package/src/css-utilities/line-height/scss/index.scss +0 -1
- package/src/css-utilities/line-height/scss/variables.scss +0 -10
- package/src/css-utilities/pointer/scss/index.scss +0 -5
- package/src/css-utilities/scroll-fade/scss/index.scss +0 -47
- package/src/css-utilities/scroll-fade/scss/variables.scss +0 -3
- package/src/css-utilities/size/scss/index.scss +0 -1
- package/src/css-utilities/size/scss/variables.scss +0 -12
- package/src/css-utilities/text/scss/variables.scss +0 -31
- package/src/css-utilities/viewport/scss/index.scss +0 -5
- package/src/css-utilities/width/scss/index.scss +0 -5
- package/src/css-utilities/width/scss/variables.scss +0 -9
- package/src/fonts/index.ts +0 -1
- package/src/themes/dark/back.ts +0 -9
- package/src/themes/dark/button/scss/index.scss +0 -46
- package/src/themes/dark/link/scss/index.scss +0 -26
- package/src/tokens/scss/font-weight.scss +0 -6
- package/src/tokens/scss/line-height.scss +0 -9
- package/src/tokens/scss/transition-duration.scss +0 -1
- /package/build/{fonts/montserrat → css-utilities/font/geist}/index.d.ts +0 -0
- /package/build/{fonts/montserrat → css-utilities/font/geist}/index.js +0 -0
- /package/build/{fonts → css-utilities/font}/montserrat/scss/Montserrat-Bold.woff +0 -0
- /package/build/{fonts → css-utilities/font}/montserrat/scss/Montserrat-Bold.woff2 +0 -0
- /package/build/{fonts → css-utilities/font}/montserrat/scss/Montserrat-BoldItalic.woff +0 -0
- /package/build/{fonts → css-utilities/font}/montserrat/scss/Montserrat-BoldItalic.woff2 +0 -0
- /package/build/{fonts → css-utilities/font}/montserrat/scss/Montserrat-Italic.woff +0 -0
- /package/build/{fonts → css-utilities/font}/montserrat/scss/Montserrat-Italic.woff2 +0 -0
- /package/build/{fonts → css-utilities/font}/montserrat/scss/Montserrat-Medium.woff +0 -0
- /package/build/{fonts → css-utilities/font}/montserrat/scss/Montserrat-Medium.woff2 +0 -0
- /package/build/{fonts → css-utilities/font}/montserrat/scss/Montserrat-MediumItalic.woff +0 -0
- /package/build/{fonts → css-utilities/font}/montserrat/scss/Montserrat-MediumItalic.woff2 +0 -0
- /package/build/{fonts → css-utilities/font}/montserrat/scss/Montserrat-Regular.woff +0 -0
- /package/build/{fonts → css-utilities/font}/montserrat/scss/Montserrat-Regular.woff2 +0 -0
- /package/build/{fonts → css-utilities/font}/montserrat/scss/Montserrat-SemiBold.woff +0 -0
- /package/build/{fonts → css-utilities/font}/montserrat/scss/Montserrat-SemiBold.woff2 +0 -0
- /package/build/{fonts → css-utilities/font}/montserrat/scss/Montserrat-SemiBoldItalic.woff +0 -0
- /package/build/{fonts → css-utilities/font}/montserrat/scss/Montserrat-SemiBoldItalic.woff2 +0 -0
- /package/src/{fonts/montserrat → css-utilities/font/geist}/index.ts +0 -0
- /package/src/{fonts → css-utilities/font}/montserrat/scss/Montserrat-Bold.woff +0 -0
- /package/src/{fonts → css-utilities/font}/montserrat/scss/Montserrat-Bold.woff2 +0 -0
- /package/src/{fonts → css-utilities/font}/montserrat/scss/Montserrat-BoldItalic.woff +0 -0
- /package/src/{fonts → css-utilities/font}/montserrat/scss/Montserrat-BoldItalic.woff2 +0 -0
- /package/src/{fonts → css-utilities/font}/montserrat/scss/Montserrat-Italic.woff +0 -0
- /package/src/{fonts → css-utilities/font}/montserrat/scss/Montserrat-Italic.woff2 +0 -0
- /package/src/{fonts → css-utilities/font}/montserrat/scss/Montserrat-Medium.woff +0 -0
- /package/src/{fonts → css-utilities/font}/montserrat/scss/Montserrat-Medium.woff2 +0 -0
- /package/src/{fonts → css-utilities/font}/montserrat/scss/Montserrat-MediumItalic.woff +0 -0
- /package/src/{fonts → css-utilities/font}/montserrat/scss/Montserrat-MediumItalic.woff2 +0 -0
- /package/src/{fonts → css-utilities/font}/montserrat/scss/Montserrat-Regular.woff +0 -0
- /package/src/{fonts → css-utilities/font}/montserrat/scss/Montserrat-Regular.woff2 +0 -0
- /package/src/{fonts → css-utilities/font}/montserrat/scss/Montserrat-SemiBold.woff +0 -0
- /package/src/{fonts → css-utilities/font}/montserrat/scss/Montserrat-SemiBold.woff2 +0 -0
- /package/src/{fonts → css-utilities/font}/montserrat/scss/Montserrat-SemiBoldItalic.woff +0 -0
- /package/src/{fonts → css-utilities/font}/montserrat/scss/Montserrat-SemiBoldItalic.woff2 +0 -0
|
@@ -1,24 +1,23 @@
|
|
|
1
1
|
@use '/lib';
|
|
2
2
|
@use '/tokens';
|
|
3
3
|
@use 'variables';
|
|
4
|
+
@use '../../text/scss/index';
|
|
4
5
|
|
|
5
6
|
.button {
|
|
7
|
+
@extend .text;
|
|
6
8
|
align-content: center;
|
|
7
9
|
align-items: center;
|
|
8
10
|
background: var(--background);
|
|
9
11
|
border-radius: var(--border-radius);
|
|
10
|
-
color: var(--color);
|
|
11
12
|
cursor: pointer;
|
|
12
|
-
|
|
13
|
-
flex-wrap: wrap;
|
|
14
|
-
font-size: var(--font-size);
|
|
15
|
-
font-weight: var(--font-weight);
|
|
13
|
+
flex-wrap: nowrap;
|
|
16
14
|
justify-content: center;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
transition: all var(--transition-duration)
|
|
21
|
-
|
|
15
|
+
padding:
|
|
16
|
+
max(0px, calc(var(--padding-vertical) - var(--border-width)))
|
|
17
|
+
max(0px, calc(var(--padding-horizontal) - var(--border-width)));
|
|
18
|
+
transition: all var(--transition-duration) var(--transition-timing-function);
|
|
19
|
+
white-space: nowrap;
|
|
20
|
+
translate: 0;
|
|
22
21
|
|
|
23
22
|
|
|
24
23
|
// Pseudo Element Box Shadow
|
|
@@ -29,8 +28,8 @@
|
|
|
29
28
|
content: '';
|
|
30
29
|
pointer-events: none;
|
|
31
30
|
transition:
|
|
32
|
-
box-shadow var(--transition-duration)
|
|
33
|
-
opacity var(--transition-duration)
|
|
31
|
+
box-shadow var(--transition-duration) var(--transition-timing-function),
|
|
32
|
+
opacity var(--transition-duration) var(--transition-timing-function);
|
|
34
33
|
z-index: -1;
|
|
35
34
|
}
|
|
36
35
|
|
|
@@ -41,52 +40,13 @@
|
|
|
41
40
|
}
|
|
42
41
|
}
|
|
43
42
|
|
|
44
|
-
&--holding {
|
|
45
|
-
overflow: hidden;
|
|
46
|
-
user-select: none;
|
|
47
|
-
|
|
48
|
-
&::after {
|
|
49
|
-
animation: buttonHolding var(--animation-duration) ease-in-out forwards;
|
|
50
|
-
border-radius: 0;
|
|
51
|
-
box-shadow: unset;
|
|
52
|
-
display: block;
|
|
53
|
-
width: 110%;
|
|
54
|
-
height: 100%;
|
|
55
|
-
background: var(--background-hold);
|
|
56
|
-
transform: translateX(-100%);
|
|
57
|
-
z-index: 1;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
@keyframes buttonHolding {
|
|
61
|
-
100% {
|
|
62
|
-
transform: translateX(0%);
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
> * {
|
|
67
|
-
animation: buttonHoldingContentPulse calc(var(--animation-duration) / 3) infinite ease-in-out;
|
|
68
|
-
z-index: 2;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
@keyframes buttonHoldingContentPulse {
|
|
72
|
-
0%,
|
|
73
|
-
100% {
|
|
74
|
-
opacity: 1;
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
50% {
|
|
78
|
-
opacity: 0.4;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
|
|
83
43
|
&--processing {
|
|
84
44
|
color: transparent;
|
|
85
45
|
pointer-events: none;
|
|
86
46
|
|
|
87
47
|
&::before {
|
|
88
48
|
@include lib.position(absolute, center);
|
|
89
|
-
animation:
|
|
49
|
+
animation: button--processing var(--animation-duration) infinite linear;
|
|
90
50
|
border: var(--border-width) solid color-mix(in srgb, var(--processing-color), transparent 90%);
|
|
91
51
|
border-left-color: var(--processing-color);
|
|
92
52
|
border-radius: 100%;
|
|
@@ -101,7 +61,7 @@
|
|
|
101
61
|
opacity: 0;
|
|
102
62
|
}
|
|
103
63
|
|
|
104
|
-
@keyframes
|
|
64
|
+
@keyframes button--processing {
|
|
105
65
|
0% {
|
|
106
66
|
transform: translate(50%, 50%) rotate(0deg);
|
|
107
67
|
}
|
|
@@ -112,7 +72,7 @@
|
|
|
112
72
|
}
|
|
113
73
|
|
|
114
74
|
&--skeleton {
|
|
115
|
-
animation: var(--animation-duration)
|
|
75
|
+
animation: var(--animation-duration) var(--transition-timing-function) infinite button--skeleton;
|
|
116
76
|
background-image: linear-gradient(270deg, var(--background-pressed), var(--background-default), var(--background-default), var(--background-pressed));
|
|
117
77
|
background-size: 400% 100%;
|
|
118
78
|
color: transparent;
|
|
@@ -122,7 +82,7 @@
|
|
|
122
82
|
opacity: 0;
|
|
123
83
|
}
|
|
124
84
|
|
|
125
|
-
@keyframes
|
|
85
|
+
@keyframes button--skeleton {
|
|
126
86
|
0% {
|
|
127
87
|
background-position: 200% 0;
|
|
128
88
|
}
|
|
@@ -132,16 +92,22 @@
|
|
|
132
92
|
}
|
|
133
93
|
}
|
|
134
94
|
|
|
95
|
+
&--tactile {
|
|
96
|
+
@include tokens.state('pressed') {
|
|
97
|
+
translate: 0 1px;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
|
|
135
101
|
&--top {
|
|
136
102
|
&-left,
|
|
137
103
|
&-right {
|
|
138
104
|
position: absolute;
|
|
139
|
-
top: calc((#{var(--padding-vertical)} +
|
|
105
|
+
top: calc((#{var(--padding-vertical)} + 0.5lh) * -1);
|
|
140
106
|
}
|
|
141
107
|
|
|
142
108
|
@each $direction in 'left' 'right' {
|
|
143
109
|
&-#{$direction} {
|
|
144
|
-
#{$direction}: calc((#{var(--padding-horizontal)} +
|
|
110
|
+
#{$direction}: calc((#{var(--padding-horizontal)} + 0.5lh) * -1);
|
|
145
111
|
}
|
|
146
112
|
}
|
|
147
113
|
}
|
|
@@ -12,21 +12,8 @@
|
|
|
12
12
|
--border-color-default: var(--background);
|
|
13
13
|
--border-color-hover: var(--border-color-default);
|
|
14
14
|
--border-color-pressed: var(--border-color-default);
|
|
15
|
-
--border-radius: var(--border-radius-400);
|
|
16
|
-
--border-width: 0px;
|
|
17
15
|
--box-shadow: var(--box-shadow-default);
|
|
18
16
|
--box-shadow-default: none;
|
|
19
|
-
--color: var(--color-default);
|
|
20
|
-
--color-active: var(--color-default);
|
|
21
|
-
--color-default: var(--color-text-400);
|
|
22
|
-
--color-hover: var(--color-default);
|
|
23
|
-
--color-pressed: var(--color-default);
|
|
24
|
-
--font-size: var(--font-size-400);
|
|
25
|
-
--font-weight: var(--font-weight-400);
|
|
26
|
-
--line-height: var(--line-height-400);
|
|
27
|
-
--padding-horizontal: var(--size-400);
|
|
28
|
-
--padding-vertical: var(--size-400);
|
|
29
|
-
--width: auto;
|
|
30
17
|
|
|
31
18
|
@include tokens.state(active) {
|
|
32
19
|
--background: var(--background-active);
|
|
@@ -47,11 +34,6 @@
|
|
|
47
34
|
}
|
|
48
35
|
|
|
49
36
|
|
|
50
|
-
&--holding {
|
|
51
|
-
--animation-duration: 2.4s;
|
|
52
|
-
--background-hold: var(--background-active);
|
|
53
|
-
}
|
|
54
|
-
|
|
55
37
|
&--processing {
|
|
56
38
|
--animation-duration: 0.64s;
|
|
57
39
|
--border-width: var(--border-width-400);
|
|
@@ -62,4 +44,4 @@
|
|
|
62
44
|
&--skeleton {
|
|
63
45
|
--animation-duration: 6.4s;
|
|
64
46
|
}
|
|
65
|
-
}
|
|
47
|
+
}
|
|
@@ -5,15 +5,17 @@
|
|
|
5
5
|
.card {
|
|
6
6
|
background: var(--background);
|
|
7
7
|
border-radius: var(--border-radius);
|
|
8
|
-
padding:
|
|
8
|
+
padding:
|
|
9
|
+
max(0px, calc(var(--padding-vertical) - var(--border-width)))
|
|
10
|
+
max(0px, calc(var(--padding-horizontal) - var(--border-width)));
|
|
9
11
|
position: relative;
|
|
10
12
|
transition:
|
|
11
|
-
background var(--transition-duration)
|
|
12
|
-
border-color var(--transition-duration)
|
|
13
|
-
box-shadow var(--transition-duration)
|
|
14
|
-
max-height var(--transition-duration)
|
|
15
|
-
opacity var(--transition-duration)
|
|
16
|
-
transform var(--transition-duration)
|
|
13
|
+
background var(--transition-duration) var(--transition-timing-function),
|
|
14
|
+
border-color var(--transition-duration) var(--transition-timing-function),
|
|
15
|
+
box-shadow var(--transition-duration) var(--transition-timing-function),
|
|
16
|
+
max-height var(--transition-duration) var(--transition-timing-function),
|
|
17
|
+
opacity var(--transition-duration) var(--transition-timing-function),
|
|
18
|
+
transform var(--transition-duration) var(--transition-timing-function);
|
|
17
19
|
width: var(--width);
|
|
18
20
|
|
|
19
21
|
|
|
@@ -25,45 +27,8 @@
|
|
|
25
27
|
content: '';
|
|
26
28
|
pointer-events: none;
|
|
27
29
|
transition:
|
|
28
|
-
box-shadow var(--transition-duration)
|
|
29
|
-
opacity var(--transition-duration)
|
|
30
|
+
box-shadow var(--transition-duration) var(--transition-timing-function),
|
|
31
|
+
opacity var(--transition-duration) var(--transition-timing-function);
|
|
30
32
|
z-index: -1;
|
|
31
33
|
}
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
&--flat {
|
|
35
|
-
&::after {
|
|
36
|
-
display: none;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
&--option {
|
|
41
|
-
border-radius: 0;
|
|
42
|
-
|
|
43
|
-
@include tokens.state(active) {
|
|
44
|
-
z-index: 2;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
@include tokens.state(hover) {
|
|
48
|
-
z-index: 1;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
&:only-child {
|
|
52
|
-
border-radius: var(--border-radius);
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
&:not(:only-child) {
|
|
56
|
-
&:not(:first-child) {
|
|
57
|
-
margin-top: calc(var(--border-width) * -1);
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
&:first-child {
|
|
61
|
-
border-radius: var(--border-radius) var(--border-radius) 0 0;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
&:not(:has(~ .card--option)) {
|
|
65
|
-
border-radius: 0 0 var(--border-radius) var(--border-radius);
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
34
|
}
|
|
@@ -11,7 +11,6 @@
|
|
|
11
11
|
--border-color-default: var(--background);
|
|
12
12
|
--border-color-hover: var(--border-color-default);
|
|
13
13
|
--border-color-pressed: var(--border-color-default);
|
|
14
|
-
--border-radius: var(--border-radius-400);
|
|
15
14
|
--box-shadow: var(--box-shadow-default);
|
|
16
15
|
--box-shadow-default: none;
|
|
17
16
|
--padding-horizontal: 0px;
|
|
@@ -33,4 +32,4 @@
|
|
|
33
32
|
--background: var(--background-pressed);
|
|
34
33
|
--border-color: var(--border-color-pressed);
|
|
35
34
|
}
|
|
36
|
-
}
|
|
35
|
+
}
|
|
@@ -1,50 +1,46 @@
|
|
|
1
1
|
import { html, type Attributes } from '@esportsplus/template';
|
|
2
|
-
import { reactive
|
|
2
|
+
import { reactive } from '@esportsplus/reactivity';
|
|
3
3
|
import { omit } from '@esportsplus/utilities';
|
|
4
4
|
import form from '~/components/form';
|
|
5
|
+
import icon from '~/components/icon';
|
|
6
|
+
import check from './svg/check.svg';
|
|
5
7
|
import './scss/index.scss';
|
|
6
8
|
|
|
7
9
|
|
|
8
|
-
|
|
10
|
+
type A = Attributes & {
|
|
11
|
+
'aria-label'?: string;
|
|
12
|
+
checked?: boolean;
|
|
13
|
+
id?: string;
|
|
14
|
+
name?: string;
|
|
15
|
+
state?: { error: string };
|
|
16
|
+
value?: number | string;
|
|
17
|
+
};
|
|
18
|
+
|
|
9
19
|
|
|
20
|
+
const OMIT = ['aria-label', 'checked', 'id', 'name', 'state', 'value'];
|
|
10
21
|
|
|
11
|
-
const factory = (type: string) => {
|
|
12
|
-
function template(
|
|
13
|
-
this: { attributes?: Attributes } | any,
|
|
14
|
-
attributes?: Attributes & { state?: { active: boolean, error: string } }
|
|
15
|
-
) {
|
|
16
|
-
let ref: HTMLElement,
|
|
17
|
-
state = attributes?.state || reactive({
|
|
18
|
-
active: false,
|
|
19
|
-
error: ''
|
|
20
|
-
});
|
|
21
22
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
}
|
|
23
|
+
const factory = (type: 'checkbox' | 'radio' | 'switch') => {
|
|
24
|
+
function template(this: { attributes?: Exclude<A, 'state'> } | void, attributes?: A) {
|
|
25
|
+
let state = attributes?.state || reactive({ error: '' });
|
|
25
26
|
|
|
26
27
|
return html`
|
|
27
28
|
<div
|
|
28
|
-
class='${(
|
|
29
|
+
class='checkbox ${(type === 'radio' || type === 'switch') && `checkbox--${type}`}'
|
|
29
30
|
${this?.attributes && omit(this.attributes, OMIT)}
|
|
30
31
|
${attributes && omit(attributes, OMIT)}
|
|
31
|
-
onclick=${() => ref.click()}
|
|
32
32
|
>
|
|
33
33
|
<input
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
},
|
|
43
|
-
onrender: form.input.onrender(state),
|
|
44
|
-
type: type === 'radio' ? 'radio' : 'checkbox',
|
|
45
|
-
value: attributes?.value || 1
|
|
46
|
-
}}
|
|
34
|
+
aria-label=${attributes?.['aria-label'] ?? this?.attributes?.['aria-label']}
|
|
35
|
+
checked=${attributes?.checked}
|
|
36
|
+
class='checkbox-tag'
|
|
37
|
+
id=${attributes?.id ?? this?.attributes?.id}
|
|
38
|
+
name=${attributes?.name ?? this?.attributes?.name}
|
|
39
|
+
onrender=${form.input.onrender(state)}
|
|
40
|
+
type=${type === 'radio' ? 'radio' : 'checkbox'}
|
|
41
|
+
value=${attributes?.value ?? 1}
|
|
47
42
|
>
|
|
43
|
+
${type === 'checkbox' && icon({ 'aria-hidden': true, class: 'checkbox-check' }, check)}
|
|
48
44
|
</div>
|
|
49
45
|
`;
|
|
50
46
|
}
|
|
@@ -54,4 +50,4 @@ const factory = (type: string) => {
|
|
|
54
50
|
|
|
55
51
|
|
|
56
52
|
export default factory('checkbox');
|
|
57
|
-
export { factory };
|
|
53
|
+
export { factory };
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
@use '/lib';
|
|
2
|
+
@use '/tokens';
|
|
2
3
|
@use 'variables';
|
|
3
4
|
|
|
4
5
|
.checkbox {
|
|
@@ -6,45 +7,102 @@
|
|
|
6
7
|
border-color: var(--border-color);
|
|
7
8
|
border-radius: var(--border-radius);
|
|
8
9
|
border-style: var(--border-style);
|
|
9
|
-
border-width: var(--border-width);
|
|
10
|
+
border-width: calc(var(--border-width) + var(--border-width-offset));
|
|
11
|
+
box-shadow: var(--box-shadow);
|
|
12
|
+
cursor: pointer;
|
|
10
13
|
flex: 0 0 var(--width);
|
|
11
14
|
height: var(--height);
|
|
15
|
+
pointer-events: none;
|
|
12
16
|
position: relative;
|
|
13
17
|
transition:
|
|
14
|
-
background var(--transition-duration)
|
|
15
|
-
border-color var(--transition-duration)
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
transform var(--transition-duration) ease-in-out;
|
|
18
|
+
background var(--transition-duration) var(--transition-timing-function),
|
|
19
|
+
border-color var(--transition-duration) var(--transition-timing-function),
|
|
20
|
+
border-width var(--transition-duration) var(--transition-timing-function),
|
|
21
|
+
box-shadow var(--transition-duration) var(--transition-timing-function);
|
|
19
22
|
width: var(--width);
|
|
20
23
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
+
|
|
25
|
+
&--radio,
|
|
26
|
+
&--switch {
|
|
27
|
+
&::before {
|
|
28
|
+
background: var(--indicator-color);
|
|
29
|
+
box-shadow: var(--box-shadow);
|
|
30
|
+
content: '';
|
|
31
|
+
pointer-events: none;
|
|
32
|
+
transform-origin: center;
|
|
33
|
+
transition: transform var(--transition-duration) var(--transition-timing-function);
|
|
34
|
+
width: var(--width);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
&--radio {
|
|
39
|
+
&::before {
|
|
40
|
+
border-radius: calc(var(--border-radius) - (var(--height) / 2));
|
|
41
|
+
height: var(--height);
|
|
42
|
+
inset: 0;
|
|
43
|
+
margin: auto;
|
|
44
|
+
position: absolute;
|
|
45
|
+
transform: scale(var(--scale));
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
&--switch {
|
|
50
|
+
&::before {
|
|
51
|
+
@include lib.position(absolute, var(--padding-vertical) null null var(--padding-horizontal));
|
|
52
|
+
border-radius: calc(var(--border-radius) - var(--padding-vertical) / 1.5);
|
|
53
|
+
height: calc(var(--height) - (var(--border-width) * 2) - (var(--padding-vertical) * 2));
|
|
54
|
+
transform: translateX(var(--translateX)) scale(var(--scale));
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
&:has(input:checked) .checkbox-check svg {
|
|
60
|
+
stroke-dashoffset: 0;
|
|
24
61
|
}
|
|
25
62
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
height: var(--
|
|
33
|
-
|
|
63
|
+
&:has(> .checkbox-tag:focus-visible, > .radio-tag:focus-visible, > .switch-tag:focus-visible) {
|
|
64
|
+
outline: var(--focus-width) solid var(--focus-color);
|
|
65
|
+
outline-offset: var(--focus-offset);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.checkbox-check {
|
|
69
|
+
height: var(--check-size);
|
|
70
|
+
inset: 0 0 0 1px;
|
|
71
|
+
margin: auto;
|
|
72
|
+
pointer-events: none;
|
|
34
73
|
position: absolute;
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
74
|
+
width: var(--check-size);
|
|
75
|
+
|
|
76
|
+
svg {
|
|
77
|
+
fill: none;
|
|
78
|
+
stroke: var(--indicator-color);
|
|
79
|
+
stroke-width: var(--check-stroke-width);
|
|
80
|
+
stroke-linecap: var(--check-linecap);
|
|
81
|
+
stroke-linejoin: var(--check-linejoin);
|
|
82
|
+
stroke-dasharray: 1;
|
|
83
|
+
stroke-dashoffset: 1;
|
|
84
|
+
transition: stroke-dashoffset var(--transition-duration) var(--check-timing-function);
|
|
85
|
+
}
|
|
39
86
|
}
|
|
40
87
|
|
|
41
|
-
//
|
|
88
|
+
// Keep the native input interactive while the SVG supplies its appearance.
|
|
89
|
+
// TODO: Pointer events none on parent and default here?
|
|
42
90
|
&-tag {
|
|
43
|
-
@include lib.position(absolute,
|
|
44
|
-
|
|
91
|
+
@include lib.position(absolute, full);
|
|
92
|
+
cursor: inherit;
|
|
93
|
+
height: 100%;
|
|
94
|
+
margin: 0;
|
|
45
95
|
opacity: 0;
|
|
46
|
-
pointer-events:
|
|
47
|
-
width:
|
|
48
|
-
z-index:
|
|
96
|
+
pointer-events: all;
|
|
97
|
+
width: 100%;
|
|
98
|
+
z-index: 1;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
@media (prefers-reduced-motion: reduce) {
|
|
102
|
+
&,
|
|
103
|
+
&::before,
|
|
104
|
+
.checkbox-check svg {
|
|
105
|
+
transition: none;
|
|
106
|
+
}
|
|
49
107
|
}
|
|
50
|
-
}
|
|
108
|
+
}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
@use '/lib';
|
|
2
1
|
@use '/tokens';
|
|
3
2
|
|
|
4
3
|
.checkbox {
|
|
@@ -8,67 +7,109 @@
|
|
|
8
7
|
--background-hover: var(--background-default);
|
|
9
8
|
--background-pressed: var(--background-default);
|
|
10
9
|
--border-color: var(--border-color-default);
|
|
10
|
+
--border-color-active: var(--border-color-default);
|
|
11
11
|
--border-color-default: var(--background);
|
|
12
|
+
--border-color-hover: var(--border-color-default);
|
|
13
|
+
--border-color-pressed: var(--border-color-default);
|
|
12
14
|
--border-radius: var(--border-radius-300);
|
|
13
15
|
--border-style: solid;
|
|
14
16
|
--border-width: 0px;
|
|
17
|
+
--border-width-offset: 0px;
|
|
18
|
+
--border-width-offset-hover: 1px;
|
|
15
19
|
--box-shadow: var(--box-shadow-default);
|
|
20
|
+
--box-shadow-active: 0 3px 8px color-mix(in srgb, var(--background-active) 22%, transparent);
|
|
16
21
|
--box-shadow-default: none;
|
|
22
|
+
--box-shadow-hover: var(--box-shadow-default);
|
|
23
|
+
--box-shadow-pressed: var(--box-shadow-default);
|
|
24
|
+
--check-linecap: round;
|
|
25
|
+
--check-linejoin: round;
|
|
26
|
+
--check-size: 80%;
|
|
27
|
+
--check-stroke-width: 4;
|
|
28
|
+
--check-timing-function: ease;
|
|
29
|
+
--focus-color: var(--border-color-active);
|
|
30
|
+
--focus-offset: 2px;
|
|
31
|
+
--focus-width: 2px;
|
|
17
32
|
--height: var(--size);
|
|
18
|
-
--
|
|
19
|
-
--
|
|
20
|
-
--
|
|
21
|
-
--
|
|
22
|
-
--
|
|
23
|
-
--opacity-pressed: var(--opacity-default);
|
|
24
|
-
--rotate: 45deg;
|
|
33
|
+
--indicator-color: var(--indicator-color-default);
|
|
34
|
+
--indicator-color-active: var(--indicator-color-default);
|
|
35
|
+
--indicator-color-default: var(--color-white-400);
|
|
36
|
+
--indicator-color-hover: var(--indicator-color-default);
|
|
37
|
+
--indicator-color-pressed: var(--indicator-color-default);
|
|
25
38
|
--scale: var(--scale-default);
|
|
26
39
|
--scale-active: 1;
|
|
27
|
-
--scale-default: 0;
|
|
28
|
-
--scale-hover:
|
|
29
|
-
--scale-pressed:
|
|
30
|
-
--size: var(--size-
|
|
40
|
+
--scale-default: 0.92;
|
|
41
|
+
--scale-hover: 0.96;
|
|
42
|
+
--scale-pressed: var(--scale-default);
|
|
43
|
+
--size: var(--size-500);
|
|
44
|
+
--transition-duration: 280ms;
|
|
45
|
+
--transition-timing-function: cubic-bezier(0.34, 1.56, 0.64, 1);
|
|
31
46
|
--width: var(--height);
|
|
32
|
-
--width-switch: 40px;
|
|
33
47
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
48
|
+
|
|
49
|
+
&--radio,
|
|
50
|
+
&--switch {
|
|
51
|
+
&::before {
|
|
52
|
+
--box-shadow: 0 2px 4px #0003;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
&--radio {
|
|
57
|
+
--border-radius: 100%;
|
|
58
|
+
--scale-default: 0;
|
|
59
|
+
--scale-hover: 0;
|
|
60
|
+
|
|
61
|
+
&::before {
|
|
62
|
+
--height: var(--size-200);
|
|
63
|
+
--width: var(--size-200);
|
|
64
|
+
}
|
|
41
65
|
}
|
|
42
66
|
|
|
43
|
-
|
|
67
|
+
&--switch {
|
|
68
|
+
--border-width-offset-hover: 0px;
|
|
69
|
+
--box-shadow-active: var(--box-shadow-default);
|
|
70
|
+
--focus-color: var(--background-active);
|
|
71
|
+
--padding-horizontal: 2px;
|
|
72
|
+
--padding-vertical: 2px;
|
|
73
|
+
--width: var(--width-rail);
|
|
74
|
+
--width-rail: calc(var(--height) * 1.8);
|
|
75
|
+
|
|
44
76
|
&::before {
|
|
45
|
-
--
|
|
77
|
+
--translateX: 0px;
|
|
78
|
+
--width: var(--height);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
&:has(input:checked)::before {
|
|
82
|
+
--translateX: calc(var(--width-rail) - (var(--border-width) * 2) - var(--height) - (var(--padding-horizontal) * 2));
|
|
46
83
|
}
|
|
47
84
|
}
|
|
48
85
|
|
|
49
|
-
|
|
50
|
-
|
|
86
|
+
|
|
87
|
+
&:not(:has(input:checked)) {
|
|
88
|
+
&:hover,
|
|
89
|
+
label:hover & {
|
|
51
90
|
--background: var(--background-hover);
|
|
52
91
|
--border-color: var(--border-color-hover);
|
|
92
|
+
--border-width-offset: var(--border-width-offset-hover);
|
|
53
93
|
--box-shadow: var(--box-shadow-hover);
|
|
54
|
-
--
|
|
94
|
+
--indicator-color: var(--indicator-color-hover);
|
|
55
95
|
--scale: var(--scale-hover);
|
|
56
96
|
}
|
|
57
97
|
|
|
58
|
-
|
|
98
|
+
&:active,
|
|
99
|
+
label:active & {
|
|
59
100
|
--background: var(--background-pressed);
|
|
60
101
|
--border-color: var(--border-color-pressed);
|
|
61
102
|
--box-shadow: var(--box-shadow-pressed);
|
|
62
|
-
--
|
|
103
|
+
--indicator-color: var(--indicator-color-pressed);
|
|
63
104
|
--scale: var(--scale-pressed);
|
|
64
105
|
}
|
|
65
106
|
}
|
|
66
107
|
|
|
67
|
-
|
|
108
|
+
&:has(input:checked) {
|
|
68
109
|
--background: var(--background-active);
|
|
69
110
|
--border-color: var(--border-color-active);
|
|
70
111
|
--box-shadow: var(--box-shadow-active);
|
|
71
|
-
--
|
|
112
|
+
--indicator-color: var(--indicator-color-active);
|
|
72
113
|
--scale: var(--scale-active);
|
|
73
114
|
}
|
|
74
|
-
}
|
|
115
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M5 12.5 9.5 17 19 7" pathLength="1"/></svg>
|