@newlogic-digital/ui 3.0.3 → 3.2.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 +20 -22
- package/package.json +25 -14
- package/src/{main.json → data/main.json} +13 -11
- package/src/emails/email.css +3 -3
- package/src/emails/email.twig +1 -1
- package/src/icons.svg +32 -0
- package/src/scripts/Components/+.js +1 -2
- package/src/scripts/Components/CookieConsent.js +68 -64
- package/src/scripts/Layout/+.js +2 -1
- package/src/scripts/Layout/Header.js +18 -0
- package/src/scripts/Layout/Main.js +49 -45
- package/src/scripts/Libraries/+.js +13 -10
- package/src/scripts/Libraries/Anchor.js +18 -43
- package/src/scripts/Libraries/CookieConsent.js +42 -57
- package/src/scripts/Libraries/Dialog.js +56 -55
- package/src/scripts/Libraries/Drawer.js +23 -23
- package/src/scripts/Libraries/Form.js +37 -0
- package/src/scripts/Libraries/NativeSlider.js +86 -86
- package/src/scripts/Libraries/ReCaptcha.js +20 -18
- package/src/scripts/Libraries/Ripple.js +16 -32
- package/src/scripts/Libraries/Script.js +19 -0
- package/src/scripts/Libraries/Stimulus.js +30 -34
- package/src/scripts/Libraries/Swup.js +45 -55
- package/src/scripts/Libraries/Tabs.js +12 -18
- package/src/scripts/Libraries/Tippy.js +118 -0
- package/src/scripts/Ui/+.js +5 -3
- package/src/scripts/Ui/Checkbox.js +19 -0
- package/src/scripts/Ui/Input.js +188 -161
- package/src/scripts/Ui/Radio.js +23 -0
- package/src/scripts/Ui/Select.js +64 -37
- package/src/scripts/Ui/Text.js +25 -0
- package/src/scripts/Utils/+.js +3 -0
- package/src/scripts/Utils/Functions/+.js +6 -6
- package/src/scripts/Utils/Functions/dataValue.js +28 -25
- package/src/scripts/Utils/Functions/importScript.js +9 -11
- package/src/scripts/Utils/Functions/importStyle.js +18 -5
- package/src/scripts/Utils/Functions/inView.js +19 -21
- package/src/scripts/Utils/Functions/loadStimulus.js +22 -20
- package/src/scripts/Utils/Functions/replaceTag.js +12 -0
- package/src/scripts/Utils/cdn.js +6 -4
- package/src/scripts/Utils/global.js +10 -33
- package/src/scripts/main.js +6 -6
- package/src/styles/Components/CookieConsent.css +40 -179
- package/src/styles/Components/Dialog/Default.css +12 -15
- package/src/styles/Components/Form/CookieConsent.css +7 -12
- package/src/styles/Layout/+.css +2 -0
- package/src/styles/Layout/Header.css +54 -0
- package/src/styles/Layout/Main.css +28 -63
- package/src/styles/Layout/Nav.css +43 -0
- package/src/styles/Libraries/+.css +1 -1
- package/src/styles/Libraries/Datepicker.css +85 -39
- package/src/styles/Libraries/Dialog.css +6 -5
- package/src/styles/Libraries/Drawer.css +15 -14
- package/src/styles/Libraries/Hint.css +29 -23
- package/src/styles/Libraries/Lazysizes.css +2 -1
- package/src/styles/Libraries/NativeSlider.css +19 -18
- package/src/styles/Libraries/Ripple.css +8 -5
- package/src/styles/Libraries/Tabs.css +4 -4
- package/src/styles/Libraries/Tippy.css +87 -0
- package/src/styles/Ui/+.css +5 -1
- package/src/styles/Ui/Badge.css +33 -19
- package/src/styles/Ui/Btn.css +80 -53
- package/src/styles/Ui/Checkbox.css +80 -41
- package/src/styles/Ui/Dropdown.css +5 -0
- package/src/styles/Ui/Heading.css +12 -12
- package/src/styles/Ui/Icon.css +27 -8
- package/src/styles/Ui/Image.css +23 -0
- package/src/styles/Ui/Input.css +295 -220
- package/src/styles/Ui/Label.css +14 -0
- package/src/styles/Ui/Link.css +3 -3
- package/src/styles/Ui/Notice.css +14 -16
- package/src/styles/Ui/Progress.css +10 -21
- package/src/styles/Ui/Radio.css +3 -8
- package/src/styles/Ui/Select.css +63 -112
- package/src/styles/Ui/Switch.css +70 -0
- package/src/styles/Ui/{Wsw.css → Text.css} +61 -80
- package/src/styles/Ui/Title.css +8 -4
- package/src/styles/Utils/+.css +9 -0
- package/src/styles/Utils/default.css +75 -67
- package/src/styles/Utils/icons.css +9 -0
- package/src/styles/Utils/keyframes.css +182 -0
- package/src/styles/Utils/normalize.css +223 -0
- package/src/styles/Utils/print.css +1 -1
- package/src/styles/Utils/tailwind/+.css +2 -0
- package/src/styles/Utils/tailwind/base.css +15 -0
- package/src/styles/Utils/tailwind/gutters.css +264 -263
- package/src/styles/Utils/theme/+.css +1 -0
- package/src/styles/Utils/theme/main.css +24 -21
- package/src/styles/Utils/vars.css +58 -35
- package/src/styles/Utils/vendor.css +1 -2
- package/src/styles/main.css +8 -3
- package/src/templates/Components/CookieConsent.twig +30 -0
- package/src/templates/Components/Dialogs/Basic.twig +7 -3
- package/src/templates/Layout/Header.twig +42 -0
- package/src/templates/Layout/Main.twig +52 -67
- package/src/templates/Sections/Gdpr.twig +64 -0
- package/src/templates/Sections/Ui.twig +2093 -0
- package/src/views/dialog-basic.json.twig +3 -0
- package/src/views/gdpr.json +11 -0
- package/src/views/index.json +12 -0
- package/src/views/json-tippy.json.twig +16 -0
- package/src/views/ui.json +11 -0
- package/vite.config.js +6 -0
- package/CHANGELOG +0 -231
- package/gulpfile.js +0 -192
- package/src/icons/iconfont.css +0 -171
- package/src/icons/selection.json +0 -1
- package/src/icons/variables.css +0 -31
- package/src/scripts/Components/Form.js +0 -26
- package/src/scripts/Ui/Wsw.js +0 -25
- package/src/scripts/Utils/Functions/bodyLoaded.js +0 -12
- package/src/styles/Libraries/Animate.css +0 -184
- package/src/styles/Utils/reference.css +0 -2
- package/src/styles/Utils/tailwind/content.css +0 -24
- package/src/styles/Utils/theme/vars.css +0 -19
- package/src/styles/preload.css +0 -29
- package/src/styles/tailwind.css +0 -5
- package/src/templates/Sections/.gitkeep +0 -0
- package/src/templates/dialog-basic.twig +0 -3
- package/src/templates/index.json +0 -6
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
.tippy-content {
|
|
2
|
+
padding: 0;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
.tippy-box {
|
|
6
|
+
--lib-tippy-bg: var(--color-dark);
|
|
7
|
+
|
|
8
|
+
&[data-theme~="light-border"] {
|
|
9
|
+
background-color: rgb(var(--color-background));
|
|
10
|
+
background-clip: padding-box;
|
|
11
|
+
border: 1px solid rgb(0 8 16 / 0.05);
|
|
12
|
+
color: rgb(var(--color-current));
|
|
13
|
+
box-shadow: 0 3px 14px -0.5px rgb(0 8 16 / 0.08);
|
|
14
|
+
border-radius: var(--radius);
|
|
15
|
+
left: 0.1875rem;
|
|
16
|
+
|
|
17
|
+
@nest .dark & {
|
|
18
|
+
--color-background: var(--color-background-200);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
& .tippy-svg-arrow {
|
|
22
|
+
fill: rgb(var(--color-background));
|
|
23
|
+
|
|
24
|
+
&::after {
|
|
25
|
+
opacity: 0.3;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
&[data-placement="bottom-end"] {
|
|
31
|
+
&[data-animation="scale"] {
|
|
32
|
+
transform-origin: top right;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
& .tippy-svg-arrow {
|
|
36
|
+
left: auto !important;
|
|
37
|
+
right: 0.5rem;
|
|
38
|
+
transform: none !important;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
&[data-placement="bottom-start"] {
|
|
43
|
+
&[data-animation="scale"] {
|
|
44
|
+
transform-origin: top left;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
[data-controller*="lib-tippy"]:not([data-lib-tippy^="dropdown"]) {
|
|
50
|
+
cursor: default;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
[data-tippy-root] {
|
|
54
|
+
&.is-full {
|
|
55
|
+
@media (--media-m) {
|
|
56
|
+
inset: 0 !important;
|
|
57
|
+
width: 100% !important;
|
|
58
|
+
height: 100% !important;
|
|
59
|
+
position: fixed !important;
|
|
60
|
+
transform: none !important;
|
|
61
|
+
pointer-events: none;
|
|
62
|
+
max-width: 100%;
|
|
63
|
+
|
|
64
|
+
& .tippy-content {
|
|
65
|
+
padding-bottom: env(safe-area-inset-bottom);
|
|
66
|
+
pointer-events: auto;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
& .tippy-box {
|
|
70
|
+
max-width: 100% !important;
|
|
71
|
+
position: absolute;
|
|
72
|
+
border: 0 !important;
|
|
73
|
+
bottom: 0;
|
|
74
|
+
left: 0 !important;
|
|
75
|
+
right: 0;
|
|
76
|
+
border-radius: 2rem 2rem 0 0 !important;
|
|
77
|
+
transition-timing-function: ease !important;
|
|
78
|
+
transition-duration: 300ms !important;
|
|
79
|
+
|
|
80
|
+
&[data-state="hidden"] {
|
|
81
|
+
transform: translateY(100%);
|
|
82
|
+
opacity: 0;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
package/src/styles/Ui/+.css
CHANGED
|
@@ -1,13 +1,17 @@
|
|
|
1
1
|
@import "Badge.css";
|
|
2
2
|
@import "Btn.css";
|
|
3
3
|
@import "Checkbox.css";
|
|
4
|
+
@import "Dropdown.css";
|
|
4
5
|
@import "Heading.css";
|
|
5
6
|
@import "Icon.css";
|
|
7
|
+
@import "Image.css";
|
|
6
8
|
@import "Input.css";
|
|
9
|
+
@import "Label.css";
|
|
7
10
|
@import "Link.css";
|
|
8
11
|
@import "Notice.css";
|
|
9
12
|
@import "Progress.css";
|
|
10
13
|
@import "Radio.css";
|
|
11
14
|
@import "Select.css";
|
|
15
|
+
@import "Switch.css";
|
|
16
|
+
@import "Text.css";
|
|
12
17
|
@import "Title.css";
|
|
13
|
-
@import "Wsw.css";
|
package/src/styles/Ui/Badge.css
CHANGED
|
@@ -1,44 +1,58 @@
|
|
|
1
1
|
.ui-badge {
|
|
2
|
+
--ui-badge-width: auto;
|
|
3
|
+
--ui-badge-height: 1.5rem;
|
|
2
4
|
--ui-badge-py: 0.375rem;
|
|
3
5
|
--ui-badge-px: 0.5rem;
|
|
4
6
|
--ui-badge-size: 0.75rem;
|
|
7
|
+
--ui-badge-radius: var(--radius);
|
|
5
8
|
--ui-badge-weight: var(--font-normal);
|
|
6
|
-
--ui-badge-bg: var(--
|
|
7
|
-
--ui-badge-
|
|
9
|
+
--ui-badge-bg-opacity: var(--tw-bg-opacity, 1);
|
|
10
|
+
--ui-badge-text-opacity: var(--tw-text-opacity, 1);
|
|
11
|
+
--ui-badge-bg: rgb(var(--color-accent) / var(--ui-badge-bg-opacity));
|
|
12
|
+
--ui-badge-color: rgb(var(--color-light) / var(--ui-badge-text-opacity));
|
|
13
|
+
--ui-badge-hover-opacity: 0.8;
|
|
14
|
+
|
|
8
15
|
display: inline-flex;
|
|
9
16
|
align-self: flex-start;
|
|
10
17
|
align-items: center;
|
|
11
18
|
text-align: center;
|
|
12
19
|
justify-content: center;
|
|
20
|
+
flex-shrink: 0;
|
|
13
21
|
font-size: var(--ui-badge-size);
|
|
14
22
|
font-weight: var(--ui-badge-weight);
|
|
15
23
|
padding: var(--ui-badge-py) var(--ui-badge-px);
|
|
16
|
-
border-radius: var(--radius);
|
|
17
|
-
background-color:
|
|
18
|
-
color:
|
|
24
|
+
border-radius: var(--ui-badge-radius);
|
|
25
|
+
background-color: var(--ui-badge-bg);
|
|
26
|
+
color: var(--ui-badge-color);
|
|
27
|
+
width: var(--ui-badge-width);
|
|
28
|
+
height: var(--ui-badge-height);
|
|
19
29
|
line-height: var(--ui-badge-size);
|
|
20
30
|
transition: var(--transition-opacity);
|
|
21
31
|
|
|
22
|
-
@nest .no-touch [href]:hover
|
|
23
|
-
opacity:
|
|
32
|
+
@nest .no-touch &:is([href]:hover, button:hover) {
|
|
33
|
+
opacity: var(--ui-badge-hover-opacity);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
& svg {
|
|
37
|
+
width: 1em;
|
|
38
|
+
height: 1em;
|
|
24
39
|
}
|
|
25
40
|
|
|
26
|
-
|
|
41
|
+
&:--type-square, &:--type-circle {
|
|
27
42
|
--ui-badge-px: var(--ui-badge-py);
|
|
28
|
-
|
|
43
|
+
--ui-badge-width: var(--ui-badge-height);
|
|
29
44
|
}
|
|
30
45
|
|
|
31
|
-
|
|
46
|
+
&:--type-circle {
|
|
32
47
|
border-radius: 50%;
|
|
33
48
|
}
|
|
34
49
|
|
|
35
|
-
|
|
36
|
-
--ui-badge-
|
|
37
|
-
--ui-badge-px: 0.5rem;
|
|
50
|
+
&:--size-sm {
|
|
51
|
+
--ui-badge-height: 1.25rem;
|
|
38
52
|
}
|
|
39
53
|
|
|
40
|
-
|
|
41
|
-
--ui-badge-
|
|
54
|
+
&:--size-md {
|
|
55
|
+
--ui-badge-height: 1.75rem;
|
|
42
56
|
--ui-badge-py: 0.5rem;
|
|
43
57
|
}
|
|
44
58
|
}
|
|
@@ -48,21 +62,21 @@
|
|
|
48
62
|
|
|
49
63
|
& .ui-badge {
|
|
50
64
|
&:not(:first-of-type) {
|
|
51
|
-
&,
|
|
65
|
+
&, &::after {
|
|
52
66
|
border-top-left-radius: 0;
|
|
53
67
|
border-bottom-left-radius: 0;
|
|
54
68
|
}
|
|
55
69
|
|
|
56
|
-
|
|
70
|
+
&::after {
|
|
57
71
|
border-left: 0;
|
|
58
72
|
}
|
|
59
73
|
}
|
|
60
74
|
|
|
61
75
|
&:not(:last-of-type) {
|
|
62
|
-
&,
|
|
76
|
+
&, &::after {
|
|
63
77
|
border-top-right-radius: 0;
|
|
64
78
|
border-bottom-right-radius: 0;
|
|
65
79
|
}
|
|
66
80
|
}
|
|
67
81
|
}
|
|
68
|
-
}
|
|
82
|
+
}
|
package/src/styles/Ui/Btn.css
CHANGED
|
@@ -1,15 +1,21 @@
|
|
|
1
1
|
.ui-btn {
|
|
2
|
-
--ui-btn-width:
|
|
2
|
+
--ui-btn-width: auto;
|
|
3
|
+
--ui-btn-height: 2.375rem;
|
|
3
4
|
--ui-btn-py: 0.375rem;
|
|
4
5
|
--ui-btn-px: 1rem;
|
|
5
6
|
--ui-btn-size: 0.875rem;
|
|
7
|
+
--ui-btn-radius: var(--radius);
|
|
6
8
|
--ui-btn-weight: var(--font-medium);
|
|
7
|
-
--ui-btn-bg: var(--
|
|
8
|
-
--ui-btn-
|
|
9
|
+
--ui-btn-bg-opacity: var(--tw-bg-opacity, 1);
|
|
10
|
+
--ui-btn-text-opacity: var(--tw-text-opacity, 1);
|
|
11
|
+
--ui-btn-bg: rgb(var(--color-accent) / var(--ui-btn-bg-opacity));
|
|
12
|
+
--ui-btn-color: rgb(var(--color-light) / var(--ui-btn-text-opacity));
|
|
9
13
|
--ui-btn-hover-opacity: 0.2;
|
|
14
|
+
--ui-btn-outline-width: 2px;
|
|
10
15
|
--ui-btn-outline-opacity: 0.5;
|
|
11
16
|
--ui-btn-icon-size: 1.125rem;
|
|
12
|
-
--ui-btn-icon-offset: calc((var(--ui-btn-py) / 1)
|
|
17
|
+
--ui-btn-icon-offset: calc((var(--ui-btn-py) / 1) * -1);
|
|
18
|
+
|
|
13
19
|
display: inline-flex;
|
|
14
20
|
align-items: center;
|
|
15
21
|
text-align: center;
|
|
@@ -19,39 +25,52 @@
|
|
|
19
25
|
position: relative;
|
|
20
26
|
z-index: 1;
|
|
21
27
|
white-space: nowrap;
|
|
28
|
+
flex-shrink: 0;
|
|
22
29
|
font-size: var(--ui-btn-size);
|
|
23
30
|
font-weight: var(--ui-btn-weight);
|
|
24
|
-
|
|
31
|
+
width: var(--ui-btn-width);
|
|
32
|
+
height: var(--ui-btn-height);
|
|
25
33
|
padding: var(--ui-btn-py) var(--ui-btn-px);
|
|
26
|
-
border-radius: var(--radius);
|
|
34
|
+
border-radius: var(--ui-btn-radius);
|
|
27
35
|
transition: var(--transition-opacity), var(--transition-background);
|
|
28
|
-
background-color:
|
|
29
|
-
color:
|
|
36
|
+
background-color: var(--ui-btn-bg);
|
|
37
|
+
color: var(--ui-btn-color);
|
|
38
|
+
|
|
39
|
+
@nest .dark &.bg-default {
|
|
40
|
+
--ui-btn-color: rgb(var(--color-dark));
|
|
41
|
+
}
|
|
30
42
|
|
|
31
|
-
|
|
32
|
-
--ui-btn-color: var(--color-
|
|
43
|
+
&:--theme-light {
|
|
44
|
+
--ui-btn-color: rgb(var(--color-light) / var(--tw-text-opacity, 1));
|
|
33
45
|
}
|
|
34
46
|
|
|
35
|
-
|
|
47
|
+
&:--theme-dark {
|
|
48
|
+
--ui-btn-color: rgb(var(--color-dark) / var(--tw-text-opacity, 1));
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
&::before {
|
|
36
52
|
position: absolute;
|
|
37
53
|
inset: 0;
|
|
38
54
|
width: 100%;
|
|
39
55
|
height: 100%;
|
|
40
56
|
content: "";
|
|
41
|
-
background-color:
|
|
57
|
+
background-color: var(--ui-btn-color);
|
|
42
58
|
z-index: -1;
|
|
43
59
|
opacity: 0;
|
|
44
60
|
transition: var(--transition-opacity);
|
|
45
61
|
|
|
46
|
-
@nest .no-touch :hover&,
|
|
62
|
+
@nest .no-touch :is(:hover, :focus)&, :is(:--state-active)& {
|
|
47
63
|
opacity: var(--ui-btn-hover-opacity);
|
|
48
64
|
}
|
|
49
65
|
}
|
|
50
66
|
|
|
51
|
-
& >
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
67
|
+
& > svg {
|
|
68
|
+
width: 1em;
|
|
69
|
+
height: 1em;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
& > [class^="icon"] {
|
|
73
|
+
font-size: var(--ui-btn-icon-size);
|
|
55
74
|
|
|
56
75
|
&.icon-l {
|
|
57
76
|
&:not([class*="mr-"]) {
|
|
@@ -73,62 +92,64 @@
|
|
|
73
92
|
&[disabled] {
|
|
74
93
|
pointer-events: none;
|
|
75
94
|
|
|
76
|
-
|
|
95
|
+
&::before {
|
|
77
96
|
opacity: 0.5;
|
|
78
97
|
}
|
|
79
98
|
}
|
|
80
99
|
|
|
81
|
-
|
|
82
|
-
--ui-btn-
|
|
83
|
-
--ui-btn-
|
|
84
|
-
|
|
100
|
+
&:--type-outline {
|
|
101
|
+
--ui-btn-color: currentColor;
|
|
102
|
+
--ui-btn-hover-opacity: 0.1;
|
|
103
|
+
|
|
104
|
+
background-color: transparent;
|
|
105
|
+
|
|
106
|
+
&::before {
|
|
107
|
+
background-color: var(--ui-btn-bg);
|
|
108
|
+
}
|
|
85
109
|
|
|
86
|
-
|
|
110
|
+
&::after {
|
|
87
111
|
position: absolute;
|
|
88
112
|
inset: 0;
|
|
89
113
|
width: 100%;
|
|
90
114
|
height: 100%;
|
|
91
115
|
content: "";
|
|
92
116
|
background-color: transparent;
|
|
93
|
-
border:
|
|
117
|
+
border: var(--ui-btn-outline-width) solid var(--ui-btn-bg);
|
|
94
118
|
box-sizing: border-box;
|
|
95
119
|
opacity: var(--ui-btn-outline-opacity);
|
|
96
|
-
border-radius: var(--radius);
|
|
120
|
+
border-radius: var(--ui-btn-radius);
|
|
97
121
|
}
|
|
98
122
|
}
|
|
99
123
|
|
|
100
|
-
|
|
124
|
+
&:--type-square, &:--type-circle {
|
|
101
125
|
--ui-btn-py: var(--ui-btn-py);
|
|
102
|
-
width: var(--ui-btn-
|
|
126
|
+
--ui-btn-width: var(--ui-btn-height);
|
|
103
127
|
}
|
|
104
128
|
|
|
105
|
-
|
|
129
|
+
&:--type-circle {
|
|
106
130
|
border-radius: 50%;
|
|
107
131
|
}
|
|
108
132
|
|
|
109
|
-
|
|
133
|
+
&:--size-lg {
|
|
110
134
|
--ui-btn-icon-size: 1.5rem;
|
|
111
|
-
--ui-btn-
|
|
135
|
+
--ui-btn-height: 3rem;
|
|
112
136
|
--ui-btn-px: 1.25rem;
|
|
113
137
|
}
|
|
114
138
|
|
|
115
|
-
|
|
139
|
+
&:--state-loading {
|
|
116
140
|
pointer-events: none;
|
|
141
|
+
color: var(--ui-btn-bg);
|
|
117
142
|
|
|
118
|
-
|
|
119
|
-
opacity: 0;
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
&:before {
|
|
143
|
+
&::before {
|
|
123
144
|
z-index: 1;
|
|
124
145
|
width: 1rem;
|
|
125
146
|
height: 1rem;
|
|
126
147
|
content: "";
|
|
127
148
|
background-color: transparent;
|
|
128
|
-
border: 2px solid
|
|
149
|
+
border: 2px solid var(--ui-btn-color);
|
|
129
150
|
border-right-color: transparent;
|
|
130
151
|
border-radius: 50%;
|
|
131
|
-
animation:
|
|
152
|
+
animation: spin 0.45s infinite linear;
|
|
132
153
|
position: absolute;
|
|
133
154
|
margin-left: -0.625rem;
|
|
134
155
|
margin-top: -0.625rem;
|
|
@@ -138,17 +159,17 @@
|
|
|
138
159
|
}
|
|
139
160
|
}
|
|
140
161
|
|
|
141
|
-
@media (--media-
|
|
142
|
-
|
|
162
|
+
@media (--media-m) {
|
|
163
|
+
&:--type-square-m, &:--type-circle-m {
|
|
143
164
|
--ui-btn-py: var(--ui-btn-py);
|
|
144
|
-
width: var(--ui-btn-
|
|
165
|
+
--ui-btn-width: var(--ui-btn-height);
|
|
145
166
|
|
|
146
|
-
& >
|
|
167
|
+
& > * {
|
|
147
168
|
margin: 0 !important;
|
|
148
169
|
}
|
|
149
170
|
}
|
|
150
171
|
|
|
151
|
-
|
|
172
|
+
&:--type-circle-m {
|
|
152
173
|
border-radius: 50%;
|
|
153
174
|
}
|
|
154
175
|
}
|
|
@@ -158,24 +179,30 @@
|
|
|
158
179
|
display: flex;
|
|
159
180
|
|
|
160
181
|
& .ui-btn {
|
|
161
|
-
&:not(:
|
|
162
|
-
|
|
182
|
+
&:not(:last-of-type) {
|
|
183
|
+
&, &::after {
|
|
184
|
+
border-top-right-radius: 0;
|
|
185
|
+
border-bottom-right-radius: 0;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
163
188
|
|
|
164
|
-
|
|
189
|
+
&:not(:first-of-type) {
|
|
190
|
+
&, &::after {
|
|
165
191
|
border-top-left-radius: 0;
|
|
166
192
|
border-bottom-left-radius: 0;
|
|
167
193
|
}
|
|
168
194
|
|
|
169
|
-
|
|
195
|
+
&::after {
|
|
170
196
|
border-left: 0;
|
|
171
197
|
}
|
|
172
|
-
}
|
|
173
198
|
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
199
|
+
&, &:--theme-light {
|
|
200
|
+
box-shadow: -1px 0 rgb(var(--color-light) / var(--ui-btn-hover-opacity));
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
&:--theme-dark {
|
|
204
|
+
box-shadow: -1px 0 rgb(var(--color-dark) / var(--ui-btn-hover-opacity));
|
|
178
205
|
}
|
|
179
206
|
}
|
|
180
207
|
}
|
|
181
|
-
}
|
|
208
|
+
}
|
|
@@ -1,50 +1,74 @@
|
|
|
1
1
|
.ui-checkbox, .ui-radio {
|
|
2
2
|
--ui-checkbox-width: 1.25rem;
|
|
3
3
|
--ui-checkbox-size: 0.875rem;
|
|
4
|
-
--ui-checkbox-bg: var(--color-background);
|
|
5
4
|
--ui-checkbox-bg-opacity: 0.1;
|
|
6
|
-
--ui-checkbox-
|
|
5
|
+
--ui-checkbox-bg-raw: var(--color-background);
|
|
7
6
|
--ui-checkbox-border-opacity: 0.3;
|
|
8
|
-
--ui-checkbox-
|
|
9
|
-
--ui-checkbox-checked-
|
|
7
|
+
--ui-checkbox-border-color-raw: var(--color-current);
|
|
8
|
+
--ui-checkbox-checked-bg: rgb(var(--ui-checkbox-checked-bg-raw));
|
|
9
|
+
--ui-checkbox-checked-bg-raw: var(--color-accent);
|
|
10
|
+
--ui-checkbox-checked-fg: rgb(var(--color-light));
|
|
11
|
+
--ui-checkbox-color: currentColor;
|
|
12
|
+
--ui-checkbox-radius: 0.375rem;
|
|
13
|
+
--ui-checkbox-icon: var(--icon-check);
|
|
14
|
+
--ui-checkbox-icon-size: 1.125rem;
|
|
15
|
+
|
|
16
|
+
transition: var(--transition-color);
|
|
10
17
|
display: inline-flex;
|
|
11
18
|
align-self: flex-start;
|
|
12
19
|
position: relative;
|
|
13
20
|
user-select: none;
|
|
14
21
|
font-size: var(--ui-checkbox-size);
|
|
15
22
|
z-index: 1;
|
|
23
|
+
color: var(--ui-checkbox-color);
|
|
16
24
|
|
|
17
25
|
@nest .text-light & {
|
|
18
|
-
--ui-checkbox-border-color: var(--color-light);
|
|
26
|
+
--ui-checkbox-border-color-raw: var(--color-light);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
&:--theme-light {
|
|
30
|
+
--ui-checkbox-checked-fg: rgb(var(--color-light));
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
&:--theme-dark {
|
|
34
|
+
--ui-checkbox-checked-fg: rgb(var(--color-dark));
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
&:--state-invalid {
|
|
38
|
+
--ui-checkbox-border-color-raw: var(--color-error);
|
|
39
|
+
--ui-checkbox-color: rgb(var(--color-error));
|
|
19
40
|
}
|
|
20
41
|
|
|
21
42
|
& input {
|
|
22
43
|
position: relative;
|
|
23
44
|
display: inline-flex;
|
|
24
|
-
-moz-appearance: none;
|
|
25
45
|
appearance: none;
|
|
26
46
|
height: var(--ui-checkbox-width);
|
|
27
47
|
width: var(--ui-checkbox-width);
|
|
28
|
-
background-color:
|
|
29
|
-
border: 1px solid
|
|
30
|
-
border-radius: var(--radius);
|
|
48
|
+
background-color: rgb(var(--ui-checkbox-bg-raw) / var(--ui-checkbox-bg-opacity));
|
|
49
|
+
border: 1px solid rgb(var(--ui-checkbox-border-color-raw) / var(--ui-checkbox-border-opacity));
|
|
50
|
+
border-radius: var(--ui-checkbox-radius);
|
|
31
51
|
cursor: pointer;
|
|
32
52
|
outline: none;
|
|
33
53
|
justify-content: center;
|
|
34
54
|
align-items: center;
|
|
35
|
-
transition: var(--transition-border), var(--transition-background);
|
|
55
|
+
transition: var(--transition-border), var(--transition-background), var(--transition-shadow);
|
|
36
56
|
|
|
37
|
-
|
|
38
|
-
--ui-checkbox-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
57
|
+
&::before {
|
|
58
|
+
line-height: var(--ui-checkbox-icon-size);
|
|
59
|
+
font-size: var(--ui-checkbox-icon-size);
|
|
60
|
+
text-indent: 0;
|
|
61
|
+
display: block;
|
|
62
|
+
transition: var(--transition-color), var(--transition-opacity), var(--transition-transform);
|
|
63
|
+
color: var(--ui-checkbox-checked-fg);
|
|
64
|
+
content: "";
|
|
65
|
+
background-color: currentColor;
|
|
66
|
+
mask: var(--ui-checkbox-icon);
|
|
67
|
+
opacity: 0;
|
|
68
|
+
transform: scale(0);
|
|
69
|
+
will-change: transform;
|
|
70
|
+
width: 1em;
|
|
71
|
+
height: 1em;
|
|
48
72
|
}
|
|
49
73
|
|
|
50
74
|
&:not(:only-child) {
|
|
@@ -56,31 +80,46 @@
|
|
|
56
80
|
}
|
|
57
81
|
}
|
|
58
82
|
|
|
59
|
-
&:
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
83
|
+
&:focus, &:hover {
|
|
84
|
+
--ui-checkbox-bg-raw: var(--ui-checkbox-checked-bg-raw);
|
|
85
|
+
--ui-checkbox-border-color-raw: var(--ui-checkbox-checked-bg-raw);
|
|
86
|
+
--ui-checkbox-border-opacity: 0.75;
|
|
87
|
+
--ui-checkbox-bg-opacity: 0.1;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
&:checked {
|
|
91
|
+
--ui-checkbox-border-opacity: 0;
|
|
92
|
+
|
|
93
|
+
background-color: var(--ui-checkbox-checked-bg);
|
|
94
|
+
|
|
95
|
+
&:focus {
|
|
96
|
+
box-shadow:
|
|
97
|
+
0 0 0 0 rgb(var(--color-current)),
|
|
98
|
+
0 0 0 3px rgb(var(--ui-checkbox-checked-bg-raw) / 0.15),
|
|
99
|
+
0 1px 2px 0 rgb(var(--color-current) / 0.05);
|
|
100
|
+
|
|
101
|
+
@nest .dark & {
|
|
102
|
+
box-shadow:
|
|
103
|
+
0 0 0 0 rgb(var(--color-current)),
|
|
104
|
+
0 0 0 3px rgb(var(--ui-checkbox-checked-bg-raw) / 0.3),
|
|
105
|
+
0 1px 2px 0 rgb(var(--color-current) / 0.05);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
&::before {
|
|
110
|
+
opacity: 1;
|
|
111
|
+
transform: scale(1);
|
|
112
|
+
}
|
|
71
113
|
}
|
|
72
114
|
}
|
|
73
115
|
|
|
74
116
|
& a {
|
|
75
117
|
text-decoration: underline;
|
|
76
|
-
transition: var(--transition-
|
|
118
|
+
transition: var(--transition-opacity);
|
|
119
|
+
color: rgb(var(--color-accent));
|
|
77
120
|
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
@nest .no-touch &[href]:hover {
|
|
82
|
-
color: rgba(var(--color-primary), 0.8);
|
|
83
|
-
}
|
|
121
|
+
@nest .no-touch &[href]:hover {
|
|
122
|
+
opacity: 0.8;
|
|
84
123
|
}
|
|
85
124
|
}
|
|
86
|
-
}
|
|
125
|
+
}
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
.ui-heading {
|
|
2
|
+
--ui-heading-size: 1.5rem;
|
|
3
|
+
--ui-heading-size-line: 0.5rem;
|
|
4
|
+
|
|
2
5
|
display: block;
|
|
3
6
|
font-weight: var(--font-bold);
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
&:not([data-size]) {
|
|
7
|
-
font-size: 1.5rem;
|
|
8
|
-
}
|
|
7
|
+
font-size: var(--ui-heading-size);
|
|
8
|
+
line-height: calc(var(--ui-heading-size) + var(--ui-heading-size-line));
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
&:--size-lg {
|
|
11
|
+
--ui-heading-size: 1.75rem;
|
|
12
12
|
|
|
13
|
-
@media (--media-
|
|
14
|
-
|
|
13
|
+
@media (--media-t) {
|
|
14
|
+
--ui-heading-size: 2rem;
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
17
|
|
|
18
|
-
|
|
19
|
-
|
|
18
|
+
&:--size-sm {
|
|
19
|
+
--ui-heading-size: 1.25rem;
|
|
20
20
|
}
|
|
21
|
-
}
|
|
21
|
+
}
|
package/src/styles/Ui/Icon.css
CHANGED
|
@@ -1,14 +1,33 @@
|
|
|
1
1
|
.ui-icon {
|
|
2
|
+
--ui-icon-hover-opacity: 0.7;
|
|
3
|
+
--ui-icon-size: 1.25rem;
|
|
4
|
+
|
|
2
5
|
display: inline-flex;
|
|
3
|
-
|
|
6
|
+
position: relative;
|
|
7
|
+
font-size: var(--ui-icon-size);
|
|
8
|
+
|
|
9
|
+
&, & svg {
|
|
10
|
+
width: 1em;
|
|
11
|
+
height: 1em;
|
|
12
|
+
}
|
|
4
13
|
|
|
5
|
-
&
|
|
6
|
-
|
|
7
|
-
transition: var(--transition-opacity);
|
|
14
|
+
& > * {
|
|
15
|
+
transition: var(--transition-opacity);
|
|
8
16
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
}
|
|
17
|
+
@nest .no-touch :is([href]:hover, button:hover)& {
|
|
18
|
+
opacity: var(--ui-icon-hover-opacity);
|
|
12
19
|
}
|
|
13
20
|
}
|
|
14
|
-
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.ui-icon-text {
|
|
24
|
+
--ui-icon-hover-opacity: 0.7;
|
|
25
|
+
|
|
26
|
+
display: inline-flex;
|
|
27
|
+
align-items: center;
|
|
28
|
+
transition: var(--transition-opacity), var(--transition-color);
|
|
29
|
+
|
|
30
|
+
@nest .no-touch &:is([href]:hover, button:hover) {
|
|
31
|
+
opacity: var(--ui-icon-hover-opacity);
|
|
32
|
+
}
|
|
33
|
+
}
|