commit b4c2c5c: [Test] Migrate ESLint to 9.7.0
moisseev
moiseev at mezonplus.ru
Mon Jul 29 17:59:36 UTC 2024
Author: moisseev
Date: 2024-07-18 17:30:45 +0300
URL: https://github.com/rspamd/rspamd/commit/b4c2c5c07ca44a28a59363f6804bc28378d50c88 (refs/pull/5063/head)
[Test] Migrate ESLint to 9.7.0
---
.eslintrc.json | 77 -------
eslint.config.mjs | 84 ++++++++
interface/js/app/libft.js | 6 +-
interface/js/app/stats.js | 1 +
interface/js/app/symbols.js | 4 +-
package-lock.json | 506 +++++++++++++-------------------------------
package.json | 13 +-
7 files changed, 240 insertions(+), 451 deletions(-)
diff --git a/.eslintrc.json b/.eslintrc.json
deleted file mode 100644
index a6f4e1129..000000000
--- a/.eslintrc.json
+++ /dev/null
@@ -1,77 +0,0 @@
-{
- "env": {
- "browser": true,
- "es6": true
- },
- "extends": [
- "eslint:all",
- "plugin:@stylistic/all-extends"
- ],
- "globals": {
- "define": false
- },
- "parserOptions": {
- "ecmaVersion": 2016
- },
- "plugins": [
- "@stylistic"
- ],
- "rules": {
- "camelcase": "off",
- "capitalized-comments": "off",
- "curly": ["error", "multi-line"],
- "func-names": "off",
- "func-style": ["error", "declaration"],
- "id-length": ["error", { "min": 1 }],
- "line-comment-position": "off",
- "logical-assignment-operators": ["error", "never"],
- "max-params": ["warn", 6],
- "max-statements": ["warn", 55],
- "multiline-comment-style": "off",
- "no-continue": "off",
- "no-inline-comments": "off",
- "no-magic-numbers": "off",
- "no-negated-condition": "off",
- "no-plusplus": "off",
- "no-ternary": "off",
- "object-shorthand": "off",
- "one-var": ["error", { "initialized": "never" }],
- "prefer-named-capture-group": "off",
- "prefer-object-has-own": "off",
- "prefer-spread": "off",
- "prefer-template": "off",
- "require-unicode-regexp": "off",
-
- "@stylistic/array-bracket-newline": ["error", "consistent"],
- "@stylistic/array-element-newline": "off",
- "@stylistic/brace-style": ["error", "1tbs", { "allowSingleLine": true }],
- "@stylistic/comma-dangle": ["error", "only-multiline"],
- "@stylistic/dot-location": ["error", "property"],
- "@stylistic/function-call-argument-newline": "off",
- "@stylistic/max-len": ["error", { "code": 128 }],
- "@stylistic/max-statements-per-line": ["error", { "max": 2 }],
- "@stylistic/multiline-comment-style": "off",
- "@stylistic/multiline-ternary": ["error", "always-multiline"],
- "@stylistic/newline-per-chained-call": ["error", { "ignoreChainWithDepth": 5 }],
- "@stylistic/no-extra-parens": ["error", "functions"],
- "@stylistic/object-property-newline": ["error", { "allowAllPropertiesOnSameLine": true }],
- "@stylistic/padded-blocks": ["error", "never"],
- "@stylistic/quote-props" : ["error", "consistent-as-needed"],
- "@stylistic/quotes": ["error", "double", { "avoidEscape": true }],
- "@stylistic/semi": ["error", "always"],
- "@stylistic/space-before-function-paren": ["error", {
- "anonymous": "always",
- "named": "never"
- }],
-
-
- // Temporarily disabled rules
- "max-lines": "off",
- "max-lines-per-function": "off",
- "no-invalid-this": "off",
- "sort-keys": "off",
-
- "@stylistic/function-paren-newline": "off",
- "@stylistic/indent-binary-ops": "off"
- }
-}
diff --git a/eslint.config.mjs b/eslint.config.mjs
new file mode 100644
index 000000000..2f256afcb
--- /dev/null
+++ b/eslint.config.mjs
@@ -0,0 +1,84 @@
+import globals from "globals";
+import js from "@eslint/js";
+import stylistic from "@stylistic/eslint-plugin";
+
+export default [
+ js.configs.all,
+ stylistic.configs["all-flat"],
+ {ignores: ["interface/js/lib/"]},
+ {
+ languageOptions: {
+ ecmaVersion: 2016,
+ globals: {
+ ...globals.browser,
+ define: false,
+ },
+ sourceType: "script",
+ },
+ plugins: {
+ "@stylistic": stylistic,
+ },
+ rules: {
+ "@stylistic/array-bracket-newline": ["error", "consistent"],
+ "@stylistic/array-element-newline": "off",
+ "@stylistic/brace-style": ["error", "1tbs", {allowSingleLine: true}],
+ "@stylistic/comma-dangle": ["error", "only-multiline"],
+ "@stylistic/dot-location": ["error", "property"],
+ "@stylistic/function-call-argument-newline": "off",
+ "@stylistic/function-paren-newline": "off",
+ "@stylistic/indent-binary-ops": "off",
+ "@stylistic/max-len": ["error", {code: 128}],
+ "@stylistic/max-statements-per-line": ["error", {max: 2}],
+ "@stylistic/multiline-comment-style": "off",
+ "@stylistic/multiline-ternary": ["error", "always-multiline"],
+ "@stylistic/newline-per-chained-call": ["error", {ignoreChainWithDepth: 5}],
+ "@stylistic/no-extra-parens": ["error", "functions"],
+ "@stylistic/object-property-newline": ["error", {allowAllPropertiesOnSameLine: true}],
+ "@stylistic/padded-blocks": ["error", "never"],
+ "@stylistic/quote-props": ["error", "consistent-as-needed"],
+ "@stylistic/quotes": ["error", "double", {avoidEscape: true}],
+ "@stylistic/semi": ["error", "always"],
+ "@stylistic/space-before-function-paren": ["error", {
+ anonymous: "always",
+ named: "never",
+ }],
+
+ "camelcase": "off",
+ "capitalized-comments": "off",
+ "curly": ["error", "multi-line"],
+ "func-names": "off",
+ "func-style": ["error", "declaration"],
+ "id-length": ["error", {min: 1}],
+ "line-comment-position": "off",
+ "logical-assignment-operators": ["error", "never"],
+ "max-lines": "off",
+ "max-lines-per-function": "off",
+ "max-params": ["warn", 6],
+ "max-statements": ["warn", 55],
+ "multiline-comment-style": "off",
+ "no-continue": "off",
+ "no-inline-comments": "off",
+ "no-invalid-this": "off",
+ "no-magic-numbers": "off",
+ "no-negated-condition": "off",
+ "no-plusplus": "off",
+ "no-ternary": "off",
+ "no-unused-vars": ["error", {caughtErrors: "none"}],
+ "object-shorthand": "off",
+ "one-var": ["error", {initialized: "never"}],
+ "prefer-named-capture-group": "off",
+ "prefer-object-has-own": "off",
+ "prefer-spread": "off",
+ "prefer-template": "off",
+ "require-unicode-regexp": "off",
+ "sort-keys": "off",
+ },
+ },
+ {
+ files: ["**/*.mjs"],
+ languageOptions: {ecmaVersion: 2020, sourceType: "module"},
+ rules: {
+ "sort-keys": "error",
+ },
+ },
+];
diff --git a/interface/js/app/libft.js b/interface/js/app/libft.js
index 1e81cfd26..84ee2667e 100644
--- a/interface/js/app/libft.js
+++ b/interface/js/app/libft.js
@@ -249,7 +249,7 @@ define(["jquery", "app/common", "footable"],
});
/* eslint-enable no-underscore-dangle */
- /* eslint-disable consistent-this, no-underscore-dangle, one-var-declaration-per-line */
+ /* eslint-disable consistent-this, no-underscore-dangle */
FooTable.actionFilter = FooTable.Filtering.extend({
construct: function (instance) {
this._super(instance);
@@ -304,6 +304,7 @@ define(["jquery", "app/common", "footable"],
const selected = self.$action.val();
if (selected !== self.def) {
const not = self.$not.is(":checked");
+ // eslint-disable-next-line no-useless-assignment
let query = null;
if (selected === "reject") {
@@ -319,7 +320,7 @@ define(["jquery", "app/common", "footable"],
self.filter();
}
});
- /* eslint-enable consistent-this, no-underscore-dangle, one-var-declaration-per-line */
+ /* eslint-enable consistent-this, no-underscore-dangle */
const columns = (table in columnsCustom)
? columnsDefault.map((column) => $.extend({}, column, columnsCustom[table][column.name]))
@@ -600,6 +601,7 @@ define(["jquery", "app/common", "footable"],
item.id = item["message-id"];
if (table === "history") {
+ // eslint-disable-next-line no-useless-assignment
let rcpt = {};
if (!item.rcpt_mime.length) {
rcpt = format_rcpt(true, false);
diff --git a/interface/js/app/stats.js b/interface/js/app/stats.js
index 04b4a75c5..8ac4eacdd 100644
--- a/interface/js/app/stats.js
+++ b/interface/js/app/stats.js
@@ -35,6 +35,7 @@ define(["jquery", "app/common", "d3pie", "d3"],
const hours = seconds % 31536000 % 2628000 % 86400 / 3600 >> 0;
const minutes = seconds % 31536000 % 2628000 % 86400 % 3600 / 60 >> 0;
/* eslint-enable no-bitwise */
+ // eslint-disable-next-line no-useless-assignment
let out = null;
if (years > 0) {
if (months > 0) {
diff --git a/interface/js/app/symbols.js b/interface/js/app/symbols.js
index a720a696d..3ff5d5a4b 100644
--- a/interface/js/app/symbols.js
+++ b/interface/js/app/symbols.js
@@ -130,7 +130,7 @@ define(["jquery", "app/common", "footable"],
const [{data}] = json;
const items = process_symbols_data(data);
- /* eslint-disable consistent-this, no-underscore-dangle, one-var-declaration-per-line */
+ /* eslint-disable consistent-this, no-underscore-dangle */
FooTable.groupFilter = FooTable.Filtering.extend({
construct: function (instance) {
this._super(instance);
@@ -183,7 +183,7 @@ define(["jquery", "app/common", "footable"],
}
}
});
- /* eslint-enable consistent-this, no-underscore-dangle, one-var-declaration-per-line */
+ /* eslint-enable consistent-this, no-underscore-dangle */
common.tables.symbols = FooTable.init("#symbolsTable", {
breakpoints: common.breakpoints,
diff --git a/package-lock.json b/package-lock.json
index 38ca4188f..67504a812 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -6,7 +6,7 @@
"": {
"devDependencies": {
"@stylistic/eslint-plugin": "*",
- "eslint": "*",
+ "eslint": "^9.7.0",
"postcss-html": "*",
"stylelint": ">=13.6.0",
"stylelint-config-standard": "*"
@@ -258,16 +258,30 @@
"node": "^12.0.0 || ^14.0.0 || >=16.0.0"
}
},
+ "node_modules/@eslint/config-array": {
+ "version": "0.17.0",
+ "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.17.0.tgz",
+ "integrity": "sha512-A68TBu6/1mHHuc5YJL0U0VVeGNiklLAL6rRmhTCP2B5XjWLMnrX+HkO+IAXyHvks5cyyY1jjK5ITPQ1HGS2EVA==",
+ "dev": true,
+ "dependencies": {
+ "@eslint/object-schema": "^2.1.4",
+ "debug": "^4.3.1",
+ "minimatch": "^3.1.2"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ }
+ },
"node_modules/@eslint/eslintrc": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz",
- "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==",
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.1.0.tgz",
+ "integrity": "sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==",
"dev": true,
"dependencies": {
"ajv": "^6.12.4",
"debug": "^4.3.2",
- "espree": "^9.6.0",
- "globals": "^13.19.0",
+ "espree": "^10.0.1",
+ "globals": "^14.0.0",
"ignore": "^5.2.0",
"import-fresh": "^3.2.1",
"js-yaml": "^4.1.0",
@@ -275,107 +289,28 @@
"strip-json-comments": "^3.1.1"
},
"engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/@eslint/eslintrc/node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "dev": true,
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
- "node_modules/@eslint/eslintrc/node_modules/eslint-visitor-keys": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
- "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
- "dev": true,
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/@eslint/eslintrc/node_modules/espree": {
- "version": "9.6.1",
- "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz",
- "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==",
- "dev": true,
- "dependencies": {
- "acorn": "^8.9.0",
- "acorn-jsx": "^5.3.2",
- "eslint-visitor-keys": "^3.4.1"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
"funding": {
"url": "https://opencollective.com/eslint"
}
},
- "node_modules/@eslint/eslintrc/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
"node_modules/@eslint/js": {
- "version": "8.57.0",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz",
- "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==",
- "dev": true,
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- }
- },
- "node_modules/@humanwhocodes/config-array": {
- "version": "0.11.14",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz",
- "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==",
- "deprecated": "Use @eslint/config-array instead",
+ "version": "9.7.0",
+ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.7.0.tgz",
+ "integrity": "sha512-ChuWDQenef8OSFnvuxv0TCVxEwmu3+hPNKvM9B34qpM0rDRbjL8t5QkQeHHeAfsKQjuH9wS82WeCi1J/owatng==",
"dev": true,
- "dependencies": {
- "@humanwhocodes/object-schema": "^2.0.2",
- "debug": "^4.3.1",
- "minimatch": "^3.0.5"
- },
"engines": {
- "node": ">=10.10.0"
- }
- },
- "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "dev": true,
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
}
},
- "node_modules/@humanwhocodes/config-array/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "node_modules/@eslint/object-schema": {
+ "version": "2.1.4",
+ "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.4.tgz",
+ "integrity": "sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==",
"dev": true,
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
"engines": {
- "node": "*"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
}
},
"node_modules/@humanwhocodes/module-importer": {
@@ -391,12 +326,18 @@
"url": "https://github.com/sponsors/nzakas"
}
},
- "node_modules/@humanwhocodes/object-schema": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz",
- "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==",
- "deprecated": "Use @eslint/object-schema instead",
- "dev": true
+ "node_modules/@humanwhocodes/retry": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.0.tgz",
+ "integrity": "sha512-d2CGZR2o7fS6sWB7DG/3a95bGKQyHMACZ5aW8qGkkqQpUoZV6C0X7Pc7l4ZNMZkfNBf4VWNe9E1jRsf0G146Ew==",
+ "dev": true,
+ "engines": {
+ "node": ">=18.18"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/nzakas"
+ }
},
"node_modules/@nodelib/fs.scandir": {
"version": "2.1.5",
@@ -501,6 +442,28 @@
"eslint": "*"
}
},
+ "node_modules/@stylistic/eslint-plugin-plus/node_modules/@typescript-eslint/utils": {
+ "version": "7.16.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.16.1.tgz",
+ "integrity": "sha512-WrFM8nzCowV0he0RlkotGDujx78xudsxnGMBHI88l5J8wEhED6yBwaSLP99ygfrzAjsQvcYQ94quDwI0d7E1fA==",
+ "dev": true,
+ "dependencies": {
+ "@eslint-community/eslint-utils": "^4.4.0",
+ "@typescript-eslint/scope-manager": "7.16.1",
+ "@typescript-eslint/types": "7.16.1",
+ "@typescript-eslint/typescript-estree": "7.16.1"
+ },
+ "engines": {
+ "node": "^18.18.0 || >=20.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependencies": {
+ "eslint": "^8.56.0"
+ }
+ },
"node_modules/@stylistic/eslint-plugin-ts": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/@stylistic/eslint-plugin-ts/-/eslint-plugin-ts-2.3.0.tgz",
@@ -518,6 +481,28 @@
"eslint": ">=8.40.0"
}
},
+ "node_modules/@stylistic/eslint-plugin-ts/node_modules/@typescript-eslint/utils": {
+ "version": "7.16.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.16.1.tgz",
+ "integrity": "sha512-WrFM8nzCowV0he0RlkotGDujx78xudsxnGMBHI88l5J8wEhED6yBwaSLP99ygfrzAjsQvcYQ94quDwI0d7E1fA==",
+ "dev": true,
+ "dependencies": {
+ "@eslint-community/eslint-utils": "^4.4.0",
+ "@typescript-eslint/scope-manager": "7.16.1",
+ "@typescript-eslint/types": "7.16.1",
+ "@typescript-eslint/typescript-estree": "7.16.1"
+ },
+ "engines": {
+ "node": "^18.18.0 || >=20.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependencies": {
+ "eslint": "^8.56.0"
+ }
+ },
"node_modules/@types/eslint": {
"version": "8.56.10",
"resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.10.tgz",
@@ -598,26 +583,28 @@
}
}
},
- "node_modules/@typescript-eslint/utils": {
- "version": "7.16.1",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.16.1.tgz",
- "integrity": "sha512-WrFM8nzCowV0he0RlkotGDujx78xudsxnGMBHI88l5J8wEhED6yBwaSLP99ygfrzAjsQvcYQ94quDwI0d7E1fA==",
+ "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
"dev": true,
"dependencies": {
- "@eslint-community/eslint-utils": "^4.4.0",
- "@typescript-eslint/scope-manager": "7.16.1",
- "@typescript-eslint/types": "7.16.1",
- "@typescript-eslint/typescript-estree": "7.16.1"
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": {
+ "version": "9.0.5",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
+ "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
+ "dev": true,
+ "dependencies": {
+ "brace-expansion": "^2.0.1"
},
"engines": {
- "node": "^18.18.0 || >=20.0.0"
+ "node": ">=16 || 14 >=14.17"
},
"funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- },
- "peerDependencies": {
- "eslint": "^8.56.0"
+ "url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/@typescript-eslint/visitor-keys": {
@@ -649,12 +636,6 @@
"url": "https://opencollective.com/eslint"
}
},
- "node_modules/@ungap/structured-clone": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz",
- "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==",
- "dev": true
- },
"node_modules/acorn": {
"version": "8.12.1",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz",
@@ -747,12 +728,13 @@
"dev": true
},
"node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
"dev": true,
"dependencies": {
- "balanced-match": "^1.0.0"
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
}
},
"node_modules/braces": {
@@ -931,18 +913,6 @@
"node": ">=8"
}
},
- "node_modules/doctrine": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
- "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
- "dev": true,
- "dependencies": {
- "esutils": "^2.0.2"
- },
- "engines": {
- "node": ">=6.0.0"
- }
- },
"node_modules/dom-serializer": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz",
@@ -1047,41 +1017,37 @@
}
},
"node_modules/eslint": {
- "version": "8.57.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz",
- "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==",
+ "version": "9.7.0",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.7.0.tgz",
+ "integrity": "sha512-FzJ9D/0nGiCGBf8UXO/IGLTgLVzIxze1zpfA8Ton2mjLovXdAPlYDv+MQDcqj3TmrhAGYfOpz9RfR+ent0AgAw==",
"dev": true,
"dependencies": {
"@eslint-community/eslint-utils": "^4.2.0",
- "@eslint-community/regexpp": "^4.6.1",
- "@eslint/eslintrc": "^2.1.4",
- "@eslint/js": "8.57.0",
- "@humanwhocodes/config-array": "^0.11.14",
+ "@eslint-community/regexpp": "^4.11.0",
+ "@eslint/config-array": "^0.17.0",
+ "@eslint/eslintrc": "^3.1.0",
+ "@eslint/js": "9.7.0",
"@humanwhocodes/module-importer": "^1.0.1",
+ "@humanwhocodes/retry": "^0.3.0",
"@nodelib/fs.walk": "^1.2.8",
- "@ungap/structured-clone": "^1.2.0",
"ajv": "^6.12.4",
"chalk": "^4.0.0",
"cross-spawn": "^7.0.2",
"debug": "^4.3.2",
- "doctrine": "^3.0.0",
"escape-string-regexp": "^4.0.0",
- "eslint-scope": "^7.2.2",
- "eslint-visitor-keys": "^3.4.3",
- "espree": "^9.6.1",
- "esquery": "^1.4.2",
+ "eslint-scope": "^8.0.2",
+ "eslint-visitor-keys": "^4.0.0",
+ "espree": "^10.1.0",
+ "esquery": "^1.5.0",
"esutils": "^2.0.2",
"fast-deep-equal": "^3.1.3",
- "file-entry-cache": "^6.0.1",
+ "file-entry-cache": "^8.0.0",
"find-up": "^5.0.0",
"glob-parent": "^6.0.2",
- "globals": "^13.19.0",
- "graphemer": "^1.4.0",
"ignore": "^5.2.0",
"imurmurhash": "^0.1.4",
"is-glob": "^4.0.0",
"is-path-inside": "^3.0.3",
- "js-yaml": "^4.1.0",
"json-stable-stringify-without-jsonify": "^1.0.1",
"levn": "^0.4.1",
"lodash.merge": "^4.6.2",
@@ -1095,23 +1061,23 @@
"eslint": "bin/eslint.js"
},
"engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
"funding": {
- "url": "https://opencollective.com/eslint"
+ "url": "https://eslint.org/donate"
}
},
"node_modules/eslint-scope": {
- "version": "7.2.2",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz",
- "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==",
+ "version": "8.0.2",
+ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.0.2.tgz",
+ "integrity": "sha512-6E4xmrTw5wtxnLA5wYL3WDfhZ/1bUBGOXV0zQvVRDOtrR8D0p6W7fs3JweNYhwRYeGvd/1CKX2se0/2s7Q/nJA==",
"dev": true,
"dependencies": {
"esrecurse": "^4.3.0",
"estraverse": "^5.2.0"
},
"engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
"funding": {
"url": "https://opencollective.com/eslint"
@@ -1129,57 +1095,6 @@
"url": "https://opencollective.com/eslint"
}
},
- "node_modules/eslint/node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "dev": true,
- "dependencies": {
- "balanced-match": "^1.0.0",
*** OUTPUT TRUNCATED, 345 LINES SKIPPED ***
More information about the Commits
mailing list