@0xcert/conventions
Version:
Module with implementation of all confirmed conventions.
264 lines (263 loc) • 5.69 kB
JSON
{
"rules": {
"no-unnecessary-class": [
true,
"allow-constructor-only",
"allow-static-only",
"allow-empty-class"
],
"member-access": [
true,
"check-accessor",
"check-constructor"
],
"member-ordering": [
true,
{
"order": [
"public-static-field",
"public-instance-field",
"public-constructor",
"private-static-field",
"private-instance-field",
"private-constructor",
"public-instance-method",
"protected-instance-method",
"private-instance-method"
]
}
],
"adjacent-overload-signatures": true,
"prefer-function-over-method": [
true,
"allow-public",
"allow-protected"
],
"no-invalid-this": [
true,
"check-function-in-method"
],
"no-this-assignment": true,
"unnecessary-constructor": true,
"no-duplicate-super": true,
"new-parens": true,
"no-misused-new": true,
"no-construct": true,
"prefer-method-signature": true,
"interface-over-type-literal": true,
"function-constructor": true,
"no-arg": true,
"arrow-parens": [
true
],
"arrow-return-shorthand": [
false,
"multiline"
],
"unnecessary-bind": true,
"no-return-await": true,
"prefer-const": true,
"no-var-keyword": true,
"one-variable-per-declaration": [
true,
"ignore-for-loop"
],
"no-duplicate-variable": [
true,
"check-parameters"
],
"no-unnecessary-initializer": true,
"no-implicit-dependencies": [
true,
"dev"
],
"no-import-side-effect": [
true,
{
"ignore-module": "(hammerjs|core-js|zone.js)"
}
],
"ordered-imports": [
true,
{
"import-sources-order": "case-insensitive",
"named-imports-order": "case-insensitive",
"grouped-imports": false
}
],
"no-duplicate-imports": true,
"import-blacklist": [
true,
"rxjs/Rx"
],
"no-reference": true,
"typedef": [
true,
"property-declaration"
],
"no-inferrable-types": true,
"no-object-literal-type-assertion": true,
"no-angle-bracket-type-assertion": true,
"callable-types": true,
"no-non-null-assertion": true,
"prefer-object-spread": true,
"object-literal-shorthand": true,
"quotemark": [
true,
"single",
"avoid-template",
"avoid-escape"
],
"prefer-template": true,
"no-invalid-template-strings": true,
"increment-decrement": [
true,
"allow-post"
],
"binary-expression-operand-order": true,
"no-dynamic-delete": true,
"no-bitwise": true,
"use-isnan": true,
"no-conditional-assignment": true,
"prefer-conditional-expression": [
true,
"check-else-if"
],
"prefer-while": true,
"prefer-for-of": true,
"forin": true,
"switch-default": true,
"no-switch-case-fall-through": true,
"no-duplicate-switch-case": true,
"no-unsafe-finally": true,
"encoding": true,
"cyclomatic-complexity": [
true,
20
],
"indent": [
true,
"spaces",
2
],
"eofline": true,
"curly": true,
"whitespace": [
true,
"check-branch",
"check-decl",
"check-operator",
"check-module",
"check-separator",
"check-rest-spread",
"check-type",
"check-typecast",
"check-type-operator",
"check-preblock"
],
"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"
}
],
"space-before-function-paren": [
true,
{
"anonymous": "never",
"named": "never",
"asyncArrow": "always",
"method": "never",
"constructor": "never"
}
],
"space-within-parens": 0,
"import-spacing": true,
"no-trailing-whitespace": true,
"one-line": [
true,
"check-open-brace",
"check-whitespace",
"check-else",
"check-catch",
"check-finally"
],
"no-consecutive-blank-lines": [
true,
1
],
"semicolon": [
true,
"always",
"strict-bound-class-methods"
],
"align": [
true,
"elements",
"members",
"parameters",
"statements"
],
"trailing-comma": [
true,
{
"multiline": "always",
"esSpecCompliant": true
}
],
"file-name-casing": [
true,
"kebab-case"
],
"class-name": true,
"interface-name": [
true,
"never-prefix"
],
"variable-name": [
true,
"check-format",
"allow-leading-underscore",
"ban-keywords"
],
"comment-type": [
true,
"singleline",
"doc"
],
"comment-format": [
true,
"check-space"
],
"jsdoc-format": [
true,
"check-multiline-start"
],
"no-redundant-jsdoc": true,
"ban-ts-ignore": true,
"no-debugger": true,
"no-eval": true,
"no-string-throw": true,
"no-namespace": true,
"no-internal-module": true,
"number-literal-format": true,
"no-unused-expression": [
true,
"allow-fast-null-checks"
],
"no-empty": true,
"no-sparse-arrays": true,
"ban-comma-operator": true
}
}