@@ -7,11 +7,21 @@ import jestPlugin from "eslint-plugin-jest";
77import packageJson from "eslint-plugin-package-json" ;
88import packageJsonFieldsOrder from "@mendix/prettier-config-web-widgets/package-json-fields-order.js" ;
99import { defineConfig } from "eslint/config" ;
10+ import importPlugin from "eslint-plugin-import" ;
1011
1112export default defineConfig (
1213 {
1314 name : "generic eslint" ,
14- extends : [ eslint . configs . recommended ] ,
15+ extends : [ eslint . configs . recommended , importPlugin . flatConfigs . recommended ] ,
16+ settings : {
17+ "import/internal-regex" : "^@mendix/" ,
18+ "import/parsers" : {
19+ "@typescript-eslint/parser" : [ ".ts" , ".tsx" ]
20+ }
21+ } ,
22+ languageOptions : {
23+ ecmaVersion : "latest"
24+ } ,
1525 rules : {
1626 "no-undef" : "warn" ,
1727 "no-unused-vars" : "warn" ,
@@ -63,11 +73,24 @@ export default defineConfig(
6373 "prefer-spread" : "error" ,
6474 radix : "error" ,
6575 "spaced-comment" : "error" ,
66- "sort-imports" : [
67- "error" ,
76+ "sort-imports" : "off" ,
77+ "import/no-unresolved" : "off" ,
78+ "import/namespace" : "off" ,
79+ "import/named" : "off" ,
80+ "import/order" : [
81+ "warn" ,
6882 {
69- ignoreDeclarationSort : true ,
70- ignoreCase : true
83+ alphabetize : {
84+ order : "asc" ,
85+ caseInsensitive : true
86+ } ,
87+ groups : [
88+ // Imports of builtins are first
89+ "builtin" ,
90+ "external" ,
91+ // Then index file imports
92+ "internal"
93+ ]
7194 }
7295 ]
7396 }
0 commit comments