@graupl/graupl 1.0.0-beta.1 → 1.0.0-beta.2
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/CHANGELOG.md +28 -0
- package/dist/css/base/button.css +1 -1
- package/dist/css/base/button.css.map +1 -1
- package/dist/css/base/form.css +1 -1
- package/dist/css/base/form.css.map +1 -1
- package/dist/css/base/link.css +1 -1
- package/dist/css/base/link.css.map +1 -1
- package/dist/css/base/table.css +1 -1
- package/dist/css/base/table.css.map +1 -1
- package/dist/css/base.css +1 -1
- package/dist/css/base.css.map +1 -1
- package/dist/css/component/accordion.css +1 -1
- package/dist/css/component/accordion.css.map +1 -1
- package/dist/css/component/alert.css +1 -1
- package/dist/css/component/alert.css.map +1 -1
- package/dist/css/component/card.css +1 -1
- package/dist/css/component/card.css.map +1 -1
- package/dist/css/component/carousel.css +1 -1
- package/dist/css/component/carousel.css.map +1 -1
- package/dist/css/component/input-group.css +1 -1
- package/dist/css/component/input-group.css.map +1 -1
- package/dist/css/component/list.css +2 -0
- package/dist/css/component/list.css.map +1 -0
- package/dist/css/component/menu.css +1 -1
- package/dist/css/component/menu.css.map +1 -1
- package/dist/css/component/navigation.css +1 -1
- package/dist/css/component/navigation.css.map +1 -1
- package/dist/css/component.css +1 -1
- package/dist/css/component.css.map +1 -1
- package/dist/css/graupl.css +1 -1
- package/dist/css/graupl.css.map +1 -1
- package/dist/css/layout/columns.css +1 -1
- package/dist/css/layout/columns.css.map +1 -1
- package/dist/css/layout/container.css +1 -1
- package/dist/css/layout/container.css.map +1 -1
- package/dist/css/layout/flex-columns.css +1 -1
- package/dist/css/layout/flex-columns.css.map +1 -1
- package/dist/css/layout.css +1 -1
- package/dist/css/layout.css.map +1 -1
- package/dist/css/normalize.css +1 -1
- package/dist/css/normalize.css.map +1 -1
- package/dist/css/state/focus.css +1 -1
- package/dist/css/state/focus.css.map +1 -1
- package/dist/css/state.css +1 -1
- package/dist/css/state.css.map +1 -1
- package/dist/css/theme/color.css +1 -1
- package/dist/css/theme/color.css.map +1 -1
- package/dist/css/theme/typography.css +1 -1
- package/dist/css/theme/typography.css.map +1 -1
- package/dist/css/theme.css +1 -1
- package/dist/css/theme.css.map +1 -1
- package/dist/css/utilities/alignment.css +1 -1
- package/dist/css/utilities/alignment.css.map +1 -1
- package/dist/css/utilities/border.css +2 -0
- package/dist/css/utilities/border.css.map +1 -0
- package/dist/css/utilities/color.css +1 -1
- package/dist/css/utilities/color.css.map +1 -1
- package/dist/css/utilities/display.css +1 -1
- package/dist/css/utilities/display.css.map +1 -1
- package/dist/css/utilities/flex.css +1 -1
- package/dist/css/utilities/flex.css.map +1 -1
- package/dist/css/utilities/height.css +1 -1
- package/dist/css/utilities/height.css.map +1 -1
- package/dist/css/utilities/inset.css +1 -1
- package/dist/css/utilities/inset.css.map +1 -1
- package/dist/css/utilities/justification.css +1 -1
- package/dist/css/utilities/justification.css.map +1 -1
- package/dist/css/utilities/list.css +1 -1
- package/dist/css/utilities/list.css.map +1 -1
- package/dist/css/utilities/order.css +1 -1
- package/dist/css/utilities/order.css.map +1 -1
- package/dist/css/utilities/postion.css +1 -1
- package/dist/css/utilities/postion.css.map +1 -1
- package/dist/css/utilities/ratio.css +1 -1
- package/dist/css/utilities/ratio.css.map +1 -1
- package/dist/css/utilities/spacing.css +1 -1
- package/dist/css/utilities/spacing.css.map +1 -1
- package/dist/css/utilities/typography.css +1 -1
- package/dist/css/utilities/typography.css.map +1 -1
- package/dist/css/utilities/visibility.css +1 -1
- package/dist/css/utilities/visibility.css.map +1 -1
- package/dist/css/utilities/width.css +1 -1
- package/dist/css/utilities/width.css.map +1 -1
- package/dist/css/utilities.css +1 -1
- package/dist/css/utilities.css.map +1 -1
- package/index.html +84 -12
- package/package.json +1 -1
- package/scss/component/list.scss +3 -0
- package/scss/utilities/border.scss +3 -0
- package/src/scss/_defaults.scss +14 -5
- package/src/scss/component/_index.scss +1 -0
- package/src/scss/component/input-group/_index.scss +1 -1
- package/src/scss/component/list/_defaults.scss +15 -0
- package/src/scss/component/list/_index.scss +50 -0
- package/src/scss/component/list/_variables.scss +176 -0
- package/src/scss/functions/_screen.scss +8 -0
- package/src/scss/functions/_utility.scss +28 -0
- package/src/scss/mixins/_layer.scss +5 -1
- package/src/scss/mixins/_screen.scss +24 -3
- package/src/scss/mixins/_state.scss +18 -0
- package/src/scss/mixins/_theme.scss +15 -0
- package/src/scss/mixins/_utility.scss +119 -17
- package/src/scss/theme/color/_index.scss +4 -4
- package/src/scss/utilities/_index.scss +1 -0
- package/src/scss/utilities/alignment/_defaults.scss +7 -5
- package/src/scss/utilities/alignment/_index.scss +117 -24
- package/src/scss/utilities/border/_defaults.scss +61 -0
- package/src/scss/utilities/border/_index.scss +269 -0
- package/src/scss/utilities/border/_variables.scss +6 -0
- package/src/scss/utilities/color/_defaults.scss +6 -4
- package/src/scss/utilities/color/_index.scss +137 -26
- package/src/scss/utilities/display/_defaults.scss +8 -4
- package/src/scss/utilities/display/_index.scss +88 -15
- package/src/scss/utilities/flex/_defaults.scss +30 -6
- package/src/scss/utilities/flex/_index.scss +215 -31
- package/src/scss/utilities/height/_defaults.scss +7 -5
- package/src/scss/utilities/height/_index.scss +183 -45
- package/src/scss/utilities/inset/_defaults.scss +4 -2
- package/src/scss/utilities/inset/_index.scss +58 -5
- package/src/scss/utilities/justification/_defaults.scss +7 -5
- package/src/scss/utilities/justification/_index.scss +117 -24
- package/src/scss/utilities/list/_defaults.scss +6 -4
- package/src/scss/utilities/list/_index.scss +86 -17
- package/src/scss/utilities/order/_defaults.scss +5 -3
- package/src/scss/utilities/order/_index.scss +68 -20
- package/src/scss/utilities/position/_defaults.scss +5 -3
- package/src/scss/utilities/position/_index.scss +55 -10
- package/src/scss/utilities/ratio/_defaults.scss +7 -5
- package/src/scss/utilities/ratio/_index.scss +49 -10
- package/src/scss/utilities/spacing/_defaults.scss +4 -2
- package/src/scss/utilities/spacing/_index.scss +225 -12
- package/src/scss/utilities/typography/_defaults.scss +21 -5
- package/src/scss/utilities/typography/_index.scss +577 -143
- package/src/scss/utilities/visibility/_defaults.scss +5 -3
- package/src/scss/utilities/visibility/_index.scss +56 -10
- package/src/scss/utilities/width/_defaults.scss +7 -5
- package/src/scss/utilities/width/_index.scss +183 -45
- package/stylelint.config.js +1 -0
|
@@ -0,0 +1,269 @@
|
|
|
1
|
+
// @graupl/graupl border utilities styles.
|
|
2
|
+
//
|
|
3
|
+
// Responsive class must be within their own loop to prevent specificity issues.
|
|
4
|
+
// This keeps responsive specificity tied to screen size before property order.
|
|
5
|
+
|
|
6
|
+
@use "../../defaults" as root-defaults;
|
|
7
|
+
@use "../../functions/important";
|
|
8
|
+
@use "../../mixins/layer" as *;
|
|
9
|
+
@use "../../mixins/screen";
|
|
10
|
+
@use "../../mixins/utility";
|
|
11
|
+
@use "../../theme/color/variables" as color;
|
|
12
|
+
@use "../../variables" as root-variables;
|
|
13
|
+
@use "defaults";
|
|
14
|
+
@use "sass:map";
|
|
15
|
+
@use "variables" as *;
|
|
16
|
+
|
|
17
|
+
@include layer(utilities) {
|
|
18
|
+
$selector-prefix: root-defaults.$utility-selector-prefix;
|
|
19
|
+
$selector: "#{$selector-prefix}#{defaults.$default-border-selector}";
|
|
20
|
+
|
|
21
|
+
// Create a class to apply the default border styling.
|
|
22
|
+
@include utility.create-mapped(
|
|
23
|
+
$selector,
|
|
24
|
+
(
|
|
25
|
+
border-width: root-variables.$border-width,
|
|
26
|
+
border-radius: root-variables.$border-radius,
|
|
27
|
+
border-style: root-variables.$border-style,
|
|
28
|
+
)
|
|
29
|
+
);
|
|
30
|
+
|
|
31
|
+
// For each border width, create a class to apply the border width.
|
|
32
|
+
@each $width, $value in defaults.$border-widths {
|
|
33
|
+
$selector: "#{$selector-prefix}#{defaults.$border-width-selector-prefix}#{$width}";
|
|
34
|
+
|
|
35
|
+
@include utility.create($selector, border-width, $value);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// For each border style, create a class to apply the border style.
|
|
39
|
+
@each $border-style, $value in defaults.$border-styles {
|
|
40
|
+
$selector: "#{$selector-prefix}#{defaults.$border-style-selector-prefix}#{$border-style}";
|
|
41
|
+
|
|
42
|
+
@include utility.create($selector, border-style, $value);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
// For each theme colour, create a utility class for border color.
|
|
46
|
+
@each $color, $map in map.get(color.$themes, active) {
|
|
47
|
+
@each $shade, $value in $map {
|
|
48
|
+
$selector: "#{$selector-prefix}#{defaults.$border-color-selector-prefix}#{$color}-#{$shade}";
|
|
49
|
+
|
|
50
|
+
@include utility.create($selector, border-color, $value);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
// For each border color, create a utility class for border color.
|
|
55
|
+
@each $name, $value in defaults.$border-colors {
|
|
56
|
+
$selector: "#{$selector-prefix}#{defaults.$border-color-selector-prefix}#{$name}";
|
|
57
|
+
|
|
58
|
+
@include utility.create($selector, border-color, $value);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
// Generate screen-aware utilities.
|
|
62
|
+
@if defaults.$screen-aware and root-defaults.$screen-aware-utilities {
|
|
63
|
+
@each $screen-name in map.keys(root-defaults.$screen-sizes) {
|
|
64
|
+
$selector-prefix: "#{root-defaults.$utility-selector-prefix}#{$screen-name}#{root-defaults.$utility-screen-aware-separator}";
|
|
65
|
+
$selector: "#{$selector-prefix}#{defaults.$default-border-selector}";
|
|
66
|
+
|
|
67
|
+
// Create a class to apply the default border styling.
|
|
68
|
+
@include utility.create-mapped(
|
|
69
|
+
$selector,
|
|
70
|
+
(
|
|
71
|
+
border-width: root-variables.$border-width,
|
|
72
|
+
border-radius: root-variables.$border-radius,
|
|
73
|
+
border-style: root-variables.$border-style,
|
|
74
|
+
),
|
|
75
|
+
$screen: $screen-name
|
|
76
|
+
);
|
|
77
|
+
|
|
78
|
+
// For each border width, create a class to apply the border width.
|
|
79
|
+
@each $width, $value in defaults.$border-widths {
|
|
80
|
+
$selector: "#{$selector-prefix}#{defaults.$border-width-selector-prefix}#{$width}";
|
|
81
|
+
|
|
82
|
+
@include utility.create(
|
|
83
|
+
$selector,
|
|
84
|
+
border-width,
|
|
85
|
+
$value,
|
|
86
|
+
$screen: $screen-name
|
|
87
|
+
);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
// For each border style, create a class to apply the border style.
|
|
91
|
+
@each $border-style, $value in defaults.$border-styles {
|
|
92
|
+
$selector: "#{$selector-prefix}#{defaults.$border-style-selector-prefix}#{$border-style}";
|
|
93
|
+
|
|
94
|
+
@include utility.create(
|
|
95
|
+
$selector,
|
|
96
|
+
border-style,
|
|
97
|
+
$value,
|
|
98
|
+
$screen: $screen-name
|
|
99
|
+
);
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
// For each theme colour, create a utility class for border color.
|
|
103
|
+
@each $color, $map in map.get(color.$themes, active) {
|
|
104
|
+
@each $shade, $value in $map {
|
|
105
|
+
$selector: "#{$selector-prefix}#{defaults.$border-color-selector-prefix}#{$color}-#{$shade}";
|
|
106
|
+
|
|
107
|
+
@include utility.create(
|
|
108
|
+
$selector,
|
|
109
|
+
border-color,
|
|
110
|
+
$value,
|
|
111
|
+
$screen: $screen-name
|
|
112
|
+
);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
// For each border color, create a utility class for border color.
|
|
117
|
+
@each $name, $value in defaults.$border-colors {
|
|
118
|
+
$selector: "#{$selector-prefix}#{defaults.$border-color-selector-prefix}#{$name}";
|
|
119
|
+
|
|
120
|
+
@include utility.create(
|
|
121
|
+
$selector,
|
|
122
|
+
border-color,
|
|
123
|
+
$value,
|
|
124
|
+
$screen: $screen-name
|
|
125
|
+
);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
// Generate theme-aware utilities.
|
|
131
|
+
@if defaults.$theme-aware and root-defaults.$theme-aware-utilities {
|
|
132
|
+
@each $theme-name, $colors in color.$themes {
|
|
133
|
+
@if $theme-name != active {
|
|
134
|
+
$selector-prefix: "#{root-defaults.$utility-selector-prefix}#{$theme-name}#{root-defaults.$utility-theme-aware-separator}";
|
|
135
|
+
$selector: "#{$selector-prefix}#{defaults.$default-border-selector}";
|
|
136
|
+
|
|
137
|
+
// Create a class to apply the default border styling.
|
|
138
|
+
@include utility.create-mapped(
|
|
139
|
+
$selector,
|
|
140
|
+
(
|
|
141
|
+
border-width: root-variables.$border-width,
|
|
142
|
+
border-radius: root-variables.$border-radius,
|
|
143
|
+
border-style: root-variables.$border-style,
|
|
144
|
+
),
|
|
145
|
+
$theme: $theme-name
|
|
146
|
+
);
|
|
147
|
+
|
|
148
|
+
// For each border width, create a class to apply the border width.
|
|
149
|
+
@each $width, $value in defaults.$border-widths {
|
|
150
|
+
$selector: "#{$selector-prefix}#{defaults.$border-width-selector-prefix}#{$width}";
|
|
151
|
+
|
|
152
|
+
@include utility.create(
|
|
153
|
+
$selector,
|
|
154
|
+
border-width,
|
|
155
|
+
$value,
|
|
156
|
+
$theme: $theme-name
|
|
157
|
+
);
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
// For each border style, create a class to apply the border style.
|
|
161
|
+
@each $border-style, $value in defaults.$border-styles {
|
|
162
|
+
$selector: "#{$selector-prefix}#{defaults.$border-style-selector-prefix}#{$border-style}";
|
|
163
|
+
|
|
164
|
+
@include utility.create(
|
|
165
|
+
$selector,
|
|
166
|
+
border-style,
|
|
167
|
+
$value,
|
|
168
|
+
$theme: $theme-name
|
|
169
|
+
);
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
// For each theme colour, create a utility class for border color.
|
|
173
|
+
@each $color, $map in map.get(color.$themes, active) {
|
|
174
|
+
@each $shade, $value in $map {
|
|
175
|
+
$selector: "#{$selector-prefix}#{defaults.$border-color-selector-prefix}#{$color}-#{$shade}";
|
|
176
|
+
|
|
177
|
+
@include utility.create(
|
|
178
|
+
$selector,
|
|
179
|
+
border-color,
|
|
180
|
+
$value,
|
|
181
|
+
$theme: $theme-name
|
|
182
|
+
);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
// For each border color, create a utility class for border color.
|
|
187
|
+
@each $name, $value in defaults.$border-colors {
|
|
188
|
+
$selector: "#{$selector-prefix}#{defaults.$border-color-selector-prefix}#{$name}";
|
|
189
|
+
|
|
190
|
+
@include utility.create(
|
|
191
|
+
$selector,
|
|
192
|
+
border-color,
|
|
193
|
+
$value,
|
|
194
|
+
$theme: $theme-name
|
|
195
|
+
);
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
// Generate state-aware utilities.
|
|
202
|
+
@if defaults.$state-aware and root-defaults.$state-aware-utilities {
|
|
203
|
+
@each $state-name, $value in root-defaults.$state-selectors {
|
|
204
|
+
$selector-prefix: "#{root-defaults.$utility-selector-prefix}#{$state-name}#{root-defaults.$utility-state-aware-separator}";
|
|
205
|
+
$selector: "#{$selector-prefix}#{defaults.$default-border-selector}";
|
|
206
|
+
|
|
207
|
+
// Create a class to apply the default border styling.
|
|
208
|
+
@include utility.create-mapped(
|
|
209
|
+
$selector,
|
|
210
|
+
(
|
|
211
|
+
border-width: root-variables.$border-width,
|
|
212
|
+
border-radius: root-variables.$border-radius,
|
|
213
|
+
border-style: root-variables.$border-style,
|
|
214
|
+
),
|
|
215
|
+
$state: $state-name
|
|
216
|
+
);
|
|
217
|
+
|
|
218
|
+
// For each border width, create a class to apply the border width.
|
|
219
|
+
@each $width, $value in defaults.$border-widths {
|
|
220
|
+
$selector: "#{$selector-prefix}#{defaults.$border-width-selector-prefix}#{$width}";
|
|
221
|
+
|
|
222
|
+
@include utility.create(
|
|
223
|
+
$selector,
|
|
224
|
+
border-width,
|
|
225
|
+
$value,
|
|
226
|
+
$state: $state-name
|
|
227
|
+
);
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
// For each border style, create a class to apply the border style.
|
|
231
|
+
@each $border-style, $value in defaults.$border-styles {
|
|
232
|
+
$selector: "#{$selector-prefix}#{defaults.$border-style-selector-prefix}#{$border-style}";
|
|
233
|
+
|
|
234
|
+
@include utility.create(
|
|
235
|
+
$selector,
|
|
236
|
+
border-style,
|
|
237
|
+
$value,
|
|
238
|
+
$state: $state-name
|
|
239
|
+
);
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
// For each theme colour, create a utility class for border color.
|
|
243
|
+
@each $color, $map in map.get(color.$themes, active) {
|
|
244
|
+
@each $shade, $value in $map {
|
|
245
|
+
$selector: "#{$selector-prefix}#{defaults.$border-color-selector-prefix}#{$color}-#{$shade}";
|
|
246
|
+
|
|
247
|
+
@include utility.create(
|
|
248
|
+
$selector,
|
|
249
|
+
border-color,
|
|
250
|
+
$value,
|
|
251
|
+
$state: $state-name
|
|
252
|
+
);
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
// For each border color, create a utility class for border color.
|
|
257
|
+
@each $name, $value in defaults.$border-colors {
|
|
258
|
+
$selector: "#{$selector-prefix}#{defaults.$border-color-selector-prefix}#{$name}";
|
|
259
|
+
|
|
260
|
+
@include utility.create(
|
|
261
|
+
$selector,
|
|
262
|
+
border-color,
|
|
263
|
+
$value,
|
|
264
|
+
$state: $state-name
|
|
265
|
+
);
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
}
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
@use "sass:map";
|
|
10
10
|
|
|
11
11
|
// Background utility properties.
|
|
12
|
-
$background-
|
|
12
|
+
$background-selector-prefix: "bg-" !default;
|
|
13
13
|
$base-background-properties: (
|
|
14
14
|
inherit: inherit,
|
|
15
15
|
current: currentcolor,
|
|
@@ -22,7 +22,7 @@ $background-properties: map.merge(
|
|
|
22
22
|
);
|
|
23
23
|
|
|
24
24
|
// Text utility properties.
|
|
25
|
-
$text-
|
|
25
|
+
$text-selector-prefix: "text-" !default;
|
|
26
26
|
$base-text-properties: (
|
|
27
27
|
inherit: inherit,
|
|
28
28
|
current: currentcolor,
|
|
@@ -31,5 +31,7 @@ $base-text-properties: (
|
|
|
31
31
|
$custom-text-properties: () !default;
|
|
32
32
|
$text-properties: map.merge($base-text-properties, $custom-text-properties);
|
|
33
33
|
|
|
34
|
-
//
|
|
35
|
-
$
|
|
34
|
+
// Utility modifier flags.
|
|
35
|
+
$screen-aware: false !default;
|
|
36
|
+
$theme-aware: true !default;
|
|
37
|
+
$state-aware: true !default;
|
|
@@ -12,80 +12,191 @@
|
|
|
12
12
|
@use "variables" as *;
|
|
13
13
|
|
|
14
14
|
@include layer(utilities) {
|
|
15
|
+
$selector-prefix: root-defaults.$utility-selector-prefix;
|
|
16
|
+
|
|
15
17
|
// For each theme colour, create a utility class for background and color.
|
|
16
18
|
@each $color, $map in map.get(color.$themes, active) {
|
|
17
19
|
@each $shade, $value in $map {
|
|
18
|
-
$
|
|
19
|
-
|
|
20
|
-
@include utility.create(
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
);
|
|
25
|
-
@include utility.create(
|
|
26
|
-
".#{defaults.$text-class-prefix}#{$name}",
|
|
27
|
-
color,
|
|
28
|
-
$value
|
|
29
|
-
);
|
|
20
|
+
$selector: "#{$selector-prefix}#{defaults.$background-selector-prefix}#{$color}-#{$shade}";
|
|
21
|
+
|
|
22
|
+
@include utility.create($selector, background, $value);
|
|
23
|
+
|
|
24
|
+
$selector: "#{$selector-prefix}#{defaults.$text-selector-prefix}#{$color}-#{$shade}";
|
|
25
|
+
|
|
26
|
+
@include utility.create($selector, color, $value);
|
|
30
27
|
}
|
|
31
28
|
}
|
|
32
29
|
|
|
33
30
|
// For each background property, create a utility class.
|
|
34
31
|
@each $name, $value in defaults.$background-properties {
|
|
35
|
-
$selector: "
|
|
32
|
+
$selector: "#{$selector-prefix}#{defaults.$background-selector-prefix}#{$name}";
|
|
36
33
|
|
|
37
34
|
@include utility.create($selector, background, $value);
|
|
38
35
|
}
|
|
39
36
|
|
|
40
37
|
// For each text property, create a utility class.
|
|
41
38
|
@each $name, $value in defaults.$text-properties {
|
|
42
|
-
$selector: "
|
|
39
|
+
$selector: "#{$selector-prefix}#{defaults.$text-selector-prefix}#{$name}";
|
|
43
40
|
|
|
44
41
|
@include utility.create($selector, color, $value);
|
|
45
42
|
}
|
|
46
43
|
|
|
47
|
-
//
|
|
48
|
-
@if defaults.$
|
|
49
|
-
@each $screen-
|
|
44
|
+
// Generate screen-aware utilities.
|
|
45
|
+
@if defaults.$screen-aware and root-defaults.$screen-aware-utilities {
|
|
46
|
+
@each $screen-name in map.keys(root-defaults.$screen-sizes) {
|
|
47
|
+
$selector-prefix: "#{root-defaults.$utility-selector-prefix}#{$screen-name}#{root-defaults.$utility-screen-aware-separator}";
|
|
48
|
+
|
|
50
49
|
// For each theme colour, create a utility class for background and color.
|
|
51
50
|
@each $color, $map in map.get(color.$themes, active) {
|
|
52
51
|
@each $shade, $value in $map {
|
|
53
|
-
$
|
|
52
|
+
$selector: "#{$selector-prefix}#{defaults.$background-selector-prefix}#{$color}-#{$shade}";
|
|
54
53
|
|
|
55
54
|
@include utility.create(
|
|
56
|
-
|
|
55
|
+
$selector,
|
|
57
56
|
background,
|
|
58
57
|
$value,
|
|
59
|
-
$screen-
|
|
58
|
+
$screen: $screen-name
|
|
60
59
|
);
|
|
60
|
+
|
|
61
|
+
$selector: "#{$selector-prefix}#{defaults.$text-selector-prefix}#{$color}-#{$shade}";
|
|
62
|
+
|
|
61
63
|
@include utility.create(
|
|
62
|
-
|
|
64
|
+
$selector,
|
|
63
65
|
color,
|
|
64
66
|
$value,
|
|
65
|
-
$screen-
|
|
67
|
+
$screen: $screen-name
|
|
66
68
|
);
|
|
67
69
|
}
|
|
68
70
|
}
|
|
69
71
|
|
|
70
72
|
// For each background property, create a utility class.
|
|
71
73
|
@each $name, $value in defaults.$background-properties {
|
|
74
|
+
$selector: "#{$selector-prefix}#{defaults.$background-selector-prefix}#{$name}";
|
|
75
|
+
|
|
72
76
|
@include utility.create(
|
|
73
|
-
|
|
77
|
+
$selector,
|
|
74
78
|
background,
|
|
75
79
|
$value,
|
|
76
|
-
$screen-
|
|
80
|
+
$screen: $screen-name
|
|
77
81
|
);
|
|
78
82
|
}
|
|
79
83
|
|
|
80
84
|
// For each text property, create a utility class.
|
|
81
85
|
@each $name, $value in defaults.$text-properties {
|
|
86
|
+
$selector: "#{$selector-prefix}#{defaults.$text-selector-prefix}#{$name}";
|
|
87
|
+
|
|
82
88
|
@include utility.create(
|
|
83
|
-
|
|
89
|
+
$selector,
|
|
84
90
|
color,
|
|
85
91
|
$value,
|
|
86
|
-
$screen-
|
|
92
|
+
$screen: $screen-name
|
|
93
|
+
);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
// Generate theme-aware utilities.
|
|
99
|
+
@if defaults.$theme-aware and root-defaults.$theme-aware-utilities {
|
|
100
|
+
@each $theme-name, $colors in color.$themes {
|
|
101
|
+
@if $theme-name != active {
|
|
102
|
+
$selector-prefix: "#{root-defaults.$utility-selector-prefix}#{$theme-name}#{root-defaults.$utility-theme-aware-separator}";
|
|
103
|
+
|
|
104
|
+
// For each theme colour, create a utility class for background and color.
|
|
105
|
+
@each $color, $map in map.get(color.$themes, active) {
|
|
106
|
+
@each $shade, $value in $map {
|
|
107
|
+
$selector: "#{$selector-prefix}#{defaults.$background-selector-prefix}#{$color}-#{$shade}";
|
|
108
|
+
|
|
109
|
+
@include utility.create(
|
|
110
|
+
$selector,
|
|
111
|
+
background,
|
|
112
|
+
$value,
|
|
113
|
+
$theme: $theme-name
|
|
114
|
+
);
|
|
115
|
+
|
|
116
|
+
$selector: "#{$selector-prefix}#{defaults.$text-selector-prefix}#{$color}-#{$shade}";
|
|
117
|
+
|
|
118
|
+
@include utility.create(
|
|
119
|
+
$selector,
|
|
120
|
+
color,
|
|
121
|
+
$value,
|
|
122
|
+
$theme: $theme-name
|
|
123
|
+
);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
// For each background property, create a utility class.
|
|
128
|
+
@each $name, $value in defaults.$background-properties {
|
|
129
|
+
$selector: "#{$selector-prefix}#{defaults.$background-selector-prefix}#{$name}";
|
|
130
|
+
|
|
131
|
+
@include utility.create(
|
|
132
|
+
$selector,
|
|
133
|
+
background,
|
|
134
|
+
$value,
|
|
135
|
+
$theme: $theme-name
|
|
136
|
+
);
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
// For each text property, create a utility class.
|
|
140
|
+
@each $name, $value in defaults.$text-properties {
|
|
141
|
+
$selector: "#{$selector-prefix}#{defaults.$text-selector-prefix}#{$name}";
|
|
142
|
+
|
|
143
|
+
@include utility.create(
|
|
144
|
+
$selector,
|
|
145
|
+
color,
|
|
146
|
+
$value,
|
|
147
|
+
$theme: $theme-name
|
|
148
|
+
);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
// Generate state-aware utilities.
|
|
155
|
+
@if defaults.$state-aware and root-defaults.$state-aware-utilities {
|
|
156
|
+
@each $state-name, $value in root-defaults.$state-selectors {
|
|
157
|
+
$selector-prefix: "#{root-defaults.$utility-selector-prefix}#{$state-name}#{root-defaults.$utility-state-aware-separator}";
|
|
158
|
+
|
|
159
|
+
// For each theme colour, create a utility class for background and color.
|
|
160
|
+
@each $color, $map in map.get(color.$themes, active) {
|
|
161
|
+
@each $shade, $value in $map {
|
|
162
|
+
$selector: "#{$selector-prefix}#{defaults.$background-selector-prefix}#{$color}-#{$shade}";
|
|
163
|
+
|
|
164
|
+
@include utility.create(
|
|
165
|
+
$selector,
|
|
166
|
+
background,
|
|
167
|
+
$value,
|
|
168
|
+
$state: $state-name
|
|
169
|
+
);
|
|
170
|
+
|
|
171
|
+
$selector: "#{$selector-prefix}#{defaults.$text-selector-prefix}#{$color}-#{$shade}";
|
|
172
|
+
|
|
173
|
+
@include utility.create(
|
|
174
|
+
$selector,
|
|
175
|
+
color,
|
|
176
|
+
$value,
|
|
177
|
+
$state: $state-name
|
|
178
|
+
);
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
// For each background property, create a utility class.
|
|
183
|
+
@each $name, $value in defaults.$background-properties {
|
|
184
|
+
$selector: "#{$selector-prefix}#{defaults.$background-selector-prefix}#{$name}";
|
|
185
|
+
|
|
186
|
+
@include utility.create(
|
|
187
|
+
$selector,
|
|
188
|
+
background,
|
|
189
|
+
$value,
|
|
190
|
+
$state: $state-name
|
|
87
191
|
);
|
|
88
192
|
}
|
|
193
|
+
|
|
194
|
+
// For each text property, create a utility class.
|
|
195
|
+
@each $name, $value in defaults.$text-properties {
|
|
196
|
+
$selector: "#{$selector-prefix}#{defaults.$text-selector-prefix}#{$name}";
|
|
197
|
+
|
|
198
|
+
@include utility.create($selector, color, $value, $state: $state-name);
|
|
199
|
+
}
|
|
89
200
|
}
|
|
90
201
|
}
|
|
91
202
|
}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
@use "sass:map";
|
|
10
10
|
|
|
11
|
-
$display-
|
|
11
|
+
$display-selector-prefix: "display-" !default;
|
|
12
12
|
$base-display-properties: (
|
|
13
13
|
block: block,
|
|
14
14
|
inline-block: inline-block,
|
|
@@ -27,6 +27,10 @@ $display-properties: map.merge(
|
|
|
27
27
|
$base-display-properties,
|
|
28
28
|
$custom-display-properties
|
|
29
29
|
);
|
|
30
|
-
$visually-hidden-
|
|
31
|
-
$visually-hidden-focusable-
|
|
32
|
-
|
|
30
|
+
$visually-hidden-selector: "visually-hidden" !default;
|
|
31
|
+
$visually-hidden-focusable-selector: "visually-hidden-focusable" !default;
|
|
32
|
+
|
|
33
|
+
// Utility modifier flags.
|
|
34
|
+
$screen-aware: true !default;
|
|
35
|
+
$theme-aware: false !default;
|
|
36
|
+
$state-aware: false !default;
|
|
@@ -6,53 +6,126 @@
|
|
|
6
6
|
@use "../../defaults" as root-defaults;
|
|
7
7
|
@use "../../mixins/layer" as *;
|
|
8
8
|
@use "../../mixins/screen";
|
|
9
|
+
@use "../../mixins/theme";
|
|
10
|
+
@use "../../mixins/state";
|
|
9
11
|
@use "../../mixins/utility";
|
|
10
12
|
@use "../../mixins/visually-hidden";
|
|
13
|
+
@use "../../theme/color/variables" as color;
|
|
11
14
|
@use "defaults";
|
|
12
15
|
@use "sass:map";
|
|
13
16
|
@use "variables" as *;
|
|
14
17
|
|
|
15
18
|
@include layer(utilities) {
|
|
19
|
+
$selector-prefix: root-defaults.$utility-selector-prefix;
|
|
20
|
+
|
|
16
21
|
// For each display property, create a utility class.
|
|
17
22
|
@each $name, $property in defaults.$display-properties {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
$property
|
|
22
|
-
);
|
|
23
|
+
$selector: "#{$selector-prefix}#{defaults.$display-selector-prefix}#{$name}";
|
|
24
|
+
|
|
25
|
+
@include utility.create($selector, display, $property);
|
|
23
26
|
}
|
|
24
27
|
|
|
25
28
|
// Visually hidden utility classes.
|
|
26
|
-
#{defaults.$visually-hidden-
|
|
29
|
+
#{$selector-prefix}#{defaults.$visually-hidden-selector} {
|
|
27
30
|
@include visually-hidden.apply;
|
|
28
31
|
}
|
|
29
32
|
|
|
30
|
-
#{defaults.$visually-hidden-focusable-
|
|
33
|
+
#{$selector-prefix}#{defaults.$visually-hidden-focusable-selector} {
|
|
31
34
|
@include visually-hidden.focusable;
|
|
32
35
|
}
|
|
33
36
|
|
|
34
37
|
// Create responsive utilities for visually hidden classes.
|
|
35
|
-
@if defaults.$
|
|
36
|
-
@each $screen-
|
|
38
|
+
@if defaults.$screen-aware and root-defaults.$screen-aware-utilities {
|
|
39
|
+
@each $screen-name in map.keys(root-defaults.$screen-sizes) {
|
|
40
|
+
$selector-prefix: "#{root-defaults.$utility-selector-prefix}#{$screen-name}#{root-defaults.$utility-screen-aware-separator}";
|
|
41
|
+
|
|
42
|
+
// For each display property, create a utility class.
|
|
43
|
+
@each $name, $property in defaults.$display-properties {
|
|
44
|
+
$selector: "#{$selector-prefix}#{defaults.$display-selector-prefix}#{$name}";
|
|
45
|
+
|
|
46
|
+
@include utility.create(
|
|
47
|
+
$selector,
|
|
48
|
+
display,
|
|
49
|
+
$property,
|
|
50
|
+
$screen: $screen-name
|
|
51
|
+
);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
// Visually hidden utility classes.
|
|
55
|
+
#{$selector-prefix}#{defaults.$visually-hidden-selector} {
|
|
56
|
+
@include screen.up($screen-name) {
|
|
57
|
+
@include visually-hidden.apply;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
#{$selector-prefix}#{defaults.$visually-hidden-focusable-selector} {
|
|
62
|
+
@include screen.up($screen-name) {
|
|
63
|
+
@include visually-hidden.focusable;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
// Generate theme-aware utilities.
|
|
70
|
+
@if defaults.$theme-aware and root-defaults.$theme-aware-utilities {
|
|
71
|
+
@each $theme-name, $colors in color.$themes {
|
|
72
|
+
@if $theme-name != active {
|
|
73
|
+
$selector-prefix: "#{root-defaults.$utility-selector-prefix}#{$theme-name}#{root-defaults.$utility-theme-aware-separator}";
|
|
74
|
+
|
|
75
|
+
// For each display property, create a utility class.
|
|
76
|
+
@each $name, $property in defaults.$display-properties {
|
|
77
|
+
$selector: "#{$selector-prefix}#{defaults.$display-selector-prefix}#{$name}";
|
|
78
|
+
|
|
79
|
+
@include utility.create(
|
|
80
|
+
$selector,
|
|
81
|
+
display,
|
|
82
|
+
$property,
|
|
83
|
+
$theme: $theme-name
|
|
84
|
+
);
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
// Visually hidden utility classes.
|
|
88
|
+
#{$selector-prefix}#{defaults.$visually-hidden-selector} {
|
|
89
|
+
@include theme.theme($theme-name) {
|
|
90
|
+
@include visually-hidden.apply;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
#{$selector-prefix}#{defaults.$visually-hidden-focusable-selector} {
|
|
95
|
+
@include theme.theme($theme-name) {
|
|
96
|
+
@include visually-hidden.focusable;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
// Generate state-aware utilities.
|
|
104
|
+
@if defaults.$state-aware and root-defaults.$state-aware-utilities {
|
|
105
|
+
@each $state-name, $value in root-defaults.$state-selectors {
|
|
106
|
+
$selector-prefix: "#{root-defaults.$utility-selector-prefix}#{$state-name}#{root-defaults.$utility-state-aware-separator}";
|
|
107
|
+
|
|
37
108
|
// For each display property, create a utility class.
|
|
38
109
|
@each $name, $property in defaults.$display-properties {
|
|
110
|
+
$selector: "#{$selector-prefix}#{defaults.$display-selector-prefix}#{$name}";
|
|
111
|
+
|
|
39
112
|
@include utility.create(
|
|
40
|
-
|
|
113
|
+
$selector,
|
|
41
114
|
display,
|
|
42
115
|
$property,
|
|
43
|
-
$
|
|
116
|
+
$state: $state-name
|
|
44
117
|
);
|
|
45
118
|
}
|
|
46
119
|
|
|
47
120
|
// Visually hidden utility classes.
|
|
48
|
-
|
|
49
|
-
@include
|
|
121
|
+
#{$selector-prefix}#{defaults.$visually-hidden-selector} {
|
|
122
|
+
@include state.state($state-name) {
|
|
50
123
|
@include visually-hidden.apply;
|
|
51
124
|
}
|
|
52
125
|
}
|
|
53
126
|
|
|
54
|
-
|
|
55
|
-
@include
|
|
127
|
+
#{$selector-prefix}#{defaults.$visually-hidden-focusable-selector} {
|
|
128
|
+
@include state.state($state-name) {
|
|
56
129
|
@include visually-hidden.focusable;
|
|
57
130
|
}
|
|
58
131
|
}
|