Improve webview ESLint setup

pull/373/head
Kelvin Schoofs 3 years ago
parent 2e1470989b
commit 2673c726c8

@ -2088,7 +2088,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@types/json-schema@npm:*, @types/json-schema@npm:^7.0.3, @types/json-schema@npm:^7.0.5, @types/json-schema@npm:^7.0.7, @types/json-schema@npm:^7.0.8, @types/json-schema@npm:^7.0.9": "@types/json-schema@npm:*, @types/json-schema@npm:^7.0.5, @types/json-schema@npm:^7.0.8, @types/json-schema@npm:^7.0.9":
version: 7.0.9 version: 7.0.9
resolution: "@types/json-schema@npm:7.0.9" resolution: "@types/json-schema@npm:7.0.9"
checksum: 259d0e25f11a21ba5c708f7ea47196bd396e379fddb79c76f9f4f62c945879dc21657904914313ec2754e443c5018ea8372362f323f30e0792897fdb2098a705 checksum: 259d0e25f11a21ba5c708f7ea47196bd396e379fddb79c76f9f4f62c945879dc21657904914313ec2754e443c5018ea8372362f323f30e0792897fdb2098a705
@ -2353,153 +2353,120 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/eslint-plugin@npm:^4.5.0": "@typescript-eslint/eslint-plugin@npm:^5.12.0":
version: 4.33.0 version: 5.12.0
resolution: "@typescript-eslint/eslint-plugin@npm:4.33.0" resolution: "@typescript-eslint/eslint-plugin@npm:5.12.0"
dependencies: dependencies:
"@typescript-eslint/experimental-utils": 4.33.0 "@typescript-eslint/scope-manager": 5.12.0
"@typescript-eslint/scope-manager": 4.33.0 "@typescript-eslint/type-utils": 5.12.0
debug: ^4.3.1 "@typescript-eslint/utils": 5.12.0
debug: ^4.3.2
functional-red-black-tree: ^1.0.1 functional-red-black-tree: ^1.0.1
ignore: ^5.1.8 ignore: ^5.1.8
regexpp: ^3.1.0 regexpp: ^3.2.0
semver: ^7.3.5 semver: ^7.3.5
tsutils: ^3.21.0 tsutils: ^3.21.0
peerDependencies: peerDependencies:
"@typescript-eslint/parser": ^4.0.0 "@typescript-eslint/parser": ^5.0.0
eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
peerDependenciesMeta: peerDependenciesMeta:
typescript: typescript:
optional: true optional: true
checksum: d74855d0a5ffe0b2f362ec02fcd9301d39a53fb4155b9bd0cb15a0a31d065143129ebf98df9d86af4b6f74de1d423a4c0d8c0095520844068117453afda5bc4f checksum: ac7074b51456748ef8770d82f5b4e691e1b93bb1353b448bb1b43db5b5a9722a6a012dc1dc0a3b35ab0c0ca7c1b5412f535ad992115132ed84ed6f4179778d37
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/experimental-utils@npm:4.33.0, @typescript-eslint/experimental-utils@npm:^4.0.1": "@typescript-eslint/parser@npm:^5.12.0":
version: 4.33.0 version: 5.12.0
resolution: "@typescript-eslint/experimental-utils@npm:4.33.0" resolution: "@typescript-eslint/parser@npm:5.12.0"
dependencies: dependencies:
"@types/json-schema": ^7.0.7 "@typescript-eslint/scope-manager": 5.12.0
"@typescript-eslint/scope-manager": 4.33.0 "@typescript-eslint/types": 5.12.0
"@typescript-eslint/types": 4.33.0 "@typescript-eslint/typescript-estree": 5.12.0
"@typescript-eslint/typescript-estree": 4.33.0 debug: ^4.3.2
eslint-scope: ^5.1.1
eslint-utils: ^3.0.0
peerDependencies: peerDependencies:
eslint: "*" eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
checksum: f859800ada0884f92db6856f24efcb1d073ac9883ddc2b1aa9339f392215487895bed8447ebce3741e8141bb32e545244abef62b73193ba9a8a0527c523aabae peerDependenciesMeta:
typescript:
optional: true
checksum: 0453c14d967ebba4ebe0d763882b7a1258f23a710d127f53196d360b78722d880cc8c0299feb52ecc4e10600834c22559bf543211249d878efad864f7ec856bc
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/experimental-utils@npm:^3.10.1": "@typescript-eslint/scope-manager@npm:5.12.0":
version: 3.10.1 version: 5.12.0
resolution: "@typescript-eslint/experimental-utils@npm:3.10.1" resolution: "@typescript-eslint/scope-manager@npm:5.12.0"
dependencies: dependencies:
"@types/json-schema": ^7.0.3 "@typescript-eslint/types": 5.12.0
"@typescript-eslint/types": 3.10.1 "@typescript-eslint/visitor-keys": 5.12.0
"@typescript-eslint/typescript-estree": 3.10.1 checksum: 87cc4e8ab3b495293e51685566cafca6f217c7328fc1210e4a9c3a89e864c5e3a04ddde11708e07820185fd158cb448980607a93fd658fa2089c152f27a847d0
eslint-scope: ^5.0.0
eslint-utils: ^2.0.0
peerDependencies:
eslint: "*"
checksum: 635cc1afe466088b04901c2bce0e4c3e48bb74668e61e39aa74a485f856c6f9683482350d4b16b3f4c0112ce40cad2c2c427d4fe5e11a3329b3bb93286d4ab26
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/parser@npm:^4.5.0": "@typescript-eslint/type-utils@npm:5.12.0":
version: 4.33.0 version: 5.12.0
resolution: "@typescript-eslint/parser@npm:4.33.0" resolution: "@typescript-eslint/type-utils@npm:5.12.0"
dependencies: dependencies:
"@typescript-eslint/scope-manager": 4.33.0 "@typescript-eslint/utils": 5.12.0
"@typescript-eslint/types": 4.33.0 debug: ^4.3.2
"@typescript-eslint/typescript-estree": 4.33.0 tsutils: ^3.21.0
debug: ^4.3.1
peerDependencies: peerDependencies:
eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 eslint: "*"
peerDependenciesMeta: peerDependenciesMeta:
typescript: typescript:
optional: true optional: true
checksum: 102457eae1acd516211098fea081c8a2ed728522bbda7f5a557b6ef23d88970514f9a0f6285d53fca134d3d4d7d17822b5d5e12438d5918df4d1f89cc9e67d57 checksum: 90390603319441493b62611730db78f8a732e32a5d9097d1e9c6581da6caeb71cc08a3ed6c716f2fc490b153f956c9a2471d9fbe97c22214ca86f58511c7581a
languageName: node
linkType: hard
"@typescript-eslint/scope-manager@npm:4.33.0":
version: 4.33.0
resolution: "@typescript-eslint/scope-manager@npm:4.33.0"
dependencies:
"@typescript-eslint/types": 4.33.0
"@typescript-eslint/visitor-keys": 4.33.0
checksum: 9a25fb7ba7c725ea7227a24d315b0f6aacbad002e2549a049edf723c1d3615c22f5c301f0d7d615b377f2cdf2f3519d97e79af0c459de6ef8d2aaf0906dff13e
languageName: node
linkType: hard
"@typescript-eslint/types@npm:3.10.1":
version: 3.10.1
resolution: "@typescript-eslint/types@npm:3.10.1"
checksum: 3ea820d37c2595d457acd6091ffda8b531e5d916e1cce708336bf958aa8869126f95cca3268a724f453ce13be11c5388a0a4143bf09bca51be1020ec46635d92
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/types@npm:4.33.0": "@typescript-eslint/types@npm:5.12.0":
version: 4.33.0 version: 5.12.0
resolution: "@typescript-eslint/types@npm:4.33.0" resolution: "@typescript-eslint/types@npm:5.12.0"
checksum: 3baae1ca35872421b4eb60f5d3f3f32dc1d513f2ae0a67dee28c7d159fd7a43ed0d11a8a5a0f0c2d38507ffa036fc7c511cb0f18a5e8ac524b3ebde77390ec53 checksum: f5e7f8270cb0f9f18886bf00f8f1fd589b793f4c05dc2de53cc826beb969161e19ffc10f51237402fb9f3d24f5aaf3bb41b1d8da70e115ec3ff11e79b3471988
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/typescript-estree@npm:3.10.1": "@typescript-eslint/typescript-estree@npm:5.12.0":
version: 3.10.1 version: 5.12.0
resolution: "@typescript-eslint/typescript-estree@npm:3.10.1" resolution: "@typescript-eslint/typescript-estree@npm:5.12.0"
dependencies: dependencies:
"@typescript-eslint/types": 3.10.1 "@typescript-eslint/types": 5.12.0
"@typescript-eslint/visitor-keys": 3.10.1 "@typescript-eslint/visitor-keys": 5.12.0
debug: ^4.1.1 debug: ^4.3.2
glob: ^7.1.6 globby: ^11.0.4
is-glob: ^4.0.1 is-glob: ^4.0.3
lodash: ^4.17.15
semver: ^7.3.2
tsutils: ^3.17.1
peerDependenciesMeta:
typescript:
optional: true
checksum: 911680da9d26220944f4f8f26f88349917609844fafcff566147cecae37ff0211d66c626eb62a2b24d17fd50d10715f5b0f32b2e7f5d9a88efc46709266d5053
languageName: node
linkType: hard
"@typescript-eslint/typescript-estree@npm:4.33.0":
version: 4.33.0
resolution: "@typescript-eslint/typescript-estree@npm:4.33.0"
dependencies:
"@typescript-eslint/types": 4.33.0
"@typescript-eslint/visitor-keys": 4.33.0
debug: ^4.3.1
globby: ^11.0.3
is-glob: ^4.0.1
semver: ^7.3.5 semver: ^7.3.5
tsutils: ^3.21.0 tsutils: ^3.21.0
peerDependenciesMeta: peerDependenciesMeta:
typescript: typescript:
optional: true optional: true
checksum: 2566984390c76bd95f43240057215c068c69769e406e27aba41e9f21fd300074d6772e4983fa58fe61e80eb5550af1548d2e31e80550d92ba1d051bb00fe6f5c checksum: 6a8e852c210b20370eb564f3beb245c425e65a4de3e78a1e2f278a241b6acf72ba43b10767df18fc1654b529453529f721fa673569406ace4011712c9c837900
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/visitor-keys@npm:3.10.1": "@typescript-eslint/utils@npm:5.12.0":
version: 3.10.1 version: 5.12.0
resolution: "@typescript-eslint/visitor-keys@npm:3.10.1" resolution: "@typescript-eslint/utils@npm:5.12.0"
dependencies: dependencies:
eslint-visitor-keys: ^1.1.0 "@types/json-schema": ^7.0.9
checksum: 0c4825b9829b1c11258a73aaee70d64834ba6d9b24157e7624e80f27f6537f468861d4dd33ad233c13ad2c6520afb9008c0675da6d792f26e82d75d6bfe9b0c6 "@typescript-eslint/scope-manager": 5.12.0
"@typescript-eslint/types": 5.12.0
"@typescript-eslint/typescript-estree": 5.12.0
eslint-scope: ^5.1.1
eslint-utils: ^3.0.0
peerDependencies:
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
checksum: 34c394db0510be78c5cbb8928c9eb81405a117dd9e5903a149e4f3c20218dcda89a29e5012984d07c8ce9e5c7f5d7c38f5c3061558028f3f518ac98bbeb9a006
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/visitor-keys@npm:4.33.0": "@typescript-eslint/visitor-keys@npm:5.12.0":
version: 4.33.0 version: 5.12.0
resolution: "@typescript-eslint/visitor-keys@npm:4.33.0" resolution: "@typescript-eslint/visitor-keys@npm:5.12.0"
dependencies: dependencies:
"@typescript-eslint/types": 4.33.0 "@typescript-eslint/types": 5.12.0
eslint-visitor-keys: ^2.0.0 eslint-visitor-keys: ^3.0.0
checksum: 59953e474ad4610c1aa23b2b1a964445e2c6201521da6367752f37939d854352bbfced5c04ea539274065e012b1337ba3ffa49c2647a240a4e87155378ba9873 checksum: c3774f542aae801926edf86fe6cab534c4cdac914b035730912443ed53fcc701b0f0e7b1a0d5fc959484637c55f63409fc43df5508c334e202d66d4654484d11
languageName: node languageName: node
linkType: hard linkType: hard
@ -4006,7 +3973,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"debug@npm:4, debug@npm:^4.0.1, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1": "debug@npm:4, debug@npm:^4.0.1, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2":
version: 4.3.3 version: 4.3.3
resolution: "debug@npm:4.3.3" resolution: "debug@npm:4.3.3"
dependencies: dependencies:
@ -4560,21 +4527,6 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"eslint-plugin-jest@npm:^24.1.0":
version: 24.7.0
resolution: "eslint-plugin-jest@npm:24.7.0"
dependencies:
"@typescript-eslint/experimental-utils": ^4.0.1
peerDependencies:
"@typescript-eslint/eslint-plugin": ">= 4"
eslint: ">=5"
peerDependenciesMeta:
"@typescript-eslint/eslint-plugin":
optional: true
checksum: a4056582825ab3359d2e0e3aae50518f6f867d1cfb3240496605247d3ff9c84b4164f1a7e1f7087d5a2eae1343d738ada1ba74c422b13ad20b737601dc47ae08
languageName: node
linkType: hard
"eslint-plugin-jsx-a11y@npm:^6.3.1": "eslint-plugin-jsx-a11y@npm:^6.3.1":
version: 6.5.1 version: 6.5.1
resolution: "eslint-plugin-jsx-a11y@npm:6.5.1" resolution: "eslint-plugin-jsx-a11y@npm:6.5.1"
@ -4630,18 +4582,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"eslint-plugin-testing-library@npm:^3.9.0": "eslint-scope@npm:5.1.1, eslint-scope@npm:^5.1.1":
version: 3.10.2
resolution: "eslint-plugin-testing-library@npm:3.10.2"
dependencies:
"@typescript-eslint/experimental-utils": ^3.10.1
peerDependencies:
eslint: ^5 || ^6 || ^7
checksum: 3859d4a4816b130cfefc3b45bc7d303aff19b8d4e83a5e35ca3d634de9f3c4aa1b4340cb4f41e2d1bfe70b173562b9882c58ac48be4e07ddf6a1f88659e2604d
languageName: node
linkType: hard
"eslint-scope@npm:5.1.1, eslint-scope@npm:^5.0.0, eslint-scope@npm:^5.1.1":
version: 5.1.1 version: 5.1.1
resolution: "eslint-scope@npm:5.1.1" resolution: "eslint-scope@npm:5.1.1"
dependencies: dependencies:
@ -4651,7 +4592,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"eslint-utils@npm:^2.0.0, eslint-utils@npm:^2.1.0": "eslint-utils@npm:^2.1.0":
version: 2.1.0 version: 2.1.0
resolution: "eslint-utils@npm:2.1.0" resolution: "eslint-utils@npm:2.1.0"
dependencies: dependencies:
@ -4685,6 +4626,13 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"eslint-visitor-keys@npm:^3.0.0":
version: 3.3.0
resolution: "eslint-visitor-keys@npm:3.3.0"
checksum: d59e68a7c5a6d0146526b0eec16ce87fbf97fe46b8281e0d41384224375c4e52f5ffb9e16d48f4ea50785cde93f766b0c898e31ab89978d88b0e1720fbfb7808
languageName: node
linkType: hard
"eslint-webpack-plugin@npm:^3.0.1": "eslint-webpack-plugin@npm:^3.0.1":
version: 3.1.1 version: 3.1.1
resolution: "eslint-webpack-plugin@npm:3.1.1" resolution: "eslint-webpack-plugin@npm:3.1.1"
@ -5262,7 +5210,7 @@ fsevents@~2.3.2:
languageName: node languageName: node
linkType: hard linkType: hard
"glob@npm:^7.0.6, glob@npm:^7.1.3, glob@npm:^7.1.4, glob@npm:^7.1.6": "glob@npm:^7.0.6, glob@npm:^7.1.3, glob@npm:^7.1.4":
version: 7.2.0 version: 7.2.0
resolution: "glob@npm:7.2.0" resolution: "glob@npm:7.2.0"
dependencies: dependencies:
@ -5292,7 +5240,7 @@ fsevents@~2.3.2:
languageName: node languageName: node
linkType: hard linkType: hard
"globby@npm:^11.0.1, globby@npm:^11.0.3": "globby@npm:^11.0.1, globby@npm:^11.0.4":
version: 11.1.0 version: 11.1.0
resolution: "globby@npm:11.1.0" resolution: "globby@npm:11.1.0"
dependencies: dependencies:
@ -8037,7 +7985,7 @@ fsevents@~2.3.2:
languageName: node languageName: node
linkType: hard linkType: hard
"regexpp@npm:^3.1.0": "regexpp@npm:^3.1.0, regexpp@npm:^3.2.0":
version: 3.2.0 version: 3.2.0
resolution: "regexpp@npm:3.2.0" resolution: "regexpp@npm:3.2.0"
checksum: a78dc5c7158ad9ddcfe01aa9144f46e192ddbfa7b263895a70a5c6c73edd9ce85faf7c0430e59ac38839e1734e275b9c3de5c57ee3ab6edc0e0b1bdebefccef8 checksum: a78dc5c7158ad9ddcfe01aa9144f46e192ddbfa7b263895a70a5c6c73edd9ce85faf7c0430e59ac38839e1734e275b9c3de5c57ee3ab6edc0e0b1bdebefccef8
@ -9169,7 +9117,7 @@ resolve@^2.0.0-next.3:
languageName: node languageName: node
linkType: hard linkType: hard
"tsutils@npm:^3.17.1, tsutils@npm:^3.21.0": "tsutils@npm:^3.21.0":
version: 3.21.0 version: 3.21.0
resolution: "tsutils@npm:3.21.0" resolution: "tsutils@npm:3.21.0"
dependencies: dependencies:
@ -9680,8 +9628,8 @@ resolve@^2.0.0-next.3:
"@types/react": ^17.0.18 "@types/react": ^17.0.18
"@types/react-dom": ^17.0.9 "@types/react-dom": ^17.0.9
"@types/react-redux": ^7.1.7 "@types/react-redux": ^7.1.7
"@typescript-eslint/eslint-plugin": ^4.5.0 "@typescript-eslint/eslint-plugin": ^5.12.0
"@typescript-eslint/parser": ^4.5.0 "@typescript-eslint/parser": ^5.12.0
babel-eslint: ^10.1.0 babel-eslint: ^10.1.0
babel-loader: 8.1.0 babel-loader: 8.1.0
babel-preset-react-app: 10.0.0 babel-preset-react-app: 10.0.0
@ -9693,11 +9641,9 @@ resolve@^2.0.0-next.3:
eslint-config-react-app: ^6.0.0 eslint-config-react-app: ^6.0.0
eslint-plugin-flowtype: ^5.2.0 eslint-plugin-flowtype: ^5.2.0
eslint-plugin-import: ^2.22.1 eslint-plugin-import: ^2.22.1
eslint-plugin-jest: ^24.1.0
eslint-plugin-jsx-a11y: ^6.3.1 eslint-plugin-jsx-a11y: ^6.3.1
eslint-plugin-react: ^7.21.5 eslint-plugin-react: ^7.21.5
eslint-plugin-react-hooks: ^4.2.0 eslint-plugin-react-hooks: ^4.2.0
eslint-plugin-testing-library: ^3.9.0
eslint-webpack-plugin: ^3.0.1 eslint-webpack-plugin: ^3.0.1
html-webpack-plugin: ^5.3.2 html-webpack-plugin: ^5.3.2
mini-css-extract-plugin: 0.11.3 mini-css-extract-plugin: 0.11.3

@ -33,6 +33,7 @@
- Update to Yarn 3.1.1 and TypeScript ~4.5.5 - Update to Yarn 3.1.1 and TypeScript ~4.5.5
- Also ditched `@yarnpkg/plugin-version` which wasn't even really used in the first place - Also ditched `@yarnpkg/plugin-version` which wasn't even really used in the first place
- Created a `common` module which now holds `fileSystemConfig.ts` and `webviewMessages.ts` - Created a `common` module which now holds `fileSystemConfig.ts` and `webviewMessages.ts`
- Improve webview ESLint setup, namely update `@typescript-eslint/*` and remove unused plugins
## v1.24.1 (2021-12-07) ## v1.24.1 (2021-12-07)

@ -13,8 +13,8 @@
"@types/react": "^17.0.18", "@types/react": "^17.0.18",
"@types/react-dom": "^17.0.9", "@types/react-dom": "^17.0.9",
"@types/react-redux": "^7.1.7", "@types/react-redux": "^7.1.7",
"@typescript-eslint/eslint-plugin": "^4.5.0", "@typescript-eslint/eslint-plugin": "^5.12.0",
"@typescript-eslint/parser": "^4.5.0", "@typescript-eslint/parser": "^5.12.0",
"babel-eslint": "^10.1.0", "babel-eslint": "^10.1.0",
"babel-loader": "8.1.0", "babel-loader": "8.1.0",
"babel-preset-react-app": "10.0.0", "babel-preset-react-app": "10.0.0",
@ -25,11 +25,9 @@
"eslint-config-react-app": "^6.0.0", "eslint-config-react-app": "^6.0.0",
"eslint-plugin-flowtype": "^5.2.0", "eslint-plugin-flowtype": "^5.2.0",
"eslint-plugin-import": "^2.22.1", "eslint-plugin-import": "^2.22.1",
"eslint-plugin-jest": "^24.1.0",
"eslint-plugin-jsx-a11y": "^6.3.1", "eslint-plugin-jsx-a11y": "^6.3.1",
"eslint-plugin-react": "^7.21.5", "eslint-plugin-react": "^7.21.5",
"eslint-plugin-react-hooks": "^4.2.0", "eslint-plugin-react-hooks": "^4.2.0",
"eslint-plugin-testing-library": "^3.9.0",
"eslint-webpack-plugin": "^3.0.1", "eslint-webpack-plugin": "^3.0.1",
"html-webpack-plugin": "^5.3.2", "html-webpack-plugin": "^5.3.2",
"mini-css-extract-plugin": "0.11.3", "mini-css-extract-plugin": "0.11.3",
@ -53,8 +51,7 @@
], ],
"eslintConfig": { "eslintConfig": {
"extends": [ "extends": [
"react-app", "react-app"
"react-app/jest"
], ],
"rules": { "rules": {
"no-sparse-arrays": 0, "no-sparse-arrays": 0,

@ -131,7 +131,6 @@ module.exports = (env, options) => {
}, },
plugins: truthyArray([ plugins: truthyArray([
new HtmlWebpackPlugin({ inject: true, template: 'public/index.html', publicPath }), new HtmlWebpackPlugin({ inject: true, template: 'public/index.html', publicPath }),
options.serve && new webpack.HotModuleReplacementPlugin(),
options.serve && new ReactRefreshWebpackPlugin(), options.serve && new ReactRefreshWebpackPlugin(),
new webpack.DefinePlugin(options.env), new webpack.DefinePlugin(options.env),
new WebpackPlugin(), new WebpackPlugin(),

Loading…
Cancel
Save