eslint-config-seek 10.3.0 → 11.0.0

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.
Files changed (2) hide show
  1. package/base.js +21 -0
  2. package/package.json +2 -2
package/base.js CHANGED
@@ -113,6 +113,7 @@ const baseConfig = {
113
113
  parserOptions: {
114
114
  ecmaVersion: 2018,
115
115
  sourceType: 'module',
116
+ project: 'tsconfig.json',
116
117
  },
117
118
  extends: [
118
119
  'plugin:@typescript-eslint/eslint-recommended',
@@ -151,6 +152,26 @@ const baseConfig = {
151
152
  // https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-shadow.md
152
153
  'no-shadow': OFF,
153
154
  '@typescript-eslint/no-shadow': ERROR,
155
+
156
+ // These two rules deal with autofixing type imports/exports
157
+ // https://typescript-eslint.io/rules/consistent-type-imports
158
+ '@typescript-eslint/consistent-type-imports': [
159
+ ERROR,
160
+ { fixStyle: 'inline-type-imports' },
161
+ ],
162
+ // https://typescript-eslint.io/rules/consistent-type-exports
163
+ '@typescript-eslint/consistent-type-exports': [
164
+ ERROR,
165
+ { fixMixedExportsWithInlineTypeSpecifier: true },
166
+ ],
167
+ // https://typescript-eslint.io/rules/no-import-type-side-effects
168
+ '@typescript-eslint/no-import-type-side-effects': ERROR,
169
+
170
+ // This rule deals with merging multiple imports from the same module.
171
+ // In this case, we want type imports to be inlined when merging with the other imports.
172
+ // However, there is a pending PR which improves the behaviour of this rule https://github.com/import-js/eslint-plugin-import/pull/2716
173
+ // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-duplicates.md#inline-type-imports
174
+ 'import/no-duplicates': [ERROR, { 'prefer-inline': true }],
154
175
  },
155
176
  },
156
177
  {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eslint-config-seek",
3
- "version": "10.3.0",
3
+ "version": "11.0.0",
4
4
  "description": "ESLint configuration used by SEEK",
5
5
  "main": "index.js",
6
6
  "files": [
@@ -41,7 +41,7 @@
41
41
  },
42
42
  "peerDependencies": {
43
43
  "eslint": ">=6",
44
- "typescript": ">=3.3"
44
+ "typescript": ">=4.5"
45
45
  },
46
46
  "packageManager": "pnpm@7.27.1",
47
47
  "volta": {