-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathstylelint.config.mjs
More file actions
167 lines (158 loc) · 7.59 KB
/
stylelint.config.mjs
File metadata and controls
167 lines (158 loc) · 7.59 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
export default ( async () => {
const vendorProperties = [
"-moz-appearance",
"-webkit-appearance",
"-webkit-user-select",
"-webkit-background-clip",
];
return {
plugins: [
"@stylistic/stylelint-plugin",
],
rules: {
"max-nesting-depth": 3,
"selector-max-id": 2,
"selector-max-type": 3,
"selector-max-class": 5,
"selector-max-universal": 1,
"selector-max-attribute": 5,
"selector-max-combinators": 3,
"selector-max-pseudo-class": 4,
"selector-max-compound-selectors": 4,
"selector-max-specificity": "2,3,1",
"declaration-block-single-line-max-declarations": 4,
"value-no-vendor-prefix": true,
"at-rule-no-vendor-prefix": true,
"selector-not-notation": "complex",
"selector-no-vendor-prefix": true,
"property-no-vendor-prefix": [ true, { ignoreProperties: vendorProperties } ],
"media-feature-name-no-vendor-prefix": true,
"color-named": "never",
"color-hex-length": "short",
"function-url-quotes": "always",
"length-zero-no-unit": true,
"number-max-precision": 2,
"font-weight-notation": "named-where-possible",
"font-family-name-quotes": "always-unless-keyword",
"declaration-no-important": true,
"selector-attribute-quotes": "always",
"keyframe-declaration-no-important": true,
"selector-pseudo-element-colon-notation": "double",
"selector-id-pattern": null,
"custom-media-pattern": null,
"keyframes-name-pattern": null,
"selector-class-pattern": null,
"custom-property-pattern": null,
"block-no-empty": true,
"no-empty-source": true,
"unit-no-unknown": true,
"comment-no-empty": true,
"string-no-newline": true,
"at-rule-no-unknown": true,
"color-no-invalid-hex": true,
"no-duplicate-selectors": true,
"selector-type-no-unknown": [ true, { ignore: [ "custom-elements" ] } ],
"no-duplicate-at-import-rules": true,
"media-feature-name-no-unknown": true,
"font-family-no-duplicate-names": true,
"no-invalid-double-slash-comments": true,
"selector-pseudo-class-no-unknown": true,
"selector-pseudo-element-no-unknown": true,
"declaration-property-value-no-unknown": true,
"shorthand-property-no-redundant-values": true,
"declaration-block-no-duplicate-properties": true,
"function-linear-gradient-no-nonstandard-direction": true,
"declaration-block-no-shorthand-property-overrides": true,
"declaration-block-no-redundant-longhand-properties": true,
"declaration-empty-line-before": "never",
"custom-property-empty-line-before": "never",
"comment-whitespace-inside": "always",
"comment-empty-line-before": [ "always", { ignore: [ "after-comment" ] } ],
"function-calc-no-unspaced-operator": true,
// "at-rule-empty-line-before": [ "always", { ignore: [ "after-comment" ] } ],
// .................................................................
"value-keyword-case": [ "lower", { camelCaseSvgKeywords: true } ],
"function-name-case": "lower",
"selector-type-case": "lower",
"@stylistic/unit-case": "lower",
"@stylistic/property-case": "lower",
"@stylistic/color-hex-case": "lower",
"@stylistic/at-rule-name-case": "lower",
"@stylistic/media-feature-name-case": "lower",
"@stylistic/selector-pseudo-class-case": "lower",
"@stylistic/selector-pseudo-element-case": "lower",
// .................................................................
"@stylistic/linebreaks": "unix",
"@stylistic/indentation": "tab",
"@stylistic/unicode-bom": "never",
"@stylistic/string-quotes": "double",
"@stylistic/max-empty-lines": 1,
"@stylistic/max-line-length": 180,
"@stylistic/no-eol-whitespace": true,
"@stylistic/no-extra-semicolons": true,
"@stylistic/no-empty-first-line": true,
"@stylistic/number-leading-zero": "never",
"@stylistic/number-no-trailing-zeros": true,
"@stylistic/function-max-empty-lines": 0,
"@stylistic/selector-max-empty-lines": 0,
"@stylistic/value-list-max-empty-lines": 0,
"@stylistic/named-grid-areas-alignment": true,
"@stylistic/declaration-block-trailing-semicolon": [ "always", { ignore: [ "single-declaration" ] } ],
// .................................................................
"@stylistic/declaration-bang-space-before": "always",
"@stylistic/declaration-bang-space-after": "never",
"@stylistic/declaration-colon-space-before": "never",
// "@stylistic/declaration-colon-space-after": "always-single-line",
// "@stylistic/declaration-colon-newline-after": "never",
"@stylistic/no-missing-end-of-source-newline": true,
"@stylistic/declaration-block-semicolon-space-before": "never",
// "@stylistic/declaration-block-semicolon-space-after": "always-single-line",
"@stylistic/declaration-block-semicolon-newline-before": "never-multi-line",
"@stylistic/declaration-block-semicolon-newline-after": "always-multi-line",
"@stylistic/function-whitespace-after": "always",
"@stylistic/function-comma-space-before": "never",
"@stylistic/function-comma-space-after": "always-single-line",
"@stylistic/function-comma-newline-before": "never-multi-line",
"@stylistic/function-comma-newline-after": "always-multi-line",
"@stylistic/function-parentheses-space-inside": "always-single-line",
// "@stylistic/function-parentheses-newline-inside": "always",
"@stylistic/value-list-comma-space-before": "never",
"@stylistic/value-list-comma-space-after": "always-single-line",
"@stylistic/value-list-comma-newline-before": "never-multi-line",
"@stylistic/value-list-comma-newline-after": "always-multi-line",
// "@stylistic/block-opening-brace-newline-before": "never", ?? can't be "never"
"@stylistic/block-opening-brace-newline-after": "always-multi-line",
"@stylistic/block-opening-brace-space-before": "always-multi-line",
"@stylistic/block-opening-brace-space-after": "always-single-line",
"@stylistic/block-closing-brace-space-before": "always-single-line",
// "@stylistic/block-closing-brace-space-after": "never",
"@stylistic/block-closing-brace-newline-before": "always-multi-line",
"@stylistic/block-closing-brace-newline-after": "always",
"@stylistic/block-closing-brace-empty-line-before": "never",
"@stylistic/media-query-list-comma-space-before": "never",
"@stylistic/media-query-list-comma-space-after": "always",
"@stylistic/media-query-list-comma-newline-before": "never-multi-line",
"@stylistic/media-query-list-comma-newline-after": "always",
"@stylistic/media-feature-parentheses-space-inside": "always",
"@stylistic/media-feature-range-operator-space-before": "always",
"@stylistic/media-feature-range-operator-space-after": "always",
"@stylistic/media-feature-colon-space-before": "never",
"@stylistic/media-feature-colon-space-after": "always",
"@stylistic/at-rule-name-space-after": "always",
// "@stylistic/at-rule-name-newline-after": "never", ?? can't be "never"
"@stylistic/at-rule-semicolon-space-before": "never",
"@stylistic/at-rule-semicolon-newline-after": "always",
"@stylistic/selector-combinator-space-before": "always",
"@stylistic/selector-combinator-space-after": "always",
"@stylistic/selector-list-comma-space-before": "never",
"@stylistic/selector-list-comma-space-after": "always-single-line",
"@stylistic/selector-list-comma-newline-before": "never-multi-line",
"@stylistic/selector-list-comma-newline-after": "always-multi-line",
"@stylistic/selector-attribute-operator-space-before": "never",
"@stylistic/selector-attribute-operator-space-after": "never",
"@stylistic/selector-attribute-brackets-space-inside": "always",
"@stylistic/selector-pseudo-class-parentheses-space-inside": "always",
"@stylistic/selector-descendant-combinator-no-non-space": true,
},
};
} )();