@creo-team/eslint-config 2.5.5 → 4.0.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.
- package/README.md +22 -12
- package/dist/constants.js.map +1 -1
- package/dist/eslint.config.js +5 -17
- package/dist/eslint.config.js.map +1 -1
- package/dist/rules.d.ts +40 -98
- package/dist/rules.js +24 -57
- package/dist/rules.js.map +1 -1
- package/dist/structure.js.map +1 -1
- package/dist/utils.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @creo-team/eslint-config
|
|
2
2
|
|
|
3
|
-
ESLint flat config for TypeScript/React: strict type-checking, Prettier, JSDoc, complexity limits, and no magic numbers. One style and one set of rules so code stays consistent and reviewable—and so tools like Cursor and Claude can fix and generate code that matches. Works with the [ESLint MCP server](https://eslint.org/docs/latest/use/mcp).
|
|
3
|
+
ESLint flat config for TypeScript/React: strict type-checking, Prettier, JSDoc, complexity limits, async correctness, and no magic numbers. One style and one set of rules so code stays consistent and reviewable — and so tools like Cursor and Claude can fix and generate code that matches. Works with the [ESLint MCP server](https://eslint.org/docs/latest/use/mcp).
|
|
4
4
|
|
|
5
5
|
[](https://www.npmjs.com/package/@creo-team/eslint-config)
|
|
6
6
|
[](./LICENSE)
|
|
@@ -79,8 +79,8 @@ module.exports = createConfig({
|
|
|
79
79
|
"fix": "eslint . --fix"
|
|
80
80
|
},
|
|
81
81
|
"devDependencies": {
|
|
82
|
-
"@creo-team/eslint-config": "^
|
|
83
|
-
"eslint": "^9.39.
|
|
82
|
+
"@creo-team/eslint-config": "^3.0.0",
|
|
83
|
+
"eslint": "^9.39.4"
|
|
84
84
|
}
|
|
85
85
|
}
|
|
86
86
|
```
|
|
@@ -252,13 +252,16 @@ module.exports = [
|
|
|
252
252
|
|
|
253
253
|
| Rule / area | Benefit |
|
|
254
254
|
|-------------|--------|
|
|
255
|
-
| **Strict type-checked** (typescript-eslint) | Catches type errors and unsafe `any` before runtime. Fewer “works until it doesn’t” bugs
|
|
256
|
-
| **JSDoc** (params, returns, descriptions) | Public API is self-describing. IDE hints and “go to definition”
|
|
257
|
-
| **complexity (max 15)** | Branches and conditionals stay bounded. Functions stay testable and easier to reason about
|
|
258
|
-
| **max-lines-per-function (200)** | Long functions get split. Easier to name, test, and reuse
|
|
259
|
-
| **no-magic-numbers (warn)** | Literals become named constants. Changing a threshold or status code happens in one place
|
|
260
|
-
| **
|
|
261
|
-
| **
|
|
255
|
+
| **Strict type-checked** (typescript-eslint) | Catches type errors and unsafe `any` before runtime. Fewer “works until it doesn’t” bugs |
|
|
256
|
+
| **JSDoc** (params, returns, descriptions) | Public API is self-describing. IDE hints and “go to definition” work without opening the implementation |
|
|
257
|
+
| **complexity (max 15)** | Branches and conditionals stay bounded. Functions stay testable and easier to reason about |
|
|
258
|
+
| **max-lines-per-function (200)** | Long functions get split. Easier to name, test, and reuse |
|
|
259
|
+
| **no-magic-numbers (warn)** | Literals become named constants. Changing a threshold or status code happens in one place |
|
|
260
|
+
| **no-promise-executor-return** | Catches returning values from Promise executors — always a bug |
|
|
261
|
+
| **no-await-in-loop (warn)** | Flags sequential awaits that should be `Promise.all()` |
|
|
262
|
+
| **no-console (warn)** | Catches leftover debug logging, especially from AI-generated code |
|
|
263
|
+
| **Import rules** (no-cycle, order, resolver) | No circular deps; consistent import order; TypeScript path resolution works |
|
|
264
|
+
| **Prettier** | One formatter. No style churn in code review |
|
|
262
265
|
|
|
263
266
|
**LLM- and assistant-friendly.** Cursor, Claude, and other tools behave better when the codebase is consistent and documented. This config enforces one style (so generated code matches), requires JSDoc on public surfaces (so the model has context), and keeps complexity and magic numbers in check (so suggestions stay in the same style and refactors are local). Use the [ESLint MCP server](https://eslint.org/docs/latest/use/mcp) so the assistant can run ESLint and fix violations in your editor.
|
|
264
267
|
|
|
@@ -358,10 +361,17 @@ Import rule values and presets — no magic strings:
|
|
|
358
361
|
|
|
359
362
|
- **TypeScript ESLint** — recommended + strict type-checked, stylistic
|
|
360
363
|
- **Prettier** — formatting (tabs, 120 print width, no semicolons)
|
|
361
|
-
- **JSDoc** — require descriptions, params, returns
|
|
364
|
+
- **JSDoc** — require descriptions, params, returns on declarations/methods (not arrow functions)
|
|
362
365
|
- **Import** — order, no cycles, resolver TypeScript
|
|
363
366
|
- **Perfectionist** — alphabetical sort (imports sort disabled)
|
|
364
|
-
- **
|
|
367
|
+
- **Async correctness** — no-promise-executor-return (error), no-await-in-loop (warn)
|
|
368
|
+
- **Quality** — complexity (max 15), max-lines, max-lines-per-function, no-magic-numbers (warn), no-console (warn)
|
|
369
|
+
|
|
370
|
+
## Docs
|
|
371
|
+
|
|
372
|
+
- [ESLINT-STANDARDS.md](./docs/ESLINT-STANDARDS.md) — architecture and rule philosophy
|
|
373
|
+
- [ESLINT-AUDIT.md](./docs/ESLINT-AUDIT.md) — v3.0.0 audit findings and decisions
|
|
374
|
+
- [AI-CODE-STANDARDS.md](./docs/AI-CODE-STANDARDS.md) — guidelines for AI assistants
|
|
365
375
|
|
|
366
376
|
## Release flow
|
|
367
377
|
|
package/dist/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../constants.js"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../constants.js"],"names":[],"mappings":";AAkBA,MAAM,GAAG,GAAG,KAAK,CAAA;AACjB,MAAM,IAAI,GAAG,MAAM,CAAA;AACnB,MAAM,KAAK,GAAG,OAAO,CAAA;AAErB,MAAM,MAAM,GAAG,QAAQ,CAAA;AACvB,MAAM,KAAK,GAAG,OAAO,CAAA;AACrB,MAAM,IAAI,GAAG,MAAM,CAAA;AACnB,MAAM,GAAG,GAAG,KAAK,CAAA;AAEjB,MAAM,YAAY,GAAG;IACpB,SAAS,EAAE,WAAW;IACtB,UAAU,EAAE,YAAY;IACxB,SAAS,EAAE,YAAY;CACvB,CAAA;AAED,MAAM,cAAc,GAAG;IACtB,OAAO,EAAE,SAAS;IAClB,UAAU,EAAE,YAAY;IACxB,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,UAAU;CACpB,CAAA;AAED,MAAM,uBAAuB,GAAG;IAC/B,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,OAAO,EAAE;IACtE,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,YAAY,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,MAAM,EAAE;IAC9F,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,YAAY,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE;IAChG,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE;IACxE,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,UAAU,EAAE;CAC1E,CAAA;AAED,MAAM,sCAAsC,GAAG;IAC9C,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,OAAO,EAAE;IACtE,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,YAAY,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,MAAM,EAAE;IAC9F;QACC,MAAM,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,YAAY,CAAC,UAAU,EAAE,YAAY,CAAC,SAAS,CAAC;QACjF,QAAQ,EAAE,cAAc,CAAC,QAAQ;KACjC;IACD,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE;IACxE,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,UAAU,EAAE;CAC1E,CAAA;AAED,MAAM,gBAAgB,GAAG;IACxB,OAAO,EAAE,uBAAuB;IAChC,sBAAsB,EAAE,sCAAsC;CAC9D,CAAA;AAED,MAAM,YAAY,GAAG;IACpB,QAAQ,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC;CACjC,CAAA;AAED,MAAM,YAAY,GAAG;IACpB,SAAS,EAAE,WAAW;IACtB,SAAS,EAAE,WAAW;IACtB,UAAU,EAAE,YAAY;CACxB,CAAA;AAED,MAAM,kBAAkB,GAAG;IAC1B,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,eAAe,EAAE,iBAAiB;IAClC,KAAK,EAAE,OAAO;IACd,GAAG,EAAE,KAAK;CACV,CAAA;AAED,MAAM,CAAC,OAAO,GAAG;IAChB,GAAG;IACH,MAAM;IACN,kBAAkB;IAClB,KAAK;IACL,YAAY;IACZ,YAAY;IACZ,gBAAgB;IAChB,YAAY;IACZ,cAAc;IACd,KAAK;IACL,IAAI;IACJ,GAAG;IACH,IAAI;CACJ,CAAA"}
|
package/dist/eslint.config.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
const eslint = require('@eslint/js');
|
|
3
3
|
const pluginStylistic = require('@stylistic/eslint-plugin');
|
|
4
|
-
const pluginImport = require('eslint-plugin-import');
|
|
4
|
+
const pluginImport = require('eslint-plugin-import-x');
|
|
5
|
+
const { createTypeScriptImportResolver } = require('eslint-import-resolver-typescript');
|
|
5
6
|
const jsdoc = require('eslint-plugin-jsdoc');
|
|
6
7
|
const perfectionist = require('eslint-plugin-perfectionist');
|
|
7
8
|
const prettier = require('eslint-plugin-prettier');
|
|
@@ -39,13 +40,6 @@ function createConfig(options = {}) {
|
|
|
39
40
|
}
|
|
40
41
|
const configBlocks = [
|
|
41
42
|
{ ignores },
|
|
42
|
-
{
|
|
43
|
-
files: ['constants.js', 'rules.js'],
|
|
44
|
-
rules: {
|
|
45
|
-
'@typescript-eslint/naming-convention': off,
|
|
46
|
-
'perfectionist/sort-objects': off,
|
|
47
|
-
},
|
|
48
|
-
},
|
|
49
43
|
...(projectStructureBlock ? [projectStructureBlock] : []),
|
|
50
44
|
eslint.configs.recommended,
|
|
51
45
|
...tsEslint.configs.recommendedTypeChecked,
|
|
@@ -69,18 +63,13 @@ function createConfig(options = {}) {
|
|
|
69
63
|
},
|
|
70
64
|
plugins: {
|
|
71
65
|
'@stylistic': pluginStylistic,
|
|
72
|
-
import: pluginImport,
|
|
66
|
+
'import-x': pluginImport,
|
|
73
67
|
jsdoc,
|
|
74
68
|
prettier,
|
|
75
69
|
},
|
|
76
|
-
rules
|
|
77
|
-
...rules,
|
|
78
|
-
'@typescript-eslint/no-misused-spread': off,
|
|
79
|
-
},
|
|
70
|
+
rules,
|
|
80
71
|
settings: {
|
|
81
|
-
'import/resolver':
|
|
82
|
-
typescript: {},
|
|
83
|
-
},
|
|
72
|
+
'import-x/resolver-next': [createTypeScriptImportResolver()],
|
|
84
73
|
},
|
|
85
74
|
},
|
|
86
75
|
{
|
|
@@ -92,7 +81,6 @@ function createConfig(options = {}) {
|
|
|
92
81
|
rules: {
|
|
93
82
|
...rules,
|
|
94
83
|
'@typescript-eslint/naming-convention': ['error', ...namingConvention.default],
|
|
95
|
-
'@typescript-eslint/no-misused-spread': off,
|
|
96
84
|
'@typescript-eslint/no-unsafe-return': off,
|
|
97
85
|
},
|
|
98
86
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eslint.config.js","sourceRoot":"","sources":["../eslint.config.js"],"names":[],"mappings":";AAEA,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;AACpC,MAAM,eAAe,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAA;AAC3D,MAAM,YAAY,GAAG,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"eslint.config.js","sourceRoot":"","sources":["../eslint.config.js"],"names":[],"mappings":"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"}
|
package/dist/rules.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
export const commonjsPreventRules: {
|
|
2
2
|
'@typescript-eslint/no-require-imports': string;
|
|
3
|
-
'import/no-amd': string;
|
|
4
|
-
'import/no-commonjs': string;
|
|
5
|
-
'import/no-default-export': string;
|
|
3
|
+
'import-x/no-amd': string;
|
|
4
|
+
'import-x/no-commonjs': string;
|
|
5
|
+
'import-x/no-default-export': string;
|
|
6
6
|
};
|
|
7
7
|
export const jsDoc: {
|
|
8
8
|
'jsdoc/require-description-complete-sentence': string;
|
|
@@ -60,6 +60,7 @@ export const rules: {
|
|
|
60
60
|
})[];
|
|
61
61
|
'@typescript-eslint/no-explicit-any': string;
|
|
62
62
|
'@typescript-eslint/no-extraneous-class': string;
|
|
63
|
+
'@typescript-eslint/no-misused-spread': string;
|
|
63
64
|
'@typescript-eslint/no-unnecessary-condition': string;
|
|
64
65
|
'@typescript-eslint/no-unsafe-argument': string;
|
|
65
66
|
'@typescript-eslint/no-unsafe-assignment': string;
|
|
@@ -72,22 +73,21 @@ export const rules: {
|
|
|
72
73
|
max: number;
|
|
73
74
|
})[];
|
|
74
75
|
'dot-notation': string;
|
|
75
|
-
'
|
|
76
|
-
'import/
|
|
77
|
-
'import/
|
|
78
|
-
'import/newline-after-import': (string | {
|
|
76
|
+
'import-x/first': string;
|
|
77
|
+
'import-x/named': string;
|
|
78
|
+
'import-x/newline-after-import': (string | {
|
|
79
79
|
count: number;
|
|
80
80
|
})[];
|
|
81
|
-
'import/no-absolute-path': string;
|
|
82
|
-
'import/no-cycle': string;
|
|
83
|
-
'import/no-duplicates': string;
|
|
84
|
-
'import/no-empty-named-blocks': string;
|
|
85
|
-
'import/no-relative-packages': string;
|
|
86
|
-
'import/no-self-import': string;
|
|
87
|
-
'import/no-unresolved': string;
|
|
88
|
-
'import/no-unused-modules': string;
|
|
89
|
-
'import/no-useless-path-segments': string;
|
|
90
|
-
'import/prefer-default-export': string;
|
|
81
|
+
'import-x/no-absolute-path': string;
|
|
82
|
+
'import-x/no-cycle': string;
|
|
83
|
+
'import-x/no-duplicates': string;
|
|
84
|
+
'import-x/no-empty-named-blocks': string;
|
|
85
|
+
'import-x/no-relative-packages': string;
|
|
86
|
+
'import-x/no-self-import': string;
|
|
87
|
+
'import-x/no-unresolved': string;
|
|
88
|
+
'import-x/no-unused-modules': string;
|
|
89
|
+
'import-x/no-useless-path-segments': string;
|
|
90
|
+
'import-x/prefer-default-export': string;
|
|
91
91
|
'max-classes-per-file': (string | {
|
|
92
92
|
ignoreExpressions: boolean;
|
|
93
93
|
max: number;
|
|
@@ -99,17 +99,15 @@ export const rules: {
|
|
|
99
99
|
})[];
|
|
100
100
|
'max-lines-per-function': (string | number)[];
|
|
101
101
|
'newline-before-return': string;
|
|
102
|
-
'no-
|
|
102
|
+
'no-await-in-loop': string;
|
|
103
|
+
'no-console': string;
|
|
103
104
|
'no-magic-numbers': (string | {
|
|
104
105
|
enforceConst: boolean;
|
|
105
106
|
ignore: number[];
|
|
106
107
|
ignoreArrayIndexes: boolean;
|
|
107
108
|
ignoreDefaultValues: boolean;
|
|
108
109
|
})[];
|
|
109
|
-
'no-
|
|
110
|
-
'no-multiple-empty-lines': (string | {
|
|
111
|
-
max: number;
|
|
112
|
-
})[];
|
|
110
|
+
'no-promise-executor-return': string;
|
|
113
111
|
'no-restricted-imports': string;
|
|
114
112
|
'no-unsafe-member-access': string;
|
|
115
113
|
'object-curly-newline': string;
|
|
@@ -118,21 +116,6 @@ export const rules: {
|
|
|
118
116
|
balanced: boolean;
|
|
119
117
|
};
|
|
120
118
|
})[];
|
|
121
|
-
'@stylistic/block-spacing': string[];
|
|
122
|
-
'@stylistic/brace-style': string[];
|
|
123
|
-
'@stylistic/comma-dangle': string[];
|
|
124
|
-
'@stylistic/comma-spacing': (string | {
|
|
125
|
-
before: boolean;
|
|
126
|
-
})[];
|
|
127
|
-
'@stylistic/function-call-spacing': string[];
|
|
128
|
-
'@stylistic/key-spacing': (string | {
|
|
129
|
-
afterColon: boolean;
|
|
130
|
-
beforeColon: boolean;
|
|
131
|
-
})[];
|
|
132
|
-
'@stylistic/keyword-spacing': (string | {
|
|
133
|
-
after: boolean;
|
|
134
|
-
before: boolean;
|
|
135
|
-
})[];
|
|
136
119
|
'@stylistic/lines-around-comment': (string | {
|
|
137
120
|
allowArrayStart: boolean;
|
|
138
121
|
allowBlockStart: boolean;
|
|
@@ -153,18 +136,6 @@ export const rules: {
|
|
|
153
136
|
exceptAfterSingleLine: boolean;
|
|
154
137
|
enforce?: undefined;
|
|
155
138
|
})[];
|
|
156
|
-
'@stylistic/member-delimiter-style': (string | {
|
|
157
|
-
multiline: {
|
|
158
|
-
delimiter: string;
|
|
159
|
-
};
|
|
160
|
-
})[];
|
|
161
|
-
'@stylistic/no-extra-parens': string[];
|
|
162
|
-
'@stylistic/padding-line-between-statements': string;
|
|
163
|
-
'@stylistic/quote-props': string[];
|
|
164
|
-
'@stylistic/semi': string[];
|
|
165
|
-
'@stylistic/space-before-blocks': string[];
|
|
166
|
-
'@stylistic/space-infix-ops': string;
|
|
167
|
-
'@stylistic/type-annotation-spacing': string;
|
|
168
139
|
'jsdoc/require-description-complete-sentence': string;
|
|
169
140
|
'jsdoc/require-hyphen-before-param-description': string;
|
|
170
141
|
'jsdoc/require-jsdoc': (string | {
|
|
@@ -203,26 +174,11 @@ export const rules: {
|
|
|
203
174
|
useTabs: boolean;
|
|
204
175
|
})[];
|
|
205
176
|
'@typescript-eslint/no-require-imports': string;
|
|
206
|
-
'import/no-amd': string;
|
|
207
|
-
'import/no-commonjs': string;
|
|
208
|
-
'import/no-default-export': string;
|
|
177
|
+
'import-x/no-amd': string;
|
|
178
|
+
'import-x/no-commonjs': string;
|
|
179
|
+
'import-x/no-default-export': string;
|
|
209
180
|
};
|
|
210
181
|
export const stylisticTs: {
|
|
211
|
-
'@stylistic/block-spacing': string[];
|
|
212
|
-
'@stylistic/brace-style': string[];
|
|
213
|
-
'@stylistic/comma-dangle': string[];
|
|
214
|
-
'@stylistic/comma-spacing': (string | {
|
|
215
|
-
before: boolean;
|
|
216
|
-
})[];
|
|
217
|
-
'@stylistic/function-call-spacing': string[];
|
|
218
|
-
'@stylistic/key-spacing': (string | {
|
|
219
|
-
afterColon: boolean;
|
|
220
|
-
beforeColon: boolean;
|
|
221
|
-
})[];
|
|
222
|
-
'@stylistic/keyword-spacing': (string | {
|
|
223
|
-
after: boolean;
|
|
224
|
-
before: boolean;
|
|
225
|
-
})[];
|
|
226
182
|
'@stylistic/lines-around-comment': (string | {
|
|
227
183
|
allowArrayStart: boolean;
|
|
228
184
|
allowBlockStart: boolean;
|
|
@@ -243,18 +199,6 @@ export const stylisticTs: {
|
|
|
243
199
|
exceptAfterSingleLine: boolean;
|
|
244
200
|
enforce?: undefined;
|
|
245
201
|
})[];
|
|
246
|
-
'@stylistic/member-delimiter-style': (string | {
|
|
247
|
-
multiline: {
|
|
248
|
-
delimiter: string;
|
|
249
|
-
};
|
|
250
|
-
})[];
|
|
251
|
-
'@stylistic/no-extra-parens': string[];
|
|
252
|
-
'@stylistic/padding-line-between-statements': string;
|
|
253
|
-
'@stylistic/quote-props': string[];
|
|
254
|
-
'@stylistic/semi': string[];
|
|
255
|
-
'@stylistic/space-before-blocks': string[];
|
|
256
|
-
'@stylistic/space-infix-ops': string;
|
|
257
|
-
'@stylistic/type-annotation-spacing': string;
|
|
258
202
|
};
|
|
259
203
|
export const tsEslint: {
|
|
260
204
|
'@typescript-eslint/array-type': string;
|
|
@@ -270,6 +214,7 @@ export const tsEslint: {
|
|
|
270
214
|
})[];
|
|
271
215
|
'@typescript-eslint/no-explicit-any': string;
|
|
272
216
|
'@typescript-eslint/no-extraneous-class': string;
|
|
217
|
+
'@typescript-eslint/no-misused-spread': string;
|
|
273
218
|
'@typescript-eslint/no-unnecessary-condition': string;
|
|
274
219
|
'@typescript-eslint/no-unsafe-argument': string;
|
|
275
220
|
'@typescript-eslint/no-unsafe-assignment': string;
|
|
@@ -282,22 +227,21 @@ export const tsEslint: {
|
|
|
282
227
|
max: number;
|
|
283
228
|
})[];
|
|
284
229
|
'dot-notation': string;
|
|
285
|
-
'
|
|
286
|
-
'import/
|
|
287
|
-
'import/
|
|
288
|
-
'import/newline-after-import': (string | {
|
|
230
|
+
'import-x/first': string;
|
|
231
|
+
'import-x/named': string;
|
|
232
|
+
'import-x/newline-after-import': (string | {
|
|
289
233
|
count: number;
|
|
290
234
|
})[];
|
|
291
|
-
'import/no-absolute-path': string;
|
|
292
|
-
'import/no-cycle': string;
|
|
293
|
-
'import/no-duplicates': string;
|
|
294
|
-
'import/no-empty-named-blocks': string;
|
|
295
|
-
'import/no-relative-packages': string;
|
|
296
|
-
'import/no-self-import': string;
|
|
297
|
-
'import/no-unresolved': string;
|
|
298
|
-
'import/no-unused-modules': string;
|
|
299
|
-
'import/no-useless-path-segments': string;
|
|
300
|
-
'import/prefer-default-export': string;
|
|
235
|
+
'import-x/no-absolute-path': string;
|
|
236
|
+
'import-x/no-cycle': string;
|
|
237
|
+
'import-x/no-duplicates': string;
|
|
238
|
+
'import-x/no-empty-named-blocks': string;
|
|
239
|
+
'import-x/no-relative-packages': string;
|
|
240
|
+
'import-x/no-self-import': string;
|
|
241
|
+
'import-x/no-unresolved': string;
|
|
242
|
+
'import-x/no-unused-modules': string;
|
|
243
|
+
'import-x/no-useless-path-segments': string;
|
|
244
|
+
'import-x/prefer-default-export': string;
|
|
301
245
|
'max-classes-per-file': (string | {
|
|
302
246
|
ignoreExpressions: boolean;
|
|
303
247
|
max: number;
|
|
@@ -309,17 +253,15 @@ export const tsEslint: {
|
|
|
309
253
|
})[];
|
|
310
254
|
'max-lines-per-function': (string | number)[];
|
|
311
255
|
'newline-before-return': string;
|
|
312
|
-
'no-
|
|
256
|
+
'no-await-in-loop': string;
|
|
257
|
+
'no-console': string;
|
|
313
258
|
'no-magic-numbers': (string | {
|
|
314
259
|
enforceConst: boolean;
|
|
315
260
|
ignore: number[];
|
|
316
261
|
ignoreArrayIndexes: boolean;
|
|
317
262
|
ignoreDefaultValues: boolean;
|
|
318
263
|
})[];
|
|
319
|
-
'no-
|
|
320
|
-
'no-multiple-empty-lines': (string | {
|
|
321
|
-
max: number;
|
|
322
|
-
})[];
|
|
264
|
+
'no-promise-executor-return': string;
|
|
323
265
|
'no-restricted-imports': string;
|
|
324
266
|
'no-unsafe-member-access': string;
|
|
325
267
|
'object-curly-newline': string;
|
package/dist/rules.js
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
const { all, always, error, namingConvention, never,
|
|
2
|
+
const { all, always, error, namingConvention, never, off, warn } = require('./constants.js');
|
|
3
3
|
const maxClasses = 1;
|
|
4
4
|
const maxComplexity = 15;
|
|
5
5
|
const maxLinesPerFile = 400;
|
|
6
6
|
const maxLinesPerFunction = 200;
|
|
7
|
-
const maxConsecutiveEmptyLines = 1;
|
|
8
7
|
const printWidth = 120;
|
|
9
8
|
const tabWidth = 4;
|
|
10
9
|
const newlineCount = 1;
|
|
@@ -15,7 +14,7 @@ const jsDoc = {
|
|
|
15
14
|
error,
|
|
16
15
|
{
|
|
17
16
|
require: {
|
|
18
|
-
ArrowFunctionExpression:
|
|
17
|
+
ArrowFunctionExpression: false,
|
|
19
18
|
ClassDeclaration: false,
|
|
20
19
|
ClassExpression: true,
|
|
21
20
|
FunctionDeclaration: true,
|
|
@@ -56,25 +55,6 @@ const prettier = {
|
|
|
56
55
|
],
|
|
57
56
|
};
|
|
58
57
|
const stylisticTs = {
|
|
59
|
-
'@stylistic/block-spacing': [error, always],
|
|
60
|
-
'@stylistic/brace-style': [error, '1tbs'],
|
|
61
|
-
'@stylistic/comma-dangle': [error, 'always-multiline'],
|
|
62
|
-
'@stylistic/comma-spacing': [error, { before: false }],
|
|
63
|
-
'@stylistic/function-call-spacing': [error, never],
|
|
64
|
-
'@stylistic/key-spacing': [
|
|
65
|
-
error,
|
|
66
|
-
{
|
|
67
|
-
afterColon: true,
|
|
68
|
-
beforeColon: false,
|
|
69
|
-
},
|
|
70
|
-
],
|
|
71
|
-
'@stylistic/keyword-spacing': [
|
|
72
|
-
error,
|
|
73
|
-
{
|
|
74
|
-
after: true,
|
|
75
|
-
before: true,
|
|
76
|
-
},
|
|
77
|
-
],
|
|
78
58
|
'@stylistic/lines-around-comment': [
|
|
79
59
|
error,
|
|
80
60
|
{
|
|
@@ -98,19 +78,6 @@ const stylisticTs = {
|
|
|
98
78
|
},
|
|
99
79
|
{ exceptAfterSingleLine: true },
|
|
100
80
|
],
|
|
101
|
-
'@stylistic/member-delimiter-style': [
|
|
102
|
-
error,
|
|
103
|
-
{
|
|
104
|
-
multiline: { delimiter: none },
|
|
105
|
-
},
|
|
106
|
-
],
|
|
107
|
-
'@stylistic/no-extra-parens': [error, 'functions'],
|
|
108
|
-
'@stylistic/padding-line-between-statements': off,
|
|
109
|
-
'@stylistic/quote-props': [error, 'as-needed'],
|
|
110
|
-
'@stylistic/semi': [error, never],
|
|
111
|
-
'@stylistic/space-before-blocks': [error, always],
|
|
112
|
-
'@stylistic/space-infix-ops': error,
|
|
113
|
-
'@stylistic/type-annotation-spacing': error,
|
|
114
81
|
};
|
|
115
82
|
const tsEslint = {
|
|
116
83
|
'@typescript-eslint/array-type': error,
|
|
@@ -121,9 +88,10 @@ const tsEslint = {
|
|
|
121
88
|
'@typescript-eslint/consistent-type-imports': error,
|
|
122
89
|
'@typescript-eslint/dot-notation': error,
|
|
123
90
|
'@typescript-eslint/naming-convention': [error, ...namingConvention.default],
|
|
124
|
-
'@typescript-eslint/no-explicit-any':
|
|
91
|
+
'@typescript-eslint/no-explicit-any': warn,
|
|
125
92
|
'@typescript-eslint/no-extraneous-class': off,
|
|
126
|
-
'@typescript-eslint/no-
|
|
93
|
+
'@typescript-eslint/no-misused-spread': off,
|
|
94
|
+
'@typescript-eslint/no-unnecessary-condition': warn,
|
|
127
95
|
'@typescript-eslint/no-unsafe-argument': warn,
|
|
128
96
|
'@typescript-eslint/no-unsafe-assignment': off,
|
|
129
97
|
'@typescript-eslint/no-unsafe-call': off,
|
|
@@ -133,25 +101,25 @@ const tsEslint = {
|
|
|
133
101
|
'@typescript-eslint/unbound-method': off,
|
|
134
102
|
complexity: [error, { max: maxComplexity }],
|
|
135
103
|
'dot-notation': off,
|
|
136
|
-
'
|
|
137
|
-
'import/
|
|
138
|
-
'import/
|
|
139
|
-
'import/
|
|
140
|
-
'import/no-
|
|
141
|
-
'import/no-
|
|
142
|
-
'import/no-
|
|
143
|
-
'import/no-
|
|
144
|
-
'import/no-
|
|
145
|
-
'import/no-
|
|
146
|
-
'import/no-
|
|
147
|
-
'import/no-
|
|
148
|
-
'import/
|
|
149
|
-
'import/prefer-default-export': off,
|
|
104
|
+
'import-x/first': error,
|
|
105
|
+
'import-x/named': error,
|
|
106
|
+
'import-x/newline-after-import': [error, { count: newlineCount }],
|
|
107
|
+
'import-x/no-absolute-path': error,
|
|
108
|
+
'import-x/no-cycle': error,
|
|
109
|
+
'import-x/no-duplicates': error,
|
|
110
|
+
'import-x/no-empty-named-blocks': error,
|
|
111
|
+
'import-x/no-relative-packages': error,
|
|
112
|
+
'import-x/no-self-import': error,
|
|
113
|
+
'import-x/no-unresolved': error,
|
|
114
|
+
'import-x/no-unused-modules': off,
|
|
115
|
+
'import-x/no-useless-path-segments': error,
|
|
116
|
+
'import-x/prefer-default-export': off,
|
|
150
117
|
'max-classes-per-file': [error, { ignoreExpressions: true, max: maxClasses }],
|
|
151
118
|
'max-lines': [error, { max: maxLinesPerFile, skipBlankLines: true, skipComments: true }],
|
|
152
119
|
'max-lines-per-function': [error, maxLinesPerFunction],
|
|
153
120
|
'newline-before-return': error,
|
|
154
|
-
'no-
|
|
121
|
+
'no-await-in-loop': warn,
|
|
122
|
+
'no-console': warn,
|
|
155
123
|
'no-magic-numbers': [
|
|
156
124
|
warn,
|
|
157
125
|
{
|
|
@@ -161,8 +129,7 @@ const tsEslint = {
|
|
|
161
129
|
ignoreDefaultValues: true,
|
|
162
130
|
},
|
|
163
131
|
],
|
|
164
|
-
'no-
|
|
165
|
-
'no-multiple-empty-lines': [error, { max: maxConsecutiveEmptyLines }],
|
|
132
|
+
'no-promise-executor-return': error,
|
|
166
133
|
'no-restricted-imports': off,
|
|
167
134
|
'no-unsafe-member-access': off,
|
|
168
135
|
'object-curly-newline': off,
|
|
@@ -170,9 +137,9 @@ const tsEslint = {
|
|
|
170
137
|
};
|
|
171
138
|
const commonjsPreventRules = {
|
|
172
139
|
'@typescript-eslint/no-require-imports': off,
|
|
173
|
-
'import/no-amd': off,
|
|
174
|
-
'import/no-commonjs': off,
|
|
175
|
-
'import/no-default-export': off,
|
|
140
|
+
'import-x/no-amd': off,
|
|
141
|
+
'import-x/no-commonjs': off,
|
|
142
|
+
'import-x/no-default-export': off,
|
|
176
143
|
};
|
|
177
144
|
const rulesToDisable = {
|
|
178
145
|
'perfectionist/sort-imports': off,
|
package/dist/rules.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rules.js","sourceRoot":"","sources":["../rules.js"],"names":[],"mappings":";AAAA,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"rules.js","sourceRoot":"","sources":["../rules.js"],"names":[],"mappings":"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"}
|
package/dist/structure.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"structure.js","sourceRoot":"","sources":["../structure.js"],"names":[],"mappings":"AAAA,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"structure.js","sourceRoot":"","sources":["../structure.js"],"names":[],"mappings":"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"}
|
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../utils.js"],"names":[],"mappings":";AAAA,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;AACpC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;AAOzC,SAAS,KAAK,CAAC,OAAO;IACrB,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../utils.js"],"names":[],"mappings":";AAAA,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;AACpC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;AAOzC,SAAS,KAAK,CAAC,OAAO;IACrB,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;QAE9B,OAAO,CAAC,KAAK,CAAC,aAAa,OAAO,EAAE,CAAC,CAAA;IACtC,CAAC;AACF,CAAC;AAWD,SAAS,eAAe,CACvB,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,sBAAsB,EAClE,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,eAAe,EACtE,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,OAAO,CAAC,GAAG,EAAE;IAExD,IAAI,UAAU,GAAG,QAAQ,CAAA;IAEzB,KAAK,CAAC,wBAAwB,UAAU,qBAAqB,UAAU,GAAG,CAAC,CAAA;IAE3E,OAAO,UAAU,EAAE,CAAC;QACnB,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;QAE/C,KAAK,CAAC,gBAAgB,UAAU,aAAa,CAAC,CAAA;QAE9C,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC5B,KAAK,CAAC,UAAU,UAAU,SAAS,UAAU,GAAG,CAAC,CAAA;YAEjD,OAAO,UAAU,CAAA;QAClB,CAAC;QAED,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;QACrC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC9B,KAAK,CAAC,+CAA+C,UAAU,GAAG,CAAC,CAAA;YACnE,MAAK;QACN,CAAC;QAED,UAAU,GAAG,SAAS,CAAA;IACvB,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAA;IACjD,KAAK,CAAC,wBAAwB,YAAY,SAAS,YAAY,GAAG,CAAC,CAAA;IAEnE,OAAO,YAAY,CAAA;AACpB,CAAC;AAED,MAAM,CAAC,OAAO,GAAG;IAChB,KAAK;IACL,eAAe;CACf,CAAA"}
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@creo-team/eslint-config","version":"
|
|
1
|
+
{"name":"@creo-team/eslint-config","version":"4.0.0","description":"ESLint flat config: TypeScript (strict), Prettier, JSDoc, complexity, no-magic-numbers. createConfig() for options.","author":"Colten Krauter <coltenkrauter>","main":"dist/eslint.config.js","homepage":"https://github.com/creo-team/eslint-config","repository":{"type":"git","url":"git+https://github.com/creo-team/eslint-config.git"},"scripts":{"build":"tsc","fix":"npm run lint -- --fix","lint":"npx eslint .","prepublishOnly":"npm run build","test":"vitest run && npm run lint","test:watch":"vitest","typecheck":"tsc --noEmit","upgrade:all":"npx npm-check-updates --upgrade && npm install"},"keywords":["eslint","eslint-config","creo-team","flat-config","typescript","prettier","jsdoc","linting","lint"],"license":"ISC","dependencies":{"@eslint/js":"^10.0.1","@stylistic/eslint-plugin":"^5.10.0","eslint":"^10.1.0","eslint-import-resolver-typescript":"^4.4.4","eslint-plugin-import-x":"^4.16.2","eslint-plugin-jsdoc":"^62.8.0","eslint-plugin-perfectionist":"^5.7.0","eslint-plugin-prettier":"^5.5.5","typescript":"^5.9.3","typescript-eslint":"^8.57.2"},"files":["dist/eslint.config.js","dist/rules.js","dist/utils.js","dist/constants.js","dist/structure.js","dist/*.d.ts","dist/*.js.map"],"type":"commonjs","devDependencies":{"react":"^19.2.4","react-dom":"^19.2.4","vitest":"^3.2.4"},"engines":{"node":">=20.0.0","npm":">=10"},"publishConfig":{"access":"public"},"exports":{".":{"require":"./dist/eslint.config.js","default":"./dist/eslint.config.js"},"./constants":{"require":"./dist/constants.js","default":"./dist/constants.js"}}}
|