yummacss 2.1.0 → 3.0.1

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 (78) hide show
  1. package/LICENSE +17 -18
  2. package/README.md +58 -23
  3. package/dist/cli/commands/build.js +43 -0
  4. package/dist/cli/commands/init.js +19 -0
  5. package/dist/cli/commands/watch.js +48 -0
  6. package/dist/cli/config/defaultConfig.js +9 -0
  7. package/dist/cli/config/templates.js +33 -0
  8. package/dist/cli/lang.js +23 -0
  9. package/dist/cli/lib/cli-lang.js +23 -0
  10. package/dist/cli/lib/cli-ui.js +14 -0
  11. package/dist/cli/services/configLoader.js +42 -0
  12. package/dist/cli/services/minifyService.js +16 -0
  13. package/dist/cli/services/purgeService.js +12 -0
  14. package/dist/cli/services/scssCompiler.js +34 -0
  15. package/dist/cli/src/cli.js +16 -0
  16. package/dist/cli/utils/cli-ui.js +13 -0
  17. package/dist/cli/utils/ui.js +15 -0
  18. package/package.json +65 -24
  19. package/src/_fonts.scss +8 -6
  20. package/src/abstracts/_breakpoints.scss +12 -10
  21. package/src/abstracts/_index.scss +5 -0
  22. package/src/abstracts/_theme.scss +19 -16
  23. package/src/abstracts/_variables.scss +70 -56
  24. package/src/abstracts/functions/_create-values.scss +16 -0
  25. package/src/abstracts/functions/_ignore-neutral.scss +9 -0
  26. package/src/abstracts/functions/_index.scss +2 -0
  27. package/src/abstracts/mixins/_create-colors.scss +39 -0
  28. package/src/abstracts/mixins/_create-utilities.scss +39 -0
  29. package/src/abstracts/mixins/_extend-utilities.scss +24 -0
  30. package/src/abstracts/mixins/_index.scss +3 -0
  31. package/src/reset/_stylecent.scss +231 -0
  32. package/src/utilities/_background.scss +95 -0
  33. package/src/utilities/_border.scss +313 -0
  34. package/src/utilities/_box-model.scss +274 -91
  35. package/src/utilities/_color.scss +85 -0
  36. package/src/utilities/_effect.scss +98 -0
  37. package/src/utilities/_flexbox.scss +122 -56
  38. package/src/utilities/_grid.scss +52 -95
  39. package/src/utilities/_index.scss +14 -0
  40. package/src/utilities/_interactivity.scss +304 -0
  41. package/src/utilities/_outline.scss +53 -0
  42. package/src/utilities/_positioning.scss +436 -0
  43. package/src/utilities/_svg.scss +27 -0
  44. package/src/utilities/_table.scss +35 -0
  45. package/src/utilities/_transform.scss +164 -0
  46. package/src/utilities/_typography.scss +167 -57
  47. package/src/utilities/maps/_index.scss +12 -0
  48. package/src/utilities/maps/box-model/_dimension.scss +16 -0
  49. package/src/utilities/maps/box-model/_height.scss +16 -0
  50. package/src/utilities/maps/box-model/_margin.scss +10 -0
  51. package/src/utilities/maps/box-model/_padding.scss +10 -0
  52. package/src/utilities/maps/box-model/_width.scss +16 -0
  53. package/src/utilities/maps/flexbox/_flex-basis.scss +12 -0
  54. package/src/utilities/maps/grid/_gap.scss +5 -0
  55. package/src/yummacss-core.scss +3 -0
  56. package/src/yummacss.scss +4 -0
  57. package/.prettierrc +0 -9
  58. package/CHANGELOG.md +0 -58
  59. package/dist/yumma-core.css +0 -238809
  60. package/dist/yumma-core.min.css +0 -1
  61. package/dist/yumma.css +0 -238878
  62. package/dist/yumma.min.css +0 -1
  63. package/gulpfile.js +0 -44
  64. package/src/_base.scss +0 -72
  65. package/src/abstracts/_colors.scss +0 -29
  66. package/src/abstracts/_extensions.scss +0 -19
  67. package/src/abstracts/_functions.scss +0 -3
  68. package/src/abstracts/_layout.scss +0 -18
  69. package/src/abstracts/_mixins.scss +0 -575
  70. package/src/core.scss +0 -3
  71. package/src/utilities/_borders.scss +0 -214
  72. package/src/utilities/_effects.scss +0 -74
  73. package/src/utilities/_filters.scss +0 -57
  74. package/src/utilities/_interactions.scss +0 -111
  75. package/src/utilities/_layout.scss +0 -310
  76. package/src/utilities/_outlines.scss +0 -76
  77. package/src/utilities/_tables.scss +0 -61
  78. package/src/yumma.scss +0 -23
@@ -0,0 +1,313 @@
1
+ @use "sass:math";
2
+ @use "sass:map";
3
+ @use "../abstracts/variables" as vars;
4
+ @use "../abstracts/mixins/" as mix;
5
+ @use "../utilities/maps/" as maps;
6
+
7
+ $yma-border-utils: (
8
+ "border-collapse": (
9
+ "prefix": "bc",
10
+ "properties": (
11
+ "border-collapse",
12
+ ),
13
+ "values": (
14
+ "c": collapse,
15
+ "s": separate,
16
+ ),
17
+ ),
18
+
19
+ "border-radius": (
20
+ "prefix": "rad",
21
+ "properties": (
22
+ "border-radius",
23
+ ),
24
+ "values": (
25
+ "0": vars.$yma-border-radius * 0,
26
+ "1": vars.$yma-border-radius,
27
+ "2": vars.$yma-border-radius * 2,
28
+ "3": vars.$yma-border-radius * 3,
29
+ "4": vars.$yma-border-radius * 4,
30
+ "5": vars.$yma-border-radius * 5,
31
+ "6": vars.$yma-border-radius * 6,
32
+ "7": vars.$yma-border-radius * 7,
33
+ "8": vars.$yma-border-radius * 8,
34
+ "full": 100%,
35
+ "half": 50%,
36
+ ),
37
+ ),
38
+
39
+ "border-bottom-radius": (
40
+ "prefix": "rad-b",
41
+ "properties": (
42
+ "border-bottom-left-radius",
43
+ "border-bottom-right-radius",
44
+ ),
45
+ "values": (
46
+ "0": vars.$yma-border-radius * 0,
47
+ "1": vars.$yma-border-radius,
48
+ "2": vars.$yma-border-radius * 2,
49
+ "3": vars.$yma-border-radius * 3,
50
+ "4": vars.$yma-border-radius * 4,
51
+ "5": vars.$yma-border-radius * 5,
52
+ "6": vars.$yma-border-radius * 6,
53
+ "7": vars.$yma-border-radius * 7,
54
+ "8": vars.$yma-border-radius * 8,
55
+ ),
56
+ ),
57
+
58
+ "border-left-radius": (
59
+ "prefix": "rad-l",
60
+ "properties": (
61
+ "border-bottom-left-radius",
62
+ "border-top-left-radius",
63
+ ),
64
+ "values": (
65
+ "0": vars.$yma-border-radius * 0,
66
+ "1": vars.$yma-border-radius,
67
+ "2": vars.$yma-border-radius * 2,
68
+ "3": vars.$yma-border-radius * 3,
69
+ "4": vars.$yma-border-radius * 4,
70
+ "5": vars.$yma-border-radius * 5,
71
+ "6": vars.$yma-border-radius * 6,
72
+ "7": vars.$yma-border-radius * 7,
73
+ "8": vars.$yma-border-radius * 8,
74
+ ),
75
+ ),
76
+
77
+ "border-right-radius": (
78
+ "prefix": "rad-r",
79
+ "properties": (
80
+ "border-bottom-right-radius",
81
+ "border-top-right-radius",
82
+ ),
83
+ "values": (
84
+ "0": vars.$yma-border-radius * 0,
85
+ "1": vars.$yma-border-radius,
86
+ "2": vars.$yma-border-radius * 2,
87
+ "3": vars.$yma-border-radius * 3,
88
+ "4": vars.$yma-border-radius * 4,
89
+ "5": vars.$yma-border-radius * 5,
90
+ "6": vars.$yma-border-radius * 6,
91
+ "7": vars.$yma-border-radius * 7,
92
+ "8": vars.$yma-border-radius * 8,
93
+ ),
94
+ ),
95
+
96
+ "border-bottom-left-radius": (
97
+ "prefix": "rad-bl",
98
+ "properties": (
99
+ "border-bottom-left-radius",
100
+ ),
101
+ "values": (
102
+ "0": vars.$yma-border-radius * 0,
103
+ "1": vars.$yma-border-radius,
104
+ "2": vars.$yma-border-radius * 2,
105
+ "3": vars.$yma-border-radius * 3,
106
+ "4": vars.$yma-border-radius * 4,
107
+ "5": vars.$yma-border-radius * 5,
108
+ "6": vars.$yma-border-radius * 6,
109
+ "7": vars.$yma-border-radius * 7,
110
+ "8": vars.$yma-border-radius * 8,
111
+ ),
112
+ ),
113
+
114
+ "border-bottom-right-radius": (
115
+ "prefix": "rad-br",
116
+ "properties": (
117
+ "border-bottom-right-radius",
118
+ ),
119
+ "values": (
120
+ "0": vars.$yma-border-radius * 0,
121
+ "1": vars.$yma-border-radius,
122
+ "2": vars.$yma-border-radius * 2,
123
+ "3": vars.$yma-border-radius * 3,
124
+ "4": vars.$yma-border-radius * 4,
125
+ "5": vars.$yma-border-radius * 5,
126
+ "6": vars.$yma-border-radius * 6,
127
+ "7": vars.$yma-border-radius * 7,
128
+ "8": vars.$yma-border-radius * 8,
129
+ ),
130
+ ),
131
+
132
+ "border-top-radius": (
133
+ "prefix": "rad-t",
134
+ "properties": (
135
+ "border-top-left-radius",
136
+ "border-top-right-radius",
137
+ ),
138
+ "values": (
139
+ "0": vars.$yma-border-radius * 0,
140
+ "1": vars.$yma-border-radius,
141
+ "2": vars.$yma-border-radius * 2,
142
+ "3": vars.$yma-border-radius * 3,
143
+ "4": vars.$yma-border-radius * 4,
144
+ "5": vars.$yma-border-radius * 5,
145
+ "6": vars.$yma-border-radius * 6,
146
+ "7": vars.$yma-border-radius * 7,
147
+ "8": vars.$yma-border-radius * 8,
148
+ ),
149
+ ),
150
+
151
+ "border-top-left-radius": (
152
+ "prefix": "rad-tl",
153
+ "properties": (
154
+ "border-top-left-radius",
155
+ ),
156
+ "values": (
157
+ "0": vars.$yma-border-radius * 0,
158
+ "1": vars.$yma-border-radius,
159
+ "2": vars.$yma-border-radius * 2,
160
+ "3": vars.$yma-border-radius * 3,
161
+ "4": vars.$yma-border-radius * 4,
162
+ "5": vars.$yma-border-radius * 5,
163
+ "6": vars.$yma-border-radius * 6,
164
+ "7": vars.$yma-border-radius * 7,
165
+ "8": vars.$yma-border-radius * 8,
166
+ ),
167
+ ),
168
+
169
+ "border-top-right-radius": (
170
+ "prefix": "rad-tr",
171
+ "properties": (
172
+ "border-top-right-radius",
173
+ ),
174
+ "values": (
175
+ "0": vars.$yma-border-radius * 0,
176
+ "1": vars.$yma-border-radius,
177
+ "2": vars.$yma-border-radius * 2,
178
+ "3": vars.$yma-border-radius * 3,
179
+ "4": vars.$yma-border-radius * 4,
180
+ "5": vars.$yma-border-radius * 5,
181
+ "6": vars.$yma-border-radius * 6,
182
+ "7": vars.$yma-border-radius * 7,
183
+ "8": vars.$yma-border-radius * 8,
184
+ ),
185
+ ),
186
+
187
+ "border-spacing": (
188
+ "prefix": "bs",
189
+ "properties": (
190
+ "border-spacing",
191
+ ),
192
+ "values": (
193
+ "0": vars.$yma-border-spacing * 0,
194
+ "1": vars.$yma-border-spacing,
195
+ "2": vars.$yma-border-spacing * 2,
196
+ "3": vars.$yma-border-spacing * 3,
197
+ "4": vars.$yma-border-spacing * 4,
198
+ "5": vars.$yma-border-spacing * 5,
199
+ "6": vars.$yma-border-spacing * 6,
200
+ "7": vars.$yma-border-spacing * 7,
201
+ "8": vars.$yma-border-spacing * 8,
202
+ ),
203
+ ),
204
+
205
+ "border-style": (
206
+ "prefix": "b",
207
+ "properties": (
208
+ "border-style",
209
+ ),
210
+ "values": (
211
+ "none": none,
212
+ "d": dashed,
213
+ "s": solid,
214
+ ),
215
+ ),
216
+
217
+ "border-width": (
218
+ "prefix": "b",
219
+ "properties": (
220
+ "border-width",
221
+ ),
222
+ "values": (
223
+ "0": vars.$yma-border * 0,
224
+ "1": vars.$yma-border,
225
+ "2": vars.$yma-border * 2,
226
+ "3": vars.$yma-border * 3,
227
+ "4": vars.$yma-border * 4,
228
+ "5": vars.$yma-border * 5,
229
+ "6": vars.$yma-border * 6,
230
+ "7": vars.$yma-border * 7,
231
+ "8": vars.$yma-border * 8,
232
+ ),
233
+ ),
234
+
235
+ "border-bottom-width": (
236
+ "prefix": "bb",
237
+ "properties": (
238
+ "border-bottom-width",
239
+ ),
240
+ "values": (
241
+ "0": vars.$yma-border * 0,
242
+ "1": vars.$yma-border,
243
+ "2": vars.$yma-border * 2,
244
+ "3": vars.$yma-border * 3,
245
+ "4": vars.$yma-border * 4,
246
+ "5": vars.$yma-border * 5,
247
+ "6": vars.$yma-border * 6,
248
+ "7": vars.$yma-border * 7,
249
+ "8": vars.$yma-border * 8,
250
+ ),
251
+ ),
252
+
253
+ "border-left-width": (
254
+ "prefix": "bl",
255
+ "properties": (
256
+ "border-left-width",
257
+ ),
258
+ "values": (
259
+ "0": vars.$yma-border * 0,
260
+ "1": vars.$yma-border,
261
+ "2": vars.$yma-border * 2,
262
+ "3": vars.$yma-border * 3,
263
+ "4": vars.$yma-border * 4,
264
+ "5": vars.$yma-border * 5,
265
+ "6": vars.$yma-border * 6,
266
+ "7": vars.$yma-border * 7,
267
+ "8": vars.$yma-border * 8,
268
+ ),
269
+ ),
270
+
271
+ "border-right-width": (
272
+ "prefix": "br",
273
+ "properties": (
274
+ "border-right-width",
275
+ ),
276
+ "values": (
277
+ "0": vars.$yma-border * 0,
278
+ "1": vars.$yma-border,
279
+ "2": vars.$yma-border * 2,
280
+ "3": vars.$yma-border * 3,
281
+ "4": vars.$yma-border * 4,
282
+ "5": vars.$yma-border * 5,
283
+ "6": vars.$yma-border * 6,
284
+ "7": vars.$yma-border * 7,
285
+ "8": vars.$yma-border * 8,
286
+ ),
287
+ ),
288
+
289
+ "border-top-width": (
290
+ "prefix": "bt",
291
+ "properties": (
292
+ "border-top-width",
293
+ ),
294
+ "values": (
295
+ "0": vars.$yma-border * 0,
296
+ "1": vars.$yma-border,
297
+ "2": vars.$yma-border * 2,
298
+ "3": vars.$yma-border * 3,
299
+ "4": vars.$yma-border * 4,
300
+ "5": vars.$yma-border * 5,
301
+ "6": vars.$yma-border * 6,
302
+ "7": vars.$yma-border * 7,
303
+ "8": vars.$yma-border * 8,
304
+ ),
305
+ ),
306
+ );
307
+
308
+ @each $properties, $map in $yma-border-utils {
309
+ $prefix: map.get($map, "prefix");
310
+ $properties: map.get($map, "properties");
311
+
312
+ @include mix.create-utilities($map, $prefix, $properties);
313
+ }
@@ -1,107 +1,290 @@
1
1
  @use "sass:math";
2
+ @use "sass:map";
3
+ @use "sass:meta";
4
+ @use "../abstracts/variables" as vars;
5
+ @use "../abstracts/mixins/" as mix;
6
+ @use "../utilities/maps/" as maps;
2
7
 
3
8
  $yma-box-model-utils: (
4
9
  "box-sizing": (
5
10
  "prefix": "bs",
11
+ "properties": (
12
+ "box-sizing",
13
+ ),
6
14
  "values": (
7
15
  "bb": border-box,
8
16
  "cb": content-box,
9
17
  ),
10
18
  ),
11
- );
12
19
 
13
- // base variants
14
- @each $property, $map in $yma-box-model-utils {
15
- $prefix: map-get($map, "prefix");
16
- $values: map-get($map, "values");
17
-
18
- @each $k, $v in $values {
19
- @if ($k == "default") {
20
- .#{$prefix} {
21
- #{$property}: $v;
22
- }
23
- } @else {
24
- .#{$prefix}-#{$k} {
25
- #{$property}: $v;
26
- }
27
- }
28
- }
20
+ "dimension": (
21
+ "prefix": "d",
22
+ "properties": (
23
+ "height",
24
+ "width",
25
+ ),
26
+ "values": maps.$yma-dimension-map,
27
+ ),
29
28
 
30
- // hover variants
31
- @each $k, $v in $values {
32
- @if ($k == "default") {
33
- .h\:#{$prefix}:hover {
34
- #{$property}: $v;
35
- }
36
- } @else {
37
- .h\:#{$prefix}-#{$k}:hover {
38
- #{$property}: $v;
39
- }
40
- }
41
- }
29
+ "max-dimension": (
30
+ "prefix": "max-d",
31
+ "properties": (
32
+ "max-height",
33
+ "max-width",
34
+ ),
35
+ "values": maps.$yma-dimension-map,
36
+ ),
42
37
 
43
- // responsive variants
44
- @each $bp, $bp-value in $yma-breakpoints {
45
- @each $k, $v in $values {
46
- .#{$bp}\:#{$prefix}-#{$k} {
47
- @media (min-width: $bp-value) {
48
- #{$property}: $v;
49
- }
50
- }
51
- }
52
- }
53
- }
38
+ "min-dimension": (
39
+ "prefix": "min-d",
40
+ "properties": (
41
+ "min-height",
42
+ "min-width",
43
+ ),
44
+ "values": maps.$yma-dimension-map,
45
+ ),
46
+
47
+ "height": (
48
+ "prefix": "h",
49
+ "properties": (
50
+ "height",
51
+ ),
52
+ "values": maps.$yma-height-map,
53
+ ),
54
+
55
+ "max-height": (
56
+ "prefix": "max-h",
57
+ "properties": (
58
+ "max-height",
59
+ ),
60
+ "values": maps.$yma-height-map,
61
+ ),
62
+
63
+ "min-height": (
64
+ "prefix": "min-h",
65
+ "properties": (
66
+ "min-height",
67
+ ),
68
+ "values": maps.$yma-height-map,
69
+ ),
70
+
71
+ "margin": (
72
+ "prefix": "m",
73
+ "properties": (
74
+ "margin",
75
+ ),
76
+ "values": maps.$yma-margin-map,
77
+ ),
78
+
79
+ "margin-block-end": (
80
+ "prefix": "mbe",
81
+ "properties": (
82
+ "margin-block-end",
83
+ ),
84
+ "values": maps.$yma-margin-map,
85
+ ),
86
+
87
+ "margin-block-start": (
88
+ "prefix": "mbs",
89
+ "properties": (
90
+ "margin-block-start",
91
+ ),
92
+ "values": maps.$yma-margin-map,
93
+ ),
94
+
95
+ "margin-bottom": (
96
+ "prefix": "mb",
97
+ "properties": (
98
+ "margin-bottom",
99
+ ),
100
+ "values": maps.$yma-margin-map,
101
+ ),
102
+
103
+ "margin-inline-end": (
104
+ "prefix": "mie",
105
+ "properties": (
106
+ "margin-inline-end",
107
+ ),
108
+ "values": maps.$yma-margin-map,
109
+ ),
110
+
111
+ "margin-inline-start": (
112
+ "prefix": "mis",
113
+ "properties": (
114
+ "margin-inline-start",
115
+ ),
116
+ "values": maps.$yma-margin-map,
117
+ ),
118
+
119
+ "margin-left": (
120
+ "prefix": "ml",
121
+ "properties": (
122
+ "margin-left",
123
+ ),
124
+ "values": maps.$yma-margin-map,
125
+ ),
126
+
127
+ "margin-right": (
128
+ "prefix": "mr",
129
+ "properties": (
130
+ "margin-right",
131
+ ),
132
+ "values": maps.$yma-margin-map,
133
+ ),
134
+
135
+ "margin-top": (
136
+ "prefix": "mt",
137
+ "properties": (
138
+ "margin-top",
139
+ ),
140
+ "values": maps.$yma-margin-map,
141
+ ),
142
+
143
+ "margin-x": (
144
+ "prefix": "mx",
145
+ "properties": (
146
+ "margin-left",
147
+ "margin-right",
148
+ ),
149
+ "values": maps.$yma-margin-map,
150
+ ),
54
151
 
55
- // variants
56
- @include dimension-variants("dim", $yma-height, $yma-width);
57
- @include dimension-variants("max-dim", $yma-height, $yma-width);
58
- @include dimension-variants("min-dim", $yma-height, $yma-width);
59
- @include spacing-x("s-x", $yma-spacing);
60
- @include spacing-y("s-y", $yma-spacing);
61
- @include variants("height", "h", $yma-height);
62
- @include variants("margin-bottom", "mb", $yma-margin);
63
- @include variants("margin-left", "ml", $yma-margin);
64
- @include variants("margin-right", "mr", $yma-margin);
65
- @include variants("margin-top", "mt", $yma-margin);
66
- @include variants("margin", "m", $yma-margin);
67
- @include variants("max-height", "max-h", $yma-height);
68
- @include variants("max-width", "max-w", $yma-width);
69
- @include variants("min-height", "min-h", $yma-height);
70
- @include variants("min-width", "min-w", $yma-width);
71
- @include variants("padding-bottom", "pb", $yma-padding);
72
- @include variants("padding-left", "pl", $yma-padding);
73
- @include variants("padding-right", "pr", $yma-padding);
74
- @include variants("padding-top", "pt", $yma-padding);
75
- @include variants("padding", "p", $yma-padding);
76
- @include variants("width", "w", $yma-width);
77
- @include x-axis-variants("margin", "mx", $yma-margin);
78
- @include x-axis-variants("padding", "px", $yma-padding);
79
- @include y-axis-variants("margin", "my", $yma-margin);
80
- @include y-axis-variants("padding", "py", $yma-padding);
81
-
82
- // extensions
83
- @include extensions(
84
- $yma-extension,
85
- (
86
- "h": height,
87
- "max-h": max-height,
88
- "max-w": max-width,
89
- "min-h": min-height,
90
- "min-w": min-width,
91
- "w": width,
92
- )
152
+ "margin-y": (
153
+ "prefix": "my",
154
+ "properties": (
155
+ "margin-bottom",
156
+ "margin-top",
157
+ ),
158
+ "values": maps.$yma-margin-map,
159
+ ),
160
+
161
+ "padding": (
162
+ "prefix": "p",
163
+ "properties": (
164
+ "padding",
165
+ ),
166
+ "values": maps.$yma-padding-map,
167
+ ),
168
+
169
+ "padding-block-end": (
170
+ "prefix": "pbe",
171
+ "properties": (
172
+ "padding-block-end",
173
+ ),
174
+ "values": maps.$yma-padding-map,
175
+ ),
176
+
177
+ "padding-block-start": (
178
+ "prefix": "pbs",
179
+ "properties": (
180
+ "padding-block-start",
181
+ ),
182
+ "values": maps.$yma-padding-map,
183
+ ),
184
+
185
+ "padding-bottom": (
186
+ "prefix": "pb",
187
+ "properties": (
188
+ "padding-bottom",
189
+ ),
190
+ "values": maps.$yma-padding-map,
191
+ ),
192
+
193
+ "padding-inline-end": (
194
+ "prefix": "pie",
195
+ "properties": (
196
+ "padding-inline-end",
197
+ ),
198
+ "values": maps.$yma-padding-map,
199
+ ),
200
+
201
+ "padding-inline-start": (
202
+ "prefix": "pis",
203
+ "properties": (
204
+ "padding-inline-start",
205
+ ),
206
+ "values": maps.$yma-padding-map,
207
+ ),
208
+
209
+ "padding-left": (
210
+ "prefix": "pl",
211
+ "properties": (
212
+ "padding-left",
213
+ ),
214
+ "values": maps.$yma-padding-map,
215
+ ),
216
+
217
+ "padding-right": (
218
+ "prefix": "pr",
219
+ "properties": (
220
+ "padding-right",
221
+ ),
222
+ "values": maps.$yma-padding-map,
223
+ ),
224
+
225
+ "padding-top": (
226
+ "prefix": "pt",
227
+ "properties": (
228
+ "padding-top",
229
+ ),
230
+ "values": maps.$yma-padding-map,
231
+ ),
232
+
233
+ "padding-x": (
234
+ "prefix": "px",
235
+ "properties": (
236
+ "padding-left",
237
+ "padding-right",
238
+ ),
239
+ "values": maps.$yma-padding-map,
240
+ ),
241
+
242
+ "padding-y": (
243
+ "prefix": "py",
244
+ "properties": (
245
+ "padding-bottom",
246
+ "padding-top",
247
+ ),
248
+ "values": maps.$yma-padding-map,
249
+ ),
250
+
251
+ "width": (
252
+ "prefix": "w",
253
+ "properties": (
254
+ "width",
255
+ ),
256
+ "values": maps.$yma-width-map,
257
+ ),
258
+
259
+ "max-width": (
260
+ "prefix": "max-w",
261
+ "properties": (
262
+ "max-width",
263
+ ),
264
+ "values": maps.$yma-width-map,
265
+ ),
266
+
267
+ "min-width": (
268
+ "prefix": "min-w",
269
+ "properties": (
270
+ "min-width",
271
+ ),
272
+ "values": maps.$yma-width-map,
273
+ ),
93
274
  );
94
275
 
95
- @include dimension-extensions($yma-extension);
96
- @include height-extensions($yma-height-extension);
97
- @include box-model-extensions($yma-extension, ("m"), "margin");
98
- @include box-model-extensions($yma-extension, ("mb"), "margin-bottom");
99
- @include box-model-extensions($yma-extension, ("ml"), "margin-left");
100
- @include box-model-extensions($yma-extension, ("mr"), "margin-right");
101
- @include box-model-extensions($yma-extension, ("mt"), "margin-top");
102
- @include box-model-extensions($yma-extension, ("p"), "padding");
103
- @include box-model-extensions($yma-extension, ("pb"), "padding-bottom");
104
- @include box-model-extensions($yma-extension, ("pl"), "padding-left");
105
- @include box-model-extensions($yma-extension, ("pr"), "padding-right");
106
- @include box-model-extensions($yma-extension, ("pt"), "padding-top");
107
- @include width-extensions($yma-width-extension);
276
+ @each $name, $map in $yma-box-model-utils {
277
+ $prefix: map.get($map, "prefix");
278
+ $properties: map.get($map, "properties");
279
+ $values: map.get($map, "values");
280
+
281
+ @if meta.type-of($values) == "map" and map.get($values, "custom") {
282
+ @include mix.create-spacing-utilities(
283
+ $prefix,
284
+ map.get($values, "map"),
285
+ $properties
286
+ );
287
+ } @else {
288
+ @include mix.create-utilities($map, $prefix, $properties);
289
+ }
290
+ }