@perplex-digital/stylelint-config 2.0.2 → 8.0.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.
@@ -4,36 +4,45 @@
4
4
  */
5
5
 
6
6
  /** @type {Group[]} */
7
- export default [
7
+ const propertyGroups = [
8
+ /**
9
+ * Cascade and inheritance.
10
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_cascade#reference
11
+ */
8
12
  {
9
13
  properties: ['all'],
10
14
  },
15
+
16
+ /**
17
+ * Display.
18
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_display#reference
19
+ */
11
20
  {
12
- groupName: 'Visibility',
13
- properties: [
14
- 'overflow',
15
- 'overflow-y',
16
- 'overflow-x',
17
- 'overflow-block',
18
- 'overflow-inline',
19
- 'overflow-wrap',
20
- 'overflow-scrolling',
21
- 'overflow-anchor',
22
- 'overflow-clip-margin',
23
- 'appearance',
24
- 'opacity',
25
- 'visibility',
26
- 'backface-visibility',
27
- 'box-sizing',
28
- 'display',
29
- ],
21
+ properties: ['box-sizing', 'opacity', 'visibility', 'display'],
30
22
  },
23
+
24
+ /**
25
+ * Flexible box layout.
26
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_flexible_box_layout#reference
27
+ */
31
28
  {
32
- groupName: 'Flexbox',
33
- properties: ['flex', 'flex-basis', 'flex-direction', 'flex-flow', 'flex-grow', 'flex-shrink', 'flex-wrap'],
29
+ properties: [
30
+ 'flex',
31
+ 'flex-grow',
32
+ 'flex-shrink',
33
+ 'flex-basis',
34
+ 'flex-flow',
35
+ 'flex-direction',
36
+ 'flex-wrap',
37
+ '-webkit-box-orient',
38
+ ],
34
39
  },
40
+
41
+ /**
42
+ * Grid layout.
43
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_grid_layout#reference
44
+ */
35
45
  {
36
- groupName: 'Grid',
37
46
  properties: [
38
47
  'grid',
39
48
  'grid-area',
@@ -50,22 +59,21 @@ export default [
50
59
  'grid-auto-rows',
51
60
  'grid-auto-columns',
52
61
  'grid-auto-flow',
53
- 'gap',
54
- 'row-gap',
55
- 'column-gap',
56
- 'column-count',
57
- 'column-fill',
58
- 'column-rule',
59
- 'column-rule-color',
60
- 'column-rule-style',
61
- 'column-rule-width',
62
- 'column-span',
63
- 'column-width',
62
+ 'grid-gap',
63
+ 'grid-row-gap',
64
+ 'grid-column-gap',
64
65
  ],
65
66
  },
67
+
68
+ /**
69
+ * Box alignment. Relates to both Flexbox and Grid layout.
70
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_box_alignment#reference
71
+ */
66
72
  {
67
- groupName: 'Layout alignment',
68
73
  properties: [
74
+ 'gap',
75
+ 'row-gap',
76
+ 'column-gap',
69
77
  'place-content',
70
78
  'place-items',
71
79
  'place-self',
@@ -77,30 +85,68 @@ export default [
77
85
  'justify-self',
78
86
  ],
79
87
  },
88
+
89
+ /**
90
+ * Order.
91
+ * Part of Display module, but relates to both Flexbox and Grid layout.
92
+ */
80
93
  {
81
- groupName: 'Order',
82
94
  properties: ['order'],
83
95
  },
96
+
97
+ /**
98
+ * Box sizing.
99
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_box_sizing#reference
100
+ */
84
101
  {
85
- groupName: 'Box model',
86
102
  properties: [
87
- 'float',
88
- 'float-defer',
89
- 'float-offset',
90
- 'float-reference',
91
- 'width',
92
- 'min-width',
93
- 'max-width',
94
103
  'inline-size',
95
104
  'min-inline-size',
96
105
  'max-inline-size',
97
- 'height',
98
- 'min-height',
99
- 'max-height',
106
+ 'width',
107
+ 'min-width',
108
+ 'max-width',
100
109
  'block-size',
101
110
  'min-block-size',
102
111
  'max-block-size',
103
- 'min-intrinsic-sizing',
112
+ 'height',
113
+ 'min-height',
114
+ 'max-height',
115
+ 'aspect-ratio',
116
+ 'contain-intrinsic-inline-size',
117
+ 'contain-intrinsic-block-size',
118
+ 'contain-intrinsic-size', // Shorthand for `-width` & `-height`.
119
+ 'contain-intrinsic-width',
120
+ 'contain-intrinsic-height',
121
+ ],
122
+ },
123
+
124
+ /**
125
+ * Overflow.
126
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_overflow#reference
127
+ */
128
+ {
129
+ properties: [
130
+ 'overflow',
131
+ 'overflow-inline',
132
+ 'overflow-block',
133
+ 'overflow-x',
134
+ 'overflow-y',
135
+ 'scrollbar-gutter',
136
+ '-webkit-overflow-scrolling',
137
+ 'text-overflow',
138
+ '-webkit-line-clamp',
139
+ 'line-clamp',
140
+ 'scroll-behaviour',
141
+ ],
142
+ },
143
+
144
+ /**
145
+ * Box model - Margin.
146
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_box_model#reference
147
+ */
148
+ {
149
+ properties: [
104
150
  'margin',
105
151
  'margin-block',
106
152
  'margin-block-start',
@@ -108,55 +154,87 @@ export default [
108
154
  'margin-inline',
109
155
  'margin-inline-start',
110
156
  'margin-inline-end',
111
- 'margin-trim',
157
+ 'margin-top',
158
+ 'margin-right',
159
+ 'margin-bottom',
160
+ 'margin-left',
161
+ ],
162
+ },
163
+
164
+ /**
165
+ * Outlines and borders.
166
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_basic_user_interface
167
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_backgrounds_and_borders#reference
168
+ */
169
+ {
170
+ properties: [
112
171
  'outline',
113
172
  'outline-width',
114
173
  'outline-style',
115
174
  'outline-color',
116
175
  'outline-offset',
117
176
  'border',
118
- 'border-width',
119
- 'border-style',
120
177
  'border-color',
178
+ 'border-style',
179
+ 'border-width',
121
180
  'border-block',
122
- 'border-block-color',
123
181
  'border-block-start',
124
- 'border-block-start-width',
125
- 'border-block-start-style',
126
182
  'border-block-start-color',
183
+ 'border-block-start-style',
184
+ 'border-block-start-width',
127
185
  'border-block-end',
128
- 'border-block-end-width',
129
- 'border-block-end-style',
130
186
  'border-block-end-color',
131
- 'border-block-style',
132
- 'border-block-width',
187
+ 'border-block-end-style',
188
+ 'border-block-end-width',
133
189
  'border-inline',
134
- 'border-inline-color',
135
190
  'border-inline-start',
136
- 'border-inline-start-width',
137
- 'border-inline-start-style',
138
191
  'border-inline-start-color',
192
+ 'border-inline-start-style',
193
+ 'border-inline-start-width',
139
194
  'border-inline-end',
140
- 'border-inline-end-width',
141
- 'border-inline-end-style',
142
195
  'border-inline-end-color',
143
- 'border-inline-style',
144
- 'border-inline-width',
196
+ 'border-inline-end-style',
197
+ 'border-inline-end-width',
198
+ 'border-top',
199
+ 'border-top-color',
200
+ 'border-top-style',
201
+ 'border-top-width',
202
+ 'border-right',
203
+ 'border-right-color',
204
+ 'border-right-style',
205
+ 'border-right-width',
206
+ 'border-bottom',
207
+ 'border-bottom-color',
208
+ 'border-bottom-style',
209
+ 'border-bottom-width',
210
+ 'border-left',
211
+ 'border-left-color',
212
+ 'border-left-style',
213
+ 'border-left-width',
145
214
  'border-radius',
215
+ 'border-start-start-radius',
216
+ 'border-start-end-radius',
217
+ 'border-end-start-radius',
218
+ 'border-end-end-radius',
146
219
  'border-top-left-radius',
147
220
  'border-top-right-radius',
148
- 'border-bottom-left-radius',
149
221
  'border-bottom-right-radius',
150
- 'border-start-end-radius',
151
- 'border-start-start-radius',
152
- 'border-end-end-radius',
153
- 'border-end-start-radius',
222
+ 'border-bottom-left-radius',
154
223
  'border-image',
155
224
  'border-image-source',
156
225
  'border-image-slice',
157
226
  'border-image-width',
158
227
  'border-image-outset',
159
228
  'border-image-repeat',
229
+ ],
230
+ },
231
+
232
+ /**
233
+ * Box model - Padding.
234
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_box_model#reference
235
+ */
236
+ {
237
+ properties: [
160
238
  'padding',
161
239
  'padding-block',
162
240
  'padding-block-start',
@@ -164,22 +242,19 @@ export default [
164
242
  'padding-inline',
165
243
  'padding-inline-start',
166
244
  'padding-inline-end',
167
- 'aspect-ratio',
168
- 'overscroll-behavior',
169
- 'overscroll-behavior-block',
170
- 'overscroll-behavior-inline',
171
- 'overscroll-behavior-inline',
172
- 'overscroll-behavior-block',
173
- 'clip',
174
- 'clip-path',
175
- 'clip-rule',
176
- 'clear',
245
+ 'padding-top',
246
+ 'padding-right',
247
+ 'padding-bottom',
248
+ 'padding-left',
177
249
  ],
178
250
  },
251
+
252
+ /**
253
+ * Backgrounds and box-shadow.
254
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_backgrounds_and_borders#reference
255
+ */
179
256
  {
180
- groupName: 'Borders & Backgrounds',
181
257
  properties: [
182
- 'box-shadow',
183
258
  'background',
184
259
  'background-color',
185
260
  'background-image',
@@ -191,24 +266,47 @@ export default [
191
266
  'background-clip',
192
267
  'background-origin',
193
268
  'background-size',
194
- 'background-blend-mode',
195
- 'object-fit',
196
- 'object-position',
197
- 'filter',
198
- 'mix-blend-mode',
199
- 'isolation',
269
+ 'box-shadow',
200
270
  ],
201
271
  },
272
+
273
+ /**
274
+ * Containment.
275
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_containment#reference
276
+ */
277
+ {
278
+ properties: ['contain', 'container', 'container-name', 'container-type', 'content-visibility'],
279
+ },
280
+
281
+ /**
282
+ * Overscroll behavior.
283
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_overscroll_behavior#reference
284
+ */
285
+ {
286
+ properties: [
287
+ 'overscroll-behavior',
288
+ 'overscroll-behavior-inline',
289
+ 'overscroll-behavior-block',
290
+ 'overscroll-behavior-x',
291
+ 'overscroll-behavior-y',
292
+ ],
293
+ },
294
+
295
+ /**
296
+ * Fonts.
297
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_fonts#reference
298
+ */
202
299
  {
203
- groupName: 'Typography',
204
300
  properties: [
205
- 'src',
206
- 'content',
207
301
  'font',
208
302
  'font-family',
209
- 'font-weight',
210
303
  'font-size',
304
+ 'font-size-adjust',
305
+ 'font-variation-settings',
211
306
  'font-style',
307
+ 'font-weight',
308
+ 'font-optical-sizing',
309
+ 'font-stretch',
212
310
  'font-feature-settings',
213
311
  'font-kerning',
214
312
  'font-variant',
@@ -218,36 +316,71 @@ export default [
218
316
  'font-variant-numeric',
219
317
  'font-variant-east-asian',
220
318
  'font-variant-position',
221
- 'font-size-adjust',
222
- 'font-stretch',
223
- 'font-effect',
224
- 'font-emphasize',
225
- 'font-emphasize-position',
226
- 'font-emphasize-style',
319
+ '-webkit-font-smoothing',
320
+ '-moz-osx-font-smoothing',
227
321
  'font-smooth',
228
- 'font-display',
229
- 'font-language-override',
230
- 'font-optical-sizing',
231
- 'font-palette',
232
322
  'font-synthesis',
233
- 'font-synthesis-small-caps',
234
- 'font-synthesis-style',
235
323
  'font-synthesis-weight',
236
- 'font-variant-emoji',
237
- 'font-variation-settings',
238
- 'initial-letter',
239
- 'initial-letter-align',
240
- 'initial-letter-wrap',
241
- 'line-height',
242
- 'line-height-step',
243
- 'line-break',
244
- 'line-clamp',
245
- 'line-grid',
246
- 'line-padding',
247
- 'line-snap',
324
+ 'font-synthesis-style',
325
+ 'font-synthesis-small-caps',
326
+ ],
327
+ },
328
+
329
+ /**
330
+ * Inline layout.
331
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_inline_layout#reference
332
+ */
333
+ {
334
+ properties: ['line-height', 'vertical-align', 'alignment-baseline', 'baseline-shift', 'dominant-baseline'],
335
+ },
336
+
337
+ /**
338
+ * Colors.
339
+ *
340
+ * Although `opacity` is technically part of this module, it is grouped
341
+ * with the Display module.
342
+ *
343
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_colors#reference
344
+ */
345
+ {
346
+ properties: [
248
347
  'color',
348
+ '-webkit-text-fill-color',
349
+ '-webkit-text-stroke',
350
+ '-webkit-text-stroke-width',
351
+ '-webkit-text-stroke-color',
352
+ ],
353
+ },
354
+
355
+ /**
356
+ * Text.
357
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_text#reference
358
+ */
359
+ {
360
+ properties: [
249
361
  'text-align',
250
362
  'text-align-last',
363
+ 'text-justify',
364
+ 'text-indent',
365
+ 'text-transform',
366
+ 'word-spacing',
367
+ 'letter-spacing',
368
+ 'hyphens',
369
+ 'word-break',
370
+ 'text-wrap',
371
+ 'word-wrap', // Legacy name for `overflow-wrap`
372
+ 'overflow-wrap',
373
+ 'tab-size',
374
+ 'white-space',
375
+ ],
376
+ },
377
+
378
+ /**
379
+ * Text decoration.
380
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_text_decoration#reference
381
+ */
382
+ {
383
+ properties: [
251
384
  'text-emphasis',
252
385
  'text-emphasis-color',
253
386
  'text-emphasis-style',
@@ -255,223 +388,253 @@ export default [
255
388
  'text-decoration',
256
389
  'text-decoration-line',
257
390
  'text-decoration-thickness',
258
- 'text-decoration-skip',
259
- 'text-decoration-skip-ink',
260
391
  'text-decoration-style',
261
392
  'text-decoration-color',
262
- 'text-underline-offset',
393
+ 'text-decoration-skip-ink',
263
394
  'text-underline-position',
264
- 'text-indent',
265
- 'text-justify',
266
- 'text-outline',
267
- 'text-overflow',
268
- 'text-overflow-ellipsis',
269
- 'text-overflow-mode',
270
- 'block-ellipsis',
395
+ 'text-underline-offset',
271
396
  'text-shadow',
272
- 'text-transform',
273
- 'text-wrap',
274
- 'text-size-adjust',
275
- 'text-align-all',
276
- 'text-combine-upright',
277
- 'text-decoration-skip',
278
- 'text-decoration-skip-box',
279
- 'text-decoration-skip-ink',
280
- 'text-decoration-skip-inset',
281
- 'text-decoration-skip-self',
282
- 'text-decoration-skip-spaces',
283
- 'text-edge',
284
- 'text-emphasis-skip',
285
- 'text-group-align',
286
- 'text-orientation',
287
- 'text-space-collapse',
288
- 'text-space-trim',
289
- 'text-spacing',
290
- 'letter-spacing',
291
- 'word-break',
292
- 'word-spacing',
293
- 'word-wrap',
294
- 'word-boundary-detection',
295
- 'word-boundary-expansion',
296
- 'hyphens',
297
- 'hyphenate-character',
298
- 'hyphenate-limit-chars',
299
- 'hyphenate-limit-last',
300
- 'hyphenate-limit-lines',
301
- 'hyphenate-limit-zone',
302
- 'tab-size',
303
- 'white-space',
304
- 'vertical-align',
397
+ ],
398
+ },
399
+
400
+ /**
401
+ * Font loading.
402
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_font_loading#reference
403
+ */
404
+ {
405
+ properties: [
406
+ 'src',
407
+ 'font-display',
408
+ 'unicode-range',
409
+ 'size-adjust',
410
+ 'ascent-override',
411
+ 'descent-override',
412
+ 'line-gap-override',
413
+ ],
414
+ },
415
+
416
+ /**
417
+ * Basic user interface.
418
+ *
419
+ * Although `outline` is technically part of this module, it is grouped
420
+ * with the Borders module.
421
+ *
422
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_basic_user_interface#reference
423
+ */
424
+ {
425
+ properties: [
426
+ 'appearance',
427
+ 'accent-color',
428
+ 'pointer-events',
429
+ 'touch-action',
430
+ 'cursor',
431
+ 'caret-color',
432
+ 'zoom',
433
+ 'resize',
434
+ 'user-select',
435
+ '-webkit-user-select',
436
+ 'nav-index',
437
+ 'nav-up',
438
+ 'nav-right',
439
+ 'nav-down',
440
+ 'nav-left',
441
+ ],
442
+ },
443
+
444
+ /**
445
+ * Color adjustment.
446
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_color_adjustment#reference
447
+ */
448
+ {
449
+ properties: ['color-scheme'],
450
+ },
451
+
452
+ /**
453
+ * Table.
454
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_table#reference
455
+ */
456
+ {
457
+ properties: ['table-layout', 'empty-cells', 'caption-side', 'border-spacing', 'border-collapse'],
458
+ },
459
+
460
+ /**
461
+ * Generated content.
462
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_generated_content#reference
463
+ */
464
+ {
465
+ properties: ['content', 'quotes'],
466
+ },
467
+
468
+ /**
469
+ * Lists and counters.
470
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_lists#reference
471
+ */
472
+ {
473
+ properties: [
305
474
  'list-style',
306
475
  'list-style-position',
307
476
  'list-style-type',
308
477
  'list-style-image',
309
478
  'counter-reset',
310
- 'counter-increment',
311
479
  'counter-set',
480
+ 'counter-increment',
481
+ ],
482
+ },
483
+
484
+ /**
485
+ * Scroll snap.
486
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_scroll_snap#reference
487
+ */
488
+ {
489
+ properties: [
490
+ 'scroll-snap-type',
491
+ 'scroll-snap-align',
492
+ 'scroll-snap-stop',
493
+ 'scroll-padding',
494
+ 'scroll-padding-block',
495
+ 'scroll-padding-block-start',
496
+ 'scroll-padding-block-end',
497
+ 'scroll-padding-inline',
498
+ 'scroll-padding-inline-start',
499
+ 'scroll-padding-inline-end',
500
+ 'scroll-padding-top',
501
+ 'scroll-padding-right',
502
+ 'scroll-padding-bottom',
503
+ 'scroll-padding-left',
504
+ 'scroll-margin',
505
+ 'scroll-margin-block',
506
+ 'scroll-margin-block-start',
507
+ 'scroll-margin-block-end',
508
+ 'scroll-margin-inline',
509
+ 'scroll-margin-inline-start',
510
+ 'scroll-margin-inline-end',
511
+ 'scroll-margin-top',
512
+ 'scroll-margin-right',
513
+ 'scroll-margin-bottom',
514
+ 'scroll-margin-left',
515
+ ],
516
+ },
517
+
518
+ /**
519
+ * Scrollbars styling.
520
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_scrollbars_styling#reference
521
+ */
522
+ {
523
+ properties: ['scrollbar-color', 'scrollbar-width'],
524
+ },
525
+
526
+ /**
527
+ * Images.
528
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_images#reference
529
+ */
530
+ {
531
+ properties: ['object-fit', 'object-position', 'image-orientation', 'image-rendering', 'image-resolution'],
532
+ },
533
+
534
+ /**
535
+ * Compositing and blending.
536
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_compositing_and_blending#reference
537
+ */
538
+ {
539
+ properties: ['background-blend-mode', 'isolation', 'mix-blend-mode'],
540
+ },
541
+
542
+ /**
543
+ * Filter effects.
544
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_filter_effects#properties
545
+ */
546
+ {
547
+ properties: ['filter', 'backdrop-filter'],
548
+ },
549
+
550
+ /**
551
+ * Masking.
552
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_masking#reference
553
+ */
554
+ {
555
+ properties: [
556
+ 'clip',
557
+ 'clip-path',
558
+ 'clip-rule',
559
+ 'mask-border',
560
+ 'mask-border-source',
561
+ 'mask-border-slice',
562
+ 'mask-border-width',
563
+ 'mask-border-outset',
564
+ 'mask-border-repeat',
565
+ 'mask-border-mode',
566
+ 'mask',
567
+ 'mask-image',
568
+ 'mask-mode',
569
+ 'mask-repeat',
570
+ 'mask-position',
571
+ 'mask-clip',
572
+ 'mask-origin',
573
+ 'mask-size',
574
+ 'mask-composite',
575
+ 'mask-type',
312
576
  ],
313
577
  },
578
+
579
+ /**
580
+ * Shapes.
581
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_shapes#reference
582
+ */
583
+ {
584
+ properties: ['shape-outside', 'shape-image-threshold', 'shape-margin'],
585
+ },
586
+
587
+ /**
588
+ * Writing modes.
589
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_writing_modes#reference
590
+ */
591
+ {
592
+ properties: ['direction', 'unicode-bidi', 'writing-mode', 'text-orientation', 'text-combine-upright'],
593
+ },
594
+
595
+ /**
596
+ * SVG presentation attributes.
597
+ *
598
+ * Some of these may fall under a specific module, but if they only apply
599
+ * to SVG-specific elements, they will be grouped here.
600
+ */
314
601
  {
315
- groupName: 'SVG Presentation Attributes',
316
602
  properties: [
317
- 'alignment-baseline',
318
- 'baseline-shift',
319
- 'dominant-baseline',
320
603
  'text-anchor',
321
- 'word-spacing',
322
- 'writing-mode',
604
+
323
605
  'fill',
324
- 'fill-opacity',
325
606
  'fill-rule',
326
- 'fill-break',
327
- 'fill-color',
328
- 'fill-image',
329
- 'fill-origin',
330
- 'fill-position',
331
- 'fill-repeat',
332
- 'fill-size',
607
+ 'fill-opacity',
333
608
  'stroke',
334
- 'stroke-dasharray',
335
- 'stroke-dashoffset',
609
+ 'stroke-opacity',
610
+ 'stroke-width',
336
611
  'stroke-linecap',
337
612
  'stroke-linejoin',
338
613
  'stroke-miterlimit',
339
- 'stroke-opacity',
340
- 'stroke-width',
341
- 'stroke-align',
342
- 'stroke-alignment',
343
- 'stroke-break',
344
- 'stroke-color',
345
- 'stroke-dash-corner',
346
- 'stroke-dash-justify',
347
- 'stroke-dashadjust',
348
- 'stroke-dashcorner',
349
- 'stroke-image',
350
- 'stroke-origin',
351
- 'stroke-position',
352
- 'stroke-repeat',
353
- 'stroke-size',
614
+ 'stroke-dasharray',
615
+ 'stroke-dashoffset',
616
+
354
617
  'color-interpolation',
355
618
  'color-interpolation-filters',
356
- 'color-profile',
357
- 'color-rendering',
358
- 'color-adjust',
359
- 'color-scheme',
360
619
  'flood-color',
361
620
  'flood-opacity',
362
- 'image-rendering',
363
- 'image-orientation',
364
- 'image-resolution',
365
621
  'lighting-color',
366
- 'marker',
622
+
367
623
  'marker-start',
368
624
  'marker-mid',
369
625
  'marker-end',
370
- 'marker-knockout-left',
371
- 'marker-knockout-right',
372
- 'marker-pattern',
373
- 'marker-segment',
374
- 'marker-side',
375
- 'mask',
376
- 'mask-border',
377
- 'mask-border-mode',
378
- 'mask-border-outset',
379
- 'mask-border-repeat',
380
- 'mask-border-slice',
381
- 'mask-border-source',
382
- 'mask-border-width',
383
- 'mask-clip',
384
- 'mask-composite',
385
- 'mask-image',
386
- 'mask-mode',
387
- 'mask-origin',
388
- 'mask-position',
389
- 'mask-repeat',
390
- 'mask-size',
391
- 'mask-type',
392
- 'shape-rendering',
393
- 'shape-image-threshold',
394
- 'shape-inside',
395
- 'shape-margin',
396
- 'shape-outside',
397
626
  'stop-color',
398
627
  'stop-opacity',
628
+
629
+ 'shape-rendering',
399
630
  ],
400
631
  },
632
+
633
+ /**
634
+ * Positioned layout.
635
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_positioned_layout#reference
636
+ */
401
637
  {
402
- groupName: 'Accessibility & Interactions',
403
- properties: [
404
- 'pointer-events',
405
- 'touch-action',
406
- 'cursor',
407
- 'zoom',
408
- 'table-layout',
409
- 'empty-cells',
410
- 'caption-side',
411
- 'border-spacing',
412
- 'border-collapse',
413
- 'quotes',
414
- 'resize',
415
- 'user-select',
416
- 'nav-index',
417
- 'nav-up',
418
- 'nav-right',
419
- 'nav-down',
420
- 'nav-left',
421
- 'scroll-behavior',
422
- 'scroll-margin',
423
- 'scroll-margin-block',
424
- 'scroll-margin-block-end',
425
- 'scroll-margin-block-start',
426
- 'scroll-margin-bottom',
427
- 'scroll-margin-inline',
428
- 'scroll-margin-inline-end',
429
- 'scroll-margin-inline-start',
430
- 'scroll-margin-left',
431
- 'scroll-margin-right',
432
- 'scroll-margin-top',
433
- 'scroll-padding',
434
- 'scroll-padding-block',
435
- 'scroll-padding-block-end',
436
- 'scroll-padding-block-start',
437
- 'scroll-padding-bottom',
438
- 'scroll-padding-inline',
439
- 'scroll-padding-inline-end',
440
- 'scroll-padding-inline-start',
441
- 'scroll-padding-left',
442
- 'scroll-padding-right',
443
- 'scroll-padding-top',
444
- 'scroll-snap-align',
445
- 'scroll-snap-stop',
446
- 'scroll-snap-type',
447
- 'scrollbar-color',
448
- 'scrollbar-gutter',
449
- 'scrollbar-width',
450
- 'speak',
451
- 'speak-as',
452
- 'speak-header',
453
- 'speak-numeral',
454
- 'speak-punctuation',
455
- 'speech-rate',
456
- 'voice-balance',
457
- 'voice-duration',
458
- 'voice-family',
459
- 'voice-pitch',
460
- 'voice-range',
461
- 'voice-rate',
462
- 'voice-stress',
463
- 'voice-volume',
464
- 'pitch',
465
- 'pitch-range',
466
- 'volume',
467
- 'play-during',
468
- 'pause',
469
- 'pause-after',
470
- 'pause-before',
471
- ],
472
- },
473
- {
474
- groupName: 'Positioning',
475
638
  properties: [
476
639
  'position',
477
640
  'inset',
@@ -481,139 +644,158 @@ export default [
481
644
  'inset-inline',
482
645
  'inset-inline-start',
483
646
  'inset-inline-end',
647
+ 'top',
648
+ 'right',
649
+ 'bottom',
650
+ 'left',
651
+ 'z-index',
652
+ 'float',
653
+ 'clear',
654
+ ],
655
+ },
656
+
657
+ /**
658
+ * Anchor positioning.
659
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_anchor_positioning#reference
660
+ */
661
+ {
662
+ properties: [
484
663
  'anchor-name',
485
- 'anchor-scope',
486
664
  'position-anchor',
487
665
  'position-area',
488
- 'position-fallback',
489
- 'position-fallbacks',
490
666
  'position-try',
491
667
  'position-try-fallbacks',
668
+ 'position-try-order',
492
669
  'position-visibility',
493
- 'z-index',
494
670
  ],
495
671
  },
672
+
673
+ /**
674
+ * Transforms.
675
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_transforms#reference
676
+ */
496
677
  {
497
- groupName: 'Transforms',
498
678
  properties: [
499
- 'rotate',
500
- 'scale',
501
- 'translate',
502
679
  'transform',
503
680
  'transform-origin',
504
681
  'transform-box',
505
682
  'transform-style',
506
- 'offset',
507
- 'offset-anchor',
508
- 'offset-distance',
509
- 'offset-path',
510
- 'offset-position',
511
- 'offset-rotate',
683
+ 'rotate',
684
+ 'scale',
685
+ 'translate',
686
+ 'perspective',
687
+ 'perspective-origin',
688
+ 'backface-visibility',
512
689
  ],
513
690
  },
691
+
692
+ /**
693
+ * Transitions.
694
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_transitions#reference
695
+ */
514
696
  {
515
- groupName: 'Transitions & Animation',
516
697
  properties: [
517
698
  'transition',
518
699
  'transition-delay',
519
700
  'transition-timing-function',
520
701
  'transition-duration',
521
702
  'transition-property',
703
+ ],
704
+ },
705
+
706
+ /**
707
+ * View transitions.
708
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_view_transitions#reference
709
+ */
710
+ {
711
+ properties: ['view-transition-class', 'view-transition-name'],
712
+ },
713
+
714
+ /**
715
+ * Animations.
716
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_animations#reference
717
+ */
718
+ {
719
+ properties: [
522
720
  'animation',
523
721
  'animation-name',
524
722
  'animation-duration',
525
- 'animation-play-state',
526
723
  'animation-timing-function',
527
724
  'animation-delay',
528
725
  'animation-iteration-count',
529
726
  'animation-direction',
530
727
  'animation-fill-mode',
728
+ 'animation-play-state',
531
729
  'animation-composition',
730
+ ],
731
+ },
732
+
733
+ /**
734
+ * Scroll-driven animations.
735
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_scroll-driven_animations#reference
736
+ */
737
+ {
738
+ properties: [
739
+ 'animation-timeline',
532
740
  'animation-range',
533
- 'animation-range-end',
534
741
  'animation-range-start',
535
- 'animation-timeline',
536
- 'will-change',
742
+ 'animation-range-end',
743
+ 'scroll-timeline',
744
+ 'scroll-timeline-axis',
745
+ 'scroll-timeline-name',
746
+ 'view-timeline',
747
+ 'view-timeline-axis',
748
+ 'view-timeline-inset',
749
+ 'view-timeline-name',
750
+ 'timeline-scope',
537
751
  ],
538
752
  },
753
+
754
+ /**
755
+ * Motion path.
756
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_motion_path#reference
757
+ */
758
+ {
759
+ properties: ['offset', 'offset-anchor', 'offset-distance', 'offset-path', 'offset-position', 'offset-rotate'],
760
+ },
761
+
762
+ /**
763
+ * Will change.
764
+ * @see https://drafts.csswg.org/css-will-change/#will-change
765
+ */
766
+ {
767
+ properties: ['will-change'],
768
+ },
769
+
770
+ /**
771
+ * Fragmentation.
772
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_fragmentation#reference
773
+ */
774
+ {
775
+ properties: ['break-before', 'break-after', 'break-inside', 'widows', 'orphans'],
776
+ },
777
+
778
+ /**
779
+ * Multi-column layout.
780
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_multicol_layout#reference
781
+ */
539
782
  {
540
- groupName: 'Misc',
541
783
  properties: [
542
- 'accent-color',
543
- 'azimuth',
544
- 'baseline-source',
545
- 'block-step',
546
- 'block-step-align',
547
- 'block-step-insert',
548
- 'block-step-round',
549
- 'block-step-size',
550
- 'bookmark-label',
551
- 'bookmark-level',
552
- 'bookmark-state',
553
- 'border-boundary',
554
- 'box-decoration-break',
555
- 'box-snap',
556
784
  'break-after',
557
785
  'break-before',
558
786
  'break-inside',
559
- 'caret',
560
- 'caret-color',
561
- 'caret-shape',
562
- 'chains',
787
+ 'column-fill',
788
+ 'column-gap',
789
+ 'column-span',
790
+ 'column-rule',
791
+ 'column-rule-color',
792
+ 'column-rule-style',
793
+ 'column-rule-width',
563
794
  'columns',
564
- 'contain',
565
- 'contain-intrinsic-block-size',
566
- 'contain-intrinsic-height',
567
- 'contain-intrinsic-inline-size',
568
- 'contain-intrinsic-size',
569
- 'contain-intrinsic-width',
570
- 'content-visibility',
571
- 'continue',
572
- 'cue',
573
- 'cue-after',
574
- 'cue-before',
575
- 'direction',
576
- 'elevation',
577
- 'flow',
578
- 'flow-from',
579
- 'flow-into',
580
- 'footnote-display',
581
- 'footnote-policy',
582
- 'forced-color-adjust',
583
- 'glyph-orientation-vertical',
584
- 'hanging-punctuation',
585
- 'leading-trim',
586
- 'max-lines',
587
- 'orphans',
588
- 'page',
589
- 'page-break-after',
590
- 'page-break-before',
591
- 'page-break-inside',
592
- 'perspective',
593
- 'perspective-origin',
594
- 'print-color-adjust',
595
- 'region-fragment',
596
- 'rest',
597
- 'rest-after',
598
- 'rest-before',
599
- 'richness',
600
- 'ruby-align',
601
- 'ruby-merge',
602
- 'ruby-overhang',
603
- 'ruby-position',
604
- 'running',
605
- 'spatial-navigation-action',
606
- 'spatial-navigation-contain',
607
- 'spatial-navigation-function',
608
- 'stress',
609
- 'string-set',
610
- 'unicode-bidi',
611
- 'widows',
612
- 'wrap-after',
613
- 'wrap-before',
614
- 'wrap-flow',
615
- 'wrap-inside',
616
- 'wrap-through',
795
+ 'column-count',
796
+ 'column-width',
617
797
  ],
618
798
  },
619
799
  ];
800
+
801
+ export default propertyGroups;