@origin-1/eslint-config 0.23.0 → 0.24.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.
- package/lib/rules.js +25 -7
- package/package.json +2 -2
package/lib/rules.js
CHANGED
|
@@ -4,13 +4,22 @@ exports.RULES = exports.getRulePrefix = exports.getRuleKey = exports.HYBRID = ex
|
|
|
4
4
|
exports.FOR_LANG = Symbol('For one language only');
|
|
5
5
|
exports.UNIQUE = Symbol('Unique built-in rules');
|
|
6
6
|
exports.HYBRID = Symbol('Hybrid rules');
|
|
7
|
-
function beforeJSOrElse(version, before,
|
|
8
|
-
|
|
7
|
+
function beforeJSOrElse(version, before, ...moreArgs) {
|
|
8
|
+
const else_ = moreArgs.at(-1);
|
|
9
|
+
return jsts(beforeOrElse(version, before, ...moreArgs), else_);
|
|
9
10
|
}
|
|
10
|
-
function beforeOrElse(version, before,
|
|
11
|
+
function beforeOrElse(version, before, ...moreArgs) {
|
|
11
12
|
const beforeEntry = { minVersion: undefined, ruleEntry: before };
|
|
12
|
-
const
|
|
13
|
-
|
|
13
|
+
const array = [beforeEntry];
|
|
14
|
+
if (moreArgs.length < 3) {
|
|
15
|
+
const elseEntry = { minVersion: version, ruleEntry: moreArgs[0] };
|
|
16
|
+
array.push(elseEntry);
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
const middleEntry = { minVersion: version, ruleEntry: moreArgs[1] };
|
|
20
|
+
const elseEntry = { minVersion: moreArgs[0], ruleEntry: moreArgs[2] };
|
|
21
|
+
array.push(middleEntry, elseEntry);
|
|
22
|
+
}
|
|
14
23
|
const versionedList = Object.assign(array, { versioned: true });
|
|
15
24
|
return versionedList;
|
|
16
25
|
}
|
|
@@ -358,7 +367,15 @@ exports.RULES = {
|
|
|
358
367
|
'arrow-spacing': ['error'],
|
|
359
368
|
'block-spacing': ['error'],
|
|
360
369
|
'brace-style': 'off',
|
|
361
|
-
'comma-dangle': ['error', 'always-multiline'],
|
|
370
|
+
'comma-dangle': beforeJSOrElse(2015, ['error', { arrays: 'always-multiline' }], 2017, [
|
|
371
|
+
'error',
|
|
372
|
+
{
|
|
373
|
+
arrays: 'always-multiline',
|
|
374
|
+
objects: 'always-multiline',
|
|
375
|
+
imports: 'always-multiline',
|
|
376
|
+
exports: 'always-multiline',
|
|
377
|
+
},
|
|
378
|
+
], ['error', 'always-multiline']),
|
|
362
379
|
'comma-spacing': ['error'],
|
|
363
380
|
'comma-style': ['error', 'last', { exceptions: { ArrayExpression: true } }],
|
|
364
381
|
'computed-property-spacing': ['error'],
|
|
@@ -480,6 +497,7 @@ exports.RULES = {
|
|
|
480
497
|
'yield-star-spacing': ['error', 'both'],
|
|
481
498
|
},
|
|
482
499
|
'eslint-plugin-n': {
|
|
500
|
+
'hashbang': 'off',
|
|
483
501
|
'no-callback-literal': 'off',
|
|
484
502
|
'no-deprecated-api': ['error'],
|
|
485
503
|
'no-exports-assign': ['error'],
|
|
@@ -494,7 +512,6 @@ exports.RULES = {
|
|
|
494
512
|
'no-unsupported-features/es-syntax': 'off',
|
|
495
513
|
'no-unsupported-features/node-builtins': 'off',
|
|
496
514
|
'process-exit-as-throw': ['error'],
|
|
497
|
-
'shebang': 'off',
|
|
498
515
|
'callback-return': 'off',
|
|
499
516
|
'exports-style': 'off',
|
|
500
517
|
'file-extension-in-import': 'off',
|
|
@@ -515,6 +532,7 @@ exports.RULES = {
|
|
|
515
532
|
'prefer-global/text-encoder': ['error'],
|
|
516
533
|
'prefer-global/url': ['error'],
|
|
517
534
|
'prefer-global/url-search-params': ['error'],
|
|
535
|
+
'prefer-node-protocol': beforeJSOrElse(2021, 'off', ['error']),
|
|
518
536
|
'prefer-promises/dns': beforeJSOrElse(2015, 'off', ['error']),
|
|
519
537
|
'prefer-promises/fs': beforeJSOrElse(2015, 'off', ['error']),
|
|
520
538
|
},
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@origin-1/eslint-config",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.24.1",
|
|
4
4
|
"description": "ESLint configuration generator with Origin₁ presets",
|
|
5
5
|
"homepage": "https://github.com/origin-1/eslint-config#readme",
|
|
6
6
|
"license": "ISC",
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"@typescript-eslint/eslint-plugin": "^7.5",
|
|
21
21
|
"@typescript-eslint/parser": "^7.5",
|
|
22
22
|
"eslint": "^8.57",
|
|
23
|
-
"eslint-plugin-n": "
|
|
23
|
+
"eslint-plugin-n": "17"
|
|
24
24
|
},
|
|
25
25
|
"engines": {
|
|
26
26
|
"node": ">=20.8"
|