-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtslint.json
96 lines (90 loc) · 3.33 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
{
"extends": [
"tslint-microsoft-contrib",
"tslint-eslint-rules",
"tslint-immutable",
"tslint-no-subclass"
],
"rules": {
"indent": [true, "spaces", 4],
"linebreak-style": [true, "CRLF"],
"interface-name": [true, "never-prefix"],
"strict-boolean-expressions": [true, "allow-undefined-union"],
"no-unused-variable": true,
"function-name": [
true,
{
"method-regex": "^([a-z][\\w\\d]+)|(\\[Symbol\\.[a-z][\\w\\d]+\\])$", // original: "^[a-z][\\w\\d]+$"
// unchanged
"private-method-regex": "^[a-z][\\w\\d]+$",
"protected-method-regex": "^[a-z][\\w\\d]+$",
"static-method-regex": "^[A-Z_\\d]+$",
"function-regex": "^[a-z][\\w\\d]+$"
}
],
"no-backbone-get-set-outside-model": false,
"unified-signatures": false,
"ordered-imports": [true, { "grouped-imports": true }],
"space-within-parens": [true, 0],
"arrow-parens": true,
"cyclomatic-complexity": [true, 5],
"max-file-line-count": [true, 300],
"no-parameter-reassignment": true,
//"completed-docs": false,
//"missing-jsdoc": false,
"no-submodule-imports": [
true,
"@main"
],
"no-implicit-dependencies": false, // disable because custom local path mappings are erroneously flagged
"no-duplicate-imports": false,
"trailing-comma": [true, {"multiline": "always", "singleline": "never"}],
// replace deprecated rules with newer versions
"no-duplicate-case": false,
"no-duplicate-switch-case": true,
"no-stateless-class": false,
"no-unnecessary-class": true,
"no-var-self": false,
"no-this-assignment": true,
"valid-typeof": false,
"typeof-compare": false, // compiler already includes this check
// tslint-eslint-rules
"no-empty-character-class": true,
"no-ex-assign": true,
"no-extra-boolean-cast": true,
"no-inner-declarations": [true, "both"],
"no-unexpected-multiline": true,
"valid-jsdoc": [false],
"no-multi-spaces": [
true,
{
"exceptions": { "PropertyAssignment": false }
}
],
"handle-callback-err": [true, "^(err|error)$"],
"array-bracket-spacing": [true, "never"],
"block-spacing": [true, "always"],
"brace-style": [true, "1tbs"],
// "ter-computed-property-spacing": [true, "never"],
"ter-func-call-spacing": [true, "never"],
"object-curly-spacing": [true, "always"],
// "sort-imports": [true, { "ignore-case": true }],
// "ter-no-tabs": true,
"ter-prefer-arrow-callback": [true],
"ter-arrow-spacing": [true],
// tslint-immutable
"readonly-keyword": false,
"readonly-array": true,
"no-let": [true, "ignore-local"],
"no-object-mutation": false,
"no-delete": true,
"no-mixed-interface": false,
"no-this": false,
"no-class": false,
"no-expression-statement": false,
"no-if-statement": false,
"no-loop-statement": false,
// tslint-no-subclass
"no-subclass": [true, "Phaser.State"]
}
}