generated from nhcarrigan/template
51 lines
1.6 KiB
JavaScript
51 lines
1.6 KiB
JavaScript
import NaomisConfig from "@nhcarrigan/eslint-config";
|
|
|
|
const srcRules = NaomisConfig.find((rule) => rule.files?.includes("src/**/*.ts"));
|
|
const testRules = NaomisConfig.find((rule) => rule.files?.includes("test/**/*.spec.ts"));
|
|
|
|
export default [
|
|
...NaomisConfig,
|
|
{
|
|
files: ["src/**/*.ts"],
|
|
languageOptions: {
|
|
parserOptions: {
|
|
project: "./tsconfig.app.json"
|
|
}
|
|
},
|
|
plugins: {
|
|
...srcRules?.plugins,
|
|
},
|
|
rules: {
|
|
...srcRules?.rules,
|
|
"new-cap": "off",
|
|
// This causes a circular fix error?
|
|
"stylistic/no-multi-spaces": "off",
|
|
// This must be off because this is not a module.
|
|
"import/extensions": "off",
|
|
// This is a web app
|
|
"no-console": "off",
|
|
// Sometimes a component class will be empty. Not all components require logic.
|
|
"@typescript-eslint/no-extraneous-class": "off",
|
|
}
|
|
},
|
|
{
|
|
files: ["src/**/*.spec.ts"],
|
|
languageOptions: {
|
|
parserOptions: {
|
|
project: "./tsconfig.spec.json"
|
|
}
|
|
},
|
|
plugins: {
|
|
...testRules?.plugins,
|
|
},
|
|
rules: {
|
|
...testRules?.rules,
|
|
// This must be off because this is not a module.
|
|
"import/extensions": "off",
|
|
// We turn this off because the test bed has weak types.
|
|
"@typescript-eslint/consistent-type-assertions": "off",
|
|
// This one allows us to define test globals.
|
|
"@typescript-eslint/init-declarations": "off",
|
|
}
|
|
}
|
|
] |