@enormora/eslint-config-base-with-prettier 0.0.4 → 0.0.6

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/constants.js CHANGED
@@ -1,3 +1,4 @@
1
1
  export const ecmaVersion = 2025;
2
2
  export const indentSize = 4;
3
- export const javascriptExtensions = [ '.js', '.cjs', '.mjs' ];
3
+ export const javascriptExtensions = ['.js', '.cjs', '.mjs'];
4
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../configs/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI;AAC/B,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC;AAC3B,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAE"}
package/package.json CHANGED
@@ -1,7 +1,10 @@
1
1
  {
2
2
  "author": "Mathias Schreck <schreck.mathias@gmail.com>",
3
3
  "contributors": [
4
- "Christian Rackerseder <github@echooff.de>"
4
+ {
5
+ "email": "github@echooff.de",
6
+ "name": "Christian Rackerseder"
7
+ }
5
8
  ],
6
9
  "dependencies": {
7
10
  "@ben_12/eslint-simple-parser": "0.1.0",
@@ -12,14 +15,18 @@
12
15
  "eslint-plugin-array-func": "5.1.1",
13
16
  "eslint-plugin-destructuring": "2.2.1",
14
17
  "eslint-plugin-import-x": "4.16.2",
18
+ "eslint-plugin-json-schema-validator": "6.2.0",
15
19
  "eslint-plugin-markdown-links": "0.9.0",
16
20
  "eslint-plugin-markdown-preferences": "0.41.1",
17
21
  "eslint-plugin-no-barrel-files": "1.3.1",
18
22
  "eslint-plugin-no-secrets": "2.3.3",
23
+ "eslint-plugin-package-json": "1.3.0",
19
24
  "eslint-plugin-prettier": "5.5.6",
20
25
  "eslint-plugin-promise": "7.3.0",
26
+ "eslint-plugin-regexp": "3.1.0",
21
27
  "eslint-plugin-sonarjs": "4.0.3",
22
- "eslint-plugin-unicorn": "64.0.0"
28
+ "eslint-plugin-unicorn": "64.0.0",
29
+ "jsonc-eslint-parser": "3.1.0"
23
30
  },
24
31
  "description": "Enormora’s ESLint base configuration formatted with prettier",
25
32
  "exports": {
@@ -43,5 +50,5 @@
43
50
  "./rule-sets/restricted-syntax.js"
44
51
  ],
45
52
  "type": "module",
46
- "version": "0.0.4"
53
+ "version": "0.0.6"
47
54
  }
@@ -2,24 +2,17 @@ import codeSpellChecker from '@cspell/eslint-plugin';
2
2
  import eslintCommentsPlugin from '@eslint-community/eslint-plugin-eslint-comments';
3
3
  import importPlugin, { createNodeResolver } from 'eslint-plugin-import-x';
4
4
  import noSecretsPlugin from 'eslint-plugin-no-secrets';
5
- import { ecmaVersion, javascriptExtensions } from '../../constants.js';
6
- import { bestPracticesRuleSet } from '../../rule-sets/best-practices.js';
7
- import {
8
- createRestrictedSyntaxPlugin,
9
- noClassDeclarationRestriction,
10
- noEmptyFunctionBodyRestriction,
11
- noInOperatorRestriction,
12
- noSwitchStatementRestriction
13
- } from '../../rule-sets/restricted-syntax.js';
14
- import { stylisticRuleSet } from '../../rule-sets/stylistic.js';
15
-
5
+ import { ecmaVersion, javascriptExtensions } from "../../constants.js";
6
+ import { bestPracticesRuleSet } from "../../rule-sets/best-practices.js";
7
+ import { createRestrictedSyntaxPlugin, noClassDeclarationRestriction, noEmptyFunctionBodyRestriction, noInOperatorRestriction, noSwitchStatementRestriction, noUnnecessaryArrowFunctionRestriction } from "../../rule-sets/restricted-syntax.js";
8
+ import { stylisticRuleSet } from "../../rule-sets/stylistic.js";
16
9
  const restrictedSyntaxPlugin = createRestrictedSyntaxPlugin([
17
10
  'no-class-declaration',
18
11
  'no-switch-statement',
19
12
  'no-empty-function-body',
20
- 'no-in-operator'
13
+ 'no-in-operator',
14
+ 'no-unnecessary-arrow-function'
21
15
  ]);
22
-
23
16
  export const cspellSpellcheckerOptions = {
24
17
  autoFix: false,
25
18
  numSuggestions: 3,
@@ -44,7 +37,6 @@ export const cspellSpellcheckerOptions = {
44
37
  customWordListFile: undefined,
45
38
  debugMode: false
46
39
  };
47
-
48
40
  export const baseSharedConfig = {
49
41
  languageOptions: {
50
42
  ecmaVersion,
@@ -77,12 +69,11 @@ export const baseSharedConfig = {
77
69
  'import/parsers': {
78
70
  espree: javascriptExtensions
79
71
  },
80
- 'import-x/resolver-next': [ createNodeResolver() ]
72
+ 'import-x/resolver-next': [createNodeResolver()]
81
73
  },
82
74
  rules: {
83
75
  ...stylisticRuleSet.rules,
84
76
  ...bestPracticesRuleSet.rules,
85
-
86
77
  'array-callback-return': 'error',
87
78
  camelcase: 'off',
88
79
  'no-array-constructor': 'error',
@@ -104,8 +95,8 @@ export const baseSharedConfig = {
104
95
  'no-dupe-args': 'error',
105
96
  'no-duplicate-case': 'error',
106
97
  'no-duplicate-imports': 'error',
107
- 'no-else-return': [ 'error', { allowElseIf: false } ],
108
- 'no-empty': [ 'error', { allowEmptyCatch: true } ],
98
+ 'no-else-return': ['error', { allowElseIf: false }],
99
+ 'no-empty': ['error', { allowEmptyCatch: true }],
109
100
  'no-empty-character-class': 'error',
110
101
  'no-empty-function': 'off',
111
102
  'no-empty-pattern': 'error',
@@ -123,7 +114,7 @@ export const baseSharedConfig = {
123
114
  'no-implicit-globals': 'error',
124
115
  'no-implied-eval': 'error',
125
116
  'no-inline-comments': 'off',
126
- 'no-inner-declarations': [ 'error', 'functions' ],
117
+ 'no-inner-declarations': ['error', 'functions'],
127
118
  'no-invalid-regexp': 'error',
128
119
  'no-invalid-this': 'off',
129
120
  'no-irregular-whitespace': 'error',
@@ -145,29 +136,30 @@ export const baseSharedConfig = {
145
136
  'no-object-constructor': 'error',
146
137
  'no-octal': 'error',
147
138
  'no-octal-escape': 'error',
148
- 'no-param-reassign': [ 'error', { props: true } ],
139
+ 'no-param-reassign': ['error', { props: true }],
149
140
  'no-plusplus': 'error',
150
141
  'no-proto': 'error',
151
142
  'no-prototype-builtins': 'error',
152
- 'no-redeclare': [ 'error', { builtinGlobals: true } ],
143
+ 'no-redeclare': ['error', { builtinGlobals: true }],
153
144
  'no-regex-spaces': 'error',
154
145
  'no-restricted-syntax': 'off',
155
- 'restricted-syntax/no-class-declaration': [ 'error', noClassDeclarationRestriction ],
156
- 'restricted-syntax/no-switch-statement': [ 'error', noSwitchStatementRestriction ],
157
- 'restricted-syntax/no-empty-function-body': [ 'error', noEmptyFunctionBodyRestriction ],
158
- 'restricted-syntax/no-in-operator': [ 'error', noInOperatorRestriction ],
159
- 'no-return-assign': [ 'error', 'always' ],
160
- 'no-self-assign': [ 'error', { props: true } ],
146
+ 'restricted-syntax/no-class-declaration': ['error', noClassDeclarationRestriction],
147
+ 'restricted-syntax/no-switch-statement': ['error', noSwitchStatementRestriction],
148
+ 'restricted-syntax/no-empty-function-body': ['error', noEmptyFunctionBodyRestriction],
149
+ 'restricted-syntax/no-in-operator': ['error', noInOperatorRestriction],
150
+ 'restricted-syntax/no-unnecessary-arrow-function': ['error', noUnnecessaryArrowFunctionRestriction],
151
+ 'no-return-assign': ['error', 'always'],
152
+ 'no-self-assign': ['error', { props: true }],
161
153
  'no-self-compare': 'error',
162
154
  'no-sequences': 'error',
163
- 'no-shadow': [ 'error', { builtinGlobals: true } ],
155
+ 'no-shadow': ['error', { builtinGlobals: true }],
164
156
  'no-shadow-restricted-names': 'error',
165
157
  'no-sparse-arrays': 'error',
166
158
  'no-ternary': 'off',
167
159
  'no-this-before-super': 'error',
168
160
  'no-throw-literal': 'error',
169
161
  'no-unassigned-vars': 'error',
170
- 'no-undef': [ 'error', { typeof: true } ],
162
+ 'no-undef': ['error', { typeof: true }],
171
163
  'no-undef-init': 'error',
172
164
  'no-undefined': 'off',
173
165
  'no-unexpected-multiline': 'error',
@@ -239,10 +231,10 @@ export const baseSharedConfig = {
239
231
  detectObjects: false,
240
232
  enforceConst: false,
241
233
  ignoreClassFieldInitialValues: false,
242
- ignore: [ -1, 0, 1 ]
234
+ ignore: [-1, 0, 1]
243
235
  }
244
236
  ],
245
- 'arrow-body-style': [ 'error', 'always' ],
237
+ 'arrow-body-style': ['error', 'always'],
246
238
  'accessor-pairs': [
247
239
  'error',
248
240
  {
@@ -250,24 +242,24 @@ export const baseSharedConfig = {
250
242
  }
251
243
  ],
252
244
  'block-scoped-var': 'off',
253
- complexity: [ 'error', { max: 6 } ],
245
+ complexity: ['error', { max: 6 }],
254
246
  'consistent-return': 'error',
255
- 'consistent-this': [ 'error', 'self' ],
247
+ 'consistent-this': ['error', 'self'],
256
248
  'constructor-super': 'error',
257
- curly: [ 'error', 'all' ],
249
+ curly: ['error', 'all'],
258
250
  'default-case': 'error',
259
251
  'dot-notation': 'error',
260
252
  eqeqeq: 'error',
261
253
  'func-names': 'off',
262
254
  'func-style': 'off',
263
255
  'guard-for-in': 'error',
264
- 'id-length': [ 'error', { min: 2, properties: 'never' } ],
265
- 'init-declarations': [ 'error', 'always' ],
266
- 'max-depth': [ 'error', { max: 5 } ],
267
- 'max-lines': [ 'error', { max: 500, skipBlankLines: true, skipComments: true } ],
268
- 'max-nested-callbacks': [ 'error', { max: 4 } ],
269
- 'max-params': [ 'error', { max: 4 } ],
270
- 'max-statements': [ 'error', { max: 10 } ],
256
+ 'id-length': ['error', { min: 2, properties: 'never' }],
257
+ 'init-declarations': ['error', 'always'],
258
+ 'max-depth': ['error', { max: 5 }],
259
+ 'max-lines': ['error', { max: 500, skipBlankLines: true, skipComments: true }],
260
+ 'max-nested-callbacks': ['error', { max: 4 }],
261
+ 'max-params': ['error', { max: 4 }],
262
+ 'max-statements': ['error', { max: 10 }],
271
263
  'new-cap': [
272
264
  'error',
273
265
  {
@@ -275,27 +267,22 @@ export const baseSharedConfig = {
275
267
  capIsNew: true
276
268
  }
277
269
  ],
278
- 'object-shorthand': [ 'error', 'always' ],
279
- 'one-var': [ 'error', 'never' ],
280
- 'operator-assignment': [ 'error', 'always' ],
281
- 'prefer-arrow-callback': [
282
- 'error',
283
- {
284
- allowNamedFunctions: true
285
- }
286
- ],
270
+ 'object-shorthand': ['error', 'always'],
271
+ 'one-var': ['error', 'never'],
272
+ 'operator-assignment': ['error', 'always'],
273
+ 'prefer-arrow-callback': 'off',
287
274
  'prefer-rest-params': 'error',
288
275
  radix: 'error',
289
276
  'id-match': 'off',
290
277
  'require-yield': 'error',
291
278
  'sort-vars': 'off',
292
279
  'sort-imports': 'off',
293
- strict: [ 'error', 'safe' ],
294
- 'unicode-bom': [ 'error', 'never' ],
280
+ strict: ['error', 'safe'],
281
+ 'unicode-bom': ['error', 'never'],
295
282
  'use-isnan': 'error',
296
283
  'valid-typeof': 'error',
297
284
  'vars-on-top': 'error',
298
- yoda: [ 'error', 'never' ],
285
+ yoda: ['error', 'never'],
299
286
  'capitalized-comments': 'off',
300
287
  'class-methods-use-this': 'error',
301
288
  'func-name-matching': 'off',
@@ -332,7 +319,7 @@ export const baseSharedConfig = {
332
319
  'require-await': 'off',
333
320
  'sort-keys': 'off',
334
321
  'symbol-description': 'error',
335
- 'for-direction': 'off',
322
+ 'for-direction': 'error',
336
323
  'getter-return': [
337
324
  'error',
338
325
  {
@@ -351,37 +338,31 @@ export const baseSharedConfig = {
351
338
  'prefer-named-capture-group': 'error',
352
339
  'no-import-assign': 'error',
353
340
  'require-atomic-updates': 'error',
354
-
355
341
  'no-restricted-imports': 'off',
356
-
357
342
  'no-alert': 'off',
358
343
  'no-script-url': 'off',
359
344
  'no-restricted-globals': 'off',
360
-
361
- 'grouped-accessor-pairs': 'off',
345
+ 'grouped-accessor-pairs': ['error', 'getBeforeSet'],
362
346
  'no-constructor-return': 'error',
363
347
  'no-dupe-else-if': 'error',
364
348
  'no-setter-return': 'error',
365
349
  'prefer-exponentiation-operator': 'error',
366
-
367
350
  'default-case-last': 'error',
368
351
  'no-restricted-exports': 'off',
369
352
  'no-useless-backreference': 'error',
370
353
  'id-denylist': 'off',
371
- 'no-loss-of-precision': 'off',
354
+ 'no-loss-of-precision': 'error',
372
355
  'no-promise-executor-return': 'error',
373
356
  'no-unreachable-loop': 'error',
374
357
  'no-nonoctal-decimal-escape': 'error',
375
358
  'no-unsafe-optional-chaining': 'error',
376
359
  'no-unused-private-class-members': 'error',
377
360
  'no-constant-binary-expression': 'error',
378
- 'logical-assignment-operators': [ 'error', 'never' ],
361
+ 'logical-assignment-operators': ['error', 'never'],
379
362
  'prefer-object-has-own': 'error',
380
363
  'no-useless-assignment': 'error',
381
-
382
- 'no-secrets/no-secrets': [ 'error', { tolerance: 5 } ],
364
+ 'no-secrets/no-secrets': ['error', { tolerance: 5 }],
383
365
  'no-secrets/no-pattern-match': 'off',
384
-
385
366
  'eslint-comments/disable-enable-pair': [
386
367
  'error',
387
368
  {
@@ -395,7 +376,6 @@ export const baseSharedConfig = {
395
376
  'eslint-comments/no-unlimited-disable': 'error',
396
377
  'eslint-comments/no-use': 'off',
397
378
  'eslint-comments/require-description': 'error',
398
-
399
379
  'import/no-deprecated': 'error',
400
380
  'import/exports-last': 'off',
401
381
  'import/dynamic-import-chunkname': 'off',
@@ -406,9 +386,9 @@ export const baseSharedConfig = {
406
386
  'import/prefer-default-export': 'off',
407
387
  'import/newline-after-import': 'error',
408
388
  'import/no-nodejs-modules': 'off',
409
- 'import/max-dependencies': [ 'error', { max: 10 } ],
389
+ 'import/max-dependencies': ['error', { max: 10 }],
410
390
  'import/first': 'error',
411
- 'import/no-unused-modules': [ 'error', { unusedExports: true, suppressMissingFileEnumeratorAPIWarning: true } ],
391
+ 'import/no-unused-modules': ['error', { unusedExports: true, suppressMissingFileEnumeratorAPIWarning: true }],
412
392
  'import/no-anonymous-default-export': 'off',
413
393
  'import/no-named-default': 'off',
414
394
  'import/no-cycle': 'error',
@@ -465,7 +445,7 @@ export const baseSharedConfig = {
465
445
  'import/consistent-type-specifier-style': 'off',
466
446
  'import/no-rename-default': 'off',
467
447
  'import/prefer-namespace-import': 'off',
468
-
469
- '@cspell/spellchecker': [ 'error', cspellSpellcheckerOptions ]
448
+ '@cspell/spellchecker': ['error', cspellSpellcheckerOptions]
470
449
  }
471
450
  };
451
+ //# sourceMappingURL=base-shared.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-shared.js","sourceRoot":"","sources":["../../../../../configs/presets/base/base-shared.ts"],"names":[],"mappings":"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"}
@@ -1 +1,18 @@
1
- import { cspellSpellcheckerOptions } from './base-shared.js';
1
+ import { cspellSpellcheckerOptions } from "./base-shared.js";
2
+ export function withCspellWords(words) {
3
+ return {
4
+ rules: {
5
+ '@cspell/spellchecker': [
6
+ 'error',
7
+ {
8
+ ...cspellSpellcheckerOptions,
9
+ cspell: {
10
+ ...cspellSpellcheckerOptions.cspell,
11
+ words: [...cspellSpellcheckerOptions.cspell.words, ...words]
12
+ }
13
+ }
14
+ ]
15
+ }
16
+ };
17
+ }
18
+ //# sourceMappingURL=cspell-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cspell-config.js","sourceRoot":"","sources":["../../../../../configs/presets/base/cspell-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAU7D,MAAM,UAAU,eAAe,CAAC,KAAwB;IACpD,OAAO;QACH,KAAK,EAAE;YACH,sBAAsB,EAAE;gBACpB,OAAO;gBACP;oBACI,GAAG,yBAAyB;oBAC5B,MAAM,EAAE;wBACJ,GAAG,yBAAyB,CAAC,MAAM;wBACnC,KAAK,EAAE,CAAE,GAAG,yBAAyB,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,KAAK,CAAE;qBACjE;iBACJ;aACJ;SACJ;KACJ,CAAC;AACN,CAAC"}
@@ -1,13 +1,11 @@
1
1
  import markdownPlugin from '@eslint/markdown';
2
2
  import markdownLinksPlugin from 'eslint-plugin-markdown-links';
3
3
  import markdownPreferencesPlugin from 'eslint-plugin-markdown-preferences';
4
-
5
4
  export const markdownLintPlugins = {
6
5
  markdown: markdownPlugin,
7
6
  'markdown-links': markdownLinksPlugin,
8
7
  'markdown-preferences': markdownPreferencesPlugin
9
8
  };
10
-
11
9
  export const markdownLintRules = {
12
10
  'markdown/fenced-code-language': 'error',
13
11
  'markdown/fenced-code-meta': 'off',
@@ -30,14 +28,12 @@ export const markdownLintRules = {
30
28
  'markdown/no-unused-definitions': 'error',
31
29
  'markdown/require-alt-text': 'error',
32
30
  'markdown/table-column-count': 'error',
33
-
34
31
  // markdown-links: external network check is opt-in to keep CI deterministic;
35
32
  // local-path and fragment checks are pure wins.
36
33
  'markdown-links/no-dead-urls': 'off',
37
34
  'markdown-links/no-missing-fragments': 'error',
38
35
  'markdown-links/no-missing-path': 'error',
39
36
  'markdown-links/no-self-destination': 'error',
40
-
41
37
  // markdown-preferences: many rules overlap with the active markdown formatter (dprint or
42
38
  // prettier, depending on which base preset is used). We enable only the 8 rules from this
43
39
  // plugin's `recommended` config (none of which fight either formatter) and explicitly turn
@@ -96,3 +92,4 @@ export const markdownLintRules = {
96
92
  'markdown-preferences/thematic-break-length': 'off',
97
93
  'markdown-preferences/thematic-break-sequence-pattern': 'off'
98
94
  };
95
+ //# sourceMappingURL=markdown-lint-rules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown-lint-rules.js","sourceRoot":"","sources":["../../../../../configs/presets/base/markdown-lint-rules.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,112 @@
1
+ import jsonSchemaValidatorPlugin from 'eslint-plugin-json-schema-validator';
2
+ import packageJsonPlugin from 'eslint-plugin-package-json';
3
+ import * as jsoncParser from 'jsonc-eslint-parser';
4
+ export const packageJsonConfig = {
5
+ files: ['**/package.json'],
6
+ languageOptions: { parser: jsoncParser },
7
+ plugins: {
8
+ 'package-json': packageJsonPlugin,
9
+ 'json-schema-validator': jsonSchemaValidatorPlugin
10
+ },
11
+ rules: {
12
+ 'package-json/no-empty-fields': 'error',
13
+ 'package-json/no-redundant-files': 'error',
14
+ 'package-json/no-redundant-publishConfig': 'error',
15
+ 'package-json/repository-shorthand': 'error',
16
+ 'package-json/restrict-private-properties': 'error',
17
+ 'package-json/scripts-name-casing': 'error',
18
+ 'package-json/sort-collections': 'error',
19
+ 'package-json/unique-dependencies': 'error',
20
+ 'package-json/valid-author': 'error',
21
+ 'package-json/valid-bin': 'error',
22
+ 'package-json/valid-browser': 'error',
23
+ 'package-json/valid-bugs': 'error',
24
+ 'package-json/valid-bundleDependencies': 'error',
25
+ 'package-json/valid-config': 'error',
26
+ 'package-json/valid-contributors': 'error',
27
+ 'package-json/valid-cpu': 'error',
28
+ 'package-json/valid-dependencies': 'error',
29
+ 'package-json/valid-description': 'error',
30
+ 'package-json/valid-devDependencies': 'error',
31
+ 'package-json/valid-devEngines': 'error',
32
+ 'package-json/valid-directories': 'error',
33
+ 'package-json/valid-engines': 'error',
34
+ 'package-json/valid-exports': 'error',
35
+ 'package-json/valid-files': 'error',
36
+ 'package-json/valid-funding': 'error',
37
+ 'package-json/valid-gypfile': 'error',
38
+ 'package-json/valid-homepage': 'error',
39
+ 'package-json/valid-keywords': 'error',
40
+ 'package-json/valid-libc': 'error',
41
+ 'package-json/valid-license': 'error',
42
+ 'package-json/valid-main': 'error',
43
+ 'package-json/valid-man': 'error',
44
+ 'package-json/valid-module': 'error',
45
+ 'package-json/valid-name': 'error',
46
+ 'package-json/valid-optionalDependencies': 'error',
47
+ 'package-json/valid-os': 'error',
48
+ 'package-json/valid-packageManager': 'error',
49
+ 'package-json/valid-peerDependencies': 'error',
50
+ 'package-json/valid-peerDependenciesMeta': 'error',
51
+ 'package-json/valid-peerDependenciesMeta-relationship': 'error',
52
+ 'package-json/valid-private': 'error',
53
+ 'package-json/valid-publishConfig': 'error',
54
+ 'package-json/valid-repository': 'error',
55
+ 'package-json/valid-repository-directory': 'error',
56
+ 'package-json/valid-scripts': 'error',
57
+ 'package-json/valid-sideEffects': 'error',
58
+ 'package-json/valid-type': 'error',
59
+ 'package-json/valid-version': 'error',
60
+ 'package-json/valid-workspaces': 'error',
61
+ // Too opinionated for a base preset — consumers can opt in.
62
+ 'package-json/bin-name-casing': 'off',
63
+ 'package-json/exports-subpaths-style': 'off',
64
+ 'package-json/no-local-dependencies': 'off',
65
+ 'package-json/order-properties': 'off',
66
+ 'package-json/require-attribution': 'off',
67
+ 'package-json/require-author': 'off',
68
+ 'package-json/require-bin': 'off',
69
+ 'package-json/require-browser': 'off',
70
+ 'package-json/require-bugs': 'off',
71
+ 'package-json/require-bundleDependencies': 'off',
72
+ 'package-json/require-config': 'off',
73
+ 'package-json/require-contributors': 'off',
74
+ 'package-json/require-cpu': 'off',
75
+ 'package-json/require-dependencies': 'off',
76
+ 'package-json/require-description': 'off',
77
+ 'package-json/require-devDependencies': 'off',
78
+ 'package-json/require-devEngines': 'off',
79
+ 'package-json/require-directories': 'off',
80
+ 'package-json/require-engines': 'off',
81
+ 'package-json/require-exports': 'off',
82
+ 'package-json/require-files': 'off',
83
+ 'package-json/require-funding': 'off',
84
+ 'package-json/require-gypfile': 'off',
85
+ 'package-json/require-homepage': 'off',
86
+ 'package-json/require-keywords': 'off',
87
+ 'package-json/require-libc': 'off',
88
+ 'package-json/require-license': 'off',
89
+ 'package-json/require-main': 'off',
90
+ 'package-json/require-man': 'off',
91
+ 'package-json/require-module': 'off',
92
+ 'package-json/require-name': 'off',
93
+ 'package-json/require-optionalDependencies': 'off',
94
+ 'package-json/require-os': 'off',
95
+ 'package-json/require-packageManager': 'off',
96
+ 'package-json/require-peerDependencies': 'off',
97
+ 'package-json/require-peerDependenciesMeta': 'off',
98
+ 'package-json/require-private': 'off',
99
+ 'package-json/require-publishConfig': 'off',
100
+ 'package-json/require-repository': 'off',
101
+ 'package-json/require-scripts': 'off',
102
+ 'package-json/require-sideEffects': 'off',
103
+ 'package-json/require-type': 'off',
104
+ 'package-json/require-types': 'off',
105
+ 'package-json/require-version': 'off',
106
+ 'package-json/restrict-dependency-ranges': 'off',
107
+ 'package-json/restrict-top-level-properties': 'off',
108
+ 'package-json/specify-peers-locally': 'off',
109
+ 'json-schema-validator/no-invalid': 'error'
110
+ }
111
+ };
112
+ //# sourceMappingURL=package-json.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-json.js","sourceRoot":"","sources":["../../../../../configs/presets/base/package-json.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  import simpleParser from '@ben_12/eslint-simple-parser';
2
2
  import prettierPlugin from 'eslint-plugin-prettier';
3
- import { baseSharedConfig } from '../base/base-shared.js';
4
- import { markdownLintPlugins, markdownLintRules } from '../base/markdown-lint-rules.js';
5
-
3
+ import { baseSharedConfig } from "../base/base-shared.js";
4
+ import { markdownLintPlugins, markdownLintRules } from "../base/markdown-lint-rules.js";
5
+ import { packageJsonConfig } from "../base/package-json.js";
6
6
  const baseJsConfig = {
7
- files: [ '**/*.{js,cjs,mjs,jsx,ts,cts,mts,tsx,vue}' ],
7
+ files: ['**/*.{js,cjs,mjs,jsx,ts,cts,mts,tsx,vue}'],
8
8
  ...baseSharedConfig,
9
9
  plugins: {
10
10
  ...baseSharedConfig.plugins,
@@ -12,30 +12,25 @@ const baseJsConfig = {
12
12
  },
13
13
  rules: {
14
14
  ...baseSharedConfig.rules,
15
-
16
15
  'prettier/prettier': 'error',
17
-
18
16
  // Prettier owns TypeScript member delimiter formatting; the stylistic rule would only fight it.
19
17
  '@stylistic/member-delimiter-style': 'off'
20
18
  }
21
19
  };
22
-
23
20
  const prettierJsonConfig = {
24
- files: [ '**/*.json' ],
21
+ files: ['**/*.json'],
25
22
  languageOptions: { parser: simpleParser },
26
23
  plugins: { prettier: prettierPlugin },
27
24
  rules: { 'prettier/prettier': 'error' }
28
25
  };
29
-
30
26
  const prettierYamlConfig = {
31
- files: [ '**/*.{yml,yaml}' ],
27
+ files: ['**/*.{yml,yaml}'],
32
28
  languageOptions: { parser: simpleParser },
33
29
  plugins: { prettier: prettierPlugin },
34
30
  rules: { 'prettier/prettier': 'error' }
35
31
  };
36
-
37
32
  const markdownConfig = {
38
- files: [ '**/*.md' ],
33
+ files: ['**/*.md'],
39
34
  plugins: {
40
35
  ...markdownLintPlugins,
41
36
  prettier: prettierPlugin
@@ -44,18 +39,17 @@ const markdownConfig = {
44
39
  language: 'markdown/commonmark',
45
40
  rules: {
46
41
  'prettier/prettier': 'error',
47
-
48
42
  ...markdownLintRules
49
43
  }
50
44
  };
51
-
52
45
  export const baseWithPrettierConfig = [
53
46
  baseJsConfig,
54
47
  prettierJsonConfig,
48
+ packageJsonConfig,
55
49
  markdownConfig,
56
50
  prettierYamlConfig
57
51
  ];
58
-
59
52
  /* eslint-disable no-barrel-files/no-barrel-files -- expose cspell helper as public API so consumers can spread or call it when customizing */
60
- export { withCspellWords } from '../base/cspell-config.js';
53
+ export { withCspellWords } from "../base/cspell-config.js";
61
54
  /* eslint-enable no-barrel-files/no-barrel-files -- end of public re-exports */
55
+ //# sourceMappingURL=base-with-prettier.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-with-prettier.js","sourceRoot":"","sources":["../../../../../configs/presets/base-with-prettier/base-with-prettier.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,8BAA8B,CAAC;AAExD,OAAO,cAAc,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACxF,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D,MAAM,YAAY,GAAG;IACjB,KAAK,EAAE,CAAE,0CAA0C,CAAE;IACrD,GAAG,gBAAgB;IACnB,OAAO,EAAE;QACL,GAAG,gBAAgB,CAAC,OAAO;QAC3B,QAAQ,EAAE,cAAc;KAC3B;IACD,KAAK,EAAE;QACH,GAAG,gBAAgB,CAAC,KAAK;QAEzB,mBAAmB,EAAE,OAAO;QAE5B,gGAAgG;QAChG,mCAAmC,EAAE,KAAK;KAC7C;CACJ,CAAC;AAEF,MAAM,kBAAkB,GAAG;IACvB,KAAK,EAAE,CAAE,WAAW,CAAE;IACtB,eAAe,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE;IACzC,OAAO,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE;IACrC,KAAK,EAAE,EAAE,mBAAmB,EAAE,OAAO,EAAE;CAC1C,CAAC;AAEF,MAAM,kBAAkB,GAAG;IACvB,KAAK,EAAE,CAAE,iBAAiB,CAAE;IAC5B,eAAe,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE;IACzC,OAAO,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE;IACrC,KAAK,EAAE,EAAE,mBAAmB,EAAE,OAAO,EAAE;CAC1C,CAAC;AAEF,MAAM,cAAc,GAAG;IACnB,KAAK,EAAE,CAAE,SAAS,CAAE;IACpB,OAAO,EAAE;QACL,GAAG,mBAAmB;QACtB,QAAQ,EAAE,cAAc;KAC3B;IACD,+EAA+E;IAC/E,QAAQ,EAAE,qBAAqB;IAC/B,KAAK,EAAE;QACH,mBAAmB,EAAE,OAAO;QAE5B,GAAG,iBAAiB;KACvB;CACJ,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG;IAClC,YAAY;IACZ,kBAAkB;IAClB,iBAAiB;IACjB,cAAc;IACd,kBAAkB;CACS,CAAC;AAEhC,8IAA8I;AAC9I,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,+EAA+E"}
package/readme.md CHANGED
@@ -7,8 +7,9 @@ Drop-in alternative to [`@enormora/eslint-config-base`](../base/base.md) that fo
7
7
 
8
8
  This preset is itself a base preset — pick this one **or** `@enormora/eslint-config-base`, never both. It contains the
9
9
  same set of lint rules as the regular base preset, including the semantic markdown linting stack
10
- (`@eslint/markdown`, `eslint-plugin-markdown-links`, `eslint-plugin-markdown-preferences`). The only differences are
11
- the formatter integration and that TOML is not covered (prettier has no native TOML support; see
10
+ (`@eslint/markdown`, `eslint-plugin-markdown-links`, `eslint-plugin-markdown-preferences`) and the dedicated
11
+ `package.json` linting stack (`eslint-plugin-package-json`, `eslint-plugin-json-schema-validator`). The only
12
+ differences are the formatter integration and that TOML is not covered (prettier has no native TOML support; see
12
13
  [Limitations](#limitations) below).
13
14
 
14
15
  ## Install & Setup
@@ -54,6 +55,7 @@ additionally enabling the semantic markdown linters.
54
55
  | :------------ | :----------------------------------------- | :------------------------------------------------------------------------------ |
55
56
  | JavaScript/TS | `**/*.{js,cjs,mjs,jsx,ts,cts,mts,tsx,vue}` | base lint rules + `prettier/prettier` |
56
57
  | JSON | `**/*.json` | `prettier/prettier` |
58
+ | package.json | `**/package.json` | `package-json/*`, `json-schema-validator/no-invalid` |
57
59
  | Markdown | `**/*.md` | `prettier/prettier`, `markdown/*`, `markdown-links/*`, `markdown-preferences/*` |
58
60
  | YAML | `**/*.{yml,yaml}` | `prettier/prettier` |
59
61