11.62.0 • Published 3 years ago

@brandingbrand/fscodestyle v11.62.0

Weekly downloads
1,275
License
MIT
Repository
-
Last release
3 years ago

FSCodeStyle

This repository contains a set of linting rules for TypeScript React projects. These are the same rules used by Flagship. If you're developing a project using Flagship, we recommend enforcing these rules.

Pre-Requisites

Your project must have the following:

  • A tsconfig.json file indicating the root files and base directories for the TypeScript compiler

Usage

  1. Add a dependency in your project yarn add @brandingbrand/fscodestyle
  2. Add a lint script to your package.json "lint": "fscodestyle"

We recommend you set this up as a precommit hook using Husky

Linting

The linter uses tslint. In addition, the following rule extensions have been added:

Highlights

  • Indentation: 2 spaces
  • Maximum line length: 100 characters
  • No more than two consecutive empty lines
  • No trailing whitespace at the end of lines
  • Use let and const instead of var
  • Use single quotes for string literals
  • Use === and !== instead of == and !=
  • TypeScript: Use const x: T = { ... }; notation instead of const x = { ...} as T;
  • TypeScript: Use interfaces over type literals

Rules in Depth

NameDescriptionPackage
arrow-parensArrow functions with multiple arguments must use parentheses; single arguments must not.tslint
no-unnecessary-type-assertionWarn if a type assertion is not necessary for an expressiontslint
typedefRequires type definitions to exist. Checks function return types, parameters, and member variable declarations.tslint
typedef-whitespaceRequires no space to exist to the left of the colon in a type definitiontslint
await-promiseWarns if an awaited value is not a promise.tslint
no-floating-promisesRequires promises returned by functions to be handled appropriately.tslint
no-inferred-empty-object-typeDisallow type inference of {} (empty object type) at function and constructor call sitestslint
no-unbound-methodDisallow use of an unbound class method as a callbacktslint
no-unused-variableDisallows unused imports, variables, functions, and private class memberstslint
use-default-type-parameterWarns if an explicitly specified type argument is the default for that type parameter.tslint
no-mergeable-namespaceDisallows mergeable namespaces in the same file.tslint
array-typeEnforces use of T[] for array typestslint
no-boolean-literal-compareWarns on comparison to a boolean literal, as in x === true.tslint
type-literal-delimiterChecks that type literal members are separated by semicolons. Enforces a trailing semicolon for multiline type literals.tslint
trailing-commaDisallow trailing commastslint
no-constant-conditionDisallow use of constant expressions in conditionstslint
cyclomatic-complexityAllow maximum cyclomatic complexity of 10tslint
switch-defaultRequire default case in switch statementstslint
triple-equalsRequire use of === and !==tslint
guard-for-inMake sure for-in loops have an if statementtslint
no-switch-case-fall-throughDisallow fallthrough of case statementstslint
no-magic-numbersDisallow use of magic numbers except -1, 0, 1, 2, 100, 1000tslint
no-duplicate-variableDisallow declaring the same variable more than oncetslint
no-use-before-declareDisallow use of variables before they are definedtslint
variable-nameRequire camel-cace namestslint
linebreak-styleEnforce Unix-style linebreakstslint
no-consecutive-blank-linesDisallow more than two consecutive blank linestslint
no-trailing-spacesDisallow trailing whitespace at end of linestslint
one-variable-per-declarationRequire no more than one variable declaration per functiontslint
object-literal-key-quotesRequire quotes around object literal property names as neededtslint
quotemarkRequire single quotes for string literaltslint
semicolonRequire semicolonstslint
comment-formatRequire that single-line comments begin with a space after the //tslint
no-control-regexDisallow control characters in regular expressions (recommended)tslint-eslint-rules
no-duplicate-caseDisallow duplicate case labels in a switch statementtslint-eslint-rules
no-empty-character-classDisallow the use of empty character classes in regular expressionstslint-eslint-rules
no-ex-assignDisallow assigning to the expection in a catch blocktslint-eslint-rules
no-extra-semiDisallow unnecessary semicolonstslint-eslint-rules
no-inner-declarationsDisallow function declarations in nested blockstslint-eslint-rules
no-invalid-regexpDisallow invalid regular expression strings in the RegExp constructortslint-eslint-rules
ter-no-irregular-whitespaceDisallow irregular whitespacetslint-eslint-rules
no-regex-spacesDisallow multiple spaces in a regular expression literaltslint-eslint-rules
no-unexpected-multilineDisallow code that looks like two expressions but is actually onetslint-eslint-rules
valid-jsdocEnforce valid JSDoc commentstslint-eslint-rules
valid-typeofEnsure that the results of typeof are compared against a valid stringtslint-eslint-rules
no-multi-spacesDisallow use of multiple spacestslint-eslint-rules
handle-callback-errEnforce error handling in callbackstslint-eslint-rules
array-bracket-spacingDisallow after and before array bracketstslint-eslint-rules
block-spacingRequire spacies inside of single line blockstslint-eslint-rules
brace-styleRequire "one true brace style" in which the opening brace of a block is placed on the same line as its statement or declarationtslint-eslint-rules
ter-func-call-spacingRequire spacing between function identifiers and their incovationstslint-eslint-rules
ter-indentEnforce consistent indentation: 2 spacestslint-eslint-rules
ter-max-lenEnforce max line length of 100tslint-eslint-rules
10.19.1

3 years ago

10.19.0

3 years ago

11.60.0

3 years ago

11.62.0

3 years ago

11.61.0

3 years ago

11.54.0

3 years ago

11.56.0

3 years ago

11.55.0

3 years ago

11.58.0

3 years ago

11.57.0

3 years ago

11.59.0

3 years ago

11.39.0

3 years ago

11.50.0

3 years ago

11.52.0

3 years ago

11.41.0

3 years ago

11.51.0

3 years ago

11.40.0

3 years ago

11.43.0

3 years ago

11.53.0

3 years ago

11.42.0

3 years ago

11.45.0

3 years ago

11.44.0

3 years ago

11.47.0

3 years ago

11.46.0

3 years ago

11.49.0

3 years ago

11.48.0

3 years ago

11.38.0

3 years ago

11.35.0

3 years ago

11.37.0

3 years ago

11.36.0

3 years ago

11.28.0

3 years ago

11.27.0

3 years ago

11.18.0

4 years ago

11.18.1

4 years ago

11.29.0

3 years ago

11.19.0

4 years ago

11.31.0

3 years ago

11.20.2

3 years ago

11.20.1

3 years ago

11.20.0

3 years ago

11.30.0

3 years ago

11.33.0

3 years ago

11.10.0

4 years ago

11.22.0

3 years ago

11.32.0

3 years ago

11.21.0

3 years ago

11.24.0

3 years ago

11.34.0

3 years ago

11.23.0

3 years ago

11.9.1

4 years ago

11.26.1

3 years ago

11.26.0

3 years ago

10.17.2

4 years ago

11.25.0

3 years ago

11.25.1

3 years ago

10.18.0

4 years ago

11.6.0

4 years ago

11.5.0

4 years ago

11.8.0

4 years ago

11.8.1

4 years ago

11.7.0

4 years ago

11.9.0

4 years ago

10.17.0

4 years ago

10.17.1

4 years ago

11.2.0

4 years ago

11.4.0

4 years ago

11.3.1

4 years ago

11.3.0

4 years ago

10.16.0

4 years ago

10.15.0

4 years ago

11.1.0

4 years ago

11.0.0

4 years ago

11.0.1-alpha.17

4 years ago

11.0.1-alpha.16

4 years ago

11.0.1-alpha.15

4 years ago

11.0.1-alpha.14

4 years ago

11.0.1-alpha.13

4 years ago

11.0.1-alpha.12

4 years ago

11.0.1-alpha.11

4 years ago

11.0.1-alpha.10

4 years ago

11.0.1-alpha.9

4 years ago

10.14.0

4 years ago

11.0.1-alpha.8

4 years ago

11.0.1-alpha.7

4 years ago

11.0.1-alpha.6

4 years ago

11.0.1-alpha.5

4 years ago

11.0.1-alpha.4

4 years ago

11.0.1-alpha.3

4 years ago

11.0.1-alpha.2

4 years ago

11.0.1-alpha.1

4 years ago

11.0.0-alpha.61

4 years ago

11.0.1-alpha.0

4 years ago

11.0.0-alpha.60

4 years ago

11.0.0-alpha.42

4 years ago

11.0.0-alpha.48

4 years ago

11.0.0-alpha.47

4 years ago

11.0.0-alpha.49

4 years ago

11.0.0-alpha.44

4 years ago

11.0.0-alpha.43

4 years ago

11.0.0-alpha.46

4 years ago

11.0.0-alpha.45

4 years ago

11.0.0-alpha.51

4 years ago

11.0.0-alpha.50

4 years ago

11.0.0-alpha.53

4 years ago

11.0.0-alpha.52

4 years ago

11.0.0-alpha.59

4 years ago

11.0.0-alpha.58

4 years ago

11.0.0-alpha.55

4 years ago

11.0.0-alpha.54

4 years ago

11.0.0-alpha.57

4 years ago

11.0.0-alpha.56

4 years ago

11.0.0-alpha.37

4 years ago

11.0.0-alpha.36

4 years ago

11.0.0-alpha.33

4 years ago

11.0.0-alpha.35

4 years ago

11.0.0-alpha.34

4 years ago

10.13.0

4 years ago

11.0.0-alpha.31

4 years ago

11.0.0-alpha.30

4 years ago

11.0.0-alpha.32

4 years ago

11.0.0-alpha.28

4 years ago

11.0.0-alpha.29

4 years ago

11.0.0-alpha.20

4 years ago

11.0.0-alpha.26

4 years ago

11.0.0-alpha.25

4 years ago

11.0.0-alpha.27

4 years ago

11.0.0-alpha.22

4 years ago

11.0.0-alpha.21

4 years ago

11.0.0-alpha.24

4 years ago

11.0.0-alpha.23

4 years ago

11.0.0-alpha.19

4 years ago

11.0.0-alpha.18

4 years ago

10.12.0

4 years ago

11.0.0-alpha.17

4 years ago

11.0.0-alpha.16

4 years ago

11.0.0-alpha.15

4 years ago

11.0.0-alpha.14

4 years ago

11.0.0-alpha.13

4 years ago

10.11.2

4 years ago

10.11.1

4 years ago

11.0.0-alpha.11

4 years ago

11.0.0-alpha.10

4 years ago

11.0.0-alpha.12

4 years ago

10.11.0

4 years ago

10.10.0

4 years ago

11.0.0-alpha.9

4 years ago

10.10.0-alpha.1

4 years ago

11.0.0-alpha.6

4 years ago

11.0.0-alpha.7

4 years ago

11.0.0-alpha.8

4 years ago

10.10.0-alpha.0

4 years ago

11.0.0-alpha.5

4 years ago

10.9.0

4 years ago

11.0.0-alpha.3

4 years ago

11.0.0-alpha.4

4 years ago

11.0.0-alpha.2

4 years ago

11.0.0-alpha.1

4 years ago

10.8.0

4 years ago

11.0.0-alpha.0

5 years ago

10.7.1

5 years ago

10.8.0-alpha.0

5 years ago

10.2.3

5 years ago

10.6.1

5 years ago

10.7.0

5 years ago

10.6.0

5 years ago

10.6.0-alpha.2

5 years ago

10.6.0-alpha.3

5 years ago

10.6.0-alpha.1

5 years ago

10.6.0-alpha.0

5 years ago

10.5.1

5 years ago

10.5.0

5 years ago

10.5.0-alpha.1

5 years ago

10.5.0-alpha.0

5 years ago

10.4.0

5 years ago

10.3.0

5 years ago

10.2.1

5 years ago

10.2.2

5 years ago

10.2.0

5 years ago

10.2.0-alpha.0

5 years ago

10.1.0

5 years ago

10.0.0

5 years ago

10.0.0-alpha.9

5 years ago

10.0.0-alpha.8

5 years ago

10.0.0-alpha.7

5 years ago

10.0.0-alpha.6

5 years ago

10.0.0-alpha.5

5 years ago

10.0.0-alpha.4

5 years ago

10.0.0-alpha.3

5 years ago

9.6.4

5 years ago

10.0.0-alpha.2

5 years ago

9.6.3

5 years ago

10.0.0-alpha.1

5 years ago

10.0.0-alpha.0

5 years ago

9.6.2

5 years ago

9.6.1

5 years ago

9.6.0

5 years ago

9.5.0

5 years ago

9.4.0

5 years ago

9.3.0

5 years ago

9.2.1

5 years ago

9.2.0

5 years ago

9.1.1-alpha.32

5 years ago

9.6.0-rnn2.0

5 years ago

8.8.1

5 years ago

9.1.0

5 years ago

8.8.0

5 years ago

9.0.1

5 years ago

9.0.0

5 years ago

9.5.0-rnn2.0

5 years ago

8.7.0

5 years ago

9.4.0-rnn2.0

5 years ago

9.3.0-rnn2.0

5 years ago

8.6.1

5 years ago

8.6.0

5 years ago

9.2.0-rnn2.0

5 years ago

8.5.0

5 years ago

9.1.0-rnn2.0

5 years ago

7.11.0

5 years ago

8.4.0

5 years ago

8.3.0

5 years ago

8.2.0

5 years ago

8.1.0

5 years ago

8.0.0

6 years ago

7.10.0

6 years ago

7.9.0

6 years ago

7.8.0

6 years ago

8.5.0-rnn2.0

6 years ago

8.4.0-rnn2.0

6 years ago

7.7.1

6 years ago

7.7.0

6 years ago

7.6.0

6 years ago

7.5.4

6 years ago

7.4.3

6 years ago

7.4.2

6 years ago

8.2.0-rnn2.0

6 years ago

8.1.3-rnn2.0

6 years ago

8.1.1-rnn2.0

6 years ago

8.1.0-rnn2.0

6 years ago

7.4.1

6 years ago

7.4.0

6 years ago

7.3.0

6 years ago

7.2.0

6 years ago

7.1.1

6 years ago

8.0.2-rnn2.0

6 years ago

8.0.1-rnn2.0

6 years ago

8.0.0-rnn2.0

6 years ago

7.1.0

6 years ago

6.0.0-rnn2.17

6 years ago

7.0.0

6 years ago

3.6.0

6 years ago

3.5.1

6 years ago

6.3.0

6 years ago

6.2.0

6 years ago

6.1.4

6 years ago

6.0.0-alpha.16

6 years ago

6.1.3

6 years ago

6.1.0

6 years ago

6.0.0-alpha.15

6 years ago

5.0.1-alpha.15

6 years ago

6.0.0

6 years ago

6.0.0-alpha.13

6 years ago

5.0.1-alpha.14

6 years ago

5.3.0

6 years ago

5.0.1-alpha.13

6 years ago

5.2.0

6 years ago

5.0.1-alpha.12

6 years ago

5.1.1

6 years ago

5.0.1-alpha.9

6 years ago

5.1.0

6 years ago

3.5.0

6 years ago

3.4.0

6 years ago

5.0.1-alpha.0

6 years ago

5.0.0

6 years ago

3.2.2-alpha.30

6 years ago

3.3.0

6 years ago

3.2.2-alpha.18

6 years ago

3.2.2-alpha.15

6 years ago

4.1.0

6 years ago

3.2.2-alpha.10

6 years ago

4.0.0

6 years ago

4.0.0-alpha.3

6 years ago

3.2.1

6 years ago

4.0.0-alpha.2

6 years ago

4.0.0-alpha.1

6 years ago

4.0.0-alpha.0

6 years ago

3.2.0

6 years ago

3.1.1

6 years ago

3.1.1-alpha.0

6 years ago

3.1.0

6 years ago

3.0.1-alpha.103

6 years ago

3.0.1-alpha.102

6 years ago

3.0.1-alpha.96

6 years ago

3.0.1-alpha.95

6 years ago

3.0.1-alpha.94

6 years ago

3.0.1-alpha.93

6 years ago

3.0.1-alpha.92

6 years ago

3.0.1-alpha.91

6 years ago

3.0.1-alpha.90

6 years ago

3.0.1-alpha.89

6 years ago

3.0.1-alpha.88

6 years ago

3.0.1-alpha.85

6 years ago

3.0.1-alpha.84

6 years ago

3.0.1-alpha.83

6 years ago

3.0.1-alpha.82

6 years ago

3.0.1-alpha.81

6 years ago

3.0.1-alpha.80

6 years ago

3.0.1-alpha.79

6 years ago

3.0.1-alpha.78

6 years ago

3.0.1-alpha.77

6 years ago

3.0.1-alpha.76

6 years ago

3.0.1-alpha.75

6 years ago

3.0.1-alpha.74

6 years ago

3.0.1-alpha.73

6 years ago

3.0.1-alpha.72

6 years ago

3.0.1-alpha.70

6 years ago

3.0.1-alpha.46

6 years ago

3.0.1-alpha.45

6 years ago

3.0.1-alpha.44

6 years ago

3.0.1-alpha.43

6 years ago

3.0.1-alpha.42

6 years ago

3.0.1-alpha.40

6 years ago

3.0.1-alpha.39

6 years ago

3.0.1-alpha.38

6 years ago

3.0.1-alpha.37

6 years ago

3.0.1-alpha.35

6 years ago

3.0.1-alpha.34

6 years ago

3.0.1-alpha.32

6 years ago

3.0.1-alpha.28

6 years ago

3.0.1-alpha.27

6 years ago

3.0.1-alpha.22

6 years ago

3.0.1-alpha.20

6 years ago

3.0.1-alpha.19

6 years ago

3.0.1-alpha.18

6 years ago

3.0.1-alpha.17

6 years ago

3.0.1-alpha.16

6 years ago

3.0.1-alpha.7

6 years ago

3.0.1-alpha.6

6 years ago

3.0.1-alpha.4

6 years ago

3.0.1-alpha.3

6 years ago

3.0.1-alpha.2

6 years ago

3.0.0

6 years ago

3.0.1-alpha.14

6 years ago

3.0.1-alpha.13

6 years ago

2.0.1-alpha.46

6 years ago

2.0.1-alpha.45

6 years ago

2.0.1-alpha.44

6 years ago

2.0.1-alpha.42

6 years ago

2.0.1-alpha.41

6 years ago

3.0.1-alpha.1

6 years ago

2.0.1-alpha.40

6 years ago

2.0.1-alpha.39

6 years ago

2.0.1-alpha.38

6 years ago

2.0.1-alpha.37

6 years ago

2.0.1-alpha.36

6 years ago

2.0.1-alpha.35

6 years ago

2.0.1-alpha.34

7 years ago

2.0.1-alpha.33

7 years ago

2.0.1-alpha.32

7 years ago

2.0.1-alpha.31

7 years ago

2.0.1-alpha.30

7 years ago

2.0.1-alpha.28

7 years ago

2.0.1-alpha.27

7 years ago

2.0.1-alpha.26

7 years ago

2.0.1-alpha.23

7 years ago

2.0.1-alpha.22

7 years ago

2.0.1-alpha.18

7 years ago

2.0.1-alpha.17

7 years ago

2.0.1-alpha.16

7 years ago

2.0.1-alpha.15

7 years ago

2.0.1-alpha.14

7 years ago

2.0.1-alpha.13

7 years ago

2.0.1-alpha.12

7 years ago

2.0.1-alpha.11

7 years ago

2.0.1-alpha.10

7 years ago

2.0.1-alpha.9

7 years ago

2.0.0

7 years ago

0.1.0

7 years ago

0.0.2

7 years ago