@chris.araneo/eslint-config 0.0.96 → 0.0.98

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 (36) hide show
  1. package/LICENSE +1 -1
  2. package/dist/src/angular/angular-eslint-template.js +14 -11
  3. package/dist/src/angular/angular-eslint-template.js.map +1 -1
  4. package/dist/src/angular/angular-eslint.d.ts +0 -1
  5. package/dist/src/angular/angular-eslint.js +30 -28
  6. package/dist/src/angular/angular-eslint.js.map +1 -1
  7. package/dist/src/angular/index.js +14 -33
  8. package/dist/src/angular/index.js.map +1 -1
  9. package/dist/src/json/index.js +2 -8
  10. package/dist/src/json/index.js.map +1 -1
  11. package/dist/src/json/jsonc.d.ts +1 -1
  12. package/dist/src/json/jsonc.js +21 -18
  13. package/dist/src/json/jsonc.js.map +1 -1
  14. package/dist/src/nx/index.js +1 -8
  15. package/dist/src/nx/index.js.map +1 -1
  16. package/dist/src/nx/nx.js +25 -22
  17. package/dist/src/nx/nx.js.map +1 -1
  18. package/dist/src/typescript/eslint.d.ts +1 -2
  19. package/dist/src/typescript/eslint.js +30 -26
  20. package/dist/src/typescript/eslint.js.map +1 -1
  21. package/dist/src/typescript/index.d.ts +2 -2
  22. package/dist/src/typescript/index.js +21 -28
  23. package/dist/src/typescript/index.js.map +1 -1
  24. package/dist/src/typescript/simple-import-sort.d.ts +1 -1
  25. package/dist/src/typescript/simple-import-sort.js +13 -8
  26. package/dist/src/typescript/simple-import-sort.js.map +1 -1
  27. package/dist/src/typescript/typescript-eslint.d.ts +1 -2
  28. package/dist/src/typescript/typescript-eslint.js +203 -181
  29. package/dist/src/typescript/typescript-eslint.js.map +1 -1
  30. package/dist/src/typescript/unicorn.d.ts +1 -1
  31. package/dist/src/typescript/unicorn.js +26 -21
  32. package/dist/src/typescript/unicorn.js.map +1 -1
  33. package/dist/src/utils.d.ts +5 -2
  34. package/dist/src/utils.js +52 -6
  35. package/dist/src/utils.js.map +1 -1
  36. package/package.json +9 -7
package/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2025 Krzysztof Pająk
3
+ Copyright (c) 2026 Krzysztof Pająk
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -1,13 +1,16 @@
1
1
  import angular from 'angular-eslint';
2
- export const getAngularTemplatesConfigs = (templates) => [
3
- ...angular.configs.templateAll.map((config) => ({
4
- ...config,
5
- files: templates,
6
- rules: {
7
- ...config.rules,
8
- '@angular-eslint/template/i18n': 'off',
9
- '@angular-eslint/template/prefer-control-flow': 'off',
10
- },
11
- })),
12
- ];
2
+ import { isEmpty } from 'lodash';
3
+ export const getAngularTemplatesConfigs = (templates) => isEmpty(templates)
4
+ ? []
5
+ : [
6
+ ...angular.configs.templateAll.map((config) => ({
7
+ ...config,
8
+ files: templates,
9
+ rules: {
10
+ ...config.rules,
11
+ '@angular-eslint/template/i18n': 'off',
12
+ '@angular-eslint/template/prefer-control-flow': 'off',
13
+ },
14
+ })),
15
+ ];
13
16
  //# sourceMappingURL=angular-eslint-template.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"angular-eslint-template.js","sourceRoot":"/","sources":["src/angular/angular-eslint-template.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,gBAAgB,CAAC;AAGrC,MAAM,CAAC,MAAM,0BAA0B,GAAG,CACxC,SAAmB,EACF,EAAE,CAAC;IACpB,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAChC,CAAC,MAAM,EAAE,EAAE,CACT,CAAC;QACC,GAAG,MAAM;QACT,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE;YACL,GAAG,MAAM,CAAC,KAAK;YACf,+BAA+B,EAAE,KAAK;YACtC,8CAA8C,EAAE,KAAK;SACtD;KACF,CAAkB,CACtB;CACF,CAAC"}
1
+ {"version":3,"file":"angular-eslint-template.js","sourceRoot":"/","sources":["src/angular/angular-eslint-template.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,gBAAgB,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEjC,MAAM,CAAC,MAAM,0BAA0B,GAAG,CACxC,SAAmB,EACF,EAAE,CACnB,OAAO,CAAC,SAAS,CAAC;IAChB,CAAC,CAAC,EAAE;IACJ,CAAC,CAAC;QACE,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAChC,CAAC,MAAM,EAAE,EAAE,CACT,CAAC;YACC,GAAG,MAAM;YACT,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE;gBACL,GAAG,MAAM,CAAC,KAAK;gBACf,+BAA+B,EAAE,KAAK;gBACtC,8CAA8C,EAAE,KAAK;aACtD;SACF,CAAkB,CACtB;KACF,CAAC"}
@@ -1,3 +1,2 @@
1
1
  import type { Linter } from 'eslint';
2
2
  export declare const getAngularSourcesConfigs: (prefix: string, sources: string[]) => Linter.Config[];
3
- export declare const getAngularSourcesConfigsRuleKeys: () => string[];
@@ -1,30 +1,32 @@
1
1
  import angular from 'angular-eslint';
2
- export const getAngularSourcesConfigs = (prefix, sources) => angular.configs.tsAll.map((config) => ({
3
- ...config,
4
- files: sources,
5
- rules: {
6
- ...config.rules,
7
- '@angular-eslint/component-selector': [
8
- 'error',
9
- {
10
- prefix,
11
- style: 'kebab-case',
12
- type: 'element',
13
- },
14
- ],
15
- '@angular-eslint/directive-selector': [
16
- 'error',
17
- {
18
- prefix,
19
- style: 'camelCase',
20
- type: 'attribute',
21
- },
22
- ],
23
- '@angular-eslint/no-forward-ref': 'off',
24
- '@angular-eslint/prefer-on-push-component-change-detection': 'off',
25
- '@angular-eslint/prefer-output-emitter-ref': 'off',
26
- '@angular-eslint/prefer-signals': 'off',
27
- },
28
- }));
29
- export const getAngularSourcesConfigsRuleKeys = () => angular.configs.tsAll.flatMap((config) => Object.keys(config.rules ?? {}));
2
+ import { isEmpty } from 'lodash';
3
+ export const getAngularSourcesConfigs = (prefix, sources) => isEmpty(sources)
4
+ ? []
5
+ : angular.configs.tsAll.map((config) => ({
6
+ ...config,
7
+ files: sources,
8
+ rules: {
9
+ ...config.rules,
10
+ '@angular-eslint/component-selector': [
11
+ 'error',
12
+ {
13
+ prefix,
14
+ style: 'kebab-case',
15
+ type: 'element',
16
+ },
17
+ ],
18
+ '@angular-eslint/directive-selector': [
19
+ 'error',
20
+ {
21
+ prefix,
22
+ style: 'camelCase',
23
+ type: 'attribute',
24
+ },
25
+ ],
26
+ '@angular-eslint/no-forward-ref': 'off',
27
+ '@angular-eslint/prefer-on-push-component-change-detection': 'off',
28
+ '@angular-eslint/prefer-output-emitter-ref': 'off',
29
+ '@angular-eslint/prefer-signals': 'off',
30
+ },
31
+ }));
30
32
  //# sourceMappingURL=angular-eslint.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"angular-eslint.js","sourceRoot":"/","sources":["src/angular/angular-eslint.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,gBAAgB,CAAC;AAGrC,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,MAAc,EACd,OAAiB,EACA,EAAE,CACnB,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CACvB,CAAC,MAAM,EAAE,EAAE,CACT,CAAC;IACC,GAAG,MAAM;IACT,KAAK,EAAE,OAAO;IACd,KAAK,EAAE;QACL,GAAG,MAAM,CAAC,KAAK;QACf,oCAAoC,EAAE;YACpC,OAAO;YACP;gBACE,MAAM;gBACN,KAAK,EAAE,YAAY;gBACnB,IAAI,EAAE,SAAS;aAChB;SACF;QACD,oCAAoC,EAAE;YACpC,OAAO;YACP;gBACE,MAAM;gBACN,KAAK,EAAE,WAAW;gBAClB,IAAI,EAAE,WAAW;aAClB;SACF;QACD,gCAAgC,EAAE,KAAK;QACvC,2DAA2D,EAAE,KAAK;QAClE,2CAA2C,EAAE,KAAK;QAClD,gCAAgC,EAAE,KAAK;KACxC;CACF,CAAkB,CACtB,CAAC;AAEJ,MAAM,CAAC,MAAM,gCAAgC,GAAG,GAAa,EAAE,CAC7D,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"angular-eslint.js","sourceRoot":"/","sources":["src/angular/angular-eslint.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,gBAAgB,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEjC,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,MAAc,EACd,OAAiB,EACA,EAAE,CACnB,OAAO,CAAC,OAAO,CAAC;IACd,CAAC,CAAC,EAAE;IACJ,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CACvB,CAAC,MAAM,EAAE,EAAE,CACT,CAAC;QACC,GAAG,MAAM;QACT,KAAK,EAAE,OAAO;QACd,KAAK,EAAE;YACL,GAAG,MAAM,CAAC,KAAK;YACf,oCAAoC,EAAE;gBACpC,OAAO;gBACP;oBACE,MAAM;oBACN,KAAK,EAAE,YAAY;oBACnB,IAAI,EAAE,SAAS;iBAChB;aACF;YACD,oCAAoC,EAAE;gBACpC,OAAO;gBACP;oBACE,MAAM;oBACN,KAAK,EAAE,WAAW;oBAClB,IAAI,EAAE,WAAW;iBAClB;aACF;YACD,gCAAgC,EAAE,KAAK;YACvC,2DAA2D,EACzD,KAAK;YACP,2CAA2C,EAAE,KAAK;YAClD,gCAAgC,EAAE,KAAK;SACxC;KACF,CAAkB,CACtB,CAAC"}
@@ -1,39 +1,20 @@
1
1
  import { defineConfig } from 'eslint/config';
2
2
  import createJsonConfigs from '../json/index.js';
3
- import { getEslintConfigRuleKeys } from '../typescript/eslint.js';
4
3
  import { createTypeScriptConfigs } from '../typescript/index.js';
5
- import { getTypescriptEslintConfigRuleKeys } from '../typescript/typescript-eslint.js';
6
- import { isEmpty } from '../utils.js';
7
- import { getAngularSourcesConfigs, getAngularSourcesConfigsRuleKeys, } from './angular-eslint.js';
4
+ import { addCrossConfigOffRules } from '../utils.js';
5
+ import { getAngularSourcesConfigs } from './angular-eslint.js';
8
6
  import { getAngularTemplatesConfigs } from './angular-eslint-template.js';
9
- export default (prefix = 'app', sources = [], templates = [], jsons = [], ignored) => {
10
- const configs = [];
11
- if (!isEmpty(sources)) {
12
- configs.push(...createTypeScriptConfigs(sources));
13
- configs.push(...getAngularSourcesConfigs(prefix, sources));
14
- }
15
- if (!isEmpty(templates)) {
16
- configs.push(...[
17
- ...getAngularTemplatesConfigs(templates),
18
- getDisabledSourceRules(templates),
19
- ]);
20
- }
21
- if (!isEmpty(jsons)) {
22
- configs.push(...[...createJsonConfigs(jsons), getDisabledSourceRules(jsons)]);
23
- }
24
- if (!isEmpty(ignored)) {
25
- configs.push({
7
+ export default (prefix = 'app', sources = [], templates = [], jsons = [], ignored) => defineConfig(addCrossConfigOffRules({
8
+ ignored: [
9
+ {
26
10
  ignores: ignored,
27
- });
28
- }
29
- return defineConfig(configs);
30
- };
31
- const getDisabledSourceRules = (files) => ({
32
- files,
33
- rules: [
34
- ...getEslintConfigRuleKeys(),
35
- ...getTypescriptEslintConfigRuleKeys(),
36
- ...getAngularSourcesConfigsRuleKeys(),
37
- ].reduce((acc, key) => ({ ...acc, [key]: 'off' }), {}),
38
- });
11
+ },
12
+ ],
13
+ json: createJsonConfigs(jsons),
14
+ sources: [
15
+ ...createTypeScriptConfigs(sources),
16
+ ...getAngularSourcesConfigs(prefix, sources),
17
+ ],
18
+ templates: getAngularTemplatesConfigs(templates),
19
+ }, { order: ['sources', 'templates', 'json', 'ignored'] }));
39
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"/","sources":["src/angular/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAG7C,OAAO,iBAAiB,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,iCAAiC,EAAE,MAAM,oCAAoC,CAAC;AACvF,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EACL,wBAAwB,EACxB,gCAAgC,GACjC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAE1E,eAAe,CACb,MAAM,GAAG,KAAK,EACd,UAAoB,EAAE,EACtB,YAAsB,EAAE,EACxB,QAAkB,EAAE,EACpB,OAAkB,EACgB,EAAE;IACpC,MAAM,OAAO,GAAoB,EAAE,CAAC;IAEpC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,IAAI,CAAC,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,GAAG,wBAAwB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,IAAI,CACV,GAAI;YACF,GAAG,0BAA0B,CAAC,SAAS,CAAC;YACxC,sBAAsB,CAAC,SAAS,CAAC;SACd,CACtB,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO,CAAC,IAAI,CACV,GAAG,CAAC,GAAG,iBAAiB,CAAC,KAAK,CAAC,EAAE,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAChE,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,IAAI,CAAC;YACX,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;IACL,CAAC;IAED,OAAO,YAAY,CAAC,OAAO,CAAC,CAAC;AAC/B,CAAC,CAAC;AAEF,MAAM,sBAAsB,GAAG,CAAC,KAAe,EAAE,EAAE,CACjD,CAAC;IACC,KAAK;IACL,KAAK,EAAE;QACL,GAAG,uBAAuB,EAAE;QAC5B,GAAG,iCAAiC,EAAE;QACtC,GAAG,gCAAgC,EAAE;KACtC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;CACvD,CAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"/","sources":["src/angular/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAG7C,OAAO,iBAAiB,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAE1E,eAAe,CACb,MAAM,GAAG,KAAK,EACd,UAAoB,EAAE,EACtB,YAAsB,EAAE,EACxB,QAAkB,EAAE,EACpB,OAAkB,EACgB,EAAE,CACpC,YAAY,CACV,sBAAsB,CACpB;IACE,OAAO,EAAE;QACP;YACE,OAAO,EAAE,OAAO;SACjB;KACF;IACD,IAAI,EAAE,iBAAiB,CAAC,KAAK,CAAC;IAC9B,OAAO,EAAE;QACP,GAAG,uBAAuB,CAAC,OAAO,CAAC;QACnC,GAAG,wBAAwB,CAAC,MAAM,EAAE,OAAO,CAAC;KAC7C;IACD,SAAS,EAAE,0BAA0B,CAAC,SAAS,CAAC;CACjD,EACD,EAAE,KAAK,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,CACvD,CACF,CAAC"}
@@ -1,10 +1,4 @@
1
1
  import { defineConfig } from 'eslint/config';
2
- import { isEmpty } from '../utils.js';
3
- import { getJsoncConfig } from './jsonc.js';
4
- export default (jsons = []) => {
5
- if (isEmpty(jsons)) {
6
- return [];
7
- }
8
- return defineConfig(getJsoncConfig(jsons));
9
- };
2
+ import { getJsoncConfigs } from './jsonc.js';
3
+ export default (jsons = []) => defineConfig(getJsoncConfigs(jsons));
10
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"/","sources":["src/json/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE5C,eAAe,CAAC,QAAkB,EAAE,EAAE,EAAE;IACtC,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACnB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,YAAY,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;AAC7C,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"/","sources":["src/json/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,eAAe,CAAC,QAAkB,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC"}
@@ -1,2 +1,2 @@
1
1
  import type { Linter } from 'eslint';
2
- export declare const getJsoncConfig: (jsons: string[]) => Linter.Config[];
2
+ export declare const getJsoncConfigs: (jsons: string[]) => Linter.Config[];
@@ -1,23 +1,26 @@
1
1
  import json from '@eslint/json';
2
2
  import jsonc from 'eslint-plugin-jsonc';
3
3
  import jsoncParser from 'jsonc-eslint-parser';
4
- export const getJsoncConfig = (jsons) => [
5
- {
6
- files: jsons,
7
- languageOptions: {
8
- parser: jsoncParser,
4
+ import { isEmpty } from 'lodash';
5
+ export const getJsoncConfigs = (jsons) => isEmpty(jsons)
6
+ ? []
7
+ : [
8
+ {
9
+ files: jsons,
10
+ languageOptions: {
11
+ parser: jsoncParser,
12
+ },
13
+ plugins: {
14
+ json,
15
+ jsonc,
16
+ },
17
+ rules: {
18
+ ...jsonc.configs['flat/recommended-with-jsonc'].rules,
19
+ 'jsonc/no-comments': 'error',
20
+ 'jsonc/no-dupe-keys': 'error',
21
+ 'jsonc/sort-keys': 'error',
22
+ 'jsonc/valid-json-number': 'error',
23
+ },
9
24
  },
10
- plugins: {
11
- json,
12
- jsonc,
13
- },
14
- rules: {
15
- ...jsonc.configs['flat/recommended-with-jsonc'].rules,
16
- 'jsonc/no-comments': 'error',
17
- 'jsonc/no-dupe-keys': 'error',
18
- 'jsonc/sort-keys': 'error',
19
- 'jsonc/valid-json-number': 'error',
20
- },
21
- },
22
- ];
25
+ ];
23
26
  //# sourceMappingURL=jsonc.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"jsonc.js","sourceRoot":"/","sources":["src/json/jsonc.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,cAAc,CAAC;AAEhC,OAAO,KAAK,MAAM,qBAAqB,CAAC;AACxC,OAAO,WAAW,MAAM,qBAAqB,CAAC;AAE9C,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAe,EAAmB,EAAE,CAAC;IAClE;QACE,KAAK,EAAE,KAAK;QACZ,eAAe,EAAE;YACf,MAAM,EAAE,WAAW;SACpB;QACD,OAAO,EAAE;YACP,IAAI;YACJ,KAAK;SACsB;QAC7B,KAAK,EAAE;YAEL,GAAI,KAAK,CAAC,OAAO,CAAC,6BAA6B,CAAS,CAAC,KAAK;YAC9D,mBAAmB,EAAE,OAAO;YAC5B,oBAAoB,EAAE,OAAO;YAC7B,iBAAiB,EAAE,OAAO;YAC1B,yBAAyB,EAAE,OAAO;SACnC;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"jsonc.js","sourceRoot":"/","sources":["src/json/jsonc.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,cAAc,CAAC;AAEhC,OAAO,KAAK,MAAM,qBAAqB,CAAC;AACxC,OAAO,WAAW,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEjC,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAe,EAAmB,EAAE,CAClE,OAAO,CAAC,KAAK,CAAC;IACZ,CAAC,CAAC,EAAE;IACJ,CAAC,CAAC;QACE;YACE,KAAK,EAAE,KAAK;YACZ,eAAe,EAAE;gBACf,MAAM,EAAE,WAAW;aACpB;YACD,OAAO,EAAE;gBACP,IAAI;gBACJ,KAAK;aACiC;YACxC,KAAK,EAAE;gBAEL,GAAI,KAAK,CAAC,OAAO,CAAC,6BAA6B,CAAS,CAAC,KAAK;gBAC9D,mBAAmB,EAAE,OAAO;gBAC5B,oBAAoB,EAAE,OAAO;gBAC7B,iBAAiB,EAAE,OAAO;gBAC1B,yBAAyB,EAAE,OAAO;aACnC;SACF;KACF,CAAC"}
@@ -1,11 +1,4 @@
1
1
  import { defineConfig } from 'eslint/config';
2
- import { isEmpty } from '../utils.js';
3
2
  import { getNxConfigs } from './nx.js';
4
- export default (sources = []) => {
5
- const configs = [];
6
- if (!isEmpty(sources)) {
7
- configs.push(...getNxConfigs(sources));
8
- }
9
- return defineConfig(configs);
10
- };
3
+ export default (sources = []) => defineConfig(getNxConfigs(sources));
11
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"/","sources":["src/nx/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAG7C,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,eAAe,CAAC,UAAoB,EAAE,EAAoC,EAAE;IAC1E,MAAM,OAAO,GAAoB,EAAE,CAAC;IAEpC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;IACzC,CAAC;IAED,OAAO,YAAY,CAAC,OAAO,CAAC,CAAC;AAC/B,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"/","sources":["src/nx/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAG7C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,eAAe,CAAC,UAAoB,EAAE,EAAoC,EAAE,CAC1E,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC"}
package/dist/src/nx/nx.js CHANGED
@@ -1,25 +1,28 @@
1
1
  import nx from '@nx/eslint-plugin';
2
- export const getNxConfigs = (sources) => [
3
- ...nx.configs['flat/base'],
4
- ...nx.configs['flat/typescript'],
5
- ...nx.configs['flat/javascript'],
6
- {
7
- files: sources,
8
- rules: {
9
- '@nx/enforce-module-boundaries': [
10
- 'error',
11
- {
12
- allow: ['^.*/eslint(\\.base)?\\.config\\.[cm]?js$'],
13
- depConstraints: [
14
- {
15
- onlyDependOnLibsWithTags: ['*'],
16
- sourceTag: '*',
17
- },
18
- ],
19
- enforceBuildableLibDependency: true,
20
- },
21
- ],
2
+ import { isEmpty } from 'lodash';
3
+ export const getNxConfigs = (sources) => isEmpty(sources)
4
+ ? []
5
+ : [
6
+ ...nx.configs['flat/base'],
7
+ ...nx.configs['flat/typescript'],
8
+ ...nx.configs['flat/javascript'],
9
+ {
10
+ files: sources,
11
+ rules: {
12
+ '@nx/enforce-module-boundaries': [
13
+ 'error',
14
+ {
15
+ allow: ['^.*/eslint(\\.base)?\\.config\\.[cm]?js$'],
16
+ depConstraints: [
17
+ {
18
+ onlyDependOnLibsWithTags: ['*'],
19
+ sourceTag: '*',
20
+ },
21
+ ],
22
+ enforceBuildableLibDependency: true,
23
+ },
24
+ ],
25
+ },
22
26
  },
23
- },
24
- ];
27
+ ];
25
28
  //# sourceMappingURL=nx.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nx.js","sourceRoot":"/","sources":["src/nx/nx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAGnC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,OAAiB,EAAmB,EAAE,CACjE;IACE,GAAG,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC;IAC1B,GAAG,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC;IAChC,GAAG,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC;IAChC;QACE,KAAK,EAAE,OAAO;QACd,KAAK,EAAE;YACL,+BAA+B,EAAE;gBAC/B,OAAO;gBACP;oBACE,KAAK,EAAE,CAAC,0CAA0C,CAAC;oBACnD,cAAc,EAAE;wBACd;4BACE,wBAAwB,EAAE,CAAC,GAAG,CAAC;4BAC/B,SAAS,EAAE,GAAG;yBACf;qBACF;oBACD,6BAA6B,EAAE,IAAI;iBACpC;aACF;SACF;KACF;CACiB,CAAC"}
1
+ {"version":3,"file":"nx.js","sourceRoot":"/","sources":["src/nx/nx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAEnC,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEjC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,OAAiB,EAAmB,EAAE,CACjE,OAAO,CAAC,OAAO,CAAC;IACd,CAAC,CAAC,EAAE;IACJ,CAAC,CAAE;QACC,GAAG,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC;QAC1B,GAAG,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC;QAChC,GAAG,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC;QAChC;YACE,KAAK,EAAE,OAAO;YACd,KAAK,EAAE;gBACL,+BAA+B,EAAE;oBAC/B,OAAO;oBACP;wBACE,KAAK,EAAE,CAAC,0CAA0C,CAAC;wBACnD,cAAc,EAAE;4BACd;gCACE,wBAAwB,EAAE,CAAC,GAAG,CAAC;gCAC/B,SAAS,EAAE,GAAG;6BACf;yBACF;wBACD,6BAA6B,EAAE,IAAI;qBACpC;iBACF;aACF;SACF;KACkB,CAAC"}
@@ -1,3 +1,2 @@
1
1
  import type { Linter } from 'eslint';
2
- export declare const getEslintConfig: (sources: string[], isTests: boolean) => Linter.Config;
3
- export declare const getEslintConfigRuleKeys: () => string[];
2
+ export declare const getEslintConfigs: (sources: string[], isTests: boolean) => Linter.Config[];
@@ -1,30 +1,34 @@
1
1
  import eslint from '@eslint/js';
2
- export const getEslintConfig = (sources, isTests) => {
2
+ import { isEmpty } from 'lodash';
3
+ export const getEslintConfigs = (sources, isTests) => {
3
4
  const errorWhenNotTests = !isTests ? 'error' : 'off';
4
- return {
5
- files: sources,
6
- rules: {
7
- ...eslint.configs.all.rules,
8
- 'id-length': 'off',
9
- 'max-lines-per-function': errorWhenNotTests,
10
- 'max-params': ['error', 6],
11
- 'max-statements': ['error', 15],
12
- 'new-cap': 'off',
13
- 'no-await-in-loop': 'off',
14
- 'no-duplicate-imports': 'off',
15
- 'no-magic-numbers': 'off',
16
- 'no-plusplus': 'off',
17
- 'no-ternary': 'off',
18
- 'no-underscore-dangle': 'off',
19
- 'no-unused-vars': 'off',
20
- 'no-void': 'off',
21
- 'no-warning-comments': 'off',
22
- 'one-var': 'off',
23
- 'sort-imports': 'off',
24
- 'sort-keys': 'off',
25
- 'sort-vars': 'off',
26
- },
27
- };
5
+ return isEmpty(sources)
6
+ ? []
7
+ : [
8
+ {
9
+ files: sources,
10
+ rules: {
11
+ ...eslint.configs.all.rules,
12
+ 'id-length': 'off',
13
+ 'max-lines-per-function': errorWhenNotTests,
14
+ 'max-params': ['error', 6],
15
+ 'max-statements': ['error', 15],
16
+ 'new-cap': 'off',
17
+ 'no-await-in-loop': 'off',
18
+ 'no-duplicate-imports': 'off',
19
+ 'no-magic-numbers': 'off',
20
+ 'no-plusplus': 'off',
21
+ 'no-ternary': 'off',
22
+ 'no-underscore-dangle': 'off',
23
+ 'no-unused-vars': 'off',
24
+ 'no-void': 'off',
25
+ 'no-warning-comments': 'off',
26
+ 'one-var': 'off',
27
+ 'sort-imports': 'off',
28
+ 'sort-keys': 'off',
29
+ 'sort-vars': 'off',
30
+ },
31
+ },
32
+ ];
28
33
  };
29
- export const getEslintConfigRuleKeys = () => Object.keys(getEslintConfig([], false).rules ?? {});
30
34
  //# sourceMappingURL=eslint.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"eslint.js","sourceRoot":"/","sources":["src/typescript/eslint.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,YAAY,CAAC;AAGhC,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,OAAiB,EACjB,OAAgB,EACD,EAAE;IACjB,MAAM,iBAAiB,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;IAErD,OAAO;QACL,KAAK,EAAE,OAAO;QACd,KAAK,EAAE;YACL,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK;YAC3B,WAAW,EAAE,KAAK;YAClB,wBAAwB,EAAE,iBAAiB;YAC3C,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YAC1B,gBAAgB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC;YAC/B,SAAS,EAAE,KAAK;YAChB,kBAAkB,EAAE,KAAK;YACzB,sBAAsB,EAAE,KAAK;YAC7B,kBAAkB,EAAE,KAAK;YACzB,aAAa,EAAE,KAAK;YACpB,YAAY,EAAE,KAAK;YACnB,sBAAsB,EAAE,KAAK;YAC7B,gBAAgB,EAAE,KAAK;YACvB,SAAS,EAAE,KAAK;YAChB,qBAAqB,EAAE,KAAK;YAC5B,SAAS,EAAE,KAAK;YAChB,cAAc,EAAE,KAAK;YACrB,WAAW,EAAE,KAAK;YAClB,WAAW,EAAE,KAAK;SACnB;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAa,EAAE,CACpD,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"eslint.js","sourceRoot":"/","sources":["src/typescript/eslint.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,YAAY,CAAC;AAEhC,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEjC,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,OAAiB,EACjB,OAAgB,EACC,EAAE;IACnB,MAAM,iBAAiB,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;IAErD,OAAO,OAAO,CAAC,OAAO,CAAC;QACrB,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC;YACE;gBACE,KAAK,EAAE,OAAO;gBACd,KAAK,EAAE;oBACL,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK;oBAC3B,WAAW,EAAE,KAAK;oBAClB,wBAAwB,EAAE,iBAAiB;oBAC3C,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;oBAC1B,gBAAgB,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC;oBAC/B,SAAS,EAAE,KAAK;oBAChB,kBAAkB,EAAE,KAAK;oBACzB,sBAAsB,EAAE,KAAK;oBAC7B,kBAAkB,EAAE,KAAK;oBACzB,aAAa,EAAE,KAAK;oBACpB,YAAY,EAAE,KAAK;oBACnB,sBAAsB,EAAE,KAAK;oBAC7B,gBAAgB,EAAE,KAAK;oBACvB,SAAS,EAAE,KAAK;oBAChB,qBAAqB,EAAE,KAAK;oBAC5B,SAAS,EAAE,KAAK;oBAChB,cAAc,EAAE,KAAK;oBACrB,WAAW,EAAE,KAAK;oBAClB,WAAW,EAAE,KAAK;iBACnB;aACF;SACF,CAAC;AACR,CAAC,CAAC"}
@@ -1,3 +1,3 @@
1
1
  import type { Linter } from 'eslint';
2
- export declare const createTypeScriptConfigs: (sources?: string[], tsconfigRootDir?: string, shouldResolveAppRootDir?: boolean) => Linter.Config<import("node_modules/@eslint/core/dist/cjs/types.cjs").RulesConfig>[];
3
- export declare const createTypeScriptTestsConfigs: (sources?: string[], tsconfigRootDir?: string) => Linter.Config<import("node_modules/@eslint/core/dist/cjs/types.cjs").RulesConfig>[];
2
+ export declare const createTypeScriptConfigs: (sources?: string[], tsconfigRootDir?: string, shouldResolveAppRootDir?: boolean) => Linter.Config[];
3
+ export declare const createTypeScriptTestsConfigs: (sources?: string[], tsconfigRootDir?: string) => Linter.Config[];
@@ -1,32 +1,25 @@
1
1
  import { get as getAppRootDir } from 'app-root-dir';
2
2
  import { defineConfig } from 'eslint/config';
3
- import { isEmpty } from '../utils.js';
4
- import { getEslintConfig } from './eslint.js';
5
- import { getSimpleImportSortConfig } from './simple-import-sort.js';
6
- import { getTypescriptEslintConfig } from './typescript-eslint.js';
7
- import { getUnicornConfig } from './unicorn.js';
8
- const createConfigs = (sources = [], isTests = false, tsconfigRootDir, shouldResolveAppRootDir) => {
9
- if (isEmpty(sources)) {
10
- return [];
11
- }
12
- const parserOptions = {};
13
- if (tsconfigRootDir && !shouldResolveAppRootDir) {
14
- Object.assign(parserOptions, { tsconfigRootDir });
15
- }
16
- else if (shouldResolveAppRootDir) {
17
- Object.assign(parserOptions, { tsconfigRootDir: getAppRootDir() });
18
- }
19
- return defineConfig([
20
- getEslintConfig(sources, isTests),
21
- getTypescriptEslintConfig(sources, parserOptions, isTests),
22
- getUnicornConfig(sources),
23
- getSimpleImportSortConfig(sources),
3
+ import { isEmpty } from 'lodash';
4
+ import { getEslintConfigs } from './eslint.js';
5
+ import { getSimpleImportSortConfigs } from './simple-import-sort.js';
6
+ import { getTypescriptEslintConfigs } from './typescript-eslint.js';
7
+ import { getUnicornConfigs } from './unicorn.js';
8
+ const createConfigs = (sources = [], isTests = false, tsconfigRootDir, shouldResolveAppRootDir) => isEmpty(sources)
9
+ ? []
10
+ : defineConfig([
11
+ ...getEslintConfigs(sources, isTests),
12
+ ...getTypescriptEslintConfigs(sources, {
13
+ ...(tsconfigRootDir && !shouldResolveAppRootDir
14
+ ? { tsconfigRootDir }
15
+ : {}),
16
+ ...(shouldResolveAppRootDir
17
+ ? { tsconfigRootDir: getAppRootDir() }
18
+ : {}),
19
+ }, isTests),
20
+ ...getUnicornConfigs(sources),
21
+ ...getSimpleImportSortConfigs(sources),
24
22
  ]);
25
- };
26
- export const createTypeScriptConfigs = (sources = [], tsconfigRootDir, shouldResolveAppRootDir) => {
27
- return createConfigs(sources, false, tsconfigRootDir, shouldResolveAppRootDir);
28
- };
29
- export const createTypeScriptTestsConfigs = (sources = [], tsconfigRootDir) => {
30
- return createConfigs(sources, true, tsconfigRootDir);
31
- };
23
+ export const createTypeScriptConfigs = (sources = [], tsconfigRootDir, shouldResolveAppRootDir) => createConfigs(sources, false, tsconfigRootDir, shouldResolveAppRootDir);
24
+ export const createTypeScriptTestsConfigs = (sources = [], tsconfigRootDir) => createConfigs(sources, true, tsconfigRootDir);
32
25
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"/","sources":["src/typescript/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,IAAI,aAAa,EAAE,MAAM,cAAc,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,aAAa,GAAG,CACpB,UAAoB,EAAE,EACtB,OAAO,GAAG,KAAK,EACf,eAAwB,EACxB,uBAAiC,EAChB,EAAE;IACnB,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACrB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,aAAa,GAAG,EAAE,CAAC;IAEzB,IAAI,eAAe,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAChD,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,eAAe,EAAE,CAAC,CAAC;IACpD,CAAC;SAAM,IAAI,uBAAuB,EAAE,CAAC;QACnC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,eAAe,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,OAAO,YAAY,CAAC;QAClB,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC;QACjC,yBAAyB,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC;QAC1D,gBAAgB,CAAC,OAAO,CAAC;QACzB,yBAAyB,CAAC,OAAO,CAAC;KACnC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,UAAoB,EAAE,EACtB,eAAwB,EACxB,uBAAiC,EACjC,EAAE;IACF,OAAO,aAAa,CAClB,OAAO,EACP,KAAK,EACL,eAAe,EACf,uBAAuB,CACxB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAC1C,UAAoB,EAAE,EACtB,eAAwB,EACxB,EAAE;IACF,OAAO,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC;AACvD,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"/","sources":["src/typescript/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,IAAI,aAAa,EAAE,MAAM,cAAc,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD,MAAM,aAAa,GAAG,CACpB,UAAoB,EAAE,EACtB,OAAO,GAAG,KAAK,EACf,eAAwB,EACxB,uBAAiC,EAChB,EAAE,CACnB,OAAO,CAAC,OAAO,CAAC;IACd,CAAC,CAAC,EAAE;IACJ,CAAC,CAAC,YAAY,CAAC;QACX,GAAG,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC;QACrC,GAAG,0BAA0B,CAC3B,OAAO,EACP;YACE,GAAG,CAAC,eAAe,IAAI,CAAC,uBAAuB;gBAC7C,CAAC,CAAC,EAAE,eAAe,EAAE;gBACrB,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,uBAAuB;gBACzB,CAAC,CAAC,EAAE,eAAe,EAAE,aAAa,EAAE,EAAE;gBACtC,CAAC,CAAC,EAAE,CAAC;SACR,EACD,OAAO,CACR;QACD,GAAG,iBAAiB,CAAC,OAAO,CAAC;QAC7B,GAAG,0BAA0B,CAAC,OAAO,CAAC;KACvC,CAAC,CAAC;AAET,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,UAAoB,EAAE,EACtB,eAAwB,EACxB,uBAAiC,EAChB,EAAE,CACnB,aAAa,CAAC,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,uBAAuB,CAAC,CAAC;AAE1E,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAC1C,UAAoB,EAAE,EACtB,eAAwB,EACP,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC"}
@@ -1,2 +1,2 @@
1
1
  import type { Linter } from 'eslint';
2
- export declare const getSimpleImportSortConfig: (sources: string[]) => Linter.Config;
2
+ export declare const getSimpleImportSortConfigs: (sources: string[]) => Linter.Config[];
@@ -1,10 +1,15 @@
1
1
  import simpleImportSort from 'eslint-plugin-simple-import-sort';
2
- export const getSimpleImportSortConfig = (sources) => ({
3
- files: sources,
4
- plugins: { 'simple-import-sort': simpleImportSort },
5
- rules: {
6
- 'simple-import-sort/exports': 'error',
7
- 'simple-import-sort/imports': 'error',
8
- },
9
- });
2
+ import { isEmpty } from 'lodash';
3
+ export const getSimpleImportSortConfigs = (sources) => isEmpty(sources)
4
+ ? []
5
+ : [
6
+ {
7
+ files: sources,
8
+ plugins: { 'simple-import-sort': simpleImportSort },
9
+ rules: {
10
+ 'simple-import-sort/exports': 'error',
11
+ 'simple-import-sort/imports': 'error',
12
+ },
13
+ },
14
+ ];
10
15
  //# sourceMappingURL=simple-import-sort.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"simple-import-sort.js","sourceRoot":"/","sources":["src/typescript/simple-import-sort.ts"],"names":[],"mappings":"AACA,OAAO,gBAAgB,MAAM,kCAAkC,CAAC;AAEhE,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,OAAiB,EACF,EAAE,CAAC,CAAC;IACnB,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,EAAE,oBAAoB,EAAE,gBAAgB,EAAE;IACnD,KAAK,EAAE;QACL,4BAA4B,EAAE,OAAO;QACrC,4BAA4B,EAAE,OAAO;KACtC;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"simple-import-sort.js","sourceRoot":"/","sources":["src/typescript/simple-import-sort.ts"],"names":[],"mappings":"AACA,OAAO,gBAAgB,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEjC,MAAM,CAAC,MAAM,0BAA0B,GAAG,CACxC,OAAiB,EACA,EAAE,CACnB,OAAO,CAAC,OAAO,CAAC;IACd,CAAC,CAAC,EAAE;IACJ,CAAC,CAAC;QACE;YACE,KAAK,EAAE,OAAO;YACd,OAAO,EAAE,EAAE,oBAAoB,EAAE,gBAAgB,EAAE;YACnD,KAAK,EAAE;gBACL,4BAA4B,EAAE,OAAO;gBACrC,4BAA4B,EAAE,OAAO;aACtC;SACF;KACF,CAAC"}
@@ -1,3 +1,2 @@
1
1
  import type { Linter } from 'eslint';
2
- export declare const getTypescriptEslintConfig: (sources: string[], parserOptions: Record<string, unknown>, isTests: boolean) => Linter.Config;
3
- export declare const getTypescriptEslintConfigRuleKeys: () => string[];
2
+ export declare const getTypescriptEslintConfigs: (sources: string[], parserOptions: Record<string, unknown>, isTests: boolean) => Linter.Config[];
@@ -1,191 +1,213 @@
1
+ import { isEmpty } from 'lodash';
1
2
  import tseslint from 'typescript-eslint';
2
- export const getTypescriptEslintConfig = (sources, parserOptions, isTests) => {
3
+ export const getTypescriptEslintConfigs = (sources, parserOptions, isTests) => {
3
4
  const warnWhenNotTests = !isTests ? 'warn' : 'off';
4
5
  const errorWhenNotTests = !isTests ? 'error' : 'off';
5
- return {
6
- files: sources,
7
- languageOptions: {
8
- parser: tseslint.parser,
9
- parserOptions: {
10
- ...parserOptions,
11
- allowAutomaticSingleRunInference: true,
12
- projectService: true,
13
- },
14
- },
15
- plugins: {
16
- '@typescript-eslint': tseslint.plugin,
17
- },
18
- rules: {
19
- ...tseslint.configs.strictTypeChecked
20
- .map((config) => config.rules)
21
- .reduce((a, b) => ({ ...a, ...b }), {}),
22
- '@typescript-eslint/class-methods-use-this': 'off',
23
- '@typescript-eslint/consistent-type-imports': 'off',
24
- '@typescript-eslint/explicit-member-accessibility': [
25
- 'error',
26
- { accessibility: 'no-public' },
27
- ],
28
- '@typescript-eslint/init-declarations': 'off',
29
- '@typescript-eslint/max-params': 'off',
30
- '@typescript-eslint/member-ordering': [
31
- 'error',
32
- {
33
- default: {
34
- memberTypes: [
35
- 'public-decorated-field',
36
- 'protected-decorated-field',
37
- 'private-decorated-field',
38
- 'public-static-field',
39
- 'protected-static-field',
40
- 'private-static-field',
41
- 'public-instance-field',
42
- 'protected-instance-field',
43
- 'private-instance-field',
44
- 'static-field',
45
- 'public-field',
46
- 'instance-field',
47
- 'protected-field',
48
- 'private-field',
49
- 'constructor',
50
- 'public-static-method',
51
- 'protected-static-method',
52
- 'private-static-method',
53
- 'public-method',
54
- 'protected-method',
55
- 'private-method',
56
- ],
57
- },
58
- },
59
- ],
60
- '@typescript-eslint/naming-convention': [
61
- 'warn',
62
- { format: ['strictCamelCase'], selector: 'default' },
63
- {
64
- filter: {
65
- match: false,
66
- regex: '^_+$',
6
+ return isEmpty(sources)
7
+ ? []
8
+ : [
9
+ {
10
+ files: sources,
11
+ languageOptions: {
12
+ parser: tseslint.parser,
13
+ parserOptions: {
14
+ ...parserOptions,
15
+ allowAutomaticSingleRunInference: true,
16
+ projectService: true,
67
17
  },
68
- format: ['strictCamelCase'],
69
- leadingUnderscore: 'allow',
70
- selector: 'parameter',
71
- },
72
- {
73
- custom: {
74
- match: true,
75
- regex: '^_+$',
76
- },
77
- format: null,
78
- selector: 'parameter',
79
- },
80
- {
81
- format: ['strictCamelCase', 'StrictPascalCase'],
82
- selector: ['function', 'import'],
83
18
  },
84
- {
85
- format: ['StrictPascalCase'],
86
- selector: ['typeLike'],
87
- },
88
- { format: ['PascalCase'], selector: 'enumMember' },
89
- {
90
- format: ['PascalCase'],
91
- modifiers: ['static'],
92
- selector: 'classProperty',
93
- },
94
- {
95
- format: ['PascalCase'],
96
- prefix: ['is', 'has', 'are', 'can', 'should', 'did', 'will', 'with'],
97
- selector: ['variable', 'parameter', 'accessor'],
98
- types: ['boolean'],
99
- },
100
- {
101
- format: null,
102
- modifiers: ['requiresQuotes'],
103
- selector: ['objectLiteralProperty'],
104
- },
105
- {
106
- filter: {
107
- match: false,
108
- regex: '^(allowfullscreen|allowFullScreen|async|autofocus|autoFocus|autoplay|autoPlay|checked|defaultChecked|contenteditable|contentEditable|controls|default|defer|disabled|draggable|formnovalidate|formNoValidate|hidden|inert|ismap|itemscope|itemScope|loop|multiple|muted|nomodule|noModule|novalidate|noValidate|open|playsinline|playsInline|readonly|readOnly|required|reversed|selected|spellcheck|spellCheck)$',
109
- },
110
- format: ['PascalCase'],
111
- prefix: ['is', 'has', 'are', 'can', 'should', 'did', 'will', 'with'],
112
- selector: ['property'],
113
- types: ['boolean'],
19
+ plugins: {
20
+ '@typescript-eslint': tseslint.plugin,
114
21
  },
115
- {
116
- format: ['UPPER_CASE'],
117
- leadingUnderscore: 'allow',
118
- modifiers: ['const', 'global'],
119
- prefix: [
120
- 'IS_',
121
- 'HAS_',
122
- 'ARE_',
123
- 'CAN_',
124
- 'SHOULD_',
125
- 'DID_',
126
- 'WILL_',
127
- 'WITH_',
22
+ rules: {
23
+ ...tseslint.configs.strictTypeChecked
24
+ .map((config) => config.rules)
25
+ .reduce((a, b) => ({ ...a, ...b }), {}),
26
+ '@typescript-eslint/class-methods-use-this': 'off',
27
+ '@typescript-eslint/consistent-type-imports': 'off',
28
+ '@typescript-eslint/explicit-member-accessibility': [
29
+ 'error',
30
+ { accessibility: 'no-public' },
128
31
  ],
129
- selector: 'variable',
130
- types: ['boolean'],
131
- },
132
- {
133
- format: ['UPPER_CASE'],
134
- leadingUnderscore: 'allow',
135
- modifiers: ['const', 'global'],
136
- selector: 'variable',
137
- types: ['string', 'number', 'array'],
138
- },
139
- {
140
- format: ['UPPER_CASE'],
141
- modifiers: ['const', 'global'],
142
- selector: 'default',
143
- },
144
- {
145
- format: ['strictCamelCase'],
146
- modifiers: ['const', 'global'],
147
- selector: 'variable',
148
- types: ['function'],
149
- },
150
- ],
151
- '@typescript-eslint/no-confusing-void-expression': 'off',
152
- '@typescript-eslint/no-explicit-any': errorWhenNotTests,
153
- '@typescript-eslint/no-extraneous-class': 'off',
154
- '@typescript-eslint/no-magic-numbers': [
155
- errorWhenNotTests,
156
- {
157
- ignoreEnums: true,
158
- ignoreNumericLiteralTypes: true,
159
- ignoreReadonlyClassProperties: true,
160
- ignoreTypeIndexes: true,
161
- },
162
- ],
163
- '@typescript-eslint/no-non-null-assertion': errorWhenNotTests,
164
- '@typescript-eslint/no-unsafe-assignment': errorWhenNotTests,
165
- '@typescript-eslint/no-unsafe-call': errorWhenNotTests,
166
- '@typescript-eslint/no-unsafe-function-type': errorWhenNotTests,
167
- '@typescript-eslint/no-unsafe-member-access': errorWhenNotTests,
168
- '@typescript-eslint/no-unsafe-return': errorWhenNotTests,
169
- '@typescript-eslint/no-unsafe-type-assertion': warnWhenNotTests,
170
- '@typescript-eslint/no-unused-vars': [
171
- 'error',
172
- {
173
- args: 'all',
174
- argsIgnorePattern: '^_',
175
- caughtErrors: 'all',
176
- caughtErrorsIgnorePattern: '^_',
177
- destructuredArrayIgnorePattern: '^_',
178
- ignoreRestSiblings: true,
179
- varsIgnorePattern: '^_',
32
+ '@typescript-eslint/init-declarations': 'off',
33
+ '@typescript-eslint/max-params': 'off',
34
+ '@typescript-eslint/member-ordering': [
35
+ 'error',
36
+ {
37
+ default: {
38
+ memberTypes: [
39
+ 'public-decorated-field',
40
+ 'protected-decorated-field',
41
+ 'private-decorated-field',
42
+ 'public-static-field',
43
+ 'protected-static-field',
44
+ 'private-static-field',
45
+ 'public-instance-field',
46
+ 'protected-instance-field',
47
+ 'private-instance-field',
48
+ 'static-field',
49
+ 'public-field',
50
+ 'instance-field',
51
+ 'protected-field',
52
+ 'private-field',
53
+ 'constructor',
54
+ 'public-static-method',
55
+ 'protected-static-method',
56
+ 'private-static-method',
57
+ 'public-method',
58
+ 'protected-method',
59
+ 'private-method',
60
+ ],
61
+ },
62
+ },
63
+ ],
64
+ '@typescript-eslint/naming-convention': [
65
+ 'warn',
66
+ { format: ['strictCamelCase'], selector: 'default' },
67
+ {
68
+ filter: {
69
+ match: false,
70
+ regex: '^_+$',
71
+ },
72
+ format: ['strictCamelCase'],
73
+ leadingUnderscore: 'allow',
74
+ selector: 'parameter',
75
+ },
76
+ {
77
+ custom: {
78
+ match: true,
79
+ regex: '^_+$',
80
+ },
81
+ format: null,
82
+ selector: 'parameter',
83
+ },
84
+ {
85
+ format: ['strictCamelCase', 'StrictPascalCase'],
86
+ selector: ['function', 'import'],
87
+ },
88
+ {
89
+ format: ['StrictPascalCase'],
90
+ selector: ['typeLike'],
91
+ },
92
+ { format: ['PascalCase'], selector: 'enumMember' },
93
+ {
94
+ format: ['PascalCase'],
95
+ modifiers: ['static'],
96
+ selector: 'classProperty',
97
+ },
98
+ {
99
+ format: ['PascalCase'],
100
+ prefix: [
101
+ 'is',
102
+ 'has',
103
+ 'are',
104
+ 'can',
105
+ 'should',
106
+ 'did',
107
+ 'will',
108
+ 'with',
109
+ ],
110
+ selector: ['variable', 'parameter', 'accessor'],
111
+ types: ['boolean'],
112
+ },
113
+ {
114
+ format: null,
115
+ modifiers: ['requiresQuotes'],
116
+ selector: ['objectLiteralProperty'],
117
+ },
118
+ {
119
+ filter: {
120
+ match: false,
121
+ regex: '^(allowfullscreen|allowFullScreen|async|autofocus|autoFocus|autoplay|autoPlay|checked|defaultChecked|contenteditable|contentEditable|controls|default|defer|disabled|draggable|formnovalidate|formNoValidate|hidden|inert|ismap|itemscope|itemScope|loop|multiple|muted|nomodule|noModule|novalidate|noValidate|open|playsinline|playsInline|readonly|readOnly|required|reversed|selected|spellcheck|spellCheck)$',
122
+ },
123
+ format: ['PascalCase'],
124
+ prefix: [
125
+ 'is',
126
+ 'has',
127
+ 'are',
128
+ 'can',
129
+ 'should',
130
+ 'did',
131
+ 'will',
132
+ 'with',
133
+ ],
134
+ selector: ['property'],
135
+ types: ['boolean'],
136
+ },
137
+ {
138
+ format: ['UPPER_CASE'],
139
+ leadingUnderscore: 'allow',
140
+ modifiers: ['const', 'global'],
141
+ prefix: [
142
+ 'IS_',
143
+ 'HAS_',
144
+ 'ARE_',
145
+ 'CAN_',
146
+ 'SHOULD_',
147
+ 'DID_',
148
+ 'WILL_',
149
+ 'WITH_',
150
+ ],
151
+ selector: 'variable',
152
+ types: ['boolean'],
153
+ },
154
+ {
155
+ format: ['UPPER_CASE'],
156
+ leadingUnderscore: 'allow',
157
+ modifiers: ['const', 'global'],
158
+ selector: 'variable',
159
+ types: ['string', 'number', 'array'],
160
+ },
161
+ {
162
+ format: ['UPPER_CASE'],
163
+ modifiers: ['const', 'global'],
164
+ selector: 'default',
165
+ },
166
+ {
167
+ format: ['strictCamelCase'],
168
+ modifiers: ['const', 'global'],
169
+ selector: 'variable',
170
+ types: ['function'],
171
+ },
172
+ ],
173
+ '@typescript-eslint/no-confusing-void-expression': 'off',
174
+ '@typescript-eslint/no-explicit-any': errorWhenNotTests,
175
+ '@typescript-eslint/no-extraneous-class': 'off',
176
+ '@typescript-eslint/no-magic-numbers': [
177
+ errorWhenNotTests,
178
+ {
179
+ ignoreEnums: true,
180
+ ignoreNumericLiteralTypes: true,
181
+ ignoreReadonlyClassProperties: true,
182
+ ignoreTypeIndexes: true,
183
+ },
184
+ ],
185
+ '@typescript-eslint/no-non-null-assertion': errorWhenNotTests,
186
+ '@typescript-eslint/no-unsafe-assignment': errorWhenNotTests,
187
+ '@typescript-eslint/no-unsafe-call': errorWhenNotTests,
188
+ '@typescript-eslint/no-unsafe-function-type': errorWhenNotTests,
189
+ '@typescript-eslint/no-unsafe-member-access': errorWhenNotTests,
190
+ '@typescript-eslint/no-unsafe-return': errorWhenNotTests,
191
+ '@typescript-eslint/no-unsafe-type-assertion': warnWhenNotTests,
192
+ '@typescript-eslint/no-unused-vars': [
193
+ 'error',
194
+ {
195
+ args: 'all',
196
+ argsIgnorePattern: '^_',
197
+ caughtErrors: 'all',
198
+ caughtErrorsIgnorePattern: '^_',
199
+ destructuredArrayIgnorePattern: '^_',
200
+ ignoreRestSiblings: true,
201
+ varsIgnorePattern: '^_',
202
+ },
203
+ ],
204
+ '@typescript-eslint/parameter-properties': 'off',
205
+ '@typescript-eslint/prefer-destructuring': errorWhenNotTests,
206
+ '@typescript-eslint/prefer-readonly-parameter-types': 'off',
207
+ '@typescript-eslint/require-await': 'off',
208
+ '@typescript-eslint/strict-boolean-expressions': 'off',
180
209
  },
181
- ],
182
- '@typescript-eslint/parameter-properties': 'off',
183
- '@typescript-eslint/prefer-destructuring': errorWhenNotTests,
184
- '@typescript-eslint/prefer-readonly-parameter-types': 'off',
185
- '@typescript-eslint/require-await': 'off',
186
- '@typescript-eslint/strict-boolean-expressions': 'off',
187
- },
188
- };
210
+ },
211
+ ];
189
212
  };
190
- export const getTypescriptEslintConfigRuleKeys = () => Object.keys(getTypescriptEslintConfig([], {}, false).rules ?? {});
191
213
  //# sourceMappingURL=typescript-eslint.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"typescript-eslint.js","sourceRoot":"/","sources":["src/typescript/typescript-eslint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typescript-eslint.js","sourceRoot":"/","sources":["src/typescript/typescript-eslint.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
1
  import type { Linter } from 'eslint';
2
- export declare const getUnicornConfig: (sources: string[]) => Linter.Config;
2
+ export declare const getUnicornConfigs: (sources: string[]) => Linter.Config[];
@@ -1,24 +1,29 @@
1
1
  import unicorn from 'eslint-plugin-unicorn';
2
2
  import globals from 'globals';
3
- export const getUnicornConfig = (sources) => ({
4
- ...unicorn.configs.all,
5
- files: sources,
6
- languageOptions: {
7
- ...unicorn.configs.all.languageOptions,
8
- globals: globals.builtin,
9
- },
10
- rules: {
11
- ...unicorn.configs.all.rules,
12
- 'unicorn/import-style': 'off',
13
- 'unicorn/no-array-for-each': 'off',
14
- 'unicorn/no-array-reduce': 'off',
15
- 'unicorn/no-for-loop': 'error',
16
- 'unicorn/no-null': 'off',
17
- 'unicorn/number-literal-case': 'off',
18
- 'unicorn/prefer-global-this': 'off',
19
- 'unicorn/prefer-ternary': 'off',
20
- 'unicorn/prevent-abbreviations': 'off',
21
- 'unicorn/template-indent': 'off',
22
- },
23
- });
3
+ import { isEmpty } from 'lodash';
4
+ export const getUnicornConfigs = (sources) => isEmpty(sources)
5
+ ? []
6
+ : [
7
+ {
8
+ ...unicorn.configs.all,
9
+ files: sources,
10
+ languageOptions: {
11
+ ...unicorn.configs.all.languageOptions,
12
+ globals: globals.builtin,
13
+ },
14
+ rules: {
15
+ ...unicorn.configs.all.rules,
16
+ 'unicorn/import-style': 'off',
17
+ 'unicorn/no-array-for-each': 'off',
18
+ 'unicorn/no-array-reduce': 'off',
19
+ 'unicorn/no-for-loop': 'error',
20
+ 'unicorn/no-null': 'off',
21
+ 'unicorn/number-literal-case': 'off',
22
+ 'unicorn/prefer-global-this': 'off',
23
+ 'unicorn/prefer-ternary': 'off',
24
+ 'unicorn/prevent-abbreviations': 'off',
25
+ 'unicorn/template-indent': 'off',
26
+ },
27
+ },
28
+ ];
24
29
  //# sourceMappingURL=unicorn.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"unicorn.js","sourceRoot":"/","sources":["src/typescript/unicorn.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,uBAAuB,CAAC;AAC5C,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAAiB,EAAiB,EAAE,CAAC,CAAC;IACrE,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG;IACtB,KAAK,EAAE,OAAO;IACd,eAAe,EAAE;QACf,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe;QACtC,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB;IACD,KAAK,EAAE;QACL,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK;QAC5B,sBAAsB,EAAE,KAAK;QAC7B,2BAA2B,EAAE,KAAK;QAClC,yBAAyB,EAAE,KAAK;QAChC,qBAAqB,EAAE,OAAO;QAC9B,iBAAiB,EAAE,KAAK;QACxB,6BAA6B,EAAE,KAAK;QACpC,4BAA4B,EAAE,KAAK;QACnC,wBAAwB,EAAE,KAAK;QAC/B,+BAA+B,EAAE,KAAK;QACtC,yBAAyB,EAAE,KAAK;KACjC;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"unicorn.js","sourceRoot":"/","sources":["src/typescript/unicorn.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,uBAAuB,CAAC;AAC5C,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEjC,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,OAAiB,EAAmB,EAAE,CACtE,OAAO,CAAC,OAAO,CAAC;IACd,CAAC,CAAC,EAAE;IACJ,CAAC,CAAC;QACE;YACE,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG;YACtB,KAAK,EAAE,OAAO;YACd,eAAe,EAAE;gBACf,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe;gBACtC,OAAO,EAAE,OAAO,CAAC,OAAO;aACzB;YACD,KAAK,EAAE;gBACL,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK;gBAC5B,sBAAsB,EAAE,KAAK;gBAC7B,2BAA2B,EAAE,KAAK;gBAClC,yBAAyB,EAAE,KAAK;gBAChC,qBAAqB,EAAE,OAAO;gBAC9B,iBAAiB,EAAE,KAAK;gBACxB,6BAA6B,EAAE,KAAK;gBACpC,4BAA4B,EAAE,KAAK;gBACnC,wBAAwB,EAAE,KAAK;gBAC/B,+BAA+B,EAAE,KAAK;gBACtC,yBAAyB,EAAE,KAAK;aACjC;SACF;KACF,CAAC"}
@@ -1,2 +1,5 @@
1
- export declare function isEmpty(value: unknown): boolean;
2
- export declare function isNotEmpty(value: unknown): boolean;
1
+ import type { Linter } from 'eslint';
2
+ export declare const isNotEmpty: (value: unknown) => boolean;
3
+ export declare const addCrossConfigOffRules: (configs: Record<string, Linter.Config[]>, options?: {
4
+ order?: string[];
5
+ }) => Linter.Config[];
package/dist/src/utils.js CHANGED
@@ -1,7 +1,53 @@
1
- export function isEmpty(value) {
2
- return (Array.isArray(value) && value.length === 0) || !Array.isArray(value);
3
- }
4
- export function isNotEmpty(value) {
5
- return !isEmpty(value);
6
- }
1
+ import { chain, isEmpty, keys as getKeys, mapValues } from 'lodash';
2
+ export const isNotEmpty = (value) => !isEmpty(value);
3
+ const extractRulesPerKey = (configs) => mapValues(configs, (configArray) => chain(configArray)
4
+ .flatMap((config) => getKeys(config.rules ?? {}))
5
+ .uniq()
6
+ .value());
7
+ const extractFilesPerKey = (configs) => mapValues(configs, (configArray) => chain(configArray)
8
+ .flatMap((config) => config.files ?? [])
9
+ .flatten()
10
+ .filter((f) => typeof f === 'string')
11
+ .uniq()
12
+ .value());
13
+ const createOffRulesConfigs = (keys, rulesPerKey, filesPerKey) => chain(keys)
14
+ .map((key) => ({
15
+ files: filesPerKey[key] ?? [],
16
+ filesKey: JSON.stringify([...(filesPerKey[key] ?? [])].sort()),
17
+ key,
18
+ otherRules: chain(keys)
19
+ .filter((k) => k !== key)
20
+ .flatMap((k) => rulesPerKey[k] ?? [])
21
+ .uniq()
22
+ .value(),
23
+ }))
24
+ .filter(({ otherRules }) => otherRules.length > 0)
25
+ .groupBy('filesKey')
26
+ .values()
27
+ .map((group) => ({
28
+ files: group[0]?.files ?? [],
29
+ rules: chain(group)
30
+ .flatMap((g) => g.otherRules)
31
+ .uniq()
32
+ .keyBy()
33
+ .mapValues(() => 'off')
34
+ .value(),
35
+ }))
36
+ .map(({ files, rules }) => ({
37
+ name: 'disable-other-rules',
38
+ ...(files.length > 0 && { files }),
39
+ rules,
40
+ }))
41
+ .value();
42
+ export const addCrossConfigOffRules = (configs, options) => {
43
+ const keys = getKeys(configs);
44
+ const orderedKeys = isEmpty(options?.order) ? keys : (options?.order ?? keys);
45
+ const rulesPerKey = extractRulesPerKey(configs);
46
+ const filesPerKey = extractFilesPerKey(configs);
47
+ const offRulesConfigs = createOffRulesConfigs(keys, rulesPerKey, filesPerKey);
48
+ return chain(orderedKeys)
49
+ .flatMap((key) => configs[key] ?? [])
50
+ .concat(offRulesConfigs)
51
+ .value();
52
+ };
7
53
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"/","sources":["src/utils.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,OAAO,CAAC,KAAc;IACpC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC/E,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,KAAc;IACvC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AACzB,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"/","sources":["src/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chris.araneo/eslint-config",
3
- "version": "0.0.96",
3
+ "version": "0.0.98",
4
4
  "description": "",
5
5
  "keywords": [
6
6
  "eslint",
@@ -27,10 +27,10 @@
27
27
  "lint:fix": "eslint . --fix"
28
28
  },
29
29
  "dependencies": {
30
- "@eslint/json": "^0.14.0",
30
+ "@eslint/json": "^1.0.0",
31
31
  "@humanwhocodes/momoa": "^3.3.10",
32
- "@nx/eslint-plugin": "^22.4.1",
33
- "angular-eslint": "^21.1.0",
32
+ "@nx/eslint-plugin": "^22.4.4",
33
+ "angular-eslint": "^21.2.0",
34
34
  "app-root-dir": "^1.0.2",
35
35
  "eslint": "^9.39.2",
36
36
  "eslint-plugin-jsonc": "^2.21.0",
@@ -38,14 +38,16 @@
38
38
  "eslint-plugin-simple-import-sort": "^12.1.1",
39
39
  "eslint-plugin-unicorn": "^62.0.0",
40
40
  "jsonc-eslint-parser": "^2.4.2",
41
- "typescript-eslint": "^8.53.1"
41
+ "lodash": "^4.17.23",
42
+ "typescript-eslint": "^8.54.0"
42
43
  },
43
44
  "devDependencies": {
44
45
  "@types/app-root-dir": "^0.1.4",
46
+ "@types/lodash": "^4.17.23",
45
47
  "jiti": "^2.6.1",
46
- "prettier": "^3.7.4",
48
+ "prettier": "^3.8.1",
47
49
  "rimraf": "^6.1.2",
48
- "sort-package-json": "^3.6.0",
50
+ "sort-package-json": "^3.6.1",
49
51
  "typescript": "^5.9.3"
50
52
  },
51
53
  "publishConfig": {