@codelaw/rules-css 0.0.0-stage → 0.1.0

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 (116) hide show
  1. package/LICENSE +23 -0
  2. package/NOTICE +45 -0
  3. package/README.md +181 -2
  4. package/codelaw-pack.toml +6 -0
  5. package/data/css/at-rules.json +97 -0
  6. package/data/css/deprecated.json +178 -0
  7. package/data/css/descriptors.json +121 -0
  8. package/data/css/functions.json +49 -0
  9. package/data/css/keywords.json +332 -0
  10. package/data/css/media.json +271 -0
  11. package/data/css/prefixed.json +266 -0
  12. package/data/css/properties-groups.json +183 -0
  13. package/data/css/properties.json +1326 -0
  14. package/data/css/property-keywords.json +394 -0
  15. package/data/css/selectors.json +281 -0
  16. package/data/css/shorthands.json +351 -0
  17. package/data/css/type-selectors.json +447 -0
  18. package/data/css/units.json +123 -0
  19. package/package.json +14 -4
  20. package/presets/css/conventions.toml +4 -0
  21. package/presets/css/recommended.toml +44 -0
  22. package/presets/css/standard.toml +31 -0
  23. package/rules/css/alpha-value-notation.cases.md +37 -0
  24. package/rules/css/alpha-value-notation.md +44 -0
  25. package/rules/css/annotation-no-unknown.md +44 -0
  26. package/rules/css/at-rule-descriptor-no-unknown.md +46 -0
  27. package/rules/css/at-rule-descriptor-value-no-unknown.md +50 -0
  28. package/rules/css/at-rule-no-deprecated.cases.md +13 -0
  29. package/rules/css/at-rule-no-deprecated.md +47 -0
  30. package/rules/css/at-rule-no-unknown.cases.md +25 -0
  31. package/rules/css/at-rule-no-unknown.md +49 -0
  32. package/rules/css/at-rule-no-vendor-prefix.md +44 -0
  33. package/rules/css/at-rule-prelude-no-invalid.md +52 -0
  34. package/rules/css/block-no-redundant-nested-style-rules.md +40 -0
  35. package/rules/css/color-function-alias-notation.md +42 -0
  36. package/rules/css/color-function-notation.md +42 -0
  37. package/rules/css/color-hex-length.cases.md +13 -0
  38. package/rules/css/color-hex-length.md +41 -0
  39. package/rules/css/comment-no-empty.md +38 -0
  40. package/rules/css/container-name-pattern.md +45 -0
  41. package/rules/css/custom-media-pattern.md +41 -0
  42. package/rules/css/custom-property-no-missing-var-function.cases.md +61 -0
  43. package/rules/css/custom-property-no-missing-var-function.md +46 -0
  44. package/rules/css/custom-property-pattern.md +45 -0
  45. package/rules/css/declaration-block-no-duplicate-custom-properties.md +44 -0
  46. package/rules/css/declaration-block-no-duplicate-properties.cases.md +61 -0
  47. package/rules/css/declaration-block-no-duplicate-properties.md +44 -0
  48. package/rules/css/declaration-block-no-redundant-longhand-properties.md +49 -0
  49. package/rules/css/declaration-block-no-shorthand-property-overrides.md +44 -0
  50. package/rules/css/declaration-property-value-keyword-no-deprecated.md +40 -0
  51. package/rules/css/declaration-property-value-no-unknown.cases.md +16 -0
  52. package/rules/css/declaration-property-value-no-unknown.md +46 -0
  53. package/rules/css/font-family-no-duplicate-names.cases.md +31 -0
  54. package/rules/css/font-family-no-duplicate-names.md +37 -0
  55. package/rules/css/font-family-no-missing-generic-family-keyword.cases.md +62 -0
  56. package/rules/css/font-family-no-missing-generic-family-keyword.md +44 -0
  57. package/rules/css/function-calc-no-unspaced-operator.cases.md +33 -0
  58. package/rules/css/function-calc-no-unspaced-operator.md +42 -0
  59. package/rules/css/hue-degree-notation.md +41 -0
  60. package/rules/css/import-notation.md +37 -0
  61. package/rules/css/keyframe-block-no-duplicate-selectors.md +54 -0
  62. package/rules/css/keyframe-declaration-no-important.md +50 -0
  63. package/rules/css/keyframe-selector-notation.md +61 -0
  64. package/rules/css/keyframes-name-pattern.md +49 -0
  65. package/rules/css/layer-name-pattern.md +41 -0
  66. package/rules/css/length-zero-no-unit.cases.md +41 -0
  67. package/rules/css/length-zero-no-unit.md +39 -0
  68. package/rules/css/lightness-notation.md +41 -0
  69. package/rules/css/media-feature-name-no-unknown.md +48 -0
  70. package/rules/css/media-feature-name-no-vendor-prefix.md +50 -0
  71. package/rules/css/media-feature-name-value-no-unknown.md +46 -0
  72. package/rules/css/media-feature-range-notation.cases.md +61 -0
  73. package/rules/css/media-feature-range-notation.md +45 -0
  74. package/rules/css/media-query-no-invalid.cases.md +60 -0
  75. package/rules/css/media-query-no-invalid.md +48 -0
  76. package/rules/css/media-type-no-deprecated.md +48 -0
  77. package/rules/css/named-grid-areas-no-invalid.md +47 -0
  78. package/rules/css/nesting-selector-no-missing-scoping-root.md +44 -0
  79. package/rules/css/no-descending-specificity.cases.md +69 -0
  80. package/rules/css/no-descending-specificity.md +57 -0
  81. package/rules/css/no-duplicate-at-import-rules.md +35 -0
  82. package/rules/css/no-duplicate-selector.cases.md +67 -0
  83. package/rules/css/no-duplicate-selector.md +48 -0
  84. package/rules/css/no-empty-block.cases.md +42 -0
  85. package/rules/css/no-empty-block.md +42 -0
  86. package/rules/css/no-empty-source.md +40 -0
  87. package/rules/css/no-important.md +43 -0
  88. package/rules/css/no-invalid-double-slash-comments.md +44 -0
  89. package/rules/css/no-invalid-position-at-import-rule.md +48 -0
  90. package/rules/css/no-invalid-position-declaration.cases.md +35 -0
  91. package/rules/css/no-invalid-position-declaration.md +40 -0
  92. package/rules/css/no-irregular-whitespace.md +38 -0
  93. package/rules/css/no-unknown-property.cases.md +53 -0
  94. package/rules/css/no-unknown-property.md +45 -0
  95. package/rules/css/number-max-precision.md +41 -0
  96. package/rules/css/property-no-deprecated.md +40 -0
  97. package/rules/css/property-no-vendor-prefix.md +40 -0
  98. package/rules/css/selector-anb-no-unmatchable.md +42 -0
  99. package/rules/css/selector-class-pattern.md +45 -0
  100. package/rules/css/selector-id-pattern.md +45 -0
  101. package/rules/css/selector-no-vendor-prefix.md +40 -0
  102. package/rules/css/selector-not-notation.md +42 -0
  103. package/rules/css/selector-pseudo-class-no-unknown.cases.md +53 -0
  104. package/rules/css/selector-pseudo-class-no-unknown.md +44 -0
  105. package/rules/css/selector-pseudo-element-colon-notation.cases.md +13 -0
  106. package/rules/css/selector-pseudo-element-colon-notation.md +41 -0
  107. package/rules/css/selector-pseudo-element-no-unknown.md +44 -0
  108. package/rules/css/selector-type-no-unknown.cases.md +41 -0
  109. package/rules/css/selector-type-no-unknown.md +45 -0
  110. package/rules/css/shorthand-property-no-redundant-values.cases.md +34 -0
  111. package/rules/css/shorthand-property-no-redundant-values.md +37 -0
  112. package/rules/css/string-no-newline.cases.md +27 -0
  113. package/rules/css/string-no-newline.md +45 -0
  114. package/rules/css/syntax-string-no-invalid.md +46 -0
  115. package/rules/css/value-no-vendor-prefix.md +40 -0
  116. package/rules/graph/no-unused-css-classes.md +55 -0
@@ -0,0 +1,351 @@
1
+ {
2
+ "longhands": {
3
+ "animation": [
4
+ "animation-name",
5
+ "animation-duration",
6
+ "animation-timing-function",
7
+ "animation-delay",
8
+ "animation-iteration-count",
9
+ "animation-direction",
10
+ "animation-fill-mode",
11
+ "animation-play-state"
12
+ ],
13
+ "background": [
14
+ "background-image",
15
+ "background-size",
16
+ "background-position",
17
+ "background-repeat",
18
+ "background-origin",
19
+ "background-clip",
20
+ "background-attachment",
21
+ "background-color"
22
+ ],
23
+ "border": [
24
+ "border-top-width",
25
+ "border-right-width",
26
+ "border-bottom-width",
27
+ "border-left-width",
28
+ "border-top-style",
29
+ "border-right-style",
30
+ "border-bottom-style",
31
+ "border-left-style",
32
+ "border-top-color",
33
+ "border-right-color",
34
+ "border-bottom-color",
35
+ "border-left-color",
36
+ "border-width",
37
+ "border-style",
38
+ "border-color"
39
+ ],
40
+ "border-block": [
41
+ "border-block-width",
42
+ "border-block-style",
43
+ "border-block-color"
44
+ ],
45
+ "border-block-end": [
46
+ "border-block-end-width",
47
+ "border-block-end-style",
48
+ "border-block-end-color"
49
+ ],
50
+ "border-block-start": [
51
+ "border-block-start-width",
52
+ "border-block-start-style",
53
+ "border-block-start-color"
54
+ ],
55
+ "border-bottom": [
56
+ "border-bottom-width",
57
+ "border-bottom-style",
58
+ "border-bottom-color"
59
+ ],
60
+ "border-color": [
61
+ "border-top-color",
62
+ "border-right-color",
63
+ "border-bottom-color",
64
+ "border-left-color"
65
+ ],
66
+ "border-image": [
67
+ "border-image-source",
68
+ "border-image-slice",
69
+ "border-image-width",
70
+ "border-image-outset",
71
+ "border-image-repeat"
72
+ ],
73
+ "border-inline": [
74
+ "border-inline-width",
75
+ "border-inline-style",
76
+ "border-inline-color"
77
+ ],
78
+ "border-inline-end": [
79
+ "border-inline-end-width",
80
+ "border-inline-end-style",
81
+ "border-inline-end-color"
82
+ ],
83
+ "border-inline-start": [
84
+ "border-inline-start-width",
85
+ "border-inline-start-style",
86
+ "border-inline-start-color"
87
+ ],
88
+ "border-left": [
89
+ "border-left-width",
90
+ "border-left-style",
91
+ "border-left-color"
92
+ ],
93
+ "border-radius": [
94
+ "border-top-left-radius",
95
+ "border-top-right-radius",
96
+ "border-bottom-right-radius",
97
+ "border-bottom-left-radius"
98
+ ],
99
+ "border-right": [
100
+ "border-right-width",
101
+ "border-right-style",
102
+ "border-right-color"
103
+ ],
104
+ "border-style": [
105
+ "border-top-style",
106
+ "border-right-style",
107
+ "border-bottom-style",
108
+ "border-left-style"
109
+ ],
110
+ "border-top": [
111
+ "border-top-width",
112
+ "border-top-style",
113
+ "border-top-color"
114
+ ],
115
+ "border-width": [
116
+ "border-top-width",
117
+ "border-right-width",
118
+ "border-bottom-width",
119
+ "border-left-width"
120
+ ],
121
+ "column-rule": [
122
+ "column-rule-width",
123
+ "column-rule-style",
124
+ "column-rule-color"
125
+ ],
126
+ "columns": [
127
+ "column-width",
128
+ "column-count"
129
+ ],
130
+ "flex": [
131
+ "flex-grow",
132
+ "flex-shrink",
133
+ "flex-basis"
134
+ ],
135
+ "flex-flow": [
136
+ "flex-direction",
137
+ "flex-wrap"
138
+ ],
139
+ "font": [
140
+ "font-style",
141
+ "font-variant",
142
+ "font-weight",
143
+ "font-stretch",
144
+ "font-size",
145
+ "line-height",
146
+ "font-family"
147
+ ],
148
+ "font-synthesis": [
149
+ "font-synthesis-weight",
150
+ "font-synthesis-style",
151
+ "font-synthesis-small-caps"
152
+ ],
153
+ "font-variant": [
154
+ "font-variant-ligatures",
155
+ "font-variant-position",
156
+ "font-variant-caps",
157
+ "font-variant-numeric",
158
+ "font-variant-alternates",
159
+ "font-variant-east-asian",
160
+ "font-variant-emoji"
161
+ ],
162
+ "gap": [
163
+ "row-gap",
164
+ "column-gap"
165
+ ],
166
+ "grid": [
167
+ "grid-template-rows",
168
+ "grid-template-columns",
169
+ "grid-template-areas",
170
+ "grid-auto-rows",
171
+ "grid-auto-columns",
172
+ "grid-auto-flow",
173
+ "grid-column-gap",
174
+ "grid-row-gap"
175
+ ],
176
+ "grid-area": [
177
+ "grid-row-start",
178
+ "grid-column-start",
179
+ "grid-row-end",
180
+ "grid-column-end"
181
+ ],
182
+ "grid-column": [
183
+ "grid-column-start",
184
+ "grid-column-end"
185
+ ],
186
+ "grid-gap": [
187
+ "grid-row-gap",
188
+ "grid-column-gap"
189
+ ],
190
+ "grid-row": [
191
+ "grid-row-start",
192
+ "grid-row-end"
193
+ ],
194
+ "grid-template": [
195
+ "grid-template-columns",
196
+ "grid-template-rows",
197
+ "grid-template-areas"
198
+ ],
199
+ "inset": [
200
+ "top",
201
+ "right",
202
+ "bottom",
203
+ "left"
204
+ ],
205
+ "inset-block": [
206
+ "inset-block-start",
207
+ "inset-block-end"
208
+ ],
209
+ "inset-inline": [
210
+ "inset-inline-start",
211
+ "inset-inline-end"
212
+ ],
213
+ "list-style": [
214
+ "list-style-type",
215
+ "list-style-position",
216
+ "list-style-image"
217
+ ],
218
+ "margin": [
219
+ "margin-top",
220
+ "margin-right",
221
+ "margin-bottom",
222
+ "margin-left"
223
+ ],
224
+ "margin-block": [
225
+ "margin-block-start",
226
+ "margin-block-end"
227
+ ],
228
+ "margin-inline": [
229
+ "margin-inline-start",
230
+ "margin-inline-end"
231
+ ],
232
+ "mask": [
233
+ "mask-image",
234
+ "mask-mode",
235
+ "mask-position",
236
+ "mask-size",
237
+ "mask-repeat",
238
+ "mask-origin",
239
+ "mask-clip",
240
+ "mask-composite"
241
+ ],
242
+ "outline": [
243
+ "outline-color",
244
+ "outline-style",
245
+ "outline-width"
246
+ ],
247
+ "overflow": [
248
+ "overflow-x",
249
+ "overflow-y"
250
+ ],
251
+ "overscroll-behavior": [
252
+ "overscroll-behavior-x",
253
+ "overscroll-behavior-y"
254
+ ],
255
+ "padding": [
256
+ "padding-top",
257
+ "padding-right",
258
+ "padding-bottom",
259
+ "padding-left"
260
+ ],
261
+ "padding-block": [
262
+ "padding-block-start",
263
+ "padding-block-end"
264
+ ],
265
+ "padding-inline": [
266
+ "padding-inline-start",
267
+ "padding-inline-end"
268
+ ],
269
+ "place-content": [
270
+ "align-content",
271
+ "justify-content"
272
+ ],
273
+ "place-items": [
274
+ "align-items",
275
+ "justify-items"
276
+ ],
277
+ "place-self": [
278
+ "align-self",
279
+ "justify-self"
280
+ ],
281
+ "scroll-margin": [
282
+ "scroll-margin-top",
283
+ "scroll-margin-right",
284
+ "scroll-margin-bottom",
285
+ "scroll-margin-left"
286
+ ],
287
+ "scroll-margin-block": [
288
+ "scroll-margin-block-start",
289
+ "scroll-margin-block-end"
290
+ ],
291
+ "scroll-margin-inline": [
292
+ "scroll-margin-inline-start",
293
+ "scroll-margin-inline-end"
294
+ ],
295
+ "scroll-padding": [
296
+ "scroll-padding-top",
297
+ "scroll-padding-right",
298
+ "scroll-padding-bottom",
299
+ "scroll-padding-left"
300
+ ],
301
+ "scroll-padding-block": [
302
+ "scroll-padding-block-start",
303
+ "scroll-padding-block-end"
304
+ ],
305
+ "scroll-padding-inline": [
306
+ "scroll-padding-inline-start",
307
+ "scroll-padding-inline-end"
308
+ ],
309
+ "text-decoration": [
310
+ "text-decoration-line",
311
+ "text-decoration-style",
312
+ "text-decoration-color",
313
+ "text-decoration-thickness"
314
+ ],
315
+ "text-emphasis": [
316
+ "text-emphasis-style",
317
+ "text-emphasis-color"
318
+ ],
319
+ "transition": [
320
+ "transition-property",
321
+ "transition-duration",
322
+ "transition-timing-function",
323
+ "transition-delay"
324
+ ]
325
+ },
326
+ "resets": {
327
+ "border": [
328
+ "border-image",
329
+ "border-image-outset",
330
+ "border-image-repeat",
331
+ "border-image-slice",
332
+ "border-image-source",
333
+ "border-image-width"
334
+ ],
335
+ "font": [
336
+ "font-feature-settings",
337
+ "font-kerning",
338
+ "font-language-override",
339
+ "font-optical-sizing",
340
+ "font-size-adjust",
341
+ "font-variant-alternates",
342
+ "font-variant-caps",
343
+ "font-variant-east-asian",
344
+ "font-variant-emoji",
345
+ "font-variant-ligatures",
346
+ "font-variant-numeric",
347
+ "font-variant-position",
348
+ "font-variation-settings"
349
+ ]
350
+ }
351
+ }