summaryrefslogtreecommitdiff
path: root/tslint.json
diff options
context:
space:
mode:
authorParsa Ghadimi <me@qti3e.com>2018-07-01 23:53:21 +0430
committerRyan Dahl <ry@tinyclouds.org>2018-07-01 21:41:53 +0200
commit235e5490357e977fe6c40a203d9ecadd744f881c (patch)
tree422ba7d9d5b3d05dfe3011c2315b3c5a31645f33 /tslint.json
parentea35281d637cf326c4d808111a59d986c92e6a4b (diff)
Add tslint
Diffstat (limited to 'tslint.json')
-rw-r--r--tslint.json108
1 files changed, 108 insertions, 0 deletions
diff --git a/tslint.json b/tslint.json
new file mode 100644
index 000000000..1974d758a
--- /dev/null
+++ b/tslint.json
@@ -0,0 +1,108 @@
+{
+ "extends": [
+ "tslint-eslint-rules", "tslint-no-circular-imports"
+ ],
+ "rules": {
+ "align": [
+ true,
+ // TODO "arguments",
+ // TODO "elements",
+ "members",
+ "parameters",
+ "statements"
+ ],
+ "array-bracket-spacing": [true, "never"],
+ "array-type": [true, "array-simple"],
+ "arrow-return-shorthand": true,
+ "ban": [true,
+ {"name": "parseInt", "message": "tsstyle#type-coercion"},
+ {"name": "parseFloat", "message": "tsstyle#type-coercion"},
+ {"name": "Array", "message": "tsstyle#array-constructor"}
+ ],
+ "ban-types": [true,
+ ["Object", "Use {} instead."],
+ ["String", "Use 'string' instead."],
+ ["Number", "Use 'number' instead."],
+ ["Boolean", "Use 'boolean' instead."]
+ ],
+ "brace-style": [true, "1tbs", { "allowSingleLine": true }],
+ "block-spacing": [true, "always"],
+ "class-name": true,
+ "comment-format": [true, "check-space"],
+ "curly": [true, "ignore-same-line"],
+ "eofline": true,
+ "forin": true,
+ "ter-func-call-spacing": true,
+ "indent": [true, "spaces", 2],
+ "interface-name": [true, "never-prefix"],
+ "jsdoc-format": true,
+ "label-position": true,
+ "linebreak-style": [true, "LF"],
+ "max-line-length": { "options": [80] },
+ "member-access": [true, "no-public"],
+ "new-parens": true,
+ "no-angle-bracket-type-assertion": true,
+ //"no-any": true,
+ "no-arg": true,
+ "no-conditional-assignment": true,
+ "no-consecutive-blank-lines": true,
+ "no-construct": true,
+ "no-debugger": true,
+ "no-default-export": true,
+ "no-duplicate-variable": true,
+ "no-inferrable-types": true,
+ "no-irregular-whitespace": true,
+ "no-namespace": [true, "allow-declarations"],
+ "no-multi-spaces": true,
+ "no-reference": true,
+ "no-string-throw": true,
+ "no-trailing-whitespace": true,
+ "no-unused-expression": true,
+ "no-var-keyword": true,
+ "object-literal-shorthand": true,
+ "object-literal-sort-keys": [true, "match-declaration-order"],
+ "one-line": [true, "check-catch", "check-finally", "check-else"],
+ //"only-arrow-functions": [true, "allow-declarations", "allow-named-functions"],
+ "ordered-imports": true,
+ "quotemark": [true, "double"],
+ "prefer-const": true,
+ "radix": true,
+ // https://github.com/buzinas/tslint-eslint-rules/issues/318
+ // "space-before-blocks": true,
+ "space-before-function-paren": false,
+ "semicolon": [true, "always", "ignore-bound-class-methods"],
+ //"switch-default": true,
+ "triple-equals": [true, "allow-null-check"],
+ "use-isnan": true,
+ "variable-name": [
+ true,
+ "check-format",
+ "ban-keywords",
+ "allow-leading-underscore",
+ "allow-trailing-underscore"
+ ],
+ "whitespace": [
+ true,
+ "check-branch",
+ "check-decl",
+ "check-operator",
+ "check-module",
+ "check-separator",
+ "check-rest-spread",
+ "check-type",
+ "check-typecast",
+ "check-type-operator",
+ "check-preblock"
+ ]
+ },
+ "jsRules": {
+ "max-line-length": { "options": [80] },
+ "linebreak-style": [true, "LF"],
+ "indent": [true, "spaces", 2]
+ },
+ "linterOptions": {
+ "exclude": [
+ "js/msg.pb.js"
+ ]
+ }
+}