@clipboard-health/eslint-config 2.4.12 → 2.4.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,10 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
+ ## [2.4.14](https://github.com/ClipboardHealth/cbh-core/compare/eslint-config-2.4.13...eslint-config-2.4.14) (2023-05-19)
6
+
7
+ ## [2.4.13](https://github.com/ClipboardHealth/cbh-core/compare/eslint-config-2.4.12...eslint-config-2.4.13) (2023-05-18)
8
+
5
9
  ## [2.4.12](https://github.com/ClipboardHealth/cbh-core/compare/eslint-config-2.4.11...eslint-config-2.4.12) (2023-05-17)
6
10
 
7
11
  ## [2.4.11](https://github.com/ClipboardHealth/cbh-core/compare/eslint-config-2.4.10...eslint-config-2.4.11) (2023-05-17)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@clipboard-health/eslint-config",
3
- "version": "2.4.12",
3
+ "version": "2.4.14",
4
4
  "main": "./src/index.js",
5
5
  "scripts": {
6
6
  "build": "nx build eslint-config",
package/src/index.d.ts CHANGED
@@ -203,6 +203,11 @@ export declare const rules: {
203
203
  yoda: string[];
204
204
  };
205
205
  export declare const overrides: {
206
+ /**
207
+ * Prisma calls with relations can result in complex return types, which
208
+ * may be cumbersome to define explicitly. This override allows type
209
+ * inference in repository files that interact with Prisma.
210
+ */
206
211
  files: string[];
207
212
  rules: {
208
213
  "@typescript-eslint/explicit-module-boundary-types": string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../packages/eslint-config/src/index.js"],"names":[],"mappings":""}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../packages/eslint-config/src/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA0TM;;;;OAIG"}
package/src/index.js CHANGED
@@ -310,9 +310,11 @@ module.exports = {
310
310
  },
311
311
  overrides: [
312
312
  {
313
- // Prisma calls with relations can result in complex return types, which
314
- // may be cumbersome to define explicitly. This override allows type
315
- // inference in repository files that interact with Prisma.
313
+ /**
314
+ * Prisma calls with relations can result in complex return types, which
315
+ * may be cumbersome to define explicitly. This override allows type
316
+ * inference in repository files that interact with Prisma.
317
+ */
316
318
  files: ["*.repository.ts"],
317
319
  rules: {
318
320
  "@typescript-eslint/explicit-module-boundary-types": "off",
package/src/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/eslint-config/src/index.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/eslint-config/src/index.js"],"names":[],"mappings":"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"}
package/src/xo.d.ts CHANGED
@@ -9,32 +9,38 @@ export declare const plugins: string[];
9
9
  export declare const rules: {
10
10
  "@typescript-eslint/consistent-type-definitions": string[];
11
11
  "@typescript-eslint/naming-convention": string;
12
+ "security/detect-object-injection": string;
12
13
  "@typescript-eslint/no-unused-vars": (string | {
13
14
  argsIgnorePattern: string;
14
15
  })[];
16
+ "no-return-await": string;
15
17
  "@typescript-eslint/return-await": string[];
16
- "capitalized-comments": string;
18
+ "capitalized-comments": (string | {
19
+ ignorePattern: string;
20
+ })[];
21
+ curly: string;
17
22
  "class-methods-use-this": string;
18
23
  "import/extensions": string;
24
+ "n/no-missing-import": string;
25
+ "n/no-unpublished-import": string;
26
+ "unicorn/prefer-module": string;
19
27
  "import/no-extraneous-dependencies": string;
20
28
  "import/no-unresolved": string;
21
29
  "import/prefer-default-export": string;
22
- "n/no-missing-import": string;
23
- "n/no-unpublished-import": string;
24
30
  "new-cap": (string | {
25
31
  newIsCap: boolean;
26
32
  capIsNew: boolean;
27
33
  })[];
28
34
  "no-only-tests/no-only-tests": string;
29
- "no-restricted-syntax": string;
30
- "no-return-await": string;
35
+ "no-restricted-syntax": (string | {
36
+ selector: string;
37
+ message: string;
38
+ })[];
31
39
  "no-shadow": string;
32
40
  "simple-import-sort/imports": string;
33
41
  "simple-import-sort/exports": string;
34
- "security/detect-object-injection": string;
35
42
  "unicorn/no-array-for-each": string;
36
43
  "unicorn/no-array-reduce": string;
37
- "unicorn/prefer-module": string;
38
44
  "unicorn/prevent-abbreviations": (string | {
39
45
  ignore: RegExp[];
40
46
  })[];
package/src/xo.js CHANGED
@@ -22,29 +22,65 @@ module.exports = {
22
22
  },
23
23
  plugins: ["jest", "no-only-tests", "simple-import-sort", "sonarjs"],
24
24
  rules: {
25
+ // See https://github.com/microsoft/TypeScript/wiki/Performance#preferring-interfaces-over-intersections
25
26
  "@typescript-eslint/consistent-type-definitions": ["error", "interface"],
27
+ // Too many false positives
26
28
  "@typescript-eslint/naming-convention": "off",
29
+ "security/detect-object-injection": "off",
30
+ // Prefer an escape hatch instead of an outright ban
27
31
  "@typescript-eslint/no-unused-vars": ["warn", { argsIgnorePattern: "^_" }],
32
+ // Prefer debugging ease over an extra microtask by requiring `return await`.
33
+ // `no-return-await` states "This can make debugging more difficult."
34
+ "no-return-await": "off",
28
35
  "@typescript-eslint/return-await": ["error", "always"],
29
- "capitalized-comments": "off",
36
+ // Ignore `sonar-disable`/`sonar-enable` comments
37
+ "capitalized-comments": ["error", "always", { ignorePattern: "sonar" }],
38
+ // Prevent bugs
39
+ curly: "error",
40
+ // Recommends using static fields instead of moving to a function
30
41
  "class-methods-use-this": "off",
42
+ // Our libraries don't use ESM
31
43
  "import/extensions": "off",
44
+ "n/no-missing-import": "off",
45
+ "n/no-unpublished-import": "off",
46
+ "unicorn/prefer-module": "off",
47
+ // Rely on `"n/no-extraneous-import"` instead
32
48
  "import/no-extraneous-dependencies": "off",
49
+ // Doesn't play well with NX/monorepos
33
50
  "import/no-unresolved": "off",
51
+ // Prefer named exports
34
52
  "import/prefer-default-export": "off",
35
- "n/no-missing-import": "off",
36
- "n/no-unpublished-import": "off",
53
+ // Allow PascalCase for Decorators
37
54
  "new-cap": ["warn", { newIsCap: true, capIsNew: false }],
55
+ /* Don't allow `.only` in tests to prevent it from making it
56
+ into `main` and circumventing our tests. */
38
57
  "no-only-tests/no-only-tests": "error",
39
- "no-restricted-syntax": "off",
40
- "no-return-await": "off",
58
+ // Adapter from Airbnb's config, but allows ForOfStatement.
59
+ // See https://github.com/airbnb/javascript/blob/0f3ca32323b8d5770de3301036e65511c6d18e00/packages/eslint-config-airbnb-base/rules/style.js#L340-L358
60
+ "no-restricted-syntax": [
61
+ "error",
62
+ {
63
+ selector: "ForInStatement",
64
+ message: "for..in loops iterate over the entire prototype chain, which is virtually never what you want. Use Object.{keys,values,entries}, and iterate over the resulting array.",
65
+ },
66
+ {
67
+ selector: "LabeledStatement",
68
+ message: "Labels are a form of GOTO; using them makes code confusing and hard to maintain and understand.",
69
+ },
70
+ {
71
+ selector: "WithStatement",
72
+ message: "`with` is disallowed in strict mode because it makes code impossible to predict and optimize.",
73
+ },
74
+ ],
75
+ // False positive on `enum`s
41
76
  "no-shadow": "off",
77
+ // Sort imports and exports
42
78
  "simple-import-sort/imports": "warn",
43
79
  "simple-import-sort/exports": "warn",
44
- "security/detect-object-injection": "off",
80
+ // "Better readability" is subjective
45
81
  "unicorn/no-array-for-each": "off",
46
82
  "unicorn/no-array-reduce": "off",
47
- "unicorn/prefer-module": "off",
83
+ // Allow common, well understood abbreviations
48
84
  "unicorn/prevent-abbreviations": [
49
85
  "error",
50
86
  { ignore: [/config/i, /params/i, /props/i, /ref/i] },
package/src/xo.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"xo.js","sourceRoot":"","sources":["../../../../packages/eslint-config/src/xo.js"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,GAAG;IACf,OAAO,EAAE;QACP,aAAa;QACb,oCAAoC;QACpC,yBAAyB;QACzB,mBAAmB;QACnB,2BAA2B;QAC3B,sBAAsB;QACtB,yCAAyC;QACzC,6BAA6B;QAC7B,4BAA4B;QAC5B,4BAA4B;QAC5B,UAAU;QACV,IAAI;QACJ,qBAAqB;KACtB;IACD,MAAM,EAAE,2BAA2B;IACnC,aAAa,EAAE;QACb,OAAO,EAAE,CAAC,eAAe,CAAC;QAC1B,eAAe,EAAE,SAAS;KAC3B;IACD,OAAO,EAAE,CAAC,MAAM,EAAE,eAAe,EAAE,oBAAoB,EAAE,SAAS,CAAC;IACnE,KAAK,EAAE;QACL,gDAAgD,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC;QACxE,sCAAsC,EAAE,KAAK;QAC7C,mCAAmC,EAAE,CAAC,MAAM,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC;QAC1E,iCAAiC,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;QACtD,sBAAsB,EAAE,KAAK;QAC7B,wBAAwB,EAAE,KAAK;QAC/B,mBAAmB,EAAE,KAAK;QAC1B,mCAAmC,EAAE,KAAK;QAC1C,sBAAsB,EAAE,KAAK;QAC7B,8BAA8B,EAAE,KAAK;QACrC,qBAAqB,EAAE,KAAK;QAC5B,yBAAyB,EAAE,KAAK;QAChC,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QACxD,6BAA6B,EAAE,OAAO;QACtC,sBAAsB,EAAE,KAAK;QAC7B,iBAAiB,EAAE,KAAK;QACxB,WAAW,EAAE,KAAK;QAClB,4BAA4B,EAAE,MAAM;QACpC,4BAA4B,EAAE,MAAM;QACpC,kCAAkC,EAAE,KAAK;QACzC,2BAA2B,EAAE,KAAK;QAClC,yBAAyB,EAAE,KAAK;QAChC,uBAAuB,EAAE,KAAK;QAC9B,+BAA+B,EAAE;YAC/B,OAAO;YACP,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE;SACrD;KACF;IACD,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE;CAC7C,CAAC"}
1
+ {"version":3,"file":"xo.js","sourceRoot":"","sources":["../../../../packages/eslint-config/src/xo.js"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,GAAG;IACf,OAAO,EAAE;QACP,aAAa;QACb,oCAAoC;QACpC,yBAAyB;QACzB,mBAAmB;QACnB,2BAA2B;QAC3B,sBAAsB;QACtB,yCAAyC;QACzC,6BAA6B;QAC7B,4BAA4B;QAC5B,4BAA4B;QAC5B,UAAU;QACV,IAAI;QACJ,qBAAqB;KACtB;IACD,MAAM,EAAE,2BAA2B;IACnC,aAAa,EAAE;QACb,OAAO,EAAE,CAAC,eAAe,CAAC;QAC1B,eAAe,EAAE,SAAS;KAC3B;IACD,OAAO,EAAE,CAAC,MAAM,EAAE,eAAe,EAAE,oBAAoB,EAAE,SAAS,CAAC;IACnE,KAAK,EAAE;QACL,wGAAwG;QACxG,gDAAgD,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC;QAExE,2BAA2B;QAC3B,sCAAsC,EAAE,KAAK;QAC7C,kCAAkC,EAAE,KAAK;QAEzC,oDAAoD;QACpD,mCAAmC,EAAE,CAAC,MAAM,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC;QAE1E,6EAA6E;QAC7E,qEAAqE;QACrE,iBAAiB,EAAE,KAAK;QACxB,iCAAiC,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;QAEtD,iDAAiD;QACjD,sBAAsB,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC;QAEvE,eAAe;QACf,KAAK,EAAE,OAAO;QAEd,iEAAiE;QACjE,wBAAwB,EAAE,KAAK;QAE/B,8BAA8B;QAC9B,mBAAmB,EAAE,KAAK;QAC1B,qBAAqB,EAAE,KAAK;QAC5B,yBAAyB,EAAE,KAAK;QAChC,uBAAuB,EAAE,KAAK;QAE9B,6CAA6C;QAC7C,mCAAmC,EAAE,KAAK;QAE1C,sCAAsC;QACtC,sBAAsB,EAAE,KAAK;QAE7B,uBAAuB;QACvB,8BAA8B,EAAE,KAAK;QAErC,kCAAkC;QAClC,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QAExD;sDAC8C;QAC9C,6BAA6B,EAAE,OAAO;QAEtC,2DAA2D;QAC3D,qJAAqJ;QACrJ,sBAAsB,EAAE;YACtB,OAAO;YACP;gBACE,QAAQ,EAAE,gBAAgB;gBAC1B,OAAO,EACL,wKAAwK;aAC3K;YACD;gBACE,QAAQ,EAAE,kBAAkB;gBAC5B,OAAO,EACL,iGAAiG;aACpG;YACD;gBACE,QAAQ,EAAE,eAAe;gBACzB,OAAO,EACL,+FAA+F;aAClG;SACF;QAED,4BAA4B;QAC5B,WAAW,EAAE,KAAK;QAElB,2BAA2B;QAC3B,4BAA4B,EAAE,MAAM;QACpC,4BAA4B,EAAE,MAAM;QAEpC,qCAAqC;QACrC,2BAA2B,EAAE,KAAK;QAClC,yBAAyB,EAAE,KAAK;QAEhC,8CAA8C;QAC9C,+BAA+B,EAAE;YAC/B,OAAO;YACP,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE;SACrD;KACF;IACD,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE;CAC7C,CAAC"}