@map-colonies/eslint-config 8.1.0 → 9.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 CHANGED
@@ -12,21 +12,23 @@ The package only supports eslint 9 and above using the flat configuration.
12
12
  ## Installation
13
13
 
14
14
  ### base
15
+
15
16
  ```bash
16
17
  $ npm install --save-dev eslint @map-colonies/eslint-config
17
18
  ```
18
19
 
19
20
  ### react
21
+
20
22
  ```
21
23
  $ npm install --save-dev @map-colonies/eslint-config eslint-plugin-react eslint-plugin-react-hooks
22
24
  ```
23
25
 
24
26
  ### jest
27
+
25
28
  ```
26
29
  $ npm install --save-dev @map-colonies/eslint-config eslint-plugin-jest
27
30
  ```
28
31
 
29
-
30
32
  ## Usage
31
33
 
32
34
  Add the configs you want to the eslint configuration file of your choice. In this example we are using the file `eslint.config.mjs`
@@ -40,10 +42,10 @@ import tsBaseConfig from '@map-colonies/eslint-config/ts-base';
40
42
  import { config } from '@map-colonies/eslint-config/helpers';
41
43
 
42
44
  export default config(tsBaseConfig);
43
-
44
45
  ```
45
46
 
46
47
  ## Debug
48
+
47
49
  If you want to check the ESLint configuration, debug problems or just see the final configuration, you can the following command that will open the eslint configuration UI in your browser.
48
50
 
49
51
  ```bash
@@ -52,7 +54,6 @@ npx eslint --inspect-config .
52
54
 
53
55
  For more information check the following link [debug](https://eslint.org/docs/latest/use/configure/debug).
54
56
 
55
-
56
57
  ## Adding new Configs
57
58
 
58
59
  Add a new file and name it as you would like. Inside export the ESLint configuration.
@@ -76,4 +77,5 @@ $ npx eslint --print-config index.ts
76
77
  Don't forget adding the config to this readme :blush:
77
78
 
78
79
  ## Issues
80
+
79
81
  If any linting error is appearing twice, or you have any other problem, please open an issue with all the details you have.
@@ -1,4 +1,4 @@
1
- declare const jestConfig: import("typescript-eslint").FlatConfig.ConfigArray;
1
+ declare const jestConfig: import("eslint/config").Config[];
2
2
  /**
3
3
  * The default export for the Jest configuration.
4
4
  * This configuration is used to set up and customize the behavior of Jest,
@@ -1 +1 @@
1
- {"version":3,"file":"jest.d.mts","sourceRoot":"","sources":["../../src/configs/jest.mts"],"names":[],"mappings":"AAMA,QAAA,MAAM,UAAU,oDAWd,CAAC;AAEH;;;;;;;;;;;GAWG;AACH,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"jest.d.mts","sourceRoot":"","sources":["../../src/configs/jest.mts"],"names":[],"mappings":"AAMA,QAAA,MAAM,UAAU,kCAad,CAAC;AAEH;;;;;;;;;;;GAWG;AACH,eAAe,UAAU,CAAC"}
@@ -1,18 +1,20 @@
1
- import { config } from '../helpers.mjs';
1
+ import { defineConfig } from 'eslint/config';
2
2
  import { importOrThrow } from '../internal/helpers.js';
3
3
  const jestPlugin = await importOrThrow('eslint-plugin-jest');
4
- const jestConfig = config({
5
- name: 'map-colonies/jest/rules',
6
- files: ['**/*.test.ts', '**/*.test.tsx', '**/*.spec.ts', '**/*.spec.tsx'],
7
- plugins: { jest: jestPlugin },
8
- languageOptions: {
9
- globals: jestPlugin.environments.globals.globals,
4
+ const jestConfig = defineConfig([
5
+ {
6
+ name: 'map-colonies/jest/rules',
7
+ files: ['**/*.test.ts', '**/*.test.tsx', '**/*.spec.ts', '**/*.spec.tsx'],
8
+ plugins: { jest: jestPlugin },
9
+ languageOptions: {
10
+ globals: jestPlugin.environments.globals.globals,
11
+ },
12
+ rules: {
13
+ ...jestPlugin.configs.recommended.rules,
14
+ ...jestPlugin.configs.style.rules,
15
+ },
10
16
  },
11
- rules: {
12
- ...jestPlugin.configs.recommended.rules,
13
- ...jestPlugin.configs.style.rules,
14
- },
15
- });
17
+ ]);
16
18
  /**
17
19
  * The default export for the Jest configuration.
18
20
  * This configuration is used to set up and customize the behavior of Jest,
@@ -1 +1 @@
1
- {"version":3,"file":"jest.mjs","sourceRoot":"","sources":["../../src/configs/jest.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,MAAM,UAAU,GAAG,MAAM,aAAa,CAAwB,oBAAoB,CAAC,CAAC;AAEpF,MAAM,UAAU,GAAG,MAAM,CAAC;IACxB,IAAI,EAAE,yBAAyB;IAC/B,KAAK,EAAE,CAAC,cAAc,EAAE,eAAe,EAAE,cAAc,EAAE,eAAe,CAAC;IACzE,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;IAC7B,eAAe,EAAE;QACf,OAAO,EAAE,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO;KACjD;IACD,KAAK,EAAE;QACL,GAAG,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK;QACvC,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK;KAClC;CACF,CAAC,CAAC;AAEH;;;;;;;;;;;GAWG;AACH,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"jest.mjs","sourceRoot":"","sources":["../../src/configs/jest.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvD,MAAM,UAAU,GAAG,MAAM,aAAa,CAAwB,oBAAoB,CAAC,CAAC;AAEpF,MAAM,UAAU,GAAG,YAAY,CAAC;IAC9B;QACE,IAAI,EAAE,yBAAyB;QAC/B,KAAK,EAAE,CAAC,cAAc,EAAE,eAAe,EAAE,cAAc,EAAE,eAAe,CAAC;QACzE,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;QAC7B,eAAe,EAAE;YACf,OAAO,EAAE,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO;SACjD;QACD,KAAK,EAAE;YACL,GAAG,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK;YACvC,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK;SAClC;KACF;CACF,CAAC,CAAC;AAEH;;;;;;;;;;;GAWG;AACH,eAAe,UAAU,CAAC"}
@@ -1,4 +1,3 @@
1
- import type tseslint from 'typescript-eslint';
2
1
  /**
3
2
  * Combined React and React Hooks ESLint configuration
4
3
  *
@@ -17,6 +16,6 @@ import type tseslint from 'typescript-eslint';
17
16
  *
18
17
  * export default config(reactConfig);
19
18
  */
20
- declare const _default: tseslint.FlatConfig.ConfigArray;
19
+ declare const _default: import("eslint/config").Config[];
21
20
  export default _default;
22
21
  //# sourceMappingURL=react.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"react.d.mts","sourceRoot":"","sources":["../../src/configs/react.mts"],"names":[],"mappings":"AAEA,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAC;AAmC9C;;;;;;;;;;;;;;;;;GAiBG;;AACH,wBAAmD"}
1
+ {"version":3,"file":"react.d.mts","sourceRoot":"","sources":["../../src/configs/react.mts"],"names":[],"mappings":"AA+CA;;;;;;;;;;;;;;;;;GAiBG;;AACH,wBAA2D"}
@@ -1,31 +1,40 @@
1
- import { config } from '../helpers.mjs';
1
+ import { fixupPluginRules } from '@eslint/compat';
2
+ import { defineConfig } from 'eslint/config';
2
3
  import { importOrThrow } from '../internal/helpers.js';
3
4
  const reactPlugin = await importOrThrow('eslint-plugin-react');
4
5
  const pluginReactHooks = await importOrThrow('eslint-plugin-react-hooks');
5
6
  const importedGlobals = await importOrThrow('globals');
6
- const reactRules = config(reactPlugin.configs.flat.recommended ?? {}, reactPlugin.configs.flat['jsx-runtime'] ?? {}, {
7
- name: 'map-colonies/react/rules',
8
- files: ['**/*.tsx'],
9
- languageOptions: {
10
- globals: importedGlobals.browser,
11
- },
12
- settings: {
13
- react: {
14
- version: 'detect',
7
+ const fixedReactPlugin = fixupPluginRules(reactPlugin);
8
+ const fixedPlugins = { react: fixedReactPlugin };
9
+ const reactRules = defineConfig([
10
+ { ...reactPlugin.configs.flat.recommended, plugins: fixedPlugins },
11
+ { ...reactPlugin.configs.flat['jsx-runtime'], plugins: fixedPlugins },
12
+ {
13
+ name: 'map-colonies/react/rules',
14
+ files: ['**/*.tsx'],
15
+ languageOptions: {
16
+ globals: importedGlobals.browser,
17
+ },
18
+ settings: {
19
+ react: {
20
+ version: 'detect',
21
+ },
22
+ },
23
+ rules: {
24
+ 'react/boolean-prop-naming': 'error',
25
+ 'react/hook-use-state': 'error',
26
+ 'react/prop-types': 'off',
15
27
  },
16
28
  },
17
- rules: {
18
- 'react/boolean-prop-naming': 'error',
19
- 'react/hook-use-state': 'error',
20
- 'react/prop-types': 'off',
29
+ ]);
30
+ const reactHooksRules = defineConfig([
31
+ {
32
+ name: 'map-colonies/react-hooks/rules',
33
+ files: ['**/*.tsx'],
34
+ plugins: { 'react-hooks': pluginReactHooks },
35
+ rules: pluginReactHooks.configs.recommended.rules,
21
36
  },
22
- });
23
- const reactHooksRules = config({
24
- name: 'map-colonies/react-hooks/rules',
25
- files: ['**/*.tsx'],
26
- plugins: { 'react-hooks': pluginReactHooks },
27
- rules: pluginReactHooks.configs.recommended.rules,
28
- });
37
+ ]);
29
38
  /**
30
39
  * Combined React and React Hooks ESLint configuration
31
40
  *
@@ -44,5 +53,5 @@ const reactHooksRules = config({
44
53
  *
45
54
  * export default config(reactConfig);
46
55
  */
47
- export default config(reactRules, reactHooksRules);
56
+ export default defineConfig([reactRules, reactHooksRules]);
48
57
  //# sourceMappingURL=react.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"react.mjs","sourceRoot":"","sources":["../../src/configs/react.mts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAIvD,MAAM,WAAW,GAAG,MAAM,aAAa,CAAyB,qBAAqB,CAAC,CAAC;AACvF,MAAM,gBAAgB,GAAG,MAAM,aAAa,CAAmB,2BAA2B,CAAC,CAAC;AAC5F,MAAM,eAAe,GAAG,MAAM,aAAa,CAAyF,SAAS,CAAC,CAAC;AAE/I,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE;IACnH,IAAI,EAAE,0BAA0B;IAChC,KAAK,EAAE,CAAC,UAAU,CAAC;IACnB,eAAe,EAAE;QACf,OAAO,EAAE,eAAe,CAAC,OAAO;KACjC;IACD,QAAQ,EAAE;QACR,KAAK,EAAE;YACL,OAAO,EAAE,QAAQ;SAClB;KACF;IACD,KAAK,EAAE;QACL,2BAA2B,EAAE,OAAO;QACpC,sBAAsB,EAAE,OAAO;QAC/B,kBAAkB,EAAE,KAAK;KAC1B;CACF,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,MAAM,CAAC;IAC7B,IAAI,EAAE,gCAAgC;IACtC,KAAK,EAAE,CAAC,UAAU,CAAC;IACnB,OAAO,EAAE,EAAE,aAAa,EAAE,gBAAgB,EAAE;IAC5C,KAAK,EAAE,gBAAgB,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK;CAClD,CAAC,CAAC;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAe,MAAM,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC"}
1
+ {"version":3,"file":"react.mjs","sourceRoot":"","sources":["../../src/configs/react.mts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAIvD,MAAM,WAAW,GAAG,MAAM,aAAa,CAAyB,qBAAqB,CAAC,CAAC;AACvF,MAAM,gBAAgB,GAAG,MAAM,aAAa,CAAmB,2BAA2B,CAAC,CAAC;AAC5F,MAAM,eAAe,GAAG,MAAM,aAAa,CAAyF,SAAS,CAAC,CAAC;AAE/I,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;AACvD,MAAM,YAAY,GAAG,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC;AAEjD,MAAM,UAAU,GAAG,YAAY,CAAC;IAC9B,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,YAAY,EAAE;IAClE,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE;IACrE;QACE,IAAI,EAAE,0BAA0B;QAChC,KAAK,EAAE,CAAC,UAAU,CAAC;QACnB,eAAe,EAAE;YACf,OAAO,EAAE,eAAe,CAAC,OAAO;SACjC;QACD,QAAQ,EAAE;YACR,KAAK,EAAE;gBACL,OAAO,EAAE,QAAQ;aAClB;SACF;QACD,KAAK,EAAE;YACL,2BAA2B,EAAE,OAAO;YACpC,sBAAsB,EAAE,OAAO;YAC/B,kBAAkB,EAAE,KAAK;SAC1B;KACF;CACF,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,YAAY,CAAC;IACnC;QACE,IAAI,EAAE,gCAAgC;QACtC,KAAK,EAAE,CAAC,UAAU,CAAC;QACnB,OAAO,EAAE,EAAE,aAAa,EAAE,gBAAgB,EAAE;QAC5C,KAAK,EAAE,gBAAgB,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK;KAClD;CACF,CAAC,CAAC;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAe,YAAY,CAAC,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ts-base.d.mts","sourceRoot":"","sources":["../../src/configs/ts-base.mts"],"names":[],"mappings":"AAUA;;;;;;;;;;;GAWG;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmDO,CAAC;AAgJtC,QAAA,MAAM,cAAc,kCAenB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"ts-base.d.mts","sourceRoot":"","sources":["../../src/configs/ts-base.mts"],"names":[],"mappings":"AAUA;;;;;;;;;;;GAWG;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmDO,CAAC;AAgJtC,QAAA,MAAM,cAAc,kCAcnB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAe,cAAc,CAAC"}
@@ -205,9 +205,7 @@ const parserOptions = defineConfig({
205
205
  },
206
206
  },
207
207
  });
208
- const combinedConfig = defineConfig(eslint.configs.recommended, tsEslintConfigs.recommendedTypeChecked, typescriptEslintRules, jestTurnedOffRules, reactNamingConventions, unicornRules,
209
- //@ts-expect-error it works and a known issue https://github.com/un-ts/eslint-plugin-import-x/issues/421
210
- importFlatConfigs.recommended, { name: 'import-x/typescript', ...importFlatConfigs.typescript }, importRulesAndConfig, mapColoniesPlugin.configs['pino-safety'], globalIgnoreConfig, parserOptions, { name: 'eslint-prettier/disabled-rules', ...eslintConfigPrettier });
208
+ const combinedConfig = defineConfig(eslint.configs.recommended, tsEslintConfigs.recommendedTypeChecked, typescriptEslintRules, jestTurnedOffRules, reactNamingConventions, unicornRules, importFlatConfigs.recommended, { name: 'import-x/typescript', ...importFlatConfigs.typescript }, importRulesAndConfig, mapColoniesPlugin.configs['pino-safety'], globalIgnoreConfig, parserOptions, { name: 'eslint-prettier/disabled-rules', ...eslintConfigPrettier });
211
209
  /**
212
210
  * Combined ESLint configuration for TypeScript projects
213
211
  * Includes:
@@ -1 +1 @@
1
- {"version":3,"file":"ts-base.mjs","sourceRoot":"","sources":["../../src/configs/ts-base.mts"],"names":[],"mappings":"AACA,OAAO,MAAM,MAAM,YAAY,CAAC;AAChC,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,WAAW,IAAI,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC1E,OAAO,oBAAoB,MAAM,wBAAwB,CAAC;AAC1D,OAAO,QAAQ,MAAM,2BAA2B,CAAC;AACjD,OAAO,iBAAiB,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AAExD;;;;;;;;;;;GAWG;AACH,iDAAiD;AACjD,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,OAAO;IACP;QACE,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,CAAC,WAAW,CAAC;KACtB;IACD;QACE,QAAQ,EAAE,UAAU;QACpB,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC;KACpC;IACD;QACE,QAAQ,EAAE,UAAU;QACpB,MAAM,EAAE,CAAC,YAAY,CAAC;QACtB,MAAM,EAAE;YACN,KAAK,EAAE,cAAc;YACrB,KAAK,EAAE,IAAI;SACZ;KACF;IACD;QACE,QAAQ,EAAE,WAAW;QACrB,MAAM,EAAE,CAAC,WAAW,CAAC;QACrB,iBAAiB,EAAE,OAAO;KAC3B;IACD;QACE,QAAQ,EAAE,YAAY;QACtB,SAAS,EAAE,CAAC,SAAS,CAAC;QACtB,MAAM,EAAE,CAAC,WAAW,CAAC;QACrB,gCAAgC;KACjC;IACD;QACE,QAAQ,EAAE,YAAY;QACtB,MAAM,EAAE,CAAC,YAAY,CAAC;KACvB;IACD;QACE,QAAQ,EAAE;YACR,eAAe;YACf,uBAAuB;YACvB,cAAc;YACd,aAAa;YACb,qBAAqB;YACrB,YAAY;YACZ,UAAU;YACV,YAAY;SACb;QACD,MAAM,EAAE,IAAI;QACZ,SAAS,EAAE,CAAC,gBAAgB,CAAC;KAC9B;IACD;QACE,QAAQ,EAAE,UAAU;QACpB,MAAM,EAAE,CAAC,YAAY,CAAC;KACvB;CACkC,CAAC;AAEtC,MAAM,qBAAqB,GAAG,YAAY,CAAC;IACzC,IAAI,EAAE,sCAAsC;IAE5C,KAAK,EAAE;QACL,+BAA+B,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;QAChE,mCAAmC,EAAE,MAAM;QAC3C,uCAAuC,EAAE,OAAO;QAChD,gDAAgD,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC;QACxE,kDAAkD,EAAE,MAAM;QAC1D,kDAAkD,EAAE,OAAO;QAC3D,oCAAoC,EAAE,MAAM;QAC5C,2CAA2C,EAAE,OAAO;QACpD,uCAAuC,EAAE,KAAK;QAC9C,KAAK,EAAE,OAAO;QACd,SAAS,EAAE,KAAK;QAChB,cAAc,EAAE,OAAO;QACvB,sCAAsC,EAAE,iBAAiB;QACzD,sCAAsC,EAAE,MAAM;QAC9C,oDAAoD,EAAE,OAAO;QAC7D,wCAAwC,EAAE,MAAM;QAChD,kDAAkD;QAClD,2DAA2D,EAAE,OAAO;QACpE,6CAA6C,EAAE,OAAO;QACtD,kDAAkD,EAAE,MAAM;QAC1D,+CAA+C,EAAE,OAAO;QACxD,8CAA8C,EAAE,MAAM;QACtD,0CAA0C,EAAE,MAAM;QAClD,oCAAoC,EAAE,OAAO;QAC7C,mDAAmD,EAAE,OAAO;QAC5D,2CAA2C,EAAE,OAAO;QACpD,+CAA+C,EAAE,MAAM;QACvD,+CAA+C,EAAE,MAAM;QACvD,gDAAgD,EAAE,OAAO;QACzD,qCAAqC,EAAE;YACrC,OAAO;YACP;gBACE,kBAAkB,EAAE,IAAI;gBACxB,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;gBACd,yBAAyB,EAAE,IAAI;aAChC;SACF;QACD,uCAAuC,EAAE,OAAO;QAChD,0CAA0C,EAAE,OAAO;QACnD,0CAA0C,EAAE,OAAO;QACnD,mCAAmC,EAAE,CAAC,MAAM,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC;QAC3E,iCAAiC,EAAE,OAAO;QAC1C,4CAA4C,EAAE,OAAO;KACtD;CACF,CAAC,CAAC;AAEH,2GAA2G;AAC3G,MAAM,kBAAkB,GAAG,YAAY,CAAC;IACtC,IAAI,EAAE,kCAAkC;IACxC,KAAK,EAAE,CAAC,4BAA4B,EAAE,4BAA4B,CAAC;IACnE,KAAK,EAAE;QACL,qCAAqC,EAAE,KAAK;QAC5C,kDAAkD,EAAE,KAAK;KAC1D;CACF,CAAC,CAAC;AAEH,+GAA+G;AAC/G,MAAM,sBAAsB,GAAG,YAAY,CAAC;IAC1C,IAAI,EAAE,uCAAuC;IAC7C,KAAK,EAAE,CAAC,UAAU,CAAC;IACnB,KAAK,EAAE;QACL,sCAAsC,EAAE;YACtC,GAAG,iBAAiB;YACpB;gBACE,QAAQ,EAAE,UAAU;gBACpB,MAAM,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC;gBACnC,KAAK,EAAE,CAAC,UAAU,CAAC;aACpB;SACF;KACF;CACF,CAAC,CAAC;AAEH,MAAM,oBAAoB,GAAG,YAAY,CAAC;IACxC,IAAI,EAAE,6BAA6B;IACnC,KAAK,EAAE,CAAC,uBAAuB,CAAC;IAChC,OAAO,EAAE,CAAC,iBAAiB,CAAC;IAC5B,eAAe,EAAE;QACf,MAAM,EAAE,QAAQ;QAChB,WAAW,EAAE,QAAQ;QACrB,UAAU,EAAE,QAAQ;KACrB;IACD,KAAK,EAAE;QACL,gBAAgB,EAAE;YAChB,OAAO;YACP;gBACE,UAAU,EAAE;oBACV;wBACE,OAAO,EAAE,KAAK;wBACd,KAAK,EAAE,UAAU;wBACjB,QAAQ,EAAE,OAAO;qBAClB;oBACD;wBACE,OAAO,EAAE,OAAO;wBAChB,KAAK,EAAE,UAAU;wBACjB,QAAQ,EAAE,OAAO;qBAClB;iBACF;aACF;SACF;QACD,gBAAgB,EAAE,OAAO;QACzB,uBAAuB,EAAE,OAAO;QAChC,+BAA+B,EAAE,OAAO;QACxC,qCAAqC,EAAE,OAAO;KAC/C;CACF,CAAC,CAAC;AAEH,MAAM,YAAY,GAAG,YAAY,CAAC;IAChC,IAAI,EAAE,SAAS;IACf,OAAO,EAAE;QACP,OAAO,EAAE,mBAAmB;KAC7B;IACD,KAAK,EAAE;QACL,cAAc,EAAE,OAAO;QACvB,sBAAsB,EAAE,OAAO;QAC/B,uCAAuC,EAAE,OAAO;QAChD,uBAAuB,EAAE,OAAO;QAChC,6BAA6B,EAAE,OAAO;QACtC,8BAA8B,EAAE,OAAO;QACvC,8BAA8B,EAAE,OAAO;QACvC,iCAAiC,EAAE,OAAO;KAC3C;CACF,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,YAAY,CAAC;IACtC,IAAI,EAAE,4BAA4B;IAClC,OAAO,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,CAAC;CAChG,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,YAAY,CAAC;IACjC,IAAI,EAAE,6BAA6B;IACnC,eAAe,EAAE;QACf,aAAa,EAAE;YACb,cAAc,EAAE,IAAI;YACpB,eAAe,EAAE,OAAO,CAAC,GAAG,EAAE;SAC/B;KACF;CACF,CAAC,CAAC;AAEH,MAAM,cAAc,GAAG,YAAY,CACjC,MAAM,CAAC,OAAO,CAAC,WAAW,EAC1B,eAAe,CAAC,sBAAsB,EACtC,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,EACtB,YAAY;AACZ,wGAAwG;AACxG,iBAAiB,CAAC,WAAW,EAC7B,EAAE,IAAI,EAAE,qBAAqB,EAAE,GAAG,iBAAiB,CAAC,UAAU,EAAE,EAChE,oBAAoB,EACpB,iBAAiB,CAAC,OAAO,CAAC,aAAa,CAAC,EACxC,kBAAkB,EAClB,aAAa,EACb,EAAE,IAAI,EAAE,gCAAgC,EAAE,GAAG,oBAAoB,EAAE,CACpE,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"ts-base.mjs","sourceRoot":"","sources":["../../src/configs/ts-base.mts"],"names":[],"mappings":"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"}
@@ -1,24 +1,17 @@
1
- import { config as importedConfig } from 'typescript-eslint';
1
+ import { defineConfig } from 'eslint/config';
2
2
  /**
3
3
  * Utility function to make it easy to strictly type your "Flat" config file
4
4
  * @example
5
5
  * ```js
6
6
  * // @ts-check
7
7
  *
8
- * import eslint from '@eslint/js';
9
- * import tseslint from 'typescript-eslint';
8
+ * import { defineConfig } from '@map-colonies/eslint-config/helpers';
9
+ * import tsBaseConfig from '@map-colonies/eslint-config/ts-base';
10
10
  *
11
- * export default tseslint.config(
12
- * eslint.configs.recommended,
13
- * tseslint.configs.recommended,
14
- * {
15
- * rules: {
16
- * '@typescript-eslint/array-type': 'error',
17
- * },
18
- * },
19
- * );
11
+ * export default defineConfig([tsBaseConfig]);
20
12
  * ```
21
13
  */
22
- declare const config: typeof importedConfig;
23
- export { config };
14
+ export { defineConfig };
15
+ /** @deprecated Use `defineConfig` from 'eslint/config' instead */
16
+ export { defineConfig as config };
24
17
  //# sourceMappingURL=helpers.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.mts","sourceRoot":"","sources":["../src/helpers.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAE7D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,QAAA,MAAM,MAAM,uBAAiB,CAAC;AAE9B,OAAO,EAAE,MAAM,EAAE,CAAC"}
1
+ {"version":3,"file":"helpers.d.mts","sourceRoot":"","sources":["../src/helpers.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,YAAY,EAAE,CAAC;AAExB,kEAAkE;AAClE,OAAO,EAAE,YAAY,IAAI,MAAM,EAAE,CAAC"}
package/dist/helpers.mjs CHANGED
@@ -1,24 +1,17 @@
1
- import { config as importedConfig } from 'typescript-eslint';
1
+ import { defineConfig } from 'eslint/config';
2
2
  /**
3
3
  * Utility function to make it easy to strictly type your "Flat" config file
4
4
  * @example
5
5
  * ```js
6
6
  * // @ts-check
7
7
  *
8
- * import eslint from '@eslint/js';
9
- * import tseslint from 'typescript-eslint';
8
+ * import { defineConfig } from '@map-colonies/eslint-config/helpers';
9
+ * import tsBaseConfig from '@map-colonies/eslint-config/ts-base';
10
10
  *
11
- * export default tseslint.config(
12
- * eslint.configs.recommended,
13
- * tseslint.configs.recommended,
14
- * {
15
- * rules: {
16
- * '@typescript-eslint/array-type': 'error',
17
- * },
18
- * },
19
- * );
11
+ * export default defineConfig([tsBaseConfig]);
20
12
  * ```
21
13
  */
22
- const config = importedConfig;
23
- export { config };
14
+ export { defineConfig };
15
+ /** @deprecated Use `defineConfig` from 'eslint/config' instead */
16
+ export { defineConfig as config };
24
17
  //# sourceMappingURL=helpers.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.mjs","sourceRoot":"","sources":["../src/helpers.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAE7D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,GAAG,cAAc,CAAC;AAE9B,OAAO,EAAE,MAAM,EAAE,CAAC"}
1
+ {"version":3,"file":"helpers.mjs","sourceRoot":"","sources":["../src/helpers.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,YAAY,EAAE,CAAC;AAExB,kEAAkE;AAClE,OAAO,EAAE,YAAY,IAAI,MAAM,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@map-colonies/eslint-config",
3
- "version": "8.1.0",
3
+ "version": "9.0.0",
4
4
  "description": "eslint configs for map colonies organization",
5
5
  "type": "module",
6
6
  "exports": {
@@ -33,11 +33,11 @@
33
33
  },
34
34
  "repository": "github:MapColonies/infra-packages",
35
35
  "peerDependencies": {
36
- "eslint": "^9.19.0",
37
- "eslint-plugin-jest": "^28.11.0 || ^29.0.0",
36
+ "@vitest/eslint-plugin": "^1.6.7",
37
+ "eslint": "^10.0.0",
38
+ "eslint-plugin-jest": "^29.13.0",
38
39
  "eslint-plugin-react": "^7.37.4",
39
40
  "eslint-plugin-react-hooks": "^5.1.0 || ^7.0.0",
40
- "@vitest/eslint-plugin": "^1.6.7",
41
41
  "globals": "^15.14.0 || ^17.0.0"
42
42
  },
43
43
  "peerDependenciesMeta": {
@@ -58,23 +58,25 @@
58
58
  }
59
59
  },
60
60
  "dependencies": {
61
- "@eslint/js": "^9.19.0",
62
- "eslint-config-prettier": "^10.0.1",
63
61
  "eslint-import-resolver-typescript": "^4.0.0",
64
- "eslint-plugin-import-x": "^4.16.1",
65
- "@typescript-eslint/parser": "^8.23.0",
66
- "typescript-eslint": "^8.23.0",
62
+ "@eslint/compat": "^2.1.0",
63
+ "@eslint/js": "^10.0.1",
64
+ "@typescript-eslint/parser": "^8.60.1",
65
+ "eslint-config-prettier": "^10.0.1",
66
+ "eslint-plugin-import-x": "^4.16.2",
67
67
  "eslint-plugin-unicorn": "^63.0.0",
68
+ "typescript-eslint": "^8.60.1",
68
69
  "@map-colonies/eslint-plugin": "^0.1.0"
69
70
  },
70
71
  "devDependencies": {
71
72
  "@types/node": "24.10.9",
72
- "eslint": "^9.39.1",
73
- "typescript": "5.9.3",
74
- "eslint-plugin-react-hooks": "7.0.1",
75
- "eslint-plugin-jest": "29.12.1",
73
+ "@vitest/eslint-plugin": "1.6.19",
74
+ "eslint": "^10.4.1",
75
+ "eslint-import-resolver-typescript": "^4.0.0",
76
+ "eslint-plugin-jest": "29.15.2",
76
77
  "eslint-plugin-react": "7.37.5",
77
- "@vitest/eslint-plugin": "1.6.7",
78
+ "eslint-plugin-react-hooks": "7.1.1",
79
+ "typescript": "5.9.3",
78
80
  "vitest": "^4.0.15",
79
81
  "@map-colonies/tsconfig": "^2.0.0",
80
82
  "vitest-config": "^0.0.0"