eslint-config-brf
Version:
brf lint custom configurations
65 lines (64 loc) • 2.15 kB
JavaScript
module.exports = {
overrides: [
{
// GLOBAL
files: ["projects/application/src/app/**/*.ts"],
parserOptions: {
createDefaultProgram: true,
project: ["tsconfig.json"],
},
rules: {},
},
{
// TEST
files: ["projects/application/src/app/**/*.spec.ts"],
parserOptions: {
createDefaultProgram: true,
project: ["tsconfig.json"],
},
rules: {
"@typescript-eslint/explicit-function-return-type": "off",
"@typescript-eslint/no-explicit-any": "off",
},
},
{
// TS
files: ["*.ts"],
excludedFiles: "*.spec.ts",
parserOptions: {
createDefaultProgram: true,
project: ["tsconfig.json"],
},
rules: {
"max-classes-per-file": ["error", 1],
"@typescript-eslint/ban-types": [
"error",
{
types: {
object:
"O adequado é a utilização de tipos predefinidos ou modelos. Inserir justificativa como comentário código caso seja realmente necessário.",
},
extendDefaults: true,
},
],
"@typescript-eslint/explicit-function-return-type": "error",
"@typescript-eslint/explicit-module-boundary-types": "error",
"@typescript-eslint/no-unsafe-assignment": "error", // any
"@typescript-eslint/no-unsafe-argument": "error", // any
"@typescript-eslint/no-unsafe-call": "error", // any
"@typescript-eslint/no-unsafe-return": "error", // any
"@typescript-eslint/no-unsafe-member-access": "error", // any
"@typescript-eslint/no-explicit-any": "error", // Precisa ajustar para evitar os das rotas - A009 - Apenas para any (criar regra no eslint como warning) - ver para manter como erro, pois caso necessite usar algo mais dinâmico, exite o tipo unknown.
},
},
{
// CONTRACT
files: ["projects/application/src/app/application/*/contract/**/*.ts"],
excludedFiles: "*.spec.ts",
rules: {
"max-classes-per-file": "off",
"import/export": 1,
},
},
],
};