-
Notifications
You must be signed in to change notification settings - Fork 23
/
tslint.json
104 lines (103 loc) · 3.22 KB
/
tslint.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
{
"extends": ["tslint-plugin-prettier", "tslint-config-prettier", "rxjs-tslint-rules"],
"rulesDirectory": ["./tools/tslint-rules/", "node_modules/tslint-consistent-codestyle/rules"],
"linterOptions": {
"exclude": [
"tools/dgeni/**/*.ts",
"tools/schematics/*/files/**/*",
"src/angular/schematics/**/files/**/*",
"src/angular/schematics/ng-update/test-cases/**/*_input.ts",
"src/angular/schematics/ng-update/test-cases/**/*_expected_output.ts",
"src/showcase/assets/stack-blitz/**/*.ts"
]
},
"rules": {
"arrow-return-shorthand": true,
"callable-types": true,
"class-name": true,
"comment-format": [true, "check-space"],
"component-selector": false,
"curly": true,
"deprecation": false,
"directive-selector": false,
"forin": true,
"import-blacklist": [true, "rxjs/Rx"],
"interface-over-type-literal": true,
"label-position": true,
"member-access": false,
"member-ordering": false,
"no-arg": true,
"no-bitwise": true,
"no-collapsible-if": true,
"no-console": [true, "debug", "info", "time", "timeEnd", "trace"],
"no-construct": true,
"no-debugger": true,
"no-duplicate-super": true,
"no-empty": false,
"no-empty-interface": true,
"no-eval": true,
// Disable this flag because of SHA tslint#48b0c597f9257712c7d1f04b55ed0aa60e333f6a
// TSLint now shows warnings if types for properties are inferred. This rule needs to be
// disabled because all properties need to have explicit types set to work for Dgeni.
"no-inferrable-types": [true, "ignore-params", "ignore-properties"],
"no-misused-new": true,
"no-shadowed-variable": false, // Disabled, because it breaks in TS 5.2
"no-string-literal": false,
"no-string-throw": true,
"no-switch-case-fall-through": true,
"no-unnecessary-initializer": true,
"no-unused-expression": true,
"no-unused-variable": [true, { "ignore-pattern": "^_" }],
"no-var-before-return": true,
"no-var-keyword": true,
"object-literal-sort-keys": false,
"ordered-imports": [
true,
{
"grouped-imports": true
}
],
"prefer-const": true,
"prettier": true,
"radix": true,
"triple-equals": [true, "allow-null-check"],
"typedef-whitespace": [
true,
{
"call-signature": "nospace",
"index-signature": "nospace",
"parameter": "nospace",
"property-declaration": "nospace",
"variable-declaration": "nospace"
}
],
"unified-signatures": true,
"variable-name": false,
"whitespace": [
false,
"check-branch",
"check-decl",
"check-operator",
"check-separator",
"check-type"
],
"no-host-metadata-property": false,
"no-input-rename": false,
"no-output-rename": false,
"component-class-suffix": false,
"directive-class-suffix": false,
// "rxjs-no-unsafe-takeuntil": true,
"rxjs-no-unsafe-catch": true,
// Custom Rules
"ts-loader": true,
"require-property-typedef": true,
"lifecycle-hook-interface": true,
"no-zone-dependencies": [
true,
[
// Allow in tests that specficially test integration with Zone.js.
"**/*.zone.spec.ts"
]
]
}
}