137 строки
4.8 KiB
JSON
137 строки
4.8 KiB
JSON
{
|
|
"extends": "tslint:latest",
|
|
"rulesDirectory": "built/local/tslint/rules",
|
|
"rules": {
|
|
"no-unnecessary-type-assertion": true,
|
|
|
|
"array-type": [true, "array"],
|
|
"ban": [
|
|
true,
|
|
"setInterval",
|
|
"setTimeout"
|
|
],
|
|
"ban-types": {
|
|
"options": [
|
|
["Object", "Avoid using the `Object` type. Did you mean `object`?"],
|
|
["Function", "Avoid using the `Function` type. Prefer a specific function type, like `() => void`, or use `ts.AnyFunction`."],
|
|
["Boolean", "Avoid using the `Boolean` type. Did you mean `boolean`?"],
|
|
["Number", "Avoid using the `Number` type. Did you mean `number`?"],
|
|
["String", "Avoid using the `String` type. Did you mean `string`?"]
|
|
]
|
|
},
|
|
"boolean-trivia": true,
|
|
"class-name": true,
|
|
"comment-format": [true,
|
|
"check-space"
|
|
],
|
|
"curly":[true, "ignore-same-line"],
|
|
"debug-assert": true,
|
|
"indent": [true,
|
|
"spaces"
|
|
],
|
|
"interface-name": [true, "never-prefix"],
|
|
"interface-over-type-literal": true,
|
|
"jsdoc-format": true,
|
|
"linebreak-style": [true, "CRLF"],
|
|
"next-line": [true,
|
|
"check-catch",
|
|
"check-else"
|
|
],
|
|
"no-bom": true,
|
|
"no-double-space": true,
|
|
"no-eval": true,
|
|
"no-in-operator": true,
|
|
"no-increment-decrement": true,
|
|
"no-inferrable-types": true,
|
|
"no-internal-module": true,
|
|
"no-null-keyword": true,
|
|
"no-switch-case-fall-through": true,
|
|
"no-trailing-whitespace": [true, "ignore-template-strings"],
|
|
"no-type-assertion-whitespace": true,
|
|
"no-unnecessary-qualifier": true,
|
|
"no-var-keyword": true,
|
|
"object-literal-shorthand": true,
|
|
"object-literal-surrounding-space": true,
|
|
"one-line": [true,
|
|
"check-open-brace",
|
|
"check-whitespace"
|
|
],
|
|
"prefer-const": true,
|
|
"quotemark": [true,
|
|
"double",
|
|
"avoid-escape"
|
|
],
|
|
"semicolon": [true, "always", "ignore-bound-class-methods"],
|
|
"space-within-parens": true,
|
|
"triple-equals": true,
|
|
"type-operator-spacing": true,
|
|
"typedef-whitespace": [
|
|
true,
|
|
{
|
|
"call-signature": "nospace",
|
|
"index-signature": "nospace",
|
|
"parameter": "nospace",
|
|
"property-declaration": "nospace",
|
|
"variable-declaration": "nospace"
|
|
},
|
|
{
|
|
"call-signature": "onespace",
|
|
"index-signature": "onespace",
|
|
"parameter": "onespace",
|
|
"property-declaration": "onespace",
|
|
"variable-declaration": "onespace"
|
|
}
|
|
],
|
|
"whitespace": [true,
|
|
"check-branch",
|
|
"check-decl",
|
|
"check-operator",
|
|
"check-module",
|
|
"check-separator",
|
|
"check-type"
|
|
],
|
|
|
|
// Config different from tslint:latest
|
|
"no-implicit-dependencies": [true, "dev"],
|
|
"object-literal-key-quotes": [true, "consistent-as-needed"],
|
|
"variable-name": [true, "ban-keywords", "check-format", "allow-leading-underscore"],
|
|
|
|
// TODO
|
|
"arrow-parens": false, // [true, "ban-single-arg-parens"]
|
|
"arrow-return-shorthand": false,
|
|
"ban-types": false,
|
|
"forin": false,
|
|
"member-access": false, // [true, "no-public"]
|
|
"no-conditional-assignment": false,
|
|
"no-console": false,
|
|
"no-debugger": false,
|
|
"no-empty-interface": false,
|
|
"no-object-literal-type-assertion": false,
|
|
"no-shadowed-variable": false,
|
|
"no-submodule-imports": false,
|
|
"no-var-requires": false,
|
|
"ordered-imports": false,
|
|
"prefer-conditional-expression": false,
|
|
"radix": false,
|
|
"trailing-comma": false,
|
|
|
|
// These should be done automatically by a formatter. https://github.com/Microsoft/TypeScript/issues/18340
|
|
"align": false,
|
|
"eofline": false,
|
|
"max-line-length": false,
|
|
"no-consecutive-blank-lines": false,
|
|
"space-before-function-paren": false,
|
|
|
|
// Not doing
|
|
"ban-comma-operator": false,
|
|
"max-classes-per-file": false,
|
|
"member-ordering": false,
|
|
"no-angle-bracket-type-assertion": false,
|
|
"no-bitwise": false,
|
|
"no-namespace": false,
|
|
"no-reference": false,
|
|
"object-literal-sort-keys": false,
|
|
"one-variable-per-declaration": false
|
|
}
|
|
}
|