@graupl/graupl 1.0.0-alpha.12 → 1.0.0-alpha.14
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/.github/workflows/codeql-analysis.yml +3 -3
- package/.husky/commit-msg +0 -1
- package/.husky/pre-commit +0 -1
- package/CHANGELOG.md +65 -0
- package/dist/base/button.css +1 -1
- package/dist/base/button.css.map +1 -1
- package/dist/base/form.css +1 -1
- package/dist/base/form.css.map +1 -1
- package/dist/base/link.css +1 -1
- package/dist/base/link.css.map +1 -1
- package/dist/base/table.css +1 -1
- package/dist/base/table.css.map +1 -1
- package/dist/base.css +1 -1
- package/dist/base.css.map +1 -1
- package/dist/component/alert.css +2 -0
- package/dist/component/alert.css.map +1 -0
- package/dist/component/card.css +2 -0
- package/dist/component/card.css.map +1 -0
- package/dist/component/carousel.css +2 -0
- package/dist/component/carousel.css.map +1 -0
- package/dist/component/input-group.css +1 -1
- package/dist/component/input-group.css.map +1 -1
- package/dist/component/menu.css +2 -0
- package/dist/component/menu.css.map +1 -0
- package/dist/component/navigation.css +2 -0
- package/dist/component/navigation.css.map +1 -0
- package/dist/component.css +1 -1
- package/dist/component.css.map +1 -1
- package/dist/graupl.css +1 -1
- package/dist/graupl.css.map +1 -1
- package/dist/layout/columns.css +1 -1
- package/dist/layout/columns.css.map +1 -1
- package/dist/layout/container.css.map +1 -1
- package/dist/layout/flex-columns.css +2 -0
- package/dist/layout/flex-columns.css.map +1 -0
- package/dist/layout.css +1 -1
- package/dist/layout.css.map +1 -1
- package/dist/normalize.css.map +1 -1
- package/dist/state/focus.css.map +1 -1
- package/dist/state.css.map +1 -1
- package/dist/theme/color.css.map +1 -1
- package/dist/theme/typography.css +1 -1
- package/dist/theme/typography.css.map +1 -1
- package/dist/theme.css +1 -1
- package/dist/theme.css.map +1 -1
- package/dist/utilities/alignment.css.map +1 -1
- package/dist/utilities/color.css.map +1 -1
- package/dist/utilities/display.css +1 -1
- package/dist/utilities/display.css.map +1 -1
- package/dist/utilities/flex.css.map +1 -1
- package/dist/utilities/height.css +2 -0
- package/dist/utilities/height.css.map +1 -0
- package/dist/utilities/inset.css.map +1 -1
- package/dist/utilities/justification.css.map +1 -1
- package/dist/utilities/list.css.map +1 -1
- package/dist/utilities/order.css +2 -0
- package/dist/utilities/order.css.map +1 -0
- package/dist/utilities/postion.css.map +1 -1
- package/dist/utilities/spacing.css +1 -1
- package/dist/utilities/spacing.css.map +1 -1
- package/dist/utilities/typography.css +1 -1
- package/dist/utilities/typography.css.map +1 -1
- package/dist/utilities/visibility.css.map +1 -1
- package/dist/utilities/width.css +2 -0
- package/dist/utilities/width.css.map +1 -0
- package/dist/utilities.css +1 -1
- package/dist/utilities.css.map +1 -1
- package/docs/.vitepress/config.js +39 -12
- package/docs/components/alert.md +130 -0
- package/docs/components/button.md +84 -0
- package/docs/components/card.md +369 -0
- package/docs/components/index.md +1 -0
- package/docs/components/inputgroup.md +159 -0
- package/docs/components/menu.md +326 -0
- package/docs/components/navigation.md +158 -0
- package/docs/content.md +237 -0
- package/docs/defaults.md +121 -0
- package/docs/forms.md +79 -0
- package/docs/functions.md +9 -0
- package/docs/getting-started.md +1 -0
- package/docs/index.md +1 -7
- package/docs/introduction.md +22 -2
- package/docs/layout.md +200 -0
- package/docs/mixins.md +47 -0
- package/docs/state.md +67 -0
- package/docs/theme.md +258 -0
- package/docs/utilities.md +357 -0
- package/eslint.config.js +1 -0
- package/index.html +760 -325
- package/package.json +5 -6
- package/scss/component/alert.scss +3 -0
- package/scss/component/card.scss +3 -0
- package/scss/component/carousel.scss +3 -0
- package/scss/component/menu.scss +3 -0
- package/scss/component/navigation.scss +3 -0
- package/scss/layout/flex-columns.scss +3 -0
- package/scss/utilities/height.scss +3 -0
- package/scss/utilities/order.scss +3 -0
- package/scss/utilities/width.scss +3 -0
- package/src/js/alert/Alert.js +511 -0
- package/src/js/alert/index.js +21 -0
- package/src/js/carousel/Carousel.js +1376 -0
- package/src/js/carousel/index.js +20 -0
- package/src/js/domHelpers.js +37 -0
- package/src/js/eventHandlers.js +32 -0
- package/src/js/navigation.js +34 -0
- package/src/js/validate.js +225 -0
- package/src/scss/_defaults.scss +15 -1
- package/src/scss/base/_index.scss +1 -1
- package/src/scss/base/button/_defaults.scss +15 -3
- package/src/scss/base/button/_index.scss +80 -120
- package/src/scss/base/button/_mixins.scss +164 -0
- package/src/scss/base/button/_variables.scss +43 -11
- package/src/scss/base/form/_index.scss +3 -5
- package/src/scss/base/form/_variables.scss +8 -0
- package/src/scss/base/link/_defaults.scss +37 -6
- package/src/scss/base/link/_index.scss +73 -13
- package/src/scss/base/link/_variables.scss +175 -18
- package/src/scss/base/table/_index.scss +3 -5
- package/src/scss/base/table/_variables.scss +8 -0
- package/src/scss/component/_index.scss +6 -1
- package/src/scss/component/alert/_defaults.scss +49 -0
- package/src/scss/component/alert/_index.scss +118 -0
- package/src/scss/component/alert/_variables.scss +170 -0
- package/src/scss/component/card/_defaults.scss +32 -0
- package/src/scss/component/card/_index.scss +177 -0
- package/src/scss/component/card/_variables.scss +185 -0
- package/src/scss/component/carousel/_defaults.scss +43 -0
- package/src/scss/component/carousel/_index.scss +182 -0
- package/src/scss/component/carousel/_variables.scss +104 -0
- package/src/scss/component/input-group/_index.scss +1 -1
- package/src/scss/component/menu/_defaults.scss +66 -0
- package/src/scss/component/menu/_index.scss +305 -0
- package/src/scss/component/menu/_variables.scss +495 -0
- package/src/scss/component/navigation/_defaults.scss +29 -0
- package/src/scss/component/navigation/_index.scss +189 -0
- package/src/scss/component/navigation/_variables.scss +237 -0
- package/src/scss/functions/_theme.scss +16 -0
- package/src/scss/layout/_index.scss +2 -1
- package/src/scss/layout/columns/_index.scss +23 -1
- package/src/scss/layout/container/_index.scss +1 -1
- package/src/scss/layout/flex-columns/_defaults.scss +18 -0
- package/src/scss/layout/flex-columns/_index.scss +77 -0
- package/src/scss/layout/flex-columns/_variables.scss +26 -0
- package/src/scss/mixins/_layer.scss +2 -4
- package/src/scss/mixins/_media-queries.scss +8 -0
- package/src/scss/mixins/_visually-hidden.scss +20 -0
- package/src/scss/state/_index.scss +1 -1
- package/src/scss/state/focus/_index.scss +1 -1
- package/src/scss/theme/_index.scss +1 -1
- package/src/scss/theme/color/_index.scss +1 -1
- package/src/scss/theme/typography/_defaults.scss +1 -1
- package/src/scss/theme/typography/_index.scss +1 -1
- package/src/scss/theme/typography/_variables.scss +5 -2
- package/src/scss/utilities/_index.scss +5 -1
- package/src/scss/utilities/alignment/_index.scss +1 -1
- package/src/scss/utilities/color/_index.scss +1 -1
- package/src/scss/utilities/display/_defaults.scss +2 -0
- package/src/scss/utilities/display/_index.scss +11 -1
- package/src/scss/utilities/flex/_index.scss +1 -1
- package/src/scss/utilities/height/_defaults.scss +38 -0
- package/src/scss/utilities/height/_index.scss +23 -0
- package/src/scss/utilities/height/_variables.scss +6 -0
- package/src/scss/utilities/inset/_index.scss +1 -1
- package/src/scss/utilities/justification/_index.scss +1 -1
- package/src/scss/utilities/list/_index.scss +1 -1
- package/src/scss/utilities/order/_defaults.scss +19 -0
- package/src/scss/utilities/order/_index.scss +35 -0
- package/src/scss/utilities/order/_variables.scss +6 -0
- package/src/scss/utilities/position/_index.scss +1 -1
- package/src/scss/utilities/ratio/_defaults.scss +25 -0
- package/src/scss/utilities/ratio/_index.scss +34 -0
- package/src/scss/utilities/ratio/_variables.scss +9 -0
- package/src/scss/utilities/spacing/_index.scss +34 -17
- package/src/scss/utilities/typography/_index.scss +1 -1
- package/src/scss/utilities/visibility/_index.scss +1 -1
- package/src/scss/utilities/width/_defaults.scss +38 -0
- package/src/scss/utilities/width/_index.scss +23 -0
- package/src/scss/utilities/width/_variables.scss +6 -0
- package/stylelint.config.js +1 -0
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
// @graupl/graupl button base styles.
|
|
2
|
+
|
|
3
|
+
@use "defaults";
|
|
4
|
+
@use "../../defaults" as root-defaults;
|
|
5
|
+
@use "../../theme/color/variables" as color;
|
|
6
|
+
@use "variables" as *;
|
|
7
|
+
@use "../../mixins/layer" as *;
|
|
8
|
+
@use "../../mixins/media-queries" as *;
|
|
9
|
+
@use "../../functions/theme";
|
|
10
|
+
@use "sass:map";
|
|
11
|
+
|
|
12
|
+
@mixin apply-button(
|
|
13
|
+
$min-width: $button-min-width,
|
|
14
|
+
$min-height: $button-min-height,
|
|
15
|
+
$padding: $button-padding,
|
|
16
|
+
$transform: $button-transform,
|
|
17
|
+
$transition: $button-transition,
|
|
18
|
+
$border: $button-border,
|
|
19
|
+
$border-radius: $button-border-radius,
|
|
20
|
+
$font-size: $button-font-size,
|
|
21
|
+
$visited-transform: $button-visited-transform,
|
|
22
|
+
$focus-transform: $button-focus-transform,
|
|
23
|
+
$hover-transform: $button-hover-transform,
|
|
24
|
+
$active-transform: $button-active-transform,
|
|
25
|
+
$disabled-transform: $button-disabled-transform,
|
|
26
|
+
$border-color: $button-border-color,
|
|
27
|
+
$background: $button-background,
|
|
28
|
+
$color: $button-color,
|
|
29
|
+
$visited-border-color: $button-visited-border-color,
|
|
30
|
+
$visited-background: $button-visited-background,
|
|
31
|
+
$visited-color: $button-visited-color,
|
|
32
|
+
$focus-border-color: $button-focus-border-color,
|
|
33
|
+
$focus-background: $button-focus-background,
|
|
34
|
+
$focus-color: $button-focus-color,
|
|
35
|
+
$hover-border-color: $button-hover-border-color,
|
|
36
|
+
$hover-background: $button-hover-background,
|
|
37
|
+
$hover-color: $button-hover-color,
|
|
38
|
+
$active-border-color: $button-active-border-color,
|
|
39
|
+
$active-background: $button-active-background,
|
|
40
|
+
$active-color: $button-active-color,
|
|
41
|
+
$disabled-border-color: $button-disabled-border-color,
|
|
42
|
+
$disabled-background: $button-disabled-background,
|
|
43
|
+
$disabled-color: $button-disabled-color
|
|
44
|
+
) {
|
|
45
|
+
@include layer(base) {
|
|
46
|
+
display: flex;
|
|
47
|
+
align-items: center;
|
|
48
|
+
justify-content: center;
|
|
49
|
+
min-width: $min-width;
|
|
50
|
+
min-height: $min-height;
|
|
51
|
+
padding: $padding;
|
|
52
|
+
transform: $transform;
|
|
53
|
+
transition: $transition;
|
|
54
|
+
border: $border;
|
|
55
|
+
border-radius: $border-radius;
|
|
56
|
+
font-size: $font-size;
|
|
57
|
+
cursor: pointer;
|
|
58
|
+
|
|
59
|
+
&:visited,
|
|
60
|
+
&#{defaults.$button-visited-selector} {
|
|
61
|
+
--#{root-defaults.$prefix}-button-transform: #{$visited-transform};
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
&:focus-visible,
|
|
65
|
+
&#{defaults.$button-focus-selector} {
|
|
66
|
+
--#{root-defaults.$prefix}-button-transform: #{$focus-transform};
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
&:hover,
|
|
70
|
+
&#{defaults.$button-hover-selector} {
|
|
71
|
+
--#{root-defaults.$prefix}-button-transform: #{$hover-transform};
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
&:active,
|
|
75
|
+
&#{defaults.$button-active-selector} {
|
|
76
|
+
--#{root-defaults.$prefix}-button-transform: #{$active-transform};
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
&:disabled,
|
|
80
|
+
&[disabled],
|
|
81
|
+
&#{defaults.$button-disabled-selector} {
|
|
82
|
+
cursor: not-allowed;
|
|
83
|
+
|
|
84
|
+
&,
|
|
85
|
+
&:visited,
|
|
86
|
+
&#{defaults.$button-visited-selector},
|
|
87
|
+
&:focus-visible,
|
|
88
|
+
&#{defaults.$button-focus-selector},
|
|
89
|
+
&:hover,
|
|
90
|
+
&#{defaults.$button-hover-selector},
|
|
91
|
+
&:active,
|
|
92
|
+
&#{defaults.$button-active-selector} {
|
|
93
|
+
--#{root-defaults.$prefix}-button-transform: #{$disabled-transform};
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
@include animation-off {
|
|
98
|
+
--#{root-defaults.$prefix}-button-transition: #{$button-transition-reduced-motion};
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
@include layer(theme) {
|
|
103
|
+
border-color: $border-color;
|
|
104
|
+
background: $background;
|
|
105
|
+
color: $color;
|
|
106
|
+
|
|
107
|
+
@each $color, $map in color.$theme-active {
|
|
108
|
+
&#{defaults.$button-theme-selector-prefix}#{$color} {
|
|
109
|
+
@each $prop, $shade in defaults.$button-state-theme-map {
|
|
110
|
+
--#{root-defaults.$prefix}-button-#{$prop}: #{theme.get(
|
|
111
|
+
$color,
|
|
112
|
+
$shade
|
|
113
|
+
)};
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
&:visited,
|
|
119
|
+
&#{defaults.$button-visited-selector} {
|
|
120
|
+
--#{root-defaults.$prefix}-button-border-color: #{$visited-border-color};
|
|
121
|
+
--#{root-defaults.$prefix}-button-background: #{$visited-background};
|
|
122
|
+
--#{root-defaults.$prefix}-button-color: #{$visited-color};
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
&:focus-visible,
|
|
126
|
+
&#{defaults.$button-focus-selector} {
|
|
127
|
+
--#{root-defaults.$prefix}-button-border-color: #{$focus-border-color};
|
|
128
|
+
--#{root-defaults.$prefix}-button-background: #{$focus-background};
|
|
129
|
+
--#{root-defaults.$prefix}-button-color: #{$focus-color};
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
&:hover,
|
|
133
|
+
&#{defaults.$button-hover-selector} {
|
|
134
|
+
--#{root-defaults.$prefix}-button-border-color: #{$hover-border-color};
|
|
135
|
+
--#{root-defaults.$prefix}-button-background: #{$hover-background};
|
|
136
|
+
--#{root-defaults.$prefix}-button-color: #{$hover-color};
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
&:active,
|
|
140
|
+
&#{defaults.$button-active-selector} {
|
|
141
|
+
--#{root-defaults.$prefix}-button-border-color: #{$active-border-color};
|
|
142
|
+
--#{root-defaults.$prefix}-button-background: #{$active-background};
|
|
143
|
+
--#{root-defaults.$prefix}-button-color: #{$active-color};
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
&:disabled,
|
|
147
|
+
&[disabled],
|
|
148
|
+
&#{defaults.$button-disabled-selector} {
|
|
149
|
+
&,
|
|
150
|
+
&:visited,
|
|
151
|
+
&#{defaults.$button-visited-selector},
|
|
152
|
+
&:focus-visible,
|
|
153
|
+
&#{defaults.$button-focus-selector},
|
|
154
|
+
&:hover,
|
|
155
|
+
&#{defaults.$button-hover-selector},
|
|
156
|
+
&:active,
|
|
157
|
+
&#{defaults.$button-active-selector} {
|
|
158
|
+
--#{root-defaults.$prefix}-button-border-color: #{$disabled-border-color};
|
|
159
|
+
--#{root-defaults.$prefix}-button-background: #{$disabled-background};
|
|
160
|
+
--#{root-defaults.$prefix}-button-color: #{$disabled-color};
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
@@ -53,6 +53,14 @@ $button-transform: var(
|
|
|
53
53
|
--#{root-defaults.$prefix}-button-transform,
|
|
54
54
|
#{defaults.$button-transform}
|
|
55
55
|
);
|
|
56
|
+
$button-visited-transform: var(
|
|
57
|
+
--#{root-defaults.$prefix}-button-visited-transform,
|
|
58
|
+
#{defaults.$button-visited-transform}
|
|
59
|
+
);
|
|
60
|
+
$button-focus-transform: var(
|
|
61
|
+
--#{root-defaults.$prefix}-button-focus-transform,
|
|
62
|
+
#{defaults.$button-focus-transform}
|
|
63
|
+
);
|
|
56
64
|
$button-hover-transform: var(
|
|
57
65
|
--#{root-defaults.$prefix}-button-hover-transform,
|
|
58
66
|
#{defaults.$button-hover-transform}
|
|
@@ -61,13 +69,9 @@ $button-active-transform: var(
|
|
|
61
69
|
--#{root-defaults.$prefix}-button-active-transform,
|
|
62
70
|
#{defaults.$button-active-transform}
|
|
63
71
|
);
|
|
64
|
-
$button-
|
|
65
|
-
--#{root-defaults.$prefix}-button-
|
|
66
|
-
#{defaults.$button-
|
|
67
|
-
);
|
|
68
|
-
$button-active-transform-reduced-motion: var(
|
|
69
|
-
--#{root-defaults.$prefix}-button-active-transform-reduced-motion,
|
|
70
|
-
#{defaults.$button-active-transform-reduced-motion}
|
|
72
|
+
$button-disabled-transform: var(
|
|
73
|
+
--#{root-defaults.$prefix}-button-disabled-transform,
|
|
74
|
+
#{defaults.$button-disabled-transform}
|
|
71
75
|
);
|
|
72
76
|
|
|
73
77
|
// Background properties.
|
|
@@ -75,6 +79,14 @@ $button-background: var(
|
|
|
75
79
|
--#{root-defaults.$prefix}-button-background,
|
|
76
80
|
#{color.$root-background}
|
|
77
81
|
);
|
|
82
|
+
$button-visited-background: var(
|
|
83
|
+
--#{root-defaults.$prefix}-button-visited-background,
|
|
84
|
+
#{color.$root-background}
|
|
85
|
+
);
|
|
86
|
+
$button-focus-background: var(
|
|
87
|
+
--#{root-defaults.$prefix}-button-focus-background,
|
|
88
|
+
#{color.$root-background}
|
|
89
|
+
);
|
|
78
90
|
$button-hover-background: var(
|
|
79
91
|
--#{root-defaults.$prefix}-button-hover-background,
|
|
80
92
|
#{theme.get(primary, 900)}
|
|
@@ -91,7 +103,15 @@ $button-disabled-background: var(
|
|
|
91
103
|
// Text properties.
|
|
92
104
|
$button-color: var(
|
|
93
105
|
--#{root-defaults.$prefix}-button-color,
|
|
94
|
-
#{
|
|
106
|
+
#{color.$root-color}
|
|
107
|
+
);
|
|
108
|
+
$button-visited-color: var(
|
|
109
|
+
--#{root-defaults.$prefix}-button-visited-color,
|
|
110
|
+
#{color.$root-color}
|
|
111
|
+
);
|
|
112
|
+
$button-focus-color: var(
|
|
113
|
+
--#{root-defaults.$prefix}-button-focus-color,
|
|
114
|
+
#{color.$root-color}
|
|
95
115
|
);
|
|
96
116
|
$button-hover-color: var(
|
|
97
117
|
--#{root-defaults.$prefix}-button-hover-color,
|
|
@@ -115,6 +135,10 @@ $button-border-style: var(
|
|
|
115
135
|
--#{root-defaults.$prefix}-botton-border-style,
|
|
116
136
|
#{root-variables.$border-style}
|
|
117
137
|
);
|
|
138
|
+
$button-border: var(
|
|
139
|
+
--#{root-defaults.$prefix}-button-border,
|
|
140
|
+
#{$button-border-width} #{$button-border-style}
|
|
141
|
+
);
|
|
118
142
|
$button-border-radius: var(
|
|
119
143
|
--#{root-defaults.$prefix}-button-border-radius,
|
|
120
144
|
#{root-variables.$border-radius}
|
|
@@ -123,15 +147,23 @@ $button-border-radius: var(
|
|
|
123
147
|
// Border colour properties.
|
|
124
148
|
$button-border-color: var(
|
|
125
149
|
--#{root-defaults.$prefix}-button-border-color,
|
|
126
|
-
#{
|
|
150
|
+
#{color.$root-color}
|
|
151
|
+
);
|
|
152
|
+
$button-visited-border-color: var(
|
|
153
|
+
--#{root-defaults.$prefix}-button-visited-border-color,
|
|
154
|
+
#{color.$root-color}
|
|
155
|
+
);
|
|
156
|
+
$button-focus-border-color: var(
|
|
157
|
+
--#{root-defaults.$prefix}-button-focus-border-color,
|
|
158
|
+
#{color.$root-color}
|
|
127
159
|
);
|
|
128
160
|
$button-hover-border-color: var(
|
|
129
161
|
--#{root-defaults.$prefix}-button-hover-border-color,
|
|
130
|
-
#{
|
|
162
|
+
#{color.$root-color}
|
|
131
163
|
);
|
|
132
164
|
$button-active-border-color: var(
|
|
133
165
|
--#{root-defaults.$prefix}-button-active-border-color,
|
|
134
|
-
#{
|
|
166
|
+
#{color.$root-color}
|
|
135
167
|
);
|
|
136
168
|
$button-disabled-border-color: var(
|
|
137
169
|
--#{root-defaults.$prefix}-button-disabled-border-color,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// @
|
|
1
|
+
// @graupl/graupl form base styles.
|
|
2
2
|
|
|
3
3
|
@use "defaults";
|
|
4
4
|
@use "variables" as *;
|
|
@@ -9,8 +9,7 @@
|
|
|
9
9
|
#{defaults.$textarea-selector},
|
|
10
10
|
#{defaults.$select-selector} {
|
|
11
11
|
padding: $input-padding;
|
|
12
|
-
border
|
|
13
|
-
border-style: $input-border-style;
|
|
12
|
+
border: $input-border;
|
|
14
13
|
border-radius: $input-border-radius;
|
|
15
14
|
font-size: $input-font-size;
|
|
16
15
|
|
|
@@ -28,8 +27,7 @@
|
|
|
28
27
|
flex-flow: $fieldset-direction wrap;
|
|
29
28
|
gap: $fieldset-gap;
|
|
30
29
|
padding: $fieldset-padding;
|
|
31
|
-
border
|
|
32
|
-
border-style: $fieldset-border-style;
|
|
30
|
+
border: $fieldset-border;
|
|
33
31
|
border-radius: $fieldset-border-radius;
|
|
34
32
|
font-size: $fieldset-font-size;
|
|
35
33
|
|
|
@@ -106,6 +106,10 @@ $input-border-style: var(
|
|
|
106
106
|
--#{root-defaults.$prefix}-botton-border-style,
|
|
107
107
|
#{root-variables.$border-style}
|
|
108
108
|
);
|
|
109
|
+
$input-border: var(
|
|
110
|
+
--#{root-defaults.$prefix}-input-border,
|
|
111
|
+
#{$input-border-width} #{$input-border-style}
|
|
112
|
+
);
|
|
109
113
|
$input-border-radius: var(
|
|
110
114
|
--#{root-defaults.$prefix}-input-border-radius,
|
|
111
115
|
#{root-variables.$border-radius}
|
|
@@ -118,6 +122,10 @@ $fieldset-border-style: var(
|
|
|
118
122
|
--#{root-defaults.$prefix}-fieldset-border-style,
|
|
119
123
|
#{$input-border-style}
|
|
120
124
|
);
|
|
125
|
+
$fieldset-border: var(
|
|
126
|
+
--#{root-defaults.$prefix}-fieldset-border,
|
|
127
|
+
#{$fieldset-border-width} #{$fieldset-border-style}
|
|
128
|
+
);
|
|
121
129
|
$fieldset-border-radius: var(
|
|
122
130
|
--#{root-defaults.$prefix}-fieldset-border-radius,
|
|
123
131
|
#{$input-border-radius}
|
|
@@ -8,12 +8,43 @@
|
|
|
8
8
|
|
|
9
9
|
// Link selectors.
|
|
10
10
|
$link-selector: "a" !default;
|
|
11
|
+
$stretched-link-selector: ".stretched" !default;
|
|
12
|
+
$stretched-link-pseudo-selector: "before" !default;
|
|
11
13
|
|
|
12
14
|
// Link properties.
|
|
13
|
-
$link-text-decoration: underline;
|
|
14
|
-
$link-
|
|
15
|
+
$link-text-decoration: underline !default;
|
|
16
|
+
$link-visited-text-decoration: $link-text-decoration !default;
|
|
17
|
+
$link-active-text-decoration: $link-text-decoration !default;
|
|
18
|
+
$link-hover-text-decoration: $link-text-decoration !default;
|
|
19
|
+
$link-focus-text-decoration: $link-text-decoration !default;
|
|
20
|
+
$link-disabled-text-decoration: $link-text-decoration !default;
|
|
21
|
+
$link-text-decoration-style: solid !default;
|
|
22
|
+
$link-visited-text-decoration-style: $link-text-decoration-style !default;
|
|
23
|
+
$link-active-text-decoration-style: $link-text-decoration-style !default;
|
|
24
|
+
$link-hover-text-decoration-style: $link-text-decoration-style !default;
|
|
25
|
+
$link-focus-text-decoration-style: $link-text-decoration-style !default;
|
|
26
|
+
$link-disabled-text-decoration-style: $link-text-decoration-style !default;
|
|
15
27
|
$link-transform: none !default;
|
|
16
|
-
$link-
|
|
17
|
-
$link-
|
|
18
|
-
$link-
|
|
19
|
-
$link-active-transform
|
|
28
|
+
$link-visited-transform: $link-transform !default;
|
|
29
|
+
$link-focus-transform: $link-transform !default;
|
|
30
|
+
$link-hover-transform: $link-transform !default;
|
|
31
|
+
$link-active-transform: $link-transform !default;
|
|
32
|
+
$link-disabled-transform: $link-transform !default;
|
|
33
|
+
$link-border-width: 0 !default;
|
|
34
|
+
$link-border-color: transparent !default;
|
|
35
|
+
$link-visited-border-color: $link-border-color !default;
|
|
36
|
+
$link-focus-border-color: $link-border-color !default;
|
|
37
|
+
$link-hover-border-color: $link-border-color !default;
|
|
38
|
+
$link-active-border-color: $link-border-color !default;
|
|
39
|
+
$link-disabled-border-color: $link-border-color !default;
|
|
40
|
+
$link-background: transparent !default;
|
|
41
|
+
$link-visited-background: $link-background !default;
|
|
42
|
+
$link-focus-background: $link-background !default;
|
|
43
|
+
$link-hover-background: $link-background !default;
|
|
44
|
+
$link-active-background: $link-background !default;
|
|
45
|
+
$link-disabled-background: $link-background !default;
|
|
46
|
+
$link-min-width: auto;
|
|
47
|
+
$link-min-height: auto;
|
|
48
|
+
|
|
49
|
+
// Stretched link properties.
|
|
50
|
+
$stretched-link-z-index: 5 !default;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// @
|
|
1
|
+
// @graupl/graupl link base styles.
|
|
2
2
|
|
|
3
3
|
@use "defaults";
|
|
4
4
|
@use "variables" as *;
|
|
@@ -8,24 +8,70 @@
|
|
|
8
8
|
|
|
9
9
|
@include layer(base) {
|
|
10
10
|
#{defaults.$link-selector} {
|
|
11
|
+
min-width: $link-min-width;
|
|
12
|
+
min-height: $link-min-height;
|
|
11
13
|
padding: $link-padding;
|
|
12
14
|
transform: $link-transform;
|
|
13
15
|
transition: $link-transition;
|
|
16
|
+
border: $link-border;
|
|
17
|
+
border-radius: $link-border-radius;
|
|
14
18
|
text-decoration: $link-text-decoration;
|
|
19
|
+
text-decoration-style: $link-text-decoration-style;
|
|
15
20
|
text-decoration-thickness: $link-text-decoration-thickness;
|
|
16
21
|
|
|
22
|
+
&:visited {
|
|
23
|
+
--#{root-defaults.$prefix}-link-text-decoration: #{$link-visited-text-decoration};
|
|
24
|
+
--#{root-defaults.$prefix}-link-text-decoration-thickness: #{$link-visited-text-decoration-thickness};
|
|
25
|
+
--#{root-defaults.$prefix}-link-text-decoration-style: #{$link-visited-text-decoration-style};
|
|
26
|
+
--#{root-defaults.$prefix}-link-transform: #{$link-visited-transform};
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
&:focus-visible {
|
|
30
|
+
--#{root-defaults.$prefix}-link-text-decoration: #{$link-focus-text-decoration};
|
|
31
|
+
--#{root-defaults.$prefix}-link-text-decoration-thickness: #{$link-focus-text-decoration-thickness};
|
|
32
|
+
--#{root-defaults.$prefix}-link-text-decoration-style: #{$link-focus-text-decoration-style};
|
|
33
|
+
--#{root-defaults.$prefix}-link-transform: #{$link-focus-transform};
|
|
34
|
+
}
|
|
35
|
+
|
|
17
36
|
&:hover {
|
|
18
37
|
--#{root-defaults.$prefix}-link-text-decoration: #{$link-hover-text-decoration};
|
|
19
38
|
--#{root-defaults.$prefix}-link-text-decoration-thickness: #{$link-hover-text-decoration-thickness};
|
|
39
|
+
--#{root-defaults.$prefix}-link-text-decoration-style: #{$link-hover-text-decoration-style};
|
|
20
40
|
--#{root-defaults.$prefix}-link-transform: #{$link-hover-transform};
|
|
21
41
|
}
|
|
22
42
|
|
|
23
43
|
&:active {
|
|
44
|
+
--#{root-defaults.$prefix}-link-text-decoration: #{$link-active-text-decoration};
|
|
45
|
+
--#{root-defaults.$prefix}-link-text-decoration-thickness: #{$link-active-text-decoration-thickness};
|
|
46
|
+
--#{root-defaults.$prefix}-link-text-decoration-style: #{$link-active-text-decoration-style};
|
|
24
47
|
--#{root-defaults.$prefix}-link-transform: #{$link-active-transform};
|
|
25
48
|
}
|
|
26
49
|
|
|
50
|
+
&:disabled,
|
|
27
51
|
&[disabled] {
|
|
28
52
|
cursor: not-allowed;
|
|
53
|
+
|
|
54
|
+
&,
|
|
55
|
+
&:visited,
|
|
56
|
+
&:focus-visible,
|
|
57
|
+
&:hover,
|
|
58
|
+
&:active {
|
|
59
|
+
--#{root-defaults.$prefix}-link-text-decoration: #{$link-disabled-text-decoration};
|
|
60
|
+
--#{root-defaults.$prefix}-link-text-decoration-thickness: #{$link-disabled-text-decoration-thickness};
|
|
61
|
+
--#{root-defaults.$prefix}-link-text-decoration-style: #{$link-disabled-text-decoration-style};
|
|
62
|
+
--#{root-defaults.$prefix}-link-transform: #{$link-disabled-transform};
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
&#{defaults.$stretched-link-selector} {
|
|
67
|
+
isolation: isolate;
|
|
68
|
+
|
|
69
|
+
&::#{defaults.$stretched-link-pseudo-selector} {
|
|
70
|
+
content: "";
|
|
71
|
+
position: absolute;
|
|
72
|
+
inset: 0;
|
|
73
|
+
z-index: $stretched-link-z-index;
|
|
74
|
+
}
|
|
29
75
|
}
|
|
30
76
|
}
|
|
31
77
|
|
|
@@ -38,37 +84,51 @@
|
|
|
38
84
|
|
|
39
85
|
@include layer(theme) {
|
|
40
86
|
#{defaults.$link-selector} {
|
|
87
|
+
border-color: $link-border-color;
|
|
41
88
|
background: $link-background;
|
|
42
89
|
color: $link-color;
|
|
90
|
+
text-decoration-color: $link-text-decoration-color;
|
|
91
|
+
|
|
92
|
+
&:visited {
|
|
93
|
+
--#{root-defaults.$prefix}-link-color: #{$link-visited-color};
|
|
94
|
+
--#{root-defaults.$prefix}-link-background: #{$link-visited-background};
|
|
95
|
+
--#{root-defaults.$prefix}-link-border-color: #{$link-visited-border-color};
|
|
96
|
+
--#{root-defaults.$prefix}-link-text-decoration-color: #{$link-visited-text-decoration-color};
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
&:focus-visible {
|
|
100
|
+
--#{root-defaults.$prefix}-link-color: #{$link-focus-color};
|
|
101
|
+
--#{root-defaults.$prefix}-link-background: #{$link-focus-background};
|
|
102
|
+
--#{root-defaults.$prefix}-link-border-color: #{$link-focus-border-color};
|
|
103
|
+
--#{root-defaults.$prefix}-link-text-decoration-color: #{$link-focus-text-decoration-color};
|
|
104
|
+
}
|
|
43
105
|
|
|
44
106
|
&:hover {
|
|
45
107
|
--#{root-defaults.$prefix}-link-color: #{$link-hover-color};
|
|
46
108
|
--#{root-defaults.$prefix}-link-background: #{$link-hover-background};
|
|
109
|
+
--#{root-defaults.$prefix}-link-border-color: #{$link-hover-border-color};
|
|
110
|
+
--#{root-defaults.$prefix}-link-text-decoration-color: #{$link-hover-text-decoration-color};
|
|
47
111
|
}
|
|
48
112
|
|
|
49
113
|
&:active {
|
|
50
114
|
--#{root-defaults.$prefix}-link-color: #{$link-active-color};
|
|
51
115
|
--#{root-defaults.$prefix}-link-background: #{$link-active-background};
|
|
116
|
+
--#{root-defaults.$prefix}-link-border-color: #{$link-active-border-color};
|
|
117
|
+
--#{root-defaults.$prefix}-link-text-decoration-color: #{$link-active-text-decoration-color};
|
|
52
118
|
}
|
|
53
119
|
|
|
54
|
-
|
|
55
|
-
&:visited {
|
|
56
|
-
&,
|
|
57
|
-
&:hover {
|
|
58
|
-
--#{root-defaults.$prefix}-link-color: #{$link-visited-color};
|
|
59
|
-
--#{root-defaults.$prefix}-link-background: #{$link-visited-background};
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
|
|
120
|
+
&:disabled,
|
|
63
121
|
&[disabled] {
|
|
64
122
|
&,
|
|
123
|
+
&:visited,
|
|
124
|
+
&:focus-visible,
|
|
65
125
|
&:hover,
|
|
66
|
-
&:active
|
|
67
|
-
&:visited {
|
|
126
|
+
&:active {
|
|
68
127
|
--#{root-defaults.$prefix}-link-color: #{$link-disabled-color};
|
|
69
128
|
--#{root-defaults.$prefix}-link-background: #{$link-disabled-background};
|
|
129
|
+
--#{root-defaults.$prefix}-link-border-color: #{$link-disabled-border-color};
|
|
130
|
+
--#{root-defaults.$prefix}-link-text-decoration-color: #{$link-disabled-text-decoration-color};
|
|
70
131
|
}
|
|
71
132
|
}
|
|
72
|
-
// stylelint-enable no-descending-specificity
|
|
73
133
|
}
|
|
74
134
|
}
|