22
33import tseslint from "typescript-eslint" ;
44
5+ const fastMode = ! ! process . env . ESLINT_FAST ;
6+
57export default tseslint . config (
68 {
79 ignores : [ "**/dist/**" , "**/node_modules/**" , "**/build/**" , "**/*.js" ] ,
@@ -21,9 +23,9 @@ export default tseslint.config(
2123 // - engine tests: packages/o-spreadsheet-engine/tsconfig.json only
2224 // includes `src/`, so its tests/ directory has no owning project
2325 // (unlike the main tests/ folder which has its own tsconfig.json).
24- projectService : {
25- allowDefaultProject : [ "global.d.ts" , "packages/o-spreadsheet-engine/tests/*.ts" ] ,
26- } ,
26+ projectService : fastMode
27+ ? false
28+ : { allowDefaultProject : [ "global.d.ts" , "packages/o-spreadsheet-engine/tests/*.ts" ] } ,
2729 } ,
2830 } ,
2931 rules : {
@@ -33,7 +35,7 @@ export default tseslint.config(
3335 eqeqeq : "error" , // ban non-strict equal
3436 "@typescript-eslint/no-non-null-asserted-optional-chain" : "error" , // ban non-null assertion in optional chain
3537 curly : [ "error" , "all" ] , // enforce curly braces for all control statements
36- "@typescript-eslint/no-floating-promises" : "error" , // ban unawaited promises
38+ ... ( ! fastMode && { "@typescript-eslint/no-floating-promises" : "error" } ) , // ban unawaited promises
3739 } ,
3840 }
3941) ;
0 commit comments