UNPKG

@bentley/build-tools

Version:

Bentley build tools

170 lines 4.25 kB
{ "defaultSeverity": "error", "extends": [ "tslint:recommended", "tslint-etc" ], "jsRules": {}, "rules": { "await-promise": [ true, "PromisedAssertion" ], "ban": [ true, { "name": [ "Math", "hypot" ], "message": "Use Geometry.hypotenuse methods instead" } ], "no-return-await": true, "promise-function-async": true, "no-floating-promises": true, // Standard Rules ====================================================== "max-line-length": [ false ], "curly": [ false, "ignore-same-line" ], "max-classes-per-file": false, "ordered-imports": [ true, { "import-sources-order": "any", "named-imports-order": "case-insensitive" } ], "interface-name": [ false ], "no-consecutive-blank-lines": true, // NOTE: This does not enforce that the correct number of spaces are used. See ter-indent. "indent": [ true, "spaces", 2 ], "space-before-function-paren": [ true, { "anonymous": "always", "named": "never", "asyncArrow": "always" } ], "variable-name": [ true, "ban-keywords", "check-format", "allow-leading-underscore" ], "align": [ true, "statements" ], "object-literal-sort-keys": false, "no-bitwise": false, "no-unused-expression": false, "no-unused-variable": true, "no-namespace": false, "one-variable-per-declaration": false, "no-empty": false, "no-switch-case-fall-through": true, "no-conditional-assignment": false, "no-duplicate-imports": true, "member-ordering": [ false ], // Naming Rules ====================================================== "naming-convention": [ true, // allow leading and trailing underscores on everything. Will override for exceptions below. { "type": "default", "leadingUnderscore": "allow", "trailingUnderscore": "allow" }, // forbid leading underscores on exported types { "type": "type", "modifiers": "export", "leadingUnderscore": "forbid" }, // forbid leading underscores on public methods { "type": "method", "modifiers": "public", "leadingUnderscore": "forbid" }, // forbid leading underscores on public properties { "type": "property", "modifiers": "public", "leadingUnderscore": "forbid" }, // allow leading underscores on enum members { "type": "enumMember", "leadingUnderscore": "allow" }, // require leading underscores on private properties { "type": "property", "modifiers": "private", "leadingUnderscore": "require" }, // require leading underscores on protected properties { "type": "property", "modifiers": "protected", "leadingUnderscore": "require" }, // require camelCase on all methods { "type": "method", "format": "camelCase" } ], // Rules from tslint-etc =============================================== "no-const-enum": { "options": [ { "allowLocal": true } ], "severity": "error" }, // Rules from tslint-eslint-rules ====================================== // tslint's indent rule only enforces/fixes tabs vs spaces, not number of spaces. "ter-indent": [ true, 2, { "SwitchCase": 1 } ], // Custom rules ======================================================== "prefer-get": true, "no-direct-imports": true, "import-within-package": true, "require-basic-rpc-values": true, "deprecation": { "severity": "error" }, "tslint-react-set-state-usage": [ true, "allow-object" ] }, "rulesDirectory": [ "./tslint-rules/tslint-consistent-codestyle/rules", "./tslint-rules/tslint-react-set-state-usage/src/rules", "./tslint-rules/tslint-eslint-rules/dist/rules", "./tslint-rules" ] }