From d5c033841c118f5851b6647cae0de2d8299e7829 Mon Sep 17 00:00:00 2001 From: Nell Hardcastle Date: Tue, 22 Oct 2024 12:44:42 -0700 Subject: [PATCH 01/23] lint: Upgrade to eslint 9 and refactor to enable simpler linting config --- .eslintignore | 10 - .eslintrc.json | 77 -- .pnp.cjs | 1799 +++++++++++++++++++++++++++------------------ eslint.config.mjs | 53 ++ package.json | 15 +- tsconfig.json | 4 +- yarn.lock | 1525 ++++++++++++++++++++++---------------- 7 files changed, 2038 insertions(+), 1445 deletions(-) delete mode 100644 .eslintignore delete mode 100644 .eslintrc.json create mode 100644 eslint.config.mjs diff --git a/.eslintignore b/.eslintignore deleted file mode 100644 index 01ef17448f..0000000000 --- a/.eslintignore +++ /dev/null @@ -1,10 +0,0 @@ -/packages/*/webpack*.js -/packages/*/node_modules -/packages/*/coverage -/packages/*/dist -__mocks__ -*.spec.js -*.spec.jsx -*.spec.ts -*.spec.tsx -jestsetup.js diff --git a/.eslintrc.json b/.eslintrc.json deleted file mode 100644 index 0802ade9d5..0000000000 --- a/.eslintrc.json +++ /dev/null @@ -1,77 +0,0 @@ -{ - "env": { - "browser": true, - "es6": true, - "node": true, - "jest": true - }, - "extends": [ - "eslint:recommended", - "plugin:import/warnings", - "plugin:import/errors", - "plugin:import/typescript", - "plugin:@typescript-eslint/recommended", - "plugin:@typescript-eslint/recommended-requiring-type-checking", - "plugin:react/recommended", - "prettier" - ], - "parser": "@typescript-eslint/parser", - "parserOptions": { - "sourceType": "module", - "allowImportExportEverywhere": false, - "codeFrame": false, - "project": [ - "./packages/openneuro-app/tsconfig.json", - "./packages/openneuro-cli/tsconfig.json", - "./packages/openneuro-client/tsconfig.json", - "./packages/openneuro-indexer/tsconfig.json", - "./packages/openneuro-server/tsconfig.json" - ] - }, - "rules": { - "linebreak-style": ["error", "unix"], - "quotes": ["error", "single", { "avoidEscape": true }], - "semi": ["error", "never"], - "no-prototype-builtins": 0, - "@typescript-eslint/explicit-function-return-type": "off", - "@typescript-eslint/no-unsafe-member-access": "off", - "@typescript-eslint/no-unsafe-call": "off", - "@typescript-eslint/no-unsafe-assignment": "off", - "prettier/prettier": "error", - "react-hooks/rules-of-hooks": "error", - "react-hooks/exhaustive-deps": "warn" - }, - "plugins": [ - "import", - "prettier", - "react", - "react-hooks", - "@typescript-eslint" - ], - "settings": { - "react": { - "version": "detect" - } - }, - "overrides": [ - { - // enable the rule specifically for TypeScript files - "files": ["*.ts", "*.tsx"], - "rules": { - "@typescript-eslint/explicit-function-return-type": ["error"], - "react/prop-types": "off" - } - }, - { - "files": ["*.js", "*.jsx"], - "rules": { - "@typescript-eslint/explicit-module-boundary-types": "off", - "@typescript-eslint/restrict-template-expressions": "off", - "@typescript-eslint/no-unsafe-return": "off", - "@typescript-eslint/no-floating-promises": "off", - "@typescript-eslint/restrict-plus-operands": "off", - "@typescript-eslint/ban-ts-comment": "off" - } - } - ] -} diff --git a/.pnp.cjs b/.pnp.cjs index 266cf30223..0ee70d381f 100644 --- a/.pnp.cjs +++ b/.pnp.cjs @@ -63,22 +63,18 @@ const RAW_RUNTIME_STATE = "packageLocation": "./",\ "packageDependencies": [\ ["@elastic/apm-rum-react", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:2.0.2"],\ + ["@eslint/js", "npm:9.13.0"],\ ["@sentry/cli", "npm:1.37.4"],\ ["@testing-library/jest-dom", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:6.1.3"],\ ["@types/ioredis-mock", "npm:8.2.2"],\ ["@types/jsdom", "npm:16.2.13"],\ ["@types/testing-library__jest-dom", "npm:5.14.5"],\ - ["@typescript-eslint/eslint-plugin", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:4.31.2"],\ - ["@typescript-eslint/parser", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:4.31.2"],\ ["@vitest/coverage-v8", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:1.5.0"],\ ["@yarnpkg/pnpify", "npm:3.1.1-rc.8"],\ + ["babel-plugin-react-compiler", "npm:19.0.0-beta-8a03594-20241020"],\ ["codecov", "npm:3.8.3"],\ - ["eslint", "npm:7.23.0"],\ - ["eslint-config-prettier", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:8.3.0"],\ - ["eslint-plugin-import", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:2.24.2"],\ - ["eslint-plugin-prettier", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:3.4.1"],\ - ["eslint-plugin-react", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:7.26.0"],\ - ["eslint-plugin-react-hooks", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:4.2.0"],\ + ["eslint", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:9.13.0"],\ + ["eslint-plugin-react-compiler", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:19.0.0-beta-8a03594-20241020"],\ ["graphql", "npm:16.8.1"],\ ["history", "npm:5.2.0"],\ ["husky", "npm:5.1.1"],\ @@ -94,6 +90,7 @@ const RAW_RUNTIME_STATE = ["sass", "npm:1.56.1"],\ ["tsc-watch", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:6.0.4"],\ ["typescript", "patch:typescript@npm%3A5.1.6#optional!builtin::version=5.1.6&hash=5da071"],\ + ["typescript-eslint", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:8.11.0"],\ ["vite", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:5.4.8"],\ ["vitest", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:1.5.0"],\ ["vitest-fetch-mock", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:0.2.2"]\ @@ -2454,14 +2451,6 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@babel/code-frame", [\ - ["npm:7.12.11", {\ - "packageLocation": "./.yarn/cache/@babel-code-frame-npm-7.12.11-1a9a1b277f-d243f0b1e4.zip/node_modules/@babel/code-frame/",\ - "packageDependencies": [\ - ["@babel/code-frame", "npm:7.12.11"],\ - ["@babel/highlight", "npm:7.14.5"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:7.14.5", {\ "packageLocation": "./.yarn/cache/@babel-code-frame-npm-7.14.5-4dc9115988-0adbe4f8d9.zip/node_modules/@babel/code-frame/",\ "packageDependencies": [\ @@ -2486,6 +2475,15 @@ const RAW_RUNTIME_STATE = ["chalk", "npm:2.4.2"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-code-frame-npm-7.25.9-62e4a750ae-96d69a570d.zip/node_modules/@babel/code-frame/",\ + "packageDependencies": [\ + ["@babel/code-frame", "npm:7.25.9"],\ + ["@babel/highlight", "npm:7.25.9"],\ + ["picocolors", "npm:1.0.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/compat-data", [\ @@ -2495,6 +2493,13 @@ const RAW_RUNTIME_STATE = ["@babel/compat-data", "npm:7.22.9"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-compat-data-npm-7.25.9-9ac02677f7-76d06c56e1.zip/node_modules/@babel/compat-data/",\ + "packageDependencies": [\ + ["@babel/compat-data", "npm:7.25.9"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/core", [\ @@ -2519,9 +2524,43 @@ const RAW_RUNTIME_STATE = ["semver", "npm:6.3.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-core-npm-7.25.9-4ae3bff7f3-92cc69d9d5.zip/node_modules/@babel/core/",\ + "packageDependencies": [\ + ["@babel/core", "npm:7.25.9"],\ + ["@ampproject/remapping", "npm:2.2.1"],\ + ["@babel/code-frame", "npm:7.25.9"],\ + ["@babel/generator", "npm:7.25.9"],\ + ["@babel/helper-compilation-targets", "npm:7.25.9"],\ + ["@babel/helper-module-transforms", "virtual:4ae3bff7f3fe54e79dcd600772e8ae72ae69669251eaf428984677f9d5baf017bb097b4ba92f187f0d971ca247276d02916002a3750ae97183c0cefbc0fc0097#npm:7.25.9"],\ + ["@babel/helpers", "npm:7.25.9"],\ + ["@babel/parser", "npm:7.25.9"],\ + ["@babel/template", "npm:7.25.9"],\ + ["@babel/traverse", "npm:7.25.9"],\ + ["@babel/types", "npm:7.25.9"],\ + ["convert-source-map", "npm:2.0.0"],\ + ["debug", "virtual:428f325a939c2653ad822eb3d75efb02ac311523dd0d4f9645afc39ea00bd86eceac35a9d59c9b6977d76b670a4ef0ae057ea572338a44729aa592711a8c05a3#npm:4.3.2"],\ + ["gensync", "npm:1.0.0-beta.2"],\ + ["json5", "npm:2.2.3"],\ + ["semver", "npm:6.3.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/generator", [\ + ["npm:7.2.0", {\ + "packageLocation": "./.yarn/cache/@babel-generator-npm-7.2.0-1a7cb0c007-61520c478f.zip/node_modules/@babel/generator/",\ + "packageDependencies": [\ + ["@babel/generator", "npm:7.2.0"],\ + ["@babel/types", "npm:7.25.9"],\ + ["jsesc", "npm:2.5.2"],\ + ["lodash", "npm:4.17.21"],\ + ["source-map", "npm:0.5.7"],\ + ["trim-right", "npm:1.0.1"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:7.22.15", {\ "packageLocation": "./.yarn/cache/@babel-generator-npm-7.22.15-6a5f0ff835-edf46f581c.zip/node_modules/@babel/generator/",\ "packageDependencies": [\ @@ -2532,6 +2571,27 @@ const RAW_RUNTIME_STATE = ["jsesc", "npm:2.5.2"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-generator-npm-7.25.9-7835310490-eb36706c62.zip/node_modules/@babel/generator/",\ + "packageDependencies": [\ + ["@babel/generator", "npm:7.25.9"],\ + ["@babel/types", "npm:7.25.9"],\ + ["@jridgewell/gen-mapping", "npm:0.3.5"],\ + ["@jridgewell/trace-mapping", "npm:0.3.25"],\ + ["jsesc", "npm:3.0.2"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@babel/helper-annotate-as-pure", [\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-helper-annotate-as-pure-npm-7.25.9-a0f89e14a0-41edda10df.zip/node_modules/@babel/helper-annotate-as-pure/",\ + "packageDependencies": [\ + ["@babel/helper-annotate-as-pure", "npm:7.25.9"],\ + ["@babel/types", "npm:7.25.9"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/helper-compilation-targets", [\ @@ -2546,6 +2606,47 @@ const RAW_RUNTIME_STATE = ["semver", "npm:6.3.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-helper-compilation-targets-npm-7.25.9-1e2a209538-8053fbfc21.zip/node_modules/@babel/helper-compilation-targets/",\ + "packageDependencies": [\ + ["@babel/helper-compilation-targets", "npm:7.25.9"],\ + ["@babel/compat-data", "npm:7.25.9"],\ + ["@babel/helper-validator-option", "npm:7.25.9"],\ + ["browserslist", "npm:4.24.2"],\ + ["lru-cache", "npm:5.1.1"],\ + ["semver", "npm:6.3.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@babel/helper-create-class-features-plugin", [\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-helper-create-class-features-plugin-npm-7.25.9-1efda825e9-d1d47a7b5f.zip/node_modules/@babel/helper-create-class-features-plugin/",\ + "packageDependencies": [\ + ["@babel/helper-create-class-features-plugin", "npm:7.25.9"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:65b9f6059839c7a606e818a69d11c43a76025b75577762a88ce835eaf43c053f0592ebb5a42f640545c297e8a54034d7b72c92856ca2c4598128bf2f47485e04#npm:7.25.9", {\ + "packageLocation": "./.yarn/__virtual__/@babel-helper-create-class-features-plugin-virtual-0e2312a934/0/cache/@babel-helper-create-class-features-plugin-npm-7.25.9-1efda825e9-d1d47a7b5f.zip/node_modules/@babel/helper-create-class-features-plugin/",\ + "packageDependencies": [\ + ["@babel/helper-create-class-features-plugin", "virtual:65b9f6059839c7a606e818a69d11c43a76025b75577762a88ce835eaf43c053f0592ebb5a42f640545c297e8a54034d7b72c92856ca2c4598128bf2f47485e04#npm:7.25.9"],\ + ["@babel/core", "npm:7.25.9"],\ + ["@babel/helper-annotate-as-pure", "npm:7.25.9"],\ + ["@babel/helper-member-expression-to-functions", "npm:7.25.9"],\ + ["@babel/helper-optimise-call-expression", "npm:7.25.9"],\ + ["@babel/helper-replace-supers", "virtual:0e2312a934a3bfdb7efc0587fca30feb0d5452b5d86022aa4c105ff49ec3f96f7f57fd1ce9a212c9db2de21333139827882f000491ad02b73dd7dfa2bfbb23bd#npm:7.25.9"],\ + ["@babel/helper-skip-transparent-expression-wrappers", "npm:7.25.9"],\ + ["@babel/traverse", "npm:7.25.9"],\ + ["@types/babel__core", null],\ + ["semver", "npm:6.3.1"]\ + ],\ + "packagePeers": [\ + "@babel/core",\ + "@types/babel__core"\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/helper-environment-visitor", [\ @@ -2578,6 +2679,17 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["@babel/helper-member-expression-to-functions", [\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-helper-member-expression-to-functions-npm-7.25.9-761e6fec27-ef8cc1c1e6.zip/node_modules/@babel/helper-member-expression-to-functions/",\ + "packageDependencies": [\ + ["@babel/helper-member-expression-to-functions", "npm:7.25.9"],\ + ["@babel/traverse", "npm:7.25.9"],\ + ["@babel/types", "npm:7.25.9"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@babel/helper-module-imports", [\ ["npm:7.22.15", {\ "packageLocation": "./.yarn/cache/@babel-helper-module-imports-npm-7.22.15-687e77ee50-5ecf9345a7.zip/node_modules/@babel/helper-module-imports/",\ @@ -2594,6 +2706,15 @@ const RAW_RUNTIME_STATE = ["@babel/types", "npm:7.22.5"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-helper-module-imports-npm-7.25.9-b86e31bde9-e090be5dee.zip/node_modules/@babel/helper-module-imports/",\ + "packageDependencies": [\ + ["@babel/helper-module-imports", "npm:7.25.9"],\ + ["@babel/traverse", "npm:7.25.9"],\ + ["@babel/types", "npm:7.25.9"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/helper-module-transforms", [\ @@ -2604,6 +2725,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-helper-module-transforms-npm-7.25.9-3d149e5319-6a9dc7da67.zip/node_modules/@babel/helper-module-transforms/",\ + "packageDependencies": [\ + ["@babel/helper-module-transforms", "npm:7.25.9"]\ + ],\ + "linkType": "SOFT"\ + }],\ ["virtual:49eea71b21910499a7dc6b114e72b48ef93f337ba521ea76189be3b60a5f6881e39f6cfe850d5b4414dc93b0c2e3780ea96793ec78a2f6618c1e56ab4ee81682#npm:7.22.17", {\ "packageLocation": "./.yarn/__virtual__/@babel-helper-module-transforms-virtual-afafee6fac/0/cache/@babel-helper-module-transforms-npm-7.22.17-a042a74b2f-6712af4d97.zip/node_modules/@babel/helper-module-transforms/",\ "packageDependencies": [\ @@ -2621,6 +2749,33 @@ const RAW_RUNTIME_STATE = "@types/babel__core"\ ],\ "linkType": "HARD"\ + }],\ + ["virtual:4ae3bff7f3fe54e79dcd600772e8ae72ae69669251eaf428984677f9d5baf017bb097b4ba92f187f0d971ca247276d02916002a3750ae97183c0cefbc0fc0097#npm:7.25.9", {\ + "packageLocation": "./.yarn/__virtual__/@babel-helper-module-transforms-virtual-3f04c28a51/0/cache/@babel-helper-module-transforms-npm-7.25.9-3d149e5319-6a9dc7da67.zip/node_modules/@babel/helper-module-transforms/",\ + "packageDependencies": [\ + ["@babel/helper-module-transforms", "virtual:4ae3bff7f3fe54e79dcd600772e8ae72ae69669251eaf428984677f9d5baf017bb097b4ba92f187f0d971ca247276d02916002a3750ae97183c0cefbc0fc0097#npm:7.25.9"],\ + ["@babel/core", "npm:7.25.9"],\ + ["@babel/helper-module-imports", "npm:7.25.9"],\ + ["@babel/helper-simple-access", "npm:7.25.9"],\ + ["@babel/helper-validator-identifier", "npm:7.25.9"],\ + ["@babel/traverse", "npm:7.25.9"],\ + ["@types/babel__core", null]\ + ],\ + "packagePeers": [\ + "@babel/core",\ + "@types/babel__core"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@babel/helper-optimise-call-expression", [\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-helper-optimise-call-expression-npm-7.25.9-d8006fbada-f09d0ad60c.zip/node_modules/@babel/helper-optimise-call-expression/",\ + "packageDependencies": [\ + ["@babel/helper-optimise-call-expression", "npm:7.25.9"],\ + ["@babel/types", "npm:7.25.9"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/helper-plugin-utils", [\ @@ -2630,6 +2785,38 @@ const RAW_RUNTIME_STATE = ["@babel/helper-plugin-utils", "npm:7.22.5"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-helper-plugin-utils-npm-7.25.9-462b7ade58-e347d87728.zip/node_modules/@babel/helper-plugin-utils/",\ + "packageDependencies": [\ + ["@babel/helper-plugin-utils", "npm:7.25.9"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@babel/helper-replace-supers", [\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-helper-replace-supers-npm-7.25.9-664068b76b-8ebf787016.zip/node_modules/@babel/helper-replace-supers/",\ + "packageDependencies": [\ + ["@babel/helper-replace-supers", "npm:7.25.9"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:0e2312a934a3bfdb7efc0587fca30feb0d5452b5d86022aa4c105ff49ec3f96f7f57fd1ce9a212c9db2de21333139827882f000491ad02b73dd7dfa2bfbb23bd#npm:7.25.9", {\ + "packageLocation": "./.yarn/__virtual__/@babel-helper-replace-supers-virtual-48d2417a21/0/cache/@babel-helper-replace-supers-npm-7.25.9-664068b76b-8ebf787016.zip/node_modules/@babel/helper-replace-supers/",\ + "packageDependencies": [\ + ["@babel/helper-replace-supers", "virtual:0e2312a934a3bfdb7efc0587fca30feb0d5452b5d86022aa4c105ff49ec3f96f7f57fd1ce9a212c9db2de21333139827882f000491ad02b73dd7dfa2bfbb23bd#npm:7.25.9"],\ + ["@babel/core", "npm:7.25.9"],\ + ["@babel/helper-member-expression-to-functions", "npm:7.25.9"],\ + ["@babel/helper-optimise-call-expression", "npm:7.25.9"],\ + ["@babel/traverse", "npm:7.25.9"],\ + ["@types/babel__core", null]\ + ],\ + "packagePeers": [\ + "@babel/core",\ + "@types/babel__core"\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/helper-simple-access", [\ @@ -2640,6 +2827,26 @@ const RAW_RUNTIME_STATE = ["@babel/types", "npm:7.22.5"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-helper-simple-access-npm-7.25.9-477a4a7937-a16a6cfa5e.zip/node_modules/@babel/helper-simple-access/",\ + "packageDependencies": [\ + ["@babel/helper-simple-access", "npm:7.25.9"],\ + ["@babel/traverse", "npm:7.25.9"],\ + ["@babel/types", "npm:7.25.9"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@babel/helper-skip-transparent-expression-wrappers", [\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-helper-skip-transparent-expression-wrappers-npm-7.25.9-215072fae0-fdbb524893.zip/node_modules/@babel/helper-skip-transparent-expression-wrappers/",\ + "packageDependencies": [\ + ["@babel/helper-skip-transparent-expression-wrappers", "npm:7.25.9"],\ + ["@babel/traverse", "npm:7.25.9"],\ + ["@babel/types", "npm:7.25.9"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/helper-split-export-declaration", [\ @@ -2666,6 +2873,13 @@ const RAW_RUNTIME_STATE = ["@babel/helper-string-parser", "npm:7.24.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-helper-string-parser-npm-7.25.9-eade578078-c28656c52b.zip/node_modules/@babel/helper-string-parser/",\ + "packageDependencies": [\ + ["@babel/helper-string-parser", "npm:7.25.9"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/helper-validator-identifier", [\ @@ -2703,6 +2917,13 @@ const RAW_RUNTIME_STATE = ["@babel/helper-validator-identifier", "npm:7.22.5"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-helper-validator-identifier-npm-7.25.9-2634b947a4-3f9b649be0.zip/node_modules/@babel/helper-validator-identifier/",\ + "packageDependencies": [\ + ["@babel/helper-validator-identifier", "npm:7.25.9"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/helper-validator-option", [\ @@ -2712,6 +2933,13 @@ const RAW_RUNTIME_STATE = ["@babel/helper-validator-option", "npm:7.22.15"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-helper-validator-option-npm-7.25.9-6450027d5d-9491b27559.zip/node_modules/@babel/helper-validator-option/",\ + "packageDependencies": [\ + ["@babel/helper-validator-option", "npm:7.25.9"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/helpers", [\ @@ -2724,6 +2952,15 @@ const RAW_RUNTIME_STATE = ["@babel/types", "npm:7.22.17"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-helpers-npm-7.25.9-554373ccc6-83c0df8f45.zip/node_modules/@babel/helpers/",\ + "packageDependencies": [\ + ["@babel/helpers", "npm:7.25.9"],\ + ["@babel/template", "npm:7.25.9"],\ + ["@babel/types", "npm:7.25.9"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/highlight", [\ @@ -2756,6 +2993,17 @@ const RAW_RUNTIME_STATE = ["js-tokens", "npm:4.0.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-highlight-npm-7.25.9-db4981b0e2-0d165283dd.zip/node_modules/@babel/highlight/",\ + "packageDependencies": [\ + ["@babel/highlight", "npm:7.25.9"],\ + ["@babel/helper-validator-identifier", "npm:7.25.9"],\ + ["chalk", "npm:2.4.2"],\ + ["js-tokens", "npm:4.0.0"],\ + ["picocolors", "npm:1.0.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/parser", [\ @@ -2774,6 +3022,38 @@ const RAW_RUNTIME_STATE = ["@babel/types", "npm:7.22.17"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-parser-npm-7.25.9-be61e8b0f2-702af8c40b.zip/node_modules/@babel/parser/",\ + "packageDependencies": [\ + ["@babel/parser", "npm:7.25.9"],\ + ["@babel/types", "npm:7.25.9"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@babel/plugin-proposal-private-methods", [\ + ["npm:7.18.6", {\ + "packageLocation": "./.yarn/cache/@babel-plugin-proposal-private-methods-npm-7.18.6-55729207b7-22d8502ee9.zip/node_modules/@babel/plugin-proposal-private-methods/",\ + "packageDependencies": [\ + ["@babel/plugin-proposal-private-methods", "npm:7.18.6"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:4b25341317c5e70044213355008ad5fda61fdd924edee3abe9799bcab4e7b4e439ebce5a11e72d8eeef71133675c4be9251c62912387d44f7349202006896786#npm:7.18.6", {\ + "packageLocation": "./.yarn/__virtual__/@babel-plugin-proposal-private-methods-virtual-65b9f60598/0/cache/@babel-plugin-proposal-private-methods-npm-7.18.6-55729207b7-22d8502ee9.zip/node_modules/@babel/plugin-proposal-private-methods/",\ + "packageDependencies": [\ + ["@babel/plugin-proposal-private-methods", "virtual:4b25341317c5e70044213355008ad5fda61fdd924edee3abe9799bcab4e7b4e439ebce5a11e72d8eeef71133675c4be9251c62912387d44f7349202006896786#npm:7.18.6"],\ + ["@babel/core", "npm:7.25.9"],\ + ["@babel/helper-create-class-features-plugin", "virtual:65b9f6059839c7a606e818a69d11c43a76025b75577762a88ce835eaf43c053f0592ebb5a42f640545c297e8a54034d7b72c92856ca2c4598128bf2f47485e04#npm:7.25.9"],\ + ["@babel/helper-plugin-utils", "npm:7.25.9"],\ + ["@types/babel__core", null]\ + ],\ + "packagePeers": [\ + "@babel/core",\ + "@types/babel__core"\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/plugin-syntax-async-generators", [\ @@ -3294,6 +3574,16 @@ const RAW_RUNTIME_STATE = ["@babel/types", "npm:7.22.17"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-template-npm-7.25.9-d903b7b6d5-e861180881.zip/node_modules/@babel/template/",\ + "packageDependencies": [\ + ["@babel/template", "npm:7.25.9"],\ + ["@babel/code-frame", "npm:7.25.9"],\ + ["@babel/parser", "npm:7.25.9"],\ + ["@babel/types", "npm:7.25.9"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/traverse", [\ @@ -3313,6 +3603,20 @@ const RAW_RUNTIME_STATE = ["globals", "npm:11.12.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-traverse-npm-7.25.9-6230e12b1d-7431614d76.zip/node_modules/@babel/traverse/",\ + "packageDependencies": [\ + ["@babel/traverse", "npm:7.25.9"],\ + ["@babel/code-frame", "npm:7.25.9"],\ + ["@babel/generator", "npm:7.25.9"],\ + ["@babel/parser", "npm:7.25.9"],\ + ["@babel/template", "npm:7.25.9"],\ + ["@babel/types", "npm:7.25.9"],\ + ["debug", "virtual:6230e12b1d7dee1735a865cef131ea49c043e7f202fd08b14ceb90686e406b76a07840fc9510f1069465ad9695242b42830fc7fea7b01648a261463b7848122f#npm:4.3.7"],\ + ["globals", "npm:11.12.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@babel/types", [\ @@ -3345,6 +3649,15 @@ const RAW_RUNTIME_STATE = ["to-fast-properties", "npm:2.0.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:7.25.9", {\ + "packageLocation": "./.yarn/cache/@babel-types-npm-7.25.9-4668b27465-dd0f2874b1.zip/node_modules/@babel/types/",\ + "packageDependencies": [\ + ["@babel/types", "npm:7.25.9"],\ + ["@babel/helper-string-parser", "npm:7.25.9"],\ + ["@babel/helper-validator-identifier", "npm:7.25.9"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@bcoe/v8-coverage", [\ @@ -4014,24 +4327,119 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["@eslint-community/eslint-utils", [\ + ["npm:4.4.0", {\ + "packageLocation": "./.yarn/cache/@eslint-community-eslint-utils-npm-4.4.0-d1791bd5a3-8d70bcdcd8.zip/node_modules/@eslint-community/eslint-utils/",\ + "packageDependencies": [\ + ["@eslint-community/eslint-utils", "npm:4.4.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:a6745963b515c9f04980e5974c08b2fa5bf1a99d984eb658ea280a35ee9006567880f9a96e75fbc1fe81d39e53085ae5e57dc9b7d8c023c9444b5f57ac1b7e19#npm:4.4.0", {\ + "packageLocation": "./.yarn/__virtual__/@eslint-community-eslint-utils-virtual-d4b0371b0c/0/cache/@eslint-community-eslint-utils-npm-4.4.0-d1791bd5a3-8d70bcdcd8.zip/node_modules/@eslint-community/eslint-utils/",\ + "packageDependencies": [\ + ["@eslint-community/eslint-utils", "virtual:a6745963b515c9f04980e5974c08b2fa5bf1a99d984eb658ea280a35ee9006567880f9a96e75fbc1fe81d39e53085ae5e57dc9b7d8c023c9444b5f57ac1b7e19#npm:4.4.0"],\ + ["@types/eslint", null],\ + ["eslint", null],\ + ["eslint-visitor-keys", "npm:3.4.3"]\ + ],\ + "packagePeers": [\ + "@types/eslint",\ + "eslint"\ + ],\ + "linkType": "HARD"\ + }],\ + ["virtual:aa6ad64a63a7d5e34177b7c45274bf341e20f30112883b0bfc690d43736ef8994c598fdc235af9b007c3b2e6fb39beff44ec47ed01184d9910ce02e0863b11f3#npm:4.4.0", {\ + "packageLocation": "./.yarn/__virtual__/@eslint-community-eslint-utils-virtual-9053482bfd/0/cache/@eslint-community-eslint-utils-npm-4.4.0-d1791bd5a3-8d70bcdcd8.zip/node_modules/@eslint-community/eslint-utils/",\ + "packageDependencies": [\ + ["@eslint-community/eslint-utils", "virtual:aa6ad64a63a7d5e34177b7c45274bf341e20f30112883b0bfc690d43736ef8994c598fdc235af9b007c3b2e6fb39beff44ec47ed01184d9910ce02e0863b11f3#npm:4.4.0"],\ + ["@types/eslint", null],\ + ["eslint", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:9.13.0"],\ + ["eslint-visitor-keys", "npm:3.4.3"]\ + ],\ + "packagePeers": [\ + "@types/eslint",\ + "eslint"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@eslint-community/regexpp", [\ + ["npm:4.11.1", {\ + "packageLocation": "./.yarn/cache/@eslint-community-regexpp-npm-4.11.1-37bbb67aaa-934b6d3588.zip/node_modules/@eslint-community/regexpp/",\ + "packageDependencies": [\ + ["@eslint-community/regexpp", "npm:4.11.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@eslint/config-array", [\ + ["npm:0.18.0", {\ + "packageLocation": "./.yarn/cache/@eslint-config-array-npm-0.18.0-bb4bc4e301-60ccad1eb4.zip/node_modules/@eslint/config-array/",\ + "packageDependencies": [\ + ["@eslint/config-array", "npm:0.18.0"],\ + ["@eslint/object-schema", "npm:2.1.4"],\ + ["debug", "virtual:6230e12b1d7dee1735a865cef131ea49c043e7f202fd08b14ceb90686e406b76a07840fc9510f1069465ad9695242b42830fc7fea7b01648a261463b7848122f#npm:4.3.7"],\ + ["minimatch", "npm:3.1.2"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@eslint/core", [\ + ["npm:0.7.0", {\ + "packageLocation": "./.yarn/cache/@eslint-core-npm-0.7.0-55f1b6f05c-69227f33fd.zip/node_modules/@eslint/core/",\ + "packageDependencies": [\ + ["@eslint/core", "npm:0.7.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@eslint/eslintrc", [\ - ["npm:0.4.3", {\ - "packageLocation": "./.yarn/cache/@eslint-eslintrc-npm-0.4.3-ee1bbcab87-d41857d255.zip/node_modules/@eslint/eslintrc/",\ + ["npm:3.1.0", {\ + "packageLocation": "./.yarn/cache/@eslint-eslintrc-npm-3.1.0-3837a202e2-02bf892d13.zip/node_modules/@eslint/eslintrc/",\ "packageDependencies": [\ - ["@eslint/eslintrc", "npm:0.4.3"],\ + ["@eslint/eslintrc", "npm:3.1.0"],\ ["ajv", "npm:6.12.6"],\ - ["debug", "virtual:428f325a939c2653ad822eb3d75efb02ac311523dd0d4f9645afc39ea00bd86eceac35a9d59c9b6977d76b670a4ef0ae057ea572338a44729aa592711a8c05a3#npm:4.3.2"],\ - ["espree", "npm:7.3.1"],\ - ["globals", "npm:13.11.0"],\ - ["ignore", "npm:4.0.6"],\ + ["debug", "virtual:993368e4d5b99ecbd76d0bd2c43aca0cecadb2a241ef3dc8dc18085b2d79167d5195671fbb701c9e6312177b2cac6e3d058c4aa296d48c4e02c788163cdcab10#npm:4.3.3"],\ + ["espree", "npm:10.2.0"],\ + ["globals", "npm:14.0.0"],\ + ["ignore", "npm:5.2.4"],\ ["import-fresh", "npm:3.3.0"],\ - ["js-yaml", "npm:3.14.1"],\ - ["minimatch", "npm:3.0.4"],\ + ["js-yaml", "npm:4.1.0"],\ + ["minimatch", "npm:3.1.2"],\ ["strip-json-comments", "npm:3.1.1"]\ ],\ "linkType": "HARD"\ }]\ ]],\ + ["@eslint/js", [\ + ["npm:9.13.0", {\ + "packageLocation": "./.yarn/cache/@eslint-js-npm-9.13.0-2ac1161c0b-aa7a4c4504.zip/node_modules/@eslint/js/",\ + "packageDependencies": [\ + ["@eslint/js", "npm:9.13.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@eslint/object-schema", [\ + ["npm:2.1.4", {\ + "packageLocation": "./.yarn/cache/@eslint-object-schema-npm-2.1.4-0546250476-221e8d9f28.zip/node_modules/@eslint/object-schema/",\ + "packageDependencies": [\ + ["@eslint/object-schema", "npm:2.1.4"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@eslint/plugin-kit", [\ + ["npm:0.2.1", {\ + "packageLocation": "./.yarn/cache/@eslint-plugin-kit-npm-0.2.1-2fe0947b1a-28c409788b.zip/node_modules/@eslint/plugin-kit/",\ + "packageDependencies": [\ + ["@eslint/plugin-kit", "npm:0.2.1"],\ + ["levn", "npm:0.4.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@evocateur/libnpmaccess", [\ ["npm:3.1.2", {\ "packageLocation": "./.yarn/cache/@evocateur-libnpmaccess-npm-3.1.2-05cf7b934f-d7d746bd31.zip/node_modules/@evocateur/libnpmaccess/",\ @@ -4327,6 +4735,44 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["@humanfs/core", [\ + ["npm:0.19.0", {\ + "packageLocation": "./.yarn/cache/@humanfs-core-npm-0.19.0-b7c38944e9-9c4f96b9e9.zip/node_modules/@humanfs/core/",\ + "packageDependencies": [\ + ["@humanfs/core", "npm:0.19.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@humanfs/node", [\ + ["npm:0.16.5", {\ + "packageLocation": "./.yarn/cache/@humanfs-node-npm-0.16.5-c060df2586-16e49b5f9d.zip/node_modules/@humanfs/node/",\ + "packageDependencies": [\ + ["@humanfs/node", "npm:0.16.5"],\ + ["@humanfs/core", "npm:0.19.0"],\ + ["@humanwhocodes/retry", "npm:0.3.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@humanwhocodes/module-importer", [\ + ["npm:1.0.1", {\ + "packageLocation": "./.yarn/cache/@humanwhocodes-module-importer-npm-1.0.1-9d07ed2e4a-e993950e34.zip/node_modules/@humanwhocodes/module-importer/",\ + "packageDependencies": [\ + ["@humanwhocodes/module-importer", "npm:1.0.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@humanwhocodes/retry", [\ + ["npm:0.3.1", {\ + "packageLocation": "./.yarn/cache/@humanwhocodes-retry-npm-0.3.1-9d87bf92c6-eb457f6995.zip/node_modules/@humanwhocodes/retry/",\ + "packageDependencies": [\ + ["@humanwhocodes/retry", "npm:0.3.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@hutson/parse-repository-url", [\ ["npm:3.0.2", {\ "packageLocation": "./.yarn/cache/@hutson-parse-repository-url-npm-3.0.2-ae5ef1b671-dae0656f2e.zip/node_modules/@hutson/parse-repository-url/",\ @@ -4672,6 +5118,16 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@jest/types", [\ + ["npm:24.9.0", {\ + "packageLocation": "./.yarn/cache/@jest-types-npm-24.9.0-d3aae63b88-22bdbf26f3.zip/node_modules/@jest/types/",\ + "packageDependencies": [\ + ["@jest/types", "npm:24.9.0"],\ + ["@types/istanbul-lib-coverage", "npm:2.0.3"],\ + ["@types/istanbul-reports", "npm:1.1.2"],\ + ["@types/yargs", "npm:13.0.12"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:29.3.1", {\ "packageLocation": "./.yarn/cache/@jest-types-npm-29.3.1-6b45218613-c5113feacd.zip/node_modules/@jest/types/",\ "packageDependencies": [\ @@ -4718,6 +5174,16 @@ const RAW_RUNTIME_STATE = ["@jridgewell/trace-mapping", "npm:0.3.19"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:0.3.5", {\ + "packageLocation": "./.yarn/cache/@jridgewell-gen-mapping-npm-0.3.5-d8b85ebeaf-81587b3c4d.zip/node_modules/@jridgewell/gen-mapping/",\ + "packageDependencies": [\ + ["@jridgewell/gen-mapping", "npm:0.3.5"],\ + ["@jridgewell/set-array", "npm:1.2.1"],\ + ["@jridgewell/sourcemap-codec", "npm:1.4.15"],\ + ["@jridgewell/trace-mapping", "npm:0.3.25"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@jridgewell/resolve-uri", [\ @@ -4743,6 +5209,13 @@ const RAW_RUNTIME_STATE = ["@jridgewell/set-array", "npm:1.1.2"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:1.2.1", {\ + "packageLocation": "./.yarn/cache/@jridgewell-set-array-npm-1.2.1-2312928209-832e513a85.zip/node_modules/@jridgewell/set-array/",\ + "packageDependencies": [\ + ["@jridgewell/set-array", "npm:1.2.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@jridgewell/sourcemap-codec", [\ @@ -9309,6 +9782,13 @@ const RAW_RUNTIME_STATE = ["@types/estree", "npm:1.0.5"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:1.0.6", {\ + "packageLocation": "./.yarn/cache/@types-estree-npm-1.0.6-b5e23f2ea2-9d35d47509.zip/node_modules/@types/estree/",\ + "packageDependencies": [\ + ["@types/estree", "npm:1.0.6"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["@types/estree-jsx", [\ @@ -9461,6 +9941,15 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@types/istanbul-reports", [\ + ["npm:1.1.2", {\ + "packageLocation": "./.yarn/cache/@types-istanbul-reports-npm-1.1.2-4f435a3d0f-00866e815d.zip/node_modules/@types/istanbul-reports/",\ + "packageDependencies": [\ + ["@types/istanbul-reports", "npm:1.1.2"],\ + ["@types/istanbul-lib-coverage", "npm:2.0.3"],\ + ["@types/istanbul-lib-report", "npm:3.0.0"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:3.0.1", {\ "packageLocation": "./.yarn/cache/@types-istanbul-reports-npm-3.0.1-770e825002-f1ad54bc68.zip/node_modules/@types/istanbul-reports/",\ "packageDependencies": [\ @@ -9504,19 +9993,10 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@types/json-schema", [\ - ["npm:7.0.9", {\ - "packageLocation": "./.yarn/cache/@types-json-schema-npm-7.0.9-361918cff3-7ceb41e396.zip/node_modules/@types/json-schema/",\ - "packageDependencies": [\ - ["@types/json-schema", "npm:7.0.9"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ - ["@types/json5", [\ - ["npm:0.0.29", {\ - "packageLocation": "./.yarn/cache/@types-json5-npm-0.0.29-f63a7916bd-4e5aed58ca.zip/node_modules/@types/json5/",\ + ["npm:7.0.15", {\ + "packageLocation": "./.yarn/cache/@types-json-schema-npm-7.0.15-fd16381786-1a3c3e0623.zip/node_modules/@types/json-schema/",\ "packageDependencies": [\ - ["@types/json5", "npm:0.0.29"]\ + ["@types/json-schema", "npm:7.0.15"]\ ],\ "linkType": "HARD"\ }]\ @@ -10039,6 +10519,14 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@types/yargs", [\ + ["npm:13.0.12", {\ + "packageLocation": "./.yarn/cache/@types-yargs-npm-13.0.12-a1b52b90a3-d970b79cf1.zip/node_modules/@types/yargs/",\ + "packageDependencies": [\ + ["@types/yargs", "npm:13.0.12"],\ + ["@types/yargs-parser", "npm:20.2.1"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:17.0.13", {\ "packageLocation": "./.yarn/cache/@types-yargs-npm-17.0.13-67226ed55b-cf54305c86.zip/node_modules/@types/yargs/",\ "packageDependencies": [\ @@ -10058,29 +10546,31 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["@typescript-eslint/eslint-plugin", [\ - ["npm:4.31.2", {\ - "packageLocation": "./.yarn/cache/@typescript-eslint-eslint-plugin-npm-4.31.2-2012b2ef21-8aebddb002.zip/node_modules/@typescript-eslint/eslint-plugin/",\ + ["npm:8.11.0", {\ + "packageLocation": "./.yarn/cache/@typescript-eslint-eslint-plugin-npm-8.11.0-a8e5c1f59e-637760a5ff.zip/node_modules/@typescript-eslint/eslint-plugin/",\ "packageDependencies": [\ - ["@typescript-eslint/eslint-plugin", "npm:4.31.2"]\ + ["@typescript-eslint/eslint-plugin", "npm:8.11.0"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:4.31.2", {\ - "packageLocation": "./.yarn/__virtual__/@typescript-eslint-eslint-plugin-virtual-32a8f68782/0/cache/@typescript-eslint-eslint-plugin-npm-4.31.2-2012b2ef21-8aebddb002.zip/node_modules/@typescript-eslint/eslint-plugin/",\ + ["virtual:9a1df3d3b5d03ce4b617810d06b0ecbf1cc4073b45db4d035f088271ad7c642854fa03d1b125b55fe6cd55d49499f71cf4fb61d2f94cb11e68402066d7271da4#npm:8.11.0", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-eslint-plugin-virtual-21f0eda927/0/cache/@typescript-eslint-eslint-plugin-npm-8.11.0-a8e5c1f59e-637760a5ff.zip/node_modules/@typescript-eslint/eslint-plugin/",\ "packageDependencies": [\ - ["@typescript-eslint/eslint-plugin", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:4.31.2"],\ + ["@typescript-eslint/eslint-plugin", "virtual:9a1df3d3b5d03ce4b617810d06b0ecbf1cc4073b45db4d035f088271ad7c642854fa03d1b125b55fe6cd55d49499f71cf4fb61d2f94cb11e68402066d7271da4#npm:8.11.0"],\ + ["@eslint-community/regexpp", "npm:4.11.1"],\ ["@types/eslint", null],\ ["@types/typescript", null],\ ["@types/typescript-eslint__parser", null],\ - ["@typescript-eslint/experimental-utils", "virtual:32a8f68782f1dd871e91c0741ba32c0e7686842571495d92f7000a3e664fe41f11a6286864628fb131b1be80acabeed54e916caa3fea20055bf1060058c1aba0#npm:4.31.2"],\ - ["@typescript-eslint/parser", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:4.31.2"],\ - ["@typescript-eslint/scope-manager", "npm:4.31.2"],\ - ["debug", "virtual:428f325a939c2653ad822eb3d75efb02ac311523dd0d4f9645afc39ea00bd86eceac35a9d59c9b6977d76b670a4ef0ae057ea572338a44729aa592711a8c05a3#npm:4.3.2"],\ - ["eslint", "npm:7.23.0"],\ - ["functional-red-black-tree", "npm:1.0.1"],\ - ["regexpp", "npm:3.2.0"],\ - ["semver", "npm:7.5.4"],\ - ["tsutils", "virtual:32a8f68782f1dd871e91c0741ba32c0e7686842571495d92f7000a3e664fe41f11a6286864628fb131b1be80acabeed54e916caa3fea20055bf1060058c1aba0#npm:3.21.0"],\ + ["@typescript-eslint/parser", "virtual:9a1df3d3b5d03ce4b617810d06b0ecbf1cc4073b45db4d035f088271ad7c642854fa03d1b125b55fe6cd55d49499f71cf4fb61d2f94cb11e68402066d7271da4#npm:8.11.0"],\ + ["@typescript-eslint/scope-manager", "npm:8.11.0"],\ + ["@typescript-eslint/type-utils", "virtual:21f0eda927351d0d854685e6f8ce2c388ea97fd03b53f32925ef60c1bbe6901fa393627af856f09ec4a39105d6a8dc0925bcf00055c127f1eab4b5863d74d189#npm:8.11.0"],\ + ["@typescript-eslint/utils", "virtual:9a1df3d3b5d03ce4b617810d06b0ecbf1cc4073b45db4d035f088271ad7c642854fa03d1b125b55fe6cd55d49499f71cf4fb61d2f94cb11e68402066d7271da4#npm:8.11.0"],\ + ["@typescript-eslint/visitor-keys", "npm:8.11.0"],\ + ["eslint", null],\ + ["graphemer", "npm:1.4.0"],\ + ["ignore", "npm:5.3.1"],\ + ["natural-compare", "npm:1.4.0"],\ + ["ts-api-utils", "virtual:21f0eda927351d0d854685e6f8ce2c388ea97fd03b53f32925ef60c1bbe6901fa393627af856f09ec4a39105d6a8dc0925bcf00055c127f1eab4b5863d74d189#npm:1.3.0"],\ ["typescript", "patch:typescript@npm%3A5.1.6#optional!builtin::version=5.1.6&hash=5da071"]\ ],\ "packagePeers": [\ @@ -10094,104 +10584,104 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["@typescript-eslint/experimental-utils", [\ - ["npm:4.31.2", {\ - "packageLocation": "./.yarn/cache/@typescript-eslint-experimental-utils-npm-4.31.2-6226c77569-279415a517.zip/node_modules/@typescript-eslint/experimental-utils/",\ + ["@typescript-eslint/parser", [\ + ["npm:8.11.0", {\ + "packageLocation": "./.yarn/cache/@typescript-eslint-parser-npm-8.11.0-1dbc8390a0-518c70a61d.zip/node_modules/@typescript-eslint/parser/",\ "packageDependencies": [\ - ["@typescript-eslint/experimental-utils", "npm:4.31.2"]\ + ["@typescript-eslint/parser", "npm:8.11.0"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:32a8f68782f1dd871e91c0741ba32c0e7686842571495d92f7000a3e664fe41f11a6286864628fb131b1be80acabeed54e916caa3fea20055bf1060058c1aba0#npm:4.31.2", {\ - "packageLocation": "./.yarn/__virtual__/@typescript-eslint-experimental-utils-virtual-deb6d8294d/0/cache/@typescript-eslint-experimental-utils-npm-4.31.2-6226c77569-279415a517.zip/node_modules/@typescript-eslint/experimental-utils/",\ + ["virtual:9a1df3d3b5d03ce4b617810d06b0ecbf1cc4073b45db4d035f088271ad7c642854fa03d1b125b55fe6cd55d49499f71cf4fb61d2f94cb11e68402066d7271da4#npm:8.11.0", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-parser-virtual-8f929ad98d/0/cache/@typescript-eslint-parser-npm-8.11.0-1dbc8390a0-518c70a61d.zip/node_modules/@typescript-eslint/parser/",\ "packageDependencies": [\ - ["@typescript-eslint/experimental-utils", "virtual:32a8f68782f1dd871e91c0741ba32c0e7686842571495d92f7000a3e664fe41f11a6286864628fb131b1be80acabeed54e916caa3fea20055bf1060058c1aba0#npm:4.31.2"],\ + ["@typescript-eslint/parser", "virtual:9a1df3d3b5d03ce4b617810d06b0ecbf1cc4073b45db4d035f088271ad7c642854fa03d1b125b55fe6cd55d49499f71cf4fb61d2f94cb11e68402066d7271da4#npm:8.11.0"],\ ["@types/eslint", null],\ - ["@types/json-schema", "npm:7.0.9"],\ - ["@typescript-eslint/scope-manager", "npm:4.31.2"],\ - ["@typescript-eslint/types", "npm:4.31.2"],\ - ["@typescript-eslint/typescript-estree", "virtual:deb6d8294d682e78bf712e0d334943c8a8b928034ea14b780679e30568d63d632f06e4b47ddc175ef4852f3e34693d09049bea2eca287ef25aa2378f3412f563#npm:4.31.2"],\ - ["eslint", "npm:7.23.0"],\ - ["eslint-scope", "npm:5.1.1"],\ - ["eslint-utils", "virtual:deb6d8294d682e78bf712e0d334943c8a8b928034ea14b780679e30568d63d632f06e4b47ddc175ef4852f3e34693d09049bea2eca287ef25aa2378f3412f563#npm:3.0.0"]\ + ["@types/typescript", null],\ + ["@typescript-eslint/scope-manager", "npm:8.11.0"],\ + ["@typescript-eslint/types", "npm:8.11.0"],\ + ["@typescript-eslint/typescript-estree", "virtual:9a7c3879b83e1f8809654a0ae349d0f0f4428ae6ae1b097e031d848d7683b1d54decf05b22d0bc607c4df8e8b019021060f8e46d0eb917aad19b3faf5b0d9850#npm:8.11.0"],\ + ["@typescript-eslint/visitor-keys", "npm:8.11.0"],\ + ["debug", "virtual:58471071b1e0e7981e3318280660861b4dec874aaf0d60e144b70657cb5ce0af059ae16711a2af10f4d1ff0536527e350e6e47a8f79db2d8d37ff2ec84865bbc#npm:4.3.4"],\ + ["eslint", null],\ + ["typescript", "patch:typescript@npm%3A5.1.6#optional!builtin::version=5.1.6&hash=5da071"]\ ],\ "packagePeers": [\ "@types/eslint",\ - "eslint"\ + "@types/typescript",\ + "eslint",\ + "typescript"\ ],\ "linkType": "HARD"\ }]\ ]],\ - ["@typescript-eslint/parser", [\ - ["npm:4.31.2", {\ - "packageLocation": "./.yarn/cache/@typescript-eslint-parser-npm-4.31.2-e5825c3847-0c94f1a8bb.zip/node_modules/@typescript-eslint/parser/",\ + ["@typescript-eslint/scope-manager", [\ + ["npm:8.11.0", {\ + "packageLocation": "./.yarn/cache/@typescript-eslint-scope-manager-npm-8.11.0-63dee792b4-8f1e776fc0.zip/node_modules/@typescript-eslint/scope-manager/",\ "packageDependencies": [\ - ["@typescript-eslint/parser", "npm:4.31.2"]\ + ["@typescript-eslint/scope-manager", "npm:8.11.0"],\ + ["@typescript-eslint/types", "npm:8.11.0"],\ + ["@typescript-eslint/visitor-keys", "npm:8.11.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@typescript-eslint/type-utils", [\ + ["npm:8.11.0", {\ + "packageLocation": "./.yarn/cache/@typescript-eslint-type-utils-npm-8.11.0-101e4a0b9c-6ac8b676b4.zip/node_modules/@typescript-eslint/type-utils/",\ + "packageDependencies": [\ + ["@typescript-eslint/type-utils", "npm:8.11.0"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:4.31.2", {\ - "packageLocation": "./.yarn/__virtual__/@typescript-eslint-parser-virtual-701c606e81/0/cache/@typescript-eslint-parser-npm-4.31.2-e5825c3847-0c94f1a8bb.zip/node_modules/@typescript-eslint/parser/",\ + ["virtual:21f0eda927351d0d854685e6f8ce2c388ea97fd03b53f32925ef60c1bbe6901fa393627af856f09ec4a39105d6a8dc0925bcf00055c127f1eab4b5863d74d189#npm:8.11.0", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-type-utils-virtual-9a7c3879b8/0/cache/@typescript-eslint-type-utils-npm-8.11.0-101e4a0b9c-6ac8b676b4.zip/node_modules/@typescript-eslint/type-utils/",\ "packageDependencies": [\ - ["@typescript-eslint/parser", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:4.31.2"],\ - ["@types/eslint", null],\ + ["@typescript-eslint/type-utils", "virtual:21f0eda927351d0d854685e6f8ce2c388ea97fd03b53f32925ef60c1bbe6901fa393627af856f09ec4a39105d6a8dc0925bcf00055c127f1eab4b5863d74d189#npm:8.11.0"],\ ["@types/typescript", null],\ - ["@typescript-eslint/scope-manager", "npm:4.31.2"],\ - ["@typescript-eslint/types", "npm:4.31.2"],\ - ["@typescript-eslint/typescript-estree", "virtual:701c606e81c8df15543e9e5cebde4f7d4314a212fc674eeef67345568a3999fa08b88e6351472ad295b560290e519eb1d6abc128a5445d21673c864c636220a0#npm:4.31.2"],\ - ["debug", "virtual:428f325a939c2653ad822eb3d75efb02ac311523dd0d4f9645afc39ea00bd86eceac35a9d59c9b6977d76b670a4ef0ae057ea572338a44729aa592711a8c05a3#npm:4.3.2"],\ - ["eslint", "npm:7.23.0"],\ + ["@typescript-eslint/typescript-estree", "virtual:9a7c3879b83e1f8809654a0ae349d0f0f4428ae6ae1b097e031d848d7683b1d54decf05b22d0bc607c4df8e8b019021060f8e46d0eb917aad19b3faf5b0d9850#npm:8.11.0"],\ + ["@typescript-eslint/utils", "virtual:9a1df3d3b5d03ce4b617810d06b0ecbf1cc4073b45db4d035f088271ad7c642854fa03d1b125b55fe6cd55d49499f71cf4fb61d2f94cb11e68402066d7271da4#npm:8.11.0"],\ + ["debug", "virtual:58471071b1e0e7981e3318280660861b4dec874aaf0d60e144b70657cb5ce0af059ae16711a2af10f4d1ff0536527e350e6e47a8f79db2d8d37ff2ec84865bbc#npm:4.3.4"],\ + ["ts-api-utils", "virtual:21f0eda927351d0d854685e6f8ce2c388ea97fd03b53f32925ef60c1bbe6901fa393627af856f09ec4a39105d6a8dc0925bcf00055c127f1eab4b5863d74d189#npm:1.3.0"],\ ["typescript", "patch:typescript@npm%3A5.1.6#optional!builtin::version=5.1.6&hash=5da071"]\ ],\ "packagePeers": [\ - "@types/eslint",\ "@types/typescript",\ - "eslint",\ "typescript"\ ],\ "linkType": "HARD"\ }]\ ]],\ - ["@typescript-eslint/scope-manager", [\ - ["npm:4.31.2", {\ - "packageLocation": "./.yarn/cache/@typescript-eslint-scope-manager-npm-4.31.2-706ea8c09d-d151611fd8.zip/node_modules/@typescript-eslint/scope-manager/",\ - "packageDependencies": [\ - ["@typescript-eslint/scope-manager", "npm:4.31.2"],\ - ["@typescript-eslint/types", "npm:4.31.2"],\ - ["@typescript-eslint/visitor-keys", "npm:4.31.2"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["@typescript-eslint/types", [\ - ["npm:4.31.2", {\ - "packageLocation": "./.yarn/cache/@typescript-eslint-types-npm-4.31.2-4f1771c2f6-72f2e8d868.zip/node_modules/@typescript-eslint/types/",\ + ["npm:8.11.0", {\ + "packageLocation": "./.yarn/cache/@typescript-eslint-types-npm-8.11.0-62c557a0b9-424986bae7.zip/node_modules/@typescript-eslint/types/",\ "packageDependencies": [\ - ["@typescript-eslint/types", "npm:4.31.2"]\ + ["@typescript-eslint/types", "npm:8.11.0"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["@typescript-eslint/typescript-estree", [\ - ["npm:4.31.2", {\ - "packageLocation": "./.yarn/cache/@typescript-eslint-typescript-estree-npm-4.31.2-067426e037-beca01b05f.zip/node_modules/@typescript-eslint/typescript-estree/",\ + ["npm:8.11.0", {\ + "packageLocation": "./.yarn/cache/@typescript-eslint-typescript-estree-npm-8.11.0-2b184d9237-cec7c5768c.zip/node_modules/@typescript-eslint/typescript-estree/",\ "packageDependencies": [\ - ["@typescript-eslint/typescript-estree", "npm:4.31.2"]\ + ["@typescript-eslint/typescript-estree", "npm:8.11.0"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:701c606e81c8df15543e9e5cebde4f7d4314a212fc674eeef67345568a3999fa08b88e6351472ad295b560290e519eb1d6abc128a5445d21673c864c636220a0#npm:4.31.2", {\ - "packageLocation": "./.yarn/__virtual__/@typescript-eslint-typescript-estree-virtual-f471adc6bc/0/cache/@typescript-eslint-typescript-estree-npm-4.31.2-067426e037-beca01b05f.zip/node_modules/@typescript-eslint/typescript-estree/",\ + ["virtual:9a7c3879b83e1f8809654a0ae349d0f0f4428ae6ae1b097e031d848d7683b1d54decf05b22d0bc607c4df8e8b019021060f8e46d0eb917aad19b3faf5b0d9850#npm:8.11.0", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-typescript-estree-virtual-37e08bd403/0/cache/@typescript-eslint-typescript-estree-npm-8.11.0-2b184d9237-cec7c5768c.zip/node_modules/@typescript-eslint/typescript-estree/",\ "packageDependencies": [\ - ["@typescript-eslint/typescript-estree", "virtual:701c606e81c8df15543e9e5cebde4f7d4314a212fc674eeef67345568a3999fa08b88e6351472ad295b560290e519eb1d6abc128a5445d21673c864c636220a0#npm:4.31.2"],\ + ["@typescript-eslint/typescript-estree", "virtual:9a7c3879b83e1f8809654a0ae349d0f0f4428ae6ae1b097e031d848d7683b1d54decf05b22d0bc607c4df8e8b019021060f8e46d0eb917aad19b3faf5b0d9850#npm:8.11.0"],\ ["@types/typescript", null],\ - ["@typescript-eslint/types", "npm:4.31.2"],\ - ["@typescript-eslint/visitor-keys", "npm:4.31.2"],\ - ["debug", "virtual:428f325a939c2653ad822eb3d75efb02ac311523dd0d4f9645afc39ea00bd86eceac35a9d59c9b6977d76b670a4ef0ae057ea572338a44729aa592711a8c05a3#npm:4.3.2"],\ - ["globby", "npm:11.0.4"],\ - ["is-glob", "npm:4.0.1"],\ - ["semver", "npm:7.5.4"],\ - ["tsutils", "virtual:32a8f68782f1dd871e91c0741ba32c0e7686842571495d92f7000a3e664fe41f11a6286864628fb131b1be80acabeed54e916caa3fea20055bf1060058c1aba0#npm:3.21.0"],\ + ["@typescript-eslint/types", "npm:8.11.0"],\ + ["@typescript-eslint/visitor-keys", "npm:8.11.0"],\ + ["debug", "virtual:58471071b1e0e7981e3318280660861b4dec874aaf0d60e144b70657cb5ce0af059ae16711a2af10f4d1ff0536527e350e6e47a8f79db2d8d37ff2ec84865bbc#npm:4.3.4"],\ + ["fast-glob", "npm:3.3.2"],\ + ["is-glob", "npm:4.0.3"],\ + ["minimatch", "npm:9.0.4"],\ + ["semver", "npm:7.6.0"],\ + ["ts-api-utils", "virtual:21f0eda927351d0d854685e6f8ce2c388ea97fd03b53f32925ef60c1bbe6901fa393627af856f09ec4a39105d6a8dc0925bcf00055c127f1eab4b5863d74d189#npm:1.3.0"],\ ["typescript", "patch:typescript@npm%3A5.1.6#optional!builtin::version=5.1.6&hash=5da071"]\ ],\ "packagePeers": [\ @@ -10200,18 +10690,19 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:deb6d8294d682e78bf712e0d334943c8a8b928034ea14b780679e30568d63d632f06e4b47ddc175ef4852f3e34693d09049bea2eca287ef25aa2378f3412f563#npm:4.31.2", {\ - "packageLocation": "./.yarn/__virtual__/@typescript-eslint-typescript-estree-virtual-00b4ef4397/0/cache/@typescript-eslint-typescript-estree-npm-4.31.2-067426e037-beca01b05f.zip/node_modules/@typescript-eslint/typescript-estree/",\ + ["virtual:a6745963b515c9f04980e5974c08b2fa5bf1a99d984eb658ea280a35ee9006567880f9a96e75fbc1fe81d39e53085ae5e57dc9b7d8c023c9444b5f57ac1b7e19#npm:8.11.0", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-typescript-estree-virtual-dc84c13c2c/0/cache/@typescript-eslint-typescript-estree-npm-8.11.0-2b184d9237-cec7c5768c.zip/node_modules/@typescript-eslint/typescript-estree/",\ "packageDependencies": [\ - ["@typescript-eslint/typescript-estree", "virtual:deb6d8294d682e78bf712e0d334943c8a8b928034ea14b780679e30568d63d632f06e4b47ddc175ef4852f3e34693d09049bea2eca287ef25aa2378f3412f563#npm:4.31.2"],\ + ["@typescript-eslint/typescript-estree", "virtual:a6745963b515c9f04980e5974c08b2fa5bf1a99d984eb658ea280a35ee9006567880f9a96e75fbc1fe81d39e53085ae5e57dc9b7d8c023c9444b5f57ac1b7e19#npm:8.11.0"],\ ["@types/typescript", null],\ - ["@typescript-eslint/types", "npm:4.31.2"],\ - ["@typescript-eslint/visitor-keys", "npm:4.31.2"],\ - ["debug", "virtual:428f325a939c2653ad822eb3d75efb02ac311523dd0d4f9645afc39ea00bd86eceac35a9d59c9b6977d76b670a4ef0ae057ea572338a44729aa592711a8c05a3#npm:4.3.2"],\ - ["globby", "npm:11.0.4"],\ - ["is-glob", "npm:4.0.1"],\ - ["semver", "npm:7.5.4"],\ - ["tsutils", "virtual:00b4ef43974b48cdd5893080a053eec91e9ef1fca91e59f69a74ddfcb84a1deacd18f705c8005d6e9bbbc0e92fb8fb972360add0597b0e665ff7c61a804ab534#npm:3.21.0"],\ + ["@typescript-eslint/types", "npm:8.11.0"],\ + ["@typescript-eslint/visitor-keys", "npm:8.11.0"],\ + ["debug", "virtual:58471071b1e0e7981e3318280660861b4dec874aaf0d60e144b70657cb5ce0af059ae16711a2af10f4d1ff0536527e350e6e47a8f79db2d8d37ff2ec84865bbc#npm:4.3.4"],\ + ["fast-glob", "npm:3.3.2"],\ + ["is-glob", "npm:4.0.3"],\ + ["minimatch", "npm:9.0.4"],\ + ["semver", "npm:7.6.0"],\ + ["ts-api-utils", "virtual:dc84c13c2ceb2c07e4704710bfe23b0460810cee356212ad1bf5ad46a7626550f5cf59fab89f8e381596ccc8d98632d52b1834f59abc56cd3bf80525d8d172a5#npm:1.3.0"],\ ["typescript", null]\ ],\ "packagePeers": [\ @@ -10221,13 +10712,39 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["@typescript-eslint/utils", [\ + ["npm:8.11.0", {\ + "packageLocation": "./.yarn/cache/@typescript-eslint-utils-npm-8.11.0-f923a4e3e9-1b80312a15.zip/node_modules/@typescript-eslint/utils/",\ + "packageDependencies": [\ + ["@typescript-eslint/utils", "npm:8.11.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:9a1df3d3b5d03ce4b617810d06b0ecbf1cc4073b45db4d035f088271ad7c642854fa03d1b125b55fe6cd55d49499f71cf4fb61d2f94cb11e68402066d7271da4#npm:8.11.0", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-utils-virtual-a6745963b5/0/cache/@typescript-eslint-utils-npm-8.11.0-f923a4e3e9-1b80312a15.zip/node_modules/@typescript-eslint/utils/",\ + "packageDependencies": [\ + ["@typescript-eslint/utils", "virtual:9a1df3d3b5d03ce4b617810d06b0ecbf1cc4073b45db4d035f088271ad7c642854fa03d1b125b55fe6cd55d49499f71cf4fb61d2f94cb11e68402066d7271da4#npm:8.11.0"],\ + ["@eslint-community/eslint-utils", "virtual:a6745963b515c9f04980e5974c08b2fa5bf1a99d984eb658ea280a35ee9006567880f9a96e75fbc1fe81d39e53085ae5e57dc9b7d8c023c9444b5f57ac1b7e19#npm:4.4.0"],\ + ["@types/eslint", null],\ + ["@typescript-eslint/scope-manager", "npm:8.11.0"],\ + ["@typescript-eslint/types", "npm:8.11.0"],\ + ["@typescript-eslint/typescript-estree", "virtual:a6745963b515c9f04980e5974c08b2fa5bf1a99d984eb658ea280a35ee9006567880f9a96e75fbc1fe81d39e53085ae5e57dc9b7d8c023c9444b5f57ac1b7e19#npm:8.11.0"],\ + ["eslint", null]\ + ],\ + "packagePeers": [\ + "@types/eslint",\ + "eslint"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@typescript-eslint/visitor-keys", [\ - ["npm:4.31.2", {\ - "packageLocation": "./.yarn/cache/@typescript-eslint-visitor-keys-npm-4.31.2-1a20f1f4c4-e0fa17e927.zip/node_modules/@typescript-eslint/visitor-keys/",\ + ["npm:8.11.0", {\ + "packageLocation": "./.yarn/cache/@typescript-eslint-visitor-keys-npm-8.11.0-b52c2f749c-8d2bed15cc.zip/node_modules/@typescript-eslint/visitor-keys/",\ "packageDependencies": [\ - ["@typescript-eslint/visitor-keys", "npm:4.31.2"],\ - ["@typescript-eslint/types", "npm:4.31.2"],\ - ["eslint-visitor-keys", "npm:2.1.0"]\ + ["@typescript-eslint/visitor-keys", "npm:8.11.0"],\ + ["@typescript-eslint/types", "npm:8.11.0"],\ + ["eslint-visitor-keys", "npm:3.4.3"]\ ],\ "linkType": "HARD"\ }]\ @@ -10793,13 +11310,6 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["acorn", [\ - ["npm:7.4.1", {\ - "packageLocation": "./.yarn/cache/acorn-npm-7.4.1-f450b4646c-8be2a40714.zip/node_modules/acorn/",\ - "packageDependencies": [\ - ["acorn", "npm:7.4.1"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:8.10.0", {\ "packageLocation": "./.yarn/cache/acorn-npm-8.10.0-2230c9e83e-522310c20f.zip/node_modules/acorn/",\ "packageDependencies": [\ @@ -10814,6 +11324,13 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ + ["npm:8.13.0", {\ + "packageLocation": "./.yarn/cache/acorn-npm-8.13.0-a6d9510af8-33e3a03114.zip/node_modules/acorn/",\ + "packageDependencies": [\ + ["acorn", "npm:8.13.0"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:8.8.1", {\ "packageLocation": "./.yarn/cache/acorn-npm-8.8.1-20e4aea981-c77a64b3b6.zip/node_modules/acorn/",\ "packageDependencies": [\ @@ -10874,12 +11391,12 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["virtual:8d8ea5d1e3376905d0290522290f47c29213c64d936d96293d758a315829a3cf4c6a5b8ffc1cfee36c3db08f700ad3aaf0711cc5d406a7218c275de6d74effa9#npm:5.3.2", {\ - "packageLocation": "./.yarn/__virtual__/acorn-jsx-virtual-6934646a20/0/cache/acorn-jsx-npm-5.3.2-d7594599ea-d4371eaef7.zip/node_modules/acorn-jsx/",\ + ["virtual:a85a38e94ff4153143d9118248172cf65f3ce2c8a76410901ac8f3eecd964379e6a504059514148764a5a48966df6db7724e6c01e80c5f161c6ad661ee42a01a#npm:5.3.2", {\ + "packageLocation": "./.yarn/__virtual__/acorn-jsx-virtual-6416e6a0b3/0/cache/acorn-jsx-npm-5.3.2-d7594599ea-d4371eaef7.zip/node_modules/acorn-jsx/",\ "packageDependencies": [\ - ["acorn-jsx", "virtual:8d8ea5d1e3376905d0290522290f47c29213c64d936d96293d758a315829a3cf4c6a5b8ffc1cfee36c3db08f700ad3aaf0711cc5d406a7218c275de6d74effa9#npm:5.3.2"],\ + ["acorn-jsx", "virtual:a85a38e94ff4153143d9118248172cf65f3ce2c8a76410901ac8f3eecd964379e6a504059514148764a5a48966df6db7724e6c01e80c5f161c6ad661ee42a01a#npm:5.3.2"],\ ["@types/acorn", null],\ - ["acorn", "npm:7.4.1"]\ + ["acorn", "npm:8.13.0"]\ ],\ "packagePeers": [\ "@types/acorn",\ @@ -11305,20 +11822,6 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["array-includes", [\ - ["npm:3.1.3", {\ - "packageLocation": "./.yarn/cache/array-includes-npm-3.1.3-5f58cf4c82-e7ccea0a79.zip/node_modules/array-includes/",\ - "packageDependencies": [\ - ["array-includes", "npm:3.1.3"],\ - ["call-bind", "npm:1.0.2"],\ - ["define-properties", "npm:1.1.3"],\ - ["es-abstract", "npm:1.18.6"],\ - ["get-intrinsic", "npm:1.1.1"],\ - ["is-string", "npm:1.0.7"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["array-union", [\ ["npm:1.0.2", {\ "packageLocation": "./.yarn/cache/array-union-npm-1.0.2-cc61ee268f-82cec6421b.zip/node_modules/array-union/",\ @@ -11354,31 +11857,6 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["array.prototype.flat", [\ - ["npm:1.2.4", {\ - "packageLocation": "./.yarn/cache/array.prototype.flat-npm-1.2.4-7b3397fc11-c8bd981449.zip/node_modules/array.prototype.flat/",\ - "packageDependencies": [\ - ["array.prototype.flat", "npm:1.2.4"],\ - ["call-bind", "npm:1.0.2"],\ - ["define-properties", "npm:1.1.3"],\ - ["es-abstract", "npm:1.18.6"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ - ["array.prototype.flatmap", [\ - ["npm:1.2.4", {\ - "packageLocation": "./.yarn/cache/array.prototype.flatmap-npm-1.2.4-77697fdbe6-192cc09409.zip/node_modules/array.prototype.flatmap/",\ - "packageDependencies": [\ - ["array.prototype.flatmap", "npm:1.2.4"],\ - ["call-bind", "npm:1.0.2"],\ - ["define-properties", "npm:1.1.3"],\ - ["es-abstract", "npm:1.18.6"],\ - ["function-bind", "npm:1.1.1"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["array.prototype.reduce", [\ ["npm:1.0.7", {\ "packageLocation": "./.yarn/cache/array.prototype.reduce-npm-1.0.7-68b13a3834-3a4fa56cf5.zip/node_modules/array.prototype.reduce/",\ @@ -11678,6 +12156,22 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["babel-plugin-react-compiler", [\ + ["npm:19.0.0-beta-8a03594-20241020", {\ + "packageLocation": "./.yarn/cache/babel-plugin-react-compiler-npm-19.0.0-beta-8a03594-20241020-afe777aeab-137b61daec.zip/node_modules/babel-plugin-react-compiler/",\ + "packageDependencies": [\ + ["babel-plugin-react-compiler", "npm:19.0.0-beta-8a03594-20241020"],\ + ["@babel/generator", "npm:7.2.0"],\ + ["@babel/types", "npm:7.25.9"],\ + ["chalk", "npm:4.1.2"],\ + ["invariant", "npm:2.2.4"],\ + ["pretty-format", "npm:24.9.0"],\ + ["zod", "npm:3.23.8"],\ + ["zod-validation-error", "virtual:afe777aeab9b9ba4d4b29ce0376d28c61aee88fc6439705771e53a6095308a7e9029d59f34aa658d1537bd5d82346b357005b01090b580916efd8fde2407f2a5#npm:2.1.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["babel-preset-current-node-syntax", [\ ["npm:1.0.1", {\ "packageLocation": "./.yarn/cache/babel-preset-current-node-syntax-npm-1.0.1-849ec71e32-94561959cb.zip/node_modules/babel-preset-current-node-syntax/",\ @@ -12066,6 +12560,17 @@ const RAW_RUNTIME_STATE = ["update-browserslist-db", "virtual:e2170a875bba2f8fa9e93e47c65f2f250097e101a59d95ea6fd852f32965e8cd6cef3b5662aa7295279d5bc60c9a612ddb8515c7dd1b7e8fb9984dee1823e7d6#npm:1.0.11"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:4.24.2", {\ + "packageLocation": "./.yarn/cache/browserslist-npm-4.24.2-0bc5f13e3b-f8a9d78bba.zip/node_modules/browserslist/",\ + "packageDependencies": [\ + ["browserslist", "npm:4.24.2"],\ + ["caniuse-lite", "npm:1.0.30001669"],\ + ["electron-to-chromium", "npm:1.5.42"],\ + ["node-releases", "npm:2.0.18"],\ + ["update-browserslist-db", "virtual:0bc5f13e3b070c660ccf3396ff30b6fc44ede2343c6543d593ce4624807ab1bafdbcd764ac20b4d55e6854e63e2568f1c6d09371eb639766b95e2d401b5b05cb#npm:1.1.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["bser", [\ @@ -12524,6 +13029,13 @@ const RAW_RUNTIME_STATE = ["caniuse-lite", "npm:1.0.30001618"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:1.0.30001669", {\ + "packageLocation": "./.yarn/cache/caniuse-lite-npm-1.0.30001669-1160fd58ad-cd0b481bb9.zip/node_modules/caniuse-lite/",\ + "packageDependencies": [\ + ["caniuse-lite", "npm:1.0.30001669"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["caseless", [\ @@ -14134,12 +14646,12 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:6618ab6046111bda0b9a733e34fec5329265b155b4408a2345f36333ccbe1a86dfc9efc447e5134e4156dde98ed737f5efbe42b5378f22c09197bf46e2cdab17#npm:3.1.0", {\ - "packageLocation": "./.yarn/__virtual__/debug-virtual-77b911398e/0/cache/debug-npm-3.1.0-9f0accb99b-f5fd4b1390.zip/node_modules/debug/",\ + ["virtual:6230e12b1d7dee1735a865cef131ea49c043e7f202fd08b14ceb90686e406b76a07840fc9510f1069465ad9695242b42830fc7fea7b01648a261463b7848122f#npm:4.3.7", {\ + "packageLocation": "./.yarn/__virtual__/debug-virtual-45decf707a/0/cache/debug-npm-4.3.7-385645adf9-71168908b9.zip/node_modules/debug/",\ "packageDependencies": [\ - ["debug", "virtual:6618ab6046111bda0b9a733e34fec5329265b155b4408a2345f36333ccbe1a86dfc9efc447e5134e4156dde98ed737f5efbe42b5378f22c09197bf46e2cdab17#npm:3.1.0"],\ + ["debug", "virtual:6230e12b1d7dee1735a865cef131ea49c043e7f202fd08b14ceb90686e406b76a07840fc9510f1069465ad9695242b42830fc7fea7b01648a261463b7848122f#npm:4.3.7"],\ ["@types/supports-color", null],\ - ["ms", "npm:2.0.0"],\ + ["ms", "npm:2.1.3"],\ ["supports-color", null]\ ],\ "packagePeers": [\ @@ -14148,12 +14660,12 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["virtual:66f1833a7f25c14a667c46d25bee5f886843d59ce7f59a83a3286a64ae6c3fb2a01a0364ec774a5f5ed6d7b620659e7f01e24fa402a524101f3fc797ba83aa48#npm:4.3.7", {\ - "packageLocation": "./.yarn/__virtual__/debug-virtual-eaa68f9aee/0/cache/debug-npm-4.3.7-385645adf9-71168908b9.zip/node_modules/debug/",\ + ["virtual:6618ab6046111bda0b9a733e34fec5329265b155b4408a2345f36333ccbe1a86dfc9efc447e5134e4156dde98ed737f5efbe42b5378f22c09197bf46e2cdab17#npm:3.1.0", {\ + "packageLocation": "./.yarn/__virtual__/debug-virtual-77b911398e/0/cache/debug-npm-3.1.0-9f0accb99b-f5fd4b1390.zip/node_modules/debug/",\ "packageDependencies": [\ - ["debug", "virtual:66f1833a7f25c14a667c46d25bee5f886843d59ce7f59a83a3286a64ae6c3fb2a01a0364ec774a5f5ed6d7b620659e7f01e24fa402a524101f3fc797ba83aa48#npm:4.3.7"],\ + ["debug", "virtual:6618ab6046111bda0b9a733e34fec5329265b155b4408a2345f36333ccbe1a86dfc9efc447e5134e4156dde98ed737f5efbe42b5378f22c09197bf46e2cdab17#npm:3.1.0"],\ ["@types/supports-color", null],\ - ["ms", "npm:2.1.3"],\ + ["ms", "npm:2.0.0"],\ ["supports-color", null]\ ],\ "packagePeers": [\ @@ -14668,24 +15180,6 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["doctrine", [\ - ["npm:2.1.0", {\ - "packageLocation": "./.yarn/cache/doctrine-npm-2.1.0-ac15d049b7-555684f77e.zip/node_modules/doctrine/",\ - "packageDependencies": [\ - ["doctrine", "npm:2.1.0"],\ - ["esutils", "npm:2.0.3"]\ - ],\ - "linkType": "HARD"\ - }],\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/doctrine-npm-3.0.0-c6f1615f04-b4b28f1df5.zip/node_modules/doctrine/",\ - "packageDependencies": [\ - ["doctrine", "npm:3.0.0"],\ - ["esutils", "npm:2.0.3"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["dom-accessibility-api", [\ ["npm:0.5.16", {\ "packageLocation": "./.yarn/cache/dom-accessibility-api-npm-0.5.16-d3e2310666-377b4a7f9e.zip/node_modules/dom-accessibility-api/",\ @@ -15012,6 +15506,13 @@ const RAW_RUNTIME_STATE = ["electron-to-chromium", "npm:1.4.520"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:1.5.42", {\ + "packageLocation": "./.yarn/cache/electron-to-chromium-npm-1.5.42-68cb27581f-869d481372.zip/node_modules/electron-to-chromium/",\ + "packageDependencies": [\ + ["electron-to-chromium", "npm:1.5.42"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["email-validator", [\ @@ -15442,6 +15943,13 @@ const RAW_RUNTIME_STATE = ["escalade", "npm:3.1.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:3.2.0", {\ + "packageLocation": "./.yarn/cache/escalade-npm-3.2.0-19b50dd48f-9d7169e396.zip/node_modules/escalade/",\ + "packageDependencies": [\ + ["escalade", "npm:3.2.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["escape-html", [\ @@ -15498,242 +16006,82 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["eslint", [\ - ["npm:7.23.0", {\ - "packageLocation": "./.yarn/cache/eslint-npm-7.23.0-899360d658-992ee50cbf.zip/node_modules/eslint/",\ + ["npm:9.13.0", {\ + "packageLocation": "./.yarn/cache/eslint-npm-9.13.0-ca97d17f52-4342cc24a8.zip/node_modules/eslint/",\ "packageDependencies": [\ - ["eslint", "npm:7.23.0"],\ - ["@babel/code-frame", "npm:7.12.11"],\ - ["@eslint/eslintrc", "npm:0.4.3"],\ + ["eslint", "npm:9.13.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:9.13.0", {\ + "packageLocation": "./.yarn/__virtual__/eslint-virtual-aa6ad64a63/0/cache/eslint-npm-9.13.0-ca97d17f52-4342cc24a8.zip/node_modules/eslint/",\ + "packageDependencies": [\ + ["eslint", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:9.13.0"],\ + ["@eslint-community/eslint-utils", "virtual:aa6ad64a63a7d5e34177b7c45274bf341e20f30112883b0bfc690d43736ef8994c598fdc235af9b007c3b2e6fb39beff44ec47ed01184d9910ce02e0863b11f3#npm:4.4.0"],\ + ["@eslint-community/regexpp", "npm:4.11.1"],\ + ["@eslint/config-array", "npm:0.18.0"],\ + ["@eslint/core", "npm:0.7.0"],\ + ["@eslint/eslintrc", "npm:3.1.0"],\ + ["@eslint/js", "npm:9.13.0"],\ + ["@eslint/plugin-kit", "npm:0.2.1"],\ + ["@humanfs/node", "npm:0.16.5"],\ + ["@humanwhocodes/module-importer", "npm:1.0.1"],\ + ["@humanwhocodes/retry", "npm:0.3.1"],\ + ["@types/estree", "npm:1.0.6"],\ + ["@types/jiti", null],\ + ["@types/json-schema", "npm:7.0.15"],\ ["ajv", "npm:6.12.6"],\ ["chalk", "npm:4.1.2"],\ ["cross-spawn", "npm:7.0.3"],\ - ["debug", "virtual:428f325a939c2653ad822eb3d75efb02ac311523dd0d4f9645afc39ea00bd86eceac35a9d59c9b6977d76b670a4ef0ae057ea572338a44729aa592711a8c05a3#npm:4.3.2"],\ - ["doctrine", "npm:3.0.0"],\ - ["enquirer", "npm:2.3.6"],\ - ["eslint-scope", "npm:5.1.1"],\ - ["eslint-utils", "npm:2.1.0"],\ - ["eslint-visitor-keys", "npm:2.1.0"],\ - ["espree", "npm:7.3.1"],\ - ["esquery", "npm:1.4.0"],\ + ["debug", "virtual:993368e4d5b99ecbd76d0bd2c43aca0cecadb2a241ef3dc8dc18085b2d79167d5195671fbb701c9e6312177b2cac6e3d058c4aa296d48c4e02c788163cdcab10#npm:4.3.3"],\ + ["escape-string-regexp", "npm:4.0.0"],\ + ["eslint-scope", "npm:8.1.0"],\ + ["eslint-visitor-keys", "npm:4.1.0"],\ + ["espree", "npm:10.2.0"],\ + ["esquery", "npm:1.6.0"],\ ["esutils", "npm:2.0.3"],\ - ["file-entry-cache", "npm:6.0.1"],\ - ["functional-red-black-tree", "npm:1.0.1"],\ - ["glob-parent", "npm:5.1.2"],\ - ["globals", "npm:13.11.0"],\ - ["ignore", "npm:4.0.6"],\ - ["import-fresh", "npm:3.3.0"],\ + ["fast-deep-equal", "npm:3.1.3"],\ + ["file-entry-cache", "npm:8.0.0"],\ + ["find-up", "npm:5.0.0"],\ + ["glob-parent", "npm:6.0.2"],\ + ["ignore", "npm:5.2.4"],\ ["imurmurhash", "npm:0.1.4"],\ ["is-glob", "npm:4.0.1"],\ - ["js-yaml", "npm:3.14.1"],\ + ["jiti", null],\ ["json-stable-stringify-without-jsonify", "npm:1.0.1"],\ - ["levn", "npm:0.4.1"],\ - ["lodash", "npm:4.17.21"],\ - ["minimatch", "npm:3.0.4"],\ + ["lodash.merge", "npm:4.6.2"],\ + ["minimatch", "npm:3.1.2"],\ ["natural-compare", "npm:1.4.0"],\ - ["optionator", "npm:0.9.1"],\ - ["progress", "npm:2.0.3"],\ - ["regexpp", "npm:3.2.0"],\ - ["semver", "npm:7.5.4"],\ - ["strip-ansi", "npm:6.0.1"],\ - ["strip-json-comments", "npm:3.1.1"],\ - ["table", "npm:6.7.1"],\ - ["text-table", "npm:0.2.0"],\ - ["v8-compile-cache", "npm:2.3.0"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ - ["eslint-config-prettier", [\ - ["npm:8.3.0", {\ - "packageLocation": "./.yarn/cache/eslint-config-prettier-npm-8.3.0-f540cd1f53-3f4c7e0731.zip/node_modules/eslint-config-prettier/",\ - "packageDependencies": [\ - ["eslint-config-prettier", "npm:8.3.0"]\ - ],\ - "linkType": "SOFT"\ - }],\ - ["virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:8.3.0", {\ - "packageLocation": "./.yarn/__virtual__/eslint-config-prettier-virtual-a7ad45f8f2/0/cache/eslint-config-prettier-npm-8.3.0-f540cd1f53-3f4c7e0731.zip/node_modules/eslint-config-prettier/",\ - "packageDependencies": [\ - ["eslint-config-prettier", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:8.3.0"],\ - ["@types/eslint", null],\ - ["eslint", "npm:7.23.0"]\ - ],\ - "packagePeers": [\ - "@types/eslint",\ - "eslint"\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ - ["eslint-import-resolver-node", [\ - ["npm:0.3.6", {\ - "packageLocation": "./.yarn/cache/eslint-import-resolver-node-npm-0.3.6-d9426786c6-c35c6edb7e.zip/node_modules/eslint-import-resolver-node/",\ - "packageDependencies": [\ - ["eslint-import-resolver-node", "npm:0.3.6"],\ - ["debug", "virtual:8bb97bed484f021974a05538f31c077871d2363ce26ebed59b11577446762350604c9011c0660ae55b141dd86d888615a377ccccd7a87c5e54ae38233a22d5a9#npm:3.2.7"],\ - ["resolve", "patch:resolve@npm%3A1.20.0#optional!builtin::version=1.20.0&hash=c3c19d"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ - ["eslint-module-utils", [\ - ["npm:2.6.2", {\ - "packageLocation": "./.yarn/cache/eslint-module-utils-npm-2.6.2-20e7fcde89-a927e66d4e.zip/node_modules/eslint-module-utils/",\ - "packageDependencies": [\ - ["eslint-module-utils", "npm:2.6.2"]\ - ],\ - "linkType": "SOFT"\ - }],\ - ["virtual:d7c85ce9299c24d9e54e90f03aa3c5771ae711485ccf2e3f5b1b77c6c749b841822be859eda3fb51d4b4540164a045ecb959ed7fc39d51f9b25fb280c5ed3844#npm:2.6.2", {\ - "packageLocation": "./.yarn/__virtual__/eslint-module-utils-virtual-1d396de28c/0/cache/eslint-module-utils-npm-2.6.2-20e7fcde89-a927e66d4e.zip/node_modules/eslint-module-utils/",\ - "packageDependencies": [\ - ["eslint-module-utils", "virtual:d7c85ce9299c24d9e54e90f03aa3c5771ae711485ccf2e3f5b1b77c6c749b841822be859eda3fb51d4b4540164a045ecb959ed7fc39d51f9b25fb280c5ed3844#npm:2.6.2"],\ - ["@types/eslint-import-resolver-node", null],\ - ["@types/eslint-import-resolver-typescript", null],\ - ["@types/eslint-import-resolver-webpack", null],\ - ["@types/typescript-eslint__parser", null],\ - ["@typescript-eslint/parser", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:4.31.2"],\ - ["debug", "virtual:8bb97bed484f021974a05538f31c077871d2363ce26ebed59b11577446762350604c9011c0660ae55b141dd86d888615a377ccccd7a87c5e54ae38233a22d5a9#npm:3.2.7"],\ - ["eslint-import-resolver-node", "npm:0.3.6"],\ - ["eslint-import-resolver-typescript", null],\ - ["eslint-import-resolver-webpack", null],\ - ["pkg-dir", "npm:2.0.0"]\ - ],\ - "packagePeers": [\ - "@types/eslint-import-resolver-node",\ - "@types/eslint-import-resolver-typescript",\ - "@types/eslint-import-resolver-webpack",\ - "@types/typescript-eslint__parser",\ - "@typescript-eslint/parser",\ - "eslint-import-resolver-node",\ - "eslint-import-resolver-typescript",\ - "eslint-import-resolver-webpack"\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ - ["eslint-plugin-import", [\ - ["npm:2.24.2", {\ - "packageLocation": "./.yarn/cache/eslint-plugin-import-npm-2.24.2-127dbaeebd-f587b830c2.zip/node_modules/eslint-plugin-import/",\ - "packageDependencies": [\ - ["eslint-plugin-import", "npm:2.24.2"]\ - ],\ - "linkType": "SOFT"\ - }],\ - ["virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:2.24.2", {\ - "packageLocation": "./.yarn/__virtual__/eslint-plugin-import-virtual-d7c85ce929/0/cache/eslint-plugin-import-npm-2.24.2-127dbaeebd-f587b830c2.zip/node_modules/eslint-plugin-import/",\ - "packageDependencies": [\ - ["eslint-plugin-import", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:2.24.2"],\ - ["@types/eslint", null],\ - ["@types/typescript-eslint__parser", null],\ - ["@typescript-eslint/parser", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:4.31.2"],\ - ["array-includes", "npm:3.1.3"],\ - ["array.prototype.flat", "npm:1.2.4"],\ - ["debug", "virtual:2bcc47d217f870e3d52f0e55493dc34fd3da852877f7db32fa2940cc320151746026495daf6a34a974488cf5a949d93be1e2dc1ffba036faf081a9b15fcd2252#npm:2.6.9"],\ - ["doctrine", "npm:2.1.0"],\ - ["eslint", "npm:7.23.0"],\ - ["eslint-import-resolver-node", "npm:0.3.6"],\ - ["eslint-module-utils", "virtual:d7c85ce9299c24d9e54e90f03aa3c5771ae711485ccf2e3f5b1b77c6c749b841822be859eda3fb51d4b4540164a045ecb959ed7fc39d51f9b25fb280c5ed3844#npm:2.6.2"],\ - ["find-up", "npm:2.1.0"],\ - ["has", "npm:1.0.3"],\ - ["is-core-module", "npm:2.6.0"],\ - ["minimatch", "npm:3.0.4"],\ - ["object.values", "npm:1.1.4"],\ - ["pkg-up", "npm:2.0.0"],\ - ["read-pkg-up", "npm:3.0.0"],\ - ["resolve", "patch:resolve@npm%3A1.20.0#optional!builtin::version=1.20.0&hash=c3c19d"],\ - ["tsconfig-paths", "npm:3.11.0"]\ - ],\ - "packagePeers": [\ - "@types/eslint",\ - "@types/typescript-eslint__parser",\ - "@typescript-eslint/parser",\ - "eslint"\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ - ["eslint-plugin-prettier", [\ - ["npm:3.4.1", {\ - "packageLocation": "./.yarn/cache/eslint-plugin-prettier-npm-3.4.1-c0bf5af22f-d7ab93df9a.zip/node_modules/eslint-plugin-prettier/",\ - "packageDependencies": [\ - ["eslint-plugin-prettier", "npm:3.4.1"]\ - ],\ - "linkType": "SOFT"\ - }],\ - ["virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:3.4.1", {\ - "packageLocation": "./.yarn/__virtual__/eslint-plugin-prettier-virtual-15db6fc3d7/0/cache/eslint-plugin-prettier-npm-3.4.1-c0bf5af22f-d7ab93df9a.zip/node_modules/eslint-plugin-prettier/",\ - "packageDependencies": [\ - ["eslint-plugin-prettier", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:3.4.1"],\ - ["@types/eslint", null],\ - ["@types/eslint-config-prettier", null],\ - ["@types/prettier", null],\ - ["eslint", "npm:7.23.0"],\ - ["eslint-config-prettier", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:8.3.0"],\ - ["prettier", "npm:2.4.1"],\ - ["prettier-linter-helpers", "npm:1.0.0"]\ - ],\ - "packagePeers": [\ - "@types/eslint-config-prettier",\ - "@types/eslint",\ - "@types/prettier",\ - "eslint-config-prettier",\ - "eslint",\ - "prettier"\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ - ["eslint-plugin-react", [\ - ["npm:7.26.0", {\ - "packageLocation": "./.yarn/cache/eslint-plugin-react-npm-7.26.0-8e868b1248-99105ad1e0.zip/node_modules/eslint-plugin-react/",\ - "packageDependencies": [\ - ["eslint-plugin-react", "npm:7.26.0"]\ - ],\ - "linkType": "SOFT"\ - }],\ - ["virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:7.26.0", {\ - "packageLocation": "./.yarn/__virtual__/eslint-plugin-react-virtual-869b34b133/0/cache/eslint-plugin-react-npm-7.26.0-8e868b1248-99105ad1e0.zip/node_modules/eslint-plugin-react/",\ - "packageDependencies": [\ - ["eslint-plugin-react", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:7.26.0"],\ - ["@types/eslint", null],\ - ["array-includes", "npm:3.1.3"],\ - ["array.prototype.flatmap", "npm:1.2.4"],\ - ["doctrine", "npm:2.1.0"],\ - ["eslint", "npm:7.23.0"],\ - ["estraverse", "npm:5.2.0"],\ - ["jsx-ast-utils", "npm:3.2.1"],\ - ["minimatch", "npm:3.0.4"],\ - ["object.entries", "npm:1.1.4"],\ - ["object.fromentries", "npm:2.0.4"],\ - ["object.hasown", "npm:1.0.0"],\ - ["object.values", "npm:1.1.4"],\ - ["prop-types", "npm:15.7.2"],\ - ["resolve", "patch:resolve@npm%3A2.0.0-next.3#optional!builtin::version=2.0.0-next.3&hash=c3c19d"],\ - ["semver", "npm:6.3.1"],\ - ["string.prototype.matchall", "npm:4.0.5"]\ + ["optionator", "npm:0.9.4"],\ + ["text-table", "npm:0.2.0"]\ ],\ "packagePeers": [\ - "@types/eslint",\ - "eslint"\ + "@types/jiti",\ + "jiti"\ ],\ "linkType": "HARD"\ }]\ ]],\ - ["eslint-plugin-react-hooks", [\ - ["npm:4.2.0", {\ - "packageLocation": "./.yarn/cache/eslint-plugin-react-hooks-npm-4.2.0-e09b1ea4ce-2cdb3bce0d.zip/node_modules/eslint-plugin-react-hooks/",\ + ["eslint-plugin-react-compiler", [\ + ["npm:19.0.0-beta-8a03594-20241020", {\ + "packageLocation": "./.yarn/cache/eslint-plugin-react-compiler-npm-19.0.0-beta-8a03594-20241020-376623cb15-e714821133.zip/node_modules/eslint-plugin-react-compiler/",\ "packageDependencies": [\ - ["eslint-plugin-react-hooks", "npm:4.2.0"]\ + ["eslint-plugin-react-compiler", "npm:19.0.0-beta-8a03594-20241020"]\ ],\ "linkType": "SOFT"\ }],\ - ["virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:4.2.0", {\ - "packageLocation": "./.yarn/__virtual__/eslint-plugin-react-hooks-virtual-be29759365/0/cache/eslint-plugin-react-hooks-npm-4.2.0-e09b1ea4ce-2cdb3bce0d.zip/node_modules/eslint-plugin-react-hooks/",\ + ["virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:19.0.0-beta-8a03594-20241020", {\ + "packageLocation": "./.yarn/__virtual__/eslint-plugin-react-compiler-virtual-4b25341317/0/cache/eslint-plugin-react-compiler-npm-19.0.0-beta-8a03594-20241020-376623cb15-e714821133.zip/node_modules/eslint-plugin-react-compiler/",\ "packageDependencies": [\ - ["eslint-plugin-react-hooks", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:4.2.0"],\ + ["eslint-plugin-react-compiler", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:19.0.0-beta-8a03594-20241020"],\ + ["@babel/core", "npm:7.25.9"],\ + ["@babel/parser", "npm:7.24.4"],\ + ["@babel/plugin-proposal-private-methods", "virtual:4b25341317c5e70044213355008ad5fda61fdd924edee3abe9799bcab4e7b4e439ebce5a11e72d8eeef71133675c4be9251c62912387d44f7349202006896786#npm:7.18.6"],\ ["@types/eslint", null],\ - ["eslint", "npm:7.23.0"]\ + ["eslint", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:9.13.0"],\ + ["hermes-parser", "npm:0.20.1"],\ + ["zod", "npm:3.23.8"],\ + ["zod-validation-error", "virtual:4b25341317c5e70044213355008ad5fda61fdd924edee3abe9799bcab4e7b4e439ebce5a11e72d8eeef71133675c4be9251c62912387d44f7349202006896786#npm:3.4.0"]\ ],\ "packagePeers": [\ "@types/eslint",\ @@ -15743,71 +16091,40 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["eslint-scope", [\ - ["npm:5.1.1", {\ - "packageLocation": "./.yarn/cache/eslint-scope-npm-5.1.1-71fe59b18a-c541ef384c.zip/node_modules/eslint-scope/",\ + ["npm:8.1.0", {\ + "packageLocation": "./.yarn/cache/eslint-scope-npm-8.1.0-75cf62b96f-4c34a12fbe.zip/node_modules/eslint-scope/",\ "packageDependencies": [\ - ["eslint-scope", "npm:5.1.1"],\ + ["eslint-scope", "npm:8.1.0"],\ ["esrecurse", "npm:4.3.0"],\ - ["estraverse", "npm:4.3.0"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ - ["eslint-utils", [\ - ["npm:2.1.0", {\ - "packageLocation": "./.yarn/cache/eslint-utils-npm-2.1.0-a3a7ebf4fa-a7e43a5154.zip/node_modules/eslint-utils/",\ - "packageDependencies": [\ - ["eslint-utils", "npm:2.1.0"],\ - ["eslint-visitor-keys", "npm:1.3.0"]\ - ],\ - "linkType": "HARD"\ - }],\ - ["npm:3.0.0", {\ - "packageLocation": "./.yarn/cache/eslint-utils-npm-3.0.0-630b3a4013-7675260a6b.zip/node_modules/eslint-utils/",\ - "packageDependencies": [\ - ["eslint-utils", "npm:3.0.0"]\ - ],\ - "linkType": "SOFT"\ - }],\ - ["virtual:deb6d8294d682e78bf712e0d334943c8a8b928034ea14b780679e30568d63d632f06e4b47ddc175ef4852f3e34693d09049bea2eca287ef25aa2378f3412f563#npm:3.0.0", {\ - "packageLocation": "./.yarn/__virtual__/eslint-utils-virtual-d65a5b37e6/0/cache/eslint-utils-npm-3.0.0-630b3a4013-7675260a6b.zip/node_modules/eslint-utils/",\ - "packageDependencies": [\ - ["eslint-utils", "virtual:deb6d8294d682e78bf712e0d334943c8a8b928034ea14b780679e30568d63d632f06e4b47ddc175ef4852f3e34693d09049bea2eca287ef25aa2378f3412f563#npm:3.0.0"],\ - ["@types/eslint", null],\ - ["eslint", "npm:7.23.0"],\ - ["eslint-visitor-keys", "npm:2.1.0"]\ - ],\ - "packagePeers": [\ - "@types/eslint",\ - "eslint"\ + ["estraverse", "npm:5.3.0"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["eslint-visitor-keys", [\ - ["npm:1.3.0", {\ - "packageLocation": "./.yarn/cache/eslint-visitor-keys-npm-1.3.0-c07780a0fb-595ab230e0.zip/node_modules/eslint-visitor-keys/",\ + ["npm:3.4.3", {\ + "packageLocation": "./.yarn/cache/eslint-visitor-keys-npm-3.4.3-a356ac7e46-3f357c554a.zip/node_modules/eslint-visitor-keys/",\ "packageDependencies": [\ - ["eslint-visitor-keys", "npm:1.3.0"]\ + ["eslint-visitor-keys", "npm:3.4.3"]\ ],\ "linkType": "HARD"\ }],\ - ["npm:2.1.0", {\ - "packageLocation": "./.yarn/cache/eslint-visitor-keys-npm-2.1.0-c31806b6b9-db4547eef5.zip/node_modules/eslint-visitor-keys/",\ + ["npm:4.1.0", {\ + "packageLocation": "./.yarn/cache/eslint-visitor-keys-npm-4.1.0-463e4b09f7-3fb5bd1b2f.zip/node_modules/eslint-visitor-keys/",\ "packageDependencies": [\ - ["eslint-visitor-keys", "npm:2.1.0"]\ + ["eslint-visitor-keys", "npm:4.1.0"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["espree", [\ - ["npm:7.3.1", {\ - "packageLocation": "./.yarn/cache/espree-npm-7.3.1-8d8ea5d1e3-7cf230d4d7.zip/node_modules/espree/",\ + ["npm:10.2.0", {\ + "packageLocation": "./.yarn/cache/espree-npm-10.2.0-a85a38e94f-365076a963.zip/node_modules/espree/",\ "packageDependencies": [\ - ["espree", "npm:7.3.1"],\ - ["acorn", "npm:7.4.1"],\ - ["acorn-jsx", "virtual:8d8ea5d1e3376905d0290522290f47c29213c64d936d96293d758a315829a3cf4c6a5b8ffc1cfee36c3db08f700ad3aaf0711cc5d406a7218c275de6d74effa9#npm:5.3.2"],\ - ["eslint-visitor-keys", "npm:1.3.0"]\ + ["espree", "npm:10.2.0"],\ + ["acorn", "npm:8.13.0"],\ + ["acorn-jsx", "virtual:a85a38e94ff4153143d9118248172cf65f3ce2c8a76410901ac8f3eecd964379e6a504059514148764a5a48966df6db7724e6c01e80c5f161c6ad661ee42a01a#npm:5.3.2"],\ + ["eslint-visitor-keys", "npm:4.1.0"]\ ],\ "linkType": "HARD"\ }]\ @@ -15822,11 +16139,11 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["esquery", [\ - ["npm:1.4.0", {\ - "packageLocation": "./.yarn/cache/esquery-npm-1.4.0-f39408b1a7-25b571ec54.zip/node_modules/esquery/",\ + ["npm:1.6.0", {\ + "packageLocation": "./.yarn/cache/esquery-npm-1.6.0-16fee31531-c587fb8ec9.zip/node_modules/esquery/",\ "packageDependencies": [\ - ["esquery", "npm:1.4.0"],\ - ["estraverse", "npm:5.2.0"]\ + ["esquery", "npm:1.6.0"],\ + ["estraverse", "npm:5.3.0"]\ ],\ "linkType": "HARD"\ }]\ @@ -15836,7 +16153,7 @@ const RAW_RUNTIME_STATE = "packageLocation": "./.yarn/cache/esrecurse-npm-4.3.0-10b86a887a-44ffcd89e7.zip/node_modules/esrecurse/",\ "packageDependencies": [\ ["esrecurse", "npm:4.3.0"],\ - ["estraverse", "npm:5.2.0"]\ + ["estraverse", "npm:5.3.0"]\ ],\ "linkType": "HARD"\ }]\ @@ -15849,10 +16166,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:5.2.0", {\ - "packageLocation": "./.yarn/cache/estraverse-npm-5.2.0-b2e8e36350-9740a8fa42.zip/node_modules/estraverse/",\ + ["npm:5.3.0", {\ + "packageLocation": "./.yarn/cache/estraverse-npm-5.3.0-03284f8f63-37cbe6e9a6.zip/node_modules/estraverse/",\ "packageDependencies": [\ - ["estraverse", "npm:5.2.0"]\ + ["estraverse", "npm:5.3.0"]\ ],\ "linkType": "HARD"\ }]\ @@ -16262,15 +16579,6 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["fast-diff", [\ - ["npm:1.2.0", {\ - "packageLocation": "./.yarn/cache/fast-diff-npm-1.2.0-5ba4171bb6-f62419b3d7.zip/node_modules/fast-diff/",\ - "packageDependencies": [\ - ["fast-diff", "npm:1.2.0"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["fast-fifo", [\ ["npm:1.3.2", {\ "packageLocation": "./.yarn/cache/fast-fifo-npm-1.3.2-391cc25df4-6bfcba3e4d.zip/node_modules/fast-fifo/",\ @@ -16317,6 +16625,18 @@ const RAW_RUNTIME_STATE = ["micromatch", "npm:4.0.4"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:3.3.2", {\ + "packageLocation": "./.yarn/cache/fast-glob-npm-3.3.2-0a8cb4f2ca-222512e931.zip/node_modules/fast-glob/",\ + "packageDependencies": [\ + ["fast-glob", "npm:3.3.2"],\ + ["@nodelib/fs.stat", "npm:2.0.5"],\ + ["@nodelib/fs.walk", "npm:1.2.8"],\ + ["glob-parent", "npm:5.1.2"],\ + ["merge2", "npm:1.4.1"],\ + ["micromatch", "npm:4.0.4"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["fast-json-stable-stringify", [\ @@ -16514,11 +16834,11 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["file-entry-cache", [\ - ["npm:6.0.1", {\ - "packageLocation": "./.yarn/cache/file-entry-cache-npm-6.0.1-31965cf0af-099bb9d4ab.zip/node_modules/file-entry-cache/",\ + ["npm:8.0.0", {\ + "packageLocation": "./.yarn/cache/file-entry-cache-npm-8.0.0-5b09d19a83-afe55c4de4.zip/node_modules/file-entry-cache/",\ "packageDependencies": [\ - ["file-entry-cache", "npm:6.0.1"],\ - ["flat-cache", "npm:3.0.4"]\ + ["file-entry-cache", "npm:8.0.0"],\ + ["flat-cache", "npm:4.0.1"]\ ],\ "linkType": "HARD"\ }]\ @@ -16643,6 +16963,15 @@ const RAW_RUNTIME_STATE = ["path-exists", "npm:4.0.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:5.0.0", {\ + "packageLocation": "./.yarn/cache/find-up-npm-5.0.0-e03e9b796d-07955e3573.zip/node_modules/find-up/",\ + "packageDependencies": [\ + ["find-up", "npm:5.0.0"],\ + ["locate-path", "npm:6.0.0"],\ + ["path-exists", "npm:4.0.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["flat", [\ @@ -16655,21 +16984,21 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["flat-cache", [\ - ["npm:3.0.4", {\ - "packageLocation": "./.yarn/cache/flat-cache-npm-3.0.4-ee77e5911e-9fe5d0cb97.zip/node_modules/flat-cache/",\ + ["npm:4.0.1", {\ + "packageLocation": "./.yarn/cache/flat-cache-npm-4.0.1-12bf2455f7-58ce851d90.zip/node_modules/flat-cache/",\ "packageDependencies": [\ - ["flat-cache", "npm:3.0.4"],\ - ["flatted", "npm:3.2.2"],\ - ["rimraf", "npm:3.0.2"]\ + ["flat-cache", "npm:4.0.1"],\ + ["flatted", "npm:3.3.1"],\ + ["keyv", "npm:4.5.4"]\ ],\ "linkType": "HARD"\ }]\ ]],\ ["flatted", [\ - ["npm:3.2.2", {\ - "packageLocation": "./.yarn/cache/flatted-npm-3.2.2-d61e116742-acf2a762cb.zip/node_modules/flatted/",\ + ["npm:3.3.1", {\ + "packageLocation": "./.yarn/cache/flatted-npm-3.3.1-458870f59b-7b8376061d.zip/node_modules/flatted/",\ "packageDependencies": [\ - ["flatted", "npm:3.2.2"]\ + ["flatted", "npm:3.3.1"]\ ],\ "linkType": "HARD"\ }]\ @@ -17030,15 +17359,6 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["functional-red-black-tree", [\ - ["npm:1.0.1", {\ - "packageLocation": "./.yarn/cache/functional-red-black-tree-npm-1.0.1-ccfe924dcd-debe73e922.zip/node_modules/functional-red-black-tree/",\ - "packageDependencies": [\ - ["functional-red-black-tree", "npm:1.0.1"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["functions-have-names", [\ ["npm:1.2.3", {\ "packageLocation": "./.yarn/cache/functions-have-names-npm-1.2.3-e5cf1e2208-0ddfd3ed10.zip/node_modules/functions-have-names/",\ @@ -17520,11 +17840,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:13.11.0", {\ - "packageLocation": "./.yarn/cache/globals-npm-13.11.0-472e1471b0-9d46c6d657.zip/node_modules/globals/",\ + ["npm:14.0.0", {\ + "packageLocation": "./.yarn/cache/globals-npm-14.0.0-5fc3d8d5da-03939c8af9.zip/node_modules/globals/",\ "packageDependencies": [\ - ["globals", "npm:13.11.0"],\ - ["type-fest", "npm:0.20.2"]\ + ["globals", "npm:14.0.0"]\ ],\ "linkType": "HARD"\ }]\ @@ -17645,6 +17964,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["graphemer", [\ + ["npm:1.4.0", {\ + "packageLocation": "./.yarn/cache/graphemer-npm-1.4.0-0627732d35-6dd60dba97.zip/node_modules/graphemer/",\ + "packageDependencies": [\ + ["graphemer", "npm:1.4.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["graphql", [\ ["npm:16.8.1", {\ "packageLocation": "./.yarn/cache/graphql-npm-16.8.1-c2cd08b4c0-7a09d3ec5f.zip/node_modules/graphql/",\ @@ -18129,6 +18457,25 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["hermes-estree", [\ + ["npm:0.20.1", {\ + "packageLocation": "./.yarn/cache/hermes-estree-npm-0.20.1-647b3a89b3-b98fc2943b.zip/node_modules/hermes-estree/",\ + "packageDependencies": [\ + ["hermes-estree", "npm:0.20.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["hermes-parser", [\ + ["npm:0.20.1", {\ + "packageLocation": "./.yarn/cache/hermes-parser-npm-0.20.1-5519703bc1-b1ae9e9f6b.zip/node_modules/hermes-parser/",\ + "packageDependencies": [\ + ["hermes-parser", "npm:0.20.1"],\ + ["hermes-estree", "npm:0.20.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["history", [\ ["npm:5.2.0", {\ "packageLocation": "./.yarn/cache/history-npm-5.2.0-de9a69e37c-9de257a167.zip/node_modules/history/",\ @@ -18807,6 +19154,16 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["invariant", [\ + ["npm:2.2.4", {\ + "packageLocation": "./.yarn/cache/invariant-npm-2.2.4-717fbdb119-cc3182d793.zip/node_modules/invariant/",\ + "packageDependencies": [\ + ["invariant", "npm:2.2.4"],\ + ["loose-envify", "npm:1.4.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["invert-kv", [\ ["npm:1.0.0", {\ "packageLocation": "./.yarn/cache/invert-kv-npm-1.0.0-114e48e289-0820af99ca.zip/node_modules/invert-kv/",\ @@ -20574,6 +20931,13 @@ const RAW_RUNTIME_STATE = ["jsesc", "npm:2.5.2"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:3.0.2", {\ + "packageLocation": "./.yarn/cache/jsesc-npm-3.0.2-3b3b74ec0d-8e5a7de6b7.zip/node_modules/jsesc/",\ + "packageDependencies": [\ + ["jsesc", "npm:3.0.2"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["jshint", [\ @@ -20708,16 +21072,8 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }]\ - ]],\ - ["json5", [\ - ["npm:1.0.2", {\ - "packageLocation": "./.yarn/cache/json5-npm-1.0.2-9607f93e30-a78d812dbb.zip/node_modules/json5/",\ - "packageDependencies": [\ - ["json5", "npm:1.0.2"],\ - ["minimist", "npm:1.2.8"]\ - ],\ - "linkType": "HARD"\ - }],\ + ]],\ + ["json5", [\ ["npm:2.2.3", {\ "packageLocation": "./.yarn/cache/json5-npm-2.2.3-9962c55073-1db67b853f.zip/node_modules/json5/",\ "packageDependencies": [\ @@ -20789,17 +21145,6 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["jsx-ast-utils", [\ - ["npm:3.2.1", {\ - "packageLocation": "./.yarn/cache/jsx-ast-utils-npm-3.2.1-addc1eb80c-1195088f55.zip/node_modules/jsx-ast-utils/",\ - "packageDependencies": [\ - ["jsx-ast-utils", "npm:3.2.1"],\ - ["array-includes", "npm:3.1.3"],\ - ["object.assign", "npm:4.1.2"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["just-diff", [\ ["npm:6.0.2", {\ "packageLocation": "./.yarn/cache/just-diff-npm-6.0.2-f73771d84e-4c6b14d6be.zip/node_modules/just-diff/",\ @@ -20882,6 +21227,14 @@ const RAW_RUNTIME_STATE = ["json-buffer", "npm:3.0.1"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:4.5.4", {\ + "packageLocation": "./.yarn/cache/keyv-npm-4.5.4-4c8e2cf7f7-167eb6ef64.zip/node_modules/keyv/",\ + "packageDependencies": [\ + ["keyv", "npm:4.5.4"],\ + ["json-buffer", "npm:3.0.1"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["kind-of", [\ @@ -21254,6 +21607,14 @@ const RAW_RUNTIME_STATE = ["p-locate", "npm:4.1.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:6.0.0", {\ + "packageLocation": "./.yarn/cache/locate-path-npm-6.0.0-06a1e4c528-72eb661788.zip/node_modules/locate-path/",\ + "packageDependencies": [\ + ["locate-path", "npm:6.0.0"],\ + ["p-locate", "npm:5.0.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["lodash", [\ @@ -23649,6 +24010,13 @@ const RAW_RUNTIME_STATE = ["node-releases", "npm:2.0.13"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:2.0.18", {\ + "packageLocation": "./.yarn/cache/node-releases-npm-2.0.18-51abc46668-241e5fa955.zip/node_modules/node-releases/",\ + "packageDependencies": [\ + ["node-releases", "npm:2.0.18"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["node.extend", [\ @@ -24217,18 +24585,6 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["object.entries", [\ - ["npm:1.1.4", {\ - "packageLocation": "./.yarn/cache/object.entries-npm-1.1.4-d381ab8800-a89a7047f7.zip/node_modules/object.entries/",\ - "packageDependencies": [\ - ["object.entries", "npm:1.1.4"],\ - ["call-bind", "npm:1.0.2"],\ - ["define-properties", "npm:1.1.3"],\ - ["es-abstract", "npm:1.18.6"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["object.fromentries", [\ ["npm:2.0.4", {\ "packageLocation": "./.yarn/cache/object.fromentries-npm-2.0.4-cc608f8739-62ae902d1b.zip/node_modules/object.fromentries/",\ @@ -24258,17 +24614,6 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["object.hasown", [\ - ["npm:1.0.0", {\ - "packageLocation": "./.yarn/cache/object.hasown-npm-1.0.0-485c86df03-77c9c3dd74.zip/node_modules/object.hasown/",\ - "packageDependencies": [\ - ["object.hasown", "npm:1.0.0"],\ - ["define-properties", "npm:1.1.3"],\ - ["es-abstract", "npm:1.18.6"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["object.pick", [\ ["npm:1.3.0", {\ "packageLocation": "./.yarn/cache/object.pick-npm-1.3.0-dad8eae8fb-92d7226a6b.zip/node_modules/object.pick/",\ @@ -24279,18 +24624,6 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["object.values", [\ - ["npm:1.1.4", {\ - "packageLocation": "./.yarn/cache/object.values-npm-1.1.4-2812105455-546979591a.zip/node_modules/object.values/",\ - "packageDependencies": [\ - ["object.values", "npm:1.1.4"],\ - ["call-bind", "npm:1.0.2"],\ - ["define-properties", "npm:1.1.3"],\ - ["es-abstract", "npm:1.18.6"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["obuf", [\ ["npm:1.1.2", {\ "packageLocation": "./.yarn/cache/obuf-npm-1.1.2-8db5fae8dd-53ff4ab3a1.zip/node_modules/obuf/",\ @@ -24459,10 +24792,10 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:0.9.1", {\ - "packageLocation": "./.yarn/cache/optionator-npm-0.9.1-577e397aae-19cfb625ba.zip/node_modules/optionator/",\ + ["npm:0.9.4", {\ + "packageLocation": "./.yarn/cache/optionator-npm-0.9.4-1f114b00e8-a8398559c6.zip/node_modules/optionator/",\ "packageDependencies": [\ - ["optionator", "npm:0.9.1"],\ + ["optionator", "npm:0.9.4"],\ ["deep-is", "npm:0.1.4"],\ ["fast-levenshtein", "npm:2.0.6"],\ ["levn", "npm:0.4.1"],\ @@ -24632,6 +24965,14 @@ const RAW_RUNTIME_STATE = ["p-limit", "npm:2.3.0"]\ ],\ "linkType": "HARD"\ + }],\ + ["npm:5.0.0", {\ + "packageLocation": "./.yarn/cache/p-locate-npm-5.0.0-92cc7c7a3e-1623088f36.zip/node_modules/p-locate/",\ + "packageDependencies": [\ + ["p-locate", "npm:5.0.0"],\ + ["p-limit", "npm:3.1.0"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["p-map", [\ @@ -25455,14 +25796,6 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["pkg-dir", [\ - ["npm:2.0.0", {\ - "packageLocation": "./.yarn/cache/pkg-dir-npm-2.0.0-2b4bf4abd1-8c72b71230.zip/node_modules/pkg-dir/",\ - "packageDependencies": [\ - ["pkg-dir", "npm:2.0.0"],\ - ["find-up", "npm:2.1.0"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:3.0.0", {\ "packageLocation": "./.yarn/cache/pkg-dir-npm-3.0.0-16d8d93783-70c9476ffe.zip/node_modules/pkg-dir/",\ "packageDependencies": [\ @@ -25492,16 +25825,6 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["pkg-up", [\ - ["npm:2.0.0", {\ - "packageLocation": "./.yarn/cache/pkg-up-npm-2.0.0-d011ba70a4-de4b418175.zip/node_modules/pkg-up/",\ - "packageDependencies": [\ - ["pkg-up", "npm:2.0.0"],\ - ["find-up", "npm:2.1.0"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["please-upgrade-node", [\ ["npm:3.2.0", {\ "packageLocation": "./.yarn/cache/please-upgrade-node-npm-3.2.0-3f653350ed-d87c41581a.zip/node_modules/please-upgrade-node/",\ @@ -25689,16 +26012,6 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["prettier-linter-helpers", [\ - ["npm:1.0.0", {\ - "packageLocation": "./.yarn/cache/prettier-linter-helpers-npm-1.0.0-6925131a7e-00ce8011cf.zip/node_modules/prettier-linter-helpers/",\ - "packageDependencies": [\ - ["prettier-linter-helpers", "npm:1.0.0"],\ - ["fast-diff", "npm:1.2.0"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["pretty-bytes", [\ ["npm:5.6.0", {\ "packageLocation": "./.yarn/cache/pretty-bytes-npm-5.6.0-0061079c9f-9c082500d1.zip/node_modules/pretty-bytes/",\ @@ -25709,6 +26022,17 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["pretty-format", [\ + ["npm:24.9.0", {\ + "packageLocation": "./.yarn/cache/pretty-format-npm-24.9.0-cf0850262c-f6664330e8.zip/node_modules/pretty-format/",\ + "packageDependencies": [\ + ["pretty-format", "npm:24.9.0"],\ + ["@jest/types", "npm:24.9.0"],\ + ["ansi-regex", "npm:4.1.1"],\ + ["ansi-styles", "npm:3.2.1"],\ + ["react-is", "npm:16.13.1"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:27.5.1", {\ "packageLocation": "./.yarn/cache/pretty-format-npm-27.5.1-cd7d49696f-248990cbef.zip/node_modules/pretty-format/",\ "packageDependencies": [\ @@ -25790,13 +26114,6 @@ const RAW_RUNTIME_STATE = ["progress", "npm:2.0.0"]\ ],\ "linkType": "HARD"\ - }],\ - ["npm:2.0.3", {\ - "packageLocation": "./.yarn/cache/progress-npm-2.0.3-d1f87e2ac6-e6f0bcb71f.zip/node_modules/progress/",\ - "packageDependencies": [\ - ["progress", "npm:2.0.3"]\ - ],\ - "linkType": "HARD"\ }]\ ]],\ ["promise", [\ @@ -27141,15 +27458,6 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["regexp.prototype.flags", [\ - ["npm:1.3.1", {\ - "packageLocation": "./.yarn/cache/regexp.prototype.flags-npm-1.3.1-f0c34f894f-751e69bf6c.zip/node_modules/regexp.prototype.flags/",\ - "packageDependencies": [\ - ["regexp.prototype.flags", "npm:1.3.1"],\ - ["call-bind", "npm:1.0.2"],\ - ["define-properties", "npm:1.1.3"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:1.4.3", {\ "packageLocation": "./.yarn/cache/regexp.prototype.flags-npm-1.4.3-df1c08b65d-3cde7cd22f.zip/node_modules/regexp.prototype.flags/",\ "packageDependencies": [\ @@ -27172,15 +27480,6 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["regexpp", [\ - ["npm:3.2.0", {\ - "packageLocation": "./.yarn/cache/regexpp-npm-3.2.0-2513f32cfc-3310010895.zip/node_modules/regexpp/",\ - "packageDependencies": [\ - ["regexpp", "npm:3.2.0"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["rehype-raw", [\ ["npm:7.0.0", {\ "packageLocation": "./.yarn/cache/rehype-raw-npm-7.0.0-f3b08f8b7a-65dd5809f9.zip/node_modules/rehype-raw/",\ @@ -27381,15 +27680,6 @@ const RAW_RUNTIME_STATE = ["supports-preserve-symlinks-flag", "npm:1.0.0"]\ ],\ "linkType": "HARD"\ - }],\ - ["patch:resolve@npm%3A2.0.0-next.3#optional!builtin::version=2.0.0-next.3&hash=c3c19d", {\ - "packageLocation": "./.yarn/cache/resolve-patch-c1472719c0-e29030dd55.zip/node_modules/resolve/",\ - "packageDependencies": [\ - ["resolve", "patch:resolve@npm%3A2.0.0-next.3#optional!builtin::version=2.0.0-next.3&hash=c3c19d"],\ - ["is-core-module", "npm:2.6.0"],\ - ["path-parse", "npm:1.0.7"]\ - ],\ - "linkType": "HARD"\ }]\ ]],\ ["resolve-alpn", [\ @@ -27629,22 +27919,18 @@ const RAW_RUNTIME_STATE = "packageDependencies": [\ ["root-workspace-0b6124", "workspace:."],\ ["@elastic/apm-rum-react", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:2.0.2"],\ + ["@eslint/js", "npm:9.13.0"],\ ["@sentry/cli", "npm:1.37.4"],\ ["@testing-library/jest-dom", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:6.1.3"],\ ["@types/ioredis-mock", "npm:8.2.2"],\ ["@types/jsdom", "npm:16.2.13"],\ ["@types/testing-library__jest-dom", "npm:5.14.5"],\ - ["@typescript-eslint/eslint-plugin", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:4.31.2"],\ - ["@typescript-eslint/parser", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:4.31.2"],\ ["@vitest/coverage-v8", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:1.5.0"],\ ["@yarnpkg/pnpify", "npm:3.1.1-rc.8"],\ + ["babel-plugin-react-compiler", "npm:19.0.0-beta-8a03594-20241020"],\ ["codecov", "npm:3.8.3"],\ - ["eslint", "npm:7.23.0"],\ - ["eslint-config-prettier", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:8.3.0"],\ - ["eslint-plugin-import", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:2.24.2"],\ - ["eslint-plugin-prettier", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:3.4.1"],\ - ["eslint-plugin-react", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:7.26.0"],\ - ["eslint-plugin-react-hooks", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:4.2.0"],\ + ["eslint", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:9.13.0"],\ + ["eslint-plugin-react-compiler", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:19.0.0-beta-8a03594-20241020"],\ ["graphql", "npm:16.8.1"],\ ["history", "npm:5.2.0"],\ ["husky", "npm:5.1.1"],\ @@ -27660,6 +27946,7 @@ const RAW_RUNTIME_STATE = ["sass", "npm:1.56.1"],\ ["tsc-watch", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:6.0.4"],\ ["typescript", "patch:typescript@npm%3A5.1.6#optional!builtin::version=5.1.6&hash=5da071"],\ + ["typescript-eslint", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:8.11.0"],\ ["vite", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:5.4.8"],\ ["vitest", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:1.5.0"],\ ["vitest-fetch-mock", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:0.2.2"]\ @@ -28914,23 +29201,6 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["string.prototype.matchall", [\ - ["npm:4.0.5", {\ - "packageLocation": "./.yarn/cache/string.prototype.matchall-npm-4.0.5-d1090aaa50-ac7d7ec373.zip/node_modules/string.prototype.matchall/",\ - "packageDependencies": [\ - ["string.prototype.matchall", "npm:4.0.5"],\ - ["call-bind", "npm:1.0.2"],\ - ["define-properties", "npm:1.1.3"],\ - ["es-abstract", "npm:1.18.6"],\ - ["get-intrinsic", "npm:1.1.1"],\ - ["has-symbols", "npm:1.0.2"],\ - ["internal-slot", "npm:1.0.3"],\ - ["regexp.prototype.flags", "npm:1.3.1"],\ - ["side-channel", "npm:1.0.4"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["string.prototype.trim", [\ ["npm:1.2.9", {\ "packageLocation": "./.yarn/cache/string.prototype.trim-npm-1.2.9-7b24b35971-b2170903de.zip/node_modules/string.prototype.trim/",\ @@ -29419,19 +29689,6 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["table", [\ - ["npm:6.7.1", {\ - "packageLocation": "./.yarn/cache/table-npm-6.7.1-7d70e55c6d-654090e317.zip/node_modules/table/",\ - "packageDependencies": [\ - ["table", "npm:6.7.1"],\ - ["ajv", "npm:8.6.3"],\ - ["lodash.clonedeep", "npm:4.5.0"],\ - ["lodash.truncate", "npm:4.4.2"],\ - ["slice-ansi", "npm:4.0.0"],\ - ["string-width", "npm:4.2.3"],\ - ["strip-ansi", "npm:6.0.1"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:6.8.2", {\ "packageLocation": "./.yarn/cache/table-npm-6.8.2-e33ecc3c54-2946162eb8.zip/node_modules/table/",\ "packageDependencies": [\ @@ -29964,6 +30221,15 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["trim-right", [\ + ["npm:1.0.1", {\ + "packageLocation": "./.yarn/cache/trim-right-npm-1.0.1-8ccc457eb4-9120af534e.zip/node_modules/trim-right/",\ + "packageDependencies": [\ + ["trim-right", "npm:1.0.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["trough", [\ ["npm:2.2.0", {\ "packageLocation": "./.yarn/cache/trough-npm-2.2.0-270c93d515-999c1cb3db.zip/node_modules/trough/",\ @@ -29973,6 +30239,41 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["ts-api-utils", [\ + ["npm:1.3.0", {\ + "packageLocation": "./.yarn/cache/ts-api-utils-npm-1.3.0-33457908f8-3ee44faa24.zip/node_modules/ts-api-utils/",\ + "packageDependencies": [\ + ["ts-api-utils", "npm:1.3.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:21f0eda927351d0d854685e6f8ce2c388ea97fd03b53f32925ef60c1bbe6901fa393627af856f09ec4a39105d6a8dc0925bcf00055c127f1eab4b5863d74d189#npm:1.3.0", {\ + "packageLocation": "./.yarn/__virtual__/ts-api-utils-virtual-27012a8406/0/cache/ts-api-utils-npm-1.3.0-33457908f8-3ee44faa24.zip/node_modules/ts-api-utils/",\ + "packageDependencies": [\ + ["ts-api-utils", "virtual:21f0eda927351d0d854685e6f8ce2c388ea97fd03b53f32925ef60c1bbe6901fa393627af856f09ec4a39105d6a8dc0925bcf00055c127f1eab4b5863d74d189#npm:1.3.0"],\ + ["@types/typescript", null],\ + ["typescript", "patch:typescript@npm%3A5.1.6#optional!builtin::version=5.1.6&hash=5da071"]\ + ],\ + "packagePeers": [\ + "@types/typescript",\ + "typescript"\ + ],\ + "linkType": "HARD"\ + }],\ + ["virtual:dc84c13c2ceb2c07e4704710bfe23b0460810cee356212ad1bf5ad46a7626550f5cf59fab89f8e381596ccc8d98632d52b1834f59abc56cd3bf80525d8d172a5#npm:1.3.0", {\ + "packageLocation": "./.yarn/__virtual__/ts-api-utils-virtual-5584f91a5b/0/cache/ts-api-utils-npm-1.3.0-33457908f8-3ee44faa24.zip/node_modules/ts-api-utils/",\ + "packageDependencies": [\ + ["ts-api-utils", "virtual:dc84c13c2ceb2c07e4704710bfe23b0460810cee356212ad1bf5ad46a7626550f5cf59fab89f8e381596ccc8d98632d52b1834f59abc56cd3bf80525d8d172a5#npm:1.3.0"],\ + ["@types/typescript", null],\ + ["typescript", null]\ + ],\ + "packagePeers": [\ + "@types/typescript",\ + "typescript"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["ts-invariant", [\ ["npm:0.10.3", {\ "packageLocation": "./.yarn/cache/ts-invariant-npm-0.10.3-4657a5b439-bb07d56fe4.zip/node_modules/ts-invariant/",\ @@ -30113,17 +30414,6 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["tsconfig-paths", [\ - ["npm:3.11.0", {\ - "packageLocation": "./.yarn/cache/tsconfig-paths-npm-3.11.0-c94f1e17fb-b0278a69db.zip/node_modules/tsconfig-paths/",\ - "packageDependencies": [\ - ["tsconfig-paths", "npm:3.11.0"],\ - ["@types/json5", "npm:0.0.29"],\ - ["json5", "npm:1.0.2"],\ - ["minimist", "npm:1.2.8"],\ - ["strip-bom", "npm:3.0.0"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:4.2.0", {\ "packageLocation": "./.yarn/cache/tsconfig-paths-npm-4.2.0-ac1edf8677-5e55cc2fb6.zip/node_modules/tsconfig-paths/",\ "packageDependencies": [\ @@ -30172,43 +30462,6 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["tsutils", [\ - ["npm:3.21.0", {\ - "packageLocation": "./.yarn/cache/tsutils-npm-3.21.0-347e6636c5-ea036bec1d.zip/node_modules/tsutils/",\ - "packageDependencies": [\ - ["tsutils", "npm:3.21.0"]\ - ],\ - "linkType": "SOFT"\ - }],\ - ["virtual:00b4ef43974b48cdd5893080a053eec91e9ef1fca91e59f69a74ddfcb84a1deacd18f705c8005d6e9bbbc0e92fb8fb972360add0597b0e665ff7c61a804ab534#npm:3.21.0", {\ - "packageLocation": "./.yarn/__virtual__/tsutils-virtual-1d56720f13/0/cache/tsutils-npm-3.21.0-347e6636c5-ea036bec1d.zip/node_modules/tsutils/",\ - "packageDependencies": [\ - ["tsutils", "virtual:00b4ef43974b48cdd5893080a053eec91e9ef1fca91e59f69a74ddfcb84a1deacd18f705c8005d6e9bbbc0e92fb8fb972360add0597b0e665ff7c61a804ab534#npm:3.21.0"],\ - ["@types/typescript", null],\ - ["tslib", "npm:1.14.1"],\ - ["typescript", null]\ - ],\ - "packagePeers": [\ - "@types/typescript",\ - "typescript"\ - ],\ - "linkType": "HARD"\ - }],\ - ["virtual:32a8f68782f1dd871e91c0741ba32c0e7686842571495d92f7000a3e664fe41f11a6286864628fb131b1be80acabeed54e916caa3fea20055bf1060058c1aba0#npm:3.21.0", {\ - "packageLocation": "./.yarn/__virtual__/tsutils-virtual-2daea50d90/0/cache/tsutils-npm-3.21.0-347e6636c5-ea036bec1d.zip/node_modules/tsutils/",\ - "packageDependencies": [\ - ["tsutils", "virtual:32a8f68782f1dd871e91c0741ba32c0e7686842571495d92f7000a3e664fe41f11a6286864628fb131b1be80acabeed54e916caa3fea20055bf1060058c1aba0#npm:3.21.0"],\ - ["@types/typescript", null],\ - ["tslib", "npm:1.14.1"],\ - ["typescript", "patch:typescript@npm%3A5.1.6#optional!builtin::version=5.1.6&hash=5da071"]\ - ],\ - "packagePeers": [\ - "@types/typescript",\ - "typescript"\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["tuf-js", [\ ["npm:2.2.1", {\ "packageLocation": "./.yarn/cache/tuf-js-npm-2.2.1-3baf642bf9-4c057f4f0c.zip/node_modules/tuf-js/",\ @@ -30293,13 +30546,6 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "HARD"\ }],\ - ["npm:0.20.2", {\ - "packageLocation": "./.yarn/cache/type-fest-npm-0.20.2-b36432617f-8907e16284.zip/node_modules/type-fest/",\ - "packageDependencies": [\ - ["type-fest", "npm:0.20.2"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:0.21.3", {\ "packageLocation": "./.yarn/cache/type-fest-npm-0.21.3-5ff2a9c6fd-f4254070d9.zip/node_modules/type-fest/",\ "packageDependencies": [\ @@ -30428,6 +30674,31 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["typescript-eslint", [\ + ["npm:8.11.0", {\ + "packageLocation": "./.yarn/cache/typescript-eslint-npm-8.11.0-5ec888403e-b95b78b52a.zip/node_modules/typescript-eslint/",\ + "packageDependencies": [\ + ["typescript-eslint", "npm:8.11.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:8.11.0", {\ + "packageLocation": "./.yarn/__virtual__/typescript-eslint-virtual-9a1df3d3b5/0/cache/typescript-eslint-npm-8.11.0-5ec888403e-b95b78b52a.zip/node_modules/typescript-eslint/",\ + "packageDependencies": [\ + ["typescript-eslint", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:8.11.0"],\ + ["@types/typescript", null],\ + ["@typescript-eslint/eslint-plugin", "virtual:9a1df3d3b5d03ce4b617810d06b0ecbf1cc4073b45db4d035f088271ad7c642854fa03d1b125b55fe6cd55d49499f71cf4fb61d2f94cb11e68402066d7271da4#npm:8.11.0"],\ + ["@typescript-eslint/parser", "virtual:9a1df3d3b5d03ce4b617810d06b0ecbf1cc4073b45db4d035f088271ad7c642854fa03d1b125b55fe6cd55d49499f71cf4fb61d2f94cb11e68402066d7271da4#npm:8.11.0"],\ + ["@typescript-eslint/utils", "virtual:9a1df3d3b5d03ce4b617810d06b0ecbf1cc4073b45db4d035f088271ad7c642854fa03d1b125b55fe6cd55d49499f71cf4fb61d2f94cb11e68402066d7271da4#npm:8.11.0"],\ + ["typescript", "patch:typescript@npm%3A5.1.6#optional!builtin::version=5.1.6&hash=5da071"]\ + ],\ + "packagePeers": [\ + "@types/typescript",\ + "typescript"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["ua-parser-js", [\ ["npm:0.7.33", {\ "packageLocation": "./.yarn/cache/ua-parser-js-npm-0.7.33-4d3f482ab6-b648d065a8.zip/node_modules/ua-parser-js/",\ @@ -30774,6 +31045,28 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ + ["npm:1.1.1", {\ + "packageLocation": "./.yarn/cache/update-browserslist-db-npm-1.1.1-16e34017b1-7678dd8609.zip/node_modules/update-browserslist-db/",\ + "packageDependencies": [\ + ["update-browserslist-db", "npm:1.1.1"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:0bc5f13e3b070c660ccf3396ff30b6fc44ede2343c6543d593ce4624807ab1bafdbcd764ac20b4d55e6854e63e2568f1c6d09371eb639766b95e2d401b5b05cb#npm:1.1.1", {\ + "packageLocation": "./.yarn/__virtual__/update-browserslist-db-virtual-594dc17320/0/cache/update-browserslist-db-npm-1.1.1-16e34017b1-7678dd8609.zip/node_modules/update-browserslist-db/",\ + "packageDependencies": [\ + ["update-browserslist-db", "virtual:0bc5f13e3b070c660ccf3396ff30b6fc44ede2343c6543d593ce4624807ab1bafdbcd764ac20b4d55e6854e63e2568f1c6d09371eb639766b95e2d401b5b05cb#npm:1.1.1"],\ + ["@types/browserslist", null],\ + ["browserslist", "npm:4.24.2"],\ + ["escalade", "npm:3.2.0"],\ + ["picocolors", "npm:1.1.0"]\ + ],\ + "packagePeers": [\ + "@types/browserslist",\ + "browserslist"\ + ],\ + "linkType": "HARD"\ + }],\ ["virtual:e2170a875bba2f8fa9e93e47c65f2f250097e101a59d95ea6fd852f32965e8cd6cef3b5662aa7295279d5bc60c9a612ddb8515c7dd1b7e8fb9984dee1823e7d6#npm:1.0.11", {\ "packageLocation": "./.yarn/__virtual__/update-browserslist-db-virtual-e6fb63e03d/0/cache/update-browserslist-db-npm-1.0.11-2c8e64258f-cc1c7a38d1.zip/node_modules/update-browserslist-db/",\ "packageDependencies": [\ @@ -30944,15 +31237,6 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["v8-compile-cache", [\ - ["npm:2.3.0", {\ - "packageLocation": "./.yarn/cache/v8-compile-cache-npm-2.3.0-961375f150-7de7423db6.zip/node_modules/v8-compile-cache/",\ - "packageDependencies": [\ - ["v8-compile-cache", "npm:2.3.0"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["v8-to-istanbul", [\ ["npm:9.1.0", {\ "packageLocation": "./.yarn/cache/v8-to-istanbul-npm-9.1.0-04cd324682-95811ff2f1.zip/node_modules/v8-to-istanbul/",\ @@ -31263,7 +31547,7 @@ const RAW_RUNTIME_STATE = "packageDependencies": [\ ["vite-node", "npm:2.1.2"],\ ["cac", "npm:6.7.14"],\ - ["debug", "virtual:66f1833a7f25c14a667c46d25bee5f886843d59ce7f59a83a3286a64ae6c3fb2a01a0364ec774a5f5ed6d7b620659e7f01e24fa402a524101f3fc797ba83aa48#npm:4.3.7"],\ + ["debug", "virtual:6230e12b1d7dee1735a865cef131ea49c043e7f202fd08b14ceb90686e406b76a07840fc9510f1069465ad9695242b42830fc7fea7b01648a261463b7848122f#npm:4.3.7"],\ ["pathe", "npm:1.1.2"],\ ["vite", "virtual:231bd830519c975d6e142167646edd028538c46a384a9b8698b9b3218f572b63d5b2815d19e56e1bc499a4cdeadc44536b8e95322dcd5751eea4f6815a445aa4#npm:5.2.10"]\ ],\ @@ -31306,7 +31590,7 @@ const RAW_RUNTIME_STATE = ["@vitest/ui", null],\ ["@vitest/utils", "npm:2.1.2"],\ ["chai", "npm:5.1.1"],\ - ["debug", "virtual:66f1833a7f25c14a667c46d25bee5f886843d59ce7f59a83a3286a64ae6c3fb2a01a0364ec774a5f5ed6d7b620659e7f01e24fa402a524101f3fc797ba83aa48#npm:4.3.7"],\ + ["debug", "virtual:6230e12b1d7dee1735a865cef131ea49c043e7f202fd08b14ceb90686e406b76a07840fc9510f1069465ad9695242b42830fc7fea7b01648a261463b7848122f#npm:4.3.7"],\ ["happy-dom", null],\ ["jsdom", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:24.0.0"],\ ["magic-string", "npm:0.30.11"],\ @@ -31356,7 +31640,7 @@ const RAW_RUNTIME_STATE = ["@vitest/ui", null],\ ["@vitest/utils", "npm:2.1.2"],\ ["chai", "npm:5.1.1"],\ - ["debug", "virtual:66f1833a7f25c14a667c46d25bee5f886843d59ce7f59a83a3286a64ae6c3fb2a01a0364ec774a5f5ed6d7b620659e7f01e24fa402a524101f3fc797ba83aa48#npm:4.3.7"],\ + ["debug", "virtual:6230e12b1d7dee1735a865cef131ea49c043e7f202fd08b14ceb90686e406b76a07840fc9510f1069465ad9695242b42830fc7fea7b01648a261463b7848122f#npm:4.3.7"],\ ["happy-dom", null],\ ["jsdom", "virtual:dc3fc578bfa5e06182a4d2be39ede0bc5b74940b1ffe0d70c26892ab140a4699787750fba175dc306292e80b4aa2c8c5f68c2a821e69b2c37e360c0dff36ff66#npm:24.0.0"],\ ["magic-string", "npm:0.30.11"],\ @@ -31406,7 +31690,7 @@ const RAW_RUNTIME_STATE = ["@vitest/ui", null],\ ["@vitest/utils", "npm:2.1.2"],\ ["chai", "npm:5.1.1"],\ - ["debug", "virtual:66f1833a7f25c14a667c46d25bee5f886843d59ce7f59a83a3286a64ae6c3fb2a01a0364ec774a5f5ed6d7b620659e7f01e24fa402a524101f3fc797ba83aa48#npm:4.3.7"],\ + ["debug", "virtual:6230e12b1d7dee1735a865cef131ea49c043e7f202fd08b14ceb90686e406b76a07840fc9510f1069465ad9695242b42830fc7fea7b01648a261463b7848122f#npm:4.3.7"],\ ["happy-dom", null],\ ["jsdom", null],\ ["magic-string", "npm:0.30.11"],\ @@ -31507,7 +31791,7 @@ const RAW_RUNTIME_STATE = ["@vitest/ui", null],\ ["@vitest/utils", "npm:2.1.2"],\ ["chai", "npm:5.1.1"],\ - ["debug", "virtual:66f1833a7f25c14a667c46d25bee5f886843d59ce7f59a83a3286a64ae6c3fb2a01a0364ec774a5f5ed6d7b620659e7f01e24fa402a524101f3fc797ba83aa48#npm:4.3.7"],\ + ["debug", "virtual:6230e12b1d7dee1735a865cef131ea49c043e7f202fd08b14ceb90686e406b76a07840fc9510f1069465ad9695242b42830fc7fea7b01648a261463b7848122f#npm:4.3.7"],\ ["happy-dom", null],\ ["jsdom", null],\ ["magic-string", "npm:0.30.11"],\ @@ -32374,6 +32658,57 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ + ["zod", [\ + ["npm:3.23.8", {\ + "packageLocation": "./.yarn/cache/zod-npm-3.23.8-11c49c85b5-846fd73e1a.zip/node_modules/zod/",\ + "packageDependencies": [\ + ["zod", "npm:3.23.8"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["zod-validation-error", [\ + ["npm:2.1.0", {\ + "packageLocation": "./.yarn/cache/zod-validation-error-npm-2.1.0-220f5f6e0b-fdd3a9fdf1.zip/node_modules/zod-validation-error/",\ + "packageDependencies": [\ + ["zod-validation-error", "npm:2.1.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["npm:3.4.0", {\ + "packageLocation": "./.yarn/cache/zod-validation-error-npm-3.4.0-1c97ee8445-b98b1bbba1.zip/node_modules/zod-validation-error/",\ + "packageDependencies": [\ + ["zod-validation-error", "npm:3.4.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:4b25341317c5e70044213355008ad5fda61fdd924edee3abe9799bcab4e7b4e439ebce5a11e72d8eeef71133675c4be9251c62912387d44f7349202006896786#npm:3.4.0", {\ + "packageLocation": "./.yarn/__virtual__/zod-validation-error-virtual-a81bdc2218/0/cache/zod-validation-error-npm-3.4.0-1c97ee8445-b98b1bbba1.zip/node_modules/zod-validation-error/",\ + "packageDependencies": [\ + ["zod-validation-error", "virtual:4b25341317c5e70044213355008ad5fda61fdd924edee3abe9799bcab4e7b4e439ebce5a11e72d8eeef71133675c4be9251c62912387d44f7349202006896786#npm:3.4.0"],\ + ["@types/zod", null],\ + ["zod", "npm:3.23.8"]\ + ],\ + "packagePeers": [\ + "@types/zod",\ + "zod"\ + ],\ + "linkType": "HARD"\ + }],\ + ["virtual:afe777aeab9b9ba4d4b29ce0376d28c61aee88fc6439705771e53a6095308a7e9029d59f34aa658d1537bd5d82346b357005b01090b580916efd8fde2407f2a5#npm:2.1.0", {\ + "packageLocation": "./.yarn/__virtual__/zod-validation-error-virtual-54d98e49b1/0/cache/zod-validation-error-npm-2.1.0-220f5f6e0b-fdd3a9fdf1.zip/node_modules/zod-validation-error/",\ + "packageDependencies": [\ + ["zod-validation-error", "virtual:afe777aeab9b9ba4d4b29ce0376d28c61aee88fc6439705771e53a6095308a7e9029d59f34aa658d1537bd5d82346b357005b01090b580916efd8fde2407f2a5#npm:2.1.0"],\ + ["@types/zod", null],\ + ["zod", "npm:3.23.8"]\ + ],\ + "packagePeers": [\ + "@types/zod",\ + "zod"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["zwitch", [\ ["npm:2.0.4", {\ "packageLocation": "./.yarn/cache/zwitch-npm-2.0.4-13220031e2-f22ec5fc2d.zip/node_modules/zwitch/",\ diff --git a/eslint.config.mjs b/eslint.config.mjs new file mode 100644 index 0000000000..1793d2e220 --- /dev/null +++ b/eslint.config.mjs @@ -0,0 +1,53 @@ +// @ts-check +import eslint from "@eslint/js" +import tseslint from "typescript-eslint" +import reactCompiler from "eslint-plugin-react-compiler" + +export default tseslint.config({ + ignores: [ + "**/build/**", + "**/dist/**", + "**/node_modules/**", + ".yarn/*", + ".pnp.cjs", + ".pnp.loader.mjs", + "**/coverage/**", + "packages/openneuro-app/pluralize-esm.js", + "packages/openneuro-app/src/scripts/utils/schema-validator.js", + ], +}, { + files: [ + "packages/**/*.ts", + "packages/**/*.tsx", + "packages/**/*.jsx", + "packages/**/*.js", + ], + extends: [ + eslint.configs.recommended, + ...tseslint.configs.recommended, + ], + rules: { + "@typescript-eslint/array-type": "error", + "@typescript-eslint/consistent-type-imports": "error", + "no-console": "error", + "@typescript-eslint/no-unused-vars": [ + "error", + { + "argsIgnorePattern": "^_", + "varsIgnorePattern": "^_", + "caughtErrorsIgnorePattern": "^_", + }, + ], + }, +}, { + files: ["packages/**/*.tsx", "packages/**/*.jsx"], + plugins: { + "react-compiler": reactCompiler, + }, + rules: { + "react-compiler/react-compiler": "error", + }, +}, { + files: ["packages/**/*.js"], + ...tseslint.configs.disableTypeChecked, +}) diff --git a/package.json b/package.json index 1183dde7de..207b724a9d 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "test": "vitest", "coverage": "vitest --coverage", "ci-coverage": "vitest --coverage && codecov", - "lint": "eslint --ext .jsx --ext .js --ext .ts --ext .tsx packages/*/src", + "lint": "eslint", "openneuro": "node packages/openneuro-cli/src", "_postinstall": "husky install", "prepublish": "rm -fr packages/*/dist .build-cache/ && yarn build", @@ -17,22 +17,18 @@ }, "devDependencies": { "@elastic/apm-rum-react": "2.0.2", + "@eslint/js": "^9.13.0", "@sentry/cli": "1.37.4", "@testing-library/jest-dom": "6.1.3", "@types/ioredis-mock": "^8.2.2", "@types/jsdom": "^16", "@types/testing-library__jest-dom": "5.14.5", - "@typescript-eslint/eslint-plugin": "^4.19.0", - "@typescript-eslint/parser": "^4.19.0", "@vitest/coverage-v8": "^1.5.0", "@yarnpkg/pnpify": "^3.1.1-rc.8", + "babel-plugin-react-compiler": "19.0.0-beta-8a03594-20241020", "codecov": "3.8.3", - "eslint": "7.23.0", - "eslint-config-prettier": "^8.1.0", - "eslint-plugin-import": "^2.22.1", - "eslint-plugin-prettier": "^3.3.1", - "eslint-plugin-react": "^7.23.1", - "eslint-plugin-react-hooks": "^4.2.0", + "eslint": "^9.13.0", + "eslint-plugin-react-compiler": "19.0.0-beta-8a03594-20241020", "graphql": "16.8.1", "history": "5.2.0", "husky": "5.1.1", @@ -48,6 +44,7 @@ "sass": "^1.56.1", "tsc-watch": "6.0.4", "typescript": "5.1.6", + "typescript-eslint": "^8.11.0", "vite": "5.4.8", "vitest": "1.5.0", "vitest-fetch-mock": "0.2.2" diff --git a/tsconfig.json b/tsconfig.json index af8e1e4660..262c1b024b 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -5,11 +5,11 @@ "jsx": "react", "downlevelIteration": true, "esModuleInterop": true, - "target": "es2020", + "target": "es2022", "module": "commonjs", "moduleResolution": "node", "resolveJsonModule": true, - "lib": ["es2021", "dom", "webworker"], + "lib": ["es2022", "dom", "webworker"], "skipLibCheck": true, "incremental": true, "composite": true, diff --git a/yarn.lock b/yarn.lock index 4c5a5a3764..8e13794d66 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1909,15 +1909,6 @@ __metadata: languageName: node linkType: hard -"@babel/code-frame@npm:7.12.11": - version: 7.12.11 - resolution: "@babel/code-frame@npm:7.12.11" - dependencies: - "@babel/highlight": "npm:^7.10.4" - checksum: 10/d243f0b1e475f5953ae452f70c0b4bd47a106df59733631b9ae36fb9ad1ae068c3a11d936ed22117084ec7439e843a4b75700922b507aac723ad84a257ae94f9 - languageName: node - linkType: hard - "@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.10.4": version: 7.14.5 resolution: "@babel/code-frame@npm:7.14.5" @@ -1946,6 +1937,16 @@ __metadata: languageName: node linkType: hard +"@babel/code-frame@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/code-frame@npm:7.25.9" + dependencies: + "@babel/highlight": "npm:^7.25.9" + picocolors: "npm:^1.0.0" + checksum: 10/96d69a570d0df82daedeb3d26ca508970bb31de83580c36c9605e7e7c0aae307ae17bc42609363016f0bdab12e991cebca3c02bf10765036b136bfe7281aee9a + languageName: node + linkType: hard + "@babel/compat-data@npm:^7.22.9": version: 7.22.9 resolution: "@babel/compat-data@npm:7.22.9" @@ -1953,6 +1954,13 @@ __metadata: languageName: node linkType: hard +"@babel/compat-data@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/compat-data@npm:7.25.9" + checksum: 10/76d06c56e1d1ab661dc90870d70d950c7df5514d2abfb115387ea0790ceeb1924ee3a88c959345f235aad219cfb13ff03c4458081ac350d47fc135a7ba2d49d3 + languageName: node + linkType: hard + "@babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3": version: 7.22.17 resolution: "@babel/core@npm:7.22.17" @@ -1976,6 +1984,42 @@ __metadata: languageName: node linkType: hard +"@babel/core@npm:^7.24.4": + version: 7.25.9 + resolution: "@babel/core@npm:7.25.9" + dependencies: + "@ampproject/remapping": "npm:^2.2.0" + "@babel/code-frame": "npm:^7.25.9" + "@babel/generator": "npm:^7.25.9" + "@babel/helper-compilation-targets": "npm:^7.25.9" + "@babel/helper-module-transforms": "npm:^7.25.9" + "@babel/helpers": "npm:^7.25.9" + "@babel/parser": "npm:^7.25.9" + "@babel/template": "npm:^7.25.9" + "@babel/traverse": "npm:^7.25.9" + "@babel/types": "npm:^7.25.9" + convert-source-map: "npm:^2.0.0" + debug: "npm:^4.1.0" + gensync: "npm:^1.0.0-beta.2" + json5: "npm:^2.2.3" + semver: "npm:^6.3.1" + checksum: 10/92cc69d9d59a5eb057527e69c41db46f05d0a8eeeb5ebab3f34e5ad040b74f34f20a4d97c3f3ede6476537cac93d2b46e3915b572269d2a039301dab068fd2e8 + languageName: node + linkType: hard + +"@babel/generator@npm:7.2.0": + version: 7.2.0 + resolution: "@babel/generator@npm:7.2.0" + dependencies: + "@babel/types": "npm:^7.2.0" + jsesc: "npm:^2.5.1" + lodash: "npm:^4.17.10" + source-map: "npm:^0.5.0" + trim-right: "npm:^1.0.1" + checksum: 10/61520c478f52eff44eb3b460ae976f800eb06933f366890274e1a2ef1b7105a3271cd645915362fbc5646cd1e6688a4165b32e60cb6fbfa0715428433fdfba89 + languageName: node + linkType: hard + "@babel/generator@npm:^7.22.15, @babel/generator@npm:^7.7.2": version: 7.22.15 resolution: "@babel/generator@npm:7.22.15" @@ -1988,6 +2032,27 @@ __metadata: languageName: node linkType: hard +"@babel/generator@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/generator@npm:7.25.9" + dependencies: + "@babel/types": "npm:^7.25.9" + "@jridgewell/gen-mapping": "npm:^0.3.5" + "@jridgewell/trace-mapping": "npm:^0.3.25" + jsesc: "npm:^3.0.2" + checksum: 10/eb36706c62ea77a09604077b84fae4e25d103cce58a15926d9d8b62d90c5fa69e35962515c05e78b5a975848ef772406dd79e2d4e83851bf9f7517b197a1b19d + languageName: node + linkType: hard + +"@babel/helper-annotate-as-pure@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-annotate-as-pure@npm:7.25.9" + dependencies: + "@babel/types": "npm:^7.25.9" + checksum: 10/41edda10df1ae106a9b4fe617bf7c6df77db992992afd46192534f5cff29f9e49a303231733782dd65c5f9409714a529f215325569f14282046e9d3b7a1ffb6c + languageName: node + linkType: hard + "@babel/helper-compilation-targets@npm:^7.22.15": version: 7.22.15 resolution: "@babel/helper-compilation-targets@npm:7.22.15" @@ -2001,6 +2066,36 @@ __metadata: languageName: node linkType: hard +"@babel/helper-compilation-targets@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-compilation-targets@npm:7.25.9" + dependencies: + "@babel/compat-data": "npm:^7.25.9" + "@babel/helper-validator-option": "npm:^7.25.9" + browserslist: "npm:^4.24.0" + lru-cache: "npm:^5.1.1" + semver: "npm:^6.3.1" + checksum: 10/8053fbfc21e8297ab55c8e7f9f119e4809fa7e505268691e1bedc2cf5e7a5a7de8c60ad13da2515378621b7601c42e101d2d679904da395fa3806a1edef6b92e + languageName: node + linkType: hard + +"@babel/helper-create-class-features-plugin@npm:^7.18.6": + version: 7.25.9 + resolution: "@babel/helper-create-class-features-plugin@npm:7.25.9" + dependencies: + "@babel/helper-annotate-as-pure": "npm:^7.25.9" + "@babel/helper-member-expression-to-functions": "npm:^7.25.9" + "@babel/helper-optimise-call-expression": "npm:^7.25.9" + "@babel/helper-replace-supers": "npm:^7.25.9" + "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.25.9" + "@babel/traverse": "npm:^7.25.9" + semver: "npm:^6.3.1" + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 10/d1d47a7b5fd317c6cb1446b0e4f4892c19ddaa69ea0229f04ba8bea5f273fc8168441e7114ad36ff919f2d310f97310cec51adc79002e22039a7e1640ccaf248 + languageName: node + linkType: hard + "@babel/helper-environment-visitor@npm:^7.22.5": version: 7.22.5 resolution: "@babel/helper-environment-visitor@npm:7.22.5" @@ -2027,6 +2122,16 @@ __metadata: languageName: node linkType: hard +"@babel/helper-member-expression-to-functions@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-member-expression-to-functions@npm:7.25.9" + dependencies: + "@babel/traverse": "npm:^7.25.9" + "@babel/types": "npm:^7.25.9" + checksum: 10/ef8cc1c1e600b012b312315f843226545a1a89f25d2f474ce2503fd939ca3f8585180f291a3a13efc56cf13eddc1d41a3a040eae9a521838fd59a6d04cc82490 + languageName: node + linkType: hard + "@babel/helper-module-imports@npm:^7.16.7": version: 7.22.5 resolution: "@babel/helper-module-imports@npm:7.22.5" @@ -2045,6 +2150,16 @@ __metadata: languageName: node linkType: hard +"@babel/helper-module-imports@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-module-imports@npm:7.25.9" + dependencies: + "@babel/traverse": "npm:^7.25.9" + "@babel/types": "npm:^7.25.9" + checksum: 10/e090be5dee94dda6cd769972231b21ddfae988acd76b703a480ac0c96f3334557d70a965bf41245d6ee43891e7571a8b400ccf2b2be5803351375d0f4e5bcf08 + languageName: node + linkType: hard + "@babel/helper-module-transforms@npm:^7.22.17": version: 7.22.17 resolution: "@babel/helper-module-transforms@npm:7.22.17" @@ -2060,6 +2175,29 @@ __metadata: languageName: node linkType: hard +"@babel/helper-module-transforms@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-module-transforms@npm:7.25.9" + dependencies: + "@babel/helper-module-imports": "npm:^7.25.9" + "@babel/helper-simple-access": "npm:^7.25.9" + "@babel/helper-validator-identifier": "npm:^7.25.9" + "@babel/traverse": "npm:^7.25.9" + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 10/6a9dc7da67f901a511ef26b99fd1b395946d466495159cbf80c092345ef3238306296ee76b204aea5f2675713130c58760c46b1ff3b6f6b19f7f8afcaa19d8ca + languageName: node + linkType: hard + +"@babel/helper-optimise-call-expression@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-optimise-call-expression@npm:7.25.9" + dependencies: + "@babel/types": "npm:^7.25.9" + checksum: 10/f09d0ad60c0715b9a60c31841b3246b47d67650c512ce85bbe24a3124f1a4d66377df793af393273bc6e1015b0a9c799626c48e53747581c1582b99167cc65dc + languageName: node + linkType: hard + "@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.22.5, @babel/helper-plugin-utils@npm:^7.8.0": version: 7.22.5 resolution: "@babel/helper-plugin-utils@npm:7.22.5" @@ -2067,6 +2205,26 @@ __metadata: languageName: node linkType: hard +"@babel/helper-plugin-utils@npm:^7.18.6": + version: 7.25.9 + resolution: "@babel/helper-plugin-utils@npm:7.25.9" + checksum: 10/e347d87728b1ab10b6976d46403941c8f9008c045ea6d99997a7ffca7b852dc34b6171380f7b17edf94410e0857ff26f3a53d8618f11d73744db86e8ca9b8c64 + languageName: node + linkType: hard + +"@babel/helper-replace-supers@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-replace-supers@npm:7.25.9" + dependencies: + "@babel/helper-member-expression-to-functions": "npm:^7.25.9" + "@babel/helper-optimise-call-expression": "npm:^7.25.9" + "@babel/traverse": "npm:^7.25.9" + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 10/8ebf787016953e4479b99007bac735c9c860822fafc51bc3db67bc53814539888797238c81fa8b948b6da897eb7b1c1d4f04df11e501a7f0596b356be02de2ab + languageName: node + linkType: hard + "@babel/helper-simple-access@npm:^7.22.5": version: 7.22.5 resolution: "@babel/helper-simple-access@npm:7.22.5" @@ -2076,6 +2234,26 @@ __metadata: languageName: node linkType: hard +"@babel/helper-simple-access@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-simple-access@npm:7.25.9" + dependencies: + "@babel/traverse": "npm:^7.25.9" + "@babel/types": "npm:^7.25.9" + checksum: 10/a16a6cfa5e8ac7144e856bcdaaf0022cf5de028fc0c56ce21dd664a6e900999a4285c587a209f2acf9de438c0d60bfb497f5f34aa34cbaf29da3e2f8d8d7feb7 + languageName: node + linkType: hard + +"@babel/helper-skip-transparent-expression-wrappers@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-skip-transparent-expression-wrappers@npm:7.25.9" + dependencies: + "@babel/traverse": "npm:^7.25.9" + "@babel/types": "npm:^7.25.9" + checksum: 10/fdbb5248932198bc26daa6abf0d2ac42cab9c2dbb75b7e9f40d425c8f28f09620b886d40e7f9e4e08ffc7aaa2cefe6fc2c44be7c20e81f7526634702fb615bdc + languageName: node + linkType: hard + "@babel/helper-split-export-declaration@npm:^7.22.6": version: 7.22.6 resolution: "@babel/helper-split-export-declaration@npm:7.22.6" @@ -2099,6 +2277,13 @@ __metadata: languageName: node linkType: hard +"@babel/helper-string-parser@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-string-parser@npm:7.25.9" + checksum: 10/c28656c52bd48e8c1d9f3e8e68ecafd09d949c57755b0d353739eb4eae7ba4f7e67e92e4036f1cd43378cc1397a2c943ed7bcaf5949b04ab48607def0258b775 + languageName: node + linkType: hard + "@babel/helper-validator-identifier@npm:^7.14.5": version: 7.15.7 resolution: "@babel/helper-validator-identifier@npm:7.15.7" @@ -2134,6 +2319,13 @@ __metadata: languageName: node linkType: hard +"@babel/helper-validator-identifier@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-validator-identifier@npm:7.25.9" + checksum: 10/3f9b649be0c2fd457fa1957b694b4e69532a668866b8a0d81eabfa34ba16dbf3107b39e0e7144c55c3c652bf773ec816af8df4a61273a2bb4eb3145ca9cf478e + languageName: node + linkType: hard + "@babel/helper-validator-option@npm:^7.22.15": version: 7.22.15 resolution: "@babel/helper-validator-option@npm:7.22.15" @@ -2141,6 +2333,13 @@ __metadata: languageName: node linkType: hard +"@babel/helper-validator-option@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-validator-option@npm:7.25.9" + checksum: 10/9491b2755948ebbdd68f87da907283698e663b5af2d2b1b02a2765761974b1120d5d8d49e9175b167f16f72748ffceec8c9cf62acfbee73f4904507b246e2b3d + languageName: node + linkType: hard + "@babel/helpers@npm:^7.22.15": version: 7.22.15 resolution: "@babel/helpers@npm:7.22.15" @@ -2152,7 +2351,17 @@ __metadata: languageName: node linkType: hard -"@babel/highlight@npm:^7.10.4, @babel/highlight@npm:^7.14.5": +"@babel/helpers@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helpers@npm:7.25.9" + dependencies: + "@babel/template": "npm:^7.25.9" + "@babel/types": "npm:^7.25.9" + checksum: 10/83c0df8f45850c5621be660b69c33d93c02832162a9109bb9a03de32a2b6477fbbd1e2c8c5c19fadb0d48f07066ff20d2d2da32de62dfda5c0a6a1036cebeb00 + languageName: node + linkType: hard + +"@babel/highlight@npm:^7.14.5": version: 7.14.5 resolution: "@babel/highlight@npm:7.14.5" dependencies: @@ -2185,6 +2394,18 @@ __metadata: languageName: node linkType: hard +"@babel/highlight@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/highlight@npm:7.25.9" + dependencies: + "@babel/helper-validator-identifier": "npm:^7.25.9" + chalk: "npm:^2.4.2" + js-tokens: "npm:^4.0.0" + picocolors: "npm:^1.0.0" + checksum: 10/0d165283dd4eb312292cea8fec3ae0d376874b1885f476014f0136784ed5b564b2c2ba2d270587ed546ee92505056dab56493f7960c01c4e6394d71d1b2e7db6 + languageName: node + linkType: hard + "@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.22.15, @babel/parser@npm:^7.22.16": version: 7.22.16 resolution: "@babel/parser@npm:7.22.16" @@ -2203,6 +2424,29 @@ __metadata: languageName: node linkType: hard +"@babel/parser@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/parser@npm:7.25.9" + dependencies: + "@babel/types": "npm:^7.25.9" + bin: + parser: ./bin/babel-parser.js + checksum: 10/702af8c40bb1236e3e3e6187b99e1290bd4bc1500aa53593ea63df8fe99f07ff1efef147b1d58886b264aff0972c4b9440ace442c8db9a6e079f318d46773421 + languageName: node + linkType: hard + +"@babel/plugin-proposal-private-methods@npm:^7.18.6": + version: 7.18.6 + resolution: "@babel/plugin-proposal-private-methods@npm:7.18.6" + dependencies: + "@babel/helper-create-class-features-plugin": "npm:^7.18.6" + "@babel/helper-plugin-utils": "npm:^7.18.6" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10/22d8502ee96bca99ad2c8393e8493e2b8d4507576dd054490fd8201a36824373440106f5b098b6d821b026c7e72b0424ff4aeca69ed5f42e48f029d3a156d5ad + languageName: node + linkType: hard + "@babel/plugin-syntax-async-generators@npm:^7.8.4": version: 7.8.4 resolution: "@babel/plugin-syntax-async-generators@npm:7.8.4" @@ -2386,6 +2630,17 @@ __metadata: languageName: node linkType: hard +"@babel/template@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/template@npm:7.25.9" + dependencies: + "@babel/code-frame": "npm:^7.25.9" + "@babel/parser": "npm:^7.25.9" + "@babel/types": "npm:^7.25.9" + checksum: 10/e861180881507210150c1335ad94aff80fd9e9be6202e1efa752059c93224e2d5310186ddcdd4c0f0b0fc658ce48cb47823f15142b5c00c8456dde54f5de80b2 + languageName: node + linkType: hard + "@babel/traverse@npm:^7.22.15, @babel/traverse@npm:^7.22.17": version: 7.22.17 resolution: "@babel/traverse@npm:7.22.17" @@ -2404,6 +2659,21 @@ __metadata: languageName: node linkType: hard +"@babel/traverse@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/traverse@npm:7.25.9" + dependencies: + "@babel/code-frame": "npm:^7.25.9" + "@babel/generator": "npm:^7.25.9" + "@babel/parser": "npm:^7.25.9" + "@babel/template": "npm:^7.25.9" + "@babel/types": "npm:^7.25.9" + debug: "npm:^4.3.1" + globals: "npm:^11.1.0" + checksum: 10/7431614d76d4a053e429208db82f2846a415833f3d9eb2e11ef72eeb3c64dfd71f4a4d983de1a4a047b36165a1f5a64de8ca2a417534cc472005c740ffcb9c6a + languageName: node + linkType: hard + "@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.22.15, @babel/types@npm:^7.22.17, @babel/types@npm:^7.3.3, @babel/types@npm:^7.8.3": version: 7.22.17 resolution: "@babel/types@npm:7.22.17" @@ -2415,6 +2685,16 @@ __metadata: languageName: node linkType: hard +"@babel/types@npm:^7.19.0, @babel/types@npm:^7.2.0, @babel/types@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/types@npm:7.25.9" + dependencies: + "@babel/helper-string-parser": "npm:^7.25.9" + "@babel/helper-validator-identifier": "npm:^7.25.9" + checksum: 10/dd0f2874b10048aa230a5633ab440bbee8c3905f254ef26223b5321ddb824b057b9404d24a87556c6a9f7430198fa6311473778d147ed8ed7845428aee2ebc34 + languageName: node + linkType: hard + "@babel/types@npm:^7.22.5": version: 7.22.5 resolution: "@babel/types@npm:7.22.5" @@ -2983,20 +3263,79 @@ __metadata: languageName: node linkType: hard -"@eslint/eslintrc@npm:^0.4.0": - version: 0.4.3 - resolution: "@eslint/eslintrc@npm:0.4.3" +"@eslint-community/eslint-utils@npm:^4.2.0, @eslint-community/eslint-utils@npm:^4.4.0": + version: 4.4.0 + resolution: "@eslint-community/eslint-utils@npm:4.4.0" + dependencies: + eslint-visitor-keys: "npm:^3.3.0" + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + checksum: 10/8d70bcdcd8cd279049183aca747d6c2ed7092a5cf0cf5916faac1ef37ffa74f0c245c2a3a3d3b9979d9dfdd4ca59257b4c5621db699d637b847a2c5e02f491c2 + languageName: node + linkType: hard + +"@eslint-community/regexpp@npm:^4.10.0, @eslint-community/regexpp@npm:^4.11.0": + version: 4.11.1 + resolution: "@eslint-community/regexpp@npm:4.11.1" + checksum: 10/934b6d3588c7f16b18d41efec4fdb89616c440b7e3256b8cb92cfd31ae12908600f2b986d6c1e61a84cbc10256b1dd3448cd1eec79904bd67ac365d0f1aba2e2 + languageName: node + linkType: hard + +"@eslint/config-array@npm:^0.18.0": + version: 0.18.0 + resolution: "@eslint/config-array@npm:0.18.0" + dependencies: + "@eslint/object-schema": "npm:^2.1.4" + debug: "npm:^4.3.1" + minimatch: "npm:^3.1.2" + checksum: 10/60ccad1eb4806710b085cd739568ec7afd289ee5af6ca0383f0876f9fe375559ef525f7b3f86bdb3f961493de952f2cf3ab4aa4a6ccaef0ae3cd688267cabcb3 + languageName: node + linkType: hard + +"@eslint/core@npm:^0.7.0": + version: 0.7.0 + resolution: "@eslint/core@npm:0.7.0" + checksum: 10/69227f33fddd9b402b7b0830732a6e84cae77d202cb5b56f0dbcc462882e07d00e80216b796cf2f243f5b775af3ef27545a0c439d78e66122eab71da4773b81c + languageName: node + linkType: hard + +"@eslint/eslintrc@npm:^3.1.0": + version: 3.1.0 + resolution: "@eslint/eslintrc@npm:3.1.0" dependencies: ajv: "npm:^6.12.4" - debug: "npm:^4.1.1" - espree: "npm:^7.3.0" - globals: "npm:^13.9.0" - ignore: "npm:^4.0.6" + debug: "npm:^4.3.2" + espree: "npm:^10.0.1" + globals: "npm:^14.0.0" + ignore: "npm:^5.2.0" import-fresh: "npm:^3.2.1" - js-yaml: "npm:^3.13.1" - minimatch: "npm:^3.0.4" + js-yaml: "npm:^4.1.0" + minimatch: "npm:^3.1.2" strip-json-comments: "npm:^3.1.1" - checksum: 10/d41857d255e75870a523b9d88a0367e576cd51acb87732dc5f1ec1857efa56ef82f1c46873fab1fc6944aafaf0a6902ce3eb47c8a55abf8de135558f6f5405f5 + checksum: 10/02bf892d1397e1029209dea685e9f4f87baf643315df2a632b5f121ec7e8548a3b34f428a007234fa82772218fa8a3ac2d10328637b9ce63b7f8344035b74db3 + languageName: node + linkType: hard + +"@eslint/js@npm:9.13.0, @eslint/js@npm:^9.13.0": + version: 9.13.0 + resolution: "@eslint/js@npm:9.13.0" + checksum: 10/aa7a4c45044a6cf6e14666ecc0b56ad41c80f022bd4718620b4a7e3d892111312f4e4ac4787fd11b3bf5abdb6ff9a95fdae7e73ef790528f150d86e9be1754a2 + languageName: node + linkType: hard + +"@eslint/object-schema@npm:^2.1.4": + version: 2.1.4 + resolution: "@eslint/object-schema@npm:2.1.4" + checksum: 10/221e8d9f281c605948cd6e030874aacce83fe097f8f9c1964787037bccf08e82b7aa9eff1850a30fffac43f1d76555727ec22a2af479d91e268e89d1e035131e + languageName: node + linkType: hard + +"@eslint/plugin-kit@npm:^0.2.0": + version: 0.2.1 + resolution: "@eslint/plugin-kit@npm:0.2.1" + dependencies: + levn: "npm:^0.4.1" + checksum: 10/28c409788b923a20d8839470125633eb7a865caf7d1434564fc686c9212b12055cceb1464fb87ec66eae1452ce701262c4909e0c4bc3b48e476e0dc977df0760 languageName: node linkType: hard @@ -3196,6 +3535,37 @@ __metadata: languageName: node linkType: hard +"@humanfs/core@npm:^0.19.0": + version: 0.19.0 + resolution: "@humanfs/core@npm:0.19.0" + checksum: 10/9c4f96b9e934b7d2f69c5ee8b9414dcaf5c5a03225eb08f8ace3b80429c0fc796e11c4e2ef182172790e7b4560b1137ef984da4dc9662cdd5e3e92baceb02821 + languageName: node + linkType: hard + +"@humanfs/node@npm:^0.16.5": + version: 0.16.5 + resolution: "@humanfs/node@npm:0.16.5" + dependencies: + "@humanfs/core": "npm:^0.19.0" + "@humanwhocodes/retry": "npm:^0.3.0" + checksum: 10/16e49b5f9d4a3cf8205af18f0909b8c6e00faa70a0e01bc606b413423ee20123e53028b6ca22c57725595341d62e148cd1908c297a761ee495087cc674f7b0a6 + languageName: node + linkType: hard + +"@humanwhocodes/module-importer@npm:^1.0.1": + version: 1.0.1 + resolution: "@humanwhocodes/module-importer@npm:1.0.1" + checksum: 10/e993950e346331e5a32eefb27948ecdee2a2c4ab3f072b8f566cd213ef485dd50a3ca497050608db91006f5479e43f91a439aef68d2a313bd3ded06909c7c5b3 + languageName: node + linkType: hard + +"@humanwhocodes/retry@npm:^0.3.0, @humanwhocodes/retry@npm:^0.3.1": + version: 0.3.1 + resolution: "@humanwhocodes/retry@npm:0.3.1" + checksum: 10/eb457f699529de7f07649679ec9e0353055eebe443c2efe71c6dd950258892475a038e13c6a8c5e13ed1fb538cdd0a8794faa96b24b6ffc4c87fb1fc9f70ad7f + languageName: node + linkType: hard + "@hutson/parse-repository-url@npm:^3.0.0": version: 3.0.2 resolution: "@hutson/parse-repository-url@npm:3.0.2" @@ -3492,6 +3862,17 @@ __metadata: languageName: node linkType: hard +"@jest/types@npm:^24.9.0": + version: 24.9.0 + resolution: "@jest/types@npm:24.9.0" + dependencies: + "@types/istanbul-lib-coverage": "npm:^2.0.0" + "@types/istanbul-reports": "npm:^1.1.1" + "@types/yargs": "npm:^13.0.0" + checksum: 10/22bdbf26f32e18b48b5b8881332cfdc93bfb87daf84f336c492dd3d4f0731b9b0bf3c854351508f9debc4dce8b8ca015156686f6119f6d11431ffa875ae046e5 + languageName: node + linkType: hard + "@jest/types@npm:^29.3.1": version: 29.3.1 resolution: "@jest/types@npm:29.3.1" @@ -3538,6 +3919,17 @@ __metadata: languageName: node linkType: hard +"@jridgewell/gen-mapping@npm:^0.3.5": + version: 0.3.5 + resolution: "@jridgewell/gen-mapping@npm:0.3.5" + dependencies: + "@jridgewell/set-array": "npm:^1.2.1" + "@jridgewell/sourcemap-codec": "npm:^1.4.10" + "@jridgewell/trace-mapping": "npm:^0.3.24" + checksum: 10/81587b3c4dd8e6c60252122937cea0c637486311f4ed208b52b62aae2e7a87598f63ec330e6cd0984af494bfb16d3f0d60d3b21d7e5b4aedd2602ff3fe9d32e2 + languageName: node + linkType: hard + "@jridgewell/resolve-uri@npm:3.1.0": version: 3.1.0 resolution: "@jridgewell/resolve-uri@npm:3.1.0" @@ -3559,6 +3951,13 @@ __metadata: languageName: node linkType: hard +"@jridgewell/set-array@npm:^1.2.1": + version: 1.2.1 + resolution: "@jridgewell/set-array@npm:1.2.1" + checksum: 10/832e513a85a588f8ed4f27d1279420d8547743cc37fcad5a5a76fc74bb895b013dfe614d0eed9cb860048e6546b798f8f2652020b4b2ba0561b05caa8c654b10 + languageName: node + linkType: hard + "@jridgewell/sourcemap-codec@npm:1.4.14": version: 1.4.14 resolution: "@jridgewell/sourcemap-codec@npm:1.4.14" @@ -3600,7 +3999,7 @@ __metadata: languageName: node linkType: hard -"@jridgewell/trace-mapping@npm:^0.3.23": +"@jridgewell/trace-mapping@npm:^0.3.23, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25": version: 0.3.25 resolution: "@jridgewell/trace-mapping@npm:0.3.25" dependencies: @@ -7348,6 +7747,13 @@ __metadata: languageName: node linkType: hard +"@types/estree@npm:^1.0.6": + version: 1.0.6 + resolution: "@types/estree@npm:1.0.6" + checksum: 10/9d35d475095199c23e05b431bcdd1f6fec7380612aed068b14b2a08aa70494de8a9026765a5a91b1073f636fb0368f6d8973f518a31391d519e20c59388ed88d + languageName: node + linkType: hard + "@types/express-serve-static-core@npm:^4.17.30, @types/express-serve-static-core@npm:^4.17.33, @types/express-serve-static-core@npm:^4.17.35": version: 4.17.35 resolution: "@types/express-serve-static-core@npm:4.17.35" @@ -7472,6 +7878,16 @@ __metadata: languageName: node linkType: hard +"@types/istanbul-reports@npm:^1.1.1": + version: 1.1.2 + resolution: "@types/istanbul-reports@npm:1.1.2" + dependencies: + "@types/istanbul-lib-coverage": "npm:*" + "@types/istanbul-lib-report": "npm:*" + checksum: 10/00866e815d1e68d0a590d691506937b79d8d65ad8eab5ed34dbfee66136c7c0f4ea65327d32046d5fe469f22abea2b294987591dc66365ebc3991f7e413b2d78 + languageName: node + linkType: hard + "@types/istanbul-reports@npm:^3.0.0": version: 3.0.1 resolution: "@types/istanbul-reports@npm:3.0.1" @@ -7511,17 +7927,10 @@ __metadata: languageName: node linkType: hard -"@types/json-schema@npm:^7.0.7": - version: 7.0.9 - resolution: "@types/json-schema@npm:7.0.9" - checksum: 10/7ceb41e396240aa69ae15c02ffbb6548ea2bb2f845a7378c711c7c908a9a8438a0330f3135f1ccb6e82e334b9e2ec5b94fb57a1435f2b15362d38e9d5109e5ea - languageName: node - linkType: hard - -"@types/json5@npm:^0.0.29": - version: 0.0.29 - resolution: "@types/json5@npm:0.0.29" - checksum: 10/4e5aed58cabb2bbf6f725da13421aa50a49abb6bc17bfab6c31b8774b073fa7b50d557c61f961a09a85f6056151190f8ac95f13f5b48136ba5841f7d4484ec56 +"@types/json-schema@npm:^7.0.15": + version: 7.0.15 + resolution: "@types/json-schema@npm:7.0.15" + checksum: 10/1a3c3e06236e4c4aab89499c428d585527ce50c24fe8259e8b3926d3df4cfbbbcf306cfc73ddfb66cbafc973116efd15967020b0f738f63e09e64c7d260519e7 languageName: node linkType: hard @@ -7980,6 +8389,15 @@ __metadata: languageName: node linkType: hard +"@types/yargs@npm:^13.0.0": + version: 13.0.12 + resolution: "@types/yargs@npm:13.0.12" + dependencies: + "@types/yargs-parser": "npm:*" + checksum: 10/d970b79cf16100328fffb615a4d1617332384ca6966cc15bf6ad11feef44e598045d2247eb94e49159ef1211842911e9c3e92a34a44bd0f671d1e01af8103e02 + languageName: node + linkType: hard + "@types/yargs@npm:^17.0.8": version: 17.0.13 resolution: "@types/yargs@npm:17.0.13" @@ -7989,102 +8407,119 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/eslint-plugin@npm:^4.19.0": - version: 4.31.2 - resolution: "@typescript-eslint/eslint-plugin@npm:4.31.2" +"@typescript-eslint/eslint-plugin@npm:8.11.0": + version: 8.11.0 + resolution: "@typescript-eslint/eslint-plugin@npm:8.11.0" dependencies: - "@typescript-eslint/experimental-utils": "npm:4.31.2" - "@typescript-eslint/scope-manager": "npm:4.31.2" - debug: "npm:^4.3.1" - functional-red-black-tree: "npm:^1.0.1" - regexpp: "npm:^3.1.0" - semver: "npm:^7.3.5" - tsutils: "npm:^3.21.0" + "@eslint-community/regexpp": "npm:^4.10.0" + "@typescript-eslint/scope-manager": "npm:8.11.0" + "@typescript-eslint/type-utils": "npm:8.11.0" + "@typescript-eslint/utils": "npm:8.11.0" + "@typescript-eslint/visitor-keys": "npm:8.11.0" + graphemer: "npm:^1.4.0" + ignore: "npm:^5.3.1" + natural-compare: "npm:^1.4.0" + ts-api-utils: "npm:^1.3.0" peerDependencies: - "@typescript-eslint/parser": ^4.0.0 - eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 + "@typescript-eslint/parser": ^8.0.0 || ^8.0.0-alpha.0 + eslint: ^8.57.0 || ^9.0.0 peerDependenciesMeta: typescript: optional: true - checksum: 10/8aebddb002dfebf68caa8fa868a1071d85488f87e335e6480e56b0ae3c4d7e1d852ae49a32cce3ce687cbcfea7104e7f7f3893cae485faaac02680c5cc394439 + checksum: 10/637760a5ff072581c1725da28b82f64bb7f28859ca0a7123226a0d100ad7d3d222cac7838bccbffb97d64e38b668704469322de9ec2868fa43a44c1cb1e43bac languageName: node linkType: hard -"@typescript-eslint/experimental-utils@npm:4.31.2": - version: 4.31.2 - resolution: "@typescript-eslint/experimental-utils@npm:4.31.2" +"@typescript-eslint/parser@npm:8.11.0": + version: 8.11.0 + resolution: "@typescript-eslint/parser@npm:8.11.0" dependencies: - "@types/json-schema": "npm:^7.0.7" - "@typescript-eslint/scope-manager": "npm:4.31.2" - "@typescript-eslint/types": "npm:4.31.2" - "@typescript-eslint/typescript-estree": "npm:4.31.2" - eslint-scope: "npm:^5.1.1" - eslint-utils: "npm:^3.0.0" + "@typescript-eslint/scope-manager": "npm:8.11.0" + "@typescript-eslint/types": "npm:8.11.0" + "@typescript-eslint/typescript-estree": "npm:8.11.0" + "@typescript-eslint/visitor-keys": "npm:8.11.0" + debug: "npm:^4.3.4" peerDependencies: - eslint: "*" - checksum: 10/279415a517714c2ca0500db053f241dd096e9cceff7d0bef96e698b7fa416993e467b90ab510fab66d59d04860427b52dd9687e76b8bdf67202ee0d00f574de0 + eslint: ^8.57.0 || ^9.0.0 + peerDependenciesMeta: + typescript: + optional: true + checksum: 10/518c70a61d79235b9ad744f1bc6313b389e1c947b3e104912d218d0e90cb03b8b2e4c7b7d8cf6348a840bbaff327dd8949961febf89bb5bf0f3c39b011adc5b6 languageName: node linkType: hard -"@typescript-eslint/parser@npm:^4.19.0": - version: 4.31.2 - resolution: "@typescript-eslint/parser@npm:4.31.2" +"@typescript-eslint/scope-manager@npm:8.11.0": + version: 8.11.0 + resolution: "@typescript-eslint/scope-manager@npm:8.11.0" dependencies: - "@typescript-eslint/scope-manager": "npm:4.31.2" - "@typescript-eslint/types": "npm:4.31.2" - "@typescript-eslint/typescript-estree": "npm:4.31.2" - debug: "npm:^4.3.1" - peerDependencies: - eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 - peerDependenciesMeta: - typescript: - optional: true - checksum: 10/0c94f1a8bbdc8571b88573f82b0007d52c2aa052f9fd82cd4d7081fd8be93a800540b0bad0ea6a878d59cd80afe3bae0266bbd0872dd7920f1d5335dff6e7cb3 + "@typescript-eslint/types": "npm:8.11.0" + "@typescript-eslint/visitor-keys": "npm:8.11.0" + checksum: 10/8f1e776fc0687f86cf7246c94098121224d0a69ffcaeb9a207b672889a4c42b94304664ed45d0b982c542bf7737bcec3649470d3db281b625a1e77736308ae37 languageName: node linkType: hard -"@typescript-eslint/scope-manager@npm:4.31.2": - version: 4.31.2 - resolution: "@typescript-eslint/scope-manager@npm:4.31.2" +"@typescript-eslint/type-utils@npm:8.11.0": + version: 8.11.0 + resolution: "@typescript-eslint/type-utils@npm:8.11.0" dependencies: - "@typescript-eslint/types": "npm:4.31.2" - "@typescript-eslint/visitor-keys": "npm:4.31.2" - checksum: 10/d151611fd8fa6556bfe64667dacc75b6afc766a3d04b08899269de186142c4c2ce7ce8137e3af1f69173b95887fa5d8f63689ce06e17de987e6c67a6b33844d1 + "@typescript-eslint/typescript-estree": "npm:8.11.0" + "@typescript-eslint/utils": "npm:8.11.0" + debug: "npm:^4.3.4" + ts-api-utils: "npm:^1.3.0" + peerDependenciesMeta: + typescript: + optional: true + checksum: 10/6ac8b676b40aa1d984c098bdc4a68e2306283018bc1d27b17497b5550bd6579b4706a84ce3b2ed4fe6cf142d42b0e99f35530af1d2e66fc70f8ed0a145277ad0 languageName: node linkType: hard -"@typescript-eslint/types@npm:4.31.2": - version: 4.31.2 - resolution: "@typescript-eslint/types@npm:4.31.2" - checksum: 10/72f2e8d868cb86c7fe79ced77fea893ec06f22b371c74ded2ddcf73f4081730b8e487d003968a489041fced76eedaa677769e87d124478963efe2d257839b4a1 +"@typescript-eslint/types@npm:8.11.0": + version: 8.11.0 + resolution: "@typescript-eslint/types@npm:8.11.0" + checksum: 10/424986bae7c48677a843ff2dee5cb0fed293f7bebd71803901c8fc80ddeed65e4857f77083f17775d0bfd6dab5092ef556f354e7420ea4fd6c7861d0368d002e languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:4.31.2": - version: 4.31.2 - resolution: "@typescript-eslint/typescript-estree@npm:4.31.2" +"@typescript-eslint/typescript-estree@npm:8.11.0": + version: 8.11.0 + resolution: "@typescript-eslint/typescript-estree@npm:8.11.0" dependencies: - "@typescript-eslint/types": "npm:4.31.2" - "@typescript-eslint/visitor-keys": "npm:4.31.2" - debug: "npm:^4.3.1" - globby: "npm:^11.0.3" - is-glob: "npm:^4.0.1" - semver: "npm:^7.3.5" - tsutils: "npm:^3.21.0" + "@typescript-eslint/types": "npm:8.11.0" + "@typescript-eslint/visitor-keys": "npm:8.11.0" + debug: "npm:^4.3.4" + fast-glob: "npm:^3.3.2" + is-glob: "npm:^4.0.3" + minimatch: "npm:^9.0.4" + semver: "npm:^7.6.0" + ts-api-utils: "npm:^1.3.0" peerDependenciesMeta: typescript: optional: true - checksum: 10/beca01b05f61637b5fe6827f184d3c36f2ea97127ed1b54e4ae937a0789b7600620c8fed6feb68abfdcbe7f9e309953b6a0023e8beba68175f931bcc3a715fdd + checksum: 10/cec7c5768c4e6cceb095fe8fbd57098d16d226a981143a335a62c6f30d8a1707974e86eeabe5ad33bfb4dd4eb582cba1d4f2e7cec65f71871d7d559ff9bec5f9 + languageName: node + linkType: hard + +"@typescript-eslint/utils@npm:8.11.0": + version: 8.11.0 + resolution: "@typescript-eslint/utils@npm:8.11.0" + dependencies: + "@eslint-community/eslint-utils": "npm:^4.4.0" + "@typescript-eslint/scope-manager": "npm:8.11.0" + "@typescript-eslint/types": "npm:8.11.0" + "@typescript-eslint/typescript-estree": "npm:8.11.0" + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + checksum: 10/1b80312a15313b549ff5906da2189d0ad60abe9c6d02d65366156e00a97644e2af313ce3fb7424417b4b63b6de25a2dd8c2cf17ab8152fbd5d2a8ca3593a4df5 languageName: node linkType: hard -"@typescript-eslint/visitor-keys@npm:4.31.2": - version: 4.31.2 - resolution: "@typescript-eslint/visitor-keys@npm:4.31.2" +"@typescript-eslint/visitor-keys@npm:8.11.0": + version: 8.11.0 + resolution: "@typescript-eslint/visitor-keys@npm:8.11.0" dependencies: - "@typescript-eslint/types": "npm:4.31.2" - eslint-visitor-keys: "npm:^2.0.0" - checksum: 10/e0fa17e92784b0ddd408b834d7a2f858c4241f5a7f6082db8d86951307c7950adbd491fdab5ec42465252a9a9783cadc4604dd3d173f324358e572329d82d01c + "@typescript-eslint/types": "npm:8.11.0" + eslint-visitor-keys: "npm:^3.4.3" + checksum: 10/8d2bed15cc17c3de67414afb343a2b5974ab4120a9bb4759f3d42accbc3f247d14d3c824772da1d452b99fd42b3d9856c04fb836be50ffbff4aa7323eca197c6 languageName: node linkType: hard @@ -8588,7 +9023,7 @@ __metadata: languageName: node linkType: hard -"acorn-jsx@npm:^5.3.1": +"acorn-jsx@npm:^5.3.2": version: 5.3.2 resolution: "acorn-jsx@npm:5.3.2" peerDependencies: @@ -8611,21 +9046,21 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^7.4.0": - version: 7.4.1 - resolution: "acorn@npm:7.4.1" +"acorn@npm:^8.11.3": + version: 8.11.3 + resolution: "acorn@npm:8.11.3" bin: acorn: bin/acorn - checksum: 10/8be2a40714756d713dfb62544128adce3b7102c6eb94bc312af196c2cc4af76e5b93079bd66b05e9ca31b35a9b0ce12171d16bc55f366cafdb794fdab9d753ec + checksum: 10/b688e7e3c64d9bfb17b596e1b35e4da9d50553713b3b3630cf5690f2b023a84eac90c56851e6912b483fe60e8b4ea28b254c07e92f17ef83d72d78745a8352dd languageName: node linkType: hard -"acorn@npm:^8.11.3": - version: 8.11.3 - resolution: "acorn@npm:8.11.3" +"acorn@npm:^8.12.0": + version: 8.13.0 + resolution: "acorn@npm:8.13.0" bin: acorn: bin/acorn - checksum: 10/b688e7e3c64d9bfb17b596e1b35e4da9d50553713b3b3630cf5690f2b023a84eac90c56851e6912b483fe60e8b4ea28b254c07e92f17ef83d72d78745a8352dd + checksum: 10/33e3a03114b02b3bc5009463b3d9549b31a90ee38ebccd5e66515830a02acf62a90edcc12abfb6c9fb3837b6c17a3ec9b72b3bf52ac31d8ad8248a4af871e0f5 languageName: node linkType: hard @@ -8729,7 +9164,7 @@ __metadata: languageName: node linkType: hard -"ajv@npm:^6.10.0, ajv@npm:^6.12.3, ajv@npm:^6.12.4, ajv@npm:^6.5.2": +"ajv@npm:^6.12.3, ajv@npm:^6.12.4, ajv@npm:^6.5.2": version: 6.12.6 resolution: "ajv@npm:6.12.6" dependencies: @@ -8797,7 +9232,7 @@ __metadata: languageName: node linkType: hard -"ansi-regex@npm:^4.1.0": +"ansi-regex@npm:^4.0.0, ansi-regex@npm:^4.1.0": version: 4.1.1 resolution: "ansi-regex@npm:4.1.1" checksum: 10/b1a6ee44cb6ecdabaa770b2ed500542714d4395d71c7e5c25baa631f680fb2ad322eb9ba697548d498a6fd366949fc8b5bfcf48d49a32803611f648005b01888 @@ -9013,19 +9448,6 @@ __metadata: languageName: node linkType: hard -"array-includes@npm:^3.1.3": - version: 3.1.3 - resolution: "array-includes@npm:3.1.3" - dependencies: - call-bind: "npm:^1.0.2" - define-properties: "npm:^1.1.3" - es-abstract: "npm:^1.18.0-next.2" - get-intrinsic: "npm:^1.1.1" - is-string: "npm:^1.0.5" - checksum: 10/e7ccea0a79e326401c785df10a914ff851925a0547e7f4d04eeee05ea24a1201ffa9835e006a3191d163c8e1f553a90450e7b55f260009a4b64f7a252877db49 - languageName: node - linkType: hard - "array-union@npm:^1.0.2": version: 1.0.2 resolution: "array-union@npm:1.0.2" @@ -9056,29 +9478,6 @@ __metadata: languageName: node linkType: hard -"array.prototype.flat@npm:^1.2.4": - version: 1.2.4 - resolution: "array.prototype.flat@npm:1.2.4" - dependencies: - call-bind: "npm:^1.0.0" - define-properties: "npm:^1.1.3" - es-abstract: "npm:^1.18.0-next.1" - checksum: 10/c8bd981449940cd2b905ee7d93f9530fb2c08fd2716d09a02ed45f9b86feba74939d57acca516f7fee926e414e473fc160df1421e94723c629c992eda8df06af - languageName: node - linkType: hard - -"array.prototype.flatmap@npm:^1.2.4": - version: 1.2.4 - resolution: "array.prototype.flatmap@npm:1.2.4" - dependencies: - call-bind: "npm:^1.0.0" - define-properties: "npm:^1.1.3" - es-abstract: "npm:^1.18.0-next.1" - function-bind: "npm:^1.1.1" - checksum: 10/192cc09409f8a0cb3eccbd3fb2c2a1d7fe9b1161c2a503098a46a0945c3b8e7bce552c5c6f4c331e8b1f3049b910ea64b427f7539b0eb995e4abaec9d4c297fb - languageName: node - linkType: hard - "array.prototype.reduce@npm:^1.0.6": version: 1.0.7 resolution: "array.prototype.reduce@npm:1.0.7" @@ -9333,6 +9732,21 @@ __metadata: languageName: node linkType: hard +"babel-plugin-react-compiler@npm:19.0.0-beta-8a03594-20241020": + version: 19.0.0-beta-8a03594-20241020 + resolution: "babel-plugin-react-compiler@npm:19.0.0-beta-8a03594-20241020" + dependencies: + "@babel/generator": "npm:7.2.0" + "@babel/types": "npm:^7.19.0" + chalk: "npm:4" + invariant: "npm:^2.2.4" + pretty-format: "npm:^24" + zod: "npm:^3.22.4" + zod-validation-error: "npm:^2.1.0" + checksum: 10/137b61daecaad77b3ceafba6069d1a5a7d2595115e1d668688ead5924c44683447bbbe74d9316809d31000a8549232b4df336795be99f7dac11aeb04e11c9e2f + languageName: node + linkType: hard + "babel-preset-current-node-syntax@npm:^1.0.0": version: 1.0.1 resolution: "babel-preset-current-node-syntax@npm:1.0.1" @@ -9652,6 +10066,20 @@ __metadata: languageName: node linkType: hard +"browserslist@npm:^4.24.0": + version: 4.24.2 + resolution: "browserslist@npm:4.24.2" + dependencies: + caniuse-lite: "npm:^1.0.30001669" + electron-to-chromium: "npm:^1.5.41" + node-releases: "npm:^2.0.18" + update-browserslist-db: "npm:^1.1.1" + bin: + browserslist: cli.js + checksum: 10/f8a9d78bbabe466c57ffd5c50a9e5582a5df9aa68f43078ca62a9f6d0d6c70ba72eca72d0a574dbf177cf55cdca85a46f7eb474917a47ae5398c66f8b76f7d1c + languageName: node + linkType: hard + "bser@npm:2.1.1": version: 2.1.1 resolution: "bser@npm:2.1.1" @@ -10077,6 +10505,13 @@ __metadata: languageName: node linkType: hard +"caniuse-lite@npm:^1.0.30001669": + version: 1.0.30001669 + resolution: "caniuse-lite@npm:1.0.30001669" + checksum: 10/cd0b481bb997703cb7651e55666b4aa4e7b4ecf9784796e2393179a15e55c71a6abc6ff865c922bbd3bbfa4a4bf0530d8da13989b97ff8c7850c8a5bd4e00491 + languageName: node + linkType: hard + "caseless@npm:~0.12.0": version: 0.12.0 resolution: "caseless@npm:0.12.0" @@ -10119,6 +10554,16 @@ __metadata: languageName: node linkType: hard +"chalk@npm:4, chalk@npm:^4.0.0, chalk@npm:^4.0.2, chalk@npm:^4.1.0, chalk@npm:^4.1.1": + version: 4.1.2 + resolution: "chalk@npm:4.1.2" + dependencies: + ansi-styles: "npm:^4.1.0" + supports-color: "npm:^7.1.0" + checksum: 10/cb3f3e594913d63b1814d7ca7c9bafbf895f75fbf93b92991980610dfd7b48500af4e3a5d4e3a8f337990a96b168d7eb84ee55efdce965e2ee8efc20f8c8f139 + languageName: node + linkType: hard + "chalk@npm:4.1.0": version: 4.1.0 resolution: "chalk@npm:4.1.0" @@ -10150,16 +10595,6 @@ __metadata: languageName: node linkType: hard -"chalk@npm:^4.0.0, chalk@npm:^4.0.2, chalk@npm:^4.1.0, chalk@npm:^4.1.1": - version: 4.1.2 - resolution: "chalk@npm:4.1.2" - dependencies: - ansi-styles: "npm:^4.1.0" - supports-color: "npm:^7.1.0" - checksum: 10/cb3f3e594913d63b1814d7ca7c9bafbf895f75fbf93b92991980610dfd7b48500af4e3a5d4e3a8f337990a96b168d7eb84ee55efdce965e2ee8efc20f8c8f139 - languageName: node - linkType: hard - "char-regex@npm:^1.0.2": version: 1.0.2 resolution: "char-regex@npm:1.0.2" @@ -11437,7 +11872,7 @@ __metadata: languageName: node linkType: hard -"debug@npm:2.6.9, debug@npm:^2.2.0, debug@npm:^2.3.3, debug@npm:^2.6.9": +"debug@npm:2.6.9, debug@npm:^2.2.0, debug@npm:^2.3.3": version: 2.6.9 resolution: "debug@npm:2.6.9" dependencies: @@ -11455,7 +11890,7 @@ __metadata: languageName: node linkType: hard -"debug@npm:4, debug@npm:^4.0.1, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.2.0, debug@npm:^4.3.1": +"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.2.0": version: 4.3.2 resolution: "debug@npm:4.3.2" dependencies: @@ -11479,7 +11914,7 @@ __metadata: languageName: node linkType: hard -"debug@npm:^3.1.0, debug@npm:^3.2.7": +"debug@npm:^3.1.0": version: 3.2.7 resolution: "debug@npm:3.2.7" dependencies: @@ -11500,7 +11935,7 @@ __metadata: languageName: node linkType: hard -"debug@npm:^4.3.6": +"debug@npm:^4.3.1, debug@npm:^4.3.6": version: 4.3.7 resolution: "debug@npm:4.3.7" dependencies: @@ -11922,24 +12357,6 @@ __metadata: languageName: node linkType: hard -"doctrine@npm:^2.1.0": - version: 2.1.0 - resolution: "doctrine@npm:2.1.0" - dependencies: - esutils: "npm:^2.0.2" - checksum: 10/555684f77e791b17173ea86e2eea45ef26c22219cb64670669c4f4bebd26dbc95cd90ec1f4159e9349a6bb9eb892ce4dde8cd0139e77bedd8bf4518238618474 - languageName: node - linkType: hard - -"doctrine@npm:^3.0.0": - version: 3.0.0 - resolution: "doctrine@npm:3.0.0" - dependencies: - esutils: "npm:^2.0.2" - checksum: 10/b4b28f1df5c563f7d876e7461254a4597b8cabe915abe94d7c5d1633fed263fcf9a85e8d3836591fc2d040108e822b0d32758e5ec1fe31c590dc7e08086e3e48 - languageName: node - linkType: hard - "dom-accessibility-api@npm:^0.5.6": version: 0.5.7 resolution: "dom-accessibility-api@npm:0.5.7" @@ -12175,6 +12592,13 @@ __metadata: languageName: node linkType: hard +"electron-to-chromium@npm:^1.5.41": + version: 1.5.42 + resolution: "electron-to-chromium@npm:1.5.42" + checksum: 10/869d4813723980a3566b45b0550a99cf46467db3464e9b45b3aad116989faf36bf62c8e73cf25956435fb814e9f8b6bcace4c17f6ecc315df87fbfb5518664ff + languageName: node + linkType: hard + "email-validator@npm:^2.0.4": version: 2.0.4 resolution: "email-validator@npm:2.0.4" @@ -12251,7 +12675,7 @@ __metadata: languageName: node linkType: hard -"enquirer@npm:^2.3.5, enquirer@npm:^2.3.6, enquirer@npm:~2.3.6": +"enquirer@npm:^2.3.6, enquirer@npm:~2.3.6": version: 2.3.6 resolution: "enquirer@npm:2.3.6" dependencies: @@ -12329,7 +12753,7 @@ __metadata: languageName: node linkType: hard -"es-abstract@npm:^1.18.0-next.1, es-abstract@npm:^1.18.0-next.2, es-abstract@npm:^1.18.1, es-abstract@npm:^1.18.2": +"es-abstract@npm:^1.18.0-next.2": version: 1.18.6 resolution: "es-abstract@npm:1.18.6" dependencies: @@ -12669,6 +13093,13 @@ __metadata: languageName: node linkType: hard +"escalade@npm:^3.2.0": + version: 3.2.0 + resolution: "escalade@npm:3.2.0" + checksum: 10/9d7169e3965b2f9ae46971afa392f6e5a25545ea30f2e2dd99c9b0a95a3f52b5653681a84f5b2911a413ddad2d7a93d3514165072f349b5ffc59c75a899970d6 + languageName: node + linkType: hard + "escape-html@npm:~1.0.3": version: 1.0.3 resolution: "escape-html@npm:1.0.3" @@ -12723,209 +13154,104 @@ __metadata: languageName: node linkType: hard -"eslint-config-prettier@npm:^8.1.0": - version: 8.3.0 - resolution: "eslint-config-prettier@npm:8.3.0" - peerDependencies: - eslint: ">=7.0.0" - bin: - eslint-config-prettier: bin/cli.js - checksum: 10/3f4c7e0731e77bb781b571487b603e39e814c23aebb1b0bfc5006455355d5f91aea814b3a4935bd25522357534e81733087841c2d9c73fdd7df1a57e5f7b672a - languageName: node - linkType: hard - -"eslint-import-resolver-node@npm:^0.3.6": - version: 0.3.6 - resolution: "eslint-import-resolver-node@npm:0.3.6" - dependencies: - debug: "npm:^3.2.7" - resolve: "npm:^1.20.0" - checksum: 10/c35c6edb7e77980a90922be8aedfacde572839b817146ab9fbed01195cb173cc40aa02d44ba0950170cfd41add11bc652dda8efed7ca766d733dc1eefc174614 - languageName: node - linkType: hard - -"eslint-module-utils@npm:^2.6.2": - version: 2.6.2 - resolution: "eslint-module-utils@npm:2.6.2" - dependencies: - debug: "npm:^3.2.7" - pkg-dir: "npm:^2.0.0" - checksum: 10/a927e66d4ed1d7918f90fbaca165dc4704518610fe50fa7e7550cfd80514c7af77baffe0efececeb37a07dfe49186f9bab3b24037213c0d71573d65441c953c7 - languageName: node - linkType: hard - -"eslint-plugin-import@npm:^2.22.1": - version: 2.24.2 - resolution: "eslint-plugin-import@npm:2.24.2" +"eslint-plugin-react-compiler@npm:19.0.0-beta-8a03594-20241020": + version: 19.0.0-beta-8a03594-20241020 + resolution: "eslint-plugin-react-compiler@npm:19.0.0-beta-8a03594-20241020" dependencies: - array-includes: "npm:^3.1.3" - array.prototype.flat: "npm:^1.2.4" - debug: "npm:^2.6.9" - doctrine: "npm:^2.1.0" - eslint-import-resolver-node: "npm:^0.3.6" - eslint-module-utils: "npm:^2.6.2" - find-up: "npm:^2.0.0" - has: "npm:^1.0.3" - is-core-module: "npm:^2.6.0" - minimatch: "npm:^3.0.4" - object.values: "npm:^1.1.4" - pkg-up: "npm:^2.0.0" - read-pkg-up: "npm:^3.0.0" - resolve: "npm:^1.20.0" - tsconfig-paths: "npm:^3.11.0" - peerDependencies: - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 - checksum: 10/f587b830c23ef8a1f7e057ea32be5d7c22d75ddad9801ec14081a0d3e7cfa4242920ecacb89dce789b530621c4ab9c6a701596d40a34883f41709739dcd125ea - languageName: node - linkType: hard - -"eslint-plugin-prettier@npm:^3.3.1": - version: 3.4.1 - resolution: "eslint-plugin-prettier@npm:3.4.1" - dependencies: - prettier-linter-helpers: "npm:^1.0.0" - peerDependencies: - eslint: ">=5.0.0" - prettier: ">=1.13.0" - peerDependenciesMeta: - eslint-config-prettier: - optional: true - checksum: 10/d7ab93df9a93f0afb9fa9c9c3cf30479075e1b56303c82ed6efbfff30c2d3d3741537b490c2b517d501bfa97a3d8d0269a1ab4b6fa741a6e966e5811efbfe8b8 - languageName: node - linkType: hard - -"eslint-plugin-react-hooks@npm:^4.2.0": - version: 4.2.0 - resolution: "eslint-plugin-react-hooks@npm:4.2.0" - peerDependencies: - eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 - checksum: 10/2cdb3bce0d2e1b35f30eb2f076bf3855c26dafa5299aba2110e2a271bea65408921b2f8fcd41029d1ef05d900fed9784848cf2719b7b8c79ce2cad89e67c1f18 - languageName: node - linkType: hard - -"eslint-plugin-react@npm:^7.23.1": - version: 7.26.0 - resolution: "eslint-plugin-react@npm:7.26.0" - dependencies: - array-includes: "npm:^3.1.3" - array.prototype.flatmap: "npm:^1.2.4" - doctrine: "npm:^2.1.0" - estraverse: "npm:^5.2.0" - jsx-ast-utils: "npm:^2.4.1 || ^3.0.0" - minimatch: "npm:^3.0.4" - object.entries: "npm:^1.1.4" - object.fromentries: "npm:^2.0.4" - object.hasown: "npm:^1.0.0" - object.values: "npm:^1.1.4" - prop-types: "npm:^15.7.2" - resolve: "npm:^2.0.0-next.3" - semver: "npm:^6.3.0" - string.prototype.matchall: "npm:^4.0.5" + "@babel/core": "npm:^7.24.4" + "@babel/parser": "npm:^7.24.4" + "@babel/plugin-proposal-private-methods": "npm:^7.18.6" + hermes-parser: "npm:^0.20.1" + zod: "npm:^3.22.4" + zod-validation-error: "npm:^3.0.3" peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 - checksum: 10/99105ad1e0f242bae096fc0e2007cf047c91e1dab19e45792ee7b801f8c59b09e6b3fcc43d1715cb914ec1bf2bf0fea1fc6b51ad572522aee3f4bbcbcdc3bf32 + eslint: ">=7" + checksum: 10/e714821133c3c493b3cebf58a3c882385ecacffb995676229d87292ca87c930e4d2c98b8824ce6246ea403d0dd1f9f54726ffe34d65f5b75b7bf7905f0d776ba languageName: node linkType: hard -"eslint-scope@npm:^5.1.1": - version: 5.1.1 - resolution: "eslint-scope@npm:5.1.1" +"eslint-scope@npm:^8.1.0": + version: 8.1.0 + resolution: "eslint-scope@npm:8.1.0" dependencies: esrecurse: "npm:^4.3.0" - estraverse: "npm:^4.1.1" - checksum: 10/c541ef384c92eb5c999b7d3443d80195fcafb3da335500946f6db76539b87d5826c8f2e1d23bf6afc3154ba8cd7c8e566f8dc00f1eea25fdf3afc8fb9c87b238 - languageName: node - linkType: hard - -"eslint-utils@npm:^2.1.0": - version: 2.1.0 - resolution: "eslint-utils@npm:2.1.0" - dependencies: - eslint-visitor-keys: "npm:^1.1.0" - checksum: 10/a7e43a5154a16a90c021cabeb160c3668cccbcf6474ccb2a7d7762698582398f3b938c5330909b858ef7c21182edfc9786dbf89ed7b294f51b7659a378bf7cec - languageName: node - linkType: hard - -"eslint-utils@npm:^3.0.0": - version: 3.0.0 - resolution: "eslint-utils@npm:3.0.0" - dependencies: - eslint-visitor-keys: "npm:^2.0.0" - peerDependencies: - eslint: ">=5" - checksum: 10/7675260a6b220c70f13e4cdbf077e93cad0dfb388429a27d6c0b584b2b20dca24594508e8bdb00a460a5764bd364a5018e20c2b8b1d70f82bcc3fdc30692a4d2 - languageName: node - linkType: hard - -"eslint-visitor-keys@npm:^1.1.0, eslint-visitor-keys@npm:^1.3.0": - version: 1.3.0 - resolution: "eslint-visitor-keys@npm:1.3.0" - checksum: 10/595ab230e0fcb52f86ba0986a9a473b9fcae120f3729b43f1157f88f27f8addb1e545c4e3d444185f2980e281ca15be5ada6f65b4599eec227cf30e41233b762 + estraverse: "npm:^5.2.0" + checksum: 10/4c34a12fbeb0677822a9e93e81f2027e39e6f27557c17bc1e5ff76debbd41e748c3673517561792bda9e276245f89fbfd9b0b24fcec3b33a04ee2196729b3489 languageName: node linkType: hard -"eslint-visitor-keys@npm:^2.0.0": - version: 2.1.0 - resolution: "eslint-visitor-keys@npm:2.1.0" - checksum: 10/db4547eef5039122d518fa307e938ceb8589da5f6e8f5222efaf14dd62f748ce82e2d2becd3ff9412a50350b726bda95dbea8515a471074547daefa58aee8735 +"eslint-visitor-keys@npm:^3.3.0, eslint-visitor-keys@npm:^3.4.3": + version: 3.4.3 + resolution: "eslint-visitor-keys@npm:3.4.3" + checksum: 10/3f357c554a9ea794b094a09bd4187e5eacd1bc0d0653c3adeb87962c548e6a1ab8f982b86963ae1337f5d976004146536dcee5d0e2806665b193fbfbf1a9231b languageName: node linkType: hard -"eslint@npm:7.23.0": - version: 7.23.0 - resolution: "eslint@npm:7.23.0" - dependencies: - "@babel/code-frame": "npm:7.12.11" - "@eslint/eslintrc": "npm:^0.4.0" - ajv: "npm:^6.10.0" +"eslint-visitor-keys@npm:^4.1.0": + version: 4.1.0 + resolution: "eslint-visitor-keys@npm:4.1.0" + checksum: 10/3fb5bd1b2f36db89d0ac57ddd66d36ccd3b1e3cddb2a55a0f9f6f1c85268cfcc1cc32e7eda4990e3423107a120dd254fb6cb52d6154cf81d344d8c3fa671f7c2 + languageName: node + linkType: hard + +"eslint@npm:^9.13.0": + version: 9.13.0 + resolution: "eslint@npm:9.13.0" + dependencies: + "@eslint-community/eslint-utils": "npm:^4.2.0" + "@eslint-community/regexpp": "npm:^4.11.0" + "@eslint/config-array": "npm:^0.18.0" + "@eslint/core": "npm:^0.7.0" + "@eslint/eslintrc": "npm:^3.1.0" + "@eslint/js": "npm:9.13.0" + "@eslint/plugin-kit": "npm:^0.2.0" + "@humanfs/node": "npm:^0.16.5" + "@humanwhocodes/module-importer": "npm:^1.0.1" + "@humanwhocodes/retry": "npm:^0.3.1" + "@types/estree": "npm:^1.0.6" + "@types/json-schema": "npm:^7.0.15" + ajv: "npm:^6.12.4" chalk: "npm:^4.0.0" cross-spawn: "npm:^7.0.2" - debug: "npm:^4.0.1" - doctrine: "npm:^3.0.0" - enquirer: "npm:^2.3.5" - eslint-scope: "npm:^5.1.1" - eslint-utils: "npm:^2.1.0" - eslint-visitor-keys: "npm:^2.0.0" - espree: "npm:^7.3.1" - esquery: "npm:^1.4.0" + debug: "npm:^4.3.2" + escape-string-regexp: "npm:^4.0.0" + eslint-scope: "npm:^8.1.0" + eslint-visitor-keys: "npm:^4.1.0" + espree: "npm:^10.2.0" + esquery: "npm:^1.5.0" esutils: "npm:^2.0.2" - file-entry-cache: "npm:^6.0.1" - functional-red-black-tree: "npm:^1.0.1" - glob-parent: "npm:^5.0.0" - globals: "npm:^13.6.0" - ignore: "npm:^4.0.6" - import-fresh: "npm:^3.0.0" + fast-deep-equal: "npm:^3.1.3" + file-entry-cache: "npm:^8.0.0" + find-up: "npm:^5.0.0" + glob-parent: "npm:^6.0.2" + ignore: "npm:^5.2.0" imurmurhash: "npm:^0.1.4" is-glob: "npm:^4.0.0" - js-yaml: "npm:^3.13.1" json-stable-stringify-without-jsonify: "npm:^1.0.1" - levn: "npm:^0.4.1" - lodash: "npm:^4.17.21" - minimatch: "npm:^3.0.4" + lodash.merge: "npm:^4.6.2" + minimatch: "npm:^3.1.2" natural-compare: "npm:^1.4.0" - optionator: "npm:^0.9.1" - progress: "npm:^2.0.0" - regexpp: "npm:^3.1.0" - semver: "npm:^7.2.1" - strip-ansi: "npm:^6.0.0" - strip-json-comments: "npm:^3.1.0" - table: "npm:^6.0.4" + optionator: "npm:^0.9.3" text-table: "npm:^0.2.0" - v8-compile-cache: "npm:^2.0.3" + peerDependencies: + jiti: "*" + peerDependenciesMeta: + jiti: + optional: true bin: eslint: bin/eslint.js - checksum: 10/992ee50cbf17f65fdfd87990073cf545043cc9977ab728d1cf1d6f93a04d192a2a9f8a6edea46342fa2a50a6c17ac196d68ac2189c04b7a69e65aed1f64ef783 + checksum: 10/4342cc24a8d73581676f1b4959c2ddac18ed169731d9c55b708d2eacfc066ed5bdbc2c3c129e1f70142f0704bc25884a1a9ae580e15be5921f9c7f7d0f3ebe68 languageName: node linkType: hard -"espree@npm:^7.3.0, espree@npm:^7.3.1": - version: 7.3.1 - resolution: "espree@npm:7.3.1" +"espree@npm:^10.0.1, espree@npm:^10.2.0": + version: 10.2.0 + resolution: "espree@npm:10.2.0" dependencies: - acorn: "npm:^7.4.0" - acorn-jsx: "npm:^5.3.1" - eslint-visitor-keys: "npm:^1.3.0" - checksum: 10/7cf230d4d726f6e2c53925566ef96e78a5656eb05adbb6cd493f863341e532b491b035db7a4ce292b70243bb727722acff98b66ae751888ee51791d8389c6819 + acorn: "npm:^8.12.0" + acorn-jsx: "npm:^5.3.2" + eslint-visitor-keys: "npm:^4.1.0" + checksum: 10/365076a963ca84244c1e2d36e4f812362d21cfa7e7df10d67f7b82b759467796df81184721d153c4e235d9ef5eb5b4d044167dd66be3be00f53a21a515b1bfb1 languageName: node linkType: hard @@ -12939,12 +13265,12 @@ __metadata: languageName: node linkType: hard -"esquery@npm:^1.4.0": - version: 1.4.0 - resolution: "esquery@npm:1.4.0" +"esquery@npm:^1.5.0": + version: 1.6.0 + resolution: "esquery@npm:1.6.0" dependencies: estraverse: "npm:^5.1.0" - checksum: 10/25b571ec54f186521819be48cd12643f9f5bdef6be9679161a48dec9cfd478764970a77ef563a516cf1f0f05e7e490e3ff2d514715b86cb8d03329cbb56ae4a8 + checksum: 10/c587fb8ec9ed83f2b1bc97cf2f6854cc30bf784a79d62ba08c6e358bf22280d69aee12827521cf38e69ae9761d23fb7fde593ce315610f85655c139d99b05e5a languageName: node linkType: hard @@ -12957,7 +13283,7 @@ __metadata: languageName: node linkType: hard -"estraverse@npm:^4.1.1, estraverse@npm:^4.2.0": +"estraverse@npm:^4.2.0": version: 4.3.0 resolution: "estraverse@npm:4.3.0" checksum: 10/3f67ad02b6dbfaddd9ea459cf2b6ef4ecff9a6082a7af9d22e445b9abc082ad9ca47e1825557b293fcdae477f4714e561123e30bb6a5b2f184fb2bad4a9497eb @@ -12965,9 +13291,9 @@ __metadata: linkType: hard "estraverse@npm:^5.1.0, estraverse@npm:^5.2.0": - version: 5.2.0 - resolution: "estraverse@npm:5.2.0" - checksum: 10/9740a8fa4257682c1d6c14a0befc884af31e76013a97c647aed21aeb1766270e153e34cc06ab8d354a377bb6ed6b785b1f5deb1228ceb7e3792bf88fb79b2ce8 + version: 5.3.0 + resolution: "estraverse@npm:5.3.0" + checksum: 10/37cbe6e9a68014d34dbdc039f90d0baf72436809d02edffcc06ba3c2a12eb298048f877511353b130153e532aac8d68ba78430c0dd2f44806ebc7c014b01585e languageName: node linkType: hard @@ -13350,20 +13676,13 @@ __metadata: languageName: node linkType: hard -"fast-deep-equal@npm:^3.1.1": +"fast-deep-equal@npm:^3.1.1, fast-deep-equal@npm:^3.1.3": version: 3.1.3 resolution: "fast-deep-equal@npm:3.1.3" checksum: 10/e21a9d8d84f53493b6aa15efc9cfd53dd5b714a1f23f67fb5dc8f574af80df889b3bce25dc081887c6d25457cce704e636395333abad896ccdec03abaf1f3f9d languageName: node linkType: hard -"fast-diff@npm:^1.1.2": - version: 1.2.0 - resolution: "fast-diff@npm:1.2.0" - checksum: 10/f62419b3d770f201d51c3ee8c4443b752b3ba2d548a6639026b7e09a08203ed2699a8d1fe21efcb8c5186135002d5d2916c12a687cac63785626456a92915adc - languageName: node - linkType: hard - "fast-fifo@npm:^1.1.0, fast-fifo@npm:^1.2.0": version: 1.3.2 resolution: "fast-fifo@npm:1.3.2" @@ -13411,6 +13730,19 @@ __metadata: languageName: node linkType: hard +"fast-glob@npm:^3.3.2": + version: 3.3.2 + resolution: "fast-glob@npm:3.3.2" + dependencies: + "@nodelib/fs.stat": "npm:^2.0.2" + "@nodelib/fs.walk": "npm:^1.2.3" + glob-parent: "npm:^5.1.2" + merge2: "npm:^1.3.0" + micromatch: "npm:^4.0.4" + checksum: 10/222512e9315a0efca1276af9adb2127f02105d7288fa746145bf45e2716383fb79eb983c89601a72a399a56b7c18d38ce70457c5466218c5f13fad957cee16df + languageName: node + linkType: hard + "fast-json-stable-stringify@npm:^2.0.0, fast-json-stable-stringify@npm:^2.1.0": version: 2.1.0 resolution: "fast-json-stable-stringify@npm:2.1.0" @@ -13578,12 +13910,12 @@ __metadata: languageName: node linkType: hard -"file-entry-cache@npm:^6.0.1": - version: 6.0.1 - resolution: "file-entry-cache@npm:6.0.1" +"file-entry-cache@npm:^8.0.0": + version: 8.0.0 + resolution: "file-entry-cache@npm:8.0.0" dependencies: - flat-cache: "npm:^3.0.4" - checksum: 10/099bb9d4ab332cb93c48b14807a6918a1da87c45dce91d4b61fd40e6505d56d0697da060cb901c729c90487067d93c9243f5da3dc9c41f0358483bfdebca736b + flat-cache: "npm:^4.0.0" + checksum: 10/afe55c4de4e0d226a23c1eae62a7219aafb390859122608a89fa4df6addf55c7fd3f1a2da6f5b41e7cdff496e4cf28bbd215d53eab5c817afa96d2b40c81bfb0 languageName: node linkType: hard @@ -13674,7 +14006,7 @@ __metadata: languageName: node linkType: hard -"find-up@npm:^2.0.0, find-up@npm:^2.1.0": +"find-up@npm:^2.0.0": version: 2.1.0 resolution: "find-up@npm:2.1.0" dependencies: @@ -13702,13 +14034,23 @@ __metadata: languageName: node linkType: hard -"flat-cache@npm:^3.0.4": - version: 3.0.4 - resolution: "flat-cache@npm:3.0.4" +"find-up@npm:^5.0.0": + version: 5.0.0 + resolution: "find-up@npm:5.0.0" dependencies: - flatted: "npm:^3.1.0" - rimraf: "npm:^3.0.2" - checksum: 10/9fe5d0cb97c988e3b25242e71346965fae22757674db3fca14206850af2efa3ca3b04a3ba0eba8d5e20fd8a3be80a2e14b1c2917e70ffe1acb98a8c3327e4c9f + locate-path: "npm:^6.0.0" + path-exists: "npm:^4.0.0" + checksum: 10/07955e357348f34660bde7920783204ff5a26ac2cafcaa28bace494027158a97b9f56faaf2d89a6106211a8174db650dd9f503f9c0d526b1202d5554a00b9095 + languageName: node + linkType: hard + +"flat-cache@npm:^4.0.0": + version: 4.0.1 + resolution: "flat-cache@npm:4.0.1" + dependencies: + flatted: "npm:^3.2.9" + keyv: "npm:^4.5.4" + checksum: 10/58ce851d9045fffc7871ce2bd718bc485ad7e777bf748c054904b87c351ff1080c2c11da00788d78738bfb51b71e4d5ea12d13b98eb36e3358851ffe495b62dc languageName: node linkType: hard @@ -13721,10 +14063,10 @@ __metadata: languageName: node linkType: hard -"flatted@npm:^3.1.0": - version: 3.2.2 - resolution: "flatted@npm:3.2.2" - checksum: 10/acf2a762cbbc87535bc3275516a1847f97acc3811f650fd65bee6f261141248f11224e1c33733478cb335bebd0e261a2c7ef3fdcdeb3dfc4a08ba3eacbe993bd +"flatted@npm:^3.2.9": + version: 3.3.1 + resolution: "flatted@npm:3.3.1" + checksum: 10/7b8376061d5be6e0d3658bbab8bde587647f68797cf6bfeae9dea0e5137d9f27547ab92aaff3512dd9d1299086a6d61be98e9d48a56d17531b634f77faadbc49 languageName: node linkType: hard @@ -14053,13 +14395,6 @@ __metadata: languageName: node linkType: hard -"functional-red-black-tree@npm:^1.0.1": - version: 1.0.1 - resolution: "functional-red-black-tree@npm:1.0.1" - checksum: 10/debe73e92204341d1fa5f89614e44284d3add26dee660722978d8c50829170f87d1c74768f68c251d215ae461c11db7bac13101c77f4146ff051da75466f7a12 - languageName: node - linkType: hard - "functions-have-names@npm:^1.2.2, functions-have-names@npm:^1.2.3": version: 1.2.3 resolution: "functions-have-names@npm:1.2.3" @@ -14432,7 +14767,7 @@ __metadata: languageName: node linkType: hard -"glob-parent@npm:6.0.2": +"glob-parent@npm:6.0.2, glob-parent@npm:^6.0.2": version: 6.0.2 resolution: "glob-parent@npm:6.0.2" dependencies: @@ -14530,12 +14865,10 @@ __metadata: languageName: node linkType: hard -"globals@npm:^13.6.0, globals@npm:^13.9.0": - version: 13.11.0 - resolution: "globals@npm:13.11.0" - dependencies: - type-fest: "npm:^0.20.2" - checksum: 10/9d46c6d65700413864b2664e7116cc6d611eb03f2ac7759a3c583193dcda4a9148b674c97446a214cb0ef1bb5b0509fecc709e0889e5bad7d341f1c97ceca773 +"globals@npm:^14.0.0": + version: 14.0.0 + resolution: "globals@npm:14.0.0" + checksum: 10/03939c8af95c6df5014b137cac83aa909090c3a3985caef06ee9a5a669790877af8698ab38007e4c0186873adc14c0b13764acc754b16a754c216cc56aa5f021 languageName: node linkType: hard @@ -14563,7 +14896,7 @@ __metadata: languageName: node linkType: hard -"globby@npm:^11.0.1, globby@npm:^11.0.3": +"globby@npm:^11.0.1": version: 11.0.4 resolution: "globby@npm:11.0.4" dependencies: @@ -14649,6 +14982,13 @@ __metadata: languageName: node linkType: hard +"graphemer@npm:^1.4.0": + version: 1.4.0 + resolution: "graphemer@npm:1.4.0" + checksum: 10/6dd60dba97007b21e3a829fab3f771803cc1292977fe610e240ea72afd67e5690ac9eeaafc4a99710e78962e5936ab5a460787c2a1180f1cb0ccfac37d29f897 + languageName: node + linkType: hard + "graphql-bigint@npm:^1.0.0": version: 1.0.0 resolution: "graphql-bigint@npm:1.0.0" @@ -15035,6 +15375,22 @@ __metadata: languageName: node linkType: hard +"hermes-estree@npm:0.20.1": + version: 0.20.1 + resolution: "hermes-estree@npm:0.20.1" + checksum: 10/b98fc2943bd9fdd904c094e995f79cb7d5958393e221006af81d88f3aed52ddbf15138a6606766d5e6be7ba166576be65f577d0c72ae5eb0f3f56d4720b32baa + languageName: node + linkType: hard + +"hermes-parser@npm:^0.20.1": + version: 0.20.1 + resolution: "hermes-parser@npm:0.20.1" + dependencies: + hermes-estree: "npm:0.20.1" + checksum: 10/b1ae9e9f6b49234fcf2bd45eafde140a3c727b8bcb845ab398016a538f040d326291d1f8b75fd91793b8817f2c600a890e251984d55bdedea74a5143d29f0c81 + languageName: node + linkType: hard + "history@npm:5.2.0": version: 5.2.0 resolution: "history@npm:5.2.0" @@ -15371,7 +15727,7 @@ __metadata: languageName: node linkType: hard -"ignore@npm:^4.0.3, ignore@npm:^4.0.6": +"ignore@npm:^4.0.3": version: 4.0.6 resolution: "ignore@npm:4.0.6" checksum: 10/e04d6bd60d9da12cfe8896acf470824172843dddc25a9be0726199d5e031254634a69ce8479a82f194154b9b28cb3b08bb7a53e56f7f7eba2663e04791e74742 @@ -15430,7 +15786,7 @@ __metadata: languageName: node linkType: hard -"import-fresh@npm:^3.0.0, import-fresh@npm:^3.2.1, import-fresh@npm:^3.3.0": +"import-fresh@npm:^3.2.1, import-fresh@npm:^3.3.0": version: 3.3.0 resolution: "import-fresh@npm:3.3.0" dependencies: @@ -15681,6 +16037,15 @@ __metadata: languageName: node linkType: hard +"invariant@npm:^2.2.4": + version: 2.2.4 + resolution: "invariant@npm:2.2.4" + dependencies: + loose-envify: "npm:^1.0.0" + checksum: 10/cc3182d793aad82a8d1f0af697b462939cb46066ec48bbf1707c150ad5fad6406137e91a262022c269702e01621f35ef60269f6c0d7fd178487959809acdfb14 + languageName: node + linkType: hard + "invert-kv@npm:^1.0.0": version: 1.0.0 resolution: "invert-kv@npm:1.0.0" @@ -15909,7 +16274,7 @@ __metadata: languageName: node linkType: hard -"is-core-module@npm:^2.2.0, is-core-module@npm:^2.5.0, is-core-module@npm:^2.6.0": +"is-core-module@npm:^2.2.0, is-core-module@npm:^2.5.0": version: 2.6.0 resolution: "is-core-module@npm:2.6.0" dependencies: @@ -17222,6 +17587,15 @@ __metadata: languageName: node linkType: hard +"jsesc@npm:^3.0.2": + version: 3.0.2 + resolution: "jsesc@npm:3.0.2" + bin: + jsesc: bin/jsesc + checksum: 10/8e5a7de6b70a8bd71f9cb0b5a7ade6a73ae6ab55e697c74cc997cede97417a3a65ed86c36f7dd6125fe49766e8386c845023d9e213916ca92c9dfdd56e2babf3 + languageName: node + linkType: hard + "jshint@npm:^2.13.6": version: 2.13.6 resolution: "jshint@npm:2.13.6" @@ -17338,17 +17712,6 @@ __metadata: languageName: node linkType: hard -"json5@npm:^1.0.1": - version: 1.0.2 - resolution: "json5@npm:1.0.2" - dependencies: - minimist: "npm:^1.2.0" - bin: - json5: lib/cli.js - checksum: 10/a78d812dbbd5642c4f637dd130954acfd231b074965871c3e28a5bbd571f099d623ecf9161f1960c4ddf68e0cc98dee8bebfdb94a71ad4551f85a1afc94b63f6 - languageName: node - linkType: hard - "json5@npm:^2.2.2, json5@npm:^2.2.3": version: 2.2.3 resolution: "json5@npm:2.2.3" @@ -17421,16 +17784,6 @@ __metadata: languageName: node linkType: hard -"jsx-ast-utils@npm:^2.4.1 || ^3.0.0": - version: 3.2.1 - resolution: "jsx-ast-utils@npm:3.2.1" - dependencies: - array-includes: "npm:^3.1.3" - object.assign: "npm:^4.1.2" - checksum: 10/1195088f55a1aac51b9230266ced07e10c6c9914e14c025f6c55b0acf00a98b218de235cffa2cefb801ca4b2acff75bd26e391cedb46d69f9b9cf35e7b9bb393 - languageName: node - linkType: hard - "just-diff-apply@npm:^5.2.0": version: 5.5.0 resolution: "just-diff-apply@npm:5.5.0" @@ -17505,6 +17858,15 @@ __metadata: languageName: node linkType: hard +"keyv@npm:^4.5.4": + version: 4.5.4 + resolution: "keyv@npm:4.5.4" + dependencies: + json-buffer: "npm:3.0.1" + checksum: 10/167eb6ef64cc84b6fa0780ee50c9de456b422a1e18802209234f7c2cf7eae648c7741f32e50d7e24ccb22b24c13154070b01563d642755b156c357431a191e75 + languageName: node + linkType: hard + "kind-of@npm:^3.0.2, kind-of@npm:^3.0.3, kind-of@npm:^3.2.0": version: 3.2.2 resolution: "kind-of@npm:3.2.2" @@ -17863,6 +18225,15 @@ __metadata: languageName: node linkType: hard +"locate-path@npm:^6.0.0": + version: 6.0.0 + resolution: "locate-path@npm:6.0.0" + dependencies: + p-locate: "npm:^5.0.0" + checksum: 10/72eb661788a0368c099a184c59d2fee760b3831c9c1c33955e8a19ae4a21b4116e53fa736dc086cdeb9fce9f7cc508f2f92d2d3aae516f133e16a2bb59a39f5a + languageName: node + linkType: hard + "lodash._reinterpolate@npm:^3.0.0": version: 3.0.0 resolution: "lodash._reinterpolate@npm:3.0.0" @@ -20085,6 +20456,13 @@ __metadata: languageName: node linkType: hard +"node-releases@npm:^2.0.18": + version: 2.0.18 + resolution: "node-releases@npm:2.0.18" + checksum: 10/241e5fa9556f1c12bafb83c6c3e94f8cf3d8f2f8f904906ecef6e10bcaa1d59aa61212d4651bec70052015fc54bd3fdcdbe7fc0f638a17e6685aa586c076ec4e + languageName: node + linkType: hard + "node.extend@npm:^2.0.0": version: 2.0.2 resolution: "node.extend@npm:2.0.2" @@ -20653,18 +21031,7 @@ __metadata: languageName: node linkType: hard -"object.entries@npm:^1.1.4": - version: 1.1.4 - resolution: "object.entries@npm:1.1.4" - dependencies: - call-bind: "npm:^1.0.2" - define-properties: "npm:^1.1.3" - es-abstract: "npm:^1.18.2" - checksum: 10/a89a7047f75beb9ef1a203b1fbb1294fc1cd58b1be130ab4cce6d0bd3af9e4651ecf0434dfbaad00597f0356b6c618fbfaaeec665f60d6f7e4a9f5b88e9a23d9 - languageName: node - linkType: hard - -"object.fromentries@npm:^2.0.0, object.fromentries@npm:^2.0.4": +"object.fromentries@npm:^2.0.0": version: 2.0.4 resolution: "object.fromentries@npm:2.0.4" dependencies: @@ -20691,16 +21058,6 @@ __metadata: languageName: node linkType: hard -"object.hasown@npm:^1.0.0": - version: 1.0.0 - resolution: "object.hasown@npm:1.0.0" - dependencies: - define-properties: "npm:^1.1.3" - es-abstract: "npm:^1.18.1" - checksum: 10/77c9c3dd744c811ba6e0a687d2dc5c34f4fb64b311cd0e042e9c26d1c87986c1aa5859aa0a552f3b6054abea738d962c0ced2752f859588365f08df3c9e1bd4a - languageName: node - linkType: hard - "object.pick@npm:^1.3.0": version: 1.3.0 resolution: "object.pick@npm:1.3.0" @@ -20710,17 +21067,6 @@ __metadata: languageName: node linkType: hard -"object.values@npm:^1.1.4": - version: 1.1.4 - resolution: "object.values@npm:1.1.4" - dependencies: - call-bind: "npm:^1.0.2" - define-properties: "npm:^1.1.3" - es-abstract: "npm:^1.18.2" - checksum: 10/546979591a57ef1708ddad75d3c13f1534d9c03a494ae313a629e791777269611be7157e80fbb4528039c6ebd17e6e65da5404a8d88ea4239f144c489b83a096 - languageName: node - linkType: hard - "obuf@npm:~1.1.2": version: 1.1.2 resolution: "obuf@npm:1.1.2" @@ -20869,17 +21215,17 @@ __metadata: languageName: node linkType: hard -"optionator@npm:^0.9.1": - version: 0.9.1 - resolution: "optionator@npm:0.9.1" +"optionator@npm:^0.9.3": + version: 0.9.4 + resolution: "optionator@npm:0.9.4" dependencies: deep-is: "npm:^0.1.3" fast-levenshtein: "npm:^2.0.6" levn: "npm:^0.4.1" prelude-ls: "npm:^1.2.1" type-check: "npm:^0.4.0" - word-wrap: "npm:^1.2.3" - checksum: 10/19cfb625ba3cafd99c204744595a8b5111491632d379be341a8286c53a0101adac6f7ca9be4319ccecaaf5d43a55e65dde8b434620726032472833d958d43698 + word-wrap: "npm:^1.2.5" + checksum: 10/a8398559c60aef88d7f353a4f98dcdff6090a4e70f874c827302bf1213d9106a1c4d5fcb68dacb1feb3c30a04c4102f41047aa55d4c576b863d6fc876e001af6 languageName: node linkType: hard @@ -20991,7 +21337,7 @@ __metadata: languageName: node linkType: hard -"p-limit@npm:^3.1.0": +"p-limit@npm:^3.0.2, p-limit@npm:^3.1.0": version: 3.1.0 resolution: "p-limit@npm:3.1.0" dependencies: @@ -21036,6 +21382,15 @@ __metadata: languageName: node linkType: hard +"p-locate@npm:^5.0.0": + version: 5.0.0 + resolution: "p-locate@npm:5.0.0" + dependencies: + p-limit: "npm:^3.0.2" + checksum: 10/1623088f36cf1cbca58e9b61c4e62bf0c60a07af5ae1ca99a720837356b5b6c5ba3eb1b2127e47a06865fee59dd0453cad7cc844cda9d5a62ac1a5a51b7c86d3 + languageName: node + linkType: hard + "p-map-series@npm:2.1.0": version: 2.1.0 resolution: "p-map-series@npm:2.1.0" @@ -21787,15 +22142,6 @@ __metadata: languageName: node linkType: hard -"pkg-dir@npm:^2.0.0": - version: 2.0.0 - resolution: "pkg-dir@npm:2.0.0" - dependencies: - find-up: "npm:^2.1.0" - checksum: 10/8c72b712305b51e1108f0ffda5ec1525a8307e54a5855db8fb1dcf77561a5ae98e2ba3b4814c9806a679f76b2f7e5dd98bde18d07e594ddd9fdd25e9cf242ea1 - languageName: node - linkType: hard - "pkg-dir@npm:^3.0.0": version: 3.0.0 resolution: "pkg-dir@npm:3.0.0" @@ -21825,15 +22171,6 @@ __metadata: languageName: node linkType: hard -"pkg-up@npm:^2.0.0": - version: 2.0.0 - resolution: "pkg-up@npm:2.0.0" - dependencies: - find-up: "npm:^2.1.0" - checksum: 10/de4b418175281a082e366ce1a919f032520ee53cf421578b35173f03816f6ec4c19e1552066840bb0988c3e1215859653948efd6ca3507a23f4f44229269500d - languageName: node - linkType: hard - "please-upgrade-node@npm:^3.2.0": version: 3.2.0 resolution: "please-upgrade-node@npm:3.2.0" @@ -21995,15 +22332,6 @@ __metadata: languageName: node linkType: hard -"prettier-linter-helpers@npm:^1.0.0": - version: 1.0.0 - resolution: "prettier-linter-helpers@npm:1.0.0" - dependencies: - fast-diff: "npm:^1.1.2" - checksum: 10/00ce8011cf6430158d27f9c92cfea0a7699405633f7f1d4a45f07e21bf78e99895911cbcdc3853db3a824201a7c745bd49bfea8abd5fb9883e765a90f74f8392 - languageName: node - linkType: hard - "prettier@npm:^2.2.1": version: 2.4.1 resolution: "prettier@npm:2.4.1" @@ -22020,6 +22348,18 @@ __metadata: languageName: node linkType: hard +"pretty-format@npm:^24": + version: 24.9.0 + resolution: "pretty-format@npm:24.9.0" + dependencies: + "@jest/types": "npm:^24.9.0" + ansi-regex: "npm:^4.0.0" + ansi-styles: "npm:^3.2.0" + react-is: "npm:^16.8.4" + checksum: 10/f6664330e8129fd9039d328c90abea3ea6b8acf36f813cc8fc83aad8b1f755b54f756e317c88ef75f66132caeae107bb4b5f134ae7380bbf57e35d37bcfb197f + languageName: node + linkType: hard + "pretty-format@npm:^27.0.2": version: 27.5.1 resolution: "pretty-format@npm:27.5.1" @@ -22095,13 +22435,6 @@ __metadata: languageName: node linkType: hard -"progress@npm:^2.0.0": - version: 2.0.3 - resolution: "progress@npm:2.0.3" - checksum: 10/e6f0bcb71f716eee9dfac0fe8a2606e3704d6a64dd93baaf49fbadbc8499989a610fe14cf1bc6f61b6d6653c49408d94f4a94e124538084efd8e4cf525e0293d - languageName: node - linkType: hard - "promise-all-reject-late@npm:^1.0.0": version: 1.0.1 resolution: "promise-all-reject-late@npm:1.0.1" @@ -22629,7 +22962,7 @@ __metadata: languageName: node linkType: hard -"react-is@npm:^16.7.0, react-is@npm:^16.8.1": +"react-is@npm:^16.7.0, react-is@npm:^16.8.1, react-is@npm:^16.8.4": version: 16.13.1 resolution: "react-is@npm:16.13.1" checksum: 10/5aa564a1cde7d391ac980bedee21202fc90bdea3b399952117f54fb71a932af1e5902020144fb354b4690b2414a0c7aafe798eb617b76a3d441d956db7726fdf @@ -23102,16 +23435,6 @@ __metadata: languageName: node linkType: hard -"regexp.prototype.flags@npm:^1.3.1": - version: 1.3.1 - resolution: "regexp.prototype.flags@npm:1.3.1" - dependencies: - call-bind: "npm:^1.0.2" - define-properties: "npm:^1.1.3" - checksum: 10/751e69bf6c36a92020a8afd1c0c7fbda04c4a230b275b7a5bbea93b72fb9ea41abfcfe70a8b1986c817af03df642b68e3113c7ca2bdce7df408026d7473623e3 - languageName: node - linkType: hard - "regexp.prototype.flags@npm:^1.4.3": version: 1.4.3 resolution: "regexp.prototype.flags@npm:1.4.3" @@ -23135,13 +23458,6 @@ __metadata: languageName: node linkType: hard -"regexpp@npm:^3.1.0": - version: 3.2.0 - resolution: "regexpp@npm:3.2.0" - checksum: 10/3310010895a906873262f4b494fc99bcef1e71ef6720a0532c5999ca586498cbd4a284c8e3c2423f9d1d37512fd08d6064b7564e0e59508cf938f76dd15ace84 - languageName: node - linkType: hard - "rehype-raw@npm:^7.0.0": version: 7.0.0 resolution: "rehype-raw@npm:7.0.0" @@ -23396,16 +23712,6 @@ __metadata: languageName: node linkType: hard -"resolve@npm:^2.0.0-next.3": - version: 2.0.0-next.3 - resolution: "resolve@npm:2.0.0-next.3" - dependencies: - is-core-module: "npm:^2.2.0" - path-parse: "npm:^1.0.6" - checksum: 10/20378839484ef1dbfcfd271ada32e49176d15639f001669d07e23a6dce7d458208716aaafd05c99737ff1656db9381c9f43792e9568fa7787e0d2aba7401cd49 - languageName: node - linkType: hard - "resolve@patch:resolve@npm%3A^1.0.0#optional!builtin, resolve@patch:resolve@npm%3A^1.10.0#optional!builtin, resolve@patch:resolve@npm%3A^1.20.0#optional!builtin": version: 1.20.0 resolution: "resolve@patch:resolve@npm%3A1.20.0#optional!builtin::version=1.20.0&hash=c3c19d" @@ -23442,16 +23748,6 @@ __metadata: languageName: node linkType: hard -"resolve@patch:resolve@npm%3A^2.0.0-next.3#optional!builtin": - version: 2.0.0-next.3 - resolution: "resolve@patch:resolve@npm%3A2.0.0-next.3#optional!builtin::version=2.0.0-next.3&hash=c3c19d" - dependencies: - is-core-module: "npm:^2.2.0" - path-parse: "npm:^1.0.6" - checksum: 10/e29030dd551be0f1244dbc691c426e89407d90061da99675a8578a6127fc2c23d4d3a7e16e31dbab1bf75330e023a4c19a15e37cca2269736c8fac09f8f2a38c - languageName: node - linkType: hard - "response-iterator@npm:^0.2.6": version: 0.2.6 resolution: "response-iterator@npm:0.2.6" @@ -23635,22 +23931,18 @@ __metadata: resolution: "root-workspace-0b6124@workspace:." dependencies: "@elastic/apm-rum-react": "npm:2.0.2" + "@eslint/js": "npm:^9.13.0" "@sentry/cli": "npm:1.37.4" "@testing-library/jest-dom": "npm:6.1.3" "@types/ioredis-mock": "npm:^8.2.2" "@types/jsdom": "npm:^16" "@types/testing-library__jest-dom": "npm:5.14.5" - "@typescript-eslint/eslint-plugin": "npm:^4.19.0" - "@typescript-eslint/parser": "npm:^4.19.0" "@vitest/coverage-v8": "npm:^1.5.0" "@yarnpkg/pnpify": "npm:^3.1.1-rc.8" + babel-plugin-react-compiler: "npm:19.0.0-beta-8a03594-20241020" codecov: "npm:3.8.3" - eslint: "npm:7.23.0" - eslint-config-prettier: "npm:^8.1.0" - eslint-plugin-import: "npm:^2.22.1" - eslint-plugin-prettier: "npm:^3.3.1" - eslint-plugin-react: "npm:^7.23.1" - eslint-plugin-react-hooks: "npm:^4.2.0" + eslint: "npm:^9.13.0" + eslint-plugin-react-compiler: "npm:19.0.0-beta-8a03594-20241020" graphql: "npm:16.8.1" history: "npm:5.2.0" husky: "npm:5.1.1" @@ -23666,6 +23958,7 @@ __metadata: sass: "npm:^1.56.1" tsc-watch: "npm:6.0.4" typescript: "npm:5.1.6" + typescript-eslint: "npm:^8.11.0" vite: "npm:5.4.8" vitest: "npm:1.5.0" vitest-fetch-mock: "npm:0.2.2" @@ -23878,7 +24171,7 @@ __metadata: languageName: node linkType: hard -"semver@npm:^7.0.0, semver@npm:^7.1.1, semver@npm:^7.1.2, semver@npm:^7.2.1, semver@npm:^7.3.2, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:^7.5.3, semver@npm:^7.5.4": +"semver@npm:^7.0.0, semver@npm:^7.1.1, semver@npm:^7.1.2, semver@npm:^7.3.2, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:^7.5.3, semver@npm:^7.5.4": version: 7.5.4 resolution: "semver@npm:7.5.4" dependencies: @@ -24411,7 +24704,7 @@ __metadata: languageName: node linkType: hard -"source-map@npm:^0.5.6, source-map@npm:^0.5.7": +"source-map@npm:^0.5.0, source-map@npm:^0.5.6, source-map@npm:^0.5.7": version: 0.5.7 resolution: "source-map@npm:0.5.7" checksum: 10/9b4ac749ec5b5831cad1f8cc4c19c4298ebc7474b24a0acf293e2f040f03f8eeccb3d01f12aa0f90cf46d555c887e03912b83a042c627f419bda5152d89c5269 @@ -24840,22 +25133,6 @@ __metadata: languageName: node linkType: hard -"string.prototype.matchall@npm:^4.0.5": - version: 4.0.5 - resolution: "string.prototype.matchall@npm:4.0.5" - dependencies: - call-bind: "npm:^1.0.2" - define-properties: "npm:^1.1.3" - es-abstract: "npm:^1.18.2" - get-intrinsic: "npm:^1.1.1" - has-symbols: "npm:^1.0.2" - internal-slot: "npm:^1.0.3" - regexp.prototype.flags: "npm:^1.3.1" - side-channel: "npm:^1.0.4" - checksum: 10/ac7d7ec373f1390aa1051e6427de34d8ae1e551cd2ca6c5910902fc19983364a772b14d37be799f132c0087f9219929e3227c9d4ee92af4776dd80bb7bb91b97 - languageName: node - linkType: hard - "string.prototype.trim@npm:^1.2.9": version: 1.2.9 resolution: "string.prototype.trim@npm:1.2.9" @@ -25088,7 +25365,7 @@ __metadata: languageName: node linkType: hard -"strip-json-comments@npm:^3.1.0, strip-json-comments@npm:^3.1.1": +"strip-json-comments@npm:^3.1.1": version: 3.1.1 resolution: "strip-json-comments@npm:3.1.1" checksum: 10/492f73e27268f9b1c122733f28ecb0e7e8d8a531a6662efbd08e22cccb3f9475e90a1b82cab06a392f6afae6d2de636f977e231296400d0ec5304ba70f166443 @@ -25289,20 +25566,6 @@ __metadata: languageName: node linkType: hard -"table@npm:^6.0.4": - version: 6.7.1 - resolution: "table@npm:6.7.1" - dependencies: - ajv: "npm:^8.0.1" - lodash.clonedeep: "npm:^4.5.0" - lodash.truncate: "npm:^4.4.2" - slice-ansi: "npm:^4.0.0" - string-width: "npm:^4.2.0" - strip-ansi: "npm:^6.0.0" - checksum: 10/654090e31734c65fc17e55abd90c08febb9be115872d12ca87375cc2c061a65fe22889cec59c25f3e20a3bed924b52c32412d8ccb424057f1bd2fe2840d8201f - languageName: node - linkType: hard - "table@npm:^6.8.2": version: 6.8.2 resolution: "table@npm:6.8.2" @@ -25797,6 +26060,13 @@ __metadata: languageName: node linkType: hard +"trim-right@npm:^1.0.1": + version: 1.0.1 + resolution: "trim-right@npm:1.0.1" + checksum: 10/9120af534e006a7424a4f9358710e6e707887b6ccf7ea69e50d6ac6464db1fe22268400def01752f09769025d480395159778153fb98d4a2f6f40d4cf5d4f3b6 + languageName: node + linkType: hard + "trough@npm:^2.0.0": version: 2.2.0 resolution: "trough@npm:2.2.0" @@ -25804,6 +26074,15 @@ __metadata: languageName: node linkType: hard +"ts-api-utils@npm:^1.3.0": + version: 1.3.0 + resolution: "ts-api-utils@npm:1.3.0" + peerDependencies: + typescript: ">=4.2.0" + checksum: 10/3ee44faa24410cd649b5c864e068d438aa437ef64e9e4a66a41646a6d3024d3097a695eeb3fb26ee364705d3cb9653a65756d009e6a53badb6066a5f447bf7ed + languageName: node + linkType: hard + "ts-invariant@npm:^0.10.3": version: 0.10.3 resolution: "ts-invariant@npm:0.10.3" @@ -25895,18 +26174,6 @@ __metadata: languageName: node linkType: hard -"tsconfig-paths@npm:^3.11.0": - version: 3.11.0 - resolution: "tsconfig-paths@npm:3.11.0" - dependencies: - "@types/json5": "npm:^0.0.29" - json5: "npm:^1.0.1" - minimist: "npm:^1.2.0" - strip-bom: "npm:^3.0.0" - checksum: 10/b0278a69dbfd40fd89584ca3e3f33ace86e461439cc6c38664920a9f924b6abee4f98f101b2819aec394848fb9c2aeefb006823bc3f3eb1cea74a2496c3365b2 - languageName: node - linkType: hard - "tsconfig-paths@npm:^4.1.2": version: 4.2.0 resolution: "tsconfig-paths@npm:4.2.0" @@ -25930,7 +26197,7 @@ __metadata: languageName: node linkType: hard -"tslib@npm:^1.11.1, tslib@npm:^1.13.0, tslib@npm:^1.8.1, tslib@npm:^1.9.0": +"tslib@npm:^1.11.1, tslib@npm:^1.13.0, tslib@npm:^1.9.0": version: 1.14.1 resolution: "tslib@npm:1.14.1" checksum: 10/7dbf34e6f55c6492637adb81b555af5e3b4f9cc6b998fb440dac82d3b42bdc91560a35a5fb75e20e24a076c651438234da6743d139e4feabf0783f3cdfe1dddb @@ -25965,17 +26232,6 @@ __metadata: languageName: node linkType: hard -"tsutils@npm:^3.21.0": - version: 3.21.0 - resolution: "tsutils@npm:3.21.0" - dependencies: - tslib: "npm:^1.8.1" - peerDependencies: - typescript: ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" - checksum: 10/ea036bec1dd024e309939ffd49fda7a351c0e87a1b8eb049570dd119d447250e2c56e0e6c00554e8205760e7417793fdebff752a46e573fbe07d4f375502a5b2 - languageName: node - linkType: hard - "tuf-js@npm:^2.2.1": version: 2.2.1 resolution: "tuf-js@npm:2.2.1" @@ -26049,13 +26305,6 @@ __metadata: languageName: node linkType: hard -"type-fest@npm:^0.20.2": - version: 0.20.2 - resolution: "type-fest@npm:0.20.2" - checksum: 10/8907e16284b2d6cfa4f4817e93520121941baba36b39219ea36acfe64c86b9dbc10c9941af450bd60832c8f43464974d51c0957f9858bc66b952b66b6914cbb9 - languageName: node - linkType: hard - "type-fest@npm:^0.21.3": version: 0.21.3 resolution: "type-fest@npm:0.21.3" @@ -26160,6 +26409,20 @@ __metadata: languageName: node linkType: hard +"typescript-eslint@npm:^8.11.0": + version: 8.11.0 + resolution: "typescript-eslint@npm:8.11.0" + dependencies: + "@typescript-eslint/eslint-plugin": "npm:8.11.0" + "@typescript-eslint/parser": "npm:8.11.0" + "@typescript-eslint/utils": "npm:8.11.0" + peerDependenciesMeta: + typescript: + optional: true + checksum: 10/b95b78b52ab0a5da842e9b034173ca3b606b40d866261a02af19af3a2e10011c6452fd4ab5aa7e86c9d44a64b6c8768f71999be8bc998aaa9864ac3353a2ec3c + languageName: node + linkType: hard + "typescript@npm:5.1.6": version: 5.1.6 resolution: "typescript@npm:5.1.6" @@ -26518,6 +26781,20 @@ __metadata: languageName: node linkType: hard +"update-browserslist-db@npm:^1.1.1": + version: 1.1.1 + resolution: "update-browserslist-db@npm:1.1.1" + dependencies: + escalade: "npm:^3.2.0" + picocolors: "npm:^1.1.0" + peerDependencies: + browserslist: ">= 4.21.0" + bin: + update-browserslist-db: cli.js + checksum: 10/7678dd8609750588d01aa7460e8eddf2ff9d16c2a52fb1811190e0d056390f1fdffd94db3cf8fb209cf634ab4fa9407886338711c71cc6ccade5eeb22b093734 + languageName: node + linkType: hard + "update-input-width@npm:^1.2.2": version: 1.2.2 resolution: "update-input-width@npm:1.2.2" @@ -26664,13 +26941,6 @@ __metadata: languageName: node linkType: hard -"v8-compile-cache@npm:^2.0.3": - version: 2.3.0 - resolution: "v8-compile-cache@npm:2.3.0" - checksum: 10/7de7423db6f48d76cffae93d70d503e160c97fc85e55945036d719111e20b33c4be5c21aa8b123a3da203bbb3bc4c8180f9667d5ccafcff11d749fae204ec7be - languageName: node - linkType: hard - "v8-to-istanbul@npm:^9.0.1": version: 9.1.0 resolution: "v8-to-istanbul@npm:9.1.0" @@ -27309,7 +27579,7 @@ __metadata: languageName: node linkType: hard -"word-wrap@npm:^1.2.3, word-wrap@npm:~1.2.3": +"word-wrap@npm:^1.2.5, word-wrap@npm:~1.2.3": version: 1.2.5 resolution: "word-wrap@npm:1.2.5" checksum: 10/1ec6f6089f205f83037be10d0c4b34c9183b0b63fca0834a5b3cee55dd321429d73d40bb44c8fc8471b5203d6e8f8275717f49a8ff4b2b0ab41d7e1b563e0854 @@ -27751,6 +28021,31 @@ __metadata: languageName: node linkType: hard +"zod-validation-error@npm:^2.1.0": + version: 2.1.0 + resolution: "zod-validation-error@npm:2.1.0" + peerDependencies: + zod: ^3.18.0 + checksum: 10/fdd3a9fdf176571404abf22af3af330e89227c3cb2e7092d61d0c6dfc8dd688648025346303585a03db51aa466efef5ebb8bdf14dbe630ccdedd5d0aa00741ab + languageName: node + linkType: hard + +"zod-validation-error@npm:^3.0.3": + version: 3.4.0 + resolution: "zod-validation-error@npm:3.4.0" + peerDependencies: + zod: ^3.18.0 + checksum: 10/b98b1bbba14a3bb31649a1566c8c5a5213ec70dcaa2cbb1e89db00d56648a446225b35a8f6768471730d7013f4f141cd70c2b9740d69e6433ebfa148aecdac2f + languageName: node + linkType: hard + +"zod@npm:^3.22.4": + version: 3.23.8 + resolution: "zod@npm:3.23.8" + checksum: 10/846fd73e1af0def79c19d510ea9e4a795544a67d5b34b7e1c4d0425bf6bfd1c719446d94cdfa1721c1987d891321d61f779e8236fde517dc0e524aa851a6eff1 + languageName: node + linkType: hard + "zwitch@npm:^2.0.0": version: 2.0.4 resolution: "zwitch@npm:2.0.4" From 79389b9eced44369c75406f78f2cc7e5134260d5 Mon Sep 17 00:00:00 2001 From: Nell Hardcastle Date: Tue, 22 Oct 2024 13:59:41 -0700 Subject: [PATCH 02/23] fix(server): Use Object.hasOwn over hasOwnProperty --- packages/openneuro-server/src/routes.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/openneuro-server/src/routes.ts b/packages/openneuro-server/src/routes.ts index 5e9a231321..2ea19b8199 100644 --- a/packages/openneuro-server/src/routes.ts +++ b/packages/openneuro-server/src/routes.ts @@ -177,7 +177,7 @@ const routes = [ const router = express.Router() for (const route of routes) { - const arr = route.hasOwnProperty("middleware") ? route.middleware : [] + const arr = Object.hasOwn(route, "middleware") ? route.middleware : [] arr.unshift(route.url) arr.push(route.handler) router[route.method](...arr) From e6b30601476290f0e6c8ea3ba580a45d747a7919 Mon Sep 17 00:00:00 2001 From: Nell Hardcastle Date: Tue, 22 Oct 2024 14:00:19 -0700 Subject: [PATCH 03/23] fix(app): Disable linting for react.d.ts type helper in tests --- packages/openneuro-app/src/@types/react.d.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/openneuro-app/src/@types/react.d.ts b/packages/openneuro-app/src/@types/react.d.ts index d30b029519..2da9253cd3 100644 --- a/packages/openneuro-app/src/@types/react.d.ts +++ b/packages/openneuro-app/src/@types/react.d.ts @@ -1,3 +1,4 @@ +/* eslint-disable */ import React from "react" /** From 58eb99bc33ba395db5860b6b4a699aa3b81e71b8 Mon Sep 17 00:00:00 2001 From: Nell Hardcastle Date: Tue, 22 Oct 2024 14:00:48 -0700 Subject: [PATCH 04/23] fix(server): Prefix unreferenced validateUrl vars with _ --- packages/openneuro-server/src/utils/validateUrl.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/openneuro-server/src/utils/validateUrl.ts b/packages/openneuro-server/src/utils/validateUrl.ts index 0eeb55f73d..1f8643963a 100644 --- a/packages/openneuro-server/src/utils/validateUrl.ts +++ b/packages/openneuro-server/src/utils/validateUrl.ts @@ -7,7 +7,7 @@ export function validateUrl(value: string): boolean { try { const url = new URL(value) return url.protocol === "https:" - } catch (err) { + } catch (_err) { return false } } From 7d996c76efed5ce608d6e0a4b3346e851624bfa3 Mon Sep 17 00:00:00 2001 From: Nell Hardcastle Date: Tue, 22 Oct 2024 14:02:38 -0700 Subject: [PATCH 05/23] chore(server): Use mongoose types as a type import --- packages/openneuro-server/src/models/analytics.ts | 3 ++- packages/openneuro-server/src/models/badAnnexObject.ts | 3 ++- packages/openneuro-server/src/models/comment.ts | 3 ++- packages/openneuro-server/src/models/counter.ts | 3 ++- packages/openneuro-server/src/models/dataset.ts | 3 ++- packages/openneuro-server/src/models/deletion.ts | 3 ++- packages/openneuro-server/src/models/deprecatedSnapshot.ts | 3 ++- packages/openneuro-server/src/models/doi.ts | 3 ++- packages/openneuro-server/src/models/file.ts | 3 ++- packages/openneuro-server/src/models/ingestDataset.ts | 3 ++- packages/openneuro-server/src/models/issue.ts | 3 ++- packages/openneuro-server/src/models/key.ts | 3 ++- packages/openneuro-server/src/models/mailgunIdentifier.ts | 3 ++- packages/openneuro-server/src/models/metadata.ts | 3 ++- packages/openneuro-server/src/models/newsletter.ts | 3 ++- packages/openneuro-server/src/models/notification.ts | 3 ++- packages/openneuro-server/src/models/permission.ts | 3 ++- packages/openneuro-server/src/models/reviewer.ts | 3 ++- packages/openneuro-server/src/models/snapshot.ts | 3 ++- packages/openneuro-server/src/models/stars.ts | 3 ++- packages/openneuro-server/src/models/subscription.ts | 3 ++- packages/openneuro-server/src/models/summary.ts | 3 ++- packages/openneuro-server/src/models/upload.ts | 3 ++- packages/openneuro-server/src/models/user.ts | 3 ++- 24 files changed, 48 insertions(+), 24 deletions(-) diff --git a/packages/openneuro-server/src/models/analytics.ts b/packages/openneuro-server/src/models/analytics.ts index aa8dfd84c5..95dfb18038 100644 --- a/packages/openneuro-server/src/models/analytics.ts +++ b/packages/openneuro-server/src/models/analytics.ts @@ -1,4 +1,5 @@ -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" const { Schema, model } = mongoose export interface AnalyticsDocument extends Document { diff --git a/packages/openneuro-server/src/models/badAnnexObject.ts b/packages/openneuro-server/src/models/badAnnexObject.ts index 384cf22c95..b79561e811 100644 --- a/packages/openneuro-server/src/models/badAnnexObject.ts +++ b/packages/openneuro-server/src/models/badAnnexObject.ts @@ -1,4 +1,5 @@ -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" import { UserDocument } from "./user" const ObjectId = mongoose.Schema.Types.ObjectId diff --git a/packages/openneuro-server/src/models/comment.ts b/packages/openneuro-server/src/models/comment.ts index 22d3eefa73..bc62102ed1 100644 --- a/packages/openneuro-server/src/models/comment.ts +++ b/packages/openneuro-server/src/models/comment.ts @@ -1,4 +1,5 @@ -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" const { Schema, model } = mongoose export interface CommentDocument extends Document { diff --git a/packages/openneuro-server/src/models/counter.ts b/packages/openneuro-server/src/models/counter.ts index 907c89faa8..2779254b2e 100644 --- a/packages/openneuro-server/src/models/counter.ts +++ b/packages/openneuro-server/src/models/counter.ts @@ -1,4 +1,5 @@ -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" const { Schema, model } = mongoose export interface CounterDocument extends Document { diff --git a/packages/openneuro-server/src/models/dataset.ts b/packages/openneuro-server/src/models/dataset.ts index c77f030164..b7ce0eca06 100644 --- a/packages/openneuro-server/src/models/dataset.ts +++ b/packages/openneuro-server/src/models/dataset.ts @@ -1,4 +1,5 @@ -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" const { Schema, model } = mongoose // External relations annotating the whole dataset diff --git a/packages/openneuro-server/src/models/deletion.ts b/packages/openneuro-server/src/models/deletion.ts index 46e278c10b..571202425a 100644 --- a/packages/openneuro-server/src/models/deletion.ts +++ b/packages/openneuro-server/src/models/deletion.ts @@ -1,4 +1,5 @@ -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" const { Schema, model } = mongoose export interface DeletionDocument extends Document { diff --git a/packages/openneuro-server/src/models/deprecatedSnapshot.ts b/packages/openneuro-server/src/models/deprecatedSnapshot.ts index 4c6b38d048..1ab2d11acb 100644 --- a/packages/openneuro-server/src/models/deprecatedSnapshot.ts +++ b/packages/openneuro-server/src/models/deprecatedSnapshot.ts @@ -1,4 +1,5 @@ -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" const { Schema, model } = mongoose export interface DeprecatedSnapshotDocument extends Document { diff --git a/packages/openneuro-server/src/models/doi.ts b/packages/openneuro-server/src/models/doi.ts index fee733de06..079eccdc73 100644 --- a/packages/openneuro-server/src/models/doi.ts +++ b/packages/openneuro-server/src/models/doi.ts @@ -1,4 +1,5 @@ -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" const { Schema, model } = mongoose export interface DoiDocument extends Document { diff --git a/packages/openneuro-server/src/models/file.ts b/packages/openneuro-server/src/models/file.ts index 2c1a1a221d..948b3fdf60 100644 --- a/packages/openneuro-server/src/models/file.ts +++ b/packages/openneuro-server/src/models/file.ts @@ -1,4 +1,5 @@ -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" const { Schema, model } = mongoose export interface FileDocument extends Document { diff --git a/packages/openneuro-server/src/models/ingestDataset.ts b/packages/openneuro-server/src/models/ingestDataset.ts index 8077afaff6..3507ba7591 100644 --- a/packages/openneuro-server/src/models/ingestDataset.ts +++ b/packages/openneuro-server/src/models/ingestDataset.ts @@ -1,7 +1,8 @@ /** * Model for ingest of new datasets from a remote URL (zip/tarball) */ -import mongoose, { Document, ObjectId } from "mongoose" +import mongoose from "mongoose" +import type { Document, ObjectId } from "mongoose" const { Schema, model } = mongoose import { validateUrl } from "../utils/validateUrl" diff --git a/packages/openneuro-server/src/models/issue.ts b/packages/openneuro-server/src/models/issue.ts index 73132fb170..fd53e875be 100644 --- a/packages/openneuro-server/src/models/issue.ts +++ b/packages/openneuro-server/src/models/issue.ts @@ -1,4 +1,5 @@ -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" const { Schema, model } = mongoose export interface IssueDocument extends Document { diff --git a/packages/openneuro-server/src/models/key.ts b/packages/openneuro-server/src/models/key.ts index ef8eb0182c..cd974be6f6 100644 --- a/packages/openneuro-server/src/models/key.ts +++ b/packages/openneuro-server/src/models/key.ts @@ -1,4 +1,5 @@ -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" const { Schema, model } = mongoose export interface KeyDocument extends Document { diff --git a/packages/openneuro-server/src/models/mailgunIdentifier.ts b/packages/openneuro-server/src/models/mailgunIdentifier.ts index e07c33d59d..6cc5a8a0f3 100644 --- a/packages/openneuro-server/src/models/mailgunIdentifier.ts +++ b/packages/openneuro-server/src/models/mailgunIdentifier.ts @@ -1,4 +1,5 @@ -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" const { Schema, model } = mongoose export interface MailgunIdentifierDocument extends Document { diff --git a/packages/openneuro-server/src/models/metadata.ts b/packages/openneuro-server/src/models/metadata.ts index 765433bcb9..ad81b5ccc7 100644 --- a/packages/openneuro-server/src/models/metadata.ts +++ b/packages/openneuro-server/src/models/metadata.ts @@ -1,5 +1,6 @@ import { v4 as uuidv4 } from "uuid" -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" const { Schema, model } = mongoose export interface MetadataDocument extends Document { diff --git a/packages/openneuro-server/src/models/newsletter.ts b/packages/openneuro-server/src/models/newsletter.ts index 2655b6b50b..4e13b1ba49 100644 --- a/packages/openneuro-server/src/models/newsletter.ts +++ b/packages/openneuro-server/src/models/newsletter.ts @@ -1,4 +1,5 @@ -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" const { Schema, model } = mongoose export interface NewsletterDocument extends Document { diff --git a/packages/openneuro-server/src/models/notification.ts b/packages/openneuro-server/src/models/notification.ts index cf4cff7c4a..16ce60e4cf 100644 --- a/packages/openneuro-server/src/models/notification.ts +++ b/packages/openneuro-server/src/models/notification.ts @@ -1,4 +1,5 @@ -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" const { Schema, model } = mongoose export interface NotificationDocument extends Document { diff --git a/packages/openneuro-server/src/models/permission.ts b/packages/openneuro-server/src/models/permission.ts index ddaedbb802..d2e1e049d8 100644 --- a/packages/openneuro-server/src/models/permission.ts +++ b/packages/openneuro-server/src/models/permission.ts @@ -1,4 +1,5 @@ -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" const { Schema, model } = mongoose export interface PermissionDocument extends Document { diff --git a/packages/openneuro-server/src/models/reviewer.ts b/packages/openneuro-server/src/models/reviewer.ts index 13a94f6dfd..92dcb5218f 100644 --- a/packages/openneuro-server/src/models/reviewer.ts +++ b/packages/openneuro-server/src/models/reviewer.ts @@ -1,5 +1,6 @@ import { v4 as uuidv4 } from "uuid" -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" const { Schema, model } = mongoose export interface ReviewerDocument extends Document { diff --git a/packages/openneuro-server/src/models/snapshot.ts b/packages/openneuro-server/src/models/snapshot.ts index 7e80edac4f..8f0adcd335 100644 --- a/packages/openneuro-server/src/models/snapshot.ts +++ b/packages/openneuro-server/src/models/snapshot.ts @@ -1,4 +1,5 @@ -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" const { Schema, model } = mongoose export interface SnapshotDocument extends Document { diff --git a/packages/openneuro-server/src/models/stars.ts b/packages/openneuro-server/src/models/stars.ts index dbc7ae9842..e1a14ac402 100644 --- a/packages/openneuro-server/src/models/stars.ts +++ b/packages/openneuro-server/src/models/stars.ts @@ -1,4 +1,5 @@ -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" const { Schema, model } = mongoose export interface StarDocument extends Document { diff --git a/packages/openneuro-server/src/models/subscription.ts b/packages/openneuro-server/src/models/subscription.ts index 33b67f7c75..a68e1e04bd 100644 --- a/packages/openneuro-server/src/models/subscription.ts +++ b/packages/openneuro-server/src/models/subscription.ts @@ -1,4 +1,5 @@ -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" const { Schema, model } = mongoose export interface SubscriptionDocument extends Document { diff --git a/packages/openneuro-server/src/models/summary.ts b/packages/openneuro-server/src/models/summary.ts index 03a1f6af14..840bb6211f 100644 --- a/packages/openneuro-server/src/models/summary.ts +++ b/packages/openneuro-server/src/models/summary.ts @@ -1,4 +1,5 @@ -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" const { Schema, model } = mongoose export interface SummaryPetField { diff --git a/packages/openneuro-server/src/models/upload.ts b/packages/openneuro-server/src/models/upload.ts index d527af4a40..d41d112ced 100644 --- a/packages/openneuro-server/src/models/upload.ts +++ b/packages/openneuro-server/src/models/upload.ts @@ -1,5 +1,6 @@ import { v4 as uuidv4 } from "uuid" -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" const { Schema, model } = mongoose export interface UploadDocument extends Document { diff --git a/packages/openneuro-server/src/models/user.ts b/packages/openneuro-server/src/models/user.ts index 3d350422a2..4738a066e9 100644 --- a/packages/openneuro-server/src/models/user.ts +++ b/packages/openneuro-server/src/models/user.ts @@ -1,5 +1,6 @@ import { v4 as uuidv4 } from "uuid" -import mongoose, { Document } from "mongoose" +import mongoose from "mongoose" +import type { Document } from "mongoose" const { Schema, model } = mongoose export interface UserDocument extends Document { From 0928d948fe0764ed74753cf42b7a1a6bfa24b2ca Mon Sep 17 00:00:00 2001 From: Nell Hardcastle Date: Tue, 22 Oct 2024 14:15:44 -0700 Subject: [PATCH 06/23] chore(lint): Fix object prototype hasOwnProperty usage --- .../datalad/routes/dataset-redirect.tsx | 2 +- .../src/scripts/dataset/comments/comments.jsx | 2 +- .../dataset/download/download-datalad.jsx | 2 +- .../scripts/dataset/download/download-s3.jsx | 2 +- .../src/scripts/dataset/files/file-tree.tsx | 4 ++-- .../src/scripts/pages/admin/users.tsx | 2 +- packages/openneuro-cli/src/config.js | 8 +++---- .../openneuro-client/src/datasetGenerator.js | 2 +- packages/openneuro-client/src/files.js | 4 ++-- .../src/datalad/description.ts | 22 +++++++++---------- .../src/datalad/pagination.ts | 6 ++--- 11 files changed, 28 insertions(+), 28 deletions(-) diff --git a/packages/openneuro-app/src/scripts/datalad/routes/dataset-redirect.tsx b/packages/openneuro-app/src/scripts/datalad/routes/dataset-redirect.tsx index 629c9b8c8e..9c03f08249 100644 --- a/packages/openneuro-app/src/scripts/datalad/routes/dataset-redirect.tsx +++ b/packages/openneuro-app/src/scripts/datalad/routes/dataset-redirect.tsx @@ -62,7 +62,7 @@ const DatasetRedirect = () => { const { datasetId } = useParams() as { datasetId: string } const { pathname } = useLocation() - if (redirectLib.hasOwnProperty(datasetId)) { + if (Object.hasOwn(redirectLib, datasetId)) { const newPath = replaceDatasetId(pathname, redirectLib[datasetId]) return } else { diff --git a/packages/openneuro-app/src/scripts/dataset/comments/comments.jsx b/packages/openneuro-app/src/scripts/dataset/comments/comments.jsx index f75c6cfd78..18b1c3140f 100644 --- a/packages/openneuro-app/src/scripts/dataset/comments/comments.jsx +++ b/packages/openneuro-app/src/scripts/dataset/comments/comments.jsx @@ -14,7 +14,7 @@ const CommentTree = ({ datasetId, uploader, comments, commentMap }) => ( {comments.map((comment) => { if (!comment) return null // Join any replies - const nextLevel = comment.hasOwnProperty("replies") + const nextLevel = Object.hasOwn(comment, "replies") ? comment.replies.map((reply) => commentMap[reply.id]) : [] return ( diff --git a/packages/openneuro-app/src/scripts/dataset/download/download-datalad.jsx b/packages/openneuro-app/src/scripts/dataset/download/download-datalad.jsx index 9cc31fd518..41ca9d9fc4 100644 --- a/packages/openneuro-app/src/scripts/dataset/download/download-datalad.jsx +++ b/packages/openneuro-app/src/scripts/dataset/download/download-datalad.jsx @@ -83,7 +83,7 @@ DownloadDataladInstructions.propTypes = { const DownloadDatalad = (props) => // TODO - don't depend on async config - getConfig().hasOwnProperty("github") + Object.hasOwn(getConfig(), "github") ? ( // TODO - don't depend on async config - getConfig().hasOwnProperty("publicBucket") + Object.hasOwn(getConfig(), "publicBucket") ? : null diff --git a/packages/openneuro-app/src/scripts/dataset/files/file-tree.tsx b/packages/openneuro-app/src/scripts/dataset/files/file-tree.tsx index 4298d686c0..3f156f76c3 100644 --- a/packages/openneuro-app/src/scripts/dataset/files/file-tree.tsx +++ b/packages/openneuro-app/src/scripts/dataset/files/file-tree.tsx @@ -41,7 +41,7 @@ export function fileTreeLevels( const childPath = path === "" ? components[0] : components.slice(0, path.split(":").length + 1).join(":") - if (childFiles.hasOwnProperty(childPath)) { + if (Object.hasOwn(childFiles, childPath)) { childFiles[childPath].push(f) } else { childFiles[childPath] = [f] @@ -102,7 +102,7 @@ const FileTree = ({
    {currentFiles.map((file, index) => { if (file.directory) { - if (childFiles.hasOwnProperty(file.filename)) { + if (Object.hasOwn(childFiles, file.filename)) { return (
  • { ) .map((user, index) => { const adminBadge = user.admin ? "Admin" : null - const userEmail = user.hasOwnProperty("email") ? user.email : user.id + const userEmail = Object.hasOwn(user, "email") ? user.email : user.id return (
    diff --git a/packages/openneuro-cli/src/config.js b/packages/openneuro-cli/src/config.js index 4fd78f50ac..e40399d05e 100644 --- a/packages/openneuro-cli/src/config.js +++ b/packages/openneuro-cli/src/config.js @@ -45,7 +45,7 @@ export const saveConfig = (config) => { */ export const getToken = () => { const config = JSON.parse(readConfig()) - if (config.hasOwnProperty("apikey")) { + if (Object.hasOwn(config, "apikey")) { return config.apikey } else { throw new Error( @@ -65,7 +65,7 @@ export const getUser = () => { export const getUrl = () => { const config = JSON.parse(readConfig()) - if (config.hasOwnProperty("url")) { + if (Object.hasOwn(config, "url")) { return config.url } else { throw new Error( @@ -77,8 +77,8 @@ export const getUrl = () => { export const getErrorReporting = () => { const config = JSON.parse(readConfig()) if ( - config.hasOwnProperty("errorReporting") && - config.hasOwnProperty("url") && + Object.hasOwn(config, "errorReporting") && + Object.hasOwn(config, "url") && config.errorReporting ) { return config.url diff --git a/packages/openneuro-client/src/datasetGenerator.js b/packages/openneuro-client/src/datasetGenerator.js index 830ff7cc42..a4357e3300 100644 --- a/packages/openneuro-client/src/datasetGenerator.js +++ b/packages/openneuro-client/src/datasetGenerator.js @@ -15,7 +15,7 @@ export async function* datasetGenerator(client, query = getDatasets) { errorPolicy: "all", }) for (const edge of data.datasets.edges) { - if (edge && edge.hasOwnProperty("node")) { + if (edge && Object.hasOwn(edge, "node")) { // Yield one dataset if it did not error yield edge.node } else { diff --git a/packages/openneuro-client/src/files.js b/packages/openneuro-client/src/files.js index 0068948c51..433e40719d 100644 --- a/packages/openneuro-client/src/files.js +++ b/packages/openneuro-client/src/files.js @@ -7,7 +7,7 @@ export const sortFiles = (files) => files.sort((x, y) => { const filename = "dataset_description.json" - const xPath = x.hasOwnProperty("path") ? x.path : x.webkitRelativePath - const yPath = y.hasOwnProperty("path") ? y.path : y.webkitRelativePath + const xPath = Object.hasOwn(x, "path") ? x.path : x.webkitRelativePath + const yPath = Object.hasOwn(y, "path") ? y.path : y.webkitRelativePath return xPath.endsWith(filename) ? -1 : yPath.endsWith(filename) ? 1 : 0 }) diff --git a/packages/openneuro-server/src/datalad/description.ts b/packages/openneuro-server/src/datalad/description.ts index e68f6912d6..e0597eba5f 100644 --- a/packages/openneuro-server/src/datalad/description.ts +++ b/packages/openneuro-server/src/datalad/description.ts @@ -38,58 +38,58 @@ export const repairDescriptionTypes = (description) => { const newDescription = { ...description } // Array types if ( - description.hasOwnProperty("Authors") && + Object.hasOwn(description, "Authors") && !Array.isArray(description.Authors) ) { newDescription.Authors = [description.Authors] } if ( - description.hasOwnProperty("ReferencesAndLinks") && + Object.hasOwn(description, "ReferencesAndLinks") && !Array.isArray(description.ReferencesAndLinks) ) { newDescription.ReferencesAndLinks = [description.ReferencesAndLinks] } if ( - description.hasOwnProperty("Funding") && + Object.hasOwn(description, "Funding") && !Array.isArray(description.Funding) ) { newDescription.Funding = [description.Funding] } if ( - description.hasOwnProperty("EthicsApprovals") && + Object.hasOwn(description, "EthicsApprovals") && !Array.isArray(description.EthicsApprovals) ) { newDescription.EthicsApprovals = [description.EthicsApprovals] } // String types if ( - description.hasOwnProperty("Name") && + Object.hasOwn(description, "Name") && typeof description.Name !== "string" ) { newDescription.Name = JSON.stringify(description.Name) || "" } if ( - description.hasOwnProperty("DatasetDOI") && + Object.hasOwn(description, "DatasetDOI") && typeof description.DatasetDOI !== "string" ) { newDescription.DatasetDOI = JSON.stringify(description.DatasetDOI) || "" } if ( - description.hasOwnProperty("Acknowledgements") && + Object.hasOwn(description, "Acknowledgements") && typeof description.Acknowledgements !== "string" ) { newDescription.Acknowledgements = JSON.stringify(description.Acknowledgements) || "" } if ( - description.hasOwnProperty("HowToAcknowledge") && + Object.hasOwn(description, "HowToAcknowledge") && typeof description.HowToAcknowledge !== "string" ) { newDescription.HowToAcknowledge = JSON.stringify(description.HowToAcknowledge) || "" } if ( - description.hasOwnProperty("DatasetType") && + Object.hasOwn(description, "DatasetType") && typeof description.DatasetType !== "string" ) { newDescription.DatasetType = "raw" @@ -104,7 +104,7 @@ export const appendSeniorAuthor = (description) => { try { const SeniorAuthor = description?.Authors[description.Authors.length - 1] return { ...description, SeniorAuthor } - } catch (err) { + } catch (_err) { return description } } @@ -132,7 +132,7 @@ export const description = async (obj) => { ) }) return appendSeniorAuthor(repairDescriptionTypes(datasetDescription)) - } catch (err) { + } catch (_err) { return defaultDescription } } diff --git a/packages/openneuro-server/src/datalad/pagination.ts b/packages/openneuro-server/src/datalad/pagination.ts index 484bb14f32..e64aaf9342 100644 --- a/packages/openneuro-server/src/datalad/pagination.ts +++ b/packages/openneuro-server/src/datalad/pagination.ts @@ -43,10 +43,10 @@ export const maxLimit = (limit) => Math.max(Math.min(limit, 100), 1) // Decode cursor from options object export const getOffsetFromCursor = (options) => { - if (options.hasOwnProperty("after") && options.after) { + if (Object.hasOwn(options, "after") && options.after) { return decodeCursor(options.after).offset } - if (options.hasOwnProperty("before") && options.before) { + if (Object.hasOwn(options, "before") && options.before) { return ( decodeCursor(options.before).offset - Math.max(maxLimit(options.first), 0) ) @@ -63,7 +63,7 @@ export const getOffsetFromCursor = (options) => { export const sortAggregate = (options) => { const sortingStages = [] const finalSort = {} - if (options.hasOwnProperty("orderBy")) { + if (Object.hasOwn(options, "orderBy")) { if ("created" in options.orderBy && options.orderBy.created) { finalSort["_id"] = sortEnumToInt(options.orderBy.created) } From a0e36c9bff2f8d09e4d82201e1f5ee605de7bc94 Mon Sep 17 00:00:00 2001 From: Nell Hardcastle Date: Tue, 22 Oct 2024 14:50:05 -0700 Subject: [PATCH 07/23] chore(lint): Use object over any for model definitions --- packages/openneuro-server/src/models/dataset.ts | 2 +- packages/openneuro-server/src/models/file.ts | 2 +- packages/openneuro-server/src/models/summary.ts | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/openneuro-server/src/models/dataset.ts b/packages/openneuro-server/src/models/dataset.ts index b7ce0eca06..2b78c93d25 100644 --- a/packages/openneuro-server/src/models/dataset.ts +++ b/packages/openneuro-server/src/models/dataset.ts @@ -29,7 +29,7 @@ export interface DatasetDocument extends Document { views: number related: [DatasetRelationDocument] schemaValidator: boolean - _conditions: any + _conditions: object } const datasetSchema = new Schema( diff --git a/packages/openneuro-server/src/models/file.ts b/packages/openneuro-server/src/models/file.ts index 948b3fdf60..e5ed2946fb 100644 --- a/packages/openneuro-server/src/models/file.ts +++ b/packages/openneuro-server/src/models/file.ts @@ -5,7 +5,7 @@ const { Schema, model } = mongoose export interface FileDocument extends Document { datasetId: string tag: string - files: any[] + files: object[] } const fileSchema = new Schema({ diff --git a/packages/openneuro-server/src/models/summary.ts b/packages/openneuro-server/src/models/summary.ts index 840bb6211f..8e017609bf 100644 --- a/packages/openneuro-server/src/models/summary.ts +++ b/packages/openneuro-server/src/models/summary.ts @@ -15,7 +15,7 @@ export interface SummaryDocument extends Document { datasetId: string sessions: string[] subjects: string[] - subjectMetadata: Record + subjectMetadata: Record tasks: string[] modalities: string[] primaryModality: string From 00b718e376b0f635a0080b0daaa3bef8d4611989 Mon Sep 17 00:00:00 2001 From: Nell Hardcastle Date: Tue, 22 Oct 2024 14:54:18 -0700 Subject: [PATCH 08/23] feat(graphql-client): Only warn once on mismatched versions --- packages/openneuro-client/src/client.js | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/packages/openneuro-client/src/client.js b/packages/openneuro-client/src/client.js index 1320fcb0c0..62e67080f3 100644 --- a/packages/openneuro-client/src/client.js +++ b/packages/openneuro-client/src/client.js @@ -8,6 +8,8 @@ import { import { setContext } from "@apollo/client/link/context" import semver from "semver" +let versionsWarned = false + const authLink = (getAuthorization) => setContext((_, { headers }) => { // Passthrough any headers but add in authorization if set @@ -31,17 +33,25 @@ const checkVersions = (serverVersion, clientVersion) => { const [serverMajor, serverMinor] = parse(serverVersion) const [clientMajor, clientMinor] = parse(clientVersion) if (serverMajor > clientMajor || serverMinor > clientMinor) { - console.warn( - `${hbar}Your OpenNeuro client is out of date (v${clientVersion}). We strongly recommend you update to the latest version (v${serverVersion}) for an optimal experience.${hbar}`, - ) + if (!versionsWarned) { + // eslint-disable-next-line no-console + console.warn( + `${hbar}Your OpenNeuro client is out of date (v${clientVersion}). We strongly recommend you update to the latest version (v${serverVersion}) for an optimal experience.${hbar}`, + ) + versionsWarned = true + } } else if ( serverMajor < clientMajor || (serverMajor === clientMajor && serverMinor < clientMinor) ) { // panic, then - console.warn( - `${hbar}Your OpenNeuro client is out of date. We strongly recommend you update to the most recent version for an optimal experience.${hbar}`, - ) + if (!versionsWarned) { + // eslint-disable-next-line no-console + console.warn( + `${hbar}Your OpenNeuro client is out of date. We strongly recommend you update to the most recent version for an optimal experience.${hbar}`, + ) + versionsWarned = true + } } } } From 7fbda3e843c57d9b6d1ed24e468a2075b202decf Mon Sep 17 00:00:00 2001 From: Nell Hardcastle Date: Tue, 22 Oct 2024 14:55:01 -0700 Subject: [PATCH 09/23] chore(lint): Don't suppress console from the CLI upload steps --- packages/openneuro-cli/src/upload.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/openneuro-cli/src/upload.js b/packages/openneuro-cli/src/upload.js index 34ab81aeb5..6cb5a793eb 100644 --- a/packages/openneuro-cli/src/upload.js +++ b/packages/openneuro-cli/src/upload.js @@ -1,3 +1,4 @@ +// eslint-disable no-console import cliProgress from "cli-progress" import path from "path" import inquirer from "inquirer" @@ -28,7 +29,6 @@ const validatePromise = (dir, options = {}) => { } const fatalError = (err) => { - // eslint-disable-next-line no-console console.error(err) process.exit(1) } @@ -41,7 +41,6 @@ const fatalError = (err) => { export const validation = (dir, validatorOptions) => { return validatePromise(dir, validatorOptions) .then(function ({ summary }) { - // eslint-disable-next-line no-console console.log(validate.consoleFormat.summary(summary)) }) .catch((err) => fatalError(err)) From 7e1eda7a1651c2b85685e150ea21b13c0c3435f9 Mon Sep 17 00:00:00 2001 From: Nell Hardcastle Date: Tue, 22 Oct 2024 14:55:43 -0700 Subject: [PATCH 10/23] chore(lint): Remove cjs import for node-mailjet --- packages/openneuro-server/src/libs/email/index.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/openneuro-server/src/libs/email/index.ts b/packages/openneuro-server/src/libs/email/index.ts index 24256134fa..2fdb8afb18 100644 --- a/packages/openneuro-server/src/libs/email/index.ts +++ b/packages/openneuro-server/src/libs/email/index.ts @@ -1,14 +1,14 @@ import config from "../../config" +import mailjet from "node-mailjet" let transport let perform_api_call = true try { - const mailjet = require("node-mailjet") transport = mailjet.connect( config.notifications.email.apiKey, config.notifications.email.secret, ) -} catch (err) { +} catch (_err) { perform_api_call = false } @@ -42,6 +42,7 @@ export const send = (email: Record): Promise => { .request(mailjetFormat(email)) } else { // Mailjet is not configured, instead log emails + /* eslint-disable no-console */ console.dir(email) } } From feb1eaa8d9f68b076d597d3351487b5156acd02e Mon Sep 17 00:00:00 2001 From: Nell Hardcastle Date: Tue, 22 Oct 2024 14:56:10 -0700 Subject: [PATCH 11/23] chore(lint): Indexer should print console messages --- packages/openneuro-indexer/src/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/openneuro-indexer/src/index.ts b/packages/openneuro-indexer/src/index.ts index 8896aa5f56..4ee815fbf8 100755 --- a/packages/openneuro-indexer/src/index.ts +++ b/packages/openneuro-indexer/src/index.ts @@ -1,3 +1,4 @@ +// eslint-disable no-console import { indexingToken, indexQuery } from "@openneuro/search" import { setContext } from "@apollo/client/link/context" import { RetryLink } from "@apollo/client/link/retry" From 27af188ad97849a4016487577b48f7afd41baadf Mon Sep 17 00:00:00 2001 From: Nell Hardcastle Date: Tue, 22 Oct 2024 14:56:40 -0700 Subject: [PATCH 12/23] chore(lint): Document issues with Readable interface types --- packages/openneuro-server/src/handlers/datalad.ts | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/packages/openneuro-server/src/handlers/datalad.ts b/packages/openneuro-server/src/handlers/datalad.ts index 96e333cb96..8bd96330e2 100644 --- a/packages/openneuro-server/src/handlers/datalad.ts +++ b/packages/openneuro-server/src/handlers/datalad.ts @@ -71,12 +71,11 @@ export const getFile = async (req, res) => { if (r.status === 404) { res.status(404).send("Requested dataset or file cannot be found") } else { - // @ts-expect-error + // @ts-expect-error https://github.com/denoland/deno/issues/19620 Readable.fromWeb(r.body, { highWaterMark: 4194304 }).pipe(res) } }) - .catch((err) => { - console.error(err) + .catch((_err) => { res.status(500).send("Internal error transferring requested file") }) } From 97d130e7bd5207864c75db39eae300d38e4f5665 Mon Sep 17 00:00:00 2001 From: Nell Hardcastle Date: Tue, 22 Oct 2024 14:57:13 -0700 Subject: [PATCH 13/23] chore(lint): Enable checking for schema.ts --- packages/openneuro-server/src/graphql/schema.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/openneuro-server/src/graphql/schema.ts b/packages/openneuro-server/src/graphql/schema.ts index cf43d45a7b..45c5e902ca 100644 --- a/packages/openneuro-server/src/graphql/schema.ts +++ b/packages/openneuro-server/src/graphql/schema.ts @@ -1,4 +1,3 @@ -// @ts-nocheck import { schemaComposer } from "graphql-compose" import resolvers from "./resolvers" import { From 81240a6562b987e6d9fe2f2b2169fbe2030f9ea0 Mon Sep 17 00:00:00 2001 From: Nell Hardcastle Date: Tue, 22 Oct 2024 14:59:01 -0700 Subject: [PATCH 14/23] chore(lint): Fix linter configuration for console and unused vars --- packages/openneuro-cli/src/upload.js | 2 +- packages/openneuro-indexer/src/index.ts | 2 +- .../openneuro-server/src/graphql/resolvers/permissions.ts | 6 ++++-- packages/openneuro-server/src/handlers/comments.ts | 5 ++--- .../openneuro-server/src/libs/__tests__/dataset.spec.ts | 2 +- 5 files changed, 9 insertions(+), 8 deletions(-) diff --git a/packages/openneuro-cli/src/upload.js b/packages/openneuro-cli/src/upload.js index 6cb5a793eb..e2de7715e2 100644 --- a/packages/openneuro-cli/src/upload.js +++ b/packages/openneuro-cli/src/upload.js @@ -1,4 +1,4 @@ -// eslint-disable no-console +/* eslint-disable no-console */ import cliProgress from "cli-progress" import path from "path" import inquirer from "inquirer" diff --git a/packages/openneuro-indexer/src/index.ts b/packages/openneuro-indexer/src/index.ts index 4ee815fbf8..b352c41118 100755 --- a/packages/openneuro-indexer/src/index.ts +++ b/packages/openneuro-indexer/src/index.ts @@ -1,4 +1,4 @@ -// eslint-disable no-console +/* eslint-disable no-console */ import { indexingToken, indexQuery } from "@openneuro/search" import { setContext } from "@apollo/client/link/context" import { RetryLink } from "@apollo/client/link/retry" diff --git a/packages/openneuro-server/src/graphql/resolvers/permissions.ts b/packages/openneuro-server/src/graphql/resolvers/permissions.ts index 58a2484683..1d816bfe0f 100644 --- a/packages/openneuro-server/src/graphql/resolvers/permissions.ts +++ b/packages/openneuro-server/src/graphql/resolvers/permissions.ts @@ -1,5 +1,7 @@ -import User, { UserDocument } from "../../models/user" -import Permission, { PermissionDocument } from "../../models/permission" +import User from "../../models/user" +import type { UserDocument } from "../../models/user" +import Permission from "../../models/permission" +import type { PermissionDocument } from "../../models/permission" import { checkDatasetAdmin } from "../permissions" import { user } from "./user" diff --git a/packages/openneuro-server/src/handlers/comments.ts b/packages/openneuro-server/src/handlers/comments.ts index f73113c68c..29acae4251 100644 --- a/packages/openneuro-server/src/handlers/comments.ts +++ b/packages/openneuro-server/src/handlers/comments.ts @@ -1,6 +1,5 @@ -// @ts-nocheck import notifications from "../libs/notifications.js" -import { format } from "date-fns/format" +import format from "date-fns/format" import User from "../models/user" import Comment from "../models/comment" import MailgunIdentifier from "../models/mailgunIdentifier" @@ -28,7 +27,6 @@ const textToDraft = (text) => { * ** maybe returns the newly created comment id */ export async function reply(req, res, next) { - /* eslint-disable no-console */ let comment const parentId = req.params.commentId ? decodeURIComponent(req.params.commentId) @@ -49,6 +47,7 @@ export async function reply(req, res, next) { } const user = await User.findOne({ id: userId }).exec() const originalComment = await Comment.findOne({ + // @ts-expect-error This is needed as an object and also a type _id: ObjectID(parentId), }).exec() if (user && originalComment) { diff --git a/packages/openneuro-server/src/libs/__tests__/dataset.spec.ts b/packages/openneuro-server/src/libs/__tests__/dataset.spec.ts index e69b42ac16..cf0eaced77 100644 --- a/packages/openneuro-server/src/libs/__tests__/dataset.spec.ts +++ b/packages/openneuro-server/src/libs/__tests__/dataset.spec.ts @@ -1,6 +1,6 @@ import { vi } from "vitest" import { MongoMemoryServer } from "mongodb-memory-server" -import { connect, disconnect } from "mongoose" +import { connect } from "mongoose" import { getAccessionNumber } from "../dataset" vi.mock("ioredis") From beada4010e9d4f939cfeb75dc713d76faab12728 Mon Sep 17 00:00:00 2001 From: Nell Hardcastle Date: Tue, 22 Oct 2024 15:15:43 -0700 Subject: [PATCH 15/23] chore(lint): Fix types imported as values --- .../src/scripts/dataset/files/file-tree.tsx | 2 +- .../openneuro-app/src/scripts/dataset/files/files.tsx | 2 +- .../openneuro-app/src/scripts/pages/admin/user-tools.tsx | 3 ++- packages/openneuro-app/src/scripts/pages/faq/faq.tsx | 2 +- packages/openneuro-app/src/scripts/pages/terms.tsx | 3 ++- .../src/scripts/search/filters-block-container.tsx | 3 ++- .../src/scripts/search/inputs/task-input.tsx | 3 ++- .../src/scripts/search/search-container.tsx | 5 +++-- packages/openneuro-app/src/scripts/workers/schema.ts | 2 +- .../openneuro-app/src/scripts/workers/schema.worker.ts | 2 +- packages/openneuro-app/src/scripts/workers/validate.ts | 2 +- .../openneuro-app/src/scripts/workers/validate.worker.ts | 2 +- .../src/activity-slider/ActivitySlider.tsx | 2 +- packages/openneuro-components/src/facets/FacetSearch.tsx | 4 ++-- .../src/search-page/FacetBlockContainerExample.tsx | 3 ++- .../src/search-page/FiltersBlock.tsx | 5 +---- .../src/search-page/ModalityHeader.tsx | 3 ++- .../openneuro-components/src/warn-button/WarnButton.tsx | 3 ++- packages/openneuro-indexer/src/createIndices.ts | 2 +- packages/openneuro-indexer/src/indexDatasets.ts | 9 +++------ packages/openneuro-search/src/query.ts | 5 +++-- packages/openneuro-server/src/cache/item.ts | 6 +++--- packages/openneuro-server/src/datalad/dataset.ts | 2 +- .../src/graphql/resolvers/__tests__/brainlife.spec.ts | 2 +- .../openneuro-server/src/graphql/resolvers/brainlife.ts | 6 ++---- .../openneuro-server/src/graphql/resolvers/metadata.ts | 7 ++++--- .../openneuro-server/src/graphql/resolvers/summary.ts | 3 ++- packages/openneuro-server/src/models/badAnnexObject.ts | 2 +- 28 files changed, 49 insertions(+), 46 deletions(-) diff --git a/packages/openneuro-app/src/scripts/dataset/files/file-tree.tsx b/packages/openneuro-app/src/scripts/dataset/files/file-tree.tsx index 3f156f76c3..39348ee86f 100644 --- a/packages/openneuro-app/src/scripts/dataset/files/file-tree.tsx +++ b/packages/openneuro-app/src/scripts/dataset/files/file-tree.tsx @@ -5,7 +5,7 @@ import DeleteFile from "../mutations/delete-file.jsx" import FileTreeUnloadedDirectory from "./file-tree-unloaded-directory.jsx" import { Media } from "../../styles/media" import { AccordionTab } from "@openneuro/components/accordion" -import { DatasetFile } from "../../types/dataset-file" +import type { DatasetFile } from "../../types/dataset-file" export const unescapePath = (path: string): string => path.replace(/:/g, "/") diff --git a/packages/openneuro-app/src/scripts/dataset/files/files.tsx b/packages/openneuro-app/src/scripts/dataset/files/files.tsx index 82b431f8ac..e5d267f0d6 100644 --- a/packages/openneuro-app/src/scripts/dataset/files/files.tsx +++ b/packages/openneuro-app/src/scripts/dataset/files/files.tsx @@ -7,7 +7,7 @@ import { WarnButton } from "@openneuro/components/warn-button" import { AccordionWrap } from "@openneuro/components/accordion" import styled from "@emotion/styled" import { Tooltip } from "@openneuro/components/tooltip" -import { DatasetFile } from "../../types/dataset-file" +import type { DatasetFile } from "../../types/dataset-file" import bytes from "bytes" const FileTreeMeta = styled.span` diff --git a/packages/openneuro-app/src/scripts/pages/admin/user-tools.tsx b/packages/openneuro-app/src/scripts/pages/admin/user-tools.tsx index 8444df3e2b..b33c8bb12e 100644 --- a/packages/openneuro-app/src/scripts/pages/admin/user-tools.tsx +++ b/packages/openneuro-app/src/scripts/pages/admin/user-tools.tsx @@ -1,4 +1,5 @@ -import React, { FC, ReactElement } from "react" +import React from "react" +import type { FC, ReactElement } from "react" import { gql } from "@apollo/client" import { Mutation } from "@apollo/client/react/components" import { WarnButton } from "@openneuro/components/warn-button" diff --git a/packages/openneuro-app/src/scripts/pages/faq/faq.tsx b/packages/openneuro-app/src/scripts/pages/faq/faq.tsx index b71675f8a0..a1a0b40fbc 100644 --- a/packages/openneuro-app/src/scripts/pages/faq/faq.tsx +++ b/packages/openneuro-app/src/scripts/pages/faq/faq.tsx @@ -1,4 +1,4 @@ -import React from "react" +import type React from "react" const Faq = (): React.ReactElement => { window.location.replace("https://docs.openneuro.org/faq") diff --git a/packages/openneuro-app/src/scripts/pages/terms.tsx b/packages/openneuro-app/src/scripts/pages/terms.tsx index 86199a35c7..9c614d4a43 100644 --- a/packages/openneuro-app/src/scripts/pages/terms.tsx +++ b/packages/openneuro-app/src/scripts/pages/terms.tsx @@ -1,4 +1,5 @@ -import React, { ReactElement } from "react" +import React from "react" +import type { ReactElement } from "react" import { Terms } from "../common/content/terms" import Helmet from "react-helmet" import { frontPage } from "./front-page/front-page-content" diff --git a/packages/openneuro-app/src/scripts/search/filters-block-container.tsx b/packages/openneuro-app/src/scripts/search/filters-block-container.tsx index ca5ac175dc..d098549187 100644 --- a/packages/openneuro-app/src/scripts/search/filters-block-container.tsx +++ b/packages/openneuro-app/src/scripts/search/filters-block-container.tsx @@ -1,4 +1,5 @@ -import React, { FC, useContext } from "react" +import React, { useContext } from "react" +import type { FC } from "react" import { useNavigate, useParams } from "react-router-dom" import { getSelectParams, diff --git a/packages/openneuro-app/src/scripts/search/inputs/task-input.tsx b/packages/openneuro-app/src/scripts/search/inputs/task-input.tsx index 47ab51d831..889efdd985 100644 --- a/packages/openneuro-app/src/scripts/search/inputs/task-input.tsx +++ b/packages/openneuro-app/src/scripts/search/inputs/task-input.tsx @@ -1,4 +1,5 @@ -import React, { FC, useContext } from "react" +import React, { useContext } from "react" +import type { FC } from "react" import useState from "react-usestateref" import { removeFilterItem, SearchParamsCtx } from "../search-params-ctx" import { FacetSearch } from "@openneuro/components/facets" diff --git a/packages/openneuro-app/src/scripts/search/search-container.tsx b/packages/openneuro-app/src/scripts/search/search-container.tsx index 4833db4a33..776b191195 100644 --- a/packages/openneuro-app/src/scripts/search/search-container.tsx +++ b/packages/openneuro-app/src/scripts/search/search-container.tsx @@ -1,4 +1,5 @@ -import React, { FC, useContext, useEffect } from "react" +import React, { useContext } from "react" +import type { FC } from "react" import { useLocation } from "react-router-dom" import { SearchPage, @@ -39,7 +40,7 @@ import AggregateCountsContainer from "../pages/front-page/aggregate-queries/aggr import { useCookies } from "react-cookie" import { useSearchResults } from "./use-search-results" import { SearchParamsCtx } from "./search-params-ctx" -import { SearchParams } from "./initial-search-params" +import type { SearchParams } from "./initial-search-params" import Helmet from "react-helmet" import AdminUser from "../authentication/admin-user.jsx" diff --git a/packages/openneuro-app/src/scripts/workers/schema.ts b/packages/openneuro-app/src/scripts/workers/schema.ts index fabdaf1b6b..dcbf3343cb 100644 --- a/packages/openneuro-app/src/scripts/workers/schema.ts +++ b/packages/openneuro-app/src/scripts/workers/schema.ts @@ -1,5 +1,5 @@ import { runValidator } from "./schema.worker" // eslint-disable-line import/no-unresolved -import { BIDSValidatorIssues } from "./worker-interface" +import type { BIDSValidatorIssues } from "./worker-interface" function init(files, options): Promise { return new Promise((resolve, reject) => { diff --git a/packages/openneuro-app/src/scripts/workers/schema.worker.ts b/packages/openneuro-app/src/scripts/workers/schema.worker.ts index dee2336623..37489fbf28 100644 --- a/packages/openneuro-app/src/scripts/workers/schema.worker.ts +++ b/packages/openneuro-app/src/scripts/workers/schema.worker.ts @@ -1,6 +1,6 @@ /* eslint-env worker */ import { fileListToTree, validate } from "../utils/schema-validator.js" -import { BIDSValidatorIssues } from "./worker-interface" +import type { BIDSValidatorIssues } from "./worker-interface" export async function runValidator( files, diff --git a/packages/openneuro-app/src/scripts/workers/validate.ts b/packages/openneuro-app/src/scripts/workers/validate.ts index 74c4d26344..d72e76c18b 100644 --- a/packages/openneuro-app/src/scripts/workers/validate.ts +++ b/packages/openneuro-app/src/scripts/workers/validate.ts @@ -1,5 +1,5 @@ import { runValidator } from "./validate.worker" // eslint-disable-line import/no-unresolved -import { BIDSValidatorIssues } from "./worker-interface" +import type { BIDSValidatorIssues } from "./worker-interface" function init(files, options): Promise { return new Promise((resolve, reject) => { diff --git a/packages/openneuro-app/src/scripts/workers/validate.worker.ts b/packages/openneuro-app/src/scripts/workers/validate.worker.ts index 7985c4b84a..6be549f695 100644 --- a/packages/openneuro-app/src/scripts/workers/validate.worker.ts +++ b/packages/openneuro-app/src/scripts/workers/validate.worker.ts @@ -1,6 +1,6 @@ /* eslint-env worker */ import validate from "bids-validator" -import { BIDSValidatorIssues } from "./worker-interface" +import type { BIDSValidatorIssues } from "./worker-interface" const asyncValidateBIDS = (files, options): Promise => new Promise((resolve) => { diff --git a/packages/openneuro-components/src/activity-slider/ActivitySlider.tsx b/packages/openneuro-components/src/activity-slider/ActivitySlider.tsx index b26ef6ab03..6dfed674ba 100644 --- a/packages/openneuro-components/src/activity-slider/ActivitySlider.tsx +++ b/packages/openneuro-components/src/activity-slider/ActivitySlider.tsx @@ -3,7 +3,7 @@ import formatDistanceToNow from "date-fns/formatDistanceToNow" import parseISO from "date-fns/parseISO" import { Link } from "react-router-dom" import Carousel from "react-multi-carousel/lib/Carousel" -import { ArrowProps, ResponsiveType } from "react-multi-carousel/lib/types" +import type { ArrowProps, ResponsiveType } from "react-multi-carousel/lib/types" import "react-multi-carousel/lib/styles.css" export interface ActivitySliderProps { diff --git a/packages/openneuro-components/src/facets/FacetSearch.tsx b/packages/openneuro-components/src/facets/FacetSearch.tsx index bb8db28282..2c9400b7c3 100644 --- a/packages/openneuro-components/src/facets/FacetSearch.tsx +++ b/packages/openneuro-components/src/facets/FacetSearch.tsx @@ -1,7 +1,7 @@ import React from "react" import { TermSearch } from "../input/TermSearch" -import { ButtonPropsSize } from "../button/Button" -import { InputPropsStyle } from "../input/Input" +import type { ButtonPropsSize } from "../button/Button" +import type { InputPropsStyle } from "../input/Input" export interface FacetSearchProps { setTermValue: (string) => void diff --git a/packages/openneuro-components/src/search-page/FacetBlockContainerExample.tsx b/packages/openneuro-components/src/search-page/FacetBlockContainerExample.tsx index 671a992ca4..a19a450a5b 100644 --- a/packages/openneuro-components/src/search-page/FacetBlockContainerExample.tsx +++ b/packages/openneuro-components/src/search-page/FacetBlockContainerExample.tsx @@ -1,4 +1,5 @@ -import React, { FC } from "react" +import React from "react" +import type { FC } from "react" export const FacetBlockContainerExample: FC = ({ children }) => { return <>{children} diff --git a/packages/openneuro-components/src/search-page/FiltersBlock.tsx b/packages/openneuro-components/src/search-page/FiltersBlock.tsx index 5e71b95f2a..80e54ef94a 100644 --- a/packages/openneuro-components/src/search-page/FiltersBlock.tsx +++ b/packages/openneuro-components/src/search-page/FiltersBlock.tsx @@ -1,10 +1,8 @@ import React from "react" import { Button } from "../button/Button" import { FilterListItem } from "./FilterListItem" -import { FilterDateItem } from "./FilterDateItem" import { TermListItem } from "./TermListItem" -import { FacetSelectValueType } from "../facets/FacetSelect" -import { NeurobagelSearch } from "./NeurobagelSearch" +import type { FacetSelectValueType } from "../facets/FacetSelect" export interface FiltersBlockProps { keywords: string[] @@ -70,7 +68,6 @@ export const FiltersBlock = ({ return (
    - {/* */}

    {noFilters ? ( diff --git a/packages/openneuro-components/src/search-page/ModalityHeader.tsx b/packages/openneuro-components/src/search-page/ModalityHeader.tsx index 07cfec70a2..de28767ea2 100644 --- a/packages/openneuro-components/src/search-page/ModalityHeader.tsx +++ b/packages/openneuro-components/src/search-page/ModalityHeader.tsx @@ -1,4 +1,5 @@ -import React, { ReactNode } from "react" +import React from "react" +import type { ReactNode } from "react" export interface ModalityHeaderProps { portalName: string diff --git a/packages/openneuro-components/src/warn-button/WarnButton.tsx b/packages/openneuro-components/src/warn-button/WarnButton.tsx index 26a244384d..110e0ddb6b 100644 --- a/packages/openneuro-components/src/warn-button/WarnButton.tsx +++ b/packages/openneuro-components/src/warn-button/WarnButton.tsx @@ -1,4 +1,5 @@ -import React, { FC } from "react" +import React from "react" +import type { FC } from "react" import "./warn-button.scss" import { Tooltip } from "../tooltip/Tooltip" import { Button } from "../button/Button" diff --git a/packages/openneuro-indexer/src/createIndices.ts b/packages/openneuro-indexer/src/createIndices.ts index 541c7b7fa6..a5aa576d7b 100644 --- a/packages/openneuro-indexer/src/createIndices.ts +++ b/packages/openneuro-indexer/src/createIndices.ts @@ -1,4 +1,4 @@ -import { Client } from "@elastic/elasticsearch" +import type { Client } from "@elastic/elasticsearch" import { DatasetsIndex } from "@openneuro/search" /** diff --git a/packages/openneuro-indexer/src/indexDatasets.ts b/packages/openneuro-indexer/src/indexDatasets.ts index 1eb66518d9..29662790ab 100644 --- a/packages/openneuro-indexer/src/indexDatasets.ts +++ b/packages/openneuro-indexer/src/indexDatasets.ts @@ -1,9 +1,6 @@ -import { Client as ElasticClient } from "@elastic/elasticsearch" -import { - DatasetQueryResult, - DatasetsIndex, - indexDataset, -} from "@openneuro/search" +import type { Client as ElasticClient } from "@elastic/elasticsearch" +import { DatasetsIndex, indexDataset } from "@openneuro/search" +import type { DatasetQueryResult } from "@openneuro/search" /** * Point 'datasets' index at the new version diff --git a/packages/openneuro-search/src/query.ts b/packages/openneuro-search/src/query.ts index a2cee864de..3824a0d93a 100644 --- a/packages/openneuro-search/src/query.ts +++ b/packages/openneuro-search/src/query.ts @@ -1,5 +1,6 @@ -import { Client as ElasticClient } from "@elastic/elasticsearch" -import { ApolloClient, gql, NormalizedCacheObject } from "@apollo/client" +import type { Client as ElasticClient } from "@elastic/elasticsearch" +import type { ApolloClient, NormalizedCacheObject } from "@apollo/client" +import { gql } from "@apollo/client" import { DatasetsIndex } from "./indexes/datasets" export const INDEX_DATASET_FRAGMENT = gql` diff --git a/packages/openneuro-server/src/cache/item.ts b/packages/openneuro-server/src/cache/item.ts index 212773cbdc..d1834288b8 100644 --- a/packages/openneuro-server/src/cache/item.ts +++ b/packages/openneuro-server/src/cache/item.ts @@ -1,8 +1,8 @@ -import { Redis } from "ioredis" +import type { Redis } from "ioredis" import * as zlib from "zlib" import { promisify } from "util" -import { CacheType } from "./types" -export { CacheType } from "./types" +import type { CacheType } from "./types" +export type { CacheType } from "./types" const compress = promisify(zlib.gzip) const decompress = promisify(zlib.gunzip) diff --git a/packages/openneuro-server/src/datalad/dataset.ts b/packages/openneuro-server/src/datalad/dataset.ts index 8d9f10e860..2ba9f5ed90 100644 --- a/packages/openneuro-server/src/datalad/dataset.ts +++ b/packages/openneuro-server/src/datalad/dataset.ts @@ -7,7 +7,7 @@ import request from "superagent" import requestNode from "request" import objectHash from "object-hash" import { Readable } from "stream" -import * as Mongoose from "mongoose" +import type * as Mongoose from "mongoose" import config from "../config" import * as subscriptions from "../handlers/subscriptions" import { generateDataladCookie } from "../libs/authentication/jwt" diff --git a/packages/openneuro-server/src/graphql/resolvers/__tests__/brainlife.spec.ts b/packages/openneuro-server/src/graphql/resolvers/__tests__/brainlife.spec.ts index 2d9a422d1e..665c4621a8 100644 --- a/packages/openneuro-server/src/graphql/resolvers/__tests__/brainlife.spec.ts +++ b/packages/openneuro-server/src/graphql/resolvers/__tests__/brainlife.spec.ts @@ -1,5 +1,5 @@ import { vi } from "vitest" -import { HasId } from "../../../utils/datasetOrSnapshot" +import type { HasId } from "../../../utils/datasetOrSnapshot" import { brainlifeQuery } from "../brainlife" vi.mock("ioredis") diff --git a/packages/openneuro-server/src/graphql/resolvers/brainlife.ts b/packages/openneuro-server/src/graphql/resolvers/brainlife.ts index bea65cf2d9..75089d4052 100644 --- a/packages/openneuro-server/src/graphql/resolvers/brainlife.ts +++ b/packages/openneuro-server/src/graphql/resolvers/brainlife.ts @@ -1,7 +1,5 @@ -import { - DatasetOrSnapshot, - getDatasetFromSnapshotId, -} from "../../utils/datasetOrSnapshot" +import { getDatasetFromSnapshotId } from "../../utils/datasetOrSnapshot" +import type { DatasetOrSnapshot } from "../../utils/datasetOrSnapshot" interface BrainlifeFindQuery { removed: boolean diff --git a/packages/openneuro-server/src/graphql/resolvers/metadata.ts b/packages/openneuro-server/src/graphql/resolvers/metadata.ts index 1378652132..75c64ef299 100644 --- a/packages/openneuro-server/src/graphql/resolvers/metadata.ts +++ b/packages/openneuro-server/src/graphql/resolvers/metadata.ts @@ -1,7 +1,8 @@ import Snapshot from "../../models/snapshot" -import { LeanDocument } from "mongoose" +import type { LeanDocument } from "mongoose" import DatasetModel from "../../models/dataset" -import MetadataModel, { MetadataDocument } from "../../models/metadata" +import MetadataModel from "../../models/metadata" +import type { MetadataDocument } from "../../models/metadata" import { latestSnapshot } from "./snapshots" import { permissions } from "./permissions" @@ -72,7 +73,7 @@ export const addMetadata = async (obj, { datasetId, metadata }) => { */ export async function publicMetadata( obj, -): Promise>> { +): Promise[]> { const datasets = await DatasetModel.find({ public: true, }).lean() diff --git a/packages/openneuro-server/src/graphql/resolvers/summary.ts b/packages/openneuro-server/src/graphql/resolvers/summary.ts index 4baff66bbc..3b551484e9 100644 --- a/packages/openneuro-server/src/graphql/resolvers/summary.ts +++ b/packages/openneuro-server/src/graphql/resolvers/summary.ts @@ -1,4 +1,5 @@ -import Summary, { SummaryDocument } from "../../models/summary" +import Summary from "../../models/summary" +import type { SummaryDocument } from "../../models/summary" import { datasetType } from "./datasetType" /** diff --git a/packages/openneuro-server/src/models/badAnnexObject.ts b/packages/openneuro-server/src/models/badAnnexObject.ts index b79561e811..6228acb9d7 100644 --- a/packages/openneuro-server/src/models/badAnnexObject.ts +++ b/packages/openneuro-server/src/models/badAnnexObject.ts @@ -1,6 +1,6 @@ import mongoose from "mongoose" import type { Document } from "mongoose" -import { UserDocument } from "./user" +import type { UserDocument } from "./user" const ObjectId = mongoose.Schema.Types.ObjectId export interface BadAnnexObject extends Document { From ccf90e10875cf8941ad9edb7c907795831a2bcb2 Mon Sep 17 00:00:00 2001 From: Nell Hardcastle Date: Tue, 22 Oct 2024 15:40:44 -0700 Subject: [PATCH 16/23] fix(app): Error handling for FlaggedFileContainer query errors --- .../src/scripts/pages/admin/flagged-files.jsx | 31 +++++++++++-------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/packages/openneuro-app/src/scripts/pages/admin/flagged-files.jsx b/packages/openneuro-app/src/scripts/pages/admin/flagged-files.jsx index 9190032d65..51fe3f2ac1 100644 --- a/packages/openneuro-app/src/scripts/pages/admin/flagged-files.jsx +++ b/packages/openneuro-app/src/scripts/pages/admin/flagged-files.jsx @@ -1,5 +1,5 @@ // dependencies ------------------------------------------------------- - +import * as Sentry from "@sentry/react" import React, { useState } from "react" import PropTypes from "prop-types" import { useQuery } from "@apollo/client" @@ -32,18 +32,23 @@ const FlaggedFilesContainer = () => { variables: { flagged: includeFlagged, deleted: includeDeleted }, errorPolicy: "all", }) - return ( - - ) + if (error) { + Sentry.captureException(error) + return null + } else { + return ( + + ) + } } const FlaggedFiles = ({ From f0ab199af24b9dee796239433498550aa7cb0a0c Mon Sep 17 00:00:00 2001 From: Nell Hardcastle Date: Tue, 22 Oct 2024 15:59:01 -0700 Subject: [PATCH 17/23] chore(lint): Cleanup unused variables Annotated or removed as needed. --- packages/openneuro-app/src/scripts/app.tsx | 6 +++-- .../scripts/authentication/withProfile.jsx | 1 - .../src/scripts/common/containers/header.tsx | 1 + .../src/scripts/components/data-table.tsx | 2 +- .../datalad/mutations/update-permissions.jsx | 2 +- .../scripts/dataset/common/follow-toggles.tsx | 1 - .../dataset/components/MetaDataBlock.tsx | 1 - .../dataset/components/VersionList.tsx | 2 ++ .../src/scripts/dataset/dataset-query.jsx | 2 +- .../dataset/download/download-link.jsx | 1 - .../dataset/download/download-native.js | 2 +- .../files/__tests__/file-viewer-type.spec.jsx | 2 +- .../files/file-tree-unloaded-directory.jsx | 2 +- .../mutations/__tests__/delete.spec.jsx | 2 +- .../__tests__/deprecate-version.spec.tsx | 5 +--- .../dataset/mutations/import-dataset.tsx | 2 +- .../dataset/mutations/update-permissions.tsx | 2 +- .../routes/deprecate-snapshot-page.tsx | 1 - .../scripts/dataset/routes/derivatives.tsx | 2 +- .../routes/styles/dataset-page-border.tsx | 1 - .../styles/dataset-page-tab-container.tsx | 1 - .../dataset/routes/styles/header-row.tsx | 1 - .../scripts/dataset/snapshot-container.tsx | 3 --- .../src/scripts/search/search-params-ctx.tsx | 1 + .../src/scripts/search/use-search-results.tsx | 2 +- .../src/scripts/styles/media.tsx | 1 - .../src/scripts/uploader/input.jsx | 2 +- .../src/scripts/uploader/upload-issues.jsx | 2 +- .../src/scripts/uploader/uploader.jsx | 2 +- .../src/scripts/utils/analytics.tsx | 2 +- .../src/scripts/utils/global-polyfill.ts | 1 + .../src/scripts/utils/json-ld.js | 2 +- .../src/scripts/workers/schema.worker.ts | 1 + .../src/__tests__/config.spec.js | 1 + packages/openneuro-cli/src/actions.js | 2 +- packages/openneuro-cli/src/createDataset.js | 2 +- packages/openneuro-cli/src/gitAnnexRemote.js | 2 +- .../openneuro-cli/src/setDuplexIfRequired.js | 2 +- packages/openneuro-cli/src/upload.js | 3 +-- .../src/content/affiliate-content.jsx | 17 ------------- .../src/content/facet-content.jsx | 2 -- .../src/content/front-page-content.jsx | 8 ------ .../src/dropdown/Dropdown.tsx | 2 +- .../src/facets/FacetRadio.tsx | 3 ++- .../src/front-page/ActivityHeader.tsx | 4 +-- .../src/front-page/AffiliateBlock.tsx | 4 +-- .../src/front-page/Contributors.tsx | 4 +-- .../src/front-page/Infographic.tsx | 4 +-- .../src/header/LandingExpandedHeader.tsx | 4 +-- .../src/json-tree/RecursiveProperty.tsx | 1 + .../openneuro-components/src/logo/Logo.tsx | 3 --- .../src/modal/ModalExample.tsx | 1 - .../src/modality-cube/ModalityCube.tsx | 1 - .../openneuro-components/src/page/Page.tsx | 2 +- .../src/range/TwoHandleRange.tsx | 2 +- .../src/search-page/ModalityHeader.tsx | 4 --- .../src/search-page/SearchPage.tsx | 2 -- packages/openneuro-server/src/app.ts | 2 -- packages/openneuro-server/src/cache/item.ts | 2 +- .../src/datalad/__tests__/files.spec.ts | 25 ------------------- .../openneuro-server/src/datalad/analytics.ts | 1 - .../openneuro-server/src/datalad/dataset.ts | 5 ++-- .../openneuro-server/src/datalad/draft.ts | 2 +- .../openneuro-server/src/datalad/snapshots.ts | 2 +- .../src/graphql/permissions.ts | 2 +- .../src/graphql/resolvers/brainlife.ts | 2 +- .../src/graphql/resolvers/cache.ts | 2 +- .../src/graphql/resolvers/dataset-search.ts | 5 ++-- .../src/graphql/resolvers/dataset.ts | 10 ++++---- .../src/graphql/resolvers/derivatives.ts | 2 +- .../src/graphql/resolvers/draft.ts | 3 ++- .../graphql/resolvers/importRemoteDataset.ts | 1 + .../src/graphql/resolvers/metadata.ts | 2 +- .../src/graphql/resolvers/permissions.ts | 1 + .../src/graphql/resolvers/reset.ts | 2 +- .../src/graphql/resolvers/reviewer.ts | 1 + .../src/graphql/resolvers/snapshots.ts | 2 +- 77 files changed, 69 insertions(+), 146 deletions(-) diff --git a/packages/openneuro-app/src/scripts/app.tsx b/packages/openneuro-app/src/scripts/app.tsx index 0c7c7130ff..a47a89ca40 100644 --- a/packages/openneuro-app/src/scripts/app.tsx +++ b/packages/openneuro-app/src/scripts/app.tsx @@ -1,7 +1,9 @@ -import React, { FC, ReactNode } from "react" +import React from "react" +import type { FC, ReactNode } from "react" import Helmet from "react-helmet" import { frontPage } from "./pages/front-page/front-page-content" -import { Cookies, CookiesProvider } from "react-cookie" +import type { Cookies } from "react-cookie" +import { CookiesProvider } from "react-cookie" import { ToastContainer } from "react-toastify" import "react-toastify/dist/ReactToastify.css" import { MediaContextProvider } from "./styles/media" diff --git a/packages/openneuro-app/src/scripts/authentication/withProfile.jsx b/packages/openneuro-app/src/scripts/authentication/withProfile.jsx index 8a73967cc4..67405892e1 100644 --- a/packages/openneuro-app/src/scripts/authentication/withProfile.jsx +++ b/packages/openneuro-app/src/scripts/authentication/withProfile.jsx @@ -1,4 +1,3 @@ -/* eslint-disable */ import React from "react" import { useCookies } from "react-cookie" import { getProfile, guardExpired } from "./profile" diff --git a/packages/openneuro-app/src/scripts/common/containers/header.tsx b/packages/openneuro-app/src/scripts/common/containers/header.tsx index ecd1f571ea..9735290798 100644 --- a/packages/openneuro-app/src/scripts/common/containers/header.tsx +++ b/packages/openneuro-app/src/scripts/common/containers/header.tsx @@ -26,6 +26,7 @@ export const HeaderContainer: FC = () => { const [cookies] = useCookies() const profile = getUnexpiredProfile(cookies) + /* eslint-disable-next-line @typescript-eslint/no-unused-vars */ const { userModalOpen, setUserModalOpen } = useContext(UserModalOpenCtx) const [newKeyword, setNewKeyword, newKeywordRef] = useState("") diff --git a/packages/openneuro-app/src/scripts/components/data-table.tsx b/packages/openneuro-app/src/scripts/components/data-table.tsx index 3c83c1a06f..f11a708505 100644 --- a/packages/openneuro-app/src/scripts/components/data-table.tsx +++ b/packages/openneuro-app/src/scripts/components/data-table.tsx @@ -8,7 +8,7 @@ import { useReactTable, } from "@tanstack/react-table" import styled from "@emotion/styled" -import { format, isValid, parse, parseISO } from "date-fns" +import { format, isValid, parse } from "date-fns" interface DataTableProps { data: any[] diff --git a/packages/openneuro-app/src/scripts/datalad/mutations/update-permissions.jsx b/packages/openneuro-app/src/scripts/datalad/mutations/update-permissions.jsx index 1dd01fee83..5e660e86d8 100644 --- a/packages/openneuro-app/src/scripts/datalad/mutations/update-permissions.jsx +++ b/packages/openneuro-app/src/scripts/datalad/mutations/update-permissions.jsx @@ -58,7 +58,7 @@ const UpdateDatasetPermissions = ({ datasetId, userEmail, metadata, done }) => ( variables: { datasetId, userEmail, level: metadata }, }) done() - } catch (err) { + } catch (_err) { toast.error( , ) diff --git a/packages/openneuro-app/src/scripts/dataset/common/follow-toggles.tsx b/packages/openneuro-app/src/scripts/dataset/common/follow-toggles.tsx index 788881dc9c..eceb07a43a 100644 --- a/packages/openneuro-app/src/scripts/dataset/common/follow-toggles.tsx +++ b/packages/openneuro-app/src/scripts/dataset/common/follow-toggles.tsx @@ -1,4 +1,3 @@ -import React from "react" import styled from "@emotion/styled" import "@emotion/react" diff --git a/packages/openneuro-app/src/scripts/dataset/components/MetaDataBlock.tsx b/packages/openneuro-app/src/scripts/dataset/components/MetaDataBlock.tsx index 1fb4f583c4..43af1e7a9f 100644 --- a/packages/openneuro-app/src/scripts/dataset/components/MetaDataBlock.tsx +++ b/packages/openneuro-app/src/scripts/dataset/components/MetaDataBlock.tsx @@ -1,4 +1,3 @@ -import { Markdown } from "../../utils/markdown" import React from "react" export interface MetaDataBlockProps { diff --git a/packages/openneuro-app/src/scripts/dataset/components/VersionList.tsx b/packages/openneuro-app/src/scripts/dataset/components/VersionList.tsx index c71aaf8d9b..05aca192f8 100644 --- a/packages/openneuro-app/src/scripts/dataset/components/VersionList.tsx +++ b/packages/openneuro-app/src/scripts/dataset/components/VersionList.tsx @@ -29,9 +29,11 @@ export const VersionList = ({ datasetId, hasEdit, }: VersionListProps) => { + /* eslint-disable-next-line @typescript-eslint/no-unused-vars */ const deprecatedItem = (itemTag, itemCreated) => { setSelected(itemTag) } + /* eslint-disable-next-line @typescript-eslint/no-unused-vars */ const setVersion = (itemTag, itemCreated) => { setSelected(itemTag) } diff --git a/packages/openneuro-app/src/scripts/dataset/dataset-query.jsx b/packages/openneuro-app/src/scripts/dataset/dataset-query.jsx index bda33c8b3a..921efa5604 100644 --- a/packages/openneuro-app/src/scripts/dataset/dataset-query.jsx +++ b/packages/openneuro-app/src/scripts/dataset/dataset-query.jsx @@ -2,7 +2,7 @@ import React from "react" import * as Sentry from "@sentry/react" import PropTypes from "prop-types" import { useNavigate, useParams } from "react-router-dom" -import { gql, useApolloClient, useQuery } from "@apollo/client" +import { useApolloClient, useQuery } from "@apollo/client" import { Loading } from "@openneuro/components/loading" import DatasetQueryContext from "../datalad/dataset/dataset-query-context.js" diff --git a/packages/openneuro-app/src/scripts/dataset/download/download-link.jsx b/packages/openneuro-app/src/scripts/dataset/download/download-link.jsx index 7a699f75fa..0e8e7778cd 100644 --- a/packages/openneuro-app/src/scripts/dataset/download/download-link.jsx +++ b/packages/openneuro-app/src/scripts/dataset/download/download-link.jsx @@ -3,7 +3,6 @@ import PropTypes from "prop-types" import { downloadNative } from "./download-native.js" import { useApolloClient } from "@apollo/client" import { Button } from "@openneuro/components/button" -import { Link } from "react-router-dom" const DownloadLink = ({ datasetId, snapshotTag }) => { const client = useApolloClient() diff --git a/packages/openneuro-app/src/scripts/dataset/download/download-native.js b/packages/openneuro-app/src/scripts/dataset/download/download-native.js index dc918a30f6..454edede21 100644 --- a/packages/openneuro-app/src/scripts/dataset/download/download-native.js +++ b/packages/openneuro-app/src/scripts/dataset/download/download-native.js @@ -55,7 +55,7 @@ const downloadTree = async ( snapshotTag, tree, }) - for (const [index, file] of filesToDownload.entries()) { + for (const [_index, file] of filesToDownload.entries()) { const downloadPath = path ? `${path}/${file.filename}` : file.filename if (file.directory) { // Next tree level diff --git a/packages/openneuro-app/src/scripts/dataset/files/__tests__/file-viewer-type.spec.jsx b/packages/openneuro-app/src/scripts/dataset/files/__tests__/file-viewer-type.spec.jsx index 75901166a0..8a5948d111 100644 --- a/packages/openneuro-app/src/scripts/dataset/files/__tests__/file-viewer-type.spec.jsx +++ b/packages/openneuro-app/src/scripts/dataset/files/__tests__/file-viewer-type.spec.jsx @@ -4,7 +4,7 @@ import FileViewerType from "../file-viewer-type.jsx" describe("FileViewerType component", () => { it("displays a fallback when an unknown file is specified", () => { - const component = render( + render( = ({ variables: { datasetId, url }, }) setImportStarted(true) - } catch (err) { + } catch (_err) { setImportFailed(true) } }} diff --git a/packages/openneuro-app/src/scripts/dataset/mutations/update-permissions.tsx b/packages/openneuro-app/src/scripts/dataset/mutations/update-permissions.tsx index 0889929d15..58c2879955 100644 --- a/packages/openneuro-app/src/scripts/dataset/mutations/update-permissions.tsx +++ b/packages/openneuro-app/src/scripts/dataset/mutations/update-permissions.tsx @@ -73,7 +73,7 @@ export const UpdateDatasetPermissions: FC = ({ variables: { datasetId, userEmail, level: metadata }, }) done() - } catch (err) { + } catch (_err) { toast.error( , ) diff --git a/packages/openneuro-app/src/scripts/dataset/routes/deprecate-snapshot-page.tsx b/packages/openneuro-app/src/scripts/dataset/routes/deprecate-snapshot-page.tsx index ceed9b315b..0e90640435 100644 --- a/packages/openneuro-app/src/scripts/dataset/routes/deprecate-snapshot-page.tsx +++ b/packages/openneuro-app/src/scripts/dataset/routes/deprecate-snapshot-page.tsx @@ -1,5 +1,4 @@ import React, { useState } from "react" -import { useParams } from "react-router-dom" import { DeprecateVersion } from "../mutations/deprecate-version" import { Input } from "@openneuro/components/input" import LoggedIn from "../../authentication/logged-in.jsx" diff --git a/packages/openneuro-app/src/scripts/dataset/routes/derivatives.tsx b/packages/openneuro-app/src/scripts/dataset/routes/derivatives.tsx index b811c27eea..5ab8611f6a 100644 --- a/packages/openneuro-app/src/scripts/dataset/routes/derivatives.tsx +++ b/packages/openneuro-app/src/scripts/dataset/routes/derivatives.tsx @@ -40,7 +40,7 @@ interface DerivativesProps { } const Derivatives = ({ derivatives }: DerivativesProps): JSX.Element => { - const { datasetId, tag: snapshotTag } = useParams() + const { datasetId } = useParams() const [agreed] = useAgreement() // If the derivatives page is directly visited without the agreement, return to the dataset page if (!agreed) { diff --git a/packages/openneuro-app/src/scripts/dataset/routes/styles/dataset-page-border.tsx b/packages/openneuro-app/src/scripts/dataset/routes/styles/dataset-page-border.tsx index c797c7d527..53d0674be5 100644 --- a/packages/openneuro-app/src/scripts/dataset/routes/styles/dataset-page-border.tsx +++ b/packages/openneuro-app/src/scripts/dataset/routes/styles/dataset-page-border.tsx @@ -1,4 +1,3 @@ -import React from "react" import styled from "@emotion/styled" import "@emotion/react" diff --git a/packages/openneuro-app/src/scripts/dataset/routes/styles/dataset-page-tab-container.tsx b/packages/openneuro-app/src/scripts/dataset/routes/styles/dataset-page-tab-container.tsx index 76357afe74..39f94b8e00 100644 --- a/packages/openneuro-app/src/scripts/dataset/routes/styles/dataset-page-tab-container.tsx +++ b/packages/openneuro-app/src/scripts/dataset/routes/styles/dataset-page-tab-container.tsx @@ -1,4 +1,3 @@ -import React from "react" import styled from "@emotion/styled" import "@emotion/react" diff --git a/packages/openneuro-app/src/scripts/dataset/routes/styles/header-row.tsx b/packages/openneuro-app/src/scripts/dataset/routes/styles/header-row.tsx index 8bc8f43ecd..802741ac09 100644 --- a/packages/openneuro-app/src/scripts/dataset/routes/styles/header-row.tsx +++ b/packages/openneuro-app/src/scripts/dataset/routes/styles/header-row.tsx @@ -1,4 +1,3 @@ -import React from "react" import styled from "@emotion/styled" import "@emotion/react" diff --git a/packages/openneuro-app/src/scripts/dataset/snapshot-container.tsx b/packages/openneuro-app/src/scripts/dataset/snapshot-container.tsx index b7a7dee83b..4138f48527 100644 --- a/packages/openneuro-app/src/scripts/dataset/snapshot-container.tsx +++ b/packages/openneuro-app/src/scripts/dataset/snapshot-container.tsx @@ -48,13 +48,11 @@ const snapshotVersion = (location) => { type SnapshotContainerProps = { dataset - tag: string snapshot } export const SnapshotContainer: React.FC = ({ dataset, - tag, snapshot, }) => { const location = useLocation() @@ -376,7 +374,6 @@ const SnapshotLoader: React.FC = ({ dataset }) => { > diff --git a/packages/openneuro-app/src/scripts/search/search-params-ctx.tsx b/packages/openneuro-app/src/scripts/search/search-params-ctx.tsx index 67d3030f06..d1007bbc30 100644 --- a/packages/openneuro-app/src/scripts/search/search-params-ctx.tsx +++ b/packages/openneuro-app/src/scripts/search/search-params-ctx.tsx @@ -57,6 +57,7 @@ export const removeFilterItem = (setSearchParams) => (param, value) => { // when datasetType is unset, unset datasetStatus as well updatedParams["datasetStatus_selected"] = initialSearchParams["datasetStatus_selected"] + break case "modality_selected": case "datasetStatus_selected": case "ageRange": diff --git a/packages/openneuro-app/src/scripts/search/use-search-results.tsx b/packages/openneuro-app/src/scripts/search/use-search-results.tsx index d7c807e72f..2c136eafa1 100644 --- a/packages/openneuro-app/src/scripts/search/use-search-results.tsx +++ b/packages/openneuro-app/src/scripts/search/use-search-results.tsx @@ -1,4 +1,4 @@ -import React, { useContext } from "react" +import { useContext } from "react" import { gql, useQuery } from "@apollo/client" import { SearchParamsCtx } from "./search-params-ctx" import initialSearchParams from "./initial-search-params" diff --git a/packages/openneuro-app/src/scripts/styles/media.tsx b/packages/openneuro-app/src/scripts/styles/media.tsx index cf39716a20..016f603075 100644 --- a/packages/openneuro-app/src/scripts/styles/media.tsx +++ b/packages/openneuro-app/src/scripts/styles/media.tsx @@ -1,4 +1,3 @@ -import React from "react" import { createMedia } from "@artsy/fresnel" import "@artsy/fresnel/dist/Media" diff --git a/packages/openneuro-app/src/scripts/uploader/input.jsx b/packages/openneuro-app/src/scripts/uploader/input.jsx index e0d453b824..a895b69028 100644 --- a/packages/openneuro-app/src/scripts/uploader/input.jsx +++ b/packages/openneuro-app/src/scripts/uploader/input.jsx @@ -1,6 +1,6 @@ // dependencies ------------------------------------------------------- -import React, { Component } from "react" +import React from "react" import PropTypes from "prop-types" // component setup ---------------------------------------------------- diff --git a/packages/openneuro-app/src/scripts/uploader/upload-issues.jsx b/packages/openneuro-app/src/scripts/uploader/upload-issues.jsx index 5b82038a15..bbd38cb68b 100644 --- a/packages/openneuro-app/src/scripts/uploader/upload-issues.jsx +++ b/packages/openneuro-app/src/scripts/uploader/upload-issues.jsx @@ -90,7 +90,7 @@ class UploadValidator extends React.Component { } else { validate(this.props.files, options).then(this.done) } - } catch (err) { + } catch (_err) { validate(this.props.files, options).then(this.done) } }) diff --git a/packages/openneuro-app/src/scripts/uploader/uploader.jsx b/packages/openneuro-app/src/scripts/uploader/uploader.jsx index 2acd6d6a24..8601e165c3 100644 --- a/packages/openneuro-app/src/scripts/uploader/uploader.jsx +++ b/packages/openneuro-app/src/scripts/uploader/uploader.jsx @@ -162,7 +162,7 @@ export class UploadClient extends React.Component { // Save description to state for writing later this.setState({ description }) resolve(description.Name) - } catch (e) { + } catch (_err) { // Fallback to directory name if JSON parse failed resolve(files[0].webkitRelativePath.split("/")[0]) } diff --git a/packages/openneuro-app/src/scripts/utils/analytics.tsx b/packages/openneuro-app/src/scripts/utils/analytics.tsx index 579cc3aeda..901c1f10f0 100644 --- a/packages/openneuro-app/src/scripts/utils/analytics.tsx +++ b/packages/openneuro-app/src/scripts/utils/analytics.tsx @@ -1,4 +1,4 @@ -import React, { useEffect } from "react" +import { useEffect } from "react" import { pageview } from "../utils/gtag" import { useLocation } from "react-router-dom" diff --git a/packages/openneuro-app/src/scripts/utils/global-polyfill.ts b/packages/openneuro-app/src/scripts/utils/global-polyfill.ts index 469f709724..6eb475d19e 100644 --- a/packages/openneuro-app/src/scripts/utils/global-polyfill.ts +++ b/packages/openneuro-app/src/scripts/utils/global-polyfill.ts @@ -1,3 +1,4 @@ +/* eslint-disable */ // Workaround for incorrect global reference in draft.js via fbjs interface Object { // eslint-disable-next-line @typescript-eslint/ban-types diff --git a/packages/openneuro-app/src/scripts/utils/json-ld.js b/packages/openneuro-app/src/scripts/utils/json-ld.js index 417c62a5e2..c98efaf3ff 100644 --- a/packages/openneuro-app/src/scripts/utils/json-ld.js +++ b/packages/openneuro-app/src/scripts/utils/json-ld.js @@ -52,7 +52,7 @@ const schemaGenerator = (snapshot) => { schema.identifier = [snapshot.description.DatasetDOI] } return JSON.stringify(schema) - } catch (err) { + } catch (_err) { return null } } diff --git a/packages/openneuro-app/src/scripts/workers/schema.worker.ts b/packages/openneuro-app/src/scripts/workers/schema.worker.ts index 37489fbf28..fb1beddce6 100644 --- a/packages/openneuro-app/src/scripts/workers/schema.worker.ts +++ b/packages/openneuro-app/src/scripts/workers/schema.worker.ts @@ -15,6 +15,7 @@ export async function runValidator( try { const tree = await fileListToTree(files) const result = await validate(tree, { json: true }) + /* eslint-disable-next-line @typescript-eslint/no-unused-vars */ const issues = Array.from(result.issues, ([key, value]) => value) output.issues.warnings = issues.filter( (issue) => issue.severity === "warning", diff --git a/packages/openneuro-cli/src/__tests__/config.spec.js b/packages/openneuro-cli/src/__tests__/config.spec.js index 1110c55620..20f890eb4b 100644 --- a/packages/openneuro-cli/src/__tests__/config.spec.js +++ b/packages/openneuro-cli/src/__tests__/config.spec.js @@ -7,6 +7,7 @@ const HOME = `${os.homedir()}` vi.mock("fs", () => { return { + /* eslint-disable-next-line */ default: new (require("metro-memory-fs"))({ cwd: () => HOME, }), diff --git a/packages/openneuro-cli/src/actions.js b/packages/openneuro-cli/src/actions.js index 5bd04ce287..3de2d0edde 100644 --- a/packages/openneuro-cli/src/actions.js +++ b/packages/openneuro-cli/src/actions.js @@ -1,7 +1,7 @@ /* eslint-disable no-console */ import fs from "fs" import inquirer from "inquirer" -import { getUrl, getUser, saveConfig } from "./config" +import { getUrl, saveConfig } from "./config" import { finishUpload, prepareUpload, uploadFiles, validation } from "./upload" import { createDataset, getDatasetFiles } from "./datasets" import { getSnapshots } from "./snapshots.js" diff --git a/packages/openneuro-cli/src/createDataset.js b/packages/openneuro-cli/src/createDataset.js index 31eef9275c..f7460bd9f4 100644 --- a/packages/openneuro-cli/src/createDataset.js +++ b/packages/openneuro-cli/src/createDataset.js @@ -28,7 +28,7 @@ export const createDataset = async ({ affirmedDefaced, affirmedConsent }) => { const worker = data.createDataset.worker.split("-").pop() console.log(`Dataset ${url}datasets/${datasetId} created.`) console.log(`Git remote: ${url}git/${worker}/${datasetId}`) - } catch (err) { + } catch (_err) { console.log( 'Dataset creation failed, you may need to rerun setup with "openneuro login" first', ) diff --git a/packages/openneuro-cli/src/gitAnnexRemote.js b/packages/openneuro-cli/src/gitAnnexRemote.js index 0746efef7e..37a603fb08 100644 --- a/packages/openneuro-cli/src/gitAnnexRemote.js +++ b/packages/openneuro-cli/src/gitAnnexRemote.js @@ -70,7 +70,7 @@ export const response = () => { const datasetId = url.substring(url.lastIndexOf("/") + 1, url.length) state.url = url state.token = await getRepoToken(datasetId) - } catch (err) { + } catch (_err) { state.url = undefined state.token = undefined } diff --git a/packages/openneuro-cli/src/setDuplexIfRequired.js b/packages/openneuro-cli/src/setDuplexIfRequired.js index 5f5a8653dc..a09f4825a9 100644 --- a/packages/openneuro-cli/src/setDuplexIfRequired.js +++ b/packages/openneuro-cli/src/setDuplexIfRequired.js @@ -3,7 +3,7 @@ */ export function setDuplexIfRequired(version, requestOptions) { const m = version.match(/(\d+)\.(\d+)\.(\d+)/) - const [major, minor, patch] = m.slice(1).map((_) => parseInt(_)) + const [major, minor, _patch] = m.slice(1).map((_) => parseInt(_)) if ((major >= 18 && minor >= 13) || (major >= 19 && minor >= 1)) { requestOptions.duplex = "half" } diff --git a/packages/openneuro-cli/src/upload.js b/packages/openneuro-cli/src/upload.js index e2de7715e2..7beb0c7b5f 100644 --- a/packages/openneuro-cli/src/upload.js +++ b/packages/openneuro-cli/src/upload.js @@ -115,7 +115,6 @@ export const prepareUpload = async ( }, }) const id = data.prepareUpload.id - // eslint-disable-next-line no-console console.log(`Starting a new upload (${id}) to dataset: '${datasetId}'`) return { id, @@ -178,7 +177,7 @@ export const uploadFiles = async ({ } return new Request( `${rootUrl}uploads/${endpoint}/${datasetId}/${id}/${encodedFilePath}`, - // @ts-ignore Node 18+ actually supports this despite types not advertising it + // @ts-expect-error Node 18+ actually supports this despite types not advertising it requestOptions, ) }) diff --git a/packages/openneuro-components/src/content/affiliate-content.jsx b/packages/openneuro-components/src/content/affiliate-content.jsx index da54e4be07..b9a71a5d05 100644 --- a/packages/openneuro-components/src/content/affiliate-content.jsx +++ b/packages/openneuro-components/src/content/affiliate-content.jsx @@ -1,7 +1,6 @@ import React from "react" import bidslogo from "../assets/bids.jpg" import dataladlogo from "../assets/datalad.jpg" -import nihstanfordlogo from "../assets/nih-stanford.jpg" export const affiliateContent = [ { @@ -48,20 +47,4 @@ export const affiliateContent = [ ), }, - // { - // logo: nihstanfordlogo, - // header: 'The Community Trusts OpenNeuro', - // contentOne: ( - // <> - // Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod - // tempor incididunt ut. - // - // ), - // contentTwo: ( - // <> - // View more information about{' '} - // Stanford Center for Reproducible Neuroscience - // - // ), - // }, ] diff --git a/packages/openneuro-components/src/content/facet-content.jsx b/packages/openneuro-components/src/content/facet-content.jsx index 34c8074225..85e72065f4 100644 --- a/packages/openneuro-components/src/content/facet-content.jsx +++ b/packages/openneuro-components/src/content/facet-content.jsx @@ -1,5 +1,3 @@ -import React from "react" - export const modalities = [ { label: "MRI", diff --git a/packages/openneuro-components/src/content/front-page-content.jsx b/packages/openneuro-components/src/content/front-page-content.jsx index 9662a670f9..fd5b447167 100644 --- a/packages/openneuro-components/src/content/front-page-content.jsx +++ b/packages/openneuro-components/src/content/front-page-content.jsx @@ -3,7 +3,6 @@ import { Link } from "react-router-dom" import ljaf from "../assets/ljaf.png" import nihbi from "../assets/nih-bi-logo.png" import nsf from "../assets/nsf.png" -import nimh from "../assets/nimh.png" import squishymedia from "../assets/sqm-logo.png" import novo from "../assets/novo-logo.png" import nru from "../assets/nru-logo.png" @@ -156,13 +155,6 @@ export const frontPage = { logo: ljaf, link: "http://www.arnoldfoundation.org/", }, - - // { - // title: 'NIH', - // alt: 'National Institute on Drug and Abuse', - // logo: nih, - // link: 'https://nih.gov', - // }, { title: "Squishymedia", alt: "Squishymedia", diff --git a/packages/openneuro-components/src/dropdown/Dropdown.tsx b/packages/openneuro-components/src/dropdown/Dropdown.tsx index 79fec7d6c6..e36507cc77 100644 --- a/packages/openneuro-components/src/dropdown/Dropdown.tsx +++ b/packages/openneuro-components/src/dropdown/Dropdown.tsx @@ -13,7 +13,7 @@ export const Dropdown = ({ children, label, className }: DropdownProps) => { useEffect(() => { function handleClickOutside(event) { if (ref.current && !ref.current.contains(event.target)) { - setIsOpen((prevIsOpen) => false) + setIsOpen((_prevIsOpen) => false) } } document.addEventListener("mousedown", handleClickOutside) diff --git a/packages/openneuro-components/src/facets/FacetRadio.tsx b/packages/openneuro-components/src/facets/FacetRadio.tsx index 74cd0754c3..e7e2f3d0d8 100644 --- a/packages/openneuro-components/src/facets/FacetRadio.tsx +++ b/packages/openneuro-components/src/facets/FacetRadio.tsx @@ -28,8 +28,9 @@ export const FacetRadio = ({ setSelected, className, }: FacetRadioProps) => { + const divClass = className ? `facet-radio ${className}` : "facet-radio" return ( -
    +
    = ({}) => { +export const ActivityHeader: React.FC = ({}) => { return (

    diff --git a/packages/openneuro-components/src/front-page/AffiliateBlock.tsx b/packages/openneuro-components/src/front-page/AffiliateBlock.tsx index 750bd9ae62..3b61a8208f 100644 --- a/packages/openneuro-components/src/front-page/AffiliateBlock.tsx +++ b/packages/openneuro-components/src/front-page/AffiliateBlock.tsx @@ -4,9 +4,7 @@ import { affiliateContent } from "../content/affiliate-content.jsx" import { AffiliateArticle } from "../affiliate-article/AffiliateArticle" -export interface AffiliateBlockProps {} - -export const AffiliateBlock: React.FC = () => { +export const AffiliateBlock: React.FC = () => { return (
    {affiliateContent.map((item, index) => ( diff --git a/packages/openneuro-components/src/front-page/Contributors.tsx b/packages/openneuro-components/src/front-page/Contributors.tsx index 68e3fa2422..9403757ac7 100644 --- a/packages/openneuro-components/src/front-page/Contributors.tsx +++ b/packages/openneuro-components/src/front-page/Contributors.tsx @@ -3,9 +3,7 @@ import { Logo } from "../logo/Logo" import { frontPage } from "../content/front-page-content.jsx" -export interface ContributersProps {} - -export const Contributors: React.FC = ({}) => { +export const Contributors: React.FC = ({}) => { return (
    diff --git a/packages/openneuro-components/src/front-page/Infographic.tsx b/packages/openneuro-components/src/front-page/Infographic.tsx index f7cc4a1484..0bf5f5d44f 100644 --- a/packages/openneuro-components/src/front-page/Infographic.tsx +++ b/packages/openneuro-components/src/front-page/Infographic.tsx @@ -2,9 +2,7 @@ import React from "react" import { frontPage } from "../content/front-page-content.jsx" -export interface InfographicProps {} - -export const Infographic: React.FC = ({}) => { +export const Infographic: React.FC = ({}) => { return (
    diff --git a/packages/openneuro-components/src/header/LandingExpandedHeader.tsx b/packages/openneuro-components/src/header/LandingExpandedHeader.tsx index a692a5310a..b40aa4f220 100644 --- a/packages/openneuro-components/src/header/LandingExpandedHeader.tsx +++ b/packages/openneuro-components/src/header/LandingExpandedHeader.tsx @@ -9,7 +9,7 @@ import orcidIcon from "../assets/orcid_24x24.png" import { frontPage } from "../content/front-page-content.jsx" export interface LandingExpandedHeaderProps { - user?: {} + user?: object loginUrls?: Record renderAggregateCounts?: (modality?: string) => React.ReactNode renderFacetSelect: () => React.ReactNode @@ -36,7 +36,7 @@ export const LandingExpandedHeader: React.FC = ({ label={item.label} cubeImage={item.cubeImage} stats={aggregateCounts(item.label)} - onClick={(redirectPath) => (e) => { + onClick={(redirectPath) => (_err) => { navigate(redirectPath) }} /> diff --git a/packages/openneuro-components/src/json-tree/RecursiveProperty.tsx b/packages/openneuro-components/src/json-tree/RecursiveProperty.tsx index dd10dbaf15..036557dbbb 100644 --- a/packages/openneuro-components/src/json-tree/RecursiveProperty.tsx +++ b/packages/openneuro-components/src/json-tree/RecursiveProperty.tsx @@ -38,6 +38,7 @@ export const RecursiveProperty: React.FC = (props) => { expanded={!!props.rootProperty} > {Object.values(props.property).map( + /* eslint-disable-next-line */ (property, index, { length }) => ( = ({ horizontal = true, ...props }) => { - const colorMode = dark ? "logo-dark" : "logo-light" - const layoutMode = horizontal ? "logo-horz" : "logo-vert" - const logoStyle = dark && horizontal ? logodh : horizontal diff --git a/packages/openneuro-components/src/modal/ModalExample.tsx b/packages/openneuro-components/src/modal/ModalExample.tsx index 4cae3029d2..ee7f36ced2 100644 --- a/packages/openneuro-components/src/modal/ModalExample.tsx +++ b/packages/openneuro-components/src/modal/ModalExample.tsx @@ -11,7 +11,6 @@ export interface ModalExampleProps { export const ModalExample: React.FC = ({ closeText, buttonText, - ...props }) => { const [isOpen, setIsOpen] = useState(false) const toggle = () => setIsOpen(!isOpen) diff --git a/packages/openneuro-components/src/modality-cube/ModalityCube.tsx b/packages/openneuro-components/src/modality-cube/ModalityCube.tsx index 81f0285741..64010c436e 100644 --- a/packages/openneuro-components/src/modality-cube/ModalityCube.tsx +++ b/packages/openneuro-components/src/modality-cube/ModalityCube.tsx @@ -1,5 +1,4 @@ import React from "react" -import { Link } from "react-router-dom" export interface ModalityCubeProps { label: string diff --git a/packages/openneuro-components/src/page/Page.tsx b/packages/openneuro-components/src/page/Page.tsx index c6293ecbc1..40e9c3081e 100644 --- a/packages/openneuro-components/src/page/Page.tsx +++ b/packages/openneuro-components/src/page/Page.tsx @@ -42,7 +42,7 @@ export const Page = ({ children, headerArgs, className }: PageProps) => { labelStyle="default" label="search" value="" - setValue={(value) => {}} + setValue={(_) => {}} /> )} onSearch={() => console.log("User search by keyword.")} diff --git a/packages/openneuro-components/src/range/TwoHandleRange.tsx b/packages/openneuro-components/src/range/TwoHandleRange.tsx index ae0b2c7706..0d6a328d35 100644 --- a/packages/openneuro-components/src/range/TwoHandleRange.tsx +++ b/packages/openneuro-components/src/range/TwoHandleRange.tsx @@ -1,4 +1,4 @@ -import React, { useCallback, useEffect, useRef, useState } from "react" +import React, { useCallback, useEffect, useRef } from "react" export function stepping(value, step) { return Math.round(value / step) * step diff --git a/packages/openneuro-components/src/search-page/ModalityHeader.tsx b/packages/openneuro-components/src/search-page/ModalityHeader.tsx index de28767ea2..51541e937b 100644 --- a/packages/openneuro-components/src/search-page/ModalityHeader.tsx +++ b/packages/openneuro-components/src/search-page/ModalityHeader.tsx @@ -4,8 +4,6 @@ import type { ReactNode } from "react" export interface ModalityHeaderProps { portalName: string portalPrimary: string | ReactNode - publicDatasetStat: number - participantsStat: number hexBackgroundImage: string renderAggregateCounts: () => ReactNode } @@ -13,8 +11,6 @@ export interface ModalityHeaderProps { export const ModalityHeader = ({ portalName, portalPrimary, - publicDatasetStat, - participantsStat, hexBackgroundImage, renderAggregateCounts, }: ModalityHeaderProps) => { diff --git a/packages/openneuro-components/src/search-page/SearchPage.tsx b/packages/openneuro-components/src/search-page/SearchPage.tsx index 2a57009c2a..8a02ea1eea 100644 --- a/packages/openneuro-components/src/search-page/SearchPage.tsx +++ b/packages/openneuro-components/src/search-page/SearchPage.tsx @@ -39,8 +39,6 @@ export const SearchPage = ({ diff --git a/packages/openneuro-server/src/app.ts b/packages/openneuro-server/src/app.ts index 042beb0be0..14e1a94a59 100644 --- a/packages/openneuro-server/src/app.ts +++ b/packages/openneuro-server/src/app.ts @@ -1,6 +1,4 @@ /*eslint no-console: ["error", { allow: ["log"] }] */ -/* eslint-disable no-unused-vars*/ - /** * Express app setup */ diff --git a/packages/openneuro-server/src/cache/item.ts b/packages/openneuro-server/src/cache/item.ts index d1834288b8..62f66f1549 100644 --- a/packages/openneuro-server/src/cache/item.ts +++ b/packages/openneuro-server/src/cache/item.ts @@ -2,7 +2,7 @@ import type { Redis } from "ioredis" import * as zlib from "zlib" import { promisify } from "util" import type { CacheType } from "./types" -export type { CacheType } from "./types" +export { CacheType } from "./types" const compress = promisify(zlib.gzip) const decompress = promisify(zlib.gunzip) diff --git a/packages/openneuro-server/src/datalad/__tests__/files.spec.ts b/packages/openneuro-server/src/datalad/__tests__/files.spec.ts index b15c1c434a..9a1c5e29bb 100644 --- a/packages/openneuro-server/src/datalad/__tests__/files.spec.ts +++ b/packages/openneuro-server/src/datalad/__tests__/files.spec.ts @@ -11,31 +11,6 @@ vi.mock("../../config.ts") const filename = "sub-01/anat/sub-01_T1w.nii.gz" -const mockRootFiles = [ - { filename: "README" }, - { filename: "dataset_description.json" }, -] -const mockSub01 = [ - { filename: "sub-01/anat/sub-01_T1w.nii.gz" }, - { filename: "sub-01/func/sub-01_task-onebacktask_run-01_bold.nii.gz" }, -] -const mockSub02 = [ - { filename: "sub-02/anat/sub-02_T1w.nii.gz" }, - { filename: "sub-02/func/sub-02_task-onebacktask_run-01_bold.nii.gz" }, -] -const mockSub03 = [ - { filename: "sub-03/anat/sub-03_T1w.nii.gz" }, - { filename: "sub-03/func/sub-03_task-onebacktask_run-01_bold.nii.gz" }, -] -const mockDerivatives = [{ filename: "derivatives/groundbreaking_output.html" }] -const mockFiles = [ - ...mockRootFiles, - ...mockSub01, - ...mockSub02, - ...mockSub03, - ...mockDerivatives, -] - describe("datalad files", () => { describe("encodeFilePath()", () => { it("should encode a nested path", () => { diff --git a/packages/openneuro-server/src/datalad/analytics.ts b/packages/openneuro-server/src/datalad/analytics.ts index e1d9ae0d1a..b25be0ec13 100644 --- a/packages/openneuro-server/src/datalad/analytics.ts +++ b/packages/openneuro-server/src/datalad/analytics.ts @@ -1,4 +1,3 @@ -import Analytics from "../models/analytics" import Dataset from "../models/dataset" /** diff --git a/packages/openneuro-server/src/datalad/dataset.ts b/packages/openneuro-server/src/datalad/dataset.ts index 2ba9f5ed90..62ab5a1fb8 100644 --- a/packages/openneuro-server/src/datalad/dataset.ts +++ b/packages/openneuro-server/src/datalad/dataset.ts @@ -378,7 +378,6 @@ export const addFileString = (datasetId, filename, mimetype, content) => // Mock a stream so we can reuse addFile createReadStream: () => { const stream = new Readable() - // eslint-disable-next-line @typescript-eslint/unbound-method stream._read = () => { // Content is available already, _read does nothing } @@ -406,7 +405,7 @@ export const commitFiles = (datasetId, user) => { .set("Accept", "application/json") .then((res) => { gitRef = res.body.ref - return updateDatasetRevision(datasetId, gitRef).then(() => gitRef) + return updateDatasetRevision(datasetId).then(() => gitRef) }) } @@ -495,7 +494,7 @@ export const updatePublic = (datasetId, publicFlag) => { upsert: true }, ).exec() -export const getDatasetAnalytics = (datasetId, tag) => { +export const getDatasetAnalytics = (datasetId, _tag) => { return Dataset.findOne({ id: datasetId }).then((ds) => ({ datasetId, views: ds.views || 0, diff --git a/packages/openneuro-server/src/datalad/draft.ts b/packages/openneuro-server/src/datalad/draft.ts index a2e6237718..ebe11ff1ee 100644 --- a/packages/openneuro-server/src/datalad/draft.ts +++ b/packages/openneuro-server/src/datalad/draft.ts @@ -21,7 +21,7 @@ export const getDraftRevision = async (datasetId) => { }) } -export const updateDatasetRevision = (datasetId, gitRef) => { +export const updateDatasetRevision = (datasetId) => { /** * Update the revision modified time in a draft on changes */ diff --git a/packages/openneuro-server/src/datalad/snapshots.ts b/packages/openneuro-server/src/datalad/snapshots.ts index a27bc9d9bd..c1215aa9d9 100644 --- a/packages/openneuro-server/src/datalad/snapshots.ts +++ b/packages/openneuro-server/src/datalad/snapshots.ts @@ -154,7 +154,7 @@ export const createSnapshot = async ( await Promise.all([ // Update the draft status in datasets collection in case any changes were made (DOI, License) - updateDatasetRevision(datasetId, snapshot.hexsha), + updateDatasetRevision(datasetId), // Update metadata in snapshots collection createSnapshotMetadata(datasetId, tag, snapshot.hexsha, snapshot.created), diff --git a/packages/openneuro-server/src/graphql/permissions.ts b/packages/openneuro-server/src/graphql/permissions.ts index 1bcc530451..cd56311641 100644 --- a/packages/openneuro-server/src/graphql/permissions.ts +++ b/packages/openneuro-server/src/graphql/permissions.ts @@ -67,7 +67,7 @@ export class DeletedDatasetError extends GraphQLError { // Only return a relative path to avoid cross site risks extensions = { code: "DELETED_DATASET", redirect: url.pathname } } - } catch (err) { + } catch (_err) { // Do nothing } } diff --git a/packages/openneuro-server/src/graphql/resolvers/brainlife.ts b/packages/openneuro-server/src/graphql/resolvers/brainlife.ts index 75089d4052..f880c037da 100644 --- a/packages/openneuro-server/src/graphql/resolvers/brainlife.ts +++ b/packages/openneuro-server/src/graphql/resolvers/brainlife.ts @@ -50,7 +50,7 @@ export const onBrainlife = async ( } else { return false } - } catch (err) { + } catch (_err) { return false } } diff --git a/packages/openneuro-server/src/graphql/resolvers/cache.ts b/packages/openneuro-server/src/graphql/resolvers/cache.ts index d968c2b6aa..222adb4baf 100644 --- a/packages/openneuro-server/src/graphql/resolvers/cache.ts +++ b/packages/openneuro-server/src/graphql/resolvers/cache.ts @@ -19,7 +19,7 @@ export async function cacheClear( try { await downloadCache.drop() return true - } catch (err) { + } catch (_err) { return false } } else { diff --git a/packages/openneuro-server/src/graphql/resolvers/dataset-search.ts b/packages/openneuro-server/src/graphql/resolvers/dataset-search.ts index d61cbee048..7286354a36 100644 --- a/packages/openneuro-server/src/graphql/resolvers/dataset-search.ts +++ b/packages/openneuro-server/src/graphql/resolvers/dataset-search.ts @@ -4,7 +4,6 @@ import Star from "../../models/stars" import Subscription from "../../models/subscription" import Permission from "../../models/permission" import { hashObject } from "../../libs/authentication/crypto" -import util from "util" const elasticIndex = "datasets" @@ -95,11 +94,11 @@ export const datasetSearchConnection = async ( if (after) { try { requestBody.search_after = decodeCursor(after) - } catch (err) { + } catch (_err) { // Don't include search_after if parsing fails } } - const result = await elasticClient.search({ + await elasticClient.search({ index: elasticIndex, size: first, q: `${q} AND public:true`, diff --git a/packages/openneuro-server/src/graphql/resolvers/dataset.ts b/packages/openneuro-server/src/graphql/resolvers/dataset.ts index bbe180ec01..797df748f9 100644 --- a/packages/openneuro-server/src/graphql/resolvers/dataset.ts +++ b/packages/openneuro-server/src/graphql/resolvers/dataset.ts @@ -146,9 +146,9 @@ export const deleteFiles = async ( ) => { try { await checkDatasetWrite(datasetId, user, userInfo) - const deletedFiles = await datalad.deleteFiles(datasetId, files, userInfo) + await datalad.deleteFiles(datasetId, files, userInfo) return true - } catch (err) { + } catch (_err) { return false } } @@ -169,7 +169,7 @@ export const removeAnnexObject = async ( userInfo, ) return true - } catch (err) { + } catch (_err) { return false } } @@ -189,7 +189,7 @@ export const flagAnnexObject = async ( userInfo, ) return true - } catch (err) { + } catch (_err) { return false } } @@ -228,7 +228,7 @@ export const trackAnalytics = (obj, { datasetId, tag, type }) => { try { dataladAnalytics.trackAnalytics(datasetId, tag, type) return true - } catch (err) { + } catch (_err) { return false } } diff --git a/packages/openneuro-server/src/graphql/resolvers/derivatives.ts b/packages/openneuro-server/src/graphql/resolvers/derivatives.ts index 87f70b6415..c9248696b5 100644 --- a/packages/openneuro-server/src/graphql/resolvers/derivatives.ts +++ b/packages/openneuro-server/src/graphql/resolvers/derivatives.ts @@ -44,7 +44,7 @@ export const githubDerivative = async ( } } return false - } catch (err) { + } catch (_err) { return false } } diff --git a/packages/openneuro-server/src/graphql/resolvers/draft.ts b/packages/openneuro-server/src/graphql/resolvers/draft.ts index 5a2d08a568..bc5069e868 100644 --- a/packages/openneuro-server/src/graphql/resolvers/draft.ts +++ b/packages/openneuro-server/src/graphql/resolvers/draft.ts @@ -15,6 +15,7 @@ const draftFiles = async (dataset, args, { userInfo }) => { return filterRemovedAnnexObjects(dataset.id, userInfo)(files) } +/* eslint-disable-next-line @typescript-eslint/no-unused-vars */ const draftSize = async (dataset, args, { userInfo }) => { const hexsha = await getDraftRevision(dataset.id) return Summary.findOne({ datasetId: dataset.id, id: hexsha }) @@ -33,7 +34,7 @@ export const updateRef = async ( { user, userInfo }, ) => { await checkDatasetWrite(datasetId, user, userInfo) - await updateDatasetRevision(datasetId, ref) + await updateDatasetRevision(datasetId) } /** diff --git a/packages/openneuro-server/src/graphql/resolvers/importRemoteDataset.ts b/packages/openneuro-server/src/graphql/resolvers/importRemoteDataset.ts index 0691e4297f..8ec6180b14 100644 --- a/packages/openneuro-server/src/graphql/resolvers/importRemoteDataset.ts +++ b/packages/openneuro-server/src/graphql/resolvers/importRemoteDataset.ts @@ -65,6 +65,7 @@ export async function importRemoteDataset( export async function finishImportRemoteDataset( _: Record, { id, success, message }: { id: string; success: boolean; message: string }, + /* eslint-disable-next-line @typescript-eslint/no-unused-vars */ { user, userInfo }: { user: string; userInfo: Record }, ): Promise { const ingest = await IngestDataset.findById(id) diff --git a/packages/openneuro-server/src/graphql/resolvers/metadata.ts b/packages/openneuro-server/src/graphql/resolvers/metadata.ts index 75c64ef299..527932803b 100644 --- a/packages/openneuro-server/src/graphql/resolvers/metadata.ts +++ b/packages/openneuro-server/src/graphql/resolvers/metadata.ts @@ -72,7 +72,7 @@ export const addMetadata = async (obj, { datasetId, metadata }) => { * Resolve all public datasets and return metadata */ export async function publicMetadata( - obj, + _obj, ): Promise[]> { const datasets = await DatasetModel.find({ public: true, diff --git a/packages/openneuro-server/src/graphql/resolvers/permissions.ts b/packages/openneuro-server/src/graphql/resolvers/permissions.ts index 1d816bfe0f..a957501b9d 100644 --- a/packages/openneuro-server/src/graphql/resolvers/permissions.ts +++ b/packages/openneuro-server/src/graphql/resolvers/permissions.ts @@ -40,6 +40,7 @@ const publishPermissions = async (datasetId) => { ), }, } + return permissionsUpdated } /** diff --git a/packages/openneuro-server/src/graphql/resolvers/reset.ts b/packages/openneuro-server/src/graphql/resolvers/reset.ts index c89a7825a8..cf891386de 100644 --- a/packages/openneuro-server/src/graphql/resolvers/reset.ts +++ b/packages/openneuro-server/src/graphql/resolvers/reset.ts @@ -13,7 +13,7 @@ export const resetDraft = async ( try { await resetDraftTask(datasetId, ref) return true - } catch (err) { + } catch (_err) { return false } } diff --git a/packages/openneuro-server/src/graphql/resolvers/reviewer.ts b/packages/openneuro-server/src/graphql/resolvers/reviewer.ts index cb9c312278..113fb1f995 100644 --- a/packages/openneuro-server/src/graphql/resolvers/reviewer.ts +++ b/packages/openneuro-server/src/graphql/resolvers/reviewer.ts @@ -38,5 +38,6 @@ export async function deleteReviewer( * Resolver for dataset reviewers */ export function reviewers(obj, _, { user, userInfo }) { + /* eslint-disable-line @typescript-eslint/no-unused-vars */ return Reviewer.find({ datasetId: obj.id }).lean().exec() } diff --git a/packages/openneuro-server/src/graphql/resolvers/snapshots.ts b/packages/openneuro-server/src/graphql/resolvers/snapshots.ts index 2b9fb272e2..bed6c887f3 100644 --- a/packages/openneuro-server/src/graphql/resolvers/snapshots.ts +++ b/packages/openneuro-server/src/graphql/resolvers/snapshots.ts @@ -77,7 +77,7 @@ export const matchKnownObjects = (desc) => { } else { objects.push({ id: rawDOI }) } - } catch (err) { + } catch (_err) { continue } } From 909756433e0d2d89ce437288d4930e2fe90479fa Mon Sep 17 00:00:00 2001 From: Nell Hardcastle Date: Tue, 22 Oct 2024 16:18:26 -0700 Subject: [PATCH 18/23] refactor(app): Drop deprecated updateRef --- .../scripts/datalad/mutations/update-ref.jsx | 39 ----------------- .../dataset/fragments/dataset-history.jsx | 2 - .../scripts/dataset/mutations/update-ref.jsx | 43 ------------------- .../src/graphql/resolvers/derivatives.ts | 6 +-- .../src/graphql/resolvers/draft.ts | 14 ------ .../src/graphql/resolvers/mutation.ts | 2 - .../openneuro-server/src/graphql/schema.ts | 2 - .../datalad/datalad_service/common/draft.py | 13 ------ 8 files changed, 2 insertions(+), 119 deletions(-) delete mode 100644 packages/openneuro-app/src/scripts/datalad/mutations/update-ref.jsx delete mode 100644 packages/openneuro-app/src/scripts/dataset/mutations/update-ref.jsx delete mode 100644 services/datalad/datalad_service/common/draft.py diff --git a/packages/openneuro-app/src/scripts/datalad/mutations/update-ref.jsx b/packages/openneuro-app/src/scripts/datalad/mutations/update-ref.jsx deleted file mode 100644 index bc874ca438..0000000000 --- a/packages/openneuro-app/src/scripts/datalad/mutations/update-ref.jsx +++ /dev/null @@ -1,39 +0,0 @@ -import React from "react" -import PropTypes from "prop-types" -import { gql } from "@apollo/client" -import { Mutation } from "@apollo/client/react/components" - -const RESET_DRAFT = gql` - mutation resetDraft($datasetId: ID!, $ref: String!) { - resetDraft(datasetId: $datasetId, ref: $ref) - } -` - -const UpdateRef = ({ datasetId, revision }) => ( - - {(resetDraft) => ( - - - - )} - -) - -UpdateRef.propTypes = { - datasetId: PropTypes.string, - revision: PropTypes.string, -} - -export default UpdateRef diff --git a/packages/openneuro-app/src/scripts/dataset/fragments/dataset-history.jsx b/packages/openneuro-app/src/scripts/dataset/fragments/dataset-history.jsx index 737e4de98f..1afdaa0817 100644 --- a/packages/openneuro-app/src/scripts/dataset/fragments/dataset-history.jsx +++ b/packages/openneuro-app/src/scripts/dataset/fragments/dataset-history.jsx @@ -4,7 +4,6 @@ import styled from "@emotion/styled" import { gql, useQuery } from "@apollo/client" import Revalidate from "../mutations/revalidate.jsx" -import UpdateRef from "../mutations/update-ref.jsx" const GET_HISTORY = gql` query getHistory($datasetId: ID!) { @@ -80,7 +79,6 @@ const DatasetHistory = ({ datasetId }) => {
    -
    {commit.message}
    diff --git a/packages/openneuro-app/src/scripts/dataset/mutations/update-ref.jsx b/packages/openneuro-app/src/scripts/dataset/mutations/update-ref.jsx deleted file mode 100644 index 856a05ce41..0000000000 --- a/packages/openneuro-app/src/scripts/dataset/mutations/update-ref.jsx +++ /dev/null @@ -1,43 +0,0 @@ -import React from "react" -import PropTypes from "prop-types" -import { gql } from "@apollo/client" -import { Mutation } from "@apollo/client/react/components" -import { Button } from "@openneuro/components/button" -import { Tooltip } from "@openneuro/components/tooltip" - -const RESET_DRAFT = gql` - mutation resetDraft($datasetId: ID!, $ref: String!) { - resetDraft(datasetId: $datasetId, ref: $ref) - } -` - -const UpdateRef = ({ datasetId, revision }) => ( - - {(resetDraft) => ( - -