@cherepanov.pavel/shareable-config 1.0.2 → 1.0.4

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 (49) hide show
  1. package/.editorconfig +2 -3
  2. package/.editorconfig-get.js +3 -3
  3. package/.get-all.js +16 -12
  4. package/.gitattributes-get.js +3 -3
  5. package/.gitignore-get.js +33 -30
  6. package/.vscode/.code-snippets-get.js +34 -31
  7. package/.vscode/extensions.json +17 -17
  8. package/.vscode/extensions.json-get.js +25 -25
  9. package/.vscode/settings.json +36 -27
  10. package/.vscode/settings.json-get.js +25 -25
  11. package/README.md +13 -3
  12. package/env.json5.set.js +1 -1
  13. package/jsconfig.json +4 -7
  14. package/package.json +11 -1
  15. package/tools/eslint-config/configs/global.js +21 -18
  16. package/tools/eslint-config/configs/javascript.js +14 -14
  17. package/tools/eslint-config/configs/json.js +93 -0
  18. package/tools/eslint-config/configs/typescript.js +17 -17
  19. package/tools/eslint-config/configs/vue.js +22 -22
  20. package/tools/eslint-config/index.js +1 -0
  21. package/tools/eslint-config/rules/constants.js +10 -9
  22. package/tools/eslint-config/rules/javascript/index.js +2 -2
  23. package/tools/eslint-config/rules/javascript/possible-problems.js +76 -58
  24. package/tools/eslint-config/rules/javascript/suggestions.js +405 -249
  25. package/tools/eslint-config/rules/stylistic/jsFormatting.js +321 -167
  26. package/tools/eslint-config/rules/stylistic/tsFormatting.js +4 -4
  27. package/tools/eslint-config/rules/typescript/common.js +135 -126
  28. package/tools/eslint-config/rules/typescript/compatibility.js +20 -20
  29. package/tools/eslint-config/rules/typescript/extension.js +44 -44
  30. package/tools/eslint-config/rules/typescript/index.js +3 -3
  31. package/tools/eslint-config/rules/vue/base.js +2 -2
  32. package/tools/eslint-config/rules/vue/extension.js +47 -44
  33. package/tools/eslint-config/rules/vue/formatting.js +66 -36
  34. package/tools/eslint-config/rules/vue/index.js +5 -5
  35. package/tools/eslint-config/rules/vue/possibleProblems.js +182 -109
  36. package/tools/eslint-config/rules/vue/suggestions.js +82 -79
  37. package/tools/stylelint-config/config.js +18 -20
  38. package/tools/stylelint-config/rules/base.js +30 -24
  39. package/tools/stylelint-config/rules/conflicts.js +5 -5
  40. package/tools/stylelint-config/rules/order.js +38 -38
  41. package/tools/stylelint-config/rules/property-groups.js +392 -389
  42. package/tools/stylelint-config/rules/scss.js +9 -6
  43. package/tools/stylelint-config/rules/stylistic.js +110 -109
  44. package/utils/communication.js +26 -26
  45. package/utils/copy-with-override.js +35 -33
  46. package/utils/env.js +4 -4
  47. package/utils/file-header.js +9 -9
  48. package/utils/file.js +46 -46
  49. package/utils/merge.js +161 -155
@@ -1,172 +1,326 @@
1
- import { INDENT_SIZE, MAX_LEN } from '../constants.js';
1
+ import { TAB_WIDTH, MAX_LEN, INDENT_SIZE } from '../constants.js';
2
2
  import { ERROR, OFF } from '../severity.js';
3
3
 
4
4
  /* == formatting rules for javascript == */
5
5
  export default {
6
- '@stylistic/array-bracket-newline': [OFF],
7
- '@stylistic/array-bracket-spacing': [ERROR, 'never'],
8
- '@stylistic/array-element-newline': [OFF],
9
- '@stylistic/arrow-parens': [ERROR, 'always'],
10
- '@stylistic/arrow-spacing': [ERROR, { before: true, after: true }],
11
- '@stylistic/block-spacing': [ERROR, 'always'],
12
- '@stylistic/brace-style': [ERROR, '1tbs', { allowSingleLine: false }],
13
- '@stylistic/comma-dangle': [ERROR, 'always-multiline'],
14
- '@stylistic/comma-spacing': [ERROR, { before: false, after: true }],
15
- '@stylistic/comma-style': [ERROR, 'last', {
16
- exceptions: {
17
- ArrayExpression: false,
18
- ArrayPattern: false,
19
- ArrowFunctionExpression: false,
20
- CallExpression: false,
21
- FunctionDeclaration: false,
22
- FunctionExpression: false,
23
- ImportDeclaration: false,
24
- NewExpression: false,
25
- ObjectExpression: false,
26
- ObjectPattern: false,
27
- VariableDeclaration: false,
28
- },
29
- }],
30
- '@stylistic/computed-property-spacing': [ERROR, 'never'],
31
- '@stylistic/dot-location': [ERROR, 'property'],
32
- '@stylistic/eol-last': [ERROR, 'always'],
33
- '@stylistic/function-call-argument-newline': [ERROR, 'consistent'],
34
- '@stylistic/function-call-spacing': [ERROR],
35
- '@stylistic/function-paren-newline': [ERROR, 'multiline-arguments'],
36
- '@stylistic/generator-star-spacing': [ERROR, { before: false, after: true }],
37
- '@stylistic/implicit-arrow-linebreak': [ERROR, 'beside'],
38
- '@stylistic/indent': [ERROR, INDENT_SIZE, {
39
- ArrayExpression: 1,
40
- CallExpression: {
41
- arguments: 1,
42
- },
43
- FunctionDeclaration: {
44
- parameters: 1,
45
- body: 1,
46
- },
47
- FunctionExpression: {
48
- parameters: 1,
49
- body: 1,
50
- },
51
- ImportDeclaration: 1,
52
- MemberExpression: 1,
53
- ObjectExpression: 1,
54
- StaticBlock: {
55
- body: 1,
56
- },
57
- SwitchCase: 1,
58
- VariableDeclarator: 1,
59
- outerIIFEBody: 1,
60
-
61
- flatTernaryExpressions: false,
62
- ignoreComments: false,
63
- }],
64
- '@stylistic/indent-binary-ops': [ERROR, INDENT_SIZE],
65
- '@stylistic/key-spacing': [ERROR, { beforeColon: false, afterColon: true }],
66
- '@stylistic/keyword-spacing': [ERROR, {
67
- before: true,
68
- after: true,
69
- overrides: {
70
- return: { after: true },
71
- throw: { after: true },
72
- case: { after: true },
73
- },
74
- }],
75
- '@stylistic/linebreak-style': [ERROR, 'unix'],
76
- '@stylistic/lines-around-comment': [OFF],
77
- '@stylistic/lines-between-class-members': [ERROR, 'always', { exceptAfterSingleLine: false }],
78
- '@stylistic/max-len': [ERROR, MAX_LEN],
79
- '@stylistic/max-statements-per-line': [OFF],
80
- '@stylistic/multiline-ternary': [ERROR, 'always-multiline'],
81
- '@stylistic/new-parens': [ERROR, 'always'],
82
- '@stylistic/newline-per-chained-call': [ERROR, { ignoreChainWithDepth: 2 }],
83
- '@stylistic/no-confusing-arrow': [ERROR, { allowParens: true }],
84
- '@stylistic/no-extra-parens': [OFF],
85
- '@stylistic/no-extra-semi': [ERROR],
86
- '@stylistic/no-floating-decimal': [ERROR],
87
- '@stylistic/no-mixed-operators': [OFF, { allowSamePrecedence: true }],
88
- '@stylistic/no-mixed-spaces-and-tabs': [ERROR],
89
- '@stylistic/no-multi-spaces': [ERROR, { ignoreEOLComments: false }],
90
- '@stylistic/no-multiple-empty-lines': [ERROR, {
91
- max: 2,
92
- maxBOF: 0,
93
- maxEOF: 0,
94
- }],
95
- '@stylistic/no-tabs': [ERROR],
96
- '@stylistic/no-trailing-spaces': [ERROR, {
97
- skipBlankLines: false,
98
- ignoreComments: false,
99
- }],
100
- '@stylistic/no-whitespace-before-property': [ERROR],
101
- '@stylistic/nonblock-statement-body-position': [ERROR, 'beside'],
102
- '@stylistic/object-curly-newline': [ERROR, {
103
- ObjectExpression: {
104
- minProperties: 4,
105
- multiline: true,
106
- consistent: true,
107
- },
108
- ObjectPattern: {
109
- minProperties: 4,
110
- multiline: true,
111
- consistent: true,
112
- },
113
- ImportDeclaration: {
114
- minProperties: 4,
115
- multiline: true,
116
- consistent: true,
117
- },
118
- ExportDeclaration: {
119
- minProperties: 4,
120
- multiline: true,
121
- consistent: true,
122
- },
123
- }],
124
- '@stylistic/object-curly-spacing': [ERROR, 'always'],
125
- '@stylistic/object-property-newline': [ERROR, { allowAllPropertiesOnSameLine: true }],
126
- '@stylistic/one-var-declaration-per-line': [ERROR, 'always'],
127
- '@stylistic/operator-linebreak': [ERROR, 'before', { overrides: { '=': 'none' } }],
128
- '@stylistic/padded-blocks': [ERROR,
129
- {
130
- blocks: 'never',
131
- classes: 'never',
132
- switches: 'never',
133
- },
134
- {
135
- allowSingleLineBlocks: false,
136
- },
137
- ],
138
- '@stylistic/padding-line-between-statements': [OFF],
139
- '@stylistic/quote-props': [ERROR, 'consistent-as-needed'],
140
- '@stylistic/quotes': [ERROR, 'single', { avoidEscape: true }],
141
- '@stylistic/rest-spread-spacing': [ERROR, 'never'],
142
- '@stylistic/semi': [ERROR, 'always'],
143
- '@stylistic/semi-spacing': [ERROR, { before: false, after: true }],
144
- '@stylistic/semi-style': [ERROR, 'last'],
145
- '@stylistic/space-before-blocks': [ERROR, 'always'],
146
- '@stylistic/space-before-function-paren': [ERROR, {
147
- anonymous: 'always',
148
- named: 'never',
149
- asyncArrow: 'always',
150
- }],
151
- '@stylistic/space-in-parens': [ERROR, 'never'],
152
- '@stylistic/space-infix-ops': [ERROR],
153
- '@stylistic/space-unary-ops': [ERROR, {
154
- words: true,
155
- nonwords: false,
156
- }],
157
- '@stylistic/spaced-comment': [ERROR, 'always', {
158
- line: {
159
- exceptions: ['-', '+'],
160
- },
161
- block: {
162
- exceptions: ['-', '+'],
163
- balanced: true,
164
- },
165
- }],
166
- '@stylistic/switch-colon-spacing': [ERROR, { after: true, before: false }],
167
- '@stylistic/template-curly-spacing': [ERROR, 'never'],
168
- '@stylistic/template-tag-spacing': [ERROR, 'never'],
169
- '@stylistic/wrap-iife': [ERROR, 'outside', { functionPrototypeMethods: false }],
170
- '@stylistic/wrap-regex': [ERROR],
171
- '@stylistic/yield-star-spacing': [ERROR, 'after'],
6
+ '@stylistic/array-bracket-newline': [
7
+ ERROR,
8
+ { multiline: true, minItems: 2 },
9
+ ],
10
+ '@stylistic/array-bracket-spacing': [
11
+ ERROR,
12
+ 'never',
13
+ ],
14
+ '@stylistic/array-element-newline': [
15
+ ERROR,
16
+ { multiline: true, minItems: 2 },
17
+ ],
18
+ '@stylistic/arrow-parens': [
19
+ ERROR,
20
+ 'always',
21
+ ],
22
+ '@stylistic/arrow-spacing': [
23
+ ERROR,
24
+ { before: true, after: true },
25
+ ],
26
+ '@stylistic/block-spacing': [
27
+ ERROR,
28
+ 'always',
29
+ ],
30
+ '@stylistic/brace-style': [
31
+ ERROR,
32
+ '1tbs',
33
+ { allowSingleLine: false },
34
+ ],
35
+ '@stylistic/comma-dangle': [
36
+ ERROR,
37
+ 'always-multiline',
38
+ ],
39
+ '@stylistic/comma-spacing': [
40
+ ERROR,
41
+ { before: false, after: true },
42
+ ],
43
+ '@stylistic/comma-style': [
44
+ ERROR,
45
+ 'last',
46
+ {
47
+ exceptions: {
48
+ ArrayExpression: false,
49
+ ArrayPattern: false,
50
+ ArrowFunctionExpression: false,
51
+ CallExpression: false,
52
+ FunctionDeclaration: false,
53
+ FunctionExpression: false,
54
+ ImportDeclaration: false,
55
+ NewExpression: false,
56
+ ObjectExpression: false,
57
+ ObjectPattern: false,
58
+ VariableDeclaration: false,
59
+ },
60
+ },
61
+ ],
62
+ '@stylistic/computed-property-spacing': [
63
+ ERROR,
64
+ 'never',
65
+ ],
66
+ '@stylistic/dot-location': [
67
+ ERROR,
68
+ 'property',
69
+ ],
70
+ '@stylistic/eol-last': [
71
+ ERROR,
72
+ 'always',
73
+ ],
74
+ '@stylistic/function-call-argument-newline': [
75
+ ERROR,
76
+ 'consistent',
77
+ ],
78
+ '@stylistic/function-call-spacing': [ERROR],
79
+ '@stylistic/function-paren-newline': [
80
+ ERROR,
81
+ 'multiline-arguments',
82
+ ],
83
+ '@stylistic/generator-star-spacing': [
84
+ ERROR,
85
+ { before: false, after: true },
86
+ ],
87
+ '@stylistic/implicit-arrow-linebreak': [
88
+ ERROR,
89
+ 'beside',
90
+ ],
91
+ '@stylistic/indent': [
92
+ ERROR,
93
+ INDENT_SIZE,
94
+ {
95
+ tabLength: TAB_WIDTH,
96
+ },
97
+ ],
98
+ '@stylistic/indent-binary-ops': [
99
+ ERROR,
100
+ INDENT_SIZE,
101
+ ],
102
+ '@stylistic/key-spacing': [
103
+ ERROR,
104
+ { beforeColon: false, afterColon: true },
105
+ ],
106
+ '@stylistic/keyword-spacing': [
107
+ ERROR,
108
+ {
109
+ before: true,
110
+ after: true,
111
+ overrides: {
112
+ return: { after: true },
113
+ throw: { after: true },
114
+ case: { after: true },
115
+ },
116
+ },
117
+ ],
118
+ '@stylistic/linebreak-style': [
119
+ ERROR,
120
+ 'unix',
121
+ ],
122
+ '@stylistic/lines-around-comment': [OFF],
123
+ '@stylistic/lines-between-class-members': [
124
+ ERROR,
125
+ 'always',
126
+ { exceptAfterSingleLine: false },
127
+ ],
128
+ '@stylistic/max-len': [
129
+ ERROR,
130
+ MAX_LEN,
131
+ ],
132
+ '@stylistic/max-statements-per-line': [OFF],
133
+ '@stylistic/multiline-ternary': [
134
+ ERROR,
135
+ 'always-multiline',
136
+ ],
137
+ '@stylistic/new-parens': [
138
+ ERROR,
139
+ 'always',
140
+ ],
141
+ '@stylistic/newline-per-chained-call': [
142
+ ERROR,
143
+ { ignoreChainWithDepth: 2 },
144
+ ],
145
+ '@stylistic/no-confusing-arrow': [
146
+ ERROR,
147
+ { allowParens: true },
148
+ ],
149
+ '@stylistic/no-extra-parens': [OFF],
150
+ '@stylistic/no-extra-semi': [ERROR],
151
+ '@stylistic/no-floating-decimal': [ERROR],
152
+ '@stylistic/no-mixed-operators': [
153
+ OFF,
154
+ { allowSamePrecedence: true },
155
+ ],
156
+ '@stylistic/no-mixed-spaces-and-tabs': [ERROR],
157
+ '@stylistic/no-multi-spaces': [
158
+ ERROR,
159
+ { ignoreEOLComments: false },
160
+ ],
161
+ '@stylistic/no-multiple-empty-lines': [
162
+ ERROR,
163
+ {
164
+ max: 2,
165
+ maxBOF: 0,
166
+ maxEOF: 0,
167
+ },
168
+ ],
169
+ '@stylistic/no-tabs': [OFF],
170
+ '@stylistic/no-trailing-spaces': [
171
+ ERROR,
172
+ {
173
+ skipBlankLines: false,
174
+ ignoreComments: false,
175
+ },
176
+ ],
177
+ '@stylistic/no-whitespace-before-property': [ERROR],
178
+ '@stylistic/nonblock-statement-body-position': [
179
+ ERROR,
180
+ 'beside',
181
+ ],
182
+ '@stylistic/object-curly-newline': [
183
+ ERROR,
184
+ {
185
+ ObjectExpression: {
186
+ minProperties: 4,
187
+ multiline: true,
188
+ consistent: true,
189
+ },
190
+ ObjectPattern: {
191
+ minProperties: 4,
192
+ multiline: true,
193
+ consistent: true,
194
+ },
195
+ ImportDeclaration: {
196
+ minProperties: 4,
197
+ multiline: true,
198
+ consistent: true,
199
+ },
200
+ ExportDeclaration: {
201
+ minProperties: 4,
202
+ multiline: true,
203
+ consistent: true,
204
+ },
205
+ },
206
+ ],
207
+ '@stylistic/object-curly-spacing': [
208
+ ERROR,
209
+ 'always',
210
+ ],
211
+ '@stylistic/object-property-newline': [
212
+ ERROR,
213
+ { allowAllPropertiesOnSameLine: true },
214
+ ],
215
+ '@stylistic/one-var-declaration-per-line': [
216
+ ERROR,
217
+ 'always',
218
+ ],
219
+ '@stylistic/operator-linebreak': [
220
+ ERROR,
221
+ 'before',
222
+ { overrides: { '=': 'none' } },
223
+ ],
224
+ '@stylistic/padded-blocks': [
225
+ ERROR,
226
+ {
227
+ blocks: 'never',
228
+ classes: 'never',
229
+ switches: 'never',
230
+ },
231
+ {
232
+ allowSingleLineBlocks: false,
233
+ },
234
+ ],
235
+ '@stylistic/padding-line-between-statements': [OFF],
236
+ '@stylistic/quote-props': [
237
+ ERROR,
238
+ 'consistent-as-needed',
239
+ ],
240
+ '@stylistic/quotes': [
241
+ ERROR,
242
+ 'single',
243
+ { avoidEscape: true },
244
+ ],
245
+ '@stylistic/rest-spread-spacing': [
246
+ ERROR,
247
+ 'never',
248
+ ],
249
+ '@stylistic/semi': [
250
+ ERROR,
251
+ 'always',
252
+ ],
253
+ '@stylistic/semi-spacing': [
254
+ ERROR,
255
+ { before: false, after: true },
256
+ ],
257
+ '@stylistic/semi-style': [
258
+ ERROR,
259
+ 'last',
260
+ ],
261
+ '@stylistic/space-before-blocks': [
262
+ ERROR,
263
+ 'always',
264
+ ],
265
+ '@stylistic/space-before-function-paren': [
266
+ ERROR,
267
+ {
268
+ anonymous: 'always',
269
+ named: 'never',
270
+ asyncArrow: 'always',
271
+ },
272
+ ],
273
+ '@stylistic/space-in-parens': [
274
+ ERROR,
275
+ 'never',
276
+ ],
277
+ '@stylistic/space-infix-ops': [ERROR],
278
+ '@stylistic/space-unary-ops': [
279
+ ERROR,
280
+ {
281
+ words: true,
282
+ nonwords: false,
283
+ },
284
+ ],
285
+ '@stylistic/spaced-comment': [
286
+ ERROR,
287
+ 'always',
288
+ {
289
+ line: {
290
+ exceptions: [
291
+ '-',
292
+ '+',
293
+ ],
294
+ },
295
+ block: {
296
+ exceptions: [
297
+ '-',
298
+ '+',
299
+ ],
300
+ balanced: true,
301
+ },
302
+ },
303
+ ],
304
+ '@stylistic/switch-colon-spacing': [
305
+ ERROR,
306
+ { after: true, before: false },
307
+ ],
308
+ '@stylistic/template-curly-spacing': [
309
+ ERROR,
310
+ 'never',
311
+ ],
312
+ '@stylistic/template-tag-spacing': [
313
+ ERROR,
314
+ 'never',
315
+ ],
316
+ '@stylistic/wrap-iife': [
317
+ ERROR,
318
+ 'outside',
319
+ { functionPrototypeMethods: false },
320
+ ],
321
+ '@stylistic/wrap-regex': [ERROR],
322
+ '@stylistic/yield-star-spacing': [
323
+ ERROR,
324
+ 'after',
325
+ ],
172
326
  };
@@ -2,8 +2,8 @@ import { ERROR } from '../severity.js';
2
2
 
3
3
  /* == formatting rules for typescript == */
4
4
  export default {
5
- '@stylistic/member-delimiter-style': [ERROR],
6
- '@stylistic/type-annotation-spacing': [ERROR],
7
- '@stylistic/type-generic-spacing': [ERROR],
8
- '@stylistic/type-named-tuple-spacing': [ERROR],
5
+ '@stylistic/member-delimiter-style': [ERROR],
6
+ '@stylistic/type-annotation-spacing': [ERROR],
7
+ '@stylistic/type-generic-spacing': [ERROR],
8
+ '@stylistic/type-named-tuple-spacing': [ERROR],
9
9
  };