blob: 62ff200a240a32d6e2761426332ebbb98058db40 [file] [log] [blame]
kumaran.m3b4814a2020-05-01 19:48:54 +05301{
2 "linterOptions" : {
3 "exclude" : [
4 "package.json"
5 ]
6 },
7 "defaultSeverity": "error",
8 "rules": {
9 "insecure-random": false,
10 "no-banned-terms": true,
11 "no-cookies": true,
12 "no-delete-expression": true,
13 "no-disable-auto-sanitization": true,
14 "no-document-domain": true,
15 "no-document-write": true,
16 "no-eval": true,
17 "no-exec-script": true,
18 "no-function-constructor-with-string-args": true,
19 "no-http-string": [
20 true,
21 "http://www.example.com/?.*",
22 "http://www.examples.com/?.*"
23 ],
24 "no-inner-html": true,
25 "no-octal-literal": true,
26 "no-reserved-keywords": true,
Barath Kumar R5abb2742020-11-22 20:15:10 +053027 "deprecation": {
28 "severity": "warning"
29 },
kumaran.m3b4814a2020-05-01 19:48:54 +053030 "no-string-based-set-immediate": true,
31 "no-string-based-set-interval": true,
32 "no-string-based-set-timeout": true,
33 "non-literal-require": true,
34 "possible-timing-attack": true,
35 "react-anchor-blank-noopener": true,
36 "react-iframe-missing-sandbox": true,
37 "react-no-dangerous-html": true,
38 "forin": true,
39 "jquery-deferred-must-complete": true,
40 "label-position": true,
41 "mocha-avoid-only": true,
42 "mocha-no-side-effect-code": true,
43 "no-any": true,
44 "no-arg": true,
45 "no-backbone-get-set-outside-model": true,
46 "no-bitwise": true,
47 "no-conditional-assignment": true,
48 "no-console": false,
49 "no-constant-condition": true,
50 "no-control-regex": true,
51 "no-debugger": true,
52 "no-duplicate-case": true,
53 "no-duplicate-variable": true,
54 "no-empty": true,
55 "no-increment-decrement": true,
56 "no-invalid-regexp": true,
57 "no-invalid-this": true,
58 "no-jquery-raw-elements": true,
59 "no-misused-new": true,
60 "no-regex-spaces": true,
61 "no-sparse-arrays": true,
62 "no-stateless-class": true,
63 "no-string-literal": true,
64 "no-string-throw": true,
65 "no-unnecessary-bind": true,
66 "no-unnecessary-initializer": true,
67 "no-unnecessary-override": true,
68 "no-unsafe-finally": true,
69 "no-unused-expression": true,
70 "no-with-statement": true,
71 "promise-must-complete": true,
72 "radix": true,
73 "react-this-binding-issue": true,
74 "react-unused-props-and-state": true,
75 "switch-default": true,
76 "triple-equals": [
77 true,
78 "allow-null-check"
79 ],
80 "use-isnan": true,
81 "use-named-parameter": true,
82 "valid-typeof": true,
83 "adjacent-overload-signatures": true,
84 "array-type": [
85 true,
86 "array"
87 ],
88 "arrow-parens": true,
89 "callable-types": true,
90 "chai-prefer-contains-to-index-of": true,
91 "chai-vague-errors": true,
92 "class-name": true,
93 "comment-format": true,
94 "export-name": true,
95 "function-name": true,
96 "import-name": true,
97 "interface-name": false,
98 "jsdoc-format": true,
99 "max-classes-per-file": [
100 true,
101 3
102 ],
103 "max-file-line-count": true,
104 "max-func-body-length": [
105 true,
106 100,
107 {
108 "ignore-parameters-to-function-regex": "describe"
109 }
110 ],
111 "max-line-length": [
112 true,
113 140
114 ],
115 "member-access": true,
116 "member-ordering": [
117 true,
118 {
119 "order": "fields-first"
120 }
121 ],
122 "missing-jsdoc": true,
123 "mocha-unneeded-done": true,
124 "new-parens": true,
125 "no-construct": true,
126 "no-default-export": true,
127 "no-empty-interface": true,
128 "no-for-in": true,
129 "no-function-expression": true,
130 "no-inferrable-types": false,
131 "no-multiline-string": true,
132 "no-null-keyword": false,
133 "no-parameter-properties": true,
134 "no-relative-imports": false,
135 "no-require-imports": true,
136 "no-shadowed-variable": true,
137 "no-typeof-undefined": true,
138 "no-unnecessary-field-initialization": true,
139 "no-unnecessary-local-variable": true,
140 "no-var-keyword": true,
141 "no-var-requires": true,
142 "no-var-self": true,
143 "object-literal-sort-keys": false,
144 "one-variable-per-declaration": true,
145 "only-arrow-functions": [
146 true,
147 "allow-declarations",
148 "allow-named-functions"
149 ],
150 "ordered-imports": true,
151 "prefer-array-literal": true,
152 "prefer-const": true,
153 "prefer-for-of": true,
154 "prefer-method-signature": true,
155 "typedef": [
156 true,
157 "call-signature",
158 "arrow-call-signature",
159 "parameter",
160 "arrow-parameter",
161 "property-declaration",
162 "variable-declaration",
163 "member-variable-declaration"
164 ],
165 "underscore-consistent-invocation": true,
166 "unified-signatures": true,
167 "variable-name": true,
168 "react-a11y-anchors": true,
169 "react-a11y-aria-unsupported-elements": true,
170 "react-a11y-event-has-role": true,
171 "react-a11y-image-button-has-alt": true,
172 "react-a11y-img-has-alt": true,
173 "react-a11y-lang": true,
174 "react-a11y-meta": true,
175 "react-a11y-props": true,
176 "react-a11y-proptypes": true,
177 "react-a11y-role": true,
178 "react-a11y-role-has-required-aria-props": true,
179 "react-a11y-role-supports-aria-props": true,
180 "react-a11y-tabindex-no-positive": true,
181 "react-a11y-titles": true,
182 "align": [
183 true,
184 "statements"
185 ],
186 "curly": true,
187 "eofline": true,
188 "import-spacing": true,
189 "indent": [
190 true,
191 "spaces"
192 ],
193 "linebreak-style": false,
194 "no-consecutive-blank-lines": true,
195 "no-empty-line-after-opening-brace": true,
196 "no-trailing-whitespace": true,
197 "no-unnecessary-semicolons": true,
198 "object-literal-key-quotes": [
199 true,
200 "as-needed"
201 ],
202 "one-line": [
203 false
204 ],
205 "quotemark": [
206 true,
207 "single"
208 ],
209 "react-tsx-curly-spacing": true,
210 "semicolon": [
211 true,
212 "always"
213 ],
214 "trailing-comma": [
215 true,
216 {
217 "singleline": "never",
218 "multiline": "never"
219 }
220 ],
221 "typedef-whitespace": false,
222 "whitespace": [
223 true,
224 "check-branch",
225 "check-decl",
226 "check-operator",
227 "check-separator",
228 "check-type"
229 ],
230 "ban": false,
231 "cyclomatic-complexity": true,
232 "file-header": false,
233 "import-blacklist": false,
234 "interface-over-type-literal": true,
235 "no-internal-module": true,
236 "no-magic-numbers": true,
237 "no-mergeable-namespace": false,
238 "no-namespace": true,
239 "no-reference": true,
240 "no-unexternalized-strings": true,
241 "object-literal-shorthand": true,
242 "no-angle-bracket-type-assertion": true,
243 "prefer-type-cast": false,
244 "space-before-function-paren": false,
245 "missing-optional-annotation": false,
246 "no-duplicate-parameter-names": false,
247 "no-empty-interfaces": true,
248 "no-missing-visibility-modifiers": false,
249 "no-multiple-var-decl": false,
250 "no-switch-case-fall-through": true,
kumaran.m3b4814a2020-05-01 19:48:54 +0530251 "typeof-compare": true,
252 "no-inferred-empty-object-type": true,
253 "await-promise": true,
254 "no-floating-promises": true,
255 "no-for-in-array": true,
kumaran.m3b4814a2020-05-01 19:48:54 +0530256 "promise-function-async": true,
257 "completed-docs": [
258 true,
259 {
260 "classes": {
261 "visibilities": ["all"]
262 },
263 "enums": {
264 "visibilities": ["all"]
265 },
266 "functions": {
267 "visibilities": ["all"]
268 },
269 "interfaces": {
270 "visibilities": ["all"]
271 },
272 "methods": {
273 "locations": ["all"],
274 "privacies": ["all"]
275 },
276 "namespaces": {
277 "visibilities": ["all"]
278 },
279 "properties": {
280 "locations": ["all"],
281 "privacies": ["all"]
282 },
283 "types": {
284 "visibilities": ["all"]
285 },
286 "variables": {
287 "visibilities": ["all"]
288 }
289 }
290 ],
291 "no-unnecessary-qualifier": true,
292 "no-void-expression": true,
293 "strict-boolean-expressions": [true, "allow-null-union"],
294 // The following produce too much noise with untyped or not-sufficiently typed libraries
295 "restrict-plus-operands": false,
296 "no-unsafe-any": false
297 },
298 "rulesDirectory": ["./node_modules/tslint-microsoft-contrib/"]
299}