@graupl/graupl 1.0.0-alpha.1 → 1.0.0-alpha.11

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.
Files changed (212) hide show
  1. package/.stylelintignore +9 -0
  2. package/CHANGELOG.md +177 -0
  3. package/dist/base/form.css +2 -0
  4. package/dist/base/form.css.map +1 -0
  5. package/dist/base/link.css +2 -0
  6. package/dist/base/link.css.map +1 -0
  7. package/dist/base/table.css +2 -0
  8. package/dist/base/table.css.map +1 -0
  9. package/dist/base.css +2 -0
  10. package/dist/base.css.map +1 -0
  11. package/dist/component/button.css +2 -0
  12. package/dist/component/button.css.map +1 -0
  13. package/dist/component/input-group.css +2 -0
  14. package/dist/component/input-group.css.map +1 -0
  15. package/dist/component/table.css +2 -0
  16. package/dist/component/table.css.map +1 -0
  17. package/dist/component.css +2 -0
  18. package/dist/component.css.map +1 -0
  19. package/dist/graupl.css +1 -284
  20. package/dist/graupl.css.map +1 -1
  21. package/dist/layout/columns.css +2 -0
  22. package/dist/layout/columns.css.map +1 -0
  23. package/dist/layout/container.css +2 -0
  24. package/dist/layout/container.css.map +1 -0
  25. package/dist/layout.css +2 -0
  26. package/dist/layout.css.map +1 -0
  27. package/dist/state/focus.css +2 -0
  28. package/dist/state/focus.css.map +1 -0
  29. package/dist/state.css +2 -0
  30. package/dist/state.css.map +1 -0
  31. package/dist/theme/color.css +2 -0
  32. package/dist/theme/color.css.map +1 -0
  33. package/dist/theme/typography.css +2 -0
  34. package/dist/theme/typography.css.map +1 -0
  35. package/dist/theme.css +2 -0
  36. package/dist/theme.css.map +1 -0
  37. package/dist/utilities/alignment.css +2 -0
  38. package/dist/utilities/alignment.css.map +1 -0
  39. package/dist/utilities/color.css +2 -0
  40. package/dist/utilities/color.css.map +1 -0
  41. package/dist/utilities/display.css +2 -0
  42. package/dist/utilities/display.css.map +1 -0
  43. package/dist/utilities/flex.css +2 -0
  44. package/dist/utilities/flex.css.map +1 -0
  45. package/dist/utilities/inset.css +2 -0
  46. package/dist/utilities/inset.css.map +1 -0
  47. package/dist/utilities/justification.css +2 -0
  48. package/dist/utilities/justification.css.map +1 -0
  49. package/dist/utilities/list.css +2 -0
  50. package/dist/utilities/list.css.map +1 -0
  51. package/dist/utilities/postion.css +2 -0
  52. package/dist/utilities/postion.css.map +1 -0
  53. package/dist/utilities/spacing.css +2 -0
  54. package/dist/utilities/spacing.css.map +1 -0
  55. package/dist/utilities/typography.css +2 -0
  56. package/dist/utilities/typography.css.map +1 -0
  57. package/dist/utilities/visibility.css +2 -0
  58. package/dist/utilities/visibility.css.map +1 -0
  59. package/dist/utilities.css +2 -0
  60. package/dist/utilities.css.map +1 -0
  61. package/docs/.vitepress/config.js +41 -1
  62. package/docs/.vitepress/theme/custom.scss +29 -29
  63. package/docs/compiling-graupl.md +56 -0
  64. package/docs/introduction.md +5 -0
  65. package/index.html +333 -72
  66. package/package.json +16 -4
  67. package/postcss.config.cjs +1 -1
  68. package/scss/base/form.scss +3 -0
  69. package/scss/base/link.scss +3 -0
  70. package/scss/base/table.scss +3 -0
  71. package/scss/base.scss +3 -0
  72. package/scss/component/button.scss +3 -0
  73. package/scss/component/input-group.scss +3 -0
  74. package/scss/component/table.scss +3 -0
  75. package/scss/component.scss +3 -0
  76. package/scss/graupl.scss +1 -5
  77. package/scss/layout/columns.scss +3 -0
  78. package/scss/layout/container.scss +3 -0
  79. package/scss/layout.scss +3 -0
  80. package/scss/state/focus.scss +3 -0
  81. package/scss/state.scss +3 -0
  82. package/scss/theme/color.scss +3 -0
  83. package/scss/theme/typography.scss +3 -0
  84. package/scss/theme.scss +3 -0
  85. package/scss/utilities/alignment.scss +3 -0
  86. package/scss/utilities/color.scss +3 -0
  87. package/scss/utilities/display.scss +3 -0
  88. package/scss/utilities/flex.scss +3 -0
  89. package/scss/utilities/inset.scss +3 -0
  90. package/scss/utilities/justification.scss +3 -0
  91. package/scss/utilities/list.scss +3 -0
  92. package/scss/utilities/postion.scss +3 -0
  93. package/scss/utilities/spacing.scss +3 -0
  94. package/scss/utilities/typography.scss +3 -0
  95. package/scss/utilities/visibility.scss +3 -0
  96. package/scss/utilities.scss +3 -0
  97. package/{scss → src/scss}/_defaults.scss +40 -13
  98. package/src/scss/_index.scss +14 -0
  99. package/src/scss/_init.scss +3 -0
  100. package/{scss → src/scss}/_variables.scss +14 -24
  101. package/{scss → src/scss}/base/_index.scss +1 -0
  102. package/{scss → src/scss}/base/form/_defaults.scss +0 -2
  103. package/{scss → src/scss}/base/form/_index.scss +12 -0
  104. package/src/scss/base/form/_variables.scss +145 -0
  105. package/{scss → src/scss}/base/link/_defaults.scss +0 -2
  106. package/src/scss/base/link/_index.scss +50 -0
  107. package/src/scss/base/link/_variables.scss +36 -0
  108. package/src/scss/base/table/_defaults.scss +8 -0
  109. package/src/scss/base/table/_index.scss +27 -0
  110. package/src/scss/base/table/_variables.scss +65 -0
  111. package/{scss → src/scss}/component/_index.scss +2 -0
  112. package/src/scss/component/button/_defaults.scss +39 -0
  113. package/src/scss/component/button/_index.scss +134 -0
  114. package/src/scss/component/button/_variables.scss +132 -0
  115. package/src/scss/component/input-group/_defaults.scss +23 -0
  116. package/src/scss/component/input-group/_index.scss +45 -0
  117. package/src/scss/component/input-group/_variables.scss +63 -0
  118. package/src/scss/component/table/_defaults.scss +30 -0
  119. package/src/scss/component/table/_index.scss +77 -0
  120. package/src/scss/component/table/_variables.scss +64 -0
  121. package/src/scss/functions/_important.scss +11 -0
  122. package/src/scss/functions/_theme.scss +18 -0
  123. package/{scss → src/scss}/layout/columns/_defaults.scss +1 -4
  124. package/src/scss/layout/columns/_index.scss +36 -0
  125. package/src/scss/layout/columns/_variables.scss +47 -0
  126. package/{scss → src/scss}/layout/container/_defaults.scss +0 -2
  127. package/src/scss/layout/container/_index.scss +36 -0
  128. package/src/scss/layout/container/_variables.scss +47 -0
  129. package/{scss → src/scss}/mixins/_layer.scss +2 -2
  130. package/{scss → src/scss}/mixins/_media-queries.scss +11 -0
  131. package/{scss → src/scss}/state/focus/_defaults.scss +0 -2
  132. package/src/scss/state/focus/_variables.scss +40 -0
  133. package/src/scss/theme/_index.scss +4 -0
  134. package/src/scss/theme/color/_defaults.scss +61 -0
  135. package/src/scss/theme/color/_index.scss +42 -0
  136. package/src/scss/theme/color/_variables.scss +121 -0
  137. package/src/scss/theme/typography/_defaults.scss +52 -0
  138. package/src/scss/theme/typography/_index.scss +111 -0
  139. package/src/scss/theme/typography/_variables.scss +227 -0
  140. package/src/scss/utilities/_index.scss +13 -0
  141. package/src/scss/utilities/alignment/_defaults.scss +57 -0
  142. package/src/scss/utilities/alignment/_index.scss +29 -0
  143. package/src/scss/utilities/alignment/_variables.scss +3 -0
  144. package/src/scss/utilities/color/_defaults.scss +30 -0
  145. package/src/scss/utilities/color/_index.scss +38 -0
  146. package/src/scss/utilities/color/_variables.scss +3 -0
  147. package/src/scss/utilities/display/_defaults.scss +27 -0
  148. package/src/scss/utilities/display/_index.scss +15 -0
  149. package/src/scss/utilities/display/_variables.scss +3 -0
  150. package/src/scss/utilities/flex/_defaults.scss +58 -0
  151. package/src/scss/utilities/flex/_index.scss +36 -0
  152. package/src/scss/utilities/flex/_variables.scss +3 -0
  153. package/src/scss/utilities/inset/_defaults.scss +36 -0
  154. package/src/scss/utilities/inset/_index.scss +19 -0
  155. package/src/scss/utilities/inset/_variables.scss +3 -0
  156. package/src/scss/utilities/justification/_defaults.scss +54 -0
  157. package/src/scss/utilities/justification/_index.scss +29 -0
  158. package/src/scss/utilities/justification/_variables.scss +3 -0
  159. package/src/scss/utilities/list/_defaults.scss +34 -0
  160. package/src/scss/utilities/list/_index.scss +22 -0
  161. package/src/scss/utilities/list/_variables.scss +3 -0
  162. package/src/scss/utilities/position/_defaults.scss +21 -0
  163. package/src/scss/utilities/position/_index.scss +15 -0
  164. package/src/scss/utilities/position/_variables.scss +3 -0
  165. package/src/scss/utilities/spacing/_defaults.scss +44 -0
  166. package/src/scss/utilities/spacing/_index.scss +64 -0
  167. package/src/scss/utilities/spacing/_variables.scss +3 -0
  168. package/src/scss/utilities/typography/_defaults.scss +25 -0
  169. package/src/scss/utilities/typography/_index.scss +95 -0
  170. package/src/scss/utilities/typography/_variables.scss +3 -0
  171. package/src/scss/utilities/visibility/_defaults.scss +20 -0
  172. package/src/scss/utilities/visibility/_index.scss +15 -0
  173. package/src/scss/utilities/visibility/_variables.scss +3 -0
  174. package/stylelint.config.js +2 -0
  175. package/dist/base/form/form.css +0 -78
  176. package/dist/base/form/form.css.map +0 -1
  177. package/dist/base/link/link.css +0 -26
  178. package/dist/base/link/link.css.map +0 -1
  179. package/dist/component/button/button.css +0 -62
  180. package/dist/component/button/button.css.map +0 -1
  181. package/dist/layout/columns/columns.css +0 -41
  182. package/dist/layout/columns/columns.css.map +0 -1
  183. package/dist/layout/container/container.css +0 -38
  184. package/dist/layout/container/container.css.map +0 -1
  185. package/dist/state/focus/focus.css +0 -10
  186. package/dist/state/focus/focus.css.map +0 -1
  187. package/dist/theme/theme.css +0 -42
  188. package/dist/theme/theme.css.map +0 -1
  189. package/scss/base/form/_variables.scss +0 -133
  190. package/scss/base/form/form.scss +0 -3
  191. package/scss/base/link/_index.scss +0 -33
  192. package/scss/base/link/_variables.scss +0 -31
  193. package/scss/base/link/link.scss +0 -3
  194. package/scss/component/button/_defaults.scss +0 -10
  195. package/scss/component/button/_index.scss +0 -75
  196. package/scss/component/button/_variables.scss +0 -102
  197. package/scss/component/button/button.scss +0 -3
  198. package/scss/layout/columns/_index.scss +0 -38
  199. package/scss/layout/columns/_variables.scss +0 -24
  200. package/scss/layout/columns/columns.scss +0 -3
  201. package/scss/layout/container/_index.scss +0 -50
  202. package/scss/layout/container/_variables.scss +0 -26
  203. package/scss/layout/container/container.scss +0 -3
  204. package/scss/state/focus/_variables.scss +0 -36
  205. package/scss/state/focus/focus.scss +0 -3
  206. package/scss/theme/_defaults.scss +0 -56
  207. package/scss/theme/_index.scss +0 -53
  208. package/scss/theme/_variables.scss +0 -297
  209. package/scss/theme/theme.scss +0 -3
  210. /package/{scss → src/scss}/layout/_index.scss +0 -0
  211. /package/{scss → src/scss}/state/_index.scss +0 -0
  212. /package/{scss → src/scss}/state/focus/_index.scss +0 -0
@@ -0,0 +1,227 @@
1
+ // Variables referencing custom properties.
2
+
3
+ @use "defaults";
4
+ @use "../../defaults" as root-defaults;
5
+ @use "../../variables" as root-variables;
6
+ @use "sass:map";
7
+
8
+ // Font properties.
9
+ $font-size: var(--#{root-defaults.$prefix}-font-base, #{defaults.$font-size});
10
+ $line-height: var(
11
+ --#{root-defaults.$prefix}-line-height,
12
+ #{defaults.$line-height}
13
+ );
14
+
15
+ // Generate all of the font-size-x custom properties.
16
+ $font-sizes: ();
17
+
18
+ @each $key, $value in defaults.$font-size-multipliers {
19
+ $size: var(
20
+ --#{root-defaults.$prefix}-font-#{$key},
21
+ calc(#{$value} * #{$font-size})
22
+ );
23
+ $font-sizes: map.set($font-sizes, $key, $size);
24
+ }
25
+
26
+ $font-weights: ();
27
+
28
+ @each $key, $value in defaults.$font-weights {
29
+ $weight: var(--#{root-defaults.$prefix}-font-weight-#{$key}, $value);
30
+ $font-weights: map.set($font-weights, $key, $weight);
31
+ }
32
+
33
+ $font-weight-bold: var(
34
+ --#{root-defaults.$prefix}-font-weight-bold,
35
+ #{map.get($font-weights, bold)}
36
+ );
37
+
38
+ // Root properties.
39
+ $root-font-family: var(
40
+ --#{root-defaults.$prefix}-root-font-family,
41
+ #{defaults.$root-font-family}
42
+ );
43
+ $root-font-size: var(
44
+ --#{root-defaults.$prefix}-root-font-size,
45
+ #{defaults.$root-font-size}
46
+ );
47
+
48
+ // Typography properties.
49
+ $body-font-size: var(
50
+ --#{root-defaults.$prefix}-body-font-size,
51
+ #{map.get($font-sizes, base)}
52
+ );
53
+ $body-line-height: var(
54
+ --#{root-defaults.$prefix}-body-line-height,
55
+ #{$line-height}
56
+ );
57
+ $body-font-weight: var(
58
+ --#{root-defaults.$prefix}-body-font-weight,
59
+ #{map.get($font-weights, normal)}
60
+ );
61
+ $paragraph-font-size: var(
62
+ --#{root-defaults.$prefix}-paragraph-font-size,
63
+ #{$body-font-size}
64
+ );
65
+ $paragraph-line-height: var(
66
+ --#{root-defaults.$prefix}-paragraph-line-height,
67
+ #{$body-line-height}
68
+ );
69
+ $paragraph-margin: var(
70
+ --#{root-defaults.$prefix}-paragraph-margin,
71
+ 0 0 #{map.get(root-variables.$spacers, 2)} 0
72
+ );
73
+ $paragraph-font-weight: var(
74
+ --#{root-defaults.$prefix}-paragraph-font-weight,
75
+ #{$body-font-weight}
76
+ );
77
+ $small-font-size: var(
78
+ --#{root-defaults.$prefix}-small-font-size,
79
+ #{map.get($font-sizes, sm)}
80
+ );
81
+ $small-line-height: var(
82
+ --#{root-defaults.$prefix}-small-line-height,
83
+ #{$line-height}
84
+ );
85
+ $small-margin: var(
86
+ --#{root-defaults.$prefix}-small-margin,
87
+ 0 0 #{map.get(root-variables.$spacers, 2)} 0
88
+ );
89
+ $small-font-weight: var(
90
+ --#{root-defaults.$prefix}-small-font-weight,
91
+ #{$body-font-weight}
92
+ );
93
+
94
+ // Headings properties.
95
+ $heading-font-family: var(
96
+ --#{root-defaults.$prefix}-heading-font-family,
97
+ $root-font-family
98
+ );
99
+ $heading-line-height: var(
100
+ --#{root-defaults.$prefix}-heading-line-height,
101
+ #{$line-height}
102
+ );
103
+ $heading-margin: var(
104
+ --#{root-defaults.$prefix}-heading-margin,
105
+ #{map.get(root-variables.$spacers, 5)} 0 #{map.get(
106
+ root-variables.$spacers,
107
+ 2
108
+ )} 0
109
+ );
110
+ $heading-font-weight: var(
111
+ --#{root-defaults.$prefix}-heading-font-weight,
112
+ #{$font-weight-bold}
113
+ );
114
+
115
+ // H1 properties.
116
+ $h1-font-size: var(
117
+ --#{root-defaults.$prefix}-h1-font-size,
118
+ #{map.get($font-sizes, 5xl)}
119
+ );
120
+ $h1-line-height: var(
121
+ --#{root-defaults.$prefix}-h1-line-height,
122
+ #{$heading-line-height}
123
+ );
124
+ $h1-margin: var(--#{root-defaults.$prefix}-h1-margin, #{$heading-margin});
125
+ $h1-font-family: var(
126
+ --#{root-defaults.$prefix}-h1-font-family,
127
+ $heading-font-family
128
+ );
129
+ $h1-font-weight: var(
130
+ --#{root-defaults.$prefix}-h1-font-weight,
131
+ $heading-font-weight
132
+ );
133
+
134
+ // H2 properties.
135
+ $h2-font-size: var(
136
+ --#{root-defaults.$prefix}-h2-font-size,
137
+ #{map.get($font-sizes, 4xl)}
138
+ );
139
+ $h2-line-height: var(
140
+ --#{root-defaults.$prefix}-h2-line-height,
141
+ #{$heading-line-height}
142
+ );
143
+ $h2-margin: var(--#{root-defaults.$prefix}-h2-margin, #{$heading-margin});
144
+ $h2-font-family: var(
145
+ --#{root-defaults.$prefix}-h2-font-family,
146
+ $heading-font-family
147
+ );
148
+ $h2-font-weight: var(
149
+ --#{root-defaults.$prefix}-h2-font-weight,
150
+ $heading-font-weight
151
+ );
152
+
153
+ // H3 properties.
154
+ $h3-font-size: var(
155
+ --#{root-defaults.$prefix}-h3-font-size,
156
+ #{map.get($font-sizes, 3xl)}
157
+ );
158
+ $h3-line-height: var(
159
+ --#{root-defaults.$prefix}-h3-line-height,
160
+ #{$heading-line-height}
161
+ );
162
+ $h3-margin: var(--#{root-defaults.$prefix}-h3-margin, #{$heading-margin});
163
+ $h3-font-family: var(
164
+ --#{root-defaults.$prefix}-h3-font-family,
165
+ $heading-font-family
166
+ );
167
+ $h3-font-weight: var(
168
+ --#{root-defaults.$prefix}-h3-font-weight,
169
+ $heading-font-weight
170
+ );
171
+
172
+ // H4 properties.
173
+ $h4-font-size: var(
174
+ --#{root-defaults.$prefix}-h4-font-size,
175
+ #{map.get($font-sizes, 2xl)}
176
+ );
177
+ $h4-line-height: var(
178
+ --#{root-defaults.$prefix}-h4-line-height,
179
+ #{$heading-line-height}
180
+ );
181
+ $h4-margin: var(--#{root-defaults.$prefix}-h4-margin, #{$heading-margin});
182
+ $h4-font-family: var(
183
+ --#{root-defaults.$prefix}-h4-font-family,
184
+ $heading-font-family
185
+ );
186
+ $h4-font-weight: var(
187
+ --#{root-defaults.$prefix}-h4-font-weight,
188
+ $heading-font-weight
189
+ );
190
+
191
+ // H5 properties.
192
+ $h5-font-size: var(
193
+ --#{root-defaults.$prefix}-h5-font-size,
194
+ #{map.get($font-sizes, xl)}
195
+ );
196
+ $h5-line-height: var(
197
+ --#{root-defaults.$prefix}-h5-line-height,
198
+ #{$heading-line-height}
199
+ );
200
+ $h5-margin: var(--#{root-defaults.$prefix}-h5-margin, #{$heading-margin});
201
+ $h5-font-family: var(
202
+ --#{root-defaults.$prefix}-h5-font-family,
203
+ $heading-font-family
204
+ );
205
+ $h5-font-weight: var(
206
+ --#{root-defaults.$prefix}-h5-font-weight,
207
+ $heading-font-weight
208
+ );
209
+
210
+ // H6 properties.
211
+ $h6-font-size: var(
212
+ --#{root-defaults.$prefix}-h6-font-size,
213
+ #{map.get($font-sizes, lg)}
214
+ );
215
+ $h6-line-height: var(
216
+ --#{root-defaults.$prefix}-h6-line-height,
217
+ #{$heading-line-height}
218
+ );
219
+ $h6-margin: var(--#{root-defaults.$prefix}-h6-margin, #{$heading-margin});
220
+ $h6-font-family: var(
221
+ --#{root-defaults.$prefix}-h6-font-family,
222
+ $heading-font-family
223
+ );
224
+ $h6-font-weight: var(
225
+ --#{root-defaults.$prefix}-h6-font-weight,
226
+ $heading-font-weight
227
+ );
@@ -0,0 +1,13 @@
1
+ // Graupl utilities.
2
+
3
+ @forward "alignment";
4
+ @forward "color";
5
+ @forward "display";
6
+ @forward "flex";
7
+ @forward "inset";
8
+ @forward "justification";
9
+ @forward "list";
10
+ @forward "position";
11
+ @forward "spacing";
12
+ @forward "typography";
13
+ @forward "visibility";
@@ -0,0 +1,57 @@
1
+ // Default values for Graupl.
2
+ //
3
+ // Generally, these should not be used directly when styling components.
4
+ // They are mainly used to provide default fallbacks for custom properties
5
+ // which can be found in the `variables.scss` file.
6
+
7
+ @use "sass:map";
8
+
9
+ // Align content properties.
10
+ $align-content-class-prefix: "align-content-" !default;
11
+ $base-align-content-properties: (
12
+ normal: normal,
13
+ start: flex-start,
14
+ end: flex-end,
15
+ center: center,
16
+ between: space-between,
17
+ around: space-around,
18
+ evenly: space-evenly,
19
+ baseline: baseline,
20
+ stretch: stretch,
21
+ );
22
+ $custom-align-content-properties: () !default;
23
+ $align-content-properties: map.merge(
24
+ $base-align-content-properties,
25
+ $custom-align-content-properties
26
+ );
27
+
28
+ // Align items properties.
29
+ $align-items-class-prefix: "align-items-" !default;
30
+ $base-align-items-properties: (
31
+ start: start,
32
+ end: end,
33
+ center: center,
34
+ baseline: baseline,
35
+ stretch: stretch,
36
+ );
37
+ $custom-align-items-properties: () !default;
38
+ $align-items-properties: map.merge(
39
+ $base-align-items-properties,
40
+ $custom-align-items-properties
41
+ );
42
+
43
+ // Align self properties.
44
+ $align-self-class-prefix: "align-self-" !default;
45
+ $base-align-self-properties: (
46
+ auto: auto,
47
+ start: start,
48
+ end: end,
49
+ center: center,
50
+ baseline: baseline,
51
+ stretch: stretch,
52
+ );
53
+ $custom-align-self-properties: () !default;
54
+ $align-self-properties: map.merge(
55
+ $base-align-self-properties,
56
+ $custom-align-self-properties
57
+ );
@@ -0,0 +1,29 @@
1
+ // Graupl alignment utilities.
2
+
3
+ @use "variables" as *;
4
+ @use "defaults" as defaults;
5
+ @use "../../mixins/layer" as *;
6
+ @use "../../functions/important";
7
+
8
+ @include layer(utilities) {
9
+ // For each align content property, create a utility class.
10
+ @each $name, $property in defaults.$align-content-properties {
11
+ .#{defaults.$align-content-class-prefix}#{$name} {
12
+ align-content: important.insert($property);
13
+ }
14
+ }
15
+
16
+ // For each align items property, create a utility class.
17
+ @each $name, $property in defaults.$align-items-properties {
18
+ .#{defaults.$align-items-class-prefix}#{$name} {
19
+ align-items: important.insert($property);
20
+ }
21
+ }
22
+
23
+ // For each align self property, create a utility class.
24
+ @each $name, $property in defaults.$align-self-properties {
25
+ .#{defaults.$align-self-class-prefix}#{$name} {
26
+ align-self: important.insert($property);
27
+ }
28
+ }
29
+ }
@@ -0,0 +1,3 @@
1
+ // Variables referencing custom properties.
2
+
3
+ @forward "defaults";
@@ -0,0 +1,30 @@
1
+ // Default values for Graupl.
2
+ //
3
+ // Generally, these should not be used directly when styling components.
4
+ // They are mainly used to provide default fallbacks for custom properties
5
+ // which can be found in the `variables.scss` file.
6
+
7
+ @use "sass:map";
8
+
9
+ // Background utility properties.
10
+ $background-class-prefix: "bg-" !default;
11
+ $base-background-properties: (
12
+ inherit: inherit,
13
+ current: currentcolor,
14
+ transparent: transparent,
15
+ );
16
+ $custom-background-properties: () !default;
17
+ $background-properties: map.merge(
18
+ $base-background-properties,
19
+ $custom-background-properties
20
+ );
21
+
22
+ // Text utility properties.
23
+ $text-class-prefix: "text-" !default;
24
+ $base-text-properties: (
25
+ inherit: inherit,
26
+ current: currentcolor,
27
+ transparent: transparent,
28
+ );
29
+ $custom-text-properties: () !default;
30
+ $text-properties: map.merge($base-text-properties, $custom-text-properties);
@@ -0,0 +1,38 @@
1
+ // Graupl color utilities.
2
+
3
+ @use "variables" as *;
4
+ @use "defaults";
5
+ @use "../../mixins/layer" as *;
6
+ @use "../../functions/important";
7
+ @use "../../theme/color/variables" as color;
8
+
9
+ @include layer(utilities) {
10
+ // For each theme colour, create a utility class for background and color.
11
+ @each $color, $map in color.$theme-active {
12
+ @each $shade, $value in $map {
13
+ $name: #{$color}-#{$shade};
14
+
15
+ .#{defaults.$background-class-prefix}#{$name} {
16
+ background: important.insert($value);
17
+ }
18
+
19
+ .#{defaults.$text-class-prefix}#{$name} {
20
+ color: important.insert($value);
21
+ }
22
+ }
23
+ }
24
+
25
+ // For each background property, create a utility class.
26
+ @each $name, $property in defaults.$background-properties {
27
+ .#{defaults.$background-class-prefix}#{$name} {
28
+ background: important.insert($property);
29
+ }
30
+ }
31
+
32
+ // For each text property, create a utility class.
33
+ @each $name, $property in defaults.$text-properties {
34
+ .#{defaults.$text-class-prefix}#{$name} {
35
+ color: important.insert($property);
36
+ }
37
+ }
38
+ }
@@ -0,0 +1,3 @@
1
+ // Variables referencing custom properties.
2
+
3
+ @forward "defaults";
@@ -0,0 +1,27 @@
1
+ // Default values for Graupl.
2
+ //
3
+ // Generally, these should not be used directly when styling components.
4
+ // They are mainly used to provide default fallbacks for custom properties
5
+ // which can be found in the `variables.scss` file.
6
+
7
+ @use "sass:map";
8
+
9
+ $display-class-prefix: "display-" !default;
10
+ $base-display-properties: (
11
+ block: block,
12
+ inline-block: inline-block,
13
+ inline: inline,
14
+ flex: flex,
15
+ inline-flex: inline-flex,
16
+ grid: grid,
17
+ inline-grid: inline-grid,
18
+ flow-root: flow-root,
19
+ none: none,
20
+ contents: contents,
21
+ list-item: list-item,
22
+ );
23
+ $custom-display-properties: () !default;
24
+ $display-properties: map.merge(
25
+ $base-display-properties,
26
+ $custom-display-properties
27
+ );
@@ -0,0 +1,15 @@
1
+ // Graupl display utilities.
2
+
3
+ @use "variables" as *;
4
+ @use "defaults" as defaults;
5
+ @use "../../mixins/layer" as *;
6
+ @use "../../functions/important";
7
+
8
+ @include layer(utilities) {
9
+ // For each display property, create a utility class.
10
+ @each $name, $property in defaults.$display-properties {
11
+ .#{defaults.$display-class-prefix}#{$name} {
12
+ display: important.insert($property);
13
+ }
14
+ }
15
+ }
@@ -0,0 +1,3 @@
1
+ // Variables referencing custom properties.
2
+
3
+ @forward "defaults";
@@ -0,0 +1,58 @@
1
+ // Default values for Graupl.
2
+ //
3
+ // Generally, these should not be used directly when styling components.
4
+ // They are mainly used to provide default fallbacks for custom properties
5
+ // which can be found in the `variables.scss` file.
6
+
7
+ @use "sass:map";
8
+
9
+ // Flex direction properties.
10
+ $flex-direction-class-prefix: "flex-" !default;
11
+ $base-flex-direction-properties: (
12
+ row: row,
13
+ row-reverse: row-reverse,
14
+ col: column,
15
+ col-reverse: column-reverse,
16
+ );
17
+ $custom-flex-direction-properties: () !default;
18
+ $flex-direction-properties: map.merge(
19
+ $base-flex-direction-properties,
20
+ $custom-flex-direction-properties
21
+ );
22
+
23
+ // Flex wrap properties.
24
+ $flex-wrap-class-prefix: "flex-" !default;
25
+ $base-flex-wrap-properties: (
26
+ wrap: wrap,
27
+ wrap-reverse: wrap-reverse,
28
+ nowrap: nowrap,
29
+ );
30
+ $custom-flex-wrap-properties: () !default;
31
+ $flex-wrap-properties: map.merge(
32
+ $base-flex-wrap-properties,
33
+ $custom-flex-wrap-properties
34
+ );
35
+
36
+ // Flex grow properties.
37
+ $flex-grow-class-prefix: "flex-" !default;
38
+ $base-flex-grow-properties: (
39
+ grow: 1,
40
+ no-grow: 0,
41
+ );
42
+ $custom-flex-grow-properties: () !default;
43
+ $flex-grow-properties: map.merge(
44
+ $base-flex-grow-properties,
45
+ $custom-flex-grow-properties
46
+ );
47
+
48
+ // Flex shrink properties.
49
+ $flex-shrink-class-prefix: "flex-" !default;
50
+ $base-flex-shrink-properties: (
51
+ shrink: 1,
52
+ no-shrink: 0,
53
+ );
54
+ $custom-flex-shrink-properties: () !default;
55
+ $flex-shrink-properties: map.merge(
56
+ $base-flex-shrink-properties,
57
+ $custom-flex-shrink-properties
58
+ );
@@ -0,0 +1,36 @@
1
+ // Graupl flex utilities.
2
+
3
+ @use "variables" as *;
4
+ @use "defaults" as defaults;
5
+ @use "../../mixins/layer" as *;
6
+ @use "../../functions/important";
7
+
8
+ @include layer(utilities) {
9
+ // For each flex direction property, create a utility class.
10
+ @each $name, $property in defaults.$flex-direction-properties {
11
+ .#{defaults.$flex-direction-class-prefix}#{$name} {
12
+ flex-direction: important.insert($property);
13
+ }
14
+ }
15
+
16
+ // For each flex wrap property, create a utility class.
17
+ @each $name, $property in defaults.$flex-wrap-properties {
18
+ .#{defaults.$flex-wrap-class-prefix}#{$name} {
19
+ flex-wrap: important.insert($property);
20
+ }
21
+ }
22
+
23
+ // For each flex grow property, create a utility class.
24
+ @each $name, $property in defaults.$flex-grow-properties {
25
+ .#{defaults.$flex-grow-class-prefix}#{$name} {
26
+ flex-grow: important.insert($property);
27
+ }
28
+ }
29
+
30
+ // For each flex shrink property, create a utility class.
31
+ @each $name, $property in defaults.$flex-shrink-properties {
32
+ .#{defaults.$flex-shrink-class-prefix}#{$name} {
33
+ flex-shrink: important.insert($property);
34
+ }
35
+ }
36
+ }
@@ -0,0 +1,3 @@
1
+ // Variables referencing custom properties.
2
+
3
+ @forward "defaults";
@@ -0,0 +1,36 @@
1
+ // Default values for Graupl.
2
+ //
3
+ // Generally, these should not be used directly when styling components.
4
+ // They are mainly used to provide default fallbacks for custom properties
5
+ // which can be found in the `variables.scss` file.
6
+
7
+ @use "sass:map";
8
+
9
+ // Inset properties.
10
+ $base-inset-properties: (
11
+ inset: inset,
12
+ inset-x: left right,
13
+ inset-y: top bottom,
14
+ inset-start: inset-inline-start,
15
+ inset-end: inset-inline-end,
16
+ top: top,
17
+ right: right,
18
+ bottom: bottom,
19
+ left: left,
20
+ );
21
+ $custom-inset-properties: () !default;
22
+ $inset-properties: map.merge($base-inset-properties, $custom-inset-properties);
23
+
24
+ // Inset values.
25
+ $base-inset-values: (
26
+ 0: 0,
27
+ auto: auto,
28
+ full: 100%,
29
+ quarter: 25%,
30
+ half: 50%,
31
+ three-quarters: 75%,
32
+ third: calc(100% / 3),
33
+ two-thirds: calc(100% / 1.5),
34
+ );
35
+ $custom-inset-values: () !default;
36
+ $inset-values: map.merge($base-inset-values, $custom-inset-values);
@@ -0,0 +1,19 @@
1
+ // Graupl inset utilities.
2
+
3
+ @use "variables" as *;
4
+ @use "defaults" as defaults;
5
+ @use "../../mixins/layer" as *;
6
+ @use "../../functions/important";
7
+
8
+ @include layer(utilities) {
9
+ // For each inset property, create a utility class.
10
+ @each $type, $property in defaults.$inset-properties {
11
+ @each $name, $value in defaults.$inset-values {
12
+ .#{$type}-#{$name} {
13
+ @each $prop in $property {
14
+ #{$prop}: important.insert($value);
15
+ }
16
+ }
17
+ }
18
+ }
19
+ }
@@ -0,0 +1,3 @@
1
+ // Variables referencing custom properties.
2
+
3
+ @forward "defaults";
@@ -0,0 +1,54 @@
1
+ // Default values for Graupl.
2
+ //
3
+ // Generally, these should not be used directly when styling components.
4
+ // They are mainly used to provide default fallbacks for custom properties
5
+ // which can be found in the `variables.scss` file.
6
+
7
+ @use "sass:map";
8
+
9
+ // Justify content properties.
10
+ $justify-content-class-prefix: "justify-content-" !default;
11
+ $base-justify-content-properties: (
12
+ normal: normal,
13
+ start: flex-start,
14
+ end: flex-end,
15
+ center: center,
16
+ between: space-between,
17
+ around: space-around,
18
+ evenly: space-evenly,
19
+ stretch: stretch,
20
+ );
21
+ $custom-justify-content-properties: () !default;
22
+ $justify-content-properties: map.merge(
23
+ $base-justify-content-properties,
24
+ $custom-justify-content-properties
25
+ );
26
+
27
+ // Justify items properties.
28
+ $justify-items-class-prefix: "justify-items-" !default;
29
+ $base-justify-items-properties: (
30
+ start: start,
31
+ end: end,
32
+ center: center,
33
+ stretch: stretch,
34
+ );
35
+ $custom-justify-items-properties: () !default;
36
+ $justify-items-properties: map.merge(
37
+ $base-justify-items-properties,
38
+ $custom-justify-items-properties
39
+ );
40
+
41
+ // Justify self properties.
42
+ $justify-self-class-prefix: "justify-self-" !default;
43
+ $base-justify-self-properties: (
44
+ auto: auto,
45
+ start: start,
46
+ end: end,
47
+ center: center,
48
+ stretch: stretch,
49
+ );
50
+ $custom-justify-self-properties: () !default;
51
+ $justify-self-properties: map.merge(
52
+ $base-justify-self-properties,
53
+ $custom-justify-self-properties
54
+ );