From 9935c62d7aa5d1effb1c774c2d716852b53fab73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Vanvelthem?= Date: Sun, 20 Oct 2024 18:35:58 +0200 Subject: [PATCH] chore(dev-deps): update eslint bases --- .ncurc.yml | 3 - apps/nextjs-app/package.json | 2 +- apps/vite-app/package.json | 2 +- package.json | 2 +- packages/core-lib/package.json | 2 +- packages/eslint-config-bases/.escheckrc | 2 +- packages/eslint-config-bases/.eslintrc.cjs | 23 +- packages/eslint-config-bases/.prettierrc.js | 14 + packages/eslint-config-bases/package.json | 79 +- .../src/bases/graphql-schema.js | 4 +- .../eslint-config-bases/src/bases/import-x.js | 28 + .../eslint-config-bases/src/bases/index.js | 11 +- .../eslint-config-bases/src/bases/jest.js | 70 +- packages/eslint-config-bases/src/bases/mdx.js | 6 +- .../src/bases/perfectionist-jsx.js | 16 + .../src/bases/perfectionist.js | 29 + .../src/bases/performance.js | 19 + .../src/bases/playwright.js | 8 +- .../src/bases/prettier-config.js | 2 +- .../src/bases/prettier-plugin.js | 5 +- .../src/bases/react-query.js | 4 +- .../eslint-config-bases/src/bases/react.js | 20 +- .../eslint-config-bases/src/bases/regexp.js | 9 +- packages/eslint-config-bases/src/bases/rtl.js | 4 +- .../src/bases/simple-import-sort.js | 15 + .../eslint-config-bases/src/bases/sonar.js | 46 +- .../src/bases/storybook.js | 24 +- .../eslint-config-bases/src/bases/tailwind.js | 4 +- .../src/bases/typescript.js | 324 ++-- .../src/config/file-patterns.js | 17 + .../src/prettier.base.config.js | 10 +- yarn.lock | 1478 ++++++++++++++--- 32 files changed, 1782 insertions(+), 500 deletions(-) create mode 100644 packages/eslint-config-bases/.prettierrc.js create mode 100644 packages/eslint-config-bases/src/bases/import-x.js create mode 100644 packages/eslint-config-bases/src/bases/perfectionist-jsx.js create mode 100644 packages/eslint-config-bases/src/bases/perfectionist.js create mode 100644 packages/eslint-config-bases/src/bases/performance.js create mode 100644 packages/eslint-config-bases/src/bases/simple-import-sort.js create mode 100644 packages/eslint-config-bases/src/config/file-patterns.js diff --git a/.ncurc.yml b/.ncurc.yml index 86ed837eca2..5ed61f41825 100644 --- a/.ncurc.yml +++ b/.ncurc.yml @@ -7,10 +7,7 @@ reject: [ 'eslint', 'eslint-plugin-react-hooks', - 'eslint-plugin-sonarjs', '@pothos/plugin-prisma', '@pothos/core', '@pothos/plugin-errors', - '@typescript-eslint/parser', - '@typescript-eslint/eslint-plugin', ] diff --git a/apps/nextjs-app/package.json b/apps/nextjs-app/package.json index 052a7cb2cf8..3d62ee4a6ea 100644 --- a/apps/nextjs-app/package.json +++ b/apps/nextjs-app/package.json @@ -90,7 +90,7 @@ "graphql": "16.9.0", "graphql-jit": "0.8.6", "graphql-yoga": "5.7.0", - "i18next": "23.16.0", + "i18next": "23.16.2", "jose": "5.9.4", "ky": "1.7.2", "next": "14.2.15", diff --git a/apps/vite-app/package.json b/apps/vite-app/package.json index f9b27b5555d..f9027aedfee 100644 --- a/apps/vite-app/package.json +++ b/apps/vite-app/package.json @@ -28,7 +28,7 @@ "@babel/core": "7.25.8", "@types/react": "18.3.11", "@types/react-dom": "18.3.1", - "@vitejs/plugin-react": "4.3.2", + "@vitejs/plugin-react": "4.3.3", "@vitest/coverage-v8": "2.1.3", "@vitest/ui": "2.1.3", "@your-org/eslint-config-bases": "workspace:^", diff --git a/package.json b/package.json index f39b4f4d46b..c73c15e9668 100644 --- a/package.json +++ b/package.json @@ -64,7 +64,7 @@ "rimraf": "6.0.1", "shell-quote": "1.8.1", "syncpack": "13.0.0", - "turbo": "2.2.0", + "turbo": "2.2.1", "typescript": "5.6.3" }, "engines": { diff --git a/packages/core-lib/package.json b/packages/core-lib/package.json index acde6ca8543..a4d563585ab 100644 --- a/packages/core-lib/package.json +++ b/packages/core-lib/package.json @@ -57,7 +57,7 @@ "@types/node": "22.7.7", "@types/react": "18.3.11", "@types/react-dom": "18.3.1", - "@vitejs/plugin-react": "4.3.2", + "@vitejs/plugin-react": "4.3.3", "@vitest/coverage-v8": "2.1.3", "@vitest/ui": "2.1.3", "@your-org/eslint-config-bases": "workspace:^", diff --git a/packages/eslint-config-bases/.escheckrc b/packages/eslint-config-bases/.escheckrc index 63ebf3b0c2d..98367633652 100644 --- a/packages/eslint-config-bases/.escheckrc +++ b/packages/eslint-config-bases/.escheckrc @@ -1,5 +1,5 @@ { - "ecmaVersion": "es2022", + "ecmaVersion": "es2020", "module": false, "files": "./src/**/*.js" } \ No newline at end of file diff --git a/packages/eslint-config-bases/.eslintrc.cjs b/packages/eslint-config-bases/.eslintrc.cjs index 06330cc8453..836326825e5 100644 --- a/packages/eslint-config-bases/.eslintrc.cjs +++ b/packages/eslint-config-bases/.eslintrc.cjs @@ -1,16 +1,25 @@ const { getDefaultIgnorePatterns } = require('./src/helpers'); module.exports = { - root: true, - parser: '@typescript-eslint/parser', - parserOptions: { - tsconfigRootDir: __dirname, - project: 'tsconfig.json', - }, - ignorePatterns: [...getDefaultIgnorePatterns()], extends: [ './src/bases/typescript', + './src/bases/simple-import-sort', + './src/bases/import-x', + './src/bases/sonar', + './src/bases/regexp', + './src/bases/perfectionist', + './src/bases/performance', './src/bases/prettier-plugin', './src/bases/mdx', ], + ignorePatterns: [...getDefaultIgnorePatterns()], + parser: '@typescript-eslint/parser', + parserOptions: { + projectService: true, + tsconfigRootDir: __dirname, + }, + root: true, + rules: { + '@typescript-eslint/no-require-imports': 'off', + }, }; diff --git a/packages/eslint-config-bases/.prettierrc.js b/packages/eslint-config-bases/.prettierrc.js new file mode 100644 index 00000000000..3d441077e3f --- /dev/null +++ b/packages/eslint-config-bases/.prettierrc.js @@ -0,0 +1,14 @@ +// @ts-check +const { + getPrettierConfig, +} = require("./src/helpers"); + +/** + * @type {import('prettier').Config} + */ +module.exports = { + ...getPrettierConfig(), + overrides: [ + // whatever you need + ], +}; diff --git a/packages/eslint-config-bases/package.json b/packages/eslint-config-bases/package.json index c146b2f4d59..64d7cb8411b 100644 --- a/packages/eslint-config-bases/package.json +++ b/packages/eslint-config-bases/package.json @@ -1,7 +1,22 @@ { "name": "@your-org/eslint-config-bases", - "version": "1.5.4", + "version": "6.0.2", + "license": "MIT", "private": true, + "homepage": "https://github.com/belgattitude/nextjs-monorepo-example/tree/main/packages/eslint-config-bases", + "repository": { + "type": "git", + "url": "https://github.com/belgattitude/nextjs-monorepo-example", + "directory": "packages/eslint-config-bases" + }, + "author": { + "name": "Vanvelthem Sébastien", + "url": "https://github.com/belgattitude" + }, + "keywords": [ + "eslint", + "eslint-config" + ], "type": "commonjs", "main": "./src/index.js", "exports": { @@ -20,9 +35,18 @@ "./mdx": { "require": "./src/bases/mdx.js" }, + "./import-x": { + "require": "./src/bases/import-x.js" + }, "./jest": { "require": "./src/bases/jest.js" }, + "./perfectionist": { + "require": "./src/bases/perfectionist.js" + }, + "./perfectionist-jsx": { + "require": "./src/bases/perfectionist-jsx.js" + }, "./playwright": { "require": "./src/bases/playwright.js" }, @@ -32,6 +56,9 @@ "./prettier-plugin": { "require": "./src/bases/prettier-plugin.js" }, + "./performance": { + "require": "./src/bases/performance.js" + }, "./react": { "require": "./src/bases/react.js" }, @@ -44,6 +71,9 @@ "./regexp": { "require": "./src/bases/regexp.js" }, + "./simple-import-sort": { + "require": "./src/bases/simple-import-sort.js" + }, "./sonar": { "require": "./src/bases/sonar.js" }, @@ -67,38 +97,48 @@ "dependencies": { "@rushstack/eslint-patch": "^1.10.4", "@tanstack/eslint-plugin-query": "^5.59.7", - "@typescript-eslint/eslint-plugin": "^7.17.0", - "@typescript-eslint/parser": "^7.17.0", + "@typescript-eslint/eslint-plugin": "^8.10.0", + "@typescript-eslint/parser": "^8.10.0", + "@typescript-eslint/typescript-estree": "^8.10.0", + "@typescript-eslint/utils": "^8.10.0", "eslint-config-prettier": "^9.1.0", "eslint-import-resolver-typescript": "^3.6.3", - "eslint-plugin-import": "^2.31.0", + "eslint-plugin-import-x": "^4.3.1", "eslint-plugin-jest": "^28.8.3", "eslint-plugin-jest-formatting": "^3.1.0", "eslint-plugin-jsx-a11y": "^6.10.0", - "eslint-plugin-playwright": "^1.7.0", + "eslint-plugin-perfectionist": "^3.9.1", + "eslint-plugin-playwright": "^1.8.0", "eslint-plugin-prettier": "^5.2.1", "eslint-plugin-react": "^7.37.1", - "eslint-plugin-react-hooks": "^4.6.2 || 5.0.0-canary-7118f5dd7-20230705", + "eslint-plugin-react-hooks": "^4.6.2 || ^5.0.0 || 5.0.0-canary-7118f5dd7-20230705", "eslint-plugin-regexp": "^2.6.0", - "eslint-plugin-sonarjs": "^0.25.1", + "eslint-plugin-simple-import-sort": "^12.1.1", + "eslint-plugin-sonarjs": "^2.0.4", "eslint-plugin-storybook": "^0.9.0", - "eslint-plugin-testing-library": "^6.4.0" + "eslint-plugin-testing-library": "^6.4.0", + "eslint-plugin-unicorn": "^56.0.0", + "eslint-plugin-unused-imports": "^4.1.4" }, "peerDependencies": { - "@graphql-eslint/eslint-plugin": "^3.14.3", - "eslint": "^8.55.0", - "eslint-plugin-mdx": "^2.2.0 || ^3.0.0", - "eslint-plugin-tailwindcss": "^3.13.0", - "graphql": "^16.8.0", - "prettier": "^3.0.0", - "react": "^18.2.0", - "react-dom": "^18.2.0", - "typescript": "^5.1.6" + "@graphql-eslint/eslint-plugin": "^3.20.1", + "@testing-library/dom": "^10.4.0", + "eslint": "^8.57.1", + "eslint-plugin-mdx": "^3.1.5", + "eslint-plugin-tailwindcss": "^3.17.4", + "graphql": "^16.9.0", + "prettier": ">=3.2.0 <5.0.0", + "react": ">=18.2.0", + "react-dom": ">=18.2.0", + "typescript": "^5.3.1" }, "peerDependenciesMeta": { "@graphql-eslint/eslint-plugin": { "optional": true }, + "@testing-library/dom": { + "optional": true + }, "eslint-plugin-mdx": { "optional": true }, @@ -127,7 +167,9 @@ "devDependencies": { "@graphql-eslint/eslint-plugin": "3.20.1", "@testing-library/dom": "10.4.0", + "@testing-library/jest-dom": "6.6.2", "@testing-library/react": "16.0.1", + "@types/jest": "29.5.13", "@types/node": "22.7.7", "@types/react": "18.3.11", "@types/react-dom": "18.3.1", @@ -136,6 +178,7 @@ "eslint-plugin-mdx": "3.1.5", "eslint-plugin-tailwindcss": "3.17.5", "graphql": "16.9.0", + "prettier": "3.3.3", "react": "18.3.1", "react-dom": "18.3.1", "rimraf": "6.0.1", @@ -143,6 +186,6 @@ "typescript": "5.6.3" }, "engines": { - "node": ">=18.12.0" + "node": ">=18.18.0" } } diff --git a/packages/eslint-config-bases/src/bases/graphql-schema.js b/packages/eslint-config-bases/src/bases/graphql-schema.js index 5f1a52463f5..8c1c2c59673 100644 --- a/packages/eslint-config-bases/src/bases/graphql-schema.js +++ b/packages/eslint-config-bases/src/bases/graphql-schema.js @@ -1,6 +1,6 @@ /** * Opinionated config base for projects using graphql schemas (*.graphql) - * @see https://github.com/belgattitude/nextjs-monorepo-example/tree/main/packages/eslint-config-bases + * @see https://github.com/belgattitude/shared-dx/tree/main/packages/eslint-config-bases */ const graphqlSchemaPatterns = { files: ['*.graphql'], @@ -9,9 +9,9 @@ const graphqlSchemaPatterns = { module.exports = { overrides: [ { - files: graphqlSchemaPatterns.files, // @see https://github.com/B2o5T/graphql-eslint extends: 'plugin:@graphql-eslint/schema-recommended', + files: graphqlSchemaPatterns.files, rules: { '@graphql-eslint/known-type-names': 'error', }, diff --git a/packages/eslint-config-bases/src/bases/import-x.js b/packages/eslint-config-bases/src/bases/import-x.js new file mode 100644 index 00000000000..04f8a214b45 --- /dev/null +++ b/packages/eslint-config-bases/src/bases/import-x.js @@ -0,0 +1,28 @@ +/** + * Custom config base for projects using jest. + * @see https://github.com/belgattitude/shared-dx/tree/main/packages/eslint-config-bases + */ +const { filePatterns } = require('../config/file-patterns'); + +module.exports = { + extends: ['plugin:import-x/typescript', 'plugin:import-x/recommended'], + rules: { + 'import-x/no-unused-modules': 'warn', + 'import-x/no-absolute-path': 'error', + 'import-x/no-useless-path-segments': 'error', + }, + overrides: [ + { + files: filePatterns.test, + rules: { + 'import-x/namespace': 'off', + }, + }, + ], + settings: { + 'import-x/resolver': { + typescript: true, + node: true, + }, + }, +}; diff --git a/packages/eslint-config-bases/src/bases/index.js b/packages/eslint-config-bases/src/bases/index.js index f69e3553f68..f51875d1a2f 100644 --- a/packages/eslint-config-bases/src/bases/index.js +++ b/packages/eslint-config-bases/src/bases/index.js @@ -1,16 +1,21 @@ module.exports = { graphqlSchema: require('./graphql-schema'), + 'import-x': require('./import-x'), jest: require('./jest'), mdx: require('./mdx'), + perfectionist: require('./perfectionist'), + 'perfectionist-jsx': require('./perfectionist-jsx'), playwright: require('./playwright'), - 'prettier-plugin': require('./prettier-plugin'), 'prettier-config': require('./prettier-config'), + 'prettier-plugin': require('./prettier-plugin'), + performance: require('./performance'), react: require('./react'), - regexp: require('./regexp'), reactQuery: require('./react-query'), reactTestingLibrary: require('./rtl'), - storybook: require('./storybook'), + regexp: require('./regexp'), + 'simple-import-sort': require('./simple-import-sort'), sonar: require('./sonar'), + storybook: require('./storybook'), tailwind: require('./tailwind'), typescript: require('./typescript'), }; diff --git a/packages/eslint-config-bases/src/bases/jest.js b/packages/eslint-config-bases/src/bases/jest.js index 4a8a173e74b..d2e74cb2b95 100644 --- a/packages/eslint-config-bases/src/bases/jest.js +++ b/packages/eslint-config-bases/src/bases/jest.js @@ -1,59 +1,61 @@ /** * Custom config base for projects using jest. - * @see https://github.com/belgattitude/nextjs-monorepo-example/tree/main/packages/eslint-config-bases + * @see https://github.com/belgattitude/shared-dx/tree/main/packages/eslint-config-bases */ - -const jestPatterns = { - files: ['**/?(*.)+(test).{js,jsx,ts,tsx}'], -}; +const { filePatterns } = require('../config/file-patterns'); module.exports = { env: { es6: true, node: true, }, - settings: { - // To prevent autodetection issues in monorepos or via vitest - jest: { - version: 'latest', - }, - }, overrides: [ { - // Perf: To ensure best performance enable eslint-plugin-jest for test files only. - files: jestPatterns.files, // @see https://github.com/jest-community/eslint-plugin-jest extends: ['plugin:jest/recommended'], + // Perf: To ensure best performance enable eslint-plugin-jest for test files only. + files: filePatterns.test, rules: { - // Relax rules that are known to be slow and less useful in a test context - 'import/namespace': 'off', - 'import/default': 'off', - 'import/no-duplicates': 'off', - // Relax rules that makes writing tests easier - 'import/no-named-as-default-member': 'off', - '@typescript-eslint/no-non-null-assertion': 'off', - '@typescript-eslint/no-object-literal-type-assertion': 'off', - '@typescript-eslint/no-empty-function': 'off', - '@typescript-eslint/no-explicit-any': 'off', - '@typescript-eslint/ban-ts-comment': 'off', - '@typescript-eslint/no-unsafe-member-access': 'off', - '@typescript-eslint/no-unsafe-assignment': 'off', - // Enable Jest rules - 'jest/no-focused-tests': 'error', - 'jest/prefer-mock-promise-shorthand': 'error', + // No standalone expect is relaxed for test files + 'jest/no-standalone-expect': 'off', + 'jest/consistent-test-it': ['error', { fn: 'it' }], 'jest/no-commented-out-tests': 'error', - 'jest/prefer-hooks-in-order': 'error', - 'jest/prefer-hooks-on-top': 'error', 'jest/no-conditional-in-test': 'error', 'jest/no-duplicate-hooks': 'error', + // Enable Jest rules + 'jest/no-focused-tests': 'error', 'jest/no-test-return-statement': 'error', + 'jest/prefer-hooks-in-order': 'error', + 'jest/prefer-hooks-on-top': 'error', + 'jest/prefer-mock-promise-shorthand': 'error', 'jest/prefer-strict-equal': 'error', 'jest/prefer-to-have-length': 'error', - 'jest/consistent-test-it': ['error', { fn: 'it' }], - // https://github.com/jest-community/eslint-plugin-jest/blob/main/docs/rules/unbound-method.md - '@typescript-eslint/unbound-method': 'off', 'jest/unbound-method': 'error', + 'jest/prefer-to-be': 'error', + 'jest/prefer-to-contain': 'error', + 'jest/no-restricted-matchers': [ + 'error', + { + toBeFalsy: null, + toBeTruthy: null, + /* + resolves: 'Use `expect(await promise)` instead.', + toHaveBeenCalledWith: null, + 'not.toHaveBeenCalledWith': null, + 'resolves.toHaveBeenCalledWith': null, + 'rejects.toHaveBeenCalledWith': null, + 'resolves.not.toHaveBeenCalledWith': null, + 'rejects.not.toHaveBeenCalledWith': null, + */ + }, + ], }, }, ], + settings: { + // To prevent autodetection issues in monorepos or via vitest + jest: { + version: 'latest', + }, + }, }; diff --git a/packages/eslint-config-bases/src/bases/mdx.js b/packages/eslint-config-bases/src/bases/mdx.js index 08822775c3c..8c686762959 100644 --- a/packages/eslint-config-bases/src/bases/mdx.js +++ b/packages/eslint-config-bases/src/bases/mdx.js @@ -1,6 +1,6 @@ /** * Opinionated config base for https://github.com/mdx-js/eslint-mdx - * @see https://github.com/belgattitude/nextjs-monorepo-example/tree/main/packages/eslint-config-bases + * @see https://github.com/belgattitude/shared-dx/tree/main/packages/eslint-config-bases */ const mdxPatterns = { @@ -10,12 +10,12 @@ const mdxPatterns = { module.exports = { overrides: [ { - // For performance enable this only on mdx files - files: mdxPatterns.files, extends: [ 'plugin:mdx/recommended', 'plugin:@typescript-eslint/disable-type-checked', ], + // For performance enable this only on mdx files + files: mdxPatterns.files, parser: 'eslint-mdx', parserOptions: { project: null, diff --git a/packages/eslint-config-bases/src/bases/perfectionist-jsx.js b/packages/eslint-config-bases/src/bases/perfectionist-jsx.js new file mode 100644 index 00000000000..c1d1d2ff468 --- /dev/null +++ b/packages/eslint-config-bases/src/bases/perfectionist-jsx.js @@ -0,0 +1,16 @@ +/** + * Custom config base for projects using typescript / javascript. + * @see https://github.com/belgattitude/shared-dx/tree/main/packages/eslint-config-bases#belgattitudeeslint-config-bases + */ + +module.exports = { + overrides: [ + { + files: ['*.jsx', '*.tsx'], + plugins: ['perfectionist'], + rules: { + 'perfectionist/sort-jsx-props': 'error', + }, + }, + ], +}; diff --git a/packages/eslint-config-bases/src/bases/perfectionist.js b/packages/eslint-config-bases/src/bases/perfectionist.js new file mode 100644 index 00000000000..56724e2e1c1 --- /dev/null +++ b/packages/eslint-config-bases/src/bases/perfectionist.js @@ -0,0 +1,29 @@ +/** + * Custom config base for projects using typescript / javascript. + * @see https://github.com/belgattitude/shared-dx/tree/main/packages/eslint-config-bases#belgattitudeeslint-config-bases + */ + +module.exports = { + overrides: [ + { + extends: ['plugin:perfectionist/recommended-natural-legacy'], + files: ['*.js', '*.cjs', '*.mjs', '*.ts'], + rules: { + // import/order is used + 'perfectionist/sort-named-imports': 'off', + 'perfectionist/sort-imports': 'off', + // Keep at false as it can create issue when code relies on keys order + 'perfectionist/sort-maps': 'off', + // Keep at false as because it does not work with class properties + 'perfectionist/sort-classes': 'off', + // Keep at false as it can create issue when code relies on keys order + 'perfectionist/sort-objects': 'off', + // Keep at false as it can create issue when code relies on keys order + 'perfectionist/sort-union-types': 'off', + // May introduce performance degradation + 'perfectionist/sort-array-includes': 'off', + 'perfectionist/sort-jsx-props': 'off', + }, + }, + ], +}; diff --git a/packages/eslint-config-bases/src/bases/performance.js b/packages/eslint-config-bases/src/bases/performance.js new file mode 100644 index 00000000000..35d49fadf52 --- /dev/null +++ b/packages/eslint-config-bases/src/bases/performance.js @@ -0,0 +1,19 @@ +/** + * Custom config base for projects that wants to enable regexp rules. + * @see https://github.com/belgattitude/shared-dx/tree/main/packages/eslint-config-bases + */ + +const { filePatterns } = require('../config/file-patterns'); + +module.exports = { + overrides: [ + { + plugins: ['unicorn'], + files: filePatterns.typescriptAndJsCodeWithoutJsx, + excludedFiles: filePatterns.nonCodeFile, + rules: { + 'unicorn/prefer-set-has': 'error', + }, + }, + ], +}; diff --git a/packages/eslint-config-bases/src/bases/playwright.js b/packages/eslint-config-bases/src/bases/playwright.js index 11eee7702a3..b1f28e7e236 100644 --- a/packages/eslint-config-bases/src/bases/playwright.js +++ b/packages/eslint-config-bases/src/bases/playwright.js @@ -1,6 +1,6 @@ /** * Opinionated config base for projects using playwright. - * @see https://github.com/belgattitude/nextjs-monorepo-example/tree/main/packages/eslint-config-bases + * @see https://github.com/belgattitude/shared-dx/tree/main/packages/eslint-config-bases */ const playwrightPatterns = { @@ -10,14 +10,14 @@ const playwrightPatterns = { module.exports = { overrides: [ { - // To ensure best performance enable only on e2e test files - files: playwrightPatterns.files, // @see https://github.com/playwright-community/eslint-plugin-playwright extends: ['plugin:playwright/recommended'], + // To ensure best performance enable only on e2e test files + files: playwrightPatterns.files, rules: { + '@typescript-eslint/no-empty-function': 'off', '@typescript-eslint/no-non-null-assertion': 'off', '@typescript-eslint/no-object-literal-type-assertion': 'off', - '@typescript-eslint/no-empty-function': 'off', }, }, ], diff --git a/packages/eslint-config-bases/src/bases/prettier-config.js b/packages/eslint-config-bases/src/bases/prettier-config.js index 0ce0debd4ba..741086910c9 100644 --- a/packages/eslint-config-bases/src/bases/prettier-config.js +++ b/packages/eslint-config-bases/src/bases/prettier-config.js @@ -1,6 +1,6 @@ /** * Custom config base for projects using prettier. - * @see https://github.com/belgattitude/nextjs-monorepo-example/tree/main/packages/eslint-config-bases + * @see https://github.com/belgattitude/shared-dx/tree/main/packages/eslint-config-bases */ module.exports = { diff --git a/packages/eslint-config-bases/src/bases/prettier-plugin.js b/packages/eslint-config-bases/src/bases/prettier-plugin.js index 815490311ce..47fc3879bce 100644 --- a/packages/eslint-config-bases/src/bases/prettier-plugin.js +++ b/packages/eslint-config-bases/src/bases/prettier-plugin.js @@ -1,17 +1,18 @@ /** * Custom config base for projects using prettier. - * @see https://github.com/belgattitude/nextjs-monorepo-example/tree/main/packages/eslint-config-bases + * @see https://github.com/belgattitude/shared-dx/tree/main/packages/eslint-config-bases */ const { getPrettierConfig } = require('../helpers'); + const { ...prettierConfig } = getPrettierConfig(); module.exports = { extends: ['prettier'], plugins: ['prettier'], rules: { - 'prettier/prettier': ['error', prettierConfig], 'arrow-body-style': 'off', 'prefer-arrow-callback': 'off', + 'prettier/prettier': ['error', prettierConfig], }, }; diff --git a/packages/eslint-config-bases/src/bases/react-query.js b/packages/eslint-config-bases/src/bases/react-query.js index e74ea7ad9e3..256f705a270 100644 --- a/packages/eslint-config-bases/src/bases/react-query.js +++ b/packages/eslint-config-bases/src/bases/react-query.js @@ -1,6 +1,6 @@ /** * Opinionated config base for projects using react. - * @see https://github.com/belgattitude/nextjs-monorepo-example/tree/main/packages/eslint-config-bases + * @see https://github.com/belgattitude/shared-dx/tree/main/packages/eslint-config-bases */ const reactPatterns = { @@ -15,11 +15,11 @@ const reactPatterns = { module.exports = { overrides: [ { - files: [...reactPatterns.files], extends: [ // @see https://tanstack.com/query/v4/docs/react/eslint/eslint-plugin-query 'plugin:@tanstack/eslint-plugin-query/recommended', ], + files: [...reactPatterns.files], // rules: { }, }, ], diff --git a/packages/eslint-config-bases/src/bases/react.js b/packages/eslint-config-bases/src/bases/react.js index f2e70699b3a..f195274f31a 100644 --- a/packages/eslint-config-bases/src/bases/react.js +++ b/packages/eslint-config-bases/src/bases/react.js @@ -1,6 +1,6 @@ /** * Opinionated config base for projects using react. - * @see https://github.com/belgattitude/nextjs-monorepo-example/tree/main/packages/eslint-config-bases + * @see https://github.com/belgattitude/shared-dx/tree/main/packages/eslint-config-bases */ const reactPatterns = { @@ -22,30 +22,30 @@ module.exports = { es6: true, node: true, }, - settings: { - react: { - version: 'detect', - }, - }, overrides: [ { - files: [...reactPatterns.files, ...stylesPatterns.files], extends: [ - // @see https://github.com/yannickcr/eslint-plugin-react + // @see https://github.com/jsx-eslint/eslint-plugin-react 'plugin:react/recommended', // @see https://www.npmjs.com/package/eslint-plugin-react-hooks 'plugin:react-hooks/recommended', // @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y 'plugin:jsx-a11y/recommended', ], + files: [...reactPatterns.files, ...stylesPatterns.files], rules: { - // https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/no-unknown-property.md - 'react/no-unknown-property': ['error', { ignore: ['css'] }], // https://github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/no-unescaped-entities.md 'react/no-unescaped-entities': ['error', { forbid: ['>'] }], + // https://github.com/jsx-eslint/eslint-plugin-react/blob/master/docs/rules/no-unknown-property.md + 'react/no-unknown-property': ['error', { ignore: ['css'] }], 'react/prop-types': 'off', 'react/react-in-jsx-scope': 'off', }, }, ], + settings: { + react: { + version: 'detect', + }, + }, }; diff --git a/packages/eslint-config-bases/src/bases/regexp.js b/packages/eslint-config-bases/src/bases/regexp.js index a9da551f501..cbac592eb59 100644 --- a/packages/eslint-config-bases/src/bases/regexp.js +++ b/packages/eslint-config-bases/src/bases/regexp.js @@ -1,20 +1,17 @@ /** * Custom config base for projects that wants to enable regexp rules. - * @see https://github.com/belgattitude/nextjs-monorepo-example/tree/main/packages/eslint-config-bases + * @see https://github.com/belgattitude/shared-dx/tree/main/packages/eslint-config-bases */ -const regexpPatterns = { - files: ['*.{js,jsx,jsx,tsx}'], -}; +const { filePatterns } = require('../config/file-patterns'); module.exports = { // @see https://github.com/ota-meshi/eslint-plugin-regexp extends: ['plugin:regexp/recommended'], overrides: [ { - // To ensure best performance enable only on e2e test files - files: regexpPatterns.files, extends: ['plugin:regexp/recommended'], + files: filePatterns.typescriptAndJsCodeWithJsx, rules: { 'regexp/prefer-result-array-groups': 'off', }, diff --git a/packages/eslint-config-bases/src/bases/rtl.js b/packages/eslint-config-bases/src/bases/rtl.js index 6ac6378dda6..35c7a560f70 100644 --- a/packages/eslint-config-bases/src/bases/rtl.js +++ b/packages/eslint-config-bases/src/bases/rtl.js @@ -1,6 +1,6 @@ /** * Opinionated config base for projects using react-testing-library - * @see https://github.com/belgattitude/nextjs-monorepo-example/tree/main/packages/eslint-config-bases + * @see https://github.com/belgattitude/shared-dx/tree/main/packages/eslint-config-bases */ const rtlPatterns = { @@ -15,9 +15,9 @@ module.exports = { }, overrides: [ { + extends: ['plugin:testing-library/react'], // For performance enable react-testing-library only on test files files: rtlPatterns.files, - extends: ['plugin:testing-library/react'], }, { files: ['**/test-utils.tsx'], diff --git a/packages/eslint-config-bases/src/bases/simple-import-sort.js b/packages/eslint-config-bases/src/bases/simple-import-sort.js new file mode 100644 index 00000000000..f486f81eabd --- /dev/null +++ b/packages/eslint-config-bases/src/bases/simple-import-sort.js @@ -0,0 +1,15 @@ +module.exports = { + env: { + browser: true, + es6: true, + node: true, + }, + plugins: ['simple-import-sort'], + rules: { + 'linebreak-style': ['error', 'unix'], + 'no-duplicate-imports': 'off', + 'simple-import-sort/imports': 'error', + 'simple-import-sort/exports': 'error', + 'sort-imports': 'off', + }, +}; diff --git a/packages/eslint-config-bases/src/bases/sonar.js b/packages/eslint-config-bases/src/bases/sonar.js index 305744af1d7..f8171ff6ef1 100644 --- a/packages/eslint-config-bases/src/bases/sonar.js +++ b/packages/eslint-config-bases/src/bases/sonar.js @@ -1,15 +1,9 @@ /** * Opinionated config base for projects that enable sonarjs - * @see https://github.com/belgattitude/nextjs-monorepo-example/tree/main/packages/eslint-config-bases + * @see https://github.com/belgattitude/shared-dx/tree/main/packages/eslint-config-bases */ -const sonarPatterns = { - files: ['*.{js,jsx,ts,tsx}'], - excludedFiles: [ - '**/?(*.)+(test).{js,jsx,ts,tsx}', - '*.stories.{js,ts,jsx,tsx}', - ], -}; +const { filePatterns } = require('../config/file-patterns'); module.exports = { env: { @@ -17,21 +11,43 @@ module.exports = { es6: true, node: true, }, + plugins: ['sonarjs'], overrides: [ { - files: sonarPatterns.files, - excludedFiles: sonarPatterns.excludedFiles, - extends: ['plugin:sonarjs/recommended'], + extends: ['plugin:sonarjs/recommended-legacy'], + excludedFiles: filePatterns.nonCodeFile, + files: filePatterns.anyCode, rules: { + // Typescript-eslint does the job well enough + 'sonarjs/no-misused-promises': 'off', + // Because plugin unused-import does it better (autofix) + 'sonarjs/unused-import': 'off', + // because it doesn't play well with inlined comment api doc + 'sonarjs/no-commented-code': 'off', + // because it's handled by typescript-eslint + 'sonarjs/sonar-no-unused-vars': 'off', + // because it's handled by typescript-eslint + 'sonarjs/deprecation': 'off', + // because it doesn't play well with exactOptionalTypes + 'sonarjs/no-redundant-optional': 'off', + 'sonarjs/jsx-no-useless-fragment': 'off', + 'sonarjs/redundant-type-aliases': 'warn', 'sonarjs/no-nested-template-literals': 'off', - 'sonarjs/prefer-single-boolean-return': 'off', + 'sonarjs/no-duplicate-string': 'off', + 'sonarjs/no-unknown-property': [ + 'warn', + { + // For NextJs styled-jsx + ignore: ['jsx'], + }, + ], }, }, { files: ['*.{jsx,tsx}'], rules: { // relax complexity for react code - 'sonarjs/cognitive-complexity': ['error', 15], + 'sonarjs/cognitive-complexity': ['error', 16], // relax duplicate strings 'sonarjs/no-duplicate-string': 'off', }, @@ -41,11 +57,11 @@ module.exports = { files: ['*.js', '*.cjs'], parser: 'espree', parserOptions: { - ecmaVersion: 2020, + ecmaVersion: 'latest', }, rules: { - 'sonarjs/no-duplicate-string': 'off', 'sonarjs/no-all-duplicated-branches': 'off', + 'sonarjs/no-duplicate-string': 'off', }, }, ], diff --git a/packages/eslint-config-bases/src/bases/storybook.js b/packages/eslint-config-bases/src/bases/storybook.js index 913b3b85055..2f944bfd4a1 100644 --- a/packages/eslint-config-bases/src/bases/storybook.js +++ b/packages/eslint-config-bases/src/bases/storybook.js @@ -1,11 +1,9 @@ /** * Opinionated config base for projects using storybook. - * @see https://github.com/belgattitude/nextjs-monorepo-example/tree/main/packages/eslint-config-bases + * @see https://github.com/belgattitude/shared-dx/tree/main/packages/eslint-config-bases */ -const storybookPatterns = { - files: ['**/*.stories.{ts,tsx,mdx}'], -}; +const { filePatterns } = require('../config/file-patterns'); module.exports = { env: { @@ -15,10 +13,22 @@ module.exports = { }, overrides: [ { - // For performance run storybook/recommended on test files, not regular code - files: storybookPatterns.files, extends: ['plugin:storybook/recommended'], - rules: {}, + files: filePatterns.storybook, + rules: { + '@typescript-eslint/ban-ts-comment': 'off', + '@typescript-eslint/no-empty-function': 'off', + '@typescript-eslint/no-explicit-any': 'off', + '@typescript-eslint/no-non-null-assertion': 'off', + '@typescript-eslint/no-object-literal-type-assertion': 'off', + '@typescript-eslint/no-unsafe-assignment': 'off', + '@typescript-eslint/no-unsafe-member-access': 'off', + // Relax rules that are known to be slow and less useful in a test context + 'import-x/namespace': 'off', + 'import-x/no-duplicates': 'off', + // no checks for exports + 'import-x/no-unused-modules': 'warn', + }, }, ], }; diff --git a/packages/eslint-config-bases/src/bases/tailwind.js b/packages/eslint-config-bases/src/bases/tailwind.js index b4e91ef9121..5bb9147172b 100644 --- a/packages/eslint-config-bases/src/bases/tailwind.js +++ b/packages/eslint-config-bases/src/bases/tailwind.js @@ -1,6 +1,6 @@ /** * Opinionated config base for projects using react. - * @see https://github.com/belgattitude/nextjs-monorepo-example/tree/main/packages/eslint-config-bases + * @see https://github.com/belgattitude/shared-dx/tree/main/packages/eslint-config-bases */ const reactPatterns = { @@ -20,11 +20,11 @@ module.exports = { }, overrides: [ { - files: [...reactPatterns.files], extends: [ // @see https://github.com/francoismassart/eslint-plugin-tailwindcss, 'plugin:tailwindcss/recommended', ], + files: [...reactPatterns.files], rules: { 'tailwindcss/no-custom-classname': 'off', }, diff --git a/packages/eslint-config-bases/src/bases/typescript.js b/packages/eslint-config-bases/src/bases/typescript.js index 2969baf5d01..b866d0744e4 100644 --- a/packages/eslint-config-bases/src/bases/typescript.js +++ b/packages/eslint-config-bases/src/bases/typescript.js @@ -1,178 +1,254 @@ /** * Custom config base for projects using typescript / javascript. - * @see https://github.com/belgattitude/nextjs-monorepo-example/tree/main/packages/eslint-config-bases + * @see https://github.com/belgattitude/shared-dx/tree/main/packages/eslint-config-bases */ -// Allow to pass an env to check cycles, defaults to 2 (lint time+++) -// @see https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-cycle.md -// @see https://medium.com/@steven-lemon182/are-typescript-barrel-files-an-anti-pattern-72a713004250 -const checkCycles = process.env?.ESLINT_IMPORT_NO_CYCLE === 'true'; +const { filePatterns } = require('../config/file-patterns'); module.exports = { env: { - es6: true, browser: true, + es6: true, node: true, }, + extends: [ + 'eslint:recommended', + 'plugin:@typescript-eslint/recommended-type-checked', + 'plugin:@typescript-eslint/stylistic-type-checked', + 'plugin:unicorn/recommended', + ], + overrides: [ + { + files: [ + 'tailwind.config.ts', + 'tailwind.config.js', + '.eslintrc.cjs', + 'lint-staged.config.js', + ], + rules: { + '@typescript-eslint/no-require-imports': 'off', + 'unicorn/prefer-module': 'off', + }, + }, + { + files: filePatterns.test, + rules: { + '@typescript-eslint/require-await': 'off', + '@typescript-eslint/ban-ts-comment': 'off', + '@typescript-eslint/no-empty-function': 'off', + '@typescript-eslint/no-explicit-any': 'off', + '@typescript-eslint/no-non-null-assertion': 'off', + '@typescript-eslint/no-object-literal-type-assertion': 'off', + '@typescript-eslint/no-unsafe-assignment': 'off', + '@typescript-eslint/no-unsafe-member-access': 'off', + // https://github.com/jest-community/eslint-plugin-jest/blob/main/docs/rules/unbound-method.md + '@typescript-eslint/unbound-method': 'off', + 'require-await': 'off', + 'unicorn/no-null': 'off', + 'unicorn/no-useless-undefined': 'off', + 'unicorn/prefer-number-properties': 'off', + 'unicorn/error-message': 'off', + 'unicorn/consistent-function-scoping': 'off', + 'unicorn/no-await-expression-member': 'off', + 'unicorn/prefer-add-event-listener': 'off', + }, + }, + { + files: ['*.d.ts'], + rules: { + '@typescript-eslint/no-explicit-any': 'off', + '@typescript-eslint/no-import-type-side-effects': 'off', + '@typescript-eslint/no-empty-object-type': 'off', + }, + }, + { + extends: ['plugin:@typescript-eslint/disable-type-checked'], + files: ['*.mjs'], + parserOptions: { + ecmaVersion: 'latest', + sourceType: 'module', + }, + rules: { + '@typescript-eslint/require-await': 'off', + '@typescript-eslint/consistent-type-exports': 'off', + '@typescript-eslint/consistent-type-imports': 'off', + '@typescript-eslint/explicit-module-boundary-types': 'off', + '@typescript-eslint/no-unsafe-call': 'off', + '@typescript-eslint/no-unsafe-member-access': 'off', + '@typescript-eslint/no-unsafe-return': 'off', + }, + }, + { + extends: ['plugin:@typescript-eslint/disable-type-checked'], + // javascript commonjs + files: ['*.js', '*.cjs'], + parser: 'espree', + parserOptions: { + ecmaVersion: 'latest', + }, + rules: { + '@typescript-eslint/ban-ts-comment': 'off', + '@typescript-eslint/consistent-type-exports': 'off', + '@typescript-eslint/consistent-type-imports': 'off', + '@typescript-eslint/explicit-module-boundary-types': 'off', + '@typescript-eslint/no-explicit-any': 'off', + '@typescript-eslint/no-var-requires': 'off', + 'require-await': 'off', + 'unicorn/prefer-module': 'off', + }, + }, + ], parser: '@typescript-eslint/parser', parserOptions: { ecmaFeatures: { - jsx: true, globalReturn: false, + jsx: true, }, ecmaVersion: 'latest', - project: ['tsconfig.json'], - sourceType: 'module', - }, - settings: { - 'import/parsers': { - '@typescript-eslint/parser': ['.ts', '.tsx', '.mts'], - }, - 'import/resolver': { - typescript: {}, + parserOptions: { + projectService: true, + tsconfigRootDir: __dirname, }, + sourceType: 'module', }, - extends: [ - 'eslint:recommended', - 'plugin:import/recommended', - 'plugin:import/typescript', - 'plugin:@typescript-eslint/recommended-type-checked', - 'plugin:@typescript-eslint/stylistic-type-checked', - ], + plugins: ['unused-imports'], rules: { - // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-cycle.md - ...(checkCycles ? { 'import/no-cycle': 2 } : {}), - // will use 'import/no-duplicates'. - 'no-duplicate-imports': 'off', - 'spaced-comment': [ + '@typescript-eslint/require-await': 'off', + '@typescript-eslint/ban-ts-comment': [ 'error', - 'always', { - line: { - markers: ['/'], - exceptions: ['-', '+'], - }, - block: { - markers: ['!'], - exceptions: ['*'], - balanced: true, - }, + minimumDescriptionLength: 10, + 'ts-check': false, + 'ts-expect-error': 'allow-with-description', + 'ts-ignore': true, + 'ts-nocheck': true, }, ], - 'linebreak-style': ['error', 'unix'], - 'no-empty-function': 'off', - 'import/default': ['error'], - // Caution this rule is slow https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/namespace.md - 'import/namespace': 'off', // ['error'] If you want the extra check (typechecking will spot most issues already) - // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/no-duplicates.md - 'import/no-duplicates': [ - 'error', - { 'prefer-inline': true, considerQueryString: true }, - ], - 'import/no-named-as-default-member': ['warn'], - 'import/no-named-as-default': ['warn'], - 'import/order': [ + // https://www.totaltypescript.com/method-shorthand-syntax-considered-harmful + '@typescript-eslint/method-signature-style': ['error', 'property'], + // https://sindresorhus.com/blog/goodbye-nodejs-buffer + '@typescript-eslint/no-restricted-types': [ 'error', { - groups: [ - 'builtin', - 'external', - 'internal', - 'parent', - 'sibling', - 'index', - 'object', - ], - alphabetize: { order: 'asc', caseInsensitive: true }, + types: { + Buffer: { + message: 'Use Uint8Array instead.', + suggest: ['Uint8Array'], + }, + }, }, ], - '@typescript-eslint/ban-ts-comment': [ + '@typescript-eslint/consistent-type-definitions': 'off', + '@typescript-eslint/consistent-type-exports': 'error', + '@typescript-eslint/consistent-type-imports': [ 'error', - { - 'ts-expect-error': 'allow-with-description', - minimumDescriptionLength: 10, - 'ts-ignore': true, - 'ts-nocheck': true, - 'ts-check': false, - }, + { fixStyle: 'inline-type-imports', prefer: 'type-imports' }, ], - '@typescript-eslint/no-explicit-any': ['error', { ignoreRestArgs: false }], '@typescript-eslint/no-empty-function': [ 'error', { allow: ['private-constructors'] }, ], + '@typescript-eslint/no-explicit-any': ['error', { ignoreRestArgs: false }], + '@typescript-eslint/no-import-type-side-effects': 'error', + '@typescript-eslint/no-misused-promises': [ + 'error', + { + checksVoidReturn: { + arguments: false, + attributes: false, + }, + }, + ], + 'unused-imports/no-unused-imports': 'error', + // Typescript-elint will do + 'no-unused-vars': 'off', '@typescript-eslint/no-unused-vars': [ 'warn', - { argsIgnorePattern: '^_', ignoreRestSiblings: true }, - ], - '@typescript-eslint/consistent-type-exports': 'error', - '@typescript-eslint/consistent-type-imports': [ - 'error', - { prefer: 'type-imports', fixStyle: 'inline-type-imports' }, + { + argsIgnorePattern: '^_', + varsIgnorePattern: '^_', + }, ], - '@typescript-eslint/no-import-type-side-effects': 'error', - '@typescript-eslint/consistent-type-definitions': 'off', - '@typescript-eslint/unbound-method': ['error', { ignoreStatic: true }], '@typescript-eslint/restrict-template-expressions': [ 'error', { - allowNumber: true, - allowBoolean: true, allowAny: true, + allowBoolean: true, allowNever: true, allowNullish: true, + allowNumber: true, }, ], - '@typescript-eslint/no-misused-promises': [ + '@typescript-eslint/unbound-method': ['error', { ignoreStatic: true }], + 'linebreak-style': ['error', 'unix'], + 'no-constant-binary-expression': 'error', + 'no-duplicate-imports': 'off', // is handled via 'import-x/no-duplicates' + 'no-throw-literal': 'off', // is enabled via '@typescript-eslint/only-throw-error' + 'no-empty': [ 'error', { - checksVoidReturn: { - arguments: false, - attributes: false, - }, + allowEmptyCatch: true, }, ], - }, - overrides: [ - { - files: ['*.d.ts'], - rules: { - '@typescript-eslint/no-import-type-side-effects': 'off', - '@typescript-eslint/no-explicit-any': 'off', - }, - }, - { - files: ['*.mjs'], - extends: ['plugin:@typescript-eslint/disable-type-checked'], - parserOptions: { - ecmaVersion: 'latest', - sourceType: 'module', + 'no-empty-function': 'off', + // https://sindresorhus.com/blog/goodbye-nodejs-buffer + 'no-restricted-globals': [ + 'error', + { + message: 'Use Uint8Array instead.', + name: 'Buffer', }, - rules: { - '@typescript-eslint/explicit-module-boundary-types': 'off', - '@typescript-eslint/consistent-type-exports': 'off', - '@typescript-eslint/consistent-type-imports': 'off', - '@typescript-eslint/no-unsafe-call': 'off', - '@typescript-eslint/no-unsafe-member-access': 'off', - '@typescript-eslint/no-unsafe-return': 'off', + ], + // https://sindresorhus.com/blog/goodbye-nodejs-buffer + 'no-restricted-imports': [ + 'error', + { + message: 'Use Uint8Array instead.', + name: 'buffer', }, - }, - { - // javascript commonjs - files: ['*.js', '*.cjs'], - extends: ['plugin:@typescript-eslint/disable-type-checked'], - parser: 'espree', - parserOptions: { - ecmaVersion: 'latest', + { + message: 'Use Uint8Array instead.', + name: 'node:buffer', }, - rules: { - '@typescript-eslint/ban-ts-comment': 'off', - '@typescript-eslint/no-explicit-any': 'off', - '@typescript-eslint/no-var-requires': 'off', - '@typescript-eslint/explicit-module-boundary-types': 'off', - '@typescript-eslint/consistent-type-exports': 'off', - '@typescript-eslint/consistent-type-imports': 'off', + ], + 'require-await': 'off', + 'spaced-comment': [ + 'error', + 'always', + { + block: { + balanced: true, + exceptions: ['*'], + markers: ['!'], + }, + line: { + exceptions: ['-', '+'], + markers: ['/'], + }, }, + ], + 'sort-imports': 'off', + // Disabled as it makes too many assumptions - enable per-project + 'unicorn/no-static-only-class': 'off', + 'unicorn/no-array-for-each': 'off', + 'unicorn/switch-case-braces': 'off', + // Can potentially break your code + 'unicorn/prefer-spread': 'off', + 'unicorn/filename-case': 'off', + 'unicorn/prevent-abbreviations': 'off', + 'unicorn/catch-error-name': 'off', + 'unicorn/prefer-set-has': 'off', + 'unicorn/no-null': 'off', + // https://typescript-eslint.io/rules/default-param-last/ + 'default-param-last': 'off', + '@typescript-eslint/default-param-last': 'error', + }, + settings: { + 'import/parsers': { + '@typescript-eslint/parser': ['.ts', '.tsx', '.mts'], }, - ], + 'import/resolver': { + typescript: {}, + }, + }, }; diff --git a/packages/eslint-config-bases/src/config/file-patterns.js b/packages/eslint-config-bases/src/config/file-patterns.js new file mode 100644 index 00000000000..00fb8a90e2e --- /dev/null +++ b/packages/eslint-config-bases/src/config/file-patterns.js @@ -0,0 +1,17 @@ +const filePatterns = { + test: ['**/?(*.)+(test|spec).{js,jsx,ts,tsx}'], + anyCode: ['*.{js,jsx,mjs,jsx,tsx}'], + typescriptCodeWithJsx: ['*.{ts,tsx}'], + typescriptCodeWithoutJsx: ['*.ts'], + typescriptAndJsCodeWithoutJsx: ['*.{js,mjs,ts}'], + typescriptAndJsCodeWithJsx: ['*.{js,mjs,ts,jsx,tsx}'], + storybook: ['**/*.stories.{ts,tsx,mdx}'], + nonCodeFile: [ + '**/?(*.)+(test).{js,jsx,ts,tsx}', + '**/?(*.)+(bench).{js,jsx,ts,tsx}', + '*.stories.{js,ts,jsx,tsx}', + ], +}; +module.exports = { + filePatterns, +}; diff --git a/packages/eslint-config-bases/src/prettier.base.config.js b/packages/eslint-config-bases/src/prettier.base.config.js index 769eff8d6f9..340ffe21883 100644 --- a/packages/eslint-config-bases/src/prettier.base.config.js +++ b/packages/eslint-config-bases/src/prettier.base.config.js @@ -4,13 +4,13 @@ * @type {import('prettier').Config} */ module.exports = { - singleQuote: true, + bracketSameLine: false, + bracketSpacing: true, + endOfLine: 'lf', + overrides: [], semi: true, + singleQuote: true, tabWidth: 2, - bracketSpacing: true, trailingComma: 'es5', - bracketSameLine: false, useTabs: false, - endOfLine: 'lf', - overrides: [], }; diff --git a/yarn.lock b/yarn.lock index 3cae32fcf92..a57300e00ec 100644 --- a/yarn.lock +++ b/yarn.lock @@ -38,7 +38,7 @@ __metadata: languageName: node linkType: hard -"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.10.4, @babel/code-frame@npm:^7.18.6, @babel/code-frame@npm:^7.21.4, @babel/code-frame@npm:^7.25.7": +"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.10.4, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.18.6, @babel/code-frame@npm:^7.21.4, @babel/code-frame@npm:^7.24.7, @babel/code-frame@npm:^7.25.7": version: 7.25.7 resolution: "@babel/code-frame@npm:7.25.7" dependencies: @@ -48,13 +48,36 @@ __metadata: languageName: node linkType: hard -"@babel/compat-data@npm:^7.22.6, @babel/compat-data@npm:^7.25.7, @babel/compat-data@npm:^7.25.8": +"@babel/compat-data@npm:^7.22.6, @babel/compat-data@npm:^7.25.4, @babel/compat-data@npm:^7.25.7, @babel/compat-data@npm:^7.25.8": version: 7.25.8 resolution: "@babel/compat-data@npm:7.25.8" checksum: 10c0/8b81c17580e5fb4cbb6a3c52079f8c283fc59c0c6bd2fe14cfcf9c44b32d2eaab71b02c5633e2c679f5896f73f8ac4036ba2e67a4c806e8f428e4b11f526d7f4 languageName: node linkType: hard +"@babel/core@npm:7.25.2": + version: 7.25.2 + resolution: "@babel/core@npm:7.25.2" + dependencies: + "@ampproject/remapping": "npm:^2.2.0" + "@babel/code-frame": "npm:^7.24.7" + "@babel/generator": "npm:^7.25.0" + "@babel/helper-compilation-targets": "npm:^7.25.2" + "@babel/helper-module-transforms": "npm:^7.25.2" + "@babel/helpers": "npm:^7.25.0" + "@babel/parser": "npm:^7.25.0" + "@babel/template": "npm:^7.25.0" + "@babel/traverse": "npm:^7.25.2" + "@babel/types": "npm:^7.25.2" + 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: 10c0/a425fa40e73cb72b6464063a57c478bc2de9dbcc19c280f1b55a3d88b35d572e87e8594e7d7b4880331addb6faef641bbeb701b91b41b8806cd4deae5d74f401 + languageName: node + linkType: hard + "@babel/core@npm:7.25.8, @babel/core@npm:^7.18.5, @babel/core@npm:^7.18.9, @babel/core@npm:^7.21.3, @babel/core@npm:^7.25.2": version: 7.25.8 resolution: "@babel/core@npm:7.25.8" @@ -78,7 +101,21 @@ __metadata: languageName: node linkType: hard -"@babel/generator@npm:^7.25.7": +"@babel/eslint-parser@npm:7.25.1": + version: 7.25.1 + resolution: "@babel/eslint-parser@npm:7.25.1" + dependencies: + "@nicolo-ribaudo/eslint-scope-5-internals": "npm:5.1.1-v1" + eslint-visitor-keys: "npm:^2.1.0" + semver: "npm:^6.3.1" + peerDependencies: + "@babel/core": ^7.11.0 + eslint: ^7.5.0 || ^8.0.0 || ^9.0.0 + checksum: 10c0/9f98351b32edfced9e6308a80ad69af1210d9c9780f19339cb286d0c9be0a9afac80d1df3b3793112e720675ce5b927920b19454d0f48ddf8370d08ab62d0dc2 + languageName: node + linkType: hard + +"@babel/generator@npm:^7.25.0, @babel/generator@npm:^7.25.7": version: 7.25.7 resolution: "@babel/generator@npm:7.25.7" dependencies: @@ -109,7 +146,7 @@ __metadata: languageName: node linkType: hard -"@babel/helper-compilation-targets@npm:^7.22.6, @babel/helper-compilation-targets@npm:^7.25.7": +"@babel/helper-compilation-targets@npm:^7.22.6, @babel/helper-compilation-targets@npm:^7.25.2, @babel/helper-compilation-targets@npm:^7.25.7": version: 7.25.7 resolution: "@babel/helper-compilation-targets@npm:7.25.7" dependencies: @@ -122,7 +159,7 @@ __metadata: languageName: node linkType: hard -"@babel/helper-create-class-features-plugin@npm:^7.25.7": +"@babel/helper-create-class-features-plugin@npm:^7.24.7, @babel/helper-create-class-features-plugin@npm:^7.25.7": version: 7.25.7 resolution: "@babel/helper-create-class-features-plugin@npm:7.25.7" dependencies: @@ -187,7 +224,7 @@ __metadata: languageName: node linkType: hard -"@babel/helper-module-transforms@npm:^7.25.7": +"@babel/helper-module-transforms@npm:^7.25.2, @babel/helper-module-transforms@npm:^7.25.7": version: 7.25.7 resolution: "@babel/helper-module-transforms@npm:7.25.7" dependencies: @@ -210,7 +247,7 @@ __metadata: languageName: node linkType: hard -"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.18.6, @babel/helper-plugin-utils@npm:^7.22.5, @babel/helper-plugin-utils@npm:^7.25.7": +"@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.18.6, @babel/helper-plugin-utils@npm:^7.22.5, @babel/helper-plugin-utils@npm:^7.24.7, @babel/helper-plugin-utils@npm:^7.24.8, @babel/helper-plugin-utils@npm:^7.25.7, @babel/helper-plugin-utils@npm:^7.8.0, @babel/helper-plugin-utils@npm:^7.8.3": version: 7.25.7 resolution: "@babel/helper-plugin-utils@npm:7.25.7" checksum: 10c0/241f8cf3c5b7700e91cab7cfe5b432a3c710ae3cd5bb96dc554da536a6d25f5b9f000cc0c0917501ceb4f76ba92599ee3beb25e10adaf96be59f8df89a842faf @@ -270,14 +307,14 @@ __metadata: languageName: node linkType: hard -"@babel/helper-validator-identifier@npm:^7.25.7": +"@babel/helper-validator-identifier@npm:^7.24.7, @babel/helper-validator-identifier@npm:^7.25.7": version: 7.25.7 resolution: "@babel/helper-validator-identifier@npm:7.25.7" checksum: 10c0/07438e5bf01ab2882a15027fdf39ac3b0ba1b251774a5130917907014684e2f70fef8fd620137ca062c4c4eedc388508d2ea7a3a7d9936a32785f4fe116c68c0 languageName: node linkType: hard -"@babel/helper-validator-option@npm:^7.25.7": +"@babel/helper-validator-option@npm:^7.24.7, @babel/helper-validator-option@npm:^7.24.8, @babel/helper-validator-option@npm:^7.25.7": version: 7.25.7 resolution: "@babel/helper-validator-option@npm:7.25.7" checksum: 10c0/12ed418c8e3ed9ed44c8c80d823f4e42d399b5eb2e423adccb975e31a31a008cd3b5d8eab688b31f740caff4a1bb28fe06ea2fa7d635aee34cc0ad6995d50f0a @@ -295,7 +332,7 @@ __metadata: languageName: node linkType: hard -"@babel/helpers@npm:^7.25.7": +"@babel/helpers@npm:^7.25.0, @babel/helpers@npm:^7.25.7": version: 7.25.7 resolution: "@babel/helpers@npm:7.25.7" dependencies: @@ -317,7 +354,7 @@ __metadata: languageName: node linkType: hard -"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.16.8, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.25.4, @babel/parser@npm:^7.25.7, @babel/parser@npm:^7.25.8": +"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.16.8, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.25.0, @babel/parser@npm:^7.25.4, @babel/parser@npm:^7.25.7, @babel/parser@npm:^7.25.8": version: 7.25.8 resolution: "@babel/parser@npm:7.25.8" dependencies: @@ -328,7 +365,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:^7.25.7": +"@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:^7.25.3, @babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:7.25.7" dependencies: @@ -340,7 +377,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-bugfix-safari-class-field-initializer-scope@npm:^7.25.7": +"@babel/plugin-bugfix-safari-class-field-initializer-scope@npm:^7.25.0, @babel/plugin-bugfix-safari-class-field-initializer-scope@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-bugfix-safari-class-field-initializer-scope@npm:7.25.7" dependencies: @@ -351,7 +388,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:^7.25.7": +"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:^7.25.0, @babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:7.25.7" dependencies: @@ -362,7 +399,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:^7.25.7": +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:^7.24.7, @babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:7.25.7" dependencies: @@ -375,7 +412,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@npm:^7.25.7": +"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@npm:^7.25.0, @babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@npm:7.25.7" dependencies: @@ -387,6 +424,19 @@ __metadata: languageName: node linkType: hard +"@babel/plugin-proposal-decorators@npm:7.24.7": + version: 7.24.7 + resolution: "@babel/plugin-proposal-decorators@npm:7.24.7" + dependencies: + "@babel/helper-create-class-features-plugin": "npm:^7.24.7" + "@babel/helper-plugin-utils": "npm:^7.24.7" + "@babel/plugin-syntax-decorators": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/fb4e4711f90fed63aa4dfe34fc5f5a5d0af175725181678f462ee0df2b78a23ae83b9424403c6b957edbc07d2abc80f82f3b9f91baf568bdaf85e8196a9138d5 + languageName: node + linkType: hard + "@babel/plugin-proposal-private-property-in-object@npm:7.21.0-placeholder-for-preset-env.2": version: 7.21.0-placeholder-for-preset-env.2 resolution: "@babel/plugin-proposal-private-property-in-object@npm:7.21.0-placeholder-for-preset-env.2" @@ -396,7 +446,84 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-syntax-import-assertions@npm:^7.20.0, @babel/plugin-syntax-import-assertions@npm:^7.25.7": +"@babel/plugin-syntax-async-generators@npm:^7.8.4": + version: 7.8.4 + resolution: "@babel/plugin-syntax-async-generators@npm:7.8.4" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/d13efb282838481348c71073b6be6245b35d4f2f964a8f71e4174f235009f929ef7613df25f8d2338e2d3e44bc4265a9f8638c6aaa136d7a61fe95985f9725c8 + languageName: node + linkType: hard + +"@babel/plugin-syntax-class-properties@npm:^7.12.13": + version: 7.12.13 + resolution: "@babel/plugin-syntax-class-properties@npm:7.12.13" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.12.13" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/95168fa186416195280b1264fb18afcdcdcea780b3515537b766cb90de6ce042d42dd6a204a39002f794ae5845b02afb0fd4861a3308a861204a55e68310a120 + languageName: node + linkType: hard + +"@babel/plugin-syntax-class-static-block@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-syntax-class-static-block@npm:7.14.5" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.14.5" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/4464bf9115f4a2d02ce1454411baf9cfb665af1da53709c5c56953e5e2913745b0fcce82982a00463d6facbdd93445c691024e310b91431a1e2f024b158f6371 + languageName: node + linkType: hard + +"@babel/plugin-syntax-decorators@npm:^7.24.7": + version: 7.25.7 + resolution: "@babel/plugin-syntax-decorators@npm:7.25.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.25.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/7a2a5b6f1965b2cc883d534845923cb0f02c641de9a2150207289f5bef1776d1b5aa60e4d08917540c3692d48257c1a7b9b12389c31755f715d262f60e756f20 + languageName: node + linkType: hard + +"@babel/plugin-syntax-dynamic-import@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-dynamic-import@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/9c50927bf71adf63f60c75370e2335879402648f468d0172bc912e303c6a3876927d8eb35807331b57f415392732ed05ab9b42c68ac30a936813ab549e0246c5 + languageName: node + linkType: hard + +"@babel/plugin-syntax-export-namespace-from@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-export-namespace-from@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.3" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/5100d658ba563829700cd8d001ddc09f4c0187b1a13de300d729c5b3e87503f75a6d6c99c1794182f7f1a9f546ee009df4f15a0ce36376e206ed0012fa7cdc24 + languageName: node + linkType: hard + +"@babel/plugin-syntax-flow@npm:^7.25.7": + version: 7.25.7 + resolution: "@babel/plugin-syntax-flow@npm:7.25.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.25.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/36799e0af9cab97b688c46caef0fc596323dea7f8772abea229267be9a2c205db27b74bdac26e29ea4f9f116a0337fc40e7b96644a87f26572e6ba1723ed0bbb + languageName: node + linkType: hard + +"@babel/plugin-syntax-import-assertions@npm:^7.20.0, @babel/plugin-syntax-import-assertions@npm:^7.24.7, @babel/plugin-syntax-import-assertions@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-syntax-import-assertions@npm:7.25.7" dependencies: @@ -407,7 +534,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-syntax-import-attributes@npm:^7.25.7": +"@babel/plugin-syntax-import-attributes@npm:^7.24.7, @babel/plugin-syntax-import-attributes@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-syntax-import-attributes@npm:7.25.7" dependencies: @@ -418,6 +545,28 @@ __metadata: languageName: node linkType: hard +"@babel/plugin-syntax-import-meta@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-syntax-import-meta@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.10.4" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/0b08b5e4c3128523d8e346f8cfc86824f0da2697b1be12d71af50a31aff7a56ceb873ed28779121051475010c28d6146a6bfea8518b150b71eeb4e46190172ee + languageName: node + linkType: hard + +"@babel/plugin-syntax-json-strings@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-json-strings@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/e98f31b2ec406c57757d115aac81d0336e8434101c224edd9a5c93cefa53faf63eacc69f3138960c8b25401315af03df37f68d316c151c4b933136716ed6906e + languageName: node + linkType: hard + "@babel/plugin-syntax-jsx@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-syntax-jsx@npm:7.25.7" @@ -429,6 +578,94 @@ __metadata: languageName: node linkType: hard +"@babel/plugin-syntax-logical-assignment-operators@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-syntax-logical-assignment-operators@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.10.4" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/2594cfbe29411ad5bc2ad4058de7b2f6a8c5b86eda525a993959438615479e59c012c14aec979e538d60a584a1a799b60d1b8942c3b18468cb9d99b8fd34cd0b + languageName: node + linkType: hard + +"@babel/plugin-syntax-nullish-coalescing-operator@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-nullish-coalescing-operator@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/2024fbb1162899094cfc81152449b12bd0cc7053c6d4bda8ac2852545c87d0a851b1b72ed9560673cbf3ef6248257262c3c04aabf73117215c1b9cc7dd2542ce + languageName: node + linkType: hard + +"@babel/plugin-syntax-numeric-separator@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-syntax-numeric-separator@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.10.4" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/c55a82b3113480942c6aa2fcbe976ff9caa74b7b1109ff4369641dfbc88d1da348aceb3c31b6ed311c84d1e7c479440b961906c735d0ab494f688bf2fd5b9bb9 + languageName: node + linkType: hard + +"@babel/plugin-syntax-object-rest-spread@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-object-rest-spread@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/ee1eab52ea6437e3101a0a7018b0da698545230015fc8ab129d292980ec6dff94d265e9e90070e8ae5fed42f08f1622c14c94552c77bcac784b37f503a82ff26 + languageName: node + linkType: hard + +"@babel/plugin-syntax-optional-catch-binding@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-optional-catch-binding@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/27e2493ab67a8ea6d693af1287f7e9acec206d1213ff107a928e85e173741e1d594196f99fec50e9dde404b09164f39dec5864c767212154ffe1caa6af0bc5af + languageName: node + linkType: hard + +"@babel/plugin-syntax-optional-chaining@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-optional-chaining@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/46edddf2faa6ebf94147b8e8540dfc60a5ab718e2de4d01b2c0bdf250a4d642c2bd47cbcbb739febcb2bf75514dbcefad3c52208787994b8d0f8822490f55e81 + languageName: node + linkType: hard + +"@babel/plugin-syntax-private-property-in-object@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-syntax-private-property-in-object@npm:7.14.5" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.14.5" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/69822772561706c87f0a65bc92d0772cea74d6bc0911537904a676d5ff496a6d3ac4e05a166d8125fce4a16605bace141afc3611074e170a994e66e5397787f3 + languageName: node + linkType: hard + +"@babel/plugin-syntax-top-level-await@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-syntax-top-level-await@npm:7.14.5" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.14.5" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/14bf6e65d5bc1231ffa9def5f0ef30b19b51c218fcecaa78cd1bdf7939dfdf23f90336080b7f5196916368e399934ce5d581492d8292b46a2fb569d8b2da106f + languageName: node + linkType: hard + "@babel/plugin-syntax-typescript@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-syntax-typescript@npm:7.25.7" @@ -452,7 +689,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-arrow-functions@npm:^7.25.7": +"@babel/plugin-transform-arrow-functions@npm:^7.24.7, @babel/plugin-transform-arrow-functions@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-arrow-functions@npm:7.25.7" dependencies: @@ -463,7 +700,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-async-generator-functions@npm:^7.25.8": +"@babel/plugin-transform-async-generator-functions@npm:^7.25.4, @babel/plugin-transform-async-generator-functions@npm:^7.25.8": version: 7.25.8 resolution: "@babel/plugin-transform-async-generator-functions@npm:7.25.8" dependencies: @@ -476,7 +713,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-async-to-generator@npm:^7.25.7": +"@babel/plugin-transform-async-to-generator@npm:^7.24.7, @babel/plugin-transform-async-to-generator@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-async-to-generator@npm:7.25.7" dependencies: @@ -489,7 +726,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-block-scoped-functions@npm:^7.25.7": +"@babel/plugin-transform-block-scoped-functions@npm:^7.24.7, @babel/plugin-transform-block-scoped-functions@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-block-scoped-functions@npm:7.25.7" dependencies: @@ -500,7 +737,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-block-scoping@npm:^7.25.7": +"@babel/plugin-transform-block-scoping@npm:^7.25.0, @babel/plugin-transform-block-scoping@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-block-scoping@npm:7.25.7" dependencies: @@ -511,7 +748,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-class-properties@npm:^7.25.7": +"@babel/plugin-transform-class-properties@npm:^7.25.4, @babel/plugin-transform-class-properties@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-class-properties@npm:7.25.7" dependencies: @@ -523,7 +760,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-class-static-block@npm:^7.25.8": +"@babel/plugin-transform-class-static-block@npm:^7.24.7, @babel/plugin-transform-class-static-block@npm:^7.25.8": version: 7.25.8 resolution: "@babel/plugin-transform-class-static-block@npm:7.25.8" dependencies: @@ -535,7 +772,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-classes@npm:^7.25.7": +"@babel/plugin-transform-classes@npm:^7.25.4, @babel/plugin-transform-classes@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-classes@npm:7.25.7" dependencies: @@ -551,7 +788,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-computed-properties@npm:^7.25.7": +"@babel/plugin-transform-computed-properties@npm:^7.24.7, @babel/plugin-transform-computed-properties@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-computed-properties@npm:7.25.7" dependencies: @@ -563,7 +800,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-destructuring@npm:^7.25.7": +"@babel/plugin-transform-destructuring@npm:^7.24.8, @babel/plugin-transform-destructuring@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-destructuring@npm:7.25.7" dependencies: @@ -574,7 +811,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-dotall-regex@npm:^7.25.7": +"@babel/plugin-transform-dotall-regex@npm:^7.24.7, @babel/plugin-transform-dotall-regex@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-dotall-regex@npm:7.25.7" dependencies: @@ -586,7 +823,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-duplicate-keys@npm:^7.25.7": +"@babel/plugin-transform-duplicate-keys@npm:^7.24.7, @babel/plugin-transform-duplicate-keys@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-duplicate-keys@npm:7.25.7" dependencies: @@ -597,7 +834,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-duplicate-named-capturing-groups-regex@npm:^7.25.7": +"@babel/plugin-transform-duplicate-named-capturing-groups-regex@npm:^7.25.0, @babel/plugin-transform-duplicate-named-capturing-groups-regex@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-duplicate-named-capturing-groups-regex@npm:7.25.7" dependencies: @@ -609,7 +846,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-dynamic-import@npm:^7.25.8": +"@babel/plugin-transform-dynamic-import@npm:^7.24.7, @babel/plugin-transform-dynamic-import@npm:^7.25.8": version: 7.25.8 resolution: "@babel/plugin-transform-dynamic-import@npm:7.25.8" dependencies: @@ -620,7 +857,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-exponentiation-operator@npm:^7.25.7": +"@babel/plugin-transform-exponentiation-operator@npm:^7.24.7, @babel/plugin-transform-exponentiation-operator@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-exponentiation-operator@npm:7.25.7" dependencies: @@ -632,7 +869,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-export-namespace-from@npm:^7.25.8": +"@babel/plugin-transform-export-namespace-from@npm:^7.24.7, @babel/plugin-transform-export-namespace-from@npm:^7.25.8": version: 7.25.8 resolution: "@babel/plugin-transform-export-namespace-from@npm:7.25.8" dependencies: @@ -643,7 +880,19 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-for-of@npm:^7.25.7": +"@babel/plugin-transform-flow-strip-types@npm:^7.24.7": + version: 7.25.7 + resolution: "@babel/plugin-transform-flow-strip-types@npm:7.25.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.25.7" + "@babel/plugin-syntax-flow": "npm:^7.25.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/01afd2196c99ace415d58d939cc568a17e9925fcc4cbf8ff16a659053be3f7ce2b1fa254b5662aa36e6a3300620bcc81d9399d849288a012fe2dc337e4efa49e + languageName: node + linkType: hard + +"@babel/plugin-transform-for-of@npm:^7.24.7, @babel/plugin-transform-for-of@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-for-of@npm:7.25.7" dependencies: @@ -655,7 +904,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-function-name@npm:^7.25.7": +"@babel/plugin-transform-function-name@npm:^7.25.1, @babel/plugin-transform-function-name@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-function-name@npm:7.25.7" dependencies: @@ -668,7 +917,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-json-strings@npm:^7.25.8": +"@babel/plugin-transform-json-strings@npm:^7.24.7, @babel/plugin-transform-json-strings@npm:^7.25.8": version: 7.25.8 resolution: "@babel/plugin-transform-json-strings@npm:7.25.8" dependencies: @@ -679,7 +928,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-literals@npm:^7.25.7": +"@babel/plugin-transform-literals@npm:^7.25.2, @babel/plugin-transform-literals@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-literals@npm:7.25.7" dependencies: @@ -690,7 +939,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-logical-assignment-operators@npm:^7.25.8": +"@babel/plugin-transform-logical-assignment-operators@npm:^7.24.7, @babel/plugin-transform-logical-assignment-operators@npm:^7.25.8": version: 7.25.8 resolution: "@babel/plugin-transform-logical-assignment-operators@npm:7.25.8" dependencies: @@ -701,7 +950,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-member-expression-literals@npm:^7.25.7": +"@babel/plugin-transform-member-expression-literals@npm:^7.24.7, @babel/plugin-transform-member-expression-literals@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-member-expression-literals@npm:7.25.7" dependencies: @@ -712,7 +961,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-modules-amd@npm:^7.25.7": +"@babel/plugin-transform-modules-amd@npm:^7.24.7, @babel/plugin-transform-modules-amd@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-modules-amd@npm:7.25.7" dependencies: @@ -724,7 +973,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-modules-commonjs@npm:^7.25.7": +"@babel/plugin-transform-modules-commonjs@npm:^7.24.8, @babel/plugin-transform-modules-commonjs@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-modules-commonjs@npm:7.25.7" dependencies: @@ -737,7 +986,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-modules-systemjs@npm:^7.25.7": +"@babel/plugin-transform-modules-systemjs@npm:^7.25.0, @babel/plugin-transform-modules-systemjs@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-modules-systemjs@npm:7.25.7" dependencies: @@ -751,7 +1000,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-modules-umd@npm:^7.25.7": +"@babel/plugin-transform-modules-umd@npm:^7.24.7, @babel/plugin-transform-modules-umd@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-modules-umd@npm:7.25.7" dependencies: @@ -763,7 +1012,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-named-capturing-groups-regex@npm:^7.25.7": +"@babel/plugin-transform-named-capturing-groups-regex@npm:^7.24.7, @babel/plugin-transform-named-capturing-groups-regex@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-named-capturing-groups-regex@npm:7.25.7" dependencies: @@ -775,7 +1024,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-new-target@npm:^7.25.7": +"@babel/plugin-transform-new-target@npm:^7.24.7, @babel/plugin-transform-new-target@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-new-target@npm:7.25.7" dependencies: @@ -786,7 +1035,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-nullish-coalescing-operator@npm:^7.25.8": +"@babel/plugin-transform-nullish-coalescing-operator@npm:^7.24.7, @babel/plugin-transform-nullish-coalescing-operator@npm:^7.25.8": version: 7.25.8 resolution: "@babel/plugin-transform-nullish-coalescing-operator@npm:7.25.8" dependencies: @@ -797,7 +1046,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-numeric-separator@npm:^7.25.8": +"@babel/plugin-transform-numeric-separator@npm:^7.24.7, @babel/plugin-transform-numeric-separator@npm:^7.25.8": version: 7.25.8 resolution: "@babel/plugin-transform-numeric-separator@npm:7.25.8" dependencies: @@ -808,7 +1057,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-object-rest-spread@npm:^7.25.8": +"@babel/plugin-transform-object-rest-spread@npm:^7.24.7, @babel/plugin-transform-object-rest-spread@npm:^7.25.8": version: 7.25.8 resolution: "@babel/plugin-transform-object-rest-spread@npm:7.25.8" dependencies: @@ -821,7 +1070,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-object-super@npm:^7.25.7": +"@babel/plugin-transform-object-super@npm:^7.24.7, @babel/plugin-transform-object-super@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-object-super@npm:7.25.7" dependencies: @@ -833,7 +1082,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-optional-catch-binding@npm:^7.25.8": +"@babel/plugin-transform-optional-catch-binding@npm:^7.24.7, @babel/plugin-transform-optional-catch-binding@npm:^7.25.8": version: 7.25.8 resolution: "@babel/plugin-transform-optional-catch-binding@npm:7.25.8" dependencies: @@ -844,7 +1093,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-optional-chaining@npm:^7.25.7, @babel/plugin-transform-optional-chaining@npm:^7.25.8": +"@babel/plugin-transform-optional-chaining@npm:^7.24.8, @babel/plugin-transform-optional-chaining@npm:^7.25.7, @babel/plugin-transform-optional-chaining@npm:^7.25.8": version: 7.25.8 resolution: "@babel/plugin-transform-optional-chaining@npm:7.25.8" dependencies: @@ -856,7 +1105,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-parameters@npm:^7.25.7": +"@babel/plugin-transform-parameters@npm:^7.24.7, @babel/plugin-transform-parameters@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-parameters@npm:7.25.7" dependencies: @@ -867,7 +1116,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-private-methods@npm:^7.25.7": +"@babel/plugin-transform-private-methods@npm:^7.25.4, @babel/plugin-transform-private-methods@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-private-methods@npm:7.25.7" dependencies: @@ -879,7 +1128,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-private-property-in-object@npm:^7.25.8": +"@babel/plugin-transform-private-property-in-object@npm:^7.24.7, @babel/plugin-transform-private-property-in-object@npm:^7.25.8": version: 7.25.8 resolution: "@babel/plugin-transform-private-property-in-object@npm:7.25.8" dependencies: @@ -892,7 +1141,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-property-literals@npm:^7.25.7": +"@babel/plugin-transform-property-literals@npm:^7.24.7, @babel/plugin-transform-property-literals@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-property-literals@npm:7.25.7" dependencies: @@ -914,7 +1163,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-react-display-name@npm:^7.25.7": +"@babel/plugin-transform-react-display-name@npm:^7.24.7, @babel/plugin-transform-react-display-name@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-react-display-name@npm:7.25.7" dependencies: @@ -925,7 +1174,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-react-jsx-development@npm:^7.25.7": +"@babel/plugin-transform-react-jsx-development@npm:^7.24.7, @babel/plugin-transform-react-jsx-development@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-react-jsx-development@npm:7.25.7" dependencies: @@ -958,7 +1207,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-react-jsx@npm:^7.25.7": +"@babel/plugin-transform-react-jsx@npm:^7.24.7, @babel/plugin-transform-react-jsx@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-react-jsx@npm:7.25.7" dependencies: @@ -973,7 +1222,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-react-pure-annotations@npm:^7.25.7": +"@babel/plugin-transform-react-pure-annotations@npm:^7.24.7, @babel/plugin-transform-react-pure-annotations@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-react-pure-annotations@npm:7.25.7" dependencies: @@ -985,7 +1234,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-regenerator@npm:^7.25.7": +"@babel/plugin-transform-regenerator@npm:^7.24.7, @babel/plugin-transform-regenerator@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-regenerator@npm:7.25.7" dependencies: @@ -997,7 +1246,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-reserved-words@npm:^7.25.7": +"@babel/plugin-transform-reserved-words@npm:^7.24.7, @babel/plugin-transform-reserved-words@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-reserved-words@npm:7.25.7" dependencies: @@ -1008,7 +1257,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-shorthand-properties@npm:^7.25.7": +"@babel/plugin-transform-shorthand-properties@npm:^7.24.7, @babel/plugin-transform-shorthand-properties@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-shorthand-properties@npm:7.25.7" dependencies: @@ -1019,7 +1268,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-spread@npm:^7.25.7": +"@babel/plugin-transform-spread@npm:^7.24.7, @babel/plugin-transform-spread@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-spread@npm:7.25.7" dependencies: @@ -1031,7 +1280,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-sticky-regex@npm:^7.25.7": +"@babel/plugin-transform-sticky-regex@npm:^7.24.7, @babel/plugin-transform-sticky-regex@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-sticky-regex@npm:7.25.7" dependencies: @@ -1042,7 +1291,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-template-literals@npm:^7.25.7": +"@babel/plugin-transform-template-literals@npm:^7.24.7, @babel/plugin-transform-template-literals@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-template-literals@npm:7.25.7" dependencies: @@ -1053,7 +1302,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-typeof-symbol@npm:^7.25.7": +"@babel/plugin-transform-typeof-symbol@npm:^7.24.8, @babel/plugin-transform-typeof-symbol@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-typeof-symbol@npm:7.25.7" dependencies: @@ -1079,7 +1328,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-unicode-escapes@npm:^7.25.7": +"@babel/plugin-transform-unicode-escapes@npm:^7.24.7, @babel/plugin-transform-unicode-escapes@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-unicode-escapes@npm:7.25.7" dependencies: @@ -1090,7 +1339,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-unicode-property-regex@npm:^7.25.7": +"@babel/plugin-transform-unicode-property-regex@npm:^7.24.7, @babel/plugin-transform-unicode-property-regex@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-unicode-property-regex@npm:7.25.7" dependencies: @@ -1102,7 +1351,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-unicode-regex@npm:^7.25.7": +"@babel/plugin-transform-unicode-regex@npm:^7.24.7, @babel/plugin-transform-unicode-regex@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-unicode-regex@npm:7.25.7" dependencies: @@ -1114,7 +1363,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-transform-unicode-sets-regex@npm:^7.25.7": +"@babel/plugin-transform-unicode-sets-regex@npm:^7.25.4, @babel/plugin-transform-unicode-sets-regex@npm:^7.25.7": version: 7.25.7 resolution: "@babel/plugin-transform-unicode-sets-regex@npm:7.25.7" dependencies: @@ -1126,6 +1375,99 @@ __metadata: languageName: node linkType: hard +"@babel/preset-env@npm:7.25.4": + version: 7.25.4 + resolution: "@babel/preset-env@npm:7.25.4" + dependencies: + "@babel/compat-data": "npm:^7.25.4" + "@babel/helper-compilation-targets": "npm:^7.25.2" + "@babel/helper-plugin-utils": "npm:^7.24.8" + "@babel/helper-validator-option": "npm:^7.24.8" + "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "npm:^7.25.3" + "@babel/plugin-bugfix-safari-class-field-initializer-scope": "npm:^7.25.0" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "npm:^7.25.0" + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "npm:^7.24.7" + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "npm:^7.25.0" + "@babel/plugin-proposal-private-property-in-object": "npm:7.21.0-placeholder-for-preset-env.2" + "@babel/plugin-syntax-async-generators": "npm:^7.8.4" + "@babel/plugin-syntax-class-properties": "npm:^7.12.13" + "@babel/plugin-syntax-class-static-block": "npm:^7.14.5" + "@babel/plugin-syntax-dynamic-import": "npm:^7.8.3" + "@babel/plugin-syntax-export-namespace-from": "npm:^7.8.3" + "@babel/plugin-syntax-import-assertions": "npm:^7.24.7" + "@babel/plugin-syntax-import-attributes": "npm:^7.24.7" + "@babel/plugin-syntax-import-meta": "npm:^7.10.4" + "@babel/plugin-syntax-json-strings": "npm:^7.8.3" + "@babel/plugin-syntax-logical-assignment-operators": "npm:^7.10.4" + "@babel/plugin-syntax-nullish-coalescing-operator": "npm:^7.8.3" + "@babel/plugin-syntax-numeric-separator": "npm:^7.10.4" + "@babel/plugin-syntax-object-rest-spread": "npm:^7.8.3" + "@babel/plugin-syntax-optional-catch-binding": "npm:^7.8.3" + "@babel/plugin-syntax-optional-chaining": "npm:^7.8.3" + "@babel/plugin-syntax-private-property-in-object": "npm:^7.14.5" + "@babel/plugin-syntax-top-level-await": "npm:^7.14.5" + "@babel/plugin-syntax-unicode-sets-regex": "npm:^7.18.6" + "@babel/plugin-transform-arrow-functions": "npm:^7.24.7" + "@babel/plugin-transform-async-generator-functions": "npm:^7.25.4" + "@babel/plugin-transform-async-to-generator": "npm:^7.24.7" + "@babel/plugin-transform-block-scoped-functions": "npm:^7.24.7" + "@babel/plugin-transform-block-scoping": "npm:^7.25.0" + "@babel/plugin-transform-class-properties": "npm:^7.25.4" + "@babel/plugin-transform-class-static-block": "npm:^7.24.7" + "@babel/plugin-transform-classes": "npm:^7.25.4" + "@babel/plugin-transform-computed-properties": "npm:^7.24.7" + "@babel/plugin-transform-destructuring": "npm:^7.24.8" + "@babel/plugin-transform-dotall-regex": "npm:^7.24.7" + "@babel/plugin-transform-duplicate-keys": "npm:^7.24.7" + "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "npm:^7.25.0" + "@babel/plugin-transform-dynamic-import": "npm:^7.24.7" + "@babel/plugin-transform-exponentiation-operator": "npm:^7.24.7" + "@babel/plugin-transform-export-namespace-from": "npm:^7.24.7" + "@babel/plugin-transform-for-of": "npm:^7.24.7" + "@babel/plugin-transform-function-name": "npm:^7.25.1" + "@babel/plugin-transform-json-strings": "npm:^7.24.7" + "@babel/plugin-transform-literals": "npm:^7.25.2" + "@babel/plugin-transform-logical-assignment-operators": "npm:^7.24.7" + "@babel/plugin-transform-member-expression-literals": "npm:^7.24.7" + "@babel/plugin-transform-modules-amd": "npm:^7.24.7" + "@babel/plugin-transform-modules-commonjs": "npm:^7.24.8" + "@babel/plugin-transform-modules-systemjs": "npm:^7.25.0" + "@babel/plugin-transform-modules-umd": "npm:^7.24.7" + "@babel/plugin-transform-named-capturing-groups-regex": "npm:^7.24.7" + "@babel/plugin-transform-new-target": "npm:^7.24.7" + "@babel/plugin-transform-nullish-coalescing-operator": "npm:^7.24.7" + "@babel/plugin-transform-numeric-separator": "npm:^7.24.7" + "@babel/plugin-transform-object-rest-spread": "npm:^7.24.7" + "@babel/plugin-transform-object-super": "npm:^7.24.7" + "@babel/plugin-transform-optional-catch-binding": "npm:^7.24.7" + "@babel/plugin-transform-optional-chaining": "npm:^7.24.8" + "@babel/plugin-transform-parameters": "npm:^7.24.7" + "@babel/plugin-transform-private-methods": "npm:^7.25.4" + "@babel/plugin-transform-private-property-in-object": "npm:^7.24.7" + "@babel/plugin-transform-property-literals": "npm:^7.24.7" + "@babel/plugin-transform-regenerator": "npm:^7.24.7" + "@babel/plugin-transform-reserved-words": "npm:^7.24.7" + "@babel/plugin-transform-shorthand-properties": "npm:^7.24.7" + "@babel/plugin-transform-spread": "npm:^7.24.7" + "@babel/plugin-transform-sticky-regex": "npm:^7.24.7" + "@babel/plugin-transform-template-literals": "npm:^7.24.7" + "@babel/plugin-transform-typeof-symbol": "npm:^7.24.8" + "@babel/plugin-transform-unicode-escapes": "npm:^7.24.7" + "@babel/plugin-transform-unicode-property-regex": "npm:^7.24.7" + "@babel/plugin-transform-unicode-regex": "npm:^7.24.7" + "@babel/plugin-transform-unicode-sets-regex": "npm:^7.25.4" + "@babel/preset-modules": "npm:0.1.6-no-external-plugins" + babel-plugin-polyfill-corejs2: "npm:^0.4.10" + babel-plugin-polyfill-corejs3: "npm:^0.10.6" + babel-plugin-polyfill-regenerator: "npm:^0.6.1" + core-js-compat: "npm:^3.37.1" + semver: "npm:^6.3.1" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/ed210a1974b5a1e7f80a933c87253907ec869457cea900bc97892642fa9a690c47627a9bac08a7c9495deb992a2b15f308ffca2741e1876ba47172c96fa27e14 + languageName: node + linkType: hard + "@babel/preset-env@npm:^7.20.2": version: 7.25.8 resolution: "@babel/preset-env@npm:7.25.8" @@ -1204,6 +1546,19 @@ __metadata: languageName: node linkType: hard +"@babel/preset-flow@npm:7.24.7": + version: 7.24.7 + resolution: "@babel/preset-flow@npm:7.24.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.7" + "@babel/helper-validator-option": "npm:^7.24.7" + "@babel/plugin-transform-flow-strip-types": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/2a99333b9aac17033cefe17fb9d8c41b20c4f2cd3eab34f56c20d7c1c528cc1cca7e6d909de92fc700739a505b43166c9de62423f8a30b484161ebdf9474e217 + languageName: node + linkType: hard + "@babel/preset-modules@npm:0.1.6-no-external-plugins": version: 0.1.6-no-external-plugins resolution: "@babel/preset-modules@npm:0.1.6-no-external-plugins" @@ -1217,6 +1572,22 @@ __metadata: languageName: node linkType: hard +"@babel/preset-react@npm:7.24.7": + version: 7.24.7 + resolution: "@babel/preset-react@npm:7.24.7" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.24.7" + "@babel/helper-validator-option": "npm:^7.24.7" + "@babel/plugin-transform-react-display-name": "npm:^7.24.7" + "@babel/plugin-transform-react-jsx": "npm:^7.24.7" + "@babel/plugin-transform-react-jsx-development": "npm:^7.24.7" + "@babel/plugin-transform-react-pure-annotations": "npm:^7.24.7" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/9658b685b25cedaadd0b65c4e663fbc7f57394b5036ddb4c99b1a75b0711fb83292c1c625d605c05b73413fc7a6dc20e532627f6a39b6dc8d4e00415479b054c + languageName: node + linkType: hard + "@babel/preset-react@npm:^7.18.6": version: 7.25.7 resolution: "@babel/preset-react@npm:7.25.7" @@ -1257,7 +1628,7 @@ __metadata: languageName: node linkType: hard -"@babel/template@npm:^7.25.7": +"@babel/template@npm:^7.25.0, @babel/template@npm:^7.25.7": version: 7.25.7 resolution: "@babel/template@npm:7.25.7" dependencies: @@ -1268,7 +1639,7 @@ __metadata: languageName: node linkType: hard -"@babel/traverse@npm:^7.16.8, @babel/traverse@npm:^7.18.9, @babel/traverse@npm:^7.25.7": +"@babel/traverse@npm:^7.16.8, @babel/traverse@npm:^7.18.9, @babel/traverse@npm:^7.25.2, @babel/traverse@npm:^7.25.7": version: 7.25.7 resolution: "@babel/traverse@npm:7.25.7" dependencies: @@ -1283,7 +1654,7 @@ __metadata: languageName: node linkType: hard -"@babel/types@npm:^7.0.0, @babel/types@npm:^7.16.8, @babel/types@npm:^7.18.9, @babel/types@npm:^7.20.7, @babel/types@npm:^7.21.3, @babel/types@npm:^7.25.4, @babel/types@npm:^7.25.7, @babel/types@npm:^7.25.8, @babel/types@npm:^7.4.4": +"@babel/types@npm:^7.0.0, @babel/types@npm:^7.16.8, @babel/types@npm:^7.18.9, @babel/types@npm:^7.20.7, @babel/types@npm:^7.21.3, @babel/types@npm:^7.25.2, @babel/types@npm:^7.25.4, @babel/types@npm:^7.25.7, @babel/types@npm:^7.25.8, @babel/types@npm:^7.4.4": version: 7.25.8 resolution: "@babel/types@npm:7.25.8" dependencies: @@ -2918,7 +3289,7 @@ __metadata: languageName: node linkType: hard -"@eslint-community/regexpp@npm:^4.10.0, @eslint-community/regexpp@npm:^4.6.1, @eslint-community/regexpp@npm:^4.8.0, @eslint-community/regexpp@npm:^4.9.1": +"@eslint-community/regexpp@npm:4.11.1, @eslint-community/regexpp@npm:^4.10.0, @eslint-community/regexpp@npm:^4.6.1, @eslint-community/regexpp@npm:^4.8.0, @eslint-community/regexpp@npm:^4.9.1": version: 4.11.1 resolution: "@eslint-community/regexpp@npm:4.11.1" checksum: 10c0/fbcc1cb65ef5ed5b92faa8dc542e035269065e7ebcc0b39c81a4fe98ad35cfff20b3c8df048641de15a7757e07d69f85e2579c1a5055f993413ba18c055654f8 @@ -3690,6 +4061,38 @@ __metadata: languageName: node linkType: hard +"@jest/expect-utils@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/expect-utils@npm:29.7.0" + dependencies: + jest-get-type: "npm:^29.6.3" + checksum: 10c0/60b79d23a5358dc50d9510d726443316253ecda3a7fb8072e1526b3e0d3b14f066ee112db95699b7a43ad3f0b61b750c72e28a5a1cac361d7a2bb34747fa938a + languageName: node + linkType: hard + +"@jest/schemas@npm:^29.6.3": + version: 29.6.3 + resolution: "@jest/schemas@npm:29.6.3" + dependencies: + "@sinclair/typebox": "npm:^0.27.8" + checksum: 10c0/b329e89cd5f20b9278ae1233df74016ebf7b385e0d14b9f4c1ad18d096c4c19d1e687aa113a9c976b16ec07f021ae53dea811fb8c1248a50ac34fbe009fdf6be + languageName: node + linkType: hard + +"@jest/types@npm:^29.6.3": + version: 29.6.3 + resolution: "@jest/types@npm:29.6.3" + dependencies: + "@jest/schemas": "npm:^29.6.3" + "@types/istanbul-lib-coverage": "npm:^2.0.0" + "@types/istanbul-reports": "npm:^3.0.0" + "@types/node": "npm:*" + "@types/yargs": "npm:^17.0.8" + chalk: "npm:^4.0.0" + checksum: 10c0/ea4e493dd3fb47933b8ccab201ae573dcc451f951dc44ed2a86123cd8541b82aa9d2b1031caf9b1080d6673c517e2dcc25a44b2dc4f3fbc37bfc965d444888c0 + languageName: node + linkType: hard + "@joshwooding/vite-plugin-react-docgen-typescript@npm:0.3.0": version: 0.3.0 resolution: "@joshwooding/vite-plugin-react-docgen-typescript@npm:0.3.0" @@ -4042,6 +4445,15 @@ __metadata: languageName: node linkType: hard +"@nicolo-ribaudo/eslint-scope-5-internals@npm:5.1.1-v1": + version: 5.1.1-v1 + resolution: "@nicolo-ribaudo/eslint-scope-5-internals@npm:5.1.1-v1" + dependencies: + eslint-scope: "npm:5.1.1" + checksum: 10c0/75dda3e623b8ad7369ca22552d6beee337a814b2d0e8a32d23edd13fcb65c8082b32c5d86e436f3860dd7ade30d91d5db55d4ef9a08fb5a976c718ecc0d88a74 + languageName: node + linkType: hard + "@nodelib/fs.scandir@npm:2.1.5": version: 2.1.5 resolution: "@nodelib/fs.scandir@npm:2.1.5" @@ -5372,6 +5784,13 @@ __metadata: languageName: node linkType: hard +"@sinclair/typebox@npm:^0.27.8": + version: 0.27.8 + resolution: "@sinclair/typebox@npm:0.27.8" + checksum: 10c0/ef6351ae073c45c2ac89494dbb3e1f87cc60a93ce4cde797b782812b6f97da0d620ae81973f104b43c9b7eaa789ad20ba4f6a1359f1cc62f63729a55a7d22d4e + languageName: node + linkType: hard + "@sindresorhus/merge-streams@npm:^2.1.0": version: 2.3.0 resolution: "@sindresorhus/merge-streams@npm:2.3.0" @@ -6569,6 +6988,41 @@ __metadata: languageName: node linkType: hard +"@types/istanbul-lib-coverage@npm:*, @types/istanbul-lib-coverage@npm:^2.0.0": + version: 2.0.6 + resolution: "@types/istanbul-lib-coverage@npm:2.0.6" + checksum: 10c0/3948088654f3eeb45363f1db158354fb013b362dba2a5c2c18c559484d5eb9f6fd85b23d66c0a7c2fcfab7308d0a585b14dadaca6cc8bf89ebfdc7f8f5102fb7 + languageName: node + linkType: hard + +"@types/istanbul-lib-report@npm:*": + version: 3.0.3 + resolution: "@types/istanbul-lib-report@npm:3.0.3" + dependencies: + "@types/istanbul-lib-coverage": "npm:*" + checksum: 10c0/247e477bbc1a77248f3c6de5dadaae85ff86ac2d76c5fc6ab1776f54512a745ff2a5f791d22b942e3990ddbd40f3ef5289317c4fca5741bedfaa4f01df89051c + languageName: node + linkType: hard + +"@types/istanbul-reports@npm:^3.0.0": + version: 3.0.4 + resolution: "@types/istanbul-reports@npm:3.0.4" + dependencies: + "@types/istanbul-lib-report": "npm:*" + checksum: 10c0/1647fd402aced5b6edac87274af14ebd6b3a85447ef9ad11853a70fd92a98d35f81a5d3ea9fcb5dbb5834e800c6e35b64475e33fcae6bfa9acc70d61497c54ee + languageName: node + linkType: hard + +"@types/jest@npm:29.5.13": + version: 29.5.13 + resolution: "@types/jest@npm:29.5.13" + dependencies: + expect: "npm:^29.0.0" + pretty-format: "npm:^29.0.0" + checksum: 10c0/9c31af0b155387b9860908830de63c6b79011d7c87c8b61b39da124e26e55423dd51b006749aafe4f0ef3a065016619a1f93ef4b055157d43727f448e67824b7 + languageName: node + linkType: hard + "@types/json-schema@npm:^7.0.9": version: 7.0.15 resolution: "@types/json-schema@npm:7.0.15" @@ -6670,6 +7124,13 @@ __metadata: languageName: node linkType: hard +"@types/normalize-package-data@npm:^2.4.0": + version: 2.4.4 + resolution: "@types/normalize-package-data@npm:2.4.4" + checksum: 10c0/aef7bb9b015883d6f4119c423dd28c4bdc17b0e8a0ccf112c78b4fe0e91fbc4af7c6204b04bba0e199a57d2f3fbbd5b4a14bf8739bf9d2a39b2a0aad545e0f86 + languageName: node + linkType: hard + "@types/parse-json@npm:^4.0.0": version: 4.0.2 resolution: "@types/parse-json@npm:4.0.2" @@ -6824,6 +7285,13 @@ __metadata: languageName: node linkType: hard +"@types/stack-utils@npm:^2.0.0": + version: 2.0.3 + resolution: "@types/stack-utils@npm:2.0.3" + checksum: 10c0/1f4658385ae936330581bcb8aa3a066df03867d90281cdf89cc356d404bd6579be0f11902304e1f775d92df22c6dd761d4451c804b0a4fba973e06211e9bd77c + languageName: node + linkType: hard + "@types/supports-color@npm:^8.0.0": version: 8.1.3 resolution: "@types/supports-color@npm:8.1.3" @@ -6868,53 +7336,69 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/eslint-plugin@npm:^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0": - version: 8.10.0 - resolution: "@typescript-eslint/eslint-plugin@npm:8.10.0" +"@types/yargs-parser@npm:*": + version: 21.0.3 + resolution: "@types/yargs-parser@npm:21.0.3" + checksum: 10c0/e71c3bd9d0b73ca82e10bee2064c384ab70f61034bbfb78e74f5206283fc16a6d85267b606b5c22cb2a3338373586786fed595b2009825d6a9115afba36560a0 + languageName: node + linkType: hard + +"@types/yargs@npm:^17.0.8": + version: 17.0.33 + resolution: "@types/yargs@npm:17.0.33" + dependencies: + "@types/yargs-parser": "npm:*" + checksum: 10c0/d16937d7ac30dff697801c3d6f235be2166df42e4a88bf730fa6dc09201de3727c0a9500c59a672122313341de5f24e45ee0ff579c08ce91928e519090b7906b + languageName: node + linkType: hard + +"@typescript-eslint/eslint-plugin@npm:7.16.1": + version: 7.16.1 + resolution: "@typescript-eslint/eslint-plugin@npm:7.16.1" dependencies: "@eslint-community/regexpp": "npm:^4.10.0" - "@typescript-eslint/scope-manager": "npm:8.10.0" - "@typescript-eslint/type-utils": "npm:8.10.0" - "@typescript-eslint/utils": "npm:8.10.0" - "@typescript-eslint/visitor-keys": "npm:8.10.0" + "@typescript-eslint/scope-manager": "npm:7.16.1" + "@typescript-eslint/type-utils": "npm:7.16.1" + "@typescript-eslint/utils": "npm:7.16.1" + "@typescript-eslint/visitor-keys": "npm:7.16.1" 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": ^8.0.0 || ^8.0.0-alpha.0 - eslint: ^8.57.0 || ^9.0.0 + "@typescript-eslint/parser": ^7.0.0 + eslint: ^8.56.0 peerDependenciesMeta: typescript: optional: true - checksum: 10c0/4b77ba9c865a2a14e238cd330b5901f0274b8ce1c13324fccd0339b8eea82a50a4709394c903fd8cd5bd0d3aebace0761ff9a4a19fa20b00bb61349b7671c035 + checksum: 10c0/3d0d8fa7e00dff4deb70f41432030e4e0e0bc1e4415ae7be969b77bb216fd0797507ed852baaf6d12f6ae022f69ac6356201f6b4129ddfd57b232bfc6715ac8a languageName: node linkType: hard -"@typescript-eslint/eslint-plugin@npm:^7.17.0": - version: 7.18.0 - resolution: "@typescript-eslint/eslint-plugin@npm:7.18.0" +"@typescript-eslint/eslint-plugin@npm:^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0, @typescript-eslint/eslint-plugin@npm:^8.10.0": + version: 8.10.0 + resolution: "@typescript-eslint/eslint-plugin@npm:8.10.0" dependencies: "@eslint-community/regexpp": "npm:^4.10.0" - "@typescript-eslint/scope-manager": "npm:7.18.0" - "@typescript-eslint/type-utils": "npm:7.18.0" - "@typescript-eslint/utils": "npm:7.18.0" - "@typescript-eslint/visitor-keys": "npm:7.18.0" + "@typescript-eslint/scope-manager": "npm:8.10.0" + "@typescript-eslint/type-utils": "npm:8.10.0" + "@typescript-eslint/utils": "npm:8.10.0" + "@typescript-eslint/visitor-keys": "npm:8.10.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": ^7.0.0 - eslint: ^8.56.0 + "@typescript-eslint/parser": ^8.0.0 || ^8.0.0-alpha.0 + eslint: ^8.57.0 || ^9.0.0 peerDependenciesMeta: typescript: optional: true - checksum: 10c0/2b37948fa1b0dab77138909dabef242a4d49ab93e4019d4ef930626f0a7d96b03e696cd027fa0087881c20e73be7be77c942606b4a76fa599e6b37f6985304c3 + checksum: 10c0/4b77ba9c865a2a14e238cd330b5901f0274b8ce1c13324fccd0339b8eea82a50a4709394c903fd8cd5bd0d3aebace0761ff9a4a19fa20b00bb61349b7671c035 languageName: node linkType: hard -"@typescript-eslint/parser@npm:^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0": +"@typescript-eslint/parser@npm:^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0, @typescript-eslint/parser@npm:^8.10.0": version: 8.10.0 resolution: "@typescript-eslint/parser@npm:8.10.0" dependencies: @@ -6932,24 +7416,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/parser@npm:^7.17.0": - version: 7.18.0 - resolution: "@typescript-eslint/parser@npm:7.18.0" - dependencies: - "@typescript-eslint/scope-manager": "npm:7.18.0" - "@typescript-eslint/types": "npm:7.18.0" - "@typescript-eslint/typescript-estree": "npm:7.18.0" - "@typescript-eslint/visitor-keys": "npm:7.18.0" - debug: "npm:^4.3.4" - peerDependencies: - eslint: ^8.56.0 - peerDependenciesMeta: - typescript: - optional: true - checksum: 10c0/370e73fca4278091bc1b657f85e7d74cd52b24257ea20c927a8e17546107ce04fbf313fec99aed0cc2a145ddbae1d3b12e9cc2c1320117636dc1281bcfd08059 - languageName: node - linkType: hard - "@typescript-eslint/scope-manager@npm:5.62.0": version: 5.62.0 resolution: "@typescript-eslint/scope-manager@npm:5.62.0" @@ -6960,13 +7426,13 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/scope-manager@npm:7.18.0": - version: 7.18.0 - resolution: "@typescript-eslint/scope-manager@npm:7.18.0" +"@typescript-eslint/scope-manager@npm:7.16.1": + version: 7.16.1 + resolution: "@typescript-eslint/scope-manager@npm:7.16.1" dependencies: - "@typescript-eslint/types": "npm:7.18.0" - "@typescript-eslint/visitor-keys": "npm:7.18.0" - checksum: 10c0/038cd58c2271de146b3a594afe2c99290034033326d57ff1f902976022c8b0138ffd3cb893ae439ae41003b5e4bcc00cabf6b244ce40e8668f9412cc96d97b8e + "@typescript-eslint/types": "npm:7.16.1" + "@typescript-eslint/visitor-keys": "npm:7.16.1" + checksum: 10c0/5105edd927fd45097eb9c16f235ba48c2d9f2f3a3948fbdc4ffdc9a9fc5f130fa46c32d9188fe4bb303bd99508d7f0aad342c2ec0d9ad887aa1416dd54edeb66 languageName: node linkType: hard @@ -6980,12 +7446,12 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/type-utils@npm:7.18.0": - version: 7.18.0 - resolution: "@typescript-eslint/type-utils@npm:7.18.0" +"@typescript-eslint/type-utils@npm:7.16.1": + version: 7.16.1 + resolution: "@typescript-eslint/type-utils@npm:7.16.1" dependencies: - "@typescript-eslint/typescript-estree": "npm:7.18.0" - "@typescript-eslint/utils": "npm:7.18.0" + "@typescript-eslint/typescript-estree": "npm:7.16.1" + "@typescript-eslint/utils": "npm:7.16.1" debug: "npm:^4.3.4" ts-api-utils: "npm:^1.3.0" peerDependencies: @@ -6993,7 +7459,7 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: 10c0/ad92a38007be620f3f7036f10e234abdc2fdc518787b5a7227e55fd12896dacf56e8b34578723fbf9bea8128df2510ba8eb6739439a3879eda9519476d5783fd + checksum: 10c0/7551566185ca372dbc3d53b8ab047ea7e2c50b25d9a9293d5163498fb87c4b16a585d267a4a99df57d70326754acf168aad726ee5e8b9c0d4e59f1b8653d951d languageName: node linkType: hard @@ -7019,14 +7485,14 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/types@npm:7.18.0": - version: 7.18.0 - resolution: "@typescript-eslint/types@npm:7.18.0" - checksum: 10c0/eb7371ac55ca77db8e59ba0310b41a74523f17e06f485a0ef819491bc3dd8909bb930120ff7d30aaf54e888167e0005aa1337011f3663dc90fb19203ce478054 +"@typescript-eslint/types@npm:7.16.1": + version: 7.16.1 + resolution: "@typescript-eslint/types@npm:7.16.1" + checksum: 10c0/5ab7bfcac81adb01672057270d0273da98dcf50d2add5819b4787b5973f6624d11ad33d6fb495f80fe628fefa3a5ed319b433ed57e9121e444cfc002e1e48625 languageName: node linkType: hard -"@typescript-eslint/types@npm:8.10.0": +"@typescript-eslint/types@npm:8.10.0, @typescript-eslint/types@npm:^8.9.0": version: 8.10.0 resolution: "@typescript-eslint/types@npm:8.10.0" checksum: 10c0/f27dd43c8383e02e914a254257627e393dfc0f08b0f74a253c106813ae361f090271b2f3f2ef588fa3ca1329897d873da595bb5641fe8e3091b25eddca24b5d2 @@ -7051,12 +7517,12 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:7.18.0": - version: 7.18.0 - resolution: "@typescript-eslint/typescript-estree@npm:7.18.0" +"@typescript-eslint/typescript-estree@npm:7.16.1": + version: 7.16.1 + resolution: "@typescript-eslint/typescript-estree@npm:7.16.1" dependencies: - "@typescript-eslint/types": "npm:7.18.0" - "@typescript-eslint/visitor-keys": "npm:7.18.0" + "@typescript-eslint/types": "npm:7.16.1" + "@typescript-eslint/visitor-keys": "npm:7.16.1" debug: "npm:^4.3.4" globby: "npm:^11.1.0" is-glob: "npm:^4.0.3" @@ -7066,11 +7532,11 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: 10c0/0c7f109a2e460ec8a1524339479cf78ff17814d23c83aa5112c77fb345e87b3642616291908dcddea1e671da63686403dfb712e4a4435104f92abdfddf9aba81 + checksum: 10c0/979269e9d42d75c0e49f47c7bb5e9554bd29041339c6fecfe5c76726699bce25132bef8b54210769e4f0abb858a278923340d3e4decc6551406e2c5ec065fe04 languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:8.10.0": +"@typescript-eslint/typescript-estree@npm:8.10.0, @typescript-eslint/typescript-estree@npm:^8.10.0": version: 8.10.0 resolution: "@typescript-eslint/typescript-estree@npm:8.10.0" dependencies: @@ -7089,21 +7555,21 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/utils@npm:7.18.0": - version: 7.18.0 - resolution: "@typescript-eslint/utils@npm:7.18.0" +"@typescript-eslint/utils@npm:7.16.1": + version: 7.16.1 + resolution: "@typescript-eslint/utils@npm:7.16.1" dependencies: "@eslint-community/eslint-utils": "npm:^4.4.0" - "@typescript-eslint/scope-manager": "npm:7.18.0" - "@typescript-eslint/types": "npm:7.18.0" - "@typescript-eslint/typescript-estree": "npm:7.18.0" + "@typescript-eslint/scope-manager": "npm:7.16.1" + "@typescript-eslint/types": "npm:7.16.1" + "@typescript-eslint/typescript-estree": "npm:7.16.1" peerDependencies: eslint: ^8.56.0 - checksum: 10c0/a25a6d50eb45c514469a01ff01f215115a4725fb18401055a847ddf20d1b681409c4027f349033a95c4ff7138d28c3b0a70253dfe8262eb732df4b87c547bd1e + checksum: 10c0/22fbf17eec064d1e67f2a4bf512f62d5369a22fe11226f043cbeb0fe79cd18006b04f933e5025f4e5c2f82047248dac52cc97199e495ad17d564084210099d17 languageName: node linkType: hard -"@typescript-eslint/utils@npm:8.10.0, @typescript-eslint/utils@npm:^6.0.0 || ^7.0.0 || ^8.0.0, @typescript-eslint/utils@npm:^8.3.0": +"@typescript-eslint/utils@npm:8.10.0, @typescript-eslint/utils@npm:^6.0.0 || ^7.0.0 || ^8.0.0, @typescript-eslint/utils@npm:^8.1.0, @typescript-eslint/utils@npm:^8.10.0, @typescript-eslint/utils@npm:^8.3.0, @typescript-eslint/utils@npm:^8.9.0": version: 8.10.0 resolution: "@typescript-eslint/utils@npm:8.10.0" dependencies: @@ -7145,13 +7611,13 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/visitor-keys@npm:7.18.0": - version: 7.18.0 - resolution: "@typescript-eslint/visitor-keys@npm:7.18.0" +"@typescript-eslint/visitor-keys@npm:7.16.1": + version: 7.16.1 + resolution: "@typescript-eslint/visitor-keys@npm:7.16.1" dependencies: - "@typescript-eslint/types": "npm:7.18.0" + "@typescript-eslint/types": "npm:7.16.1" eslint-visitor-keys: "npm:^3.4.3" - checksum: 10c0/538b645f8ff1d9debf264865c69a317074eaff0255e63d7407046176b0f6a6beba34a6c51d511f12444bae12a98c69891eb6f403c9f54c6c2e2849d1c1cb73c0 + checksum: 10c0/060bc6770ba3ea271c6a844501f4dfee1b8842a0c405e60d2a258466b1b4e66086234a3fddac8745bb1a39a89eab29afeaf16133ad925bd426ac8fdb13fb7f94 languageName: node linkType: hard @@ -7200,9 +7666,9 @@ __metadata: languageName: node linkType: hard -"@vitejs/plugin-react@npm:4.3.2": - version: 4.3.2 - resolution: "@vitejs/plugin-react@npm:4.3.2" +"@vitejs/plugin-react@npm:4.3.3": + version: 4.3.3 + resolution: "@vitejs/plugin-react@npm:4.3.3" dependencies: "@babel/core": "npm:^7.25.2" "@babel/plugin-transform-react-jsx-self": "npm:^7.24.7" @@ -7211,7 +7677,7 @@ __metadata: react-refresh: "npm:^0.14.2" peerDependencies: vite: ^4.2.0 || ^5.0.0 - checksum: 10c0/945f357175bea45031dc98d379e63cd34cd60a51b3dd394b66138696625ac8b55bc913a23481f78bbe15ca558c21ea4699b936abbd8242003d7c0ad51d298727 + checksum: 10c0/b370c25fb47bb96f0cc51f3aadbbcfce54e40f95a4de67cf932e5ec526f139648da703725c6ea2c71a1b525eb3dd6e3e8ff877da143627cd2575de5ec4f00aa3 languageName: node linkType: hard @@ -7480,7 +7946,7 @@ __metadata: "@types/node": "npm:22.7.7" "@types/react": "npm:18.3.11" "@types/react-dom": "npm:18.3.1" - "@vitejs/plugin-react": "npm:4.3.2" + "@vitejs/plugin-react": "npm:4.3.3" "@vitest/coverage-v8": "npm:2.1.3" "@vitest/ui": "npm:2.1.3" "@your-org/eslint-config-bases": "workspace:^" @@ -7552,49 +8018,61 @@ __metadata: "@rushstack/eslint-patch": "npm:^1.10.4" "@tanstack/eslint-plugin-query": "npm:^5.59.7" "@testing-library/dom": "npm:10.4.0" + "@testing-library/jest-dom": "npm:6.6.2" "@testing-library/react": "npm:16.0.1" + "@types/jest": "npm:29.5.13" "@types/node": "npm:22.7.7" "@types/react": "npm:18.3.11" "@types/react-dom": "npm:18.3.1" - "@typescript-eslint/eslint-plugin": "npm:^7.17.0" - "@typescript-eslint/parser": "npm:^7.17.0" + "@typescript-eslint/eslint-plugin": "npm:^8.10.0" + "@typescript-eslint/parser": "npm:^8.10.0" + "@typescript-eslint/typescript-estree": "npm:^8.10.0" + "@typescript-eslint/utils": "npm:^8.10.0" es-check: "npm:7.2.1" eslint: "npm:8.57.1" eslint-config-prettier: "npm:^9.1.0" eslint-import-resolver-typescript: "npm:^3.6.3" - eslint-plugin-import: "npm:^2.31.0" + eslint-plugin-import-x: "npm:^4.3.1" eslint-plugin-jest: "npm:^28.8.3" eslint-plugin-jest-formatting: "npm:^3.1.0" eslint-plugin-jsx-a11y: "npm:^6.10.0" eslint-plugin-mdx: "npm:3.1.5" - eslint-plugin-playwright: "npm:^1.7.0" + eslint-plugin-perfectionist: "npm:^3.9.1" + eslint-plugin-playwright: "npm:^1.8.0" eslint-plugin-prettier: "npm:^5.2.1" eslint-plugin-react: "npm:^7.37.1" - eslint-plugin-react-hooks: "npm:^4.6.2 || 5.0.0-canary-7118f5dd7-20230705" + eslint-plugin-react-hooks: "npm:^4.6.2 || ^5.0.0 || 5.0.0-canary-7118f5dd7-20230705" eslint-plugin-regexp: "npm:^2.6.0" - eslint-plugin-sonarjs: "npm:^0.25.1" + eslint-plugin-simple-import-sort: "npm:^12.1.1" + eslint-plugin-sonarjs: "npm:^2.0.4" eslint-plugin-storybook: "npm:^0.9.0" eslint-plugin-tailwindcss: "npm:3.17.5" eslint-plugin-testing-library: "npm:^6.4.0" + eslint-plugin-unicorn: "npm:^56.0.0" + eslint-plugin-unused-imports: "npm:^4.1.4" graphql: "npm:16.9.0" + prettier: "npm:3.3.3" react: "npm:18.3.1" react-dom: "npm:18.3.1" rimraf: "npm:6.0.1" tailwindcss: "npm:3.4.14" typescript: "npm:5.6.3" peerDependencies: - "@graphql-eslint/eslint-plugin": ^3.14.3 - eslint: ^8.55.0 - eslint-plugin-mdx: ^2.2.0 || ^3.0.0 - eslint-plugin-tailwindcss: ^3.13.0 - graphql: ^16.8.0 - prettier: ^3.0.0 - react: ^18.2.0 - react-dom: ^18.2.0 - typescript: ^5.1.6 + "@graphql-eslint/eslint-plugin": ^3.20.1 + "@testing-library/dom": ^10.4.0 + eslint: ^8.57.1 + eslint-plugin-mdx: ^3.1.5 + eslint-plugin-tailwindcss: ^3.17.4 + graphql: ^16.9.0 + prettier: ">=3.2.0 <5.0.0" + react: ">=18.2.0" + react-dom: ">=18.2.0" + typescript: ^5.3.1 peerDependenciesMeta: "@graphql-eslint/eslint-plugin": optional: true + "@testing-library/dom": + optional: true eslint-plugin-mdx: optional: true eslint-plugin-tailwindcss: @@ -8406,6 +8884,13 @@ __metadata: languageName: node linkType: hard +"builtin-modules@npm:3.3.0, builtin-modules@npm:^3.3.0": + version: 3.3.0 + resolution: "builtin-modules@npm:3.3.0" + checksum: 10c0/2cb3448b4f7306dc853632a4fcddc95e8d4e4b9868c139400027b71938fc6806d4ff44007deffb362ac85724bd40c2c6452fb6a0aa4531650eeddb98d8e5ee8a + languageName: node + linkType: hard + "bundle-require@npm:^5.0.0": version: 5.0.0 resolution: "bundle-require@npm:5.0.0" @@ -8701,6 +9186,15 @@ __metadata: languageName: node linkType: hard +"clean-regexp@npm:^1.0.0": + version: 1.0.0 + resolution: "clean-regexp@npm:1.0.0" + dependencies: + escape-string-regexp: "npm:^1.0.5" + checksum: 10c0/fd9c7446551b8fc536f95e8a286d431017cd4ba1ec2e53997ec9159385e9c317672f6dfc4d49fdb97449fdb53b0bacd0a8bab9343b8fdd2e46c7ddf6173d0db7 + languageName: node + linkType: hard + "clean-stack@npm:^2.0.0": version: 2.2.0 resolution: "clean-stack@npm:2.2.0" @@ -9040,7 +9534,7 @@ __metadata: languageName: node linkType: hard -"core-js-compat@npm:^3.38.0, core-js-compat@npm:^3.38.1": +"core-js-compat@npm:^3.37.1, core-js-compat@npm:^3.38.0, core-js-compat@npm:^3.38.1": version: 3.38.1 resolution: "core-js-compat@npm:3.38.1" dependencies: @@ -9581,6 +10075,13 @@ __metadata: languageName: node linkType: hard +"diff-sequences@npm:^29.6.3": + version: 29.6.3 + resolution: "diff-sequences@npm:29.6.3" + checksum: 10c0/32e27ac7dbffdf2fb0eb5a84efd98a9ad084fbabd5ac9abb8757c6770d5320d2acd172830b28c4add29bb873d59420601dfc805ac4064330ce59b1adfd0593b2 + languageName: node + linkType: hard + "diff@npm:^5.0.0": version: 5.2.0 resolution: "diff@npm:5.2.0" @@ -10274,6 +10775,13 @@ __metadata: languageName: node linkType: hard +"escape-string-regexp@npm:^2.0.0": + version: 2.0.0 + resolution: "escape-string-regexp@npm:2.0.0" + checksum: 10c0/2530479fe8db57eace5e8646c9c2a9c80fa279614986d16dcc6bcaceb63ae77f05a851ba6c43756d816c61d7f4534baf56e3c705e3e0d884818a46808811c507 + languageName: node + linkType: hard + "escape-string-regexp@npm:^4.0.0": version: 4.0.0 resolution: "escape-string-regexp@npm:4.0.0" @@ -10394,7 +10902,7 @@ __metadata: languageName: node linkType: hard -"eslint-module-utils@npm:^2.12.0, eslint-module-utils@npm:^2.8.1": +"eslint-module-utils@npm:^2.12.0, eslint-module-utils@npm:^2.8.1, eslint-module-utils@npm:^2.9.0": version: 2.12.0 resolution: "eslint-module-utils@npm:2.12.0" dependencies: @@ -10406,7 +10914,55 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-import@npm:^2.28.1, eslint-plugin-import@npm:^2.31.0": +"eslint-plugin-import-x@npm:^4.3.1": + version: 4.3.1 + resolution: "eslint-plugin-import-x@npm:4.3.1" + dependencies: + "@typescript-eslint/utils": "npm:^8.1.0" + debug: "npm:^4.3.4" + doctrine: "npm:^3.0.0" + eslint-import-resolver-node: "npm:^0.3.9" + get-tsconfig: "npm:^4.7.3" + is-glob: "npm:^4.0.3" + minimatch: "npm:^9.0.3" + semver: "npm:^7.6.3" + stable-hash: "npm:^0.0.4" + tslib: "npm:^2.6.3" + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + checksum: 10c0/47db6c6c90a5a3d2e4d3da36921a22e22042f9f3d4469a9d783d84658597e8fcbc88f71d7553c7a3f4c83ffad7a228fb3a85d4e9bf48361d5ea76bfb4a13df99 + languageName: node + linkType: hard + +"eslint-plugin-import@npm:2.30.0": + version: 2.30.0 + resolution: "eslint-plugin-import@npm:2.30.0" + dependencies: + "@rtsao/scc": "npm:^1.1.0" + array-includes: "npm:^3.1.8" + array.prototype.findlastindex: "npm:^1.2.5" + array.prototype.flat: "npm:^1.3.2" + array.prototype.flatmap: "npm:^1.3.2" + debug: "npm:^3.2.7" + doctrine: "npm:^2.1.0" + eslint-import-resolver-node: "npm:^0.3.9" + eslint-module-utils: "npm:^2.9.0" + hasown: "npm:^2.0.2" + is-core-module: "npm:^2.15.1" + is-glob: "npm:^4.0.3" + minimatch: "npm:^3.1.2" + object.fromentries: "npm:^2.0.8" + object.groupby: "npm:^1.0.3" + object.values: "npm:^1.2.0" + semver: "npm:^6.3.1" + tsconfig-paths: "npm:^3.15.0" + peerDependencies: + eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 + checksum: 10c0/4c9dcb1f27505c4d5dd891d2b551f56c70786d136aa3992a77e785bdc67c9f60200a2c7fb0ce55b7647fe550b12bc433d5dfa59e2c00ab44227791c5ab86badf + languageName: node + linkType: hard + +"eslint-plugin-import@npm:^2.28.1": version: 2.31.0 resolution: "eslint-plugin-import@npm:2.31.0" dependencies: @@ -10462,7 +11018,7 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-jsx-a11y@npm:^6.10.0, eslint-plugin-jsx-a11y@npm:^6.7.1": +"eslint-plugin-jsx-a11y@npm:6.10.0, eslint-plugin-jsx-a11y@npm:^6.10.0, eslint-plugin-jsx-a11y@npm:^6.7.1": version: 6.10.0 resolution: "eslint-plugin-jsx-a11y@npm:6.10.0" dependencies: @@ -10517,9 +11073,36 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-playwright@npm:^1.7.0": - version: 1.7.0 - resolution: "eslint-plugin-playwright@npm:1.7.0" +"eslint-plugin-perfectionist@npm:^3.9.1": + version: 3.9.1 + resolution: "eslint-plugin-perfectionist@npm:3.9.1" + dependencies: + "@typescript-eslint/types": "npm:^8.9.0" + "@typescript-eslint/utils": "npm:^8.9.0" + minimatch: "npm:^9.0.5" + natural-compare-lite: "npm:^1.4.0" + peerDependencies: + astro-eslint-parser: ^1.0.2 + eslint: ">=8.0.0" + svelte: ">=3.0.0" + svelte-eslint-parser: ^0.41.1 + vue-eslint-parser: ">=9.0.0" + peerDependenciesMeta: + astro-eslint-parser: + optional: true + svelte: + optional: true + svelte-eslint-parser: + optional: true + vue-eslint-parser: + optional: true + checksum: 10c0/ef4e4465a0a6c45d65375cdd823d133ad82e3fb576451afc802250f433797eec361abb35f2fb042496e8e35a87af7c5a7567efaa05e7fa4b72cda0060a1cc185 + languageName: node + linkType: hard + +"eslint-plugin-playwright@npm:^1.8.0": + version: 1.8.0 + resolution: "eslint-plugin-playwright@npm:1.8.0" dependencies: globals: "npm:^13.23.0" peerDependencies: @@ -10528,7 +11111,7 @@ __metadata: peerDependenciesMeta: eslint-plugin-jest: optional: true - checksum: 10c0/da62c7335d3e1f6379b7e32c1951c26f91106d45670cbb1ca93dbd856be8282783c438f5acac8620af88d5265541c800b97606039b19387f3e4652554252f14f + checksum: 10c0/06dd25b3b5c1c5b0f937d4006e2c3f0baf74e637e57bb7df308de946d6915e0de9f71f56f01c10d07295aecb9a9a6f2d75e6af74612bf79795fd6259686ef841 languageName: node linkType: hard @@ -10552,7 +11135,16 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-react-hooks@npm:^4.5.0 || 5.0.0-canary-7118f5dd7-20230705, eslint-plugin-react-hooks@npm:^4.6.2 || 5.0.0-canary-7118f5dd7-20230705": +"eslint-plugin-react-hooks@npm:4.6.2": + version: 4.6.2 + resolution: "eslint-plugin-react-hooks@npm:4.6.2" + peerDependencies: + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 + checksum: 10c0/4844e58c929bc05157fb70ba1e462e34f1f4abcbc8dd5bbe5b04513d33e2699effb8bca668297976ceea8e7ebee4e8fc29b9af9d131bcef52886feaa2308b2cc + languageName: node + linkType: hard + +"eslint-plugin-react-hooks@npm:^4.5.0 || 5.0.0-canary-7118f5dd7-20230705": version: 5.0.0-canary-7118f5dd7-20230705 resolution: "eslint-plugin-react-hooks@npm:5.0.0-canary-7118f5dd7-20230705" peerDependencies: @@ -10561,6 +11153,43 @@ __metadata: languageName: node linkType: hard +"eslint-plugin-react-hooks@npm:^4.6.2 || ^5.0.0 || 5.0.0-canary-7118f5dd7-20230705": + version: 5.0.0 + resolution: "eslint-plugin-react-hooks@npm:5.0.0" + peerDependencies: + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 + checksum: 10c0/bcb74b421f32e4203a7100405b57aab85526be4461e5a1da01bc537969a30012d2ee209a2c2a6cac543833a27188ce1e6ad71e4628d0bb4a2e5365cad86c5002 + languageName: node + linkType: hard + +"eslint-plugin-react@npm:7.36.1": + version: 7.36.1 + resolution: "eslint-plugin-react@npm:7.36.1" + dependencies: + array-includes: "npm:^3.1.8" + array.prototype.findlast: "npm:^1.2.5" + array.prototype.flatmap: "npm:^1.3.2" + array.prototype.tosorted: "npm:^1.1.4" + doctrine: "npm:^2.1.0" + es-iterator-helpers: "npm:^1.0.19" + estraverse: "npm:^5.3.0" + hasown: "npm:^2.0.2" + jsx-ast-utils: "npm:^2.4.1 || ^3.0.0" + minimatch: "npm:^3.1.2" + object.entries: "npm:^1.1.8" + object.fromentries: "npm:^2.0.8" + object.values: "npm:^1.2.0" + prop-types: "npm:^15.8.1" + resolve: "npm:^2.0.0-next.5" + semver: "npm:^6.3.1" + string.prototype.matchall: "npm:^4.0.11" + string.prototype.repeat: "npm:^1.0.0" + peerDependencies: + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 + checksum: 10c0/8cb37f7fb351213bc44263580ff77627e14e27870fd81dae593e3de2826340b9bd8bbac7ae00fd5de69751a0660b2e51bd26760596f4ae85548f6b1bd76706e6 + languageName: node + linkType: hard + "eslint-plugin-react@npm:^7.33.2, eslint-plugin-react@npm:^7.37.1": version: 7.37.1 resolution: "eslint-plugin-react@npm:7.37.1" @@ -10606,12 +11235,45 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-sonarjs@npm:^0.25.1": - version: 0.25.1 - resolution: "eslint-plugin-sonarjs@npm:0.25.1" +"eslint-plugin-simple-import-sort@npm:^12.1.1": + version: 12.1.1 + resolution: "eslint-plugin-simple-import-sort@npm:12.1.1" + peerDependencies: + eslint: ">=5.0.0" + checksum: 10c0/0ad1907ad9ddbadd1db655db0a9d0b77076e274b793a77b982c8525d808d868e6ecfce24f3a411e8a1fa551077387f9ebb38c00956073970ebd7ee6a029ce2b3 + languageName: node + linkType: hard + +"eslint-plugin-sonarjs@npm:^2.0.4": + version: 2.0.4 + resolution: "eslint-plugin-sonarjs@npm:2.0.4" + dependencies: + "@babel/core": "npm:7.25.2" + "@babel/eslint-parser": "npm:7.25.1" + "@babel/plugin-proposal-decorators": "npm:7.24.7" + "@babel/preset-env": "npm:7.25.4" + "@babel/preset-flow": "npm:7.24.7" + "@babel/preset-react": "npm:7.24.7" + "@eslint-community/regexpp": "npm:4.11.1" + "@typescript-eslint/eslint-plugin": "npm:7.16.1" + "@typescript-eslint/utils": "npm:7.16.1" + builtin-modules: "npm:3.3.0" + bytes: "npm:3.1.2" + eslint-plugin-import: "npm:2.30.0" + eslint-plugin-jsx-a11y: "npm:6.10.0" + eslint-plugin-react: "npm:7.36.1" + eslint-plugin-react-hooks: "npm:4.6.2" + eslint-scope: "npm:8.1.0" + functional-red-black-tree: "npm:1.0.1" + jsx-ast-utils: "npm:3.3.5" + minimatch: "npm:10.0.1" + scslre: "npm:0.3.0" + semver: "npm:7.6.3" + typescript: "npm:5.6.2" + vue-eslint-parser: "npm:9.4.3" peerDependencies: - eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 - checksum: 10c0/41bb79da06a0a8d33936a1a2d0b8d46f5e63b86652f9310a7740cc6586bd1e3f8ef8b4fd0175af4c431e69fff31ea57661ba657e3bf31d9f9462a15b23537c11 + eslint: ^8.0.0 || ^9.0.0 + checksum: 10c0/3da6e9af1c8d04903c6015e74e0719a8d5dfbc73700c9d012ed851605947ab7b470e5741763710297f599b9e2996f7e1807ff6565bb6a76b07c804f649172e1f languageName: node linkType: hard @@ -10652,7 +11314,46 @@ __metadata: languageName: node linkType: hard -"eslint-scope@npm:^5.1.1": +"eslint-plugin-unicorn@npm:^56.0.0": + version: 56.0.0 + resolution: "eslint-plugin-unicorn@npm:56.0.0" + dependencies: + "@babel/helper-validator-identifier": "npm:^7.24.7" + "@eslint-community/eslint-utils": "npm:^4.4.0" + ci-info: "npm:^4.0.0" + clean-regexp: "npm:^1.0.0" + core-js-compat: "npm:^3.38.1" + esquery: "npm:^1.6.0" + globals: "npm:^15.9.0" + indent-string: "npm:^4.0.0" + is-builtin-module: "npm:^3.2.1" + jsesc: "npm:^3.0.2" + pluralize: "npm:^8.0.0" + read-pkg-up: "npm:^7.0.1" + regexp-tree: "npm:^0.1.27" + regjsparser: "npm:^0.10.0" + semver: "npm:^7.6.3" + strip-indent: "npm:^3.0.0" + peerDependencies: + eslint: ">=8.56.0" + checksum: 10c0/514b8da5423041e88723e9a46e1d9b77b8713b4bb3cd9beb58949907f2f4ce6533a9e1d7508bd0583d2f48c191f8134f27cd229dfb05f97431ecec49f24fcbf6 + languageName: node + linkType: hard + +"eslint-plugin-unused-imports@npm:^4.1.4": + version: 4.1.4 + resolution: "eslint-plugin-unused-imports@npm:4.1.4" + peerDependencies: + "@typescript-eslint/eslint-plugin": ^8.0.0-0 || ^7.0.0 || ^6.0.0 || ^5.0.0 + eslint: ^9.0.0 || ^8.0.0 + peerDependenciesMeta: + "@typescript-eslint/eslint-plugin": + optional: true + checksum: 10c0/3899f64b0e8b23fa6b81e2754fc10f93d8741e051d70390a8100ca39af7878bde8625f234b76111af69562ef2512104b52c3703e986ccb3ac9adc07911896acf + languageName: node + linkType: hard + +"eslint-scope@npm:5.1.1, eslint-scope@npm:^5.1.1": version: 5.1.1 resolution: "eslint-scope@npm:5.1.1" dependencies: @@ -10662,7 +11363,17 @@ __metadata: languageName: node linkType: hard -"eslint-scope@npm:^7.2.2": +"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:^5.2.0" + checksum: 10c0/ae1df7accae9ea90465c2ded70f7064d6d1f2962ef4cc87398855c4f0b3a5ab01063e0258d954bb94b184f6759febe04c3118195cab5c51978a7229948ba2875 + languageName: node + linkType: hard + +"eslint-scope@npm:^7.1.1, eslint-scope@npm:^7.2.2": version: 7.2.2 resolution: "eslint-scope@npm:7.2.2" dependencies: @@ -10672,6 +11383,13 @@ __metadata: languageName: node linkType: hard +"eslint-visitor-keys@npm:^2.1.0": + version: 2.1.0 + resolution: "eslint-visitor-keys@npm:2.1.0" + checksum: 10c0/9f0e3a2db751d84067d15977ac4b4472efd6b303e369e6ff241a99feac04da758f46d5add022c33d06b53596038dbae4b4aceb27c7e68b8dfc1055b35e495787 + languageName: node + linkType: hard + "eslint-visitor-keys@npm:^3.3.0, eslint-visitor-keys@npm:^3.4.1, eslint-visitor-keys@npm:^3.4.3": version: 3.4.3 resolution: "eslint-visitor-keys@npm:3.4.3" @@ -10727,7 +11445,7 @@ __metadata: languageName: node linkType: hard -"espree@npm:^9.6.0, espree@npm:^9.6.1": +"espree@npm:^9.3.1, espree@npm:^9.6.0, espree@npm:^9.6.1": version: 9.6.1 resolution: "espree@npm:9.6.1" dependencies: @@ -10748,7 +11466,7 @@ __metadata: languageName: node linkType: hard -"esquery@npm:^1.4.2": +"esquery@npm:^1.4.0, esquery@npm:^1.4.2, esquery@npm:^1.6.0": version: 1.6.0 resolution: "esquery@npm:1.6.0" dependencies: @@ -10902,6 +11620,19 @@ __metadata: languageName: node linkType: hard +"expect@npm:^29.0.0": + version: 29.7.0 + resolution: "expect@npm:29.7.0" + dependencies: + "@jest/expect-utils": "npm:^29.7.0" + jest-get-type: "npm:^29.6.3" + jest-matcher-utils: "npm:^29.7.0" + jest-message-util: "npm:^29.7.0" + jest-util: "npm:^29.7.0" + checksum: 10c0/2eddeace66e68b8d8ee5f7be57f3014b19770caaf6815c7a08d131821da527fb8c8cb7b3dcd7c883d2d3d8d184206a4268984618032d1e4b16dc8d6596475d41 + languageName: node + linkType: hard + "exponential-backoff@npm:^3.1.1": version: 3.1.1 resolution: "exponential-backoff@npm:3.1.1" @@ -11410,6 +12141,13 @@ __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: 10c0/5959eed0375803d9924f47688479bb017e0c6816a0e5ac151e22ba6bfe1d12c41de2f339188885e0aa8eeea2072dad509d8e4448467e816bde0a2ca86a0670d3 + languageName: node + linkType: hard + "functions-have-names@npm:^1.2.3": version: 1.2.3 resolution: "functions-have-names@npm:1.2.3" @@ -11502,7 +12240,7 @@ __metadata: languageName: node linkType: hard -"get-tsconfig@npm:4.8.1, get-tsconfig@npm:^4.7.5": +"get-tsconfig@npm:4.8.1, get-tsconfig@npm:^4.7.3, get-tsconfig@npm:^4.7.5": version: 4.8.1 resolution: "get-tsconfig@npm:4.8.1" dependencies: @@ -11658,6 +12396,13 @@ __metadata: languageName: node linkType: hard +"globals@npm:^15.9.0": + version: 15.11.0 + resolution: "globals@npm:15.11.0" + checksum: 10c0/861e39bb6bd9bd1b9f355c25c962e5eb4b3f0e1567cf60fa6c06e8c502b0ec8706b1cce055d69d84d0b7b8e028bec5418cf629a54e7047e116538d1c1c1a375c + languageName: node + linkType: hard + "globalthis@npm:^1.0.3, globalthis@npm:^1.0.4": version: 1.0.4 resolution: "globalthis@npm:1.0.4" @@ -11712,7 +12457,7 @@ __metadata: languageName: node linkType: hard -"graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.5, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.11, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6": +"graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.5, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.11, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": version: 4.2.11 resolution: "graceful-fs@npm:4.2.11" checksum: 10c0/386d011a553e02bc594ac2ca0bd6d9e4c22d7fa8cfbfc448a6d148c59ea881b092db9dbe3547ae4b88e55f1b01f7c4a2ecc53b310c042793e63aa44cf6c257f2 @@ -11940,6 +12685,13 @@ __metadata: languageName: node linkType: hard +"hosted-git-info@npm:^2.1.4": + version: 2.8.9 + resolution: "hosted-git-info@npm:2.8.9" + checksum: 10c0/317cbc6b1bbbe23c2a40ae23f3dafe9fa349ce42a89a36f930e3f9c0530c179a3882d2ef1e4141a4c3674d6faaea862138ec55b43ad6f75e387fda2483a13c70 + languageName: node + linkType: hard + "hosted-git-info@npm:^7.0.0": version: 7.0.2 resolution: "hosted-git-info@npm:7.0.2" @@ -12090,12 +12842,12 @@ __metadata: languageName: node linkType: hard -"i18next@npm:23.16.0": - version: 23.16.0 - resolution: "i18next@npm:23.16.0" +"i18next@npm:23.16.2": + version: 23.16.2 + resolution: "i18next@npm:23.16.2" dependencies: "@babel/runtime": "npm:^7.23.2" - checksum: 10c0/17b40d125befec02e2c8069e658ea54d36ee46fab9e05bbeed93bb5ec75fab8bd334139372652d5df491147a124447a8ee1b78ccba726b7d61b1c03e84c7b6c5 + checksum: 10c0/75dab732f6c09f415da95119679de9c4b8a4248b51c2b148daa43e4768ee144c4c54eaa12502dbcf7da79acc68c32e137a6c1373c7dc20e2020ca9e70623a33b languageName: node linkType: hard @@ -12362,6 +13114,15 @@ __metadata: languageName: node linkType: hard +"is-builtin-module@npm:^3.2.1": + version: 3.2.1 + resolution: "is-builtin-module@npm:3.2.1" + dependencies: + builtin-modules: "npm:^3.3.0" + checksum: 10c0/5a66937a03f3b18803381518f0ef679752ac18cdb7dd53b5e23ee8df8d440558737bd8dcc04d2aae555909d2ecb4a81b5c0d334d119402584b61e6a003e31af1 + languageName: node + linkType: hard + "is-bun-module@npm:^1.0.2": version: 1.2.1 resolution: "is-bun-module@npm:1.2.1" @@ -12905,6 +13666,68 @@ __metadata: languageName: node linkType: hard +"jest-diff@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-diff@npm:29.7.0" + dependencies: + chalk: "npm:^4.0.0" + diff-sequences: "npm:^29.6.3" + jest-get-type: "npm:^29.6.3" + pretty-format: "npm:^29.7.0" + checksum: 10c0/89a4a7f182590f56f526443dde69acefb1f2f0c9e59253c61d319569856c4931eae66b8a3790c443f529267a0ddba5ba80431c585deed81827032b2b2a1fc999 + languageName: node + linkType: hard + +"jest-get-type@npm:^29.6.3": + version: 29.6.3 + resolution: "jest-get-type@npm:29.6.3" + checksum: 10c0/552e7a97a983d3c2d4e412a44eb7de0430ff773dd99f7500962c268d6dfbfa431d7d08f919c9d960530e5f7f78eb47f267ad9b318265e5092b3ff9ede0db7c2b + languageName: node + linkType: hard + +"jest-matcher-utils@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-matcher-utils@npm:29.7.0" + dependencies: + chalk: "npm:^4.0.0" + jest-diff: "npm:^29.7.0" + jest-get-type: "npm:^29.6.3" + pretty-format: "npm:^29.7.0" + checksum: 10c0/0d0e70b28fa5c7d4dce701dc1f46ae0922102aadc24ed45d594dd9b7ae0a8a6ef8b216718d1ab79e451291217e05d4d49a82666e1a3cc2b428b75cd9c933244e + languageName: node + linkType: hard + +"jest-message-util@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-message-util@npm:29.7.0" + dependencies: + "@babel/code-frame": "npm:^7.12.13" + "@jest/types": "npm:^29.6.3" + "@types/stack-utils": "npm:^2.0.0" + chalk: "npm:^4.0.0" + graceful-fs: "npm:^4.2.9" + micromatch: "npm:^4.0.4" + pretty-format: "npm:^29.7.0" + slash: "npm:^3.0.0" + stack-utils: "npm:^2.0.3" + checksum: 10c0/850ae35477f59f3e6f27efac5215f706296e2104af39232bb14e5403e067992afb5c015e87a9243ec4d9df38525ef1ca663af9f2f4766aa116f127247008bd22 + languageName: node + linkType: hard + +"jest-util@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-util@npm:29.7.0" + dependencies: + "@jest/types": "npm:^29.6.3" + "@types/node": "npm:*" + chalk: "npm:^4.0.0" + ci-info: "npm:^3.2.0" + graceful-fs: "npm:^4.2.9" + picomatch: "npm:^2.2.3" + checksum: 10c0/bc55a8f49fdbb8f51baf31d2a4f312fb66c9db1483b82f602c9c990e659cdd7ec529c8e916d5a89452ecbcfae4949b21b40a7a59d4ffc0cd813a973ab08c8150 + languageName: node + linkType: hard + "jiti@npm:1.17.1": version: 1.17.1 resolution: "jiti@npm:1.17.1" @@ -13040,6 +13863,15 @@ __metadata: languageName: node linkType: hard +"jsesc@npm:~0.5.0": + version: 0.5.0 + resolution: "jsesc@npm:0.5.0" + bin: + jsesc: bin/jsesc + checksum: 10c0/f93792440ae1d80f091b65f8ceddf8e55c4bb7f1a09dee5dcbdb0db5612c55c0f6045625aa6b7e8edb2e0a4feabd80ee48616dbe2d37055573a84db3d24f96d9 + languageName: node + linkType: hard + "json-buffer@npm:3.0.1": version: 3.0.1 resolution: "json-buffer@npm:3.0.1" @@ -13150,7 +13982,7 @@ __metadata: languageName: node linkType: hard -"jsx-ast-utils@npm:^2.4.1 || ^3.0.0, jsx-ast-utils@npm:^3.3.5": +"jsx-ast-utils@npm:3.3.5, jsx-ast-utils@npm:^2.4.1 || ^3.0.0, jsx-ast-utils@npm:^3.3.5": version: 3.3.5 resolution: "jsx-ast-utils@npm:3.3.5" dependencies: @@ -14326,6 +15158,15 @@ __metadata: languageName: node linkType: hard +"minimatch@npm:10.0.1, minimatch@npm:^10.0.0": + version: 10.0.1 + resolution: "minimatch@npm:10.0.1" + dependencies: + brace-expansion: "npm:^2.0.1" + checksum: 10c0/e6c29a81fe83e1877ad51348306be2e8aeca18c88fdee7a99df44322314279e15799e41d7cb274e4e8bb0b451a3bc622d6182e157dfa1717d6cda75e9cd8cd5d + languageName: node + linkType: hard + "minimatch@npm:4.2.3": version: 4.2.3 resolution: "minimatch@npm:4.2.3" @@ -14335,7 +15176,7 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:9.0.5, minimatch@npm:^9.0.0, minimatch@npm:^9.0.1, minimatch@npm:^9.0.4": +"minimatch@npm:9.0.5, minimatch@npm:^9.0.0, minimatch@npm:^9.0.1, minimatch@npm:^9.0.3, minimatch@npm:^9.0.4, minimatch@npm:^9.0.5": version: 9.0.5 resolution: "minimatch@npm:9.0.5" dependencies: @@ -14344,15 +15185,6 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:^10.0.0": - version: 10.0.1 - resolution: "minimatch@npm:10.0.1" - dependencies: - brace-expansion: "npm:^2.0.1" - checksum: 10c0/e6c29a81fe83e1877ad51348306be2e8aeca18c88fdee7a99df44322314279e15799e41d7cb274e4e8bb0b451a3bc622d6182e157dfa1717d6cda75e9cd8cd5d - languageName: node - linkType: hard - "minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2": version: 3.1.2 resolution: "minimatch@npm:3.1.2" @@ -14552,6 +15384,13 @@ __metadata: languageName: node linkType: hard +"natural-compare-lite@npm:^1.4.0": + version: 1.4.0 + resolution: "natural-compare-lite@npm:1.4.0" + checksum: 10c0/f6cef26f5044515754802c0fc475d81426f3b90fe88c20fabe08771ce1f736ce46e0397c10acb569a4dd0acb84c7f1ee70676122f95d5bfdd747af3a6c6bbaa8 + languageName: node + linkType: hard + "natural-compare@npm:^1.4.0": version: 1.4.0 resolution: "natural-compare@npm:1.4.0" @@ -14782,7 +15621,7 @@ __metadata: graphql: "npm:16.9.0" graphql-jit: "npm:0.8.6" graphql-yoga: "npm:5.7.0" - i18next: "npm:23.16.0" + i18next: "npm:23.16.2" is-ci: "npm:3.0.1" jose: "npm:5.9.4" jsdom: "npm:25.0.1" @@ -14842,7 +15681,7 @@ __metadata: rimraf: "npm:6.0.1" shell-quote: "npm:1.8.1" syncpack: "npm:13.0.0" - turbo: "npm:2.2.0" + turbo: "npm:2.2.1" typescript: "npm:5.6.3" languageName: unknown linkType: soft @@ -14916,6 +15755,18 @@ __metadata: languageName: node linkType: hard +"normalize-package-data@npm:^2.5.0": + version: 2.5.0 + resolution: "normalize-package-data@npm:2.5.0" + dependencies: + hosted-git-info: "npm:^2.1.4" + resolve: "npm:^1.10.0" + semver: "npm:2 || 3 || 4 || 5" + validate-npm-package-license: "npm:^3.0.1" + checksum: 10c0/357cb1646deb42f8eb4c7d42c4edf0eec312f3628c2ef98501963cc4bbe7277021b2b1d977f982b2edce78f5a1014613ce9cf38085c3df2d76730481357ca504 + languageName: node + linkType: hard + "normalize-package-data@npm:^6.0.0": version: 6.0.2 resolution: "normalize-package-data@npm:6.0.2" @@ -15674,7 +16525,7 @@ __metadata: languageName: node linkType: hard -"picomatch@npm:^2.0.4, picomatch@npm:^2.2.1, picomatch@npm:^2.3.1": +"picomatch@npm:^2.0.4, picomatch@npm:^2.2.1, picomatch@npm:^2.2.3, picomatch@npm:^2.3.1": version: 2.3.1 resolution: "picomatch@npm:2.3.1" checksum: 10c0/26c02b8d06f03206fc2ab8d16f19960f2ff9e81a658f831ecb656d8f17d9edc799e8364b1f4a7873e89d9702dff96204be0fa26fe4181f6843f040f819dac4be @@ -15751,6 +16602,13 @@ __metadata: languageName: node linkType: hard +"pluralize@npm:^8.0.0": + version: 8.0.0 + resolution: "pluralize@npm:8.0.0" + checksum: 10c0/2044cfc34b2e8c88b73379ea4a36fc577db04f651c2909041b054c981cd863dd5373ebd030123ab058d194ae615d3a97cfdac653991e499d10caf592e8b3dc33 + languageName: node + linkType: hard + "polished@npm:^4.2.2": version: 4.3.1 resolution: "polished@npm:4.3.1" @@ -16392,6 +17250,17 @@ __metadata: languageName: node linkType: hard +"pretty-format@npm:^29.0.0, pretty-format@npm:^29.7.0": + version: 29.7.0 + resolution: "pretty-format@npm:29.7.0" + dependencies: + "@jest/schemas": "npm:^29.6.3" + ansi-styles: "npm:^5.0.0" + react-is: "npm:^18.0.0" + checksum: 10c0/edc5ff89f51916f036c62ed433506b55446ff739358de77207e63e88a28ca2894caac6e73dcb68166a606e51c8087d32d400473e6a9fdd2dbe743f46c9c0276f + languageName: node + linkType: hard + "pretty-format@npm:^3.8.0": version: 3.8.0 resolution: "pretty-format@npm:3.8.0" @@ -16691,7 +17560,7 @@ __metadata: languageName: node linkType: hard -"react-is@npm:^16.12.0 || ^17.0.0 || ^18.0.0, react-is@npm:^18.3.1": +"react-is@npm:^16.12.0 || ^17.0.0 || ^18.0.0, react-is@npm:^18.0.0, react-is@npm:^18.3.1": version: 18.3.1 resolution: "react-is@npm:18.3.1" checksum: 10c0/f2f1e60010c683479e74c63f96b09fb41603527cd131a9959e2aee1e5a8b0caf270b365e5ca77d4a6b18aae659b60a86150bb3979073528877029b35aecd2072 @@ -16787,6 +17656,29 @@ __metadata: languageName: node linkType: hard +"read-pkg-up@npm:^7.0.1": + version: 7.0.1 + resolution: "read-pkg-up@npm:7.0.1" + dependencies: + find-up: "npm:^4.1.0" + read-pkg: "npm:^5.2.0" + type-fest: "npm:^0.8.1" + checksum: 10c0/82b3ac9fd7c6ca1bdc1d7253eb1091a98ff3d195ee0a45386582ce3e69f90266163c34121e6a0a02f1630073a6c0585f7880b3865efcae9c452fa667f02ca385 + languageName: node + linkType: hard + +"read-pkg@npm:^5.2.0": + version: 5.2.0 + resolution: "read-pkg@npm:5.2.0" + dependencies: + "@types/normalize-package-data": "npm:^2.4.0" + normalize-package-data: "npm:^2.5.0" + parse-json: "npm:^5.0.0" + type-fest: "npm:^0.6.0" + checksum: 10c0/b51a17d4b51418e777029e3a7694c9bd6c578a5ab99db544764a0b0f2c7c0f58f8a6bc101f86a6fceb8ba6d237d67c89acf6170f6b98695d0420ddc86cf109fb + languageName: node + linkType: hard + "read-yaml-file@npm:2.1.0": version: 2.1.0 resolution: "read-yaml-file@npm:2.1.0" @@ -16981,6 +17873,15 @@ __metadata: languageName: node linkType: hard +"regexp-tree@npm:^0.1.27": + version: 0.1.27 + resolution: "regexp-tree@npm:0.1.27" + bin: + regexp-tree: bin/regexp-tree + checksum: 10c0/f636f44b4a0d93d7d6926585ecd81f63e4ce2ac895bc417b2ead0874cd36b337dcc3d0fedc63f69bf5aaeaa4340f36ca7e750c9687cceaf8087374e5284e843c + languageName: node + linkType: hard + "regexp.prototype.flags@npm:^1.5.1, regexp.prototype.flags@npm:^1.5.2": version: 1.5.3 resolution: "regexp.prototype.flags@npm:1.5.3" @@ -17021,6 +17922,17 @@ __metadata: languageName: node linkType: hard +"regjsparser@npm:^0.10.0": + version: 0.10.0 + resolution: "regjsparser@npm:0.10.0" + dependencies: + jsesc: "npm:~0.5.0" + bin: + regjsparser: bin/parser + checksum: 10c0/0f0508c142eddbceae55dab9715e714305c19e1e130db53168e8fa5f9f7ff9a4901f674cf6f71e04a0973b2f883882ba05808c80778b2d52b053d925050010f4 + languageName: node + linkType: hard + "regjsparser@npm:^0.11.0": version: 0.11.1 resolution: "regjsparser@npm:0.11.1" @@ -17152,7 +18064,7 @@ __metadata: languageName: node linkType: hard -"resolve@npm:1.22.8, resolve@npm:^1.1.7, resolve@npm:^1.14.2, resolve@npm:^1.19.0, resolve@npm:^1.22.1, resolve@npm:^1.22.2, resolve@npm:^1.22.4, resolve@npm:^1.22.8": +"resolve@npm:1.22.8, resolve@npm:^1.1.7, resolve@npm:^1.10.0, resolve@npm:^1.14.2, resolve@npm:^1.19.0, resolve@npm:^1.22.1, resolve@npm:^1.22.2, resolve@npm:^1.22.4, resolve@npm:^1.22.8": version: 1.22.8 resolution: "resolve@npm:1.22.8" dependencies: @@ -17178,7 +18090,7 @@ __metadata: languageName: node linkType: hard -"resolve@patch:resolve@npm%3A1.22.8#optional!builtin, resolve@patch:resolve@npm%3A^1.1.7#optional!builtin, resolve@patch:resolve@npm%3A^1.14.2#optional!builtin, resolve@patch:resolve@npm%3A^1.19.0#optional!builtin, resolve@patch:resolve@npm%3A^1.22.1#optional!builtin, resolve@patch:resolve@npm%3A^1.22.2#optional!builtin, resolve@patch:resolve@npm%3A^1.22.4#optional!builtin, resolve@patch:resolve@npm%3A^1.22.8#optional!builtin": +"resolve@patch:resolve@npm%3A1.22.8#optional!builtin, resolve@patch:resolve@npm%3A^1.1.7#optional!builtin, resolve@patch:resolve@npm%3A^1.10.0#optional!builtin, resolve@patch:resolve@npm%3A^1.14.2#optional!builtin, resolve@patch:resolve@npm%3A^1.19.0#optional!builtin, resolve@patch:resolve@npm%3A^1.22.1#optional!builtin, resolve@patch:resolve@npm%3A^1.22.2#optional!builtin, resolve@patch:resolve@npm%3A^1.22.4#optional!builtin, resolve@patch:resolve@npm%3A^1.22.8#optional!builtin": version: 1.22.8 resolution: "resolve@patch:resolve@npm%3A1.22.8#optional!builtin::version=1.22.8&hash=c3c19d" dependencies: @@ -17473,7 +18385,7 @@ __metadata: languageName: node linkType: hard -"scslre@npm:^0.3.0": +"scslre@npm:0.3.0, scslre@npm:^0.3.0": version: 0.3.0 resolution: "scslre@npm:0.3.0" dependencies: @@ -17491,7 +18403,16 @@ __metadata: languageName: node linkType: hard -"semver@npm:7.6.3, semver@npm:^7.1.1, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.5.2, semver@npm:^7.5.3, semver@npm:^7.6.0, semver@npm:^7.6.2, semver@npm:^7.6.3": +"semver@npm:2 || 3 || 4 || 5": + version: 5.7.2 + resolution: "semver@npm:5.7.2" + bin: + semver: bin/semver + checksum: 10c0/e4cf10f86f168db772ae95d86ba65b3fd6c5967c94d97c708ccb463b778c2ee53b914cd7167620950fc07faf5a564e6efe903836639e512a1aa15fbc9667fa25 + languageName: node + linkType: hard + +"semver@npm:7.6.3, semver@npm:^7.1.1, semver@npm:^7.3.5, semver@npm:^7.3.6, semver@npm:^7.3.7, semver@npm:^7.5.2, semver@npm:^7.5.3, semver@npm:^7.6.0, semver@npm:^7.6.2, semver@npm:^7.6.3": version: 7.6.3 resolution: "semver@npm:7.6.3" bin: @@ -17986,6 +18907,13 @@ __metadata: languageName: node linkType: hard +"stable-hash@npm:^0.0.4": + version: 0.0.4 + resolution: "stable-hash@npm:0.0.4" + checksum: 10c0/53d010d2a1b014fb60d398c095f43912c353b7b44774e55222bb26fd428bc75b73d7bdfcae509ce927c23ca9c5aff2dc1bc82f191d30e57a879550bc2952bdb0 + languageName: node + linkType: hard + "stack-trace@npm:0.0.x": version: 0.0.10 resolution: "stack-trace@npm:0.0.10" @@ -17993,6 +18921,15 @@ __metadata: languageName: node linkType: hard +"stack-utils@npm:^2.0.3": + version: 2.0.6 + resolution: "stack-utils@npm:2.0.6" + dependencies: + escape-string-regexp: "npm:^2.0.0" + checksum: 10c0/651c9f87667e077584bbe848acaecc6049bc71979f1e9a46c7b920cad4431c388df0f51b8ad7cfd6eed3db97a2878d0fc8b3122979439ea8bac29c61c95eec8a + languageName: node + linkType: hard + "stackback@npm:0.0.2": version: 0.0.2 resolution: "stackback@npm:0.0.2" @@ -18966,58 +19903,58 @@ __metadata: languageName: node linkType: hard -"turbo-darwin-64@npm:2.2.0": - version: 2.2.0 - resolution: "turbo-darwin-64@npm:2.2.0" +"turbo-darwin-64@npm:2.2.1": + version: 2.2.1 + resolution: "turbo-darwin-64@npm:2.2.1" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"turbo-darwin-arm64@npm:2.2.0": - version: 2.2.0 - resolution: "turbo-darwin-arm64@npm:2.2.0" +"turbo-darwin-arm64@npm:2.2.1": + version: 2.2.1 + resolution: "turbo-darwin-arm64@npm:2.2.1" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"turbo-linux-64@npm:2.2.0": - version: 2.2.0 - resolution: "turbo-linux-64@npm:2.2.0" +"turbo-linux-64@npm:2.2.1": + version: 2.2.1 + resolution: "turbo-linux-64@npm:2.2.1" conditions: os=linux & cpu=x64 languageName: node linkType: hard -"turbo-linux-arm64@npm:2.2.0": - version: 2.2.0 - resolution: "turbo-linux-arm64@npm:2.2.0" +"turbo-linux-arm64@npm:2.2.1": + version: 2.2.1 + resolution: "turbo-linux-arm64@npm:2.2.1" conditions: os=linux & cpu=arm64 languageName: node linkType: hard -"turbo-windows-64@npm:2.2.0": - version: 2.2.0 - resolution: "turbo-windows-64@npm:2.2.0" +"turbo-windows-64@npm:2.2.1": + version: 2.2.1 + resolution: "turbo-windows-64@npm:2.2.1" conditions: os=win32 & cpu=x64 languageName: node linkType: hard -"turbo-windows-arm64@npm:2.2.0": - version: 2.2.0 - resolution: "turbo-windows-arm64@npm:2.2.0" +"turbo-windows-arm64@npm:2.2.1": + version: 2.2.1 + resolution: "turbo-windows-arm64@npm:2.2.1" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"turbo@npm:2.2.0": - version: 2.2.0 - resolution: "turbo@npm:2.2.0" - dependencies: - turbo-darwin-64: "npm:2.2.0" - turbo-darwin-arm64: "npm:2.2.0" - turbo-linux-64: "npm:2.2.0" - turbo-linux-arm64: "npm:2.2.0" - turbo-windows-64: "npm:2.2.0" - turbo-windows-arm64: "npm:2.2.0" +"turbo@npm:2.2.1": + version: 2.2.1 + resolution: "turbo@npm:2.2.1" + dependencies: + turbo-darwin-64: "npm:2.2.1" + turbo-darwin-arm64: "npm:2.2.1" + turbo-linux-64: "npm:2.2.1" + turbo-linux-arm64: "npm:2.2.1" + turbo-windows-64: "npm:2.2.1" + turbo-windows-arm64: "npm:2.2.1" dependenciesMeta: turbo-darwin-64: optional: true @@ -19033,7 +19970,7 @@ __metadata: optional: true bin: turbo: bin/turbo - checksum: 10c0/19d25f55ef2483f7948dc61bbcd79c718565b4e96a48c494cfda8628e861ef686810ec456ea8d652fa4a6d498d5e6af0ff1e75d74a69efda3638c7423d2faa39 + checksum: 10c0/66232d9b147fa09a79f42246063de327cf2075a04d56abbfbb19609b199bb077e52800c938d7a4081e1f1875c2373b0aea5a5fdc673b52bba5824abe7e6b49ed languageName: node linkType: hard @@ -19060,6 +19997,13 @@ __metadata: languageName: node linkType: hard +"type-fest@npm:^0.6.0": + version: 0.6.0 + resolution: "type-fest@npm:0.6.0" + checksum: 10c0/0c585c26416fce9ecb5691873a1301b5aff54673c7999b6f925691ed01f5b9232db408cdbb0bd003d19f5ae284322523f44092d1f81ca0a48f11f7cf0be8cd38 + languageName: node + linkType: hard + "type-fest@npm:^0.7.1": version: 0.7.1 resolution: "type-fest@npm:0.7.1" @@ -19067,6 +20011,13 @@ __metadata: languageName: node linkType: hard +"type-fest@npm:^0.8.1": + version: 0.8.1 + resolution: "type-fest@npm:0.8.1" + checksum: 10c0/dffbb99329da2aa840f506d376c863bd55f5636f4741ad6e65e82f5ce47e6914108f44f340a0b74009b0cb5d09d6752ae83203e53e98b1192cf80ecee5651636 + languageName: node + linkType: hard + "type-fest@npm:^2.19.0, type-fest@npm:~2.19": version: 2.19.0 resolution: "type-fest@npm:2.19.0" @@ -19150,6 +20101,16 @@ __metadata: languageName: node linkType: hard +"typescript@npm:5.6.2": + version: 5.6.2 + resolution: "typescript@npm:5.6.2" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 10c0/3ed8297a8c7c56b7fec282532503d1ac795239d06e7c4966b42d4330c6cf433a170b53bcf93a130a7f14ccc5235de5560df4f1045eb7f3550b46ebed16d3c5e5 + languageName: node + linkType: hard + "typescript@npm:5.6.3": version: 5.6.3 resolution: "typescript@npm:5.6.3" @@ -19160,6 +20121,16 @@ __metadata: languageName: node linkType: hard +"typescript@patch:typescript@npm%3A5.6.2#optional!builtin": + version: 5.6.2 + resolution: "typescript@patch:typescript@npm%3A5.6.2#optional!builtin::version=5.6.2&hash=8c6c40" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 10c0/94eb47e130d3edd964b76da85975601dcb3604b0c848a36f63ac448d0104e93819d94c8bdf6b07c00120f2ce9c05256b8b6092d23cf5cf1c6fa911159e4d572f + languageName: node + linkType: hard + "typescript@patch:typescript@npm%3A5.6.3#optional!builtin": version: 5.6.3 resolution: "typescript@patch:typescript@npm%3A5.6.3#optional!builtin::version=5.6.3&hash=8c6c40" @@ -19531,7 +20502,7 @@ __metadata: languageName: node linkType: hard -"validate-npm-package-license@npm:^3.0.4": +"validate-npm-package-license@npm:^3.0.1, validate-npm-package-license@npm:^3.0.4": version: 3.0.4 resolution: "validate-npm-package-license@npm:3.0.4" dependencies: @@ -19627,7 +20598,7 @@ __metadata: "@emotion/styled": "npm:11.13.0" "@types/react": "npm:18.3.11" "@types/react-dom": "npm:18.3.1" - "@vitejs/plugin-react": "npm:4.3.2" + "@vitejs/plugin-react": "npm:4.3.3" "@vitest/coverage-v8": "npm:2.1.3" "@vitest/ui": "npm:2.1.3" "@your-org/common-i18n": "workspace:^" @@ -19805,6 +20776,23 @@ __metadata: languageName: node linkType: hard +"vue-eslint-parser@npm:9.4.3": + version: 9.4.3 + resolution: "vue-eslint-parser@npm:9.4.3" + dependencies: + debug: "npm:^4.3.4" + eslint-scope: "npm:^7.1.1" + eslint-visitor-keys: "npm:^3.3.0" + espree: "npm:^9.3.1" + esquery: "npm:^1.4.0" + lodash: "npm:^4.17.21" + semver: "npm:^7.3.6" + peerDependencies: + eslint: ">=6.0.0" + checksum: 10c0/128be5988de025b5abd676a91c3e92af68288a5da1c20b2ff848fe90e040c04b2222a03b5d8048cf4a5e0b667a8addfb6f6e6565860d4afb5190c4cc42d05578 + languageName: node + linkType: hard + "w3c-xmlserializer@npm:^5.0.0": version: 5.0.0 resolution: "w3c-xmlserializer@npm:5.0.0"