2021-08-02 15:06:09 +00:00
|
|
|
const rules = require('@rbkmoney/eslint-plugin/lib/rules');
|
|
|
|
|
|
|
|
const baseTsRules = {
|
|
|
|
parserOptions: {
|
2021-08-02 16:31:36 +00:00
|
|
|
project: ['tsconfig.json'],
|
2021-08-02 15:06:09 +00:00
|
|
|
createDefaultProgram: true,
|
|
|
|
},
|
|
|
|
extends: [
|
|
|
|
'plugin:@rbkmoney/typescript',
|
|
|
|
'plugin:@rbkmoney/angular',
|
|
|
|
'plugin:@rbkmoney/lodash',
|
|
|
|
'plugin:@rbkmoney/prettier',
|
|
|
|
],
|
|
|
|
rules: {
|
|
|
|
...rules.createImportOrderRule({ internalPathsPattern: '@dsh/**' }),
|
|
|
|
// TODO: pretenders for error
|
|
|
|
'@typescript-eslint/no-unsafe-call': 'warn',
|
|
|
|
'@typescript-eslint/no-unsafe-member-access': 'warn',
|
|
|
|
'@typescript-eslint/no-unsafe-assignment': 'warn',
|
|
|
|
'@typescript-eslint/no-unsafe-return': 'warn',
|
|
|
|
'@typescript-eslint/no-misused-promises': 'warn',
|
|
|
|
'@typescript-eslint/unbound-method': 'warn',
|
|
|
|
'@typescript-eslint/restrict-plus-operands': 'warn',
|
|
|
|
'@typescript-eslint/restrict-template-expressions': 'warn',
|
|
|
|
},
|
|
|
|
};
|
|
|
|
|
2021-04-19 13:45:12 +00:00
|
|
|
module.exports = {
|
|
|
|
root: true,
|
2021-04-20 14:24:55 +00:00
|
|
|
parser: '@typescript-eslint/parser',
|
2021-04-19 13:45:12 +00:00
|
|
|
ignorePatterns: ['**/openapi-codegen/**/*.ts', '**/swagger-codegen/**/*.ts'],
|
|
|
|
overrides: [
|
|
|
|
{
|
2021-08-02 15:06:09 +00:00
|
|
|
...baseTsRules,
|
2021-04-19 13:45:12 +00:00
|
|
|
files: ['*.ts'],
|
|
|
|
rules: {
|
2021-08-02 15:06:09 +00:00
|
|
|
...baseTsRules.rules,
|
|
|
|
...rules.createAngularSelectorRules({ prefix: 'dsh' }),
|
2021-04-19 13:45:12 +00:00
|
|
|
// TODO: pretenders for error
|
|
|
|
'@typescript-eslint/no-floating-promises': 'warn',
|
|
|
|
},
|
|
|
|
},
|
2021-04-27 08:04:16 +00:00
|
|
|
{
|
2021-08-02 15:06:09 +00:00
|
|
|
...baseTsRules,
|
2021-04-27 08:04:16 +00:00
|
|
|
files: ['*.spec.ts'],
|
2021-08-02 15:06:09 +00:00
|
|
|
extends: [...baseTsRules.extends, 'plugin:@rbkmoney/jasmine'],
|
2021-04-27 08:04:16 +00:00
|
|
|
},
|
2021-04-19 13:45:12 +00:00
|
|
|
{
|
|
|
|
files: ['*.html'],
|
|
|
|
extends: ['plugin:@angular-eslint/template/recommended'],
|
|
|
|
rules: {
|
|
|
|
// TODO: pretenders for error
|
|
|
|
'@angular-eslint/template/no-negated-async': 'warn',
|
|
|
|
},
|
|
|
|
},
|
|
|
|
],
|
|
|
|
};
|