@nexim/eslint-config 2.1.2 → 2.1.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.
- package/CHANGELOG.md +10 -0
- package/dist/lib/extended-config.d.ts +1 -1
- package/dist/lib/extended-config.d.ts.map +1 -1
- package/dist/lib/javascript-config.d.ts +1 -1
- package/dist/lib/javascript-config.d.ts.map +1 -1
- package/dist/lib/typescript-config.d.ts +1 -1
- package/dist/lib/typescript-config.d.ts.map +1 -1
- package/dist/main.mjs +3 -185
- package/dist/main.mjs.map +1 -1
- package/package.json +15 -15
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,16 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [2.1.4](https://github.com/the-nexim/nanolib/compare/@nexim/eslint-config@2.1.3...@nexim/eslint-config@2.1.4) (2025-11-22)
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
* **eslint-config:** update @eslint/compat peer dependency range to <3.0.0 ([38bcb33](https://github.com/the-nexim/nanolib/commit/38bcb339acbaac593eb59eeced5139c695287e69)) by @njfamirm
|
|
11
|
+
|
|
12
|
+
## [2.1.3](https://github.com/the-nexim/nanolib/compare/@nexim/eslint-config@2.1.2...@nexim/eslint-config@2.1.3) (2025-08-30)
|
|
13
|
+
|
|
14
|
+
**Note:** Version bump only for package @nexim/eslint-config
|
|
15
|
+
|
|
6
16
|
## [2.1.2](https://github.com/the-nexim/nanolib/compare/@nexim/eslint-config@2.1.1...@nexim/eslint-config@2.1.2) (2025-08-26)
|
|
7
17
|
|
|
8
18
|
**Note:** Version bump only for package @nexim/eslint-config
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const baseExtends: import("
|
|
1
|
+
export declare const baseExtends: import("typescript-eslint").FlatConfig.ConfigArray;
|
|
2
2
|
//# sourceMappingURL=extended-config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extended-config.d.ts","sourceRoot":"","sources":["../../src/lib/extended-config.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"extended-config.d.ts","sourceRoot":"","sources":["../../src/lib/extended-config.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,WAAW,oDAAwG,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const jsConfigs: import("
|
|
1
|
+
export declare const jsConfigs: import("typescript-eslint").FlatConfig.ConfigArray;
|
|
2
2
|
//# sourceMappingURL=javascript-config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"javascript-config.d.ts","sourceRoot":"","sources":["../../src/lib/javascript-config.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,SAAS,
|
|
1
|
+
{"version":3,"file":"javascript-config.d.ts","sourceRoot":"","sources":["../../src/lib/javascript-config.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,SAAS,oDAoBpB,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const tsConfig: import("
|
|
1
|
+
export declare const tsConfig: import("typescript-eslint").FlatConfig.ConfigArray;
|
|
2
2
|
//# sourceMappingURL=typescript-config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typescript-config.d.ts","sourceRoot":"","sources":["../../src/lib/typescript-config.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"typescript-config.d.ts","sourceRoot":"","sources":["../../src/lib/typescript-config.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,QAAQ,oDAwHnB,CAAC"}
|
package/dist/main.mjs
CHANGED
|
@@ -1,186 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
import stylistic from "@stylistic/eslint-plugin";
|
|
5
|
-
import importPlugin from "eslint-plugin-import";
|
|
6
|
-
import tsdocPlugin from "eslint-plugin-tsdoc";
|
|
7
|
-
import * as globals from "globals";
|
|
8
|
-
import { plugin, parser, config } from "typescript-eslint";
|
|
9
|
-
var tsconfigRootDir = import.meta.dirname;
|
|
10
|
-
var tsConfig = config({
|
|
11
|
-
files: ["**/*.{ts,tsx}"],
|
|
12
|
-
languageOptions: {
|
|
13
|
-
globals: {
|
|
14
|
-
...globals["shared-node-browser"]
|
|
15
|
-
},
|
|
16
|
-
ecmaVersion: "latest",
|
|
17
|
-
sourceType: "module",
|
|
18
|
-
parser,
|
|
19
|
-
parserOptions: {
|
|
20
|
-
projectService: true,
|
|
21
|
-
tsconfigRootDir
|
|
22
|
-
}
|
|
23
|
-
},
|
|
24
|
-
extends: [importPlugin.flatConfigs.recommended, importPlugin.flatConfigs.typescript],
|
|
25
|
-
plugins: {
|
|
26
|
-
"@typescript-eslint": plugin,
|
|
27
|
-
"@stylistic": stylistic,
|
|
28
|
-
tsdoc: tsdocPlugin
|
|
29
|
-
},
|
|
30
|
-
rules: {
|
|
31
|
-
"@stylistic/max-len": ["error", { code: 140 }],
|
|
32
|
-
"no-eval": ["error", { allowIndirect: true }],
|
|
33
|
-
"@stylistic/no-floating-decimal": "error",
|
|
34
|
-
// no .5 or 2., use 0.5 or 2.0
|
|
35
|
-
"@stylistic/space-infix-ops": "error",
|
|
36
|
-
"@stylistic/brace-style": ["error", "stroustrup", { allowSingleLine: true }],
|
|
37
|
-
"@stylistic/array-bracket-spacing": ["error", "always"],
|
|
38
|
-
"@stylistic/indent": [
|
|
39
|
-
"error",
|
|
40
|
-
2,
|
|
41
|
-
{
|
|
42
|
-
SwitchCase: 1,
|
|
43
|
-
VariableDeclarator: 1,
|
|
44
|
-
outerIIFEBody: 1,
|
|
45
|
-
MemberExpression: 1,
|
|
46
|
-
FunctionDeclaration: { parameters: 1, body: 1 },
|
|
47
|
-
FunctionExpression: { parameters: 1, body: 1 },
|
|
48
|
-
CallExpression: { arguments: 1 },
|
|
49
|
-
ArrayExpression: 1,
|
|
50
|
-
ObjectExpression: 1,
|
|
51
|
-
ImportDeclaration: 1,
|
|
52
|
-
flatTernaryExpressions: false,
|
|
53
|
-
ignoreComments: false,
|
|
54
|
-
ignoredNodes: [
|
|
55
|
-
"TemplateLiteral *",
|
|
56
|
-
"TSTypeParameterInstantiation",
|
|
57
|
-
"FunctionExpression > .params[decorators.length > 0]",
|
|
58
|
-
"FunctionExpression > .params > :matches(Decorator, :not(:first-child))",
|
|
59
|
-
"ClassBody.body > PropertyDefinition[decorators.length > 0] > .key"
|
|
60
|
-
]
|
|
61
|
-
}
|
|
62
|
-
],
|
|
63
|
-
"@stylistic/operator-linebreak": ["error", "after", { overrides: { "?": "before", ":": "before" } }],
|
|
64
|
-
"@stylistic/semi": "error",
|
|
65
|
-
"tsdoc/syntax": "warn",
|
|
66
|
-
"no-unused-vars": "off",
|
|
67
|
-
"prefer-const": "error",
|
|
68
|
-
"no-unused-labels": "off",
|
|
69
|
-
"require-await": "error",
|
|
70
|
-
"@typescript-eslint/no-dynamic-delete": "off",
|
|
71
|
-
"@typescript-eslint/no-non-null-assertion": "off",
|
|
72
|
-
// picked and customized from `stylistic-type-checked`
|
|
73
|
-
"@typescript-eslint/consistent-type-definitions": "off",
|
|
74
|
-
// prefer interface over type
|
|
75
|
-
"@typescript-eslint/ban-ts-comment": ["error"],
|
|
76
|
-
// no @ts-ignore without description
|
|
77
|
-
"@typescript-eslint/no-deprecated": "error",
|
|
78
|
-
// catches usage of @deprecated items
|
|
79
|
-
"@typescript-eslint/no-duplicate-type-constituents": "error",
|
|
80
|
-
// bad: type T = 'a' | 'a'
|
|
81
|
-
"@typescript-eslint/no-explicit-any": "error",
|
|
82
|
-
// bad: const x: any
|
|
83
|
-
"@typescript-eslint/no-extra-non-null-assertion": "error",
|
|
84
|
-
// bad: foo!!.bar
|
|
85
|
-
"no-implied-eval": "off",
|
|
86
|
-
"@typescript-eslint/no-invalid-void-type": "error",
|
|
87
|
-
// bad: type T = void | string
|
|
88
|
-
"@typescript-eslint/no-misused-spread": "error",
|
|
89
|
-
// bad: [...new Set([])]
|
|
90
|
-
"@typescript-eslint/no-non-null-asserted-nullish-coalescing": "error",
|
|
91
|
-
// bad: foo! ?? bar
|
|
92
|
-
"@typescript-eslint/no-non-null-asserted-optional-chain": "error",
|
|
93
|
-
// bad: foo?.bar!
|
|
94
|
-
"@typescript-eslint/no-redundant-type-constituents": "error",
|
|
95
|
-
// bad: type T = string | 'a'
|
|
96
|
-
"@typescript-eslint/no-unnecessary-boolean-literal-compare": "error",
|
|
97
|
-
// bad: bool === true
|
|
98
|
-
"@typescript-eslint/no-unnecessary-template-expression": "error",
|
|
99
|
-
// bad: `${5}`
|
|
100
|
-
"@typescript-eslint/no-unnecessary-type-arguments": "error",
|
|
101
|
-
// bad: Map<string> when string is default
|
|
102
|
-
"@typescript-eslint/no-unnecessary-type-assertion": "error",
|
|
103
|
-
// bad: x as string when x is string
|
|
104
|
-
"@typescript-eslint/no-unnecessary-type-constraint": "error",
|
|
105
|
-
// bad: <T extends any>
|
|
106
|
-
"no-unused-expressions": "off",
|
|
107
|
-
"@typescript-eslint/no-unused-expressions": "error",
|
|
108
|
-
// bad: x + y;
|
|
109
|
-
"no-useless-constructor": "off",
|
|
110
|
-
"@typescript-eslint/no-useless-constructor": "error",
|
|
111
|
-
// bad: constructor() {}
|
|
112
|
-
"@typescript-eslint/no-wrapper-object-types": "error",
|
|
113
|
-
// bad: String, use string
|
|
114
|
-
"no-throw-literal": "off",
|
|
115
|
-
"@typescript-eslint/only-throw-error": "error",
|
|
116
|
-
// bad: throw "error"
|
|
117
|
-
"@typescript-eslint/prefer-as-const": "error",
|
|
118
|
-
// bad: let x: 'foo' = 'foo'
|
|
119
|
-
"prefer-promise-reject-errors": "off",
|
|
120
|
-
"@typescript-eslint/prefer-promise-reject-errors": "error",
|
|
121
|
-
// bad: reject('error')
|
|
122
|
-
"@typescript-eslint/prefer-reduce-type-parameter": "error",
|
|
123
|
-
// use <T> reduce over type assertions
|
|
124
|
-
"@typescript-eslint/require-await": "error",
|
|
125
|
-
// async must use await
|
|
126
|
-
"import/order": [
|
|
127
|
-
"error",
|
|
128
|
-
{
|
|
129
|
-
groups: ["builtin", "external", "internal", ["parent", "sibling", "index"], "object", "unknown", "type"],
|
|
130
|
-
"newlines-between": "always",
|
|
131
|
-
warnOnUnassignedImports: true,
|
|
132
|
-
alphabetize: {
|
|
133
|
-
order: "asc",
|
|
134
|
-
caseInsensitive: true
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
]
|
|
138
|
-
},
|
|
139
|
-
settings: {
|
|
140
|
-
"import/resolver": {
|
|
141
|
-
typescript: {
|
|
142
|
-
alwaysTryTypes: true,
|
|
143
|
-
project: [tsconfigRootDir]
|
|
144
|
-
},
|
|
145
|
-
node: {}
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
});
|
|
149
|
-
|
|
150
|
-
// src/lib/javascript-config.ts
|
|
151
|
-
import tsdocPlugin2 from "eslint-plugin-tsdoc";
|
|
152
|
-
import * as globals2 from "globals";
|
|
153
|
-
import { plugin as plugin2, configs, config as config2 } from "typescript-eslint";
|
|
154
|
-
var jsConfigs = config2({
|
|
155
|
-
extends: [configs.disableTypeChecked],
|
|
156
|
-
files: ["**/*.{mjs,js,cjs}"],
|
|
157
|
-
plugins: {
|
|
158
|
-
"@typescript-eslint": plugin2,
|
|
159
|
-
tsdoc: tsdocPlugin2
|
|
160
|
-
},
|
|
161
|
-
languageOptions: {
|
|
162
|
-
globals: {
|
|
163
|
-
...globals2.commonjs,
|
|
164
|
-
...globals2.node,
|
|
165
|
-
console: "readonly"
|
|
166
|
-
// TODO: why is this not in globals?
|
|
167
|
-
},
|
|
168
|
-
sourceType: "commonjs"
|
|
169
|
-
},
|
|
170
|
-
rules: {
|
|
171
|
-
"@typescript-eslint/no-require-imports": "off",
|
|
172
|
-
"@typescript-eslint/explicit-module-boundary-types": "off",
|
|
173
|
-
"tsdoc/syntax": "off"
|
|
174
|
-
}
|
|
175
|
-
});
|
|
176
|
-
|
|
177
|
-
// src/lib/extended-config.ts
|
|
178
|
-
import eslint from "@eslint/js";
|
|
179
|
-
import tslint from "typescript-eslint";
|
|
180
|
-
var baseExtends = tslint.config(eslint.configs.recommended, tslint.configs.stylisticTypeChecked, tslint.configs.strict);
|
|
181
|
-
export {
|
|
182
|
-
baseExtends,
|
|
183
|
-
jsConfigs,
|
|
184
|
-
tsConfig
|
|
185
|
-
};
|
|
1
|
+
/** 📦 @nexim/eslint-config v2.1.4 */
|
|
2
|
+
__dev_mode__: console.debug("📦 @nexim/eslint-config v2.1.4");
|
|
3
|
+
import stylistic from"@stylistic/eslint-plugin";import importPlugin from"eslint-plugin-import";import tsdocPlugin from"eslint-plugin-tsdoc";import*as globals from"globals";import{plugin,parser,config}from"typescript-eslint";var tsconfigRootDir=import.meta.dirname;var tsConfig=config({files:["**/*.{ts,tsx}"],languageOptions:{globals:{...globals["shared-node-browser"]},ecmaVersion:"latest",sourceType:"module",parser,parserOptions:{projectService:true,tsconfigRootDir}},extends:[importPlugin.flatConfigs.recommended,importPlugin.flatConfigs.typescript],plugins:{"@typescript-eslint":plugin,"@stylistic":stylistic,tsdoc:tsdocPlugin},rules:{"@stylistic/max-len":["error",{code:140}],"no-eval":["error",{allowIndirect:true}],"@stylistic/no-floating-decimal":"error","@stylistic/space-infix-ops":"error","@stylistic/brace-style":["error","stroustrup",{allowSingleLine:true}],"@stylistic/array-bracket-spacing":["error","always"],"@stylistic/indent":["error",2,{SwitchCase:1,VariableDeclarator:1,outerIIFEBody:1,MemberExpression:1,FunctionDeclaration:{parameters:1,body:1},FunctionExpression:{parameters:1,body:1},CallExpression:{arguments:1},ArrayExpression:1,ObjectExpression:1,ImportDeclaration:1,flatTernaryExpressions:false,ignoreComments:false,ignoredNodes:["TemplateLiteral *","TSTypeParameterInstantiation","FunctionExpression > .params[decorators.length > 0]","FunctionExpression > .params > :matches(Decorator, :not(:first-child))","ClassBody.body > PropertyDefinition[decorators.length > 0] > .key"]}],"@stylistic/operator-linebreak":["error","after",{overrides:{"?":"before",":":"before"}}],"@stylistic/semi":"error","tsdoc/syntax":"warn","no-unused-vars":"off","prefer-const":"error","no-unused-labels":"off","require-await":"error","@typescript-eslint/no-dynamic-delete":"off","@typescript-eslint/no-non-null-assertion":"off","@typescript-eslint/consistent-type-definitions":"off","@typescript-eslint/ban-ts-comment":["error"],"@typescript-eslint/no-deprecated":"error","@typescript-eslint/no-duplicate-type-constituents":"error","@typescript-eslint/no-explicit-any":"error","@typescript-eslint/no-extra-non-null-assertion":"error","no-implied-eval":"off","@typescript-eslint/no-invalid-void-type":"error","@typescript-eslint/no-misused-spread":"error","@typescript-eslint/no-non-null-asserted-nullish-coalescing":"error","@typescript-eslint/no-non-null-asserted-optional-chain":"error","@typescript-eslint/no-redundant-type-constituents":"error","@typescript-eslint/no-unnecessary-boolean-literal-compare":"error","@typescript-eslint/no-unnecessary-template-expression":"error","@typescript-eslint/no-unnecessary-type-arguments":"error","@typescript-eslint/no-unnecessary-type-assertion":"error","@typescript-eslint/no-unnecessary-type-constraint":"error","no-unused-expressions":"off","@typescript-eslint/no-unused-expressions":"error","no-useless-constructor":"off","@typescript-eslint/no-useless-constructor":"error","@typescript-eslint/no-wrapper-object-types":"error","no-throw-literal":"off","@typescript-eslint/only-throw-error":"error","@typescript-eslint/prefer-as-const":"error","prefer-promise-reject-errors":"off","@typescript-eslint/prefer-promise-reject-errors":"error","@typescript-eslint/prefer-reduce-type-parameter":"error","@typescript-eslint/require-await":"error","import/order":["error",{groups:["builtin","external","internal",["parent","sibling","index"],"object","unknown","type"],"newlines-between":"always",warnOnUnassignedImports:true,alphabetize:{order:"asc",caseInsensitive:true}}]},settings:{"import/resolver":{typescript:{alwaysTryTypes:true,project:[tsconfigRootDir]},node:{}}}});import tsdocPlugin2 from"eslint-plugin-tsdoc";import*as globals2 from"globals";import{plugin as plugin2,configs,config as config2}from"typescript-eslint";var jsConfigs=config2({extends:[configs.disableTypeChecked],files:["**/*.{mjs,js,cjs}"],plugins:{"@typescript-eslint":plugin2,tsdoc:tsdocPlugin2},languageOptions:{globals:{...globals2.commonjs,...globals2.node,console:"readonly"},sourceType:"commonjs"},rules:{"@typescript-eslint/no-require-imports":"off","@typescript-eslint/explicit-module-boundary-types":"off","tsdoc/syntax":"off"}});import eslint from"@eslint/js";import tslint from"typescript-eslint";var baseExtends=tslint.config(eslint.configs.recommended,tslint.configs.stylisticTypeChecked,tslint.configs.strict);export{baseExtends,jsConfigs,tsConfig};
|
|
186
4
|
//# sourceMappingURL=main.mjs.map
|
package/dist/main.mjs.map
CHANGED
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/lib/typescript-config.ts", "../src/lib/javascript-config.ts", "../src/lib/extended-config.ts"],
|
|
4
4
|
"sourcesContent": ["import stylistic from '@stylistic/eslint-plugin';\nimport importPlugin from 'eslint-plugin-import';\nimport tsdocPlugin from 'eslint-plugin-tsdoc';\nimport * as globals from 'globals';\nimport { plugin, parser, config } from 'typescript-eslint';\n\nconst tsconfigRootDir = import.meta.dirname;\n\nexport const tsConfig = config({\n files: [ '**/*.{ts,tsx}' ],\n languageOptions: {\n globals: {\n ...globals['shared-node-browser'],\n },\n ecmaVersion: 'latest',\n sourceType: 'module',\n parser: parser,\n parserOptions: {\n projectService: true,\n tsconfigRootDir,\n },\n },\n\n extends: [ importPlugin.flatConfigs.recommended, importPlugin.flatConfigs.typescript ],\n plugins: {\n '@typescript-eslint': plugin,\n '@stylistic': stylistic,\n tsdoc: tsdocPlugin,\n },\n rules: {\n '@stylistic/max-len': [ 'error', { code: 140 } ],\n 'no-eval': [ 'error', { allowIndirect: true } ],\n '@stylistic/no-floating-decimal': 'error', // no .5 or 2., use 0.5 or 2.0\n '@stylistic/space-infix-ops': 'error',\n '@stylistic/brace-style': [ 'error', 'stroustrup', { allowSingleLine: true } ],\n '@stylistic/array-bracket-spacing': [ 'error', 'always' ],\n '@stylistic/indent': [\n 'error',\n 2,\n {\n SwitchCase: 1,\n VariableDeclarator: 1,\n outerIIFEBody: 1,\n MemberExpression: 1,\n FunctionDeclaration: { parameters: 1, body: 1 },\n FunctionExpression: { parameters: 1, body: 1 },\n CallExpression: { arguments: 1 },\n ArrayExpression: 1,\n ObjectExpression: 1,\n ImportDeclaration: 1,\n flatTernaryExpressions: false,\n ignoreComments: false,\n ignoredNodes: [\n 'TemplateLiteral *',\n 'TSTypeParameterInstantiation',\n 'FunctionExpression > .params[decorators.length > 0]',\n 'FunctionExpression > .params > :matches(Decorator, :not(:first-child))',\n 'ClassBody.body > PropertyDefinition[decorators.length > 0] > .key',\n ],\n },\n ],\n '@stylistic/operator-linebreak': [ 'error', 'after', { overrides: { '?': 'before', ':': 'before' } } ],\n\n '@stylistic/semi': 'error',\n 'tsdoc/syntax': 'warn',\n\n 'no-unused-vars': 'off',\n 'prefer-const': 'error',\n\n 'no-unused-labels': 'off',\n 'require-await': 'error',\n\n '@typescript-eslint/no-dynamic-delete': 'off',\n '@typescript-eslint/no-non-null-assertion': 'off',\n\n // picked and customized from `stylistic-type-checked`\n '@typescript-eslint/consistent-type-definitions': 'off', // prefer interface over type\n '@typescript-eslint/ban-ts-comment': [ 'error' ], // no @ts-ignore without description\n '@typescript-eslint/no-deprecated': 'error', // catches usage of @deprecated items\n '@typescript-eslint/no-duplicate-type-constituents': 'error', // bad: type T = 'a' | 'a'\n '@typescript-eslint/no-explicit-any': 'error', // bad: const x: any\n '@typescript-eslint/no-extra-non-null-assertion': 'error', // bad: foo!!.bar\n 'no-implied-eval': 'off',\n '@typescript-eslint/no-invalid-void-type': 'error', // bad: type T = void | string\n '@typescript-eslint/no-misused-spread': 'error', // bad: [...new Set([])]\n '@typescript-eslint/no-non-null-asserted-nullish-coalescing': 'error', // bad: foo! ?? bar\n '@typescript-eslint/no-non-null-asserted-optional-chain': 'error', // bad: foo?.bar!\n '@typescript-eslint/no-redundant-type-constituents': 'error', // bad: type T = string | 'a'\n '@typescript-eslint/no-unnecessary-boolean-literal-compare': 'error', // bad: bool === true\n '@typescript-eslint/no-unnecessary-template-expression': 'error', // bad: `${5}`\n '@typescript-eslint/no-unnecessary-type-arguments': 'error', // bad: Map<string> when string is default\n '@typescript-eslint/no-unnecessary-type-assertion': 'error', // bad: x as string when x is string\n '@typescript-eslint/no-unnecessary-type-constraint': 'error', // bad: <T extends any>\n 'no-unused-expressions': 'off',\n '@typescript-eslint/no-unused-expressions': 'error', // bad: x + y;\n 'no-useless-constructor': 'off',\n '@typescript-eslint/no-useless-constructor': 'error', // bad: constructor() {}\n '@typescript-eslint/no-wrapper-object-types': 'error', // bad: String, use string\n 'no-throw-literal': 'off',\n '@typescript-eslint/only-throw-error': 'error', // bad: throw \"error\"\n '@typescript-eslint/prefer-as-const': 'error', // bad: let x: 'foo' = 'foo'\n 'prefer-promise-reject-errors': 'off',\n '@typescript-eslint/prefer-promise-reject-errors': 'error', // bad: reject('error')\n '@typescript-eslint/prefer-reduce-type-parameter': 'error', // use <T> reduce over type assertions\n '@typescript-eslint/require-await': 'error', // async must use await\n\n 'import/order': [\n 'error',\n {\n groups: [ 'builtin', 'external', 'internal', [ 'parent', 'sibling', 'index' ], 'object', 'unknown', 'type' ],\n 'newlines-between': 'always',\n warnOnUnassignedImports: true,\n alphabetize: {\n order: 'asc',\n caseInsensitive: true,\n },\n },\n ],\n },\n settings: {\n 'import/resolver': {\n typescript: {\n alwaysTryTypes: true,\n project: [ tsconfigRootDir ],\n },\n node: {},\n },\n },\n});\n", "import tsdocPlugin from 'eslint-plugin-tsdoc';\nimport * as globals from 'globals';\nimport { plugin, configs, config } from 'typescript-eslint';\n\nexport const jsConfigs = config({\n extends: [ configs.disableTypeChecked ],\n files: [ '**/*.{mjs,js,cjs}' ],\n plugins: {\n '@typescript-eslint': plugin,\n tsdoc: tsdocPlugin,\n },\n languageOptions: {\n globals: {\n ...globals.commonjs,\n ...globals.node,\n console: 'readonly', // TODO: why is this not in globals?\n },\n sourceType: 'commonjs',\n },\n rules: {\n '@typescript-eslint/no-require-imports': 'off',\n '@typescript-eslint/explicit-module-boundary-types': 'off',\n 'tsdoc/syntax': 'off',\n },\n});\n", "/* eslint-disable import/no-named-as-default-member */\n\nimport eslint from '@eslint/js';\nimport tslint from 'typescript-eslint';\n\nexport const baseExtends = tslint.config(eslint.configs.recommended, tslint.configs.stylisticTypeChecked, tslint.configs.strict);\n"],
|
|
5
|
-
"mappings": "
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["tsdocPlugin", "globals", "plugin", "config"]
|
|
7
7
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nexim/eslint-config",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.4",
|
|
4
4
|
"description": "Base Eslint configuration for Nexim projects.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"eslint",
|
|
@@ -56,28 +56,28 @@
|
|
|
56
56
|
"watch": "wireit"
|
|
57
57
|
},
|
|
58
58
|
"dependencies": {
|
|
59
|
-
"@eslint/compat": "^
|
|
60
|
-
"@eslint/js": "^9.
|
|
61
|
-
"@stylistic/eslint-plugin": "^5.
|
|
62
|
-
"@typescript-eslint/parser": "^8.
|
|
63
|
-
"eslint": "^9.
|
|
59
|
+
"@eslint/compat": "^2.0.0",
|
|
60
|
+
"@eslint/js": "^9.39.1",
|
|
61
|
+
"@stylistic/eslint-plugin": "^5.6.1",
|
|
62
|
+
"@typescript-eslint/parser": "^8.47.0",
|
|
63
|
+
"eslint": "^9.39.1",
|
|
64
64
|
"eslint-import-resolver-typescript": "^4.4.4",
|
|
65
65
|
"eslint-plugin-import": "^2.32.0",
|
|
66
|
-
"eslint-plugin-tsdoc": "^0.
|
|
67
|
-
"globals": "^16.
|
|
68
|
-
"typescript-eslint": "^8.
|
|
66
|
+
"eslint-plugin-tsdoc": "^0.5.0",
|
|
67
|
+
"globals": "^16.5.0",
|
|
68
|
+
"typescript-eslint": "^8.47.0"
|
|
69
69
|
},
|
|
70
70
|
"devDependencies": {
|
|
71
|
-
"@alwatr/nano-build": "^
|
|
72
|
-
"@alwatr/type-helper": "^5.4.
|
|
71
|
+
"@alwatr/nano-build": "^6.3.9",
|
|
72
|
+
"@alwatr/type-helper": "^5.4.4",
|
|
73
73
|
"@nexim/typescript-config": "^2.0.1",
|
|
74
74
|
"@types/eslint": "^9.6.1",
|
|
75
|
-
"@types/node": "^24.
|
|
76
|
-
"typescript": "^5.9.
|
|
75
|
+
"@types/node": "^24.10.1",
|
|
76
|
+
"typescript": "^5.9.3",
|
|
77
77
|
"wireit": "^0.14.12"
|
|
78
78
|
},
|
|
79
79
|
"peerDependencies": {
|
|
80
|
-
"@eslint/compat": ">1.0.0 <
|
|
80
|
+
"@eslint/compat": ">1.0.0 <3.0.0",
|
|
81
81
|
"eslint": ">9.0.0 <10.0.0"
|
|
82
82
|
},
|
|
83
83
|
"publishConfig": {
|
|
@@ -125,5 +125,5 @@
|
|
|
125
125
|
"service": true
|
|
126
126
|
}
|
|
127
127
|
},
|
|
128
|
-
"gitHead": "
|
|
128
|
+
"gitHead": "aa1bbda5f949163da8a2e11e658afe02aad75458"
|
|
129
129
|
}
|