1
0
mirror of https://github.com/bitwarden/browser synced 2026-01-04 01:23:57 +00:00

[PM-17496] Migrate eslint to flat config (#12806)

The legacy config is deprecated and will be removed in eslint 10. The flat config also allows us to write js functions which will assist in handling limitations with multiple identical rules.
This commit is contained in:
Oscar Hinton
2025-01-28 16:40:52 +01:00
committed by GitHub
parent 08c42a8a27
commit 70ea75d8f7
29 changed files with 469 additions and 447 deletions

68
package-lock.json generated
View File

@@ -77,10 +77,7 @@
},
"devDependencies": {
"@angular-devkit/build-angular": "18.2.12",
"@angular-eslint/eslint-plugin": "18.4.3",
"@angular-eslint/eslint-plugin-template": "18.4.3",
"@angular-eslint/schematics": "18.4.3",
"@angular-eslint/template-parser": "18.4.3",
"@angular/cli": "18.2.12",
"@angular/compiler-cli": "18.2.13",
"@babel/core": "7.24.9",
@@ -121,10 +118,9 @@
"@types/proper-lockfile": "4.1.4",
"@types/retry": "0.12.5",
"@types/zxcvbn": "4.4.5",
"@typescript-eslint/eslint-plugin": "8.20.0",
"@typescript-eslint/parser": "8.20.0",
"@webcomponents/custom-elements": "1.6.0",
"@yao-pkg/pkg": "5.16.1",
"angular-eslint": "18.4.3",
"autoprefixer": "10.4.20",
"babel-loader": "9.2.1",
"base64-loader": "1.0.0",
@@ -176,6 +172,7 @@
"tsconfig-paths-webpack-plugin": "4.2.0",
"type-fest": "2.19.0",
"typescript": "5.4.2",
"typescript-eslint": "8.20.0",
"typescript-strict-plugin": "^2.4.4",
"url": "0.11.4",
"util": "0.12.5",
@@ -1240,6 +1237,20 @@
"yarn": ">= 1.13.0"
}
},
"node_modules/@angular-eslint/builder": {
"version": "18.4.3",
"resolved": "https://registry.npmjs.org/@angular-eslint/builder/-/builder-18.4.3.tgz",
"integrity": "sha512-NzmrXlr7GFE+cjwipY/CxBscZXNqnuK0us1mO6Z2T6MeH6m+rRcdlY/rZyKoRniyNNvuzl6vpEsfMIMmnfebrA==",
"dev": true,
"dependencies": {
"@angular-devkit/architect": ">= 0.1800.0 < 0.1900.0",
"@angular-devkit/core": ">= 18.0.0 < 19.0.0"
},
"peerDependencies": {
"eslint": "^8.57.0 || ^9.0.0",
"typescript": "*"
}
},
"node_modules/@angular-eslint/bundled-angular-compiler": {
"version": "18.4.3",
"resolved": "https://registry.npmjs.org/@angular-eslint/bundled-angular-compiler/-/bundled-angular-compiler-18.4.3.tgz",
@@ -10080,7 +10091,6 @@
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.20.0.tgz",
"integrity": "sha512-naduuphVw5StFfqp4Gq4WhIBE2gN1GEmMUExpJYknZJdRnc+2gDzB8Z3+5+/Kv33hPQRDGzQO/0opHE72lZZ6A==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/regexpp": "^4.10.0",
"@typescript-eslint/scope-manager": "8.20.0",
@@ -10259,7 +10269,6 @@
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.20.0.tgz",
"integrity": "sha512-gKXG7A5HMyjDIedBi6bUrDcun8GIjnI8qOwVLiY3rx6T/sHP/19XLJOnIq/FgQvWLHja5JN/LSE7eklNBr612g==",
"dev": true,
"license": "MIT",
"dependencies": {
"@typescript-eslint/scope-manager": "8.20.0",
"@typescript-eslint/types": "8.20.0",
@@ -10302,7 +10311,6 @@
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.20.0.tgz",
"integrity": "sha512-bPC+j71GGvA7rVNAHAtOjbVXbLN5PkwqMvy1cwGeaxUoRQXVuKCebRoLzm+IPW/NtFFpstn1ummSIasD5t60GA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@typescript-eslint/typescript-estree": "8.20.0",
"@typescript-eslint/utils": "8.20.0",
@@ -11106,6 +11114,28 @@
"ajv": "^8.8.2"
}
},
"node_modules/angular-eslint": {
"version": "18.4.3",
"resolved": "https://registry.npmjs.org/angular-eslint/-/angular-eslint-18.4.3.tgz",
"integrity": "sha512-0ZjLzzADGRLUhZC8ZpwSo6CE/m6QhQB/oljMJ0mEfP+lB1sy1v8PBKNsJboIcfEEgGW669Z/efVQ3df88yJLYg==",
"dev": true,
"dependencies": {
"@angular-devkit/core": ">= 18.0.0 < 19.0.0",
"@angular-devkit/schematics": ">= 18.0.0 < 19.0.0",
"@angular-eslint/builder": "18.4.3",
"@angular-eslint/eslint-plugin": "18.4.3",
"@angular-eslint/eslint-plugin-template": "18.4.3",
"@angular-eslint/schematics": "18.4.3",
"@angular-eslint/template-parser": "18.4.3",
"@typescript-eslint/types": "^8.0.0",
"@typescript-eslint/utils": "^8.0.0"
},
"peerDependencies": {
"eslint": "^8.57.0 || ^9.0.0",
"typescript": "*",
"typescript-eslint": "^8.0.0"
}
},
"node_modules/ansi-colors": {
"version": "4.1.3",
"resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz",
@@ -31151,6 +31181,28 @@
"node": ">=14.17"
}
},
"node_modules/typescript-eslint": {
"version": "8.20.0",
"resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.20.0.tgz",
"integrity": "sha512-Kxz2QRFsgbWj6Xcftlw3Dd154b3cEPFqQC+qMZrMypSijPd4UanKKvoKDrJ4o8AIfZFKAF+7sMaEIR8mTElozA==",
"dev": true,
"dependencies": {
"@typescript-eslint/eslint-plugin": "8.20.0",
"@typescript-eslint/parser": "8.20.0",
"@typescript-eslint/utils": "8.20.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
"eslint": "^8.57.0 || ^9.0.0",
"typescript": ">=4.8.4 <5.8.0"
}
},
"node_modules/typescript-strict-plugin": {
"version": "2.4.4",
"resolved": "https://registry.npmjs.org/typescript-strict-plugin/-/typescript-strict-plugin-2.4.4.tgz",